首页
历史
最近更改
特殊页面
社群首页
设置
关于Vocawiki
免责声明
Vocawiki
搜索
用户菜单
创建账号
登录
查看“︁MediaWiki:Gadget-site-js.js”︁的源代码
←
MediaWiki:Gadget-site-js.js
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
此页面为本wiki上的软件提供界面文本,并受到保护以防止滥用。 如欲修改所有wiki的翻译,请访问
translatewiki.net
上的MediaWiki本地化项目。
您无权编辑此JavaScript页面,因为编辑此页面可能会影响所有访问者。
您可以查看和复制此页面的源代码。
/** * ------------------------------------------------------------------------- * !!! DON'T MODIFY THIS PAGE MANUALLY, YOUR CHANGES WILL BE OVERWRITTEN !!! * ------------------------------------------------------------------------- */ var _addText = '{{GHIACode|page=GHIA:MoegirlPediaInterfaceCodes/blob/master/src/gadgets/site-js/Gadget-site-js.js|user=[[U:AnnAngela]]|co-authors=GH:github-actions[bot]|longId=103d1a563ea4ccc8ff29fb55c9bcd88329a56eb5|shortId=103d1a56|summary=feat: rename (#594)|body=<nowiki>Co-authored-by: github-actions[bot] <41898282+github-actions[bot]📧users.noreply.github.com></nowiki>}}'; /* <pre> */ "use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __generator = (this && this.__generator) || function (thisArg, body) { var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; function verb(n) { return function (v) { return step([n, v]); }; } function step(op) { if (f) throw new TypeError("Generator is already executing."); while (g && (g = 0, op[0] && (_ = 0)), _) try { if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; if (y = 0, t) op = [op[0] & 2, t.value]; switch (op[0]) { case 0: case 1: t = op; break; case 4: _.label++; return { value: op[1], done: false }; case 5: _.label++; y = op[1]; op = [0]; continue; case 7: op = _.ops.pop(); _.trys.pop(); continue; default: if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } if (t[2]) _.ops.pop(); _.trys.pop(); continue; } op = body.call(thisArg, _); } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } }; var __read = (this && this.__read) || function (o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error: error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { if (ar || !(i in from)) { if (!ar) ar = Array.prototype.slice.call(from, 0, i); ar[i] = from[i]; } } return to.concat(ar || Array.prototype.slice.call(from)); }; var __values = (this && this.__values) || function(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); if (o && typeof o.length === "number") return { next: function () { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; } }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; (function () { return __awaiter(void 0, void 0, void 0, function () { function tabs() { var defaultStyle = { purple: { labelColor: " ", labelBackgroundColor: "#9070c0", labelBorderColor: "#b090e0 #7050a0 #9070c0 #b090e0", labelPadding: ".2em .3em .2em .3em", textBorderColor: "#9070c0", textBackgroundColor: "#f0edf5", textPadding: "1em" }, green: { labelColor: " ", labelBackgroundColor: "#75c045", labelBorderColor: "#90d060 #60b030 #75c045 #90d060", labelPadding: ".2em .3em .2em .3em", textBorderColor: "#75c045 #60b030 #60b030 #75c045", textBackgroundColor: "#f5fffa", textPadding: "1em" }, red: { labelColor: " ", labelBackgroundColor: "#FF0000", labelBorderColor: "#FF8888 #CC0000 #FF0000 #FF8888", labelPadding: ".2em .3em .2em .3em", textBorderColor: "#FF0000 #CC0000 #CC0000 #FF0000", textBackgroundColor: "#fffafa", textPadding: "1em" }, blue: { labelColor: " ", labelBackgroundColor: "#5b8dd6", labelBorderColor: "#88abde #3379de #5b8dd6 #88abde", labelPadding: ".2em .3em .2em .3em", textBackgroundColor: "#f0f8ff", textBorderColor: "#5b8dd6 #3379de #3379de #5b8dd6", textPadding: "1em" }, yellow: { labelColor: " ", labelBackgroundColor: "#ffe147", labelBorderColor: "#ffe977 #ffd813 #ffe147 #ffe977", labelPadding: ".2em .3em .2em .3em", textBackgroundColor: "#fffce8", textBorderColor: "#ffe147 #ffd813 #ffd813 #ffe147", textPadding: "1em" }, orange: { labelColor: " ", labelBackgroundColor: "#ff9d42", labelBorderColor: "#ffac5d #ff820e #ff9d42 #ffac5d", labelPadding: ".2em .3em .2em .3em", textBackgroundColor: "#ffeedd", textBorderColor: "#ff9d42 #ff820e #ff820e #ff9d42", textPadding: "1em" }, black: { labelColor: " ", labelBackgroundColor: "#7f7f7f", labelBorderColor: "#999999 #4c4c4c #7f7f7f #999999", labelPadding: ".2em .3em .2em .3em", textBackgroundColor: "#e5e5e5", textBorderColor: "#7f7f7f #4c4c4c #4c4c4c #7f7f7f", textPadding: "1em" } }; var sides = { top: { className: "tabLabelTop", labelColorSide: "top", labelBorderSide: ["left", "right"], labelColorSideReverse: "bottom", dividerSizeType: "height" }, bottom: { className: "tabLabelBottom", labelColorSide: "bottom", labelBorderSide: ["left", "right"], labelColorSideReverse: "top", dividerSizeType: "height" }, left: { className: "tabLabelLeft", labelColorSide: "left", labelBorderSide: ["top", "bottom"], labelColorSideReverse: "right", dividerSizeType: "width" }, right: { className: "tabLabelRight", labelColorSide: "right", labelBorderSide: ["top", "bottom"], labelColorSideReverse: "left", dividerSizeType: "width" } }; var truthy = ["1", "on", "true", "yes"]; $body.addClass("tab"); var getOwnPropertyNamesLength = function (obj) { return Reflect.ownKeys(obj).length; }; var toLowerFirstCase = function (str) { return str.substring(0, 1).toLowerCase() + str.substring(1); }; var toUpperFirstCase = function (str) { return str.substring(0, 1).toUpperCase() + str.substring(1); }; mw.hook("wikipage.content").add(function (content) { content.find(".Tabs").each(function () { var self = $(this); if (self.children(".TabLabel")[0]) { return true; } var classList = Array.from(this.classList).filter(function (n) { return Reflect.has(defaultStyle, n); }); var data = $.extend({ labelPadding: "2px", labelBorderColor: "#aaa", labelColor: "green", labelBackgroundColor: $("#content").css("background-color") || "rgba(247,251,255,0.8)", textPadding: "20px 30px", textBorderColor: "#aaa", textBackgroundColor: "white", defaultTab: 1 }, classList[0] ? defaultStyle[classList[0]] || {} : {}, this.dataset || {}); var styleSheet = { label: {}, text: {} }; var tabLabel = self.append('<div class="TabLabel"></div>').children(".TabLabel"), tabDivider = self.append('<div class="TabDivider"></div>').children(".TabDivider"), tabContent = self.append('<div class="TabContent"></div>').children(".TabContent"), labelPadding = data.labelPadding, labelColor = data.labelColor, labelSide = Reflect.has(sides, data.labelSide) ? data.labelSide : "top", side = sides[labelSide], labelColorSideReverse = truthy.includes(data.labelColorSideReverse), dividerSize = parseInt(data.dividerSize); var defaultTab = parseInt(data.defaultTab); if (labelSide === "top") { tabLabel.after(tabDivider); tabDivider.after(tabContent); } else if (labelSide === "bottom") { tabContent.after(tabDivider); tabDivider.after(tabLabel); } if (!isNaN(dividerSize) && dividerSize > 0) { self.find(".TabDivider")[side.dividerSizeType](dividerSize); } var labelColorName = toUpperFirstCase(labelColorSideReverse ? side.labelColorSideReverse : side.labelColorSide); self.addClass(side.className); if (labelColorSideReverse) { self.addClass("reverse"); } self.children(".Tab").each(function () { if ($(this).children(".TabLabelText").text().replace(/\s/g, "").length || $(this).children(".TabLabelText").children().length) { $(this).children(".TabLabelText").appendTo(tabLabel); $(this).children(".TabContentText").appendTo(self.children(".TabContent")); } $(this).remove(); }); if (isNaN(defaultTab) || defaultTab <= 0 || defaultTab > tabLabel.children(".TabLabelText").length) { defaultTab = 1; } tabLabel.children(".TabLabelText").on("click", function () { var label = $(this); label.addClass("selected").siblings().removeClass("selected").css({ "border-color": "transparent", "background-color": "inherit" }); tabContent.children(".TabContentText").eq(tabLabel.children(".TabLabelText").index(label)).addClass("selected").siblings().removeClass("selected").removeAttr("style"); if (getOwnPropertyNamesLength(styleSheet.label) > 0) { label.css(styleSheet.label); } setTimeout(function () { $window.triggerHandler("scroll"); }, 1); }).eq(defaultTab - 1).trigger("click"); if (labelPadding) { tabLabel.children(".TabLabelText").css("padding", labelPadding); } ["labelBorderColor", "labelBackgroundColor", "textPadding", "textBorderColor", "textBackgroundColor"].forEach(function (n) { var target = /^label/.test(n) ? "label" : "text", key = toLowerFirstCase(n.replace(target, "")); styleSheet[target][key] = data[n]; }); if (labelColor) { styleSheet.label["border".concat(labelColorName, "Color")] = labelColor; } else if (styleSheet.label.borderColor) { styleSheet.label["border".concat(labelColorName, "Color")] = "green"; } tabLabel.find(".selected").trigger("click"); if (getOwnPropertyNamesLength(styleSheet.text) > 0) { tabContent.css(styleSheet.text); } if (data.autoWidth === "yes") { self.addClass("AutoWidth"); } if (data.float === "left") { self.addClass("FloatLeft"); } if (data.float === "right") { self.addClass("FloatRight"); } }); }); } var wgUserGroups, isMGPMGUser, wgNamespaceNumber, wgAction, body, html, $body, $window, sleep, url, forbiddenScroll, templateTags, templateClasses, templateStr, templateFix, tcc, domainChangedAlert, hex2, hex4, unescapeString, createElement, getAttribute, setAttribute, cloneNode, appendChild, contains, watermark, getNamespacePrefixRegex, listMarginLeft, historyForm, gadgetUsageRemoveDefaultGadgets, substHost, currentHostFlag, detectedHost, needHashChange, originHash, wgCurRevisionId, wgRevisionId, wgPageName, namespacePrefixRegex_1, displayedTitle_1, result, matchTitles; return __generator(this, function (_a) { switch (_a.label) { case 0: wgUserGroups = mw.config.get("wgUserGroups"); isMGPMGUser = wgUserGroups.includes("patroller") || wgUserGroups.includes("sysop"); wgNamespaceNumber = mw.config.get("wgNamespaceNumber"); wgAction = mw.config.get("wgAction"); body = document.body; html = document.documentElement; $body = $(body); $window = $(window); sleep = function (ms) { if (ms === void 0) { ms = 1000; } return new Promise(function (res) { return setTimeout(res, ms); }); }; if (["ViewAvatar", "Listfiles", "ListDuplicatedFiles", "Unusedimages", "Uncategorizedimages", "MediaStatistics", "TimedMediaHandler"].includes(mw.config.get("wgCanonicalSpecialPageName"))) { url = new mw.Uri(); url.host = url.host.replace(/^[^.]+/g, "commons"); url.path = mw.config.get("wgScript"); url.query.title = "".concat(mw.config.get("wgCanonicalNamespace"), ":").concat(mw.config.get("wgCanonicalSpecialPageName")); location.replace(url); } forbiddenScroll = ["hidden", "clip"]; $window.on("resize", function () { var innerWidth = window.innerWidth; var scrollbarWidth; if (!forbiddenScroll.includes(getComputedStyle(body).overflowY)) { scrollbarWidth = innerWidth - body.clientWidth; } else if (!forbiddenScroll.includes(getComputedStyle(html).overflowY)) { scrollbarWidth = innerWidth - html.clientWidth; } else { var backup = body.style.overflowY; body.style.overflowY = "scroll"; scrollbarWidth = innerWidth - body.clientWidth; body.style.overflowY = backup; } $body[scrollbarWidth <= 0 ? "addClass" : "removeClass"]("overlay-scrollbars"); }).trigger("resize"); $(".annotation").each(function (_, ele) { var popup = new OO.ui.PopupWidget({ $content: $(ele).children(".annotation-content"), padded: true, autoFlip: false }); $(ele) .append(popup.$element) .on("mouseover", function () { popup.toggle(true); }) .on("mouseout", function () { popup.toggle(false); }); }); templateTags = ["s", "del"]; templateClasses = [".heimu", ".colormu", ".just-kidding-text"]; templateStr = __spreadArray(__spreadArray([], __read(templateTags), false), __read(templateClasses), false).join(", "); templateFix = function ($content) { var target = $(); $content.find(templateStr).each(function (_, ele) { if (ele.isTemplateFixed === "true") { return; } ele.isTemplateFixed = true; var subElements = Array.from(ele.querySelectorAll(templateStr)); if (subElements.length > 0) { target.push(ele); subElements.forEach(function (subElement) { subElement.isTemplateFixed = true; templateClasses.forEach(function (cls) { if (!isMGPMGUser) { subElement.classList.remove(cls.substring(1)); } }); }); console.info("TemplateFix", ele, subElements); } }); if (wgNamespaceNumber >= 0 && wgNamespaceNumber % 2 === 0 && target.length > 0) { if (+mw.user.options.get("gadget-enable-nest-highlight", 0) === 1 || isMGPMGUser && !wgUserGroups.includes("staff")) { target.css("border", "3px dashed red"); } if (isMGPMGUser && !wgUserGroups.includes("staff") && +mw.user.options.get("gadget-disable-nest-alert", 0) !== 1) { oouiDialog.alert("\u672C\u9875\u9762\u542B\u6709\u5D4C\u5957\u4F7F\u7528\uFF08\u6DF7\u7528\uFF09\u4EE5\u4E0B\u6807\u7B7E\u6216\u6A21\u677F\u7684\u5185\u5BB9\uFF08\u5DF2\u7528\u7EA2\u8272\u865A\u7EBF\u8FB9\u6846\u6807\u8BC6\uFF09\uFF0C\u8BF7\u68C0\u67E5\u6E90\u7801\u5E76\u4FEE\u6539\u4E4B\uFF1A<ul><li>\u5220\u9664\u7EBF\uFF1A<code>".concat(oouiDialog.sanitize("<s>"), "</code>\u3001<code>").concat(oouiDialog.sanitize("<del>"), "</code>\uFF1B</li><li>\u9ED1\u5E55\uFF1A<code>{{\u9ED1\u5E55}}</code>\u3001<code>{{Block}}</code>\u3001<code>{{Heimu}}</code>\uFF1B</li><li>\u5F69\u8272\u5E55\uFF1A<code>{{\u5F69\u8272\u5E55}}</code>\uFF1B</li><li>\u80E1\u8BDD\uFF1A<code>{{\u80E1\u8BDD}}</code>\u3001<code>{{jk}}</code>\uFF0C\u5927\u5C0F\u5199\u4E0D\u9650\u3002</li></ul>"), { title: "萌娘百科提醒您", size: "medium" }); } } }; tcc = function () { return __awaiter(void 0, void 0, void 0, function () { var tcBtn, originText, wpCaptchaWord_1, wpCaptchaId_1; return __generator(this, function (_a) { switch (_a.label) { case 0: tcBtn = document.getElementById("TencentCaptchaBtn"); if (!(tcBtn && !tcBtn.disabled)) return [3, 4]; originText = tcBtn.innerText; tcBtn.innerText = "正在加载验证码,请稍候……"; wpCaptchaWord_1 = document.getElementById("wpCaptchaWord"); wpCaptchaId_1 = document.getElementById("wpCaptchaId"); _a.label = 1; case 1: if (!(typeof window.TencentCaptcha !== "function")) return [3, 3]; return [4, sleep(100)]; case 2: _a.sent(); return [3, 1]; case 3: if (!tcBtn.disabled) { new window.TencentCaptcha(tcBtn); tcBtn.innerText = originText; } document.getElementById("wpSave").addEventListener("click", function (e) { if (!tcBtn.disabled && (!wpCaptchaWord_1.value || !wpCaptchaId_1.value)) { oouiDialog.alert("请点击验证按钮,完成验证后再提交"); e.preventDefault(); e.stopImmediatePropagation(); e.stopPropagation(); } }, { capture: true }); _a.label = 4; case 4: return [2]; } }); }); }; domainChangedAlert = function () { $body.before('<div style="background: #3366CC; color: white; text-align: center; padding: .5rem; position: static;" id="domainChangedAlert"><p>萌娘百科已将域名替换为 <code>*.moegirl.org<b><u>.cn</u></b></code>,原有域名可能访问困难,请更换您的书签等的页面地址。</p></div>'); $body.css({ "background-position-y": $("#domainChangedAlert").outerHeight(), position: "relative" }); }; hex2 = /^[\da-f]{2}$/i; hex4 = /^[\da-f]{4}$/i; unescapeString = function (string) { var str = "".concat(string); var result = ""; var length = str.length; var index = 0; var chr, part; while (index < length) { chr = str.charAt(index++); if (chr === "%") { if (str.charAt(index) === "u") { part = str.slice(index + 1, index + 5); if (hex4.exec(part)) { result += String.fromCharCode(parseInt(part, 16)); index += 5; continue; } } else { part = str.slice(index, index + 2); if (hex2.exec(part)) { result += String.fromCharCode(parseInt(part, 16)); index += 2; continue; } } } result += chr; } return result; }; createElement = Document.prototype.createElement.bind(document); getAttribute = Element.prototype.getAttribute; setAttribute = Element.prototype.setAttribute; cloneNode = Node.prototype.cloneNode; appendChild = Node.prototype.appendChild.bind(document.body); contains = Node.prototype.contains.bind(document.body); watermark = function (txt, size) { var styleString = "position: fixed !important; z-index: 99999 !important; inset: 0px !important; background-image: url(\"data:image/svg+xml;base64,".concat(btoa("<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"".concat(size, "\" height=\"").concat(size, "\"><foreignObject width=\"").concat(size, "\" height=\"").concat(size, "\"><html xmlns=\"http://www.w3.org/1999/xhtml\" style=\"width: ").concat(size, "px; height: ").concat(size, "px;\"><head></head><body style=\"width: ").concat(size, "px; height: ").concat(size, "px; margin: 0px;\"><div style=\"width: 100% !important; height: 100% !important; opacity: .17 !important; font-size: 24px !important; position: relative !important; color: black !important;\"><div style=\"transform: rotate(-15deg) translateX(-50%) translateY(-50%) !important; word-break: break-all !important; top: 36% !important; left: 50% !important; position: absolute !important; width: 100% !important; text-align: center !important;\">").concat(unescapeString(encodeURIComponent(txt)), "</div></div></body></html></foreignObject></svg>")), "\") !important; background-repeat: repeat !important; pointer-events: none !important; display: block !important; visibility: visible !important; width: unset !important; height: unset !important; opacity: unset !important; background-color: unset !important;"); var template = createElement("div"); setAttribute.bind(template)("style", styleString); var ele = appendChild(cloneNode.bind(template)(true)); setInterval(function () { var reasons = []; if (!contains(ele)) { reasons.push("not in body"); } if (getAttribute.bind(ele)("style") !== styleString) { reasons.push("styleString not match"); } if (reasons.length > 0) { console.info("[watermark] Recreate watermark:", reasons); try { ele.remove(); } catch (_a) { } ele = appendChild(cloneNode.bind(template)(true)); } }, 1000); }; getNamespacePrefixRegex = function (namespaceNumber) { return RegExp("^(?:".concat(Object.entries(mw.config.get("wgNamespaceIds")).filter(function (config) { return config[1] === namespaceNumber; }).map(function (config) { return config[0].toLowerCase(); }).join("|"), "):"), "i"); }; listMarginLeft = function () { $(".mw-parser-output ul:not(.margin-left-set), .mw-parser-output ol:not(.margin-left-set), #mw-content-text > pre.prettyprint ul:not(.margin-left-set), #mw-content-text > pre.prettyprint ol:not(.margin-left-set)").each(function (_, ele) { var $ele = $(ele); if (/none.+none/i.test($ele.css("list-style")) || $ele.is(".gallery")) { if ($ele.parent().is("li") && $ele.parent().parent().is("ul, ol")) { $ele.css("margin-left", "1.2em"); } else { $ele.css("margin-left", "0.2em"); } } else if ($ele.is("ol")) { var li = $ele.children("li"); var start = $ele.attr("start"); var max_1 = /^\d+$/.test(start) ? +start : 0; li.each(function (_, e) { var value = $(e).attr("value"); if (/^\d+$/.test(value)) { max_1 = Math.max(max_1, +value); } else { max_1++; } }); $ele.attr("data-last-margin-left-max-length", max_1).css("margin-left", "".concat("".concat(max_1).length * 0.5 + 1.2, "em")); } else { $ele.css("margin-left", "1.2em"); } $ele.addClass("margin-left-set"); }); }; historyForm = function () { var form = $("#mw-history-compare, #mw-log-deleterevision-submit"); form.find('[name="editchangetags"], [name="revisiondelete"]').on("click", function () { form.attr("method", "post"); setTimeout(function () { form.removeAttr("method"); }, 16); }); }; gadgetUsageRemoveDefaultGadgets = function () { var e_1, _a, e_2, _b; var defaultStrings = ["默认", "預設", "默認"]; var defaultGadgets = []; var usageTable = document.querySelector(".mw-spcontent > table"); try { for (var _c = __values(usageTable.querySelectorAll("tr")), _d = _c.next(); !_d.done; _d = _c.next()) { var ele = _d.value; var _e = __read(ele.children, 3), gadgetName = _e[0].innerText, usercount = _e[1].innerText, activeusers = _e[2].innerText; if (defaultStrings.includes(usercount.trim()) && defaultStrings.includes(activeusers.trim())) { ele.style.display = "none"; defaultGadgets.push(gadgetName); } } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (_d && !_d.done && (_a = _c["return"])) _a.call(_c); } finally { if (e_1) throw e_1.error; } } if (defaultGadgets.length > 0) { var div = document.createElement("div"); var table = document.createElement("table"); table.classList.add("wikitable"); var caption = document.createElement("caption"); caption.innerText = wgULS("默认小工具", "預設小工具"); table.append(caption); var thead = document.createElement("thead"); var headTr = document.createElement("tr"); var th = document.createElement("th"); th.innerText = "小工具"; table.append(thead); thead.append(headTr); headTr.append(th); var tbody = document.createElement("tbody"); table.append(tbody); try { for (var defaultGadgets_1 = __values(defaultGadgets), defaultGadgets_1_1 = defaultGadgets_1.next(); !defaultGadgets_1_1.done; defaultGadgets_1_1 = defaultGadgets_1.next()) { var gadget = defaultGadgets_1_1.value; var tr = document.createElement("tr"); var td = document.createElement("td"); td.innerText = gadget; tbody.append(tr); tr.append(td); } } catch (e_2_1) { e_2 = { error: e_2_1 }; } finally { try { if (defaultGadgets_1_1 && !defaultGadgets_1_1.done && (_b = defaultGadgets_1["return"])) _b.call(defaultGadgets_1); } finally { if (e_2) throw e_2.error; } } usageTable.before(div); div.append(usageTable); var usageCaption = document.createElement("caption"); usageCaption.innerText = document.querySelector("#firstHeading").innerText; usageTable.append(usageCaption); div.append(table); div.style.display = "flex"; div.style.flexWrap = "wrap"; div.style.alignContent = "flex-start"; div.style.justifyContent = "space-evenly"; div.style.alignItems = "flex-start"; } }; return [4, $.ready]; case 1: _a.sent(); try { substHost = void 0; try { substHost = top.location.host; } catch (_b) { substHost = ""; } currentHostFlag = !/\.moegirl\.org(?:\.cn)?$/i.test(location.host); } catch (e) { console.debug(e); } tabs(); setInterval(function () { $(document.querySelectorAll('img[src*="//img.moegirl.org/"]:not(.org-changed), img[src*="//commons.moegirl.org/"]:not(.org-changed)')).each(function (_, ele) { try { var url = new mw.Uri(ele.src); if (["img.moegirl.org", "commons.moegirl.org"].includes(url.host)) { url.host += ".cn"; ele.src = url; } ele.classList.add("org-changed"); } catch (_a) { } }); }, 200); mw.hook("wikipage.content").add(templateFix); if (["edit", "submit"].includes(wgAction)) { tcc(); } if (wgAction === "history") { historyForm(); } needHashChange = /[)]$/.test(location.pathname + location.search); if (needHashChange) { originHash = location.hash; location.hash = "%"; location.hash = originHash; } $window.on("hashchange.hashchange", function () { var hash = decodeURIComponent(location.hash.replace(/^#/, "")); if (hash.length > 0) { var target = document.getElementById(hash); if (target) { var $target_1 = $(target); var needScroll = true; var mwCollapsible = $target_1.closest(".mw-collapsible.mw-collapsed"); if (mwCollapsible.length > 0) { mwCollapsible.find(".mw-collapsible-toggle").first().triggerHandler("click"); } var tabContentTextUnselected = $target_1.closest(".TabContentText:not(.selected)"); if (tabContentTextUnselected.length > 0) { tabContentTextUnselected.closest(".Tabs").children(".TabLabel").children().eq(tabContentTextUnselected.index()).trigger("click"); } if (needScroll) { setTimeout(function () { $("html, body").scrollTop($target_1.offset().top - window.innerHeight / 8); }, 50); } } } }); $window.triggerHandler("hashchange.hashchange"); setInterval(listMarginLeft, 200); ["copy", "keydown", "scroll", "mousemove"].forEach(function (type) { document.addEventListener(type, function () { $(".mailSymbol").replaceWith('<span title="Template:Mail@">@</span>'); }, { capture: true, passive: true }); }); if (mw.config.get("wgCanonicalSpecialPageName") === "GadgetUsage") { gadgetUsageRemoveDefaultGadgets(); } wgCurRevisionId = mw.config.get("wgCurRevisionId") || -1; wgRevisionId = mw.config.get("wgRevisionId") || -1; if (!!wgUserGroups.includes("autoconfirmed")) return [3, 4]; if (!(wgCurRevisionId > 0 && wgRevisionId > 0 && wgCurRevisionId !== wgRevisionId)) return [3, 2]; watermark("历史版本,非最新内容<br/>不代表萌娘百科立场", 300); return [3, 4]; case 2: if (![2, 3].includes(wgNamespaceNumber)) return [3, 4]; wgPageName = mw.config.get("wgPageName"); namespacePrefixRegex_1 = getNamespacePrefixRegex(wgNamespaceNumber); displayedTitle_1 = $("#firstHeading, #section_0").first().text().replace(/ /g, "_").replace(namespacePrefixRegex_1, "").trim(); if (!(mw.config.get("wgAction") === "view" && mw.config.get("wgArticleId") > 0 && displayedTitle_1 !== wgPageName.replace(/ /g, "_").replace(namespacePrefixRegex_1, "").trim())) return [3, 4]; return [4, new mw.Api().post({ action: "query", prop: "info", inprop: "varianttitles", titles: wgPageName })]; case 3: result = _a.sent(); matchTitles = Object.values(result.query.pages[mw.config.get("wgArticleId")].varianttitles).filter(function (title) { return displayedTitle_1 === title.replace(/ /g, "_").replace(namespacePrefixRegex_1, "").trim(); }); if (matchTitles.length === 0) { watermark("用户页面,非正式条目<br/>不代表萌娘百科立场", 300); } _a.label = 4; case 4: $window.triggerHandler("resize"); $window.on("load", function () { $window.triggerHandler("resize"); }); return [2]; } }); }); })(); /* </pre> */
该页面使用的模板:
Template:Clear
(
查看源代码
)
Template:Color
(
查看源代码
)
Template:GHIACode
(
查看源代码
)
Template:Info
(
查看源代码
)
Template:TemplateCate
(
查看源代码
)
Template:Toggle 内联按钮
(
查看源代码
)
Module:SafeCate
(
查看源代码
)
返回
MediaWiki:Gadget-site-js.js
。