- // ==UserScript==
- // @name Circle 阅读助手
- // @namespace https://circlereader.com
- // @version 1.0.4
- // @noframes
- // @run-at document-start
- // @description 完全自定义的沉浸式阅读体验,提供复制、多页合并、分栏阅读、大声朗读、导出成其他格式文件等功能。
- // @author 染河<wenguang.fe@gmail.com>
- // @icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAbFBMVEUAAABYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplxYplzh1533AAAAI3RSTlMAX/A/fxAgTb2fL/nfC/Xq2Ikmj3fUkG/l0K9wWgfIGqVpszCIe98AAAGCSURBVEjHlVbXloMgEB1AxBKNJTG97Pr//7iZcbIntjDcFzlT5DINYIZGdfeecG+vMXhwU/t+hL26wTqK3baf4XgoxOaM7W7RJduwfpNejLHWmEv6FlXN3N6VpNJdNvpLpwexm9r/DPLIThU2Ik2uxuILSZPFKMYJKUcejkQRrCCiPcxHrkr+xRoU8W3+aVZs7/Gois8dmc9XVjsmlON5wYMEST1o2eHSW2UxblHTCco3IT8pXXDKtPU7WM2ROb2+LQjQYoswt1jikKGlhSvWJ4iAteugJkYipBSnhI4iwuFleqZ9jMzBYHkAtmUmd9gC1gULJMnWoQ456EBKwYcODislLg1JnAstDdtLT51hkOzQe62IEXeyCmqg8BblIdALhwAvvWOGO7l8yAdZOwwyhnBU7oOH8XTct+sZQLj5hXKKFzN8IuV1Uok5SSVXFsPx7ZeO6sqkfPM6mOHxixryiQwhOmsWnZdLxx37RRxd6NMh9HHiQaPqZ1KVZZU864Xnzx+aEUY9Wh6xoAAAAABJRU5ErkJggg==
- // @match *://*/*
- // @connect *
- // @grant window.close
- // @grant window.focus
- // @grant GM_openInTab
- // @grant GM_getValue
- // @grant GM_setValue
- // @grant GM_listValues
- // @grant GM_deleteValue
- // @grant GM_xmlhttpRequest
- // ==/UserScript==
-
- ;window.definePlugin=function(i,n){Array.isArray(window._presetPlugins)||(window._presetPlugins=[]),window._presetPlugins.push({id:i,factory:n})},void 0===window.chrome&&(window.chrome={}),void 0===window.chrome.runtime&&(window.chrome.runtime={});(()=>{"use strict";var e={404:e=>{e.exports=function(){function e(e,t,n,r,i){return e<t||n<t?e>n?n+1:e+1:r===i?t:t+1}return function(t,n){if(t===n)return 0;if(t.length>n.length){var r=t;t=n,n=r}for(var i=t.length,s=n.length;i>0&&t.charCodeAt(i-1)===n.charCodeAt(s-1);)i--,s--;for(var o=0;o<i&&t.charCodeAt(o)===n.charCodeAt(o);)o++;if(s-=o,0===(i-=o)||s<3)return s;var l,c,a,u,h,p,d,f,g,m,k,b,x=0,y=[];for(l=0;l<i;l++)y.push(l+1),y.push(t.charCodeAt(o+l));for(var w=y.length-1;x<s-3;)for(g=n.charCodeAt(o+(c=x)),m=n.charCodeAt(o+(a=x+1)),k=n.charCodeAt(o+(u=x+2)),b=n.charCodeAt(o+(h=x+3)),p=x+=4,l=0;l<w;l+=2)c=e(d=y[l],c,a,g,f=y[l+1]),a=e(c,a,u,m,f),u=e(a,u,h,k,f),p=e(u,h,p,b,f),y[l]=p,h=u,u=a,a=c,c=d;for(;x<s;)for(g=n.charCodeAt(o+(c=x)),p=++x,l=0;l<w;l+=2)d=y[l],y[l]=p=e(d,c,p,g,y[l+1]),c=d;return p}}()}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var s=t[r]={exports:{}};return e[r](s,s.exports,n),s.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var r=n(404),i=n.n(r);function s(e,t){return Object.prototype.toString.call(e)===`[object ${t}]`}function o(e){return s(e,"String")}function l(e){return s(e,"Text")}function c(e,t){return!(!e||!e.tagName)&&e.tagName.toLowerCase()===t}function a(e){return e&&e.nodeType&&1===e.nodeType}function u(e){return s(e,"Number")}function h(e){return s(e,"Function")}function p(e,t,n=.6){if(!o(e)||!o(t))return!1;const r=i()(e,t),s=Math.max(e.length,t.length);return(s-r)/s>=n}function d(e,t){if(!e)return;let n=0;if(e.forEach){const r=e.length;if(r<=0)return;for(;n<r&&!t(e[n],n);)n++}else{const r=Object.keys(e),i=r.length;if(i<=0)return;for(;n<i&&!t(e[r[n]],r[n]);)n++}}function f(e){let t="";d(e.attributes,(e=>{const n=e.nodeName;if(["class","role","src","alt"].includes(n))return;if(/thumbnail/i.test(n))return;const r=`${e.nodeValue}`;return(r.startsWith("http")||/src|url|origin/i.test(n))&&!/\s/.test(r)&&r.split("/").length>1&&r.length>10?(t=r,!0):void 0}));const n=t||e.src;if(n&&!n.endsWith("svg"))return n;const r=`${window.getComputedStyle(e).backgroundImage}`.replace(/url\("(.*?)"\)/,"$1");return o(r)&&"none"!==r&&r.split("/").length>1?r:""}function g(e){if(a(e.cover)){const t=e.srcset;t&&(e.cover={srcset:t,url:f(e.cover)}),e.cover=f(e.cover)}if(!Array.isArray(e.author))return e;let t=e.cover;if(function(e){return s(e,"Object")}(e.cover)&&(e.cover.url?t=e.cover.url:e.cover.srcset&&(t=e.cover.srcset)),o(t)&&t.length>0){let n=!1;d(e.author,(e=>{if(e.avatar&&p(e.avatar,t,.8))return n=!0,n})),n&&delete e.cover}return e}function m(e){if(Array.isArray(e)&&!(e.length<=0))return e[0].name||e[0].avatar}function k(e){if(!e)return"";let t="";o(e)?t=e:l(e)?t=e.nodeValue:a(e)&&(t=e.textContent);const n=(t||"").trim();return n.length>0?n.replace(/^ +| +$/g,""):""}function b(e){if(!a(e.content))return e;if(e.content.childElementCount<=200)return e;const t=[];let n=1;const r=[...e.content.cloneNode(!0).children],i=r.length;for(let s=0;s<i;s+=200){const i=document.createElement("div");i._mirrorElement=e.content,d(r.slice(s,s+200),(e=>{i.appendChild(e)}));const o=e.url||Date.now(),l=k(e.title);t.push({...e,content:i,id:`${o}_${n}`,title:l.length>0?`${l}(${n})`:""}),n++}return{...e,content:t}}function x(e){if(Array.isArray(e.content)){const t=[];d(e.content,(e=>{const n=b(g(e));Array.isArray(n.content)?d(n.content,(e=>{t.push(e)})):t.push(n)}));return function(e){if(!Array.isArray(e.content))return e;const t=m(e.author);if(!t)return e;let n=!1;return d(e.content,(e=>{const r=m(e.author);if(r&&t===r)return n=!0,!0})),n&&delete e.author,e}(g({...e,content:t}))}return b(g(e))}function y(e,t){if(!e)return;let n=0;if(e.forEach){const r=e.length;if(r<=0)return;for(;n<r&&!t(e[n],n);)n++}else{const r=Object.keys(e),i=r.length;if(i<=0)return;for(;n<i&&!t(e[r[n]],r[n]);)n++}}function w(e){if(!e||!e.getBoundingClientRect)return;if(e._rect)return e._rect;const t=window.scrollX,n=window.scrollY,r=e.getBoundingClientRect();return t<=0&&n<=0?(e._rect=r,e._rect):(e._rect={top:r.top+n,right:r.right-t,bottom:r.bottom-n,left:r.left+t,width:r.width,height:r.height},e._rect)}function A(e,t){return e[t]?e[t]:e.style&&e.style[t]?e.style[t]:window.getComputedStyle?window.getComputedStyle(e,null)[t]:void 0}function v(e){if(!e)return!1;if(!a(e))return!1;if(["br","hr","img","body"].includes(e.tagName.toLowerCase()))return!0;const t=e.getBoundingClientRect();return!(t.height<=0||t.width<=0)&&("0"!==A(e,"opacity")&&"hidden"!==A(e,"visibility"))}function $(e){return!o(e)||e.trim().length<=0?0:function(e){return/[\u4e00-\u9fa5]/.test(e)}(e)?e.length:e.split(" ").length}const S=["h1","h2"],C=["h1","h2","h3",'[id*="title"]','[id*="Title"]','[class*="title"]','[class*="Title"]','[id*="headline"]','[class*="headline"]'];function E(e,t){if(!v(e))return!0;const n=w(e),r=Math.abs(t.left-n.left),i=t.top-n.top;if(r>100||i>600||i<-60)return!0;const s=k(e);if($(s)>100||$(s)<2)return!0;const o=window.getComputedStyle(e),l=parseInt(o.fontSize);return(u(l)?l:12)<=12||e.getElementsByTagName("a").length>1}function _(e,t=1){const n=e.id;if(n)return`#${n}`;if(c(e,"body"))return"body";let r=`> ${e.tagName.toLowerCase()}`;t<=1&&e.classList.length>0&&(r+=`.${Array.prototype.slice.call(e.classList).join(".")}`);const i=e.parentElement;return i?_(i,t+1)+" "+r:r}function z(e,t){if(!a(e))return e;const n=_(e);if(!n||!/\.|#/.test(n))return e;const r=n.split(">"),i=r.pop();if(i&&r.length>0&&!/\.|#/.test(i))return e;let s=[];try{s=t.querySelectorAll(n)}catch(e){}if(s.length<=2)return e;const o=[],l=e.getBoundingClientRect();if(d(s,(e=>{if(!v(e))return;e.getBoundingClientRect().left===l.left&&o.push(e)})),o.length<=2)return e;const c=function(e,t){for(;e;e=e.parentElement)if(e.contains(t))return e}(e,s[0]===e?s[1]:s[0]);return a(c)?c:e}function T(e){let t=0;return d(e,(e=>{e.childNodes.length>0&&t++})),t}function R(e,t){if(e)return t&&o(t)?e.getAttribute(t):Array.prototype.slice.call(e.attributes).reduce(((e,t)=>`${e} ${t.nodeValue}`),"")}function q(e){let t=0;d(e.getElementsByTagName("a"),(e=>{t+=k(e).length}));const n=k(e).length;return t/(n<=0?1:n)}const L=/span|p/i,N=/body|hentry|main/i,B=/div|article|body|main|td/i,M=/article|body|post|content|entry/i,P=/:|。|;|,|,|\.|\?|、|“|“/,j=/comment|meta|replies|reply|footer|footnote|noise|video|audio/,I=["table"],F=["a","style","script","button"],Z=["h2","h3","h4","h5","h6","td","pre","em","strong"],D=["feed","menu","menubar","dialog","alert","alertdialog","navigation","complementary"];function O(e,t,n,r){d(r?[e]:function(e,t=3,n){let r=0,i=e.parentElement;const s=[];for(;i&&!c(i,"html")&&!(h(n)&&n(i,r)&&(s.push(i),++r>=t));)i=i.parentElement;return s}(e,4,((e,t)=>t<=0?B.test(e.nodeName)||M.test(`${e.className} ${e.id}`):!L.test(e.nodeName))),((e,r)=>{if(D.includes(R(e,"role")))return;const i=`${e.className} ${e.id}`;if(j.test(i))return;const s=`${e.tagName} ${i}`;M.test(s)&&(t+=r<=0?10:2),N.test(s)&&(t+=r<=0?5:1),!u(e.score)&&(e.score=0),e.score+=t/(r<2?r+2:3*r),n&&n(e)}))}function W(e){if(!h(window.definePlugin))return e;let t=0,n=0;d([...e.querySelectorAll("img")].slice(0,100),(e=>{const t=function(e){let t=0;if(!v(e))return t;const n=e.width,r=e.height,i=e.naturalWidth,s=e.naturalHeight,o=Math.max(n,i),l=Math.max(r,s);return o>400&&l>300&&(t+=(o>l?o:l)/400),t}(e);t<=0||(n++,O(e,t))}));let r=0;const i=[];if(function(e,t,n,r=100){const i=document.createNodeIterator(e,NodeFilter.SHOW_TEXT,{acceptNode:e=>t(e)?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT});let s,o=0;for(;o<=r&&(s=i.nextNode());)n(s),o++}(e,(e=>{const t=e.parentElement;if(!t||!v(t))return;const n=t.nodeName.toLowerCase();if(F.includes(n))return;const r=k(e);if(r.split(P).length<=2)return;const i=$(r);return!!(Z.includes(n)&&i>4)||(!(i<10)||void 0)}),(e=>{r++;const t=function(e){let t=e;for(;t;){const e=t.parentElement;if(!e)break;if(!(c(e,"span")||e.childElementCount<=0||1===T(e.children)))break;t=e}return t}(e);i.includes(t)?(!u(t._parent)&&(t._parent=0),t._parent=t._parent+1):i.push(t)}),100),i.length<=2&&d([...e.querySelectorAll("p")].slice(0,100),(e=>{if(!v(e)||i.includes(e))return;const t=e.nodeName.toLowerCase();if(F.includes(t))return;const n=k(e);if(n.split(P).length<=2)return;$(n)<10||i.push(e)})),i.length<=0)return;const s=[];d(i,(function(e){const t=function(e){let t=1;const n=k(e);t+=n.split(P).length,t+=Math.min(Math.floor($(n)/100),3);const r=(l(e)?e.parentElement:e).nodeName.toLowerCase();return I.includes(r)&&(t+=1),Z.includes(r)&&(t+=2),e.score=t,e.score}(e);t<=0||(n++,O(e,t,(e=>{!s.includes(e)&&s.push(e)}),u(e._parent)&&e._parent/r>.8))}));const o=s.sort(((e,t)=>e.score-t.score));let p=o.pop();const f=o.pop();if(p&&f&&p.score-f.score<20&&!M.test(`${p.tagName} ${p.className}`)&&M.test(`${f.tagName} ${f.className}`)&&(p=f),!a(p))return;t=p.score;const g=$(k(p));return!p||t<30||n<(g>200?1:3)||g<(n>20?30:90)?void 0:function(e,t){const n=$(k(e));if(e.querySelectorAll("*").length<=0&&n>5e3)return!1;const r=w(e);if(r.width*r.height<172e3)return!1;const i=e.parentElement;if(!i)return!1;const s=w(i);return!(t&&t.offsetWidth>800&&(r.width<300||s.width<300))&&(e.getElementsByTagName("div").length<2||!(e.getElementsByTagName("a").length>16&&q(e)>.35))}(p,e)?z(p,e):void p.classList.add("noise")}function H(e,t){if(!a(e))return!0;if(/article|post|content/i.test(`${e.className} ${e.id}`))return!0;if(e.contains(t))return!0;const n=w(t),r=w(e);return Math.abs(r.top-(n.top+n.height/2))<600||void 0}function Q(e,t,n){const r=function(e,t,n){if(!e||!e.body)return;let r=[];const i=w(n);if(d(t.querySelectorAll(S.join(",")),(e=>{E(e,i)||r.push(e)})),1===r.length&&a(r[0]))return r[0];const s=e.title;if(!s)return;let o=0,l=null;return r=[],d(t.querySelectorAll(C.join(",")),(e=>{if(E(e,i))return;r.push(e);const t=k(e),n=t.length;t.length<3||p(s,t)&&o<n&&(o=n,l=e)})),a(l)?l:1===r.length?r[0]:(o=0,d(r,(e=>{const t=Number.parseInt(getComputedStyle(e,null).getPropertyValue("font-size"),10);t>o&&(o=t,l=e)})),a(l)?l:void 0)}(e,t,n);if(!a(r))return{content:n};const i=w(r),s=w(n);if(Math.abs(s.left-i.left)>=s.width)return{content:n};let o=n;for(;o&&!H(o,r)&&!c(o,"body");)o=o.parentElement;return{title:r,content:o}}function V(e){if(!l(e))return!1;const t=(e.nodeValue||"").trim();return t.length<=0||/^[\s\xA0]+$/.test(t)}function U(e){let t=0;return a(e)?(d(e.childNodes,(e=>{!a(e)&&V(e)||t++})),t):t}let X=0;async function J(e,t,n){n&&(X=5);const r=function(e){const t=W(e);if(!t||!a(t))return;return t.getBoundingClientRect().top>1800?void t.classList.add("noise"):t}(t);if(a(r)){X=0;let n=r;for(;n&&1===U(n);){const e=n.firstElementChild;if(!a(e))break;n=e}return Q(e,t,n)}if(await new Promise((e=>setTimeout(e,500))),X<5){X++;return await J(e,t)}X=0}function Y(e){return!e.location.protocol.startsWith("http")}function G(e){return e.replace(/(.*)[|\-\\/>»].*/gi,"$1")}function K(e,t,n,r){if(!t)return n?[]:void 0;let i;try{i=e.querySelectorAll(t)}catch{}if(!i)return n?[]:void 0;if(n)return i.length>0?[...i]:[];if(r){const e=[];return i.forEach((t=>{if(c(t,"a")){const n=t.href;if(n.startsWith("javascript")){const n=k(t);n.length>0&&e.push(n)}else n.length>0&&e.push(n)}else{const n=k(t);n.length>0&&e.push(n)}})),e.join(" ")}return k(i[0])}function ee(e,t,n,r){if(!Y(e)||function(e=location.href){return e.startsWith("chrome")||e.startsWith("edge")||e.startsWith("opera")||e.startsWith("extension")||e.startsWith("vivaldi")||e.startsWith("whale")||e.startsWith("ms-browser")||e.startsWith("moz-extension")||e.startsWith("safari-web-extension")}())J(e,t,n).then((i=>{i?r&&r(null,{type:"html",title:i.title,content:i.content}):n?r&&r("failed"):setTimeout((()=>{ee(e,t,!0,r)}),2e3)})).catch(r);else{const t=e.body,n=decodeURIComponent(e.location.href).split("?").shift()||"",i=n.substring(n.lastIndexOf(".")+1),s=n.split(`.${i}`).shift()||"",o=G(e.title||`${s.substring(s.lastIndexOf("/")+1)}`);r&&r(null,{type:i,title:o,content:1===t.children.length?t.firstElementChild:t})}}function te(e,t,n,r){const i=n||{};return new Promise(((n,s)=>{const o={type:"html",content:e.body},l=K(t,i.title,!0);Array.isArray(l)&&l.length>0&&(o.title=l[0]);const c=K(t,i.content,!0);c&&Array.isArray(c)&&c.length>0?(o.content=r?c:c[0],n(o)):function(e,t){return new Promise(((n,r)=>{ee(e,t,!1,((e,t)=>{!e&&t?n(t):r(e)}))}))}(e,t).then(n).catch(s)})).then((n=>{const r={type:"html",...n},s=K(t,i.url,!1,!1)||e.location.href;if(s.indexOf("circle=")){const e=s.split("circle=").shift();r.url=e.endsWith("#")?e.substring(0,e.length-1):e}else r.url=s;return Promise.resolve(r)}))}function ne(e){const t=e.href,n=location.href;if(t&&t!==n&&!t.startsWith("javascript"))return t;let r="";if(d(e.attributes,(e=>{const t=`${e.nodeValue}`;if(t.split("/").length>1)return r=t.replace(/.*('|")(.*?)('|").*/,"$2"),!0})),r)return r;return e.getAttribute("onclick")||""?e:""}const re=/下一[页頁条章篇张張]|next|next\s*page|次のページ/i;function ie(e,t){let n;if(t){const r=K(e,t);if(r&&c(r,"a")){const e=ne(r);e&&(n=e)}}if(n)return n;const r=location.href,i=location.host;let s=null;return function(e,t){const n=Object.keys(e),r=n.length;if(r<=0)return;let i=r-1;for(;i>=0&&!t(e[n[i]],n[i]);)i--}(e.getElementsByTagName("a"),(e=>{const t=e.parentElement;if(e.host&&e.host!==i||!t)return;const n=e.href,o=k(e);if(n){if(re.test(`${R(e)} ${o}`)&&n!==r&&!n.startsWith("javascript"))return s=e,!0;if(1===t.childElementCount&&re.test(R(t)))return s=e,!0}else if(/下一[页頁章篇张張]/.test(o)||/next|next\s*page|次のページ/i.test(R(e)))return s=e,!0})),s&&a(s)?ne(s):void 0}const se=/[a-zA-Z-áéíñóúüÁÉÍÑÓÚÜäöüÄÖÜßàèéìíîòóùúÀÈÉÌÍÎÒÓÙÚàâäôéèëêïîçùûüÿæœÀÂÄÔÉÈËÊÏΟÇÙÛÜÆŒ]+|[\u4e00-\u9fff]|[\u3400-\u4dbf]|[\uD840-\uD87F][\uDC00-\uDFFF]|[\uD880-\uD8BF][\uDC00-\uDFFF]|[\uD8C0-\uD8FF][\uDC00-\uDFFF]|[\uD900-\uD93F][\uDC00-\uDFFF]|[\uf900-\ufaff]|[\u3300-\u33ff]|[\ufe30-\ufe4f]|[\uf900-\ufaff]|[\uD87E-\uD87F][\uDC00-\uDE1F]|[\u3131-\uD79D]|[ぁ-ゔ]|[ァ-ヴー]|[々〆〤ヶ]|[аАбБвВгГдДеЕёЁжЖзЗиИйЙкКлЛмМнНоОпПрРсСтТуУфФхХцЦчЧшШщЩъЪыЫьЬэЭюЮяЯ]+|[\u0621-\u064A\u0660-\u0669]+/g,oe={en:/(?:\s)[a-zA-Z]+(?:\s)/gi,"zh-CN":/[\u4e00-\u9fa5]/gi,"zh-TW":/[\u3400-\u4db5]/gi,hi:/[\u0900-\u097F]/gi,ar:/[\u0621-\u064A\u0660-\u0669]/gi,bn:/[\u0995-\u09B9\u09CE\u09DC-\u09DF\u0985-\u0994\u09BE-\u09CC\u09D7\u09BC]/gi,he:/[\u0590-\u05FF]/gi,el:/[\u0370-\u03FF\u1F00-\u1FFF]/gi,uk:/[а-щА-ЩЬьЮюЯяЇїІіЄєҐґ]+/gi,ru:/[аАбБвВгГдДеЕёЁжЖзЗиИйЙкКлЛмМнНоОпПрРсСтТуУфФхХцЦчЧшШщЩъЪыЫьЬэЭюЮяЯ]+/gi,ja:/[ぁ-ゔ]|[ァ-ヴー]|[々〆〤ヶ]/gi,ko:/[\u3130-\u318F\uAC00-\uD7AF]/gi,bg:/[а-ъьюяА-ЪЬЮЯ]+/gi,ro:/(?:[a-zA-Z]*[ĂÂÎȘȚăâîșț]+[a-zA-Z]*)+/gi,nb:/(?:[a-zA-Z]*[æøåÆØÅ]+[a-zA-Z]*)+/gi,sv:/(?:[a-zA-Z]*[äöåÄÖÅ]+[a-zA-Z]*)+/gi,it:/(?:[a-zA-Z]*[àèéìíîòóùúÀÈÉÌÍÎÒÓÙÚ]+[a-zA-Z]*)+/gi,es:/(?:[a-zA-Z]*[áéíñóúüÁÉÍÑÓÚÜ]+[a-zA-Z]*)+/gi,pl:/(?:[a-pr-uwy-zA-PR-UWY-Z]*[ąćęłńóśźżĄĆĘŁŃÓŚŹŻ]+[a-pr-uwy-zA-PR-UWY-Z]*)+/gi,de:/(?:[a-zA-Z]*[äöüßÄÖÜ]+[a-zA-Z]*)+/gi,fr:/(?:[a-zA-Z]*[àâäôéèëêïîçùûüÿæœÀÂÄÔÉÈËÊÏΟÇÙÛÜÆŒ]+[a-zA-Z]*)+/gi};function le(e=document,t){const n=e.documentElement.getAttribute("lang");if(n)return n;let r="en";if(!t)return r;const i=t.substring(0,300),s=i.match(se);if(s){const e=s.length,t=["ro","nb","sv","it","es","pl","de","fr"],n={};d(oe,((s,o)=>{const l=(i.match(s)||[]).length/e;if(l&&(n[o]=l*(t.includes(o)?5:1),n[o]>.85))return r=o,!0}));const o=Object.keys(n);o.length>0&&(r=o.reduce(((e,t)=>n[e]>=n[t]?e:t)))}return r}function ce(e,t){let n=e,r=t(n);for(;!r&&n;)n=n.parentElement,r=t(n);return r}const ae=/(20\d{2}([.\-/|年月\s]{1,3}\d{1,2}){2}日?(\s?\d{2}:\d{2}(:\d{2})?)?)|(\d{1,5}\s?(分钟|小时|天)前)/gi;const ue=/(https?|http|ftp|file):\/\/[-A-Za-z0-9+&@#/%?=~_|!:,.;]+[-A-Za-z0-9+&@#/%=~_|]/g;function he(e,t,n,r){if(!e||!t)return;const i=t.getElementsByTagName("img");if(i.length<=0)return;let s=1e4,o=null;const l={top:0,bottom:0},c=a(r)?r.getBoundingClientRect():l,u=n?n.getBoundingClientRect():l,h=c.bottom>0?c:u;return d(i,(e=>{const t=function(e,t){if(!v(e))return;const n=e.getBoundingClientRect();return n.width*n.height<9e4||n.width/n.height>5||Math.abs(n.width-t.width)>280?void 0:n}(e,h);if(!t)return;const n=Math.abs(t.top+t.height/2-h.top);n<s&&(s=n,o=e)})),o}const pe=['[rel*="author"]','[id*="author"]','[class*="author"]','[class*="nickname"]','[class*="username"]'];function de(e,t,n,r){const i=e.querySelectorAll(pe.join(","));if(i.length<=0)return;const s=[],o={top:0,bottom:0},l=a(n)?n.getBoundingClientRect():o,c=t?t.getBoundingClientRect():o,u=l.bottom>0?l:c;let h=250;return a(r)&&(h+=r.getBoundingClientRect().height),d(i,(e=>{if(!v(e))return;if(u.bottom>0){const t=e.getBoundingClientRect();if(Math.abs(u.top-t.top)>h)return}e.querySelectorAll(pe.join(",")).length>0||function(e){if(/name/i.test(e.className))return!0;const t=$(k(e));return t>2&&t<20}(e)&&s.push(e)})),s.length<=0?void 0:k(s[0])}const fe=['[class*="avatar"]','[rel*="author"]','[id*="author"]','[class*="author"]','[class*="nickname"]','[class*="username"]'];const ge=['[itemprop="author"]','[itemprop="name"]'];function me(e,t,n,r){let i=de(e,t,n,r);i||(i=function(e){const t=e.querySelectorAll(ge.join(","));if(t.length<=0)return;let n=[];return d(t,(e=>{const t=e.getAttribute("content"),r=$(t);r>2&&r<20&&n.push(t)})),n[0]}(e));const s=function(e,t,n,r){const i=e.querySelectorAll(fe.join(","));if(i.length<=0)return;let s,o="";const l={top:0,bottom:0},u=a(n)?n.getBoundingClientRect():l,h=t?t.getBoundingClientRect():l,p=u.bottom>0?u:h;let g=250;return a(r)&&(g+=r.getBoundingClientRect().height),d(i,(e=>{if(!v(e))return;if(p.top>0){const t=e.getBoundingClientRect();if(t.top<=0)return;if(Math.abs(p.top-t.top)>g)return}if(e.querySelectorAll(fe.join(",")).length>0)return;const t=c(e,"img")?[e]:e.querySelectorAll("img");if(1!==t.length)return;let n="";const r=t[0];return n=r&&r.srcset?r.srcset:f(r),n?(o=n,s=r,!0):void 0})),{url:o,node:s}}(e,t,n,r);if(!i&&!s)return[];const o={};if(i&&(o.name=i),s&&(s.url&&(o.avatar=s.url),!o.name&&s.node)){const e=R(s.node,"alt");e&&!e.startsWith("cover_")&&(o.name=e)}return Object.keys(o).length>0?[o]:[]}function ke(e,t){const n=t.querySelector(`[itemprop=${e}]`);if(n)return n.getAttribute("content")}const be=["tags","cover","title","excerpt","author","modified","published"];function xe(e,t){const n=function(e){const t=e.querySelector('script[type="application/ld+json"]');if(!t)return{};const n=t.innerText;if(n.length<=0)return{};let r;try{r=JSON.parse(n)}catch(e){}if(!r)return{};const i=Array.isArray(r)?r[0]:r,s=i.images||i.image,l=Array.isArray(s)?s[0]:s,c=l&&l.url?l.url:l;return{tags:i.keywords,excerpt:i.description,title:i.headline||i.title||"",cover:o(c)?c:"",dateModified:i.dateModified||i.upDate||"",datePublished:i.datePublished||i.pubDate||i.dateCreated||"",author:i.author?(a=Array.isArray(i.author)?i.author:[i.author],a.map((e=>{if(o(e))return{name:e};const t=e.name,n=e.image&&e.image.url?e.image.url:e.image;return n?{name:t||"",avatar:n||""}:{name:t||""}}))):[]};var a}(t),r=function(e,t){if(!t)return{};let n="",r="",i="",s="",o="",l="",c="";if(d((t===e.body?e.head:t).getElementsByTagName("meta"),(function(e){const t=e.getAttribute("content");if(!t)return;const s=`${e.getAttribute("name")} ${e.getAttribute("property")} ${e.getAttribute("itemprop")}`;n||!/tag|keyword/i.test(s)?l||!/modified|dateline/i.test(s)?c||!/published|pubdate|publish/i.test(s)?i||!/author|creator/i.test(s)?(!o&&/description/i.test(s)&&(o=t),!r&&/image/i.test(s)&&(r=t)):i=t:c=t:l=t:n=t})),!i||!s){const e=t.querySelector("[itemprop=author]");if(e){const t=ke("name",e);if(t&&(i=t),!s){const t=ke("image",e);t&&(s=t)}}}if(!l){const e=ke("dateModified",t);e&&(l=e)}if(!c){const e=ke("datePublished",t);e&&(c=e)}const a={};n.length>0&&(a.tags=n),r.length>0&&(a.cover=r),o.length>0&&(a.excerpt=o),l.length>0&&(a.dateModified=l),c.length>0&&(a.datePublished=c);const u={name:""};return i&&(u.name=i),s&&(u.avatar=s),u.name&&(a.author=[u]),a}(e,t),i=(n.tags||r.tags||"").trim();let s=i.length>0?i.split(/,|,|、/).filter((e=>{const t=e.trim().length;return t>0&&t<20})):[];return 1===s.length&&(s=s[0].split(/\s+/).filter((e=>e.trim().length>0))),{tags:s,cover:n.cover||r.cover||"",title:n.title||e.title||"",excerpt:n.excerpt||r.excerpt||"",author:n.author||r.author||[],modified:n.dateModified||r.dateModified||"",published:n.datePublished||r.datePublished||""}}const ye=["url","rtl","lang","next","text","from","domain","content","read_time","word_count"].concat(be);function we(e,t,n,r){const i=r.title,s=r.fields||["title"],l=r.selector||{};return new Promise((r=>{const u={};if(s.includes("domain")&&(u.domain=e.location.hostname),function(e,t){let n=!1;return d(e,(e=>{if(t.includes(e))return n=!0,n})),n}(s,be)){const r=xe(e,t);if(s.includes("excerpt")||l.excerpt){const e=K(t,l.excerpt)||r.excerpt;e.length>0&&(u.excerpt=e)}if(s.includes("tags")||l.tags){let e=[];const i=K(t,l.tags,!0),s=function(e,t){if(!e)return[];const n=e.querySelectorAll('[class*="tag"]');if(n.length<=0)return[];const r=[],i=t?t.getBoundingClientRect():{top:0,bottom:0};return d(n,(e=>{if(!v(e))return;if(i.bottom>0){const t=e.getBoundingClientRect();if(Math.abs(i.bottom-t.top)>500&&Math.abs(i.top-t.top)>500)return}if(e.querySelector("div")||c(e,"div"))return;const t=e.querySelectorAll("a");if(t.length>0)return t.forEach((e=>{r.push(k(e))})),!0;if(c(e,"a"))r.push(k(e));else{const t=R(e);/name/.test(t)&&r.push(k(e))}})),r}(i.length>0?i[0]:t,n);if(s.length>0)e=s;else{const t=r.tags;t.length>0&&(e=t)}if(e.length>0){const t=e.map((e=>e.startsWith("#")&&e.length>1?e.substring(1):e)).filter((e=>e.length>0));u.tags=t.filter(((e,n)=>t.indexOf(e,0)===n))}}if(s.includes("title")){const n=r.title,s=i?k(i):n;t===e.body?u.title=i||G(s):s!==n&&(u.title=G(s))}if(s.includes("cover")||l.cover){const s=K(t,l.cover,!0);if(Array.isArray(s)&&s.length>0&&(u.cover=s[0]),!u.cover){const s=he(e,t,n,i);if(s&&a(s))u.cover=s;else{const e=r.cover;e.length>0&&(u.cover=e)}}}if(s.includes("modified")||l.modified){const s=K(t,l.modified);if(s)u.modified=s;else{const t=function(e,t=document.body,n){let r="";if(d(e.querySelectorAll(['[itemprop="dateModified"]','[itemprop="datePublished"]',"time",'[class*="time"]'].join(", ")),(e=>{const t=e.getAttribute("datetime")||k(e);if(!t)return;const n=t.match(ae);if(Array.isArray(n))return r=n[0],!0;const i=k(e).match(ae);return Array.isArray(i)?(r=i[0],!0):void 0})),r)return r;if(d(e.querySelectorAll(['[class^="date"]','[class*="-date"]','[class*="_date"]'].join(", ")),(e=>{const t=k(e).match(ae);if(Array.isArray(t))return r=t[0],!0})),r)return r;if(a(n)){const e=ce(n,(e=>e.nextElementSibling));if(e===t)return"";const r=k(e).match(ae);if(Array.isArray(r))return r[0]}else{const e=k(ce(t,(e=>e.previousElementSibling))).match(ae);if(Array.isArray(e))return e[0]}return""}(e.body,n,a(u.title)?u.title:i);if(t.length>0)u.modified=t;else{const e=r.modified;e.length>0&&(u.modified=e)}}}if(s.includes("published")||l.published){const e=K(t,l.published);if(e)u.published=e;else{const e=r.published||u.modified||"";e.length>0&&(u.published=e)}}if(s.includes("author")||l.author){const e=K(t,l.author,!0),s=me(e.length>0?e[0]:t,n,a(u.title)?u.title:i,u.cover);if(s.length>0)u.author=s;else{const e=r.author;e.length>0&&(u.author=e)}}}if(s.includes("from")||l.from){const r=K(t,l.from);if(r)u.from=r;else{const t=function(e,t){const n=e.body.querySelectorAll('[class*="copyright"]');if(n.length<=0)return"";let r="";const i=t?t.getBoundingClientRect():{top:0,bottom:0};return d(n,(e=>{if(i.bottom>0){const t=e.getBoundingClientRect();if(Math.abs(i.top-t.top)>250&&Math.abs(i.bottom-t.bottom)>250)return}if(e.querySelectorAll('[class*="copyright"]').length>0)return;const t=k(e);if(t.length<=0)return;const n=t.match(ue);return Array.isArray(n)&&n.length>0?(r=n[0],!0):void 0})),r}(e,n)||"";t.length>0&&(u.from=t)}}if(s.includes("next")||l.next){const n=K(t,l.next);if(n)u.next=n;else{const t=ie(e.body);t&&o(t)&&(u.next=t)}}const h=n.innerText;if(s.includes("text")){if(u.text=h,u.excerpt){const e=u.excerpt.substring(0,5);e&&h.indexOf(e)>=0&&delete u.excerpt}}else if(u.excerpt){const e=u.excerpt.substring(0,5);e&&h.indexOf(e)>=0&&delete u.excerpt}if(s.includes("read_time")&&(u.read_time=function(e,t){const n=function(e){const t={en:{cpm:987,variance:118},ar:{cpm:612,variance:88},de:{cpm:920,variance:86},es:{cpm:1025,variance:127},fi:{cpm:1078,variance:121},fr:{cpm:998,variance:126},he:{cpm:833,variance:130},it:{cpm:950,variance:140},jw:{cpm:357,variance:56},nl:{cpm:978,variance:143},pl:{cpm:916,variance:126},pt:{cpm:913,variance:145},ru:{cpm:986,variance:175},sk:{cpm:885,variance:145},sv:{cpm:917,variance:156},tr:{cpm:1054,variance:156},zh:{cpm:255,variance:29}},n=e?e.split("-").shift():"zh";return t[n]?t[n]:t.zh}(le(e,t)),r=n.cpm-n.variance,i=n.cpm+n.variance,s=$(t);return(Math.ceil(s/r)+Math.ceil(s/i))/2}(e,h)),s.includes("word_count")&&(u.word_count=$(h)),s.includes("rtl")&&(u.rtl=function(e=document){let t="ltr";if(e.dir)t=e.dir;else{const n=e.documentElement.getAttribute("dir");if(n)t=n;else{t=getComputedStyle(e.body).direction||getComputedStyle(e.documentElement).direction}}return t}(e)),s.includes("lang")&&(u.lang=le(e,h)),u.cover&&(o(u.cover)?h.indexOf(u.cover)>=0&&delete u.cover:a(u.cover)&&n.contains(u.cover)&&delete u.cover),u.excerpt){if(p(h.slice(0,u.excerpt.length),u.excerpt,.8)&&delete u.excerpt,u.excerpt&&u.title){p(k(u.title),u.excerpt,.8)&&delete u.excerpt}}Object.keys(l).forEach((e=>{const n=l[e];if(!ye.includes(e)&&o(n)){const r=K(t,n);r&&(u[e]=r)}})),r(u)}))}function Ae(e,t,n,r,i){return te(e,t,r,i).then((i=>{const s=Array.isArray(i.content)?t:i.content;return we(e,t,s,{title:i.title,fields:n,selector:r}).then((e=>Promise.resolve({...i,...e})))}))}function ve(e){if(!e||!e.body)return Promise.resolve();const t=e.body;return new Promise((e=>{var n;n=e,d(t.querySelectorAll("h-char>h-inner"),(e=>{let t=k(e);if(t.length<=0)return;const n=e.parentElement;if(!n)return;const r=n.parentNode;if(!r)return;const i=[];let s=n.previousSibling;for(;s&&l(s);){const e=k(s);e.length>0&&(t=e+t),i.push(s),s=s.previousSibling}for(s=n.nextSibling;s&&l(s);){const e=k(s);e.length>0&&(t+=e),i.push(s),s=s.nextSibling}d(i,(e=>{e.parentNode&&e.parentNode.removeChild(e)}));const o=document.createTextNode(t);r.replaceChild(o,n)})),n()}))}function $e(e,t={}){if(!window.chrome||!window.chrome.runtime)return alert("商务合作请联系wenguang.fe@gmail.com"),Promise.resolve({type:"html",title:e.title,content:e.body});const n=t.selector,r=Array.isArray(t.fields)&&t.fields.length>0?t.fields:["url","title","content"];return new Promise(((t,i)=>{!function(e){if("complete"===document.readyState)return void e();let t;function n(r){r&&r.type&&"readystatechange"==r.type&&"complete"!=document.readyState||(t&&clearTimeout(t),document.removeEventListener("DOMContentLoaded",n,!1),document.removeEventListener("readystatechange",n,!1),e())}document.addEventListener("DOMContentLoaded",n,!1),document.addEventListener("readystatechange",n,!1),function e(){t&&clearTimeout(t),t=setTimeout((function(){document.body?n():e()}),4e3)}()}((()=>{ve(e).then((()=>{if(n&&n.wrapper&&o(n.wrapper)){const s=n.wrapper;return delete n.wrapper,void Ae(e,e.body,r,{...n,content:s},!0).then((t=>{const i=t.content&&Array.isArray(t.content)?t.content:[t.content];return Promise.all(i.map((t=>Ae(e,t,r,n)))).then((e=>(e.length>0&&(t.content=e),Promise.resolve(t))))})).then((e=>{t(e)})).catch(i)}Ae(e,e.body,r,n).then((e=>{t(e)})).catch(i)}))}))}))}function Se(e,t=document){return e.option("parse_option").then((n=>{const r=n||{},i=Array.isArray(r.fields)?r.fields:[],s={},o=["url","lang","domain","title","content"];return y(e.applyFilter("rule",{}),((e,t)=>{(o.includes(t)||i.includes(t))&&(s[t]=e)})),e.data("keep",!!r.keep),$e(t,{selector:s,fields:[...o,...["tags","cover","author","excerpt","modified","published","read_time","word_count"].filter((e=>i.includes(e)))]}).then((e=>e&&e.content?Promise.resolve(e):Promise.reject("No article found")))})).catch((e=>Promise.reject(e&&e.message?e.message:e)))}function Ce(e,t){return Object.prototype.toString.call(e)===`[object ${t}]`}function Ee(e){return Ce(e,"String")}function _e(e){return e&&e.nodeType&&1===e.nodeType}function ze(e){return Ce(e,"Boolean")}function Te(e){const t=Array.isArray(e.content)&&e.content.length>0?e.content[0]:e.content;if(_e(t))return t}function Re(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let qe={async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null};function Le(e){qe=e}const Ne=/[&<>"']/,Be=new RegExp(Ne.source,"g"),Me=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,Pe=new RegExp(Me.source,"g"),je={"&":"&","<":"<",">":">",'"':""","'":"'"},Ie=e=>je[e];function Fe(e,t){if(t){if(Ne.test(e))return e.replace(Be,Ie)}else if(Me.test(e))return e.replace(Pe,Ie);return e}const Ze=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function De(e){return e.replace(Ze,((e,t)=>"colon"===(t=t.toLowerCase())?":":"#"===t.charAt(0)?"x"===t.charAt(1)?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""))}const Oe=/(^|[^\[])\^/g;function We(e,t){let n="string"==typeof e?e:e.source;t=t||"";const r={replace:(e,t)=>{let i="string"==typeof t?t:t.source;return i=i.replace(Oe,"$1"),n=n.replace(e,i),r},getRegex:()=>new RegExp(n,t)};return r}function He(e){try{e=encodeURI(e).replace(/%25/g,"%")}catch(e){return null}return e}const Qe={exec:()=>null};function Ve(e,t){const n=e.replace(/\|/g,((e,t,n)=>{let r=!1,i=t;for(;--i>=0&&"\\"===n[i];)r=!r;return r?"|":" |"})).split(/ \|/);let r=0;if(n[0].trim()||n.shift(),n.length>0&&!n[n.length-1].trim()&&n.pop(),t)if(n.length>t)n.splice(t);else for(;n.length<t;)n.push("");for(;r<n.length;r++)n[r]=n[r].trim().replace(/\\\|/g,"|");return n}function Ue(e,t,n){const r=e.length;if(0===r)return"";let i=0;for(;i<r;){const s=e.charAt(r-i-1);if(s!==t||n){if(s===t||!n)break;i++}else i++}return e.slice(0,r-i)}function Xe(e,t,n,r){const i=t.href,s=t.title?Fe(t.title):null,o=e[1].replace(/\\([\[\]])/g,"$1");if("!"!==e[0].charAt(0)){r.state.inLink=!0;const e={type:"link",raw:n,href:i,title:s,text:o,tokens:r.inlineTokens(o)};return r.state.inLink=!1,e}return{type:"image",raw:n,href:i,title:s,text:Fe(o)}}class Je{options;rules;lexer;constructor(e){this.options=e||qe}space(e){const t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){const t=this.rules.block.code.exec(e);if(t){const e=t[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?e:Ue(e,"\n")}}}fences(e){const t=this.rules.block.fences.exec(e);if(t){const e=t[0],n=function(e,t){const n=e.match(/^(\s+)(?:```)/);if(null===n)return t;const r=n[1];return t.split("\n").map((e=>{const t=e.match(/^\s+/);if(null===t)return e;const[n]=t;return n.length>=r.length?e.slice(r.length):e})).join("\n")}(e,t[3]||"");return{type:"code",raw:e,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:n}}}heading(e){const t=this.rules.block.heading.exec(e);if(t){let e=t[2].trim();if(/#$/.test(e)){const t=Ue(e,"#");this.options.pedantic?e=t.trim():t&&!/ $/.test(t)||(e=t.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:e,tokens:this.lexer.inline(e)}}}hr(e){const t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:t[0]}}blockquote(e){const t=this.rules.block.blockquote.exec(e);if(t){let e=t[0].replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,"\n $1");e=Ue(e.replace(/^ *>[ \t]?/gm,""),"\n");const n=this.lexer.state.top;this.lexer.state.top=!0;const r=this.lexer.blockTokens(e);return this.lexer.state.top=n,{type:"blockquote",raw:t[0],tokens:r,text:e}}}list(e){let t=this.rules.block.list.exec(e);if(t){let n=t[1].trim();const r=n.length>1,i={type:"list",raw:"",ordered:r,start:r?+n.slice(0,-1):"",loose:!1,items:[]};n=r?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=r?n:"[*+-]");const s=new RegExp(`^( {0,3}${n})((?:[\t ][^\\n]*)?(?:\\n|$))`);let o="",l="",c=!1;for(;e;){let n=!1;if(!(t=s.exec(e)))break;if(this.rules.block.hr.test(e))break;o=t[0],e=e.substring(o.length);let r=t[2].split("\n",1)[0].replace(/^\t+/,(e=>" ".repeat(3*e.length))),a=e.split("\n",1)[0],u=0;this.options.pedantic?(u=2,l=r.trimStart()):(u=t[2].search(/[^ ]/),u=u>4?1:u,l=r.slice(u),u+=t[1].length);let h=!1;if(!r&&/^ *$/.test(a)&&(o+=a+"\n",e=e.substring(a.length+1),n=!0),!n){const t=new RegExp(`^ {0,${Math.min(3,u-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ \t][^\\n]*)?(?:\\n|$))`),n=new RegExp(`^ {0,${Math.min(3,u-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),i=new RegExp(`^ {0,${Math.min(3,u-1)}}(?:\`\`\`|~~~)`),s=new RegExp(`^ {0,${Math.min(3,u-1)}}#`);for(;e;){const c=e.split("\n",1)[0];if(a=c,this.options.pedantic&&(a=a.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),i.test(a))break;if(s.test(a))break;if(t.test(a))break;if(n.test(e))break;if(a.search(/[^ ]/)>=u||!a.trim())l+="\n"+a.slice(u);else{if(h)break;if(r.search(/[^ ]/)>=4)break;if(i.test(r))break;if(s.test(r))break;if(n.test(r))break;l+="\n"+a}h||a.trim()||(h=!0),o+=c+"\n",e=e.substring(c.length+1),r=a.slice(u)}}i.loose||(c?i.loose=!0:/\n *\n *$/.test(o)&&(c=!0));let p,d=null;this.options.gfm&&(d=/^\[[ xX]\] /.exec(l),d&&(p="[ ] "!==d[0],l=l.replace(/^\[[ xX]\] +/,""))),i.items.push({type:"list_item",raw:o,task:!!d,checked:p,loose:!1,text:l,tokens:[]}),i.raw+=o}i.items[i.items.length-1].raw=o.trimEnd(),i.items[i.items.length-1].text=l.trimEnd(),i.raw=i.raw.trimEnd();for(let e=0;e<i.items.length;e++)if(this.lexer.state.top=!1,i.items[e].tokens=this.lexer.blockTokens(i.items[e].text,[]),!i.loose){const t=i.items[e].tokens.filter((e=>"space"===e.type)),n=t.length>0&&t.some((e=>/\n.*\n/.test(e.raw)));i.loose=n}if(i.loose)for(let e=0;e<i.items.length;e++)i.items[e].loose=!0;return i}}html(e){const t=this.rules.block.html.exec(e);if(t){return{type:"html",block:!0,raw:t[0],pre:"pre"===t[1]||"script"===t[1]||"style"===t[1],text:t[0]}}}def(e){const t=this.rules.block.def.exec(e);if(t){const e=t[1].toLowerCase().replace(/\s+/g," "),n=t[2]?t[2].replace(/^<(.*)>$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",r=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:e,raw:t[0],href:n,title:r}}}table(e){const t=this.rules.block.table.exec(e);if(!t)return;if(!/[:|]/.test(t[2]))return;const n=Ve(t[1]),r=t[2].replace(/^\||\| *$/g,"").split("|"),i=t[3]&&t[3].trim()?t[3].replace(/\n[ \t]*$/,"").split("\n"):[],s={type:"table",raw:t[0],header:[],align:[],rows:[]};if(n.length===r.length){for(const e of r)/^ *-+: *$/.test(e)?s.align.push("right"):/^ *:-+: *$/.test(e)?s.align.push("center"):/^ *:-+ *$/.test(e)?s.align.push("left"):s.align.push(null);for(const e of n)s.header.push({text:e,tokens:this.lexer.inline(e)});for(const e of i)s.rows.push(Ve(e,s.header.length).map((e=>({text:e,tokens:this.lexer.inline(e)}))));return s}}lheading(e){const t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:"="===t[2].charAt(0)?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){const t=this.rules.block.paragraph.exec(e);if(t){const e="\n"===t[1].charAt(t[1].length-1)?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:e,tokens:this.lexer.inline(e)}}}text(e){const t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){const t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:Fe(t[1])}}tag(e){const t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&/^<a /i.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&/^<\/a>/i.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){const t=this.rules.inline.link.exec(e);if(t){const e=t[2].trim();if(!this.options.pedantic&&/^</.test(e)){if(!/>$/.test(e))return;const t=Ue(e.slice(0,-1),"\\");if((e.length-t.length)%2==0)return}else{const e=function(e,t){if(-1===e.indexOf(t[1]))return-1;let n=0;for(let r=0;r<e.length;r++)if("\\"===e[r])r++;else if(e[r]===t[0])n++;else if(e[r]===t[1]&&(n--,n<0))return r;return-1}(t[2],"()");if(e>-1){const n=(0===t[0].indexOf("!")?5:4)+t[1].length+e;t[2]=t[2].substring(0,e),t[0]=t[0].substring(0,n).trim(),t[3]=""}}let n=t[2],r="";if(this.options.pedantic){const e=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(n);e&&(n=e[1],r=e[3])}else r=t[3]?t[3].slice(1,-1):"";return n=n.trim(),/^</.test(n)&&(n=this.options.pedantic&&!/>$/.test(e)?n.slice(1):n.slice(1,-1)),Xe(t,{href:n?n.replace(this.rules.inline.anyPunctuation,"$1"):n,title:r?r.replace(this.rules.inline.anyPunctuation,"$1"):r},t[0],this.lexer)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){const e=t[(n[2]||n[1]).replace(/\s+/g," ").toLowerCase()];if(!e){const e=n[0].charAt(0);return{type:"text",raw:e,text:e}}return Xe(n,e,n[0],this.lexer)}}emStrong(e,t,n=""){let r=this.rules.inline.emStrongLDelim.exec(e);if(!r)return;if(r[3]&&n.match(/[\p{L}\p{N}]/u))return;if(!(r[1]||r[2]||"")||!n||this.rules.inline.punctuation.exec(n)){const n=[...r[0]].length-1;let i,s,o=n,l=0;const c="*"===r[0][0]?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(c.lastIndex=0,t=t.slice(-1*e.length+n);null!=(r=c.exec(t));){if(i=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!i)continue;if(s=[...i].length,r[3]||r[4]){o+=s;continue}if((r[5]||r[6])&&n%3&&!((n+s)%3)){l+=s;continue}if(o-=s,o>0)continue;s=Math.min(s,s+o+l);const t=[...r[0]][0].length,c=e.slice(0,n+r.index+t+s);if(Math.min(n,s)%2){const e=c.slice(1,-1);return{type:"em",raw:c,text:e,tokens:this.lexer.inlineTokens(e)}}const a=c.slice(2,-2);return{type:"strong",raw:c,text:a,tokens:this.lexer.inlineTokens(a)}}}}codespan(e){const t=this.rules.inline.code.exec(e);if(t){let e=t[2].replace(/\n/g," ");const n=/[^ ]/.test(e),r=/^ /.test(e)&&/ $/.test(e);return n&&r&&(e=e.substring(1,e.length-1)),e=Fe(e,!0),{type:"codespan",raw:t[0],text:e}}}br(e){const t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e){const t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){const t=this.rules.inline.autolink.exec(e);if(t){let e,n;return"@"===t[2]?(e=Fe(t[1]),n="mailto:"+e):(e=Fe(t[1]),n=e),{type:"link",raw:t[0],text:e,href:n,tokens:[{type:"text",raw:e,text:e}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let e,n;if("@"===t[2])e=Fe(t[0]),n="mailto:"+e;else{let r;do{r=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??""}while(r!==t[0]);e=Fe(t[0]),n="www."===t[1]?"http://"+t[0]:t[0]}return{type:"link",raw:t[0],text:e,href:n,tokens:[{type:"text",raw:e,text:e}]}}}inlineText(e){const t=this.rules.inline.text.exec(e);if(t){let e;return e=this.lexer.state.inRawBlock?t[0]:Fe(t[0]),{type:"text",raw:t[0],text:e}}}}const Ye=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,Ge=/(?:[*+-]|\d{1,9}[.)])/,Ke=We(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,Ge).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),et=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,tt=/(?!\s*\])(?:\\.|[^\[\]\\])+/,nt=We(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",tt).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),rt=We(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Ge).getRegex(),it="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",st=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,ot=We("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",st).replace("tag",it).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),lt=We(et).replace("hr",Ye).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",it).getRegex(),ct={blockquote:We(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",lt).getRegex(),code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,def:nt,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,hr:Ye,html:ot,lheading:Ke,list:rt,newline:/^(?: *(?:\n|$))+/,paragraph:lt,table:Qe,text:/^[^\n]+/},at=We("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Ye).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",it).getRegex(),ut={...ct,table:at,paragraph:We(et).replace("hr",Ye).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",at).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",it).getRegex()},ht={...ct,html:We("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",st).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Qe,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:We(et).replace("hr",Ye).replace("heading"," *#{1,6} *[^\n]").replace("lheading",Ke).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},pt=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,dt=/^( {2,}|\\)\n(?!\s*$)/,ft="\\p{P}\\p{S}",gt=We(/^((?![*_])[\spunctuation])/,"u").replace(/punctuation/g,ft).getRegex(),mt=We(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,ft).getRegex(),kt=We("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,ft).getRegex(),bt=We("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,ft).getRegex(),xt=We(/\\([punct])/,"gu").replace(/punct/g,ft).getRegex(),yt=We(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),wt=We(st).replace("(?:--\x3e|$)","--\x3e").getRegex(),At=We("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",wt).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),vt=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,$t=We(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",vt).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),St=We(/^!?\[(label)\]\[(ref)\]/).replace("label",vt).replace("ref",tt).getRegex(),Ct=We(/^!?\[(ref)\](?:\[\])?/).replace("ref",tt).getRegex(),Et={_backpedal:Qe,anyPunctuation:xt,autolink:yt,blockSkip:/\[[^[\]]*?\]\([^\(\)]*?\)|`[^`]*?`|<[^<>]*?>/g,br:dt,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,del:Qe,emStrongLDelim:mt,emStrongRDelimAst:kt,emStrongRDelimUnd:bt,escape:pt,link:$t,nolink:Ct,punctuation:gt,reflink:St,reflinkSearch:We("reflink|nolink(?!\\()","g").replace("reflink",St).replace("nolink",Ct).getRegex(),tag:At,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,url:Qe},_t={...Et,link:We(/^!?\[(label)\]\((.*?)\)/).replace("label",vt).getRegex(),reflink:We(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",vt).getRegex()},zt={...Et,escape:We(pt).replace("])","~|])").getRegex(),url:We(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/},Tt={...zt,br:We(dt).replace("{2,}","*").getRegex(),text:We(zt.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Rt={normal:ct,gfm:ut,pedantic:ht},qt={normal:Et,gfm:zt,breaks:Tt,pedantic:_t};class Lt{tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||qe,this.options.tokenizer=this.options.tokenizer||new Je,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};const t={block:Rt.normal,inline:qt.normal};this.options.pedantic?(t.block=Rt.pedantic,t.inline=qt.pedantic):this.options.gfm&&(t.block=Rt.gfm,this.options.breaks?t.inline=qt.breaks:t.inline=qt.gfm),this.tokenizer.rules=t}static get rules(){return{block:Rt,inline:qt}}static lex(e,t){return new Lt(t).lex(e)}static lexInline(e,t){return new Lt(t).inlineTokens(e)}lex(e){e=e.replace(/\r\n|\r/g,"\n"),this.blockTokens(e,this.tokens);for(let e=0;e<this.inlineQueue.length;e++){const t=this.inlineQueue[e];this.inlineTokens(t.src,t.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[]){let n,r,i,s;for(e=this.options.pedantic?e.replace(/\t/g," ").replace(/^ +$/gm,""):e.replace(/^( *)(\t+)/gm,((e,t,n)=>t+" ".repeat(n.length)));e;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some((r=>!!(n=r.call({lexer:this},e,t))&&(e=e.substring(n.raw.length),t.push(n),!0)))))if(n=this.tokenizer.space(e))e=e.substring(n.raw.length),1===n.raw.length&&t.length>0?t[t.length-1].raw+="\n":t.push(n);else if(n=this.tokenizer.code(e))e=e.substring(n.raw.length),r=t[t.length-1],!r||"paragraph"!==r.type&&"text"!==r.type?t.push(n):(r.raw+="\n"+n.raw,r.text+="\n"+n.text,this.inlineQueue[this.inlineQueue.length-1].src=r.text);else if(n=this.tokenizer.fences(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.heading(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.hr(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.blockquote(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.list(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.html(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.def(e))e=e.substring(n.raw.length),r=t[t.length-1],!r||"paragraph"!==r.type&&"text"!==r.type?this.tokens.links[n.tag]||(this.tokens.links[n.tag]={href:n.href,title:n.title}):(r.raw+="\n"+n.raw,r.text+="\n"+n.raw,this.inlineQueue[this.inlineQueue.length-1].src=r.text);else if(n=this.tokenizer.table(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.lheading(e))e=e.substring(n.raw.length),t.push(n);else{if(i=e,this.options.extensions&&this.options.extensions.startBlock){let t=1/0;const n=e.slice(1);let r;this.options.extensions.startBlock.forEach((e=>{r=e.call({lexer:this},n),"number"==typeof r&&r>=0&&(t=Math.min(t,r))})),t<1/0&&t>=0&&(i=e.substring(0,t+1))}if(this.state.top&&(n=this.tokenizer.paragraph(i)))r=t[t.length-1],s&&"paragraph"===r.type?(r.raw+="\n"+n.raw,r.text+="\n"+n.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):t.push(n),s=i.length!==e.length,e=e.substring(n.raw.length);else if(n=this.tokenizer.text(e))e=e.substring(n.raw.length),r=t[t.length-1],r&&"text"===r.type?(r.raw+="\n"+n.raw,r.text+="\n"+n.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):t.push(n);else if(e){const t="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(t);break}throw new Error(t)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let n,r,i,s,o,l,c=e;if(this.tokens.links){const e=Object.keys(this.tokens.links);if(e.length>0)for(;null!=(s=this.tokenizer.rules.inline.reflinkSearch.exec(c));)e.includes(s[0].slice(s[0].lastIndexOf("[")+1,-1))&&(c=c.slice(0,s.index)+"["+"a".repeat(s[0].length-2)+"]"+c.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(s=this.tokenizer.rules.inline.blockSkip.exec(c));)c=c.slice(0,s.index)+"["+"a".repeat(s[0].length-2)+"]"+c.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(s=this.tokenizer.rules.inline.anyPunctuation.exec(c));)c=c.slice(0,s.index)+"++"+c.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;e;)if(o||(l=""),o=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some((r=>!!(n=r.call({lexer:this},e,t))&&(e=e.substring(n.raw.length),t.push(n),!0)))))if(n=this.tokenizer.escape(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.tag(e))e=e.substring(n.raw.length),r=t[t.length-1],r&&"text"===n.type&&"text"===r.type?(r.raw+=n.raw,r.text+=n.text):t.push(n);else if(n=this.tokenizer.link(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.reflink(e,this.tokens.links))e=e.substring(n.raw.length),r=t[t.length-1],r&&"text"===n.type&&"text"===r.type?(r.raw+=n.raw,r.text+=n.text):t.push(n);else if(n=this.tokenizer.emStrong(e,c,l))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.codespan(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.br(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.del(e))e=e.substring(n.raw.length),t.push(n);else if(n=this.tokenizer.autolink(e))e=e.substring(n.raw.length),t.push(n);else if(this.state.inLink||!(n=this.tokenizer.url(e))){if(i=e,this.options.extensions&&this.options.extensions.startInline){let t=1/0;const n=e.slice(1);let r;this.options.extensions.startInline.forEach((e=>{r=e.call({lexer:this},n),"number"==typeof r&&r>=0&&(t=Math.min(t,r))})),t<1/0&&t>=0&&(i=e.substring(0,t+1))}if(n=this.tokenizer.inlineText(i))e=e.substring(n.raw.length),"_"!==n.raw.slice(-1)&&(l=n.raw.slice(-1)),o=!0,r=t[t.length-1],r&&"text"===r.type?(r.raw+=n.raw,r.text+=n.text):t.push(n);else if(e){const t="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(t);break}throw new Error(t)}}else e=e.substring(n.raw.length),t.push(n);return t}}class Nt{options;constructor(e){this.options=e||qe}code(e,t,n){const r=(t||"").match(/^\S*/)?.[0];return e=e.replace(/\n$/,"")+"\n",r?'<pre><code class="language-'+Fe(r)+'">'+(n?e:Fe(e,!0))+"</code></pre>\n":"<pre><code>"+(n?e:Fe(e,!0))+"</code></pre>\n"}blockquote(e){return`<blockquote>\n${e}</blockquote>\n`}html(e,t){return e}heading(e,t,n){return`<h${t}>${e}</h${t}>\n`}hr(){return"<hr>\n"}list(e,t,n){const r=t?"ol":"ul";return"<"+r+(t&&1!==n?' start="'+n+'"':"")+">\n"+e+"</"+r+">\n"}listitem(e,t,n){return`<li>${e}</li>\n`}checkbox(e){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox">'}paragraph(e){return`<p>${e}</p>\n`}table(e,t){return t&&(t=`<tbody>${t}</tbody>`),"<table>\n<thead>\n"+e+"</thead>\n"+t+"</table>\n"}tablerow(e){return`<tr>\n${e}</tr>\n`}tablecell(e,t){const n=t.header?"th":"td";return(t.align?`<${n} align="${t.align}">`:`<${n}>`)+e+`</${n}>\n`}strong(e){return`<strong>${e}</strong>`}em(e){return`<em>${e}</em>`}codespan(e){return`<code>${e}</code>`}br(){return"<br>"}del(e){return`<del>${e}</del>`}link(e,t,n){const r=He(e);if(null===r)return n;let i='<a href="'+(e=r)+'"';return t&&(i+=' title="'+t+'"'),i+=">"+n+"</a>",i}image(e,t,n){const r=He(e);if(null===r)return n;let i=`<img src="${e=r}" alt="${n}"`;return t&&(i+=` title="${t}"`),i+=">",i}text(e){return e}}class Bt{strong(e){return e}em(e){return e}codespan(e){return e}del(e){return e}html(e){return e}text(e){return e}link(e,t,n){return""+n}image(e,t,n){return""+n}br(){return""}}class Mt{options;renderer;textRenderer;constructor(e){this.options=e||qe,this.options.renderer=this.options.renderer||new Nt,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new Bt}static parse(e,t){return new Mt(t).parse(e)}static parseInline(e,t){return new Mt(t).parseInline(e)}parse(e,t=!0){let n="";for(let r=0;r<e.length;r++){const i=e[r];if(this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[i.type]){const e=i,t=this.options.extensions.renderers[e.type].call({parser:this},e);if(!1!==t||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(e.type)){n+=t||"";continue}}switch(i.type){case"space":continue;case"hr":n+=this.renderer.hr();continue;case"heading":{const e=i;n+=this.renderer.heading(this.parseInline(e.tokens),e.depth,De(this.parseInline(e.tokens,this.textRenderer)));continue}case"code":{const e=i;n+=this.renderer.code(e.text,e.lang,!!e.escaped);continue}case"table":{const e=i;let t="",r="";for(let t=0;t<e.header.length;t++)r+=this.renderer.tablecell(this.parseInline(e.header[t].tokens),{header:!0,align:e.align[t]});t+=this.renderer.tablerow(r);let s="";for(let t=0;t<e.rows.length;t++){const n=e.rows[t];r="";for(let t=0;t<n.length;t++)r+=this.renderer.tablecell(this.parseInline(n[t].tokens),{header:!1,align:e.align[t]});s+=this.renderer.tablerow(r)}n+=this.renderer.table(t,s);continue}case"blockquote":{const e=i,t=this.parse(e.tokens);n+=this.renderer.blockquote(t);continue}case"list":{const e=i,t=e.ordered,r=e.start,s=e.loose;let o="";for(let t=0;t<e.items.length;t++){const n=e.items[t],r=n.checked,i=n.task;let l="";if(n.task){const e=this.renderer.checkbox(!!r);s?n.tokens.length>0&&"paragraph"===n.tokens[0].type?(n.tokens[0].text=e+" "+n.tokens[0].text,n.tokens[0].tokens&&n.tokens[0].tokens.length>0&&"text"===n.tokens[0].tokens[0].type&&(n.tokens[0].tokens[0].text=e+" "+n.tokens[0].tokens[0].text)):n.tokens.unshift({type:"text",text:e+" "}):l+=e+" "}l+=this.parse(n.tokens,s),o+=this.renderer.listitem(l,i,!!r)}n+=this.renderer.list(o,t,r);continue}case"html":{const e=i;n+=this.renderer.html(e.text,e.block);continue}case"paragraph":{const e=i;n+=this.renderer.paragraph(this.parseInline(e.tokens));continue}case"text":{let s=i,o=s.tokens?this.parseInline(s.tokens):s.text;for(;r+1<e.length&&"text"===e[r+1].type;)s=e[++r],o+="\n"+(s.tokens?this.parseInline(s.tokens):s.text);n+=t?this.renderer.paragraph(o):o;continue}default:{const e='Token with "'+i.type+'" type was not found.';if(this.options.silent)return console.error(e),"";throw new Error(e)}}}return n}parseInline(e,t){t=t||this.renderer;let n="";for(let r=0;r<e.length;r++){const i=e[r];if(this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[i.type]){const e=this.options.extensions.renderers[i.type].call({parser:this},i);if(!1!==e||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(i.type)){n+=e||"";continue}}switch(i.type){case"escape":{const e=i;n+=t.text(e.text);break}case"html":{const e=i;n+=t.html(e.text);break}case"link":{const e=i;n+=t.link(e.href,e.title,this.parseInline(e.tokens,t));break}case"image":{const e=i;n+=t.image(e.href,e.title,e.text);break}case"strong":{const e=i;n+=t.strong(this.parseInline(e.tokens,t));break}case"em":{const e=i;n+=t.em(this.parseInline(e.tokens,t));break}case"codespan":{const e=i;n+=t.codespan(e.text);break}case"br":n+=t.br();break;case"del":{const e=i;n+=t.del(this.parseInline(e.tokens,t));break}case"text":{const e=i;n+=t.text(e.text);break}default:{const e='Token with "'+i.type+'" type was not found.';if(this.options.silent)return console.error(e),"";throw new Error(e)}}}return n}}class Pt{options;constructor(e){this.options=e||qe}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}}const jt=new class{defaults={async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null};options=this.setOptions;parse=this.#e(Lt.lex,Mt.parse);parseInline=this.#e(Lt.lexInline,Mt.parseInline);Parser=Mt;Renderer=Nt;TextRenderer=Bt;Lexer=Lt;Tokenizer=Je;Hooks=Pt;constructor(...e){this.use(...e)}walkTokens(e,t){let n=[];for(const r of e)switch(n=n.concat(t.call(this,r)),r.type){case"table":{const e=r;for(const r of e.header)n=n.concat(this.walkTokens(r.tokens,t));for(const r of e.rows)for(const e of r)n=n.concat(this.walkTokens(e.tokens,t));break}case"list":{const e=r;n=n.concat(this.walkTokens(e.items,t));break}default:{const e=r;this.defaults.extensions?.childTokens?.[e.type]?this.defaults.extensions.childTokens[e.type].forEach((r=>{const i=e[r].flat(1/0);n=n.concat(this.walkTokens(i,t))})):e.tokens&&(n=n.concat(this.walkTokens(e.tokens,t)))}}return n}use(...e){const t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach((e=>{const n={...e};if(n.async=this.defaults.async||n.async||!1,e.extensions&&(e.extensions.forEach((e=>{if(!e.name)throw new Error("extension name required");if("renderer"in e){const n=t.renderers[e.name];t.renderers[e.name]=n?function(...t){let r=e.renderer.apply(this,t);return!1===r&&(r=n.apply(this,t)),r}:e.renderer}if("tokenizer"in e){if(!e.level||"block"!==e.level&&"inline"!==e.level)throw new Error("extension level must be 'block' or 'inline'");const n=t[e.level];n?n.unshift(e.tokenizer):t[e.level]=[e.tokenizer],e.start&&("block"===e.level?t.startBlock?t.startBlock.push(e.start):t.startBlock=[e.start]:"inline"===e.level&&(t.startInline?t.startInline.push(e.start):t.startInline=[e.start]))}"childTokens"in e&&e.childTokens&&(t.childTokens[e.name]=e.childTokens)})),n.extensions=t),e.renderer){const t=this.defaults.renderer||new Nt(this.defaults);for(const n in e.renderer){if(!(n in t))throw new Error(`renderer '${n}' does not exist`);if("options"===n)continue;const r=n,i=e.renderer[r],s=t[r];t[r]=(...e)=>{let n=i.apply(t,e);return!1===n&&(n=s.apply(t,e)),n||""}}n.renderer=t}if(e.tokenizer){const t=this.defaults.tokenizer||new Je(this.defaults);for(const n in e.tokenizer){if(!(n in t))throw new Error(`tokenizer '${n}' does not exist`);if(["options","rules","lexer"].includes(n))continue;const r=n,i=e.tokenizer[r],s=t[r];t[r]=(...e)=>{let n=i.apply(t,e);return!1===n&&(n=s.apply(t,e)),n}}n.tokenizer=t}if(e.hooks){const t=this.defaults.hooks||new Pt;for(const n in e.hooks){if(!(n in t))throw new Error(`hook '${n}' does not exist`);if("options"===n)continue;const r=n,i=e.hooks[r],s=t[r];Pt.passThroughHooks.has(n)?t[r]=e=>{if(this.defaults.async)return Promise.resolve(i.call(t,e)).then((e=>s.call(t,e)));const n=i.call(t,e);return s.call(t,n)}:t[r]=(...e)=>{let n=i.apply(t,e);return!1===n&&(n=s.apply(t,e)),n}}n.hooks=t}if(e.walkTokens){const t=this.defaults.walkTokens,r=e.walkTokens;n.walkTokens=function(e){let n=[];return n.push(r.call(this,e)),t&&(n=n.concat(t.call(this,e))),n}}this.defaults={...this.defaults,...n}})),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return Lt.lex(e,t??this.defaults)}parser(e,t){return Mt.parse(e,t??this.defaults)}#e(e,t){return(n,r)=>{const i={...r},s={...this.defaults,...i};!0===this.defaults.async&&!1===i.async&&(s.silent||console.warn("marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored."),s.async=!0);const o=this.#t(!!s.silent,!!s.async);if(null==n)return o(new Error("marked(): input parameter is undefined or null"));if("string"!=typeof n)return o(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(n)+", string expected"));if(s.hooks&&(s.hooks.options=s),s.async)return Promise.resolve(s.hooks?s.hooks.preprocess(n):n).then((t=>e(t,s))).then((e=>s.hooks?s.hooks.processAllTokens(e):e)).then((e=>s.walkTokens?Promise.all(this.walkTokens(e,s.walkTokens)).then((()=>e)):e)).then((e=>t(e,s))).then((e=>s.hooks?s.hooks.postprocess(e):e)).catch(o);try{s.hooks&&(n=s.hooks.preprocess(n));let r=e(n,s);s.hooks&&(r=s.hooks.processAllTokens(r)),s.walkTokens&&this.walkTokens(r,s.walkTokens);let i=t(r,s);return s.hooks&&(i=s.hooks.postprocess(i)),i}catch(e){return o(e)}}}#t(e,t){return n=>{if(n.message+="\nPlease report this to https://github.com/markedjs/marked.",e){const e="<p>An error occurred:</p><pre>"+Fe(n.message+"",!0)+"</pre>";return t?Promise.resolve(e):e}if(t)return Promise.reject(n);throw n}}};function It(e,t){return jt.parse(e,t)}It.options=It.setOptions=function(e){return jt.setOptions(e),It.defaults=jt.defaults,Le(It.defaults),It},It.getDefaults=Re,It.defaults=qe,It.use=function(...e){return jt.use(...e),It.defaults=jt.defaults,Le(It.defaults),It},It.walkTokens=function(e,t){return jt.walkTokens(e,t)},It.parseInline=jt.parseInline,It.Parser=Mt,It.parser=Mt.parse,It.Renderer=Nt,It.TextRenderer=Bt,It.Lexer=Lt,It.lexer=Lt.lex,It.Tokenizer=Je,It.Hooks=Pt,It.parse=It;It.options,It.setOptions,It.use,It.walkTokens,It.parseInline,Mt.parse,Lt.lex;function Ft(e){e&&e.parentElement&&e.parentElement.removeChild(e)}function Zt(e,t,n){e&&o(t)&&!function(e){return s(e,"Undefined")}(n)&&(e.style[t]=u(n)&&!["zIndex","opacity"].includes(t)?`${n}px`:n)}function Dt(e,t,n){d(t,(t=>{const r=n[t];r&&"normal"!==r&&Zt(e,t,r)}))}function Ot(e,t,n){const r=u(n)&&!["zIndex","opacity"].includes(t)?`${n}px`:n;switch(t){case"innerHTML":case"innerText":case"className":case"textContent":e[t]=r;break;case"style":d(n,((t,n)=>{Zt(e,n,t)}));break;default:e.setAttribute(t,r)}}function Wt(e,t){const n=document.createElement(e);return t&&d(t,((e,t)=>{Ot(n,t,e)})),n}function Ht(e,t,n){const r=Wt(t),i=e._mirrorElement;for(i&&(r._mirrorElement=i);e.firstChild;)r.appendChild(e.firstChild);!n&&d(e.attributes,(e=>{const t=e.nodeName,n=e.nodeValue;n&&Ot(r,t,n)}));const s=e.parentElement;return s&&s.replaceChild(r,e),r}function Qt(e,t){if(!e)return;if(o(t))return void e.removeAttribute(t);const n=[];d(e.attributes,(e=>{const r=e.nodeName;h(t)&&t(r)&&n.push(r)})),d(n,(t=>{e.removeAttribute(t)}))}const Vt=["div"],Ut=["i","em"],Xt=/^on|^data|^id$|^style$|placeholder|spellcheck|contenteditable|align|nowrap/,Jt=["b","strong","h1","h2","h3","h4","h5","h6","th"],Yt=["h1","h2","h3","h4","h5","h6"];function Gt(e){if(!e||!a(e))return!1;if(c(e,"table")||c(e,"pre"))return!1;if(!c(e,"p")){let t=!0;if(d(e.childNodes,(e=>{if(!a(e))return t=!1,!0})),t){let t=!1;return d(e.childNodes,(e=>{if(c(e,"p"))return t=!0,!0})),t||!!e.querySelector("p")}return!1}return!1}function Kt(e,t){let n=e;for(;n&&(l(n)||a(n)&&["a","span","code","strong","b","em","small","var","bdo","big","cite","dfn","abbr","i","kbd","label","map","q","samp","sub","sup","time","tt"].includes(n.nodeName.toLowerCase()));)n=t(n)}const en=["a","span"],tn=["div","span","p"],nn=["a>svg"];function rn(e,t){if(d(e.querySelectorAll(".flex"),(e=>{const t=e.querySelectorAll("pre");t.length<=0||d(t,(e=>{const t=e.parentElement;t.classList.contains("zone-width")||t.classList.add("zone-width")}))})),function(e){let t=e.firstChild;const n=[];for(;t;)if(Gt(t)){const e=t.parentElement,r=t.firstChild;let i,s=r;for(;s;)i=s.nextSibling,e?.insertBefore(s,t),s=i;n.push(t),t=r}else t=t.nextSibling;n.length>0&&d(n,(e=>{e.parentElement.removeChild(e)}))}(e),d(e.querySelectorAll("div, span"),(e=>{e.childNodes.length<=0&&e.parentElement.removeChild(e)})),t)return;d(e.querySelectorAll("li"),(e=>{k(e).length<=0&&Ft(e)})),d(e.querySelectorAll("div, ol, ul, section"),(e=>{U(e)<=0&&Ft(e)})),d(e.querySelectorAll("ul, ol"),(e=>{e.querySelectorAll("*").length>e.innerText.replace(/\n/gi,"").length&&Ft(e)}));let n=e.firstChild;for(;n;){if(!l(n)){n=n.nextSibling;continue}const e=k(n);if($(e)<=0){n=n.nextSibling;continue}const t=Wt("p"),r=Wt("span");r.textContent=e,t.appendChild(r);Kt(n.previousSibling,(e=>(t.insertBefore(e,r),e.previousSibling)));const i=n.parentElement;if(i&&i.replaceChild(t,n),n=t.nextSibling,!n)break;if(Kt(n,(e=>(t.appendChild(e),n=t.nextSibling,n))),!n)break;n=n.nextSibling}for(n=e.firstChild;n;){if(!n.nodeName||!en.includes(n.nodeName.toLowerCase())){n=n.nextSibling;continue}let t=n.nextSibling;const r=Wt("p");r.appendChild(n),t?e.insertBefore(r,t):e.appendChild(r),n=t}const r=e.querySelectorAll("br");r.length>=2&&d(r,(e=>{const t=function(e){let t=e.nextSibling;for(;t&&l(t)&&V(t);)t=t.nextSibling;return t}(e),n=function(e){let t=e.previousSibling;for(;t&&l(t)&&V(t);)t=t.previousSibling;return t}(e);t||n?n&&!l(n)&&n.nodeName&&!en.includes(n.nodeName.toLowerCase())&&t&&!l(t)&&t.nodeName&&!en.includes(t.nodeName.toLowerCase())&&Ft(e):Ft(e)})),d(e.querySelectorAll("p"),(e=>{const t=e.getElementsByTagName("br");if(t.length<=1)return;const n=[],r=e.parentElement,i=e.nextSibling;d(t,(e=>{if(!e)return;let t=e.nextSibling;if(!t)return;const s=Wt("p");let o;for(;t&&!c(t,"br");)o=t.nextSibling,s.appendChild(t),t=o;i?r.insertBefore(s,i):r.appendChild(s),n.push(e)})),d(n,Ft)})),d(e.querySelectorAll("p, span, li"),(e=>{if(c(e,"span")&&(e.closest(".katex")||e.closest(".ztext-math")||e.classList.contains("ztext-math")))return;const t=e.childNodes;if(t.length<=0)return void Ft(e);if(1===t.length&&c(t[0],"br"))return void Ft(e);const n=t[0];if(!l(n))return;const r=n.nodeValue||"";r.length>0&&/^\s+/.test(r)&&(n.nodeValue=r.trim())})),d(e.querySelectorAll("pre"),(e=>{const t=e.parentElement;if(!t||!c(t,"td")||t.classList.contains("gutter"))return;const n=t.closest("table");if(!n)return;const r=n.querySelectorAll("tr");if(1!==r.length)return;if(r[0].querySelectorAll("td").length>2)return;const i=n.parentElement;i&&i.replaceChild(e,n)})),tn.forEach((t=>{d(e.querySelectorAll(t),(function(e){c(e,"span")&&(e.closest(".katex")||e.closest(".ztext-math")||e.classList.contains("ztext-math"))||e.childNodes.length<=0&&Ft(e)}))})),nn.forEach((t=>{d(e.querySelectorAll(t),(function(e){Ft(e)}))})),d(e.querySelectorAll("p,span"),(e=>{e.childNodes.length<=0&&e.parentElement.removeChild(e)}))}function sn(e){const t=e.src;t&&t.startsWith("data")&&e.classList.add("base64");const n=e.width||e.naturalWidth,r=e.height||e.naturalHeight;n<=0||r<=0||(e.classList.remove("tiny","large"),n<200&&r<200?e.classList.add("tiny"):e.classList.add("large"))}function on(e){const t=Wt("div");t.innerHTML=e.innerHTML;const n=t.children;if(1===n.length&&c(n[0],"img"))return n[0].src}const ln=["size","face","color"],cn=['[id*="comment"]','[class*="comment"]'],an=['[id*="Modal"]','[class*="Modal"]','[id*="modal"]','[class*="modal"]'],un=["border","hspace","vspace","align"],hn=["noscript","form","input","textarea","button","style","script","link","ins","iframe","canvas","footer","aside",'[class*="btn-"]','[class*="google-auto-placed"]'];function pn(e,t){const n=function(e){let t=e,n=e.cloneNode(!0);for(;t;){const r=t._mirrorElement;n._mirrorElement=r||t;const i=t.firstElementChild;if(i)t=i,n=n.firstElementChild;else{let r;for(;t!==e&&!(r=t.nextElementSibling);)t=t.parentElement,n=n.parentElement;if(t===e)break;t=r,n=n.nextElementSibling}}return n}(e);!function(e){d(e.querySelectorAll(hn.join(",")),Ft),d(e.querySelectorAll(an.join(",")),(e=>{e._mirrorElement&&!v(e)&&Ft(e)}));const t=[];d(e.querySelectorAll(cn.join(",")),(e=>{if(!c(e,"div"))return;const n=e._mirrorElement;if(!n)return;const r=n.getBoundingClientRect();r.width<=0||r.height<=200||t.push(e)})),t.length>0&&d(t,(e=>{const t=e.parentElement;t&&t.removeChild(e)})),d(e.querySelectorAll("li"),(e=>{const t=e.querySelectorAll("div"),n=e.querySelectorAll("img");t.length>0&&n.length>0&&q(e)>.8&&Ft(e)})),d(e.querySelectorAll("font"),(e=>{Qt(e,(e=>ln.includes(e)))})),d(e.querySelectorAll("img"),(e=>{if(Qt(e,(e=>un.includes(e))),e.complete&&sn(e),e.addEventListener("load",(function(){sn(e)})),!e||!e._mirrorElement)return;const t=e._mirrorElement,n=t.nextSibling,r=t.previousSibling;let i="";if(r&&c(r,"noscript")){const e=on(r);e&&(i=e)}else if(n&&c(n,"noscript")){const e=on(n);e&&(i=e)}else{const e=t.closest("figure");if(e&&a(e)){const t=e.querySelectorAll("noscript");if(1===t.length){const e=on(t[0]);e&&(i=e)}}}!i&&(i=f(t)),i&&R(e,"src")!==i&&Ot(e,"src",i)}))}(n);const{title:r="",time:i="",keep:s}=t||{};return function(e,t,n){let r=0,i=0,s=0,l=0;const c=e=>{r&&(r+=e),i&&(i+=e),s&&(s+=e),l&&(l+=e)};let a=e;const u=[],h=w(e._mirrorElement||e);for(;a;){let p,d=a._mirrorElement,f=a.nodeName.toLowerCase();const g="svg"===f||f.startsWith("mjx-")||/^(tex|katex|math)/i.test(a.className.toLowerCase())||"font"===f&&/^(notranslate|immersive-translate-target-wrapper)/i.test(a.className.toLowerCase());if(d&&!g){const c=window.getComputedStyle(d),u=c.float,g=c.display;if("none"!==g&&"0"!==c.opacity||"img"!==f&&(p=a),!p){const e=k(a),r=["目录","大纲"];n&&r.push(n),t&&r.push(t),r.includes(e)&&(p=a)}if(a!==e){if(!p){Qt(a,(e=>"svg"!==f&&!a.classList.contains("MathJax_SVG")&&Xt.test(e)));const e=a.className;e&&(o(e)&&("td"===f&&"gutter"===e||e.indexOf("crayon-")>=0)||a.removeAttribute("class"))}if(!p){const e=c.clear;e&&"both"===e&&a.classList.add("both");const t=window.getComputedStyle(d,":after").clear;t&&"both"===t&&a.classList.add("both")}}if(!p&&a!==e){if("div"===f){const e=d.querySelectorAll("blockquote, dl, div, ol, p, pre, table, ul");if(!(r||u&&"none"!==u)&&e.length<=0){const e=Ht(a,"p");f="p",a=e,d=e._mirrorElement}else"inline-block"===g&&a.classList.add("inline-block")}else f.includes("-")&&f.indexOf("inner")<=-1&&["block","inline-block","flex","inline-flex"].includes(g)&&a.classList.add(g);Vt.includes(f)&&d.querySelectorAll("img").length>0&&["flex","inline-flex"].includes(g)&&(a.classList.add(g),Dt(a,["align-items","justify-content"],c))}if(!p){const t=w(d);"img"!==f&&a!==e&&(!r&&u&&"none"!==u&&(t.height>=130||d.childElementCount>0)&&(r=1),!s&&c.fontStyle&&"normal"!==c.fontStyle&&(a!==e&&!Ut.includes(f)&&(a.style.fontStyle=c.fontStyle),s=1),!l&&c.fontWeight&&"normal"!==c.fontWeight&&parseInt(c.fontWeight)>400&&(a!==e&&!Jt.includes(f)&&(a.style.fontWeight=c.fontWeight),l=1));const n=c.width||t.width;let o;switch(r&&1===r&&(t.width===h.width?a.classList.add("full-width"):d.querySelectorAll("img").length>0&&u&&"none"!==u&&!Yt.includes(f)&&a.classList.add(u)),f){case"svg":"absolute"===c.position&&n&&"auto"!==n&&parseFloat(n)<80&&(p=a);break;case"table":!i&&(i=1);break;case"img":r&&u&&"none"!==u&&Zt(a,"float",u),Dt(a,["border-radius"],c);break;case"a":if(o=R(a,"href"),o&&o.length)if("#"===o[0])if(q(a.parentElement)>.8)p=a;else{const e=a._mirrorElement,t=Ht(a,"span",!0);t._mirrorElement=e,f="span",a=t}else"javascript:"===o.substring(0,11)&&a.removeAttribute("href")}}}let m;if(!g&&(m=a.firstElementChild))a=m,c(1);else{let t;for(;a!==e&&!(t=a.nextElementSibling);)a=a.parentElement,c(-1);if(a===e){p&&Ft(p);break}a=t,1===r&&(r=0),1===i&&(i=0),1===s&&(s=0),1===l&&(l=0)}p&&u.push(p)}d(u,Ft)}(n,r,i),rn(n,s),function(e){const t=e._mirrorElement;if(!t)return;const n=window.getComputedStyle(t);if(!["flex","inline-flex"].includes(n.display))return;let r=!1;const i=[];let s=e.firstElementChild;for(;s;){let e=s._mirrorElement;if(e){const t=window.getComputedStyle(e).order;if(t){const e=parseInt(t)||0;i[e]=s,e>0&&!r&&(r=!0)}}s=s.nextElementSibling}r&&i.length>0&&(e.innerHTML="",i.forEach((t=>{e.appendChild(t)})))}(n),n}function dn(e){if(!e)return"";let t="";Ee(e)?t=e:!function(e){return Ce(e,"Text")}(e)?_e(e)&&(t=e.textContent):t=e.nodeValue;const n=(t||"").trim();return n.length>0?n.replace(/^ +| +$/g,""):""}function fn(e,t){let n=e;return"md"===t?(n=document.createElement("div"),n.innerHTML=It(e.innerHTML)):"txt"===t&&(n=document.createElement("div"),n.innerHTML=e.innerHTML.replace(/\n/g,"<br />")),n}function gn(e,t){if(!e.content)return e;if(Array.isArray(e.content))e.content=e.content.map((e=>{const n=fn(e.content,e.type);return e.content=pn(n,{keep:!!t,time:e.time,title:e.title}),e}));else{const n=fn(e.content,e.type);e.content=pn(n,{keep:!!t,time:e.time,title:dn(e.title)})}return e}let mn;window.definePlugin("parse",(function(e){let t,n,r=!0,i=!1;return{filterParseSuccessHold(e,t){const{hash:n}=function(e,t,n=location.hash.substring(1).split("&")){let r=[];if(n.join("").length<=0)return{hashs:[],hash:r};const i=Array.isArray(e)?e:[e],s=n.filter((e=>{if(i.findIndex((t=>e.indexOf(t)>=0))<0)return!0;r.push(e)}));if(t){const n=`${e}=${t}`;s.push(n),r=[],r.push(n)}return{hashs:s,hash:r}}("circle");return!!n.includes("circle=off")||!n.includes("circle=on")&&t},onEnterOrExit(e,t){this.onActionClicked(e,t)},onActionClicked(e,t){t&&t();const n=e.applyFilter("action_clicked_abort");if(ze(n)&&n)return;if(e.hasHook("render"))return void e.fire("render");if(r)return i=!0,void e.warning("wait");i=!1;const s=e.field("node");if(!Array.isArray(s)||s.length<=0)return void e.fire("manual","try");const o=[];y(s,(t=>{const n=x(gn(t,!!e.data("keep")));y(Array.isArray(n)?n:[n],(e=>{o.push(e)}))})),e.field("node",o),e.fire("render")},onUrl2json(e,t,n){(function(e){const t=e||{context:document,fields:["title","tags","cover","author","excerpt","read_time","word_count","content","modified","published"]};return $e(t.context||document,t).then((e=>e&&e.content?Promise.resolve(e):Promise.reject("No article found"))).catch((e=>Promise.reject(e&&e.message?e.message:e)))})(n).then((e=>{t(null,gn(e))})).catch(t)},onNodeFromContextByUrl(e,t,n){!function(e,t,n){if(!mn){const t=document.createElement("iframe");t.style.cssText="top:0;left:0;z-index:-1;opacity:0;width:100%;height:100%;overflow:hidden;position:fixed;pointer-events:none;",t.addEventListener("load",(function(){const r=t.contentDocument;r?r.URL&&"about:blank"!==r.URL&&Se(e,r).then((e=>{n&&n(null,e,r)})).catch((e=>{n&&n(e)})):n&&n("not found")})),document.documentElement.appendChild(t),mn=t}mn.src=t}(e,t,((t,r,i)=>{if(t||!i)return void n(t,r,i);const s=[],o=x(gn(r,!!e.data("keep")));y(Array.isArray(o)?o:[o],(e=>{s.push(e)})),n(t,s[0],i)}))},start(s){if(s.field("later"))return void document.body.addEventListener("click",(e=>{!function(e,t){const n=t.target.closest("[data-laterid]");if(!n)return;const r=n.dataset.laterid;r.length<=0||e.get(`later_${r}`,"node").then((t=>{const n={};y(t,((e,t)=>{["code","type","kind","image","domain","created","changed","archived","taxonomy","tags"].includes(t)||(n[t]=e)})),n&&n.content&&(e.field("node",[n]),e.fire("later_click",n),e.hasHook("outline_empty")&&e.fire("outline_empty"),e.hasHook("render_refetch")?(e.fire("render_refetch"),e.fire("render",!0)):e.fire("render"),e.fire("later_click_done",n))}))}(s,e)}));const o=s.applyFilter(`${e.id}_hold`,!1);if(ze(o)&&o)return;const l="hidden"===document.visibilityState;Se(s).then((t=>{const r=s.applyFilter(`${e.id}_node`,t);s.debug&&s.log(r);const o=s.field("node")||[];o.push(r),s.field("node",o),s.action("ready");const c=Te(r);_e(c)&&(n=c),s.apply(`${e.id}_success`).then((()=>{if(s.applyFilter(`${e.id}_success_hold`,!0)?i&&this.onActionClicked(s):this.onActionClicked(s),l){const e={};y(gn(r,!!s.data("keep")),((t,n)=>{_e(t)?"cover"===n?e[n]=function(e){let t="";y(e.attributes,(e=>{const n=e.nodeName;if(["class","role","src","alt"].includes(n))return;if(/thumbnail/i.test(n))return;const r=`${e.nodeValue}`;return(r.startsWith("http")||/src|url|origin/i.test(n))&&!/\s/.test(r)&&r.split("/").length>1&&r.length>10?(t=r,!0):void 0}));const n=t||e.src;if(n&&!n.endsWith("svg"))return n;const r=`${window.getComputedStyle(e).backgroundImage}`.replace(/url\("(.*?)"\)/,"$1");return Ee(r)&&"none"!==r&&r.split("/").length>1?r:""}(t):"content"===n?Array.isArray(t)?e[n]=t.map((e=>e.innerHTML.trim())):e[n]=t.innerHTML.trim():e[n]=dn(t):e[n]=t})),s.url2json(e).finally((()=>{}))}}))})).catch((()=>{s.fire("loading",!1),s.apply(`${e.id}_failed`).then((()=>{i?this.onActionClicked(s):s.action("force"),l&&s.url2json({error:"No article found"}).finally((()=>{}))}))})).finally((()=>{r=!1,s.apply(`${e.id}_done`).finally((()=>{!Y(document)&&function(e,t,n){if(!_e(e))return void t();const r=new MutationObserver((function(e){if(!e||e.length<1)return;const n=e[0].addedNodes;!n||n.length<1||t(n)}));r.observe(e,n||{childList:!0,subtree:!0})}(document.body,(()=>{r||s.field("running")||(t&&clearTimeout(t),t=setTimeout((()=>{let t;n&&document.body.contains(n)||(t=!0),t&&(r=!0,s.fire(`${e.id}_again_before`),Se(s).then((t=>{const i=s.applyFilter(`${e.id}_node`,t);r=!1;const o=Te(i);_e(o)&&(n=o);const l=[],c=x(gn(i,!!s.data("keep")));y(Array.isArray(c)?c:[c],(e=>{l.push(e)})),s.field("node",l),s.action("ready"),s.fire(`${e.id}_again`,i)})).catch((()=>{r=!1})))})))}))}))}))}}}))})();;(()=>{"use strict";function e({x:e,y:t}){const n=80-window.innerWidth,o=80-window.innerHeight,r={x:e,y:t};return e>0?r.x=0:e<n&&(r.x=n),t>0?r.y=0:t<o&&(r.y=o),r}function t(e,t){return Object.prototype.toString.call(e)===`[object ${t}]`}function n(){const e=document._zindex;if(t(e,"Number"))return e;{let e=0;return(document.body||document.documentElement).querySelectorAll("*").forEach((t=>{const n=Number.parseInt(window.getComputedStyle(t,null).getPropertyValue("z-index"),10);n>e&&(e=n)})),e<=0?1e3:(e<=1e3&&(e=1e3),e++,document._zindex=e,e)}}function o(e){return e.touches&&e.touches.length>0?{x:e.touches[0].clientX,y:e.touches[0].clientY}:{x:e.clientX,y:e.clientY}}function r(e){const t=window.getComputedStyle(e).transform.match(/^matrix\((.+)\)$/);return t?{x:parseFloat(t[1].split(", ")[4]),y:parseFloat(t[1].split(", ")[5])}:{x:0,y:0}}window.definePlugin("entry",class{container;constructor(t,n){const i=document.createElement("div");i.className="entry-root";const{root:s,shadow:c}=function({style:e,mode:t="open"}={}){const n=document.createElement("div");document.documentElement.appendChild(n);const o=n.attachShadow({mode:t});return e&&(Array.isArray(e)?e:[e]).forEach((e=>{if(!e)return;let t;e.endsWith(".css")?(t=document.createElement("link"),t.rel="stylesheet",t.href=e):(t=document.createElement("style"),t.textContent=e),t&&o.appendChild(t)})),{root:n,shadow:o}}({style:":focus {\n outline: none;\n}\n:focus-visible {\n outline: none;\n}\n.entry-root {\n margin: 0;\n bottom: 20px;\n right: 20px;\n width: 30px;\n height: 30px;\n z-index: 99999;\n cursor: pointer;\n position: fixed;\n font-weight: bold;\n text-align: center;\n transition: all 0.1s;\n line-height: 29px;\n border: 3px solid #616367;\n border-radius: 50%;\n touch-action: none;\n user-select: none;\n font-variant: tabular-nums;\n font-feature-settings: 'tnum';\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';\n}\n.entry-root.ready {\n border-color: #58a65c;\n}\n.entry-root.enable {\n border-color: #58a65c;\n}\n.entry-root.enable::after {\n content: \"Aa\";\n color: #58a65c;\n font-size: 15px;\n}\n.entry-root.disable {\n border-color: #868789;\n}\n.entry-root.force {\n border-color: #616367;\n}\n.entry-root.force::after {\n content: \"Aa\";\n color: #616367;\n font-size: 15px;\n}\n\n"});c.appendChild(i),s.setAttribute("id","circlereader-entry"),n.get("position").then((t=>{const s=t||{},c=e({x:s.x||0,y:s.y||0}),a=c.x,l=c.y;let d=a,u=l,y=0,p=0,m=!1,h=!1,f=!1;function x(e){if(h)return;h=!0,f=!1,e.preventDefault(),e.stopPropagation();const t=o(e);d=t.x,u=t.y;const n=r(i);y=n.x,p=n.y;const s="touchstart"===e.type?"touchend":"mouseup",c="touchstart"===e.type?"touchmove":"mousemove";document.addEventListener(c,v,{passive:!1}),document.addEventListener(s,b,{passive:!1})}function v(t){if(!h)return;t.preventDefault(),t.stopPropagation();const n=o(t),r=n.x-d,s=n.y-u;Math.sqrt(r**2+s**2)>5&&(f=!0);const c=e({x:y+r,y:p+s});i.style.transform=`translate3d(${c.x}px, ${c.y}px, 0)`}function b(e){h=!1,e.preventDefault(),e.stopPropagation();const t="touchend"===e.type?"touchmove":"mousemove",o="touchend"===e.type?"touchend":"mouseup";if(document.removeEventListener(t,v),document.removeEventListener(o,b),f)n.set("position",r(i));else{if(m)return;m=!0,n.fire("action_clicked"),setTimeout((()=>{m=!1}),1e3)}}i.addEventListener("mousedown",x),i.addEventListener("touchstart",x,{passive:!1}),i.style.transform=`translate3d(${a}px, ${l}px, 0)`})),this.container=i}onAction(e,t){t&&this.container.classList.add(t)}onRenderLeave(){this.container.style.display="block"}onRenderEnter(){this.container.style.display="none"}start(){this.container.style.display="block",this.container.style.zIndex||(this.container.style.zIndex=`${n()}`)}destory(){this.container.style.display="none"}})})();;(()=>{var e={26:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>o});var a=i(844),r=i(582);function o(e,t,i,o){const l=i?r.c.includes(e.id)||r.J.includes(i)?i:`${e.id}_${i}`:e.id;return this.store("get",l,o).then((t=>{if(!(0,a.Gv)(t)||!t.id)return Promise.resolve(t);const i=e.id.length+1;return Promise.resolve({...t,id:(0,a.Kg)(t.id)&&t.id.startsWith(e.id)?t.id.substring(i):t.id})}))}},119:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>r});var a=i(179);function r(e,t){t&&t();const{value:i,action:r="click"}=e;(0,a.A)(i,r)}},148:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>r});var a=i(735);function r(...e){const[t,,...i]=e;(t.debug||a.Yz)&&(i.unshift(`${t.id}: `),console.log.apply(null,i))}},159:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>_});var a=i(244),r=i(735),o=i(452),l=i(218),s=i(844),n=i(413),c=i(750);function _(e,t){const i=this,_=e.value;if(!_)return void(t&&t("empty"));const d=(0,l.q)(_),p=d.version?d.data:d;!(0,s.Gv)(p)||Object.keys(p).length<=0?t&&t("empty"):("keep"===e.action?Promise.resolve():Promise.all(Object.keys(p).map((e=>{if("apps"===e)return Promise.resolve();const t=r.um.find((t=>t.table===e));return t&&Array.isArray(t.freeze)&&t.freeze.length>0?Promise.all(t.freeze.map((t=>i.store("get",t,e).then((e=>({key:t,value:e})))))).then((t=>i.store("clear",e).then((()=>Promise.all(t.map((({key:e,value:t})=>(0,s.b0)(t)?Promise.resolve():i.store("set",e,t)))))))):i.store("clear",e)})))).then((()=>{const e=[],t=r.um.map((e=>e.table));return(0,n.A)(p,((a,o)=>{if(!t.includes(o)||"apps"===o)return;if(!Array.isArray(a)||a.length<=0)return;const l=r.um.find((e=>e.table===o)),n=l&&Array.isArray(l.freeze)&&l.freeze.length>0?l.freeze:[],_=a.filter((e=>!n.includes(e.id)));e.push(i.store("set",_.map((e=>((0,s.Et)(e.changed)||(e.changed=(0,c.A)()),e))),o))})),e.length>0?Promise.all(e):Promise.resolve(null)})).then((()=>!Array.isArray(p.apps)||p.apps.length<=0?Promise.resolve():new Promise((e=>{i.fire("fetch",{method:"GET",headers:{"X-Circle-Type":r.NW,"X-Circle-App":"reader","X-Circle-Version":r.rE,"Content-Type":"application/json"},url:(0,a.A)(`api/store/apps?payload=${p.apps.map((e=>`${e.id}=${e.version||""}`)).join(",")}`)},((t,a)=>{if(t)e(null);else if(a&&Array.isArray(a.data)&&a.data.length>0){const t=a.data.map((e=>(0,o.A)({id:e.id,code:e}))).filter((e=>e&&e.id));t.length>0?i.store("set",t.map((e=>({...e,enabled:!0}))),"apps").then(e):e(null)}else e(null)}))})))).then((()=>{i.cache={},i.fire("contextMenus",{action:"rebuild"},t)})).catch((e=>{t&&t(e.message)}))}},162:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>o});var a=i(844),r=i(413);function o(e,t,i,o){const l=this;if((0,a.b0)(o)){if((0,a.Gv)(i)){const e=[];return(0,r.A)(i,((t,i)=>{l.cache.parse[i]=t,e.push(t)})),e}}else if((0,a.Kg)(o)&&"destory"===o){if((0,a.Kg)(i)){const e=l.cache.parse[i];return delete l.cache.parse[i],e}if(Array.isArray(i)){const e=[];return i.forEach((t=>{e.push(l.cache.parse[t]),delete l.cache.parse[t]})),e}}else if((0,a.Kg)(i)){const e=l.cache.parse[i];return(0,a.Gv)(e)&&(0,a.Gv)(o)?l.cache.parse[i]={...e,...o}:l.cache.parse[i]=o,l.cache.parse[i]}if((0,a.b0)(i))return{...l.cache.parse};const s=(Array.isArray(i)?i:[i]).map((e=>l.cache.parse[e])).filter((e=>!(0,a.b0)(e)));return s.length<=0?void 0:1===s.length?(0,a.b0)(s[0])?o:(0,a.Gv)(s[0])?{...s[0]}:s[0]:[...s]}},170:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>_});var a=i(735),r=i(413),o=i(844),l=i(383),s=i(218);var n=i(750);const c=new class{list(e={},t={start:1,limit:10},i="option"){if(e){const a=e.keyRange||"all",s=e.field||"changed",n=e.order&&"ASC"===e.order?1:-1;return this.all(i).then((e=>e.filter((e=>function(e,t){return Array.isArray(t)?"gt"===t[0]?e>t[1]:"lt"===t[0]?e<t[1]:"ge"===t[0]?e>=t[1]:("le"===t[0]||e>=t[0])&&e<=t[1]:"all"===t||e===t}(e[s],a))).sort(((e,t)=>{const i=e[s],a=t[s];return(0,o.Et)(i)&&(0,o.Et)(a)?(i-a)*n:i instanceof Date&&a instanceof Date?(i.getTime()-a.getTime())*n:String(i).localeCompare(String(a))*n})))).then((i=>{let a=t.start;const s=t.limit,n=[];return(a>1?i.slice(a-1):i).forEach((t=>{if(s<=0||n.length<s){if(function(e,t){let i=!1;return!t||Object.keys(t).length<=0||(0,r.A)(t,((t,a)=>{const r=e[a];if((0,o.Lm)(t)){if(!(0,o.Lm)(r))return i=!0,i;if(t&&!r)return i=!0,i;if(!t&&r)return i=!0,i}else if(["empty","defined"].includes(t)){if("empty"===t&&(Array.isArray(r)?r.length>0:r))return i=!0,i;if("defined"===t&&(Array.isArray(r)?r.length<=0:!r))return i=!0,i}else if(Array.isArray(t)){if(!r)return i=!0,i;if((0,o.Et)(r)){if(2===t.length&&(r>t[1]||r<t[0]))return i=!0,i}else if(Array.isArray(r)){if(!(0,l.A)(t,r))return i=!0,i}else if((0,o.Kg)(r)&&!t.includes(r))return i=!0,i}else if((0,o.Kg)(t)&&(!(0,o.Kg)(r)||t!==r))return i=!0,i})),!i}(t,e.match))if(e.searchIn&&e.search){const i=e.search.split(",");i.length>0&&function(e,t,i){let a=!1;return(0,r.A)(i,(i=>{if((0,r.A)(Array.isArray(t)?t:[t],(t=>{if(e[t]&&e[t].indexOf(i)>=0)return a=!0,a})),a)return a})),a}(t,e.searchIn,i)&&n.push(t)}else n.push(t);a++}})),Promise.resolve({...t,data:n,start:a-1})}))}return this.all(i).then((e=>Promise.resolve({...t,data:e})))}get(e,t="option"){const i=GM_getValue(`${t}_${e}`);return i?Promise.resolve((0,s.q)(i)):Promise.resolve()}set(e,t="option"){const i=Array.isArray(e)?e:[e];return i.forEach((e=>{GM_setValue(`${t}_${e.id}`,(0,s.A)(e))})),Promise.resolve(i)}remove(e,t="option"){const i=Array.isArray(e)?e:[e];return GM_listValues().forEach((e=>{e.startsWith(t)&&i.includes(e.replace(`${t}_`,""))&&GM_deleteValue(e)})),Promise.resolve()}all(e="setting"){const t=[],i=GM_listValues().filter((t=>t.startsWith(e)));for(let e=0;e<i.length;e+=100){const a=i.slice(e,e+100).map((e=>(0,s.q)(GM_getValue(e))));t.push(...a)}return Promise.resolve(t)}clear(e="setting"){return GM_listValues().forEach((t=>{t.startsWith(e)&&GM_deleteValue(t)})),Promise.resolve()}};function _(e,t){const i=this,{action:l,value:s,table:_,skip:d,query:p,pager:u}=e,h=_||"option",m=`${_}_${s}`;if("get"!==l||(0,o.b0)(i.cache[m]))if(["get","all","clear"].includes(l)){("get"===l?c.get(s,h):c[l](h)).then((e=>{"get"!==l||(0,o.b0)(e)||(i.cache[m]=e),t(null,e)})).catch((e=>{t(e)}))}else if("set"===l){const e=d?s:(Array.isArray(s)?s:[s]).map((e=>{const t=(0,o.Gv)(e.value)?{...e.value,id:e.id}:e;if(e.id)if((0,o.Et)(t.changed)){let i=!1;(0,r.A)(a.um,(t=>{if(Array.isArray(t.freeze)&&t.freeze.includes(e.id))return i=!0,!0})),i||(t.changed=(0,n.A)())}else t.changed=(0,n.A)();return t}));c.set(e,h).then((a=>{(0,r.A)(Array.isArray(e)?e:[e],(e=>{e&&e.id&&(i.cache[`${_}_${e.id}`]=(0,o.b0)(e.value)?e:e.value)})),t(null,a)})).catch((e=>{t(e)}))}else"list"===l?c.list(p,u,h).then((e=>{t(null,e)})).catch((e=>{t(e)})):"remove"===l?c.remove(s,h).then((e=>{delete i.cache[m],t(null,e)})):t(`Action "${l}" lost`);else t(null,i.cache[m])}},176:(e,t,i)=>{"use strict";i.d(t,{D:()=>o,l:()=>l});var a=i(844),r=i(218);function o(e){return(0,a.Kg)(e)?(0,r.q)(decodeURIComponent(atob(e))):e}function l(e){return btoa(encodeURIComponent((0,r.A)(e)))}},179:(e,t,i)=>{"use strict";i.d(t,{A:()=>r});var a=i(735);function r(...e){a.Yz&&console.log.apply(null,e)}},218:(e,t,i)=>{"use strict";i.d(t,{A:()=>o,q:()=>r});var a=i(844);function r(e){if(!(0,a.Kg)(e))return e;try{return JSON.parse(e)}catch(t){return e}}function o(e){if((0,a.Kg)(e))return e;try{return JSON.stringify(e)}catch(t){return e.toString()}}},223:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>s});var a=i(735),r=i(283),o=i(844),l=i(413);function s(e,t){const i=this,s=a.um.map((e=>e.table)).filter((e=>!["apps"].includes(e))),n=e.value||s,c=(Array.isArray(n)?n:[n]).filter((e=>s.includes(e)));i.store("get","plugins").then((e=>Promise.all(c.map((e=>{const t=a.um.find((t=>t.table===e));return t&&Array.isArray(t.freeze)&&t.freeze.length>0?Promise.all(t.freeze.map((t=>i.store("get",t,e).then((e=>({key:t,value:e})))))).then((t=>i.store("clear",e).then((()=>Promise.all(t.map((({key:e,value:t})=>(0,o.b0)(t)?Promise.resolve():i.store("set",e,t)))))))):i.store("clear",e)}))).then((()=>Promise.resolve(e))))).then((e=>{const t=[],o=(0,r.Z)(i);return(0,l.A)(c,(e=>{const i=o.filter((t=>{if(!Array.isArray(t))return!1;const i=t[2]||"option";return e===i})),r=a.um.find((t=>t.table===e)),s=(r&&Array.isArray(r.freeze)?r.freeze:[]).filter((e=>!!e));(0,l.A)(i,(([e,i,a])=>{e&&(s.length>0?!s.includes(e)&&t.push([e,i,a]):t.push([e,i,a]))}))})),Object.keys(e).length>0&&t.push(["plugins",e]),(t.length>0?Promise.all(t.map((([e,t,a])=>i.store("set",e,t,a).then((()=>Promise.resolve(!0)))))):Promise.resolve([!0])).then((e=>{let t=!0;return(0,l.A)(e,(e=>{if(!e)return t=!1,!0})),Promise.resolve(t)}))})).then((e=>{i.cache={},e?i.fire("contextMenus",{action:"rebuild"},t):t&&t()}))}},244:(e,t,i)=>{"use strict";i.d(t,{A:()=>r});var a=i(735);function r(e){return"feedback"===e?`${a.pc}/docs/faq.html`:`${a.pc}${e?"/"+e:""}`}},266:(e,t,i)=>{"use strict";function a(e,t){t&&t(null,[])}i.r(t),i.d(t,{default:()=>a})},283:(e,t,i)=>{"use strict";i.d(t,{Z:()=>l});var a=i(750),r=i(176),o=i(569);function l(e){const t=[["night",!0],["installed",(0,a.A)()],["theme_dark_preset","gray"],["theme_light_preset","light"],["user",(0,r.l)({uid:(0,o.A)()})],["parse_option",{fields:["read_time","word_count","tags"]}],["theme_light",{color:"#1b1b1b",link:"#416ed2",hover:"#305ab7",visited:"#305ab7",select:"#1b1b1b",selectbg:"#bbd6fc",bg:"#ffffff",track:"#e2e2e2",thumb:"#9e9e9e",radius:"4px",title1color:"#1b1b1b",title2color:"#1b1b1b",title3color:"#1b1b1b",title4color:"#1b1b1b",title5color:"#1b1b1b",title6color:"#1b1b1b"}],["theme_dark",{color:"#b0b0b0",link:"#5ac8fa",hover:"#3ea4d2",visited:"#3ea4d2",select:"#fffefe",selectbg:"#43b0e2",bg:"#4a4a4d",track:"#4e4e50",thumb:"#83838c",radius:"4px",title1color:"#b0b0b0",title2color:"#b0b0b0",title3color:"#b0b0b0",title4color:"#b0b0b0",title5color:"#b0b0b0",title6color:"#b0b0b0"}]],i={};return function(e){const t=["find","code","math","sync","lists","print","speak","backup","gallery","outline","nextpage","copy_rich","export_pdf","screenshot","fullscreen","scrollpage","export_html","export_word","copy_marked","export_marked"];return e.device.phone||["edit","keys","rule","remove","floatbox","annotator"].forEach((e=>{t.push(e)})),t}(e).forEach((e=>{i[e]=!0})),t.push(["plugins",i]),t}},343:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>o});var a=i(413),r=i(735);function o(e,t){const i=this,o=r.um.map((e=>e.table)),l=e.value||o,s=(Array.isArray(l)?l:[l]).filter((e=>o.includes(e)));s.length<=0?t&&t("The exported table cannot be empty"):Promise.all(s.map((e=>i.store("all",e).then((t=>({key:e,value:"apps"===e?t.filter((e=>"plugin"===e.type&&e.enabled)).map((e=>({id:e.id,version:e.version}))):t})))))).then((e=>{const i={};(0,a.A)(e,(({key:e,value:t})=>{if(!Array.isArray(t)||t.length<=0)return;const a=r.um.find((t=>t.table===e));a&&Array.isArray(a.freeze)&&a.freeze.length>0?i[e]=t.filter((e=>!a.freeze.includes(e.id))):i[e]=t})),t(null,{version:r.rE,data:i})})).catch((function(e){t(e.message)}))}},358:(e,t,i)=>{"use strict";function a(e,t){const i=e.value||{};switch(e.action){case"create":GM_openInTab(i.url,{active:!0}),t&&t();break;case"update":t&&t(null);break;case"remove":t&&t(),window.close();break;case"captureVisibleTab":case"query":t&&t("当前环境不支持")}}i.r(t),i.d(t,{default:()=>a})},383:(e,t,i)=>{"use strict";i.d(t,{A:()=>r});var a=i(413);function r(e,t,i){let r=!1;return(0,a.A)(e,(e=>{if(i){if(t.includes(e))return r=!1,!0}else if(!t.includes(e))return r=!0,!0})),!r}},388:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>r});var a=i(844);function r(e,t,...i){const r=this,[o,...l]=i;if(!o)return"";if(["name","description"].includes(o))return r.i18n.data[`setting__app_${o}`];if(["generated_by","html_generated_by"].includes(o))return r.i18n.data[`setting__${o}`];const s=(0,a.Kg)(o)&&o.startsWith("__")&&o.endsWith("__")?o.replace(/^__(.*?)__$/,"$1"):o,n=["setting","store"].includes(e.id)?s:`${e.id}__${s}`;let c=r.i18n.data[n];return c?l.length>0?(l.forEach((e=>{c=c.replace(/\$.*?\$/,e)})),c):c:s}},413:(e,t,i)=>{"use strict";function a(e,t){if(!e)return;let i=0;if(e.forEach){const a=e.length;if(a<=0)return;for(;i<a&&!t(e[i],i);)i++}else{const a=Object.keys(e),r=a.length;if(r<=0)return;for(;i<r&&!t(e[a[i]],a[i]);)i++}}i.d(t,{A:()=>a})},437:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>r});var a=i(844);function r(e,t){const{action:i,value:r}=e,o=(0,a.Et)(r)?{id:r}:r,{url:l,state:s}=o||{};switch(i){case"current":case"get":t&&t(null,{id:0,state:document.fullscreenElement?"fullscreen":"normal"});break;case"create":t&&t(null,window.open(l,"_blank"));break;case"update":"normal"===s?document.exitFullscreen():document.documentElement.requestFullscreen(),t&&t();break;case"remove":t&&t(),window.close()}}},443:(e,t,i)=>{var a={"./contextMenus.ts":775,"./db.ts":170,"./expired.ts":821,"./export.ts":343,"./fetch.ts":848,"./fontSettings.ts":266,"./import.ts":159,"./record.ts":119,"./reset.ts":223,"./tabs.ts":358,"./url2json.ts":537,"./windows.ts":437};function r(e){var t=o(e);return i(t)}function o(e){if(!i.o(a,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return a[e]}r.keys=function(){return Object.keys(a)},r.resolve=o,e.exports=r,r.id=443},452:(e,t,i)=>{"use strict";i.d(t,{A:()=>o});var a=i(844),r=i(413);function o(e){const t=(0,a.Gv)(e)?e:{};if(!t.code)return;const i={id:t.id};return e.code&&(0,r.A)(e.code,((e,t)=>{["id","type","title","runAt","core","debug","version","priority","description","author","access","homepage","dependencies","main","settings","i18n"].includes(t)&&!(0,a.b0)(e)&&(i[t]=e)})),i}},481:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>s});var a=i(582),r=i(844),o=i(413),l=i(176);function s(e,t,i,s){const n=this;let c=i;return(0,r.b0)(i)?c=e.id:"display"===i?c=`${e.id}_display${t.colorScheme.value?"_"+t.colorScheme.value:""}`:a.c.includes(e.id)||(c=`${e.id}_${i}`),(0,r.b0)(s)?n.store("get",c).then((t=>{let a="option";if((0,r.b0)(i)?a=e.id:"display"===i&&(a="display"),["display","option"].includes(a)){if((0,r.b0)(t)||null===t){if(e.settings&&e.settings[a]&&Array.isArray(e.settings[a])&&e.settings[a].length>0){if("display"===i){const t=Array.isArray(e.settings[a][0].data)&&e.settings[a][0].data.length>0?e.settings[a][0].data:e.settings[a],i={};return Array.isArray(t)&&t.forEach((e=>{const t=e.defaultValue;(0,r.b0)(t)||(i[e.id]=t)})),i}const t=e.settings[a].find((t=>t.id===e.id));if(t){if(!(0,r.b0)(t.defaultValue))return t.defaultValue;if(Array.isArray(t.data)&&t.data.length>0){const e={};if((0,o.A)(t.data,(t=>{t.id&&!(0,r.b0)(t.defaultValue)&&(e[t.id]=t.defaultValue)})),Object.keys(e).length>0)return e}}}return}if(["id","changed"].forEach((e=>{(0,r.b0)(t[e])||delete t[e]})),e.settings&&e.settings[a]){let s;if(Array.isArray(e.settings[a])?s=e.settings[a]:(0,r.Gv)(e.settings[a])&&Array.isArray(e.settings[a].data)&&(s=e.settings[a].data),!Array.isArray(s))return t;const n=s.find((t=>t.id===e.id));if(n&&Array.isArray(n.data)&&n.data.length>0){const e=(0,r.Gv)(t)?t:i?{[i]:t}:{};if((0,o.A)(n.data,(t=>{t.id&&!(0,r.b0)(t.defaultValue)&&(0,r.b0)(e[t.id])?e[t.id]=t.defaultValue:e[t.id]&&"password"===t.type&&(0,r.Kg)(e[t.id])&&(e[t.id]=(0,l.D)(e[t.id]))})),Object.keys(e).length>0)return e}}return t}return n.listApp().then((e=>{const t=[];return(0,o.A)(e,(e=>{e.enabled&&e.settings&&e.settings[a]&&(Array.isArray(e.settings[a])?e.settings[a].forEach((i=>{t.push({pid:e.id,item:{...i,priority:i.priority||e.priority}})})):(0,r.Gv)(e.settings[a])&&Array.isArray(e.settings[a].data)&&(0,o.A)(e.settings[a].data,(i=>{t.push({pid:e.id,item:{...i,priority:i.priority||e.priority}})})))})),Promise.resolve(t)})).then((e=>{if(e.length>0){const i=e.map((({pid:e,item:i})=>{const a=(t||{})[i.id],{defaultValue:o,...l}=i;if(a){if((0,r.Gv)(a)){const t={...l,...o,...a,id:i.id};return["label","tooltip"].forEach((i=>{if(l[i]){const a=l[i]&&l[i].startsWith("__")&&l[i].endsWith("__")?l[i].replace(/^__(.*?)__$/,"$1"):l[i];t[i]=n.i18n.data[`${e}__${a}`]||l[i]}})),t}const t={...l,...o,id:i.id,value:a};return["label","tooltip"].forEach((i=>{if(l[i]){const a=l[i]&&l[i].startsWith("__")&&l[i].endsWith("__")?l[i].replace(/^__(.*?)__$/,"$1"):l[i];t[i]=n.i18n.data[`${e}__${a}`]||l[i]}})),t}if((0,r.Gv)(o)){const t={...l,...o,id:i.id};return["label","tooltip"].forEach((i=>{if(l[i]){const a=l[i]&&l[i].startsWith("__")&&l[i].endsWith("__")?l[i].replace(/^__(.*?)__$/,"$1"):l[i];t[i]=n.i18n.data[`${e}__${a}`]||l[i]}})),t}const s={...l,value:o,id:i.id};return["label","tooltip"].forEach((t=>{if(l[t]){const i=l[t]&&l[t].startsWith("__")&&l[t].endsWith("__")?l[t].replace(/^__(.*?)__$/,"$1"):l[t];s[t]=n.i18n.data[`${e}__${i}`]||l[t]}})),s}));return(0,r.b0)(t)||(0,r.Gv)(t)?i.length>0?Promise.resolve(i.reduce(((e,t)=>{const i=t.id;return t.id&&delete t.id,e[i]=t,e}),{})):{}:Promise.resolve(i)}return[]}))})):n.store("set",c,s)}},484:e=>{"use strict";function t(e,t,r){e instanceof RegExp&&(e=i(e,r)),t instanceof RegExp&&(t=i(t,r));var o=a(e,t,r);return o&&{start:o[0],end:o[1],pre:r.slice(0,o[0]),body:r.slice(o[0]+e.length,o[1]),post:r.slice(o[1]+t.length)}}function i(e,t){var i=t.match(e);return i?i[0]:null}function a(e,t,i){var a,r,o,l,s,n=i.indexOf(e),c=i.indexOf(t,n+1),_=n;if(n>=0&&c>0){if(e===t)return[n,c];for(a=[],o=i.length;_>=0&&!s;)_==n?(a.push(_),n=i.indexOf(e,_+1)):1==a.length?s=[a.pop(),c]:((r=a.pop())<o&&(o=r,l=c),c=i.indexOf(t,_+1)),_=n<c&&n>=0?n:c;a.length&&(s=[o,l])}return s}e.exports=t,t.range=a},528:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>r});var a=i(844);function r(e,t,i,r){const o=this,l=`${e.id}_${i}`,s=o.cache[l];if((0,a.b0)(r))return s;if("destory"===r){const e=o.cache[l];return delete o.cache[l],e}return(0,a.Gv)(s)&&(0,a.Gv)(r)?o.cache[l]={...s,...r}:o.cache[l]=r,o.cache[l]}},537:(e,t,i)=>{"use strict";function a(e,t){t&&t("当前环境不支持")}i.r(t),i.d(t,{default:()=>a})},569:(e,t,i)=>{"use strict";i.d(t,{A:()=>r});let a=(e=21)=>{let t="",i=crypto.getRandomValues(new Uint8Array(e|=0));for(;e--;)t+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[63&i[e]];return t};function r(){return a(10)}},576:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>o});var a=i(844),r=i(582);function o(e,t,i,o){const l=r.c.includes(e.id);return this.store("remove",Array.isArray(i)?i.map((t=>l?t:`${e.id}_${t}`)):l?i:`${e.id}_${i}`,o).then((t=>Promise.resolve((0,a.Kg)(t)&&t.startsWith(e.id)?t.substring(e.id.length+1):t))).then((a=>(t.fire("db_update",{id:i,table:o,plugin:e,action:"remove"}),Promise.resolve(a))))}},582:(e,t,i)=>{"use strict";i.d(t,{J:()=>r,c:()=>a});const a=["sync","parse","store","render","manual","setting","subscribe","export_later"],r=["style","theme","common","installed","style_light","style_dark","theme_light","theme_dark","slogan_alert"]},662:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>o});var a=i(844),r=i(582);function o(e,t,i,o,l){const s=r.c.includes(e.id),n=Array.isArray(i),c=(n?i:[{id:i,value:o}]).map((t=>{const i={...(0,a.Gv)(t.value)?t.value:t,id:t.id?s||r.J.includes(t.id)?t.id:`${e.id}_${t.id}`:e.id};return s||"node"!==l||(i.type=e.id),i}));return this.store("set",c,n?o:l).then((t=>Promise.resolve((0,a.Kg)(t)&&t.startsWith(e.id)?t.substring(e.id.length+1):t))).then((a=>(t.fire("db_update",{id:i,value:o,table:l,plugin:e,action:"insert"}),Promise.resolve(a))))}},716:(e,t,i)=>{var a=i(484);e.exports=function(e){if(!e)return[];"{}"===e.substr(0,2)&&(e="\\{\\}"+e.substr(2));return g(function(e){return e.split("\\\\").join(r).split("\\{").join(o).split("\\}").join(l).split("\\,").join(s).split("\\.").join(n)}(e),!0).map(_)};var r="\0SLASH"+Math.random()+"\0",o="\0OPEN"+Math.random()+"\0",l="\0CLOSE"+Math.random()+"\0",s="\0COMMA"+Math.random()+"\0",n="\0PERIOD"+Math.random()+"\0";function c(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function _(e){return e.split(r).join("\\").split(o).join("{").split(l).join("}").split(s).join(",").split(n).join(".")}function d(e){if(!e)return[""];var t=[],i=a("{","}",e);if(!i)return e.split(",");var r=i.pre,o=i.body,l=i.post,s=r.split(",");s[s.length-1]+="{"+o+"}";var n=d(l);return l.length&&(s[s.length-1]+=n.shift(),s.push.apply(s,n)),t.push.apply(t,s),t}function p(e){return"{"+e+"}"}function u(e){return/^-?0\d/.test(e)}function h(e,t){return e<=t}function m(e,t){return e>=t}function g(e,t){var i=[],r=a("{","}",e);if(!r)return[e];var o=r.pre,s=r.post.length?g(r.post,!1):[""];if(/\$$/.test(r.pre))for(var n=0;n<s.length;n++){var _=o+"{"+r.body+"}"+s[n];i.push(_)}else{var f,b,y=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(r.body),v=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(r.body),w=y||v,k=r.body.indexOf(",")>=0;if(!w&&!k)return r.post.match(/,.*\}/)?g(e=r.pre+"{"+r.body+l+r.post):[e];if(w)f=r.body.split(/\.\./);else if(1===(f=d(r.body)).length&&1===(f=g(f[0],!1).map(p)).length)return s.map((function(e){return r.pre+f[0]+e}));if(w){var x=c(f[0]),A=c(f[1]),P=Math.max(f[0].length,f[1].length),$=3==f.length?Math.abs(c(f[2])):1,C=h;A<x&&($*=-1,C=m);var E=f.some(u);b=[];for(var T=x;C(T,A);T+=$){var V;if(v)"\\"===(V=String.fromCharCode(T))&&(V="");else if(V=String(T),E){var M=P-V.length;if(M>0){var S=new Array(M+1).join("0");V=T<0?"-"+S+V.slice(1):S+V}}b.push(V)}}else{b=[];for(var R=0;R<f.length;R++)b.push.apply(b,g(f[R],!1))}for(R=0;R<b.length;R++)for(n=0;n<s.length;n++){_=o+b[R]+s[n];(!t||w||_)&&i.push(_)}}return i}},724:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>r});var a=i(844);function r(e,t,i,r,o){const l=this,s=Date.now(),n=(0,a.Et)(r)&&r>0?r:24,c=`${e.id}_${n}${o?"_"+o:""}`,_=60*n*60*1e3;return l.store("get","cron","apps").then((e=>(e&&e[c]?e[c]:s)>s?Promise.resolve(!0):(i(),l.store("set","cron",{...e,[c]:s+_},"apps").then((()=>Promise.resolve(!0))).catch((()=>Promise.resolve(!1))))))}},735:(e,t,i)=>{"use strict";i.d(t,{NW:()=>a,Yz:()=>l,pc:()=>r,rE:()=>o,um:()=>s});const a="monkey",r="https://circlereader.com",o="1.0.4",l=!1,s=[{table:"option",indexs:"changed",freeze:["common","user","installed"]},{table:"apps",indexs:["type","changed"]},{table:"node",indexs:["type","created","changed"]}]},750:(e,t,i)=>{"use strict";function a(e=Date.now()){return Math.floor(e/1e3)}i.d(t,{A:()=>a})},775:(e,t,i)=>{"use strict";function a(e,t){t&&t()}i.r(t),i.d(t,{default:()=>a})},821:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>l});var a=i(413),r=i(844);const o={sync_auto:[],parse_option:[],common:["slogan"],copy_rich_option:[],screenshot_option:[],text_filter_option:[],notice_option:["placement"],fullscreen_option:["autofullscreen"],autofullscreen:["layout"],annotator_option:["template"],scrollpage_option:["autoscroll"],web_search_option:["search_engine"],progress_option:["placement"],export_wp_option:["image","template"],export_bear_option:["open_after_save","take_tags"],export_word_option:["format","part_template","template"],copy_marked_option:["part_template","template"],export_text_option:["part_template","template"],export_html_option:["inline","part_template","template"],copy_html_option:["part_template","template"],export_epub_option:["part_template","template"],render_display:["removefooter","padding"],render_display_light:["removefooter","padding"],render_display_dark:["removefooter","padding"],toolbar_display:["autohide"],toolbar_display_light:["autohide"],toolbar_display_dark:["autohide"],column_display:["columnwidth","columncount"],column_display_light:["columnwidth","columncount"],column_display_dark:["columnwidth","columncount"],export_marked_option:["inline","part_template","template","annotator_idea","annotator"]};function l(e,t){const i=this;if(i.cache._configSync)t&&t();else if(i.cache._configSync=!0,e.action){const e=[],l=[],s=[],n=Object.keys(o);i.store("all").then((c=>{(0,a.A)(c,(t=>{if(!n.includes(t.id))return;const a=o[t.id];if(a.length<=0)e.push(t),s.push(i.store("remove",t.id));else{const o={};a.forEach((e=>{(0,r.b0)(t[e])||(o[e]=t[e],delete t[e])})),Object.keys(o).length>0&&(e.push({id:t.id,...o}),Object.keys(t).length>2?l.push(t):s.push(i.store("remove",t.id)))}(0,r.b0)(i.cache[t.id])||delete i.cache[t.id]})),(e.length>0?i.store("set","freeze",e,"apps"):Promise.resolve()).finally((()=>{l.length>0&&s.push(i.store("set",l)),(s.length>0?Promise.all(s):Promise.resolve()).finally((()=>{i.cache._configSync=!1,t&&t()}))}))}))}else{const e=[],l={};i.store("get","freeze","apps").then((s=>{if(!Array.isArray(s)||s.length<=0)return i.cache._configSync=!1,void(t&&t());(0,a.A)(s,(t=>{const a=o[t.id];if(a.length<=0)e.push(t);else{const e={};a.forEach((i=>{(0,r.b0)(t[i])||(e[i]=t[i])})),l[t.id]=e}(0,r.b0)(i.cache[t.id])||delete i.cache[t.id]}));const n=Object.keys(l);(n.length>0?Promise.all(n.map((e=>i.store("get",e).then((t=>({key:e,val:t})))))):Promise.resolve([])).then((a=>{a.length>0&&a.forEach((({key:t,val:i})=>{const a=l[t];i&&(0,r.Gv)(i)?e.push({...a,...i}):e.push({...a,id:t})})),(e.length>0?i.store("set",e):Promise.resolve()).finally((()=>{i.store("remove","freeze","apps").finally((()=>{i.cache._configSync=!1,t&&t(null,!0)}))}))}))}))}}},824:(e,t,i)=>{var a={"./cron.ts":724,"./data.ts":528,"./field.ts":162,"./fire.ts":900,"./get.ts":26,"./i18n.ts":388,"./list.ts":892,"./log.ts":148,"./node.ts":888,"./option.ts":481,"./remove.ts":576,"./set.ts":662};function r(e){var t=o(e);return i(t)}function o(e){if(!i.o(a,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return a[e]}r.keys=function(){return Object.keys(a)},r.resolve=o,e.exports=r,r.id=824},844:(e,t,i)=>{"use strict";function a(e,t){return Object.prototype.toString.call(e)===`[object ${t}]`}function r(e){return a(e,"Undefined")}function o(e){return a(e,"String")}function l(e){return a(e,"Number")}function s(e){return a(e,"Function")}function n(e){return a(e,"Boolean")}function c(e){return a(e,"Object")}function _(e){return a(e,"AsyncFunction")}i.d(t,{$S:()=>_,Et:()=>l,Gv:()=>c,Kg:()=>o,Lm:()=>n,Tn:()=>s,b0:()=>r})},848:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>l});var a=i(218),r=i(413),o=i(844);function l(e,t){const{url:i,body:l,format:s,...n}=e,c=n||{},_=s||"json";GM_xmlhttpRequest({...c,url:i,data:l,fetch:!0,timeout:5e4,method:c.method||"GET",responseType:["blob","json"].includes(_)?_:void 0,onload:function(e){const i=(0,a.q)(e.response);if(e.status>=200&&e.status<300)if("blob"===s){const e=new FileReader;e.addEventListener("load",(e=>{t&&t(null,e.target.result)})),e.addEventListener("error",(e=>{t&&t(e.toString())})),e.readAsDataURL(i)}else t&&t(null,i);else t&&t(i&&i.message?i.message:i)},onerror:function(e){let i=e;(0,r.A)(["message","error"],(t=>{if(e&&(0,o.Kg)(e[t]))return i=e[t],!0})),t&&t(i)}})}},888:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>r});var a=i(844);function r(e,t,i){const r=this;return(0,a.b0)(i)||(r.cache.parse.node=i),r.cache.parse.node}},892:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>o});var a=i(844),r=i(582);function o(e,t,i,o,l="node"){const s=r.c.includes(e.id);let n=i;return s||(n=i&&i.field?{...i,field:i.field,match:{...i.match,type:e.id}}:{...i,field:"type",keyRange:e.id},"node"===l&&n.match&&n.match.id&&(Array.isArray(n.match.id)?n.match.id=n.match.id.map((t=>t.startsWith(`${e.id}_`)?t:`${e.id}_${t}`)):(0,a.Kg)(n.match.id)&&(n.match.id.startsWith(`${e.id}_`)||(n.match.id=`${e.id}_${n.match.id}`)))),this.store("list",n,o,l).then((t=>{if(!t||!Array.isArray(t.data)||t.data.length<=0)return Promise.resolve({...t,data:[]});if(s)return Promise.resolve(t);const i=e.id.length+1;return Promise.resolve({...t,data:t.data.map((t=>({...t,id:(0,a.Kg)(t.id)&&t.id.startsWith(e.id)?t.id.substring(i):t.id})))})}))}},900:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>o});var a=i(844);function r(e,t){const i=`view/circle.html#mid=${t.id}`;e.tabs("create",{url:i})}function o(e,t,i,...o){const l=this,[s]=i.split("__");o.unshift(i),l.getApp(s).then((e=>{if(l.used(s))"open_in_page"===e.runAt?r(t,e):l.fire.apply(l,o);else{if(!e.enabled){let i=e.title||e.id;return e.i18n&&(0,a.Kg)(i)&&i.startsWith("__")&&i.endsWith("__")&&(i=i.replace(/^__(.*?)__$/,"$1"),e.i18n[t.lang]&&e.i18n[t.lang][i]&&(i=e.i18n[t.lang][i])),void t.warning(l.i18n.data.setting__plugin_is_disabled.replace(/\$.*?\$/,i))}if(e.access){const i=Array.isArray(e.access)?e.access:[e.access];if(l.user.roles.findIndex((e=>i.includes(e)))<0)return void l.fire("system_warn",{key:"expired",type:"warning",message:l.i18n.data.setting__expired,okText:l.i18n.data.setting__check},(()=>{t.fire("setting","account")}))}"open_in_page"===e.runAt?r(t,e):l.load(s).then((t=>{t&&l.run(e).then((e=>{e&&l.fire.apply(l,o)}))}))}})).catch((e=>{(e&&e.message?e.message:e).startsWith("error:")?l.fire.apply(l,o):t.log(e)}))}}},t={};function i(a){var r=t[a];if(void 0!==r)return r.exports;var o=t[a]={exports:{}};return e[a](o,o.exports,i),o.exports}i.d=(e,t)=>{for(var a in t)i.o(t,a)&&!i.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{"use strict";var e=i(244);function t(e=location.href){if(/circle=/.test(e)){const[t,i=""]=e.split("#");if(!i)return e;const{hashs:a}=function(e,t,i=location.hash.substring(1).split("&")){let a=[];if(i.join("").length<=0)return{hashs:[],hash:a};const r=Array.isArray(e)?e:[e],o=i.filter((e=>{if(r.findIndex((t=>e.indexOf(t)>=0))<0)return!0;a.push(e)}));if(t){const i=`${e}=${t}`;o.push(i),a=[],a.push(i)}return{hashs:o,hash:a}}(["circle","widget"],void 0,i.split("&"));return`${t}${a.length>0?"#"+a.join("&"):""}`}return e}var a=i(716);const r=e=>{if("string"!=typeof e)throw new TypeError("invalid pattern");if(e.length>65536)throw new TypeError("pattern is too long")},o={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},l=e=>e.replace(/[[\]\\-]/g,"\\$&"),s=e=>e.join(""),n=(e,t)=>{const i=t;if("["!==e.charAt(i))throw new Error("not in a brace expression");const a=[],r=[];let n=i+1,c=!1,_=!1,d=!1,p=!1,u=i,h="";e:for(;n<e.length;){const t=e.charAt(n);if("!"!==t&&"^"!==t||n!==i+1){if("]"===t&&c&&!d){u=n+1;break}if(c=!0,"\\"!==t||d){if("["===t&&!d)for(const[t,[l,s,c]]of Object.entries(o))if(e.startsWith(t,n)){if(h)return["$.",!1,e.length-i,!0];n+=t.length,c?r.push(l):a.push(l),_=_||s;continue e}d=!1,h?(t>h?a.push(l(h)+"-"+l(t)):t===h&&a.push(l(t)),h="",n++):e.startsWith("-]",n+1)?(a.push(l(t+"-")),n+=2):e.startsWith("-",n+1)?(h=t,n+=2):(a.push(l(t)),n++)}else d=!0,n++}else p=!0,n++}if(u<n)return["",!1,0,!1];if(!a.length&&!r.length)return["$.",!1,e.length-i,!0];if(0===r.length&&1===a.length&&/^\\?.$/.test(a[0])&&!p){const e=2===a[0].length?a[0].slice(-1):a[0];return[(m=e,m.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")),!1,u-i,!1]}var m;const g="["+(p?"^":"")+s(a)+"]",f="["+(p?"":"^")+s(r)+"]";return[a.length&&r.length?"("+g+"|"+f+")":a.length?g:f,_,u-i,!0]},c=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/\[([^\/\\])\]/g,"$1"):e.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1"),_=new Set(["!","?","+","*","@"]),d=e=>_.has(e),p="(?!\\.)",u=new Set(["[","."]),h=new Set(["..","."]),m=new Set("().*{}+?[]^$\\!"),g="[^/]",f=g+"*?",b=g+"+?";class y{type;#e;#t;#i=!1;#a=[];#r;#o;#l;#s=!1;#n;#c;#_=!1;constructor(e,t,i={}){this.type=e,e&&(this.#t=!0),this.#r=t,this.#e=this.#r?this.#r.#e:this,this.#n=this.#e===this?i:this.#e.#n,this.#l=this.#e===this?[]:this.#e.#l,"!"!==e||this.#e.#s||this.#l.push(this),this.#o=this.#r?this.#r.#a.length:0}get hasMagic(){if(void 0!==this.#t)return this.#t;for(const e of this.#a)if("string"!=typeof e&&(e.type||e.hasMagic))return this.#t=!0;return this.#t}toString(){return void 0!==this.#c?this.#c:this.type?this.#c=this.type+"("+this.#a.map((e=>String(e))).join("|")+")":this.#c=this.#a.map((e=>String(e))).join("")}#d(){if(this!==this.#e)throw new Error("should only call on root");if(this.#s)return this;let e;for(this.toString(),this.#s=!0;e=this.#l.pop();){if("!"!==e.type)continue;let t=e,i=t.#r;for(;i;){for(let a=t.#o+1;!i.type&&a<i.#a.length;a++)for(const t of e.#a){if("string"==typeof t)throw new Error("string part in extglob AST??");t.copyIn(i.#a[a])}t=i,i=t.#r}}return this}push(...e){for(const t of e)if(""!==t){if("string"!=typeof t&&!(t instanceof y&&t.#r===this))throw new Error("invalid part: "+t);this.#a.push(t)}}toJSON(){const e=null===this.type?this.#a.slice().map((e=>"string"==typeof e?e:e.toJSON())):[this.type,...this.#a.map((e=>e.toJSON()))];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#s&&"!"===this.#r?.type)&&e.push({}),e}isStart(){if(this.#e===this)return!0;if(!this.#r?.isStart())return!1;if(0===this.#o)return!0;const e=this.#r;for(let t=0;t<this.#o;t++){const i=e.#a[t];if(!(i instanceof y&&"!"===i.type))return!1}return!0}isEnd(){if(this.#e===this)return!0;if("!"===this.#r?.type)return!0;if(!this.#r?.isEnd())return!1;if(!this.type)return this.#r?.isEnd();const e=this.#r?this.#r.#a.length:0;return this.#o===e-1}copyIn(e){"string"==typeof e?this.push(e):this.push(e.clone(this))}clone(e){const t=new y(this.type,e);for(const e of this.#a)t.copyIn(e);return t}static#p(e,t,i,a){let r=!1,o=!1,l=-1,s=!1;if(null===t.type){let n=i,c="";for(;n<e.length;){const i=e.charAt(n++);if(r||"\\"===i)r=!r,c+=i;else if(o)n===l+1?"^"!==i&&"!"!==i||(s=!0):"]"!==i||n===l+2&&s||(o=!1),c+=i;else if("["!==i)if(a.noext||!d(i)||"("!==e.charAt(n))c+=i;else{t.push(c),c="";const r=new y(i,t);n=y.#p(e,r,n,a),t.push(r)}else o=!0,l=n,s=!1,c+=i}return t.push(c),n}let n=i+1,c=new y(null,t);const _=[];let p="";for(;n<e.length;){const i=e.charAt(n++);if(r||"\\"===i)r=!r,p+=i;else if(o)n===l+1?"^"!==i&&"!"!==i||(s=!0):"]"!==i||n===l+2&&s||(o=!1),p+=i;else if("["!==i)if(d(i)&&"("===e.charAt(n)){c.push(p),p="";const t=new y(i,c);c.push(t),n=y.#p(e,t,n,a)}else if("|"!==i){if(")"===i)return""===p&&0===t.#a.length&&(t.#_=!0),c.push(p),p="",t.push(..._,c),n;p+=i}else c.push(p),p="",_.push(c),c=new y(null,t);else o=!0,l=n,s=!1,p+=i}return t.type=null,t.#t=void 0,t.#a=[e.substring(i-1)],n}static fromGlob(e,t={}){const i=new y(null,void 0,t);return y.#p(e,i,0,t),i}toMMPattern(){if(this!==this.#e)return this.#e.toMMPattern();const e=this.toString(),[t,i,a,r]=this.toRegExpSource();if(!(a||this.#t||this.#n.nocase&&!this.#n.nocaseMagicOnly&&e.toUpperCase()!==e.toLowerCase()))return i;const o=(this.#n.nocase?"i":"")+(r?"u":"");return Object.assign(new RegExp(`^${t}$`,o),{_src:t,_glob:e})}get options(){return this.#n}toRegExpSource(e){const t=e??!!this.#n.dot;if(this.#e===this&&this.#d(),!this.type){const i=this.isStart()&&this.isEnd(),a=this.#a.map((t=>{const[a,r,o,l]="string"==typeof t?y.#u(t,this.#t,i):t.toRegExpSource(e);return this.#t=this.#t||o,this.#i=this.#i||l,a})).join("");let r="";if(this.isStart()&&"string"==typeof this.#a[0]){if(!(1===this.#a.length&&h.has(this.#a[0]))){const i=u,o=t&&i.has(a.charAt(0))||a.startsWith("\\.")&&i.has(a.charAt(2))||a.startsWith("\\.\\.")&&i.has(a.charAt(4)),l=!t&&!e&&i.has(a.charAt(0));r=o?"(?!(?:^|/)\\.\\.?(?:$|/))":l?p:""}}let o="";this.isEnd()&&this.#e.#s&&"!"===this.#r?.type&&(o="(?:$|\\/)");return[r+a+o,c(a),this.#t=!!this.#t,this.#i]}const i="*"===this.type||"+"===this.type,a="!"===this.type?"(?:(?!(?:":"(?:";let r=this.#h(t);if(this.isStart()&&this.isEnd()&&!r&&"!"!==this.type){const e=this.toString();return this.#a=[e],this.type=null,this.#t=void 0,[e,c(this.toString()),!1,!1]}let o=!i||e||t?"":this.#h(!0);o===r&&(o=""),o&&(r=`(?:${r})(?:${o})*?`);let l="";if("!"===this.type&&this.#_)l=(this.isStart()&&!t?p:"")+b;else{l=a+r+("!"===this.type?"))"+(!this.isStart()||t||e?"":p)+f+")":"@"===this.type?")":"?"===this.type?")?":"+"===this.type&&o?")":"*"===this.type&&o?")?":`)${this.type}`)}return[l,c(r),this.#t=!!this.#t,this.#i]}#h(e){return this.#a.map((t=>{if("string"==typeof t)throw new Error("string type in extglob ast??");const[i,a,r,o]=t.toRegExpSource(e);return this.#i=this.#i||o,i})).filter((e=>!(this.isStart()&&this.isEnd()&&!e))).join("|")}static#u(e,t,i=!1){let a=!1,r="",o=!1;for(let l=0;l<e.length;l++){const s=e.charAt(l);if(a)a=!1,r+=(m.has(s)?"\\":"")+s;else if("\\"!==s){if("["===s){const[i,a,s,c]=n(e,l);if(s){r+=i,o=o||a,l+=s-1,t=t||c;continue}}"*"!==s?"?"!==s?r+=s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):(r+=g,t=!0):(r+=i&&"*"===e?b:f,t=!0)}else l===e.length-1?r+="\\\\":a=!0}return[r,c(e),!!t,o]}}const v=(e,t,i={})=>(r(t),!(!i.nocomment&&"#"===t.charAt(0))&&new q(t,i).match(e)),w=/^\*+([^+@!?\*\[\(]*)$/,k=e=>t=>!t.startsWith(".")&&t.endsWith(e),x=e=>t=>t.endsWith(e),A=e=>(e=e.toLowerCase(),t=>!t.startsWith(".")&&t.toLowerCase().endsWith(e)),P=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),$=/^\*+\.\*+$/,C=e=>!e.startsWith(".")&&e.includes("."),E=e=>"."!==e&&".."!==e&&e.includes("."),T=/^\.\*+$/,V=e=>"."!==e&&".."!==e&&e.startsWith("."),M=/^\*+$/,S=e=>0!==e.length&&!e.startsWith("."),R=e=>0!==e.length&&"."!==e&&".."!==e,z=/^\?+([^+@!?\*\[\(]*)?$/,L=([e,t=""])=>{const i=D([e]);return t?(t=t.toLowerCase(),e=>i(e)&&e.toLowerCase().endsWith(t)):i},j=([e,t=""])=>{const i=I([e]);return t?(t=t.toLowerCase(),e=>i(e)&&e.toLowerCase().endsWith(t)):i},O=([e,t=""])=>{const i=I([e]);return t?e=>i(e)&&e.endsWith(t):i},N=([e,t=""])=>{const i=D([e]);return t?e=>i(e)&&e.endsWith(t):i},D=([e])=>{const t=e.length;return e=>e.length===t&&!e.startsWith(".")},I=([e])=>{const t=e.length;return e=>e.length===t&&"."!==e&&".."!==e},W="object"==typeof process&&process?"object"==typeof process.env&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix";v.sep="win32"===W?{sep:"\\"}.sep:{sep:"/"}.sep;const H=Symbol("globstar **");v.GLOBSTAR=H;v.filter=(e,t={})=>i=>v(i,e,t);const F=(e,t={})=>Object.assign({},e,t);v.defaults=e=>{if(!e||"object"!=typeof e||!Object.keys(e).length)return v;const t=v;return Object.assign(((i,a,r={})=>t(i,a,F(e,r))),{Minimatch:class extends t.Minimatch{constructor(t,i={}){super(t,F(e,i))}static defaults(i){return t.defaults(F(e,i)).Minimatch}},AST:class extends t.AST{constructor(t,i,a={}){super(t,i,F(e,a))}static fromGlob(i,a={}){return t.AST.fromGlob(i,F(e,a))}},unescape:(i,a={})=>t.unescape(i,F(e,a)),escape:(i,a={})=>t.escape(i,F(e,a)),filter:(i,a={})=>t.filter(i,F(e,a)),defaults:i=>t.defaults(F(e,i)),makeRe:(i,a={})=>t.makeRe(i,F(e,a)),braceExpand:(i,a={})=>t.braceExpand(i,F(e,a)),match:(i,a,r={})=>t.match(i,a,F(e,r)),sep:t.sep,GLOBSTAR:H})};const G=(e,t={})=>(r(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:a(e));v.braceExpand=G;v.makeRe=(e,t={})=>new q(e,t).makeRe();v.match=(e,t,i={})=>{const a=new q(t,i);return e=e.filter((e=>a.match(e))),a.options.nonull&&!e.length&&e.push(t),e};const U=/[?*]|[+@!]\(.*?\)|\[|\]/;class q{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(e,t={}){r(e),t=t||{},this.options=t,this.pattern=e,this.platform=t.platform||W,this.isWindows="win32"===this.platform,this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||!1===t.allowWindowsEscape,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!t.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!t.nonegate,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=void 0!==t.windowsNoMagicRoot?t.windowsNoMagicRoot:!(!this.isWindows||!this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(const e of this.set)for(const t of e)if("string"!=typeof t)return!0;return!1}debug(...e){}make(){const e=this.pattern,t=this.options;if(!t.nocomment&&"#"===e.charAt(0))return void(this.comment=!0);if(!e)return void(this.empty=!0);this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],t.debug&&(this.debug=(...e)=>console.error(...e)),this.debug(this.pattern,this.globSet);const i=this.globSet.map((e=>this.slashSplit(e)));this.globParts=this.preprocess(i),this.debug(this.pattern,this.globParts);let a=this.globParts.map(((e,t,i)=>{if(this.isWindows&&this.windowsNoMagicRoot){const t=!(""!==e[0]||""!==e[1]||"?"!==e[2]&&U.test(e[2])||U.test(e[3])),i=/^[a-z]:/i.test(e[0]);if(t)return[...e.slice(0,4),...e.slice(4).map((e=>this.parse(e)))];if(i)return[e[0],...e.slice(1).map((e=>this.parse(e)))]}return e.map((e=>this.parse(e)))}));if(this.debug(this.pattern,a),this.set=a.filter((e=>-1===e.indexOf(!1))),this.isWindows)for(let e=0;e<this.set.length;e++){const t=this.set[e];""===t[0]&&""===t[1]&&"?"===this.globParts[e][2]&&"string"==typeof t[3]&&/^[a-z]:$/i.test(t[3])&&(t[2]="?")}this.debug(this.pattern,this.set)}preprocess(e){if(this.options.noglobstar)for(let t=0;t<e.length;t++)for(let i=0;i<e[t].length;i++)"**"===e[t][i]&&(e[t][i]="*");const{optimizationLevel:t=1}=this.options;return t>=2?(e=this.firstPhasePreProcess(e),e=this.secondPhasePreProcess(e)):e=t>=1?this.levelOneOptimize(e):this.adjascentGlobstarOptimize(e),e}adjascentGlobstarOptimize(e){return e.map((e=>{let t=-1;for(;-1!==(t=e.indexOf("**",t+1));){let i=t;for(;"**"===e[i+1];)i++;i!==t&&e.splice(t,i-t)}return e}))}levelOneOptimize(e){return e.map((e=>0===(e=e.reduce(((e,t)=>{const i=e[e.length-1];return"**"===t&&"**"===i?e:".."===t&&i&&".."!==i&&"."!==i&&"**"!==i?(e.pop(),e):(e.push(t),e)}),[])).length?[""]:e))}levelTwoFileOptimize(e){Array.isArray(e)||(e=this.slashSplit(e));let t=!1;do{if(t=!1,!this.preserveMultipleSlashes){for(let i=1;i<e.length-1;i++){const a=e[i];1===i&&""===a&&""===e[0]||("."!==a&&""!==a||(t=!0,e.splice(i,1),i--))}"."!==e[0]||2!==e.length||"."!==e[1]&&""!==e[1]||(t=!0,e.pop())}let i=0;for(;-1!==(i=e.indexOf("..",i+1));){const a=e[i-1];a&&"."!==a&&".."!==a&&"**"!==a&&(t=!0,e.splice(i-1,2),i-=2)}}while(t);return 0===e.length?[""]:e}firstPhasePreProcess(e){let t=!1;do{t=!1;for(let i of e){let a=-1;for(;-1!==(a=i.indexOf("**",a+1));){let r=a;for(;"**"===i[r+1];)r++;r>a&&i.splice(a+1,r-a);let o=i[a+1];const l=i[a+2],s=i[a+3];if(".."!==o)continue;if(!l||"."===l||".."===l||!s||"."===s||".."===s)continue;t=!0,i.splice(a,1);const n=i.slice(0);n[a]="**",e.push(n),a--}if(!this.preserveMultipleSlashes){for(let e=1;e<i.length-1;e++){const a=i[e];1===e&&""===a&&""===i[0]||("."!==a&&""!==a||(t=!0,i.splice(e,1),e--))}"."!==i[0]||2!==i.length||"."!==i[1]&&""!==i[1]||(t=!0,i.pop())}let r=0;for(;-1!==(r=i.indexOf("..",r+1));){const e=i[r-1];if(e&&"."!==e&&".."!==e&&"**"!==e){t=!0;const e=1===r&&"**"===i[r+1]?["."]:[];i.splice(r-1,2,...e),0===i.length&&i.push(""),r-=2}}}}while(t);return e}secondPhasePreProcess(e){for(let t=0;t<e.length-1;t++)for(let i=t+1;i<e.length;i++){const a=this.partsMatch(e[t],e[i],!this.preserveMultipleSlashes);if(a){e[t]=[],e[i]=a;break}}return e.filter((e=>e.length))}partsMatch(e,t,i=!1){let a=0,r=0,o=[],l="";for(;a<e.length&&r<t.length;)if(e[a]===t[r])o.push("b"===l?t[r]:e[a]),a++,r++;else if(i&&"**"===e[a]&&t[r]===e[a+1])o.push(e[a]),a++;else if(i&&"**"===t[r]&&e[a]===t[r+1])o.push(t[r]),r++;else if("*"!==e[a]||!t[r]||!this.options.dot&&t[r].startsWith(".")||"**"===t[r]){if("*"!==t[r]||!e[a]||!this.options.dot&&e[a].startsWith(".")||"**"===e[a])return!1;if("a"===l)return!1;l="b",o.push(t[r]),a++,r++}else{if("b"===l)return!1;l="a",o.push(e[a]),a++,r++}return e.length===t.length&&o}parseNegate(){if(this.nonegate)return;const e=this.pattern;let t=!1,i=0;for(let a=0;a<e.length&&"!"===e.charAt(a);a++)t=!t,i++;i&&(this.pattern=e.slice(i)),this.negate=t}matchOne(e,t,i=!1){const a=this.options;if(this.isWindows){const i="string"==typeof e[0]&&/^[a-z]:$/i.test(e[0]),a=!i&&""===e[0]&&""===e[1]&&"?"===e[2]&&/^[a-z]:$/i.test(e[3]),r="string"==typeof t[0]&&/^[a-z]:$/i.test(t[0]),o=a?3:i?0:void 0,l=!r&&""===t[0]&&""===t[1]&&"?"===t[2]&&"string"==typeof t[3]&&/^[a-z]:$/i.test(t[3])?3:r?0:void 0;if("number"==typeof o&&"number"==typeof l){const[i,a]=[e[o],t[l]];i.toLowerCase()===a.toLowerCase()&&(t[l]=i,l>o?t=t.slice(l):o>l&&(e=e.slice(o)))}}const{optimizationLevel:r=1}=this.options;r>=2&&(e=this.levelTwoFileOptimize(e)),this.debug("matchOne",this,{file:e,pattern:t}),this.debug("matchOne",e.length,t.length);for(var o=0,l=0,s=e.length,n=t.length;o<s&&l<n;o++,l++){this.debug("matchOne loop");var c=t[l],_=e[o];if(this.debug(t,c,_),!1===c)return!1;if(c===H){this.debug("GLOBSTAR",[t,c,_]);var d=o,p=l+1;if(p===n){for(this.debug("** at the end");o<s;o++)if("."===e[o]||".."===e[o]||!a.dot&&"."===e[o].charAt(0))return!1;return!0}for(;d<s;){var u=e[d];if(this.debug("\nglobstar while",e,d,t,p,u),this.matchOne(e.slice(d),t.slice(p),i))return this.debug("globstar found match!",d,s,u),!0;if("."===u||".."===u||!a.dot&&"."===u.charAt(0)){this.debug("dot detected!",e,d,t,p);break}this.debug("globstar swallow a segment, and continue"),d++}return!(!i||(this.debug("\n>>> no match, partial?",e,d,t,p),d!==s))}let r;if("string"==typeof c?(r=_===c,this.debug("string match",c,_,r)):(r=c.test(_),this.debug("pattern match",c,_,r)),!r)return!1}if(o===s&&l===n)return!0;if(o===s)return i;if(l===n)return o===s-1&&""===e[o];throw new Error("wtf?")}braceExpand(){return G(this.pattern,this.options)}parse(e){r(e);const t=this.options;if("**"===e)return H;if(""===e)return"";let i,a=null;(i=e.match(M))?a=t.dot?R:S:(i=e.match(w))?a=(t.nocase?t.dot?P:A:t.dot?x:k)(i[1]):(i=e.match(z))?a=(t.nocase?t.dot?j:L:t.dot?O:N)(i):(i=e.match($))?a=t.dot?E:C:(i=e.match(T))&&(a=V);const o=y.fromGlob(e,this.options).toMMPattern();return a&&"object"==typeof o&&Reflect.defineProperty(o,"test",{value:a}),o}makeRe(){if(this.regexp||!1===this.regexp)return this.regexp;const e=this.set;if(!e.length)return this.regexp=!1,this.regexp;const t=this.options,i=t.noglobstar?"[^/]*?":t.dot?"(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?":"(?:(?!(?:\\/|^)\\.).)*?",a=new Set(t.nocase?["i"]:[]);let r=e.map((e=>{const t=e.map((e=>{if(e instanceof RegExp)for(const t of e.flags.split(""))a.add(t);return"string"==typeof e?e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):e===H?H:e._src}));return t.forEach(((e,a)=>{const r=t[a+1],o=t[a-1];e===H&&o!==H&&(void 0===o?void 0!==r&&r!==H?t[a+1]="(?:\\/|"+i+"\\/)?"+r:t[a]=i:void 0===r?t[a-1]=o+"(?:\\/|"+i+")?":r!==H&&(t[a-1]=o+"(?:\\/|\\/"+i+"\\/)"+r,t[a+1]=H))})),t.filter((e=>e!==H)).join("/")})).join("|");const[o,l]=e.length>1?["(?:",")"]:["",""];r="^"+o+r+l+"$",this.negate&&(r="^(?!"+r+").+$");try{this.regexp=new RegExp(r,[...a].join(""))}catch(e){this.regexp=!1}return this.regexp}slashSplit(e){return this.preserveMultipleSlashes?e.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(e)?["",...e.split(/\/+/)]:e.split(/\/+/)}match(e,t=this.partial){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return""===e;if("/"===e&&t)return!0;const i=this.options;this.isWindows&&(e=e.split("\\").join("/"));const a=this.slashSplit(e);this.debug(this.pattern,"split",a);const r=this.set;this.debug(this.pattern,"set",r);let o=a[a.length-1];if(!o)for(let e=a.length-2;!o&&e>=0;e--)o=a[e];for(let e=0;e<r.length;e++){const l=r[e];let s=a;i.matchBase&&1===l.length&&(s=[o]);if(this.matchOne(s,l,t))return!!i.flipNegate||!this.negate}return!i.flipNegate&&this.negate}static defaults(e){return v.defaults(e).Minimatch}}function B(e,i=location.href){if(!Array.isArray(e)||e.length<=0)return;const a=function(e){let t;try{t=new URL(/.*?:\/\//.test(e)?e:`http://${e}`)}catch(i){t={hash:"",href:e,host:"--",hostname:"--"}}return t}(i),r=i.startsWith("http")?t(i):i;return e.sort(((e,t)=>{const i=(e.id||"").trim(),a=(t.id||"").trim();return i.length>a.length?-1:1})).find((e=>{const t=(e.id||"").trim();if([r,a.hostname].includes(t))return!0;if(t.startsWith("[")&&t.endsWith("]")){const e=[];let i=t.replace(/^\[|\]$/g,"");const a=i.split("/").pop();a&&(["i","g","m","s","u","y"].forEach((t=>{a.includes(t)&&e.push(t)})),e.length>0&&(i=i.replace(a,"")));return new RegExp(i.replace(/^\/|\/$/g,""),e.join("")).test(r)}return r.indexOf(t)>=0||v(r,t)}))}v.AST=y,v.Minimatch=q,v.escape=(e,{windowsPathsNoEscape:t=!1}={})=>t?e.replace(/[?*()[\]]/g,"[$&]"):e.replace(/[?*()[\]\\]/g,"\\$&"),v.unescape=c;var K=i(413),Y=i(844),Z=i(735);const J=i(824),Q=J.keys().reduce(((e,t)=>(e[t.replace(/^\.\/(.*)\.ts$/,"$1")]=J(t).default,e)),{});function X(t,i){const a=t.id,r={type:Z.NW,path:e.A,match:B,debug:Z.Yz,tables:Z.um,version:Z.rE,v3:!1,user:i.user,device:i.device,lang:i.i18n.lang,colorScheme:i.colorScheme};(0,K.A)(Q,((e,a)=>{r[a]=(...a)=>(a.unshift(r),a.unshift(t),e.apply(i,a))})),r.getURL=e=>e,r.language=()=>i.language(),["warning","info","error","success"].forEach((e=>{r[e]=(...t)=>{const a=`_${Date.now()}`;return r.fire("notice",{key:a,type:e,message:r.i18n.apply(i,t)}),()=>{r.fire("notice_destroy",a)}}})),["loading"].forEach((e=>{r[e]=(...e)=>{if(e.length<=0)return i.fire("loading",!0,!1,!0),()=>{i.fire("loading",!1)};let t=e.pop();["warning","info","error","success"].includes(t)||(e.push(t),t="info");const a=`_${Date.now()}`;return r.fire("notice",{type:t,loading:!0,message:r.i18n.apply(i,e)}),()=>{r.fire("notice_destroy",a)}}})),["record","export","import","reset","url2json"].forEach((e=>{r[e]=(t,a)=>new Promise(((r,o)=>{i.send(e,{action:a,value:t},((e,t)=>{e?o(e):r(t)}))})).catch((e=>{(0,Y.Kg)(e)&&i.fire("notice",{type:"error",message:"empty"===e?i.i18n.data.setting__import_empty:e})}))})),["contextMenus","tabs","windows","fontSettings"].forEach((e=>{r[e]=(t,a)=>new Promise(((r,o)=>{i.send(e,{action:t,value:a},((e,t)=>{e?o(e):r(t)}))})).catch((e=>{(0,Y.Kg)(e)&&i.fire("notice",{type:"error",message:e})}))}));const o=["fetch","action","syncUser","on","addFilter","applyFilter","hasHook","removeHook","apply","getApp","disable"];return["store","setting"].includes(a)&&["enable","install","listApp","uninstall","dynamicRun"].forEach((e=>{o.push(e)})),["develop"].includes(a)&&["install","uninstall"].forEach((e=>{o.push(e)})),o.forEach((e=>{r[e]=(...t)=>i[e].apply(i,t)})),r.hasHook("system_warn")||r.on("system_warn",((e,t,i)=>{r.fire("notice",e,t,i)})),r.hasHook("expired")||r.on("expired",((e,t)=>{i.cache._configSync||(i.cache._configSync=!0,i.send("expired",{action:e},((e,a)=>{t&&t(),i.cache._configSync=!1,!e&&a&&r.fire("notice",{key:"sync",type:"warning",message:i.i18n.data.setting__sync,okText:i.i18n.data.setting__sync_reload},(()=>{location.reload()}))})))})),r}const ee=i(443);var te=i(179);function ie(e,t){if(!(0,Y.Kg)(e)||!e)return!1;try{return new Function("window","document","Antd","React","dayjs","ReactDOM","classNames","AntDesignSvg","AntDesignColors","ReactJsxRuntime","AntDesignIcons",e)(window,document,window.Antd,window.React,window.dayjs,window.ReactDOM,window.classNames,window.AntDesignSvg,window.AntDesignColors,window.ReactJsxRuntime,window.AntDesignIcons),!0}catch(e){return t&&console.log(`${t} encountered an error:`),console.log(e),!1}}function ae(e,t,i="setting"){return t&&t.startsWith("__")&&t.endsWith("__")&&i?e.i18n.data[`${i}__${t.replace(/^__(.*?)__$/,"$1")}`]:t}var re=/iPhone/i,oe=/iPod/i,le=/iPad/i,se=/\biOS-universal(?:.+)Mac\b/i,ne=/\bAndroid(?:.+)Mobile\b/i,ce=/Android/i,_e=/(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i,de=/Silk/i,pe=/Windows Phone/i,ue=/\bWindows(?:.+)ARM\b/i,he=/BlackBerry/i,me=/BB10/i,ge=/Opera Mini/i,fe=/\b(CriOS|Chrome)(?:.+)Mobile/i,be=/Mobile(?:.+)Firefox\b/i,ye=function(e){return void 0!==e&&"MacIntel"===e.platform&&"number"==typeof e.maxTouchPoints&&e.maxTouchPoints>1&&"undefined"==typeof MSStream};function ve(e){var t={userAgent:"",platform:"",maxTouchPoints:0};e||"undefined"==typeof navigator?"string"==typeof e?t.userAgent=e:e&&e.userAgent&&(t={userAgent:e.userAgent,platform:e.platform,maxTouchPoints:e.maxTouchPoints||0}):t={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0};var i=t.userAgent,a=i.split("[FBAN");void 0!==a[1]&&(i=a[0]),void 0!==(a=i.split("Twitter"))[1]&&(i=a[0]);var r=function(e){return function(t){return t.test(e)}}(i),o={apple:{phone:r(re)&&!r(pe),ipod:r(oe),tablet:!r(re)&&(r(le)||ye(t))&&!r(pe),universal:r(se),device:(r(re)||r(oe)||r(le)||r(se)||ye(t))&&!r(pe)},amazon:{phone:r(_e),tablet:!r(_e)&&r(de),device:r(_e)||r(de)},android:{phone:!r(pe)&&r(_e)||!r(pe)&&r(ne),tablet:!r(pe)&&!r(_e)&&!r(ne)&&(r(de)||r(ce)),device:!r(pe)&&(r(_e)||r(de)||r(ne)||r(ce))||r(/\bokhttp\b/i)},windows:{phone:r(pe),tablet:r(ue),device:r(pe)||r(ue)},other:{blackberry:r(he),blackberry10:r(me),opera:r(ge),firefox:r(be),chrome:r(fe),device:r(he)||r(me)||r(ge)||r(be)||r(fe)},any:!1,phone:!1,tablet:!1};return o.any=o.apple.device||o.android.device||o.windows.device||o.other.device,o.phone=o.apple.phone||o.android.phone||o.windows.phone,o.tablet=o.apple.tablet||o.android.tablet||o.windows.tablet,o}function we(){const e=window.navigator.userAgent.toLowerCase();return/edg\/|edge\//.test(e)?"edge":e.indexOf("opr")>-1?"opera":e.indexOf("firefox")>-1?"firefox":e.indexOf("360se")>-1||e.indexOf("360ee")>-1?"360":e.indexOf("chrome")>-1?"chrome":e.indexOf("safari")>-1?"safari":""}var ke=i(452);class xe{_caches={};_hooks={};__addFilter(e,t,i,a=10){!Array.isArray(this._hooks[e])&&(this._hooks[e]=[]);const r=this._hooks[e].findIndex((e=>e.priority<=a)),o=(0,Y.Kg)(t)?(...e)=>this.fire.apply(this,[t,...e]):t;return this._hooks[e].splice(r+1,0,{factory:o,priority:a,once:!!i}),Array.isArray(this._caches[e])&&(this._caches[e].forEach((t=>{t.unshift(e),this.applyFilter.apply(this,t)})),delete this._caches[e]),()=>{this.__remove(e,o)}}__remove(e,t){if(this.hasHook(e))if((0,Y.Tn)(t)){const i=this._hooks[e].findIndex((e=>e.factory===t));i>=0&&this._hooks[e].splice(i,1)}else delete this._hooks[e];Array.isArray(this._caches[e])&&delete this._caches[e]}removeHook(e,t){Array.isArray(e)?e.forEach((e=>{this.__remove(e)})):this.__remove(e,t)}hasHook(e){return!!this._hooks[e]}addFilter(e,t,i,a){if(Array.isArray(e)){const r=[];return e.forEach((e=>{r.push(this.__addFilter(e,t,i,a))})),()=>{r.forEach((e=>{e()}))}}return this.__addFilter(e,t,i,a)}applyFilter(e,...t){if(!this.hasHook(e))return!Array.isArray(this._caches[e])&&(this._caches[e]=[]),this._caches[e].push(t),t[0];const i=[];return this._hooks[e]&&this._hooks[e].forEach((e=>{const a=e.factory,r=(0,Y.Tn)(a)?a.apply(this,t):a;!(0,Y.b0)(r)&&(t[0]=r),e.once&&i.push(a)})),i.forEach((t=>{this.removeHook(e,t)})),t[0]}on(e,t,i,a){return this.addFilter(e,t,i,a)}fire(...e){this.applyFilter.apply(this,e)}}function Ae(){}var Pe=i(383);class $e extends xe{_runtime;_getApi=Ae;presets;hooks;constructor(){super(),this.hooks={},this.presets=[],this._runtime={loaded:[],data:{}}}download(e){return Promise.reject("子类需要实现 download")}loader(e){return Promise.reject("子类需要实现 loader")}store(...e){return Promise.reject("子类需要实现 store")}listApp(e,t={limit:0,start:0}){return this.store("list",{match:e,field:"type",keyRange:"plugin"},t,"apps").then((t=>{const i=t||{start:1,limit:10,data:[]},a=Array.isArray(i.data)?i.data:[];return this.store("get","plugins").then((t=>{const i=t||{};return(0,K.A)(this.presets.map((e=>({...e,enabled:(0,Y.Lm)(i[e.id])?i[e.id]:!!e.enabled}))),(t=>{if(!a.find((e=>e.id===t.id))){let i=!0;(0,K.A)(e,((e,a)=>{if(t[a]!==e)return i=!1,!0})),i&&a.push(t)}})),Promise.resolve(a)}))}))}getApp(e){const t=[],i=[],a=Array.isArray(e);return(0,K.A)(a?e:[e],(e=>{(0,Y.Kg)(e)?t.push(e):i.push(e)})),(t.length>0?this.store("list",{match:{id:t,type:"plugin"}},"apps").then((e=>{const i=e||{start:1,limit:10,data:[]},a=Array.isArray(i.data)?i.data:[],r=this.presets.map((e=>e.id));return(0,Pe.A)(r,t,!0)?this.store("get","plugins").then((e=>{const i=e||{};return Promise.all(t.map((e=>{let t=a.find((t=>t.id===e));if(t||(t=this.presets.find((t=>t.id===e))),t){let e=!0;return e=!!t.core||((0,Y.Lm)(i[t.id])?!!i[t.id]:!!t.enabled),Promise.resolve({...t,enabled:e})}return Promise.reject(`error: Please install "${e}" first`)})))})):Promise.resolve(a)})):Promise.resolve([])).then((e=>{const t=[...e,...i];return a?Promise.resolve(t):Promise.resolve(t[0])}))}setApp(e){const t=Array.isArray(e)?e:[e],i=t.map((e=>e.id)),a=this.presets.map((e=>e.id));return((0,Pe.A)(a,i,!0)?this.store("get","plugins").then((e=>{const i=e||{},a=[];return(0,K.A)(t,(e=>{const t=this.presets.find((t=>t.id===e.id));e.main?(a.push(e),t&&i[t.id]&&(i[t.id]=!1)):t&&(i[e.id]=!!e.enabled)})),this.store("set","plugins",i).then((()=>Promise.resolve(a)))})):Promise.resolve(t)).then((e=>(e.length<=0?Promise.resolve():Promise.all(e.map((e=>this.store("set",e,"apps"))))).then((()=>Promise.resolve(t)))))}enable(e){return this.getApp(e).then((e=>{const t=(Array.isArray(e)?e:[e]).filter((e=>!e.enabled));if(t.length<=0)return Promise.resolve(!0);const i=[];return(0,K.A)(t,(e=>{Array.isArray(e.dependencies)&&e.dependencies.length>0&&(0,K.A)(e.dependencies,(e=>{!i.includes(e)&&i.push(e)}))})),i.length>0?this.enable(i).then((e=>e?this.setApp(t.map((e=>({...e,enabled:!0})))).then((()=>Promise.resolve(!0))):Promise.resolve(!1))):this.setApp(t.map((e=>({...e,enabled:!0})))).then((()=>Promise.resolve(!0)))}))}_install(e){return this.run(e,!0).then((e=>{const t=Array.isArray(e)?e:[e];return(0,K.A)(t,(e=>{e.factory&&e.factory.install&&e.factory.install(this._getApi(e))})),Promise.resolve(!0)}))}install(e,t){return(t?this.getApp(e).then((e=>{const t=(Array.isArray(e)?e:[e]).filter((e=>!e.enabled));return t.length<=0?Promise.resolve(!0):this.enable(t)})):Promise.reject()).catch((()=>{const t=[],i=[];(0,K.A)(Array.isArray(e)?e:[e],(e=>{(0,Y.Kg)(e)?t.push(e):i.push(e)}));const a=[];return t.length>0&&a.push(this.download(t)),i.length>0&&a.push(Promise.resolve(i)),a.length>0?Promise.all(a).then((e=>{const t=[];(0,K.A)(Array.isArray(e)?e:[e],(e=>{(0,K.A)(Array.isArray(e)?e:[e],(e=>{t.push(e)}))}));const i=[];return(0,K.A)(t,(e=>{Array.isArray(e.dependencies)&&e.dependencies.length>0&&(0,K.A)(e.dependencies,(e=>{!i.includes(e)&&i.push(e)}))})),i.length>0?this.install(i,!0).then((e=>{let i=!0;return Array.isArray(e)&&e.length>0&&(0,K.A)(e,(e=>{if(!e)return i=!1,!0})),i?this.setApp(t.map((e=>({...e,enabled:!0})))).then((()=>this._install(t))):Promise.resolve(!1)})):this.setApp(t.map((e=>({...e,enabled:!0})))).then((()=>this._install(t)))})):Promise.resolve(!0)}))}load(e){const t=(Array.isArray(e)?e:[e]).filter((e=>{const t=(0,Y.Kg)(e)?e:e.id;return!this._runtime.loaded.includes(t)&&!this._runtime.data[t]}));return t.length<=0?Promise.resolve(!0):this.getApp(t).then((e=>{const t=e.filter((e=>{const t=this._runtime.data[e.id];return!t||!t.factory}));if(t.length<=0)return Promise.resolve(!0);const i=[];if((0,K.A)(t,(e=>{Array.isArray(e.dependencies)&&e.dependencies.length>0&&(0,K.A)(e.dependencies,(e=>{!i.includes(e)&&i.push(e)}))})),i.length>0)return this.load(i).then((e=>{if(e){const e=[],i=[];return(0,K.A)(t,(t=>{this._runtime.loaded.push(t.id),t.main?i.push(t):e.push(t)})),i.length>0&&!ie(i.map((e=>e.main)).join(";"),i.map((e=>e.id)).join(","))?Promise.resolve(!1):e.length>0?this.loader(e.map((e=>e.id))):Promise.resolve(!0)}return Promise.resolve(!1)}));(0,K.A)(t,(e=>{this._runtime.loaded.push(e.id)}));const a=[],r=[];return(0,K.A)(t,(e=>{e.main?r.push(e):a.push(e)})),r.length>0&&!ie(r.map((e=>e.main)).join(";"),r.map((e=>e.id)).join(","))?Promise.resolve(!1):a.length>0?this.loader(a.map((e=>e.id))):Promise.resolve(!0)}))}runtime(e){return this._runtime.data[e]}used(e){return this._runtime.loaded.includes(e)}define(e,t){this._runtime.data[e]={main:t,running:!1}}_run(e,t,i){const a=this._runtime.data[e.id];if(!a)return Promise.resolve({plugin:e});if(a.running)return Promise.resolve({plugin:e,factory:a.factory});let r,o=a.main,l=[];const s=this._getApi(e);if(o&&(!function(e,t=!0){if(!(0,Y.Tn)(e))return!1;const i=e.toString();return!(0,Y.b0)(e.prototype)&&e.prototype.constructor===e&&(!!i.startsWith("class")||Object.getOwnPropertyNames(e.prototype).length>=2||!/^function\s+\(|^function\s+anonymous\(/.test(i)&&(!(!t||!/^function\s+[A-Z]/.test(i))||!!/\b\(this\b|\bthis[.[]\b/.test(i)&&(!(t&&!/classCallCheck\(this/.test(i))||/^function\sdefault_\d+\s*\(/.test(i))))}(o)?(0,Y.Tn)(o)?(r=o(e,s,t)||{},(0,Y.Tn)(r)?l=["onSelf"]:(0,Y.Gv)(r)&&(l=Object.keys(r))):(0,Y.Gv)(o)&&(r={...o,app:s,me:e},t&&(r.dependencies=t),l=Object.keys(o)):(r=new o(e,s,t),l=Object.getOwnPropertyNames(o.prototype)),this._runtime.data[e.id]={...a,factory:r,running:!0}),r){if(l.length>0){l.filter((e=>e.startsWith("on")||e.startsWith("filter"))).forEach((t=>{const i="onSelf"===t?`on${e.id.replace(/^\S/,(e=>e.toUpperCase()))}`:t,a=i.startsWith("on"),o=i.substring(a?2:6).replace(/^\S/,(e=>e.toLowerCase())).replace(/[A-Z]/g,(e=>`_${e.toLowerCase()}`));o.length>0&&(!Array.isArray(this.hooks[e.id])&&(this.hooks[e.id]=[]),this.hooks[e.id].push(this[a?"on":"addFilter"](o,((...e)=>(e.unshift(s),r[t]?r[t].apply(r,e):r.apply(r,e))))))}))}if(!i){const t=(0,Y.Tn)(r.start)?r.start(s):r.start;return t&&(0,Y.Tn)(t.then)?t.then((()=>Promise.resolve({plugin:e,factory:r}))):Promise.resolve({plugin:e,factory:r})}return Promise.resolve({plugin:e,factory:r})}return Promise.resolve({plugin:e})}run(e,t){const i=Array.isArray(e);return this.getApp(e).then((e=>{const a=Array.isArray(e)?e:[e],r=[];return(0,K.A)(a,(e=>{Array.isArray(e.dependencies)&&e.dependencies.length>0&&(0,K.A)(e.dependencies,(e=>{!r.includes(e)&&r.push(e)}))})),r.length>0?this.run(r,t).then((e=>{if(e){const t={};return(Array.isArray(e)?e:[e]).forEach((({plugin:e,factory:i})=>{i&&(t[e.id]=i)})),Promise.all(a.map((e=>this._run(e,t)))).then((e=>i?Promise.resolve(e):Promise.resolve(e[0])))}return Promise.reject(!1)})):Promise.all(a.map((e=>this._run(e,{},t)))).then((e=>i?Promise.resolve(e):Promise.resolve(e[0])))}))}destory(e){return this.getApp(e).then((e=>{const t=Array.isArray(e)?e:[e];return Promise.all(t.map((e=>{const t=this._runtime.data[e.id];if(!t)return Promise.resolve(!0);if(!t.running||!t.factory)return Promise.resolve(!0);const i=this._getApi(e);let a=Promise.resolve(!0);return t.factory&&(0,Y.Tn)(t.factory.destory)?a=new Promise((e=>{t.factory.destory(i),e(!0)})):t.factory&&(0,Y.$S)(t.factory.destory)&&(a=t.factory.destory(i)),a.then((()=>{const t=this.hooks[e.id];return Array.isArray(t)&&(t.forEach((e=>{e()})),delete this.hooks[e.id]),this._runtime.data[e.id].running=!1,Promise.resolve(!0)}))}))).then((e=>{let t=!0;return Array.isArray(e)&&e.length>0&&(0,K.A)(e,(e=>{if(!e)return t=!1,!0})),Promise.resolve(t)}))}))}disable(e){return this.getApp(e).then((e=>{const t=Array.isArray(e)?e:[e];return(0,K.A)(t,(e=>{const t=this._runtime.data[e.id];t&&t.running&&this.destory(e)})),Promise.all(t.map((e=>e.enabled?this.setApp({...e,enabled:!1}).then((()=>Promise.resolve(!0))):Promise.resolve(!0)))).then((e=>{let t=!0;return Array.isArray(e)&&e.length>0&&(0,K.A)(e,(e=>{if(!e)return t=!1,!0})),Promise.resolve(t)}))})).catch((()=>Promise.resolve(!1)))}uninstall(e){return this.getApp(e).then((e=>{const t=Array.isArray(e)?e:[e];return(0,K.A)(t,(e=>{const t=this._runtime.data[e.id];t&&t.factory&&t.factory.uninstall&&t.factory.uninstall(this._getApi(e)),(t&&t.running||e.enabled)&&this.destory(e)})),Promise.all(t.map((e=>e.main?this.store("remove",e.id,"apps").then((()=>Promise.resolve(!0))):Promise.resolve(!0)))).then((e=>{let t=!0;return Array.isArray(e)&&e.length>0&&(0,K.A)(e,(e=>{if(!e)return t=!1,!0})),Promise.resolve(t)}))})).catch((()=>Promise.resolve(!0)))}apply(e,t){return this.listApp({runAt:e,enabled:!0}).then((e=>{const i=e.filter((e=>!!(0,Y.b0)(e.device)||e.device===t));if(i.length<=0)return Promise.resolve(!0);const a=[],r=[];(0,K.A)(i,(e=>{e.main?r.push(e):a.push(e)}));const o=[];return a.length>0&&o.push(new Promise(((e,t)=>{const i=a.map((e=>e.id));this.load(i).then((a=>{a?this.run(i).then(e).catch(t):e(!0)}))}))),r.length>0&&o.push(new Promise(((e,t)=>{const i=r.map((e=>e.id));ie(r.map((e=>e.main)).join(";"),i.join(","))?this.run(i).then(e).catch(t):e(!1)}))),(o.length>0?Promise.all(o):Promise.resolve([!0])).then((e=>{let t=!0;return Array.isArray(e)&&e.length>0&&(0,K.A)(e,(e=>{if(!e)return t=!1,!0})),Promise.resolve(t)}))}))}boostrap(e,t){this._getApi=e,Array.isArray(t)&&t.forEach((e=>{this.presets.push(e)}))}}var Ce=i(176),Ee=i(569);var Te=i(218);class Ve extends $e{timers;cache;user;access_token;colorScheme;device={browser:we(),...ve()};i18n;constructor(){super(),this.timers={},this.access_token="",this.colorScheme={value:""},this.cache={parse:{node:null}},this.user={uid:"0",roles:[],is_logged_in:!1},this.i18n={lang:"en",data:{}},this.syncUser(),this.language(),function(e){if(!window.matchMedia)return void(e&&e());const t=window.matchMedia("(prefers-color-scheme: dark)");e&&e(t.matches?"dark":"light"),t.addEventListener("change",(t=>{e&&e(t.matches?"dark":"light")}))}((e=>{this.store("get","night").then((t=>{(0,Y.Lm)(t)&&t?(this.colorScheme.value=e||"",this.fire("color_scheme",e)):(this.colorScheme.value="",this.fire("color_scheme"))}))}))}language(){return this.store("get","common").then(((e={})=>{const t=e.lang&&"default"!==e.lang?e.lang:null,i=t&&(0,Y.Kg)(t)?t:"zh-CN";let a="";const r=["en","ja","ko","th","zh-CN","zh-TW"];if(r.includes(i))a=i;else{const e=i.split("-").shift()||"";a=r.includes(e)?e:"en"}return this.i18n.lang=a,this.listApp().then((e=>((0,K.A)(e,(e=>{e.i18n&&e.i18n[a]&&(0,K.A)(e.i18n[a],((t,i)=>{this.i18n.data[`${e.id}__${i}`]=t}))})),Promise.resolve(a))))}))}syncUser(e){return((0,Y.Gv)(e)?this.store("set","user",(0,Ce.l)({access_token:this.access_token,...e})).then((()=>Promise.resolve({access_token:this.access_token,...e}))):this.store("get","user").then((e=>{if(e)return Promise.resolve((0,Ce.D)(e)||{});const t={uid:(0,Ee.A)(),roles:[]};return this.store("set","user",(0,Ce.l)(t)).then((()=>Promise.resolve(t)))}))).then((e=>((0,K.A)(e,((e,t)=>{"access_token"!==t&&(this.user[t]=e)})),e.access_token?(this.user.is_logged_in=!0,this.access_token=e.access_token):(Object.keys(this.user).forEach((e=>{!["uid","roles"].includes(e)&&this.user[e]&&delete this.user[e]})),this.user.is_logged_in=!1,this.access_token=""),Array.isArray(this.user.roles)||(this.user.roles=[]),this.user&&this.user.access_token&&(0,te.A)("access_token leakage"),Promise.resolve(this.user))))}apply(e){const t=this.applyFilter(`${e}_abort`,!1);return(0,Y.Lm)(t)&&t?Promise.resolve(!1):super.apply(e,this.device.phone?"phone":"pc")}_fetch(t,i={}){i.url=t.startsWith("http")||function(e=location.href){return e.startsWith("chrome")||e.startsWith("edge")||e.startsWith("opera")||e.startsWith("extension")||e.startsWith("vivaldi")||e.startsWith("whale")||e.startsWith("ms-browser")||e.startsWith("moz-extension")||e.startsWith("safari-web-extension")}(t)?t:(0,e.A)(`api/${t}`);const a=i.url.startsWith(Z.pc),r=i.data;r&&(delete i.data,Object.keys(r).length>0&&(i.body=(0,Te.A)(r)),i.method||(i.method="POST"));const o=i.query;if(o){if(delete i.query,Object.keys(o).length>0){const e=[];(0,K.A)(o,((t,i)=>{e.push(`${i}=${encodeURIComponent(t)}`)})),i.url=`${i.url}${i.url.indexOf("?")>=0?"&":"?"}${e.join("&")}`}i.method||(i.method="GET")}return i.headers||(i.headers={"Content-Type":"application/json"}),a&&(i.headers["X-Circle-Type"]=Z.NW,i.headers["X-Circle-App"]="reader",i.headers["X-Circle-Version"]=Z.rE,i.headers["X-Circle-Lang"]=this.i18n.lang,this.access_token&&(i.headers["X-Circle-Token"]=`${this.access_token}*&~!${this.user.uid}`)),new Promise(((e,t)=>{this.send("fetch",i,((i,r)=>{i?t({owner:a,error:i}):e({owner:a,data:r})}))}))}fetch(e,t={}){if(Array.isArray(e))return Promise.all(e.filter((e=>e.length>0)).map((e=>this._fetch(e,t).then((({data:t})=>Promise.resolve({url:e,data:t}))).catch((({error:t})=>Promise.resolve({url:e,error:t}))))));if(e.length<=0)return Promise.reject("url is empty");const i=t.silence;return i&&delete t.silence,this._fetch(e,t).then((({owner:t,data:i})=>{if(t){if(e.startsWith("circle")||e.startsWith("expire")||!Array.isArray(i.roles)||(0,Y.b0)(i.data))return(0,Y.Gv)(i)&&!(0,Y.b0)(i.data)?Promise.resolve(i.data):Promise.resolve(i);{const e=this.user.roles.filter((e=>!i.roles.includes(e)));if(e.length>0){const t={...this.user,roles:this.user.roles.filter((t=>!e.includes(t)))};e.forEach((e=>{t[e]=0})),this.fire("user_refresh",t);return e.filter((e=>["member","premium"].includes(e))).length>=2?Promise.reject({error:this.i18n.data.setting__expired}):Promise.resolve(i.data)}{const e=i.roles.filter((e=>!this.user.roles.includes(e)));return e.length>0?(e.forEach((e=>{this.user.roles.push(e)})),this._fetch("expire/get",{query:{roles:e.join(",")}}).then((e=>(this.fire("user_refresh",{...this.user,...(0,Y.b0)(e.data.data)?e.data:e.data.data}),Promise.resolve(i.data))))):Promise.resolve(i.data)}}}return Promise.resolve(i)})).catch((({owner:e,error:t})=>{let a=t;return!i&&(0,Y.Kg)(t)&&("timeout"===t?(a=this.i18n.data.setting__timeout,this.timers.timeout&&clearTimeout(this.timers.timeout),this.timers.timeout=setTimeout((()=>{super.fire("system_warn",{key:"timeout",type:"error",message:this.i18n.data.setting__timeout})}),1e3)):a.indexOf("Failed to fetch")>=0&&(a=this.i18n.data.setting__login_error,e&&(this.timers.failed&&clearTimeout(this.timers.failed),this.timers.failed=setTimeout((()=>{super.fire("system_warn",{key:"failed",type:"error",message:this.i18n.data.setting__fetch_failed})}),1e3)))),Promise.reject(a)}))}send(e,t,i){const a=(0,Y.Tn)(t),r=a?{}:t,o=a?t:i;(0,Y.Tn)(o)&&this.fire(e,r,((e,t)=>{e?o(e):o(null,t)}))}action(e){return this.fire("action",e),Promise.resolve()}store(...e){return new Promise(((t,i)=>{const[a,...r]=e,o=r.pop();let l="option";Z.um.map((e=>e.table)).includes(o)?l=o:r.push(o);const s=(0,Y.Kg)(a)&&a?a:"get",n=s.startsWith("__"),c={skip:n,table:l,action:n?s.substring(2):s};if(["get","remove"].includes(s))c.value=r.shift();else if("set"===s){const[e,t]=r;if(!e)return void i("id must set");Array.isArray(e)||(0,Y.Gv)(e)&&e.id?c.value=e:(0,Y.b0)(t)||(c.value={id:e,value:t})}else if("list"===s){const[e,t]=r;c.query=e,c.pager=t}this.send("db",c,((e,a)=>{if(e)i(e);else{const e={get:"value"}[s];t(a&&!(0,Y.b0)(a[e])?a[e]:a)}}))})).catch((e=>{(0,Y.Kg)(e)&&this.fire("system_warn",{key:"store",type:"error",message:e})}))}download(e){const t=Array.isArray(e);return this.fetch("store/get",{query:{id:(Array.isArray(e)?e:[e]).join(",")}}).then((e=>{const i=[],a=[];return(0,K.A)(Array.isArray(e)?e:[e],(e=>{const t=(0,ke.A)(e);t?i.push(t):a.push(e.id)})),a.length>0?Promise.reject(this.i18n.data.setting__need_approved.replace(/\$.*?\$/,a.join(","))):t?Promise.resolve(i):Promise.resolve(i[0])}))}loader(e){const t=Array.isArray(e)?e:[e];return this.timers.loader&&clearTimeout(this.timers.loader),this.timers.loader=setTimeout((()=>{this.fire("loading",!0)}),1e3),Promise.all(t.map((e=>this.fetch(Z.Yz?`http://localhost:8080/widget/${e}.js`:`https://app.circlereader.com/api/modules/${e}.js?v=${Z.rE}`,{format:"text"})))).then((e=>Promise.resolve(ie(e.join(";"),t.join(","))))).finally((()=>{this.timers.loader&&clearTimeout(this.timers.loader),this.fire("loading",!1)}))}enable(e){return super.enable(e).then((t=>t?super.getApp(e).then((e=>{const t=Array.isArray(e)?e:[e];(0,K.A)(t,(e=>{e.settings&&Object.keys(e.settings).forEach((t=>{["option","display"].includes(t)||(["menu","keys"].includes(t)?Array.isArray(e.settings[t])&&(0,K.A)(e.settings[t],(i=>{(0,Y.Gv)(i.defaultValue)&&super.fire(`${t}_option`,{...i.defaultValue,label:ae(this,i.label,e.id)},i.id)})):super.fire(`${t}_option`))}))}));const i=t.filter((e=>!((0,Y.b0)(e.runAt)||!this.device.phone&&(0,Y.Kg)(e.runAt)&&e.runAt?.startsWith("mobile"))));if(i.length<=0)return Promise.resolve(!0);const a=i.filter((e=>!super.used(e.id)));return(a.length>0?super.load(a):Promise.resolve(!0)).then((e=>e?super.run(i).then((e=>{const t=Array.isArray(e)?e:[e];return(0,K.A)(t,(e=>{e.factory&&e.plugin&&((0,Y.Tn)(e.factory.enable)?e.factory.enable(X(e.plugin,this)):setTimeout((()=>{super.fire(`${e.plugin.id}_enabled`)}),100))})),Promise.resolve(!0)})):Promise.resolve(!1)))})):Promise.resolve(!1)))}disable(e){return super.getApp(e).then((t=>{const i=Array.isArray(t)?t:[t];return Promise.all(i.map((e=>{if(!(0,Y.b0)(e.runAt)){if(!this.device.phone&&(0,Y.Kg)(e.runAt)&&e.runAt?.startsWith("mobile"))return Promise.resolve(!0);const t=super.runtime(e.id);return t&&t.factory&&((0,Y.Tn)(t.factory.disable)?t.factory.disable(X(e,this)):super.fire(`${e.id}_disabled`)),Promise.resolve(!0)}const t=super.runtime(e.id);return t&&t.factory&&((0,Y.Tn)(t.factory.disable)?t.factory.disable(X(e,this)):super.fire(`${e.id}_disabled`)),Promise.resolve(!0)}))).then((e=>{let t=!0;return Array.isArray(e)&&e.length>0&&(0,K.A)(e,(e=>{if(!e)return t=!1,!0})),Promise.resolve(t)})).then((t=>t?super.disable(e).then((e=>e?((0,K.A)(i,(e=>{e.settings&&Object.keys(e.settings).forEach((t=>{["option","display"].includes(t)||(["menu","keys"].includes(t)?Array.isArray(e.settings[t])&&(0,K.A)(e.settings[t],(i=>{(0,Y.Gv)(i.defaultValue)&&super.fire(`${t}_option`,{...i.defaultValue,label:ae(this,i.label,e.id),checked:!1},i.id)})):super.fire(`${t}_option`))}))})),Promise.resolve(!0)):Promise.resolve(e))):Promise.resolve(!1)))}))}install(e,t){return super.install(e,t).then((t=>t?super.getApp(e).then((t=>{const i=Array.isArray(t)?t:[t];return(0,K.A)(i,(e=>{e.i18n&&e.i18n[this.i18n.lang]&&(0,K.A)(e.i18n[this.i18n.lang],((t,i)=>{this.i18n.data[`${e.id}__${i}`]=t}))})),this.enable(e)})):Promise.resolve(!1)))}uninstall(e){return super.uninstall(e).then((t=>((0,K.A)((Array.isArray(e),e),(e=>{const t=(0,Y.Kg)(e)?e:e.id;(0,K.A)(this.i18n.data,((e,i)=>{i.startsWith(`${t}__`)&&delete this.i18n.data[`${t}__${i}`]}))})),Promise.resolve(t))))}dynamicRun(e){const t=[],i=[],a=Array.isArray(e);return(0,K.A)(a?e:[e],(e=>{(0,Y.Kg)(e)?t.push(e):i.push(e)})),(t.length>0?this.download(t):Promise.resolve(i)).then((e=>{const t=(Array.isArray(e)?e:[e]).filter((e=>e.type&&["style","theme","config","scene"].includes(e.type)));if(t.length<=0)return Promise.resolve(!1);const i=[],a={};return(0,K.A)(t,(e=>{Array.isArray(e.settings)&&e.settings.length>0&&(0,K.A)(e.settings,((e,t)=>{a[t]=e})),(0,Y.Kg)(e.main)&&e.main.length>0&&i.push(e.main)})),i.length>0&&!ie(i.join(";"))?Promise.resolve(!1):Object.keys(a).length>0?new Promise((e=>{this.send("import",{action:"keep",value:{option:a}},(t=>{e(!t)}))})):Promise.resolve(!0)}))}}const Me=JSON.parse('[{"id":"tour","type":"plugin","version":"1.0.0","title":"__title__","core":true,"enabled":true,"description":"__description__","dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","i18n":{"en":{"title":"Getting Started","description":"First-time installation guide","protocol_start":"Welcome to Circle Reader Assistant. We strive to provide you with an excellent user experience. Before using, please carefully read and agree to our","protocol_end":" to understand your user rights and how we handle your data.","protocol_and":" and ","agreement":"Terms of Service","privacy":"Privacy Policy","protocol_agree":"Agree & Continue","protocol_disagree":"Disagree & Exit","hello_stranger":"Hello stranger~","welcome_or":" or ","welcome_support":" to support and encourage me.","welcome_thx":"I am Ranhe, and I\'m glad to meet you. Thank you for trying out my small software.","welcome_noise":"In this era of information explosion, there is endless information from paper media to electronic media to the Internet; how to extract useful content from it becomes not so easy, all kinds of advertisements or pop-ups and other noises are trying to distract us, trying to take up our little time.","welcome_work":"Circle Reader Assistant helps you read better; it focuses on privacy and security (all data stored offline), with intelligent and powerful features (proprietary parsing and layout engine); providing a more comfortable, easier, and safer reading experience. I know the road ahead is long, but I will do my best to make it better.","welcome_upgrade":"If you appreciate my work, consider upgrading to a","welcome_vip":"Premium Account","reward":"Support","in_mobile_warn":"Please note that some features of Circle Reader Assistant may not work properly on mobile devices due to lack of underlying support","switch_lang":"Language changes take effect after page refresh","pin":"Pin Extension","config":"Import Settings","subscribe":"Subscribe & Support","easy_use_title":"To make the extension easier to access, follow these steps to keep it pinned","easy_use_profile":"1. Click the puzzle piece icon next to your profile picture.","easy_use_find":"2. Find Circle Reader Assistant in the dropdown menu.","easy_use_pin":"3. Click the pin icon until it turns blue.","prev":"Previous","next":"Next","ok_to_read":"Happy Reading!","en":"English","zh_cn":"简体中文","zh_tw":"繁體中文","ja":"日本語","ko":"한국어","th":"ภาษาไทย","continue":"Settings imported, continuing...","upload":"Click to select settings","to_continue":"You can also re-import later in the Account section of the Preferences page","to_upload":"Existing users can import old version settings here, new users please continue","config_to_old":"Cannot import settings from older versions, recommend continuing with a fresh installation","tour_done":"Initialization complete, refreshing page to apply new settings","custom":" Custom Function"},"ja":{"title":"ツアーガイド","description":"機能の使い方を学ぶ","protocol_start":"Circle リーディングアシスタントへようこそ。より優れたユーザー体験を提供するよう努めています。使用前に、当社の","protocol_end":"をよくお読みいただき、同意してください。ユーザーの権利とデータの取り扱いについて理解できます。","protocol_and":"および","agreement":"利用規約","privacy":"プライバシーポリシー","protocol_agree":"同意して続ける","protocol_disagree":"同意せずに終了","hello_stranger":"こんにちは、見知らぬ人~","welcome_or":"または","welcome_support":"でサポートと励ましをお願いします。","welcome_thx":"染河と申します。お会いできて嬉しいです。私のソフトウェアをお試しいただき、ありがとうございます。","welcome_noise":"この情報爆発の時代には、紙媒体から電子媒体、インターネットに至るまで無限の情報が存在しているどのようにして私たちに役立つ内容を引き出すのは容易ではなく、様々な広告やポップアップなどの騒音が私たちの注意をそらし、私たちを占有しようとしているそれはあまり時間がない。","welcome_work":"Circle リーディングアシスタントは、より良い読書体験を提供することを目指しています。プライバシーとセキュリティを重視し(すべてのデータはオフライン保存)、インテリジェントで強力な機能(独自開発の解析・レイアウトエンジン)を提供し、より快適で、リラックスした、安全な読書体験を実現します。まだまだ道のりは長いですが、最善を尽くして改善を続けます。","welcome_upgrade":"私の活動を評価していただける場合は、","welcome_vip":"プレミアムアカウント","reward":"寄付","in_mobile_warn":"モバイルデバイスでは基盤となるサポートが不足しているため、Circle リーディングアシスタントの一部機能が正常に動作しない場合があります","switch_lang":"言語を切り替えた後、ページを更新すると反映されます","pin":"拡張機能を固定","config":"設定をインポート","subscribe":"サブスクリプションとサポート","easy_use_title":"拡張機能へのアクセスを容易にするため、以下の手順で固定してください","easy_use_profile":"1. プロフィールアバターの横にあるパズルピースアイコンをクリックします。","easy_use_find":"2. ドロップダウンメニューで Circle リーディングアシスタントを見つけます。","easy_use_pin":"3. ピンアイコンをクリックして青色になるまで固定します。","prev":"前へ","next":"次へ","ok_to_read":"読書をお楽しみください","en":"English","zh_cn":"简体中文","zh_tw":"繁體中文","ja":"日本語","ko":"한국어","th":"ภาษาไทย","continue":"設定がアップロードされました。続行してください...","upload":"クリックして設定を選択","to_continue":"後で設定ページのアカウントセクションから再インポートすることもできます","to_upload":"既存ユーザーはここで古い設定をインポートできます。新規ユーザーは続行してください","config_to_old":"古いバージョンの設定はインポートできません。新規インストールを続行することをお勧めします","tour_done":"初期化が完了しました。新しい設定を適用するためにページを更新します","custom":"カスタム機能"},"ko":{"title":"투어 가이드","description":"기능 사용법 학습","protocol_start":"Circle 읽기 도우미에 오신 것을 환영합니다. 더 나은 사용자 경험을 제공하기 위해 노력하겠습니다. 사용하기 전에 당사의","protocol_end":"을(를) 자세히 읽고 동의해 주시기 바랍니다. 사용자 권리와 데이터 처리 방법을 이해할 수 있습니다.","protocol_and":"및","agreement":"이용약관","privacy":"개인정보 처리방침","protocol_agree":"동의하고 계속하기","protocol_disagree":"동의하지 않고 종료","welcome_or":"또는","welcome_support":"으로 저를 지원하고 격려해 주세요.","welcome_thx":"안녕하세요, 저는 염하입니다. 만나서 반갑습니다. 제가 개발한 소프트웨어를 시험해 주셔서 감사합니다.","welcome_work":"Circle 읽기 도우미는 더 나은 독서 경험을 제공하기 위해 노력합니다. 개인정보와 보안을 중시하며(모든 데이터는 오프라인 저장), 지능적이고 강력한 기능(자체 개발 파싱 및 레이아웃 엔진)을 제공하여 더 편안하고, 여유롭고, 안전한 독서 경험을 제공합니다. 앞으로의 길이 아직 멀다는 것을 잘 알고 있지만, 최선을 다해 더 나아지도록 하겠습니다.","welcome_upgrade":"제 작업을 인정해 주신다면,","welcome_vip":"프리미엄 계정","reward":"후원","in_mobile_warn":"모바일 기기에서는 기본 지원이 부족하여 Circle 읽기 도우미의 일부 기능이 정상적으로 작동하지 않을 수 있습니다","switch_lang":"언어를 변경한 후 페이지를 새로고침하면 적용됩니다","pin":"확장 프로그램 고정","config":"설정 가져오기","subscribe":"구독 및 지원","easy_use_title":"확장 프로그램에 더 쉽게 접근할 수 있도록 다음 단계를 따라 고정해 주세요","easy_use_profile":"1. 프로필 아바타 옆의 퍼즐 조각 아이콘을 클릭합니다.","easy_use_find":"2. 드롭다운 메뉴에서 Circle 읽기 도우미를 찾습니다.","easy_use_pin":"3. 핀 아이콘을 클릭하여 파란색이 될 때까지 고정합니다.","prev":"이전","next":"다음","ok_to_read":"즐거운 독서 되세요","en":"English","zh_cn":"简体中文","zh_tw":"繁體中文","ja":"日本語","ko":"한국어","th":"ภาษาไทย","continue":"설정이 업로드되었습니다. 계속 진행해 주세요...","upload":"클릭하여 설정 선택","to_continue":"나중에 설정 페이지의 계정 섹션에서 다시 가져올 수도 있습니다","to_upload":"기존 사용자는 여기서 이전 설정을 가져올 수 있습니다. 새 사용자는 계속 진행해 주세요","config_to_old":"너무 오래된 버전의 설정은 가져올 수 없습니다. 새로 설치하는 것을 권장합니다","tour_done":"초기화가 완료되었습니다. 새 설정을 적용하기 위해 페이지를 새로고침합니다","custom":"맞춤 기능"},"th":{"title":"ไกด์ทัวร์","description":"เรียนรู้วิธีการใช้งานฟีเจอร์","protocol_start":"ยินดีต้อนรับสู่ Circle Reader เรามุ่งมั่นที่จะมอบประสบการณ์การใช้งานที่ดีที่สุดให้กับคุณ ก่อนใช้งาน กรุณาอ่านและยอมรับ","protocol_end":"ของเรา เพื่อทำความเข้าใจสิทธิ์ผู้ใช้และวิธีการจัดการข้อมูลของคุณ","protocol_and":"และ","agreement":"ข้อตกลงการใช้งาน","privacy":"นโยบายความเป็นส่วนตัว","protocol_agree":"ยอมรับและดำเนินการต่อ","protocol_disagree":"ไม่ยอมรับและออก","hello_stranger":"สวัสดีคนแปลกหน้า ~","welcome_or":"หรือ","welcome_support":"เพื่อสนับสนุนและให้กำลังใจผม","welcome_thx":"สวัสดีครับ ผมชื่อเหยียนเหอ ยินดีที่ได้รู้จักคุณ ขอบคุณที่ทดลองใช้ซอฟต์แวร์ที่ผมพัฒนา","welcome_noise":"ในยุคของการระเบิดของข้อมูลนี้ มีข้อมูลไม่รู้จบตั้งแต่สื่อกระดาษไปจนถึงสื่ออิเล็กทรอนิกส์ไปจนถึงอินเทอร์เน็ต วิธีการซึมซับเนื้อหาที่เป็นประโยชน์กับเรานั้นกลายเป็นเรื่องง่ายน้อยลง โฆษณาทุกประเภท หรือป๊อปอัป และเสียงอื่นๆ กำลังพยายามเบี่ยงเบนความสนใจของเรา พยายามครอบครองเรางั้นก็มีเวลาไม่มาก","welcome_work":"Circle Reader มุ่งมั่นที่จะมอบประสบการณ์การอ่านที่ดีขึ้น โดยให้ความสำคัญกับความเป็นส่วนตัวและความปลอดภัย (ข้อมูลทั้งหมดถูกเก็บแบบออฟไลน์) มีฟีเจอร์ที่ชาญฉลาดและทรงพลัง (เครื่องมือวิเคราะห์และจัดวางเลย์เอาท์ที่พัฒนาขึ้นเอง) มอบประสบการณ์การอ่านที่สะดวกสบาย ผ่อนคลาย และปลอดภัยมากขึ้น ผมรู้ดีว่ายังมีหนทางอีกยาวไกล แต่ผมจะทำทุกอย่างเพื่อให้ดีขึ้น","welcome_upgrade":"หากคุณชื่นชมผลงานของผม พิจารณาอัพเกรดเป็น","welcome_vip":"บัญชีพรีเมียม","reward":"บริจาค","in_mobile_warn":"โปรดทราบว่า Circle Reader อาจไม่สามารถทำงานได้อย่างถูกต้องบนอุปกรณ์มือถือเนื่องจากขาดการสนับสนุนพื้นฐานที่จำเป็น","switch_lang":"การเปลี่ยนแปลงภาษาจะมีผลหลังจากรีเฟรชหน้า","pin":"ตรึงส่วนขยาย","config":"นำเข้าการตั้งค่า","subscribe":"สมัครสมาชิกและสนับสนุน","easy_use_title":"เพื่อให้เข้าถึงส่วนขยายได้ง่ายขึ้น กรุณาทำตามขั้นตอนต่อไปนี้เพื่อตรึงไว้","easy_use_profile":"1. คลิกที่ไอคอนชิ้นส่วนจิ๊กซอว์ข้างรูปโปรไฟล์ของคุณ","easy_use_find":"2. ค้นหา Circle Reader ในเมนูแบบเลื่อนลง","easy_use_pin":"3. คลิกที่ไอคอนหมุดจนกว่าจะเปลี่ยนเป็นสีน้ำเงิน","prev":"ก่อนหน้า","next":"ถัดไป","ok_to_read":"สนุกกับการอ่านนะครับ","en":"English","zh_cn":"简体中文","zh_tw":"繁體中文","ja":"日本語","ko":"한국어","th":"ภาษาไทย","continue":"อัปโหลดการตั้งค่าแล้ว กรุณาดำเนินการต่อ...","upload":"คลิกเพื่อเลือกการตั้งค่า","to_continue":"คุณสามารถนำเข้าใหม่ได้ภายหลังในส่วนบัญชีของหน้าตัวเลือก","to_upload":"ผู้ใช้ที่มีอยู่สามารถนำเข้าการตั้งค่าเก่าที่นี่ได้ ผู้ใช้ใหม่กรุณาดำเนินการต่อ","config_to_old":"ไม่สามารถนำเข้าการตั้งค่าจากเวอร์ชันเก่าเกินไปได้ แนะนำให้ดำเนินการติดตั้งใหม่","tour_done":"เริ่มต้นเสร็จสิ้น กำลังรีเฟรชหน้าเพื่อใช้การตั้งค่าใหม่","custom":"ฟังก์ชันที่กำหนดเอง"},"zh-CN":{"title":"使用指引","description":"首次安装出现的引导","protocol_start":"欢迎使用 Circle 阅读助手,我们将努力为你提供更优秀的用户体验。使用前,请认真阅读并同意我们的","protocol_end":",了解你的用户权益和相关使用数据的处理办法。","protocol_and":"和","agreement":"用户协议","privacy":"隐私政策","protocol_agree":"同意并继续","protocol_disagree":"不同意并退出","welcome_or":"或者","welcome_support":"来支持鼓励我。","welcome_thx":"我是染河,很高兴能够认识你,感谢试用我开发的小软件。","welcome_work":"Circle 阅读助手试图帮助你更好的阅读;它注重隐私和安全(数据全部离线保存),功能智能且强大(自研解析和排版引擎);提供更舒适、更轻松、更安全的阅读体验。我深知未来的道路还很长很长,但我会尽我最大能力做的更好。","welcome_upgrade":"如果你认可我的工作,欢迎升级为","welcome_vip":"高级帐户","reward":"打赏","in_mobile_warn":"请注意,由于移动设备缺乏相关的底层支持,Circle 阅读助手的某些功能可能无法在移动设备上正常运行","switch_lang":"切换语言后,刷新页面生效","pin":"固定扩展","config":"导入配置","subscribe":"订阅支持","easy_use_title":"为了使访问扩展更容易,请按照以下步骤让它保持固定状态","easy_use_profile":"1.单击个人资料头像旁边的拼块图标。","easy_use_find":"2.在下拉菜单中,找到 Circle 阅读助手。","easy_use_pin":"3.单击图钉图标直到它变成蓝色。","prev":"上一步","next":"下一步","ok_to_read":"尽情阅读吧","en":"English","zh_cn":"中文","zh_tw":"繁體","ja":"日本語","ko":"한국어","th":"ภาษาไทย","continue":"已上传配置,请继续...","upload":"点击选择配置","to_continue":"你也可以稍后在偏好设置页面的帐户区域重新导入","to_upload":"老用户可在此导入旧版配置文件,新用户请继续操作","config_to_old":"无法导入太低版本的配置,推荐继续以安装全新版本","tour_done":"初始化完成,即将刷新页面以应用新设置","custom":"定制功能"},"zh-TW":{"title":"使用指引","description":"學習功能使用方式","protocol_start":"歡迎使用 Circle 閱讀助手,我們將努力為你提供更優秀的使用者體驗。使用前,請認真閱讀並同意我們的","protocol_end":",了解你的使用者權益和相關使用資料的處理辦法。","protocol_and":"和","agreement":"使用者協議","privacy":"隱私權政策","protocol_agree":"同意並繼續","protocol_disagree":"不同意並退出","hello_stranger":"你好,陌生人~","welcome_or":"或者","welcome_support":"來支持鼓勵我。","welcome_thx":"我是染河,很高興能夠認識你,感謝試用我開發的小軟體。","welcome_noise":"在這個信息爆炸的時代,從紙質媒體到電子媒體,再到互聯網上都存在着無窮無盡的信息;如何在其中汲取到對我們有用的內容就變得不那麼容易,各種各樣的廣告或者彈窗等噪音都在試圖分散我們的注意力,妄圖能夠佔用我們那本就不多的時間。","welcome_work":"Circle 閱讀助手試圖幫助你更好的閱讀;它注重隱私和安全(資料全部離線保存),功能智慧且強大(自研解析和排版引擎);提供更舒適、更輕鬆、更安全的閱讀體驗。我深知未來的道路還很長很長,但我會盡我最大能力做的更好。","welcome_upgrade":"如果你認可我的工作,歡迎升級為","welcome_vip":"進階帳戶","reward":"打賞","in_mobile_warn":"請注意,由於行動裝置缺乏相關的底層支援,Circle 閱讀助手的某些功能可能無法在行動裝置上正常運作","switch_lang":"切換語言後,重新整理頁面生效","pin":"固定擴充功能","config":"匯入設定","subscribe":"訂閱支援","easy_use_title":"為了使存取擴充功能更容易,請按照以下步驟讓它保持固定狀態","easy_use_profile":"1. 按一下個人資料頭像旁邊的拼圖圖示。","easy_use_find":"2. 在下拉選單中,找到 Circle 閱讀助手。","easy_use_pin":"3. 按一下圖釘圖示直到它變成藍色。","prev":"上一步","next":"下一步","ok_to_read":"盡情閱讀吧","en":"English","zh_cn":"简体中文","zh_tw":"繁體中文","ja":"日本語","ko":"한국어","th":"ภาษาไทย","continue":"已上傳設定,請繼續...","upload":"按一下選擇設定","to_continue":"你也可以稍後在偏好設定頁面的帳戶區域重新匯入","to_upload":"老使用者可在此匯入舊版設定檔,新使用者請繼續操作","config_to_old":"無法匯入太低版本的設定,推薦繼續以安裝全新版本","tour_done":"初始化完成,即將重新整理頁面以套用新設定","custom":"定制功能"}}},{"id":"toolbar","type":"plugin","version":"1.0.0","title":"__title__","runAt":"render_done","enabled":true,"priority":20,"description":"__description__","dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"toolbar":{"drag":true,"label":"__title__","icon":"ToolOutlined","type":"icon_switch","tooltip":"__tooltip__"},"display":[{"id":"toolbar","priority":30,"label":"__title__","data":[{"min":0,"max":50,"unit":"px","priority":0,"id":"itemspace","defaultValue":10,"label":"__itemspace__"},{"min":0,"max":50,"unit":"px","priority":10,"id":"groupspace","defaultValue":10,"label":"__groupspace__"},{"access":"member","type":"switch","id":"autohide","priority":20,"defaultValue":false,"label":"__autohide__"}]}],"option":[{"id":"toolbar","label":"__title__","data":[{"id":"unfold","access":"member","label":"__unfold__","tooltip":"__unfold_tooltip__","defaultValue":false}]}]},"i18n":{"en":{"title":"Toolbar","description":"Floating button group displayed in the top-right corner of the page","tooltip":"Manage toolbar tools and customize colors by clicking icons","itemspace":"Toolbar Item Spacing","groupspace":"Toolbar Group Spacing","autohide":"Hide Toolbar","unfold":"Flat View","unfold_tooltip":"Show all items without grouping"},"ja":{"title":"ツールバー","description":"ページ右上に表示される浮動ボタングループ","tooltip":"ツールバーのツールを管理し、アイコンをクリックして色をカスタマイズできます","itemspace":"ツールバー項目間隔","groupspace":"ツールバーグループ間隔","autohide":"ツールバーを非表示","unfold":"フラット表示","unfold_tooltip":"グループ化せずにすべて展開"},"ko":{"title":"도구 모음","description":"페이지 오른쪽 상단에 표시되는 떠있는 버튼 그룹","tooltip":"도구 모음의 도구를 관리하고, 아이콘을 클릭하여 색상을 커스터마이징할 수 있습니다","itemspace":"도구 모음 항목 간격","groupspace":"도구 모음 그룹 간격","autohide":"도구 모음 숨기기","unfold":"평면화 표시","unfold_tooltip":"그룹화하지 않고 모두 펼치기"},"th":{"title":"แถบเครื่องมือ","description":"กลุ่มปุ่มที่แสดงอยู่ด้านบนขวาของหน้า","tooltip":"จัดการเครื่องมือในแถบเครื่องมือ คลิกที่ไอคอนเพื่อปรับแต่งสี","itemspace":"ระยะห่างระหว่างรายการในแถบเครื่องมือ","groupspace":"ระยะห่างระหว่างกลุ่มในแถบเครื่องมือ","autohide":"ซ่อนแถบเครื่องมือ","unfold":"แสดงแบบแบน","unfold_tooltip":"แสดงทั้งหมดโดยไม่จัดกลุ่ม"},"zh-CN":{"title":"工具栏","description":"显示在页面右上侧悬浮的按钮组","tooltip":"管理工具栏上的小工具,点击图标可以自定义颜色","itemspace":"工具栏项距","groupspace":"工具栏组距","autohide":"隐藏工具栏","unfold":"平铺展开","unfold_tooltip":"不分组展示,全部展开"},"zh-TW":{"title":"工具列","description":"顯示在頁面右上側的浮動按鈕群組","tooltip":"管理工具列上的工具,點擊圖示可以自訂顏色","itemspace":"工具間距","groupspace":"群組間距","autohide":"隱藏工具列","unfold":"平鋪展開","unfold_tooltip":"不分組展示,全部展開"}}},{"id":"sync","type":"plugin","version":"1.0.0","title":"__title__","priority":260,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"sync","label":"__sync__","defaultValue":{"value":"y c"}},{"id":"sync__pull","label":"__sync_pull__","access":"member","defaultValue":{"value":"y l"}},{"id":"sync__push","label":"__sync_push__","access":"member","defaultValue":{"value":"y h"}}],"menu":[{"id":"sync","label":"__sync__"},{"id":"sync__pull","label":"__sync_pull__","access":"member"},{"id":"sync__push","label":"__sync_push__","access":"member"}],"toolbar":[{"group":25,"id":"sync","label":"__sync__","defaultValue":{"checked":true,"value":"RetweetOutlined"}},{"group":25,"id":"sync__pull","label":"__sync_pull__","access":"member","defaultValue":{"value":"VerticalAlignBottomOutlined"}},{"group":25,"id":"sync__push","label":"__sync_push__","access":"member","defaultValue":{"value":"VerticalAlignTopOutlined"}}],"account":[{"priority":11,"type":"sync","label":"__title__","data":[{"id":"sync_auto","label":"__sync_auto__","access":"premium"},{"id":"sync_at","label":"__sync_at__"},{"id":"sync","label":"__sync__"},{"id":"sync__pull","label":"__sync_pull__","access":"member"},{"id":"sync__push","label":"__sync_push__","access":"member"}]}]},"i18n":{"en":{"title":"Data Sync","description":"Sync local data to cloud","sync":"Sync Data","sync_auto":"Auto Sync","sync_pull":"Pull Data","sync_push":"Push Data","sync_at":"Last synced at","sync_confirm":"Confirm sync?","pull_confirm":"Confirm pulling all configurations from cloud to overwrite local?","push_confirm":"Confirm pushing all configurations to cloud?","sync_done":"Sync completed, refresh to take effect","pull_done":"Configuration pulled, refresh to take effect","push_done":"All configurations pushed to cloud","busy":"Syncing in progress, please try again later","unnecessary":"Local configuration is up to date, no sync needed","empty_cloud":"No data found in cloud"},"ja":{"title":"データ同期","description":"ローカルデータをクラウドに同期","sync":"データ同期","sync_auto":"自動同期","sync_pull":"データ取得","sync_push":"データ送信","sync_at":"最終同期時刻","sync_confirm":"同期を確認しますか?","pull_confirm":"クラウドからすべての設定を取得してローカルを上書きしますか?","push_confirm":"すべての設定をクラウドに送信しますか?","sync_done":"同期が完了しました。更新して反映してください","pull_done":"設定を取得しました。更新して反映してください","push_done":"すべての設定をクラウドに送信しました","busy":"同期中です。後でもう一度お試しください","unnecessary":"ローカル設定は最新です。同期は不要です","empty_cloud":"クラウドにデータが見つかりません"},"ko":{"title":"데이터 동기화","description":"로컬 데이터를 클라우드에 동기화","sync":"데이터 동기화","sync_auto":"자동 동기화","sync_pull":"데이터 가져오기","sync_push":"데이터 보내기","sync_at":"마지막 동기화 시간","sync_confirm":"동기화를 확인하시겠습니까?","pull_confirm":"클라우드에서 모든 설정을 가져와 로컬을 덮어쓰시겠습니까?","push_confirm":"모든 설정을 클라우드로 보내시겠습니까?","sync_done":"동기화가 완료되었습니다. 새로고침하여 적용하세요","pull_done":"설정을 가져왔습니다. 새로고침하여 적용하세요","push_done":"모든 설정을 클라우드로 보냈습니다","busy":"동기화 중입니다. 나중에 다시 시도하세요","unnecessary":"로컬 설정이 최신입니다. 동기화가 필요하지 않습니다","empty_cloud":"클라우드에 데이터가 없습니다"},"th":{"title":"ซิงค์ข้อมูล","description":"ซิงค์ข้อมูลจากเครื่องไปยังคลาวด์","sync":"ซิงค์ข้อมูล","sync_auto":"ซิงค์อัตโนมัติ","sync_pull":"ดึงข้อมูล","sync_push":"ส่งข้อมูล","sync_at":"ซิงค์ล่าสุดเมื่อ","sync_confirm":"ยืนยันการซิงค์?","pull_confirm":"ยืนยันการดึงการตั้งค่าทั้งหมดจากคลาวด์เพื่อเขียนทับในเครื่อง?","push_confirm":"ยืนยันการส่งการตั้งค่าทั้งหมดไปยังคลาวด์?","sync_done":"ซิงค์เสร็จสิ้น รีเฟรชเพื่อให้มีผล","pull_done":"ดึงการตั้งค่าแล้ว รีเฟรชเพื่อให้มีผล","push_done":"ส่งการตั้งค่าทั้งหมดไปยังคลาวด์แล้ว","busy":"กำลังซิงค์ กรุณาลองใหม่อีกครั้ง","unnecessary":"การตั้งค่าในเครื่องเป็นเวอร์ชันล่าสุด ไม่จำเป็นต้องซิงค์","empty_cloud":"ไม่พบข้อมูลในคลาวด์"},"zh-CN":{"title":"数据同步","description":"同步本地数据到云端","sync":"同步数据","sync_auto":"自动同步","sync_pull":"拉取数据","sync_push":"推送数据","sync_at":"上次同步于","sync_confirm":"确认同步?","pull_confirm":"确认从云端拉取所有配置覆盖本地?","push_confirm":"确认推送所有配置到云端?","sync_done":"同步配置已完成,刷新生效","pull_done":"配置已拉取,刷新生效","push_done":"配置已全部推送到云端","busy":"正在同步,请稍候再试","unnecessary":"本地配置是最新的,无需同步","empty_cloud":"云端未发现任何数据"},"zh-TW":{"title":"資料同步","description":"同步本地資料到雲端","sync":"同步資料","sync_auto":"自動同步","sync_pull":"拉取資料","sync_push":"推送資料","sync_at":"上次同步於","sync_confirm":"確認同步?","pull_confirm":"確認從雲端拉取所有設定覆蓋本地?","push_confirm":"確認推送所有設定到雲端?","sync_done":"同步設定已完成,重新整理生效","pull_done":"設定已拉取,重新整理生效","push_done":"設定已全部推送到雲端","busy":"正在同步,請稍後再試","unnecessary":"本地設定是最新的,無需同步","empty_cloud":"雲端未發現任何資料"}}},{"id":"subscribe","type":"plugin","version":"1.0.0","title":"__title__","core":true,"enabled":true,"dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","i18n":{"en":{"title":"Upgrade Account","month":"Month","year":"Year","warn_premium":"This feature is currently only available for professional accounts","warn_button":"Details","free":"Free Account","free_desc":"Basic features are permanently free","premium":"Pro Account","premium_desc":"One-time purchase, no automatic renewal","member":"Premium Account","member_desc":"One-time purchase, lifetime access","buy":"Upgrade","upgrade":"Upgrade Membership","agree_license":"Payment indicates agreement to the Payment Agreement","scan_pay":"Scan to Pay","scan_pay_tooltip":"Open $pay$ to scan and pay ¥$data$","pay_done":"Please complete payment and click to verify","tips_pending":"Order requires manual review. Results will be notified via email","tips_success":"Thank you for your support! Premium benefits have been activated","pay_active":"Activate Benefits","wxpay":"WeChat Pay","alipay":"Alipay","paypal":"PayPal","pay_ok":"Paid","pay_cancel":"Continue Payment","pay_tooltip":"Please complete payment first","upgrade_by_code":"Upgrade with Activation Code","required":"Required","code":"Enter activation code","login_first":"Please sign in first","help":"Need help?","feature":"Features","feature_1":"Ad-free, distraction-free reading","feature_2":"Auto-switch styles and themes with system","feature_3":"Toolbar, shortcuts, and context menu","feature_4":"Find, remove, and edit content","feature_5":"Customize font colors","feature_6":"Customize link and selection colors","feature_7":"Customize title, background, and scrollbar colors","feature_8":"Customize font, size, line height, and other styles","feature_9":"Customize heading sizes and weights","feature_10":"Customize code line height and colors","feature_11":"Customize page and content margins","feature_12":"Customize display content (cover, author, etc.)","feature_13":"Disable auto-correction and original formatting","feature_14":"Remove footer information","feature_15":"Preserve article outline when printing","feature_16":"Remove branding when exporting","feature_17":"Custom CSS","feature_18":"Automatically sync configuration across devices","feature_19":"Customize annotation colors and styles","feature_20":"Batch update blacklist and whitelist","feature_21":"Drag and sort toolbar buttons","feature_22":"Auto fullscreen in reading mode","feature_23":"Auto-scroll and text-to-speech","feature_24":"Auto-start","feature_25":"Show paginated content on current page","feature_26":"Custom text filtering rules","feature_27":"Custom export templates","feature_28":"Copy to clipboard","feature_29":"Copy as HTML and Markdown","feature_30":"Print optimized content","feature_31":"Export as image (JPEG/PNG)","feature_32":"Export as plain text, EPUB, HTML, Markdown, and PDF","feature_33":"Export as Word (doc/docx)","feature_34":"Export annotations and thoughts with Markdown","feature_35":"Send to email","feature_36":"Split-column layout on large screens","feature_37":"Text translation and wiki lookup","feature_38":"Modify search engine for web search","feature_39":"Customize reading progress bar position","feature_40":"Save for later reading","feature_41":"Code highlighting, back to top, and auto-trace","backup":"Cloud backup (maximum number)","new_user_sale":"New user exclusive! 20% off for upgrading within 24 hours!","old_user_sale":"Limited-time offer! Price goes up soon!","d":"[days]","h":"[hours]","m":"[minutes]","s":"[seconds]"},"ja":{"title":"アカウントアップグレード","month":"月","year":"年","warn_premium":"この機能は現在、プロフェッショナルアカウントでのみ利用可能です","warn_button":"詳細","free":"無料アカウント","free_desc":"基本機能は永久無料","premium":"プロアカウント","premium_desc":"一度の購入で、期限切れ後も自動更新されません","member":"プレミアムアカウント","member_desc":"一度の購入で、永久に無料で利用可能","buy":"アップグレード","upgrade":"メンバーシップアップグレード","agree_license":"支払いは《支払い規約》への同意を意味します","scan_pay":"QRコードで支払い","scan_pay_tooltip":"$pay$ を開いてQRコードをスキャンし、¥ $data$ を支払ってください","pay_done":"支払い完了後、支払い結果の確認をクリックしてください","tips_pending":"注文は手動で確認され、処理結果はメールで通知されます","tips_success":"ご支援ありがとうございます!プレミアム特典が付与されました","pay_active":"特典を有効化","wxpay":"WeChat Pay","alipay":"Alipay","paypal":"PayPal","pay_ok":"支払い完了","pay_cancel":"支払いを続ける","pay_tooltip":"支払い完了後に操作してください","upgrade_by_code":"アクティベーションコードでアップグレード","required":"必須項目です","code":"アクティベーションコードを入力してください","login_first":"先にログインしてください","help":"お困りですか?","feature":"機能","feature_1":"広告なしで集中して読書","feature_2":"システムに合わせて自動的にスタイルとテーマを切り替え","feature_3":"ツールバー、ショートカットキー、右クリックメニュー","feature_4":"コンテンツの検索、削除、編集","feature_5":"フォントカスタマイズ","feature_6":"リンクや選択範囲などの色をカスタマイズ","feature_7":"見出し、背景、スクロールバーなどの色をカスタマイズ","feature_8":"フォント、フォントサイズ、行間などのスタイルをカスタマイズ","feature_9":"各レベルの見出しのサイズと太さをカスタマイズ","feature_10":"コードの行間と色をカスタマイズ","feature_11":"ページ内とページ外の余白をカスタマイズ","feature_12":"表示コンテンツのカスタマイズ(表紙や著者など)","feature_13":"自動修正と原文のフォーマットを無効化","feature_14":"フッター情報を削除","feature_15":"印刷時に記事のアウトラインを保持","feature_16":"エクスポート時にブランド表示を削除","feature_17":"CSSカスタマイズ","feature_18":"デバイス間で構成を自動的に同期する","feature_19":"注釈の色とスタイルをカスタマイズ","feature_20":"ブラックリストとホワイトリストを一括更新","feature_21":"ツールバーのボタンをドラッグ&ドロップで並び替え","feature_22":"読書モードで自動的に全画面表示","feature_23":"自動スクロールと音声読み上げ","feature_24":"自動起動","feature_25":"ページ内で分頁コンテンツを表示","feature_26":"テキストフィルターのルールをカスタマイズ","feature_27":"エクスポートコンテンツのテンプレートをカスタマイズ","feature_28":"クリップボードにコピー","feature_29":"HTMLやMarkdownなどにコピー","feature_30":"最適化されたコンテンツを印刷","feature_31":"画像としてエクスポート(JPEG/PNG)","feature_32":"プレーンテキスト、EPUB、HTML、Markdown、PDFなどにエクスポート","feature_33":"Word(doc/docx)としてエクスポート","feature_34":"注釈とアイデアをMarkdownと一緒にエクスポート","feature_35":"メールで送信","feature_36":"大画面でコンテンツを段組みレイアウト","feature_37":"テキスト翻訳とWiki検索","feature_38":"ウェブ検索で使用する検索エンジンを変更","feature_39":"読書進捗バーの表示位置をカスタマイズ","feature_40":"後で読むために保存","feature_41":"コードハイライト、トップに戻る、自動ソース追跡","backup":"クラウドバックアップ(最大数)","new_user_sale":"新規ユーザー限定!24時間限定でアカウントをアップグレードすると、20%割引!","old_user_sale":"期間限定!すぐに値上げします!","d":"日","h":"時","m":"分","s":"秒"},"ko":{"title":"계정 업그레이드","month":"월","year":"년","warn_premium":"이 기능은 현재 전문가 계정에서만 사용할 수 있습니다.","warn_button":"세부","free":"무료 계정","free_desc":"기본 기능은 영구 무료이며","premium":"프로 계정","premium_desc":"일회성 구매, 만료 후 자동 갱신되지 않음","member":"프리미엄 계정","member_desc":"일회성 구매, 영구 무료 이용 가능","buy":"업그레이드","upgrade":"멤버십 업그레이드","agree_license":"결제는 《결제 약관》 동의를 의미합니다","scan_pay":"QR코드로 결제","scan_pay_tooltip":"$pay$ 를 열어 QR코드를 스캔하고, ¥ $data$ 원을 결제하세요","pay_done":"결제 완료 후, 결제 결과 확인을 클릭하세요","tips_pending":"주문은 수동으로 확인되며, 처리 결과는 이메일로 알려드립니다","tips_success":"지원해 주셔서 감사합니다! 프리미엄 혜택이 지급되었습니다","pay_active":"혜택 활성화","wxpay":"위챗페이","alipay":"알리페이","paypal":"페이팔","pay_ok":"결제 완료","pay_cancel":"결제 계속하기","pay_tooltip":"결제 완료 후 진행하세요","upgrade_by_code":"활성화 코드로 업그레이드","required":"필수 항목입니다","code":"활성화 코드를 입력하세요","login_first":"먼저 로그인하세요","help":"문제가 있으신가요?","feature":"기능","feature_1":"광고 없이 집중해서 읽기","feature_2":"시스템에 맞춰 자동으로 스타일과 테마 변경","feature_3":"도구 모음, 단축키, 우클릭 메뉴","feature_4":"콘텐츠 검색, 삭제, 편집","feature_5":"글꼴 커스터마이징","feature_6":"링크와 선택 영역 등의 색상 커스터마이징","feature_7":"제목, 배경, 스크롤바 등의 색상 커스터마이징","feature_8":"글꼴, 글꼴 크기, 줄 간격 등의 스타일 커스터마이징","feature_9":"각 수준별 제목의 크기와 굵기 커스터마이징","feature_10":"코드 줄 간격과 색상 커스터마이징","feature_11":"페이지 내부와 외부 여백 커스터마이징","feature_12":"표시 콘텐츠 커스터마이징 (표지와 저자 등)","feature_13":"자동 수정과 원문 포맷팅 비활성화","feature_14":"푸터 정보 삭제","feature_15":"인쇄 시 문서 개요 유지","feature_16":"내보내기 시 브랜드 표시 제거","feature_17":"CSS 커스터마이징","feature_18":"여러 장치에서 구성을 자동으로 동기화","feature_19":"주석 색상과 스타일 커스터마이징","feature_20":"블랙리스트와 화이트리스트 일괄 업데이트","feature_21":"도구 모음의 버튼을 드래그 앤 드롭으로 정렬","feature_22":"읽기 모드에서 자동으로 전체 화면 표시","feature_23":"자동 스크롤과 음성 읽기","feature_24":"자동 시작","feature_25":"페이지 내에서 분할된 콘텐츠 표시","feature_26":"텍스트 필터 규칙 커스터마이징","feature_27":"내보내기 콘텐츠 템플릿 커스터마이징","feature_28":"클립보드에 복사","feature_29":"HTML과 Markdown 등으로 복사","feature_30":"최적화된 콘텐츠 인쇄","feature_31":"이미지로 내보내기 (JPEG/PNG)","feature_32":"일반 텍스트, EPUB, HTML, Markdown, PDF 등으로 내보내기","feature_33":"Word(doc/docx)로 내보내기","feature_34":"주석과 아이디어를 Markdown과 함께 내보내기","feature_35":"이메일로 보내기","feature_36":"대형 화면에서 콘텐츠를 다단 레이아웃으로 표시","feature_37":"텍스트 번역과 위키 검색","feature_38":"웹 검색에 사용하는 검색 엔진 변경","feature_39":"읽기 진행 막대 표시 위치 커스터마이징","feature_40":"나중에 읽기 위해 저장","feature_41":"코드 하이라이트, 맨 위로 돌아가기, 자동 소스 추적","backup":"클라우드 백업(최대 개수)","new_user_sale":"신규 사용자 전용! 24시간 한정으로 계정을 업그레이드하면 20% 할인!","old_user_sale":"한정 기간 할인! 곧 원래 가격으로 복귀!","d":"일","h":"시간","m":"분","s":"초"},"th":{"title":"อัปเกรดบัญชี","month":"เดือน","year":"ปี","warn_premium":"คุณสมบัติปัจจุบันมีให้เฉพาะบัญชีมืออาชีพเท่านั้น","warn_button":"รายละเอียด","free":"บัญชีฟรี","free_desc":"ฟีเจอร์พื้นฐานฟรีตลอดไป","premium":"บัญชี Pro","premium_desc":"ซื้อครั้งเดียว ไม่ต่ออายุอัตโนมัติหลังหมดอายุ","member":"บัญชี Premium","member_desc":"ซื้อครั้งเดียว ใช้งานฟรีตลอดไป","buy":"อัปเกรด","upgrade":"อัปเกรดสมาชิก","agree_license":"การชำระเงินหมายถึงการยอมรับ《ข้อกำหนดการชำระเงิน》","scan_pay":"ชำระด้วย QR Code","scan_pay_tooltip":"เปิด $pay$ เพื่อสแกน QR Code และชำระเงิน ¥ $data$ บาท","pay_done":"หลังจากชำระเงินเสร็จ กรุณาคลิกยืนยันผลการชำระเงิน","tips_pending":"คำสั่งซื้อจะได้รับการตรวจสอบด้วยตนเอง ผลการประมวลผลจะแจ้งทางอีเมล","tips_success":"ขอบคุณสำหรับการสนับสนุน! ได้รับสิทธิ์ Premium แล้ว","pay_active":"เปิดใช้งานสิทธิ์","wxpay":"WeChat Pay","alipay":"Alipay","paypal":"PayPal","pay_ok":"ชำระเงินเสร็จสิ้น","pay_cancel":"ดำเนินการชำระเงินต่อ","pay_tooltip":"ดำเนินการหลังจากชำระเงินเสร็จ","upgrade_by_code":"อัปเกรดด้วยรหัสเปิดใช้งาน","required":"จำเป็นต้องกรอก","code":"กรอกรหัสเปิดใช้งาน","login_first":"กรุณาเข้าสู่ระบบก่อน","help":"มีคำถาม?","feature":"ฟีเจอร์","feature_1":"อ่านโดยไม่มีโฆษณารบกวน","feature_2":"เปลี่ยนสไตล์และธีมอัตโนมัติตามระบบ","feature_3":"แถบเครื่องมือ, คีย์ลัด, เมนูคลิกขวา","feature_4":"ค้นหา, ลบ, แก้ไขเนื้อหา","feature_5":"ปรับแต่งฟอนต์","feature_6":"ปรับแต่งสีของลิงก์และพื้นที่ที่เลือก","feature_7":"ปรับแต่งสีของหัวข้อ, พื้นหลัง, แถบเลื่อน","feature_8":"ปรับแต่งสไตล์ของฟอนต์, ขนาดฟอนต์, ระยะห่างบรรทัด","feature_9":"ปรับแต่งขนาดและความหนาของหัวข้อแต่ละระดับ","feature_10":"ปรับแต่งระยะห่างบรรทัดและสีของโค้ด","feature_11":"ปรับแต่งระยะห่างภายในและภายนอกหน้า","feature_12":"ปรับแต่งเนื้อหาที่แสดง (ปกและผู้แต่ง)","feature_13":"ปิดการแก้ไขอัตโนมัติและการจัดรูปแบบต้นฉบับ","feature_14":"ลบข้อมูลส่วนท้าย","feature_15":"รักษาโครงสร้างเอกสารเมื่อพิมพ์","feature_16":"ลบโลโก้แบรนด์เมื่อส่งออก","feature_17":"ปรับแต่ง CSS","feature_18":"ซิงโครไนซ์การกำหนดค่าระหว่างอุปกรณ์ต่างๆ โดยอัตโนมัติ","feature_19":"ปรับแต่งสีและสไตล์ของคำอธิบาย","feature_20":"อัปเดตรายการดำและรายการขาวพร้อมกัน","feature_21":"จัดเรียงปุ่มในแถบเครื่องมือด้วยการลากและวาง","feature_22":"แสดงเต็มหน้าจออัตโนมัติในโหมดอ่าน","feature_23":"เลื่อนอัตโนมัติและการอ่านด้วยเสียง","feature_24":"เริ่มต้นอัตโนมัติ","feature_25":"แสดงเนื้อหาที่แบ่งในหน้า","feature_26":"ปรับแต่งกฎการกรองข้อความ","feature_27":"ปรับแต่งเทมเพลตเนื้อหาส่งออก","feature_28":"คัดลอกไปยังคลิปบอร์ด","feature_29":"คัดลอกเป็น HTML และ Markdown","feature_30":"พิมพ์เนื้อหาที่ปรับแต่งแล้ว","feature_31":"ส่งออกเป็นรูปภาพ (JPEG/PNG)","feature_32":"ส่งออกเป็นข้อความธรรมดา, EPUB, HTML, Markdown, PDF","feature_33":"ส่งออกเป็น Word(doc/docx)","feature_34":"ส่งออกคำอธิบายและไอเดียพร้อม Markdown","feature_35":"ส่งทางอีเมล","feature_36":"แสดงเนื้อหาในรูปแบบหลายคอลัมน์บนหน้าจอขนาดใหญ่","feature_37":"แปลข้อความและค้นหาวิกิพีเดีย","feature_38":"เปลี่ยนเครื่องมือค้นหาสำหรับการค้นหาออนไลน์","feature_39":"ปรับแต่งตำแหน่งแสดงแถบความคืบหน้าการอ่าน","feature_40":"บันทึกเพื่ออ่านภายหลัง","feature_41":"ไฮไลท์โค้ด, กลับขึ้นบน, ติดตามแหล่งที่มาอัตโนมัติ","backup":"การสำรองข้อมูลบนคลาวด์ (จำนวนสูงสุด)","new_user_sale":"สำหรับผู้ใช้ใหม่เท่านั้น! ลด 20% เมื่ออัปเกรดบัญชีภายใน 24 ชั่วโมง!","old_user_sale":"โปรโมชั่นมีจำกัด! ราคาจะขึ้นเร็วๆ นี้!","d":"วัน","h":"ชั่วโมง","m":"นาที","s":"วินาที"},"zh-CN":{"title":"升级帐户","month":"月","year":"年","warn_premium":"当前功能仅专业帐户可用","warn_button":"详情","free":"免费帐户","free_desc":"基础功能永久免费","premium":"专业账户","premium_desc":"单次购买,过期不自动扣费","member":"高级账户","member_desc":"单次购买,终身免费","buy":"升级","upgrade":"升级会员","agree_license":"支付则代表同意《支付协议》","scan_pay":"扫码支付","scan_pay_tooltip":"打开 $pay$ 扫一扫,支付 ¥ $data$ 元","pay_done":"请完成支付后,点击验证支付结果","tips_pending":"订单需人工审核,处理结果会以邮件通知方式告知","tips_success":"感谢支持!高级权益已下发","pay_active":"激活权益","wxpay":"微信","alipay":"支付宝","paypal":"PayPal","pay_ok":"已支付","pay_cancel":"继续支付","pay_tooltip":"请支付完成后操作","upgrade_by_code":"通过激活码升级","required":"不能为空","code":"请输入激活码","login_first":"请先登录(不可用)","help":"遇到问题?","feature":"功能","feature_1":"无干扰无广告的阅读","feature_2":"跟随系统自动切换样式和主题","feature_3":"工具栏、快捷键和右键菜单","feature_4":"查找、移除和编辑内容","feature_5":"自定义字体颜色","feature_6":"自定义链接和选区等颜色","feature_7":"自定义标题、背景和滚动条等颜色","feature_8":"自定义字体,字体大小,行高等样式","feature_9":"自定义各级标题的大小和粗细","feature_10":"自定义代码行高和颜色","feature_11":"自定义页内和页外边距","feature_12":"自定义显示内容(封面和作者等)","feature_13":"禁用自动修正和格式化原文","feature_14":"删除页脚信息","feature_15":"打印时保留文章大纲","feature_16":"导出时移除品牌标识","feature_17":"自定义 css","feature_18":"跨设备自动同步配置","feature_19":"自定义注释颜色和样式","feature_20":"批量更新黑白名单","feature_21":"拖拽和排序工具栏里的按钮","feature_22":"进入阅读模式自动全屏查看","feature_23":"自动滚动和大声朗读","feature_24":"自动启动","feature_25":"当页显示分页内容","feature_26":"自定义文本过滤的规则","feature_27":"自定义导出内容的模版","feature_28":"复制到剪切板","feature_29":"复制为 HTML 和 Markdown 等","feature_30":"打印经过优化处理后的内容","feature_31":"导出为图片(JPEG/PNG)","feature_32":"导出为纯文本、EPUB、HTML、Markdown 和 PDF 等","feature_33":"导出为 Word(doc/docx)","feature_34":"批注和想法随 Markdown 一起导出","feature_35":"发送到电子邮件","feature_36":"大屏幕下分栏布局内容","feature_37":"文本翻译和维基查找","feature_38":"修改全网搜索使用的搜索引擎","feature_39":"自定义阅读进度条显示的位置","feature_40":"收藏后稍候阅读","feature_41":"代码高亮、返回顶部和自动溯源","backup":"云端备份(最大数量)","new_user_sale":"新用户专享!限时24小时升级账户,立享八折优惠!","old_user_sale":"限时优惠!即将恢复原价!","d":"天","h":"时","m":"分","s":"秒"},"zh-TW":{"title":"升級帳戶","month":"月","year":"年","warn_premium":"目前功能僅限專業帳戶可用","warn_button":"詳情","free":"免費帳戶","free_desc":"基礎功能永久免費","premium":"專業帳戶","premium_desc":"單次購買,過期不自動扣費","member":"進階帳戶","member_desc":"單次購買,終身免費","buy":"升級","upgrade":"升級會員","agree_license":"支付則代表同意《支付協議》","scan_pay":"掃碼支付","scan_pay_tooltip":"打開 $pay$ 掃一掃,支付 ¥ $data$ 元","pay_done":"請完成支付後,點擊驗證支付結果","tips_pending":"訂單需手動審核,處理結果會以電子郵件通知告知","tips_success":"感謝支持!高級權益已下發","pay_active":"啟動權益","wxpay":"微信","alipay":"支付宝","paypal":"PayPal","pay_ok":"已支付","pay_cancel":"繼續支付","pay_tooltip":"請支付完成後操作","upgrade_by_code":"透過啟動碼升級","required":"不能為空","code":"請輸入啟動碼","login_first":"請先登入","help":"遇到問題?","feature":"功能","feature_1":"無幹擾無廣告的閱讀","feature_2":"跟隨系統自動切換樣式和主題","feature_3":"工具列、快速鍵和右鍵選單","feature_4":"尋找、移除和編輯內容","feature_5":"自訂字體顏色","feature_6":"自訂連結和選取範圍等顏色","feature_7":"自訂標題、背景和捲軸等顏色","feature_8":"自訂字體,字體大小,行高等樣式","feature_9":"自訂各級標題的大小和粗細","feature_10":"自訂程式碼行高和顏色","feature_11":"自訂頁內和頁外邊距","feature_12":"自訂顯示內容(封面和作者等)","feature_13":"停用自動修正和格式化原文","feature_14":"刪除頁尾訊息","feature_15":"列印時保留文章大綱","feature_16":"匯出時移除品牌標識","feature_17":"自訂 css","feature_18":"跨裝置自動同步配置","feature_19":"自訂註解顏色和样式","feature_20":"大量更新黑白名單","feature_21":"拖曳和排序工具列裡的按鈕","feature_22":"進入閱讀模式自動全螢幕查看","feature_23":"自動滾動和大聲朗讀","feature_24":"自動啟動","feature_25":"當頁顯示分頁內容","feature_26":"自訂文字過濾的規則","feature_27":"自訂導出內容的模版","feature_28":"複製到剪切板","feature_29":"複製為 HTML 和 Markdown 等","feature_30":"列印經過優化處理後的內容","feature_31":"導出為圖片(JPEG/PNG)","feature_32":"匯出為純文字、EPUB、HTML、Markdown 和 PDF 等","feature_33":"匯出為 Word(doc/docx)","feature_34":"批註和想法隨 Markdown 一起導出","feature_35":"傳送到電子郵件","feature_36":"大螢幕下分欄佈局內容","feature_37":"文字翻譯和維基查找","feature_38":"修改全網搜尋使用的搜尋引擎","feature_39":"自訂閱讀進度條顯示的位置","feature_40":"收藏後稍候閱讀","feature_41":"程式碼高亮、返回頂部和自動溯源","backup":"雲端備份(最大數量)","new_user_sale":"新用戶專屬!限時24小時升級帳戶,享八折優惠!","old_user_sale":"限時優惠!即將恢復原價!","d":"天","h":"時","m":"分","s":"秒"}}},{"id":"store","type":"plugin","version":"1.0.0","title":"__title__","core":true,"enabled":true,"priority":290,"description":"__description__","dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"store","label":"__title__","defaultValue":{"value":""}}],"menu":[{"id":"store","label":"__title__","defaultValue":{"action":true,"checked":true}}],"toolbar":[{"group":25,"id":"store","label":"__title__","defaultValue":{"checked":true,"value":"<svg viewBox=\\"0 0 1024 1024\\" focusable=\\"false\\" width=\\"1em\\" height=\\"1em\\" fill=\\"currentColor\\" aria-hidden=\\"true\\"><path d=\\"M511.8 241.8l18.2-31.4c11.2-19.6 36.2-26.2 55.8-15 19.6 11.2 26.2 36.2 15 55.8l-175 303h126.6c41 0 64 48.2 46.2 81.6H227.6c-22.6 0-40.8-18.2-40.8-40.8 0-22.6 18.2-40.8 40.8-40.8h104l133.2-230.8-41.6-72.2c-11.2-19.6-4.6-44.4 15-55.8 19.6-11.2 44.4-4.6 55.8 15l17.8 31.4z m-157.4 436l-39.2 68c-11.2 19.6-36.2 26.2-55.8 15-19.6-11.2-26.2-36.2-15-55.8l29.2-50.4c32.8-10.2 59.6-2.4 80.8 23.2z m337.8-123.4h106.2c22.6 0 40.8 18.2 40.8 40.8 0 22.6-18.2 40.8-40.8 40.8h-59l39.8 69c11.2 19.6 4.6 44.4-15 55.8-19.6 11.2-44.4 4.6-55.8-15-67-116.2-117.4-203.2-150.8-261.2-34.2-59-9.8-118.2 14.4-138.2 26.8 46 66.8 115.4 120.2 208zM512 16C238 16 16 238 16 512s222 496 496 496 496-222 496-496S786 16 512 16z m432 496c0 237.4-192.2 432-432 432-237.4 0-432-192.2-432-432 0-237.4 192.2-432 432-432 237.4 0 432 192.2 432 432z \\"></path></svg>"}}]},"i18n":{"en":{"title":"App Store","description":"Customize your reading assistant","ok":"OK","cancel":"Cancel","empty":"No data available","plugin":"Plugins","style":"Styles","theme":"Themes","config":"Configurations","scene":"Scenarios","apply":"Applications","install":"Installation","installed":"Installed","recommend":"Recommended","uninstall":"Uninstall","enable":"Enable","disable":"Disable","approve":"Review","sourcecode":"View Source Code","search_in":"Search in \\"$TITLE$\\"","sure_to_uninstall":"Sure to uninstall \\"$TITLE$\\"?","uninstall_error":"\\"$TITLE$\\" uninstall failed, please try again later","sure_to_disable":"Sure to disable \\"$TITLE$\\"?","format_must_be_json":"Plugin format must be JSON format","format_error":"Plugin format error, please check","install_success":"\\"$TITLE$\\" already installed","install_to_refresh":"Installation completed, refresh to take effect","install_error_to_check":"Installation failed, please check","click_to_install":"Click to Install","manual_upload":"Manually Upload \\"$TYPE$\\"","manual_install":"Manual Installation","url_error_to_check":"URL is invalid, please check!","install_from_local":"Install from Local File","install_from_url":"Install from URL","install_from_npm":"Install from NPM","only_json":"Only JSON files are supported","debug":"Automatic writing of development tools","only_pc":"Only available on PC","only_phone":"Only available on mobile devices","need_enable_plugin":"Need to enable the \\"$PLUGIN$\\" plugin","plugin_is_dependent":"Depended by plugin \\"$PLUGIN$\\", uninstallation prohibited","enable_plugin_first":"Please enable the \\"$PLUGIN$\\" plugin first","disable_plugin_first":"Please disable the \\"$PLUGIN$\\" plugin first"},"ja":{"title":"アプリケーション市場","description":"あなたの読書アシスタントをカスタマイズ","ok":"「わかりました」","cancel":"キャンセル","empty":"「データがありません」","plugin":"プラグイン","style":"スタイル","theme":"テーマ","config":"構成","scene":"「シーン」","apply":"アプリケーション","install":"インストール","installed":"インストール済み","recommend":"おすすめ","uninstall":"アンインストール","enable":"有効にする","disable":"無効にする","approve":"審査","sourcecode":"ソースコードを表示","search_in":"$TITLE$で検索","sure_to_uninstall":"$TITLE$をアンインストールすることを確認しましたか?","uninstall_error":"$TITLE$アンインストールに失敗しました、後で再試行してください","sure_to_disable":"$TITLE$を無効にしますか?","format_must_be_json":"プラグインの形式はJSON形式でなければなりません。","format_error":"プラグインの形式が間違っています、確認してください","install_success":"$TITLE$がインストールされました","install_to_refresh":"インストールが完了し、更新が有効になりました","install_error_to_check":"インストールに失敗しました、確認してください","click_to_install":"「インストールをクリック」","manual_upload":"手動でアップロード$TYPE$","manual_install":"手動でインストール","url_error_to_check":"「住所が違法です。確認してください!」","install_from_local":"ローカルファイルからインストール","install_from_url":"URLからインストール","install_from_npm":"NPMからインストール","only_json":"JSONファイルのみサポート","debug":"開発ツールの自動書き込み","only_pc":"PCでのみ利用可能","only_phone":"モバイルでのみ利用可能","need_enable_plugin":"$PLUGIN$プラグインを有効にする必要があります","plugin_is_dependent":"プラグイン$PLUGIN$に依存し、アンインストールを禁止","enable_plugin_first":"$PLUGIN$プラグインを有効にしてください","disable_plugin_first":"$PLUGIN$プラグインを無効にしてください"},"ko":{"title":"응용 시장","description":"읽기 도우미 사용자 정의","ok":"괜찮아.","cancel":"취소","empty":"사용할 수 있는 데이터가 없습니다.","plugin":"플러그인","style":"스타일.","theme":"테마.","config":"구성.","scene":"장면.","apply":"신청하세요.","install":"설치","installed":"설치","recommend":"추천합니다.","uninstall":"제거","enable":"활성화","disable":"금지.","approve":"리뷰.","sourcecode":"소스 코드를 봅니다.","search_in":"$TITLE$에서 검색하세요.","sure_to_uninstall":"$TITLE$를 제거하시겠습니까?","uninstall_error":"$TITLE$ 제거에 실패했습니다. 나중에 다시 시도하십시오.","sure_to_disable":"$TITLE$를 비활성화하시겠습니까?","format_must_be_json":"플러그인 형식은 JSON이어야 합니다.","format_error":"플러그인 형식 오류, 확인하십시오","install_success":"$TITLE$ 설치","install_to_refresh":"설치 완료, 새로 고침 적용","install_error_to_check":"설치에 실패했습니다. 확인하십시오.","click_to_install":"설치하려면 클릭하십시오.","manual_upload":"수동 업로드$TYPE$","manual_install":"수동 설치","url_error_to_check":"주소가 불법입니다. 확인해주세요!","install_from_local":"로컬 파일에서 설치","install_from_url":"URL에서 설치","install_from_npm":"NPM에서 설치","only_json":"JSON 파일만 지원됩니다.","debug":"개발 도구 자동 쓰기","only_pc":"PC에서만 사용 가능","only_phone":"모바일에서만 사용 가능","need_enable_plugin":"$PLUGIN$ 플러그인을 활성화해야 합니다.","plugin_is_dependent":"플러그인에 의존$PLUGIN$, 제거 비활성화","enable_plugin_first":"먼저 $PLUGIN$ 플러그인을 활성화하십시오.","disable_plugin_first":"먼저 $PLUGIN$ 플러그인을 비활성화하십시오."},"th":{"title":"ตลาดแอพ","description":"ปรับแต่งผู้ช่วยการอ่านของคุณ","ok":"โอเค","cancel":"ยกเลิก","empty":"ยังไม่มีข้อมูล","plugin":"ปลั๊กอิน","style":"สไตล์","theme":"ธีม","config":"การกำหนดค่า","scene":"ฉาก","apply":"แอปพลิเคชัน","install":"ติดตั้ง","installed":"ติดตั้งแล้ว","recommend":"แนะนำ","uninstall":"ถอนการติดตั้ง","enable":"เปิดใช้งาน","disable":"ปิดใช้งาน","approve":"ตรวจสอบ","sourcecode":"ดูซอร์สโค้ด","search_in":"ค้นหาใน$TITLE$","sure_to_uninstall":"แน่ใจว่าจะถอนการติดตั้ง $TITLE$?","uninstall_error":" $TITLE$ การถอนการติดตั้งล้มเหลว โปรดลองใหม่ภายหลัง","sure_to_disable":"แน่ใจว่าจะปิดใช้งาน $TITLE$?","format_must_be_json":"รูปแบบปลั๊กอินต้องเป็นรูปแบบ JSON","format_error":"รูปแบบปลั๊กอินไม่ถูกต้องโปรดตรวจสอบ","install_success":" $TITLE$ ติดตั้งแล้ว","install_to_refresh":"การติดตั้งเสร็จสมบูรณ์การรีเฟรชจะมีผล","install_error_to_check":"การติดตั้งล้มเหลว โปรดตรวจสอบ","click_to_install":"คลิกเพื่อติดตั้ง","manual_upload":"อัปโหลดด้วยตนเอง $TYPE$ ","manual_install":"ติดตั้งด้วยตนเอง","url_error_to_check":"ที่อยู่ไม่ถูกกฎหมายโปรดตรวจสอบ!","install_from_local":"ติดตั้งจากแฟ้มภายในเครื่อง","install_from_url":"ติดตั้งจาก URL","install_from_npm":"ติดตั้งจาก NPM","only_json":"รองรับเฉพาะแฟ้ม JSON เท่านั้น","debug":"เครื่องมือพัฒนาเขียนอัตโนมัติ","only_pc":"มีเฉพาะบนพีซีเท่านั้น","only_phone":"ใช้ได้บนมือถือเท่านั้น","need_enable_plugin":"ต้องเปิดใช้งานปลั๊กอิน $PLUGIN$ ","plugin_is_dependent":"ขึ้นอยู่กับปลั๊กอิน $PLUGIN$ ห้ามถอนการติดตั้ง","enable_plugin_first":"โปรดเปิดใช้งานปลั๊กอิน $PLUGIN$ ก่อน","disable_plugin_first":"โปรดปิดการใช้งานปลั๊กอิน $PLUGIN$ ก่อน"},"zh-CN":{"title":"应用市场","description":"自定义你的阅读助手","ok":"好的","cancel":"取消","empty":"暂无数据","plugin":"插件","style":"样式","theme":"主题","config":"配置","scene":"场景","apply":"应用","install":"安装","installed":"已安装","recommend":"推荐","uninstall":"卸载","enable":"启用","disable":"禁用","approve":"审核","sourcecode":"查看源代码","search_in":"在 $TITLE$ 中搜索","sure_to_uninstall":"确定卸载 $TITLE$?","uninstall_error":"$TITLE$ 卸载失败,请稍后再试","sure_to_disable":"确定禁用 $TITLE$?","format_must_be_json":"插件格式必须是 JSON 格式","format_error":"插件格式错误,请检查","install_success":"$TITLE$ 已安装","install_to_refresh":"安装完成,刷新生效","install_error_to_check":"安装失败,请检查","click_to_install":"点击安装","manual_upload":"手动上传 $TYPE$","manual_install":"手动安装","url_error_to_check":"地址不合法,请检查!","install_from_local":"从本地文件安装","install_from_url":"从 URL 安装","install_from_npm":"从 NPM 安装","only_json":"仅支持 JSON 文件","debug":"开发工具自动写入","only_pc":"仅电脑端可用","only_phone":"仅移动端可用","need_enable_plugin":"需要启用 $PLUGIN$ 插件","plugin_is_dependent":"被插件 $PLUGIN$ 依赖,禁止卸载","enable_plugin_first":"请先启用 $PLUGIN$ 插件","disable_plugin_first":"请先禁用 $PLUGIN$ 插件"},"zh-TW":{"title":"應用市場","description":"自定義你的閱讀體驗","ok":"好的","cancel":"取消","empty":"暫無數據","plugin":"插件","style":"樣式","theme":"主題","config":"配置","scene":"場景","apply":"應用","install":"安裝","installed":"已安裝","recommend":"推薦","uninstall":"卸載","enable":"啓用","disable":"禁用","approve":"審覈","sourcecode":"查看源代碼","search_in":"在 $TITLE$ 中搜索","sure_to_uninstall":"確定卸載 $TITLE$?","uninstall_error":"$TITLE$ 卸載失敗,請稍後再試","sure_to_disable":"確定禁用 $TITLE$?","format_must_be_json":"插件格式必須是 JSON 格式","format_error":"插件格式錯誤,請檢查","install_success":"$TITLE$ 已安裝","install_to_refresh":"安裝完成,刷新生效","install_error_to_check":"安裝失敗,請檢查","click_to_install":"點擊安裝","manual_upload":"手動上傳 $TYPE$","manual_install":"手動安裝","url_error_to_check":"地址不合法,請檢查!","install_from_local":"從本地文件安裝","install_from_url":"從 URL 安裝","install_from_npm":"從 NPM 安裝","only_json":"僅支持 JSON 文件","debug":"開發工具自動寫入","only_pc":"僅電腦端可用","only_phone":"僅行動端可用","need_enable_plugin":"需要啓用 $PLUGIN$ 插件","plugin_is_dependent":"被插件 $PLUGIN$ 依賴,禁止卸載","enable_plugin_first":"請先啓用 $PLUGIN$ 插件","disable_plugin_first":"請先禁用 $PLUGIN$ 插件"}}},{"id":"speak","type":"plugin","version":"1.0.0","title":"__title__","priority":60,"description":"__description__","dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"speak","access":"member","label":"__title__","defaultValue":{"value":"t s"}},{"id":"speak_toggle","label":"__toggle__","priority":125,"defaultValue":{"value":"t t"}}],"toolbar":[{"group":1,"id":"speak","access":"member","label":"__title__","tooltip":"__tooltip__","more":"docs/speak.html","defaultValue":{"checked":true,"value":"SoundOutlined"}}],"floatbox":[{"priority":59,"access":"member","id":"speak__here","label":"__from_here__","defaultValue":{"checked":true,"value":"PlaySquareOutlined"}},{"access":"member","id":"speak__part","label":"__title__","defaultValue":{"checked":true,"value":"SoundOutlined"}}]},"i18n":{"en":{"title":"Text-to-Speech","description":"Use browser\'s speech engine to read content aloud, free your eyes. Recommended to use Edge browser","from_here":"Start reading from here","toggle":"Start/Stop Reading","tooltip":"Only supports reading text","unsupport":"No speech engine found in your operating system or browser. Please try this feature in other mainstream browsers, Edge browser recommended","volume":"Volume","rate":"Speed","pitch":"Pitch","local":"Local","default":"Default","edge":"Use browser\'s built-in speech reading feature, recommended to use Edge browser for better effect."},"ja":{"title":"声に出して読む","description":"ブラウザの音声エンジンを呼び出して内容を読み上げ、両目を解放します。Edgeブラウザを推奨します。","from_here":"ここから読み上げます。","toggle":"読み上げの開始/停止","tooltip":"テキストの読み上げのみサポート","unsupport":"OSやブラウザに音声エンジンが見つかりませんでした。他の主流ブラウザでこの機能を試してください。Edgeブラウザをお勧めします。","volume":"ボリューム","rate":"スピード","pitch":"ピッチ","local":"ローカル","default":"デフォルト","edge":"ブラウザの音声読み上げ機能を使用し、より良い効果を得るためにEdgeブラウザを推奨します。"},"ko":{"title":"텍스트 읽기","description":"브라우저의 음성 엔진을 사용하여 내용을 소리 내어 읽어 눈을 쉬게 합니다. Edge 브라우저 사용 권장","from_here":"여기서부터 읽기 시작","toggle":"읽기 시작/중지","tooltip":"텍스트 읽기만 지원","unsupport":"운영 체제 또는 브라우저에서 음성 엔진을 찾을 수 없습니다. 다른 주요 브라우저에서 이 기능을 사용해 보세요. Edge 브라우저 권장","volume":"음량","rate":"속도","pitch":"음높이","local":"로컬","default":"기본값","edge":"브라우저의 음성 읽기 기능을 사용하며 더 나은 효과를 위해 Edge 브라우저 사용 권장"},"th":{"title":"อ่านออกเสียง","description":"ใช้เครื่องมืออ่านออกเสียงของเบราว์เซอร์เพื่ออ่านเนื้อหา ให้พักสายตา แนะนำให้ใช้เบราว์เซอร์ Edge","from_here":"เริ่มอ่านจากที่นี่","toggle":"เริ่ม/หยุดการอ่าน","tooltip":"รองรับการอ่านข้อความเท่านั้น","unsupport":"ไม่พบเครื่องมืออ่านออกเสียงในระบบปฏิบัติการหรือเบราว์เซอร์ กรุณาลองใช้ฟีเจอร์นี้ในเบราว์เซอร์หลักอื่นๆ แนะนำให้ใช้เบราว์เซอร์ Edge","volume":"ระดับเสียง","rate":"ความเร็ว","pitch":"ระดับเสียง","local":"ท้องถิ่น","default":"ค่าเริ่มต้น","edge":"ใช้เครื่องมืออ่านออกเสียงของเบราว์เซอร์ แนะนำให้ใช้เบราว์เซอร์ Edge เพื่อประสิทธิภาพที่ดีขึ้น"},"zh-CN":{"title":"大声朗读","description":"调用浏览器语音引擎朗读内容,释放双眼。推荐使用 Edge 浏览器","from_here":"从这里开始朗读","toggle":"开始/停止朗读","tooltip":"仅支持朗读文本","unsupport":"操作系统或浏览器未发现任何语音引擎,请在其他主流浏览器尝试使用该功能,推荐 Edge 浏览器","volume":"音量","rate":"速度","pitch":"音高","local":"本地","default":"默认","edge":"使用浏览器自带语音朗读功能,推荐Edge浏览器以获得更佳效果。"},"zh-TW":{"title":"文字轉語音","description":"使用瀏覽器的語音引擎來朗讀內容,讓眼睛休息。建議使用 Edge 瀏覽器","from_here":"從這裡開始朗讀","toggle":"開始/停止朗讀","tooltip":"僅支援朗讀文字","unsupport":"在您的作業系統或瀏覽器中找不到語音引擎。請在其他主流瀏覽器中嘗試此功能,建議使用 Edge 瀏覽器","volume":"音量","rate":"速度","pitch":"音高","local":"本地","default":"預設","edge":"使用瀏覽器內建的語音朗讀功能,建議使用 Edge 瀏覽器以獲得更佳效果。"}}},{"id":"setting","type":"plugin","version":"1.0.0","title":"__title__","core":true,"enabled":true,"priority":10,"description":"__description__","dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"setting","label":"__title__","defaultValue":{"checked":true,"value":"s t"}}],"menu":[{"id":"setting","label":"__title__","defaultValue":{"action":true,"checked":true}}],"toolbar":[{"group":0,"id":"setting","label":"__title__","defaultValue":{"checked":true,"value":"SettingOutlined"}}],"option":{"priority":999,"label":"__option__","icon":"ControlOutlined","data":[{"id":"common","priority":0,"label":"__common__","data":[{"id":"lang","label":"__lang__","defaultValue":"default","data":[{"label":"__default__","value":"default"},{"label":"__en__","value":"en"},{"label":"__zh_cn__","value":"zh-CN"},{"label":"__zh_tw__","value":"zh-TW"},{"label":"__ja__","value":"ja"},{"label":"__ko__","value":"ko"},{"label":"__th__","value":"th"}]},{"id":"slogan","access":["member"],"label":"__remove_slogan__","tooltip":"__remove_slogan_tooltip__","more":"docs/faq/slogan.html","defaultValue":false}]}]},"account":{"priority":0,"icon":"UserOutlined","label":"__account__","data":[{"priority":0,"type":"account","label":"__account__"},{"priority":5,"type":"export","label":"__sync_export__"},{"priority":10,"type":"import","label":"__sync_import__"},{"priority":20,"type":"reset","label":"__reset_all__"}]},"about":{"priority":1000,"label":"__about__","icon":"InfoCircleOutlined","data":[{"type":"card","label":"__follow__","tooltip":"__follow_msg__","data":[{"label":"__wechat__","img":"https://circlereader.com/sites/default/files/assets/wechat.png"},{"label":"__qq__","tooltip":"605710052","path":"https://qm.qq.com/cgi-bin/qm/qr?k=wseaRm8SdNiXCasA9RYwSbE_iMpblbqi&jump_from=webapi"}]},{"type":"card","label":"__support__","tooltip":"__support_msg__","data":[{"id":"donate","label":"__donate_coffee__"},{"id":"share","label":"__share_to_other__"}]},{"type":"vote","label":"__vote__","tooltip":"__vote_msg__","data":[{"id":"vote","type":"primary","label":"__to_vote__"},{"id":"feedback","label":"__to_feedback__"}]},{"type":"card","label":"__links__","data":[{"label":"__website__","path":""},{"label":"__usage__","path":"docs/intro.html"},{"label":"__agreement__","path":"docs/agreement.html"},{"label":"__privacy__","path":"docs/privacy.html"},{"label":"__faq__","path":"docs/faq.html"},{"label":"__update__","path":"docs/changelog.html"},{"id":"feedback","label":"__feedback__"},{"label":"__download_latest__","path":"download"},{"id":"donate","label":"__donate__"}]},{"type":"version"}]}},"i18n":{"en":{"title":"Settings","description":"Customize your reading experience","app_name":"Circle Reader","app_description":"An extension that provides an immersive reading experience, with powerful intelligent recognition and layout capabilities, making you fall in love with reading on the web","plugin_is_disabled":"Extension $ID$ has been disabled","timeout":"API request timed out","need_approved":"$ID$ is not verified and temporarily unavailable","account":"Account","option":"Advanced","store":"Extension Store","user_center":"User Center","search":"Search","about":"About","upgrade":"Upgrade","renew":"Renew","subscribe":"Upgrade to Pro Account","search_in_setting":"Search in Settings","login":"Sign In","register":"Sign Up","reset_password":"Reset Password","logout":"Sign Out","confirm_logout":"Are you sure you want to sign out?","please_login":"Please sign in first","exception":"Error","sync_import":"Import Local Data","import_empty":"Please ensure that the imported data is not empty.","table_option":"Settings","table_option_tooltip":"Software and application settings","table_apps":"Extensions","table_apps_tooltip":"Installed extensions","table_node":"Data","table_node_tooltip":"Data saved by extensions","sync_export":"Export Data","select_all":"Select All","reset_all":"Reset All Settings","follow":"Follow Us","follow_msg":"Follow us for the latest updates","wechat":"Official Account","qq":"QQ Group","support":"Support","support_msg":"Your support is our greatest motivation","donate_coffee":"Buy me a coffee","share_to_other":"Share with friends","vote":"Five-star Rating","vote_msg":"If you find it helpful, please give us a five-star rating~","to_vote":"Rate Us","vote_alert":"Extension store not found. You can manually search for Circle in the extension store to rate us~","to_feedback":"Feedback & Suggestions","links":"Quick Links","website":"Official Website","usage":"User Guide","agreement":"Terms of Service","privacy":"Privacy Policy","faq":"FAQ","update":"Update","feedback":"Feedback","download_latest":"Download Latest Version","donate":"Support Us","version":"Current Version","copy":"Copy","refresh_to_active":"Settings updated. Please refresh to apply changes","sure_to_close":"Don\'t show again after closing. Are you sure?","sure_to_update":"Update now?","add_new":"Add New","config_error":"$LABEL$ configuration error, ID: $ID$","ok":"OK","cancel":"Cancel","remove":"Remove","edit":"Edit","delete":"Delete","add":"Add","more":"Learn More","required":"Required","empty":"No data","batch":"Batch Operations","batch_rule":"One rule per line, separated by |. Example: https://circlereader.com | Ranhe","reset_confirm":"Are you sure you want to reset? This will clear all data including blacklist, whitelist, and read later items","member_remain":"Premium account: $DAY$ days remaining","premium_remain":"Pro account: $DAY$ days remaining","member_forever":"Premium Account (Lifetime)","member_will_expire":"Premium account expiring soon","premium_forever":"Pro Account (Lifetime)","premium_will_expire":"Pro account expiring soon","fetch_failed":"Service error, please try again later","check":"Check","expired":"Premium features have been disabled. Please check if you\'re signed out or if your premium account has expired.","sync":"Settings have changed due to account sign-in or sign-out. Please refresh to view the latest content.","sync_reload":"Refresh Now","disable_cross_group":"Cross-group drag and drop is not allowed. If you can\'t see the groups clearly, adjust the \\"Group Spacing\\" option in \\"Advanced Settings\\" under \\"Toolbar\\".","current_refer":"Current page URL, click to copy","common":"General","default":"Default","lang":"Language","en":"English","zh_cn":"简体中文","zh_tw":"繁體中文","ja":"日本語","ko":"한국어","th":"ภาษาไทย","remove_slogan":"Remove branding","remove_slogan_tooltip":"Remove brand logo when exporting","need_reinstall":"Current version is too old for automatic upgrade. Please uninstall and reinstall the latest version","load_more":"Load More","dark":"Dark Mode","light":"Light Mode","auth":"Activate Benefits","auth_ok":"Received, continue activation","auth_cancel":"Haven\'t received notification","auth_success":"Benefits activated successfully","auth_error":"Activation information not found","auth_tooltip":"Click after receiving email notification","generated_by":"Generated by [Circle Reader](https://circlereader.com)","html_generated_by":"Generated by <a href=\\"https://circlereader.com\\" target=\\"_blank\\">Circle Reader</a>","backup_use":"Use","backup_login":"Please sign in to view backups","backup_button":"Backup","backup_limit":"Free accounts can backup 1 record, premium accounts 5 records, and professional accounts 10 records."},"ja":{"title":"設定","description":"読書体験をカスタマイズ","app_name":"Circle Reader","app_description":"強力なインテリジェントな認識とレイアウト機能を備えた没入型読書拡張機能。ウェブページでの読書をより楽しくします","plugin_is_disabled":"拡張機能 $ID$ は無効化されています","timeout":"APIリクエストがタイムアウトしました","need_approved":"$ID$ は未承認のため、現在使用できません","account":"アカウント","option":"詳細設定","store":"アプリストア","user_center":"ユーザーセンター","search":"検索","about":"概要","upgrade":"アップグレード","renew":"更新","subscribe":"プロアカウントにアップグレード","search_in_setting":"設定内で検索","login":"ログイン","register":"登録","reset_password":"パスワードリセット","logout":"ログアウト","confirm_logout":"アカウントからログアウトしますか?","please_login":"先にログインしてください","exception":"エラー","sync_import":"ローカルデータをインポート","import_empty":"インポートするデータが空でないことを確認してください。","table_option":"設定","table_option_tooltip":"ソフトウェアとアプリの設定項目","table_apps":"アプリ","table_apps_tooltip":"インストール済みアプリ","table_node":"データ","table_node_tooltip":"アプリが保存したデータ","sync_export":"データをエクスポート","select_all":"すべて選択","reset_all":"すべての設定を初期化","follow":"フォロー","follow_msg":"更新情報をいち早く入手","wechat":"公式アカウント","qq":"QQグループ","support":"サポート","support_msg":"あなたのサポートが私たちの原動力です","donate_coffee":"コーヒーをおごる","share_to_other":"友達にシェア","vote":"5つ星評価","vote_msg":"お役に立てたなら、5つ星評価をお願いします~","to_vote":"5つ星評価","vote_alert":"対応するストアが見つかりません。拡張機能ストアでCircleを検索して評価してください~","to_feedback":"フィードバック","links":"リンク集","website":"公式サイト","usage":"使用ガイド","agreement":"利用規約","privacy":"プライバシーポリシー","faq":"よくある質問","update":"アップデート","feedback":"フィードバック","download_latest":"最新版をダウンロード","donate":"寄付","version":"現在のバージョン","copy":"コピー","refresh_to_active":"設定を反映するには更新が必要です","sure_to_close":"閉じると今後表示されません。よろしいですか?","sure_to_update":"アップデートしますか?","add_new":"新規追加","config_error":"$LABEL$ の設定エラー、ID: $ID$","ok":"OK","cancel":"キャンセル","remove":"削除","edit":"編集","delete":"削除","add":"追加","more":"詳細を見る","required":"必須項目です","empty":"データがありません","batch":"一括操作","batch_rule":"1行に1つのルール、|で区切ってください。例:https://circlereader.com | 染河","reset_confirm":"リセットしますか?ブラックリスト、ホワイトリスト、後で読むなどのすべてのデータが削除されます","member_remain":"プレミアムアカウント残り $DAY$ 日","premium_remain":"プロアカウント残り $DAY$ 日","member_forever":"プレミアムアカウント永久版","member_will_expire":"プレミアムアカウントの期限が近づいています","premium_forever":"プロアカウント永久版","premium_will_expire":"プロアカウントの期限が近づいています","fetch_failed":"サービスエラー。後でもう一度お試しください","check":"確認","expired":"プレミアム機能が無効化されています。アカウントがログアウトしているか、プレミアムアカウントの期限が切れている可能性があります。","sync":"アカウントのログインまたはログアウトにより設定が変更されました。最新の内容を表示するには更新してください。","sync_reload":"今すぐ更新","disable_cross_group":"グループ間のドラッグ&ドロップはできません。グループが見分けにくい場合は、「詳細設定」の「ツールバー」で「グループ間隔」を調整してください。","current_refer":"現在のページのURL、クリックでコピー","common":"一般","default":"デフォルト","lang":"言語","en":"English","zh_cn":"简体中文","zh_tw":"繁體中文","ja":"日本語","ko":"한국어","th":"ภาษาไทย","remove_slogan":"ブランド表示を削除","remove_slogan_tooltip":"エクスポート時にブランド表示を削除","need_reinstall":"現在のバージョンが古すぎるため、自動アップグレードできません。最新版をアンインストールして再インストールしてください","load_more":"もっと見る","dark":"ダークモード","light":"ライトモード","auth":"権限を有効化","auth_ok":"受信しました、続けて有効化","auth_cancel":"通知が届いていません","auth_success":"権限が更新されました","auth_error":"対応する有効化情報が見つかりません","auth_tooltip":"メール通知を受信後クリック","generated_by":"[Circle Reader](https://circlereader.com) で生成","html_generated_by":"<a href=\\"https://circlereader.com\\" target=\\"_blank\\">Circle Reader</a> で生成","backup_use":"使用","backup_login":"バックアップを表示するにはログインしてください","backup_button":"バックアップ","backup_limit":"無料アカウントは1件、プレミアムアカウントは5件、プロアカウントは10件までバックアップできます。"},"ko":{"title":"설정","description":"독서 경험을 맞춤 설정","app_name":"Circle Reader","app_description":"강력한 지능형 인식과 레이아웃 기능을 갖춘 몰입형 독서 확장 프로그램. 웹페이지에서의 독서를 더욱 즐겁게 만듭니다","plugin_is_disabled":"확장 프로그램 $ID$ 이(가) 비활성화되었습니다","timeout":"API 요청이 시간 초과되었습니다","need_approved":"$ID$ 이(가) 승인되지 않아 현재 사용할 수 없습니다","account":"계정","option":"상세 설정","store":"앱 스토어","user_center":"사용자 센터","search":"검색","about":"소개","upgrade":"업그레이드","renew":"갱신","subscribe":"프로 계정으로 업그레이드","search_in_setting":"설정 내 검색","login":"로그인","register":"회원가입","reset_password":"비밀번호 재설정","logout":"로그아웃","confirm_logout":"계정에서 로그아웃하시겠습니까?","please_login":"먼저 로그인하세요","exception":"오류","sync_import":"로컬 데이터 가져오기","import_empty":"가져오는 데이터가 비어 있지 않은지 확인하십시오.","table_option":"설정","table_option_tooltip":"소프트웨어 및 앱 설정 항목","table_apps":"앱","table_apps_tooltip":"설치된 앱","table_node":"데이터","table_node_tooltip":"앱이 저장한 데이터","sync_export":"데이터 내보내기","select_all":"모두 선택","reset_all":"모든 설정 초기화","follow":"팔로우","follow_msg":"최신 소식을 가장 먼저 받아보세요","wechat":"공식 계정","qq":"QQ 그룹","support":"지원","support_msg":"여러분의 지원이 우리의 원동력입니다","donate_coffee":"커피 한 잔","share_to_other":"친구에게 공유","vote":"5점 평가","vote_msg":"도움이 되셨다면 5점 평가 부탁드립니다~","to_vote":"5점 평가하기","vote_alert":"해당 스토어를 찾을 수 없습니다. 확장 프로그램 스토어에서 Circle을 검색하여 평가해주세요~","to_feedback":"피드백","links":"유용한 링크","website":"공식 웹사이트","usage":"사용 가이드","agreement":"이용약관","privacy":"개인정보처리방침","faq":"자주 묻는 질문","update":"업데이트","feedback":"피드백","download_latest":"최신 버전 다운로드","donate":"후원","version":"현재 버전","copy":"복사","refresh_to_active":"설정을 적용하려면 업데이트가 필요합니다","sure_to_close":"닫으면 더 이상 표시되지 않습니다. 계속하시겠습니까?","sure_to_update":"업데이트하시겠습니까?","add_new":"새로 추가","config_error":"$LABEL$ 설정 오류, ID: $ID$","ok":"확인","cancel":"취소","remove":"제거","edit":"편집","delete":"삭제","add":"추가","more":"자세히 보기","required":"필수 항목입니다","empty":"데이터가 없습니다","batch":"일괄 작업","batch_rule":"한 줄에 하나의 규칙, |로 구분하세요. 예: https://circlereader.com | 染河","reset_confirm":"초기화하시겠습니까? 블랙리스트, 화이트리스트, 나중에 읽기 등 모든 데이터가 삭제됩니다","member_remain":"프리미엄 계정 남은 기간 $DAY$일","premium_remain":"프로 계정 남은 기간 $DAY$일","member_forever":"프리미엄 계정 영구 버전","member_will_expire":"프리미엄 계정 만료가 임박했습니다","premium_forever":"프로 계정 영구 버전","premium_will_expire":"프로 계정 만료가 임박했습니다","fetch_failed":"서비스 오류입니다. 나중에 다시 시도해 주세요.","check":"확인","expired":"프리미엄 기능이 비활성화되었습니다. 계정이 로그아웃되었거나 프리미엄 계정이 만료되었을 수 있습니다.","sync":"계정 로그인 또는 로그아웃으로 인해 설정이 변경되었습니다. 최신 내용을 보려면 업데이트하세요.","sync_reload":"지금 업데이트","disable_cross_group":"그룹 간 드래그 앤 드롭은 불가능합니다. 그룹 구분이 어려운 경우 \'상세 설정\'의 \'도구 모음\'에서 \'그룹 간격\'을 조정하세요.","current_refer":"현재 페이지 URL, 클릭하여 복사","common":"일반","default":"기본값","lang":"언어","en":"English","zh_cn":"简体中文","zh_tw":"繁體中文","ja":"日本語","ko":"한국어","th":"ภาษาไทย","remove_slogan":"브랜드 표시 제거","remove_slogan_tooltip":"내보내기 시 브랜드 표시 제거","need_reinstall":"현재 버전이 너무 오래되어 자동 업그레이드할 수 없습니다. 최신 버전을 제거하고 다시 설치하세요","load_more":"더 보기","dark":"다크 모드","light":"라이트 모드","auth":"권한 활성화","auth_ok":"수신했습니다, 계속해서 활성화","auth_cancel":"알림이 도착하지 않았습니다","auth_success":"권한이 업데이트되었습니다","auth_error":"해당 활성화 정보를 찾을 수 없습니다","auth_tooltip":"이메일 알림 수신 후 클릭","generated_by":"[Circle Reader](https://circlereader.com)로 생성","html_generated_by":"<a href=\\"https://circlereader.com\\" target=\\"_blank\\">Circle Reader</a>로 생성","backup_use":"사용","backup_login":"백업을 보려면 로그인하세요","backup_button":"백업","backup_limit":"무료 계정은 1개, 프리미엄 계정은 5개, 프로 계정은 10개까지 백업할 수 있습니다."},"th":{"title":"ตั้งค่า","description":"ปรับแต่งประสบการณ์การอ่าน","app_name":"Circle Reader","app_description":"ส่วนขยายสำหรับการอ่านแบบดื่มด่ำพร้อมความสามารถในการจดจำและจัดวางที่ทรงพลัง ช่วยให้คุณหลงรักการอ่านบนหน้าเว็บ","plugin_is_disabled":"ปลั๊กอิน $ID$ ถูกปิดใช้งาน","timeout":"หมดเวลาการร้องขอ API","need_approved":"$ID$ ยังไม่ได้รับการอนุมัติ ไม่สามารถใช้งานได้ในขณะนี้","account":"บัญชี","option":"ตั้งค่าขั้นสูง","store":"ร้านค้าแอป","user_center":"ศูนย์ผู้ใช้","search":"ค้นหา","about":"เกี่ยวกับ","upgrade":"อัปเกรด","renew":"ต่ออายุ","subscribe":"อัปเกรดเป็นบัญชีโปร","search_in_setting":"ค้นหาในการตั้งค่า","login":"เข้าสู่ระบบ","register":"ลงทะเบียน","reset_password":"รีเซ็ตรหัสผ่าน","logout":"ออกจากระบบ","confirm_logout":"คุณต้องการออกจากบัญชีหรือไม่?","please_login":"กรุณาเข้าสู่ระบบ","exception":"ข้อผิดพลาด","sync_import":"นำเข้าข้อมูลท้องถิ่น","import_empty":"โปรดตรวจสอบให้แน่ใจว่าข้อมูลที่นำเข้าไม่ว่างเปล่า。","table_option":"ตั้งค่า","table_option_tooltip":"การตั้งค่าของซอฟต์แวร์และแอปพลิเคชัน","table_apps":"แอป","table_apps_tooltip":"แอปที่ติดตั้งแล้ว","table_node":"ข้อมูล","table_node_tooltip":"ข้อมูลที่แอปพลิเคชันบันทึกไว้","sync_export":"ส่งออกข้อมูล","select_all":"เลือกทั้งหมด","reset_all":"รีเซ็ตการตั้งค่าทั้งหมด","follow":"ติดตาม","follow_msg":"รับข่าวสารอัปเดตเป็นคนแรก","wechat":"บัญชีทางการ","qq":"กลุ่ม QQ","support":"สนับสนุน","support_msg":"การสนับสนุนของคุณเป็นแรงผลักดันของเรา","donate_coffee":"ซื้อกาแฟ","share_to_other":"แชร์ให้เพื่อน","vote":"ให้คะแนน 5 ดาว","vote_msg":"ถ้าช่วยคุณได้ กรุณาให้คะแนน 5 ดาว","to_vote":"ให้คะแนน 5 ดาว","vote_alert":"ไม่พบแพลตฟอร์มที่เกี่ยวข้อง กรุณาค้นหา Circle ในร้านค้าส่วนขยายและให้คะแนน","to_feedback":"ข้อเสนอแนะและคำแนะนำ","links":"ลิงก์ที่มีประโยชน์","website":"เว็บไซต์ทางการ","usage":"คู่มือการใช้งาน","agreement":"ข้อตกลงผู้ใช้","privacy":"นโยบายความเป็นส่วนตัว","faq":"คำถามที่พบบ่อย","update":"อัปเดตเวอร์ชัน","feedback":"รายงานปัญหา","download_latest":"ดาวน์โหลดเวอร์ชันล่าสุด","donate":"บริจาค","version":"เวอร์ชันปัจจุบัน","copy":"คัดลอก","refresh_to_active":"รีเฟรชหน้าเพื่อใช้การตั้งค่า","sure_to_close":"ปิดแล้วจะไม่แสดงอีก คุณแน่ใจหรือไม่?","sure_to_update":"คุณต้องการอัปเดตหรือไม่?","add_new":"เพิ่มใหม่","config_error":"ข้อผิดพลาดการตั้งค่า $LABEL$, ID: $ID$","ok":"ตกลง","cancel":"ยกเลิก","remove":"ลบ","edit":"แก้ไข","delete":"ลบ","add":"เพิ่ม","more":"ดูรายละเอียด","required":"จำเป็นต้องกรอก","empty":"ไม่มีข้อมูล","batch":"ดำเนินการกลุ่ม","batch_rule":"หนึ่งกฎต่อบรรทัด คั่นด้วย | เช่น: https://circlereader.com | 染河","reset_confirm":"คุณต้องการรีเซ็ตหรือไม่? ข้อมูลทั้งหมดรวมถึงรายการดำ รายการขาว และอ่านภายหลังจะถูกลบ","member_remain":"บัญชีพรีเมียม เหลือ $DAY$ วัน","premium_remain":"บัญชีโปร เหลือ $DAY$ วัน","member_forever":"บัญชีพรีเมียมตลอดชีพ","member_will_expire":"บัญชีพรีเมียมใกล้หมดอายุ","premium_forever":"บัญชีโปรตลอดชีพ","premium_will_expire":"บัญชีโปรใกล้หมดอายุ","fetch_failed":"บริการเกิดข้อผิดพลาด โปรดลองอีกครั้งในภายหลัง","check":"ตรวจสอบ","expired":"ฟีเจอร์พรีเมียมถูกปิดใช้งาน กรุณาตรวจสอบว่าคุณออกจากระบบหรือบัญชีพรีเมียมหมดอายุหรือไม่","sync":"ตรวจพบการเปลี่ยนแปลงการตั้งค่าจากการเข้าสู่ระบบหรือออกจากระบบ กรุณารีเฟรชหน้าเพื่อดูเนื้อหาล่าสุด","sync_reload":"รีเฟรชทันที","disable_cross_group":"ไม่อนุญาตให้ลากระหว่างกลุ่ม หากไม่เห็นการจัดกลุ่ม ให้ปรับตัวเลือก \'ระยะห่างระหว่างกลุ่มแถบเครื่องมือ\' ใน \'ตั้งค่าขั้นสูง\' ของ \'แถบเครื่องมือ\'","current_refer":"แหล่งที่มาของหน้าปัจจุบัน คลิกเพื่อคัดลอก","common":"ทั่วไป","default":"ค่าเริ่มต้น","lang":"ภาษา","en":"English","zh_cn":"中文","zh_tw":"繁體","ja":"日本語","ko":"한국어","th":"ภาษาไทย","remove_slogan":"ลบโลโก้","remove_slogan_tooltip":"ลบโลโก้เมื่อส่งออก","need_reinstall":"เวอร์ชันปัจจุบันเก่าเกินไป ไม่สามารถอัปเกรดอัตโนมัติได้ กรุณาลบและติดตั้งเวอร์ชันล่าสุดใหม่","load_more":"โหลดเพิ่มเติม","dark":"โหมดมืด","light":"โหมดสว่าง","auth":"เปิดใช้งานสิทธิ์","auth_ok":"ได้รับแล้ว ดำเนินการต่อ","auth_cancel":"ยังไม่ได้รับการแจ้งเตือน","auth_success":"อัปเดตสิทธิ์แล้ว","auth_error":"ไม่พบข้อมูลการเปิดใช้งานที่เกี่ยวข้อง","auth_tooltip":"คลิกหลังจากได้รับอีเมลแจ้งเตือน","generated_by":"สร้างโดย [Circle Reader](https://circlereader.com)","html_generated_by":"สร้างโดย <a href=\\"https://circlereader.com\\" target=\\"_blank\\">Circle Reader</a>","backup_use":"ใช้","backup_login":"กรุณาเข้าสู่ระบบเพื่อดูการสำรองข้อมูล","backup_button":"สำรองข้อมูล","backup_limit":"บัญชีฟรีสำรองข้อมูลได้ 1 รายการ บัญชีพรีเมียม 5 รายการ บัญชีโปร 10 รายการ"},"zh-CN":{"title":"偏好设置","description":"自定义你的阅读体验","app_name":"Circle 阅读助手","app_description":"一款提供沉浸式阅读的扩展,拥有强大智能的识别和排版能力,让你爱上在网页上阅读","plugin_is_disabled":"插件 $ID$ 已被禁用","timeout":"接口请求超时","need_approved":"$ID$ 未审核,暂时不可用","account":"账户","option":"高级","store":"应用市场","user_center":"用户中心","search":"搜索","about":"关于","upgrade":"升级","renew":"续费","subscribe":"升级为专业帐户","search_in_setting":"在偏好设置中搜索","login":"登录(不可用)","register":"注册(不可用)","reset_password":"重置密码","logout":"退出","confirm_logout":"确定退出账户?","please_login":"请先登录(不可用)","exception":"异常","sync_import":"导入本地数据","import_empty":"请确保导入的数据不空","table_option":"配置","table_option_tooltip":"软件和应用的配置项","table_apps":"应用","table_apps_tooltip":"已安装应用","table_node":"数据","table_node_tooltip":"应用保存的数据","sync_export":"导出数据","select_all":"全选","reset_all":"初始化所有配置","follow":"关注我们","follow_msg":"关注我们及时获取更新动态","wechat":"公众号","qq":"QQ 群","support":"鼓励与支持","support_msg":"您的鼓励与支持是对我最大的动力","donate_coffee":"请我喝咖啡","share_to_other":"分享给小伙伴","vote":"五星好评","vote_msg":"如果帮助到了你,给我们一个五星好评吧~","to_vote":"五星好评","vote_alert":"未找到对应的平台,你可以手动进入扩展市场,搜素到 Circle 后给予好评 ~","to_feedback":"反馈与建议","links":"常用链接","website":"官方主页","usage":"使用指南","agreement":"用户协议","privacy":"隐私政策","faq":"常见问题","update":"版本更新","feedback":"问题反馈","download_latest":"下载新版","donate":"捐赠支持","version":"当前版本","copy":"复制","refresh_to_active":"操作完成,刷新生效","sure_to_close":"关闭后不再显示,确定吗?","sure_to_update":"确定更新吗 ?","add_new":"添加新的","config_error":"$LABEL$ 配置错误, 对应 id 为 $ID$","ok":"好的","cancel":"取消","remove":"移除","edit":"编辑","delete":"删除","add":"添加","more":"了解详情","required":"不能为空","empty":"暂无数据","batch":"批量操作","batch_rule":"一行一个规则,使用|分割。如:https://circlereader.com | 染河学长","reset_confirm":"确认重置吗?黑白名单、稍后读等所有的数据都将被清空","member_remain":"高级帐户还有 $DAY$ 天","premium_remain":"专业帐户还有 $DAY$ 天","member_forever":"高级账户终身版","member_will_expire":"高级帐户即将到期","premium_forever":"专业账户终身版","premium_will_expire":"专业帐户即将到期","fetch_failed":"服务器错误,请稍后再试","check":"查看","expired":"高级功能已被禁用,请检查你的帐户是否退出或者高级帐户已过期。","sync":"检测到账户登录(不可用)或注销导致配置变更,请刷新页面以查看最新内容。","sync_reload":"立即刷新","disable_cross_group":"不允许跨组拖拽。看不出分组情况时,可以调整 \\"高级设置\\" 中 \\"工具栏\\" 的 \\"工具栏组距\\" 选项。","current_refer":"当前页面来源,点击复制","common":"通用","default":"默认","lang":"语言","en":"English","zh_cn":"中文","zh_tw":"繁體","ja":"日本語","ko":"한국어","th":"ภาษาไทย","remove_slogan":"移除品牌标识","remove_slogan_tooltip":"导出时删除品牌标识","need_reinstall":"当前版本太低,无法自动完成升级,请卸载后重新安装最新的版本","load_more":"加载更多","dark":"夜间","light":"日间","auth":"激活权益","auth_ok":"已收到,继续激活","auth_cancel":"还未收到通知","auth_success":"权益已更新","auth_error":"未查询到对应的激活信息","auth_tooltip":"收到邮件通知后点击","generated_by":"由 [Circle 阅读助手](https://circlereader.com) 生成","html_generated_by":"由 <a href=\\"https://circlereader.com\\" target=\\"_blank\\">Circle 阅读助手</a> 生成","backup_use":"使用","backup_login":"请登陆查看备份","backup_button":"备份","backup_limit":"免费帐户最多备份1条,高级帐户5条,专业帐户10条。"},"zh-TW":{"title":"偏好設置","description":"自定義你的閱讀體驗","app_name":"Circle 閱讀助手","app_description":"一款提供沉浸式閱讀的擴展,擁有強大智能的識別和排版能力,讓你愛上在網頁上閱讀","plugin_is_disabled":"插件 $ID$ 已停用","timeout":"接口請求超時","need_approved":"$ID$ 未審覈,暫時不可用,請聯繫管理員審覈","account":"賬戶","option":"高級","store":"應用市場","user_center":"使用者中心","search":"蒐索","about":"關於","upgrade":"升級","renew":"續費","subscribe":"升級為專業帳戶","search_in_setting":"在偏好設置中搜索","login":"登錄","register":"註冊","reset_password":"重置密碼","logout":"退出","confirm_logout":"確定退出賬戶?","please_login":"請先登錄","exception":"異常","sync_import":"導入本地數據","import_empty":"請確保導入的數據不為空","table_option":"配置","table_option_tooltip":"軟件和應用的配置項","table_apps":"應用","table_apps_tooltip":"已安裝應用","table_node":"數據","table_node_tooltip":"插件保存的數據","sync_export":"導出數據","select_all":"全選","reset_all":"初始化所有配置","follow":"關注我們","follow_msg":"關注我們及時獲取更新動態","wechat":"公衆號","qq":"QQ 羣","support":"鼓勵與支持","support_msg":"您的鼓勵與支持是對我最大的動力","donate_coffee":"請我喝咖啡","share_to_other":"分享給小夥伴","vote":"五星好評","vote_msg":"如果幫助到了你,給我們一個五星好評吧~","to_vote":"五星好評","vote_alert":"未找到對應的平臺,你可以手動進入擴展市場,搜素到 Circle 後給予好評 ~","to_feedback":"反饋與建議","links":"常用鏈接","website":"官方主頁","usage":"使用指南","agreement":"用戶協議","privacy":"隱私政策","faq":"常見問題","update":"版本更新","feedback":"問題反饋","download_latest":"下載新版","donate":"捐贈支持","version":"當前版本","copy":"複製","refresh_to_active":"操作完成,刷新生效","sure_to_close":"關閉後不再顯示,確定嗎?","sure_to_update":"確定更新嗎 ?","add_new":"添加新的","config_error":"$LABEL$ 配置錯誤, 對應 id 爲 $ID$","ok":"好的","cancel":"取消","remove":"移除","edit":"編輯","delete":"刪除","add":"添加","more":"瞭解詳情","required":"不能爲空","empty":"暫無數據","batch":"批量操作","batch_rule":"一行一個規則,使用|分割。如:https://circlereader.com | 染河學長","reset_confirm":"確認重置嗎?黑白名單、稍後讀等所有的數據都將被清空","member_remain":"高級帳戶還有 $DAY$ 天","premium_remain":"專業帳戶還有 $DAY$ 天","member_forever":"高級賬戶終身版","member_will_expire":"高級帳戶即將到期","premium_forever":"專業帳戶終身版","premium_will_expire":"專業帳戶即將到期","fetch_failed":"服務錯誤,請稍後再試","check":"查看","expired":"高級功能已被禁用,請檢查你的帳戶是否退出或者高級帳戶已過期。","sync":"偵測到帳戶登入或登出導致配置變更,請重新整理頁面以查看最新內容。","sync_reload":"立即刷新","disable_cross_group":"不允許跨組拖拽。看不出分組情況時,可以調整 \\"高級設置\\" 中 \\"工具欄\\" 的 \\"工具欄組距\\" 選項。","current_refer":"當前頁面來源,點擊複製","common":"通用","default":"默認","lang":"語言","en":"English","zh_cn":"中文","zh_tw":"繁體","ja":"日本語","ko":"한국어","th":"ภาษาไทย","remove_slogan":"移除品牌標誌","remove_slogan_tooltip":"匯出時删除品牌標識","need_reinstall":"目前版本太低,無法自動完成升級,請解除安裝後重新安裝最新的版本","load_more":"加載更多","dark":"夜間","light":"日間","auth":"啟動權益","auth_ok":"已收到,繼續激活","auth_cancel":"還未收到通知","auth_success":"權益已更新","auth_error":"未查詢到對應的激活信息","auth_tooltip":"收到郵件通知後點擊","generated_by":"由 [Circle閱讀助手](https://circlereader.com) 生成","html_generated_by":"由 <a href=\\"https://circlereader.com\\" target=\\"_blank\\">Circle閱讀助手</a> 生成","backup_use":"使用","backup_login":"請登入查看備份","backup_button":"備份","backup_limit":"免費帳戶最多備份1條,高級帳戶5條,專業帳戶10條。"}}},{"id":"scrollpage","type":"plugin","version":"1.0.0","title":"__title__","priority":70,"description":"__description__","dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"access":"member","id":"scrollpage","label":"__title__","defaultValue":{"value":"s p"}},{"id":"scrollpage_toggle","label":"__toggle__","priority":115,"defaultValue":{"value":"s s"}}],"toolbar":[{"group":1,"access":"member","id":"scrollpage","label":"__title__","defaultValue":{"checked":true,"value":"<svg viewBox=\\"0 0 1024 1024\\" focusable=\\"false\\" width=\\"1em\\" height=\\"1em\\" fill=\\"currentColor\\" aria-hidden=\\"true\\"><path d=\\"M526.56 197.77q-19.08 0-26.11 13.05-8.03 13.05-8.03 29.12v145.57q0 20.07 9.04 31.12 9.03 12.04 25.1 12.04 16.06-1 25.1-13.55 9.04-12.55 9.04-29.61V244.96q0-20.08-9.04-33.64-9.03-13.55-25.1-13.55zM552.66 0h-81.32q-129.5 4.02-216.85 90.35-88.34 86.34-91.35 218.86V715.8q3.01 131.51 89.35 217.85 87.34 87.34 218.85 90.35h81.32q131.51-3.01 218.85-90.35 86.34-86.34 89.35-217.85V309.21q0-132.52-88.34-218.86Q685.18 4.02 552.66 0zM792.6 719.81q-3.02 102.4-70.28 169.66-67.26 68.27-169.66 70.28h-81.32q-102.4-2.01-169.66-70.28-68.27-67.26-70.28-169.66v-410.6q2.01-102.4 70.28-170.67 67.26-67.26 169.66-69.27h81.32q102.4 2.01 169.66 69.27 67.26 68.27 70.28 170.67v410.6z\\" /></svg>"}}],"option":[{"id":"scrollpage","label":"__title__","data":[{"priority":0,"access":"member","id":"autoscroll","label":"__autoscroll__","defaultValue":false}]}]},"i18n":{"en":{"title":"Auto Scroll","description":"Automatically scroll the page, free your hands","toggle":"Start/Stop Scrolling","slower":"Slower","slow":"Slow","routine":"Normal","fast":"Fast","faster":"Faster","autoscroll":"Auto-scroll on startup","pin":"Fixed","expand":"Expand","collapse":"Collapse","close":"Exit"},"ja":{"title":"自動スクロール","description":"ページを自動的にスクロール、手を解放","toggle":"スクロール開始/停止","slower":"より遅く","slow":"遅く","routine":"通常","fast":"速く","faster":"より速く","autoscroll":"起動時に自動スクロール","pin":"固定","expand":"展開","collapse":"折りたたみ","close":"閉じる"},"ko":{"title":"자동 스크롤","description":"페이지를 자동으로 스크롤하여 손을 자유롭게","toggle":"스크롤 시작/중지","slower":"더 느리게","slow":"느리게","routine":"보통","fast":"빠르게","faster":"더 빠르게","autoscroll":"시작 시 자동 스크롤","pin":"고정","expand":"확장","collapse":"접기","close":"닫기"},"th":{"title":"เลื่อนอัตโนมัติ","description":"เลื่อนหน้าอัตโนมัติ ปล่อยมือให้อิสระ","toggle":"เริ่ม/หยุดการเลื่อน","slower":"ช้าลง","slow":"ช้า","routine":"ปกติ","fast":"เร็ว","faster":"เร็วขึ้น","autoscroll":"เลื่อนอัตโนมัติเมื่อเริ่มต้น","pin":"ตรึง","expand":"ขยาย","collapse":"ย่อ","close":"ปิด"},"zh-CN":{"title":"自动滚动","description":"自动滚动页面,释放双手","toggle":"开始/停止滚动","slower":"较慢","slow":"慢","routine":"常规","fast":"快","faster":"较快","autoscroll":"启动时自动滚动","pin":"固定","expand":"展开","collapse":"折叠","close":"退出"},"zh-TW":{"title":"自動捲動","description":"自動捲動頁面,釋放雙手","toggle":"開始/停止捲動","slower":"較慢","slow":"慢","routine":"常規","fast":"快","faster":"較快","autoscroll":"啟動時自動捲動","pin":"固定","expand":"展開","collapse":"摺疊","close":"關閉"}}},{"id":"screenshot","type":"plugin","version":"1.0.0","title":"__title__","priority":150,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"access":"member","id":"screenshot","label":"__title__","defaultValue":{"value":"s n"}}],"menu":[{"access":"member","id":"screenshot","label":"__title__"}],"toolbar":[{"group":10,"access":"member","id":"screenshot","label":"__title__","tooltip":"__tooltip__","more":"docs/screenshot.html","defaultValue":{"checked":true,"value":"FileImageOutlined"}}],"option":[{"id":"screenshot","label":"__title__","data":[{"id":"format","access":"member","defaultValue":"jpeg","label":"__format__","tooltip":"__format_tooltip__","data":[{"label":"PNG","value":"png"},{"label":"JPEG","value":"jpeg"}]}]}]},"i18n":{"en":{"title":"Export as Image","description":"Take a screenshot of the content with one click","tooltip":"Export article as a complete image","got_it":"Got it","format":"Format","format_tooltip":"Choose PNG format for high-quality lossless images","alert":"Screenshot width is based on the current content area. Please do not perform any operations until completion; click the button below to not show this message again","enable":"Enable","suggest_png":"PNG format for higher resolution and lossless"},"ja":{"title":"画像としてエクスポート","description":"ワンクリックで本文のスクリーンショットを撮影","tooltip":"記事を完全な画像としてエクスポート","got_it":"わかりました","format":"フォーマット","format_tooltip":"高品質なロスレス画像にはPNGフォーマットを選択してください","alert":"スクリーンショットの幅は現在のコンテンツエリアに基づきます。完了するまで操作を行わないでください。下のボタンをクリックすると、このメッセージは表示されなくなります","enable":"有効にする","suggest_png":"PNG 形式はより高解像度でロスレスです"},"ko":{"title":"이미지로 내보내기","description":"한 번의 클릭으로 내용 스크린샷","tooltip":"기사를 완전한 이미지로 내보내기","got_it":"알겠습니다","format":"형식","format_tooltip":"고품질 무손실 이미지를 위해 PNG 형식을 선택하세요","alert":"스크린샷 너비는 현재 내용 영역을 기준으로 합니다. 완료될 때까지 작업을 수행하지 마세요. 아래 버튼을 클릭하면 이 메시지가 더 이상 표시되지 않습니다","enable":"할 수 있게 하다","suggest_png":"PNG 형식은 더 고화질이고 무손실입니다."},"th":{"title":"ส่งออกเป็นรูปภาพ","description":"ถ่ายภาพหน้าจอเนื้อหาด้วยการคลิกครั้งเดียว","tooltip":"ส่งออกบทความเป็นรูปภาพสมบูรณ์","got_it":"เข้าใจแล้ว","format":"รูปแบบ","format_tooltip":"เลือกรูปแบบ PNG สำหรับรูปภาพคุณภาพสูงแบบไม่สูญเสียข้อมูล","alert":"ความกว้างของภาพหน้าจอขึ้นอยู่กับพื้นที่เนื้อหาปัจจุบัน กรุณาอย่าทำการดำเนินการใดๆ จนกว่าจะเสร็จสิ้น คลิกปุ่มด้านล่างเพื่อไม่แสดงข้อความนี้อีก","enable":"เปิดใช้งาน","suggest_png":"รูปแบบ PNG มีความละเอียดสูงกว่าและไม่มีการสูญเสีย"},"zh-CN":{"title":"导出为图片","description":"一键对正文截图","tooltip":"导出文章为完整的图片","got_it":"我知道了","format":"格式","format_tooltip":"高清无损格式请选择 PNG 格式","alert":"截图的宽度以当前内容区为准,完成前请不要做任何操作;点击下方按钮不再提示","enable":"启用","suggest_png":"PNG 格式更高清无损"},"zh-TW":{"title":"匯出為圖片","description":"一鍵對正文截圖","tooltip":"匯出文章為完整的圖片","got_it":"我知道了","format":"格式","format_tooltip":"高清無損格式請選擇 PNG 格式","alert":"截圖的寬度以當前內容區為準,完成前請不要做任何操作;點擊下方按鈕不再提示","enable":"啟用","suggest_png":"PNG 格式更高清無損"}}},{"id":"saver","type":"plugin","version":"1.0.0","title":"__title__","core":true,"enabled":true,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","i18n":{"en":{"title":"Save as File","description":"Powered by file-saver, provides file saving capabilities for other plugins"},"ja":{"title":"ファイルとして保存","description":"file-saverベースのファイル保存は、直接使用するべきではありません"},"ko":{"title":"파일로 저장","description":"file-saver 기반 파일 저장, 직접 사용하지 말아야"},"th":{"title":"บันทึกเป็นไฟล์","description":"การบันทึกไฟล์บนพื้นฐานของไฟล์ saver คุณไม่ควรใช้โดยตรง"},"zh-CN":{"title":"另存为文件","description":"基于 file-saver 实现的文件保存,仅为其他插件提供能力"},"zh-TW":{"title":"另存為檔案","description":"基於file-saver實現的檔案保存,你不應該直接使用它"}}},{"id":"rule","type":"plugin","version":"1.0.0","title":"__title__","runAt":"bootstrap","priority":120,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"rule_remove","label":"__remove__","defaultValue":{"value":"r d"}}],"toolbar":[{"group":5,"id":"rule_remove","label":"__remove__","defaultValue":{"checked":true,"value":"DeleteRowOutlined"}}]},"i18n":{"en":{"title":"Rules","description":"Save records of \\"Remove Content\\" and \\"Manual Selection\\" for permanent memory","remove":"Remove current page rules","done":"Current page rules removed, refresh to take effect"},"ja":{"title":"ルール","description":"「コンテンツ削除」と「手動選択」の記録を保存し、永続的な記憶を実現","remove":"現在のページのルールを削除","done":"現在のページのルールを削除しました。更新して反映されます"},"ko":{"title":"규칙","description":"\\"콘텐츠 제거\\" 및 \\"수동 선택\\" 기록을 저장하여 영구 기억 구현","remove":"현재 페이지 규칙 제거","done":"현재 페이지 규칙이 제거되었습니다. 새로고침하여 적용됩니다"},"th":{"title":"กฎ","description":"บันทึกการ \\"ลบเนื้อหา\\" และ \\"เลือกด้วยตนเอง\\" เพื่อการจดจำถาวร","remove":"ลบกฎของหน้าปัจจุบัน","done":"ลบกฎของหน้าปัจจุบันแล้ว รีเฟรชเพื่อให้มีผล"},"zh-CN":{"title":"规则","description":"保存 “移除内容” 和 “手动选择” 的记录,实现永久记忆","remove":"移除当前页规则","done":"当前页规则已移除,刷新生效"},"zh-TW":{"title":"規則","description":"儲存「移除內容」和「手動選擇」的記錄,實現永久記憶","remove":"移除當前頁面規則","done":"當前頁面規則已移除,重新整理後生效"}}},{"id":"render","type":"plugin","version":"1.0.0","title":"__title__","core":true,"enabled":true,"priority":2,"description":"__description__","dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"exit","label":"__exit__","priority":0,"defaultValue":{"value":"esc","checked":true}},{"id":"exitclose","label":"__exitclose__","priority":10,"defaultValue":{"value":"x x"}},{"id":"imagehide","label":"__imagehide__","priority":20,"defaultValue":{"value":"h p"}}],"menu":[{"id":"exit","label":"__exit__","priority":0},{"id":"exitclose","label":"__exitclose__","priority":10}],"toolbar":[{"group":0,"id":"exit","label":"__exit__","defaultValue":{"checked":true,"value":"CloseOutlined"}},{"group":0,"priority":3,"id":"exitclose","label":"__exitclose__","tooltip":"__exitclose_tooltip__","defaultValue":{"value":"PoweroffOutlined"}},{"group":5,"priority":75,"id":"imagehide","label":"__imagehide__","defaultValue":{"checked":true,"value":"<svg viewBox=\\"0 0 1024 1024\\" focusable=\\"false\\" width=\\"1em\\" height=\\"1em\\" fill=\\"currentColor\\" aria-hidden=\\"true\\"><path d=\\"M990.31 823.654L738.084 572.001c51.62-28.248 110.866-44.32 173.925-44.32 4.535 0 8.939 0.591 13.424 0.78V206.295c0-29.566-24.054-53.535-53.688-53.535h-553.93l-80.557-80.366h661.3c59.3 0 107.378 47.966 107.378 107.145v589.133c0 20.22-5.802 38.94-15.626 54.978v0.003zM750.914 259.86c37.07 0 67.112 29.965 67.112 66.976 0 36.96-30.043 66.948-67.112 66.948-37.07 0-67.108-29.989-67.108-66.948 0-37.01 30.037-66.976 67.108-66.976z m204.502 699.38c-15.729 15.697-41.234 15.697-56.963 0L63.28 126.062c-15.728-15.688-15.728-41.129 0-56.823 15.729-15.666 41.23-15.666 56.965 0l835.172 833.2c15.702 15.696 15.702 41.111 0 56.807v-0.005zM93.237 286.635V822.29v-294.61c61.442-32.775 131.4-51.545 205.571-53.023l482.653 481.51H120.079c-59.3 0-107.376-47.993-107.376-107.15v-589.16c0-20.192 5.934-38.885 15.678-55.005l67.191 67.027c-1.369 4.71-2.339 9.612-2.339 14.755h0.004z\\" /></svg>"}}],"option":[{"id":"render","label":"__title__","data":[{"id":"search_engine","label":"__search_engine__","tooltip":"__search_engine_tooltip__","defaultValue":"https://www.baidu.com/s?wd=","data":[{"label":"__baidu__","value":"https://www.baidu.com/s?wd="},{"label":"__sougou__","value":"https://www.sogou.com/web?query="},{"label":"__bing__","value":"https://www.bing.com/search?q="},{"label":"__google__","value":"https://www.google.com/search?q="}]}]}],"display":{"priority":10,"pid":"render","label":"__display__","icon":"FormatPainterOutlined","data":[{"id":"style","priority":0,"label":"__style__","preset":{"defaultValue":"default","data":[{"id":"default","label":"__default__","value":{"font":"default","cnfont":"default","align":"default","blockspace":"20px","imagealign":"default","indent":"0em","lineheight":1.8,"size":"20px","space":"0","title1":"2em","title1weight":500,"title2":"1.6em","title2weight":500,"title3":"1.2em","title3weight":500,"title4":"1em","title4weight":500,"title5":"1em","title5weight":500,"title6":"1em","title6weight":500,"titlealign":"default","weight":400,"width":"800px"}},{"id":"regular","label":"__compact__","value":{"font":"default","cnfont":"default","align":"default","blockspace":"28.8px","imagealign":"center","indent":"2em","lineheight":1.8,"size":"18px","space":"0","title1":"1.2em","title1weight":400,"title2":"0.7em","title2weight":700,"title3":"1.2em","title3weight":400,"title4":"0.7em","title4weight":700,"title5":"0.7em","title5weight":700,"title6":"0.7em","title6weight":700,"titlealign":"default","weight":400,"width":"800px"}},{"id":"compact","label":"__narrow_page__","value":{"font":"default","cnfont":"default","align":"default","blockspace":"13px","imagealign":"default","indent":"0em","lineheight":1.9,"size":"16px","space":"0","title1":"2em","title1weight":700,"title2":"1.2em","title2weight":700,"title3":"0.94em","title3weight":700,"title4":"1.2em","title4weight":700,"title5":"1em","title5weight":700,"title6":"0.6em","title6weight":700,"titlealign":"center","weight":400,"width":"750px"}},{"id":"loose","label":"__wide_page__","value":{"font":"default","cnfont":"default","align":"justify","blockspace":"24px","imagealign":"center","indent":"2em","lineheight":2,"size":"20px","space":"0","title1":"1.9em","title1weight":500,"title2":"0.8em","title2weight":400,"title3":"0.9em","title3weight":400,"title4":"0.9em","title4weight":400,"title5":"0.8em","title5weight":400,"title6":"0.6em","title6weight":700,"titlealign":"center","weight":400,"width":"860px"}},{"id":"custom","label":"__custom__","value":"custom"}]},"data":[{"id":"font","type":"font_select","defaultValue":"default","label":"__font__","data":[{"label":"__default__","value":"default"},{"label":"__custom__","value":"custom"}]},{"id":"cnfont","type":"font_select","defaultValue":"default","label":"__cn_font__","data":[{"label":"__default__","value":"default"},{"label":"__custom__","value":"custom"}]},{"min":12,"max":50,"unit":"px","id":"size","defaultValue":20,"label":"__size__"},{"min":600,"max":2500,"unit":"px","id":"width","defaultValue":800,"label":"__width__"},{"max":10,"unit":"px","id":"space","defaultValue":0,"label":"__space__"},{"min":1,"max":3,"step":0.1,"id":"lineheight","defaultValue":1.8,"label":"__lineheight__"},{"min":100,"max":900,"step":100,"id":"weight","defaultValue":400,"label":"__weight__"},{"max":50,"step":2,"unit":"px","id":"blockspace","defaultValue":32,"label":"__blockspace__"},{"max":10,"unit":"em","id":"indent","defaultValue":0,"label":"__indent__"},{"id":"titlealign","label":"__titlealign__","defaultValue":"default","data":[{"label":"__default__","value":"default"},{"label":"__align_left__","value":"left"},{"label":"__align_center__","value":"center"},{"label":"__align_right__","value":"right"},{"label":"__align_justify__","value":"justify"}]},{"id":"align","label":"__align__","defaultValue":"default","data":[{"label":"__default__","value":"default"},{"label":"__align_left__","value":"left"},{"label":"__align_center__","value":"center"},{"label":"__align_right__","value":"right"},{"label":"__align_justify__","value":"justify"}]},{"id":"imagealign","label":"__imagealign__","defaultValue":"default","data":[{"label":"__default__","value":"default"},{"label":"__align_left__","value":"left"},{"label":"__align_center__","value":"center"},{"label":"__align_right__","value":"right"},{"label":"__align_justify__","value":"justify"}]},{"id":"imagehide","label":"__imagehide__","defaultValue":false},{"label":"__title1__"},{"min":1,"max":5,"step":0.1,"unit":"em","id":"title1","access":"member","defaultValue":2,"label":"__size__"},{"min":100,"max":900,"step":100,"access":"member","id":"title1weight","defaultValue":500,"label":"__weight__"},{"label":"__title2__"},{"min":1,"max":5,"step":0.1,"unit":"em","id":"title2","access":"member","defaultValue":1.6,"label":"__size__"},{"min":100,"max":900,"step":100,"access":"member","id":"title2weight","defaultValue":500,"label":"__weight__"},{"label":"__title3__"},{"min":1,"max":5,"step":0.1,"unit":"em","id":"title3","access":"member","defaultValue":1.2,"label":"__size__"},{"min":100,"max":900,"step":100,"access":"member","id":"title3weight","defaultValue":500,"label":"__weight__"},{"label":"__title4__"},{"min":1,"max":5,"step":0.1,"unit":"em","id":"title4","access":"member","defaultValue":1,"label":"__size__"},{"min":100,"max":900,"step":100,"access":"member","id":"title4weight","defaultValue":500,"label":"__weight__"},{"label":"__title5__"},{"min":1,"max":5,"step":0.1,"unit":"em","id":"title5","defaultValue":1,"label":"__size__"},{"min":100,"max":900,"step":100,"id":"title5weight","defaultValue":500,"label":"__weight__"},{"label":"__title6__"},{"min":1,"max":5,"step":0.1,"unit":"em","id":"title6","defaultValue":1,"label":"__size__"},{"min":100,"max":900,"step":100,"id":"title6weight","defaultValue":500,"label":"__weight__"},{"label":"__codehighlight__"},{"id":"codefont","type":"font_select","defaultValue":"default","label":"__font__","data":[{"label":"__default__","value":"default"},{"label":"__custom__","value":"custom"}]},{"label":"__size__","id":"codesize","min":12,"max":50,"unit":"px","defaultValue":20},{"min":1,"max":3,"step":0.1,"access":"member","label":"__lineheight__","id":"codelineheight","defaultValue":1.8}]},{"id":"theme","priority":10,"label":"__theme__","preset":{"defaultValue":"light","data":[{"id":"light","label":"A","style":{"color":"#1b1b1b","marginTop":4,"lineHeight":1.5,"borderRadius":3,"backgroundColor":"#ffffff"},"value":{"color":"#1b1b1b","link":"#416ed2","hover":"#305ab7","visited":"#305ab7","select":"#1b1b1b","selectbg":"#bbd6fc","bg":"#ffffff","track":"#e2e2e2","thumb":"#9e9e9e","radius":"4px","title1color":"#1b1b1b","title2color":"#1b1b1b","title3color":"#1b1b1b","title4color":"#1b1b1b","title5color":"#1b1b1b","title6color":"#1b1b1b"}},{"id":"green","label":"A","style":{"color":"#282d2b","marginTop":4,"lineHeight":1.5,"borderRadius":3,"backgroundColor":"#c7edcc"},"value":{"color":"#282d2b","link":"#507964","hover":"#3e6b54","visited":"#3e6b54","select":"#000000","selectbg":"#addab4","bg":"#c7edcc","track":"#8fbd95","thumb":"#638c6d","radius":"4px","title1color":"#282d2b","title2color":"#282d2b","title3color":"#282d2b","title4color":"#282d2b","title5color":"#282d2b","title6color":"#282d2b"}},{"id":"yellow","label":"A","style":{"color":"#4f321c","marginTop":4,"lineHeight":1.5,"borderRadius":3,"backgroundColor":"#f8f1e3"},"value":{"color":"#4f321c","link":"#d19600","hover":"#ad7d03","visited":"#ad7d03","select":"#4f321c","selectbg":"#d19600","bg":"#f8f1e3","track":"#d6cfc1","thumb":"#b3ac9c","radius":"4px","title1color":"#4f321c","title2color":"#4f321c","title3color":"#4f321c","title4color":"#4f321c","title5color":"#4f321c","title6color":"#4f321c"}},{"id":"gray","label":"A","style":{"color":"#b0b0b0","marginTop":4,"lineHeight":1.5,"borderRadius":3,"backgroundColor":"#4a4a4d"},"value":{"color":"#b0b0b0","link":"#5ac8fa","hover":"#3ea4d2","visited":"#3ea4d2","select":"#fffefe","selectbg":"#43b0e2","bg":"#4a4a4d","track":"#4e4e50","thumb":"#83838c","radius":"4px","title1color":"#b0b0b0","title2color":"#b0b0b0","title3color":"#b0b0b0","title4color":"#b0b0b0","title5color":"#b0b0b0","title6color":"#b0b0b0"}},{"id":"dark","label":"A","style":{"color":"#b0b0b0","marginTop":4,"lineHeight":1.5,"borderRadius":3,"backgroundColor":"#121212"},"value":{"color":"#b0b0b0","link":"#5ac8fa","hover":"#3ea4d2","visited":"#3ea4d2","select":"#fffefe","selectbg":"#43b0e2","bg":"#121212","track":"#3c3a3a","thumb":"#848484","radius":"4px","title1color":"#b0b0b0","title2color":"#b0b0b0","title3color":"#b0b0b0","title4color":"#b0b0b0","title5color":"#b0b0b0","title6color":"#b0b0b0"}},{"id":"custom","label":"A","style":{"color":"#fff","marginTop":4,"lineHeight":1.5,"borderRadius":3,"backgroundColor":"#89d4cf","backgroundImage":"linear-gradient(315deg, #89d4cf 0%, #6e45e1 74%)"},"value":"custom"}]},"data":[{"id":"color","label":"__color__","defaultValue":"#1b1b1b"},{"label":"__link__","id":"link","access":"member","defaultValue":"#416ed2"},{"label":"__hover__","id":"hover","access":"member","tooltip":"__hover_tooltip__","defaultValue":"#305ab7"},{"label":"__visited__","id":"visited","access":"member","tooltip":"__visited_tooltip__","defaultValue":"#305ab7"},{"label":"__select__","id":"select","access":"member","tooltip":"__select_tooltip__","defaultValue":"#1b1b1b"},{"label":"__selectbg__","id":"selectbg","access":"member","tooltip":"__selectbg_tooltip__","defaultValue":"#bbd6fc"},{"id":"bg","type":"bg","label":"__bg__","preset":{"defaultValue":"solid","data":[{"label":"__solid__","value":"solid"},{"value":"gradient","label":"__gradient__"},{"value":"picture","label":"__image__"}]},"data":[{"id":"bg","access":"member","filter":"solid","type":"color_picker","label":"__bg_color__"},{"type":"color_picker","id":"start","access":"member","filter":"gradient","label":"__gradient_start__"},{"type":"color_picker","id":"end","access":"member","filter":"gradient","label":"__gradient_end__"},{"type":"slider","filter":"gradient","max":360,"unit":"deg","id":"angle","access":"member","defaultValue":0,"label":"__gradient_angle__"},{"type":"image","filter":"picture","id":"picture","access":"member","label":"__bg_image__"}]},{"id":"scrollbar","type":"scrollbar","label":"__scrollbar__","width":252,"preset":{"defaultValue":"light","data":[{"id":"light","style":{"width":30,"height":30,"borderRadius":4,"outlineColor":"#e2e2e2","border":"1px solid #f0eded","backgroundColor":"#e2e2e2","boxShadow":"20px 0px #9e9e9e inset"},"value":{"track":"#e2e2e2","thumb":"#9e9e9e","radius":"4px"}},{"id":"green","style":{"width":30,"height":30,"borderRadius":4,"outlineColor":"#8faf98","backgroundColor":"#8faf98","boxShadow":"20px 0px #5a8064 inset"},"value":{"track":"#8faf98","thumb":"#5a8064","radius":"4px"}},{"id":"yellow","style":{"width":30,"height":30,"borderRadius":4,"outlineColor":"#d6cfc1","backgroundColor":"#d6cfc1","boxShadow":"20px 0px #b3ac9c inset"},"value":{"track":"#d6cfc1","thumb":"#b3ac9c","radius":"4px"}},{"id":"gray","style":{"width":30,"height":30,"borderRadius":4,"outlineColor":"#4e4e50","backgroundColor":"#4e4e50","boxShadow":"20px 0px #83838c inset"},"value":{"track":"#4e4e50","thumb":"#83838c","radius":"4px"}},{"id":"dark","style":{"width":30,"height":30,"borderRadius":4,"outlineColor":"#3c3a3a","backgroundColor":"#3c3a3a","boxShadow":"20px 0px #848484 inset"},"value":{"track":"#3c3a3a","thumb":"#848484","radius":"4px"}}]},"data":[{"id":"track","access":"member","label":"__track__","defaultValue":"#e2e2e2"},{"label":"__thumb__","id":"thumb","access":"member","defaultValue":"#9e9e9e"},{"access":"member","label":"__radius__","id":"radius","unit":"px","defaultValue":4}]},{"label":"__title1__"},{"access":"member","id":"title1color","label":"__color__","defaultValue":"#1b1b1b"},{"label":"__title2__"},{"access":"member","id":"title2color","label":"__color__","defaultValue":"#1b1b1b"},{"label":"__title3__"},{"access":"member","id":"title3color","label":"__color__","defaultValue":"#1b1b1b"},{"label":"__title4__"},{"access":"member","id":"title4color","label":"__color__","defaultValue":"#1b1b1b"},{"label":"__title5__"},{"access":"member","id":"title5color","label":"__color__","defaultValue":"#1b1b1b"},{"label":"__title6__"},{"access":"member","id":"title6color","label":"__color__","defaultValue":"#1b1b1b"},{"label":"__codehighlight__"},{"label":"__codecomment__","id":"codecomment","defaultValue":"#697070"},{"label":"__codetag__","id":"codetag","defaultValue":"#4444aa"},{"label":"__codeattr__","id":"codeattr","defaultValue":"#4444aa"},{"access":"member","label":"__codenumber__","id":"codenumber","defaultValue":"#880000"},{"access":"member","label":"__codeblock__","id":"codeblock","defaultValue":"#880000"},{"access":"member","label":"__codevariable__","id":"codevariable","defaultValue":"#ab5656"},{"access":"member","label":"__codeliteral__","id":"codeliteral","defaultValue":"#669955"},{"label":"__codevalue__","id":"code","defaultValue":"#397300"},{"label":"__codemeta__","id":"codemeta","defaultValue":"#1f7199"},{"label":"__codestring__","id":"codestring","defaultValue":"#3388aa"}]},{"id":"render","label":"__title__","priority":20,"data":[{"min":0,"max":100,"step":1,"unit":"px","priority":0,"id":"padding","access":"member","defaultValue":80,"label":"__padding__","tooltip":"__padding_tooltip__"},{"min":0,"max":100,"step":1,"unit":"px","priority":10,"id":"margin","defaultValue":80,"label":"__margin__"},{"id":"paper","priority":20,"label":"__paper__","defaultValue":true},{"priority":30,"access":"member","id":"removefooter","label":"__removefooter__","defaultValue":false}]}]}},"i18n":{"en":{"title":"Rendering Engine","description":"Intelligent content layout","word_count":"$WORD_COUNT$ words","read_time":"$READ_TIME$ min read","exit":"Exit","exitclose":"Exit Completely","exitclose_tooltip":"Exit and close webpage","paper":"Paper Effect","paper_tooltip":"Paper-like background with border","cooperate":"Business Cooperation","agreement":"Terms of Service","privacy":"Privacy Policy","vote":"Rate Us","do_later":"Maybe Later","vote_desc":"Thank you for your support! If you like it, please give us a five-star rating 🤩","feedback":"Feedback","feedback_desc":"Sorry we couldn\'t meet your expectations. Please share your thoughts 🥲","expire_soon":"Your Pro account is expiring soon. Please renew to continue using all features","renew":"Renew","subscribe":"Love Circle Reader? Upgrade to Pro to support us","upgrade":"Upgrade to Pro for more features and enhanced experience","copyright":"Copyright belongs to $URL$. Circle Reader does not store or distribute content, only provides layout features to enhance reading experience","removefooter":"Remove Footer","margin":"Page Margin","padding":"Content Padding","padding_tooltip":"Only effective when paper effect is enabled","search_engine":"Search Engine","search_engine_tooltip":"Search engine for keyword links at the bottom of articles","baidu":"Baidu","sougou":"Sogou","bing":"Bing","google":"Google","display":"Appearance","night":"System Theme","night_tooltip":"Auto-switch appearance with system theme","style":"Style","default":"Default","compact":"Compact","narrow_page":"Narrow","wide_page":"Wide","custom":"Custom","font":"Default Font","cn_font":"Chinese Font","size":"Font Size","width":"Page Width","space":"Letter Spacing","lineheight":"Line Height","weight":"Font Weight","blockspace":"Paragraph Spacing","indent":"First Line Indent","titlealign":"Title Alignment","align":"Content Alignment","imagealign":"Image Alignment","align_left":"Left","align_center":"Center","align_right":"Right","align_justify":"Justify","imagehide":"Hide Images","download":"Download","title1":"Heading 1","title2":"Heading 2","title3":"Heading 3","title4":"Heading 4","title5":"Heading 5","title6":"Heading 6","codehighlight":"Code Block","theme":"Theme","color":"Font Color","link":"Link Color","hover":"Hover Color","hover_tooltip":"Color when hovering over links","visited":"Visited Color","visited_tooltip":"Color of visited links","select":"Text Selection Color","select_tooltip":"Color of selected text","selectbg":"Selection Background","selectbg_tooltip":"Background color of selected text","bg":"Background","solid":"Solid","gradient":"Gradient","bg_color":"Background Color","gradient_start":"Start Color","gradient_end":"End Color","gradient_angle":"Gradient Angle","image":"Image","scrollbar":"Scrollbar","track":"Track Color","thumb":"Thumb Color","radius":"Thumb Radius","codecomment":"Comment","codetag":"Tag","codeattr":"Attribute","codenumber":"Number","codeblock":"Block","codevariable":"Variable","codeliteral":"Literal","codevalue":"Value","codemeta":"Meta","codestring":"String","parser_fail":"Parsing Failed","parsering":"Intelligent parsing in progress, please wait...","wait_parser":"Layout not parsed yet, click the button below to start","smart_parser":"Smart Parse","power":"Enable \\"Remove Branding\\" for cleaner content output","ok":"Enable","cancel":"Don\'t Show Again","updated":"Update Available","updated_tooltip":"Circle Reader has been updated to v$VERSION$","changelog":"Changelog","detail":"Details","seal_new_user":"New user exclusive! 20% off for upgrading within 24 hours!","sale_old_user":"Limited-time promotion! Upgrade your account now!"},"ja":{"title":"レンダリングエンジン","description":"本文をインテリジェントにレイアウト","word_count":"全 $WORD_COUNT$ 文字","read_time":"読了時間 $READ_TIME$ 分","exit":"終了","exitclose":"完全終了","exitclose_tooltip":"終了してウェブページを閉じる","paper":"レター効果","paper_tooltip":"レター用紙のような背景と枠線","cooperate":"ビジネス協力","agreement":"利用規約","privacy":"プライバシーポリシー","vote":"評価する","do_later":"後で","vote_desc":"ご利用ありがとうございます。もしよろしければ、5つ星の評価をお願いします 🤩","feedback":"フィードバック","feedback_desc":"申し訳ありませんが、まだ十分な満足をいただけていないようです。ご意見をお聞かせください 🥲","expire_soon":"プロアカウントの有効期限が近づいています。継続してご利用いただくために、お早めに更新をお願いします","renew":"更新","subscribe":"Circle Readerがお気に入りですか?プロアカウントにアップグレードして私たちをサポートしてください","upgrade":"プロアカウントにアップグレードして、より多くの特典を解除し、使用体験を全体的に向上させましょう","copyright":"著作権は $URL$ に帰属します。Circle Readerはコンテンツを保存・配布せず、レイアウト機能のみを提供して読書体験を向上させます","removefooter":"フッターを削除","margin":"ページ外余白","padding":"ページ内余白","padding_tooltip":"レター効果が有効な場合のみ適用","search_engine":"検索エンジン","search_engine_tooltip":"記事下部のキーワードをクリックした際の検索エンジン","baidu":"百度","sougou":"搜狗","bing":"Bing","google":"Google","display":"表示","night":"システムに従う","night_tooltip":"システムに合わせて自動的に表示を切り替え","style":"スタイル","default":"デフォルト","compact":"コンパクト","narrow_page":"狭幅","wide_page":"広幅","custom":"カスタム","font":"デフォルトフォント","cn_font":"中国語フォント","size":"フォントサイズ","width":"ページ幅","space":"文字間隔","lineheight":"行間","weight":"フォントの太さ","blockspace":"段落間隔","indent":"段落の字下げ","titlealign":"見出しの配置","align":"内容の配置","imagealign":"画像の配置","align_left":"左寄せ","align_center":"中央揃え","align_right":"右寄せ","align_justify":"両端揃え","imagehide":"画像を非表示","download":"ダウンロード","title1":"見出し1","title2":"見出し2","title3":"見出し3","title4":"見出し4","title5":"見出し5","title6":"見出し6","codehighlight":"コードブロック","theme":"テーマ","color":"フォントの色","link":"リンクの色","hover":"ホバー時の色","hover_tooltip":"マウスをリンクに重ねた時の色","visited":"訪問済みの色","visited_tooltip":"訪問済みリンクの色","select":"選択テキストの色","select_tooltip":"カーソルで選択したテキストの色","selectbg":"選択範囲の色","selectbg_tooltip":"カーソルで選択した背景の色","bg":"背景","solid":"単色","gradient":"グラデーション","bg_color":"背景色","gradient_start":"開始色","gradient_end":"終了色","gradient_angle":"グラデーション角度","image":"画像","scrollbar":"スクロールバー","track":"トラックの色","thumb":"つまみの色","radius":"つまみの角丸","codecomment":"コメント","codetag":"タグ","codeattr":"属性","codenumber":"数値","codeblock":"ブロック","codevariable":"変数","codeliteral":"リテラル","codevalue":"値","codemeta":"メタ情報","codestring":"文字列","parser_fail":"解析に失敗しました","parsering":"インテリジェント解析中です。しばらくお待ちください...","wait_parser":"まだレイアウトが解析されていません。下のボタンをクリックして開始してください","smart_parser":"インテリジェント解析","power":"「ブランド表示の削除」を有効にして、よりクリーンなコンテンツ出力を実現","ok":"有効にする","cancel":"今後表示しない","updated":"バージョン更新","updated_tooltip":"Circle Readerが v$VERSION$ に更新されました","changelog":"更新履歴","detail":"詳細","seal_new_user":"新規ユーザー限定!24時間以内にアカウントをアップグレードすると20%割引!","sale_old_user":"期間限定プロモーション!今すぐアカウントをアップグレード!"},"ko":{"title":"렌더링 엔진","description":"본문을 지능적으로 레이아웃","word_count":"총 $WORD_COUNT$ 자","read_time":"읽는 데 $READ_TIME$ 분 소요","exit":"종료","exitclose":"완전 종료","exitclose_tooltip":"종료하고 웹페이지 닫기","paper":"레터 효과","paper_tooltip":"레터지 같은 배경과 테두리","cooperate":"비즈니스 협력","agreement":"이용약관","privacy":"개인정보처리방침","vote":"평가하기","do_later":"나중에","vote_desc":"이용해 주셔서 감사합니다. 가능하다면 5점 만점의 평가 부탁드립니다 🤩","feedback":"피드백","feedback_desc":"죄송합니다만, 아직 완벽한 만족을 드리지 못하고 있습니다. 의견을 들려주세요 🥲","expire_soon":"프로 계정 만료가 임박했습니다. 계속 이용하시려면 갱신해 주세요","renew":"갱신","subscribe":"Circle Reader가 마음에 드시나요? 프로 계정으로 업그레이드하여 우리를 지원해 주세요","upgrade":"프로 계정으로 업그레이드하여 더 많은 혜택을 받고 사용 경험을 전반적으로 향상시키세요","copyright":"저작권은 $URL$ 에 있습니다. Circle Reader는 콘텐츠를 저장하거나 배포하지 않으며, 레이아웃 기능만 제공하여 읽기 경험을 향상시킵니다","removefooter":"푸터 삭제","margin":"페이지 외부 여백","padding":"페이지 내부 여백","padding_tooltip":"레터 효과가 활성화된 경우에만 적용","search_engine":"검색 엔진","search_engine_tooltip":"글 하단의 키워드를 클릭했을 때의 검색 엔진","baidu":"바이두","sougou":"소우고우","bing":"빙","google":"구글","display":"표시","night":"시스템에 따르기","night_tooltip":"시스템에 맞춰 자동으로 표시 전환","style":"스타일","default":"기본","compact":"컴팩트","narrow_page":"좁은 너비","wide_page":"넓은 너비","custom":"사용자 정의","font":"기본 글꼴","cn_font":"중국어 글꼴","size":"글꼴 크기","width":"페이지 너비","space":"글자 간격","lineheight":"줄 간격","weight":"글꼴 굵기","blockspace":"단락 간격","indent":"들여쓰기","titlealign":"제목 정렬","align":"내용 정렬","imagealign":"이미지 정렬","align_left":"왼쪽 정렬","align_center":"가운데 정렬","align_right":"오른쪽 정렬","align_justify":"양쪽 정렬","imagehide":"이미지 숨기기","download":"다운로드","title1":"제목 1","title2":"제목 2","title3":"제목 3","title4":"제목 4","title5":"제목 5","title6":"제목 6","codehighlight":"코드 블록","theme":"테마","color":"글꼴 색상","link":"링크 색상","hover":"마우스 오버 색상","hover_tooltip":"마우스를 링크에 올렸을 때의 색상","visited":"방문한 링크 색상","visited_tooltip":"방문한 링크의 색상","select":"선택 텍스트 색상","select_tooltip":"커서로 선택한 텍스트의 색상","selectbg":"선택 영역 색상","selectbg_tooltip":"커서로 선택한 배경의 색상","bg":"배경","solid":"단색","gradient":"그라데이션","bg_color":"배경 색상","gradient_start":"시작 색상","gradient_end":"끝 색상","gradient_angle":"그라데이션 각도","image":"이미지","scrollbar":"스크롤바","track":"트랙 색상","thumb":"썸 색상","radius":"썸 모서리 둥글기","codecomment":"주석","codetag":"태그","codeattr":"속성","codenumber":"숫자","codeblock":"블록","codevariable":"변수","codeliteral":"리터럴","codevalue":"값","codemeta":"메타 정보","codestring":"문자열","parser_fail":"파싱 실패","parsering":"지능적 파싱 중입니다. 잠시만 기다려 주세요...","wait_parser":"아직 레이아웃이 파싱되지 않았습니다. 아래 버튼을 클릭하여 시작하세요","smart_parser":"지능적 파싱","power":"「브랜드 표시 제거」를 활성화하여 더 깨끗한 콘텐츠 출력을 얻으세요","ok":"활성화하기","cancel":"다시 표시하지 않기","updated":"버전 업데이트","updated_tooltip":"Circle Reader가 v$VERSION$ 로 업데이트되었습니다","changelog":"업데이트 내역","detail":"상세","seal_new_user":"신규 사용자 전용! 24시간 이내에 계정을 업그레이드하면 20% 할인!","sale_old_user":"한정 기간 프로모션! 지금 계정을 업그레이드하세요!"},"th":{"title":"เอนจิ้นแสดงผล","description":"จัดวางเนื้อหาอย่างอัจฉริยะ","word_count":"ทั้งหมด $WORD_COUNT$ ตัวอักษร","read_time":"ใช้เวลาอ่าน $READ_TIME$ นาที","exit":"ออก","exitclose":"ออกทั้งหมด","exitclose_tooltip":"ออกและปิดหน้าเว็บ","paper":"เอฟเฟกต์กระดาษ","paper_tooltip":"พื้นหลังและขอบเหมือนกระดาษจดหมาย","cooperate":"ความร่วมมือทางธุรกิจ","agreement":"ข้อตกลงผู้ใช้","privacy":"นโยบายความเป็นส่วนตัว","vote":"ให้คะแนน","do_later":"ภายหลัง","vote_desc":"ขอบคุณที่ใช้งาน หากเป็นไปได้ กรุณาให้คะแนน 5 ดาว 🤩","feedback":"ข้อเสนอแนะ","feedback_desc":"ขออภัยที่ยังไม่สามารถทำให้คุณพึงพอใจได้อย่างสมบูรณ์ กรุณาแจ้งความคิดเห็นของคุณ 🥲","expire_soon":"บัญชี Pro ใกล้หมดอายุ กรุณา续费เพื่อใช้งานต่อ","renew":"续费","subscribe":"ชอบ Circle Reader ไหม? อัปเกรดเป็นบัญชี Pro เพื่อสนับสนุนเรา","upgrade":"อัปเกรดเป็นบัญชี Pro เพื่อปลดล็อกสิทธิประโยชน์เพิ่มเติมและยกระดับประสบการณ์การใช้งานโดยรวม","copyright":"ลิขสิทธิ์เป็นของ $URL$ Circle Reader ไม่ได้จัดเก็บหรือแจกจ่ายเนื้อหา แต่ให้บริการจัดวางรูปแบบเพื่อยกระดับประสบการณ์การอ่าน","removefooter":"ลบส่วนท้าย","margin":"ระยะห่างภายนอกหน้า","padding":"ระยะห่างภายในหน้า","padding_tooltip":"ใช้ได้เมื่อเปิดใช้งานเอฟเฟกต์กระดาษ","search_engine":"เครื่องมือค้นหา","search_engine_tooltip":"เครื่องมือค้นหาที่ใช้เมื่อคลิกคำค้นหาที่ด้านล่างของบทความ","baidu":"Baidu","sougou":"Sogou","bing":"Bing","google":"Google","display":"การแสดงผล","night":"ตามระบบ","night_tooltip":"เปลี่ยนการแสดงผลอัตโนมัติตามระบบ","style":"สไตล์","default":"ค่าเริ่มต้น","compact":"กระชับ","narrow_page":"แคบ","wide_page":"กว้าง","custom":"กำหนดเอง","font":"ฟอนต์เริ่มต้น","cn_font":"ฟอนต์จีน","size":"ขนาดฟอนต์","width":"ความกว้างหน้า","space":"ระยะห่างตัวอักษร","lineheight":"ระยะห่างบรรทัด","weight":"ความหนาฟอนต์","blockspace":"ระยะห่างย่อหน้า","indent":"เยื้องย่อหน้า","titlealign":"จัดตำแหน่งหัวข้อ","align":"จัดตำแหน่งเนื้อหา","imagealign":"จัดตำแหน่งรูปภาพ","align_left":"ชิดซ้าย","align_center":"กึ่งกลาง","align_right":"ชิดขวา","align_justify":"เต็มความกว้าง","imagehide":"ซ่อนรูปภาพ","download":"ดาวน์โหลด","title1":"หัวข้อ 1","title2":"หัวข้อ 2","title3":"หัวข้อ 3","title4":"หัวข้อ 4","title5":"หัวข้อ 5","title6":"หัวข้อ 6","codehighlight":"บล็อกโค้ด","theme":"ธีม","color":"สีฟอนต์","link":"สีลิงก์","hover":"สีเมื่อวางเมาส์","hover_tooltip":"สีเมื่อวางเมาส์บนลิงก์","visited":"สีลิงก์ที่เข้าชมแล้ว","visited_tooltip":"สีของลิงก์ที่เข้าชมแล้ว","select":"สีข้อความที่เลือก","select_tooltip":"สีของข้อความที่เลือกด้วยเคอร์เซอร์","selectbg":"สีพื้นหลังที่เลือก","selectbg_tooltip":"สีพื้นหลังของข้อความที่เลือกด้วยเคอร์เซอร์","bg":"พื้นหลัง","solid":"สีเดียว","gradient":"ไล่สี","bg_color":"สีพื้นหลัง","gradient_start":"สีเริ่มต้น","gradient_end":"สีสิ้นสุด","gradient_angle":"มุมไล่สี","image":"รูปภาพ","scrollbar":"แถบเลื่อน","track":"สีแถบเลื่อน","thumb":"สีปุ่มเลื่อน","radius":"ความโค้งมนของปุ่มเลื่อน","codecomment":"ความคิดเห็น","codetag":"แท็ก","codeattr":"แอตทริบิวต์","codenumber":"ตัวเลข","codeblock":"บล็อก","codevariable":"ตัวแปร","codeliteral":"ค่าคงที่","codevalue":"ค่า","codemeta":"ข้อมูลเมตา","codestring":"สตริง","parser_fail":"การแยกวิเคราะห์ล้มเหลว","parsering":"กำลังแยกวิเคราะห์อย่างอัจฉริยะ กรุณารอสักครู่...","wait_parser":"ยังไม่ได้แยกวิเคราะห์การจัดวาง กรุณาคลิกปุ่มด้านล่างเพื่อเริ่ม","smart_parser":"แยกวิเคราะห์อย่างอัจฉริยะ","power":"เปิดใช้งาน「ลบโลโก้แบรนด์」เพื่อให้ได้ผลลัพธ์ที่สะอาดขึ้น","ok":"เปิดใช้งาน","cancel":"ไม่แสดงอีก","updated":"อัปเดตเวอร์ชัน","updated_tooltip":"Circle Reader อัปเดตเป็นเวอร์ชัน v$VERSION$","changelog":"รายการเปลี่ยนแปลง","detail":"รายละเอียด","seal_new_user":"สำหรับผู้ใช้ใหม่เท่านั้น! ลด 20% เมื่ออัปเกรดบัญชีภายใน 24 ชั่วโมง!","sale_old_user":"โปรโมชั่นช่วงเวลาจำกัด! อัปเกรดบัญชีของคุณตอนนี้เลย!"},"zh-CN":{"title":"渲染引擎","description":"智能对正文进行排版","word_count":"共 $WORD_COUNT$ 字","read_time":"阅读需 $READ_TIME$ 分钟","exit":"退出","exitclose":"彻底退出","exitclose_tooltip":"退出并关闭网页","paper":"信纸效果","paper_tooltip":"类似信纸背景边框","cooperate":"商业合作","agreement":"用户协议","privacy":"隐私政策","vote":"去好评","do_later":"以后再说","vote_desc":"感谢您的喜欢,如果可以,烦请给我们一个五星好评 🤩","feedback":"去反馈","feedback_desc":"很抱歉目前我们还不能让您十分满意,不妨告诉我们您的想法 🥲","expire_soon":"专业帐户即将到期,为了不影响使用,请及时续费","renew":"续费","subscribe":"喜欢 Circle 阅读助手?欢迎升级为专业帐户来支持我们","upgrade":"升级为专业帐户解锁更多权益,全面提升使用体验","copyright":"版权归 $URL$ 所有,Circle 阅读助手不存储和分发内容,仅提供排版功能来提升阅读体验","removefooter":"删除页脚","margin":"页外边距","padding":"页内边距","padding_tooltip":"纸张效果启用之后才生效","search_engine":"搜索引擎","search_engine_tooltip":"点击文章底部的关键字跳转的搜索引擎","baidu":"百度","sougou":"搜狗","bing":"必应","google":"Google","display":"外观","night":"跟随系统","night_tooltip":"跟随系统自动切换外观","style":"样式","default":"默认","compact":"紧凑","narrow_page":"窄幅","wide_page":"宽幅","custom":"自定义","font":"默认字体","cn_font":"中文字体","size":"字体大小","width":"页面宽度","space":"字体间距","lineheight":"字体行高","weight":"字体粗细","blockspace":"段落间距","indent":"首行缩进","titlealign":"标题对齐","align":"内容对齐","imagealign":"图片对齐","align_left":"左对齐","align_center":"居中对齐","align_right":"右对齐","align_justify":"两端对齐","imagehide":"隐藏图片","download":"下载","title1":"一级标题","title2":"二级标题","title3":"三级标题","title4":"四级标题","title5":"五级标题","title6":"六级标题","codehighlight":"代码块","theme":"主题","color":"字体颜色","link":"链接颜色","hover":"放置颜色","hover_tooltip":"鼠标放置链接的颜色","visited":"访问颜色","visited_tooltip":"已访问链接的颜色","select":"选文颜色","select_tooltip":"光标选择文字颜色","selectbg":"选区颜色","selectbg_tooltip":"光标选择背景颜色","bg":"背景","solid":"纯色","gradient":"渐变","bg_color":"背景颜色","gradient_start":"开始颜色","gradient_end":"结束颜色","gradient_angle":"渐变角度","image":"图片","scrollbar":"滚动条","track":"滑轨颜色","thumb":"滑块颜色","radius":"滑块圆角","codecomment":"注释","codetag":"标记","codeattr":"属性","codenumber":"数字","codeblock":"区块","codevariable":"变量","codeliteral":"循环","codevalue":"文本","codemeta":"元信息","codestring":"字符串","parser_fail":"解析失败","parsering":"正在智能解析中,请稍候...","wait_parser":"尚未解析排版,点击下方按钮开始","smart_parser":"智能解析","power":"开启“移除品牌标识”,获得更纯净的内容输出","ok":"去开启","cancel":"不再提示","updated":"版本更新","updated_tooltip":"Circle 阅读助手已更新到 v$VERSION$","changelog":"更新日志","detail":"详情","seal_new_user":"新用户专享!限时一天内升级账户,立享八折优惠!","sale_old_user":"限时促销中,立即升级您的帐户!"},"zh-TW":{"title":"渲染引擎","description":"智慧對正文進行排版","word_count":"共 $WORD_COUNT$ 字","read_time":"閱讀需 $READ_TIME$ 分鐘","exit":"退出","exitclose":"徹底退出","exitclose_tooltip":"退出並關閉網頁","paper":"信紙效果","paper_tooltip":"類似信紙背景邊框","cooperate":"商業合作","agreement":"使用者協定","privacy":"隱私政策","vote":"去好評","do_later":"以後再說","vote_desc":"感謝您的喜歡,如果可以,煩請給我們一個五星好評 🤩","feedback":"去迴響","feedback_desc":"很抱歉現時我們還不能讓您十分滿意,不妨告訴我們您的想法 🥲","expire_soon":"高級帳戶即將來臨,為了不影響使用,請及時續費","renew":"續費","subscribe":"喜歡Circle閱讀助手? 歡迎陞級為高級帳戶支持我們","upgrade":"升級為專業帳戶解鎖更多權益,全面提升使用體驗","copyright":"版權歸 $URL$ 所有,Circle閱讀助手不存儲和分發內容,僅提供排版功能來提升閱讀體驗","removefooter":"删除頁腳","margin":"頁外邊距","padding":"頁內邊距","padding_tooltip":"紙張效果啟用之後才生效","search_engine":"搜尋引擎","search_engine_tooltip":"點擊文章底部的關鍵字跳轉的搜尋引擎","baidu":"百度","sougou":"搜狗","bing":"必應","google":"Google","display":"外觀","night":"深色模式","night_tooltip":"跟隨系統深色模式設定自動切換","style":"樣式","default":"預設","compact":"緊湊","narrow_page":"窄幅","wide_page":"寬幅","custom":"自訂","font":"字體","cn_font":"中文字體","size":"大小","width":"寬度","space":"間距","lineheight":"行高","weight":"粗細","blockspace":"段落間距","indent":"縮排","titlealign":"標題對齊","align":"對齊","imagealign":"圖片對齊","align_left":"靠左對齊","align_center":"置中對齊","align_right":"靠右對齊","align_justify":"左右對齊","imagehide":"隱藏圖片","download":"下載","title1":"標題 1","title2":"標題 2","title3":"標題 3","title4":"標題 4","title5":"標題 5","title6":"標題 6","codehighlight":"程式碼高亮","theme":"主題","color":"顏色","link":"連結顏色","hover":"滑鼠移入顏色","hover_tooltip":"滑鼠移入連結時的顏色","visited":"已訪問顏色","visited_tooltip":"已訪問連結的顏色","select":"選取顏色","select_tooltip":"選取文字時的顏色","selectbg":"選取背景色","selectbg_tooltip":"選取文字時的背景顏色","bg":"背景","solid":"純色","gradient":"漸層","bg_color":"背景顏色","gradient_start":"起始顏色","gradient_end":"結束顏色","gradient_angle":"漸層角度","image":"圖片","scrollbar":"捲軸","track":"軌道顏色","thumb":"滑塊顏色","radius":"圓角","codecomment":"註解","codetag":"標籤","codeattr":"屬性","codenumber":"數字","codeblock":"區塊","codevariable":"變數","codeliteral":"常數","codevalue":"值","codemeta":"元資料","codestring":"字串","parser_fail":"解析失敗","parsering":"正在智慧解析中,請稍候…","wait_parser":"尚未解析排版,點擊下方按鈕開始","smart_parser":"智慧解析","power":"開啟「移除品牌標識」,獲得更純淨的內容輸出","ok":"去開啟","cancel":"不再提示","updated":"版本更新","updated_tooltip":"Circle 閱讀助手已更新至 v$VERSION$","changelog":"更新日誌","detail":"詳情","seal_new_user":"新用戶專屬!限時一天內升級帳戶,可享八折優惠!","sale_old_user":"限時促銷中,立即升級您的帳戶!"}}},{"id":"remove","type":"plugin","version":"1.0.0","title":"__title__","priority":90,"description":"__description__","dependencies":["rule"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"remove","label":"__title__","defaultValue":{"value":"c l"}}],"toolbar":[{"group":5,"id":"remove","label":"__title__","defaultValue":{"checked":true,"value":"ClearOutlined"}}]},"i18n":{"en":{"title":"Remove Content","description":"Delete unwanted content. Use \'Rules\' to remember selections","got_it":"Got it","alert":"Slide mouse to select content to delete, click to confirm. Run \'Remove Content\' again or click blank areas on both sides to exit~"},"ja":{"title":"コンテンツ削除","description":"不要なコンテンツを削除。\'ルール\'を使用して選択を記憶","got_it":"了解しました","alert":"マウスをスライドして削除するコンテンツを選択し、クリックして確認。\'コンテンツ削除\'を再度実行するか、ページ両側の空白部分をクリックして終了~"},"ko":{"title":"내용 제거","description":"불필요한 내용 삭제. \'규칙\'을 사용하여 선택 사항 기억","got_it":"알겠습니다","alert":"마우스를 슬라이드하여 삭제할 내용을 선택하고 클릭하여 확인. \'내용 제거\' 작업을 다시 실행하거나 페이지 양쪽의 빈 영역을 클릭하여 종료~"},"th":{"title":"ลบเนื้อหา","description":"ลบเนื้อหาที่ไม่ต้องการออก ด้วย \\"กฎ\\" คุณสามารถจำเลือกได้","got_it":"ฉันเข้าใจแล้ว","alert":"เลื่อนเมาส์เพื่อเลือกเนื้อหาที่จะลบ คลิกยืนยันเพื่อลบ เรียกใช้การดำเนินการ \\"ลบเนื้อหา\\" อีกครั้งหรือคลิกพื้นที่ว่างทั้งสองด้านของหน้าเพื่อออก~"},"zh-CN":{"title":"移除内容","description":"删除不需要的内容。配合 “规则” 可以记住选择","got_it":"我知道了","alert":"滑动鼠标选择需要删除的内容,点击确认删除。再次运行“移除内容”操作或者点击页面两侧空白区域可以退出哦~"},"zh-TW":{"title":"移除內容","description":"刪除不需要的內容。配合 “規則” 可以記住選擇","got_it":"我知道了","alert":"滑動鼠標選擇需要刪除的內容,點擊確認刪除。再次運行“移除內容”操作或者點擊頁面兩側空白區域可以退出哦~"}}},{"id":"print","type":"plugin","version":"1.0.0","title":"__title__","priority":30,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"print","label":"__title__","defaultValue":{"value":"p p"}}],"toolbar":[{"group":0,"id":"print","label":"__title__","defaultValue":{"checked":true,"value":"PrinterOutlined"}}]},"i18n":{"en":{"title":"Print","description":"Call browser\'s print service","alert":"Enable \\"Remove Footer\\" for better printing results","got_it":"Enable Now"},"ja":{"title":"印刷","description":"ブラウザの印刷サービスを呼び出す","alert":"「フッター削除」機能を有効にすると、より良い印刷結果が得られます","got_it":"有効にする"},"ko":{"title":"인쇄","description":"브라우저 인쇄 서비스 호출","alert":"더 나은 인쇄 결과를 위해 \\"바닥글 제거\\" 기능을 활성화하세요","got_it":"활성화하기"},"th":{"title":"พิมพ์","description":"เรียกใช้บริการพิมพ์ของเบราว์เซอร์","alert":"เปิดใช้งานฟังก์ชัน \\"ลบส่วนท้าย\\" เพื่อผลลัพธ์การพิมพ์ที่ดีขึ้น","got_it":"เปิดใช้งาน"},"zh-CN":{"title":"打印","description":"调用浏览器的打印服务","alert":"启用“删除页脚”功能,打印效果更佳","got_it":"去启用"},"zh-TW":{"title":"列印","description":"調用瀏覽器的列印服務","alert":"啟用「刪除頁尾」功能,列印效果更佳","got_it":"去啟用"}}},{"id":"parse","type":"plugin","version":"1.0.0","title":"__title__","runAt":"parse","core":true,"enabled":true,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"option":[{"id":"parse","priority":0,"label":"__title__","data":[{"id":"fields","access":"member","mode":"multiple","label":"__field__","tooltip":"__field_tooltip__","defaultValue":[],"data":[{"value":"modified","label":"__modified__"},{"value":"published","label":"__published__"},{"value":"author","label":"__author__"},{"value":"excerpt","label":"__excerpt__"},{"value":"read_time","label":"__read_time__"},{"value":"word_count","label":"__word_count__"},{"value":"cover","label":"__cover__"},{"value":"tags","label":"__tags__"}]},{"id":"keep","access":"member","label":"__keep__","tooltip":"__keep_tooltip__","defaultValue":false}]}],"keys":[{"id":"enter_or_exit","label":"__enter_or_exit__","defaultValue":{"value":"a a","checked":true}}],"menu":[{"id":"enter_or_exit","label":"__enter_or_exit__","defaultValue":{"checked":true}}]},"i18n":{"en":{"title":"Parsing Engine","description":"Intelligent content recognition and parsing","wait":"Intelligent content parsing in progress, please wait...","heading":"Title","modified":"Last Modified","published":"Published Date","author":"Author","excerpt":"Description","read_time":"Reading Time","word_count":"Word Count","cover":"Featured Image","tags":"Tags","enter_or_exit":"Enter/Exit","field":"Additional Fields","field_tooltip":"Display when selected fields are detected","keep":"Preserve Format","keep_tooltip":"Keep empty elements and line breaks in content"},"ja":{"title":"解析エンジン","description":"本文のインテリジェントな認識と解析","wait":"本文をインテリジェントに解析しようとしています。しばらくお待ちください。","heading":"タイトル","modified":"日付の変更","published":"リリース日","author":"作者の","excerpt":"説明する","read_time":"読むとき","word_count":"文字数の統計","cover":"メイン画像","tags":"タグ","enter_or_exit":"入る/出る","field":"その他のフィールド","field_tooltip":"選択されたフィールドが識別されたときに表示されます","keep":"フォーマットの保持","keep_tooltip":"本文中の空白要素や改行などを修正しない"},"ko":{"title":"분석 엔진","description":"텍스트의 지능적 인식 및 분석","wait":"텍스트를 지능적으로 구문 분석하려고 합니다. 기다려 주십시오~","heading":"제목","modified":"수정 날짜","published":"출시일","author":"저자","excerpt":"설명","read_time":"독서 시간","word_count":"단어 수","cover":"메인 이미지","tags":"레이블","enter_or_exit":"입력/종료","field":"더 많은 분야","field_tooltip":"선택된 필드가 식별되면 표시됩니다","keep":"형식 유지","keep_tooltip":"본문의 빈 요소와 줄 바꿈 등은 수정하지 않음"},"th":{"title":"เอ็นจิ้นการวิเคราะห์","description":"ระบุและวิเคราะห์ข้อความอย่างชาญฉลาด","wait":"กำลังพยายามแยกวิเคราะห์ข้อความอย่างชาญฉลาด โปรดรอสักครู่~","heading":"ชื่อเรื่อง","modified":"แก้ไขวันที่","published":"วันที่วางจำหน่าย","author":"ผู้เขียน","excerpt":"คำอธิบาย","read_time":"เวลาอ่าน","word_count":"สถิติคำ","cover":"ภาพหลัก","tags":"ฉลาก","enter_or_exit":"เข้า / ออก","field":"ฟิลด์เพิ่มเติม","field_tooltip":"แสดงเมื่อระบุฟิลด์ที่เลือก","keep":"รักษารูปแบบ","keep_tooltip":"ไม่มีการแก้ไของค์ประกอบที่ว่างเปล่าและตัวแบ่งบรรทัด ฯลฯ ในเนื้อความ"},"zh-CN":{"title":"解析引擎","description":"智能识别和解析正文","wait":"正在尝试智能解析正文,请稍候~","heading":"标题","modified":"修改日期","published":"发布日期","author":"作者","excerpt":"描述","read_time":"阅读用时","word_count":"字数统计","cover":"主图","tags":"标签","enter_or_exit":"进入/退出","field":"更多字段","field_tooltip":"识别到被选中的字段时显示","keep":"保留格式","keep_tooltip":"不修正正文中的空元素和换行符等"},"zh-TW":{"title":"解析引擎","description":"智能識別和解析正文","wait":"正在嘗試智能解析正文,請稍候~","heading":"標題","modified":"修改日期","published":"發佈日期","author":"作者","excerpt":"描述","read_time":"閱讀用時","word_count":"字數統計","cover":"主圖","tags":"標籤","enter_or_exit":"進入/退出","field":"更多字段","field_tooltip":"識別到被選取的欄位時顯示","keep":"保留格式","keep_tooltip":"不修正正文中的空元素和分行符號等"}}},{"id":"outline","type":"plugin","version":"1.0.0","title":"__title__","runAt":"render_done","priority":110,"description":"__description__","dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"option":[{"id":"outline","priority":110,"label":"__title__","data":[{"id":"layout","access":"member","label":"__layout__","tooltip":"__layout_tooltip__","defaultValue":false},{"id":"links","label":"__links__","tooltip":"__links_tooltip__","defaultValue":true}]}]},"i18n":{"en":{"title":"Article Outline","description":"Display intelligently recognized table of contents and related links on the left side of the content","layout":"Print Layout","layout_tooltip":"Show outline at the top of content when printing","links":"Related Links","links_tooltip":"Show related links below the outline when available"},"ja":{"title":"目次","description":"本文の左側にインテリジェントに認識された目次と関連リンクを表示します","layout":"印刷レイアウト","layout_tooltip":"印刷時に本文の上部に目次を表示します","links":"関連リンク","links_tooltip":"関連リンクがある場合、目次の下に表示します"},"ko":{"title":"문서 개요","description":"AI 생성 목차 표시","layout":"레이아웃 유지","layout_tooltip":"인쇄 시 개요 표시","links":"관련 링크","links_tooltip":"링크 존재 시 개요 아래 표시"},"th":{"title":"สารบัญ","description":"แสดงสารบัญและลิงก์ที่เกี่ยวข้องที่ด้านซ้ายของเนื้อหา","layout":"เค้าโครงการพิมพ์","layout_tooltip":"แสดงสารบัญที่ด้านบนของเนื้อหาเมื่อพิมพ์","links":"ลิงก์ที่เกี่ยวข้อง","links_tooltip":"แสดงลิงก์ที่เกี่ยวข้องใต้สารบัญเมื่อมี"},"zh-CN":{"title":"文章大纲","description":"正文左侧展示智能识别的目录和相关链接","layout":"打印保留","layout_tooltip":"打印时正文顶部展示大纲","links":"相关链接","links_tooltip":"存在相关链接时展示在大纲下面"},"zh-TW":{"title":"文章大綱","description":"正文左側顯示智慧識別的目錄和相關連結","layout":"列印版面配置","layout_tooltip":"列印時在正文頂部顯示大綱","links":"相關連結","links_tooltip":"有相關連結時顯示在大綱下方"}}},{"id":"notice","type":"plugin","version":"1.0.0","title":"__title__","core":true,"enabled":true,"priority":3,"description":"__description__","dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"option":[{"id":"notice","label":"__title__","data":[{"access":"member","id":"placement","defaultValue":"top","label":"__placement__","data":[{"label":"__top__","value":"top"},{"label":"__bottom__","value":"bottom"},{"label":"__top_left__","value":"topLeft"},{"label":"__top_right__","value":"topRight"},{"label":"__bottom_left__","value":"bottomLeft"},{"label":"__bottom_right__","value":"bottomRight"}]},{"defaultValue":true,"id":"close_animation","label":"__autoclose_animation__","tooltip":"__autoclose_tooltip__"}]}]},"i18n":{"en":{"title":"Notification","description":"Message notification box that appears on the page","placement":"Display Position","top":"Top","bottom":"Bottom","top_left":"Top Left","top_right":"Top Right","bottom_left":"Bottom Left","bottom_right":"Bottom Right","ok":"OK","cancel":"Cancel","autoclose_animation":"Close Animation","autoclose_tooltip":"Progress animation for auto-closing notifications"},"ja":{"title":"通知","description":"システム通知の表示と管理","placement":"表示される場所","top":"トップへ","bottom":"底に","top_left":"左上の部分","top_right":"右上部","bottom_left":"左下の部分","bottom_right":"右下","unread":"未読","read":"既読","click_read_more":"通知をクリックして詳細を表示","empty":"通知なし","remove":"通知を削除","ok":"削除","cancel":"キャンセル","autoclose_animation":"アニメーションを閉じる","autoclose_tooltip":"自動オフプロンプトボックスによる進行状況のアニメーションの表示"},"ko":{"title":"알림","description":"페이지에 표시되는 메시지 알림","placement":"표시 위치","top":"상단","bottom":"하단","top_left":"좌상단","top_right":"우상단","bottom_left":"좌하단","bottom_right":"우하단","ok":"확인","cancel":"취소","autoclose_animation":"닫기 애니메이션","autoclose_tooltip":"자동 닫힘 알림의 진행 상태 애니메이션"},"th":{"title":"การแจ้งเตือน","description":"กล่องข้อความแจ้งเตือนที่ปรากฏบนหน้าเว็บ","placement":"ตำแหน่งการแสดงผล","top":"ด้านบน","bottom":"ด้านล่าง","top_left":"บนซ้าย","top_right":"บนขวา","bottom_left":"ล่างซ้าย","bottom_right":"ล่างขวา","ok":"ตกลง","cancel":"ยกเลิก","autoclose_animation":"แอนิเมชันปิด","autoclose_tooltip":"แอนิเมชันความคืบหน้าสำหรับการแจ้งเตือนที่ปิดอัตโนมัติ"},"zh-CN":{"title":"消息提示框","description":"出现在页面的消息提示框","placement":"出现的位置","top":"顶部","bottom":"底部","top_left":"左上部","top_right":"右上部","bottom_left":"左下部","bottom_right":"右下部","ok":"好的","cancel":"取消","autoclose_animation":"关闭动画","autoclose_tooltip":"自动关闭的提示框展示进度动画"},"zh-TW":{"title":"訊息提示框","description":"出現在頁面的訊息提示框","placement":"出現的位置","top":"頂部","bottom":"底部","top_left":"左上部","top_right":"右上部","bottom_left":"左下部","bottom_right":"右下部","ok":"確定","cancel":"取消","autoclose_animation":"關閉動畫","autoclose_tooltip":"自動關閉的提示框展示進度動畫"}}},{"id":"nextpage","type":"plugin","version":"1.0.0","title":"__title__","runAt":"render_done","priority":430,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","i18n":{"en":{"title":"Multi-page Parser","description":"Automatically load and append next page content to the current page","refresh":"Please refresh the page for multi-page parsing to take effect"},"ja":{"title":"複数ページ解析","description":"次のページの内容を自動的に読み込んで現在のページに追加します","refresh":"複数ページ解析を有効にするには、ページを更新してください"},"ko":{"title":"다중 페이지 파싱","description":"다음 페이지의 내용을 자동으로 로드하여 현재 페이지에 추가합니다","refresh":"다중 페이지 파싱을 적용하려면 페이지를 새로고침하세요"},"th":{"title":"วิเคราะห์หลายหน้า","description":"โหลดและเพิ่มเนื้อหาจากหน้าถัดไปโดยอัตโนมัติ","refresh":"กรุณารีเฟรชหน้าเว็บเพื่อให้การวิเคราะห์หลายหน้าทำงาน"},"zh-CN":{"title":"多页解析","description":"自动加载下一页的内容追加到当前页面","refresh":"刷新页面多页解析才会生效哦~"},"zh-TW":{"title":"多頁解析","description":"自動載入下一頁的內容並附加到當前頁面","refresh":"請重新整理頁面以啟用多頁解析功能"}}},{"id":"migrate","type":"plugin","version":"1.0.0","title":"__title__","core":true,"enabled":true,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","i18n":{"en":{"title":"Data Migration","description":"Compatible with legacy version configurations during import"},"ja":{"title":"データ移行","description":"インポート時に旧バージョンの設定に対応"},"ko":{"title":"데이터 마이그레이션","description":"가져오기 시 이전 버전 설정과 호환"},"th":{"title":"การโยกย้ายข้อมูล","description":"เข้ากันได้กับการกำหนดค่าของรุ่นเก่าเมื่อนำเข้า"},"zh-CN":{"title":"数据迁移","description":"导入时兼容老版本的配置"},"zh-TW":{"title":"資料遷移","description":"匯入時相容舊版本的設定"}}},{"id":"message","type":"plugin","version":"1.0.0","title":"__title__","core":true,"enabled":true,"priority":300,"description":"__description__","dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"toolbar":[{"group":25,"id":"message","label":"__title__","defaultValue":{"checked":true,"value":"BellOutlined"}}]},"i18n":{"en":{"title":"Message Center","description":"View and manage system messages","unread":"Unread","read":"Read","click_read_more":"Click message to view details","empty":"No messages","remove":"Delete Message","ok":"Delete","cancel":"Cancel"},"ja":{"title":"メッセージセンター","description":"システムメッセージの表示と管理","unread":"未読","read":"既読","click_read_more":"メッセージをクリックして詳細を表示","empty":"メッセージなし","remove":"メッセージを削除","ok":"削除","cancel":"キャンセル"},"ko":{"title":"메시지 센터","description":"시스템 메시지 보기 및 관리","unread":"읽지 않음","read":"읽음","click_read_more":"메시지를 클릭하여 자세히 보기","empty":"메시지 없음","remove":"메시지 삭제","ok":"삭제","cancel":"취소"},"th":{"title":"ศูนย์ข้อความ","description":"ดูและจัดการข้อความระบบ","unread":"ยังไม่ได้อ่าน","read":"อ่านแล้ว","click_read_more":"คลิกข้อความเพื่อดูรายละเอียด","empty":"ไม่มีข้อความ","remove":"ลบข้อความ","ok":"ลบ","cancel":"ยกเลิก"},"zh-CN":{"title":"消息中心","description":"查看和管理系统消息","unread":"未读","read":"已读","click_read_more":"点击消息查看详情吧","empty":"暂无数据","remove":"删除消息","ok":"删除","cancel":"取消"},"zh-TW":{"title":"消息中心","description":"查看和管理系統消息","unread":"未讀","read":"已讀","click_read_more":"點擊消息查看詳情吧","empty":"暫無數據","remove":"删除消息","ok":"删除","cancel":"取消"}}},{"id":"math","type":"plugin","version":"1.0.0","title":"__title__","priority":235,"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","i18n":{"en":{"title":"Math Formula Support"},"ja":{"title":"数式サポート"},"ko":{"title":"수학 공식 지원"},"th":{"title":"รองรับสูตรคณิตศาสตร์"},"zh-CN":{"title":"数学公式支持"},"zh-TW":{"title":"數學公式支援"}}},{"id":"marked","type":"plugin","version":"1.0.0","title":"__title__","core":true,"enabled":true,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","i18n":{"en":{"title":"Convert to Markdown","description":"Powered by Turndown, provides markdown conversion capabilities for other plugins"},"ja":{"title":"Markdownに変換","description":"Turndownを搭載し、他のプラグインにMarkdown変換機能を提供"},"ko":{"title":"Markdown으로 변환","description":"Turndown 기반으로 다른 플러그인에 마크다운 변환 기능 제공"},"th":{"title":"แปลงเป็น Markdown","description":"ขับเคลื่อนด้วย Turndown ให้ความสามารถในการแปลง Markdown สำหรับปลั๊กอินอื่นๆ"},"zh-CN":{"title":"转换内容为 markdown","description":"基于 Turndown 实现,仅为其他插件提供能力"},"zh-TW":{"title":"轉換內容爲 markdown","description":"基於 Turndown 實現,僅爲其他插件提供能力"}}},{"id":"manual","type":"plugin","version":"1.0.0","title":"__title__","core":true,"enabled":true,"priority":110,"description":"__description__","dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"manual","label":"__title__","defaultValue":{"value":"h l"}}],"menu":[{"id":"manual","label":"__title__"}],"toolbar":[{"group":5,"id":"manual","label":"__title__","defaultValue":{"checked":true,"value":"SelectOutlined"}}]},"i18n":{"en":{"title":"Manual Selection","description":"Assist in recognizing text when there is a recognition error. Can remember selections when combined with \\"Rules\\"","back":"Back","guide":"Please slide the mouse to select the \\"$LABEL$\\" element on the page","ok":"Done","cancel":"Cancel","element":"Element","selector":"Selector","action":"Operation","edit":"Edit","remove":"Delete","choose":"Select","heading":"Title","author":"Author","published":"Publish Time","modified":"Update Time","excerpt":"Summary","cover":"Main Image","content":"Main Text","tags":"Tags","next":"Next Page","fold":"Collapse","unfold":"Select More","content_require":"Main text cannot be empty","try_manual":"Intelligent parsing failed, please manually select the text to assist identification.","enable":"Turn on","enable_fields":"Enable \\"More Fields\\" to access additional information."},"ja":{"title":"手動選択","description":"コンテンツ解析に失敗した場合、手動でコンテンツを選択できます。「ルール」と組み合わせることで選択を保存できます","back":"戻る","guide":"マウスをドラッグしてページ上の $LABEL$ 要素を選択してください","ok":"確定","cancel":"キャンセル","element":"要素","selector":"セレクタ","action":"アクション","edit":"編集","remove":"削除","choose":"選択","heading":"見出し","author":"作成者","published":"公開日時","modified":"更新日時","excerpt":"概要","cover":"カバー画像","content":"コンテンツ","tags":"タグ","next":"次ページ","fold":"折りたたみ","unfold":"展開","content_require":"コンテンツは必須です","try_manual":"自動解析に失敗しました。手動でコンテンツを選択してください","enable":"オンにする","enable_fields":"「詳細フィールド」を有効にすると、より多くの情報を選択できます。"},"ko":{"title":"수동 선택","description":"콘텐츠 파싱이 실패한 경우 수동으로 콘텐츠를 선택할 수 있습니다. \'규칙\'과 함께 사용하여 선택을 저장할 수 있습니다","back":"뒤로","guide":"마우스를 드래그하여 페이지의 $LABEL$ 요소를 선택하세요","ok":"확인","cancel":"취소","element":"요소","selector":"선택자","action":"액션","edit":"편집","remove":"삭제","choose":"선택","heading":"제목","author":"작성자","published":"게시 일시","modified":"수정 일시","excerpt":"요약","cover":"커버 이미지","content":"콘텐츠","tags":"태그","next":"다음 페이지","fold":"접기","unfold":"펼치기","content_require":"콘텐츠는 필수입니다","try_manual":"자동 파싱이 실패했습니다. 수동으로 콘텐츠를 선택하세요","enable":"켜기","enable_fields":"\\"더 많은 필드\\"를 활성화하면 추가 정보를 선택할 수 있습니다."},"th":{"title":"เลือกด้วยตนเอง","description":"เมื่อการแยกวิเคราะห์เนื้อหาล้มเหลว คุณสามารถเลือกเนื้อหาด้วยตนเองได้ ใช้ \\"กฎ\\" เพื่อบันทึกการเลือกของคุณ","back":"กลับ","guide":"กรุณาลากเมาส์เพื่อเลือกองค์ประกอบ $LABEL$ บนหน้าเว็บ","ok":"ยืนยัน","cancel":"ยกเลิก","element":"องค์ประกอบ","selector":"ตัวเลือก","action":"การดำเนินการ","edit":"แก้ไข","remove":"ลบ","choose":"เลือก","heading":"หัวข้อ","author":"ผู้สร้าง","published":"วันที่เผยแพร่","modified":"วันที่แก้ไข","excerpt":"สรุป","cover":"รูปภาพปก","content":"เนื้อหา","tags":"แท็ก","next":"หน้าถัดไป","fold":"ย่อ","unfold":"ขยาย","content_require":"เนื้อหาเป็นสิ่งจำเป็น","try_manual":"การแยกวิเคราะห์อัตโนมัติล้มเหลว กรุณาเลือกเนื้อหาด้วยตนเอง","enable":"เปิดใช้งาน","enable_fields":"เปิดใช้ \\"ฟิลด์เพิ่มเติม\\" เพื่อเลือกข้อมูลเพิ่มเติม"},"zh-CN":{"title":"手动选择","description":"正文识别错误的时候,辅助识别正文。配合 \\"规则\\" 可以记住选择","back":"返回","guide":"请滑动鼠标选择页面上的 $LABEL$ 元素","ok":"完成","cancel":"取消","element":"元素","selector":"选择器","action":"操作","edit":"编辑","remove":"删除","choose":"选择","heading":"标题","author":"作者","published":"发布时间","modified":"更新时间","excerpt":"摘要","cover":"主图","content":"正文","tags":"标签","next":"下一页","fold":"折叠","unfold":"选择更多","content_require":"正文不能为空","try_manual":"智能解析失败,请手动选择正文来辅助识别","enable":"开启","enable_fields":"开启“更多字段”,可选更多信息"},"zh-TW":{"title":"手動選擇","description":"正文識別錯誤的時候,輔助識別正文。配合「規則」可以記住選擇","back":"返回","guide":"請滑動滑鼠選擇頁面上的「$LABEL$」元素","ok":"完成","cancel":"取消","element":"元素","selector":"選擇器","action":"操作","edit":"編輯","remove":"刪除","choose":"選擇","heading":"標題","author":"作者","published":"發布時間","modified":"更新時間","excerpt":"摘要","cover":"主圖","content":"正文","tags":"標籤","next":"下一頁","fold":"折疊","unfold":"選擇更多","content_require":"正文不能為空","try_manual":"智慧解析失敗,請手動選擇正文來輔助識別","enable":"開啟","enable_fields":"開啟「更多欄位」,可選更多資訊。 "}}},{"id":"lists","type":"plugin","version":"1.0.0","title":"__title__","runAt":"bootstrap","priority":50,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"lists":{"type":"table","label":"__title__","icon":"ProfileOutlined","tooltip":"__description__","query":{"filter":{"deny":[{"label":"__whitelist__","value":false},{"label":"__blacklist__","value":true}]},"searchIn":["id","title"]},"columns":[{"id":"title","width":"40%","label":"__heading__"},{"id":"id","required":true,"type":"url","width":"40%","label":"__url__","more":"docs/lists.html","tooltip":"__url_tooltip__"},{"id":"host","required":true,"hide_in_column":true,"type":"text","more":"docs/lists.html","label":"__host__","tooltip":"__host_tooltip__"},{"id":"deny","hidden":true},{"id":"type","hidden":true},{"id":"action","label":"__operate__"}]},"keys":[{"id":"whitelist","priority":250,"label":"__toggle_whitelist__","defaultValue":{"value":"w l"}},{"priority":251,"id":"whitelist_site","label":"__toggle_whitelist_site__","defaultValue":{"value":"w s"}},{"priority":252,"id":"blacklist","label":"__toggle_blacklist__","defaultValue":{"value":"b l"}},{"priority":253,"id":"blacklist_site","label":"__toggle_blacklist_site__","defaultValue":{"value":"b s"}}],"menu":[{"priority":250,"id":"whitelist","label":"__add_whitelist__","defaultValue":{"checked":true}},{"priority":251,"id":"whitelist_site","label":"__add_whitelist_site__"},{"priority":252,"id":"blacklist","label":"__add_blacklist__"},{"priority":253,"id":"blacklist_site","label":"__add_blacklist_site__"}],"toolbar":[{"group":15,"priority":250,"id":"whitelist","label":"__toggle_whitelist__","defaultValue":{"checked":true,"value":"<svg viewBox=\\"0 0 1024 1024\\" width=\\"1em\\" height=\\"1em\\" fill=\\"currentColor\\" aria-hidden=\\"true\\"><path d=\\"M771.2256 804.5056H226.56c-21.4528 0-38.912 16.384-38.912 36.352 0 19.968 17.4592 36.352 38.912 36.352h544.6144c21.4016 0 38.912-16.384 38.912-36.352 0-19.8656-17.5104-36.352-38.912-36.352m0-145.0496H226.56c-21.4528 0-38.912 16.3328-38.912 36.3008 0 19.968 17.4592 36.2496 38.912 36.2496h544.6144c21.4016 0 38.912-16.2816 38.912-36.2496 0-19.968-17.5104-36.3008-38.912-36.3008\\"></path><path d=\\"M887.9616 913.2544c0 19.968-17.5616 36.352-38.912 36.352H148.6848c-21.504 0-38.8608-16.2816-38.912-36.352V114.3808c0-19.968 17.4592-36.3008 38.912-36.3008h700.3136c21.3504 0 38.912 16.3328 38.912 36.3008v798.8736z m0-907.776H109.824c-42.8032 0-77.824 32.6144-77.824 72.6016v871.4752c0 39.936 35.0208 72.6528 77.824 72.6528h778.1376c42.8032 0 77.824-32.6144 77.824-72.6528V78.08c0-39.936-35.0208-72.6528-77.824-72.6528z\\"></path><path d=\\"M798.72 161.536a41.0624 41.0624 0 0 0-55.04 0l-283.648 264.8576L331.776 306.688a41.0624 41.0624 0 0 0-55.04 0 34.7648 34.7648 0 0 0 0 51.3536l155.5456 145.152 0.1536 0.256a40.9088 40.9088 0 0 0 55.04 0l0.2048-0.3072L798.72 212.7872a34.6112 34.6112 0 0 0 0-51.2512\\"></path></svg>"}},{"group":15,"priority":251,"id":"whitelist_site","label":"__toggle_whitelist_site__","defaultValue":{"value":"<svg viewBox=\\"0 0 1024 1024\\" width=\\"1em\\" height=\\"1em\\" fill=\\"currentColor\\" aria-hidden=\\"true\\"><path d=\\"M523.44 948.7H79.19V75.29h768v368.9c0 22.59 15.06 37.65 37.65 37.65s37.65-15.06 37.65-37.65V75.29C922.49 30.11 892.37 0 847.2 0H79.19C34.03 0 3.91 30.11 3.91 75.29V948.7c0 45.18 30.12 75.29 75.29 75.29h451.77c15.06 0 37.65-15.06 37.65-37.65s-22.59-37.64-45.18-37.64zM681.56 271.06c0-22.59-15.06-37.65-37.65-37.65H259.91c-22.59 0-37.65 15.06-37.65 37.65s15.06 37.65 37.65 37.65h384c22.59-0.01 37.65-15.07 37.65-37.65zM568.62 489.41c0-22.59-22.59-37.65-37.65-37.65H259.91c-22.59 0-37.65 15.06-37.65 37.65s15.06 37.65 37.65 37.65h271.06c15.06 0 37.65-15.06 37.65-37.65zM259.91 677.64c-22.59 0-37.65 15.06-37.65 37.65s15.06 37.65 37.65 37.65h188.28c15.06 0 37.65-15.06 37.65-37.65s-15.11-37.65-37.65-37.65zM775.53 531.35c-135.07 0-244.56 109.49-244.56 244.56s109.49 244.56 244.56 244.56 244.56-109.49 244.56-244.56-109.5-244.56-244.56-244.56z m122 366.57a172.56 172.56 0 1 1 50.54-122 171.43 171.43 0 0 1-50.53 122zM853.99 691.58l-98.92 113-48.32-47.35a36 36 0 0 0-50.39 51.43l75.53 74a36 36 0 0 0 25.19 10.29h1.38a36 36 0 0 0 25.73-12.25l124-141.7a36 36 0 0 0-54.18-47.41z\\"/></svg>"}},{"group":15,"priority":252,"id":"blacklist","label":"__toggle_blacklist__","defaultValue":{"value":"<svg viewBox=\\"0 0 747.97 813.89\\" width=\\"1em\\" height=\\"1em\\" fill=\\"currentColor\\" aria-hidden=\\"true\\"><path d=\\"M733.12,748.4H291.35c-15,0-27.11,11.31-27.11,25.25s12.14,25.24,27.11,25.24H733.12c15,0,27.11-11.3,27.11-25.24S748.09,748.4,733.12,748.4Z\\" transform=\\"translate(-138.02 -102.52)\\"/><path d=\\"M868.87,118.45a60.71,60.71,0,0,0-41.32-15.93H196.45a60.71,60.71,0,0,0-41.32,15.93A52.57,52.57,0,0,0,138,156.92V862a52.56,52.56,0,0,0,17.11,38.47,60.72,60.72,0,0,0,41.32,15.94h631.1a60.72,60.72,0,0,0,41.32-15.94A52.56,52.56,0,0,0,886,862V156.92A52.57,52.57,0,0,0,868.87,118.45Zm-36.64,714c0,18.58-16.05,33.71-36,33.94h-568a37.84,37.84,0,0,1-25.78-9.94,32.78,32.78,0,0,1-10.68-24V186.52a32.8,32.8,0,0,1,10.68-24,37.88,37.88,0,0,1,25.78-9.94h568c19.95.24,36,15.37,36,34Z\\" transform=\\"translate(-138.02 -102.52)\\"/><path d=\\"M272.18,674a28.17,28.17,0,0,0,19.17,7.39H733.12c14.79-.24,26.65-11.47,26.65-25.25A24,24,0,0,0,752,638.59a27.66,27.66,0,0,0-18.84-7.26H291.35a27.72,27.72,0,0,0-19.15,7.11,24,24,0,0,0-8,17.69A24.4,24.4,0,0,0,272.18,674Z\\" transform=\\"translate(-138.02 -102.52)\\"/><path d=\\"M513.69,565.57A172.17,172.17,0,1,0,342,393.11,172.22,172.22,0,0,0,513.69,565.57ZM395.41,365.36a121.49,121.49,0,0,1,236.55,0v5.7H395.41Zm234.8,53.89v5.25a121.34,121.34,0,0,1-234.8,0l-1.32-5.25Z\\" transform=\\"translate(-138.02 -102.52)\\"/></svg>"}},{"group":15,"priority":253,"id":"blacklist_site","label":"__toggle_blacklist_site__","defaultValue":{"value":"<svg viewBox=\\"0 0 1024 1024\\" width=\\"1em\\" height=\\"1em\\" fill=\\"currentColor\\" aria-hidden=\\"true\\"><path d=\\"M523.44 948.7H79.19V75.29h768v368.9c0 22.59 15.06 37.65 37.65 37.65s37.65-15.06 37.65-37.65V75.29C922.49 30.11 892.37 0 847.2 0H79.19C34.03 0 3.91 30.11 3.91 75.29V948.7c0 45.18 30.12 75.29 75.29 75.29h451.77c15.06 0 37.65-15.06 37.65-37.65s-22.59-37.64-45.18-37.64zM681.56 271.06c0-22.59-15.06-37.65-37.65-37.65H259.91c-22.59 0-37.65 15.06-37.65 37.65s15.06 37.65 37.65 37.65h384c22.59-0.01 37.65-15.07 37.65-37.65zM568.62 489.41c0-22.59-22.59-37.65-37.65-37.65H259.91c-22.59 0-37.65 15.06-37.65 37.65s15.06 37.65 37.65 37.65h271.06c15.06 0 37.65-15.06 37.65-37.65zM259.91 677.64c-22.59 0-37.65 15.06-37.65 37.65s15.06 37.65 37.65 37.65h188.28c15.06 0 37.65-15.06 37.65-37.65s-15.11-37.65-37.65-37.65zM775.53 531.35c-135.07 0-244.56 109.49-244.56 244.56s109.49 244.56 244.56 244.56 244.56-109.49 244.56-244.56-109.5-244.56-244.56-244.56z m-122 122.54a172.67 172.67 0 0 1 215.92-22.8L630.71 869.82a172.67 172.67 0 0 1 22.8-215.92z m244 244a172.67 172.67 0 0 1-215.92 22.8L920.35 682a172.67 172.67 0 0 1-22.8 215.92z\\"/></svg>"}}],"option":[{"id":"lists","label":"__title__","data":[{"id":"skip","defaultValue":true,"label":"__skip__","tooltip":"__skip_tooltip__"}]}]},"i18n":{"en":{"title":"Black and White List","description":"Quickly switch between black and white lists using buttons below. Adding to the whitelist automatically enters reading mode, opposite for blacklist.","whitelist":"Whitelist","blacklist":"Blacklist","add_whitelist":"Add current page to whitelist","remove_whitelist":"Remove current page from whitelist","toggle_whitelist":"Add or remove current page from whitelist","add_whitelist_site":"Add current website to whitelist","remove_whitelist_site":"Remove current website from whitelist","toggle_whitelist_site":"Add or remove current website from whitelist","add_blacklist":"Add current page to blacklist","remove_blacklist":"Remove current page from blacklist","toggle_blacklist":"Add or remove current page from blacklist","add_blacklist_site":"Add current website to blacklist","remove_blacklist_site":"Remove current website from blacklist","toggle_blacklist_site":"Add or remove current website from blacklist","remove":"Remove","remove_success":"Removed successfully","add_success":"Added successfully","heading":"Title","url":"URL","url_tooltip":"Supports main domain name, URL, minimatch, and regular expression (format: [expression]; wrap expression in [] and pass it to new RegExp to implement)","host":"Domain","host_tooltip":"Used to match all lists under the current domain","operate":"Operation","skip":"Skip Original Text","skip_tooltip":"Pages added to the whitelist directly enter reading mode"},"ja":{"title":"白黒リスト","description":"下のボタンは白黒リストを素早く切り替えることができます。ホワイトリストに参加すると自動的に読書モードになり、ブラックリストはその逆になります。","whitelist":"ホワイトリスト","blacklist":"ブラックリスト","add_whitelist":"現在のページをホワイトリストに追加","remove_whitelist":"現在のページをホワイトリストから削除します","toggle_whitelist":"現在のページをホワイトリストに追加または削除します","add_whitelist_site":"現在のウェブサイトをホワイトリストに追加","remove_whitelist_site":"現在のウェブサイトをホワイトリストから削除","toggle_whitelist_site":"現在のウェブサイトをホワイトリストに追加または削除します","add_blacklist":"現在のページをブラックリストに追加","remove_blacklist":"現在のページをブラックリストから削除","toggle_blacklist":"現在のページをブラックリストに追加または削除します","add_blacklist_site":"現在のウェブサイトをブラックリストに追加する","remove_blacklist_site":"現在のウェブサイトをブラックリストから削除","toggle_blacklist_site":"現在のウェブサイトをブラックリストに追加または削除する","remove":"除去じょきょ","remove_success":"削除に成功","add_success":"追加に成功","heading":"タイトル","url":"URL","url_tooltip":"メインドメイン名、URL、ミニマッチ、正規表現をサポートします(形式:[式];つまり、[]で式を包み、new RegExp実装を渡します)","host":"ドメイン名","host_tooltip":"現在のドメイン名の下のすべてのリストを検索するために使用されます","operate":"操作する","skip":"原文をスキップする","skip_tooltip":"ホワイトリストに追加された元のWebページは、直接読み込みモードに入ります"},"ko":{"title":"흑백 목록","description":"아래 버튼을 누르면 흑백 목록을 빠르게 전환할 수 있습니다. 화이트리스트에 추가하면 자동으로 읽기 모드로 전환되고 블랙리스트는 그 반대입니다.","whitelist":"화이트리스트","blacklist":"블랙리스트","add_whitelist":"현재 페이지 화이트리스트","remove_whitelist":"화이트리스트에서 현재 페이지 제거","toggle_whitelist":"화이트리스트에서 현재 페이지 추가 또는 제거","add_whitelist_site":"현재 웹 사이트 화이트리스트","remove_whitelist_site":"화이트리스트에서 현재 웹 사이트 제거","toggle_whitelist_site":"화이트리스트에서 현재 웹 사이트 추가 또는 제거","add_blacklist":"현재 페이지를 블랙리스트에 추가","remove_blacklist":"블랙리스트에서 현재 페이지 제거","toggle_blacklist":"블랙리스트에서 현재 페이지 추가 또는 제거","add_blacklist_site":"현재 웹 사이트를 블랙리스트에 추가","remove_blacklist_site":"블랙리스트에서 현재 웹 사이트 제거","toggle_blacklist_site":"블랙리스트에서 현재 웹 사이트 추가 또는 제거","remove":"제거","remove_success":"제거 완료","add_success":"성공적으로 추가되었습니다.","heading":"제목","url":"웹사이트","url_tooltip":"기본 도메인 이름, URL, 최소값 및 정규식을 지원합니다(형식: [식]; 즉, 식을 [ ]로 래핑하고 새 RegExp 구현을 통과합니다).","host":"도메인 이름","host_tooltip":"현재 도메인 이름 아래의 모든 목록을 일치시키고 찾는 데 사용합니다.","operate":"작업","skip":"원문을 건너뛰다","skip_tooltip":"화이트리스트에 가입한 원본 웹페이지는 바로 읽기 모드로 들어간다"},"th":{"title":"รายการขาวดำ","description":"ปุ่มด้านล่างสามารถสลับรายการขาวดำได้อย่างรวดเร็ว การเพิ่มรายการขาวจะเข้าสู่โหมดอ่านโดยอัตโนมัติ และบัญชีดำจะอยู่ตรงข้าม","whitelist":"บัญชีขาว","blacklist":"บัญชีดำ","add_whitelist":"เพิ่มหน้าปัจจุบันในรายการที่อนุญาต","remove_whitelist":"ลบหน้าปัจจุบันออกจากรายการที่อนุญาต","toggle_whitelist":"เพิ่มหรือลบหน้าปัจจุบันในรายการที่อนุญาต","add_whitelist_site":"เพิ่มเว็บไซต์ปัจจุบันลงในรายการที่อนุญาต","remove_whitelist_site":"ลบเว็บไซต์ปัจจุบันออกจากรายการที่อนุญาต","toggle_whitelist_site":"เพิ่มหรือลบเว็บไซต์ปัจจุบันในรายการที่อนุญาต","add_blacklist":"เพิ่มหน้าปัจจุบันในบัญชีดำ","remove_blacklist":"ลบหน้าปัจจุบันออกจากบัญชีดำ","toggle_blacklist":"เพิ่มหรือลบหน้าปัจจุบันออกจากบัญชีดำ","add_blacklist_site":"เพิ่มเว็บไซต์ปัจจุบันลงในบัญชีดำ","remove_blacklist_site":"ลบเว็บไซต์ปัจจุบันออกจากบัญชีดำ","toggle_blacklist_site":"เพิ่มหรือลบเว็บไซต์ปัจจุบันในบัญชีดำ","remove":"ลบ","remove_success":"การลบสำเร็จ","add_success":"เพิ่มสำเร็จ","heading":"ชื่อเรื่อง","url":"URL","url_tooltip":"สนับสนุนชื่อโดเมนหลัก URL ขีดต่ำสุดและนิพจน์ทั่วไป (รูปแบบ: [นิพจน์]; เช่นห่อนิพจน์ด้วย [] และส่งผ่านไปยังการใช้งาน RegExp ใหม่)","host":"ชื่อโดเมน","host_tooltip":"ใช้เพื่อค้นหารายการทั้งหมดภายใต้ชื่อโดเมนปัจจุบัน","operate":"การดำเนินการ","skip":"ข้าม ต้นฉบับ","skip_tooltip":"เว็บเพจดั้งเดิมที่เข้าร่วมรายการสีขาวเข้าสู่โหมดการอ่านโดยตรง"},"zh-CN":{"title":"黑白名单","description":"下方按钮可以快速切换黑白名单。加入白名单自动进入阅读模式,黑名单相反。","whitelist":"白名单","blacklist":"黑名单","add_whitelist":"将当前页加入白名单","remove_whitelist":"从白名单将当前页移除","toggle_whitelist":"将当前页加入或移除白名单","add_whitelist_site":"将当前网站加入白名单","remove_whitelist_site":"从白名单将当前网站移除","toggle_whitelist_site":"将当前网站加入或移除白名单","add_blacklist":"将当前页加入黑名单","remove_blacklist":"从黑名单将当前页移除","toggle_blacklist":"将当前页加入或移除黑名单","add_blacklist_site":"将当前网站加入黑名单","remove_blacklist_site":"从黑名单将当前网站移除","toggle_blacklist_site":"将当前网站加入或移除黑名单","remove":"移除","remove_success":"移除成功","add_success":"添加成功","heading":"标题","url":"网址","url_tooltip":"支持主域名、网址、minimatch 和正则表达式(格式:[表达式] ;即用 [] 包裹表达式,传入 new RegExp 实现)","host":"域名","host_tooltip":"用于匹配查找当前域名下的所有名单","operate":"操作","skip":"跳过原文","skip_tooltip":"加入白名单的原网页直接进入阅读模式"},"zh-TW":{"title":"黑白名單","description":"下方按鈕可以快速切換黑白名單。加入白名單自動進入閱讀模式,黑名單相反。","whitelist":"白名單","blacklist":"黑名單","add_whitelist":"將當前頁加入白名單","remove_whitelist":"從白名單將當前頁移除","toggle_whitelist":"將當前頁加入或移除白名單","add_whitelist_site":"將當前網站加入白名單","remove_whitelist_site":"從白名單將當前網站移除","toggle_whitelist_site":"將當前網站加入或移除白名單","add_blacklist":"將當前頁加入黑名單","remove_blacklist":"從黑名單將當前頁移除","toggle_blacklist":"將當前頁加入或移除黑名單","add_blacklist_site":"將當前網站加入黑名單","remove_blacklist_site":"從黑名單將當前網站移除","toggle_blacklist_site":"將當前網站加入或移除黑名單","remove":"移除","remove_success":"移除成功","add_success":"添加成功","heading":"標題","url":"網址","url_tooltip":"支持主域名、網址、minimatch 和正則表達式(格式:[表達式] ;即用 [] 包裹表達式,傳入 new RegExp 實現)","host":"域名","host_tooltip":"用於匹配查找當前域名下的所有名單","operate":"操作","skip":"跳過原文","skip_tooltip":"加入白名單的原網頁直接進入閱讀模式"}}},{"id":"keys","type":"plugin","version":"1.0.0","title":"__title__","runAt":"bootstrap","device":"pc","priority":30,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":{"type":"key_switch","label":"__title__","tooltip":"__tooltip__","icon":"ThunderboltOutlined"}},"i18n":{"en":{"title":"Keyboard Shortcuts","description":"Use keyboard shortcuts to improve operation efficiency","tooltip":"Press keys after selecting the input box, supports single key, key combinations, and double-clicking single key"},"ja":{"title":"ショートカットキー","description":"ショートカットキーを使用して操作効率を向上","tooltip":"入力ボックスを選択後にキーを押す、単一キー、キーの組み合わせ、単一キーのダブルクリックに対応"},"ko":{"title":"단축키","description":"단축키를 사용하여 작업 효율성 향상","tooltip":"입력 상자 선택 후 키 입력, 단일 키, 키 조합, 단일 키 더블 클릭 지원"},"th":{"title":"แป้นพิมพ์ลัด","description":"ใช้แป้นพิมพ์ลัดเพื่อเพิ่มประสิทธิภาพการทำงาน","tooltip":"กดปุ่มหลังจากเลือกช่องใส่ข้อมูล รองรับปุ่มเดี่ยว การรวมปุ่ม และการดับเบิลคลิกปุ่มเดี่ยว"},"zh-CN":{"title":"快捷键","description":"使用快捷键提高操作效率","tooltip":"选中输入框后按键,支持单键、组合键和双击单键"},"zh-TW":{"title":"快捷鍵","description":"使用快捷鍵提高操作效率","tooltip":"選中輸入框後按鍵,支持單鍵、組合鍵和雙擊單鍵"}}},{"id":"gallery","type":"plugin","version":"1.0.0","title":"__title__","runAt":"image","priority":240,"description":"__description__","dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"gallery_exit","label":"__exit__","defaultValue":{"value":"x p"}}],"option":[{"id":"gallery","type":"icon_switch","label":"__title__","data":[{"id":"download","label":"__download__","defaultValue":{"checked":true,"value":"DownloadOutlined"}},{"id":"enlarge","label":"__arrowsalt__","defaultValue":{"checked":true,"value":"ArrowsAltOutlined"}}]}]},"i18n":{"en":{"title":"Large Image View","description":"Click image to view in full size","exit":"Exit large image view mode","arrowsalt":"Zoom in","shrink":"Zoom out","download":"Download","no_buttons":"No buttons available","to_enable":"Enable"},"ja":{"title":"大きな画像表示","description":"画像をクリックして全サイズで表示","exit":"大きな画像表示モードを終了","arrowsalt":"拡大","shrink":"縮小","download":"ダウンロード","no_buttons":"ボタンがありません","to_enable":"有効化"},"ko":{"title":"큰 이미지 보기","description":"이미지를 클릭하여 전체 크기로 보기","exit":"큰 이미지 보기 모드 종료","arrowsalt":"확대","shrink":"축소","download":"다운로드","no_buttons":"사용 가능한 버튼이 없습니다","to_enable":"활성화"},"th":{"title":"ดูรูปภาพขนาดใหญ่","description":"คลิกที่รูปภาพเพื่อดูขนาดเต็ม","exit":"ออกจากโหมดดูรูปภาพขนาดใหญ่","arrowsalt":"ขยาย","shrink":"ย่อ","download":"ดาวน์โหลด","no_buttons":"ไม่มีปุ่มใช้งาน","to_enable":"เปิดใช้งาน"},"zh-CN":{"title":"大图查看","description":"点击图片放大查看图片","exit":"退出大图查看模式","arrowsalt":"放大","shrink":"缩小","download":"下载","no_buttons":"无任何按钮","to_enable":"开启"},"zh-TW":{"title":"大圖查看","description":"點擊圖片放大查看圖片","exit":"退出大圖查看模式","arrowsalt":"放大","shrink":"縮小","download":"下載","no_buttons":"無任何按鈕","to_enable":"開啟"}}},{"id":"fullscreen","type":"plugin","version":"1.0.0","title":"__title__","runAt":"render_done","priority":20,"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"fullscreen","label":"__title__","defaultValue":{"value":"f u"}}],"menu":[{"id":"fullscreen","label":"__title__"}],"toolbar":[{"group":0,"id":"fullscreen","label":"__title__","defaultValue":{"checked":true,"value":"FullscreenOutlined"}}],"option":[{"id":"fullscreen","label":"__title__","data":[{"access":"member","id":"autofullscreen","label":"__autofullscreen__","tooltip":"__autofullscreen_tooltip__","defaultValue":false}]}]},"i18n":{"en":{"title":"Full Screen","autofullscreen":"Enter full screen automatically on startup","autofullscreen_tooltip":"Enter Circle full screen display"},"ja":{"title":"全画面表示","autofullscreen":"起動時に自動的に全画面表示","autofullscreen_tooltip":"Circle の全画面表示に切り替え"},"ko":{"title":"전체 화면","autofullscreen":"시작 시 자동으로 전체 화면으로 전환","autofullscreen_tooltip":"Circle 전체 화면 표시로 전환"},"th":{"title":"เต็มหน้าจอ","autofullscreen":"เข้าสู่โหมดเต็มหน้าจอโดยอัตโนมัติเมื่อเริ่มต้น","autofullscreen_tooltip":"เข้าสู่การแสดงผลเต็มหน้าจอของ Circle"},"zh-CN":{"title":"全屏查看","autofullscreen":"启动时自动进入全屏","autofullscreen_tooltip":"进入 Circle 全屏幕展示"},"zh-TW":{"title":"全螢幕查看","autofullscreen":"啟動時自動進入全螢幕","autofullscreen_tooltip":"進入 Circle 全螢幕展示"}}},{"id":"floatbox","type":"plugin","version":"1.0.0","title":"__title__","runAt":"render_done","priority":60,"description":"__description__","dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"floatbox":{"type":"icon_switch","label":"__title__","tooltip":"__description__","icon":"MedicineBoxOutlined"}},"i18n":{"en":{"title":"Floating Box","description":"Operation box that appears after selecting text, works with other applications","no_buttons":"No available functions","ok":"Confirm","cancel":"Cancel","enable":"Enable","disable":"Exit","disable_desc":"After exiting, you need to manually enable it in the app market to use it"},"ja":{"title":"フローティングボックス","description":"テキストを選択した後に表示される操作ボックス、他のアプリケーションと連携","no_buttons":"利用可能な機能がありません","ok":"確認","cancel":"キャンセル","enable":"有効化","disable":"終了","disable_desc":"終了後はアプリマーケットで手動で有効化する必要があります"},"ko":{"title":"플로팅 박스","description":"텍스트 선택 후 나타나는 작업 상자, 다른 애플리케이션과 함께 사용","no_buttons":"사용 가능한 기능이 없습니다","ok":"확인","cancel":"취소","enable":"활성화","disable":"종료","disable_desc":"종료 후 앱 마켓에서 수동으로 활성화해야 사용할 수 있습니다"},"th":{"title":"กล่องลอย","description":"กล่องปฏิบัติการที่ปรากฏหลังจากเลือกข้อความ ทำงานร่วมกับแอปพลิเคชันอื่น","no_buttons":"ไม่มีฟังก์ชันที่ใช้งานได้","ok":"ยืนยัน","cancel":"ยกเลิก","enable":"เปิดใช้งาน","disable":"ออก","disable_desc":"หลังจากออก คุณต้องเปิดใช้งานด้วยตนเองในแอปสโตร์จึงจะใช้งานได้"},"zh-CN":{"title":"悬浮盒子","description":"划选文本后弹出的操作框,配合其他应用使用","no_buttons":"无任何可用功能","ok":"确认","cancel":"取消","enable":"启用","disable":"退出","disable_desc":"退出后需在应用市场中手动开启才可用"},"zh-TW":{"title":"懸浮盒子","description":"劃選文字後彈出的操作框,配合其他應用使用","no_buttons":"無任何可用功能","ok":"確認","cancel":"取消","enable":"啟用","disable":"退出","disable_desc":"退出後需在應用市場中手動開啟才可用"}}},{"id":"find","type":"plugin","version":"1.0.0","title":"__title__","priority":80,"dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"find","label":"__title__","defaultValue":{"value":"/ /"}}],"toolbar":[{"group":5,"id":"find","label":"__title__","tooltip":"__tooltip__","more":"docs/find.html","defaultValue":{"checked":true,"value":"SearchOutlined"}}],"floatbox":[{"id":"find","label":"__title__","defaultValue":{"value":"SearchOutlined"}}]},"i18n":{"en":{"title":"Find Content","tooltip":"Search content by keyword in reading mode","separateword":"Split Words","casesensitive":"Match Case","diacritics":"Match Diacritics","wildcards":"Wildcards","accuracy":"Match Phrases","enter_keyword":"Please enter keyword"},"ja":{"title":"コンテンツ検索","tooltip":"読書モードでキーワードによるコンテンツ検索","separateword":"単語分割","casesensitive":"大文字小文字を区別","diacritics":"アクセント記号を区別","wildcards":"ワイルドカード","accuracy":"フレーズ一致","enter_keyword":"キーワードを入力してください"},"ko":{"title":"내용 찾기","tooltip":"읽기 모드에서 키워드로 내용 검색","separateword":"단어 분리","casesensitive":"대소문자 구분","diacritics":"발음 구별 기호 구분","wildcards":"와일드카드","accuracy":"구문 일치","enter_keyword":"키워드를 입력하세요"},"th":{"title":"ค้นหาข้อมูล","tooltip":"ค้นหาข้อมูลด้วยคำค้นหาในโหมดการอ่าน","separateword":"แยกคำ","casesensitive":"ตรงตามตัวพิมพ์ใหญ่/เล็ก","diacritics":"ตรงตามเครื่องหมายวรรณยุกต์","wildcards":"ตัวแทนอักขระ","accuracy":"ตรงตามวลี","enter_keyword":"กรุณาป้อนคำค้นหา"},"zh-CN":{"title":"查找内容","tooltip":"阅读模式下通过关键字查找内容","separateword":"分割单词","casesensitive":"匹配大小写","diacritics":"匹配变音符号","wildcards":"通配符","accuracy":"匹配词句","enter_keyword":"请输入关键字"},"zh-TW":{"title":"尋找內容","tooltip":"閱讀模式下透過關鍵字尋找內容","separateword":"分割單字","casesensitive":"匹配大小寫","diacritics":"匹配變音符號","wildcards":"萬用字元","accuracy":"匹配詞句","enter_keyword":"請輸入關鍵字"}}},{"id":"feedback","type":"plugin","version":"1.0.0","title":"__title__","core":true,"enabled":true,"priority":280,"dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"feedback","label":"__title__","defaultValue":{"value":""}}],"menu":[{"id":"feedback","label":"__title__","defaultValue":{"action":true,"checked":true}}],"toolbar":[{"group":25,"id":"feedback","label":"__title__","defaultValue":{"checked":true,"value":"BugOutlined"}}]},"i18n":{"en":{"title":"Feedback","report":"Submit Feedback","hot_report":"Popular Feedback","login_first":"Please login first","my_feedback":"My Feedback","search_placeholder":"Search by keyword","voted":"You have already voted","empty":"No data available","page":"Page","jump":"Go to","desc":"Description","type":"Type","status":"Status","time":"Time","choose_type":"Select feedback type","input_feedback":"Enter your feedback","feedback":"Feedback Content","submit":"Submit","submit_success":"Feedback submitted successfully. You can also vote for issues you\'d like to see resolved quickly in the Popular Feedback section.","faq":"The issue you\'re experiencing might have been encountered by others. Check out their experiences and solutions first.","pending":"Pending Review","resolve":"Resolved","rejected":"Rejected","progress":"In Progress","done":"Completed","release":"Released","duplicate":"Duplicate","reproduce":"Cannot Reproduce","bug":"Bug Report","propose":"Feature Request","design":"UI/UX Design","error":"Information Error","other":"Other"},"ja":{"title":"フィードバック","report":"フィードバックを送信","hot_report":"人気のフィードバック","login_first":"先にログインしてください","my_feedback":"マイフィードバック","search_placeholder":"キーワードを入力して検索","voted":"投票済み","empty":"データがありません","page":"ページ","jump":"移動","desc":"説明","type":"種類","status":"状態","time":"時間","choose_type":"フィードバックの種類を選択してください","input_feedback":"フィードバックの内容を入力してください","feedback":"フィードバック内容","submit":"送信","submit_success":"フィードバックが送信されました。優先的に対応してほしい問題があれば、人気のフィードバックで投票してください","faq":"あなたが直面している問題は、他のユーザーも経験しているかもしれません。先人の経験と解決策を参考にしてください。","pending":"確認待ち","resolve":"確認済み","rejected":"対応不可","progress":"処理中","done":"処理完了","release":"リリース済み","duplicate":"重複","reproduce":"再現不可","bug":"バグ報告","propose":"改善提案","design":"UIデザイン","error":"情報エラー","other":"その他"},"ko":{"title":"피드백","report":"피드백 제출","hot_report":"인기 피드백","login_first":"먼저 로그인하세요","my_feedback":"내 피드백","search_placeholder":"키워드로 검색","voted":"투표 완료","empty":"데이터가 없습니다","page":"페이지","jump":"이동","desc":"설명","type":"유형","status":"상태","time":"시간","choose_type":"피드백 유형을 선택하세요","input_feedback":"피드백 내용을 입력하세요","feedback":"피드백 내용","submit":"제출","submit_success":"피드백이 제출되었습니다. 우선적으로 처리하고 싶은 문제가 있다면 인기 피드백에서 투표해 주세요","faq":"당신이 겪고 있는 문제는 다른 사용자들도 경험했을 수 있습니다. 선배들의 경험과 해결책을 참고해 보세요.","pending":"확인 대기","resolve":"확인됨","rejected":"처리 불가","progress":"처리 중","done":"처리 완료","release":"배포됨","duplicate":"중복","reproduce":"재현 불가","bug":"버그 리포트","propose":"개선 제안","design":"UI 디자인","error":"정보 오류","other":"기타"},"th":{"title":"ข้อเสนอแนะ","report":"ส่งข้อเสนอแนะ","hot_report":"ข้อเสนอแนะยอดนิยม","login_first":"กรุณาเข้าสู่ระบบก่อน","my_feedback":"ข้อเสนอแนะของฉัน","search_placeholder":"ค้นหาด้วยคำค้นหา","voted":"โหวตแล้ว","empty":"ไม่มีข้อมูล","page":"หน้า","jump":"ไปที่","desc":"คำอธิบาย","type":"ประเภท","status":"สถานะ","time":"เวลา","choose_type":"กรุณาเลือกประเภทข้อเสนอแนะ","input_feedback":"กรุณากรอกเนื้อหาข้อเสนอแนะ","feedback":"เนื้อหาข้อเสนอแนะ","submit":"ส่ง","submit_success":"ส่งข้อเสนอแนะเรียบร้อยแล้ว หากมีปัญหาที่ต้องการให้ดำเนินการก่อน กรุณาโหวตในข้อเสนอแนะยอดนิยม","faq":"ปัญหาที่คุณกำลังเผชิญอาจเป็นปัญหาที่ผู้ใช้อื่นเคยประสบมาแล้ว ลองดูประสบการณ์และวิธีแก้ไขของพวกเขา","pending":"รอดำเนินการ","resolve":"ดำเนินการแล้ว","rejected":"ไม่สามารถดำเนินการได้","progress":"กำลังดำเนินการ","done":"ดำเนินการเสร็จสิ้น","release":"เผยแพร่แล้ว","duplicate":"ซ้ำซ้อน","reproduce":"ไม่สามารถทำซ้ำได้","bug":"รายงานบั๊ก","propose":"ข้อเสนอแนะ","design":"การออกแบบ UI","error":"ข้อมูลผิดพลาด","other":"อื่นๆ"},"zh-CN":{"title":"问题反馈","report":"提交反馈","hot_report":"热门反馈","login_first":"请先登录(不可用)","my_feedback":"我的反馈","search_placeholder":"输入关键词查询","voted":"您已投票","empty":"暂无数据","page":"页","jump":"跳至","desc":"描述","type":"类型","status":"状态","time":"时间","choose_type":"请选择反馈类型","input_feedback":"请输入反馈内容","feedback":"反馈内容","submit":"提交","submit_success":"反馈成功,你也可以在热门反馈中为想要尽快处理的问题投票","faq":"你遇到的问题,或许别人也遇到过,不妨先看看他们的经验与解决方案。","pending":"待确认","resolve":"已确认","rejected":"不予处理","progress":"处理中","done":"已处理","release":"已上线","duplicate":"重复","reproduce":"无法复现","bug":"Bug 报告","propose":"意见建议","design":"界面设计","error":"信息错误","other":"其他"},"zh-TW":{"title":"問題回饋","report":"提交回饋","hot_report":"熱門回饋","login_first":"請先登入","my_feedback":"我的回饋","search_placeholder":"關鍵字搜尋","voted":"已投票","empty":"無資料","page":"頁面","jump":"跳轉","desc":"說明","type":"類型","status":"狀態","time":"時間","choose_type":"選擇回饋類型","input_feedback":"輸入回饋內容","feedback":"回饋內容","submit":"提交","submit_success":"回饋已提交。您可以為優先級高的問題投票","faq":"您遇到的問題可能是其他用戶也曾經歷過的。查看解決方案","pending":"待處理","resolve":"已處理","rejected":"未處理","progress":"處理中","done":"已完成","release":"已發布","duplicate":"重複","reproduce":"無法重現","bug":"錯誤報告","propose":"建議","design":"UI 設計","error":"資訊錯誤","other":"其他"}}},{"id":"export_word","type":"plugin","version":"1.0.0","title":"__title__","priority":190,"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"export_word","label":"__title__","defaultValue":{"value":"w d"}}],"toolbar":[{"group":10,"id":"export_word","label":"__title__","tooltip":"__tooltip__","more":"docs/export_word.html","defaultValue":{"checked":true,"value":"FileWordOutlined"}}],"floatbox":[{"id":"export_word","label":"__title__","defaultValue":{"value":"FileWordOutlined"}}],"annotator":[{"id":"export_word","label":"__title__","defaultValue":{"value":"FileWordOutlined"}}],"option":[{"id":"export_word","label":"__title__","tooltip":"__placeholder__","more":"docs/token.html","data":[{"id":"format","access":"member","defaultValue":"doc","label":"__format__","data":[{"label":"__doc__","value":"doc"},{"label":"__docx__","value":"docx"}]},{"type":"template","id":"title_template","label":"__title_template__","defaultValue":""},{"access":"member","id":"template","type":"template","label":"__template__","defaultValue":""},{"type":"template","id":"title_part_template","label":"__title_part_template__","defaultValue":""},{"access":"member","type":"template","id":"part_template","label":"__part_template__","defaultValue":""}]}]},"i18n":{"en":{"title":"Export as Word","tooltip":"Supports images and text only","format":"Format","doc":"Doc","docx":"Docx","title_template":"Name Template","template":"File Template","title_part_template":"Fragment File Name Template","part_template":"Fragment File Template","placeholder":"[node:content] in the template is called a variable and will be replaced with actual content when copying"},"ja":{"title":"Wordとしてエクスポート","tooltip":"画像とテキストのみ対応","format":"フォーマット","doc":"Doc","docx":"Docx","title_template":"名前テンプレート","template":"ファイルテンプレート","title_part_template":"フラグメントファイル名テンプレート","part_template":"フラグメントファイルテンプレート","placeholder":"テンプレート内の[node:content]は変数と呼ばれ、コピー時に実際のコンテンツに置き換えられます"},"ko":{"title":"Word로 내보내기","tooltip":"이미지와 텍스트만 지원","format":"형식","doc":"Doc","docx":"Docx","title_template":"이름 템플릿","template":"파일 템플릿","title_part_template":"조각 파일 이름 템플릿","part_template":"조각 파일 템플릿","placeholder":"템플릿의 [node:content]는 변수라고 하며 복사 시 실제 내용으로 대체됩니다"},"th":{"title":"ส่งออกเป็น Word","tooltip":"รองรับเฉพาะรูปภาพและข้อความ","format":"รูปแบบ","doc":"Doc","docx":"Docx","title_template":"เทมเพลตชื่อ","template":"เทมเพลตไฟล์","title_part_template":"เทมเพลตชื่อไฟล์ส่วน","part_template":"เทมเพลตไฟล์ส่วน","placeholder":"[node:content] ในเทมเพลตเรียกว่าตัวแปรและจะถูกแทนที่ด้วยเนื้อหาจริงเมื่อคัดลอก"},"zh-CN":{"title":"导出为 Word","tooltip":"仅支持图片和文本","format":"格式","doc":"Doc","docx":"Docx","title_template":"名称模版","template":"文件模版","title_part_template":"片段文件的名称模版","part_template":"片段文件的模版","placeholder":"模版中的[node:content]称为变量,复制时会被真正的内容替换掉"},"zh-TW":{"title":"匯出為 Word","tooltip":"僅支持圖片和文本","format":"格式","doc":"Doc","docx":"Docx","title_template":"名稱模版","template":"文件模版","title_part_template":"片段文件的名稱模版","part_template":"片段文件的模版","placeholder":"模版中的[node:content]稱為變量,複製時會被真正的內容替換掉"}}},{"id":"export_pdf","type":"plugin","version":"1.0.0","title":"__title__","priority":200,"dependencies":["print"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"export_pdf","label":"__title__","defaultValue":{"value":"p f"}}],"toolbar":[{"group":10,"id":"export_pdf","label":"__title__","defaultValue":{"checked":true,"value":"FilePdfOutlined"}}]},"i18n":{"en":{"title":"Export as PDF","alert":"Exporting as PDF uses the browser\'s built-in print service. In the popup window that appears next, select \'Save as PDF\' as the target printer","got_it":"Got it"},"ja":{"title":"PDFとしてエクスポート","alert":"PDFとしてのエクスポートには、ブラウザの組み込み印刷サービスを使用します。次に表示されるポップアップウィンドウで、ターゲットプリンターとして「PDFとして保存」を選択してください","got_it":"わかりました"},"ko":{"title":"PDF로 내보내기","alert":"PDF로 내보내기는 브라우저의 내장 인쇄 서비스를 사용합니다. 다음에 표시되는 팝업 창에서 대상 프린터로 \'PDF로 저장\'을 선택하세요","got_it":"알겠습니다"},"th":{"title":"ส่งออกเป็น PDF","alert":"การส่งออกเป็น PDF ใช้บริการพิมพ์ในตัวของเบราว์เซอร์ ในหน้าต่างป็อปอัพที่จะแสดงต่อไป ให้เลือก \'บันทึกเป็น PDF\' เป็นเครื่องพิมพ์เป้าหมาย","got_it":"เข้าใจแล้ว"},"zh-CN":{"title":"导出为 PDF","alert":"导出为 PDF 使用的是浏览器内置的打印服务,在接下来展示的弹窗里,目标打印机选择 “另存为 PDF” 即可","got_it":"我知道了"},"zh-TW":{"title":"匯出為 PDF","alert":"匯出為 PDF 使用的是瀏覽器內置的打印服務,在接下來展示的彈窗裡,目標打印機選擇 「另存為 PDF」 即可","got_it":"我知道了"}}},{"id":"export_marked","type":"plugin","version":"1.0.0","title":"__title__","priority":180,"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"export_marked","label":"__title__","defaultValue":{"value":"m d"}}],"toolbar":[{"group":10,"id":"export_marked","label":"__title__","defaultValue":{"checked":true,"value":"<svg viewBox=\\"0 0 1024 1024\\" focusable=\\"false\\" width=\\"1em\\" height=\\"1em\\" fill=\\"currentColor\\" aria-hidden=\\"true\\"><path d=\\"M864.86,591.92v-69a29.39,29.39,0,1,0-58.78,0v69.06H760.83a4.19,4.19,0,0,0-3.22,6.86l74.8,89.94a4.19,4.19,0,0,0,6.44,0l74.81-89.94a4.19,4.19,0,0,0-3.22-6.86Zm53.31-268.18a59.54,59.54,0,0,1,59.51,59.6V800.88a59.62,59.62,0,0,1-59.61,59.6H500.54a59.61,59.61,0,0,1-59.6-59.6V383.34a59.61,59.61,0,0,1,59.6-59.6ZM629.34,676.23l38.39-95.88v110.5h51.91V493.48H656.56l-44.63,113-44.76-113H504.09V690.85H556V580.32l38.53,95.91Zm0,0\\"/><path d=\\"M752.78,947.42H101.46V330.65H318.57a35.51,35.51,0,0,0,35.52-35.53V79H717.25V225.05a35.53,35.53,0,1,0,71,0V79a71,71,0,0,0-71-71H312.45a71,71,0,0,0-50.23,20.82l-211,211A71,71,0,0,0,30.41,290V947.42a71,71,0,0,0,71.05,71.05H752.78a35.53,35.53,0,0,0,0-71.05ZM283,108.41V259.59H131.85Zm0,0\\"/></svg>"}},{"group":10,"priority":181,"id":"export_marked__inline","label":"__inline_title__","defaultValue":{"value":"<svg viewBox=\\"0 0 1024 1024\\" focusable=\\"false\\" width=\\"1em\\" height=\\"1em\\" fill=\\"currentColor\\" aria-hidden=\\"true\\"><path d=\\"M960.096 64v896h-768v-224h-128V320h128V64h768z m-64 64h-640v192h224v32h352v64h-352v80h352v64h-352V640h352v64h-352v32h-224v160h640V128zM189.312 393.408H175.04l-5.12 0.192c-6.464 0.576-11.776 2.24-15.904 5.024-4.48 2.976-7.008 8.32-7.648 16.096l-0.16 4.064v180.64l0.16 4.224c0.544 6.72 2.464 11.872 5.76 15.488a19.744 19.744 0 0 0 15.264 6.464 19.744 19.744 0 0 0 15.488-6.56c3.264-3.616 5.12-8.768 5.696-15.424l0.16-4.192v-157.6l36.576 145.44 3.68 13.792c1.184 4.416 2.816 8.448 4.896 12.064a25.248 25.248 0 0 0 8.736 8.96c3.712 2.336 8.32 3.52 13.696 3.52 7.168 0 12.768-1.824 16.8-5.44a28.704 28.704 0 0 0 8.32-12.096l2.048-6.496 2.432-8.928 37.984-150.816v169.024h-31.584l52 53.376 51.968-53.376h-29.888v-192.064l-0.128-4.064c-0.64-7.776-3.2-13.12-7.648-16.096a33.408 33.408 0 0 0-15.936-5.024l-5.088-0.192h-14.304l-4.896 0.096a44.192 44.192 0 0 0-13.888 2.24 15.744 15.744 0 0 0-8.64 8.384 105.184 105.184 0 0 0-4.992 14.624l-34.56 130.24-34.56-130.24-2.624-8.544a64.64 64.64 0 0 0-2.368-6.08 15.744 15.744 0 0 0-8.64-8.384 44.192 44.192 0 0 0-13.888-2.24l-4.896-0.096z\\"></path></svg>"}}],"floatbox":[{"id":"export_marked","label":"__title__","defaultValue":{"value":"<svg viewBox=\\"0 0 1024 1024\\" focusable=\\"false\\" width=\\"1em\\" height=\\"1em\\" fill=\\"currentColor\\" aria-hidden=\\"true\\"><path d=\\"M864.86,591.92v-69a29.39,29.39,0,1,0-58.78,0v69.06H760.83a4.19,4.19,0,0,0-3.22,6.86l74.8,89.94a4.19,4.19,0,0,0,6.44,0l74.81-89.94a4.19,4.19,0,0,0-3.22-6.86Zm53.31-268.18a59.54,59.54,0,0,1,59.51,59.6V800.88a59.62,59.62,0,0,1-59.61,59.6H500.54a59.61,59.61,0,0,1-59.6-59.6V383.34a59.61,59.61,0,0,1,59.6-59.6ZM629.34,676.23l38.39-95.88v110.5h51.91V493.48H656.56l-44.63,113-44.76-113H504.09V690.85H556V580.32l38.53,95.91Zm0,0\\"/><path d=\\"M752.78,947.42H101.46V330.65H318.57a35.51,35.51,0,0,0,35.52-35.53V79H717.25V225.05a35.53,35.53,0,1,0,71,0V79a71,71,0,0,0-71-71H312.45a71,71,0,0,0-50.23,20.82l-211,211A71,71,0,0,0,30.41,290V947.42a71,71,0,0,0,71.05,71.05H752.78a35.53,35.53,0,0,0,0-71.05ZM283,108.41V259.59H131.85Zm0,0\\"/></svg>"}}],"annotator":[{"id":"export_marked","label":"__title__","defaultValue":{"value":"<svg viewBox=\\"0 0 1024 1024\\" focusable=\\"false\\" width=\\"1em\\" height=\\"1em\\" fill=\\"currentColor\\" aria-hidden=\\"true\\"><path d=\\"M864.86,591.92v-69a29.39,29.39,0,1,0-58.78,0v69.06H760.83a4.19,4.19,0,0,0-3.22,6.86l74.8,89.94a4.19,4.19,0,0,0,6.44,0l74.81-89.94a4.19,4.19,0,0,0-3.22-6.86Zm53.31-268.18a59.54,59.54,0,0,1,59.51,59.6V800.88a59.62,59.62,0,0,1-59.61,59.6H500.54a59.61,59.61,0,0,1-59.6-59.6V383.34a59.61,59.61,0,0,1,59.6-59.6ZM629.34,676.23l38.39-95.88v110.5h51.91V493.48H656.56l-44.63,113-44.76-113H504.09V690.85H556V580.32l38.53,95.91Zm0,0\\"/><path d=\\"M752.78,947.42H101.46V330.65H318.57a35.51,35.51,0,0,0,35.52-35.53V79H717.25V225.05a35.53,35.53,0,1,0,71,0V79a71,71,0,0,0-71-71H312.45a71,71,0,0,0-50.23,20.82l-211,211A71,71,0,0,0,30.41,290V947.42a71,71,0,0,0,71.05,71.05H752.78a35.53,35.53,0,0,0,0-71.05ZM283,108.41V259.59H131.85Zm0,0\\"/></svg>"}}],"option":[{"id":"export_marked","label":"__title__","tooltip":"__tooltip__","more":"docs/token.html","data":[{"access":"member","id":"inline","label":"__inline__","defaultValue":false},{"id":"annotator","defaultValue":false,"access":"member","label":"__annotator__","tooltip":"__annotator_tooltip__"},{"id":"annotator_idea","defaultValue":false,"access":"member","label":"__annotator_idea__","tooltip":"__annotator_idea_tooltip__"},{"type":"template","id":"title_template","label":"__title_template__","defaultValue":""},{"access":"member","id":"template","type":"template","label":"__template__","defaultValue":""},{"type":"template","id":"title_part_template","label":"__title_part_template__","defaultValue":""},{"access":"member","type":"template","id":"part_template","label":"__part_template__","defaultValue":""}]}]},"i18n":{"en":{"title":"Export as Markdown","inline":"Enable image embedding when exporting as Markdown","title_template":"Name Template","template":"File Template","title_part_template":"Fragment File Name Template","part_template":"Fragment File Template","tooltip":"[node:content] in the template is called a variable and will be replaced with actual content when copying","inline_title":"Export as Offline Markdown","annotator":"Export Annotations with Markdown","annotator_tooltip":"Export annotations together with Markdown","annotator_idea":"Export Ideas with Markdown","annotator_idea_tooltip":"Export annotations and ideas with Markdown"},"ja":{"title":"Markdownとしてエクスポート","inline":"Markdownとしてエクスポートする際に画像を埋め込む","title_template":"名前テンプレート","template":"ファイルテンプレート","title_part_template":"フラグメントファイル名テンプレート","part_template":"フラグメントファイルテンプレート","tooltip":"テンプレート内の[node:content]は変数と呼ばれ、コピー時に実際のコンテンツに置き換えられます","inline_title":"オフラインMarkdownとしてエクスポート","annotator":"Markdownと共に注釈をエクスポート","annotator_tooltip":"Markdownと共に注釈をエクスポート","annotator_idea":"Markdownと共にアイデアをエクスポート","annotator_idea_tooltip":"Markdownと共に注釈とアイデアをエクスポート"},"ko":{"title":"Markdown으로 내보내기","inline":"Markdown으로 내보낼 때 이미지 포함 활성화","title_template":"이름 템플릿","template":"파일 템플릿","title_part_template":"조각 파일 이름 템플릿","part_template":"조각 파일 템플릿","tooltip":"템플릿의 [node:content]는 변수라고 하며 복사 시 실제 내용으로 대체됩니다","inline_title":"오프라인 Markdown으로 내보내기","annotator":"Markdown과 함께 주석 내보내기","annotator_tooltip":"Markdown과 함께 주석 내보내기","annotator_idea":"Markdown과 함께 아이디어 내보내기","annotator_idea_tooltip":"Markdown과 함께 주석과 아이디어 내보내기"},"th":{"title":"ส่งออกเป็น Markdown","inline":"เปิดใช้การฝังรูปภาพเมื่อส่งออกเป็นเครื่องหมาย","title_template":"ส่งออกเป็นเทมเพลตชื่อแฟ้ม Markdown","template":"ส่งออกเป็นเทมเพลตสำหรับแฟ้ม Markdown","title_part_template":"ส่งออกเป็นเทมเพลตชื่อของแฟ้มส่วนย่อยของ Markdown","part_template":"ส่งออกเป็นเทมเพลตของแฟ้มส่วนย่อยของ Markdown","tooltip":"[node:content] ในแม่แบบเรียกว่าตัวแปรและจะถูกแทนที่ด้วยเนื้อหาจริงเมื่อคัดลอก","inline_title":"ส่งออกเป็น Markdown รุ่นออฟไลน์","annotator":"หมายเหตุแบทช์ส่งออกด้วย Markdown","annotator_tooltip":"ส่งออกหมายเหตุประกอบเข้าด้วยกันเมื่อส่งออก Markdown","annotator_idea":"แนวคิดส่งออกด้วย Markdown","annotator_idea_tooltip":"ส่งออกหมายเหตุและความคิดเมื่อส่งออก Markdown"},"zh-CN":{"title":"导出为 Markdown","inline":"导出为 Markdown 时启用图片内嵌","title_template":"名称模版","template":"文件模版","title_part_template":"片段文件的名称模版","part_template":"片段文件的模版","tooltip":"模版中的[node:content]称为变量,复制时会被真正的内容替换掉","inline_title":"导出为离线版 Markdown","annotator":"批注随 Markdown 导出","annotator_tooltip":"导出 Markdown 时一起导出批注","annotator_idea":"想法随 Markdown 导出","annotator_idea_tooltip":"导出 Markdown 时导出批注和想法"},"zh-TW":{"title":"導出爲 Markdown","inline":"導出爲 Markdown 時啓用圖片內嵌","title_template":"名稱模版","template":"文件模版","title_part_template":"片段文件的名稱模版","part_template":"片段文件的模版","tooltip":"模版中的[node:content]稱為變數,複製時會被真正的內容替換掉","inline_title":"匯出為離線版Markdown","annotator":"批註隨 Markdown 匯出","annotator_tooltip":"匯出 Markdown 時一起匯出批註","annotator_idea":"想法隨 Markdown 匯出","annotator_idea_tooltip":"匯出 Markdown 時匯出批註和想法"}}},{"id":"export_html","type":"plugin","version":"1.0.0","title":"__title__","priority":170,"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"export_html","label":"__title__","defaultValue":{"value":"h m"}}],"toolbar":[{"group":10,"id":"export_html","label":"__title__","defaultValue":{"checked":true,"value":"<svg viewBox=\\"0 0 1024 1024\\" focusable=\\"false\\" width=\\"1em\\" height=\\"1em\\" fill=\\"currentColor\\" aria-hidden=\\"true\\"><path d=\\"M354.40128 0c-87.04 0-157.44 70.55872-157.44 157.59872v275.68128H78.72c-21.6576 0-39.36256 17.69984-39.36256 39.36256v236.31872c0 21.6576 17.69984 39.35744 39.36256 39.35744h118.24128v118.08256c0 87.04 70.4 157.59872 157.44 157.59872h472.63744c87.04 0 157.59872-70.55872 157.59872-157.59872V315.0336c0-41.74848-38.9888-81.93024-107.52-149.27872l-29.11744-29.12256L818.87744 107.52C751.5392 38.9888 711.39328 0 669.59872 0H354.4064z m0 78.72h287.20128c28.35456 7.0912 27.99616 42.1376 27.99616 76.8v120.16128c0 21.6576 17.69984 39.35744 39.36256 39.35744h118.07744c39.38816 0 78.87872-0.0256 78.87872 39.36256v512c0 43.32032-35.55328 78.87872-78.87872 78.87872H354.4064c-43.32544 0-78.72-35.5584-78.72-78.87872v-118.08256h393.91744c21.66272 0 39.36256-17.69472 39.36256-39.35744V472.64256c0-21.66272-17.69984-39.36256-39.36256-39.36256H275.68128V157.59872c0-43.32032 35.39456-78.87872 78.72-78.87872zM75.03872 493.59872h22.08256v73.92256H176.7936V493.59872h23.04v175.68256h-23.04V587.6736H97.1264v81.60256h-22.08256V493.59872z m151.68 0h121.92256v20.16256h-49.92v155.52H276.6336v-155.52h-49.92v-20.16256z m148.80256 0h32.64l49.92 143.04256h0.95744l48.96256-143.04256h33.59744v175.68256h-22.07744v-106.56256c0-10.88 0.31744-26.55744 0.95744-47.03744h-0.95744l-52.80256 153.6h-19.2l-52.79744-153.6h-0.96256c1.28 22.4 1.92 38.71744 1.92 48.95744v104.64256h-20.15744V493.59872z m214.07744 0h22.08256v155.52h69.12v20.16256h-91.20256V493.59872z\\"/></svg>"}},{"group":10,"priority":171,"access":"member","label":"__inline_title__","id":"export_html__inline","defaultValue":{"value":"<svg viewBox=\\"0 0 1024 1024\\" focusable=\\"false\\" width=\\"1em\\" height=\\"1em\\" fill=\\"currentColor\\" aria-hidden=\\"true\\"><path d=\\"M323.669333 268.501333a42.666667 42.666667 0 0 1 2.474667 57.621334l-2.474667 2.709333-168.106666 168.085333a21.333333 21.333333 0 0 0-1.749334 28.16l1.770667 2.005334 168.085333 168.085333a42.666667 42.666667 0 0 1-57.642666 62.826667l-2.709334-2.496-168.085333-168.064a106.666667 106.666667 0 0 1-3.669333-146.986667l3.669333-3.882667 168.106667-168.064a42.666667 42.666667 0 0 1 60.330666 0z m376.661334 0a42.666667 42.666667 0 0 1 60.352 0l168.085333 168.064 3.669333 3.861334a106.666667 106.666667 0 0 1-3.669333 146.986666l-168.106667 168.106667-2.688 2.474667a42.666667 42.666667 0 0 1-57.642666-62.826667l168.106666-168.085333 1.749334-2.005334a21.333333 21.333333 0 0 0-1.770667-28.16l-168.085333-168.085333-2.474667-2.709333a42.666667 42.666667 0 0 1 2.474667-57.621334z m-131.925334-6.314666a42.666667 42.666667 0 0 1 30.165334 52.266666L488.106667 726.549333a42.666667 42.666667 0 1 1-82.410667-22.101333l110.421333-412.117333a42.666667 42.666667 0 0 1 52.266667-30.165334z\\"></path></svg>"}}],"floatbox":[{"id":"export_html","label":"__title__","defaultValue":{"value":"<svg viewBox=\\"0 0 1024 1024\\" focusable=\\"false\\" width=\\"1em\\" height=\\"1em\\" fill=\\"currentColor\\" aria-hidden=\\"true\\"><path d=\\"M354.40128 0c-87.04 0-157.44 70.55872-157.44 157.59872v275.68128H78.72c-21.6576 0-39.36256 17.69984-39.36256 39.36256v236.31872c0 21.6576 17.69984 39.35744 39.36256 39.35744h118.24128v118.08256c0 87.04 70.4 157.59872 157.44 157.59872h472.63744c87.04 0 157.59872-70.55872 157.59872-157.59872V315.0336c0-41.74848-38.9888-81.93024-107.52-149.27872l-29.11744-29.12256L818.87744 107.52C751.5392 38.9888 711.39328 0 669.59872 0H354.4064z m0 78.72h287.20128c28.35456 7.0912 27.99616 42.1376 27.99616 76.8v120.16128c0 21.6576 17.69984 39.35744 39.36256 39.35744h118.07744c39.38816 0 78.87872-0.0256 78.87872 39.36256v512c0 43.32032-35.55328 78.87872-78.87872 78.87872H354.4064c-43.32544 0-78.72-35.5584-78.72-78.87872v-118.08256h393.91744c21.66272 0 39.36256-17.69472 39.36256-39.35744V472.64256c0-21.66272-17.69984-39.36256-39.36256-39.36256H275.68128V157.59872c0-43.32032 35.39456-78.87872 78.72-78.87872zM75.03872 493.59872h22.08256v73.92256H176.7936V493.59872h23.04v175.68256h-23.04V587.6736H97.1264v81.60256h-22.08256V493.59872z m151.68 0h121.92256v20.16256h-49.92v155.52H276.6336v-155.52h-49.92v-20.16256z m148.80256 0h32.64l49.92 143.04256h0.95744l48.96256-143.04256h33.59744v175.68256h-22.07744v-106.56256c0-10.88 0.31744-26.55744 0.95744-47.03744h-0.95744l-52.80256 153.6h-19.2l-52.79744-153.6h-0.96256c1.28 22.4 1.92 38.71744 1.92 48.95744v104.64256h-20.15744V493.59872z m214.07744 0h22.08256v155.52h69.12v20.16256h-91.20256V493.59872z\\"/></svg>"}}],"annotator":[{"id":"export_html","label":"__title__","defaultValue":{"value":"<svg viewBox=\\"0 0 1024 1024\\" focusable=\\"false\\" width=\\"1em\\" height=\\"1em\\" fill=\\"currentColor\\" aria-hidden=\\"true\\"><path d=\\"M354.40128 0c-87.04 0-157.44 70.55872-157.44 157.59872v275.68128H78.72c-21.6576 0-39.36256 17.69984-39.36256 39.36256v236.31872c0 21.6576 17.69984 39.35744 39.36256 39.35744h118.24128v118.08256c0 87.04 70.4 157.59872 157.44 157.59872h472.63744c87.04 0 157.59872-70.55872 157.59872-157.59872V315.0336c0-41.74848-38.9888-81.93024-107.52-149.27872l-29.11744-29.12256L818.87744 107.52C751.5392 38.9888 711.39328 0 669.59872 0H354.4064z m0 78.72h287.20128c28.35456 7.0912 27.99616 42.1376 27.99616 76.8v120.16128c0 21.6576 17.69984 39.35744 39.36256 39.35744h118.07744c39.38816 0 78.87872-0.0256 78.87872 39.36256v512c0 43.32032-35.55328 78.87872-78.87872 78.87872H354.4064c-43.32544 0-78.72-35.5584-78.72-78.87872v-118.08256h393.91744c21.66272 0 39.36256-17.69472 39.36256-39.35744V472.64256c0-21.66272-17.69984-39.36256-39.36256-39.36256H275.68128V157.59872c0-43.32032 35.39456-78.87872 78.72-78.87872zM75.03872 493.59872h22.08256v73.92256H176.7936V493.59872h23.04v175.68256h-23.04V587.6736H97.1264v81.60256h-22.08256V493.59872z m151.68 0h121.92256v20.16256h-49.92v155.52H276.6336v-155.52h-49.92v-20.16256z m148.80256 0h32.64l49.92 143.04256h0.95744l48.96256-143.04256h33.59744v175.68256h-22.07744v-106.56256c0-10.88 0.31744-26.55744 0.95744-47.03744h-0.95744l-52.80256 153.6h-19.2l-52.79744-153.6h-0.96256c1.28 22.4 1.92 38.71744 1.92 48.95744v104.64256h-20.15744V493.59872z m214.07744 0h22.08256v155.52h69.12v20.16256h-91.20256V493.59872z\\"/></svg>"}}],"option":[{"id":"export_html","label":"__title__","tooltip":"__tooltip__","more":"docs/token.html","data":[{"access":"member","id":"inline","label":"__inline__","defaultValue":false},{"type":"template","id":"title_template","label":"__title_template__","defaultValue":""},{"access":"member","id":"template","type":"template","label":"__template__","defaultValue":""},{"type":"template","id":"title_part_template","label":"__title_part_template__","defaultValue":""},{"access":"member","type":"template","id":"part_template","label":"__part_template__","defaultValue":""}]}]},"i18n":{"en":{"title":"Export as HTML","inline":"Embed Images","title_template":"Name Template","template":"File Template","title_part_template":"Fragment File Name Template","part_template":"Fragment File Template","tooltip":"[node:content] in the template is called a variable and will be replaced with actual content when copying","inline_title":"Export as Offline HTML"},"ja":{"title":"HTMLとしてエクスポート","inline":"画像を埋め込む","title_template":"名前テンプレート","template":"ファイルテンプレート","title_part_template":"フラグメントファイル名テンプレート","part_template":"フラグメントファイルテンプレート","tooltip":"テンプレート内の[node:content]は変数と呼ばれ、コピー時に実際のコンテンツに置き換えられます","inline_title":"オフラインHTMLとしてエクスポート"},"ko":{"title":"HTML로 내보내기","inline":"이미지 포함","title_template":"이름 템플릿","template":"파일 템플릿","title_part_template":"조각 파일 이름 템플릿","part_template":"조각 파일 템플릿","tooltip":"템플릿의 [node:content]는 변수라고 하며 복사 시 실제 내용으로 대체됩니다","inline_title":"오프라인 HTML로 내보내기"},"th":{"title":"ส่งออกเป็น HTML","inline":"ฝังรูปภาพ","title_template":"เทมเพลตชื่อ","template":"เทมเพลตไฟล์","title_part_template":"เทมเพลตชื่อไฟล์ส่วน","part_template":"เทมเพลตไฟล์ส่วน","tooltip":"[node:content] ในเทมเพลตเรียกว่าตัวแปรและจะถูกแทนที่ด้วยเนื้อหาจริงเมื่อคัดลอก","inline_title":"ส่งออกเป็น HTML แบบออฟไลน์"},"zh-CN":{"title":"导出为 HTML","inline":"图片内嵌","title_template":"名称模版","template":"文件模版","title_part_template":"片段文件的名称模版","part_template":"片段文件的模版","tooltip":"模版中的[node:content]称为变量,复制时会被真正的内容替换掉","inline_title":"导出为离线版 HTML"},"zh-TW":{"title":"匯出為 HTML","inline":"圖片內嵌","title_template":"名稱模版","template":"文件模版","title_part_template":"片段文件的名稱模版","part_template":"片段文件的模版","tooltip":"模版中的[node:content]稱為變量,複製時會被真正的內容替換掉","inline_title":"匯出為離線版 HTML"}}},{"id":"entry","type":"plugin","version":"1.0.0","title":"__title__","runAt":"bootstrap","core":true,"enabled":true,"priority":460,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","i18n":{"en":{"title":"Quick Access Entry","description":"After enabling, a button will appear in the bottom right corner of the page, click to quickly enter reading mode"},"ja":{"title":"クイックアクセスエントリー","description":"有効にすると、ページ右下にボタンが表示され、クリックで素早く読書モードに入ります"},"ko":{"title":"빠른 접근 진입점","description":"활성화하면 페이지 오른쪽 하단에 버튼이 나타나며, 클릭하여 빠르게 읽기 모드로 진입합니다"},"th":{"title":"ทางเข้าถึงด่วน","description":"เมื่อเปิดใช้งาน ปุ่มจะปรากฏที่มุมขวาล่างของหน้า คลิกเพื่อเข้าสู่โหมดการอ่านอย่างรวดเร็ว"},"zh-CN":{"title":"快捷访问入口","description":"启用后在页面右下角会出现一个按钮,点击快速进入阅读模式"},"zh-TW":{"title":"快捷存取入口","description":"啟用後在頁面右下角會出現一個按鈕,點擊快速進入閱讀模式"}}},{"id":"edit","type":"plugin","version":"1.0.0","title":"__title__","priority":100,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"edit","label":"__title__","defaultValue":{"value":"e t"}}],"toolbar":[{"group":5,"id":"edit","label":"__title__","more":"docs/edit.html","defaultValue":{"checked":true,"value":"EditOutlined"}}]},"i18n":{"en":{"title":"Edit Content","description":"Simple text editing, refresh to invalidate","got_it":"Got it","alert":"Entered edit mode, click text to start editing. Run \'Edit Content\' again or click blank areas on both sides to exit~"},"ja":{"title":"コンテンツ編集","description":"テキストの簡単な編集、更新で無効化","got_it":"了解しました","alert":"編集モードに入りました。テキストをクリックして編集を開始してください。\'コンテンツ編集\'を再度実行するか、ページ両側の空白部分をクリックして終了できます~"},"ko":{"title":"내용 편집","description":"본문 간단 편집, 새로고침으로 무효화","got_it":"알겠습니다","alert":"편집 모드로 진입했습니다. 텍스트를 클릭하여 편집을 시작하세요. \'내용 편집\' 작업을 다시 실행하거나 페이지 양쪽의 빈 영역을 클릭하여 종료할 수 있습니다~"},"th":{"title":"แก้ไขเนื้อหา","description":"แก้ไขข้อความอย่างง่าย รีเฟรชเพื่อยกเลิก","got_it":"เข้าใจแล้ว","alert":"เข้าสู่โหมดแก้ไขแล้ว คลิกที่ข้อความเพื่อเริ่มแก้ไข รัน \'แก้ไขเนื้อหา\' อีกครั้งหรือคลิกพื้นที่ว่างทั้งสองด้านเพื่อออก~"},"zh-CN":{"title":"编辑内容","description":"对正文进行简单的编辑,刷新失效","got_it":"我知道了","alert":"已进入编辑模式,点击文字开始编辑吧。再次运行“编辑内容”操作或者点击页面两侧空白区域可以退出哦~"},"zh-TW":{"title":"編輯內容","description":"對正文進行簡單的編輯,重新整理失效","got_it":"我知道了","alert":"已進入編輯模式,點擊文字開始編輯吧。再次執行「編輯內容」操作或點擊頁面兩側空白區域可以退出哦~"}}},{"id":"donate","type":"plugin","version":"1.0.0","title":"__title__","core":true,"enabled":true,"dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","i18n":{"en":{"title":"Support Us","flower":"Flower","drumsticks":"Drumsticks","coffee":"Coffee","meal":"Meal","custom":"Custom","tips_title":"In this journey together, your support shines like a star in the night sky, illuminating our path. Whether it\'s a gentle glow or a bright light, every bit of support you give is the most heartwarming affirmation. ✨","unit":"USD","pay":"Support","agree_license":"Payment indicates agreement to the Payment Terms","tips_success":"Thank you for your support! Your name will soon appear on our Supporters List ✨","scan_pay":"Scan to Pay","wxpay":"WeChat","alipay":"Alipay","scan_pay_tooltip":"Open $pay$ to scan and pay $data$ USD","pay_done":"Paid","bill_title":"We deeply appreciate that every contribution you make is not just an appreciation of our work, but also an acknowledgment of this shared journey. Here, all supporters are equally valued, and every warm name will be forever etched in our memory.","tips":"Support","bills":"Supporters","empty":"No data available"},"ja":{"title":"サポート","flower":"花","drumsticks":"ドラムスティック","coffee":"コーヒー","meal":"食事","custom":"カスタム","tips_title":"この旅路で、あなたのサポートは夜空の星のように輝き、私たちの道を照らしてくれます。微かな光でも、強い光でも、いただくサポートの一つ一つが、私たちにとって最も温かい励ましとなっています。✨","unit":"円","pay":"サポート","agree_license":"支払いは利用規約への同意を意味します","tips_success":"ご支援ありがとうございます!まもなくあなたのお名前がサポーターリストに表示されます✨","scan_pay":"QRコードで支払い","wxpay":"WeChat","alipay":"Alipay","scan_pay_tooltip":"$pay$ を開いてスキャンし、$data$ 円を支払ってください","pay_done":"支払い完了","bill_title":"私たちは、あなたのご支援の一円一円が、単なる評価以上の意味を持つことを深く理解しています。ここでは、すべてのサポーターが平等に評価され、温かいお名前は永遠に私たちの記憶に刻まれます。","tips":"サポート","bills":"サポーター","empty":"データなし"},"ko":{"title":"지원하기","flower":"꽃","drumsticks":"치킨","coffee":"커피","meal":"식사","custom":"기타","tips_title":"이 여정에서 여러분의 지원은 밤하늘의 별처럼 빛나며 우리의 길을 비춰줍니다. 작은 빛이든 밝은 빛이든, 여러분이 주신 모든 지원은 우리에게 가장 따뜻한 격려가 됩니다. ✨","unit":"원","pay":"지원하기","agree_license":"결제는 이용약관 동의를 의미합니다","tips_success":"지원해 주셔서 감사합니다! 곧 여러분의 이름이 후원자 목록에 표시될 예정입니다 ✨","scan_pay":"QR코드로 결제","wxpay":"위챗","alipay":"알리페이","scan_pay_tooltip":"$pay$ 앱을 열어 스캔하고 $data$ 원을 결제해 주세요","pay_done":"결제 완료","bill_title":"우리는 여러분이 보내주신 모든 후원금이 단순한 평가를 넘어선 의미를 가진다는 것을 잘 알고 있습니다. 여기서는 모든 후원자가 동등하게 평가되며, 따뜻한 이름들은 영원히 우리의 기억에 남을 것입니다.","tips":"지원","bills":"후원자","empty":"데이터 없음"},"th":{"title":"สนับสนุน","flower":"ดอกไม้","drumsticks":"ขาไก่","coffee":"กาแฟ","meal":"มื้ออาหาร","custom":"กำหนดเอง","tips_title":"ในการเดินทางครั้งนี้ การสนับสนุนของคุณเปล่งประกายเหมือนดาวบนท้องฟ้ายามค่ำคืน ส่องสว่างทางให้เรา ไม่ว่าจะเป็นแสงสลัวหรือสว่างจ้า ทุกการสนับสนุนที่คุณมอบให้คือกำลังใจที่อบอุ่นที่สุดสำหรับเรา ✨","unit":"บาท","pay":"สนับสนุน","agree_license":"การชำระเงินหมายถึงการยอมรับข้อตกลงการใช้งาน","tips_success":"ขอบคุณสำหรับการสนับสนุน! ชื่อของคุณจะปรากฏในรายชื่อผู้สนับสนุนเร็วๆ นี้ ✨","scan_pay":"สแกน QR เพื่อชำระเงิน","wxpay":"WeChat","alipay":"Alipay","scan_pay_tooltip":"เปิด $pay$ เพื่อสแกนและชำระเงิน $data$ บาท","pay_done":"ชำระเงินแล้ว","bill_title":"เราตระหนักดีว่าทุกบาทที่คุณสนับสนุนไม่ใช่แค่การชื่นชม แต่ยังเป็นการยอมรับในความร่วมมือของเราในการเดินทางครั้งนี้ ที่นี่ ผู้สนับสนุนทุกคนได้รับการยกย่องเท่าเทียมกัน และชื่อที่อบอุ่นของคุณจะถูกจารึกไว้ในความทรงจำของเราตลอดไป","tips":"สนับสนุน","bills":"ผู้สนับสนุน","empty":"ไม่มีข้อมูล"},"zh-CN":{"title":"打赏支持","flower":"鲜花","drumsticks":"鸡腿","coffee":"咖啡","meal":"吃顿饭","custom":"其他","tips_title":"在这段共赴远方的旅程中,您的一份心意,宛如夜空中那颗闪亮的星,照亮了我们的路途。无论是微光还是炽烈,您给予的每一丝支持,都是对我们最温柔的肯定。✨","unit":"元","pay":"打赏","agree_license":"支付则代表同意《支付协议》","tips_success":"感谢支持!稍候您的名字将如星光般,点亮在我们的打赏榜单中✨","scan_pay":"扫码支付","wxpay":"微信","alipay":"支付宝","scan_pay_tooltip":"打开 $pay$ 扫一扫,支付 ¥ $data$ 元","pay_done":"已支付","bill_title":"我们深知,您投来的每一分钱,不仅是对我们的欣赏,更是对这段旅途的同行认同。在这里,排名不分先后,所有温暖的名字将永远铭刻在我们的记忆中。","tips":"支持","bills":"榜单","empty":"暂无数据"},"zh-TW":{"title":"打賞支持","flower":"鮮花","drumsticks":"雞腿","coffee":"咖啡","meal":"吃頓飯","custom":"其他","tips_title":"在這段共赴遠方的旅程中,您的一份心意,宛如夜空中那顆閃亮的星,照亮了我們的路途。 無論是微光還是熾烈,您給予的每一絲支持,都是對我們最溫柔的肯定。 ✨","unit":"元","pay":"打賞","agree_license":"我已閱讀並同意《支付協議》","tips_success":"感謝支持! 稍候您的名字將如星光般,點亮在我們的打賞榜單中 ✨","scan_pay":"掃碼支付","wxpay":"微信","alipay":"支付寶","scan_pay_tooltip":"打開 $pay$ 掃一掃,支付¥ $data$ 元","pay_done":"已支付","bill_title":"我們深知,您投來的每一分錢,不僅是對我們的欣賞,更是對這段旅途的同行認同。 在這裡,排名不分先後,所有溫暖的名字將永遠銘刻在我們的記憶中。","tips":"支持","bills":"榜單","empty":"暫無數據"}}},{"id":"display","type":"plugin","version":"1.0.0","title":"__title__","core":true,"enabled":true,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","i18n":{"en":{"title":"React & Antd Adaptation Layer","description":"Adaptation layer for React and Ant Design, providing capabilities for other plugins"},"ja":{"title":"React & Antd アダプション層","description":"React と Ant Design のアダプション層、他のプラグインに機能を提供"},"ko":{"title":"React & Antd 적응 계층","description":"React와 Ant Design의 적응 계층, 다른 플러그인에 기능 제공"},"th":{"title":"ชั้นการปรับตัว React & Antd","description":"ชั้นการปรับตัวสำหรับ React และ Ant Design ให้ความสามารถแก่ปลั๊กอินอื่นๆ"},"zh-CN":{"title":"React & Antd 适配层","description":"React 和 Ant Design 的适配层,仅为其他插件提供能力"},"zh-TW":{"title":"React & Antd 適配層","description":"React 和 Ant Design 的適配層,為其他插件提供功能"}}},{"id":"copy_rich","type":"plugin","version":"1.0.0","title":"__title__","priority":40,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"copy_rich","label":"__title__","defaultValue":{"value":"c p"}}],"menu":[{"id":"copy_rich","label":"__title__"}],"toolbar":[{"group":0,"id":"copy_rich","label":"__title__","defaultValue":{"checked":true,"value":"CopyOutlined"}}],"floatbox":[{"priority":60,"id":"copy_rich","label":"__title__","defaultValue":{"checked":true,"value":"CopyOutlined"}}],"annotator":[{"id":"copy_rich","label":"__title__","defaultValue":{"checked":true,"value":"CopyOutlined"}}],"option":[{"id":"copy_rich","type":"template","label":"__title__","tooltip":"__placeholder__","more":"docs/token.html","data":[{"id":"template","access":"member","label":"__template__","defaultValue":""},{"id":"part_template","access":"member","label":"__part_template__","defaultValue":""}]}]},"i18n":{"en":{"title":"Copy","description":"Copy content with one click","placeholder":"[node:content] in the template is called a variable and will be replaced with actual content when copying","template":"Template for copying","part_template":"Template for copying rich text fragments"},"ja":{"title":"コピー","description":"ワンクリックで本文をコピー","placeholder":"テンプレート内の[node:content]は変数と呼ばれ、コピー時に実際のコンテンツに置き換えられます","template":"コピー時のテンプレート","part_template":"リッチテキストフラグメントをコピーする際のテンプレート"},"ko":{"title":"복사","description":"한 번의 클릭으로 내용 복사","placeholder":"템플릿의 [node:content]는 변수라고 하며 복사 시 실제 내용으로 대체됩니다","template":"복사 시 템플릿","part_template":"서식 있는 텍스트 조각을 복사할 때의 템플릿"},"th":{"title":"คัดลอก","description":"คัดลอกเนื้อหาด้วยการคลิกครั้งเดียว","placeholder":"[node:content] ในเทมเพลตเรียกว่าตัวแปรและจะถูกแทนที่ด้วยเนื้อหาจริงเมื่อคัดลอก","template":"เทมเพลตสำหรับการคัดลอก","part_template":"เทมเพลตสำหรับคัดลอกส่วนข้อความแบบ rich text"},"zh-CN":{"title":"复制","description":"一键复制正文","placeholder":"模版中的[node:content]称为变量,复制时会被真正的内容替换掉","template":"复制时的模版","part_template":"富文本片段被复制时的模版"},"zh-TW":{"title":"複製","description":"一鍵複製正文","placeholder":"模版中的[node:content]稱為變量,複製時會被真正的內容替換掉","template":"複製時的模版","part_template":"富文本片段被複製時的模版"}}},{"id":"copy_marked","type":"plugin","version":"1.0.0","title":"__title__","priority":130,"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"copy_marked","label":"__title__","defaultValue":{"value":"c m"}}],"menu":[{"id":"copy_marked","label":"__title__"}],"toolbar":[{"group":10,"id":"copy_marked","label":"__title__","defaultValue":{"checked":true,"value":"FileMarkdownOutlined"}}],"floatbox":[{"id":"copy_marked","label":"__title__","defaultValue":{"checked":true,"value":"FileMarkdownOutlined"}}],"annotator":[{"id":"copy_marked","label":"__title__","defaultValue":{"checked":true,"value":"FileMarkdownOutlined"}}],"option":[{"id":"copy_marked","label":"__title__","tooltip":"__placeholder__","more":"docs/token.html","type":"template","data":[{"access":"member","id":"template","label":"__template__","defaultValue":""},{"access":"member","id":"part_template","label":"__part_template__","defaultValue":""}]}]},"i18n":{"en":{"title":"Copy as Markdown","placeholder":"[node:content] in the template is called a variable and will be replaced with actual content when copying","template":"Template when document is copied","part_template":"Template when document fragment is copied"},"ja":{"title":"Markdownとしてコピー","placeholder":"テンプレート内の[node:content]は変数と呼ばれ、コピー時に実際のコンテンツに置き換えられます","template":"ドキュメントをコピーする際のテンプレート","part_template":"ドキュメントフラグメントをコピーする際のテンプレート"},"ko":{"title":"Markdown으로 복사","placeholder":"템플릿의 [node:content]는 변수라고 하며 복사 시 실제 내용으로 대체됩니다","template":"문서 복사 시 템플릿","part_template":"문서 조각 복사 시 템플릿"},"th":{"title":"คัดลอกเป็น Markdown","placeholder":"[node:content] ในเทมเพลตเรียกว่าตัวแปรและจะถูกแทนที่ด้วยเนื้อหาจริงเมื่อคัดลอก","template":"เทมเพลตเมื่อคัดลอกเอกสาร","part_template":"เทมเพลตเมื่อคัดลอกส่วนเอกสาร"},"zh-CN":{"title":"复制为 Markdown","placeholder":"模版中的[node:content]称为变量,复制时会被真正的内容替换掉","template":"文档被复制时的模版","part_template":"文档片段被复制时的模版"},"zh-TW":{"title":"複製為 Markdown","placeholder":"模版中的[node:content]稱為變量,複製時會被真正的內容替換掉","template":"文檔被複製時的模版","part_template":"文檔片段被複製時的模版"}}},{"id":"copy","type":"plugin","version":"1.0.0","title":"__title__","core":true,"enabled":true,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","i18n":{"en":{"title":"Copy","description":"Copy content","success":"Copied successfully","fail":"Copy failed","safari_copy":"Click to confirm copying"},"ja":{"title":"コピー","description":"コンテンツをコピー","success":"コピーしました","fail":"コピーに失敗しました","safari_copy":"クリックしてコピーを確認します"},"ko":{"title":"복사","description":"내용 복사","success":"복사되었습니다","fail":"복사 실패","safari_copy":"복사를 확인하려면 클릭하세요."},"th":{"title":"คัดลอก","description":"คัดลอกเนื้อหา","success":"คัดลอกเรียบร้อยแล้ว","fail":"คัดลอกไม่สำเร็จ","safari_copy":"คลิกเพื่อยืนยันการคัดลอก"},"zh-CN":{"title":"复制","description":"复制内容","success":"复制成功","fail":"复制失败","safari_copy":"点击确认复制"},"zh-TW":{"title":"複製","description":"複製內容","success":"複製成功","fail":"複製失敗","safari_copy":"點選確認複製"}}},{"id":"code","type":"plugin","version":"1.0.0","title":"__title__","runAt":"code","priority":220,"description":"__description__","dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"code_exit","label":"__exit__","defaultValue":{"value":"x c"}}],"option":[{"id":"code","type":"icon_switch","label":"__title__","data":[{"id":"copy","label":"__copy__","defaultValue":{"checked":true,"value":"CopyOutlined"}},{"id":"enlarge","label":"__arrowsalt__","defaultValue":{"checked":true,"value":"ArrowsAltOutlined"}}]}]},"i18n":{"en":{"title":"Code Highlight","description":"Highlight reformatted code","exit":"Exit code view","copy":"Copy","arrowsalt":"Expand","shrink":"Collapse","no_buttons":"No available actions found","to_enable":"Enable"},"ja":{"title":"コードハイライト","description":"再フォーマットされたコードをハイライト","exit":"コードビューを終了","copy":"コピー","arrowsalt":"展開","shrink":"折りたたみ","no_buttons":"利用可能な操作が見つかりません","to_enable":"有効にする"},"ko":{"title":"코드 하이라이트","description":"재포맷된 코드 하이라이트","exit":"코드 보기 종료","copy":"복사","arrowsalt":"확장","shrink":"축소","no_buttons":"사용 가능한 작업을 찾을 수 없습니다","to_enable":"활성화"},"th":{"title":"ไฮไลต์โค้ด","description":"ไฮไลต์โค้ดที่จัดรูปแบบใหม่","exit":"ออกจากมุมมองโค้ด","copy":"คัดลอก","arrowsalt":"ขยาย","shrink":"ย่อ","no_buttons":"ไม่พบการดำเนินการที่ใช้ได้","to_enable":"เปิดใช้งาน"},"zh-CN":{"title":"代码高亮","description":"高亮重新排版之后的代码","exit":"退出代码视图","copy":"复制","arrowsalt":"展开","shrink":"收起","no_buttons":"未发现任何可用操作","to_enable":"开启"},"zh-TW":{"title":"程式碼醒目提示","description":"醒目提示重新排版後的程式碼","exit":"退出程式碼檢視","copy":"複製","arrowsalt":"展開","shrink":"收合","no_buttons":"未發現任何可用操作","to_enable":"開啟"}}},{"id":"backup","type":"plugin","version":"1.0.0","title":"__title__","priority":262,"description":"__description__","author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"backup","label":"__title__","defaultValue":{"value":""}}],"menu":[{"id":"backup","label":"__title__"}],"toolbar":[{"group":25,"id":"backup","label":"__title__","defaultValue":{"checked":true,"value":"GoldOutlined"}}],"account":[{"priority":11.5,"type":"backup","label":"__title__","tooltip":"__description__"}]},"i18n":{"en":{"title":"Data Backup","description":"Back up all your data to the cloud","busy":"Operation in progress, please try again later","success":"Successfully restored from backup","sure_remove":"Are you sure you want to delete this backup?","sure_use":"Are you sure you want to use this backup?","done":"Backup successful","check":"Detail"},"ja":{"title":"データバックアップ","description":"すべてのデータをクラウドにバックアップ","busy":"処理中です。後でもう一度お試しください","success":"バックアップから復元しました","sure_remove":"このバックアップを削除してもよろしいですか?","sure_use":"このバックアップを使用してもよろしいですか?","done":"バックアップ成功","check":"見る"},"ko":{"title":"데이터 백업","description":"모든 데이터를 클라우드에 백업","busy":"처리 중입니다. 나중에 다시 시도해 주세요","success":"백업에서 복원했습니다","sure_remove":"이 백업을 삭제하시겠습니까?","sure_use":"이 백업을 사용하시겠습니까?","done":"백업 성공","check":"보기"},"th":{"title":"การสำรองข้อมูล","description":"สำรองข้อมูลเต็มรูปแบบไปยังคลาวด์","busy":"กำลังทำงานอยู่ โปรดรอสักครู่เพื่อลองอีกครั้ง","success":"กู้คืนข้อมูลจากการสำรองข้อมูลสำเร็จ","sure_remove":"คุณต้องการลบการสำรองข้อมูลนี้หรือไม่?","sure_use":"คุณต้องการใช้การสำรองข้อมูลนี้หรือไม่?","done":"สำรองข้อมูลสำเร็จ","check":"เลื่อนดูรูปภาพ"},"zh-CN":{"title":"数据备份","description":"将所有数据备份到云端","busy":"操作中,请稍后重试","success":"从备份恢复成功","sure_remove":"确认删除备份?","sure_use":"确认使用备份吗?","done":"备份成功","check":"查看"},"zh-TW":{"title":"資料備份","description":"將所有資料備份到雲端","busy":"操作中,請稍後重試","success":"從備份恢復成功","sure_remove":"確定要刪除這個備份嗎?","sure_use":"確定要使用這個備份嗎?","done":"備份成功","check":"審查"}}},{"id":"annotator","type":"plugin","version":"1.0.0","title":"__title__","runAt":"render_done","priority":70,"description":"__description__","dependencies":["floatbox","display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"annotator_close_modal","label":"__close_modal__","defaultValue":{"value":""}},{"id":"annotator_submit_modal","label":"__submit_modal__","defaultValue":{"value":""}}],"floatbox":[{"priority":10,"id":"annotator","label":"__title__","renderPanel":true,"defaultValue":{"checked":true,"value":"HighlightOutlined"}},{"priority":15,"id":"annotator__idea","label":"__add_idea__","defaultValue":{"checked":true,"value":"BulbOutlined"}}],"option":[{"id":"annotator","label":"__title__","data":[{"id":"display_idea","defaultValue":true,"label":"__display_idea__","tooltip":"__display_idea_tooltip__"},{"id":"layout","defaultValue":true,"label":"__layout__","tooltip":"__layout_tooltip__"},{"more":"docs/token.html","id":"template","access":"member","type":"template","label":"__export_format__","tooltip":"__export_format_tooltip__","defaultValue":"“[node:text]” [node:idea] - [来自:[node:title]]([node:url])"}]}],"annotator":{"type":"icon_switch","label":"__annotator_action__","tooltip":"__annotator_action_description__","icon":"ThunderboltOutlined"}},"i18n":{"en":{"title":"Annotate","description":"Add annotations to content","add_idea":"Add Thought","display_idea":"Show Thoughts","display_idea_tooltip":"Show thoughts when hovering over annotated text","export_format":"Export Format","export_format_tooltip":"[node:text] in the configuration is a variable that will be replaced with actual content during export","annotator_action":"Annotation Actions","annotator_action_description":"Available actions in annotation management panel besides edit and delete","color":"Color","style":"Style","select_first":"Please select text first","text":"Text","tags":"Tags","idea":"Thought","remove":"Confirm deletion?","no_data":"No data yet, try selecting some text~","data_empty":"No content found","template_empty":"Please configure template first","ok":"OK","cancel":"Cancel","layout":"Print Highlight","layout_tooltip":"Highlight annotations when printing","close_modal":"Close annotation dialog","submit_modal":"Save annotation","tag_add":"Add tag","edit":"Edit","setting":"Settings","docs":"Documentation"},"ja":{"title":"注釈","description":"コンテンツに注釈を付ける","add_idea":"アイデアを追加","display_idea":"アイデアを表示","display_idea_tooltip":"注釈テキストにマウスを合わせるとアイデアを表示","export_format":"エクスポート形式","export_format_tooltip":"設定内の[node:text]は変数で、エクスポート時に実際のコンテンツに置き換えられます","annotator_action":"注釈操作","annotator_action_description":"注釈管理パネルで編集と削除以外の利用可能な操作","color":"色","style":"スタイル","select_first":"先にテキストを選択してください","text":"テキスト","tags":"タグ","idea":"アイデア","remove":"削除を確認しますか?","no_data":"データがありません。テキストを選択してみてください","data_empty":"コンテンツが見つかりません","template_empty":"先にテンプレートを設定してください","ok":"確認","cancel":"キャンセル","layout":"印刷ハイライト","layout_tooltip":"印刷時にハイライトを表示","close_modal":"注釈ダイアログを閉じる","submit_modal":"注釈を保存","tag_add":"タグを追加","edit":"編集","setting":"設定","docs":"ドキュメント"},"ko":{"title":"주석","description":"콘텐츠에 주석 달기","add_idea":"아이디어 추가","display_idea":"아이디어 표시","display_idea_tooltip":"주석 텍스트에 마우스를 올리면 아이디어 표시","export_format":"내보내기 형식","export_format_tooltip":"설정의 [node:text]는 변수이며, 내보내기 시 실제 내용으로 대체됩니다","annotator_action":"주석 작업","annotator_action_description":"주석 관리 패널에서 편집과 삭제 외의 사용 가능한 작업","color":"색상","style":"스타일","select_first":"먼저 텍스트를 선택해 주세요","text":"텍스트","tags":"태그","idea":"아이디어","remove":"삭제하시겠습니까?","no_data":"데이터가 없습니다. 텍스트를 선택해 보세요~","data_empty":"내용을 찾을 수 없습니다","template_empty":"먼저 템플릿을 설정해 주세요","ok":"확인","cancel":"취소","layout":"인쇄 강조","layout_tooltip":"인쇄 시 강조 표시","close_modal":"주석 대화상자 닫기","submit_modal":"주석 저장","tag_add":"태그 추가","edit":"편집","setting":"설정","docs":"문서"},"th":{"title":"คำอธิบายประกอบ","description":"เพิ่มคำอธิบายประกอบในเนื้อหา","add_idea":"เพิ่มความคิด","display_idea":"แสดงความคิด","display_idea_tooltip":"แสดงความคิดเมื่อเลื่อนเมาส์ไปที่ข้อความที่มีคำอธิบายประกอบ","export_format":"รูปแบบการส่งออก","export_format_tooltip":"[node:text] ในการตั้งค่าเป็นตัวแปรที่จะถูกแทนที่ด้วยเนื้อหาจริงเมื่อส่งออก","annotator_action":"การดำเนินการคำอธิบายประกอบ","annotator_action_description":"การดำเนินการที่ใช้ได้ในแผงควบคุมการจัดการคำอธิบายประกอบนอกเหนือจากการแก้ไขและลบ","color":"สี","style":"สไตล์","select_first":"กรุณาเลือกข้อความก่อน","text":"ข้อความ","tags":"แท็ก","idea":"ความคิด","remove":"ยืนยันการลบ?","no_data":"ยังไม่มีข้อมูล ลองเลือกข้อความดู~","data_empty":"ไม่พบเนื้อหา","template_empty":"กรุณาตั้งค่าเทมเพลตก่อน","ok":"ตกลง","cancel":"ยกเลิก","layout":"ไฮไลต์การพิมพ์","layout_tooltip":"ไฮไลต์เมื่อพิมพ์","close_modal":"ปิดกล่องโต้ตอบคำอธิบายประกอบ","submit_modal":"บันทึกคำอธิบายประกอบ","tag_add":"เพิ่มแท็ก","edit":"แก้ไข","setting":"ตั้งค่า","docs":"เอกสาร"},"zh-CN":{"title":"批注","description":"对内容进行标注","add_idea":"添加想法","display_idea":"显示想法","display_idea_tooltip":"鼠标悬停在批注文本上显示想法","export_format":"导出格式","export_format_tooltip":"配置中的[node:text]是变量,导出时会被真正的内容替换掉","annotator_action":"批注操作","annotator_action_description":"批注管理面板除编辑和删除之外的可用操作","color":"颜色","style":"样式","select_first":"请先划选文本","text":"文本","tags":"标签","idea":"想法","remove":"确认删除?","no_data":"暂无数据,试试划选文字吧~","data_empty":"未发现任何内容","template_empty":"请先配置模版","ok":"确定","cancel":"取消","layout":"打印高亮","layout_tooltip":"打印时高亮划线","close_modal":"关闭标注弹窗","submit_modal":"保存标注弹窗","tag_add":"添加标签","edit":"编辑","setting":"设置","docs":"文档"},"zh-TW":{"title":"批註","description":"對內容進行標註","add_idea":"添加想法","display_idea":"顯示想法","display_idea_tooltip":"滑鼠懸停在批註文字上顯示想法","export_format":"匯出格式","export_format_tooltip":"設定中的[node:text]是變數,匯出時會被真正的內容替換掉","annotator_action":"批註操作","annotator_action_description":"批註管理面板除編輯和刪除之外的可用操作","color":"顏色","style":"樣式","select_first":"請先劃選文字","text":"文字","tags":"標籤","idea":"想法","remove":"確認刪除?","no_data":"暫無資料,試試劃選文字吧~","data_empty":"未發現任何內容","template_empty":"請先設定範本","ok":"確定","cancel":"取消","layout":"列印醒目提示","layout_tooltip":"列印時醒目提示劃線","close_modal":"關閉標註對話方塊","submit_modal":"儲存標註","tag_add":"新增標籤","edit":"編輯","setting":"設定","docs":"文件"}}},{"id":"account","type":"plugin","version":"1.0.0","title":"__title__","core":true,"enabled":true,"priority":270,"description":"__description__","dependencies":["display"],"author":"Ranhe <wenguang.fe@gmail.com> (https://circlereader.com/)","settings":{"keys":[{"id":"account","label":"__title__","defaultValue":{"value":""}}],"menu":[{"id":"account","label":"__title__","defaultValue":{"action":true,"checked":true}}],"toolbar":[{"group":25,"id":"account","label":"__title__","defaultValue":{"checked":true,"value":"UserOutlined"}}]},"i18n":{"en":{"title":"Account Center","description":"Manage your personal information","choose_avatar":"Choose an avatar","choose":"Select Avatar","info_empty":"Please enter information to modify","modify_success":"Update successful","display_name":"Display Name","name_placeholder":"Enter username","name_min":"Minimum 3 characters","name_max":"Maximum 60 characters","name_rule":"You can use spaces, dots(.), hyphens(-), single quotes(\'), underscores(_), and @ symbol.","modify":"Update","ok":"Confirm","cancel":"Cancel","verified_code":"Verification Code","send_verified_code":"Send Code","retry_send":"Resend","register_success":"Registration successful","mail":"Email Address","mail_placeholder":"Enter email address","pass":"Password","pass_placeholder":"Enter password","pass_confirm":"Confirm Password","pass_confirm_again":"Re-enter password","pass_diff":"Passwords do not match","register":"Register","login_success":"Login successful","login":"Sign In","pass_success":"Password reset successful","old_pass":"Current Password","old_pass_placeholder":"Enter current password","new_pass":"New Password","new_pass_placeholder":"Enter new password","new_pass_again":"Re-enter new password","new_pass_confirm":"Confirm new password","reset_password":"Reset Password","price":"Amount","time":"Time","donate":"Donate","donate_again":"Donate Again","unit":"USD","role":"Subscription Type","expire":"Duration","status":"Status","buy":"Purchase","buy_again":"Purchase Again","desc":"Description","search_placeholder":"Search by keyword","empty":"No data available","page":"Page","jump":"Go to","feedback":"Feedback","feedback_again":"Submit Again","profile":"Profile","my_feedback":"My Feedback","my_order":"My Orders","my_donate":"My Donations","member":"Premium Account","premium":"Pro Account","forever":"Lifetime Account","month":"Month","order_wait":"Pending","order_cancel":"Cancelled","order_done":"Completed","pending":"Pending Review","resolve":"Resolved","rejected":"Rejected","progress":"In Progress","done":"Completed","release":"Released","duplicate":"Duplicate","reproduce":"Cannot Reproduce","action":"Action","fill":"Add Details","mail_success":"The verification code has been sent. Please check your email."},"ja":{"title":"アカウントセンター","description":"個人情報の管理","choose_avatar":"アバターを選択","choose":"アバターを選択","info_empty":"変更する情報を入力してください","modify_success":"変更が完了しました","display_name":"ニックネーム","name_placeholder":"ユーザー名を入力","name_min":"3文字以上で入力してください","name_max":"60文字以内で入力してください","name_rule":"以下の特殊文字が使用できます:スペース、ドット(.)、ハイフン(-)、シングルクォート(\')、アンダースコア(_)、@記号","modify":"変更","ok":"確認","cancel":"キャンセル","verified_code":"認証コード","send_verified_code":"認証コードを送信","retry_send":"再送信","register_success":"登録が完了しました","mail":"メールアドレス","mail_placeholder":"メールアドレスを入力","pass":"パスワード","pass_placeholder":"パスワードを入力","pass_confirm":"パスワードの確認","pass_confirm_again":"パスワードを再度入力","pass_diff":"パスワードが一致しません","register":"登録","login_success":"ログインしました","login":"ログイン","pass_success":"パスワードのリセットが完了しました","old_pass":"現在のパスワード","old_pass_placeholder":"現在のパスワードを入力","new_pass":"新しいパスワード","new_pass_placeholder":"新しいパスワードを入力","new_pass_again":"新しいパスワードを再度入力","new_pass_confirm":"新しいパスワードの確認","reset_password":"パスワードのリセット","price":"金額","time":"時間","donate":"寄付","donate_again":"再度寄付","unit":"円","role":"購入した役割","expire":"期間","status":"状態","buy":"購入","buy_again":"再度購入","desc":"説明","search_placeholder":"キーワードを入力して検索","empty":"データがありません","page":"ページ","jump":"移動","feedback":"フィードバック","feedback_again":"再度フィードバック","profile":"プロフィール","my_feedback":"マイフィードバック","my_order":"マイオーダー","my_donate":"マイ寄付","member":"プレミアムアカウント","premium":"プロアカウント","forever":"永久アカウント","month":"月","order_wait":"確認待ち","order_cancel":"キャンセル済み","order_done":"完了","pending":"確認待ち","resolve":"確認済み","rejected":"対応不可","progress":"処理中","done":"処理完了","release":"リリース済み","duplicate":"重複","reproduce":"再現不可","action":"操作","fill":"補完","mail_success":"認証コードを送信しました、メールをご確認ください"},"ko":{"title":"계정 센터","description":"내 개인정보 관리","choose_avatar":"아바타 선택","choose":"아바타 선택","info_empty":"수정할 정보를 입력해 주세요","modify_success":"수정이 완료되었습니다","display_name":"닉네임","name_placeholder":"사용자 이름을 입력해 주세요","name_min":"3자 이상 입력해 주세요","name_max":"60자 이내로 입력해 주세요","name_rule":"다음 특수문자를 사용할 수 있습니다: 공백, 점(.), 하이픈(-), 작은따옴표(\'), 밑줄(_), @ 기호","modify":"수정","ok":"확인","cancel":"취소","verified_code":"인증 코드","send_verified_code":"코드 전송","retry_send":"재전송","register_success":"등록이 완료되었습니다","mail":"이메일 주소","mail_placeholder":"이메일 주소를 입력해 주세요","pass":"비밀번호","pass_placeholder":"비밀번호를 입력해 주세요","pass_confirm":"비밀번호 확인","pass_confirm_again":"비밀번호를 다시 입력해 주세요","pass_diff":"비밀번호가 일치하지 않습니다","register":"등록","login_success":"로그인되었습니다","login":"로그인","pass_success":"비밀번호 재설정이 완료되었습니다","old_pass":"현재 비밀번호","old_pass_placeholder":"현재 비밀번호를 입력해 주세요","new_pass":"새 비밀번호","new_pass_placeholder":"새 비밀번호를 입력해 주세요","new_pass_again":"새 비밀번호를 다시 입력해 주세요","new_pass_confirm":"새 비밀번호 확인","reset_password":"비밀번호 재설정","price":"금액","time":"시간","donate":"후원","donate_again":"다시 후원","unit":"USD","role":"구매한 역할","expire":"기간","status":"상태","buy":"구매","buy_again":"다시 구매","desc":"설명","search_placeholder":"키워드를 입력하여 검색","empty":"데이터가 없습니다","page":"페이지","jump":"이동","feedback":"피드백","feedback_again":"피드백 제출","profile":"프로필","my_feedback":"내 피드백","my_order":"내 주문","my_donate":"내 후원","member":"프리미엄 계정","premium":"프로페셔널 계정","forever":"평생 계정","month":"월","order_wait":"확인 대기","order_cancel":"취소됨","order_done":"완료","pending":"대기 중","resolve":"확인됨","rejected":"거절됨","progress":"처리 중","done":"해결됨","release":"출시됨","duplicate":"중복","reproduce":"재현 불가","action":"작업","fill":"보완","mail_success":"인증코드가 발송되었습니다. 이메일을 확인해 주세요"},"th":{"title":"ศูนย์บัญชี","description":"จัดการข้อมูลส่วนตัว","choose_avatar":"เลือกรูปโปรไฟล์","choose":"เลือกรูปโปรไฟล์","info_empty":"กรอกข้อมูลที่ต้องการแก้ไข","modify_success":"แก้ไขเรียบร้อยแล้ว","display_name":"ชื่อแสดง","name_placeholder":"กรอกชื่อผู้ใช้","name_min":"กรอกอย่างน้อย 3 ตัวอักษร","name_max":"กรอกไม่เกิน 60 ตัวอักษร","name_rule":"สามารถใช้ตัวอักษรพิเศษต่อไปนี้: ช่องว่าง, จุด(.), ขีด(-), อัญประกาศเดี่ยว(\'), ขีดล่าง(_), @","modify":"แก้ไข","ok":"ตกลง","cancel":"ยกเลิก","verified_code":"รหัสยืนยัน","send_verified_code":"ส่งรหัสยืนยัน","retry_send":"ส่งซ้ำ","register_success":"ลงทะเบียนเรียบร้อยแล้ว","mail":"อีเมล","mail_placeholder":"กรอกที่อยู่อีเมล","pass":"รหัสผ่าน","pass_placeholder":"กรอกรหัสผ่าน","pass_confirm":"ยืนยันรหัสผ่าน","pass_confirm_again":"กรอกรหัสผ่านอีกครั้ง","pass_diff":"รหัสผ่านไม่ตรงกัน","register":"ลงทะเบียน","login_success":"เข้าสู่ระบบเรียบร้อยแล้ว","login":"เข้าสู่ระบบ","pass_success":"รีเซ็ตรหัสผ่านเรียบร้อยแล้ว","old_pass":"รหัสผ่านปัจจุบัน","old_pass_placeholder":"กรอกรหัสผ่านปัจจุบัน","new_pass":"รหัสผ่านใหม่","new_pass_placeholder":"กรอกรหัสผ่านใหม่","new_pass_again":"กรอกรหัสผ่านใหม่อีกครั้ง","new_pass_confirm":"ยืนยันรหัสผ่านใหม่","reset_password":"รีเซ็ตรหัสผ่าน","price":"ราคา","time":"ระยะเวลา","donate":"บริจาค","donate_again":"บริจาคเพิ่ม","unit":"บาท","role":"แผนที่ซื้อ","expire":"ระยะเวลา","status":"สถานะ","buy":"ซื้อ","buy_again":"ซื้อเพิ่ม","desc":"คำอธิบาย","search_placeholder":"ค้นหาด้วยคำค้นหา","empty":"ไม่มีข้อมูล","page":"หน้า","jump":"ไปที่","feedback":"ข้อเสนอแนะ","feedback_again":"ข้อเสนอแนะเพิ่มเติม","profile":"โปรไฟล์","my_feedback":"ข้อเสนอแนะของฉัน","my_order":"คำสั่งซื้อของฉัน","my_donate":"การบริจาคของฉัน","member":"บัญชีพรีเมียม","premium":"บัญชี Pro","forever":"บัญชีถาวร","month":"เดือน","order_wait":"รอการยืนยัน","order_cancel":"ยกเลิกแล้ว","order_done":"เสร็จสิ้น","pending":"รอดำเนินการ","resolve":"แก้ไขแล้ว","rejected":"ปฏิเสธแล้ว","progress":"กำลังดำเนินการ","done":"ดำเนินการเสร็จสิ้น","release":"เผยแพร่แล้ว","duplicate":"ซ้ำซ้อน","reproduce":"ไม่สามารถทำซ้ำได้","action":"ดำเนินการ","fill":"เติมเต็ม","mail_success":"รหัสยืนยัน已被ส่งแล้ว กรุณาตรวจสอบอีเมล"},"zh-CN":{"title":"账户中心","description":"管理我的个人信息","choose_avatar":"选择一个头像","choose":"选择头像","info_empty":"请输入需要修改的信息","modify_success":"修改成功","display_name":"昵称","name_placeholder":"请输入用户名","name_min":"不能低于 3 个字符","name_max":"不能超过 60 个字符","name_rule":"可以使用下列特殊字符:空格、点(.)、连字符(-)、单引号(\'),下划线(_)以及@符号。","modify":"修改","ok":"确认","cancel":"取消","verified_code":"验证码","send_verified_code":"发送验证码","retry_send":"重新发送","register_success":"注册(不可用)成功","mail":"邮箱地址","mail_placeholder":"请输入邮箱地址","pass":"密码","pass_placeholder":"请输入密码","pass_confirm":"确认密码","pass_confirm_again":"请再次输入密码","pass_diff":"两次密码不一致","register":"注册(不可用)","login_success":"登录(不可用)成功","login":"登录(不可用)","pass_success":"重置密码成功","old_pass":"旧密码","old_pass_placeholder":"请输入旧密码","new_pass":"新密码","new_pass_placeholder":"请输入新密码","new_pass_again":"请再次输入新密码","new_pass_confirm":"确认新密码","reset_password":"重置密码","price":"金额","time":"时间","donate":"捐赠","donate_again":"再次捐赠","unit":"元","role":"所购角色","expire":"时长","status":"状态","buy":"购买","buy_again":"再次购买","desc":"描述","search_placeholder":"输入关键词查询","empty":"暂无数据","page":"页","jump":"跳至","feedback":"反馈","feedback_again":"再次反馈","profile":"个人资料","my_feedback":"我的反馈","my_order":"我的订单","my_donate":"我的捐赠","member":"高级帐户","premium":"专业帐户","forever":"终身账户","month":"月","order_wait":"待确认","order_cancel":"已取消","order_done":"已完成","pending":"待确认","resolve":"已确认","rejected":"不予处理","progress":"处理中","done":"已处理","release":"已上线","duplicate":"重复","reproduce":"无法复现","action":"操作","fill":"补充","mail_success":"验证码已发送,请查收邮件"},"zh-TW":{"title":"帳戶中心","description":"管理我的個人資訊","choose_avatar":"選擇頭像","choose":"選擇頭像","info_empty":"請輸入要修改的資訊","modify_success":"修改成功","display_name":"顯示名稱","name_placeholder":"請輸入使用者名稱","name_min":"請輸入至少3個字元","name_max":"請輸入不超過60個字元","name_rule":"可使用以下特殊字元:空格、點(.)、連字符(-)、單引號(\')、底線(_)、@符號","modify":"修改","ok":"確定","cancel":"取消","verified_code":"驗證碼","send_verified_code":"發送驗證碼","retry_send":"重新發送","register_success":"註冊成功","mail":"電子郵件","mail_placeholder":"請輸入電子郵件","pass":"密碼","pass_placeholder":"請輸入密碼","pass_confirm":"確認密碼","pass_confirm_again":"請再次輸入密碼","pass_diff":"密碼不一致","register":"註冊","login_success":"登入成功","login":"登入","pass_success":"密碼重設成功","old_pass":"目前密碼","old_pass_placeholder":"請輸入目前密碼","new_pass":"新密碼","new_pass_placeholder":"請輸入新密碼","new_pass_again":"請再次輸入新密碼","new_pass_confirm":"確認新密碼","reset_password":"重設密碼","price":"金額","time":"時間","donate":"贊助","donate_again":"再次贊助","unit":"USD","role":"已購買角色","expire":"期限","status":"狀態","buy":"購買","buy_again":"再次購買","desc":"說明","search_placeholder":"輸入關鍵字搜尋","empty":"無資料","page":"頁面","jump":"前往","feedback":"意見回饋","feedback_again":"提交意見回饋","profile":"個人資料","my_feedback":"我的意見回饋","my_order":"我的訂單","my_donate":"我的贊助","member":"進階會員","premium":"專業會員","forever":"永久會員","month":"月","order_wait":"等待確認","order_cancel":"已取消","order_done":"已完成","pending":"處理中","resolve":"已確認","rejected":"已拒絕","progress":"處理中","done":"已完成","release":"已發布","duplicate":"重複","reproduce":"無法重現","action":"操作","fill":"填寫","mail_success":"驗證碼已發送,請查收郵件"}}}]');var Se=i(283);class Re{timer;root;container;constructor(){this.root=this._dom(),this.root.appendChild(this._style()),this.container=document.documentElement}_dom(){const e=document.createElement("div");return e.classList.add("circlereaderloading"),e.innerHTML='<svg viewBox="0 0 1024 1024" focusable="false" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M988 548c-19.9 0-36-16.1-36-36 0-59.4-11.6-117-34.6-171.3a440.45 440.45 0 00-94.3-139.9 437.71 437.71 0 00-139.9-94.3C629 83.6 571.4 72 512 72c-19.9 0-36-16.1-36-36s16.1-36 36-36c69.1 0 136.2 13.5 199.3 40.3C772.3 66 827 103 874 150c47 47 83.9 101.8 109.7 162.7 26.7 63.1 40.2 130.2 40.2 199.3.1 19.9-16 36-35.9 36z"></path></svg>',e}_style(){const e=document.createElement("style");return e.textContent="@keyframes circlereaderloading{to{transform:rotate(360deg);}}.circlereaderloading{right:20px;top:20px;width:40px;height:40px;z-index:99999;position:fixed;pointer-events:none;}.circlereaderloading svg{left:50%;top:50%;width:40px;height:40px;color:#63ab67;margin-top:-20px;margin-left:-20px;position:absolute;animation:circlereaderloading 1s infinite linear;}.circlereaderloading.full{width:100%;height:100%;right:0;top:0;background-color:#fff;}",e}show(e,t){this.root.parentElement||(this.root.classList[e?"add":"remove"]("full"),this.container.appendChild(this.root),this.timer&&clearTimeout(this.timer),t||(this.timer=setTimeout((()=>this.hide()),5e3)))}hide(){this.timer&&clearTimeout(this.timer),this.root.parentElement&&this.root.parentElement.removeChild(this.root)}}window.self===window.top&&(window._loaded||(window._loaded=!0,function(){window.trustedTypes&&window.trustedTypes.createPolicy&&!window.trustedTypes.defaultPolicy&&window.trustedTypes.createPolicy("default",{createHTML:e=>e});const e=new Ve,t=new Re,i=ee.keys();(0,K.A)(i,(t=>{e.on(t.replace(/^\.\/(.*)\.ts$/,"$1"),ee(t).default)})),e.boostrap((t=>X(t,e)),Me),e.on("loading",((e,i,a)=>{e?t.show(i,a):t.hide()})),Array.isArray(window._presetPlugins)&&window._presetPlugins.length>0&&window._presetPlugins.forEach((({id:t,factory:i})=>{e.define(t,i)})),window.definePlugin=function(t,i){e.define(t,i)},window.addEventListener("focus",(()=>{e.fire("tab_activated")})),window.addEventListener("error",(function(t){!Z.Yz&&t.preventDefault(),e.send("record",{value:t.message,action:"error"})})),window.addEventListener("unhandledrejection",(function(t){!Z.Yz&&t.preventDefault(),e.send("record",{value:t.reason.message,action:"unhandledrejection"})})),e.store("get","installed").then((t=>(0,Y.Et)(t)?Promise.resolve():(e.on("loading",!0),Promise.all((0,Se.Z)(e).map((([t,i,a])=>e.store("set",t,i,a)))).then((()=>Promise.all((e.device.phone?["display","render","tour","lists"]:["display","render","tour","lists","keys"]).map((t=>e.fetch(Z.Yz?`http://localhost:8080/widget/${t}.js`:`https://app.circlereader.com/api/modules/${t}.js?v=${Z.rE}`,{format:"text",silence:!0})))).then((()=>Promise.resolve())).catch((()=>Promise.resolve())).finally((()=>{e.on("loading",!1)}))))))).then((()=>e.store("get","lists_option").then((e=>Promise.resolve(!e||!(0,Y.Lm)(e.skip)||e.skip))).then((t=>t?e.getApp("lists").then((t=>t.enabled?e.store("list",{field:"type",keyRange:"lists",match:{host:location.hostname}},{start:1,limit:10},"node").then((t=>{if(!Array.isArray(t.data)||t.data.length<=0)return Promise.resolve();const i=B(t.data.map((e=>({...e,id:e.id.replace("lists_","")}))));return i&&(0,Y.Lm)(i.deny)&&!i.deny&&e.fire("loading",!0,!0),Promise.resolve()})):Promise.resolve())):Promise.resolve())).then((()=>new Promise(((t,i)=>{!function(e){if("complete"===document.readyState)return void e();let t;function i(a){a&&a.type&&"readystatechange"==a.type&&"complete"!=document.readyState||(t&&clearTimeout(t),document.removeEventListener("DOMContentLoaded",i,!1),document.removeEventListener("readystatechange",i,!1),e())}document.addEventListener("DOMContentLoaded",i,!1),document.addEventListener("readystatechange",i,!1),function e(){t&&clearTimeout(t),t=setTimeout((function(){document.body?i():e()}),4e3)}()}((()=>{e.apply("bootstrap").then((()=>e.apply("parse"))).then(t).catch(i)}))})))))).catch((e=>{console.log(e)}))}()))})()})();