@acedatacloud/nexior 3.378.0 → 3.379.0

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 (561) hide show
  1. package/README.md +14 -6
  2. package/dist/assets/ApiCodeButton-BVdwvbqZ.js +1 -0
  3. package/dist/assets/{ApiCodeDialog-KG1ItHyz.js → ApiCodeDialog-DnvWQSux.js} +2 -2
  4. package/dist/assets/Artifacts-DBlRS6V-.js +1 -0
  5. package/dist/assets/{AskUserQuestionCard-SqhjqCix.js → AskUserQuestionCard-BnGXxHXH.js} +1 -1
  6. package/dist/assets/{AudioPreview-Dcxz1qqs.js → AudioPreview-BW-v9N1F.js} +1 -1
  7. package/dist/assets/{Auth-DEb7QXSd.js → Auth-2sHUtbN3.js} +1 -1
  8. package/dist/assets/{Bare-BCIb4Y6O.js → Bare-MY2982fx.js} +1 -1
  9. package/dist/assets/{BotPlaceholder-D7R9yzly.js → BotPlaceholder-BMvZ2r7e.js} +1 -1
  10. package/dist/assets/BottomFooter-BK8fSgo8.js +1 -0
  11. package/dist/assets/BrowseConnectors-BynonX3o.js +1 -0
  12. package/dist/assets/BrowserPairingDialog-BpL_PLZ2.js +1 -0
  13. package/dist/assets/{Callback-C9KP27RQ.js → Callback-CftlVK5U.js} +1 -1
  14. package/dist/assets/{CodeSnippet-BA6kQd5W.js → CodeSnippet-CWKbGbqf.js} +1 -1
  15. package/dist/assets/Console-D5tMRa4O.js +1 -0
  16. package/dist/assets/Conversation-CfGZLMUg.css +1 -0
  17. package/dist/assets/Conversation-Dvzqt09M.js +2 -0
  18. package/dist/assets/{Conversation-d0a9dgit.js → Conversation-DyPJerS9.js} +1 -1
  19. package/dist/assets/CopyToClipboard-BareDE14.css +1 -0
  20. package/dist/assets/{CopyToClipboard-BDuBtP0j.js → CopyToClipboard-DwbsH1C3.js} +1 -1
  21. package/dist/assets/Detail-60SJz85a.js +2 -0
  22. package/dist/assets/Extra-a9kjI6xu.js +1 -0
  23. package/dist/assets/FilePreview-LQggJd0m.js +1 -0
  24. package/dist/assets/{Hailuo-D_XPzMQr.js → Hailuo-wSOJTcJX.js} +1 -1
  25. package/dist/assets/History-BKuvOkpU.css +1 -0
  26. package/dist/assets/History-CotgV_jP.js +1 -0
  27. package/dist/assets/{ImagePreview-BttJauXe.js → ImagePreview-BLcOkAKu.js} +1 -1
  28. package/dist/assets/{ImageWrapper-Cw6T8HnF.js → ImageWrapper-CbWVwZRD.js} +1 -1
  29. package/dist/assets/{Index-DwfM2ZdM.css → Index-B1YAGuTX.css} +1 -1
  30. package/dist/assets/Index-B2iSDu_B.js +2 -0
  31. package/dist/assets/Index-B5eICayB.js +1 -0
  32. package/dist/assets/Index-BEXZOWNw.js +1 -0
  33. package/dist/assets/Index-BTN8UlrZ.js +1 -0
  34. package/dist/assets/Index-BefFog-a.css +1 -0
  35. package/dist/assets/Index-Bi6tCc2m.js +1 -0
  36. package/dist/assets/Index-BiXFhCWk.js +1 -0
  37. package/dist/assets/Index-BkELRl77.js +1 -0
  38. package/dist/assets/Index-BmqhuNpp.js +1 -0
  39. package/dist/assets/Index-BptenMvy.js +1 -0
  40. package/dist/assets/Index-BtYp1mWJ.js +1 -0
  41. package/dist/assets/Index-Bz1tQjLN.js +1 -0
  42. package/dist/assets/Index-C4b0Sbyi.js +1 -0
  43. package/dist/assets/Index-C63AcaAz.js +1 -0
  44. package/dist/assets/Index-C7jnoMyw.js +1 -0
  45. package/dist/assets/Index-C7nNUO1i.js +2 -0
  46. package/dist/assets/Index-CB-LRpKw.js +1 -0
  47. package/dist/assets/Index-CC8t-QBU2.js +1 -0
  48. package/dist/assets/Index-CDo_fKen.js +1 -0
  49. package/dist/assets/Index-CFwbMt9f.js +1 -0
  50. package/dist/assets/Index-CVJaenIO.js +1 -0
  51. package/dist/assets/Index-CYCyIq0c.js +1 -0
  52. package/dist/assets/Index-CYbuu0Uy.js +1 -0
  53. package/dist/assets/Index-CjA_cn01.js +1 -0
  54. package/dist/assets/Index-CljLq_wO.js +1 -0
  55. package/dist/assets/Index-CnfZftjV.js +1 -0
  56. package/dist/assets/Index-CpvCmtSL.js +1 -0
  57. package/dist/assets/Index-CwbJeN2Z.css +1 -0
  58. package/dist/assets/Index-D-Y3090O.js +1 -0
  59. package/dist/assets/Index-DHcNXOjD.js +1 -0
  60. package/dist/assets/{Index-UPfdCR9o.js → Index-DNXXlgZI.js} +1 -1
  61. package/dist/assets/Index-HacBQi5S.js +1 -0
  62. package/dist/assets/Index-InwJndDx.js +1 -0
  63. package/dist/assets/Index-KeKnmleO.js +1 -0
  64. package/dist/assets/Index-LByTkG1R.js +1 -0
  65. package/dist/assets/Index-PWI4LACm.js +2 -0
  66. package/dist/assets/Index-TKC7spBk.css +1 -0
  67. package/dist/assets/{Index-CcIjVVU9.js → Index-f7b3Hnhj.js} +2 -2
  68. package/dist/assets/Index-vUiofO0R.js +1 -0
  69. package/dist/assets/{Invitees-tAnjFHCs.js → Invitees-BG-VxiML.js} +1 -1
  70. package/dist/assets/List-BZZ7J6hV.js +1 -0
  71. package/dist/assets/List-CVQKqACY.js +1 -0
  72. package/dist/assets/List-C_5R7MsB.js +1 -0
  73. package/dist/assets/{LocalTools-DznCFGQH.js → LocalTools-B-v6mWjd.js} +3 -3
  74. package/dist/assets/{LocalTools-CqR-nE9b.js → LocalTools-d_Cpvudx.js} +1 -1
  75. package/dist/assets/{Logo-DBmaDG3J.js → Logo-vsdlOXNx.js} +1 -1
  76. package/dist/assets/Main-z44znHEo.js +1 -0
  77. package/dist/assets/Message-DvXog9lv.js +3 -0
  78. package/dist/assets/Model-CS9NafTK.js +1 -0
  79. package/dist/assets/Navigator-ByU36BlB.js +8 -0
  80. package/dist/assets/Navigator-DzzTUqkr.css +1 -0
  81. package/dist/assets/{NotFound-CHcDxOu0.js → NotFound-B7O570we.js} +1 -1
  82. package/dist/assets/{PageHeader-CHsaVW4e.js → PageHeader-XQ2ZI5oi.js} +1 -1
  83. package/dist/assets/Pay-CJMoRNwf.js +1 -0
  84. package/dist/assets/Player-BjAhlM5i.js +1 -0
  85. package/dist/assets/{Poivelle-C81I6ll_.js → Poivelle-gikHHTGX.js} +1 -1
  86. package/dist/assets/{RealtimeCall-DbG72eA-.js → RealtimeCall-BqLTAntp.js} +3 -3
  87. package/dist/assets/{ReportButton-BhTGM-ns.js → ReportButton-Bzz2CkcM.js} +1 -1
  88. package/dist/assets/ReportDialog-2njW70jE.js +1 -0
  89. package/dist/assets/{ScenarioPaymentMode-OoBCf54I.js → ScenarioPaymentMode-BaLVOrFz.js} +1 -1
  90. package/dist/assets/ScheduledTasks-UXKOx_R9.js +2 -0
  91. package/dist/assets/ServicePricingSummary-CDYYBNdf.js +1 -0
  92. package/dist/assets/{SharedMarkdown-y56eTTaT.js → SharedMarkdown-DgMJ5yS6.js} +1 -1
  93. package/dist/assets/{ShowcaseGrid-DidpygIJ.js → ShowcaseGrid-CQU8y-_p.js} +1 -1
  94. package/dist/assets/ShowcaseResultTabs-BrMvxK_-.js +1 -0
  95. package/dist/assets/{SolanaWalletPickerDialog-Cotj93ij.js → SolanaWalletPickerDialog-ZEJq2-js.js} +1 -1
  96. package/dist/assets/Status-CbijUb1r.js +1 -0
  97. package/dist/assets/Subscribe-CHJXeMK_.js +1 -0
  98. package/dist/assets/{TabSwitcher-Mo-HftGd.js → TabSwitcher-B68j0iog.js} +1 -1
  99. package/dist/assets/Tts-kUJ8t6Tj.js +1 -0
  100. package/dist/assets/{VideoPlayer-D3FCgw3g.js → VideoPlayer-D5QyowLz.js} +1 -1
  101. package/dist/assets/{VideoPreview-CvtGNERs.js → VideoPreview-B3Ge1y5k.js} +1 -1
  102. package/dist/assets/{VueMarkdown-BGpu7jb9.js → VueMarkdown-CnCNB7jR.js} +2 -2
  103. package/dist/assets/WriteSkillDialog-D6u0DtZm.js +1 -0
  104. package/dist/assets/WriteSkillDialog-Dq7Pnanc.css +1 -0
  105. package/dist/assets/_Uint8Array-XQBxN0L-.js +1 -0
  106. package/dist/assets/_baseClone-U7fnZamc.js +1 -0
  107. package/dist/assets/_baseIteratee-DLPcqXeW.js +1 -0
  108. package/dist/assets/_initCloneObject-CSzorZ33.js +1 -0
  109. package/dist/assets/airwallexCheckout-Cxx1AabL.js +1 -0
  110. package/dist/assets/alert-BprQRUmf.js +1 -0
  111. package/dist/assets/arrow-down-CrxnnUzu.js +1 -0
  112. package/dist/assets/{arrow-down-wide-narrow-WPhbTWtA.js → arrow-down-wide-narrow-BlIlUIjt.js} +1 -1
  113. package/dist/assets/arrow-left-Do_3QC8F.js +1 -0
  114. package/dist/assets/arrow-right-BQL1_QMW.js +1 -0
  115. package/dist/assets/arrow-up-BQh_uho_.js +1 -0
  116. package/dist/assets/authorizeFlow-BJdepJ3R.js +1 -0
  117. package/dist/assets/avatar-CGtlW6zU.js +1 -0
  118. package/dist/assets/avatar-DEN_WCPo.js +1 -0
  119. package/dist/assets/{back-navigation-BsIo9H7d.js → back-navigation-BIrHIWJy.js} +1 -1
  120. package/dist/assets/{basic-BunphQR9.js → basic-DFEogfXq.js} +1 -1
  121. package/dist/assets/{book-open-uFinjNuP.js → book-open-_guxQcoA.js} +1 -1
  122. package/dist/assets/{box-B2VZKkyK.js → box-CYBPc1Rz.js} +1 -1
  123. package/dist/assets/{boxes-DVgUjL6i.js → boxes-Dczys5iR.js} +1 -1
  124. package/dist/assets/{brain-othbplrp.js → brain-C3F88E04.js} +1 -1
  125. package/dist/assets/card-IQwqnRJR.js +1 -0
  126. package/dist/assets/castArray-YUixYP4Q.js +1 -0
  127. package/dist/assets/{chart-no-axes-combined-_WHnWpq7.js → chart-no-axes-combined-sr2W-cy-.js} +1 -1
  128. package/dist/assets/chat-KmdJ9Xcn.js +1 -0
  129. package/dist/assets/check-CvzlOh9y.js +1 -0
  130. package/dist/assets/checkbox-DXMDpaxv.js +1 -0
  131. package/dist/assets/chevron-down-B4V8oKg4.js +1 -0
  132. package/dist/assets/chevron-right-BC5ylckn.js +1 -0
  133. package/dist/assets/{circle-alert-Ho2SsJ2g.js → circle-alert-CMUvmX0p.js} +1 -1
  134. package/dist/assets/circle-check-DtG7_-0o.js +1 -0
  135. package/dist/assets/{circle-question-mark-BCfaZnQY.js → circle-question-mark-BXwYW3M_.js} +1 -1
  136. package/dist/assets/click-outside-CzJDhMNh.js +1 -0
  137. package/dist/assets/{clipboard-list-BuEg8NSj.js → clipboard-list-D3Jcr1wW.js} +1 -1
  138. package/dist/assets/clock-IAci-Zzy.js +1 -0
  139. package/dist/assets/code-C0f79oRQ.js +1 -0
  140. package/dist/assets/{codingBridge-DJxa2Ctr.js → codingBridge-BnXqGUk-.js} +1 -1
  141. package/dist/assets/{codingBridge-DNaWsf8h.js → codingBridge-Byj8IN6B.js} +1 -1
  142. package/dist/assets/{codingBridge-C4w0uRt_.js → codingBridge-C3-XZ2S-.js} +1 -1
  143. package/dist/assets/{codingBridge-CWYAzcU4.js → codingBridge-C4S3TQ2O.js} +1 -1
  144. package/dist/assets/codingBridge-CMi6fCj5.js +2 -0
  145. package/dist/assets/{codingBridge-BDEdzBFe.js → codingBridge-CX2T1MoG.js} +1 -1
  146. package/dist/assets/{codingBridge-2jZjSYGT.js → codingBridge-DE8OuFkd.js} +1 -1
  147. package/dist/assets/{codingBridge-B0S_pFNE.js → codingBridge-DNYbt9Wj.js} +1 -1
  148. package/dist/assets/{codingBridge-CmbX76zB.js → codingBridge-DS7LKip0.js} +1 -1
  149. package/dist/assets/{codingBridge-co3msHz2.js → codingBridge-DWX5O1-q.js} +1 -1
  150. package/dist/assets/{codingBridge-C-7r6SDr.js → codingBridge-Dcrg2PjU.js} +1 -1
  151. package/dist/assets/{codingBridge-CmImNHXz.js → codingBridge-DjgK0jYZ.js} +1 -1
  152. package/dist/assets/codingBridge-ybbC8NBB.js +1 -0
  153. package/dist/assets/codingBridgeNotify-Bwf5NQbl.js +2 -0
  154. package/dist/assets/{coins-p5-Ic2hy.js → coins-BQ6zVtEX.js} +1 -1
  155. package/dist/assets/collapse-B0Wi9F4l.js +1 -0
  156. package/dist/assets/common-B0IDRASJ.js +1 -0
  157. package/dist/assets/common-BJ-Az-vA.js +1 -0
  158. package/dist/assets/common-BnGMhmEr.js +1 -0
  159. package/dist/assets/common-CUZl0lkV.js +1 -0
  160. package/dist/assets/common-D8s1fMEF.js +1 -0
  161. package/dist/assets/common-DIFVLaNh.js +1 -0
  162. package/dist/assets/common-DKecTXML.js +1 -0
  163. package/dist/assets/common-DeqClFGz.js +1 -0
  164. package/dist/assets/common-DlE175vL.js +1 -0
  165. package/dist/assets/common-MVvgvCjP.js +1 -0
  166. package/dist/assets/common-RzLnaRJN.js +1 -0
  167. package/dist/assets/common-kO_UBrO5.js +1 -0
  168. package/dist/assets/console-5v8LzR_v.js +1 -0
  169. package/dist/assets/console-BBZn8pM7.js +1 -0
  170. package/dist/assets/console-BuHKYX9X.js +1 -0
  171. package/dist/assets/console-COPzvKke.js +1 -0
  172. package/dist/assets/console-ChRHd4hW.js +1 -0
  173. package/dist/assets/console-CiX-QKAj.js +1 -0
  174. package/dist/assets/console-D-SaYNid.js +1 -0
  175. package/dist/assets/console-D5dQI25O.js +1 -0
  176. package/dist/assets/console-DUCTsjPA.js +1 -0
  177. package/dist/assets/console-DePWpRMI.js +1 -0
  178. package/dist/assets/console-PhNDi1ry.js +1 -0
  179. package/dist/assets/console-YJglHgj3.js +1 -0
  180. package/dist/assets/constants-XMLzMJVJ.js +3 -0
  181. package/dist/assets/{copy-9ru_XEc3.js → copy-VxF2BScc.js} +1 -1
  182. package/dist/assets/createTaskActions-DoijteH6.js +1 -0
  183. package/dist/assets/date-picker-CCvbZlsC.js +1 -0
  184. package/dist/assets/debounce-5xtusvLq.js +1 -0
  185. package/dist/assets/{digitalhuman-KxqLBKiw.js → digitalhuman-COquG9OT.js} +1 -1
  186. package/dist/assets/{distribution-BJg3yUi1.js → distribution-ATagO31u.js} +1 -1
  187. package/dist/assets/{distribution-zXx9jCd8.js → distribution-B6rpEDSh.js} +1 -1
  188. package/dist/assets/{distribution-CLwMNLyT.js → distribution-BD_UlcWf.js} +1 -1
  189. package/dist/assets/{distribution-cVe2gdNN.js → distribution-BUdflwwz.js} +1 -1
  190. package/dist/assets/{distribution-7Fh-IyXM.js → distribution-BuGlQh86.js} +1 -1
  191. package/dist/assets/{distribution-DjBA4MaX.js → distribution-CYbeU4Kx.js} +1 -1
  192. package/dist/assets/{distribution-Ci3qUjd1.js → distribution-D1tzKj8Z.js} +1 -1
  193. package/dist/assets/{distribution-DvTAlUfh.js → distribution-D60ESr4w.js} +1 -1
  194. package/dist/assets/{distribution-BsauWM2Q.js → distribution-D9OF7j8R.js} +1 -1
  195. package/dist/assets/{distribution-CltEcoqH.js → distribution-DYe_3hS7.js} +1 -1
  196. package/dist/assets/{distribution-mxjAGVCN.js → distribution-Dx7f4qch.js} +1 -1
  197. package/dist/assets/{distribution-DG81HykN.js → distribution-ryO3eAPQ.js} +1 -1
  198. package/dist/assets/divider-Du_3kymg.js +1 -0
  199. package/dist/assets/{dollar-sign-BLadFLb3.js → dollar-sign-DUccWNag.js} +1 -1
  200. package/dist/assets/{download-qQkX5Wsm.js → download-e2JcTyyo.js} +1 -1
  201. package/dist/assets/drawer-BVEcNx1I.js +1 -0
  202. package/dist/assets/dropdown-6Dhj8aGv.js +1 -0
  203. package/dist/assets/dropdown-DVWMF6_3.js +1 -0
  204. package/dist/assets/{ellipsis-DX0FZl47.js → ellipsis-BtC3IBcT.js} +1 -1
  205. package/dist/assets/esm-BF1E2FMw.js +2 -0
  206. package/dist/assets/{esm-BaZYFxup.js → esm-BWUcVVKJ.js} +2 -2
  207. package/dist/assets/esm-CoJds8QY.js +1 -0
  208. package/dist/assets/{external-link-xu4LQkgJ.js → external-link-DHAxzeng.js} +1 -1
  209. package/dist/assets/{eye-BWdIdKaw.js → eye-D_qht_hF.js} +1 -1
  210. package/dist/assets/{file-Bmg75wJ2.js → file-DpjGg0Y_.js} +1 -1
  211. package/dist/assets/{file-output-D6hbDRGq.js → file-output-Bi4vq7Ue.js} +1 -1
  212. package/dist/assets/{file-text-BPsKm8Ye.js → file-text-Cy_bvnO7.js} +1 -1
  213. package/dist/assets/{fish-DMO_QK8X.js → fish-DnPwoPWE.js} +1 -1
  214. package/dist/assets/flux-WBOJvTOp.js +1 -0
  215. package/dist/assets/{folder-BDQp5otd.js → folder-mtavbhFP.js} +1 -1
  216. package/dist/assets/form-BdKMEyCR.js +12 -0
  217. package/dist/assets/gauge-Dr0RTbvf.js +1 -0
  218. package/dist/assets/generationInput-ClY8zxHb.js +1 -0
  219. package/dist/assets/{globe-BTP209T8.js → globe-t_hc2uvW.js} +1 -1
  220. package/dist/assets/grokvideo-wIrAkg60.js +1 -0
  221. package/dist/assets/hailuo-CLFyD3vr.js +1 -0
  222. package/dist/assets/{hash-B0rKChrT.js → hash-CGhR3E3W.js} +1 -1
  223. package/dist/assets/{headphones-C9TkhoKW.js → headphones-BGX9rE2z.js} +1 -1
  224. package/dist/assets/{history-l5UP29BL.js → history-BNoxEv4L.js} +1 -1
  225. package/dist/assets/{house-D3UxwZNm.js → house-Cq29AjkF.js} +1 -1
  226. package/dist/assets/icon-CDmWyIgD.js +1 -0
  227. package/dist/assets/{image-wAPgKLi5.js → image-D-Qn2R2s.js} +1 -1
  228. package/dist/assets/{imageRequests-E3qWyxYa.js → imageRequests-Dpxiq1GM.js} +1 -1
  229. package/dist/assets/index-B_mDD17T.js +572 -0
  230. package/dist/assets/index-DKAHKezv.css +1 -0
  231. package/dist/assets/{index.es-Dc2KfvlA.js → index.es-DbG45pQU.js} +1 -1
  232. package/dist/assets/{info-xEqm0IrP.js → info-AarYb6UU.js} +1 -1
  233. package/dist/assets/input-number-BweR5GSS.js +1 -0
  234. package/dist/assets/isArrayLikeObject-VRCqVaiT.js +1 -0
  235. package/dist/assets/isEqual-DeO3PEnJ.js +1 -0
  236. package/dist/assets/isPlainObject-CIQNj6g3.js +1 -0
  237. package/dist/assets/{kling-B_7lSp0w.js → kling-Bu2NuHka.js} +1 -1
  238. package/dist/assets/{languages-DEt6SUgf.js → languages-q4pS3WIA.js} +1 -1
  239. package/dist/assets/{laptop-LAuQGLg1.js → laptop-D3ytrLBJ.js} +1 -1
  240. package/dist/assets/{lightbulb-yyxW5bC7.js → lightbulb-C5S29mMv.js} +1 -1
  241. package/dist/assets/{link-DN2xtc9Z.js → link-CwjIRcQu.js} +1 -1
  242. package/dist/assets/loader-circle-ly_u_IQt.js +1 -0
  243. package/dist/assets/{luma-B2l-nG6s.js → luma-DSTa_ctL.js} +1 -1
  244. package/dist/assets/{maestro-BN7v9lCj.js → maestro-Cgi6iLeE.js} +1 -1
  245. package/dist/assets/{maestroLanguages-DUkYqeZT.js → maestroLanguages-DwLnUjSV.js} +1 -1
  246. package/dist/assets/{mail-CmmtT1Jw.js → mail-VqGM1wzH.js} +1 -1
  247. package/dist/assets/{message-circle-DshO8aqP.js → message-circle-BIELZnpU.js} +1 -1
  248. package/dist/assets/{mic-D-peJBQ2.js → mic-DhjvDuzZ.js} +1 -1
  249. package/dist/assets/midjourney-YlQQ7xGW.js +1 -0
  250. package/dist/assets/{minimax-B2K8qhNE.js → minimax-CYpaxOzz.js} +1 -1
  251. package/dist/assets/mobileLocalExec-BGEH-cVh.js +2 -0
  252. package/dist/assets/{monitor-BbelfMCH.js → monitor-w2z0MlEY.js} +1 -1
  253. package/dist/assets/{mouse-pointer-2-CBG2pJVP.js → mouse-pointer-2-Dktit1x1.js} +1 -1
  254. package/dist/assets/music-2-TpIjRQXw.js +1 -0
  255. package/dist/assets/nanobanana-B5-IKS73.js +1 -0
  256. package/dist/assets/{omni-CHHNqW0-.js → omni-ROlnzeCN.js} +1 -1
  257. package/dist/assets/{openaiimage-DX-HdFO4.js → openaiimage-DoIMIVMy.js} +1 -1
  258. package/dist/assets/{pagination-BlCoWbv1.js → pagination-7tCwz5Wb.js} +1 -1
  259. package/dist/assets/pagination-CVG3qxWX.js +1 -0
  260. package/dist/assets/pagination-CVnl1h3Q.css +1 -0
  261. package/dist/assets/pagination-DkzSLsHS.js +1 -0
  262. package/dist/assets/{palette-CZ3gwnv9.js → palette-B-I3eqTr.js} +1 -1
  263. package/dist/assets/{paperclip-BjGce865.js → paperclip-CiVURlUk.js} +1 -1
  264. package/dist/assets/{pause-BseLLZb_.js → pause-hlQVsPkR.js} +1 -1
  265. package/dist/assets/{pencil-BOXZulA4.js → pencil-B83LjyZM.js} +1 -1
  266. package/dist/assets/{pika-BxK76Uqj.js → pika-CsJCe7Ud.js} +1 -1
  267. package/dist/assets/{pixverse-DwR99W6p.js → pixverse-CdoZ8UDF.js} +1 -1
  268. package/dist/assets/play-BHPb6zRT.js +1 -0
  269. package/dist/assets/{plug-xaHCA3qa.js → plug-BJ2TKjcm.js} +1 -1
  270. package/dist/assets/plus-BgGyj7OG.js +1 -0
  271. package/dist/assets/poivelle-B_KpomXv.js +1 -0
  272. package/dist/assets/popover-BNuza1no.js +1 -0
  273. package/dist/assets/producer-Cftxullw.js +1 -0
  274. package/dist/assets/{progress-Y9u6n3fa.js → progress-BuyYfFZn.js} +2 -2
  275. package/dist/assets/qrart-ggf6-aqL.js +1 -0
  276. package/dist/assets/qwenimage-CbH5cDWi.js +1 -0
  277. package/dist/assets/radio-BNhFzeBO.js +1 -0
  278. package/dist/assets/raf-BbgJq-wu.js +1 -0
  279. package/dist/assets/realtime-C3GP19Ox.js +1 -0
  280. package/dist/assets/{refresh-cw-BCNrgNZO.js → refresh-cw-Bvqf2cXR.js} +1 -1
  281. package/dist/assets/rotate-ccw-B1viIggk.js +1 -0
  282. package/dist/assets/rotate-cw-BFAaVvoq.js +1 -0
  283. package/dist/assets/row-CgEMxZUK.js +1 -0
  284. package/dist/assets/scroll-kDH1KTep.js +1 -0
  285. package/dist/assets/scroll-text-DNioxlF3.js +1 -0
  286. package/dist/assets/scrollbar-3jGyy846.js +1 -0
  287. package/dist/assets/search-D9sS2zks.js +1 -0
  288. package/dist/assets/{seedance-B591L7EA.js → seedance-vjO0LxfY.js} +1 -1
  289. package/dist/assets/seedream-DDubAk0V.js +1 -0
  290. package/dist/assets/segmented-D0zHdf9D.js +1 -0
  291. package/dist/assets/select-BqzezbgS.js +1 -0
  292. package/dist/assets/serp-B9uitIQK.js +1 -0
  293. package/dist/assets/{shield-B2TJw9TW.js → shield-BidAVgcr.js} +1 -1
  294. package/dist/assets/showcase-C-f0cCbc.js +1 -0
  295. package/dist/assets/showcaseRecreateMixin-BWDEj-jO.js +1 -0
  296. package/dist/assets/{shuffle-DPidEAkC.js → shuffle-C-ey6c0w.js} +1 -1
  297. package/dist/assets/{siteHome-CgeNTe5M.js → siteHome-Cm4ERvnr.js} +1 -1
  298. package/dist/assets/skeleton-Dj_a_iIP.js +1 -0
  299. package/dist/assets/{skill-5gP4o8NV.js → skill-0g_luo5R.js} +1 -1
  300. package/dist/assets/{skill-CJNW57N1.js → skill-B07Ijn5i.js} +1 -1
  301. package/dist/assets/{skill-D8LRqjJi.js → skill-BJgaq7OZ.js} +1 -1
  302. package/dist/assets/{skill-wRgUszIb.js → skill-Byo5cYNZ.js} +1 -1
  303. package/dist/assets/{skill-DmG9UgOb.js → skill-CQGW8Q1T.js} +1 -1
  304. package/dist/assets/{skill-DYANzYm8.js → skill-CpCuyQYr.js} +1 -1
  305. package/dist/assets/{skill-BOoRqnxn.js → skill-DH20CjXt.js} +1 -1
  306. package/dist/assets/{skill-BMiuMGjA.js → skill-DIEOWjK5.js} +1 -1
  307. package/dist/assets/{skill-DsMsj3gk.js → skill-Dx9sM0VW.js} +1 -1
  308. package/dist/assets/{skill-oNOc8c8Z.js → skill-iYzmeC7M.js} +1 -1
  309. package/dist/assets/{skill-DUHHh8_i.js → skill-l_jxXvUb.js} +1 -1
  310. package/dist/assets/{skill-AkEOeI8W.js → skill-qbrFbNq8.js} +1 -1
  311. package/dist/assets/slider-fnY2n6px.js +1 -0
  312. package/dist/assets/{solana-wallets-liB4s7eE.js → solana-wallets-BERlGY2O.js} +2 -2
  313. package/dist/assets/{sora-Aj4fOoVE.js → sora-BUctVwZa.js} +1 -1
  314. package/dist/assets/{sparkles-BAojlcx5.js → sparkles-BvDv6ds2.js} +1 -1
  315. package/dist/assets/square-RZDqdJlO.js +1 -0
  316. package/dist/assets/suno-Be9UhEcX.js +1 -0
  317. package/dist/assets/switch-C6gnvMgV.js +1 -0
  318. package/dist/assets/table-dVwxM5TO.js +1 -0
  319. package/dist/assets/tabs-CwdrUb8P.js +1 -0
  320. package/dist/assets/{tag-DDxBi_HB.js → tag-BOA3YC3-.js} +1 -1
  321. package/dist/assets/{taskPolling-yf-YwqyR.js → taskPolling-BRIyWeSm.js} +1 -1
  322. package/dist/assets/terminal-CihWj-P8.js +1 -0
  323. package/dist/assets/time-picker-B7Amze8v.js +1 -0
  324. package/dist/assets/tooltip-BBrV3AZK.js +1 -0
  325. package/dist/assets/{trash-2-BFjVq32N.js → trash-2-BPjzpfWl.js} +1 -1
  326. package/dist/assets/{triangle-alert-C5ZVa5Ls.js → triangle-alert-hVh_-DcV.js} +1 -1
  327. package/dist/assets/{upload-K-LGn2LV.js → upload-Cra0_3dJ.js} +1 -1
  328. package/dist/assets/upload-XUGlysu6.js +1 -0
  329. package/dist/assets/use-aria-DApzlmKf.js +1 -0
  330. package/dist/assets/use-delayed-toggle-CUww_m9H.js +1 -0
  331. package/dist/assets/{use-deprecated-KSZGI37P.js → use-deprecated-BAB4ggjd.js} +2 -2
  332. package/dist/assets/user-BEv2qjci.js +1 -0
  333. package/dist/assets/{vendor-highlight-Dd94xpKT.js → vendor-highlight-PMOaWWrP.js} +4 -4
  334. package/dist/assets/vendor-highlight-XQIgUEMi.css +1 -0
  335. package/dist/assets/{veo-CIJH2Yl1.js → veo-DJ8zjGWr.js} +1 -1
  336. package/dist/assets/{video-wTKBJcCy.js → video-DM7P7XL-.js} +1 -1
  337. package/dist/assets/vnode-B_FEx-YD.js +1 -0
  338. package/dist/assets/{volume-2-BTgXKz-b.js → volume-2-DoGYvPKH.js} +1 -1
  339. package/dist/assets/vuex.esm-bundler-BxNPLO2l.js +1 -0
  340. package/dist/assets/{wallet-Hkzclfjt.js → wallet-DCbr1SCc.js} +1 -1
  341. package/dist/assets/{wan-ClVe_THi.js → wan-CJgJf4gd.js} +1 -1
  342. package/dist/assets/{wand-sparkles-CEv-Lq04.js → wand-sparkles-B3s3EW_F.js} +1 -1
  343. package/dist/assets/{web-jFre7aeM.js → web-B0taMipw.js} +1 -1
  344. package/dist/assets/web-CMCs3BWX.js +1 -0
  345. package/dist/assets/{web-Coh0imfW.js → web-DOauQbLK.js} +1 -1
  346. package/dist/assets/{web-CS6cL6fi.js → web-OTda-796.js} +1 -1
  347. package/dist/assets/{web-9L_MOBuN.js → web-nb5LyGMf.js} +1 -1
  348. package/dist/assets/webextrator-CgBbtaN5.js +1 -0
  349. package/dist/assets/{zap-XeVz862N.js → zap-CLXFE1AD.js} +1 -1
  350. package/dist/index.html +10 -10
  351. package/package.json +2 -2
  352. package/dist/assets/ApiCodeButton-CkntOqa9.js +0 -1
  353. package/dist/assets/Artifacts-DLNEnSNX.js +0 -1
  354. package/dist/assets/BottomFooter-CO0ZE175.js +0 -1
  355. package/dist/assets/BrowseConnectors-BShsPFFx.js +0 -1
  356. package/dist/assets/BrowserPairingDialog-i49YHsUX.js +0 -1
  357. package/dist/assets/Console-CiT1-rhN.js +0 -1
  358. package/dist/assets/Conversation-BegVTuHA.css +0 -1
  359. package/dist/assets/Conversation-CzCvp_L7.js +0 -2
  360. package/dist/assets/CopyToClipboard-B9SD8m8Y.css +0 -1
  361. package/dist/assets/Detail-ON0VcjyS.js +0 -2
  362. package/dist/assets/Extra-CSDY1tah.js +0 -1
  363. package/dist/assets/FilePreview-MmPN4Cv7.js +0 -1
  364. package/dist/assets/History-BwksNUme.css +0 -1
  365. package/dist/assets/History-DU4oLHjt.js +0 -1
  366. package/dist/assets/Index-73oaGK-A.js +0 -1
  367. package/dist/assets/Index-B5q2xiCh.js +0 -2
  368. package/dist/assets/Index-BaB_6SnJ.js +0 -1
  369. package/dist/assets/Index-Bbg8gcRr.js +0 -1
  370. package/dist/assets/Index-Bk5pgWL3.js +0 -1
  371. package/dist/assets/Index-BvL62BkM.js +0 -1
  372. package/dist/assets/Index-C1CerJWh.js +0 -1
  373. package/dist/assets/Index-C2xLdzMv.js +0 -1
  374. package/dist/assets/Index-C7IMz_R4.js +0 -1
  375. package/dist/assets/Index-CHNkHLSz.css +0 -1
  376. package/dist/assets/Index-CeSUfXvP.js +0 -1
  377. package/dist/assets/Index-CniWREMM.js +0 -1
  378. package/dist/assets/Index-CrDlqRLW.js +0 -1
  379. package/dist/assets/Index-Ct9ja3wZ.js +0 -1
  380. package/dist/assets/Index-D3Qqzj1A.js +0 -1
  381. package/dist/assets/Index-D9cv9UKM.js +0 -1
  382. package/dist/assets/Index-DAOd13Sv.js +0 -1
  383. package/dist/assets/Index-DENvYK6d.js +0 -2
  384. package/dist/assets/Index-DLBEktwN.css +0 -1
  385. package/dist/assets/Index-DOTWqbKP.js +0 -1
  386. package/dist/assets/Index-DRKMabL0.js +0 -1
  387. package/dist/assets/Index-Df93aLf9.js +0 -1
  388. package/dist/assets/Index-Di9FU0BB.js +0 -1
  389. package/dist/assets/Index-DpGTnfiS.js +0 -1
  390. package/dist/assets/Index-DpJoB60_.js +0 -1
  391. package/dist/assets/Index-DqllUyi4.js +0 -2
  392. package/dist/assets/Index-G8ebPC9A.js +0 -1
  393. package/dist/assets/Index-TO2KXhk7.css +0 -1
  394. package/dist/assets/Index-TpXgcMSM.js +0 -1
  395. package/dist/assets/Index-YoBcV-xm.js +0 -1
  396. package/dist/assets/Index-ZqQ6To5R.js +0 -1
  397. package/dist/assets/Index-a7Vn4g_M.js +0 -1
  398. package/dist/assets/Index-aKC4NGq-.js +0 -1
  399. package/dist/assets/Index-mdM9vHfS.js +0 -1
  400. package/dist/assets/Index-piNRLtwz.js +0 -1
  401. package/dist/assets/Index-sO3P7vG-.js +0 -1
  402. package/dist/assets/Index-uYybtLIp2.js +0 -1
  403. package/dist/assets/List-4OgXX770.js +0 -1
  404. package/dist/assets/List-C7UaV8dO.js +0 -1
  405. package/dist/assets/List-UCgCR4FX.js +0 -1
  406. package/dist/assets/Main-LhtWm16A.js +0 -1
  407. package/dist/assets/Message-CS0ScapF.js +0 -3
  408. package/dist/assets/Model-D6dSDQbl.js +0 -1
  409. package/dist/assets/Navigator-B_rU5sl5.js +0 -8
  410. package/dist/assets/Navigator-CiVhSyY2.css +0 -1
  411. package/dist/assets/Pay-CaIwSjr3.js +0 -1
  412. package/dist/assets/Player-_OqjXRWY.js +0 -1
  413. package/dist/assets/ReportDialog-DxmpAbWL.js +0 -1
  414. package/dist/assets/ScheduledTasks-Ddfuxcc3.js +0 -2
  415. package/dist/assets/ServicePricingSummary-Ce4YxQTT.js +0 -1
  416. package/dist/assets/ShowcaseResultTabs-Dtod3SQA.js +0 -1
  417. package/dist/assets/Status-CsV2Ja7D.js +0 -1
  418. package/dist/assets/Subscribe-zhwTbYXv.js +0 -1
  419. package/dist/assets/Tts-Dl6kLn5_.js +0 -1
  420. package/dist/assets/WriteSkillDialog-DkwaroE4.css +0 -1
  421. package/dist/assets/WriteSkillDialog-cW1m7wvA.js +0 -1
  422. package/dist/assets/_Uint8Array-sSpijImS.js +0 -1
  423. package/dist/assets/_baseClone-CZ26MPyA.js +0 -1
  424. package/dist/assets/_baseIteratee-CVyE78-3.js +0 -1
  425. package/dist/assets/_initCloneObject-BOg92v1Q.js +0 -1
  426. package/dist/assets/airwallexCheckout-DtOT900I.js +0 -1
  427. package/dist/assets/alert-BCXxQqq9.js +0 -1
  428. package/dist/assets/arrow-down-BtOf7_CV.js +0 -1
  429. package/dist/assets/arrow-left-DXqpjhdX.js +0 -1
  430. package/dist/assets/arrow-right-DryFwfaj.js +0 -1
  431. package/dist/assets/arrow-up-BUa4ruGk.js +0 -1
  432. package/dist/assets/authorizeFlow-2qirV4uJ.js +0 -1
  433. package/dist/assets/avatar-B0SlbOi0.js +0 -1
  434. package/dist/assets/avatar-DFnhX0Wd.js +0 -1
  435. package/dist/assets/byok-3n6T0alx.js +0 -1
  436. package/dist/assets/byok-B2r5VmII.js +0 -1
  437. package/dist/assets/byok-BC48N7S1.js +0 -1
  438. package/dist/assets/byok-BRMIr-M_.js +0 -1
  439. package/dist/assets/byok-CRFX2Iok.js +0 -1
  440. package/dist/assets/byok-CUiGQSQq.js +0 -1
  441. package/dist/assets/byok-Cdgjel5C.js +0 -1
  442. package/dist/assets/byok-Ct580UbG.js +0 -1
  443. package/dist/assets/byok-DUt6CQuB.js +0 -1
  444. package/dist/assets/byok-D_PsUQ7p.js +0 -1
  445. package/dist/assets/byok-DrBDAGst.js +0 -1
  446. package/dist/assets/byok-FiYHQNUV.js +0 -1
  447. package/dist/assets/card-Cdu7t0e1.js +0 -1
  448. package/dist/assets/castArray-D_TUiT6Q.js +0 -1
  449. package/dist/assets/chat-BQrmva9t.js +0 -1
  450. package/dist/assets/check-DfC685Lq.js +0 -1
  451. package/dist/assets/checkbox-BFEpNRQP.js +0 -1
  452. package/dist/assets/chevron-down-lGMMdC8S.js +0 -1
  453. package/dist/assets/chevron-right-CL8PHBhG.js +0 -1
  454. package/dist/assets/circle-check-XmSkFZmI.js +0 -1
  455. package/dist/assets/click-outside-BX-xQEUw.js +0 -1
  456. package/dist/assets/clock-BKRstkvG.js +0 -1
  457. package/dist/assets/code-CgXiDhx8.js +0 -1
  458. package/dist/assets/codingBridge-C0TmJx0P.js +0 -1
  459. package/dist/assets/codingBridge-DuutiVu4.js +0 -2
  460. package/dist/assets/codingBridgeNotify-EGsSGIi4.js +0 -2
  461. package/dist/assets/collapse-PFSZ3Ppb.js +0 -1
  462. package/dist/assets/common-BRlXUNLP.js +0 -1
  463. package/dist/assets/common-B_M3LvGi.js +0 -1
  464. package/dist/assets/common-C2o8NoAy.js +0 -1
  465. package/dist/assets/common-C7rflxoL.js +0 -1
  466. package/dist/assets/common-CPTNrFOS.js +0 -1
  467. package/dist/assets/common-CqOkQeeX.js +0 -1
  468. package/dist/assets/common-CtJf9Xwg.js +0 -1
  469. package/dist/assets/common-DgIwz66M.js +0 -1
  470. package/dist/assets/common-DxAXLCCZ.js +0 -1
  471. package/dist/assets/common-IucWu3x6.js +0 -1
  472. package/dist/assets/common-LWAeT3Rn.js +0 -1
  473. package/dist/assets/common-PEbspY5C.js +0 -1
  474. package/dist/assets/console-BTcbcYrg.js +0 -1
  475. package/dist/assets/console-Bmj64vgr.js +0 -1
  476. package/dist/assets/console-BoJwfPRy.js +0 -1
  477. package/dist/assets/console-CCcbT9C5.js +0 -1
  478. package/dist/assets/console-CURLllmA.js +0 -1
  479. package/dist/assets/console-Ce9JZpHL.js +0 -1
  480. package/dist/assets/console-CjJjT6T_.js +0 -1
  481. package/dist/assets/console-DOrcPqaf.js +0 -1
  482. package/dist/assets/console-DShIPOu2.js +0 -1
  483. package/dist/assets/console-Dkfs_so8.js +0 -1
  484. package/dist/assets/console-Doi1l5z7.js +0 -1
  485. package/dist/assets/console-FxBtsGxI.js +0 -1
  486. package/dist/assets/constants-vZG8JV9A.js +0 -1
  487. package/dist/assets/createTaskActions-DYOG_x52.js +0 -1
  488. package/dist/assets/date-picker-CXPYb8nI.js +0 -1
  489. package/dist/assets/debounce-BiLOo0cD.js +0 -1
  490. package/dist/assets/divider-D6XMzunz.js +0 -1
  491. package/dist/assets/drawer-D24rEyIX.js +0 -1
  492. package/dist/assets/dropdown-BkqVjWBA.js +0 -1
  493. package/dist/assets/dropdown-JaDWaqSq.js +0 -1
  494. package/dist/assets/empty-BcaMYkgS.js +0 -1
  495. package/dist/assets/esm-BATRaT10.js +0 -2
  496. package/dist/assets/esm-D4qQESQI.js +0 -1
  497. package/dist/assets/flux-B4JVpdQ2.js +0 -1
  498. package/dist/assets/form-CSmsxPoR.js +0 -12
  499. package/dist/assets/gauge-C5lWJ7jI.js +0 -1
  500. package/dist/assets/generationInput-DYHj9HsI.js +0 -1
  501. package/dist/assets/grokvideo-BYXES21l.js +0 -1
  502. package/dist/assets/hailuo-BLizscrt.js +0 -1
  503. package/dist/assets/i18n-Cu1HIOkL.js +0 -3
  504. package/dist/assets/index-BMhavYtV.css +0 -1
  505. package/dist/assets/index-BkGHnQZ_.js +0 -572
  506. package/dist/assets/input-number-P8gwi2Qu.js +0 -1
  507. package/dist/assets/isArrayLikeObject-Bn7vGyDv.js +0 -1
  508. package/dist/assets/isEqual-BFcHeZKz.js +0 -1
  509. package/dist/assets/isPlainObject-DOYdEPIU.js +0 -1
  510. package/dist/assets/key-round-CE9-N-VB.js +0 -1
  511. package/dist/assets/loader-circle-Bl8yfjoJ.js +0 -1
  512. package/dist/assets/lock-DkkFr7Gb.js +0 -1
  513. package/dist/assets/midjourney-8Usc6MRz.js +0 -1
  514. package/dist/assets/mobileLocalExec-shE6R6PE.js +0 -2
  515. package/dist/assets/models-C0YjUFNo.js +0 -1
  516. package/dist/assets/music-2-DPcj2WAn.js +0 -1
  517. package/dist/assets/nanobanana-r2ieN-ZT.js +0 -1
  518. package/dist/assets/pagination-4fpGtxqE.css +0 -1
  519. package/dist/assets/pagination-Bbx2BUmR.js +0 -1
  520. package/dist/assets/pagination-D42WEXtP.js +0 -1
  521. package/dist/assets/play-DcEqSjTH.js +0 -1
  522. package/dist/assets/plus-_yX0KO9f.js +0 -1
  523. package/dist/assets/poivelle-C4rdyxTL.js +0 -1
  524. package/dist/assets/popover-BbgX-Omy.js +0 -1
  525. package/dist/assets/producer-D4uXgI6I.js +0 -1
  526. package/dist/assets/qrart-DXFwiz4T.js +0 -1
  527. package/dist/assets/qwenimage-BQYh2gb2.js +0 -1
  528. package/dist/assets/radio-B09q5TlK.js +0 -1
  529. package/dist/assets/raf-lI0WZHjb.js +0 -1
  530. package/dist/assets/realtime-CYiDlgCq.js +0 -1
  531. package/dist/assets/rotate-ccw-DpWwt61r.js +0 -1
  532. package/dist/assets/rotate-cw-B03qG3lR.js +0 -1
  533. package/dist/assets/row-CdwrPdEy.js +0 -1
  534. package/dist/assets/scroll-L6ec4SHO.js +0 -1
  535. package/dist/assets/scrollbar-BPXMaXpQ.js +0 -1
  536. package/dist/assets/search-CnYrZ-MH.js +0 -1
  537. package/dist/assets/seedream-Bou8mO9k.js +0 -1
  538. package/dist/assets/segmented-DMUnXmAF.js +0 -1
  539. package/dist/assets/select-_PCob8fl.js +0 -1
  540. package/dist/assets/serp-BSRVU4rM.js +0 -1
  541. package/dist/assets/showcase-Dtww6zOn.js +0 -1
  542. package/dist/assets/showcaseRecreateMixin-CNSd3SMP.js +0 -1
  543. package/dist/assets/skeleton-HyjEr-4i.js +0 -1
  544. package/dist/assets/slider-C7rjvdbh.js +0 -1
  545. package/dist/assets/square-rfUZGEy9.js +0 -1
  546. package/dist/assets/store-Ck_6GTs-.js +0 -1
  547. package/dist/assets/suno-DH2ygO81.js +0 -1
  548. package/dist/assets/switch-B3L5sC-p.js +0 -1
  549. package/dist/assets/table-BXkN-Lwo.js +0 -1
  550. package/dist/assets/tabs-DsC7t0mr.js +0 -1
  551. package/dist/assets/terminal-Br8wDcT-.js +0 -1
  552. package/dist/assets/time-picker-Dol4_k5j.js +0 -1
  553. package/dist/assets/tooltip-PKpFyAlh.js +0 -1
  554. package/dist/assets/upload-BRF191Qt.js +0 -1
  555. package/dist/assets/use-aria-DjgU6t6L.js +0 -1
  556. package/dist/assets/use-delayed-toggle-DhPhVV5S.js +0 -1
  557. package/dist/assets/user-DjoblHTY.js +0 -1
  558. package/dist/assets/vendor-highlight-B4zA4Q-i.css +0 -1
  559. package/dist/assets/vnode-BD7Nn-ke.js +0 -1
  560. package/dist/assets/web-feAij0SJ.js +0 -1
  561. package/dist/assets/webextrator-1Ewk7MhL.js +0 -1
