From 0c9c1f86c71e4049a0568030926510564e660426 Mon Sep 17 00:00:00 2001 From: fishjar Date: Thu, 21 Mar 2024 08:18:54 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20fishjar/?= =?UTF-8?q?kiss-translator@6278b9124dc16de7c4b0d9bdede0e52b0c779d1b=20?= =?UTF-8?q?=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kiss-translator-ios-safari.user.js | 377 +++++----- kiss-translator-rules.json | 1106 ++++++++++++++++++++++++++-- kiss-translator.user.js | 377 +++++----- main.js | 112 ++- manifest.firefox.json | 4 +- manifest.json | 4 +- options.js | 415 ++++++----- version.txt | 2 +- 8 files changed, 1791 insertions(+), 606 deletions(-) diff --git a/kiss-translator-ios-safari.user.js b/kiss-translator-ios-safari.user.js index 85e239c..76c4cd9 100644 --- a/kiss-translator-ios-safari.user.js +++ b/kiss-translator-ios-safari.user.js @@ -1,7 +1,7 @@ // ==UserScript== // @name KISS Translator // @namespace https://github.com/fishjar/kiss-translator -// @version 1.8.3 +// @version 1.8.4 // @description A simple bilingual translation extension & Greasemonkey script (一个简约的双语对照翻译扩展 & 油猴脚本) // @author Gabe // @homepageURL https://github.com/fishjar/kiss-translator @@ -19478,14 +19478,62 @@ function CssBaseline(inProps) { } false ? 0 : void 0; /* harmony default export */ var CssBaseline_CssBaseline = (CssBaseline); +;// CONCATENATED MODULE: ./src/libs/webfix.js +var _fixerMap;/** + * 修复程序类型 + */var FIXER_NONE="-";var FIXER_BR="br";var FIXER_BN="bn";var FIXER_BR_DIV="brToDiv";var FIXER_BN_DIV="bnToDiv";var FIXER_ALL=[FIXER_NONE,FIXER_BR,FIXER_BN,FIXER_BR_DIV,FIXER_BN_DIV];/** + * 修复过的标记 + */var fixedSign="kiss-fixed";/** + * 采用 `br` 换行网站的修复函数 + * 目标是将 `br` 替换成 `p` + * @param {*} node + * @returns + */function brFixer(node){var tag=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"p";if(node.hasAttribute(fixedSign)){return;}node.setAttribute(fixedSign,"true");var gapTags=["BR","WBR"];var newlineTags=["DIV","UL","OL","LI","H1","H2","H3","H4","H5","H6","P","HR","PRE","TABLE","BLOCKQUOTE"];var html="";node.childNodes.forEach(function(child,index){if(index===0){html+="<".concat(tag," class=\"kiss-p\">");}if(gapTags.indexOf(child.nodeName)!==-1){html+="<").concat(tag," class=\"kiss-p\">");}else if(newlineTags.indexOf(child.nodeName)!==-1){html+="").concat(child.outerHTML,"<").concat(tag," class=\"kiss-p\">");}else if(child.outerHTML){html+=child.outerHTML;}else if(child.textContent){html+=child.textContent;}if(index===node.childNodes.length-1){html+="");}});node.innerHTML=html;}function brDivFixer(node){return brFixer(node,"div");}/** + * 目标是将 `\n` 替换成 `p` + * @param {*} node + * @returns + */function bnFixer(node){var tag=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"p";if(node.hasAttribute(fixedSign)){return;}node.setAttribute(fixedSign,"true");node.innerHTML=node.innerHTML.split("\n").map(function(item){return"<".concat(tag," class=\"kiss-p\">").concat(item||" ","");}).join("");}function bnDivFixer(node){return bnFixer(node,"div");}/** + * 查找、监听节点,并执行修复函数 + * @param {*} selector + * @param {*} fixer + * @param {*} rootSelector + */function run(selector,fixer,rootSelector){var mutaObserver=new MutationObserver(function(mutations){mutations.forEach(function(mutation){mutation.addedNodes.forEach(function(addNode){if(addNode&&addNode.querySelectorAll){addNode.querySelectorAll(selector).forEach(function(node){fixer(node);});}});});});var rootNodes=[document];if(rootSelector){rootNodes=document.querySelectorAll(rootSelector);}rootNodes.forEach(function(rootNode){rootNode.querySelectorAll(selector).forEach(function(node){fixer(node);});mutaObserver.observe(rootNode,{childList:true,subtree:true});});}/** + * 修复程序映射 + */var fixerMap=(_fixerMap={},(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BR,brFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BN,bnFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BR_DIV,brDivFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BN_DIV,bnDivFixer),_fixerMap);/** + * 执行fixer + * @param {*} param0 + */function runFixer(selector){var fixer=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"-";var rootSelector=arguments.length>2?arguments[2]:undefined;try{if(Object.keys(fixerMap).includes(fixer)){run(selector,fixerMap[fixer],rootSelector);}}catch(err){console.error("[kiss-webfix run]: ".concat(err.message));}} ;// CONCATENATED MODULE: ./src/config/rules.js -var DEFAULT_SELECTOR=":is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)";var DEFAULT_KEEP_SELECTOR="code, img, svg";var GLOBAL_KEY="*";var REMAIN_KEY="-";var SHADOW_KEY=">>>";var DEFAULT_RULE={pattern:"",selector:"",keepSelector:"",terms:"",translator:GLOBAL_KEY,fromLang:GLOBAL_KEY,toLang:GLOBAL_KEY,textStyle:GLOBAL_KEY,transOpen:GLOBAL_KEY,bgColor:"",textDiyStyle:""};var DEFAULT_DIY_STYLE="color: #666;\nbackground: linear-gradient(\n 45deg,\n LightGreen 20%,\n LightPink 20% 40%,\n LightSalmon 40% 60%,\n LightSeaGreen 60% 80%,\n LightSkyBlue 80%\n);\n&:hover {\n color: #333;\n};";var DEFAULT_OW_RULE={translator:REMAIN_KEY,fromLang:REMAIN_KEY,toLang:REMAIN_KEY,textStyle:REMAIN_KEY,transOpen:REMAIN_KEY,bgColor:"",textDiyStyle:DEFAULT_DIY_STYLE};var RULES_MAP={"www.google.com/search":["h3, .IsZvec, .VwiC3b"],"news.google.com":["[role=\"link\"], .DY5T1d, .ifw3f, ".concat(DEFAULT_SELECTOR)],"www.foxnews.com":["h1, h2, .title, .sidebar [data-type=\"Title\"], .article-content ".concat(DEFAULT_SELECTOR,"; [data-spotim-module=\"conversation\"]>div >>> [data-spot-im-class=\"message-text\"] p, [data-spot-im-class=\"message-text\"]")],"bearblog.dev, www.theverge.com, www.tampermonkey.net/documentation.php":["".concat(DEFAULT_SELECTOR)],"themessenger.com":[".leading-tight, .leading-tighter, .my-2 p, .font-body p, article ".concat(DEFAULT_SELECTOR)],"www.telegraph.co.uk, go.dev/doc/":["article ".concat(DEFAULT_SELECTOR)],"www.theguardian.com":[".show-underline, .dcr-hup5wm div, .dcr-7vl6y8 div, .dcr-12evv1c, figcaption, article ".concat(DEFAULT_SELECTOR,", [data-cy=\"mostviewed-footer\"] h4")],"www.semafor.com":["".concat(DEFAULT_SELECTOR,", .styles_intro__IYj__, [class*=\"styles_description\"]")],"www.noemamag.com":[".splash__title, .single-card__title, .single-card__type, .single-card__topic, .highlighted-content__title, .single-card__author, article ".concat(DEFAULT_SELECTOR,", .quote__text, .wp-caption-text div")],"restofworld.org":["".concat(DEFAULT_SELECTOR,", .recirc-story__headline, .recirc-story__dek")],"www.axios.com":[".h7, ".concat(DEFAULT_SELECTOR)],"www.newyorker.com":[".summary-item__hed, .summary-item__dek, .summary-collection-grid__dek, .dqtvfu, .rubric__link, .caption, article ".concat(DEFAULT_SELECTOR,", .HEhan ").concat(DEFAULT_SELECTOR,", .ContributorBioBio-fBolsO, .BaseText-ewhhUZ")],"time.com":["h1, h3, .summary, .video-title, #article-body ".concat(DEFAULT_SELECTOR,", .image-wrap-container .credit.body-caption, .media-heading")],"www.dw.com":[".ts-teaser-title a, .news-title a, .title a, .teaser-description a, .hbudab h3, .hbudab p, figcaption ,article ".concat(DEFAULT_SELECTOR)],"www.bbc.com":["h1, h2, .media__link, .media__summary, article ".concat(DEFAULT_SELECTOR,", .ssrcss-y7krbn-Stack, .ssrcss-17zglt8-PromoHeadline, .ssrcss-18cjaf3-Headline, .gs-c-promo-heading__title, .gs-c-promo-summary, .media__content h3, .article__intro, .lx-c-summary-points>li")],"www.chinadaily.com.cn":["h1, .tMain [shape=\"rect\"], .cMain [shape=\"rect\"], .photo_art [shape=\"rect\"], .mai_r [shape=\"rect\"], .lisBox li, #Content ".concat(DEFAULT_SELECTOR)],"www.facebook.com":["[role=\"main\"] [dir=\"auto\"]"],"www.reddit.com":["div:is(.tbIApBd2DM_drfZQJjIum, ._1zPvgKHteTOub9dKkvrOl4,.ULWj94BYSOqoJDetxgcnU),a:is([class^=\"_334yl59\"],[class^=\"_2GrMpxD\"]),h1,h2,h3,h4,h5,h6,p,button"],"www.quora.com":[".qu-wordBreak--break-word"],"edition.cnn.com":[".container__title, .container__headline, .headline__text, .image__caption, [data-type=\"Title\"], .article__content ".concat(DEFAULT_SELECTOR)],"www.reuters.com":["#main-content [data-testid=\"Heading\"], #main-content [data-testid=\"Body\"], .article-body__content__17Yit ".concat(DEFAULT_SELECTOR)],"www.bloomberg.com":["[data-component=\"headline\"], [data-component=\"related-item-headline\"], [data-component=\"title\"], article ".concat(DEFAULT_SELECTOR)],"deno.land, docs.github.com":["main ".concat(DEFAULT_SELECTOR),"code, img, svg"],"doc.rust-lang.org":[".content ".concat(DEFAULT_SELECTOR),"code, img, svg"],"www.indiehackers.com":["h1, h3, .content ".concat(DEFAULT_SELECTOR,", .feed-item__title-link")],"platform.openai.com/docs":[".docs-body ".concat(DEFAULT_SELECTOR),"code, img, svg"],"en.wikipedia.org":["h1, .mw-parser-output ".concat(DEFAULT_SELECTOR),".mwe-math-element"],"stackoverflow.com":["h1, .s-prose p, .comment-body .comment-copy","code, img, svg"],"www.npmjs.com/package, developer.chrome.com/docs, medium.com, developers.cloudflare.com, react.dev, create-react-app.dev, pytorch.org":["article ".concat(DEFAULT_SELECTOR)],"news.ycombinator.com":[".title, .commtext"],"github.com":[".markdown-body ".concat(DEFAULT_SELECTOR,", .repo-description p, .Layout-sidebar .f4, .container-lg .py-4 .f5, .container-lg .my-4 .f5, .Box-row .pr-4, .Box-row article .mt-1, [itemprop=\"description\"], .markdown-title, bdi, .ws-pre-wrap, .status-meta, span.status-meta, .col-10.color-fg-muted, .TimelineItem-body, .pinned-item-list-item-content .color-fg-muted, .markdown-body td, .markdown-body th"),"code, img, svg"],"twitter.com":["[data-testid=\"tweetText\"], [data-testid=\"birdwatch-pivot\"]>div.css-1rynq56","img, a, .r-18u37iz, .css-175oi2r"],"m.youtube.com":[".slim-video-information-title .yt-core-attributed-string, .media-item-headline .yt-core-attributed-string, .comment-text .yt-core-attributed-string, .typography-body-2b .yt-core-attributed-string, #ytp-caption-window-container .ytp-caption-segment"],"www.youtube.com":["h1, #video-title, #content-text, #title, yt-attributed-string>span>span, #ytp-caption-window-container .ytp-caption-segment"],"bard.google.com":[".query-content ".concat(DEFAULT_SELECTOR,", message-content ").concat(DEFAULT_SELECTOR)],"www.bing.com":[".b_algoSlug, .rwrl_padref; .cib-serp-main >>> .ac-textBlock ".concat(DEFAULT_SELECTOR,", .text-message-content div")],"www.phoronix.com":["article ".concat(DEFAULT_SELECTOR)],"wx2.qq.com":[".js_message_plain"],"app.slack.com/client/":[".p-rich_text_section, .c-message_attachment__text, .p-rich_text_list li"],"discord.com/channels/":["li[id^=chat-messages] div[id^=message-content], div[class^=headerText], div[class^=name_], section[aria-label='Search Results'] div[id^=message-content]"],"t.me/s/":[".js-message_text ".concat(DEFAULT_SELECTOR)],"web.telegram.org/k/":[".message, .bot-commands-list-element-description, .reply-markup-button-text"],"web.telegram.org/a/":[".message, .text-content, .bot-commands-list-element-description, .reply-markup-button-text"],"chromereleases.googleblog.com":[".title, .publishdate, p, i, .header-desc, .header-title, .text"],"www.instagram.com/":["h1, article span[dir=auto] > span[dir=auto], ._ab1y"],"www.instagram.com/p/,www.instagram.com/reels/":["h1, div[class='x9f619 xjbqb8w x78zum5 x168nmei x13lgxp2 x5pf9jr xo71vjh x1uhb9sk x1plvlek xryxfnj x1c4vz4f x2lah0s xdt5ytf xqjyukv x1cy8zhl x1oa3qoh x1nhvcw1'] > span[class='x1lliihq x1plvlek xryxfnj x1n2onr6 x193iq5w xeuugli x1fj9vlw x13faqbe x1vvkbs x1s928wv xhkezso x1gmr53x x1cpjm7i x1fgarty x1943h6x x1i0vuye xvs91rp xo1l8bm x5n08af x10wh9bi x1wdrske x8viiok x18hxmgj'], span[class='x193iq5w xeuugli x1fj9vlw x13faqbe x1vvkbs xt0psk2 x1i0vuye xvs91rp xo1l8bm x5n08af x10wh9bi x1wdrske x8viiok x18hxmgj']"],"mail.google.com":["".concat(DEFAULT_SELECTOR,", h2[data-thread-perm-id], span[data-thread-id], div[data-message-id] div[class=''], .messageBody, #views")],"web.whatsapp.com":[".copyable-text > span"],"chat.openai.com":["div[data-message-author-role] > div ".concat(DEFAULT_SELECTOR)],"forum.ru-board.com":[".tit, .dats, span.post, .lgf ".concat(DEFAULT_SELECTOR)],"education.github.com":["".concat(DEFAULT_SELECTOR,", a, summary, span.Button-content")],"blogs.windows.com":["".concat(DEFAULT_SELECTOR,", .c-uhf-nav-link, figcaption")],"developer.apple.com/documentation/":["#main ".concat(DEFAULT_SELECTOR,", #main .abstract .content, #main .abstract.content, #main .link span"),"code, img, svg"],"greasyfork.org":["h2, .script-link, .script-description, #additional-info ".concat(DEFAULT_SELECTOR)],"www.fmkorea.com":["#container ".concat(DEFAULT_SELECTOR)],"forum.arduino.cc":[".top-row>.title, .featured-topic>.title, .link-top-line>.title, .category-description, .topic-excerpt, .fancy-title, .cooked ".concat(DEFAULT_SELECTOR)],"docs.arduino.cc":["[class^=\"tutorial-module--left\"] ".concat(DEFAULT_SELECTOR)],"www.historydefined.net":[".wp-element-caption, ".concat(DEFAULT_SELECTOR)]};var rules_BUILTIN_RULES=Object.entries(RULES_MAP).sort(function(a,b){return a[0].localeCompare(b[0]);}).map(function(_ref){var _ref2=(0,slicedToArray/* default */.Z)(_ref,2),pattern=_ref2[0],_ref2$=(0,slicedToArray/* default */.Z)(_ref2[1],3),selector=_ref2$[0],_ref2$$=_ref2$[1],keepSelector=_ref2$$===void 0?"":_ref2$$,_ref2$$2=_ref2$[2],terms=_ref2$$2===void 0?"":_ref2$$2;return _objectSpread2(_objectSpread2({},DEFAULT_RULE),{},{pattern:pattern,selector:selector,keepSelector:keepSelector,terms:terms});}); +var GLOBAL_KEY="*";var REMAIN_KEY="-";var SHADOW_KEY=">>>";var DEFAULT_SELECTOR=":is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)";var DEFAULT_KEEP_SELECTOR="code, img, svg";var DEFAULT_RULE={pattern:"",// 匹配网址 +selector:"",// 选择器 +keepSelector:"",// 保留元素选择器 +terms:"",// 专业术语 +translator:GLOBAL_KEY,// 翻译服务 +fromLang:GLOBAL_KEY,// 源语言 +toLang:GLOBAL_KEY,// 目标语言 +textStyle:GLOBAL_KEY,// 译文样式 +transOpen:GLOBAL_KEY,// 开启翻译 +bgColor:"",// 译文颜色 +textDiyStyle:"",// 自定义译文样式 +selectStyle:"",// 选择器节点样式 +parentStyle:"",// 选择器父节点样式 +injectJs:"",// 注入JS +injectCss:"",// 注入CSS +transOnly:GLOBAL_KEY,// 是否仅显示译文 +transTiming:GLOBAL_KEY,// 翻译时机/鼠标悬停翻译 +transTag:GLOBAL_KEY,// 译文元素标签 +transTitle:GLOBAL_KEY,// 是否同时翻译页面标题 +detectRemote:GLOBAL_KEY,// 是否使用远程语言检测 +skipLangs:[],// 不翻译的语言 +fixerSelector:"",// 修复函数选择器 +fixerFunc:GLOBAL_KEY// 修复函数 +};var DEFAULT_DIY_STYLE="color: #666;\nbackground: linear-gradient(\n 45deg,\n LightGreen 20%,\n LightPink 20% 40%,\n LightSalmon 40% 60%,\n LightSeaGreen 60% 80%,\n LightSkyBlue 80%\n);\n&:hover {\n color: #333;\n};";var DEFAULT_OW_RULE={translator:REMAIN_KEY,fromLang:REMAIN_KEY,toLang:REMAIN_KEY,textStyle:REMAIN_KEY,transOpen:REMAIN_KEY,bgColor:"",textDiyStyle:DEFAULT_DIY_STYLE};var RULES_MAP={"www.google.com/search":{selector:"h3, .IsZvec, .VwiC3b"},"news.google.com":{selector:"[data-n-tid], ".concat(DEFAULT_SELECTOR)},"www.foxnews.com":{selector:"h1, h2, .title, .sidebar [data-type=\"Title\"], .article-content ".concat(DEFAULT_SELECTOR,"; [data-spotim-module=\"conversation\"]>div >>> [data-spot-im-class=\"message-text\"] p, [data-spot-im-class=\"message-text\"]")},"bearblog.dev, www.theverge.com, www.tampermonkey.net/documentation.php":{selector:"".concat(DEFAULT_SELECTOR)},"themessenger.com":{selector:".leading-tight, .leading-tighter, .my-2 p, .font-body p, article ".concat(DEFAULT_SELECTOR)},"www.telegraph.co.uk, go.dev/doc/":{selector:"article ".concat(DEFAULT_SELECTOR)},"www.theguardian.com":{selector:".show-underline, .dcr-hup5wm div, .dcr-7vl6y8 div, .dcr-12evv1c, figcaption, article ".concat(DEFAULT_SELECTOR,", [data-cy=\"mostviewed-footer\"] h4")},"www.semafor.com":{selector:"".concat(DEFAULT_SELECTOR,", .styles_intro__IYj__, [class*=\"styles_description\"]")},"www.noemamag.com":{selector:".splash__title, .single-card__title, .single-card__type, .single-card__topic, .highlighted-content__title, .single-card__author, article ".concat(DEFAULT_SELECTOR,", .quote__text, .wp-caption-text div")},"restofworld.org":{selector:"".concat(DEFAULT_SELECTOR,", .recirc-story__headline, .recirc-story__dek")},"www.axios.com":{selector:".h7, ".concat(DEFAULT_SELECTOR)},"www.newyorker.com":{selector:".summary-item__hed, .summary-item__dek, .summary-collection-grid__dek, .dqtvfu, .rubric__link, .caption, article ".concat(DEFAULT_SELECTOR,", .HEhan ").concat(DEFAULT_SELECTOR,", .ContributorBioBio-fBolsO, .BaseText-ewhhUZ")},"time.com":{selector:"h1, h3, .summary, .video-title, #article-body ".concat(DEFAULT_SELECTOR,", .image-wrap-container .credit.body-caption, .media-heading")},"www.dw.com":{selector:".ts-teaser-title a, .news-title a, .title a, .teaser-description a, .hbudab h3, .hbudab p, figcaption ,article ".concat(DEFAULT_SELECTOR)},"www.bbc.com":{selector:"h1, h2, .media__link, .media__summary, article ".concat(DEFAULT_SELECTOR,", .ssrcss-y7krbn-Stack, .ssrcss-17zglt8-PromoHeadline, .ssrcss-18cjaf3-Headline, .gs-c-promo-heading__title, .gs-c-promo-summary, .media__content h3, .article__intro, .lx-c-summary-points>li")},"www.chinadaily.com.cn":{selector:"h1, .tMain [shape=\"rect\"], .cMain [shape=\"rect\"], .photo_art [shape=\"rect\"], .mai_r [shape=\"rect\"], .lisBox li, #Content ".concat(DEFAULT_SELECTOR)},"www.facebook.com":{selector:"[role=\"main\"] [dir=\"auto\"]"},"www.reddit.com, new.reddit.com, sh.reddit.com":{selector:":is(#AppRouter-main-content, #overlayScrollContainer) :is([class^=tbIA],[class^=_1zP],[class^=ULWj],[class^=_2Jj], [class^=_334],[class^=_2Gr],[class^=_7T4],[class^=_1WO], ".concat(DEFAULT_SELECTOR,"); [id^=\"post-title\"], :is([slot=\"text-body\"], [slot=\"comment\"]) ").concat(DEFAULT_SELECTOR,", recent-posts h3, aside :is(span:has(>h2), p); shreddit-subreddit-header >>> :is(#title, #description)")},"www.quora.com":{selector:".qu-wordBreak--break-word"},"edition.cnn.com":{selector:".container__title, .container__headline, .headline__text, .image__caption, [data-type=\"Title\"], .article__content ".concat(DEFAULT_SELECTOR)},"www.reuters.com":{selector:"#main-content [data-testid=\"Heading\"], #main-content [data-testid=\"Body\"], .article-body__content__17Yit ".concat(DEFAULT_SELECTOR)},"www.bloomberg.com":{selector:"[data-component=\"headline\"], [data-component=\"related-item-headline\"], [data-component=\"title\"], article ".concat(DEFAULT_SELECTOR)},"deno.land, docs.github.com":{selector:"main ".concat(DEFAULT_SELECTOR),keepSelector:DEFAULT_KEEP_SELECTOR},"doc.rust-lang.org":{selector:".content ".concat(DEFAULT_SELECTOR),keepSelector:DEFAULT_KEEP_SELECTOR},"www.indiehackers.com":{selector:"h1, h3, .content ".concat(DEFAULT_SELECTOR,", .feed-item__title-link")},"platform.openai.com/docs":{selector:".docs-body ".concat(DEFAULT_SELECTOR),keepSelector:DEFAULT_KEEP_SELECTOR},"en.wikipedia.org":{selector:"h1, .mw-parser-output ".concat(DEFAULT_SELECTOR),keepSelector:".mwe-math-element"},"stackoverflow.com, serverfault.com, superuser.com, stackexchange.com, askubuntu.com, stackapps.com, mathoverflow.net":{selector:".s-prose ".concat(DEFAULT_SELECTOR,", .comment-copy, .question-hyperlink, .s-post-summary--content-title, .s-post-summary--content-excerpt"),keepSelector:"".concat(DEFAULT_KEEP_SELECTOR,", .math-container")},"www.npmjs.com/package, developer.chrome.com/docs, medium.com, react.dev, create-react-app.dev, pytorch.org":{selector:"article ".concat(DEFAULT_SELECTOR)},"news.ycombinator.com":{selector:".title, p",fixerSelector:".toptext, .commtext",fixerFunc:FIXER_BR},"github.com":{selector:".markdown-body ".concat(DEFAULT_SELECTOR,", .repo-description p, .Layout-sidebar .f4, .container-lg .py-4 .f5, .container-lg .my-4 .f5, .Box-row .pr-4, .Box-row article .mt-1, [itemprop=\"description\"], .markdown-title, bdi, .ws-pre-wrap, .status-meta, span.status-meta, .col-10.color-fg-muted, .TimelineItem-body, .pinned-item-list-item-content .color-fg-muted, .markdown-body td, .markdown-body th"),keepSelector:DEFAULT_KEEP_SELECTOR},"twitter.com":{selector:"[data-testid=\"tweetText\"], [data-testid=\"birdwatch-pivot\"]>div.css-1rynq56",keepSelector:"img, a, .r-18u37iz, .css-175oi2r"},"m.youtube.com":{selector:".slim-video-information-title .yt-core-attributed-string, .media-item-headline .yt-core-attributed-string, .comment-text .yt-core-attributed-string, .typography-body-2b .yt-core-attributed-string, #ytp-caption-window-container .ytp-caption-segment",selectStyle:"-webkit-line-clamp: unset; max-height: none; height: auto;",parentStyle:"-webkit-line-clamp: unset; max-height: none; height: auto;",keepSelector:"img, #content-text>a"},"www.youtube.com":{selector:"h1, #video-title, #content-text, #title, yt-attributed-string>span>span, #ytp-caption-window-container .ytp-caption-segment",selectStyle:"-webkit-line-clamp: unset; max-height: none; height: auto;",parentStyle:"-webkit-line-clamp: unset; max-height: none; height: auto;",keepSelector:"img, #content-text>a"},"bard.google.com":{selector:".query-content ".concat(DEFAULT_SELECTOR,", message-content ").concat(DEFAULT_SELECTOR)},"www.bing.com, copilot.microsoft.com":{selector:".b_algoSlug, .rwrl_padref; .cib-serp-main >>> .ac-textBlock ".concat(DEFAULT_SELECTOR,", .text-message-content div")},"www.phoronix.com":{selector:"article ".concat(DEFAULT_SELECTOR),fixerSelector:".content",fixerFunc:FIXER_BR},"wx2.qq.com":{selector:".js_message_plain"},"app.slack.com/client/":{selector:".p-rich_text_section, .c-message_attachment__text, .p-rich_text_list li"},"discord.com/channels/":{selector:"div[class^=message], div[class^=headerText], div[class^=name_], section[aria-label='Search Results'] div[id^=message-content], div[id^=message]",keepSelector:"li[class^='card'] div[class^='message'], [class^='embedFieldValue'], [data-list-item-id^='forum-channel-list'] div[class^='headerText']"},"t.me/s/":{selector:".js-message_text ".concat(DEFAULT_SELECTOR),fixerSelector:".tgme_widget_message_text",fixerFunc:FIXER_BR},"web.telegram.org/k":{selector:"div.kiss-p",keepSelector:"div[class^=time], .peer-title, .document-wrapper, .message.spoilers-container custom-emoji-element, reactions-element",fixerSelector:".message",fixerFunc:FIXER_BN_DIV},"web.telegram.org/a":{selector:".text-content > .kiss-p",keepSelector:".Reactions, .time, .peer-title, .document-wrapper, .message.spoilers-container custom-emoji-element",fixerSelector:".text-content",fixerFunc:FIXER_BR_DIV},"www.instagram.com/":{selector:"h1, article span[dir=auto] > span[dir=auto], ._ab1y"},"www.instagram.com/p/,www.instagram.com/reels/":{selector:"h1, div[class='x9f619 xjbqb8w x78zum5 x168nmei x13lgxp2 x5pf9jr xo71vjh x1uhb9sk x1plvlek xryxfnj x1c4vz4f x2lah0s xdt5ytf xqjyukv x1cy8zhl x1oa3qoh x1nhvcw1'] > span[class='x1lliihq x1plvlek xryxfnj x1n2onr6 x193iq5w xeuugli x1fj9vlw x13faqbe x1vvkbs x1s928wv xhkezso x1gmr53x x1cpjm7i x1fgarty x1943h6x x1i0vuye xvs91rp xo1l8bm x5n08af x10wh9bi x1wdrske x8viiok x18hxmgj'], span[class='x193iq5w xeuugli x1fj9vlw x13faqbe x1vvkbs xt0psk2 x1i0vuye xvs91rp xo1l8bm x5n08af x10wh9bi x1wdrske x8viiok x18hxmgj']"},"mail.google.com":{selector:".a3s.aiL ".concat(DEFAULT_SELECTOR,", span[data-thread-id]"),fixerSelector:".a3s.aiL",fixerFunc:FIXER_BR},"web.whatsapp.com":{selector:".copyable-text > span"},"chat.openai.com":{selector:"div[data-message-author-role] > div ".concat(DEFAULT_SELECTOR),fixerSelector:"div[data-message-author-role='user'] > div",fixerFunc:FIXER_BN},"forum.ru-board.com":{selector:".tit, .dats, .kiss-p, .lgf ".concat(DEFAULT_SELECTOR),fixerSelector:"span.post",fixerFunc:FIXER_BR},"education.github.com":{selector:"".concat(DEFAULT_SELECTOR,", a, summary, span.Button-content")},"blogs.windows.com":{selector:"".concat(DEFAULT_SELECTOR,", .c-uhf-nav-link, figcaption"),fixerSelector:".t-content>div>ul>li",fixerFunc:FIXER_BR},"developer.apple.com/documentation/":{selector:"#main ".concat(DEFAULT_SELECTOR,", #main .abstract .content, #main .abstract.content, #main .link span"),keepSelector:DEFAULT_KEEP_SELECTOR},"greasyfork.org":{selector:"h2, .script-link, .script-description, #additional-info ".concat(DEFAULT_SELECTOR)},"www.fmkorea.com":{selector:"#container ".concat(DEFAULT_SELECTOR)},"forum.arduino.cc":{selector:".top-row>.title, .featured-topic>.title, .link-top-line>.title, .category-description, .topic-excerpt, .fancy-title, .cooked ".concat(DEFAULT_SELECTOR)},"docs.arduino.cc":{selector:"[class^=\"tutorial-module--left\"] ".concat(DEFAULT_SELECTOR)},"www.historydefined.net":{selector:".wp-element-caption, ".concat(DEFAULT_SELECTOR)},"gobyexample.com":{selector:".docs p",keepSelector:"code"},"go.dev/tour":{selector:"#left-side ".concat(DEFAULT_SELECTOR),keepSelector:"code, img, svg >>> code"},"pkg.go.dev":{selector:".Documentation-content ".concat(DEFAULT_SELECTOR),keepSelector:"".concat(DEFAULT_KEEP_SELECTOR,", a, span")},"docs.rs":{selector:".docblock ".concat(DEFAULT_SELECTOR,", .docblock-short"),keepSelector:"code >>> code"},"randomnerdtutorials.com":{selector:"article ".concat(DEFAULT_SELECTOR)},"notebooks.githubusercontent.com/view/ipynb":{selector:"#notebook-container ".concat(DEFAULT_SELECTOR),keepSelector:DEFAULT_KEEP_SELECTOR},"developers.cloudflare.com":{selector:"article ".concat(DEFAULT_SELECTOR,", .WorkerStarter--description"),keepSelector:"a[rel='noopener'], code"},"ubuntuforums.org":{fixerSelector:".postcontent",fixerFunc:FIXER_BR},"play.google.com/store/apps/details":{fixerSelector:"[data-g-id=\"description\"]",fixerFunc:FIXER_BR},"news.yahoo.co.jp/articles/":{fixerSelector:".sc-cTsKDU",fixerFunc:FIXER_BN},"chromereleases.googleblog.com":{fixerSelector:".post-content, .post-content > span, li > span",fixerFunc:FIXER_BR}};var rules_BUILTIN_RULES=Object.entries(RULES_MAP).sort(function(a,b){return a[0].localeCompare(b[0]);}).map(function(_ref){var _ref2=(0,slicedToArray/* default */.Z)(_ref,2),pattern=_ref2[0],rule=_ref2[1];return _objectSpread2(_objectSpread2(_objectSpread2({},DEFAULT_RULE),rule),{},{pattern:pattern});}); ;// CONCATENATED MODULE: ./src/config/app.js var APP_NAME="KISS Translator".trim().split(/\s+/).join("-");var APP_LCNAME=APP_NAME.toLowerCase(); ;// CONCATENATED MODULE: ./src/config/i18n.js -var UI_LANGS=(/* unused pure expression or super */ null && ([["en","English"],["zh","中文"]]));var customApiLangs="[\"en\", \"English - English\"],\n[\"zh-CN\", \"Simplified Chinese - \u7B80\u4F53\u4E2D\u6587\"],\n[\"zh-TW\", \"Traditional Chinese - \u7E41\u9AD4\u4E2D\u6587\"],\n[\"ar\", \"Arabic - \u0627\u0644\u0639\u0631\u0628\u064A\u0629\"],\n[\"bg\", \"Bulgarian - \u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438\"],\n[\"ca\", \"Catalan - Catal\xE0\"],\n[\"hr\", \"Croatian - Hrvatski\"],\n[\"cs\", \"Czech - \u010Ce\u0161tina\"],\n[\"da\", \"Danish - Dansk\"],\n[\"nl\", \"Dutch - Nederlands\"],\n[\"fi\", \"Finnish - Suomi\"],\n[\"fr\", \"French - Fran\xE7ais\"],\n[\"de\", \"German - Deutsch\"],\n[\"el\", \"Greek - \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC\"],\n[\"hi\", \"Hindi - \u0939\u093F\u0928\u094D\u0926\u0940\"],\n[\"hu\", \"Hungarian - Magyar\"],\n[\"id\", \"Indonesian - Indonesia\"],\n[\"it\", \"Italian - Italiano\"],\n[\"ja\", \"Japanese - \u65E5\u672C\u8A9E\"],\n[\"ko\", \"Korean - \uD55C\uAD6D\uC5B4\"],\n[\"ms\", \"Malay - Melayu\"],\n[\"mt\", \"Maltese - Malti\"],\n[\"nb\", \"Norwegian - Norsk Bokm\xE5l\"],\n[\"pl\", \"Polish - Polski\"],\n[\"pt\", \"Portuguese - Portugu\xEAs\"],\n[\"ro\", \"Romanian - Rom\xE2n\u0103\"],\n[\"ru\", \"Russian - \u0420\u0443\u0441\u0441\u043A\u0438\u0439\"],\n[\"sk\", \"Slovak - Sloven\u010Dina\"],\n[\"sl\", \"Slovenian - Sloven\u0161\u010Dina\"],\n[\"es\", \"Spanish - Espa\xF1ol\"],\n[\"sv\", \"Swedish - Svenska\"],\n[\"ta\", \"Tamil - \u0BA4\u0BAE\u0BBF\u0BB4\u0BCD\"],\n[\"te\", \"Telugu - \u0C24\u0C46\u0C32\u0C41\u0C17\u0C41\"],\n[\"th\", \"Thai - \u0E44\u0E17\u0E22\"],\n[\"tr\", \"Turkish - T\xFCrk\xE7e\"],\n[\"uk\", \"Ukrainian - \u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430\"],\n[\"vi\", \"Vietnamese - Ti\u1EBFng Vi\u1EC7t\"],\n";var customApiHelpZH="/// \u81EA\u5B9A\u4E49\u7FFB\u8BD1\u6E90\u63A5\u53E3\u8BF4\u660E\n\n// \u8BF7\u6C42\uFF08Request\uFF09\u6570\u636E\u5C06\u6309\u4E0B\u9762\u89C4\u8303\u53D1\u9001\n{\n url: {{YOUR_URL}},\n method: \"POST\",\n headers: {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{YOUR_KEY}}\",\n },\n body: {\n text: \"\", // \u9700\u8981\u7FFB\u8BD1\u7684\u6587\u5B57\n from: \"\", // \u6E90\u8BED\u8A00\uFF0C\u53EF\u80FD\u4E3A\u7A7A\uFF0C\u8868\u793A\u9700\u8981\u63A5\u53E3\u81EA\u52A8\u8BC6\u522B\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\n }\n}\n\n// \u8FD4\u56DE\uFF08Response\uFF09\u6570\u636E\u9700\u7B26\u5408\u4E0B\u9762\u7684JSON\u89C4\u8303\n{\n text: \"\", // \u7FFB\u8BD1\u540E\u7684\u6587\u5B57\n from: \"\", // \u8BC6\u522B\u7684\u6E90\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\uFF08\u53EF\u9009\uFF09\n}\n\n// \u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u5982\u4E0B\n".concat(customApiLangs,"\n");var customApiHelpEN="/// Custom translation source interface description\n\n// Request data will be sent according to the following specifications\n{\n url: {{YOUR_URL}},\n method: \"POST\",\n headers: {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{YOUR_KEY}}\",\n },\n body: {\n text: \"\", // text to be translated\n from: \"\", // Source language, may be empty\n to: \"\", // Target language\n }\n}\n\n// The returned data must conform to the following JSON specification\n{\n text: \"\", // translated text\n from: \"\", // Recognized source language\n to: \"\", // Target language (optional)\n}\n\n// The supported language codes are as follows\n".concat(customApiLangs,"\n");var I18N={app_name:{zh:"\u7B80\u7EA6\u7FFB\u8BD1",en:"KISS Translator"},translate:{zh:"\u7FFB\u8BD1",en:"Translate"},custom_api_help:{zh:customApiHelpZH,en:customApiHelpEN},translate_alt:{zh:"\u7FFB\u8BD1",en:"Translate"},basic_setting:{zh:"\u57FA\u672C\u8BBE\u7F6E",en:"Basic Setting"},rules_setting:{zh:"\u89C4\u5219\u8BBE\u7F6E",en:"Rules Setting"},apis_setting:{zh:"\u63A5\u53E3\u8BBE\u7F6E",en:"Apis Setting"},sync_setting:{zh:"\u540C\u6B65\u8BBE\u7F6E",en:"Sync Setting"},patch_setting:{zh:"\u8865\u4E01\u8BBE\u7F6E",en:"Patch Setting"},patch_setting_help:{zh:"\u9488\u5BF9\u4E00\u4E9B\u7279\u6B8A\u7F51\u7AD9\u7684\u4FEE\u6B63\u811A\u672C\uFF0C\u4EE5\u4FBF\u7FFB\u8BD1\u8F6F\u4EF6\u5F97\u5230\u66F4\u597D\u7684\u5C55\u793A\u6548\u679C\u3002",en:"Corrected scripts for some special websites so that the translation software can get better display results."},inject_webfix:{zh:"\u6CE8\u5165\u4FEE\u590D\u8865\u4E01",en:"Inject Webfix"},about:{zh:"\u5173\u4E8E",en:"About"},about_md:{zh:"README.md",en:"README.en.md"},about_md_local:{zh:"\u8BF7 [\u70B9\u51FB\u8FD9\u91CC](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8BE6\u60C5\u3002"),en:"Please [click here](".concat("https://github.com/fishjar/kiss-translator",") for details.")},ui_lang:{zh:"\u754C\u9762\u8BED\u8A00",en:"Interface Language"},fetch_limit:{zh:"\u6700\u5927\u8BF7\u6C42\u6570\u91CF (1-100)",en:"Maximum Number Of Request (1-100)"},fetch_interval:{zh:"\u8BF7\u6C42\u95F4\u9694\u65F6\u95F4 (0-5000ms)",en:"Request Interval (0-5000ms)"},min_translate_length:{zh:"\u6700\u5C0F\u7FFB\u8BD1\u957F\u5EA6 (1-100)",en:"Min Translate Length (1-100)"},max_translate_length:{zh:"\u6700\u5927\u7FFB\u8BD1\u957F\u5EA6 (100-10000)",en:"Max Translate Length (100-10000)"},num_of_newline_characters:{zh:"\u6362\u884C\u5B57\u7B26\u6570 (1-1000)",en:"Number of Newline Characters (1-1000)"},translate_service:{zh:"\u7FFB\u8BD1\u670D\u52A1",en:"Translate Service"},translate_timing:{zh:"\u7FFB\u8BD1\u65F6\u673A",en:"Translate Timing"},mk_disable:{zh:"\u6EDA\u52A8\u52A0\u8F7D\uFF08\u5EFA\u8BAE\uFF09",en:"Rolling Loading (Suggested)"},mk_pageopen:{zh:"\u9875\u9762\u6253\u5F00",en:"Page Open"},mk_mouseover:{zh:"\u9F20\u6807\u60AC\u505C",en:"Mouseover"},mk_ctrlKey:{zh:"Control + \u9F20\u6807\u60AC\u505C",en:"Control + Mouseover"},mk_shiftKey:{zh:"Shift + \u9F20\u6807\u60AC\u505C",en:"Shift + Mouseover"},mk_altKey:{zh:"Alt + \u9F20\u6807\u60AC\u505C",en:"Alt + Mouseover"},from_lang:{zh:"\u539F\u6587\u8BED\u8A00",en:"Source Language"},to_lang:{zh:"\u76EE\u6807\u8BED\u8A00",en:"Target Language"},to_lang2:{zh:"\u7B2C\u4E8C\u76EE\u6807\u8BED\u8A00",en:"Target Language 2"},to_lang2_helper:{zh:"\u8BBE\u5B9A\u540E\uFF0C\u4E0E\u76EE\u6807\u8BED\u8A00\u4EA7\u751F\u4E92\u8BD1\u6548\u679C\uFF0C\u4F46\u4F9D\u8D56\u8FDC\u7A0B\u8BED\u8A00\u8BC6\u522B\u3002",en:"After setting, it will produce mutual translation effect with the target language, but it relies on remote language recognition."},text_style:{zh:"\u6587\u5B57\u6837\u5F0F",en:"Text Style"},text_style_alt:{zh:"\u6587\u5B57\u6837\u5F0F",en:"Text Style"},bg_color:{zh:"\u6837\u5F0F\u989C\u8272",en:"Style Color"},remain_unchanged:{zh:"\u4FDD\u7559\u4E0D\u53D8",en:"Remain Unchanged"},google_api:{zh:"\u8C37\u6B4C\u7FFB\u8BD1\u63A5\u53E3",en:"Google Translate API"},default_selector:{zh:"\u9ED8\u8BA4\u9009\u62E9\u5668",en:"Default selector"},selector_rules:{zh:"\u9009\u62E9\u5668\u89C4\u5219",en:"Selector Rules"},save:{zh:"\u4FDD\u5B58",en:"Save"},edit:{zh:"\u7F16\u8F91",en:"Edit"},cancel:{zh:"\u53D6\u6D88",en:"Cancel"},delete:{zh:"\u5220\u9664",en:"Delete"},reset:{zh:"\u91CD\u7F6E",en:"Reset"},add:{zh:"\u6DFB\u52A0",en:"Add"},inject_rules:{zh:"\u6CE8\u5165\u8BA2\u9605\u89C4\u5219",en:"Inject Subscribe Rules"},personal_rules:{zh:"\u4E2A\u4EBA\u89C4\u5219",en:"Rules"},subscribe_rules:{zh:"\u8BA2\u9605\u89C4\u5219",en:"Subscribe"},overwrite_subscribe_rules:{zh:"\u8986\u5199\u8BA2\u9605\u89C4\u5219",en:"Overwrite"},subscribe_url:{zh:"\u8BA2\u9605\u5730\u5740",en:"Subscribe URL"},rules_warn_1:{zh:"1\u3001\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u4E00\u76F4\u751F\u6548\uFF0C\u9009\u62E9\u201C\u6CE8\u5165\u8BA2\u9605\u89C4\u5219\u201D\u540E\uFF0C\u201C\u8BA2\u9605\u89C4\u5219\u201D\u624D\u4F1A\u751F\u6548\u3002",en:"1. The \"Personal Rules\" are always in effect. After selecting \"Inject Subscription Rules\", the \"Subscription Rules\" will take effect."},rules_warn_2:{zh:"2\u3001\u201C\u8BA2\u9605\u89C4\u5219\u201D\u7684\u6CE8\u5165\u4F4D\u7F6E\u662F\u5012\u6570\u7B2C\u4E8C\u7684\u4F4D\u7F6E\uFF0C\u56E0\u6B64\u9664\u5168\u5C40\u89C4\u5219(*)\u5916\uFF0C\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u4F18\u5148\u7EA7\u6BD4\u201C\u8BA2\u9605\u89C4\u5219\u201D\u9AD8\uFF0C\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u586B\u5199\u540C\u6837\u7684\u7F51\u5740\u4F1A\u8986\u76D6\u201D\u8BA2\u9605\u89C4\u5219\u201C\u7684\u6761\u76EE\u3002",en:"2. The injection position of \"Subscription Rules\" is the penultimate position. Therefore, except for the global rules (*), the priority of \"Personal Rules\" is higher than that of \"Subscription Rules\". Filling in the same url in \"Personal Rules\" will overwrite \"Subscription Rules\" entry."},sync_warn:{zh:"\u5982\u679C\u670D\u52A1\u5668\u5B58\u5728\u5176\u4ED6\u5BA2\u6237\u7AEF\u540C\u6B65\u7684\u6570\u636E\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u5C06\u76F4\u63A5\u8986\u76D6\u672C\u5730\u914D\u7F6E\uFF0C\u540E\u9762\u5219\u6839\u636E\u4FEE\u6539\u65F6\u95F4\uFF0C\u65B0\u7684\u8986\u76D6\u65E7\u7684\u3002",en:"If the server has data synchronized by other clients, the first synchronization will directly overwrite the local configuration, and later, according to the modification time, the new one will overwrite the old one."},about_sync_api:{zh:"\u67E5\u770B\u5173\u4E8E\u6570\u636E\u540C\u6B65\u63A5\u53E3\u90E8\u7F72",en:"View About Data Synchronization Interface Deployment"},about_api_proxy:{zh:"\u67E5\u770B\u81EA\u5EFA\u4E00\u4E2A\u7FFB\u8BD1\u63A5\u53E3\u4EE3\u7406",en:"Check out the self-built translation interface proxy"},style_none:{zh:"\u65E0",en:"None"},under_line:{zh:"\u4E0B\u5212\u76F4\u7EBF",en:"Underline"},dot_line:{zh:"\u4E0B\u5212\u70B9\u72B6\u7EBF",en:"Dotted Underline"},dash_line:{zh:"\u4E0B\u5212\u865A\u7EBF",en:"Dashed Underline"},wavy_line:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF",en:"Wavy Underline"},fuzzy:{zh:"\u6A21\u7CCA",en:"Fuzzy"},highlight:{zh:"\u9AD8\u4EAE",en:"Highlight"},blockquote:{zh:"\u5F15\u7528",en:"Blockquote"},diy_style:{zh:"\u81EA\u5B9A\u4E49\u6837\u5F0F",en:"Custom Style"},diy_style_helper:{zh:"\u9075\u5FAA\u201CCSS\u201D\u7684\u8BED\u6CD5",en:"Follow the syntax of \"CSS\""},setting:{zh:"\u8BBE\u7F6E",en:"Setting"},pattern:{zh:"\u5339\u914D\u7F51\u5740",en:"URL pattern"},pattern_helper:{zh:"1\u3001\u652F\u6301\u661F\u53F7(*)\u901A\u914D\u7B26\u30022\u3001\u591A\u4E2AURL\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u3002",en:"1. Supports the asterisk (*) wildcard character. 2. Separate multiple URLs with newlines or English commas \",\"."},selector_helper:{zh:"1\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u30022\u3001\u7559\u7A7A\u8868\u793A\u91C7\u7528\u5168\u5C40\u8BBE\u7F6E\u30023\u3001\u591A\u4E2ACSS\u9009\u62E9\u5668\u4E4B\u95F4\u7528\u201C;\u201D\u9694\u5F00\u30024\u3001\u201Cshadow root\u201D\u9009\u62E9\u5668\u548C\u5185\u90E8\u9009\u62E9\u5668\u7528\u201C>>>\u201D\u9694\u5F00\u3002",en:"1. Follow CSS selector syntax. 2. Leave blank to adopt the global setting. 3. Separate multiple CSS selectors with \";\". 4. The \"shadow root\" selector and the internal selector are separated by \">>>\"."},translate_switch:{zh:"\u5F00\u542F\u7FFB\u8BD1",en:"Translate Switch"},default_enabled:{zh:"\u9ED8\u8BA4\u5F00\u542F",en:"Enabled"},default_disabled:{zh:"\u9ED8\u8BA4\u5173\u95ED",en:"Disabled"},selector:{zh:"\u9009\u62E9\u5668",en:"Selector"},keep_selector:{zh:"\u4FDD\u7559\u5143\u7D20\u9009\u62E9\u5668",en:"Keep unchanged selector"},keep_selector_helper:{zh:"1\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u30022\u3001\u7559\u7A7A\u8868\u793A\u91C7\u7528\u5168\u5C40\u8BBE\u7F6E\u30023\u3001\u5B50\u5143\u7D20\u9009\u62E9\u5668\u7528\u201C>>>\u201D\u9694\u5F00\u3002",en:"1. Follow CSS selector syntax. 2. Leave blank to adopt the global setting. 3.Sub-element selectors are separated by \">>>\"."},terms:{zh:"\u4E13\u4E1A\u672F\u8BED",en:"Terms"},terms_helper:{zh:"0\u3001\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\u30021\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30022\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30023\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u30024\u3001\u7559\u7A7A\u8868\u793A\u91C7\u7528\u5168\u5C40\u8BBE\u7F6E\u3002",en:"0. Supports regular expression matching. 1. Separate multiple terms with newlines or semicolons \";\". 2. Terms and translations are separated by English commas \",\". 3. If there is no translation, the term will be deemed not to be translated. 4. Leave blank to adopt the global setting."},root_selector:{zh:"\u6839\u9009\u62E9\u5668",en:"Root Selector"},fixer_function:{zh:"\u4FEE\u590D\u51FD\u6570",en:"Fixer Function"},import:{zh:"\u5BFC\u5165",en:"Import"},export:{zh:"\u5BFC\u51FA",en:"Export"},error_cant_be_blank:{zh:"\u4E0D\u80FD\u4E3A\u7A7A",en:"Can not be blank"},error_duplicate_values:{zh:"\u5B58\u5728\u91CD\u590D\u7684\u503C",en:"There are duplicate values"},error_wrong_file_type:{zh:"\u9519\u8BEF\u7684\u6587\u4EF6\u7C7B\u578B",en:"Wrong file type"},error_fetch_url:{zh:"\u8BF7\u68C0\u67E5url\u5730\u5740\u662F\u5426\u6B63\u786E\u6216\u7A0D\u540E\u518D\u8BD5\u3002",en:"Please check if the url address is correct or try again later."},deepl_api:{zh:"DeepL \u63A5\u53E3",en:"DeepL API"},deepl_key:{zh:"DeepL \u5BC6\u94A5",en:"DeepL Key"},openai_api:{zh:"OpenAI \u63A5\u53E3",en:"OpenAI API"},openai_key:{zh:"OpenAI \u5BC6\u94A5",en:"OpenAI Key"},openai_model:{zh:"OpenAI \u6A21\u578B",en:"OpenAI Model"},openai_prompt:{zh:"OpenAI \u63D0\u793A\u8BCD",en:"OpenAI Prompt"},if_clear_cache:{zh:"\u662F\u5426\u6E05\u9664\u7F13\u5B58",en:"Whether clear cache"},clear_cache_never:{zh:"\u4E0D\u6E05\u9664\u7F13\u5B58",en:"Never clear cache"},clear_cache_restart:{zh:"\u91CD\u542F\u6D4F\u89C8\u5668\u65F6\u6E05\u9664\u7F13\u5B58",en:"Clear cache when restarting browser"},data_sync_type:{zh:"\u6570\u636E\u540C\u6B65\u65B9\u5F0F",en:"Data Sync Type"},data_sync_url:{zh:"\u6570\u636E\u540C\u6B65\u63A5\u53E3",en:"Data Sync API"},data_sync_user:{zh:"\u6570\u636E\u540C\u6B65\u8D26\u6237",en:"Data Sync User"},data_sync_key:{zh:"\u6570\u636E\u540C\u6B65\u5BC6\u94A5",en:"Data Sync Key"},sync_now:{zh:"\u7ACB\u5373\u540C\u6B65",en:"Sync Now"},sync_success:{zh:"\u540C\u6B65\u6210\u529F\uFF01",en:"Sync Success"},sync_failed:{zh:"\u540C\u6B65\u5931\u8D25\uFF01",en:"Sync Error"},error_got_some_wrong:{zh:"\u62B1\u6B49\uFF0C\u51FA\u9519\u4E86\uFF01",en:"Sorry, something went wrong!"},error_sync_setting:{zh:"\u60A8\u7684\u540C\u6B65\u7C7B\u578B\u5FC5\u987B\u4E3A\u201CKISS-Worker\u201D\uFF0C\u4E14\u9700\u586B\u5199\u5B8C\u6574",en:"Your sync type must be \"KISS-Worker\" and must be filled in completely"},click_test:{zh:"\u70B9\u51FB\u6D4B\u8BD5",en:"Click Test"},test_success:{zh:"\u6D4B\u8BD5\u6210\u529F",en:"Test success"},test_failed:{zh:"\u6D4B\u8BD5\u5931\u8D25",en:"Test failed"},clear_all_cache_now:{zh:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u7F13\u5B58",en:"Clear all cache now"},clear_cache:{zh:"\u6E05\u9664\u7F13\u5B58",en:"Clear Cache"},clear_success:{zh:"\u6E05\u9664\u6210\u529F",en:"Clear success"},clear_failed:{zh:"\u6E05\u9664\u5931\u8D25",en:"Clear failed"},share:{zh:"\u5206\u4EAB",en:"Share"},clear_all:{zh:"\u6E05\u7A7A",en:"Clear All"},help:{zh:"\u6C42\u52A9",en:"Help"},restore_default:{zh:"\u6062\u590D\u9ED8\u8BA4",en:"Restore Default"},shortcuts_setting:{zh:"\u5FEB\u6377\u952E\u8BBE\u7F6E",en:"Shortcuts Setting"},toggle_translate_shortcut:{zh:"\"\u5F00\u542F\u7FFB\u8BD1\"\u5FEB\u6377\u952E",en:"\"Toggle Translate\" Shortcut"},toggle_style_shortcut:{zh:"\"\u5207\u6362\u6837\u5F0F\"\u5FEB\u6377\u952E",en:"\"Toggle Style\" Shortcut"},toggle_popup_shortcut:{zh:"\"\u6253\u5F00\u5F39\u7A97\"\u5FEB\u6377\u952E",en:"\"Open Popup\" Shortcut"},open_setting_shortcut:{zh:"\"\u6253\u5F00\u8BBE\u7F6E\"\u5FEB\u6377\u952E",en:"\"Open Setting\" Shortcut"},hide_fab_button:{zh:"\u9690\u85CF\u60AC\u6D6E\u6309\u94AE",en:"Hide Fab Button"},hide_tran_button:{zh:"\u9690\u85CF\u7FFB\u8BD1\u6309\u94AE",en:"Hide Translate Button"},show:{zh:"\u663E\u793A",en:"Show"},hide:{zh:"\u9690\u85CF",en:"Hide"},save_rule:{zh:"\u4FDD\u5B58\u89C4\u5219",en:"Save Rule"},global_rule:{zh:"\u5168\u5C40\u89C4\u5219",en:"Global Rule"},input_translate:{zh:"\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation"},use_input_box_translation:{zh:"\u542F\u7528\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation"},input_selector:{zh:"\u8F93\u5165\u6846\u9009\u62E9\u5668",en:"Input Selector"},input_selector_helper:{zh:"\u7528\u4E8E\u8F93\u5165\u6846\u7FFB\u8BD1\u3002",en:"Used for input box translation."},trigger_trans_shortcut:{zh:"\u89E6\u53D1\u7FFB\u8BD1\u5FEB\u6377\u952E",en:"Trigger Translation Shortcut Keys"},trigger_trans_shortcut_help:{zh:"\u9ED8\u8BA4\u4E3A\u5355\u51FB\u201CAltLeft+KeyI\u201D",en:"Default is \"AltLeft+KeyI\""},shortcut_press_count:{zh:"\u5FEB\u6377\u952E\u8FDE\u51FB\u6B21\u6570",en:"Shortcut Press Number"},combo_timeout:{zh:"\u8FDE\u51FB\u8D85\u65F6\u65F6\u95F4 (10-1000ms)",en:"Combo Timeout (10-1000ms)"},input_trans_start_sign:{zh:"\u7FFB\u8BD1\u8D77\u59CB\u6807\u8BC6",en:"Translation Start Sign"},input_trans_start_sign_help:{zh:"\u6807\u8BC6\u540E\u9762\u53EF\u4EE5\u52A0\u76EE\u6807\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1A \u201C/en \u4F60\u597D\u201D\u3001\u201C/zh hello\u201D",en:"The target language code can be added after the sign, such as: \"/en \u4F60\u597D\", \"/zh hello\""},detect_lang_remote:{zh:"\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B",en:"Remote language detection"},detect_lang_remote_help:{zh:"\u542F\u7528\u540E\u68C0\u6D4B\u51C6\u786E\u5EA6\u589E\u52A0\uFF0C\u4F46\u4F1A\u964D\u4F4E\u7FFB\u8BD1\u901F\u5EA6\uFF0C\u8BF7\u914C\u60C5\u5F00\u542F",en:"After enabling, the detection accuracy will increase, but it will reduce the translation speed. Please enable it as appropriate."},disable:{zh:"\u7981\u7528",en:"Disable"},enable:{zh:"\u542F\u7528",en:"Enable"},selection_translate:{zh:"\u5212\u8BCD\u7FFB\u8BD1",en:"Selection Translate"},toggle_selection_translate:{zh:"\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"Use Selection Translate"},trigger_tranbox_shortcut:{zh:"\u663E\u793A\u7FFB\u8BD1\u6846/\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57\u5FEB\u6377\u952E",en:"Open Translate Popup/Translate Selected Shortcut"},tranbtn_offset_x:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBX\uFF080-100\uFF09",en:"Translate Button Offset X (0-100)"},tranbtn_offset_y:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBY\uFF080-100\uFF09",en:"Translate Button Offset Y (0-100)"},translated_text:{zh:"\u8BD1\u6587",en:"Translated Text"},original_text:{zh:"\u539F\u6587",en:"Original Text"},favorite_words:{zh:"\u6536\u85CF\u8BCD\u6C47",en:"Favorite Words"},touch_setting:{zh:"\u89E6\u5C4F\u8BBE\u7F6E",en:"Touch Setting"},touch_translate_shortcut:{zh:"\u89E6\u5C4F\u7FFB\u8BD1\u5FEB\u6377\u65B9\u5F0F",en:"Touch Translate Shortcut"},touch_tap_0:{zh:"\u7981\u7528",en:"Disable"},touch_tap_2:{zh:"\u53CC\u6307\u8F7B\u89E6",en:"Two finger tap"},touch_tap_3:{zh:"\u4E09\u6307\u8F7B\u89E6",en:"Three finger tap"},touch_tap_4:{zh:"\u56DB\u6307\u8F7B\u89E6",en:"Four finger tap"},translate_blacklist:{zh:"\u7981\u7528\u7FFB\u8BD1\u540D\u5355",en:"Translate Blacklist"},disable_langs:{zh:"\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",en:"Disable Languages"},disable_langs_helper:{zh:"\u6B64\u529F\u80FD\u4F9D\u8D56\u51C6\u786E\u7684\u8BED\u8A00\u68C0\u6D4B\uFF0C\u5EFA\u8BAE\u542F\u7528\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B\u3002",en:"This feature relies on accurate language detection. It is recommended to enable remote language detection."},context_menus:{zh:"\u53F3\u952E\u83DC\u5355",en:"Context Menus"},hide_context_menus:{zh:"\u9690\u85CF\u53F3\u952E\u83DC\u5355",en:"Hide Context Menus"},simple_context_menus:{zh:"\u7B80\u5355\u53F3\u952E\u83DC\u5355",en:"Simple_context_menus Context Menus"},secondary_context_menus:{zh:"\u4E8C\u7EA7\u53F3\u952E\u83DC\u5355",en:"Secondary Context Menus"},mulkeys_help:{zh:"\u652F\u6301\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u591A\u4E2AKEY\u8F6E\u8BE2\u8C03\u7528\u3002",en:"Supports multiple KEY polling calls separated by newlines or English commas \",\"."},translate_page_title:{zh:"\u662F\u5426\u540C\u65F6\u7FFB\u8BD1\u9875\u9762\u6807\u9898",en:"Translate Page Title"}}; +var UI_LANGS=(/* unused pure expression or super */ null && ([["en","English"],["zh","中文"]]));var customApiLangs="[\"en\", \"English - English\"],\n[\"zh-CN\", \"Simplified Chinese - \u7B80\u4F53\u4E2D\u6587\"],\n[\"zh-TW\", \"Traditional Chinese - \u7E41\u9AD4\u4E2D\u6587\"],\n[\"ar\", \"Arabic - \u0627\u0644\u0639\u0631\u0628\u064A\u0629\"],\n[\"bg\", \"Bulgarian - \u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438\"],\n[\"ca\", \"Catalan - Catal\xE0\"],\n[\"hr\", \"Croatian - Hrvatski\"],\n[\"cs\", \"Czech - \u010Ce\u0161tina\"],\n[\"da\", \"Danish - Dansk\"],\n[\"nl\", \"Dutch - Nederlands\"],\n[\"fi\", \"Finnish - Suomi\"],\n[\"fr\", \"French - Fran\xE7ais\"],\n[\"de\", \"German - Deutsch\"],\n[\"el\", \"Greek - \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC\"],\n[\"hi\", \"Hindi - \u0939\u093F\u0928\u094D\u0926\u0940\"],\n[\"hu\", \"Hungarian - Magyar\"],\n[\"id\", \"Indonesian - Indonesia\"],\n[\"it\", \"Italian - Italiano\"],\n[\"ja\", \"Japanese - \u65E5\u672C\u8A9E\"],\n[\"ko\", \"Korean - \uD55C\uAD6D\uC5B4\"],\n[\"ms\", \"Malay - Melayu\"],\n[\"mt\", \"Maltese - Malti\"],\n[\"nb\", \"Norwegian - Norsk Bokm\xE5l\"],\n[\"pl\", \"Polish - Polski\"],\n[\"pt\", \"Portuguese - Portugu\xEAs\"],\n[\"ro\", \"Romanian - Rom\xE2n\u0103\"],\n[\"ru\", \"Russian - \u0420\u0443\u0441\u0441\u043A\u0438\u0439\"],\n[\"sk\", \"Slovak - Sloven\u010Dina\"],\n[\"sl\", \"Slovenian - Sloven\u0161\u010Dina\"],\n[\"es\", \"Spanish - Espa\xF1ol\"],\n[\"sv\", \"Swedish - Svenska\"],\n[\"ta\", \"Tamil - \u0BA4\u0BAE\u0BBF\u0BB4\u0BCD\"],\n[\"te\", \"Telugu - \u0C24\u0C46\u0C32\u0C41\u0C17\u0C41\"],\n[\"th\", \"Thai - \u0E44\u0E17\u0E22\"],\n[\"tr\", \"Turkish - T\xFCrk\xE7e\"],\n[\"uk\", \"Ukrainian - \u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430\"],\n[\"vi\", \"Vietnamese - Ti\u1EBFng Vi\u1EC7t\"],\n";var customApiHelpZH="/// \u81EA\u5B9A\u4E49\u7FFB\u8BD1\u6E90\u63A5\u53E3\u8BF4\u660E\n\n// \u8BF7\u6C42\uFF08Request\uFF09\u6570\u636E\u5C06\u6309\u4E0B\u9762\u89C4\u8303\u53D1\u9001\n{\n url: {{YOUR_URL}},\n method: \"POST\",\n headers: {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{YOUR_KEY}}\",\n },\n body: {\n text: \"\", // \u9700\u8981\u7FFB\u8BD1\u7684\u6587\u5B57\n from: \"\", // \u6E90\u8BED\u8A00\uFF0C\u53EF\u80FD\u4E3A\u7A7A\uFF0C\u8868\u793A\u9700\u8981\u63A5\u53E3\u81EA\u52A8\u8BC6\u522B\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\n }\n}\n\n// \u8FD4\u56DE\uFF08Response\uFF09\u6570\u636E\u9700\u7B26\u5408\u4E0B\u9762\u7684JSON\u89C4\u8303\n{\n text: \"\", // \u7FFB\u8BD1\u540E\u7684\u6587\u5B57\n from: \"\", // \u8BC6\u522B\u7684\u6E90\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\uFF08\u53EF\u9009\uFF09\n}\n\n// \u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u5982\u4E0B\n".concat(customApiLangs,"\n");var customApiHelpEN="/// Custom translation source interface description\n\n// Request data will be sent according to the following specifications\n{\n url: {{YOUR_URL}},\n method: \"POST\",\n headers: {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{YOUR_KEY}}\",\n },\n body: {\n text: \"\", // text to be translated\n from: \"\", // Source language, may be empty\n to: \"\", // Target language\n }\n}\n\n// The returned data must conform to the following JSON specification\n{\n text: \"\", // translated text\n from: \"\", // Recognized source language\n to: \"\", // Target language (optional)\n}\n\n// The supported language codes are as follows\n".concat(customApiLangs,"\n");var I18N={app_name:{zh:"\u7B80\u7EA6\u7FFB\u8BD1",en:"KISS Translator"},translate:{zh:"\u7FFB\u8BD1",en:"Translate"},custom_api_help:{zh:customApiHelpZH,en:customApiHelpEN},translate_alt:{zh:"\u7FFB\u8BD1",en:"Translate"},basic_setting:{zh:"\u57FA\u672C\u8BBE\u7F6E",en:"Basic Setting"},rules_setting:{zh:"\u89C4\u5219\u8BBE\u7F6E",en:"Rules Setting"},apis_setting:{zh:"\u63A5\u53E3\u8BBE\u7F6E",en:"Apis Setting"},sync_setting:{zh:"\u540C\u6B65\u8BBE\u7F6E",en:"Sync Setting"},patch_setting:{zh:"\u8865\u4E01\u8BBE\u7F6E",en:"Patch Setting"},patch_setting_help:{zh:"\u9488\u5BF9\u4E00\u4E9B\u7279\u6B8A\u7F51\u7AD9\u7684\u4FEE\u6B63\u811A\u672C\uFF0C\u4EE5\u4FBF\u7FFB\u8BD1\u8F6F\u4EF6\u5F97\u5230\u66F4\u597D\u7684\u5C55\u793A\u6548\u679C\u3002",en:"Corrected scripts for some special websites so that the translation software can get better display results."},inject_webfix:{zh:"\u6CE8\u5165\u4FEE\u590D\u8865\u4E01",en:"Inject Webfix"},about:{zh:"\u5173\u4E8E",en:"About"},about_md:{zh:"README.md",en:"README.en.md"},about_md_local:{zh:"\u8BF7 [\u70B9\u51FB\u8FD9\u91CC](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8BE6\u60C5\u3002"),en:"Please [click here](".concat("https://github.com/fishjar/kiss-translator",") for details.")},ui_lang:{zh:"\u754C\u9762\u8BED\u8A00",en:"Interface Language"},fetch_limit:{zh:"\u6700\u5927\u5E76\u53D1\u8BF7\u6C42\u6570\u91CF (1-100)",en:"Maximum Number Of Concurrent Requests (1-100)"},fetch_interval:{zh:"\u6BCF\u6B21\u8BF7\u6C42\u95F4\u9694\u65F6\u95F4 (0-5000ms)",en:"Time Between Requests (0-5000ms)"},translate_interval:{zh:"\u91CD\u65B0\u7FFB\u8BD1\u95F4\u9694\u65F6\u95F4 (100-5000ms)",en:"Retranslation Interval (100-5000ms)"},min_translate_length:{zh:"\u6700\u5C0F\u7FFB\u8BD1\u5B57\u7B26\u6570 (1-100)",en:"Minimum number Of Translated Characters (1-100)"},max_translate_length:{zh:"\u6700\u5927\u7FFB\u8BD1\u5B57\u7B26\u6570 (100-10000)",en:"Maximum number Of Translated Characters (100-10000)"},num_of_newline_characters:{zh:"\u6362\u884C\u5B57\u7B26\u6570 (1-1000)",en:"Number of Newline Characters (1-1000)"},translate_service:{zh:"\u7FFB\u8BD1\u670D\u52A1",en:"Translate Service"},translate_timing:{zh:"\u7FFB\u8BD1\u65F6\u673A",en:"Translate Timing"},mk_pagescroll:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u7FFB\u8BD1\uFF08\u63A8\u8350\uFF09",en:"Rolling Loading (Suggested)"},mk_pageopen:{zh:"\u9875\u9762\u6253\u5F00\u5168\u90E8\u7FFB\u8BD1",en:"Page Open"},mk_mouseover:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover"},mk_ctrlKey:{zh:"Control + \u9F20\u6807\u60AC\u505C",en:"Control + Mouseover"},mk_shiftKey:{zh:"Shift + \u9F20\u6807\u60AC\u505C",en:"Shift + Mouseover"},mk_altKey:{zh:"Alt + \u9F20\u6807\u60AC\u505C",en:"Alt + Mouseover"},from_lang:{zh:"\u539F\u6587\u8BED\u8A00",en:"Source Language"},to_lang:{zh:"\u76EE\u6807\u8BED\u8A00",en:"Target Language"},to_lang2:{zh:"\u7B2C\u4E8C\u76EE\u6807\u8BED\u8A00",en:"Target Language 2"},to_lang2_helper:{zh:"\u8BBE\u5B9A\u540E\uFF0C\u4E0E\u76EE\u6807\u8BED\u8A00\u4EA7\u751F\u4E92\u8BD1\u6548\u679C\uFF0C\u4F46\u4F9D\u8D56\u8FDC\u7A0B\u8BED\u8A00\u8BC6\u522B\u3002",en:"After setting, it will produce mutual translation effect with the target language, but it relies on remote language recognition."},text_style:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style"},text_style_alt:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style"},bg_color:{zh:"\u6837\u5F0F\u989C\u8272",en:"Style Color"},remain_unchanged:{zh:"\u4FDD\u7559\u4E0D\u53D8",en:"Remain Unchanged"},google_api:{zh:"\u8C37\u6B4C\u7FFB\u8BD1\u63A5\u53E3",en:"Google Translate API"},default_selector:{zh:"\u9ED8\u8BA4\u9009\u62E9\u5668",en:"Default selector"},selector_rules:{zh:"\u9009\u62E9\u5668\u89C4\u5219",en:"Selector Rules"},save:{zh:"\u4FDD\u5B58",en:"Save"},edit:{zh:"\u7F16\u8F91",en:"Edit"},cancel:{zh:"\u53D6\u6D88",en:"Cancel"},delete:{zh:"\u5220\u9664",en:"Delete"},reset:{zh:"\u91CD\u7F6E",en:"Reset"},add:{zh:"\u6DFB\u52A0",en:"Add"},inject_rules:{zh:"\u6CE8\u5165\u8BA2\u9605\u89C4\u5219",en:"Inject Subscribe Rules"},personal_rules:{zh:"\u4E2A\u4EBA\u89C4\u5219",en:"Rules"},subscribe_rules:{zh:"\u8BA2\u9605\u89C4\u5219",en:"Subscribe"},overwrite_subscribe_rules:{zh:"\u8986\u5199\u8BA2\u9605\u89C4\u5219",en:"Overwrite"},subscribe_url:{zh:"\u8BA2\u9605\u5730\u5740",en:"Subscribe URL"},rules_warn_1:{zh:"1\u3001\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u4E00\u76F4\u751F\u6548\uFF0C\u9009\u62E9\u201C\u6CE8\u5165\u8BA2\u9605\u89C4\u5219\u201D\u540E\uFF0C\u201C\u8BA2\u9605\u89C4\u5219\u201D\u624D\u4F1A\u751F\u6548\u3002",en:"1. The \"Personal Rules\" are always in effect. After selecting \"Inject Subscription Rules\", the \"Subscription Rules\" will take effect."},rules_warn_2:{zh:"2\u3001\u201C\u8BA2\u9605\u89C4\u5219\u201D\u7684\u6CE8\u5165\u4F4D\u7F6E\u662F\u5012\u6570\u7B2C\u4E8C\u7684\u4F4D\u7F6E\uFF0C\u56E0\u6B64\u9664\u5168\u5C40\u89C4\u5219(*)\u5916\uFF0C\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u4F18\u5148\u7EA7\u6BD4\u201C\u8BA2\u9605\u89C4\u5219\u201D\u9AD8\uFF0C\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u586B\u5199\u540C\u6837\u7684\u7F51\u5740\u4F1A\u8986\u76D6\u201D\u8BA2\u9605\u89C4\u5219\u201C\u7684\u6761\u76EE\u3002",en:"2. The injection position of \"Subscription Rules\" is the penultimate position. Therefore, except for the global rules (*), the priority of \"Personal Rules\" is higher than that of \"Subscription Rules\". Filling in the same url in \"Personal Rules\" will overwrite \"Subscription Rules\" entry."},rules_warn_3:{zh:"3\u3001\u5173\u4E8E\u89C4\u5219\u586B\u5199\uFF1A\u8F93\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u6846\u9009\u201C*\u201D\u8868\u793A\u91C7\u7528\u5168\u5C40\u89C4\u5219\u3002",en:"3. Regarding filling in the rules: Leave the input box blank or select \"*\" in the drop-down box to use global rule."},sync_warn:{zh:"\u5982\u679C\u670D\u52A1\u5668\u5B58\u5728\u5176\u4ED6\u5BA2\u6237\u7AEF\u540C\u6B65\u7684\u6570\u636E\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u5C06\u76F4\u63A5\u8986\u76D6\u672C\u5730\u914D\u7F6E\uFF0C\u540E\u9762\u5219\u6839\u636E\u4FEE\u6539\u65F6\u95F4\uFF0C\u65B0\u7684\u8986\u76D6\u65E7\u7684\u3002",en:"If the server has data synchronized by other clients, the first synchronization will directly overwrite the local configuration, and later, according to the modification time, the new one will overwrite the old one."},about_sync_api:{zh:"\u67E5\u770B\u5173\u4E8E\u6570\u636E\u540C\u6B65\u63A5\u53E3\u90E8\u7F72",en:"View About Data Synchronization Interface Deployment"},about_api_proxy:{zh:"\u67E5\u770B\u81EA\u5EFA\u4E00\u4E2A\u7FFB\u8BD1\u63A5\u53E3\u4EE3\u7406",en:"Check out the self-built translation interface proxy"},style_none:{zh:"\u65E0",en:"None"},under_line:{zh:"\u4E0B\u5212\u76F4\u7EBF",en:"Underline"},dot_line:{zh:"\u4E0B\u5212\u70B9\u72B6\u7EBF",en:"Dotted Underline"},dash_line:{zh:"\u4E0B\u5212\u865A\u7EBF",en:"Dashed Underline"},wavy_line:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF",en:"Wavy Underline"},fuzzy:{zh:"\u6A21\u7CCA",en:"Fuzzy"},highlight:{zh:"\u9AD8\u4EAE",en:"Highlight"},blockquote:{zh:"\u5F15\u7528",en:"Blockquote"},diy_style:{zh:"\u81EA\u5B9A\u4E49\u6837\u5F0F",en:"Custom Style"},diy_style_helper:{zh:"\u9075\u5FAA\u201CCSS\u201D\u7684\u8BED\u6CD5",en:"Follow the syntax of \"CSS\""},setting:{zh:"\u8BBE\u7F6E",en:"Setting"},pattern:{zh:"\u5339\u914D\u7F51\u5740",en:"URL pattern"},pattern_helper:{zh:"1\u3001\u652F\u6301\u661F\u53F7(*)\u901A\u914D\u7B26\u30022\u3001\u591A\u4E2AURL\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u3002",en:"1. Supports the asterisk (*) wildcard character. 2. Separate multiple URLs with newlines or English commas \",\"."},selector_helper:{zh:"1\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u30022\u3001\u591A\u4E2ACSS\u9009\u62E9\u5668\u4E4B\u95F4\u7528\u201C;\u201D\u9694\u5F00\u30023\u3001\u201Cshadow root\u201D\u9009\u62E9\u5668\u548C\u5185\u90E8\u9009\u62E9\u5668\u7528\u201C>>>\u201D\u9694\u5F00\u3002",en:"1. Follow CSS selector syntax. 2. Separate multiple CSS selectors with \";\". 3. The \"shadow root\" selector and the internal selector are separated by \">>>\"."},translate_switch:{zh:"\u5F00\u542F\u7FFB\u8BD1",en:"Translate Switch"},default_enabled:{zh:"\u9ED8\u8BA4\u5F00\u542F",en:"Enabled"},default_disabled:{zh:"\u9ED8\u8BA4\u5173\u95ED",en:"Disabled"},selector:{zh:"\u9009\u62E9\u5668",en:"Selector"},keep_selector:{zh:"\u4FDD\u7559\u5143\u7D20\u9009\u62E9\u5668",en:"Keep unchanged selector"},keep_selector_helper:{zh:"1\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u30022\u3001\u5B50\u5143\u7D20\u9009\u62E9\u5668\u7528\u201C>>>\u201D\u9694\u5F00\u3002",en:"1. Follow CSS selector syntax. 2. Sub-element selectors are separated by \">>>\"."},terms:{zh:"\u4E13\u4E1A\u672F\u8BED",en:"Terms"},terms_helper:{zh:"1\u3001\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\uFF0C\u65E0\u9700\u659C\u6746\uFF0C\u4E0D\u652F\u6301\u4FEE\u9970\u7B26\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. Supports regular expression matching, no slash required, and no modifiers are supported. 2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated."},selector_style:{zh:"\u9009\u62E9\u5668\u8282\u70B9\u6837\u5F0F",en:"Selector Style"},selector_style_helper:{zh:"\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\uFF0C\u5173\u95ED\u7FFB\u8BD1\u65F6\u4E0D\u4F1A\u79FB\u9664\u3002",en:"It is injected when translation is turned on and will not be removed when translation is turned off."},selector_parent_style:{zh:"\u9009\u62E9\u5668\u7236\u8282\u70B9\u6837\u5F0F",en:"Selector Parent Style"},inject_js:{zh:"\u6CE8\u5165JS",en:"Inject JS"},inject_js_helper:{zh:"1\u3001\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\u8FD0\u884C\uFF0C\u5173\u95ED\u7FFB\u8BD1\u65F6\u79FB\u9664\u30022\u3001\u968F\u7740\u9875\u9762\u53D8\u5316\uFF0C\u53EF\u80FD\u4F1A\u591A\u6B21\u6CE8\u5165\u8FD0\u884C\u3002",en:"1. Inject and run when translation is turned on, and removed when translation is turned off. 2. As the page changes, it may be injected and run multiple times."},inject_css:{zh:"\u6CE8\u5165CSS",en:"Inject CSS"},inject_css_helper:{zh:"\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\uFF0C\u5173\u95ED\u7FFB\u8BD1\u65F6\u5C06\u79FB\u9664\u3002",en:"Injected when translation is enabled and removed when translation is disabled."},root_selector:{zh:"\u6839\u9009\u62E9\u5668",en:"Root Selector"},fixer_function:{zh:"\u4FEE\u590D\u51FD\u6570",en:"Fixer Function"},fixer_function_helper:{zh:"1\u3001br\u662F\u5C06
\u6362\u884C\u66FF\u6362\u6210

\u30022\u3001bn\u662F\u5C06\\n\u6362\u884C\u66FF\u6362\u6210

\u30023\u3001brToDiv\u548CbnToDiv\u662F\u66FF\u6362\u6210

\u3002",en:"1. br replaces
line breaks with

. 2. bn replaces \\n newline with

. 3. brToDiv and bnToDiv are replaced with

."},import:{zh:"\u5BFC\u5165",en:"Import"},export:{zh:"\u5BFC\u51FA",en:"Export"},error_cant_be_blank:{zh:"\u4E0D\u80FD\u4E3A\u7A7A",en:"Can not be blank"},error_duplicate_values:{zh:"\u5B58\u5728\u91CD\u590D\u7684\u503C",en:"There are duplicate values"},error_wrong_file_type:{zh:"\u9519\u8BEF\u7684\u6587\u4EF6\u7C7B\u578B",en:"Wrong file type"},error_fetch_url:{zh:"\u8BF7\u68C0\u67E5url\u5730\u5740\u662F\u5426\u6B63\u786E\u6216\u7A0D\u540E\u518D\u8BD5\u3002",en:"Please check if the url address is correct or try again later."},deepl_api:{zh:"DeepL \u63A5\u53E3",en:"DeepL API"},deepl_key:{zh:"DeepL \u5BC6\u94A5",en:"DeepL Key"},openai_api:{zh:"OpenAI \u63A5\u53E3",en:"OpenAI API"},openai_key:{zh:"OpenAI \u5BC6\u94A5",en:"OpenAI Key"},openai_model:{zh:"OpenAI \u6A21\u578B",en:"OpenAI Model"},openai_prompt:{zh:"OpenAI \u63D0\u793A\u8BCD",en:"OpenAI Prompt"},if_clear_cache:{zh:"\u662F\u5426\u6E05\u9664\u7F13\u5B58",en:"Whether clear cache"},clear_cache_never:{zh:"\u4E0D\u6E05\u9664\u7F13\u5B58",en:"Never clear cache"},clear_cache_restart:{zh:"\u91CD\u542F\u6D4F\u89C8\u5668\u65F6\u6E05\u9664\u7F13\u5B58",en:"Clear cache when restarting browser"},data_sync_type:{zh:"\u6570\u636E\u540C\u6B65\u65B9\u5F0F",en:"Data Sync Type"},data_sync_url:{zh:"\u6570\u636E\u540C\u6B65\u63A5\u53E3",en:"Data Sync API"},data_sync_user:{zh:"\u6570\u636E\u540C\u6B65\u8D26\u6237",en:"Data Sync User"},data_sync_key:{zh:"\u6570\u636E\u540C\u6B65\u5BC6\u94A5",en:"Data Sync Key"},sync_now:{zh:"\u7ACB\u5373\u540C\u6B65",en:"Sync Now"},sync_success:{zh:"\u540C\u6B65\u6210\u529F\uFF01",en:"Sync Success"},sync_failed:{zh:"\u540C\u6B65\u5931\u8D25\uFF01",en:"Sync Error"},error_got_some_wrong:{zh:"\u62B1\u6B49\uFF0C\u51FA\u9519\u4E86\uFF01",en:"Sorry, something went wrong!"},error_sync_setting:{zh:"\u60A8\u7684\u540C\u6B65\u7C7B\u578B\u5FC5\u987B\u4E3A\u201CKISS-Worker\u201D\uFF0C\u4E14\u9700\u586B\u5199\u5B8C\u6574",en:"Your sync type must be \"KISS-Worker\" and must be filled in completely"},click_test:{zh:"\u70B9\u51FB\u6D4B\u8BD5",en:"Click Test"},test_success:{zh:"\u6D4B\u8BD5\u6210\u529F",en:"Test success"},test_failed:{zh:"\u6D4B\u8BD5\u5931\u8D25",en:"Test failed"},clear_all_cache_now:{zh:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u7F13\u5B58",en:"Clear all cache now"},clear_cache:{zh:"\u6E05\u9664\u7F13\u5B58",en:"Clear Cache"},clear_success:{zh:"\u6E05\u9664\u6210\u529F",en:"Clear success"},clear_failed:{zh:"\u6E05\u9664\u5931\u8D25",en:"Clear failed"},share:{zh:"\u5206\u4EAB",en:"Share"},clear_all:{zh:"\u6E05\u7A7A",en:"Clear All"},help:{zh:"\u6C42\u52A9",en:"Help"},restore_default:{zh:"\u6062\u590D\u9ED8\u8BA4",en:"Restore Default"},shortcuts_setting:{zh:"\u5FEB\u6377\u952E\u8BBE\u7F6E",en:"Shortcuts Setting"},toggle_translate_shortcut:{zh:"\"\u5F00\u542F\u7FFB\u8BD1\"\u5FEB\u6377\u952E",en:"\"Toggle Translate\" Shortcut"},toggle_style_shortcut:{zh:"\"\u5207\u6362\u6837\u5F0F\"\u5FEB\u6377\u952E",en:"\"Toggle Style\" Shortcut"},toggle_popup_shortcut:{zh:"\"\u6253\u5F00\u5F39\u7A97\"\u5FEB\u6377\u952E",en:"\"Open Popup\" Shortcut"},open_setting_shortcut:{zh:"\"\u6253\u5F00\u8BBE\u7F6E\"\u5FEB\u6377\u952E",en:"\"Open Setting\" Shortcut"},hide_fab_button:{zh:"\u9690\u85CF\u60AC\u6D6E\u6309\u94AE",en:"Hide Fab Button"},hide_tran_button:{zh:"\u9690\u85CF\u7FFB\u8BD1\u6309\u94AE",en:"Hide Translate Button"},show:{zh:"\u663E\u793A",en:"Show"},hide:{zh:"\u9690\u85CF",en:"Hide"},save_rule:{zh:"\u4FDD\u5B58\u89C4\u5219",en:"Save Rule"},global_rule:{zh:"\u5168\u5C40\u89C4\u5219",en:"Global Rule"},input_translate:{zh:"\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation"},use_input_box_translation:{zh:"\u542F\u7528\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation"},input_selector:{zh:"\u8F93\u5165\u6846\u9009\u62E9\u5668",en:"Input Selector"},input_selector_helper:{zh:"\u7528\u4E8E\u8F93\u5165\u6846\u7FFB\u8BD1\u3002",en:"Used for input box translation."},trigger_trans_shortcut:{zh:"\u89E6\u53D1\u7FFB\u8BD1\u5FEB\u6377\u952E",en:"Trigger Translation Shortcut Keys"},trigger_trans_shortcut_help:{zh:"\u9ED8\u8BA4\u4E3A\u5355\u51FB\u201CAltLeft+KeyI\u201D",en:"Default is \"AltLeft+KeyI\""},shortcut_press_count:{zh:"\u5FEB\u6377\u952E\u8FDE\u51FB\u6B21\u6570",en:"Shortcut Press Number"},combo_timeout:{zh:"\u8FDE\u51FB\u8D85\u65F6\u65F6\u95F4 (10-1000ms)",en:"Combo Timeout (10-1000ms)"},input_trans_start_sign:{zh:"\u7FFB\u8BD1\u8D77\u59CB\u6807\u8BC6",en:"Translation Start Sign"},input_trans_start_sign_help:{zh:"\u6807\u8BC6\u540E\u9762\u53EF\u4EE5\u52A0\u76EE\u6807\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1A \u201C/en \u4F60\u597D\u201D\u3001\u201C/zh hello\u201D",en:"The target language code can be added after the sign, such as: \"/en \u4F60\u597D\", \"/zh hello\""},detect_lang_remote:{zh:"\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B",en:"Remote language detection"},detect_lang_remote_help:{zh:"\u542F\u7528\u540E\u68C0\u6D4B\u51C6\u786E\u5EA6\u589E\u52A0\uFF0C\u4F46\u4F1A\u964D\u4F4E\u7FFB\u8BD1\u901F\u5EA6\uFF0C\u8BF7\u914C\u60C5\u5F00\u542F",en:"After enabling, the detection accuracy will increase, but it will reduce the translation speed. Please enable it as appropriate."},disable:{zh:"\u7981\u7528",en:"Disable"},enable:{zh:"\u542F\u7528",en:"Enable"},selection_translate:{zh:"\u5212\u8BCD\u7FFB\u8BD1",en:"Selection Translate"},toggle_selection_translate:{zh:"\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"Use Selection Translate"},trigger_tranbox_shortcut:{zh:"\u663E\u793A\u7FFB\u8BD1\u6846/\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57\u5FEB\u6377\u952E",en:"Open Translate Popup/Translate Selected Shortcut"},tranbtn_offset_x:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBX\uFF080-100\uFF09",en:"Translate Button Offset X (0-100)"},tranbtn_offset_y:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBY\uFF080-100\uFF09",en:"Translate Button Offset Y (0-100)"},translated_text:{zh:"\u8BD1\u6587",en:"Translated Text"},original_text:{zh:"\u539F\u6587",en:"Original Text"},favorite_words:{zh:"\u6536\u85CF\u8BCD\u6C47",en:"Favorite Words"},touch_setting:{zh:"\u89E6\u5C4F\u8BBE\u7F6E",en:"Touch Setting"},touch_translate_shortcut:{zh:"\u89E6\u5C4F\u7FFB\u8BD1\u5FEB\u6377\u65B9\u5F0F",en:"Touch Translate Shortcut"},touch_tap_0:{zh:"\u7981\u7528",en:"Disable"},touch_tap_2:{zh:"\u53CC\u6307\u8F7B\u89E6",en:"Two finger tap"},touch_tap_3:{zh:"\u4E09\u6307\u8F7B\u89E6",en:"Three finger tap"},touch_tap_4:{zh:"\u56DB\u6307\u8F7B\u89E6",en:"Four finger tap"},translate_blacklist:{zh:"\u7981\u7528\u7FFB\u8BD1\u540D\u5355",en:"Translate Blacklist"},skip_langs:{zh:"\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",en:"Disable Languages"},skip_langs_helper:{zh:"\u6B64\u529F\u80FD\u4F9D\u8D56\u51C6\u786E\u7684\u8BED\u8A00\u68C0\u6D4B\uFF0C\u5EFA\u8BAE\u542F\u7528\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B\u3002",en:"This feature relies on accurate language detection. It is recommended to enable remote language detection."},context_menus:{zh:"\u53F3\u952E\u83DC\u5355",en:"Context Menus"},hide_context_menus:{zh:"\u9690\u85CF\u53F3\u952E\u83DC\u5355",en:"Hide Context Menus"},simple_context_menus:{zh:"\u7B80\u5355\u53F3\u952E\u83DC\u5355",en:"Simple_context_menus Context Menus"},secondary_context_menus:{zh:"\u4E8C\u7EA7\u53F3\u952E\u83DC\u5355",en:"Secondary Context Menus"},mulkeys_help:{zh:"\u652F\u6301\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u591A\u4E2AKEY\u8F6E\u8BE2\u8C03\u7528\u3002",en:"Supports multiple KEY polling calls separated by newlines or English commas \",\"."},translation_element_tag:{zh:"\u8BD1\u6587\u5143\u7D20\u6807\u7B7E",en:"Translation Element Tag"},show_only_translations:{zh:"\u4EC5\u663E\u793A\u8BD1\u6587",en:"Show Only Translations"},show_only_translations_help:{zh:"\u975E\u5B8C\u7F8E\u5B9E\u73B0\uFF0C\u67D0\u4E9B\u9875\u9762\u53EF\u80FD\u6709\u6837\u5F0F\u7B49\u95EE\u9898\u3002",en:"It is not a perfect implementation and some pages may have style issues."},translate_page_title:{zh:"\u662F\u5426\u7FFB\u8BD1\u9875\u9762\u6807\u9898",en:"Translate Page Title"},more:{zh:"\u66F4\u591A",en:"More"},fixer_selector:{zh:"\u7F51\u9875\u4FEE\u590D\u9009\u62E9\u5668",en:"Fixer Selector"}}; ;// CONCATENATED MODULE: ./src/config/index.js -var _OPT_LANGS_SPECIAL,_DEFAULT_TRANS_APIS,_DEFAULT_SHORTCUTS;var STOKEY_MSAUTH="".concat(APP_NAME,"_msauth");var STOKEY_BDAUTH="".concat(APP_NAME,"_bdauth");var config_STOKEY_SETTING="".concat(APP_NAME,"_setting");var config_STOKEY_RULES="".concat(APP_NAME,"_rules");var config_STOKEY_WFRULES="".concat(APP_NAME,"_webfix_rules");var STOKEY_WORDS="".concat(APP_NAME,"_words");var config_STOKEY_SYNC="".concat(APP_NAME,"_sync");var config_STOKEY_FAB="".concat(APP_NAME,"_fab");var config_STOKEY_RULESCACHE_PREFIX="".concat(APP_NAME,"_rulescache_");var STOKEY_WEBFIXCACHE_PREFIX="".concat(APP_NAME,"_webfixcache_");var CMD_TOGGLE_TRANSLATE="toggleTranslate";var CMD_TOGGLE_STYLE="toggleStyle";var CMD_OPEN_OPTIONS="openOptions";var CMD_OPEN_TRANBOX="openTranbox";var CLIENT_WEB="web";var CLIENT_CHROME="chrome";var CLIENT_EDGE="edge";var CLIENT_FIREFOX="firefox";var CLIENT_USERSCRIPT="userscript";var CLIENT_EXTS=[CLIENT_CHROME,CLIENT_EDGE,CLIENT_FIREFOX];var KV_RULES_KEY="kiss-rules.json";var config_KV_WFRULES_KEY="kiss-webfix.json";var KV_WORDS_KEY="kiss-words.json";var config_KV_RULES_SHARE_KEY="kiss-rules-share.json";var KV_SETTING_KEY="kiss-setting.json";var KV_SALT_SYNC="KISS-Translator-SYNC";var config_KV_SALT_SHARE="KISS-Translator-SHARE";var CACHE_NAME="".concat(APP_NAME,"_cache");var MSG_FETCH="fetch";var MSG_FETCH_LIMIT="fetch_limit";var MSG_FETCH_CLEAR="fetch_clear";var MSG_OPEN_OPTIONS="open_options";var MSG_SAVE_RULE="save_rule";var MSG_TRANS_TOGGLE="trans_toggle";var MSG_TRANS_TOGGLE_STYLE="trans_toggle_style";var MSG_OPEN_TRANBOX="open_tranbox";var MSG_TRANS_GETRULE="trans_getrule";var MSG_TRANS_PUTRULE="trans_putrule";var MSG_TRANS_CURRULE="trans_currule";var MSG_CONTEXT_MENUS="context_menus";var MSG_COMMAND_SHORTCUTS="command_shortcuts";var THEME_LIGHT="light";var THEME_DARK="dark";var URL_KISS_WORKER="https://github.com/fishjar/kiss-worker";var URL_KISS_PROXY="https://github.com/fishjar/kiss-proxy";var URL_KISS_RULES="https://github.com/fishjar/kiss-rules";var URL_KISS_RULES_NEW_ISSUE="https://github.com/fishjar/kiss-rules/issues/new";var config_URL_RAW_PREFIX="https://raw.githubusercontent.com/fishjar/kiss-translator/master";var URL_CACHE_TRAN="https://".concat(APP_LCNAME,"/translate");var URL_MICROSOFT_TRAN="https://api-edge.cognitive.microsofttranslator.com/translate";var URL_MICROSOFT_AUTH="https://edge.microsoft.com/translate/auth";var URL_BAIDU_LANGDETECT="https://fanyi.baidu.com/langdetect";var URL_BAIDU_WEB="https://fanyi.baidu.com/";var URL_BAIDU_TRANSAPI="https://fanyi.baidu.com/transapi";var config_URL_BAIDU_TRANSAPI_V2="https://fanyi.baidu.com/v2transapi";var URL_DEEPLFREE_TRAN="https://www2.deepl.com/jsonrpc";var config_URL_TENCENT_TRANSMART="https://transmart.qq.com/api/imt";var OPT_TRANS_GOOGLE="Google";var OPT_TRANS_MICROSOFT="Microsoft";var OPT_TRANS_DEEPL="DeepL";var OPT_TRANS_DEEPLX="DeepLX";var OPT_TRANS_DEEPLFREE="DeepLFree";var OPT_TRANS_BAIDU="Baidu";var OPT_TRANS_TENCENT="Tencent";var OPT_TRANS_OPENAI="OpenAI";var OPT_TRANS_GEMINI="Gemini";var OPT_TRANS_CLOUDFLAREAI="CloudflareAI";var OPT_TRANS_CUSTOMIZE="Custom";var OPT_TRANS_ALL=[OPT_TRANS_GOOGLE,OPT_TRANS_MICROSOFT,OPT_TRANS_BAIDU,OPT_TRANS_TENCENT,OPT_TRANS_DEEPL,OPT_TRANS_DEEPLFREE,OPT_TRANS_DEEPLX,OPT_TRANS_OPENAI,OPT_TRANS_GEMINI,OPT_TRANS_CLOUDFLAREAI,OPT_TRANS_CUSTOMIZE];var OPT_LANGS_TO=[["en","English - English"],["zh-CN","Simplified Chinese - 简体中文"],["zh-TW","Traditional Chinese - 繁體中文"],["ar","Arabic - العربية"],["bg","Bulgarian - Български"],["ca","Catalan - Català"],["hr","Croatian - Hrvatski"],["cs","Czech - Čeština"],["da","Danish - Dansk"],["nl","Dutch - Nederlands"],["fi","Finnish - Suomi"],["fr","French - Français"],["de","German - Deutsch"],["el","Greek - Ελληνικά"],["hi","Hindi - हिन्दी"],["hu","Hungarian - Magyar"],["id","Indonesian - Indonesia"],["it","Italian - Italiano"],["ja","Japanese - 日本語"],["ko","Korean - 한국어"],["ms","Malay - Melayu"],["mt","Maltese - Malti"],["nb","Norwegian - Norsk Bokmål"],["pl","Polish - Polski"],["pt","Portuguese - Português"],["ro","Romanian - Română"],["ru","Russian - Русский"],["sk","Slovak - Slovenčina"],["sl","Slovenian - Slovenščina"],["es","Spanish - Español"],["sv","Swedish - Svenska"],["ta","Tamil - தமிழ்"],["te","Telugu - తెలుగు"],["th","Thai - ไทย"],["tr","Turkish - Türkçe"],["uk","Ukrainian - Українська"],["vi","Vietnamese - Tiếng Việt"]];var OPT_LANGS_FROM=[["auto","Auto-detect"]].concat(OPT_LANGS_TO);var OPT_LANGS_SPECIAL=(_OPT_LANGS_SPECIAL={},(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_GOOGLE,new Map(OPT_LANGS_FROM.map(function(_ref){var _ref2=(0,slicedToArray/* default */.Z)(_ref,1),key=_ref2[0];return[key,key];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_MICROSOFT,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref3){var _ref4=(0,slicedToArray/* default */.Z)(_ref3,1),key=_ref4[0];return[key,key];})),[["auto",""],["zh-CN","zh-Hans"],["zh-TW","zh-Hant"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPL,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref5){var _ref6=(0,slicedToArray/* default */.Z)(_ref5,1),key=_ref6[0];return[key,key.toUpperCase()];})),[["auto",""],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPLFREE,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref7){var _ref8=(0,slicedToArray/* default */.Z)(_ref7,1),key=_ref8[0];return[key,key.toUpperCase()];})),[["auto","auto"],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPLX,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref9){var _ref10=(0,slicedToArray/* default */.Z)(_ref9,1),key=_ref10[0];return[key,key.toUpperCase()];})),[["auto",""],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_BAIDU,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref11){var _ref12=(0,slicedToArray/* default */.Z)(_ref11,1),key=_ref12[0];return[key,key];})),[["zh-CN","zh"],["zh-TW","cht"],["ar","ara"],["bg","bul"],["ca","cat"],["hr","hrv"],["da","dan"],["fi","fin"],["fr","fra"],["hi","mai"],["ja","jp"],["ko","kor"],["ms","may"],["mt","mlt"],["nb","nor"],["ro","rom"],["ru","ru"],["sl","slo"],["es","spa"],["sv","swe"],["ta","tam"],["te","tel"],["uk","ukr"],["vi","vie"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_TENCENT,new Map([["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ar","ar"],["de","de"],["ru","ru"],["fr","fr"],["fi","fil"],["ko","ko"],["ms","ms"],["pt","pt"],["ja","ja"],["th","th"],["tr","tr"],["es","es"],["it","it"],["hi","hi"],["id","id"],["vi","vi"]])),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_OPENAI,new Map(OPT_LANGS_FROM.map(function(_ref13){var _ref14=(0,slicedToArray/* default */.Z)(_ref13,2),key=_ref14[0],val=_ref14[1];return[key,val.split(" - ")[0]];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_GEMINI,new Map(OPT_LANGS_FROM.map(function(_ref15){var _ref16=(0,slicedToArray/* default */.Z)(_ref15,2),key=_ref16[0],val=_ref16[1];return[key,val.split(" - ")[0]];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_CLOUDFLAREAI,new Map([["auto",""],["zh-CN","chinese"],["zh-TW","chinese"],["en","english"],["ar","arabic"],["de","german"],["ru","russian"],["fr","french"],["pt","portuguese"],["ja","japanese"],["es","spanish"],["hi","hindi"]])),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_CUSTOMIZE,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref17){var _ref18=(0,slicedToArray/* default */.Z)(_ref17,1),key=_ref18[0];return[key,key];})),[["auto",""]]))),_OPT_LANGS_SPECIAL);var OPT_LANGS_LIST=OPT_LANGS_TO.map(function(_ref19){var _ref20=(0,slicedToArray/* default */.Z)(_ref19,1),lang=_ref20[0];return lang;});var OPT_LANGS_BAIDU=new Map(Array.from(OPT_LANGS_SPECIAL[OPT_TRANS_BAIDU].entries()).map(function(_ref21){var _ref22=(0,slicedToArray/* default */.Z)(_ref21,2),k=_ref22[0],v=_ref22[1];return[v,k];}));var config_OPT_LANGS_TENCENT=new Map(Array.from(OPT_LANGS_SPECIAL[OPT_TRANS_TENCENT].entries()).map(function(_ref23){var _ref24=(0,slicedToArray/* default */.Z)(_ref23,2),k=_ref24[0],v=_ref24[1];return[v,k];}));config_OPT_LANGS_TENCENT.set("zh","zh-CN");var OPT_STYLE_NONE="style_none";// 无 +var _OPT_LANGS_SPECIAL,_DEFAULT_TRANS_APIS,_DEFAULT_SHORTCUTS;var STOKEY_MSAUTH="".concat(APP_NAME,"_msauth");var STOKEY_BDAUTH="".concat(APP_NAME,"_bdauth");var config_STOKEY_SETTING="".concat(APP_NAME,"_setting");var config_STOKEY_RULES="".concat(APP_NAME,"_rules");var STOKEY_WORDS="".concat(APP_NAME,"_words");var config_STOKEY_SYNC="".concat(APP_NAME,"_sync");var config_STOKEY_FAB="".concat(APP_NAME,"_fab");var config_STOKEY_RULESCACHE_PREFIX="".concat(APP_NAME,"_rulescache_");var CMD_TOGGLE_TRANSLATE="toggleTranslate";var CMD_TOGGLE_STYLE="toggleStyle";var CMD_OPEN_OPTIONS="openOptions";var CMD_OPEN_TRANBOX="openTranbox";var CLIENT_WEB="web";var CLIENT_CHROME="chrome";var CLIENT_EDGE="edge";var CLIENT_FIREFOX="firefox";var CLIENT_USERSCRIPT="userscript";var CLIENT_EXTS=[CLIENT_CHROME,CLIENT_EDGE,CLIENT_FIREFOX];var KV_RULES_KEY="kiss-rules.json";var KV_WORDS_KEY="kiss-words.json";var config_KV_RULES_SHARE_KEY="kiss-rules-share.json";var KV_SETTING_KEY="kiss-setting.json";var KV_SALT_SYNC="KISS-Translator-SYNC";var config_KV_SALT_SHARE="KISS-Translator-SHARE";var CACHE_NAME="".concat(APP_NAME,"_cache");var MSG_FETCH="fetch";var MSG_FETCH_LIMIT="fetch_limit";var MSG_FETCH_CLEAR="fetch_clear";var MSG_OPEN_OPTIONS="open_options";var MSG_SAVE_RULE="save_rule";var MSG_TRANS_TOGGLE="trans_toggle";var MSG_TRANS_TOGGLE_STYLE="trans_toggle_style";var MSG_OPEN_TRANBOX="open_tranbox";var MSG_TRANS_GETRULE="trans_getrule";var MSG_TRANS_PUTRULE="trans_putrule";var MSG_TRANS_CURRULE="trans_currule";var MSG_CONTEXT_MENUS="context_menus";var MSG_COMMAND_SHORTCUTS="command_shortcuts";var MSG_INJECT_JS="inject_js";var MSG_INJECT_CSS="inject_css";var THEME_LIGHT="light";var THEME_DARK="dark";var URL_KISS_WORKER="https://github.com/fishjar/kiss-worker";var URL_KISS_PROXY="https://github.com/fishjar/kiss-proxy";var URL_KISS_RULES="https://github.com/fishjar/kiss-rules";var URL_KISS_RULES_NEW_ISSUE="https://github.com/fishjar/kiss-rules/issues/new";var config_URL_RAW_PREFIX="https://raw.githubusercontent.com/fishjar/kiss-translator/master";var URL_CACHE_TRAN="https://".concat(APP_LCNAME,"/translate");var URL_MICROSOFT_TRAN="https://api-edge.cognitive.microsofttranslator.com/translate";var URL_MICROSOFT_AUTH="https://edge.microsoft.com/translate/auth";var URL_BAIDU_LANGDETECT="https://fanyi.baidu.com/langdetect";var URL_BAIDU_SUGGEST="https://fanyi.baidu.com/sug";var URL_BAIDU_WEB="https://fanyi.baidu.com/";var URL_BAIDU_TRANSAPI="https://fanyi.baidu.com/transapi";var config_URL_BAIDU_TRANSAPI_V2="https://fanyi.baidu.com/v2transapi";var URL_DEEPLFREE_TRAN="https://www2.deepl.com/jsonrpc";var config_URL_TENCENT_TRANSMART="https://transmart.qq.com/api/imt";var OPT_TRANS_GOOGLE="Google";var OPT_TRANS_MICROSOFT="Microsoft";var OPT_TRANS_DEEPL="DeepL";var OPT_TRANS_DEEPLX="DeepLX";var OPT_TRANS_DEEPLFREE="DeepLFree";var OPT_TRANS_BAIDU="Baidu";var OPT_TRANS_TENCENT="Tencent";var OPT_TRANS_OPENAI="OpenAI";var OPT_TRANS_GEMINI="Gemini";var OPT_TRANS_CLOUDFLAREAI="CloudflareAI";var OPT_TRANS_CUSTOMIZE="Custom";var OPT_TRANS_ALL=[OPT_TRANS_GOOGLE,OPT_TRANS_MICROSOFT,OPT_TRANS_BAIDU,OPT_TRANS_TENCENT,OPT_TRANS_DEEPL,OPT_TRANS_DEEPLFREE,OPT_TRANS_DEEPLX,OPT_TRANS_OPENAI,OPT_TRANS_GEMINI,OPT_TRANS_CLOUDFLAREAI,OPT_TRANS_CUSTOMIZE];var OPT_LANGS_TO=[["en","English - English"],["zh-CN","Simplified Chinese - 简体中文"],["zh-TW","Traditional Chinese - 繁體中文"],["ar","Arabic - العربية"],["bg","Bulgarian - Български"],["ca","Catalan - Català"],["hr","Croatian - Hrvatski"],["cs","Czech - Čeština"],["da","Danish - Dansk"],["nl","Dutch - Nederlands"],["fi","Finnish - Suomi"],["fr","French - Français"],["de","German - Deutsch"],["el","Greek - Ελληνικά"],["hi","Hindi - हिन्दी"],["hu","Hungarian - Magyar"],["id","Indonesian - Indonesia"],["it","Italian - Italiano"],["ja","Japanese - 日本語"],["ko","Korean - 한국어"],["ms","Malay - Melayu"],["mt","Maltese - Malti"],["nb","Norwegian - Norsk Bokmål"],["pl","Polish - Polski"],["pt","Portuguese - Português"],["ro","Romanian - Română"],["ru","Russian - Русский"],["sk","Slovak - Slovenčina"],["sl","Slovenian - Slovenščina"],["es","Spanish - Español"],["sv","Swedish - Svenska"],["ta","Tamil - தமிழ்"],["te","Telugu - తెలుగు"],["th","Thai - ไทย"],["tr","Turkish - Türkçe"],["uk","Ukrainian - Українська"],["vi","Vietnamese - Tiếng Việt"]];var OPT_LANGS_FROM=[["auto","Auto-detect"]].concat(OPT_LANGS_TO);var OPT_LANGS_SPECIAL=(_OPT_LANGS_SPECIAL={},(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_GOOGLE,new Map(OPT_LANGS_FROM.map(function(_ref){var _ref2=(0,slicedToArray/* default */.Z)(_ref,1),key=_ref2[0];return[key,key];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_MICROSOFT,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref3){var _ref4=(0,slicedToArray/* default */.Z)(_ref3,1),key=_ref4[0];return[key,key];})),[["auto",""],["zh-CN","zh-Hans"],["zh-TW","zh-Hant"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPL,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref5){var _ref6=(0,slicedToArray/* default */.Z)(_ref5,1),key=_ref6[0];return[key,key.toUpperCase()];})),[["auto",""],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPLFREE,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref7){var _ref8=(0,slicedToArray/* default */.Z)(_ref7,1),key=_ref8[0];return[key,key.toUpperCase()];})),[["auto","auto"],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPLX,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref9){var _ref10=(0,slicedToArray/* default */.Z)(_ref9,1),key=_ref10[0];return[key,key.toUpperCase()];})),[["auto",""],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_BAIDU,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref11){var _ref12=(0,slicedToArray/* default */.Z)(_ref11,1),key=_ref12[0];return[key,key];})),[["zh-CN","zh"],["zh-TW","cht"],["ar","ara"],["bg","bul"],["ca","cat"],["hr","hrv"],["da","dan"],["fi","fin"],["fr","fra"],["hi","mai"],["ja","jp"],["ko","kor"],["ms","may"],["mt","mlt"],["nb","nor"],["ro","rom"],["ru","ru"],["sl","slo"],["es","spa"],["sv","swe"],["ta","tam"],["te","tel"],["uk","ukr"],["vi","vie"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_TENCENT,new Map([["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ar","ar"],["de","de"],["ru","ru"],["fr","fr"],["fi","fil"],["ko","ko"],["ms","ms"],["pt","pt"],["ja","ja"],["th","th"],["tr","tr"],["es","es"],["it","it"],["hi","hi"],["id","id"],["vi","vi"]])),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_OPENAI,new Map(OPT_LANGS_FROM.map(function(_ref13){var _ref14=(0,slicedToArray/* default */.Z)(_ref13,2),key=_ref14[0],val=_ref14[1];return[key,val.split(" - ")[0]];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_GEMINI,new Map(OPT_LANGS_FROM.map(function(_ref15){var _ref16=(0,slicedToArray/* default */.Z)(_ref15,2),key=_ref16[0],val=_ref16[1];return[key,val.split(" - ")[0]];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_CLOUDFLAREAI,new Map([["auto",""],["zh-CN","chinese"],["zh-TW","chinese"],["en","english"],["ar","arabic"],["de","german"],["ru","russian"],["fr","french"],["pt","portuguese"],["ja","japanese"],["es","spanish"],["hi","hindi"]])),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_CUSTOMIZE,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref17){var _ref18=(0,slicedToArray/* default */.Z)(_ref17,1),key=_ref18[0];return[key,key];})),[["auto",""]]))),_OPT_LANGS_SPECIAL);var OPT_LANGS_LIST=OPT_LANGS_TO.map(function(_ref19){var _ref20=(0,slicedToArray/* default */.Z)(_ref19,1),lang=_ref20[0];return lang;});var OPT_LANGS_BAIDU=new Map(Array.from(OPT_LANGS_SPECIAL[OPT_TRANS_BAIDU].entries()).map(function(_ref21){var _ref22=(0,slicedToArray/* default */.Z)(_ref21,2),k=_ref22[0],v=_ref22[1];return[v,k];}));var config_OPT_LANGS_TENCENT=new Map(Array.from(OPT_LANGS_SPECIAL[OPT_TRANS_TENCENT].entries()).map(function(_ref23){var _ref24=(0,slicedToArray/* default */.Z)(_ref23,2),k=_ref24[0],v=_ref24[1];return[v,k];}));config_OPT_LANGS_TENCENT.set("zh","zh-CN");var OPT_STYLE_NONE="style_none";// 无 var OPT_STYLE_LINE="under_line";// 下划线 var OPT_STYLE_DOTLINE="dot_line";// 点状线 var OPT_STYLE_DASHLINE="dash_line";// 虚线 @@ -19494,45 +19542,73 @@ var OPT_STYLE_FUZZY="fuzzy";// 模糊 var OPT_STYLE_HIGHLIGHT="highlight";// 高亮 var OPT_STYLE_BLOCKQUOTE="blockquote";// 引用 var OPT_STYLE_DIY="diy_style";// 自定义样式 -var OPT_STYLE_ALL=[OPT_STYLE_NONE,OPT_STYLE_LINE,OPT_STYLE_DOTLINE,OPT_STYLE_DASHLINE,OPT_STYLE_WAVYLINE,OPT_STYLE_FUZZY,OPT_STYLE_HIGHLIGHT,OPT_STYLE_BLOCKQUOTE,OPT_STYLE_DIY];var OPT_STYLE_USE_COLOR=[OPT_STYLE_LINE,OPT_STYLE_DOTLINE,OPT_STYLE_DASHLINE,OPT_STYLE_WAVYLINE,OPT_STYLE_HIGHLIGHT,OPT_STYLE_BLOCKQUOTE];var OPT_MOUSEKEY_DISABLE="mk_disable";// 滚动加载翻译 -var OPT_MOUSEKEY_PAGEOPEN="mk_pageopen";// 直接翻译到底 -var OPT_MOUSEKEY_MOUSEOVER="mk_mouseover";var OPT_MOUSEKEY_CONTROL="mk_ctrlKey";var OPT_MOUSEKEY_SHIFT="mk_shiftKey";var OPT_MOUSEKEY_ALT="mk_altKey";var OPT_MOUSEKEY_ALL=[OPT_MOUSEKEY_DISABLE,OPT_MOUSEKEY_PAGEOPEN,OPT_MOUSEKEY_MOUSEOVER,OPT_MOUSEKEY_CONTROL,OPT_MOUSEKEY_SHIFT,OPT_MOUSEKEY_ALT];var DEFAULT_FETCH_LIMIT=10;// 默认最大任务数量 +var OPT_STYLE_ALL=[OPT_STYLE_NONE,OPT_STYLE_LINE,OPT_STYLE_DOTLINE,OPT_STYLE_DASHLINE,OPT_STYLE_WAVYLINE,OPT_STYLE_FUZZY,OPT_STYLE_HIGHLIGHT,OPT_STYLE_BLOCKQUOTE,OPT_STYLE_DIY];var OPT_STYLE_USE_COLOR=[OPT_STYLE_LINE,OPT_STYLE_DOTLINE,OPT_STYLE_DASHLINE,OPT_STYLE_WAVYLINE,OPT_STYLE_HIGHLIGHT,OPT_STYLE_BLOCKQUOTE];var OPT_TIMING_PAGESCROLL="mk_pagescroll";// 滚动加载翻译 +var OPT_TIMING_PAGEOPEN="mk_pageopen";// 直接翻译到底 +var OPT_TIMING_MOUSEOVER="mk_mouseover";var OPT_TIMING_CONTROL="mk_ctrlKey";var OPT_TIMING_SHIFT="mk_shiftKey";var OPT_TIMING_ALT="mk_altKey";var OPT_TIMING_ALL=[OPT_TIMING_PAGESCROLL,OPT_TIMING_PAGEOPEN,OPT_TIMING_MOUSEOVER,OPT_TIMING_CONTROL,OPT_TIMING_SHIFT,OPT_TIMING_ALT];var DEFAULT_FETCH_LIMIT=10;// 默认最大任务数量 var DEFAULT_FETCH_INTERVAL=100;// 默认任务间隔时间 var PROMPT_PLACE_FROM="{{from}}";// 占位符 var PROMPT_PLACE_TO="{{to}}";// 占位符 var PROMPT_PLACE_TEXT="{{text}}";// 占位符 var DEFAULT_COLOR="#209CEE";// 默认高亮背景色/线条颜色 -// 全局规则 -var GLOBLA_RULE={pattern:"*",selector:DEFAULT_SELECTOR,keepSelector:DEFAULT_KEEP_SELECTOR,terms:"",translator:OPT_TRANS_MICROSOFT,fromLang:"auto",toLang:"zh-CN",textStyle:OPT_STYLE_DASHLINE,transOpen:"false",bgColor:"",textDiyStyle:""};// 输入框翻译 +var DEFAULT_TRANS_TAG="span";var DEFAULT_SELECT_STYLE="-webkit-line-clamp: unset; max-height: none; height: auto;";// 全局规则 +var GLOBLA_RULE={pattern:"*",// 匹配网址 +selector:DEFAULT_SELECTOR,// 选择器 +keepSelector:DEFAULT_KEEP_SELECTOR,// 保留元素选择器 +terms:"",// 专业术语 +translator:OPT_TRANS_MICROSOFT,// 翻译服务 +fromLang:"auto",// 源语言 +toLang:"zh-CN",// 目标语言 +textStyle:OPT_STYLE_DASHLINE,// 译文样式 +transOpen:"false",// 开启翻译 +bgColor:"",// 译文颜色 +textDiyStyle:"",// 自定义译文样式 +selectStyle:DEFAULT_SELECT_STYLE,// 选择器节点样式 +parentStyle:DEFAULT_SELECT_STYLE,// 选择器父节点样式 +injectJs:"",// 注入JS +injectCss:"",// 注入CSS +transOnly:"false",// 是否仅显示译文 +transTiming:OPT_TIMING_PAGESCROLL,// 翻译时机/鼠标悬停翻译 +transTag:DEFAULT_TRANS_TAG,// 译文元素标签 +transTitle:"false",// 是否同时翻译页面标题 +detectRemote:"false",// 是否使用远程语言检测 +skipLangs:[],// 不翻译的语言 +fixerSelector:"",// 修复函数选择器 +fixerFunc:"-"// 修复函数 +};// 输入框翻译 var OPT_INPUT_TRANS_SIGNS=["/","//","\\","\\\\",">",">>"];var DEFAULT_INPUT_SHORTCUT=["AltLeft","KeyI"];var DEFAULT_INPUT_RULE={transOpen:true,translator:OPT_TRANS_MICROSOFT,fromLang:"auto",toLang:"en",triggerShortcut:DEFAULT_INPUT_SHORTCUT,triggerCount:1,triggerTime:200,transSign:OPT_INPUT_TRANS_SIGNS[0]};// 划词翻译 var DEFAULT_TRANBOX_SHORTCUT=["AltLeft","KeyS"];var DEFAULT_TRANBOX_SETTING={transOpen:true,translator:OPT_TRANS_MICROSOFT,fromLang:"auto",toLang:"zh-CN",toLang2:"en",tranboxShortcut:DEFAULT_TRANBOX_SHORTCUT,btnOffsetX:10,btnOffsetY:10,hideTranBtn:false};// 订阅列表 var DEFAULT_SUBRULES_LIST=[{url:"https://fishjar.github.io/kiss-rules/kiss-rules.json",selected:false},{url:"https://fishjar.github.io/kiss-rules/kiss-rules-on.json",selected:true},{url:"https://fishjar.github.io/kiss-rules/kiss-rules-off.json",selected:false}];// 翻译接口 -var DEFAULT_TRANS_APIS=(_DEFAULT_TRANS_APIS={},(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_GOOGLE,{url:"https://translate.googleapis.com/translate_a/single",key:""}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPL,{url:"https://api-free.deepl.com/v2/translate",key:""}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPLX,{url:"http://localhost:1188/translate",key:""}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_OPENAI,{url:"https://api.openai.com/v1/chat/completions",key:"",model:"gpt-4",prompt:"You will be provided with a sentence in ".concat(PROMPT_PLACE_FROM,", and your task is to translate it into ").concat(PROMPT_PLACE_TO,".")}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_GEMINI,{url:"https://generativelanguage.googleapis.com/v1/models",key:"",model:"gemini-pro",prompt:"Translate the following text from ".concat(PROMPT_PLACE_FROM," to ").concat(PROMPT_PLACE_TO,":\n\n").concat(PROMPT_PLACE_TEXT)}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_CLOUDFLAREAI,{url:"https://api.cloudflare.com/client/v4/accounts/{ACCOUNT_ID}/ai/run/@cf/meta/m2m100-1.2b",key:""}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_CUSTOMIZE,{url:"",key:""}),_DEFAULT_TRANS_APIS);// 默认快捷键 +var DEFAULT_TRANS_APIS=(_DEFAULT_TRANS_APIS={},(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_GOOGLE,{url:"https://translate.googleapis.com/translate_a/single",key:"",fetchLimit:DEFAULT_FETCH_LIMIT,// 最大任务数量 +fetchInterval:DEFAULT_FETCH_INTERVAL// 任务间隔时间 +}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_MICROSOFT,{fetchLimit:DEFAULT_FETCH_LIMIT,fetchInterval:DEFAULT_FETCH_INTERVAL}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_BAIDU,{fetchLimit:DEFAULT_FETCH_LIMIT,fetchInterval:DEFAULT_FETCH_INTERVAL}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_TENCENT,{fetchLimit:DEFAULT_FETCH_LIMIT,fetchInterval:DEFAULT_FETCH_INTERVAL}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPL,{url:"https://api-free.deepl.com/v2/translate",key:"",fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPLFREE,{fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPLX,{url:"http://localhost:1188/translate",key:"",fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_OPENAI,{url:"https://api.openai.com/v1/chat/completions",key:"",model:"gpt-4",prompt:"You will be provided with a sentence in ".concat(PROMPT_PLACE_FROM,", and your task is to translate it into ").concat(PROMPT_PLACE_TO,"."),fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_GEMINI,{url:"https://generativelanguage.googleapis.com/v1/models",key:"",model:"gemini-pro",prompt:"Translate the following text from ".concat(PROMPT_PLACE_FROM," to ").concat(PROMPT_PLACE_TO,":\n\n").concat(PROMPT_PLACE_TEXT),fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_CLOUDFLAREAI,{url:"https://api.cloudflare.com/client/v4/accounts/{ACCOUNT_ID}/ai/run/@cf/meta/m2m100-1.2b",key:"",fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_CUSTOMIZE,{url:"",key:"",fetchLimit:DEFAULT_FETCH_LIMIT,fetchInterval:DEFAULT_FETCH_INTERVAL}),_DEFAULT_TRANS_APIS);// 默认快捷键 var OPT_SHORTCUT_TRANSLATE="toggleTranslate";var OPT_SHORTCUT_STYLE="toggleStyle";var OPT_SHORTCUT_POPUP="togglePopup";var OPT_SHORTCUT_SETTING="openSetting";var DEFAULT_SHORTCUTS=(_DEFAULT_SHORTCUTS={},(0,defineProperty/* default */.Z)(_DEFAULT_SHORTCUTS,OPT_SHORTCUT_TRANSLATE,["AltLeft","KeyQ"]),(0,defineProperty/* default */.Z)(_DEFAULT_SHORTCUTS,OPT_SHORTCUT_STYLE,["AltLeft","KeyC"]),(0,defineProperty/* default */.Z)(_DEFAULT_SHORTCUTS,OPT_SHORTCUT_POPUP,["AltLeft","KeyK"]),(0,defineProperty/* default */.Z)(_DEFAULT_SHORTCUTS,OPT_SHORTCUT_SETTING,["AltLeft","KeyO"]),_DEFAULT_SHORTCUTS);var TRANS_MIN_LENGTH=5;// 最短翻译长度 var TRANS_MAX_LENGTH=5000;// 最长翻译长度 var TRANS_NEWLINE_LENGTH=20;// 换行字符数 var DEFAULT_BLACKLIST=["https://fishjar.github.io/kiss-translator/options.html","https://translate.google.com","https://www.deepl.com/translator","oapi.dingtalk.com","login.dingtalk.com"];// 禁用翻译名单 var config_DEFAULT_SETTING={darkMode:false,// 深色模式 uiLang:"en",// 界面语言 -fetchLimit:DEFAULT_FETCH_LIMIT,// 最大任务数量 -fetchInterval:DEFAULT_FETCH_INTERVAL,// 任务间隔时间 +// fetchLimit: DEFAULT_FETCH_LIMIT, // 最大任务数量(移至transApis,作废) +// fetchInterval: DEFAULT_FETCH_INTERVAL, // 任务间隔时间(移至transApis,作废) minLength:TRANS_MIN_LENGTH,maxLength:TRANS_MAX_LENGTH,newlineLength:TRANS_NEWLINE_LENGTH,clearCache:false,// 是否在浏览器下次启动时清除缓存 injectRules:true,// 是否注入订阅规则 -injectWebfix:true,// 是否注入修复补丁 -detectRemote:false,// 是否使用远程语言检测 -contextMenus:true,// 是否添加右键菜单(作废) +// injectWebfix: true, // 是否注入修复补丁(作废) +// detectRemote: false, // 是否使用远程语言检测(移至rule,作废) +// contextMenus: true, // 是否添加右键菜单(作废) contextMenuType:1,// 右键菜单类型(0不显示,1简单菜单,2多级菜单) -transTitle:false,// 是否同时翻译页面标题 +// transTag: DEFAULT_TRANS_TAG, // 译文元素标签(移至rule,作废) +// transOnly: false, // 是否仅显示译文(移至rule,作废) +// transTitle: false, // 是否同时翻译页面标题(移至rule,作废) subrulesList:DEFAULT_SUBRULES_LIST,// 订阅列表 owSubrule:DEFAULT_OW_RULE,// 覆写订阅规则 transApis:DEFAULT_TRANS_APIS,// 翻译接口 -mouseKey:OPT_MOUSEKEY_DISABLE,// 翻译时机/鼠标悬停翻译 +// mouseKey: OPT_TIMING_PAGESCROLL, // 翻译时机/鼠标悬停翻译(移至rule,作废) shortcuts:DEFAULT_SHORTCUTS,// 快捷键 inputRule:DEFAULT_INPUT_RULE,// 输入框设置 tranboxSetting:DEFAULT_TRANBOX_SETTING,// 划词翻译设置 touchTranslate:2,// 触屏翻译 blacklist:DEFAULT_BLACKLIST.join(",\n"),// 禁用翻译名单 -disableLangs:[]// 不翻译的语言 +// disableLangs: [], // 不翻译的语言(移至rule,作废) +transInterval:500// 翻译间隔时间 };var config_DEFAULT_RULES=[GLOBLA_RULE];var OPT_SYNCTYPE_WORKER="KISS-Worker";var OPT_SYNCTYPE_WEBDAV="WebDAV";var OPT_SYNCTYPE_ALL=[OPT_SYNCTYPE_WORKER,OPT_SYNCTYPE_WEBDAV];var config_DEFAULT_SYNC={syncType:OPT_SYNCTYPE_WORKER,// 同步方式 syncUrl:"",// 数据同步接口 syncUser:"",// 数据同步用户名 @@ -19548,42 +19624,44 @@ var client_client="userscript";var isExt=CLIENT_EXTS.includes(client_client);var /** * 浏览器兼容插件,另可用于判断是插件模式还是网页模式,方便开发 * @returns - */function _browser(){try{return __webpack_require__(2465);}catch(err){// console.log("[browser]", err.message); + */function _browser(){try{return __webpack_require__(2465);}catch(err){// kissLog(err, "browser"); }}var browser=_browser();var isBg=function isBg(){return(globalThis===null||globalThis===void 0?void 0:globalThis.ContextType)==="BACKGROUND";}; ;// CONCATENATED MODULE: ./src/libs/storage.js -function set(_x,_x2){return _set.apply(this,arguments);}function _set(){_set=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee10(key,val){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee10$(_context10){while(1)switch(_context10.prev=_context10.next){case 0:if(!isExt){_context10.next=5;break;}_context10.next=3;return browser.storage.local.set((0,defineProperty/* default */.Z)({},key,val));case 3:_context10.next=11;break;case 5:if(!isGm){_context10.next=10;break;}_context10.next=8;return(window.KISS_GM||GM).setValue(key,val);case 8:_context10.next=11;break;case 10:window.localStorage.setItem(key,val);case 11:case"end":return _context10.stop();}},_callee10);}));return _set.apply(this,arguments);}function get(_x3){return _get.apply(this,arguments);}function _get(){_get=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee11(key){var val,_val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee11$(_context11){while(1)switch(_context11.prev=_context11.next){case 0:if(!isExt){_context11.next=7;break;}_context11.next=3;return browser.storage.local.get([key]);case 3:val=_context11.sent;return _context11.abrupt("return",val[key]);case 7:if(!isGm){_context11.next=12;break;}_context11.next=10;return(window.KISS_GM||GM).getValue(key);case 10:_val=_context11.sent;return _context11.abrupt("return",_val);case 12:return _context11.abrupt("return",window.localStorage.getItem(key));case 13:case"end":return _context11.stop();}},_callee11);}));return _get.apply(this,arguments);}function del(_x4){return _del.apply(this,arguments);}function _del(){_del=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee12(key){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee12$(_context12){while(1)switch(_context12.prev=_context12.next){case 0:if(!isExt){_context12.next=5;break;}_context12.next=3;return browser.storage.local.remove([key]);case 3:_context12.next=11;break;case 5:if(!isGm){_context12.next=10;break;}_context12.next=8;return(window.KISS_GM||GM).deleteValue(key);case 8:_context12.next=11;break;case 10:window.localStorage.removeItem(key);case 11:case"end":return _context12.stop();}},_callee12);}));return _del.apply(this,arguments);}function setObj(_x5,_x6){return _setObj.apply(this,arguments);}function _setObj(){_setObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee13(key,obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee13$(_context13){while(1)switch(_context13.prev=_context13.next){case 0:_context13.next=2;return set(key,JSON.stringify(obj));case 2:case"end":return _context13.stop();}},_callee13);}));return _setObj.apply(this,arguments);}function trySetObj(_x7,_x8){return _trySetObj.apply(this,arguments);}function _trySetObj(){_trySetObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee14(key,obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee14$(_context14){while(1)switch(_context14.prev=_context14.next){case 0:_context14.next=2;return get(key);case 2:if(_context14.sent){_context14.next=5;break;}_context14.next=5;return setObj(key,obj);case 5:case"end":return _context14.stop();}},_callee14);}));return _trySetObj.apply(this,arguments);}function getObj(_x9){return _getObj.apply(this,arguments);}function _getObj(){_getObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee15(key){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee15$(_context15){while(1)switch(_context15.prev=_context15.next){case 0:_context15.next=2;return get(key);case 2:val=_context15.sent;return _context15.abrupt("return",val&&JSON.parse(val));case 4:case"end":return _context15.stop();}},_callee15);}));return _getObj.apply(this,arguments);}function putObj(_x10,_x11){return _putObj.apply(this,arguments);}/** +function set(_x,_x2){return _set.apply(this,arguments);}function _set(){_set=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee8(key,val){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee8$(_context8){while(1)switch(_context8.prev=_context8.next){case 0:if(!isExt){_context8.next=5;break;}_context8.next=3;return browser.storage.local.set((0,defineProperty/* default */.Z)({},key,val));case 3:_context8.next=11;break;case 5:if(!isGm){_context8.next=10;break;}_context8.next=8;return(window.KISS_GM||GM).setValue(key,val);case 8:_context8.next=11;break;case 10:window.localStorage.setItem(key,val);case 11:case"end":return _context8.stop();}},_callee8);}));return _set.apply(this,arguments);}function get(_x3){return _get.apply(this,arguments);}function _get(){_get=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee9(key){var val,_val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee9$(_context9){while(1)switch(_context9.prev=_context9.next){case 0:if(!isExt){_context9.next=7;break;}_context9.next=3;return browser.storage.local.get([key]);case 3:val=_context9.sent;return _context9.abrupt("return",val[key]);case 7:if(!isGm){_context9.next=12;break;}_context9.next=10;return(window.KISS_GM||GM).getValue(key);case 10:_val=_context9.sent;return _context9.abrupt("return",_val);case 12:return _context9.abrupt("return",window.localStorage.getItem(key));case 13:case"end":return _context9.stop();}},_callee9);}));return _get.apply(this,arguments);}function del(_x4){return _del.apply(this,arguments);}function _del(){_del=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee10(key){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee10$(_context10){while(1)switch(_context10.prev=_context10.next){case 0:if(!isExt){_context10.next=5;break;}_context10.next=3;return browser.storage.local.remove([key]);case 3:_context10.next=11;break;case 5:if(!isGm){_context10.next=10;break;}_context10.next=8;return(window.KISS_GM||GM).deleteValue(key);case 8:_context10.next=11;break;case 10:window.localStorage.removeItem(key);case 11:case"end":return _context10.stop();}},_callee10);}));return _del.apply(this,arguments);}function setObj(_x5,_x6){return _setObj.apply(this,arguments);}function _setObj(){_setObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee11(key,obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee11$(_context11){while(1)switch(_context11.prev=_context11.next){case 0:_context11.next=2;return set(key,JSON.stringify(obj));case 2:case"end":return _context11.stop();}},_callee11);}));return _setObj.apply(this,arguments);}function trySetObj(_x7,_x8){return _trySetObj.apply(this,arguments);}function _trySetObj(){_trySetObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee12(key,obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee12$(_context12){while(1)switch(_context12.prev=_context12.next){case 0:_context12.next=2;return get(key);case 2:if(_context12.sent){_context12.next=5;break;}_context12.next=5;return setObj(key,obj);case 5:case"end":return _context12.stop();}},_callee12);}));return _trySetObj.apply(this,arguments);}function getObj(_x9){return _getObj.apply(this,arguments);}function _getObj(){_getObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee13(key){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee13$(_context13){while(1)switch(_context13.prev=_context13.next){case 0:_context13.next=2;return get(key);case 2:val=_context13.sent;return _context13.abrupt("return",val&&JSON.parse(val));case 4:case"end":return _context13.stop();}},_callee13);}));return _getObj.apply(this,arguments);}function putObj(_x10,_x11){return _putObj.apply(this,arguments);}/** * 对storage的封装 - */function _putObj(){_putObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee16(key,obj){var _yield$getObj;var cur;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee16$(_context16){while(1)switch(_context16.prev=_context16.next){case 0:_context16.next=2;return getObj(key);case 2:_context16.t1=_yield$getObj=_context16.sent;_context16.t0=_context16.t1!==null;if(!_context16.t0){_context16.next=6;break;}_context16.t0=_yield$getObj!==void 0;case 6:if(!_context16.t0){_context16.next=10;break;}_context16.t2=_yield$getObj;_context16.next=11;break;case 10:_context16.t2={};case 11:cur=_context16.t2;_context16.next=14;return setObj(key,_objectSpread2(_objectSpread2({},cur),obj));case 14:case"end":return _context16.stop();}},_callee16);}));return _putObj.apply(this,arguments);}var storage={get:get,set:set,del:del,setObj:setObj,trySetObj:trySetObj,getObj:getObj,putObj:putObj// onChanged, + */function _putObj(){_putObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee14(key,obj){var _yield$getObj;var cur;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee14$(_context14){while(1)switch(_context14.prev=_context14.next){case 0:_context14.next=2;return getObj(key);case 2:_context14.t1=_yield$getObj=_context14.sent;_context14.t0=_context14.t1!==null;if(!_context14.t0){_context14.next=6;break;}_context14.t0=_yield$getObj!==void 0;case 6:if(!_context14.t0){_context14.next=10;break;}_context14.t2=_yield$getObj;_context14.next=11;break;case 10:_context14.t2={};case 11:cur=_context14.t2;_context14.next=14;return setObj(key,_objectSpread2(_objectSpread2({},cur),obj));case 14:case"end":return _context14.stop();}},_callee14);}));return _putObj.apply(this,arguments);}var storage={get:get,set:set,del:del,setObj:setObj,trySetObj:trySetObj,getObj:getObj,putObj:putObj// onChanged, };/** * 设置信息 - */var getSetting=function getSetting(){return getObj(config_STOKEY_SETTING);};var getSettingWithDefault=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.next=2;return getSetting();case 2:_context.t0=_context.sent;if(_context.t0){_context.next=5;break;}_context.t0=config_DEFAULT_SETTING;case 5:return _context.abrupt("return",_context.t0);case 6:case"end":return _context.stop();}},_callee);}));return function getSettingWithDefault(){return _ref.apply(this,arguments);};}();var setSetting=function setSetting(val){return setObj(config_STOKEY_SETTING,val);};var updateSetting=function updateSetting(obj){return putObj(STOKEY_SETTING,obj);};/** + */var getSetting=function getSetting(){return getObj(config_STOKEY_SETTING);};var getSettingWithDefault=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.t0=_objectSpread2;_context.t1=_objectSpread2({},config_DEFAULT_SETTING);_context.next=4;return getSetting();case 4:_context.t2=_context.sent;if(_context.t2){_context.next=7;break;}_context.t2={};case 7:_context.t3=_context.t2;return _context.abrupt("return",(0,_context.t0)(_context.t1,_context.t3));case 9:case"end":return _context.stop();}},_callee);}));return function getSettingWithDefault(){return _ref.apply(this,arguments);};}();var setSetting=function setSetting(val){return setObj(config_STOKEY_SETTING,val);};var updateSetting=function updateSetting(obj){return putObj(STOKEY_SETTING,obj);};/** * 规则列表 */var getRules=function getRules(){return getObj(config_STOKEY_RULES);};var getRulesWithDefault=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return getRules();case 2:_context2.t0=_context2.sent;if(_context2.t0){_context2.next=5;break;}_context2.t0=config_DEFAULT_RULES;case 5:return _context2.abrupt("return",_context2.t0);case 6:case"end":return _context2.stop();}},_callee2);}));return function getRulesWithDefault(){return _ref2.apply(this,arguments);};}();var setRules=function setRules(val){return setObj(config_STOKEY_RULES,val);};/** - * 修复规则列表 - */var getWebfixRules=function getWebfixRules(){return getObj(config_STOKEY_WFRULES);};var storage_getWebfixRulesWithDefault=/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return getWebfixRules();case 2:_context3.t0=_context3.sent;if(_context3.t0){_context3.next=5;break;}_context3.t0=[];case 5:return _context3.abrupt("return",_context3.t0);case 6:case"end":return _context3.stop();}},_callee3);}));return function getWebfixRulesWithDefault(){return _ref3.apply(this,arguments);};}();var storage_setWebfixRules=function setWebfixRules(val){return setObj(STOKEY_WFRULES,val);};/** * 词汇列表 - */var getWords=function getWords(){return getObj(STOKEY_WORDS);};var getWordsWithDefault=/*#__PURE__*/function(){var _ref4=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.next=2;return getWords();case 2:_context4.t0=_context4.sent;if(_context4.t0){_context4.next=5;break;}_context4.t0={};case 5:return _context4.abrupt("return",_context4.t0);case 6:case"end":return _context4.stop();}},_callee4);}));return function getWordsWithDefault(){return _ref4.apply(this,arguments);};}();var setWords=function setWords(val){return setObj(STOKEY_WORDS,val);};/** + */var getWords=function getWords(){return getObj(STOKEY_WORDS);};var getWordsWithDefault=/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return getWords();case 2:_context3.t0=_context3.sent;if(_context3.t0){_context3.next=5;break;}_context3.t0={};case 5:return _context3.abrupt("return",_context3.t0);case 6:case"end":return _context3.stop();}},_callee3);}));return function getWordsWithDefault(){return _ref3.apply(this,arguments);};}();var setWords=function setWords(val){return setObj(STOKEY_WORDS,val);};/** * 订阅规则 - */var getSubRules=function getSubRules(url){return getObj(config_STOKEY_RULESCACHE_PREFIX+url);};var getSubRulesWithDefault=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref5=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee5(){return _regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.next=2;return getSubRules();case 2:_context5.t0=_context5.sent;if(_context5.t0){_context5.next=5;break;}_context5.t0=[];case 5:return _context5.abrupt("return",_context5.t0);case 6:case"end":return _context5.stop();}},_callee5);}));return function getSubRulesWithDefault(){return _ref5.apply(this,arguments);};}()));var delSubRules=function delSubRules(url){return del(STOKEY_RULESCACHE_PREFIX+url);};var setSubRules=function setSubRules(url,val){return setObj(config_STOKEY_RULESCACHE_PREFIX+url,val);};/** - * 修复站点 - */var getWebfix=function getWebfix(url){return getObj(STOKEY_WEBFIXCACHE_PREFIX+url);};var getWebfixWithDefault=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref6=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee6(){return _regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:_context6.next=2;return getWebfix();case 2:_context6.t0=_context6.sent;if(_context6.t0){_context6.next=5;break;}_context6.t0=[];case 5:return _context6.abrupt("return",_context6.t0);case 6:case"end":return _context6.stop();}},_callee6);}));return function getWebfixWithDefault(){return _ref6.apply(this,arguments);};}()));var setWebfix=function setWebfix(url,val){return setObj(STOKEY_WEBFIXCACHE_PREFIX+url,val);};/** + */var getSubRules=function getSubRules(url){return getObj(config_STOKEY_RULESCACHE_PREFIX+url);};var getSubRulesWithDefault=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref4=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee4(){return _regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.next=2;return getSubRules();case 2:_context4.t0=_context4.sent;if(_context4.t0){_context4.next=5;break;}_context4.t0=[];case 5:return _context4.abrupt("return",_context4.t0);case 6:case"end":return _context4.stop();}},_callee4);}));return function getSubRulesWithDefault(){return _ref4.apply(this,arguments);};}()));var delSubRules=function delSubRules(url){return del(STOKEY_RULESCACHE_PREFIX+url);};var setSubRules=function setSubRules(url,val){return setObj(config_STOKEY_RULESCACHE_PREFIX+url,val);};/** * fab位置 - */var getFab=function getFab(){return getObj(config_STOKEY_FAB);};var getFabWithDefault=/*#__PURE__*/function(){var _ref7=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee7(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee7$(_context7){while(1)switch(_context7.prev=_context7.next){case 0:_context7.next=2;return getFab();case 2:_context7.t0=_context7.sent;if(_context7.t0){_context7.next=5;break;}_context7.t0={};case 5:return _context7.abrupt("return",_context7.t0);case 6:case"end":return _context7.stop();}},_callee7);}));return function getFabWithDefault(){return _ref7.apply(this,arguments);};}();var setFab=function setFab(obj){return setObj(STOKEY_FAB,obj);};var updateFab=function updateFab(obj){return putObj(config_STOKEY_FAB,obj);};/** + */var getFab=function getFab(){return getObj(config_STOKEY_FAB);};var getFabWithDefault=/*#__PURE__*/function(){var _ref5=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.next=2;return getFab();case 2:_context5.t0=_context5.sent;if(_context5.t0){_context5.next=5;break;}_context5.t0={};case 5:return _context5.abrupt("return",_context5.t0);case 6:case"end":return _context5.stop();}},_callee5);}));return function getFabWithDefault(){return _ref5.apply(this,arguments);};}();var setFab=function setFab(obj){return setObj(STOKEY_FAB,obj);};var updateFab=function updateFab(obj){return putObj(config_STOKEY_FAB,obj);};/** * 数据同步 - */var getSync=function getSync(){return getObj(config_STOKEY_SYNC);};var getSyncWithDefault=/*#__PURE__*/function(){var _ref8=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee8(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee8$(_context8){while(1)switch(_context8.prev=_context8.next){case 0:_context8.next=2;return getSync();case 2:_context8.t0=_context8.sent;if(_context8.t0){_context8.next=5;break;}_context8.t0=config_DEFAULT_SYNC;case 5:return _context8.abrupt("return",_context8.t0);case 6:case"end":return _context8.stop();}},_callee8);}));return function getSyncWithDefault(){return _ref8.apply(this,arguments);};}();var updateSync=function updateSync(obj){return putObj(config_STOKEY_SYNC,obj);};/** + */var getSync=function getSync(){return getObj(config_STOKEY_SYNC);};var getSyncWithDefault=/*#__PURE__*/function(){var _ref6=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:_context6.next=2;return getSync();case 2:_context6.t0=_context6.sent;if(_context6.t0){_context6.next=5;break;}_context6.t0=config_DEFAULT_SYNC;case 5:return _context6.abrupt("return",_context6.t0);case 6:case"end":return _context6.stop();}},_callee6);}));return function getSyncWithDefault(){return _ref6.apply(this,arguments);};}();var updateSync=function updateSync(obj){return putObj(config_STOKEY_SYNC,obj);};/** * ms auth */var getMsauth=function getMsauth(){return getObj(STOKEY_MSAUTH);};var setMsauth=function setMsauth(val){return setObj(STOKEY_MSAUTH,val);};/** * baidu auth */var getBdauth=function getBdauth(){return getObj(STOKEY_BDAUTH);};var setBdauth=function setBdauth(val){return setObj(STOKEY_BDAUTH,val);};/** * 存入默认数据 - */var tryInitDefaultData=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref9=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee9(){return _regeneratorRuntime().wrap(function _callee9$(_context9){while(1)switch(_context9.prev=_context9.next){case 0:_context9.prev=0;_context9.next=3;return trySetObj(STOKEY_SETTING,DEFAULT_SETTING);case 3:_context9.next=5;return trySetObj(STOKEY_RULES,DEFAULT_RULES);case 5:_context9.next=7;return trySetObj(STOKEY_SYNC,DEFAULT_SYNC);case 7:_context9.next=9;return trySetObj("".concat(STOKEY_RULESCACHE_PREFIX).concat("https://fishjar.github.io/kiss-rules/kiss-rules.json"),BUILTIN_RULES);case 9:_context9.next=14;break;case 11:_context9.prev=11;_context9.t0=_context9["catch"](0);console.log("[init default]",_context9.t0);case 14:case"end":return _context9.stop();}},_callee9,null,[[0,11]]);}));return function tryInitDefaultData(){return _ref9.apply(this,arguments);};}())); + */var tryInitDefaultData=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref7=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee7(){return _regeneratorRuntime().wrap(function _callee7$(_context7){while(1)switch(_context7.prev=_context7.next){case 0:_context7.prev=0;_context7.next=3;return trySetObj(STOKEY_SETTING,DEFAULT_SETTING);case 3:_context7.next=5;return trySetObj(STOKEY_RULES,DEFAULT_RULES);case 5:_context7.next=7;return trySetObj(STOKEY_SYNC,DEFAULT_SYNC);case 7:_context7.next=9;return trySetObj("".concat(STOKEY_RULESCACHE_PREFIX).concat("https://fishjar.github.io/kiss-rules/kiss-rules.json"),BUILTIN_RULES);case 9:_context7.next=14;break;case 11:_context7.prev=11;_context7.t0=_context7["catch"](0);kissLog(_context7.t0,"init default");case 14:case"end":return _context7.stop();}},_callee7,null,[[0,11]]);}));return function tryInitDefaultData(){return _ref7.apply(this,arguments);};}())); +;// CONCATENATED MODULE: ./src/libs/log.js +/** + * 日志函数 + * @param {*} msg + * @param {*} type + */var log_kissLog=function kissLog(msg,type){var prefix="[KISS-Translator]";if(type){prefix+="[".concat(type,"]");}console.log("".concat(prefix," ").concat(msg));}; ;// CONCATENATED MODULE: ./src/hooks/Storage.js /** - * - * @param {*} key + * + * @param {*} key * @param {*} defaultVal 需为调用hook外的常量 - * @returns - */function useStorage(key,defaultVal){var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useState3=(0,react.useState)(null),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),data=_useState4[0],setData=_useState4[1];var save=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(val){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:setData(val);_context.next=3;return storage.setObj(key,val);case 3:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[key]);var update=(0,react.useCallback)(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:setData(function(){var pre=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};return _objectSpread2(_objectSpread2({},pre),obj);});_context2.next=3;return storage.putObj(key,obj);case 3:case"end":return _context2.stop();}},_callee2);}));return function(_x2){return _ref2.apply(this,arguments);};}(),[key]);var remove=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:setData(null);_context3.next=3;return storage.del(key);case 3:case"end":return _context3.stop();}},_callee3);})),[key]);var reload=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;setLoading(true);_context4.next=4;return storage.getObj(key);case 4:val=_context4.sent;if(val){setData(val);}_context4.next=11;break;case 8:_context4.prev=8;_context4.t0=_context4["catch"](0);console.log("[storage reload]",_context4.t0.message);case 11:_context4.prev=11;setLoading(false);return _context4.finish(11);case 14:case"end":return _context4.stop();}},_callee4,null,[[0,8,11,14]]);})),[key]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;setLoading(true);_context5.next=4;return storage.getObj(key);case 4:val=_context5.sent;if(!val){_context5.next=9;break;}setData(val);_context5.next=13;break;case 9:if(!defaultVal){_context5.next=13;break;}setData(defaultVal);_context5.next=13;return storage.setObj(key,defaultVal);case 13:_context5.next=18;break;case 15:_context5.prev=15;_context5.t0=_context5["catch"](0);console.log("[storage load]",_context5.t0.message);case 18:_context5.prev=18;setLoading(false);return _context5.finish(18);case 21:case"end":return _context5.stop();}},_callee5,null,[[0,15,18,21]]);}))();},[key,defaultVal]);return{data:data,save:save,update:update,remove:remove,reload:reload,loading:loading};} + * @returns + */function useStorage(key,defaultVal){var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useState3=(0,react.useState)(null),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),data=_useState4[0],setData=_useState4[1];var save=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(val){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:setData(val);_context.next=3;return storage.setObj(key,val);case 3:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[key]);var update=(0,react.useCallback)(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:setData(function(){var pre=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};return _objectSpread2(_objectSpread2({},pre),obj);});_context2.next=3;return storage.putObj(key,obj);case 3:case"end":return _context2.stop();}},_callee2);}));return function(_x2){return _ref2.apply(this,arguments);};}(),[key]);var remove=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:setData(null);_context3.next=3;return storage.del(key);case 3:case"end":return _context3.stop();}},_callee3);})),[key]);var reload=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;setLoading(true);_context4.next=4;return storage.getObj(key);case 4:val=_context4.sent;if(val){setData(val);}_context4.next=11;break;case 8:_context4.prev=8;_context4.t0=_context4["catch"](0);log_kissLog(_context4.t0,"storage reload");case 11:_context4.prev=11;setLoading(false);return _context4.finish(11);case 14:case"end":return _context4.stop();}},_callee4,null,[[0,8,11,14]]);})),[key]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;setLoading(true);_context5.next=4;return storage.getObj(key);case 4:val=_context5.sent;if(!val){_context5.next=9;break;}setData(val);_context5.next=13;break;case 9:if(!defaultVal){_context5.next=13;break;}setData(defaultVal);_context5.next=13;return storage.setObj(key,defaultVal);case 13:_context5.next=18;break;case 15:_context5.prev=15;_context5.t0=_context5["catch"](0);log_kissLog(_context5.t0,"storage load");case 18:_context5.prev=18;setLoading(false);return _context5.finish(18);case 21:case"end":return _context5.stop();}},_callee5,null,[[0,15,18,21]]);}))();},[key,defaultVal]);return{data:data,save:save,update:update,remove:remove,reload:reload,loading:loading};} // EXTERNAL MODULE: ./node_modules/.pnpm/@babel+runtime@7.22.15/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js var unsupportedIterableToArray = __webpack_require__(9373); ;// CONCATENATED MODULE: ./node_modules/.pnpm/@babel+runtime@7.22.15/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js @@ -20250,6 +20328,9 @@ function _objectWithoutProperties(source, excluded) { } ;// CONCATENATED MODULE: ./src/libs/msg.js /** + * 获取当前tab信息 + * @returns + */var getCurTab=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var _yield$browser$tabs$q,_yield$browser$tabs$q2,tab;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.next=2;return browser.tabs.query({active:true,lastFocusedWindow:true});case 2:_yield$browser$tabs$q=_context.sent;_yield$browser$tabs$q2=(0,slicedToArray/* default */.Z)(_yield$browser$tabs$q,1);tab=_yield$browser$tabs$q2[0];return _context.abrupt("return",tab);case 6:case"end":return _context.stop();}},_callee);}));return function getCurTab(){return _ref.apply(this,arguments);};}();var getCurTabId=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(){var tab;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return getCurTab();case 2:tab=_context2.sent;return _context2.abrupt("return",tab.id);case 4:case"end":return _context2.stop();}},_callee2);}));return function getCurTabId(){return _ref2.apply(this,arguments);};}();/** * 发送消息给background * @param {*} action * @param {*} args @@ -20259,10 +20340,7 @@ function _objectWithoutProperties(source, excluded) { * @param {*} action * @param {*} args * @returns - */var sendTabMsg=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(action,args){var tabs;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.next=2;return browser.tabs.query({active:true,currentWindow:true});case 2:tabs=_context.sent;return _context.abrupt("return",browser.tabs.sendMessage(tabs[0].id,{action:action,args:args}));case 4:case"end":return _context.stop();}},_callee);}));return function sendTabMsg(_x,_x2){return _ref.apply(this,arguments);};}();/** - * 获取当前tab信息 - * @returns - */var getTabInfo=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(){var tabs;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return browser.tabs.query({active:true,currentWindow:true});case 2:tabs=_context2.sent;return _context2.abrupt("return",tabs[0]);case 4:case"end":return _context2.stop();}},_callee2);}));return function getTabInfo(){return _ref2.apply(this,arguments);};}(); + */var sendTabMsg=/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(action,args){var tabId;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return getCurTabId();case 2:tabId=_context3.sent;return _context3.abrupt("return",browser.tabs.sendMessage(tabId,{action:action,args:args}));case 4:case"end":return _context3.stop();}},_callee3);}));return function sendTabMsg(_x,_x2){return _ref3.apply(this,arguments);};}(); ;// CONCATENATED MODULE: ./src/libs/pool.js /** * 任务池 @@ -20276,9 +20354,9 @@ var maxCount=_limit;// 最大数量 var curCount=0;// 当前数量 var interval=_interval;// 间隔时间 var timer=null;var run=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var item,args,resolve,reject,retry,preArgs,res,retryTimer;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:// console.log("timer", timer); -timer&&clearTimeout(timer);timer=setTimeout(run,interval);if(!(curCount0&&arguments[0]!==undefined?arguments[0]:100;var _limit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:100;if(_interval>=0&&_interval<=5000&&_interval!==interval){interval=_interval;}if(_limit>=1&&_limit<=100&&_limit!==maxCount){maxCount=_limit;}},clear:function clear(){pool.length=0;curCount=0;timer&&clearTimeout(timer);timer=null;}};}; +timer&&clearTimeout(timer);timer=setTimeout(run,interval);if(!(curCount0&&arguments[0]!==undefined?arguments[0]:100;var _limit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:100;if(_interval>=0&&_interval<=5000&&_interval!==interval){interval=_interval;}if(_limit>=1&&_limit<=100&&_limit!==maxCount){maxCount=_limit;}},clear:function clear(){pool.length=0;curCount=0;timer&&clearTimeout(timer);timer=null;}};}; ;// CONCATENATED MODULE: ./src/libs/auth.js -var parseMSToken=function parseMSToken(token){try{return JSON.parse(atob(token.split(".")[1])).exp;}catch(err){console.log("[parseMSToken]",err);}return 0;};/** +var parseMSToken=function parseMSToken(token){try{return JSON.parse(atob(token.split(".")[1])).exp;}catch(err){log_kissLog(err,"parseMSToken");}return 0;};/** * 闭包缓存token,减少对storage查询 * @returns */var _msAuth=function _msAuth(){var _ref={},token=_ref.token,exp=_ref.exp;return/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var now,res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:// 查询内存缓存 @@ -20311,37 +20389,37 @@ parts:[{text:prompt}]}]};var input="".concat(url,"/").concat(model,":generateCon * @returns */var newTransReq=function newTransReq(_ref12,apiSetting){var translator=_ref12.translator,text=_ref12.text,from=_ref12.from,to=_ref12.to;var args=_objectSpread2({text:text,from:from,to:to},apiSetting);switch(translator){case OPT_TRANS_DEEPL:case OPT_TRANS_OPENAI:case OPT_TRANS_GEMINI:case OPT_TRANS_CLOUDFLAREAI:args.key=keyPick(translator,args.key);break;default:}switch(translator){case OPT_TRANS_GOOGLE:return genGoogle(args);case OPT_TRANS_MICROSOFT:return genMicrosoft(args);case OPT_TRANS_DEEPL:return genDeepl(args);case OPT_TRANS_DEEPLFREE:return genDeeplFree(args);case OPT_TRANS_DEEPLX:return genDeeplX(args);case OPT_TRANS_BAIDU:return genBaidu(args);case OPT_TRANS_TENCENT:return genTencent(args);case OPT_TRANS_OPENAI:return genOpenAI(args);case OPT_TRANS_GEMINI:return genGemini(args);case OPT_TRANS_CLOUDFLAREAI:return genCloudflareAI(args);case OPT_TRANS_CUSTOMIZE:return genCustom(args);default:throw new Error("[trans] translator: ".concat(translator," not support"));}}; ;// CONCATENATED MODULE: ./src/libs/fetch.js -var fetch_excluded=["response","responseHeaders","status","statusText"],_excluded2=["useCache","usePool","transOpts","apiSetting"];/** +var fetch_excluded=["response","responseHeaders","status","statusText"],_excluded2=["useCache","usePool","transOpts","apiSetting"];var TIMEOUT=5000;/** * 油猴脚本的请求封装 * @param {*} input * @param {*} init * @returns */var fetchGM=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(input){var _ref2,_ref2$method,method,headers,body,_args=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_ref2=_args.length>1&&_args[1]!==undefined?_args[1]:{},_ref2$method=_ref2.method,method=_ref2$method===void 0?"GET":_ref2$method,headers=_ref2.headers,body=_ref2.body;return _context.abrupt("return",new Promise(function(resolve,reject){GM.xmlHttpRequest({method:method,url:input,headers:headers,data:body,// withCredentials: true, -onload:function onload(_ref3){var response=_ref3.response,responseHeaders=_ref3.responseHeaders,status=_ref3.status,statusText=_ref3.statusText,opts=_objectWithoutProperties(_ref3,fetch_excluded);var headers={};responseHeaders.split("\n").forEach(function(line){var _line$split$map=line.split(":").map(function(item){return item.trim();}),_line$split$map2=(0,slicedToArray/* default */.Z)(_line$split$map,2),name=_line$split$map2[0],value=_line$split$map2[1];if(name&&value){headers[name]=value;}});resolve({body:response,headers:headers,status:status,statusText:statusText});},onerror:reject});}));case 2:case"end":return _context.stop();}},_callee);}));return function fetchGM(_x){return _ref.apply(this,arguments);};}();/** +timeout:TIMEOUT,onload:function onload(_ref3){var response=_ref3.response,responseHeaders=_ref3.responseHeaders,status=_ref3.status,statusText=_ref3.statusText,opts=_objectWithoutProperties(_ref3,fetch_excluded);var headers={};responseHeaders.split("\n").forEach(function(line){var _line$split$map=line.split(":").map(function(item){return item.trim();}),_line$split$map2=(0,slicedToArray/* default */.Z)(_line$split$map,2),name=_line$split$map2[0],value=_line$split$map2[1];if(name&&value){headers[name]=value;}});resolve({body:response,headers:headers,status:status,statusText:statusText});},onerror:reject});}));case 2:case"end":return _context.stop();}},_callee);}));return function fetchGM(_x){return _ref.apply(this,arguments);};}();/** * 发起请求 * @param {*} param0 * @returns - */var fetchApi=/*#__PURE__*/function(){var _ref5=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(_ref4){var input,init,transOpts,apiSetting,_yield$newTransReq,_yield$newTransReq2,_info,_info$script,_info2,_info2$script,info,connects,url,isSafe,_ref6,body,headers,status,statusText;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:input=_ref4.input,init=_ref4.init,transOpts=_ref4.transOpts,apiSetting=_ref4.apiSetting;if(!(transOpts!==null&&transOpts!==void 0&&transOpts.translator)){_context2.next=8;break;}_context2.next=4;return newTransReq(transOpts,apiSetting);case 4:_yield$newTransReq=_context2.sent;_yield$newTransReq2=(0,slicedToArray/* default */.Z)(_yield$newTransReq,2);input=_yield$newTransReq2[0];init=_yield$newTransReq2[1];case 8:if(input){_context2.next=10;break;}throw new Error("url is empty");case 10:if(!isGm){_context2.next=37;break;}if(!window.KISS_GM){_context2.next=17;break;}_context2.next=14;return window.KISS_GM.getInfo();case 14:info=_context2.sent;_context2.next=18;break;case 17:info=GM.info;case 18:// Tampermonkey --> .connects + */var fetchApi=/*#__PURE__*/function(){var _ref5=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(_ref4){var _AbortSignal;var input,init,transOpts,apiSetting,_yield$newTransReq,_yield$newTransReq2,_info,_info$script,_info2,_info2$script,info,connects,url,isSafe,_ref6,body,headers,status,statusText;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:input=_ref4.input,init=_ref4.init,transOpts=_ref4.transOpts,apiSetting=_ref4.apiSetting;if(!(transOpts!==null&&transOpts!==void 0&&transOpts.translator)){_context2.next=8;break;}_context2.next=4;return newTransReq(transOpts,apiSetting);case 4:_yield$newTransReq=_context2.sent;_yield$newTransReq2=(0,slicedToArray/* default */.Z)(_yield$newTransReq,2);input=_yield$newTransReq2[0];init=_yield$newTransReq2[1];case 8:if(input){_context2.next=10;break;}throw new Error("url is empty");case 10:if(!isGm){_context2.next=37;break;}if(!window.KISS_GM){_context2.next=17;break;}_context2.next=14;return window.KISS_GM.getInfo();case 14:info=_context2.sent;_context2.next=18;break;case 17:info=GM.info;case 18:// Tampermonkey --> .connects // Violentmonkey --> .connect -connects=((_info=info)===null||_info===void 0?void 0:(_info$script=_info.script)===null||_info$script===void 0?void 0:_info$script.connects)||((_info2=info)===null||_info2===void 0?void 0:(_info2$script=_info2.script)===null||_info2$script===void 0?void 0:_info2$script.connect)||[];url=new URL(input);isSafe=connects.find(function(item){return url.hostname.endsWith(item);});if(!isSafe){_context2.next=37;break;}if(!window.KISS_GM){_context2.next=28;break;}_context2.next=25;return window.KISS_GM.fetch(input,init);case 25:_context2.t0=_context2.sent;_context2.next=31;break;case 28:_context2.next=30;return fetchGM(input,init);case 30:_context2.t0=_context2.sent;case 31:_ref6=_context2.t0;body=_ref6.body;headers=_ref6.headers;status=_ref6.status;statusText=_ref6.statusText;return _context2.abrupt("return",new Response(body,{headers:new Headers(headers),status:status,statusText:statusText}));case 37:return _context2.abrupt("return",fetch(input,init));case 38:case"end":return _context2.stop();}},_callee2);}));return function fetchApi(_x2){return _ref5.apply(this,arguments);};}();/** +connects=((_info=info)===null||_info===void 0?void 0:(_info$script=_info.script)===null||_info$script===void 0?void 0:_info$script.connects)||((_info2=info)===null||_info2===void 0?void 0:(_info2$script=_info2.script)===null||_info2$script===void 0?void 0:_info2$script.connect)||[];url=new URL(input);isSafe=connects.find(function(item){return url.hostname.endsWith(item);});if(!isSafe){_context2.next=37;break;}if(!window.KISS_GM){_context2.next=28;break;}_context2.next=25;return window.KISS_GM.fetch(input,init);case 25:_context2.t0=_context2.sent;_context2.next=31;break;case 28:_context2.next=30;return fetchGM(input,init);case 30:_context2.t0=_context2.sent;case 31:_ref6=_context2.t0;body=_ref6.body;headers=_ref6.headers;status=_ref6.status;statusText=_ref6.statusText;return _context2.abrupt("return",new Response(body,{headers:new Headers(headers),status:status,statusText:statusText}));case 37:if((_AbortSignal=AbortSignal)!==null&&_AbortSignal!==void 0&&_AbortSignal.timeout){Object.assign(init,{signal:AbortSignal.timeout(TIMEOUT)});}return _context2.abrupt("return",fetch(input,init));case 39:case"end":return _context2.stop();}},_callee2);}));return function fetchApi(_x2){return _ref5.apply(this,arguments);};}();/** * 请求池实例 */var fetchPool=taskPool(fetchApi,null,DEFAULT_FETCH_INTERVAL,DEFAULT_FETCH_LIMIT);/** * 请求数据统一接口 * @param {*} input * @param {*} opts * @returns - */var fetchData=/*#__PURE__*/function(){var _ref7=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(input){var _ref8,useCache,usePool,transOpts,apiSetting,init,cacheReq,res,cache,_res,_res$headers$get,cause,_cache,contentType,_args3=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_ref8=_args3.length>1&&_args3[1]!==undefined?_args3[1]:{},useCache=_ref8.useCache,usePool=_ref8.usePool,transOpts=_ref8.transOpts,apiSetting=_ref8.apiSetting,init=_objectWithoutProperties(_ref8,_excluded2);_context3.next=3;return newCacheReq(input,init);case 3:cacheReq=_context3.sent;if(!useCache){_context3.next=17;break;}_context3.prev=5;_context3.next=8;return caches.open(CACHE_NAME);case 8:cache=_context3.sent;_context3.next=11;return cache.match(cacheReq);case 11:res=_context3.sent;_context3.next=17;break;case 14:_context3.prev=14;_context3.t0=_context3["catch"](5);console.log("[cache match]",_context3.t0.message);case 17:if(res){_context3.next=46;break;}if(!usePool){_context3.next=24;break;}_context3.next=21;return fetchPool.push({input:input,init:init,transOpts:transOpts,apiSetting:apiSetting});case 21:res=_context3.sent;_context3.next=27;break;case 24:_context3.next=26;return fetchApi({input:input,init:init,transOpts:transOpts,apiSetting:apiSetting});case 26:res=_context3.sent;case 27:if((_res=res)!==null&&_res!==void 0&&_res.ok){_context3.next=34;break;}cause={status:res.status};if(!((_res$headers$get=res.headers.get("Content-Type"))!==null&&_res$headers$get!==void 0&&_res$headers$get.includes("json"))){_context3.next=33;break;}_context3.next=32;return res.json();case 32:cause.body=_context3.sent;case 33:throw new Error("response: [".concat(res.status,"] ").concat(res.statusText),{cause:cause});case 34:if(!useCache){_context3.next=46;break;}_context3.prev=35;_context3.next=38;return caches.open(CACHE_NAME);case 38:_cache=_context3.sent;_context3.next=41;return _cache.put(cacheReq,res.clone());case 41:_context3.next=46;break;case 43:_context3.prev=43;_context3.t1=_context3["catch"](35);console.log("[cache put]",_context3.t1.message);case 46:contentType=res.headers.get("Content-Type");if(!(contentType!==null&&contentType!==void 0&&contentType.includes("json"))){_context3.next=51;break;}_context3.next=50;return res.json();case 50:return _context3.abrupt("return",_context3.sent);case 51:_context3.next=53;return res.text();case 53:return _context3.abrupt("return",_context3.sent);case 54:case"end":return _context3.stop();}},_callee3,null,[[5,14],[35,43]]);}));return function fetchData(_x3){return _ref7.apply(this,arguments);};}();/** + */var fetchData=/*#__PURE__*/function(){var _ref7=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(input){var _ref8,useCache,usePool,transOpts,apiSetting,init,cacheReq,res,cache,_res,_res$headers$get,msg,_cache,contentType,_args3=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_ref8=_args3.length>1&&_args3[1]!==undefined?_args3[1]:{},useCache=_ref8.useCache,usePool=_ref8.usePool,transOpts=_ref8.transOpts,apiSetting=_ref8.apiSetting,init=_objectWithoutProperties(_ref8,_excluded2);_context3.next=3;return newCacheReq(input,init);case 3:cacheReq=_context3.sent;if(!useCache){_context3.next=17;break;}_context3.prev=5;_context3.next=8;return caches.open(CACHE_NAME);case 8:cache=_context3.sent;_context3.next=11;return cache.match(cacheReq);case 11:res=_context3.sent;_context3.next=17;break;case 14:_context3.prev=14;_context3.t0=_context3["catch"](5);log_kissLog(_context3.t0,"cache match");case 17:if(res){_context3.next=46;break;}if(!usePool){_context3.next=24;break;}_context3.next=21;return fetchPool.push({input:input,init:init,transOpts:transOpts,apiSetting:apiSetting});case 21:res=_context3.sent;_context3.next=27;break;case 24:_context3.next=26;return fetchApi({input:input,init:init,transOpts:transOpts,apiSetting:apiSetting});case 26:res=_context3.sent;case 27:if((_res=res)!==null&&_res!==void 0&&_res.ok){_context3.next=34;break;}msg={url:input,status:res.status};if(!((_res$headers$get=res.headers.get("Content-Type"))!==null&&_res$headers$get!==void 0&&_res$headers$get.includes("json"))){_context3.next=33;break;}_context3.next=32;return res.json();case 32:msg.response=_context3.sent;case 33:throw new Error(JSON.stringify(msg));case 34:if(!useCache){_context3.next=46;break;}_context3.prev=35;_context3.next=38;return caches.open(CACHE_NAME);case 38:_cache=_context3.sent;_context3.next=41;return _cache.put(cacheReq,res.clone());case 41:_context3.next=46;break;case 43:_context3.prev=43;_context3.t1=_context3["catch"](35);log_kissLog(_context3.t1,"cache put");case 46:contentType=res.headers.get("Content-Type");if(!(contentType!==null&&contentType!==void 0&&contentType.includes("json"))){_context3.next=51;break;}_context3.next=50;return res.json();case 50:return _context3.abrupt("return",_context3.sent);case 51:_context3.next=53;return res.text();case 53:return _context3.abrupt("return",_context3.sent);case 54:case"end":return _context3.stop();}},_callee3,null,[[5,14],[35,43]]);}));return function fetchData(_x3){return _ref7.apply(this,arguments);};}();/** * fetch 兼容性封装 * @param {*} input * @param {*} opts * @returns - */var fetch_fetchPolyfill=/*#__PURE__*/function(){var _ref9=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(input,opts){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:if(input!==null&&input!==void 0&&input.trim()){_context4.next=2;break;}throw new Error("URL is empty");case 2:if(!(isExt&&!isBg())){_context4.next=9;break;}_context4.next=5;return sendBgMsg(MSG_FETCH,{input:input,opts:opts});case 5:res=_context4.sent;if(!res.error){_context4.next=8;break;}throw new Error(res.error,{cause:res.cause});case 8:return _context4.abrupt("return",res.data);case 9:_context4.next=11;return fetchData(input,opts);case 11:return _context4.abrupt("return",_context4.sent);case 12:case"end":return _context4.stop();}},_callee4);}));return function fetchPolyfill(_x4,_x5){return _ref9.apply(this,arguments);};}();/** + */var fetch_fetchPolyfill=/*#__PURE__*/function(){var _ref9=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(input,opts){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:if(input!==null&&input!==void 0&&input.trim()){_context4.next=2;break;}throw new Error("URL is empty");case 2:if(!(isExt&&!isBg())){_context4.next=6;break;}_context4.next=5;return sendBgMsg(MSG_FETCH,{input:input,opts:opts});case 5:return _context4.abrupt("return",_context4.sent);case 6:_context4.next=8;return fetchData(input,opts);case 8:return _context4.abrupt("return",_context4.sent);case 9:case"end":return _context4.stop();}},_callee4);}));return function fetchPolyfill(_x4,_x5){return _ref9.apply(this,arguments);};}();/** * 更新 fetch pool 参数 * @param {*} interval * @param {*} limit - */var updateFetchPool=/*#__PURE__*/function(){var _ref10=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(interval,limit){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:if(!isExt){_context5.next=8;break;}_context5.next=3;return sendBgMsg(MSG_FETCH_LIMIT,{interval:interval,limit:limit});case 3:res=_context5.sent;if(!res.error){_context5.next=6;break;}throw new Error(res.error);case 6:_context5.next=9;break;case 8:fetchPool.update(interval,limit);case 9:case"end":return _context5.stop();}},_callee5);}));return function updateFetchPool(_x6,_x7){return _ref10.apply(this,arguments);};}();/** + */var updateFetchPool=/*#__PURE__*/function(){var _ref10=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(interval,limit){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:if(!isExt){_context5.next=5;break;}_context5.next=3;return sendBgMsg(MSG_FETCH_LIMIT,{interval:interval,limit:limit});case 3:_context5.next=6;break;case 5:fetchPool.update(interval,limit);case 6:case"end":return _context5.stop();}},_callee5);}));return function updateFetchPool(_x6,_x7){return _ref10.apply(this,arguments);};}();/** * 清空任务池 - */var clearFetchPool=/*#__PURE__*/function(){var _ref11=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:if(!isExt){_context6.next=8;break;}_context6.next=3;return sendBgMsg(MSG_FETCH_CLEAR);case 3:res=_context6.sent;if(!res.error){_context6.next=6;break;}throw new Error(res.error);case 6:_context6.next=9;break;case 8:fetchPool.clear();case 9:case"end":return _context6.stop();}},_callee6);}));return function clearFetchPool(){return _ref11.apply(this,arguments);};}(); + */var clearFetchPool=/*#__PURE__*/function(){var _ref11=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:if(!isExt){_context6.next=5;break;}_context6.next=3;return sendBgMsg(MSG_FETCH_CLEAR);case 3:_context6.next=6;break;case 5:fetchPool.clear();case 6:case"end":return _context6.stop();}},_callee6);}));return function clearFetchPool(){return _ref11.apply(this,arguments);};}(); ;// CONCATENATED MODULE: ./src/libs/utils.js /** * 限制数字大小 @@ -20427,17 +20505,21 @@ connects=((_info=info)===null||_info===void 0?void 0:(_info$script=_info.script) * @param {*} text * @returns */var apiBaiduLangdetect=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(text){var res,_OPT_LANGS_BAIDU$get;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return fetch_fetchPolyfill(URL_BAIDU_LANGDETECT,{headers:{"Content-type":"application/json"},method:"POST",body:JSON.stringify({query:text}),useCache:true});case 2:res=_context2.sent;if(!(res.error===0)){_context2.next=5;break;}return _context2.abrupt("return",(_OPT_LANGS_BAIDU$get=OPT_LANGS_BAIDU.get(res.lan))!==null&&_OPT_LANGS_BAIDU$get!==void 0?_OPT_LANGS_BAIDU$get:res.lan);case 5:return _context2.abrupt("return","");case 6:case"end":return _context2.stop();}},_callee2);}));return function apiBaiduLangdetect(_x4){return _ref2.apply(this,arguments);};}();/** + * 百度翻译建议 + * @param {*} text + * @returns + */var apiBaiduSuggest=/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(text){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return fetch_fetchPolyfill(URL_BAIDU_SUGGEST,{headers:{"Content-type":"application/json"},method:"POST",body:JSON.stringify({kw:text}),useCache:true});case 2:res=_context3.sent;if(!(res.errno===0)){_context3.next=5;break;}return _context3.abrupt("return",res.data);case 5:return _context3.abrupt("return",[]);case 6:case"end":return _context3.stop();}},_callee3);}));return function apiBaiduSuggest(_x5){return _ref3.apply(this,arguments);};}();/** * 腾讯语言识别 * @param {*} text * @returns - */var apiTencentLangdetect=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref3=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee3(text){var _OPT_LANGS_TENCENT$ge;var body,res;return _regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:body=JSON.stringify({header:{fn:"text_analysis"},text:text});_context3.next=3;return fetchPolyfill(URL_TENCENT_TRANSMART,{headers:{"Content-type":"application/json"},method:"POST",body:body,useCache:true});case 3:res=_context3.sent;return _context3.abrupt("return",(_OPT_LANGS_TENCENT$ge=OPT_LANGS_TENCENT.get(res.language))!==null&&_OPT_LANGS_TENCENT$ge!==void 0?_OPT_LANGS_TENCENT$ge:res.language);case 5:case"end":return _context3.stop();}},_callee3);}));return function apiTencentLangdetect(_x5){return _ref3.apply(this,arguments);};}()));/** + */var apiTencentLangdetect=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref4=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee4(text){var _OPT_LANGS_TENCENT$ge;var body,res;return _regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:body=JSON.stringify({header:{fn:"text_analysis"},text:text});_context4.next=3;return fetchPolyfill(URL_TENCENT_TRANSMART,{headers:{"Content-type":"application/json"},method:"POST",body:body,useCache:true});case 3:res=_context4.sent;return _context4.abrupt("return",(_OPT_LANGS_TENCENT$ge=OPT_LANGS_TENCENT.get(res.language))!==null&&_OPT_LANGS_TENCENT$ge!==void 0?_OPT_LANGS_TENCENT$ge:res.language);case 5:case"end":return _context4.stop();}},_callee4);}));return function apiTencentLangdetect(_x6){return _ref4.apply(this,arguments);};}()));/** * 统一翻译接口 * @param {*} param0 * @returns - */var apiTranslate=/*#__PURE__*/function(){var _ref5=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(_ref4){var _OPT_LANGS_SPECIAL$tr,_res$result,_res$result2,_res$choices,_res$candidates,_res$result3;var translator,text,fromLang,toLang,_ref4$apiSetting,apiSetting,_ref4$useCache,useCache,_ref4$usePool,usePool,trText,isSame,from,to,_process$env$REACT_AP,_process$env$REACT_AP2,v1,v2,cacheOpts,transOpts,res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:translator=_ref4.translator,text=_ref4.text,fromLang=_ref4.fromLang,toLang=_ref4.toLang,_ref4$apiSetting=_ref4.apiSetting,apiSetting=_ref4$apiSetting===void 0?{}:_ref4$apiSetting,_ref4$useCache=_ref4.useCache,useCache=_ref4$useCache===void 0?true:_ref4$useCache,_ref4$usePool=_ref4.usePool,usePool=_ref4$usePool===void 0?true:_ref4$usePool;trText="";isSame=false;if(text){_context4.next=5;break;}return _context4.abrupt("return",[trText,true]);case 5:from=(_OPT_LANGS_SPECIAL$tr=OPT_LANGS_SPECIAL[translator].get(fromLang))!==null&&_OPT_LANGS_SPECIAL$tr!==void 0?_OPT_LANGS_SPECIAL$tr:OPT_LANGS_SPECIAL[translator].get("auto");to=OPT_LANGS_SPECIAL[translator].get(toLang);if(to){_context4.next=10;break;}console.log("[trans] target lang: ".concat(toLang," not support"));return _context4.abrupt("return",[trText,isSame]);case 10:// 版本号一/二位升级,旧缓存失效 -_process$env$REACT_AP="1.8.3".split("."),_process$env$REACT_AP2=(0,slicedToArray/* default */.Z)(_process$env$REACT_AP,2),v1=_process$env$REACT_AP2[0],v2=_process$env$REACT_AP2[1];cacheOpts={translator:translator,text:text,fromLang:fromLang,toLang:toLang,version:[v1,v2].join(".")};transOpts={translator:translator,text:text,from:from,to:to};_context4.next=15;return fetch_fetchPolyfill("".concat(URL_CACHE_TRAN,"?").concat(query_string.stringify(cacheOpts)),{useCache:useCache,usePool:usePool,transOpts:transOpts,apiSetting:apiSetting});case 15:res=_context4.sent;_context4.t0=translator;_context4.next=_context4.t0===OPT_TRANS_GOOGLE?19:_context4.t0===OPT_TRANS_MICROSOFT?22:_context4.t0===OPT_TRANS_DEEPL?25:_context4.t0===OPT_TRANS_DEEPLFREE?28:_context4.t0===OPT_TRANS_DEEPLX?31:_context4.t0===OPT_TRANS_BAIDU?34:_context4.t0===OPT_TRANS_TENCENT?36:_context4.t0===OPT_TRANS_OPENAI?39:_context4.t0===OPT_TRANS_GEMINI?42:_context4.t0===OPT_TRANS_CLOUDFLAREAI?45:_context4.t0===OPT_TRANS_CUSTOMIZE?48:51;break;case 19:trText=res.sentences.map(function(item){return item.trans;}).join(" ");isSame=to===res.src;return _context4.abrupt("break",51);case 22:trText=res.map(function(item){return item.translations.map(function(item){return item.text;}).join(" ");}).join(" ");isSame=text===trText;return _context4.abrupt("break",51);case 25:trText=res.translations.map(function(item){return item.text;}).join(" ");isSame=to===res.translations[0].detected_source_language;return _context4.abrupt("break",51);case 28:trText=(_res$result=res.result)===null||_res$result===void 0?void 0:_res$result.texts.map(function(item){return item.text;}).join(" ");isSame=to===((_res$result2=res.result)===null||_res$result2===void 0?void 0:_res$result2.lang);return _context4.abrupt("break",51);case 31:trText=res.data;isSame=to===res.source_lang;return _context4.abrupt("break",51);case 34:// trText = res.trans_result?.data.map((item) => item.dst).join(" "); + */var apiTranslate=/*#__PURE__*/function(){var _ref6=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(_ref5){var _OPT_LANGS_SPECIAL$tr,_res$result,_res$result2,_res$choices,_res$candidates,_res$result3;var translator,text,fromLang,toLang,_ref5$apiSetting,apiSetting,_ref5$useCache,useCache,_ref5$usePool,usePool,trText,isSame,from,to,_process$env$REACT_AP,_process$env$REACT_AP2,v1,v2,cacheOpts,transOpts,res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:translator=_ref5.translator,text=_ref5.text,fromLang=_ref5.fromLang,toLang=_ref5.toLang,_ref5$apiSetting=_ref5.apiSetting,apiSetting=_ref5$apiSetting===void 0?{}:_ref5$apiSetting,_ref5$useCache=_ref5.useCache,useCache=_ref5$useCache===void 0?true:_ref5$useCache,_ref5$usePool=_ref5.usePool,usePool=_ref5$usePool===void 0?true:_ref5$usePool;trText="";isSame=false;if(text){_context5.next=5;break;}return _context5.abrupt("return",[trText,true]);case 5:from=(_OPT_LANGS_SPECIAL$tr=OPT_LANGS_SPECIAL[translator].get(fromLang))!==null&&_OPT_LANGS_SPECIAL$tr!==void 0?_OPT_LANGS_SPECIAL$tr:OPT_LANGS_SPECIAL[translator].get("auto");to=OPT_LANGS_SPECIAL[translator].get(toLang);if(to){_context5.next=10;break;}console.log("[trans] target lang: ".concat(toLang," not support"));return _context5.abrupt("return",[trText,isSame]);case 10:// 版本号一/二位升级,旧缓存失效 +_process$env$REACT_AP="1.8.4".split("."),_process$env$REACT_AP2=(0,slicedToArray/* default */.Z)(_process$env$REACT_AP,2),v1=_process$env$REACT_AP2[0],v2=_process$env$REACT_AP2[1];cacheOpts={translator:translator,text:text,fromLang:fromLang,toLang:toLang,version:[v1,v2].join(".")};transOpts={translator:translator,text:text,from:from,to:to};_context5.next=15;return fetch_fetchPolyfill("".concat(URL_CACHE_TRAN,"?").concat(query_string.stringify(cacheOpts)),{useCache:useCache,usePool:usePool,transOpts:transOpts,apiSetting:apiSetting});case 15:res=_context5.sent;_context5.t0=translator;_context5.next=_context5.t0===OPT_TRANS_GOOGLE?19:_context5.t0===OPT_TRANS_MICROSOFT?22:_context5.t0===OPT_TRANS_DEEPL?25:_context5.t0===OPT_TRANS_DEEPLFREE?28:_context5.t0===OPT_TRANS_DEEPLX?31:_context5.t0===OPT_TRANS_BAIDU?34:_context5.t0===OPT_TRANS_TENCENT?36:_context5.t0===OPT_TRANS_OPENAI?39:_context5.t0===OPT_TRANS_GEMINI?42:_context5.t0===OPT_TRANS_CLOUDFLAREAI?45:_context5.t0===OPT_TRANS_CUSTOMIZE?48:51;break;case 19:trText=res.sentences.map(function(item){return item.trans;}).join(" ");isSame=to===res.src;return _context5.abrupt("break",51);case 22:trText=res.map(function(item){return item.translations.map(function(item){return item.text;}).join(" ");}).join(" ");isSame=text===trText;return _context5.abrupt("break",51);case 25:trText=res.translations.map(function(item){return item.text;}).join(" ");isSame=to===res.translations[0].detected_source_language;return _context5.abrupt("break",51);case 28:trText=(_res$result=res.result)===null||_res$result===void 0?void 0:_res$result.texts.map(function(item){return item.text;}).join(" ");isSame=to===((_res$result2=res.result)===null||_res$result2===void 0?void 0:_res$result2.lang);return _context5.abrupt("break",51);case 31:trText=res.data;isSame=to===res.source_lang;return _context5.abrupt("break",51);case 34:// trText = res.trans_result?.data.map((item) => item.dst).join(" "); // isSame = res.trans_result?.to === res.trans_result?.from; -if(res.type===1){trText=Object.keys(JSON.parse(res.result).content[0].mean[0].cont)[0];isSame=to===res.from;}else if(res.type===2){trText=res.data.map(function(item){return item.dst;}).join(" ");isSame=to===res.from;}return _context4.abrupt("break",51);case 36:trText=res.auto_translation;isSame=text===trText;return _context4.abrupt("break",51);case 39:trText=res===null||res===void 0?void 0:(_res$choices=res.choices)===null||_res$choices===void 0?void 0:_res$choices.map(function(item){return item.message.content;}).join(" ");isSame=text===trText;return _context4.abrupt("break",51);case 42:trText=res===null||res===void 0?void 0:(_res$candidates=res.candidates)===null||_res$candidates===void 0?void 0:_res$candidates.map(function(item){var _item$content;return(_item$content=item.content)===null||_item$content===void 0?void 0:_item$content.parts.map(function(item){return item.text;}).join(" ");}).join(" ");isSame=text===trText;return _context4.abrupt("break",51);case 45:trText=res===null||res===void 0?void 0:(_res$result3=res.result)===null||_res$result3===void 0?void 0:_res$result3.translated_text;isSame=text===trText;return _context4.abrupt("break",51);case 48:trText=res.text;isSame=to===res.from;return _context4.abrupt("break",51);case 51:return _context4.abrupt("return",[trText,isSame,res]);case 52:case"end":return _context4.stop();}},_callee4);}));return function apiTranslate(_x6){return _ref5.apply(this,arguments);};}(); +if(res.type===1){trText=Object.keys(JSON.parse(res.result).content[0].mean[0].cont)[0];isSame=to===res.from;}else if(res.type===2){trText=res.data.map(function(item){return item.dst;}).join(" ");isSame=to===res.from;}return _context5.abrupt("break",51);case 36:trText=res.auto_translation;isSame=text===trText;return _context5.abrupt("break",51);case 39:trText=res===null||res===void 0?void 0:(_res$choices=res.choices)===null||_res$choices===void 0?void 0:_res$choices.map(function(item){return item.message.content;}).join(" ");isSame=text===trText;return _context5.abrupt("break",51);case 42:trText=res===null||res===void 0?void 0:(_res$candidates=res.candidates)===null||_res$candidates===void 0?void 0:_res$candidates.map(function(item){var _item$content;return(_item$content=item.content)===null||_item$content===void 0?void 0:_item$content.parts.map(function(item){return item.text;}).join(" ");}).join(" ");isSame=text===trText;return _context5.abrupt("break",51);case 45:trText=res===null||res===void 0?void 0:(_res$result3=res.result)===null||_res$result3===void 0?void 0:_res$result3.translated_text;isSame=text===trText;return _context5.abrupt("break",51);case 48:trText=res.text;isSame=to===res.from;return _context5.abrupt("break",51);case 51:return _context5.abrupt("return",[trText,isSame,res]);case 52:case"end":return _context5.stop();}},_callee5);}));return function apiTranslate(_x7){return _ref6.apply(this,arguments);};}(); ;// CONCATENATED MODULE: ./node_modules/.pnpm/webdav@5.3.0/node_modules/webdav/dist/web/index.js /*! For license information please see index.js.LICENSE.txt */ var t = { @@ -23278,7 +23360,7 @@ var web_n = {}; return t.length === e && "." !== t && ".." !== t; }; }, - te = "object" === ("undefined" == typeof process ? "undefined" : Nt(process)) && process ? "object" === Nt(({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.3","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_WEBFIXURL":"https://fishjar.github.io/kiss-rules/kiss-webfix.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"})) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.3","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_WEBFIXURL":"https://fishjar.github.io/kiss-rules/kiss-webfix.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"}) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.3","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_WEBFIXURL":"https://fishjar.github.io/kiss-rules/kiss-webfix.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"}).__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix"; + te = "object" === ("undefined" == typeof process ? "undefined" : Nt(process)) && process ? "object" === Nt(({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.4","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"})) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.4","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"}) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.4","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"}).__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix"; It.sep = "win32" === te ? "\\" : "/"; var ee = Symbol("globstar **"); It.GLOBSTAR = ee; @@ -25059,23 +25141,20 @@ var o = web_n.Gr, c().patch("request",function(opts){return fetchApi({input:opts.url,init:{method:opts.method,headers:opts.headers,body:opts.data}});});var syncByWebdav=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(data,_ref){var syncUrl,syncUser,syncKey,client,pathname,filename,isExist,cont,webData;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:syncUrl=_ref.syncUrl,syncUser=_ref.syncUser,syncKey=_ref.syncKey;client=u(syncUrl,{username:syncUser,password:syncKey});pathname="/".concat(APP_LCNAME);filename="/".concat(APP_LCNAME,"/").concat(data.key);_context.next=6;return client.exists(pathname);case 6:_context.t0=_context.sent;if(!(_context.t0===false)){_context.next=10;break;}_context.next=10;return client.createDirectory(pathname);case 10:_context.next=12;return client.exists(filename);case 12:isExist=_context.sent;if(!isExist){_context.next=20;break;}_context.next=16;return client.getFileContents(filename,{format:"text"});case 16:cont=_context.sent;webData=JSON.parse(cont);if(!(webData.updateAt>=data.updateAt)){_context.next=20;break;}return _context.abrupt("return",webData);case 20:_context.next=22;return client.putFileContents(filename,JSON.stringify(data,null,2));case 22:return _context.abrupt("return",data);case 23:case"end":return _context.stop();}},_callee);}));return function syncByWebdav(_x,_x2){return _ref2.apply(this,arguments);};}();var syncByWorker=/*#__PURE__*/function(){var _ref4=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(data,_ref3){var syncUrl,syncKey;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:syncUrl=_ref3.syncUrl,syncKey=_ref3.syncKey;syncUrl=removeEndchar(syncUrl,"/");_context2.next=4;return apiSyncData("".concat(syncUrl,"/sync"),syncKey,data);case 4:return _context2.abrupt("return",_context2.sent);case 5:case"end":return _context2.stop();}},_callee2);}));return function syncByWorker(_x3,_x4){return _ref4.apply(this,arguments);};}();var syncData=/*#__PURE__*/function(){var _ref5=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(key,valueFn){var _yield$getSyncWithDef,syncType,syncUrl,syncUser,syncKey,_yield$getSyncWithDef2,syncMeta,_ref6,_ref6$updateAt,updateAt,_ref6$syncAt,syncAt,value,data,args,res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return getSyncWithDefault();case 2:_yield$getSyncWithDef=_context3.sent;syncType=_yield$getSyncWithDef.syncType;syncUrl=_yield$getSyncWithDef.syncUrl;syncUser=_yield$getSyncWithDef.syncUser;syncKey=_yield$getSyncWithDef.syncKey;_yield$getSyncWithDef2=_yield$getSyncWithDef.syncMeta;syncMeta=_yield$getSyncWithDef2===void 0?{}:_yield$getSyncWithDef2;if(!(!syncUrl||!syncKey||syncType===OPT_SYNCTYPE_WEBDAV&&!syncUser)){_context3.next=11;break;}return _context3.abrupt("return");case 11:_ref6=syncMeta[key]||{},_ref6$updateAt=_ref6.updateAt,updateAt=_ref6$updateAt===void 0?0:_ref6$updateAt,_ref6$syncAt=_ref6.syncAt,syncAt=_ref6$syncAt===void 0?0:_ref6$syncAt;syncAt===0&&(updateAt=0);_context3.next=15;return valueFn();case 15:value=_context3.sent;data={key:key,value:JSON.stringify(value),updateAt:updateAt};args={syncUrl:syncUrl,syncUser:syncUser,syncKey:syncKey};if(!(syncType===OPT_SYNCTYPE_WEBDAV)){_context3.next=24;break;}_context3.next=21;return syncByWebdav(data,args);case 21:_context3.t0=_context3.sent;_context3.next=27;break;case 24:_context3.next=26;return syncByWorker(data,args);case 26:_context3.t0=_context3.sent;case 27:res=_context3.t0;syncMeta[key]={updateAt:res.updateAt,syncAt:Date.now()};_context3.next=31;return updateSync({syncMeta:syncMeta});case 31:return _context3.abrupt("return",{value:JSON.parse(res.value),isNew:res.updateAt>updateAt});case 32:case"end":return _context3.stop();}},_callee3);}));return function syncData(_x5,_x6){return _ref5.apply(this,arguments);};}();/** * 同步设置 * @returns - */var syncSetting=/*#__PURE__*/function(){var _ref7=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.next=2;return syncData(KV_SETTING_KEY,getSettingWithDefault);case 2:res=_context4.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context4.next=6;break;}_context4.next=6;return setSetting(res.value);case 6:case"end":return _context4.stop();}},_callee4);}));return function syncSetting(){return _ref7.apply(this,arguments);};}();var trySyncSetting=/*#__PURE__*/function(){var _ref8=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;_context5.next=3;return syncSetting();case 3:_context5.next=8;break;case 5:_context5.prev=5;_context5.t0=_context5["catch"](0);console.log("[sync setting]",_context5.t0);case 8:case"end":return _context5.stop();}},_callee5,null,[[0,5]]);}));return function trySyncSetting(){return _ref8.apply(this,arguments);};}();/** + */var syncSetting=/*#__PURE__*/function(){var _ref7=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.next=2;return syncData(KV_SETTING_KEY,getSettingWithDefault);case 2:res=_context4.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context4.next=6;break;}_context4.next=6;return setSetting(res.value);case 6:case"end":return _context4.stop();}},_callee4);}));return function syncSetting(){return _ref7.apply(this,arguments);};}();var trySyncSetting=/*#__PURE__*/function(){var _ref8=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;_context5.next=3;return syncSetting();case 3:_context5.next=8;break;case 5:_context5.prev=5;_context5.t0=_context5["catch"](0);log_kissLog(_context5.t0,"sync setting");case 8:case"end":return _context5.stop();}},_callee5,null,[[0,5]]);}));return function trySyncSetting(){return _ref8.apply(this,arguments);};}();/** * 同步规则 * @returns - */var syncRules=/*#__PURE__*/function(){var _ref9=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:_context6.next=2;return syncData(KV_RULES_KEY,getRulesWithDefault);case 2:res=_context6.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context6.next=6;break;}_context6.next=6;return setRules(res.value);case 6:case"end":return _context6.stop();}},_callee6);}));return function syncRules(){return _ref9.apply(this,arguments);};}();var trySyncRules=/*#__PURE__*/function(){var _ref10=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee7(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee7$(_context7){while(1)switch(_context7.prev=_context7.next){case 0:_context7.prev=0;_context7.next=3;return syncRules();case 3:_context7.next=8;break;case 5:_context7.prev=5;_context7.t0=_context7["catch"](0);console.log("[sync user rules]",_context7.t0);case 8:case"end":return _context7.stop();}},_callee7,null,[[0,5]]);}));return function trySyncRules(){return _ref10.apply(this,arguments);};}();/** - * 同步修复规则 - * @returns - */var syncWebfixRules=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref11=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee8(){var res;return _regeneratorRuntime().wrap(function _callee8$(_context8){while(1)switch(_context8.prev=_context8.next){case 0:_context8.next=2;return syncData(KV_WFRULES_KEY,getWebfixRulesWithDefault);case 2:res=_context8.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context8.next=6;break;}_context8.next=6;return setWebfixRules(res.value);case 6:case"end":return _context8.stop();}},_callee8);}));return function syncWebfixRules(){return _ref11.apply(this,arguments);};}()));var trySyncWebfixRules=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref12=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee9(){return _regeneratorRuntime().wrap(function _callee9$(_context9){while(1)switch(_context9.prev=_context9.next){case 0:_context9.prev=0;_context9.next=3;return syncWebfixRules();case 3:_context9.next=8;break;case 5:_context9.prev=5;_context9.t0=_context9["catch"](0);console.log("[sync user webfix rules]",_context9.t0);case 8:case"end":return _context9.stop();}},_callee9,null,[[0,5]]);}));return function trySyncWebfixRules(){return _ref12.apply(this,arguments);};}()));/** + */var syncRules=/*#__PURE__*/function(){var _ref9=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:_context6.next=2;return syncData(KV_RULES_KEY,getRulesWithDefault);case 2:res=_context6.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context6.next=6;break;}_context6.next=6;return setRules(res.value);case 6:case"end":return _context6.stop();}},_callee6);}));return function syncRules(){return _ref9.apply(this,arguments);};}();var trySyncRules=/*#__PURE__*/function(){var _ref10=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee7(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee7$(_context7){while(1)switch(_context7.prev=_context7.next){case 0:_context7.prev=0;_context7.next=3;return syncRules();case 3:_context7.next=8;break;case 5:_context7.prev=5;_context7.t0=_context7["catch"](0);log_kissLog(_context7.t0,"sync user rules");case 8:case"end":return _context7.stop();}},_callee7,null,[[0,5]]);}));return function trySyncRules(){return _ref10.apply(this,arguments);};}();/** * 同步词汇 * @returns - */var syncWords=/*#__PURE__*/function(){var _ref13=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee10(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee10$(_context10){while(1)switch(_context10.prev=_context10.next){case 0:_context10.next=2;return syncData(KV_WORDS_KEY,getWordsWithDefault);case 2:res=_context10.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context10.next=6;break;}_context10.next=6;return setWords(res.value);case 6:case"end":return _context10.stop();}},_callee10);}));return function syncWords(){return _ref13.apply(this,arguments);};}();var trySyncWords=/*#__PURE__*/function(){var _ref14=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee11(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee11$(_context11){while(1)switch(_context11.prev=_context11.next){case 0:_context11.prev=0;_context11.next=3;return syncWords();case 3:_context11.next=8;break;case 5:_context11.prev=5;_context11.t0=_context11["catch"](0);console.log("[sync fav words]",_context11.t0);case 8:case"end":return _context11.stop();}},_callee11,null,[[0,5]]);}));return function trySyncWords(){return _ref14.apply(this,arguments);};}();/** + */var syncWords=/*#__PURE__*/function(){var _ref11=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee8(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee8$(_context8){while(1)switch(_context8.prev=_context8.next){case 0:_context8.next=2;return syncData(KV_WORDS_KEY,getWordsWithDefault);case 2:res=_context8.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context8.next=6;break;}_context8.next=6;return setWords(res.value);case 6:case"end":return _context8.stop();}},_callee8);}));return function syncWords(){return _ref11.apply(this,arguments);};}();var trySyncWords=/*#__PURE__*/function(){var _ref12=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee9(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee9$(_context9){while(1)switch(_context9.prev=_context9.next){case 0:_context9.prev=0;_context9.next=3;return syncWords();case 3:_context9.next=8;break;case 5:_context9.prev=5;_context9.t0=_context9["catch"](0);log_kissLog(_context9.t0,"sync fav words");case 8:case"end":return _context9.stop();}},_callee9,null,[[0,5]]);}));return function trySyncWords(){return _ref12.apply(this,arguments);};}();/** * 同步分享规则 * @param {*} param0 * @returns - */var syncShareRules=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref16=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee12(_ref15){var rules,syncUrl,syncKey,data,args,psk,shareUrl;return _regeneratorRuntime().wrap(function _callee12$(_context12){while(1)switch(_context12.prev=_context12.next){case 0:rules=_ref15.rules,syncUrl=_ref15.syncUrl,syncKey=_ref15.syncKey;data={key:KV_RULES_SHARE_KEY,value:JSON.stringify(rules,null,2),updateAt:Date.now()};args={syncUrl:syncUrl,syncKey:syncKey};_context12.next=5;return syncByWorker(data,args);case 5:_context12.next=7;return sha256(syncKey,KV_SALT_SHARE);case 7:psk=_context12.sent;shareUrl="".concat(syncUrl,"/rules?psk=").concat(psk);return _context12.abrupt("return",shareUrl);case 10:case"end":return _context12.stop();}},_callee12);}));return function syncShareRules(_x7){return _ref16.apply(this,arguments);};}()));/** + */var syncShareRules=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref14=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee10(_ref13){var rules,syncUrl,syncKey,data,args,psk,shareUrl;return _regeneratorRuntime().wrap(function _callee10$(_context10){while(1)switch(_context10.prev=_context10.next){case 0:rules=_ref13.rules,syncUrl=_ref13.syncUrl,syncKey=_ref13.syncKey;data={key:KV_RULES_SHARE_KEY,value:JSON.stringify(rules,null,2),updateAt:Date.now()};args={syncUrl:syncUrl,syncKey:syncKey};_context10.next=5;return syncByWorker(data,args);case 5:_context10.next=7;return sha256(syncKey,KV_SALT_SHARE);case 7:psk=_context10.sent;shareUrl="".concat(syncUrl,"/rules?psk=").concat(psk);return _context10.abrupt("return",shareUrl);case 10:case"end":return _context10.stop();}},_callee10);}));return function syncShareRules(_x7){return _ref14.apply(this,arguments);};}()));/** * 同步个人设置和规则 * @returns - */var syncSettingAndRules=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref17=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee13(){return _regeneratorRuntime().wrap(function _callee13$(_context13){while(1)switch(_context13.prev=_context13.next){case 0:_context13.next=2;return syncSetting();case 2:_context13.next=4;return syncRules();case 4:_context13.next=6;return syncWebfixRules();case 6:_context13.next=8;return syncWords();case 8:case"end":return _context13.stop();}},_callee13);}));return function syncSettingAndRules(){return _ref17.apply(this,arguments);};}()));var trySyncSettingAndRules=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref18=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee14(){return _regeneratorRuntime().wrap(function _callee14$(_context14){while(1)switch(_context14.prev=_context14.next){case 0:_context14.next=2;return trySyncSetting();case 2:_context14.next=4;return trySyncRules();case 4:_context14.next=6;return trySyncWebfixRules();case 6:_context14.next=8;return trySyncWords();case 8:case"end":return _context14.stop();}},_callee14);}));return function trySyncSettingAndRules(){return _ref18.apply(this,arguments);};}())); + */var syncSettingAndRules=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref15=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee11(){return _regeneratorRuntime().wrap(function _callee11$(_context11){while(1)switch(_context11.prev=_context11.next){case 0:_context11.next=2;return syncSetting();case 2:_context11.next=4;return syncRules();case 4:_context11.next=6;return syncWords();case 6:case"end":return _context11.stop();}},_callee11);}));return function syncSettingAndRules(){return _ref15.apply(this,arguments);};}()));var trySyncSettingAndRules=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref16=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee12(){return _regeneratorRuntime().wrap(function _callee12$(_context12){while(1)switch(_context12.prev=_context12.next){case 0:_context12.next=2;return trySyncSetting();case 2:_context12.next=4;return trySyncRules();case 4:_context12.next=6;return trySyncWords();case 6:case"end":return _context12.stop();}},_callee12);}));return function trySyncSettingAndRules(){return _ref16.apply(this,arguments);};}())); ;// CONCATENATED MODULE: ./src/hooks/Sync.js /** * sync hook @@ -33360,54 +33439,9 @@ var DarkMode = __webpack_require__(2675); ;// CONCATENATED MODULE: ./src/views/Options/DarkModeButton.js function DarkModeButton(){var _useDarkMode=useDarkMode(),darkMode=_useDarkMode.darkMode,toggleDarkMode=_useDarkMode.toggleDarkMode;return/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:toggleDarkMode,color:"inherit",children:darkMode?/*#__PURE__*/(0,jsx_runtime.jsx)(LightMode/* default */.Z,{}):/*#__PURE__*/(0,jsx_runtime.jsx)(DarkMode/* default */.Z,{})});} ;// CONCATENATED MODULE: ./src/views/Popup/Header.js -function Header(_ref){var setShowPopup=_ref.setShowPopup;var handleHomepage=function handleHomepage(){window.open("https://github.com/fishjar/kiss-translator","_blank");};return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"flex-start",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:handleHomepage,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Home/* default */.Z,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{component:"div",sx:{userSelect:"none",WebkitUserSelect:"none",fontWeight:"bold"},children:"".concat("KISS Translator"," v").concat("1.8.3")})]}),setShowPopup?/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:function onClick(){setShowPopup(false);},children:/*#__PURE__*/(0,jsx_runtime.jsx)(Close/* default */.Z,{})}):/*#__PURE__*/(0,jsx_runtime.jsx)(DarkModeButton,{})]});} +function Header(_ref){var setShowPopup=_ref.setShowPopup;var handleHomepage=function handleHomepage(){window.open("https://github.com/fishjar/kiss-translator","_blank");};return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"flex-start",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:handleHomepage,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Home/* default */.Z,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{component:"div",sx:{userSelect:"none",WebkitUserSelect:"none",fontWeight:"bold"},children:"".concat("KISS Translator"," v").concat("1.8.4")})]}),setShowPopup?/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:function onClick(){setShowPopup(false);},children:/*#__PURE__*/(0,jsx_runtime.jsx)(Close/* default */.Z,{})}):/*#__PURE__*/(0,jsx_runtime.jsx)(DarkModeButton,{})]});} ;// CONCATENATED MODULE: ./src/libs/iframe.js var isIframe=window.self!==window.top;var sendIframeMsg=function sendIframeMsg(action,args){document.querySelectorAll("iframe").forEach(function(iframe){iframe.contentWindow.postMessage({action:action,args:args},"*");});};var sendParentMsg=function sendParentMsg(action,args){window.parent.postMessage({action:action,args:args},"*");}; -;// CONCATENATED MODULE: ./src/libs/webfix.js -var _fixerMap;/** - * 修复程序类型 - */var FIXER_BR="br";var FIXER_BN="bn";var FIXER_BR_DIV="brToDiv";var FIXER_BN_DIV="bnToDiv";var FIXER_FONTSIZE="fontSize";var FIXER_ALL=[FIXER_BR,FIXER_BN,FIXER_BR_DIV,FIXER_BN_DIV// FIXER_FONTSIZE, -];/** - * 需要修复的站点列表 - * - pattern 匹配网址 - * - selector 需要修复的选择器 - * - rootSelector 需要监听的选择器,可留空 - * - fixer 修复函数,可针对不同网址,选用不同修复函数 - */var DEFAULT_SITES=[{pattern:"www.phoronix.com",selector:".content",rootSelector:"",fixer:FIXER_BR},{pattern:"t.me/s/",selector:".tgme_widget_message_text",rootSelector:".tgme_channel_history",fixer:FIXER_BR},{pattern:"baidu.com",selector:"html",rootSelector:"",fixer:FIXER_FONTSIZE},{pattern:"chat.openai.com",selector:"div[data-testid^=conversation-turn] .items-start > div",rootSelector:"",fixer:FIXER_BN}];/** - * 修复过的标记 - */var fixedSign="kissfixed";/** - * 采用 `br` 换行网站的修复函数 - * 目标是将 `br` 替换成 `p` - * @param {*} node - * @returns - */function brFixer(node){var tag=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"p";if(node.hasAttribute(fixedSign)){return;}node.setAttribute(fixedSign,"true");var gapTags=["BR","WBR"];var newlineTags=["DIV","UL","OL","LI","H1","H2","H3","H4","H5","H6","P","HR","PRE","TABLE","BLOCKQUOTE"];var html="";node.childNodes.forEach(function(child,index){if(index===0){html+="<".concat(tag," class=\"kiss-p\">");}if(gapTags.indexOf(child.nodeName)!==-1){html+="<").concat(tag," class=\"kiss-p\">");}else if(newlineTags.indexOf(child.nodeName)!==-1){html+="").concat(child.outerHTML,"<").concat(tag," class=\"kiss-p\">");}else if(child.outerHTML){html+=child.outerHTML;}else if(child.textContent){html+=child.textContent;}if(index===node.childNodes.length-1){html+="");}});node.innerHTML=html;}function brDivFixer(node){return brFixer(node,"div");}/** - * 目标是将 `\n` 替换成 `p` - * @param {*} node - * @returns - */function bnFixer(node){var tag=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"p";if(node.hasAttribute(fixedSign)){return;}node.setAttribute(fixedSign,"true");node.innerHTML=node.innerHTML.split("\n").map(function(item){return"<".concat(tag," class=\"kiss-p\">").concat(item||" ","");}).join("");}function bnDivFixer(node){return bnFixer(node,"div");}/** - * 修复字体大小问题,如 baidu.com - * @param {*} node - */function fontSizeFixer(node){node.style.cssText+="font-size:1em;";}/** - * 修复程序映射 - */var fixerMap=(_fixerMap={},(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BR,brFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BN,bnFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BR_DIV,brDivFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BN_DIV,bnDivFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_FONTSIZE,fontSizeFixer),_fixerMap);/** - * 查找、监听节点,并执行修复函数 - * @param {*} selector - * @param {*} fixer - * @param {*} rootSelector - */function run(selector,fixer,rootSelector){var mutaObserver=new MutationObserver(function(mutations){mutations.forEach(function(mutation){mutation.addedNodes.forEach(function(addNode){if(addNode&&addNode.querySelectorAll){addNode.querySelectorAll(selector).forEach(function(node){fixer(node);});}});});});var rootNodes=[document];if(rootSelector){rootNodes=document.querySelectorAll(rootSelector);}rootNodes.forEach(function(rootNode){rootNode.querySelectorAll(selector).forEach(function(node){fixer(node);});mutaObserver.observe(rootNode,{childList:true,subtree:true});});}/** - * 同步远程数据 - * @param {*} url - * @returns - */var syncWebfix=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(url){var sites;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.next=2;return apiFetch(url);case 2:sites=_context.sent;_context.next=5;return setWebfix(url,sites);case 5:return _context.abrupt("return",sites);case 6:case"end":return _context.stop();}},_callee);}));return function syncWebfix(_x){return _ref.apply(this,arguments);};}();/** - * 从缓存或远程加载修复站点 - * @param {*} url - * @returns - */var loadOrFetchWebfix=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(url){var sites;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;_context2.next=3;return getWebfix(url);case 3:sites=_context2.sent;if(!(sites!==null&&sites!==void 0&&sites.length)){_context2.next=6;break;}return _context2.abrupt("return",sites);case 6:return _context2.abrupt("return",syncWebfix(url));case 9:_context2.prev=9;_context2.t0=_context2["catch"](0);console.log("[load webfix]",_context2.t0.message);return _context2.abrupt("return",DEFAULT_SITES);case 13:case"end":return _context2.stop();}},_callee2,null,[[0,9]]);}));return function loadOrFetchWebfix(_x2){return _ref2.apply(this,arguments);};}();/** - * 执行fixer - * @param {*} param0 - */function runFixer(_x3){return _runFixer.apply(this,arguments);}/** - * 匹配fixer配置 - */function _runFixer(){_runFixer=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(_ref3){var selector,fixer,rootSelector;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:selector=_ref3.selector,fixer=_ref3.fixer,rootSelector=_ref3.rootSelector;try{run(selector,fixerMap[fixer],rootSelector);}catch(err){console.error("[kiss-webfix run]: ".concat(err.message));}case 2:case"end":return _context3.stop();}},_callee3);}));return _runFixer.apply(this,arguments);}function matchFixer(_x4,_x5){return _matchFixer.apply(this,arguments);}function _matchFixer(){_matchFixer=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(href,_ref4){var injectWebfix,userSites,subSites,sites,i,site;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:injectWebfix=_ref4.injectWebfix;if(injectWebfix){_context4.next=3;break;}return _context4.abrupt("return",null);case 3:_context4.prev=3;_context4.next=6;return storage_getWebfixRulesWithDefault();case 6:userSites=_context4.sent;_context4.next=9;return loadOrFetchWebfix("https://fishjar.github.io/kiss-rules/kiss-webfix.json");case 9:subSites=_context4.sent;sites=[].concat((0,toConsumableArray/* default */.Z)(userSites),(0,toConsumableArray/* default */.Z)(subSites));i=0;case 12:if(!(iinterval)){_context4.next=15;break;}_context4.next=11;return syncAllSubRules(subrulesList);case 11:_context4.next=13;return updateSync({subRulesSyncAt:now});case 13:_context4.next=15;return syncWebfix("https://fishjar.github.io/kiss-rules/kiss-webfix.json");case 15:_context4.next=20;break;case 17:_context4.prev=17;_context4.t0=_context4["catch"](1);console.log("[try sync all subrules]",_context4.t0);case 20:case"end":return _context4.stop();}},_callee4,null,[[1,17]]);}));return function trySyncAllSubRules(_x4){return _ref6.apply(this,arguments);};}();/** +if(!(now-subRulesSyncAt>interval)){_context4.next=13;break;}_context4.next=11;return syncAllSubRules(subrulesList);case 11:_context4.next=13;return updateSync({subRulesSyncAt:now});case 13:_context4.next=18;break;case 15:_context4.prev=15;_context4.t0=_context4["catch"](1);log_kissLog(_context4.t0,"try sync all subrules");case 18:case"end":return _context4.stop();}},_callee4,null,[[1,15]]);}));return function trySyncAllSubRules(_x4){return _ref6.apply(this,arguments);};}();/** * 从缓存或远程加载订阅规则 * @param {*} url * @returns @@ -33436,24 +33470,24 @@ if(!(now-subRulesSyncAt>interval)){_context4.next=15;break;}_context4.next=11;re * @param {*} rules * @param {string} href * @returns - */var matchRule=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(href,_ref){var _rule$selector,_rule$keepSelector,_rule$terms;var _ref$injectRules,injectRules,_ref$subrulesList,subrulesList,_ref$owSubrule,owSubrule,rules,selectedSub,mixRule,subRules,rule,globalRule,_rule$bgColor,_rule$textDiyStyle;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_ref$injectRules=_ref.injectRules,injectRules=_ref$injectRules===void 0?true:_ref$injectRules,_ref$subrulesList=_ref.subrulesList,subrulesList=_ref$subrulesList===void 0?DEFAULT_SUBRULES_LIST:_ref$subrulesList,_ref$owSubrule=_ref.owSubrule,owSubrule=_ref$owSubrule===void 0?DEFAULT_OW_RULE:_ref$owSubrule;_context.next=3;return getRulesWithDefault();case 3:rules=_context.sent;if(!injectRules){_context.next=20;break;}_context.prev=5;selectedSub=subrulesList.find(function(item){return item.selected;});if(!(selectedSub!==null&&selectedSub!==void 0&&selectedSub.url)){_context.next=15;break;}mixRule={};Object.entries(owSubrule).filter(function(_ref3){var _ref4=(0,slicedToArray/* default */.Z)(_ref3,2),key=_ref4[0],val=_ref4[1];if(owSubrule.textStyle===REMAIN_KEY&&(key==="bgColor"||key==="textDiyStyle")){return false;}return val!==REMAIN_KEY;}).forEach(function(_ref5){var _ref6=(0,slicedToArray/* default */.Z)(_ref5,2),key=_ref6[0],val=_ref6[1];mixRule[key]=val;});_context.next=12;return loadOrFetchSubRules(selectedSub.url);case 12:subRules=_context.sent;subRules=subRules.map(function(item){return _objectSpread2(_objectSpread2({},item),mixRule);});rules.splice.apply(rules,[-1,0].concat((0,toConsumableArray/* default */.Z)(subRules)));case 15:_context.next=20;break;case 17:_context.prev=17;_context.t0=_context["catch"](5);console.log("[load injectRules]",_context.t0);case 20:rule=rules.find(function(r){return r.pattern.split(",").some(function(p){return isMatch(href,p.trim());});});globalRule=rules.find(function(r){return r.pattern===GLOBAL_KEY;})||GLOBLA_RULE;if(rule){_context.next=24;break;}return _context.abrupt("return",globalRule);case 24:rule.selector=((_rule$selector=rule.selector)===null||_rule$selector===void 0?void 0:_rule$selector.trim())||globalRule.selector;rule.keepSelector=((_rule$keepSelector=rule.keepSelector)===null||_rule$keepSelector===void 0?void 0:_rule$keepSelector.trim())||globalRule.keepSelector;rule.terms=((_rule$terms=rule.terms)===null||_rule$terms===void 0?void 0:_rule$terms.trim())||globalRule.terms;if(rule.textStyle===GLOBAL_KEY){rule.textStyle=globalRule.textStyle;rule.bgColor=globalRule.bgColor;rule.textDiyStyle=globalRule.textDiyStyle;}else{rule.bgColor=((_rule$bgColor=rule.bgColor)===null||_rule$bgColor===void 0?void 0:_rule$bgColor.trim())||globalRule.bgColor;rule.textDiyStyle=((_rule$textDiyStyle=rule.textDiyStyle)===null||_rule$textDiyStyle===void 0?void 0:_rule$textDiyStyle.trim())||globalRule.textDiyStyle;}["translator","fromLang","toLang","transOpen"].forEach(function(key){if(rule[key]===GLOBAL_KEY){rule[key]=globalRule[key];}});return _context.abrupt("return",rule);case 30:case"end":return _context.stop();}},_callee,null,[[5,17]]);}));return function matchRule(_x,_x2){return _ref2.apply(this,arguments);};}();/** + */var matchRule=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(href,_ref){var injectRules,subrulesList,owSubrule,rules,selectedSub,mixRule,subRules,rule,globalRule,_rule$bgColor,_rule$textDiyStyle;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:injectRules=_ref.injectRules,subrulesList=_ref.subrulesList,owSubrule=_ref.owSubrule;_context.next=3;return getRulesWithDefault();case 3:rules=_context.sent;if(!injectRules){_context.next=20;break;}_context.prev=5;selectedSub=subrulesList.find(function(item){return item.selected;});if(!(selectedSub!==null&&selectedSub!==void 0&&selectedSub.url)){_context.next=15;break;}mixRule={};Object.entries(owSubrule).filter(function(_ref3){var _ref4=(0,slicedToArray/* default */.Z)(_ref3,2),key=_ref4[0],val=_ref4[1];if(owSubrule.textStyle===REMAIN_KEY&&(key==="bgColor"||key==="textDiyStyle")){return false;}return val!==REMAIN_KEY;}).forEach(function(_ref5){var _ref6=(0,slicedToArray/* default */.Z)(_ref5,2),key=_ref6[0],val=_ref6[1];mixRule[key]=val;});_context.next=12;return loadOrFetchSubRules(selectedSub.url);case 12:subRules=_context.sent;subRules=subRules.map(function(item){return _objectSpread2(_objectSpread2({},item),mixRule);});rules.splice.apply(rules,[-1,0].concat((0,toConsumableArray/* default */.Z)(subRules)));case 15:_context.next=20;break;case 17:_context.prev=17;_context.t0=_context["catch"](5);log_kissLog(_context.t0,"load injectRules");case 20:rule=rules.find(function(r){return r.pattern.split(",").some(function(p){return isMatch(href,p.trim());});});globalRule=_objectSpread2(_objectSpread2({},GLOBLA_RULE),rules.find(function(r){return r.pattern===GLOBAL_KEY;})||{});if(rule){_context.next=24;break;}return _context.abrupt("return",globalRule);case 24:["selector","keepSelector","terms","selectStyle","parentStyle","injectJs","injectCss","fixerSelector"].forEach(function(key){var _rule$key;if(!((_rule$key=rule[key])!==null&&_rule$key!==void 0&&_rule$key.trim())){rule[key]=globalRule[key];}});["translator","fromLang","toLang","transOpen","transOnly","transTiming","transTag","transTitle","detectRemote","fixerFunc"].forEach(function(key){if(rule[key]===undefined||rule[key]===GLOBAL_KEY){rule[key]=globalRule[key];}});if(!rule.skipLangs||rule.skipLangs.length===0){rule.skipLangs=globalRule.skipLangs;}if(rule.textStyle===GLOBAL_KEY){rule.textStyle=globalRule.textStyle;rule.bgColor=globalRule.bgColor;rule.textDiyStyle=globalRule.textDiyStyle;}else{rule.bgColor=((_rule$bgColor=rule.bgColor)===null||_rule$bgColor===void 0?void 0:_rule$bgColor.trim())||globalRule.bgColor;rule.textDiyStyle=((_rule$textDiyStyle=rule.textDiyStyle)===null||_rule$textDiyStyle===void 0?void 0:_rule$textDiyStyle.trim())||globalRule.textDiyStyle;}return _context.abrupt("return",rule);case 29:case"end":return _context.stop();}},_callee,null,[[5,17]]);}));return function matchRule(_x,_x2){return _ref2.apply(this,arguments);};}();/** * 检查过滤rules * @param {*} rules * @returns - */var checkRules=function checkRules(rules){if(type(rules)==="string"){rules=JSON.parse(rules);}if(type(rules)!=="array"){throw new Error("data error");}var fromLangs=OPT_LANGS_FROM.map(function(item){return item[0];});var toLangs=OPT_LANGS_TO.map(function(item){return item[0];});var patternSet=new Set();rules=rules.filter(function(rule){return type(rule)==="object";}).filter(function(_ref7){var pattern=_ref7.pattern;if(type(pattern)!=="string"||patternSet.has(pattern.trim())){return false;}patternSet.add(pattern.trim());return true;}).map(function(_ref8){var pattern=_ref8.pattern,selector=_ref8.selector,keepSelector=_ref8.keepSelector,terms=_ref8.terms,translator=_ref8.translator,fromLang=_ref8.fromLang,toLang=_ref8.toLang,textStyle=_ref8.textStyle,transOpen=_ref8.transOpen,bgColor=_ref8.bgColor,textDiyStyle=_ref8.textDiyStyle;return{pattern:pattern.trim(),selector:type(selector)==="string"?selector:"",keepSelector:type(keepSelector)==="string"?keepSelector:"",terms:type(terms)==="string"?terms:"",bgColor:type(bgColor)==="string"?bgColor:"",textDiyStyle:type(textDiyStyle)==="string"?textDiyStyle:"",translator:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(OPT_TRANS_ALL)),translator),fromLang:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(fromLangs)),fromLang),toLang:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(toLangs)),toLang),textStyle:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(OPT_STYLE_ALL)),textStyle),transOpen:matchValue([GLOBAL_KEY,"true","false"],transOpen)};});return rules;};/** + */var checkRules=function checkRules(rules){if(type(rules)==="string"){rules=JSON.parse(rules);}if(type(rules)!=="array"){throw new Error("data error");}var fromLangs=OPT_LANGS_FROM.map(function(item){return item[0];});var toLangs=OPT_LANGS_TO.map(function(item){return item[0];});var patternSet=new Set();rules=rules.filter(function(rule){return type(rule)==="object";}).filter(function(_ref7){var pattern=_ref7.pattern;if(type(pattern)!=="string"||patternSet.has(pattern.trim())){return false;}patternSet.add(pattern.trim());return true;}).map(function(_ref8){var pattern=_ref8.pattern,selector=_ref8.selector,keepSelector=_ref8.keepSelector,terms=_ref8.terms,selectStyle=_ref8.selectStyle,parentStyle=_ref8.parentStyle,injectJs=_ref8.injectJs,injectCss=_ref8.injectCss,translator=_ref8.translator,fromLang=_ref8.fromLang,toLang=_ref8.toLang,textStyle=_ref8.textStyle,transOpen=_ref8.transOpen,bgColor=_ref8.bgColor,textDiyStyle=_ref8.textDiyStyle,transOnly=_ref8.transOnly,transTiming=_ref8.transTiming,transTag=_ref8.transTag,transTitle=_ref8.transTitle,detectRemote=_ref8.detectRemote,skipLangs=_ref8.skipLangs,fixerSelector=_ref8.fixerSelector,fixerFunc=_ref8.fixerFunc;return{pattern:pattern.trim(),selector:type(selector)==="string"?selector:"",keepSelector:type(keepSelector)==="string"?keepSelector:"",terms:type(terms)==="string"?terms:"",selectStyle:type(selectStyle)==="string"?selectStyle:"",parentStyle:type(parentStyle)==="string"?parentStyle:"",injectJs:type(injectJs)==="string"?injectJs:"",injectCss:type(injectCss)==="string"?injectCss:"",bgColor:type(bgColor)==="string"?bgColor:"",textDiyStyle:type(textDiyStyle)==="string"?textDiyStyle:"",translator:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(OPT_TRANS_ALL)),translator),fromLang:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(fromLangs)),fromLang),toLang:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(toLangs)),toLang),textStyle:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(OPT_STYLE_ALL)),textStyle),transOpen:matchValue([GLOBAL_KEY,"true","false"],transOpen),transOnly:matchValue([GLOBAL_KEY,"true","false"],transOnly),transTiming:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(OPT_TIMING_ALL)),transTiming),transTag:matchValue([GLOBAL_KEY,"span","font"],transTag),transTitle:matchValue([GLOBAL_KEY,"true","false"],transTitle),detectRemote:matchValue([GLOBAL_KEY,"true","false"],detectRemote),skipLangs:type(skipLangs)==="array"?skipLangs:[],fixerSelector:type(fixerSelector)==="string"?fixerSelector:"",fixerFunc:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(FIXER_ALL)),fixerFunc)};});return rules;};/** * 保存或更新rule * @param {*} newRule */var saveRule=/*#__PURE__*/function(){var _ref9=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(newRule){var rules,rule;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return getRulesWithDefault();case 2:rules=_context2.sent;rule=rules.find(function(item){return isMatch(newRule.pattern,item.pattern);});if(rule&&rule.pattern!==GLOBAL_KEY){Object.assign(rule,_objectSpread2(_objectSpread2({},newRule),{},{pattern:rule.pattern}));}else{rules.unshift(newRule);}_context2.next=7;return setRules(rules);case 7:trySyncRules();case 8:case"end":return _context2.stop();}},_callee2);}));return function saveRule(_x3){return _ref9.apply(this,arguments);};}(); ;// CONCATENATED MODULE: ./src/libs/index.js /** * 清除缓存数据 - */var tryClearCaches=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:try{caches.delete(CACHE_NAME);}catch(err){console.log("[clean caches]",err.message);}case 1:case"end":return _context.stop();}},_callee);}));return function tryClearCaches(){return _ref.apply(this,arguments);};}();/** + */var tryClearCaches=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:try{caches.delete(CACHE_NAME);}catch(err){log_kissLog(err,"clean caches");}case 1:case"end":return _context.stop();}},_callee);}));return function tryClearCaches(){return _ref.apply(this,arguments);};}();/** * 语言识别 * @param {*} q * @returns - */var tryDetectLang=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(q){var useRemote,lang,_browser$i18n,_res$languages,_res$languages$,res,_args2=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:useRemote=_args2.length>1&&_args2[1]!==undefined?_args2[1]:false;lang="";if(!useRemote){_context2.next=12;break;}_context2.prev=3;_context2.next=6;return apiBaiduLangdetect(q);case 6:lang=_context2.sent;_context2.next=12;break;case 9:_context2.prev=9;_context2.t0=_context2["catch"](3);console.log("[detect lang remote]",_context2.t0.message);case 12:if(lang){_context2.next=23;break;}_context2.prev=13;_context2.next=16;return browser===null||browser===void 0?void 0:(_browser$i18n=browser.i18n)===null||_browser$i18n===void 0?void 0:_browser$i18n.detectLanguage(q);case 16:res=_context2.sent;lang=res===null||res===void 0?void 0:(_res$languages=res.languages)===null||_res$languages===void 0?void 0:(_res$languages$=_res$languages[0])===null||_res$languages$===void 0?void 0:_res$languages$.language;_context2.next=23;break;case 20:_context2.prev=20;_context2.t1=_context2["catch"](13);console.log("[detect lang local]",_context2.t1.message);case 23:return _context2.abrupt("return",lang);case 24:case"end":return _context2.stop();}},_callee2,null,[[3,9],[13,20]]);}));return function tryDetectLang(_x){return _ref2.apply(this,arguments);};}(); + */var tryDetectLang=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(q){var useRemote,lang,_browser$i18n,_res$languages,_res$languages$,res,_args2=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:useRemote=_args2.length>1&&_args2[1]!==undefined?_args2[1]:false;lang="";if(!useRemote){_context2.next=12;break;}_context2.prev=3;_context2.next=6;return apiBaiduLangdetect(q);case 6:lang=_context2.sent;_context2.next=12;break;case 9:_context2.prev=9;_context2.t0=_context2["catch"](3);log_kissLog(_context2.t0,"detect lang remote");case 12:if(lang){_context2.next=23;break;}_context2.prev=13;_context2.next=16;return browser===null||browser===void 0?void 0:(_browser$i18n=browser.i18n)===null||_browser$i18n===void 0?void 0:_browser$i18n.detectLanguage(q);case 16:res=_context2.sent;lang=res===null||res===void 0?void 0:(_res$languages=res.languages)===null||_res$languages===void 0?void 0:(_res$languages$=_res$languages[0])===null||_res$languages$===void 0?void 0:_res$languages$.language;_context2.next=23;break;case 20:_context2.prev=20;_context2.t1=_context2["catch"](13);log_kissLog(_context2.t1,"detect lang local");case 23:return _context2.abrupt("return",lang);case 24:case"end":return _context2.stop();}},_callee2,null,[[3,9],[13,20]]);}));return function tryDetectLang(_x){return _ref2.apply(this,arguments);};}(); ;// CONCATENATED MODULE: ./src/views/Popup/index.js -function Popup(_ref){var setShowPopup=_ref.setShowPopup,tran=_ref.translator;var i18n=useI18n();var _useState=(0,react.useState)(tran===null||tran===void 0?void 0:tran.rule),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),rule=_useState2[0],setRule=_useState2[1];var _useState3=(0,react.useState)({}),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),commands=_useState4[0],setCommands=_useState4[1];var handleOpenSetting=function handleOpenSetting(){if(!tran){browser===null||browser===void 0?void 0:browser.runtime.openOptionsPage();}else if(isExt){sendBgMsg(MSG_OPEN_OPTIONS);}else{window.open("https://fishjar.github.io/kiss-translator/options.html","_blank");}setShowPopup&&setShowPopup(false);};var handleTransToggle=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(e){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setRule(_objectSpread2(_objectSpread2({},rule),{},{transOpen:e.target.checked?"true":"false"}));if(tran){_context.next=7;break;}_context.next=5;return sendTabMsg(MSG_TRANS_TOGGLE);case 5:_context.next=9;break;case 7:tran.toggle();sendIframeMsg(MSG_TRANS_TOGGLE);case 9:_context.next=14;break;case 11:_context.prev=11;_context.t0=_context["catch"](0);console.log("[toggle trans]",_context.t0);case 14:case"end":return _context.stop();}},_callee,null,[[0,11]]);}));return function handleTransToggle(_x){return _ref2.apply(this,arguments);};}();var handleChange=/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(e){var _e$target,name,value;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;_e$target=e.target,name=_e$target.name,value=_e$target.value;setRule(function(pre){return _objectSpread2(_objectSpread2({},pre),{},(0,defineProperty/* default */.Z)({},name,value));});if(tran){_context2.next=8;break;}_context2.next=6;return sendTabMsg(MSG_TRANS_PUTRULE,(0,defineProperty/* default */.Z)({},name,value));case 6:_context2.next=10;break;case 8:tran.updateRule((0,defineProperty/* default */.Z)({},name,value));sendIframeMsg(MSG_TRANS_PUTRULE,(0,defineProperty/* default */.Z)({},name,value));case 10:_context2.next=15;break;case 12:_context2.prev=12;_context2.t0=_context2["catch"](0);console.log("[update rule]",_context2.t0);case 15:case"end":return _context2.stop();}},_callee2,null,[[0,12]]);}));return function handleChange(_x2){return _ref3.apply(this,arguments);};}();var handleClearCache=function handleClearCache(){tryClearCaches();};var handleSaveRule=/*#__PURE__*/function(){var _ref4=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){var href,tab,newRule;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.prev=0;href=window.location.href;if(tran){_context3.next=7;break;}_context3.next=5;return getTabInfo();case 5:tab=_context3.sent;href=tab.url;case 7:newRule=_objectSpread2(_objectSpread2({},rule),{},{pattern:href.split("/")[2]});if(isExt&&tran){sendBgMsg(MSG_SAVE_RULE,newRule);}else{saveRule(newRule);}_context3.next=14;break;case 11:_context3.prev=11;_context3.t0=_context3["catch"](0);console.log("[save rule]",_context3.t0);case 14:case"end":return _context3.stop();}},_callee3,null,[[0,11]]);}));return function handleSaveRule(){return _ref4.apply(this,arguments);};}();(0,react.useEffect)(function(){if(tran){return;}asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;_context4.next=3;return sendTabMsg(MSG_TRANS_GETRULE);case 3:res=_context4.sent;if(!res.error){setRule(res.data);}_context4.next=10;break;case 7:_context4.prev=7;_context4.t0=_context4["catch"](0);console.log("[query rule]",_context4.t0);case 10:case"end":return _context4.stop();}},_callee4,null,[[0,7]]);}))();},[tran]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){var _commands,res,shortcuts;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;_commands={};if(!isExt){_context5.next=9;break;}_context5.next=5;return sendBgMsg(MSG_COMMAND_SHORTCUTS);case 5:res=_context5.sent;if(!res.error){res.data.forEach(function(_ref7){var name=_ref7.name,shortcut=_ref7.shortcut;_commands[name]=shortcut;});}_context5.next=11;break;case 9:shortcuts=tran.setting.shortcuts;if(shortcuts){Object.entries(shortcuts).forEach(function(_ref8){var _ref9=(0,slicedToArray/* default */.Z)(_ref8,2),key=_ref9[0],val=_ref9[1];_commands[key]=val.join("+");});}case 11:setCommands(_commands);_context5.next=17;break;case 14:_context5.prev=14;_context5.t0=_context5["catch"](0);console.log("[query cmds]",_context5.t0);case 17:case"end":return _context5.stop();}},_callee5,null,[[0,14]]);}))();},[tran]);if(!rule){return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{minWidth:300,children:[!tran&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Header,{}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{sx:{p:2},spacing:3,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:handleOpenSetting,children:i18n("setting")})})]});}var transOpen=rule.transOpen,translator=rule.translator,fromLang=rule.fromLang,toLang=rule.toLang,textStyle=rule.textStyle;return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{minWidth:300,children:[!tran&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Header,{}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{sx:{p:2},spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:2,children:/*#__PURE__*/(0,jsx_runtime.jsx)(FormControlLabel_FormControlLabel,{control:/*#__PURE__*/(0,jsx_runtime.jsx)(Switch_Switch,{checked:transOpen==="true",onChange:handleTransToggle}),label:commands["toggleTranslate"]?"".concat(i18n("translate_alt"),"(").concat(commands["toggleTranslate"],")"):i18n("translate_alt")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},size:"small",value:translator,name:"translator",label:i18n("translate_service"),onChange:handleChange,children:OPT_TRANS_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:item},item);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},size:"small",value:fromLang,name:"fromLang",label:i18n("from_lang"),onChange:handleChange,children:OPT_LANGS_FROM.map(function(_ref10){var _ref11=(0,slicedToArray/* default */.Z)(_ref10,2),lang=_ref11[0],name=_ref11[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},size:"small",value:toLang,name:"toLang",label:i18n("to_lang"),onChange:handleChange,children:OPT_LANGS_TO.map(function(_ref12){var _ref13=(0,slicedToArray/* default */.Z)(_ref12,2),lang=_ref13[0],name=_ref13[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},size:"small",value:textStyle,name:"textStyle",label:commands["toggleStyle"]?"".concat(i18n("text_style_alt"),"(").concat(commands["toggleStyle"],")"):i18n("text_style_alt"),onChange:handleChange,children:OPT_STYLE_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:i18n(item)},item);})}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:handleSaveRule,children:i18n("save_rule")}),!isExt&&/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:handleClearCache,children:i18n("clear_cache")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:handleOpenSetting,children:i18n("setting")})]})]})]});} +function Popup(_ref){var setShowPopup=_ref.setShowPopup,tran=_ref.translator;var i18n=useI18n();var _useState=(0,react.useState)(tran===null||tran===void 0?void 0:tran.rule),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),rule=_useState2[0],setRule=_useState2[1];var _useState3=(0,react.useState)({}),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),commands=_useState4[0],setCommands=_useState4[1];var handleOpenSetting=function handleOpenSetting(){if(!tran){browser===null||browser===void 0?void 0:browser.runtime.openOptionsPage();}else if(isExt){sendBgMsg(MSG_OPEN_OPTIONS);}else{window.open("https://fishjar.github.io/kiss-translator/options.html","_blank");}setShowPopup&&setShowPopup(false);};var handleTransToggle=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(e){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setRule(_objectSpread2(_objectSpread2({},rule),{},{transOpen:e.target.checked?"true":"false"}));if(tran){_context.next=7;break;}_context.next=5;return sendTabMsg(MSG_TRANS_TOGGLE);case 5:_context.next=9;break;case 7:tran.toggle();sendIframeMsg(MSG_TRANS_TOGGLE);case 9:_context.next=14;break;case 11:_context.prev=11;_context.t0=_context["catch"](0);log_kissLog(_context.t0,"toggle trans");case 14:case"end":return _context.stop();}},_callee,null,[[0,11]]);}));return function handleTransToggle(_x){return _ref2.apply(this,arguments);};}();var handleChange=/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(e){var _e$target,name,value;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;_e$target=e.target,name=_e$target.name,value=_e$target.value;setRule(function(pre){return _objectSpread2(_objectSpread2({},pre),{},(0,defineProperty/* default */.Z)({},name,value));});if(tran){_context2.next=8;break;}_context2.next=6;return sendTabMsg(MSG_TRANS_PUTRULE,(0,defineProperty/* default */.Z)({},name,value));case 6:_context2.next=10;break;case 8:tran.updateRule((0,defineProperty/* default */.Z)({},name,value));sendIframeMsg(MSG_TRANS_PUTRULE,(0,defineProperty/* default */.Z)({},name,value));case 10:_context2.next=15;break;case 12:_context2.prev=12;_context2.t0=_context2["catch"](0);log_kissLog(_context2.t0,"update rule");case 15:case"end":return _context2.stop();}},_callee2,null,[[0,12]]);}));return function handleChange(_x2){return _ref3.apply(this,arguments);};}();var handleClearCache=function handleClearCache(){tryClearCaches();};var handleSaveRule=/*#__PURE__*/function(){var _ref4=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){var href,tab,newRule;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.prev=0;href=window.location.href;if(tran){_context3.next=7;break;}_context3.next=5;return getCurTab();case 5:tab=_context3.sent;href=tab.url;case 7:newRule=_objectSpread2(_objectSpread2({},rule),{},{pattern:href.split("/")[2]});if(isExt&&tran){sendBgMsg(MSG_SAVE_RULE,newRule);}else{saveRule(newRule);}_context3.next=14;break;case 11:_context3.prev=11;_context3.t0=_context3["catch"](0);log_kissLog(_context3.t0,"save rule");case 14:case"end":return _context3.stop();}},_callee3,null,[[0,11]]);}));return function handleSaveRule(){return _ref4.apply(this,arguments);};}();(0,react.useEffect)(function(){if(tran){return;}asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;_context4.next=3;return sendTabMsg(MSG_TRANS_GETRULE);case 3:res=_context4.sent;if(!res.error){setRule(res.data);}_context4.next=10;break;case 7:_context4.prev=7;_context4.t0=_context4["catch"](0);log_kissLog(_context4.t0,"query rule");case 10:case"end":return _context4.stop();}},_callee4,null,[[0,7]]);}))();},[tran]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){var _commands,res,shortcuts;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;_commands={};if(!isExt){_context5.next=9;break;}_context5.next=5;return sendBgMsg(MSG_COMMAND_SHORTCUTS);case 5:res=_context5.sent;res.forEach(function(_ref7){var name=_ref7.name,shortcut=_ref7.shortcut;_commands[name]=shortcut;});_context5.next=11;break;case 9:shortcuts=tran.setting.shortcuts;if(shortcuts){Object.entries(shortcuts).forEach(function(_ref8){var _ref9=(0,slicedToArray/* default */.Z)(_ref8,2),key=_ref9[0],val=_ref9[1];_commands[key]=val.join("+");});}case 11:setCommands(_commands);_context5.next=17;break;case 14:_context5.prev=14;_context5.t0=_context5["catch"](0);log_kissLog(_context5.t0,"query cmds");case 17:case"end":return _context5.stop();}},_callee5,null,[[0,14]]);}))();},[tran]);if(!rule){return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{minWidth:300,children:[!tran&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Header,{}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{sx:{p:2},spacing:3,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:handleOpenSetting,children:i18n("setting")})})]});}var transOpen=rule.transOpen,translator=rule.translator,fromLang=rule.fromLang,toLang=rule.toLang,textStyle=rule.textStyle;return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{minWidth:300,children:[!tran&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Header,{}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{sx:{p:2},spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:2,children:/*#__PURE__*/(0,jsx_runtime.jsx)(FormControlLabel_FormControlLabel,{control:/*#__PURE__*/(0,jsx_runtime.jsx)(Switch_Switch,{checked:transOpen==="true",onChange:handleTransToggle}),label:commands["toggleTranslate"]?"".concat(i18n("translate_alt"),"(").concat(commands["toggleTranslate"],")"):i18n("translate_alt")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},size:"small",value:translator,name:"translator",label:i18n("translate_service"),onChange:handleChange,children:OPT_TRANS_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:item},item);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},size:"small",value:fromLang,name:"fromLang",label:i18n("from_lang"),onChange:handleChange,children:OPT_LANGS_FROM.map(function(_ref10){var _ref11=(0,slicedToArray/* default */.Z)(_ref10,2),lang=_ref11[0],name=_ref11[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},size:"small",value:toLang,name:"toLang",label:i18n("to_lang"),onChange:handleChange,children:OPT_LANGS_TO.map(function(_ref12){var _ref13=(0,slicedToArray/* default */.Z)(_ref12,2),lang=_ref13[0],name=_ref13[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},size:"small",value:textStyle,name:"textStyle",label:commands["toggleStyle"]?"".concat(i18n("text_style_alt"),"(").concat(commands["toggleStyle"],")"):i18n("text_style_alt"),onChange:handleChange,children:OPT_STYLE_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:i18n(item)},item);})}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:handleSaveRule,children:i18n("save_rule")}),!isExt&&/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:handleClearCache,children:i18n("clear_cache")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:handleOpenSetting,children:i18n("setting")})]})]})]});} ;// CONCATENATED MODULE: ./src/libs/shortcut.js /** * 键盘快捷键监听 @@ -33479,11 +33513,11 @@ function Popup(_ref){var setShowPopup=_ref.setShowPopup,tran=_ref.translator;var ;// CONCATENATED MODULE: ./src/views/Action/index.js function Action(_ref){var _fab$x,_fab$y;var translator=_ref.translator,fab=_ref.fab;var fabWidth=40;var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),showPopup=_useState2[0],setShowPopup=_useState2[1];var _useState3=(0,react.useState)({w:window.innerWidth,h:window.innerHeight}),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),windowSize=_useState4[0],setWindowSize=_useState4[1];var _useState5=(0,react.useState)(false),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),moved=_useState6[0],setMoved=_useState6[1];var handleWindowResize=(0,react.useMemo)(function(){return debounce(function(){setWindowSize({w:window.innerWidth,h:window.innerHeight});});},[]);var handleWindowClick=function handleWindowClick(e){setShowPopup(false);};var handleStart=(0,react.useCallback)(function(){setMoved(false);},[]);var handleMove=(0,react.useCallback)(function(){setMoved(true);},[]);(0,react.useEffect)(function(){if(!isGm){return;}// 注册快捷键 var shortcuts=translator.setting.shortcuts||DEFAULT_SHORTCUTS;var clearShortcuts=[shortcutRegister(shortcuts[OPT_SHORTCUT_TRANSLATE],function(){translator.toggle();sendIframeMsg(MSG_TRANS_TOGGLE);setShowPopup(false);}),shortcutRegister(shortcuts[OPT_SHORTCUT_STYLE],function(){translator.toggleStyle();sendIframeMsg(MSG_TRANS_TOGGLE_STYLE);setShowPopup(false);}),shortcutRegister(shortcuts[OPT_SHORTCUT_POPUP],function(){setShowPopup(function(pre){return!pre;});}),shortcutRegister(shortcuts[OPT_SHORTCUT_SETTING],function(){window.open("https://fishjar.github.io/kiss-translator/options.html","_blank");})];return function(){clearShortcuts.forEach(function(fn){fn();});};},[translator]);(0,react.useEffect)(function(){if(!isGm){return;}// 注册菜单 -try{var menuCommandIds=[];var contextMenuType=translator.setting.contextMenuType;contextMenuType!==0&&menuCommandIds.push(GM.registerMenuCommand("Toggle Translate",function(event){translator.toggle();sendIframeMsg(MSG_TRANS_TOGGLE);setShowPopup(false);},"Q"),GM.registerMenuCommand("Toggle Style",function(event){translator.toggleStyle();sendIframeMsg(MSG_TRANS_TOGGLE_STYLE);setShowPopup(false);},"C"),GM.registerMenuCommand("Open Menu",function(event){setShowPopup(function(pre){return!pre;});},"K"),GM.registerMenuCommand("Open Setting",function(event){window.open("https://fishjar.github.io/kiss-translator/options.html","_blank");},"O"));return function(){menuCommandIds.forEach(function(id){GM.unregisterMenuCommand(id);});};}catch(err){console.log("[registerMenuCommand]",err);}},[translator]);(0,react.useEffect)(function(){window.addEventListener("resize",handleWindowResize);return function(){window.removeEventListener("resize",handleWindowResize);};},[handleWindowResize]);(0,react.useEffect)(function(){window.addEventListener("click",handleWindowClick);return function(){window.removeEventListener("click",handleWindowClick);};},[]);var popProps=(0,react.useMemo)(function(){var width=Math.min(windowSize.w,300);var height=Math.min(windowSize.h,442);var left=(windowSize.w-width)/2;var top=(windowSize.h-height)/2;return{windowSize:windowSize,width:width,height:height,left:left,top:top};},[windowSize]);var fabProps={windowSize:windowSize,width:fabWidth,height:fabWidth,left:(_fab$x=fab.x)!==null&&_fab$x!==void 0?_fab$x:-fabWidth,top:(_fab$y=fab.y)!==null&&_fab$y!==void 0?_fab$y:windowSize.h/2};return/*#__PURE__*/(0,jsx_runtime.jsx)(SettingProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Theme,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Draggable,_objectSpread2(_objectSpread2({},popProps),{},{show:showPopup,onStart:handleStart,onMove:handleMove,usePaper:true,handler:/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{style:{cursor:"move"},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Header,{setShowPopup:setShowPopup}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{})]}),children:showPopup&&/*#__PURE__*/(0,jsx_runtime.jsx)(Popup,{setShowPopup:setShowPopup,translator:translator})}),"pop"),/*#__PURE__*/(0,jsx_runtime.jsx)(Draggable,_objectSpread2(_objectSpread2({snapEdge:true},fabProps),{},{show:fab.isHide?false:!showPopup,onStart:handleStart,onMove:handleMove,handler:/*#__PURE__*/(0,jsx_runtime.jsx)(Fab_Fab,{size:"small",color:"primary",onClick:function onClick(e){if(!moved){setShowPopup(function(pre){return!pre;});}},children:/*#__PURE__*/(0,jsx_runtime.jsx)(Translate/* default */.Z,{sx:{width:24,height:24}})})}),"fab")]})});} +try{var menuCommandIds=[];var contextMenuType=translator.setting.contextMenuType;contextMenuType!==0&&menuCommandIds.push(GM.registerMenuCommand("Toggle Translate",function(event){translator.toggle();sendIframeMsg(MSG_TRANS_TOGGLE);setShowPopup(false);},"Q"),GM.registerMenuCommand("Toggle Style",function(event){translator.toggleStyle();sendIframeMsg(MSG_TRANS_TOGGLE_STYLE);setShowPopup(false);},"C"),GM.registerMenuCommand("Open Menu",function(event){setShowPopup(function(pre){return!pre;});},"K"),GM.registerMenuCommand("Open Setting",function(event){window.open("https://fishjar.github.io/kiss-translator/options.html","_blank");},"O"));return function(){menuCommandIds.forEach(function(id){GM.unregisterMenuCommand(id);});};}catch(err){log_kissLog(err,"registerMenuCommand");}},[translator]);(0,react.useEffect)(function(){window.addEventListener("resize",handleWindowResize);return function(){window.removeEventListener("resize",handleWindowResize);};},[handleWindowResize]);(0,react.useEffect)(function(){window.addEventListener("click",handleWindowClick);return function(){window.removeEventListener("click",handleWindowClick);};},[]);var popProps=(0,react.useMemo)(function(){var width=Math.min(windowSize.w,300);var height=Math.min(windowSize.h,442);var left=(windowSize.w-width)/2;var top=(windowSize.h-height)/2;return{windowSize:windowSize,width:width,height:height,left:left,top:top};},[windowSize]);var fabProps={windowSize:windowSize,width:fabWidth,height:fabWidth,left:(_fab$x=fab.x)!==null&&_fab$x!==void 0?_fab$x:-fabWidth,top:(_fab$y=fab.y)!==null&&_fab$y!==void 0?_fab$y:windowSize.h/2};return/*#__PURE__*/(0,jsx_runtime.jsx)(SettingProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Theme,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Draggable,_objectSpread2(_objectSpread2({},popProps),{},{show:showPopup,onStart:handleStart,onMove:handleMove,usePaper:true,handler:/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{style:{cursor:"move"},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Header,{setShowPopup:setShowPopup}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{})]}),children:showPopup&&/*#__PURE__*/(0,jsx_runtime.jsx)(Popup,{setShowPopup:setShowPopup,translator:translator})}),"pop"),/*#__PURE__*/(0,jsx_runtime.jsx)(Draggable,_objectSpread2(_objectSpread2({snapEdge:true},fabProps),{},{show:fab.isHide?false:!showPopup,onStart:handleStart,onMove:handleMove,handler:/*#__PURE__*/(0,jsx_runtime.jsx)(Fab_Fab,{size:"small",color:"primary",onClick:function onClick(e){if(!moved){setShowPopup(function(pre){return!pre;});}},children:/*#__PURE__*/(0,jsx_runtime.jsx)(Translate/* default */.Z,{sx:{width:24,height:24}})})}),"fab")]})});} ;// CONCATENATED MODULE: ./src/libs/svg.js var loadingSvg="\n\n \n \n \n \n \n \n \n \n \n\n"; ;// CONCATENATED MODULE: ./src/views/Content/LoadingIcon.js -function LoadingIcon(){return/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{display:"inline-block",width:"1.2em",height:"1em"},dangerouslySetInnerHTML:{__html:loadingSvg}});} +function LoadingIcon(){return/*#__PURE__*/(0,jsx_runtime.jsx)("span",{style:{display:"inline-block",width:"1.2em",height:"1em"},dangerouslySetInnerHTML:{__html:loadingSvg}});} ;// CONCATENATED MODULE: ./src/hooks/Translate.js /** * 翻译hook @@ -33491,26 +33525,32 @@ function LoadingIcon(){return/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{disp * @param {*} rule * @param {*} setting * @returns - */function useTranslate(q,rule,setting){var _useState=(0,react.useState)(""),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),text=_useState2[0],setText=_useState2[1];var _useState3=(0,react.useState)(false),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),loading=_useState4[0],setLoading=_useState4[1];var _useState5=(0,react.useState)(false),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),sameLang=_useState6[0],setSamelang=_useState6[1];var translator=rule.translator,fromLang=rule.fromLang,toLang=rule.toLang;(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var deLang,disableLangs,_setting$transApis,_yield$apiTranslate,_yield$apiTranslate2,trText,isSame;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);if(q.replace(/\[(\d+)\]/g,"").trim()){_context.next=6;break;}setText(q);setSamelang(false);return _context.abrupt("return");case 6:_context.next=8;return tryDetectLang(q,setting.detectRemote);case 8:deLang=_context.sent;disableLangs=setting.disableLangs||[];if(!(deLang&&(toLang.includes(deLang)||disableLangs.includes(deLang)))){_context.next=14;break;}setSamelang(true);_context.next=22;break;case 14:_context.next=16;return apiTranslate({translator:translator,text:q,fromLang:fromLang,toLang:toLang,apiSetting:((_setting$transApis=setting.transApis)===null||_setting$transApis===void 0?void 0:_setting$transApis[translator])||DEFAULT_TRANS_APIS[translator]});case 16:_yield$apiTranslate=_context.sent;_yield$apiTranslate2=(0,slicedToArray/* default */.Z)(_yield$apiTranslate,2);trText=_yield$apiTranslate2[0];isSame=_yield$apiTranslate2[1];setText(trText);setSamelang(isSame);case 22:_context.next=27;break;case 24:_context.prev=24;_context.t0=_context["catch"](0);console.log("[translate]",_context.t0);case 27:_context.prev=27;setLoading(false);return _context.finish(27);case 30:case"end":return _context.stop();}},_callee,null,[[0,24,27,30]]);}))();},[q,translator,fromLang,toLang,setting]);return{text:text,sameLang:sameLang,loading:loading};} + */function useTranslate(q,rule,setting){var _useState=(0,react.useState)(""),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),text=_useState2[0],setText=_useState2[1];var _useState3=(0,react.useState)(false),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),loading=_useState4[0],setLoading=_useState4[1];var _useState5=(0,react.useState)(false),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),sameLang=_useState6[0],setSamelang=_useState6[1];var translator=rule.translator,fromLang=rule.fromLang,toLang=rule.toLang,detectRemote=rule.detectRemote,_rule$skipLangs=rule.skipLangs,skipLangs=_rule$skipLangs===void 0?[]:_rule$skipLangs;(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var deLang,_setting$transApis,_yield$apiTranslate,_yield$apiTranslate2,trText,isSame;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);if(q.replace(/\[(\d+)\]/g,"").trim()){_context.next=6;break;}setText(q);setSamelang(false);return _context.abrupt("return");case 6:_context.next=8;return tryDetectLang(q,detectRemote==="true");case 8:deLang=_context.sent;if(!(deLang&&(toLang.includes(deLang)||skipLangs.includes(deLang)))){_context.next=13;break;}setSamelang(true);_context.next=21;break;case 13:_context.next=15;return apiTranslate({translator:translator,text:q,fromLang:fromLang,toLang:toLang,apiSetting:((_setting$transApis=setting.transApis)===null||_setting$transApis===void 0?void 0:_setting$transApis[translator])||DEFAULT_TRANS_APIS[translator]});case 15:_yield$apiTranslate=_context.sent;_yield$apiTranslate2=(0,slicedToArray/* default */.Z)(_yield$apiTranslate,2);trText=_yield$apiTranslate2[0];isSame=_yield$apiTranslate2[1];setText(trText);setSamelang(isSame);case 21:_context.next=26;break;case 23:_context.prev=23;_context.t0=_context["catch"](0);log_kissLog(_context.t0,"translate");case 26:_context.prev=26;setLoading(false);return _context.finish(26);case 29:case"end":return _context.stop();}},_callee,null,[[0,23,26,29]]);}))();},[q,translator,fromLang,toLang,detectRemote,skipLangs,setting]);return{text:text,sameLang:sameLang,loading:loading};} ;// CONCATENATED MODULE: ./src/views/Content/index.js -var Content_templateObject,Content_templateObject2,Content_templateObject3,Content_templateObject4,_templateObject5;var LineSpan=(0,styled/* default */.ZP)("span")(Content_templateObject||(Content_templateObject=_taggedTemplateLiteral(["\n opacity: 0.6;\n -webkit-opacity: 0.6;\n text-decoration-line: underline;\n text-decoration-style: ",";\n text-decoration-color: ",";\n text-decoration-thickness: 2px;\n text-underline-offset: 0.3em;\n -webkit-text-decoration-line: underline;\n -webkit-text-decoration-style: ",";\n -webkit-text-decoration-color: ",";\n -webkit-text-decoration-thickness: 2px;\n -webkit-text-underline-offset: 0.3em;\n &:hover {\n opacity: 1;\n -webkit-opacity: 1;\n }\n"])),function(props){return props.$lineStyle;},function(props){return props.$lineColor;},function(props){return props.$lineStyle;},function(props){return props.$lineColor;});var BlockquoteSpan=(0,styled/* default */.ZP)("span")(Content_templateObject2||(Content_templateObject2=_taggedTemplateLiteral(["\n opacity: 0.6;\n -webkit-opacity: 0.6;\n display: block;\n padding: 0 0.75em;\n border-left: 0.25em solid ",";\n &:hover {\n opacity: 1;\n -webkit-opacity: 1;\n }\n"])),function(props){return props.$lineColor;});var FuzzySpan=(0,styled/* default */.ZP)("span")(Content_templateObject3||(Content_templateObject3=_taggedTemplateLiteral(["\n filter: blur(0.2em);\n -webkit-filter: blur(0.2em);\n &:hover {\n filter: none;\n -webkit-filter: none;\n }\n"])));var HighlightSpan=(0,styled/* default */.ZP)("span")(Content_templateObject4||(Content_templateObject4=_taggedTemplateLiteral(["\n color: #fff;\n background-color: ",";\n"])),function(props){return props.$bgColor;});var DiySpan=(0,styled/* default */.ZP)("span")(_templateObject5||(_templateObject5=_taggedTemplateLiteral(["\n ","\n"])),function(props){return props.$diyStyle;});function StyledSpan(_ref){var textStyle=_ref.textStyle,textDiyStyle=_ref.textDiyStyle,bgColor=_ref.bgColor,children=_ref.children;switch(textStyle){case OPT_STYLE_LINE:// 下划线 -return/*#__PURE__*/(0,jsx_runtime.jsx)(LineSpan,{$lineStyle:"solid",$lineColor:bgColor,children:children});case OPT_STYLE_DOTLINE:// 点状线 -return/*#__PURE__*/(0,jsx_runtime.jsx)(LineSpan,{$lineStyle:"dotted",$lineColor:bgColor,children:children});case OPT_STYLE_DASHLINE:// 虚线 -return/*#__PURE__*/(0,jsx_runtime.jsx)(LineSpan,{$lineStyle:"dashed",$lineColor:bgColor,children:children});case OPT_STYLE_WAVYLINE:// 波浪线 -return/*#__PURE__*/(0,jsx_runtime.jsx)(LineSpan,{$lineStyle:"wavy",$lineColor:bgColor,children:children});case OPT_STYLE_FUZZY:// 模糊 -return/*#__PURE__*/(0,jsx_runtime.jsx)(FuzzySpan,{children:children});case OPT_STYLE_HIGHLIGHT:// 高亮 -return/*#__PURE__*/(0,jsx_runtime.jsx)(HighlightSpan,{$bgColor:bgColor||DEFAULT_COLOR,children:children});case OPT_STYLE_BLOCKQUOTE:// 引用 -return/*#__PURE__*/(0,jsx_runtime.jsx)(BlockquoteSpan,{$lineColor:bgColor||DEFAULT_COLOR,children:children});case OPT_STYLE_DIY:// 自定义 -return/*#__PURE__*/(0,jsx_runtime.jsx)(DiySpan,{$diyStyle:textDiyStyle,children:children});default:return/*#__PURE__*/(0,jsx_runtime.jsx)("span",{children:children});}}function Content(_ref2){var q=_ref2.q,keeps=_ref2.keeps,translator=_ref2.translator;var _useState=(0,react.useState)(translator.rule),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),rule=_useState2[0],setRule=_useState2[1];var _useTranslate=useTranslate(q,rule,translator.setting),text=_useTranslate.text,sameLang=_useTranslate.sameLang,loading=_useTranslate.loading;var textStyle=rule.textStyle,_rule$bgColor=rule.bgColor,bgColor=_rule$bgColor===void 0?"":_rule$bgColor,_rule$textDiyStyle=rule.textDiyStyle,textDiyStyle=_rule$textDiyStyle===void 0?"":_rule$textDiyStyle;var _translator$setting$n=translator.setting.newlineLength,newlineLength=_translator$setting$n===void 0?TRANS_NEWLINE_LENGTH:_translator$setting$n;var handleKissEvent=function handleKissEvent(e){var _e$detail=e.detail,action=_e$detail.action,args=_e$detail.args;switch(action){case MSG_TRANS_CURRULE:setRule(args);break;default:}};(0,react.useEffect)(function(){window.addEventListener(translator.eventName,handleKissEvent);return function(){window.removeEventListener(translator.eventName,handleKissEvent);};},[translator.eventName]);if(loading){return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[q.length>=newlineLength?/*#__PURE__*/(0,jsx_runtime.jsx)("br",{}):" ",/*#__PURE__*/(0,jsx_runtime.jsx)(LoadingIcon,{})]});}if(!text||sameLang){return;}return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[q.length>=newlineLength?/*#__PURE__*/(0,jsx_runtime.jsx)("br",{}):" ",/*#__PURE__*/(0,jsx_runtime.jsx)(StyledSpan,{textStyle:textStyle,textDiyStyle:textDiyStyle,bgColor:bgColor,children:keeps.length>0?/*#__PURE__*/(0,jsx_runtime.jsx)("span",{dangerouslySetInnerHTML:{__html:text.replace(/\[(\d+)\]/g,function(_,p){return keeps[parseInt(p)];})}}):text})]});} +var _LINE_STYLES,Content_templateObject,Content_templateObject2,Content_templateObject3,Content_templateObject4,_templateObject5;var LINE_STYLES=(_LINE_STYLES={},(0,defineProperty/* default */.Z)(_LINE_STYLES,OPT_STYLE_LINE,"solid"),(0,defineProperty/* default */.Z)(_LINE_STYLES,OPT_STYLE_DOTLINE,"dotted"),(0,defineProperty/* default */.Z)(_LINE_STYLES,OPT_STYLE_DASHLINE,"dashed"),(0,defineProperty/* default */.Z)(_LINE_STYLES,OPT_STYLE_WAVYLINE,"wavy"),_LINE_STYLES);var StyledSpan=(0,styled/* default */.ZP)("span")(Content_templateObject||(Content_templateObject=_taggedTemplateLiteral(["\n ","\n"])),function(_ref){var textStyle=_ref.textStyle,textDiyStyle=_ref.textDiyStyle,bgColor=_ref.bgColor;switch(textStyle){case OPT_STYLE_LINE:// 下划线 +case OPT_STYLE_DOTLINE:// 点状线 +case OPT_STYLE_DASHLINE:// 虚线 +case OPT_STYLE_WAVYLINE:// 波浪线 +return css(Content_templateObject2||(Content_templateObject2=_taggedTemplateLiteral(["\n opacity: 0.6;\n -webkit-opacity: 0.6;\n text-decoration-line: underline;\n text-decoration-style: ",";\n text-decoration-color: ",";\n text-decoration-thickness: 2px;\n text-underline-offset: 0.3em;\n -webkit-text-decoration-line: underline;\n -webkit-text-decoration-style: ",";\n -webkit-text-decoration-color: ",";\n -webkit-text-decoration-thickness: 2px;\n -webkit-text-underline-offset: 0.3em;\n &:hover {\n opacity: 1;\n -webkit-opacity: 1;\n }\n "])),LINE_STYLES[textStyle],bgColor,LINE_STYLES[textStyle],bgColor);case OPT_STYLE_FUZZY:// 模糊 +return css(Content_templateObject3||(Content_templateObject3=_taggedTemplateLiteral(["\n filter: blur(0.2em);\n -webkit-filter: blur(0.2em);\n &:hover {\n filter: none;\n -webkit-filter: none;\n }\n "])));case OPT_STYLE_HIGHLIGHT:// 高亮 +return css(Content_templateObject4||(Content_templateObject4=_taggedTemplateLiteral(["\n color: #fff;\n background-color: ",";\n "])),bgColor||DEFAULT_COLOR);case OPT_STYLE_BLOCKQUOTE:// 引用 +return css(_templateObject5||(_templateObject5=_taggedTemplateLiteral(["\n opacity: 0.6;\n -webkit-opacity: 0.6;\n display: block;\n padding: 0 0.75em;\n border-left: 0.25em solid ",";\n &:hover {\n opacity: 1;\n -webkit-opacity: 1;\n }\n "])),bgColor||DEFAULT_COLOR);case OPT_STYLE_DIY:// 自定义 +return textDiyStyle;default:return"";}});function Content(_ref2){var q=_ref2.q,keeps=_ref2.keeps,translator=_ref2.translator,$el=_ref2.$el;var _useState=(0,react.useState)(translator.rule),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),rule=_useState2[0],setRule=_useState2[1];var _useTranslate=useTranslate(q,rule,translator.setting),text=_useTranslate.text,sameLang=_useTranslate.sameLang,loading=_useTranslate.loading;var transOpen=rule.transOpen,textStyle=rule.textStyle,bgColor=rule.bgColor,textDiyStyle=rule.textDiyStyle,transOnly=rule.transOnly,transTag=rule.transTag;var newlineLength=translator.setting.newlineLength;var handleKissEvent=function handleKissEvent(e){var _e$detail=e.detail,action=_e$detail.action,args=_e$detail.args;switch(action){case MSG_TRANS_CURRULE:setRule(args);break;default:}};(0,react.useEffect)(function(){window.addEventListener(translator.eventName,handleKissEvent);return function(){window.removeEventListener(translator.eventName,handleKissEvent);};},[translator.eventName]);var gap=(0,react.useMemo)(function(){if(transOnly==="true"){return"";}return q.length>=newlineLength?/*#__PURE__*/(0,jsx_runtime.jsx)("br",{}):" ";},[q,transOnly,newlineLength]);var styles=(0,react.useMemo)(function(){return{textStyle:textStyle,textDiyStyle:textDiyStyle,bgColor:bgColor,as:transTag};},[textStyle,textDiyStyle,bgColor,transTag]);if(loading){return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[gap,/*#__PURE__*/(0,jsx_runtime.jsx)(LoadingIcon,{})]});}if(!text||sameLang){return;}if(transOnly==="true"&&transOpen==="true"&&$el.querySelector(APP_LCNAME)){Array.from($el.childNodes).forEach(function(el){if(el.localName!==APP_LCNAME){el.remove();}});}if(keeps.length>0){return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[gap,/*#__PURE__*/(0,jsx_runtime.jsx)(StyledSpan,_objectSpread2(_objectSpread2({},styles),{},{dangerouslySetInnerHTML:{__html:text.replace(/\[(\d+)\]/g,function(_,p){return keeps[parseInt(p)];})}}))]});}return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[gap,/*#__PURE__*/(0,jsx_runtime.jsx)(StyledSpan,_objectSpread2(_objectSpread2({},styles),{},{children:text}))]});} +;// CONCATENATED MODULE: ./src/libs/injector.js +// Function to inject inline JavaScript code +var injectInlineJs=function injectInlineJs(code){var _document$body;var el=document.createElement("script");el.setAttribute("data-source","KISS-Calendar injectInlineJs");el.setAttribute("type","text/javascript");el.textContent=code;(_document$body=document.body)===null||_document$body===void 0?void 0:_document$body.appendChild(el);};// Function to inject external JavaScript file +var injectExternalJs=function injectExternalJs(src){var _document$body2;var el=document.createElement("script");el.setAttribute("data-source","KISS-Calendar injectExternalJs");el.setAttribute("type","text/javascript");el.setAttribute("src",src);(_document$body2=document.body)===null||_document$body2===void 0?void 0:_document$body2.appendChild(el);};// Function to inject internal CSS code +var injectInternalCss=function injectInternalCss(styles){var _document$head;var el=document.createElement("style");el.setAttribute("data-source","KISS-Calendar injectInternalCss");el.textContent=styles;(_document$head=document.head)===null||_document$head===void 0?void 0:_document$head.appendChild(el);};// Function to inject external CSS file +var injectExternalCss=function injectExternalCss(href){var _document$head2;var el=document.createElement("link");el.setAttribute("data-source","KISS-Calendar injectExternalCss");el.setAttribute("rel","stylesheet");el.setAttribute("type","text/css");el.setAttribute("href",href);(_document$head2=document.head)===null||_document$head2===void 0?void 0:_document$head2.appendChild(el);}; ;// CONCATENATED MODULE: ./src/libs/translator.js /** * 翻译类 - */var Translator=/*#__PURE__*/function(){function Translator(rule,setting,fixerSetting){var _this2=this;_classCallCheck(this,Translator);this._rule={};this._setting={};this._fixerSetting=null;this._rootNodes=new Set();this._tranNodes=new Map();this._skipNodeNames=[APP_LCNAME,"style","svg","img","audio","video","textarea","input","button","select","option","head","script","iframe"];this._eventName=utils_genEventName();this._mouseoverNode=null;this._keepSelector=[null,null];this._terms=[];this._docTitle="";// 显示 + */var Translator=/*#__PURE__*/function(){function Translator(rule,setting){var _this2=this;_classCallCheck(this,Translator);this._rule={};this._setting={};this._rootNodes=new Set();this._tranNodes=new Map();this._skipNodeNames=[APP_LCNAME,"style","svg","img","audio","video","textarea","input","button","select","option","head","script","iframe"];this._eventName=utils_genEventName();this._mouseoverNode=null;this._keepSelector=[null,null];this._terms=[];this._docTitle="";// 显示 this._interseObserver=new IntersectionObserver(function(intersections){intersections.forEach(function(intersection){if(intersection.isIntersecting){_this2._render(intersection.target);_this2._interseObserver.unobserve(intersection.target);}});},{threshold:0.1});// 变化 this._mutaObserver=new MutationObserver(function(mutations){mutations.forEach(function(mutation){if(!_this2._skipNodeNames.includes(mutation.target.localName)&&mutation.addedNodes.length>0){var nodes=Array.from(mutation.addedNodes).filter(function(node){if(_this2._skipNodeNames.includes(node.localName)||node.id===APP_LCNAME){return false;}return true;});if(nodes.length>0){// const rootNode = mutation.target.getRootNode(); // todo _this2._reTranslate();}}});});// 插入 shadowroot -this._overrideAttachShadow=function(){var _this=_this2;var _attachShadow=HTMLElement.prototype.attachShadow;HTMLElement.prototype.attachShadow=function(){_this._reTranslate();return _attachShadow.apply(this,arguments);};};this.updateRule=function(obj){_this2.rule=_objectSpread2(_objectSpread2({},_this2.rule),obj);};this.toggle=function(){if(_this2.rule.transOpen==="true"){_this2.rule=_objectSpread2(_objectSpread2({},_this2.rule),{},{transOpen:"false"});_this2._unRegister();}else{_this2.rule=_objectSpread2(_objectSpread2({},_this2.rule),{},{transOpen:"true"});_this2._register();}};this.toggleStyle=function(){var textStyle=_this2.rule.textStyle===OPT_STYLE_FUZZY?OPT_STYLE_DASHLINE:OPT_STYLE_FUZZY;_this2.rule=_objectSpread2(_objectSpread2({},_this2.rule),{},{textStyle:textStyle});};this.translateText=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(text){var _this2$_setting$trans;var _this2$_rule,translator,fromLang,toLang,apiSetting,_yield$apiTranslate,_yield$apiTranslate2,trText;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_this2$_rule=_this2._rule,translator=_this2$_rule.translator,fromLang=_this2$_rule.fromLang,toLang=_this2$_rule.toLang;apiSetting=((_this2$_setting$trans=_this2._setting.transApis)===null||_this2$_setting$trans===void 0?void 0:_this2$_setting$trans[translator])||DEFAULT_TRANS_APIS[translator];_context.next=4;return apiTranslate({text:text,translator:translator,fromLang:fromLang,toLang:toLang,apiSetting:apiSetting});case 4:_yield$apiTranslate=_context.sent;_yield$apiTranslate2=(0,slicedToArray/* default */.Z)(_yield$apiTranslate,1);trText=_yield$apiTranslate2[0];return _context.abrupt("return",trText);case 8:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}();this._querySelectorAll=function(selector,node){try{return Array.from(node.querySelectorAll(selector));}catch(err){console.log("[querySelectorAll err]: ".concat(selector));}return[];};this._queryFilter=function(selector,rootNode){return _this2._querySelectorAll(selector,rootNode).filter(function(node){return _this2._queryFilter(selector,node).length===0;});};this._queryShadowNodes=function(selector,rootNode){_this2._rootNodes.add(rootNode);_this2._queryFilter(selector,rootNode).forEach(function(item){if(!_this2._tranNodes.has(item)){_this2._tranNodes.set(item,"");}});Array.from(rootNode.querySelectorAll("*")).map(function(item){return item.shadowRoot;}).filter(Boolean).forEach(function(item){_this2._queryShadowNodes(selector,item);});};this._queryNodes=function(){var rootNode=arguments.length>0&&arguments[0]!==undefined?arguments[0]:document;// const childRoots = Array.from(rootNode.querySelectorAll("*")) +this._overrideAttachShadow=function(){var _this=_this2;var _attachShadow=HTMLElement.prototype.attachShadow;HTMLElement.prototype.attachShadow=function(){_this._reTranslate();return _attachShadow.apply(this,arguments);};};this.updateRule=function(obj){_this2.rule=_objectSpread2(_objectSpread2({},_this2.rule),obj);_this2._updatePool(obj.translator);};this.toggle=function(){if(_this2.rule.transOpen==="true"){_this2.rule=_objectSpread2(_objectSpread2({},_this2.rule),{},{transOpen:"false"});_this2._unRegister();}else{_this2.rule=_objectSpread2(_objectSpread2({},_this2.rule),{},{transOpen:"true"});_this2._register();}};this.toggleStyle=function(){var textStyle=_this2.rule.textStyle===OPT_STYLE_FUZZY?OPT_STYLE_DASHLINE:OPT_STYLE_FUZZY;_this2.rule=_objectSpread2(_objectSpread2({},_this2.rule),{},{textStyle:textStyle});};this.translateText=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(text){var _this2$_setting$trans;var _this2$_rule,translator,fromLang,toLang,apiSetting,_yield$apiTranslate,_yield$apiTranslate2,trText;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_this2$_rule=_this2._rule,translator=_this2$_rule.translator,fromLang=_this2$_rule.fromLang,toLang=_this2$_rule.toLang;apiSetting=((_this2$_setting$trans=_this2._setting.transApis)===null||_this2$_setting$trans===void 0?void 0:_this2$_setting$trans[translator])||DEFAULT_TRANS_APIS[translator];_context.next=4;return apiTranslate({text:text,translator:translator,fromLang:fromLang,toLang:toLang,apiSetting:apiSetting});case 4:_yield$apiTranslate=_context.sent;_yield$apiTranslate2=(0,slicedToArray/* default */.Z)(_yield$apiTranslate,1);trText=_yield$apiTranslate2[0];return _context.abrupt("return",trText);case 8:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}();this._querySelectorAll=function(selector,node){try{return Array.from(node.querySelectorAll(selector));}catch(err){log_kissLog(selector,"querySelectorAll err");}return[];};this._queryFilter=function(selector,rootNode){return _this2._querySelectorAll(selector,rootNode).filter(function(node){return _this2._queryFilter(selector,node).length===0;});};this._queryShadowNodes=function(selector,rootNode){_this2._rootNodes.add(rootNode);_this2._queryFilter(selector,rootNode).forEach(function(item){if(!_this2._tranNodes.has(item)){_this2._tranNodes.set(item,"");}});Array.from(rootNode.querySelectorAll("*")).map(function(item){return item.shadowRoot;}).filter(Boolean).forEach(function(item){_this2._queryShadowNodes(selector,item);});};this._queryNodes=function(){var rootNode=arguments.length>0&&arguments[0]!==undefined?arguments[0]:document;// const childRoots = Array.from(rootNode.querySelectorAll("*")) // .map((item) => item.shadowRoot) // .filter(Boolean); // const childNodes = childRoots.map((item) => this._queryNodes(item)); @@ -33524,39 +33564,43 @@ _this2._rootNodes.add(rootNode);_this2._rule.selector.split(";").map(function(it // } // } // ); -_this2._queryShadowNodes(inSelector,outNode.shadowRoot);}});}}else{_this2._queryFilter(selector,rootNode).forEach(function(item){if(!_this2._tranNodes.has(item)){_this2._tranNodes.set(item,"");}});}});};this._register=function(){if(_this2._rule.fromLang===_this2._rule.toLang){return;}// webfix -if(_this2._fixerSetting){runFixer(_this2._fixerSetting);}// 搜索节点 +_this2._queryShadowNodes(inSelector,outNode.shadowRoot);}});}}else{_this2._queryFilter(selector,rootNode).forEach(function(item){if(!_this2._tranNodes.has(item)){_this2._tranNodes.set(item,"");}});}});};this._register=function(){var _this2$_rule2=_this2._rule,fromLang=_this2$_rule2.fromLang,toLang=_this2$_rule2.toLang,injectJs=_this2$_rule2.injectJs,injectCss=_this2$_rule2.injectCss,fixerSelector=_this2$_rule2.fixerSelector,fixerFunc=_this2$_rule2.fixerFunc;if(fromLang===toLang){return;}// webfix +if(fixerSelector&&fixerFunc!=="-"){runFixer(fixerSelector,fixerFunc);}// 注入用户JS/CSS +if(isExt){injectJs&&sendBgMsg(MSG_INJECT_JS,injectJs);injectCss&&sendBgMsg(MSG_INJECT_CSS,injectCss);}else{injectJs&&injectInlineJs(injectJs);injectCss&&injectInternalCss(injectCss);}// 搜索节点 _this2._queryNodes();_this2._rootNodes.forEach(function(node){// 监听节点变化; _this2._mutaObserver.observe(node,{childList:true,subtree:true// characterData: true, -});});if(!_this2._setting.mouseKey||_this2._setting.mouseKey===OPT_MOUSEKEY_DISABLE){// 监听节点显示 -_this2._tranNodes.forEach(function(_,node){_this2._interseObserver.observe(node);});}else if(_this2._setting.mouseKey===OPT_MOUSEKEY_PAGEOPEN){// 全文直接翻译 +});});if(!_this2._rule.transTiming||_this2._rule.transTiming===OPT_TIMING_PAGESCROLL){// 监听节点显示 +_this2._tranNodes.forEach(function(_,node){_this2._interseObserver.observe(node);});}else if(_this2._rule.transTiming===OPT_TIMING_PAGEOPEN){// 全文直接翻译 _this2._tranNodes.forEach(function(_,node){_this2._render(node);});}else{// 监听鼠标悬停 window.addEventListener("keydown",_this2._handleKeydown);_this2._tranNodes.forEach(function(_,node){node.addEventListener("mouseenter",_this2._handleMouseover);node.addEventListener("mouseleave",_this2._handleMouseout);});}// 翻译页面标题 -if(_this2._setting.transTitle&&!_this2._docTitle){var title=document.title;_this2._docTitle=title;_this2.translateText(title).then(function(trText){document.title="".concat(trText," | ").concat(title);});}};this._handleMouseover=function(e){// console.log("mouseenter", e); -if(!_this2._tranNodes.has(e.target)){return;}var key=_this2._setting.mouseKey.slice(3);if(_this2._setting.mouseKey===OPT_MOUSEKEY_MOUSEOVER||e[key]){e.target.removeEventListener("mouseenter",_this2._handleMouseover);e.target.removeEventListener("mouseleave",_this2._handleMouseout);_this2._render(e.target);}else{_this2._mouseoverNode=e.target;}};this._handleMouseout=function(e){// console.log("mouseleave", e); +if(_this2._rule.transTitle==="true"&&!_this2._docTitle){var title=document.title;_this2._docTitle=title;_this2.translateText(title).then(function(trText){document.title="".concat(trText," | ").concat(title);});}};this._handleMouseover=function(e){// console.log("mouseenter", e); +if(!_this2._tranNodes.has(e.target)){return;}var key=_this2._rule.transTiming.slice(3);if(_this2._rule.transTiming===OPT_TIMING_MOUSEOVER||e[key]){e.target.removeEventListener("mouseenter",_this2._handleMouseover);e.target.removeEventListener("mouseleave",_this2._handleMouseout);_this2._render(e.target);}else{_this2._mouseoverNode=e.target;}};this._handleMouseout=function(e){// console.log("mouseleave", e); if(!_this2._tranNodes.has(e.target)){return;}_this2._mouseoverNode=null;};this._handleKeydown=function(e){// console.log("keydown", e); -var key=_this2._setting.mouseKey.slice(3);if(e[key]&&_this2._mouseoverNode){_this2._mouseoverNode.removeEventListener("mouseenter",_this2._handleMouseover);_this2._mouseoverNode.removeEventListener("mouseleave",_this2._handleMouseout);var node=_this2._mouseoverNode;_this2._render(node);_this2._mouseoverNode=null;}};this._unRegister=function(){// 恢复页面标题 +var key=_this2._rule.transTiming.slice(3);if(e[key]&&_this2._mouseoverNode){_this2._mouseoverNode.removeEventListener("mouseenter",_this2._handleMouseover);_this2._mouseoverNode.removeEventListener("mouseleave",_this2._handleMouseout);var node=_this2._mouseoverNode;_this2._render(node);_this2._mouseoverNode=null;}};this._unRegister=function(){// 恢复页面标题 if(_this2._docTitle){document.title=_this2._docTitle;_this2._docTitle="";}// 解除节点变化监听 _this2._mutaObserver.disconnect();// 解除节点显示监听 // this._interseObserver.disconnect(); -if(!_this2._setting.mouseKey||_this2._setting.mouseKey===OPT_MOUSEKEY_DISABLE){// 解除节点显示监听 -_this2._tranNodes.forEach(function(_,node){var _node$querySelector;_this2._interseObserver.unobserve(node);// 移除已插入元素 -(_node$querySelector=node.querySelector(APP_LCNAME))===null||_node$querySelector===void 0?void 0:_node$querySelector.remove();});}else if(_this2._setting.mouseKey===OPT_MOUSEKEY_PAGEOPEN){_this2._tranNodes.forEach(function(_,node){var _node$querySelector2;(_node$querySelector2=node.querySelector(APP_LCNAME))===null||_node$querySelector2===void 0?void 0:_node$querySelector2.remove();});}else{// 移除鼠标悬停监听 -window.removeEventListener("keydown",_this2._handleKeydown);_this2._tranNodes.forEach(function(_,node){var _node$querySelector3;// node.style.pointerEvents = "none"; -node.removeEventListener("mouseenter",_this2._handleMouseover);node.removeEventListener("mouseleave",_this2._handleMouseout);// 移除已插入元素 -(_node$querySelector3=node.querySelector(APP_LCNAME))===null||_node$querySelector3===void 0?void 0:_node$querySelector3.remove();});}// 清空节点集合 +// 移除键盘监听 +window.removeEventListener("keydown",_this2._handleKeydown);_this2._tranNodes.forEach(function(innerHTML,node){if(!_this2._rule.transTiming||_this2._rule.transTiming===OPT_TIMING_PAGESCROLL){// 解除节点显示监听 +_this2._interseObserver.unobserve(node);}else if(_this2._rule.transTiming!==OPT_TIMING_PAGEOPEN){// 移除鼠标悬停监听 +// node.style.pointerEvents = "none"; +node.removeEventListener("mouseenter",_this2._handleMouseover);node.removeEventListener("mouseleave",_this2._handleMouseout);}// 移除/恢复元素 +if(innerHTML&&_this2._rule.transOnly==="true"){node.innerHTML=innerHTML;}else{var _node$querySelector;(_node$querySelector=node.querySelector(APP_LCNAME))===null||_node$querySelector===void 0?void 0:_node$querySelector.remove();}});// 移除用户JS/CSS +_this2._removeInjector();// 清空节点集合 _this2._rootNodes.clear();_this2._tranNodes.clear();// 清空任务池 -clearFetchPool();};this._reTranslate=debounce(function(){if(_this2._rule.transOpen==="true"){_this2._register();}},500);this._invalidLength=function(q){var _this2$_setting$minLe,_this2$_setting$maxLe;return!q||q.length<((_this2$_setting$minLe=_this2._setting.minLength)!==null&&_this2$_setting$minLe!==void 0?_this2$_setting$minLe:TRANS_MIN_LENGTH)||q.length>((_this2$_setting$maxLe=_this2._setting.maxLength)!==null&&_this2$_setting$maxLe!==void 0?_this2$_setting$maxLe:TRANS_MAX_LENGTH);};this._render=function(el){var traEl=el.querySelector(APP_LCNAME);// 已翻译 -if(traEl){var preText=_this2._tranNodes.get(el);var curText=el.innerText.trim();// const traText = traEl.innerText.trim(); +clearFetchPool();};this._removeInjector=function(){var _document$querySelect;(_document$querySelect=document.querySelectorAll("[data-source^=\"KISS-Calendar\"]"))===null||_document$querySelect===void 0?void 0:_document$querySelect.forEach(function(el){return el.remove();});};this._reTranslate=debounce(function(){if(_this2._rule.transOpen==="true"){window.removeEventListener("keydown",_this2._handleKeydown);_this2._mutaObserver.disconnect();_this2._interseObserver.disconnect();_this2._removeInjector();_this2._register();}},this._setting.transInterval);this._invalidLength=function(q){var _this2$_setting$minLe,_this2$_setting$maxLe;return!q||q.length<((_this2$_setting$minLe=_this2._setting.minLength)!==null&&_this2$_setting$minLe!==void 0?_this2$_setting$minLe:TRANS_MIN_LENGTH)||q.length>((_this2$_setting$maxLe=_this2._setting.maxLength)!==null&&_this2$_setting$maxLe!==void 0?_this2$_setting$maxLe:TRANS_MAX_LENGTH);};this._render=function(el){var traEl=el.querySelector(APP_LCNAME);// 已翻译 +if(traEl){if(_this2._rule.transOnly==="true"){return;}var preText=_this2._tranNodes.get(el);var curText=el.innerText.trim();// const traText = traEl.innerText.trim(); // todo // 1. traText when loading // 2. replace startsWith -if(curText.startsWith(preText)){return;}traEl.remove();}var q=el.innerText.trim();_this2._tranNodes.set(el,q);var keeps=[];// 保留元素 +if(curText.startsWith(preText)){return;}traEl.remove();}var q=el.innerText.trim();if(_this2._rule.transOnly==="true"){_this2._tranNodes.set(el,el.innerHTML);}else{_this2._tranNodes.set(el,q);}var keeps=[];// 保留元素 var _this2$_keepSelector=(0,slicedToArray/* default */.Z)(_this2._keepSelector,2),matchSelector=_this2$_keepSelector[0],subSelector=_this2$_keepSelector[1];if(matchSelector||subSelector){var text="";el.childNodes.forEach(function(child){if(child.nodeType===1&&(matchSelector&&child.matches(matchSelector)||subSelector&&child.querySelector(subSelector))){if(child.nodeName==="IMG"){child.style.cssText+="width: ".concat(child.width,"px;");child.style.cssText+="height: ".concat(child.height,"px;");}text+="[".concat(keeps.length,"]");keeps.push(child.outerHTML);}else{text+=child.textContent;}});if(keeps.length>0){// textContent会保留些无用的换行符,严重影响翻译质量 if(q.includes("\n")){q=text;}else{q=text.replaceAll("\n"," ");}}}// 太长或太短 if(_this2._invalidLength(q.replace(/\[(\d+)\]/g,"").trim())){return;}// 专业术语 -if(_this2._terms.length>0){var _iterator=_createForOfIteratorHelper(_this2._terms),_step;try{var _loop=function _loop(){var term=_step.value;var re=new RegExp(term[0],"g");q=q.replace(re,function(t){var text="[".concat(keeps.length,"]");keeps.push(term[1]||t);return text;});};for(_iterator.s();!(_step=_iterator.n()).done;){_loop();}}catch(err){_iterator.e(err);}finally{_iterator.f();}}traEl=document.createElement(APP_LCNAME);traEl.style.visibility="visible";el.appendChild(traEl);el.style.cssText+="-webkit-line-clamp: unset; max-height: none; height: auto;";if(el.parentElement){el.parentElement.style.cssText+="-webkit-line-clamp: unset; max-height: none; height: auto;";}// console.log({ q, keeps }); -var root=(0,client.createRoot)(traEl);root.render(/*#__PURE__*/(0,jsx_runtime.jsx)(Content,{q:q,keeps:keeps,translator:_this2}));};var fetchInterval=setting.fetchInterval,fetchLimit=setting.fetchLimit;updateFetchPool(fetchInterval,fetchLimit);this._overrideAttachShadow();this._setting=setting;this._rule=rule;this._fixerSetting=fixerSetting;this._keepSelector=(rule.keepSelector||"").split(SHADOW_KEY).map(function(item){return item.trim();});this._terms=(rule.terms||"").split(/\n|;/).map(function(item){return item.split(",").map(function(item){return item.trim();});}).filter(function(_ref2){var _ref3=(0,slicedToArray/* default */.Z)(_ref2,1),term=_ref3[0];return Boolean(term);});if(rule.transOpen==="true"){this._register();}}_createClass(Translator,[{key:"setting",get:function get(){return this._setting;}},{key:"eventName",get:function get(){return this._eventName;}},{key:"rule",get:function get(){// console.log("get rule", this._rule); +if(_this2._terms.length>0){var _iterator=_createForOfIteratorHelper(_this2._terms),_step;try{var _loop=function _loop(){var term=_step.value;var re=new RegExp(term[0],"g");q=q.replace(re,function(t){var text="[".concat(keeps.length,"]");keeps.push("".concat(term[1]||t,""));return text;});};for(_iterator.s();!(_step=_iterator.n()).done;){_loop();}}catch(err){_iterator.e(err);}finally{_iterator.f();}}traEl=document.createElement(APP_LCNAME);traEl.style.visibility="visible";// if (this._rule.transOnly === "true") { +// el.innerHTML = ""; +// } +var _this2$_rule3=_this2._rule,selectStyle=_this2$_rule3.selectStyle,parentStyle=_this2$_rule3.parentStyle;el.appendChild(traEl);el.style.cssText+=selectStyle;if(el.parentElement){el.parentElement.style.cssText+=parentStyle;}var root=(0,client.createRoot)(traEl);root.render(/*#__PURE__*/(0,jsx_runtime.jsx)(Content,{q:q,keeps:keeps,translator:_this2,$el:el}));};this._overrideAttachShadow();this._setting=setting;this._rule=rule;this._keepSelector=(rule.keepSelector||"").split(SHADOW_KEY).map(function(item){return item.trim();});this._terms=(rule.terms||"").split(/\n|;/).map(function(item){return item.split(",").map(function(item){return item.trim();});}).filter(function(_ref2){var _ref3=(0,slicedToArray/* default */.Z)(_ref2,1),term=_ref3[0];return Boolean(term);});this._updatePool(rule.translator);if(rule.transOpen==="true"){this._register();}}_createClass(Translator,[{key:"_updatePool",value:function _updatePool(translator){if(!translator){return;}var _ref4=this._setting.transApis[translator]||{},_ref4$fetchInterval=_ref4.fetchInterval,fetchInterval=_ref4$fetchInterval===void 0?DEFAULT_FETCH_INTERVAL:_ref4$fetchInterval,_ref4$fetchLimit=_ref4.fetchLimit,fetchLimit=_ref4$fetchLimit===void 0?DEFAULT_FETCH_LIMIT:_ref4$fetchLimit;updateFetchPool(fetchInterval,fetchLimit);}},{key:"setting",get:function get(){return this._setting;}},{key:"eventName",get:function get(){return this._eventName;}},{key:"rule",get:function get(){// console.log("get rule", this._rule); return this._rule;},set:function set(rule){// console.log("set rule", rule); this._rule=rule;// 广播消息 var eventName=this._eventName;window.dispatchEvent(new CustomEvent(eventName,{detail:{action:MSG_TRANS_CURRULE,args:rule}}));}}]);return Translator;}(); @@ -34498,16 +34542,19 @@ var Favorite = __webpack_require__(5922); // EXTERNAL MODULE: ./node_modules/.pnpm/@mui+icons-material@5.14.9_@mui+material@5.14.10_@types+react@18.2.22_react@18.2.0/node_modules/@mui/icons-material/FavoriteBorder.js var FavoriteBorder = __webpack_require__(8543); ;// CONCATENATED MODULE: ./src/hooks/FavWords.js -function useFavWords(){var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useState3=(0,react.useState)({}),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),favWords=_useState4[0],setFavWords=_useState4[1];var _useSyncMeta=useSyncMeta(),updateSyncMeta=_useSyncMeta.updateSyncMeta;var toggleFav=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(word){var favs;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:favs=_objectSpread2({},favWords);if(favs[word]){delete favs[word];}else{favs[word]={createdAt:Date.now()};}_context.next=4;return setWords(favs);case 4:_context.next=6;return updateSyncMeta(KV_WORDS_KEY);case 6:_context.next=8;return trySyncWords();case 8:setFavWords(favs);case 9:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[updateSyncMeta,favWords]);var mergeWords=(0,react.useCallback)(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(newWords){var favs;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:favs=_objectSpread2({},favWords);newWords.forEach(function(word){if(!favs[word]){favs[word]={createdAt:Date.now()};}});_context2.next=4;return setWords(favs);case 4:_context2.next=6;return updateSyncMeta(KV_WORDS_KEY);case 6:_context2.next=8;return trySyncWords();case 8:setFavWords(favs);case 9:case"end":return _context2.stop();}},_callee2);}));return function(_x2){return _ref2.apply(this,arguments);};}(),[updateSyncMeta,favWords]);var clearWords=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return setWords({});case 2:_context3.next=4;return updateSyncMeta(KV_WORDS_KEY);case 4:_context3.next=6;return trySyncWords();case 6:setFavWords({});case 7:case"end":return _context3.stop();}},_callee3);})),[updateSyncMeta]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var _favWords;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;setLoading(true);_context4.next=4;return trySyncWords();case 4:_context4.next=6;return getWordsWithDefault();case 6:_favWords=_context4.sent;setFavWords(_favWords);_context4.next=13;break;case 10:_context4.prev=10;_context4.t0=_context4["catch"](0);console.log("[query fav]",_context4.t0);case 13:_context4.prev=13;setLoading(false);return _context4.finish(13);case 16:case"end":return _context4.stop();}},_callee4,null,[[0,10,13,16]]);}))();},[]);return{loading:loading,favWords:favWords,toggleFav:toggleFav,mergeWords:mergeWords,clearWords:clearWords};} +function useFavWords(){var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useState3=(0,react.useState)({}),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),favWords=_useState4[0],setFavWords=_useState4[1];var _useSyncMeta=useSyncMeta(),updateSyncMeta=_useSyncMeta.updateSyncMeta;var toggleFav=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(word){var favs;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:favs=_objectSpread2({},favWords);if(favs[word]){delete favs[word];}else{favs[word]={createdAt:Date.now()};}_context.next=4;return setWords(favs);case 4:_context.next=6;return updateSyncMeta(KV_WORDS_KEY);case 6:_context.next=8;return trySyncWords();case 8:setFavWords(favs);case 9:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[updateSyncMeta,favWords]);var mergeWords=(0,react.useCallback)(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(newWords){var favs;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:favs=_objectSpread2({},favWords);newWords.forEach(function(word){if(!favs[word]){favs[word]={createdAt:Date.now()};}});_context2.next=4;return setWords(favs);case 4:_context2.next=6;return updateSyncMeta(KV_WORDS_KEY);case 6:_context2.next=8;return trySyncWords();case 8:setFavWords(favs);case 9:case"end":return _context2.stop();}},_callee2);}));return function(_x2){return _ref2.apply(this,arguments);};}(),[updateSyncMeta,favWords]);var clearWords=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return setWords({});case 2:_context3.next=4;return updateSyncMeta(KV_WORDS_KEY);case 4:_context3.next=6;return trySyncWords();case 6:setFavWords({});case 7:case"end":return _context3.stop();}},_callee3);})),[updateSyncMeta]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var _favWords;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;setLoading(true);_context4.next=4;return trySyncWords();case 4:_context4.next=6;return getWordsWithDefault();case 6:_favWords=_context4.sent;setFavWords(_favWords);_context4.next=13;break;case 10:_context4.prev=10;_context4.t0=_context4["catch"](0);log_kissLog(_context4.t0,"query fav");case 13:_context4.prev=13;setLoading(false);return _context4.finish(13);case 16:case"end":return _context4.stop();}},_callee4,null,[[0,10,13,16]]);}))();},[]);return{loading:loading,favWords:favWords,toggleFav:toggleFav,mergeWords:mergeWords,clearWords:clearWords};} ;// CONCATENATED MODULE: ./src/views/Selection/FavBtn.js -function FavBtn(_ref){var word=_ref.word;var _useFavWords=useFavWords(),favWords=_useFavWords.favWords,toggleFav=_useFavWords.toggleFav;var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var handleClick=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);_context.next=4;return toggleFav(word);case 4:_context.next=9;break;case 6:_context.prev=6;_context.t0=_context["catch"](0);console.log("[set fav]",_context.t0);case 9:_context.prev=9;setLoading(false);return _context.finish(9);case 12:case"end":return _context.stop();}},_callee,null,[[0,6,9,12]]);}));return function handleClick(){return _ref2.apply(this,arguments);};}();return/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{disabled:loading,size:"small",onClick:handleClick,children:favWords[word]?/*#__PURE__*/(0,jsx_runtime.jsx)(Favorite/* default */.Z,{fontSize:"inherit"}):/*#__PURE__*/(0,jsx_runtime.jsx)(FavoriteBorder/* default */.Z,{fontSize:"inherit"})});} +function FavBtn(_ref){var word=_ref.word;var _useFavWords=useFavWords(),favWords=_useFavWords.favWords,toggleFav=_useFavWords.toggleFav;var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var handleClick=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);_context.next=4;return toggleFav(word);case 4:_context.next=9;break;case 6:_context.prev=6;_context.t0=_context["catch"](0);log_kissLog(_context.t0,"set fav");case 9:_context.prev=9;setLoading(false);return _context.finish(9);case 12:case"end":return _context.stop();}},_callee,null,[[0,6,9,12]]);}));return function handleClick(){return _ref2.apply(this,arguments);};}();return/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{disabled:loading,size:"small",onClick:handleClick,children:favWords[word]?/*#__PURE__*/(0,jsx_runtime.jsx)(Favorite/* default */.Z,{fontSize:"inherit"}):/*#__PURE__*/(0,jsx_runtime.jsx)(FavoriteBorder/* default */.Z,{fontSize:"inherit"})});} ;// CONCATENATED MODULE: ./src/views/Selection/DictCont.js var phonicMap={en_phonic:"英",us_phonic:"美"};function DictCont(_ref){var _dictResult$voice;var dictResult=_ref.dictResult;if(!dictResult){return;}return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"flex-start",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{variant:"subtitle1",style:{fontWeight:"bold"},children:dictResult.src}),/*#__PURE__*/(0,jsx_runtime.jsx)(FavBtn,{word:dictResult.src})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Typography_Typography,{component:"div",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{children:(_dictResult$voice=dictResult.voice)===null||_dictResult$voice===void 0?void 0:_dictResult$voice.map(Object.entries).map(function(item){return item[0];}).map(function(_ref2){var _ref3=(0,slicedToArray/* default */.Z)(_ref2,2),key=_ref3[0],val=_ref3[1];return"".concat(phonicMap[key]||key," ").concat(val);}).join(" ")}),/*#__PURE__*/(0,jsx_runtime.jsx)("ul",{style:{margin:"0.5em 0"},children:dictResult.content[0].mean.map(function(_ref4,idx){var pre=_ref4.pre,cont=_ref4.cont;return/*#__PURE__*/(0,jsx_runtime.jsxs)("li",{children:[pre&&"[".concat(pre,"] "),Object.keys(cont).join("; ")]},idx);})})]})]});} +;// CONCATENATED MODULE: ./src/views/Selection/SugCont.js +function SugCont(_ref){var sugs=_ref.sugs;return/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:sugs.map(function(_ref2){var k=_ref2.k,v=_ref2.v;return/*#__PURE__*/(0,jsx_runtime.jsxs)(Typography_Typography,{component:"div",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{children:k}),/*#__PURE__*/(0,jsx_runtime.jsx)("ul",{style:{margin:"0"},children:/*#__PURE__*/(0,jsx_runtime.jsx)("li",{children:v})})]},k);})});} ;// CONCATENATED MODULE: ./src/views/Selection/TranCont.js -function TranCont(_ref){var text=_ref.text,translator=_ref.translator,fromLang=_ref.fromLang,toLang=_ref.toLang,_ref$toLang=_ref.toLang2,toLang2=_ref$toLang===void 0?"en":_ref$toLang,setToLang=_ref.setToLang,setToLang2=_ref.setToLang2,transApis=_ref.transApis;var i18n=useI18n();var _useState=(0,react.useState)(""),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),trText=_useState2[0],setTrText=_useState2[1];var _useState3=(0,react.useState)(false),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),loading=_useState4[0],setLoading=_useState4[1];var _useState5=(0,react.useState)(""),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),error=_useState6[0],setError=_useState6[1];var _useState7=(0,react.useState)(null),_useState8=(0,slicedToArray/* default */.Z)(_useState7,2),dictResult=_useState8[0],setDictResult=_useState8[1];(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var detectLang,apiSetting,tranRes,dictRes;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);setTrText("");setError("");setDictResult(null);// 互译 -if(!(toLang!==toLang2&&toLang2!=="none")){_context.next=13;break;}_context.next=8;return apiBaiduLangdetect(text);case 8:detectLang=_context.sent;if(!(detectLang===toLang)){_context.next=13;break;}setToLang(toLang2);setToLang2(toLang);return _context.abrupt("return");case 13:apiSetting=transApis[translator]||DEFAULT_TRANS_APIS[translator];_context.next=16;return apiTranslate({text:text,translator:translator,fromLang:fromLang,toLang:toLang,apiSetting:apiSetting});case 16:tranRes=_context.sent;setTrText(tranRes[0]);// 词典 -if(!(isValidWord(text)&&toLang.startsWith("zh"))){_context.next=27;break;}if(!(fromLang==="en"&&translator===OPT_TRANS_BAIDU)){_context.next=23;break;}tranRes[2].type===1&&setDictResult(JSON.parse(tranRes[2].result));_context.next=27;break;case 23:_context.next=25;return apiTranslate({text:text,translator:OPT_TRANS_BAIDU,fromLang:"en",toLang:"zh-CN"});case 25:dictRes=_context.sent;dictRes[2].type===1&&setDictResult(JSON.parse(dictRes[2].result));case 27:_context.next=32;break;case 29:_context.prev=29;_context.t0=_context["catch"](0);setError(_context.t0.message);case 32:_context.prev=32;setLoading(false);return _context.finish(32);case 35:case"end":return _context.stop();}},_callee,null,[[0,29,32,35]]);}))();},[text,translator,fromLang,toLang,toLang2,setToLang,setToLang2,transApis]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("translated_text")// disabled -,fullWidth:true,multiline:true,value:trText,InputProps:{endAdornment:/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{direction:"row",sx:{position:"absolute",right:0,top:0},children:/*#__PURE__*/(0,jsx_runtime.jsx)(CopyBtn,{text:trText})})}})}),loading&&/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:24}),error&&/*#__PURE__*/(0,jsx_runtime.jsx)(Alert_Alert,{severity:"error",children:error}),dictResult&&/*#__PURE__*/(0,jsx_runtime.jsx)(DictCont,{dictResult:dictResult})]});} +function TranCont(_ref){var text=_ref.text,translator=_ref.translator,fromLang=_ref.fromLang,toLang=_ref.toLang,_ref$toLang=_ref.toLang2,toLang2=_ref$toLang===void 0?"en":_ref$toLang,setToLang=_ref.setToLang,setToLang2=_ref.setToLang2,transApis=_ref.transApis;var i18n=useI18n();var _useState=(0,react.useState)(""),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),trText=_useState2[0],setTrText=_useState2[1];var _useState3=(0,react.useState)(false),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),loading=_useState4[0],setLoading=_useState4[1];var _useState5=(0,react.useState)(""),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),error=_useState6[0],setError=_useState6[1];var _useState7=(0,react.useState)(null),_useState8=(0,slicedToArray/* default */.Z)(_useState7,2),dictResult=_useState8[0],setDictResult=_useState8[1];var _useState9=(0,react.useState)([]),_useState10=(0,slicedToArray/* default */.Z)(_useState9,2),sugs=_useState10[0],setSugs=_useState10[1];(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var detectLang,apiSetting,tranRes,dictRes;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);setTrText("");setError("");setDictResult(null);setSugs([]);// 互译 +if(!(toLang!==toLang2&&toLang2!=="none")){_context.next=14;break;}_context.next=9;return apiBaiduLangdetect(text);case 9:detectLang=_context.sent;if(!(detectLang===toLang)){_context.next=14;break;}setToLang(toLang2);setToLang2(toLang);return _context.abrupt("return");case 14:// 翻译 +apiSetting=transApis[translator]||DEFAULT_TRANS_APIS[translator];_context.next=17;return apiTranslate({text:text,translator:translator,fromLang:fromLang,toLang:toLang,apiSetting:apiSetting});case 17:tranRes=_context.sent;setTrText(tranRes[0]);// 词典 +if(!(isValidWord(text)&&toLang.startsWith("zh"))){_context.next=28;break;}if(!(fromLang==="en"&&translator===OPT_TRANS_BAIDU)){_context.next=24;break;}tranRes[2].type===1&&setDictResult(JSON.parse(tranRes[2].result));_context.next=28;break;case 24:_context.next=26;return apiTranslate({text:text,translator:OPT_TRANS_BAIDU,fromLang:"en",toLang:"zh-CN"});case 26:dictRes=_context.sent;dictRes[2].type===1&&setDictResult(JSON.parse(dictRes[2].result));case 28:if(!(text.length<20)){_context.next=34;break;}_context.t0=setSugs;_context.next=32;return apiBaiduSuggest(text);case 32:_context.t1=_context.sent;(0,_context.t0)(_context.t1);case 34:_context.next=39;break;case 36:_context.prev=36;_context.t2=_context["catch"](0);setError(_context.t2.message);case 39:_context.prev=39;setLoading(false);return _context.finish(39);case 42:case"end":return _context.stop();}},_callee,null,[[0,36,39,42]]);}))();},[text,translator,fromLang,toLang,toLang2,setToLang,setToLang2,transApis]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("translated_text")// disabled +,fullWidth:true,multiline:true,value:trText,InputProps:{endAdornment:/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{direction:"row",sx:{position:"absolute",right:0,top:0},children:/*#__PURE__*/(0,jsx_runtime.jsx)(CopyBtn,{text:trText})})}})}),loading&&/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:24}),error&&/*#__PURE__*/(0,jsx_runtime.jsx)(Alert_Alert,{severity:"error",children:error}),dictResult&&/*#__PURE__*/(0,jsx_runtime.jsx)(DictCont,{dictResult:dictResult}),sugs.length>0&&/*#__PURE__*/(0,jsx_runtime.jsx)(SugCont,{sugs:sugs})]});} ;// CONCATENATED MODULE: ./src/views/Selection/TranBox.js function TranForm(_ref){var text=_ref.text,setText=_ref.setText,tranboxSetting=_ref.tranboxSetting,transApis=_ref.transApis;var i18n=useI18n();var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),editMode=_useState2[0],setEditMode=_useState2[1];var _useState3=(0,react.useState)(""),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),editText=_useState4[0],setEditText=_useState4[1];var _useState5=(0,react.useState)(tranboxSetting.translator),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),translator=_useState6[0],setTranslator=_useState6[1];var _useState7=(0,react.useState)(tranboxSetting.fromLang),_useState8=(0,slicedToArray/* default */.Z)(_useState7,2),fromLang=_useState8[0],setFromLang=_useState8[1];var _useState9=(0,react.useState)(tranboxSetting.toLang),_useState10=(0,slicedToArray/* default */.Z)(_useState9,2),toLang=_useState10[0],setToLang=_useState10[1];var _useState11=(0,react.useState)(tranboxSetting.toLang2),_useState12=(0,slicedToArray/* default */.Z)(_useState11,2),toLang2=_useState12[0],setToLang2=_useState12[1];var inputRef=(0,react.useRef)(null);return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{sx:{p:2},spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Grid_Grid,{container:true,spacing:2,columns:12,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:4,sm:4,md:4,lg:4,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},fullWidth:true,size:"small",name:"fromLang",value:fromLang,label:i18n("from_lang"),onChange:function onChange(e){setFromLang(e.target.value);},children:OPT_LANGS_FROM.map(function(_ref2){var _ref3=(0,slicedToArray/* default */.Z)(_ref2,2),lang=_ref3[0],name=_ref3[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:4,sm:4,md:4,lg:4,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},fullWidth:true,size:"small",name:"toLang",value:toLang,label:i18n("to_lang"),onChange:function onChange(e){setToLang(e.target.value);},children:OPT_LANGS_TO.map(function(_ref4){var _ref5=(0,slicedToArray/* default */.Z)(_ref4,2),lang=_ref5[0],name=_ref5[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:4,sm:4,md:4,lg:4,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},fullWidth:true,size:"small",value:translator,name:"translator",label:i18n("translate_service"),onChange:function onChange(e){setTranslator(e.target.value);},children:OPT_TRANS_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:item},item);})})})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("original_text"),inputRef:inputRef,fullWidth:true,multiline:true,value:editMode?editText:text,disabled:!editMode,onChange:function onChange(e){setEditText(e.target.value);},onClick:function onClick(){setEditMode(true);setEditText(text);var timer=setTimeout(function(){var _inputRef$current;clearTimeout(timer);(_inputRef$current=inputRef.current)===null||_inputRef$current===void 0?void 0:_inputRef$current.focus();},100);},onBlur:function onBlur(){setEditMode(false);setText(editText.trim());},InputProps:{endAdornment:/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{direction:"row",sx:{position:"absolute",right:0,top:0},children:editMode?/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",onClick:function onClick(e){e.stopPropagation();},children:/*#__PURE__*/(0,jsx_runtime.jsx)(Done/* default */.Z,{fontSize:"inherit"})}):/*#__PURE__*/(0,jsx_runtime.jsx)(CopyBtn,{text:text})})}})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TranCont,{text:text,translator:translator,fromLang:fromLang,toLang:toLang,toLang2:toLang2,setToLang:setToLang,setToLang2:setToLang2,transApis:transApis})]});}function TranBox(_ref6){var text=_ref6.text,setText=_ref6.setText,setShowBox=_ref6.setShowBox,tranboxSetting=_ref6.tranboxSetting,transApis=_ref6.transApis,boxSize=_ref6.boxSize,setBoxSize=_ref6.setBoxSize,boxPosition=_ref6.boxPosition,setBoxPosition=_ref6.setBoxPosition;return/*#__PURE__*/(0,jsx_runtime.jsx)(SettingProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Theme,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(DraggableResizable,{defaultPosition:boxPosition,defaultSize:boxSize,header:/*#__PURE__*/(0,jsx_runtime.jsx)(Header,{setShowPopup:setShowBox}),onChangeSize:setBoxSize,onChangePosition:setBoxPosition,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{}),/*#__PURE__*/(0,jsx_runtime.jsx)(TranForm,{text:text,setText:setText,tranboxSetting:tranboxSetting,transApis:transApis})]})})});} ;// CONCATENATED MODULE: ./src/views/Selection/index.js @@ -34515,14 +34562,14 @@ function Slection(_ref){var contextMenuType=_ref.contextMenuType,tranboxSetting= function _handleMouseup(){_handleMouseup=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(e){var _window$getSelection2,_window$getSelection3;var selectedText,_ref2,pageX,pageY;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:e.stopPropagation();_context.next=3;return sleep(10);case 3:selectedText=((_window$getSelection2=window.getSelection())===null||_window$getSelection2===void 0?void 0:(_window$getSelection3=_window$getSelection2.toString())===null||_window$getSelection3===void 0?void 0:_window$getSelection3.trim())||"";setSelText(selectedText);if(selectedText){_context.next=8;break;}setShowBtn(false);return _context.abrupt("return");case 8:_ref2=isMobile?e.changedTouches[0]:e,pageX=_ref2.pageX,pageY=_ref2.pageY;!tranboxSetting.hideTranBtn&&setShowBtn(true);// setPosition({ x: e.clientX, y: e.clientY }); setPosition({x:pageX,y:pageY});case 11:case"end":return _context.stop();}},_callee);}));return _handleMouseup.apply(this,arguments);}window.addEventListener("mouseup",handleMouseup);// window.addEventListener(isMobile ? "touchend" : "mouseup", handleMouseup); return function(){window.removeEventListener(isMobile?"touchend":"mouseup",handleMouseup);};},[tranboxSetting.hideTranBtn]);(0,react.useEffect)(function(){if(isExt){return;}var clearShortcut=shortcutRegister(tranboxSetting.tranboxShortcut||DEFAULT_TRANBOX_SHORTCUT,handleTranbox);return function(){clearShortcut();};},[tranboxSetting.tranboxShortcut,handleTranbox]);(0,react.useEffect)(function(){window.addEventListener(MSG_OPEN_TRANBOX,handleTranbox);return function(){window.removeEventListener(MSG_OPEN_TRANBOX,handleTranbox);};},[handleTranbox]);(0,react.useEffect)(function(){if(!isGm){return;}// 注册菜单 -try{var menuCommandIds=[];contextMenuType!==0&&menuCommandIds.push(GM.registerMenuCommand("Translate Selected Text",function(event){handleTranbox();},"S"));return function(){menuCommandIds.forEach(function(id){GM.unregisterMenuCommand(id);});};}catch(err){console.log("[registerMenuCommand]",err);}},[handleTranbox,contextMenuType]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[showBox&&/*#__PURE__*/(0,jsx_runtime.jsx)(TranBox,{text:text,setText:setText,boxSize:boxSize,setBoxSize:setBoxSize,boxPosition:boxPosition,setBoxPosition:setBoxPosition,tranboxSetting:tranboxSetting,transApis:transApis,setShowBox:setShowBox}),showBtn&&/*#__PURE__*/(0,jsx_runtime.jsx)(TranBtn,{position:position,tranboxSetting:tranboxSetting,onClick:handleClick})]});} +try{var menuCommandIds=[];contextMenuType!==0&&menuCommandIds.push(GM.registerMenuCommand("Translate Selected Text",function(event){handleTranbox();},"S"));return function(){menuCommandIds.forEach(function(id){GM.unregisterMenuCommand(id);});};}catch(err){log_kissLog(err,"registerMenuCommand");}},[handleTranbox,contextMenuType]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[showBox&&/*#__PURE__*/(0,jsx_runtime.jsx)(TranBox,{text:text,setText:setText,boxSize:boxSize,setBoxSize:setBoxSize,boxPosition:boxPosition,setBoxPosition:setBoxPosition,tranboxSetting:tranboxSetting,transApis:transApis,setShowBox:setShowBox}),showBtn&&/*#__PURE__*/(0,jsx_runtime.jsx)(TranBtn,{position:position,tranboxSetting:tranboxSetting,onClick:handleClick})]});} ;// CONCATENATED MODULE: ./src/libs/touch.js function touchTapListener(fn,touchsLength){var handleTouchend=function handleTouchend(e){if(e.touches.length===touchsLength){fn();}};document.addEventListener("touchstart",handleTouchend);return function(){document.removeEventListener("touchstart",handleTouchend);};} ;// CONCATENATED MODULE: ./src/libs/gm.js var MSG_GM_xmlHttpRequest="xmlHttpRequest";var MSG_GM_setValue="setValue";var MSG_GM_getValue="getValue";var MSG_GM_deleteValue="deleteValue";var MSG_GM_info="info";/** * 注入页面的脚本,请求并接受GM接口信息 * @param {*} param0 - */var injectScript=function injectScript(ping){window.APP_INFO={name:"KISS Translator",version:"1.8.3",eventName:ping};};/** + */var injectScript=function injectScript(ping){window.APP_INFO={name:"KISS Translator",version:"1.8.4",eventName:ping};};/** * 适配GM脚本 */var adaptScript=function adaptScript(ping){var promiseGM=function promiseGM(action,args){var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:5000;return new Promise(function(resolve,reject){var pong=genEventName();var handleEvent=function handleEvent(e){window.removeEventListener(pong,handleEvent);var _e$detail=e.detail,data=_e$detail.data,error=_e$detail.error;if(error){reject(new Error(error));}else{resolve(data);}};window.addEventListener(pong,handleEvent);window.dispatchEvent(new CustomEvent(ping,{detail:{action:action,args:args,pong:pong}}));setTimeout(function(){window.removeEventListener(pong,handleEvent);reject(new Error("timeout"));},timeout);});};window.KISS_GM={fetch:function fetch(input,init){return promiseGM(MSG_GM_xmlHttpRequest,{input:input,init:init});},setValue:function setValue(key,val){return promiseGM(MSG_GM_setValue,{key:key,val:val});},getValue:function getValue(key){return promiseGM(MSG_GM_getValue,{key:key});},deleteValue:function deleteValue(key){return promiseGM(MSG_GM_deleteValue,{key:key});},getInfo:function(){var _getInfo=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(){return _regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:if(window.GM_info){_context.next=4;break;}_context.next=3;return promiseGM(MSG_GM_info);case 3:window.GM_info=_context.sent;case 4:return _context.abrupt("return",window.GM_info);case 5:case"end":return _context.stop();}},_callee);}));function getInfo(){return _getInfo.apply(this,arguments);}return getInfo;}()};};/** * 监听并回应页面对GM接口的请求 @@ -34534,17 +34581,17 @@ var MSG_GM_xmlHttpRequest="xmlHttpRequest";var MSG_GM_setValue="setValue";var MS * @param {*} href * @param {*} param1 * @returns - */var isInBlacklist=function isInBlacklist(href,_ref){var _ref$blacklist=_ref.blacklist,blacklist=_ref$blacklist===void 0?DEFAULT_BLACKLIST.join(",\n"):_ref$blacklist;return blacklist.split(/\n|,/).some(function(url){return isMatch(href,url.trim());});}; + */var isInBlacklist=function isInBlacklist(href,_ref){var blacklist=_ref.blacklist;return blacklist.split(/\n|,/).some(function(url){return isMatch(href,url.trim());});}; ;// CONCATENATED MODULE: ./src/libs/inputTranslate.js function isInputNode(node){return node.nodeName==="INPUT"||node.nodeName==="TEXTAREA";}function isEditAbleNode(node){return node.hasAttribute("contenteditable");}function selectContent(node){node.focus();var range=document.createRange();range.selectNodeContents(node);var selection=window.getSelection();selection.removeAllRanges();selection.addRange(range);}function pasteContentEvent(node,text){node.focus();var data=new DataTransfer();data.setData("text/plain",text);var event=new ClipboardEvent("paste",{clipboardData:data});document.dispatchEvent(event);data.clearData();}function pasteContentCommand(node,text){node.focus();document.execCommand("insertText",false,text);}function collapseToEnd(node){node.focus();var selection=window.getSelection();selection.collapseToEnd();}function getNodeText(node){if(isInputNode(node)){return node.value;}return node.innerText||node.textContent||"";}function addLoading(node,loadingId){var _node$offsetParent;var div=document.createElement("div");div.id=loadingId;div.innerHTML=loadingSvg;div.style.cssText="\n width: ".concat(node.offsetWidth,"px;\n height: ").concat(node.offsetHeight,"px;\n line-height: ").concat(node.offsetHeight,"px;\n position: absolute;\n text-align: center;\n left: ").concat(node.offsetLeft,"px;\n top: ").concat(node.offsetTop,"px;\n z-index: 2147483647;\n ");(_node$offsetParent=node.offsetParent)===null||_node$offsetParent===void 0?void 0:_node$offsetParent.appendChild(div);}function removeLoading(node,loadingId){var div=node.offsetParent.querySelector("#".concat(loadingId));if(div){div.remove();}}/** * 输入框翻译 - */function inputTranslate(_ref){var _ref$inputRule=_ref.inputRule,_ref$inputRule2=_ref$inputRule===void 0?DEFAULT_INPUT_RULE:_ref$inputRule,transOpen=_ref$inputRule2.transOpen,triggerShortcut=_ref$inputRule2.triggerShortcut,translator=_ref$inputRule2.translator,fromLang=_ref$inputRule2.fromLang,toLang=_ref$inputRule2.toLang,triggerCount=_ref$inputRule2.triggerCount,triggerTime=_ref$inputRule2.triggerTime,transSign=_ref$inputRule2.transSign,transApis=_ref.transApis,detectRemote=_ref.detectRemote;if(!transOpen){return;}var apiSetting=(transApis===null||transApis===void 0?void 0:transApis[translator])||DEFAULT_TRANS_APIS[translator];if(triggerShortcut.length===0){triggerShortcut=DEFAULT_INPUT_SHORTCUT;triggerCount=1;}stepShortcutRegister(triggerShortcut,/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var node,initText,text,res,lang,loadingId,deLang,_yield$apiTranslate,_yield$apiTranslate2,trText,isSame;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:node=document.activeElement;if(node){_context.next=3;break;}return _context.abrupt("return");case 3:while(node.shadowRoot){node=node.shadowRoot.activeElement;}if(!(!isInputNode(node)&&!isEditAbleNode(node))){_context.next=6;break;}return _context.abrupt("return");case 6:initText=getNodeText(node);if(triggerShortcut.length===1&&triggerShortcut[0].length===1){// todo: remove multiple char + */function inputTranslate(_ref){var _ref$inputRule=_ref.inputRule,_ref$inputRule2=_ref$inputRule===void 0?DEFAULT_INPUT_RULE:_ref$inputRule,transOpen=_ref$inputRule2.transOpen,triggerShortcut=_ref$inputRule2.triggerShortcut,translator=_ref$inputRule2.translator,fromLang=_ref$inputRule2.fromLang,toLang=_ref$inputRule2.toLang,triggerCount=_ref$inputRule2.triggerCount,triggerTime=_ref$inputRule2.triggerTime,transSign=_ref$inputRule2.transSign,transApis=_ref.transApis;if(!transOpen){return;}var apiSetting=(transApis===null||transApis===void 0?void 0:transApis[translator])||DEFAULT_TRANS_APIS[translator];if(triggerShortcut.length===0){triggerShortcut=DEFAULT_INPUT_SHORTCUT;triggerCount=1;}stepShortcutRegister(triggerShortcut,/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var node,initText,text,res,lang,loadingId,_yield$apiTranslate,_yield$apiTranslate2,trText,isSame;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:node=document.activeElement;if(node){_context.next=3;break;}return _context.abrupt("return");case 3:while(node.shadowRoot){node=node.shadowRoot.activeElement;}if(!(!isInputNode(node)&&!isEditAbleNode(node))){_context.next=6;break;}return _context.abrupt("return");case 6:initText=getNodeText(node);if(triggerShortcut.length===1&&triggerShortcut[0].length===1){// todo: remove multiple char initText=removeEndchar(initText,triggerShortcut[0],triggerCount);}if(initText.trim()){_context.next=10;break;}return _context.abrupt("return");case 10:text=initText;if(transSign){res=matchInputStr(text,transSign);if(res){lang=res[1];if(lang==="zh"||lang==="cn"){lang="zh-CN";}else if(lang==="tw"||lang==="hk"){lang="zh-TW";}if(lang&&OPT_LANGS_LIST.includes(lang)){toLang=lang;}text=res[2];}}// console.log("input -->", text); -loadingId="kiss-"+utils_genEventName();_context.prev=13;addLoading(node,loadingId);_context.next=17;return tryDetectLang(text,detectRemote);case 17:deLang=_context.sent;if(!(deLang&&toLang.includes(deLang))){_context.next=20;break;}return _context.abrupt("return");case 20:_context.next=22;return apiTranslate({translator:translator,text:text,fromLang:fromLang,toLang:toLang,apiSetting:apiSetting});case 22:_yield$apiTranslate=_context.sent;_yield$apiTranslate2=(0,slicedToArray/* default */.Z)(_yield$apiTranslate,2);trText=_yield$apiTranslate2[0];isSame=_yield$apiTranslate2[1];if(!(!trText||isSame)){_context.next=28;break;}return _context.abrupt("return");case 28:if(!isInputNode(node)){_context.next=32;break;}node.value=trText;node.dispatchEvent(new Event("input",{bubbles:true,cancelable:true}));return _context.abrupt("return");case 32:selectContent(node);_context.next=35;return sleep(200);case 35:pasteContentEvent(node,trText);_context.next=38;return sleep(200);case 38:if(!getNodeText(node).startsWith(initText)){_context.next=44;break;}pasteContentCommand(node,trText);_context.next=42;return sleep(100);case 42:_context.next=45;break;case 44:collapseToEnd(node);case 45:_context.next=50;break;case 47:_context.prev=47;_context.t0=_context["catch"](13);console.log("[translate input]",_context.t0.message);case 50:_context.prev=50;removeLoading(node,loadingId);return _context.finish(50);case 53:case"end":return _context.stop();}},_callee,null,[[13,47,50,53]]);})),triggerCount,triggerTime);} +loadingId="kiss-"+utils_genEventName();_context.prev=13;addLoading(node,loadingId);_context.next=17;return apiTranslate({translator:translator,text:text,fromLang:fromLang,toLang:toLang,apiSetting:apiSetting});case 17:_yield$apiTranslate=_context.sent;_yield$apiTranslate2=(0,slicedToArray/* default */.Z)(_yield$apiTranslate,2);trText=_yield$apiTranslate2[0];isSame=_yield$apiTranslate2[1];if(!(!trText||isSame)){_context.next=23;break;}return _context.abrupt("return");case 23:if(!isInputNode(node)){_context.next=27;break;}node.value=trText;node.dispatchEvent(new Event("input",{bubbles:true,cancelable:true}));return _context.abrupt("return");case 27:selectContent(node);_context.next=30;return sleep(200);case 30:pasteContentEvent(node,trText);_context.next=33;return sleep(200);case 33:if(!getNodeText(node).startsWith(initText)){_context.next=39;break;}pasteContentCommand(node,trText);_context.next=37;return sleep(100);case 37:_context.next=40;break;case 39:collapseToEnd(node);case 40:_context.next=45;break;case 42:_context.prev=42;_context.t0=_context["catch"](13);log_kissLog(_context.t0,"translate input");case 45:_context.prev=45;removeLoading(node,loadingId);return _context.finish(45);case 48:case"end":return _context.stop();}},_callee,null,[[13,42,45,48]]);})),triggerCount,triggerTime);} ;// CONCATENATED MODULE: ./src/common.js /** * 油猴脚本设置页面 - */function runSettingPage(){var _GM,_GM$info,_GM$info$script,_GM$info$script$grant;if((_GM=GM)!==null&&_GM!==void 0&&(_GM$info=_GM.info)!==null&&_GM$info!==void 0&&(_GM$info$script=_GM$info.script)!==null&&_GM$info$script!==void 0&&(_GM$info$script$grant=_GM$info$script.grant)!==null&&_GM$info$script$grant!==void 0&&_GM$info$script$grant.includes("unsafeWindow")){unsafeWindow.GM=GM;unsafeWindow.APP_INFO={name:"KISS Translator",version:"1.8.3"};}else{var ping=utils_genEventName();window.addEventListener(ping,handlePing);// window.eval(`(${injectScript})("${ping}")`); // eslint-disable-line + */function runSettingPage(){var _GM,_GM$info,_GM$info$script,_GM$info$script$grant;if((_GM=GM)!==null&&_GM!==void 0&&(_GM$info=_GM.info)!==null&&_GM$info!==void 0&&(_GM$info$script=_GM$info.script)!==null&&_GM$info$script!==void 0&&(_GM$info$script$grant=_GM$info$script.grant)!==null&&_GM$info$script$grant!==void 0&&_GM$info$script$grant.includes("unsafeWindow")){unsafeWindow.GM=GM;unsafeWindow.APP_INFO={name:"KISS Translator",version:"1.8.4"};}else{var ping=utils_genEventName();window.addEventListener(ping,handlePing);// window.eval(`(${injectScript})("${ping}")`); // eslint-disable-line var script=document.createElement("script");script.textContent="(".concat(injectScript,")(\"").concat(ping,"\")");document.head.append(script);}}/** * 插件监听后端事件 * @param {*} translator @@ -34559,7 +34606,7 @@ var script=document.createElement("script");script.textContent="(".concat(inject * 划词翻译 * @param {*} param0 * @returns - */function _showFab(){_showFab=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(translator){var fab,$action,shadowContainer,emotionRoot,shadowRootElement,cache;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return getFabWithDefault();case 2:fab=_context2.sent;$action=document.createElement("div");$action.setAttribute("id",APP_LCNAME);document.body.parentElement.appendChild($action);shadowContainer=$action.attachShadow({mode:"closed"});emotionRoot=document.createElement("style");shadowRootElement=document.createElement("div");shadowContainer.appendChild(emotionRoot);shadowContainer.appendChild(shadowRootElement);cache=(0,emotion_cache_browser_esm/* default */.Z)({key:APP_LCNAME,prepend:true,container:emotionRoot});client.createRoot(shadowRootElement).render(/*#__PURE__*/(0,jsx_runtime.jsx)(react.StrictMode,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(emotion_element_c39617d8_browser_esm.C,{value:cache,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Action,{translator:translator,fab:fab})})}));case 13:case"end":return _context2.stop();}},_callee2);}));return _showFab.apply(this,arguments);}function showTransbox(_ref4){var contextMenuType=_ref4.contextMenuType,_ref4$tranboxSetting=_ref4.tranboxSetting,tranboxSetting=_ref4$tranboxSetting===void 0?DEFAULT_TRANBOX_SETTING:_ref4$tranboxSetting,transApis=_ref4.transApis;if(!(tranboxSetting!==null&&tranboxSetting!==void 0&&tranboxSetting.transOpen)){return;}var $tranbox=document.createElement("div");$tranbox.setAttribute("id","kiss-transbox");document.body.parentElement.appendChild($tranbox);var shadowContainer=$tranbox.attachShadow({mode:"closed"});var emotionRoot=document.createElement("style");var shadowRootElement=document.createElement("div");shadowContainer.appendChild(emotionRoot);shadowContainer.appendChild(shadowRootElement);var cache=(0,emotion_cache_browser_esm/* default */.Z)({key:"kiss-transbox",prepend:true,container:emotionRoot});client.createRoot(shadowRootElement).render(/*#__PURE__*/(0,jsx_runtime.jsx)(react.StrictMode,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(emotion_element_c39617d8_browser_esm.C,{value:cache,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Slection,{contextMenuType:contextMenuType,tranboxSetting:tranboxSetting,transApis:transApis})})}));}/** + */function _showFab(){_showFab=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(translator){var fab,$action,shadowContainer,emotionRoot,shadowRootElement,cache;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return getFabWithDefault();case 2:fab=_context2.sent;$action=document.createElement("div");$action.setAttribute("id",APP_LCNAME);$action.style.fontSize="0";$action.style.width="0";$action.style.height="0";document.body.parentElement.appendChild($action);shadowContainer=$action.attachShadow({mode:"closed"});emotionRoot=document.createElement("style");shadowRootElement=document.createElement("div");shadowContainer.appendChild(emotionRoot);shadowContainer.appendChild(shadowRootElement);cache=(0,emotion_cache_browser_esm/* default */.Z)({key:APP_LCNAME,prepend:true,container:emotionRoot});client.createRoot(shadowRootElement).render(/*#__PURE__*/(0,jsx_runtime.jsx)(react.StrictMode,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(emotion_element_c39617d8_browser_esm.C,{value:cache,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Action,{translator:translator,fab:fab})})}));case 16:case"end":return _context2.stop();}},_callee2);}));return _showFab.apply(this,arguments);}function showTransbox(_ref4){var contextMenuType=_ref4.contextMenuType,_ref4$tranboxSetting=_ref4.tranboxSetting,tranboxSetting=_ref4$tranboxSetting===void 0?DEFAULT_TRANBOX_SETTING:_ref4$tranboxSetting,transApis=_ref4.transApis;if(!(tranboxSetting!==null&&tranboxSetting!==void 0&&tranboxSetting.transOpen)){return;}var $tranbox=document.createElement("div");$tranbox.setAttribute("id","kiss-transbox");$tranbox.style.fontSize="0";$tranbox.style.width="0";$tranbox.style.height="0";document.body.parentElement.appendChild($tranbox);var shadowContainer=$tranbox.attachShadow({mode:"closed"});var emotionRoot=document.createElement("style");var shadowRootElement=document.createElement("div");shadowContainer.appendChild(emotionRoot);shadowContainer.appendChild(shadowRootElement);var cache=(0,emotion_cache_browser_esm/* default */.Z)({key:"kiss-transbox",prepend:true,container:emotionRoot});client.createRoot(shadowRootElement).render(/*#__PURE__*/(0,jsx_runtime.jsx)(react.StrictMode,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(emotion_element_c39617d8_browser_esm.C,{value:cache,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Slection,{contextMenuType:contextMenuType,tranboxSetting:tranboxSetting,transApis:transApis})})}));}/** * 显示错误信息到页面顶部 * @param {*} message */function showErr(message){var $err=document.createElement("div");$err.innerText="KISS-Translator: ".concat(message);$err.style.cssText="background:red; color:#fff;";document.body.prepend($err);}/** @@ -34568,15 +34615,15 @@ var script=document.createElement("script");script.textContent="(".concat(inject * @returns */function touchOperation(translator){var _translator$setting$t=translator.setting.touchTranslate,touchTranslate=_translator$setting$t===void 0?2:_translator$setting$t;if(touchTranslate===0){return;}var handleTap=debounce(function(){translator.toggle();sendIframeMsg(MSG_TRANS_TOGGLE);});touchTapListener(handleTap,touchTranslate);}/** * 入口函数 - */function common_run(){return _run.apply(this,arguments);}function _run(){_run=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){var isUserscript,href,setting,fixerSetting,rule,translator,_args3=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:isUserscript=_args3.length>0&&_args3[0]!==undefined?_args3[0]:false;_context3.prev=1;href=document.location.href;// 设置页面 -if(!(isUserscript&&(href.includes("http://localhost:3000/options.html")||href.includes("https://fishjar.github.io/kiss-translator/options.html")||href.includes("https://kiss-translator.rayjar.com/options")))){_context3.next=6;break;}runSettingPage();return _context3.abrupt("return");case 6:_context3.next=8;return getSettingWithDefault();case 8:setting=_context3.sent;if(!isInBlacklist(href,setting)){_context3.next=11;break;}return _context3.abrupt("return");case 11:_context3.next=13;return matchFixer(href,setting);case 13:fixerSetting=_context3.sent;_context3.next=16;return matchRule(href,setting);case 16:rule=_context3.sent;translator=new Translator(rule,setting,fixerSetting);// 适配iframe -if(!isIframe){_context3.next=21;break;}runIframe(translator);return _context3.abrupt("return");case 21:// 监听消息 + */function common_run(){return _run.apply(this,arguments);}function _run(){_run=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){var isUserscript,href,setting,rule,translator,_args3=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:isUserscript=_args3.length>0&&_args3[0]!==undefined?_args3[0]:false;_context3.prev=1;href=document.location.href;// 设置页面 +if(!(isUserscript&&(href.includes("http://localhost:3000/options.html")||href.includes("https://fishjar.github.io/kiss-translator/options.html")||href.includes("https://kiss-translator.rayjar.com/options")))){_context3.next=6;break;}runSettingPage();return _context3.abrupt("return");case 6:_context3.next=8;return getSettingWithDefault();case 8:setting=_context3.sent;if(!isInBlacklist(href,setting)){_context3.next=11;break;}return _context3.abrupt("return");case 11:_context3.next=13;return matchRule(href,setting);case 13:rule=_context3.sent;translator=new Translator(rule,setting);// 适配iframe +if(!isIframe){_context3.next=18;break;}runIframe(translator);return _context3.abrupt("return");case 18:// 监听消息 !isUserscript&&runtimeListener(translator);// 输入框翻译 inputTranslate(setting);// 划词翻译 showTransbox(setting);// 浮球按钮 -_context3.next=26;return showFab(translator);case 26:// 触屏操作 +_context3.next=23;return showFab(translator);case 23:// 触屏操作 touchOperation(translator);// 同步订阅规则 -_context3.t0=isUserscript;if(!_context3.t0){_context3.next=31;break;}_context3.next=31;return trySyncAllSubRules(setting);case 31:_context3.next=37;break;case 33:_context3.prev=33;_context3.t1=_context3["catch"](1);console.error("[KISS-Translator]",_context3.t1);showErr(_context3.t1.message);case 37:case"end":return _context3.stop();}},_callee3,null,[[1,33]]);}));return _run.apply(this,arguments);} +_context3.t0=isUserscript;if(!_context3.t0){_context3.next=28;break;}_context3.next=28;return trySyncAllSubRules(setting);case 28:_context3.next=34;break;case 30:_context3.prev=30;_context3.t1=_context3["catch"](1);console.error("[KISS-Translator]",_context3.t1);showErr(_context3.t1.message);case 34:case"end":return _context3.stop();}},_callee3,null,[[1,30]]);}));return _run.apply(this,arguments);} ;// CONCATENATED MODULE: ./src/userscript.js common_run(true); }(); diff --git a/kiss-translator-rules.json b/kiss-translator-rules.json index 24d75f4..44906ed 100644 --- a/kiss-translator-rules.json +++ b/kiss-translator-rules.json @@ -10,7 +10,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "bard.google.com", @@ -23,7 +35,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "bearblog.dev, www.theverge.com, www.tampermonkey.net/documentation.php", @@ -36,7 +60,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "blogs.windows.com", @@ -49,7 +85,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": ".t-content>div>ul>li", + "fixerFunc": "br" }, { "pattern": "chat.openai.com", @@ -62,11 +110,23 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "div[data-message-author-role='user'] > div", + "fixerFunc": "bn" }, { "pattern": "chromereleases.googleblog.com", - "selector": ".title, .publishdate, p, i, .header-desc, .header-title, .text", + "selector": "", "keepSelector": "", "terms": "", "translator": "*", @@ -75,7 +135,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": ".post-content, .post-content > span, li > span", + "fixerFunc": "br" }, { "pattern": "deno.land, docs.github.com", @@ -88,7 +160,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "developer.apple.com/documentation/", @@ -101,12 +185,24 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { - "pattern": "discord.com/channels/", - "selector": "li[id^=chat-messages] div[id^=message-content], div[class^=headerText], div[class^=name_], section[aria-label='Search Results'] div[id^=message-content]", - "keepSelector": "", + "pattern": "developers.cloudflare.com", + "selector": "article :is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote), .WorkerStarter--description", + "keepSelector": "a[rel='noopener'], code", "terms": "", "translator": "*", "fromLang": "*", @@ -114,7 +210,44 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" + }, + { + "pattern": "discord.com/channels/", + "selector": "div[class^=message], div[class^=headerText], div[class^=name_], section[aria-label='Search Results'] div[id^=message-content], div[id^=message]", + "keepSelector": "li[class^='card'] div[class^='message'], [class^='embedFieldValue'], [data-list-item-id^='forum-channel-list'] div[class^='headerText']", + "terms": "", + "translator": "*", + "fromLang": "*", + "toLang": "*", + "textStyle": "*", + "transOpen": "*", + "bgColor": "", + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "doc.rust-lang.org", @@ -127,7 +260,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "docs.arduino.cc", @@ -140,7 +285,44 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" + }, + { + "pattern": "docs.rs", + "selector": ".docblock :is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote), .docblock-short", + "keepSelector": "code >>> code", + "terms": "", + "translator": "*", + "fromLang": "*", + "toLang": "*", + "textStyle": "*", + "transOpen": "*", + "bgColor": "", + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "edition.cnn.com", @@ -153,7 +335,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "education.github.com", @@ -166,7 +360,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "en.wikipedia.org", @@ -179,7 +385,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "forum.arduino.cc", @@ -192,11 +410,23 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "forum.ru-board.com", - "selector": ".tit, .dats, span.post, .lgf :is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)", + "selector": ".tit, .dats, .kiss-p, .lgf :is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)", "keepSelector": "", "terms": "", "translator": "*", @@ -205,7 +435,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "span.post", + "fixerFunc": "br" }, { "pattern": "github.com", @@ -218,7 +460,69 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" + }, + { + "pattern": "go.dev/tour", + "selector": "#left-side :is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)", + "keepSelector": "code, img, svg >>> code", + "terms": "", + "translator": "*", + "fromLang": "*", + "toLang": "*", + "textStyle": "*", + "transOpen": "*", + "bgColor": "", + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" + }, + { + "pattern": "gobyexample.com", + "selector": ".docs p", + "keepSelector": "code", + "terms": "", + "translator": "*", + "fromLang": "*", + "toLang": "*", + "textStyle": "*", + "transOpen": "*", + "bgColor": "", + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "greasyfork.org", @@ -231,12 +535,24 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "m.youtube.com", "selector": ".slim-video-information-title .yt-core-attributed-string, .media-item-headline .yt-core-attributed-string, .comment-text .yt-core-attributed-string, .typography-body-2b .yt-core-attributed-string, #ytp-caption-window-container .ytp-caption-segment", - "keepSelector": "", + "keepSelector": "img, #content-text>a", "terms": "", "translator": "*", "fromLang": "*", @@ -244,11 +560,23 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "-webkit-line-clamp: unset; max-height: none; height: auto;", + "parentStyle": "-webkit-line-clamp: unset; max-height: none; height: auto;", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "mail.google.com", - "selector": ":is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote), h2[data-thread-perm-id], span[data-thread-id], div[data-message-id] div[class=''], .messageBody, #views", + "selector": ".a3s.aiL :is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote), span[data-thread-id]", "keepSelector": "", "terms": "", "translator": "*", @@ -257,11 +585,23 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": ".a3s.aiL", + "fixerFunc": "br" }, { "pattern": "news.google.com", - "selector": "[role=\"link\"], .DY5T1d, .ifw3f, :is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)", + "selector": "[data-n-tid], :is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)", "keepSelector": "", "terms": "", "translator": "*", @@ -270,11 +610,48 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" + }, + { + "pattern": "news.yahoo.co.jp/articles/", + "selector": "", + "keepSelector": "", + "terms": "", + "translator": "*", + "fromLang": "*", + "toLang": "*", + "textStyle": "*", + "transOpen": "*", + "bgColor": "", + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": ".sc-cTsKDU", + "fixerFunc": "bn" }, { "pattern": "news.ycombinator.com", - "selector": ".title, .commtext", + "selector": ".title, p", "keepSelector": "", "terms": "", "translator": "*", @@ -283,7 +660,69 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": ".toptext, .commtext", + "fixerFunc": "br" + }, + { + "pattern": "notebooks.githubusercontent.com/view/ipynb", + "selector": "#notebook-container :is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)", + "keepSelector": "code, img, svg", + "terms": "", + "translator": "*", + "fromLang": "*", + "toLang": "*", + "textStyle": "*", + "transOpen": "*", + "bgColor": "", + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" + }, + { + "pattern": "pkg.go.dev", + "selector": ".Documentation-content :is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)", + "keepSelector": "code, img, svg, a, span", + "terms": "", + "translator": "*", + "fromLang": "*", + "toLang": "*", + "textStyle": "*", + "transOpen": "*", + "bgColor": "", + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "platform.openai.com/docs", @@ -296,7 +735,69 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" + }, + { + "pattern": "play.google.com/store/apps/details", + "selector": "", + "keepSelector": "", + "terms": "", + "translator": "*", + "fromLang": "*", + "toLang": "*", + "textStyle": "*", + "transOpen": "*", + "bgColor": "", + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "[data-g-id=\"description\"]", + "fixerFunc": "br" + }, + { + "pattern": "randomnerdtutorials.com", + "selector": "article :is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)", + "keepSelector": "", + "terms": "", + "translator": "*", + "fromLang": "*", + "toLang": "*", + "textStyle": "*", + "transOpen": "*", + "bgColor": "", + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "restofworld.org", @@ -309,12 +810,24 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { - "pattern": "stackoverflow.com", - "selector": "h1, .s-prose p, .comment-body .comment-copy", - "keepSelector": "code, img, svg", + "pattern": "stackoverflow.com, serverfault.com, superuser.com, stackexchange.com, askubuntu.com, stackapps.com, mathoverflow.net", + "selector": ".s-prose :is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote), .comment-copy, .question-hyperlink, .s-post-summary--content-title, .s-post-summary--content-excerpt", + "keepSelector": "code, img, svg, .math-container", "terms": "", "translator": "*", "fromLang": "*", @@ -322,7 +835,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "t.me/s/", @@ -335,7 +860,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": ".tgme_widget_message_text", + "fixerFunc": "br" }, { "pattern": "themessenger.com", @@ -348,7 +885,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "time.com", @@ -361,7 +910,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "twitter.com", @@ -374,11 +935,23 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { - "pattern": "web.telegram.org/a/", - "selector": ".message, .text-content, .bot-commands-list-element-description, .reply-markup-button-text", + "pattern": "ubuntuforums.org", + "selector": "", "keepSelector": "", "terms": "", "translator": "*", @@ -387,12 +960,24 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": ".postcontent", + "fixerFunc": "br" }, { - "pattern": "web.telegram.org/k/", - "selector": ".message, .bot-commands-list-element-description, .reply-markup-button-text", - "keepSelector": "", + "pattern": "web.telegram.org/a", + "selector": ".text-content > .kiss-p", + "keepSelector": ".Reactions, .time, .peer-title, .document-wrapper, .message.spoilers-container custom-emoji-element", "terms": "", "translator": "*", "fromLang": "*", @@ -400,7 +985,44 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": ".text-content", + "fixerFunc": "brToDiv" + }, + { + "pattern": "web.telegram.org/k", + "selector": "div.kiss-p", + "keepSelector": "div[class^=time], .peer-title, .document-wrapper, .message.spoilers-container custom-emoji-element, reactions-element", + "terms": "", + "translator": "*", + "fromLang": "*", + "toLang": "*", + "textStyle": "*", + "transOpen": "*", + "bgColor": "", + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": ".message", + "fixerFunc": "bnToDiv" }, { "pattern": "web.whatsapp.com", @@ -413,7 +1035,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.axios.com", @@ -426,7 +1060,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.bbc.com", @@ -439,10 +1085,22 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { - "pattern": "www.bing.com", + "pattern": "www.bing.com, copilot.microsoft.com", "selector": ".b_algoSlug, .rwrl_padref; .cib-serp-main >>> .ac-textBlock :is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote), .text-message-content div", "keepSelector": "", "terms": "", @@ -452,7 +1110,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.bloomberg.com", @@ -465,7 +1135,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.chinadaily.com.cn", @@ -478,7 +1160,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.dw.com", @@ -491,7 +1185,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.facebook.com", @@ -504,7 +1210,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.fmkorea.com", @@ -517,7 +1235,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.foxnews.com", @@ -530,7 +1260,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.google.com/search", @@ -543,7 +1285,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.historydefined.net", @@ -556,7 +1310,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.indiehackers.com", @@ -569,7 +1335,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.instagram.com/", @@ -582,7 +1360,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.instagram.com/p/,www.instagram.com/reels/", @@ -595,7 +1385,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.newyorker.com", @@ -608,7 +1410,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.noemamag.com", @@ -621,10 +1435,22 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { - "pattern": "www.npmjs.com/package, developer.chrome.com/docs, medium.com, developers.cloudflare.com, react.dev, create-react-app.dev, pytorch.org", + "pattern": "www.npmjs.com/package, developer.chrome.com/docs, medium.com, react.dev, create-react-app.dev, pytorch.org", "selector": "article :is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)", "keepSelector": "", "terms": "", @@ -634,7 +1460,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.phoronix.com", @@ -647,7 +1485,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": ".content", + "fixerFunc": "br" }, { "pattern": "www.quora.com", @@ -660,11 +1510,23 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { - "pattern": "www.reddit.com", - "selector": "div:is(.tbIApBd2DM_drfZQJjIum, ._1zPvgKHteTOub9dKkvrOl4,.ULWj94BYSOqoJDetxgcnU),a:is([class^=\"_334yl59\"],[class^=\"_2GrMpxD\"]),h1,h2,h3,h4,h5,h6,p,button", + "pattern": "www.reddit.com, new.reddit.com, sh.reddit.com", + "selector": ":is(#AppRouter-main-content, #overlayScrollContainer) :is([class^=tbIA],[class^=_1zP],[class^=ULWj],[class^=_2Jj], [class^=_334],[class^=_2Gr],[class^=_7T4],[class^=_1WO], :is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)); [id^=\"post-title\"], :is([slot=\"text-body\"], [slot=\"comment\"]) :is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote), recent-posts h3, aside :is(span:has(>h2), p); shreddit-subreddit-header >>> :is(#title, #description)", "keepSelector": "", "terms": "", "translator": "*", @@ -673,7 +1535,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.reuters.com", @@ -686,7 +1560,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.semafor.com", @@ -699,7 +1585,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.telegraph.co.uk, go.dev/doc/", @@ -712,7 +1610,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.theguardian.com", @@ -725,12 +1635,24 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "www.youtube.com", "selector": "h1, #video-title, #content-text, #title, yt-attributed-string>span>span, #ytp-caption-window-container .ytp-caption-segment", - "keepSelector": "", + "keepSelector": "img, #content-text>a", "terms": "", "translator": "*", "fromLang": "*", @@ -738,7 +1660,19 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "-webkit-line-clamp: unset; max-height: none; height: auto;", + "parentStyle": "-webkit-line-clamp: unset; max-height: none; height: auto;", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" }, { "pattern": "wx2.qq.com", @@ -751,6 +1685,18 @@ "textStyle": "*", "transOpen": "*", "bgColor": "", - "textDiyStyle": "" + "textDiyStyle": "", + "selectStyle": "", + "parentStyle": "", + "injectJs": "", + "injectCss": "", + "transOnly": "*", + "transTiming": "*", + "transTag": "*", + "transTitle": "*", + "detectRemote": "*", + "skipLangs": [], + "fixerSelector": "", + "fixerFunc": "*" } ] \ No newline at end of file diff --git a/kiss-translator.user.js b/kiss-translator.user.js index a04975c..38d9e36 100644 --- a/kiss-translator.user.js +++ b/kiss-translator.user.js @@ -1,7 +1,7 @@ // ==UserScript== // @name KISS Translator // @namespace https://github.com/fishjar/kiss-translator -// @version 1.8.3 +// @version 1.8.4 // @description A simple bilingual translation extension & Greasemonkey script (一个简约的双语对照翻译扩展 & 油猴脚本) // @author Gabe // @homepageURL https://github.com/fishjar/kiss-translator @@ -19478,14 +19478,62 @@ function CssBaseline(inProps) { } false ? 0 : void 0; /* harmony default export */ var CssBaseline_CssBaseline = (CssBaseline); +;// CONCATENATED MODULE: ./src/libs/webfix.js +var _fixerMap;/** + * 修复程序类型 + */var FIXER_NONE="-";var FIXER_BR="br";var FIXER_BN="bn";var FIXER_BR_DIV="brToDiv";var FIXER_BN_DIV="bnToDiv";var FIXER_ALL=[FIXER_NONE,FIXER_BR,FIXER_BN,FIXER_BR_DIV,FIXER_BN_DIV];/** + * 修复过的标记 + */var fixedSign="kiss-fixed";/** + * 采用 `br` 换行网站的修复函数 + * 目标是将 `br` 替换成 `p` + * @param {*} node + * @returns + */function brFixer(node){var tag=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"p";if(node.hasAttribute(fixedSign)){return;}node.setAttribute(fixedSign,"true");var gapTags=["BR","WBR"];var newlineTags=["DIV","UL","OL","LI","H1","H2","H3","H4","H5","H6","P","HR","PRE","TABLE","BLOCKQUOTE"];var html="";node.childNodes.forEach(function(child,index){if(index===0){html+="<".concat(tag," class=\"kiss-p\">");}if(gapTags.indexOf(child.nodeName)!==-1){html+="<").concat(tag," class=\"kiss-p\">");}else if(newlineTags.indexOf(child.nodeName)!==-1){html+="").concat(child.outerHTML,"<").concat(tag," class=\"kiss-p\">");}else if(child.outerHTML){html+=child.outerHTML;}else if(child.textContent){html+=child.textContent;}if(index===node.childNodes.length-1){html+="");}});node.innerHTML=html;}function brDivFixer(node){return brFixer(node,"div");}/** + * 目标是将 `\n` 替换成 `p` + * @param {*} node + * @returns + */function bnFixer(node){var tag=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"p";if(node.hasAttribute(fixedSign)){return;}node.setAttribute(fixedSign,"true");node.innerHTML=node.innerHTML.split("\n").map(function(item){return"<".concat(tag," class=\"kiss-p\">").concat(item||" ","");}).join("");}function bnDivFixer(node){return bnFixer(node,"div");}/** + * 查找、监听节点,并执行修复函数 + * @param {*} selector + * @param {*} fixer + * @param {*} rootSelector + */function run(selector,fixer,rootSelector){var mutaObserver=new MutationObserver(function(mutations){mutations.forEach(function(mutation){mutation.addedNodes.forEach(function(addNode){if(addNode&&addNode.querySelectorAll){addNode.querySelectorAll(selector).forEach(function(node){fixer(node);});}});});});var rootNodes=[document];if(rootSelector){rootNodes=document.querySelectorAll(rootSelector);}rootNodes.forEach(function(rootNode){rootNode.querySelectorAll(selector).forEach(function(node){fixer(node);});mutaObserver.observe(rootNode,{childList:true,subtree:true});});}/** + * 修复程序映射 + */var fixerMap=(_fixerMap={},(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BR,brFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BN,bnFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BR_DIV,brDivFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BN_DIV,bnDivFixer),_fixerMap);/** + * 执行fixer + * @param {*} param0 + */function runFixer(selector){var fixer=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"-";var rootSelector=arguments.length>2?arguments[2]:undefined;try{if(Object.keys(fixerMap).includes(fixer)){run(selector,fixerMap[fixer],rootSelector);}}catch(err){console.error("[kiss-webfix run]: ".concat(err.message));}} ;// CONCATENATED MODULE: ./src/config/rules.js -var DEFAULT_SELECTOR=":is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)";var DEFAULT_KEEP_SELECTOR="code, img, svg";var GLOBAL_KEY="*";var REMAIN_KEY="-";var SHADOW_KEY=">>>";var DEFAULT_RULE={pattern:"",selector:"",keepSelector:"",terms:"",translator:GLOBAL_KEY,fromLang:GLOBAL_KEY,toLang:GLOBAL_KEY,textStyle:GLOBAL_KEY,transOpen:GLOBAL_KEY,bgColor:"",textDiyStyle:""};var DEFAULT_DIY_STYLE="color: #666;\nbackground: linear-gradient(\n 45deg,\n LightGreen 20%,\n LightPink 20% 40%,\n LightSalmon 40% 60%,\n LightSeaGreen 60% 80%,\n LightSkyBlue 80%\n);\n&:hover {\n color: #333;\n};";var DEFAULT_OW_RULE={translator:REMAIN_KEY,fromLang:REMAIN_KEY,toLang:REMAIN_KEY,textStyle:REMAIN_KEY,transOpen:REMAIN_KEY,bgColor:"",textDiyStyle:DEFAULT_DIY_STYLE};var RULES_MAP={"www.google.com/search":["h3, .IsZvec, .VwiC3b"],"news.google.com":["[role=\"link\"], .DY5T1d, .ifw3f, ".concat(DEFAULT_SELECTOR)],"www.foxnews.com":["h1, h2, .title, .sidebar [data-type=\"Title\"], .article-content ".concat(DEFAULT_SELECTOR,"; [data-spotim-module=\"conversation\"]>div >>> [data-spot-im-class=\"message-text\"] p, [data-spot-im-class=\"message-text\"]")],"bearblog.dev, www.theverge.com, www.tampermonkey.net/documentation.php":["".concat(DEFAULT_SELECTOR)],"themessenger.com":[".leading-tight, .leading-tighter, .my-2 p, .font-body p, article ".concat(DEFAULT_SELECTOR)],"www.telegraph.co.uk, go.dev/doc/":["article ".concat(DEFAULT_SELECTOR)],"www.theguardian.com":[".show-underline, .dcr-hup5wm div, .dcr-7vl6y8 div, .dcr-12evv1c, figcaption, article ".concat(DEFAULT_SELECTOR,", [data-cy=\"mostviewed-footer\"] h4")],"www.semafor.com":["".concat(DEFAULT_SELECTOR,", .styles_intro__IYj__, [class*=\"styles_description\"]")],"www.noemamag.com":[".splash__title, .single-card__title, .single-card__type, .single-card__topic, .highlighted-content__title, .single-card__author, article ".concat(DEFAULT_SELECTOR,", .quote__text, .wp-caption-text div")],"restofworld.org":["".concat(DEFAULT_SELECTOR,", .recirc-story__headline, .recirc-story__dek")],"www.axios.com":[".h7, ".concat(DEFAULT_SELECTOR)],"www.newyorker.com":[".summary-item__hed, .summary-item__dek, .summary-collection-grid__dek, .dqtvfu, .rubric__link, .caption, article ".concat(DEFAULT_SELECTOR,", .HEhan ").concat(DEFAULT_SELECTOR,", .ContributorBioBio-fBolsO, .BaseText-ewhhUZ")],"time.com":["h1, h3, .summary, .video-title, #article-body ".concat(DEFAULT_SELECTOR,", .image-wrap-container .credit.body-caption, .media-heading")],"www.dw.com":[".ts-teaser-title a, .news-title a, .title a, .teaser-description a, .hbudab h3, .hbudab p, figcaption ,article ".concat(DEFAULT_SELECTOR)],"www.bbc.com":["h1, h2, .media__link, .media__summary, article ".concat(DEFAULT_SELECTOR,", .ssrcss-y7krbn-Stack, .ssrcss-17zglt8-PromoHeadline, .ssrcss-18cjaf3-Headline, .gs-c-promo-heading__title, .gs-c-promo-summary, .media__content h3, .article__intro, .lx-c-summary-points>li")],"www.chinadaily.com.cn":["h1, .tMain [shape=\"rect\"], .cMain [shape=\"rect\"], .photo_art [shape=\"rect\"], .mai_r [shape=\"rect\"], .lisBox li, #Content ".concat(DEFAULT_SELECTOR)],"www.facebook.com":["[role=\"main\"] [dir=\"auto\"]"],"www.reddit.com":["div:is(.tbIApBd2DM_drfZQJjIum, ._1zPvgKHteTOub9dKkvrOl4,.ULWj94BYSOqoJDetxgcnU),a:is([class^=\"_334yl59\"],[class^=\"_2GrMpxD\"]),h1,h2,h3,h4,h5,h6,p,button"],"www.quora.com":[".qu-wordBreak--break-word"],"edition.cnn.com":[".container__title, .container__headline, .headline__text, .image__caption, [data-type=\"Title\"], .article__content ".concat(DEFAULT_SELECTOR)],"www.reuters.com":["#main-content [data-testid=\"Heading\"], #main-content [data-testid=\"Body\"], .article-body__content__17Yit ".concat(DEFAULT_SELECTOR)],"www.bloomberg.com":["[data-component=\"headline\"], [data-component=\"related-item-headline\"], [data-component=\"title\"], article ".concat(DEFAULT_SELECTOR)],"deno.land, docs.github.com":["main ".concat(DEFAULT_SELECTOR),"code, img, svg"],"doc.rust-lang.org":[".content ".concat(DEFAULT_SELECTOR),"code, img, svg"],"www.indiehackers.com":["h1, h3, .content ".concat(DEFAULT_SELECTOR,", .feed-item__title-link")],"platform.openai.com/docs":[".docs-body ".concat(DEFAULT_SELECTOR),"code, img, svg"],"en.wikipedia.org":["h1, .mw-parser-output ".concat(DEFAULT_SELECTOR),".mwe-math-element"],"stackoverflow.com":["h1, .s-prose p, .comment-body .comment-copy","code, img, svg"],"www.npmjs.com/package, developer.chrome.com/docs, medium.com, developers.cloudflare.com, react.dev, create-react-app.dev, pytorch.org":["article ".concat(DEFAULT_SELECTOR)],"news.ycombinator.com":[".title, .commtext"],"github.com":[".markdown-body ".concat(DEFAULT_SELECTOR,", .repo-description p, .Layout-sidebar .f4, .container-lg .py-4 .f5, .container-lg .my-4 .f5, .Box-row .pr-4, .Box-row article .mt-1, [itemprop=\"description\"], .markdown-title, bdi, .ws-pre-wrap, .status-meta, span.status-meta, .col-10.color-fg-muted, .TimelineItem-body, .pinned-item-list-item-content .color-fg-muted, .markdown-body td, .markdown-body th"),"code, img, svg"],"twitter.com":["[data-testid=\"tweetText\"], [data-testid=\"birdwatch-pivot\"]>div.css-1rynq56","img, a, .r-18u37iz, .css-175oi2r"],"m.youtube.com":[".slim-video-information-title .yt-core-attributed-string, .media-item-headline .yt-core-attributed-string, .comment-text .yt-core-attributed-string, .typography-body-2b .yt-core-attributed-string, #ytp-caption-window-container .ytp-caption-segment"],"www.youtube.com":["h1, #video-title, #content-text, #title, yt-attributed-string>span>span, #ytp-caption-window-container .ytp-caption-segment"],"bard.google.com":[".query-content ".concat(DEFAULT_SELECTOR,", message-content ").concat(DEFAULT_SELECTOR)],"www.bing.com":[".b_algoSlug, .rwrl_padref; .cib-serp-main >>> .ac-textBlock ".concat(DEFAULT_SELECTOR,", .text-message-content div")],"www.phoronix.com":["article ".concat(DEFAULT_SELECTOR)],"wx2.qq.com":[".js_message_plain"],"app.slack.com/client/":[".p-rich_text_section, .c-message_attachment__text, .p-rich_text_list li"],"discord.com/channels/":["li[id^=chat-messages] div[id^=message-content], div[class^=headerText], div[class^=name_], section[aria-label='Search Results'] div[id^=message-content]"],"t.me/s/":[".js-message_text ".concat(DEFAULT_SELECTOR)],"web.telegram.org/k/":[".message, .bot-commands-list-element-description, .reply-markup-button-text"],"web.telegram.org/a/":[".message, .text-content, .bot-commands-list-element-description, .reply-markup-button-text"],"chromereleases.googleblog.com":[".title, .publishdate, p, i, .header-desc, .header-title, .text"],"www.instagram.com/":["h1, article span[dir=auto] > span[dir=auto], ._ab1y"],"www.instagram.com/p/,www.instagram.com/reels/":["h1, div[class='x9f619 xjbqb8w x78zum5 x168nmei x13lgxp2 x5pf9jr xo71vjh x1uhb9sk x1plvlek xryxfnj x1c4vz4f x2lah0s xdt5ytf xqjyukv x1cy8zhl x1oa3qoh x1nhvcw1'] > span[class='x1lliihq x1plvlek xryxfnj x1n2onr6 x193iq5w xeuugli x1fj9vlw x13faqbe x1vvkbs x1s928wv xhkezso x1gmr53x x1cpjm7i x1fgarty x1943h6x x1i0vuye xvs91rp xo1l8bm x5n08af x10wh9bi x1wdrske x8viiok x18hxmgj'], span[class='x193iq5w xeuugli x1fj9vlw x13faqbe x1vvkbs xt0psk2 x1i0vuye xvs91rp xo1l8bm x5n08af x10wh9bi x1wdrske x8viiok x18hxmgj']"],"mail.google.com":["".concat(DEFAULT_SELECTOR,", h2[data-thread-perm-id], span[data-thread-id], div[data-message-id] div[class=''], .messageBody, #views")],"web.whatsapp.com":[".copyable-text > span"],"chat.openai.com":["div[data-message-author-role] > div ".concat(DEFAULT_SELECTOR)],"forum.ru-board.com":[".tit, .dats, span.post, .lgf ".concat(DEFAULT_SELECTOR)],"education.github.com":["".concat(DEFAULT_SELECTOR,", a, summary, span.Button-content")],"blogs.windows.com":["".concat(DEFAULT_SELECTOR,", .c-uhf-nav-link, figcaption")],"developer.apple.com/documentation/":["#main ".concat(DEFAULT_SELECTOR,", #main .abstract .content, #main .abstract.content, #main .link span"),"code, img, svg"],"greasyfork.org":["h2, .script-link, .script-description, #additional-info ".concat(DEFAULT_SELECTOR)],"www.fmkorea.com":["#container ".concat(DEFAULT_SELECTOR)],"forum.arduino.cc":[".top-row>.title, .featured-topic>.title, .link-top-line>.title, .category-description, .topic-excerpt, .fancy-title, .cooked ".concat(DEFAULT_SELECTOR)],"docs.arduino.cc":["[class^=\"tutorial-module--left\"] ".concat(DEFAULT_SELECTOR)],"www.historydefined.net":[".wp-element-caption, ".concat(DEFAULT_SELECTOR)]};var rules_BUILTIN_RULES=Object.entries(RULES_MAP).sort(function(a,b){return a[0].localeCompare(b[0]);}).map(function(_ref){var _ref2=(0,slicedToArray/* default */.Z)(_ref,2),pattern=_ref2[0],_ref2$=(0,slicedToArray/* default */.Z)(_ref2[1],3),selector=_ref2$[0],_ref2$$=_ref2$[1],keepSelector=_ref2$$===void 0?"":_ref2$$,_ref2$$2=_ref2$[2],terms=_ref2$$2===void 0?"":_ref2$$2;return _objectSpread2(_objectSpread2({},DEFAULT_RULE),{},{pattern:pattern,selector:selector,keepSelector:keepSelector,terms:terms});}); +var GLOBAL_KEY="*";var REMAIN_KEY="-";var SHADOW_KEY=">>>";var DEFAULT_SELECTOR=":is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)";var DEFAULT_KEEP_SELECTOR="code, img, svg";var DEFAULT_RULE={pattern:"",// 匹配网址 +selector:"",// 选择器 +keepSelector:"",// 保留元素选择器 +terms:"",// 专业术语 +translator:GLOBAL_KEY,// 翻译服务 +fromLang:GLOBAL_KEY,// 源语言 +toLang:GLOBAL_KEY,// 目标语言 +textStyle:GLOBAL_KEY,// 译文样式 +transOpen:GLOBAL_KEY,// 开启翻译 +bgColor:"",// 译文颜色 +textDiyStyle:"",// 自定义译文样式 +selectStyle:"",// 选择器节点样式 +parentStyle:"",// 选择器父节点样式 +injectJs:"",// 注入JS +injectCss:"",// 注入CSS +transOnly:GLOBAL_KEY,// 是否仅显示译文 +transTiming:GLOBAL_KEY,// 翻译时机/鼠标悬停翻译 +transTag:GLOBAL_KEY,// 译文元素标签 +transTitle:GLOBAL_KEY,// 是否同时翻译页面标题 +detectRemote:GLOBAL_KEY,// 是否使用远程语言检测 +skipLangs:[],// 不翻译的语言 +fixerSelector:"",// 修复函数选择器 +fixerFunc:GLOBAL_KEY// 修复函数 +};var DEFAULT_DIY_STYLE="color: #666;\nbackground: linear-gradient(\n 45deg,\n LightGreen 20%,\n LightPink 20% 40%,\n LightSalmon 40% 60%,\n LightSeaGreen 60% 80%,\n LightSkyBlue 80%\n);\n&:hover {\n color: #333;\n};";var DEFAULT_OW_RULE={translator:REMAIN_KEY,fromLang:REMAIN_KEY,toLang:REMAIN_KEY,textStyle:REMAIN_KEY,transOpen:REMAIN_KEY,bgColor:"",textDiyStyle:DEFAULT_DIY_STYLE};var RULES_MAP={"www.google.com/search":{selector:"h3, .IsZvec, .VwiC3b"},"news.google.com":{selector:"[data-n-tid], ".concat(DEFAULT_SELECTOR)},"www.foxnews.com":{selector:"h1, h2, .title, .sidebar [data-type=\"Title\"], .article-content ".concat(DEFAULT_SELECTOR,"; [data-spotim-module=\"conversation\"]>div >>> [data-spot-im-class=\"message-text\"] p, [data-spot-im-class=\"message-text\"]")},"bearblog.dev, www.theverge.com, www.tampermonkey.net/documentation.php":{selector:"".concat(DEFAULT_SELECTOR)},"themessenger.com":{selector:".leading-tight, .leading-tighter, .my-2 p, .font-body p, article ".concat(DEFAULT_SELECTOR)},"www.telegraph.co.uk, go.dev/doc/":{selector:"article ".concat(DEFAULT_SELECTOR)},"www.theguardian.com":{selector:".show-underline, .dcr-hup5wm div, .dcr-7vl6y8 div, .dcr-12evv1c, figcaption, article ".concat(DEFAULT_SELECTOR,", [data-cy=\"mostviewed-footer\"] h4")},"www.semafor.com":{selector:"".concat(DEFAULT_SELECTOR,", .styles_intro__IYj__, [class*=\"styles_description\"]")},"www.noemamag.com":{selector:".splash__title, .single-card__title, .single-card__type, .single-card__topic, .highlighted-content__title, .single-card__author, article ".concat(DEFAULT_SELECTOR,", .quote__text, .wp-caption-text div")},"restofworld.org":{selector:"".concat(DEFAULT_SELECTOR,", .recirc-story__headline, .recirc-story__dek")},"www.axios.com":{selector:".h7, ".concat(DEFAULT_SELECTOR)},"www.newyorker.com":{selector:".summary-item__hed, .summary-item__dek, .summary-collection-grid__dek, .dqtvfu, .rubric__link, .caption, article ".concat(DEFAULT_SELECTOR,", .HEhan ").concat(DEFAULT_SELECTOR,", .ContributorBioBio-fBolsO, .BaseText-ewhhUZ")},"time.com":{selector:"h1, h3, .summary, .video-title, #article-body ".concat(DEFAULT_SELECTOR,", .image-wrap-container .credit.body-caption, .media-heading")},"www.dw.com":{selector:".ts-teaser-title a, .news-title a, .title a, .teaser-description a, .hbudab h3, .hbudab p, figcaption ,article ".concat(DEFAULT_SELECTOR)},"www.bbc.com":{selector:"h1, h2, .media__link, .media__summary, article ".concat(DEFAULT_SELECTOR,", .ssrcss-y7krbn-Stack, .ssrcss-17zglt8-PromoHeadline, .ssrcss-18cjaf3-Headline, .gs-c-promo-heading__title, .gs-c-promo-summary, .media__content h3, .article__intro, .lx-c-summary-points>li")},"www.chinadaily.com.cn":{selector:"h1, .tMain [shape=\"rect\"], .cMain [shape=\"rect\"], .photo_art [shape=\"rect\"], .mai_r [shape=\"rect\"], .lisBox li, #Content ".concat(DEFAULT_SELECTOR)},"www.facebook.com":{selector:"[role=\"main\"] [dir=\"auto\"]"},"www.reddit.com, new.reddit.com, sh.reddit.com":{selector:":is(#AppRouter-main-content, #overlayScrollContainer) :is([class^=tbIA],[class^=_1zP],[class^=ULWj],[class^=_2Jj], [class^=_334],[class^=_2Gr],[class^=_7T4],[class^=_1WO], ".concat(DEFAULT_SELECTOR,"); [id^=\"post-title\"], :is([slot=\"text-body\"], [slot=\"comment\"]) ").concat(DEFAULT_SELECTOR,", recent-posts h3, aside :is(span:has(>h2), p); shreddit-subreddit-header >>> :is(#title, #description)")},"www.quora.com":{selector:".qu-wordBreak--break-word"},"edition.cnn.com":{selector:".container__title, .container__headline, .headline__text, .image__caption, [data-type=\"Title\"], .article__content ".concat(DEFAULT_SELECTOR)},"www.reuters.com":{selector:"#main-content [data-testid=\"Heading\"], #main-content [data-testid=\"Body\"], .article-body__content__17Yit ".concat(DEFAULT_SELECTOR)},"www.bloomberg.com":{selector:"[data-component=\"headline\"], [data-component=\"related-item-headline\"], [data-component=\"title\"], article ".concat(DEFAULT_SELECTOR)},"deno.land, docs.github.com":{selector:"main ".concat(DEFAULT_SELECTOR),keepSelector:DEFAULT_KEEP_SELECTOR},"doc.rust-lang.org":{selector:".content ".concat(DEFAULT_SELECTOR),keepSelector:DEFAULT_KEEP_SELECTOR},"www.indiehackers.com":{selector:"h1, h3, .content ".concat(DEFAULT_SELECTOR,", .feed-item__title-link")},"platform.openai.com/docs":{selector:".docs-body ".concat(DEFAULT_SELECTOR),keepSelector:DEFAULT_KEEP_SELECTOR},"en.wikipedia.org":{selector:"h1, .mw-parser-output ".concat(DEFAULT_SELECTOR),keepSelector:".mwe-math-element"},"stackoverflow.com, serverfault.com, superuser.com, stackexchange.com, askubuntu.com, stackapps.com, mathoverflow.net":{selector:".s-prose ".concat(DEFAULT_SELECTOR,", .comment-copy, .question-hyperlink, .s-post-summary--content-title, .s-post-summary--content-excerpt"),keepSelector:"".concat(DEFAULT_KEEP_SELECTOR,", .math-container")},"www.npmjs.com/package, developer.chrome.com/docs, medium.com, react.dev, create-react-app.dev, pytorch.org":{selector:"article ".concat(DEFAULT_SELECTOR)},"news.ycombinator.com":{selector:".title, p",fixerSelector:".toptext, .commtext",fixerFunc:FIXER_BR},"github.com":{selector:".markdown-body ".concat(DEFAULT_SELECTOR,", .repo-description p, .Layout-sidebar .f4, .container-lg .py-4 .f5, .container-lg .my-4 .f5, .Box-row .pr-4, .Box-row article .mt-1, [itemprop=\"description\"], .markdown-title, bdi, .ws-pre-wrap, .status-meta, span.status-meta, .col-10.color-fg-muted, .TimelineItem-body, .pinned-item-list-item-content .color-fg-muted, .markdown-body td, .markdown-body th"),keepSelector:DEFAULT_KEEP_SELECTOR},"twitter.com":{selector:"[data-testid=\"tweetText\"], [data-testid=\"birdwatch-pivot\"]>div.css-1rynq56",keepSelector:"img, a, .r-18u37iz, .css-175oi2r"},"m.youtube.com":{selector:".slim-video-information-title .yt-core-attributed-string, .media-item-headline .yt-core-attributed-string, .comment-text .yt-core-attributed-string, .typography-body-2b .yt-core-attributed-string, #ytp-caption-window-container .ytp-caption-segment",selectStyle:"-webkit-line-clamp: unset; max-height: none; height: auto;",parentStyle:"-webkit-line-clamp: unset; max-height: none; height: auto;",keepSelector:"img, #content-text>a"},"www.youtube.com":{selector:"h1, #video-title, #content-text, #title, yt-attributed-string>span>span, #ytp-caption-window-container .ytp-caption-segment",selectStyle:"-webkit-line-clamp: unset; max-height: none; height: auto;",parentStyle:"-webkit-line-clamp: unset; max-height: none; height: auto;",keepSelector:"img, #content-text>a"},"bard.google.com":{selector:".query-content ".concat(DEFAULT_SELECTOR,", message-content ").concat(DEFAULT_SELECTOR)},"www.bing.com, copilot.microsoft.com":{selector:".b_algoSlug, .rwrl_padref; .cib-serp-main >>> .ac-textBlock ".concat(DEFAULT_SELECTOR,", .text-message-content div")},"www.phoronix.com":{selector:"article ".concat(DEFAULT_SELECTOR),fixerSelector:".content",fixerFunc:FIXER_BR},"wx2.qq.com":{selector:".js_message_plain"},"app.slack.com/client/":{selector:".p-rich_text_section, .c-message_attachment__text, .p-rich_text_list li"},"discord.com/channels/":{selector:"div[class^=message], div[class^=headerText], div[class^=name_], section[aria-label='Search Results'] div[id^=message-content], div[id^=message]",keepSelector:"li[class^='card'] div[class^='message'], [class^='embedFieldValue'], [data-list-item-id^='forum-channel-list'] div[class^='headerText']"},"t.me/s/":{selector:".js-message_text ".concat(DEFAULT_SELECTOR),fixerSelector:".tgme_widget_message_text",fixerFunc:FIXER_BR},"web.telegram.org/k":{selector:"div.kiss-p",keepSelector:"div[class^=time], .peer-title, .document-wrapper, .message.spoilers-container custom-emoji-element, reactions-element",fixerSelector:".message",fixerFunc:FIXER_BN_DIV},"web.telegram.org/a":{selector:".text-content > .kiss-p",keepSelector:".Reactions, .time, .peer-title, .document-wrapper, .message.spoilers-container custom-emoji-element",fixerSelector:".text-content",fixerFunc:FIXER_BR_DIV},"www.instagram.com/":{selector:"h1, article span[dir=auto] > span[dir=auto], ._ab1y"},"www.instagram.com/p/,www.instagram.com/reels/":{selector:"h1, div[class='x9f619 xjbqb8w x78zum5 x168nmei x13lgxp2 x5pf9jr xo71vjh x1uhb9sk x1plvlek xryxfnj x1c4vz4f x2lah0s xdt5ytf xqjyukv x1cy8zhl x1oa3qoh x1nhvcw1'] > span[class='x1lliihq x1plvlek xryxfnj x1n2onr6 x193iq5w xeuugli x1fj9vlw x13faqbe x1vvkbs x1s928wv xhkezso x1gmr53x x1cpjm7i x1fgarty x1943h6x x1i0vuye xvs91rp xo1l8bm x5n08af x10wh9bi x1wdrske x8viiok x18hxmgj'], span[class='x193iq5w xeuugli x1fj9vlw x13faqbe x1vvkbs xt0psk2 x1i0vuye xvs91rp xo1l8bm x5n08af x10wh9bi x1wdrske x8viiok x18hxmgj']"},"mail.google.com":{selector:".a3s.aiL ".concat(DEFAULT_SELECTOR,", span[data-thread-id]"),fixerSelector:".a3s.aiL",fixerFunc:FIXER_BR},"web.whatsapp.com":{selector:".copyable-text > span"},"chat.openai.com":{selector:"div[data-message-author-role] > div ".concat(DEFAULT_SELECTOR),fixerSelector:"div[data-message-author-role='user'] > div",fixerFunc:FIXER_BN},"forum.ru-board.com":{selector:".tit, .dats, .kiss-p, .lgf ".concat(DEFAULT_SELECTOR),fixerSelector:"span.post",fixerFunc:FIXER_BR},"education.github.com":{selector:"".concat(DEFAULT_SELECTOR,", a, summary, span.Button-content")},"blogs.windows.com":{selector:"".concat(DEFAULT_SELECTOR,", .c-uhf-nav-link, figcaption"),fixerSelector:".t-content>div>ul>li",fixerFunc:FIXER_BR},"developer.apple.com/documentation/":{selector:"#main ".concat(DEFAULT_SELECTOR,", #main .abstract .content, #main .abstract.content, #main .link span"),keepSelector:DEFAULT_KEEP_SELECTOR},"greasyfork.org":{selector:"h2, .script-link, .script-description, #additional-info ".concat(DEFAULT_SELECTOR)},"www.fmkorea.com":{selector:"#container ".concat(DEFAULT_SELECTOR)},"forum.arduino.cc":{selector:".top-row>.title, .featured-topic>.title, .link-top-line>.title, .category-description, .topic-excerpt, .fancy-title, .cooked ".concat(DEFAULT_SELECTOR)},"docs.arduino.cc":{selector:"[class^=\"tutorial-module--left\"] ".concat(DEFAULT_SELECTOR)},"www.historydefined.net":{selector:".wp-element-caption, ".concat(DEFAULT_SELECTOR)},"gobyexample.com":{selector:".docs p",keepSelector:"code"},"go.dev/tour":{selector:"#left-side ".concat(DEFAULT_SELECTOR),keepSelector:"code, img, svg >>> code"},"pkg.go.dev":{selector:".Documentation-content ".concat(DEFAULT_SELECTOR),keepSelector:"".concat(DEFAULT_KEEP_SELECTOR,", a, span")},"docs.rs":{selector:".docblock ".concat(DEFAULT_SELECTOR,", .docblock-short"),keepSelector:"code >>> code"},"randomnerdtutorials.com":{selector:"article ".concat(DEFAULT_SELECTOR)},"notebooks.githubusercontent.com/view/ipynb":{selector:"#notebook-container ".concat(DEFAULT_SELECTOR),keepSelector:DEFAULT_KEEP_SELECTOR},"developers.cloudflare.com":{selector:"article ".concat(DEFAULT_SELECTOR,", .WorkerStarter--description"),keepSelector:"a[rel='noopener'], code"},"ubuntuforums.org":{fixerSelector:".postcontent",fixerFunc:FIXER_BR},"play.google.com/store/apps/details":{fixerSelector:"[data-g-id=\"description\"]",fixerFunc:FIXER_BR},"news.yahoo.co.jp/articles/":{fixerSelector:".sc-cTsKDU",fixerFunc:FIXER_BN},"chromereleases.googleblog.com":{fixerSelector:".post-content, .post-content > span, li > span",fixerFunc:FIXER_BR}};var rules_BUILTIN_RULES=Object.entries(RULES_MAP).sort(function(a,b){return a[0].localeCompare(b[0]);}).map(function(_ref){var _ref2=(0,slicedToArray/* default */.Z)(_ref,2),pattern=_ref2[0],rule=_ref2[1];return _objectSpread2(_objectSpread2(_objectSpread2({},DEFAULT_RULE),rule),{},{pattern:pattern});}); ;// CONCATENATED MODULE: ./src/config/app.js var APP_NAME="KISS Translator".trim().split(/\s+/).join("-");var APP_LCNAME=APP_NAME.toLowerCase(); ;// CONCATENATED MODULE: ./src/config/i18n.js -var UI_LANGS=(/* unused pure expression or super */ null && ([["en","English"],["zh","中文"]]));var customApiLangs="[\"en\", \"English - English\"],\n[\"zh-CN\", \"Simplified Chinese - \u7B80\u4F53\u4E2D\u6587\"],\n[\"zh-TW\", \"Traditional Chinese - \u7E41\u9AD4\u4E2D\u6587\"],\n[\"ar\", \"Arabic - \u0627\u0644\u0639\u0631\u0628\u064A\u0629\"],\n[\"bg\", \"Bulgarian - \u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438\"],\n[\"ca\", \"Catalan - Catal\xE0\"],\n[\"hr\", \"Croatian - Hrvatski\"],\n[\"cs\", \"Czech - \u010Ce\u0161tina\"],\n[\"da\", \"Danish - Dansk\"],\n[\"nl\", \"Dutch - Nederlands\"],\n[\"fi\", \"Finnish - Suomi\"],\n[\"fr\", \"French - Fran\xE7ais\"],\n[\"de\", \"German - Deutsch\"],\n[\"el\", \"Greek - \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC\"],\n[\"hi\", \"Hindi - \u0939\u093F\u0928\u094D\u0926\u0940\"],\n[\"hu\", \"Hungarian - Magyar\"],\n[\"id\", \"Indonesian - Indonesia\"],\n[\"it\", \"Italian - Italiano\"],\n[\"ja\", \"Japanese - \u65E5\u672C\u8A9E\"],\n[\"ko\", \"Korean - \uD55C\uAD6D\uC5B4\"],\n[\"ms\", \"Malay - Melayu\"],\n[\"mt\", \"Maltese - Malti\"],\n[\"nb\", \"Norwegian - Norsk Bokm\xE5l\"],\n[\"pl\", \"Polish - Polski\"],\n[\"pt\", \"Portuguese - Portugu\xEAs\"],\n[\"ro\", \"Romanian - Rom\xE2n\u0103\"],\n[\"ru\", \"Russian - \u0420\u0443\u0441\u0441\u043A\u0438\u0439\"],\n[\"sk\", \"Slovak - Sloven\u010Dina\"],\n[\"sl\", \"Slovenian - Sloven\u0161\u010Dina\"],\n[\"es\", \"Spanish - Espa\xF1ol\"],\n[\"sv\", \"Swedish - Svenska\"],\n[\"ta\", \"Tamil - \u0BA4\u0BAE\u0BBF\u0BB4\u0BCD\"],\n[\"te\", \"Telugu - \u0C24\u0C46\u0C32\u0C41\u0C17\u0C41\"],\n[\"th\", \"Thai - \u0E44\u0E17\u0E22\"],\n[\"tr\", \"Turkish - T\xFCrk\xE7e\"],\n[\"uk\", \"Ukrainian - \u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430\"],\n[\"vi\", \"Vietnamese - Ti\u1EBFng Vi\u1EC7t\"],\n";var customApiHelpZH="/// \u81EA\u5B9A\u4E49\u7FFB\u8BD1\u6E90\u63A5\u53E3\u8BF4\u660E\n\n// \u8BF7\u6C42\uFF08Request\uFF09\u6570\u636E\u5C06\u6309\u4E0B\u9762\u89C4\u8303\u53D1\u9001\n{\n url: {{YOUR_URL}},\n method: \"POST\",\n headers: {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{YOUR_KEY}}\",\n },\n body: {\n text: \"\", // \u9700\u8981\u7FFB\u8BD1\u7684\u6587\u5B57\n from: \"\", // \u6E90\u8BED\u8A00\uFF0C\u53EF\u80FD\u4E3A\u7A7A\uFF0C\u8868\u793A\u9700\u8981\u63A5\u53E3\u81EA\u52A8\u8BC6\u522B\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\n }\n}\n\n// \u8FD4\u56DE\uFF08Response\uFF09\u6570\u636E\u9700\u7B26\u5408\u4E0B\u9762\u7684JSON\u89C4\u8303\n{\n text: \"\", // \u7FFB\u8BD1\u540E\u7684\u6587\u5B57\n from: \"\", // \u8BC6\u522B\u7684\u6E90\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\uFF08\u53EF\u9009\uFF09\n}\n\n// \u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u5982\u4E0B\n".concat(customApiLangs,"\n");var customApiHelpEN="/// Custom translation source interface description\n\n// Request data will be sent according to the following specifications\n{\n url: {{YOUR_URL}},\n method: \"POST\",\n headers: {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{YOUR_KEY}}\",\n },\n body: {\n text: \"\", // text to be translated\n from: \"\", // Source language, may be empty\n to: \"\", // Target language\n }\n}\n\n// The returned data must conform to the following JSON specification\n{\n text: \"\", // translated text\n from: \"\", // Recognized source language\n to: \"\", // Target language (optional)\n}\n\n// The supported language codes are as follows\n".concat(customApiLangs,"\n");var I18N={app_name:{zh:"\u7B80\u7EA6\u7FFB\u8BD1",en:"KISS Translator"},translate:{zh:"\u7FFB\u8BD1",en:"Translate"},custom_api_help:{zh:customApiHelpZH,en:customApiHelpEN},translate_alt:{zh:"\u7FFB\u8BD1",en:"Translate"},basic_setting:{zh:"\u57FA\u672C\u8BBE\u7F6E",en:"Basic Setting"},rules_setting:{zh:"\u89C4\u5219\u8BBE\u7F6E",en:"Rules Setting"},apis_setting:{zh:"\u63A5\u53E3\u8BBE\u7F6E",en:"Apis Setting"},sync_setting:{zh:"\u540C\u6B65\u8BBE\u7F6E",en:"Sync Setting"},patch_setting:{zh:"\u8865\u4E01\u8BBE\u7F6E",en:"Patch Setting"},patch_setting_help:{zh:"\u9488\u5BF9\u4E00\u4E9B\u7279\u6B8A\u7F51\u7AD9\u7684\u4FEE\u6B63\u811A\u672C\uFF0C\u4EE5\u4FBF\u7FFB\u8BD1\u8F6F\u4EF6\u5F97\u5230\u66F4\u597D\u7684\u5C55\u793A\u6548\u679C\u3002",en:"Corrected scripts for some special websites so that the translation software can get better display results."},inject_webfix:{zh:"\u6CE8\u5165\u4FEE\u590D\u8865\u4E01",en:"Inject Webfix"},about:{zh:"\u5173\u4E8E",en:"About"},about_md:{zh:"README.md",en:"README.en.md"},about_md_local:{zh:"\u8BF7 [\u70B9\u51FB\u8FD9\u91CC](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8BE6\u60C5\u3002"),en:"Please [click here](".concat("https://github.com/fishjar/kiss-translator",") for details.")},ui_lang:{zh:"\u754C\u9762\u8BED\u8A00",en:"Interface Language"},fetch_limit:{zh:"\u6700\u5927\u8BF7\u6C42\u6570\u91CF (1-100)",en:"Maximum Number Of Request (1-100)"},fetch_interval:{zh:"\u8BF7\u6C42\u95F4\u9694\u65F6\u95F4 (0-5000ms)",en:"Request Interval (0-5000ms)"},min_translate_length:{zh:"\u6700\u5C0F\u7FFB\u8BD1\u957F\u5EA6 (1-100)",en:"Min Translate Length (1-100)"},max_translate_length:{zh:"\u6700\u5927\u7FFB\u8BD1\u957F\u5EA6 (100-10000)",en:"Max Translate Length (100-10000)"},num_of_newline_characters:{zh:"\u6362\u884C\u5B57\u7B26\u6570 (1-1000)",en:"Number of Newline Characters (1-1000)"},translate_service:{zh:"\u7FFB\u8BD1\u670D\u52A1",en:"Translate Service"},translate_timing:{zh:"\u7FFB\u8BD1\u65F6\u673A",en:"Translate Timing"},mk_disable:{zh:"\u6EDA\u52A8\u52A0\u8F7D\uFF08\u5EFA\u8BAE\uFF09",en:"Rolling Loading (Suggested)"},mk_pageopen:{zh:"\u9875\u9762\u6253\u5F00",en:"Page Open"},mk_mouseover:{zh:"\u9F20\u6807\u60AC\u505C",en:"Mouseover"},mk_ctrlKey:{zh:"Control + \u9F20\u6807\u60AC\u505C",en:"Control + Mouseover"},mk_shiftKey:{zh:"Shift + \u9F20\u6807\u60AC\u505C",en:"Shift + Mouseover"},mk_altKey:{zh:"Alt + \u9F20\u6807\u60AC\u505C",en:"Alt + Mouseover"},from_lang:{zh:"\u539F\u6587\u8BED\u8A00",en:"Source Language"},to_lang:{zh:"\u76EE\u6807\u8BED\u8A00",en:"Target Language"},to_lang2:{zh:"\u7B2C\u4E8C\u76EE\u6807\u8BED\u8A00",en:"Target Language 2"},to_lang2_helper:{zh:"\u8BBE\u5B9A\u540E\uFF0C\u4E0E\u76EE\u6807\u8BED\u8A00\u4EA7\u751F\u4E92\u8BD1\u6548\u679C\uFF0C\u4F46\u4F9D\u8D56\u8FDC\u7A0B\u8BED\u8A00\u8BC6\u522B\u3002",en:"After setting, it will produce mutual translation effect with the target language, but it relies on remote language recognition."},text_style:{zh:"\u6587\u5B57\u6837\u5F0F",en:"Text Style"},text_style_alt:{zh:"\u6587\u5B57\u6837\u5F0F",en:"Text Style"},bg_color:{zh:"\u6837\u5F0F\u989C\u8272",en:"Style Color"},remain_unchanged:{zh:"\u4FDD\u7559\u4E0D\u53D8",en:"Remain Unchanged"},google_api:{zh:"\u8C37\u6B4C\u7FFB\u8BD1\u63A5\u53E3",en:"Google Translate API"},default_selector:{zh:"\u9ED8\u8BA4\u9009\u62E9\u5668",en:"Default selector"},selector_rules:{zh:"\u9009\u62E9\u5668\u89C4\u5219",en:"Selector Rules"},save:{zh:"\u4FDD\u5B58",en:"Save"},edit:{zh:"\u7F16\u8F91",en:"Edit"},cancel:{zh:"\u53D6\u6D88",en:"Cancel"},delete:{zh:"\u5220\u9664",en:"Delete"},reset:{zh:"\u91CD\u7F6E",en:"Reset"},add:{zh:"\u6DFB\u52A0",en:"Add"},inject_rules:{zh:"\u6CE8\u5165\u8BA2\u9605\u89C4\u5219",en:"Inject Subscribe Rules"},personal_rules:{zh:"\u4E2A\u4EBA\u89C4\u5219",en:"Rules"},subscribe_rules:{zh:"\u8BA2\u9605\u89C4\u5219",en:"Subscribe"},overwrite_subscribe_rules:{zh:"\u8986\u5199\u8BA2\u9605\u89C4\u5219",en:"Overwrite"},subscribe_url:{zh:"\u8BA2\u9605\u5730\u5740",en:"Subscribe URL"},rules_warn_1:{zh:"1\u3001\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u4E00\u76F4\u751F\u6548\uFF0C\u9009\u62E9\u201C\u6CE8\u5165\u8BA2\u9605\u89C4\u5219\u201D\u540E\uFF0C\u201C\u8BA2\u9605\u89C4\u5219\u201D\u624D\u4F1A\u751F\u6548\u3002",en:"1. The \"Personal Rules\" are always in effect. After selecting \"Inject Subscription Rules\", the \"Subscription Rules\" will take effect."},rules_warn_2:{zh:"2\u3001\u201C\u8BA2\u9605\u89C4\u5219\u201D\u7684\u6CE8\u5165\u4F4D\u7F6E\u662F\u5012\u6570\u7B2C\u4E8C\u7684\u4F4D\u7F6E\uFF0C\u56E0\u6B64\u9664\u5168\u5C40\u89C4\u5219(*)\u5916\uFF0C\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u4F18\u5148\u7EA7\u6BD4\u201C\u8BA2\u9605\u89C4\u5219\u201D\u9AD8\uFF0C\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u586B\u5199\u540C\u6837\u7684\u7F51\u5740\u4F1A\u8986\u76D6\u201D\u8BA2\u9605\u89C4\u5219\u201C\u7684\u6761\u76EE\u3002",en:"2. The injection position of \"Subscription Rules\" is the penultimate position. Therefore, except for the global rules (*), the priority of \"Personal Rules\" is higher than that of \"Subscription Rules\". Filling in the same url in \"Personal Rules\" will overwrite \"Subscription Rules\" entry."},sync_warn:{zh:"\u5982\u679C\u670D\u52A1\u5668\u5B58\u5728\u5176\u4ED6\u5BA2\u6237\u7AEF\u540C\u6B65\u7684\u6570\u636E\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u5C06\u76F4\u63A5\u8986\u76D6\u672C\u5730\u914D\u7F6E\uFF0C\u540E\u9762\u5219\u6839\u636E\u4FEE\u6539\u65F6\u95F4\uFF0C\u65B0\u7684\u8986\u76D6\u65E7\u7684\u3002",en:"If the server has data synchronized by other clients, the first synchronization will directly overwrite the local configuration, and later, according to the modification time, the new one will overwrite the old one."},about_sync_api:{zh:"\u67E5\u770B\u5173\u4E8E\u6570\u636E\u540C\u6B65\u63A5\u53E3\u90E8\u7F72",en:"View About Data Synchronization Interface Deployment"},about_api_proxy:{zh:"\u67E5\u770B\u81EA\u5EFA\u4E00\u4E2A\u7FFB\u8BD1\u63A5\u53E3\u4EE3\u7406",en:"Check out the self-built translation interface proxy"},style_none:{zh:"\u65E0",en:"None"},under_line:{zh:"\u4E0B\u5212\u76F4\u7EBF",en:"Underline"},dot_line:{zh:"\u4E0B\u5212\u70B9\u72B6\u7EBF",en:"Dotted Underline"},dash_line:{zh:"\u4E0B\u5212\u865A\u7EBF",en:"Dashed Underline"},wavy_line:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF",en:"Wavy Underline"},fuzzy:{zh:"\u6A21\u7CCA",en:"Fuzzy"},highlight:{zh:"\u9AD8\u4EAE",en:"Highlight"},blockquote:{zh:"\u5F15\u7528",en:"Blockquote"},diy_style:{zh:"\u81EA\u5B9A\u4E49\u6837\u5F0F",en:"Custom Style"},diy_style_helper:{zh:"\u9075\u5FAA\u201CCSS\u201D\u7684\u8BED\u6CD5",en:"Follow the syntax of \"CSS\""},setting:{zh:"\u8BBE\u7F6E",en:"Setting"},pattern:{zh:"\u5339\u914D\u7F51\u5740",en:"URL pattern"},pattern_helper:{zh:"1\u3001\u652F\u6301\u661F\u53F7(*)\u901A\u914D\u7B26\u30022\u3001\u591A\u4E2AURL\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u3002",en:"1. Supports the asterisk (*) wildcard character. 2. Separate multiple URLs with newlines or English commas \",\"."},selector_helper:{zh:"1\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u30022\u3001\u7559\u7A7A\u8868\u793A\u91C7\u7528\u5168\u5C40\u8BBE\u7F6E\u30023\u3001\u591A\u4E2ACSS\u9009\u62E9\u5668\u4E4B\u95F4\u7528\u201C;\u201D\u9694\u5F00\u30024\u3001\u201Cshadow root\u201D\u9009\u62E9\u5668\u548C\u5185\u90E8\u9009\u62E9\u5668\u7528\u201C>>>\u201D\u9694\u5F00\u3002",en:"1. Follow CSS selector syntax. 2. Leave blank to adopt the global setting. 3. Separate multiple CSS selectors with \";\". 4. The \"shadow root\" selector and the internal selector are separated by \">>>\"."},translate_switch:{zh:"\u5F00\u542F\u7FFB\u8BD1",en:"Translate Switch"},default_enabled:{zh:"\u9ED8\u8BA4\u5F00\u542F",en:"Enabled"},default_disabled:{zh:"\u9ED8\u8BA4\u5173\u95ED",en:"Disabled"},selector:{zh:"\u9009\u62E9\u5668",en:"Selector"},keep_selector:{zh:"\u4FDD\u7559\u5143\u7D20\u9009\u62E9\u5668",en:"Keep unchanged selector"},keep_selector_helper:{zh:"1\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u30022\u3001\u7559\u7A7A\u8868\u793A\u91C7\u7528\u5168\u5C40\u8BBE\u7F6E\u30023\u3001\u5B50\u5143\u7D20\u9009\u62E9\u5668\u7528\u201C>>>\u201D\u9694\u5F00\u3002",en:"1. Follow CSS selector syntax. 2. Leave blank to adopt the global setting. 3.Sub-element selectors are separated by \">>>\"."},terms:{zh:"\u4E13\u4E1A\u672F\u8BED",en:"Terms"},terms_helper:{zh:"0\u3001\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\u30021\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30022\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30023\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u30024\u3001\u7559\u7A7A\u8868\u793A\u91C7\u7528\u5168\u5C40\u8BBE\u7F6E\u3002",en:"0. Supports regular expression matching. 1. Separate multiple terms with newlines or semicolons \";\". 2. Terms and translations are separated by English commas \",\". 3. If there is no translation, the term will be deemed not to be translated. 4. Leave blank to adopt the global setting."},root_selector:{zh:"\u6839\u9009\u62E9\u5668",en:"Root Selector"},fixer_function:{zh:"\u4FEE\u590D\u51FD\u6570",en:"Fixer Function"},import:{zh:"\u5BFC\u5165",en:"Import"},export:{zh:"\u5BFC\u51FA",en:"Export"},error_cant_be_blank:{zh:"\u4E0D\u80FD\u4E3A\u7A7A",en:"Can not be blank"},error_duplicate_values:{zh:"\u5B58\u5728\u91CD\u590D\u7684\u503C",en:"There are duplicate values"},error_wrong_file_type:{zh:"\u9519\u8BEF\u7684\u6587\u4EF6\u7C7B\u578B",en:"Wrong file type"},error_fetch_url:{zh:"\u8BF7\u68C0\u67E5url\u5730\u5740\u662F\u5426\u6B63\u786E\u6216\u7A0D\u540E\u518D\u8BD5\u3002",en:"Please check if the url address is correct or try again later."},deepl_api:{zh:"DeepL \u63A5\u53E3",en:"DeepL API"},deepl_key:{zh:"DeepL \u5BC6\u94A5",en:"DeepL Key"},openai_api:{zh:"OpenAI \u63A5\u53E3",en:"OpenAI API"},openai_key:{zh:"OpenAI \u5BC6\u94A5",en:"OpenAI Key"},openai_model:{zh:"OpenAI \u6A21\u578B",en:"OpenAI Model"},openai_prompt:{zh:"OpenAI \u63D0\u793A\u8BCD",en:"OpenAI Prompt"},if_clear_cache:{zh:"\u662F\u5426\u6E05\u9664\u7F13\u5B58",en:"Whether clear cache"},clear_cache_never:{zh:"\u4E0D\u6E05\u9664\u7F13\u5B58",en:"Never clear cache"},clear_cache_restart:{zh:"\u91CD\u542F\u6D4F\u89C8\u5668\u65F6\u6E05\u9664\u7F13\u5B58",en:"Clear cache when restarting browser"},data_sync_type:{zh:"\u6570\u636E\u540C\u6B65\u65B9\u5F0F",en:"Data Sync Type"},data_sync_url:{zh:"\u6570\u636E\u540C\u6B65\u63A5\u53E3",en:"Data Sync API"},data_sync_user:{zh:"\u6570\u636E\u540C\u6B65\u8D26\u6237",en:"Data Sync User"},data_sync_key:{zh:"\u6570\u636E\u540C\u6B65\u5BC6\u94A5",en:"Data Sync Key"},sync_now:{zh:"\u7ACB\u5373\u540C\u6B65",en:"Sync Now"},sync_success:{zh:"\u540C\u6B65\u6210\u529F\uFF01",en:"Sync Success"},sync_failed:{zh:"\u540C\u6B65\u5931\u8D25\uFF01",en:"Sync Error"},error_got_some_wrong:{zh:"\u62B1\u6B49\uFF0C\u51FA\u9519\u4E86\uFF01",en:"Sorry, something went wrong!"},error_sync_setting:{zh:"\u60A8\u7684\u540C\u6B65\u7C7B\u578B\u5FC5\u987B\u4E3A\u201CKISS-Worker\u201D\uFF0C\u4E14\u9700\u586B\u5199\u5B8C\u6574",en:"Your sync type must be \"KISS-Worker\" and must be filled in completely"},click_test:{zh:"\u70B9\u51FB\u6D4B\u8BD5",en:"Click Test"},test_success:{zh:"\u6D4B\u8BD5\u6210\u529F",en:"Test success"},test_failed:{zh:"\u6D4B\u8BD5\u5931\u8D25",en:"Test failed"},clear_all_cache_now:{zh:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u7F13\u5B58",en:"Clear all cache now"},clear_cache:{zh:"\u6E05\u9664\u7F13\u5B58",en:"Clear Cache"},clear_success:{zh:"\u6E05\u9664\u6210\u529F",en:"Clear success"},clear_failed:{zh:"\u6E05\u9664\u5931\u8D25",en:"Clear failed"},share:{zh:"\u5206\u4EAB",en:"Share"},clear_all:{zh:"\u6E05\u7A7A",en:"Clear All"},help:{zh:"\u6C42\u52A9",en:"Help"},restore_default:{zh:"\u6062\u590D\u9ED8\u8BA4",en:"Restore Default"},shortcuts_setting:{zh:"\u5FEB\u6377\u952E\u8BBE\u7F6E",en:"Shortcuts Setting"},toggle_translate_shortcut:{zh:"\"\u5F00\u542F\u7FFB\u8BD1\"\u5FEB\u6377\u952E",en:"\"Toggle Translate\" Shortcut"},toggle_style_shortcut:{zh:"\"\u5207\u6362\u6837\u5F0F\"\u5FEB\u6377\u952E",en:"\"Toggle Style\" Shortcut"},toggle_popup_shortcut:{zh:"\"\u6253\u5F00\u5F39\u7A97\"\u5FEB\u6377\u952E",en:"\"Open Popup\" Shortcut"},open_setting_shortcut:{zh:"\"\u6253\u5F00\u8BBE\u7F6E\"\u5FEB\u6377\u952E",en:"\"Open Setting\" Shortcut"},hide_fab_button:{zh:"\u9690\u85CF\u60AC\u6D6E\u6309\u94AE",en:"Hide Fab Button"},hide_tran_button:{zh:"\u9690\u85CF\u7FFB\u8BD1\u6309\u94AE",en:"Hide Translate Button"},show:{zh:"\u663E\u793A",en:"Show"},hide:{zh:"\u9690\u85CF",en:"Hide"},save_rule:{zh:"\u4FDD\u5B58\u89C4\u5219",en:"Save Rule"},global_rule:{zh:"\u5168\u5C40\u89C4\u5219",en:"Global Rule"},input_translate:{zh:"\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation"},use_input_box_translation:{zh:"\u542F\u7528\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation"},input_selector:{zh:"\u8F93\u5165\u6846\u9009\u62E9\u5668",en:"Input Selector"},input_selector_helper:{zh:"\u7528\u4E8E\u8F93\u5165\u6846\u7FFB\u8BD1\u3002",en:"Used for input box translation."},trigger_trans_shortcut:{zh:"\u89E6\u53D1\u7FFB\u8BD1\u5FEB\u6377\u952E",en:"Trigger Translation Shortcut Keys"},trigger_trans_shortcut_help:{zh:"\u9ED8\u8BA4\u4E3A\u5355\u51FB\u201CAltLeft+KeyI\u201D",en:"Default is \"AltLeft+KeyI\""},shortcut_press_count:{zh:"\u5FEB\u6377\u952E\u8FDE\u51FB\u6B21\u6570",en:"Shortcut Press Number"},combo_timeout:{zh:"\u8FDE\u51FB\u8D85\u65F6\u65F6\u95F4 (10-1000ms)",en:"Combo Timeout (10-1000ms)"},input_trans_start_sign:{zh:"\u7FFB\u8BD1\u8D77\u59CB\u6807\u8BC6",en:"Translation Start Sign"},input_trans_start_sign_help:{zh:"\u6807\u8BC6\u540E\u9762\u53EF\u4EE5\u52A0\u76EE\u6807\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1A \u201C/en \u4F60\u597D\u201D\u3001\u201C/zh hello\u201D",en:"The target language code can be added after the sign, such as: \"/en \u4F60\u597D\", \"/zh hello\""},detect_lang_remote:{zh:"\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B",en:"Remote language detection"},detect_lang_remote_help:{zh:"\u542F\u7528\u540E\u68C0\u6D4B\u51C6\u786E\u5EA6\u589E\u52A0\uFF0C\u4F46\u4F1A\u964D\u4F4E\u7FFB\u8BD1\u901F\u5EA6\uFF0C\u8BF7\u914C\u60C5\u5F00\u542F",en:"After enabling, the detection accuracy will increase, but it will reduce the translation speed. Please enable it as appropriate."},disable:{zh:"\u7981\u7528",en:"Disable"},enable:{zh:"\u542F\u7528",en:"Enable"},selection_translate:{zh:"\u5212\u8BCD\u7FFB\u8BD1",en:"Selection Translate"},toggle_selection_translate:{zh:"\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"Use Selection Translate"},trigger_tranbox_shortcut:{zh:"\u663E\u793A\u7FFB\u8BD1\u6846/\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57\u5FEB\u6377\u952E",en:"Open Translate Popup/Translate Selected Shortcut"},tranbtn_offset_x:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBX\uFF080-100\uFF09",en:"Translate Button Offset X (0-100)"},tranbtn_offset_y:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBY\uFF080-100\uFF09",en:"Translate Button Offset Y (0-100)"},translated_text:{zh:"\u8BD1\u6587",en:"Translated Text"},original_text:{zh:"\u539F\u6587",en:"Original Text"},favorite_words:{zh:"\u6536\u85CF\u8BCD\u6C47",en:"Favorite Words"},touch_setting:{zh:"\u89E6\u5C4F\u8BBE\u7F6E",en:"Touch Setting"},touch_translate_shortcut:{zh:"\u89E6\u5C4F\u7FFB\u8BD1\u5FEB\u6377\u65B9\u5F0F",en:"Touch Translate Shortcut"},touch_tap_0:{zh:"\u7981\u7528",en:"Disable"},touch_tap_2:{zh:"\u53CC\u6307\u8F7B\u89E6",en:"Two finger tap"},touch_tap_3:{zh:"\u4E09\u6307\u8F7B\u89E6",en:"Three finger tap"},touch_tap_4:{zh:"\u56DB\u6307\u8F7B\u89E6",en:"Four finger tap"},translate_blacklist:{zh:"\u7981\u7528\u7FFB\u8BD1\u540D\u5355",en:"Translate Blacklist"},disable_langs:{zh:"\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",en:"Disable Languages"},disable_langs_helper:{zh:"\u6B64\u529F\u80FD\u4F9D\u8D56\u51C6\u786E\u7684\u8BED\u8A00\u68C0\u6D4B\uFF0C\u5EFA\u8BAE\u542F\u7528\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B\u3002",en:"This feature relies on accurate language detection. It is recommended to enable remote language detection."},context_menus:{zh:"\u53F3\u952E\u83DC\u5355",en:"Context Menus"},hide_context_menus:{zh:"\u9690\u85CF\u53F3\u952E\u83DC\u5355",en:"Hide Context Menus"},simple_context_menus:{zh:"\u7B80\u5355\u53F3\u952E\u83DC\u5355",en:"Simple_context_menus Context Menus"},secondary_context_menus:{zh:"\u4E8C\u7EA7\u53F3\u952E\u83DC\u5355",en:"Secondary Context Menus"},mulkeys_help:{zh:"\u652F\u6301\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u591A\u4E2AKEY\u8F6E\u8BE2\u8C03\u7528\u3002",en:"Supports multiple KEY polling calls separated by newlines or English commas \",\"."},translate_page_title:{zh:"\u662F\u5426\u540C\u65F6\u7FFB\u8BD1\u9875\u9762\u6807\u9898",en:"Translate Page Title"}}; +var UI_LANGS=(/* unused pure expression or super */ null && ([["en","English"],["zh","中文"]]));var customApiLangs="[\"en\", \"English - English\"],\n[\"zh-CN\", \"Simplified Chinese - \u7B80\u4F53\u4E2D\u6587\"],\n[\"zh-TW\", \"Traditional Chinese - \u7E41\u9AD4\u4E2D\u6587\"],\n[\"ar\", \"Arabic - \u0627\u0644\u0639\u0631\u0628\u064A\u0629\"],\n[\"bg\", \"Bulgarian - \u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438\"],\n[\"ca\", \"Catalan - Catal\xE0\"],\n[\"hr\", \"Croatian - Hrvatski\"],\n[\"cs\", \"Czech - \u010Ce\u0161tina\"],\n[\"da\", \"Danish - Dansk\"],\n[\"nl\", \"Dutch - Nederlands\"],\n[\"fi\", \"Finnish - Suomi\"],\n[\"fr\", \"French - Fran\xE7ais\"],\n[\"de\", \"German - Deutsch\"],\n[\"el\", \"Greek - \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC\"],\n[\"hi\", \"Hindi - \u0939\u093F\u0928\u094D\u0926\u0940\"],\n[\"hu\", \"Hungarian - Magyar\"],\n[\"id\", \"Indonesian - Indonesia\"],\n[\"it\", \"Italian - Italiano\"],\n[\"ja\", \"Japanese - \u65E5\u672C\u8A9E\"],\n[\"ko\", \"Korean - \uD55C\uAD6D\uC5B4\"],\n[\"ms\", \"Malay - Melayu\"],\n[\"mt\", \"Maltese - Malti\"],\n[\"nb\", \"Norwegian - Norsk Bokm\xE5l\"],\n[\"pl\", \"Polish - Polski\"],\n[\"pt\", \"Portuguese - Portugu\xEAs\"],\n[\"ro\", \"Romanian - Rom\xE2n\u0103\"],\n[\"ru\", \"Russian - \u0420\u0443\u0441\u0441\u043A\u0438\u0439\"],\n[\"sk\", \"Slovak - Sloven\u010Dina\"],\n[\"sl\", \"Slovenian - Sloven\u0161\u010Dina\"],\n[\"es\", \"Spanish - Espa\xF1ol\"],\n[\"sv\", \"Swedish - Svenska\"],\n[\"ta\", \"Tamil - \u0BA4\u0BAE\u0BBF\u0BB4\u0BCD\"],\n[\"te\", \"Telugu - \u0C24\u0C46\u0C32\u0C41\u0C17\u0C41\"],\n[\"th\", \"Thai - \u0E44\u0E17\u0E22\"],\n[\"tr\", \"Turkish - T\xFCrk\xE7e\"],\n[\"uk\", \"Ukrainian - \u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430\"],\n[\"vi\", \"Vietnamese - Ti\u1EBFng Vi\u1EC7t\"],\n";var customApiHelpZH="/// \u81EA\u5B9A\u4E49\u7FFB\u8BD1\u6E90\u63A5\u53E3\u8BF4\u660E\n\n// \u8BF7\u6C42\uFF08Request\uFF09\u6570\u636E\u5C06\u6309\u4E0B\u9762\u89C4\u8303\u53D1\u9001\n{\n url: {{YOUR_URL}},\n method: \"POST\",\n headers: {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{YOUR_KEY}}\",\n },\n body: {\n text: \"\", // \u9700\u8981\u7FFB\u8BD1\u7684\u6587\u5B57\n from: \"\", // \u6E90\u8BED\u8A00\uFF0C\u53EF\u80FD\u4E3A\u7A7A\uFF0C\u8868\u793A\u9700\u8981\u63A5\u53E3\u81EA\u52A8\u8BC6\u522B\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\n }\n}\n\n// \u8FD4\u56DE\uFF08Response\uFF09\u6570\u636E\u9700\u7B26\u5408\u4E0B\u9762\u7684JSON\u89C4\u8303\n{\n text: \"\", // \u7FFB\u8BD1\u540E\u7684\u6587\u5B57\n from: \"\", // \u8BC6\u522B\u7684\u6E90\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\uFF08\u53EF\u9009\uFF09\n}\n\n// \u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u5982\u4E0B\n".concat(customApiLangs,"\n");var customApiHelpEN="/// Custom translation source interface description\n\n// Request data will be sent according to the following specifications\n{\n url: {{YOUR_URL}},\n method: \"POST\",\n headers: {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{YOUR_KEY}}\",\n },\n body: {\n text: \"\", // text to be translated\n from: \"\", // Source language, may be empty\n to: \"\", // Target language\n }\n}\n\n// The returned data must conform to the following JSON specification\n{\n text: \"\", // translated text\n from: \"\", // Recognized source language\n to: \"\", // Target language (optional)\n}\n\n// The supported language codes are as follows\n".concat(customApiLangs,"\n");var I18N={app_name:{zh:"\u7B80\u7EA6\u7FFB\u8BD1",en:"KISS Translator"},translate:{zh:"\u7FFB\u8BD1",en:"Translate"},custom_api_help:{zh:customApiHelpZH,en:customApiHelpEN},translate_alt:{zh:"\u7FFB\u8BD1",en:"Translate"},basic_setting:{zh:"\u57FA\u672C\u8BBE\u7F6E",en:"Basic Setting"},rules_setting:{zh:"\u89C4\u5219\u8BBE\u7F6E",en:"Rules Setting"},apis_setting:{zh:"\u63A5\u53E3\u8BBE\u7F6E",en:"Apis Setting"},sync_setting:{zh:"\u540C\u6B65\u8BBE\u7F6E",en:"Sync Setting"},patch_setting:{zh:"\u8865\u4E01\u8BBE\u7F6E",en:"Patch Setting"},patch_setting_help:{zh:"\u9488\u5BF9\u4E00\u4E9B\u7279\u6B8A\u7F51\u7AD9\u7684\u4FEE\u6B63\u811A\u672C\uFF0C\u4EE5\u4FBF\u7FFB\u8BD1\u8F6F\u4EF6\u5F97\u5230\u66F4\u597D\u7684\u5C55\u793A\u6548\u679C\u3002",en:"Corrected scripts for some special websites so that the translation software can get better display results."},inject_webfix:{zh:"\u6CE8\u5165\u4FEE\u590D\u8865\u4E01",en:"Inject Webfix"},about:{zh:"\u5173\u4E8E",en:"About"},about_md:{zh:"README.md",en:"README.en.md"},about_md_local:{zh:"\u8BF7 [\u70B9\u51FB\u8FD9\u91CC](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8BE6\u60C5\u3002"),en:"Please [click here](".concat("https://github.com/fishjar/kiss-translator",") for details.")},ui_lang:{zh:"\u754C\u9762\u8BED\u8A00",en:"Interface Language"},fetch_limit:{zh:"\u6700\u5927\u5E76\u53D1\u8BF7\u6C42\u6570\u91CF (1-100)",en:"Maximum Number Of Concurrent Requests (1-100)"},fetch_interval:{zh:"\u6BCF\u6B21\u8BF7\u6C42\u95F4\u9694\u65F6\u95F4 (0-5000ms)",en:"Time Between Requests (0-5000ms)"},translate_interval:{zh:"\u91CD\u65B0\u7FFB\u8BD1\u95F4\u9694\u65F6\u95F4 (100-5000ms)",en:"Retranslation Interval (100-5000ms)"},min_translate_length:{zh:"\u6700\u5C0F\u7FFB\u8BD1\u5B57\u7B26\u6570 (1-100)",en:"Minimum number Of Translated Characters (1-100)"},max_translate_length:{zh:"\u6700\u5927\u7FFB\u8BD1\u5B57\u7B26\u6570 (100-10000)",en:"Maximum number Of Translated Characters (100-10000)"},num_of_newline_characters:{zh:"\u6362\u884C\u5B57\u7B26\u6570 (1-1000)",en:"Number of Newline Characters (1-1000)"},translate_service:{zh:"\u7FFB\u8BD1\u670D\u52A1",en:"Translate Service"},translate_timing:{zh:"\u7FFB\u8BD1\u65F6\u673A",en:"Translate Timing"},mk_pagescroll:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u7FFB\u8BD1\uFF08\u63A8\u8350\uFF09",en:"Rolling Loading (Suggested)"},mk_pageopen:{zh:"\u9875\u9762\u6253\u5F00\u5168\u90E8\u7FFB\u8BD1",en:"Page Open"},mk_mouseover:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover"},mk_ctrlKey:{zh:"Control + \u9F20\u6807\u60AC\u505C",en:"Control + Mouseover"},mk_shiftKey:{zh:"Shift + \u9F20\u6807\u60AC\u505C",en:"Shift + Mouseover"},mk_altKey:{zh:"Alt + \u9F20\u6807\u60AC\u505C",en:"Alt + Mouseover"},from_lang:{zh:"\u539F\u6587\u8BED\u8A00",en:"Source Language"},to_lang:{zh:"\u76EE\u6807\u8BED\u8A00",en:"Target Language"},to_lang2:{zh:"\u7B2C\u4E8C\u76EE\u6807\u8BED\u8A00",en:"Target Language 2"},to_lang2_helper:{zh:"\u8BBE\u5B9A\u540E\uFF0C\u4E0E\u76EE\u6807\u8BED\u8A00\u4EA7\u751F\u4E92\u8BD1\u6548\u679C\uFF0C\u4F46\u4F9D\u8D56\u8FDC\u7A0B\u8BED\u8A00\u8BC6\u522B\u3002",en:"After setting, it will produce mutual translation effect with the target language, but it relies on remote language recognition."},text_style:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style"},text_style_alt:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style"},bg_color:{zh:"\u6837\u5F0F\u989C\u8272",en:"Style Color"},remain_unchanged:{zh:"\u4FDD\u7559\u4E0D\u53D8",en:"Remain Unchanged"},google_api:{zh:"\u8C37\u6B4C\u7FFB\u8BD1\u63A5\u53E3",en:"Google Translate API"},default_selector:{zh:"\u9ED8\u8BA4\u9009\u62E9\u5668",en:"Default selector"},selector_rules:{zh:"\u9009\u62E9\u5668\u89C4\u5219",en:"Selector Rules"},save:{zh:"\u4FDD\u5B58",en:"Save"},edit:{zh:"\u7F16\u8F91",en:"Edit"},cancel:{zh:"\u53D6\u6D88",en:"Cancel"},delete:{zh:"\u5220\u9664",en:"Delete"},reset:{zh:"\u91CD\u7F6E",en:"Reset"},add:{zh:"\u6DFB\u52A0",en:"Add"},inject_rules:{zh:"\u6CE8\u5165\u8BA2\u9605\u89C4\u5219",en:"Inject Subscribe Rules"},personal_rules:{zh:"\u4E2A\u4EBA\u89C4\u5219",en:"Rules"},subscribe_rules:{zh:"\u8BA2\u9605\u89C4\u5219",en:"Subscribe"},overwrite_subscribe_rules:{zh:"\u8986\u5199\u8BA2\u9605\u89C4\u5219",en:"Overwrite"},subscribe_url:{zh:"\u8BA2\u9605\u5730\u5740",en:"Subscribe URL"},rules_warn_1:{zh:"1\u3001\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u4E00\u76F4\u751F\u6548\uFF0C\u9009\u62E9\u201C\u6CE8\u5165\u8BA2\u9605\u89C4\u5219\u201D\u540E\uFF0C\u201C\u8BA2\u9605\u89C4\u5219\u201D\u624D\u4F1A\u751F\u6548\u3002",en:"1. The \"Personal Rules\" are always in effect. After selecting \"Inject Subscription Rules\", the \"Subscription Rules\" will take effect."},rules_warn_2:{zh:"2\u3001\u201C\u8BA2\u9605\u89C4\u5219\u201D\u7684\u6CE8\u5165\u4F4D\u7F6E\u662F\u5012\u6570\u7B2C\u4E8C\u7684\u4F4D\u7F6E\uFF0C\u56E0\u6B64\u9664\u5168\u5C40\u89C4\u5219(*)\u5916\uFF0C\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u4F18\u5148\u7EA7\u6BD4\u201C\u8BA2\u9605\u89C4\u5219\u201D\u9AD8\uFF0C\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u586B\u5199\u540C\u6837\u7684\u7F51\u5740\u4F1A\u8986\u76D6\u201D\u8BA2\u9605\u89C4\u5219\u201C\u7684\u6761\u76EE\u3002",en:"2. The injection position of \"Subscription Rules\" is the penultimate position. Therefore, except for the global rules (*), the priority of \"Personal Rules\" is higher than that of \"Subscription Rules\". Filling in the same url in \"Personal Rules\" will overwrite \"Subscription Rules\" entry."},rules_warn_3:{zh:"3\u3001\u5173\u4E8E\u89C4\u5219\u586B\u5199\uFF1A\u8F93\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u6846\u9009\u201C*\u201D\u8868\u793A\u91C7\u7528\u5168\u5C40\u89C4\u5219\u3002",en:"3. Regarding filling in the rules: Leave the input box blank or select \"*\" in the drop-down box to use global rule."},sync_warn:{zh:"\u5982\u679C\u670D\u52A1\u5668\u5B58\u5728\u5176\u4ED6\u5BA2\u6237\u7AEF\u540C\u6B65\u7684\u6570\u636E\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u5C06\u76F4\u63A5\u8986\u76D6\u672C\u5730\u914D\u7F6E\uFF0C\u540E\u9762\u5219\u6839\u636E\u4FEE\u6539\u65F6\u95F4\uFF0C\u65B0\u7684\u8986\u76D6\u65E7\u7684\u3002",en:"If the server has data synchronized by other clients, the first synchronization will directly overwrite the local configuration, and later, according to the modification time, the new one will overwrite the old one."},about_sync_api:{zh:"\u67E5\u770B\u5173\u4E8E\u6570\u636E\u540C\u6B65\u63A5\u53E3\u90E8\u7F72",en:"View About Data Synchronization Interface Deployment"},about_api_proxy:{zh:"\u67E5\u770B\u81EA\u5EFA\u4E00\u4E2A\u7FFB\u8BD1\u63A5\u53E3\u4EE3\u7406",en:"Check out the self-built translation interface proxy"},style_none:{zh:"\u65E0",en:"None"},under_line:{zh:"\u4E0B\u5212\u76F4\u7EBF",en:"Underline"},dot_line:{zh:"\u4E0B\u5212\u70B9\u72B6\u7EBF",en:"Dotted Underline"},dash_line:{zh:"\u4E0B\u5212\u865A\u7EBF",en:"Dashed Underline"},wavy_line:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF",en:"Wavy Underline"},fuzzy:{zh:"\u6A21\u7CCA",en:"Fuzzy"},highlight:{zh:"\u9AD8\u4EAE",en:"Highlight"},blockquote:{zh:"\u5F15\u7528",en:"Blockquote"},diy_style:{zh:"\u81EA\u5B9A\u4E49\u6837\u5F0F",en:"Custom Style"},diy_style_helper:{zh:"\u9075\u5FAA\u201CCSS\u201D\u7684\u8BED\u6CD5",en:"Follow the syntax of \"CSS\""},setting:{zh:"\u8BBE\u7F6E",en:"Setting"},pattern:{zh:"\u5339\u914D\u7F51\u5740",en:"URL pattern"},pattern_helper:{zh:"1\u3001\u652F\u6301\u661F\u53F7(*)\u901A\u914D\u7B26\u30022\u3001\u591A\u4E2AURL\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u3002",en:"1. Supports the asterisk (*) wildcard character. 2. Separate multiple URLs with newlines or English commas \",\"."},selector_helper:{zh:"1\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u30022\u3001\u591A\u4E2ACSS\u9009\u62E9\u5668\u4E4B\u95F4\u7528\u201C;\u201D\u9694\u5F00\u30023\u3001\u201Cshadow root\u201D\u9009\u62E9\u5668\u548C\u5185\u90E8\u9009\u62E9\u5668\u7528\u201C>>>\u201D\u9694\u5F00\u3002",en:"1. Follow CSS selector syntax. 2. Separate multiple CSS selectors with \";\". 3. The \"shadow root\" selector and the internal selector are separated by \">>>\"."},translate_switch:{zh:"\u5F00\u542F\u7FFB\u8BD1",en:"Translate Switch"},default_enabled:{zh:"\u9ED8\u8BA4\u5F00\u542F",en:"Enabled"},default_disabled:{zh:"\u9ED8\u8BA4\u5173\u95ED",en:"Disabled"},selector:{zh:"\u9009\u62E9\u5668",en:"Selector"},keep_selector:{zh:"\u4FDD\u7559\u5143\u7D20\u9009\u62E9\u5668",en:"Keep unchanged selector"},keep_selector_helper:{zh:"1\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u30022\u3001\u5B50\u5143\u7D20\u9009\u62E9\u5668\u7528\u201C>>>\u201D\u9694\u5F00\u3002",en:"1. Follow CSS selector syntax. 2. Sub-element selectors are separated by \">>>\"."},terms:{zh:"\u4E13\u4E1A\u672F\u8BED",en:"Terms"},terms_helper:{zh:"1\u3001\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\uFF0C\u65E0\u9700\u659C\u6746\uFF0C\u4E0D\u652F\u6301\u4FEE\u9970\u7B26\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. Supports regular expression matching, no slash required, and no modifiers are supported. 2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated."},selector_style:{zh:"\u9009\u62E9\u5668\u8282\u70B9\u6837\u5F0F",en:"Selector Style"},selector_style_helper:{zh:"\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\uFF0C\u5173\u95ED\u7FFB\u8BD1\u65F6\u4E0D\u4F1A\u79FB\u9664\u3002",en:"It is injected when translation is turned on and will not be removed when translation is turned off."},selector_parent_style:{zh:"\u9009\u62E9\u5668\u7236\u8282\u70B9\u6837\u5F0F",en:"Selector Parent Style"},inject_js:{zh:"\u6CE8\u5165JS",en:"Inject JS"},inject_js_helper:{zh:"1\u3001\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\u8FD0\u884C\uFF0C\u5173\u95ED\u7FFB\u8BD1\u65F6\u79FB\u9664\u30022\u3001\u968F\u7740\u9875\u9762\u53D8\u5316\uFF0C\u53EF\u80FD\u4F1A\u591A\u6B21\u6CE8\u5165\u8FD0\u884C\u3002",en:"1. Inject and run when translation is turned on, and removed when translation is turned off. 2. As the page changes, it may be injected and run multiple times."},inject_css:{zh:"\u6CE8\u5165CSS",en:"Inject CSS"},inject_css_helper:{zh:"\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\uFF0C\u5173\u95ED\u7FFB\u8BD1\u65F6\u5C06\u79FB\u9664\u3002",en:"Injected when translation is enabled and removed when translation is disabled."},root_selector:{zh:"\u6839\u9009\u62E9\u5668",en:"Root Selector"},fixer_function:{zh:"\u4FEE\u590D\u51FD\u6570",en:"Fixer Function"},fixer_function_helper:{zh:"1\u3001br\u662F\u5C06
\u6362\u884C\u66FF\u6362\u6210

\u30022\u3001bn\u662F\u5C06\\n\u6362\u884C\u66FF\u6362\u6210

\u30023\u3001brToDiv\u548CbnToDiv\u662F\u66FF\u6362\u6210

\u3002",en:"1. br replaces
line breaks with

. 2. bn replaces \\n newline with

. 3. brToDiv and bnToDiv are replaced with

."},import:{zh:"\u5BFC\u5165",en:"Import"},export:{zh:"\u5BFC\u51FA",en:"Export"},error_cant_be_blank:{zh:"\u4E0D\u80FD\u4E3A\u7A7A",en:"Can not be blank"},error_duplicate_values:{zh:"\u5B58\u5728\u91CD\u590D\u7684\u503C",en:"There are duplicate values"},error_wrong_file_type:{zh:"\u9519\u8BEF\u7684\u6587\u4EF6\u7C7B\u578B",en:"Wrong file type"},error_fetch_url:{zh:"\u8BF7\u68C0\u67E5url\u5730\u5740\u662F\u5426\u6B63\u786E\u6216\u7A0D\u540E\u518D\u8BD5\u3002",en:"Please check if the url address is correct or try again later."},deepl_api:{zh:"DeepL \u63A5\u53E3",en:"DeepL API"},deepl_key:{zh:"DeepL \u5BC6\u94A5",en:"DeepL Key"},openai_api:{zh:"OpenAI \u63A5\u53E3",en:"OpenAI API"},openai_key:{zh:"OpenAI \u5BC6\u94A5",en:"OpenAI Key"},openai_model:{zh:"OpenAI \u6A21\u578B",en:"OpenAI Model"},openai_prompt:{zh:"OpenAI \u63D0\u793A\u8BCD",en:"OpenAI Prompt"},if_clear_cache:{zh:"\u662F\u5426\u6E05\u9664\u7F13\u5B58",en:"Whether clear cache"},clear_cache_never:{zh:"\u4E0D\u6E05\u9664\u7F13\u5B58",en:"Never clear cache"},clear_cache_restart:{zh:"\u91CD\u542F\u6D4F\u89C8\u5668\u65F6\u6E05\u9664\u7F13\u5B58",en:"Clear cache when restarting browser"},data_sync_type:{zh:"\u6570\u636E\u540C\u6B65\u65B9\u5F0F",en:"Data Sync Type"},data_sync_url:{zh:"\u6570\u636E\u540C\u6B65\u63A5\u53E3",en:"Data Sync API"},data_sync_user:{zh:"\u6570\u636E\u540C\u6B65\u8D26\u6237",en:"Data Sync User"},data_sync_key:{zh:"\u6570\u636E\u540C\u6B65\u5BC6\u94A5",en:"Data Sync Key"},sync_now:{zh:"\u7ACB\u5373\u540C\u6B65",en:"Sync Now"},sync_success:{zh:"\u540C\u6B65\u6210\u529F\uFF01",en:"Sync Success"},sync_failed:{zh:"\u540C\u6B65\u5931\u8D25\uFF01",en:"Sync Error"},error_got_some_wrong:{zh:"\u62B1\u6B49\uFF0C\u51FA\u9519\u4E86\uFF01",en:"Sorry, something went wrong!"},error_sync_setting:{zh:"\u60A8\u7684\u540C\u6B65\u7C7B\u578B\u5FC5\u987B\u4E3A\u201CKISS-Worker\u201D\uFF0C\u4E14\u9700\u586B\u5199\u5B8C\u6574",en:"Your sync type must be \"KISS-Worker\" and must be filled in completely"},click_test:{zh:"\u70B9\u51FB\u6D4B\u8BD5",en:"Click Test"},test_success:{zh:"\u6D4B\u8BD5\u6210\u529F",en:"Test success"},test_failed:{zh:"\u6D4B\u8BD5\u5931\u8D25",en:"Test failed"},clear_all_cache_now:{zh:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u7F13\u5B58",en:"Clear all cache now"},clear_cache:{zh:"\u6E05\u9664\u7F13\u5B58",en:"Clear Cache"},clear_success:{zh:"\u6E05\u9664\u6210\u529F",en:"Clear success"},clear_failed:{zh:"\u6E05\u9664\u5931\u8D25",en:"Clear failed"},share:{zh:"\u5206\u4EAB",en:"Share"},clear_all:{zh:"\u6E05\u7A7A",en:"Clear All"},help:{zh:"\u6C42\u52A9",en:"Help"},restore_default:{zh:"\u6062\u590D\u9ED8\u8BA4",en:"Restore Default"},shortcuts_setting:{zh:"\u5FEB\u6377\u952E\u8BBE\u7F6E",en:"Shortcuts Setting"},toggle_translate_shortcut:{zh:"\"\u5F00\u542F\u7FFB\u8BD1\"\u5FEB\u6377\u952E",en:"\"Toggle Translate\" Shortcut"},toggle_style_shortcut:{zh:"\"\u5207\u6362\u6837\u5F0F\"\u5FEB\u6377\u952E",en:"\"Toggle Style\" Shortcut"},toggle_popup_shortcut:{zh:"\"\u6253\u5F00\u5F39\u7A97\"\u5FEB\u6377\u952E",en:"\"Open Popup\" Shortcut"},open_setting_shortcut:{zh:"\"\u6253\u5F00\u8BBE\u7F6E\"\u5FEB\u6377\u952E",en:"\"Open Setting\" Shortcut"},hide_fab_button:{zh:"\u9690\u85CF\u60AC\u6D6E\u6309\u94AE",en:"Hide Fab Button"},hide_tran_button:{zh:"\u9690\u85CF\u7FFB\u8BD1\u6309\u94AE",en:"Hide Translate Button"},show:{zh:"\u663E\u793A",en:"Show"},hide:{zh:"\u9690\u85CF",en:"Hide"},save_rule:{zh:"\u4FDD\u5B58\u89C4\u5219",en:"Save Rule"},global_rule:{zh:"\u5168\u5C40\u89C4\u5219",en:"Global Rule"},input_translate:{zh:"\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation"},use_input_box_translation:{zh:"\u542F\u7528\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation"},input_selector:{zh:"\u8F93\u5165\u6846\u9009\u62E9\u5668",en:"Input Selector"},input_selector_helper:{zh:"\u7528\u4E8E\u8F93\u5165\u6846\u7FFB\u8BD1\u3002",en:"Used for input box translation."},trigger_trans_shortcut:{zh:"\u89E6\u53D1\u7FFB\u8BD1\u5FEB\u6377\u952E",en:"Trigger Translation Shortcut Keys"},trigger_trans_shortcut_help:{zh:"\u9ED8\u8BA4\u4E3A\u5355\u51FB\u201CAltLeft+KeyI\u201D",en:"Default is \"AltLeft+KeyI\""},shortcut_press_count:{zh:"\u5FEB\u6377\u952E\u8FDE\u51FB\u6B21\u6570",en:"Shortcut Press Number"},combo_timeout:{zh:"\u8FDE\u51FB\u8D85\u65F6\u65F6\u95F4 (10-1000ms)",en:"Combo Timeout (10-1000ms)"},input_trans_start_sign:{zh:"\u7FFB\u8BD1\u8D77\u59CB\u6807\u8BC6",en:"Translation Start Sign"},input_trans_start_sign_help:{zh:"\u6807\u8BC6\u540E\u9762\u53EF\u4EE5\u52A0\u76EE\u6807\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1A \u201C/en \u4F60\u597D\u201D\u3001\u201C/zh hello\u201D",en:"The target language code can be added after the sign, such as: \"/en \u4F60\u597D\", \"/zh hello\""},detect_lang_remote:{zh:"\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B",en:"Remote language detection"},detect_lang_remote_help:{zh:"\u542F\u7528\u540E\u68C0\u6D4B\u51C6\u786E\u5EA6\u589E\u52A0\uFF0C\u4F46\u4F1A\u964D\u4F4E\u7FFB\u8BD1\u901F\u5EA6\uFF0C\u8BF7\u914C\u60C5\u5F00\u542F",en:"After enabling, the detection accuracy will increase, but it will reduce the translation speed. Please enable it as appropriate."},disable:{zh:"\u7981\u7528",en:"Disable"},enable:{zh:"\u542F\u7528",en:"Enable"},selection_translate:{zh:"\u5212\u8BCD\u7FFB\u8BD1",en:"Selection Translate"},toggle_selection_translate:{zh:"\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"Use Selection Translate"},trigger_tranbox_shortcut:{zh:"\u663E\u793A\u7FFB\u8BD1\u6846/\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57\u5FEB\u6377\u952E",en:"Open Translate Popup/Translate Selected Shortcut"},tranbtn_offset_x:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBX\uFF080-100\uFF09",en:"Translate Button Offset X (0-100)"},tranbtn_offset_y:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBY\uFF080-100\uFF09",en:"Translate Button Offset Y (0-100)"},translated_text:{zh:"\u8BD1\u6587",en:"Translated Text"},original_text:{zh:"\u539F\u6587",en:"Original Text"},favorite_words:{zh:"\u6536\u85CF\u8BCD\u6C47",en:"Favorite Words"},touch_setting:{zh:"\u89E6\u5C4F\u8BBE\u7F6E",en:"Touch Setting"},touch_translate_shortcut:{zh:"\u89E6\u5C4F\u7FFB\u8BD1\u5FEB\u6377\u65B9\u5F0F",en:"Touch Translate Shortcut"},touch_tap_0:{zh:"\u7981\u7528",en:"Disable"},touch_tap_2:{zh:"\u53CC\u6307\u8F7B\u89E6",en:"Two finger tap"},touch_tap_3:{zh:"\u4E09\u6307\u8F7B\u89E6",en:"Three finger tap"},touch_tap_4:{zh:"\u56DB\u6307\u8F7B\u89E6",en:"Four finger tap"},translate_blacklist:{zh:"\u7981\u7528\u7FFB\u8BD1\u540D\u5355",en:"Translate Blacklist"},skip_langs:{zh:"\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",en:"Disable Languages"},skip_langs_helper:{zh:"\u6B64\u529F\u80FD\u4F9D\u8D56\u51C6\u786E\u7684\u8BED\u8A00\u68C0\u6D4B\uFF0C\u5EFA\u8BAE\u542F\u7528\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B\u3002",en:"This feature relies on accurate language detection. It is recommended to enable remote language detection."},context_menus:{zh:"\u53F3\u952E\u83DC\u5355",en:"Context Menus"},hide_context_menus:{zh:"\u9690\u85CF\u53F3\u952E\u83DC\u5355",en:"Hide Context Menus"},simple_context_menus:{zh:"\u7B80\u5355\u53F3\u952E\u83DC\u5355",en:"Simple_context_menus Context Menus"},secondary_context_menus:{zh:"\u4E8C\u7EA7\u53F3\u952E\u83DC\u5355",en:"Secondary Context Menus"},mulkeys_help:{zh:"\u652F\u6301\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u591A\u4E2AKEY\u8F6E\u8BE2\u8C03\u7528\u3002",en:"Supports multiple KEY polling calls separated by newlines or English commas \",\"."},translation_element_tag:{zh:"\u8BD1\u6587\u5143\u7D20\u6807\u7B7E",en:"Translation Element Tag"},show_only_translations:{zh:"\u4EC5\u663E\u793A\u8BD1\u6587",en:"Show Only Translations"},show_only_translations_help:{zh:"\u975E\u5B8C\u7F8E\u5B9E\u73B0\uFF0C\u67D0\u4E9B\u9875\u9762\u53EF\u80FD\u6709\u6837\u5F0F\u7B49\u95EE\u9898\u3002",en:"It is not a perfect implementation and some pages may have style issues."},translate_page_title:{zh:"\u662F\u5426\u7FFB\u8BD1\u9875\u9762\u6807\u9898",en:"Translate Page Title"},more:{zh:"\u66F4\u591A",en:"More"},fixer_selector:{zh:"\u7F51\u9875\u4FEE\u590D\u9009\u62E9\u5668",en:"Fixer Selector"}}; ;// CONCATENATED MODULE: ./src/config/index.js -var _OPT_LANGS_SPECIAL,_DEFAULT_TRANS_APIS,_DEFAULT_SHORTCUTS;var STOKEY_MSAUTH="".concat(APP_NAME,"_msauth");var STOKEY_BDAUTH="".concat(APP_NAME,"_bdauth");var config_STOKEY_SETTING="".concat(APP_NAME,"_setting");var config_STOKEY_RULES="".concat(APP_NAME,"_rules");var config_STOKEY_WFRULES="".concat(APP_NAME,"_webfix_rules");var STOKEY_WORDS="".concat(APP_NAME,"_words");var config_STOKEY_SYNC="".concat(APP_NAME,"_sync");var config_STOKEY_FAB="".concat(APP_NAME,"_fab");var config_STOKEY_RULESCACHE_PREFIX="".concat(APP_NAME,"_rulescache_");var STOKEY_WEBFIXCACHE_PREFIX="".concat(APP_NAME,"_webfixcache_");var CMD_TOGGLE_TRANSLATE="toggleTranslate";var CMD_TOGGLE_STYLE="toggleStyle";var CMD_OPEN_OPTIONS="openOptions";var CMD_OPEN_TRANBOX="openTranbox";var CLIENT_WEB="web";var CLIENT_CHROME="chrome";var CLIENT_EDGE="edge";var CLIENT_FIREFOX="firefox";var CLIENT_USERSCRIPT="userscript";var CLIENT_EXTS=[CLIENT_CHROME,CLIENT_EDGE,CLIENT_FIREFOX];var KV_RULES_KEY="kiss-rules.json";var config_KV_WFRULES_KEY="kiss-webfix.json";var KV_WORDS_KEY="kiss-words.json";var config_KV_RULES_SHARE_KEY="kiss-rules-share.json";var KV_SETTING_KEY="kiss-setting.json";var KV_SALT_SYNC="KISS-Translator-SYNC";var config_KV_SALT_SHARE="KISS-Translator-SHARE";var CACHE_NAME="".concat(APP_NAME,"_cache");var MSG_FETCH="fetch";var MSG_FETCH_LIMIT="fetch_limit";var MSG_FETCH_CLEAR="fetch_clear";var MSG_OPEN_OPTIONS="open_options";var MSG_SAVE_RULE="save_rule";var MSG_TRANS_TOGGLE="trans_toggle";var MSG_TRANS_TOGGLE_STYLE="trans_toggle_style";var MSG_OPEN_TRANBOX="open_tranbox";var MSG_TRANS_GETRULE="trans_getrule";var MSG_TRANS_PUTRULE="trans_putrule";var MSG_TRANS_CURRULE="trans_currule";var MSG_CONTEXT_MENUS="context_menus";var MSG_COMMAND_SHORTCUTS="command_shortcuts";var THEME_LIGHT="light";var THEME_DARK="dark";var URL_KISS_WORKER="https://github.com/fishjar/kiss-worker";var URL_KISS_PROXY="https://github.com/fishjar/kiss-proxy";var URL_KISS_RULES="https://github.com/fishjar/kiss-rules";var URL_KISS_RULES_NEW_ISSUE="https://github.com/fishjar/kiss-rules/issues/new";var config_URL_RAW_PREFIX="https://raw.githubusercontent.com/fishjar/kiss-translator/master";var URL_CACHE_TRAN="https://".concat(APP_LCNAME,"/translate");var URL_MICROSOFT_TRAN="https://api-edge.cognitive.microsofttranslator.com/translate";var URL_MICROSOFT_AUTH="https://edge.microsoft.com/translate/auth";var URL_BAIDU_LANGDETECT="https://fanyi.baidu.com/langdetect";var URL_BAIDU_WEB="https://fanyi.baidu.com/";var URL_BAIDU_TRANSAPI="https://fanyi.baidu.com/transapi";var config_URL_BAIDU_TRANSAPI_V2="https://fanyi.baidu.com/v2transapi";var URL_DEEPLFREE_TRAN="https://www2.deepl.com/jsonrpc";var config_URL_TENCENT_TRANSMART="https://transmart.qq.com/api/imt";var OPT_TRANS_GOOGLE="Google";var OPT_TRANS_MICROSOFT="Microsoft";var OPT_TRANS_DEEPL="DeepL";var OPT_TRANS_DEEPLX="DeepLX";var OPT_TRANS_DEEPLFREE="DeepLFree";var OPT_TRANS_BAIDU="Baidu";var OPT_TRANS_TENCENT="Tencent";var OPT_TRANS_OPENAI="OpenAI";var OPT_TRANS_GEMINI="Gemini";var OPT_TRANS_CLOUDFLAREAI="CloudflareAI";var OPT_TRANS_CUSTOMIZE="Custom";var OPT_TRANS_ALL=[OPT_TRANS_GOOGLE,OPT_TRANS_MICROSOFT,OPT_TRANS_BAIDU,OPT_TRANS_TENCENT,OPT_TRANS_DEEPL,OPT_TRANS_DEEPLFREE,OPT_TRANS_DEEPLX,OPT_TRANS_OPENAI,OPT_TRANS_GEMINI,OPT_TRANS_CLOUDFLAREAI,OPT_TRANS_CUSTOMIZE];var OPT_LANGS_TO=[["en","English - English"],["zh-CN","Simplified Chinese - 简体中文"],["zh-TW","Traditional Chinese - 繁體中文"],["ar","Arabic - العربية"],["bg","Bulgarian - Български"],["ca","Catalan - Català"],["hr","Croatian - Hrvatski"],["cs","Czech - Čeština"],["da","Danish - Dansk"],["nl","Dutch - Nederlands"],["fi","Finnish - Suomi"],["fr","French - Français"],["de","German - Deutsch"],["el","Greek - Ελληνικά"],["hi","Hindi - हिन्दी"],["hu","Hungarian - Magyar"],["id","Indonesian - Indonesia"],["it","Italian - Italiano"],["ja","Japanese - 日本語"],["ko","Korean - 한국어"],["ms","Malay - Melayu"],["mt","Maltese - Malti"],["nb","Norwegian - Norsk Bokmål"],["pl","Polish - Polski"],["pt","Portuguese - Português"],["ro","Romanian - Română"],["ru","Russian - Русский"],["sk","Slovak - Slovenčina"],["sl","Slovenian - Slovenščina"],["es","Spanish - Español"],["sv","Swedish - Svenska"],["ta","Tamil - தமிழ்"],["te","Telugu - తెలుగు"],["th","Thai - ไทย"],["tr","Turkish - Türkçe"],["uk","Ukrainian - Українська"],["vi","Vietnamese - Tiếng Việt"]];var OPT_LANGS_FROM=[["auto","Auto-detect"]].concat(OPT_LANGS_TO);var OPT_LANGS_SPECIAL=(_OPT_LANGS_SPECIAL={},(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_GOOGLE,new Map(OPT_LANGS_FROM.map(function(_ref){var _ref2=(0,slicedToArray/* default */.Z)(_ref,1),key=_ref2[0];return[key,key];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_MICROSOFT,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref3){var _ref4=(0,slicedToArray/* default */.Z)(_ref3,1),key=_ref4[0];return[key,key];})),[["auto",""],["zh-CN","zh-Hans"],["zh-TW","zh-Hant"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPL,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref5){var _ref6=(0,slicedToArray/* default */.Z)(_ref5,1),key=_ref6[0];return[key,key.toUpperCase()];})),[["auto",""],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPLFREE,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref7){var _ref8=(0,slicedToArray/* default */.Z)(_ref7,1),key=_ref8[0];return[key,key.toUpperCase()];})),[["auto","auto"],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPLX,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref9){var _ref10=(0,slicedToArray/* default */.Z)(_ref9,1),key=_ref10[0];return[key,key.toUpperCase()];})),[["auto",""],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_BAIDU,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref11){var _ref12=(0,slicedToArray/* default */.Z)(_ref11,1),key=_ref12[0];return[key,key];})),[["zh-CN","zh"],["zh-TW","cht"],["ar","ara"],["bg","bul"],["ca","cat"],["hr","hrv"],["da","dan"],["fi","fin"],["fr","fra"],["hi","mai"],["ja","jp"],["ko","kor"],["ms","may"],["mt","mlt"],["nb","nor"],["ro","rom"],["ru","ru"],["sl","slo"],["es","spa"],["sv","swe"],["ta","tam"],["te","tel"],["uk","ukr"],["vi","vie"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_TENCENT,new Map([["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ar","ar"],["de","de"],["ru","ru"],["fr","fr"],["fi","fil"],["ko","ko"],["ms","ms"],["pt","pt"],["ja","ja"],["th","th"],["tr","tr"],["es","es"],["it","it"],["hi","hi"],["id","id"],["vi","vi"]])),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_OPENAI,new Map(OPT_LANGS_FROM.map(function(_ref13){var _ref14=(0,slicedToArray/* default */.Z)(_ref13,2),key=_ref14[0],val=_ref14[1];return[key,val.split(" - ")[0]];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_GEMINI,new Map(OPT_LANGS_FROM.map(function(_ref15){var _ref16=(0,slicedToArray/* default */.Z)(_ref15,2),key=_ref16[0],val=_ref16[1];return[key,val.split(" - ")[0]];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_CLOUDFLAREAI,new Map([["auto",""],["zh-CN","chinese"],["zh-TW","chinese"],["en","english"],["ar","arabic"],["de","german"],["ru","russian"],["fr","french"],["pt","portuguese"],["ja","japanese"],["es","spanish"],["hi","hindi"]])),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_CUSTOMIZE,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref17){var _ref18=(0,slicedToArray/* default */.Z)(_ref17,1),key=_ref18[0];return[key,key];})),[["auto",""]]))),_OPT_LANGS_SPECIAL);var OPT_LANGS_LIST=OPT_LANGS_TO.map(function(_ref19){var _ref20=(0,slicedToArray/* default */.Z)(_ref19,1),lang=_ref20[0];return lang;});var OPT_LANGS_BAIDU=new Map(Array.from(OPT_LANGS_SPECIAL[OPT_TRANS_BAIDU].entries()).map(function(_ref21){var _ref22=(0,slicedToArray/* default */.Z)(_ref21,2),k=_ref22[0],v=_ref22[1];return[v,k];}));var config_OPT_LANGS_TENCENT=new Map(Array.from(OPT_LANGS_SPECIAL[OPT_TRANS_TENCENT].entries()).map(function(_ref23){var _ref24=(0,slicedToArray/* default */.Z)(_ref23,2),k=_ref24[0],v=_ref24[1];return[v,k];}));config_OPT_LANGS_TENCENT.set("zh","zh-CN");var OPT_STYLE_NONE="style_none";// 无 +var _OPT_LANGS_SPECIAL,_DEFAULT_TRANS_APIS,_DEFAULT_SHORTCUTS;var STOKEY_MSAUTH="".concat(APP_NAME,"_msauth");var STOKEY_BDAUTH="".concat(APP_NAME,"_bdauth");var config_STOKEY_SETTING="".concat(APP_NAME,"_setting");var config_STOKEY_RULES="".concat(APP_NAME,"_rules");var STOKEY_WORDS="".concat(APP_NAME,"_words");var config_STOKEY_SYNC="".concat(APP_NAME,"_sync");var config_STOKEY_FAB="".concat(APP_NAME,"_fab");var config_STOKEY_RULESCACHE_PREFIX="".concat(APP_NAME,"_rulescache_");var CMD_TOGGLE_TRANSLATE="toggleTranslate";var CMD_TOGGLE_STYLE="toggleStyle";var CMD_OPEN_OPTIONS="openOptions";var CMD_OPEN_TRANBOX="openTranbox";var CLIENT_WEB="web";var CLIENT_CHROME="chrome";var CLIENT_EDGE="edge";var CLIENT_FIREFOX="firefox";var CLIENT_USERSCRIPT="userscript";var CLIENT_EXTS=[CLIENT_CHROME,CLIENT_EDGE,CLIENT_FIREFOX];var KV_RULES_KEY="kiss-rules.json";var KV_WORDS_KEY="kiss-words.json";var config_KV_RULES_SHARE_KEY="kiss-rules-share.json";var KV_SETTING_KEY="kiss-setting.json";var KV_SALT_SYNC="KISS-Translator-SYNC";var config_KV_SALT_SHARE="KISS-Translator-SHARE";var CACHE_NAME="".concat(APP_NAME,"_cache");var MSG_FETCH="fetch";var MSG_FETCH_LIMIT="fetch_limit";var MSG_FETCH_CLEAR="fetch_clear";var MSG_OPEN_OPTIONS="open_options";var MSG_SAVE_RULE="save_rule";var MSG_TRANS_TOGGLE="trans_toggle";var MSG_TRANS_TOGGLE_STYLE="trans_toggle_style";var MSG_OPEN_TRANBOX="open_tranbox";var MSG_TRANS_GETRULE="trans_getrule";var MSG_TRANS_PUTRULE="trans_putrule";var MSG_TRANS_CURRULE="trans_currule";var MSG_CONTEXT_MENUS="context_menus";var MSG_COMMAND_SHORTCUTS="command_shortcuts";var MSG_INJECT_JS="inject_js";var MSG_INJECT_CSS="inject_css";var THEME_LIGHT="light";var THEME_DARK="dark";var URL_KISS_WORKER="https://github.com/fishjar/kiss-worker";var URL_KISS_PROXY="https://github.com/fishjar/kiss-proxy";var URL_KISS_RULES="https://github.com/fishjar/kiss-rules";var URL_KISS_RULES_NEW_ISSUE="https://github.com/fishjar/kiss-rules/issues/new";var config_URL_RAW_PREFIX="https://raw.githubusercontent.com/fishjar/kiss-translator/master";var URL_CACHE_TRAN="https://".concat(APP_LCNAME,"/translate");var URL_MICROSOFT_TRAN="https://api-edge.cognitive.microsofttranslator.com/translate";var URL_MICROSOFT_AUTH="https://edge.microsoft.com/translate/auth";var URL_BAIDU_LANGDETECT="https://fanyi.baidu.com/langdetect";var URL_BAIDU_SUGGEST="https://fanyi.baidu.com/sug";var URL_BAIDU_WEB="https://fanyi.baidu.com/";var URL_BAIDU_TRANSAPI="https://fanyi.baidu.com/transapi";var config_URL_BAIDU_TRANSAPI_V2="https://fanyi.baidu.com/v2transapi";var URL_DEEPLFREE_TRAN="https://www2.deepl.com/jsonrpc";var config_URL_TENCENT_TRANSMART="https://transmart.qq.com/api/imt";var OPT_TRANS_GOOGLE="Google";var OPT_TRANS_MICROSOFT="Microsoft";var OPT_TRANS_DEEPL="DeepL";var OPT_TRANS_DEEPLX="DeepLX";var OPT_TRANS_DEEPLFREE="DeepLFree";var OPT_TRANS_BAIDU="Baidu";var OPT_TRANS_TENCENT="Tencent";var OPT_TRANS_OPENAI="OpenAI";var OPT_TRANS_GEMINI="Gemini";var OPT_TRANS_CLOUDFLAREAI="CloudflareAI";var OPT_TRANS_CUSTOMIZE="Custom";var OPT_TRANS_ALL=[OPT_TRANS_GOOGLE,OPT_TRANS_MICROSOFT,OPT_TRANS_BAIDU,OPT_TRANS_TENCENT,OPT_TRANS_DEEPL,OPT_TRANS_DEEPLFREE,OPT_TRANS_DEEPLX,OPT_TRANS_OPENAI,OPT_TRANS_GEMINI,OPT_TRANS_CLOUDFLAREAI,OPT_TRANS_CUSTOMIZE];var OPT_LANGS_TO=[["en","English - English"],["zh-CN","Simplified Chinese - 简体中文"],["zh-TW","Traditional Chinese - 繁體中文"],["ar","Arabic - العربية"],["bg","Bulgarian - Български"],["ca","Catalan - Català"],["hr","Croatian - Hrvatski"],["cs","Czech - Čeština"],["da","Danish - Dansk"],["nl","Dutch - Nederlands"],["fi","Finnish - Suomi"],["fr","French - Français"],["de","German - Deutsch"],["el","Greek - Ελληνικά"],["hi","Hindi - हिन्दी"],["hu","Hungarian - Magyar"],["id","Indonesian - Indonesia"],["it","Italian - Italiano"],["ja","Japanese - 日本語"],["ko","Korean - 한국어"],["ms","Malay - Melayu"],["mt","Maltese - Malti"],["nb","Norwegian - Norsk Bokmål"],["pl","Polish - Polski"],["pt","Portuguese - Português"],["ro","Romanian - Română"],["ru","Russian - Русский"],["sk","Slovak - Slovenčina"],["sl","Slovenian - Slovenščina"],["es","Spanish - Español"],["sv","Swedish - Svenska"],["ta","Tamil - தமிழ்"],["te","Telugu - తెలుగు"],["th","Thai - ไทย"],["tr","Turkish - Türkçe"],["uk","Ukrainian - Українська"],["vi","Vietnamese - Tiếng Việt"]];var OPT_LANGS_FROM=[["auto","Auto-detect"]].concat(OPT_LANGS_TO);var OPT_LANGS_SPECIAL=(_OPT_LANGS_SPECIAL={},(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_GOOGLE,new Map(OPT_LANGS_FROM.map(function(_ref){var _ref2=(0,slicedToArray/* default */.Z)(_ref,1),key=_ref2[0];return[key,key];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_MICROSOFT,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref3){var _ref4=(0,slicedToArray/* default */.Z)(_ref3,1),key=_ref4[0];return[key,key];})),[["auto",""],["zh-CN","zh-Hans"],["zh-TW","zh-Hant"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPL,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref5){var _ref6=(0,slicedToArray/* default */.Z)(_ref5,1),key=_ref6[0];return[key,key.toUpperCase()];})),[["auto",""],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPLFREE,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref7){var _ref8=(0,slicedToArray/* default */.Z)(_ref7,1),key=_ref8[0];return[key,key.toUpperCase()];})),[["auto","auto"],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPLX,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref9){var _ref10=(0,slicedToArray/* default */.Z)(_ref9,1),key=_ref10[0];return[key,key.toUpperCase()];})),[["auto",""],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_BAIDU,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref11){var _ref12=(0,slicedToArray/* default */.Z)(_ref11,1),key=_ref12[0];return[key,key];})),[["zh-CN","zh"],["zh-TW","cht"],["ar","ara"],["bg","bul"],["ca","cat"],["hr","hrv"],["da","dan"],["fi","fin"],["fr","fra"],["hi","mai"],["ja","jp"],["ko","kor"],["ms","may"],["mt","mlt"],["nb","nor"],["ro","rom"],["ru","ru"],["sl","slo"],["es","spa"],["sv","swe"],["ta","tam"],["te","tel"],["uk","ukr"],["vi","vie"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_TENCENT,new Map([["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ar","ar"],["de","de"],["ru","ru"],["fr","fr"],["fi","fil"],["ko","ko"],["ms","ms"],["pt","pt"],["ja","ja"],["th","th"],["tr","tr"],["es","es"],["it","it"],["hi","hi"],["id","id"],["vi","vi"]])),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_OPENAI,new Map(OPT_LANGS_FROM.map(function(_ref13){var _ref14=(0,slicedToArray/* default */.Z)(_ref13,2),key=_ref14[0],val=_ref14[1];return[key,val.split(" - ")[0]];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_GEMINI,new Map(OPT_LANGS_FROM.map(function(_ref15){var _ref16=(0,slicedToArray/* default */.Z)(_ref15,2),key=_ref16[0],val=_ref16[1];return[key,val.split(" - ")[0]];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_CLOUDFLAREAI,new Map([["auto",""],["zh-CN","chinese"],["zh-TW","chinese"],["en","english"],["ar","arabic"],["de","german"],["ru","russian"],["fr","french"],["pt","portuguese"],["ja","japanese"],["es","spanish"],["hi","hindi"]])),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_CUSTOMIZE,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref17){var _ref18=(0,slicedToArray/* default */.Z)(_ref17,1),key=_ref18[0];return[key,key];})),[["auto",""]]))),_OPT_LANGS_SPECIAL);var OPT_LANGS_LIST=OPT_LANGS_TO.map(function(_ref19){var _ref20=(0,slicedToArray/* default */.Z)(_ref19,1),lang=_ref20[0];return lang;});var OPT_LANGS_BAIDU=new Map(Array.from(OPT_LANGS_SPECIAL[OPT_TRANS_BAIDU].entries()).map(function(_ref21){var _ref22=(0,slicedToArray/* default */.Z)(_ref21,2),k=_ref22[0],v=_ref22[1];return[v,k];}));var config_OPT_LANGS_TENCENT=new Map(Array.from(OPT_LANGS_SPECIAL[OPT_TRANS_TENCENT].entries()).map(function(_ref23){var _ref24=(0,slicedToArray/* default */.Z)(_ref23,2),k=_ref24[0],v=_ref24[1];return[v,k];}));config_OPT_LANGS_TENCENT.set("zh","zh-CN");var OPT_STYLE_NONE="style_none";// 无 var OPT_STYLE_LINE="under_line";// 下划线 var OPT_STYLE_DOTLINE="dot_line";// 点状线 var OPT_STYLE_DASHLINE="dash_line";// 虚线 @@ -19494,45 +19542,73 @@ var OPT_STYLE_FUZZY="fuzzy";// 模糊 var OPT_STYLE_HIGHLIGHT="highlight";// 高亮 var OPT_STYLE_BLOCKQUOTE="blockquote";// 引用 var OPT_STYLE_DIY="diy_style";// 自定义样式 -var OPT_STYLE_ALL=[OPT_STYLE_NONE,OPT_STYLE_LINE,OPT_STYLE_DOTLINE,OPT_STYLE_DASHLINE,OPT_STYLE_WAVYLINE,OPT_STYLE_FUZZY,OPT_STYLE_HIGHLIGHT,OPT_STYLE_BLOCKQUOTE,OPT_STYLE_DIY];var OPT_STYLE_USE_COLOR=[OPT_STYLE_LINE,OPT_STYLE_DOTLINE,OPT_STYLE_DASHLINE,OPT_STYLE_WAVYLINE,OPT_STYLE_HIGHLIGHT,OPT_STYLE_BLOCKQUOTE];var OPT_MOUSEKEY_DISABLE="mk_disable";// 滚动加载翻译 -var OPT_MOUSEKEY_PAGEOPEN="mk_pageopen";// 直接翻译到底 -var OPT_MOUSEKEY_MOUSEOVER="mk_mouseover";var OPT_MOUSEKEY_CONTROL="mk_ctrlKey";var OPT_MOUSEKEY_SHIFT="mk_shiftKey";var OPT_MOUSEKEY_ALT="mk_altKey";var OPT_MOUSEKEY_ALL=[OPT_MOUSEKEY_DISABLE,OPT_MOUSEKEY_PAGEOPEN,OPT_MOUSEKEY_MOUSEOVER,OPT_MOUSEKEY_CONTROL,OPT_MOUSEKEY_SHIFT,OPT_MOUSEKEY_ALT];var DEFAULT_FETCH_LIMIT=10;// 默认最大任务数量 +var OPT_STYLE_ALL=[OPT_STYLE_NONE,OPT_STYLE_LINE,OPT_STYLE_DOTLINE,OPT_STYLE_DASHLINE,OPT_STYLE_WAVYLINE,OPT_STYLE_FUZZY,OPT_STYLE_HIGHLIGHT,OPT_STYLE_BLOCKQUOTE,OPT_STYLE_DIY];var OPT_STYLE_USE_COLOR=[OPT_STYLE_LINE,OPT_STYLE_DOTLINE,OPT_STYLE_DASHLINE,OPT_STYLE_WAVYLINE,OPT_STYLE_HIGHLIGHT,OPT_STYLE_BLOCKQUOTE];var OPT_TIMING_PAGESCROLL="mk_pagescroll";// 滚动加载翻译 +var OPT_TIMING_PAGEOPEN="mk_pageopen";// 直接翻译到底 +var OPT_TIMING_MOUSEOVER="mk_mouseover";var OPT_TIMING_CONTROL="mk_ctrlKey";var OPT_TIMING_SHIFT="mk_shiftKey";var OPT_TIMING_ALT="mk_altKey";var OPT_TIMING_ALL=[OPT_TIMING_PAGESCROLL,OPT_TIMING_PAGEOPEN,OPT_TIMING_MOUSEOVER,OPT_TIMING_CONTROL,OPT_TIMING_SHIFT,OPT_TIMING_ALT];var DEFAULT_FETCH_LIMIT=10;// 默认最大任务数量 var DEFAULT_FETCH_INTERVAL=100;// 默认任务间隔时间 var PROMPT_PLACE_FROM="{{from}}";// 占位符 var PROMPT_PLACE_TO="{{to}}";// 占位符 var PROMPT_PLACE_TEXT="{{text}}";// 占位符 var DEFAULT_COLOR="#209CEE";// 默认高亮背景色/线条颜色 -// 全局规则 -var GLOBLA_RULE={pattern:"*",selector:DEFAULT_SELECTOR,keepSelector:DEFAULT_KEEP_SELECTOR,terms:"",translator:OPT_TRANS_MICROSOFT,fromLang:"auto",toLang:"zh-CN",textStyle:OPT_STYLE_DASHLINE,transOpen:"false",bgColor:"",textDiyStyle:""};// 输入框翻译 +var DEFAULT_TRANS_TAG="span";var DEFAULT_SELECT_STYLE="-webkit-line-clamp: unset; max-height: none; height: auto;";// 全局规则 +var GLOBLA_RULE={pattern:"*",// 匹配网址 +selector:DEFAULT_SELECTOR,// 选择器 +keepSelector:DEFAULT_KEEP_SELECTOR,// 保留元素选择器 +terms:"",// 专业术语 +translator:OPT_TRANS_MICROSOFT,// 翻译服务 +fromLang:"auto",// 源语言 +toLang:"zh-CN",// 目标语言 +textStyle:OPT_STYLE_DASHLINE,// 译文样式 +transOpen:"false",// 开启翻译 +bgColor:"",// 译文颜色 +textDiyStyle:"",// 自定义译文样式 +selectStyle:DEFAULT_SELECT_STYLE,// 选择器节点样式 +parentStyle:DEFAULT_SELECT_STYLE,// 选择器父节点样式 +injectJs:"",// 注入JS +injectCss:"",// 注入CSS +transOnly:"false",// 是否仅显示译文 +transTiming:OPT_TIMING_PAGESCROLL,// 翻译时机/鼠标悬停翻译 +transTag:DEFAULT_TRANS_TAG,// 译文元素标签 +transTitle:"false",// 是否同时翻译页面标题 +detectRemote:"false",// 是否使用远程语言检测 +skipLangs:[],// 不翻译的语言 +fixerSelector:"",// 修复函数选择器 +fixerFunc:"-"// 修复函数 +};// 输入框翻译 var OPT_INPUT_TRANS_SIGNS=["/","//","\\","\\\\",">",">>"];var DEFAULT_INPUT_SHORTCUT=["AltLeft","KeyI"];var DEFAULT_INPUT_RULE={transOpen:true,translator:OPT_TRANS_MICROSOFT,fromLang:"auto",toLang:"en",triggerShortcut:DEFAULT_INPUT_SHORTCUT,triggerCount:1,triggerTime:200,transSign:OPT_INPUT_TRANS_SIGNS[0]};// 划词翻译 var DEFAULT_TRANBOX_SHORTCUT=["AltLeft","KeyS"];var DEFAULT_TRANBOX_SETTING={transOpen:true,translator:OPT_TRANS_MICROSOFT,fromLang:"auto",toLang:"zh-CN",toLang2:"en",tranboxShortcut:DEFAULT_TRANBOX_SHORTCUT,btnOffsetX:10,btnOffsetY:10,hideTranBtn:false};// 订阅列表 var DEFAULT_SUBRULES_LIST=[{url:"https://fishjar.github.io/kiss-rules/kiss-rules.json",selected:false},{url:"https://fishjar.github.io/kiss-rules/kiss-rules-on.json",selected:true},{url:"https://fishjar.github.io/kiss-rules/kiss-rules-off.json",selected:false}];// 翻译接口 -var DEFAULT_TRANS_APIS=(_DEFAULT_TRANS_APIS={},(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_GOOGLE,{url:"https://translate.googleapis.com/translate_a/single",key:""}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPL,{url:"https://api-free.deepl.com/v2/translate",key:""}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPLX,{url:"http://localhost:1188/translate",key:""}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_OPENAI,{url:"https://api.openai.com/v1/chat/completions",key:"",model:"gpt-4",prompt:"You will be provided with a sentence in ".concat(PROMPT_PLACE_FROM,", and your task is to translate it into ").concat(PROMPT_PLACE_TO,".")}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_GEMINI,{url:"https://generativelanguage.googleapis.com/v1/models",key:"",model:"gemini-pro",prompt:"Translate the following text from ".concat(PROMPT_PLACE_FROM," to ").concat(PROMPT_PLACE_TO,":\n\n").concat(PROMPT_PLACE_TEXT)}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_CLOUDFLAREAI,{url:"https://api.cloudflare.com/client/v4/accounts/{ACCOUNT_ID}/ai/run/@cf/meta/m2m100-1.2b",key:""}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_CUSTOMIZE,{url:"",key:""}),_DEFAULT_TRANS_APIS);// 默认快捷键 +var DEFAULT_TRANS_APIS=(_DEFAULT_TRANS_APIS={},(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_GOOGLE,{url:"https://translate.googleapis.com/translate_a/single",key:"",fetchLimit:DEFAULT_FETCH_LIMIT,// 最大任务数量 +fetchInterval:DEFAULT_FETCH_INTERVAL// 任务间隔时间 +}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_MICROSOFT,{fetchLimit:DEFAULT_FETCH_LIMIT,fetchInterval:DEFAULT_FETCH_INTERVAL}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_BAIDU,{fetchLimit:DEFAULT_FETCH_LIMIT,fetchInterval:DEFAULT_FETCH_INTERVAL}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_TENCENT,{fetchLimit:DEFAULT_FETCH_LIMIT,fetchInterval:DEFAULT_FETCH_INTERVAL}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPL,{url:"https://api-free.deepl.com/v2/translate",key:"",fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPLFREE,{fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPLX,{url:"http://localhost:1188/translate",key:"",fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_OPENAI,{url:"https://api.openai.com/v1/chat/completions",key:"",model:"gpt-4",prompt:"You will be provided with a sentence in ".concat(PROMPT_PLACE_FROM,", and your task is to translate it into ").concat(PROMPT_PLACE_TO,"."),fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_GEMINI,{url:"https://generativelanguage.googleapis.com/v1/models",key:"",model:"gemini-pro",prompt:"Translate the following text from ".concat(PROMPT_PLACE_FROM," to ").concat(PROMPT_PLACE_TO,":\n\n").concat(PROMPT_PLACE_TEXT),fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_CLOUDFLAREAI,{url:"https://api.cloudflare.com/client/v4/accounts/{ACCOUNT_ID}/ai/run/@cf/meta/m2m100-1.2b",key:"",fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_CUSTOMIZE,{url:"",key:"",fetchLimit:DEFAULT_FETCH_LIMIT,fetchInterval:DEFAULT_FETCH_INTERVAL}),_DEFAULT_TRANS_APIS);// 默认快捷键 var OPT_SHORTCUT_TRANSLATE="toggleTranslate";var OPT_SHORTCUT_STYLE="toggleStyle";var OPT_SHORTCUT_POPUP="togglePopup";var OPT_SHORTCUT_SETTING="openSetting";var DEFAULT_SHORTCUTS=(_DEFAULT_SHORTCUTS={},(0,defineProperty/* default */.Z)(_DEFAULT_SHORTCUTS,OPT_SHORTCUT_TRANSLATE,["AltLeft","KeyQ"]),(0,defineProperty/* default */.Z)(_DEFAULT_SHORTCUTS,OPT_SHORTCUT_STYLE,["AltLeft","KeyC"]),(0,defineProperty/* default */.Z)(_DEFAULT_SHORTCUTS,OPT_SHORTCUT_POPUP,["AltLeft","KeyK"]),(0,defineProperty/* default */.Z)(_DEFAULT_SHORTCUTS,OPT_SHORTCUT_SETTING,["AltLeft","KeyO"]),_DEFAULT_SHORTCUTS);var TRANS_MIN_LENGTH=5;// 最短翻译长度 var TRANS_MAX_LENGTH=5000;// 最长翻译长度 var TRANS_NEWLINE_LENGTH=20;// 换行字符数 var DEFAULT_BLACKLIST=["https://fishjar.github.io/kiss-translator/options.html","https://translate.google.com","https://www.deepl.com/translator","oapi.dingtalk.com","login.dingtalk.com"];// 禁用翻译名单 var config_DEFAULT_SETTING={darkMode:false,// 深色模式 uiLang:"en",// 界面语言 -fetchLimit:DEFAULT_FETCH_LIMIT,// 最大任务数量 -fetchInterval:DEFAULT_FETCH_INTERVAL,// 任务间隔时间 +// fetchLimit: DEFAULT_FETCH_LIMIT, // 最大任务数量(移至transApis,作废) +// fetchInterval: DEFAULT_FETCH_INTERVAL, // 任务间隔时间(移至transApis,作废) minLength:TRANS_MIN_LENGTH,maxLength:TRANS_MAX_LENGTH,newlineLength:TRANS_NEWLINE_LENGTH,clearCache:false,// 是否在浏览器下次启动时清除缓存 injectRules:true,// 是否注入订阅规则 -injectWebfix:true,// 是否注入修复补丁 -detectRemote:false,// 是否使用远程语言检测 -contextMenus:true,// 是否添加右键菜单(作废) +// injectWebfix: true, // 是否注入修复补丁(作废) +// detectRemote: false, // 是否使用远程语言检测(移至rule,作废) +// contextMenus: true, // 是否添加右键菜单(作废) contextMenuType:1,// 右键菜单类型(0不显示,1简单菜单,2多级菜单) -transTitle:false,// 是否同时翻译页面标题 +// transTag: DEFAULT_TRANS_TAG, // 译文元素标签(移至rule,作废) +// transOnly: false, // 是否仅显示译文(移至rule,作废) +// transTitle: false, // 是否同时翻译页面标题(移至rule,作废) subrulesList:DEFAULT_SUBRULES_LIST,// 订阅列表 owSubrule:DEFAULT_OW_RULE,// 覆写订阅规则 transApis:DEFAULT_TRANS_APIS,// 翻译接口 -mouseKey:OPT_MOUSEKEY_DISABLE,// 翻译时机/鼠标悬停翻译 +// mouseKey: OPT_TIMING_PAGESCROLL, // 翻译时机/鼠标悬停翻译(移至rule,作废) shortcuts:DEFAULT_SHORTCUTS,// 快捷键 inputRule:DEFAULT_INPUT_RULE,// 输入框设置 tranboxSetting:DEFAULT_TRANBOX_SETTING,// 划词翻译设置 touchTranslate:2,// 触屏翻译 blacklist:DEFAULT_BLACKLIST.join(",\n"),// 禁用翻译名单 -disableLangs:[]// 不翻译的语言 +// disableLangs: [], // 不翻译的语言(移至rule,作废) +transInterval:500// 翻译间隔时间 };var config_DEFAULT_RULES=[GLOBLA_RULE];var OPT_SYNCTYPE_WORKER="KISS-Worker";var OPT_SYNCTYPE_WEBDAV="WebDAV";var OPT_SYNCTYPE_ALL=[OPT_SYNCTYPE_WORKER,OPT_SYNCTYPE_WEBDAV];var config_DEFAULT_SYNC={syncType:OPT_SYNCTYPE_WORKER,// 同步方式 syncUrl:"",// 数据同步接口 syncUser:"",// 数据同步用户名 @@ -19548,42 +19624,44 @@ var client_client="userscript";var isExt=CLIENT_EXTS.includes(client_client);var /** * 浏览器兼容插件,另可用于判断是插件模式还是网页模式,方便开发 * @returns - */function _browser(){try{return __webpack_require__(2465);}catch(err){// console.log("[browser]", err.message); + */function _browser(){try{return __webpack_require__(2465);}catch(err){// kissLog(err, "browser"); }}var browser=_browser();var isBg=function isBg(){return(globalThis===null||globalThis===void 0?void 0:globalThis.ContextType)==="BACKGROUND";}; ;// CONCATENATED MODULE: ./src/libs/storage.js -function set(_x,_x2){return _set.apply(this,arguments);}function _set(){_set=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee10(key,val){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee10$(_context10){while(1)switch(_context10.prev=_context10.next){case 0:if(!isExt){_context10.next=5;break;}_context10.next=3;return browser.storage.local.set((0,defineProperty/* default */.Z)({},key,val));case 3:_context10.next=11;break;case 5:if(!isGm){_context10.next=10;break;}_context10.next=8;return(window.KISS_GM||GM).setValue(key,val);case 8:_context10.next=11;break;case 10:window.localStorage.setItem(key,val);case 11:case"end":return _context10.stop();}},_callee10);}));return _set.apply(this,arguments);}function get(_x3){return _get.apply(this,arguments);}function _get(){_get=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee11(key){var val,_val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee11$(_context11){while(1)switch(_context11.prev=_context11.next){case 0:if(!isExt){_context11.next=7;break;}_context11.next=3;return browser.storage.local.get([key]);case 3:val=_context11.sent;return _context11.abrupt("return",val[key]);case 7:if(!isGm){_context11.next=12;break;}_context11.next=10;return(window.KISS_GM||GM).getValue(key);case 10:_val=_context11.sent;return _context11.abrupt("return",_val);case 12:return _context11.abrupt("return",window.localStorage.getItem(key));case 13:case"end":return _context11.stop();}},_callee11);}));return _get.apply(this,arguments);}function del(_x4){return _del.apply(this,arguments);}function _del(){_del=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee12(key){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee12$(_context12){while(1)switch(_context12.prev=_context12.next){case 0:if(!isExt){_context12.next=5;break;}_context12.next=3;return browser.storage.local.remove([key]);case 3:_context12.next=11;break;case 5:if(!isGm){_context12.next=10;break;}_context12.next=8;return(window.KISS_GM||GM).deleteValue(key);case 8:_context12.next=11;break;case 10:window.localStorage.removeItem(key);case 11:case"end":return _context12.stop();}},_callee12);}));return _del.apply(this,arguments);}function setObj(_x5,_x6){return _setObj.apply(this,arguments);}function _setObj(){_setObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee13(key,obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee13$(_context13){while(1)switch(_context13.prev=_context13.next){case 0:_context13.next=2;return set(key,JSON.stringify(obj));case 2:case"end":return _context13.stop();}},_callee13);}));return _setObj.apply(this,arguments);}function trySetObj(_x7,_x8){return _trySetObj.apply(this,arguments);}function _trySetObj(){_trySetObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee14(key,obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee14$(_context14){while(1)switch(_context14.prev=_context14.next){case 0:_context14.next=2;return get(key);case 2:if(_context14.sent){_context14.next=5;break;}_context14.next=5;return setObj(key,obj);case 5:case"end":return _context14.stop();}},_callee14);}));return _trySetObj.apply(this,arguments);}function getObj(_x9){return _getObj.apply(this,arguments);}function _getObj(){_getObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee15(key){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee15$(_context15){while(1)switch(_context15.prev=_context15.next){case 0:_context15.next=2;return get(key);case 2:val=_context15.sent;return _context15.abrupt("return",val&&JSON.parse(val));case 4:case"end":return _context15.stop();}},_callee15);}));return _getObj.apply(this,arguments);}function putObj(_x10,_x11){return _putObj.apply(this,arguments);}/** +function set(_x,_x2){return _set.apply(this,arguments);}function _set(){_set=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee8(key,val){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee8$(_context8){while(1)switch(_context8.prev=_context8.next){case 0:if(!isExt){_context8.next=5;break;}_context8.next=3;return browser.storage.local.set((0,defineProperty/* default */.Z)({},key,val));case 3:_context8.next=11;break;case 5:if(!isGm){_context8.next=10;break;}_context8.next=8;return(window.KISS_GM||GM).setValue(key,val);case 8:_context8.next=11;break;case 10:window.localStorage.setItem(key,val);case 11:case"end":return _context8.stop();}},_callee8);}));return _set.apply(this,arguments);}function get(_x3){return _get.apply(this,arguments);}function _get(){_get=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee9(key){var val,_val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee9$(_context9){while(1)switch(_context9.prev=_context9.next){case 0:if(!isExt){_context9.next=7;break;}_context9.next=3;return browser.storage.local.get([key]);case 3:val=_context9.sent;return _context9.abrupt("return",val[key]);case 7:if(!isGm){_context9.next=12;break;}_context9.next=10;return(window.KISS_GM||GM).getValue(key);case 10:_val=_context9.sent;return _context9.abrupt("return",_val);case 12:return _context9.abrupt("return",window.localStorage.getItem(key));case 13:case"end":return _context9.stop();}},_callee9);}));return _get.apply(this,arguments);}function del(_x4){return _del.apply(this,arguments);}function _del(){_del=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee10(key){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee10$(_context10){while(1)switch(_context10.prev=_context10.next){case 0:if(!isExt){_context10.next=5;break;}_context10.next=3;return browser.storage.local.remove([key]);case 3:_context10.next=11;break;case 5:if(!isGm){_context10.next=10;break;}_context10.next=8;return(window.KISS_GM||GM).deleteValue(key);case 8:_context10.next=11;break;case 10:window.localStorage.removeItem(key);case 11:case"end":return _context10.stop();}},_callee10);}));return _del.apply(this,arguments);}function setObj(_x5,_x6){return _setObj.apply(this,arguments);}function _setObj(){_setObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee11(key,obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee11$(_context11){while(1)switch(_context11.prev=_context11.next){case 0:_context11.next=2;return set(key,JSON.stringify(obj));case 2:case"end":return _context11.stop();}},_callee11);}));return _setObj.apply(this,arguments);}function trySetObj(_x7,_x8){return _trySetObj.apply(this,arguments);}function _trySetObj(){_trySetObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee12(key,obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee12$(_context12){while(1)switch(_context12.prev=_context12.next){case 0:_context12.next=2;return get(key);case 2:if(_context12.sent){_context12.next=5;break;}_context12.next=5;return setObj(key,obj);case 5:case"end":return _context12.stop();}},_callee12);}));return _trySetObj.apply(this,arguments);}function getObj(_x9){return _getObj.apply(this,arguments);}function _getObj(){_getObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee13(key){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee13$(_context13){while(1)switch(_context13.prev=_context13.next){case 0:_context13.next=2;return get(key);case 2:val=_context13.sent;return _context13.abrupt("return",val&&JSON.parse(val));case 4:case"end":return _context13.stop();}},_callee13);}));return _getObj.apply(this,arguments);}function putObj(_x10,_x11){return _putObj.apply(this,arguments);}/** * 对storage的封装 - */function _putObj(){_putObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee16(key,obj){var _yield$getObj;var cur;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee16$(_context16){while(1)switch(_context16.prev=_context16.next){case 0:_context16.next=2;return getObj(key);case 2:_context16.t1=_yield$getObj=_context16.sent;_context16.t0=_context16.t1!==null;if(!_context16.t0){_context16.next=6;break;}_context16.t0=_yield$getObj!==void 0;case 6:if(!_context16.t0){_context16.next=10;break;}_context16.t2=_yield$getObj;_context16.next=11;break;case 10:_context16.t2={};case 11:cur=_context16.t2;_context16.next=14;return setObj(key,_objectSpread2(_objectSpread2({},cur),obj));case 14:case"end":return _context16.stop();}},_callee16);}));return _putObj.apply(this,arguments);}var storage={get:get,set:set,del:del,setObj:setObj,trySetObj:trySetObj,getObj:getObj,putObj:putObj// onChanged, + */function _putObj(){_putObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee14(key,obj){var _yield$getObj;var cur;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee14$(_context14){while(1)switch(_context14.prev=_context14.next){case 0:_context14.next=2;return getObj(key);case 2:_context14.t1=_yield$getObj=_context14.sent;_context14.t0=_context14.t1!==null;if(!_context14.t0){_context14.next=6;break;}_context14.t0=_yield$getObj!==void 0;case 6:if(!_context14.t0){_context14.next=10;break;}_context14.t2=_yield$getObj;_context14.next=11;break;case 10:_context14.t2={};case 11:cur=_context14.t2;_context14.next=14;return setObj(key,_objectSpread2(_objectSpread2({},cur),obj));case 14:case"end":return _context14.stop();}},_callee14);}));return _putObj.apply(this,arguments);}var storage={get:get,set:set,del:del,setObj:setObj,trySetObj:trySetObj,getObj:getObj,putObj:putObj// onChanged, };/** * 设置信息 - */var getSetting=function getSetting(){return getObj(config_STOKEY_SETTING);};var getSettingWithDefault=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.next=2;return getSetting();case 2:_context.t0=_context.sent;if(_context.t0){_context.next=5;break;}_context.t0=config_DEFAULT_SETTING;case 5:return _context.abrupt("return",_context.t0);case 6:case"end":return _context.stop();}},_callee);}));return function getSettingWithDefault(){return _ref.apply(this,arguments);};}();var setSetting=function setSetting(val){return setObj(config_STOKEY_SETTING,val);};var updateSetting=function updateSetting(obj){return putObj(STOKEY_SETTING,obj);};/** + */var getSetting=function getSetting(){return getObj(config_STOKEY_SETTING);};var getSettingWithDefault=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.t0=_objectSpread2;_context.t1=_objectSpread2({},config_DEFAULT_SETTING);_context.next=4;return getSetting();case 4:_context.t2=_context.sent;if(_context.t2){_context.next=7;break;}_context.t2={};case 7:_context.t3=_context.t2;return _context.abrupt("return",(0,_context.t0)(_context.t1,_context.t3));case 9:case"end":return _context.stop();}},_callee);}));return function getSettingWithDefault(){return _ref.apply(this,arguments);};}();var setSetting=function setSetting(val){return setObj(config_STOKEY_SETTING,val);};var updateSetting=function updateSetting(obj){return putObj(STOKEY_SETTING,obj);};/** * 规则列表 */var getRules=function getRules(){return getObj(config_STOKEY_RULES);};var getRulesWithDefault=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return getRules();case 2:_context2.t0=_context2.sent;if(_context2.t0){_context2.next=5;break;}_context2.t0=config_DEFAULT_RULES;case 5:return _context2.abrupt("return",_context2.t0);case 6:case"end":return _context2.stop();}},_callee2);}));return function getRulesWithDefault(){return _ref2.apply(this,arguments);};}();var setRules=function setRules(val){return setObj(config_STOKEY_RULES,val);};/** - * 修复规则列表 - */var getWebfixRules=function getWebfixRules(){return getObj(config_STOKEY_WFRULES);};var storage_getWebfixRulesWithDefault=/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return getWebfixRules();case 2:_context3.t0=_context3.sent;if(_context3.t0){_context3.next=5;break;}_context3.t0=[];case 5:return _context3.abrupt("return",_context3.t0);case 6:case"end":return _context3.stop();}},_callee3);}));return function getWebfixRulesWithDefault(){return _ref3.apply(this,arguments);};}();var storage_setWebfixRules=function setWebfixRules(val){return setObj(STOKEY_WFRULES,val);};/** * 词汇列表 - */var getWords=function getWords(){return getObj(STOKEY_WORDS);};var getWordsWithDefault=/*#__PURE__*/function(){var _ref4=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.next=2;return getWords();case 2:_context4.t0=_context4.sent;if(_context4.t0){_context4.next=5;break;}_context4.t0={};case 5:return _context4.abrupt("return",_context4.t0);case 6:case"end":return _context4.stop();}},_callee4);}));return function getWordsWithDefault(){return _ref4.apply(this,arguments);};}();var setWords=function setWords(val){return setObj(STOKEY_WORDS,val);};/** + */var getWords=function getWords(){return getObj(STOKEY_WORDS);};var getWordsWithDefault=/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return getWords();case 2:_context3.t0=_context3.sent;if(_context3.t0){_context3.next=5;break;}_context3.t0={};case 5:return _context3.abrupt("return",_context3.t0);case 6:case"end":return _context3.stop();}},_callee3);}));return function getWordsWithDefault(){return _ref3.apply(this,arguments);};}();var setWords=function setWords(val){return setObj(STOKEY_WORDS,val);};/** * 订阅规则 - */var getSubRules=function getSubRules(url){return getObj(config_STOKEY_RULESCACHE_PREFIX+url);};var getSubRulesWithDefault=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref5=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee5(){return _regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.next=2;return getSubRules();case 2:_context5.t0=_context5.sent;if(_context5.t0){_context5.next=5;break;}_context5.t0=[];case 5:return _context5.abrupt("return",_context5.t0);case 6:case"end":return _context5.stop();}},_callee5);}));return function getSubRulesWithDefault(){return _ref5.apply(this,arguments);};}()));var delSubRules=function delSubRules(url){return del(STOKEY_RULESCACHE_PREFIX+url);};var setSubRules=function setSubRules(url,val){return setObj(config_STOKEY_RULESCACHE_PREFIX+url,val);};/** - * 修复站点 - */var getWebfix=function getWebfix(url){return getObj(STOKEY_WEBFIXCACHE_PREFIX+url);};var getWebfixWithDefault=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref6=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee6(){return _regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:_context6.next=2;return getWebfix();case 2:_context6.t0=_context6.sent;if(_context6.t0){_context6.next=5;break;}_context6.t0=[];case 5:return _context6.abrupt("return",_context6.t0);case 6:case"end":return _context6.stop();}},_callee6);}));return function getWebfixWithDefault(){return _ref6.apply(this,arguments);};}()));var setWebfix=function setWebfix(url,val){return setObj(STOKEY_WEBFIXCACHE_PREFIX+url,val);};/** + */var getSubRules=function getSubRules(url){return getObj(config_STOKEY_RULESCACHE_PREFIX+url);};var getSubRulesWithDefault=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref4=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee4(){return _regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.next=2;return getSubRules();case 2:_context4.t0=_context4.sent;if(_context4.t0){_context4.next=5;break;}_context4.t0=[];case 5:return _context4.abrupt("return",_context4.t0);case 6:case"end":return _context4.stop();}},_callee4);}));return function getSubRulesWithDefault(){return _ref4.apply(this,arguments);};}()));var delSubRules=function delSubRules(url){return del(STOKEY_RULESCACHE_PREFIX+url);};var setSubRules=function setSubRules(url,val){return setObj(config_STOKEY_RULESCACHE_PREFIX+url,val);};/** * fab位置 - */var getFab=function getFab(){return getObj(config_STOKEY_FAB);};var getFabWithDefault=/*#__PURE__*/function(){var _ref7=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee7(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee7$(_context7){while(1)switch(_context7.prev=_context7.next){case 0:_context7.next=2;return getFab();case 2:_context7.t0=_context7.sent;if(_context7.t0){_context7.next=5;break;}_context7.t0={};case 5:return _context7.abrupt("return",_context7.t0);case 6:case"end":return _context7.stop();}},_callee7);}));return function getFabWithDefault(){return _ref7.apply(this,arguments);};}();var setFab=function setFab(obj){return setObj(STOKEY_FAB,obj);};var updateFab=function updateFab(obj){return putObj(config_STOKEY_FAB,obj);};/** + */var getFab=function getFab(){return getObj(config_STOKEY_FAB);};var getFabWithDefault=/*#__PURE__*/function(){var _ref5=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.next=2;return getFab();case 2:_context5.t0=_context5.sent;if(_context5.t0){_context5.next=5;break;}_context5.t0={};case 5:return _context5.abrupt("return",_context5.t0);case 6:case"end":return _context5.stop();}},_callee5);}));return function getFabWithDefault(){return _ref5.apply(this,arguments);};}();var setFab=function setFab(obj){return setObj(STOKEY_FAB,obj);};var updateFab=function updateFab(obj){return putObj(config_STOKEY_FAB,obj);};/** * 数据同步 - */var getSync=function getSync(){return getObj(config_STOKEY_SYNC);};var getSyncWithDefault=/*#__PURE__*/function(){var _ref8=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee8(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee8$(_context8){while(1)switch(_context8.prev=_context8.next){case 0:_context8.next=2;return getSync();case 2:_context8.t0=_context8.sent;if(_context8.t0){_context8.next=5;break;}_context8.t0=config_DEFAULT_SYNC;case 5:return _context8.abrupt("return",_context8.t0);case 6:case"end":return _context8.stop();}},_callee8);}));return function getSyncWithDefault(){return _ref8.apply(this,arguments);};}();var updateSync=function updateSync(obj){return putObj(config_STOKEY_SYNC,obj);};/** + */var getSync=function getSync(){return getObj(config_STOKEY_SYNC);};var getSyncWithDefault=/*#__PURE__*/function(){var _ref6=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:_context6.next=2;return getSync();case 2:_context6.t0=_context6.sent;if(_context6.t0){_context6.next=5;break;}_context6.t0=config_DEFAULT_SYNC;case 5:return _context6.abrupt("return",_context6.t0);case 6:case"end":return _context6.stop();}},_callee6);}));return function getSyncWithDefault(){return _ref6.apply(this,arguments);};}();var updateSync=function updateSync(obj){return putObj(config_STOKEY_SYNC,obj);};/** * ms auth */var getMsauth=function getMsauth(){return getObj(STOKEY_MSAUTH);};var setMsauth=function setMsauth(val){return setObj(STOKEY_MSAUTH,val);};/** * baidu auth */var getBdauth=function getBdauth(){return getObj(STOKEY_BDAUTH);};var setBdauth=function setBdauth(val){return setObj(STOKEY_BDAUTH,val);};/** * 存入默认数据 - */var tryInitDefaultData=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref9=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee9(){return _regeneratorRuntime().wrap(function _callee9$(_context9){while(1)switch(_context9.prev=_context9.next){case 0:_context9.prev=0;_context9.next=3;return trySetObj(STOKEY_SETTING,DEFAULT_SETTING);case 3:_context9.next=5;return trySetObj(STOKEY_RULES,DEFAULT_RULES);case 5:_context9.next=7;return trySetObj(STOKEY_SYNC,DEFAULT_SYNC);case 7:_context9.next=9;return trySetObj("".concat(STOKEY_RULESCACHE_PREFIX).concat("https://fishjar.github.io/kiss-rules/kiss-rules.json"),BUILTIN_RULES);case 9:_context9.next=14;break;case 11:_context9.prev=11;_context9.t0=_context9["catch"](0);console.log("[init default]",_context9.t0);case 14:case"end":return _context9.stop();}},_callee9,null,[[0,11]]);}));return function tryInitDefaultData(){return _ref9.apply(this,arguments);};}())); + */var tryInitDefaultData=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref7=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee7(){return _regeneratorRuntime().wrap(function _callee7$(_context7){while(1)switch(_context7.prev=_context7.next){case 0:_context7.prev=0;_context7.next=3;return trySetObj(STOKEY_SETTING,DEFAULT_SETTING);case 3:_context7.next=5;return trySetObj(STOKEY_RULES,DEFAULT_RULES);case 5:_context7.next=7;return trySetObj(STOKEY_SYNC,DEFAULT_SYNC);case 7:_context7.next=9;return trySetObj("".concat(STOKEY_RULESCACHE_PREFIX).concat("https://fishjar.github.io/kiss-rules/kiss-rules.json"),BUILTIN_RULES);case 9:_context7.next=14;break;case 11:_context7.prev=11;_context7.t0=_context7["catch"](0);kissLog(_context7.t0,"init default");case 14:case"end":return _context7.stop();}},_callee7,null,[[0,11]]);}));return function tryInitDefaultData(){return _ref7.apply(this,arguments);};}())); +;// CONCATENATED MODULE: ./src/libs/log.js +/** + * 日志函数 + * @param {*} msg + * @param {*} type + */var log_kissLog=function kissLog(msg,type){var prefix="[KISS-Translator]";if(type){prefix+="[".concat(type,"]");}console.log("".concat(prefix," ").concat(msg));}; ;// CONCATENATED MODULE: ./src/hooks/Storage.js /** - * - * @param {*} key + * + * @param {*} key * @param {*} defaultVal 需为调用hook外的常量 - * @returns - */function useStorage(key,defaultVal){var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useState3=(0,react.useState)(null),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),data=_useState4[0],setData=_useState4[1];var save=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(val){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:setData(val);_context.next=3;return storage.setObj(key,val);case 3:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[key]);var update=(0,react.useCallback)(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:setData(function(){var pre=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};return _objectSpread2(_objectSpread2({},pre),obj);});_context2.next=3;return storage.putObj(key,obj);case 3:case"end":return _context2.stop();}},_callee2);}));return function(_x2){return _ref2.apply(this,arguments);};}(),[key]);var remove=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:setData(null);_context3.next=3;return storage.del(key);case 3:case"end":return _context3.stop();}},_callee3);})),[key]);var reload=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;setLoading(true);_context4.next=4;return storage.getObj(key);case 4:val=_context4.sent;if(val){setData(val);}_context4.next=11;break;case 8:_context4.prev=8;_context4.t0=_context4["catch"](0);console.log("[storage reload]",_context4.t0.message);case 11:_context4.prev=11;setLoading(false);return _context4.finish(11);case 14:case"end":return _context4.stop();}},_callee4,null,[[0,8,11,14]]);})),[key]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;setLoading(true);_context5.next=4;return storage.getObj(key);case 4:val=_context5.sent;if(!val){_context5.next=9;break;}setData(val);_context5.next=13;break;case 9:if(!defaultVal){_context5.next=13;break;}setData(defaultVal);_context5.next=13;return storage.setObj(key,defaultVal);case 13:_context5.next=18;break;case 15:_context5.prev=15;_context5.t0=_context5["catch"](0);console.log("[storage load]",_context5.t0.message);case 18:_context5.prev=18;setLoading(false);return _context5.finish(18);case 21:case"end":return _context5.stop();}},_callee5,null,[[0,15,18,21]]);}))();},[key,defaultVal]);return{data:data,save:save,update:update,remove:remove,reload:reload,loading:loading};} + * @returns + */function useStorage(key,defaultVal){var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useState3=(0,react.useState)(null),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),data=_useState4[0],setData=_useState4[1];var save=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(val){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:setData(val);_context.next=3;return storage.setObj(key,val);case 3:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[key]);var update=(0,react.useCallback)(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:setData(function(){var pre=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};return _objectSpread2(_objectSpread2({},pre),obj);});_context2.next=3;return storage.putObj(key,obj);case 3:case"end":return _context2.stop();}},_callee2);}));return function(_x2){return _ref2.apply(this,arguments);};}(),[key]);var remove=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:setData(null);_context3.next=3;return storage.del(key);case 3:case"end":return _context3.stop();}},_callee3);})),[key]);var reload=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;setLoading(true);_context4.next=4;return storage.getObj(key);case 4:val=_context4.sent;if(val){setData(val);}_context4.next=11;break;case 8:_context4.prev=8;_context4.t0=_context4["catch"](0);log_kissLog(_context4.t0,"storage reload");case 11:_context4.prev=11;setLoading(false);return _context4.finish(11);case 14:case"end":return _context4.stop();}},_callee4,null,[[0,8,11,14]]);})),[key]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;setLoading(true);_context5.next=4;return storage.getObj(key);case 4:val=_context5.sent;if(!val){_context5.next=9;break;}setData(val);_context5.next=13;break;case 9:if(!defaultVal){_context5.next=13;break;}setData(defaultVal);_context5.next=13;return storage.setObj(key,defaultVal);case 13:_context5.next=18;break;case 15:_context5.prev=15;_context5.t0=_context5["catch"](0);log_kissLog(_context5.t0,"storage load");case 18:_context5.prev=18;setLoading(false);return _context5.finish(18);case 21:case"end":return _context5.stop();}},_callee5,null,[[0,15,18,21]]);}))();},[key,defaultVal]);return{data:data,save:save,update:update,remove:remove,reload:reload,loading:loading};} // EXTERNAL MODULE: ./node_modules/.pnpm/@babel+runtime@7.22.15/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js var unsupportedIterableToArray = __webpack_require__(9373); ;// CONCATENATED MODULE: ./node_modules/.pnpm/@babel+runtime@7.22.15/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js @@ -20250,6 +20328,9 @@ function _objectWithoutProperties(source, excluded) { } ;// CONCATENATED MODULE: ./src/libs/msg.js /** + * 获取当前tab信息 + * @returns + */var getCurTab=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var _yield$browser$tabs$q,_yield$browser$tabs$q2,tab;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.next=2;return browser.tabs.query({active:true,lastFocusedWindow:true});case 2:_yield$browser$tabs$q=_context.sent;_yield$browser$tabs$q2=(0,slicedToArray/* default */.Z)(_yield$browser$tabs$q,1);tab=_yield$browser$tabs$q2[0];return _context.abrupt("return",tab);case 6:case"end":return _context.stop();}},_callee);}));return function getCurTab(){return _ref.apply(this,arguments);};}();var getCurTabId=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(){var tab;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return getCurTab();case 2:tab=_context2.sent;return _context2.abrupt("return",tab.id);case 4:case"end":return _context2.stop();}},_callee2);}));return function getCurTabId(){return _ref2.apply(this,arguments);};}();/** * 发送消息给background * @param {*} action * @param {*} args @@ -20259,10 +20340,7 @@ function _objectWithoutProperties(source, excluded) { * @param {*} action * @param {*} args * @returns - */var sendTabMsg=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(action,args){var tabs;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.next=2;return browser.tabs.query({active:true,currentWindow:true});case 2:tabs=_context.sent;return _context.abrupt("return",browser.tabs.sendMessage(tabs[0].id,{action:action,args:args}));case 4:case"end":return _context.stop();}},_callee);}));return function sendTabMsg(_x,_x2){return _ref.apply(this,arguments);};}();/** - * 获取当前tab信息 - * @returns - */var getTabInfo=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(){var tabs;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return browser.tabs.query({active:true,currentWindow:true});case 2:tabs=_context2.sent;return _context2.abrupt("return",tabs[0]);case 4:case"end":return _context2.stop();}},_callee2);}));return function getTabInfo(){return _ref2.apply(this,arguments);};}(); + */var sendTabMsg=/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(action,args){var tabId;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return getCurTabId();case 2:tabId=_context3.sent;return _context3.abrupt("return",browser.tabs.sendMessage(tabId,{action:action,args:args}));case 4:case"end":return _context3.stop();}},_callee3);}));return function sendTabMsg(_x,_x2){return _ref3.apply(this,arguments);};}(); ;// CONCATENATED MODULE: ./src/libs/pool.js /** * 任务池 @@ -20276,9 +20354,9 @@ var maxCount=_limit;// 最大数量 var curCount=0;// 当前数量 var interval=_interval;// 间隔时间 var timer=null;var run=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var item,args,resolve,reject,retry,preArgs,res,retryTimer;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:// console.log("timer", timer); -timer&&clearTimeout(timer);timer=setTimeout(run,interval);if(!(curCount0&&arguments[0]!==undefined?arguments[0]:100;var _limit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:100;if(_interval>=0&&_interval<=5000&&_interval!==interval){interval=_interval;}if(_limit>=1&&_limit<=100&&_limit!==maxCount){maxCount=_limit;}},clear:function clear(){pool.length=0;curCount=0;timer&&clearTimeout(timer);timer=null;}};}; +timer&&clearTimeout(timer);timer=setTimeout(run,interval);if(!(curCount0&&arguments[0]!==undefined?arguments[0]:100;var _limit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:100;if(_interval>=0&&_interval<=5000&&_interval!==interval){interval=_interval;}if(_limit>=1&&_limit<=100&&_limit!==maxCount){maxCount=_limit;}},clear:function clear(){pool.length=0;curCount=0;timer&&clearTimeout(timer);timer=null;}};}; ;// CONCATENATED MODULE: ./src/libs/auth.js -var parseMSToken=function parseMSToken(token){try{return JSON.parse(atob(token.split(".")[1])).exp;}catch(err){console.log("[parseMSToken]",err);}return 0;};/** +var parseMSToken=function parseMSToken(token){try{return JSON.parse(atob(token.split(".")[1])).exp;}catch(err){log_kissLog(err,"parseMSToken");}return 0;};/** * 闭包缓存token,减少对storage查询 * @returns */var _msAuth=function _msAuth(){var _ref={},token=_ref.token,exp=_ref.exp;return/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var now,res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:// 查询内存缓存 @@ -20311,37 +20389,37 @@ parts:[{text:prompt}]}]};var input="".concat(url,"/").concat(model,":generateCon * @returns */var newTransReq=function newTransReq(_ref12,apiSetting){var translator=_ref12.translator,text=_ref12.text,from=_ref12.from,to=_ref12.to;var args=_objectSpread2({text:text,from:from,to:to},apiSetting);switch(translator){case OPT_TRANS_DEEPL:case OPT_TRANS_OPENAI:case OPT_TRANS_GEMINI:case OPT_TRANS_CLOUDFLAREAI:args.key=keyPick(translator,args.key);break;default:}switch(translator){case OPT_TRANS_GOOGLE:return genGoogle(args);case OPT_TRANS_MICROSOFT:return genMicrosoft(args);case OPT_TRANS_DEEPL:return genDeepl(args);case OPT_TRANS_DEEPLFREE:return genDeeplFree(args);case OPT_TRANS_DEEPLX:return genDeeplX(args);case OPT_TRANS_BAIDU:return genBaidu(args);case OPT_TRANS_TENCENT:return genTencent(args);case OPT_TRANS_OPENAI:return genOpenAI(args);case OPT_TRANS_GEMINI:return genGemini(args);case OPT_TRANS_CLOUDFLAREAI:return genCloudflareAI(args);case OPT_TRANS_CUSTOMIZE:return genCustom(args);default:throw new Error("[trans] translator: ".concat(translator," not support"));}}; ;// CONCATENATED MODULE: ./src/libs/fetch.js -var fetch_excluded=["response","responseHeaders","status","statusText"],_excluded2=["useCache","usePool","transOpts","apiSetting"];/** +var fetch_excluded=["response","responseHeaders","status","statusText"],_excluded2=["useCache","usePool","transOpts","apiSetting"];var TIMEOUT=5000;/** * 油猴脚本的请求封装 * @param {*} input * @param {*} init * @returns */var fetchGM=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(input){var _ref2,_ref2$method,method,headers,body,_args=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_ref2=_args.length>1&&_args[1]!==undefined?_args[1]:{},_ref2$method=_ref2.method,method=_ref2$method===void 0?"GET":_ref2$method,headers=_ref2.headers,body=_ref2.body;return _context.abrupt("return",new Promise(function(resolve,reject){GM.xmlHttpRequest({method:method,url:input,headers:headers,data:body,// withCredentials: true, -onload:function onload(_ref3){var response=_ref3.response,responseHeaders=_ref3.responseHeaders,status=_ref3.status,statusText=_ref3.statusText,opts=_objectWithoutProperties(_ref3,fetch_excluded);var headers={};responseHeaders.split("\n").forEach(function(line){var _line$split$map=line.split(":").map(function(item){return item.trim();}),_line$split$map2=(0,slicedToArray/* default */.Z)(_line$split$map,2),name=_line$split$map2[0],value=_line$split$map2[1];if(name&&value){headers[name]=value;}});resolve({body:response,headers:headers,status:status,statusText:statusText});},onerror:reject});}));case 2:case"end":return _context.stop();}},_callee);}));return function fetchGM(_x){return _ref.apply(this,arguments);};}();/** +timeout:TIMEOUT,onload:function onload(_ref3){var response=_ref3.response,responseHeaders=_ref3.responseHeaders,status=_ref3.status,statusText=_ref3.statusText,opts=_objectWithoutProperties(_ref3,fetch_excluded);var headers={};responseHeaders.split("\n").forEach(function(line){var _line$split$map=line.split(":").map(function(item){return item.trim();}),_line$split$map2=(0,slicedToArray/* default */.Z)(_line$split$map,2),name=_line$split$map2[0],value=_line$split$map2[1];if(name&&value){headers[name]=value;}});resolve({body:response,headers:headers,status:status,statusText:statusText});},onerror:reject});}));case 2:case"end":return _context.stop();}},_callee);}));return function fetchGM(_x){return _ref.apply(this,arguments);};}();/** * 发起请求 * @param {*} param0 * @returns - */var fetchApi=/*#__PURE__*/function(){var _ref5=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(_ref4){var input,init,transOpts,apiSetting,_yield$newTransReq,_yield$newTransReq2,_info,_info$script,_info2,_info2$script,info,connects,url,isSafe,_ref6,body,headers,status,statusText;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:input=_ref4.input,init=_ref4.init,transOpts=_ref4.transOpts,apiSetting=_ref4.apiSetting;if(!(transOpts!==null&&transOpts!==void 0&&transOpts.translator)){_context2.next=8;break;}_context2.next=4;return newTransReq(transOpts,apiSetting);case 4:_yield$newTransReq=_context2.sent;_yield$newTransReq2=(0,slicedToArray/* default */.Z)(_yield$newTransReq,2);input=_yield$newTransReq2[0];init=_yield$newTransReq2[1];case 8:if(input){_context2.next=10;break;}throw new Error("url is empty");case 10:if(!isGm){_context2.next=37;break;}if(!window.KISS_GM){_context2.next=17;break;}_context2.next=14;return window.KISS_GM.getInfo();case 14:info=_context2.sent;_context2.next=18;break;case 17:info=GM.info;case 18:// Tampermonkey --> .connects + */var fetchApi=/*#__PURE__*/function(){var _ref5=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(_ref4){var _AbortSignal;var input,init,transOpts,apiSetting,_yield$newTransReq,_yield$newTransReq2,_info,_info$script,_info2,_info2$script,info,connects,url,isSafe,_ref6,body,headers,status,statusText;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:input=_ref4.input,init=_ref4.init,transOpts=_ref4.transOpts,apiSetting=_ref4.apiSetting;if(!(transOpts!==null&&transOpts!==void 0&&transOpts.translator)){_context2.next=8;break;}_context2.next=4;return newTransReq(transOpts,apiSetting);case 4:_yield$newTransReq=_context2.sent;_yield$newTransReq2=(0,slicedToArray/* default */.Z)(_yield$newTransReq,2);input=_yield$newTransReq2[0];init=_yield$newTransReq2[1];case 8:if(input){_context2.next=10;break;}throw new Error("url is empty");case 10:if(!isGm){_context2.next=37;break;}if(!window.KISS_GM){_context2.next=17;break;}_context2.next=14;return window.KISS_GM.getInfo();case 14:info=_context2.sent;_context2.next=18;break;case 17:info=GM.info;case 18:// Tampermonkey --> .connects // Violentmonkey --> .connect -connects=((_info=info)===null||_info===void 0?void 0:(_info$script=_info.script)===null||_info$script===void 0?void 0:_info$script.connects)||((_info2=info)===null||_info2===void 0?void 0:(_info2$script=_info2.script)===null||_info2$script===void 0?void 0:_info2$script.connect)||[];url=new URL(input);isSafe=connects.find(function(item){return url.hostname.endsWith(item);});if(!isSafe){_context2.next=37;break;}if(!window.KISS_GM){_context2.next=28;break;}_context2.next=25;return window.KISS_GM.fetch(input,init);case 25:_context2.t0=_context2.sent;_context2.next=31;break;case 28:_context2.next=30;return fetchGM(input,init);case 30:_context2.t0=_context2.sent;case 31:_ref6=_context2.t0;body=_ref6.body;headers=_ref6.headers;status=_ref6.status;statusText=_ref6.statusText;return _context2.abrupt("return",new Response(body,{headers:new Headers(headers),status:status,statusText:statusText}));case 37:return _context2.abrupt("return",fetch(input,init));case 38:case"end":return _context2.stop();}},_callee2);}));return function fetchApi(_x2){return _ref5.apply(this,arguments);};}();/** +connects=((_info=info)===null||_info===void 0?void 0:(_info$script=_info.script)===null||_info$script===void 0?void 0:_info$script.connects)||((_info2=info)===null||_info2===void 0?void 0:(_info2$script=_info2.script)===null||_info2$script===void 0?void 0:_info2$script.connect)||[];url=new URL(input);isSafe=connects.find(function(item){return url.hostname.endsWith(item);});if(!isSafe){_context2.next=37;break;}if(!window.KISS_GM){_context2.next=28;break;}_context2.next=25;return window.KISS_GM.fetch(input,init);case 25:_context2.t0=_context2.sent;_context2.next=31;break;case 28:_context2.next=30;return fetchGM(input,init);case 30:_context2.t0=_context2.sent;case 31:_ref6=_context2.t0;body=_ref6.body;headers=_ref6.headers;status=_ref6.status;statusText=_ref6.statusText;return _context2.abrupt("return",new Response(body,{headers:new Headers(headers),status:status,statusText:statusText}));case 37:if((_AbortSignal=AbortSignal)!==null&&_AbortSignal!==void 0&&_AbortSignal.timeout){Object.assign(init,{signal:AbortSignal.timeout(TIMEOUT)});}return _context2.abrupt("return",fetch(input,init));case 39:case"end":return _context2.stop();}},_callee2);}));return function fetchApi(_x2){return _ref5.apply(this,arguments);};}();/** * 请求池实例 */var fetchPool=taskPool(fetchApi,null,DEFAULT_FETCH_INTERVAL,DEFAULT_FETCH_LIMIT);/** * 请求数据统一接口 * @param {*} input * @param {*} opts * @returns - */var fetchData=/*#__PURE__*/function(){var _ref7=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(input){var _ref8,useCache,usePool,transOpts,apiSetting,init,cacheReq,res,cache,_res,_res$headers$get,cause,_cache,contentType,_args3=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_ref8=_args3.length>1&&_args3[1]!==undefined?_args3[1]:{},useCache=_ref8.useCache,usePool=_ref8.usePool,transOpts=_ref8.transOpts,apiSetting=_ref8.apiSetting,init=_objectWithoutProperties(_ref8,_excluded2);_context3.next=3;return newCacheReq(input,init);case 3:cacheReq=_context3.sent;if(!useCache){_context3.next=17;break;}_context3.prev=5;_context3.next=8;return caches.open(CACHE_NAME);case 8:cache=_context3.sent;_context3.next=11;return cache.match(cacheReq);case 11:res=_context3.sent;_context3.next=17;break;case 14:_context3.prev=14;_context3.t0=_context3["catch"](5);console.log("[cache match]",_context3.t0.message);case 17:if(res){_context3.next=46;break;}if(!usePool){_context3.next=24;break;}_context3.next=21;return fetchPool.push({input:input,init:init,transOpts:transOpts,apiSetting:apiSetting});case 21:res=_context3.sent;_context3.next=27;break;case 24:_context3.next=26;return fetchApi({input:input,init:init,transOpts:transOpts,apiSetting:apiSetting});case 26:res=_context3.sent;case 27:if((_res=res)!==null&&_res!==void 0&&_res.ok){_context3.next=34;break;}cause={status:res.status};if(!((_res$headers$get=res.headers.get("Content-Type"))!==null&&_res$headers$get!==void 0&&_res$headers$get.includes("json"))){_context3.next=33;break;}_context3.next=32;return res.json();case 32:cause.body=_context3.sent;case 33:throw new Error("response: [".concat(res.status,"] ").concat(res.statusText),{cause:cause});case 34:if(!useCache){_context3.next=46;break;}_context3.prev=35;_context3.next=38;return caches.open(CACHE_NAME);case 38:_cache=_context3.sent;_context3.next=41;return _cache.put(cacheReq,res.clone());case 41:_context3.next=46;break;case 43:_context3.prev=43;_context3.t1=_context3["catch"](35);console.log("[cache put]",_context3.t1.message);case 46:contentType=res.headers.get("Content-Type");if(!(contentType!==null&&contentType!==void 0&&contentType.includes("json"))){_context3.next=51;break;}_context3.next=50;return res.json();case 50:return _context3.abrupt("return",_context3.sent);case 51:_context3.next=53;return res.text();case 53:return _context3.abrupt("return",_context3.sent);case 54:case"end":return _context3.stop();}},_callee3,null,[[5,14],[35,43]]);}));return function fetchData(_x3){return _ref7.apply(this,arguments);};}();/** + */var fetchData=/*#__PURE__*/function(){var _ref7=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(input){var _ref8,useCache,usePool,transOpts,apiSetting,init,cacheReq,res,cache,_res,_res$headers$get,msg,_cache,contentType,_args3=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_ref8=_args3.length>1&&_args3[1]!==undefined?_args3[1]:{},useCache=_ref8.useCache,usePool=_ref8.usePool,transOpts=_ref8.transOpts,apiSetting=_ref8.apiSetting,init=_objectWithoutProperties(_ref8,_excluded2);_context3.next=3;return newCacheReq(input,init);case 3:cacheReq=_context3.sent;if(!useCache){_context3.next=17;break;}_context3.prev=5;_context3.next=8;return caches.open(CACHE_NAME);case 8:cache=_context3.sent;_context3.next=11;return cache.match(cacheReq);case 11:res=_context3.sent;_context3.next=17;break;case 14:_context3.prev=14;_context3.t0=_context3["catch"](5);log_kissLog(_context3.t0,"cache match");case 17:if(res){_context3.next=46;break;}if(!usePool){_context3.next=24;break;}_context3.next=21;return fetchPool.push({input:input,init:init,transOpts:transOpts,apiSetting:apiSetting});case 21:res=_context3.sent;_context3.next=27;break;case 24:_context3.next=26;return fetchApi({input:input,init:init,transOpts:transOpts,apiSetting:apiSetting});case 26:res=_context3.sent;case 27:if((_res=res)!==null&&_res!==void 0&&_res.ok){_context3.next=34;break;}msg={url:input,status:res.status};if(!((_res$headers$get=res.headers.get("Content-Type"))!==null&&_res$headers$get!==void 0&&_res$headers$get.includes("json"))){_context3.next=33;break;}_context3.next=32;return res.json();case 32:msg.response=_context3.sent;case 33:throw new Error(JSON.stringify(msg));case 34:if(!useCache){_context3.next=46;break;}_context3.prev=35;_context3.next=38;return caches.open(CACHE_NAME);case 38:_cache=_context3.sent;_context3.next=41;return _cache.put(cacheReq,res.clone());case 41:_context3.next=46;break;case 43:_context3.prev=43;_context3.t1=_context3["catch"](35);log_kissLog(_context3.t1,"cache put");case 46:contentType=res.headers.get("Content-Type");if(!(contentType!==null&&contentType!==void 0&&contentType.includes("json"))){_context3.next=51;break;}_context3.next=50;return res.json();case 50:return _context3.abrupt("return",_context3.sent);case 51:_context3.next=53;return res.text();case 53:return _context3.abrupt("return",_context3.sent);case 54:case"end":return _context3.stop();}},_callee3,null,[[5,14],[35,43]]);}));return function fetchData(_x3){return _ref7.apply(this,arguments);};}();/** * fetch 兼容性封装 * @param {*} input * @param {*} opts * @returns - */var fetch_fetchPolyfill=/*#__PURE__*/function(){var _ref9=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(input,opts){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:if(input!==null&&input!==void 0&&input.trim()){_context4.next=2;break;}throw new Error("URL is empty");case 2:if(!(isExt&&!isBg())){_context4.next=9;break;}_context4.next=5;return sendBgMsg(MSG_FETCH,{input:input,opts:opts});case 5:res=_context4.sent;if(!res.error){_context4.next=8;break;}throw new Error(res.error,{cause:res.cause});case 8:return _context4.abrupt("return",res.data);case 9:_context4.next=11;return fetchData(input,opts);case 11:return _context4.abrupt("return",_context4.sent);case 12:case"end":return _context4.stop();}},_callee4);}));return function fetchPolyfill(_x4,_x5){return _ref9.apply(this,arguments);};}();/** + */var fetch_fetchPolyfill=/*#__PURE__*/function(){var _ref9=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(input,opts){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:if(input!==null&&input!==void 0&&input.trim()){_context4.next=2;break;}throw new Error("URL is empty");case 2:if(!(isExt&&!isBg())){_context4.next=6;break;}_context4.next=5;return sendBgMsg(MSG_FETCH,{input:input,opts:opts});case 5:return _context4.abrupt("return",_context4.sent);case 6:_context4.next=8;return fetchData(input,opts);case 8:return _context4.abrupt("return",_context4.sent);case 9:case"end":return _context4.stop();}},_callee4);}));return function fetchPolyfill(_x4,_x5){return _ref9.apply(this,arguments);};}();/** * 更新 fetch pool 参数 * @param {*} interval * @param {*} limit - */var updateFetchPool=/*#__PURE__*/function(){var _ref10=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(interval,limit){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:if(!isExt){_context5.next=8;break;}_context5.next=3;return sendBgMsg(MSG_FETCH_LIMIT,{interval:interval,limit:limit});case 3:res=_context5.sent;if(!res.error){_context5.next=6;break;}throw new Error(res.error);case 6:_context5.next=9;break;case 8:fetchPool.update(interval,limit);case 9:case"end":return _context5.stop();}},_callee5);}));return function updateFetchPool(_x6,_x7){return _ref10.apply(this,arguments);};}();/** + */var updateFetchPool=/*#__PURE__*/function(){var _ref10=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(interval,limit){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:if(!isExt){_context5.next=5;break;}_context5.next=3;return sendBgMsg(MSG_FETCH_LIMIT,{interval:interval,limit:limit});case 3:_context5.next=6;break;case 5:fetchPool.update(interval,limit);case 6:case"end":return _context5.stop();}},_callee5);}));return function updateFetchPool(_x6,_x7){return _ref10.apply(this,arguments);};}();/** * 清空任务池 - */var clearFetchPool=/*#__PURE__*/function(){var _ref11=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:if(!isExt){_context6.next=8;break;}_context6.next=3;return sendBgMsg(MSG_FETCH_CLEAR);case 3:res=_context6.sent;if(!res.error){_context6.next=6;break;}throw new Error(res.error);case 6:_context6.next=9;break;case 8:fetchPool.clear();case 9:case"end":return _context6.stop();}},_callee6);}));return function clearFetchPool(){return _ref11.apply(this,arguments);};}(); + */var clearFetchPool=/*#__PURE__*/function(){var _ref11=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:if(!isExt){_context6.next=5;break;}_context6.next=3;return sendBgMsg(MSG_FETCH_CLEAR);case 3:_context6.next=6;break;case 5:fetchPool.clear();case 6:case"end":return _context6.stop();}},_callee6);}));return function clearFetchPool(){return _ref11.apply(this,arguments);};}(); ;// CONCATENATED MODULE: ./src/libs/utils.js /** * 限制数字大小 @@ -20427,17 +20505,21 @@ connects=((_info=info)===null||_info===void 0?void 0:(_info$script=_info.script) * @param {*} text * @returns */var apiBaiduLangdetect=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(text){var res,_OPT_LANGS_BAIDU$get;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return fetch_fetchPolyfill(URL_BAIDU_LANGDETECT,{headers:{"Content-type":"application/json"},method:"POST",body:JSON.stringify({query:text}),useCache:true});case 2:res=_context2.sent;if(!(res.error===0)){_context2.next=5;break;}return _context2.abrupt("return",(_OPT_LANGS_BAIDU$get=OPT_LANGS_BAIDU.get(res.lan))!==null&&_OPT_LANGS_BAIDU$get!==void 0?_OPT_LANGS_BAIDU$get:res.lan);case 5:return _context2.abrupt("return","");case 6:case"end":return _context2.stop();}},_callee2);}));return function apiBaiduLangdetect(_x4){return _ref2.apply(this,arguments);};}();/** + * 百度翻译建议 + * @param {*} text + * @returns + */var apiBaiduSuggest=/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(text){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return fetch_fetchPolyfill(URL_BAIDU_SUGGEST,{headers:{"Content-type":"application/json"},method:"POST",body:JSON.stringify({kw:text}),useCache:true});case 2:res=_context3.sent;if(!(res.errno===0)){_context3.next=5;break;}return _context3.abrupt("return",res.data);case 5:return _context3.abrupt("return",[]);case 6:case"end":return _context3.stop();}},_callee3);}));return function apiBaiduSuggest(_x5){return _ref3.apply(this,arguments);};}();/** * 腾讯语言识别 * @param {*} text * @returns - */var apiTencentLangdetect=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref3=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee3(text){var _OPT_LANGS_TENCENT$ge;var body,res;return _regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:body=JSON.stringify({header:{fn:"text_analysis"},text:text});_context3.next=3;return fetchPolyfill(URL_TENCENT_TRANSMART,{headers:{"Content-type":"application/json"},method:"POST",body:body,useCache:true});case 3:res=_context3.sent;return _context3.abrupt("return",(_OPT_LANGS_TENCENT$ge=OPT_LANGS_TENCENT.get(res.language))!==null&&_OPT_LANGS_TENCENT$ge!==void 0?_OPT_LANGS_TENCENT$ge:res.language);case 5:case"end":return _context3.stop();}},_callee3);}));return function apiTencentLangdetect(_x5){return _ref3.apply(this,arguments);};}()));/** + */var apiTencentLangdetect=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref4=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee4(text){var _OPT_LANGS_TENCENT$ge;var body,res;return _regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:body=JSON.stringify({header:{fn:"text_analysis"},text:text});_context4.next=3;return fetchPolyfill(URL_TENCENT_TRANSMART,{headers:{"Content-type":"application/json"},method:"POST",body:body,useCache:true});case 3:res=_context4.sent;return _context4.abrupt("return",(_OPT_LANGS_TENCENT$ge=OPT_LANGS_TENCENT.get(res.language))!==null&&_OPT_LANGS_TENCENT$ge!==void 0?_OPT_LANGS_TENCENT$ge:res.language);case 5:case"end":return _context4.stop();}},_callee4);}));return function apiTencentLangdetect(_x6){return _ref4.apply(this,arguments);};}()));/** * 统一翻译接口 * @param {*} param0 * @returns - */var apiTranslate=/*#__PURE__*/function(){var _ref5=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(_ref4){var _OPT_LANGS_SPECIAL$tr,_res$result,_res$result2,_res$choices,_res$candidates,_res$result3;var translator,text,fromLang,toLang,_ref4$apiSetting,apiSetting,_ref4$useCache,useCache,_ref4$usePool,usePool,trText,isSame,from,to,_process$env$REACT_AP,_process$env$REACT_AP2,v1,v2,cacheOpts,transOpts,res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:translator=_ref4.translator,text=_ref4.text,fromLang=_ref4.fromLang,toLang=_ref4.toLang,_ref4$apiSetting=_ref4.apiSetting,apiSetting=_ref4$apiSetting===void 0?{}:_ref4$apiSetting,_ref4$useCache=_ref4.useCache,useCache=_ref4$useCache===void 0?true:_ref4$useCache,_ref4$usePool=_ref4.usePool,usePool=_ref4$usePool===void 0?true:_ref4$usePool;trText="";isSame=false;if(text){_context4.next=5;break;}return _context4.abrupt("return",[trText,true]);case 5:from=(_OPT_LANGS_SPECIAL$tr=OPT_LANGS_SPECIAL[translator].get(fromLang))!==null&&_OPT_LANGS_SPECIAL$tr!==void 0?_OPT_LANGS_SPECIAL$tr:OPT_LANGS_SPECIAL[translator].get("auto");to=OPT_LANGS_SPECIAL[translator].get(toLang);if(to){_context4.next=10;break;}console.log("[trans] target lang: ".concat(toLang," not support"));return _context4.abrupt("return",[trText,isSame]);case 10:// 版本号一/二位升级,旧缓存失效 -_process$env$REACT_AP="1.8.3".split("."),_process$env$REACT_AP2=(0,slicedToArray/* default */.Z)(_process$env$REACT_AP,2),v1=_process$env$REACT_AP2[0],v2=_process$env$REACT_AP2[1];cacheOpts={translator:translator,text:text,fromLang:fromLang,toLang:toLang,version:[v1,v2].join(".")};transOpts={translator:translator,text:text,from:from,to:to};_context4.next=15;return fetch_fetchPolyfill("".concat(URL_CACHE_TRAN,"?").concat(query_string.stringify(cacheOpts)),{useCache:useCache,usePool:usePool,transOpts:transOpts,apiSetting:apiSetting});case 15:res=_context4.sent;_context4.t0=translator;_context4.next=_context4.t0===OPT_TRANS_GOOGLE?19:_context4.t0===OPT_TRANS_MICROSOFT?22:_context4.t0===OPT_TRANS_DEEPL?25:_context4.t0===OPT_TRANS_DEEPLFREE?28:_context4.t0===OPT_TRANS_DEEPLX?31:_context4.t0===OPT_TRANS_BAIDU?34:_context4.t0===OPT_TRANS_TENCENT?36:_context4.t0===OPT_TRANS_OPENAI?39:_context4.t0===OPT_TRANS_GEMINI?42:_context4.t0===OPT_TRANS_CLOUDFLAREAI?45:_context4.t0===OPT_TRANS_CUSTOMIZE?48:51;break;case 19:trText=res.sentences.map(function(item){return item.trans;}).join(" ");isSame=to===res.src;return _context4.abrupt("break",51);case 22:trText=res.map(function(item){return item.translations.map(function(item){return item.text;}).join(" ");}).join(" ");isSame=text===trText;return _context4.abrupt("break",51);case 25:trText=res.translations.map(function(item){return item.text;}).join(" ");isSame=to===res.translations[0].detected_source_language;return _context4.abrupt("break",51);case 28:trText=(_res$result=res.result)===null||_res$result===void 0?void 0:_res$result.texts.map(function(item){return item.text;}).join(" ");isSame=to===((_res$result2=res.result)===null||_res$result2===void 0?void 0:_res$result2.lang);return _context4.abrupt("break",51);case 31:trText=res.data;isSame=to===res.source_lang;return _context4.abrupt("break",51);case 34:// trText = res.trans_result?.data.map((item) => item.dst).join(" "); + */var apiTranslate=/*#__PURE__*/function(){var _ref6=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(_ref5){var _OPT_LANGS_SPECIAL$tr,_res$result,_res$result2,_res$choices,_res$candidates,_res$result3;var translator,text,fromLang,toLang,_ref5$apiSetting,apiSetting,_ref5$useCache,useCache,_ref5$usePool,usePool,trText,isSame,from,to,_process$env$REACT_AP,_process$env$REACT_AP2,v1,v2,cacheOpts,transOpts,res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:translator=_ref5.translator,text=_ref5.text,fromLang=_ref5.fromLang,toLang=_ref5.toLang,_ref5$apiSetting=_ref5.apiSetting,apiSetting=_ref5$apiSetting===void 0?{}:_ref5$apiSetting,_ref5$useCache=_ref5.useCache,useCache=_ref5$useCache===void 0?true:_ref5$useCache,_ref5$usePool=_ref5.usePool,usePool=_ref5$usePool===void 0?true:_ref5$usePool;trText="";isSame=false;if(text){_context5.next=5;break;}return _context5.abrupt("return",[trText,true]);case 5:from=(_OPT_LANGS_SPECIAL$tr=OPT_LANGS_SPECIAL[translator].get(fromLang))!==null&&_OPT_LANGS_SPECIAL$tr!==void 0?_OPT_LANGS_SPECIAL$tr:OPT_LANGS_SPECIAL[translator].get("auto");to=OPT_LANGS_SPECIAL[translator].get(toLang);if(to){_context5.next=10;break;}console.log("[trans] target lang: ".concat(toLang," not support"));return _context5.abrupt("return",[trText,isSame]);case 10:// 版本号一/二位升级,旧缓存失效 +_process$env$REACT_AP="1.8.4".split("."),_process$env$REACT_AP2=(0,slicedToArray/* default */.Z)(_process$env$REACT_AP,2),v1=_process$env$REACT_AP2[0],v2=_process$env$REACT_AP2[1];cacheOpts={translator:translator,text:text,fromLang:fromLang,toLang:toLang,version:[v1,v2].join(".")};transOpts={translator:translator,text:text,from:from,to:to};_context5.next=15;return fetch_fetchPolyfill("".concat(URL_CACHE_TRAN,"?").concat(query_string.stringify(cacheOpts)),{useCache:useCache,usePool:usePool,transOpts:transOpts,apiSetting:apiSetting});case 15:res=_context5.sent;_context5.t0=translator;_context5.next=_context5.t0===OPT_TRANS_GOOGLE?19:_context5.t0===OPT_TRANS_MICROSOFT?22:_context5.t0===OPT_TRANS_DEEPL?25:_context5.t0===OPT_TRANS_DEEPLFREE?28:_context5.t0===OPT_TRANS_DEEPLX?31:_context5.t0===OPT_TRANS_BAIDU?34:_context5.t0===OPT_TRANS_TENCENT?36:_context5.t0===OPT_TRANS_OPENAI?39:_context5.t0===OPT_TRANS_GEMINI?42:_context5.t0===OPT_TRANS_CLOUDFLAREAI?45:_context5.t0===OPT_TRANS_CUSTOMIZE?48:51;break;case 19:trText=res.sentences.map(function(item){return item.trans;}).join(" ");isSame=to===res.src;return _context5.abrupt("break",51);case 22:trText=res.map(function(item){return item.translations.map(function(item){return item.text;}).join(" ");}).join(" ");isSame=text===trText;return _context5.abrupt("break",51);case 25:trText=res.translations.map(function(item){return item.text;}).join(" ");isSame=to===res.translations[0].detected_source_language;return _context5.abrupt("break",51);case 28:trText=(_res$result=res.result)===null||_res$result===void 0?void 0:_res$result.texts.map(function(item){return item.text;}).join(" ");isSame=to===((_res$result2=res.result)===null||_res$result2===void 0?void 0:_res$result2.lang);return _context5.abrupt("break",51);case 31:trText=res.data;isSame=to===res.source_lang;return _context5.abrupt("break",51);case 34:// trText = res.trans_result?.data.map((item) => item.dst).join(" "); // isSame = res.trans_result?.to === res.trans_result?.from; -if(res.type===1){trText=Object.keys(JSON.parse(res.result).content[0].mean[0].cont)[0];isSame=to===res.from;}else if(res.type===2){trText=res.data.map(function(item){return item.dst;}).join(" ");isSame=to===res.from;}return _context4.abrupt("break",51);case 36:trText=res.auto_translation;isSame=text===trText;return _context4.abrupt("break",51);case 39:trText=res===null||res===void 0?void 0:(_res$choices=res.choices)===null||_res$choices===void 0?void 0:_res$choices.map(function(item){return item.message.content;}).join(" ");isSame=text===trText;return _context4.abrupt("break",51);case 42:trText=res===null||res===void 0?void 0:(_res$candidates=res.candidates)===null||_res$candidates===void 0?void 0:_res$candidates.map(function(item){var _item$content;return(_item$content=item.content)===null||_item$content===void 0?void 0:_item$content.parts.map(function(item){return item.text;}).join(" ");}).join(" ");isSame=text===trText;return _context4.abrupt("break",51);case 45:trText=res===null||res===void 0?void 0:(_res$result3=res.result)===null||_res$result3===void 0?void 0:_res$result3.translated_text;isSame=text===trText;return _context4.abrupt("break",51);case 48:trText=res.text;isSame=to===res.from;return _context4.abrupt("break",51);case 51:return _context4.abrupt("return",[trText,isSame,res]);case 52:case"end":return _context4.stop();}},_callee4);}));return function apiTranslate(_x6){return _ref5.apply(this,arguments);};}(); +if(res.type===1){trText=Object.keys(JSON.parse(res.result).content[0].mean[0].cont)[0];isSame=to===res.from;}else if(res.type===2){trText=res.data.map(function(item){return item.dst;}).join(" ");isSame=to===res.from;}return _context5.abrupt("break",51);case 36:trText=res.auto_translation;isSame=text===trText;return _context5.abrupt("break",51);case 39:trText=res===null||res===void 0?void 0:(_res$choices=res.choices)===null||_res$choices===void 0?void 0:_res$choices.map(function(item){return item.message.content;}).join(" ");isSame=text===trText;return _context5.abrupt("break",51);case 42:trText=res===null||res===void 0?void 0:(_res$candidates=res.candidates)===null||_res$candidates===void 0?void 0:_res$candidates.map(function(item){var _item$content;return(_item$content=item.content)===null||_item$content===void 0?void 0:_item$content.parts.map(function(item){return item.text;}).join(" ");}).join(" ");isSame=text===trText;return _context5.abrupt("break",51);case 45:trText=res===null||res===void 0?void 0:(_res$result3=res.result)===null||_res$result3===void 0?void 0:_res$result3.translated_text;isSame=text===trText;return _context5.abrupt("break",51);case 48:trText=res.text;isSame=to===res.from;return _context5.abrupt("break",51);case 51:return _context5.abrupt("return",[trText,isSame,res]);case 52:case"end":return _context5.stop();}},_callee5);}));return function apiTranslate(_x7){return _ref6.apply(this,arguments);};}(); ;// CONCATENATED MODULE: ./node_modules/.pnpm/webdav@5.3.0/node_modules/webdav/dist/web/index.js /*! For license information please see index.js.LICENSE.txt */ var t = { @@ -23278,7 +23360,7 @@ var web_n = {}; return t.length === e && "." !== t && ".." !== t; }; }, - te = "object" === ("undefined" == typeof process ? "undefined" : Nt(process)) && process ? "object" === Nt(({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.3","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_WEBFIXURL":"https://fishjar.github.io/kiss-rules/kiss-webfix.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"})) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.3","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_WEBFIXURL":"https://fishjar.github.io/kiss-rules/kiss-webfix.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"}) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.3","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_WEBFIXURL":"https://fishjar.github.io/kiss-rules/kiss-webfix.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"}).__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix"; + te = "object" === ("undefined" == typeof process ? "undefined" : Nt(process)) && process ? "object" === Nt(({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.4","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"})) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.4","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"}) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.4","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"}).__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix"; It.sep = "win32" === te ? "\\" : "/"; var ee = Symbol("globstar **"); It.GLOBSTAR = ee; @@ -25059,23 +25141,20 @@ var o = web_n.Gr, c().patch("request",function(opts){return fetchApi({input:opts.url,init:{method:opts.method,headers:opts.headers,body:opts.data}});});var syncByWebdav=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(data,_ref){var syncUrl,syncUser,syncKey,client,pathname,filename,isExist,cont,webData;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:syncUrl=_ref.syncUrl,syncUser=_ref.syncUser,syncKey=_ref.syncKey;client=u(syncUrl,{username:syncUser,password:syncKey});pathname="/".concat(APP_LCNAME);filename="/".concat(APP_LCNAME,"/").concat(data.key);_context.next=6;return client.exists(pathname);case 6:_context.t0=_context.sent;if(!(_context.t0===false)){_context.next=10;break;}_context.next=10;return client.createDirectory(pathname);case 10:_context.next=12;return client.exists(filename);case 12:isExist=_context.sent;if(!isExist){_context.next=20;break;}_context.next=16;return client.getFileContents(filename,{format:"text"});case 16:cont=_context.sent;webData=JSON.parse(cont);if(!(webData.updateAt>=data.updateAt)){_context.next=20;break;}return _context.abrupt("return",webData);case 20:_context.next=22;return client.putFileContents(filename,JSON.stringify(data,null,2));case 22:return _context.abrupt("return",data);case 23:case"end":return _context.stop();}},_callee);}));return function syncByWebdav(_x,_x2){return _ref2.apply(this,arguments);};}();var syncByWorker=/*#__PURE__*/function(){var _ref4=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(data,_ref3){var syncUrl,syncKey;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:syncUrl=_ref3.syncUrl,syncKey=_ref3.syncKey;syncUrl=removeEndchar(syncUrl,"/");_context2.next=4;return apiSyncData("".concat(syncUrl,"/sync"),syncKey,data);case 4:return _context2.abrupt("return",_context2.sent);case 5:case"end":return _context2.stop();}},_callee2);}));return function syncByWorker(_x3,_x4){return _ref4.apply(this,arguments);};}();var syncData=/*#__PURE__*/function(){var _ref5=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(key,valueFn){var _yield$getSyncWithDef,syncType,syncUrl,syncUser,syncKey,_yield$getSyncWithDef2,syncMeta,_ref6,_ref6$updateAt,updateAt,_ref6$syncAt,syncAt,value,data,args,res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return getSyncWithDefault();case 2:_yield$getSyncWithDef=_context3.sent;syncType=_yield$getSyncWithDef.syncType;syncUrl=_yield$getSyncWithDef.syncUrl;syncUser=_yield$getSyncWithDef.syncUser;syncKey=_yield$getSyncWithDef.syncKey;_yield$getSyncWithDef2=_yield$getSyncWithDef.syncMeta;syncMeta=_yield$getSyncWithDef2===void 0?{}:_yield$getSyncWithDef2;if(!(!syncUrl||!syncKey||syncType===OPT_SYNCTYPE_WEBDAV&&!syncUser)){_context3.next=11;break;}return _context3.abrupt("return");case 11:_ref6=syncMeta[key]||{},_ref6$updateAt=_ref6.updateAt,updateAt=_ref6$updateAt===void 0?0:_ref6$updateAt,_ref6$syncAt=_ref6.syncAt,syncAt=_ref6$syncAt===void 0?0:_ref6$syncAt;syncAt===0&&(updateAt=0);_context3.next=15;return valueFn();case 15:value=_context3.sent;data={key:key,value:JSON.stringify(value),updateAt:updateAt};args={syncUrl:syncUrl,syncUser:syncUser,syncKey:syncKey};if(!(syncType===OPT_SYNCTYPE_WEBDAV)){_context3.next=24;break;}_context3.next=21;return syncByWebdav(data,args);case 21:_context3.t0=_context3.sent;_context3.next=27;break;case 24:_context3.next=26;return syncByWorker(data,args);case 26:_context3.t0=_context3.sent;case 27:res=_context3.t0;syncMeta[key]={updateAt:res.updateAt,syncAt:Date.now()};_context3.next=31;return updateSync({syncMeta:syncMeta});case 31:return _context3.abrupt("return",{value:JSON.parse(res.value),isNew:res.updateAt>updateAt});case 32:case"end":return _context3.stop();}},_callee3);}));return function syncData(_x5,_x6){return _ref5.apply(this,arguments);};}();/** * 同步设置 * @returns - */var syncSetting=/*#__PURE__*/function(){var _ref7=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.next=2;return syncData(KV_SETTING_KEY,getSettingWithDefault);case 2:res=_context4.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context4.next=6;break;}_context4.next=6;return setSetting(res.value);case 6:case"end":return _context4.stop();}},_callee4);}));return function syncSetting(){return _ref7.apply(this,arguments);};}();var trySyncSetting=/*#__PURE__*/function(){var _ref8=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;_context5.next=3;return syncSetting();case 3:_context5.next=8;break;case 5:_context5.prev=5;_context5.t0=_context5["catch"](0);console.log("[sync setting]",_context5.t0);case 8:case"end":return _context5.stop();}},_callee5,null,[[0,5]]);}));return function trySyncSetting(){return _ref8.apply(this,arguments);};}();/** + */var syncSetting=/*#__PURE__*/function(){var _ref7=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.next=2;return syncData(KV_SETTING_KEY,getSettingWithDefault);case 2:res=_context4.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context4.next=6;break;}_context4.next=6;return setSetting(res.value);case 6:case"end":return _context4.stop();}},_callee4);}));return function syncSetting(){return _ref7.apply(this,arguments);};}();var trySyncSetting=/*#__PURE__*/function(){var _ref8=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;_context5.next=3;return syncSetting();case 3:_context5.next=8;break;case 5:_context5.prev=5;_context5.t0=_context5["catch"](0);log_kissLog(_context5.t0,"sync setting");case 8:case"end":return _context5.stop();}},_callee5,null,[[0,5]]);}));return function trySyncSetting(){return _ref8.apply(this,arguments);};}();/** * 同步规则 * @returns - */var syncRules=/*#__PURE__*/function(){var _ref9=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:_context6.next=2;return syncData(KV_RULES_KEY,getRulesWithDefault);case 2:res=_context6.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context6.next=6;break;}_context6.next=6;return setRules(res.value);case 6:case"end":return _context6.stop();}},_callee6);}));return function syncRules(){return _ref9.apply(this,arguments);};}();var trySyncRules=/*#__PURE__*/function(){var _ref10=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee7(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee7$(_context7){while(1)switch(_context7.prev=_context7.next){case 0:_context7.prev=0;_context7.next=3;return syncRules();case 3:_context7.next=8;break;case 5:_context7.prev=5;_context7.t0=_context7["catch"](0);console.log("[sync user rules]",_context7.t0);case 8:case"end":return _context7.stop();}},_callee7,null,[[0,5]]);}));return function trySyncRules(){return _ref10.apply(this,arguments);};}();/** - * 同步修复规则 - * @returns - */var syncWebfixRules=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref11=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee8(){var res;return _regeneratorRuntime().wrap(function _callee8$(_context8){while(1)switch(_context8.prev=_context8.next){case 0:_context8.next=2;return syncData(KV_WFRULES_KEY,getWebfixRulesWithDefault);case 2:res=_context8.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context8.next=6;break;}_context8.next=6;return setWebfixRules(res.value);case 6:case"end":return _context8.stop();}},_callee8);}));return function syncWebfixRules(){return _ref11.apply(this,arguments);};}()));var trySyncWebfixRules=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref12=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee9(){return _regeneratorRuntime().wrap(function _callee9$(_context9){while(1)switch(_context9.prev=_context9.next){case 0:_context9.prev=0;_context9.next=3;return syncWebfixRules();case 3:_context9.next=8;break;case 5:_context9.prev=5;_context9.t0=_context9["catch"](0);console.log("[sync user webfix rules]",_context9.t0);case 8:case"end":return _context9.stop();}},_callee9,null,[[0,5]]);}));return function trySyncWebfixRules(){return _ref12.apply(this,arguments);};}()));/** + */var syncRules=/*#__PURE__*/function(){var _ref9=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:_context6.next=2;return syncData(KV_RULES_KEY,getRulesWithDefault);case 2:res=_context6.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context6.next=6;break;}_context6.next=6;return setRules(res.value);case 6:case"end":return _context6.stop();}},_callee6);}));return function syncRules(){return _ref9.apply(this,arguments);};}();var trySyncRules=/*#__PURE__*/function(){var _ref10=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee7(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee7$(_context7){while(1)switch(_context7.prev=_context7.next){case 0:_context7.prev=0;_context7.next=3;return syncRules();case 3:_context7.next=8;break;case 5:_context7.prev=5;_context7.t0=_context7["catch"](0);log_kissLog(_context7.t0,"sync user rules");case 8:case"end":return _context7.stop();}},_callee7,null,[[0,5]]);}));return function trySyncRules(){return _ref10.apply(this,arguments);};}();/** * 同步词汇 * @returns - */var syncWords=/*#__PURE__*/function(){var _ref13=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee10(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee10$(_context10){while(1)switch(_context10.prev=_context10.next){case 0:_context10.next=2;return syncData(KV_WORDS_KEY,getWordsWithDefault);case 2:res=_context10.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context10.next=6;break;}_context10.next=6;return setWords(res.value);case 6:case"end":return _context10.stop();}},_callee10);}));return function syncWords(){return _ref13.apply(this,arguments);};}();var trySyncWords=/*#__PURE__*/function(){var _ref14=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee11(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee11$(_context11){while(1)switch(_context11.prev=_context11.next){case 0:_context11.prev=0;_context11.next=3;return syncWords();case 3:_context11.next=8;break;case 5:_context11.prev=5;_context11.t0=_context11["catch"](0);console.log("[sync fav words]",_context11.t0);case 8:case"end":return _context11.stop();}},_callee11,null,[[0,5]]);}));return function trySyncWords(){return _ref14.apply(this,arguments);};}();/** + */var syncWords=/*#__PURE__*/function(){var _ref11=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee8(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee8$(_context8){while(1)switch(_context8.prev=_context8.next){case 0:_context8.next=2;return syncData(KV_WORDS_KEY,getWordsWithDefault);case 2:res=_context8.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context8.next=6;break;}_context8.next=6;return setWords(res.value);case 6:case"end":return _context8.stop();}},_callee8);}));return function syncWords(){return _ref11.apply(this,arguments);};}();var trySyncWords=/*#__PURE__*/function(){var _ref12=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee9(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee9$(_context9){while(1)switch(_context9.prev=_context9.next){case 0:_context9.prev=0;_context9.next=3;return syncWords();case 3:_context9.next=8;break;case 5:_context9.prev=5;_context9.t0=_context9["catch"](0);log_kissLog(_context9.t0,"sync fav words");case 8:case"end":return _context9.stop();}},_callee9,null,[[0,5]]);}));return function trySyncWords(){return _ref12.apply(this,arguments);};}();/** * 同步分享规则 * @param {*} param0 * @returns - */var syncShareRules=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref16=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee12(_ref15){var rules,syncUrl,syncKey,data,args,psk,shareUrl;return _regeneratorRuntime().wrap(function _callee12$(_context12){while(1)switch(_context12.prev=_context12.next){case 0:rules=_ref15.rules,syncUrl=_ref15.syncUrl,syncKey=_ref15.syncKey;data={key:KV_RULES_SHARE_KEY,value:JSON.stringify(rules,null,2),updateAt:Date.now()};args={syncUrl:syncUrl,syncKey:syncKey};_context12.next=5;return syncByWorker(data,args);case 5:_context12.next=7;return sha256(syncKey,KV_SALT_SHARE);case 7:psk=_context12.sent;shareUrl="".concat(syncUrl,"/rules?psk=").concat(psk);return _context12.abrupt("return",shareUrl);case 10:case"end":return _context12.stop();}},_callee12);}));return function syncShareRules(_x7){return _ref16.apply(this,arguments);};}()));/** + */var syncShareRules=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref14=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee10(_ref13){var rules,syncUrl,syncKey,data,args,psk,shareUrl;return _regeneratorRuntime().wrap(function _callee10$(_context10){while(1)switch(_context10.prev=_context10.next){case 0:rules=_ref13.rules,syncUrl=_ref13.syncUrl,syncKey=_ref13.syncKey;data={key:KV_RULES_SHARE_KEY,value:JSON.stringify(rules,null,2),updateAt:Date.now()};args={syncUrl:syncUrl,syncKey:syncKey};_context10.next=5;return syncByWorker(data,args);case 5:_context10.next=7;return sha256(syncKey,KV_SALT_SHARE);case 7:psk=_context10.sent;shareUrl="".concat(syncUrl,"/rules?psk=").concat(psk);return _context10.abrupt("return",shareUrl);case 10:case"end":return _context10.stop();}},_callee10);}));return function syncShareRules(_x7){return _ref14.apply(this,arguments);};}()));/** * 同步个人设置和规则 * @returns - */var syncSettingAndRules=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref17=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee13(){return _regeneratorRuntime().wrap(function _callee13$(_context13){while(1)switch(_context13.prev=_context13.next){case 0:_context13.next=2;return syncSetting();case 2:_context13.next=4;return syncRules();case 4:_context13.next=6;return syncWebfixRules();case 6:_context13.next=8;return syncWords();case 8:case"end":return _context13.stop();}},_callee13);}));return function syncSettingAndRules(){return _ref17.apply(this,arguments);};}()));var trySyncSettingAndRules=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref18=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee14(){return _regeneratorRuntime().wrap(function _callee14$(_context14){while(1)switch(_context14.prev=_context14.next){case 0:_context14.next=2;return trySyncSetting();case 2:_context14.next=4;return trySyncRules();case 4:_context14.next=6;return trySyncWebfixRules();case 6:_context14.next=8;return trySyncWords();case 8:case"end":return _context14.stop();}},_callee14);}));return function trySyncSettingAndRules(){return _ref18.apply(this,arguments);};}())); + */var syncSettingAndRules=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref15=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee11(){return _regeneratorRuntime().wrap(function _callee11$(_context11){while(1)switch(_context11.prev=_context11.next){case 0:_context11.next=2;return syncSetting();case 2:_context11.next=4;return syncRules();case 4:_context11.next=6;return syncWords();case 6:case"end":return _context11.stop();}},_callee11);}));return function syncSettingAndRules(){return _ref15.apply(this,arguments);};}()));var trySyncSettingAndRules=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref16=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee12(){return _regeneratorRuntime().wrap(function _callee12$(_context12){while(1)switch(_context12.prev=_context12.next){case 0:_context12.next=2;return trySyncSetting();case 2:_context12.next=4;return trySyncRules();case 4:_context12.next=6;return trySyncWords();case 6:case"end":return _context12.stop();}},_callee12);}));return function trySyncSettingAndRules(){return _ref16.apply(this,arguments);};}())); ;// CONCATENATED MODULE: ./src/hooks/Sync.js /** * sync hook @@ -33360,54 +33439,9 @@ var DarkMode = __webpack_require__(2675); ;// CONCATENATED MODULE: ./src/views/Options/DarkModeButton.js function DarkModeButton(){var _useDarkMode=useDarkMode(),darkMode=_useDarkMode.darkMode,toggleDarkMode=_useDarkMode.toggleDarkMode;return/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:toggleDarkMode,color:"inherit",children:darkMode?/*#__PURE__*/(0,jsx_runtime.jsx)(LightMode/* default */.Z,{}):/*#__PURE__*/(0,jsx_runtime.jsx)(DarkMode/* default */.Z,{})});} ;// CONCATENATED MODULE: ./src/views/Popup/Header.js -function Header(_ref){var setShowPopup=_ref.setShowPopup;var handleHomepage=function handleHomepage(){window.open("https://github.com/fishjar/kiss-translator","_blank");};return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"flex-start",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:handleHomepage,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Home/* default */.Z,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{component:"div",sx:{userSelect:"none",WebkitUserSelect:"none",fontWeight:"bold"},children:"".concat("KISS Translator"," v").concat("1.8.3")})]}),setShowPopup?/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:function onClick(){setShowPopup(false);},children:/*#__PURE__*/(0,jsx_runtime.jsx)(Close/* default */.Z,{})}):/*#__PURE__*/(0,jsx_runtime.jsx)(DarkModeButton,{})]});} +function Header(_ref){var setShowPopup=_ref.setShowPopup;var handleHomepage=function handleHomepage(){window.open("https://github.com/fishjar/kiss-translator","_blank");};return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"flex-start",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:handleHomepage,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Home/* default */.Z,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{component:"div",sx:{userSelect:"none",WebkitUserSelect:"none",fontWeight:"bold"},children:"".concat("KISS Translator"," v").concat("1.8.4")})]}),setShowPopup?/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:function onClick(){setShowPopup(false);},children:/*#__PURE__*/(0,jsx_runtime.jsx)(Close/* default */.Z,{})}):/*#__PURE__*/(0,jsx_runtime.jsx)(DarkModeButton,{})]});} ;// CONCATENATED MODULE: ./src/libs/iframe.js var isIframe=window.self!==window.top;var sendIframeMsg=function sendIframeMsg(action,args){document.querySelectorAll("iframe").forEach(function(iframe){iframe.contentWindow.postMessage({action:action,args:args},"*");});};var sendParentMsg=function sendParentMsg(action,args){window.parent.postMessage({action:action,args:args},"*");}; -;// CONCATENATED MODULE: ./src/libs/webfix.js -var _fixerMap;/** - * 修复程序类型 - */var FIXER_BR="br";var FIXER_BN="bn";var FIXER_BR_DIV="brToDiv";var FIXER_BN_DIV="bnToDiv";var FIXER_FONTSIZE="fontSize";var FIXER_ALL=[FIXER_BR,FIXER_BN,FIXER_BR_DIV,FIXER_BN_DIV// FIXER_FONTSIZE, -];/** - * 需要修复的站点列表 - * - pattern 匹配网址 - * - selector 需要修复的选择器 - * - rootSelector 需要监听的选择器,可留空 - * - fixer 修复函数,可针对不同网址,选用不同修复函数 - */var DEFAULT_SITES=[{pattern:"www.phoronix.com",selector:".content",rootSelector:"",fixer:FIXER_BR},{pattern:"t.me/s/",selector:".tgme_widget_message_text",rootSelector:".tgme_channel_history",fixer:FIXER_BR},{pattern:"baidu.com",selector:"html",rootSelector:"",fixer:FIXER_FONTSIZE},{pattern:"chat.openai.com",selector:"div[data-testid^=conversation-turn] .items-start > div",rootSelector:"",fixer:FIXER_BN}];/** - * 修复过的标记 - */var fixedSign="kissfixed";/** - * 采用 `br` 换行网站的修复函数 - * 目标是将 `br` 替换成 `p` - * @param {*} node - * @returns - */function brFixer(node){var tag=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"p";if(node.hasAttribute(fixedSign)){return;}node.setAttribute(fixedSign,"true");var gapTags=["BR","WBR"];var newlineTags=["DIV","UL","OL","LI","H1","H2","H3","H4","H5","H6","P","HR","PRE","TABLE","BLOCKQUOTE"];var html="";node.childNodes.forEach(function(child,index){if(index===0){html+="<".concat(tag," class=\"kiss-p\">");}if(gapTags.indexOf(child.nodeName)!==-1){html+="<").concat(tag," class=\"kiss-p\">");}else if(newlineTags.indexOf(child.nodeName)!==-1){html+="").concat(child.outerHTML,"<").concat(tag," class=\"kiss-p\">");}else if(child.outerHTML){html+=child.outerHTML;}else if(child.textContent){html+=child.textContent;}if(index===node.childNodes.length-1){html+="");}});node.innerHTML=html;}function brDivFixer(node){return brFixer(node,"div");}/** - * 目标是将 `\n` 替换成 `p` - * @param {*} node - * @returns - */function bnFixer(node){var tag=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"p";if(node.hasAttribute(fixedSign)){return;}node.setAttribute(fixedSign,"true");node.innerHTML=node.innerHTML.split("\n").map(function(item){return"<".concat(tag," class=\"kiss-p\">").concat(item||" ","");}).join("");}function bnDivFixer(node){return bnFixer(node,"div");}/** - * 修复字体大小问题,如 baidu.com - * @param {*} node - */function fontSizeFixer(node){node.style.cssText+="font-size:1em;";}/** - * 修复程序映射 - */var fixerMap=(_fixerMap={},(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BR,brFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BN,bnFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BR_DIV,brDivFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BN_DIV,bnDivFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_FONTSIZE,fontSizeFixer),_fixerMap);/** - * 查找、监听节点,并执行修复函数 - * @param {*} selector - * @param {*} fixer - * @param {*} rootSelector - */function run(selector,fixer,rootSelector){var mutaObserver=new MutationObserver(function(mutations){mutations.forEach(function(mutation){mutation.addedNodes.forEach(function(addNode){if(addNode&&addNode.querySelectorAll){addNode.querySelectorAll(selector).forEach(function(node){fixer(node);});}});});});var rootNodes=[document];if(rootSelector){rootNodes=document.querySelectorAll(rootSelector);}rootNodes.forEach(function(rootNode){rootNode.querySelectorAll(selector).forEach(function(node){fixer(node);});mutaObserver.observe(rootNode,{childList:true,subtree:true});});}/** - * 同步远程数据 - * @param {*} url - * @returns - */var syncWebfix=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(url){var sites;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.next=2;return apiFetch(url);case 2:sites=_context.sent;_context.next=5;return setWebfix(url,sites);case 5:return _context.abrupt("return",sites);case 6:case"end":return _context.stop();}},_callee);}));return function syncWebfix(_x){return _ref.apply(this,arguments);};}();/** - * 从缓存或远程加载修复站点 - * @param {*} url - * @returns - */var loadOrFetchWebfix=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(url){var sites;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;_context2.next=3;return getWebfix(url);case 3:sites=_context2.sent;if(!(sites!==null&&sites!==void 0&&sites.length)){_context2.next=6;break;}return _context2.abrupt("return",sites);case 6:return _context2.abrupt("return",syncWebfix(url));case 9:_context2.prev=9;_context2.t0=_context2["catch"](0);console.log("[load webfix]",_context2.t0.message);return _context2.abrupt("return",DEFAULT_SITES);case 13:case"end":return _context2.stop();}},_callee2,null,[[0,9]]);}));return function loadOrFetchWebfix(_x2){return _ref2.apply(this,arguments);};}();/** - * 执行fixer - * @param {*} param0 - */function runFixer(_x3){return _runFixer.apply(this,arguments);}/** - * 匹配fixer配置 - */function _runFixer(){_runFixer=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(_ref3){var selector,fixer,rootSelector;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:selector=_ref3.selector,fixer=_ref3.fixer,rootSelector=_ref3.rootSelector;try{run(selector,fixerMap[fixer],rootSelector);}catch(err){console.error("[kiss-webfix run]: ".concat(err.message));}case 2:case"end":return _context3.stop();}},_callee3);}));return _runFixer.apply(this,arguments);}function matchFixer(_x4,_x5){return _matchFixer.apply(this,arguments);}function _matchFixer(){_matchFixer=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(href,_ref4){var injectWebfix,userSites,subSites,sites,i,site;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:injectWebfix=_ref4.injectWebfix;if(injectWebfix){_context4.next=3;break;}return _context4.abrupt("return",null);case 3:_context4.prev=3;_context4.next=6;return storage_getWebfixRulesWithDefault();case 6:userSites=_context4.sent;_context4.next=9;return loadOrFetchWebfix("https://fishjar.github.io/kiss-rules/kiss-webfix.json");case 9:subSites=_context4.sent;sites=[].concat((0,toConsumableArray/* default */.Z)(userSites),(0,toConsumableArray/* default */.Z)(subSites));i=0;case 12:if(!(iinterval)){_context4.next=15;break;}_context4.next=11;return syncAllSubRules(subrulesList);case 11:_context4.next=13;return updateSync({subRulesSyncAt:now});case 13:_context4.next=15;return syncWebfix("https://fishjar.github.io/kiss-rules/kiss-webfix.json");case 15:_context4.next=20;break;case 17:_context4.prev=17;_context4.t0=_context4["catch"](1);console.log("[try sync all subrules]",_context4.t0);case 20:case"end":return _context4.stop();}},_callee4,null,[[1,17]]);}));return function trySyncAllSubRules(_x4){return _ref6.apply(this,arguments);};}();/** +if(!(now-subRulesSyncAt>interval)){_context4.next=13;break;}_context4.next=11;return syncAllSubRules(subrulesList);case 11:_context4.next=13;return updateSync({subRulesSyncAt:now});case 13:_context4.next=18;break;case 15:_context4.prev=15;_context4.t0=_context4["catch"](1);log_kissLog(_context4.t0,"try sync all subrules");case 18:case"end":return _context4.stop();}},_callee4,null,[[1,15]]);}));return function trySyncAllSubRules(_x4){return _ref6.apply(this,arguments);};}();/** * 从缓存或远程加载订阅规则 * @param {*} url * @returns @@ -33436,24 +33470,24 @@ if(!(now-subRulesSyncAt>interval)){_context4.next=15;break;}_context4.next=11;re * @param {*} rules * @param {string} href * @returns - */var matchRule=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(href,_ref){var _rule$selector,_rule$keepSelector,_rule$terms;var _ref$injectRules,injectRules,_ref$subrulesList,subrulesList,_ref$owSubrule,owSubrule,rules,selectedSub,mixRule,subRules,rule,globalRule,_rule$bgColor,_rule$textDiyStyle;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_ref$injectRules=_ref.injectRules,injectRules=_ref$injectRules===void 0?true:_ref$injectRules,_ref$subrulesList=_ref.subrulesList,subrulesList=_ref$subrulesList===void 0?DEFAULT_SUBRULES_LIST:_ref$subrulesList,_ref$owSubrule=_ref.owSubrule,owSubrule=_ref$owSubrule===void 0?DEFAULT_OW_RULE:_ref$owSubrule;_context.next=3;return getRulesWithDefault();case 3:rules=_context.sent;if(!injectRules){_context.next=20;break;}_context.prev=5;selectedSub=subrulesList.find(function(item){return item.selected;});if(!(selectedSub!==null&&selectedSub!==void 0&&selectedSub.url)){_context.next=15;break;}mixRule={};Object.entries(owSubrule).filter(function(_ref3){var _ref4=(0,slicedToArray/* default */.Z)(_ref3,2),key=_ref4[0],val=_ref4[1];if(owSubrule.textStyle===REMAIN_KEY&&(key==="bgColor"||key==="textDiyStyle")){return false;}return val!==REMAIN_KEY;}).forEach(function(_ref5){var _ref6=(0,slicedToArray/* default */.Z)(_ref5,2),key=_ref6[0],val=_ref6[1];mixRule[key]=val;});_context.next=12;return loadOrFetchSubRules(selectedSub.url);case 12:subRules=_context.sent;subRules=subRules.map(function(item){return _objectSpread2(_objectSpread2({},item),mixRule);});rules.splice.apply(rules,[-1,0].concat((0,toConsumableArray/* default */.Z)(subRules)));case 15:_context.next=20;break;case 17:_context.prev=17;_context.t0=_context["catch"](5);console.log("[load injectRules]",_context.t0);case 20:rule=rules.find(function(r){return r.pattern.split(",").some(function(p){return isMatch(href,p.trim());});});globalRule=rules.find(function(r){return r.pattern===GLOBAL_KEY;})||GLOBLA_RULE;if(rule){_context.next=24;break;}return _context.abrupt("return",globalRule);case 24:rule.selector=((_rule$selector=rule.selector)===null||_rule$selector===void 0?void 0:_rule$selector.trim())||globalRule.selector;rule.keepSelector=((_rule$keepSelector=rule.keepSelector)===null||_rule$keepSelector===void 0?void 0:_rule$keepSelector.trim())||globalRule.keepSelector;rule.terms=((_rule$terms=rule.terms)===null||_rule$terms===void 0?void 0:_rule$terms.trim())||globalRule.terms;if(rule.textStyle===GLOBAL_KEY){rule.textStyle=globalRule.textStyle;rule.bgColor=globalRule.bgColor;rule.textDiyStyle=globalRule.textDiyStyle;}else{rule.bgColor=((_rule$bgColor=rule.bgColor)===null||_rule$bgColor===void 0?void 0:_rule$bgColor.trim())||globalRule.bgColor;rule.textDiyStyle=((_rule$textDiyStyle=rule.textDiyStyle)===null||_rule$textDiyStyle===void 0?void 0:_rule$textDiyStyle.trim())||globalRule.textDiyStyle;}["translator","fromLang","toLang","transOpen"].forEach(function(key){if(rule[key]===GLOBAL_KEY){rule[key]=globalRule[key];}});return _context.abrupt("return",rule);case 30:case"end":return _context.stop();}},_callee,null,[[5,17]]);}));return function matchRule(_x,_x2){return _ref2.apply(this,arguments);};}();/** + */var matchRule=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(href,_ref){var injectRules,subrulesList,owSubrule,rules,selectedSub,mixRule,subRules,rule,globalRule,_rule$bgColor,_rule$textDiyStyle;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:injectRules=_ref.injectRules,subrulesList=_ref.subrulesList,owSubrule=_ref.owSubrule;_context.next=3;return getRulesWithDefault();case 3:rules=_context.sent;if(!injectRules){_context.next=20;break;}_context.prev=5;selectedSub=subrulesList.find(function(item){return item.selected;});if(!(selectedSub!==null&&selectedSub!==void 0&&selectedSub.url)){_context.next=15;break;}mixRule={};Object.entries(owSubrule).filter(function(_ref3){var _ref4=(0,slicedToArray/* default */.Z)(_ref3,2),key=_ref4[0],val=_ref4[1];if(owSubrule.textStyle===REMAIN_KEY&&(key==="bgColor"||key==="textDiyStyle")){return false;}return val!==REMAIN_KEY;}).forEach(function(_ref5){var _ref6=(0,slicedToArray/* default */.Z)(_ref5,2),key=_ref6[0],val=_ref6[1];mixRule[key]=val;});_context.next=12;return loadOrFetchSubRules(selectedSub.url);case 12:subRules=_context.sent;subRules=subRules.map(function(item){return _objectSpread2(_objectSpread2({},item),mixRule);});rules.splice.apply(rules,[-1,0].concat((0,toConsumableArray/* default */.Z)(subRules)));case 15:_context.next=20;break;case 17:_context.prev=17;_context.t0=_context["catch"](5);log_kissLog(_context.t0,"load injectRules");case 20:rule=rules.find(function(r){return r.pattern.split(",").some(function(p){return isMatch(href,p.trim());});});globalRule=_objectSpread2(_objectSpread2({},GLOBLA_RULE),rules.find(function(r){return r.pattern===GLOBAL_KEY;})||{});if(rule){_context.next=24;break;}return _context.abrupt("return",globalRule);case 24:["selector","keepSelector","terms","selectStyle","parentStyle","injectJs","injectCss","fixerSelector"].forEach(function(key){var _rule$key;if(!((_rule$key=rule[key])!==null&&_rule$key!==void 0&&_rule$key.trim())){rule[key]=globalRule[key];}});["translator","fromLang","toLang","transOpen","transOnly","transTiming","transTag","transTitle","detectRemote","fixerFunc"].forEach(function(key){if(rule[key]===undefined||rule[key]===GLOBAL_KEY){rule[key]=globalRule[key];}});if(!rule.skipLangs||rule.skipLangs.length===0){rule.skipLangs=globalRule.skipLangs;}if(rule.textStyle===GLOBAL_KEY){rule.textStyle=globalRule.textStyle;rule.bgColor=globalRule.bgColor;rule.textDiyStyle=globalRule.textDiyStyle;}else{rule.bgColor=((_rule$bgColor=rule.bgColor)===null||_rule$bgColor===void 0?void 0:_rule$bgColor.trim())||globalRule.bgColor;rule.textDiyStyle=((_rule$textDiyStyle=rule.textDiyStyle)===null||_rule$textDiyStyle===void 0?void 0:_rule$textDiyStyle.trim())||globalRule.textDiyStyle;}return _context.abrupt("return",rule);case 29:case"end":return _context.stop();}},_callee,null,[[5,17]]);}));return function matchRule(_x,_x2){return _ref2.apply(this,arguments);};}();/** * 检查过滤rules * @param {*} rules * @returns - */var checkRules=function checkRules(rules){if(type(rules)==="string"){rules=JSON.parse(rules);}if(type(rules)!=="array"){throw new Error("data error");}var fromLangs=OPT_LANGS_FROM.map(function(item){return item[0];});var toLangs=OPT_LANGS_TO.map(function(item){return item[0];});var patternSet=new Set();rules=rules.filter(function(rule){return type(rule)==="object";}).filter(function(_ref7){var pattern=_ref7.pattern;if(type(pattern)!=="string"||patternSet.has(pattern.trim())){return false;}patternSet.add(pattern.trim());return true;}).map(function(_ref8){var pattern=_ref8.pattern,selector=_ref8.selector,keepSelector=_ref8.keepSelector,terms=_ref8.terms,translator=_ref8.translator,fromLang=_ref8.fromLang,toLang=_ref8.toLang,textStyle=_ref8.textStyle,transOpen=_ref8.transOpen,bgColor=_ref8.bgColor,textDiyStyle=_ref8.textDiyStyle;return{pattern:pattern.trim(),selector:type(selector)==="string"?selector:"",keepSelector:type(keepSelector)==="string"?keepSelector:"",terms:type(terms)==="string"?terms:"",bgColor:type(bgColor)==="string"?bgColor:"",textDiyStyle:type(textDiyStyle)==="string"?textDiyStyle:"",translator:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(OPT_TRANS_ALL)),translator),fromLang:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(fromLangs)),fromLang),toLang:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(toLangs)),toLang),textStyle:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(OPT_STYLE_ALL)),textStyle),transOpen:matchValue([GLOBAL_KEY,"true","false"],transOpen)};});return rules;};/** + */var checkRules=function checkRules(rules){if(type(rules)==="string"){rules=JSON.parse(rules);}if(type(rules)!=="array"){throw new Error("data error");}var fromLangs=OPT_LANGS_FROM.map(function(item){return item[0];});var toLangs=OPT_LANGS_TO.map(function(item){return item[0];});var patternSet=new Set();rules=rules.filter(function(rule){return type(rule)==="object";}).filter(function(_ref7){var pattern=_ref7.pattern;if(type(pattern)!=="string"||patternSet.has(pattern.trim())){return false;}patternSet.add(pattern.trim());return true;}).map(function(_ref8){var pattern=_ref8.pattern,selector=_ref8.selector,keepSelector=_ref8.keepSelector,terms=_ref8.terms,selectStyle=_ref8.selectStyle,parentStyle=_ref8.parentStyle,injectJs=_ref8.injectJs,injectCss=_ref8.injectCss,translator=_ref8.translator,fromLang=_ref8.fromLang,toLang=_ref8.toLang,textStyle=_ref8.textStyle,transOpen=_ref8.transOpen,bgColor=_ref8.bgColor,textDiyStyle=_ref8.textDiyStyle,transOnly=_ref8.transOnly,transTiming=_ref8.transTiming,transTag=_ref8.transTag,transTitle=_ref8.transTitle,detectRemote=_ref8.detectRemote,skipLangs=_ref8.skipLangs,fixerSelector=_ref8.fixerSelector,fixerFunc=_ref8.fixerFunc;return{pattern:pattern.trim(),selector:type(selector)==="string"?selector:"",keepSelector:type(keepSelector)==="string"?keepSelector:"",terms:type(terms)==="string"?terms:"",selectStyle:type(selectStyle)==="string"?selectStyle:"",parentStyle:type(parentStyle)==="string"?parentStyle:"",injectJs:type(injectJs)==="string"?injectJs:"",injectCss:type(injectCss)==="string"?injectCss:"",bgColor:type(bgColor)==="string"?bgColor:"",textDiyStyle:type(textDiyStyle)==="string"?textDiyStyle:"",translator:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(OPT_TRANS_ALL)),translator),fromLang:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(fromLangs)),fromLang),toLang:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(toLangs)),toLang),textStyle:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(OPT_STYLE_ALL)),textStyle),transOpen:matchValue([GLOBAL_KEY,"true","false"],transOpen),transOnly:matchValue([GLOBAL_KEY,"true","false"],transOnly),transTiming:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(OPT_TIMING_ALL)),transTiming),transTag:matchValue([GLOBAL_KEY,"span","font"],transTag),transTitle:matchValue([GLOBAL_KEY,"true","false"],transTitle),detectRemote:matchValue([GLOBAL_KEY,"true","false"],detectRemote),skipLangs:type(skipLangs)==="array"?skipLangs:[],fixerSelector:type(fixerSelector)==="string"?fixerSelector:"",fixerFunc:matchValue([GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(FIXER_ALL)),fixerFunc)};});return rules;};/** * 保存或更新rule * @param {*} newRule */var saveRule=/*#__PURE__*/function(){var _ref9=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(newRule){var rules,rule;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return getRulesWithDefault();case 2:rules=_context2.sent;rule=rules.find(function(item){return isMatch(newRule.pattern,item.pattern);});if(rule&&rule.pattern!==GLOBAL_KEY){Object.assign(rule,_objectSpread2(_objectSpread2({},newRule),{},{pattern:rule.pattern}));}else{rules.unshift(newRule);}_context2.next=7;return setRules(rules);case 7:trySyncRules();case 8:case"end":return _context2.stop();}},_callee2);}));return function saveRule(_x3){return _ref9.apply(this,arguments);};}(); ;// CONCATENATED MODULE: ./src/libs/index.js /** * 清除缓存数据 - */var tryClearCaches=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:try{caches.delete(CACHE_NAME);}catch(err){console.log("[clean caches]",err.message);}case 1:case"end":return _context.stop();}},_callee);}));return function tryClearCaches(){return _ref.apply(this,arguments);};}();/** + */var tryClearCaches=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:try{caches.delete(CACHE_NAME);}catch(err){log_kissLog(err,"clean caches");}case 1:case"end":return _context.stop();}},_callee);}));return function tryClearCaches(){return _ref.apply(this,arguments);};}();/** * 语言识别 * @param {*} q * @returns - */var tryDetectLang=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(q){var useRemote,lang,_browser$i18n,_res$languages,_res$languages$,res,_args2=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:useRemote=_args2.length>1&&_args2[1]!==undefined?_args2[1]:false;lang="";if(!useRemote){_context2.next=12;break;}_context2.prev=3;_context2.next=6;return apiBaiduLangdetect(q);case 6:lang=_context2.sent;_context2.next=12;break;case 9:_context2.prev=9;_context2.t0=_context2["catch"](3);console.log("[detect lang remote]",_context2.t0.message);case 12:if(lang){_context2.next=23;break;}_context2.prev=13;_context2.next=16;return browser===null||browser===void 0?void 0:(_browser$i18n=browser.i18n)===null||_browser$i18n===void 0?void 0:_browser$i18n.detectLanguage(q);case 16:res=_context2.sent;lang=res===null||res===void 0?void 0:(_res$languages=res.languages)===null||_res$languages===void 0?void 0:(_res$languages$=_res$languages[0])===null||_res$languages$===void 0?void 0:_res$languages$.language;_context2.next=23;break;case 20:_context2.prev=20;_context2.t1=_context2["catch"](13);console.log("[detect lang local]",_context2.t1.message);case 23:return _context2.abrupt("return",lang);case 24:case"end":return _context2.stop();}},_callee2,null,[[3,9],[13,20]]);}));return function tryDetectLang(_x){return _ref2.apply(this,arguments);};}(); + */var tryDetectLang=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(q){var useRemote,lang,_browser$i18n,_res$languages,_res$languages$,res,_args2=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:useRemote=_args2.length>1&&_args2[1]!==undefined?_args2[1]:false;lang="";if(!useRemote){_context2.next=12;break;}_context2.prev=3;_context2.next=6;return apiBaiduLangdetect(q);case 6:lang=_context2.sent;_context2.next=12;break;case 9:_context2.prev=9;_context2.t0=_context2["catch"](3);log_kissLog(_context2.t0,"detect lang remote");case 12:if(lang){_context2.next=23;break;}_context2.prev=13;_context2.next=16;return browser===null||browser===void 0?void 0:(_browser$i18n=browser.i18n)===null||_browser$i18n===void 0?void 0:_browser$i18n.detectLanguage(q);case 16:res=_context2.sent;lang=res===null||res===void 0?void 0:(_res$languages=res.languages)===null||_res$languages===void 0?void 0:(_res$languages$=_res$languages[0])===null||_res$languages$===void 0?void 0:_res$languages$.language;_context2.next=23;break;case 20:_context2.prev=20;_context2.t1=_context2["catch"](13);log_kissLog(_context2.t1,"detect lang local");case 23:return _context2.abrupt("return",lang);case 24:case"end":return _context2.stop();}},_callee2,null,[[3,9],[13,20]]);}));return function tryDetectLang(_x){return _ref2.apply(this,arguments);};}(); ;// CONCATENATED MODULE: ./src/views/Popup/index.js -function Popup(_ref){var setShowPopup=_ref.setShowPopup,tran=_ref.translator;var i18n=useI18n();var _useState=(0,react.useState)(tran===null||tran===void 0?void 0:tran.rule),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),rule=_useState2[0],setRule=_useState2[1];var _useState3=(0,react.useState)({}),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),commands=_useState4[0],setCommands=_useState4[1];var handleOpenSetting=function handleOpenSetting(){if(!tran){browser===null||browser===void 0?void 0:browser.runtime.openOptionsPage();}else if(isExt){sendBgMsg(MSG_OPEN_OPTIONS);}else{window.open("https://fishjar.github.io/kiss-translator/options.html","_blank");}setShowPopup&&setShowPopup(false);};var handleTransToggle=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(e){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setRule(_objectSpread2(_objectSpread2({},rule),{},{transOpen:e.target.checked?"true":"false"}));if(tran){_context.next=7;break;}_context.next=5;return sendTabMsg(MSG_TRANS_TOGGLE);case 5:_context.next=9;break;case 7:tran.toggle();sendIframeMsg(MSG_TRANS_TOGGLE);case 9:_context.next=14;break;case 11:_context.prev=11;_context.t0=_context["catch"](0);console.log("[toggle trans]",_context.t0);case 14:case"end":return _context.stop();}},_callee,null,[[0,11]]);}));return function handleTransToggle(_x){return _ref2.apply(this,arguments);};}();var handleChange=/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(e){var _e$target,name,value;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;_e$target=e.target,name=_e$target.name,value=_e$target.value;setRule(function(pre){return _objectSpread2(_objectSpread2({},pre),{},(0,defineProperty/* default */.Z)({},name,value));});if(tran){_context2.next=8;break;}_context2.next=6;return sendTabMsg(MSG_TRANS_PUTRULE,(0,defineProperty/* default */.Z)({},name,value));case 6:_context2.next=10;break;case 8:tran.updateRule((0,defineProperty/* default */.Z)({},name,value));sendIframeMsg(MSG_TRANS_PUTRULE,(0,defineProperty/* default */.Z)({},name,value));case 10:_context2.next=15;break;case 12:_context2.prev=12;_context2.t0=_context2["catch"](0);console.log("[update rule]",_context2.t0);case 15:case"end":return _context2.stop();}},_callee2,null,[[0,12]]);}));return function handleChange(_x2){return _ref3.apply(this,arguments);};}();var handleClearCache=function handleClearCache(){tryClearCaches();};var handleSaveRule=/*#__PURE__*/function(){var _ref4=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){var href,tab,newRule;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.prev=0;href=window.location.href;if(tran){_context3.next=7;break;}_context3.next=5;return getTabInfo();case 5:tab=_context3.sent;href=tab.url;case 7:newRule=_objectSpread2(_objectSpread2({},rule),{},{pattern:href.split("/")[2]});if(isExt&&tran){sendBgMsg(MSG_SAVE_RULE,newRule);}else{saveRule(newRule);}_context3.next=14;break;case 11:_context3.prev=11;_context3.t0=_context3["catch"](0);console.log("[save rule]",_context3.t0);case 14:case"end":return _context3.stop();}},_callee3,null,[[0,11]]);}));return function handleSaveRule(){return _ref4.apply(this,arguments);};}();(0,react.useEffect)(function(){if(tran){return;}asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;_context4.next=3;return sendTabMsg(MSG_TRANS_GETRULE);case 3:res=_context4.sent;if(!res.error){setRule(res.data);}_context4.next=10;break;case 7:_context4.prev=7;_context4.t0=_context4["catch"](0);console.log("[query rule]",_context4.t0);case 10:case"end":return _context4.stop();}},_callee4,null,[[0,7]]);}))();},[tran]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){var _commands,res,shortcuts;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;_commands={};if(!isExt){_context5.next=9;break;}_context5.next=5;return sendBgMsg(MSG_COMMAND_SHORTCUTS);case 5:res=_context5.sent;if(!res.error){res.data.forEach(function(_ref7){var name=_ref7.name,shortcut=_ref7.shortcut;_commands[name]=shortcut;});}_context5.next=11;break;case 9:shortcuts=tran.setting.shortcuts;if(shortcuts){Object.entries(shortcuts).forEach(function(_ref8){var _ref9=(0,slicedToArray/* default */.Z)(_ref8,2),key=_ref9[0],val=_ref9[1];_commands[key]=val.join("+");});}case 11:setCommands(_commands);_context5.next=17;break;case 14:_context5.prev=14;_context5.t0=_context5["catch"](0);console.log("[query cmds]",_context5.t0);case 17:case"end":return _context5.stop();}},_callee5,null,[[0,14]]);}))();},[tran]);if(!rule){return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{minWidth:300,children:[!tran&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Header,{}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{sx:{p:2},spacing:3,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:handleOpenSetting,children:i18n("setting")})})]});}var transOpen=rule.transOpen,translator=rule.translator,fromLang=rule.fromLang,toLang=rule.toLang,textStyle=rule.textStyle;return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{minWidth:300,children:[!tran&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Header,{}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{sx:{p:2},spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:2,children:/*#__PURE__*/(0,jsx_runtime.jsx)(FormControlLabel_FormControlLabel,{control:/*#__PURE__*/(0,jsx_runtime.jsx)(Switch_Switch,{checked:transOpen==="true",onChange:handleTransToggle}),label:commands["toggleTranslate"]?"".concat(i18n("translate_alt"),"(").concat(commands["toggleTranslate"],")"):i18n("translate_alt")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},size:"small",value:translator,name:"translator",label:i18n("translate_service"),onChange:handleChange,children:OPT_TRANS_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:item},item);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},size:"small",value:fromLang,name:"fromLang",label:i18n("from_lang"),onChange:handleChange,children:OPT_LANGS_FROM.map(function(_ref10){var _ref11=(0,slicedToArray/* default */.Z)(_ref10,2),lang=_ref11[0],name=_ref11[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},size:"small",value:toLang,name:"toLang",label:i18n("to_lang"),onChange:handleChange,children:OPT_LANGS_TO.map(function(_ref12){var _ref13=(0,slicedToArray/* default */.Z)(_ref12,2),lang=_ref13[0],name=_ref13[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},size:"small",value:textStyle,name:"textStyle",label:commands["toggleStyle"]?"".concat(i18n("text_style_alt"),"(").concat(commands["toggleStyle"],")"):i18n("text_style_alt"),onChange:handleChange,children:OPT_STYLE_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:i18n(item)},item);})}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:handleSaveRule,children:i18n("save_rule")}),!isExt&&/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:handleClearCache,children:i18n("clear_cache")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:handleOpenSetting,children:i18n("setting")})]})]})]});} +function Popup(_ref){var setShowPopup=_ref.setShowPopup,tran=_ref.translator;var i18n=useI18n();var _useState=(0,react.useState)(tran===null||tran===void 0?void 0:tran.rule),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),rule=_useState2[0],setRule=_useState2[1];var _useState3=(0,react.useState)({}),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),commands=_useState4[0],setCommands=_useState4[1];var handleOpenSetting=function handleOpenSetting(){if(!tran){browser===null||browser===void 0?void 0:browser.runtime.openOptionsPage();}else if(isExt){sendBgMsg(MSG_OPEN_OPTIONS);}else{window.open("https://fishjar.github.io/kiss-translator/options.html","_blank");}setShowPopup&&setShowPopup(false);};var handleTransToggle=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(e){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setRule(_objectSpread2(_objectSpread2({},rule),{},{transOpen:e.target.checked?"true":"false"}));if(tran){_context.next=7;break;}_context.next=5;return sendTabMsg(MSG_TRANS_TOGGLE);case 5:_context.next=9;break;case 7:tran.toggle();sendIframeMsg(MSG_TRANS_TOGGLE);case 9:_context.next=14;break;case 11:_context.prev=11;_context.t0=_context["catch"](0);log_kissLog(_context.t0,"toggle trans");case 14:case"end":return _context.stop();}},_callee,null,[[0,11]]);}));return function handleTransToggle(_x){return _ref2.apply(this,arguments);};}();var handleChange=/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(e){var _e$target,name,value;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;_e$target=e.target,name=_e$target.name,value=_e$target.value;setRule(function(pre){return _objectSpread2(_objectSpread2({},pre),{},(0,defineProperty/* default */.Z)({},name,value));});if(tran){_context2.next=8;break;}_context2.next=6;return sendTabMsg(MSG_TRANS_PUTRULE,(0,defineProperty/* default */.Z)({},name,value));case 6:_context2.next=10;break;case 8:tran.updateRule((0,defineProperty/* default */.Z)({},name,value));sendIframeMsg(MSG_TRANS_PUTRULE,(0,defineProperty/* default */.Z)({},name,value));case 10:_context2.next=15;break;case 12:_context2.prev=12;_context2.t0=_context2["catch"](0);log_kissLog(_context2.t0,"update rule");case 15:case"end":return _context2.stop();}},_callee2,null,[[0,12]]);}));return function handleChange(_x2){return _ref3.apply(this,arguments);};}();var handleClearCache=function handleClearCache(){tryClearCaches();};var handleSaveRule=/*#__PURE__*/function(){var _ref4=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){var href,tab,newRule;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.prev=0;href=window.location.href;if(tran){_context3.next=7;break;}_context3.next=5;return getCurTab();case 5:tab=_context3.sent;href=tab.url;case 7:newRule=_objectSpread2(_objectSpread2({},rule),{},{pattern:href.split("/")[2]});if(isExt&&tran){sendBgMsg(MSG_SAVE_RULE,newRule);}else{saveRule(newRule);}_context3.next=14;break;case 11:_context3.prev=11;_context3.t0=_context3["catch"](0);log_kissLog(_context3.t0,"save rule");case 14:case"end":return _context3.stop();}},_callee3,null,[[0,11]]);}));return function handleSaveRule(){return _ref4.apply(this,arguments);};}();(0,react.useEffect)(function(){if(tran){return;}asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;_context4.next=3;return sendTabMsg(MSG_TRANS_GETRULE);case 3:res=_context4.sent;if(!res.error){setRule(res.data);}_context4.next=10;break;case 7:_context4.prev=7;_context4.t0=_context4["catch"](0);log_kissLog(_context4.t0,"query rule");case 10:case"end":return _context4.stop();}},_callee4,null,[[0,7]]);}))();},[tran]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){var _commands,res,shortcuts;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;_commands={};if(!isExt){_context5.next=9;break;}_context5.next=5;return sendBgMsg(MSG_COMMAND_SHORTCUTS);case 5:res=_context5.sent;res.forEach(function(_ref7){var name=_ref7.name,shortcut=_ref7.shortcut;_commands[name]=shortcut;});_context5.next=11;break;case 9:shortcuts=tran.setting.shortcuts;if(shortcuts){Object.entries(shortcuts).forEach(function(_ref8){var _ref9=(0,slicedToArray/* default */.Z)(_ref8,2),key=_ref9[0],val=_ref9[1];_commands[key]=val.join("+");});}case 11:setCommands(_commands);_context5.next=17;break;case 14:_context5.prev=14;_context5.t0=_context5["catch"](0);log_kissLog(_context5.t0,"query cmds");case 17:case"end":return _context5.stop();}},_callee5,null,[[0,14]]);}))();},[tran]);if(!rule){return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{minWidth:300,children:[!tran&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Header,{}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{sx:{p:2},spacing:3,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:handleOpenSetting,children:i18n("setting")})})]});}var transOpen=rule.transOpen,translator=rule.translator,fromLang=rule.fromLang,toLang=rule.toLang,textStyle=rule.textStyle;return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{minWidth:300,children:[!tran&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Header,{}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{sx:{p:2},spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:2,children:/*#__PURE__*/(0,jsx_runtime.jsx)(FormControlLabel_FormControlLabel,{control:/*#__PURE__*/(0,jsx_runtime.jsx)(Switch_Switch,{checked:transOpen==="true",onChange:handleTransToggle}),label:commands["toggleTranslate"]?"".concat(i18n("translate_alt"),"(").concat(commands["toggleTranslate"],")"):i18n("translate_alt")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},size:"small",value:translator,name:"translator",label:i18n("translate_service"),onChange:handleChange,children:OPT_TRANS_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:item},item);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},size:"small",value:fromLang,name:"fromLang",label:i18n("from_lang"),onChange:handleChange,children:OPT_LANGS_FROM.map(function(_ref10){var _ref11=(0,slicedToArray/* default */.Z)(_ref10,2),lang=_ref11[0],name=_ref11[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},size:"small",value:toLang,name:"toLang",label:i18n("to_lang"),onChange:handleChange,children:OPT_LANGS_TO.map(function(_ref12){var _ref13=(0,slicedToArray/* default */.Z)(_ref12,2),lang=_ref13[0],name=_ref13[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},size:"small",value:textStyle,name:"textStyle",label:commands["toggleStyle"]?"".concat(i18n("text_style_alt"),"(").concat(commands["toggleStyle"],")"):i18n("text_style_alt"),onChange:handleChange,children:OPT_STYLE_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:i18n(item)},item);})}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:handleSaveRule,children:i18n("save_rule")}),!isExt&&/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:handleClearCache,children:i18n("clear_cache")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:handleOpenSetting,children:i18n("setting")})]})]})]});} ;// CONCATENATED MODULE: ./src/libs/shortcut.js /** * 键盘快捷键监听 @@ -33479,11 +33513,11 @@ function Popup(_ref){var setShowPopup=_ref.setShowPopup,tran=_ref.translator;var ;// CONCATENATED MODULE: ./src/views/Action/index.js function Action(_ref){var _fab$x,_fab$y;var translator=_ref.translator,fab=_ref.fab;var fabWidth=40;var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),showPopup=_useState2[0],setShowPopup=_useState2[1];var _useState3=(0,react.useState)({w:window.innerWidth,h:window.innerHeight}),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),windowSize=_useState4[0],setWindowSize=_useState4[1];var _useState5=(0,react.useState)(false),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),moved=_useState6[0],setMoved=_useState6[1];var handleWindowResize=(0,react.useMemo)(function(){return debounce(function(){setWindowSize({w:window.innerWidth,h:window.innerHeight});});},[]);var handleWindowClick=function handleWindowClick(e){setShowPopup(false);};var handleStart=(0,react.useCallback)(function(){setMoved(false);},[]);var handleMove=(0,react.useCallback)(function(){setMoved(true);},[]);(0,react.useEffect)(function(){if(!isGm){return;}// 注册快捷键 var shortcuts=translator.setting.shortcuts||DEFAULT_SHORTCUTS;var clearShortcuts=[shortcutRegister(shortcuts[OPT_SHORTCUT_TRANSLATE],function(){translator.toggle();sendIframeMsg(MSG_TRANS_TOGGLE);setShowPopup(false);}),shortcutRegister(shortcuts[OPT_SHORTCUT_STYLE],function(){translator.toggleStyle();sendIframeMsg(MSG_TRANS_TOGGLE_STYLE);setShowPopup(false);}),shortcutRegister(shortcuts[OPT_SHORTCUT_POPUP],function(){setShowPopup(function(pre){return!pre;});}),shortcutRegister(shortcuts[OPT_SHORTCUT_SETTING],function(){window.open("https://fishjar.github.io/kiss-translator/options.html","_blank");})];return function(){clearShortcuts.forEach(function(fn){fn();});};},[translator]);(0,react.useEffect)(function(){if(!isGm){return;}// 注册菜单 -try{var menuCommandIds=[];var contextMenuType=translator.setting.contextMenuType;contextMenuType!==0&&menuCommandIds.push(GM.registerMenuCommand("Toggle Translate",function(event){translator.toggle();sendIframeMsg(MSG_TRANS_TOGGLE);setShowPopup(false);},"Q"),GM.registerMenuCommand("Toggle Style",function(event){translator.toggleStyle();sendIframeMsg(MSG_TRANS_TOGGLE_STYLE);setShowPopup(false);},"C"),GM.registerMenuCommand("Open Menu",function(event){setShowPopup(function(pre){return!pre;});},"K"),GM.registerMenuCommand("Open Setting",function(event){window.open("https://fishjar.github.io/kiss-translator/options.html","_blank");},"O"));return function(){menuCommandIds.forEach(function(id){GM.unregisterMenuCommand(id);});};}catch(err){console.log("[registerMenuCommand]",err);}},[translator]);(0,react.useEffect)(function(){window.addEventListener("resize",handleWindowResize);return function(){window.removeEventListener("resize",handleWindowResize);};},[handleWindowResize]);(0,react.useEffect)(function(){window.addEventListener("click",handleWindowClick);return function(){window.removeEventListener("click",handleWindowClick);};},[]);var popProps=(0,react.useMemo)(function(){var width=Math.min(windowSize.w,300);var height=Math.min(windowSize.h,442);var left=(windowSize.w-width)/2;var top=(windowSize.h-height)/2;return{windowSize:windowSize,width:width,height:height,left:left,top:top};},[windowSize]);var fabProps={windowSize:windowSize,width:fabWidth,height:fabWidth,left:(_fab$x=fab.x)!==null&&_fab$x!==void 0?_fab$x:-fabWidth,top:(_fab$y=fab.y)!==null&&_fab$y!==void 0?_fab$y:windowSize.h/2};return/*#__PURE__*/(0,jsx_runtime.jsx)(SettingProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Theme,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Draggable,_objectSpread2(_objectSpread2({},popProps),{},{show:showPopup,onStart:handleStart,onMove:handleMove,usePaper:true,handler:/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{style:{cursor:"move"},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Header,{setShowPopup:setShowPopup}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{})]}),children:showPopup&&/*#__PURE__*/(0,jsx_runtime.jsx)(Popup,{setShowPopup:setShowPopup,translator:translator})}),"pop"),/*#__PURE__*/(0,jsx_runtime.jsx)(Draggable,_objectSpread2(_objectSpread2({snapEdge:true},fabProps),{},{show:fab.isHide?false:!showPopup,onStart:handleStart,onMove:handleMove,handler:/*#__PURE__*/(0,jsx_runtime.jsx)(Fab_Fab,{size:"small",color:"primary",onClick:function onClick(e){if(!moved){setShowPopup(function(pre){return!pre;});}},children:/*#__PURE__*/(0,jsx_runtime.jsx)(Translate/* default */.Z,{sx:{width:24,height:24}})})}),"fab")]})});} +try{var menuCommandIds=[];var contextMenuType=translator.setting.contextMenuType;contextMenuType!==0&&menuCommandIds.push(GM.registerMenuCommand("Toggle Translate",function(event){translator.toggle();sendIframeMsg(MSG_TRANS_TOGGLE);setShowPopup(false);},"Q"),GM.registerMenuCommand("Toggle Style",function(event){translator.toggleStyle();sendIframeMsg(MSG_TRANS_TOGGLE_STYLE);setShowPopup(false);},"C"),GM.registerMenuCommand("Open Menu",function(event){setShowPopup(function(pre){return!pre;});},"K"),GM.registerMenuCommand("Open Setting",function(event){window.open("https://fishjar.github.io/kiss-translator/options.html","_blank");},"O"));return function(){menuCommandIds.forEach(function(id){GM.unregisterMenuCommand(id);});};}catch(err){log_kissLog(err,"registerMenuCommand");}},[translator]);(0,react.useEffect)(function(){window.addEventListener("resize",handleWindowResize);return function(){window.removeEventListener("resize",handleWindowResize);};},[handleWindowResize]);(0,react.useEffect)(function(){window.addEventListener("click",handleWindowClick);return function(){window.removeEventListener("click",handleWindowClick);};},[]);var popProps=(0,react.useMemo)(function(){var width=Math.min(windowSize.w,300);var height=Math.min(windowSize.h,442);var left=(windowSize.w-width)/2;var top=(windowSize.h-height)/2;return{windowSize:windowSize,width:width,height:height,left:left,top:top};},[windowSize]);var fabProps={windowSize:windowSize,width:fabWidth,height:fabWidth,left:(_fab$x=fab.x)!==null&&_fab$x!==void 0?_fab$x:-fabWidth,top:(_fab$y=fab.y)!==null&&_fab$y!==void 0?_fab$y:windowSize.h/2};return/*#__PURE__*/(0,jsx_runtime.jsx)(SettingProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Theme,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Draggable,_objectSpread2(_objectSpread2({},popProps),{},{show:showPopup,onStart:handleStart,onMove:handleMove,usePaper:true,handler:/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{style:{cursor:"move"},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Header,{setShowPopup:setShowPopup}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{})]}),children:showPopup&&/*#__PURE__*/(0,jsx_runtime.jsx)(Popup,{setShowPopup:setShowPopup,translator:translator})}),"pop"),/*#__PURE__*/(0,jsx_runtime.jsx)(Draggable,_objectSpread2(_objectSpread2({snapEdge:true},fabProps),{},{show:fab.isHide?false:!showPopup,onStart:handleStart,onMove:handleMove,handler:/*#__PURE__*/(0,jsx_runtime.jsx)(Fab_Fab,{size:"small",color:"primary",onClick:function onClick(e){if(!moved){setShowPopup(function(pre){return!pre;});}},children:/*#__PURE__*/(0,jsx_runtime.jsx)(Translate/* default */.Z,{sx:{width:24,height:24}})})}),"fab")]})});} ;// CONCATENATED MODULE: ./src/libs/svg.js var loadingSvg="\n\n \n \n \n \n \n \n \n \n \n\n"; ;// CONCATENATED MODULE: ./src/views/Content/LoadingIcon.js -function LoadingIcon(){return/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{display:"inline-block",width:"1.2em",height:"1em"},dangerouslySetInnerHTML:{__html:loadingSvg}});} +function LoadingIcon(){return/*#__PURE__*/(0,jsx_runtime.jsx)("span",{style:{display:"inline-block",width:"1.2em",height:"1em"},dangerouslySetInnerHTML:{__html:loadingSvg}});} ;// CONCATENATED MODULE: ./src/hooks/Translate.js /** * 翻译hook @@ -33491,26 +33525,32 @@ function LoadingIcon(){return/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{disp * @param {*} rule * @param {*} setting * @returns - */function useTranslate(q,rule,setting){var _useState=(0,react.useState)(""),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),text=_useState2[0],setText=_useState2[1];var _useState3=(0,react.useState)(false),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),loading=_useState4[0],setLoading=_useState4[1];var _useState5=(0,react.useState)(false),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),sameLang=_useState6[0],setSamelang=_useState6[1];var translator=rule.translator,fromLang=rule.fromLang,toLang=rule.toLang;(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var deLang,disableLangs,_setting$transApis,_yield$apiTranslate,_yield$apiTranslate2,trText,isSame;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);if(q.replace(/\[(\d+)\]/g,"").trim()){_context.next=6;break;}setText(q);setSamelang(false);return _context.abrupt("return");case 6:_context.next=8;return tryDetectLang(q,setting.detectRemote);case 8:deLang=_context.sent;disableLangs=setting.disableLangs||[];if(!(deLang&&(toLang.includes(deLang)||disableLangs.includes(deLang)))){_context.next=14;break;}setSamelang(true);_context.next=22;break;case 14:_context.next=16;return apiTranslate({translator:translator,text:q,fromLang:fromLang,toLang:toLang,apiSetting:((_setting$transApis=setting.transApis)===null||_setting$transApis===void 0?void 0:_setting$transApis[translator])||DEFAULT_TRANS_APIS[translator]});case 16:_yield$apiTranslate=_context.sent;_yield$apiTranslate2=(0,slicedToArray/* default */.Z)(_yield$apiTranslate,2);trText=_yield$apiTranslate2[0];isSame=_yield$apiTranslate2[1];setText(trText);setSamelang(isSame);case 22:_context.next=27;break;case 24:_context.prev=24;_context.t0=_context["catch"](0);console.log("[translate]",_context.t0);case 27:_context.prev=27;setLoading(false);return _context.finish(27);case 30:case"end":return _context.stop();}},_callee,null,[[0,24,27,30]]);}))();},[q,translator,fromLang,toLang,setting]);return{text:text,sameLang:sameLang,loading:loading};} + */function useTranslate(q,rule,setting){var _useState=(0,react.useState)(""),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),text=_useState2[0],setText=_useState2[1];var _useState3=(0,react.useState)(false),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),loading=_useState4[0],setLoading=_useState4[1];var _useState5=(0,react.useState)(false),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),sameLang=_useState6[0],setSamelang=_useState6[1];var translator=rule.translator,fromLang=rule.fromLang,toLang=rule.toLang,detectRemote=rule.detectRemote,_rule$skipLangs=rule.skipLangs,skipLangs=_rule$skipLangs===void 0?[]:_rule$skipLangs;(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var deLang,_setting$transApis,_yield$apiTranslate,_yield$apiTranslate2,trText,isSame;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);if(q.replace(/\[(\d+)\]/g,"").trim()){_context.next=6;break;}setText(q);setSamelang(false);return _context.abrupt("return");case 6:_context.next=8;return tryDetectLang(q,detectRemote==="true");case 8:deLang=_context.sent;if(!(deLang&&(toLang.includes(deLang)||skipLangs.includes(deLang)))){_context.next=13;break;}setSamelang(true);_context.next=21;break;case 13:_context.next=15;return apiTranslate({translator:translator,text:q,fromLang:fromLang,toLang:toLang,apiSetting:((_setting$transApis=setting.transApis)===null||_setting$transApis===void 0?void 0:_setting$transApis[translator])||DEFAULT_TRANS_APIS[translator]});case 15:_yield$apiTranslate=_context.sent;_yield$apiTranslate2=(0,slicedToArray/* default */.Z)(_yield$apiTranslate,2);trText=_yield$apiTranslate2[0];isSame=_yield$apiTranslate2[1];setText(trText);setSamelang(isSame);case 21:_context.next=26;break;case 23:_context.prev=23;_context.t0=_context["catch"](0);log_kissLog(_context.t0,"translate");case 26:_context.prev=26;setLoading(false);return _context.finish(26);case 29:case"end":return _context.stop();}},_callee,null,[[0,23,26,29]]);}))();},[q,translator,fromLang,toLang,detectRemote,skipLangs,setting]);return{text:text,sameLang:sameLang,loading:loading};} ;// CONCATENATED MODULE: ./src/views/Content/index.js -var Content_templateObject,Content_templateObject2,Content_templateObject3,Content_templateObject4,_templateObject5;var LineSpan=(0,styled/* default */.ZP)("span")(Content_templateObject||(Content_templateObject=_taggedTemplateLiteral(["\n opacity: 0.6;\n -webkit-opacity: 0.6;\n text-decoration-line: underline;\n text-decoration-style: ",";\n text-decoration-color: ",";\n text-decoration-thickness: 2px;\n text-underline-offset: 0.3em;\n -webkit-text-decoration-line: underline;\n -webkit-text-decoration-style: ",";\n -webkit-text-decoration-color: ",";\n -webkit-text-decoration-thickness: 2px;\n -webkit-text-underline-offset: 0.3em;\n &:hover {\n opacity: 1;\n -webkit-opacity: 1;\n }\n"])),function(props){return props.$lineStyle;},function(props){return props.$lineColor;},function(props){return props.$lineStyle;},function(props){return props.$lineColor;});var BlockquoteSpan=(0,styled/* default */.ZP)("span")(Content_templateObject2||(Content_templateObject2=_taggedTemplateLiteral(["\n opacity: 0.6;\n -webkit-opacity: 0.6;\n display: block;\n padding: 0 0.75em;\n border-left: 0.25em solid ",";\n &:hover {\n opacity: 1;\n -webkit-opacity: 1;\n }\n"])),function(props){return props.$lineColor;});var FuzzySpan=(0,styled/* default */.ZP)("span")(Content_templateObject3||(Content_templateObject3=_taggedTemplateLiteral(["\n filter: blur(0.2em);\n -webkit-filter: blur(0.2em);\n &:hover {\n filter: none;\n -webkit-filter: none;\n }\n"])));var HighlightSpan=(0,styled/* default */.ZP)("span")(Content_templateObject4||(Content_templateObject4=_taggedTemplateLiteral(["\n color: #fff;\n background-color: ",";\n"])),function(props){return props.$bgColor;});var DiySpan=(0,styled/* default */.ZP)("span")(_templateObject5||(_templateObject5=_taggedTemplateLiteral(["\n ","\n"])),function(props){return props.$diyStyle;});function StyledSpan(_ref){var textStyle=_ref.textStyle,textDiyStyle=_ref.textDiyStyle,bgColor=_ref.bgColor,children=_ref.children;switch(textStyle){case OPT_STYLE_LINE:// 下划线 -return/*#__PURE__*/(0,jsx_runtime.jsx)(LineSpan,{$lineStyle:"solid",$lineColor:bgColor,children:children});case OPT_STYLE_DOTLINE:// 点状线 -return/*#__PURE__*/(0,jsx_runtime.jsx)(LineSpan,{$lineStyle:"dotted",$lineColor:bgColor,children:children});case OPT_STYLE_DASHLINE:// 虚线 -return/*#__PURE__*/(0,jsx_runtime.jsx)(LineSpan,{$lineStyle:"dashed",$lineColor:bgColor,children:children});case OPT_STYLE_WAVYLINE:// 波浪线 -return/*#__PURE__*/(0,jsx_runtime.jsx)(LineSpan,{$lineStyle:"wavy",$lineColor:bgColor,children:children});case OPT_STYLE_FUZZY:// 模糊 -return/*#__PURE__*/(0,jsx_runtime.jsx)(FuzzySpan,{children:children});case OPT_STYLE_HIGHLIGHT:// 高亮 -return/*#__PURE__*/(0,jsx_runtime.jsx)(HighlightSpan,{$bgColor:bgColor||DEFAULT_COLOR,children:children});case OPT_STYLE_BLOCKQUOTE:// 引用 -return/*#__PURE__*/(0,jsx_runtime.jsx)(BlockquoteSpan,{$lineColor:bgColor||DEFAULT_COLOR,children:children});case OPT_STYLE_DIY:// 自定义 -return/*#__PURE__*/(0,jsx_runtime.jsx)(DiySpan,{$diyStyle:textDiyStyle,children:children});default:return/*#__PURE__*/(0,jsx_runtime.jsx)("span",{children:children});}}function Content(_ref2){var q=_ref2.q,keeps=_ref2.keeps,translator=_ref2.translator;var _useState=(0,react.useState)(translator.rule),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),rule=_useState2[0],setRule=_useState2[1];var _useTranslate=useTranslate(q,rule,translator.setting),text=_useTranslate.text,sameLang=_useTranslate.sameLang,loading=_useTranslate.loading;var textStyle=rule.textStyle,_rule$bgColor=rule.bgColor,bgColor=_rule$bgColor===void 0?"":_rule$bgColor,_rule$textDiyStyle=rule.textDiyStyle,textDiyStyle=_rule$textDiyStyle===void 0?"":_rule$textDiyStyle;var _translator$setting$n=translator.setting.newlineLength,newlineLength=_translator$setting$n===void 0?TRANS_NEWLINE_LENGTH:_translator$setting$n;var handleKissEvent=function handleKissEvent(e){var _e$detail=e.detail,action=_e$detail.action,args=_e$detail.args;switch(action){case MSG_TRANS_CURRULE:setRule(args);break;default:}};(0,react.useEffect)(function(){window.addEventListener(translator.eventName,handleKissEvent);return function(){window.removeEventListener(translator.eventName,handleKissEvent);};},[translator.eventName]);if(loading){return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[q.length>=newlineLength?/*#__PURE__*/(0,jsx_runtime.jsx)("br",{}):" ",/*#__PURE__*/(0,jsx_runtime.jsx)(LoadingIcon,{})]});}if(!text||sameLang){return;}return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[q.length>=newlineLength?/*#__PURE__*/(0,jsx_runtime.jsx)("br",{}):" ",/*#__PURE__*/(0,jsx_runtime.jsx)(StyledSpan,{textStyle:textStyle,textDiyStyle:textDiyStyle,bgColor:bgColor,children:keeps.length>0?/*#__PURE__*/(0,jsx_runtime.jsx)("span",{dangerouslySetInnerHTML:{__html:text.replace(/\[(\d+)\]/g,function(_,p){return keeps[parseInt(p)];})}}):text})]});} +var _LINE_STYLES,Content_templateObject,Content_templateObject2,Content_templateObject3,Content_templateObject4,_templateObject5;var LINE_STYLES=(_LINE_STYLES={},(0,defineProperty/* default */.Z)(_LINE_STYLES,OPT_STYLE_LINE,"solid"),(0,defineProperty/* default */.Z)(_LINE_STYLES,OPT_STYLE_DOTLINE,"dotted"),(0,defineProperty/* default */.Z)(_LINE_STYLES,OPT_STYLE_DASHLINE,"dashed"),(0,defineProperty/* default */.Z)(_LINE_STYLES,OPT_STYLE_WAVYLINE,"wavy"),_LINE_STYLES);var StyledSpan=(0,styled/* default */.ZP)("span")(Content_templateObject||(Content_templateObject=_taggedTemplateLiteral(["\n ","\n"])),function(_ref){var textStyle=_ref.textStyle,textDiyStyle=_ref.textDiyStyle,bgColor=_ref.bgColor;switch(textStyle){case OPT_STYLE_LINE:// 下划线 +case OPT_STYLE_DOTLINE:// 点状线 +case OPT_STYLE_DASHLINE:// 虚线 +case OPT_STYLE_WAVYLINE:// 波浪线 +return css(Content_templateObject2||(Content_templateObject2=_taggedTemplateLiteral(["\n opacity: 0.6;\n -webkit-opacity: 0.6;\n text-decoration-line: underline;\n text-decoration-style: ",";\n text-decoration-color: ",";\n text-decoration-thickness: 2px;\n text-underline-offset: 0.3em;\n -webkit-text-decoration-line: underline;\n -webkit-text-decoration-style: ",";\n -webkit-text-decoration-color: ",";\n -webkit-text-decoration-thickness: 2px;\n -webkit-text-underline-offset: 0.3em;\n &:hover {\n opacity: 1;\n -webkit-opacity: 1;\n }\n "])),LINE_STYLES[textStyle],bgColor,LINE_STYLES[textStyle],bgColor);case OPT_STYLE_FUZZY:// 模糊 +return css(Content_templateObject3||(Content_templateObject3=_taggedTemplateLiteral(["\n filter: blur(0.2em);\n -webkit-filter: blur(0.2em);\n &:hover {\n filter: none;\n -webkit-filter: none;\n }\n "])));case OPT_STYLE_HIGHLIGHT:// 高亮 +return css(Content_templateObject4||(Content_templateObject4=_taggedTemplateLiteral(["\n color: #fff;\n background-color: ",";\n "])),bgColor||DEFAULT_COLOR);case OPT_STYLE_BLOCKQUOTE:// 引用 +return css(_templateObject5||(_templateObject5=_taggedTemplateLiteral(["\n opacity: 0.6;\n -webkit-opacity: 0.6;\n display: block;\n padding: 0 0.75em;\n border-left: 0.25em solid ",";\n &:hover {\n opacity: 1;\n -webkit-opacity: 1;\n }\n "])),bgColor||DEFAULT_COLOR);case OPT_STYLE_DIY:// 自定义 +return textDiyStyle;default:return"";}});function Content(_ref2){var q=_ref2.q,keeps=_ref2.keeps,translator=_ref2.translator,$el=_ref2.$el;var _useState=(0,react.useState)(translator.rule),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),rule=_useState2[0],setRule=_useState2[1];var _useTranslate=useTranslate(q,rule,translator.setting),text=_useTranslate.text,sameLang=_useTranslate.sameLang,loading=_useTranslate.loading;var transOpen=rule.transOpen,textStyle=rule.textStyle,bgColor=rule.bgColor,textDiyStyle=rule.textDiyStyle,transOnly=rule.transOnly,transTag=rule.transTag;var newlineLength=translator.setting.newlineLength;var handleKissEvent=function handleKissEvent(e){var _e$detail=e.detail,action=_e$detail.action,args=_e$detail.args;switch(action){case MSG_TRANS_CURRULE:setRule(args);break;default:}};(0,react.useEffect)(function(){window.addEventListener(translator.eventName,handleKissEvent);return function(){window.removeEventListener(translator.eventName,handleKissEvent);};},[translator.eventName]);var gap=(0,react.useMemo)(function(){if(transOnly==="true"){return"";}return q.length>=newlineLength?/*#__PURE__*/(0,jsx_runtime.jsx)("br",{}):" ";},[q,transOnly,newlineLength]);var styles=(0,react.useMemo)(function(){return{textStyle:textStyle,textDiyStyle:textDiyStyle,bgColor:bgColor,as:transTag};},[textStyle,textDiyStyle,bgColor,transTag]);if(loading){return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[gap,/*#__PURE__*/(0,jsx_runtime.jsx)(LoadingIcon,{})]});}if(!text||sameLang){return;}if(transOnly==="true"&&transOpen==="true"&&$el.querySelector(APP_LCNAME)){Array.from($el.childNodes).forEach(function(el){if(el.localName!==APP_LCNAME){el.remove();}});}if(keeps.length>0){return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[gap,/*#__PURE__*/(0,jsx_runtime.jsx)(StyledSpan,_objectSpread2(_objectSpread2({},styles),{},{dangerouslySetInnerHTML:{__html:text.replace(/\[(\d+)\]/g,function(_,p){return keeps[parseInt(p)];})}}))]});}return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[gap,/*#__PURE__*/(0,jsx_runtime.jsx)(StyledSpan,_objectSpread2(_objectSpread2({},styles),{},{children:text}))]});} +;// CONCATENATED MODULE: ./src/libs/injector.js +// Function to inject inline JavaScript code +var injectInlineJs=function injectInlineJs(code){var _document$body;var el=document.createElement("script");el.setAttribute("data-source","KISS-Calendar injectInlineJs");el.setAttribute("type","text/javascript");el.textContent=code;(_document$body=document.body)===null||_document$body===void 0?void 0:_document$body.appendChild(el);};// Function to inject external JavaScript file +var injectExternalJs=function injectExternalJs(src){var _document$body2;var el=document.createElement("script");el.setAttribute("data-source","KISS-Calendar injectExternalJs");el.setAttribute("type","text/javascript");el.setAttribute("src",src);(_document$body2=document.body)===null||_document$body2===void 0?void 0:_document$body2.appendChild(el);};// Function to inject internal CSS code +var injectInternalCss=function injectInternalCss(styles){var _document$head;var el=document.createElement("style");el.setAttribute("data-source","KISS-Calendar injectInternalCss");el.textContent=styles;(_document$head=document.head)===null||_document$head===void 0?void 0:_document$head.appendChild(el);};// Function to inject external CSS file +var injectExternalCss=function injectExternalCss(href){var _document$head2;var el=document.createElement("link");el.setAttribute("data-source","KISS-Calendar injectExternalCss");el.setAttribute("rel","stylesheet");el.setAttribute("type","text/css");el.setAttribute("href",href);(_document$head2=document.head)===null||_document$head2===void 0?void 0:_document$head2.appendChild(el);}; ;// CONCATENATED MODULE: ./src/libs/translator.js /** * 翻译类 - */var Translator=/*#__PURE__*/function(){function Translator(rule,setting,fixerSetting){var _this2=this;_classCallCheck(this,Translator);this._rule={};this._setting={};this._fixerSetting=null;this._rootNodes=new Set();this._tranNodes=new Map();this._skipNodeNames=[APP_LCNAME,"style","svg","img","audio","video","textarea","input","button","select","option","head","script","iframe"];this._eventName=utils_genEventName();this._mouseoverNode=null;this._keepSelector=[null,null];this._terms=[];this._docTitle="";// 显示 + */var Translator=/*#__PURE__*/function(){function Translator(rule,setting){var _this2=this;_classCallCheck(this,Translator);this._rule={};this._setting={};this._rootNodes=new Set();this._tranNodes=new Map();this._skipNodeNames=[APP_LCNAME,"style","svg","img","audio","video","textarea","input","button","select","option","head","script","iframe"];this._eventName=utils_genEventName();this._mouseoverNode=null;this._keepSelector=[null,null];this._terms=[];this._docTitle="";// 显示 this._interseObserver=new IntersectionObserver(function(intersections){intersections.forEach(function(intersection){if(intersection.isIntersecting){_this2._render(intersection.target);_this2._interseObserver.unobserve(intersection.target);}});},{threshold:0.1});// 变化 this._mutaObserver=new MutationObserver(function(mutations){mutations.forEach(function(mutation){if(!_this2._skipNodeNames.includes(mutation.target.localName)&&mutation.addedNodes.length>0){var nodes=Array.from(mutation.addedNodes).filter(function(node){if(_this2._skipNodeNames.includes(node.localName)||node.id===APP_LCNAME){return false;}return true;});if(nodes.length>0){// const rootNode = mutation.target.getRootNode(); // todo _this2._reTranslate();}}});});// 插入 shadowroot -this._overrideAttachShadow=function(){var _this=_this2;var _attachShadow=HTMLElement.prototype.attachShadow;HTMLElement.prototype.attachShadow=function(){_this._reTranslate();return _attachShadow.apply(this,arguments);};};this.updateRule=function(obj){_this2.rule=_objectSpread2(_objectSpread2({},_this2.rule),obj);};this.toggle=function(){if(_this2.rule.transOpen==="true"){_this2.rule=_objectSpread2(_objectSpread2({},_this2.rule),{},{transOpen:"false"});_this2._unRegister();}else{_this2.rule=_objectSpread2(_objectSpread2({},_this2.rule),{},{transOpen:"true"});_this2._register();}};this.toggleStyle=function(){var textStyle=_this2.rule.textStyle===OPT_STYLE_FUZZY?OPT_STYLE_DASHLINE:OPT_STYLE_FUZZY;_this2.rule=_objectSpread2(_objectSpread2({},_this2.rule),{},{textStyle:textStyle});};this.translateText=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(text){var _this2$_setting$trans;var _this2$_rule,translator,fromLang,toLang,apiSetting,_yield$apiTranslate,_yield$apiTranslate2,trText;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_this2$_rule=_this2._rule,translator=_this2$_rule.translator,fromLang=_this2$_rule.fromLang,toLang=_this2$_rule.toLang;apiSetting=((_this2$_setting$trans=_this2._setting.transApis)===null||_this2$_setting$trans===void 0?void 0:_this2$_setting$trans[translator])||DEFAULT_TRANS_APIS[translator];_context.next=4;return apiTranslate({text:text,translator:translator,fromLang:fromLang,toLang:toLang,apiSetting:apiSetting});case 4:_yield$apiTranslate=_context.sent;_yield$apiTranslate2=(0,slicedToArray/* default */.Z)(_yield$apiTranslate,1);trText=_yield$apiTranslate2[0];return _context.abrupt("return",trText);case 8:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}();this._querySelectorAll=function(selector,node){try{return Array.from(node.querySelectorAll(selector));}catch(err){console.log("[querySelectorAll err]: ".concat(selector));}return[];};this._queryFilter=function(selector,rootNode){return _this2._querySelectorAll(selector,rootNode).filter(function(node){return _this2._queryFilter(selector,node).length===0;});};this._queryShadowNodes=function(selector,rootNode){_this2._rootNodes.add(rootNode);_this2._queryFilter(selector,rootNode).forEach(function(item){if(!_this2._tranNodes.has(item)){_this2._tranNodes.set(item,"");}});Array.from(rootNode.querySelectorAll("*")).map(function(item){return item.shadowRoot;}).filter(Boolean).forEach(function(item){_this2._queryShadowNodes(selector,item);});};this._queryNodes=function(){var rootNode=arguments.length>0&&arguments[0]!==undefined?arguments[0]:document;// const childRoots = Array.from(rootNode.querySelectorAll("*")) +this._overrideAttachShadow=function(){var _this=_this2;var _attachShadow=HTMLElement.prototype.attachShadow;HTMLElement.prototype.attachShadow=function(){_this._reTranslate();return _attachShadow.apply(this,arguments);};};this.updateRule=function(obj){_this2.rule=_objectSpread2(_objectSpread2({},_this2.rule),obj);_this2._updatePool(obj.translator);};this.toggle=function(){if(_this2.rule.transOpen==="true"){_this2.rule=_objectSpread2(_objectSpread2({},_this2.rule),{},{transOpen:"false"});_this2._unRegister();}else{_this2.rule=_objectSpread2(_objectSpread2({},_this2.rule),{},{transOpen:"true"});_this2._register();}};this.toggleStyle=function(){var textStyle=_this2.rule.textStyle===OPT_STYLE_FUZZY?OPT_STYLE_DASHLINE:OPT_STYLE_FUZZY;_this2.rule=_objectSpread2(_objectSpread2({},_this2.rule),{},{textStyle:textStyle});};this.translateText=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(text){var _this2$_setting$trans;var _this2$_rule,translator,fromLang,toLang,apiSetting,_yield$apiTranslate,_yield$apiTranslate2,trText;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_this2$_rule=_this2._rule,translator=_this2$_rule.translator,fromLang=_this2$_rule.fromLang,toLang=_this2$_rule.toLang;apiSetting=((_this2$_setting$trans=_this2._setting.transApis)===null||_this2$_setting$trans===void 0?void 0:_this2$_setting$trans[translator])||DEFAULT_TRANS_APIS[translator];_context.next=4;return apiTranslate({text:text,translator:translator,fromLang:fromLang,toLang:toLang,apiSetting:apiSetting});case 4:_yield$apiTranslate=_context.sent;_yield$apiTranslate2=(0,slicedToArray/* default */.Z)(_yield$apiTranslate,1);trText=_yield$apiTranslate2[0];return _context.abrupt("return",trText);case 8:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}();this._querySelectorAll=function(selector,node){try{return Array.from(node.querySelectorAll(selector));}catch(err){log_kissLog(selector,"querySelectorAll err");}return[];};this._queryFilter=function(selector,rootNode){return _this2._querySelectorAll(selector,rootNode).filter(function(node){return _this2._queryFilter(selector,node).length===0;});};this._queryShadowNodes=function(selector,rootNode){_this2._rootNodes.add(rootNode);_this2._queryFilter(selector,rootNode).forEach(function(item){if(!_this2._tranNodes.has(item)){_this2._tranNodes.set(item,"");}});Array.from(rootNode.querySelectorAll("*")).map(function(item){return item.shadowRoot;}).filter(Boolean).forEach(function(item){_this2._queryShadowNodes(selector,item);});};this._queryNodes=function(){var rootNode=arguments.length>0&&arguments[0]!==undefined?arguments[0]:document;// const childRoots = Array.from(rootNode.querySelectorAll("*")) // .map((item) => item.shadowRoot) // .filter(Boolean); // const childNodes = childRoots.map((item) => this._queryNodes(item)); @@ -33524,39 +33564,43 @@ _this2._rootNodes.add(rootNode);_this2._rule.selector.split(";").map(function(it // } // } // ); -_this2._queryShadowNodes(inSelector,outNode.shadowRoot);}});}}else{_this2._queryFilter(selector,rootNode).forEach(function(item){if(!_this2._tranNodes.has(item)){_this2._tranNodes.set(item,"");}});}});};this._register=function(){if(_this2._rule.fromLang===_this2._rule.toLang){return;}// webfix -if(_this2._fixerSetting){runFixer(_this2._fixerSetting);}// 搜索节点 +_this2._queryShadowNodes(inSelector,outNode.shadowRoot);}});}}else{_this2._queryFilter(selector,rootNode).forEach(function(item){if(!_this2._tranNodes.has(item)){_this2._tranNodes.set(item,"");}});}});};this._register=function(){var _this2$_rule2=_this2._rule,fromLang=_this2$_rule2.fromLang,toLang=_this2$_rule2.toLang,injectJs=_this2$_rule2.injectJs,injectCss=_this2$_rule2.injectCss,fixerSelector=_this2$_rule2.fixerSelector,fixerFunc=_this2$_rule2.fixerFunc;if(fromLang===toLang){return;}// webfix +if(fixerSelector&&fixerFunc!=="-"){runFixer(fixerSelector,fixerFunc);}// 注入用户JS/CSS +if(isExt){injectJs&&sendBgMsg(MSG_INJECT_JS,injectJs);injectCss&&sendBgMsg(MSG_INJECT_CSS,injectCss);}else{injectJs&&injectInlineJs(injectJs);injectCss&&injectInternalCss(injectCss);}// 搜索节点 _this2._queryNodes();_this2._rootNodes.forEach(function(node){// 监听节点变化; _this2._mutaObserver.observe(node,{childList:true,subtree:true// characterData: true, -});});if(!_this2._setting.mouseKey||_this2._setting.mouseKey===OPT_MOUSEKEY_DISABLE){// 监听节点显示 -_this2._tranNodes.forEach(function(_,node){_this2._interseObserver.observe(node);});}else if(_this2._setting.mouseKey===OPT_MOUSEKEY_PAGEOPEN){// 全文直接翻译 +});});if(!_this2._rule.transTiming||_this2._rule.transTiming===OPT_TIMING_PAGESCROLL){// 监听节点显示 +_this2._tranNodes.forEach(function(_,node){_this2._interseObserver.observe(node);});}else if(_this2._rule.transTiming===OPT_TIMING_PAGEOPEN){// 全文直接翻译 _this2._tranNodes.forEach(function(_,node){_this2._render(node);});}else{// 监听鼠标悬停 window.addEventListener("keydown",_this2._handleKeydown);_this2._tranNodes.forEach(function(_,node){node.addEventListener("mouseenter",_this2._handleMouseover);node.addEventListener("mouseleave",_this2._handleMouseout);});}// 翻译页面标题 -if(_this2._setting.transTitle&&!_this2._docTitle){var title=document.title;_this2._docTitle=title;_this2.translateText(title).then(function(trText){document.title="".concat(trText," | ").concat(title);});}};this._handleMouseover=function(e){// console.log("mouseenter", e); -if(!_this2._tranNodes.has(e.target)){return;}var key=_this2._setting.mouseKey.slice(3);if(_this2._setting.mouseKey===OPT_MOUSEKEY_MOUSEOVER||e[key]){e.target.removeEventListener("mouseenter",_this2._handleMouseover);e.target.removeEventListener("mouseleave",_this2._handleMouseout);_this2._render(e.target);}else{_this2._mouseoverNode=e.target;}};this._handleMouseout=function(e){// console.log("mouseleave", e); +if(_this2._rule.transTitle==="true"&&!_this2._docTitle){var title=document.title;_this2._docTitle=title;_this2.translateText(title).then(function(trText){document.title="".concat(trText," | ").concat(title);});}};this._handleMouseover=function(e){// console.log("mouseenter", e); +if(!_this2._tranNodes.has(e.target)){return;}var key=_this2._rule.transTiming.slice(3);if(_this2._rule.transTiming===OPT_TIMING_MOUSEOVER||e[key]){e.target.removeEventListener("mouseenter",_this2._handleMouseover);e.target.removeEventListener("mouseleave",_this2._handleMouseout);_this2._render(e.target);}else{_this2._mouseoverNode=e.target;}};this._handleMouseout=function(e){// console.log("mouseleave", e); if(!_this2._tranNodes.has(e.target)){return;}_this2._mouseoverNode=null;};this._handleKeydown=function(e){// console.log("keydown", e); -var key=_this2._setting.mouseKey.slice(3);if(e[key]&&_this2._mouseoverNode){_this2._mouseoverNode.removeEventListener("mouseenter",_this2._handleMouseover);_this2._mouseoverNode.removeEventListener("mouseleave",_this2._handleMouseout);var node=_this2._mouseoverNode;_this2._render(node);_this2._mouseoverNode=null;}};this._unRegister=function(){// 恢复页面标题 +var key=_this2._rule.transTiming.slice(3);if(e[key]&&_this2._mouseoverNode){_this2._mouseoverNode.removeEventListener("mouseenter",_this2._handleMouseover);_this2._mouseoverNode.removeEventListener("mouseleave",_this2._handleMouseout);var node=_this2._mouseoverNode;_this2._render(node);_this2._mouseoverNode=null;}};this._unRegister=function(){// 恢复页面标题 if(_this2._docTitle){document.title=_this2._docTitle;_this2._docTitle="";}// 解除节点变化监听 _this2._mutaObserver.disconnect();// 解除节点显示监听 // this._interseObserver.disconnect(); -if(!_this2._setting.mouseKey||_this2._setting.mouseKey===OPT_MOUSEKEY_DISABLE){// 解除节点显示监听 -_this2._tranNodes.forEach(function(_,node){var _node$querySelector;_this2._interseObserver.unobserve(node);// 移除已插入元素 -(_node$querySelector=node.querySelector(APP_LCNAME))===null||_node$querySelector===void 0?void 0:_node$querySelector.remove();});}else if(_this2._setting.mouseKey===OPT_MOUSEKEY_PAGEOPEN){_this2._tranNodes.forEach(function(_,node){var _node$querySelector2;(_node$querySelector2=node.querySelector(APP_LCNAME))===null||_node$querySelector2===void 0?void 0:_node$querySelector2.remove();});}else{// 移除鼠标悬停监听 -window.removeEventListener("keydown",_this2._handleKeydown);_this2._tranNodes.forEach(function(_,node){var _node$querySelector3;// node.style.pointerEvents = "none"; -node.removeEventListener("mouseenter",_this2._handleMouseover);node.removeEventListener("mouseleave",_this2._handleMouseout);// 移除已插入元素 -(_node$querySelector3=node.querySelector(APP_LCNAME))===null||_node$querySelector3===void 0?void 0:_node$querySelector3.remove();});}// 清空节点集合 +// 移除键盘监听 +window.removeEventListener("keydown",_this2._handleKeydown);_this2._tranNodes.forEach(function(innerHTML,node){if(!_this2._rule.transTiming||_this2._rule.transTiming===OPT_TIMING_PAGESCROLL){// 解除节点显示监听 +_this2._interseObserver.unobserve(node);}else if(_this2._rule.transTiming!==OPT_TIMING_PAGEOPEN){// 移除鼠标悬停监听 +// node.style.pointerEvents = "none"; +node.removeEventListener("mouseenter",_this2._handleMouseover);node.removeEventListener("mouseleave",_this2._handleMouseout);}// 移除/恢复元素 +if(innerHTML&&_this2._rule.transOnly==="true"){node.innerHTML=innerHTML;}else{var _node$querySelector;(_node$querySelector=node.querySelector(APP_LCNAME))===null||_node$querySelector===void 0?void 0:_node$querySelector.remove();}});// 移除用户JS/CSS +_this2._removeInjector();// 清空节点集合 _this2._rootNodes.clear();_this2._tranNodes.clear();// 清空任务池 -clearFetchPool();};this._reTranslate=debounce(function(){if(_this2._rule.transOpen==="true"){_this2._register();}},500);this._invalidLength=function(q){var _this2$_setting$minLe,_this2$_setting$maxLe;return!q||q.length<((_this2$_setting$minLe=_this2._setting.minLength)!==null&&_this2$_setting$minLe!==void 0?_this2$_setting$minLe:TRANS_MIN_LENGTH)||q.length>((_this2$_setting$maxLe=_this2._setting.maxLength)!==null&&_this2$_setting$maxLe!==void 0?_this2$_setting$maxLe:TRANS_MAX_LENGTH);};this._render=function(el){var traEl=el.querySelector(APP_LCNAME);// 已翻译 -if(traEl){var preText=_this2._tranNodes.get(el);var curText=el.innerText.trim();// const traText = traEl.innerText.trim(); +clearFetchPool();};this._removeInjector=function(){var _document$querySelect;(_document$querySelect=document.querySelectorAll("[data-source^=\"KISS-Calendar\"]"))===null||_document$querySelect===void 0?void 0:_document$querySelect.forEach(function(el){return el.remove();});};this._reTranslate=debounce(function(){if(_this2._rule.transOpen==="true"){window.removeEventListener("keydown",_this2._handleKeydown);_this2._mutaObserver.disconnect();_this2._interseObserver.disconnect();_this2._removeInjector();_this2._register();}},this._setting.transInterval);this._invalidLength=function(q){var _this2$_setting$minLe,_this2$_setting$maxLe;return!q||q.length<((_this2$_setting$minLe=_this2._setting.minLength)!==null&&_this2$_setting$minLe!==void 0?_this2$_setting$minLe:TRANS_MIN_LENGTH)||q.length>((_this2$_setting$maxLe=_this2._setting.maxLength)!==null&&_this2$_setting$maxLe!==void 0?_this2$_setting$maxLe:TRANS_MAX_LENGTH);};this._render=function(el){var traEl=el.querySelector(APP_LCNAME);// 已翻译 +if(traEl){if(_this2._rule.transOnly==="true"){return;}var preText=_this2._tranNodes.get(el);var curText=el.innerText.trim();// const traText = traEl.innerText.trim(); // todo // 1. traText when loading // 2. replace startsWith -if(curText.startsWith(preText)){return;}traEl.remove();}var q=el.innerText.trim();_this2._tranNodes.set(el,q);var keeps=[];// 保留元素 +if(curText.startsWith(preText)){return;}traEl.remove();}var q=el.innerText.trim();if(_this2._rule.transOnly==="true"){_this2._tranNodes.set(el,el.innerHTML);}else{_this2._tranNodes.set(el,q);}var keeps=[];// 保留元素 var _this2$_keepSelector=(0,slicedToArray/* default */.Z)(_this2._keepSelector,2),matchSelector=_this2$_keepSelector[0],subSelector=_this2$_keepSelector[1];if(matchSelector||subSelector){var text="";el.childNodes.forEach(function(child){if(child.nodeType===1&&(matchSelector&&child.matches(matchSelector)||subSelector&&child.querySelector(subSelector))){if(child.nodeName==="IMG"){child.style.cssText+="width: ".concat(child.width,"px;");child.style.cssText+="height: ".concat(child.height,"px;");}text+="[".concat(keeps.length,"]");keeps.push(child.outerHTML);}else{text+=child.textContent;}});if(keeps.length>0){// textContent会保留些无用的换行符,严重影响翻译质量 if(q.includes("\n")){q=text;}else{q=text.replaceAll("\n"," ");}}}// 太长或太短 if(_this2._invalidLength(q.replace(/\[(\d+)\]/g,"").trim())){return;}// 专业术语 -if(_this2._terms.length>0){var _iterator=_createForOfIteratorHelper(_this2._terms),_step;try{var _loop=function _loop(){var term=_step.value;var re=new RegExp(term[0],"g");q=q.replace(re,function(t){var text="[".concat(keeps.length,"]");keeps.push(term[1]||t);return text;});};for(_iterator.s();!(_step=_iterator.n()).done;){_loop();}}catch(err){_iterator.e(err);}finally{_iterator.f();}}traEl=document.createElement(APP_LCNAME);traEl.style.visibility="visible";el.appendChild(traEl);el.style.cssText+="-webkit-line-clamp: unset; max-height: none; height: auto;";if(el.parentElement){el.parentElement.style.cssText+="-webkit-line-clamp: unset; max-height: none; height: auto;";}// console.log({ q, keeps }); -var root=(0,client.createRoot)(traEl);root.render(/*#__PURE__*/(0,jsx_runtime.jsx)(Content,{q:q,keeps:keeps,translator:_this2}));};var fetchInterval=setting.fetchInterval,fetchLimit=setting.fetchLimit;updateFetchPool(fetchInterval,fetchLimit);this._overrideAttachShadow();this._setting=setting;this._rule=rule;this._fixerSetting=fixerSetting;this._keepSelector=(rule.keepSelector||"").split(SHADOW_KEY).map(function(item){return item.trim();});this._terms=(rule.terms||"").split(/\n|;/).map(function(item){return item.split(",").map(function(item){return item.trim();});}).filter(function(_ref2){var _ref3=(0,slicedToArray/* default */.Z)(_ref2,1),term=_ref3[0];return Boolean(term);});if(rule.transOpen==="true"){this._register();}}_createClass(Translator,[{key:"setting",get:function get(){return this._setting;}},{key:"eventName",get:function get(){return this._eventName;}},{key:"rule",get:function get(){// console.log("get rule", this._rule); +if(_this2._terms.length>0){var _iterator=_createForOfIteratorHelper(_this2._terms),_step;try{var _loop=function _loop(){var term=_step.value;var re=new RegExp(term[0],"g");q=q.replace(re,function(t){var text="[".concat(keeps.length,"]");keeps.push("".concat(term[1]||t,""));return text;});};for(_iterator.s();!(_step=_iterator.n()).done;){_loop();}}catch(err){_iterator.e(err);}finally{_iterator.f();}}traEl=document.createElement(APP_LCNAME);traEl.style.visibility="visible";// if (this._rule.transOnly === "true") { +// el.innerHTML = ""; +// } +var _this2$_rule3=_this2._rule,selectStyle=_this2$_rule3.selectStyle,parentStyle=_this2$_rule3.parentStyle;el.appendChild(traEl);el.style.cssText+=selectStyle;if(el.parentElement){el.parentElement.style.cssText+=parentStyle;}var root=(0,client.createRoot)(traEl);root.render(/*#__PURE__*/(0,jsx_runtime.jsx)(Content,{q:q,keeps:keeps,translator:_this2,$el:el}));};this._overrideAttachShadow();this._setting=setting;this._rule=rule;this._keepSelector=(rule.keepSelector||"").split(SHADOW_KEY).map(function(item){return item.trim();});this._terms=(rule.terms||"").split(/\n|;/).map(function(item){return item.split(",").map(function(item){return item.trim();});}).filter(function(_ref2){var _ref3=(0,slicedToArray/* default */.Z)(_ref2,1),term=_ref3[0];return Boolean(term);});this._updatePool(rule.translator);if(rule.transOpen==="true"){this._register();}}_createClass(Translator,[{key:"_updatePool",value:function _updatePool(translator){if(!translator){return;}var _ref4=this._setting.transApis[translator]||{},_ref4$fetchInterval=_ref4.fetchInterval,fetchInterval=_ref4$fetchInterval===void 0?DEFAULT_FETCH_INTERVAL:_ref4$fetchInterval,_ref4$fetchLimit=_ref4.fetchLimit,fetchLimit=_ref4$fetchLimit===void 0?DEFAULT_FETCH_LIMIT:_ref4$fetchLimit;updateFetchPool(fetchInterval,fetchLimit);}},{key:"setting",get:function get(){return this._setting;}},{key:"eventName",get:function get(){return this._eventName;}},{key:"rule",get:function get(){// console.log("get rule", this._rule); return this._rule;},set:function set(rule){// console.log("set rule", rule); this._rule=rule;// 广播消息 var eventName=this._eventName;window.dispatchEvent(new CustomEvent(eventName,{detail:{action:MSG_TRANS_CURRULE,args:rule}}));}}]);return Translator;}(); @@ -34498,16 +34542,19 @@ var Favorite = __webpack_require__(5922); // EXTERNAL MODULE: ./node_modules/.pnpm/@mui+icons-material@5.14.9_@mui+material@5.14.10_@types+react@18.2.22_react@18.2.0/node_modules/@mui/icons-material/FavoriteBorder.js var FavoriteBorder = __webpack_require__(8543); ;// CONCATENATED MODULE: ./src/hooks/FavWords.js -function useFavWords(){var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useState3=(0,react.useState)({}),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),favWords=_useState4[0],setFavWords=_useState4[1];var _useSyncMeta=useSyncMeta(),updateSyncMeta=_useSyncMeta.updateSyncMeta;var toggleFav=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(word){var favs;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:favs=_objectSpread2({},favWords);if(favs[word]){delete favs[word];}else{favs[word]={createdAt:Date.now()};}_context.next=4;return setWords(favs);case 4:_context.next=6;return updateSyncMeta(KV_WORDS_KEY);case 6:_context.next=8;return trySyncWords();case 8:setFavWords(favs);case 9:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[updateSyncMeta,favWords]);var mergeWords=(0,react.useCallback)(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(newWords){var favs;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:favs=_objectSpread2({},favWords);newWords.forEach(function(word){if(!favs[word]){favs[word]={createdAt:Date.now()};}});_context2.next=4;return setWords(favs);case 4:_context2.next=6;return updateSyncMeta(KV_WORDS_KEY);case 6:_context2.next=8;return trySyncWords();case 8:setFavWords(favs);case 9:case"end":return _context2.stop();}},_callee2);}));return function(_x2){return _ref2.apply(this,arguments);};}(),[updateSyncMeta,favWords]);var clearWords=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return setWords({});case 2:_context3.next=4;return updateSyncMeta(KV_WORDS_KEY);case 4:_context3.next=6;return trySyncWords();case 6:setFavWords({});case 7:case"end":return _context3.stop();}},_callee3);})),[updateSyncMeta]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var _favWords;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;setLoading(true);_context4.next=4;return trySyncWords();case 4:_context4.next=6;return getWordsWithDefault();case 6:_favWords=_context4.sent;setFavWords(_favWords);_context4.next=13;break;case 10:_context4.prev=10;_context4.t0=_context4["catch"](0);console.log("[query fav]",_context4.t0);case 13:_context4.prev=13;setLoading(false);return _context4.finish(13);case 16:case"end":return _context4.stop();}},_callee4,null,[[0,10,13,16]]);}))();},[]);return{loading:loading,favWords:favWords,toggleFav:toggleFav,mergeWords:mergeWords,clearWords:clearWords};} +function useFavWords(){var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useState3=(0,react.useState)({}),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),favWords=_useState4[0],setFavWords=_useState4[1];var _useSyncMeta=useSyncMeta(),updateSyncMeta=_useSyncMeta.updateSyncMeta;var toggleFav=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(word){var favs;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:favs=_objectSpread2({},favWords);if(favs[word]){delete favs[word];}else{favs[word]={createdAt:Date.now()};}_context.next=4;return setWords(favs);case 4:_context.next=6;return updateSyncMeta(KV_WORDS_KEY);case 6:_context.next=8;return trySyncWords();case 8:setFavWords(favs);case 9:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[updateSyncMeta,favWords]);var mergeWords=(0,react.useCallback)(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(newWords){var favs;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:favs=_objectSpread2({},favWords);newWords.forEach(function(word){if(!favs[word]){favs[word]={createdAt:Date.now()};}});_context2.next=4;return setWords(favs);case 4:_context2.next=6;return updateSyncMeta(KV_WORDS_KEY);case 6:_context2.next=8;return trySyncWords();case 8:setFavWords(favs);case 9:case"end":return _context2.stop();}},_callee2);}));return function(_x2){return _ref2.apply(this,arguments);};}(),[updateSyncMeta,favWords]);var clearWords=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return setWords({});case 2:_context3.next=4;return updateSyncMeta(KV_WORDS_KEY);case 4:_context3.next=6;return trySyncWords();case 6:setFavWords({});case 7:case"end":return _context3.stop();}},_callee3);})),[updateSyncMeta]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var _favWords;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;setLoading(true);_context4.next=4;return trySyncWords();case 4:_context4.next=6;return getWordsWithDefault();case 6:_favWords=_context4.sent;setFavWords(_favWords);_context4.next=13;break;case 10:_context4.prev=10;_context4.t0=_context4["catch"](0);log_kissLog(_context4.t0,"query fav");case 13:_context4.prev=13;setLoading(false);return _context4.finish(13);case 16:case"end":return _context4.stop();}},_callee4,null,[[0,10,13,16]]);}))();},[]);return{loading:loading,favWords:favWords,toggleFav:toggleFav,mergeWords:mergeWords,clearWords:clearWords};} ;// CONCATENATED MODULE: ./src/views/Selection/FavBtn.js -function FavBtn(_ref){var word=_ref.word;var _useFavWords=useFavWords(),favWords=_useFavWords.favWords,toggleFav=_useFavWords.toggleFav;var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var handleClick=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);_context.next=4;return toggleFav(word);case 4:_context.next=9;break;case 6:_context.prev=6;_context.t0=_context["catch"](0);console.log("[set fav]",_context.t0);case 9:_context.prev=9;setLoading(false);return _context.finish(9);case 12:case"end":return _context.stop();}},_callee,null,[[0,6,9,12]]);}));return function handleClick(){return _ref2.apply(this,arguments);};}();return/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{disabled:loading,size:"small",onClick:handleClick,children:favWords[word]?/*#__PURE__*/(0,jsx_runtime.jsx)(Favorite/* default */.Z,{fontSize:"inherit"}):/*#__PURE__*/(0,jsx_runtime.jsx)(FavoriteBorder/* default */.Z,{fontSize:"inherit"})});} +function FavBtn(_ref){var word=_ref.word;var _useFavWords=useFavWords(),favWords=_useFavWords.favWords,toggleFav=_useFavWords.toggleFav;var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var handleClick=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);_context.next=4;return toggleFav(word);case 4:_context.next=9;break;case 6:_context.prev=6;_context.t0=_context["catch"](0);log_kissLog(_context.t0,"set fav");case 9:_context.prev=9;setLoading(false);return _context.finish(9);case 12:case"end":return _context.stop();}},_callee,null,[[0,6,9,12]]);}));return function handleClick(){return _ref2.apply(this,arguments);};}();return/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{disabled:loading,size:"small",onClick:handleClick,children:favWords[word]?/*#__PURE__*/(0,jsx_runtime.jsx)(Favorite/* default */.Z,{fontSize:"inherit"}):/*#__PURE__*/(0,jsx_runtime.jsx)(FavoriteBorder/* default */.Z,{fontSize:"inherit"})});} ;// CONCATENATED MODULE: ./src/views/Selection/DictCont.js var phonicMap={en_phonic:"英",us_phonic:"美"};function DictCont(_ref){var _dictResult$voice;var dictResult=_ref.dictResult;if(!dictResult){return;}return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"flex-start",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{variant:"subtitle1",style:{fontWeight:"bold"},children:dictResult.src}),/*#__PURE__*/(0,jsx_runtime.jsx)(FavBtn,{word:dictResult.src})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Typography_Typography,{component:"div",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{children:(_dictResult$voice=dictResult.voice)===null||_dictResult$voice===void 0?void 0:_dictResult$voice.map(Object.entries).map(function(item){return item[0];}).map(function(_ref2){var _ref3=(0,slicedToArray/* default */.Z)(_ref2,2),key=_ref3[0],val=_ref3[1];return"".concat(phonicMap[key]||key," ").concat(val);}).join(" ")}),/*#__PURE__*/(0,jsx_runtime.jsx)("ul",{style:{margin:"0.5em 0"},children:dictResult.content[0].mean.map(function(_ref4,idx){var pre=_ref4.pre,cont=_ref4.cont;return/*#__PURE__*/(0,jsx_runtime.jsxs)("li",{children:[pre&&"[".concat(pre,"] "),Object.keys(cont).join("; ")]},idx);})})]})]});} +;// CONCATENATED MODULE: ./src/views/Selection/SugCont.js +function SugCont(_ref){var sugs=_ref.sugs;return/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:sugs.map(function(_ref2){var k=_ref2.k,v=_ref2.v;return/*#__PURE__*/(0,jsx_runtime.jsxs)(Typography_Typography,{component:"div",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{children:k}),/*#__PURE__*/(0,jsx_runtime.jsx)("ul",{style:{margin:"0"},children:/*#__PURE__*/(0,jsx_runtime.jsx)("li",{children:v})})]},k);})});} ;// CONCATENATED MODULE: ./src/views/Selection/TranCont.js -function TranCont(_ref){var text=_ref.text,translator=_ref.translator,fromLang=_ref.fromLang,toLang=_ref.toLang,_ref$toLang=_ref.toLang2,toLang2=_ref$toLang===void 0?"en":_ref$toLang,setToLang=_ref.setToLang,setToLang2=_ref.setToLang2,transApis=_ref.transApis;var i18n=useI18n();var _useState=(0,react.useState)(""),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),trText=_useState2[0],setTrText=_useState2[1];var _useState3=(0,react.useState)(false),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),loading=_useState4[0],setLoading=_useState4[1];var _useState5=(0,react.useState)(""),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),error=_useState6[0],setError=_useState6[1];var _useState7=(0,react.useState)(null),_useState8=(0,slicedToArray/* default */.Z)(_useState7,2),dictResult=_useState8[0],setDictResult=_useState8[1];(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var detectLang,apiSetting,tranRes,dictRes;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);setTrText("");setError("");setDictResult(null);// 互译 -if(!(toLang!==toLang2&&toLang2!=="none")){_context.next=13;break;}_context.next=8;return apiBaiduLangdetect(text);case 8:detectLang=_context.sent;if(!(detectLang===toLang)){_context.next=13;break;}setToLang(toLang2);setToLang2(toLang);return _context.abrupt("return");case 13:apiSetting=transApis[translator]||DEFAULT_TRANS_APIS[translator];_context.next=16;return apiTranslate({text:text,translator:translator,fromLang:fromLang,toLang:toLang,apiSetting:apiSetting});case 16:tranRes=_context.sent;setTrText(tranRes[0]);// 词典 -if(!(isValidWord(text)&&toLang.startsWith("zh"))){_context.next=27;break;}if(!(fromLang==="en"&&translator===OPT_TRANS_BAIDU)){_context.next=23;break;}tranRes[2].type===1&&setDictResult(JSON.parse(tranRes[2].result));_context.next=27;break;case 23:_context.next=25;return apiTranslate({text:text,translator:OPT_TRANS_BAIDU,fromLang:"en",toLang:"zh-CN"});case 25:dictRes=_context.sent;dictRes[2].type===1&&setDictResult(JSON.parse(dictRes[2].result));case 27:_context.next=32;break;case 29:_context.prev=29;_context.t0=_context["catch"](0);setError(_context.t0.message);case 32:_context.prev=32;setLoading(false);return _context.finish(32);case 35:case"end":return _context.stop();}},_callee,null,[[0,29,32,35]]);}))();},[text,translator,fromLang,toLang,toLang2,setToLang,setToLang2,transApis]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("translated_text")// disabled -,fullWidth:true,multiline:true,value:trText,InputProps:{endAdornment:/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{direction:"row",sx:{position:"absolute",right:0,top:0},children:/*#__PURE__*/(0,jsx_runtime.jsx)(CopyBtn,{text:trText})})}})}),loading&&/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:24}),error&&/*#__PURE__*/(0,jsx_runtime.jsx)(Alert_Alert,{severity:"error",children:error}),dictResult&&/*#__PURE__*/(0,jsx_runtime.jsx)(DictCont,{dictResult:dictResult})]});} +function TranCont(_ref){var text=_ref.text,translator=_ref.translator,fromLang=_ref.fromLang,toLang=_ref.toLang,_ref$toLang=_ref.toLang2,toLang2=_ref$toLang===void 0?"en":_ref$toLang,setToLang=_ref.setToLang,setToLang2=_ref.setToLang2,transApis=_ref.transApis;var i18n=useI18n();var _useState=(0,react.useState)(""),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),trText=_useState2[0],setTrText=_useState2[1];var _useState3=(0,react.useState)(false),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),loading=_useState4[0],setLoading=_useState4[1];var _useState5=(0,react.useState)(""),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),error=_useState6[0],setError=_useState6[1];var _useState7=(0,react.useState)(null),_useState8=(0,slicedToArray/* default */.Z)(_useState7,2),dictResult=_useState8[0],setDictResult=_useState8[1];var _useState9=(0,react.useState)([]),_useState10=(0,slicedToArray/* default */.Z)(_useState9,2),sugs=_useState10[0],setSugs=_useState10[1];(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var detectLang,apiSetting,tranRes,dictRes;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);setTrText("");setError("");setDictResult(null);setSugs([]);// 互译 +if(!(toLang!==toLang2&&toLang2!=="none")){_context.next=14;break;}_context.next=9;return apiBaiduLangdetect(text);case 9:detectLang=_context.sent;if(!(detectLang===toLang)){_context.next=14;break;}setToLang(toLang2);setToLang2(toLang);return _context.abrupt("return");case 14:// 翻译 +apiSetting=transApis[translator]||DEFAULT_TRANS_APIS[translator];_context.next=17;return apiTranslate({text:text,translator:translator,fromLang:fromLang,toLang:toLang,apiSetting:apiSetting});case 17:tranRes=_context.sent;setTrText(tranRes[0]);// 词典 +if(!(isValidWord(text)&&toLang.startsWith("zh"))){_context.next=28;break;}if(!(fromLang==="en"&&translator===OPT_TRANS_BAIDU)){_context.next=24;break;}tranRes[2].type===1&&setDictResult(JSON.parse(tranRes[2].result));_context.next=28;break;case 24:_context.next=26;return apiTranslate({text:text,translator:OPT_TRANS_BAIDU,fromLang:"en",toLang:"zh-CN"});case 26:dictRes=_context.sent;dictRes[2].type===1&&setDictResult(JSON.parse(dictRes[2].result));case 28:if(!(text.length<20)){_context.next=34;break;}_context.t0=setSugs;_context.next=32;return apiBaiduSuggest(text);case 32:_context.t1=_context.sent;(0,_context.t0)(_context.t1);case 34:_context.next=39;break;case 36:_context.prev=36;_context.t2=_context["catch"](0);setError(_context.t2.message);case 39:_context.prev=39;setLoading(false);return _context.finish(39);case 42:case"end":return _context.stop();}},_callee,null,[[0,36,39,42]]);}))();},[text,translator,fromLang,toLang,toLang2,setToLang,setToLang2,transApis]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("translated_text")// disabled +,fullWidth:true,multiline:true,value:trText,InputProps:{endAdornment:/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{direction:"row",sx:{position:"absolute",right:0,top:0},children:/*#__PURE__*/(0,jsx_runtime.jsx)(CopyBtn,{text:trText})})}})}),loading&&/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:24}),error&&/*#__PURE__*/(0,jsx_runtime.jsx)(Alert_Alert,{severity:"error",children:error}),dictResult&&/*#__PURE__*/(0,jsx_runtime.jsx)(DictCont,{dictResult:dictResult}),sugs.length>0&&/*#__PURE__*/(0,jsx_runtime.jsx)(SugCont,{sugs:sugs})]});} ;// CONCATENATED MODULE: ./src/views/Selection/TranBox.js function TranForm(_ref){var text=_ref.text,setText=_ref.setText,tranboxSetting=_ref.tranboxSetting,transApis=_ref.transApis;var i18n=useI18n();var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),editMode=_useState2[0],setEditMode=_useState2[1];var _useState3=(0,react.useState)(""),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),editText=_useState4[0],setEditText=_useState4[1];var _useState5=(0,react.useState)(tranboxSetting.translator),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),translator=_useState6[0],setTranslator=_useState6[1];var _useState7=(0,react.useState)(tranboxSetting.fromLang),_useState8=(0,slicedToArray/* default */.Z)(_useState7,2),fromLang=_useState8[0],setFromLang=_useState8[1];var _useState9=(0,react.useState)(tranboxSetting.toLang),_useState10=(0,slicedToArray/* default */.Z)(_useState9,2),toLang=_useState10[0],setToLang=_useState10[1];var _useState11=(0,react.useState)(tranboxSetting.toLang2),_useState12=(0,slicedToArray/* default */.Z)(_useState11,2),toLang2=_useState12[0],setToLang2=_useState12[1];var inputRef=(0,react.useRef)(null);return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{sx:{p:2},spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Grid_Grid,{container:true,spacing:2,columns:12,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:4,sm:4,md:4,lg:4,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},fullWidth:true,size:"small",name:"fromLang",value:fromLang,label:i18n("from_lang"),onChange:function onChange(e){setFromLang(e.target.value);},children:OPT_LANGS_FROM.map(function(_ref2){var _ref3=(0,slicedToArray/* default */.Z)(_ref2,2),lang=_ref3[0],name=_ref3[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:4,sm:4,md:4,lg:4,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},fullWidth:true,size:"small",name:"toLang",value:toLang,label:i18n("to_lang"),onChange:function onChange(e){setToLang(e.target.value);},children:OPT_LANGS_TO.map(function(_ref4){var _ref5=(0,slicedToArray/* default */.Z)(_ref4,2),lang=_ref5[0],name=_ref5[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:4,sm:4,md:4,lg:4,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:true}},fullWidth:true,size:"small",value:translator,name:"translator",label:i18n("translate_service"),onChange:function onChange(e){setTranslator(e.target.value);},children:OPT_TRANS_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:item},item);})})})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("original_text"),inputRef:inputRef,fullWidth:true,multiline:true,value:editMode?editText:text,disabled:!editMode,onChange:function onChange(e){setEditText(e.target.value);},onClick:function onClick(){setEditMode(true);setEditText(text);var timer=setTimeout(function(){var _inputRef$current;clearTimeout(timer);(_inputRef$current=inputRef.current)===null||_inputRef$current===void 0?void 0:_inputRef$current.focus();},100);},onBlur:function onBlur(){setEditMode(false);setText(editText.trim());},InputProps:{endAdornment:/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{direction:"row",sx:{position:"absolute",right:0,top:0},children:editMode?/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",onClick:function onClick(e){e.stopPropagation();},children:/*#__PURE__*/(0,jsx_runtime.jsx)(Done/* default */.Z,{fontSize:"inherit"})}):/*#__PURE__*/(0,jsx_runtime.jsx)(CopyBtn,{text:text})})}})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TranCont,{text:text,translator:translator,fromLang:fromLang,toLang:toLang,toLang2:toLang2,setToLang:setToLang,setToLang2:setToLang2,transApis:transApis})]});}function TranBox(_ref6){var text=_ref6.text,setText=_ref6.setText,setShowBox=_ref6.setShowBox,tranboxSetting=_ref6.tranboxSetting,transApis=_ref6.transApis,boxSize=_ref6.boxSize,setBoxSize=_ref6.setBoxSize,boxPosition=_ref6.boxPosition,setBoxPosition=_ref6.setBoxPosition;return/*#__PURE__*/(0,jsx_runtime.jsx)(SettingProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Theme,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(DraggableResizable,{defaultPosition:boxPosition,defaultSize:boxSize,header:/*#__PURE__*/(0,jsx_runtime.jsx)(Header,{setShowPopup:setShowBox}),onChangeSize:setBoxSize,onChangePosition:setBoxPosition,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{}),/*#__PURE__*/(0,jsx_runtime.jsx)(TranForm,{text:text,setText:setText,tranboxSetting:tranboxSetting,transApis:transApis})]})})});} ;// CONCATENATED MODULE: ./src/views/Selection/index.js @@ -34515,14 +34562,14 @@ function Slection(_ref){var contextMenuType=_ref.contextMenuType,tranboxSetting= function _handleMouseup(){_handleMouseup=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(e){var _window$getSelection2,_window$getSelection3;var selectedText,_ref2,pageX,pageY;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:e.stopPropagation();_context.next=3;return sleep(10);case 3:selectedText=((_window$getSelection2=window.getSelection())===null||_window$getSelection2===void 0?void 0:(_window$getSelection3=_window$getSelection2.toString())===null||_window$getSelection3===void 0?void 0:_window$getSelection3.trim())||"";setSelText(selectedText);if(selectedText){_context.next=8;break;}setShowBtn(false);return _context.abrupt("return");case 8:_ref2=isMobile?e.changedTouches[0]:e,pageX=_ref2.pageX,pageY=_ref2.pageY;!tranboxSetting.hideTranBtn&&setShowBtn(true);// setPosition({ x: e.clientX, y: e.clientY }); setPosition({x:pageX,y:pageY});case 11:case"end":return _context.stop();}},_callee);}));return _handleMouseup.apply(this,arguments);}window.addEventListener("mouseup",handleMouseup);// window.addEventListener(isMobile ? "touchend" : "mouseup", handleMouseup); return function(){window.removeEventListener(isMobile?"touchend":"mouseup",handleMouseup);};},[tranboxSetting.hideTranBtn]);(0,react.useEffect)(function(){if(isExt){return;}var clearShortcut=shortcutRegister(tranboxSetting.tranboxShortcut||DEFAULT_TRANBOX_SHORTCUT,handleTranbox);return function(){clearShortcut();};},[tranboxSetting.tranboxShortcut,handleTranbox]);(0,react.useEffect)(function(){window.addEventListener(MSG_OPEN_TRANBOX,handleTranbox);return function(){window.removeEventListener(MSG_OPEN_TRANBOX,handleTranbox);};},[handleTranbox]);(0,react.useEffect)(function(){if(!isGm){return;}// 注册菜单 -try{var menuCommandIds=[];contextMenuType!==0&&menuCommandIds.push(GM.registerMenuCommand("Translate Selected Text",function(event){handleTranbox();},"S"));return function(){menuCommandIds.forEach(function(id){GM.unregisterMenuCommand(id);});};}catch(err){console.log("[registerMenuCommand]",err);}},[handleTranbox,contextMenuType]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[showBox&&/*#__PURE__*/(0,jsx_runtime.jsx)(TranBox,{text:text,setText:setText,boxSize:boxSize,setBoxSize:setBoxSize,boxPosition:boxPosition,setBoxPosition:setBoxPosition,tranboxSetting:tranboxSetting,transApis:transApis,setShowBox:setShowBox}),showBtn&&/*#__PURE__*/(0,jsx_runtime.jsx)(TranBtn,{position:position,tranboxSetting:tranboxSetting,onClick:handleClick})]});} +try{var menuCommandIds=[];contextMenuType!==0&&menuCommandIds.push(GM.registerMenuCommand("Translate Selected Text",function(event){handleTranbox();},"S"));return function(){menuCommandIds.forEach(function(id){GM.unregisterMenuCommand(id);});};}catch(err){log_kissLog(err,"registerMenuCommand");}},[handleTranbox,contextMenuType]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[showBox&&/*#__PURE__*/(0,jsx_runtime.jsx)(TranBox,{text:text,setText:setText,boxSize:boxSize,setBoxSize:setBoxSize,boxPosition:boxPosition,setBoxPosition:setBoxPosition,tranboxSetting:tranboxSetting,transApis:transApis,setShowBox:setShowBox}),showBtn&&/*#__PURE__*/(0,jsx_runtime.jsx)(TranBtn,{position:position,tranboxSetting:tranboxSetting,onClick:handleClick})]});} ;// CONCATENATED MODULE: ./src/libs/touch.js function touchTapListener(fn,touchsLength){var handleTouchend=function handleTouchend(e){if(e.touches.length===touchsLength){fn();}};document.addEventListener("touchstart",handleTouchend);return function(){document.removeEventListener("touchstart",handleTouchend);};} ;// CONCATENATED MODULE: ./src/libs/gm.js var MSG_GM_xmlHttpRequest="xmlHttpRequest";var MSG_GM_setValue="setValue";var MSG_GM_getValue="getValue";var MSG_GM_deleteValue="deleteValue";var MSG_GM_info="info";/** * 注入页面的脚本,请求并接受GM接口信息 * @param {*} param0 - */var injectScript=function injectScript(ping){window.APP_INFO={name:"KISS Translator",version:"1.8.3",eventName:ping};};/** + */var injectScript=function injectScript(ping){window.APP_INFO={name:"KISS Translator",version:"1.8.4",eventName:ping};};/** * 适配GM脚本 */var adaptScript=function adaptScript(ping){var promiseGM=function promiseGM(action,args){var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:5000;return new Promise(function(resolve,reject){var pong=genEventName();var handleEvent=function handleEvent(e){window.removeEventListener(pong,handleEvent);var _e$detail=e.detail,data=_e$detail.data,error=_e$detail.error;if(error){reject(new Error(error));}else{resolve(data);}};window.addEventListener(pong,handleEvent);window.dispatchEvent(new CustomEvent(ping,{detail:{action:action,args:args,pong:pong}}));setTimeout(function(){window.removeEventListener(pong,handleEvent);reject(new Error("timeout"));},timeout);});};window.KISS_GM={fetch:function fetch(input,init){return promiseGM(MSG_GM_xmlHttpRequest,{input:input,init:init});},setValue:function setValue(key,val){return promiseGM(MSG_GM_setValue,{key:key,val:val});},getValue:function getValue(key){return promiseGM(MSG_GM_getValue,{key:key});},deleteValue:function deleteValue(key){return promiseGM(MSG_GM_deleteValue,{key:key});},getInfo:function(){var _getInfo=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(){return _regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:if(window.GM_info){_context.next=4;break;}_context.next=3;return promiseGM(MSG_GM_info);case 3:window.GM_info=_context.sent;case 4:return _context.abrupt("return",window.GM_info);case 5:case"end":return _context.stop();}},_callee);}));function getInfo(){return _getInfo.apply(this,arguments);}return getInfo;}()};};/** * 监听并回应页面对GM接口的请求 @@ -34534,17 +34581,17 @@ var MSG_GM_xmlHttpRequest="xmlHttpRequest";var MSG_GM_setValue="setValue";var MS * @param {*} href * @param {*} param1 * @returns - */var isInBlacklist=function isInBlacklist(href,_ref){var _ref$blacklist=_ref.blacklist,blacklist=_ref$blacklist===void 0?DEFAULT_BLACKLIST.join(",\n"):_ref$blacklist;return blacklist.split(/\n|,/).some(function(url){return isMatch(href,url.trim());});}; + */var isInBlacklist=function isInBlacklist(href,_ref){var blacklist=_ref.blacklist;return blacklist.split(/\n|,/).some(function(url){return isMatch(href,url.trim());});}; ;// CONCATENATED MODULE: ./src/libs/inputTranslate.js function isInputNode(node){return node.nodeName==="INPUT"||node.nodeName==="TEXTAREA";}function isEditAbleNode(node){return node.hasAttribute("contenteditable");}function selectContent(node){node.focus();var range=document.createRange();range.selectNodeContents(node);var selection=window.getSelection();selection.removeAllRanges();selection.addRange(range);}function pasteContentEvent(node,text){node.focus();var data=new DataTransfer();data.setData("text/plain",text);var event=new ClipboardEvent("paste",{clipboardData:data});document.dispatchEvent(event);data.clearData();}function pasteContentCommand(node,text){node.focus();document.execCommand("insertText",false,text);}function collapseToEnd(node){node.focus();var selection=window.getSelection();selection.collapseToEnd();}function getNodeText(node){if(isInputNode(node)){return node.value;}return node.innerText||node.textContent||"";}function addLoading(node,loadingId){var _node$offsetParent;var div=document.createElement("div");div.id=loadingId;div.innerHTML=loadingSvg;div.style.cssText="\n width: ".concat(node.offsetWidth,"px;\n height: ").concat(node.offsetHeight,"px;\n line-height: ").concat(node.offsetHeight,"px;\n position: absolute;\n text-align: center;\n left: ").concat(node.offsetLeft,"px;\n top: ").concat(node.offsetTop,"px;\n z-index: 2147483647;\n ");(_node$offsetParent=node.offsetParent)===null||_node$offsetParent===void 0?void 0:_node$offsetParent.appendChild(div);}function removeLoading(node,loadingId){var div=node.offsetParent.querySelector("#".concat(loadingId));if(div){div.remove();}}/** * 输入框翻译 - */function inputTranslate(_ref){var _ref$inputRule=_ref.inputRule,_ref$inputRule2=_ref$inputRule===void 0?DEFAULT_INPUT_RULE:_ref$inputRule,transOpen=_ref$inputRule2.transOpen,triggerShortcut=_ref$inputRule2.triggerShortcut,translator=_ref$inputRule2.translator,fromLang=_ref$inputRule2.fromLang,toLang=_ref$inputRule2.toLang,triggerCount=_ref$inputRule2.triggerCount,triggerTime=_ref$inputRule2.triggerTime,transSign=_ref$inputRule2.transSign,transApis=_ref.transApis,detectRemote=_ref.detectRemote;if(!transOpen){return;}var apiSetting=(transApis===null||transApis===void 0?void 0:transApis[translator])||DEFAULT_TRANS_APIS[translator];if(triggerShortcut.length===0){triggerShortcut=DEFAULT_INPUT_SHORTCUT;triggerCount=1;}stepShortcutRegister(triggerShortcut,/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var node,initText,text,res,lang,loadingId,deLang,_yield$apiTranslate,_yield$apiTranslate2,trText,isSame;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:node=document.activeElement;if(node){_context.next=3;break;}return _context.abrupt("return");case 3:while(node.shadowRoot){node=node.shadowRoot.activeElement;}if(!(!isInputNode(node)&&!isEditAbleNode(node))){_context.next=6;break;}return _context.abrupt("return");case 6:initText=getNodeText(node);if(triggerShortcut.length===1&&triggerShortcut[0].length===1){// todo: remove multiple char + */function inputTranslate(_ref){var _ref$inputRule=_ref.inputRule,_ref$inputRule2=_ref$inputRule===void 0?DEFAULT_INPUT_RULE:_ref$inputRule,transOpen=_ref$inputRule2.transOpen,triggerShortcut=_ref$inputRule2.triggerShortcut,translator=_ref$inputRule2.translator,fromLang=_ref$inputRule2.fromLang,toLang=_ref$inputRule2.toLang,triggerCount=_ref$inputRule2.triggerCount,triggerTime=_ref$inputRule2.triggerTime,transSign=_ref$inputRule2.transSign,transApis=_ref.transApis;if(!transOpen){return;}var apiSetting=(transApis===null||transApis===void 0?void 0:transApis[translator])||DEFAULT_TRANS_APIS[translator];if(triggerShortcut.length===0){triggerShortcut=DEFAULT_INPUT_SHORTCUT;triggerCount=1;}stepShortcutRegister(triggerShortcut,/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var node,initText,text,res,lang,loadingId,_yield$apiTranslate,_yield$apiTranslate2,trText,isSame;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:node=document.activeElement;if(node){_context.next=3;break;}return _context.abrupt("return");case 3:while(node.shadowRoot){node=node.shadowRoot.activeElement;}if(!(!isInputNode(node)&&!isEditAbleNode(node))){_context.next=6;break;}return _context.abrupt("return");case 6:initText=getNodeText(node);if(triggerShortcut.length===1&&triggerShortcut[0].length===1){// todo: remove multiple char initText=removeEndchar(initText,triggerShortcut[0],triggerCount);}if(initText.trim()){_context.next=10;break;}return _context.abrupt("return");case 10:text=initText;if(transSign){res=matchInputStr(text,transSign);if(res){lang=res[1];if(lang==="zh"||lang==="cn"){lang="zh-CN";}else if(lang==="tw"||lang==="hk"){lang="zh-TW";}if(lang&&OPT_LANGS_LIST.includes(lang)){toLang=lang;}text=res[2];}}// console.log("input -->", text); -loadingId="kiss-"+utils_genEventName();_context.prev=13;addLoading(node,loadingId);_context.next=17;return tryDetectLang(text,detectRemote);case 17:deLang=_context.sent;if(!(deLang&&toLang.includes(deLang))){_context.next=20;break;}return _context.abrupt("return");case 20:_context.next=22;return apiTranslate({translator:translator,text:text,fromLang:fromLang,toLang:toLang,apiSetting:apiSetting});case 22:_yield$apiTranslate=_context.sent;_yield$apiTranslate2=(0,slicedToArray/* default */.Z)(_yield$apiTranslate,2);trText=_yield$apiTranslate2[0];isSame=_yield$apiTranslate2[1];if(!(!trText||isSame)){_context.next=28;break;}return _context.abrupt("return");case 28:if(!isInputNode(node)){_context.next=32;break;}node.value=trText;node.dispatchEvent(new Event("input",{bubbles:true,cancelable:true}));return _context.abrupt("return");case 32:selectContent(node);_context.next=35;return sleep(200);case 35:pasteContentEvent(node,trText);_context.next=38;return sleep(200);case 38:if(!getNodeText(node).startsWith(initText)){_context.next=44;break;}pasteContentCommand(node,trText);_context.next=42;return sleep(100);case 42:_context.next=45;break;case 44:collapseToEnd(node);case 45:_context.next=50;break;case 47:_context.prev=47;_context.t0=_context["catch"](13);console.log("[translate input]",_context.t0.message);case 50:_context.prev=50;removeLoading(node,loadingId);return _context.finish(50);case 53:case"end":return _context.stop();}},_callee,null,[[13,47,50,53]]);})),triggerCount,triggerTime);} +loadingId="kiss-"+utils_genEventName();_context.prev=13;addLoading(node,loadingId);_context.next=17;return apiTranslate({translator:translator,text:text,fromLang:fromLang,toLang:toLang,apiSetting:apiSetting});case 17:_yield$apiTranslate=_context.sent;_yield$apiTranslate2=(0,slicedToArray/* default */.Z)(_yield$apiTranslate,2);trText=_yield$apiTranslate2[0];isSame=_yield$apiTranslate2[1];if(!(!trText||isSame)){_context.next=23;break;}return _context.abrupt("return");case 23:if(!isInputNode(node)){_context.next=27;break;}node.value=trText;node.dispatchEvent(new Event("input",{bubbles:true,cancelable:true}));return _context.abrupt("return");case 27:selectContent(node);_context.next=30;return sleep(200);case 30:pasteContentEvent(node,trText);_context.next=33;return sleep(200);case 33:if(!getNodeText(node).startsWith(initText)){_context.next=39;break;}pasteContentCommand(node,trText);_context.next=37;return sleep(100);case 37:_context.next=40;break;case 39:collapseToEnd(node);case 40:_context.next=45;break;case 42:_context.prev=42;_context.t0=_context["catch"](13);log_kissLog(_context.t0,"translate input");case 45:_context.prev=45;removeLoading(node,loadingId);return _context.finish(45);case 48:case"end":return _context.stop();}},_callee,null,[[13,42,45,48]]);})),triggerCount,triggerTime);} ;// CONCATENATED MODULE: ./src/common.js /** * 油猴脚本设置页面 - */function runSettingPage(){var _GM,_GM$info,_GM$info$script,_GM$info$script$grant;if((_GM=GM)!==null&&_GM!==void 0&&(_GM$info=_GM.info)!==null&&_GM$info!==void 0&&(_GM$info$script=_GM$info.script)!==null&&_GM$info$script!==void 0&&(_GM$info$script$grant=_GM$info$script.grant)!==null&&_GM$info$script$grant!==void 0&&_GM$info$script$grant.includes("unsafeWindow")){unsafeWindow.GM=GM;unsafeWindow.APP_INFO={name:"KISS Translator",version:"1.8.3"};}else{var ping=utils_genEventName();window.addEventListener(ping,handlePing);// window.eval(`(${injectScript})("${ping}")`); // eslint-disable-line + */function runSettingPage(){var _GM,_GM$info,_GM$info$script,_GM$info$script$grant;if((_GM=GM)!==null&&_GM!==void 0&&(_GM$info=_GM.info)!==null&&_GM$info!==void 0&&(_GM$info$script=_GM$info.script)!==null&&_GM$info$script!==void 0&&(_GM$info$script$grant=_GM$info$script.grant)!==null&&_GM$info$script$grant!==void 0&&_GM$info$script$grant.includes("unsafeWindow")){unsafeWindow.GM=GM;unsafeWindow.APP_INFO={name:"KISS Translator",version:"1.8.4"};}else{var ping=utils_genEventName();window.addEventListener(ping,handlePing);// window.eval(`(${injectScript})("${ping}")`); // eslint-disable-line var script=document.createElement("script");script.textContent="(".concat(injectScript,")(\"").concat(ping,"\")");document.head.append(script);}}/** * 插件监听后端事件 * @param {*} translator @@ -34559,7 +34606,7 @@ var script=document.createElement("script");script.textContent="(".concat(inject * 划词翻译 * @param {*} param0 * @returns - */function _showFab(){_showFab=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(translator){var fab,$action,shadowContainer,emotionRoot,shadowRootElement,cache;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return getFabWithDefault();case 2:fab=_context2.sent;$action=document.createElement("div");$action.setAttribute("id",APP_LCNAME);document.body.parentElement.appendChild($action);shadowContainer=$action.attachShadow({mode:"closed"});emotionRoot=document.createElement("style");shadowRootElement=document.createElement("div");shadowContainer.appendChild(emotionRoot);shadowContainer.appendChild(shadowRootElement);cache=(0,emotion_cache_browser_esm/* default */.Z)({key:APP_LCNAME,prepend:true,container:emotionRoot});client.createRoot(shadowRootElement).render(/*#__PURE__*/(0,jsx_runtime.jsx)(react.StrictMode,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(emotion_element_c39617d8_browser_esm.C,{value:cache,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Action,{translator:translator,fab:fab})})}));case 13:case"end":return _context2.stop();}},_callee2);}));return _showFab.apply(this,arguments);}function showTransbox(_ref4){var contextMenuType=_ref4.contextMenuType,_ref4$tranboxSetting=_ref4.tranboxSetting,tranboxSetting=_ref4$tranboxSetting===void 0?DEFAULT_TRANBOX_SETTING:_ref4$tranboxSetting,transApis=_ref4.transApis;if(!(tranboxSetting!==null&&tranboxSetting!==void 0&&tranboxSetting.transOpen)){return;}var $tranbox=document.createElement("div");$tranbox.setAttribute("id","kiss-transbox");document.body.parentElement.appendChild($tranbox);var shadowContainer=$tranbox.attachShadow({mode:"closed"});var emotionRoot=document.createElement("style");var shadowRootElement=document.createElement("div");shadowContainer.appendChild(emotionRoot);shadowContainer.appendChild(shadowRootElement);var cache=(0,emotion_cache_browser_esm/* default */.Z)({key:"kiss-transbox",prepend:true,container:emotionRoot});client.createRoot(shadowRootElement).render(/*#__PURE__*/(0,jsx_runtime.jsx)(react.StrictMode,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(emotion_element_c39617d8_browser_esm.C,{value:cache,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Slection,{contextMenuType:contextMenuType,tranboxSetting:tranboxSetting,transApis:transApis})})}));}/** + */function _showFab(){_showFab=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(translator){var fab,$action,shadowContainer,emotionRoot,shadowRootElement,cache;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return getFabWithDefault();case 2:fab=_context2.sent;$action=document.createElement("div");$action.setAttribute("id",APP_LCNAME);$action.style.fontSize="0";$action.style.width="0";$action.style.height="0";document.body.parentElement.appendChild($action);shadowContainer=$action.attachShadow({mode:"closed"});emotionRoot=document.createElement("style");shadowRootElement=document.createElement("div");shadowContainer.appendChild(emotionRoot);shadowContainer.appendChild(shadowRootElement);cache=(0,emotion_cache_browser_esm/* default */.Z)({key:APP_LCNAME,prepend:true,container:emotionRoot});client.createRoot(shadowRootElement).render(/*#__PURE__*/(0,jsx_runtime.jsx)(react.StrictMode,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(emotion_element_c39617d8_browser_esm.C,{value:cache,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Action,{translator:translator,fab:fab})})}));case 16:case"end":return _context2.stop();}},_callee2);}));return _showFab.apply(this,arguments);}function showTransbox(_ref4){var contextMenuType=_ref4.contextMenuType,_ref4$tranboxSetting=_ref4.tranboxSetting,tranboxSetting=_ref4$tranboxSetting===void 0?DEFAULT_TRANBOX_SETTING:_ref4$tranboxSetting,transApis=_ref4.transApis;if(!(tranboxSetting!==null&&tranboxSetting!==void 0&&tranboxSetting.transOpen)){return;}var $tranbox=document.createElement("div");$tranbox.setAttribute("id","kiss-transbox");$tranbox.style.fontSize="0";$tranbox.style.width="0";$tranbox.style.height="0";document.body.parentElement.appendChild($tranbox);var shadowContainer=$tranbox.attachShadow({mode:"closed"});var emotionRoot=document.createElement("style");var shadowRootElement=document.createElement("div");shadowContainer.appendChild(emotionRoot);shadowContainer.appendChild(shadowRootElement);var cache=(0,emotion_cache_browser_esm/* default */.Z)({key:"kiss-transbox",prepend:true,container:emotionRoot});client.createRoot(shadowRootElement).render(/*#__PURE__*/(0,jsx_runtime.jsx)(react.StrictMode,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(emotion_element_c39617d8_browser_esm.C,{value:cache,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Slection,{contextMenuType:contextMenuType,tranboxSetting:tranboxSetting,transApis:transApis})})}));}/** * 显示错误信息到页面顶部 * @param {*} message */function showErr(message){var $err=document.createElement("div");$err.innerText="KISS-Translator: ".concat(message);$err.style.cssText="background:red; color:#fff;";document.body.prepend($err);}/** @@ -34568,15 +34615,15 @@ var script=document.createElement("script");script.textContent="(".concat(inject * @returns */function touchOperation(translator){var _translator$setting$t=translator.setting.touchTranslate,touchTranslate=_translator$setting$t===void 0?2:_translator$setting$t;if(touchTranslate===0){return;}var handleTap=debounce(function(){translator.toggle();sendIframeMsg(MSG_TRANS_TOGGLE);});touchTapListener(handleTap,touchTranslate);}/** * 入口函数 - */function common_run(){return _run.apply(this,arguments);}function _run(){_run=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){var isUserscript,href,setting,fixerSetting,rule,translator,_args3=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:isUserscript=_args3.length>0&&_args3[0]!==undefined?_args3[0]:false;_context3.prev=1;href=document.location.href;// 设置页面 -if(!(isUserscript&&(href.includes("http://localhost:3000/options.html")||href.includes("https://fishjar.github.io/kiss-translator/options.html")||href.includes("https://kiss-translator.rayjar.com/options")))){_context3.next=6;break;}runSettingPage();return _context3.abrupt("return");case 6:_context3.next=8;return getSettingWithDefault();case 8:setting=_context3.sent;if(!isInBlacklist(href,setting)){_context3.next=11;break;}return _context3.abrupt("return");case 11:_context3.next=13;return matchFixer(href,setting);case 13:fixerSetting=_context3.sent;_context3.next=16;return matchRule(href,setting);case 16:rule=_context3.sent;translator=new Translator(rule,setting,fixerSetting);// 适配iframe -if(!isIframe){_context3.next=21;break;}runIframe(translator);return _context3.abrupt("return");case 21:// 监听消息 + */function common_run(){return _run.apply(this,arguments);}function _run(){_run=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){var isUserscript,href,setting,rule,translator,_args3=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:isUserscript=_args3.length>0&&_args3[0]!==undefined?_args3[0]:false;_context3.prev=1;href=document.location.href;// 设置页面 +if(!(isUserscript&&(href.includes("http://localhost:3000/options.html")||href.includes("https://fishjar.github.io/kiss-translator/options.html")||href.includes("https://kiss-translator.rayjar.com/options")))){_context3.next=6;break;}runSettingPage();return _context3.abrupt("return");case 6:_context3.next=8;return getSettingWithDefault();case 8:setting=_context3.sent;if(!isInBlacklist(href,setting)){_context3.next=11;break;}return _context3.abrupt("return");case 11:_context3.next=13;return matchRule(href,setting);case 13:rule=_context3.sent;translator=new Translator(rule,setting);// 适配iframe +if(!isIframe){_context3.next=18;break;}runIframe(translator);return _context3.abrupt("return");case 18:// 监听消息 !isUserscript&&runtimeListener(translator);// 输入框翻译 inputTranslate(setting);// 划词翻译 showTransbox(setting);// 浮球按钮 -_context3.next=26;return showFab(translator);case 26:// 触屏操作 +_context3.next=23;return showFab(translator);case 23:// 触屏操作 touchOperation(translator);// 同步订阅规则 -_context3.t0=isUserscript;if(!_context3.t0){_context3.next=31;break;}_context3.next=31;return trySyncAllSubRules(setting);case 31:_context3.next=37;break;case 33:_context3.prev=33;_context3.t1=_context3["catch"](1);console.error("[KISS-Translator]",_context3.t1);showErr(_context3.t1.message);case 37:case"end":return _context3.stop();}},_callee3,null,[[1,33]]);}));return _run.apply(this,arguments);} +_context3.t0=isUserscript;if(!_context3.t0){_context3.next=28;break;}_context3.next=28;return trySyncAllSubRules(setting);case 28:_context3.next=34;break;case 30:_context3.prev=30;_context3.t1=_context3["catch"](1);console.error("[KISS-Translator]",_context3.t1);showErr(_context3.t1.message);case 34:case"end":return _context3.stop();}},_callee3,null,[[1,30]]);}));return _run.apply(this,arguments);} ;// CONCATENATED MODULE: ./src/userscript.js common_run(true); }(); diff --git a/main.js b/main.js index c2dcfa8..675d89f 100644 --- a/main.js +++ b/main.js @@ -34219,14 +34219,62 @@ function _asyncToGenerator(fn) { * fetch data hook * @returns */var useFetch=function useFetch(url){var _useState=(0,react.useState)(null),_useState2=_slicedToArray(_useState,2),data=_useState2[0],setData=_useState2[1];var _useState3=(0,react.useState)(false),_useState4=_slicedToArray(_useState3,2),loading=_useState4[0],setLoading=_useState4[1];var _useState5=(0,react.useState)(null),_useState6=_slicedToArray(_useState5,2),error=_useState6[0],setError=_useState6[1];(0,react.useEffect)(function(){if(!url){return;}_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(){var _res$headers$get,res,_data;return _regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:setLoading(true);_context.prev=1;_context.next=4;return fetch(url);case 4:res=_context.sent;if(res.ok){_context.next=7;break;}throw new Error("[".concat(res.status,"] ").concat(res.statusText));case 7:if(!((_res$headers$get=res.headers.get("Content-Type"))!==null&&_res$headers$get!==void 0&&_res$headers$get.includes("json"))){_context.next=13;break;}_context.next=10;return res.json();case 10:_data=_context.sent;_context.next=16;break;case 13:_context.next=15;return res.text();case 15:_data=_context.sent;case 16:setData(_data);_context.next=22;break;case 19:_context.prev=19;_context.t0=_context["catch"](1);setError(_context.t0);case 22:_context.prev=22;setLoading(false);return _context.finish(22);case 25:case"end":return _context.stop();}},_callee,null,[[1,19,22,25]]);}))();},[url]);return[data,loading,error];}; +;// CONCATENATED MODULE: ./src/libs/webfix.js +var _fixerMap;/** + * 修复程序类型 + */var FIXER_NONE="-";var FIXER_BR="br";var FIXER_BN="bn";var FIXER_BR_DIV="brToDiv";var FIXER_BN_DIV="bnToDiv";var FIXER_ALL=[FIXER_NONE,FIXER_BR,FIXER_BN,FIXER_BR_DIV,FIXER_BN_DIV];/** + * 修复过的标记 + */var fixedSign="kiss-fixed";/** + * 采用 `br` 换行网站的修复函数 + * 目标是将 `br` 替换成 `p` + * @param {*} node + * @returns + */function brFixer(node){var tag=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"p";if(node.hasAttribute(fixedSign)){return;}node.setAttribute(fixedSign,"true");var gapTags=["BR","WBR"];var newlineTags=["DIV","UL","OL","LI","H1","H2","H3","H4","H5","H6","P","HR","PRE","TABLE","BLOCKQUOTE"];var html="";node.childNodes.forEach(function(child,index){if(index===0){html+="<".concat(tag," class=\"kiss-p\">");}if(gapTags.indexOf(child.nodeName)!==-1){html+="<").concat(tag," class=\"kiss-p\">");}else if(newlineTags.indexOf(child.nodeName)!==-1){html+="").concat(child.outerHTML,"<").concat(tag," class=\"kiss-p\">");}else if(child.outerHTML){html+=child.outerHTML;}else if(child.textContent){html+=child.textContent;}if(index===node.childNodes.length-1){html+="");}});node.innerHTML=html;}function brDivFixer(node){return brFixer(node,"div");}/** + * 目标是将 `\n` 替换成 `p` + * @param {*} node + * @returns + */function bnFixer(node){var tag=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"p";if(node.hasAttribute(fixedSign)){return;}node.setAttribute(fixedSign,"true");node.innerHTML=node.innerHTML.split("\n").map(function(item){return"<".concat(tag," class=\"kiss-p\">").concat(item||" ","");}).join("");}function bnDivFixer(node){return bnFixer(node,"div");}/** + * 查找、监听节点,并执行修复函数 + * @param {*} selector + * @param {*} fixer + * @param {*} rootSelector + */function run(selector,fixer,rootSelector){var mutaObserver=new MutationObserver(function(mutations){mutations.forEach(function(mutation){mutation.addedNodes.forEach(function(addNode){if(addNode&&addNode.querySelectorAll){addNode.querySelectorAll(selector).forEach(function(node){fixer(node);});}});});});var rootNodes=[document];if(rootSelector){rootNodes=document.querySelectorAll(rootSelector);}rootNodes.forEach(function(rootNode){rootNode.querySelectorAll(selector).forEach(function(node){fixer(node);});mutaObserver.observe(rootNode,{childList:true,subtree:true});});}/** + * 修复程序映射 + */var fixerMap=(_fixerMap={},_defineProperty(_fixerMap,FIXER_BR,brFixer),_defineProperty(_fixerMap,FIXER_BN,bnFixer),_defineProperty(_fixerMap,FIXER_BR_DIV,brDivFixer),_defineProperty(_fixerMap,FIXER_BN_DIV,bnDivFixer),_fixerMap);/** + * 执行fixer + * @param {*} param0 + */function runFixer(selector){var fixer=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"-";var rootSelector=arguments.length>2?arguments[2]:undefined;try{if(Object.keys(fixerMap).includes(fixer)){run(selector,fixerMap[fixer],rootSelector);}}catch(err){console.error("[kiss-webfix run]: ".concat(err.message));}} ;// CONCATENATED MODULE: ./src/config/rules.js -var DEFAULT_SELECTOR=":is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)";var DEFAULT_KEEP_SELECTOR="code, img, svg";var GLOBAL_KEY="*";var REMAIN_KEY="-";var SHADOW_KEY=">>>";var DEFAULT_RULE={pattern:"",selector:"",keepSelector:"",terms:"",translator:GLOBAL_KEY,fromLang:GLOBAL_KEY,toLang:GLOBAL_KEY,textStyle:GLOBAL_KEY,transOpen:GLOBAL_KEY,bgColor:"",textDiyStyle:""};var DEFAULT_DIY_STYLE="color: #666;\nbackground: linear-gradient(\n 45deg,\n LightGreen 20%,\n LightPink 20% 40%,\n LightSalmon 40% 60%,\n LightSeaGreen 60% 80%,\n LightSkyBlue 80%\n);\n&:hover {\n color: #333;\n};";var DEFAULT_OW_RULE={translator:REMAIN_KEY,fromLang:REMAIN_KEY,toLang:REMAIN_KEY,textStyle:REMAIN_KEY,transOpen:REMAIN_KEY,bgColor:"",textDiyStyle:DEFAULT_DIY_STYLE};var RULES_MAP={"www.google.com/search":["h3, .IsZvec, .VwiC3b"],"news.google.com":["[role=\"link\"], .DY5T1d, .ifw3f, ".concat(DEFAULT_SELECTOR)],"www.foxnews.com":["h1, h2, .title, .sidebar [data-type=\"Title\"], .article-content ".concat(DEFAULT_SELECTOR,"; [data-spotim-module=\"conversation\"]>div >>> [data-spot-im-class=\"message-text\"] p, [data-spot-im-class=\"message-text\"]")],"bearblog.dev, www.theverge.com, www.tampermonkey.net/documentation.php":["".concat(DEFAULT_SELECTOR)],"themessenger.com":[".leading-tight, .leading-tighter, .my-2 p, .font-body p, article ".concat(DEFAULT_SELECTOR)],"www.telegraph.co.uk, go.dev/doc/":["article ".concat(DEFAULT_SELECTOR)],"www.theguardian.com":[".show-underline, .dcr-hup5wm div, .dcr-7vl6y8 div, .dcr-12evv1c, figcaption, article ".concat(DEFAULT_SELECTOR,", [data-cy=\"mostviewed-footer\"] h4")],"www.semafor.com":["".concat(DEFAULT_SELECTOR,", .styles_intro__IYj__, [class*=\"styles_description\"]")],"www.noemamag.com":[".splash__title, .single-card__title, .single-card__type, .single-card__topic, .highlighted-content__title, .single-card__author, article ".concat(DEFAULT_SELECTOR,", .quote__text, .wp-caption-text div")],"restofworld.org":["".concat(DEFAULT_SELECTOR,", .recirc-story__headline, .recirc-story__dek")],"www.axios.com":[".h7, ".concat(DEFAULT_SELECTOR)],"www.newyorker.com":[".summary-item__hed, .summary-item__dek, .summary-collection-grid__dek, .dqtvfu, .rubric__link, .caption, article ".concat(DEFAULT_SELECTOR,", .HEhan ").concat(DEFAULT_SELECTOR,", .ContributorBioBio-fBolsO, .BaseText-ewhhUZ")],"time.com":["h1, h3, .summary, .video-title, #article-body ".concat(DEFAULT_SELECTOR,", .image-wrap-container .credit.body-caption, .media-heading")],"www.dw.com":[".ts-teaser-title a, .news-title a, .title a, .teaser-description a, .hbudab h3, .hbudab p, figcaption ,article ".concat(DEFAULT_SELECTOR)],"www.bbc.com":["h1, h2, .media__link, .media__summary, article ".concat(DEFAULT_SELECTOR,", .ssrcss-y7krbn-Stack, .ssrcss-17zglt8-PromoHeadline, .ssrcss-18cjaf3-Headline, .gs-c-promo-heading__title, .gs-c-promo-summary, .media__content h3, .article__intro, .lx-c-summary-points>li")],"www.chinadaily.com.cn":["h1, .tMain [shape=\"rect\"], .cMain [shape=\"rect\"], .photo_art [shape=\"rect\"], .mai_r [shape=\"rect\"], .lisBox li, #Content ".concat(DEFAULT_SELECTOR)],"www.facebook.com":["[role=\"main\"] [dir=\"auto\"]"],"www.reddit.com":["div:is(.tbIApBd2DM_drfZQJjIum, ._1zPvgKHteTOub9dKkvrOl4,.ULWj94BYSOqoJDetxgcnU),a:is([class^=\"_334yl59\"],[class^=\"_2GrMpxD\"]),h1,h2,h3,h4,h5,h6,p,button"],"www.quora.com":[".qu-wordBreak--break-word"],"edition.cnn.com":[".container__title, .container__headline, .headline__text, .image__caption, [data-type=\"Title\"], .article__content ".concat(DEFAULT_SELECTOR)],"www.reuters.com":["#main-content [data-testid=\"Heading\"], #main-content [data-testid=\"Body\"], .article-body__content__17Yit ".concat(DEFAULT_SELECTOR)],"www.bloomberg.com":["[data-component=\"headline\"], [data-component=\"related-item-headline\"], [data-component=\"title\"], article ".concat(DEFAULT_SELECTOR)],"deno.land, docs.github.com":["main ".concat(DEFAULT_SELECTOR),"code, img, svg"],"doc.rust-lang.org":[".content ".concat(DEFAULT_SELECTOR),"code, img, svg"],"www.indiehackers.com":["h1, h3, .content ".concat(DEFAULT_SELECTOR,", .feed-item__title-link")],"platform.openai.com/docs":[".docs-body ".concat(DEFAULT_SELECTOR),"code, img, svg"],"en.wikipedia.org":["h1, .mw-parser-output ".concat(DEFAULT_SELECTOR),".mwe-math-element"],"stackoverflow.com":["h1, .s-prose p, .comment-body .comment-copy","code, img, svg"],"www.npmjs.com/package, developer.chrome.com/docs, medium.com, developers.cloudflare.com, react.dev, create-react-app.dev, pytorch.org":["article ".concat(DEFAULT_SELECTOR)],"news.ycombinator.com":[".title, .commtext"],"github.com":[".markdown-body ".concat(DEFAULT_SELECTOR,", .repo-description p, .Layout-sidebar .f4, .container-lg .py-4 .f5, .container-lg .my-4 .f5, .Box-row .pr-4, .Box-row article .mt-1, [itemprop=\"description\"], .markdown-title, bdi, .ws-pre-wrap, .status-meta, span.status-meta, .col-10.color-fg-muted, .TimelineItem-body, .pinned-item-list-item-content .color-fg-muted, .markdown-body td, .markdown-body th"),"code, img, svg"],"twitter.com":["[data-testid=\"tweetText\"], [data-testid=\"birdwatch-pivot\"]>div.css-1rynq56","img, a, .r-18u37iz, .css-175oi2r"],"m.youtube.com":[".slim-video-information-title .yt-core-attributed-string, .media-item-headline .yt-core-attributed-string, .comment-text .yt-core-attributed-string, .typography-body-2b .yt-core-attributed-string, #ytp-caption-window-container .ytp-caption-segment"],"www.youtube.com":["h1, #video-title, #content-text, #title, yt-attributed-string>span>span, #ytp-caption-window-container .ytp-caption-segment"],"bard.google.com":[".query-content ".concat(DEFAULT_SELECTOR,", message-content ").concat(DEFAULT_SELECTOR)],"www.bing.com":[".b_algoSlug, .rwrl_padref; .cib-serp-main >>> .ac-textBlock ".concat(DEFAULT_SELECTOR,", .text-message-content div")],"www.phoronix.com":["article ".concat(DEFAULT_SELECTOR)],"wx2.qq.com":[".js_message_plain"],"app.slack.com/client/":[".p-rich_text_section, .c-message_attachment__text, .p-rich_text_list li"],"discord.com/channels/":["li[id^=chat-messages] div[id^=message-content], div[class^=headerText], div[class^=name_], section[aria-label='Search Results'] div[id^=message-content]"],"t.me/s/":[".js-message_text ".concat(DEFAULT_SELECTOR)],"web.telegram.org/k/":[".message, .bot-commands-list-element-description, .reply-markup-button-text"],"web.telegram.org/a/":[".message, .text-content, .bot-commands-list-element-description, .reply-markup-button-text"],"chromereleases.googleblog.com":[".title, .publishdate, p, i, .header-desc, .header-title, .text"],"www.instagram.com/":["h1, article span[dir=auto] > span[dir=auto], ._ab1y"],"www.instagram.com/p/,www.instagram.com/reels/":["h1, div[class='x9f619 xjbqb8w x78zum5 x168nmei x13lgxp2 x5pf9jr xo71vjh x1uhb9sk x1plvlek xryxfnj x1c4vz4f x2lah0s xdt5ytf xqjyukv x1cy8zhl x1oa3qoh x1nhvcw1'] > span[class='x1lliihq x1plvlek xryxfnj x1n2onr6 x193iq5w xeuugli x1fj9vlw x13faqbe x1vvkbs x1s928wv xhkezso x1gmr53x x1cpjm7i x1fgarty x1943h6x x1i0vuye xvs91rp xo1l8bm x5n08af x10wh9bi x1wdrske x8viiok x18hxmgj'], span[class='x193iq5w xeuugli x1fj9vlw x13faqbe x1vvkbs xt0psk2 x1i0vuye xvs91rp xo1l8bm x5n08af x10wh9bi x1wdrske x8viiok x18hxmgj']"],"mail.google.com":["".concat(DEFAULT_SELECTOR,", h2[data-thread-perm-id], span[data-thread-id], div[data-message-id] div[class=''], .messageBody, #views")],"web.whatsapp.com":[".copyable-text > span"],"chat.openai.com":["div[data-message-author-role] > div ".concat(DEFAULT_SELECTOR)],"forum.ru-board.com":[".tit, .dats, span.post, .lgf ".concat(DEFAULT_SELECTOR)],"education.github.com":["".concat(DEFAULT_SELECTOR,", a, summary, span.Button-content")],"blogs.windows.com":["".concat(DEFAULT_SELECTOR,", .c-uhf-nav-link, figcaption")],"developer.apple.com/documentation/":["#main ".concat(DEFAULT_SELECTOR,", #main .abstract .content, #main .abstract.content, #main .link span"),"code, img, svg"],"greasyfork.org":["h2, .script-link, .script-description, #additional-info ".concat(DEFAULT_SELECTOR)],"www.fmkorea.com":["#container ".concat(DEFAULT_SELECTOR)],"forum.arduino.cc":[".top-row>.title, .featured-topic>.title, .link-top-line>.title, .category-description, .topic-excerpt, .fancy-title, .cooked ".concat(DEFAULT_SELECTOR)],"docs.arduino.cc":["[class^=\"tutorial-module--left\"] ".concat(DEFAULT_SELECTOR)],"www.historydefined.net":[".wp-element-caption, ".concat(DEFAULT_SELECTOR)]};var BUILTIN_RULES=Object.entries(RULES_MAP).sort(function(a,b){return a[0].localeCompare(b[0]);}).map(function(_ref){var _ref2=_slicedToArray(_ref,2),pattern=_ref2[0],_ref2$=_slicedToArray(_ref2[1],3),selector=_ref2$[0],_ref2$$=_ref2$[1],keepSelector=_ref2$$===void 0?"":_ref2$$,_ref2$$2=_ref2$[2],terms=_ref2$$2===void 0?"":_ref2$$2;return _objectSpread2(_objectSpread2({},DEFAULT_RULE),{},{pattern:pattern,selector:selector,keepSelector:keepSelector,terms:terms});}); +var GLOBAL_KEY="*";var REMAIN_KEY="-";var SHADOW_KEY=">>>";var DEFAULT_SELECTOR=":is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)";var DEFAULT_KEEP_SELECTOR="code, img, svg";var DEFAULT_RULE={pattern:"",// 匹配网址 +selector:"",// 选择器 +keepSelector:"",// 保留元素选择器 +terms:"",// 专业术语 +translator:GLOBAL_KEY,// 翻译服务 +fromLang:GLOBAL_KEY,// 源语言 +toLang:GLOBAL_KEY,// 目标语言 +textStyle:GLOBAL_KEY,// 译文样式 +transOpen:GLOBAL_KEY,// 开启翻译 +bgColor:"",// 译文颜色 +textDiyStyle:"",// 自定义译文样式 +selectStyle:"",// 选择器节点样式 +parentStyle:"",// 选择器父节点样式 +injectJs:"",// 注入JS +injectCss:"",// 注入CSS +transOnly:GLOBAL_KEY,// 是否仅显示译文 +transTiming:GLOBAL_KEY,// 翻译时机/鼠标悬停翻译 +transTag:GLOBAL_KEY,// 译文元素标签 +transTitle:GLOBAL_KEY,// 是否同时翻译页面标题 +detectRemote:GLOBAL_KEY,// 是否使用远程语言检测 +skipLangs:[],// 不翻译的语言 +fixerSelector:"",// 修复函数选择器 +fixerFunc:GLOBAL_KEY// 修复函数 +};var DEFAULT_DIY_STYLE="color: #666;\nbackground: linear-gradient(\n 45deg,\n LightGreen 20%,\n LightPink 20% 40%,\n LightSalmon 40% 60%,\n LightSeaGreen 60% 80%,\n LightSkyBlue 80%\n);\n&:hover {\n color: #333;\n};";var DEFAULT_OW_RULE={translator:REMAIN_KEY,fromLang:REMAIN_KEY,toLang:REMAIN_KEY,textStyle:REMAIN_KEY,transOpen:REMAIN_KEY,bgColor:"",textDiyStyle:DEFAULT_DIY_STYLE};var RULES_MAP={"www.google.com/search":{selector:"h3, .IsZvec, .VwiC3b"},"news.google.com":{selector:"[data-n-tid], ".concat(DEFAULT_SELECTOR)},"www.foxnews.com":{selector:"h1, h2, .title, .sidebar [data-type=\"Title\"], .article-content ".concat(DEFAULT_SELECTOR,"; [data-spotim-module=\"conversation\"]>div >>> [data-spot-im-class=\"message-text\"] p, [data-spot-im-class=\"message-text\"]")},"bearblog.dev, www.theverge.com, www.tampermonkey.net/documentation.php":{selector:"".concat(DEFAULT_SELECTOR)},"themessenger.com":{selector:".leading-tight, .leading-tighter, .my-2 p, .font-body p, article ".concat(DEFAULT_SELECTOR)},"www.telegraph.co.uk, go.dev/doc/":{selector:"article ".concat(DEFAULT_SELECTOR)},"www.theguardian.com":{selector:".show-underline, .dcr-hup5wm div, .dcr-7vl6y8 div, .dcr-12evv1c, figcaption, article ".concat(DEFAULT_SELECTOR,", [data-cy=\"mostviewed-footer\"] h4")},"www.semafor.com":{selector:"".concat(DEFAULT_SELECTOR,", .styles_intro__IYj__, [class*=\"styles_description\"]")},"www.noemamag.com":{selector:".splash__title, .single-card__title, .single-card__type, .single-card__topic, .highlighted-content__title, .single-card__author, article ".concat(DEFAULT_SELECTOR,", .quote__text, .wp-caption-text div")},"restofworld.org":{selector:"".concat(DEFAULT_SELECTOR,", .recirc-story__headline, .recirc-story__dek")},"www.axios.com":{selector:".h7, ".concat(DEFAULT_SELECTOR)},"www.newyorker.com":{selector:".summary-item__hed, .summary-item__dek, .summary-collection-grid__dek, .dqtvfu, .rubric__link, .caption, article ".concat(DEFAULT_SELECTOR,", .HEhan ").concat(DEFAULT_SELECTOR,", .ContributorBioBio-fBolsO, .BaseText-ewhhUZ")},"time.com":{selector:"h1, h3, .summary, .video-title, #article-body ".concat(DEFAULT_SELECTOR,", .image-wrap-container .credit.body-caption, .media-heading")},"www.dw.com":{selector:".ts-teaser-title a, .news-title a, .title a, .teaser-description a, .hbudab h3, .hbudab p, figcaption ,article ".concat(DEFAULT_SELECTOR)},"www.bbc.com":{selector:"h1, h2, .media__link, .media__summary, article ".concat(DEFAULT_SELECTOR,", .ssrcss-y7krbn-Stack, .ssrcss-17zglt8-PromoHeadline, .ssrcss-18cjaf3-Headline, .gs-c-promo-heading__title, .gs-c-promo-summary, .media__content h3, .article__intro, .lx-c-summary-points>li")},"www.chinadaily.com.cn":{selector:"h1, .tMain [shape=\"rect\"], .cMain [shape=\"rect\"], .photo_art [shape=\"rect\"], .mai_r [shape=\"rect\"], .lisBox li, #Content ".concat(DEFAULT_SELECTOR)},"www.facebook.com":{selector:"[role=\"main\"] [dir=\"auto\"]"},"www.reddit.com, new.reddit.com, sh.reddit.com":{selector:":is(#AppRouter-main-content, #overlayScrollContainer) :is([class^=tbIA],[class^=_1zP],[class^=ULWj],[class^=_2Jj], [class^=_334],[class^=_2Gr],[class^=_7T4],[class^=_1WO], ".concat(DEFAULT_SELECTOR,"); [id^=\"post-title\"], :is([slot=\"text-body\"], [slot=\"comment\"]) ").concat(DEFAULT_SELECTOR,", recent-posts h3, aside :is(span:has(>h2), p); shreddit-subreddit-header >>> :is(#title, #description)")},"www.quora.com":{selector:".qu-wordBreak--break-word"},"edition.cnn.com":{selector:".container__title, .container__headline, .headline__text, .image__caption, [data-type=\"Title\"], .article__content ".concat(DEFAULT_SELECTOR)},"www.reuters.com":{selector:"#main-content [data-testid=\"Heading\"], #main-content [data-testid=\"Body\"], .article-body__content__17Yit ".concat(DEFAULT_SELECTOR)},"www.bloomberg.com":{selector:"[data-component=\"headline\"], [data-component=\"related-item-headline\"], [data-component=\"title\"], article ".concat(DEFAULT_SELECTOR)},"deno.land, docs.github.com":{selector:"main ".concat(DEFAULT_SELECTOR),keepSelector:DEFAULT_KEEP_SELECTOR},"doc.rust-lang.org":{selector:".content ".concat(DEFAULT_SELECTOR),keepSelector:DEFAULT_KEEP_SELECTOR},"www.indiehackers.com":{selector:"h1, h3, .content ".concat(DEFAULT_SELECTOR,", .feed-item__title-link")},"platform.openai.com/docs":{selector:".docs-body ".concat(DEFAULT_SELECTOR),keepSelector:DEFAULT_KEEP_SELECTOR},"en.wikipedia.org":{selector:"h1, .mw-parser-output ".concat(DEFAULT_SELECTOR),keepSelector:".mwe-math-element"},"stackoverflow.com, serverfault.com, superuser.com, stackexchange.com, askubuntu.com, stackapps.com, mathoverflow.net":{selector:".s-prose ".concat(DEFAULT_SELECTOR,", .comment-copy, .question-hyperlink, .s-post-summary--content-title, .s-post-summary--content-excerpt"),keepSelector:"".concat(DEFAULT_KEEP_SELECTOR,", .math-container")},"www.npmjs.com/package, developer.chrome.com/docs, medium.com, react.dev, create-react-app.dev, pytorch.org":{selector:"article ".concat(DEFAULT_SELECTOR)},"news.ycombinator.com":{selector:".title, p",fixerSelector:".toptext, .commtext",fixerFunc:FIXER_BR},"github.com":{selector:".markdown-body ".concat(DEFAULT_SELECTOR,", .repo-description p, .Layout-sidebar .f4, .container-lg .py-4 .f5, .container-lg .my-4 .f5, .Box-row .pr-4, .Box-row article .mt-1, [itemprop=\"description\"], .markdown-title, bdi, .ws-pre-wrap, .status-meta, span.status-meta, .col-10.color-fg-muted, .TimelineItem-body, .pinned-item-list-item-content .color-fg-muted, .markdown-body td, .markdown-body th"),keepSelector:DEFAULT_KEEP_SELECTOR},"twitter.com":{selector:"[data-testid=\"tweetText\"], [data-testid=\"birdwatch-pivot\"]>div.css-1rynq56",keepSelector:"img, a, .r-18u37iz, .css-175oi2r"},"m.youtube.com":{selector:".slim-video-information-title .yt-core-attributed-string, .media-item-headline .yt-core-attributed-string, .comment-text .yt-core-attributed-string, .typography-body-2b .yt-core-attributed-string, #ytp-caption-window-container .ytp-caption-segment",selectStyle:"-webkit-line-clamp: unset; max-height: none; height: auto;",parentStyle:"-webkit-line-clamp: unset; max-height: none; height: auto;",keepSelector:"img, #content-text>a"},"www.youtube.com":{selector:"h1, #video-title, #content-text, #title, yt-attributed-string>span>span, #ytp-caption-window-container .ytp-caption-segment",selectStyle:"-webkit-line-clamp: unset; max-height: none; height: auto;",parentStyle:"-webkit-line-clamp: unset; max-height: none; height: auto;",keepSelector:"img, #content-text>a"},"bard.google.com":{selector:".query-content ".concat(DEFAULT_SELECTOR,", message-content ").concat(DEFAULT_SELECTOR)},"www.bing.com, copilot.microsoft.com":{selector:".b_algoSlug, .rwrl_padref; .cib-serp-main >>> .ac-textBlock ".concat(DEFAULT_SELECTOR,", .text-message-content div")},"www.phoronix.com":{selector:"article ".concat(DEFAULT_SELECTOR),fixerSelector:".content",fixerFunc:FIXER_BR},"wx2.qq.com":{selector:".js_message_plain"},"app.slack.com/client/":{selector:".p-rich_text_section, .c-message_attachment__text, .p-rich_text_list li"},"discord.com/channels/":{selector:"div[class^=message], div[class^=headerText], div[class^=name_], section[aria-label='Search Results'] div[id^=message-content], div[id^=message]",keepSelector:"li[class^='card'] div[class^='message'], [class^='embedFieldValue'], [data-list-item-id^='forum-channel-list'] div[class^='headerText']"},"t.me/s/":{selector:".js-message_text ".concat(DEFAULT_SELECTOR),fixerSelector:".tgme_widget_message_text",fixerFunc:FIXER_BR},"web.telegram.org/k":{selector:"div.kiss-p",keepSelector:"div[class^=time], .peer-title, .document-wrapper, .message.spoilers-container custom-emoji-element, reactions-element",fixerSelector:".message",fixerFunc:FIXER_BN_DIV},"web.telegram.org/a":{selector:".text-content > .kiss-p",keepSelector:".Reactions, .time, .peer-title, .document-wrapper, .message.spoilers-container custom-emoji-element",fixerSelector:".text-content",fixerFunc:FIXER_BR_DIV},"www.instagram.com/":{selector:"h1, article span[dir=auto] > span[dir=auto], ._ab1y"},"www.instagram.com/p/,www.instagram.com/reels/":{selector:"h1, div[class='x9f619 xjbqb8w x78zum5 x168nmei x13lgxp2 x5pf9jr xo71vjh x1uhb9sk x1plvlek xryxfnj x1c4vz4f x2lah0s xdt5ytf xqjyukv x1cy8zhl x1oa3qoh x1nhvcw1'] > span[class='x1lliihq x1plvlek xryxfnj x1n2onr6 x193iq5w xeuugli x1fj9vlw x13faqbe x1vvkbs x1s928wv xhkezso x1gmr53x x1cpjm7i x1fgarty x1943h6x x1i0vuye xvs91rp xo1l8bm x5n08af x10wh9bi x1wdrske x8viiok x18hxmgj'], span[class='x193iq5w xeuugli x1fj9vlw x13faqbe x1vvkbs xt0psk2 x1i0vuye xvs91rp xo1l8bm x5n08af x10wh9bi x1wdrske x8viiok x18hxmgj']"},"mail.google.com":{selector:".a3s.aiL ".concat(DEFAULT_SELECTOR,", span[data-thread-id]"),fixerSelector:".a3s.aiL",fixerFunc:FIXER_BR},"web.whatsapp.com":{selector:".copyable-text > span"},"chat.openai.com":{selector:"div[data-message-author-role] > div ".concat(DEFAULT_SELECTOR),fixerSelector:"div[data-message-author-role='user'] > div",fixerFunc:FIXER_BN},"forum.ru-board.com":{selector:".tit, .dats, .kiss-p, .lgf ".concat(DEFAULT_SELECTOR),fixerSelector:"span.post",fixerFunc:FIXER_BR},"education.github.com":{selector:"".concat(DEFAULT_SELECTOR,", a, summary, span.Button-content")},"blogs.windows.com":{selector:"".concat(DEFAULT_SELECTOR,", .c-uhf-nav-link, figcaption"),fixerSelector:".t-content>div>ul>li",fixerFunc:FIXER_BR},"developer.apple.com/documentation/":{selector:"#main ".concat(DEFAULT_SELECTOR,", #main .abstract .content, #main .abstract.content, #main .link span"),keepSelector:DEFAULT_KEEP_SELECTOR},"greasyfork.org":{selector:"h2, .script-link, .script-description, #additional-info ".concat(DEFAULT_SELECTOR)},"www.fmkorea.com":{selector:"#container ".concat(DEFAULT_SELECTOR)},"forum.arduino.cc":{selector:".top-row>.title, .featured-topic>.title, .link-top-line>.title, .category-description, .topic-excerpt, .fancy-title, .cooked ".concat(DEFAULT_SELECTOR)},"docs.arduino.cc":{selector:"[class^=\"tutorial-module--left\"] ".concat(DEFAULT_SELECTOR)},"www.historydefined.net":{selector:".wp-element-caption, ".concat(DEFAULT_SELECTOR)},"gobyexample.com":{selector:".docs p",keepSelector:"code"},"go.dev/tour":{selector:"#left-side ".concat(DEFAULT_SELECTOR),keepSelector:"code, img, svg >>> code"},"pkg.go.dev":{selector:".Documentation-content ".concat(DEFAULT_SELECTOR),keepSelector:"".concat(DEFAULT_KEEP_SELECTOR,", a, span")},"docs.rs":{selector:".docblock ".concat(DEFAULT_SELECTOR,", .docblock-short"),keepSelector:"code >>> code"},"randomnerdtutorials.com":{selector:"article ".concat(DEFAULT_SELECTOR)},"notebooks.githubusercontent.com/view/ipynb":{selector:"#notebook-container ".concat(DEFAULT_SELECTOR),keepSelector:DEFAULT_KEEP_SELECTOR},"developers.cloudflare.com":{selector:"article ".concat(DEFAULT_SELECTOR,", .WorkerStarter--description"),keepSelector:"a[rel='noopener'], code"},"ubuntuforums.org":{fixerSelector:".postcontent",fixerFunc:FIXER_BR},"play.google.com/store/apps/details":{fixerSelector:"[data-g-id=\"description\"]",fixerFunc:FIXER_BR},"news.yahoo.co.jp/articles/":{fixerSelector:".sc-cTsKDU",fixerFunc:FIXER_BN},"chromereleases.googleblog.com":{fixerSelector:".post-content, .post-content > span, li > span",fixerFunc:FIXER_BR}};var BUILTIN_RULES=Object.entries(RULES_MAP).sort(function(a,b){return a[0].localeCompare(b[0]);}).map(function(_ref){var _ref2=_slicedToArray(_ref,2),pattern=_ref2[0],rule=_ref2[1];return _objectSpread2(_objectSpread2(_objectSpread2({},DEFAULT_RULE),rule),{},{pattern:pattern});}); ;// CONCATENATED MODULE: ./src/config/app.js var APP_NAME="KISS Translator".trim().split(/\s+/).join("-");var APP_LCNAME=APP_NAME.toLowerCase(); ;// CONCATENATED MODULE: ./src/config/i18n.js -var UI_LANGS=(/* unused pure expression or super */ null && ([["en","English"],["zh","中文"]]));var customApiLangs="[\"en\", \"English - English\"],\n[\"zh-CN\", \"Simplified Chinese - \u7B80\u4F53\u4E2D\u6587\"],\n[\"zh-TW\", \"Traditional Chinese - \u7E41\u9AD4\u4E2D\u6587\"],\n[\"ar\", \"Arabic - \u0627\u0644\u0639\u0631\u0628\u064A\u0629\"],\n[\"bg\", \"Bulgarian - \u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438\"],\n[\"ca\", \"Catalan - Catal\xE0\"],\n[\"hr\", \"Croatian - Hrvatski\"],\n[\"cs\", \"Czech - \u010Ce\u0161tina\"],\n[\"da\", \"Danish - Dansk\"],\n[\"nl\", \"Dutch - Nederlands\"],\n[\"fi\", \"Finnish - Suomi\"],\n[\"fr\", \"French - Fran\xE7ais\"],\n[\"de\", \"German - Deutsch\"],\n[\"el\", \"Greek - \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC\"],\n[\"hi\", \"Hindi - \u0939\u093F\u0928\u094D\u0926\u0940\"],\n[\"hu\", \"Hungarian - Magyar\"],\n[\"id\", \"Indonesian - Indonesia\"],\n[\"it\", \"Italian - Italiano\"],\n[\"ja\", \"Japanese - \u65E5\u672C\u8A9E\"],\n[\"ko\", \"Korean - \uD55C\uAD6D\uC5B4\"],\n[\"ms\", \"Malay - Melayu\"],\n[\"mt\", \"Maltese - Malti\"],\n[\"nb\", \"Norwegian - Norsk Bokm\xE5l\"],\n[\"pl\", \"Polish - Polski\"],\n[\"pt\", \"Portuguese - Portugu\xEAs\"],\n[\"ro\", \"Romanian - Rom\xE2n\u0103\"],\n[\"ru\", \"Russian - \u0420\u0443\u0441\u0441\u043A\u0438\u0439\"],\n[\"sk\", \"Slovak - Sloven\u010Dina\"],\n[\"sl\", \"Slovenian - Sloven\u0161\u010Dina\"],\n[\"es\", \"Spanish - Espa\xF1ol\"],\n[\"sv\", \"Swedish - Svenska\"],\n[\"ta\", \"Tamil - \u0BA4\u0BAE\u0BBF\u0BB4\u0BCD\"],\n[\"te\", \"Telugu - \u0C24\u0C46\u0C32\u0C41\u0C17\u0C41\"],\n[\"th\", \"Thai - \u0E44\u0E17\u0E22\"],\n[\"tr\", \"Turkish - T\xFCrk\xE7e\"],\n[\"uk\", \"Ukrainian - \u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430\"],\n[\"vi\", \"Vietnamese - Ti\u1EBFng Vi\u1EC7t\"],\n";var customApiHelpZH="/// \u81EA\u5B9A\u4E49\u7FFB\u8BD1\u6E90\u63A5\u53E3\u8BF4\u660E\n\n// \u8BF7\u6C42\uFF08Request\uFF09\u6570\u636E\u5C06\u6309\u4E0B\u9762\u89C4\u8303\u53D1\u9001\n{\n url: {{YOUR_URL}},\n method: \"POST\",\n headers: {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{YOUR_KEY}}\",\n },\n body: {\n text: \"\", // \u9700\u8981\u7FFB\u8BD1\u7684\u6587\u5B57\n from: \"\", // \u6E90\u8BED\u8A00\uFF0C\u53EF\u80FD\u4E3A\u7A7A\uFF0C\u8868\u793A\u9700\u8981\u63A5\u53E3\u81EA\u52A8\u8BC6\u522B\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\n }\n}\n\n// \u8FD4\u56DE\uFF08Response\uFF09\u6570\u636E\u9700\u7B26\u5408\u4E0B\u9762\u7684JSON\u89C4\u8303\n{\n text: \"\", // \u7FFB\u8BD1\u540E\u7684\u6587\u5B57\n from: \"\", // \u8BC6\u522B\u7684\u6E90\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\uFF08\u53EF\u9009\uFF09\n}\n\n// \u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u5982\u4E0B\n".concat(customApiLangs,"\n");var customApiHelpEN="/// Custom translation source interface description\n\n// Request data will be sent according to the following specifications\n{\n url: {{YOUR_URL}},\n method: \"POST\",\n headers: {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{YOUR_KEY}}\",\n },\n body: {\n text: \"\", // text to be translated\n from: \"\", // Source language, may be empty\n to: \"\", // Target language\n }\n}\n\n// The returned data must conform to the following JSON specification\n{\n text: \"\", // translated text\n from: \"\", // Recognized source language\n to: \"\", // Target language (optional)\n}\n\n// The supported language codes are as follows\n".concat(customApiLangs,"\n");var I18N={app_name:{zh:"\u7B80\u7EA6\u7FFB\u8BD1",en:"KISS Translator"},translate:{zh:"\u7FFB\u8BD1",en:"Translate"},custom_api_help:{zh:customApiHelpZH,en:customApiHelpEN},translate_alt:{zh:"\u7FFB\u8BD1",en:"Translate"},basic_setting:{zh:"\u57FA\u672C\u8BBE\u7F6E",en:"Basic Setting"},rules_setting:{zh:"\u89C4\u5219\u8BBE\u7F6E",en:"Rules Setting"},apis_setting:{zh:"\u63A5\u53E3\u8BBE\u7F6E",en:"Apis Setting"},sync_setting:{zh:"\u540C\u6B65\u8BBE\u7F6E",en:"Sync Setting"},patch_setting:{zh:"\u8865\u4E01\u8BBE\u7F6E",en:"Patch Setting"},patch_setting_help:{zh:"\u9488\u5BF9\u4E00\u4E9B\u7279\u6B8A\u7F51\u7AD9\u7684\u4FEE\u6B63\u811A\u672C\uFF0C\u4EE5\u4FBF\u7FFB\u8BD1\u8F6F\u4EF6\u5F97\u5230\u66F4\u597D\u7684\u5C55\u793A\u6548\u679C\u3002",en:"Corrected scripts for some special websites so that the translation software can get better display results."},inject_webfix:{zh:"\u6CE8\u5165\u4FEE\u590D\u8865\u4E01",en:"Inject Webfix"},about:{zh:"\u5173\u4E8E",en:"About"},about_md:{zh:"README.md",en:"README.en.md"},about_md_local:{zh:"\u8BF7 [\u70B9\u51FB\u8FD9\u91CC](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8BE6\u60C5\u3002"),en:"Please [click here](".concat("https://github.com/fishjar/kiss-translator",") for details.")},ui_lang:{zh:"\u754C\u9762\u8BED\u8A00",en:"Interface Language"},fetch_limit:{zh:"\u6700\u5927\u8BF7\u6C42\u6570\u91CF (1-100)",en:"Maximum Number Of Request (1-100)"},fetch_interval:{zh:"\u8BF7\u6C42\u95F4\u9694\u65F6\u95F4 (0-5000ms)",en:"Request Interval (0-5000ms)"},min_translate_length:{zh:"\u6700\u5C0F\u7FFB\u8BD1\u957F\u5EA6 (1-100)",en:"Min Translate Length (1-100)"},max_translate_length:{zh:"\u6700\u5927\u7FFB\u8BD1\u957F\u5EA6 (100-10000)",en:"Max Translate Length (100-10000)"},num_of_newline_characters:{zh:"\u6362\u884C\u5B57\u7B26\u6570 (1-1000)",en:"Number of Newline Characters (1-1000)"},translate_service:{zh:"\u7FFB\u8BD1\u670D\u52A1",en:"Translate Service"},translate_timing:{zh:"\u7FFB\u8BD1\u65F6\u673A",en:"Translate Timing"},mk_disable:{zh:"\u6EDA\u52A8\u52A0\u8F7D\uFF08\u5EFA\u8BAE\uFF09",en:"Rolling Loading (Suggested)"},mk_pageopen:{zh:"\u9875\u9762\u6253\u5F00",en:"Page Open"},mk_mouseover:{zh:"\u9F20\u6807\u60AC\u505C",en:"Mouseover"},mk_ctrlKey:{zh:"Control + \u9F20\u6807\u60AC\u505C",en:"Control + Mouseover"},mk_shiftKey:{zh:"Shift + \u9F20\u6807\u60AC\u505C",en:"Shift + Mouseover"},mk_altKey:{zh:"Alt + \u9F20\u6807\u60AC\u505C",en:"Alt + Mouseover"},from_lang:{zh:"\u539F\u6587\u8BED\u8A00",en:"Source Language"},to_lang:{zh:"\u76EE\u6807\u8BED\u8A00",en:"Target Language"},to_lang2:{zh:"\u7B2C\u4E8C\u76EE\u6807\u8BED\u8A00",en:"Target Language 2"},to_lang2_helper:{zh:"\u8BBE\u5B9A\u540E\uFF0C\u4E0E\u76EE\u6807\u8BED\u8A00\u4EA7\u751F\u4E92\u8BD1\u6548\u679C\uFF0C\u4F46\u4F9D\u8D56\u8FDC\u7A0B\u8BED\u8A00\u8BC6\u522B\u3002",en:"After setting, it will produce mutual translation effect with the target language, but it relies on remote language recognition."},text_style:{zh:"\u6587\u5B57\u6837\u5F0F",en:"Text Style"},text_style_alt:{zh:"\u6587\u5B57\u6837\u5F0F",en:"Text Style"},bg_color:{zh:"\u6837\u5F0F\u989C\u8272",en:"Style Color"},remain_unchanged:{zh:"\u4FDD\u7559\u4E0D\u53D8",en:"Remain Unchanged"},google_api:{zh:"\u8C37\u6B4C\u7FFB\u8BD1\u63A5\u53E3",en:"Google Translate API"},default_selector:{zh:"\u9ED8\u8BA4\u9009\u62E9\u5668",en:"Default selector"},selector_rules:{zh:"\u9009\u62E9\u5668\u89C4\u5219",en:"Selector Rules"},save:{zh:"\u4FDD\u5B58",en:"Save"},edit:{zh:"\u7F16\u8F91",en:"Edit"},cancel:{zh:"\u53D6\u6D88",en:"Cancel"},delete:{zh:"\u5220\u9664",en:"Delete"},reset:{zh:"\u91CD\u7F6E",en:"Reset"},add:{zh:"\u6DFB\u52A0",en:"Add"},inject_rules:{zh:"\u6CE8\u5165\u8BA2\u9605\u89C4\u5219",en:"Inject Subscribe Rules"},personal_rules:{zh:"\u4E2A\u4EBA\u89C4\u5219",en:"Rules"},subscribe_rules:{zh:"\u8BA2\u9605\u89C4\u5219",en:"Subscribe"},overwrite_subscribe_rules:{zh:"\u8986\u5199\u8BA2\u9605\u89C4\u5219",en:"Overwrite"},subscribe_url:{zh:"\u8BA2\u9605\u5730\u5740",en:"Subscribe URL"},rules_warn_1:{zh:"1\u3001\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u4E00\u76F4\u751F\u6548\uFF0C\u9009\u62E9\u201C\u6CE8\u5165\u8BA2\u9605\u89C4\u5219\u201D\u540E\uFF0C\u201C\u8BA2\u9605\u89C4\u5219\u201D\u624D\u4F1A\u751F\u6548\u3002",en:"1. The \"Personal Rules\" are always in effect. After selecting \"Inject Subscription Rules\", the \"Subscription Rules\" will take effect."},rules_warn_2:{zh:"2\u3001\u201C\u8BA2\u9605\u89C4\u5219\u201D\u7684\u6CE8\u5165\u4F4D\u7F6E\u662F\u5012\u6570\u7B2C\u4E8C\u7684\u4F4D\u7F6E\uFF0C\u56E0\u6B64\u9664\u5168\u5C40\u89C4\u5219(*)\u5916\uFF0C\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u4F18\u5148\u7EA7\u6BD4\u201C\u8BA2\u9605\u89C4\u5219\u201D\u9AD8\uFF0C\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u586B\u5199\u540C\u6837\u7684\u7F51\u5740\u4F1A\u8986\u76D6\u201D\u8BA2\u9605\u89C4\u5219\u201C\u7684\u6761\u76EE\u3002",en:"2. The injection position of \"Subscription Rules\" is the penultimate position. Therefore, except for the global rules (*), the priority of \"Personal Rules\" is higher than that of \"Subscription Rules\". Filling in the same url in \"Personal Rules\" will overwrite \"Subscription Rules\" entry."},sync_warn:{zh:"\u5982\u679C\u670D\u52A1\u5668\u5B58\u5728\u5176\u4ED6\u5BA2\u6237\u7AEF\u540C\u6B65\u7684\u6570\u636E\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u5C06\u76F4\u63A5\u8986\u76D6\u672C\u5730\u914D\u7F6E\uFF0C\u540E\u9762\u5219\u6839\u636E\u4FEE\u6539\u65F6\u95F4\uFF0C\u65B0\u7684\u8986\u76D6\u65E7\u7684\u3002",en:"If the server has data synchronized by other clients, the first synchronization will directly overwrite the local configuration, and later, according to the modification time, the new one will overwrite the old one."},about_sync_api:{zh:"\u67E5\u770B\u5173\u4E8E\u6570\u636E\u540C\u6B65\u63A5\u53E3\u90E8\u7F72",en:"View About Data Synchronization Interface Deployment"},about_api_proxy:{zh:"\u67E5\u770B\u81EA\u5EFA\u4E00\u4E2A\u7FFB\u8BD1\u63A5\u53E3\u4EE3\u7406",en:"Check out the self-built translation interface proxy"},style_none:{zh:"\u65E0",en:"None"},under_line:{zh:"\u4E0B\u5212\u76F4\u7EBF",en:"Underline"},dot_line:{zh:"\u4E0B\u5212\u70B9\u72B6\u7EBF",en:"Dotted Underline"},dash_line:{zh:"\u4E0B\u5212\u865A\u7EBF",en:"Dashed Underline"},wavy_line:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF",en:"Wavy Underline"},fuzzy:{zh:"\u6A21\u7CCA",en:"Fuzzy"},highlight:{zh:"\u9AD8\u4EAE",en:"Highlight"},blockquote:{zh:"\u5F15\u7528",en:"Blockquote"},diy_style:{zh:"\u81EA\u5B9A\u4E49\u6837\u5F0F",en:"Custom Style"},diy_style_helper:{zh:"\u9075\u5FAA\u201CCSS\u201D\u7684\u8BED\u6CD5",en:"Follow the syntax of \"CSS\""},setting:{zh:"\u8BBE\u7F6E",en:"Setting"},pattern:{zh:"\u5339\u914D\u7F51\u5740",en:"URL pattern"},pattern_helper:{zh:"1\u3001\u652F\u6301\u661F\u53F7(*)\u901A\u914D\u7B26\u30022\u3001\u591A\u4E2AURL\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u3002",en:"1. Supports the asterisk (*) wildcard character. 2. Separate multiple URLs with newlines or English commas \",\"."},selector_helper:{zh:"1\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u30022\u3001\u7559\u7A7A\u8868\u793A\u91C7\u7528\u5168\u5C40\u8BBE\u7F6E\u30023\u3001\u591A\u4E2ACSS\u9009\u62E9\u5668\u4E4B\u95F4\u7528\u201C;\u201D\u9694\u5F00\u30024\u3001\u201Cshadow root\u201D\u9009\u62E9\u5668\u548C\u5185\u90E8\u9009\u62E9\u5668\u7528\u201C>>>\u201D\u9694\u5F00\u3002",en:"1. Follow CSS selector syntax. 2. Leave blank to adopt the global setting. 3. Separate multiple CSS selectors with \";\". 4. The \"shadow root\" selector and the internal selector are separated by \">>>\"."},translate_switch:{zh:"\u5F00\u542F\u7FFB\u8BD1",en:"Translate Switch"},default_enabled:{zh:"\u9ED8\u8BA4\u5F00\u542F",en:"Enabled"},default_disabled:{zh:"\u9ED8\u8BA4\u5173\u95ED",en:"Disabled"},selector:{zh:"\u9009\u62E9\u5668",en:"Selector"},keep_selector:{zh:"\u4FDD\u7559\u5143\u7D20\u9009\u62E9\u5668",en:"Keep unchanged selector"},keep_selector_helper:{zh:"1\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u30022\u3001\u7559\u7A7A\u8868\u793A\u91C7\u7528\u5168\u5C40\u8BBE\u7F6E\u30023\u3001\u5B50\u5143\u7D20\u9009\u62E9\u5668\u7528\u201C>>>\u201D\u9694\u5F00\u3002",en:"1. Follow CSS selector syntax. 2. Leave blank to adopt the global setting. 3.Sub-element selectors are separated by \">>>\"."},terms:{zh:"\u4E13\u4E1A\u672F\u8BED",en:"Terms"},terms_helper:{zh:"0\u3001\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\u30021\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30022\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30023\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u30024\u3001\u7559\u7A7A\u8868\u793A\u91C7\u7528\u5168\u5C40\u8BBE\u7F6E\u3002",en:"0. Supports regular expression matching. 1. Separate multiple terms with newlines or semicolons \";\". 2. Terms and translations are separated by English commas \",\". 3. If there is no translation, the term will be deemed not to be translated. 4. Leave blank to adopt the global setting."},root_selector:{zh:"\u6839\u9009\u62E9\u5668",en:"Root Selector"},fixer_function:{zh:"\u4FEE\u590D\u51FD\u6570",en:"Fixer Function"},import:{zh:"\u5BFC\u5165",en:"Import"},export:{zh:"\u5BFC\u51FA",en:"Export"},error_cant_be_blank:{zh:"\u4E0D\u80FD\u4E3A\u7A7A",en:"Can not be blank"},error_duplicate_values:{zh:"\u5B58\u5728\u91CD\u590D\u7684\u503C",en:"There are duplicate values"},error_wrong_file_type:{zh:"\u9519\u8BEF\u7684\u6587\u4EF6\u7C7B\u578B",en:"Wrong file type"},error_fetch_url:{zh:"\u8BF7\u68C0\u67E5url\u5730\u5740\u662F\u5426\u6B63\u786E\u6216\u7A0D\u540E\u518D\u8BD5\u3002",en:"Please check if the url address is correct or try again later."},deepl_api:{zh:"DeepL \u63A5\u53E3",en:"DeepL API"},deepl_key:{zh:"DeepL \u5BC6\u94A5",en:"DeepL Key"},openai_api:{zh:"OpenAI \u63A5\u53E3",en:"OpenAI API"},openai_key:{zh:"OpenAI \u5BC6\u94A5",en:"OpenAI Key"},openai_model:{zh:"OpenAI \u6A21\u578B",en:"OpenAI Model"},openai_prompt:{zh:"OpenAI \u63D0\u793A\u8BCD",en:"OpenAI Prompt"},if_clear_cache:{zh:"\u662F\u5426\u6E05\u9664\u7F13\u5B58",en:"Whether clear cache"},clear_cache_never:{zh:"\u4E0D\u6E05\u9664\u7F13\u5B58",en:"Never clear cache"},clear_cache_restart:{zh:"\u91CD\u542F\u6D4F\u89C8\u5668\u65F6\u6E05\u9664\u7F13\u5B58",en:"Clear cache when restarting browser"},data_sync_type:{zh:"\u6570\u636E\u540C\u6B65\u65B9\u5F0F",en:"Data Sync Type"},data_sync_url:{zh:"\u6570\u636E\u540C\u6B65\u63A5\u53E3",en:"Data Sync API"},data_sync_user:{zh:"\u6570\u636E\u540C\u6B65\u8D26\u6237",en:"Data Sync User"},data_sync_key:{zh:"\u6570\u636E\u540C\u6B65\u5BC6\u94A5",en:"Data Sync Key"},sync_now:{zh:"\u7ACB\u5373\u540C\u6B65",en:"Sync Now"},sync_success:{zh:"\u540C\u6B65\u6210\u529F\uFF01",en:"Sync Success"},sync_failed:{zh:"\u540C\u6B65\u5931\u8D25\uFF01",en:"Sync Error"},error_got_some_wrong:{zh:"\u62B1\u6B49\uFF0C\u51FA\u9519\u4E86\uFF01",en:"Sorry, something went wrong!"},error_sync_setting:{zh:"\u60A8\u7684\u540C\u6B65\u7C7B\u578B\u5FC5\u987B\u4E3A\u201CKISS-Worker\u201D\uFF0C\u4E14\u9700\u586B\u5199\u5B8C\u6574",en:"Your sync type must be \"KISS-Worker\" and must be filled in completely"},click_test:{zh:"\u70B9\u51FB\u6D4B\u8BD5",en:"Click Test"},test_success:{zh:"\u6D4B\u8BD5\u6210\u529F",en:"Test success"},test_failed:{zh:"\u6D4B\u8BD5\u5931\u8D25",en:"Test failed"},clear_all_cache_now:{zh:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u7F13\u5B58",en:"Clear all cache now"},clear_cache:{zh:"\u6E05\u9664\u7F13\u5B58",en:"Clear Cache"},clear_success:{zh:"\u6E05\u9664\u6210\u529F",en:"Clear success"},clear_failed:{zh:"\u6E05\u9664\u5931\u8D25",en:"Clear failed"},share:{zh:"\u5206\u4EAB",en:"Share"},clear_all:{zh:"\u6E05\u7A7A",en:"Clear All"},help:{zh:"\u6C42\u52A9",en:"Help"},restore_default:{zh:"\u6062\u590D\u9ED8\u8BA4",en:"Restore Default"},shortcuts_setting:{zh:"\u5FEB\u6377\u952E\u8BBE\u7F6E",en:"Shortcuts Setting"},toggle_translate_shortcut:{zh:"\"\u5F00\u542F\u7FFB\u8BD1\"\u5FEB\u6377\u952E",en:"\"Toggle Translate\" Shortcut"},toggle_style_shortcut:{zh:"\"\u5207\u6362\u6837\u5F0F\"\u5FEB\u6377\u952E",en:"\"Toggle Style\" Shortcut"},toggle_popup_shortcut:{zh:"\"\u6253\u5F00\u5F39\u7A97\"\u5FEB\u6377\u952E",en:"\"Open Popup\" Shortcut"},open_setting_shortcut:{zh:"\"\u6253\u5F00\u8BBE\u7F6E\"\u5FEB\u6377\u952E",en:"\"Open Setting\" Shortcut"},hide_fab_button:{zh:"\u9690\u85CF\u60AC\u6D6E\u6309\u94AE",en:"Hide Fab Button"},hide_tran_button:{zh:"\u9690\u85CF\u7FFB\u8BD1\u6309\u94AE",en:"Hide Translate Button"},show:{zh:"\u663E\u793A",en:"Show"},hide:{zh:"\u9690\u85CF",en:"Hide"},save_rule:{zh:"\u4FDD\u5B58\u89C4\u5219",en:"Save Rule"},global_rule:{zh:"\u5168\u5C40\u89C4\u5219",en:"Global Rule"},input_translate:{zh:"\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation"},use_input_box_translation:{zh:"\u542F\u7528\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation"},input_selector:{zh:"\u8F93\u5165\u6846\u9009\u62E9\u5668",en:"Input Selector"},input_selector_helper:{zh:"\u7528\u4E8E\u8F93\u5165\u6846\u7FFB\u8BD1\u3002",en:"Used for input box translation."},trigger_trans_shortcut:{zh:"\u89E6\u53D1\u7FFB\u8BD1\u5FEB\u6377\u952E",en:"Trigger Translation Shortcut Keys"},trigger_trans_shortcut_help:{zh:"\u9ED8\u8BA4\u4E3A\u5355\u51FB\u201CAltLeft+KeyI\u201D",en:"Default is \"AltLeft+KeyI\""},shortcut_press_count:{zh:"\u5FEB\u6377\u952E\u8FDE\u51FB\u6B21\u6570",en:"Shortcut Press Number"},combo_timeout:{zh:"\u8FDE\u51FB\u8D85\u65F6\u65F6\u95F4 (10-1000ms)",en:"Combo Timeout (10-1000ms)"},input_trans_start_sign:{zh:"\u7FFB\u8BD1\u8D77\u59CB\u6807\u8BC6",en:"Translation Start Sign"},input_trans_start_sign_help:{zh:"\u6807\u8BC6\u540E\u9762\u53EF\u4EE5\u52A0\u76EE\u6807\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1A \u201C/en \u4F60\u597D\u201D\u3001\u201C/zh hello\u201D",en:"The target language code can be added after the sign, such as: \"/en \u4F60\u597D\", \"/zh hello\""},detect_lang_remote:{zh:"\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B",en:"Remote language detection"},detect_lang_remote_help:{zh:"\u542F\u7528\u540E\u68C0\u6D4B\u51C6\u786E\u5EA6\u589E\u52A0\uFF0C\u4F46\u4F1A\u964D\u4F4E\u7FFB\u8BD1\u901F\u5EA6\uFF0C\u8BF7\u914C\u60C5\u5F00\u542F",en:"After enabling, the detection accuracy will increase, but it will reduce the translation speed. Please enable it as appropriate."},disable:{zh:"\u7981\u7528",en:"Disable"},enable:{zh:"\u542F\u7528",en:"Enable"},selection_translate:{zh:"\u5212\u8BCD\u7FFB\u8BD1",en:"Selection Translate"},toggle_selection_translate:{zh:"\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"Use Selection Translate"},trigger_tranbox_shortcut:{zh:"\u663E\u793A\u7FFB\u8BD1\u6846/\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57\u5FEB\u6377\u952E",en:"Open Translate Popup/Translate Selected Shortcut"},tranbtn_offset_x:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBX\uFF080-100\uFF09",en:"Translate Button Offset X (0-100)"},tranbtn_offset_y:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBY\uFF080-100\uFF09",en:"Translate Button Offset Y (0-100)"},translated_text:{zh:"\u8BD1\u6587",en:"Translated Text"},original_text:{zh:"\u539F\u6587",en:"Original Text"},favorite_words:{zh:"\u6536\u85CF\u8BCD\u6C47",en:"Favorite Words"},touch_setting:{zh:"\u89E6\u5C4F\u8BBE\u7F6E",en:"Touch Setting"},touch_translate_shortcut:{zh:"\u89E6\u5C4F\u7FFB\u8BD1\u5FEB\u6377\u65B9\u5F0F",en:"Touch Translate Shortcut"},touch_tap_0:{zh:"\u7981\u7528",en:"Disable"},touch_tap_2:{zh:"\u53CC\u6307\u8F7B\u89E6",en:"Two finger tap"},touch_tap_3:{zh:"\u4E09\u6307\u8F7B\u89E6",en:"Three finger tap"},touch_tap_4:{zh:"\u56DB\u6307\u8F7B\u89E6",en:"Four finger tap"},translate_blacklist:{zh:"\u7981\u7528\u7FFB\u8BD1\u540D\u5355",en:"Translate Blacklist"},disable_langs:{zh:"\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",en:"Disable Languages"},disable_langs_helper:{zh:"\u6B64\u529F\u80FD\u4F9D\u8D56\u51C6\u786E\u7684\u8BED\u8A00\u68C0\u6D4B\uFF0C\u5EFA\u8BAE\u542F\u7528\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B\u3002",en:"This feature relies on accurate language detection. It is recommended to enable remote language detection."},context_menus:{zh:"\u53F3\u952E\u83DC\u5355",en:"Context Menus"},hide_context_menus:{zh:"\u9690\u85CF\u53F3\u952E\u83DC\u5355",en:"Hide Context Menus"},simple_context_menus:{zh:"\u7B80\u5355\u53F3\u952E\u83DC\u5355",en:"Simple_context_menus Context Menus"},secondary_context_menus:{zh:"\u4E8C\u7EA7\u53F3\u952E\u83DC\u5355",en:"Secondary Context Menus"},mulkeys_help:{zh:"\u652F\u6301\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u591A\u4E2AKEY\u8F6E\u8BE2\u8C03\u7528\u3002",en:"Supports multiple KEY polling calls separated by newlines or English commas \",\"."},translate_page_title:{zh:"\u662F\u5426\u540C\u65F6\u7FFB\u8BD1\u9875\u9762\u6807\u9898",en:"Translate Page Title"}}; +var UI_LANGS=(/* unused pure expression or super */ null && ([["en","English"],["zh","中文"]]));var customApiLangs="[\"en\", \"English - English\"],\n[\"zh-CN\", \"Simplified Chinese - \u7B80\u4F53\u4E2D\u6587\"],\n[\"zh-TW\", \"Traditional Chinese - \u7E41\u9AD4\u4E2D\u6587\"],\n[\"ar\", \"Arabic - \u0627\u0644\u0639\u0631\u0628\u064A\u0629\"],\n[\"bg\", \"Bulgarian - \u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438\"],\n[\"ca\", \"Catalan - Catal\xE0\"],\n[\"hr\", \"Croatian - Hrvatski\"],\n[\"cs\", \"Czech - \u010Ce\u0161tina\"],\n[\"da\", \"Danish - Dansk\"],\n[\"nl\", \"Dutch - Nederlands\"],\n[\"fi\", \"Finnish - Suomi\"],\n[\"fr\", \"French - Fran\xE7ais\"],\n[\"de\", \"German - Deutsch\"],\n[\"el\", \"Greek - \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC\"],\n[\"hi\", \"Hindi - \u0939\u093F\u0928\u094D\u0926\u0940\"],\n[\"hu\", \"Hungarian - Magyar\"],\n[\"id\", \"Indonesian - Indonesia\"],\n[\"it\", \"Italian - Italiano\"],\n[\"ja\", \"Japanese - \u65E5\u672C\u8A9E\"],\n[\"ko\", \"Korean - \uD55C\uAD6D\uC5B4\"],\n[\"ms\", \"Malay - Melayu\"],\n[\"mt\", \"Maltese - Malti\"],\n[\"nb\", \"Norwegian - Norsk Bokm\xE5l\"],\n[\"pl\", \"Polish - Polski\"],\n[\"pt\", \"Portuguese - Portugu\xEAs\"],\n[\"ro\", \"Romanian - Rom\xE2n\u0103\"],\n[\"ru\", \"Russian - \u0420\u0443\u0441\u0441\u043A\u0438\u0439\"],\n[\"sk\", \"Slovak - Sloven\u010Dina\"],\n[\"sl\", \"Slovenian - Sloven\u0161\u010Dina\"],\n[\"es\", \"Spanish - Espa\xF1ol\"],\n[\"sv\", \"Swedish - Svenska\"],\n[\"ta\", \"Tamil - \u0BA4\u0BAE\u0BBF\u0BB4\u0BCD\"],\n[\"te\", \"Telugu - \u0C24\u0C46\u0C32\u0C41\u0C17\u0C41\"],\n[\"th\", \"Thai - \u0E44\u0E17\u0E22\"],\n[\"tr\", \"Turkish - T\xFCrk\xE7e\"],\n[\"uk\", \"Ukrainian - \u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430\"],\n[\"vi\", \"Vietnamese - Ti\u1EBFng Vi\u1EC7t\"],\n";var customApiHelpZH="/// \u81EA\u5B9A\u4E49\u7FFB\u8BD1\u6E90\u63A5\u53E3\u8BF4\u660E\n\n// \u8BF7\u6C42\uFF08Request\uFF09\u6570\u636E\u5C06\u6309\u4E0B\u9762\u89C4\u8303\u53D1\u9001\n{\n url: {{YOUR_URL}},\n method: \"POST\",\n headers: {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{YOUR_KEY}}\",\n },\n body: {\n text: \"\", // \u9700\u8981\u7FFB\u8BD1\u7684\u6587\u5B57\n from: \"\", // \u6E90\u8BED\u8A00\uFF0C\u53EF\u80FD\u4E3A\u7A7A\uFF0C\u8868\u793A\u9700\u8981\u63A5\u53E3\u81EA\u52A8\u8BC6\u522B\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\n }\n}\n\n// \u8FD4\u56DE\uFF08Response\uFF09\u6570\u636E\u9700\u7B26\u5408\u4E0B\u9762\u7684JSON\u89C4\u8303\n{\n text: \"\", // \u7FFB\u8BD1\u540E\u7684\u6587\u5B57\n from: \"\", // \u8BC6\u522B\u7684\u6E90\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\uFF08\u53EF\u9009\uFF09\n}\n\n// \u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u5982\u4E0B\n".concat(customApiLangs,"\n");var customApiHelpEN="/// Custom translation source interface description\n\n// Request data will be sent according to the following specifications\n{\n url: {{YOUR_URL}},\n method: \"POST\",\n headers: {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{YOUR_KEY}}\",\n },\n body: {\n text: \"\", // text to be translated\n from: \"\", // Source language, may be empty\n to: \"\", // Target language\n }\n}\n\n// The returned data must conform to the following JSON specification\n{\n text: \"\", // translated text\n from: \"\", // Recognized source language\n to: \"\", // Target language (optional)\n}\n\n// The supported language codes are as follows\n".concat(customApiLangs,"\n");var I18N={app_name:{zh:"\u7B80\u7EA6\u7FFB\u8BD1",en:"KISS Translator"},translate:{zh:"\u7FFB\u8BD1",en:"Translate"},custom_api_help:{zh:customApiHelpZH,en:customApiHelpEN},translate_alt:{zh:"\u7FFB\u8BD1",en:"Translate"},basic_setting:{zh:"\u57FA\u672C\u8BBE\u7F6E",en:"Basic Setting"},rules_setting:{zh:"\u89C4\u5219\u8BBE\u7F6E",en:"Rules Setting"},apis_setting:{zh:"\u63A5\u53E3\u8BBE\u7F6E",en:"Apis Setting"},sync_setting:{zh:"\u540C\u6B65\u8BBE\u7F6E",en:"Sync Setting"},patch_setting:{zh:"\u8865\u4E01\u8BBE\u7F6E",en:"Patch Setting"},patch_setting_help:{zh:"\u9488\u5BF9\u4E00\u4E9B\u7279\u6B8A\u7F51\u7AD9\u7684\u4FEE\u6B63\u811A\u672C\uFF0C\u4EE5\u4FBF\u7FFB\u8BD1\u8F6F\u4EF6\u5F97\u5230\u66F4\u597D\u7684\u5C55\u793A\u6548\u679C\u3002",en:"Corrected scripts for some special websites so that the translation software can get better display results."},inject_webfix:{zh:"\u6CE8\u5165\u4FEE\u590D\u8865\u4E01",en:"Inject Webfix"},about:{zh:"\u5173\u4E8E",en:"About"},about_md:{zh:"README.md",en:"README.en.md"},about_md_local:{zh:"\u8BF7 [\u70B9\u51FB\u8FD9\u91CC](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8BE6\u60C5\u3002"),en:"Please [click here](".concat("https://github.com/fishjar/kiss-translator",") for details.")},ui_lang:{zh:"\u754C\u9762\u8BED\u8A00",en:"Interface Language"},fetch_limit:{zh:"\u6700\u5927\u5E76\u53D1\u8BF7\u6C42\u6570\u91CF (1-100)",en:"Maximum Number Of Concurrent Requests (1-100)"},fetch_interval:{zh:"\u6BCF\u6B21\u8BF7\u6C42\u95F4\u9694\u65F6\u95F4 (0-5000ms)",en:"Time Between Requests (0-5000ms)"},translate_interval:{zh:"\u91CD\u65B0\u7FFB\u8BD1\u95F4\u9694\u65F6\u95F4 (100-5000ms)",en:"Retranslation Interval (100-5000ms)"},min_translate_length:{zh:"\u6700\u5C0F\u7FFB\u8BD1\u5B57\u7B26\u6570 (1-100)",en:"Minimum number Of Translated Characters (1-100)"},max_translate_length:{zh:"\u6700\u5927\u7FFB\u8BD1\u5B57\u7B26\u6570 (100-10000)",en:"Maximum number Of Translated Characters (100-10000)"},num_of_newline_characters:{zh:"\u6362\u884C\u5B57\u7B26\u6570 (1-1000)",en:"Number of Newline Characters (1-1000)"},translate_service:{zh:"\u7FFB\u8BD1\u670D\u52A1",en:"Translate Service"},translate_timing:{zh:"\u7FFB\u8BD1\u65F6\u673A",en:"Translate Timing"},mk_pagescroll:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u7FFB\u8BD1\uFF08\u63A8\u8350\uFF09",en:"Rolling Loading (Suggested)"},mk_pageopen:{zh:"\u9875\u9762\u6253\u5F00\u5168\u90E8\u7FFB\u8BD1",en:"Page Open"},mk_mouseover:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover"},mk_ctrlKey:{zh:"Control + \u9F20\u6807\u60AC\u505C",en:"Control + Mouseover"},mk_shiftKey:{zh:"Shift + \u9F20\u6807\u60AC\u505C",en:"Shift + Mouseover"},mk_altKey:{zh:"Alt + \u9F20\u6807\u60AC\u505C",en:"Alt + Mouseover"},from_lang:{zh:"\u539F\u6587\u8BED\u8A00",en:"Source Language"},to_lang:{zh:"\u76EE\u6807\u8BED\u8A00",en:"Target Language"},to_lang2:{zh:"\u7B2C\u4E8C\u76EE\u6807\u8BED\u8A00",en:"Target Language 2"},to_lang2_helper:{zh:"\u8BBE\u5B9A\u540E\uFF0C\u4E0E\u76EE\u6807\u8BED\u8A00\u4EA7\u751F\u4E92\u8BD1\u6548\u679C\uFF0C\u4F46\u4F9D\u8D56\u8FDC\u7A0B\u8BED\u8A00\u8BC6\u522B\u3002",en:"After setting, it will produce mutual translation effect with the target language, but it relies on remote language recognition."},text_style:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style"},text_style_alt:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style"},bg_color:{zh:"\u6837\u5F0F\u989C\u8272",en:"Style Color"},remain_unchanged:{zh:"\u4FDD\u7559\u4E0D\u53D8",en:"Remain Unchanged"},google_api:{zh:"\u8C37\u6B4C\u7FFB\u8BD1\u63A5\u53E3",en:"Google Translate API"},default_selector:{zh:"\u9ED8\u8BA4\u9009\u62E9\u5668",en:"Default selector"},selector_rules:{zh:"\u9009\u62E9\u5668\u89C4\u5219",en:"Selector Rules"},save:{zh:"\u4FDD\u5B58",en:"Save"},edit:{zh:"\u7F16\u8F91",en:"Edit"},cancel:{zh:"\u53D6\u6D88",en:"Cancel"},delete:{zh:"\u5220\u9664",en:"Delete"},reset:{zh:"\u91CD\u7F6E",en:"Reset"},add:{zh:"\u6DFB\u52A0",en:"Add"},inject_rules:{zh:"\u6CE8\u5165\u8BA2\u9605\u89C4\u5219",en:"Inject Subscribe Rules"},personal_rules:{zh:"\u4E2A\u4EBA\u89C4\u5219",en:"Rules"},subscribe_rules:{zh:"\u8BA2\u9605\u89C4\u5219",en:"Subscribe"},overwrite_subscribe_rules:{zh:"\u8986\u5199\u8BA2\u9605\u89C4\u5219",en:"Overwrite"},subscribe_url:{zh:"\u8BA2\u9605\u5730\u5740",en:"Subscribe URL"},rules_warn_1:{zh:"1\u3001\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u4E00\u76F4\u751F\u6548\uFF0C\u9009\u62E9\u201C\u6CE8\u5165\u8BA2\u9605\u89C4\u5219\u201D\u540E\uFF0C\u201C\u8BA2\u9605\u89C4\u5219\u201D\u624D\u4F1A\u751F\u6548\u3002",en:"1. The \"Personal Rules\" are always in effect. After selecting \"Inject Subscription Rules\", the \"Subscription Rules\" will take effect."},rules_warn_2:{zh:"2\u3001\u201C\u8BA2\u9605\u89C4\u5219\u201D\u7684\u6CE8\u5165\u4F4D\u7F6E\u662F\u5012\u6570\u7B2C\u4E8C\u7684\u4F4D\u7F6E\uFF0C\u56E0\u6B64\u9664\u5168\u5C40\u89C4\u5219(*)\u5916\uFF0C\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u4F18\u5148\u7EA7\u6BD4\u201C\u8BA2\u9605\u89C4\u5219\u201D\u9AD8\uFF0C\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u586B\u5199\u540C\u6837\u7684\u7F51\u5740\u4F1A\u8986\u76D6\u201D\u8BA2\u9605\u89C4\u5219\u201C\u7684\u6761\u76EE\u3002",en:"2. The injection position of \"Subscription Rules\" is the penultimate position. Therefore, except for the global rules (*), the priority of \"Personal Rules\" is higher than that of \"Subscription Rules\". Filling in the same url in \"Personal Rules\" will overwrite \"Subscription Rules\" entry."},rules_warn_3:{zh:"3\u3001\u5173\u4E8E\u89C4\u5219\u586B\u5199\uFF1A\u8F93\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u6846\u9009\u201C*\u201D\u8868\u793A\u91C7\u7528\u5168\u5C40\u89C4\u5219\u3002",en:"3. Regarding filling in the rules: Leave the input box blank or select \"*\" in the drop-down box to use global rule."},sync_warn:{zh:"\u5982\u679C\u670D\u52A1\u5668\u5B58\u5728\u5176\u4ED6\u5BA2\u6237\u7AEF\u540C\u6B65\u7684\u6570\u636E\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u5C06\u76F4\u63A5\u8986\u76D6\u672C\u5730\u914D\u7F6E\uFF0C\u540E\u9762\u5219\u6839\u636E\u4FEE\u6539\u65F6\u95F4\uFF0C\u65B0\u7684\u8986\u76D6\u65E7\u7684\u3002",en:"If the server has data synchronized by other clients, the first synchronization will directly overwrite the local configuration, and later, according to the modification time, the new one will overwrite the old one."},about_sync_api:{zh:"\u67E5\u770B\u5173\u4E8E\u6570\u636E\u540C\u6B65\u63A5\u53E3\u90E8\u7F72",en:"View About Data Synchronization Interface Deployment"},about_api_proxy:{zh:"\u67E5\u770B\u81EA\u5EFA\u4E00\u4E2A\u7FFB\u8BD1\u63A5\u53E3\u4EE3\u7406",en:"Check out the self-built translation interface proxy"},style_none:{zh:"\u65E0",en:"None"},under_line:{zh:"\u4E0B\u5212\u76F4\u7EBF",en:"Underline"},dot_line:{zh:"\u4E0B\u5212\u70B9\u72B6\u7EBF",en:"Dotted Underline"},dash_line:{zh:"\u4E0B\u5212\u865A\u7EBF",en:"Dashed Underline"},wavy_line:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF",en:"Wavy Underline"},fuzzy:{zh:"\u6A21\u7CCA",en:"Fuzzy"},highlight:{zh:"\u9AD8\u4EAE",en:"Highlight"},blockquote:{zh:"\u5F15\u7528",en:"Blockquote"},diy_style:{zh:"\u81EA\u5B9A\u4E49\u6837\u5F0F",en:"Custom Style"},diy_style_helper:{zh:"\u9075\u5FAA\u201CCSS\u201D\u7684\u8BED\u6CD5",en:"Follow the syntax of \"CSS\""},setting:{zh:"\u8BBE\u7F6E",en:"Setting"},pattern:{zh:"\u5339\u914D\u7F51\u5740",en:"URL pattern"},pattern_helper:{zh:"1\u3001\u652F\u6301\u661F\u53F7(*)\u901A\u914D\u7B26\u30022\u3001\u591A\u4E2AURL\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u3002",en:"1. Supports the asterisk (*) wildcard character. 2. Separate multiple URLs with newlines or English commas \",\"."},selector_helper:{zh:"1\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u30022\u3001\u591A\u4E2ACSS\u9009\u62E9\u5668\u4E4B\u95F4\u7528\u201C;\u201D\u9694\u5F00\u30023\u3001\u201Cshadow root\u201D\u9009\u62E9\u5668\u548C\u5185\u90E8\u9009\u62E9\u5668\u7528\u201C>>>\u201D\u9694\u5F00\u3002",en:"1. Follow CSS selector syntax. 2. Separate multiple CSS selectors with \";\". 3. The \"shadow root\" selector and the internal selector are separated by \">>>\"."},translate_switch:{zh:"\u5F00\u542F\u7FFB\u8BD1",en:"Translate Switch"},default_enabled:{zh:"\u9ED8\u8BA4\u5F00\u542F",en:"Enabled"},default_disabled:{zh:"\u9ED8\u8BA4\u5173\u95ED",en:"Disabled"},selector:{zh:"\u9009\u62E9\u5668",en:"Selector"},keep_selector:{zh:"\u4FDD\u7559\u5143\u7D20\u9009\u62E9\u5668",en:"Keep unchanged selector"},keep_selector_helper:{zh:"1\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u30022\u3001\u5B50\u5143\u7D20\u9009\u62E9\u5668\u7528\u201C>>>\u201D\u9694\u5F00\u3002",en:"1. Follow CSS selector syntax. 2. Sub-element selectors are separated by \">>>\"."},terms:{zh:"\u4E13\u4E1A\u672F\u8BED",en:"Terms"},terms_helper:{zh:"1\u3001\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\uFF0C\u65E0\u9700\u659C\u6746\uFF0C\u4E0D\u652F\u6301\u4FEE\u9970\u7B26\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. Supports regular expression matching, no slash required, and no modifiers are supported. 2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated."},selector_style:{zh:"\u9009\u62E9\u5668\u8282\u70B9\u6837\u5F0F",en:"Selector Style"},selector_style_helper:{zh:"\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\uFF0C\u5173\u95ED\u7FFB\u8BD1\u65F6\u4E0D\u4F1A\u79FB\u9664\u3002",en:"It is injected when translation is turned on and will not be removed when translation is turned off."},selector_parent_style:{zh:"\u9009\u62E9\u5668\u7236\u8282\u70B9\u6837\u5F0F",en:"Selector Parent Style"},inject_js:{zh:"\u6CE8\u5165JS",en:"Inject JS"},inject_js_helper:{zh:"1\u3001\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\u8FD0\u884C\uFF0C\u5173\u95ED\u7FFB\u8BD1\u65F6\u79FB\u9664\u30022\u3001\u968F\u7740\u9875\u9762\u53D8\u5316\uFF0C\u53EF\u80FD\u4F1A\u591A\u6B21\u6CE8\u5165\u8FD0\u884C\u3002",en:"1. Inject and run when translation is turned on, and removed when translation is turned off. 2. As the page changes, it may be injected and run multiple times."},inject_css:{zh:"\u6CE8\u5165CSS",en:"Inject CSS"},inject_css_helper:{zh:"\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\uFF0C\u5173\u95ED\u7FFB\u8BD1\u65F6\u5C06\u79FB\u9664\u3002",en:"Injected when translation is enabled and removed when translation is disabled."},root_selector:{zh:"\u6839\u9009\u62E9\u5668",en:"Root Selector"},fixer_function:{zh:"\u4FEE\u590D\u51FD\u6570",en:"Fixer Function"},fixer_function_helper:{zh:"1\u3001br\u662F\u5C06
\u6362\u884C\u66FF\u6362\u6210

\u30022\u3001bn\u662F\u5C06\\n\u6362\u884C\u66FF\u6362\u6210

\u30023\u3001brToDiv\u548CbnToDiv\u662F\u66FF\u6362\u6210

\u3002",en:"1. br replaces
line breaks with

. 2. bn replaces \\n newline with

. 3. brToDiv and bnToDiv are replaced with

."},import:{zh:"\u5BFC\u5165",en:"Import"},export:{zh:"\u5BFC\u51FA",en:"Export"},error_cant_be_blank:{zh:"\u4E0D\u80FD\u4E3A\u7A7A",en:"Can not be blank"},error_duplicate_values:{zh:"\u5B58\u5728\u91CD\u590D\u7684\u503C",en:"There are duplicate values"},error_wrong_file_type:{zh:"\u9519\u8BEF\u7684\u6587\u4EF6\u7C7B\u578B",en:"Wrong file type"},error_fetch_url:{zh:"\u8BF7\u68C0\u67E5url\u5730\u5740\u662F\u5426\u6B63\u786E\u6216\u7A0D\u540E\u518D\u8BD5\u3002",en:"Please check if the url address is correct or try again later."},deepl_api:{zh:"DeepL \u63A5\u53E3",en:"DeepL API"},deepl_key:{zh:"DeepL \u5BC6\u94A5",en:"DeepL Key"},openai_api:{zh:"OpenAI \u63A5\u53E3",en:"OpenAI API"},openai_key:{zh:"OpenAI \u5BC6\u94A5",en:"OpenAI Key"},openai_model:{zh:"OpenAI \u6A21\u578B",en:"OpenAI Model"},openai_prompt:{zh:"OpenAI \u63D0\u793A\u8BCD",en:"OpenAI Prompt"},if_clear_cache:{zh:"\u662F\u5426\u6E05\u9664\u7F13\u5B58",en:"Whether clear cache"},clear_cache_never:{zh:"\u4E0D\u6E05\u9664\u7F13\u5B58",en:"Never clear cache"},clear_cache_restart:{zh:"\u91CD\u542F\u6D4F\u89C8\u5668\u65F6\u6E05\u9664\u7F13\u5B58",en:"Clear cache when restarting browser"},data_sync_type:{zh:"\u6570\u636E\u540C\u6B65\u65B9\u5F0F",en:"Data Sync Type"},data_sync_url:{zh:"\u6570\u636E\u540C\u6B65\u63A5\u53E3",en:"Data Sync API"},data_sync_user:{zh:"\u6570\u636E\u540C\u6B65\u8D26\u6237",en:"Data Sync User"},data_sync_key:{zh:"\u6570\u636E\u540C\u6B65\u5BC6\u94A5",en:"Data Sync Key"},sync_now:{zh:"\u7ACB\u5373\u540C\u6B65",en:"Sync Now"},sync_success:{zh:"\u540C\u6B65\u6210\u529F\uFF01",en:"Sync Success"},sync_failed:{zh:"\u540C\u6B65\u5931\u8D25\uFF01",en:"Sync Error"},error_got_some_wrong:{zh:"\u62B1\u6B49\uFF0C\u51FA\u9519\u4E86\uFF01",en:"Sorry, something went wrong!"},error_sync_setting:{zh:"\u60A8\u7684\u540C\u6B65\u7C7B\u578B\u5FC5\u987B\u4E3A\u201CKISS-Worker\u201D\uFF0C\u4E14\u9700\u586B\u5199\u5B8C\u6574",en:"Your sync type must be \"KISS-Worker\" and must be filled in completely"},click_test:{zh:"\u70B9\u51FB\u6D4B\u8BD5",en:"Click Test"},test_success:{zh:"\u6D4B\u8BD5\u6210\u529F",en:"Test success"},test_failed:{zh:"\u6D4B\u8BD5\u5931\u8D25",en:"Test failed"},clear_all_cache_now:{zh:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u7F13\u5B58",en:"Clear all cache now"},clear_cache:{zh:"\u6E05\u9664\u7F13\u5B58",en:"Clear Cache"},clear_success:{zh:"\u6E05\u9664\u6210\u529F",en:"Clear success"},clear_failed:{zh:"\u6E05\u9664\u5931\u8D25",en:"Clear failed"},share:{zh:"\u5206\u4EAB",en:"Share"},clear_all:{zh:"\u6E05\u7A7A",en:"Clear All"},help:{zh:"\u6C42\u52A9",en:"Help"},restore_default:{zh:"\u6062\u590D\u9ED8\u8BA4",en:"Restore Default"},shortcuts_setting:{zh:"\u5FEB\u6377\u952E\u8BBE\u7F6E",en:"Shortcuts Setting"},toggle_translate_shortcut:{zh:"\"\u5F00\u542F\u7FFB\u8BD1\"\u5FEB\u6377\u952E",en:"\"Toggle Translate\" Shortcut"},toggle_style_shortcut:{zh:"\"\u5207\u6362\u6837\u5F0F\"\u5FEB\u6377\u952E",en:"\"Toggle Style\" Shortcut"},toggle_popup_shortcut:{zh:"\"\u6253\u5F00\u5F39\u7A97\"\u5FEB\u6377\u952E",en:"\"Open Popup\" Shortcut"},open_setting_shortcut:{zh:"\"\u6253\u5F00\u8BBE\u7F6E\"\u5FEB\u6377\u952E",en:"\"Open Setting\" Shortcut"},hide_fab_button:{zh:"\u9690\u85CF\u60AC\u6D6E\u6309\u94AE",en:"Hide Fab Button"},hide_tran_button:{zh:"\u9690\u85CF\u7FFB\u8BD1\u6309\u94AE",en:"Hide Translate Button"},show:{zh:"\u663E\u793A",en:"Show"},hide:{zh:"\u9690\u85CF",en:"Hide"},save_rule:{zh:"\u4FDD\u5B58\u89C4\u5219",en:"Save Rule"},global_rule:{zh:"\u5168\u5C40\u89C4\u5219",en:"Global Rule"},input_translate:{zh:"\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation"},use_input_box_translation:{zh:"\u542F\u7528\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation"},input_selector:{zh:"\u8F93\u5165\u6846\u9009\u62E9\u5668",en:"Input Selector"},input_selector_helper:{zh:"\u7528\u4E8E\u8F93\u5165\u6846\u7FFB\u8BD1\u3002",en:"Used for input box translation."},trigger_trans_shortcut:{zh:"\u89E6\u53D1\u7FFB\u8BD1\u5FEB\u6377\u952E",en:"Trigger Translation Shortcut Keys"},trigger_trans_shortcut_help:{zh:"\u9ED8\u8BA4\u4E3A\u5355\u51FB\u201CAltLeft+KeyI\u201D",en:"Default is \"AltLeft+KeyI\""},shortcut_press_count:{zh:"\u5FEB\u6377\u952E\u8FDE\u51FB\u6B21\u6570",en:"Shortcut Press Number"},combo_timeout:{zh:"\u8FDE\u51FB\u8D85\u65F6\u65F6\u95F4 (10-1000ms)",en:"Combo Timeout (10-1000ms)"},input_trans_start_sign:{zh:"\u7FFB\u8BD1\u8D77\u59CB\u6807\u8BC6",en:"Translation Start Sign"},input_trans_start_sign_help:{zh:"\u6807\u8BC6\u540E\u9762\u53EF\u4EE5\u52A0\u76EE\u6807\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1A \u201C/en \u4F60\u597D\u201D\u3001\u201C/zh hello\u201D",en:"The target language code can be added after the sign, such as: \"/en \u4F60\u597D\", \"/zh hello\""},detect_lang_remote:{zh:"\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B",en:"Remote language detection"},detect_lang_remote_help:{zh:"\u542F\u7528\u540E\u68C0\u6D4B\u51C6\u786E\u5EA6\u589E\u52A0\uFF0C\u4F46\u4F1A\u964D\u4F4E\u7FFB\u8BD1\u901F\u5EA6\uFF0C\u8BF7\u914C\u60C5\u5F00\u542F",en:"After enabling, the detection accuracy will increase, but it will reduce the translation speed. Please enable it as appropriate."},disable:{zh:"\u7981\u7528",en:"Disable"},enable:{zh:"\u542F\u7528",en:"Enable"},selection_translate:{zh:"\u5212\u8BCD\u7FFB\u8BD1",en:"Selection Translate"},toggle_selection_translate:{zh:"\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"Use Selection Translate"},trigger_tranbox_shortcut:{zh:"\u663E\u793A\u7FFB\u8BD1\u6846/\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57\u5FEB\u6377\u952E",en:"Open Translate Popup/Translate Selected Shortcut"},tranbtn_offset_x:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBX\uFF080-100\uFF09",en:"Translate Button Offset X (0-100)"},tranbtn_offset_y:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBY\uFF080-100\uFF09",en:"Translate Button Offset Y (0-100)"},translated_text:{zh:"\u8BD1\u6587",en:"Translated Text"},original_text:{zh:"\u539F\u6587",en:"Original Text"},favorite_words:{zh:"\u6536\u85CF\u8BCD\u6C47",en:"Favorite Words"},touch_setting:{zh:"\u89E6\u5C4F\u8BBE\u7F6E",en:"Touch Setting"},touch_translate_shortcut:{zh:"\u89E6\u5C4F\u7FFB\u8BD1\u5FEB\u6377\u65B9\u5F0F",en:"Touch Translate Shortcut"},touch_tap_0:{zh:"\u7981\u7528",en:"Disable"},touch_tap_2:{zh:"\u53CC\u6307\u8F7B\u89E6",en:"Two finger tap"},touch_tap_3:{zh:"\u4E09\u6307\u8F7B\u89E6",en:"Three finger tap"},touch_tap_4:{zh:"\u56DB\u6307\u8F7B\u89E6",en:"Four finger tap"},translate_blacklist:{zh:"\u7981\u7528\u7FFB\u8BD1\u540D\u5355",en:"Translate Blacklist"},skip_langs:{zh:"\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",en:"Disable Languages"},skip_langs_helper:{zh:"\u6B64\u529F\u80FD\u4F9D\u8D56\u51C6\u786E\u7684\u8BED\u8A00\u68C0\u6D4B\uFF0C\u5EFA\u8BAE\u542F\u7528\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B\u3002",en:"This feature relies on accurate language detection. It is recommended to enable remote language detection."},context_menus:{zh:"\u53F3\u952E\u83DC\u5355",en:"Context Menus"},hide_context_menus:{zh:"\u9690\u85CF\u53F3\u952E\u83DC\u5355",en:"Hide Context Menus"},simple_context_menus:{zh:"\u7B80\u5355\u53F3\u952E\u83DC\u5355",en:"Simple_context_menus Context Menus"},secondary_context_menus:{zh:"\u4E8C\u7EA7\u53F3\u952E\u83DC\u5355",en:"Secondary Context Menus"},mulkeys_help:{zh:"\u652F\u6301\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u591A\u4E2AKEY\u8F6E\u8BE2\u8C03\u7528\u3002",en:"Supports multiple KEY polling calls separated by newlines or English commas \",\"."},translation_element_tag:{zh:"\u8BD1\u6587\u5143\u7D20\u6807\u7B7E",en:"Translation Element Tag"},show_only_translations:{zh:"\u4EC5\u663E\u793A\u8BD1\u6587",en:"Show Only Translations"},show_only_translations_help:{zh:"\u975E\u5B8C\u7F8E\u5B9E\u73B0\uFF0C\u67D0\u4E9B\u9875\u9762\u53EF\u80FD\u6709\u6837\u5F0F\u7B49\u95EE\u9898\u3002",en:"It is not a perfect implementation and some pages may have style issues."},translate_page_title:{zh:"\u662F\u5426\u7FFB\u8BD1\u9875\u9762\u6807\u9898",en:"Translate Page Title"},more:{zh:"\u66F4\u591A",en:"More"},fixer_selector:{zh:"\u7F51\u9875\u4FEE\u590D\u9009\u62E9\u5668",en:"Fixer Selector"}}; ;// CONCATENATED MODULE: ./src/config/index.js -var _OPT_LANGS_SPECIAL,_DEFAULT_TRANS_APIS,_DEFAULT_SHORTCUTS;var STOKEY_MSAUTH="".concat(APP_NAME,"_msauth");var STOKEY_BDAUTH="".concat(APP_NAME,"_bdauth");var STOKEY_SETTING="".concat(APP_NAME,"_setting");var STOKEY_RULES="".concat(APP_NAME,"_rules");var STOKEY_WFRULES="".concat(APP_NAME,"_webfix_rules");var STOKEY_WORDS="".concat(APP_NAME,"_words");var STOKEY_SYNC="".concat(APP_NAME,"_sync");var STOKEY_FAB="".concat(APP_NAME,"_fab");var STOKEY_RULESCACHE_PREFIX="".concat(APP_NAME,"_rulescache_");var STOKEY_WEBFIXCACHE_PREFIX="".concat(APP_NAME,"_webfixcache_");var CMD_TOGGLE_TRANSLATE="toggleTranslate";var CMD_TOGGLE_STYLE="toggleStyle";var CMD_OPEN_OPTIONS="openOptions";var CMD_OPEN_TRANBOX="openTranbox";var CLIENT_WEB="web";var CLIENT_CHROME="chrome";var CLIENT_EDGE="edge";var CLIENT_FIREFOX="firefox";var CLIENT_USERSCRIPT="userscript";var CLIENT_EXTS=[CLIENT_CHROME,CLIENT_EDGE,CLIENT_FIREFOX];var KV_RULES_KEY="kiss-rules.json";var KV_WFRULES_KEY="kiss-webfix.json";var KV_WORDS_KEY="kiss-words.json";var KV_RULES_SHARE_KEY="kiss-rules-share.json";var KV_SETTING_KEY="kiss-setting.json";var KV_SALT_SYNC="KISS-Translator-SYNC";var KV_SALT_SHARE="KISS-Translator-SHARE";var CACHE_NAME="".concat(APP_NAME,"_cache");var MSG_FETCH="fetch";var MSG_FETCH_LIMIT="fetch_limit";var MSG_FETCH_CLEAR="fetch_clear";var MSG_OPEN_OPTIONS="open_options";var MSG_SAVE_RULE="save_rule";var MSG_TRANS_TOGGLE="trans_toggle";var MSG_TRANS_TOGGLE_STYLE="trans_toggle_style";var MSG_OPEN_TRANBOX="open_tranbox";var MSG_TRANS_GETRULE="trans_getrule";var MSG_TRANS_PUTRULE="trans_putrule";var MSG_TRANS_CURRULE="trans_currule";var MSG_CONTEXT_MENUS="context_menus";var MSG_COMMAND_SHORTCUTS="command_shortcuts";var THEME_LIGHT="light";var THEME_DARK="dark";var URL_KISS_WORKER="https://github.com/fishjar/kiss-worker";var URL_KISS_PROXY="https://github.com/fishjar/kiss-proxy";var URL_KISS_RULES="https://github.com/fishjar/kiss-rules";var URL_KISS_RULES_NEW_ISSUE="https://github.com/fishjar/kiss-rules/issues/new";var URL_RAW_PREFIX="https://raw.githubusercontent.com/fishjar/kiss-translator/master";var URL_CACHE_TRAN="https://".concat(APP_LCNAME,"/translate");var URL_MICROSOFT_TRAN="https://api-edge.cognitive.microsofttranslator.com/translate";var URL_MICROSOFT_AUTH="https://edge.microsoft.com/translate/auth";var URL_BAIDU_LANGDETECT="https://fanyi.baidu.com/langdetect";var URL_BAIDU_WEB="https://fanyi.baidu.com/";var URL_BAIDU_TRANSAPI="https://fanyi.baidu.com/transapi";var URL_BAIDU_TRANSAPI_V2="https://fanyi.baidu.com/v2transapi";var URL_DEEPLFREE_TRAN="https://www2.deepl.com/jsonrpc";var URL_TENCENT_TRANSMART="https://transmart.qq.com/api/imt";var OPT_TRANS_GOOGLE="Google";var OPT_TRANS_MICROSOFT="Microsoft";var OPT_TRANS_DEEPL="DeepL";var OPT_TRANS_DEEPLX="DeepLX";var OPT_TRANS_DEEPLFREE="DeepLFree";var OPT_TRANS_BAIDU="Baidu";var OPT_TRANS_TENCENT="Tencent";var OPT_TRANS_OPENAI="OpenAI";var OPT_TRANS_GEMINI="Gemini";var OPT_TRANS_CLOUDFLAREAI="CloudflareAI";var OPT_TRANS_CUSTOMIZE="Custom";var OPT_TRANS_ALL=[OPT_TRANS_GOOGLE,OPT_TRANS_MICROSOFT,OPT_TRANS_BAIDU,OPT_TRANS_TENCENT,OPT_TRANS_DEEPL,OPT_TRANS_DEEPLFREE,OPT_TRANS_DEEPLX,OPT_TRANS_OPENAI,OPT_TRANS_GEMINI,OPT_TRANS_CLOUDFLAREAI,OPT_TRANS_CUSTOMIZE];var OPT_LANGS_TO=[["en","English - English"],["zh-CN","Simplified Chinese - 简体中文"],["zh-TW","Traditional Chinese - 繁體中文"],["ar","Arabic - العربية"],["bg","Bulgarian - Български"],["ca","Catalan - Català"],["hr","Croatian - Hrvatski"],["cs","Czech - Čeština"],["da","Danish - Dansk"],["nl","Dutch - Nederlands"],["fi","Finnish - Suomi"],["fr","French - Français"],["de","German - Deutsch"],["el","Greek - Ελληνικά"],["hi","Hindi - हिन्दी"],["hu","Hungarian - Magyar"],["id","Indonesian - Indonesia"],["it","Italian - Italiano"],["ja","Japanese - 日本語"],["ko","Korean - 한국어"],["ms","Malay - Melayu"],["mt","Maltese - Malti"],["nb","Norwegian - Norsk Bokmål"],["pl","Polish - Polski"],["pt","Portuguese - Português"],["ro","Romanian - Română"],["ru","Russian - Русский"],["sk","Slovak - Slovenčina"],["sl","Slovenian - Slovenščina"],["es","Spanish - Español"],["sv","Swedish - Svenska"],["ta","Tamil - தமிழ்"],["te","Telugu - తెలుగు"],["th","Thai - ไทย"],["tr","Turkish - Türkçe"],["uk","Ukrainian - Українська"],["vi","Vietnamese - Tiếng Việt"]];var OPT_LANGS_FROM=[["auto","Auto-detect"]].concat(OPT_LANGS_TO);var OPT_LANGS_SPECIAL=(_OPT_LANGS_SPECIAL={},_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_GOOGLE,new Map(OPT_LANGS_FROM.map(function(_ref){var _ref2=_slicedToArray(_ref,1),key=_ref2[0];return[key,key];}))),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_MICROSOFT,new Map([].concat(toConsumableArray_toConsumableArray(OPT_LANGS_FROM.map(function(_ref3){var _ref4=_slicedToArray(_ref3,1),key=_ref4[0];return[key,key];})),[["auto",""],["zh-CN","zh-Hans"],["zh-TW","zh-Hant"]]))),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPL,new Map([].concat(toConsumableArray_toConsumableArray(OPT_LANGS_FROM.map(function(_ref5){var _ref6=_slicedToArray(_ref5,1),key=_ref6[0];return[key,key.toUpperCase()];})),[["auto",""],["zh-CN","ZH"],["zh-TW","ZH"]]))),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPLFREE,new Map([].concat(toConsumableArray_toConsumableArray(OPT_LANGS_FROM.map(function(_ref7){var _ref8=_slicedToArray(_ref7,1),key=_ref8[0];return[key,key.toUpperCase()];})),[["auto","auto"],["zh-CN","ZH"],["zh-TW","ZH"]]))),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPLX,new Map([].concat(toConsumableArray_toConsumableArray(OPT_LANGS_FROM.map(function(_ref9){var _ref10=_slicedToArray(_ref9,1),key=_ref10[0];return[key,key.toUpperCase()];})),[["auto",""],["zh-CN","ZH"],["zh-TW","ZH"]]))),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_BAIDU,new Map([].concat(toConsumableArray_toConsumableArray(OPT_LANGS_FROM.map(function(_ref11){var _ref12=_slicedToArray(_ref11,1),key=_ref12[0];return[key,key];})),[["zh-CN","zh"],["zh-TW","cht"],["ar","ara"],["bg","bul"],["ca","cat"],["hr","hrv"],["da","dan"],["fi","fin"],["fr","fra"],["hi","mai"],["ja","jp"],["ko","kor"],["ms","may"],["mt","mlt"],["nb","nor"],["ro","rom"],["ru","ru"],["sl","slo"],["es","spa"],["sv","swe"],["ta","tam"],["te","tel"],["uk","ukr"],["vi","vie"]]))),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_TENCENT,new Map([["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ar","ar"],["de","de"],["ru","ru"],["fr","fr"],["fi","fil"],["ko","ko"],["ms","ms"],["pt","pt"],["ja","ja"],["th","th"],["tr","tr"],["es","es"],["it","it"],["hi","hi"],["id","id"],["vi","vi"]])),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_OPENAI,new Map(OPT_LANGS_FROM.map(function(_ref13){var _ref14=_slicedToArray(_ref13,2),key=_ref14[0],val=_ref14[1];return[key,val.split(" - ")[0]];}))),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_GEMINI,new Map(OPT_LANGS_FROM.map(function(_ref15){var _ref16=_slicedToArray(_ref15,2),key=_ref16[0],val=_ref16[1];return[key,val.split(" - ")[0]];}))),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_CLOUDFLAREAI,new Map([["auto",""],["zh-CN","chinese"],["zh-TW","chinese"],["en","english"],["ar","arabic"],["de","german"],["ru","russian"],["fr","french"],["pt","portuguese"],["ja","japanese"],["es","spanish"],["hi","hindi"]])),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_CUSTOMIZE,new Map([].concat(toConsumableArray_toConsumableArray(OPT_LANGS_FROM.map(function(_ref17){var _ref18=_slicedToArray(_ref17,1),key=_ref18[0];return[key,key];})),[["auto",""]]))),_OPT_LANGS_SPECIAL);var OPT_LANGS_LIST=OPT_LANGS_TO.map(function(_ref19){var _ref20=_slicedToArray(_ref19,1),lang=_ref20[0];return lang;});var OPT_LANGS_BAIDU=new Map(Array.from(OPT_LANGS_SPECIAL[OPT_TRANS_BAIDU].entries()).map(function(_ref21){var _ref22=_slicedToArray(_ref21,2),k=_ref22[0],v=_ref22[1];return[v,k];}));var OPT_LANGS_TENCENT=new Map(Array.from(OPT_LANGS_SPECIAL[OPT_TRANS_TENCENT].entries()).map(function(_ref23){var _ref24=_slicedToArray(_ref23,2),k=_ref24[0],v=_ref24[1];return[v,k];}));OPT_LANGS_TENCENT.set("zh","zh-CN");var OPT_STYLE_NONE="style_none";// 无 +var _OPT_LANGS_SPECIAL,_DEFAULT_TRANS_APIS,_DEFAULT_SHORTCUTS;var STOKEY_MSAUTH="".concat(APP_NAME,"_msauth");var STOKEY_BDAUTH="".concat(APP_NAME,"_bdauth");var STOKEY_SETTING="".concat(APP_NAME,"_setting");var STOKEY_RULES="".concat(APP_NAME,"_rules");var STOKEY_WORDS="".concat(APP_NAME,"_words");var STOKEY_SYNC="".concat(APP_NAME,"_sync");var STOKEY_FAB="".concat(APP_NAME,"_fab");var STOKEY_RULESCACHE_PREFIX="".concat(APP_NAME,"_rulescache_");var CMD_TOGGLE_TRANSLATE="toggleTranslate";var CMD_TOGGLE_STYLE="toggleStyle";var CMD_OPEN_OPTIONS="openOptions";var CMD_OPEN_TRANBOX="openTranbox";var CLIENT_WEB="web";var CLIENT_CHROME="chrome";var CLIENT_EDGE="edge";var CLIENT_FIREFOX="firefox";var CLIENT_USERSCRIPT="userscript";var CLIENT_EXTS=[CLIENT_CHROME,CLIENT_EDGE,CLIENT_FIREFOX];var KV_RULES_KEY="kiss-rules.json";var KV_WORDS_KEY="kiss-words.json";var KV_RULES_SHARE_KEY="kiss-rules-share.json";var KV_SETTING_KEY="kiss-setting.json";var KV_SALT_SYNC="KISS-Translator-SYNC";var KV_SALT_SHARE="KISS-Translator-SHARE";var CACHE_NAME="".concat(APP_NAME,"_cache");var MSG_FETCH="fetch";var MSG_FETCH_LIMIT="fetch_limit";var MSG_FETCH_CLEAR="fetch_clear";var MSG_OPEN_OPTIONS="open_options";var MSG_SAVE_RULE="save_rule";var MSG_TRANS_TOGGLE="trans_toggle";var MSG_TRANS_TOGGLE_STYLE="trans_toggle_style";var MSG_OPEN_TRANBOX="open_tranbox";var MSG_TRANS_GETRULE="trans_getrule";var MSG_TRANS_PUTRULE="trans_putrule";var MSG_TRANS_CURRULE="trans_currule";var MSG_CONTEXT_MENUS="context_menus";var MSG_COMMAND_SHORTCUTS="command_shortcuts";var MSG_INJECT_JS="inject_js";var MSG_INJECT_CSS="inject_css";var THEME_LIGHT="light";var THEME_DARK="dark";var URL_KISS_WORKER="https://github.com/fishjar/kiss-worker";var URL_KISS_PROXY="https://github.com/fishjar/kiss-proxy";var URL_KISS_RULES="https://github.com/fishjar/kiss-rules";var URL_KISS_RULES_NEW_ISSUE="https://github.com/fishjar/kiss-rules/issues/new";var URL_RAW_PREFIX="https://raw.githubusercontent.com/fishjar/kiss-translator/master";var URL_CACHE_TRAN="https://".concat(APP_LCNAME,"/translate");var URL_MICROSOFT_TRAN="https://api-edge.cognitive.microsofttranslator.com/translate";var URL_MICROSOFT_AUTH="https://edge.microsoft.com/translate/auth";var URL_BAIDU_LANGDETECT="https://fanyi.baidu.com/langdetect";var URL_BAIDU_SUGGEST="https://fanyi.baidu.com/sug";var URL_BAIDU_WEB="https://fanyi.baidu.com/";var URL_BAIDU_TRANSAPI="https://fanyi.baidu.com/transapi";var URL_BAIDU_TRANSAPI_V2="https://fanyi.baidu.com/v2transapi";var URL_DEEPLFREE_TRAN="https://www2.deepl.com/jsonrpc";var URL_TENCENT_TRANSMART="https://transmart.qq.com/api/imt";var OPT_TRANS_GOOGLE="Google";var OPT_TRANS_MICROSOFT="Microsoft";var OPT_TRANS_DEEPL="DeepL";var OPT_TRANS_DEEPLX="DeepLX";var OPT_TRANS_DEEPLFREE="DeepLFree";var OPT_TRANS_BAIDU="Baidu";var OPT_TRANS_TENCENT="Tencent";var OPT_TRANS_OPENAI="OpenAI";var OPT_TRANS_GEMINI="Gemini";var OPT_TRANS_CLOUDFLAREAI="CloudflareAI";var OPT_TRANS_CUSTOMIZE="Custom";var OPT_TRANS_ALL=[OPT_TRANS_GOOGLE,OPT_TRANS_MICROSOFT,OPT_TRANS_BAIDU,OPT_TRANS_TENCENT,OPT_TRANS_DEEPL,OPT_TRANS_DEEPLFREE,OPT_TRANS_DEEPLX,OPT_TRANS_OPENAI,OPT_TRANS_GEMINI,OPT_TRANS_CLOUDFLAREAI,OPT_TRANS_CUSTOMIZE];var OPT_LANGS_TO=[["en","English - English"],["zh-CN","Simplified Chinese - 简体中文"],["zh-TW","Traditional Chinese - 繁體中文"],["ar","Arabic - العربية"],["bg","Bulgarian - Български"],["ca","Catalan - Català"],["hr","Croatian - Hrvatski"],["cs","Czech - Čeština"],["da","Danish - Dansk"],["nl","Dutch - Nederlands"],["fi","Finnish - Suomi"],["fr","French - Français"],["de","German - Deutsch"],["el","Greek - Ελληνικά"],["hi","Hindi - हिन्दी"],["hu","Hungarian - Magyar"],["id","Indonesian - Indonesia"],["it","Italian - Italiano"],["ja","Japanese - 日本語"],["ko","Korean - 한국어"],["ms","Malay - Melayu"],["mt","Maltese - Malti"],["nb","Norwegian - Norsk Bokmål"],["pl","Polish - Polski"],["pt","Portuguese - Português"],["ro","Romanian - Română"],["ru","Russian - Русский"],["sk","Slovak - Slovenčina"],["sl","Slovenian - Slovenščina"],["es","Spanish - Español"],["sv","Swedish - Svenska"],["ta","Tamil - தமிழ்"],["te","Telugu - తెలుగు"],["th","Thai - ไทย"],["tr","Turkish - Türkçe"],["uk","Ukrainian - Українська"],["vi","Vietnamese - Tiếng Việt"]];var OPT_LANGS_FROM=[["auto","Auto-detect"]].concat(OPT_LANGS_TO);var OPT_LANGS_SPECIAL=(_OPT_LANGS_SPECIAL={},_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_GOOGLE,new Map(OPT_LANGS_FROM.map(function(_ref){var _ref2=_slicedToArray(_ref,1),key=_ref2[0];return[key,key];}))),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_MICROSOFT,new Map([].concat(toConsumableArray_toConsumableArray(OPT_LANGS_FROM.map(function(_ref3){var _ref4=_slicedToArray(_ref3,1),key=_ref4[0];return[key,key];})),[["auto",""],["zh-CN","zh-Hans"],["zh-TW","zh-Hant"]]))),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPL,new Map([].concat(toConsumableArray_toConsumableArray(OPT_LANGS_FROM.map(function(_ref5){var _ref6=_slicedToArray(_ref5,1),key=_ref6[0];return[key,key.toUpperCase()];})),[["auto",""],["zh-CN","ZH"],["zh-TW","ZH"]]))),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPLFREE,new Map([].concat(toConsumableArray_toConsumableArray(OPT_LANGS_FROM.map(function(_ref7){var _ref8=_slicedToArray(_ref7,1),key=_ref8[0];return[key,key.toUpperCase()];})),[["auto","auto"],["zh-CN","ZH"],["zh-TW","ZH"]]))),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPLX,new Map([].concat(toConsumableArray_toConsumableArray(OPT_LANGS_FROM.map(function(_ref9){var _ref10=_slicedToArray(_ref9,1),key=_ref10[0];return[key,key.toUpperCase()];})),[["auto",""],["zh-CN","ZH"],["zh-TW","ZH"]]))),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_BAIDU,new Map([].concat(toConsumableArray_toConsumableArray(OPT_LANGS_FROM.map(function(_ref11){var _ref12=_slicedToArray(_ref11,1),key=_ref12[0];return[key,key];})),[["zh-CN","zh"],["zh-TW","cht"],["ar","ara"],["bg","bul"],["ca","cat"],["hr","hrv"],["da","dan"],["fi","fin"],["fr","fra"],["hi","mai"],["ja","jp"],["ko","kor"],["ms","may"],["mt","mlt"],["nb","nor"],["ro","rom"],["ru","ru"],["sl","slo"],["es","spa"],["sv","swe"],["ta","tam"],["te","tel"],["uk","ukr"],["vi","vie"]]))),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_TENCENT,new Map([["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ar","ar"],["de","de"],["ru","ru"],["fr","fr"],["fi","fil"],["ko","ko"],["ms","ms"],["pt","pt"],["ja","ja"],["th","th"],["tr","tr"],["es","es"],["it","it"],["hi","hi"],["id","id"],["vi","vi"]])),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_OPENAI,new Map(OPT_LANGS_FROM.map(function(_ref13){var _ref14=_slicedToArray(_ref13,2),key=_ref14[0],val=_ref14[1];return[key,val.split(" - ")[0]];}))),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_GEMINI,new Map(OPT_LANGS_FROM.map(function(_ref15){var _ref16=_slicedToArray(_ref15,2),key=_ref16[0],val=_ref16[1];return[key,val.split(" - ")[0]];}))),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_CLOUDFLAREAI,new Map([["auto",""],["zh-CN","chinese"],["zh-TW","chinese"],["en","english"],["ar","arabic"],["de","german"],["ru","russian"],["fr","french"],["pt","portuguese"],["ja","japanese"],["es","spanish"],["hi","hindi"]])),_defineProperty(_OPT_LANGS_SPECIAL,OPT_TRANS_CUSTOMIZE,new Map([].concat(toConsumableArray_toConsumableArray(OPT_LANGS_FROM.map(function(_ref17){var _ref18=_slicedToArray(_ref17,1),key=_ref18[0];return[key,key];})),[["auto",""]]))),_OPT_LANGS_SPECIAL);var OPT_LANGS_LIST=OPT_LANGS_TO.map(function(_ref19){var _ref20=_slicedToArray(_ref19,1),lang=_ref20[0];return lang;});var OPT_LANGS_BAIDU=new Map(Array.from(OPT_LANGS_SPECIAL[OPT_TRANS_BAIDU].entries()).map(function(_ref21){var _ref22=_slicedToArray(_ref21,2),k=_ref22[0],v=_ref22[1];return[v,k];}));var OPT_LANGS_TENCENT=new Map(Array.from(OPT_LANGS_SPECIAL[OPT_TRANS_TENCENT].entries()).map(function(_ref23){var _ref24=_slicedToArray(_ref23,2),k=_ref24[0],v=_ref24[1];return[v,k];}));OPT_LANGS_TENCENT.set("zh","zh-CN");var OPT_STYLE_NONE="style_none";// 无 var OPT_STYLE_LINE="under_line";// 下划线 var OPT_STYLE_DOTLINE="dot_line";// 点状线 var OPT_STYLE_DASHLINE="dash_line";// 虚线 @@ -34235,45 +34283,73 @@ var OPT_STYLE_FUZZY="fuzzy";// 模糊 var OPT_STYLE_HIGHLIGHT="highlight";// 高亮 var OPT_STYLE_BLOCKQUOTE="blockquote";// 引用 var OPT_STYLE_DIY="diy_style";// 自定义样式 -var OPT_STYLE_ALL=[OPT_STYLE_NONE,OPT_STYLE_LINE,OPT_STYLE_DOTLINE,OPT_STYLE_DASHLINE,OPT_STYLE_WAVYLINE,OPT_STYLE_FUZZY,OPT_STYLE_HIGHLIGHT,OPT_STYLE_BLOCKQUOTE,OPT_STYLE_DIY];var OPT_STYLE_USE_COLOR=[OPT_STYLE_LINE,OPT_STYLE_DOTLINE,OPT_STYLE_DASHLINE,OPT_STYLE_WAVYLINE,OPT_STYLE_HIGHLIGHT,OPT_STYLE_BLOCKQUOTE];var OPT_MOUSEKEY_DISABLE="mk_disable";// 滚动加载翻译 -var OPT_MOUSEKEY_PAGEOPEN="mk_pageopen";// 直接翻译到底 -var OPT_MOUSEKEY_MOUSEOVER="mk_mouseover";var OPT_MOUSEKEY_CONTROL="mk_ctrlKey";var OPT_MOUSEKEY_SHIFT="mk_shiftKey";var OPT_MOUSEKEY_ALT="mk_altKey";var OPT_MOUSEKEY_ALL=[OPT_MOUSEKEY_DISABLE,OPT_MOUSEKEY_PAGEOPEN,OPT_MOUSEKEY_MOUSEOVER,OPT_MOUSEKEY_CONTROL,OPT_MOUSEKEY_SHIFT,OPT_MOUSEKEY_ALT];var DEFAULT_FETCH_LIMIT=10;// 默认最大任务数量 +var OPT_STYLE_ALL=[OPT_STYLE_NONE,OPT_STYLE_LINE,OPT_STYLE_DOTLINE,OPT_STYLE_DASHLINE,OPT_STYLE_WAVYLINE,OPT_STYLE_FUZZY,OPT_STYLE_HIGHLIGHT,OPT_STYLE_BLOCKQUOTE,OPT_STYLE_DIY];var OPT_STYLE_USE_COLOR=[OPT_STYLE_LINE,OPT_STYLE_DOTLINE,OPT_STYLE_DASHLINE,OPT_STYLE_WAVYLINE,OPT_STYLE_HIGHLIGHT,OPT_STYLE_BLOCKQUOTE];var OPT_TIMING_PAGESCROLL="mk_pagescroll";// 滚动加载翻译 +var OPT_TIMING_PAGEOPEN="mk_pageopen";// 直接翻译到底 +var OPT_TIMING_MOUSEOVER="mk_mouseover";var OPT_TIMING_CONTROL="mk_ctrlKey";var OPT_TIMING_SHIFT="mk_shiftKey";var OPT_TIMING_ALT="mk_altKey";var OPT_TIMING_ALL=[OPT_TIMING_PAGESCROLL,OPT_TIMING_PAGEOPEN,OPT_TIMING_MOUSEOVER,OPT_TIMING_CONTROL,OPT_TIMING_SHIFT,OPT_TIMING_ALT];var DEFAULT_FETCH_LIMIT=10;// 默认最大任务数量 var DEFAULT_FETCH_INTERVAL=100;// 默认任务间隔时间 var PROMPT_PLACE_FROM="{{from}}";// 占位符 var PROMPT_PLACE_TO="{{to}}";// 占位符 var PROMPT_PLACE_TEXT="{{text}}";// 占位符 var DEFAULT_COLOR="#209CEE";// 默认高亮背景色/线条颜色 -// 全局规则 -var GLOBLA_RULE={pattern:"*",selector:DEFAULT_SELECTOR,keepSelector:DEFAULT_KEEP_SELECTOR,terms:"",translator:OPT_TRANS_MICROSOFT,fromLang:"auto",toLang:"zh-CN",textStyle:OPT_STYLE_DASHLINE,transOpen:"false",bgColor:"",textDiyStyle:""};// 输入框翻译 +var DEFAULT_TRANS_TAG="span";var DEFAULT_SELECT_STYLE="-webkit-line-clamp: unset; max-height: none; height: auto;";// 全局规则 +var GLOBLA_RULE={pattern:"*",// 匹配网址 +selector:DEFAULT_SELECTOR,// 选择器 +keepSelector:DEFAULT_KEEP_SELECTOR,// 保留元素选择器 +terms:"",// 专业术语 +translator:OPT_TRANS_MICROSOFT,// 翻译服务 +fromLang:"auto",// 源语言 +toLang:"zh-CN",// 目标语言 +textStyle:OPT_STYLE_DASHLINE,// 译文样式 +transOpen:"false",// 开启翻译 +bgColor:"",// 译文颜色 +textDiyStyle:"",// 自定义译文样式 +selectStyle:DEFAULT_SELECT_STYLE,// 选择器节点样式 +parentStyle:DEFAULT_SELECT_STYLE,// 选择器父节点样式 +injectJs:"",// 注入JS +injectCss:"",// 注入CSS +transOnly:"false",// 是否仅显示译文 +transTiming:OPT_TIMING_PAGESCROLL,// 翻译时机/鼠标悬停翻译 +transTag:DEFAULT_TRANS_TAG,// 译文元素标签 +transTitle:"false",// 是否同时翻译页面标题 +detectRemote:"false",// 是否使用远程语言检测 +skipLangs:[],// 不翻译的语言 +fixerSelector:"",// 修复函数选择器 +fixerFunc:"-"// 修复函数 +};// 输入框翻译 var OPT_INPUT_TRANS_SIGNS=["/","//","\\","\\\\",">",">>"];var DEFAULT_INPUT_SHORTCUT=["AltLeft","KeyI"];var DEFAULT_INPUT_RULE={transOpen:true,translator:OPT_TRANS_MICROSOFT,fromLang:"auto",toLang:"en",triggerShortcut:DEFAULT_INPUT_SHORTCUT,triggerCount:1,triggerTime:200,transSign:OPT_INPUT_TRANS_SIGNS[0]};// 划词翻译 var DEFAULT_TRANBOX_SHORTCUT=["AltLeft","KeyS"];var DEFAULT_TRANBOX_SETTING={transOpen:true,translator:OPT_TRANS_MICROSOFT,fromLang:"auto",toLang:"zh-CN",toLang2:"en",tranboxShortcut:DEFAULT_TRANBOX_SHORTCUT,btnOffsetX:10,btnOffsetY:10,hideTranBtn:false};// 订阅列表 var DEFAULT_SUBRULES_LIST=[{url:"https://fishjar.github.io/kiss-rules/kiss-rules.json",selected:false},{url:"https://fishjar.github.io/kiss-rules/kiss-rules-on.json",selected:true},{url:"https://fishjar.github.io/kiss-rules/kiss-rules-off.json",selected:false}];// 翻译接口 -var DEFAULT_TRANS_APIS=(_DEFAULT_TRANS_APIS={},_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_GOOGLE,{url:"https://translate.googleapis.com/translate_a/single",key:""}),_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPL,{url:"https://api-free.deepl.com/v2/translate",key:""}),_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPLX,{url:"http://localhost:1188/translate",key:""}),_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_OPENAI,{url:"https://api.openai.com/v1/chat/completions",key:"",model:"gpt-4",prompt:"You will be provided with a sentence in ".concat(PROMPT_PLACE_FROM,", and your task is to translate it into ").concat(PROMPT_PLACE_TO,".")}),_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_GEMINI,{url:"https://generativelanguage.googleapis.com/v1/models",key:"",model:"gemini-pro",prompt:"Translate the following text from ".concat(PROMPT_PLACE_FROM," to ").concat(PROMPT_PLACE_TO,":\n\n").concat(PROMPT_PLACE_TEXT)}),_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_CLOUDFLAREAI,{url:"https://api.cloudflare.com/client/v4/accounts/{ACCOUNT_ID}/ai/run/@cf/meta/m2m100-1.2b",key:""}),_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_CUSTOMIZE,{url:"",key:""}),_DEFAULT_TRANS_APIS);// 默认快捷键 +var DEFAULT_TRANS_APIS=(_DEFAULT_TRANS_APIS={},_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_GOOGLE,{url:"https://translate.googleapis.com/translate_a/single",key:"",fetchLimit:DEFAULT_FETCH_LIMIT,// 最大任务数量 +fetchInterval:DEFAULT_FETCH_INTERVAL// 任务间隔时间 +}),_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_MICROSOFT,{fetchLimit:DEFAULT_FETCH_LIMIT,fetchInterval:DEFAULT_FETCH_INTERVAL}),_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_BAIDU,{fetchLimit:DEFAULT_FETCH_LIMIT,fetchInterval:DEFAULT_FETCH_INTERVAL}),_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_TENCENT,{fetchLimit:DEFAULT_FETCH_LIMIT,fetchInterval:DEFAULT_FETCH_INTERVAL}),_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPL,{url:"https://api-free.deepl.com/v2/translate",key:"",fetchLimit:1,fetchInterval:500}),_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPLFREE,{fetchLimit:1,fetchInterval:500}),_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPLX,{url:"http://localhost:1188/translate",key:"",fetchLimit:1,fetchInterval:500}),_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_OPENAI,{url:"https://api.openai.com/v1/chat/completions",key:"",model:"gpt-4",prompt:"You will be provided with a sentence in ".concat(PROMPT_PLACE_FROM,", and your task is to translate it into ").concat(PROMPT_PLACE_TO,"."),fetchLimit:1,fetchInterval:500}),_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_GEMINI,{url:"https://generativelanguage.googleapis.com/v1/models",key:"",model:"gemini-pro",prompt:"Translate the following text from ".concat(PROMPT_PLACE_FROM," to ").concat(PROMPT_PLACE_TO,":\n\n").concat(PROMPT_PLACE_TEXT),fetchLimit:1,fetchInterval:500}),_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_CLOUDFLAREAI,{url:"https://api.cloudflare.com/client/v4/accounts/{ACCOUNT_ID}/ai/run/@cf/meta/m2m100-1.2b",key:"",fetchLimit:1,fetchInterval:500}),_defineProperty(_DEFAULT_TRANS_APIS,OPT_TRANS_CUSTOMIZE,{url:"",key:"",fetchLimit:DEFAULT_FETCH_LIMIT,fetchInterval:DEFAULT_FETCH_INTERVAL}),_DEFAULT_TRANS_APIS);// 默认快捷键 var OPT_SHORTCUT_TRANSLATE="toggleTranslate";var OPT_SHORTCUT_STYLE="toggleStyle";var OPT_SHORTCUT_POPUP="togglePopup";var OPT_SHORTCUT_SETTING="openSetting";var DEFAULT_SHORTCUTS=(_DEFAULT_SHORTCUTS={},_defineProperty(_DEFAULT_SHORTCUTS,OPT_SHORTCUT_TRANSLATE,["AltLeft","KeyQ"]),_defineProperty(_DEFAULT_SHORTCUTS,OPT_SHORTCUT_STYLE,["AltLeft","KeyC"]),_defineProperty(_DEFAULT_SHORTCUTS,OPT_SHORTCUT_POPUP,["AltLeft","KeyK"]),_defineProperty(_DEFAULT_SHORTCUTS,OPT_SHORTCUT_SETTING,["AltLeft","KeyO"]),_DEFAULT_SHORTCUTS);var TRANS_MIN_LENGTH=5;// 最短翻译长度 var TRANS_MAX_LENGTH=5000;// 最长翻译长度 var TRANS_NEWLINE_LENGTH=20;// 换行字符数 var DEFAULT_BLACKLIST=["https://fishjar.github.io/kiss-translator/options.html","https://translate.google.com","https://www.deepl.com/translator","oapi.dingtalk.com","login.dingtalk.com"];// 禁用翻译名单 var DEFAULT_SETTING={darkMode:false,// 深色模式 uiLang:"en",// 界面语言 -fetchLimit:DEFAULT_FETCH_LIMIT,// 最大任务数量 -fetchInterval:DEFAULT_FETCH_INTERVAL,// 任务间隔时间 +// fetchLimit: DEFAULT_FETCH_LIMIT, // 最大任务数量(移至transApis,作废) +// fetchInterval: DEFAULT_FETCH_INTERVAL, // 任务间隔时间(移至transApis,作废) minLength:TRANS_MIN_LENGTH,maxLength:TRANS_MAX_LENGTH,newlineLength:TRANS_NEWLINE_LENGTH,clearCache:false,// 是否在浏览器下次启动时清除缓存 injectRules:true,// 是否注入订阅规则 -injectWebfix:true,// 是否注入修复补丁 -detectRemote:false,// 是否使用远程语言检测 -contextMenus:true,// 是否添加右键菜单(作废) +// injectWebfix: true, // 是否注入修复补丁(作废) +// detectRemote: false, // 是否使用远程语言检测(移至rule,作废) +// contextMenus: true, // 是否添加右键菜单(作废) contextMenuType:1,// 右键菜单类型(0不显示,1简单菜单,2多级菜单) -transTitle:false,// 是否同时翻译页面标题 +// transTag: DEFAULT_TRANS_TAG, // 译文元素标签(移至rule,作废) +// transOnly: false, // 是否仅显示译文(移至rule,作废) +// transTitle: false, // 是否同时翻译页面标题(移至rule,作废) subrulesList:DEFAULT_SUBRULES_LIST,// 订阅列表 owSubrule:DEFAULT_OW_RULE,// 覆写订阅规则 transApis:DEFAULT_TRANS_APIS,// 翻译接口 -mouseKey:OPT_MOUSEKEY_DISABLE,// 翻译时机/鼠标悬停翻译 +// mouseKey: OPT_TIMING_PAGESCROLL, // 翻译时机/鼠标悬停翻译(移至rule,作废) shortcuts:DEFAULT_SHORTCUTS,// 快捷键 inputRule:DEFAULT_INPUT_RULE,// 输入框设置 tranboxSetting:DEFAULT_TRANBOX_SETTING,// 划词翻译设置 touchTranslate:2,// 触屏翻译 blacklist:DEFAULT_BLACKLIST.join(",\n"),// 禁用翻译名单 -disableLangs:[]// 不翻译的语言 +// disableLangs: [], // 不翻译的语言(移至rule,作废) +transInterval:500// 翻译间隔时间 };var DEFAULT_RULES=[GLOBLA_RULE];var OPT_SYNCTYPE_WORKER="KISS-Worker";var OPT_SYNCTYPE_WEBDAV="WebDAV";var OPT_SYNCTYPE_ALL=[OPT_SYNCTYPE_WORKER,OPT_SYNCTYPE_WEBDAV];var DEFAULT_SYNC={syncType:OPT_SYNCTYPE_WORKER,// 同步方式 syncUrl:"",// 数据同步接口 syncUser:"",// 数据同步用户名 @@ -34283,7 +34359,7 @@ subRulesSyncAt:0,// 订阅规则同步时间 dataCaches:{}// 缓存同步时间 }; ;// CONCATENATED MODULE: ./src/index.js -function App(){var _I18N$about_md;var _useState=(0,react.useState)("zh"),_useState2=_slicedToArray(_useState,2),lang=_useState2[0],setLang=_useState2[1];var _useFetch=useFetch("".concat(URL_RAW_PREFIX,"/").concat(I18N===null||I18N===void 0?void 0:(_I18N$about_md=I18N["about_md"])===null||_I18N$about_md===void 0?void 0:_I18N$about_md[lang])),_useFetch2=_slicedToArray(_useFetch,3),data=_useFetch2[0],loading=_useFetch2[1],error=_useFetch2[2];return/*#__PURE__*/(0,jsx_runtime.jsxs)(Paper_Paper,{sx:{padding:2,margin:2},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{spacing:2,direction:"row",justifyContent:"flex-end",children:/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:function onClick(){setLang(function(pre){return pre==="zh"?"en":"zh";});},children:lang==="zh"?"ENGLISH":"中文"})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://github.com/fishjar/kiss-translator",children:"KISS Translator v".concat("1.8.3")})}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://fishjar.github.io/kiss-translator/kiss-translator.user.js",children:"Install/Update Userscript for Tampermonkey/Violentmonkey"}),/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js",children:"Install/Update Userscript for iOS Safari"}),/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://fishjar.github.io/kiss-translator/options.html",children:"Open Options Page"})]}),loading?/*#__PURE__*/(0,jsx_runtime.jsx)("center",{children:/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{})}):/*#__PURE__*/(0,jsx_runtime.jsx)(ReactMarkdown,{children:error?error.message:data})]});}var src_root=client.createRoot(document.getElementById("root"));src_root.render(/*#__PURE__*/(0,jsx_runtime.jsx)(react.StrictMode,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(App,{})})); +function App(){var _I18N$about_md;var _useState=(0,react.useState)("zh"),_useState2=_slicedToArray(_useState,2),lang=_useState2[0],setLang=_useState2[1];var _useFetch=useFetch("".concat(URL_RAW_PREFIX,"/").concat(I18N===null||I18N===void 0?void 0:(_I18N$about_md=I18N["about_md"])===null||_I18N$about_md===void 0?void 0:_I18N$about_md[lang])),_useFetch2=_slicedToArray(_useFetch,3),data=_useFetch2[0],loading=_useFetch2[1],error=_useFetch2[2];return/*#__PURE__*/(0,jsx_runtime.jsxs)(Paper_Paper,{sx:{padding:2,margin:2},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{spacing:2,direction:"row",justifyContent:"flex-end",children:/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:function onClick(){setLang(function(pre){return pre==="zh"?"en":"zh";});},children:lang==="zh"?"ENGLISH":"中文"})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://github.com/fishjar/kiss-translator",children:"KISS Translator v".concat("1.8.4")})}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://fishjar.github.io/kiss-translator/kiss-translator.user.js",children:"Install/Update Userscript for Tampermonkey/Violentmonkey"}),/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js",children:"Install/Update Userscript for iOS Safari"}),/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://fishjar.github.io/kiss-translator/options.html",children:"Open Options Page"})]}),loading?/*#__PURE__*/(0,jsx_runtime.jsx)("center",{children:/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{})}):/*#__PURE__*/(0,jsx_runtime.jsx)(ReactMarkdown,{children:error?error.message:data})]});}var src_root=client.createRoot(document.getElementById("root"));src_root.render(/*#__PURE__*/(0,jsx_runtime.jsx)(react.StrictMode,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(App,{})})); }(); /******/ })() ; \ No newline at end of file diff --git a/manifest.firefox.json b/manifest.firefox.json index 3e5f4bd..d46d20d 100644 --- a/manifest.firefox.json +++ b/manifest.firefox.json @@ -2,7 +2,7 @@ "manifest_version": 2, "name": "__MSG_app_name__", "description": "__MSG_app_description__", - "version": "1.8.3", + "version": "1.8.4", "default_locale": "en", "author": "Gabe", "homepage_url": "https://github.com/fishjar/kiss-translator", @@ -44,7 +44,7 @@ "description": "__MSG_open_options__" } }, - "permissions": ["", "storage", "contextMenus"], + "permissions": ["", "storage", "contextMenus", "scripting"], "icons": { "16": "images/logo16.png", "32": "images/logo32.png", diff --git a/manifest.json b/manifest.json index 1d0787e..3b0f403 100644 --- a/manifest.json +++ b/manifest.json @@ -2,7 +2,7 @@ "manifest_version": 3, "name": "__MSG_app_name__", "description": "__MSG_app_description__", - "version": "1.8.3", + "version": "1.8.4", "default_locale": "en", "author": "Gabe", "homepage_url": "https://github.com/fishjar/kiss-translator", @@ -45,7 +45,7 @@ "description": "__MSG_open_options__" } }, - "permissions": ["storage", "contextMenus"], + "permissions": ["storage", "contextMenus", "scripting"], "host_permissions": [""], "icons": { "16": "images/logo16.png", diff --git a/options.js b/options.js index 5f67e02..40ccaca 100644 --- a/options.js +++ b/options.js @@ -1475,6 +1475,28 @@ var insertStyles = function insertStyles(cache, serialized, isStringTag) { }; +/***/ }), + +/***/ 3879: +/***/ (function(__unused_webpack_module, exports, __webpack_require__) { + +"use strict"; +var __webpack_unused_export__; + +"use client"; + +var _interopRequireDefault = __webpack_require__(4652); +__webpack_unused_export__ = ({ + value: true +}); +exports.Z = void 0; +var _createSvgIcon = _interopRequireDefault(__webpack_require__(4926)); +var _jsxRuntime = __webpack_require__(7394); +var _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)("path", { + d: "M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z" +}), 'Add'); +exports.Z = _default; + /***/ }), /***/ 719: @@ -1499,6 +1521,28 @@ exports.Z = _default; /***/ }), +/***/ 3994: +/***/ (function(__unused_webpack_module, exports, __webpack_require__) { + +"use strict"; +var __webpack_unused_export__; + +"use client"; + +var _interopRequireDefault = __webpack_require__(4652); +__webpack_unused_export__ = ({ + value: true +}); +exports.Z = void 0; +var _createSvgIcon = _interopRequireDefault(__webpack_require__(4926)); +var _jsxRuntime = __webpack_require__(7394); +var _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)("path", { + d: "M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z" +}), 'Cancel'); +exports.Z = _default; + +/***/ }), + /***/ 741: /***/ (function(__unused_webpack_module, exports, __webpack_require__) { @@ -1851,6 +1895,28 @@ exports.Z = _default; /***/ }), +/***/ 9906: +/***/ (function(__unused_webpack_module, exports, __webpack_require__) { + +"use strict"; +var __webpack_unused_export__; + +"use client"; + +var _interopRequireDefault = __webpack_require__(4652); +__webpack_unused_export__ = ({ + value: true +}); +exports.Z = void 0; +var _createSvgIcon = _interopRequireDefault(__webpack_require__(4926)); +var _jsxRuntime = __webpack_require__(7394); +var _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)("path", { + d: "M17 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V7l-4-4zm-5 16c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3zm3-10H5V5h10v4z" +}), 'Save'); +exports.Z = _default; + +/***/ }), + /***/ 7352: /***/ (function(__unused_webpack_module, exports, __webpack_require__) { @@ -1873,30 +1939,6 @@ exports.Z = _default; /***/ }), -/***/ 1611: -/***/ (function(__unused_webpack_module, exports, __webpack_require__) { - -"use strict"; -var __webpack_unused_export__; - -"use client"; - -var _interopRequireDefault = __webpack_require__(4652); -__webpack_unused_export__ = ({ - value: true -}); -exports.Z = void 0; -var _createSvgIcon = _interopRequireDefault(__webpack_require__(4926)); -var _jsxRuntime = __webpack_require__(7394); -var _default = (0, _createSvgIcon.default)([/*#__PURE__*/(0, _jsxRuntime.jsx)("path", { - d: "M20 6c0-1.1-.9-2-2-2h-4c0-1.38-1.12-2.5-2.5-2.5S9 2.62 9 4H5.01c-1.1 0-2 .9-2 2v3.8C5.7 9.8 6 11.96 6 12.5s-.29 2.7-3 2.7V19c0 1.1.9 2 2 2h3.8c0-2.16 1.37-2.78 2.2-2.94v-9.3l9 4.5V6z" -}, "0"), /*#__PURE__*/(0, _jsxRuntime.jsx)("path", { - d: "M13 12v4l4 1-4 1v4l10-5z" -}, "1")], 'SendTimeExtension'); -exports.Z = _default; - -/***/ }), - /***/ 1408: /***/ (function(__unused_webpack_module, exports, __webpack_require__) { @@ -43380,14 +43422,62 @@ ReactMarkdown.propTypes = { transformImageUri: prop_types.func, components: prop_types.object }; +;// CONCATENATED MODULE: ./src/libs/webfix.js +var _fixerMap;/** + * 修复程序类型 + */var FIXER_NONE="-";var FIXER_BR="br";var FIXER_BN="bn";var FIXER_BR_DIV="brToDiv";var FIXER_BN_DIV="bnToDiv";var FIXER_ALL=[FIXER_NONE,FIXER_BR,FIXER_BN,FIXER_BR_DIV,FIXER_BN_DIV];/** + * 修复过的标记 + */var fixedSign="kiss-fixed";/** + * 采用 `br` 换行网站的修复函数 + * 目标是将 `br` 替换成 `p` + * @param {*} node + * @returns + */function brFixer(node){var tag=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"p";if(node.hasAttribute(fixedSign)){return;}node.setAttribute(fixedSign,"true");var gapTags=["BR","WBR"];var newlineTags=["DIV","UL","OL","LI","H1","H2","H3","H4","H5","H6","P","HR","PRE","TABLE","BLOCKQUOTE"];var html="";node.childNodes.forEach(function(child,index){if(index===0){html+="<".concat(tag," class=\"kiss-p\">");}if(gapTags.indexOf(child.nodeName)!==-1){html+="<").concat(tag," class=\"kiss-p\">");}else if(newlineTags.indexOf(child.nodeName)!==-1){html+="").concat(child.outerHTML,"<").concat(tag," class=\"kiss-p\">");}else if(child.outerHTML){html+=child.outerHTML;}else if(child.textContent){html+=child.textContent;}if(index===node.childNodes.length-1){html+="");}});node.innerHTML=html;}function brDivFixer(node){return brFixer(node,"div");}/** + * 目标是将 `\n` 替换成 `p` + * @param {*} node + * @returns + */function bnFixer(node){var tag=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"p";if(node.hasAttribute(fixedSign)){return;}node.setAttribute(fixedSign,"true");node.innerHTML=node.innerHTML.split("\n").map(function(item){return"<".concat(tag," class=\"kiss-p\">").concat(item||" ","");}).join("");}function bnDivFixer(node){return bnFixer(node,"div");}/** + * 查找、监听节点,并执行修复函数 + * @param {*} selector + * @param {*} fixer + * @param {*} rootSelector + */function run(selector,fixer,rootSelector){var mutaObserver=new MutationObserver(function(mutations){mutations.forEach(function(mutation){mutation.addedNodes.forEach(function(addNode){if(addNode&&addNode.querySelectorAll){addNode.querySelectorAll(selector).forEach(function(node){fixer(node);});}});});});var rootNodes=[document];if(rootSelector){rootNodes=document.querySelectorAll(rootSelector);}rootNodes.forEach(function(rootNode){rootNode.querySelectorAll(selector).forEach(function(node){fixer(node);});mutaObserver.observe(rootNode,{childList:true,subtree:true});});}/** + * 修复程序映射 + */var fixerMap=(_fixerMap={},(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BR,brFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BN,bnFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BR_DIV,brDivFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BN_DIV,bnDivFixer),_fixerMap);/** + * 执行fixer + * @param {*} param0 + */function runFixer(selector){var fixer=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"-";var rootSelector=arguments.length>2?arguments[2]:undefined;try{if(Object.keys(fixerMap).includes(fixer)){run(selector,fixerMap[fixer],rootSelector);}}catch(err){console.error("[kiss-webfix run]: ".concat(err.message));}} ;// CONCATENATED MODULE: ./src/config/rules.js -var DEFAULT_SELECTOR=":is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)";var DEFAULT_KEEP_SELECTOR="code, img, svg";var rules_GLOBAL_KEY="*";var rules_REMAIN_KEY="-";var SHADOW_KEY=">>>";var DEFAULT_RULE={pattern:"",selector:"",keepSelector:"",terms:"",translator:rules_GLOBAL_KEY,fromLang:rules_GLOBAL_KEY,toLang:rules_GLOBAL_KEY,textStyle:rules_GLOBAL_KEY,transOpen:rules_GLOBAL_KEY,bgColor:"",textDiyStyle:""};var DEFAULT_DIY_STYLE="color: #666;\nbackground: linear-gradient(\n 45deg,\n LightGreen 20%,\n LightPink 20% 40%,\n LightSalmon 40% 60%,\n LightSeaGreen 60% 80%,\n LightSkyBlue 80%\n);\n&:hover {\n color: #333;\n};";var rules_DEFAULT_OW_RULE={translator:rules_REMAIN_KEY,fromLang:rules_REMAIN_KEY,toLang:rules_REMAIN_KEY,textStyle:rules_REMAIN_KEY,transOpen:rules_REMAIN_KEY,bgColor:"",textDiyStyle:DEFAULT_DIY_STYLE};var RULES_MAP={"www.google.com/search":["h3, .IsZvec, .VwiC3b"],"news.google.com":["[role=\"link\"], .DY5T1d, .ifw3f, ".concat(DEFAULT_SELECTOR)],"www.foxnews.com":["h1, h2, .title, .sidebar [data-type=\"Title\"], .article-content ".concat(DEFAULT_SELECTOR,"; [data-spotim-module=\"conversation\"]>div >>> [data-spot-im-class=\"message-text\"] p, [data-spot-im-class=\"message-text\"]")],"bearblog.dev, www.theverge.com, www.tampermonkey.net/documentation.php":["".concat(DEFAULT_SELECTOR)],"themessenger.com":[".leading-tight, .leading-tighter, .my-2 p, .font-body p, article ".concat(DEFAULT_SELECTOR)],"www.telegraph.co.uk, go.dev/doc/":["article ".concat(DEFAULT_SELECTOR)],"www.theguardian.com":[".show-underline, .dcr-hup5wm div, .dcr-7vl6y8 div, .dcr-12evv1c, figcaption, article ".concat(DEFAULT_SELECTOR,", [data-cy=\"mostviewed-footer\"] h4")],"www.semafor.com":["".concat(DEFAULT_SELECTOR,", .styles_intro__IYj__, [class*=\"styles_description\"]")],"www.noemamag.com":[".splash__title, .single-card__title, .single-card__type, .single-card__topic, .highlighted-content__title, .single-card__author, article ".concat(DEFAULT_SELECTOR,", .quote__text, .wp-caption-text div")],"restofworld.org":["".concat(DEFAULT_SELECTOR,", .recirc-story__headline, .recirc-story__dek")],"www.axios.com":[".h7, ".concat(DEFAULT_SELECTOR)],"www.newyorker.com":[".summary-item__hed, .summary-item__dek, .summary-collection-grid__dek, .dqtvfu, .rubric__link, .caption, article ".concat(DEFAULT_SELECTOR,", .HEhan ").concat(DEFAULT_SELECTOR,", .ContributorBioBio-fBolsO, .BaseText-ewhhUZ")],"time.com":["h1, h3, .summary, .video-title, #article-body ".concat(DEFAULT_SELECTOR,", .image-wrap-container .credit.body-caption, .media-heading")],"www.dw.com":[".ts-teaser-title a, .news-title a, .title a, .teaser-description a, .hbudab h3, .hbudab p, figcaption ,article ".concat(DEFAULT_SELECTOR)],"www.bbc.com":["h1, h2, .media__link, .media__summary, article ".concat(DEFAULT_SELECTOR,", .ssrcss-y7krbn-Stack, .ssrcss-17zglt8-PromoHeadline, .ssrcss-18cjaf3-Headline, .gs-c-promo-heading__title, .gs-c-promo-summary, .media__content h3, .article__intro, .lx-c-summary-points>li")],"www.chinadaily.com.cn":["h1, .tMain [shape=\"rect\"], .cMain [shape=\"rect\"], .photo_art [shape=\"rect\"], .mai_r [shape=\"rect\"], .lisBox li, #Content ".concat(DEFAULT_SELECTOR)],"www.facebook.com":["[role=\"main\"] [dir=\"auto\"]"],"www.reddit.com":["div:is(.tbIApBd2DM_drfZQJjIum, ._1zPvgKHteTOub9dKkvrOl4,.ULWj94BYSOqoJDetxgcnU),a:is([class^=\"_334yl59\"],[class^=\"_2GrMpxD\"]),h1,h2,h3,h4,h5,h6,p,button"],"www.quora.com":[".qu-wordBreak--break-word"],"edition.cnn.com":[".container__title, .container__headline, .headline__text, .image__caption, [data-type=\"Title\"], .article__content ".concat(DEFAULT_SELECTOR)],"www.reuters.com":["#main-content [data-testid=\"Heading\"], #main-content [data-testid=\"Body\"], .article-body__content__17Yit ".concat(DEFAULT_SELECTOR)],"www.bloomberg.com":["[data-component=\"headline\"], [data-component=\"related-item-headline\"], [data-component=\"title\"], article ".concat(DEFAULT_SELECTOR)],"deno.land, docs.github.com":["main ".concat(DEFAULT_SELECTOR),"code, img, svg"],"doc.rust-lang.org":[".content ".concat(DEFAULT_SELECTOR),"code, img, svg"],"www.indiehackers.com":["h1, h3, .content ".concat(DEFAULT_SELECTOR,", .feed-item__title-link")],"platform.openai.com/docs":[".docs-body ".concat(DEFAULT_SELECTOR),"code, img, svg"],"en.wikipedia.org":["h1, .mw-parser-output ".concat(DEFAULT_SELECTOR),".mwe-math-element"],"stackoverflow.com":["h1, .s-prose p, .comment-body .comment-copy","code, img, svg"],"www.npmjs.com/package, developer.chrome.com/docs, medium.com, developers.cloudflare.com, react.dev, create-react-app.dev, pytorch.org":["article ".concat(DEFAULT_SELECTOR)],"news.ycombinator.com":[".title, .commtext"],"github.com":[".markdown-body ".concat(DEFAULT_SELECTOR,", .repo-description p, .Layout-sidebar .f4, .container-lg .py-4 .f5, .container-lg .my-4 .f5, .Box-row .pr-4, .Box-row article .mt-1, [itemprop=\"description\"], .markdown-title, bdi, .ws-pre-wrap, .status-meta, span.status-meta, .col-10.color-fg-muted, .TimelineItem-body, .pinned-item-list-item-content .color-fg-muted, .markdown-body td, .markdown-body th"),"code, img, svg"],"twitter.com":["[data-testid=\"tweetText\"], [data-testid=\"birdwatch-pivot\"]>div.css-1rynq56","img, a, .r-18u37iz, .css-175oi2r"],"m.youtube.com":[".slim-video-information-title .yt-core-attributed-string, .media-item-headline .yt-core-attributed-string, .comment-text .yt-core-attributed-string, .typography-body-2b .yt-core-attributed-string, #ytp-caption-window-container .ytp-caption-segment"],"www.youtube.com":["h1, #video-title, #content-text, #title, yt-attributed-string>span>span, #ytp-caption-window-container .ytp-caption-segment"],"bard.google.com":[".query-content ".concat(DEFAULT_SELECTOR,", message-content ").concat(DEFAULT_SELECTOR)],"www.bing.com":[".b_algoSlug, .rwrl_padref; .cib-serp-main >>> .ac-textBlock ".concat(DEFAULT_SELECTOR,", .text-message-content div")],"www.phoronix.com":["article ".concat(DEFAULT_SELECTOR)],"wx2.qq.com":[".js_message_plain"],"app.slack.com/client/":[".p-rich_text_section, .c-message_attachment__text, .p-rich_text_list li"],"discord.com/channels/":["li[id^=chat-messages] div[id^=message-content], div[class^=headerText], div[class^=name_], section[aria-label='Search Results'] div[id^=message-content]"],"t.me/s/":[".js-message_text ".concat(DEFAULT_SELECTOR)],"web.telegram.org/k/":[".message, .bot-commands-list-element-description, .reply-markup-button-text"],"web.telegram.org/a/":[".message, .text-content, .bot-commands-list-element-description, .reply-markup-button-text"],"chromereleases.googleblog.com":[".title, .publishdate, p, i, .header-desc, .header-title, .text"],"www.instagram.com/":["h1, article span[dir=auto] > span[dir=auto], ._ab1y"],"www.instagram.com/p/,www.instagram.com/reels/":["h1, div[class='x9f619 xjbqb8w x78zum5 x168nmei x13lgxp2 x5pf9jr xo71vjh x1uhb9sk x1plvlek xryxfnj x1c4vz4f x2lah0s xdt5ytf xqjyukv x1cy8zhl x1oa3qoh x1nhvcw1'] > span[class='x1lliihq x1plvlek xryxfnj x1n2onr6 x193iq5w xeuugli x1fj9vlw x13faqbe x1vvkbs x1s928wv xhkezso x1gmr53x x1cpjm7i x1fgarty x1943h6x x1i0vuye xvs91rp xo1l8bm x5n08af x10wh9bi x1wdrske x8viiok x18hxmgj'], span[class='x193iq5w xeuugli x1fj9vlw x13faqbe x1vvkbs xt0psk2 x1i0vuye xvs91rp xo1l8bm x5n08af x10wh9bi x1wdrske x8viiok x18hxmgj']"],"mail.google.com":["".concat(DEFAULT_SELECTOR,", h2[data-thread-perm-id], span[data-thread-id], div[data-message-id] div[class=''], .messageBody, #views")],"web.whatsapp.com":[".copyable-text > span"],"chat.openai.com":["div[data-message-author-role] > div ".concat(DEFAULT_SELECTOR)],"forum.ru-board.com":[".tit, .dats, span.post, .lgf ".concat(DEFAULT_SELECTOR)],"education.github.com":["".concat(DEFAULT_SELECTOR,", a, summary, span.Button-content")],"blogs.windows.com":["".concat(DEFAULT_SELECTOR,", .c-uhf-nav-link, figcaption")],"developer.apple.com/documentation/":["#main ".concat(DEFAULT_SELECTOR,", #main .abstract .content, #main .abstract.content, #main .link span"),"code, img, svg"],"greasyfork.org":["h2, .script-link, .script-description, #additional-info ".concat(DEFAULT_SELECTOR)],"www.fmkorea.com":["#container ".concat(DEFAULT_SELECTOR)],"forum.arduino.cc":[".top-row>.title, .featured-topic>.title, .link-top-line>.title, .category-description, .topic-excerpt, .fancy-title, .cooked ".concat(DEFAULT_SELECTOR)],"docs.arduino.cc":["[class^=\"tutorial-module--left\"] ".concat(DEFAULT_SELECTOR)],"www.historydefined.net":[".wp-element-caption, ".concat(DEFAULT_SELECTOR)]};var rules_BUILTIN_RULES=Object.entries(RULES_MAP).sort(function(a,b){return a[0].localeCompare(b[0]);}).map(function(_ref){var _ref2=(0,slicedToArray/* default */.Z)(_ref,2),pattern=_ref2[0],_ref2$=(0,slicedToArray/* default */.Z)(_ref2[1],3),selector=_ref2$[0],_ref2$$=_ref2$[1],keepSelector=_ref2$$===void 0?"":_ref2$$,_ref2$$2=_ref2$[2],terms=_ref2$$2===void 0?"":_ref2$$2;return _objectSpread2(_objectSpread2({},DEFAULT_RULE),{},{pattern:pattern,selector:selector,keepSelector:keepSelector,terms:terms});}); +var rules_GLOBAL_KEY="*";var rules_REMAIN_KEY="-";var SHADOW_KEY=">>>";var DEFAULT_SELECTOR=":is(li, p, h1, h2, h3, h4, h5, h6, dd, blockquote)";var DEFAULT_KEEP_SELECTOR="code, img, svg";var DEFAULT_RULE={pattern:"",// 匹配网址 +selector:"",// 选择器 +keepSelector:"",// 保留元素选择器 +terms:"",// 专业术语 +translator:rules_GLOBAL_KEY,// 翻译服务 +fromLang:rules_GLOBAL_KEY,// 源语言 +toLang:rules_GLOBAL_KEY,// 目标语言 +textStyle:rules_GLOBAL_KEY,// 译文样式 +transOpen:rules_GLOBAL_KEY,// 开启翻译 +bgColor:"",// 译文颜色 +textDiyStyle:"",// 自定义译文样式 +selectStyle:"",// 选择器节点样式 +parentStyle:"",// 选择器父节点样式 +injectJs:"",// 注入JS +injectCss:"",// 注入CSS +transOnly:rules_GLOBAL_KEY,// 是否仅显示译文 +transTiming:rules_GLOBAL_KEY,// 翻译时机/鼠标悬停翻译 +transTag:rules_GLOBAL_KEY,// 译文元素标签 +transTitle:rules_GLOBAL_KEY,// 是否同时翻译页面标题 +detectRemote:rules_GLOBAL_KEY,// 是否使用远程语言检测 +skipLangs:[],// 不翻译的语言 +fixerSelector:"",// 修复函数选择器 +fixerFunc:rules_GLOBAL_KEY// 修复函数 +};var DEFAULT_DIY_STYLE="color: #666;\nbackground: linear-gradient(\n 45deg,\n LightGreen 20%,\n LightPink 20% 40%,\n LightSalmon 40% 60%,\n LightSeaGreen 60% 80%,\n LightSkyBlue 80%\n);\n&:hover {\n color: #333;\n};";var DEFAULT_OW_RULE={translator:rules_REMAIN_KEY,fromLang:rules_REMAIN_KEY,toLang:rules_REMAIN_KEY,textStyle:rules_REMAIN_KEY,transOpen:rules_REMAIN_KEY,bgColor:"",textDiyStyle:DEFAULT_DIY_STYLE};var RULES_MAP={"www.google.com/search":{selector:"h3, .IsZvec, .VwiC3b"},"news.google.com":{selector:"[data-n-tid], ".concat(DEFAULT_SELECTOR)},"www.foxnews.com":{selector:"h1, h2, .title, .sidebar [data-type=\"Title\"], .article-content ".concat(DEFAULT_SELECTOR,"; [data-spotim-module=\"conversation\"]>div >>> [data-spot-im-class=\"message-text\"] p, [data-spot-im-class=\"message-text\"]")},"bearblog.dev, www.theverge.com, www.tampermonkey.net/documentation.php":{selector:"".concat(DEFAULT_SELECTOR)},"themessenger.com":{selector:".leading-tight, .leading-tighter, .my-2 p, .font-body p, article ".concat(DEFAULT_SELECTOR)},"www.telegraph.co.uk, go.dev/doc/":{selector:"article ".concat(DEFAULT_SELECTOR)},"www.theguardian.com":{selector:".show-underline, .dcr-hup5wm div, .dcr-7vl6y8 div, .dcr-12evv1c, figcaption, article ".concat(DEFAULT_SELECTOR,", [data-cy=\"mostviewed-footer\"] h4")},"www.semafor.com":{selector:"".concat(DEFAULT_SELECTOR,", .styles_intro__IYj__, [class*=\"styles_description\"]")},"www.noemamag.com":{selector:".splash__title, .single-card__title, .single-card__type, .single-card__topic, .highlighted-content__title, .single-card__author, article ".concat(DEFAULT_SELECTOR,", .quote__text, .wp-caption-text div")},"restofworld.org":{selector:"".concat(DEFAULT_SELECTOR,", .recirc-story__headline, .recirc-story__dek")},"www.axios.com":{selector:".h7, ".concat(DEFAULT_SELECTOR)},"www.newyorker.com":{selector:".summary-item__hed, .summary-item__dek, .summary-collection-grid__dek, .dqtvfu, .rubric__link, .caption, article ".concat(DEFAULT_SELECTOR,", .HEhan ").concat(DEFAULT_SELECTOR,", .ContributorBioBio-fBolsO, .BaseText-ewhhUZ")},"time.com":{selector:"h1, h3, .summary, .video-title, #article-body ".concat(DEFAULT_SELECTOR,", .image-wrap-container .credit.body-caption, .media-heading")},"www.dw.com":{selector:".ts-teaser-title a, .news-title a, .title a, .teaser-description a, .hbudab h3, .hbudab p, figcaption ,article ".concat(DEFAULT_SELECTOR)},"www.bbc.com":{selector:"h1, h2, .media__link, .media__summary, article ".concat(DEFAULT_SELECTOR,", .ssrcss-y7krbn-Stack, .ssrcss-17zglt8-PromoHeadline, .ssrcss-18cjaf3-Headline, .gs-c-promo-heading__title, .gs-c-promo-summary, .media__content h3, .article__intro, .lx-c-summary-points>li")},"www.chinadaily.com.cn":{selector:"h1, .tMain [shape=\"rect\"], .cMain [shape=\"rect\"], .photo_art [shape=\"rect\"], .mai_r [shape=\"rect\"], .lisBox li, #Content ".concat(DEFAULT_SELECTOR)},"www.facebook.com":{selector:"[role=\"main\"] [dir=\"auto\"]"},"www.reddit.com, new.reddit.com, sh.reddit.com":{selector:":is(#AppRouter-main-content, #overlayScrollContainer) :is([class^=tbIA],[class^=_1zP],[class^=ULWj],[class^=_2Jj], [class^=_334],[class^=_2Gr],[class^=_7T4],[class^=_1WO], ".concat(DEFAULT_SELECTOR,"); [id^=\"post-title\"], :is([slot=\"text-body\"], [slot=\"comment\"]) ").concat(DEFAULT_SELECTOR,", recent-posts h3, aside :is(span:has(>h2), p); shreddit-subreddit-header >>> :is(#title, #description)")},"www.quora.com":{selector:".qu-wordBreak--break-word"},"edition.cnn.com":{selector:".container__title, .container__headline, .headline__text, .image__caption, [data-type=\"Title\"], .article__content ".concat(DEFAULT_SELECTOR)},"www.reuters.com":{selector:"#main-content [data-testid=\"Heading\"], #main-content [data-testid=\"Body\"], .article-body__content__17Yit ".concat(DEFAULT_SELECTOR)},"www.bloomberg.com":{selector:"[data-component=\"headline\"], [data-component=\"related-item-headline\"], [data-component=\"title\"], article ".concat(DEFAULT_SELECTOR)},"deno.land, docs.github.com":{selector:"main ".concat(DEFAULT_SELECTOR),keepSelector:DEFAULT_KEEP_SELECTOR},"doc.rust-lang.org":{selector:".content ".concat(DEFAULT_SELECTOR),keepSelector:DEFAULT_KEEP_SELECTOR},"www.indiehackers.com":{selector:"h1, h3, .content ".concat(DEFAULT_SELECTOR,", .feed-item__title-link")},"platform.openai.com/docs":{selector:".docs-body ".concat(DEFAULT_SELECTOR),keepSelector:DEFAULT_KEEP_SELECTOR},"en.wikipedia.org":{selector:"h1, .mw-parser-output ".concat(DEFAULT_SELECTOR),keepSelector:".mwe-math-element"},"stackoverflow.com, serverfault.com, superuser.com, stackexchange.com, askubuntu.com, stackapps.com, mathoverflow.net":{selector:".s-prose ".concat(DEFAULT_SELECTOR,", .comment-copy, .question-hyperlink, .s-post-summary--content-title, .s-post-summary--content-excerpt"),keepSelector:"".concat(DEFAULT_KEEP_SELECTOR,", .math-container")},"www.npmjs.com/package, developer.chrome.com/docs, medium.com, react.dev, create-react-app.dev, pytorch.org":{selector:"article ".concat(DEFAULT_SELECTOR)},"news.ycombinator.com":{selector:".title, p",fixerSelector:".toptext, .commtext",fixerFunc:FIXER_BR},"github.com":{selector:".markdown-body ".concat(DEFAULT_SELECTOR,", .repo-description p, .Layout-sidebar .f4, .container-lg .py-4 .f5, .container-lg .my-4 .f5, .Box-row .pr-4, .Box-row article .mt-1, [itemprop=\"description\"], .markdown-title, bdi, .ws-pre-wrap, .status-meta, span.status-meta, .col-10.color-fg-muted, .TimelineItem-body, .pinned-item-list-item-content .color-fg-muted, .markdown-body td, .markdown-body th"),keepSelector:DEFAULT_KEEP_SELECTOR},"twitter.com":{selector:"[data-testid=\"tweetText\"], [data-testid=\"birdwatch-pivot\"]>div.css-1rynq56",keepSelector:"img, a, .r-18u37iz, .css-175oi2r"},"m.youtube.com":{selector:".slim-video-information-title .yt-core-attributed-string, .media-item-headline .yt-core-attributed-string, .comment-text .yt-core-attributed-string, .typography-body-2b .yt-core-attributed-string, #ytp-caption-window-container .ytp-caption-segment",selectStyle:"-webkit-line-clamp: unset; max-height: none; height: auto;",parentStyle:"-webkit-line-clamp: unset; max-height: none; height: auto;",keepSelector:"img, #content-text>a"},"www.youtube.com":{selector:"h1, #video-title, #content-text, #title, yt-attributed-string>span>span, #ytp-caption-window-container .ytp-caption-segment",selectStyle:"-webkit-line-clamp: unset; max-height: none; height: auto;",parentStyle:"-webkit-line-clamp: unset; max-height: none; height: auto;",keepSelector:"img, #content-text>a"},"bard.google.com":{selector:".query-content ".concat(DEFAULT_SELECTOR,", message-content ").concat(DEFAULT_SELECTOR)},"www.bing.com, copilot.microsoft.com":{selector:".b_algoSlug, .rwrl_padref; .cib-serp-main >>> .ac-textBlock ".concat(DEFAULT_SELECTOR,", .text-message-content div")},"www.phoronix.com":{selector:"article ".concat(DEFAULT_SELECTOR),fixerSelector:".content",fixerFunc:FIXER_BR},"wx2.qq.com":{selector:".js_message_plain"},"app.slack.com/client/":{selector:".p-rich_text_section, .c-message_attachment__text, .p-rich_text_list li"},"discord.com/channels/":{selector:"div[class^=message], div[class^=headerText], div[class^=name_], section[aria-label='Search Results'] div[id^=message-content], div[id^=message]",keepSelector:"li[class^='card'] div[class^='message'], [class^='embedFieldValue'], [data-list-item-id^='forum-channel-list'] div[class^='headerText']"},"t.me/s/":{selector:".js-message_text ".concat(DEFAULT_SELECTOR),fixerSelector:".tgme_widget_message_text",fixerFunc:FIXER_BR},"web.telegram.org/k":{selector:"div.kiss-p",keepSelector:"div[class^=time], .peer-title, .document-wrapper, .message.spoilers-container custom-emoji-element, reactions-element",fixerSelector:".message",fixerFunc:FIXER_BN_DIV},"web.telegram.org/a":{selector:".text-content > .kiss-p",keepSelector:".Reactions, .time, .peer-title, .document-wrapper, .message.spoilers-container custom-emoji-element",fixerSelector:".text-content",fixerFunc:FIXER_BR_DIV},"www.instagram.com/":{selector:"h1, article span[dir=auto] > span[dir=auto], ._ab1y"},"www.instagram.com/p/,www.instagram.com/reels/":{selector:"h1, div[class='x9f619 xjbqb8w x78zum5 x168nmei x13lgxp2 x5pf9jr xo71vjh x1uhb9sk x1plvlek xryxfnj x1c4vz4f x2lah0s xdt5ytf xqjyukv x1cy8zhl x1oa3qoh x1nhvcw1'] > span[class='x1lliihq x1plvlek xryxfnj x1n2onr6 x193iq5w xeuugli x1fj9vlw x13faqbe x1vvkbs x1s928wv xhkezso x1gmr53x x1cpjm7i x1fgarty x1943h6x x1i0vuye xvs91rp xo1l8bm x5n08af x10wh9bi x1wdrske x8viiok x18hxmgj'], span[class='x193iq5w xeuugli x1fj9vlw x13faqbe x1vvkbs xt0psk2 x1i0vuye xvs91rp xo1l8bm x5n08af x10wh9bi x1wdrske x8viiok x18hxmgj']"},"mail.google.com":{selector:".a3s.aiL ".concat(DEFAULT_SELECTOR,", span[data-thread-id]"),fixerSelector:".a3s.aiL",fixerFunc:FIXER_BR},"web.whatsapp.com":{selector:".copyable-text > span"},"chat.openai.com":{selector:"div[data-message-author-role] > div ".concat(DEFAULT_SELECTOR),fixerSelector:"div[data-message-author-role='user'] > div",fixerFunc:FIXER_BN},"forum.ru-board.com":{selector:".tit, .dats, .kiss-p, .lgf ".concat(DEFAULT_SELECTOR),fixerSelector:"span.post",fixerFunc:FIXER_BR},"education.github.com":{selector:"".concat(DEFAULT_SELECTOR,", a, summary, span.Button-content")},"blogs.windows.com":{selector:"".concat(DEFAULT_SELECTOR,", .c-uhf-nav-link, figcaption"),fixerSelector:".t-content>div>ul>li",fixerFunc:FIXER_BR},"developer.apple.com/documentation/":{selector:"#main ".concat(DEFAULT_SELECTOR,", #main .abstract .content, #main .abstract.content, #main .link span"),keepSelector:DEFAULT_KEEP_SELECTOR},"greasyfork.org":{selector:"h2, .script-link, .script-description, #additional-info ".concat(DEFAULT_SELECTOR)},"www.fmkorea.com":{selector:"#container ".concat(DEFAULT_SELECTOR)},"forum.arduino.cc":{selector:".top-row>.title, .featured-topic>.title, .link-top-line>.title, .category-description, .topic-excerpt, .fancy-title, .cooked ".concat(DEFAULT_SELECTOR)},"docs.arduino.cc":{selector:"[class^=\"tutorial-module--left\"] ".concat(DEFAULT_SELECTOR)},"www.historydefined.net":{selector:".wp-element-caption, ".concat(DEFAULT_SELECTOR)},"gobyexample.com":{selector:".docs p",keepSelector:"code"},"go.dev/tour":{selector:"#left-side ".concat(DEFAULT_SELECTOR),keepSelector:"code, img, svg >>> code"},"pkg.go.dev":{selector:".Documentation-content ".concat(DEFAULT_SELECTOR),keepSelector:"".concat(DEFAULT_KEEP_SELECTOR,", a, span")},"docs.rs":{selector:".docblock ".concat(DEFAULT_SELECTOR,", .docblock-short"),keepSelector:"code >>> code"},"randomnerdtutorials.com":{selector:"article ".concat(DEFAULT_SELECTOR)},"notebooks.githubusercontent.com/view/ipynb":{selector:"#notebook-container ".concat(DEFAULT_SELECTOR),keepSelector:DEFAULT_KEEP_SELECTOR},"developers.cloudflare.com":{selector:"article ".concat(DEFAULT_SELECTOR,", .WorkerStarter--description"),keepSelector:"a[rel='noopener'], code"},"ubuntuforums.org":{fixerSelector:".postcontent",fixerFunc:FIXER_BR},"play.google.com/store/apps/details":{fixerSelector:"[data-g-id=\"description\"]",fixerFunc:FIXER_BR},"news.yahoo.co.jp/articles/":{fixerSelector:".sc-cTsKDU",fixerFunc:FIXER_BN},"chromereleases.googleblog.com":{fixerSelector:".post-content, .post-content > span, li > span",fixerFunc:FIXER_BR}};var rules_BUILTIN_RULES=Object.entries(RULES_MAP).sort(function(a,b){return a[0].localeCompare(b[0]);}).map(function(_ref){var _ref2=(0,slicedToArray/* default */.Z)(_ref,2),pattern=_ref2[0],rule=_ref2[1];return _objectSpread2(_objectSpread2(_objectSpread2({},DEFAULT_RULE),rule),{},{pattern:pattern});}); ;// CONCATENATED MODULE: ./src/config/app.js var APP_NAME="KISS Translator".trim().split(/\s+/).join("-");var APP_LCNAME=APP_NAME.toLowerCase(); ;// CONCATENATED MODULE: ./src/config/i18n.js -var UI_LANGS=[["en","English"],["zh","中文"]];var customApiLangs="[\"en\", \"English - English\"],\n[\"zh-CN\", \"Simplified Chinese - \u7B80\u4F53\u4E2D\u6587\"],\n[\"zh-TW\", \"Traditional Chinese - \u7E41\u9AD4\u4E2D\u6587\"],\n[\"ar\", \"Arabic - \u0627\u0644\u0639\u0631\u0628\u064A\u0629\"],\n[\"bg\", \"Bulgarian - \u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438\"],\n[\"ca\", \"Catalan - Catal\xE0\"],\n[\"hr\", \"Croatian - Hrvatski\"],\n[\"cs\", \"Czech - \u010Ce\u0161tina\"],\n[\"da\", \"Danish - Dansk\"],\n[\"nl\", \"Dutch - Nederlands\"],\n[\"fi\", \"Finnish - Suomi\"],\n[\"fr\", \"French - Fran\xE7ais\"],\n[\"de\", \"German - Deutsch\"],\n[\"el\", \"Greek - \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC\"],\n[\"hi\", \"Hindi - \u0939\u093F\u0928\u094D\u0926\u0940\"],\n[\"hu\", \"Hungarian - Magyar\"],\n[\"id\", \"Indonesian - Indonesia\"],\n[\"it\", \"Italian - Italiano\"],\n[\"ja\", \"Japanese - \u65E5\u672C\u8A9E\"],\n[\"ko\", \"Korean - \uD55C\uAD6D\uC5B4\"],\n[\"ms\", \"Malay - Melayu\"],\n[\"mt\", \"Maltese - Malti\"],\n[\"nb\", \"Norwegian - Norsk Bokm\xE5l\"],\n[\"pl\", \"Polish - Polski\"],\n[\"pt\", \"Portuguese - Portugu\xEAs\"],\n[\"ro\", \"Romanian - Rom\xE2n\u0103\"],\n[\"ru\", \"Russian - \u0420\u0443\u0441\u0441\u043A\u0438\u0439\"],\n[\"sk\", \"Slovak - Sloven\u010Dina\"],\n[\"sl\", \"Slovenian - Sloven\u0161\u010Dina\"],\n[\"es\", \"Spanish - Espa\xF1ol\"],\n[\"sv\", \"Swedish - Svenska\"],\n[\"ta\", \"Tamil - \u0BA4\u0BAE\u0BBF\u0BB4\u0BCD\"],\n[\"te\", \"Telugu - \u0C24\u0C46\u0C32\u0C41\u0C17\u0C41\"],\n[\"th\", \"Thai - \u0E44\u0E17\u0E22\"],\n[\"tr\", \"Turkish - T\xFCrk\xE7e\"],\n[\"uk\", \"Ukrainian - \u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430\"],\n[\"vi\", \"Vietnamese - Ti\u1EBFng Vi\u1EC7t\"],\n";var customApiHelpZH="/// \u81EA\u5B9A\u4E49\u7FFB\u8BD1\u6E90\u63A5\u53E3\u8BF4\u660E\n\n// \u8BF7\u6C42\uFF08Request\uFF09\u6570\u636E\u5C06\u6309\u4E0B\u9762\u89C4\u8303\u53D1\u9001\n{\n url: {{YOUR_URL}},\n method: \"POST\",\n headers: {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{YOUR_KEY}}\",\n },\n body: {\n text: \"\", // \u9700\u8981\u7FFB\u8BD1\u7684\u6587\u5B57\n from: \"\", // \u6E90\u8BED\u8A00\uFF0C\u53EF\u80FD\u4E3A\u7A7A\uFF0C\u8868\u793A\u9700\u8981\u63A5\u53E3\u81EA\u52A8\u8BC6\u522B\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\n }\n}\n\n// \u8FD4\u56DE\uFF08Response\uFF09\u6570\u636E\u9700\u7B26\u5408\u4E0B\u9762\u7684JSON\u89C4\u8303\n{\n text: \"\", // \u7FFB\u8BD1\u540E\u7684\u6587\u5B57\n from: \"\", // \u8BC6\u522B\u7684\u6E90\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\uFF08\u53EF\u9009\uFF09\n}\n\n// \u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u5982\u4E0B\n".concat(customApiLangs,"\n");var customApiHelpEN="/// Custom translation source interface description\n\n// Request data will be sent according to the following specifications\n{\n url: {{YOUR_URL}},\n method: \"POST\",\n headers: {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{YOUR_KEY}}\",\n },\n body: {\n text: \"\", // text to be translated\n from: \"\", // Source language, may be empty\n to: \"\", // Target language\n }\n}\n\n// The returned data must conform to the following JSON specification\n{\n text: \"\", // translated text\n from: \"\", // Recognized source language\n to: \"\", // Target language (optional)\n}\n\n// The supported language codes are as follows\n".concat(customApiLangs,"\n");var I18N={app_name:{zh:"\u7B80\u7EA6\u7FFB\u8BD1",en:"KISS Translator"},translate:{zh:"\u7FFB\u8BD1",en:"Translate"},custom_api_help:{zh:customApiHelpZH,en:customApiHelpEN},translate_alt:{zh:"\u7FFB\u8BD1",en:"Translate"},basic_setting:{zh:"\u57FA\u672C\u8BBE\u7F6E",en:"Basic Setting"},rules_setting:{zh:"\u89C4\u5219\u8BBE\u7F6E",en:"Rules Setting"},apis_setting:{zh:"\u63A5\u53E3\u8BBE\u7F6E",en:"Apis Setting"},sync_setting:{zh:"\u540C\u6B65\u8BBE\u7F6E",en:"Sync Setting"},patch_setting:{zh:"\u8865\u4E01\u8BBE\u7F6E",en:"Patch Setting"},patch_setting_help:{zh:"\u9488\u5BF9\u4E00\u4E9B\u7279\u6B8A\u7F51\u7AD9\u7684\u4FEE\u6B63\u811A\u672C\uFF0C\u4EE5\u4FBF\u7FFB\u8BD1\u8F6F\u4EF6\u5F97\u5230\u66F4\u597D\u7684\u5C55\u793A\u6548\u679C\u3002",en:"Corrected scripts for some special websites so that the translation software can get better display results."},inject_webfix:{zh:"\u6CE8\u5165\u4FEE\u590D\u8865\u4E01",en:"Inject Webfix"},about:{zh:"\u5173\u4E8E",en:"About"},about_md:{zh:"README.md",en:"README.en.md"},about_md_local:{zh:"\u8BF7 [\u70B9\u51FB\u8FD9\u91CC](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8BE6\u60C5\u3002"),en:"Please [click here](".concat("https://github.com/fishjar/kiss-translator",") for details.")},ui_lang:{zh:"\u754C\u9762\u8BED\u8A00",en:"Interface Language"},fetch_limit:{zh:"\u6700\u5927\u8BF7\u6C42\u6570\u91CF (1-100)",en:"Maximum Number Of Request (1-100)"},fetch_interval:{zh:"\u8BF7\u6C42\u95F4\u9694\u65F6\u95F4 (0-5000ms)",en:"Request Interval (0-5000ms)"},min_translate_length:{zh:"\u6700\u5C0F\u7FFB\u8BD1\u957F\u5EA6 (1-100)",en:"Min Translate Length (1-100)"},max_translate_length:{zh:"\u6700\u5927\u7FFB\u8BD1\u957F\u5EA6 (100-10000)",en:"Max Translate Length (100-10000)"},num_of_newline_characters:{zh:"\u6362\u884C\u5B57\u7B26\u6570 (1-1000)",en:"Number of Newline Characters (1-1000)"},translate_service:{zh:"\u7FFB\u8BD1\u670D\u52A1",en:"Translate Service"},translate_timing:{zh:"\u7FFB\u8BD1\u65F6\u673A",en:"Translate Timing"},mk_disable:{zh:"\u6EDA\u52A8\u52A0\u8F7D\uFF08\u5EFA\u8BAE\uFF09",en:"Rolling Loading (Suggested)"},mk_pageopen:{zh:"\u9875\u9762\u6253\u5F00",en:"Page Open"},mk_mouseover:{zh:"\u9F20\u6807\u60AC\u505C",en:"Mouseover"},mk_ctrlKey:{zh:"Control + \u9F20\u6807\u60AC\u505C",en:"Control + Mouseover"},mk_shiftKey:{zh:"Shift + \u9F20\u6807\u60AC\u505C",en:"Shift + Mouseover"},mk_altKey:{zh:"Alt + \u9F20\u6807\u60AC\u505C",en:"Alt + Mouseover"},from_lang:{zh:"\u539F\u6587\u8BED\u8A00",en:"Source Language"},to_lang:{zh:"\u76EE\u6807\u8BED\u8A00",en:"Target Language"},to_lang2:{zh:"\u7B2C\u4E8C\u76EE\u6807\u8BED\u8A00",en:"Target Language 2"},to_lang2_helper:{zh:"\u8BBE\u5B9A\u540E\uFF0C\u4E0E\u76EE\u6807\u8BED\u8A00\u4EA7\u751F\u4E92\u8BD1\u6548\u679C\uFF0C\u4F46\u4F9D\u8D56\u8FDC\u7A0B\u8BED\u8A00\u8BC6\u522B\u3002",en:"After setting, it will produce mutual translation effect with the target language, but it relies on remote language recognition."},text_style:{zh:"\u6587\u5B57\u6837\u5F0F",en:"Text Style"},text_style_alt:{zh:"\u6587\u5B57\u6837\u5F0F",en:"Text Style"},bg_color:{zh:"\u6837\u5F0F\u989C\u8272",en:"Style Color"},remain_unchanged:{zh:"\u4FDD\u7559\u4E0D\u53D8",en:"Remain Unchanged"},google_api:{zh:"\u8C37\u6B4C\u7FFB\u8BD1\u63A5\u53E3",en:"Google Translate API"},default_selector:{zh:"\u9ED8\u8BA4\u9009\u62E9\u5668",en:"Default selector"},selector_rules:{zh:"\u9009\u62E9\u5668\u89C4\u5219",en:"Selector Rules"},save:{zh:"\u4FDD\u5B58",en:"Save"},edit:{zh:"\u7F16\u8F91",en:"Edit"},cancel:{zh:"\u53D6\u6D88",en:"Cancel"},delete:{zh:"\u5220\u9664",en:"Delete"},reset:{zh:"\u91CD\u7F6E",en:"Reset"},add:{zh:"\u6DFB\u52A0",en:"Add"},inject_rules:{zh:"\u6CE8\u5165\u8BA2\u9605\u89C4\u5219",en:"Inject Subscribe Rules"},personal_rules:{zh:"\u4E2A\u4EBA\u89C4\u5219",en:"Rules"},subscribe_rules:{zh:"\u8BA2\u9605\u89C4\u5219",en:"Subscribe"},overwrite_subscribe_rules:{zh:"\u8986\u5199\u8BA2\u9605\u89C4\u5219",en:"Overwrite"},subscribe_url:{zh:"\u8BA2\u9605\u5730\u5740",en:"Subscribe URL"},rules_warn_1:{zh:"1\u3001\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u4E00\u76F4\u751F\u6548\uFF0C\u9009\u62E9\u201C\u6CE8\u5165\u8BA2\u9605\u89C4\u5219\u201D\u540E\uFF0C\u201C\u8BA2\u9605\u89C4\u5219\u201D\u624D\u4F1A\u751F\u6548\u3002",en:"1. The \"Personal Rules\" are always in effect. After selecting \"Inject Subscription Rules\", the \"Subscription Rules\" will take effect."},rules_warn_2:{zh:"2\u3001\u201C\u8BA2\u9605\u89C4\u5219\u201D\u7684\u6CE8\u5165\u4F4D\u7F6E\u662F\u5012\u6570\u7B2C\u4E8C\u7684\u4F4D\u7F6E\uFF0C\u56E0\u6B64\u9664\u5168\u5C40\u89C4\u5219(*)\u5916\uFF0C\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u4F18\u5148\u7EA7\u6BD4\u201C\u8BA2\u9605\u89C4\u5219\u201D\u9AD8\uFF0C\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u586B\u5199\u540C\u6837\u7684\u7F51\u5740\u4F1A\u8986\u76D6\u201D\u8BA2\u9605\u89C4\u5219\u201C\u7684\u6761\u76EE\u3002",en:"2. The injection position of \"Subscription Rules\" is the penultimate position. Therefore, except for the global rules (*), the priority of \"Personal Rules\" is higher than that of \"Subscription Rules\". Filling in the same url in \"Personal Rules\" will overwrite \"Subscription Rules\" entry."},sync_warn:{zh:"\u5982\u679C\u670D\u52A1\u5668\u5B58\u5728\u5176\u4ED6\u5BA2\u6237\u7AEF\u540C\u6B65\u7684\u6570\u636E\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u5C06\u76F4\u63A5\u8986\u76D6\u672C\u5730\u914D\u7F6E\uFF0C\u540E\u9762\u5219\u6839\u636E\u4FEE\u6539\u65F6\u95F4\uFF0C\u65B0\u7684\u8986\u76D6\u65E7\u7684\u3002",en:"If the server has data synchronized by other clients, the first synchronization will directly overwrite the local configuration, and later, according to the modification time, the new one will overwrite the old one."},about_sync_api:{zh:"\u67E5\u770B\u5173\u4E8E\u6570\u636E\u540C\u6B65\u63A5\u53E3\u90E8\u7F72",en:"View About Data Synchronization Interface Deployment"},about_api_proxy:{zh:"\u67E5\u770B\u81EA\u5EFA\u4E00\u4E2A\u7FFB\u8BD1\u63A5\u53E3\u4EE3\u7406",en:"Check out the self-built translation interface proxy"},style_none:{zh:"\u65E0",en:"None"},under_line:{zh:"\u4E0B\u5212\u76F4\u7EBF",en:"Underline"},dot_line:{zh:"\u4E0B\u5212\u70B9\u72B6\u7EBF",en:"Dotted Underline"},dash_line:{zh:"\u4E0B\u5212\u865A\u7EBF",en:"Dashed Underline"},wavy_line:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF",en:"Wavy Underline"},fuzzy:{zh:"\u6A21\u7CCA",en:"Fuzzy"},highlight:{zh:"\u9AD8\u4EAE",en:"Highlight"},blockquote:{zh:"\u5F15\u7528",en:"Blockquote"},diy_style:{zh:"\u81EA\u5B9A\u4E49\u6837\u5F0F",en:"Custom Style"},diy_style_helper:{zh:"\u9075\u5FAA\u201CCSS\u201D\u7684\u8BED\u6CD5",en:"Follow the syntax of \"CSS\""},setting:{zh:"\u8BBE\u7F6E",en:"Setting"},pattern:{zh:"\u5339\u914D\u7F51\u5740",en:"URL pattern"},pattern_helper:{zh:"1\u3001\u652F\u6301\u661F\u53F7(*)\u901A\u914D\u7B26\u30022\u3001\u591A\u4E2AURL\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u3002",en:"1. Supports the asterisk (*) wildcard character. 2. Separate multiple URLs with newlines or English commas \",\"."},selector_helper:{zh:"1\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u30022\u3001\u7559\u7A7A\u8868\u793A\u91C7\u7528\u5168\u5C40\u8BBE\u7F6E\u30023\u3001\u591A\u4E2ACSS\u9009\u62E9\u5668\u4E4B\u95F4\u7528\u201C;\u201D\u9694\u5F00\u30024\u3001\u201Cshadow root\u201D\u9009\u62E9\u5668\u548C\u5185\u90E8\u9009\u62E9\u5668\u7528\u201C>>>\u201D\u9694\u5F00\u3002",en:"1. Follow CSS selector syntax. 2. Leave blank to adopt the global setting. 3. Separate multiple CSS selectors with \";\". 4. The \"shadow root\" selector and the internal selector are separated by \">>>\"."},translate_switch:{zh:"\u5F00\u542F\u7FFB\u8BD1",en:"Translate Switch"},default_enabled:{zh:"\u9ED8\u8BA4\u5F00\u542F",en:"Enabled"},default_disabled:{zh:"\u9ED8\u8BA4\u5173\u95ED",en:"Disabled"},selector:{zh:"\u9009\u62E9\u5668",en:"Selector"},keep_selector:{zh:"\u4FDD\u7559\u5143\u7D20\u9009\u62E9\u5668",en:"Keep unchanged selector"},keep_selector_helper:{zh:"1\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u30022\u3001\u7559\u7A7A\u8868\u793A\u91C7\u7528\u5168\u5C40\u8BBE\u7F6E\u30023\u3001\u5B50\u5143\u7D20\u9009\u62E9\u5668\u7528\u201C>>>\u201D\u9694\u5F00\u3002",en:"1. Follow CSS selector syntax. 2. Leave blank to adopt the global setting. 3.Sub-element selectors are separated by \">>>\"."},terms:{zh:"\u4E13\u4E1A\u672F\u8BED",en:"Terms"},terms_helper:{zh:"0\u3001\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\u30021\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30022\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30023\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u30024\u3001\u7559\u7A7A\u8868\u793A\u91C7\u7528\u5168\u5C40\u8BBE\u7F6E\u3002",en:"0. Supports regular expression matching. 1. Separate multiple terms with newlines or semicolons \";\". 2. Terms and translations are separated by English commas \",\". 3. If there is no translation, the term will be deemed not to be translated. 4. Leave blank to adopt the global setting."},root_selector:{zh:"\u6839\u9009\u62E9\u5668",en:"Root Selector"},fixer_function:{zh:"\u4FEE\u590D\u51FD\u6570",en:"Fixer Function"},import:{zh:"\u5BFC\u5165",en:"Import"},export:{zh:"\u5BFC\u51FA",en:"Export"},error_cant_be_blank:{zh:"\u4E0D\u80FD\u4E3A\u7A7A",en:"Can not be blank"},error_duplicate_values:{zh:"\u5B58\u5728\u91CD\u590D\u7684\u503C",en:"There are duplicate values"},error_wrong_file_type:{zh:"\u9519\u8BEF\u7684\u6587\u4EF6\u7C7B\u578B",en:"Wrong file type"},error_fetch_url:{zh:"\u8BF7\u68C0\u67E5url\u5730\u5740\u662F\u5426\u6B63\u786E\u6216\u7A0D\u540E\u518D\u8BD5\u3002",en:"Please check if the url address is correct or try again later."},deepl_api:{zh:"DeepL \u63A5\u53E3",en:"DeepL API"},deepl_key:{zh:"DeepL \u5BC6\u94A5",en:"DeepL Key"},openai_api:{zh:"OpenAI \u63A5\u53E3",en:"OpenAI API"},openai_key:{zh:"OpenAI \u5BC6\u94A5",en:"OpenAI Key"},openai_model:{zh:"OpenAI \u6A21\u578B",en:"OpenAI Model"},openai_prompt:{zh:"OpenAI \u63D0\u793A\u8BCD",en:"OpenAI Prompt"},if_clear_cache:{zh:"\u662F\u5426\u6E05\u9664\u7F13\u5B58",en:"Whether clear cache"},clear_cache_never:{zh:"\u4E0D\u6E05\u9664\u7F13\u5B58",en:"Never clear cache"},clear_cache_restart:{zh:"\u91CD\u542F\u6D4F\u89C8\u5668\u65F6\u6E05\u9664\u7F13\u5B58",en:"Clear cache when restarting browser"},data_sync_type:{zh:"\u6570\u636E\u540C\u6B65\u65B9\u5F0F",en:"Data Sync Type"},data_sync_url:{zh:"\u6570\u636E\u540C\u6B65\u63A5\u53E3",en:"Data Sync API"},data_sync_user:{zh:"\u6570\u636E\u540C\u6B65\u8D26\u6237",en:"Data Sync User"},data_sync_key:{zh:"\u6570\u636E\u540C\u6B65\u5BC6\u94A5",en:"Data Sync Key"},sync_now:{zh:"\u7ACB\u5373\u540C\u6B65",en:"Sync Now"},sync_success:{zh:"\u540C\u6B65\u6210\u529F\uFF01",en:"Sync Success"},sync_failed:{zh:"\u540C\u6B65\u5931\u8D25\uFF01",en:"Sync Error"},error_got_some_wrong:{zh:"\u62B1\u6B49\uFF0C\u51FA\u9519\u4E86\uFF01",en:"Sorry, something went wrong!"},error_sync_setting:{zh:"\u60A8\u7684\u540C\u6B65\u7C7B\u578B\u5FC5\u987B\u4E3A\u201CKISS-Worker\u201D\uFF0C\u4E14\u9700\u586B\u5199\u5B8C\u6574",en:"Your sync type must be \"KISS-Worker\" and must be filled in completely"},click_test:{zh:"\u70B9\u51FB\u6D4B\u8BD5",en:"Click Test"},test_success:{zh:"\u6D4B\u8BD5\u6210\u529F",en:"Test success"},test_failed:{zh:"\u6D4B\u8BD5\u5931\u8D25",en:"Test failed"},clear_all_cache_now:{zh:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u7F13\u5B58",en:"Clear all cache now"},clear_cache:{zh:"\u6E05\u9664\u7F13\u5B58",en:"Clear Cache"},clear_success:{zh:"\u6E05\u9664\u6210\u529F",en:"Clear success"},clear_failed:{zh:"\u6E05\u9664\u5931\u8D25",en:"Clear failed"},share:{zh:"\u5206\u4EAB",en:"Share"},clear_all:{zh:"\u6E05\u7A7A",en:"Clear All"},help:{zh:"\u6C42\u52A9",en:"Help"},restore_default:{zh:"\u6062\u590D\u9ED8\u8BA4",en:"Restore Default"},shortcuts_setting:{zh:"\u5FEB\u6377\u952E\u8BBE\u7F6E",en:"Shortcuts Setting"},toggle_translate_shortcut:{zh:"\"\u5F00\u542F\u7FFB\u8BD1\"\u5FEB\u6377\u952E",en:"\"Toggle Translate\" Shortcut"},toggle_style_shortcut:{zh:"\"\u5207\u6362\u6837\u5F0F\"\u5FEB\u6377\u952E",en:"\"Toggle Style\" Shortcut"},toggle_popup_shortcut:{zh:"\"\u6253\u5F00\u5F39\u7A97\"\u5FEB\u6377\u952E",en:"\"Open Popup\" Shortcut"},open_setting_shortcut:{zh:"\"\u6253\u5F00\u8BBE\u7F6E\"\u5FEB\u6377\u952E",en:"\"Open Setting\" Shortcut"},hide_fab_button:{zh:"\u9690\u85CF\u60AC\u6D6E\u6309\u94AE",en:"Hide Fab Button"},hide_tran_button:{zh:"\u9690\u85CF\u7FFB\u8BD1\u6309\u94AE",en:"Hide Translate Button"},show:{zh:"\u663E\u793A",en:"Show"},hide:{zh:"\u9690\u85CF",en:"Hide"},save_rule:{zh:"\u4FDD\u5B58\u89C4\u5219",en:"Save Rule"},global_rule:{zh:"\u5168\u5C40\u89C4\u5219",en:"Global Rule"},input_translate:{zh:"\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation"},use_input_box_translation:{zh:"\u542F\u7528\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation"},input_selector:{zh:"\u8F93\u5165\u6846\u9009\u62E9\u5668",en:"Input Selector"},input_selector_helper:{zh:"\u7528\u4E8E\u8F93\u5165\u6846\u7FFB\u8BD1\u3002",en:"Used for input box translation."},trigger_trans_shortcut:{zh:"\u89E6\u53D1\u7FFB\u8BD1\u5FEB\u6377\u952E",en:"Trigger Translation Shortcut Keys"},trigger_trans_shortcut_help:{zh:"\u9ED8\u8BA4\u4E3A\u5355\u51FB\u201CAltLeft+KeyI\u201D",en:"Default is \"AltLeft+KeyI\""},shortcut_press_count:{zh:"\u5FEB\u6377\u952E\u8FDE\u51FB\u6B21\u6570",en:"Shortcut Press Number"},combo_timeout:{zh:"\u8FDE\u51FB\u8D85\u65F6\u65F6\u95F4 (10-1000ms)",en:"Combo Timeout (10-1000ms)"},input_trans_start_sign:{zh:"\u7FFB\u8BD1\u8D77\u59CB\u6807\u8BC6",en:"Translation Start Sign"},input_trans_start_sign_help:{zh:"\u6807\u8BC6\u540E\u9762\u53EF\u4EE5\u52A0\u76EE\u6807\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1A \u201C/en \u4F60\u597D\u201D\u3001\u201C/zh hello\u201D",en:"The target language code can be added after the sign, such as: \"/en \u4F60\u597D\", \"/zh hello\""},detect_lang_remote:{zh:"\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B",en:"Remote language detection"},detect_lang_remote_help:{zh:"\u542F\u7528\u540E\u68C0\u6D4B\u51C6\u786E\u5EA6\u589E\u52A0\uFF0C\u4F46\u4F1A\u964D\u4F4E\u7FFB\u8BD1\u901F\u5EA6\uFF0C\u8BF7\u914C\u60C5\u5F00\u542F",en:"After enabling, the detection accuracy will increase, but it will reduce the translation speed. Please enable it as appropriate."},disable:{zh:"\u7981\u7528",en:"Disable"},enable:{zh:"\u542F\u7528",en:"Enable"},selection_translate:{zh:"\u5212\u8BCD\u7FFB\u8BD1",en:"Selection Translate"},toggle_selection_translate:{zh:"\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"Use Selection Translate"},trigger_tranbox_shortcut:{zh:"\u663E\u793A\u7FFB\u8BD1\u6846/\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57\u5FEB\u6377\u952E",en:"Open Translate Popup/Translate Selected Shortcut"},tranbtn_offset_x:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBX\uFF080-100\uFF09",en:"Translate Button Offset X (0-100)"},tranbtn_offset_y:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBY\uFF080-100\uFF09",en:"Translate Button Offset Y (0-100)"},translated_text:{zh:"\u8BD1\u6587",en:"Translated Text"},original_text:{zh:"\u539F\u6587",en:"Original Text"},favorite_words:{zh:"\u6536\u85CF\u8BCD\u6C47",en:"Favorite Words"},touch_setting:{zh:"\u89E6\u5C4F\u8BBE\u7F6E",en:"Touch Setting"},touch_translate_shortcut:{zh:"\u89E6\u5C4F\u7FFB\u8BD1\u5FEB\u6377\u65B9\u5F0F",en:"Touch Translate Shortcut"},touch_tap_0:{zh:"\u7981\u7528",en:"Disable"},touch_tap_2:{zh:"\u53CC\u6307\u8F7B\u89E6",en:"Two finger tap"},touch_tap_3:{zh:"\u4E09\u6307\u8F7B\u89E6",en:"Three finger tap"},touch_tap_4:{zh:"\u56DB\u6307\u8F7B\u89E6",en:"Four finger tap"},translate_blacklist:{zh:"\u7981\u7528\u7FFB\u8BD1\u540D\u5355",en:"Translate Blacklist"},disable_langs:{zh:"\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",en:"Disable Languages"},disable_langs_helper:{zh:"\u6B64\u529F\u80FD\u4F9D\u8D56\u51C6\u786E\u7684\u8BED\u8A00\u68C0\u6D4B\uFF0C\u5EFA\u8BAE\u542F\u7528\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B\u3002",en:"This feature relies on accurate language detection. It is recommended to enable remote language detection."},context_menus:{zh:"\u53F3\u952E\u83DC\u5355",en:"Context Menus"},hide_context_menus:{zh:"\u9690\u85CF\u53F3\u952E\u83DC\u5355",en:"Hide Context Menus"},simple_context_menus:{zh:"\u7B80\u5355\u53F3\u952E\u83DC\u5355",en:"Simple_context_menus Context Menus"},secondary_context_menus:{zh:"\u4E8C\u7EA7\u53F3\u952E\u83DC\u5355",en:"Secondary Context Menus"},mulkeys_help:{zh:"\u652F\u6301\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u591A\u4E2AKEY\u8F6E\u8BE2\u8C03\u7528\u3002",en:"Supports multiple KEY polling calls separated by newlines or English commas \",\"."},translate_page_title:{zh:"\u662F\u5426\u540C\u65F6\u7FFB\u8BD1\u9875\u9762\u6807\u9898",en:"Translate Page Title"}}; +var UI_LANGS=[["en","English"],["zh","中文"]];var customApiLangs="[\"en\", \"English - English\"],\n[\"zh-CN\", \"Simplified Chinese - \u7B80\u4F53\u4E2D\u6587\"],\n[\"zh-TW\", \"Traditional Chinese - \u7E41\u9AD4\u4E2D\u6587\"],\n[\"ar\", \"Arabic - \u0627\u0644\u0639\u0631\u0628\u064A\u0629\"],\n[\"bg\", \"Bulgarian - \u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438\"],\n[\"ca\", \"Catalan - Catal\xE0\"],\n[\"hr\", \"Croatian - Hrvatski\"],\n[\"cs\", \"Czech - \u010Ce\u0161tina\"],\n[\"da\", \"Danish - Dansk\"],\n[\"nl\", \"Dutch - Nederlands\"],\n[\"fi\", \"Finnish - Suomi\"],\n[\"fr\", \"French - Fran\xE7ais\"],\n[\"de\", \"German - Deutsch\"],\n[\"el\", \"Greek - \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC\"],\n[\"hi\", \"Hindi - \u0939\u093F\u0928\u094D\u0926\u0940\"],\n[\"hu\", \"Hungarian - Magyar\"],\n[\"id\", \"Indonesian - Indonesia\"],\n[\"it\", \"Italian - Italiano\"],\n[\"ja\", \"Japanese - \u65E5\u672C\u8A9E\"],\n[\"ko\", \"Korean - \uD55C\uAD6D\uC5B4\"],\n[\"ms\", \"Malay - Melayu\"],\n[\"mt\", \"Maltese - Malti\"],\n[\"nb\", \"Norwegian - Norsk Bokm\xE5l\"],\n[\"pl\", \"Polish - Polski\"],\n[\"pt\", \"Portuguese - Portugu\xEAs\"],\n[\"ro\", \"Romanian - Rom\xE2n\u0103\"],\n[\"ru\", \"Russian - \u0420\u0443\u0441\u0441\u043A\u0438\u0439\"],\n[\"sk\", \"Slovak - Sloven\u010Dina\"],\n[\"sl\", \"Slovenian - Sloven\u0161\u010Dina\"],\n[\"es\", \"Spanish - Espa\xF1ol\"],\n[\"sv\", \"Swedish - Svenska\"],\n[\"ta\", \"Tamil - \u0BA4\u0BAE\u0BBF\u0BB4\u0BCD\"],\n[\"te\", \"Telugu - \u0C24\u0C46\u0C32\u0C41\u0C17\u0C41\"],\n[\"th\", \"Thai - \u0E44\u0E17\u0E22\"],\n[\"tr\", \"Turkish - T\xFCrk\xE7e\"],\n[\"uk\", \"Ukrainian - \u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430\"],\n[\"vi\", \"Vietnamese - Ti\u1EBFng Vi\u1EC7t\"],\n";var customApiHelpZH="/// \u81EA\u5B9A\u4E49\u7FFB\u8BD1\u6E90\u63A5\u53E3\u8BF4\u660E\n\n// \u8BF7\u6C42\uFF08Request\uFF09\u6570\u636E\u5C06\u6309\u4E0B\u9762\u89C4\u8303\u53D1\u9001\n{\n url: {{YOUR_URL}},\n method: \"POST\",\n headers: {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{YOUR_KEY}}\",\n },\n body: {\n text: \"\", // \u9700\u8981\u7FFB\u8BD1\u7684\u6587\u5B57\n from: \"\", // \u6E90\u8BED\u8A00\uFF0C\u53EF\u80FD\u4E3A\u7A7A\uFF0C\u8868\u793A\u9700\u8981\u63A5\u53E3\u81EA\u52A8\u8BC6\u522B\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\n }\n}\n\n// \u8FD4\u56DE\uFF08Response\uFF09\u6570\u636E\u9700\u7B26\u5408\u4E0B\u9762\u7684JSON\u89C4\u8303\n{\n text: \"\", // \u7FFB\u8BD1\u540E\u7684\u6587\u5B57\n from: \"\", // \u8BC6\u522B\u7684\u6E90\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\uFF08\u53EF\u9009\uFF09\n}\n\n// \u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u5982\u4E0B\n".concat(customApiLangs,"\n");var customApiHelpEN="/// Custom translation source interface description\n\n// Request data will be sent according to the following specifications\n{\n url: {{YOUR_URL}},\n method: \"POST\",\n headers: {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{YOUR_KEY}}\",\n },\n body: {\n text: \"\", // text to be translated\n from: \"\", // Source language, may be empty\n to: \"\", // Target language\n }\n}\n\n// The returned data must conform to the following JSON specification\n{\n text: \"\", // translated text\n from: \"\", // Recognized source language\n to: \"\", // Target language (optional)\n}\n\n// The supported language codes are as follows\n".concat(customApiLangs,"\n");var I18N={app_name:{zh:"\u7B80\u7EA6\u7FFB\u8BD1",en:"KISS Translator"},translate:{zh:"\u7FFB\u8BD1",en:"Translate"},custom_api_help:{zh:customApiHelpZH,en:customApiHelpEN},translate_alt:{zh:"\u7FFB\u8BD1",en:"Translate"},basic_setting:{zh:"\u57FA\u672C\u8BBE\u7F6E",en:"Basic Setting"},rules_setting:{zh:"\u89C4\u5219\u8BBE\u7F6E",en:"Rules Setting"},apis_setting:{zh:"\u63A5\u53E3\u8BBE\u7F6E",en:"Apis Setting"},sync_setting:{zh:"\u540C\u6B65\u8BBE\u7F6E",en:"Sync Setting"},patch_setting:{zh:"\u8865\u4E01\u8BBE\u7F6E",en:"Patch Setting"},patch_setting_help:{zh:"\u9488\u5BF9\u4E00\u4E9B\u7279\u6B8A\u7F51\u7AD9\u7684\u4FEE\u6B63\u811A\u672C\uFF0C\u4EE5\u4FBF\u7FFB\u8BD1\u8F6F\u4EF6\u5F97\u5230\u66F4\u597D\u7684\u5C55\u793A\u6548\u679C\u3002",en:"Corrected scripts for some special websites so that the translation software can get better display results."},inject_webfix:{zh:"\u6CE8\u5165\u4FEE\u590D\u8865\u4E01",en:"Inject Webfix"},about:{zh:"\u5173\u4E8E",en:"About"},about_md:{zh:"README.md",en:"README.en.md"},about_md_local:{zh:"\u8BF7 [\u70B9\u51FB\u8FD9\u91CC](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8BE6\u60C5\u3002"),en:"Please [click here](".concat("https://github.com/fishjar/kiss-translator",") for details.")},ui_lang:{zh:"\u754C\u9762\u8BED\u8A00",en:"Interface Language"},fetch_limit:{zh:"\u6700\u5927\u5E76\u53D1\u8BF7\u6C42\u6570\u91CF (1-100)",en:"Maximum Number Of Concurrent Requests (1-100)"},fetch_interval:{zh:"\u6BCF\u6B21\u8BF7\u6C42\u95F4\u9694\u65F6\u95F4 (0-5000ms)",en:"Time Between Requests (0-5000ms)"},translate_interval:{zh:"\u91CD\u65B0\u7FFB\u8BD1\u95F4\u9694\u65F6\u95F4 (100-5000ms)",en:"Retranslation Interval (100-5000ms)"},min_translate_length:{zh:"\u6700\u5C0F\u7FFB\u8BD1\u5B57\u7B26\u6570 (1-100)",en:"Minimum number Of Translated Characters (1-100)"},max_translate_length:{zh:"\u6700\u5927\u7FFB\u8BD1\u5B57\u7B26\u6570 (100-10000)",en:"Maximum number Of Translated Characters (100-10000)"},num_of_newline_characters:{zh:"\u6362\u884C\u5B57\u7B26\u6570 (1-1000)",en:"Number of Newline Characters (1-1000)"},translate_service:{zh:"\u7FFB\u8BD1\u670D\u52A1",en:"Translate Service"},translate_timing:{zh:"\u7FFB\u8BD1\u65F6\u673A",en:"Translate Timing"},mk_pagescroll:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u7FFB\u8BD1\uFF08\u63A8\u8350\uFF09",en:"Rolling Loading (Suggested)"},mk_pageopen:{zh:"\u9875\u9762\u6253\u5F00\u5168\u90E8\u7FFB\u8BD1",en:"Page Open"},mk_mouseover:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover"},mk_ctrlKey:{zh:"Control + \u9F20\u6807\u60AC\u505C",en:"Control + Mouseover"},mk_shiftKey:{zh:"Shift + \u9F20\u6807\u60AC\u505C",en:"Shift + Mouseover"},mk_altKey:{zh:"Alt + \u9F20\u6807\u60AC\u505C",en:"Alt + Mouseover"},from_lang:{zh:"\u539F\u6587\u8BED\u8A00",en:"Source Language"},to_lang:{zh:"\u76EE\u6807\u8BED\u8A00",en:"Target Language"},to_lang2:{zh:"\u7B2C\u4E8C\u76EE\u6807\u8BED\u8A00",en:"Target Language 2"},to_lang2_helper:{zh:"\u8BBE\u5B9A\u540E\uFF0C\u4E0E\u76EE\u6807\u8BED\u8A00\u4EA7\u751F\u4E92\u8BD1\u6548\u679C\uFF0C\u4F46\u4F9D\u8D56\u8FDC\u7A0B\u8BED\u8A00\u8BC6\u522B\u3002",en:"After setting, it will produce mutual translation effect with the target language, but it relies on remote language recognition."},text_style:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style"},text_style_alt:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style"},bg_color:{zh:"\u6837\u5F0F\u989C\u8272",en:"Style Color"},remain_unchanged:{zh:"\u4FDD\u7559\u4E0D\u53D8",en:"Remain Unchanged"},google_api:{zh:"\u8C37\u6B4C\u7FFB\u8BD1\u63A5\u53E3",en:"Google Translate API"},default_selector:{zh:"\u9ED8\u8BA4\u9009\u62E9\u5668",en:"Default selector"},selector_rules:{zh:"\u9009\u62E9\u5668\u89C4\u5219",en:"Selector Rules"},save:{zh:"\u4FDD\u5B58",en:"Save"},edit:{zh:"\u7F16\u8F91",en:"Edit"},cancel:{zh:"\u53D6\u6D88",en:"Cancel"},delete:{zh:"\u5220\u9664",en:"Delete"},reset:{zh:"\u91CD\u7F6E",en:"Reset"},add:{zh:"\u6DFB\u52A0",en:"Add"},inject_rules:{zh:"\u6CE8\u5165\u8BA2\u9605\u89C4\u5219",en:"Inject Subscribe Rules"},personal_rules:{zh:"\u4E2A\u4EBA\u89C4\u5219",en:"Rules"},subscribe_rules:{zh:"\u8BA2\u9605\u89C4\u5219",en:"Subscribe"},overwrite_subscribe_rules:{zh:"\u8986\u5199\u8BA2\u9605\u89C4\u5219",en:"Overwrite"},subscribe_url:{zh:"\u8BA2\u9605\u5730\u5740",en:"Subscribe URL"},rules_warn_1:{zh:"1\u3001\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u4E00\u76F4\u751F\u6548\uFF0C\u9009\u62E9\u201C\u6CE8\u5165\u8BA2\u9605\u89C4\u5219\u201D\u540E\uFF0C\u201C\u8BA2\u9605\u89C4\u5219\u201D\u624D\u4F1A\u751F\u6548\u3002",en:"1. The \"Personal Rules\" are always in effect. After selecting \"Inject Subscription Rules\", the \"Subscription Rules\" will take effect."},rules_warn_2:{zh:"2\u3001\u201C\u8BA2\u9605\u89C4\u5219\u201D\u7684\u6CE8\u5165\u4F4D\u7F6E\u662F\u5012\u6570\u7B2C\u4E8C\u7684\u4F4D\u7F6E\uFF0C\u56E0\u6B64\u9664\u5168\u5C40\u89C4\u5219(*)\u5916\uFF0C\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u4F18\u5148\u7EA7\u6BD4\u201C\u8BA2\u9605\u89C4\u5219\u201D\u9AD8\uFF0C\u201C\u4E2A\u4EBA\u89C4\u5219\u201D\u586B\u5199\u540C\u6837\u7684\u7F51\u5740\u4F1A\u8986\u76D6\u201D\u8BA2\u9605\u89C4\u5219\u201C\u7684\u6761\u76EE\u3002",en:"2. The injection position of \"Subscription Rules\" is the penultimate position. Therefore, except for the global rules (*), the priority of \"Personal Rules\" is higher than that of \"Subscription Rules\". Filling in the same url in \"Personal Rules\" will overwrite \"Subscription Rules\" entry."},rules_warn_3:{zh:"3\u3001\u5173\u4E8E\u89C4\u5219\u586B\u5199\uFF1A\u8F93\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u6846\u9009\u201C*\u201D\u8868\u793A\u91C7\u7528\u5168\u5C40\u89C4\u5219\u3002",en:"3. Regarding filling in the rules: Leave the input box blank or select \"*\" in the drop-down box to use global rule."},sync_warn:{zh:"\u5982\u679C\u670D\u52A1\u5668\u5B58\u5728\u5176\u4ED6\u5BA2\u6237\u7AEF\u540C\u6B65\u7684\u6570\u636E\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u5C06\u76F4\u63A5\u8986\u76D6\u672C\u5730\u914D\u7F6E\uFF0C\u540E\u9762\u5219\u6839\u636E\u4FEE\u6539\u65F6\u95F4\uFF0C\u65B0\u7684\u8986\u76D6\u65E7\u7684\u3002",en:"If the server has data synchronized by other clients, the first synchronization will directly overwrite the local configuration, and later, according to the modification time, the new one will overwrite the old one."},about_sync_api:{zh:"\u67E5\u770B\u5173\u4E8E\u6570\u636E\u540C\u6B65\u63A5\u53E3\u90E8\u7F72",en:"View About Data Synchronization Interface Deployment"},about_api_proxy:{zh:"\u67E5\u770B\u81EA\u5EFA\u4E00\u4E2A\u7FFB\u8BD1\u63A5\u53E3\u4EE3\u7406",en:"Check out the self-built translation interface proxy"},style_none:{zh:"\u65E0",en:"None"},under_line:{zh:"\u4E0B\u5212\u76F4\u7EBF",en:"Underline"},dot_line:{zh:"\u4E0B\u5212\u70B9\u72B6\u7EBF",en:"Dotted Underline"},dash_line:{zh:"\u4E0B\u5212\u865A\u7EBF",en:"Dashed Underline"},wavy_line:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF",en:"Wavy Underline"},fuzzy:{zh:"\u6A21\u7CCA",en:"Fuzzy"},highlight:{zh:"\u9AD8\u4EAE",en:"Highlight"},blockquote:{zh:"\u5F15\u7528",en:"Blockquote"},diy_style:{zh:"\u81EA\u5B9A\u4E49\u6837\u5F0F",en:"Custom Style"},diy_style_helper:{zh:"\u9075\u5FAA\u201CCSS\u201D\u7684\u8BED\u6CD5",en:"Follow the syntax of \"CSS\""},setting:{zh:"\u8BBE\u7F6E",en:"Setting"},pattern:{zh:"\u5339\u914D\u7F51\u5740",en:"URL pattern"},pattern_helper:{zh:"1\u3001\u652F\u6301\u661F\u53F7(*)\u901A\u914D\u7B26\u30022\u3001\u591A\u4E2AURL\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u3002",en:"1. Supports the asterisk (*) wildcard character. 2. Separate multiple URLs with newlines or English commas \",\"."},selector_helper:{zh:"1\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u30022\u3001\u591A\u4E2ACSS\u9009\u62E9\u5668\u4E4B\u95F4\u7528\u201C;\u201D\u9694\u5F00\u30023\u3001\u201Cshadow root\u201D\u9009\u62E9\u5668\u548C\u5185\u90E8\u9009\u62E9\u5668\u7528\u201C>>>\u201D\u9694\u5F00\u3002",en:"1. Follow CSS selector syntax. 2. Separate multiple CSS selectors with \";\". 3. The \"shadow root\" selector and the internal selector are separated by \">>>\"."},translate_switch:{zh:"\u5F00\u542F\u7FFB\u8BD1",en:"Translate Switch"},default_enabled:{zh:"\u9ED8\u8BA4\u5F00\u542F",en:"Enabled"},default_disabled:{zh:"\u9ED8\u8BA4\u5173\u95ED",en:"Disabled"},selector:{zh:"\u9009\u62E9\u5668",en:"Selector"},keep_selector:{zh:"\u4FDD\u7559\u5143\u7D20\u9009\u62E9\u5668",en:"Keep unchanged selector"},keep_selector_helper:{zh:"1\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u30022\u3001\u5B50\u5143\u7D20\u9009\u62E9\u5668\u7528\u201C>>>\u201D\u9694\u5F00\u3002",en:"1. Follow CSS selector syntax. 2. Sub-element selectors are separated by \">>>\"."},terms:{zh:"\u4E13\u4E1A\u672F\u8BED",en:"Terms"},terms_helper:{zh:"1\u3001\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\uFF0C\u65E0\u9700\u659C\u6746\uFF0C\u4E0D\u652F\u6301\u4FEE\u9970\u7B26\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. Supports regular expression matching, no slash required, and no modifiers are supported. 2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated."},selector_style:{zh:"\u9009\u62E9\u5668\u8282\u70B9\u6837\u5F0F",en:"Selector Style"},selector_style_helper:{zh:"\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\uFF0C\u5173\u95ED\u7FFB\u8BD1\u65F6\u4E0D\u4F1A\u79FB\u9664\u3002",en:"It is injected when translation is turned on and will not be removed when translation is turned off."},selector_parent_style:{zh:"\u9009\u62E9\u5668\u7236\u8282\u70B9\u6837\u5F0F",en:"Selector Parent Style"},inject_js:{zh:"\u6CE8\u5165JS",en:"Inject JS"},inject_js_helper:{zh:"1\u3001\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\u8FD0\u884C\uFF0C\u5173\u95ED\u7FFB\u8BD1\u65F6\u79FB\u9664\u30022\u3001\u968F\u7740\u9875\u9762\u53D8\u5316\uFF0C\u53EF\u80FD\u4F1A\u591A\u6B21\u6CE8\u5165\u8FD0\u884C\u3002",en:"1. Inject and run when translation is turned on, and removed when translation is turned off. 2. As the page changes, it may be injected and run multiple times."},inject_css:{zh:"\u6CE8\u5165CSS",en:"Inject CSS"},inject_css_helper:{zh:"\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\uFF0C\u5173\u95ED\u7FFB\u8BD1\u65F6\u5C06\u79FB\u9664\u3002",en:"Injected when translation is enabled and removed when translation is disabled."},root_selector:{zh:"\u6839\u9009\u62E9\u5668",en:"Root Selector"},fixer_function:{zh:"\u4FEE\u590D\u51FD\u6570",en:"Fixer Function"},fixer_function_helper:{zh:"1\u3001br\u662F\u5C06
\u6362\u884C\u66FF\u6362\u6210

\u30022\u3001bn\u662F\u5C06\\n\u6362\u884C\u66FF\u6362\u6210

\u30023\u3001brToDiv\u548CbnToDiv\u662F\u66FF\u6362\u6210

\u3002",en:"1. br replaces
line breaks with

. 2. bn replaces \\n newline with

. 3. brToDiv and bnToDiv are replaced with

."},import:{zh:"\u5BFC\u5165",en:"Import"},export:{zh:"\u5BFC\u51FA",en:"Export"},error_cant_be_blank:{zh:"\u4E0D\u80FD\u4E3A\u7A7A",en:"Can not be blank"},error_duplicate_values:{zh:"\u5B58\u5728\u91CD\u590D\u7684\u503C",en:"There are duplicate values"},error_wrong_file_type:{zh:"\u9519\u8BEF\u7684\u6587\u4EF6\u7C7B\u578B",en:"Wrong file type"},error_fetch_url:{zh:"\u8BF7\u68C0\u67E5url\u5730\u5740\u662F\u5426\u6B63\u786E\u6216\u7A0D\u540E\u518D\u8BD5\u3002",en:"Please check if the url address is correct or try again later."},deepl_api:{zh:"DeepL \u63A5\u53E3",en:"DeepL API"},deepl_key:{zh:"DeepL \u5BC6\u94A5",en:"DeepL Key"},openai_api:{zh:"OpenAI \u63A5\u53E3",en:"OpenAI API"},openai_key:{zh:"OpenAI \u5BC6\u94A5",en:"OpenAI Key"},openai_model:{zh:"OpenAI \u6A21\u578B",en:"OpenAI Model"},openai_prompt:{zh:"OpenAI \u63D0\u793A\u8BCD",en:"OpenAI Prompt"},if_clear_cache:{zh:"\u662F\u5426\u6E05\u9664\u7F13\u5B58",en:"Whether clear cache"},clear_cache_never:{zh:"\u4E0D\u6E05\u9664\u7F13\u5B58",en:"Never clear cache"},clear_cache_restart:{zh:"\u91CD\u542F\u6D4F\u89C8\u5668\u65F6\u6E05\u9664\u7F13\u5B58",en:"Clear cache when restarting browser"},data_sync_type:{zh:"\u6570\u636E\u540C\u6B65\u65B9\u5F0F",en:"Data Sync Type"},data_sync_url:{zh:"\u6570\u636E\u540C\u6B65\u63A5\u53E3",en:"Data Sync API"},data_sync_user:{zh:"\u6570\u636E\u540C\u6B65\u8D26\u6237",en:"Data Sync User"},data_sync_key:{zh:"\u6570\u636E\u540C\u6B65\u5BC6\u94A5",en:"Data Sync Key"},sync_now:{zh:"\u7ACB\u5373\u540C\u6B65",en:"Sync Now"},sync_success:{zh:"\u540C\u6B65\u6210\u529F\uFF01",en:"Sync Success"},sync_failed:{zh:"\u540C\u6B65\u5931\u8D25\uFF01",en:"Sync Error"},error_got_some_wrong:{zh:"\u62B1\u6B49\uFF0C\u51FA\u9519\u4E86\uFF01",en:"Sorry, something went wrong!"},error_sync_setting:{zh:"\u60A8\u7684\u540C\u6B65\u7C7B\u578B\u5FC5\u987B\u4E3A\u201CKISS-Worker\u201D\uFF0C\u4E14\u9700\u586B\u5199\u5B8C\u6574",en:"Your sync type must be \"KISS-Worker\" and must be filled in completely"},click_test:{zh:"\u70B9\u51FB\u6D4B\u8BD5",en:"Click Test"},test_success:{zh:"\u6D4B\u8BD5\u6210\u529F",en:"Test success"},test_failed:{zh:"\u6D4B\u8BD5\u5931\u8D25",en:"Test failed"},clear_all_cache_now:{zh:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u7F13\u5B58",en:"Clear all cache now"},clear_cache:{zh:"\u6E05\u9664\u7F13\u5B58",en:"Clear Cache"},clear_success:{zh:"\u6E05\u9664\u6210\u529F",en:"Clear success"},clear_failed:{zh:"\u6E05\u9664\u5931\u8D25",en:"Clear failed"},share:{zh:"\u5206\u4EAB",en:"Share"},clear_all:{zh:"\u6E05\u7A7A",en:"Clear All"},help:{zh:"\u6C42\u52A9",en:"Help"},restore_default:{zh:"\u6062\u590D\u9ED8\u8BA4",en:"Restore Default"},shortcuts_setting:{zh:"\u5FEB\u6377\u952E\u8BBE\u7F6E",en:"Shortcuts Setting"},toggle_translate_shortcut:{zh:"\"\u5F00\u542F\u7FFB\u8BD1\"\u5FEB\u6377\u952E",en:"\"Toggle Translate\" Shortcut"},toggle_style_shortcut:{zh:"\"\u5207\u6362\u6837\u5F0F\"\u5FEB\u6377\u952E",en:"\"Toggle Style\" Shortcut"},toggle_popup_shortcut:{zh:"\"\u6253\u5F00\u5F39\u7A97\"\u5FEB\u6377\u952E",en:"\"Open Popup\" Shortcut"},open_setting_shortcut:{zh:"\"\u6253\u5F00\u8BBE\u7F6E\"\u5FEB\u6377\u952E",en:"\"Open Setting\" Shortcut"},hide_fab_button:{zh:"\u9690\u85CF\u60AC\u6D6E\u6309\u94AE",en:"Hide Fab Button"},hide_tran_button:{zh:"\u9690\u85CF\u7FFB\u8BD1\u6309\u94AE",en:"Hide Translate Button"},show:{zh:"\u663E\u793A",en:"Show"},hide:{zh:"\u9690\u85CF",en:"Hide"},save_rule:{zh:"\u4FDD\u5B58\u89C4\u5219",en:"Save Rule"},global_rule:{zh:"\u5168\u5C40\u89C4\u5219",en:"Global Rule"},input_translate:{zh:"\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation"},use_input_box_translation:{zh:"\u542F\u7528\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation"},input_selector:{zh:"\u8F93\u5165\u6846\u9009\u62E9\u5668",en:"Input Selector"},input_selector_helper:{zh:"\u7528\u4E8E\u8F93\u5165\u6846\u7FFB\u8BD1\u3002",en:"Used for input box translation."},trigger_trans_shortcut:{zh:"\u89E6\u53D1\u7FFB\u8BD1\u5FEB\u6377\u952E",en:"Trigger Translation Shortcut Keys"},trigger_trans_shortcut_help:{zh:"\u9ED8\u8BA4\u4E3A\u5355\u51FB\u201CAltLeft+KeyI\u201D",en:"Default is \"AltLeft+KeyI\""},shortcut_press_count:{zh:"\u5FEB\u6377\u952E\u8FDE\u51FB\u6B21\u6570",en:"Shortcut Press Number"},combo_timeout:{zh:"\u8FDE\u51FB\u8D85\u65F6\u65F6\u95F4 (10-1000ms)",en:"Combo Timeout (10-1000ms)"},input_trans_start_sign:{zh:"\u7FFB\u8BD1\u8D77\u59CB\u6807\u8BC6",en:"Translation Start Sign"},input_trans_start_sign_help:{zh:"\u6807\u8BC6\u540E\u9762\u53EF\u4EE5\u52A0\u76EE\u6807\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1A \u201C/en \u4F60\u597D\u201D\u3001\u201C/zh hello\u201D",en:"The target language code can be added after the sign, such as: \"/en \u4F60\u597D\", \"/zh hello\""},detect_lang_remote:{zh:"\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B",en:"Remote language detection"},detect_lang_remote_help:{zh:"\u542F\u7528\u540E\u68C0\u6D4B\u51C6\u786E\u5EA6\u589E\u52A0\uFF0C\u4F46\u4F1A\u964D\u4F4E\u7FFB\u8BD1\u901F\u5EA6\uFF0C\u8BF7\u914C\u60C5\u5F00\u542F",en:"After enabling, the detection accuracy will increase, but it will reduce the translation speed. Please enable it as appropriate."},disable:{zh:"\u7981\u7528",en:"Disable"},enable:{zh:"\u542F\u7528",en:"Enable"},selection_translate:{zh:"\u5212\u8BCD\u7FFB\u8BD1",en:"Selection Translate"},toggle_selection_translate:{zh:"\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"Use Selection Translate"},trigger_tranbox_shortcut:{zh:"\u663E\u793A\u7FFB\u8BD1\u6846/\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57\u5FEB\u6377\u952E",en:"Open Translate Popup/Translate Selected Shortcut"},tranbtn_offset_x:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBX\uFF080-100\uFF09",en:"Translate Button Offset X (0-100)"},tranbtn_offset_y:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBY\uFF080-100\uFF09",en:"Translate Button Offset Y (0-100)"},translated_text:{zh:"\u8BD1\u6587",en:"Translated Text"},original_text:{zh:"\u539F\u6587",en:"Original Text"},favorite_words:{zh:"\u6536\u85CF\u8BCD\u6C47",en:"Favorite Words"},touch_setting:{zh:"\u89E6\u5C4F\u8BBE\u7F6E",en:"Touch Setting"},touch_translate_shortcut:{zh:"\u89E6\u5C4F\u7FFB\u8BD1\u5FEB\u6377\u65B9\u5F0F",en:"Touch Translate Shortcut"},touch_tap_0:{zh:"\u7981\u7528",en:"Disable"},touch_tap_2:{zh:"\u53CC\u6307\u8F7B\u89E6",en:"Two finger tap"},touch_tap_3:{zh:"\u4E09\u6307\u8F7B\u89E6",en:"Three finger tap"},touch_tap_4:{zh:"\u56DB\u6307\u8F7B\u89E6",en:"Four finger tap"},translate_blacklist:{zh:"\u7981\u7528\u7FFB\u8BD1\u540D\u5355",en:"Translate Blacklist"},skip_langs:{zh:"\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",en:"Disable Languages"},skip_langs_helper:{zh:"\u6B64\u529F\u80FD\u4F9D\u8D56\u51C6\u786E\u7684\u8BED\u8A00\u68C0\u6D4B\uFF0C\u5EFA\u8BAE\u542F\u7528\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B\u3002",en:"This feature relies on accurate language detection. It is recommended to enable remote language detection."},context_menus:{zh:"\u53F3\u952E\u83DC\u5355",en:"Context Menus"},hide_context_menus:{zh:"\u9690\u85CF\u53F3\u952E\u83DC\u5355",en:"Hide Context Menus"},simple_context_menus:{zh:"\u7B80\u5355\u53F3\u952E\u83DC\u5355",en:"Simple_context_menus Context Menus"},secondary_context_menus:{zh:"\u4E8C\u7EA7\u53F3\u952E\u83DC\u5355",en:"Secondary Context Menus"},mulkeys_help:{zh:"\u652F\u6301\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u591A\u4E2AKEY\u8F6E\u8BE2\u8C03\u7528\u3002",en:"Supports multiple KEY polling calls separated by newlines or English commas \",\"."},translation_element_tag:{zh:"\u8BD1\u6587\u5143\u7D20\u6807\u7B7E",en:"Translation Element Tag"},show_only_translations:{zh:"\u4EC5\u663E\u793A\u8BD1\u6587",en:"Show Only Translations"},show_only_translations_help:{zh:"\u975E\u5B8C\u7F8E\u5B9E\u73B0\uFF0C\u67D0\u4E9B\u9875\u9762\u53EF\u80FD\u6709\u6837\u5F0F\u7B49\u95EE\u9898\u3002",en:"It is not a perfect implementation and some pages may have style issues."},translate_page_title:{zh:"\u662F\u5426\u7FFB\u8BD1\u9875\u9762\u6807\u9898",en:"Translate Page Title"},more:{zh:"\u66F4\u591A",en:"More"},fixer_selector:{zh:"\u7F51\u9875\u4FEE\u590D\u9009\u62E9\u5668",en:"Fixer Selector"}}; ;// CONCATENATED MODULE: ./src/config/index.js -var _OPT_LANGS_SPECIAL,_DEFAULT_TRANS_APIS,_DEFAULT_SHORTCUTS;var STOKEY_MSAUTH="".concat(APP_NAME,"_msauth");var STOKEY_BDAUTH="".concat(APP_NAME,"_bdauth");var config_STOKEY_SETTING="".concat(APP_NAME,"_setting");var config_STOKEY_RULES="".concat(APP_NAME,"_rules");var STOKEY_WFRULES="".concat(APP_NAME,"_webfix_rules");var STOKEY_WORDS="".concat(APP_NAME,"_words");var config_STOKEY_SYNC="".concat(APP_NAME,"_sync");var config_STOKEY_FAB="".concat(APP_NAME,"_fab");var config_STOKEY_RULESCACHE_PREFIX="".concat(APP_NAME,"_rulescache_");var STOKEY_WEBFIXCACHE_PREFIX="".concat(APP_NAME,"_webfixcache_");var CMD_TOGGLE_TRANSLATE="toggleTranslate";var CMD_TOGGLE_STYLE="toggleStyle";var CMD_OPEN_OPTIONS="openOptions";var CMD_OPEN_TRANBOX="openTranbox";var CLIENT_WEB="web";var CLIENT_CHROME="chrome";var CLIENT_EDGE="edge";var CLIENT_FIREFOX="firefox";var CLIENT_USERSCRIPT="userscript";var CLIENT_EXTS=[CLIENT_CHROME,CLIENT_EDGE,CLIENT_FIREFOX];var KV_RULES_KEY="kiss-rules.json";var KV_WFRULES_KEY="kiss-webfix.json";var KV_WORDS_KEY="kiss-words.json";var KV_RULES_SHARE_KEY="kiss-rules-share.json";var KV_SETTING_KEY="kiss-setting.json";var KV_SALT_SYNC="KISS-Translator-SYNC";var KV_SALT_SHARE="KISS-Translator-SHARE";var CACHE_NAME="".concat(APP_NAME,"_cache");var MSG_FETCH="fetch";var config_MSG_FETCH_LIMIT="fetch_limit";var config_MSG_FETCH_CLEAR="fetch_clear";var MSG_OPEN_OPTIONS="open_options";var MSG_SAVE_RULE="save_rule";var MSG_TRANS_TOGGLE="trans_toggle";var MSG_TRANS_TOGGLE_STYLE="trans_toggle_style";var MSG_OPEN_TRANBOX="open_tranbox";var MSG_TRANS_GETRULE="trans_getrule";var MSG_TRANS_PUTRULE="trans_putrule";var MSG_TRANS_CURRULE="trans_currule";var MSG_CONTEXT_MENUS="context_menus";var MSG_COMMAND_SHORTCUTS="command_shortcuts";var THEME_LIGHT="light";var THEME_DARK="dark";var URL_KISS_WORKER="https://github.com/fishjar/kiss-worker";var URL_KISS_PROXY="https://github.com/fishjar/kiss-proxy";var URL_KISS_RULES="https://github.com/fishjar/kiss-rules";var URL_KISS_RULES_NEW_ISSUE="https://github.com/fishjar/kiss-rules/issues/new";var URL_RAW_PREFIX="https://raw.githubusercontent.com/fishjar/kiss-translator/master";var URL_CACHE_TRAN="https://".concat(APP_LCNAME,"/translate");var URL_MICROSOFT_TRAN="https://api-edge.cognitive.microsofttranslator.com/translate";var URL_MICROSOFT_AUTH="https://edge.microsoft.com/translate/auth";var config_URL_BAIDU_LANGDETECT="https://fanyi.baidu.com/langdetect";var URL_BAIDU_WEB="https://fanyi.baidu.com/";var URL_BAIDU_TRANSAPI="https://fanyi.baidu.com/transapi";var config_URL_BAIDU_TRANSAPI_V2="https://fanyi.baidu.com/v2transapi";var URL_DEEPLFREE_TRAN="https://www2.deepl.com/jsonrpc";var config_URL_TENCENT_TRANSMART="https://transmart.qq.com/api/imt";var OPT_TRANS_GOOGLE="Google";var OPT_TRANS_MICROSOFT="Microsoft";var OPT_TRANS_DEEPL="DeepL";var OPT_TRANS_DEEPLX="DeepLX";var OPT_TRANS_DEEPLFREE="DeepLFree";var OPT_TRANS_BAIDU="Baidu";var OPT_TRANS_TENCENT="Tencent";var OPT_TRANS_OPENAI="OpenAI";var OPT_TRANS_GEMINI="Gemini";var OPT_TRANS_CLOUDFLAREAI="CloudflareAI";var OPT_TRANS_CUSTOMIZE="Custom";var OPT_TRANS_ALL=[OPT_TRANS_GOOGLE,OPT_TRANS_MICROSOFT,OPT_TRANS_BAIDU,OPT_TRANS_TENCENT,OPT_TRANS_DEEPL,OPT_TRANS_DEEPLFREE,OPT_TRANS_DEEPLX,OPT_TRANS_OPENAI,OPT_TRANS_GEMINI,OPT_TRANS_CLOUDFLAREAI,OPT_TRANS_CUSTOMIZE];var OPT_LANGS_TO=[["en","English - English"],["zh-CN","Simplified Chinese - 简体中文"],["zh-TW","Traditional Chinese - 繁體中文"],["ar","Arabic - العربية"],["bg","Bulgarian - Български"],["ca","Catalan - Català"],["hr","Croatian - Hrvatski"],["cs","Czech - Čeština"],["da","Danish - Dansk"],["nl","Dutch - Nederlands"],["fi","Finnish - Suomi"],["fr","French - Français"],["de","German - Deutsch"],["el","Greek - Ελληνικά"],["hi","Hindi - हिन्दी"],["hu","Hungarian - Magyar"],["id","Indonesian - Indonesia"],["it","Italian - Italiano"],["ja","Japanese - 日本語"],["ko","Korean - 한국어"],["ms","Malay - Melayu"],["mt","Maltese - Malti"],["nb","Norwegian - Norsk Bokmål"],["pl","Polish - Polski"],["pt","Portuguese - Português"],["ro","Romanian - Română"],["ru","Russian - Русский"],["sk","Slovak - Slovenčina"],["sl","Slovenian - Slovenščina"],["es","Spanish - Español"],["sv","Swedish - Svenska"],["ta","Tamil - தமிழ்"],["te","Telugu - తెలుగు"],["th","Thai - ไทย"],["tr","Turkish - Türkçe"],["uk","Ukrainian - Українська"],["vi","Vietnamese - Tiếng Việt"]];var OPT_LANGS_FROM=[["auto","Auto-detect"]].concat(OPT_LANGS_TO);var OPT_LANGS_SPECIAL=(_OPT_LANGS_SPECIAL={},(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_GOOGLE,new Map(OPT_LANGS_FROM.map(function(_ref){var _ref2=(0,slicedToArray/* default */.Z)(_ref,1),key=_ref2[0];return[key,key];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_MICROSOFT,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref3){var _ref4=(0,slicedToArray/* default */.Z)(_ref3,1),key=_ref4[0];return[key,key];})),[["auto",""],["zh-CN","zh-Hans"],["zh-TW","zh-Hant"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPL,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref5){var _ref6=(0,slicedToArray/* default */.Z)(_ref5,1),key=_ref6[0];return[key,key.toUpperCase()];})),[["auto",""],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPLFREE,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref7){var _ref8=(0,slicedToArray/* default */.Z)(_ref7,1),key=_ref8[0];return[key,key.toUpperCase()];})),[["auto","auto"],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPLX,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref9){var _ref10=(0,slicedToArray/* default */.Z)(_ref9,1),key=_ref10[0];return[key,key.toUpperCase()];})),[["auto",""],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_BAIDU,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref11){var _ref12=(0,slicedToArray/* default */.Z)(_ref11,1),key=_ref12[0];return[key,key];})),[["zh-CN","zh"],["zh-TW","cht"],["ar","ara"],["bg","bul"],["ca","cat"],["hr","hrv"],["da","dan"],["fi","fin"],["fr","fra"],["hi","mai"],["ja","jp"],["ko","kor"],["ms","may"],["mt","mlt"],["nb","nor"],["ro","rom"],["ru","ru"],["sl","slo"],["es","spa"],["sv","swe"],["ta","tam"],["te","tel"],["uk","ukr"],["vi","vie"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_TENCENT,new Map([["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ar","ar"],["de","de"],["ru","ru"],["fr","fr"],["fi","fil"],["ko","ko"],["ms","ms"],["pt","pt"],["ja","ja"],["th","th"],["tr","tr"],["es","es"],["it","it"],["hi","hi"],["id","id"],["vi","vi"]])),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_OPENAI,new Map(OPT_LANGS_FROM.map(function(_ref13){var _ref14=(0,slicedToArray/* default */.Z)(_ref13,2),key=_ref14[0],val=_ref14[1];return[key,val.split(" - ")[0]];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_GEMINI,new Map(OPT_LANGS_FROM.map(function(_ref15){var _ref16=(0,slicedToArray/* default */.Z)(_ref15,2),key=_ref16[0],val=_ref16[1];return[key,val.split(" - ")[0]];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_CLOUDFLAREAI,new Map([["auto",""],["zh-CN","chinese"],["zh-TW","chinese"],["en","english"],["ar","arabic"],["de","german"],["ru","russian"],["fr","french"],["pt","portuguese"],["ja","japanese"],["es","spanish"],["hi","hindi"]])),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_CUSTOMIZE,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref17){var _ref18=(0,slicedToArray/* default */.Z)(_ref17,1),key=_ref18[0];return[key,key];})),[["auto",""]]))),_OPT_LANGS_SPECIAL);var OPT_LANGS_LIST=OPT_LANGS_TO.map(function(_ref19){var _ref20=(0,slicedToArray/* default */.Z)(_ref19,1),lang=_ref20[0];return lang;});var config_OPT_LANGS_BAIDU=new Map(Array.from(OPT_LANGS_SPECIAL[OPT_TRANS_BAIDU].entries()).map(function(_ref21){var _ref22=(0,slicedToArray/* default */.Z)(_ref21,2),k=_ref22[0],v=_ref22[1];return[v,k];}));var config_OPT_LANGS_TENCENT=new Map(Array.from(OPT_LANGS_SPECIAL[OPT_TRANS_TENCENT].entries()).map(function(_ref23){var _ref24=(0,slicedToArray/* default */.Z)(_ref23,2),k=_ref24[0],v=_ref24[1];return[v,k];}));config_OPT_LANGS_TENCENT.set("zh","zh-CN");var OPT_STYLE_NONE="style_none";// 无 +var _OPT_LANGS_SPECIAL,_DEFAULT_TRANS_APIS,_DEFAULT_SHORTCUTS;var STOKEY_MSAUTH="".concat(APP_NAME,"_msauth");var STOKEY_BDAUTH="".concat(APP_NAME,"_bdauth");var config_STOKEY_SETTING="".concat(APP_NAME,"_setting");var config_STOKEY_RULES="".concat(APP_NAME,"_rules");var STOKEY_WORDS="".concat(APP_NAME,"_words");var config_STOKEY_SYNC="".concat(APP_NAME,"_sync");var config_STOKEY_FAB="".concat(APP_NAME,"_fab");var config_STOKEY_RULESCACHE_PREFIX="".concat(APP_NAME,"_rulescache_");var CMD_TOGGLE_TRANSLATE="toggleTranslate";var CMD_TOGGLE_STYLE="toggleStyle";var CMD_OPEN_OPTIONS="openOptions";var CMD_OPEN_TRANBOX="openTranbox";var CLIENT_WEB="web";var CLIENT_CHROME="chrome";var CLIENT_EDGE="edge";var CLIENT_FIREFOX="firefox";var CLIENT_USERSCRIPT="userscript";var CLIENT_EXTS=[CLIENT_CHROME,CLIENT_EDGE,CLIENT_FIREFOX];var KV_RULES_KEY="kiss-rules.json";var KV_WORDS_KEY="kiss-words.json";var KV_RULES_SHARE_KEY="kiss-rules-share.json";var KV_SETTING_KEY="kiss-setting.json";var KV_SALT_SYNC="KISS-Translator-SYNC";var KV_SALT_SHARE="KISS-Translator-SHARE";var CACHE_NAME="".concat(APP_NAME,"_cache");var MSG_FETCH="fetch";var config_MSG_FETCH_LIMIT="fetch_limit";var config_MSG_FETCH_CLEAR="fetch_clear";var MSG_OPEN_OPTIONS="open_options";var MSG_SAVE_RULE="save_rule";var MSG_TRANS_TOGGLE="trans_toggle";var MSG_TRANS_TOGGLE_STYLE="trans_toggle_style";var MSG_OPEN_TRANBOX="open_tranbox";var MSG_TRANS_GETRULE="trans_getrule";var MSG_TRANS_PUTRULE="trans_putrule";var MSG_TRANS_CURRULE="trans_currule";var MSG_CONTEXT_MENUS="context_menus";var MSG_COMMAND_SHORTCUTS="command_shortcuts";var MSG_INJECT_JS="inject_js";var MSG_INJECT_CSS="inject_css";var THEME_LIGHT="light";var THEME_DARK="dark";var URL_KISS_WORKER="https://github.com/fishjar/kiss-worker";var URL_KISS_PROXY="https://github.com/fishjar/kiss-proxy";var URL_KISS_RULES="https://github.com/fishjar/kiss-rules";var URL_KISS_RULES_NEW_ISSUE="https://github.com/fishjar/kiss-rules/issues/new";var URL_RAW_PREFIX="https://raw.githubusercontent.com/fishjar/kiss-translator/master";var URL_CACHE_TRAN="https://".concat(APP_LCNAME,"/translate");var URL_MICROSOFT_TRAN="https://api-edge.cognitive.microsofttranslator.com/translate";var URL_MICROSOFT_AUTH="https://edge.microsoft.com/translate/auth";var config_URL_BAIDU_LANGDETECT="https://fanyi.baidu.com/langdetect";var config_URL_BAIDU_SUGGEST="https://fanyi.baidu.com/sug";var URL_BAIDU_WEB="https://fanyi.baidu.com/";var URL_BAIDU_TRANSAPI="https://fanyi.baidu.com/transapi";var config_URL_BAIDU_TRANSAPI_V2="https://fanyi.baidu.com/v2transapi";var URL_DEEPLFREE_TRAN="https://www2.deepl.com/jsonrpc";var config_URL_TENCENT_TRANSMART="https://transmart.qq.com/api/imt";var OPT_TRANS_GOOGLE="Google";var OPT_TRANS_MICROSOFT="Microsoft";var OPT_TRANS_DEEPL="DeepL";var OPT_TRANS_DEEPLX="DeepLX";var OPT_TRANS_DEEPLFREE="DeepLFree";var OPT_TRANS_BAIDU="Baidu";var OPT_TRANS_TENCENT="Tencent";var OPT_TRANS_OPENAI="OpenAI";var OPT_TRANS_GEMINI="Gemini";var OPT_TRANS_CLOUDFLAREAI="CloudflareAI";var OPT_TRANS_CUSTOMIZE="Custom";var OPT_TRANS_ALL=[OPT_TRANS_GOOGLE,OPT_TRANS_MICROSOFT,OPT_TRANS_BAIDU,OPT_TRANS_TENCENT,OPT_TRANS_DEEPL,OPT_TRANS_DEEPLFREE,OPT_TRANS_DEEPLX,OPT_TRANS_OPENAI,OPT_TRANS_GEMINI,OPT_TRANS_CLOUDFLAREAI,OPT_TRANS_CUSTOMIZE];var OPT_LANGS_TO=[["en","English - English"],["zh-CN","Simplified Chinese - 简体中文"],["zh-TW","Traditional Chinese - 繁體中文"],["ar","Arabic - العربية"],["bg","Bulgarian - Български"],["ca","Catalan - Català"],["hr","Croatian - Hrvatski"],["cs","Czech - Čeština"],["da","Danish - Dansk"],["nl","Dutch - Nederlands"],["fi","Finnish - Suomi"],["fr","French - Français"],["de","German - Deutsch"],["el","Greek - Ελληνικά"],["hi","Hindi - हिन्दी"],["hu","Hungarian - Magyar"],["id","Indonesian - Indonesia"],["it","Italian - Italiano"],["ja","Japanese - 日本語"],["ko","Korean - 한국어"],["ms","Malay - Melayu"],["mt","Maltese - Malti"],["nb","Norwegian - Norsk Bokmål"],["pl","Polish - Polski"],["pt","Portuguese - Português"],["ro","Romanian - Română"],["ru","Russian - Русский"],["sk","Slovak - Slovenčina"],["sl","Slovenian - Slovenščina"],["es","Spanish - Español"],["sv","Swedish - Svenska"],["ta","Tamil - தமிழ்"],["te","Telugu - తెలుగు"],["th","Thai - ไทย"],["tr","Turkish - Türkçe"],["uk","Ukrainian - Українська"],["vi","Vietnamese - Tiếng Việt"]];var OPT_LANGS_FROM=[["auto","Auto-detect"]].concat(OPT_LANGS_TO);var OPT_LANGS_SPECIAL=(_OPT_LANGS_SPECIAL={},(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_GOOGLE,new Map(OPT_LANGS_FROM.map(function(_ref){var _ref2=(0,slicedToArray/* default */.Z)(_ref,1),key=_ref2[0];return[key,key];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_MICROSOFT,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref3){var _ref4=(0,slicedToArray/* default */.Z)(_ref3,1),key=_ref4[0];return[key,key];})),[["auto",""],["zh-CN","zh-Hans"],["zh-TW","zh-Hant"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPL,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref5){var _ref6=(0,slicedToArray/* default */.Z)(_ref5,1),key=_ref6[0];return[key,key.toUpperCase()];})),[["auto",""],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPLFREE,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref7){var _ref8=(0,slicedToArray/* default */.Z)(_ref7,1),key=_ref8[0];return[key,key.toUpperCase()];})),[["auto","auto"],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_DEEPLX,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref9){var _ref10=(0,slicedToArray/* default */.Z)(_ref9,1),key=_ref10[0];return[key,key.toUpperCase()];})),[["auto",""],["zh-CN","ZH"],["zh-TW","ZH"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_BAIDU,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref11){var _ref12=(0,slicedToArray/* default */.Z)(_ref11,1),key=_ref12[0];return[key,key];})),[["zh-CN","zh"],["zh-TW","cht"],["ar","ara"],["bg","bul"],["ca","cat"],["hr","hrv"],["da","dan"],["fi","fin"],["fr","fra"],["hi","mai"],["ja","jp"],["ko","kor"],["ms","may"],["mt","mlt"],["nb","nor"],["ro","rom"],["ru","ru"],["sl","slo"],["es","spa"],["sv","swe"],["ta","tam"],["te","tel"],["uk","ukr"],["vi","vie"]]))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_TENCENT,new Map([["auto","auto"],["zh-CN","zh"],["zh-TW","zh"],["en","en"],["ar","ar"],["de","de"],["ru","ru"],["fr","fr"],["fi","fil"],["ko","ko"],["ms","ms"],["pt","pt"],["ja","ja"],["th","th"],["tr","tr"],["es","es"],["it","it"],["hi","hi"],["id","id"],["vi","vi"]])),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_OPENAI,new Map(OPT_LANGS_FROM.map(function(_ref13){var _ref14=(0,slicedToArray/* default */.Z)(_ref13,2),key=_ref14[0],val=_ref14[1];return[key,val.split(" - ")[0]];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_GEMINI,new Map(OPT_LANGS_FROM.map(function(_ref15){var _ref16=(0,slicedToArray/* default */.Z)(_ref15,2),key=_ref16[0],val=_ref16[1];return[key,val.split(" - ")[0]];}))),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_CLOUDFLAREAI,new Map([["auto",""],["zh-CN","chinese"],["zh-TW","chinese"],["en","english"],["ar","arabic"],["de","german"],["ru","russian"],["fr","french"],["pt","portuguese"],["ja","japanese"],["es","spanish"],["hi","hindi"]])),(0,defineProperty/* default */.Z)(_OPT_LANGS_SPECIAL,OPT_TRANS_CUSTOMIZE,new Map([].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_FROM.map(function(_ref17){var _ref18=(0,slicedToArray/* default */.Z)(_ref17,1),key=_ref18[0];return[key,key];})),[["auto",""]]))),_OPT_LANGS_SPECIAL);var OPT_LANGS_LIST=OPT_LANGS_TO.map(function(_ref19){var _ref20=(0,slicedToArray/* default */.Z)(_ref19,1),lang=_ref20[0];return lang;});var config_OPT_LANGS_BAIDU=new Map(Array.from(OPT_LANGS_SPECIAL[OPT_TRANS_BAIDU].entries()).map(function(_ref21){var _ref22=(0,slicedToArray/* default */.Z)(_ref21,2),k=_ref22[0],v=_ref22[1];return[v,k];}));var config_OPT_LANGS_TENCENT=new Map(Array.from(OPT_LANGS_SPECIAL[OPT_TRANS_TENCENT].entries()).map(function(_ref23){var _ref24=(0,slicedToArray/* default */.Z)(_ref23,2),k=_ref24[0],v=_ref24[1];return[v,k];}));config_OPT_LANGS_TENCENT.set("zh","zh-CN");var OPT_STYLE_NONE="style_none";// 无 var OPT_STYLE_LINE="under_line";// 下划线 var OPT_STYLE_DOTLINE="dot_line";// 点状线 var OPT_STYLE_DASHLINE="dash_line";// 虚线 @@ -43396,45 +43486,73 @@ var OPT_STYLE_FUZZY="fuzzy";// 模糊 var OPT_STYLE_HIGHLIGHT="highlight";// 高亮 var OPT_STYLE_BLOCKQUOTE="blockquote";// 引用 var OPT_STYLE_DIY="diy_style";// 自定义样式 -var OPT_STYLE_ALL=[OPT_STYLE_NONE,OPT_STYLE_LINE,OPT_STYLE_DOTLINE,OPT_STYLE_DASHLINE,OPT_STYLE_WAVYLINE,OPT_STYLE_FUZZY,OPT_STYLE_HIGHLIGHT,OPT_STYLE_BLOCKQUOTE,OPT_STYLE_DIY];var OPT_STYLE_USE_COLOR=[OPT_STYLE_LINE,OPT_STYLE_DOTLINE,OPT_STYLE_DASHLINE,OPT_STYLE_WAVYLINE,OPT_STYLE_HIGHLIGHT,OPT_STYLE_BLOCKQUOTE];var OPT_MOUSEKEY_DISABLE="mk_disable";// 滚动加载翻译 -var OPT_MOUSEKEY_PAGEOPEN="mk_pageopen";// 直接翻译到底 -var OPT_MOUSEKEY_MOUSEOVER="mk_mouseover";var OPT_MOUSEKEY_CONTROL="mk_ctrlKey";var OPT_MOUSEKEY_SHIFT="mk_shiftKey";var OPT_MOUSEKEY_ALT="mk_altKey";var OPT_MOUSEKEY_ALL=[OPT_MOUSEKEY_DISABLE,OPT_MOUSEKEY_PAGEOPEN,OPT_MOUSEKEY_MOUSEOVER,OPT_MOUSEKEY_CONTROL,OPT_MOUSEKEY_SHIFT,OPT_MOUSEKEY_ALT];var DEFAULT_FETCH_LIMIT=10;// 默认最大任务数量 +var OPT_STYLE_ALL=[OPT_STYLE_NONE,OPT_STYLE_LINE,OPT_STYLE_DOTLINE,OPT_STYLE_DASHLINE,OPT_STYLE_WAVYLINE,OPT_STYLE_FUZZY,OPT_STYLE_HIGHLIGHT,OPT_STYLE_BLOCKQUOTE,OPT_STYLE_DIY];var OPT_STYLE_USE_COLOR=[OPT_STYLE_LINE,OPT_STYLE_DOTLINE,OPT_STYLE_DASHLINE,OPT_STYLE_WAVYLINE,OPT_STYLE_HIGHLIGHT,OPT_STYLE_BLOCKQUOTE];var OPT_TIMING_PAGESCROLL="mk_pagescroll";// 滚动加载翻译 +var OPT_TIMING_PAGEOPEN="mk_pageopen";// 直接翻译到底 +var OPT_TIMING_MOUSEOVER="mk_mouseover";var OPT_TIMING_CONTROL="mk_ctrlKey";var OPT_TIMING_SHIFT="mk_shiftKey";var OPT_TIMING_ALT="mk_altKey";var OPT_TIMING_ALL=[OPT_TIMING_PAGESCROLL,OPT_TIMING_PAGEOPEN,OPT_TIMING_MOUSEOVER,OPT_TIMING_CONTROL,OPT_TIMING_SHIFT,OPT_TIMING_ALT];var DEFAULT_FETCH_LIMIT=10;// 默认最大任务数量 var DEFAULT_FETCH_INTERVAL=100;// 默认任务间隔时间 var PROMPT_PLACE_FROM="{{from}}";// 占位符 var PROMPT_PLACE_TO="{{to}}";// 占位符 var PROMPT_PLACE_TEXT="{{text}}";// 占位符 var DEFAULT_COLOR="#209CEE";// 默认高亮背景色/线条颜色 -// 全局规则 -var config_GLOBLA_RULE={pattern:"*",selector:DEFAULT_SELECTOR,keepSelector:DEFAULT_KEEP_SELECTOR,terms:"",translator:OPT_TRANS_MICROSOFT,fromLang:"auto",toLang:"zh-CN",textStyle:OPT_STYLE_DASHLINE,transOpen:"false",bgColor:"",textDiyStyle:""};// 输入框翻译 +var DEFAULT_TRANS_TAG="span";var DEFAULT_SELECT_STYLE="-webkit-line-clamp: unset; max-height: none; height: auto;";// 全局规则 +var config_GLOBLA_RULE={pattern:"*",// 匹配网址 +selector:DEFAULT_SELECTOR,// 选择器 +keepSelector:DEFAULT_KEEP_SELECTOR,// 保留元素选择器 +terms:"",// 专业术语 +translator:OPT_TRANS_MICROSOFT,// 翻译服务 +fromLang:"auto",// 源语言 +toLang:"zh-CN",// 目标语言 +textStyle:OPT_STYLE_DASHLINE,// 译文样式 +transOpen:"false",// 开启翻译 +bgColor:"",// 译文颜色 +textDiyStyle:"",// 自定义译文样式 +selectStyle:DEFAULT_SELECT_STYLE,// 选择器节点样式 +parentStyle:DEFAULT_SELECT_STYLE,// 选择器父节点样式 +injectJs:"",// 注入JS +injectCss:"",// 注入CSS +transOnly:"false",// 是否仅显示译文 +transTiming:OPT_TIMING_PAGESCROLL,// 翻译时机/鼠标悬停翻译 +transTag:DEFAULT_TRANS_TAG,// 译文元素标签 +transTitle:"false",// 是否同时翻译页面标题 +detectRemote:"false",// 是否使用远程语言检测 +skipLangs:[],// 不翻译的语言 +fixerSelector:"",// 修复函数选择器 +fixerFunc:"-"// 修复函数 +};// 输入框翻译 var OPT_INPUT_TRANS_SIGNS=["/","//","\\","\\\\",">",">>"];var DEFAULT_INPUT_SHORTCUT=["AltLeft","KeyI"];var DEFAULT_INPUT_RULE={transOpen:true,translator:OPT_TRANS_MICROSOFT,fromLang:"auto",toLang:"en",triggerShortcut:DEFAULT_INPUT_SHORTCUT,triggerCount:1,triggerTime:200,transSign:OPT_INPUT_TRANS_SIGNS[0]};// 划词翻译 var DEFAULT_TRANBOX_SHORTCUT=["AltLeft","KeyS"];var DEFAULT_TRANBOX_SETTING={transOpen:true,translator:OPT_TRANS_MICROSOFT,fromLang:"auto",toLang:"zh-CN",toLang2:"en",tranboxShortcut:DEFAULT_TRANBOX_SHORTCUT,btnOffsetX:10,btnOffsetY:10,hideTranBtn:false};// 订阅列表 -var config_DEFAULT_SUBRULES_LIST=[{url:"https://fishjar.github.io/kiss-rules/kiss-rules.json",selected:false},{url:"https://fishjar.github.io/kiss-rules/kiss-rules-on.json",selected:true},{url:"https://fishjar.github.io/kiss-rules/kiss-rules-off.json",selected:false}];// 翻译接口 -var DEFAULT_TRANS_APIS=(_DEFAULT_TRANS_APIS={},(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_GOOGLE,{url:"https://translate.googleapis.com/translate_a/single",key:""}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPL,{url:"https://api-free.deepl.com/v2/translate",key:""}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPLX,{url:"http://localhost:1188/translate",key:""}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_OPENAI,{url:"https://api.openai.com/v1/chat/completions",key:"",model:"gpt-4",prompt:"You will be provided with a sentence in ".concat(PROMPT_PLACE_FROM,", and your task is to translate it into ").concat(PROMPT_PLACE_TO,".")}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_GEMINI,{url:"https://generativelanguage.googleapis.com/v1/models",key:"",model:"gemini-pro",prompt:"Translate the following text from ".concat(PROMPT_PLACE_FROM," to ").concat(PROMPT_PLACE_TO,":\n\n").concat(PROMPT_PLACE_TEXT)}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_CLOUDFLAREAI,{url:"https://api.cloudflare.com/client/v4/accounts/{ACCOUNT_ID}/ai/run/@cf/meta/m2m100-1.2b",key:""}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_CUSTOMIZE,{url:"",key:""}),_DEFAULT_TRANS_APIS);// 默认快捷键 +var DEFAULT_SUBRULES_LIST=[{url:"https://fishjar.github.io/kiss-rules/kiss-rules.json",selected:false},{url:"https://fishjar.github.io/kiss-rules/kiss-rules-on.json",selected:true},{url:"https://fishjar.github.io/kiss-rules/kiss-rules-off.json",selected:false}];// 翻译接口 +var DEFAULT_TRANS_APIS=(_DEFAULT_TRANS_APIS={},(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_GOOGLE,{url:"https://translate.googleapis.com/translate_a/single",key:"",fetchLimit:DEFAULT_FETCH_LIMIT,// 最大任务数量 +fetchInterval:DEFAULT_FETCH_INTERVAL// 任务间隔时间 +}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_MICROSOFT,{fetchLimit:DEFAULT_FETCH_LIMIT,fetchInterval:DEFAULT_FETCH_INTERVAL}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_BAIDU,{fetchLimit:DEFAULT_FETCH_LIMIT,fetchInterval:DEFAULT_FETCH_INTERVAL}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_TENCENT,{fetchLimit:DEFAULT_FETCH_LIMIT,fetchInterval:DEFAULT_FETCH_INTERVAL}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPL,{url:"https://api-free.deepl.com/v2/translate",key:"",fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPLFREE,{fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_DEEPLX,{url:"http://localhost:1188/translate",key:"",fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_OPENAI,{url:"https://api.openai.com/v1/chat/completions",key:"",model:"gpt-4",prompt:"You will be provided with a sentence in ".concat(PROMPT_PLACE_FROM,", and your task is to translate it into ").concat(PROMPT_PLACE_TO,"."),fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_GEMINI,{url:"https://generativelanguage.googleapis.com/v1/models",key:"",model:"gemini-pro",prompt:"Translate the following text from ".concat(PROMPT_PLACE_FROM," to ").concat(PROMPT_PLACE_TO,":\n\n").concat(PROMPT_PLACE_TEXT),fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_CLOUDFLAREAI,{url:"https://api.cloudflare.com/client/v4/accounts/{ACCOUNT_ID}/ai/run/@cf/meta/m2m100-1.2b",key:"",fetchLimit:1,fetchInterval:500}),(0,defineProperty/* default */.Z)(_DEFAULT_TRANS_APIS,OPT_TRANS_CUSTOMIZE,{url:"",key:"",fetchLimit:DEFAULT_FETCH_LIMIT,fetchInterval:DEFAULT_FETCH_INTERVAL}),_DEFAULT_TRANS_APIS);// 默认快捷键 var OPT_SHORTCUT_TRANSLATE="toggleTranslate";var OPT_SHORTCUT_STYLE="toggleStyle";var OPT_SHORTCUT_POPUP="togglePopup";var OPT_SHORTCUT_SETTING="openSetting";var DEFAULT_SHORTCUTS=(_DEFAULT_SHORTCUTS={},(0,defineProperty/* default */.Z)(_DEFAULT_SHORTCUTS,OPT_SHORTCUT_TRANSLATE,["AltLeft","KeyQ"]),(0,defineProperty/* default */.Z)(_DEFAULT_SHORTCUTS,OPT_SHORTCUT_STYLE,["AltLeft","KeyC"]),(0,defineProperty/* default */.Z)(_DEFAULT_SHORTCUTS,OPT_SHORTCUT_POPUP,["AltLeft","KeyK"]),(0,defineProperty/* default */.Z)(_DEFAULT_SHORTCUTS,OPT_SHORTCUT_SETTING,["AltLeft","KeyO"]),_DEFAULT_SHORTCUTS);var TRANS_MIN_LENGTH=5;// 最短翻译长度 var TRANS_MAX_LENGTH=5000;// 最长翻译长度 var TRANS_NEWLINE_LENGTH=20;// 换行字符数 var DEFAULT_BLACKLIST=["https://fishjar.github.io/kiss-translator/options.html","https://translate.google.com","https://www.deepl.com/translator","oapi.dingtalk.com","login.dingtalk.com"];// 禁用翻译名单 var config_DEFAULT_SETTING={darkMode:false,// 深色模式 uiLang:"en",// 界面语言 -fetchLimit:DEFAULT_FETCH_LIMIT,// 最大任务数量 -fetchInterval:DEFAULT_FETCH_INTERVAL,// 任务间隔时间 +// fetchLimit: DEFAULT_FETCH_LIMIT, // 最大任务数量(移至transApis,作废) +// fetchInterval: DEFAULT_FETCH_INTERVAL, // 任务间隔时间(移至transApis,作废) minLength:TRANS_MIN_LENGTH,maxLength:TRANS_MAX_LENGTH,newlineLength:TRANS_NEWLINE_LENGTH,clearCache:false,// 是否在浏览器下次启动时清除缓存 injectRules:true,// 是否注入订阅规则 -injectWebfix:true,// 是否注入修复补丁 -detectRemote:false,// 是否使用远程语言检测 -contextMenus:true,// 是否添加右键菜单(作废) +// injectWebfix: true, // 是否注入修复补丁(作废) +// detectRemote: false, // 是否使用远程语言检测(移至rule,作废) +// contextMenus: true, // 是否添加右键菜单(作废) contextMenuType:1,// 右键菜单类型(0不显示,1简单菜单,2多级菜单) -transTitle:false,// 是否同时翻译页面标题 -subrulesList:config_DEFAULT_SUBRULES_LIST,// 订阅列表 -owSubrule:rules_DEFAULT_OW_RULE,// 覆写订阅规则 +// transTag: DEFAULT_TRANS_TAG, // 译文元素标签(移至rule,作废) +// transOnly: false, // 是否仅显示译文(移至rule,作废) +// transTitle: false, // 是否同时翻译页面标题(移至rule,作废) +subrulesList:DEFAULT_SUBRULES_LIST,// 订阅列表 +owSubrule:DEFAULT_OW_RULE,// 覆写订阅规则 transApis:DEFAULT_TRANS_APIS,// 翻译接口 -mouseKey:OPT_MOUSEKEY_DISABLE,// 翻译时机/鼠标悬停翻译 +// mouseKey: OPT_TIMING_PAGESCROLL, // 翻译时机/鼠标悬停翻译(移至rule,作废) shortcuts:DEFAULT_SHORTCUTS,// 快捷键 inputRule:DEFAULT_INPUT_RULE,// 输入框设置 tranboxSetting:DEFAULT_TRANBOX_SETTING,// 划词翻译设置 touchTranslate:2,// 触屏翻译 blacklist:DEFAULT_BLACKLIST.join(",\n"),// 禁用翻译名单 -disableLangs:[]// 不翻译的语言 +// disableLangs: [], // 不翻译的语言(移至rule,作废) +transInterval:500// 翻译间隔时间 };var config_DEFAULT_RULES=[config_GLOBLA_RULE];var OPT_SYNCTYPE_WORKER="KISS-Worker";var OPT_SYNCTYPE_WEBDAV="WebDAV";var OPT_SYNCTYPE_ALL=[OPT_SYNCTYPE_WORKER,OPT_SYNCTYPE_WEBDAV];var config_DEFAULT_SYNC={syncType:OPT_SYNCTYPE_WORKER,// 同步方式 syncUrl:"",// 数据同步接口 syncUser:"",// 数据同步用户名 @@ -43450,42 +43568,44 @@ var client_client="userscript";var client_isExt=CLIENT_EXTS.includes(client_clie /** * 浏览器兼容插件,另可用于判断是插件模式还是网页模式,方便开发 * @returns - */function _browser(){try{return __webpack_require__(2465);}catch(err){// console.log("[browser]", err.message); + */function _browser(){try{return __webpack_require__(2465);}catch(err){// kissLog(err, "browser"); }}var browser_browser=_browser();var isBg=function isBg(){return(globalThis===null||globalThis===void 0?void 0:globalThis.ContextType)==="BACKGROUND";}; ;// CONCATENATED MODULE: ./src/libs/storage.js -function set(_x,_x2){return _set.apply(this,arguments);}function _set(){_set=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee10(key,val){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee10$(_context10){while(1)switch(_context10.prev=_context10.next){case 0:if(!client_isExt){_context10.next=5;break;}_context10.next=3;return browser_browser.storage.local.set((0,defineProperty/* default */.Z)({},key,val));case 3:_context10.next=11;break;case 5:if(!isGm){_context10.next=10;break;}_context10.next=8;return(window.KISS_GM||GM).setValue(key,val);case 8:_context10.next=11;break;case 10:window.localStorage.setItem(key,val);case 11:case"end":return _context10.stop();}},_callee10);}));return _set.apply(this,arguments);}function get(_x3){return _get.apply(this,arguments);}function _get(){_get=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee11(key){var val,_val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee11$(_context11){while(1)switch(_context11.prev=_context11.next){case 0:if(!client_isExt){_context11.next=7;break;}_context11.next=3;return browser_browser.storage.local.get([key]);case 3:val=_context11.sent;return _context11.abrupt("return",val[key]);case 7:if(!isGm){_context11.next=12;break;}_context11.next=10;return(window.KISS_GM||GM).getValue(key);case 10:_val=_context11.sent;return _context11.abrupt("return",_val);case 12:return _context11.abrupt("return",window.localStorage.getItem(key));case 13:case"end":return _context11.stop();}},_callee11);}));return _get.apply(this,arguments);}function del(_x4){return _del.apply(this,arguments);}function _del(){_del=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee12(key){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee12$(_context12){while(1)switch(_context12.prev=_context12.next){case 0:if(!client_isExt){_context12.next=5;break;}_context12.next=3;return browser_browser.storage.local.remove([key]);case 3:_context12.next=11;break;case 5:if(!isGm){_context12.next=10;break;}_context12.next=8;return(window.KISS_GM||GM).deleteValue(key);case 8:_context12.next=11;break;case 10:window.localStorage.removeItem(key);case 11:case"end":return _context12.stop();}},_callee12);}));return _del.apply(this,arguments);}function setObj(_x5,_x6){return _setObj.apply(this,arguments);}function _setObj(){_setObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee13(key,obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee13$(_context13){while(1)switch(_context13.prev=_context13.next){case 0:_context13.next=2;return set(key,JSON.stringify(obj));case 2:case"end":return _context13.stop();}},_callee13);}));return _setObj.apply(this,arguments);}function trySetObj(_x7,_x8){return _trySetObj.apply(this,arguments);}function _trySetObj(){_trySetObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee14(key,obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee14$(_context14){while(1)switch(_context14.prev=_context14.next){case 0:_context14.next=2;return get(key);case 2:if(_context14.sent){_context14.next=5;break;}_context14.next=5;return setObj(key,obj);case 5:case"end":return _context14.stop();}},_callee14);}));return _trySetObj.apply(this,arguments);}function getObj(_x9){return _getObj.apply(this,arguments);}function _getObj(){_getObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee15(key){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee15$(_context15){while(1)switch(_context15.prev=_context15.next){case 0:_context15.next=2;return get(key);case 2:val=_context15.sent;return _context15.abrupt("return",val&&JSON.parse(val));case 4:case"end":return _context15.stop();}},_callee15);}));return _getObj.apply(this,arguments);}function putObj(_x10,_x11){return _putObj.apply(this,arguments);}/** +function set(_x,_x2){return _set.apply(this,arguments);}function _set(){_set=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee8(key,val){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee8$(_context8){while(1)switch(_context8.prev=_context8.next){case 0:if(!client_isExt){_context8.next=5;break;}_context8.next=3;return browser_browser.storage.local.set((0,defineProperty/* default */.Z)({},key,val));case 3:_context8.next=11;break;case 5:if(!isGm){_context8.next=10;break;}_context8.next=8;return(window.KISS_GM||GM).setValue(key,val);case 8:_context8.next=11;break;case 10:window.localStorage.setItem(key,val);case 11:case"end":return _context8.stop();}},_callee8);}));return _set.apply(this,arguments);}function get(_x3){return _get.apply(this,arguments);}function _get(){_get=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee9(key){var val,_val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee9$(_context9){while(1)switch(_context9.prev=_context9.next){case 0:if(!client_isExt){_context9.next=7;break;}_context9.next=3;return browser_browser.storage.local.get([key]);case 3:val=_context9.sent;return _context9.abrupt("return",val[key]);case 7:if(!isGm){_context9.next=12;break;}_context9.next=10;return(window.KISS_GM||GM).getValue(key);case 10:_val=_context9.sent;return _context9.abrupt("return",_val);case 12:return _context9.abrupt("return",window.localStorage.getItem(key));case 13:case"end":return _context9.stop();}},_callee9);}));return _get.apply(this,arguments);}function del(_x4){return _del.apply(this,arguments);}function _del(){_del=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee10(key){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee10$(_context10){while(1)switch(_context10.prev=_context10.next){case 0:if(!client_isExt){_context10.next=5;break;}_context10.next=3;return browser_browser.storage.local.remove([key]);case 3:_context10.next=11;break;case 5:if(!isGm){_context10.next=10;break;}_context10.next=8;return(window.KISS_GM||GM).deleteValue(key);case 8:_context10.next=11;break;case 10:window.localStorage.removeItem(key);case 11:case"end":return _context10.stop();}},_callee10);}));return _del.apply(this,arguments);}function setObj(_x5,_x6){return _setObj.apply(this,arguments);}function _setObj(){_setObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee11(key,obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee11$(_context11){while(1)switch(_context11.prev=_context11.next){case 0:_context11.next=2;return set(key,JSON.stringify(obj));case 2:case"end":return _context11.stop();}},_callee11);}));return _setObj.apply(this,arguments);}function trySetObj(_x7,_x8){return _trySetObj.apply(this,arguments);}function _trySetObj(){_trySetObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee12(key,obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee12$(_context12){while(1)switch(_context12.prev=_context12.next){case 0:_context12.next=2;return get(key);case 2:if(_context12.sent){_context12.next=5;break;}_context12.next=5;return setObj(key,obj);case 5:case"end":return _context12.stop();}},_callee12);}));return _trySetObj.apply(this,arguments);}function getObj(_x9){return _getObj.apply(this,arguments);}function _getObj(){_getObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee13(key){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee13$(_context13){while(1)switch(_context13.prev=_context13.next){case 0:_context13.next=2;return get(key);case 2:val=_context13.sent;return _context13.abrupt("return",val&&JSON.parse(val));case 4:case"end":return _context13.stop();}},_callee13);}));return _getObj.apply(this,arguments);}function putObj(_x10,_x11){return _putObj.apply(this,arguments);}/** * 对storage的封装 - */function _putObj(){_putObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee16(key,obj){var _yield$getObj;var cur;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee16$(_context16){while(1)switch(_context16.prev=_context16.next){case 0:_context16.next=2;return getObj(key);case 2:_context16.t1=_yield$getObj=_context16.sent;_context16.t0=_context16.t1!==null;if(!_context16.t0){_context16.next=6;break;}_context16.t0=_yield$getObj!==void 0;case 6:if(!_context16.t0){_context16.next=10;break;}_context16.t2=_yield$getObj;_context16.next=11;break;case 10:_context16.t2={};case 11:cur=_context16.t2;_context16.next=14;return setObj(key,_objectSpread2(_objectSpread2({},cur),obj));case 14:case"end":return _context16.stop();}},_callee16);}));return _putObj.apply(this,arguments);}var storage={get:get,set:set,del:del,setObj:setObj,trySetObj:trySetObj,getObj:getObj,putObj:putObj// onChanged, + */function _putObj(){_putObj=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee14(key,obj){var _yield$getObj;var cur;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee14$(_context14){while(1)switch(_context14.prev=_context14.next){case 0:_context14.next=2;return getObj(key);case 2:_context14.t1=_yield$getObj=_context14.sent;_context14.t0=_context14.t1!==null;if(!_context14.t0){_context14.next=6;break;}_context14.t0=_yield$getObj!==void 0;case 6:if(!_context14.t0){_context14.next=10;break;}_context14.t2=_yield$getObj;_context14.next=11;break;case 10:_context14.t2={};case 11:cur=_context14.t2;_context14.next=14;return setObj(key,_objectSpread2(_objectSpread2({},cur),obj));case 14:case"end":return _context14.stop();}},_callee14);}));return _putObj.apply(this,arguments);}var storage={get:get,set:set,del:del,setObj:setObj,trySetObj:trySetObj,getObj:getObj,putObj:putObj// onChanged, };/** * 设置信息 - */var getSetting=function getSetting(){return getObj(config_STOKEY_SETTING);};var getSettingWithDefault=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.next=2;return getSetting();case 2:_context.t0=_context.sent;if(_context.t0){_context.next=5;break;}_context.t0=config_DEFAULT_SETTING;case 5:return _context.abrupt("return",_context.t0);case 6:case"end":return _context.stop();}},_callee);}));return function getSettingWithDefault(){return _ref.apply(this,arguments);};}();var setSetting=function setSetting(val){return setObj(config_STOKEY_SETTING,val);};var updateSetting=function updateSetting(obj){return putObj(STOKEY_SETTING,obj);};/** + */var getSetting=function getSetting(){return getObj(config_STOKEY_SETTING);};var getSettingWithDefault=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.t0=_objectSpread2;_context.t1=_objectSpread2({},config_DEFAULT_SETTING);_context.next=4;return getSetting();case 4:_context.t2=_context.sent;if(_context.t2){_context.next=7;break;}_context.t2={};case 7:_context.t3=_context.t2;return _context.abrupt("return",(0,_context.t0)(_context.t1,_context.t3));case 9:case"end":return _context.stop();}},_callee);}));return function getSettingWithDefault(){return _ref.apply(this,arguments);};}();var setSetting=function setSetting(val){return setObj(config_STOKEY_SETTING,val);};var updateSetting=function updateSetting(obj){return putObj(STOKEY_SETTING,obj);};/** * 规则列表 */var getRules=function getRules(){return getObj(config_STOKEY_RULES);};var storage_getRulesWithDefault=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return getRules();case 2:_context2.t0=_context2.sent;if(_context2.t0){_context2.next=5;break;}_context2.t0=config_DEFAULT_RULES;case 5:return _context2.abrupt("return",_context2.t0);case 6:case"end":return _context2.stop();}},_callee2);}));return function getRulesWithDefault(){return _ref2.apply(this,arguments);};}();var storage_setRules=function setRules(val){return setObj(config_STOKEY_RULES,val);};/** - * 修复规则列表 - */var getWebfixRules=function getWebfixRules(){return getObj(STOKEY_WFRULES);};var storage_getWebfixRulesWithDefault=/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return getWebfixRules();case 2:_context3.t0=_context3.sent;if(_context3.t0){_context3.next=5;break;}_context3.t0=[];case 5:return _context3.abrupt("return",_context3.t0);case 6:case"end":return _context3.stop();}},_callee3);}));return function getWebfixRulesWithDefault(){return _ref3.apply(this,arguments);};}();var setWebfixRules=function setWebfixRules(val){return setObj(STOKEY_WFRULES,val);};/** * 词汇列表 - */var getWords=function getWords(){return getObj(STOKEY_WORDS);};var getWordsWithDefault=/*#__PURE__*/function(){var _ref4=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.next=2;return getWords();case 2:_context4.t0=_context4.sent;if(_context4.t0){_context4.next=5;break;}_context4.t0={};case 5:return _context4.abrupt("return",_context4.t0);case 6:case"end":return _context4.stop();}},_callee4);}));return function getWordsWithDefault(){return _ref4.apply(this,arguments);};}();var setWords=function setWords(val){return setObj(STOKEY_WORDS,val);};/** + */var getWords=function getWords(){return getObj(STOKEY_WORDS);};var getWordsWithDefault=/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return getWords();case 2:_context3.t0=_context3.sent;if(_context3.t0){_context3.next=5;break;}_context3.t0={};case 5:return _context3.abrupt("return",_context3.t0);case 6:case"end":return _context3.stop();}},_callee3);}));return function getWordsWithDefault(){return _ref3.apply(this,arguments);};}();var setWords=function setWords(val){return setObj(STOKEY_WORDS,val);};/** * 订阅规则 - */var getSubRules=function getSubRules(url){return getObj(config_STOKEY_RULESCACHE_PREFIX+url);};var getSubRulesWithDefault=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref5=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee5(){return _regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.next=2;return getSubRules();case 2:_context5.t0=_context5.sent;if(_context5.t0){_context5.next=5;break;}_context5.t0=[];case 5:return _context5.abrupt("return",_context5.t0);case 6:case"end":return _context5.stop();}},_callee5);}));return function getSubRulesWithDefault(){return _ref5.apply(this,arguments);};}()));var delSubRules=function delSubRules(url){return del(config_STOKEY_RULESCACHE_PREFIX+url);};var setSubRules=function setSubRules(url,val){return setObj(config_STOKEY_RULESCACHE_PREFIX+url,val);};/** - * 修复站点 - */var getWebfix=function getWebfix(url){return getObj(STOKEY_WEBFIXCACHE_PREFIX+url);};var getWebfixWithDefault=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref6=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee6(){return _regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:_context6.next=2;return getWebfix();case 2:_context6.t0=_context6.sent;if(_context6.t0){_context6.next=5;break;}_context6.t0=[];case 5:return _context6.abrupt("return",_context6.t0);case 6:case"end":return _context6.stop();}},_callee6);}));return function getWebfixWithDefault(){return _ref6.apply(this,arguments);};}()));var setWebfix=function setWebfix(url,val){return setObj(STOKEY_WEBFIXCACHE_PREFIX+url,val);};/** + */var getSubRules=function getSubRules(url){return getObj(config_STOKEY_RULESCACHE_PREFIX+url);};var getSubRulesWithDefault=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref4=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee4(){return _regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.next=2;return getSubRules();case 2:_context4.t0=_context4.sent;if(_context4.t0){_context4.next=5;break;}_context4.t0=[];case 5:return _context4.abrupt("return",_context4.t0);case 6:case"end":return _context4.stop();}},_callee4);}));return function getSubRulesWithDefault(){return _ref4.apply(this,arguments);};}()));var delSubRules=function delSubRules(url){return del(config_STOKEY_RULESCACHE_PREFIX+url);};var setSubRules=function setSubRules(url,val){return setObj(config_STOKEY_RULESCACHE_PREFIX+url,val);};/** * fab位置 - */var getFab=function getFab(){return getObj(STOKEY_FAB);};var getFabWithDefault=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref7=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee7(){return _regeneratorRuntime().wrap(function _callee7$(_context7){while(1)switch(_context7.prev=_context7.next){case 0:_context7.next=2;return getFab();case 2:_context7.t0=_context7.sent;if(_context7.t0){_context7.next=5;break;}_context7.t0={};case 5:return _context7.abrupt("return",_context7.t0);case 6:case"end":return _context7.stop();}},_callee7);}));return function getFabWithDefault(){return _ref7.apply(this,arguments);};}()));var setFab=function setFab(obj){return setObj(STOKEY_FAB,obj);};var updateFab=function updateFab(obj){return putObj(STOKEY_FAB,obj);};/** + */var getFab=function getFab(){return getObj(STOKEY_FAB);};var getFabWithDefault=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref5=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee5(){return _regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.next=2;return getFab();case 2:_context5.t0=_context5.sent;if(_context5.t0){_context5.next=5;break;}_context5.t0={};case 5:return _context5.abrupt("return",_context5.t0);case 6:case"end":return _context5.stop();}},_callee5);}));return function getFabWithDefault(){return _ref5.apply(this,arguments);};}()));var setFab=function setFab(obj){return setObj(STOKEY_FAB,obj);};var updateFab=function updateFab(obj){return putObj(STOKEY_FAB,obj);};/** * 数据同步 - */var getSync=function getSync(){return getObj(config_STOKEY_SYNC);};var storage_getSyncWithDefault=/*#__PURE__*/function(){var _ref8=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee8(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee8$(_context8){while(1)switch(_context8.prev=_context8.next){case 0:_context8.next=2;return getSync();case 2:_context8.t0=_context8.sent;if(_context8.t0){_context8.next=5;break;}_context8.t0=config_DEFAULT_SYNC;case 5:return _context8.abrupt("return",_context8.t0);case 6:case"end":return _context8.stop();}},_callee8);}));return function getSyncWithDefault(){return _ref8.apply(this,arguments);};}();var storage_updateSync=function updateSync(obj){return putObj(config_STOKEY_SYNC,obj);};/** + */var getSync=function getSync(){return getObj(config_STOKEY_SYNC);};var storage_getSyncWithDefault=/*#__PURE__*/function(){var _ref6=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:_context6.next=2;return getSync();case 2:_context6.t0=_context6.sent;if(_context6.t0){_context6.next=5;break;}_context6.t0=config_DEFAULT_SYNC;case 5:return _context6.abrupt("return",_context6.t0);case 6:case"end":return _context6.stop();}},_callee6);}));return function getSyncWithDefault(){return _ref6.apply(this,arguments);};}();var storage_updateSync=function updateSync(obj){return putObj(config_STOKEY_SYNC,obj);};/** * ms auth */var getMsauth=function getMsauth(){return getObj(STOKEY_MSAUTH);};var setMsauth=function setMsauth(val){return setObj(STOKEY_MSAUTH,val);};/** * baidu auth */var getBdauth=function getBdauth(){return getObj(STOKEY_BDAUTH);};var setBdauth=function setBdauth(val){return setObj(STOKEY_BDAUTH,val);};/** * 存入默认数据 - */var tryInitDefaultData=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref9=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee9(){return _regeneratorRuntime().wrap(function _callee9$(_context9){while(1)switch(_context9.prev=_context9.next){case 0:_context9.prev=0;_context9.next=3;return trySetObj(STOKEY_SETTING,DEFAULT_SETTING);case 3:_context9.next=5;return trySetObj(STOKEY_RULES,DEFAULT_RULES);case 5:_context9.next=7;return trySetObj(STOKEY_SYNC,DEFAULT_SYNC);case 7:_context9.next=9;return trySetObj("".concat(STOKEY_RULESCACHE_PREFIX).concat("https://fishjar.github.io/kiss-rules/kiss-rules.json"),BUILTIN_RULES);case 9:_context9.next=14;break;case 11:_context9.prev=11;_context9.t0=_context9["catch"](0);console.log("[init default]",_context9.t0);case 14:case"end":return _context9.stop();}},_callee9,null,[[0,11]]);}));return function tryInitDefaultData(){return _ref9.apply(this,arguments);};}())); + */var tryInitDefaultData=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref7=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee7(){return _regeneratorRuntime().wrap(function _callee7$(_context7){while(1)switch(_context7.prev=_context7.next){case 0:_context7.prev=0;_context7.next=3;return trySetObj(STOKEY_SETTING,DEFAULT_SETTING);case 3:_context7.next=5;return trySetObj(STOKEY_RULES,DEFAULT_RULES);case 5:_context7.next=7;return trySetObj(STOKEY_SYNC,DEFAULT_SYNC);case 7:_context7.next=9;return trySetObj("".concat(STOKEY_RULESCACHE_PREFIX).concat("https://fishjar.github.io/kiss-rules/kiss-rules.json"),BUILTIN_RULES);case 9:_context7.next=14;break;case 11:_context7.prev=11;_context7.t0=_context7["catch"](0);kissLog(_context7.t0,"init default");case 14:case"end":return _context7.stop();}},_callee7,null,[[0,11]]);}));return function tryInitDefaultData(){return _ref7.apply(this,arguments);};}())); +;// CONCATENATED MODULE: ./src/libs/log.js +/** + * 日志函数 + * @param {*} msg + * @param {*} type + */var log_kissLog=function kissLog(msg,type){var prefix="[KISS-Translator]";if(type){prefix+="[".concat(type,"]");}console.log("".concat(prefix," ").concat(msg));}; ;// CONCATENATED MODULE: ./src/hooks/Storage.js /** - * - * @param {*} key + * + * @param {*} key * @param {*} defaultVal 需为调用hook外的常量 - * @returns - */function useStorage(key,defaultVal){var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useState3=(0,react.useState)(null),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),data=_useState4[0],setData=_useState4[1];var save=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(val){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:setData(val);_context.next=3;return storage.setObj(key,val);case 3:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[key]);var update=(0,react.useCallback)(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:setData(function(){var pre=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};return _objectSpread2(_objectSpread2({},pre),obj);});_context2.next=3;return storage.putObj(key,obj);case 3:case"end":return _context2.stop();}},_callee2);}));return function(_x2){return _ref2.apply(this,arguments);};}(),[key]);var remove=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:setData(null);_context3.next=3;return storage.del(key);case 3:case"end":return _context3.stop();}},_callee3);})),[key]);var reload=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;setLoading(true);_context4.next=4;return storage.getObj(key);case 4:val=_context4.sent;if(val){setData(val);}_context4.next=11;break;case 8:_context4.prev=8;_context4.t0=_context4["catch"](0);console.log("[storage reload]",_context4.t0.message);case 11:_context4.prev=11;setLoading(false);return _context4.finish(11);case 14:case"end":return _context4.stop();}},_callee4,null,[[0,8,11,14]]);})),[key]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;setLoading(true);_context5.next=4;return storage.getObj(key);case 4:val=_context5.sent;if(!val){_context5.next=9;break;}setData(val);_context5.next=13;break;case 9:if(!defaultVal){_context5.next=13;break;}setData(defaultVal);_context5.next=13;return storage.setObj(key,defaultVal);case 13:_context5.next=18;break;case 15:_context5.prev=15;_context5.t0=_context5["catch"](0);console.log("[storage load]",_context5.t0.message);case 18:_context5.prev=18;setLoading(false);return _context5.finish(18);case 21:case"end":return _context5.stop();}},_callee5,null,[[0,15,18,21]]);}))();},[key,defaultVal]);return{data:data,save:save,update:update,remove:remove,reload:reload,loading:loading};} + * @returns + */function useStorage(key,defaultVal){var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useState3=(0,react.useState)(null),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),data=_useState4[0],setData=_useState4[1];var save=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(val){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:setData(val);_context.next=3;return storage.setObj(key,val);case 3:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[key]);var update=(0,react.useCallback)(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:setData(function(){var pre=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};return _objectSpread2(_objectSpread2({},pre),obj);});_context2.next=3;return storage.putObj(key,obj);case 3:case"end":return _context2.stop();}},_callee2);}));return function(_x2){return _ref2.apply(this,arguments);};}(),[key]);var remove=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:setData(null);_context3.next=3;return storage.del(key);case 3:case"end":return _context3.stop();}},_callee3);})),[key]);var reload=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;setLoading(true);_context4.next=4;return storage.getObj(key);case 4:val=_context4.sent;if(val){setData(val);}_context4.next=11;break;case 8:_context4.prev=8;_context4.t0=_context4["catch"](0);log_kissLog(_context4.t0,"storage reload");case 11:_context4.prev=11;setLoading(false);return _context4.finish(11);case 14:case"end":return _context4.stop();}},_callee4,null,[[0,8,11,14]]);})),[key]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){var val;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;setLoading(true);_context5.next=4;return storage.getObj(key);case 4:val=_context5.sent;if(!val){_context5.next=9;break;}setData(val);_context5.next=13;break;case 9:if(!defaultVal){_context5.next=13;break;}setData(defaultVal);_context5.next=13;return storage.setObj(key,defaultVal);case 13:_context5.next=18;break;case 15:_context5.prev=15;_context5.t0=_context5["catch"](0);log_kissLog(_context5.t0,"storage load");case 18:_context5.prev=18;setLoading(false);return _context5.finish(18);case 21:case"end":return _context5.stop();}},_callee5,null,[[0,15,18,21]]);}))();},[key,defaultVal]);return{data:data,save:save,update:update,remove:remove,reload:reload,loading:loading};} ;// CONCATENATED MODULE: ./node_modules/.pnpm/decode-uri-component@0.4.1/node_modules/decode-uri-component/index.js var token = '%[a-f0-9]{2}'; var singleMatcher = new RegExp('(' + token + ')|([^%]+?)', 'gi'); @@ -44097,6 +44217,9 @@ function _objectWithoutProperties(source, excluded) { } ;// CONCATENATED MODULE: ./src/libs/msg.js /** + * 获取当前tab信息 + * @returns + */var getCurTab=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(){var _yield$browser$tabs$q,_yield$browser$tabs$q2,tab;return _regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.next=2;return browser.tabs.query({active:true,lastFocusedWindow:true});case 2:_yield$browser$tabs$q=_context.sent;_yield$browser$tabs$q2=_slicedToArray(_yield$browser$tabs$q,1);tab=_yield$browser$tabs$q2[0];return _context.abrupt("return",tab);case 6:case"end":return _context.stop();}},_callee);}));return function getCurTab(){return _ref.apply(this,arguments);};}()));var getCurTabId=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref2=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2(){var tab;return _regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return getCurTab();case 2:tab=_context2.sent;return _context2.abrupt("return",tab.id);case 4:case"end":return _context2.stop();}},_callee2);}));return function getCurTabId(){return _ref2.apply(this,arguments);};}()));/** * 发送消息给background * @param {*} action * @param {*} args @@ -44106,10 +44229,7 @@ function _objectWithoutProperties(source, excluded) { * @param {*} action * @param {*} args * @returns - */var sendTabMsg=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(action,args){var tabs;return _regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.next=2;return browser.tabs.query({active:true,currentWindow:true});case 2:tabs=_context.sent;return _context.abrupt("return",browser.tabs.sendMessage(tabs[0].id,{action:action,args:args}));case 4:case"end":return _context.stop();}},_callee);}));return function sendTabMsg(_x,_x2){return _ref.apply(this,arguments);};}()));/** - * 获取当前tab信息 - * @returns - */var getTabInfo=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref2=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2(){var tabs;return _regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return browser.tabs.query({active:true,currentWindow:true});case 2:tabs=_context2.sent;return _context2.abrupt("return",tabs[0]);case 4:case"end":return _context2.stop();}},_callee2);}));return function getTabInfo(){return _ref2.apply(this,arguments);};}())); + */var sendTabMsg=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref3=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee3(action,args){var tabId;return _regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return getCurTabId();case 2:tabId=_context3.sent;return _context3.abrupt("return",browser.tabs.sendMessage(tabId,{action:action,args:args}));case 4:case"end":return _context3.stop();}},_callee3);}));return function sendTabMsg(_x,_x2){return _ref3.apply(this,arguments);};}())); ;// CONCATENATED MODULE: ./src/libs/pool.js /** * 任务池 @@ -44123,9 +44243,9 @@ var maxCount=_limit;// 最大数量 var curCount=0;// 当前数量 var interval=_interval;// 间隔时间 var timer=null;var run=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var item,args,resolve,reject,retry,preArgs,res,retryTimer;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:// console.log("timer", timer); -timer&&clearTimeout(timer);timer=setTimeout(run,interval);if(!(curCount0&&arguments[0]!==undefined?arguments[0]:100;var _limit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:100;if(_interval>=0&&_interval<=5000&&_interval!==interval){interval=_interval;}if(_limit>=1&&_limit<=100&&_limit!==maxCount){maxCount=_limit;}},clear:function clear(){pool.length=0;curCount=0;timer&&clearTimeout(timer);timer=null;}};}; +timer&&clearTimeout(timer);timer=setTimeout(run,interval);if(!(curCount0&&arguments[0]!==undefined?arguments[0]:100;var _limit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:100;if(_interval>=0&&_interval<=5000&&_interval!==interval){interval=_interval;}if(_limit>=1&&_limit<=100&&_limit!==maxCount){maxCount=_limit;}},clear:function clear(){pool.length=0;curCount=0;timer&&clearTimeout(timer);timer=null;}};}; ;// CONCATENATED MODULE: ./src/libs/auth.js -var parseMSToken=function parseMSToken(token){try{return JSON.parse(atob(token.split(".")[1])).exp;}catch(err){console.log("[parseMSToken]",err);}return 0;};/** +var parseMSToken=function parseMSToken(token){try{return JSON.parse(atob(token.split(".")[1])).exp;}catch(err){log_kissLog(err,"parseMSToken");}return 0;};/** * 闭包缓存token,减少对storage查询 * @returns */var _msAuth=function _msAuth(){var _ref={},token=_ref.token,exp=_ref.exp;return/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var now,res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:// 查询内存缓存 @@ -44158,37 +44278,37 @@ parts:[{text:prompt}]}]};var input="".concat(url,"/").concat(model,":generateCon * @returns */var newTransReq=function newTransReq(_ref12,apiSetting){var translator=_ref12.translator,text=_ref12.text,from=_ref12.from,to=_ref12.to;var args=_objectSpread2({text:text,from:from,to:to},apiSetting);switch(translator){case OPT_TRANS_DEEPL:case OPT_TRANS_OPENAI:case OPT_TRANS_GEMINI:case OPT_TRANS_CLOUDFLAREAI:args.key=keyPick(translator,args.key);break;default:}switch(translator){case OPT_TRANS_GOOGLE:return genGoogle(args);case OPT_TRANS_MICROSOFT:return genMicrosoft(args);case OPT_TRANS_DEEPL:return genDeepl(args);case OPT_TRANS_DEEPLFREE:return genDeeplFree(args);case OPT_TRANS_DEEPLX:return genDeeplX(args);case OPT_TRANS_BAIDU:return genBaidu(args);case OPT_TRANS_TENCENT:return genTencent(args);case OPT_TRANS_OPENAI:return genOpenAI(args);case OPT_TRANS_GEMINI:return genGemini(args);case OPT_TRANS_CLOUDFLAREAI:return genCloudflareAI(args);case OPT_TRANS_CUSTOMIZE:return genCustom(args);default:throw new Error("[trans] translator: ".concat(translator," not support"));}}; ;// CONCATENATED MODULE: ./src/libs/fetch.js -var fetch_excluded=["response","responseHeaders","status","statusText"],fetch_excluded2=["useCache","usePool","transOpts","apiSetting"];/** +var fetch_excluded=["response","responseHeaders","status","statusText"],fetch_excluded2=["useCache","usePool","transOpts","apiSetting"];var TIMEOUT=5000;/** * 油猴脚本的请求封装 * @param {*} input * @param {*} init * @returns */var fetch_fetchGM=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(input){var _ref2,_ref2$method,method,headers,body,_args=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_ref2=_args.length>1&&_args[1]!==undefined?_args[1]:{},_ref2$method=_ref2.method,method=_ref2$method===void 0?"GET":_ref2$method,headers=_ref2.headers,body=_ref2.body;return _context.abrupt("return",new Promise(function(resolve,reject){GM.xmlHttpRequest({method:method,url:input,headers:headers,data:body,// withCredentials: true, -onload:function onload(_ref3){var response=_ref3.response,responseHeaders=_ref3.responseHeaders,status=_ref3.status,statusText=_ref3.statusText,opts=_objectWithoutProperties(_ref3,fetch_excluded);var headers={};responseHeaders.split("\n").forEach(function(line){var _line$split$map=line.split(":").map(function(item){return item.trim();}),_line$split$map2=(0,slicedToArray/* default */.Z)(_line$split$map,2),name=_line$split$map2[0],value=_line$split$map2[1];if(name&&value){headers[name]=value;}});resolve({body:response,headers:headers,status:status,statusText:statusText});},onerror:reject});}));case 2:case"end":return _context.stop();}},_callee);}));return function fetchGM(_x){return _ref.apply(this,arguments);};}();/** +timeout:TIMEOUT,onload:function onload(_ref3){var response=_ref3.response,responseHeaders=_ref3.responseHeaders,status=_ref3.status,statusText=_ref3.statusText,opts=_objectWithoutProperties(_ref3,fetch_excluded);var headers={};responseHeaders.split("\n").forEach(function(line){var _line$split$map=line.split(":").map(function(item){return item.trim();}),_line$split$map2=(0,slicedToArray/* default */.Z)(_line$split$map,2),name=_line$split$map2[0],value=_line$split$map2[1];if(name&&value){headers[name]=value;}});resolve({body:response,headers:headers,status:status,statusText:statusText});},onerror:reject});}));case 2:case"end":return _context.stop();}},_callee);}));return function fetchGM(_x){return _ref.apply(this,arguments);};}();/** * 发起请求 * @param {*} param0 * @returns - */var fetchApi=/*#__PURE__*/function(){var _ref5=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(_ref4){var input,init,transOpts,apiSetting,_yield$newTransReq,_yield$newTransReq2,_info,_info$script,_info2,_info2$script,info,connects,url,isSafe,_ref6,body,headers,status,statusText;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:input=_ref4.input,init=_ref4.init,transOpts=_ref4.transOpts,apiSetting=_ref4.apiSetting;if(!(transOpts!==null&&transOpts!==void 0&&transOpts.translator)){_context2.next=8;break;}_context2.next=4;return newTransReq(transOpts,apiSetting);case 4:_yield$newTransReq=_context2.sent;_yield$newTransReq2=(0,slicedToArray/* default */.Z)(_yield$newTransReq,2);input=_yield$newTransReq2[0];init=_yield$newTransReq2[1];case 8:if(input){_context2.next=10;break;}throw new Error("url is empty");case 10:if(!isGm){_context2.next=37;break;}if(!window.KISS_GM){_context2.next=17;break;}_context2.next=14;return window.KISS_GM.getInfo();case 14:info=_context2.sent;_context2.next=18;break;case 17:info=GM.info;case 18:// Tampermonkey --> .connects + */var fetchApi=/*#__PURE__*/function(){var _ref5=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(_ref4){var _AbortSignal;var input,init,transOpts,apiSetting,_yield$newTransReq,_yield$newTransReq2,_info,_info$script,_info2,_info2$script,info,connects,url,isSafe,_ref6,body,headers,status,statusText;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:input=_ref4.input,init=_ref4.init,transOpts=_ref4.transOpts,apiSetting=_ref4.apiSetting;if(!(transOpts!==null&&transOpts!==void 0&&transOpts.translator)){_context2.next=8;break;}_context2.next=4;return newTransReq(transOpts,apiSetting);case 4:_yield$newTransReq=_context2.sent;_yield$newTransReq2=(0,slicedToArray/* default */.Z)(_yield$newTransReq,2);input=_yield$newTransReq2[0];init=_yield$newTransReq2[1];case 8:if(input){_context2.next=10;break;}throw new Error("url is empty");case 10:if(!isGm){_context2.next=37;break;}if(!window.KISS_GM){_context2.next=17;break;}_context2.next=14;return window.KISS_GM.getInfo();case 14:info=_context2.sent;_context2.next=18;break;case 17:info=GM.info;case 18:// Tampermonkey --> .connects // Violentmonkey --> .connect -connects=((_info=info)===null||_info===void 0?void 0:(_info$script=_info.script)===null||_info$script===void 0?void 0:_info$script.connects)||((_info2=info)===null||_info2===void 0?void 0:(_info2$script=_info2.script)===null||_info2$script===void 0?void 0:_info2$script.connect)||[];url=new URL(input);isSafe=connects.find(function(item){return url.hostname.endsWith(item);});if(!isSafe){_context2.next=37;break;}if(!window.KISS_GM){_context2.next=28;break;}_context2.next=25;return window.KISS_GM.fetch(input,init);case 25:_context2.t0=_context2.sent;_context2.next=31;break;case 28:_context2.next=30;return fetch_fetchGM(input,init);case 30:_context2.t0=_context2.sent;case 31:_ref6=_context2.t0;body=_ref6.body;headers=_ref6.headers;status=_ref6.status;statusText=_ref6.statusText;return _context2.abrupt("return",new Response(body,{headers:new Headers(headers),status:status,statusText:statusText}));case 37:return _context2.abrupt("return",fetch(input,init));case 38:case"end":return _context2.stop();}},_callee2);}));return function fetchApi(_x2){return _ref5.apply(this,arguments);};}();/** +connects=((_info=info)===null||_info===void 0?void 0:(_info$script=_info.script)===null||_info$script===void 0?void 0:_info$script.connects)||((_info2=info)===null||_info2===void 0?void 0:(_info2$script=_info2.script)===null||_info2$script===void 0?void 0:_info2$script.connect)||[];url=new URL(input);isSafe=connects.find(function(item){return url.hostname.endsWith(item);});if(!isSafe){_context2.next=37;break;}if(!window.KISS_GM){_context2.next=28;break;}_context2.next=25;return window.KISS_GM.fetch(input,init);case 25:_context2.t0=_context2.sent;_context2.next=31;break;case 28:_context2.next=30;return fetch_fetchGM(input,init);case 30:_context2.t0=_context2.sent;case 31:_ref6=_context2.t0;body=_ref6.body;headers=_ref6.headers;status=_ref6.status;statusText=_ref6.statusText;return _context2.abrupt("return",new Response(body,{headers:new Headers(headers),status:status,statusText:statusText}));case 37:if((_AbortSignal=AbortSignal)!==null&&_AbortSignal!==void 0&&_AbortSignal.timeout){Object.assign(init,{signal:AbortSignal.timeout(TIMEOUT)});}return _context2.abrupt("return",fetch(input,init));case 39:case"end":return _context2.stop();}},_callee2);}));return function fetchApi(_x2){return _ref5.apply(this,arguments);};}();/** * 请求池实例 */var fetchPool=taskPool(fetchApi,null,DEFAULT_FETCH_INTERVAL,DEFAULT_FETCH_LIMIT);/** * 请求数据统一接口 * @param {*} input * @param {*} opts * @returns - */var fetchData=/*#__PURE__*/function(){var _ref7=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(input){var _ref8,useCache,usePool,transOpts,apiSetting,init,cacheReq,res,cache,_res,_res$headers$get,cause,_cache,contentType,_args3=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_ref8=_args3.length>1&&_args3[1]!==undefined?_args3[1]:{},useCache=_ref8.useCache,usePool=_ref8.usePool,transOpts=_ref8.transOpts,apiSetting=_ref8.apiSetting,init=_objectWithoutProperties(_ref8,fetch_excluded2);_context3.next=3;return newCacheReq(input,init);case 3:cacheReq=_context3.sent;if(!useCache){_context3.next=17;break;}_context3.prev=5;_context3.next=8;return caches.open(CACHE_NAME);case 8:cache=_context3.sent;_context3.next=11;return cache.match(cacheReq);case 11:res=_context3.sent;_context3.next=17;break;case 14:_context3.prev=14;_context3.t0=_context3["catch"](5);console.log("[cache match]",_context3.t0.message);case 17:if(res){_context3.next=46;break;}if(!usePool){_context3.next=24;break;}_context3.next=21;return fetchPool.push({input:input,init:init,transOpts:transOpts,apiSetting:apiSetting});case 21:res=_context3.sent;_context3.next=27;break;case 24:_context3.next=26;return fetchApi({input:input,init:init,transOpts:transOpts,apiSetting:apiSetting});case 26:res=_context3.sent;case 27:if((_res=res)!==null&&_res!==void 0&&_res.ok){_context3.next=34;break;}cause={status:res.status};if(!((_res$headers$get=res.headers.get("Content-Type"))!==null&&_res$headers$get!==void 0&&_res$headers$get.includes("json"))){_context3.next=33;break;}_context3.next=32;return res.json();case 32:cause.body=_context3.sent;case 33:throw new Error("response: [".concat(res.status,"] ").concat(res.statusText),{cause:cause});case 34:if(!useCache){_context3.next=46;break;}_context3.prev=35;_context3.next=38;return caches.open(CACHE_NAME);case 38:_cache=_context3.sent;_context3.next=41;return _cache.put(cacheReq,res.clone());case 41:_context3.next=46;break;case 43:_context3.prev=43;_context3.t1=_context3["catch"](35);console.log("[cache put]",_context3.t1.message);case 46:contentType=res.headers.get("Content-Type");if(!(contentType!==null&&contentType!==void 0&&contentType.includes("json"))){_context3.next=51;break;}_context3.next=50;return res.json();case 50:return _context3.abrupt("return",_context3.sent);case 51:_context3.next=53;return res.text();case 53:return _context3.abrupt("return",_context3.sent);case 54:case"end":return _context3.stop();}},_callee3,null,[[5,14],[35,43]]);}));return function fetchData(_x3){return _ref7.apply(this,arguments);};}();/** + */var fetchData=/*#__PURE__*/function(){var _ref7=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(input){var _ref8,useCache,usePool,transOpts,apiSetting,init,cacheReq,res,cache,_res,_res$headers$get,msg,_cache,contentType,_args3=arguments;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_ref8=_args3.length>1&&_args3[1]!==undefined?_args3[1]:{},useCache=_ref8.useCache,usePool=_ref8.usePool,transOpts=_ref8.transOpts,apiSetting=_ref8.apiSetting,init=_objectWithoutProperties(_ref8,fetch_excluded2);_context3.next=3;return newCacheReq(input,init);case 3:cacheReq=_context3.sent;if(!useCache){_context3.next=17;break;}_context3.prev=5;_context3.next=8;return caches.open(CACHE_NAME);case 8:cache=_context3.sent;_context3.next=11;return cache.match(cacheReq);case 11:res=_context3.sent;_context3.next=17;break;case 14:_context3.prev=14;_context3.t0=_context3["catch"](5);log_kissLog(_context3.t0,"cache match");case 17:if(res){_context3.next=46;break;}if(!usePool){_context3.next=24;break;}_context3.next=21;return fetchPool.push({input:input,init:init,transOpts:transOpts,apiSetting:apiSetting});case 21:res=_context3.sent;_context3.next=27;break;case 24:_context3.next=26;return fetchApi({input:input,init:init,transOpts:transOpts,apiSetting:apiSetting});case 26:res=_context3.sent;case 27:if((_res=res)!==null&&_res!==void 0&&_res.ok){_context3.next=34;break;}msg={url:input,status:res.status};if(!((_res$headers$get=res.headers.get("Content-Type"))!==null&&_res$headers$get!==void 0&&_res$headers$get.includes("json"))){_context3.next=33;break;}_context3.next=32;return res.json();case 32:msg.response=_context3.sent;case 33:throw new Error(JSON.stringify(msg));case 34:if(!useCache){_context3.next=46;break;}_context3.prev=35;_context3.next=38;return caches.open(CACHE_NAME);case 38:_cache=_context3.sent;_context3.next=41;return _cache.put(cacheReq,res.clone());case 41:_context3.next=46;break;case 43:_context3.prev=43;_context3.t1=_context3["catch"](35);log_kissLog(_context3.t1,"cache put");case 46:contentType=res.headers.get("Content-Type");if(!(contentType!==null&&contentType!==void 0&&contentType.includes("json"))){_context3.next=51;break;}_context3.next=50;return res.json();case 50:return _context3.abrupt("return",_context3.sent);case 51:_context3.next=53;return res.text();case 53:return _context3.abrupt("return",_context3.sent);case 54:case"end":return _context3.stop();}},_callee3,null,[[5,14],[35,43]]);}));return function fetchData(_x3){return _ref7.apply(this,arguments);};}();/** * fetch 兼容性封装 * @param {*} input * @param {*} opts * @returns - */var fetch_fetchPolyfill=/*#__PURE__*/function(){var _ref9=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(input,opts){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:if(input!==null&&input!==void 0&&input.trim()){_context4.next=2;break;}throw new Error("URL is empty");case 2:if(!(client_isExt&&!isBg())){_context4.next=9;break;}_context4.next=5;return msg_sendBgMsg(MSG_FETCH,{input:input,opts:opts});case 5:res=_context4.sent;if(!res.error){_context4.next=8;break;}throw new Error(res.error,{cause:res.cause});case 8:return _context4.abrupt("return",res.data);case 9:_context4.next=11;return fetchData(input,opts);case 11:return _context4.abrupt("return",_context4.sent);case 12:case"end":return _context4.stop();}},_callee4);}));return function fetchPolyfill(_x4,_x5){return _ref9.apply(this,arguments);};}();/** + */var fetch_fetchPolyfill=/*#__PURE__*/function(){var _ref9=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(input,opts){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:if(input!==null&&input!==void 0&&input.trim()){_context4.next=2;break;}throw new Error("URL is empty");case 2:if(!(client_isExt&&!isBg())){_context4.next=6;break;}_context4.next=5;return msg_sendBgMsg(MSG_FETCH,{input:input,opts:opts});case 5:return _context4.abrupt("return",_context4.sent);case 6:_context4.next=8;return fetchData(input,opts);case 8:return _context4.abrupt("return",_context4.sent);case 9:case"end":return _context4.stop();}},_callee4);}));return function fetchPolyfill(_x4,_x5){return _ref9.apply(this,arguments);};}();/** * 更新 fetch pool 参数 * @param {*} interval * @param {*} limit - */var updateFetchPool=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref10=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee5(interval,limit){var res;return _regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:if(!isExt){_context5.next=8;break;}_context5.next=3;return sendBgMsg(MSG_FETCH_LIMIT,{interval:interval,limit:limit});case 3:res=_context5.sent;if(!res.error){_context5.next=6;break;}throw new Error(res.error);case 6:_context5.next=9;break;case 8:fetchPool.update(interval,limit);case 9:case"end":return _context5.stop();}},_callee5);}));return function updateFetchPool(_x6,_x7){return _ref10.apply(this,arguments);};}()));/** + */var updateFetchPool=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref10=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee5(interval,limit){return _regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:if(!isExt){_context5.next=5;break;}_context5.next=3;return sendBgMsg(MSG_FETCH_LIMIT,{interval:interval,limit:limit});case 3:_context5.next=6;break;case 5:fetchPool.update(interval,limit);case 6:case"end":return _context5.stop();}},_callee5);}));return function updateFetchPool(_x6,_x7){return _ref10.apply(this,arguments);};}()));/** * 清空任务池 - */var clearFetchPool=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref11=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee6(){var res;return _regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:if(!isExt){_context6.next=8;break;}_context6.next=3;return sendBgMsg(MSG_FETCH_CLEAR);case 3:res=_context6.sent;if(!res.error){_context6.next=6;break;}throw new Error(res.error);case 6:_context6.next=9;break;case 8:fetchPool.clear();case 9:case"end":return _context6.stop();}},_callee6);}));return function clearFetchPool(){return _ref11.apply(this,arguments);};}())); + */var clearFetchPool=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref11=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee6(){return _regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:if(!isExt){_context6.next=5;break;}_context6.next=3;return sendBgMsg(MSG_FETCH_CLEAR);case 3:_context6.next=6;break;case 5:fetchPool.clear();case 6:case"end":return _context6.stop();}},_callee6);}));return function clearFetchPool(){return _ref11.apply(this,arguments);};}())); ;// CONCATENATED MODULE: ./src/libs/utils.js /** * 限制数字大小 @@ -44274,17 +44394,21 @@ connects=((_info=info)===null||_info===void 0?void 0:(_info$script=_info.script) * @param {*} text * @returns */var apiBaiduLangdetect=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref2=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2(text){var res,_OPT_LANGS_BAIDU$get;return _regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return fetchPolyfill(URL_BAIDU_LANGDETECT,{headers:{"Content-type":"application/json"},method:"POST",body:JSON.stringify({query:text}),useCache:true});case 2:res=_context2.sent;if(!(res.error===0)){_context2.next=5;break;}return _context2.abrupt("return",(_OPT_LANGS_BAIDU$get=OPT_LANGS_BAIDU.get(res.lan))!==null&&_OPT_LANGS_BAIDU$get!==void 0?_OPT_LANGS_BAIDU$get:res.lan);case 5:return _context2.abrupt("return","");case 6:case"end":return _context2.stop();}},_callee2);}));return function apiBaiduLangdetect(_x4){return _ref2.apply(this,arguments);};}()));/** + * 百度翻译建议 + * @param {*} text + * @returns + */var apiBaiduSuggest=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref3=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee3(text){var res;return _regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return fetchPolyfill(URL_BAIDU_SUGGEST,{headers:{"Content-type":"application/json"},method:"POST",body:JSON.stringify({kw:text}),useCache:true});case 2:res=_context3.sent;if(!(res.errno===0)){_context3.next=5;break;}return _context3.abrupt("return",res.data);case 5:return _context3.abrupt("return",[]);case 6:case"end":return _context3.stop();}},_callee3);}));return function apiBaiduSuggest(_x5){return _ref3.apply(this,arguments);};}()));/** * 腾讯语言识别 * @param {*} text * @returns - */var apiTencentLangdetect=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref3=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee3(text){var _OPT_LANGS_TENCENT$ge;var body,res;return _regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:body=JSON.stringify({header:{fn:"text_analysis"},text:text});_context3.next=3;return fetchPolyfill(URL_TENCENT_TRANSMART,{headers:{"Content-type":"application/json"},method:"POST",body:body,useCache:true});case 3:res=_context3.sent;return _context3.abrupt("return",(_OPT_LANGS_TENCENT$ge=OPT_LANGS_TENCENT.get(res.language))!==null&&_OPT_LANGS_TENCENT$ge!==void 0?_OPT_LANGS_TENCENT$ge:res.language);case 5:case"end":return _context3.stop();}},_callee3);}));return function apiTencentLangdetect(_x5){return _ref3.apply(this,arguments);};}()));/** + */var apiTencentLangdetect=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref4=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee4(text){var _OPT_LANGS_TENCENT$ge;var body,res;return _regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:body=JSON.stringify({header:{fn:"text_analysis"},text:text});_context4.next=3;return fetchPolyfill(URL_TENCENT_TRANSMART,{headers:{"Content-type":"application/json"},method:"POST",body:body,useCache:true});case 3:res=_context4.sent;return _context4.abrupt("return",(_OPT_LANGS_TENCENT$ge=OPT_LANGS_TENCENT.get(res.language))!==null&&_OPT_LANGS_TENCENT$ge!==void 0?_OPT_LANGS_TENCENT$ge:res.language);case 5:case"end":return _context4.stop();}},_callee4);}));return function apiTencentLangdetect(_x6){return _ref4.apply(this,arguments);};}()));/** * 统一翻译接口 * @param {*} param0 * @returns - */var apiTranslate=/*#__PURE__*/function(){var _ref5=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(_ref4){var _OPT_LANGS_SPECIAL$tr,_res$result,_res$result2,_res$choices,_res$candidates,_res$result3;var translator,text,fromLang,toLang,_ref4$apiSetting,apiSetting,_ref4$useCache,useCache,_ref4$usePool,usePool,trText,isSame,from,to,_process$env$REACT_AP,_process$env$REACT_AP2,v1,v2,cacheOpts,transOpts,res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:translator=_ref4.translator,text=_ref4.text,fromLang=_ref4.fromLang,toLang=_ref4.toLang,_ref4$apiSetting=_ref4.apiSetting,apiSetting=_ref4$apiSetting===void 0?{}:_ref4$apiSetting,_ref4$useCache=_ref4.useCache,useCache=_ref4$useCache===void 0?true:_ref4$useCache,_ref4$usePool=_ref4.usePool,usePool=_ref4$usePool===void 0?true:_ref4$usePool;trText="";isSame=false;if(text){_context4.next=5;break;}return _context4.abrupt("return",[trText,true]);case 5:from=(_OPT_LANGS_SPECIAL$tr=OPT_LANGS_SPECIAL[translator].get(fromLang))!==null&&_OPT_LANGS_SPECIAL$tr!==void 0?_OPT_LANGS_SPECIAL$tr:OPT_LANGS_SPECIAL[translator].get("auto");to=OPT_LANGS_SPECIAL[translator].get(toLang);if(to){_context4.next=10;break;}console.log("[trans] target lang: ".concat(toLang," not support"));return _context4.abrupt("return",[trText,isSame]);case 10:// 版本号一/二位升级,旧缓存失效 -_process$env$REACT_AP="1.8.3".split("."),_process$env$REACT_AP2=(0,slicedToArray/* default */.Z)(_process$env$REACT_AP,2),v1=_process$env$REACT_AP2[0],v2=_process$env$REACT_AP2[1];cacheOpts={translator:translator,text:text,fromLang:fromLang,toLang:toLang,version:[v1,v2].join(".")};transOpts={translator:translator,text:text,from:from,to:to};_context4.next=15;return fetch_fetchPolyfill("".concat(URL_CACHE_TRAN,"?").concat(query_string.stringify(cacheOpts)),{useCache:useCache,usePool:usePool,transOpts:transOpts,apiSetting:apiSetting});case 15:res=_context4.sent;_context4.t0=translator;_context4.next=_context4.t0===OPT_TRANS_GOOGLE?19:_context4.t0===OPT_TRANS_MICROSOFT?22:_context4.t0===OPT_TRANS_DEEPL?25:_context4.t0===OPT_TRANS_DEEPLFREE?28:_context4.t0===OPT_TRANS_DEEPLX?31:_context4.t0===OPT_TRANS_BAIDU?34:_context4.t0===OPT_TRANS_TENCENT?36:_context4.t0===OPT_TRANS_OPENAI?39:_context4.t0===OPT_TRANS_GEMINI?42:_context4.t0===OPT_TRANS_CLOUDFLAREAI?45:_context4.t0===OPT_TRANS_CUSTOMIZE?48:51;break;case 19:trText=res.sentences.map(function(item){return item.trans;}).join(" ");isSame=to===res.src;return _context4.abrupt("break",51);case 22:trText=res.map(function(item){return item.translations.map(function(item){return item.text;}).join(" ");}).join(" ");isSame=text===trText;return _context4.abrupt("break",51);case 25:trText=res.translations.map(function(item){return item.text;}).join(" ");isSame=to===res.translations[0].detected_source_language;return _context4.abrupt("break",51);case 28:trText=(_res$result=res.result)===null||_res$result===void 0?void 0:_res$result.texts.map(function(item){return item.text;}).join(" ");isSame=to===((_res$result2=res.result)===null||_res$result2===void 0?void 0:_res$result2.lang);return _context4.abrupt("break",51);case 31:trText=res.data;isSame=to===res.source_lang;return _context4.abrupt("break",51);case 34:// trText = res.trans_result?.data.map((item) => item.dst).join(" "); + */var apiTranslate=/*#__PURE__*/function(){var _ref6=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(_ref5){var _OPT_LANGS_SPECIAL$tr,_res$result,_res$result2,_res$choices,_res$candidates,_res$result3;var translator,text,fromLang,toLang,_ref5$apiSetting,apiSetting,_ref5$useCache,useCache,_ref5$usePool,usePool,trText,isSame,from,to,_process$env$REACT_AP,_process$env$REACT_AP2,v1,v2,cacheOpts,transOpts,res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:translator=_ref5.translator,text=_ref5.text,fromLang=_ref5.fromLang,toLang=_ref5.toLang,_ref5$apiSetting=_ref5.apiSetting,apiSetting=_ref5$apiSetting===void 0?{}:_ref5$apiSetting,_ref5$useCache=_ref5.useCache,useCache=_ref5$useCache===void 0?true:_ref5$useCache,_ref5$usePool=_ref5.usePool,usePool=_ref5$usePool===void 0?true:_ref5$usePool;trText="";isSame=false;if(text){_context5.next=5;break;}return _context5.abrupt("return",[trText,true]);case 5:from=(_OPT_LANGS_SPECIAL$tr=OPT_LANGS_SPECIAL[translator].get(fromLang))!==null&&_OPT_LANGS_SPECIAL$tr!==void 0?_OPT_LANGS_SPECIAL$tr:OPT_LANGS_SPECIAL[translator].get("auto");to=OPT_LANGS_SPECIAL[translator].get(toLang);if(to){_context5.next=10;break;}console.log("[trans] target lang: ".concat(toLang," not support"));return _context5.abrupt("return",[trText,isSame]);case 10:// 版本号一/二位升级,旧缓存失效 +_process$env$REACT_AP="1.8.4".split("."),_process$env$REACT_AP2=(0,slicedToArray/* default */.Z)(_process$env$REACT_AP,2),v1=_process$env$REACT_AP2[0],v2=_process$env$REACT_AP2[1];cacheOpts={translator:translator,text:text,fromLang:fromLang,toLang:toLang,version:[v1,v2].join(".")};transOpts={translator:translator,text:text,from:from,to:to};_context5.next=15;return fetch_fetchPolyfill("".concat(URL_CACHE_TRAN,"?").concat(query_string.stringify(cacheOpts)),{useCache:useCache,usePool:usePool,transOpts:transOpts,apiSetting:apiSetting});case 15:res=_context5.sent;_context5.t0=translator;_context5.next=_context5.t0===OPT_TRANS_GOOGLE?19:_context5.t0===OPT_TRANS_MICROSOFT?22:_context5.t0===OPT_TRANS_DEEPL?25:_context5.t0===OPT_TRANS_DEEPLFREE?28:_context5.t0===OPT_TRANS_DEEPLX?31:_context5.t0===OPT_TRANS_BAIDU?34:_context5.t0===OPT_TRANS_TENCENT?36:_context5.t0===OPT_TRANS_OPENAI?39:_context5.t0===OPT_TRANS_GEMINI?42:_context5.t0===OPT_TRANS_CLOUDFLAREAI?45:_context5.t0===OPT_TRANS_CUSTOMIZE?48:51;break;case 19:trText=res.sentences.map(function(item){return item.trans;}).join(" ");isSame=to===res.src;return _context5.abrupt("break",51);case 22:trText=res.map(function(item){return item.translations.map(function(item){return item.text;}).join(" ");}).join(" ");isSame=text===trText;return _context5.abrupt("break",51);case 25:trText=res.translations.map(function(item){return item.text;}).join(" ");isSame=to===res.translations[0].detected_source_language;return _context5.abrupt("break",51);case 28:trText=(_res$result=res.result)===null||_res$result===void 0?void 0:_res$result.texts.map(function(item){return item.text;}).join(" ");isSame=to===((_res$result2=res.result)===null||_res$result2===void 0?void 0:_res$result2.lang);return _context5.abrupt("break",51);case 31:trText=res.data;isSame=to===res.source_lang;return _context5.abrupt("break",51);case 34:// trText = res.trans_result?.data.map((item) => item.dst).join(" "); // isSame = res.trans_result?.to === res.trans_result?.from; -if(res.type===1){trText=Object.keys(JSON.parse(res.result).content[0].mean[0].cont)[0];isSame=to===res.from;}else if(res.type===2){trText=res.data.map(function(item){return item.dst;}).join(" ");isSame=to===res.from;}return _context4.abrupt("break",51);case 36:trText=res.auto_translation;isSame=text===trText;return _context4.abrupt("break",51);case 39:trText=res===null||res===void 0?void 0:(_res$choices=res.choices)===null||_res$choices===void 0?void 0:_res$choices.map(function(item){return item.message.content;}).join(" ");isSame=text===trText;return _context4.abrupt("break",51);case 42:trText=res===null||res===void 0?void 0:(_res$candidates=res.candidates)===null||_res$candidates===void 0?void 0:_res$candidates.map(function(item){var _item$content;return(_item$content=item.content)===null||_item$content===void 0?void 0:_item$content.parts.map(function(item){return item.text;}).join(" ");}).join(" ");isSame=text===trText;return _context4.abrupt("break",51);case 45:trText=res===null||res===void 0?void 0:(_res$result3=res.result)===null||_res$result3===void 0?void 0:_res$result3.translated_text;isSame=text===trText;return _context4.abrupt("break",51);case 48:trText=res.text;isSame=to===res.from;return _context4.abrupt("break",51);case 51:return _context4.abrupt("return",[trText,isSame,res]);case 52:case"end":return _context4.stop();}},_callee4);}));return function apiTranslate(_x6){return _ref5.apply(this,arguments);};}(); +if(res.type===1){trText=Object.keys(JSON.parse(res.result).content[0].mean[0].cont)[0];isSame=to===res.from;}else if(res.type===2){trText=res.data.map(function(item){return item.dst;}).join(" ");isSame=to===res.from;}return _context5.abrupt("break",51);case 36:trText=res.auto_translation;isSame=text===trText;return _context5.abrupt("break",51);case 39:trText=res===null||res===void 0?void 0:(_res$choices=res.choices)===null||_res$choices===void 0?void 0:_res$choices.map(function(item){return item.message.content;}).join(" ");isSame=text===trText;return _context5.abrupt("break",51);case 42:trText=res===null||res===void 0?void 0:(_res$candidates=res.candidates)===null||_res$candidates===void 0?void 0:_res$candidates.map(function(item){var _item$content;return(_item$content=item.content)===null||_item$content===void 0?void 0:_item$content.parts.map(function(item){return item.text;}).join(" ");}).join(" ");isSame=text===trText;return _context5.abrupt("break",51);case 45:trText=res===null||res===void 0?void 0:(_res$result3=res.result)===null||_res$result3===void 0?void 0:_res$result3.translated_text;isSame=text===trText;return _context5.abrupt("break",51);case 48:trText=res.text;isSame=to===res.from;return _context5.abrupt("break",51);case 51:return _context5.abrupt("return",[trText,isSame,res]);case 52:case"end":return _context5.stop();}},_callee5);}));return function apiTranslate(_x7){return _ref6.apply(this,arguments);};}(); ;// CONCATENATED MODULE: ./node_modules/.pnpm/webdav@5.3.0/node_modules/webdav/dist/web/index.js /*! For license information please see index.js.LICENSE.txt */ var t = { @@ -47125,7 +47249,7 @@ var web_n = {}; return t.length === e && "." !== t && ".." !== t; }; }, - te = "object" === ("undefined" == typeof process ? "undefined" : Nt(process)) && process ? "object" === Nt(({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.3","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_WEBFIXURL":"https://fishjar.github.io/kiss-rules/kiss-webfix.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"})) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.3","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_WEBFIXURL":"https://fishjar.github.io/kiss-rules/kiss-webfix.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"}) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.3","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_WEBFIXURL":"https://fishjar.github.io/kiss-rules/kiss-webfix.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"}).__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix"; + te = "object" === ("undefined" == typeof process ? "undefined" : Nt(process)) && process ? "object" === Nt(({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.4","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"})) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.4","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"}) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"1.8.4","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE2":"https://kiss-translator.rayjar.com/options","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_LOGOURL2":"https://kiss-translator.rayjar.com/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off.json","REACT_APP_VERSIONFILE":"https://fishjar.github.io/kiss-translator/version.txt","REACT_APP_VERSIONFILE2":"https://kiss-translator.rayjar.com/version.txt","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL2":"https://kiss-translator.rayjar.com/kiss-translator-ios-safari.user.js"}).__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix"; It.sep = "win32" === te ? "\\" : "/"; var ee = Symbol("globstar **"); It.GLOBSTAR = ee; @@ -48906,23 +49030,20 @@ var o = web_n.Gr, c().patch("request",function(opts){return fetchApi({input:opts.url,init:{method:opts.method,headers:opts.headers,body:opts.data}});});var syncByWebdav=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(data,_ref){var syncUrl,syncUser,syncKey,client,pathname,filename,isExist,cont,webData;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:syncUrl=_ref.syncUrl,syncUser=_ref.syncUser,syncKey=_ref.syncKey;client=u(syncUrl,{username:syncUser,password:syncKey});pathname="/".concat(APP_LCNAME);filename="/".concat(APP_LCNAME,"/").concat(data.key);_context.next=6;return client.exists(pathname);case 6:_context.t0=_context.sent;if(!(_context.t0===false)){_context.next=10;break;}_context.next=10;return client.createDirectory(pathname);case 10:_context.next=12;return client.exists(filename);case 12:isExist=_context.sent;if(!isExist){_context.next=20;break;}_context.next=16;return client.getFileContents(filename,{format:"text"});case 16:cont=_context.sent;webData=JSON.parse(cont);if(!(webData.updateAt>=data.updateAt)){_context.next=20;break;}return _context.abrupt("return",webData);case 20:_context.next=22;return client.putFileContents(filename,JSON.stringify(data,null,2));case 22:return _context.abrupt("return",data);case 23:case"end":return _context.stop();}},_callee);}));return function syncByWebdav(_x,_x2){return _ref2.apply(this,arguments);};}();var syncByWorker=/*#__PURE__*/function(){var _ref4=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(data,_ref3){var syncUrl,syncKey;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:syncUrl=_ref3.syncUrl,syncKey=_ref3.syncKey;syncUrl=removeEndchar(syncUrl,"/");_context2.next=4;return apiSyncData("".concat(syncUrl,"/sync"),syncKey,data);case 4:return _context2.abrupt("return",_context2.sent);case 5:case"end":return _context2.stop();}},_callee2);}));return function syncByWorker(_x3,_x4){return _ref4.apply(this,arguments);};}();var syncData=/*#__PURE__*/function(){var _ref5=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(key,valueFn){var _yield$getSyncWithDef,syncType,syncUrl,syncUser,syncKey,_yield$getSyncWithDef2,syncMeta,_ref6,_ref6$updateAt,updateAt,_ref6$syncAt,syncAt,value,data,args,res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return storage_getSyncWithDefault();case 2:_yield$getSyncWithDef=_context3.sent;syncType=_yield$getSyncWithDef.syncType;syncUrl=_yield$getSyncWithDef.syncUrl;syncUser=_yield$getSyncWithDef.syncUser;syncKey=_yield$getSyncWithDef.syncKey;_yield$getSyncWithDef2=_yield$getSyncWithDef.syncMeta;syncMeta=_yield$getSyncWithDef2===void 0?{}:_yield$getSyncWithDef2;if(!(!syncUrl||!syncKey||syncType===OPT_SYNCTYPE_WEBDAV&&!syncUser)){_context3.next=11;break;}return _context3.abrupt("return");case 11:_ref6=syncMeta[key]||{},_ref6$updateAt=_ref6.updateAt,updateAt=_ref6$updateAt===void 0?0:_ref6$updateAt,_ref6$syncAt=_ref6.syncAt,syncAt=_ref6$syncAt===void 0?0:_ref6$syncAt;syncAt===0&&(updateAt=0);_context3.next=15;return valueFn();case 15:value=_context3.sent;data={key:key,value:JSON.stringify(value),updateAt:updateAt};args={syncUrl:syncUrl,syncUser:syncUser,syncKey:syncKey};if(!(syncType===OPT_SYNCTYPE_WEBDAV)){_context3.next=24;break;}_context3.next=21;return syncByWebdav(data,args);case 21:_context3.t0=_context3.sent;_context3.next=27;break;case 24:_context3.next=26;return syncByWorker(data,args);case 26:_context3.t0=_context3.sent;case 27:res=_context3.t0;syncMeta[key]={updateAt:res.updateAt,syncAt:Date.now()};_context3.next=31;return storage_updateSync({syncMeta:syncMeta});case 31:return _context3.abrupt("return",{value:JSON.parse(res.value),isNew:res.updateAt>updateAt});case 32:case"end":return _context3.stop();}},_callee3);}));return function syncData(_x5,_x6){return _ref5.apply(this,arguments);};}();/** * 同步设置 * @returns - */var syncSetting=/*#__PURE__*/function(){var _ref7=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.next=2;return syncData(KV_SETTING_KEY,getSettingWithDefault);case 2:res=_context4.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context4.next=6;break;}_context4.next=6;return setSetting(res.value);case 6:case"end":return _context4.stop();}},_callee4);}));return function syncSetting(){return _ref7.apply(this,arguments);};}();var trySyncSetting=/*#__PURE__*/function(){var _ref8=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;_context5.next=3;return syncSetting();case 3:_context5.next=8;break;case 5:_context5.prev=5;_context5.t0=_context5["catch"](0);console.log("[sync setting]",_context5.t0);case 8:case"end":return _context5.stop();}},_callee5,null,[[0,5]]);}));return function trySyncSetting(){return _ref8.apply(this,arguments);};}();/** + */var syncSetting=/*#__PURE__*/function(){var _ref7=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.next=2;return syncData(KV_SETTING_KEY,getSettingWithDefault);case 2:res=_context4.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context4.next=6;break;}_context4.next=6;return setSetting(res.value);case 6:case"end":return _context4.stop();}},_callee4);}));return function syncSetting(){return _ref7.apply(this,arguments);};}();var trySyncSetting=/*#__PURE__*/function(){var _ref8=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;_context5.next=3;return syncSetting();case 3:_context5.next=8;break;case 5:_context5.prev=5;_context5.t0=_context5["catch"](0);log_kissLog(_context5.t0,"sync setting");case 8:case"end":return _context5.stop();}},_callee5,null,[[0,5]]);}));return function trySyncSetting(){return _ref8.apply(this,arguments);};}();/** * 同步规则 * @returns - */var syncRules=/*#__PURE__*/function(){var _ref9=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:_context6.next=2;return syncData(KV_RULES_KEY,storage_getRulesWithDefault);case 2:res=_context6.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context6.next=6;break;}_context6.next=6;return storage_setRules(res.value);case 6:case"end":return _context6.stop();}},_callee6);}));return function syncRules(){return _ref9.apply(this,arguments);};}();var sync_trySyncRules=/*#__PURE__*/function(){var _ref10=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee7(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee7$(_context7){while(1)switch(_context7.prev=_context7.next){case 0:_context7.prev=0;_context7.next=3;return syncRules();case 3:_context7.next=8;break;case 5:_context7.prev=5;_context7.t0=_context7["catch"](0);console.log("[sync user rules]",_context7.t0);case 8:case"end":return _context7.stop();}},_callee7,null,[[0,5]]);}));return function trySyncRules(){return _ref10.apply(this,arguments);};}();/** - * 同步修复规则 - * @returns - */var syncWebfixRules=/*#__PURE__*/function(){var _ref11=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee8(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee8$(_context8){while(1)switch(_context8.prev=_context8.next){case 0:_context8.next=2;return syncData(KV_WFRULES_KEY,storage_getWebfixRulesWithDefault);case 2:res=_context8.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context8.next=6;break;}_context8.next=6;return setWebfixRules(res.value);case 6:case"end":return _context8.stop();}},_callee8);}));return function syncWebfixRules(){return _ref11.apply(this,arguments);};}();var trySyncWebfixRules=/*#__PURE__*/function(){var _ref12=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee9(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee9$(_context9){while(1)switch(_context9.prev=_context9.next){case 0:_context9.prev=0;_context9.next=3;return syncWebfixRules();case 3:_context9.next=8;break;case 5:_context9.prev=5;_context9.t0=_context9["catch"](0);console.log("[sync user webfix rules]",_context9.t0);case 8:case"end":return _context9.stop();}},_callee9,null,[[0,5]]);}));return function trySyncWebfixRules(){return _ref12.apply(this,arguments);};}();/** + */var syncRules=/*#__PURE__*/function(){var _ref9=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:_context6.next=2;return syncData(KV_RULES_KEY,storage_getRulesWithDefault);case 2:res=_context6.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context6.next=6;break;}_context6.next=6;return storage_setRules(res.value);case 6:case"end":return _context6.stop();}},_callee6);}));return function syncRules(){return _ref9.apply(this,arguments);};}();var sync_trySyncRules=/*#__PURE__*/function(){var _ref10=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee7(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee7$(_context7){while(1)switch(_context7.prev=_context7.next){case 0:_context7.prev=0;_context7.next=3;return syncRules();case 3:_context7.next=8;break;case 5:_context7.prev=5;_context7.t0=_context7["catch"](0);log_kissLog(_context7.t0,"sync user rules");case 8:case"end":return _context7.stop();}},_callee7,null,[[0,5]]);}));return function trySyncRules(){return _ref10.apply(this,arguments);};}();/** * 同步词汇 * @returns - */var syncWords=/*#__PURE__*/function(){var _ref13=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee10(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee10$(_context10){while(1)switch(_context10.prev=_context10.next){case 0:_context10.next=2;return syncData(KV_WORDS_KEY,getWordsWithDefault);case 2:res=_context10.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context10.next=6;break;}_context10.next=6;return setWords(res.value);case 6:case"end":return _context10.stop();}},_callee10);}));return function syncWords(){return _ref13.apply(this,arguments);};}();var trySyncWords=/*#__PURE__*/function(){var _ref14=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee11(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee11$(_context11){while(1)switch(_context11.prev=_context11.next){case 0:_context11.prev=0;_context11.next=3;return syncWords();case 3:_context11.next=8;break;case 5:_context11.prev=5;_context11.t0=_context11["catch"](0);console.log("[sync fav words]",_context11.t0);case 8:case"end":return _context11.stop();}},_callee11,null,[[0,5]]);}));return function trySyncWords(){return _ref14.apply(this,arguments);};}();/** + */var syncWords=/*#__PURE__*/function(){var _ref11=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee8(){var res;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee8$(_context8){while(1)switch(_context8.prev=_context8.next){case 0:_context8.next=2;return syncData(KV_WORDS_KEY,getWordsWithDefault);case 2:res=_context8.sent;if(!(res!==null&&res!==void 0&&res.isNew)){_context8.next=6;break;}_context8.next=6;return setWords(res.value);case 6:case"end":return _context8.stop();}},_callee8);}));return function syncWords(){return _ref11.apply(this,arguments);};}();var trySyncWords=/*#__PURE__*/function(){var _ref12=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee9(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee9$(_context9){while(1)switch(_context9.prev=_context9.next){case 0:_context9.prev=0;_context9.next=3;return syncWords();case 3:_context9.next=8;break;case 5:_context9.prev=5;_context9.t0=_context9["catch"](0);log_kissLog(_context9.t0,"sync fav words");case 8:case"end":return _context9.stop();}},_callee9,null,[[0,5]]);}));return function trySyncWords(){return _ref12.apply(this,arguments);};}();/** * 同步分享规则 * @param {*} param0 * @returns - */var syncShareRules=/*#__PURE__*/function(){var _ref16=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee12(_ref15){var rules,syncUrl,syncKey,data,args,psk,shareUrl;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee12$(_context12){while(1)switch(_context12.prev=_context12.next){case 0:rules=_ref15.rules,syncUrl=_ref15.syncUrl,syncKey=_ref15.syncKey;data={key:KV_RULES_SHARE_KEY,value:JSON.stringify(rules,null,2),updateAt:Date.now()};args={syncUrl:syncUrl,syncKey:syncKey};_context12.next=5;return syncByWorker(data,args);case 5:_context12.next=7;return sha256(syncKey,KV_SALT_SHARE);case 7:psk=_context12.sent;shareUrl="".concat(syncUrl,"/rules?psk=").concat(psk);return _context12.abrupt("return",shareUrl);case 10:case"end":return _context12.stop();}},_callee12);}));return function syncShareRules(_x7){return _ref16.apply(this,arguments);};}();/** + */var syncShareRules=/*#__PURE__*/function(){var _ref14=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee10(_ref13){var rules,syncUrl,syncKey,data,args,psk,shareUrl;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee10$(_context10){while(1)switch(_context10.prev=_context10.next){case 0:rules=_ref13.rules,syncUrl=_ref13.syncUrl,syncKey=_ref13.syncKey;data={key:KV_RULES_SHARE_KEY,value:JSON.stringify(rules,null,2),updateAt:Date.now()};args={syncUrl:syncUrl,syncKey:syncKey};_context10.next=5;return syncByWorker(data,args);case 5:_context10.next=7;return sha256(syncKey,KV_SALT_SHARE);case 7:psk=_context10.sent;shareUrl="".concat(syncUrl,"/rules?psk=").concat(psk);return _context10.abrupt("return",shareUrl);case 10:case"end":return _context10.stop();}},_callee10);}));return function syncShareRules(_x7){return _ref14.apply(this,arguments);};}();/** * 同步个人设置和规则 * @returns - */var syncSettingAndRules=/*#__PURE__*/function(){var _ref17=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee13(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee13$(_context13){while(1)switch(_context13.prev=_context13.next){case 0:_context13.next=2;return syncSetting();case 2:_context13.next=4;return syncRules();case 4:_context13.next=6;return syncWebfixRules();case 6:_context13.next=8;return syncWords();case 8:case"end":return _context13.stop();}},_callee13);}));return function syncSettingAndRules(){return _ref17.apply(this,arguments);};}();var trySyncSettingAndRules=/*#__PURE__*/function(){var _ref18=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee14(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee14$(_context14){while(1)switch(_context14.prev=_context14.next){case 0:_context14.next=2;return trySyncSetting();case 2:_context14.next=4;return sync_trySyncRules();case 4:_context14.next=6;return trySyncWebfixRules();case 6:_context14.next=8;return trySyncWords();case 8:case"end":return _context14.stop();}},_callee14);}));return function trySyncSettingAndRules(){return _ref18.apply(this,arguments);};}(); + */var syncSettingAndRules=/*#__PURE__*/function(){var _ref15=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee11(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee11$(_context11){while(1)switch(_context11.prev=_context11.next){case 0:_context11.next=2;return syncSetting();case 2:_context11.next=4;return syncRules();case 4:_context11.next=6;return syncWords();case 6:case"end":return _context11.stop();}},_callee11);}));return function syncSettingAndRules(){return _ref15.apply(this,arguments);};}();var trySyncSettingAndRules=/*#__PURE__*/function(){var _ref16=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee12(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee12$(_context12){while(1)switch(_context12.prev=_context12.next){case 0:_context12.next=2;return trySyncSetting();case 2:_context12.next=4;return sync_trySyncRules();case 4:_context12.next=6;return trySyncWords();case 6:case"end":return _context12.stop();}},_callee12);}));return function trySyncSettingAndRules(){return _ref16.apply(this,arguments);};}(); ;// CONCATENATED MODULE: ./src/hooks/Sync.js /** * sync hook @@ -58068,51 +58189,6 @@ var AccordionDetails = /*#__PURE__*/react.forwardRef(function AccordionDetails(i /* harmony default export */ var AccordionDetails_AccordionDetails = (AccordionDetails); // EXTERNAL MODULE: ./node_modules/.pnpm/@mui+icons-material@5.14.9_@mui+material@5.14.10_@types+react@18.2.22_react@18.2.0/node_modules/@mui/icons-material/ExpandMore.js var ExpandMore = __webpack_require__(9643); -;// CONCATENATED MODULE: ./src/libs/webfix.js -var _fixerMap;/** - * 修复程序类型 - */var FIXER_BR="br";var FIXER_BN="bn";var FIXER_BR_DIV="brToDiv";var FIXER_BN_DIV="bnToDiv";var FIXER_FONTSIZE="fontSize";var FIXER_ALL=[FIXER_BR,FIXER_BN,FIXER_BR_DIV,FIXER_BN_DIV// FIXER_FONTSIZE, -];/** - * 需要修复的站点列表 - * - pattern 匹配网址 - * - selector 需要修复的选择器 - * - rootSelector 需要监听的选择器,可留空 - * - fixer 修复函数,可针对不同网址,选用不同修复函数 - */var DEFAULT_SITES=[{pattern:"www.phoronix.com",selector:".content",rootSelector:"",fixer:FIXER_BR},{pattern:"t.me/s/",selector:".tgme_widget_message_text",rootSelector:".tgme_channel_history",fixer:FIXER_BR},{pattern:"baidu.com",selector:"html",rootSelector:"",fixer:FIXER_FONTSIZE},{pattern:"chat.openai.com",selector:"div[data-testid^=conversation-turn] .items-start > div",rootSelector:"",fixer:FIXER_BN}];/** - * 修复过的标记 - */var fixedSign="kissfixed";/** - * 采用 `br` 换行网站的修复函数 - * 目标是将 `br` 替换成 `p` - * @param {*} node - * @returns - */function brFixer(node){var tag=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"p";if(node.hasAttribute(fixedSign)){return;}node.setAttribute(fixedSign,"true");var gapTags=["BR","WBR"];var newlineTags=["DIV","UL","OL","LI","H1","H2","H3","H4","H5","H6","P","HR","PRE","TABLE","BLOCKQUOTE"];var html="";node.childNodes.forEach(function(child,index){if(index===0){html+="<".concat(tag," class=\"kiss-p\">");}if(gapTags.indexOf(child.nodeName)!==-1){html+="<").concat(tag," class=\"kiss-p\">");}else if(newlineTags.indexOf(child.nodeName)!==-1){html+="").concat(child.outerHTML,"<").concat(tag," class=\"kiss-p\">");}else if(child.outerHTML){html+=child.outerHTML;}else if(child.textContent){html+=child.textContent;}if(index===node.childNodes.length-1){html+="");}});node.innerHTML=html;}function brDivFixer(node){return brFixer(node,"div");}/** - * 目标是将 `\n` 替换成 `p` - * @param {*} node - * @returns - */function bnFixer(node){var tag=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"p";if(node.hasAttribute(fixedSign)){return;}node.setAttribute(fixedSign,"true");node.innerHTML=node.innerHTML.split("\n").map(function(item){return"<".concat(tag," class=\"kiss-p\">").concat(item||" ","");}).join("");}function bnDivFixer(node){return bnFixer(node,"div");}/** - * 修复字体大小问题,如 baidu.com - * @param {*} node - */function fontSizeFixer(node){node.style.cssText+="font-size:1em;";}/** - * 修复程序映射 - */var fixerMap=(_fixerMap={},(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BR,brFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BN,bnFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BR_DIV,brDivFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_BN_DIV,bnDivFixer),(0,defineProperty/* default */.Z)(_fixerMap,FIXER_FONTSIZE,fontSizeFixer),_fixerMap);/** - * 查找、监听节点,并执行修复函数 - * @param {*} selector - * @param {*} fixer - * @param {*} rootSelector - */function run(selector,fixer,rootSelector){var mutaObserver=new MutationObserver(function(mutations){mutations.forEach(function(mutation){mutation.addedNodes.forEach(function(addNode){if(addNode&&addNode.querySelectorAll){addNode.querySelectorAll(selector).forEach(function(node){fixer(node);});}});});});var rootNodes=[document];if(rootSelector){rootNodes=document.querySelectorAll(rootSelector);}rootNodes.forEach(function(rootNode){rootNode.querySelectorAll(selector).forEach(function(node){fixer(node);});mutaObserver.observe(rootNode,{childList:true,subtree:true});});}/** - * 同步远程数据 - * @param {*} url - * @returns - */var webfix_syncWebfix=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(url){var sites;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.next=2;return apiFetch(url);case 2:sites=_context.sent;_context.next=5;return setWebfix(url,sites);case 5:return _context.abrupt("return",sites);case 6:case"end":return _context.stop();}},_callee);}));return function syncWebfix(_x){return _ref.apply(this,arguments);};}();/** - * 从缓存或远程加载修复站点 - * @param {*} url - * @returns - */var loadOrFetchWebfix=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(url){var sites;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;_context2.next=3;return getWebfix(url);case 3:sites=_context2.sent;if(!(sites!==null&&sites!==void 0&&sites.length)){_context2.next=6;break;}return _context2.abrupt("return",sites);case 6:return _context2.abrupt("return",webfix_syncWebfix(url));case 9:_context2.prev=9;_context2.t0=_context2["catch"](0);console.log("[load webfix]",_context2.t0.message);return _context2.abrupt("return",DEFAULT_SITES);case 13:case"end":return _context2.stop();}},_callee2,null,[[0,9]]);}));return function loadOrFetchWebfix(_x2){return _ref2.apply(this,arguments);};}();/** - * 执行fixer - * @param {*} param0 - */function runFixer(_x3){return _runFixer.apply(this,arguments);}/** - * 匹配fixer配置 - */function _runFixer(){_runFixer=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee3(_ref3){var selector,fixer,rootSelector;return _regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:selector=_ref3.selector,fixer=_ref3.fixer,rootSelector=_ref3.rootSelector;try{run(selector,fixerMap[fixer],rootSelector);}catch(err){console.error("[kiss-webfix run]: ".concat(err.message));}case 2:case"end":return _context3.stop();}},_callee3);}));return _runFixer.apply(this,arguments);}function matchFixer(_x4,_x5){return _matchFixer.apply(this,arguments);}function _matchFixer(){_matchFixer=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee4(href,_ref4){var injectWebfix,userSites,subSites,sites,i,site;return _regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:injectWebfix=_ref4.injectWebfix;if(injectWebfix){_context4.next=3;break;}return _context4.abrupt("return",null);case 3:_context4.prev=3;_context4.next=6;return getWebfixRulesWithDefault();case 6:userSites=_context4.sent;_context4.next=9;return loadOrFetchWebfix("https://fishjar.github.io/kiss-rules/kiss-webfix.json");case 9:subSites=_context4.sent;sites=[].concat(_toConsumableArray(userSites),_toConsumableArray(subSites));i=0;case 12:if(!(iinterval)){_context4.next=15;break;}_context4.next=11;return syncAllSubRules(subrulesList);case 11:_context4.next=13;return updateSync({subRulesSyncAt:now});case 13:_context4.next=15;return syncWebfix("https://fishjar.github.io/kiss-rules/kiss-webfix.json");case 15:_context4.next=20;break;case 17:_context4.prev=17;_context4.t0=_context4["catch"](1);console.log("[try sync all subrules]",_context4.t0);case 20:case"end":return _context4.stop();}},_callee4,null,[[1,17]]);}));return function trySyncAllSubRules(_x4){return _ref6.apply(this,arguments);};}()));/** +if(!(now-subRulesSyncAt>interval)){_context4.next=13;break;}_context4.next=11;return syncAllSubRules(subrulesList);case 11:_context4.next=13;return updateSync({subRulesSyncAt:now});case 13:_context4.next=18;break;case 15:_context4.prev=15;_context4.t0=_context4["catch"](1);kissLog(_context4.t0,"try sync all subrules");case 18:case"end":return _context4.stop();}},_callee4,null,[[1,15]]);}));return function trySyncAllSubRules(_x4){return _ref6.apply(this,arguments);};}()));/** * 从缓存或远程加载订阅规则 * @param {*} url * @returns @@ -58141,11 +58217,11 @@ if(!(now-subRulesSyncAt>interval)){_context4.next=15;break;}_context4.next=11;re * @param {*} rules * @param {string} href * @returns - */var matchRule=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref2=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(href,_ref){var _rule$selector,_rule$keepSelector,_rule$terms;var _ref$injectRules,injectRules,_ref$subrulesList,subrulesList,_ref$owSubrule,owSubrule,rules,selectedSub,mixRule,subRules,rule,globalRule,_rule$bgColor,_rule$textDiyStyle;return _regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_ref$injectRules=_ref.injectRules,injectRules=_ref$injectRules===void 0?true:_ref$injectRules,_ref$subrulesList=_ref.subrulesList,subrulesList=_ref$subrulesList===void 0?DEFAULT_SUBRULES_LIST:_ref$subrulesList,_ref$owSubrule=_ref.owSubrule,owSubrule=_ref$owSubrule===void 0?DEFAULT_OW_RULE:_ref$owSubrule;_context.next=3;return getRulesWithDefault();case 3:rules=_context.sent;if(!injectRules){_context.next=20;break;}_context.prev=5;selectedSub=subrulesList.find(function(item){return item.selected;});if(!(selectedSub!==null&&selectedSub!==void 0&&selectedSub.url)){_context.next=15;break;}mixRule={};Object.entries(owSubrule).filter(function(_ref3){var _ref4=_slicedToArray(_ref3,2),key=_ref4[0],val=_ref4[1];if(owSubrule.textStyle===REMAIN_KEY&&(key==="bgColor"||key==="textDiyStyle")){return false;}return val!==REMAIN_KEY;}).forEach(function(_ref5){var _ref6=_slicedToArray(_ref5,2),key=_ref6[0],val=_ref6[1];mixRule[key]=val;});_context.next=12;return loadOrFetchSubRules(selectedSub.url);case 12:subRules=_context.sent;subRules=subRules.map(function(item){return _objectSpread(_objectSpread({},item),mixRule);});rules.splice.apply(rules,[-1,0].concat(_toConsumableArray(subRules)));case 15:_context.next=20;break;case 17:_context.prev=17;_context.t0=_context["catch"](5);console.log("[load injectRules]",_context.t0);case 20:rule=rules.find(function(r){return r.pattern.split(",").some(function(p){return isMatch(href,p.trim());});});globalRule=rules.find(function(r){return r.pattern===GLOBAL_KEY;})||GLOBLA_RULE;if(rule){_context.next=24;break;}return _context.abrupt("return",globalRule);case 24:rule.selector=((_rule$selector=rule.selector)===null||_rule$selector===void 0?void 0:_rule$selector.trim())||globalRule.selector;rule.keepSelector=((_rule$keepSelector=rule.keepSelector)===null||_rule$keepSelector===void 0?void 0:_rule$keepSelector.trim())||globalRule.keepSelector;rule.terms=((_rule$terms=rule.terms)===null||_rule$terms===void 0?void 0:_rule$terms.trim())||globalRule.terms;if(rule.textStyle===GLOBAL_KEY){rule.textStyle=globalRule.textStyle;rule.bgColor=globalRule.bgColor;rule.textDiyStyle=globalRule.textDiyStyle;}else{rule.bgColor=((_rule$bgColor=rule.bgColor)===null||_rule$bgColor===void 0?void 0:_rule$bgColor.trim())||globalRule.bgColor;rule.textDiyStyle=((_rule$textDiyStyle=rule.textDiyStyle)===null||_rule$textDiyStyle===void 0?void 0:_rule$textDiyStyle.trim())||globalRule.textDiyStyle;}["translator","fromLang","toLang","transOpen"].forEach(function(key){if(rule[key]===GLOBAL_KEY){rule[key]=globalRule[key];}});return _context.abrupt("return",rule);case 30:case"end":return _context.stop();}},_callee,null,[[5,17]]);}));return function matchRule(_x,_x2){return _ref2.apply(this,arguments);};}()));/** + */var matchRule=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref2=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(href,_ref){var injectRules,subrulesList,owSubrule,rules,selectedSub,mixRule,subRules,rule,globalRule,_rule$bgColor,_rule$textDiyStyle;return _regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:injectRules=_ref.injectRules,subrulesList=_ref.subrulesList,owSubrule=_ref.owSubrule;_context.next=3;return getRulesWithDefault();case 3:rules=_context.sent;if(!injectRules){_context.next=20;break;}_context.prev=5;selectedSub=subrulesList.find(function(item){return item.selected;});if(!(selectedSub!==null&&selectedSub!==void 0&&selectedSub.url)){_context.next=15;break;}mixRule={};Object.entries(owSubrule).filter(function(_ref3){var _ref4=_slicedToArray(_ref3,2),key=_ref4[0],val=_ref4[1];if(owSubrule.textStyle===REMAIN_KEY&&(key==="bgColor"||key==="textDiyStyle")){return false;}return val!==REMAIN_KEY;}).forEach(function(_ref5){var _ref6=_slicedToArray(_ref5,2),key=_ref6[0],val=_ref6[1];mixRule[key]=val;});_context.next=12;return loadOrFetchSubRules(selectedSub.url);case 12:subRules=_context.sent;subRules=subRules.map(function(item){return _objectSpread(_objectSpread({},item),mixRule);});rules.splice.apply(rules,[-1,0].concat(_toConsumableArray(subRules)));case 15:_context.next=20;break;case 17:_context.prev=17;_context.t0=_context["catch"](5);kissLog(_context.t0,"load injectRules");case 20:rule=rules.find(function(r){return r.pattern.split(",").some(function(p){return isMatch(href,p.trim());});});globalRule=_objectSpread(_objectSpread({},GLOBLA_RULE),rules.find(function(r){return r.pattern===GLOBAL_KEY;})||{});if(rule){_context.next=24;break;}return _context.abrupt("return",globalRule);case 24:["selector","keepSelector","terms","selectStyle","parentStyle","injectJs","injectCss","fixerSelector"].forEach(function(key){var _rule$key;if(!((_rule$key=rule[key])!==null&&_rule$key!==void 0&&_rule$key.trim())){rule[key]=globalRule[key];}});["translator","fromLang","toLang","transOpen","transOnly","transTiming","transTag","transTitle","detectRemote","fixerFunc"].forEach(function(key){if(rule[key]===undefined||rule[key]===GLOBAL_KEY){rule[key]=globalRule[key];}});if(!rule.skipLangs||rule.skipLangs.length===0){rule.skipLangs=globalRule.skipLangs;}if(rule.textStyle===GLOBAL_KEY){rule.textStyle=globalRule.textStyle;rule.bgColor=globalRule.bgColor;rule.textDiyStyle=globalRule.textDiyStyle;}else{rule.bgColor=((_rule$bgColor=rule.bgColor)===null||_rule$bgColor===void 0?void 0:_rule$bgColor.trim())||globalRule.bgColor;rule.textDiyStyle=((_rule$textDiyStyle=rule.textDiyStyle)===null||_rule$textDiyStyle===void 0?void 0:_rule$textDiyStyle.trim())||globalRule.textDiyStyle;}return _context.abrupt("return",rule);case 29:case"end":return _context.stop();}},_callee,null,[[5,17]]);}));return function matchRule(_x,_x2){return _ref2.apply(this,arguments);};}()));/** * 检查过滤rules * @param {*} rules * @returns - */var checkRules=function checkRules(rules){if(type(rules)==="string"){rules=JSON.parse(rules);}if(type(rules)!=="array"){throw new Error("data error");}var fromLangs=OPT_LANGS_FROM.map(function(item){return item[0];});var toLangs=OPT_LANGS_TO.map(function(item){return item[0];});var patternSet=new Set();rules=rules.filter(function(rule){return type(rule)==="object";}).filter(function(_ref7){var pattern=_ref7.pattern;if(type(pattern)!=="string"||patternSet.has(pattern.trim())){return false;}patternSet.add(pattern.trim());return true;}).map(function(_ref8){var pattern=_ref8.pattern,selector=_ref8.selector,keepSelector=_ref8.keepSelector,terms=_ref8.terms,translator=_ref8.translator,fromLang=_ref8.fromLang,toLang=_ref8.toLang,textStyle=_ref8.textStyle,transOpen=_ref8.transOpen,bgColor=_ref8.bgColor,textDiyStyle=_ref8.textDiyStyle;return{pattern:pattern.trim(),selector:type(selector)==="string"?selector:"",keepSelector:type(keepSelector)==="string"?keepSelector:"",terms:type(terms)==="string"?terms:"",bgColor:type(bgColor)==="string"?bgColor:"",textDiyStyle:type(textDiyStyle)==="string"?textDiyStyle:"",translator:matchValue([rules_GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(OPT_TRANS_ALL)),translator),fromLang:matchValue([rules_GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(fromLangs)),fromLang),toLang:matchValue([rules_GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(toLangs)),toLang),textStyle:matchValue([rules_GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(OPT_STYLE_ALL)),textStyle),transOpen:matchValue([rules_GLOBAL_KEY,"true","false"],transOpen)};});return rules;};/** + */var checkRules=function checkRules(rules){if(type(rules)==="string"){rules=JSON.parse(rules);}if(type(rules)!=="array"){throw new Error("data error");}var fromLangs=OPT_LANGS_FROM.map(function(item){return item[0];});var toLangs=OPT_LANGS_TO.map(function(item){return item[0];});var patternSet=new Set();rules=rules.filter(function(rule){return type(rule)==="object";}).filter(function(_ref7){var pattern=_ref7.pattern;if(type(pattern)!=="string"||patternSet.has(pattern.trim())){return false;}patternSet.add(pattern.trim());return true;}).map(function(_ref8){var pattern=_ref8.pattern,selector=_ref8.selector,keepSelector=_ref8.keepSelector,terms=_ref8.terms,selectStyle=_ref8.selectStyle,parentStyle=_ref8.parentStyle,injectJs=_ref8.injectJs,injectCss=_ref8.injectCss,translator=_ref8.translator,fromLang=_ref8.fromLang,toLang=_ref8.toLang,textStyle=_ref8.textStyle,transOpen=_ref8.transOpen,bgColor=_ref8.bgColor,textDiyStyle=_ref8.textDiyStyle,transOnly=_ref8.transOnly,transTiming=_ref8.transTiming,transTag=_ref8.transTag,transTitle=_ref8.transTitle,detectRemote=_ref8.detectRemote,skipLangs=_ref8.skipLangs,fixerSelector=_ref8.fixerSelector,fixerFunc=_ref8.fixerFunc;return{pattern:pattern.trim(),selector:type(selector)==="string"?selector:"",keepSelector:type(keepSelector)==="string"?keepSelector:"",terms:type(terms)==="string"?terms:"",selectStyle:type(selectStyle)==="string"?selectStyle:"",parentStyle:type(parentStyle)==="string"?parentStyle:"",injectJs:type(injectJs)==="string"?injectJs:"",injectCss:type(injectCss)==="string"?injectCss:"",bgColor:type(bgColor)==="string"?bgColor:"",textDiyStyle:type(textDiyStyle)==="string"?textDiyStyle:"",translator:matchValue([rules_GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(OPT_TRANS_ALL)),translator),fromLang:matchValue([rules_GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(fromLangs)),fromLang),toLang:matchValue([rules_GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(toLangs)),toLang),textStyle:matchValue([rules_GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(OPT_STYLE_ALL)),textStyle),transOpen:matchValue([rules_GLOBAL_KEY,"true","false"],transOpen),transOnly:matchValue([rules_GLOBAL_KEY,"true","false"],transOnly),transTiming:matchValue([rules_GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(OPT_TIMING_ALL)),transTiming),transTag:matchValue([rules_GLOBAL_KEY,"span","font"],transTag),transTitle:matchValue([rules_GLOBAL_KEY,"true","false"],transTitle),detectRemote:matchValue([rules_GLOBAL_KEY,"true","false"],detectRemote),skipLangs:type(skipLangs)==="array"?skipLangs:[],fixerSelector:type(fixerSelector)==="string"?fixerSelector:"",fixerFunc:matchValue([rules_GLOBAL_KEY].concat((0,toConsumableArray/* default */.Z)(FIXER_ALL)),fixerFunc)};});return rules;};/** * 保存或更新rule * @param {*} newRule */var saveRule=/*#__PURE__*/(/* unused pure expression or super */ null && (function(){var _ref9=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2(newRule){var rules,rule;return _regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return getRulesWithDefault();case 2:rules=_context2.sent;rule=rules.find(function(item){return isMatch(newRule.pattern,item.pattern);});if(rule&&rule.pattern!==GLOBAL_KEY){Object.assign(rule,_objectSpread(_objectSpread({},newRule),{},{pattern:rule.pattern}));}else{rules.unshift(newRule);}_context2.next=7;return setRules(rules);case 7:trySyncRules();case 8:case"end":return _context2.stop();}},_callee2);}));return function saveRule(_x3){return _ref9.apply(this,arguments);};}())); @@ -60979,10 +61055,10 @@ var Sync = __webpack_require__(8704); /** * 订阅规则 * @returns - */function useSubRules(){var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useState3=(0,react.useState)([]),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),selectedRules=_useState4[0],setSelectedRules=_useState4[1];var _useSetting=useSetting(),setting=_useSetting.setting,updateSetting=_useSetting.updateSetting;var list=(setting===null||setting===void 0?void 0:setting.subrulesList)||config_DEFAULT_SUBRULES_LIST;var selectedSub=(0,react.useMemo)(function(){return list.find(function(item){return item.selected;});},[list]);var selectedUrl=selectedSub.url;var selectSub=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(url){var subrulesList;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:subrulesList=(0,toConsumableArray/* default */.Z)(list);subrulesList.forEach(function(item){if(item.url===url){item.selected=true;}else{item.selected=false;}});_context.next=4;return updateSetting({subrulesList:subrulesList});case 4:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[list,updateSetting]);var updateSub=(0,react.useCallback)(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(url,obj){var subrulesList;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:subrulesList=(0,toConsumableArray/* default */.Z)(list);subrulesList.forEach(function(item){if(item.url===url){Object.assign(item,obj);}});_context2.next=4;return updateSetting({subrulesList:subrulesList});case 4:case"end":return _context2.stop();}},_callee2);}));return function(_x2,_x3){return _ref2.apply(this,arguments);};}(),[list,updateSetting]);var addSub=(0,react.useCallback)(/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(url){var subrulesList;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:subrulesList=(0,toConsumableArray/* default */.Z)(list);subrulesList.push({url:url,selected:false});_context3.next=4;return updateSetting({subrulesList:subrulesList});case 4:case"end":return _context3.stop();}},_callee3);}));return function(_x4){return _ref3.apply(this,arguments);};}(),[list,updateSetting]);var delSub=(0,react.useCallback)(/*#__PURE__*/function(){var _ref4=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(url){var subrulesList;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:subrulesList=(0,toConsumableArray/* default */.Z)(list);subrulesList=subrulesList.filter(function(item){return item.url!==url;});_context4.next=4;return updateSetting({subrulesList:subrulesList});case 4:_context4.next=6;return delSubRules(url);case 6:case"end":return _context4.stop();}},_callee4);}));return function(_x5){return _ref4.apply(this,arguments);};}(),[list,updateSetting]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){var rules;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:if(!selectedUrl){_context5.next=15;break;}_context5.prev=1;setLoading(true);_context5.next=5;return subRules_loadOrFetchSubRules(selectedUrl);case 5:rules=_context5.sent;setSelectedRules(rules);_context5.next=12;break;case 9:_context5.prev=9;_context5.t0=_context5["catch"](1);console.log("[loadOrFetchSubRules]",_context5.t0);case 12:_context5.prev=12;setLoading(false);return _context5.finish(12);case 15:case"end":return _context5.stop();}},_callee5,null,[[1,9,12,15]]);}))();},[selectedUrl]);return{subList:list,selectSub:selectSub,updateSub:updateSub,addSub:addSub,delSub:delSub,selectedSub:selectedSub,selectedUrl:selectedUrl,selectedRules:selectedRules,setSelectedRules:setSelectedRules,loading:loading};}/** + */function useSubRules(){var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useState3=(0,react.useState)([]),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),selectedRules=_useState4[0],setSelectedRules=_useState4[1];var _useSetting=useSetting(),setting=_useSetting.setting,updateSetting=_useSetting.updateSetting;var list=(setting===null||setting===void 0?void 0:setting.subrulesList)||DEFAULT_SUBRULES_LIST;var selectedSub=(0,react.useMemo)(function(){return list.find(function(item){return item.selected;});},[list]);var selectedUrl=selectedSub.url;var selectSub=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(url){var subrulesList;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:subrulesList=(0,toConsumableArray/* default */.Z)(list);subrulesList.forEach(function(item){if(item.url===url){item.selected=true;}else{item.selected=false;}});_context.next=4;return updateSetting({subrulesList:subrulesList});case 4:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[list,updateSetting]);var updateSub=(0,react.useCallback)(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(url,obj){var subrulesList;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:subrulesList=(0,toConsumableArray/* default */.Z)(list);subrulesList.forEach(function(item){if(item.url===url){Object.assign(item,obj);}});_context2.next=4;return updateSetting({subrulesList:subrulesList});case 4:case"end":return _context2.stop();}},_callee2);}));return function(_x2,_x3){return _ref2.apply(this,arguments);};}(),[list,updateSetting]);var addSub=(0,react.useCallback)(/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(url){var subrulesList;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:subrulesList=(0,toConsumableArray/* default */.Z)(list);subrulesList.push({url:url,selected:false});_context3.next=4;return updateSetting({subrulesList:subrulesList});case 4:case"end":return _context3.stop();}},_callee3);}));return function(_x4){return _ref3.apply(this,arguments);};}(),[list,updateSetting]);var delSub=(0,react.useCallback)(/*#__PURE__*/function(){var _ref4=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(url){var subrulesList;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:subrulesList=(0,toConsumableArray/* default */.Z)(list);subrulesList=subrulesList.filter(function(item){return item.url!==url;});_context4.next=4;return updateSetting({subrulesList:subrulesList});case 4:_context4.next=6;return delSubRules(url);case 6:case"end":return _context4.stop();}},_callee4);}));return function(_x5){return _ref4.apply(this,arguments);};}(),[list,updateSetting]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){var rules;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:if(!selectedUrl){_context5.next=15;break;}_context5.prev=1;setLoading(true);_context5.next=5;return subRules_loadOrFetchSubRules(selectedUrl);case 5:rules=_context5.sent;setSelectedRules(rules);_context5.next=12;break;case 9:_context5.prev=9;_context5.t0=_context5["catch"](1);log_kissLog(_context5.t0,"loadOrFetchSubRules");case 12:_context5.prev=12;setLoading(false);return _context5.finish(12);case 15:case"end":return _context5.stop();}},_callee5,null,[[1,9,12,15]]);}))();},[selectedUrl]);return{subList:list,selectSub:selectSub,updateSub:updateSub,addSub:addSub,delSub:delSub,selectedSub:selectedSub,selectedUrl:selectedUrl,selectedRules:selectedRules,setSelectedRules:setSelectedRules,loading:loading};}/** * 覆写订阅规则 * @returns - */function useOwSubRule(){var _useSetting2=useSetting(),setting=_useSetting2.setting,updateSetting=_useSetting2.updateSetting;var _setting$owSubrule=setting.owSubrule,owSubrule=_setting$owSubrule===void 0?rules_DEFAULT_OW_RULE:_setting$owSubrule;var updateOwSubrule=(0,react.useCallback)(/*#__PURE__*/function(){var _ref6=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:_context6.next=2;return updateSetting({owSubrule:_objectSpread2(_objectSpread2({},owSubrule),obj)});case 2:case"end":return _context6.stop();}},_callee6);}));return function(_x6){return _ref6.apply(this,arguments);};}(),[owSubrule,updateSetting]);return{owSubrule:owSubrule,updateOwSubrule:updateOwSubrule};} + */function useOwSubRule(){var _useSetting2=useSetting(),setting=_useSetting2.setting,updateSetting=_useSetting2.updateSetting;var _setting$owSubrule=setting.owSubrule,owSubrule=_setting$owSubrule===void 0?DEFAULT_OW_RULE:_setting$owSubrule;var updateOwSubrule=(0,react.useCallback)(/*#__PURE__*/function(){var _ref6=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:_context6.next=2;return updateSetting({owSubrule:_objectSpread2(_objectSpread2({},owSubrule),obj)});case 2:case"end":return _context6.stop();}},_callee6);}));return function(_x6){return _ref6.apply(this,arguments);};}(),[owSubrule,updateSetting]);return{owSubrule:owSubrule,updateOwSubrule:updateOwSubrule};} ;// CONCATENATED MODULE: ./node_modules/.pnpm/@mui+base@5.0.0-beta.16_@types+react@18.2.22_react-dom@18.2.0_react@18.2.0/node_modules/@mui/base/ClickAwayListener/ClickAwayListener.js 'use client'; @@ -61601,12 +61677,20 @@ function DownloadButton(_ref){var data=_ref.data,text=_ref.text,fileName=_ref.fi var FileUpload = __webpack_require__(4498); ;// CONCATENATED MODULE: ./src/views/Options/UploadButton.js function UploadButton(_ref){var handleImport=_ref.handleImport,text=_ref.text,_ref$fileType=_ref.fileType,fileType=_ref$fileType===void 0?"json":_ref$fileType,_ref$fileExts=_ref.fileExts,fileExts=_ref$fileExts===void 0?[".json"]:_ref$fileExts;var i18n=useI18n();var inputRef=(0,react.useRef)(null);var handleClick=function handleClick(){if(inputRef.current){inputRef.current.click();inputRef.current.value=null;}};var onChange=function onChange(e){var file=e.target.files[0];if(!file){return;}if(!file.type.includes(fileType)){alert(i18n("error_wrong_file_type"));return;}var reader=new FileReader();reader.onload=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(e){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:handleImport(e.target.result);case 1:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref2.apply(this,arguments);};}();reader.readAsText(file);};return/*#__PURE__*/(0,jsx_runtime.jsxs)(Button_Button,{size:"small",variant:"outlined",onClick:handleClick,startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(FileUpload/* default */.Z,{}),children:[text,/*#__PURE__*/(0,jsx_runtime.jsx)("input",{type:"file",accept:fileExts.join(", "),ref:inputRef,onChange:onChange,hidden:true})]});} +// EXTERNAL MODULE: ./node_modules/.pnpm/@mui+icons-material@5.14.9_@mui+material@5.14.10_@types+react@18.2.22_react@18.2.0/node_modules/@mui/icons-material/Add.js +var Add = __webpack_require__(3879); +// EXTERNAL MODULE: ./node_modules/.pnpm/@mui+icons-material@5.14.9_@mui+material@5.14.10_@types+react@18.2.22_react@18.2.0/node_modules/@mui/icons-material/Edit.js +var Edit = __webpack_require__(6485); +// EXTERNAL MODULE: ./node_modules/.pnpm/@mui+icons-material@5.14.9_@mui+material@5.14.10_@types+react@18.2.22_react@18.2.0/node_modules/@mui/icons-material/Cancel.js +var Cancel = __webpack_require__(3994); +// EXTERNAL MODULE: ./node_modules/.pnpm/@mui+icons-material@5.14.9_@mui+material@5.14.10_@types+react@18.2.22_react@18.2.0/node_modules/@mui/icons-material/Save.js +var Save = __webpack_require__(9906); ;// CONCATENATED MODULE: ./src/views/Options/Rules.js -function RuleFields(_ref){var rule=_ref.rule,rules=_ref.rules,setShow=_ref.setShow,setKeyword=_ref.setKeyword;var initFormValues=rule||_objectSpread2(_objectSpread2({},DEFAULT_RULE),{},{transOpen:"true"});var editMode=!!rule;var i18n=useI18n();var _useState=(0,react.useState)(editMode),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),disabled=_useState2[0],setDisabled=_useState2[1];var _useState3=(0,react.useState)({}),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),errors=_useState4[0],setErrors=_useState4[1];var _useState5=(0,react.useState)(initFormValues),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),formValues=_useState6[0],setFormValues=_useState6[1];var pattern=formValues.pattern,selector=formValues.selector,_formValues$keepSelec=formValues.keepSelector,keepSelector=_formValues$keepSelec===void 0?"":_formValues$keepSelec,_formValues$terms=formValues.terms,terms=_formValues$terms===void 0?"":_formValues$terms,translator=formValues.translator,fromLang=formValues.fromLang,toLang=formValues.toLang,textStyle=formValues.textStyle,transOpen=formValues.transOpen,bgColor=formValues.bgColor,textDiyStyle=formValues.textDiyStyle;var hasSamePattern=function hasSamePattern(str){var _iterator=createForOfIteratorHelper_createForOfIteratorHelper(rules.list),_step;try{for(_iterator.s();!(_step=_iterator.n()).done;){var item=_step.value;if(item.pattern===str&&(rule===null||rule===void 0?void 0:rule.pattern)!==str){return true;}}}catch(err){_iterator.e(err);}finally{_iterator.f();}return false;};var handleFocus=function handleFocus(e){e.preventDefault();var name=e.target.name;setErrors(function(pre){return _objectSpread2(_objectSpread2({},pre),{},(0,defineProperty/* default */.Z)({},name,""));});};var handlePatternChange=(0,react.useMemo)(function(){return debounce(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(patterns){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:setKeyword(patterns.trim());case 1:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref2.apply(this,arguments);};}(),500);},[setKeyword]);var handleChange=function handleChange(e){e.preventDefault();var _e$target=e.target,name=_e$target.name,value=_e$target.value;setFormValues(function(pre){return _objectSpread2(_objectSpread2({},pre),{},(0,defineProperty/* default */.Z)({},name,value));});if(name==="pattern"&&!editMode){handlePatternChange(value);}};var handleCancel=function handleCancel(e){e.preventDefault();if(editMode){setDisabled(true);}else{setShow(false);}setErrors({});setFormValues(initFormValues);};var handleSubmit=function handleSubmit(e){e.preventDefault();var errors={};if(!pattern.trim()){errors.pattern=i18n("error_cant_be_blank");}if(hasSamePattern(pattern)){errors.pattern=i18n("error_duplicate_values");}if(pattern==="*"&&!errors.pattern&&!selector.trim()){errors.selector=i18n("error_cant_be_blank");}if(Object.keys(errors).length>0){setErrors(errors);return;}if(editMode){// 编辑 +function RuleFields(_ref){var rule=_ref.rule,rules=_ref.rules,setShow=_ref.setShow,setKeyword=_ref.setKeyword;var initFormValues=_objectSpread2(_objectSpread2({},(rule===null||rule===void 0?void 0:rule.pattern)==="*"?config_GLOBLA_RULE:DEFAULT_RULE),rule||{});var editMode=!!rule;var i18n=useI18n();var _useState=(0,react.useState)(editMode),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),disabled=_useState2[0],setDisabled=_useState2[1];var _useState3=(0,react.useState)({}),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),errors=_useState4[0],setErrors=_useState4[1];var _useState5=(0,react.useState)(initFormValues),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),formValues=_useState6[0],setFormValues=_useState6[1];var _useState7=(0,react.useState)(!rules),_useState8=(0,slicedToArray/* default */.Z)(_useState7,2),showMore=_useState8[0],setShowMore=_useState8[1];var pattern=formValues.pattern,selector=formValues.selector,_formValues$keepSelec=formValues.keepSelector,keepSelector=_formValues$keepSelec===void 0?"":_formValues$keepSelec,_formValues$terms=formValues.terms,terms=_formValues$terms===void 0?"":_formValues$terms,_formValues$selectSty=formValues.selectStyle,selectStyle=_formValues$selectSty===void 0?"":_formValues$selectSty,_formValues$parentSty=formValues.parentStyle,parentStyle=_formValues$parentSty===void 0?"":_formValues$parentSty,_formValues$injectJs=formValues.injectJs,injectJs=_formValues$injectJs===void 0?"":_formValues$injectJs,_formValues$injectCss=formValues.injectCss,injectCss=_formValues$injectCss===void 0?"":_formValues$injectCss,translator=formValues.translator,fromLang=formValues.fromLang,toLang=formValues.toLang,textStyle=formValues.textStyle,transOpen=formValues.transOpen,bgColor=formValues.bgColor,textDiyStyle=formValues.textDiyStyle,_formValues$transOnly=formValues.transOnly,transOnly=_formValues$transOnly===void 0?"false":_formValues$transOnly,_formValues$transTimi=formValues.transTiming,transTiming=_formValues$transTimi===void 0?OPT_TIMING_PAGESCROLL:_formValues$transTimi,_formValues$transTag=formValues.transTag,transTag=_formValues$transTag===void 0?DEFAULT_TRANS_TAG:_formValues$transTag,_formValues$transTitl=formValues.transTitle,transTitle=_formValues$transTitl===void 0?"false":_formValues$transTitl,_formValues$detectRem=formValues.detectRemote,detectRemote=_formValues$detectRem===void 0?"false":_formValues$detectRem,_formValues$skipLangs=formValues.skipLangs,skipLangs=_formValues$skipLangs===void 0?[]:_formValues$skipLangs,_formValues$fixerSele=formValues.fixerSelector,fixerSelector=_formValues$fixerSele===void 0?"":_formValues$fixerSele,_formValues$fixerFunc=formValues.fixerFunc,fixerFunc=_formValues$fixerFunc===void 0?"-":_formValues$fixerFunc;var hasSamePattern=function hasSamePattern(str){var _iterator=createForOfIteratorHelper_createForOfIteratorHelper(rules.list),_step;try{for(_iterator.s();!(_step=_iterator.n()).done;){var item=_step.value;if(item.pattern===str&&(rule===null||rule===void 0?void 0:rule.pattern)!==str){return true;}}}catch(err){_iterator.e(err);}finally{_iterator.f();}return false;};var handleFocus=function handleFocus(e){e.preventDefault();var name=e.target.name;setErrors(function(pre){return _objectSpread2(_objectSpread2({},pre),{},(0,defineProperty/* default */.Z)({},name,""));});};var handlePatternChange=(0,react.useMemo)(function(){return debounce(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(patterns){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:setKeyword(patterns.trim());case 1:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref2.apply(this,arguments);};}(),500);},[setKeyword]);var handleChange=function handleChange(e){e.preventDefault();var _e$target=e.target,name=_e$target.name,value=_e$target.value;setFormValues(function(pre){return _objectSpread2(_objectSpread2({},pre),{},(0,defineProperty/* default */.Z)({},name,value));});if(name==="pattern"&&!editMode){handlePatternChange(value);}};var handleCancel=function handleCancel(e){e.preventDefault();if(editMode){setDisabled(true);}else{setShow(false);}setErrors({});setFormValues(initFormValues);};var handleSubmit=function handleSubmit(e){e.preventDefault();var errors={};if(!pattern.trim()){errors.pattern=i18n("error_cant_be_blank");}if(hasSamePattern(pattern)){errors.pattern=i18n("error_duplicate_values");}if(pattern==="*"&&!errors.pattern&&!selector.trim()){errors.selector=i18n("error_cant_be_blank");}if(Object.keys(errors).length>0){setErrors(errors);return;}if(editMode){// 编辑 setDisabled(true);rules.put(rule.pattern,formValues);}else{// 添加 -rules.add(formValues);setShow(false);setFormValues(initFormValues);}};var GlobalItem=(rule===null||rule===void 0?void 0:rule.pattern)!=="*"&&/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:rules_GLOBAL_KEY,children:rules_GLOBAL_KEY},rules_GLOBAL_KEY);return/*#__PURE__*/(0,jsx_runtime.jsx)("form",{onSubmit:handleSubmit,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("pattern"),error:!!errors.pattern,helperText:errors.pattern||i18n("pattern_helper"),name:"pattern",value:pattern,disabled:(rule===null||rule===void 0?void 0:rule.pattern)==="*"||disabled,onChange:handleChange,onFocus:handleFocus,multiline:true}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("selector"),error:!!errors.selector,helperText:errors.selector||i18n("selector_helper"),name:"selector",value:selector,disabled:disabled,onChange:handleChange,onFocus:handleFocus,multiline:true}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("keep_selector"),helperText:i18n("keep_selector_helper"),name:"keepSelector",value:keepSelector,disabled:disabled,onChange:handleChange,multiline:true}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("terms"),helperText:i18n("terms_helper"),name:"terms",value:terms,disabled:disabled,onChange:handleChange,multiline:true}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Grid_Grid,{container:true,spacing:2,columns:12,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",fullWidth:true,name:"transOpen",value:transOpen,label:i18n("translate_switch"),disabled:disabled,onChange:handleChange,children:[GlobalItem,/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:"true",children:i18n("default_enabled")}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:"false",children:i18n("default_disabled")})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",fullWidth:true,name:"translator",value:translator,label:i18n("translate_service"),disabled:disabled,onChange:handleChange,children:[GlobalItem,OPT_TRANS_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:item},item);})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",fullWidth:true,name:"fromLang",value:fromLang,label:i18n("from_lang"),disabled:disabled,onChange:handleChange,children:[GlobalItem,OPT_LANGS_FROM.map(function(_ref3){var _ref4=(0,slicedToArray/* default */.Z)(_ref3,2),lang=_ref4[0],name=_ref4[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",fullWidth:true,name:"toLang",value:toLang,label:i18n("to_lang"),disabled:disabled,onChange:handleChange,children:[GlobalItem,OPT_LANGS_TO.map(function(_ref5){var _ref6=(0,slicedToArray/* default */.Z)(_ref5,2),lang=_ref6[0],name=_ref6[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",fullWidth:true,name:"textStyle",value:textStyle,label:i18n("text_style"),disabled:disabled,onChange:handleChange,children:[GlobalItem,OPT_STYLE_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:i18n(item)},item);})]})}),OPT_STYLE_USE_COLOR.includes(textStyle)&&/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",fullWidth:true,name:"bgColor",value:bgColor,label:i18n("bg_color"),disabled:disabled,onChange:handleChange})})]})}),textStyle===OPT_STYLE_DIY&&/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("diy_style"),helperText:i18n("diy_style_helper"),name:"textDiyStyle",value:textDiyStyle,disabled:disabled,onChange:handleChange,multiline:true}),rules&&(editMode?/*#__PURE__*/ // 编辑 -(0,jsx_runtime.jsx)(Stack_Stack,{direction:"row",spacing:2,children:disabled?/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",onClick:function onClick(e){e.preventDefault();setDisabled(false);},children:i18n("edit")}),(rule===null||rule===void 0?void 0:rule.pattern)!=="*"&&/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:function onClick(e){e.preventDefault();rules.del(rule.pattern);},children:i18n("delete")})]}):/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",type:"submit",children:i18n("save")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:handleCancel,children:i18n("cancel")})]})}):/*#__PURE__*/ // 添加 -(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",type:"submit",children:i18n("save")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:handleCancel,children:i18n("cancel")})]}))]})});}function RuleAccordion(_ref7){var rule=_ref7.rule,rules=_ref7.rules;var i18n=useI18n();var _useState7=(0,react.useState)(false),_useState8=(0,slicedToArray/* default */.Z)(_useState7,2),expanded=_useState8[0],setExpanded=_useState8[1];var handleChange=function handleChange(e){setExpanded(function(pre){return!pre;});};return/*#__PURE__*/(0,jsx_runtime.jsxs)(Accordion_Accordion,{expanded:expanded,onChange:handleChange,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(AccordionSummary_AccordionSummary,{expandIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(ExpandMore/* default */.Z,{}),children:/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{sx:{opacity:rules?1:0.5,overflowWrap:"anywhere"},children:rule.pattern===rules_GLOBAL_KEY?"[".concat(i18n("global_rule"),"] ").concat(rule.pattern):rule.pattern})}),/*#__PURE__*/(0,jsx_runtime.jsx)(AccordionDetails_AccordionDetails,{children:expanded&&/*#__PURE__*/(0,jsx_runtime.jsx)(RuleFields,{rule:rule,rules:rules})})]});}function ShareButton(_ref8){var rules=_ref8.rules,injectRules=_ref8.injectRules,selectedUrl=_ref8.selectedUrl;var alert=useAlert();var i18n=useI18n();var handleClick=/*#__PURE__*/function(){var _ref9=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(){var _yield$getSyncWithDef,syncType,syncUrl,syncKey,shareRules,subRules,url;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;_context2.next=3;return storage_getSyncWithDefault();case 3:_yield$getSyncWithDef=_context2.sent;syncType=_yield$getSyncWithDef.syncType;syncUrl=_yield$getSyncWithDef.syncUrl;syncKey=_yield$getSyncWithDef.syncKey;if(!(syncType!==OPT_SYNCTYPE_WORKER||!syncUrl||!syncKey)){_context2.next=10;break;}alert.warning(i18n("error_sync_setting"));return _context2.abrupt("return");case 10:shareRules=(0,toConsumableArray/* default */.Z)(rules.list);if(!injectRules){_context2.next=16;break;}_context2.next=14;return subRules_loadOrFetchSubRules(selectedUrl);case 14:subRules=_context2.sent;shareRules.splice.apply(shareRules,[-1,0].concat((0,toConsumableArray/* default */.Z)(subRules)));case 16:_context2.next=18;return syncShareRules({rules:shareRules,syncUrl:syncUrl,syncKey:syncKey});case 18:url=_context2.sent;window.open(url,"_blank");_context2.next=26;break;case 22:_context2.prev=22;_context2.t0=_context2["catch"](0);alert.warning(i18n("error_got_some_wrong"));console.log("[share rules]",_context2.t0);case 26:case"end":return _context2.stop();}},_callee2,null,[[0,22]]);}));return function handleClick(){return _ref9.apply(this,arguments);};}();return/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:handleClick,startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(Share/* default */.Z,{}),children:i18n("share")});}function UserRules(_ref10){var subRules=_ref10.subRules;var i18n=useI18n();var rules=useRules();var _useState9=(0,react.useState)(false),_useState10=(0,slicedToArray/* default */.Z)(_useState9,2),showAdd=_useState10[0],setShowAdd=_useState10[1];var _useSetting=useSetting(),setting=_useSetting.setting,updateSetting=_useSetting.updateSetting;var _useState11=(0,react.useState)(""),_useState12=(0,slicedToArray/* default */.Z)(_useState11,2),keyword=_useState12[0],setKeyword=_useState12[1];var injectRules=!!(setting!==null&&setting!==void 0&&setting.injectRules);var selectedUrl=subRules.selectedUrl,selectedRules=subRules.selectedRules;var handleImport=/*#__PURE__*/function(){var _ref11=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(data){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.prev=0;_context3.next=3;return rules.merge(JSON.parse(data));case 3:_context3.next=8;break;case 5:_context3.prev=5;_context3.t0=_context3["catch"](0);console.log("[import rules]",_context3.t0);case 8:case"end":return _context3.stop();}},_callee3,null,[[0,5]]);}));return function handleImport(_x2){return _ref11.apply(this,arguments);};}();var handleInject=function handleInject(){updateSetting({injectRules:!injectRules});};(0,react.useEffect)(function(){if(!showAdd){setKeyword("");}},[showAdd]);if(!rules.list){return;}return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",spacing:2,useFlexGap:true,flexWrap:"wrap",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",disabled:showAdd,onClick:function onClick(e){e.preventDefault();setShowAdd(true);},children:i18n("add")}),/*#__PURE__*/(0,jsx_runtime.jsx)(UploadButton,{text:i18n("import"),handleImport:handleImport}),/*#__PURE__*/(0,jsx_runtime.jsx)(DownloadButton,{data:JSON.stringify((0,toConsumableArray/* default */.Z)(rules.list).reverse(),null,2),text:i18n("export"),fileName:"kiss-rules_".concat(Date.now(),".json")}),/*#__PURE__*/(0,jsx_runtime.jsx)(ShareButton,{rules:rules,injectRules:injectRules,selectedUrl:selectedUrl}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:function onClick(){rules.clear();},startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(ClearAll/* default */.Z,{}),children:i18n("clear_all")}),/*#__PURE__*/(0,jsx_runtime.jsx)(HelpButton,{url:URL_KISS_RULES_NEW_ISSUE}),/*#__PURE__*/(0,jsx_runtime.jsx)(FormControlLabel_FormControlLabel,{control:/*#__PURE__*/(0,jsx_runtime.jsx)(Switch_Switch,{size:"small",checked:injectRules,onChange:handleInject}),label:i18n("inject_rules")})]}),showAdd&&/*#__PURE__*/(0,jsx_runtime.jsx)(RuleFields,{rules:rules,setShow:setShowAdd,setKeyword:setKeyword}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:rules.list.filter(function(rule){return rule.pattern.includes(keyword)||keyword.includes(rule.pattern);}).map(function(rule){return/*#__PURE__*/(0,jsx_runtime.jsx)(RuleAccordion,{rule:rule,rules:rules},rule.pattern);})}),injectRules&&/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:selectedRules.filter(function(rule){return rule.pattern.includes(keyword)||keyword.includes(rule.pattern);}).map(function(rule){return/*#__PURE__*/(0,jsx_runtime.jsx)(RuleAccordion,{rule:rule},rule.pattern);})})]});}function SubRulesItem(_ref12){var index=_ref12.index,url=_ref12.url,syncAt=_ref12.syncAt,selectedUrl=_ref12.selectedUrl,delSub=_ref12.delSub,setSelectedRules=_ref12.setSelectedRules,updateDataCache=_ref12.updateDataCache,deleteDataCache=_ref12.deleteDataCache;var _useState13=(0,react.useState)(false),_useState14=(0,slicedToArray/* default */.Z)(_useState13,2),loading=_useState14[0],setLoading=_useState14[1];var handleDel=/*#__PURE__*/function(){var _ref13=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;_context4.next=3;return delSub(url);case 3:_context4.next=5;return delSubRules(url);case 5:_context4.next=7;return deleteDataCache(url);case 7:_context4.next=12;break;case 9:_context4.prev=9;_context4.t0=_context4["catch"](0);console.log("[del subrules]",_context4.t0);case 12:case"end":return _context4.stop();}},_callee4,null,[[0,9]]);}));return function handleDel(){return _ref13.apply(this,arguments);};}();var handleSync=/*#__PURE__*/function(){var _ref14=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){var rules;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;setLoading(true);_context5.next=4;return syncSubRules(url);case 4:rules=_context5.sent;if(rules.length>0&&url===selectedUrl){setSelectedRules(rules);}_context5.next=8;return updateDataCache(url);case 8:_context5.next=13;break;case 10:_context5.prev=10;_context5.t0=_context5["catch"](0);console.log("[sync sub rules]",_context5.t0);case 13:_context5.prev=13;setLoading(false);return _context5.finish(13);case 16:case"end":return _context5.stop();}},_callee5,null,[[0,10,13,16]]);}));return function handleSync(){return _ref14.apply(this,arguments);};}();return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(FormControlLabel_FormControlLabel,{value:url,control:/*#__PURE__*/(0,jsx_runtime.jsx)(Radio_Radio,{}),sx:{overflowWrap:"anywhere"},label:url}),syncAt&&/*#__PURE__*/(0,jsx_runtime.jsxs)("span",{style:{marginLeft:"0.5em",opacity:0.5},children:["[",new Date(syncAt).toLocaleString(),"]"]}),loading?/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:16}):/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",onClick:handleSync,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Sync/* default */.Z,{fontSize:"small"})}),index!==0&&selectedUrl!==url&&/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",onClick:handleDel,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Delete/* default */.Z,{fontSize:"small"})})]});}function SubRulesEdit(_ref15){var subList=_ref15.subList,addSub=_ref15.addSub,updateDataCache=_ref15.updateDataCache;var i18n=useI18n();var _useState15=(0,react.useState)(""),_useState16=(0,slicedToArray/* default */.Z)(_useState15,2),inputText=_useState16[0],setInputText=_useState16[1];var _useState17=(0,react.useState)(""),_useState18=(0,slicedToArray/* default */.Z)(_useState17,2),inputError=_useState18[0],setInputError=_useState18[1];var _useState19=(0,react.useState)(false),_useState20=(0,slicedToArray/* default */.Z)(_useState19,2),showInput=_useState20[0],setShowInput=_useState20[1];var _useState21=(0,react.useState)(false),_useState22=(0,slicedToArray/* default */.Z)(_useState21,2),loading=_useState22[0],setLoading=_useState22[1];var handleCancel=function handleCancel(e){e.preventDefault();setShowInput(false);setInputText("");setInputError("");};var handleSave=/*#__PURE__*/function(){var _ref16=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(e){var url,rules;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:e.preventDefault();url=inputText.trim();if(url){_context6.next=5;break;}setInputError(i18n("error_cant_be_blank"));return _context6.abrupt("return");case 5:if(!subList.find(function(item){return item.url===url;})){_context6.next=8;break;}setInputError(i18n("error_duplicate_values"));return _context6.abrupt("return");case 8:_context6.prev=8;setLoading(true);_context6.next=12;return syncSubRules(url);case 12:rules=_context6.sent;if(!(rules.length===0)){_context6.next=15;break;}throw new Error("empty rules");case 15:_context6.next=17;return addSub(url);case 17:_context6.next=19;return updateDataCache(url);case 19:setShowInput(false);setInputText("");_context6.next=27;break;case 23:_context6.prev=23;_context6.t0=_context6["catch"](8);console.log("[fetch rules]",_context6.t0);setInputError(i18n("error_fetch_url"));case 27:_context6.prev=27;setLoading(false);return _context6.finish(27);case 30:case"end":return _context6.stop();}},_callee6,null,[[8,23,27,30]]);}));return function handleSave(_x3){return _ref16.apply(this,arguments);};}();var handleInput=function handleInput(e){e.preventDefault();setInputText(e.target.value);};var handleFocus=function handleFocus(e){e.preventDefault();setInputError("");};return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",disabled:showInput,onClick:function onClick(e){e.preventDefault();setShowInput(true);},children:i18n("add")}),/*#__PURE__*/(0,jsx_runtime.jsx)(HelpButton,{url:URL_KISS_RULES_NEW_ISSUE})]}),showInput&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",value:inputText,error:!!inputError,helperText:inputError,onChange:handleInput,onFocus:handleFocus,label:i18n("subscribe_url")}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",onClick:handleSave,disabled:loading,children:i18n("save")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:handleCancel,children:i18n("cancel")})]})]})]});}function SubRules(_ref17){var subRules=_ref17.subRules;var subList=subRules.subList,selectSub=subRules.selectSub,addSub=subRules.addSub,delSub=subRules.delSub,selectedUrl=subRules.selectedUrl,selectedRules=subRules.selectedRules,setSelectedRules=subRules.setSelectedRules,loading=subRules.loading;var _useSyncCaches=useSyncCaches(),dataCaches=_useSyncCaches.dataCaches,updateDataCache=_useSyncCaches.updateDataCache,deleteDataCache=_useSyncCaches.deleteDataCache,reloadSync=_useSyncCaches.reloadSync;var handleSelect=function handleSelect(e){var url=e.target.value;selectSub(url);};(0,react.useEffect)(function(){reloadSync();},[selectedRules,reloadSync]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(SubRulesEdit,{subList:subList,addSub:addSub,updateDataCache:updateDataCache}),/*#__PURE__*/(0,jsx_runtime.jsx)(RadioGroup_RadioGroup,{value:selectedUrl,onChange:handleSelect,children:subList.map(function(item,index){return/*#__PURE__*/(0,jsx_runtime.jsx)(SubRulesItem,{url:item.url,syncAt:dataCaches[item.url],index:index,selectedUrl:selectedUrl,delSub:delSub,setSelectedRules:setSelectedRules,updateDataCache:updateDataCache,deleteDataCache:deleteDataCache},item.url);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:loading?/*#__PURE__*/(0,jsx_runtime.jsx)("center",{children:/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{})}):selectedRules.map(function(rule){return/*#__PURE__*/(0,jsx_runtime.jsx)(RuleAccordion,{rule:rule},rule.pattern);})})]});}function Rules(){var i18n=useI18n();var _useState23=(0,react.useState)(0),_useState24=(0,slicedToArray/* default */.Z)(_useState23,2),activeTab=_useState24[0],setActiveTab=_useState24[1];var subRules=useSubRules();var handleTabChange=function handleTabChange(e,newValue){setActiveTab(newValue);};return/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Alert_Alert,{severity:"info",children:[i18n("rules_warn_1"),/*#__PURE__*/(0,jsx_runtime.jsx)("br",{}),i18n("rules_warn_2")]}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{sx:{borderBottom:1,borderColor:"divider"},children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Tabs_Tabs,{value:activeTab,onChange:handleTabChange,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Tab_Tab,{label:i18n("personal_rules")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Tab_Tab,{label:i18n("subscribe_rules")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Tab_Tab,{label:i18n("overwrite_subscribe_rules")})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)("div",{hidden:activeTab!==0,children:activeTab===0&&/*#__PURE__*/(0,jsx_runtime.jsx)(UserRules,{subRules:subRules})}),/*#__PURE__*/(0,jsx_runtime.jsx)("div",{hidden:activeTab!==1,children:activeTab===1&&/*#__PURE__*/(0,jsx_runtime.jsx)(SubRules,{subRules:subRules})}),/*#__PURE__*/(0,jsx_runtime.jsx)("div",{hidden:activeTab!==2,children:activeTab===2&&/*#__PURE__*/(0,jsx_runtime.jsx)(OwSubRule,{})})]})});} +rules.add(formValues);setShow(false);setFormValues(initFormValues);}};var GlobalItem=(rule===null||rule===void 0?void 0:rule.pattern)!=="*"&&/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:rules_GLOBAL_KEY,children:rules_GLOBAL_KEY},rules_GLOBAL_KEY);return/*#__PURE__*/(0,jsx_runtime.jsx)("form",{onSubmit:handleSubmit,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("pattern"),error:!!errors.pattern,helperText:errors.pattern||i18n("pattern_helper"),name:"pattern",value:pattern,disabled:(rule===null||rule===void 0?void 0:rule.pattern)==="*"||disabled,onChange:handleChange,onFocus:handleFocus,multiline:true}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("selector"),error:!!errors.selector,helperText:errors.selector||i18n("selector_helper"),name:"selector",value:selector,disabled:disabled,onChange:handleChange,onFocus:handleFocus,multiline:true}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("keep_selector"),helperText:i18n("keep_selector_helper"),name:"keepSelector",value:keepSelector,disabled:disabled,onChange:handleChange,multiline:true}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Grid_Grid,{container:true,spacing:2,columns:12,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",fullWidth:true,name:"transOpen",value:transOpen,label:i18n("translate_switch"),disabled:disabled,onChange:handleChange,children:[GlobalItem,/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:"true",children:i18n("default_enabled")}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:"false",children:i18n("default_disabled")})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",fullWidth:true,name:"translator",value:translator,label:i18n("translate_service"),disabled:disabled,onChange:handleChange,children:[GlobalItem,OPT_TRANS_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:item},item);})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",fullWidth:true,name:"fromLang",value:fromLang,label:i18n("from_lang"),disabled:disabled,onChange:handleChange,children:[GlobalItem,OPT_LANGS_FROM.map(function(_ref3){var _ref4=(0,slicedToArray/* default */.Z)(_ref3,2),lang=_ref4[0],name=_ref4[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",fullWidth:true,name:"toLang",value:toLang,label:i18n("to_lang"),disabled:disabled,onChange:handleChange,children:[GlobalItem,OPT_LANGS_TO.map(function(_ref5){var _ref6=(0,slicedToArray/* default */.Z)(_ref5,2),lang=_ref6[0],name=_ref6[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",fullWidth:true,name:"textStyle",value:textStyle,label:i18n("text_style"),disabled:disabled,onChange:handleChange,children:[GlobalItem,OPT_STYLE_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:i18n(item)},item);})]})}),OPT_STYLE_USE_COLOR.includes(textStyle)&&/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",fullWidth:true,name:"bgColor",value:bgColor,label:i18n("bg_color"),disabled:disabled,onChange:handleChange})})]})}),textStyle===OPT_STYLE_DIY&&/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("diy_style"),helperText:i18n("diy_style_helper"),name:"textDiyStyle",value:textDiyStyle,disabled:disabled,onChange:handleChange,maxRows:10,multiline:true}),showMore&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Grid_Grid,{container:true,spacing:2,columns:12,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",fullWidth:true,name:"transOnly",value:transOnly,label:i18n("show_only_translations"),disabled:disabled,onChange:handleChange,children:[GlobalItem,/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:"false",children:i18n("disable")}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:"true",children:i18n("enable")})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",fullWidth:true,name:"transTiming",value:transTiming,label:i18n("translate_timing"),disabled:disabled,onChange:handleChange,children:[GlobalItem,OPT_TIMING_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:i18n(item)},item);})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",fullWidth:true,name:"transTag",value:transTag,label:i18n("translation_element_tag"),disabled:disabled,onChange:handleChange,children:[GlobalItem,/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:"span",children:""}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:"font",children:""})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",fullWidth:true,name:"transTitle",value:transTitle,label:i18n("translate_page_title"),disabled:disabled,onChange:handleChange,children:[GlobalItem,/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:"false",children:i18n("disable")}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:"true",children:i18n("enable")})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:6,md:3,lg:2,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",fullWidth:true,name:"detectRemote",value:detectRemote,label:i18n("detect_lang_remote"),disabled:disabled,onChange:handleChange,children:[GlobalItem,/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:"false",children:i18n("disable")}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:"true",children:i18n("enable")})]})})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,size:"small",label:i18n("skip_langs"),helperText:i18n("skip_langs_helper"),name:"skipLangs",value:skipLangs,disabled:disabled,onChange:handleChange,SelectProps:{multiple:true},children:OPT_LANGS_TO.map(function(_ref7){var _ref8=(0,slicedToArray/* default */.Z)(_ref7,2),langKey=_ref8[0],langName=_ref8[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:langKey,children:langName},langKey);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("terms"),helperText:i18n("terms_helper"),name:"terms",value:terms,disabled:disabled,onChange:handleChange,multiline:true}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("fixer_selector"),name:"fixerSelector",value:fixerSelector,disabled:disabled,onChange:handleChange,multiline:true}),/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",name:"fixerFunc",value:fixerFunc,label:i18n("fixer_function"),helperText:i18n("fixer_function_helper"),disabled:disabled,onChange:handleChange,children:[GlobalItem,FIXER_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:item},item);})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("selector_style"),helperText:i18n("selector_style_helper"),name:"selectStyle",value:selectStyle,disabled:disabled,onChange:handleChange,maxRows:10,multiline:true}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("selector_parent_style"),helperText:i18n("selector_style_helper"),name:"parentStyle",value:parentStyle,disabled:disabled,onChange:handleChange,maxRows:10,multiline:true}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("inject_css"),helperText:i18n("inject_css_helper"),name:"injectCss",value:injectCss,disabled:disabled,onChange:handleChange,maxRows:10,multiline:true}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("inject_js"),helperText:i18n("inject_js_helper"),name:"injectJs",value:injectJs,disabled:disabled,onChange:handleChange,maxRows:10,multiline:true})]}),rules&&(editMode?/*#__PURE__*/ // 编辑 +(0,jsx_runtime.jsx)(Stack_Stack,{direction:"row",spacing:2,children:disabled?/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",onClick:function onClick(e){e.preventDefault();setDisabled(false);},startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(Edit/* default */.Z,{}),children:i18n("edit")}),(rule===null||rule===void 0?void 0:rule.pattern)!=="*"&&/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:function onClick(e){e.preventDefault();rules.del(rule.pattern);},startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(Delete/* default */.Z,{}),children:i18n("delete")}),!showMore&&/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"text",onClick:function onClick(){setShowMore(true);},startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(ExpandMore/* default */.Z,{}),children:i18n("more")})]}):/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",type:"submit",startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(Save/* default */.Z,{}),children:i18n("save")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:handleCancel,startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(Cancel/* default */.Z,{}),children:i18n("cancel")}),!showMore&&/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"text",onClick:function onClick(){setShowMore(true);},startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(ExpandMore/* default */.Z,{}),children:i18n("more")})]})}):/*#__PURE__*/ // 添加 +(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",type:"submit",startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(Save/* default */.Z,{}),children:i18n("save")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:handleCancel,startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(Cancel/* default */.Z,{}),children:i18n("cancel")}),!showMore&&/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"text",onClick:function onClick(){setShowMore(true);},children:i18n("more")})]}))]})});}function RuleAccordion(_ref9){var rule=_ref9.rule,rules=_ref9.rules;var i18n=useI18n();var _useState9=(0,react.useState)(false),_useState10=(0,slicedToArray/* default */.Z)(_useState9,2),expanded=_useState10[0],setExpanded=_useState10[1];var handleChange=function handleChange(e){setExpanded(function(pre){return!pre;});};return/*#__PURE__*/(0,jsx_runtime.jsxs)(Accordion_Accordion,{expanded:expanded,onChange:handleChange,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(AccordionSummary_AccordionSummary,{expandIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(ExpandMore/* default */.Z,{}),children:/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{sx:{opacity:rules?1:0.5,overflowWrap:"anywhere"},children:rule.pattern===rules_GLOBAL_KEY?"[".concat(i18n("global_rule"),"] ").concat(rule.pattern):rule.pattern})}),/*#__PURE__*/(0,jsx_runtime.jsx)(AccordionDetails_AccordionDetails,{children:expanded&&/*#__PURE__*/(0,jsx_runtime.jsx)(RuleFields,{rule:rule,rules:rules})})]});}function ShareButton(_ref10){var rules=_ref10.rules,injectRules=_ref10.injectRules,selectedUrl=_ref10.selectedUrl;var alert=useAlert();var i18n=useI18n();var handleClick=/*#__PURE__*/function(){var _ref11=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(){var _yield$getSyncWithDef,syncType,syncUrl,syncKey,shareRules,subRules,url;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;_context2.next=3;return storage_getSyncWithDefault();case 3:_yield$getSyncWithDef=_context2.sent;syncType=_yield$getSyncWithDef.syncType;syncUrl=_yield$getSyncWithDef.syncUrl;syncKey=_yield$getSyncWithDef.syncKey;if(!(syncType!==OPT_SYNCTYPE_WORKER||!syncUrl||!syncKey)){_context2.next=10;break;}alert.warning(i18n("error_sync_setting"));return _context2.abrupt("return");case 10:shareRules=(0,toConsumableArray/* default */.Z)(rules.list);if(!injectRules){_context2.next=16;break;}_context2.next=14;return subRules_loadOrFetchSubRules(selectedUrl);case 14:subRules=_context2.sent;shareRules.splice.apply(shareRules,[-1,0].concat((0,toConsumableArray/* default */.Z)(subRules)));case 16:_context2.next=18;return syncShareRules({rules:shareRules,syncUrl:syncUrl,syncKey:syncKey});case 18:url=_context2.sent;window.open(url,"_blank");_context2.next=26;break;case 22:_context2.prev=22;_context2.t0=_context2["catch"](0);alert.warning(i18n("error_got_some_wrong"));log_kissLog(_context2.t0,"share rules");case 26:case"end":return _context2.stop();}},_callee2,null,[[0,22]]);}));return function handleClick(){return _ref11.apply(this,arguments);};}();return/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:handleClick,startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(Share/* default */.Z,{}),children:i18n("share")});}function UserRules(_ref12){var subRules=_ref12.subRules;var i18n=useI18n();var rules=useRules();var _useState11=(0,react.useState)(false),_useState12=(0,slicedToArray/* default */.Z)(_useState11,2),showAdd=_useState12[0],setShowAdd=_useState12[1];var _useSetting=useSetting(),setting=_useSetting.setting,updateSetting=_useSetting.updateSetting;var _useState13=(0,react.useState)(""),_useState14=(0,slicedToArray/* default */.Z)(_useState13,2),keyword=_useState14[0],setKeyword=_useState14[1];var injectRules=!!(setting!==null&&setting!==void 0&&setting.injectRules);var selectedUrl=subRules.selectedUrl,selectedRules=subRules.selectedRules;var handleImport=/*#__PURE__*/function(){var _ref13=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(data){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.prev=0;_context3.next=3;return rules.merge(JSON.parse(data));case 3:_context3.next=8;break;case 5:_context3.prev=5;_context3.t0=_context3["catch"](0);log_kissLog(_context3.t0,"import rules");case 8:case"end":return _context3.stop();}},_callee3,null,[[0,5]]);}));return function handleImport(_x2){return _ref13.apply(this,arguments);};}();var handleInject=function handleInject(){updateSetting({injectRules:!injectRules});};(0,react.useEffect)(function(){if(!showAdd){setKeyword("");}},[showAdd]);if(!rules.list){return;}return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",spacing:2,useFlexGap:true,flexWrap:"wrap",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",disabled:showAdd,onClick:function onClick(e){e.preventDefault();setShowAdd(true);},startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(Add/* default */.Z,{}),children:i18n("add")}),/*#__PURE__*/(0,jsx_runtime.jsx)(UploadButton,{text:i18n("import"),handleImport:handleImport}),/*#__PURE__*/(0,jsx_runtime.jsx)(DownloadButton,{data:JSON.stringify((0,toConsumableArray/* default */.Z)(rules.list).reverse(),null,2),text:i18n("export"),fileName:"kiss-rules_".concat(Date.now(),".json")}),/*#__PURE__*/(0,jsx_runtime.jsx)(ShareButton,{rules:rules,injectRules:injectRules,selectedUrl:selectedUrl}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:function onClick(){rules.clear();},startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(ClearAll/* default */.Z,{}),children:i18n("clear_all")}),/*#__PURE__*/(0,jsx_runtime.jsx)(HelpButton,{url:URL_KISS_RULES_NEW_ISSUE}),/*#__PURE__*/(0,jsx_runtime.jsx)(FormControlLabel_FormControlLabel,{control:/*#__PURE__*/(0,jsx_runtime.jsx)(Switch_Switch,{size:"small",checked:injectRules,onChange:handleInject}),label:i18n("inject_rules")})]}),showAdd&&/*#__PURE__*/(0,jsx_runtime.jsx)(RuleFields,{rules:rules,setShow:setShowAdd,setKeyword:setKeyword}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:rules.list.filter(function(rule){return rule.pattern.includes(keyword)||keyword.includes(rule.pattern);}).map(function(rule){return/*#__PURE__*/(0,jsx_runtime.jsx)(RuleAccordion,{rule:rule,rules:rules},rule.pattern);})}),injectRules&&/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:selectedRules.filter(function(rule){return rule.pattern.includes(keyword)||keyword.includes(rule.pattern);}).map(function(rule){return/*#__PURE__*/(0,jsx_runtime.jsx)(RuleAccordion,{rule:rule},rule.pattern);})})]});}function SubRulesItem(_ref14){var index=_ref14.index,url=_ref14.url,syncAt=_ref14.syncAt,selectedUrl=_ref14.selectedUrl,delSub=_ref14.delSub,setSelectedRules=_ref14.setSelectedRules,updateDataCache=_ref14.updateDataCache,deleteDataCache=_ref14.deleteDataCache;var _useState15=(0,react.useState)(false),_useState16=(0,slicedToArray/* default */.Z)(_useState15,2),loading=_useState16[0],setLoading=_useState16[1];var handleDel=/*#__PURE__*/function(){var _ref15=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;_context4.next=3;return delSub(url);case 3:_context4.next=5;return delSubRules(url);case 5:_context4.next=7;return deleteDataCache(url);case 7:_context4.next=12;break;case 9:_context4.prev=9;_context4.t0=_context4["catch"](0);log_kissLog(_context4.t0,"del subrules");case 12:case"end":return _context4.stop();}},_callee4,null,[[0,9]]);}));return function handleDel(){return _ref15.apply(this,arguments);};}();var handleSync=/*#__PURE__*/function(){var _ref16=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee5(){var rules;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee5$(_context5){while(1)switch(_context5.prev=_context5.next){case 0:_context5.prev=0;setLoading(true);_context5.next=4;return syncSubRules(url);case 4:rules=_context5.sent;if(rules.length>0&&url===selectedUrl){setSelectedRules(rules);}_context5.next=8;return updateDataCache(url);case 8:_context5.next=13;break;case 10:_context5.prev=10;_context5.t0=_context5["catch"](0);log_kissLog(_context5.t0,"sync sub rules");case 13:_context5.prev=13;setLoading(false);return _context5.finish(13);case 16:case"end":return _context5.stop();}},_callee5,null,[[0,10,13,16]]);}));return function handleSync(){return _ref16.apply(this,arguments);};}();return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(FormControlLabel_FormControlLabel,{value:url,control:/*#__PURE__*/(0,jsx_runtime.jsx)(Radio_Radio,{}),sx:{overflowWrap:"anywhere"},label:url}),syncAt&&/*#__PURE__*/(0,jsx_runtime.jsxs)("span",{style:{marginLeft:"0.5em",opacity:0.5},children:["[",new Date(syncAt).toLocaleString(),"]"]}),loading?/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:16}):/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",onClick:handleSync,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Sync/* default */.Z,{fontSize:"small"})}),index!==0&&selectedUrl!==url&&/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",onClick:handleDel,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Delete/* default */.Z,{fontSize:"small"})})]});}function SubRulesEdit(_ref17){var subList=_ref17.subList,addSub=_ref17.addSub,updateDataCache=_ref17.updateDataCache;var i18n=useI18n();var _useState17=(0,react.useState)(""),_useState18=(0,slicedToArray/* default */.Z)(_useState17,2),inputText=_useState18[0],setInputText=_useState18[1];var _useState19=(0,react.useState)(""),_useState20=(0,slicedToArray/* default */.Z)(_useState19,2),inputError=_useState20[0],setInputError=_useState20[1];var _useState21=(0,react.useState)(false),_useState22=(0,slicedToArray/* default */.Z)(_useState21,2),showInput=_useState22[0],setShowInput=_useState22[1];var _useState23=(0,react.useState)(false),_useState24=(0,slicedToArray/* default */.Z)(_useState23,2),loading=_useState24[0],setLoading=_useState24[1];var handleCancel=function handleCancel(e){e.preventDefault();setShowInput(false);setInputText("");setInputError("");};var handleSave=/*#__PURE__*/function(){var _ref18=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee6(e){var url,rules;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee6$(_context6){while(1)switch(_context6.prev=_context6.next){case 0:e.preventDefault();url=inputText.trim();if(url){_context6.next=5;break;}setInputError(i18n("error_cant_be_blank"));return _context6.abrupt("return");case 5:if(!subList.find(function(item){return item.url===url;})){_context6.next=8;break;}setInputError(i18n("error_duplicate_values"));return _context6.abrupt("return");case 8:_context6.prev=8;setLoading(true);_context6.next=12;return syncSubRules(url);case 12:rules=_context6.sent;if(!(rules.length===0)){_context6.next=15;break;}throw new Error("empty rules");case 15:_context6.next=17;return addSub(url);case 17:_context6.next=19;return updateDataCache(url);case 19:setShowInput(false);setInputText("");_context6.next=27;break;case 23:_context6.prev=23;_context6.t0=_context6["catch"](8);log_kissLog(_context6.t0,"fetch rules");setInputError(i18n("error_fetch_url"));case 27:_context6.prev=27;setLoading(false);return _context6.finish(27);case 30:case"end":return _context6.stop();}},_callee6,null,[[8,23,27,30]]);}));return function handleSave(_x3){return _ref18.apply(this,arguments);};}();var handleInput=function handleInput(e){e.preventDefault();setInputText(e.target.value);};var handleFocus=function handleFocus(e){e.preventDefault();setInputError("");};return/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",disabled:showInput,onClick:function onClick(e){e.preventDefault();setShowInput(true);},startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(Add/* default */.Z,{}),children:i18n("add")}),/*#__PURE__*/(0,jsx_runtime.jsx)(HelpButton,{url:URL_KISS_RULES_NEW_ISSUE})]}),showInput&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",value:inputText,error:!!inputError,helperText:inputError,onChange:handleInput,onFocus:handleFocus,label:i18n("subscribe_url")}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",onClick:handleSave,disabled:loading,startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(Save/* default */.Z,{}),children:i18n("save")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:handleCancel,startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(Cancel/* default */.Z,{}),children:i18n("cancel")})]})]})]});}function SubRules(_ref19){var subRules=_ref19.subRules;var subList=subRules.subList,selectSub=subRules.selectSub,addSub=subRules.addSub,delSub=subRules.delSub,selectedUrl=subRules.selectedUrl,selectedRules=subRules.selectedRules,setSelectedRules=subRules.setSelectedRules,loading=subRules.loading;var _useSyncCaches=useSyncCaches(),dataCaches=_useSyncCaches.dataCaches,updateDataCache=_useSyncCaches.updateDataCache,deleteDataCache=_useSyncCaches.deleteDataCache,reloadSync=_useSyncCaches.reloadSync;var handleSelect=function handleSelect(e){var url=e.target.value;selectSub(url);};(0,react.useEffect)(function(){reloadSync();},[selectedRules,reloadSync]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(SubRulesEdit,{subList:subList,addSub:addSub,updateDataCache:updateDataCache}),/*#__PURE__*/(0,jsx_runtime.jsx)(RadioGroup_RadioGroup,{value:selectedUrl,onChange:handleSelect,children:subList.map(function(item,index){return/*#__PURE__*/(0,jsx_runtime.jsx)(SubRulesItem,{url:item.url,syncAt:dataCaches[item.url],index:index,selectedUrl:selectedUrl,delSub:delSub,setSelectedRules:setSelectedRules,updateDataCache:updateDataCache,deleteDataCache:deleteDataCache},item.url);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:loading?/*#__PURE__*/(0,jsx_runtime.jsx)("center",{children:/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{})}):selectedRules.map(function(rule){return/*#__PURE__*/(0,jsx_runtime.jsx)(RuleAccordion,{rule:rule},rule.pattern);})})]});}function Rules(){var i18n=useI18n();var _useState25=(0,react.useState)(0),_useState26=(0,slicedToArray/* default */.Z)(_useState25,2),activeTab=_useState26[0],setActiveTab=_useState26[1];var subRules=useSubRules();var handleTabChange=function handleTabChange(e,newValue){setActiveTab(newValue);};return/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Alert_Alert,{severity:"info",children:[i18n("rules_warn_1"),/*#__PURE__*/(0,jsx_runtime.jsx)("br",{}),i18n("rules_warn_2"),/*#__PURE__*/(0,jsx_runtime.jsx)("br",{}),i18n("rules_warn_3")]}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{sx:{borderBottom:1,borderColor:"divider"},children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Tabs_Tabs,{value:activeTab,onChange:handleTabChange,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Tab_Tab,{label:i18n("personal_rules")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Tab_Tab,{label:i18n("subscribe_rules")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Tab_Tab,{label:i18n("overwrite_subscribe_rules")})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)("div",{hidden:activeTab!==0,children:activeTab===0&&/*#__PURE__*/(0,jsx_runtime.jsx)(UserRules,{subRules:subRules})}),/*#__PURE__*/(0,jsx_runtime.jsx)("div",{hidden:activeTab!==1,children:activeTab===1&&/*#__PURE__*/(0,jsx_runtime.jsx)(SubRules,{subRules:subRules})}),/*#__PURE__*/(0,jsx_runtime.jsx)("div",{hidden:activeTab!==2,children:activeTab===2&&/*#__PURE__*/(0,jsx_runtime.jsx)(OwSubRule,{})})]})});} ;// CONCATENATED MODULE: ./node_modules/.pnpm/@mui+material@5.14.10_@emotion+react@11.11.1_@emotion+styled@11.11.0_@types+react@18.2.22_react-dom@18.2.0_react@18.2.0/node_modules/@mui/material/Link/linkClasses.js @@ -61803,8 +61887,6 @@ var Link_Link = /*#__PURE__*/react.forwardRef(function Link(inProps, ref) { /* harmony default export */ var material_Link_Link = (Link_Link); ;// CONCATENATED MODULE: ./src/hooks/Shortcut.js function useShortcut(action){var _useSetting=useSetting(),setting=_useSetting.setting,updateSetting=_useSetting.updateSetting;var shortcuts=(setting===null||setting===void 0?void 0:setting.shortcuts)||DEFAULT_SHORTCUTS;var shortcut=shortcuts[action]||[];var setShortcut=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(val){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:Object.assign(shortcuts,(0,defineProperty/* default */.Z)({},action,val));_context.next=3;return updateSetting({shortcuts:shortcuts});case 3:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[action,shortcuts,updateSetting]);return{shortcut:shortcut,setShortcut:setShortcut};} -// EXTERNAL MODULE: ./node_modules/.pnpm/@mui+icons-material@5.14.9_@mui+material@5.14.10_@types+react@18.2.22_react@18.2.0/node_modules/@mui/icons-material/Edit.js -var Edit = __webpack_require__(6485); ;// CONCATENATED MODULE: ./src/libs/shortcut.js /** * 键盘快捷键监听 @@ -61835,7 +61917,7 @@ function ShortcutInput(_ref){var value=_ref.value,onChange=_ref.onChange,label=_ * @returns */function useFab(){var _useStorage=useStorage(config_STOKEY_FAB),data=_useStorage.data,update=_useStorage.update;return{fab:data,updateFab:update};} ;// CONCATENATED MODULE: ./src/views/Options/Setting.js -function ShortcutItem(_ref){var action=_ref.action,label=_ref.label;var _useShortcut=useShortcut(action),shortcut=_useShortcut.shortcut,setShortcut=_useShortcut.setShortcut;return/*#__PURE__*/(0,jsx_runtime.jsx)(ShortcutInput,{value:shortcut,onChange:setShortcut,label:label});}function Settings(){var i18n=useI18n();var _useSetting=useSetting(),setting=_useSetting.setting,updateSetting=_useSetting.updateSetting;var alert=useAlert();var _useFab=useFab(),fab=_useFab.fab,updateFab=_useFab.updateFab;var handleChange=function handleChange(e){e.preventDefault();var _e$target=e.target,name=_e$target.name,value=_e$target.value;switch(name){case"fetchLimit":value=limitNumber(value,1,100);break;case"fetchInterval":value=limitNumber(value,0,5000);break;case"minLength":value=limitNumber(value,1,100);break;case"maxLength":value=limitNumber(value,100,10000);break;case"newlineLength":value=limitNumber(value,1,1000);break;case"touchTranslate":value=limitNumber(value,0,4);break;case"contextMenuType":client_isExt&&msg_sendBgMsg(MSG_CONTEXT_MENUS,{contextMenuType:value});break;default:}updateSetting((0,defineProperty/* default */.Z)({},name,value));};var handleClearCache=function handleClearCache(){try{caches.delete(CACHE_NAME);alert.success(i18n("clear_success"));}catch(err){console.log("[clear cache]",err);}};var uiLang=setting.uiLang,fetchLimit=setting.fetchLimit,fetchInterval=setting.fetchInterval,minLength=setting.minLength,maxLength=setting.maxLength,clearCache=setting.clearCache,_setting$newlineLengt=setting.newlineLength,newlineLength=_setting$newlineLengt===void 0?TRANS_NEWLINE_LENGTH:_setting$newlineLengt,_setting$mouseKey=setting.mouseKey,mouseKey=_setting$mouseKey===void 0?OPT_MOUSEKEY_DISABLE:_setting$mouseKey,_setting$detectRemote=setting.detectRemote,detectRemote=_setting$detectRemote===void 0?false:_setting$detectRemote,_setting$contextMenuT=setting.contextMenuType,contextMenuType=_setting$contextMenuT===void 0?1:_setting$contextMenuT,_setting$transTitle=setting.transTitle,transTitle=_setting$transTitle===void 0?false:_setting$transTitle,_setting$touchTransla=setting.touchTranslate,touchTranslate=_setting$touchTransla===void 0?2:_setting$touchTransla,_setting$blacklist=setting.blacklist,blacklist=_setting$blacklist===void 0?DEFAULT_BLACKLIST.join(",\n"):_setting$blacklist,_setting$disableLangs=setting.disableLangs,disableLangs=_setting$disableLangs===void 0?[]:_setting$disableLangs;var _ref2=fab||{},_ref2$isHide=_ref2.isHide,isHide=_ref2$isHide===void 0?false:_ref2$isHide;return/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(FormControl_FormControl,{size:"small",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(InputLabel_InputLabel,{children:i18n("ui_lang")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Select_Select,{name:"uiLang",value:uiLang,label:i18n("ui_lang"),onChange:handleChange,children:UI_LANGS.map(function(_ref3){var _ref4=(0,slicedToArray/* default */.Z)(_ref3,2),lang=_ref4[0],name=_ref4[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("fetch_limit"),type:"number",name:"fetchLimit",defaultValue:fetchLimit,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("fetch_interval"),type:"number",name:"fetchInterval",defaultValue:fetchInterval,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("min_translate_length"),type:"number",name:"minLength",defaultValue:minLength,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("max_translate_length"),type:"number",name:"maxLength",defaultValue:maxLength,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("num_of_newline_characters"),type:"number",name:"newlineLength",defaultValue:newlineLength,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsxs)(FormControl_FormControl,{size:"small",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(InputLabel_InputLabel,{children:i18n("translate_timing")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Select_Select,{name:"mouseKey",value:mouseKey,label:i18n("translate_timing"),onChange:handleChange,children:OPT_MOUSEKEY_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:i18n(item)},item);})})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(FormControl_FormControl,{size:"small",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(InputLabel_InputLabel,{children:i18n("translate_page_title")}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Select_Select,{name:"transTitle",value:transTitle,label:i18n("translate_page_title"),onChange:handleChange,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:false,children:i18n("disable")}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:true,children:i18n("enable")})]})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(FormControl_FormControl,{size:"small",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(InputLabel_InputLabel,{children:i18n("touch_translate_shortcut")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Select_Select,{name:"touchTranslate",value:touchTranslate,label:i18n("touch_translate_shortcut"),onChange:handleChange,children:[0,2,3,4].map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:i18n("touch_tap_".concat(item))},item);})})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(FormControl_FormControl,{size:"small",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(InputLabel_InputLabel,{children:i18n("hide_fab_button")}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Select_Select,{name:"isHide",value:isHide,label:i18n("hide_fab_button"),onChange:function onChange(e){updateFab({isHide:e.target.value});},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:false,children:i18n("show")}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:true,children:i18n("hide")})]})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(FormControl_FormControl,{size:"small",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(InputLabel_InputLabel,{children:i18n("context_menus")}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Select_Select,{name:"contextMenuType",value:contextMenuType,label:i18n("context_menus"),onChange:handleChange,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:0,children:i18n("hide_context_menus")}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:1,children:i18n("simple_context_menus")}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:2,children:i18n("secondary_context_menus")})]})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(FormControl_FormControl,{size:"small",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(InputLabel_InputLabel,{children:i18n("detect_lang_remote")}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Select_Select,{name:"detectRemote",value:detectRemote,label:i18n("detect_lang_remote"),onChange:handleChange,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:false,children:i18n("disable")}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:true,children:i18n("enable")})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(FormHelperText_FormHelperText,{children:i18n("detect_lang_remote_help")})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(FormControl_FormControl,{size:"small",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(InputLabel_InputLabel,{children:i18n("disable_langs")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Select_Select,{multiple:true,name:"disableLangs",value:disableLangs,label:i18n("disable_langs"),onChange:handleChange,children:OPT_LANGS_TO.map(function(_ref5){var _ref6=(0,slicedToArray/* default */.Z)(_ref5,2),langKey=_ref6[0],langName=_ref6[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:langKey,children:langName},langKey);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(FormHelperText_FormHelperText,{children:i18n("disable_langs_helper")})]}),client_isExt?/*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(FormControl_FormControl,{size:"small",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(InputLabel_InputLabel,{children:i18n("if_clear_cache")}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Select_Select,{name:"clearCache",value:clearCache,label:i18n("if_clear_cache"),onChange:handleChange,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:false,children:i18n("clear_cache_never")}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:true,children:i18n("clear_cache_restart")})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(FormHelperText_FormHelperText,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{component:"button",onClick:handleClearCache,children:i18n("clear_all_cache_now")})})]})}):/*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Grid_Grid,{container:true,spacing:2,columns:12,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:12,md:3,lg:3,children:/*#__PURE__*/(0,jsx_runtime.jsx)(ShortcutItem,{action:OPT_SHORTCUT_TRANSLATE,label:i18n("toggle_translate_shortcut")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:12,md:3,lg:3,children:/*#__PURE__*/(0,jsx_runtime.jsx)(ShortcutItem,{action:OPT_SHORTCUT_STYLE,label:i18n("toggle_style_shortcut")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:12,md:3,lg:3,children:/*#__PURE__*/(0,jsx_runtime.jsx)(ShortcutItem,{action:OPT_SHORTCUT_POPUP,label:i18n("toggle_popup_shortcut")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:12,md:3,lg:3,children:/*#__PURE__*/(0,jsx_runtime.jsx)(ShortcutItem,{action:OPT_SHORTCUT_SETTING,label:i18n("open_setting_shortcut")})})]})})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("translate_blacklist"),helperText:i18n("pattern_helper"),name:"blacklist",defaultValue:blacklist,onChange:handleChange,multiline:true})]})});} +function ShortcutItem(_ref){var action=_ref.action,label=_ref.label;var _useShortcut=useShortcut(action),shortcut=_useShortcut.shortcut,setShortcut=_useShortcut.setShortcut;return/*#__PURE__*/(0,jsx_runtime.jsx)(ShortcutInput,{value:shortcut,onChange:setShortcut,label:label});}function Settings(){var i18n=useI18n();var _useSetting=useSetting(),setting=_useSetting.setting,updateSetting=_useSetting.updateSetting;var alert=useAlert();var _useFab=useFab(),fab=_useFab.fab,updateFab=_useFab.updateFab;var handleChange=function handleChange(e){e.preventDefault();var _e$target=e.target,name=_e$target.name,value=_e$target.value;switch(name){case"fetchLimit":value=limitNumber(value,1,100);break;case"fetchInterval":value=limitNumber(value,0,5000);break;case"transInterval":value=limitNumber(value,100,5000);break;case"minLength":value=limitNumber(value,1,100);break;case"maxLength":value=limitNumber(value,100,10000);break;case"newlineLength":value=limitNumber(value,1,1000);break;case"touchTranslate":value=limitNumber(value,0,4);break;case"contextMenuType":client_isExt&&msg_sendBgMsg(MSG_CONTEXT_MENUS,{contextMenuType:value});break;default:}updateSetting((0,defineProperty/* default */.Z)({},name,value));};var handleClearCache=function handleClearCache(){try{caches.delete(CACHE_NAME);alert.success(i18n("clear_success"));}catch(err){log_kissLog(err,"clear cache");}};var uiLang=setting.uiLang,minLength=setting.minLength,maxLength=setting.maxLength,clearCache=setting.clearCache,_setting$newlineLengt=setting.newlineLength,newlineLength=_setting$newlineLengt===void 0?TRANS_NEWLINE_LENGTH:_setting$newlineLengt,_setting$contextMenuT=setting.contextMenuType,contextMenuType=_setting$contextMenuT===void 0?1:_setting$contextMenuT,_setting$touchTransla=setting.touchTranslate,touchTranslate=_setting$touchTransla===void 0?2:_setting$touchTransla,_setting$blacklist=setting.blacklist,blacklist=_setting$blacklist===void 0?DEFAULT_BLACKLIST.join(",\n"):_setting$blacklist,_setting$transInterva=setting.transInterval,transInterval=_setting$transInterva===void 0?500:_setting$transInterva;var _ref2=fab||{},_ref2$isHide=_ref2.isHide,isHide=_ref2$isHide===void 0?false:_ref2$isHide;return/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(FormControl_FormControl,{size:"small",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(InputLabel_InputLabel,{children:i18n("ui_lang")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Select_Select,{name:"uiLang",value:uiLang,label:i18n("ui_lang"),onChange:handleChange,children:UI_LANGS.map(function(_ref3){var _ref4=(0,slicedToArray/* default */.Z)(_ref3,2),lang=_ref4[0],name=_ref4[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("min_translate_length"),type:"number",name:"minLength",defaultValue:minLength,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("max_translate_length"),type:"number",name:"maxLength",defaultValue:maxLength,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("num_of_newline_characters"),type:"number",name:"newlineLength",defaultValue:newlineLength,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("translate_interval"),type:"number",name:"transInterval",defaultValue:transInterval,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsxs)(FormControl_FormControl,{size:"small",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(InputLabel_InputLabel,{children:i18n("touch_translate_shortcut")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Select_Select,{name:"touchTranslate",value:touchTranslate,label:i18n("touch_translate_shortcut"),onChange:handleChange,children:[0,2,3,4].map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:i18n("touch_tap_".concat(item))},item);})})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(FormControl_FormControl,{size:"small",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(InputLabel_InputLabel,{children:i18n("hide_fab_button")}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Select_Select,{name:"isHide",value:isHide,label:i18n("hide_fab_button"),onChange:function onChange(e){updateFab({isHide:e.target.value});},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:false,children:i18n("show")}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:true,children:i18n("hide")})]})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(FormControl_FormControl,{size:"small",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(InputLabel_InputLabel,{children:i18n("context_menus")}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Select_Select,{name:"contextMenuType",value:contextMenuType,label:i18n("context_menus"),onChange:handleChange,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:0,children:i18n("hide_context_menus")}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:1,children:i18n("simple_context_menus")}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:2,children:i18n("secondary_context_menus")})]})]}),client_isExt?/*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(FormControl_FormControl,{size:"small",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(InputLabel_InputLabel,{children:i18n("if_clear_cache")}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Select_Select,{name:"clearCache",value:clearCache,label:i18n("if_clear_cache"),onChange:handleChange,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:false,children:i18n("clear_cache_never")}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:true,children:i18n("clear_cache_restart")})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(FormHelperText_FormHelperText,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{component:"button",onClick:handleClearCache,children:i18n("clear_all_cache_now")})})]})}):/*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Grid_Grid,{container:true,spacing:2,columns:12,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:12,md:3,lg:3,children:/*#__PURE__*/(0,jsx_runtime.jsx)(ShortcutItem,{action:OPT_SHORTCUT_TRANSLATE,label:i18n("toggle_translate_shortcut")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:12,md:3,lg:3,children:/*#__PURE__*/(0,jsx_runtime.jsx)(ShortcutItem,{action:OPT_SHORTCUT_STYLE,label:i18n("toggle_style_shortcut")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:12,md:3,lg:3,children:/*#__PURE__*/(0,jsx_runtime.jsx)(ShortcutItem,{action:OPT_SHORTCUT_POPUP,label:i18n("toggle_popup_shortcut")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:12,sm:12,md:3,lg:3,children:/*#__PURE__*/(0,jsx_runtime.jsx)(ShortcutItem,{action:OPT_SHORTCUT_SETTING,label:i18n("open_setting_shortcut")})})]})})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("translate_blacklist"),helperText:i18n("pattern_helper"),name:"blacklist",defaultValue:blacklist,onChange:handleChange,multiline:true})]})});} // EXTERNAL MODULE: ./node_modules/.pnpm/@mui+system@5.14.10_@emotion+react@11.11.1_@emotion+styled@11.11.0_@types+react@18.2.22_react@18.2.0/node_modules/@mui/system/esm/useThemeWithoutDefault.js var useThemeWithoutDefault = __webpack_require__(9803); // EXTERNAL MODULE: ./node_modules/.pnpm/@mui+system@5.14.10_@emotion+react@11.11.1_@emotion+styled@11.11.0_@types+react@18.2.22_react@18.2.0/node_modules/@mui/system/esm/useThemeProps/getThemeProps.js @@ -62993,8 +63075,6 @@ var icons_material_Info = __webpack_require__(6954); var DesignServices = __webpack_require__(184); // EXTERNAL MODULE: ./node_modules/.pnpm/@mui+icons-material@5.14.9_@mui+material@5.14.10_@types+react@18.2.22_react@18.2.0/node_modules/@mui/icons-material/Api.js var Api = __webpack_require__(719); -// EXTERNAL MODULE: ./node_modules/.pnpm/@mui+icons-material@5.14.9_@mui+material@5.14.10_@types+react@18.2.22_react@18.2.0/node_modules/@mui/icons-material/SendTimeExtension.js -var SendTimeExtension = __webpack_require__(1611); // EXTERNAL MODULE: ./node_modules/.pnpm/@mui+icons-material@5.14.9_@mui+material@5.14.10_@types+react@18.2.22_react@18.2.0/node_modules/@mui/icons-material/Input.js var icons_material_Input = __webpack_require__(2290); // EXTERNAL MODULE: ./node_modules/.pnpm/@mui+icons-material@5.14.9_@mui+material@5.14.10_@types+react@18.2.22_react@18.2.0/node_modules/@mui/icons-material/SelectAll.js @@ -63002,7 +63082,7 @@ var SelectAll = __webpack_require__(7352); // EXTERNAL MODULE: ./node_modules/.pnpm/@mui+icons-material@5.14.9_@mui+material@5.14.10_@types+react@18.2.22_react@18.2.0/node_modules/@mui/icons-material/EventNote.js var EventNote = __webpack_require__(9580); ;// CONCATENATED MODULE: ./src/views/Options/Navigator.js -function LinkItem(_ref){var label=_ref.label,url=_ref.url,icon=_ref.icon;var match=useMatch(url);return/*#__PURE__*/(0,jsx_runtime.jsxs)(ListItemButton_ListItemButton,{component:NavLink,to:url,selected:!!match,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(ListItemIcon_ListItemIcon,{children:icon}),/*#__PURE__*/(0,jsx_runtime.jsx)(ListItemText_ListItemText,{children:label})]});}function Navigator(props){var i18n=useI18n();var memus=[{id:"basic_setting",label:i18n("basic_setting"),url:"/",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Settings/* default */.Z,{})},{id:"rules_setting",label:i18n("rules_setting"),url:"/rules",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(DesignServices/* default */.Z,{})},{id:"input_translate",label:i18n("input_translate"),url:"/input",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Input/* default */.Z,{})},{id:"selection_translate",label:i18n("selection_translate"),url:"/tranbox",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(SelectAll/* default */.Z,{})},{id:"apis_setting",label:i18n("apis_setting"),url:"/apis",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(Api/* default */.Z,{})},{id:"sync",label:i18n("sync_setting"),url:"/sync",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(Sync/* default */.Z,{})},{id:"webfix",label:i18n("patch_setting"),url:"/webfix",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(SendTimeExtension/* default */.Z,{})},{id:"words",label:i18n("favorite_words"),url:"/words",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(EventNote/* default */.Z,{})},{id:"about",label:i18n("about"),url:"/about",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Info/* default */.Z,{})}];return/*#__PURE__*/(0,jsx_runtime.jsxs)(Drawer_Drawer,_objectSpread2(_objectSpread2({},props),{},{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Toolbar_Toolbar,{variant:"dense"}),/*#__PURE__*/(0,jsx_runtime.jsx)(List_List,{component:"nav",children:memus.map(function(_ref2){var id=_ref2.id,label=_ref2.label,url=_ref2.url,icon=_ref2.icon;return/*#__PURE__*/(0,jsx_runtime.jsx)(LinkItem,{label:label,url:url,icon:icon},id);})})]}));} +function LinkItem(_ref){var label=_ref.label,url=_ref.url,icon=_ref.icon;var match=useMatch(url);return/*#__PURE__*/(0,jsx_runtime.jsxs)(ListItemButton_ListItemButton,{component:NavLink,to:url,selected:!!match,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(ListItemIcon_ListItemIcon,{children:icon}),/*#__PURE__*/(0,jsx_runtime.jsx)(ListItemText_ListItemText,{children:label})]});}function Navigator(props){var i18n=useI18n();var memus=[{id:"basic_setting",label:i18n("basic_setting"),url:"/",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Settings/* default */.Z,{})},{id:"rules_setting",label:i18n("rules_setting"),url:"/rules",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(DesignServices/* default */.Z,{})},{id:"input_translate",label:i18n("input_translate"),url:"/input",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Input/* default */.Z,{})},{id:"selection_translate",label:i18n("selection_translate"),url:"/tranbox",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(SelectAll/* default */.Z,{})},{id:"apis_setting",label:i18n("apis_setting"),url:"/apis",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(Api/* default */.Z,{})},{id:"sync",label:i18n("sync_setting"),url:"/sync",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(Sync/* default */.Z,{})},{id:"words",label:i18n("favorite_words"),url:"/words",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(EventNote/* default */.Z,{})},{id:"about",label:i18n("about"),url:"/about",icon:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Info/* default */.Z,{})}];return/*#__PURE__*/(0,jsx_runtime.jsxs)(Drawer_Drawer,_objectSpread2(_objectSpread2({},props),{},{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Toolbar_Toolbar,{variant:"dense"}),/*#__PURE__*/(0,jsx_runtime.jsx)(List_List,{component:"nav",children:memus.map(function(_ref2){var id=_ref2.id,label=_ref2.label,url=_ref2.url,icon=_ref2.icon;return/*#__PURE__*/(0,jsx_runtime.jsx)(LinkItem,{label:label,url:url,icon:icon},id);})})]}));} ;// CONCATENATED MODULE: ./node_modules/.pnpm/@mui+material@5.14.10_@emotion+react@11.11.1_@emotion+styled@11.11.0_@types+react@18.2.22_react-dom@18.2.0_react@18.2.0/node_modules/@mui/material/AppBar/appBarClasses.js @@ -63162,11 +63242,11 @@ var DarkMode = __webpack_require__(2675); ;// CONCATENATED MODULE: ./src/views/Options/DarkModeButton.js function DarkModeButton(){var _useDarkMode=useDarkMode(),darkMode=_useDarkMode.darkMode,toggleDarkMode=_useDarkMode.toggleDarkMode;return/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:toggleDarkMode,color:"inherit",children:darkMode?/*#__PURE__*/(0,jsx_runtime.jsx)(LightMode/* default */.Z,{}):/*#__PURE__*/(0,jsx_runtime.jsx)(DarkMode/* default */.Z,{})});} ;// CONCATENATED MODULE: ./src/views/Options/Header.js -function Header(props){var i18n=useI18n();var onDrawerToggle=props.onDrawerToggle;return/*#__PURE__*/(0,jsx_runtime.jsx)(AppBar_AppBar,{color:"primary",position:"sticky",sx:{zIndex:1300},children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Toolbar_Toolbar,{variant:"dense",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{sx:{display:{sm:"none",xs:"block"}},children:/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{color:"inherit","aria-label":"open drawer",onClick:onDrawerToggle,edge:"start",children:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Menu/* default */.Z,{})})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{component:"div",sx:{flexGrow:1,fontWeight:"bold"},children:/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{underline:"none",color:"inherit",href:"https://github.com/fishjar/kiss-translator",target:"_blank",children:"".concat(i18n("app_name")," v").concat("1.8.3")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(DarkModeButton,{})]})});}/* harmony default export */ var Options_Header = (Header); +function Header(props){var i18n=useI18n();var onDrawerToggle=props.onDrawerToggle;return/*#__PURE__*/(0,jsx_runtime.jsx)(AppBar_AppBar,{color:"primary",position:"sticky",sx:{zIndex:1300},children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Toolbar_Toolbar,{variant:"dense",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{sx:{display:{sm:"none",xs:"block"}},children:/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{color:"inherit","aria-label":"open drawer",onClick:onDrawerToggle,edge:"start",children:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Menu/* default */.Z,{})})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{component:"div",sx:{flexGrow:1,fontWeight:"bold"},children:/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{underline:"none",color:"inherit",href:"https://github.com/fishjar/kiss-translator",target:"_blank",children:"".concat(i18n("app_name")," v").concat("1.8.4")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(DarkModeButton,{})]})});}/* harmony default export */ var Options_Header = (Header); ;// CONCATENATED MODULE: ./src/views/Options/Layout.js function Layout(){var navWidth=256;var location=dist_useLocation();var theme=useTheme_useTheme();var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),open=_useState2[0],setOpen=_useState2[1];var isSm=useMediaQuery(theme.breakpoints.up("sm"));var handleDrawerToggle=function handleDrawerToggle(){setOpen(!open);};(0,react.useEffect)(function(){setOpen(false);},[location]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(CssBaseline_CssBaseline,{}),/*#__PURE__*/(0,jsx_runtime.jsx)(Options_Header,{onDrawerToggle:handleDrawerToggle}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{sx:{display:"flex"},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{component:"nav",sx:{width:{sm:navWidth},flexShrink:{sm:0}},children:/*#__PURE__*/(0,jsx_runtime.jsx)(Navigator,{PaperProps:{style:{width:navWidth}},variant:isSm?"permanent":"temporary",open:isSm?true:open,onClose:handleDrawerToggle})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{component:"main",sx:{flex:1,p:2},children:/*#__PURE__*/(0,jsx_runtime.jsx)(Outlet,{})})]})]});} ;// CONCATENATED MODULE: ./src/views/Options/SyncSetting.js -function SyncSetting(){var i18n=useI18n();var _useSync=useSync(),sync=_useSync.sync,updateSync=_useSync.updateSync;var alert=useAlert();var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useSetting=useSetting(),reloadSetting=_useSetting.reloadSetting;var handleChange=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(e){var _e$target,name,value;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:e.preventDefault();_e$target=e.target,name=_e$target.name,value=_e$target.value;_context.next=4;return updateSync((0,defineProperty/* default */.Z)({},name,value));case 4:case"end":return _context.stop();}},_callee);}));return function handleChange(_x){return _ref.apply(this,arguments);};}();var handleSyncTest=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(e){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:e.preventDefault();_context2.prev=1;setLoading(true);_context2.next=5;return syncSettingAndRules();case 5:_context2.next=7;return reloadSetting();case 7:alert.success(i18n("sync_success"));_context2.next=14;break;case 10:_context2.prev=10;_context2.t0=_context2["catch"](1);console.log("[sync all]",_context2.t0);alert.error(i18n("sync_failed"));case 14:_context2.prev=14;setLoading(false);return _context2.finish(14);case 17:case"end":return _context2.stop();}},_callee2,null,[[1,10,14,17]]);}));return function handleSyncTest(_x2){return _ref2.apply(this,arguments);};}();if(!sync){return;}var _sync$syncType=sync.syncType,syncType=_sync$syncType===void 0?OPT_SYNCTYPE_WORKER:_sync$syncType,_sync$syncUrl=sync.syncUrl,syncUrl=_sync$syncUrl===void 0?"":_sync$syncUrl,_sync$syncUser=sync.syncUser,syncUser=_sync$syncUser===void 0?"":_sync$syncUser,_sync$syncKey=sync.syncKey,syncKey=_sync$syncKey===void 0?"":_sync$syncKey;return/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Alert_Alert,{severity:"warning",children:i18n("sync_warn")}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,size:"small",name:"syncType",value:syncType,label:i18n("data_sync_type"),onChange:handleChange,children:OPT_SYNCTYPE_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:item},item);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("data_sync_url"),name:"syncUrl",value:syncUrl,onChange:handleChange,helperText:syncType===OPT_SYNCTYPE_WORKER&&/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:URL_KISS_WORKER,target:"_blank",children:i18n("about_sync_api")})}),syncType===OPT_SYNCTYPE_WEBDAV&&/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("data_sync_user"),name:"syncUser",value:syncUser,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",type:"password",label:i18n("data_sync_key"),name:"syncKey",value:syncKey,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",spacing:2,useFlexGap:true,flexWrap:"wrap",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",disabled:!syncUrl||!syncKey||loading,onClick:handleSyncTest,startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(Sync/* default */.Z,{}),children:i18n("sync_now")}),loading&&/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:16})]})]})});} +function SyncSetting(){var i18n=useI18n();var _useSync=useSync(),sync=_useSync.sync,updateSync=_useSync.updateSync;var alert=useAlert();var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useSetting=useSetting(),reloadSetting=_useSetting.reloadSetting;var handleChange=/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(e){var _e$target,name,value;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:e.preventDefault();_e$target=e.target,name=_e$target.name,value=_e$target.value;_context.next=4;return updateSync((0,defineProperty/* default */.Z)({},name,value));case 4:case"end":return _context.stop();}},_callee);}));return function handleChange(_x){return _ref.apply(this,arguments);};}();var handleSyncTest=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(e){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:e.preventDefault();_context2.prev=1;setLoading(true);_context2.next=5;return syncSettingAndRules();case 5:_context2.next=7;return reloadSetting();case 7:alert.success(i18n("sync_success"));_context2.next=14;break;case 10:_context2.prev=10;_context2.t0=_context2["catch"](1);log_kissLog(_context2.t0,"sync all");alert.error(i18n("sync_failed"));case 14:_context2.prev=14;setLoading(false);return _context2.finish(14);case 17:case"end":return _context2.stop();}},_callee2,null,[[1,10,14,17]]);}));return function handleSyncTest(_x2){return _ref2.apply(this,arguments);};}();if(!sync){return;}var _sync$syncType=sync.syncType,syncType=_sync$syncType===void 0?OPT_SYNCTYPE_WORKER:_sync$syncType,_sync$syncUrl=sync.syncUrl,syncUrl=_sync$syncUrl===void 0?"":_sync$syncUrl,_sync$syncUser=sync.syncUser,syncUser=_sync$syncUser===void 0?"":_sync$syncUser,_sync$syncKey=sync.syncKey,syncKey=_sync$syncKey===void 0?"":_sync$syncKey;return/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Alert_Alert,{severity:"warning",children:i18n("sync_warn")}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,size:"small",name:"syncType",value:syncType,label:i18n("data_sync_type"),onChange:handleChange,children:OPT_SYNCTYPE_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:item},item);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("data_sync_url"),name:"syncUrl",value:syncUrl,onChange:handleChange,helperText:syncType===OPT_SYNCTYPE_WORKER&&/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:URL_KISS_WORKER,target:"_blank",children:i18n("about_sync_api")})}),syncType===OPT_SYNCTYPE_WEBDAV&&/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("data_sync_user"),name:"syncUser",value:syncUser,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",type:"password",label:i18n("data_sync_key"),name:"syncKey",value:syncKey,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",spacing:2,useFlexGap:true,flexWrap:"wrap",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",disabled:!syncUrl||!syncKey||loading,onClick:handleSyncTest,startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(Sync/* default */.Z,{}),children:i18n("sync_now")}),loading&&/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:16})]})]})});} ;// CONCATENATED MODULE: ./node_modules/.pnpm/@mui+private-theming@5.14.10_@types+react@18.2.22_react@18.2.0/node_modules/@mui/private-theming/useTheme/ThemeContext.js var ThemeContext_ThemeContext = /*#__PURE__*/react.createContext(null); @@ -63516,7 +63596,7 @@ Divider.muiSkipListHighlight = true; var MSG_GM_xmlHttpRequest="xmlHttpRequest";var MSG_GM_setValue="setValue";var MSG_GM_getValue="getValue";var MSG_GM_deleteValue="deleteValue";var MSG_GM_info="info";/** * 注入页面的脚本,请求并接受GM接口信息 * @param {*} param0 - */var injectScript=function injectScript(ping){window.APP_INFO={name:"KISS Translator",version:"1.8.3",eventName:ping};};/** + */var injectScript=function injectScript(ping){window.APP_INFO={name:"KISS Translator",version:"1.8.4",eventName:ping};};/** * 适配GM脚本 */var adaptScript=function adaptScript(ping){var promiseGM=function promiseGM(action,args){var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:5000;return new Promise(function(resolve,reject){var pong=genEventName();var handleEvent=function handleEvent(e){window.removeEventListener(pong,handleEvent);var _e$detail=e.detail,data=_e$detail.data,error=_e$detail.error;if(error){reject(new Error(error));}else{resolve(data);}};window.addEventListener(pong,handleEvent);window.dispatchEvent(new CustomEvent(ping,{detail:{action:action,args:args,pong:pong}}));setTimeout(function(){window.removeEventListener(pong,handleEvent);reject(new Error("timeout"));},timeout);});};window.KISS_GM={fetch:function fetch(input,init){return promiseGM(MSG_GM_xmlHttpRequest,{input:input,init:init});},setValue:function setValue(key,val){return promiseGM(MSG_GM_setValue,{key:key,val:val});},getValue:function getValue(key){return promiseGM(MSG_GM_getValue,{key:key});},deleteValue:function deleteValue(key){return promiseGM(MSG_GM_deleteValue,{key:key});},getInfo:function(){var _getInfo=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:if(window.GM_info){_context.next=4;break;}_context.next=3;return promiseGM(MSG_GM_info);case 3:window.GM_info=_context.sent;case 4:return _context.abrupt("return",window.GM_info);case 5:case"end":return _context.stop();}},_callee);}));function getInfo(){return _getInfo.apply(this,arguments);}return getInfo;}()};};/** * 监听并回应页面对GM接口的请求 @@ -63525,19 +63605,9 @@ var MSG_GM_xmlHttpRequest="xmlHttpRequest";var MSG_GM_setValue="setValue";var MS ;// CONCATENATED MODULE: ./src/hooks/Api.js function useApi(translator){var _useSetting=useSetting(),setting=_useSetting.setting,updateSetting=_useSetting.updateSetting;var transApis=(setting===null||setting===void 0?void 0:setting.transApis)||DEFAULT_TRANS_APIS;var updateApi=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(obj){var api;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:api=transApis[translator]||{};Object.assign(transApis,(0,defineProperty/* default */.Z)({},translator,_objectSpread2(_objectSpread2({},api),obj)));_context.next=4;return updateSetting({transApis:transApis});case 4:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[translator,transApis,updateSetting]);var resetApi=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:Object.assign(transApis,(0,defineProperty/* default */.Z)({},translator,DEFAULT_TRANS_APIS[translator]));_context2.next=3;return updateSetting({transApis:transApis});case 3:case"end":return _context2.stop();}},_callee2);})),[translator,transApis,updateSetting]);return{api:transApis[translator]||{},updateApi:updateApi,resetApi:resetApi};} ;// CONCATENATED MODULE: ./src/views/Options/Apis.js -function TestButton(_ref){var translator=_ref.translator,api=_ref.api;var i18n=useI18n();var alert=useAlert();var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var handleApiTest=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var _yield$apiTranslate,_yield$apiTranslate2,text;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);_context.next=4;return apiTranslate({translator:translator,text:"hello world",fromLang:"en",toLang:"zh-CN",apiSetting:api,useCache:false});case 4:_yield$apiTranslate=_context.sent;_yield$apiTranslate2=(0,slicedToArray/* default */.Z)(_yield$apiTranslate,1);text=_yield$apiTranslate2[0];if(text){_context.next=9;break;}throw new Error("empty reault");case 9:alert.success(i18n("test_success"));_context.next=15;break;case 12:_context.prev=12;_context.t0=_context["catch"](0);// alert.error(`${i18n("test_failed")}: ${err.message}`); -alert.error(/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)("div",{children:"".concat(i18n("test_failed"),": ").concat(_context.t0.message)}),/*#__PURE__*/(0,jsx_runtime.jsx)("pre",{style:{maxWidth:400,overflow:"auto"},children:JSON.stringify(_context.t0.cause||{},null,2)})]}));case 15:_context.prev=15;setLoading(false);return _context.finish(15);case 18:case"end":return _context.stop();}},_callee,null,[[0,12,15,18]]);}));return function handleApiTest(){return _ref2.apply(this,arguments);};}();if(loading){return/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:16});}return/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",onClick:handleApiTest,children:i18n("click_test")});}function ApiFields(_ref3){var translator=_ref3.translator;var i18n=useI18n();var _useApi=useApi(translator),api=_useApi.api,updateApi=_useApi.updateApi,resetApi=_useApi.resetApi;var _api$url=api.url,url=_api$url===void 0?"":_api$url,_api$key=api.key,key=_api$key===void 0?"":_api$key,_api$model=api.model,model=_api$model===void 0?"":_api$model,_api$prompt=api.prompt,prompt=_api$prompt===void 0?"":_api$prompt;var handleChange=function handleChange(e){var _e$target=e.target,name=_e$target.name,value=_e$target.value;updateApi((0,defineProperty/* default */.Z)({},name,value));};var buildinTranslators=[OPT_TRANS_MICROSOFT,OPT_TRANS_DEEPLFREE,OPT_TRANS_BAIDU,OPT_TRANS_TENCENT];var mulkeysTranslators=[OPT_TRANS_DEEPL,OPT_TRANS_OPENAI,OPT_TRANS_GEMINI,OPT_TRANS_CLOUDFLAREAI];return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[!buildinTranslators.includes(translator)&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:"URL",name:"url",value:url,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:"KEY",name:"key",value:key,onChange:handleChange,multiline:mulkeysTranslators.includes(translator),helperText:mulkeysTranslators.includes(translator)?i18n("mulkeys_help"):""})]}),(translator===OPT_TRANS_OPENAI||translator===OPT_TRANS_GEMINI)&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:"MODEL",name:"model",value:model,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:"PROMPT",name:"prompt",value:prompt,onChange:handleChange,multiline:true})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(TestButton,{translator:translator,api:api}),!buildinTranslators.includes(translator)&&/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:function onClick(){resetApi();},children:i18n("restore_default")})]}),translator===OPT_TRANS_CUSTOMIZE&&/*#__PURE__*/(0,jsx_runtime.jsx)("pre",{children:i18n("custom_api_help")})]});}function ApiAccordion(_ref4){var translator=_ref4.translator;var _useState3=(0,react.useState)(false),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),expanded=_useState4[0],setExpanded=_useState4[1];var handleChange=function handleChange(e){setExpanded(function(pre){return!pre;});};return/*#__PURE__*/(0,jsx_runtime.jsxs)(Accordion_Accordion,{expanded:expanded,onChange:handleChange,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(AccordionSummary_AccordionSummary,{expandIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(ExpandMore/* default */.Z,{}),children:/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{children:translator})}),/*#__PURE__*/(0,jsx_runtime.jsx)(AccordionDetails_AccordionDetails,{children:expanded&&/*#__PURE__*/(0,jsx_runtime.jsx)(ApiFields,{translator:translator})})]});}function Apis(){var i18n=useI18n();return/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Alert_Alert,{severity:"info",children:/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:URL_KISS_PROXY,target:"_blank",children:i18n("about_api_proxy")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:OPT_TRANS_ALL.map(function(translator){return/*#__PURE__*/(0,jsx_runtime.jsx)(ApiAccordion,{translator:translator},translator);})})]})});} -;// CONCATENATED MODULE: ./src/hooks/WebfixRules.js -var DEFAULT_WFRULES=[];/** - * 修复规则 hook - * @returns - */function useWebfixRules(){var _useStorage=useStorage(STOKEY_WFRULES,DEFAULT_WFRULES),list=_useStorage.data,save=_useStorage.save;var _useSyncMeta=useSyncMeta(),updateSyncMeta=_useSyncMeta.updateSyncMeta;var updateRules=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(rules){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.next=2;return save(rules);case 2:_context.next=4;return updateSyncMeta(KV_WFRULES_KEY);case 4:trySyncWebfixRules();case 5:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[save,updateSyncMeta]);var add=(0,react.useCallback)(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(rule){var rules;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:rules=(0,toConsumableArray/* default */.Z)(list);if(!rules.map(function(item){return item.pattern;}).includes(rule.pattern)){_context2.next=3;break;}return _context2.abrupt("return");case 3:rules.unshift(rule);_context2.next=6;return updateRules(rules);case 6:case"end":return _context2.stop();}},_callee2);}));return function(_x2){return _ref2.apply(this,arguments);};}(),[list,updateRules]);var del=(0,react.useCallback)(/*#__PURE__*/function(){var _ref3=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(pattern){var rules;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:rules=(0,toConsumableArray/* default */.Z)(list);rules=rules.filter(function(item){return item.pattern!==pattern;});_context3.next=4;return updateRules(rules);case 4:case"end":return _context3.stop();}},_callee3);}));return function(_x3){return _ref3.apply(this,arguments);};}(),[list,updateRules]);var put=(0,react.useCallback)(/*#__PURE__*/function(){var _ref4=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(pattern,obj){var rules,rule;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:rules=(0,toConsumableArray/* default */.Z)(list);rule=rules.find(function(r){return r.pattern===pattern;});rule&&Object.assign(rule,obj);_context4.next=5;return updateRules(rules);case 5:case"end":return _context4.stop();}},_callee4);}));return function(_x4,_x5){return _ref4.apply(this,arguments);};}(),[list,updateRules]);return{list:list,add:add,del:del,put:put};} -;// CONCATENATED MODULE: ./src/views/Options/Webfix.js -function WebfixFields(_ref){var rule=_ref.rule,webfix=_ref.webfix,setShow=_ref.setShow;var editMode=!!rule;var initFormValues=rule||{pattern:"",selector:"",rootSelector:"",fixer:FIXER_ALL[0]};var i18n=useI18n();var _useState=(0,react.useState)(editMode),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),disabled=_useState2[0],setDisabled=_useState2[1];var _useState3=(0,react.useState)({}),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),errors=_useState4[0],setErrors=_useState4[1];var _useState5=(0,react.useState)(initFormValues),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),formValues=_useState6[0],setFormValues=_useState6[1];var pattern=formValues.pattern,selector=formValues.selector,rootSelector=formValues.rootSelector,fixer=formValues.fixer;var hasSamePattern=function hasSamePattern(str){var _iterator=createForOfIteratorHelper_createForOfIteratorHelper(webfix.list||[]),_step;try{for(_iterator.s();!(_step=_iterator.n()).done;){var item=_step.value;if(item.pattern===str&&(rule===null||rule===void 0?void 0:rule.pattern)!==str){return true;}}}catch(err){_iterator.e(err);}finally{_iterator.f();}return false;};var handleFocus=function handleFocus(e){e.preventDefault();var name=e.target.name;setErrors(function(pre){return _objectSpread2(_objectSpread2({},pre),{},(0,defineProperty/* default */.Z)({},name,""));});};var handleChange=function handleChange(e){e.preventDefault();var _e$target=e.target,name=_e$target.name,value=_e$target.value;setFormValues(function(pre){return _objectSpread2(_objectSpread2({},pre),{},(0,defineProperty/* default */.Z)({},name,value));});};var handleCancel=function handleCancel(e){e.preventDefault();if(editMode){setDisabled(true);}else{setShow(false);}setFormValues(initFormValues);};var handleSubmit=function handleSubmit(e){e.preventDefault();var errors={};if(!pattern.trim()){errors.pattern=i18n("error_cant_be_blank");}if(hasSamePattern(pattern)){errors.pattern=i18n("error_duplicate_values");}if(!selector.trim()){errors.selector=i18n("error_cant_be_blank");}if(Object.keys(errors).length>0){setErrors(errors);return;}if(editMode){// 编辑 -setDisabled(true);webfix.put(rule.pattern,formValues);}else{// 添加 -webfix.add(formValues);setShow(false);setFormValues(initFormValues);}};return/*#__PURE__*/(0,jsx_runtime.jsx)("form",{onSubmit:handleSubmit,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("pattern"),error:!!errors.pattern,helperText:errors.pattern,name:"pattern",value:pattern,disabled:disabled,onChange:handleChange,onFocus:handleFocus,multiline:true}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("root_selector"),error:!!errors.rootSelector,helperText:errors.rootSelector,name:"rootSelector",value:rootSelector,disabled:disabled,onChange:handleChange,onFocus:handleFocus,multiline:true}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("selector"),error:!!errors.selector,helperText:errors.selector,name:"selector",value:selector,disabled:disabled,onChange:handleChange,onFocus:handleFocus,multiline:true}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,size:"small",name:"fixer",value:fixer,label:i18n("fixer_function"),disabled:disabled,onChange:handleChange,children:FIXER_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:item},item);})}),webfix&&(editMode?/*#__PURE__*/ // 编辑 -(0,jsx_runtime.jsx)(Stack_Stack,{direction:"row",spacing:2,children:disabled?/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",onClick:function onClick(e){e.preventDefault();setDisabled(false);},children:i18n("edit")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:function onClick(e){e.preventDefault();webfix.del(rule.pattern);},children:i18n("delete")})]}):/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",type:"submit",children:i18n("save")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:handleCancel,children:i18n("cancel")})]})}):/*#__PURE__*/ // 添加 -(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",type:"submit",children:i18n("save")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:handleCancel,children:i18n("cancel")})]}))]})});}function WebfixAccordion(_ref2){var rule=_ref2.rule,webfix=_ref2.webfix;var _useState7=(0,react.useState)(false),_useState8=(0,slicedToArray/* default */.Z)(_useState7,2),expanded=_useState8[0],setExpanded=_useState8[1];var handleChange=function handleChange(e){setExpanded(function(pre){return!pre;});};return/*#__PURE__*/(0,jsx_runtime.jsxs)(Accordion_Accordion,{expanded:expanded,onChange:handleChange,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(AccordionSummary_AccordionSummary,{expandIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(ExpandMore/* default */.Z,{}),children:/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{sx:{opacity:webfix?1:0.5,overflowWrap:"anywhere"},children:rule.pattern})}),/*#__PURE__*/(0,jsx_runtime.jsx)(AccordionDetails_AccordionDetails,{children:expanded&&/*#__PURE__*/(0,jsx_runtime.jsx)(WebfixFields,{rule:rule,webfix:webfix})})]});}function Webfix(){var _webfix$list;var _useState9=(0,react.useState)(false),_useState10=(0,slicedToArray/* default */.Z)(_useState9,2),loading=_useState10[0],setLoading=_useState10[1];var _useState11=(0,react.useState)([]),_useState12=(0,slicedToArray/* default */.Z)(_useState11,2),sites=_useState12[0],setSites=_useState12[1];var i18n=useI18n();var alert=useAlert();var _useSetting=useSetting(),setting=_useSetting.setting,updateSetting=_useSetting.updateSetting;var _useState13=(0,react.useState)(false),_useState14=(0,slicedToArray/* default */.Z)(_useState13,2),showAdd=_useState14[0],setShowAdd=_useState14[1];var webfix=useWebfixRules();var loadSites=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var sites;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.next=2;return loadOrFetchWebfix("https://fishjar.github.io/kiss-rules/kiss-webfix.json");case 2:sites=_context.sent;setSites(sites);case 4:case"end":return _context.stop();}},_callee);})),[]);var handleSyncTest=/*#__PURE__*/function(){var _ref4=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(e){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:e.preventDefault();_context2.prev=1;setLoading(true);_context2.next=5;return webfix_syncWebfix("https://fishjar.github.io/kiss-rules/kiss-webfix.json");case 5:_context2.next=7;return loadSites();case 7:alert.success(i18n("sync_success"));_context2.next=14;break;case 10:_context2.prev=10;_context2.t0=_context2["catch"](1);console.log("[sync webfix]",_context2.t0);alert.error(i18n("sync_failed"));case 14:_context2.prev=14;setLoading(false);return _context2.finish(14);case 17:case"end":return _context2.stop();}},_callee2,null,[[1,10,14,17]]);}));return function handleSyncTest(_x){return _ref4.apply(this,arguments);};}();(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.prev=0;setLoading(true);_context3.next=4;return loadSites();case 4:_context3.next=9;break;case 6:_context3.prev=6;_context3.t0=_context3["catch"](0);console.log("[load webfix]",_context3.t0.message);case 9:_context3.prev=9;setLoading(false);return _context3.finish(9);case 12:case"end":return _context3.stop();}},_callee3,null,[[0,6,9,12]]);}))();},[loadSites]);return/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Alert_Alert,{severity:"info",children:i18n("patch_setting_help")}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",spacing:2,useFlexGap:true,flexWrap:"wrap",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",disabled:showAdd,onClick:function onClick(e){e.preventDefault();setShowAdd(true);},children:i18n("add")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",disabled:loading,onClick:handleSyncTest,startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(Sync/* default */.Z,{}),children:i18n("sync_now")}),/*#__PURE__*/(0,jsx_runtime.jsx)(HelpButton,{url:URL_KISS_RULES_NEW_ISSUE}),/*#__PURE__*/(0,jsx_runtime.jsx)(FormControlLabel_FormControlLabel,{control:/*#__PURE__*/(0,jsx_runtime.jsx)(Switch_Switch,{size:"small",checked:!!setting.injectWebfix,onChange:function onChange(){updateSetting({injectWebfix:!setting.injectWebfix});}}),label:i18n("inject_webfix")})]}),showAdd&&/*#__PURE__*/(0,jsx_runtime.jsx)(WebfixFields,{webfix:webfix,setShow:setShowAdd}),((_webfix$list=webfix.list)===null||_webfix$list===void 0?void 0:_webfix$list.length)>0&&/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:webfix.list.map(function(rule){return/*#__PURE__*/(0,jsx_runtime.jsx)(WebfixAccordion,{rule:rule,webfix:webfix},rule.pattern);})}),setting.injectWebfix&&/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:loading?/*#__PURE__*/(0,jsx_runtime.jsx)("center",{children:/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:16})}):sites.map(function(rule){return/*#__PURE__*/(0,jsx_runtime.jsx)(WebfixAccordion,{rule:rule},rule.pattern);})})]})});} +function TestButton(_ref){var translator=_ref.translator,api=_ref.api;var i18n=useI18n();var alert=useAlert();var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var handleApiTest=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var _yield$apiTranslate,_yield$apiTranslate2,text,msg;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);_context.next=4;return apiTranslate({translator:translator,text:"hello world",fromLang:"en",toLang:"zh-CN",apiSetting:api,useCache:false});case 4:_yield$apiTranslate=_context.sent;_yield$apiTranslate2=(0,slicedToArray/* default */.Z)(_yield$apiTranslate,1);text=_yield$apiTranslate2[0];if(text){_context.next=9;break;}throw new Error("empty reault");case 9:alert.success(i18n("test_success"));_context.next=17;break;case 12:_context.prev=12;_context.t0=_context["catch"](0);// alert.error(`${i18n("test_failed")}: ${err.message}`); +msg=_context.t0.message;try{msg=JSON.stringify(JSON.parse(_context.t0.message),null,2);}catch(err){// skip +}alert.error(/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)("div",{children:i18n("test_failed")}),/*#__PURE__*/(0,jsx_runtime.jsx)("pre",{style:{maxWidth:400,overflow:"auto"},children:msg})]}));case 17:_context.prev=17;setLoading(false);return _context.finish(17);case 20:case"end":return _context.stop();}},_callee,null,[[0,12,17,20]]);}));return function handleApiTest(){return _ref2.apply(this,arguments);};}();if(loading){return/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:16});}return/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"contained",onClick:handleApiTest,children:i18n("click_test")});}function ApiFields(_ref3){var translator=_ref3.translator;var i18n=useI18n();var _useApi=useApi(translator),api=_useApi.api,updateApi=_useApi.updateApi,resetApi=_useApi.resetApi;var _api$url=api.url,url=_api$url===void 0?"":_api$url,_api$key=api.key,key=_api$key===void 0?"":_api$key,_api$model=api.model,model=_api$model===void 0?"":_api$model,_api$prompt=api.prompt,prompt=_api$prompt===void 0?"":_api$prompt,_api$fetchLimit=api.fetchLimit,fetchLimit=_api$fetchLimit===void 0?DEFAULT_FETCH_LIMIT:_api$fetchLimit,_api$fetchInterval=api.fetchInterval,fetchInterval=_api$fetchInterval===void 0?DEFAULT_FETCH_INTERVAL:_api$fetchInterval;var handleChange=function handleChange(e){var _e$target=e.target,name=_e$target.name,value=_e$target.value;switch(name){case"fetchLimit":value=limitNumber(value,1,100);break;case"fetchInterval":value=limitNumber(value,0,5000);break;default:}updateApi((0,defineProperty/* default */.Z)({},name,value));};var buildinTranslators=[OPT_TRANS_MICROSOFT,OPT_TRANS_DEEPLFREE,OPT_TRANS_BAIDU,OPT_TRANS_TENCENT];var mulkeysTranslators=[OPT_TRANS_DEEPL,OPT_TRANS_OPENAI,OPT_TRANS_GEMINI,OPT_TRANS_CLOUDFLAREAI];return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[!buildinTranslators.includes(translator)&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:"URL",name:"url",value:url,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:"KEY",name:"key",value:key,onChange:handleChange,multiline:mulkeysTranslators.includes(translator),helperText:mulkeysTranslators.includes(translator)?i18n("mulkeys_help"):""})]}),(translator===OPT_TRANS_OPENAI||translator===OPT_TRANS_GEMINI)&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:"MODEL",name:"model",value:model,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:"PROMPT",name:"prompt",value:prompt,onChange:handleChange,multiline:true})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("fetch_limit"),type:"number",name:"fetchLimit",value:fetchLimit,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("fetch_interval"),type:"number",name:"fetchInterval",value:fetchInterval,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(TestButton,{translator:translator,api:api}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:function onClick(){resetApi();},children:i18n("restore_default")})]}),translator===OPT_TRANS_CUSTOMIZE&&/*#__PURE__*/(0,jsx_runtime.jsx)("pre",{children:i18n("custom_api_help")})]});}function ApiAccordion(_ref4){var translator=_ref4.translator;var _useState3=(0,react.useState)(false),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),expanded=_useState4[0],setExpanded=_useState4[1];var handleChange=function handleChange(e){setExpanded(function(pre){return!pre;});};return/*#__PURE__*/(0,jsx_runtime.jsxs)(Accordion_Accordion,{expanded:expanded,onChange:handleChange,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(AccordionSummary_AccordionSummary,{expandIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(ExpandMore/* default */.Z,{}),children:/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{children:translator})}),/*#__PURE__*/(0,jsx_runtime.jsx)(AccordionDetails_AccordionDetails,{children:expanded&&/*#__PURE__*/(0,jsx_runtime.jsx)(ApiFields,{translator:translator})})]});}function Apis(){var i18n=useI18n();return/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Alert_Alert,{severity:"info",children:/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:URL_KISS_PROXY,target:"_blank",children:i18n("about_api_proxy")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:OPT_TRANS_ALL.map(function(translator){return/*#__PURE__*/(0,jsx_runtime.jsx)(ApiAccordion,{translator:translator},translator);})})]})});} ;// CONCATENATED MODULE: ./src/hooks/InputRule.js function useInputRule(){var _useSetting=useSetting(),setting=_useSetting.setting,updateSetting=_useSetting.updateSetting;var inputRule=(setting===null||setting===void 0?void 0:setting.inputRule)||DEFAULT_INPUT_RULE;var updateInputRule=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(obj){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:Object.assign(inputRule,obj);_context.next=3;return updateSetting({inputRule:inputRule});case 3:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[inputRule,updateSetting]);return{inputRule:inputRule,updateInputRule:updateInputRule};} ;// CONCATENATED MODULE: ./src/views/Options/InputSetting.js @@ -63547,23 +63617,22 @@ function useTranbox(){var _useSetting=useSetting(),setting=_useSetting.setting,u ;// CONCATENATED MODULE: ./src/views/Options/Tranbox.js function Tranbox(){var i18n=useI18n();var _useTranbox=useTranbox(),tranboxSetting=_useTranbox.tranboxSetting,updateTranbox=_useTranbox.updateTranbox;var handleChange=function handleChange(e){e.preventDefault();var _e$target=e.target,name=_e$target.name,value=_e$target.value;switch(name){case"btnOffsetX":value=limitNumber(value,0,100);break;case"btnOffsetY":value=limitNumber(value,0,100);break;default:}updateTranbox((0,defineProperty/* default */.Z)({},name,value));};var handleShortcutInput=(0,react.useCallback)(function(val){updateTranbox({tranboxShortcut:val});},[updateTranbox]);var transOpen=tranboxSetting.transOpen,translator=tranboxSetting.translator,fromLang=tranboxSetting.fromLang,toLang=tranboxSetting.toLang,_tranboxSetting$toLan=tranboxSetting.toLang2,toLang2=_tranboxSetting$toLan===void 0?"en":_tranboxSetting$toLan,tranboxShortcut=tranboxSetting.tranboxShortcut,btnOffsetX=tranboxSetting.btnOffsetX,btnOffsetY=tranboxSetting.btnOffsetY,_tranboxSetting$hideT=tranboxSetting.hideTranBtn,hideTranBtn=_tranboxSetting$hideT===void 0?false:_tranboxSetting$hideT;return/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(FormControlLabel_FormControlLabel,{control:/*#__PURE__*/(0,jsx_runtime.jsx)(Switch_Switch,{size:"small",name:"transOpen",checked:transOpen,onChange:function onChange(){updateTranbox({transOpen:!transOpen});}}),label:i18n("toggle_selection_translate")}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,size:"small",name:"translator",value:translator,label:i18n("translate_service"),onChange:handleChange,children:OPT_TRANS_ALL.map(function(item){return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:item,children:item},item);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,size:"small",name:"fromLang",value:fromLang,label:i18n("from_lang"),onChange:handleChange,children:OPT_LANGS_FROM.map(function(_ref){var _ref2=(0,slicedToArray/* default */.Z)(_ref,2),lang=_ref2[0],name=_ref2[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,size:"small",name:"toLang",value:toLang,label:i18n("to_lang"),onChange:handleChange,children:OPT_LANGS_TO.map(function(_ref3){var _ref4=(0,slicedToArray/* default */.Z)(_ref3,2),lang=_ref4[0],name=_ref4[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,size:"small",name:"toLang2",value:toLang2,label:i18n("to_lang2"),helperText:i18n("to_lang2_helper"),onChange:handleChange,children:[["none","None"]].concat((0,toConsumableArray/* default */.Z)(OPT_LANGS_TO)).map(function(_ref5){var _ref6=(0,slicedToArray/* default */.Z)(_ref5,2),lang=_ref6[0],name=_ref6[1];return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:lang,children:name},lang);})}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("tranbtn_offset_x"),type:"number",name:"btnOffsetX",defaultValue:btnOffsetX,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("tranbtn_offset_y"),type:"number",name:"btnOffsetY",defaultValue:btnOffsetY,onChange:handleChange}),/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,size:"small",name:"hideTranBtn",value:hideTranBtn,label:i18n("hide_tran_button"),onChange:handleChange,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:false,children:i18n("show")}),/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem_MenuItem,{value:true,children:i18n("hide")})]}),!client_isExt&&/*#__PURE__*/(0,jsx_runtime.jsx)(ShortcutInput,{value:tranboxShortcut,onChange:handleShortcutInput,label:i18n("trigger_tranbox_shortcut")})]})});} ;// CONCATENATED MODULE: ./src/hooks/FavWords.js -function useFavWords(){var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useState3=(0,react.useState)({}),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),favWords=_useState4[0],setFavWords=_useState4[1];var _useSyncMeta=useSyncMeta(),updateSyncMeta=_useSyncMeta.updateSyncMeta;var toggleFav=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(word){var favs;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:favs=_objectSpread2({},favWords);if(favs[word]){delete favs[word];}else{favs[word]={createdAt:Date.now()};}_context.next=4;return setWords(favs);case 4:_context.next=6;return updateSyncMeta(KV_WORDS_KEY);case 6:_context.next=8;return trySyncWords();case 8:setFavWords(favs);case 9:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[updateSyncMeta,favWords]);var mergeWords=(0,react.useCallback)(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(newWords){var favs;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:favs=_objectSpread2({},favWords);newWords.forEach(function(word){if(!favs[word]){favs[word]={createdAt:Date.now()};}});_context2.next=4;return setWords(favs);case 4:_context2.next=6;return updateSyncMeta(KV_WORDS_KEY);case 6:_context2.next=8;return trySyncWords();case 8:setFavWords(favs);case 9:case"end":return _context2.stop();}},_callee2);}));return function(_x2){return _ref2.apply(this,arguments);};}(),[updateSyncMeta,favWords]);var clearWords=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return setWords({});case 2:_context3.next=4;return updateSyncMeta(KV_WORDS_KEY);case 4:_context3.next=6;return trySyncWords();case 6:setFavWords({});case 7:case"end":return _context3.stop();}},_callee3);})),[updateSyncMeta]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var _favWords;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;setLoading(true);_context4.next=4;return trySyncWords();case 4:_context4.next=6;return getWordsWithDefault();case 6:_favWords=_context4.sent;setFavWords(_favWords);_context4.next=13;break;case 10:_context4.prev=10;_context4.t0=_context4["catch"](0);console.log("[query fav]",_context4.t0);case 13:_context4.prev=13;setLoading(false);return _context4.finish(13);case 16:case"end":return _context4.stop();}},_callee4,null,[[0,10,13,16]]);}))();},[]);return{loading:loading,favWords:favWords,toggleFav:toggleFav,mergeWords:mergeWords,clearWords:clearWords};} +function useFavWords(){var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var _useState3=(0,react.useState)({}),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),favWords=_useState4[0],setFavWords=_useState4[1];var _useSyncMeta=useSyncMeta(),updateSyncMeta=_useSyncMeta.updateSyncMeta;var toggleFav=(0,react.useCallback)(/*#__PURE__*/function(){var _ref=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(word){var favs;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:favs=_objectSpread2({},favWords);if(favs[word]){delete favs[word];}else{favs[word]={createdAt:Date.now()};}_context.next=4;return setWords(favs);case 4:_context.next=6;return updateSyncMeta(KV_WORDS_KEY);case 6:_context.next=8;return trySyncWords();case 8:setFavWords(favs);case 9:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}(),[updateSyncMeta,favWords]);var mergeWords=(0,react.useCallback)(/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(newWords){var favs;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:favs=_objectSpread2({},favWords);newWords.forEach(function(word){if(!favs[word]){favs[word]={createdAt:Date.now()};}});_context2.next=4;return setWords(favs);case 4:_context2.next=6;return updateSyncMeta(KV_WORDS_KEY);case 6:_context2.next=8;return trySyncWords();case 8:setFavWords(favs);case 9:case"end":return _context2.stop();}},_callee2);}));return function(_x2){return _ref2.apply(this,arguments);};}(),[updateSyncMeta,favWords]);var clearWords=(0,react.useCallback)(/*#__PURE__*/asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee3(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:_context3.next=2;return setWords({});case 2:_context3.next=4;return updateSyncMeta(KV_WORDS_KEY);case 4:_context3.next=6;return trySyncWords();case 6:setFavWords({});case 7:case"end":return _context3.stop();}},_callee3);})),[updateSyncMeta]);(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee4(){var _favWords;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee4$(_context4){while(1)switch(_context4.prev=_context4.next){case 0:_context4.prev=0;setLoading(true);_context4.next=4;return trySyncWords();case 4:_context4.next=6;return getWordsWithDefault();case 6:_favWords=_context4.sent;setFavWords(_favWords);_context4.next=13;break;case 10:_context4.prev=10;_context4.t0=_context4["catch"](0);log_kissLog(_context4.t0,"query fav");case 13:_context4.prev=13;setLoading(false);return _context4.finish(13);case 16:case"end":return _context4.stop();}},_callee4,null,[[0,10,13,16]]);}))();},[]);return{loading:loading,favWords:favWords,toggleFav:toggleFav,mergeWords:mergeWords,clearWords:clearWords};} // EXTERNAL MODULE: ./node_modules/.pnpm/@mui+icons-material@5.14.9_@mui+material@5.14.10_@types+react@18.2.22_react@18.2.0/node_modules/@mui/icons-material/Favorite.js var Favorite = __webpack_require__(5922); // EXTERNAL MODULE: ./node_modules/.pnpm/@mui+icons-material@5.14.9_@mui+material@5.14.10_@types+react@18.2.22_react@18.2.0/node_modules/@mui/icons-material/FavoriteBorder.js var FavoriteBorder = __webpack_require__(8543); ;// CONCATENATED MODULE: ./src/views/Selection/FavBtn.js -function FavBtn(_ref){var word=_ref.word;var _useFavWords=useFavWords(),favWords=_useFavWords.favWords,toggleFav=_useFavWords.toggleFav;var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var handleClick=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);_context.next=4;return toggleFav(word);case 4:_context.next=9;break;case 6:_context.prev=6;_context.t0=_context["catch"](0);console.log("[set fav]",_context.t0);case 9:_context.prev=9;setLoading(false);return _context.finish(9);case 12:case"end":return _context.stop();}},_callee,null,[[0,6,9,12]]);}));return function handleClick(){return _ref2.apply(this,arguments);};}();return/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{disabled:loading,size:"small",onClick:handleClick,children:favWords[word]?/*#__PURE__*/(0,jsx_runtime.jsx)(Favorite/* default */.Z,{fontSize:"inherit"}):/*#__PURE__*/(0,jsx_runtime.jsx)(FavoriteBorder/* default */.Z,{fontSize:"inherit"})});} +function FavBtn(_ref){var word=_ref.word;var _useFavWords=useFavWords(),favWords=_useFavWords.favWords,toggleFav=_useFavWords.toggleFav;var _useState=(0,react.useState)(false),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),loading=_useState2[0],setLoading=_useState2[1];var handleClick=/*#__PURE__*/function(){var _ref2=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);_context.next=4;return toggleFav(word);case 4:_context.next=9;break;case 6:_context.prev=6;_context.t0=_context["catch"](0);log_kissLog(_context.t0,"set fav");case 9:_context.prev=9;setLoading(false);return _context.finish(9);case 12:case"end":return _context.stop();}},_callee,null,[[0,6,9,12]]);}));return function handleClick(){return _ref2.apply(this,arguments);};}();return/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{disabled:loading,size:"small",onClick:handleClick,children:favWords[word]?/*#__PURE__*/(0,jsx_runtime.jsx)(Favorite/* default */.Z,{fontSize:"inherit"}):/*#__PURE__*/(0,jsx_runtime.jsx)(FavoriteBorder/* default */.Z,{fontSize:"inherit"})});} ;// CONCATENATED MODULE: ./src/views/Selection/DictCont.js var phonicMap={en_phonic:"英",us_phonic:"美"};function DictCont(_ref){var _dictResult$voice;var dictResult=_ref.dictResult;if(!dictResult){return;}return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"flex-start",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{variant:"subtitle1",style:{fontWeight:"bold"},children:dictResult.src}),/*#__PURE__*/(0,jsx_runtime.jsx)(FavBtn,{word:dictResult.src})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Typography_Typography,{component:"div",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{children:(_dictResult$voice=dictResult.voice)===null||_dictResult$voice===void 0?void 0:_dictResult$voice.map(Object.entries).map(function(item){return item[0];}).map(function(_ref2){var _ref3=(0,slicedToArray/* default */.Z)(_ref2,2),key=_ref3[0],val=_ref3[1];return"".concat(phonicMap[key]||key," ").concat(val);}).join(" ")}),/*#__PURE__*/(0,jsx_runtime.jsx)("ul",{style:{margin:"0.5em 0"},children:dictResult.content[0].mean.map(function(_ref4,idx){var pre=_ref4.pre,cont=_ref4.cont;return/*#__PURE__*/(0,jsx_runtime.jsxs)("li",{children:[pre&&"[".concat(pre,"] "),Object.keys(cont).join("; ")]},idx);})})]})]});} ;// CONCATENATED MODULE: ./src/views/Options/FavWords.js -function DictField(_ref){var word=_ref.word;var _useState=(0,react.useState)(null),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),dictResult=_useState2[0],setDictResult=_useState2[1];var _useState3=(0,react.useState)(false),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),loading=_useState4[0],setLoading=_useState4[1];var _useState5=(0,react.useState)(""),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),error=_useState6[0],setError=_useState6[1];(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var dictRes;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);setError("");_context.next=5;return apiTranslate({text:word,translator:OPT_TRANS_BAIDU,fromLang:"en",toLang:"zh-CN"});case 5:dictRes=_context.sent;dictRes[2].type===1&&setDictResult(JSON.parse(dictRes[2].result));_context.next=12;break;case 9:_context.prev=9;_context.t0=_context["catch"](0);setError(_context.t0.message);case 12:_context.prev=12;setLoading(false);return _context.finish(12);case 15:case"end":return _context.stop();}},_callee,null,[[0,9,12,15]]);}))();},[word]);if(loading){return/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:24});}if(error){return/*#__PURE__*/(0,jsx_runtime.jsx)(Alert_Alert,{severity:"error",children:error});}return/*#__PURE__*/(0,jsx_runtime.jsx)(DictCont,{dictResult:dictResult});}function FavAccordion(_ref3){var word=_ref3.word,index=_ref3.index;var _useState7=(0,react.useState)(false),_useState8=(0,slicedToArray/* default */.Z)(_useState7,2),expanded=_useState8[0],setExpanded=_useState8[1];var handleChange=function handleChange(e){setExpanded(function(pre){return!pre;});};return/*#__PURE__*/(0,jsx_runtime.jsxs)(Accordion_Accordion,{expanded:expanded,onChange:handleChange,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(AccordionSummary_AccordionSummary,{expandIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(ExpandMore/* default */.Z,{}),children:/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{children:"".concat(index+1,". ").concat(word)})}),/*#__PURE__*/(0,jsx_runtime.jsx)(AccordionDetails_AccordionDetails,{children:expanded&&/*#__PURE__*/(0,jsx_runtime.jsx)(DictField,{word:word})})]});}function FavWords(){var i18n=useI18n();var _useFavWords=useFavWords(),loading=_useFavWords.loading,favWords=_useFavWords.favWords,mergeWords=_useFavWords.mergeWords,clearWords=_useFavWords.clearWords;var favList=Object.entries(favWords).sort(function(a,b){return a[0].localeCompare(b[0]);});var downloadList=favList.map(function(_ref4){var _ref5=(0,slicedToArray/* default */.Z)(_ref4,1),word=_ref5[0];return word;});var handleImport=/*#__PURE__*/function(){var _ref6=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(data){var newWords;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;newWords=data.split("\n").map(function(line){return line.split(",")[0].trim();}).filter(isValidWord);_context2.next=4;return mergeWords(newWords);case 4:_context2.next=9;break;case 6:_context2.prev=6;_context2.t0=_context2["catch"](0);console.log("[import rules]",_context2.t0);case 9:case"end":return _context2.stop();}},_callee2,null,[[0,6]]);}));return function handleImport(_x){return _ref6.apply(this,arguments);};}();return/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",spacing:2,useFlexGap:true,flexWrap:"wrap",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(UploadButton,{text:i18n("import"),handleImport:handleImport,fileType:"text",fileExts:[".txt",".csv"]}),/*#__PURE__*/(0,jsx_runtime.jsx)(DownloadButton,{data:downloadList.join("\n"),text:i18n("export"),fileName:"kiss-words_".concat(Date.now(),".txt")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:function onClick(){clearWords();},startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(ClearAll/* default */.Z,{}),children:i18n("clear_all")})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:loading?/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:24}):favList.map(function(_ref7,index){var _ref8=(0,slicedToArray/* default */.Z)(_ref7,2),word=_ref8[0],createdAt=_ref8[1].createdAt;return/*#__PURE__*/(0,jsx_runtime.jsx)(FavAccordion,{index:index,word:word,createdAt:createdAt},word);})})]})});} +function DictField(_ref){var word=_ref.word;var _useState=(0,react.useState)(null),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),dictResult=_useState2[0],setDictResult=_useState2[1];var _useState3=(0,react.useState)(false),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),loading=_useState4[0],setLoading=_useState4[1];var _useState5=(0,react.useState)(""),_useState6=(0,slicedToArray/* default */.Z)(_useState5,2),error=_useState6[0],setError=_useState6[1];(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var dictRes;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.prev=0;setLoading(true);setError("");_context.next=5;return apiTranslate({text:word,translator:OPT_TRANS_BAIDU,fromLang:"en",toLang:"zh-CN"});case 5:dictRes=_context.sent;dictRes[2].type===1&&setDictResult(JSON.parse(dictRes[2].result));_context.next=12;break;case 9:_context.prev=9;_context.t0=_context["catch"](0);setError(_context.t0.message);case 12:_context.prev=12;setLoading(false);return _context.finish(12);case 15:case"end":return _context.stop();}},_callee,null,[[0,9,12,15]]);}))();},[word]);if(loading){return/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:24});}if(error){return/*#__PURE__*/(0,jsx_runtime.jsx)(Alert_Alert,{severity:"error",children:error});}return/*#__PURE__*/(0,jsx_runtime.jsx)(DictCont,{dictResult:dictResult});}function FavAccordion(_ref3){var word=_ref3.word,index=_ref3.index;var _useState7=(0,react.useState)(false),_useState8=(0,slicedToArray/* default */.Z)(_useState7,2),expanded=_useState8[0],setExpanded=_useState8[1];var handleChange=function handleChange(e){setExpanded(function(pre){return!pre;});};return/*#__PURE__*/(0,jsx_runtime.jsxs)(Accordion_Accordion,{expanded:expanded,onChange:handleChange,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(AccordionSummary_AccordionSummary,{expandIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(ExpandMore/* default */.Z,{}),children:/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{children:"".concat(index+1,". ").concat(word)})}),/*#__PURE__*/(0,jsx_runtime.jsx)(AccordionDetails_AccordionDetails,{children:expanded&&/*#__PURE__*/(0,jsx_runtime.jsx)(DictField,{word:word})})]});}function FavWords(){var i18n=useI18n();var _useFavWords=useFavWords(),loading=_useFavWords.loading,favWords=_useFavWords.favWords,mergeWords=_useFavWords.mergeWords,clearWords=_useFavWords.clearWords;var favList=Object.entries(favWords).sort(function(a,b){return a[0].localeCompare(b[0]);});var downloadList=favList.map(function(_ref4){var _ref5=(0,slicedToArray/* default */.Z)(_ref4,1),word=_ref5[0];return word;});var handleImport=/*#__PURE__*/function(){var _ref6=asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee2(data){var newWords;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.prev=0;newWords=data.split("\n").map(function(line){return line.split(",")[0].trim();}).filter(isValidWord);_context2.next=4;return mergeWords(newWords);case 4:_context2.next=9;break;case 6:_context2.prev=6;_context2.t0=_context2["catch"](0);log_kissLog(_context2.t0,"import rules");case 9:case"end":return _context2.stop();}},_callee2,null,[[0,6]]);}));return function handleImport(_x){return _ref6.apply(this,arguments);};}();return/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:3,children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",spacing:2,useFlexGap:true,flexWrap:"wrap",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(UploadButton,{text:i18n("import"),handleImport:handleImport,fileType:"text",fileExts:[".txt",".csv"]}),/*#__PURE__*/(0,jsx_runtime.jsx)(DownloadButton,{data:downloadList.join("\n"),text:i18n("export"),fileName:"kiss-words_".concat(Date.now(),".txt")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{size:"small",variant:"outlined",onClick:function onClick(){clearWords();},startIcon:/*#__PURE__*/(0,jsx_runtime.jsx)(ClearAll/* default */.Z,{}),children:i18n("clear_all")})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:loading?/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:24}):favList.map(function(_ref7,index){var _ref8=(0,slicedToArray/* default */.Z)(_ref7,2),word=_ref8[0],createdAt=_ref8[1].createdAt;return/*#__PURE__*/(0,jsx_runtime.jsx)(FavAccordion,{index:index,word:word,createdAt:createdAt},word);})})]})});} ;// CONCATENATED MODULE: ./src/views/Options/index.js -function Options(){var _useState=(0,react.useState)(""),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),error=_useState2[0],setError=_useState2[1];var _useState3=(0,react.useState)(false),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),ready=_useState4[0],setReady=_useState4[1];(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var i,_window,_window$APP_INFO,_window$APP_INFO2,version,eventName;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:if(!isGm){_context.next=21;break;}// 等待GM注入 -i=0;case 2:if(!(((_window=window)===null||_window===void 0?void 0:(_window$APP_INFO=_window.APP_INFO)===null||_window$APP_INFO===void 0?void 0:_window$APP_INFO.name)==="KISS Translator")){_context.next=12;break;}_window$APP_INFO2=window.APP_INFO,version=_window$APP_INFO2.version,eventName=_window$APP_INFO2.eventName;// 检查版本是否一致 -if(!(version!=="1.8.3")){_context.next=7;break;}setError("The version of the local script(v".concat(version,") is not the latest version(v").concat("1.8.3","). \u672C\u5730\u811A\u672C\u4E4B\u7248\u672C(v").concat(version,")\u975E\u6700\u65B0\u7248(v").concat("1.8.3",")\u3002"));return _context.abrupt("break",19);case 7:if(eventName){// 注入GM接口 -adaptScript(eventName);}// 同步数据 -_context.next=10;return trySyncSettingAndRules();case 10:setReady(true);return _context.abrupt("break",19);case 12:if(!(++i>8)){_context.next=15;break;}setError("Time out. Please confirm whether to install or enable KISS Translator GreaseMonkey script? 连接超时,请检查是否安装或启用简约翻译油猴脚本。");return _context.abrupt("break",19);case 15:_context.next=17;return sleep(1000);case 17:_context.next=2;break;case 19:_context.next=24;break;case 21:_context.next=23;return trySyncSettingAndRules();case 23:setReady(true);case 24:case"end":return _context.stop();}},_callee);}))();},[]);if(error){return/*#__PURE__*/(0,jsx_runtime.jsxs)("center",{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:"https://github.com/fishjar/kiss-translator",children:"KISS Translator v".concat("1.8.3")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Alert_Alert,{severity:"error",children:error}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:"https://fishjar.github.io/kiss-translator/kiss-translator.user.js",children:"Install/Update Userscript for Tampermonkey/Violentmonkey"}),/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js",children:"Install/Update Userscript for iOS Safari"})]})]});}if(!ready){return/*#__PURE__*/(0,jsx_runtime.jsxs)("center",{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:"https://github.com/fishjar/kiss-translator",children:"KISS Translator v".concat("1.8.3")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{})]});}return/*#__PURE__*/(0,jsx_runtime.jsx)(SettingProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Theme,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(AlertProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(HashRouter,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Routes,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Route,{path:"/",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Layout,{}),children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{index:true,element:/*#__PURE__*/(0,jsx_runtime.jsx)(Settings,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"rules",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Rules,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"input",element:/*#__PURE__*/(0,jsx_runtime.jsx)(InputSetting,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"tranbox",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Tranbox,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"apis",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Apis,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"sync",element:/*#__PURE__*/(0,jsx_runtime.jsx)(SyncSetting,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"webfix",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Webfix,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"words",element:/*#__PURE__*/(0,jsx_runtime.jsx)(FavWords,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"about",element:/*#__PURE__*/(0,jsx_runtime.jsx)(About,{})})]})})})})})});} +function Options(){var _useState=(0,react.useState)(""),_useState2=(0,slicedToArray/* default */.Z)(_useState,2),error=_useState2[0],setError=_useState2[1];var _useState3=(0,react.useState)(false),_useState4=(0,slicedToArray/* default */.Z)(_useState3,2),ready=_useState4[0],setReady=_useState4[1];(0,react.useEffect)(function(){asyncToGenerator_asyncToGenerator(/*#__PURE__*/regeneratorRuntime_regeneratorRuntime().mark(function _callee(){var i,_window,_window$APP_INFO,_window$APP_INFO2,version,eventName;return regeneratorRuntime_regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:if(!isGm){_context.next=16;break;}// 等待GM注入 +i=0;case 2:if(!(((_window=window)===null||_window===void 0?void 0:(_window$APP_INFO=_window.APP_INFO)===null||_window$APP_INFO===void 0?void 0:_window$APP_INFO.name)==="KISS Translator")){_context.next=9;break;}_window$APP_INFO2=window.APP_INFO,version=_window$APP_INFO2.version,eventName=_window$APP_INFO2.eventName;// 检查版本是否一致 +if(!(version!=="1.8.4")){_context.next=7;break;}setError("The version of the local script(v".concat(version,") is not the latest version(v").concat("1.8.4","). \u672C\u5730\u811A\u672C\u4E4B\u7248\u672C(v").concat(version,")\u975E\u6700\u65B0\u7248(v").concat("1.8.4",")\u3002"));return _context.abrupt("return");case 7:if(eventName){// 注入GM接口 +adaptScript(eventName);}return _context.abrupt("break",16);case 9:if(!(++i>8)){_context.next=12;break;}setError("Time out. Please confirm whether to install or enable KISS Translator GreaseMonkey script? 连接超时,请检查是否安装或启用简约翻译油猴脚本。");return _context.abrupt("return");case 12:_context.next=14;return sleep(1000);case 14:_context.next=2;break;case 16:_context.next=18;return trySyncSettingAndRules();case 18:setReady(true);case 19:case"end":return _context.stop();}},_callee);}))();},[]);if(error){return/*#__PURE__*/(0,jsx_runtime.jsxs)("center",{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:"https://github.com/fishjar/kiss-translator",children:"KISS Translator v".concat("1.8.4")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Alert_Alert,{severity:"error",children:error}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:"https://fishjar.github.io/kiss-translator/kiss-translator.user.js",children:"Install/Update Userscript for Tampermonkey/Violentmonkey"}),/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js",children:"Install/Update Userscript for iOS Safari"})]})]});}if(!ready){return/*#__PURE__*/(0,jsx_runtime.jsxs)("center",{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:"https://github.com/fishjar/kiss-translator",children:"KISS Translator v".concat("1.8.4")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{})]});}return/*#__PURE__*/(0,jsx_runtime.jsx)(SettingProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Theme,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(AlertProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(HashRouter,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Routes,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Route,{path:"/",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Layout,{}),children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{index:true,element:/*#__PURE__*/(0,jsx_runtime.jsx)(Settings,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"rules",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Rules,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"input",element:/*#__PURE__*/(0,jsx_runtime.jsx)(InputSetting,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"tranbox",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Tranbox,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"apis",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Apis,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"sync",element:/*#__PURE__*/(0,jsx_runtime.jsx)(SyncSetting,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"words",element:/*#__PURE__*/(0,jsx_runtime.jsx)(FavWords,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"about",element:/*#__PURE__*/(0,jsx_runtime.jsx)(About,{})})]})})})})})});} ;// CONCATENATED MODULE: ./src/options.js var options_root=client.createRoot(document.getElementById("root"));options_root.render(/*#__PURE__*/(0,jsx_runtime.jsx)(react.StrictMode,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Options,{})})); }(); diff --git a/version.txt b/version.txt index fe4e75f..7b378be 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -1.8.3 \ No newline at end of file +1.8.4 \ No newline at end of file