Pet Preview

Show a picture of your default pet on all pages

目前為 2023-09-28 提交的版本,檢視 最新版本

// ==UserScript==
// @name         Pet Preview
// @namespace    https://www.marapets.com/
// @version      0.1
// @description  Show a picture of your default pet on all pages
// @author       Lily Skye
// @match        *://*.marapets.com/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=marapets.com
// @grant        none
// @license      MIT
// ==/UserScript==
(function(global) {

function factory() {
var modules = {
/* --- src/pet-preview.tsx --- */
"src/pet-preview.tsx": (function (exports, _kame_require_, module, __filename, __dirname, _kame_dynamic_import_) {
"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
const _interop_require_wildcard = _kame_require_("node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs");
const _jsxdom = /*#__PURE__*/_interop_require_wildcard._(_kame_require_("node_modules/@suchipi/jsxdom/dist/jsxdom.umd.js"));
// Our compiler is configured to output 'React.createElement', so aliasing this
// to 'React' makes everything work properly
const React = _jsxdom;
(async function () {
  if (location.href.match(/index\.php/)) {
    console.info("Pet Preview UserScript: Caching pet image and link...");
    // We're on the homepage! Scrape the default pet and save it to localStorage.
    const defaultPetLink = document.querySelector(`a[href^="pets.php?id="]`);
    const defaultPetImg = document.querySelector("img.defaultpet");
    const linkHref = defaultPetLink?.getAttribute("href");
    const imgSrc = defaultPetImg?.getAttribute("src");
    if (linkHref == null) {
      console.error("Pet Preview UserScript: Could not find default pet link");
    }
    if (imgSrc == null) {
      console.error("Pet Preview UserScript: Could not find default pet image");
    }
    // the '1' is the schema version
    localStorage.__userscript_suchipi_pet_preview_1 = JSON.stringify({
      linkHref,
      imgSrc
    });
  }
  const savedJson = localStorage.__userscript_suchipi_pet_preview_1;
  if (typeof savedJson !== "string") {
    console.warn("Pet Preview UserScript: Pet not cached yet. Click the 'Marapets' logo to cache it!");
  }
  const {
    linkHref,
    imgSrc
  } = JSON.parse(savedJson);
  let eltoAppend = null;
  if (linkHref != null && imgSrc != null) {
    eltoAppend = /*#__PURE__*/React.createElement("a", {
      href: linkHref
    }, /*#__PURE__*/React.createElement("img", {
      className: "defaultpet",
      style: {
        width: "75px",
        height: "75px",
        position: "fixed",
        top: "30px",
        zIndex: "1"
      },
      src: imgSrc
    }));
  } else if (imgSrc != null) {
    eltoAppend = /*#__PURE__*/React.createElement("img", {
      className: "defaultpet",
      style: {
        width: "75px",
        height: "75px",
        position: "fixed",
        top: "30px",
        zIndex: "1"
      },
      src: imgSrc
    });
  }
  if (eltoAppend != null) {
    document.body.appendChild(eltoAppend);
  }
})();
}),
/* --- node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs --- */
"node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs": (function (exports, _kame_require_, module, __filename, __dirname, _kame_dynamic_import_) {
"use strict";

function _getRequireWildcardCache(nodeInterop) {
  if (typeof WeakMap !== "function") return null;
  var cacheBabelInterop = new WeakMap();
  var cacheNodeInterop = new WeakMap();
  return (_getRequireWildcardCache = function (nodeInterop) {
    return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
  })(nodeInterop);
}
exports._ = exports._interop_require_wildcard = _interop_require_wildcard;
function _interop_require_wildcard(obj, nodeInterop) {
  if (!nodeInterop && obj && obj.__esModule) return obj;
  if (obj === null || typeof obj !== "object" && typeof obj !== "function") return {
    default: obj
  };
  var cache = _getRequireWildcardCache(nodeInterop);
  if (cache && cache.has(obj)) return cache.get(obj);
  var newObj = {};
  var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
  for (var key in obj) {
    if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
      var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
      if (desc && (desc.get || desc.set)) Object.defineProperty(newObj, key, desc);else newObj[key] = obj[key];
    }
  }
  newObj.default = obj;
  if (cache) cache.set(obj, newObj);
  return newObj;
}
}),
/* --- node_modules/@suchipi/jsxdom/dist/jsxdom.umd.js --- */
"node_modules/@suchipi/jsxdom/dist/jsxdom.umd.js": (function (exports, _kame_require_, module, __filename, __dirname, _kame_dynamic_import_) {
(function (e, l) {
  typeof exports == "object" && typeof module != "undefined" ? l(exports) : typeof define == "function" && define.amd ? define(["exports"], l) : (e = typeof globalThis != "undefined" ? globalThis : e || self, l(e.JSXDOM = {}));
})(this, function (e) {
  "use strict";

  var h = Object.getOwnPropertySymbols;
  var g = Object.prototype.hasOwnProperty,
    E = Object.prototype.propertyIsEnumerable;
  var p = (e, l) => {
    var f = {};
    for (var n in e) g.call(e, n) && l.indexOf(n) < 0 && (f[n] = e[n]);
    if (e != null && h) for (var n of h(e)) l.indexOf(n) < 0 && E.call(e, n) && (f[n] = e[n]);
    return f;
  };
  const l = Symbol("REF"),
    f = (...t) => ({
      [l]: !0,
      current: t.length > 0 ? t[0] : null
    }),
    n = (t, c) => {
      if (typeof t != "string") return document.createDocumentFragment();
      const F = c,
        {
          style: u,
          ref: o,
          namespaceURI: r,
          children: s,
          tagName: d
        } = F,
        a = p(F, ["style", "ref", "namespaceURI", "children", "tagName"]);
      let i;
      return r ? i = document.createElementNS(r, t) : i = document.createElement(t), u != null && Object.assign(i.style, u), o != null && (typeof o == "function" ? o(i) : o.current = i), Object.assign(i, a), i;
    };
  let m = n;
  const N = t => {
      m = t;
    },
    y = (t, ...c) => {
      let u = null,
        o = null;
      typeof c[0] == "object" && c[0] != null ? c[0] instanceof Node ? o = c : (u = c[0], o = c.slice(1)) : o = c, o = o.flat(1 / 0);
      const r = u || {};
      if (r.children = o, t === DocumentFragment || typeof t == "string") {
        const s = m(t, r);
        for (const d of o) if (d != null) if (typeof d == "object") s.appendChild(d);else {
          const a = document.createTextNode(String(d));
          s.appendChild(a);
        }
        return s;
      } else return t(r);
    },
    b = y,
    j = DocumentFragment;
  e.Fragment = j, e.createElement = b, e.defaultNodeFactory = n, e.jsx = y, e.ref = f, e.setNodeFactory = N, Object.defineProperties(e, {
    __esModule: {
      value: !0
    },
    [Symbol.toStringTag]: {
      value: "Module"
    }
  });
});
})
/* --- end of modules --- */};

var __kame__ = {
	basedir: typeof __dirname === 'string' ? __dirname : "",
	cache: {},
	runModule: function runModule(name, isMain) {
		var exports = {};
		var module = {
			id: name,
			exports: exports,
		};

		__kame__.cache[name] = module;

		var _kame_require_ = function require(id) {
			if (__kame__.cache[id]) {
				return __kame__.cache[id].exports;
			} else {
				__kame__.runModule(id, false);
				return __kame__.cache[id].exports;
			}
		};
		_kame_require_.cache = __kame__.cache;

		if (isMain) {
			_kame_require_.main = module;
		}

		var __filename = __kame__.basedir + "/" + name;
		var __dirname = __kame__.basedir + "/" + name.split("/").slice(0, -1).join("/");

		

		__kame__.modules[name](exports, _kame_require_, module, __filename, __dirname );
		return module.exports;
	},
	
	modules: modules,
};



return __kame__.runModule("src/pet-preview.tsx", true);
}

if (typeof exports === 'object' && typeof module !== 'undefined') {
	module.exports = factory();
} else if (typeof define === 'function' && define.amd) {
	define([], factory);
} else {
	factory()
}

})(
	typeof global !== "undefined" ? global :
	typeof window !== "undefined" ? window :
	typeof self !== "undefined" ? self :
	typeof this === "object" ? this :
	new Function("return this")()
);

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址