@@ -1 +0,0 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,j as d,mt as f,ot as p,rt as m,tt as h,z as g}from"./vendor-chart-Dw-P17PN.js";import{r as _,t as v}from"./select-_PCob8fl.js";import{v as y}from"./models-C0YjUFNo.js";import{t as b}from"./pagination-D42WEXtP.js";import{t as ee}from"./arrow-down-BtOf7_CV.js";import{t as x}from"./circle-check-XmSkFZmI.js";import{t as S}from"./lock-DkkFr7Gb.js";import{t as C}from"./plus-_yX0KO9f.js";import{t as w}from"./search-CnYrZ-MH.js";import{t as T}from"./back-navigation-BsIo9H7d.js";import{A as E,C as D,E as O,T as k,b as A}from"./i18n-Cu1HIOkL.js";import{D as j,Ga as M,Ha as N,Qi as P,Za as F,Zi as I,fo as L,io as R,qa as z,za as B}from"./index-BkGHnQZ_.js";import{c as te,d as ne,f as re,l as V,m as H,p as U,u as W}from"./vendor-highlight-Dd94xpKT.js";import{t as G}from"./VueMarkdown-BGpu7jb9.js";import{t as K}from"./index.es-Dc2KfvlA.js";var q=M(`cloud-download`,[[`path`,{d:`M12 13v8l-4-4`,key:`1f5nwf`}],[`path`,{d:`m12 21 4-4`,key:`1lfcce`}],[`path`,{d:`M4.393 15.269A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.436 8.284`,key:`ui1hmy`}]]),J=M(`cloud-upload`,[[`path`,{d:`M12 13v8`,key:`1l5pq0`}],[`path`,{d:`M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242`,key:`1pljnt`}],[`path`,{d:`m8 17 4-4 4 4`,key:`1quai1`}]]),Y=M(`square-plus`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}],[`path`,{d:`M12 8v8`,key:`napkw2`}]]),X=()=>({baseURL:`${B()}/api/v1`}),Z=new class{key=`skills/installed`;async list(e){return I.get(`/${this.key}/`,{...X(),params:e?{site_id:e}:void 0})}async get(e){return I.get(`/${this.key}/${e}/`,X())}async createMarkdown(e,t){return I.post(`/${this.key}/`,t?{...e,site_id:t}:e,X())}async createTarball(e,t){let n=new FormData;return n.append(`tarball`,e),t&&n.append(`site_id`,t),I.post(`/${this.key}/`,n,{...X(),headers:{"Content-Type":`multipart/form-data`}})}async update(e,t,n){return I.patch(`/${this.key}/${e}/`,t,{...X(),params:n?{site_id:n}:void 0})}async remove(e,t){return I.delete(`/${this.key}/${e}/`,{...X(),params:t?{site_id:t}:void 0})}async enable(e,t){return I.post(`/${this.key}/${e}/enable/`,void 0,{...X(),params:t?{site_id:t}:void 0})}async disable(e,t){return I.post(`/${this.key}/${e}/disable/`,void 0,{...X(),params:t?{site_id:t}:void 0})}async fetchFile(e,t,n){let r=await I.get(`/${this.key}/${e}/files/`,{...X(),params:{path:t,...n?{site_id:n}:{}},responseType:`arraybuffer`}),i=r.headers[`content-type`]||`application/octet-stream`;return{blob:new Blob([r.data],{type:i}),contentType:i}}},Q=new class{key=`skills`;async list(e={}){return P.get(`/${this.key}/`,{...X(),params:e})}async get(e,t){return P.get(`/${this.key}/${e}/`,{...X(),params:t?{site_id:t}:void 0})}async categories(){return P.get(`/${this.key}/categories/`,X())}async install(e,t={}){return I.post(`/${this.key}/${e}/install/`,t,X())}};function ie(){let e=new Set;k()&&e.add(`desktop`),O()&&e.add(`ios`),D()&&e.add(`android`),E()&&e.add(`web`);let t=A();if(t===`mac`)e.add(`mac`);else if(t===`windows`)e.add(`windows`);else if(typeof navigator<`u`){let t=navigator.userAgent||``,n=navigator.userAgentData?.platform,r=/macintosh/i.test(t)&&(navigator.maxTouchPoints||0)>1;!O()&&!r&&(n===`macOS`||/mac os x|macintosh/i.test(t))&&e.add(`mac`),(n===`Windows`||/windows nt/i.test(t))&&e.add(`windows`)}return e}var ae=new Set([`mac`,`windows`,`desktop`,`web`,`ios`,`android`]);function oe(e){let t=e.filter(e=>ae.has(e));if(!t.length)return!0;let n=ie();return t.some(e=>n.has(e))}H.registerLanguage(`bash`,U),H.registerLanguage(`json`,re),H.registerLanguage(`markdown`,ne),H.registerLanguage(`python`,W),H.registerLanguage(`shell`,V),H.registerLanguage(`yaml`,te),H.registerAliases([`yml`],{languageName:`yaml`}),H.registerAliases([`py`],{languageName:`python`}),H.registerAliases([`sh`,`zsh`],{languageName:`bash`});var se=12,ce=g({name:`BrowseSkillsDialog`,components:{MetaTag:N,BackNavigation:T,VueMarkdown:G,ElDialog:F,ElInput:L,ElButton:R,ElPagination:b,ElSelect:_,ElOption:v,FontAwesomeIcon:K,AddIcon:C,DownIcon:ee,InstallIcon:q,LockIcon:S,SearchIcon:w,SuccessIcon:x},directives:{loading:z},props:{siteId:{type:String,default:``},modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`installed`],data(){return{loading:!1,installing:!1,items:[],total:0,currentPage:1,searchQuery:``,namespaceFilter:``,sortBy:`popular`,selectedItem:null,searchTimer:null,knownNamespaces:[],publisherByNamespace:{}}},computed:{pageSize(){return se},namespaceOptions(){let e=new Set(this.knownNamespaces);for(let t of this.items)e.add(t.namespace);return Array.from(e).sort().map(e=>({value:e,label:this.publisherForNamespace(e)}))},detailBody(){return this.selectedItem?this.selectedItem.content.replace(/^---\n[\s\S]*?\n---\n?/,``):``}},methods:{onOpen(){this.selectedItem=null,this.searchQuery=``,this.namespaceFilter=``,this.sortBy=`popular`,this.currentPage=1,this.knownNamespaces=[],this.publisherByNamespace={},this.loadFacets(),this.reload()},openDetail(e){this.selectedItem=e},async loadFacets(){try{let{data:e}=await Q.categories(),t=new Set;for(let n of e.namespaces)t.add(n.namespace);this.knownNamespaces=Array.from(t).sort()}catch(e){console.warn(`failed to load skill catalog facets`,e)}},reloadFromFirstPage(){this.currentPage=1,this.reload()},onPageChange(e){this.currentPage=e,this.reload(),this.$nextTick(()=>{let e=this.$el.querySelector(`.directory-grid-wrapper`);e&&(e.scrollTop=0)})},onSearchInput(){this.searchTimer!==null&&window.clearTimeout(this.searchTimer),this.searchTimer=window.setTimeout(()=>{this.searchTimer=null,this.reloadFromFirstPage()},250)},async reload(){this.loading=!0;try{let{data:e}=await Q.list({q:this.searchQuery.trim()||void 0,namespace:this.namespaceFilter||void 0,sort:this.sortBy,limit:this.pageSize,offset:(this.currentPage-1)*this.pageSize});this.items=e.items,this.total=e.total;for(let t of e.items)t.publisher&&(this.publisherByNamespace[t.namespace]=t.publisher)}catch(e){console.error(e),y.error(this.$t(`skill.directory.loadFailed`))}finally{this.loading=!1}},async onInstall(e){if(!this.installing&&!e.installed){if(!this.canInstallOnSurface(e)){y.warning(this.$t(`skill.directory.surfaceBlocked`,{platforms:this.surfaceLabels(e)}));return}this.installing=!0;try{let{data:t}=await Q.install(e.id,this.siteId?{site_id:this.siteId}:{});y.success(this.$t(`skill.directory.installSuccess`,{name:e.slug})),this.$emit(`installed`,t.id),e.installed=!0,e.install_count+=1}catch(t){let n=this.extractError(t);n.includes(`already exists`)?(e.installed=!0,y.warning(this.$t(`skill.directory.alreadyInstalled`,{name:e.slug}))):y.error(this.$t(`skill.directory.installFailed`,{detail:n}))}finally{this.installing=!1}}},extractError(e){return e?.response?.data?.detail||String(e)||`unknown error`},formatCount(e){return e>=1e3?`${(e/1e3).toFixed(1)}K`:String(e)},publisherForNamespace(e){if(this.publisherByNamespace[e])return this.publisherByNamespace[e];let t=this.items.find(t=>t.namespace===e);return t?t.publisher:e},restrictedSurfaces(e){let t=e.frontmatter?.surfaces;return Array.isArray(t)?t.filter(e=>typeof e==`string`&&e.trim().length>0).map(e=>e.trim().toLowerCase()):[]},surfaceLabel(e){let t=`skill.directory.surface.${e}`,n=this.$t(t);return n===t?e:n},surfaceLabels(e){return this.restrictedSurfaces(e).map(e=>this.surfaceLabel(e)).join(` / `)},canInstallOnSurface(e){return oe(this.restrictedSurfaces(e))}}}),le={class:`directory`},ue={class:`directory-main`},de={class:`directory-header`},fe={class:`directory-controls`},pe={class:`directory-grid-wrapper`},me={key:0,class:`directory-empty`},he={key:1,class:`directory-grid`},ge=[`onClick`],_e={class:`directory-card-head`},ve={class:`directory-card-title`},ye=[`title`],$=[`title`],be=[`aria-label`,`title`,`onClick`],xe=[`title`],Se={class:`directory-card-meta`},Ce={class:`directory-card-publisher`},we={key:0,class:`directory-card-count`},Te={class:`directory-card-desc`},Ee={key:0,class:`directory-footer`},De={class:`directory-detail-head`},Oe={class:`directory-detail-actions`},ke=[`href`],Ae={class:`directory-detail-body`},je={class:`directory-detail-title`},Me={class:`directory-detail-meta`},Ne={key:0},Pe={key:1},Fe={class:`directory-detail-desc`};function Ie(g,_,v,y,b,ee){let x=l(`search-icon`),S=l(`el-input`),C=l(`el-option`),w=l(`el-select`),T=l(`success-icon`),E=l(`lock-icon`),D=l(`add-icon`),O=l(`down-icon`),k=l(`meta-tag`),A=l(`el-pagination`),j=l(`back-navigation`),M=l(`font-awesome-icon`),N=l(`el-button`),P=l(`install-icon`),F=l(`vue-markdown`),I=l(`el-dialog`),L=p(`loading`);return h(),d(I,{"append-to-body":``,"model-value":g.modelValue,title:g.$t(`skill.dialog.directoryTitle`),width:`min(960px, 94vw)`,"align-center":``,class:`directory-dialog`,"close-on-click-modal":!g.installing,"show-close":!g.installing,"onUpdate:modelValue":_[5]||=e=>g.$emit(`update:modelValue`,e),onOpen:g.onOpen},{default:f(()=>[e(`div`,le,[e(`main`,ue,[g.selectedItem?(h(),s(c,{key:1},[e(`header`,De,[a(j,{onClick:_[3]||=e=>g.selectedItem=null},{default:f(()=>[r(i(g.$t(`skill.directory.back`)),1)]),_:1}),e(`div`,Oe,[g.selectedItem.source_url?(h(),s(`a`,{key:0,href:g.selectedItem.source_url,target:`_blank`,class:`directory-link`},[a(M,{icon:`fa-brands fa-github`}),r(` `+i(g.$t(`skill.directory.viewSource`)),1)],8,ke)):o(``,!0),g.selectedItem.installed?(h(),d(N,{key:1,disabled:``,type:`success`,plain:``},{default:f(()=>[a(T,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(g.$t(`skill.directory.installed`)),1)]),_:1})):g.selectedItem.installable&&!g.canInstallOnSurface(g.selectedItem)?(h(),d(N,{key:2,disabled:``,title:g.$t(`skill.directory.surfaceBlocked`,{platforms:g.surfaceLabels(g.selectedItem)})},{default:f(()=>[a(E,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(g.$t(`skill.directory.surfaceUnavailable`)),1)]),_:1},8,[`title`])):g.selectedItem.installable?(h(),d(N,{key:3,type:`primary`,loading:g.installing,onClick:_[4]||=e=>g.onInstall(g.selectedItem)},{default:f(()=>[a(P,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(g.$t(`skill.directory.install`)),1)]),_:1},8,[`loading`])):(h(),d(N,{key:4,disabled:``,title:g.selectedItem.license},{default:f(()=>[a(E,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(g.selectedItem.license||g.$t(`skill.directory.notInstallable`)),1)]),_:1},8,[`title`]))])]),e(`div`,Ae,[e(`h2`,je,`/`+i(g.selectedItem.slug),1),e(`div`,Me,[e(`span`,null,[e(`strong`,null,i(g.$t(`skill.meta.addedBy`))+`:`,1),r(` `+i(g.selectedItem.publisher),1)]),g.selectedItem.license?(h(),s(`span`,Ne,[e(`strong`,null,i(g.$t(`skill.directory.license`))+`:`,1),r(` `+i(g.selectedItem.license),1)])):o(``,!0),g.selectedItem.version?(h(),s(`span`,Pe,`v`+i(g.selectedItem.version),1)):o(``,!0),g.surfaceLabels(g.selectedItem)?(h(),d(k,{key:2,class:`directory-detail-surface`,title:g.$t(`skill.directory.surfaceHint`),density:`compact`,tone:`warning`},{default:f(()=>[r(i(g.$t(`skill.directory.surfaceOnly`,{platforms:g.surfaceLabels(g.selectedItem)})),1)]),_:1},8,[`title`])):o(``,!0)]),e(`p`,Fe,i(g.selectedItem.description),1),a(F,{class:`directory-detail-content`,source:g.detailBody,sanitize:``},null,8,[`source`])])],64)):(h(),s(c,{key:0},[e(`header`,de,[a(S,{modelValue:g.searchQuery,"onUpdate:modelValue":_[0]||=e=>g.searchQuery=e,class:`directory-search`,size:`default`,clearable:``,placeholder:g.$t(`skill.directory.searchPlaceholder`),onInput:g.onSearchInput},{prefix:f(()=>[a(x,{size:14,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`modelValue`,`placeholder`,`onInput`]),e(`div`,fe,[a(w,{modelValue:g.namespaceFilter,"onUpdate:modelValue":_[1]||=e=>g.namespaceFilter=e,class:`directory-select`,placeholder:g.$t(`skill.directory.allPublishers`),clearable:``,size:`default`,onChange:g.reloadFromFirstPage},{default:f(()=>[(h(!0),s(c,null,m(g.namespaceOptions,e=>(h(),d(C,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`]),a(w,{modelValue:g.sortBy,"onUpdate:modelValue":_[2]||=e=>g.sortBy=e,class:`directory-select directory-select-sm`,size:`default`,onChange:g.reloadFromFirstPage},{default:f(()=>[a(C,{label:g.$t(`skill.directory.sort.popular`),value:`popular`},null,8,[`label`]),a(C,{label:g.$t(`skill.directory.sort.recent`),value:`recent`},null,8,[`label`]),a(C,{label:g.$t(`skill.directory.sort.name`),value:`name`},null,8,[`label`])]),_:1},8,[`modelValue`,`onChange`])])]),u((h(),s(`div`,pe,[!g.loading&&g.total===0?(h(),s(`p`,me,i(g.$t(`skill.directory.empty`)),1)):(h(),s(`div`,he,[(h(!0),s(c,null,m(g.items,c=>(h(),s(`article`,{key:c.id,class:n([`directory-card`,{"is-installed":c.installed}]),onClick:e=>g.openDetail(c)},[e(`div`,_e,[e(`span`,ve,`/`+i(c.slug),1),c.installed?(h(),s(`span`,{key:0,class:`directory-card-action is-installed`,title:g.$t(`skill.directory.installed`)},[a(T,{size:16,"aria-hidden":`true`,focusable:`false`})],8,ye)):c.installable&&!g.canInstallOnSurface(c)?(h(),s(`span`,{key:1,class:`directory-card-locked`,title:g.$t(`skill.directory.surfaceBlocked`,{platforms:g.surfaceLabels(c)})},[a(E,{size:16,"aria-hidden":`true`,focusable:`false`})],8,$)):c.installable?(h(),s(`button`,{key:2,class:`directory-card-action`,"aria-label":g.$t(`skill.directory.install`),title:g.$t(`skill.directory.install`),onClick:t(e=>g.onInstall(c),[`stop`])},[a(D,{size:16,"aria-hidden":`true`,focusable:`false`})],8,be)):(h(),s(`span`,{key:3,class:`directory-card-locked`,title:c.license},[a(E,{size:16,"aria-hidden":`true`,focusable:`false`})],8,xe))]),e(`div`,Se,[e(`span`,Ce,i(c.publisher),1),c.install_count>0?(h(),s(`span`,we,[a(O,{size:14,"aria-hidden":`true`,focusable:`false`}),r(` `+i(g.formatCount(c.install_count)),1)])):o(``,!0),g.surfaceLabels(c)?(h(),d(k,{key:1,class:`directory-card-surface`,title:g.$t(`skill.directory.surfaceHint`),density:`compact`,tone:`warning`},{default:f(()=>[r(i(g.surfaceLabels(c)),1)]),_:2},1032,[`title`])):o(``,!0)]),e(`p`,Te,i(c.description),1)],10,ge))),128))]))])),[[L,g.loading]]),g.total>g.pageSize?(h(),s(`footer`,Ee,[a(A,{"current-page":g.currentPage,"page-size":g.pageSize,total:g.total,"pager-count":5,background:``,layout:`prev, pager, next, total`,onCurrentChange:g.onPageChange},null,8,[`current-page`,`page-size`,`total`,`onCurrentChange`])])):o(``,!0)],64))])])]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`show-close`,`onOpen`])}var Le=j(ce,[[`render`,Ie],[`__scopeId`,`data-v-888845fa`]]),Re=10*1024*1024,ze=/\.(tar\.gz|tgz|tar|zip|md)$/i,Be=g({name:`UploadSkillDialog`,components:{ElDialog:F,ElButton:R,AddFileIcon:Y,CloudUploadIcon:J},props:{siteId:{type:String,default:``},modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`created`],data(){return{file:null,isDragging:!1,uploading:!1}},methods:{onVisibleChange(e){this.$emit(`update:modelValue`,e)},onClose(){this.uploading||this.$emit(`update:modelValue`,!1)},reset(){this.file=null,this.isDragging=!1;let e=this.$refs.fileInput;e&&(e.value=``)},humanSize(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(2)} MB`},onPickFile(){this.uploading||this.$refs.fileInput?.click()},onFilePicked(e){let t=e.target.files?.[0]||null;this.acceptFile(t)},onDrop(e){this.isDragging=!1;let t=e.dataTransfer?.files?.[0]||null;this.acceptFile(t)},acceptFile(e){if(!e){this.file=null;return}if(e.size>Re){y.error(this.$t(`skill.message.fileTooLarge`));return}if(!ze.test(e.name)){y.error(this.$t(`skill.message.fileTypeWrong`));return}this.file=e},extractError(e){let t=e;return t?.response?.data?.detail||(t?.response?.data?.content||[]).join(`; `)||String(e)||`unknown error`},async onSubmit(){if(this.file){this.uploading=!0;try{if(/\.md$/i.test(this.file.name)){let e=await this.file.text(),{data:t}=await Z.createMarkdown({content:e},this.siteId||void 0);y.success(this.$t(`skill.message.createSuccess`)),this.$emit(`created`,t.id)}else{let{data:e}=await Z.createTarball(this.file,this.siteId||void 0);y.success(this.$t(`skill.message.createSuccess`)),this.$emit(`created`,e.id)}this.$emit(`update:modelValue`,!1)}catch(e){y.error(this.$t(`skill.message.createFailed`,{detail:this.extractError(e)}))}finally{this.uploading=!1}}}}}),Ve={key:0,class:`dropzone-hint`},He={key:1,class:`dropzone-file`},Ue={class:`dropzone-file-name`},We={class:`dropzone-file-size`},Ge={class:`requirements`},Ke={class:`requirements-title`};function qe(o,c,u,p,m,g){let _=l(`add-file-icon`),v=l(`el-button`),y=l(`cloud-upload-icon`),b=l(`el-dialog`);return h(),d(b,{"append-to-body":``,"model-value":o.modelValue,title:o.$t(`skill.dialog.uploadTitle`),width:`min(520px, 94vw)`,"align-center":``,"close-on-click-modal":!o.uploading,"close-on-press-escape":!o.uploading,"show-close":!o.uploading,"onUpdate:modelValue":o.onVisibleChange,onClosed:o.reset},{footer:f(()=>[a(v,{disabled:o.uploading,onClick:o.onClose},{default:f(()=>[r(i(o.$t(`common.button.cancel`)),1)]),_:1},8,[`disabled`,`onClick`]),a(v,{type:`primary`,loading:o.uploading,disabled:!o.file,onClick:o.onSubmit},{default:f(()=>[a(y,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(o.$t(`skill.button.create`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:f(()=>[e(`input`,{ref:`fileInput`,type:`file`,accept:`.tar.gz,.tgz,.tar,.zip,.md,application/gzip,application/zip,application/x-tar,text/markdown`,hidden:``,onChange:c[0]||=(...e)=>o.onFilePicked&&o.onFilePicked(...e)},null,544),e(`div`,{class:n([`dropzone`,{"is-dragging":o.isDragging,"has-file":!!o.file}]),onClick:c[1]||=(...e)=>o.onPickFile&&o.onPickFile(...e),onDragover:c[2]||=t(e=>o.isDragging=!0,[`prevent`]),onDragleave:c[3]||=t(e=>o.isDragging=!1,[`prevent`]),onDrop:c[4]||=t((...e)=>o.onDrop&&o.onDrop(...e),[`prevent`])},[a(_,{class:`dropzone-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o.file?(h(),s(`p`,He,[e(`span`,Ue,i(o.file.name),1),e(`span`,We,i(o.humanSize(o.file.size)),1)])):(h(),s(`p`,Ve,i(o.$t(`skill.dialog.uploadDrop`)),1))],34),e(`div`,Ge,[e(`p`,Ke,i(o.$t(`skill.dialog.fileRequirements`)),1),e(`ul`,null,[e(`li`,null,i(o.$t(`skill.dialog.requirementMd`)),1),e(`li`,null,i(o.$t(`skill.dialog.requirementArchive`)),1)])])]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`close-on-press-escape`,`show-close`,`onUpdate:modelValue`,`onClosed`])}var Je=j(Be,[[`render`,qe],[`__scopeId`,`data-v-5018f27e`]]),Ye=g({name:`WriteSkillDialog`,components:{ElDialog:F,ElButton:R,ElInput:L,CloudUploadIcon:J},props:{siteId:{type:String,default:``},modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`created`],data(){return{content:``,saving:!1}},methods:{onVisibleChange(e){this.$emit(`update:modelValue`,e)},onClose(){this.saving||this.$emit(`update:modelValue`,!1)},reset(){this.content=``},extractError(e){let t=e;return t?.response?.data?.detail||(t?.response?.data?.content||[]).join(`; `)||String(e)||`unknown error`},async onSubmit(){if(this.content.trim()){this.saving=!0;try{let{data:e}=await Z.createMarkdown({content:this.content},this.siteId||void 0);y.success(this.$t(`skill.message.createSuccess`)),this.$emit(`created`,e.id),this.$emit(`update:modelValue`,!1)}catch(e){y.error(this.$t(`skill.message.createFailed`,{detail:this.extractError(e)}))}finally{this.saving=!1}}}}}),Xe={class:`hint`};function Ze(t,n,o,s,c,u){let p=l(`el-input`),m=l(`el-button`),g=l(`cloud-upload-icon`),_=l(`el-dialog`);return h(),d(_,{"append-to-body":``,"model-value":t.modelValue,title:t.$t(`skill.dialog.writeTitle`),width:`min(720px, 94vw)`,"align-center":``,"close-on-click-modal":!t.saving,"close-on-press-escape":!t.saving,"show-close":!t.saving,"onUpdate:modelValue":t.onVisibleChange,onClosed:t.reset},{footer:f(()=>[a(m,{disabled:t.saving,onClick:t.onClose},{default:f(()=>[r(i(t.$t(`common.button.cancel`)),1)]),_:1},8,[`disabled`,`onClick`]),a(m,{type:`primary`,loading:t.saving,disabled:!t.content.trim(),onClick:t.onSubmit},{default:f(()=>[a(g,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.button.create`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:f(()=>[e(`p`,Xe,i(t.$t(`skill.dialog.writeHint`)),1),a(p,{modelValue:t.content,"onUpdate:modelValue":n[0]||=e=>t.content=e,type:`textarea`,rows:18,placeholder:t.$t(`skill.placeholder.content`),spellcheck:`false`,class:`editor`},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`close-on-press-escape`,`show-close`,`onUpdate:modelValue`,`onClosed`])}var Qe=j(Ye,[[`render`,Ze],[`__scopeId`,`data-v-a5dcdeb8`]]);export{Z as i,Je as n,Le as r,Qe as t};
@@ -1 +0,0 @@
1
- import{As as e,Bs as t,Cs as n,Hs as r,Is as i,Ms as a,Ns as o,Ps as s,Ts as c,Us as l,ws as u,zs as d}from"./constants-vZG8JV9A.js";import{c as f,l as p,s as m}from"./use-aria-DjgU6t6L.js";var h=a(r,`WeakMap`);function g(e){return e!=null&&p(e.length)&&!s(e)}var ee=Object.prototype;function _(e){var t=e&&e.constructor;return e===(typeof t==`function`&&t.prototype||ee)}function te(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}function ne(){return!1}var v=typeof exports==`object`&&exports&&!exports.nodeType&&exports,y=v&&typeof module==`object`&&module&&!module.nodeType&&module,b=y&&y.exports===v?r.Buffer:void 0,x=(b?b.isBuffer:void 0)||ne,S=`[object Arguments]`,C=`[object Array]`,w=`[object Boolean]`,re=`[object Date]`,ie=`[object Error]`,ae=`[object Function]`,oe=`[object Map]`,se=`[object Number]`,ce=`[object Object]`,le=`[object RegExp]`,ue=`[object Set]`,de=`[object String]`,fe=`[object WeakMap]`,pe=`[object ArrayBuffer]`,me=`[object DataView]`,he=`[object Float32Array]`,ge=`[object Float64Array]`,_e=`[object Int8Array]`,ve=`[object Int16Array]`,ye=`[object Int32Array]`,be=`[object Uint8Array]`,xe=`[object Uint8ClampedArray]`,T=`[object Uint16Array]`,E=`[object Uint32Array]`,D={};D[he]=D[ge]=D[_e]=D[ve]=D[ye]=D[be]=D[xe]=D[T]=D[E]=!0,D[S]=D[C]=D[pe]=D[w]=D[me]=D[re]=D[ie]=D[ae]=D[oe]=D[se]=D[ce]=D[le]=D[ue]=D[de]=D[fe]=!1;function O(e){return d(e)&&p(e.length)&&!!D[t(e)]}function k(e){return function(t){return e(t)}}var A=typeof exports==`object`&&exports&&!exports.nodeType&&exports,j=A&&typeof module==`object`&&module&&!module.nodeType&&module,M=j&&j.exports===A&&l.process,N=function(){try{return j&&j.require&&j.require(`util`).types||M&&M.binding&&M.binding(`util`)}catch{}}(),P=N&&N.isTypedArray,F=P?k(P):O,Se=Object.prototype.hasOwnProperty;function I(t,n){var r=i(t),a=!r&&f(t),o=!r&&!a&&x(t),s=!r&&!a&&!o&&F(t),c=r||a||o||s,l=c?te(t.length,String):[],u=l.length;for(var d in t)(n||Se.call(t,d))&&!(c&&(d==`length`||o&&(d==`offset`||d==`parent`)||s&&(d==`buffer`||d==`byteLength`||d==`byteOffset`)||e(d,u)))&&l.push(d);return l}function L(e,t){return function(n){return e(t(n))}}var Ce=L(Object.keys,Object),we=Object.prototype.hasOwnProperty;function Te(e){if(!_(e))return Ce(e);var t=[];for(var n in Object(e))we.call(e,n)&&n!=`constructor`&&t.push(n);return t}function R(e){return g(e)?I(e):Te(e)}function Ee(){this.__data__=new c,this.size=0}function z(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function De(e){return this.__data__.get(e)}function Oe(e){return this.__data__.has(e)}var ke=200;function Ae(e,t){var r=this.__data__;if(r instanceof c){var i=r.__data__;if(!u||i.length<ke-1)return i.push([e,t]),this.size=++r.size,this;r=this.__data__=new n(i)}return r.set(e,t),this.size=r.size,this}function B(e){var t=this.__data__=new c(e);this.size=t.size}B.prototype.clear=Ee,B.prototype.delete=z,B.prototype.get=De,B.prototype.has=Oe,B.prototype.set=Ae;function je(e,t){for(var n=-1,r=e==null?0:e.length,i=0,a=[];++n<r;){var o=e[n];t(o,n,e)&&(a[i++]=o)}return a}function V(){return[]}var Me=Object.prototype.propertyIsEnumerable,H=Object.getOwnPropertySymbols,U=H?function(e){return e==null?[]:(e=Object(e),je(H(e),function(t){return Me.call(e,t)}))}:V;function W(e,t,n){var r=t(e);return i(e)?r:m(r,n(e))}function Ne(e){return W(e,R,U)}var G=a(r,`DataView`),K=a(r,`Promise`),q=a(r,`Set`),J=`[object Map]`,Pe=`[object Object]`,Y=`[object Promise]`,X=`[object Set]`,Z=`[object WeakMap]`,Q=`[object DataView]`,Fe=o(G),Ie=o(u),Le=o(K),Re=o(q),ze=o(h),$=t;(G&&$(new G(new ArrayBuffer(1)))!=Q||u&&$(new u)!=J||K&&$(K.resolve())!=Y||q&&$(new q)!=X||h&&$(new h)!=Z)&&($=function(e){var n=t(e),r=n==Pe?e.constructor:void 0,i=r?o(r):``;if(i)switch(i){case Fe:return Q;case Ie:return J;case Le:return Y;case Re:return X;case ze:return Z}return n});var Be=$,Ve=r.Uint8Array;export{g as _,W as a,B as c,I as d,F as f,_ as g,x as h,Ne as i,R as l,k as m,Be as n,U as o,N as p,q as r,V as s,Ve as t,L as u};
@@ -1 +0,0 @@
1
- import{Ds as e,Fs as t,Is as n,Vs as r,zs as i}from"./constants-vZG8JV9A.js";import{s as a}from"./use-aria-DjgU6t6L.js";import{a as o,c as s,h as ee,i as te,l as c,m as l,n as u,o as d,p as f,s as p}from"./_Uint8Array-sSpijImS.js";import{a as m,c as h,i as ne,n as g,o as _,r as v,s as y,t as b}from"./_initCloneObject-BOg92v1Q.js";function re(e,t){for(var n=-1,r=e==null?0:e.length;++n<r&&t(e[n],n,e)!==!1;);return e}function ie(e,t){return e&&y(t,c(t),e)}function ae(e,t){return e&&y(t,_(t),e)}function oe(e,t){return y(e,d(e),t)}var x=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)a(t,d(e)),e=m(e);return t}:p;function se(e,t){return y(e,x(e),t)}function S(e){return o(e,_,x)}var C=Object.prototype.hasOwnProperty;function ce(e){var t=e.length,n=new e.constructor(t);return t&&typeof e[0]==`string`&&C.call(e,`index`)&&(n.index=e.index,n.input=e.input),n}function w(e,t){var n=t?v(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}var T=/\w*$/;function E(e){var t=new e.constructor(e.source,T.exec(e));return t.lastIndex=e.lastIndex,t}var D=r?r.prototype:void 0,O=D?D.valueOf:void 0;function k(e){return O?Object(O.call(e)):{}}var A=`[object Boolean]`,j=`[object Date]`,M=`[object Map]`,N=`[object Number]`,P=`[object RegExp]`,F=`[object Set]`,I=`[object String]`,L=`[object Symbol]`,R=`[object ArrayBuffer]`,z=`[object DataView]`,B=`[object Float32Array]`,V=`[object Float64Array]`,H=`[object Int8Array]`,U=`[object Int16Array]`,W=`[object Int32Array]`,G=`[object Uint8Array]`,le=`[object Uint8ClampedArray]`,ue=`[object Uint16Array]`,de=`[object Uint32Array]`;function fe(e,t,n){var r=e.constructor;switch(t){case R:return v(e);case A:case j:return new r(+e);case z:return w(e,n);case B:case V:case H:case U:case W:case G:case le:case ue:case de:return g(e,n);case M:return new r;case N:case I:return new r(e);case P:return E(e);case F:return new r;case L:return k(e)}}var pe=`[object Map]`;function me(e){return i(e)&&u(e)==pe}var K=f&&f.isMap,he=K?l(K):me,ge=`[object Set]`;function _e(e){return i(e)&&u(e)==ge}var q=f&&f.isSet,ve=q?l(q):_e,ye=1,be=2,xe=4,J=`[object Arguments]`,Se=`[object Array]`,Ce=`[object Boolean]`,we=`[object Date]`,Te=`[object Error]`,Y=`[object Function]`,Ee=`[object GeneratorFunction]`,De=`[object Map]`,Oe=`[object Number]`,X=`[object Object]`,ke=`[object RegExp]`,Ae=`[object Set]`,je=`[object String]`,Me=`[object Symbol]`,Ne=`[object WeakMap]`,Pe=`[object ArrayBuffer]`,Fe=`[object DataView]`,Ie=`[object Float32Array]`,Z=`[object Float64Array]`,Le=`[object Int8Array]`,Re=`[object Int16Array]`,ze=`[object Int32Array]`,Be=`[object Uint8Array]`,Ve=`[object Uint8ClampedArray]`,He=`[object Uint16Array]`,Ue=`[object Uint32Array]`,Q={};Q[J]=Q[Se]=Q[Pe]=Q[Fe]=Q[Ce]=Q[we]=Q[Ie]=Q[Z]=Q[Le]=Q[Re]=Q[ze]=Q[De]=Q[Oe]=Q[X]=Q[ke]=Q[Ae]=Q[je]=Q[Me]=Q[Be]=Q[Ve]=Q[He]=Q[Ue]=!0,Q[Te]=Q[Y]=Q[Ne]=!1;function $(r,i,a,o,l,d){var f,p=i&ye,m=i&be,g=i&xe;if(a&&(f=l?a(r,o,l,d):a(r)),f!==void 0)return f;if(!t(r))return r;var v=n(r);if(v){if(f=ce(r),!p)return h(r,f)}else{var y=u(r),x=y==Y||y==Ee;if(ee(r))return ne(r,p);if(y==X||y==J||x&&!l){if(f=m||x?{}:b(r),!p)return m?se(r,ae(f,r)):oe(r,ie(f,r))}else{if(!Q[y])return l?r:{};f=fe(r,y,p)}}d||=new s;var C=d.get(r);if(C)return C;d.set(r,f),ve(r)?r.forEach(function(e){f.add($(e,i,a,e,r,d))}):he(r)&&r.forEach(function(e,t){f.set(t,$(e,i,a,t,r,d))});var w=v?void 0:(g?m?S:te:m?_:c)(r);return re(w||r,function(t,n){w&&(n=t,t=r[n]),e(f,n,$(t,i,a,n,r,d))}),f}export{S as n,$ as t};
@@ -1 +0,0 @@
1
- import{Es as e,Fs as t,Is as n,bs as r,xs as i,ys as a}from"./constants-vZG8JV9A.js";import{f as o,r as s}from"./use-aria-DjgU6t6L.js";import{c,l}from"./_Uint8Array-sSpijImS.js";import{n as u}from"./isEqual-BFcHeZKz.js";var d=1,f=2;function p(e,t,n,r){var i=n.length,a=i,o=!r;if(e==null)return!a;for(e=Object(e);i--;){var s=n[i];if(o&&s[2]?s[1]!==e[s[0]]:!(s[0]in e))return!1}for(;++i<a;){s=n[i];var l=s[0],p=e[l],m=s[1];if(o&&s[2]){if(p===void 0&&!(l in e))return!1}else{var h=new c;if(r)var g=r(p,m,l,e,t,h);if(!(g===void 0?u(m,p,d|f,r,h):g))return!1}}return!0}function m(e){return e===e&&!t(e)}function h(e){for(var t=l(e),n=t.length;n--;){var r=t[n],i=e[r];t[n]=[r,i,m(i)]}return t}function g(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}function _(e){var t=h(e);return t.length==1&&t[0][2]?g(t[0][0],t[0][1]):function(n){return n===e||p(n,e,t)}}var v=1,y=2;function b(t,n){return e(t)&&m(n)?g(i(t),n):function(e){var r=a(e,t);return r===void 0&&r===n?s(e,t):u(n,r,v|y)}}function x(e){return function(t){return t?.[e]}}function S(e){return function(t){return r(t,e)}}function C(t){return e(t)?x(i(t)):S(t)}function w(e){return typeof e==`function`?e:e==null?o:typeof e==`object`?n(e)?b(e[0],e[1]):_(e):C(e)}export{w as t};
@@ -1 +0,0 @@
1
- import{Ds as e,Fs as t,Hs as n,ks as r}from"./constants-vZG8JV9A.js";import{_ as i,d as a,g as o,t as s,u as c}from"./_Uint8Array-sSpijImS.js";var l=Object.create,u=function(){function e(){}return function(n){if(!t(n))return{};if(l)return l(n);e.prototype=n;var r=new e;return e.prototype=void 0,r}}();function d(e,t){var n=-1,r=e.length;for(t||=Array(r);++n<r;)t[n]=e[n];return t}function f(t,n,i,a){var o=!i;i||={};for(var s=-1,c=n.length;++s<c;){var l=n[s],u=a?a(i[l],t[l],l,i,t):void 0;u===void 0&&(u=t[l]),o?r(i,l,u):e(i,l,u)}return i}function p(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}var m=Object.prototype.hasOwnProperty;function h(e){if(!t(e))return p(e);var n=o(e),r=[];for(var i in e)i==`constructor`&&(n||!m.call(e,i))||r.push(i);return r}function g(e){return i(e)?a(e,!0):h(e)}var _=c(Object.getPrototypeOf,Object),v=typeof exports==`object`&&exports&&!exports.nodeType&&exports,y=v&&typeof module==`object`&&module&&!module.nodeType&&module,b=y&&y.exports===v?n.Buffer:void 0,x=b?b.allocUnsafe:void 0;function S(e,t){if(t)return e.slice();var n=e.length,r=x?x(n):new e.constructor(n);return e.copy(r),r}function C(e){var t=new e.constructor(e.byteLength);return new s(t).set(new s(e)),t}function w(e,t){var n=t?C(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function T(e){return typeof e.constructor==`function`&&!o(e)?u(_(e)):{}}export{_ as a,d as c,S as i,w as n,g as o,C as r,f as s,T as t};
@@ -1 +0,0 @@
1
- import{A as e,Gt as t,H as n,I as r,Jt as i,L as a,M as o,Mt as s,N as c,T as l,U as u,ht as d,it as f,j as p,k as m,nt as h,rt as g,tt as _,ut as v,z as y}from"./vendor-chart-Dw-P17PN.js";import{Eo as b,Ho as x,Uo as S,_s as C,zo as w}from"./constants-vZG8JV9A.js";import{a as T,c as E,i as D,t as O}from"./install-Cn-SLM3u.js";import{r as k}from"./use-deprecated-KSZGI37P.js";import{n as A,r as j}from"./vnode-BD7Nn-ke.js";import{C as M,E as N,M as P,T as F}from"./i18n-Cu1HIOkL.js";import{t as I}from"./preload-helper-zJ_50EbN.js";import{J as L,O as R}from"./index-BkGHnQZ_.js";var z=Symbol(`elDescriptions`),B=y({name:`ElDescriptionsCell`,props:{cell:{type:Object},tag:{type:String,default:`td`},type:{type:String}},setup(){return{descriptions:u(z,{})}},render(){let e=j(this.cell),t=(this.cell?.dirs||[]).map(e=>{let{dir:t,arg:n,modifiers:r,value:i}=e;return[t,i,n,r]}),{border:r,direction:i}=this.descriptions,a=i===`vertical`,o=()=>{var t;return((t=this.cell?.children)?.label)?.call(t)||e.label},s=()=>{var e;return((e=this.cell?.children)?.default)?.call(e)},c=e.span,l=e.rowspan,u=e.align?`is-${e.align}`:``,f=e.labelAlign?`is-${e.labelAlign}`:u,p=e.className,m=e.labelClassName,h={width:b(this.type===`label`&&(e.labelWidth||this.descriptions.labelWidth)||e.width),minWidth:b(e.minWidth)},g=E(`descriptions`);switch(this.type){case`label`:return d(n(this.tag,{style:h,class:[g.e(`cell`),g.e(`label`),g.is(`bordered-label`,r),g.is(`vertical-label`,a),f,m],colSpan:a?c:1,rowspan:a?1:l},o()),t);case`content`:return d(n(this.tag,{style:h,class:[g.e(`cell`),g.e(`content`),g.is(`bordered-content`,r),g.is(`vertical-content`,a),u,p],colSpan:a?c:c*2-1,rowspan:a?l*2-1:l},s()),t);default:{let r=o(),i={},a=b(e.labelWidth||this.descriptions.labelWidth);return a&&(i.width=a,i.display=`inline-block`),d(n(`td`,{style:h,class:[g.e(`cell`),u],colSpan:c,rowspan:l},[C(r)?void 0:n(`span`,{style:i,class:[g.e(`label`),m]},r),n(`span`,{class:[g.e(`content`),p]},s())]),t)}}}}),V=x({row:{type:S(Array),default:()=>[]}}),H=T(y({...y({name:`ElDescriptionsRow`}),props:V,setup(t){let n=u(z,{});return(t,r)=>s(n).direction===`vertical`?(_(),c(l,{key:0},[e(`tr`,null,[(_(!0),c(l,null,g(t.row,(e,t)=>(_(),p(s(B),{key:`tr1-${t}`,cell:e,tag:`th`,type:`label`},null,8,[`cell`]))),128))]),e(`tr`,null,[(_(!0),c(l,null,g(t.row,(e,t)=>(_(),p(s(B),{key:`tr2-${t}`,cell:e,tag:`td`,type:`content`},null,8,[`cell`]))),128))])],64)):(_(),c(`tr`,{key:1},[(_(!0),c(l,null,g(t.row,(e,t)=>(_(),c(l,{key:`tr3-${t}`},[s(n).border?(_(),c(l,{key:0},[a(s(B),{cell:e,tag:`td`,type:`label`},null,8,[`cell`]),a(s(B),{cell:e,tag:`td`,type:`content`},null,8,[`cell`])],64)):(_(),p(s(B),{key:1,cell:e,tag:`td`,type:`both`},null,8,[`cell`]))],64))),128))]))}}),[[`__file`,`descriptions-row.vue`]]),U=x({border:Boolean,column:{type:Number,default:3},direction:{type:String,values:[`horizontal`,`vertical`],default:`horizontal`},size:w,title:{type:String,default:``},extra:{type:String,default:``},labelWidth:{type:[String,Number],default:``}}),W=`ElDescriptionsItem`,G=T(y({...y({name:`ElDescriptions`}),props:U,setup(n){let a=n,u=E(`descriptions`),d=k(),y=v();h(z,a);let b=m(()=>[u.b(),u.m(d.value)]),x=(e,t,n,r=!1)=>(e.props||={},t>n&&(e.props.span=n),r&&(e.props.span=t),e),S=()=>{if(!y.default)return[];let e=A(y.default()).filter(e=>e?.type?.name===W),t=[],n=[],r=a.column,i=0,o=[];return e.forEach((s,c)=>{var l;let u=s.props?.span||1,d=s.props?.rowspan||1,f=t.length;if(o[f]||(o[f]=0),d>1)for(let e=1;e<d;e++)o[l=f+e]||(o[l]=0),o[f+e]++,i++;if(o[f]>0&&(r-=o[f],o[f]=0),c<e.length-1&&(i+=u>r?r:u),c===e.length-1){let e=a.column-i%a.column;n.push(x(s,e,r,!0)),t.push(n);return}u<r?(r-=u,n.push(s)):(n.push(x(s,u,r)),t.push(n),r=a.column,n=[])}),t};return(n,a)=>(_(),c(`div`,{class:t(s(b))},[n.title||n.extra||n.$slots.title||n.$slots.extra?(_(),c(`div`,{key:0,class:t(s(u).e(`header`))},[e(`div`,{class:t(s(u).e(`title`))},[f(n.$slots,`title`,{},()=>[r(i(n.title),1)])],2),e(`div`,{class:t(s(u).e(`extra`))},[f(n.$slots,`extra`,{},()=>[r(i(n.extra),1)])],2)],2)):o(`v-if`,!0),e(`div`,{class:t(s(u).e(`body`))},[e(`table`,{class:t([s(u).e(`table`),s(u).is(`bordered`,n.border)])},[e(`tbody`,null,[(_(!0),c(l,null,g(S(),(e,t)=>(_(),p(H,{key:t,row:e},null,8,[`row`]))),128))])],2)],2)],2))}}),[[`__file`,`description.vue`]]),K=[`left`,`center`,`right`],q=y({name:W,props:x({label:{type:String,default:``},span:{type:Number,default:1},rowspan:{type:Number,default:1},width:{type:[String,Number],default:``},minWidth:{type:[String,Number],default:``},labelWidth:{type:[String,Number],default:``},align:{type:String,values:K,default:`left`},labelAlign:{type:String,values:K},className:{type:String,default:``},labelClassName:{type:String,default:``}})}),J=O(G,{DescriptionsItem:q}),Y=D(q);function X(){return typeof navigator>`u`?!1:/MicroMessenger/i.test(navigator.userAgent||``)}function Z(){return typeof navigator>`u`?!1:/(iPhone|iPad|iPod|Android|HarmonyOS|Mobile|Windows Phone|BlackBerry|Opera Mini)/i.test(navigator.userAgent||``)}var Q=`checkout.airwallex.com`;async function $(e){if(e.provider!==`airwallex`)throw Error(`Invalid Airwallex payment provider`);if(e.flow===`billing_checkout`){if(!e.checkout_id||!e.url)throw Error(`Incomplete Airwallex billing checkout`);let t=new URL(e.url);if(t.protocol!==`https:`||t.hostname!==Q||t.username||t.password)throw Error(`Invalid Airwallex billing checkout URL`);let n=t.toString();if(N())throw Error(`Airwallex checkout is unavailable on iOS`);if(M()){await L.open({url:n});return}if(F()){let e=R();if(!e?.openAirwallexCheckout)throw Error(`Airwallex checkout requires a newer desktop app`);await e.openAirwallexCheckout(n);return}window.location.assign(n);return}if(!P())throw Error(`Airwallex PaymentIntent checkout requires HTTPS web`);if(!e.intent_id||!e.client_secret||e.currency!==`USD`||![`demo`,`prod`].includes(e.environment))throw Error(`Incomplete Airwallex PaymentIntent checkout`);let t=new URL(e.success_url);if(t.protocol!==`https:`||t.origin!==window.location.origin||t.username||t.password)throw Error(`Invalid Airwallex success URL`);let{init:n}=await I(async()=>{let{init:e}=await import(`./lib-CsvHzvqw.js`);return{init:e}},[]),{payments:r}=await n({env:e.environment,enabledElements:[`payments`]});if(!r)throw Error(`Airwallex payments SDK unavailable`);let i=r.redirectToCheckout({mode:`payment`,intent_id:e.intent_id,client_secret:e.client_secret,currency:e.currency,methods:[`card`],requiredBillingContactFields:[`name`,`email`,`address`],successUrl:t.toString(),autoCapture:!0});if(typeof i==`string`&&i)throw Error(`Airwallex checkout could not start`)}export{Y as a,J as i,X as n,Z as r,$ as t};
@@ -1 +0,0 @@
1
- import{A as e,Gt as t,I as n,Jt as r,L as i,M as a,Mt as o,N as s,Ot as c,T as l,ht as u,it as d,j as f,k as p,mt as m,p as h,st as g,tt as _,ut as v,wt as y,x as b,z as x}from"./vendor-chart-Dw-P17PN.js";import{Fo as S,Ga as C,Ho as w,Ka as T,hs as E,is as D,wo as O}from"./constants-vZG8JV9A.js";import{a as k,c as A,t as j}from"./install-Cn-SLM3u.js";import{n as M,t as N}from"./use-delayed-toggle-DhPhVV5S.js";var P=w({title:{type:String,default:``},description:{type:String,default:``},type:{type:String,values:S(T),default:`info`},closable:{type:Boolean,default:!0},closeText:{type:String,default:``},showIcon:Boolean,center:Boolean,effect:{type:String,values:[`light`,`dark`],default:`light`},...M}),F={open:()=>!0,close:e=>E(e)||e instanceof Event},I=j(k(x({...x({name:`ElAlert`}),props:P,emits:F,setup(x,{emit:S}){let w=x,{Close:E}=C,k=v(),j=A(`alert`),M=y(!1),P=p(()=>T[w.type]),F=p(()=>!!(w.description||k.default)),I=()=>{M.value=!0,S(`open`)},L=e=>{M.value=!1,S(`close`,e)},{onOpen:R,onClose:z}=N({showAfter:c(w,`showAfter`),hideAfter:c(w,`hideAfter`),autoClose:c(w,`autoClose`),open:I,close:L});return D&&R(),(c,p)=>(_(),f(h,{name:o(j).b(`fade`),persisted:``},{default:m(()=>[u(e(`div`,{class:t([o(j).b(),o(j).m(c.type),o(j).is(`center`,c.center),o(j).is(c.effect)]),role:`alert`},[c.showIcon&&(c.$slots.icon||o(P))?(_(),f(o(O),{key:0,class:t([o(j).e(`icon`),{[o(j).is(`big`)]:o(F)}])},{default:m(()=>[d(c.$slots,`icon`,{},()=>[(_(),f(g(o(P))))])]),_:3},8,[`class`])):a(`v-if`,!0),e(`div`,{class:t(o(j).e(`content`))},[c.title||c.$slots.title?(_(),s(`span`,{key:0,class:t([o(j).e(`title`),{"with-description":o(F)}])},[d(c.$slots,`title`,{},()=>[n(r(c.title),1)])],2)):a(`v-if`,!0),o(F)?(_(),s(`p`,{key:1,class:t(o(j).e(`description`))},[d(c.$slots,`default`,{},()=>[n(r(c.description),1)])],2)):a(`v-if`,!0),c.closable?(_(),s(l,{key:2},[c.closeText?(_(),s(`div`,{key:0,class:t([o(j).e(`close-btn`),o(j).is(`customed`)]),onClick:L},r(c.closeText),3)):(_(),f(o(O),{key:1,class:t(o(j).e(`close-btn`)),onClick:o(z)},{default:m(()=>[i(o(E))]),_:1},8,[`class`,`onClick`]))],64)):a(`v-if`,!0)],2)],2),[[b,M.value]])]),_:3},8,[`name`]))}}),[[`__file`,`alert.vue`]]));export{I as t};
@@ -1 +0,0 @@
1
- import{Ga as e}from"./index-BkGHnQZ_.js";var t=e(`arrow-down`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]);export{t};
@@ -1 +0,0 @@
1
- import{Ga as e}from"./index-BkGHnQZ_.js";var t=e(`arrow-left`,[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]);export{t};
@@ -1 +0,0 @@
1
- import{Ga as e}from"./index-BkGHnQZ_.js";var t=e(`arrow-right`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]);export{t};
@@ -1 +0,0 @@
1
- import{Ga as e}from"./index-BkGHnQZ_.js";var t=e(`arrow-up`,[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]);export{t};
@@ -1 +0,0 @@
1
- import{O as e,T as t,k as n}from"./i18n-Cu1HIOkL.js";import{G as r,J as i,K as a,O as o,za as s}from"./index-BkGHnQZ_.js";function c(){return new URL(`/connections/popup-return`,s()).toString()}var l=`popup=yes,width=600,height=760,noopener=no,noreferrer=no`;function u(e){let t=typeof e==`string`?e:`about:blank`,n=window.open(t,`acedata-connect`,l);return n?(typeof e!=`string`&&e.then(e=>n.location.replace(e),()=>n.close()),new Promise(e=>{let t=window.setInterval(()=>{n.closed&&(window.clearInterval(t),e())},500)})):null}async function d(r){if(!n()&&!t()&&e())return{returnUrl:new URL(`/console/connectors`,window.location.origin).toString()};if(!t())return{returnUrl:r};let i=o();if(!i?.createConnectorCallback)throw Error(`desktop-authorize-unsupported`);let a=await i.createConnectorCallback();return{returnUrl:a.returnUrl,requestId:a.requestId}}async function f(e,r,i){if(t())return h(e,r,i);if(n()){await m(e,r);return}await p(e,r)}async function p(t,n){let i=n||r(t)?a(t,n):t;if(e()){window.location.href=await i;return}let o=u(i);if(!o){window.location.href=await i;return}await o}async function m(e,t){let n;try{let r,o=new Promise(e=>{r=e});n=await i.addListener(`browserFinished`,r);let s=await a(e,t);await i.open({url:s}),await o}finally{await n?.remove()}}async function h(e,t,n){let r=o();if(!r?.openAuthorizeConnector||!r.onConnectorCallback||!n)throw Error(`desktop-authorize-unsupported`);let i=await a(e,t),s,c,l=new Promise((e,t)=>{c=r.onConnectorCallback(t=>{t.requestId===n&&e(t)}),s=window.setTimeout(()=>t(Error(`desktop-authorize-expired`)),600*1e3)});try{return await r.openAuthorizeConnector(i),await l}finally{c?.(),s!==void 0&&window.clearTimeout(s)}}export{d as n,c as r,f as t};
@@ -1 +0,0 @@
1
- import{A as e,B as t,G as n,Gt as r,H as i,I as a,Jt as o,K as s,Mt as c,N as l,Ot as u,Q as d,Rt as f,St as ee,T as p,U as m,Vt as h,Wt as g,Y as _,ft as v,ht as y,it as b,j as x,k as S,mt as C,nt as w,p as T,pt as E,tt as D,wt as O,x as te,z as k}from"./vendor-chart-Dw-P17PN.js";import{Ho as A,Ja as j,Ko as M,Oo as N,To as P,Uo as F,Ya as I,Za as L,_s as R,es as ne,hs as z,ko as B,ls as re,ms as V,po as ie,qo as H,wo as ae}from"./constants-vZG8JV9A.js";import{a as U,c as W,i as G,t as oe}from"./install-Cn-SLM3u.js";import{t as se}from"./tooltip-PKpFyAlh.js";import{b as K,x as ce}from"./models-C0YjUFNo.js";import{r as q}from"./aria-8oQuUBWy.js";import{n as J}from"./vnode-BD7Nn-ke.js";import{t as Y}from"./click-outside-BX-xQEUw.js";import{t as le}from"./collapse-transition-BUGXhx7B.js";import{oo as ue}from"./index-BkGHnQZ_.js";var de=class{constructor(e,t){this.parent=e,this.domNode=t,this.subIndex=0,this.subIndex=0,this.init()}init(){this.subMenuItems=this.domNode.querySelectorAll(`li`),this.addListeners()}gotoSubIndex(e){e===this.subMenuItems.length?e=0:e<0&&(e=this.subMenuItems.length-1),this.subMenuItems[e].focus(),this.subIndex=e}addListeners(){let e=this.parent.domNode;Array.prototype.forEach.call(this.subMenuItems,t=>{t.addEventListener(`keydown`,t=>{let n=!1;switch(t.code){case K.down:this.gotoSubIndex(this.subIndex+1),n=!0;break;case K.up:this.gotoSubIndex(this.subIndex-1),n=!0;break;case K.tab:q(e,`mouseleave`);break;case K.enter:case K.numpadEnter:case K.space:n=!0,t.currentTarget.click();break}return n&&(t.preventDefault(),t.stopPropagation()),!1})})}},fe=class{constructor(e,t){this.domNode=e,this.submenu=null,this.submenu=null,this.init(t)}init(e){this.domNode.setAttribute(`tabindex`,`0`);let t=this.domNode.querySelector(`.${e}-menu`);t&&(this.submenu=new de(this,t)),this.addListeners()}addListeners(){this.domNode.addEventListener(`keydown`,e=>{let t=!1;switch(e.code){case K.down:q(e.currentTarget,`mouseenter`),this.submenu&&this.submenu.gotoSubIndex(0),t=!0;break;case K.up:q(e.currentTarget,`mouseenter`),this.submenu&&this.submenu.gotoSubIndex(this.submenu.subMenuItems.length-1),t=!0;break;case K.tab:q(e.currentTarget,`mouseleave`);break;case K.enter:case K.numpadEnter:case K.space:t=!0,e.currentTarget.click();break}t&&e.preventDefault()})}},pe=class{constructor(e,t){this.domNode=e,this.init(t)}init(e){let t=this.domNode.childNodes;Array.from(t).forEach(t=>{t.nodeType===1&&new fe(t,e)})}},me=U(k({...k({name:`ElMenuCollapseTransition`}),setup(e){let t=W(`menu`),r={onBeforeEnter:e=>e.style.opacity=`0.2`,onEnter(e,n){P(e,`${t.namespace.value}-opacity-transition`),e.style.opacity=`1`,n()},onAfterEnter(e){B(e,`${t.namespace.value}-opacity-transition`),e.style.opacity=``},onBeforeLeave(e){e.dataset||={},N(e,t.m(`collapse`))?(B(e,t.m(`collapse`)),e.dataset.oldOverflow=e.style.overflow,e.dataset.scrollWidth=e.clientWidth.toString(),P(e,t.m(`collapse`))):(P(e,t.m(`collapse`)),e.dataset.oldOverflow=e.style.overflow,e.dataset.scrollWidth=e.clientWidth.toString(),B(e,t.m(`collapse`))),e.style.width=`${e.scrollWidth}px`,e.style.overflow=`hidden`},onLeave(e){P(e,`horizontal-collapse-transition`),e.style.width=`${e.dataset.scrollWidth}px`}};return(e,t)=>(D(),x(T,n({mode:`out-in`},c(r)),{default:C(()=>[b(e.$slots,`default`)]),_:3},16))}}),[[`__file`,`menu-collapse-transition.vue`]]);function he(e,t){let n=S(()=>{let n=e.parent,r=[t.value];for(;n.type.name!==`ElMenu`;)n.props.index&&r.unshift(n.props.index),n=n.parent;return r});return{parentMenu:S(()=>{let t=e.parent;for(;t&&![`ElMenu`,`ElSubMenu`].includes(t.type.name);)t=t.parent;return t}),indexPath:n}}function ge(e){return S(()=>{let t=e.backgroundColor;return t?new ue(t).shade(20).toString():``})}var _e=(e,t)=>{let n=W(`menu`);return S(()=>n.cssVarBlock({"text-color":e.textColor||``,"hover-text-color":e.textColor||``,"bg-color":e.backgroundColor||``,"hover-bg-color":ge(e).value||``,"active-color":e.activeTextColor||``,level:`${t}`}))},X=`rootMenu`,Z=`subMenu:`,ve=A({index:{type:String,required:!0},showTimeout:Number,hideTimeout:Number,popperClass:String,disabled:Boolean,teleported:{type:Boolean,default:void 0},popperOffset:Number,expandCloseIcon:{type:j},expandOpenIcon:{type:j},collapseCloseIcon:{type:j},collapseOpenIcon:{type:j}}),Q=`ElSubMenu`,ye=k({name:Q,props:ve,setup(e,{slots:n,expose:r}){let a=t(),{indexPath:o,parentMenu:s}=he(a,S(()=>e.index)),c=W(`menu`),l=W(`sub-menu`),u=m(X);u||H(Q,`can not inject root menu`);let f=m(`${Z}${s.value.uid}`);f||H(Q,`can not inject sub menu`);let h=O({}),b=O({}),x,C=O(!1),T=O(),E=O(),D=S(()=>R.value===`horizontal`&&A.value?`bottom-start`:`right-start`),k=S(()=>R.value===`horizontal`&&A.value||R.value===`vertical`&&!u.props.collapse?e.expandCloseIcon&&e.expandOpenIcon?P.value?e.expandOpenIcon:e.expandCloseIcon:I:e.collapseCloseIcon&&e.collapseOpenIcon?P.value?e.collapseOpenIcon:e.collapseCloseIcon:L),A=S(()=>f.level===0),j=S(()=>{let t=e.teleported;return z(t)?A.value:t}),M=S(()=>u.props.collapse?`${c.namespace.value}-zoom-in-left`:`${c.namespace.value}-zoom-in-top`),N=S(()=>R.value===`horizontal`&&A.value?[`bottom-start`,`bottom-end`,`top-start`,`top-end`,`right-start`,`left-start`]:[`right-start`,`right`,`right-end`,`left-start`,`bottom-start`,`bottom-end`,`top-start`,`top-end`]),P=S(()=>u.openedMenus.includes(e.index)),F=S(()=>[...Object.values(h.value),...Object.values(b.value)].some(({active:e})=>e)),R=S(()=>u.props.mode),ne=S(()=>u.props.persistent),B=ee({index:e.index,indexPath:o,active:F}),V=_e(u.props,f.level+1),ie=S(()=>e.popperOffset??u.props.popperOffset),U=S(()=>e.popperClass??u.props.popperClass),G=S(()=>e.showTimeout??u.props.showTimeout),oe=S(()=>e.hideTimeout??u.props.hideTimeout),K=()=>(E.value?.popperRef?.popperInstanceRef)?.destroy(),ce=e=>{e||K()},q=()=>{u.props.menuTrigger===`hover`&&u.props.mode===`horizontal`||u.props.collapse&&u.props.mode===`vertical`||e.disabled||u.handleSubMenuClick({index:e.index,indexPath:o.value,active:F.value})},J=(t,n=G.value)=>{var r;if(t.type!==`focus`){if(u.props.menuTrigger===`click`&&u.props.mode===`horizontal`||!u.props.collapse&&u.props.mode===`vertical`||e.disabled){f.mouseInChild.value=!0;return}f.mouseInChild.value=!0,x?.(),{stop:x}=re(()=>{u.openMenu(e.index,o.value)},n),j.value&&((r=s.value.vnode.el)==null||r.dispatchEvent(new MouseEvent(`mouseenter`)))}},Y=(t=!1)=>{var n;if(u.props.menuTrigger===`click`&&u.props.mode===`horizontal`||!u.props.collapse&&u.props.mode===`vertical`){f.mouseInChild.value=!1;return}x?.(),f.mouseInChild.value=!1,{stop:x}=re(()=>!C.value&&u.closeMenu(e.index,o.value),oe.value),j.value&&t&&((n=f.handleMouseleave)==null||n.call(f,!0))};return v(()=>u.props.collapse,e=>ce(!!e)),w(`${Z}${a.uid}`,{addSubMenu:e=>{b.value[e.index]=e},removeSubMenu:e=>{delete b.value[e.index]},handleMouseleave:Y,mouseInChild:C,level:f.level+1}),r({opened:P}),d(()=>{u.addSubMenu(B),f.addSubMenu(B)}),_(()=>{f.removeSubMenu(B),u.removeSubMenu(B)}),()=>{let t=[n.title?.call(n),i(ae,{class:l.e(`icon-arrow`),style:{transform:P.value?e.expandCloseIcon&&e.expandOpenIcon||e.collapseCloseIcon&&e.collapseOpenIcon&&u.props.collapse?`none`:`rotateZ(180deg)`:`none`}},{default:()=>g(k.value)?i(a.appContext.components[k.value]):i(k.value)})],r=u.isMenuPopup?i(se,{ref:E,visible:P.value,effect:`light`,pure:!0,offset:ie.value,showArrow:!1,persistent:ne.value,popperClass:U.value,placement:D.value,teleported:j.value,fallbackPlacements:N.value,transition:M.value,gpuAcceleration:!1},{content:()=>i(`div`,{class:[c.m(R.value),c.m(`popup-container`),U.value],onMouseenter:e=>J(e,100),onMouseleave:()=>Y(!0),onFocus:e=>J(e,100)},[i(`ul`,{class:[c.b(),c.m(`popup`),c.m(`popup-${D.value}`)],style:V.value},[n.default?.call(n)])]),default:()=>i(`div`,{class:l.e(`title`),onClick:q},t)}):i(p,{},[i(`div`,{class:l.e(`title`),ref:T,onClick:q},t),i(le,{},{default:()=>y(i(`ul`,{role:`menu`,class:[c.b(),c.m(`inline`)],style:V.value},[n.default?.call(n)]),[[te,P.value]])})]);return i(`li`,{class:[l.b(),l.is(`active`,F.value),l.is(`opened`,P.value),l.is(`disabled`,e.disabled)],role:`menuitem`,ariaHaspopup:!0,ariaExpanded:P.value,onMouseenter:J,onMouseleave:()=>Y(),onFocus:J},[r])}}}),be=A({mode:{type:String,values:[`horizontal`,`vertical`],default:`vertical`},defaultActive:{type:String,default:``},defaultOpeneds:{type:F(Array),default:()=>ce([])},uniqueOpened:Boolean,router:Boolean,menuTrigger:{type:String,values:[`hover`,`click`],default:`hover`},collapse:Boolean,backgroundColor:String,textColor:String,activeTextColor:String,closeOnClickOutside:Boolean,collapseTransition:{type:Boolean,default:!0},ellipsis:{type:Boolean,default:!0},popperOffset:{type:Number,default:6},ellipsisIcon:{type:j,default:()=>ie},popperEffect:{type:F(String),default:`dark`},popperClass:String,showTimeout:{type:Number,default:300},hideTimeout:{type:Number,default:300},persistent:{type:Boolean,default:!0}}),xe=e=>f(e)&&e.every(e=>g(e)),Se=k({name:`ElMenu`,props:be,emits:{close:(e,t)=>g(e)&&xe(t),open:(e,t)=>g(e)&&xe(t),select:(e,t,n,r)=>g(e)&&xe(t)&&h(n)&&(z(r)||r instanceof Promise)},setup(e,{emit:n,slots:r,expose:a}){let o=t(),c=o.appContext.config.globalProperties.$router,l=O(),u=W(`menu`),f=W(`sub-menu`),p=O(-1),m=O(e.defaultOpeneds&&!e.collapse?e.defaultOpeneds.slice(0):[]),h=O(e.defaultActive),g=O({}),_=O({}),b=S(()=>e.mode===`horizontal`||e.mode===`vertical`&&e.collapse),x=()=>{let t=h.value&&g.value[h.value];!t||e.mode===`horizontal`||e.collapse||t.indexPath.forEach(e=>{let t=_.value[e];t&&C(e,t.indexPath)})},C=(t,r)=>{m.value.includes(t)||(e.uniqueOpened&&(m.value=m.value.filter(e=>r.includes(e))),m.value.push(t),n(`open`,t,r))},T=e=>{let t=m.value.indexOf(e);t!==-1&&m.value.splice(t,1)},D=(e,t)=>{T(e),n(`close`,e,t)},te=({index:e,indexPath:t})=>{m.value.includes(e)?D(e,t):C(e,t)},k=t=>{(e.mode===`horizontal`||e.collapse)&&(m.value=[]);let{index:r,indexPath:i}=t;if(!(R(r)||R(i)))if(e.router&&c){let e=t.route||r,a=c.push(e).then(e=>(e||(h.value=r),e));n(`select`,r,i,{index:r,indexPath:i,route:e},a)}else h.value=r,n(`select`,r,i,{index:r,indexPath:i})},A=t=>{let n=g.value;h.value=(n[t]||h.value&&n[h.value]||n[e.defaultActive])?.index??t},j=e=>{let t=getComputedStyle(e),n=Number.parseInt(t.marginLeft,10),r=Number.parseInt(t.marginRight,10);return e.offsetWidth+n+r||0},M=()=>{if(!l.value)return-1;let e=Array.from(l.value?.childNodes??[]).filter(e=>e.nodeName!==`#text`||e.nodeValue),t=getComputedStyle(l.value),n=Number.parseInt(t.paddingLeft,10),r=Number.parseInt(t.paddingRight,10),i=l.value.clientWidth-n-r,a=0,o=0;return e.forEach((e,t)=>{e.nodeName!==`#comment`&&(a+=j(e),a<=i-64&&(o=t+1))}),o===e.length?-1:o},N=e=>_.value[e].indexPath,P=(e,t=33.34)=>{let n;return()=>{n&&clearTimeout(n),n=setTimeout(()=>{e()},t)}},F=!0,I=()=>{if(p.value===M())return;let e=()=>{p.value=-1,s(()=>{p.value=M()})};F?e():P(e)(),F=!1};v(()=>e.defaultActive,e=>{g.value[e]||(h.value=``),A(e)}),v(()=>e.collapse,e=>{e&&(m.value=[])}),v(g.value,x);let L;E(()=>{e.mode===`horizontal`&&e.ellipsis?L=ne(l,I).stop:L?.()});let z=O(!1);{let t=e=>{_.value[e.index]=e},n=e=>{delete _.value[e.index]};w(X,ee({props:e,openedMenus:m,items:g,subMenus:_,activeIndex:h,isMenuPopup:b,addMenuItem:e=>{g.value[e.index]=e},removeMenuItem:e=>{delete g.value[e.index]},addSubMenu:t,removeSubMenu:n,openMenu:C,closeMenu:D,handleMenuItemClick:k,handleSubMenuClick:te})),w(`${Z}${o.uid}`,{addSubMenu:t,removeSubMenu:n,mouseInChild:z,level:0})}d(()=>{e.mode===`horizontal`&&new pe(o.vnode.el,u.namespace.value)}),a({open:e=>{let{indexPath:t}=_.value[e];t.forEach(e=>C(e,t))},close:T,updateActiveIndex:A,handleResize:I});let B=_e(e,0);return()=>{let t=r.default?.call(r)??[],a=[];if(e.mode===`horizontal`&&l.value){let n=J(t),r=p.value===-1?n:n.slice(0,p.value),o=p.value===-1?[]:n.slice(p.value);o?.length&&e.ellipsis&&(t=r,a.push(i(ye,{index:`sub-menu-more`,class:f.e(`hide-arrow`),popperOffset:e.popperOffset},{title:()=>i(ae,{class:f.e(`icon-more`)},{default:()=>i(e.ellipsisIcon)}),default:()=>o})))}let o=e.closeOnClickOutside?[[Y,()=>{m.value.length&&(z.value||(m.value.forEach(e=>n(`close`,e,N(e))),m.value=[]))}]]:[],s=y(i(`ul`,{key:String(e.collapse),role:`menubar`,ref:l,style:B.value,class:{[u.b()]:!0,[u.m(e.mode)]:!0,[u.m(`collapse`)]:e.collapse}},[...t,...a]),o);return e.collapseTransition&&e.mode===`vertical`?i(me,()=>s):s}}}),Ce=A({index:{type:F([String,null]),default:null},route:{type:F([String,Object])},disabled:Boolean}),we={click:e=>g(e.index)&&f(e.indexPath)},$=`ElMenuItem`,Te=U(k({...k({name:$}),props:Ce,emits:we,setup(n,{expose:i,emit:a}){let o=n;V(o.index)&&M($,`Missing required prop: "index"`);let s=t(),f=m(X),h=W(`menu`),g=W(`menu-item`);f||H($,`can not inject root menu`);let{parentMenu:v,indexPath:y}=he(s,u(o,`index`)),w=m(`${Z}${v.value.uid}`);w||H($,`can not inject sub menu`);let T=S(()=>o.index===f.activeIndex),E=ee({index:o.index,indexPath:y,active:T}),O=()=>{o.disabled||(f.handleMenuItemClick({index:o.index,indexPath:y.value,route:o.route}),a(`click`,E))};return d(()=>{w.addSubMenu(E),f.addMenuItem(E)}),_(()=>{w.removeSubMenu(E),f.removeMenuItem(E)}),i({parentMenu:v,rootMenu:f,active:T,nsMenu:h,nsMenuItem:g,handleClick:O}),(t,n)=>(D(),l(`li`,{class:r([c(g).b(),c(g).is(`active`,c(T)),c(g).is(`disabled`,t.disabled)]),role:`menuitem`,tabindex:`-1`,onClick:O},[c(v).type.name===`ElMenu`&&c(f).props.collapse&&t.$slots.title?(D(),x(c(se),{key:0,effect:c(f).props.popperEffect,placement:`right`,"fallback-placements":[`left`],persistent:c(f).props.persistent},{content:C(()=>[b(t.$slots,`title`)]),default:C(()=>[e(`div`,{class:r(c(h).be(`tooltip`,`trigger`))},[b(t.$slots,`default`)],2)]),_:3},8,[`effect`,`persistent`])):(D(),l(p,{key:1},[b(t.$slots,`default`),b(t.$slots,`title`)],64))],2))}}),[[`__file`,`menu-item.vue`]]),Ee={title:String},De=U(k({...k({name:`ElMenuItemGroup`}),props:Ee,setup(t){let n=W(`menu-item-group`);return(t,i)=>(D(),l(`li`,{class:r(c(n).b())},[e(`div`,{class:r(c(n).e(`title`))},[t.$slots.title?b(t.$slots,`title`,{key:1}):(D(),l(p,{key:0},[a(o(t.title),1)],64))],2),e(`ul`,null,[b(t.$slots,`default`)])],2))}}),[[`__file`,`menu-item-group.vue`]]),Oe=oe(Se,{MenuItem:Te,MenuItemGroup:De,SubMenu:ye}),ke=G(Te);G(De);var Ae=G(ye),je=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALQAAAC0CAMAAAAKE/YAAAAAMFBMVEX///+3t7f4+Pi8vLzAwMDExMTS0tLIyMjk5OTz8/PY2NjOzs7u7u7d3d3p6enh4eFVKkJDAAAIfUlEQVR4nNVd15akOAylyRRQ9f9/O02BZJtgBQszfR/2zPahsJCvguVUFJYop35ux66pq6r6+fn9T910bTv3U2najBXK9zw2PxE07fz+n0Qf+raOyetL3g9PS7vgzRUYULfvZyXuR5nAgLF/SuK3UuJN7gf0PbyErDiieuU1zKmLyFJ3Y9u+vmh//V9dXT/b5VN3f+HbFq82nGivHH6999Vv8rC7P+NFzfBlF56xvl/sEy1Xbc8mZ9m3R7bcrO0jl+vXJH7J0YY78UvYKNuDjpWNTQd9tzd5ks9ePUm92u877WMlp4dhR+Y2OYkYdh3XmKclc9iATVwoXyFLZouXIobuBpEXlK+QcYbK7gOF2NpMaN2Vmfdr71LGirAbW5N3lr4F1rckC0GQbQw6cqrM1XACvzOr5EjT+2q+L24Vk6/sRGL7no6t5un9eQE+7JG4r+wk3+e9iGfXwzyeZHLjzDGFt0fEBB564ymOeRwzCg8dHaZ9kx8NZGZ8+UyOv0bSW3o9q5Tac5+0luajjGfqpsT2krIuTeaKZGQf4UUIKpx6xFbo2nGD9HSlpJZAGfSQILVjV02Z4CQsJhD2UdbcJ/dwyRfpNvozwaLo4q/0nMhLIrMThJSZZ4EhiJd6Ugti43SvzCTlPKnZmUNZMV+u4cYKwp85XlfcTBi/s6Z+MZ2LxADhGZzUDU9m5zjIr0woQhLxasAHWS7E9TgZU/Z1EBEIjbzxQYYxOudOxu73qTBcUGEaIzqD1hi96W6JTgzRoDSI/UhmITP7yUPFSYqaagD1R4wJkP8VnT8nTwVQqnauN06QjvtCvYt2IL3Zm/Uk9jjDz0RmMLggwx3SOuIUSniGpJv3bAJo1SAFr9mKH8aI+LqkI0RFtoIh9/L76Cc8GLCDoxxSjyAHgxxFYSEzJ18Ggly4YHQHnCQ2LRoCGINXQirim0JYUJpDatf/p24PP4mVwSblSg6MEhDGuzNVg6J5o8nEvAPAGZiAfk5MDRXNqxcmx/AVHPMprx8G1TEHwOzqTByseTgoDRxYDT6akSh9YSMzr6aLidOeTGCj3EqDkdC8GU9Q9c6voYlyJzxy0sOxOnRs8C3sQpSR92DOO4EDCXkAzoA935bPTy8AIgTBCIIyvyZsExF/uM2Byfk9A7VafuksfdyygFmJcc35NZ7tT5xUYMNwJYcI/FouGP7xOyT1YBOh+aVcsCHHBWCHZHLTxOfxF6ZA8HP82P7ASv4BJj5PMNMO/g3+H9ghqrtnGm4hIJLAd7byVxg5asGCA+AH2N2meYHvKPxZmQRIGtyMaOMweC/ZXJJJdJE0CF27Bm0oK8kWLKSWHxeILB8s7xN8gmxFi0VIFAkNqd5KiI3S7JBqJ7Ssycb70vAL2LAofMiE9hkBrQvX4OTXNLS4eGpwA8KlaxaGKHOy4OWWcSVoXSZz9ohYYLaxpB8bv4V2aFGeFiYOvqTb74V2mHkQ8IXjBKhMuKrMJIoLOQlmVGIiIlyPmXdguwJ6d8J/CZ1H0m4iB1Gr4D569HjCZalPaNoxeWtd5jKf4TRkpy30syh3KbLXPVZsWdIIQUK6dO8Jl+dkbUB6GfRranwIWx3hUzeVi5fRmggtDA6b/dWO3ELkLiF4QldqoXOPxhe8QOjt57LUpXhguGUhtEUFUtq9EBzUQluQWrphIV1oA1JLm0R6VFqh0z21eH30XmjFdofbF14dgC5PG1zS0w9pjuYFF2UYL9KHiXJGYhhXJkwLEk1RvrEMZVWmpgvSVC1XtEtNlYOAL1JYrdESOg3lcGtFQsVGs+Nu++msHdiu0BNEQQ5vYKssIWxQx3JNc1AqnbTFmg3qSoKmYz0mb//S7QDU1k5Vdu+VSnUFyA3aBES1ca9zkqb4PPVQUUVG74OVRfUNSqencXh+UR1sUnfqgy6+qLrVn75QThRt0I26VG0FU4dbRNfE1ULpqVVBIZBTN/kJ0PBDxY6QEbpp5v27JFCxI5xm1k3oIxT+Q+Wowgl93dIJhHzqVrW5erd0QrdIxUE8wFXxcL9IBXSlSRcLuSnq3NR+OZBq4ZWD1FXr8sn9wivVEjcPwtVuKtd6XOKmWUzoQeY/dCczHBcTKpZtnr2QB104gN70ukm+QNaHzBJV7DhbIAt/040ERMMXnbUDAwOtgvZVsUo0KaCi9Omib/SCqleKhE7KSsNIIt7IkFXoi40MSBrNO28X+ooHOKxWqPpuoVHRh7FDo3+pyHsorOZyG5R0w5kPUZmJffYFIrLhTLi1DzFJT0X+aWaZ3JGtfcJNlCvesTOuIpAcLBrdRIms5g4s+jFlM0PFPYY6ul1VtDG4PJzwqQHnGGpKKlA1fVKN0VqxX31Tx1DjOTBXaRFvs3vaWdkniPIEF3hdGgEmxpev0VpeHNf8ZuiROMBhet0hMch9qkogR2wXbeSojHI22jd5ifp1cLbY9dHB8NWhJCbOgkYzBxpFzxH3wu74F++ro8ckWsM7a5l7/IuzVnAxJX1MojGQ3shHslKCPPimY+b+jYfmU0qONPIOj5rzK9lDi33OyQttVpEaglXXMFoabQVmqny3QxaBW4opM3o4CtwDJazWGZtAUMi12ONkAtGMrNGS/1QI5yb+CxciLmc8EwoDKEokefK6CBKPRf47Mj/MEIujvv+MzA/6kKQLCR7y18q5Y8AjiWryrR1T9uwp/RqJ3YUdGWBxYUeR2RzN7gThn6ifCrtLaA7X/dwG4xtusvg+24uVihzKtr/Cqrh7OFPdcVlYcXItmyHS7x67ROwyxxTceAHegqsLHVOQ4WLH00sdE5DhUsev2IbaznR95gKrCnDGi0oXDOmTRrmvhP3i712+u+LvXXO84u9dKL2Cf3V33X7+i6u7N/y5S9IdvOvoF0G/19GP9tfR/wPQ21eEI8clLwAAAABJRU5ErkJggg==`;export{Ae as i,Oe as n,ke as r,je as t};
@@ -1 +0,0 @@
1
- import{Gt as e,Mt as t,N as n,Wt as r,ft as i,it as a,j as o,k as s,mt as c,qt as l,st as u,tt as d,wt as f,z as p}from"./vendor-chart-Dw-P17PN.js";import{Bo as m,Eo as h,Ho as g,Ja as _,Uo as v,ps as y,wo as b}from"./constants-vZG8JV9A.js";import{a as x,c as S,t as C}from"./install-Cn-SLM3u.js";var w=g({size:{type:[Number,String],values:m,default:``,validator:e=>y(e)},shape:{type:String,values:[`circle`,`square`],default:`circle`},icon:{type:_},src:{type:String,default:``},alt:String,srcSet:String,fit:{type:v(String),default:`cover`}}),T={error:e=>e instanceof Event},E=C(x(p({...p({name:`ElAvatar`}),props:w,emits:T,setup(p,{emit:m}){let g=p,_=S(`avatar`),v=f(!1),x=s(()=>{let{size:e,icon:t,shape:n}=g,i=[_.b()];return r(e)&&i.push(_.m(e)),t&&i.push(_.m(`icon`)),n&&i.push(_.m(n)),i}),C=s(()=>{let{size:e}=g;return y(e)?_.cssVarBlock({size:h(e)||``}):void 0}),w=s(()=>({objectFit:g.fit}));i(()=>g.src,()=>v.value=!1);function T(e){v.value=!0,m(`error`,e)}return(r,i)=>(d(),n(`span`,{class:e(t(x)),style:l(t(C))},[(r.src||r.srcSet)&&!v.value?(d(),n(`img`,{key:0,src:r.src,alt:r.alt,srcset:r.srcSet,style:l(t(w)),onError:T},null,44,[`src`,`alt`,`srcset`])):r.icon?(d(),o(t(b),{key:1},{default:c(()=>[(d(),o(u(r.icon)))]),_:1})):a(r.$slots,`default`,{key:2})],6))}}),[[`__file`,`avatar.vue`]]));export{E as t};
@@ -1 +0,0 @@
1
- var e={"title.list":{message:`사용자 정의 API 키`,description:``},"title.addCredential":{message:`API 키 추가`,description:``},"title.editCredential":{message:`API 키 편집`,description:``},"title.deleteCredential":{message:`API 키 삭제`,description:``},"description.list":{message:`자신의 서비스 제공업체 API 키(예: OpenAI, Anthropic, Google, xAI, DeepSeek, Moonshot, Zhiyu)를 사용하여 플랫폼 계정 풀을 대체합니다. 설정 후, 해당 모델의 대화 요청은 직접 귀하의 키로 상위 서비스 제공업체를 호출하며, 플랫폼 크레딧을 소모하지 않습니다; 도구 호출, 참조, 아티팩트, 클라우드 기록 등 다른 기능은 정상적으로 작동합니다.`,description:``},"field.provider":{message:`서비스 제공업체`,description:``},"field.label":{message:`메모`,description:``},"field.labelPlaceholder":{message:`"내 작업 번호" (선택 사항)`,description:``},"field.apiKey":{message:`API 키`,description:``},"field.apiKeyPlaceholder":{message:`sk-...`,description:``},"field.apiKeyEditPlaceholder":{message:`현재 키를 유지하려면 비워 두세요`,description:``},"field.baseUrl":{message:`사용자 정의 기본 URL`,description:``},"field.baseUrlPlaceholder":{message:`비워 두면 서비스 제공업체의 기본 주소를 사용합니다`,description:``},"field.isActive":{message:`활성화`,description:``},"field.lastUsedAt":{message:`마지막 사용`,description:``},"field.createdAt":{message:`추가 시간`,description:``},"value.active":{message:`활성화됨`,description:``},"value.inactive":{message:`비활성화됨`,description:``},"value.never":{message:`한 번도 사용하지 않음`,description:``},"value.default":{message:`기본`,description:``},"button.add":{message:`API 키 추가`,description:``},"button.test":{message:`테스트`,description:``},"message.deleteConfirm":{message:`이 API 키를 삭제하시겠습니까? 이후 {provider} 모델의 대화는 플랫폼 기본 상위로 돌아갑니다.`,description:``},"message.deleteSuccess":{message:`API 키가 삭제되었습니다.`,description:``},"message.saveSuccess":{message:`API 키가 저장되었습니다.`,description:``},"message.testSuccess":{message:`연결이 정상입니다.`,description:``},"message.testFailed":{message:`테스트 실패: {message}`,description:``},"message.loadFailed":{message:`자격 증명 로드 실패.`,description:``},"message.saveFailed":{message:`자격 증명 저장 실패.`,description:``},"message.empty":{message:`아직 사용자 정의 API 키가 구성되지 않았습니다. "API 키 추가"를 클릭하여 자신의 서비스 제공업체 계정을 사용하세요.`,description:``},"message.advancedToggle":{message:`고급 옵션 표시`,description:``},"message.baseUrlHelp":{message:`선택 사항. 사용자 정의 상위 주소(예: OpenRouter, 자체 리버스 프록시, 기업 게이트웨이 등). HTTPS만 허용되며, 내부 네트워크/루프백 주소를 가리킬 수 없습니다.`,description:``},"badge.active":{message:`사용자 정의 {provider} API 키 사용 중`,description:``},"badge.tooltip":{message:`현재 대화는 귀하의 {provider} API 키를 사용하고 있으며, 비용은 {provider} 계정에서 정산되며, 플랫폼 잔액은 차감되지 않습니다.`,description:``},"badge.manage":{message:`클릭하면 API 키 설정을 엽니다`,description:`채팅 페이지 BYOK 배지 클릭 후의 팁: 클릭하여 설정 대화 상자의 API 키 탭을 엽니다.`},"button.testConnection":{message:`테스트`,description:`새로 추가/편집 대화 상자 내의 버튼 - 현재 양식 구성을 테스트하며, 자격 증명을 저장하지 않습니다.`},"test.success":{message:`연결 테스트 성공`,description:`연결성 테스트 결과 구역의 성공 제목.`},"test.failure":{message:`연결성 테스트 실패`,description:`연결성 테스트 결과 구역의 실패 제목.`},"test.endpoint":{message:`요청 주소`,description:`테스트 결과 세부 정보의 요청 URL 레이블.`},"test.status":{message:`상태 코드`,description:`테스트 결과 세부 정보의 HTTP 상태 코드 레이블.`},"test.message":{message:`상위 응답`,description:`테스트 결과 세부 정보의 상위 오류/알림 텍스트 레이블.`},"providerDesc.openai":{message:`본 사이트의 ChatGPT(GPT-4 / GPT-4o / o1 / o3 등) 대화 요청을 대체합니다.`,description:`제공업체 드롭다운의 OpenAI 옵션의 부제목.`},"providerDesc.anthropic":{message:`본 사이트의 Claude(Sonnet / Opus / Haiku 등) 대화 요청을 대체합니다.`,description:`제공업체 드롭다운의 Anthropic 옵션의 부제목.`},"providerDesc.google":{message:`본 사이트의 Gemini(Pro / Flash 시리즈) 대화 요청을 대체합니다.`,description:`제공업체 드롭다운의 Google 옵션의 부제목.`},"providerDesc.xai":{message:`본 사이트의 Grok 대화 요청을 대체합니다.`,description:`제공업체 드롭다운의 xAI 옵션의 부제목.`},"providerDesc.deepseek":{message:`본 사이트의 DeepSeek(V3 / R1 등) 대화 요청을 대체합니다.`,description:`제공업체 드롭다운의 DeepSeek 옵션의 부제목.`},"providerDesc.moonshot":{message:`이 사이트의 Kimi 대화 요청을 대체합니다.`,description:`제공자 드롭다운에서 Moonshot (Kimi) 옵션의 부제목.`},"providerDesc.zhipu":{message:`이 사이트의 GLM 시리즈 대화 요청을 대체합니다.`,description:`제공자 드롭다운에서 Zhipu (GLM) 옵션의 부제목.`}};export{e as default};
@@ -1 +0,0 @@
1
- var e={"title.list":{message:`Clé API personnalisée`,description:``},"title.addCredential":{message:`Ajouter une clé API`,description:``},"title.editCredential":{message:`Modifier la clé API`,description:``},"title.deleteCredential":{message:`Supprimer la clé API`,description:``},"description.list":{message:`Utilisez votre propre clé API de fournisseur (OpenAI, Anthropic, Google, xAI, DeepSeek, Moonshot, Zhiyu) à la place du pool de comptes de la plateforme. Une fois configuré, les requêtes de dialogue pour le modèle correspondant appelleront directement le fournisseur en amont avec votre clé, sans consommer de crédits de la plateforme ; les appels d'outils, références, artefacts, historique cloud et autres fonctionnalités fonctionneront normalement.`,description:``},"field.provider":{message:`Fournisseur`,description:``},"field.label":{message:`Remarque`,description:``},"field.labelPlaceholder":{message:`Ex. "Mon numéro de travail" (facultatif)`,description:``},"field.apiKey":{message:`Clé API`,description:``},"field.apiKeyPlaceholder":{message:`sk-...`,description:``},"field.apiKeyEditPlaceholder":{message:`Laissez vide pour conserver la clé actuelle`,description:``},"field.baseUrl":{message:`URL de base personnalisée`,description:``},"field.baseUrlPlaceholder":{message:`Laissez vide pour utiliser l'adresse par défaut du fournisseur`,description:``},"field.isActive":{message:`Activer`,description:``},"field.lastUsedAt":{message:`Dernière utilisation`,description:``},"field.createdAt":{message:`Date d'ajout`,description:``},"value.active":{message:`Activé`,description:``},"value.inactive":{message:`Désactivé`,description:``},"value.never":{message:`Jamais utilisé`,description:``},"value.default":{message:`Par défaut`,description:``},"button.add":{message:`Ajouter une clé API`,description:``},"button.test":{message:`Tester`,description:``},"message.deleteConfirm":{message:`Confirmer la suppression de cette clé API ? Les dialogues du modèle {provider} reviendront à la plateforme par défaut.`,description:``},"message.deleteSuccess":{message:`Clé API supprimée.`,description:``},"message.saveSuccess":{message:`Clé API enregistrée.`,description:``},"message.testSuccess":{message:`Connexion réussie.`,description:``},"message.testFailed":{message:`Échec du test : {message}`,description:``},"message.loadFailed":{message:`Échec du chargement des informations d'identification.`,description:``},"message.saveFailed":{message:`Échec de l'enregistrement des informations d'identification.`,description:``},"message.empty":{message:`Aucune clé API personnalisée configurée. Cliquez sur "Ajouter une clé API" pour utiliser votre propre compte fournisseur.`,description:``},"message.advancedToggle":{message:`Afficher les options avancées`,description:``},"message.baseUrlHelp":{message:`Facultatif. Adresse en amont personnalisée (pour OpenRouter, reverse proxy auto-hébergé, passerelle d'entreprise, etc.). Autorise uniquement HTTPS, ne peut pas pointer vers des adresses internes/loopback.`,description:``},"badge.active":{message:`Utilisation de la clé API personnalisée {provider}`,description:``},"badge.tooltip":{message:`Le dialogue actuel utilise votre clé API {provider}, les frais sont facturés sur le compte {provider}, sans déduction du solde de la plateforme.`,description:``},"badge.manage":{message:`Cliquez pour ouvrir les paramètres de la clé API`,description:`Alerte après avoir cliqué sur le badge BYOK sur la page de chat : cliquez pour ouvrir l'onglet des paramètres de la clé API.`},"button.testConnection":{message:`Tester`,description:`Bouton dans la boîte de dialogue d'ajout/modification - teste uniquement la configuration actuelle du formulaire, sans enregistrer les informations d'identification.`},"test.success":{message:`Test de connectivité réussi`,description:`Titre de succès dans la section des résultats du test de connectivité.`},"test.failure":{message:`Échec du test de connectivité`,description:`Titre d'échec dans la section des résultats du test de connectivité.`},"test.endpoint":{message:`Adresse de la requête`,description:`Étiquette de l'URL de requête dans les détails des résultats du test.`},"test.status":{message:`Code d'état`,description:`Étiquette du code d'état HTTP dans les détails des résultats du test.`},"test.message":{message:`Réponse en amont`,description:`Étiquette du texte d'erreur/notification en amont dans les détails des résultats du test.`},"providerDesc.openai":{message:`Remplace les requêtes de dialogue ChatGPT (GPT-4 / GPT-4o / o1 / o3, etc.) sur ce site.`,description:`Sous-titre de l'option OpenAI dans le menu déroulant des fournisseurs.`},"providerDesc.anthropic":{message:`Remplace les requêtes de dialogue Claude (Sonnet / Opus / Haiku, etc.) sur ce site.`,description:`Sous-titre de l'option Anthropic dans le menu déroulant des fournisseurs.`},"providerDesc.google":{message:`Remplace les requêtes de dialogue Gemini (Pro / Flash) sur ce site.`,description:`Sous-titre de l'option Google dans le menu déroulant des fournisseurs.`},"providerDesc.xai":{message:`Remplace les requêtes de dialogue Grok sur ce site.`,description:`Sous-titre de l'option xAI dans le menu déroulant des fournisseurs.`},"providerDesc.deepseek":{message:`Remplace les requêtes de dialogue DeepSeek (V3 / R1, etc.) sur ce site.`,description:`Sous-titre de l'option DeepSeek dans le menu déroulant des fournisseurs.`},"providerDesc.moonshot":{message:`Remplacer la demande de conversation Kimi sur ce site.`,description:`Sous-titre de l'option Moonshot (Kimi) dans le menu déroulant des fournisseurs.`},"providerDesc.zhipu":{message:`Remplacer les requêtes de dialogue de la série GLM sur ce site.`,description:`Sous-titre de l'option Zhipu (GLM) dans le menu déroulant des fournisseurs.`}};export{e as default};
@@ -1 +0,0 @@
1
- var e={"title.list":{message:`Custom API Key`,description:``},"title.addCredential":{message:`Add API Key`,description:``},"title.editCredential":{message:`Edit API Key`,description:``},"title.deleteCredential":{message:`Delete API Key`,description:``},"description.list":{message:`Use your own service provider API Key (OpenAI, Anthropic, Google, xAI, DeepSeek, Moonshot, Zhiyu) instead of the platform account pool. Once configured, the dialogue requests for the corresponding model will directly call the upstream service provider with your Key, without consuming platform credits; tool calls, references, artifacts, cloud history, and other functions will work as usual.`,description:``},"field.provider":{message:`Provider`,description:``},"field.label":{message:`Label`,description:``},"field.labelPlaceholder":{message:`e.g. "My Work ID" (optional)`,description:``},"field.apiKey":{message:`API Key`,description:``},"field.apiKeyPlaceholder":{message:`sk-...`,description:``},"field.apiKeyEditPlaceholder":{message:`Leave blank to keep current Key unchanged`,description:``},"field.baseUrl":{message:`Custom Base URL`,description:``},"field.baseUrlPlaceholder":{message:`Leave blank to use provider's default address`,description:``},"field.isActive":{message:`Active`,description:``},"field.lastUsedAt":{message:`Last Used`,description:``},"field.createdAt":{message:`Added On`,description:``},"value.active":{message:`Active`,description:``},"value.inactive":{message:`Inactive`,description:``},"value.never":{message:`Never Used`,description:``},"value.default":{message:`Default`,description:``},"button.add":{message:`Add API Key`,description:``},"button.test":{message:`Test`,description:``},"message.deleteConfirm":{message:`Confirm deletion of this API Key? Subsequent {provider} model dialogues will revert to the platform's default upstream.`,description:``},"message.deleteSuccess":{message:`API Key has been deleted.`,description:``},"message.saveSuccess":{message:`API Key has been saved.`,description:``},"message.testSuccess":{message:`Connection is normal.`,description:``},"message.testFailed":{message:`Test failed: {message}`,description:``},"message.loadFailed":{message:`Failed to load credentials.`,description:``},"message.saveFailed":{message:`Failed to save credentials.`,description:``},"message.empty":{message:`No custom API Key configured yet. Click "Add API Key" to use your own service provider account.`,description:``},"message.advancedToggle":{message:`Show Advanced Options`,description:``},"message.baseUrlHelp":{message:`Optional. Custom upstream address (for OpenRouter, self-built reverse proxy, enterprise gateway, etc.). Only HTTPS is allowed, cannot point to internal network/loopback addresses.`,description:``},"badge.active":{message:`Using custom {provider} API Key`,description:``},"badge.tooltip":{message:`The current dialogue is using your {provider} API Key, with costs settled by the {provider} account, not deducted from platform balance.`,description:``},"badge.manage":{message:`Click to open API Key settings`,description:`Prompt after clicking the BYOK badge on the chat page: Click to open the API Key tab in the settings dialog.`},"button.testConnection":{message:`Test`,description:`Button in the add/edit dialog—only tests the current form configuration, does not save credentials.`},"test.success":{message:`Connectivity test successful`,description:`Success title in the connectivity test results area.`},"test.failure":{message:`Connectivity test failed`,description:`Failure title in the connectivity test results area.`},"test.endpoint":{message:`Request URL`,description:`Label for the request URL in the test results details.`},"test.status":{message:`Status Code`,description:`Label for the HTTP status code in the test results details.`},"test.message":{message:`Upstream Response`,description:`Label for the upstream error/message text in the test results details.`},"providerDesc.openai":{message:`Replace ChatGPT (GPT-4 / GPT-4o / o1 / o3, etc.) dialogue requests on this site.`,description:`Subtitle for the OpenAI option in the provider dropdown.`},"providerDesc.anthropic":{message:`Replace Claude (Sonnet / Opus / Haiku, etc.) dialogue requests on this site.`,description:`Subtitle for the Anthropic option in the provider dropdown.`},"providerDesc.google":{message:`Replace Gemini (Pro / Flash series) dialogue requests on this site.`,description:`Subtitle for the Google option in the provider dropdown.`},"providerDesc.xai":{message:`Replace Grok dialogue requests on this site.`,description:`Subtitle for the xAI option in the provider dropdown.`},"providerDesc.deepseek":{message:`Replace DeepSeek (V3 / R1, etc.) dialogue requests on this site.`,description:`Subtitle for the DeepSeek option in the provider dropdown.`},"providerDesc.moonshot":{message:`Replace Kimi conversation requests on this site.`,description:`Subtitle for the Moonshot (Kimi) option in the provider dropdown.`},"providerDesc.zhipu":{message:`Replace the site's GLM series dialogue requests.`,description:`Subtitle for the Zhipu (GLM) option in the provider dropdown.`}};export{e as default};
@@ -1 +0,0 @@
1
- var e={"title.list":{message:`Настраиваемый API Key`,description:``},"title.addCredential":{message:`Добавить API Key`,description:``},"title.editCredential":{message:`Редактировать API Key`,description:``},"title.deleteCredential":{message:`Удалить API Key`,description:``},"description.list":{message:`Используйте свой собственный API Key от провайдера (OpenAI, Anthropic, Google, xAI, DeepSeek, Moonshot, Zhiyu) вместо учетной записи платформы. После настройки запросы к моделям будут напрямую использовать ваш Key для вызова услуг провайдера, не расходуя кредиты платформы; другие функции, такие как вызовы инструментов, ссылки, артефакты, облачная история и т.д., будут работать как обычно.`,description:``},"field.provider":{message:`Провайдер`,description:``},"field.label":{message:`Заметка`,description:``},"field.labelPlaceholder":{message:`Например, "Мой рабочий номер" (необязательно)`,description:``},"field.apiKey":{message:`API Key`,description:``},"field.apiKeyPlaceholder":{message:`sk-...`,description:``},"field.apiKeyEditPlaceholder":{message:`Оставьте пустым, чтобы сохранить текущий Key`,description:``},"field.baseUrl":{message:`Настраиваемый Base URL`,description:``},"field.baseUrlPlaceholder":{message:`Оставьте пустым для использования адреса по умолчанию провайдера`,description:``},"field.isActive":{message:`Активен`,description:``},"field.lastUsedAt":{message:`Последнее использование`,description:``},"field.createdAt":{message:`Дата добавления`,description:``},"value.active":{message:`Активен`,description:``},"value.inactive":{message:`Неактивен`,description:``},"value.never":{message:`Никогда не использовался`,description:``},"value.default":{message:`По умолчанию`,description:``},"button.add":{message:`Добавить API Key`,description:``},"button.test":{message:`Тестировать`,description:``},"message.deleteConfirm":{message:`Подтвердите удаление этого API Key? Последующие запросы к модели {provider} будут возвращены к стандартному провайдеру платформы.`,description:``},"message.deleteSuccess":{message:`API Key удален.`,description:``},"message.saveSuccess":{message:`API Key сохранен.`,description:``},"message.testSuccess":{message:`Соединение в порядке.`,description:``},"message.testFailed":{message:`Тест не удался: {message}`,description:``},"message.loadFailed":{message:`Не удалось загрузить учетные данные.`,description:``},"message.saveFailed":{message:`Не удалось сохранить учетные данные.`,description:``},"message.empty":{message:`Настраиваемый API Key еще не настроен. Нажмите "Добавить API Key", чтобы использовать свою учетную запись провайдера.`,description:``},"message.advancedToggle":{message:`Показать дополнительные параметры`,description:``},"message.baseUrlHelp":{message:`Необязательно. Настраиваемый адрес провайдера (для OpenRouter, самодельного прокси, корпоративного шлюза и т.д.). Разрешен только HTTPS, не может указывать на внутренние/петлевые адреса.`,description:``},"badge.active":{message:`Используется настраиваемый {provider} API Key`,description:``},"badge.tooltip":{message:`Текущий диалог использует ваш {provider} API Key, расходы оплачиваются с учетной записи {provider}, не уменьшая баланс платформы.`,description:``},"badge.manage":{message:`Нажмите, чтобы открыть настройки API Key`,description:`Подсказка при нажатии на значок BYOK на странице чата: нажмите, чтобы открыть вкладку настроек API Key.`},"button.testConnection":{message:`Тестировать`,description:`Кнопка в диалоговом окне добавления/редактирования — только тестирует текущую конфигурацию формы, не сохраняет учетные данные.`},"test.success":{message:`Тест соединения успешен`,description:`Заголовок успешного результата теста соединения.`},"test.failure":{message:`Тест соединения не удался`,description:`Заголовок неудачного результата теста соединения.`},"test.endpoint":{message:`Адрес запроса`,description:`Метка URL запроса в деталях результата теста.`},"test.status":{message:`Код состояния`,description:`Метка HTTP кода состояния в деталях результата теста.`},"test.message":{message:`Ответ провайдера`,description:`Метка текста ошибки/подсказки провайдера в деталях результата теста.`},"providerDesc.openai":{message:`Заменяет запросы к ChatGPT (GPT-4 / GPT-4o / o1 / o3 и т.д.) на этом сайте.`,description:`Подзаголовок для опции OpenAI в выпадающем списке провайдеров.`},"providerDesc.anthropic":{message:`Заменяет запросы к Claude (Sonnet / Opus / Haiku и т.д.) на этом сайте.`,description:`Подзаголовок для опции Anthropic в выпадающем списке провайдеров.`},"providerDesc.google":{message:`Заменяет запросы к Gemini (Pro / Flash серии) на этом сайте.`,description:`Подзаголовок для опции Google в выпадающем списке провайдеров.`},"providerDesc.xai":{message:`Заменяет запросы к Grok на этом сайте.`,description:`Подзаголовок для опции xAI в выпадающем списке провайдеров.`},"providerDesc.deepseek":{message:`Заменяет запросы к DeepSeek (V3 / R1 и т.д.) на этом сайте.`,description:`Подзаголовок для опции DeepSeek в выпадающем списке провайдеров.`},"providerDesc.moonshot":{message:`Заменить запросы на диалог Kimi на этом сайте.`,description:`Подзаголовок для опции Moonshot (Kimi) в выпадающем списке провайдеров.`},"providerDesc.zhipu":{message:`Заменяет запросы на диалог GLM серии на этом сайте.`,description:`Подзаголовок для опции Zhipu (GLM) в выпадающем списке провайдеров.`}};export{e as default};
@@ -1 +0,0 @@
1
- var e={"title.list":{message:`مفتاح API مخصص`,description:``},"title.addCredential":{message:`إضافة مفتاح API`,description:``},"title.editCredential":{message:`تعديل مفتاح API`,description:``},"title.deleteCredential":{message:`حذف مفتاح API`,description:``},"description.list":{message:`استخدم مفتاح API الخاص بمزود الخدمة الخاص بك (OpenAI، Anthropic، Google، xAI، DeepSeek، Moonshot، Zhiyu) بدلاً من مجموعة حسابات المنصة. بعد التكوين، ستتم معالجة طلبات المحادثة للنموذج المعني مباشرة باستخدام مفتاحك، دون استهلاك رصيد المنصة؛ ستعمل أدوات الاستدعاء، والمراجع، والأعمال، والسجل السحابي كما هو معتاد.`,description:``},"field.provider":{message:`مزود الخدمة`,description:``},"field.label":{message:`ملاحظات`,description:``},"field.labelPlaceholder":{message:`مثل "رقم عملي" (اختياري)`,description:``},"field.apiKey":{message:`مفتاح API`,description:``},"field.apiKeyPlaceholder":{message:`sk-...`,description:``},"field.apiKeyEditPlaceholder":{message:`اتركه فارغًا للحفاظ على المفتاح الحالي`,description:``},"field.baseUrl":{message:`عنوان URL أساسي مخصص`,description:``},"field.baseUrlPlaceholder":{message:`اتركه فارغًا لاستخدام عنوان المزود الافتراضي`,description:``},"field.isActive":{message:`مفعل`,description:``},"field.lastUsedAt":{message:`آخر استخدام`,description:``},"field.createdAt":{message:`تاريخ الإضافة`,description:``},"value.active":{message:`مفعل`,description:``},"value.inactive":{message:`غير مفعل`,description:``},"value.never":{message:`لم يتم استخدامه أبدًا`,description:``},"value.default":{message:`افتراضي`,description:``},"button.add":{message:`إضافة مفتاح API`,description:``},"button.test":{message:`اختبار`,description:``},"message.deleteConfirm":{message:`هل تؤكد حذف مفتاح API هذا؟ ستعود محادثات نموذج {provider} إلى الافتراضي.`,description:``},"message.deleteSuccess":{message:`تم حذف مفتاح API.`,description:``},"message.saveSuccess":{message:`تم حفظ مفتاح API.`,description:``},"message.testSuccess":{message:`الاتصال جيد.`,description:``},"message.testFailed":{message:`فشل الاختبار: {message}`,description:``},"message.loadFailed":{message:`فشل تحميل الاعتماديات.`,description:``},"message.saveFailed":{message:`فشل حفظ الاعتماديات.`,description:``},"message.empty":{message:`لم يتم تكوين مفتاح API مخصص بعد. انقر على "إضافة مفتاح API" لاستخدام حساب مزود الخدمة الخاص بك.`,description:``},"message.advancedToggle":{message:`عرض الخيارات المتقدمة`,description:``},"message.baseUrlHelp":{message:`اختياري. عنوان مخصص للمزود (لـ OpenRouter، أو عكس البناء، أو بوابة الشركات، إلخ). يسمح فقط بـ HTTPS، ولا يمكن أن يشير إلى عنوان داخلي/حلقي.`,description:``},"badge.active":{message:`يتم استخدام مفتاح API مخصص {provider}`,description:``},"badge.tooltip":{message:`المحادثة الحالية تستخدم مفتاح API الخاص بك من {provider}، والتكاليف يتم تسويتها من حساب {provider}، دون خصم من رصيد المنصة.`,description:``},"badge.manage":{message:`انقر لفتح إعدادات مفتاح API`,description:`تلميح عند النقر على شارة BYOK في صفحة الدردشة: انقر لفتح علامة تبويب إعدادات مفتاح API.`},"button.testConnection":{message:`اختبار`,description:`زر في مربع الحوار الجديد/التعديل - فقط اختبر تكوين النموذج الحالي، دون حفظ الاعتماديات.`},"test.success":{message:`اختبار الاتصال ناجح`,description:`عنوان النجاح في منطقة نتائج اختبار الاتصال.`},"test.failure":{message:`اختبار الاتصال فشل`,description:`عنوان الفشل في منطقة نتائج اختبار الاتصال.`},"test.endpoint":{message:`عنوان الطلب`,description:`علامة URL الطلب في تفاصيل نتائج الاختبار.`},"test.status":{message:`رمز الحالة`,description:`علامة رمز الحالة HTTP في تفاصيل نتائج الاختبار.`},"test.message":{message:`استجابة المزود`,description:`علامة نص الخطأ/التلميح من المزود في تفاصيل نتائج الاختبار.`},"providerDesc.openai":{message:`استبدال طلبات المحادثة لـ ChatGPT (GPT-4 / GPT-4o / o1 / o3، إلخ) في هذا الموقع.`,description:`العنوان الفرعي لخيار OpenAI في قائمة المزودين.`},"providerDesc.anthropic":{message:`استبدال طلبات المحادثة لـ Claude (Sonnet / Opus / Haiku، إلخ) في هذا الموقع.`,description:`العنوان الفرعي لخيار Anthropic في قائمة المزودين.`},"providerDesc.google":{message:`استبدال طلبات المحادثة لـ Gemini (Pro / Flash) في هذا الموقع.`,description:`العنوان الفرعي لخيار Google في قائمة المزودين.`},"providerDesc.xai":{message:`استبدال طلبات المحادثة لـ Grok في هذا الموقع.`,description:`العنوان الفرعي لخيار xAI في قائمة المزودين.`},"providerDesc.deepseek":{message:`استبدال طلبات المحادثة لـ DeepSeek (V3 / R1، إلخ) في هذا الموقع.`,description:`العنوان الفرعي لخيار DeepSeek في قائمة المزودين.`},"providerDesc.moonshot":{message:`استبدال طلبات محادثة Kimi في هذا الموقع.`,description:`العنوان الفرعي لخيار Moonshot (Kimi) في القائمة المنسدلة للمزود.`},"providerDesc.zhipu":{message:`استبدال طلبات المحادثة لسلسلة GLM الخاصة بالموقع.`,description:`العنوان الفرعي لخيار Zhipu (GLM) في القائمة المنسدلة لمزود الخدمة.`}};export{e as default};
@@ -1 +0,0 @@
1
- var e={"title.list":{message:`自訂 API 金鑰`,description:``},"title.addCredential":{message:`新增 API 金鑰`,description:``},"title.editCredential":{message:`編輯 API 金鑰`,description:``},"title.deleteCredential":{message:`刪除 API 金鑰`,description:``},"description.list":{message:`使用您自己的服務商 API 金鑰(OpenAI、Anthropic、Google、xAI、DeepSeek、Moonshot、智譜)取代平臺帳戶池。配置後,對應模型的對話請求將直接以您的金鑰呼叫上游服務商,不消耗平臺信用;工具呼叫、引用、工件、雲端歷史等其他功能照常運作。`,description:``},"field.provider":{message:`服務商`,description:``},"field.label":{message:`備註`,description:``},"field.labelPlaceholder":{message:`如 "我的工作號"(可選)`,description:``},"field.apiKey":{message:`API 金鑰`,description:``},"field.apiKeyPlaceholder":{message:`sk-...`,description:``},"field.apiKeyEditPlaceholder":{message:`留空表示保持當前金鑰不變`,description:``},"field.baseUrl":{message:`自訂 Base URL`,description:``},"field.baseUrlPlaceholder":{message:`留空使用服務商預設地址`,description:``},"field.isActive":{message:`啟用`,description:``},"field.lastUsedAt":{message:`上次使用`,description:``},"field.createdAt":{message:`新增時間`,description:``},"value.active":{message:`啟用中`,description:``},"value.inactive":{message:`未啟用`,description:``},"value.never":{message:`從未使用`,description:``},"value.default":{message:`預設`,description:``},"button.add":{message:`新增 API 金鑰`,description:``},"button.test":{message:`測試`,description:``},"message.deleteConfirm":{message:`確認刪除這個 API 金鑰?後續 {provider} 模型的對話將回落到平臺預設上游。`,description:``},"message.deleteSuccess":{message:`API 金鑰已刪除。`,description:``},"message.saveSuccess":{message:`API 金鑰已儲存。`,description:``},"message.testSuccess":{message:`連線正常。`,description:``},"message.testFailed":{message:`測試失敗:{message}`,description:``},"message.loadFailed":{message:`憑據載入失敗。`,description:``},"message.saveFailed":{message:`儲存憑據失敗。`,description:``},"message.empty":{message:`尚未配置自訂 API 金鑰。點選"新增 API 金鑰"以使用您自己的服務商帳戶。`,description:``},"message.advancedToggle":{message:`顯示進階選項`,description:``},"message.baseUrlHelp":{message:`可選。自訂上游地址(用於 OpenRouter、自建反向代理、企業閘道器等)。僅允許 HTTPS,不能指向內網/回環地址。`,description:``},"badge.active":{message:`正在使用自訂 {provider} API 金鑰`,description:``},"badge.tooltip":{message:`當前對話正在使用您的 {provider} API 金鑰,費用由 {provider} 帳戶結算,不扣減平臺餘額。`,description:``},"badge.manage":{message:`點選可開啟 API 金鑰設定`,description:`聊天頁面 BYOK 徽章點選後的提示:點選開啟設定對話方塊的 API 金鑰選項卡。`},"button.testConnection":{message:`測試`,description:`新增/編輯對話方塊中的按鈕——只測試當前表單配置,不儲存憑據。`},"test.success":{message:`連通性測試成功`,description:`連通性測試結果區的成功標題。`},"test.failure":{message:`連通性測試失敗`,description:`連通性測試結果區的失敗標題。`},"test.endpoint":{message:`請求地址`,description:`測試結果詳情中的請求 URL 標籤。`},"test.status":{message:`狀態碼`,description:`測試結果詳情中的 HTTP 狀態碼標籤。`},"test.message":{message:`上游響應`,description:`測試結果詳情中的上游錯誤/提示文字標籤。`},"providerDesc.openai":{message:`替換本站 ChatGPT(GPT-4 / GPT-4o / o1 / o3 等)對話請求。`,description:`提供商下拉裡 OpenAI 選項的副標題。`},"providerDesc.anthropic":{message:`替換本站 Claude(Sonnet / Opus / Haiku 等)對話請求。`,description:`提供商下拉裡 Anthropic 選項的副標題。`},"providerDesc.google":{message:`替換本站 Gemini(Pro / Flash 系列)對話請求。`,description:`提供商下拉裡 Google 選項的副標題。`},"providerDesc.xai":{message:`替換本站 Grok 對話請求。`,description:`提供商下拉裡 xAI 選項的副標題。`},"providerDesc.deepseek":{message:`替換本站 DeepSeek(V3 / R1 等)對話請求。`,description:`提供商下拉裡 DeepSeek 選項的副標題。`},"providerDesc.moonshot":{message:`替換本站 Kimi 對話請求。`,description:`提供商下拉裡 Moonshot (Kimi) 選項的副標題。`},"providerDesc.zhipu":{message:`替換本站 GLM 系列對話請求。`,description:`提供商下拉裡 Zhipu (GLM) 選項的副標題。`}};export{e as default};
@@ -1 +0,0 @@
1
- var e={"title.list":{message:`カスタム API キー`,description:``},"title.addCredential":{message:`API キーを追加`,description:``},"title.editCredential":{message:`API キーを編集`,description:``},"title.deleteCredential":{message:`API キーを削除`,description:``},"description.list":{message:`自分のサービスプロバイダーの API キー(OpenAI、Anthropic、Google、xAI、DeepSeek、Moonshot、智谱)を使用して、プラットフォームアカウントプールの代わりにします。設定後、対応するモデルの対話リクエストは直接あなたのキーで上流サービスプロバイダーを呼び出し、プラットフォームのクレジットを消費しません。ツールの呼び出し、参照、アーティファクト、クラウド履歴などの他の機能は通常通り動作します。`,description:``},"field.provider":{message:`プロバイダー`,description:``},"field.label":{message:`メモ`,description:``},"field.labelPlaceholder":{message:`"私の作業番号"(任意)`,description:``},"field.apiKey":{message:`API キー`,description:``},"field.apiKeyPlaceholder":{message:`sk-...`,description:``},"field.apiKeyEditPlaceholder":{message:`空白の場合は現在のキーを保持`,description:``},"field.baseUrl":{message:`カスタムベース URL`,description:``},"field.baseUrlPlaceholder":{message:`空白の場合はプロバイダーのデフォルトアドレスを使用`,description:``},"field.isActive":{message:`有効`,description:``},"field.lastUsedAt":{message:`最終使用`,description:``},"field.createdAt":{message:`追加日時`,description:``},"value.active":{message:`有効`,description:``},"value.inactive":{message:`無効`,description:``},"value.never":{message:`未使用`,description:``},"value.default":{message:`デフォルト`,description:``},"button.add":{message:`API キーを追加`,description:``},"button.test":{message:`テスト`,description:``},"message.deleteConfirm":{message:`この API キーを削除してもよろしいですか?以降の {provider} モデルの対話はプラットフォームのデフォルトに戻ります。`,description:``},"message.deleteSuccess":{message:`API キーが削除されました。`,description:``},"message.saveSuccess":{message:`API キーが保存されました。`,description:``},"message.testSuccess":{message:`接続正常。`,description:``},"message.testFailed":{message:`テスト失敗:{message}`,description:``},"message.loadFailed":{message:`資格情報の読み込みに失敗しました。`,description:``},"message.saveFailed":{message:`資格情報の保存に失敗しました。`,description:``},"message.empty":{message:`カスタム API キーがまだ設定されていません。「API キーを追加」をクリックして、自分のサービスプロバイダーアカウントを使用してください。`,description:``},"message.advancedToggle":{message:`高度なオプションを表示`,description:``},"message.baseUrlHelp":{message:`任意。カスタム上流アドレス(OpenRouter、自前のリバースプロキシ、企業ゲートウェイなどに使用)。HTTPS のみ許可され、内部ネットワーク/ループバックアドレスを指すことはできません。`,description:``},"badge.active":{message:`{provider} API キーを使用中`,description:``},"badge.tooltip":{message:`現在の対話はあなたの {provider} API キーを使用しており、費用は {provider} アカウントで決済され、プラットフォームの残高は減少しません。`,description:``},"badge.manage":{message:`クリックすると API キー設定が開きます`,description:`チャットページの BYOK バッジをクリックした後のヒント:設定ダイアログの API キータブを開くためにクリックします。`},"button.testConnection":{message:`テスト`,description:`新規/編集ダイアログ内のボタン——現在のフォーム設定のみをテストし、資格情報は保存しません。`},"test.success":{message:`接続テスト成功`,description:`接続テスト結果セクションの成功タイトル。`},"test.failure":{message:`接続テスト失敗`,description:`接続テスト結果セクションの失敗タイトル。`},"test.endpoint":{message:`リクエストアドレス`,description:`テスト結果詳細のリクエスト URL ラベル。`},"test.status":{message:`ステータスコード`,description:`テスト結果詳細の HTTP ステータスコードラベル。`},"test.message":{message:`上流応答`,description:`テスト結果詳細の上流エラー/メッセージテキストラベル。`},"providerDesc.openai":{message:`当サイトの ChatGPT(GPT-4 / GPT-4o / o1 / o3 など)の対話リクエストを置き換えます。`,description:`プロバイダーのドロップダウン内の OpenAI オプションのサブタイトル。`},"providerDesc.anthropic":{message:`当サイトの Claude(Sonnet / Opus / Haiku など)の対話リクエストを置き換えます。`,description:`プロバイダーのドロップダウン内の Anthropic オプションのサブタイトル。`},"providerDesc.google":{message:`当サイトの Gemini(Pro / Flash シリーズ)の対話リクエストを置き換えます。`,description:`プロバイダーのドロップダウン内の Google オプションのサブタイトル。`},"providerDesc.xai":{message:`当サイトの Grok の対話リクエストを置き換えます。`,description:`プロバイダーのドロップダウン内の xAI オプションのサブタイトル。`},"providerDesc.deepseek":{message:`当サイトの DeepSeek(V3 / R1 など)の対話リクエストを置き換えます。`,description:`プロバイダーのドロップダウン内の DeepSeek オプションのサブタイトル。`},"providerDesc.moonshot":{message:`このサイトの Kimi の対話リクエストを置き換えます。`,description:`プロバイダーのドロップダウンにある Moonshot (Kimi) オプションのサブタイトル。`},"providerDesc.zhipu":{message:`当サイトのGLMシリーズの対話リクエストを置き換えます。`,description:`提供者のドロップダウンにあるZhipu (GLM)オプションのサブタイトル。`}};export{e as default};
@@ -1 +0,0 @@
1
- var e={"title.list":{message:`Clave API personalizada`,description:``},"title.addCredential":{message:`Agregar clave API`,description:``},"title.editCredential":{message:`Editar clave API`,description:``},"title.deleteCredential":{message:`Eliminar clave API`,description:``},"description.list":{message:`Usa tu propia clave API de proveedor (OpenAI, Anthropic, Google, xAI, DeepSeek, Moonshot, Zhiyu) en lugar del pool de cuentas de la plataforma. Una vez configurado, las solicitudes de conversación del modelo correspondiente se realizarán directamente con tu clave a los proveedores, sin consumir créditos de la plataforma; las funciones de herramientas, referencias, artefactos, historial en la nube, etc., funcionarán normalmente.`,description:``},"field.provider":{message:`Proveedor`,description:``},"field.label":{message:`Nota`,description:``},"field.labelPlaceholder":{message:`Ej. "Mi número de trabajo" (opcional)`,description:``},"field.apiKey":{message:`Clave API`,description:``},"field.apiKeyPlaceholder":{message:`sk-...`,description:``},"field.apiKeyEditPlaceholder":{message:`Dejar en blanco para mantener la clave actual`,description:``},"field.baseUrl":{message:`URL base personalizada`,description:``},"field.baseUrlPlaceholder":{message:`Dejar en blanco para usar la dirección predeterminada del proveedor`,description:``},"field.isActive":{message:`Activar`,description:``},"field.lastUsedAt":{message:`Último uso`,description:``},"field.createdAt":{message:`Fecha de adición`,description:``},"value.active":{message:`Activo`,description:``},"value.inactive":{message:`Inactivo`,description:``},"value.never":{message:`Nunca usado`,description:``},"value.default":{message:`Predeterminado`,description:``},"button.add":{message:`Agregar clave API`,description:``},"button.test":{message:`Probar`,description:``},"message.deleteConfirm":{message:`¿Confirmar la eliminación de esta clave API? Las conversaciones del modelo {provider} volverán a la configuración predeterminada de la plataforma.`,description:``},"message.deleteSuccess":{message:`Clave API eliminada.`,description:``},"message.saveSuccess":{message:`Clave API guardada.`,description:``},"message.testSuccess":{message:`Conexión exitosa.`,description:``},"message.testFailed":{message:`Prueba fallida: {message}`,description:``},"message.loadFailed":{message:`Error al cargar las credenciales.`,description:``},"message.saveFailed":{message:`Error al guardar las credenciales.`,description:``},"message.empty":{message:`Aún no se ha configurado una clave API personalizada. Haz clic en "Agregar clave API" para usar tu propia cuenta de proveedor.`,description:``},"message.advancedToggle":{message:`Mostrar opciones avanzadas`,description:``},"message.baseUrlHelp":{message:`Opcional. Dirección personalizada del proveedor (para OpenRouter, proxy propio, puerta de enlace empresarial, etc.). Solo se permite HTTPS, no puede apuntar a direcciones internas/loopback.`,description:``},"badge.active":{message:`Usando clave API personalizada de {provider}`,description:``},"badge.tooltip":{message:`La conversación actual está usando tu clave API de {provider}, los costos se facturan a la cuenta de {provider}, no se deduce del saldo de la plataforma.`,description:``},"badge.manage":{message:`Haz clic para abrir la configuración de la clave API`,description:`Sugerencia al hacer clic en el distintivo BYOK en la página de chat: haz clic para abrir la pestaña de configuración de la clave API.`},"button.testConnection":{message:`Probar`,description:`Botón en el cuadro de diálogo de agregar/editar: solo prueba la configuración actual del formulario, no guarda las credenciales.`},"test.success":{message:`Prueba de conectividad exitosa`,description:`Título de éxito en la sección de resultados de conectividad.`},"test.failure":{message:`Prueba de conectividad fallida`,description:`Título de fallo en la sección de resultados de conectividad.`},"test.endpoint":{message:`Dirección de solicitud`,description:`Etiqueta de URL de solicitud en los detalles de resultados de prueba.`},"test.status":{message:`Código de estado`,description:`Etiqueta de código de estado HTTP en los detalles de resultados de prueba.`},"test.message":{message:`Respuesta del proveedor`,description:`Etiqueta de texto de error/sugerencia del proveedor en los detalles de resultados de prueba.`},"providerDesc.openai":{message:`Reemplaza las solicitudes de conversación de ChatGPT (GPT-4 / GPT-4o / o1 / o3, etc.) en este sitio.`,description:`Subtítulo de la opción OpenAI en el menú desplegable de proveedores.`},"providerDesc.anthropic":{message:`Reemplaza las solicitudes de conversación de Claude (Sonnet / Opus / Haiku, etc.) en este sitio.`,description:`Subtítulo de la opción Anthropic en el menú desplegable de proveedores.`},"providerDesc.google":{message:`Reemplaza las solicitudes de conversación de Gemini (Pro / Flash series) en este sitio.`,description:`Subtítulo de la opción Google en el menú desplegable de proveedores.`},"providerDesc.xai":{message:`Reemplaza las solicitudes de conversación de Grok en este sitio.`,description:`Subtítulo de la opción xAI en el menú desplegable de proveedores.`},"providerDesc.deepseek":{message:`Reemplaza las solicitudes de conversación de DeepSeek (V3 / R1, etc.) en este sitio.`,description:`Subtítulo de la opción DeepSeek en el menú desplegable de proveedores.`},"providerDesc.moonshot":{message:`Reemplaza la solicitud de conversación de Kimi en este sitio.`,description:`Subtítulo de la opción Moonshot (Kimi) en el menú desplegable de proveedores.`},"providerDesc.zhipu":{message:`Reemplaza las solicitudes de conversación de la serie GLM de este sitio.`,description:`Subtítulo de la opción Zhipu (GLM) en el menú desplegable de proveedores.`}};export{e as default};
@@ -1 +0,0 @@
1
- var e={"title.list":{message:`自定义 API Key`,description:``},"title.addCredential":{message:`添加 API Key`,description:``},"title.editCredential":{message:`编辑 API Key`,description:``},"title.deleteCredential":{message:`删除 API Key`,description:``},"description.list":{message:`使用你自己的服务商 API Key(OpenAI、Anthropic、Google、xAI、DeepSeek、Moonshot、智谱)代替平台账户池。配置后,对应模型的对话请求会直接以你的 Key 调用上游服务商,不消耗平台 Credit;工具调用、引用、工件、云端历史等其他功能照常工作。`,description:``},"field.provider":{message:`服务商`,description:``},"field.label":{message:`备注`,description:``},"field.labelPlaceholder":{message:`如 "我的工作号"(可选)`,description:``},"field.apiKey":{message:`API Key`,description:``},"field.apiKeyPlaceholder":{message:`sk-...`,description:``},"field.apiKeyEditPlaceholder":{message:`留空表示保持当前 Key 不变`,description:``},"field.baseUrl":{message:`自定义 Base URL`,description:``},"field.baseUrlPlaceholder":{message:`留空使用服务商默认地址`,description:``},"field.isActive":{message:`启用`,description:``},"field.lastUsedAt":{message:`上次使用`,description:``},"field.createdAt":{message:`添加时间`,description:``},"value.active":{message:`启用中`,description:``},"value.inactive":{message:`未启用`,description:``},"value.never":{message:`从未使用`,description:``},"value.default":{message:`默认`,description:``},"button.add":{message:`添加 API Key`,description:``},"button.test":{message:`测试`,description:``},"message.deleteConfirm":{message:`确认删除这个 API Key?后续 {provider} 模型的对话将回落到平台默认上游。`,description:``},"message.deleteSuccess":{message:`API Key 已删除。`,description:``},"message.saveSuccess":{message:`API Key 已保存。`,description:``},"message.testSuccess":{message:`连接正常。`,description:``},"message.testFailed":{message:`测试失败:{message}`,description:``},"message.loadFailed":{message:`凭据加载失败。`,description:``},"message.saveFailed":{message:`保存凭据失败。`,description:``},"message.empty":{message:`尚未配置自定义 API Key。点击"添加 API Key"以使用你自己的服务商账户。`,description:``},"message.advancedToggle":{message:`显示高级选项`,description:``},"message.baseUrlHelp":{message:`可选。自定义上游地址(用于 OpenRouter、自建反代、企业网关等)。仅允许 HTTPS,不能指向内网/回环地址。`,description:``},"badge.active":{message:`正在使用自定义 {provider} API Key`,description:``},"badge.tooltip":{message:`当前对话正在使用你的 {provider} API Key,费用由 {provider} 账户结算,不扣减平台余额。`,description:``},"badge.manage":{message:`点击可打开 API Key 设置`,description:`聊天页面 BYOK 徽章点击后的提示:点击打开设置对话框的 API Key 选项卡。`},"button.testConnection":{message:`测试`,description:`新增/编辑对话框中的按钮——只测试当前表单配置,不保存凭据。`},"test.success":{message:`连通性测试成功`,description:`连通性测试结果区的成功标题。`},"test.failure":{message:`连通性测试失败`,description:`连通性测试结果区的失败标题。`},"test.endpoint":{message:`请求地址`,description:`测试结果详情中的请求 URL 标签。`},"test.status":{message:`状态码`,description:`测试结果详情中的 HTTP 状态码标签。`},"test.message":{message:`上游响应`,description:`测试结果详情中的上游错误/提示文本标签。`},"providerDesc.openai":{message:`替换本站 ChatGPT(GPT-4 / GPT-4o / o1 / o3 等)对话请求。`,description:`提供商下拉里 OpenAI 选项的副标题。`},"providerDesc.anthropic":{message:`替换本站 Claude(Sonnet / Opus / Haiku 等)对话请求。`,description:`提供商下拉里 Anthropic 选项的副标题。`},"providerDesc.google":{message:`替换本站 Gemini(Pro / Flash 系列)对话请求。`,description:`提供商下拉里 Google 选项的副标题。`},"providerDesc.xai":{message:`替换本站 Grok 对话请求。`,description:`提供商下拉里 xAI 选项的副标题。`},"providerDesc.deepseek":{message:`替换本站 DeepSeek(V3 / R1 等)对话请求。`,description:`提供商下拉里 DeepSeek 选项的副标题。`},"providerDesc.moonshot":{message:`替换本站 Kimi 对话请求。`,description:`提供商下拉里 Moonshot (Kimi) 选项的副标题。`},"providerDesc.zhipu":{message:`替换本站 GLM 系列对话请求。`,description:`提供商下拉里 Zhipu (GLM) 选项的副标题。`}};export{e as default};
@@ -1 +0,0 @@
1
- var e={"title.list":{message:`Chaves de API Personalizadas`,description:``},"title.addCredential":{message:`Adicionar Chave de API`,description:``},"title.editCredential":{message:`Editar Chave de API`,description:``},"title.deleteCredential":{message:`Excluir Chave de API`,description:``},"description.list":{message:`Use sua própria chave de API de provedores (OpenAI, Anthropic, Google, xAI, DeepSeek, Moonshot, Zhiyu) em vez do pool de contas da plataforma. Após a configuração, as solicitações de diálogo para o modelo correspondente serão feitas diretamente com sua chave, sem consumir créditos da plataforma; chamadas de ferramentas, referências, artefatos, histórico em nuvem e outras funcionalidades funcionarão normalmente.`,description:``},"field.provider":{message:`Provedor`,description:``},"field.label":{message:`Observação`,description:``},"field.labelPlaceholder":{message:`Ex: "Meu ID de Trabalho" (opcional)`,description:``},"field.apiKey":{message:`Chave de API`,description:``},"field.apiKeyPlaceholder":{message:`sk-...`,description:``},"field.apiKeyEditPlaceholder":{message:`Deixe em branco para manter a chave atual`,description:``},"field.baseUrl":{message:`URL Base Personalizada`,description:``},"field.baseUrlPlaceholder":{message:`Deixe em branco para usar o endereço padrão do provedor`,description:``},"field.isActive":{message:`Ativo`,description:``},"field.lastUsedAt":{message:`Último Uso`,description:``},"field.createdAt":{message:`Data de Adição`,description:``},"value.active":{message:`Ativo`,description:``},"value.inactive":{message:`Inativo`,description:``},"value.never":{message:`Nunca Usado`,description:``},"value.default":{message:`Padrão`,description:``},"button.add":{message:`Adicionar Chave de API`,description:``},"button.test":{message:`Testar`,description:``},"message.deleteConfirm":{message:`Confirmar a exclusão desta chave de API? As solicitações de diálogo do modelo {provider} voltarão para o padrão da plataforma.`,description:``},"message.deleteSuccess":{message:`Chave de API excluída.`,description:``},"message.saveSuccess":{message:`Chave de API salva.`,description:``},"message.testSuccess":{message:`Conexão bem-sucedida.`,description:``},"message.testFailed":{message:`Teste falhou: {message}`,description:``},"message.loadFailed":{message:`Falha ao carregar credenciais.`,description:``},"message.saveFailed":{message:`Falha ao salvar credenciais.`,description:``},"message.empty":{message:`Nenhuma chave de API personalizada configurada ainda. Clique em "Adicionar Chave de API" para usar sua própria conta de provedor.`,description:``},"message.advancedToggle":{message:`Mostrar opções avançadas`,description:``},"message.baseUrlHelp":{message:`Opcional. Endereço upstream personalizado (para OpenRouter, proxy próprio, gateway corporativo, etc.). Apenas HTTPS permitido, não pode apontar para endereços internos/loopback.`,description:``},"badge.active":{message:`Usando chave de API personalizada {provider}`,description:``},"badge.tooltip":{message:`A conversa atual está usando sua chave de API {provider}, com custos cobrados na conta {provider}, sem desconto no saldo da plataforma.`,description:``},"badge.manage":{message:`Clique para abrir as configurações da chave de API`,description:`Dica ao clicar no badge BYOK na página de chat: clique para abrir a aba de configurações da chave de API.`},"button.testConnection":{message:`Testar`,description:`Botão no diálogo de adicionar/editar - apenas testa a configuração atual do formulário, não salva as credenciais.`},"test.success":{message:`Teste de conectividade bem-sucedido`,description:`Título de sucesso na seção de resultados do teste de conectividade.`},"test.failure":{message:`Teste de conectividade falhou`,description:`Título de falha na seção de resultados do teste de conectividade.`},"test.endpoint":{message:`Endereço da Solicitação`,description:`Rótulo da URL da solicitação nos detalhes do resultado do teste.`},"test.status":{message:`Código de Status`,description:`Rótulo do código de status HTTP nos detalhes do resultado do teste.`},"test.message":{message:`Resposta do upstream`,description:`Rótulo do texto de erro/aviso do upstream nos detalhes do resultado do teste.`},"providerDesc.openai":{message:`Substitui as solicitações de diálogo do ChatGPT (GPT-4 / GPT-4o / o1 / o3, etc.) deste site.`,description:`Subtítulo da opção OpenAI no dropdown de provedores.`},"providerDesc.anthropic":{message:`Substitui as solicitações de diálogo do Claude (Sonnet / Opus / Haiku, etc.) deste site.`,description:`Subtítulo da opção Anthropic no dropdown de provedores.`},"providerDesc.google":{message:`Substitui as solicitações de diálogo do Gemini (séries Pro / Flash) deste site.`,description:`Subtítulo da opção Google no dropdown de provedores.`},"providerDesc.xai":{message:`Substitui as solicitações de diálogo do Grok deste site.`,description:`Subtítulo da opção xAI no dropdown de provedores.`},"providerDesc.deepseek":{message:`Substitui as solicitações de diálogo do DeepSeek (V3 / R1, etc.) deste site.`,description:`Subtítulo da opção DeepSeek no dropdown de provedores.`},"providerDesc.moonshot":{message:`Substitui o pedido de conversa Kimi deste site.`,description:`Subtítulo da opção Moonshot (Kimi) no menu suspenso do provedor.`},"providerDesc.zhipu":{message:`Substitui as solicitações de diálogo da série GLM deste site.`,description:`Subtítulo da opção Zhipu (GLM) no menu suspenso do provedor.`}};export{e as default};
@@ -1 +0,0 @@
1
- var e={"title.list":{message:`Benutzerdefinierter API-Schlüssel`,description:``},"title.addCredential":{message:`API-Schlüssel hinzufügen`,description:``},"title.editCredential":{message:`API-Schlüssel bearbeiten`,description:``},"title.deleteCredential":{message:`API-Schlüssel löschen`,description:``},"description.list":{message:`Verwende deinen eigenen API-Schlüssel von Anbietern (OpenAI, Anthropic, Google, xAI, DeepSeek, Moonshot, Zhiyu), anstelle des Plattformkontenpools. Nach der Konfiguration werden die Dialoganfragen des entsprechenden Modells direkt mit deinem Schlüssel an den Anbieter weitergeleitet, ohne Plattform-Credits zu verbrauchen; Toolaufrufe, Referenzen, Artefakte, Cloud-Historie und andere Funktionen funktionieren wie gewohnt.`,description:``},"field.provider":{message:`Anbieter`,description:``},"field.label":{message:`Notiz`,description:``},"field.labelPlaceholder":{message:`z. B. "Mein Arbeitskonto" (optional)`,description:``},"field.apiKey":{message:`API-Schlüssel`,description:``},"field.apiKeyPlaceholder":{message:`sk-...`,description:``},"field.apiKeyEditPlaceholder":{message:`Leer lassen, um den aktuellen Schlüssel beizubehalten`,description:``},"field.baseUrl":{message:`Benutzerdefinierte Basis-URL`,description:``},"field.baseUrlPlaceholder":{message:`Leer lassen, um die Standardadresse des Anbieters zu verwenden`,description:``},"field.isActive":{message:`Aktivieren`,description:``},"field.lastUsedAt":{message:`Zuletzt verwendet`,description:``},"field.createdAt":{message:`Hinzugefügt am`,description:``},"value.active":{message:`Aktiv`,description:``},"value.inactive":{message:`Inaktiv`,description:``},"value.never":{message:`Nie verwendet`,description:``},"value.default":{message:`Standard`,description:``},"button.add":{message:`API-Schlüssel hinzufügen`,description:``},"button.test":{message:`Testen`,description:``},"message.deleteConfirm":{message:`Möchten Sie diesen API-Schlüssel wirklich löschen? Zukünftige Dialoge mit dem {provider}-Modell werden auf den Standardanbieter zurückfallen.`,description:``},"message.deleteSuccess":{message:`API-Schlüssel wurde gelöscht.`,description:``},"message.saveSuccess":{message:`API-Schlüssel wurde gespeichert.`,description:``},"message.testSuccess":{message:`Verbindung erfolgreich.`,description:``},"message.testFailed":{message:`Test fehlgeschlagen: {message}`,description:``},"message.loadFailed":{message:`Laden der Anmeldeinformationen fehlgeschlagen.`,description:``},"message.saveFailed":{message:`Speichern der Anmeldeinformationen fehlgeschlagen.`,description:``},"message.empty":{message:`Es sind noch keine benutzerdefinierten API-Schlüssel konfiguriert. Klicken Sie auf "API-Schlüssel hinzufügen", um Ihr eigenes Anbieter-Konto zu verwenden.`,description:``},"message.advancedToggle":{message:`Erweiterte Optionen anzeigen`,description:``},"message.baseUrlHelp":{message:`Optional. Benutzerdefinierte Anbieteradresse (für OpenRouter, selbstgehostete Proxys, Unternehmensgateways usw.). Nur HTTPS erlaubt, keine internen/Loopback-Adressen.`,description:``},"badge.active":{message:`Verwendet benutzerdefinierten {provider} API-Schlüssel`,description:``},"badge.tooltip":{message:`Der aktuelle Dialog verwendet Ihren {provider} API-Schlüssel, die Kosten werden über das {provider}-Konto abgerechnet, ohne das Plattformguthaben zu belasten.`,description:``},"badge.manage":{message:`Klicken Sie, um die API-Schlüssel-Einstellungen zu öffnen`,description:`Hinweis nach dem Klicken auf das BYOK-Abzeichen auf der Chat-Seite: Klicken Sie, um den Tab für die API-Schlüssel-Einstellungen zu öffnen.`},"button.testConnection":{message:`Testen`,description:`Schaltfläche im neuen/bearbeiteten Dialogfeld – testet nur die aktuelle Formular-Konfiguration, speichert keine Anmeldeinformationen.`},"test.success":{message:`Verbindungstest erfolgreich`,description:`Erfolgstitel im Bereich der Testergebnisse.`},"test.failure":{message:`Verbindungstest fehlgeschlagen`,description:`Fehlertitel im Bereich der Testergebnisse.`},"test.endpoint":{message:`Anforderungsadresse`,description:`Label für die Anforderungs-URL im Detailbereich der Testergebnisse.`},"test.status":{message:`Statuscode`,description:`Label für den HTTP-Statuscode im Detailbereich der Testergebnisse.`},"test.message":{message:`Antwort des Anbieters`,description:`Label für die Anbieterfehler-/Hinweistexte im Detailbereich der Testergebnisse.`},"providerDesc.openai":{message:`Ersetzt die ChatGPT-Anfragen (GPT-4 / GPT-4o / o1 / o3 usw.) dieser Plattform.`,description:`Untertitel für die OpenAI-Option im Anbieter-Dropdown.`},"providerDesc.anthropic":{message:`Ersetzt die Claude-Anfragen (Sonnet / Opus / Haiku usw.) dieser Plattform.`,description:`Untertitel für die Anthropic-Option im Anbieter-Dropdown.`},"providerDesc.google":{message:`Ersetzt die Gemini-Anfragen (Pro / Flash-Serie) dieser Plattform.`,description:`Untertitel für die Google-Option im Anbieter-Dropdown.`},"providerDesc.xai":{message:`Ersetzt die Grok-Anfragen dieser Plattform.`,description:`Untertitel für die xAI-Option im Anbieter-Dropdown.`},"providerDesc.deepseek":{message:`Ersetzt die DeepSeek-Anfragen (V3 / R1 usw.) dieser Plattform.`,description:`Untertitel für die DeepSeek-Option im Anbieter-Dropdown.`},"providerDesc.moonshot":{message:`Ersetzt die Kimi-Anfrage auf dieser Seite.`,description:`Untertitel für die Moonshot (Kimi) Option im Anbieter-Dropdown.`},"providerDesc.zhipu":{message:`Ersetzt die Dialoganfragen der GLM-Serie auf dieser Seite.`,description:`Untertitel für die Zhipu (GLM) Option im Anbieter-Dropdown.`}};export{e as default};
@@ -1 +0,0 @@
1
- var e={"title.list":{message:`API Key personalizzato`,description:``},"title.addCredential":{message:`Aggiungi API Key`,description:``},"title.editCredential":{message:`Modifica API Key`,description:``},"title.deleteCredential":{message:`Elimina API Key`,description:``},"description.list":{message:`Utilizza il tuo API Key del fornitore (OpenAI, Anthropic, Google, xAI, DeepSeek, Moonshot) al posto del pool di account della piattaforma. Una volta configurato, le richieste di dialogo per il modello corrispondente utilizzeranno direttamente il tuo Key per chiamare il fornitore, senza consumare crediti della piattaforma; le funzionalità come chiamate agli strumenti, riferimenti, artefatti e cronologia cloud funzioneranno normalmente.`,description:``},"field.provider":{message:`Fornitore`,description:``},"field.label":{message:`Nota`,description:``},"field.labelPlaceholder":{message:`es. "Il mio numero di lavoro" (opzionale)`,description:``},"field.apiKey":{message:`API Key`,description:``},"field.apiKeyPlaceholder":{message:`sk-...`,description:``},"field.apiKeyEditPlaceholder":{message:`Lascia vuoto per mantenere il Key attuale`,description:``},"field.baseUrl":{message:`Base URL personalizzata`,description:``},"field.baseUrlPlaceholder":{message:`Lascia vuoto per utilizzare l'indirizzo predefinito del fornitore`,description:``},"field.isActive":{message:`Attivo`,description:``},"field.lastUsedAt":{message:`Ultimo utilizzo`,description:``},"field.createdAt":{message:`Data di aggiunta`,description:``},"value.active":{message:`Attivo`,description:``},"value.inactive":{message:`Non attivo`,description:``},"value.never":{message:`Mai utilizzato`,description:``},"value.default":{message:`Predefinito`,description:``},"button.add":{message:`Aggiungi API Key`,description:``},"button.test":{message:`Test`,description:`Questo è un pulsante per eseguire un test.`},"message.deleteConfirm":{message:`Confermi di voler eliminare questa API Key? Le richieste di dialogo per il modello {provider} torneranno a utilizzare il fornitore predefinito della piattaforma.`,description:``},"message.deleteSuccess":{message:`API Key eliminata.`,description:``},"message.saveSuccess":{message:`API Key salvata.`,description:``},"message.testSuccess":{message:`Connessione riuscita.`,description:``},"message.testFailed":{message:`Test fallito: {message}`,description:``},"message.loadFailed":{message:`Caricamento delle credenziali fallito.`,description:``},"message.saveFailed":{message:`Salvataggio delle credenziali fallito.`,description:``},"message.empty":{message:`Non hai ancora configurato un API Key personalizzato. Clicca su "Aggiungi API Key" per utilizzare il tuo account del fornitore.`,description:``},"message.advancedToggle":{message:`Mostra opzioni avanzate`,description:``},"message.baseUrlHelp":{message:`Opzionale. Indirizzo upstream personalizzato (per OpenRouter, reverse proxy, gateway aziendale, ecc.). Solo HTTPS consentito, non può puntare a indirizzi interni/loopback.`,description:``},"badge.active":{message:`Utilizzo dell'API Key personalizzata {provider}`,description:``},"badge.tooltip":{message:`La conversazione attuale sta utilizzando la tua API Key {provider}, i costi saranno addebitati sul tuo account {provider}, senza ridurre il saldo della piattaforma.`,description:``},"badge.manage":{message:`Clicca per aprire le impostazioni dell'API Key`,description:`Messaggio dopo il clic sul badge BYOK nella pagina di chat: clicca per aprire la scheda delle impostazioni dell'API Key.`},"button.testConnection":{message:`Test connessione`,description:`Pulsante nella finestra di dialogo per aggiungere/modificare — testa solo la configurazione del modulo attuale, senza salvare le credenziali.`},"test.success":{message:`Test di connettività riuscito`,description:`Titolo di successo nella sezione dei risultati del test di connettività.`},"test.failure":{message:`Test di connettività fallito`,description:`Titolo di fallimento nella sezione dei risultati del test di connettività.`},"test.endpoint":{message:`Indirizzo della richiesta`,description:`Etichetta dell'URL della richiesta nei dettagli dei risultati del test.`},"test.status":{message:`Codice di stato`,description:`Etichetta del codice di stato HTTP nei dettagli dei risultati del test.`},"test.message":{message:`Risposta upstream`,description:`Etichetta del testo di errore/avviso upstream nei dettagli dei risultati del test.`},"providerDesc.openai":{message:`Sostituisce le richieste di dialogo ChatGPT (GPT-4 / GPT-4o / o1 / o3, ecc.) su questo sito.`,description:`Sottotitolo per l'opzione OpenAI nel menu a discesa dei fornitori.`},"providerDesc.anthropic":{message:`Sostituisce le richieste di dialogo Claude (Sonnet / Opus / Haiku, ecc.) su questo sito.`,description:`Sottotitolo per l'opzione Anthropic nel menu a discesa dei fornitori.`},"providerDesc.google":{message:`Sostituisce le richieste di dialogo Gemini (Pro / Flash series) su questo sito.`,description:`Sottotitolo per l'opzione Google nel menu a discesa dei fornitori.`},"providerDesc.xai":{message:`Sostituisce le richieste di dialogo Grok su questo sito.`,description:`Sottotitolo per l'opzione xAI nel menu a discesa dei fornitori.`},"providerDesc.deepseek":{message:`Sostituisce le richieste di dialogo DeepSeek (V3 / R1, ecc.) su questo sito.`,description:`Sottotitolo per l'opzione DeepSeek nel menu a discesa dei fornitori.`},"providerDesc.moonshot":{message:`Sostituisci la richiesta di dialogo Kimi di questo sito.`,description:`Sottotitolo per l'opzione Moonshot (Kimi) nel menu a discesa dei fornitori.`},"providerDesc.zhipu":{message:`Sostituisce le richieste di dialogo della serie GLM di questo sito.`,description:`Sottotitolo per l'opzione Zhipu (GLM) nel menu a discesa dei fornitori.`}};export{e as default};
@@ -1 +0,0 @@
1
- import{A as e,Gt as t,I as n,Jt as r,M as i,Mt as a,N as o,it as s,qt as c,tt as l,z as u}from"./vendor-chart-Dw-P17PN.js";import{Ho as d,Uo as f}from"./constants-vZG8JV9A.js";import{a as p,c as m,t as h}from"./install-Cn-SLM3u.js";var g=d({header:{type:String,default:``},footer:{type:String,default:``},bodyStyle:{type:f([String,Object,Array]),default:``},headerClass:String,bodyClass:String,footerClass:String,shadow:{type:String,values:[`always`,`hover`,`never`],default:`always`}}),_=h(p(u({...u({name:`ElCard`}),props:g,setup(u){let d=m(`card`);return(u,f)=>(l(),o(`div`,{class:t([a(d).b(),a(d).is(`${u.shadow}-shadow`)])},[u.$slots.header||u.header?(l(),o(`div`,{key:0,class:t([a(d).e(`header`),u.headerClass])},[s(u.$slots,`header`,{},()=>[n(r(u.header),1)])],2)):i(`v-if`,!0),e(`div`,{class:t([a(d).e(`body`),u.bodyClass]),style:c(u.bodyStyle)},[s(u.$slots,`default`)],6),u.$slots.footer||u.footer?(l(),o(`div`,{key:1,class:t([a(d).e(`footer`),u.footerClass])},[s(u.$slots,`footer`,{},()=>[n(r(u.footer),1)])],2)):i(`v-if`,!0)],2))}}),[[`__file`,`card.vue`]]));export{_ as t};
@@ -1 +0,0 @@
1
- import{Is as e}from"./constants-vZG8JV9A.js";function t(){if(!arguments.length)return[];var t=arguments[0];return e(t)?t:[t]}export{t};
@@ -1 +0,0 @@
1
- import{_a as e}from"./constants-vZG8JV9A.js";import{h as t}from"./models-C0YjUFNo.js";import{Ra as n,Xi as r,Xr as i,Yr as a,ji as o,zn as s}from"./index-BkGHnQZ_.js";var c={namespaced:!0,state:n,mutations:{setModel:(e,t)=>{e.model=t},setModelGroup:(e,t)=>{e.modelGroup=t},setService:(e,t)=>{e.service=t},setCredential:(e,t)=>{e.credential=t},setConversations:(e,t)=>{e.conversations=t},setApplication:(e,t)=>{e.application=t},setApplications:(e,t)=>{e.applications=t},setMemoryEnabled:(e,t)=>{e.memoryEnabled=t},setWorkingDirectory:(e,t)=>{e.workingDirectory=t||``},setPendingDraft:(e,t)=>{e.pendingDraft=t||``},resetAll:e=>{let t=e.memoryEnabled,r=e.workingDirectory;Object.assign(e,n()),e.memoryEnabled=t,e.workingDirectory=r}},actions:{resetAll:({commit:e})=>{e(`resetAll`)},createCredential:async({commit:e,state:t})=>{let n=t.application;if(console.debug(`prepare to create credential for application for chat`,n),!n){console.error(`Application not found`);return}console.debug(`creating create credential for application for chat`,n);let{data:r}=await a.create({application_id:n?.id,host:window.location.origin});return console.debug(`created credential success`,r),e(`setCredential`,r),console.debug(`end createCredential`),r},setModel:async({commit:e},t)=>{e(`setModel`,t)},setModelGroup:async({commit:e},t)=>{e(`setModelGroup`,t)},getService:async({commit:n,state:r})=>{r.status.getService=t.Request;try{let{data:a}=await i.get(e);return r.status.getService=t.Success,n(`setService`,a),a}catch{r.status.getService=t.Error,n(`setService`,void 0)}},setService:async({commit:e},t)=>{console.debug(`set service for chat`,t),e(`setService`,t)},setCredential:async({commit:e},t)=>{console.debug(`set credential`,t),e(`setCredential`,t)},setApplication:async({commit:e,dispatch:t,rootState:n},r)=>{if(console.debug(`set application`,r),e(`setApplication`,r),console.debug(`application is set`),!r){console.debug(`application is null, return`);return}let i=n?.user?.id,a=r?.role===`grantee`,o=r?.credentials?.find(e=>e?.host===window.location.origin);!o&&a&&(o=r?.credentials?.find(e=>e?.user_id===i)),o?(console.debug(`credential exists, set credential`,o),e(`setCredential`,o)):a?(console.warn(`no credential available for granted application`,r),e(`setCredential`,void 0)):(console.debug(`credential not exists, start to create credential for application`,r),await t(`createCredential`))},setApplications:async({commit:e},t)=>{console.debug(`set applications for chat`,t),e(`setApplications`,t)},getApplications:async({commit:n,state:i,rootState:a})=>{if(console.debug(`start to get applications for chat`),!a?.token?.access)return i.status.getApplications=t.Success,n(`setApplications`,[]),n(`setApplication`,void 0),n(`setCredential`,void 0),[];i.status.getApplications=t.Request;try{let{data:a}=await r.getAll({user_id:`me`,service_id:e,affiliation:[`owner`,`granted`]});return console.debug(`get applications success for chat`,a),i.status.getApplications=t.Success,n(`setApplications`,a.items),console.debug(`set applications for chat`,a.items),a.items}catch(e){console.error(`get applications failed for chat`,e),i.status.getApplications=t.Error}},setConversation:async({commit:e,state:t},n)=>{console.debug(`set conversation`,n);let r=t.conversations||[],i=r?.findIndex(e=>e.id===n.id),a=s(n);i>-1?r[i]={...r[i],...a}:r?.unshift(a),e(`setConversations`,r),console.debug(`set conversation success`,r)},setConversations:async({commit:e},t)=>{console.debug(`set conversations`,t),e(`setConversations`,t)},getConversations:async({commit:e,state:n,rootState:r})=>{n.status.getConversations=t.Request;let i=n.credential?.token,a=n.modelGroup?.name;if(!i||!a)return n.status.getConversations=t.Error,e(`setConversations`,[]),[];try{let{data:s}=await o.getConversations({userId:r.user?.id,modelGroup:a,limit:100},{token:i});return console.debug(`get conversations success`,s?.items?.length,`group=`,a),n.status.getConversations=t.Success,e(`setConversations`,s.items),s.items}catch{return n.status.getConversations=t.Error,e(`setConversations`,[]),[]}},getConversation:async({commit:e,state:t},n)=>{let r=t.credential?.token;if(!(!r||!n))try{let{data:i}=await o.getConversation(n,{token:r}),a=t.conversations||[],c=a.findIndex(e=>e.id===n),l=c>-1?{...a[c],...i}:i;if(c>-1){let t=[...a];t[c]=s(l),e(`setConversations`,t)}return l}catch(e){console.error(`getConversation failed`,n,e);return}}}};export{c as chat,c as default};
@@ -1 +0,0 @@
1
- import{Ga as e}from"./index-BkGHnQZ_.js";var t=e(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]);export{t};
@@ -1 +0,0 @@
1
- import{A as e,B as t,C as n,Dt as r,Gt as i,I as a,Jt as o,K as s,M as c,Mt as l,N as u,Rt as d,T as f,U as p,Vt as m,Wt as h,ft as g,ht as _,it as v,j as y,k as b,kt as x,mt as S,nt as C,qt as w,st as T,tt as E,ut as D,v as O,wt as k,yt as A,z as j}from"./vendor-chart-Dw-P17PN.js";import{Ho as M,Ko as N,Uo as P,hs as F,ms as I,ps as L,us as R,zo as z}from"./constants-vZG8JV9A.js";import{a as B,c as V,i as H,t as ee}from"./install-Cn-SLM3u.js";import{n as te,t as U}from"./use-aria-DjgU6t6L.js";import{t as ne}from"./isEqual-BFcHeZKz.js";import{r as W,t as G}from"./event-BGnHezxC.js";import{a as K,i as q,n as re,r as J,t as Y}from"./use-deprecated-KSZGI37P.js";var X={modelValue:{type:[Number,String,Boolean],default:void 0},label:{type:[String,Boolean,Number,Object],default:void 0},value:{type:[String,Boolean,Number,Object],default:void 0},indeterminate:Boolean,disabled:Boolean,checked:Boolean,name:{type:String,default:void 0},trueValue:{type:[String,Number],default:void 0},falseValue:{type:[String,Number],default:void 0},trueLabel:{type:[String,Number],default:void 0},falseLabel:{type:[String,Number],default:void 0},id:{type:String,default:void 0},border:Boolean,size:z,tabindex:[String,Number],validateEvent:{type:Boolean,default:!0},...U([`ariaControls`])},Z={[W]:e=>h(e)||L(e)||R(e),change:e=>h(e)||L(e)||R(e)},Q=Symbol(`checkboxGroupContextKey`),ie=({model:e,isChecked:t})=>{let n=p(Q,void 0),r=b(()=>{let r=n?.max?.value,i=n?.min?.value;return!F(r)&&e.value.length>=r&&!t.value||!F(i)&&e.value.length<=i&&t.value});return{isDisabled:re(b(()=>n?.disabled.value||r.value)),isLimitDisabled:r}},ae=(e,{model:n,isLimitExceeded:r,hasOwnLabel:i,isDisabled:a,isLabeledByFormItem:o})=>{let c=p(Q,void 0),{formItem:l}=q(),{emit:u}=t();function d(t){return[!0,e.trueValue,e.trueLabel].includes(t)?e.trueValue??e.trueLabel??!0:e.falseValue??e.falseLabel??!1}function f(e,t){u(G,d(e),t)}function m(e){if(r.value)return;let t=e.target;u(G,d(t.checked),e)}async function h(t){r.value||!i.value&&!a.value&&o.value&&(t.composedPath().some(e=>e.tagName===`LABEL`)||(n.value=d([!1,e.falseValue,e.falseLabel].includes(n.value)),await s(),f(n.value,t)))}let _=b(()=>c?.validateEvent||e.validateEvent);return g(()=>e.modelValue,()=>{_.value&&l?.validate(`change`).catch(e=>N(e))}),{handleChange:m,onClickRoot:h}},oe=e=>{let n=k(!1),{emit:r}=t(),i=p(Q,void 0),a=b(()=>F(i)===!1),o=k(!1),s=b({get(){return a.value?i?.modelValue?.value:e.modelValue??n.value},set(e){var t;a.value&&d(e)?(o.value=i?.max?.value!==void 0&&e.length>i?.max.value&&e.length>s.value.length,o.value===!1&&((t=i?.changeEvent)==null||t.call(i,e))):(r(W,e),n.value=e)}});return{model:s,isGroup:a,isLimitExceeded:o}},se=(e,t,{model:n})=>{let i=p(Q,void 0),a=k(!1),o=b(()=>I(e.value)?e.label:e.value),s=b(()=>{let t=n.value;return R(t)?t:d(t)?m(o.value)?t.map(r).some(e=>ne(e,o.value)):t.map(r).includes(o.value):t==null?!!t:t===e.trueValue||t===e.trueLabel});return{checkboxButtonSize:J(b(()=>i?.size?.value),{prop:!0}),isChecked:s,isFocused:a,checkboxSize:J(b(()=>i?.size?.value)),hasOwnLabel:b(()=>!!t.default||!I(o.value)),actualValue:o}},$=(e,t)=>{let{formItem:n}=q(),{model:r,isGroup:i,isLimitExceeded:a}=oe(e),{isFocused:o,isChecked:s,checkboxButtonSize:c,checkboxSize:l,hasOwnLabel:u,actualValue:f}=se(e,t,{model:r}),{isDisabled:p}=ie({model:r,isChecked:s}),{inputId:m,isLabeledByFormItem:h}=K(e,{formItemContext:n,disableIdGeneration:u,disableIdManagement:i}),{handleChange:g,onClickRoot:_}=ae(e,{model:r,isLimitExceeded:a,hasOwnLabel:u,isDisabled:p,isLabeledByFormItem:h});return(()=>{function t(){d(r.value)&&!r.value.includes(f.value)?r.value.push(f.value):r.value=e.trueValue??e.trueLabel??!0}e.checked&&t()})(),Y({from:`label act as value`,replacement:`value`,version:`3.0.0`,scope:`el-checkbox`,ref:`https://element-plus.org/en-US/component/checkbox.html`},b(()=>i.value&&I(e.value))),Y({from:`true-label`,replacement:`true-value`,version:`3.0.0`,scope:`el-checkbox`,ref:`https://element-plus.org/en-US/component/checkbox.html`},b(()=>!!e.trueLabel)),Y({from:`false-label`,replacement:`false-value`,version:`3.0.0`,scope:`el-checkbox`,ref:`https://element-plus.org/en-US/component/checkbox.html`},b(()=>!!e.falseLabel)),{inputId:m,isLabeledByFormItem:h,isChecked:s,isDisabled:p,isFocused:o,checkboxButtonSize:c,checkboxSize:l,hasOwnLabel:u,model:r,actualValue:f,handleChange:g,onClickRoot:_}},ce=B(j({...j({name:`ElCheckbox`}),props:X,emits:Z,setup(t){let r=t,{inputId:s,isLabeledByFormItem:d,isChecked:p,isDisabled:m,isFocused:h,checkboxSize:g,hasOwnLabel:x,model:C,actualValue:w,handleChange:k,onClickRoot:j}=$(r,D()),M=V(`checkbox`),N=b(()=>[M.b(),M.m(g.value),M.is(`disabled`,m.value),M.is(`bordered`,r.border),M.is(`checked`,p.value)]),P=b(()=>[M.e(`input`),M.is(`disabled`,m.value),M.is(`checked`,p.value),M.is(`indeterminate`,r.indeterminate),M.is(`focus`,h.value)]);return(t,r)=>(E(),y(T(!l(x)&&l(d)?`span`:`label`),{class:i(l(N)),"aria-controls":t.indeterminate?t.ariaControls:null,onClick:l(j)},{default:S(()=>[e(`span`,{class:i(l(P))},[t.trueValue||t.falseValue||t.trueLabel||t.falseLabel?_((E(),u(`input`,{key:0,id:l(s),"onUpdate:modelValue":e=>A(C)?C.value=e:null,class:i(l(M).e(`original`)),type:`checkbox`,indeterminate:t.indeterminate,name:t.name,tabindex:t.tabindex,disabled:l(m),"true-value":t.trueValue??t.trueLabel??!0,"false-value":t.falseValue??t.falseLabel??!1,onChange:l(k),onFocus:e=>h.value=!0,onBlur:e=>h.value=!1,onClick:n(()=>{},[`stop`])},null,42,[`id`,`onUpdate:modelValue`,`indeterminate`,`name`,`tabindex`,`disabled`,`true-value`,`false-value`,`onChange`,`onFocus`,`onBlur`,`onClick`])),[[O,l(C)]]):_((E(),u(`input`,{key:1,id:l(s),"onUpdate:modelValue":e=>A(C)?C.value=e:null,class:i(l(M).e(`original`)),type:`checkbox`,indeterminate:t.indeterminate,disabled:l(m),value:l(w),name:t.name,tabindex:t.tabindex,onChange:l(k),onFocus:e=>h.value=!0,onBlur:e=>h.value=!1,onClick:n(()=>{},[`stop`])},null,42,[`id`,`onUpdate:modelValue`,`indeterminate`,`disabled`,`value`,`name`,`tabindex`,`onChange`,`onFocus`,`onBlur`,`onClick`])),[[O,l(C)]]),e(`span`,{class:i(l(M).e(`inner`))},null,2)],2),l(x)?(E(),u(`span`,{key:0,class:i(l(M).e(`label`))},[v(t.$slots,`default`),t.$slots.default?c(`v-if`,!0):(E(),u(f,{key:0},[a(o(t.label),1)],64))],2)):c(`v-if`,!0)]),_:3},8,[`class`,`aria-controls`,`onClick`]))}}),[[`__file`,`checkbox.vue`]]),le=B(j({...j({name:`ElCheckboxButton`}),props:X,emits:Z,setup(e){let{isFocused:t,isChecked:r,isDisabled:s,checkboxButtonSize:d,model:f,actualValue:m,handleChange:h}=$(e,D()),g=p(Q,void 0),y=V(`checkbox`),x=b(()=>{let e=g?.fill?.value??``;return{backgroundColor:e,borderColor:e,color:g?.textColor?.value??``,boxShadow:e?`-1px 0 0 0 ${e}`:void 0}}),S=b(()=>[y.b(`button`),y.bm(`button`,d.value),y.is(`disabled`,s.value),y.is(`checked`,r.value),y.is(`focus`,t.value)]);return(e,d)=>(E(),u(`label`,{class:i(l(S))},[e.trueValue||e.falseValue||e.trueLabel||e.falseLabel?_((E(),u(`input`,{key:0,"onUpdate:modelValue":e=>A(f)?f.value=e:null,class:i(l(y).be(`button`,`original`)),type:`checkbox`,name:e.name,tabindex:e.tabindex,disabled:l(s),"true-value":e.trueValue??e.trueLabel??!0,"false-value":e.falseValue??e.falseLabel??!1,onChange:l(h),onFocus:e=>t.value=!0,onBlur:e=>t.value=!1,onClick:n(()=>{},[`stop`])},null,42,[`onUpdate:modelValue`,`name`,`tabindex`,`disabled`,`true-value`,`false-value`,`onChange`,`onFocus`,`onBlur`,`onClick`])),[[O,l(f)]]):_((E(),u(`input`,{key:1,"onUpdate:modelValue":e=>A(f)?f.value=e:null,class:i(l(y).be(`button`,`original`)),type:`checkbox`,name:e.name,tabindex:e.tabindex,disabled:l(s),value:l(m),onChange:l(h),onFocus:e=>t.value=!0,onBlur:e=>t.value=!1,onClick:n(()=>{},[`stop`])},null,42,[`onUpdate:modelValue`,`name`,`tabindex`,`disabled`,`value`,`onChange`,`onFocus`,`onBlur`,`onClick`])),[[O,l(f)]]),e.$slots.default||e.label?(E(),u(`span`,{key:2,class:i(l(y).be(`button`,`inner`)),style:w(l(r)?l(x):void 0)},[v(e.$slots,`default`,{},()=>[a(o(e.label),1)])],6)):c(`v-if`,!0)],2))}}),[[`__file`,`checkbox-button.vue`]]),ue=M({modelValue:{type:P(Array),default:()=>[]},disabled:Boolean,min:Number,max:Number,size:z,fill:String,textColor:String,tag:{type:String,default:`div`},validateEvent:{type:Boolean,default:!0},...U([`ariaLabel`])}),de={[W]:e=>d(e),change:e=>d(e)},fe=B(j({...j({name:`ElCheckboxGroup`}),props:ue,emits:de,setup(e,{emit:t}){let n=e,r=V(`checkbox`),{formItem:a}=q(),{inputId:o,isLabeledByFormItem:c}=K(n,{formItemContext:a}),u=async e=>{t(W,e),await s(),t(G,e)},d=b({get(){return n.modelValue},set(e){u(e)}});return C(Q,{...te(x(n),[`size`,`min`,`max`,`disabled`,`validateEvent`,`fill`,`textColor`]),modelValue:d,changeEvent:u}),g(()=>n.modelValue,()=>{n.validateEvent&&a?.validate(`change`).catch(e=>N(e))}),(e,t)=>(E(),y(T(e.tag),{id:l(o),class:i(l(r).b(`group`)),role:`group`,"aria-label":l(c)?void 0:e.ariaLabel||`checkbox-group`,"aria-labelledby":l(c)?l(a)?.labelId:void 0},{default:S(()=>[v(e.$slots,`default`)]),_:3},8,[`id`,`class`,`aria-label`,`aria-labelledby`]))}}),[[`__file`,`checkbox-group.vue`]]),pe=ee(ce,{CheckboxButton:le,CheckboxGroup:fe});H(le);var me=H(fe);export{me as n,pe as t};
@@ -1 +0,0 @@
1
- import{Ga as e}from"./index-BkGHnQZ_.js";var t=e(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]);export{t};
@@ -1 +0,0 @@
1
- import{Ga as e}from"./index-BkGHnQZ_.js";var t=e(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]);export{t};
@@ -1 +0,0 @@
1
- import{Ga as e}from"./index-BkGHnQZ_.js";var t=e(`circle-check`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]);export{t};
@@ -1 +0,0 @@
1
- import{Rt as e}from"./vendor-chart-Dw-P17PN.js";import{ds as t,is as n}from"./constants-vZG8JV9A.js";var r=new Map;if(n){let e;document.addEventListener(`mousedown`,t=>e=t),document.addEventListener(`mouseup`,t=>{if(e){for(let n of r.values())for(let{documentHandler:r}of n)r(t,e);e=void 0}})}function i(n,r){let i=[];return e(r.arg)?i=r.arg:t(r.arg)&&i.push(r.arg),function(e,t){let a=r.instance.popperRef,o=e.target,s=t?.target,c=!r||!r.instance,l=!o||!s,u=n.contains(o)||n.contains(s),d=n===o,f=i.length&&i.some(e=>e?.contains(o))||i.length&&i.includes(s),p=a&&(a.contains(o)||a.contains(s));c||l||u||d||f||p||r.value(e,t)}}var a={beforeMount(e,t){r.has(e)||r.set(e,[]),r.get(e).push({documentHandler:i(e,t),bindingFn:t.value})},updated(e,t){r.has(e)||r.set(e,[]);let n=r.get(e),a=n.findIndex(e=>e.bindingFn===t.oldValue),o={documentHandler:i(e,t),bindingFn:t.value};a>=0?n.splice(a,1,o):n.push(o)},unmounted(e){r.delete(e)}};export{a as t};
@@ -1 +0,0 @@
1
- import{Ga as e}from"./index-BkGHnQZ_.js";var t=e(`clock`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]);export{t};
@@ -1 +0,0 @@
1
- import{Ga as e}from"./index-BkGHnQZ_.js";var t=e(`code`,[[`path`,{d:`m16 18 6-6-6-6`,key:`eg8j8`}],[`path`,{d:`m8 6-6 6 6 6`,key:`ppft3o`}]]);export{t};
@@ -1 +0,0 @@
1
- var e={"nodeList.title":{message:`Geräte`,description:`Titel der Geräteliste von Coding Bridge`},"nodeList.refresh":{message:`Aktualisieren`,description:`Aktualisiert die Geräteliste`},"nodeList.pair":{message:`Gerät koppeln`,description:`Öffnet das Dialogfeld zum Koppeln`},"nodeList.empty":{message:`Es sind noch keine Geräte gekoppelt.`,description:`Hinweis, wenn die Geräteliste leer ist`},"nodeList.pairFirst":{message:`Erstes Gerät koppeln`,description:`Kopplungsbutton im leeren Zustand`},"nodeList.rename":{message:`Umbenennen`,description:`Rename a device`},"nodeList.renamePrompt":{message:`Gib diesem Gerät einen Namen. Der Name wird mit all deinen angemeldeten Geräten synchronisiert.`,description:`Rename device input prompt`},"nodeList.renameEmpty":{message:`Der Name darf nicht leer sein.`,description:`Rename device empty-name validation`},"nodeList.renameTooLong":{message:`Der Name darf höchstens {max} Zeichen lang sein.`,description:`Rename device too-long validation`},"nodeList.renameSuccess":{message:`Gerät umbenannt.`,description:`Rename device success`},"nodeList.renameFailed":{message:`Gerät konnte nicht umbenannt werden.`,description:`Rename device failure`},"nodeList.remove":{message:`Entfernen`,description:`Entfernt ein Gerät`},"nodeList.removeConfirm":{message:`Gerät „{name}“ entfernen? Nach dem Entfernen muss es erneut gekoppelt werden.`,description:`Bestätigung zum Entfernen eines Geräts`},"nodeList.removeSuccess":{message:`Gerät wurde entfernt.`,description:`Hinweis bei erfolgreichem Entfernen eines Geräts`},"nodeList.removeFailed":{message:`Gerät entfernen fehlgeschlagen.`,description:`Hinweis bei fehlgeschlagenem Entfernen eines Geräts`},"status.online":{message:`Online`,description:`Gerät ist online`},"status.offline":{message:`Offline`,description:`Gerät ist offline`},"connection.disconnected":{message:`Getrennt`,description:`Die Verbindung zum Relay wurde getrennt`},"connection.connecting":{message:`Verbindung wird hergestellt…`,description:`Der Relay wird verbunden`},"connection.connected":{message:`Verbunden`,description:`Der Relay ist verbunden`},"connection.error":{message:`Verbindungsfehler`,description:`Fehler bei der Verbindung zum Relay`},"pair.title":{message:`Gerät koppeln`,description:`Titel des Kopplungsdialogs`},"pair.intro":{message:`Führen Sie den Coding Bridge Agenten auf Ihrem Computer aus und geben Sie hier den Kopplungscode ein, um ihn über die Webseite zu steuern.`,description:`Einführung im Kopplungsdialog`},"pair.step1":{message:`Agenten installieren (benötigt Python 3.10+):`,description:`Kopplungsschritt 1`},"pair.step2":{message:`Starten und den Anweisungen folgen:`,description:`Kopplungsschritt 2`},"pair.step3":{message:`Geben Sie den unten angezeigten Kopplungscode ein.`,description:`Kopplungsschritt 3`},"pair.codePlaceholder":{message:`Kopplungscode`,description:`Platzhalter im Eingabefeld für den Kopplungscode`},"pair.claim":{message:`Gerät koppeln`,description:`Bestätigungsbutton zum Koppeln`},"pair.success":{message:`Gerät „{name}“ wurde gekoppelt.`,description:`Hinweis bei erfolgreichem Koppeln`},"pair.invalidCode":{message:`Kopplungscode ungültig oder abgelaufen.`,description:`Fehler bei ungültigem Kopplungscode`},"pair.usedCode":{message:`Dieser Kopplungscode wurde bereits verwendet.`,description:`Fehler bei bereits verwendetem Kopplungscode`},"pair.failed":{message:`Gerät koppeln fehlgeschlagen.`,description:`Allgemeiner Fehler beim Koppeln`},"permission.title":{message:`Genehmigung erforderlich`,description:`Titel des Genehmigungsdialogfelds.`},"permission.subtitle":{message:`Genehmigen Sie die Verwendung eines Tools für die Anfrage, um fortzufahren.`,description:`Untertitel des Genehmigungsdialogfelds.`},"permission.deny":{message:`Ablehnen`,description:`Ablehnen des Zugriffs auf das Tool.`},"permission.allow":{message:`Erlauben`,description:`Erlauben Sie das Tool, Zugriff zu erhalten.`},"session.noDevice":{message:`Wählen Sie ein Gerät, um mit dem Codieren zu beginnen.`,description:`Platzhalterhinweis, wenn kein Gerät ausgewählt ist.`},"session.newSession":{message:`Neue Sitzung`,description:`Neue Sitzung starten.`},"session.deviceOffline":{message:`Dieses Gerät ist offline. Bitte starten Sie den Coding Bridge-Agent auf diesem Gerät, um fortzufahren.`,description:`Warnung, dass das Gerät offline ist.`},"session.nodeId":{message:`Geräte-ID`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`Sitzungs-ID`,description:`Diagnostic label for the session id`},"session.traceId":{message:`Trace-ID`,description:`Diagnostic label for the trace id`},"session.startHint":{message:`Senden Sie eine Nachricht, um die Sitzung auf diesem Gerät zu starten.`,description:`Hinweis für leere Aufzeichnungen`},"session.cwdPlaceholder":{message:`Arbeitsverzeichnis (optional)`,description:`Platzhalter für das Eingabefeld des Arbeitsverzeichnisses.`},"session.modelPlaceholder":{message:`Modell (optional)`,description:`Platzhalter für das Eingabefeld des Modells.`},"session.promptPlaceholder":{message:`Nachricht an den Agenten senden…`,description:`Platzhalter für das Eingabefeld des Prompts.`},"session.send":{message:`Senden`,description:`Button zum Senden von Eingaben`},"session.voiceInput":{message:`Sprachinput`,description:`Beginnen Sie, Sprache in Eingabewörter umzuwandeln`},"session.voiceStop":{message:`Sprachinput stoppen`,description:`Stoppen der Sprachtranskription`},"session.voiceListening":{message:`Hörmodus aktiv, nach dem Stoppen kann der Text bearbeitet werden.`,description:`Hinweis im Eingabefeld während der aktiven Spracherkennung`},"session.voiceStopping":{message:`Sprachtranskription wird abgeschlossen…`,description:`Warten auf das endgültige Ergebnis der Spracherkennung`},"session.voicePermissionDenied":{message:`Mikrofonberechtigung verweigert. Bitte erlauben Sie sie in den System- oder Browsereinstellungen und versuchen Sie es erneut.`,description:`Mikrofonberechtigung wurde verweigert`},"session.voiceMicrophoneUnavailable":{message:`Mikrofon nicht gefunden oder nicht verfügbar.`,description:`Mikrofon ist nicht verfügbar`},"session.voiceNoSpeech":{message:`Keine Sprache erkannt, bitte erneut versuchen.`,description:`Die Spracherkennung hat kein Sprechen erkannt`},"session.voiceNetworkError":{message:`Der Spracherkennungsdienst ist vorübergehend nicht verfügbar, bitte überprüfen Sie das Netzwerk und versuchen Sie es erneut.`,description:`Netzwerkfehler bei der Spracherkennung`},"session.voiceError":{message:`Sprachinput fehlgeschlagen, bitte erneut versuchen.`,description:`Allgemeiner Fehler bei der Spracherkennung`},"session.retry":{message:`Erneut versuchen`,description:`Re-run the last prompt after a failure`},"session.editPrompt":{message:`Bearbeiten`,description:`Bearbeiten Sie den gesendeten Prompt und senden Sie ihn als neue Runde erneut.`},"session.editingBanner":{message:`Bearbeitung — Senden wird das Gespräch an dieser Stelle zurücksetzen`,description:`Banner, das während der Bearbeitung eines früheren Prompts angezeigt wird.`},"session.editRestoreCode":{message:`Code ebenfalls zurücksetzen`,description:`Checkbox, um auch die Dateiänderungen beim Bearbeiten zurückzusetzen.`},"session.editCancel":{message:`Abbrechen`,description:`Bearbeitung eines früheren Prompts abbrechen.`},"session.editSubmit":{message:`Aktualisieren`,description:`Einen bearbeiteten Prompt einreichen (zurückspulen und erneut ausführen).`},"session.enterHint":{message:`Enter zum Senden, Shift+Enter für einen Zeilenumbruch.`,description:`Tastaturhinweis im Eingabefeld.`},"transcript.turnFailed":{message:`Ausführung fehlgeschlagen`,description:`Label für das Ergebnis der Runde, fehlgeschlagen`},"transcript.turnDone":{message:`Fertig`,description:`Label für das Ergebnis der Runde, abgeschlossen`},"transcript.todoProgress":{message:`{done}/{total} abgeschlossen`,description:`Fortschritt der Aufgabenliste`},"transcript.todoOverflow":{message:`…es gibt noch {count} weitere Elemente, die nicht angezeigt werden`,description:`Hinweis für überlange Aufgabenliste`},"transcript.todoCompleted":{message:`Abgeschlossen`,description:`Aufgabenliste: Abgeschlossen (für Barrierefreiheit vorlesen)`},"transcript.todoInProgress":{message:`In Bearbeitung`,description:`Aufgabenliste: In Bearbeitung (für Barrierefreiheit vorlesen)`},"transcript.todoPending":{message:`Ausstehend`,description:`Aufgabenliste: Ausstehend (für Barrierefreiheit vorlesen)`},"history.button":{message:`Verlauf`,description:`Open the conversation history drawer`},"history.title":{message:`Konversationsverlauf`,description:`History drawer title`},"history.intro":{message:`Frühere Claude-Code-, Codex- und GitHub-Copilot-Sitzungen auf diesem Gerät.`,description:`History drawer intro`},"history.refresh":{message:`Aktualisieren`,description:`Reload the history list`},"history.loading":{message:`Verlauf wird geladen…`,description:`History loading message`},"history.empty":{message:`Kein Verlauf auf diesem Gerät gefunden.`,description:`Empty history message`},"history.filterAll":{message:`Alle`,description:`Entfernt die Quellenfilter und zeigt alle Sitzungen an.`},"history.filterEmpty":{message:`Unter der aktuellen Filterung gibt es keine Sitzungen.`,description:`Hinweis, dass das Ergebnis nach der Filterung leer ist.`},"history.messages":{message:`{count} Nachrichten`,description:`History item message count`},"history.readonly":{message:`Diese Codex-Konversation ist schreibgeschützt und kann nicht fortgesetzt werden. Starte eine neue Sitzung, um weiterzuarbeiten.`,description:`Read-only replay notice`},"history.running":{message:`Läuft`,description:`Marks a history conversation that is currently live on the device`},"history.unread":{message:`Ungelesen`,description:`Markierung für historische Sitzungen, die abgeschlossen sind, aber vom Benutzer noch nicht angesehen wurden`},"history.resumeHint":{message:`Eine Nachricht setzt diese Konversation auf dem Gerät fort.`,description:`Resume composer hint`},"history.claudeLabel":{message:`Claude-Verlauf`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Codex-Verlauf (schreibgeschützt)`,description:`Replayed Codex session label`},"session.permissionModeLabel":{message:`Berechtigungsmodus`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`Standard (jedes Mal fragen)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`Änderungen automatisch akzeptieren`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`Planungsmodus (schreibgeschützt)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`Alle Berechtigungen umgehen`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`Backend`,description:`Label für die Auswahl des Agenten-Backends`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(nicht installiert)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} ist auf diesem Gerät nicht installiert.`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`Denkaufwand`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`Standard`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`Niedrig`,description:`Reasoning effort: low`},"session.effortMedium":{message:`Mittel`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`Hoch`,description:`Reasoning effort: high`},"session.effortMax":{message:`Maximal`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`Arbeitsverzeichnis wählen`,description:`Working-directory picker dialog title`},"directory.choose":{message:`Dieses Verzeichnis verwenden`,description:`Button: select the current directory`},"directory.up":{message:`Übergeordnetes Verzeichnis`,description:`Button: go to the parent directory`},"directory.refresh":{message:`Aktualisieren`,description:`Button: reload the current directory`},"directory.pathPlaceholder":{message:`Geben Sie den Pfad ein (z. B. D:\\) und drücken Sie die Eingabetaste`,description:`Platzhalter für das bearbeitbare Eingabefeld des Verzeichnis-Pfads`},"directory.go":{message:`Gehe zu`,description:`Schaltfläche: navigiere zum eingegebenen Verzeichnis-Pfad`},"directory.loading":{message:`Wird geladen…`,description:`Directory listing loading hint`},"directory.empty":{message:`Dieses Verzeichnis ist leer.`,description:`Empty directory hint`},"directory.truncated":{message:`Die ersten 1000 Einträge werden angezeigt.`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`Bild anhängen`,description:`Attach image button title`},"session.removeImage":{message:`Bild entfernen`,description:`Remove attached image button title`},"session.imageAlt":{message:`Angehängtes Bild`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`Bild ist zu groß; halte jedes unter 12 MB.`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`Du kannst bis zu {count} Bilder anhängen.`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Standardmodell`,description:`Standardmodell.`},"session.cwdDefault":{message:`Standardverzeichnis`,description:`Standardverzeichnis.`},"session.settings":{message:`Sitzungseinstellungen`,description:`Einstellungen für die Sitzung`},"session.settingsLocked":{message:`Die Einstellungen dieser Sitzung sind gesperrt`,description:`Einstellungen sind für diese Sitzung gesperrt`},"session.attachFile":{message:`Datei hinzufügen`,description:`Datei anhängen.`},"session.attachmentImageAlt":{message:`Bild angehängt`,description:`Angehängtes Bild.`},"session.removeAttachment":{message:`Anhang entfernen`,description:`Anhang entfernen.`},"session.uploadingAttachment":{message:`Datei wird hochgeladen…`,description:`Hochladen von Anhängen…`},"session.attachmentTooLarge":{message:`Datei zu groß, bitte jede Datei unter 50 MB halten.`,description:`Datei ist zu groß; jede unter 50 MB halten.`},"session.attachmentLimit":{message:`Maximal {count} Dateien können angehängt werden.`,description:`Sie können bis zu {count} Dateien anhängen.`},"session.attachmentUploadError":{message:`Fehler beim Hochladen des Anhangs.`,description:`Fehler beim Hochladen des Anhangs.`},"notice.slashUnavailable":{message:`/{command} ist ein interaktiver Befehl und kann in einer Remote-Sitzung nicht ausgeführt werden.`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} ist für Codex in einer Remote-Sitzung nicht verfügbar.`,description:`Notice shown when a Codex slash command isn't supported remotely`},"notify.enable":{message:`Benachrichtigungen aktivieren`,description:`Tooltip on the notification bell when notifications are off`},"notify.disable":{message:`Benachrichtigungen deaktivieren`,description:`Tooltip on the notification bell when notifications are on`},"notify.enabled":{message:`Benachrichtigungen aktiviert. Wir melden uns, wenn eine Sitzung eine Freigabe benötigt.`,description:`Toast after enabling notifications`},"notify.disabled":{message:`Benachrichtigungen deaktiviert.`,description:`Toast after disabling notifications`},"notify.denied":{message:`Benachrichtigungen sind blockiert. Erlaube sie in deinen Browser-Einstellungen, um Freigabe-Hinweise zu erhalten.`,description:`Toast when notification permission is denied`},"notify.unsupported":{message:`Benachrichtigungen werden auf diesem Gerät nicht unterstützt.`,description:`Toast when notifications are unsupported`},"notify.failed":{message:`Benachrichtigungseinstellungen konnten nicht aktualisiert werden.`,description:`Toast when enabling or disabling notifications errors`}};export{e as default};
@@ -1,2 +0,0 @@
1
- import{A as e,B as t,C as n,D as r,E as i,F as a,G as o,H as s,I as c,L as l,M as u,N as d,O as f,P as p,R as m,S as ee,T as te,U as h,V as g,W as _,_ as v,a as y,b as ne,c as b,d as re,f as x,g as ie,h as S,i as C,j as w,k as T,ka as E,l as ae,m as oe,n as se,o as ce,p as D,r as O,s as k,t as A,u as j,v as M,w as N,x as P,y as F,z as I}from"./constants-vZG8JV9A.js";import{h as L}from"./models-C0YjUFNo.js";import{E as R,k as z}from"./i18n-Cu1HIOkL.js";import{Un as B,aa as V,da as H}from"./index-BkGHnQZ_.js";import{a as U,i as W,n as G,o as le,r as ue}from"./codingBridgeNotify-EGsSGIi4.js";function de(e,t){e.sessions[t.session_id]={...e.sessions[t.session_id],...t},e.events[t.session_id]??=[]}function fe(e,t,n){if(t===n||!e.sessions[t])return;e.sessions[n]={...e.sessions[n],...e.sessions[t],session_id:n},delete e.sessions[t];let r=e.events[t];r&&(r.length||!e.events[n]?.length)&&(e.events[n]=r),delete e.events[t],delete e.lastSeq[t],delete e.seqChecked[t],delete e.seqChecked[n];for(let r of e.permissions)r.session_id===t&&(r.session_id=n);e.currentSessionId===t&&(e.currentSessionId=n)}function pe(e,t){e.events[t.session_id]??=[],e.events[t.session_id].push(t)}function me(e,t,n,r){let i=e.events[t]?.find(e=>e.kind===`text`&&e.stream_id===n&&e.streaming);return i?(i.text=(i.text??``)+r,!0):!1}function he(e,t,n,r){let i=e.events[t]?.find(e=>e.kind===`text`&&e.stream_id===n);return i?(typeof r==`string`&&(i.text=r),i.streaming=!1,!0):!1}function ge(e,t){for(let n of e.events[t]??[])n.streaming&&=!1}function _e(e,t,n){let r=e.events[t];if(!r)return;if(!n){e.events[t]=[];return}let i=r.findIndex(e=>e.kind===`result`&&e.cut_uuid===n);i>=0&&(e.events[t]=r.slice(0,i+1))}var ve=()=>typeof crypto<`u`&&typeof crypto.randomUUID==`function`?crypto.randomUUID().replace(/-/g,``):`${Date.now().toString(16)}${Math.random().toString(16).slice(2)}`,ye=()=>{try{return typeof localStorage<`u`&&localStorage.getItem(`cbDebug`)===`1`}catch{return!1}},K=(e,t)=>{if(!ye())return;let n=t?.payload??{};console.debug(`[codingBridge]`,e,{type:t?.type,id:t?.id,node_id:t?.node_id??t?.from_node,action:n?.action,event:n?.event,session_id:n?.session_id,trace_id:n?.trace_id})},be=class{ws;token;handlers;reconnectDelay=o;reconnectTimer;closedByUser=!1;constructor(e){this.token=V(),this.handlers=e}get isOpen(){return this.ws?.readyState===WebSocket.OPEN}connect(){this.closedByUser=!1,this.open()}open(){if(this.ws&&(this.ws.readyState===WebSocket.OPEN||this.ws.readyState===WebSocket.CONNECTING))return;let e=`${E}?token=${encodeURIComponent(this.token)}`,t;try{t=new WebSocket(e)}catch(e){console.warn(`[codingBridge] failed to open socket`,e),this.scheduleReconnect();return}this.ws=t,t.onopen=()=>{this.reconnectDelay=o,this.handlers.onOpen?.()},t.onmessage=e=>this.onMessage(e),t.onclose=()=>{this.handlers.onClose?.(),this.closedByUser||this.scheduleReconnect()},t.onerror=()=>{t.close()}}onMessage(e){let n;try{n=JSON.parse(e.data)}catch{return}let r=n?.payload??{};switch(K(`recv`,n),n?.type){case h:this.handlers.onEvent?.(r,n?.from_node);break;case t:this.handlers.onNodesSnapshot?.(r.nodes??[]);break;case s:this.handlers.onNodeStatus?.(r.node_id,r.status);break;case g:this.handlers.onNodeRenamed?.(r.node_id,r.name);break;case v:this.handlers.onRelayError?.(r.code??`error`,r.message??``);break;default:break}}scheduleReconnect(){if(this.closedByUser||this.reconnectTimer)return;let e=this.reconnectDelay;this.reconnectTimer=setTimeout(()=>{this.reconnectTimer=void 0,this.open()},e),this.reconnectDelay=Math.min(this.reconnectDelay*2,_)}sendEnvelope(e,t){if(!this.isOpen)return;let n={v:2,id:ve(),ts:Date.now(),type:e,...t};K(`send`,n),this.ws?.send(JSON.stringify(n))}sendToNode(e,t){this.sendEnvelope(ie,{node_id:e,payload:t})}listNodes(){this.sendEnvelope(oe,{})}resume(e){this.sendEnvelope(S,{payload:{resume_from:e}})}close(){if(this.closedByUser=!0,this.reconnectTimer&&=(clearTimeout(this.reconnectTimer),void 0),this.ws){this.ws.onclose=null,this.ws.onerror=null,this.ws.onmessage=null,this.ws.onopen=null;try{this.ws.close()}catch{}this.ws=void 0}}},q,J=()=>typeof crypto<`u`&&typeof crypto.randomUUID==`function`?crypto.randomUUID().replace(/-/g,``):`${Date.now().toString(16)}${Math.random().toString(16).slice(2)}`,Y=(e,t,n)=>({id:J(),session_id:e,kind:t,ts:Date.now(),...n}),X=e=>{try{let t=JSON.parse(e);if(t&&typeof t==`object`)return t}catch{}return{answers:{}}},xe=e=>{let t=X(e).answers??{};return Object.entries(t).map(([e,t])=>`${e} → ${Array.isArray(t)?t.join(`, `):t}`).join(`
2
- `)},Se=(e,t)=>{G({title:`Approval needed`,body:`Claude wants to use ${t.tool||`a tool`}. Tap to review.`,data:t},t=>{t.node_id&&e(`selectNode`,t.node_id)})},Ce=(t,o,s,h,g)=>{let _=h?.event,v=h?.session_id,y=h?.trace_id,b=h?.seq;if(typeof b==`number`&&v){let e=s.lastSeq[v];if(e!==void 0&&b<=e){if(s.seqChecked[v])return;t(`resetLastSeq`,v),o(`resyncSession`,v)}t(`markSeqChecked`,v),t(`setLastSeq`,{session_id:v,seq:b})}switch(v&&y&&t(`updateSession`,{session_id:v,trace_id:y}),_){case u:t(`upsertSession`,{session_id:v,node_id:g,status:`running`,cwd:h.cwd,model:h.model,resolved_model:h.resolved_model,...h.effort===void 0?{}:{effort:h.effort},...h.permission_mode===void 0?{}:{permission_mode:h.permission_mode},trace_id:y});break;case f:{let e=h.sdk_session_id;v&&e&&e!==v&&t(`renameSession`,{from:v,to:e});break}case a:{let e=h.id;e&&s.events[v]?.find(t=>t.kind===`text`&&t.stream_id===e)?t(`appendDelta`,{session_id:v,stream_id:e,text:h.text??``}):t(`appendEvent`,Y(v,`text`,{text:h.text??``,stream_id:e,streaming:!0,trace_id:y}));break}case p:{let e=h.id;e&&s.events[v]?.find(t=>t.kind===`text`&&t.stream_id===e)?t(`finalizeStream`,{session_id:v,stream_id:e,text:h.text}):t(`appendEvent`,Y(v,`text`,{text:h.text,trace_id:y}));break}case c:t(`appendEvent`,Y(v,`thinking`,{text:h.text,trace_id:y}));break;case m:t(`appendEvent`,Y(v,`tool_use`,{tool:h.tool,tool_use_id:h.tool_use_id,input:h.input,trace_id:y}));break;case l:t(`appendEvent`,Y(v,`tool_result`,{tool_use_id:h.tool_use_id,content:h.content,is_error:h.is_error,trace_id:y}));break;case n:t(`addPermission`,{request_id:h.request_id,session_id:v,node_id:g,tool:h.tool,input:h.input,title:h.title,display_name:h.display_name,description:h.description}),Se(o,{node_id:g,session_id:v,request_id:h.request_id,tool:h.display_name||h.title||h.tool});break;case ee:for(let e of h.requests??[])t(`addPermission`,{request_id:e.request_id,session_id:e.session_id,node_id:g,tool:e.tool,input:e.input,title:e.title,display_name:e.display_name,description:e.description});break;case N:t(`removePermission`,h.request_id);break;case e:t(`finalizeAllStreams`,{session_id:v}),t(`appendEvent`,Y(v,`result`,{subtype:h.subtype,is_error:h.is_error,text:h.result,cost_usd:h.cost_usd,cut_uuid:h.cut_uuid,sdk_session_id:h.sdk_session_id,trace_id:y})),t(`updateSession`,{session_id:v,status:`idle`,cost_usd:h.cost_usd});break;case T:t(`appendEvent`,Y(v,`notice`,{text:h.text,subtype:h.code,command:h.command,level:h.level}));break;case r:t(`finalizeAllStreams`,{session_id:v}),t(`appendEvent`,Y(v,`error`,{text:h.message,trace_id:y})),t(`updateSession`,{session_id:v,status:`error`}),t(`updateStatus`,{key:`getHistoryDetail`,value:L.Success});break;case i:t(`finalizeAllStreams`,{session_id:v}),t(`updateSession`,{session_id:v,status:`closed`}),t(`clearSeqCheckedFor`,v);break;case w:t(`rewindToCut`,{session_id:v,cut_uuid:h.cut_uuid}),h.prompt&&t(`appendEvent`,Y(v,`prompt`,{text:h.prompt,trace_id:y})),t(`updateSession`,{session_id:v,status:`running`});break;case d:t(`resetLastSeq`,v),t(`clearSeqCheckedFor`,v),o(`resyncSession`,v);break;case te:for(let e of h.sessions??[]){let n=e.model;t(`upsertSession`,{session_id:e.session_id,node_id:g,status:e.status??`running`,started:!0,cwd:e.cwd,model:n,resolved_model:e.resolved_model,...e.effort===void 0?{}:{effort:e.effort},...e.permission_mode===void 0?{}:{permission_mode:e.permission_mode}})}break;case P:if(g){t(`setHistory`,{node_id:g,sessions:h.sessions??[]}),t(`updateStatus`,{key:`getHistory`,value:L.Success});let e=s.historyRef;e&&e.node_id===g&&!s.currentSessionId&&o(`reattachSession`,e)}break;case ne:we(t,s,h,g),t(`updateStatus`,{key:`getHistoryDetail`,value:L.Success});break;case F:t(`setDirectory`,{path:h.path,parent:h.parent??null,sep:h.sep??`/`,entries:h.entries??[],truncated:h.truncated,error:h.error});break;case M:g&&t(`setCapabilities`,{node_id:g,capabilities:{providers:h.providers??[]}});break;default:break}},we=(e,t,n,r)=>{let i=n?.session_id,a=Te(n?.provider);if(!i||!r)return;let o=a===`claude`||a===`codex`||a===`copilot`,s=t.sessions[i],c=!!s&&(s.started===!0||s.status===`running`||s.status===`starting`),l=t.lastComposer?.[r]??{},u=(n.resolved_model===void 0?void 0:n.model)??s?.model;e(`upsertSession`,{session_id:i,node_id:r,status:c?s.status:`idle`,cwd:n.cwd??s?.cwd??l.cwd,model:u,resolved_model:n.resolved_model??s?.resolved_model,effort:n.effort??s?.effort??l.effort,permission_mode:n.permission_mode??s?.permission_mode??l.permissionMode,provider:a,started:!!c,readonly:!o&&!c});let d=t.events[i]?.length??0,f=(n.events??[]).length,p=s?.status===`running`||s?.status===`starting`;c&&d>0&&(p||d>=f)||e(`setEvents`,{session_id:i,events:(n.events??[]).map((e,t)=>({id:J(),session_id:i,kind:e.kind,ts:typeof e.ts==`number`?e.ts:Date.now()+t,text:e.text,tool:e.tool,tool_use_id:e.tool_use_id,input:e.input,content:e.content,is_error:e.is_error,subtype:e.subtype,cost_usd:e.cost_usd}))}),e(`setCurrentNode`,r),e(`setCurrentSession`,i),e(`setHistoryRef`,{node_id:r,provider:a,session_id:i})},Te=e=>e===`codex`||e===`copilot`?e:`claude`,Z=0,Q=new Map,Ee=({commit:e})=>{Q.clear(),e(`resetAll`)},De=async()=>{},Oe=async()=>{},ke=(e,t,n)=>{e(`setNodeName`,{node_id:t,name:n})},$={namespaced:!0,state:H,mutations:{resetAll:e=>{Object.assign(e,H())},updateStatus:(e,t)=>{e.status[t.key]=t.value},setConnection:(e,t)=>{e.connection=t},setNodes:(e,t)=>{e.nodes=t},mergeNodeSnapshot:(e,t)=>{let n=new Set(t.map(e=>e.node_id)),r=new Map(t.map(e=>[e.node_id,e.name]));for(let t of e.nodes){t.status=n.has(t.node_id)?`online`:`offline`;let e=r.get(t.node_id);e&&(t.name=e)}for(let n of t)e.nodes.some(e=>e.node_id===n.node_id)||e.nodes.push({...n,status:`online`})},setNodeStatus:(e,t)=>{let n=e.nodes.find(e=>e.node_id===t.node_id);n&&(n.status=t.status)},setNodeName:(e,t)=>{let n=e.nodes.find(e=>e.node_id===t.node_id);n&&(n.name=t.name)},setCurrentNode:(e,t)=>{e.currentNodeId=t},setCurrentSession:(e,t)=>{e.currentSessionId=t},upsertSession:(e,t)=>{de(e,t)},updateSession:(e,t)=>{let n=e.sessions[t.session_id];n&&(e.sessions[t.session_id]={...n,...t})},renameSession:(e,t)=>{fe(e,t.from,t.to),e.historyRef?.session_id===t.from&&(e.historyRef={...e.historyRef,session_id:t.to})},appendEvent:(e,t)=>{pe(e,t)},truncateEventsBefore:(e,t)=>{let n=e.events[t.session_id];if(!n)return;let r=n.findIndex(e=>e.id===t.event_id);r>=0&&(e.events[t.session_id]=n.slice(0,r))},rewindToCut:(e,t)=>{_e(e,t.session_id,t.cut_uuid)},setLastSeq:(e,t)=>{let n=e.lastSeq[t.session_id]??0;t.seq>n&&(e.lastSeq[t.session_id]=t.seq)},resetLastSeq:(e,t)=>{delete e.lastSeq[t]},markSeqChecked:(e,t)=>{e.seqChecked[t]=!0},clearSeqChecked:e=>{e.seqChecked={}},clearSeqCheckedFor:(e,t)=>{delete e.seqChecked[t]},appendDelta:(e,t)=>{me(e,t.session_id,t.stream_id,t.text)},finalizeStream:(e,t)=>{he(e,t.session_id,t.stream_id,t.text)},finalizeAllStreams:(e,t)=>{ge(e,t.session_id)},setEvents:(e,t)=>{e.events[t.session_id]=t.events},setHistory:(e,t)=>{e.history[t.node_id]=t.sessions},setHistoryRef:(e,t)=>{e.historyRef=t},setDirectory:(e,t)=>{e.directory=t,e.directoryLoading=!1},setDirectoryLoading:(e,t)=>{e.directoryLoading=t},setLastComposer:(e,t)=>{e.lastComposer={...e.lastComposer,[t.node_id]:{...e.lastComposer[t.node_id],...t.prefs}}},setCapabilities:(e,t)=>{e.capabilities[t.node_id]=t.capabilities},addPermission:(e,t)=>{e.permissions.some(e=>e.request_id===t.request_id)||e.permissions.push(t)},removePermission:(e,t)=>{e.permissions=e.permissions.filter(e=>e.request_id!==t)},removeNodeData:(e,t)=>{delete e.history[t],delete e.capabilities[t],e.historyRef?.node_id===t&&(e.historyRef=void 0);for(let n of Object.values(e.sessions))n.node_id===t&&(delete e.sessions[n.session_id],delete e.events[n.session_id],delete e.lastSeq[n.session_id],delete e.seqChecked[n.session_id],e.currentSessionId===n.session_id&&(e.currentSessionId=void 0))}},actions:{resetAll:Ee,getApplications:De,setApplication:Oe,getNodes:async({commit:e,rootState:t})=>{let n=t.token?.access;if(!n)return[];e(`updateStatus`,{key:`getNodes`,value:L.Request});let r=Z;try{let{data:t}=await B.getNodes({token:n}),i=(t.nodes??[]).map(e=>{let t=Q.get(e.node_id);return t&&t.at>r?{...e,name:t.name}:e});return e(`setNodes`,i),e(`updateStatus`,{key:`getNodes`,value:L.Success}),i}catch(t){throw e(`updateStatus`,{key:`getNodes`,value:L.Error}),t}},claimPair:async({commit:e,dispatch:t,rootState:n},r)=>{let i=n.token?.access;if(!i)throw Error(`not authenticated`);e(`updateStatus`,{key:`claimPair`,value:L.Request});try{let{data:n}=await B.claimPair(r.trim(),{token:i});return e(`updateStatus`,{key:`claimPair`,value:L.Success}),await t(`getNodes`),n.node_name}catch(t){throw e(`updateStatus`,{key:`claimPair`,value:L.Error}),t}},deleteNode:async({commit:e,dispatch:t,state:n,rootState:r},i)=>{let a=r.token?.access;if(!a)throw Error(`not authenticated`);e(`updateStatus`,{key:`deleteNode`,value:L.Request});try{await B.deleteNode(i,{token:a}),e(`removeNodeData`,i),n.currentNodeId===i&&(e(`setCurrentNode`,void 0),e(`setCurrentSession`,void 0)),e(`updateStatus`,{key:`deleteNode`,value:L.Success}),await t(`getNodes`)}catch(t){throw e(`updateStatus`,{key:`deleteNode`,value:L.Error}),t}},renameNode:async({commit:e,rootState:t},n)=>{let r=t.token?.access;if(!r)throw Error(`not authenticated`);let i=n.name.trim();if(!i)throw Error(`name must not be empty`);e(`updateStatus`,{key:`renameNode`,value:L.Request});try{let{data:t}=await B.renameNode(n.nodeId,i,{token:r}),a=t?.name??i;Q.size>=50&&Q.clear(),Q.set(n.nodeId,{name:a,at:++Z}),e(`setNodeName`,{node_id:n.nodeId,name:a}),e(`updateStatus`,{key:`renameNode`,value:L.Success})}catch(t){throw e(`updateStatus`,{key:`renameNode`,value:L.Error}),t}},connect:({commit:e,dispatch:t,state:n,rootState:r})=>{r.token?.access&&(q?.isOpen||(q?.close(),e(`setConnection`,`connecting`),q=new be({onOpen:()=>{e(`setConnection`,`connected`),e(`clearSeqChecked`);let r={...n.lastSeq};Object.keys(r).length&&q?.resume(r),n.currentNodeId&&(t(`getHistory`,n.currentNodeId),t(`getCapabilities`,n.currentNodeId),t(`requestSessions`,n.currentNodeId),t(`requestPendingPermissions`,n.currentNodeId))},onClose:()=>e(`setConnection`,`disconnected`),onEvent:(r,i)=>Ce(e,t,n,r,i),onNodesSnapshot:n=>{e(`mergeNodeSnapshot`,n),t(`getNodes`)},onNodeStatus:(r,i)=>{e(`setNodeStatus`,{node_id:r,status:i}),i===`online`&&r===n.currentNodeId&&(t(`getHistory`,r),t(`getCapabilities`,r),t(`requestSessions`,r),t(`requestPendingPermissions`,r))},onNodeRenamed:(t,n)=>{ke(e,t,n)},onRelayError:(e,t)=>console.warn(`[codingBridge] relay error`,e,t)}),q.connect()))},disconnect:({commit:e})=>{q?.close(),q=void 0,e(`setConnection`,`disconnected`)},selectNode:({commit:e,dispatch:t,state:n},r)=>{if(e(`setCurrentNode`,r),!r){e(`setCurrentSession`,void 0);return}let i=Object.values(n.sessions).filter(e=>e.node_id===r).map(e=>e.session_id);e(`setCurrentSession`,i.length?i[i.length-1]:void 0),t(`getHistory`,r),t(`getCapabilities`,r),t(`requestSessions`,r),t(`requestPendingPermissions`,r)},requestSessions:({state:e},t)=>{let n=t??e.currentNodeId;!n||!q||q.sendToNode(n,{action:b})},requestPendingPermissions:({state:e},t)=>{let n=t??e.currentNodeId;!n||!q||q.sendToNode(n,{action:ce})},enableNotifications:async({dispatch:e,rootState:t})=>{let n=t.token?.access;if(!n)return`unsupported`;if(z()){let t=await ue(t=>{t?.node_id&&(e(`selectNode`,t.node_id),e(`requestPendingPermissions`,t.node_id))});return t?(await B.savePushSubscription({kind:R()?`apns`:`fcm`,token:t,ua:navigator.userAgent},{token:n}),`enabled`):`denied`}let r=await W();if(r===`unsupported`)return`unsupported`;if(r!==`granted`)return`denied`;try{let{data:e}=await B.getPushConfig();if(e.web_push_enabled&&e.vapid_public_key){let t=await U(e.vapid_public_key);t&&await B.savePushSubscription({kind:`webpush`,subscription:t,ua:navigator.userAgent},{token:n})}}catch(e){console.warn(`[codingBridge] web push setup skipped`,e)}return`enabled`},disableNotifications:async({rootState:e})=>{let t=e.token?.access;if(z()||!t)return;let n=await le();if(n)try{await B.deletePushSubscription({endpoint:n},{token:t})}catch(e){console.warn(`[codingBridge] failed to deregister web push`,e)}},newSession:({commit:e})=>{e(`setCurrentSession`,void 0),e(`setHistoryRef`,void 0)},sendPrompt:({commit:e,state:t},n)=>{let r=t.currentNodeId,i=n.prompt?.trim(),a=n.images?.length?n.images:void 0,o=n.attachments?.length?n.attachments:void 0;if(!r||!q||!i&&!a&&!o)return;let s=J(),c=t.currentSessionId,l=c?t.sessions[c]:void 0;if(!l||!l.started){let t=l?.provider||n.provider||`claude`;l?(c=l.session_id,e(`updateSession`,{session_id:c,status:`starting`,trace_id:s,...n.cwd?{cwd:n.cwd}:{},...n.model===void 0?{}:{model:n.model},...n.effort===void 0?{}:{effort:n.effort},...n.permissionMode===void 0?{}:{permission_mode:n.permissionMode}})):(c=J(),e(`upsertSession`,{session_id:c,node_id:r,status:`starting`,cwd:n.cwd,model:n.model,effort:n.effort,permission_mode:n.permissionMode,provider:t,trace_id:s}),e(`setCurrentSession`,c),e(`setHistoryRef`,{node_id:r,provider:t,session_id:c})),e(`appendEvent`,Y(c,`prompt`,{text:i,images:a,attachments:o,trace_id:s})),e(`updateSession`,{session_id:c,started:!0}),q.sendToNode(r,{action:D,session_id:c,trace_id:s,prompt:i,cwd:n.cwd||l?.cwd||void 0,model:n.model||l?.model||void 0,permission_mode:n.permissionMode||`bypassPermissions`,provider:t,effort:n.effort||void 0,images:a,attachments:o,resume_session_id:l?.session_id||void 0})}else e(`updateSession`,{session_id:c,trace_id:s}),e(`appendEvent`,Y(c,`prompt`,{text:i,images:a,attachments:o,trace_id:s})),e(`updateSession`,{session_id:c,status:`running`,model:n.model||void 0,...n.effort===void 0?{}:{effort:n.effort},...n.permissionMode===void 0?{}:{permission_mode:n.permissionMode}}),q.sendToNode(r,{action:x,session_id:c,trace_id:s,prompt:i,model:n.model??``,...n.effort===void 0?{}:{effort:n.effort},...n.permissionMode===void 0?{}:{permission_mode:n.permissionMode},images:a,attachments:o})},editPrompt:({commit:e,state:t},n)=>{let r=t.currentNodeId,i=t.currentSessionId,a=n.prompt?.trim();if(!r||!i||!q||!a)return;let o=t.sessions[i],s=t.events[i]??[],c=s.findIndex(e=>e.id===n.eventId);if(!o||c<0)return;let l;for(let e=c-1;e>=0;e--)if(s[e].kind===`result`&&s[e].cut_uuid){l=s[e].cut_uuid;break}let u=n.images?.length?n.images:void 0,d=n.attachments?.length?n.attachments:void 0,f=J();e(`truncateEventsBefore`,{session_id:i,event_id:n.eventId}),e(`updateSession`,{session_id:i,status:`running`,trace_id:f,model:n.model||o.model||void 0,...n.effort===void 0?{}:{effort:n.effort},...n.permissionMode===void 0?{}:{permission_mode:n.permissionMode}}),e(`appendEvent`,Y(i,`prompt`,{text:a,images:u,attachments:d,trace_id:f})),q.sendToNode(r,{action:j,session_id:i,trace_id:f,cut_uuid:l,prompt:a,model:n.model||o.model||void 0,permission_mode:n.permissionMode||void 0,effort:n.effort||void 0,images:u,attachments:d,restore_code:!!n.restoreCode})},retryLastPrompt:({commit:e,dispatch:t,state:n})=>{let r=n.currentSessionId;if(!r)return;let i=n.sessions[r],a=[...n.events[r]??[]].reverse().find(e=>e.kind===`prompt`);!i||!a||(e(`updateSession`,{session_id:r,started:!1}),t(`sendPrompt`,{prompt:a.text??``,cwd:i.cwd,model:i.model,provider:i.provider,images:a.images,attachments:a.attachments}))},interruptSession:({state:e})=>{let t=e.currentSessionId,n=e.currentNodeId;!t||!n||!q||q.sendToNode(n,{action:re,session_id:t})},closeSession:({commit:e,state:t},n)=>{let r=n??t.currentSessionId;if(!r)return;let i=t.sessions[r]?.node_id??t.currentNodeId;i&&q&&q.sendToNode(i,{action:ae,session_id:r}),e(`updateSession`,{session_id:r,status:`closed`}),t.currentSessionId===r&&e(`setCurrentSession`,void 0)},resolvePermission:({commit:e,state:t},n)=>{let r=t.permissions.find(e=>e.request_id===n.request_id);r&&(q?.sendToNode(r.node_id,{action:k,request_id:n.request_id,decision:n.decision}),e(`removePermission`,n.request_id))},answerQuestion:({commit:e,state:t},n)=>{let r=t.permissions.find(e=>e.request_id===n.request_id);r&&(q?.sendToNode(r.node_id,{action:k,request_id:n.request_id,decision:`allow`,answer:X(n.output),answer_text:xe(n.output)}),e(`removePermission`,n.request_id))},getHistory:({commit:e,state:t},n)=>{let r=n??t.currentNodeId;!r||!q||(e(`updateStatus`,{key:`getHistory`,value:L.Request}),q.sendToNode(r,{action:C,limit:I}))},getHistoryDetail:({commit:e},t)=>{!t?.node_id||!t?.session_id||!q||(e(`updateStatus`,{key:`getHistoryDetail`,value:L.Request}),q.sendToNode(t.node_id,{action:O,provider:t.provider,session_id:t.session_id}),setTimeout(()=>e(`updateStatus`,{key:`getHistoryDetail`,value:L.Success}),12e3))},markHistoryRead:(e,t)=>{!t?.node_id||!t?.session_id||!t?.provider||!q||q.sendToNode(t.node_id,{action:y,provider:t.provider,session_id:t.session_id,updated_at:t.updated_at,limit:I})},reattachSession:({state:e,commit:t,dispatch:n},r)=>{if(!r?.node_id||!r?.session_id)return;t(`setCurrentNode`,r.node_id),t(`setCurrentSession`,r.session_id),n(`getHistoryDetail`,r),n(`requestSessions`,r.node_id),n(`requestPendingPermissions`,r.node_id);let i=e.lastSeq[r.session_id];i!==void 0&&q?.resume({[r.session_id]:i})},resyncSession:({state:e,dispatch:t},n)=>{let r=e.sessions[n];r?.node_id&&t(`getHistoryDetail`,{node_id:r.node_id,session_id:n,provider:r.provider??`claude`})},browseDir:({commit:e,state:t},n)=>{let r=t.currentNodeId;!r||!q||(e(`setDirectoryLoading`,!0),q.sendToNode(r,{action:se,path:n||void 0}))},clearDirectory:({commit:e})=>{e(`setDirectory`,void 0)},getCapabilities:({state:e},t)=>{let n=t??e.currentNodeId;!n||!q||q.sendToNode(n,{action:A})}}};export{$ as codingBridge,$ as default};