filecat 7.8.0 → 7.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/LICENSE +201 -201
  2. package/README.md +182 -182
  3. package/build/dist/{4967.3fd3bd40a2b5a3b52428.js → 1060.198d91e2dfc174317c3a.js} +1 -1
  4. package/build/dist/1075.05eed88707339ca32044.js +1 -0
  5. package/build/dist/{1142.121454b1de53689b7367.js → 1142.bc43fae2e5e38d9359df.js} +1 -1
  6. package/build/dist/1384.edbad9c24d883a59724d.js +1 -0
  7. package/build/dist/1417.d390b18dd58ff5c28160.js +1 -0
  8. package/build/dist/1448.4db495e1389c0c8445b3.js +1 -0
  9. package/build/dist/{3324.22efcb1c431177b1cf5f.js → 1455.26a021eb94e5bdd5bec2.js} +1 -1
  10. package/build/dist/{1636.b6a17252dfd0d22f09a7.js → 1636.b80b1883358e132d3424.js} +1 -1
  11. package/build/dist/{1832.8ea5c3e8288df0b7fd5c.js → 1832.a01933ba5df99576ecc2.js} +1 -1
  12. package/build/dist/2300.c99b1dd4e752cdfd5e32.js +2 -0
  13. package/build/dist/{2300.9e1baa1c0368abe53d96.js.LICENSE.txt → 2300.c99b1dd4e752cdfd5e32.js.LICENSE.txt} +1 -1
  14. package/build/dist/239.f570f06d4b9c020f1013.js +1 -0
  15. package/build/dist/2479.294792ef5d360ad64abc.js +1 -0
  16. package/build/dist/2542.26cb302b60de23166227.js +1 -0
  17. package/build/dist/{259.81bb9e049e5ef587a96f.js → 259.3c0eb22e9b43ffb63c9c.js} +1 -1
  18. package/build/dist/2626.3bcfe1f26d9cb796a925.js +1 -0
  19. package/build/dist/2674.15ca3c6ac911cf6e6e2f.js +1 -0
  20. package/build/dist/3233.43bdd7c12ca829d56116.js +1 -0
  21. package/build/dist/3299.6ab0d94f02171cd762cc.js +1 -0
  22. package/build/dist/{6992.f6a07311a638794c24f7.js → 3471.ef3b5dcfe37963034187.js} +1 -1
  23. package/build/dist/{3528.56eeefab6fca5884e2a6.js → 3528.0f8f34028d92fa87c518.js} +1 -1
  24. package/build/dist/{3659.8a31495bb8f38c0ffa7c.js → 3659.dd03dc2ac52a3ff19105.js} +1 -1
  25. package/build/dist/4004.f0193c43fb891fdfb0e4.js +1 -0
  26. package/build/dist/{4560.8ef2e4b60cc86d019dd6.js → 4560.fd9f8cf2d6022b1d3a94.js} +1 -1
  27. package/build/dist/{4903.407cafe944a297471f5a.js → 4903.070aaa53a243baf05133.js} +1 -1
  28. package/build/dist/{4946.c95d4f426146e0180172.js → 4946.d578f6ba367a742d80bf.js} +2 -2
  29. package/build/dist/4986.f244efce9cf6be21f846.js +1 -0
  30. package/build/dist/5272.1f0dfac07ba202e7d323.js +1 -0
  31. package/build/dist/{5308.052f45c15785487b3766.js → 5308.d1e5ccb49396fc1b026d.js} +1 -1
  32. package/build/dist/{5516.645e4a900df9bdc1806c.js → 5516.88521f3a3c7101c46df3.js} +1 -1
  33. package/build/dist/5614.43bdd7c12ca829d56116.js +1 -0
  34. package/build/dist/{5139.adf9574d9b54a216e041.js → 5709.81f43e3c021fafdfe36f.js} +1 -1
  35. package/build/dist/{5744.e9f1efb88a617b05b709.js → 5744.0f8a0432b73b2eb0a7ff.js} +1 -1
  36. package/build/dist/{5877.ca081c4798194230243c.js → 5877.98d0475aaf4058b9a715.js} +1 -1
  37. package/build/dist/6010.5400c344149450c83284.js +1 -0
  38. package/build/dist/{6247.917e3fbef5dc5fbaf937.js → 6247.525b0b68872036ac2fa6.js} +1 -1
  39. package/build/dist/{7520.fbb0bc2a05cf94e15418.js → 6322.552511b5cb12cd0c821c.js} +1 -1
  40. package/build/dist/6492.17ecd8515fa512ce9306.js +1 -0
  41. package/build/dist/{676.a75318a8b598d8daadf0.js → 676.356039ef6f28f96b8c8b.js} +1 -1
  42. package/build/dist/{6805.bf0c964ab84f0fcc78be.js → 6805.373ac0e7d6555e4a6459.js} +1 -1
  43. package/build/dist/{6919.8cf13c01184b7148b28e.js → 6919.c7cc8617b658198d4924.js} +1 -1
  44. package/build/dist/{7038.4e4fc8e405c56d3080e2.js → 7038.166f915547d27e4dc5e4.js} +1 -1
  45. package/build/dist/{7759.0b68912ff9ef10869f59.js → 7759.7cd3fe8e5d37df25804c.js} +1 -1
  46. package/build/dist/7873.e3098bc6f510e5bea55f.js +1 -0
  47. package/build/dist/7923.d44556578af4d3d7cea3.js +2 -0
  48. package/build/dist/7943.acf25a5e98dd13290985.js +1 -0
  49. package/build/dist/8090.8977224618a14ae42159.js +2 -0
  50. package/build/dist/8302.ce97557b7cf7c8387942.js +1 -0
  51. package/build/dist/8319.6a6b9651c87a1bb4cbb9.js +1 -0
  52. package/build/dist/{8603.4142ce42c1635f493eca.js → 8603.f1cbcfd64cde885f9809.js} +1 -1
  53. package/build/dist/8649.d6055ad75975b803bbc1.js +1 -0
  54. package/build/dist/{8727.3628c746061aed7a4077.js → 8727.8658835acb7e0b6e5acc.js} +1 -1
  55. package/build/dist/{8765.a5633d054abb67142fc3.js → 8765.8758c290a6b132f2ce7f.js} +1 -1
  56. package/build/dist/8772.2c35012c25ac9eb5f74d.js +2 -0
  57. package/build/dist/{8772.e8f9731c1c061f1cdf56.js.LICENSE.txt → 8772.2c35012c25ac9eb5f74d.js.LICENSE.txt} +1 -1
  58. package/build/dist/8781.6bd14487d172e004e3d3.js +1 -0
  59. package/build/dist/9299.7358ccf05b1415ed7959.js +1 -0
  60. package/build/dist/9334.a25983aafdcbde63ae5e.js +1 -0
  61. package/build/dist/{9546.e7206c968e92371ae2b1.js → 9546.2cecad04cf676a6616cd.js} +1 -1
  62. package/build/dist/dark.css +839 -839
  63. package/build/dist/filerobot-image-editor.min.js +42445 -42445
  64. package/build/dist/google-dark.css +2032 -2032
  65. package/build/dist/google.css +1719 -1719
  66. package/build/dist/index.html +1 -1
  67. package/build/dist/main.ab3398f34c41e61310ae.js +2 -0
  68. package/build/dist/{main.98bb29605335d9b2219f.js.LICENSE.txt → main.ab3398f34c41e61310ae.js.LICENSE.txt} +1 -1
  69. package/build/dist/rle.js +17867 -17867
  70. package/build/main.js +1 -1
  71. package/build/plugin/core.type.d.ts +62 -0
  72. package/build/threads.work.filecat.js +1 -1
  73. package/env +26 -26
  74. package/package.json +211 -211
  75. package/shell/build.js +161 -161
  76. package/shell/config/.babelrc +14 -14
  77. package/shell/config/base.webpack.config.js +78 -78
  78. package/shell/config/common-bin.config.js +44 -44
  79. package/shell/config/env.js +10 -10
  80. package/shell/config/prebuild-file-path.js +17 -17
  81. package/shell/config/webpack.exe.config.js +36 -36
  82. package/shell/config/webpack.npm.config.js +44 -44
  83. package/shell/config/webpack.web.config.js +152 -152
  84. package/shell/dev.js +51 -51
  85. package/shell/docker-build.sh +2 -2
  86. package/shell/filecat +1 -1
  87. package/shell/filecat-watch +1 -1
  88. package/shell/install.js +48 -48
  89. package/shell/net-agent/git-clone.bat +23 -23
  90. package/shell/net-agent/git-pull.bat +17 -17
  91. package/shell/net-agent/git-push.bat +17 -17
  92. package/shell/pkg.ts +50 -50
  93. package/shell/postinstall-optional.js +29 -29
  94. package/shell/start/filecat-install.sh +22 -22
  95. package/shell/start/filecat-run.sh +2 -2
  96. package/shell/start/windows-install.js +178 -178
  97. package/shell/start/windows-uninstall.js +131 -131
  98. package/shell/util/file.js +46 -46
  99. package/build/dist/1075.493acb74297c1e753de2.js +0 -1
  100. package/build/dist/1384.0d0fc5faa899c9eddcbe.js +0 -1
  101. package/build/dist/1448.0710f04bed1c52e6a5db.js +0 -1
  102. package/build/dist/2300.9e1baa1c0368abe53d96.js +0 -2
  103. package/build/dist/2479.15722ac55b05c521f4f7.js +0 -1
  104. package/build/dist/2542.23fb13b1623c9f7c3fc1.js +0 -1
  105. package/build/dist/2626.05d1faa293e0a3318b9b.js +0 -1
  106. package/build/dist/2674.0c822a9c458f923a4eff.js +0 -1
  107. package/build/dist/2851.2195b5906b2c224c7bf7.js +0 -1
  108. package/build/dist/3140.794a212da633caf38b3a.js +0 -2
  109. package/build/dist/3233.fb6bffd5e097e4ac9423.js +0 -1
  110. package/build/dist/3299.d01f5a742d80f4e6e25b.js +0 -1
  111. package/build/dist/4004.de90f1192487a24a0a9a.js +0 -1
  112. package/build/dist/4437.4d5a0965043471411a00.js +0 -1
  113. package/build/dist/4986.78047106f3a0d2d71199.js +0 -1
  114. package/build/dist/5272.0b70ee8ec5f083fb9f5b.js +0 -1
  115. package/build/dist/5614.fb6bffd5e097e4ac9423.js +0 -1
  116. package/build/dist/6010.2da6f8c2fce5292557cb.js +0 -1
  117. package/build/dist/6492.3ee4060598de873d8e8f.js +0 -1
  118. package/build/dist/7756.2f851693ba030c42dde8.js +0 -1
  119. package/build/dist/7873.11d04b741d2b499d9cb9.js +0 -1
  120. package/build/dist/7923.861345fd55941e8089a1.js +0 -2
  121. package/build/dist/7943.54c702542d55f576a576.js +0 -1
  122. package/build/dist/7954.6ce241a8ed27cb26efc6.js +0 -1
  123. package/build/dist/8302.c1c381630b4ec76bf8ab.js +0 -1
  124. package/build/dist/8319.c15a3674ec7abc493595.js +0 -1
  125. package/build/dist/8772.e8f9731c1c061f1cdf56.js +0 -2
  126. package/build/dist/9299.ed4de6cd4f4bfa0a966a.js +0 -1
  127. package/build/dist/main.98bb29605335d9b2219f.js +0 -2
  128. /package/build/dist/{4946.c95d4f426146e0180172.js.LICENSE.txt → 4946.d578f6ba367a742d80bf.js.LICENSE.txt} +0 -0
  129. /package/build/dist/{7923.861345fd55941e8089a1.js.LICENSE.txt → 7923.d44556578af4d3d7cea3.js.LICENSE.txt} +0 -0
  130. /package/build/dist/{3140.794a212da633caf38b3a.js.LICENSE.txt → 8090.8977224618a14ae42159.js.LICENSE.txt} +0 -0
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[2479],{12479(e,t,n){n.r(t),n.d(t,{default:()=>l});var r=n(96540),a=n(57889),s=(n(14284),n(62042)),c=n(22022),o=n(21417),i=(n(88781),n(74848));function l(e){const{t}=(0,c.Bd)(),[n,l]=(0,r.useState)(!0),[m,p]=(0,r.useState)(""),[f,h]=(0,r.useState)(100),y=(0,r.useRef)(null),b=(0,r.useRef)(null),N=(0,r.useRef)(!1),x=(0,r.useRef)({props:e});x.current={props:e};const w=async()=>{if(!b.current)return(0,s.zN)(t("编辑器尚未就绪")),!1;const e=await x.current.props.on_save((()=>{const e=b.current;return e?JSON.stringify(e.getData(!0)):""})());return e&&(N.current=!1,x.current.props.on_dirty?.(!1),x.current.props.on_saved?.()),e};(0,r.useEffect)(()=>{e.register?.({save:w,is_dirty:()=>N.current})},[e.register]),(0,r.useEffect)(()=>{if(!y.current||!e.url)return;let n=!1;const r=[];b.current?.destroy?.(),b.current=null,N.current=!1,l(!0),p("");const c=async e=>{if(n||!y.current)return;const a=new o.A({el:y.current,data:e??{data:{text:t("中心主题")}},fit:!0,enableFreeDrag:!1});b.current=a,l(!1);const s=()=>{let e=!1;const t=window.setTimeout(()=>{n||(e=!0)},400);r.push(t),a.on("data_change",()=>{e&&(N.current||(N.current=!0,x.current.props.on_dirty?.(!0)),h(u(a)))}),a.on("view_data_change",()=>{h(u(a))}),a.on("error",(e,t)=>{console.error("[mind]",e,t)}),h(u(a))};window.requestAnimationFrame(()=>{n||s()})};return(async()=>{try{const t=await a.l.get(e.url);if(n)return;let r=null;if("string"==typeof t&&t.trim())try{r=JSON.parse(t)}catch{r=null}r=function(e){if(!e||"object"!=typeof e)return null;if(e.root&&"object"==typeof e.root)return e.root.data?e.root:d(e.root);if(e.data&&"object"==typeof e.data)return e;return d(e)}(r),await c(r)}catch(e){n||(l(!1),p(t("加载思维导图失败")),(0,s.zN)(t("加载思维导图失败")))}})(),()=>{n=!0,r.forEach(e=>window.clearTimeout(e)),b.current?.destroy?.(),b.current=null}},[e.url]),(0,r.useEffect)(()=>{const e=e=>{(e.ctrlKey||e.metaKey)&&("s"===e.key||"S"===e.key||83===e.keyCode)&&(e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation(),w())};return window.addEventListener("keydown",e,!0),document.addEventListener("keydown",e,!0),()=>{window.removeEventListener("keydown",e,!0),document.removeEventListener("keydown",e,!0)}},[]);const j=e=>{const t=b.current;if(!t)return;const n=Math.min(4,Math.max(.25,e));t.view.setScale(n),h(Math.round(100*n))};return(0,i.jsxs)("div",{className:"mind-wrap"+(e.fullscreen?" mind-wrap--full":""),children:[e.header,(0,i.jsxs)("div",{className:"mind-toolbar",children:[(0,i.jsx)("button",{type:"button",className:"mind-btn",title:t("添加子节点")+" (Tab)",onClick:()=>b.current?.execCommand?.("INSERT_CHILD_NODE"),children:(0,i.jsx)("span",{className:"material-icons",children:"account_tree"})}),(0,i.jsx)("button",{type:"button",className:"mind-btn",title:t("添加同级节点")+" (Enter)",onClick:()=>b.current?.execCommand?.("INSERT_NODE"),children:(0,i.jsx)("span",{className:"material-icons",children:"subdirectory_arrow_right"})}),(0,i.jsx)("button",{type:"button",className:"mind-btn",title:t("删除节点")+" (Delete)",onClick:()=>b.current?.execCommand?.("REMOVE_NODE"),children:(0,i.jsx)("span",{className:"material-icons",children:"delete"})}),(0,i.jsx)("span",{className:"mind-toolbar__gap"}),(0,i.jsxs)("span",{className:"mind-toolbar__zoom",children:[f,"%"]}),(0,i.jsx)("button",{type:"button",className:"mind-btn",title:t("缩小"),onClick:()=>j(u(b.current)/100-.2),children:(0,i.jsx)("span",{className:"material-icons",children:"remove"})}),(0,i.jsx)("button",{type:"button",className:"mind-btn",title:t("放大"),onClick:()=>j(u(b.current)/100+.2),children:(0,i.jsx)("span",{className:"material-icons",children:"add"})}),(0,i.jsx)("button",{type:"button",className:"mind-btn",title:t("适应窗口"),onClick:()=>b.current?.view?.fit?.(),children:(0,i.jsx)("span",{className:"material-icons",children:"fit_screen"})})]}),(0,i.jsxs)("div",{className:"mind-canvas",children:[(0,i.jsx)("div",{className:"mind-mount",ref:y}),n&&(0,i.jsx)("div",{className:"mind-mask",children:"Loading..."}),m&&(0,i.jsx)("div",{className:"mind-mask",children:m})]})]})}function u(e){const t=e?.view?.getTransformData?.()?.state?.scale;return"number"==typeof t&&t>0?Math.round(100*t):100}function d(e){return{data:{text:"string"==typeof e?.text?e.text:"",...e?.note?{note:e.note}:{}},children:Array.isArray(e?.children)?e.children.map(d):[]}}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[2542],{72542(e,t,n){n.r(t),n.d(t,{default:()=>x});var s=n(1728),c=n(96540),a=n(34843),l=n(61443),i=n(85997),o=n(52671),u=n(14284),d=(n(23430),n(82893)),r=n(75725),f=n(22022),h=n(7523),p=n(62042),_=n(21469),m=n(74848);_.m.init();const x=function(){const e=(0,o.Zp)(),[t,n]=(0,c.useState)(""),[x,w]=(0,c.useState)(""),{initUserInfo:k}=(0,c.useContext)(h.F),[g,j]=(0,a.fp)(d.AG.custom_fun_opt),{t:C}=(0,f.Bd)();async function I(){const n={username:t,password:x},s=await u.wm.post("login",n,!1);0===s.code?(localStorage.setItem("token",s.data),k(),j(""),e("/file")):(0,p.zN)(s.message)}return(0,c.useEffect)(()=>{localStorage.getItem("token")&&e("/file")},[]),(0,m.jsxs)(r.Y5,{children:[(0,m.jsx)("h1",{children:_.m.web_site_title??"FileCat"}),(0,m.jsxs)("div",{className:"self_win_center_content",children:[(0,m.jsx)(l.Sm,{placeholder:C("账号"),handleInputChange:e=>{n(e)}}),(0,m.jsx)(l.cA,{placeholder:C("密码"),handleInputChange:e=>{w(e)},handleEnterPress:I}),(0,m.jsx)(i.$n,{text:C("登录"),clickFun:I}),s.A.has("tcp_client_num_id")&&(0,m.jsx)(i.$n,{text:C("代理退出"),clickFun:()=>{s.A.delete("tcp_client_num_id"),window.location.reload()}})]})]})}}}]);
@@ -1 +0,0 @@
1
- (self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[2626],{62718(n,o,e){"use strict";e.d(o,{A:()=>b});var t=e(31601),r=e.n(t),a=e(76314),l=e.n(a),i=e(4417),s=e.n(i),d=new URL(e(60840),e.b),c=l()(r()),m=s()(d);c.push([n.id,`.markdown-body {\n --base-size-16: 1rem;\n --base-size-24: 1.5rem;\n --base-size-4: 0.25rem;\n --base-size-40: 2.5rem;\n --base-size-8: 0.5rem;\n --base-text-weight-medium: 500;\n --base-text-weight-normal: 400;\n --base-text-weight-semibold: 600;\n --fontStack-monospace: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace;\n --fontStack-sansSerif: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";\n --fgColor-accent: Highlight;\n}\n@media (prefers-color-scheme: dark) {\n .markdown-body, [data-theme="dark"] {\n /*dark */\n color-scheme: dark;\n --fgColor-accent: #4493f8;\n --bgColor-attention-muted: #bb800926;\n --bgColor-default: #0d1117;\n --bgColor-muted: #151b23;\n --bgColor-neutral-muted: #656c7633;\n --borderColor-accent-emphasis: #1f6feb;\n --borderColor-attention-emphasis: #9e6a03;\n --borderColor-danger-emphasis: #da3633;\n --borderColor-default: #3d444d;\n --borderColor-done-emphasis: #8957e5;\n --borderColor-success-emphasis: #238636;\n --color-prettylights-syntax-brackethighlighter-angle: #9198a1;\n --color-prettylights-syntax-brackethighlighter-unmatched: #f85149;\n --color-prettylights-syntax-carriage-return-bg: #b62324;\n --color-prettylights-syntax-carriage-return-text: #f0f6fc;\n --color-prettylights-syntax-comment: #9198a1;\n --color-prettylights-syntax-constant: #79c0ff;\n --color-prettylights-syntax-constant-other-reference-link: #a5d6ff;\n --color-prettylights-syntax-entity: #d2a8ff;\n --color-prettylights-syntax-entity-tag: #7ee787;\n --color-prettylights-syntax-keyword: #ff7b72;\n --color-prettylights-syntax-markup-bold: #f0f6fc;\n --color-prettylights-syntax-markup-changed-bg: #5a1e02;\n --color-prettylights-syntax-markup-changed-text: #ffdfb6;\n --color-prettylights-syntax-markup-deleted-bg: #67060c;\n --color-prettylights-syntax-markup-deleted-text: #ffdcd7;\n --color-prettylights-syntax-markup-heading: #1f6feb;\n --color-prettylights-syntax-markup-ignored-bg: #1158c7;\n --color-prettylights-syntax-markup-ignored-text: #f0f6fc;\n --color-prettylights-syntax-markup-inserted-bg: #033a16;\n --color-prettylights-syntax-markup-inserted-text: #aff5b4;\n --color-prettylights-syntax-markup-italic: #f0f6fc;\n --color-prettylights-syntax-markup-list: #f2cc60;\n --color-prettylights-syntax-meta-diff-range: #d2a8ff;\n --color-prettylights-syntax-storage-modifier-import: #f0f6fc;\n --color-prettylights-syntax-string: #a5d6ff;\n --color-prettylights-syntax-string-regexp: #7ee787;\n --color-prettylights-syntax-sublimelinter-gutter-mark: #3d444d;\n --color-prettylights-syntax-variable: #ffa657;\n --fgColor-attention: #d29922;\n --fgColor-danger: #f85149;\n --fgColor-default: #f0f6fc;\n --fgColor-done: #ab7df8;\n --fgColor-muted: #9198a1;\n --fgColor-success: #3fb950;\n --borderColor-muted: #3d444db3;\n --color-prettylights-syntax-invalid-illegal-bg: var(--bgColor-danger-muted);\n --color-prettylights-syntax-invalid-illegal-text: var(--fgColor-danger);\n --focus-outlineColor: var(--borderColor-accent-emphasis);\n --borderColor-neutral-muted: var(--borderColor-muted);\n }\n}\n@media (prefers-color-scheme: light) {\n .markdown-body, [data-theme="light"] {\n /*light */\n color-scheme: light;\n --fgColor-danger: #d1242f;\n --bgColor-attention-muted: #fff8c5;\n --bgColor-muted: #f6f8fa;\n --bgColor-neutral-muted: #818b981f;\n --borderColor-accent-emphasis: #0969da;\n --borderColor-attention-emphasis: #9a6700;\n --borderColor-danger-emphasis: #cf222e;\n --borderColor-default: #d1d9e0;\n --borderColor-done-emphasis: #8250df;\n --borderColor-success-emphasis: #1a7f37;\n --color-prettylights-syntax-brackethighlighter-angle: #59636e;\n --color-prettylights-syntax-brackethighlighter-unmatched: #82071e;\n --color-prettylights-syntax-carriage-return-bg: #cf222e;\n --color-prettylights-syntax-carriage-return-text: #f6f8fa;\n --color-prettylights-syntax-comment: #59636e;\n --color-prettylights-syntax-constant: #0550ae;\n --color-prettylights-syntax-constant-other-reference-link: #0a3069;\n --color-prettylights-syntax-entity: #6639ba;\n --color-prettylights-syntax-entity-tag: #0550ae;\n --color-prettylights-syntax-invalid-illegal-text: var(--fgColor-danger);\n --color-prettylights-syntax-keyword: #cf222e;\n --color-prettylights-syntax-markup-changed-bg: #ffd8b5;\n --color-prettylights-syntax-markup-changed-text: #953800;\n --color-prettylights-syntax-markup-deleted-bg: #ffebe9;\n --color-prettylights-syntax-markup-deleted-text: #82071e;\n --color-prettylights-syntax-markup-heading: #0550ae;\n --color-prettylights-syntax-markup-ignored-bg: #0550ae;\n --color-prettylights-syntax-markup-ignored-text: #d1d9e0;\n --color-prettylights-syntax-markup-inserted-bg: #dafbe1;\n --color-prettylights-syntax-markup-inserted-text: #116329;\n --color-prettylights-syntax-markup-list: #3b2300;\n --color-prettylights-syntax-meta-diff-range: #8250df;\n --color-prettylights-syntax-string: #0a3069;\n --color-prettylights-syntax-string-regexp: #116329;\n --color-prettylights-syntax-sublimelinter-gutter-mark: #818b98;\n --color-prettylights-syntax-variable: #953800;\n --fgColor-accent: #0969da;\n --fgColor-attention: #9a6700;\n --fgColor-done: #8250df;\n --fgColor-muted: #59636e;\n --fgColor-success: #1a7f37;\n --bgColor-default: #ffffff;\n --borderColor-muted: #d1d9e0b3;\n --color-prettylights-syntax-invalid-illegal-bg: var(--bgColor-danger-muted);\n --color-prettylights-syntax-markup-bold: #1f2328;\n --color-prettylights-syntax-markup-italic: #1f2328;\n --color-prettylights-syntax-storage-modifier-import: #1f2328;\n --fgColor-default: #1f2328;\n --focus-outlineColor: var(--borderColor-accent-emphasis);\n --borderColor-neutral-muted: var(--borderColor-muted);\n }\n}\n\n.markdown-body {\n /** CSS default easing. Use for hover state changes and micro-interactions. */\n /** Accelerating motion. Use for elements exiting the viewport (moving off-screen). */\n /** Smooth acceleration and deceleration. Use for elements moving or morphing within the viewport. */\n /** Decelerating motion. Use for elements entering the viewport or appearing on screen. */\n /** Constant motion with no acceleration. Use for continuous animations like progress bars or loaders. */\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n margin: 0;\n font-weight: var(--base-text-weight-normal, 400);\n color: var(--fgColor-default);\n background-color: var(--bgColor-default);\n font-family: var(--fontStack-sansSerif, -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji");\n font-size: 16px;\n line-height: 1.5;\n word-wrap: break-word;\n}\n\n.markdown-body a {\n text-decoration: underline;\n text-underline-offset: .2rem;\n}\n\n.markdown-body .octicon {\n display: inline-block;\n fill: currentColor;\n vertical-align: text-bottom;\n}\n\n.markdown-body h1:hover .anchor .octicon-link:before,\n.markdown-body h2:hover .anchor .octicon-link:before,\n.markdown-body h3:hover .anchor .octicon-link:before,\n.markdown-body h4:hover .anchor .octicon-link:before,\n.markdown-body h5:hover .anchor .octicon-link:before,\n.markdown-body h6:hover .anchor .octicon-link:before {\n width: 16px;\n height: 16px;\n content: ' ';\n display: inline-block;\n background-color: currentColor;\n -webkit-mask-image: url(${m});\n mask-image: url(${m});\n}\n\n.markdown-body details,\n.markdown-body figcaption,\n.markdown-body figure {\n display: block;\n}\n\n.markdown-body summary {\n display: list-item;\n}\n\n.markdown-body [hidden] {\n display: none !important;\n}\n\n.markdown-body a {\n background-color: rgba(0,0,0,0);\n color: var(--fgColor-accent);\n text-decoration: none;\n}\n\n.markdown-body abbr[title] {\n border-bottom: none;\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n.markdown-body b,\n.markdown-body strong {\n font-weight: var(--base-text-weight-semibold, 600);\n}\n\n.markdown-body dfn {\n font-style: italic;\n}\n\n.markdown-body h1 {\n margin: .67em 0;\n font-weight: var(--base-text-weight-semibold, 600);\n padding-bottom: .3em;\n font-size: 2em;\n border-bottom: 1px solid var(--borderColor-muted);\n}\n\n.markdown-body mark {\n background-color: var(--bgColor-attention-muted);\n color: var(--fgColor-default);\n}\n\n.markdown-body small {\n font-size: 90%;\n}\n\n.markdown-body sub,\n.markdown-body sup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\n.markdown-body sub {\n bottom: -0.25em;\n}\n\n.markdown-body sup {\n top: -0.5em;\n}\n\n.markdown-body img {\n border-style: none;\n max-width: 100%;\n box-sizing: content-box;\n}\n\n.markdown-body code,\n.markdown-body kbd,\n.markdown-body pre,\n.markdown-body samp {\n font-family: monospace;\n font-size: 1em;\n}\n\n.markdown-body figure {\n margin: 1em var(--base-size-40);\n}\n\n.markdown-body hr {\n box-sizing: content-box;\n overflow: hidden;\n background: rgba(0,0,0,0);\n border-bottom: 1px solid var(--borderColor-muted);\n height: .25em;\n padding: 0;\n margin: var(--base-size-24) 0;\n background-color: var(--borderColor-default);\n border: 0;\n}\n\n.markdown-body input {\n font: inherit;\n margin: 0;\n overflow: visible;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\n.markdown-body [type=button],\n.markdown-body [type=reset],\n.markdown-body [type=submit] {\n -webkit-appearance: button;\n appearance: button;\n}\n\n.markdown-body [type=checkbox],\n.markdown-body [type=radio] {\n box-sizing: border-box;\n padding: 0;\n}\n\n.markdown-body [type=number]::-webkit-inner-spin-button,\n.markdown-body [type=number]::-webkit-outer-spin-button {\n height: auto;\n}\n\n.markdown-body [type=search]::-webkit-search-cancel-button,\n.markdown-body [type=search]::-webkit-search-decoration {\n -webkit-appearance: none;\n appearance: none;\n}\n\n.markdown-body ::-webkit-input-placeholder {\n color: inherit;\n opacity: .54;\n}\n\n.markdown-body ::-webkit-file-upload-button {\n -webkit-appearance: button;\n appearance: button;\n font: inherit;\n}\n\n.markdown-body a:hover {\n text-decoration: underline;\n}\n\n.markdown-body ::placeholder {\n color: var(--fgColor-muted);\n opacity: 1;\n}\n\n.markdown-body hr::before {\n display: table;\n content: "";\n}\n\n.markdown-body hr::after {\n display: table;\n clear: both;\n content: "";\n}\n\n.markdown-body table {\n border-spacing: 0;\n border-collapse: collapse;\n display: block;\n width: max-content;\n max-width: 100%;\n overflow: auto;\n font-variant: tabular-nums;\n}\n\n.markdown-body td,\n.markdown-body th {\n padding: 0;\n}\n\n.markdown-body details summary {\n cursor: pointer;\n}\n\n.markdown-body a:focus,\n.markdown-body [role=button]:focus,\n.markdown-body input[type=radio]:focus,\n.markdown-body input[type=checkbox]:focus {\n outline: 2px solid var(--focus-outlineColor);\n outline-offset: -2px;\n box-shadow: none;\n}\n\n.markdown-body a:focus:not(:focus-visible),\n.markdown-body [role=button]:focus:not(:focus-visible),\n.markdown-body input[type=radio]:focus:not(:focus-visible),\n.markdown-body input[type=checkbox]:focus:not(:focus-visible) {\n outline: solid 1px rgba(0,0,0,0);\n}\n\n.markdown-body a:focus-visible,\n.markdown-body [role=button]:focus-visible,\n.markdown-body input[type=radio]:focus-visible,\n.markdown-body input[type=checkbox]:focus-visible {\n outline: 2px solid var(--focus-outlineColor);\n outline-offset: -2px;\n box-shadow: none;\n}\n\n.markdown-body a:not([class]):focus,\n.markdown-body a:not([class]):focus-visible,\n.markdown-body input[type=radio]:focus,\n.markdown-body input[type=radio]:focus-visible,\n.markdown-body input[type=checkbox]:focus,\n.markdown-body input[type=checkbox]:focus-visible {\n outline-offset: 0;\n}\n\n.markdown-body kbd {\n display: inline-block;\n padding: var(--base-size-4);\n font: 11px var(--fontStack-monospace, ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace);\n line-height: 10px;\n color: var(--fgColor-default);\n vertical-align: middle;\n background-color: var(--bgColor-muted);\n border: solid 1px var(--borderColor-neutral-muted);\n border-bottom-color: var(--borderColor-neutral-muted);\n border-radius: 6px;\n box-shadow: inset 0 -1px 0 var(--borderColor-neutral-muted);\n}\n\n.markdown-body h1,\n.markdown-body h2,\n.markdown-body h3,\n.markdown-body h4,\n.markdown-body h5,\n.markdown-body h6 {\n margin-top: var(--base-size-24);\n margin-bottom: var(--base-size-16);\n font-weight: var(--base-text-weight-semibold, 600);\n line-height: 1.25;\n}\n\n.markdown-body h2 {\n font-weight: var(--base-text-weight-semibold, 600);\n padding-bottom: .3em;\n font-size: 1.5em;\n border-bottom: 1px solid var(--borderColor-muted);\n}\n\n.markdown-body h3 {\n font-weight: var(--base-text-weight-semibold, 600);\n font-size: 1.25em;\n}\n\n.markdown-body h4 {\n font-weight: var(--base-text-weight-semibold, 600);\n font-size: 1em;\n}\n\n.markdown-body h5 {\n font-weight: var(--base-text-weight-semibold, 600);\n font-size: .875em;\n}\n\n.markdown-body h6 {\n font-weight: var(--base-text-weight-semibold, 600);\n font-size: .85em;\n color: var(--fgColor-muted);\n}\n\n.markdown-body p {\n margin-top: 0;\n margin-bottom: 10px;\n}\n\n.markdown-body blockquote {\n margin: 0;\n padding: 0 1em;\n color: var(--fgColor-muted);\n border-left: .25em solid var(--borderColor-default);\n}\n\n.markdown-body ul,\n.markdown-body ol {\n margin-top: 0;\n margin-bottom: 0;\n padding-left: 2em;\n}\n\n.markdown-body ol ol,\n.markdown-body ul ol {\n list-style-type: lower-roman;\n}\n\n.markdown-body ul ul ol,\n.markdown-body ul ol ol,\n.markdown-body ol ul ol,\n.markdown-body ol ol ol {\n list-style-type: lower-alpha;\n}\n\n.markdown-body dd {\n margin-left: 0;\n}\n\n.markdown-body tt,\n.markdown-body code,\n.markdown-body samp {\n font-family: var(--fontStack-monospace, ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace);\n font-size: 12px;\n}\n\n.markdown-body pre {\n margin-top: 0;\n margin-bottom: 0;\n font-family: var(--fontStack-monospace, ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace);\n font-size: 12px;\n word-wrap: normal;\n}\n\n.markdown-body .octicon {\n display: inline-block;\n overflow: visible !important;\n vertical-align: text-bottom;\n fill: currentColor;\n}\n\n.markdown-body input::-webkit-outer-spin-button,\n.markdown-body input::-webkit-inner-spin-button {\n margin: 0;\n appearance: none;\n}\n\n.markdown-body .mr-2 {\n margin-right: var(--base-size-8, 8px) !important;\n}\n\n.markdown-body::before {\n display: table;\n content: "";\n}\n\n.markdown-body::after {\n display: table;\n clear: both;\n content: "";\n}\n\n.markdown-body>*:first-child {\n margin-top: 0 !important;\n}\n\n.markdown-body>*:last-child {\n margin-bottom: 0 !important;\n}\n\n.markdown-body a:not([href]) {\n color: inherit;\n text-decoration: none;\n}\n\n.markdown-body .absent {\n color: var(--fgColor-danger);\n}\n\n.markdown-body .anchor {\n float: left;\n padding-right: var(--base-size-4);\n margin-left: -20px;\n line-height: 1;\n}\n\n.markdown-body .anchor:focus {\n outline: none;\n}\n\n.markdown-body p,\n.markdown-body blockquote,\n.markdown-body ul,\n.markdown-body ol,\n.markdown-body dl,\n.markdown-body table,\n.markdown-body pre,\n.markdown-body details {\n margin-top: 0;\n margin-bottom: var(--base-size-16);\n}\n\n.markdown-body blockquote>:first-child {\n margin-top: 0;\n}\n\n.markdown-body blockquote>:last-child {\n margin-bottom: 0;\n}\n\n.markdown-body h1 .octicon-link,\n.markdown-body h2 .octicon-link,\n.markdown-body h3 .octicon-link,\n.markdown-body h4 .octicon-link,\n.markdown-body h5 .octicon-link,\n.markdown-body h6 .octicon-link {\n color: var(--fgColor-default);\n vertical-align: middle;\n visibility: hidden;\n}\n\n.markdown-body h1:hover .anchor,\n.markdown-body h2:hover .anchor,\n.markdown-body h3:hover .anchor,\n.markdown-body h4:hover .anchor,\n.markdown-body h5:hover .anchor,\n.markdown-body h6:hover .anchor {\n text-decoration: none;\n}\n\n.markdown-body h1:hover .anchor .octicon-link,\n.markdown-body h2:hover .anchor .octicon-link,\n.markdown-body h3:hover .anchor .octicon-link,\n.markdown-body h4:hover .anchor .octicon-link,\n.markdown-body h5:hover .anchor .octicon-link,\n.markdown-body h6:hover .anchor .octicon-link {\n visibility: visible;\n}\n\n.markdown-body h1 tt,\n.markdown-body h1 code,\n.markdown-body h2 tt,\n.markdown-body h2 code,\n.markdown-body h3 tt,\n.markdown-body h3 code,\n.markdown-body h4 tt,\n.markdown-body h4 code,\n.markdown-body h5 tt,\n.markdown-body h5 code,\n.markdown-body h6 tt,\n.markdown-body h6 code {\n padding: 0 .2em;\n font-size: inherit;\n}\n\n.markdown-body summary h1,\n.markdown-body summary h2,\n.markdown-body summary h3,\n.markdown-body summary h4,\n.markdown-body summary h5,\n.markdown-body summary h6 {\n display: inline-block;\n}\n\n.markdown-body summary h1 .anchor,\n.markdown-body summary h2 .anchor,\n.markdown-body summary h3 .anchor,\n.markdown-body summary h4 .anchor,\n.markdown-body summary h5 .anchor,\n.markdown-body summary h6 .anchor {\n margin-left: -40px;\n}\n\n.markdown-body summary h1,\n.markdown-body summary h2 {\n padding-bottom: 0;\n border-bottom: 0;\n}\n\n.markdown-body ul.no-list,\n.markdown-body ol.no-list {\n padding: 0;\n list-style-type: none;\n}\n\n.markdown-body ol[type="a s"] {\n list-style-type: lower-alpha;\n}\n\n.markdown-body ol[type="A s"] {\n list-style-type: upper-alpha;\n}\n\n.markdown-body ol[type="i s"] {\n list-style-type: lower-roman;\n}\n\n.markdown-body ol[type="I s"] {\n list-style-type: upper-roman;\n}\n\n.markdown-body ol[type="1"] {\n list-style-type: decimal;\n}\n\n.markdown-body div>ol:not([type]) {\n list-style-type: decimal;\n}\n\n.markdown-body ul ul,\n.markdown-body ul ol,\n.markdown-body ol ol,\n.markdown-body ol ul {\n margin-top: 0;\n margin-bottom: 0;\n}\n\n.markdown-body li>p {\n margin-top: var(--base-size-16);\n}\n\n.markdown-body li+li {\n margin-top: .25em;\n}\n\n.markdown-body dl {\n padding: 0;\n}\n\n.markdown-body dl dt {\n padding: 0;\n margin-top: var(--base-size-16);\n font-size: 1em;\n font-style: italic;\n font-weight: var(--base-text-weight-semibold, 600);\n}\n\n.markdown-body dl dd {\n padding: 0 var(--base-size-16);\n margin-bottom: var(--base-size-16);\n}\n\n.markdown-body table th {\n font-weight: var(--base-text-weight-semibold, 600);\n}\n\n.markdown-body table th,\n.markdown-body table td {\n padding: 6px 13px;\n border: 1px solid var(--borderColor-default);\n}\n\n.markdown-body table td>:last-child {\n margin-bottom: 0;\n}\n\n.markdown-body table tr {\n background-color: var(--bgColor-default);\n border-top: 1px solid var(--borderColor-muted);\n}\n\n.markdown-body table tr:nth-child(2n) {\n background-color: var(--bgColor-muted);\n}\n\n.markdown-body table img {\n background-color: rgba(0,0,0,0);\n}\n\n.markdown-body img[align=right] {\n padding-left: 20px;\n}\n\n.markdown-body img[align=left] {\n padding-right: 20px;\n}\n\n.markdown-body .emoji {\n max-width: none;\n vertical-align: text-top;\n background-color: rgba(0,0,0,0);\n}\n\n.markdown-body span.frame {\n display: block;\n overflow: hidden;\n}\n\n.markdown-body span.frame>span {\n display: block;\n float: left;\n width: auto;\n padding: 7px;\n margin: 13px 0 0;\n overflow: hidden;\n border: 1px solid var(--borderColor-default);\n}\n\n.markdown-body span.frame span img {\n display: block;\n float: left;\n}\n\n.markdown-body span.frame span span {\n display: block;\n padding: 5px 0 0;\n clear: both;\n color: var(--fgColor-default);\n}\n\n.markdown-body span.align-center {\n display: block;\n overflow: hidden;\n clear: both;\n}\n\n.markdown-body span.align-center>span {\n display: block;\n margin: 13px auto 0;\n overflow: hidden;\n text-align: center;\n}\n\n.markdown-body span.align-center span img {\n margin: 0 auto;\n text-align: center;\n}\n\n.markdown-body span.align-right {\n display: block;\n overflow: hidden;\n clear: both;\n}\n\n.markdown-body span.align-right>span {\n display: block;\n margin: 13px 0 0;\n overflow: hidden;\n text-align: right;\n}\n\n.markdown-body span.align-right span img {\n margin: 0;\n text-align: right;\n}\n\n.markdown-body span.float-left {\n display: block;\n float: left;\n margin-right: 13px;\n overflow: hidden;\n}\n\n.markdown-body span.float-left span {\n margin: 13px 0 0;\n}\n\n.markdown-body span.float-right {\n display: block;\n float: right;\n margin-left: 13px;\n overflow: hidden;\n}\n\n.markdown-body span.float-right>span {\n display: block;\n margin: 13px auto 0;\n overflow: hidden;\n text-align: right;\n}\n\n.markdown-body code,\n.markdown-body tt {\n padding: .2em .4em;\n margin: 0;\n font-size: 85%;\n white-space: break-spaces;\n background-color: var(--bgColor-neutral-muted);\n border-radius: 6px;\n}\n\n.markdown-body code br,\n.markdown-body tt br {\n display: none;\n}\n\n.markdown-body del code {\n text-decoration: inherit;\n}\n\n.markdown-body samp {\n font-size: 85%;\n}\n\n.markdown-body pre code {\n font-size: 100%;\n}\n\n.markdown-body pre>code {\n padding: 0;\n margin: 0;\n word-break: normal;\n white-space: pre;\n background: rgba(0,0,0,0);\n border: 0;\n}\n\n.markdown-body .highlight {\n margin-bottom: var(--base-size-16);\n}\n\n.markdown-body .highlight pre {\n margin-bottom: 0;\n word-break: normal;\n}\n\n.markdown-body .highlight pre,\n.markdown-body pre {\n padding: var(--base-size-16);\n overflow: auto;\n font-size: 85%;\n line-height: 1.45;\n color: var(--fgColor-default);\n background-color: var(--bgColor-muted);\n border-radius: 6px;\n}\n\n.markdown-body pre code,\n.markdown-body pre tt {\n display: inline;\n padding: 0;\n margin: 0;\n overflow: visible;\n line-height: inherit;\n word-wrap: normal;\n background-color: rgba(0,0,0,0);\n border: 0;\n}\n\n.markdown-body .csv-data td,\n.markdown-body .csv-data th {\n padding: 5px;\n overflow: hidden;\n font-size: 12px;\n line-height: 1;\n text-align: left;\n white-space: nowrap;\n}\n\n.markdown-body .csv-data .blob-num {\n padding: 10px var(--base-size-8) 9px;\n text-align: right;\n background: var(--bgColor-default);\n border: 0;\n}\n\n.markdown-body .csv-data tr {\n border-top: 0;\n}\n\n.markdown-body .csv-data th {\n font-weight: var(--base-text-weight-semibold, 600);\n background: var(--bgColor-muted);\n border-top: 0;\n}\n\n.markdown-body [data-footnote-ref]::before {\n content: "[";\n}\n\n.markdown-body [data-footnote-ref]::after {\n content: "]";\n}\n\n.markdown-body .footnotes {\n font-size: 12px;\n color: var(--fgColor-muted);\n border-top: 1px solid var(--borderColor-default);\n}\n\n.markdown-body .footnotes ol {\n padding-left: var(--base-size-16);\n}\n\n.markdown-body .footnotes ol ul {\n display: inline-block;\n padding-left: var(--base-size-16);\n margin-top: var(--base-size-16);\n}\n\n.markdown-body .footnotes li {\n position: relative;\n}\n\n.markdown-body .footnotes li:target::before {\n position: absolute;\n top: calc(var(--base-size-8)*-1);\n right: calc(var(--base-size-8)*-1);\n bottom: calc(var(--base-size-8)*-1);\n left: calc(var(--base-size-24)*-1);\n pointer-events: none;\n content: "";\n border: 2px solid var(--borderColor-accent-emphasis);\n border-radius: 6px;\n}\n\n.markdown-body .footnotes li:target {\n color: var(--fgColor-default);\n}\n\n.markdown-body .footnotes .data-footnote-backref g-emoji {\n font-family: monospace;\n}\n\n.markdown-body .pl-c {\n color: var(--color-prettylights-syntax-comment);\n}\n\n.markdown-body .pl-c1,\n.markdown-body .pl-s .pl-v {\n color: var(--color-prettylights-syntax-constant);\n}\n\n.markdown-body .pl-e,\n.markdown-body .pl-en {\n color: var(--color-prettylights-syntax-entity);\n}\n\n.markdown-body .pl-smi,\n.markdown-body .pl-s .pl-s1 {\n color: var(--color-prettylights-syntax-storage-modifier-import);\n}\n\n.markdown-body .pl-ent {\n color: var(--color-prettylights-syntax-entity-tag);\n}\n\n.markdown-body .pl-k {\n color: var(--color-prettylights-syntax-keyword);\n}\n\n.markdown-body .pl-s,\n.markdown-body .pl-pds,\n.markdown-body .pl-s .pl-pse .pl-s1,\n.markdown-body .pl-sr,\n.markdown-body .pl-sr .pl-cce,\n.markdown-body .pl-sr .pl-sre,\n.markdown-body .pl-sr .pl-sra {\n color: var(--color-prettylights-syntax-string);\n}\n\n.markdown-body .pl-v,\n.markdown-body .pl-smw {\n color: var(--color-prettylights-syntax-variable);\n}\n\n.markdown-body .pl-bu {\n color: var(--color-prettylights-syntax-brackethighlighter-unmatched);\n}\n\n.markdown-body .pl-ii {\n color: var(--color-prettylights-syntax-invalid-illegal-text);\n background-color: var(--color-prettylights-syntax-invalid-illegal-bg);\n}\n\n.markdown-body .pl-c2 {\n color: var(--color-prettylights-syntax-carriage-return-text);\n background-color: var(--color-prettylights-syntax-carriage-return-bg);\n}\n\n.markdown-body .pl-sr .pl-cce {\n font-weight: bold;\n color: var(--color-prettylights-syntax-string-regexp);\n}\n\n.markdown-body .pl-ml {\n color: var(--color-prettylights-syntax-markup-list);\n}\n\n.markdown-body .pl-mh,\n.markdown-body .pl-mh .pl-en,\n.markdown-body .pl-ms {\n font-weight: bold;\n color: var(--color-prettylights-syntax-markup-heading);\n}\n\n.markdown-body .pl-mi {\n font-style: italic;\n color: var(--color-prettylights-syntax-markup-italic);\n}\n\n.markdown-body .pl-mb {\n font-weight: bold;\n color: var(--color-prettylights-syntax-markup-bold);\n}\n\n.markdown-body .pl-md {\n color: var(--color-prettylights-syntax-markup-deleted-text);\n background-color: var(--color-prettylights-syntax-markup-deleted-bg);\n}\n\n.markdown-body .pl-mi1 {\n color: var(--color-prettylights-syntax-markup-inserted-text);\n background-color: var(--color-prettylights-syntax-markup-inserted-bg);\n}\n\n.markdown-body .pl-mc {\n color: var(--color-prettylights-syntax-markup-changed-text);\n background-color: var(--color-prettylights-syntax-markup-changed-bg);\n}\n\n.markdown-body .pl-mi2 {\n color: var(--color-prettylights-syntax-markup-ignored-text);\n background-color: var(--color-prettylights-syntax-markup-ignored-bg);\n}\n\n.markdown-body .pl-mdr {\n font-weight: bold;\n color: var(--color-prettylights-syntax-meta-diff-range);\n}\n\n.markdown-body .pl-ba {\n color: var(--color-prettylights-syntax-brackethighlighter-angle);\n}\n\n.markdown-body .pl-sg {\n color: var(--color-prettylights-syntax-sublimelinter-gutter-mark);\n}\n\n.markdown-body .pl-corl {\n text-decoration: underline;\n color: var(--color-prettylights-syntax-constant-other-reference-link);\n}\n\n.markdown-body [role=button]:focus:not(:focus-visible),\n.markdown-body [role=tabpanel][tabindex="0"]:focus:not(:focus-visible),\n.markdown-body button:focus:not(:focus-visible),\n.markdown-body summary:focus:not(:focus-visible),\n.markdown-body a:focus:not(:focus-visible) {\n outline: none;\n box-shadow: none;\n}\n\n.markdown-body [tabindex="0"]:focus:not(:focus-visible),\n.markdown-body details-dialog:focus:not(:focus-visible) {\n outline: none;\n}\n\n.markdown-body g-emoji {\n display: inline-block;\n min-width: 1ch;\n font-family: "Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";\n font-size: 1em;\n font-style: normal !important;\n font-weight: var(--base-text-weight-normal, 400);\n line-height: 1;\n vertical-align: -0.075em;\n}\n\n.markdown-body g-emoji img {\n width: 1em;\n height: 1em;\n}\n\n.markdown-body a:has(>p,>div,>pre,>blockquote) {\n display: block;\n}\n\n.markdown-body a:has(>p,>div,>pre,>blockquote):not(:has(.snippet-clipboard-content,>pre)) {\n width: fit-content;\n}\n\n.markdown-body a:has(>p,>div,>pre,>blockquote):has(.snippet-clipboard-content,>pre):focus-visible {\n outline: 2px solid var(--focus-outlineColor);\n outline-offset: 2px;\n}\n\n.markdown-body .task-list-item {\n list-style-type: none;\n}\n\n.markdown-body .task-list-item label {\n font-weight: var(--base-text-weight-normal, 400);\n}\n\n.markdown-body .task-list-item.enabled label {\n cursor: pointer;\n}\n\n.markdown-body .task-list-item+.task-list-item {\n margin-top: var(--base-size-4);\n}\n\n.markdown-body .task-list-item .handle {\n display: none;\n}\n\n.markdown-body .task-list-item-checkbox {\n margin: 0 .2em .25em -1.4em;\n vertical-align: middle;\n}\n\n.markdown-body ul:dir(rtl) .task-list-item-checkbox {\n margin: 0 -1.6em .25em .2em;\n}\n\n.markdown-body ol:dir(rtl) .task-list-item-checkbox {\n margin: 0 -1.6em .25em .2em;\n}\n\n.markdown-body .contains-task-list:hover .task-list-item-convert-container,\n.markdown-body .contains-task-list:focus-within .task-list-item-convert-container {\n display: block;\n width: auto;\n height: 24px;\n overflow: visible;\n clip-path: none;\n}\n\n.markdown-body ::-webkit-calendar-picker-indicator {\n filter: invert(50%);\n}\n\n.markdown-body .markdown-alert {\n padding: var(--base-size-8) var(--base-size-16);\n margin-bottom: var(--base-size-16);\n color: inherit;\n border-left: .25em solid var(--borderColor-default);\n}\n\n.markdown-body .markdown-alert>:first-child {\n margin-top: 0;\n}\n\n.markdown-body .markdown-alert>:last-child {\n margin-bottom: 0;\n}\n\n.markdown-body .markdown-alert .markdown-alert-title {\n display: flex;\n font-weight: var(--base-text-weight-medium, 500);\n align-items: center;\n line-height: 1;\n}\n\n.markdown-body .markdown-alert.markdown-alert-note {\n border-left-color: var(--borderColor-accent-emphasis);\n}\n\n.markdown-body .markdown-alert.markdown-alert-note .markdown-alert-title {\n color: var(--fgColor-accent);\n}\n\n.markdown-body .markdown-alert.markdown-alert-important {\n border-left-color: var(--borderColor-done-emphasis);\n}\n\n.markdown-body .markdown-alert.markdown-alert-important .markdown-alert-title {\n color: var(--fgColor-done);\n}\n\n.markdown-body .markdown-alert.markdown-alert-warning {\n border-left-color: var(--borderColor-attention-emphasis);\n}\n\n.markdown-body .markdown-alert.markdown-alert-warning .markdown-alert-title {\n color: var(--fgColor-attention);\n}\n\n.markdown-body .markdown-alert.markdown-alert-tip {\n border-left-color: var(--borderColor-success-emphasis);\n}\n\n.markdown-body .markdown-alert.markdown-alert-tip .markdown-alert-title {\n color: var(--fgColor-success);\n}\n\n.markdown-body .markdown-alert.markdown-alert-caution {\n border-left-color: var(--borderColor-danger-emphasis);\n}\n\n.markdown-body .markdown-alert.markdown-alert-caution .markdown-alert-title {\n color: var(--fgColor-danger);\n}\n\n.markdown-body>*:first-child>.heading-element:first-child {\n margin-top: 0 !important;\n}\n\n.markdown-body .highlight pre:has(+.zeroclipboard-container) {\n min-height: 52px;\n}\n\n`,""]);const b=c},32046(n,o,e){"use strict";e.d(o,{A:()=>i});var t=e(31601),r=e.n(t),a=e(76314),l=e.n(a)()(r());l.push([n.id,"pre code.hljs {\n display: block;\n overflow-x: auto;\n padding: 1em\n}\ncode.hljs {\n padding: 3px 5px\n}\n/*!\n Theme: GitHub Dark\n Description: Dark theme as seen on github.com\n Author: github.com\n Maintainer: @Hirse\n Updated: 2021-05-15\n\n Outdated base version: https://github.com/primer/github-syntax-dark\n Current colors taken from GitHub's CSS\n*/\n.hljs {\n color: #c9d1d9;\n background: #0d1117\n}\n.hljs-doctag,\n.hljs-keyword,\n.hljs-meta .hljs-keyword,\n.hljs-template-tag,\n.hljs-template-variable,\n.hljs-type,\n.hljs-variable.language_ {\n /* prettylights-syntax-keyword */\n color: #ff7b72\n}\n.hljs-title,\n.hljs-title.class_,\n.hljs-title.class_.inherited__,\n.hljs-title.function_ {\n /* prettylights-syntax-entity */\n color: #d2a8ff\n}\n.hljs-attr,\n.hljs-attribute,\n.hljs-literal,\n.hljs-meta,\n.hljs-number,\n.hljs-operator,\n.hljs-variable,\n.hljs-selector-attr,\n.hljs-selector-class,\n.hljs-selector-id {\n /* prettylights-syntax-constant */\n color: #79c0ff\n}\n.hljs-regexp,\n.hljs-string,\n.hljs-meta .hljs-string {\n /* prettylights-syntax-string */\n color: #a5d6ff\n}\n.hljs-built_in,\n.hljs-symbol {\n /* prettylights-syntax-variable */\n color: #ffa657\n}\n.hljs-comment,\n.hljs-code,\n.hljs-formula {\n /* prettylights-syntax-comment */\n color: #8b949e\n}\n.hljs-name,\n.hljs-quote,\n.hljs-selector-tag,\n.hljs-selector-pseudo {\n /* prettylights-syntax-entity-tag */\n color: #7ee787\n}\n.hljs-subst {\n /* prettylights-syntax-storage-modifier-import */\n color: #c9d1d9\n}\n.hljs-section {\n /* prettylights-syntax-markup-heading */\n color: #1f6feb;\n font-weight: bold\n}\n.hljs-bullet {\n /* prettylights-syntax-markup-list */\n color: #f2cc60\n}\n.hljs-emphasis {\n /* prettylights-syntax-markup-italic */\n color: #c9d1d9;\n font-style: italic\n}\n.hljs-strong {\n /* prettylights-syntax-markup-bold */\n color: #c9d1d9;\n font-weight: bold\n}\n.hljs-addition {\n /* prettylights-syntax-markup-inserted */\n color: #aff5b4;\n background-color: #033a16\n}\n.hljs-deletion {\n /* prettylights-syntax-markup-deleted */\n color: #ffdcd7;\n background-color: #67060c\n}\n.hljs-char.escape_,\n.hljs-link,\n.hljs-params,\n.hljs-property,\n.hljs-punctuation,\n.hljs-tag {\n /* purposely ignored */\n \n}",""]);const i=l},69428(n){var o=!0,e=!1,t=!1;function r(n,o,e){var t=n.attrIndex(o),r=[o,e];t<0?n.attrPush(r):n.attrs[t]=r}function a(n,o){for(var e=n[o].level-1,t=o-1;t>=0;t--)if(n[t].level===e)return t;return-1}function l(n,o){return"inline"===n[o].type&&function(n){return"paragraph_open"===n.type}(n[o-1])&&function(n){return"list_item_open"===n.type}(n[o-2])&&function(n){return 0===n.content.indexOf("[ ] ")||0===n.content.indexOf("[x] ")||0===n.content.indexOf("[X] ")}(n[o])}function i(n,r){if(n.children.unshift(function(n,e){var t=new e("html_inline","",0),r=o?' disabled="" ':"";0===n.content.indexOf("[ ] ")?t.content='<input class="task-list-item-checkbox"'+r+'type="checkbox">':0!==n.content.indexOf("[x] ")&&0!==n.content.indexOf("[X] ")||(t.content='<input class="task-list-item-checkbox" checked=""'+r+'type="checkbox">');return t}(n,r)),n.children[1].content=n.children[1].content.slice(3),n.content=n.content.slice(3),e)if(t){n.children.pop();var a="task-item-"+Math.ceil(1e7*Math.random()-1e3);n.children[0].content=n.children[0].content.slice(0,-1)+' id="'+a+'">',n.children.push(function(n,o,e){var t=new e("html_inline","",0);return t.content='<label class="task-list-item-label" for="'+o+'">'+n+"</label>",t.attrs=[{for:o}],t}(n.content,a,r))}else n.children.unshift(function(n){var o=new n("html_inline","",0);return o.content="<label>",o}(r)),n.children.push(function(n){var o=new n("html_inline","",0);return o.content="</label>",o}(r))}n.exports=function(n,s){s&&(o=!s.enabled,e=!!s.label,t=!!s.labelAfter),n.core.ruler.after("inline","github-task-lists",function(n){for(var e=n.tokens,t=2;t<e.length;t++)l(e,t)&&(i(e[t],n.Token),r(e[t-2],"class","task-list-item"+(o?"":" enabled")),r(e[a(e,t-2)],"class","contains-task-list"))})}},3775(n,o,e){"use strict";var t=e(85072),r=e.n(t),a=e(97825),l=e.n(a),i=e(77659),s=e.n(i),d=e(55056),c=e.n(d),m=e(10540),b=e.n(m),p=e(41113),h=e.n(p),y=e(62718),k={};k.styleTagTransform=h(),k.setAttributes=c(),k.insert=s().bind(null,"head"),k.domAPI=l(),k.insertStyleElement=b();r()(y.A,k),y.A&&y.A.locals&&y.A.locals},72411(n,o,e){"use strict";var t=e(85072),r=e.n(t),a=e(97825),l=e.n(a),i=e(77659),s=e.n(i),d=e(55056),c=e.n(d),m=e(10540),b=e.n(m),p=e(41113),h=e.n(p),y=e(32046),k={};k.styleTagTransform=h(),k.setAttributes=c(),k.insert=s().bind(null,"head"),k.domAPI=l(),k.insertStyleElement=b();r()(y.A,k),y.A&&y.A.locals&&y.A.locals},53995(n,o,e){"use strict";e.d(o,{A:()=>i});const t={grinning:"😀",smiley:"😃",smile:"😄",grin:"😁",laughing:"😆",satisfied:"😆",sweat_smile:"😅",joy:"😂",wink:"😉",blush:"😊",innocent:"😇",heart_eyes:"😍",kissing_heart:"😘",kissing:"😗",kissing_closed_eyes:"😚",kissing_smiling_eyes:"😙",yum:"😋",stuck_out_tongue:"😛",stuck_out_tongue_winking_eye:"😜",stuck_out_tongue_closed_eyes:"😝",neutral_face:"😐",expressionless:"😑",no_mouth:"😶",smirk:"😏",unamused:"😒",relieved:"😌",pensive:"😔",sleepy:"😪",sleeping:"😴",mask:"😷",dizzy_face:"😵",sunglasses:"😎",confused:"😕",worried:"😟",open_mouth:"😮",hushed:"😯",astonished:"😲",flushed:"😳",frowning:"😦",anguished:"😧",fearful:"😨",cold_sweat:"😰",disappointed_relieved:"😥",cry:"😢",sob:"😭",scream:"😱",confounded:"😖",persevere:"😣",disappointed:"😞",sweat:"😓",weary:"😩",tired_face:"😫",rage:"😡",pout:"😡",angry:"😠",smiling_imp:"😈",smiley_cat:"😺",smile_cat:"😸",joy_cat:"😹",heart_eyes_cat:"😻",smirk_cat:"😼",kissing_cat:"😽",scream_cat:"🙀",crying_cat_face:"😿",pouting_cat:"😾",heart:"❤️",hand:"✋",raised_hand:"✋",v:"✌️",point_up:"☝️",fist_raised:"✊",fist:"✊",monkey_face:"🐵",cat:"🐱",cow:"🐮",mouse:"🐭",coffee:"☕",hotsprings:"♨️",anchor:"⚓",airplane:"✈️",hourglass:"⌛",watch:"⌚",sunny:"☀️",star:"⭐",cloud:"☁️",umbrella:"☔",zap:"⚡",snowflake:"❄️",sparkles:"✨",black_joker:"🃏",mahjong:"🀄",phone:"☎️",telephone:"☎️",envelope:"✉️",pencil2:"✏️",black_nib:"✒️",scissors:"✂️",wheelchair:"♿",warning:"⚠️",aries:"♈",taurus:"♉",gemini:"♊",cancer:"♋",leo:"♌",virgo:"♍",libra:"♎",scorpius:"♏",sagittarius:"♐",capricorn:"♑",aquarius:"♒",pisces:"♓",heavy_multiplication_x:"✖️",heavy_plus_sign:"➕",heavy_minus_sign:"➖",heavy_division_sign:"➗",bangbang:"‼️",interrobang:"⁉️",question:"❓",grey_question:"❔",grey_exclamation:"❕",exclamation:"❗",heavy_exclamation_mark:"❗",wavy_dash:"〰️",recycle:"♻️",white_check_mark:"✅",ballot_box_with_check:"☑️",heavy_check_mark:"✔️",x:"❌",negative_squared_cross_mark:"❎",curly_loop:"➰",loop:"➿",part_alternation_mark:"〽️",eight_spoked_asterisk:"✳️",eight_pointed_black_star:"✴️",sparkle:"❇️",copyright:"©️",registered:"®️",tm:"™️",information_source:"ℹ️",m:"Ⓜ️",black_circle:"⚫",white_circle:"⚪",black_large_square:"⬛",white_large_square:"⬜",black_medium_square:"◼️",white_medium_square:"◻️",black_medium_small_square:"◾",white_medium_small_square:"◽",black_small_square:"▪️",white_small_square:"▫️"},r={angry:[">:(",">:-("],blush:[':")',':-")'],broken_heart:["</3","<\\3"],confused:[":/",":-/"],cry:[":'(",":'-(",":,(",":,-("],frowning:[":(",":-("],heart:["<3"],imp:["]:(","]:-("],innocent:["o:)","O:)","o:-)","O:-)","0:)","0:-)"],joy:[":')",":'-)",":,)",":,-)",":'D",":'-D",":,D",":,-D"],kissing:[":*",":-*"],laughing:["x-)","X-)"],neutral_face:[":|",":-|"],open_mouth:[":o",":-o",":O",":-O"],rage:[":@",":-@"],smile:[":D",":-D"],smiley:[":)",":-)"],smiling_imp:["]:)","]:-)"],sob:[":,'(",":,'-(",";(",";-("],stuck_out_tongue:[":P",":-P"],sunglasses:["8-)","B-)"],sweat:[",:(",",:-("],sweat_smile:[",:)",",:-)"],unamused:[":s",":-S",":z",":-Z",":$",":-$"],wink:[";)",";-)"]};function a(n,o){return n[o].content}function l(n,o){const e=function(n){let o=n.defs;n.enabled.length&&(o=Object.keys(o).reduce((e,t)=>(n.enabled.indexOf(t)>=0&&(e[t]=o[t]),e),{}));const e=Object.keys(n.shortcuts).reduce((e,t)=>o[t]?Array.isArray(n.shortcuts[t])?(n.shortcuts[t].forEach(n=>{e[n]=t}),e):(e[n.shortcuts[t]]=t,e):e,{}),t=Object.keys(o);let r;r=0===t.length?"^$":t.map(n=>`:${n}:`).concat(Object.keys(e)).sort().reverse().map(n=>n.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")).join("|");const a=RegExp(r),l=RegExp(r,"g");return{defs:o,shortcuts:e,scanRE:a,replaceRE:l}}(Object.assign({},{defs:{},shortcuts:{},enabled:[]},o||{}));n.renderer.rules.emoji=a,n.core.ruler.after("linkify","emoji",function(n,o,e,t,r){const a=n.utils.arrayReplaceAt,l=n.utils.lib.ucmicro,i=new RegExp([l.Z.source,l.P.source,l.Cc.source].join("|"));function s(n,t,a){let l=0;const s=[];if(n.replace(r,function(t,r,d){let c;if(Object.prototype.hasOwnProperty.call(e,t)){if(c=e[t],r>0&&!i.test(d[r-1]))return;if(r+t.length<d.length&&!i.test(d[r+t.length]))return}else c=t.slice(1,-1);if(r>l){const o=new a("text","",0);o.content=n.slice(l,r),s.push(o)}const m=new a("emoji","",0);m.markup=c,m.content=o[c],s.push(m),l=r+t.length}),l<n.length){const o=new a("text","",0);o.content=n.slice(l),s.push(o)}return s}return function(n){let o;const e=n.tokens;let r=0;for(let l=0,i=e.length;l<i;l++){if("inline"!==e[l].type)continue;let i=e[l].children;for(let d=i.length-1;d>=0;d--)o=i[d],"link_open"!==o.type&&"link_close"!==o.type||"auto"===o.info&&(r-=o.nesting),"text"===o.type&&0===r&&t.test(o.content)&&(e[l].children=i=a(i,d,s(o.content,o.level,n.Token)))}}}(n,e.defs,e.shortcuts,e.scanRE,e.replaceRE))}function i(n,o){const e={defs:t,shortcuts:r,enabled:[]};l(n,Object.assign({},e,o||{}))}},8263(n,o,e){"use strict";function t(n,o,e,t){const r=Number(n[o].meta.id+1).toString();let a="";return"string"==typeof t.docId&&(a=`-${t.docId}-`),a+r}function r(n,o){let e=Number(n[o].meta.id+1).toString();return n[o].meta.subId>0&&(e+=`:${n[o].meta.subId}`),`[${e}]`}function a(n,o,e,t,r){const a=r.rules.footnote_anchor_name(n,o,e,t,r),l=r.rules.footnote_caption(n,o,e,t,r);let i=a;return n[o].meta.subId>0&&(i+=`:${n[o].meta.subId}`),`<sup class="footnote-ref"><a href="#fn${a}" id="fnref${i}">${l}</a></sup>`}function l(n,o,e){return(e.xhtmlOut?'<hr class="footnotes-sep" />\n':'<hr class="footnotes-sep">\n')+'<section class="footnotes">\n<ol class="footnotes-list">\n'}function i(){return"</ol>\n</section>\n"}function s(n,o,e,t,r){let a=r.rules.footnote_anchor_name(n,o,e,t,r);return n[o].meta.subId>0&&(a+=`:${n[o].meta.subId}`),`<li id="fn${a}" class="footnote-item">`}function d(){return"</li>\n"}function c(n,o,e,t,r){let a=r.rules.footnote_anchor_name(n,o,e,t,r);return n[o].meta.subId>0&&(a+=`:${n[o].meta.subId}`),` <a href="#fnref${a}" class="footnote-backref">↩︎</a>`}function m(n){const o=n.helpers.parseLinkLabel,e=n.utils.isSpace;n.renderer.rules.footnote_ref=a,n.renderer.rules.footnote_block_open=l,n.renderer.rules.footnote_block_close=i,n.renderer.rules.footnote_open=s,n.renderer.rules.footnote_close=d,n.renderer.rules.footnote_anchor=c,n.renderer.rules.footnote_caption=r,n.renderer.rules.footnote_anchor_name=t,n.block.ruler.before("reference","footnote_def",function(n,o,t,r){const a=n.bMarks[o]+n.tShift[o],l=n.eMarks[o];if(a+4>l)return!1;if(91!==n.src.charCodeAt(a))return!1;if(94!==n.src.charCodeAt(a+1))return!1;let i;for(i=a+2;i<l;i++){if(32===n.src.charCodeAt(i))return!1;if(93===n.src.charCodeAt(i))break}if(i===a+2)return!1;if(i+1>=l||58!==n.src.charCodeAt(++i))return!1;if(r)return!0;i++,n.env.footnotes||(n.env.footnotes={}),n.env.footnotes.refs||(n.env.footnotes.refs={});const s=n.src.slice(a+2,i-2);n.env.footnotes.refs[`:${s}`]=-1;const d=new n.Token("footnote_reference_open","",1);d.meta={label:s},d.level=n.level++,n.tokens.push(d);const c=n.bMarks[o],m=n.tShift[o],b=n.sCount[o],p=n.parentType,h=i,y=n.sCount[o]+i-(n.bMarks[o]+n.tShift[o]);let k=y;for(;i<l;){const o=n.src.charCodeAt(i);if(!e(o))break;9===o?k+=4-k%4:k++,i++}n.tShift[o]=i-h,n.sCount[o]=k-y,n.bMarks[o]=h,n.blkIndent+=4,n.parentType="footnote",n.sCount[o]<n.blkIndent&&(n.sCount[o]+=n.blkIndent),n.md.block.tokenize(n,o,t,!0),n.parentType=p,n.blkIndent-=4,n.tShift[o]=m,n.sCount[o]=b,n.bMarks[o]=c;const u=new n.Token("footnote_reference_close","",-1);return u.level=--n.level,n.tokens.push(u),!0},{alt:["paragraph","reference"]}),n.inline.ruler.after("image","footnote_inline",function(n,e){const t=n.posMax,r=n.pos;if(r+2>=t)return!1;if(94!==n.src.charCodeAt(r))return!1;if(91!==n.src.charCodeAt(r+1))return!1;const a=r+2,l=o(n,r+1);if(l<0)return!1;if(!e){n.env.footnotes||(n.env.footnotes={}),n.env.footnotes.list||(n.env.footnotes.list=[]);const o=n.env.footnotes.list.length,e=[];n.md.inline.parse(n.src.slice(a,l),n.md,n.env,e);n.push("footnote_ref","",0).meta={id:o},n.env.footnotes.list[o]={content:n.src.slice(a,l),tokens:e}}return n.pos=l+1,n.posMax=t,!0}),n.inline.ruler.after("footnote_inline","footnote_ref",function(n,o){const e=n.posMax,t=n.pos;if(t+3>e)return!1;if(!n.env.footnotes||!n.env.footnotes.refs)return!1;if(91!==n.src.charCodeAt(t))return!1;if(94!==n.src.charCodeAt(t+1))return!1;let r;for(r=t+2;r<e;r++){if(32===n.src.charCodeAt(r))return!1;if(10===n.src.charCodeAt(r))return!1;if(93===n.src.charCodeAt(r))break}if(r===t+2)return!1;if(r>=e)return!1;r++;const a=n.src.slice(t+2,r-1);if(void 0===n.env.footnotes.refs[`:${a}`])return!1;if(!o){let o;n.env.footnotes.list||(n.env.footnotes.list=[]),n.env.footnotes.refs[`:${a}`]<0?(o=n.env.footnotes.list.length,n.env.footnotes.list[o]={label:a,count:0},n.env.footnotes.refs[`:${a}`]=o):o=n.env.footnotes.refs[`:${a}`];const e=n.env.footnotes.list[o].count;n.env.footnotes.list[o].count++;n.push("footnote_ref","",0).meta={id:o,subId:e,label:a}}return n.pos=r,n.posMax=e,!0}),n.core.ruler.after("inline","footnote_tail",function(n){let o,e,t,r=!1;const a={};if(!n.env.footnotes)return;if(n.tokens=n.tokens.filter(function(n){return"footnote_reference_open"===n.type?(r=!0,e=[],t=n.meta.label,!1):"footnote_reference_close"===n.type?(r=!1,a[":"+t]=e,!1):(r&&e.push(n),!r)}),!n.env.footnotes.list)return;const l=n.env.footnotes.list;n.tokens.push(new n.Token("footnote_block_open","",1));for(let e=0,t=l.length;e<t;e++){const t=new n.Token("footnote_open","",1);if(t.meta={id:e,label:l[e].label},n.tokens.push(t),l[e].tokens){o=[];const t=new n.Token("paragraph_open","p",1);t.block=!0,o.push(t);const r=new n.Token("inline","",0);r.children=l[e].tokens,r.content=l[e].content,o.push(r);const a=new n.Token("paragraph_close","p",-1);a.block=!0,o.push(a)}else l[e].label&&(o=a[`:${l[e].label}`]);let r;o&&(n.tokens=n.tokens.concat(o)),r="paragraph_close"===n.tokens[n.tokens.length-1].type?n.tokens.pop():null;const i=l[e].count>0?l[e].count:1;for(let o=0;o<i;o++){const t=new n.Token("footnote_anchor","",0);t.meta={id:e,subId:o,label:l[e].label},n.tokens.push(t)}r&&n.tokens.push(r),n.tokens.push(new n.Token("footnote_close","",-1))}n.tokens.push(new n.Token("footnote_block_close","",-1))})}e.d(o,{A:()=>m})},18569(n,o,e){"use strict";e.d(o,{A:()=>a});const t=/\\([ \\!"#$%&'()*+,./:;<=>?@[\]^_`{|}~-])/g;function r(n,o){const e=n.posMax,r=n.pos;if(126!==n.src.charCodeAt(r))return!1;if(o)return!1;if(r+2>=e)return!1;n.pos=r+1;let a=!1;for(;n.pos<e;){if(126===n.src.charCodeAt(n.pos)){a=!0;break}n.md.inline.skipToken(n)}if(!a||r+1===n.pos)return n.pos=r,!1;const l=n.src.slice(r+1,n.pos);if(l.match(/(^|[^\\])(\\\\)*\s/))return n.pos=r,!1;n.posMax=n.pos,n.pos=r+1;n.push("sub_open","sub",1).markup="~";n.push("text","",0).content=l.replace(t,"$1");return n.push("sub_close","sub",-1).markup="~",n.pos=n.posMax+1,n.posMax=e,!0}function a(n){n.inline.ruler.after("emphasis","sub",r)}},77979(n,o,e){"use strict";e.d(o,{A:()=>a});const t=/\\([ \\!"#$%&'()*+,./:;<=>?@[\]^_`{|}~-])/g;function r(n,o){const e=n.posMax,r=n.pos;if(94!==n.src.charCodeAt(r))return!1;if(o)return!1;if(r+2>=e)return!1;n.pos=r+1;let a=!1;for(;n.pos<e;){if(94===n.src.charCodeAt(n.pos)){a=!0;break}n.md.inline.skipToken(n)}if(!a||r+1===n.pos)return n.pos=r,!1;const l=n.src.slice(r+1,n.pos);if(l.match(/(^|[^\\])(\\\\)*\s/))return n.pos=r,!1;n.posMax=n.pos,n.pos=r+1;n.push("sup_open","sup",1).markup="^";n.push("text","",0).content=l.replace(t,"$1");return n.push("sup_close","sup",-1).markup="^",n.pos=n.posMax+1,n.posMax=e,!0}function a(n){n.inline.ruler.after("emphasis","sup",r)}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[2674],{92674(e,t,n){n.r(t),n.d(t,{default:()=>M});var a=n(96540),s=n(82893),i=n(34843),o=n(85997),l=n(57952),r=n(47022),c=n(34251),d=n(74848);function u(e){{const[t,n]=(0,a.useState)(!1),[s,i]=(0,a.useState)([]),l=e=>{i(e)},p=async()=>{"folder"===e.type?(t||!e.click||s||await e.click(e,l,e.pre_path),n(!t)):e.click&&await e.click(e,l,e.pre_path)},h=async(t=!1)=>{"folder"!==e.type||t?e.fatherNowToggleExpansion&&e.fatherNowToggleExpansion():await e.click(e,l,e.pre_path)};return(0,a.useEffect)(()=>{i(e.children)},[e.children]),(0,d.jsxs)("div",{className:"studio-item",children:[(0,d.jsxs)("div",{onClick:p,onContextMenu:t=>{t.stopPropagation(),t.nativeEvent.stopImmediatePropagation(),e.handleContextMenu&&e.handleContextMenu(t,e.name,e.pre_path,e.type===r.Iw.folder,h)},className:"studio-item-title"+(e.active_path===e.pre_path?" studio-item-title--active":""),children:[(0,d.jsx)("i",{className:"material-icons studio-item-title-tag","data-icon":t?"arrow_drop_down":"arrow_right",children:"file"==e.type?"":t?"arrow_drop_down":"arrow_right"}),(0,d.jsx)("span",{className:"file-icons",children:(0,d.jsx)("span",{"data-type":(0,c.uL)(e.name),"data-dir":"folder"===e.type,"aria-label":e.name,children:(0,d.jsx)(o.In,{icon:"",aria_label:e.name})})}),(0,d.jsx)("span",{className:"studio-item-name",children:e.name})]}),t&&s&&(0,d.jsx)("div",{style:{marginLeft:20},children:s.map((t,n)=>(0,d.jsx)(a.Fragment,{children:(0,d.jsx)(u,{type:t.type,size:t.size,click:e.click,name:t.name,children:t.children,pre_path:`${e.pre_path}${t.name}${t.type===r.Iw.folder?"/":""}`,handleContextMenu:e.handleContextMenu,active_path:e.active_path,fatherNowToggleExpansion:h},n)},n))})]})}}n(61443);function p(e){return(0,d.jsx)("div",{children:e.list.map((t,n)=>(0,d.jsx)(u,{pre_path:`${e.pre_path}${t.name}${t.type===r.Iw.folder?"/":""}`,name:t.name,type:t.type,handleContextMenu:e.handleContextMenu,fatherNowToggleExpansion:e.fatherNowToggleExpansion,active_path:e.active_path,children:t.children,click:e.click,size:t.size},n))})}var h=n(14284),m=n(34289),f=n(53459),v=n(78247),x=(n(62042),n(2543)),_=n(83529),y=n(22022),w=n(88815),j=n(52671),g=n(23430);const k=a.lazy(()=>Promise.all([n.e(2543),n.e(4091)]).then(n.bind(n,84091))),C=a.lazy(()=>Promise.all([n.e(4946),n.e(1384),n.e(7954),n.e(1075),n.e(1142)]).then(n.bind(n,71142))),S=a.lazy(()=>n.e(4877).then(n.bind(n,64877))),N=a.lazy(()=>Promise.all([n.e(4946),n.e(2626),n.e(7954),n.e(4004)]).then(n.bind(n,95733))),E=a.lazy(()=>Promise.all([n.e(3140),n.e(5744)]).then(n.bind(n,16575))),b=a.lazy(()=>Promise.all([n.e(4437),n.e(2479)]).then(n.bind(n,12479)));function M(e){const[t,n]=(0,a.useState)([]),[u,M]=(0,a.useState)(""),[I,A]=(0,a.useState)(""),[P,$]=(0,a.useState)(!1),[R,z]=(0,a.useState)({path:"",name:""}),[F,D]=(0,a.useState)(""),[L,U]=(0,i.fp)(s.AG.confirm),[G,T]=(0,a.useState)(!1),[B,K]=(0,i.fp)(s.AG.fileShellShow),[J,O]=(0,i.fp)(s.AG.file_shell_hidden),X=(0,a.useRef)(null),H=(0,a.useRef)(null),[W,Y]=(0,a.useState)(!1),[V,Z]=(0,a.useState)(16),[q,Q]=(0,i.fp)(s.AG.showPrompt),{t:ee}=(0,y.Bd)(),te=(0,j.Zp)(),ne=(ae=R.name,(0,c.uL)(ae)===r.Iw.md);var ae;const se=function(e){return(0,c.uL)(e)===r.Iw.excalidraw}(R.name),ie=function(e){return(0,c.uL)(e)===r.Iw.mind}(R.name),oe=(0,a.useRef)(null),le=(0,a.useRef)(null),re=(0,a.useRef)(null),[ce,de]=(0,a.useState)([]),[ue,pe]=(0,a.useState)(-1),[he,me]=(0,a.useState)("folder"),[fe,ve]=(0,a.useState)(!0),[xe,_e]=(0,a.useState)(!1),[ye,we]=(0,a.useState)(!1),[je,ge]=(0,a.useState)(33),ke=(0,a.useRef)(null),[Ce,Se]=(0,a.useState)(!1),[Ne,Ee]=(0,a.useState)(void 0),be="studio_chat_session";let Me=(0,j.zy)().pathname.split("/").filter(Boolean).pop();Me=decodeURIComponent(Me);const{check_user_auth:Ie}=(0,v.MH)(),Ae=Me||"";const Pe=async()=>{const e=(0,m.GG)("file",Me);M(e),z({path:e,name:(0,m.mH)(e)});const t=await h.$M.post("studio/get/item",{path:e});if(t.code===f.m.Success){const e=[],a=[];for(const n of t.data.list)"folder"===n.type?e.push(n):"file"===n.type&&a.push(n);n([...e,...a])}};(0,a.useEffect)(()=>{A(""),T(!1),Pe()},[]);const $e=async(e,t)=>{const n=await h.$M.get(`${encodeURIComponent(t)}`);A(n.data),v.xK.set_value_temp(n.data),z({path:t,name:e}),D(t),me("folder"),_e(!1)},Re=(e,t)=>{e.size>w.o5?U({open:!0,handle:()=>{$e(e.name,t),U({open:!1,handle:null}),T(!1)},title:"超过20MB了还要打开吗?"}):$e(e.name,t)};async function ze(){if(!G)return;const e={context:v.xK.get_editor_value()};0===(await h.$M.post(`save/${encodeURIComponent(F)}`,e)).code&&T(!1)}const Fe=e=>{e.ctrlKey&&"s"===e.key&&(e.preventDefault(),G&&ze())};(0,a.useEffect)(()=>(document.addEventListener("keydown",Fe),()=>{document.removeEventListener("keydown",Fe)}),[G]);const De=(0,a.useCallback)(x.throttle(e=>{const t=parseFloat(getComputedStyle(H.current).fontSize),n=window.innerWidth/t-4,a=e.clientX/t,s=2.25+X.current.offsetWidth/t;a<=n&&a>=s&&Z(parseFloat(a.toFixed(2)))},32),[]),Le=()=>{Y(!1),H.current.removeEventListener("pointermove",De)},Ue=(0,a.useCallback)(x.throttle(e=>{const t=ke.current;if(!t)return;const n=parseFloat(getComputedStyle(t).fontSize),a=t.parentElement.getBoundingClientRect().right-e.clientX,s=.7*t.parentElement.getBoundingClientRect().width,i=Math.min(Math.max(a,320),s);ge(parseFloat((i/n).toFixed(2)))},32),[]),Ge=()=>{Se(!1),document.removeEventListener("pointermove",Ue)},Te=[{r:ee("创建文件"),v:"创建文件"},{r:ee("创建目录"),v:"创建目录"},{r:ee("重命名"),v:"重命名"},{r:ee("删除"),v:"删除"}],Be=[{r:ee("重命名"),v:"重命名"},{r:ee("删除"),v:"删除"}],Ke=(e,t,n,a,s)=>{e.preventDefault();const i=new c.ik;i.path=n,i.filename=t,i.x=e.clientX,i.y=e.clientY,i.items=a?Te:Be,s===Pe&&(i.items=i.items.slice(0,2)),i.type=a?r.Iw.studio_folder:r.Iw.studio_file;const o=e=>{s(e)};i.textClick=e=>{switch(e){case"创建文件":Q({show:!0,type:_.PromptEnum.FileNew,overlay:!0,data:{dir:n,call:o}});break;case"创建目录":Q({show:!0,type:_.PromptEnum.DirNew,overlay:!0,data:{dir:n,call:o}});break;case"删除":if(G&&(R.path===n||R.path.includes(n))){const e=()=>{o(a),T(!1),z({}),A(""),v.xK.set_value_temp("")};Q({show:!0,type:_.PromptEnum.FilesDelete,overlay:!0,data:{path:n,call:e,filename:t}});break}Q({show:!0,type:_.PromptEnum.FilesDelete,overlay:!0,data:{path:n,filename:t,call:a?()=>{o(!0)}:o}});break;case"重命名":Q({show:!0,type:_.PromptEnum.FileRename,overlay:!0,data:{path:n,dir:(0,m.Yp)(n),call:()=>{o(!0)},filename:t}})}},Q({show:!0,type:_.PromptEnum.FileMenu,overlay:!1,data:i})};const Je=ne&&"outline"===he;return(0,d.jsxs)("div",{className:"studio studio--file",children:[(0,d.jsxs)(l.A,{ignore_tags:!0,left_children:[(0,d.jsx)(o.rA,{title:"取消",icon:"close",onClick:()=>{K({show:!1,path:""}),O(void 0),te(-1)}},1),(0,d.jsx)("div",{children:R.name},2)],children:[(0,d.jsx)("title",{children:R.name}),(0,d.jsx)(o.rA,{title:"侧边栏",icon:"list",onClick:()=>ve(e=>!e),selected:fe}),ne&&[xe?(0,d.jsx)(o.rA,{title:ee("保存"),icon:"save",onClick:()=>oe.current?.save()},"save"):null,(0,d.jsx)(o.rA,{icon:"source"===oe.current?.mode()?"edit":"code",title:"source"===oe.current?.mode()?ee("实时编辑模式"):ee("源码模式"),onClick:()=>oe.current?.toggle_mode()},"mode"),(0,d.jsx)(o.rA,{title:ee("导出PDF"),icon:"print",onClick:()=>oe.current?.export_pdf()},"pdf")],!ne&&(0,c.zr)(R.name)&&(0,d.jsx)(o.rA,{title:"格式化",icon:"data_object",onClick:function(){v.xK.get_editor()?.formatCode()}}),(0,d.jsx)(o.rA,{icon:"terminal",title:"shell",onClick:function(){!0!==J&&!1!==J?B.show?K({show:!1,path:""}):(K({show:!0,path:(0,m.GG)("file",Me)}),O(!1)):O(!J)}}),Ie(g.oV.ai_agent_page)&&(0,d.jsx)(o.rA,{title:ee("AI 聊天"),icon:"smart_toy",selected:ye,onClick:()=>we(e=>!e)}),ne?xe?(0,d.jsx)(o.rA,{title:ee("保存"),icon:"save",onClick:()=>oe.current?.save()}):null:se?(0,d.jsx)(o.rA,{title:ee("保存"),icon:"save",onClick:()=>le.current?.save()}):ie?(0,d.jsx)(o.rA,{title:ee("保存"),icon:"save",onClick:()=>re.current?.save()}):G?(0,d.jsx)(o.rA,{title:"保存",icon:"save",onClick:ze}):null]}),(0,d.jsxs)("div",{className:"studio-body",ref:H,children:[(0,d.jsxs)("div",{className:"studio-nav",style:{display:fe?void 0:"none",width:V-1+"em"},onContextMenu:e=>{Ke(e,R.name,(0,m.GG)("file",Me),!0,Pe)},children:[(0,d.jsx)("div",{className:"studio-nav-outline",style:{display:Je?void 0:"none"},children:(0,d.jsx)(S,{items:ce,active_pos:ue,on_click:e=>oe.current?.goto_heading(e)})}),(0,d.jsx)("div",{className:"studio-nav-folder",style:{display:Je?"none":void 0},children:(0,d.jsx)(p,{pre_path:u,list:t,click:async(e,t,n)=>{if("folder"===e.type){const e=await h.$M.post("studio/get/item",{path:`${n}`});if(e.code===f.m.Success){const n=[],a=[];for(const t of e.data.list)"folder"===t.type?n.push(t):"file"===t.type&&a.push(t);t([...n,...a])}}else{if(G)return void U({open:!0,handle:()=>{U({open:!1,handle:null}),T(!1),Re(e,n)},title:"确定不保存就切换吗?"});Re(e,n)}},active_path:F,handleContextMenu:Ke,fatherNowToggleExpansion:Pe})}),ne&&(0,d.jsx)("div",{className:"studio-nav-switch",children:(0,d.jsx)(o.rA,{icon:Je?"folder":"list",title:ee(Je?"文件目录":"大纲"),onClick:()=>me(Je?"folder":"outline")})})]}),fe&&(0,d.jsx)("div",{className:"studio__divider",ref:X,onPointerDown:()=>{Y(!0),H.current.addEventListener("pointermove",De)},onPointerUp:Le}),W&&(0,d.jsx)("div",{className:"shell__overlay",onPointerUp:Le}),ne?(0,d.jsx)("div",{className:"studio-editor studio-editor--md",children:(0,d.jsx)(a.Suspense,{fallback:null,children:(0,d.jsx)(C,{pane:{path:F,url:h.$M.getDownloadUrl(encodeURIComponent(F)),name:R.name,on_dirty:_e,on_outline:(e,t)=>{de(e),pe(t)},register:e=>{oe.current=e}}})})},F):se?(0,d.jsx)("div",{className:"studio-editor studio-editor--draw",children:(0,d.jsx)(a.Suspense,{fallback:null,children:(0,d.jsx)(E,{reset_key:F,url:h.$M.getDownloadUrl(encodeURIComponent(F)),save_path:F,on_dirty:T,on_saved:()=>T(!1),register:e=>{le.current=e}})})},F):ie?(0,d.jsx)("div",{className:"studio-editor studio-editor--mind",children:(0,d.jsx)(a.Suspense,{fallback:null,children:(0,d.jsx)(b,{reset_key:F,url:h.$M.getDownloadUrl(encodeURIComponent(F)),on_dirty:T,on_saved:()=>T(!1),register:e=>{re.current=e},on_save:async e=>(await h.$M.post(`save/${encodeURIComponent(F)}`,{context:e})).code===f.m.Success})})},F):(0,d.jsx)("div",{className:"studio-editor",children:R.name&&(0,d.jsx)(a.Suspense,{fallback:null,children:(0,d.jsx)(k,{name:R.name,on_change:()=>{G||T(!0)}})})},F),ye&&(0,d.jsxs)(a.Fragment,{children:[(0,d.jsx)("div",{className:"studio__divider studio__divider--chat",ref:ke,onPointerDown:e=>{e.preventDefault(),Se(!0),document.addEventListener("pointermove",Ue),document.addEventListener("pointerup",Ge,{once:!0})}}),(0,d.jsx)("div",{className:"studio-chat-panel",style:{width:`${je}em`},children:(0,d.jsx)(a.Suspense,{fallback:null,children:(0,d.jsx)(N,{inline_header:!0,sync_url:!1,file_cwd_path:Ae,session_id:Ne??(e=>{try{const t=sessionStorage.getItem(be);if(!t)return;const n=JSON.parse(t);return n?.[e]||void 0}catch{return}})(Ae),on_session_change:e=>{Ee(e),((e,t)=>{try{const n=sessionStorage.getItem(be),a=n?JSON.parse(n):{};a[e]=t,sessionStorage.setItem(be,JSON.stringify(a))}catch{}})(Ae,e)}})})})]})]})]})}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[2851],{8694(e,t,s){s.d(t,{$K:()=>o,RB:()=>c,l5:()=>l,vo:()=>a,vr:()=>r});let n=function(e){return e[e.tcp=0]="tcp",e[e.udp=1]="udp",e}({});class o{open=!1;port;key="";async_ips=[]}class a{client_num_id;client_name;open=!1;ip;mask;serverIp;serverPort;key="";model=n.udp}let c=function(e){return e[e.row=1]="row",e[e.json=2]="json",e[e.form=3]="form",e}({});class r{body_type;header_type;url;method;headers;data;form_data_list;local_download_path}class l{enabled;ip;port;bypass;useForLocal;type}},47996(e,t,s){s.d(t,{d:()=>o});s(96540);var n=s(74848);function o(e){return(0,n.jsxs)("div",{className:"instance-item",children:[(0,n.jsxs)("div",{className:"instance-item__toolbar",children:[(0,n.jsx)("span",{className:"instance-item__label",children:e.title}),e.toolbar]}),e.children]})}},77481(e,t,s){s.d(t,{S:()=>r,X:()=>c});var n=s(96540),o=s(61443),a=s(74848);function c(e){const[t,s]=n.useState([]),c=(0,n.useRef)(-1),[r,l]=(0,n.useState)(-1),[i,d]=(0,n.useState)(-1);(0,n.useEffect)(()=>{e.children?s(Array.isArray(e.children)?e.children:[e.children]):s(e.rows)},[e.rows,e.children]);const p=()=>{c.current=-1,l(-1),d(-1)};return(0,a.jsxs)("table",{children:[(0,a.jsx)("thead",{children:(0,a.jsx)("tr",{children:e.headers?.map((t,s)=>{const n=!!e.filter&&(e.filter.column??0)===s;let c=t;if(n){const s=e.filter,n=s.options.find(e=>e.value===s.value);null!=s.value&&n&&(c=`${t} (${n.label})`)}return(0,a.jsx)("th",{className:n?"table-filter-col":"",children:n?(0,a.jsx)(o.l6,{value:e.filter.value,options:e.filter.options,onChange:e.filter.onChange,bare:!0,trigger_label:c}):t},s)})})}),(0,a.jsx)("tbody",{children:t.map((t,s)=>{const n=!!e.onRowDrag;return(0,a.jsx)("tr",{className:n?(r===s?"row-dragging":"")+(i===s?" row-drop-target":""):"",draggable:n,onContextMenu:()=>{e.handleContextMenu&&e.handleContextMenu(t)},onDragStart:e=>{n&&(c.current=s,l(s),e.dataTransfer.effectAllowed="move")},onDragOver:e=>{!n||c.current<0||(e.preventDefault(),e.dataTransfer.dropEffect="move",d(s))},onDrop:t=>{n&&(t.preventDefault(),(()=>{const t=c.current,s=i;p(),t<0||s<0||t===s||e.onRowDrag?.(t,s)})())},onDragEnd:p,children:t.map((s,n)=>{const o=n===t.length-1?"small":"";return(0,a.jsx)("td",{className:o,style:{width:e.width??"auto"},children:s},n)})},s)})})]})}function r(e){return(0,a.jsx)("div",{style:{display:e.isFlex?"flex":"block"},children:e.columns.map((e,t)=>(0,a.jsx)("div",{children:e},t))})}},42851(e,t,s){s.r(t),s.d(t,{default:()=>H});var n=s(96540),o=s(75725),a=s(14284),c=s(62042),r=s(53459),l=s(70447),i=s(61443),d=s(85997),p=s(77481),h=s(8694),u=s(14944),x=s(92275),j=s(22022),m=s(4412),v=s(74848);function g(e){const{t}=(0,j.Bd)(),[s,g]=(0,n.useState)(void 0),[f,y]=(0,n.useState)(!1),[_,S]=(0,n.useState)(""),[w,C]=(0,n.useState)([t(`${t("名称")}`),t(`${t("虚拟")}ip`),`${t("物理")}`,t("在线状态"),t("选择")]),[k,b]=(0,n.useState)([]),[I,A]=(0,n.useState)({}),[U,P]=(0,n.useState)(!1);(0,n.useEffect)(()=>{(async()=>{const e=new x.hf(x.HK.vir_net_serverIno_get);u.ws.addMsg(x.HK.vir_net_serverIno_get,e=>{(e=>{for(const s of e){const e=s[s.length-1];s[s.length-1]=(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)(l.fq,{ok:e}),t(e?"在线":"离线")]}),s[0]=(0,v.jsx)(l.xP,{context:s[0],tip_context:s[0]}),s[2]=(0,v.jsx)(l.xP,{context:s[2],tip_context:s[2]})}})(e.context),b(e.context)}),await u.ws.send(e)})();return(async()=>{const e=await a._U.get("vir/server/get");if(e.code!==r.m.Success)return;const t=e.data;g(t.port),S(t.key),y(t.open)})(),()=>{}},[]);return(0,v.jsxs)("div",{children:[(0,v.jsxs)(m.aZ,{position:"right",children:[!!Object.keys(I).length&&I[0],!!Object.keys(I).length&&(0,v.jsx)(d.rA,{icon:"delete",title:"删除",onClick:async()=>{await a._U.post("vir/server/delete/client",{ips:Object.keys(I)}),A({})}})]}),(0,v.jsx)(o.fI,{children:(0,v.jsxs)(o.VP,{children:[(0,v.jsxs)(l.Zp,{title:"",rightBottomCom:(0,v.jsx)(d.C3,{text:t("保存"),clickFun:async()=>{const e=new h.$K;e.open=f,e.key=_,U&&(e.async_ips=Object.keys(I)),s&&(e.port=parseInt(s));(await a._U.post("vir/server/save",e)).code===r.m.Success?((0,c.SK)("保存成功"),P(!1)):(0,c.zN)("网络错误")}}),children:[(0,v.jsx)(i.Sm,{placeholder:"port",value:s,handleInputChange:e=>{g(e)}}),(0,v.jsx)(i.Sm,{type:"password",placeholder:"key ",value:_,handleInputChange:e=>{S(e)}}),(0,v.jsxs)("form",{children:[t("状态"),":",(0,v.jsx)(p.S,{isFlex:!0,columns:[(0,v.jsx)(i.U6,{value:1,context:t("开启"),selected:f,onchange:()=>{y(!f)}}),(0,v.jsx)(i.U6,{value:1,context:t("关闭"),selected:!f,onchange:()=>{y(!f)}})]})]}),!!Object.keys(I).length&&(0,v.jsx)(i.GL,{context:t("sync_sv"),selected:U,onchange:()=>{P(!U)}})]}),(0,v.jsx)(l.Zp,{title:"",children:(0,v.jsx)(p.X,{headers:w,rows:k.map(e=>[...e,(0,v.jsx)(i.GL,{context:t(""),selected:I[e[1]],onchange:()=>{const t={...I};t[e[1]]?delete t[e[1]]:t[e[1]]=e,A(t)}})]),width:"10rem"})})]})})]})}function f(e){const{t}=(0,j.Bd)(),[s,m]=(0,n.useState)(""),[g,f]=(0,n.useState)(void 0),[y,_]=(0,n.useState)(""),[S,w]=(0,n.useState)(""),[C,k]=(0,n.useState)(void 0),[b,I]=(0,n.useState)(!1),[A,U]=(0,n.useState)(""),[P,F]=(0,n.useState)(!1);(0,n.useEffect)(()=>{(async()=>{const e=await a._U.get("vir/client/get");if(e.code!==r.m.Success)return;const t=e.data;if(k(t.serverPort),_(t.serverIp),m(t.ip),f(t.mask),U(t.key),I(t.open),w(t.client_name),t.open){const e=new x.hf(x.HK.vir_net_client_get),t=(await u.ws.send(e)).context.state;F(t),u.ws.addMsg(x.HK.vir_net_client_get,e=>{F(e.context.state)})}})()},[]);return(0,v.jsx)("div",{children:(0,v.jsx)(o.fI,{children:(0,v.jsxs)(o.VP,{children:[(0,v.jsxs)(l.Zp,{title:"",rightBottomCom:(0,v.jsx)(d.C3,{text:t("保存"),clickFun:async()=>{const e=new h.vo;e.ip=s,e.mask=parseInt(g),e.key=A,e.serverIp=y,e.serverPort=parseInt(C),e.open=b,e.client_name=S;(await a._U.post("vir/client/save",e)).code===r.m.Success?(0,c.SK)("保存成功"):(0,c.zN)("网络错误")}}),titleCom:(0,v.jsxs)("div",{children:[t("连接状态"),(0,v.jsx)(l.fq,{ok:P})]}),children:[(0,v.jsx)(i.Sm,{placeholder:"ip ",value:s,handleInputChange:e=>{m(e)}}),(0,v.jsx)(i.Sm,{placeholder:"mask",value:g,handleInputChange:e=>{f(e)}}),(0,v.jsx)(i.Sm,{placeholder:`${t("服务器")} ip`,value:y,handleInputChange:e=>{_(e)}}),(0,v.jsx)(i.Sm,{placeholder:`${t("服务器")} part`,value:C,handleInputChange:e=>{k(e)}}),(0,v.jsx)(i.Sm,{placeholder:"名称 ",value:S,handleInputChange:e=>{w(e)}}),(0,v.jsx)(i.Sm,{type:"password",placeholder:"key ",value:A,handleInputChange:e=>{U(e)}}),(0,v.jsxs)("form",{children:[t("状态"),(0,v.jsx)(p.S,{isFlex:!0,columns:[(0,v.jsx)(i.U6,{value:1,context:t("开启"),selected:b,onchange:()=>{I(!b)}}),(0,v.jsx)(i.U6,{value:1,context:t("关闭"),selected:!b,onchange:()=>{I(!b)}})]})]})]}),(0,v.jsxs)(l.Zp,{title:"",children:[(0,v.jsx)("div",{children:"ip: 虚拟ip, “10.0.0.0 - 10.255.255.255”和“172.16.0.0 - 172.31.255.255”和“192.168.0.0 - 192.168.255.255”这三个网段属于内网ip"}),(0,v.jsx)("div",{children:"mask: 一些常见的子网掩码网段/8:255.0.0.0;/16:255.255.0.0 ;/24:255.255.255.0"}),(0,v.jsx)("div",{children:"key:用于验证身份信息并加密的和服务器设置的一样"})]})]})})})}var y=s(47996),_=s(34843),S=s(82893),w=s(23430),C=s(78247),k=s(21499),b=s(24659),I=s(64694);function A(e){const{t}=(0,j.Bd)(),[s,u]=(0,n.useState)(""),[x,m]=(0,n.useState)(""),[g,f]=(0,n.useState)(""),[A,U]=(0,n.useState)(!1),[P,F]=(0,n.useState)(!1),[K,$]=(0,n.useState)({list:[]}),[H,N]=(0,_.fp)(S.AG.editorSetting),[Z,O]=(0,_.fp)(S.AG.user_base_info),D=[t("端口"),t("目标地址"),t("目标端口"),t("开启"),t("备注"),t("删除")],[B,E]=(0,n.useState)([]),z=[t("port"),t("ip"),t("type"),t("开启")],[V,M]=(0,n.useState)([]),T=[t("编辑"),t("开启"),t("备注"),t("删除")],X=(0,b.K)(),G=async()=>{const e=[a._U.post("vir/client/tcp_proxy/get"),a._U.post("http/proxy/server/get")];let t;Z.sys===w.XM.mac?t=(async()=>{const e=await a._U.post("http/proxy/get/mac");if(e.code!==r.m.Success)return;const t=[],s=[];for(const n of e.data)"Wi-Fi"===n.name?t.push(n):s.push(n);M([...t,...s])})():Z.sys===w.XM.win&&(t=(async()=>{const e=await a._U.post("http/proxy/get/win");if(e.code===r.m.Success){const t=e.data;u(t.ip),m(t.port),U(t.enabled),f(t.bypass),F(t.useForLocal)}})()),t&&e.push(t);const[s,n]=await Promise.all(e);s.code===r.m.Success&&E(s.data),n.code===r.m.Success&&$(n.data)};(0,n.useEffect)(()=>{G()},[]);return(0,v.jsx)("div",{children:(0,v.jsxs)(o.fI,{children:[Z.sys===w.XM.win&&(0,v.jsx)(o.VP,{widthPer:33,children:(0,v.jsxs)(l.Zp,{title:"Http Proxy",rightBottomCom:(0,v.jsx)(d.C3,{text:t("保存"),clickFun:async()=>{const e=new h.l5;e.port=parseInt(x),e.enabled=A,e.useForLocal=P,e.ip=s,e.bypass=g;(await a._U.post("http/proxy/set/win",e)).code===r.m.Success&&(G(),(0,c.SK)("保存成功"))}}),children:[(0,v.jsx)(i.Sm,{placeholder:"ip (default localhost) ",value:s,handleInputChange:e=>{u(e)}}),(0,v.jsx)(i.Sm,{placeholder:"port ",value:x,handleInputChange:e=>{m(e)}}),(0,v.jsx)(i.Sm,{placeholder:t("忽略ip"),value:g,handleInputChange:e=>{f(e)}}),(0,v.jsxs)("form",{children:[t("pxy_nln"),(0,v.jsx)(p.S,{isFlex:!0,columns:[(0,v.jsx)(i.U6,{value:1,context:t("开启"),selected:P,onchange:()=>{F(!P)}}),(0,v.jsx)(i.U6,{value:1,context:t("关闭"),selected:!P,onchange:()=>{F(!P)}})]})]}),(0,v.jsxs)("form",{children:[t("状态"),(0,v.jsx)(p.S,{isFlex:!0,columns:[(0,v.jsx)(i.U6,{value:1,context:t("开启"),selected:A,onchange:()=>{U(!A)}}),(0,v.jsx)(i.U6,{value:1,context:t("关闭"),selected:!A,onchange:()=>{U(!A)}})]})]})]})}),Z.sys===w.XM.mac&&(0,v.jsx)(o.VP,{children:V.map((e,s)=>(0,v.jsxs)(l.uF,{self_title:(0,v.jsxs)("span",{className:" div-row ",children:[(0,v.jsx)("h2",{children:e.name})," "]}),titleCom:(0,v.jsx)("div",{children:(0,v.jsx)(d.rA,{icon:"save",title:t("保存"),onClick:()=>{(async e=>{const t=V[e];(await a._U.post("http/proxy/set/mac",[t])).code===r.m.Success&&(G(),(0,c.SK)("保存成功"))})(s)}})}),children:[(0,v.jsx)(p.X,{headers:z,rows:e.proxies.map((e,t)=>{const n=[(0,v.jsx)(i.Sm,{value:e.port,handleInputChange:t=>{e.port=parseInt(t)},no_border:!0}),(0,v.jsx)(i.Sm,{value:e.ip,handleInputChange:t=>{e.ip=t},no_border:!0}),(0,v.jsx)("div",{children:1===e.type?"http":"https"}),(0,v.jsx)(i.l6,{value:e.enabled,onChange:e=>{((e,t,s)=>{const n=[...V];n[e].proxies[t].enabled=s,M(n)})(s,t,e)},options:X,no_border:!0})];return n}),width:"10rem"}),"ignore ips",(0,v.jsx)(i.Sm,{value:e.bypass,handleInputChange:e=>{V[s].bypass=e},no_border:!0})]},s))}),(0,v.jsxs)(o.VP,{children:[(0,v.jsx)(l.uF,{self_title:(0,v.jsxs)("span",{className:" div-row ",children:[(0,v.jsx)("h2",{children:t("Tcp Proxy")})," "]}),titleCom:(0,v.jsxs)("div",{children:[(0,v.jsx)(d.rA,{icon:"add",title:t("添加"),onClick:()=>{E([...B,{note:"",open:!1,port:0,target_port:0,target_ip:""}])}}),(0,v.jsx)(d.rA,{icon:"save",title:t("保存"),onClick:async()=>{const e=[];for(let t=0;t<B.length;t++)B[t].index=t,e.push(B[t]);(await a._U.post("vir/client/tcp_proxy/save",e)).code===r.m.Success&&((0,c.SK)("保存成功"),G())}})]}),children:(0,v.jsx)(p.X,{headers:D,rows:B.map((e,s)=>{const n=[(0,v.jsx)(i.Sm,{value:e.port,handleInputChange:t=>{e.port=parseInt(t)},no_border:!0}),(0,v.jsx)(i.Sm,{value:e.target_ip,handleInputChange:t=>{e.target_ip=t},no_border:!0}),(0,v.jsx)(i.Sm,{value:e.target_port,handleInputChange:t=>{e.target_port=parseInt(t)},no_border:!0}),(0,v.jsx)(i.l6,{value:e.open,onChange:e=>{B[s].open=e,E([...B])},options:X,no_border:!0}),(0,v.jsx)(i.Sm,{value:e.note,handleInputChange:t=>{e.note=t},no_border:!0}),(0,v.jsx)("div",{children:(0,v.jsx)(d.rA,{icon:"delete",title:t("删除"),onClick:()=>(e=>{B.splice(e,1),E([...B])})(s)})})];return n}),width:"10rem",onRowDrag:(e,t)=>{E((0,I.TI)(B,e,t))}})}),(0,v.jsx)(l.uF,{self_title:(0,v.jsxs)("span",{className:" div-row ",children:[(0,v.jsx)("h2",{children:t("Http Proxy Server")})," "]}),titleCom:(0,v.jsxs)("div",{children:[(0,v.jsx)(d.rA,{icon:"add",title:t("添加端口实例"),onClick:()=>{K.list.push({open:!1,port:0,note:"",list:[]}),$({...K})}}),(0,v.jsx)(d.rA,{icon:"save",title:t("保存"),onClick:async()=>{(await a._U.post("http/proxy/server/save",K)).code===r.m.Success&&(0,c.SK)("保存成功")}})]}),children:K.list.map((e,s)=>(0,v.jsx)(y.d,{title:`${t("端口实例")} #${s+1}`,toolbar:(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)("span",{children:t("状态")}),(0,v.jsx)(i.l6,{value:e.open,width:"15%",onChange:t=>{e.open=t,$({...K})},options:X,no_border:!0}),(0,v.jsx)("span",{children:t("端口")}),(0,v.jsx)(i.Sm,{value:e.port||"",handleInputChange:t=>{e.port=t?parseInt(t):0,$({...K})},no_border:!0,width:"80px"}),(0,v.jsx)(d.rA,{icon:"add",title:t("添加规则"),onClick:()=>{e.list.push({note:"",open:!1}),$({...K})}}),(0,v.jsx)(d.rA,{icon:"delete",title:t("删除端口实例"),onClick:()=>{K.list.splice(s,1),$({...K})}}),(0,v.jsx)(i.Sm,{placeholder:t("备注"),width:"100%",value:e.note,handleInputChange:t=>{e.note=t,$({...K})},no_border:!0})]}),children:(0,v.jsx)(p.X,{headers:T,rows:e.list.map((n,o)=>{const c=[(0,v.jsx)("div",{children:(0,v.jsx)(d.rA,{icon:"edit",title:t("编辑"),onClick:()=>{(async(e,t)=>{const s=K.list[e];if(!s)return;const n=s.list[t];if(!n)return;n.random_key||(n.random_key=(0,k.hU)(),$({...K}));const o=await a._U.post("http/proxy/server/code/get",{key:n.random_key,name:n.random_key});N({model:"ace/mode/javascript",open:!0,fileName:"",can_format:!0,save:async e=>{0===(await a._U.post("http/proxy/server/code/save",{context:e,key:n.random_key})).code&&(C.xK.set_value_temp(""),N({open:!1,model:"",fileName:"",save:null}))}}),C.xK.set_value_temp(o.data)})(s,o)}})}),(0,v.jsx)(i.l6,{value:n.open,onChange:t=>{e.list[o].open=t,$({...K})},options:X,no_border:!0}),(0,v.jsx)(i.Sm,{value:n.note,handleInputChange:e=>{n.note=e},no_border:!0}),(0,v.jsx)("div",{children:(0,v.jsx)(d.rA,{icon:"delete",title:t("删除"),onClick:()=>{e.list.splice(o,1),$({...K})}})})];return c}),width:"10rem"})},s))})]})]})})}var U=s(87361),P=s(82726),F=s(83529);function K(e){const{t}=(0,j.Bd)(),[s,h]=(0,n.useState)([]),[u,x]=(0,n.useState)([]),[g,f]=(0,n.useState)(""),[y,w]=(0,n.useState)(""),[C,k]=(0,n.useState)(!1),[b,I]=(0,_.fp)(S.AG.showPrompt),[A,U]=(0,_.fp)(S.AG.confirm);(0,n.useEffect)(()=>{(async()=>{const e=await a.ez.get("ips/dnspod");if(e.code!==r.m.Success)return;const t=e.data,s=[],n=[];for(const e of t.ips)e.isIPv4?s.push(e):n.push(e);h(s),x(n),t.account&&(f(t.account.id),w(t.account.token)),k(t.isOpen)})()},[]);const K=async e=>{U({open:!0,handle:async()=>{0===(await a.ez.post("http/del",e)).code&&(0,c.SK)("删除成功,稍后请刷新"),U({open:!1,handle:null})},title:t("确定删除吗")})};return(0,v.jsxs)("div",{children:[(0,v.jsx)(m.aZ,{position:"right",children:(0,v.jsx)(d.rA,{icon:"add",title:t("添加http获取ip"),onClick:()=>{I({show:!0,type:F.PromptEnum.DdnsAddHttp,overlay:!0,data:{}})}})}),(0,v.jsxs)(o.fI,{children:[(0,v.jsxs)(o.VP,{children:[(0,v.jsx)(l.Zp,{title:"ipv4",children:s.length>0&&s.map((e,s)=>(0,v.jsxs)("div",{children:[`${e.ifaceOrWww}(${e.ip})`,(0,v.jsx)(i.Sm,{right_placeholder:(0,v.jsx)("div",{children:e.source_type===P.tC.http_get&&(0,v.jsx)(d.rA,{icon:"delete",title:t("删除"),onClick:()=>{K(e)}})}),placeholder:"a.abc.com b.abc.com ...",value:e.ddnsHost,handleInputChange:t=>{e.ddnsHost=t}})]},s))}),(0,v.jsx)(l.Zp,{title:"ipv6",children:u.length>0&&u.map((e,s)=>(0,v.jsxs)("div",{children:[`${e.ifaceOrWww}(${e.ip})`,(0,v.jsx)(i.Sm,{right_placeholder:(0,v.jsx)("div",{children:e.source_type===P.tC.http_get&&(0,v.jsx)(d.rA,{icon:"delete",title:t("删除"),onClick:()=>{K(e)}})}),placeholder:"a.abc.com b.abc.com ...",value:e.ddnsHost,handleInputChange:t=>{e.ddnsHost=t}})]},s))})]}),(0,v.jsxs)(o.VP,{children:[(0,v.jsxs)(l.Zp,{title:t("账号设置"),rightBottomCom:(0,v.jsx)(d.C3,{text:t("保存"),clickFun:async()=>{if(C&&(!g||!y))return void(0,c.zN)("id和token都不能为空");const e=new P.yL,t=[];for(const e of[...s,...u])e.ddnsHost&&t.push(e);e.ips=t,e.account={id:g,token:y},e.isOpen=C,e.ddnsType=P.E2.dnspod;(await a.ez.post("save",e)).code===r.m.DdnsAuthFail?(0,c.zN)("鉴权失败"):(0,c.SK)("success")}}),children:[(0,v.jsx)(i.Sm,{placeholder:"ID",value:g,handleInputChange:e=>{f(e)}}),(0,v.jsx)(i.cA,{placeholder:"TOKEN",value:y,handleInputChange:e=>{w(e)}}),(0,v.jsx)(p.S,{isFlex:!0,columns:[(0,v.jsx)(i.U6,{value:1,context:t("开启"),selected:C,onchange:()=>{k(!C)}}),(0,v.jsx)(i.U6,{value:1,context:t("关闭"),selected:!C,onchange:()=>{k(!C)}})]})]}),(0,v.jsx)(l.Zp,{title:t("说明"),children:"域名如果不存在会自动创建,空子域名是@,ip6和ipv4可以互相切换。"})]})]})]})}function $(e){const{t}=(0,j.Bd)(),[s,h]=(0,n.useState)([]),[u,x]=(0,n.useState)([]),[g,f]=(0,n.useState)(""),[y,w]=(0,n.useState)(""),[C,k]=(0,n.useState)(!1),[b,I]=(0,_.fp)(S.AG.showPrompt),[A,U]=(0,_.fp)(S.AG.confirm);(0,n.useEffect)(()=>{(async()=>{const e=await a.ez.get("ips/tx");if(e.code!==r.m.Success)return;const t=e.data,s=[],n=[];for(const e of t.ips)e.isIPv4?s.push(e):n.push(e);h(s),x(n),t.account&&(f(t.account.secretid),w(t.account.secretkey)),k(t.isOpen)})()},[]);const K=async e=>{U({open:!0,handle:async()=>{0===(await a.ez.post("http/del",e)).code&&(0,c.SK)("删除成功,稍后请刷新"),U({open:!1,handle:null})},title:t("确定删除吗")})};return(0,v.jsxs)("div",{children:[(0,v.jsx)(m.aZ,{position:"right",children:(0,v.jsx)(d.rA,{icon:"add",title:t("添加http获取ip"),onClick:()=>{I({show:!0,type:F.PromptEnum.DdnsAddHttp,overlay:!0,data:{}})}})}),(0,v.jsxs)(o.fI,{children:[(0,v.jsxs)(o.VP,{children:[(0,v.jsx)(l.Zp,{title:"ipv4",children:s.length>0&&s.map((e,s)=>(0,v.jsxs)("div",{children:[`${e.ifaceOrWww}(${e.ip})`,(0,v.jsx)(i.Sm,{right_placeholder:(0,v.jsx)("div",{children:e.source_type===P.tC.http_get&&(0,v.jsx)(d.rA,{icon:"delete",title:t("删除"),onClick:()=>{K(e)}})}),placeholder:"a.abc.com b.abc.com ...",value:e.ddnsHost,handleInputChange:t=>{e.ddnsHost=t}})]},s))}),(0,v.jsx)(l.Zp,{title:"ipv6",children:u.length>0&&u.map((e,s)=>(0,v.jsxs)("div",{children:[`${e.ifaceOrWww}(${e.ip})`,(0,v.jsx)(i.Sm,{right_placeholder:(0,v.jsx)("div",{children:e.source_type===P.tC.http_get&&(0,v.jsx)(d.rA,{icon:"delete",title:t("删除"),onClick:()=>{K(e)}})}),placeholder:"a.abc.com b.abc.com ...",value:e.ddnsHost,handleInputChange:t=>{e.ddnsHost=t}})]},s))})]}),(0,v.jsxs)(o.VP,{children:[(0,v.jsxs)(l.Zp,{title:t("账号设置"),rightBottomCom:(0,v.jsx)(d.C3,{text:t("保存"),clickFun:async()=>{if(C&&(!g||!y))return void(0,c.zN)("SecretId和SecretKey都不能为空");const e=new P.yL,t=[];for(const e of[...s,...u])e.ddnsHost&&t.push(e);e.ips=t,e.account={secretid:g,secretkey:y},e.isOpen=C,e.ddnsType=P.E2.tengxun;(await a.ez.post("save",e)).code===r.m.DdnsAuthFail?(0,c.zN)("鉴权失败"):(0,c.SK)("成功")}}),children:[(0,v.jsx)(i.Sm,{placeholder:"SecretId",value:g,handleInputChange:e=>{f(e)}}),(0,v.jsx)(i.cA,{placeholder:"SecretKey",value:y,handleInputChange:e=>{w(e)}}),(0,v.jsx)(p.S,{isFlex:!0,columns:[(0,v.jsx)(i.U6,{value:1,context:t("开启"),selected:C,onchange:()=>{k(!C)}}),(0,v.jsx)(i.U6,{value:1,context:t("关闭"),selected:!C,onchange:()=>{k(!C)}})]})]}),(0,v.jsx)(l.Zp,{title:t("说明"),children:"域名如果不存在会自动创建,空子域名是@,ip6和ipv4可以互相切换。"})]})]})]})}function H(){const{t:e}=(0,j.Bd)(),{check_user_auth:t}=(0,C.MH)(),s=[];return t(w.oV.vir_net)&&s.push({index:1,name:e("系统代理"),rto:"proxy_sys/",component:(0,v.jsx)(A,{})},{index:2,name:"Tun proxy "+e("客户端"),rto:"client/",component:(0,v.jsx)(f,{})},{index:3,name:"Tun proxy "+e("服务端"),rto:"server/",component:(0,v.jsx)(g,{})}),t(w.oV.ddns)&&s.push({index:4,name:`ddns-dnspod(${e("腾讯")})`,rto:"dnspod/",component:(0,v.jsx)(K,{})},{index:5,name:`ddns-${e("腾讯")}${e("云")}`,rto:"tengxun/",component:(0,v.jsx)($,{})}),(0,v.jsx)(o.W1,{optionList:s,father_route:U.o.net})}},24659(e,t,s){s.d(t,{K:()=>o});var n=s(22022);const o=()=>{const{t:e}=(0,n.Bd)();return[{title:e("是"),value:!0,color:"#28a745"},{title:e("否"),value:!1,color:"#666666"}]}}}]);