您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
npmjs-explore/npmjs文件查看
// ==UserScript== // @name npmjs-explore // @name:zh npmjs文件查看 // @namespace https://github.com/lisonge // @version 1.0.3 // @author lisonge // @description npmjs-explore/npmjs文件查看 // @license ISC // @icon https://i.songe.li/favicon.svg // @homepage https://github.com/lisonge/npmjs-explore#readme // @homepageURL https://github.com/lisonge/npmjs-explore#readme // @source https://github.com/lisonge/npmjs-explore.git // @supportURL https://github.com/lisonge/npmjs-explore/issues // @include ^https:\/\/www.npmjs.com\/package\/.* // @match https://www.npmjs.com/package/* // @require https://cdn.jsdelivr.net/npm/[email protected] // ==/UserScript== // use [email protected] at 2022-07-22T07:45:07.318Z (function(preact2) { "use strict"; var t, u, r, o$1, i = 0, c = [], f = [], e$1 = preact2.options.__b, a = preact2.options.__r, v = preact2.options.diffed, l = preact2.options.__c, m = preact2.options.unmount; function p(t2, r2) { preact2.options.__h && preact2.options.__h(u, t2, i || r2), i = 0; var o2 = u.__H || (u.__H = { __: [], __h: [] }); return t2 >= o2.__.length && o2.__.push({ __V: f }), o2.__[t2]; } function y(n) { return i = 1, d(z, n); } function d(n, r2, o2) { var i2 = p(t++, 2); return i2.t = n, i2.__c || (i2.__ = [o2 ? o2(r2) : z(void 0, r2), function(n2) { var t2 = i2.t(i2.__[0], n2); i2.__[0] !== t2 && (i2.__ = [t2, i2.__[1]], i2.__c.setState({})); }], i2.__c = u), i2.__; } function _(r2, o2) { var i2 = p(t++, 3); !preact2.options.__s && w(i2.__H, o2) && (i2.__ = r2, i2.u = o2, u.__H.__h.push(i2)); } function b() { for (var t2; t2 = c.shift(); ) if (t2.__P) try { t2.__H.__h.forEach(j), t2.__H.__h.forEach(k), t2.__H.__h = []; } catch (u2) { t2.__H.__h = [], preact2.options.__e(u2, t2.__v); } } preact2.options.__b = function(n) { u = null, e$1 && e$1(n); }, preact2.options.__r = function(n) { a && a(n), t = 0; var o2 = (u = n.__c).__H; o2 && (r === u ? (o2.__h = [], u.__h = [], o2.__.forEach(function(n2) { n2.__V = f, n2.u = void 0; })) : (o2.__h.forEach(j), o2.__h.forEach(k), o2.__h = [])), r = u; }, preact2.options.diffed = function(t2) { v && v(t2); var i2 = t2.__c; i2 && i2.__H && (i2.__H.__h.length && (1 !== c.push(i2) && o$1 === preact2.options.requestAnimationFrame || ((o$1 = preact2.options.requestAnimationFrame) || function(n) { var t3, u2 = function() { clearTimeout(r2), g && cancelAnimationFrame(t3), setTimeout(n); }, r2 = setTimeout(u2, 100); g && (t3 = requestAnimationFrame(u2)); })(b)), i2.__H.__.forEach(function(n) { n.u && (n.__H = n.u), n.__V !== f && (n.__ = n.__V), n.u = void 0, n.__V = f; })), r = u = null; }, preact2.options.__c = function(t2, u2) { u2.some(function(t3) { try { t3.__h.forEach(j), t3.__h = t3.__h.filter(function(n) { return !n.__ || k(n); }); } catch (r2) { u2.some(function(n) { n.__h && (n.__h = []); }), u2 = [], preact2.options.__e(r2, t3.__v); } }), l && l(t2, u2); }, preact2.options.unmount = function(t2) { m && m(t2); var u2, r2 = t2.__c; r2 && r2.__H && (r2.__H.__.forEach(function(n) { try { j(n); } catch (n2) { u2 = n2; } }), u2 && preact2.options.__e(u2, r2.__v)); }; var g = "function" == typeof requestAnimationFrame; function j(n) { var t2 = u, r2 = n.__c; "function" == typeof r2 && (n.__c = void 0, r2()), u = t2; } function k(n) { var t2 = u; n.__c = n.__(), u = t2; } function w(n, t2) { return !n || n.length !== t2.length || t2.some(function(t3, u2) { return t3 !== n[u2]; }); } function z(n, t2) { return "function" == typeof t2 ? t2(n) : t2; } const getPackageMeta = () => { var _a, _b; const list = location.pathname.split("/"); let name = list[2]; let version = (_a = list[4]) != null ? _a : "latest"; if (name.startsWith("@")) { name = list[2] + "/" + list[3]; version = (_b = list[5]) != null ? _b : "latest"; } return { name, version }; }; var o = 0; function e(_2, e2, n, t2, f2) { var l2, s, u2 = {}; for (s in e2) "ref" == s ? l2 = e2[s] : u2[s] = e2[s]; var a2 = { type: _2, props: u2, key: n, ref: l2, __k: null, __: null, __b: 0, __e: null, __d: void 0, __c: null, __h: null, constructor: void 0, __v: --o, __source: f2, __self: t2 }; if ("function" == typeof _2 && (l2 = _2.defaultProps)) for (s in l2) void 0 === u2[s] && (u2[s] = l2[s]); return preact2.options.vnode && preact2.options.vnode(a2), a2; } function App() { const [jsdelivrUrl, setJsdelivrUrl] = y(""); const [unpkgUrl, setUnpkgUrl] = y(""); _(() => { const invoke = () => { const { name, version } = getPackageMeta(); setJsdelivrUrl(`https://cdn.jsdelivr.net/npm/${name}@${version}/`); setUnpkgUrl(`https://unpkg.com/browse/${name}@${version}/`); }; invoke(); const task = setInterval(invoke, 1e3); return () => { clearInterval(task); }; }, []); return e(preact2.Fragment, { children: e("div", { style: { marginLeft: "20px" }, children: [e("a", { href: unpkgUrl, title: unpkgUrl, target: "_blank", style: { color: "#bb2e3e", textDecoration: "none" }, children: "unpkg" }), e("span", { style: { display: "inline-block", width: "10px" } }), e("a", { href: jsdelivrUrl, title: jsdelivrUrl, target: "_blank", style: { color: "#bb2e3e", textDecoration: "none" }, children: "jsdelivr" })] }) }); } (() => { var _a; const { name } = getPackageMeta(); const box = (_a = document.querySelector(`span[title="${name}"]`)) == null ? void 0 : _a.parentElement; if (!box) { console.warn("npmjs-explore inject failed"); return; } const container = document.createElement("div"); box.appendChild(container); preact2.render(e(App, {}), container); })(); })(preact);
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址