@acedatacloud/nexior 3.332.2 → 3.333.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (296) hide show
  1. package/dist/assets/{ApiCodeButton-PTmQxQ8C.js → ApiCodeButton-D_45ZZNZ.js} +1 -1
  2. package/dist/assets/{Artifacts-ptrXzUl2.js → Artifacts-C7gOhwhl.js} +1 -1
  3. package/dist/assets/{AskUserQuestionCard-3m7VMPp1.js → AskUserQuestionCard-D5x9FqY4.js} +1 -1
  4. package/dist/assets/{AudioPreview-BjV8G1Dl.js → AudioPreview-CgByAntF.js} +1 -1
  5. package/dist/assets/{Auth-gjwzeV1y.js → Auth-l6vQomeJ.js} +1 -1
  6. package/dist/assets/{Bare-BLijhdDe.js → Bare-jdxWn_ue.js} +1 -1
  7. package/dist/assets/{BotPlaceholder-B5YZU74a.js → BotPlaceholder-CWvJLsQt.js} +1 -1
  8. package/dist/assets/{BottomFooter-8_JuEDBo.js → BottomFooter-DpZy6lBh.js} +1 -1
  9. package/dist/assets/{Callback-DAMCbska.js → Callback-0ANQ2AST.js} +1 -1
  10. package/dist/assets/{CodeSnippet-BIwF3ccN.js → CodeSnippet-BrACxNpQ.js} +1 -1
  11. package/dist/assets/{Console-Q2sR4aF-.js → Console-DJLV3TGs.js} +1 -1
  12. package/dist/assets/{Consumption-CtY57qoS.js → Consumption-DvLMdgth.js} +1 -1
  13. package/dist/assets/Conversation-Ctt68KJA.js +1 -0
  14. package/dist/assets/{Conversation-r1gJWpXn.js → Conversation-DjDgALhy.js} +1 -1
  15. package/dist/assets/{CopyToClipboard-BGMAd_ao.js → CopyToClipboard-zxMSspk6.js} +1 -1
  16. package/dist/assets/{Detail-Dhn78kLr.js → Detail-B08zaag-.js} +2 -2
  17. package/dist/assets/Extra-CUzklalK.js +1 -0
  18. package/dist/assets/{FilePreview-8uTsPY7Q.js → FilePreview-CIK3LdbH.js} +1 -1
  19. package/dist/assets/{Hailuo-5lGG3pJo.js → Hailuo-DRsP-uM8.js} +1 -1
  20. package/dist/assets/{History-Ct2YYKEh.js → History-wM0JF3Sp.js} +1 -1
  21. package/dist/assets/{ImagePreview-BurOUpBP.js → ImagePreview-DI9PzDrr.js} +1 -1
  22. package/dist/assets/{ImageWrapper-Bm5IgJsm.js → ImageWrapper-CcXyFr-X.js} +1 -1
  23. package/dist/assets/{Index-DFxQLEF02.js → Index-B7Tt71mm2.js} +1 -1
  24. package/dist/assets/Index-BK9W3RSf.js +1 -0
  25. package/dist/assets/{Index-D1C-e3M3.js → Index-BSG-LVi3.js} +1 -1
  26. package/dist/assets/Index-BXRzf66p.js +1 -0
  27. package/dist/assets/Index-BeypRXPg.js +1 -0
  28. package/dist/assets/{Index-CYF-3OE8.js → Index-BfQhX4r5.js} +1 -1
  29. package/dist/assets/{Index-DRgDInfj2.js → Index-BlRnswJe2.js} +1 -1
  30. package/dist/assets/{Index-D9KtQ_Ga.js → Index-BtMrXtRr.js} +1 -1
  31. package/dist/assets/{Index-BVYOe2gq.js → Index-Bw2xxkbt.js} +1 -1
  32. package/dist/assets/{Index-BMJNiYni.js → Index-Bx7kV11t.js} +1 -1
  33. package/dist/assets/Index-CMEXadaw2.js +1 -0
  34. package/dist/assets/{Index-DEUzgUZV.js → Index-CTgwKCBb.js} +1 -1
  35. package/dist/assets/{Index-p3i34c3L.js → Index-CWc0oZ_j.js} +1 -1
  36. package/dist/assets/Index-CY0oX7qB.css +1 -0
  37. package/dist/assets/{Index-Bf7y1vjV.js → Index-CgDsMWy_.js} +1 -1
  38. package/dist/assets/{Index-1YckOkS_.js → Index-ClbTxfgn.js} +1 -1
  39. package/dist/assets/{Index-CyoJLlSy2.js → Index-CwZHHyEs2.js} +1 -1
  40. package/dist/assets/{Index-B5jcJn7w.js → Index-D1qihpnj.js} +1 -1
  41. package/dist/assets/Index-D7AGv1e_.js +1 -0
  42. package/dist/assets/{Index-vZteTMM42.js → Index-DcNRiSlf2.js} +2 -2
  43. package/dist/assets/Index-DeagYQWO2.js +1 -0
  44. package/dist/assets/{Index-15tl3Jqo.js → Index-Doeyg3on.js} +1 -1
  45. package/dist/assets/{Index-DNHqEQYk.js → Index-DsGi3PKp.js} +1 -1
  46. package/dist/assets/Index-Dtd4r77Z.js +1 -0
  47. package/dist/assets/{Index-xpPzSCjx.js → Index-DunBBXOV.js} +1 -1
  48. package/dist/assets/{Index-BYm1Gg8w2.js → Index-DvYsxuR_2.js} +1 -1
  49. package/dist/assets/{Index-DaKf-ba4.js → Index-Dz4PtczJ.js} +1 -1
  50. package/dist/assets/{Index-Dyfhd8-A.js → Index-ICf2rZRv.js} +1 -1
  51. package/dist/assets/{Index-DGMbpxdB.js → Index-mZsl2E56.js} +1 -1
  52. package/dist/assets/{Index-BUYIdByQ.js → Index-r2XRHBTS.js} +1 -1
  53. package/dist/assets/{Index-WcmYcJom.js → Index-sMB6p2rE.js} +1 -1
  54. package/dist/assets/{Invitees-BeMIzjt-.js → Invitees-D1NvbCWH.js} +1 -1
  55. package/dist/assets/List-45oD4wPY.js +1 -0
  56. package/dist/assets/List-BHx97e6F.js +1 -0
  57. package/dist/assets/List-CU9DdA7I.js +1 -0
  58. package/dist/assets/{LocalTools-c5rEiRG5.js → LocalTools-9p-Mbg4t.js} +1 -1
  59. package/dist/assets/LocalTools-DB4bYUoL.js +5 -0
  60. package/dist/assets/{Main-CJaPja4x.js → Main-COIeEjNb.js} +1 -1
  61. package/dist/assets/{Message-Dgn0vj_y.js → Message-DvGFhpLW.js} +2 -2
  62. package/dist/assets/{Model-B5exEKaZ.js → Model-B9lD7KRY.js} +1 -1
  63. package/dist/assets/{Navigator-DAmS2mXG.js → Navigator-BctuncPy.js} +4 -4
  64. package/dist/assets/{NotFound-v7V07iY4.js → NotFound-DjXiYqeK.js} +1 -1
  65. package/dist/assets/{Pay-CcXgRVFH.js → Pay-DIlOZEj-.js} +1 -1
  66. package/dist/assets/{Player-BNDEE6k7.js → Player-B2d_QQg3.js} +1 -1
  67. package/dist/assets/{Poivelle-CAX_s3pt.js → Poivelle-D1YDLQuG.js} +1 -1
  68. package/dist/assets/{PromptTextarea-BZ8MvZT8.js → PromptTextarea-CvewN2gz.js} +1 -1
  69. package/dist/assets/{RealtimeCall-DM_sL1dz.js → RealtimeCall-DvNII0RS.js} +1 -1
  70. package/dist/assets/ScheduledTasks-CZFkOb_a.js +2 -0
  71. package/dist/assets/{Status-DoTwhdhn.js → Status-CIfPehla.js} +1 -1
  72. package/dist/assets/{Subscribe-DK8ckWX-.js → Subscribe-DmGrP5s-.js} +1 -1
  73. package/dist/assets/{TabSwitcher-CL91oW_c.js → TabSwitcher-MOUIMk14.js} +1 -1
  74. package/dist/assets/{Tts-BlcUw5zg.js → Tts-CTsCW9WE.js} +1 -1
  75. package/dist/assets/{VideoPlayer-D6APFQw0.js → VideoPlayer-CuPK2nmG.js} +1 -1
  76. package/dist/assets/{alert-Cyt4GafT.js → alert-WwBUWB1y.js} +1 -1
  77. package/dist/assets/arrow-down-D2xoss9L.js +1 -0
  78. package/dist/assets/{arrow-down-wide-narrow-BHe9vGyi.js → arrow-down-wide-narrow-DyR5jkzj.js} +1 -1
  79. package/dist/assets/arrow-left-CylEfROC.js +1 -0
  80. package/dist/assets/arrow-right-CFu7qqCw.js +1 -0
  81. package/dist/assets/arrow-up-Dw80TrLN.js +1 -0
  82. package/dist/assets/avatar-qbA9Q0SX.js +1 -0
  83. package/dist/assets/{basic-B20k_cxL.js → basic-BgO7E9WX.js} +1 -1
  84. package/dist/assets/{box-C7yYYBtt.js → box-C5_1LyPO.js} +1 -1
  85. package/dist/assets/{boxes-Bv2XKPlq.js → boxes-b6XRsAOv.js} +1 -1
  86. package/dist/assets/{brain-COWNzKwc.js → brain-B3YfDy5Q.js} +1 -1
  87. package/dist/assets/{chart-no-axes-combined-BgNk4yFV.js → chart-no-axes-combined-D4f97aJi.js} +1 -1
  88. package/dist/assets/chat-DLl5hCm4.js +1 -0
  89. package/dist/assets/check-7ednhBu6.js +1 -0
  90. package/dist/assets/chevron-down-7JI8KIke.js +1 -0
  91. package/dist/assets/chevron-right-Cz3Q0Pki.js +1 -0
  92. package/dist/assets/circle-check-biRA4mYc.js +1 -0
  93. package/dist/assets/clock-CUWhpM5A.js +1 -0
  94. package/dist/assets/{codingBridge-DQlCUB1v.js → codingBridge-CBaUJVEm.js} +2 -2
  95. package/dist/assets/{codingBridgeNotify-CJMD-8jB.js → codingBridgeNotify-DlKspNq5.js} +2 -2
  96. package/dist/assets/{coins-D4F3wC3F.js → coins-FIVFzynq.js} +1 -1
  97. package/dist/assets/{collapse-D9ySS5_w.js → collapse-BnO2TYLs.js} +1 -1
  98. package/dist/assets/{constants-lvoVrMEx.js → constants-CGPrJer0.js} +1 -1
  99. package/dist/assets/{copy-BnKFqZ1i.js → copy-CTuzTNJ5.js} +1 -1
  100. package/dist/assets/{createTaskActions-CCQ0kCyC.js → createTaskActions-CtcbS2iG.js} +1 -1
  101. package/dist/assets/{digitalhuman-QSkq4Rby.js → digitalhuman-BAwQCdro.js} +1 -1
  102. package/dist/assets/{dollar-sign-ztcb0QHf.js → dollar-sign-CUD504ay.js} +1 -1
  103. package/dist/assets/{download-DJqfJM7y.js → download-CpGhHJp9.js} +1 -1
  104. package/dist/assets/{drawer-BvCbCWSZ.js → drawer-C56tib0X.js} +1 -1
  105. package/dist/assets/{dropdown-DZyDYaNy.js → dropdown-B0r-pxJy.js} +1 -1
  106. package/dist/assets/{dropdown-D-v1liJu.js → dropdown-CPOlDHck.js} +1 -1
  107. package/dist/assets/{ellipsis-BmbZv3Iw.js → ellipsis-BQD5KKiY.js} +1 -1
  108. package/dist/assets/{esm-BTswfK2L.js → esm-0Sw9Mj2t.js} +1 -1
  109. package/dist/assets/{esm-Bh-2tOt8.js → esm-BDRwDbaX.js} +3 -3
  110. package/dist/assets/esm-C_4k_1Dn.js +1 -0
  111. package/dist/assets/{esm-SnOcaC_I.js → esm-D93ubut2.js} +2 -2
  112. package/dist/assets/{esm-C5rY8ieZ.js → esm-Dj2LDcpy.js} +2 -2
  113. package/dist/assets/{esm-wUjFMZxp.js → esm-HwcazyYj.js} +1 -1
  114. package/dist/assets/{esm-CjtSt5UR.js → esm-bIoRnLRd.js} +1 -1
  115. package/dist/assets/{external-link-D21_cpiD.js → external-link-CanGZR_C.js} +1 -1
  116. package/dist/assets/{eye-BM1-b_br.js → eye-Dy8z7UND.js} +1 -1
  117. package/dist/assets/{file-output-CQOQxEqz.js → file-output-CRPWKq1R.js} +1 -1
  118. package/dist/assets/{file-text-BWhnb7pY.js → file-text-CByqtAUz.js} +1 -1
  119. package/dist/assets/{fish-DMB5C7cf.js → fish-C8syoDkO.js} +1 -1
  120. package/dist/assets/{flux-BFk-I96Q.js → flux-Bgw_dz1C.js} +1 -1
  121. package/dist/assets/{folder-YwSPRjfx.js → folder-DjLA-Dwt.js} +1 -1
  122. package/dist/assets/gauge-C-INojvz.js +1 -0
  123. package/dist/assets/{globe-Ik1kJifc.js → globe-BHrNeIhi.js} +1 -1
  124. package/dist/assets/{seedance-D0bxKYcj.js → grokvideo-KgpjpZ00.js} +1 -1
  125. package/dist/assets/{hailuo-C4yCxavM.js → hailuo-B9d8x00X.js} +1 -1
  126. package/dist/assets/{headphones-DFPiepcy.js → headphones-CbwI7Qct.js} +1 -1
  127. package/dist/assets/{history-DlYQA_Zo.js → history-BRB7u1Js.js} +1 -1
  128. package/dist/assets/{house-CXHKr8IF.js → house-DTRzclUu.js} +1 -1
  129. package/dist/assets/{i18n-BC5MX0cI.js → i18n-yqzG0CWr.js} +1 -1
  130. package/dist/assets/{image-DtZM0r8d.js → image-hOAqdX9u.js} +1 -1
  131. package/dist/assets/{index-0JujvRxi.js → index-qY8Xwe-x.js} +16 -16
  132. package/dist/assets/{index.browser.esm-BezvRoVV.js → index.browser.esm-BnSpGnA7.js} +1 -1
  133. package/dist/assets/{index.es-Do5YKEnU.js → index.es-CIS0HCG6.js} +1 -1
  134. package/dist/assets/{info-BUIrkQZV.js → info-Cf_6Kyvd.js} +1 -1
  135. package/dist/assets/{input-number-e_tKMmeS.js → input-number-I6Tu7oha.js} +1 -1
  136. package/dist/assets/{key-round-BJgpLryQ.js → key-round-B2iG8DVb.js} +1 -1
  137. package/dist/assets/{kling-D1mWHzXZ.js → kling-jdT7DvkZ.js} +1 -1
  138. package/dist/assets/{languages-U3xFccX0.js → languages-DTEI-Opg.js} +1 -1
  139. package/dist/assets/{laptop-D1xz8ihk.js → laptop-BWBCtz00.js} +1 -1
  140. package/dist/assets/{lightbulb-DPDBzSLa.js → lightbulb-DXr_ZLfD.js} +1 -1
  141. package/dist/assets/{link-Dc9XSsMC.js → link-CZqGohLa.js} +1 -1
  142. package/dist/assets/loader-circle-BWFz6arm.js +1 -0
  143. package/dist/assets/{veo-BGDy_Tmi.js → luma-gHG72Q2f.js} +1 -1
  144. package/dist/assets/{maestro-CN2idGFS.js → maestro-CFILw42y.js} +1 -1
  145. package/dist/assets/{maestro-CEKwwIjJ.js → maestro-ekbeUVLa.js} +1 -1
  146. package/dist/assets/{mail-kYuNXrka.js → mail-CLtYhDrg.js} +1 -1
  147. package/dist/assets/{message-circle-DrEQQJje.js → message-circle-C0rP6hSD.js} +1 -1
  148. package/dist/assets/{mic-D6SLKabE.js → mic-8QjJnavB.js} +1 -1
  149. package/dist/assets/{midjourney-CmdCSML0.js → midjourney-DKGvBIzn.js} +1 -1
  150. package/dist/assets/{mobileLocalExec-Bus5bXVB.js → mobileLocalExec-DanF8wU6.js} +2 -2
  151. package/dist/assets/{mouse-pointer-2-BkWuevUn.js → mouse-pointer-2-Ca__H4dl.js} +1 -1
  152. package/dist/assets/music-2-DRg_krpf.js +1 -0
  153. package/dist/assets/{nanobanana-DPplSMmd.js → nanobanana-To1AOFDY.js} +1 -1
  154. package/dist/assets/{omni-DMIyuVKQ.js → omni-EIKi5Q0J.js} +1 -1
  155. package/dist/assets/{openaiimage-DMRpfB4x.js → openaiimage-DL1iUpvS.js} +1 -1
  156. package/dist/assets/{pagination-Bfa8WTnF.js → pagination-CCsgYx3G.js} +2 -2
  157. package/dist/assets/{pagination-D4-j9bk3.js → pagination-Dvjqt2QJ.js} +1 -1
  158. package/dist/assets/{palette-Bc6oDF61.js → palette-CHBLUhBD.js} +1 -1
  159. package/dist/assets/{paperclip-JK2A-Q9C.js → paperclip-BUSdM_1G.js} +1 -1
  160. package/dist/assets/{pause-Mft-fvd_.js → pause-D42oW7zb.js} +1 -1
  161. package/dist/assets/{pencil-C4h29ypb.js → pencil-D1vyGIox.js} +1 -1
  162. package/dist/assets/pika-CpGOuEbo.js +1 -0
  163. package/dist/assets/{pika-CWVKipiX.js → pixverse-D6hvV0FG.js} +1 -1
  164. package/dist/assets/play-CrFo2ntQ.js +1 -0
  165. package/dist/assets/plus-AVZIPgTz.js +1 -0
  166. package/dist/assets/poivelle-6J5pFpGH.js +1 -0
  167. package/dist/assets/{popover-D7MP5VFi.js → popover-C4buuH_b.js} +1 -1
  168. package/dist/assets/{producer-ObgZt3fd.js → producer-C6S9dl_X.js} +1 -1
  169. package/dist/assets/{qrart-D1TJgkJf.js → qrart-Ald10JoH.js} +1 -1
  170. package/dist/assets/{realtime-DM3guTbT.js → realtime-5CjnvVkp.js} +1 -1
  171. package/dist/assets/{refresh-cw-D5ShQ0yc.js → refresh-cw--c-QsUoO.js} +1 -1
  172. package/dist/assets/rotate-ccw-6FACu8Mm.js +1 -0
  173. package/dist/assets/rotate-cw-B8Qgep6Y.js +1 -0
  174. package/dist/assets/{row-CdT0aZsY.js → row-CZqDhN3K.js} +1 -1
  175. package/dist/assets/search-XtMlez7y.js +1 -0
  176. package/dist/assets/{grokvideo-Cz2_f0FB.js → seedance-22RqVmv3.js} +1 -1
  177. package/dist/assets/seedance-BGNMdADX.js +1 -0
  178. package/dist/assets/seedance-BQ799Gaj.js +1 -0
  179. package/dist/assets/seedance-BRVYerFG.js +1 -0
  180. package/dist/assets/seedance-BqsSPJ-u.js +1 -0
  181. package/dist/assets/seedance-BtGZ2ndv.js +1 -0
  182. package/dist/assets/seedance-C0on8zL7.js +1 -0
  183. package/dist/assets/seedance-C3m6Kk8K.js +1 -0
  184. package/dist/assets/seedance-CHaJgiOv.js +1 -0
  185. package/dist/assets/seedance-CIrNS98a.js +1 -0
  186. package/dist/assets/seedance-CUtVRJjY.js +1 -0
  187. package/dist/assets/seedance-D1_quW6o.js +1 -0
  188. package/dist/assets/seedance-DNFUFjCq.js +1 -0
  189. package/dist/assets/seedance-DQaORlW2.js +1 -0
  190. package/dist/assets/seedance-DV5zs1bV.js +1 -0
  191. package/dist/assets/seedance-DXIJarfX.js +1 -0
  192. package/dist/assets/seedance-QwZRsoJ9.js +1 -0
  193. package/dist/assets/seedance-gwTw5Gmc.js +1 -0
  194. package/dist/assets/seedance-oILMgdE7.js +1 -0
  195. package/dist/assets/{seedream-Dte9Rxui.js → seedream-NfsvS6FW.js} +1 -1
  196. package/dist/assets/{select-DLd87TAB.js → select-Kj17huxb.js} +1 -1
  197. package/dist/assets/{serp-CLh9ePTf.js → serp-yPRURSur.js} +1 -1
  198. package/dist/assets/{shield-_GOOyi3T.js → shield-BzwxLH_6.js} +1 -1
  199. package/dist/assets/{shuffle-D4UItcTc.js → shuffle-Dj06pRnb.js} +1 -1
  200. package/dist/assets/{slider-B_rmqUSm.js → slider-BGWhsJ--.js} +1 -1
  201. package/dist/assets/{sliders-horizontal-CymItiFj.js → sliders-horizontal-Jr7q_4Wb.js} +1 -1
  202. package/dist/assets/{solana-wallets-DUhVVlFc.js → solana-wallets-RPq8q6P-.js} +2 -2
  203. package/dist/assets/{solana-wallets-vue-CQM2Npq4.js → solana-wallets-vue-c9irZ2qs.js} +1 -1
  204. package/dist/assets/sora-jkhJZAWq.js +1 -0
  205. package/dist/assets/{sparkles-DmZJvUBH.js → sparkles-BQO9hMKa.js} +1 -1
  206. package/dist/assets/square-BjTtaBh0.js +1 -0
  207. package/dist/assets/{suno-4_peI3On.js → suno-HnOsFIRy.js} +1 -1
  208. package/dist/assets/{switch-BeR6FXQG.js → switch-Dv11DKLB.js} +1 -1
  209. package/dist/assets/{table-BNsONgi3.js → table-GxmTVSKX.js} +1 -1
  210. package/dist/assets/{tabs-zzZDV1QB.js → tabs-M5PEX0u5.js} +1 -1
  211. package/dist/assets/{tag-BI4BPoZD.js → tag-DmNwkAEe.js} +1 -1
  212. package/dist/assets/{taskDrawerMixin-BMA517Ir.js → taskDrawerMixin-t0oG4ly6.js} +1 -1
  213. package/dist/assets/terminal-jHeGIoWe.js +1 -0
  214. package/dist/assets/{time-picker-w87Ozojj.js → time-picker-BFFqYymG.js} +1 -1
  215. package/dist/assets/{tooltip-B5wtxrSQ.js → tooltip-CKybjVoe.js} +1 -1
  216. package/dist/assets/{trash-2-BMAfh8QP.js → trash-2-Clo-ZGm4.js} +1 -1
  217. package/dist/assets/{triangle-alert-DVGSOGdC.js → triangle-alert--PIu81za.js} +1 -1
  218. package/dist/assets/{upload-DMcynBlv.js → upload-P7S1oH5l.js} +1 -1
  219. package/dist/assets/{upload-CCyxP6tp.js → upload-UyzbopDC.js} +1 -1
  220. package/dist/assets/user-XjfvN-de.js +1 -0
  221. package/dist/assets/{luma-CwSZyTjP.js → veo-SznvFUbf.js} +1 -1
  222. package/dist/assets/{video-B05UdJkU.js → video-DFqidBFm.js} +1 -1
  223. package/dist/assets/{volume-2-DgIJaF-2.js → volume-2-CGazqEkn.js} +1 -1
  224. package/dist/assets/{wallet-G-kRg40V.js → wallet-DcsNSMi5.js} +1 -1
  225. package/dist/assets/wan-CZ2nJJD8.js +1 -0
  226. package/dist/assets/{wand-sparkles-CWw5upM5.js → wand-sparkles-CZEkkfey.js} +1 -1
  227. package/dist/assets/{web-Bpvrh9os.js → web-B_hasf07.js} +1 -1
  228. package/dist/assets/{web-BpEiayOG.js → web-CGGJs7Y5.js} +1 -1
  229. package/dist/assets/{web-ChXkKFY7.js → web-CS73aq5P.js} +1 -1
  230. package/dist/assets/{web-EUAYW7_S.js → web-MV6-h32B.js} +1 -1
  231. package/dist/assets/{web-DBdqShI-.js → web-SZ47rKLe.js} +1 -1
  232. package/dist/assets/webextrator-jKdNExI_.js +1 -0
  233. package/dist/assets/{zap-D-kNG48K.js → zap-3Q4xYCWy.js} +1 -1
  234. package/dist/index.html +3 -3
  235. package/package.json +1 -1
  236. package/dist/assets/Conversation-DsYi3Wdt.js +0 -1
  237. package/dist/assets/Extra-DeIDs6YE.js +0 -1
  238. package/dist/assets/Index-B6Nfx0l8.css +0 -1
  239. package/dist/assets/Index-C6BQM6_G2.js +0 -1
  240. package/dist/assets/Index-CIDIbkPd.js +0 -1
  241. package/dist/assets/Index-CMMn3F3n.js +0 -1
  242. package/dist/assets/Index-CytEAcZc.js +0 -1
  243. package/dist/assets/Index-DylkTyZr.js +0 -1
  244. package/dist/assets/Index-NuFCskgt.js +0 -1
  245. package/dist/assets/Index-yPvo3gT22.js +0 -1
  246. package/dist/assets/List-BAh_IuSj.js +0 -1
  247. package/dist/assets/List-Dt_icnEL.js +0 -1
  248. package/dist/assets/List-hn8G8RsD.js +0 -1
  249. package/dist/assets/LocalTools-BRf96M78.js +0 -5
  250. package/dist/assets/ScheduledTasks-g3qzteJd.js +0 -2
  251. package/dist/assets/arrow-down-CmIlt7Nj.js +0 -1
  252. package/dist/assets/arrow-left-CpSoNC6R.js +0 -1
  253. package/dist/assets/arrow-right-BRyxZXsJ.js +0 -1
  254. package/dist/assets/arrow-up-BQkvbzF6.js +0 -1
  255. package/dist/assets/avatar-C-tMHOOg.js +0 -1
  256. package/dist/assets/chat-CmXYwJG0.js +0 -1
  257. package/dist/assets/check-qC-OgtQe.js +0 -1
  258. package/dist/assets/chevron-down-D_SMmaDq.js +0 -1
  259. package/dist/assets/chevron-right-BQrjHLUf.js +0 -1
  260. package/dist/assets/circle-check-BzQyI1Yb.js +0 -1
  261. package/dist/assets/clock-DdDobRU-.js +0 -1
  262. package/dist/assets/esm-CVBV_vDO.js +0 -1
  263. package/dist/assets/gauge-BtCoXYmY.js +0 -1
  264. package/dist/assets/loader-circle-w1qM760W.js +0 -1
  265. package/dist/assets/music-2--g-KcPau.js +0 -1
  266. package/dist/assets/pixverse-BNv2uE2j.js +0 -1
  267. package/dist/assets/play-DLgB-GBN.js +0 -1
  268. package/dist/assets/plus-DPVOt-4h.js +0 -1
  269. package/dist/assets/poivelle-D30v7CVm.js +0 -1
  270. package/dist/assets/rotate-ccw-j2VXpKTA.js +0 -1
  271. package/dist/assets/rotate-cw-CvF_gcqY.js +0 -1
  272. package/dist/assets/search-DvvgrOj5.js +0 -1
  273. package/dist/assets/seedance-41XtqxGU.js +0 -1
  274. package/dist/assets/seedance-8U53cl5o.js +0 -1
  275. package/dist/assets/seedance-BAUkqLZL.js +0 -1
  276. package/dist/assets/seedance-BDrr2kI0.js +0 -1
  277. package/dist/assets/seedance-BMigbnDV.js +0 -1
  278. package/dist/assets/seedance-Bc-Pwt3o.js +0 -1
  279. package/dist/assets/seedance-CTr-k1eY.js +0 -1
  280. package/dist/assets/seedance-CYzif-cw.js +0 -1
  281. package/dist/assets/seedance-ClGiKI4_.js +0 -1
  282. package/dist/assets/seedance-Dhi46ZHA.js +0 -1
  283. package/dist/assets/seedance-DomDpLKP.js +0 -1
  284. package/dist/assets/seedance-DwA5jG3G.js +0 -1
  285. package/dist/assets/seedance-DwFIGFGg.js +0 -1
  286. package/dist/assets/seedance-HICpaRhu.js +0 -1
  287. package/dist/assets/seedance-XAkis0Ar.js +0 -1
  288. package/dist/assets/seedance-Y-0RWm60.js +0 -1
  289. package/dist/assets/seedance-lqMRn8Ve.js +0 -1
  290. package/dist/assets/seedance-qEVqUieN.js +0 -1
  291. package/dist/assets/sora-BuYBYjiF.js +0 -1
  292. package/dist/assets/square-Cv9A0RU1.js +0 -1
  293. package/dist/assets/terminal-RaIlicxa.js +0 -1
  294. package/dist/assets/user-B5O797ur.js +0 -1
  295. package/dist/assets/wan-C3wrRWbG.js +0 -1
  296. package/dist/assets/webextrator-JNq9fbcB.js +0 -1
@@ -1 +0,0 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,I as t,Jt as n,L as r,N as i,T as a,at as o,ht as s,j as c,mt as l,ot as u,rt as d,tt as f,z as p}from"./vendor-chart-Dw-P17PN.js";import{r as m,t as h}from"./select-DLd87TAB.js";import{n as g,t as _}from"./table-BNsONgi3.js";import{t as v}from"./card-D-4S-l7a.js";import{n as y,t as b}from"./file-output-CQOQxEqz.js";import{n as x,t as S}from"./row-CdT0aZsY.js";import{t as C}from"./pagination-D4-j9bk3.js";import{t as w}from"./skeleton-B3LIGUiE.js";import{t as T}from"./circle-check-BzQyI1Yb.js";import{t as E}from"./clock-DdDobRU-.js";import{t as D}from"./dollar-sign-ztcb0QHf.js";import{$n as O,E as k,Kt as A,Mi as j,Pi as M,Xr as N,vi as P}from"./index-0JujvRxi.js";import{t as F}from"./CopyToClipboard-BGMAd_ao.js";var I=P(`receipt`,[[`path`,{d:`M12 17V7`,key:`pyj7ub`}],[`path`,{d:`M16 8h-6a2 2 0 0 0 0 4h4a2 2 0 0 1 0 4H8`,key:`1elt7d`}],[`path`,{d:`M4 3a1 1 0 0 1 1-1 1.3 1.3 0 0 1 .7.2l.933.6a1.3 1.3 0 0 0 1.4 0l.934-.6a1.3 1.3 0 0 1 1.4 0l.933.6a1.3 1.3 0 0 0 1.4 0l.933-.6a1.3 1.3 0 0 1 1.4 0l.934.6a1.3 1.3 0 0 0 1.4 0l.933-.6A1.3 1.3 0 0 1 19 2a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1 1.3 1.3 0 0 1-.7-.2l-.933-.6a1.3 1.3 0 0 0-1.4 0l-.934.6a1.3 1.3 0 0 1-1.4 0l-.933-.6a1.3 1.3 0 0 0-1.4 0l-.933.6a1.3 1.3 0 0 1-1.4 0l-.934-.6a1.3 1.3 0 0 0-1.4 0l-.933.6a1.3 1.3 0 0 1-.7.2 1 1 0 0 1-1-1z`,key:`ycz6yz`}]]),L={total_count:0,total_spent:0,state_counts:{}},R=p({name:`ConsoleOrderList`,components:{ExportIcon:b,MoneyIcon:D,ReceiptIcon:I,SuccessIcon:T,TimeIcon:E,Pagination:C,CopyToClipboard:F,ElRow:S,ElCol:x,ElTable:_,ElTableColumn:g,ElButton:M,ElTag:j,ElCard:v,ElSelect:m,ElOption:h,ElDatePicker:y,ElSkeleton:w},data(){return{OrderState:N,orders:[],loading:!1,total:void 0,limit:10,filterState:this.$route.query.state?.toString()||``,filterPayWay:this.$route.query.pay_way?.toString()||``,createdAtRange:(()=>{let e=this.$route.query.created_at_from?.toString(),t=this.$route.query.created_at_to?.toString();if(e&&t)return[new Date(e),new Date(t)]})(),summary:{...L},summaryLoading:!1,exporting:!1,shortcuts:[{text:this.$t(`usage.shortcuts.today`),value:()=>{let e=new Date,t=new Date;return t.setHours(0,0,0,0),[t,e]}},{text:this.$t(`usage.shortcuts.last7Days`),value:()=>{let e=new Date,t=new Date;return t.setDate(t.getDate()-7),[t,e]}},{text:this.$t(`usage.shortcuts.last1Month`),value:()=>{let e=new Date,t=new Date;return t.setMonth(t.getMonth()-1),[t,e]}}]}},computed:{page(){return parseInt(this.$route.query.page?.toString()||`1`)},stateOptions(){return[{value:N.PENDING,label:this.$t(`order.state.pending`)},{value:N.FINISHED,label:this.$t(`order.state.finished`)},{value:N.PAID,label:this.$t(`order.state.paid`)},{value:N.EXPIRED,label:this.$t(`order.state.expired`)},{value:N.FAILED,label:this.$t(`order.state.failed`)},{value:N.REFUNDED,label:this.$t(`order.state.refunded`)}]},payWayOptions(){return[{value:`WechatPay`,label:this.$t(`order.title.wechatPay`)},{value:`Stripe`,label:this.$t(`order.title.stripe`)},{value:`AliPay`,label:this.$t(`order.title.aliPay`)},{value:`X402`,label:this.$t(`order.title.x402`)},{value:`PayPal`,label:this.$t(`order.title.paypal`)}]},filterQuery(){let e={user_id:this.$store.getters.user?.id};return this.filterState&&(e.state=this.filterState),this.filterPayWay&&(e.pay_way=this.filterPayWay),this.createdAtRange?.[0]&&(e.created_at_from=this.createdAtRange[0]),this.createdAtRange?.[1]&&(e.created_at_to=this.createdAtRange[1]),e}},watch:{page:{handler(){this.onFetchData()}}},mounted(){this.onFetchData(),this.onFetchSummary()},methods:{getPriceString:A,stateTagType(e){return e===N.FINISHED||e===N.PAID?`success`:e===N.EXPIRED||e===N.FAILED?`danger`:e===N.REFUNDED?`warning`:`info`},stateLabel(e){return{[N.PENDING]:this.$t(`order.state.pending`),[N.PAID]:this.$t(`order.state.paid`),[N.FINISHED]:this.$t(`order.state.finished`),[N.EXPIRED]:this.$t(`order.state.expired`),[N.FAILED]:this.$t(`order.state.failed`),[N.REFUNDED]:this.$t(`order.state.refunded`)}[e]||e},isPendingAction(e){return e!==N.PAID&&e!==N.FINISHED&&e!==N.EXPIRED&&e!==N.FAILED&&e!==N.REFUNDED},goToDetail(e){this.$router.push({name:`console-order-detail`,params:{id:e}})},async onFilterChange(){await this.$router.push({name:this.$route.name?.toString(),query:{page:1,...this.filterState?{state:this.filterState}:{},...this.filterPayWay?{pay_way:this.filterPayWay}:{},...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0].toISOString()}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1].toISOString()}:{}}}),this.onFetchData(),this.onFetchSummary()},onPageChange(e){this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,page:e}})},onFetchData(){this.loading=!0,O.getAll({ordering:`-created_at`,limit:this.limit,offset:(this.page-1)*this.limit,...this.filterQuery}).then(({data:e})=>{this.orders=e.items,this.total=e.count}).catch(()=>{}).finally(()=>{this.loading=!1})},onFetchSummary(){this.summaryLoading=!0,O.getSummary(this.filterQuery).then(({data:e})=>{this.summary=e}).catch(()=>{this.summary={...L}}).finally(()=>{this.summaryLoading=!1})},onExport(){this.exporting=!0,O.exportCsv(this.filterQuery).then(({data:e})=>{let t=window.URL.createObjectURL(e),n=document.createElement(`a`);n.href=t,n.download=`orders.csv`,n.click(),window.URL.revokeObjectURL(t)}).catch(()=>{}).finally(()=>{this.exporting=!1})}}}),z={class:`title`},B={key:1,class:`card-content`},V={class:`icon-wrapper`},H={class:`description`},U={class:`value`},W={key:1,class:`card-content`},G={class:`icon-wrapper`},K={class:`description`},q={class:`value`},J={key:1,class:`card-content`},ee={class:`icon-wrapper`},Y={class:`description`},X={class:`value`},Z={key:1,class:`card-content`},Q={class:`icon-wrapper`},$={class:`description`},te={class:`value`},ne={class:`filter-row mb-3`},re={class:`key`},ie={class:`cursor-pointer`},ae={class:`price`},oe={class:`description`},se={class:`text-gray-500`},ce={class:`created-at`},le={class:`flex items-center justify-center flex-wrap`},ue={class:`float-right`};function de(p,m,h,g,_,v){let y=o(`el-col`),b=o(`el-row`),x=o(`el-skeleton`),S=o(`receipt-icon`),C=o(`el-card`),w=o(`money-icon`),T=o(`success-icon`),E=o(`time-icon`),D=o(`el-option`),O=o(`el-select`),k=o(`el-date-picker`),A=o(`export-icon`),j=o(`el-button`),M=o(`copy-to-clipboard`),N=o(`el-table-column`),P=o(`el-tag`),F=o(`el-table`),I=o(`pagination`),L=u(`loading`);return f(),c(b,{class:`panel`},{default:l(()=>[r(y,{span:24},{default:l(()=>[r(b,null,{default:l(()=>[r(y,{span:24},{default:l(()=>[e(`h2`,z,n(p.$t(`common.title.allOrders`)),1)]),_:1})]),_:1}),r(b,{gutter:16},{default:l(()=>[r(y,{md:6,sm:12,xs:24},{default:l(()=>[r(C,{shadow:`hover`,class:`item-mini mb-3`},{default:l(()=>[p.summaryLoading?(f(),c(x,{key:0})):(f(),i(`div`,B,[e(`div`,V,[r(S,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`p`,H,n(p.$t(`order.title.totalOrders`)),1),e(`p`,U,n(p.summary.total_count),1)]))]),_:1})]),_:1}),r(y,{md:6,sm:12,xs:24},{default:l(()=>[r(C,{shadow:`hover`,class:`item-mini mb-3`},{default:l(()=>[p.summaryLoading?(f(),c(x,{key:0})):(f(),i(`div`,W,[e(`div`,G,[r(w,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`p`,K,n(p.$t(`order.title.totalSpent`)),1),e(`p`,q,n(p.getPriceString({value:p.summary.total_spent})),1)]))]),_:1})]),_:1}),r(y,{md:6,sm:12,xs:24},{default:l(()=>[r(C,{shadow:`hover`,class:`item-mini mb-3`},{default:l(()=>[p.summaryLoading?(f(),c(x,{key:0})):(f(),i(`div`,J,[e(`div`,ee,[r(T,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`p`,Y,n(p.$t(`order.title.finishedOrders`)),1),e(`p`,X,n(p.summary.state_counts?.Finished||0),1)]))]),_:1})]),_:1}),r(y,{md:6,sm:12,xs:24},{default:l(()=>[r(C,{shadow:`hover`,class:`item-mini mb-3`},{default:l(()=>[p.summaryLoading?(f(),c(x,{key:0})):(f(),i(`div`,Z,[e(`div`,Q,[r(E,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`p`,$,n(p.$t(`order.title.pendingOrders`)),1),e(`p`,te,n(p.summary.state_counts?.Pending||0),1)]))]),_:1})]),_:1})]),_:1}),e(`div`,ne,[r(O,{modelValue:p.filterState,"onUpdate:modelValue":m[0]||=e=>p.filterState=e,clearable:``,placeholder:p.$t(`order.field.allStates`),class:`filter-select`,onChange:p.onFilterChange},{default:l(()=>[(f(!0),i(a,null,d(p.stateOptions,e=>(f(),c(D,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`]),r(O,{modelValue:p.filterPayWay,"onUpdate:modelValue":m[1]||=e=>p.filterPayWay=e,clearable:``,placeholder:p.$t(`order.field.allPayWays`),class:`filter-select`,onChange:p.onFilterChange},{default:l(()=>[(f(!0),i(a,null,d(p.payWayOptions,e=>(f(),c(D,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`]),r(k,{modelValue:p.createdAtRange,"onUpdate:modelValue":m[2]||=e=>p.createdAtRange=e,type:`datetimerange`,shortcuts:p.shortcuts,"range-separator":p.$t(`usage.placeholder.to`),"start-placeholder":p.$t(`usage.placeholder.startDate`),"end-placeholder":p.$t(`usage.placeholder.endDate`),onChange:p.onFilterChange},null,8,[`modelValue`,`shortcuts`,`range-separator`,`start-placeholder`,`end-placeholder`,`onChange`]),r(j,{type:`primary`,plain:``,loading:p.exporting,onClick:p.onExport},{default:l(()=>[r(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(` `+n(p.$t(`order.button.export`)),1)]),_:1},8,[`loading`,`onClick`])]),r(b,null,{default:l(()=>[r(y,{span:24},{default:l(()=>[r(C,{shadow:`hover`},{default:l(()=>[s((f(),c(F,{data:p.orders,stripe:``,"empty-text":p.$t(`common.message.noData`),class:`min-h-[calc(100vh-450px)] mb-[20px]`},{default:l(()=>[r(N,{prop:`id`,label:p.$t(`order.field.id`),"class-name":`text-center`,width:`200px`},{default:l(t=>[e(`span`,re,n(t.row.id),1),e(`span`,ie,[r(M,{content:t.row.id,class:`inline-block`},null,8,[`content`])])]),_:1},8,[`label`]),r(N,{label:p.$t(`order.field.price`),width:`110px`,align:`center`},{default:l(t=>[e(`span`,ae,n(p.getPriceString({value:t.row?.price})),1)]),_:1},8,[`label`]),r(N,{label:p.$t(`order.field.description`),"min-width":`220px`,"class-name":`hidden md:table-cell`,"label-class-name":`hidden md:table-cell`},{default:l(t=>[e(`span`,oe,n(t.row.description),1)]),_:1},8,[`label`]),r(N,{prop:`state`,label:p.$t(`order.field.state`),width:`130px`,align:`center`},{default:l(e=>[r(P,{type:p.stateTagType(e.row.state),class:`mx-1`,effect:`dark`,round:``,size:`small`},{default:l(()=>[t(n(p.stateLabel(e.row.state)),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),r(N,{label:p.$t(`order.field.payWay`),width:`120px`,align:`center`,"class-name":`hidden md:table-cell`,"label-class-name":`hidden md:table-cell`},{default:l(t=>[e(`span`,se,n(t.row.pay_way||`-`),1)]),_:1},8,[`label`]),r(N,{label:p.$t(`order.field.createdAt`),width:`200px`,"class-name":`hidden sm:table-cell`,"label-class-name":`hidden sm:table-cell`},{default:l(t=>[e(`span`,ce,n(p.$dayjs.format(t.row.created_at)),1)]),_:1},8,[`label`]),r(N,{"min-width":`130px`,fixed:`right`},{default:l(r=>[e(`div`,le,[p.isPendingAction(r.row.state)?(f(),c(j,{key:0,type:`primary`,size:`small`,onClick:e=>p.goToDetail(r.row.id)},{default:l(()=>[t(n(p.$t(`order.button.continuePay`)),1)]),_:1},8,[`onClick`])):(f(),c(j,{key:1,size:`small`,onClick:e=>p.goToDetail(r.row.id)},{default:l(()=>[t(n(p.$t(`order.button.checkDetail`)),1)]),_:1},8,[`onClick`]))])]),_:1})]),_:1},8,[`data`,`empty-text`])),[[L,p.loading]])]),_:1})]),_:1})]),_:1}),r(b,null,{default:l(()=>[r(y,{span:10,offset:14},{default:l(()=>[e(`div`,ue,[r(I,{"current-page":p.page,"page-size":p.limit,total:p.total,onChange:p.onPageChange},null,8,[`current-page`,`page-size`,`total`,`onChange`])])]),_:1})]),_:1})]),_:1})]),_:1})}var fe=k(R,[[`render`,de],[`__scopeId`,`data-v-c1fc3317`]]);export{fe as default};
@@ -1 +0,0 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,I as t,Jt as n,L as r,M as i,N as a,T as o,at as s,ht as ee,j as c,mt as l,ot as u,rt as d,tt as f,z as p}from"./vendor-chart-Dw-P17PN.js";import{n as m,t as h}from"./table-BNsONgi3.js";import{t as g}from"./card-D-4S-l7a.js";import{n as _,t as v}from"./row-CdT0aZsY.js";import{t as y}from"./empty-B1wenOj5.js";import{t as b}from"./pagination-D4-j9bk3.js";import{t as x}from"./skeleton-B3LIGUiE.js";import{t as S}from"./switch-BeR6FXQG.js";import{t as C}from"./boxes-Bv2XKPlq.js";import{t as w}from"./chart-no-axes-combined-BgNk4yFV.js";import{t as T}from"./coins-D4F3wC3F.js";import{t as E}from"./wallet-G-kRg40V.js";import{B as D,E as O,Jr as k,K as A,Mi as j,Pi as M,Yr as N,bi as P,di as F,dr as I,ni as L,pn as R,ti as z}from"./index-0JujvRxi.js";import{t as B}from"./CopyToClipboard-BGMAd_ao.js";var V=p({name:`ConsoleApplicationList`,components:{AnalyticsIcon:w,ApplicationsIcon:C,CreditsIcon:T,WalletIcon:E,Pagination:b,CopyToClipboard:B,ElTable:h,ElRow:v,ElButton:M,ElCol:_,ElTag:j,ElSkeleton:x,ElSwitch:S,ElEmpty:y,ElTableColumn:m,ElCard:g},data(){return{credentialType:k,serviceType:N,individualApplications:[],globalApplications:[],individualApplicationsTotal:void 0,globalApplicationsTotal:void 0,loading:!1,buying:!1,limit:10,form:{amount:1},active:{service:void 0,application:void 0}}},computed:{redirect(){return this.$route.query?.redirect},page(){return parseInt(this.$route.query.page?.toString()||`1`)},showGlobalPayment(){return!R(this.$store.getters.site)}},watch:{page:{handler(){this.onFetchData()}}},mounted(){this.onInitializeGlobalApplication(),this.onFetchData()},methods:{rowCanPay(e){return R(this.$store.getters.site)?!1:F()?(e?.packages||[]).some(e=>e?.metadata?.apple_product_id):!0},updateAllowConsumeGlobal(e,t){!e||!e.id||I.updateAllConsumeGlobal(e.id,{...e,allow_consume_global:!!t}).then(()=>{P.success(this.$t(`application.message.updateSuccessfully`).toString())}).catch(()=>{P.error(this.$t(`application.message.updateFailed`).toString())})},onGoUsage(e){this.$router.push({name:A,query:{application_id:e.id,type:e?.service?.type}})},onBuyMore(e){e?.id&&this.$router.push({name:D,params:{id:e.id}})},onPageChange(e){this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,page:e}})},onFetchApplications(e=z.INDIVIDUAL){return new Promise((t,n)=>{I.getAll({limit:this.limit,...e===z.INDIVIDUAL?{offset:(this.page-1)*this.limit}:{},user_id:this.$store.getters.user.id,ordering:`-created_at`,type:L.USAGE,scope:e}).then(({data:n})=>{e===z.INDIVIDUAL?(this.individualApplications=n.items,this.individualApplicationsTotal=n.count):(this.globalApplications=n.items,this.globalApplicationsTotal=n.count),t(n)}).catch(e=>{P.error(this.$t(`application.message.fetchFailed`).toString()),n(e)})})},onFetchData(){this.loading=!0,Promise.all([this.onFetchApplications(z.INDIVIDUAL),this.onFetchApplications(z.GLOBAL)]).then(()=>{this.loading=!1}).catch(()=>{this.loading=!1})},onInitializeGlobalApplication(){I.create({type:L.USAGE,scope:z.GLOBAL,user_id:this.$store.getters.user.id}).finally(()=>{this.onFetchApplications(z.GLOBAL)})},getRemainingAmount(e){if(e.remaining_amount===void 0||e.remaining_amount===null)return``;let t=this.$t(`service.unit.${e?.service?.unit||`credit`}s`);return`${e.remaining_amount?.toFixed(6)} ${t}`},getUsedAmount(e){if(e.used_amount===void 0||e.used_amount===null)return``;let t=this.$t(`service.unit.${e?.service?.unit||`credit`}s`);return`${e.used_amount?.toFixed(6)} ${t}`}}}),H={class:`title`},U={key:1,class:`summary-card`},W={class:`icon-wrapper`},G={class:`label`},K={class:`value`},q={class:`description`},J={key:1,class:`flex flex-row justify-between items-center gap-3`},Y={class:`summary-card min-w-0 flex-1`},X={class:`flex justify-start items-center gap-2 mb-2 w-full`},Z={class:`icon-wrapper !mb-0`},Q={class:`text-[var(--el-text-color-regular)] text-[14px] truncate`},$={class:`label`},te={class:`value`},ne={class:`description`},re={class:`flex flex-col items-end gap-2 shrink-0`},ie={class:`copy`},ae={key:0,class:`expired-at`},oe={class:`flex flex-wrap items-center justify-end gap-1`},se={class:`application-cards block sm:hidden`},ce={class:`flex items-center gap-2 flex-wrap`},le={class:`application-card__name`},ue={class:`application-card__id`},de={class:`truncate`},fe={class:`application-card__row`},pe={class:`label`},me={class:`value`},he={key:0,class:`application-card__row`},ge={class:`label`},_e={class:`value`},ve={key:1,class:`application-card__row`},ye={class:`label`},be={class:`flex items-center justify-end gap-2 mt-3`},xe={class:`pagination`};function Se(p,m,h,g,_,v){let y=s(`el-col`),b=s(`el-row`),x=s(`el-skeleton`),S=s(`applications-icon`),C=s(`el-card`),w=s(`wallet-icon`),T=s(`copy-to-clipboard`),E=s(`analytics-icon`),D=s(`el-button`),O=s(`credits-icon`),k=s(`el-table-column`),A=s(`el-tag`),j=s(`el-switch`),M=s(`el-table`),N=s(`el-empty`),P=s(`pagination`),F=u(`loading`);return f(),c(b,{class:`application-list`},{default:l(()=>[r(y,{span:24},{default:l(()=>[r(b,null,{default:l(()=>[r(y,{span:24},{default:l(()=>[e(`h2`,H,n(p.$t(`common.title.allApplications`)),1)]),_:1})]),_:1}),r(b,{gutter:15,class:`mb-3`},{default:l(()=>[r(y,{md:12,xs:24},{default:l(()=>[r(C,{shadow:`hover`,class:`relative min-h-[180px] mb-2`,"body-style":{padding:`18px 20px`}},{default:l(()=>[p.loading?(f(),c(x,{key:0})):(f(),a(`div`,U,[e(`div`,W,[r(S,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`p`,G,n(p.$t(`application.title.count`)),1),e(`p`,K,n(p.individualApplicationsTotal),1),e(`p`,q,n(p.$t(`application.message.countDescription`)),1)]))]),_:1})]),_:1}),p.showGlobalPayment&&p.globalApplications?.length>0?(f(),c(y,{key:0,md:12,xs:24},{default:l(()=>[r(C,{shadow:`hover`,class:`relative min-h-[180px] mb-2`,"body-style":{padding:`18px 20px`}},{default:l(()=>[p.loading?(f(),c(x,{key:0})):(f(),a(`div`,J,[e(`div`,Y,[e(`div`,X,[e(`div`,Z,[r(w,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`span`,Q,[t(n(p.$t(`application.field.id`))+`: `+n(p.globalApplications?.[0]?.id)+` `,1),p.globalApplications?.[0]?.id?(f(),c(T,{key:0,content:p.globalApplications?.[0]?.id,class:`inline-block`},null,8,[`content`])):i(``,!0)])]),e(`p`,$,n(p.$t(`application.title.globalBalance`)),1),e(`p`,te,n(p.globalApplications?.[0]?.remaining_amount?.toFixed(6)||`0.000000`)+` `+n(p.$t(`service.unit.credits`)),1),e(`p`,ne,n(p.$t(`application.message.globalBalanceDescription`)),1)]),e(`div`,re,[r(D,{class:`!m-0 !px-2`,size:`small`,round:``,onClick:m[0]||=e=>p.onGoUsage(p.globalApplications?.[0])},{default:l(()=>[r(E,{class:`mr-1 text-[12px]`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(` `+n(p.$t(`application.button.usage`)),1)]),_:1}),p.showGlobalPayment?(f(),c(D,{key:0,class:`!m-0 !px-2`,type:`primary`,round:``,size:`small`,onClick:m[1]||=e=>p.onBuyMore(p.globalApplications?.[0])},{default:l(()=>[r(O,{class:`mr-1 text-[12px]`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(` `+n(p.$t(`application.button.buyMore`)),1)]),_:1})):i(``,!0)])]))]),_:1})]),_:1})):i(``,!0)]),_:1}),r(b,null,{default:l(()=>[r(y,{span:24},{default:l(()=>[r(C,{shadow:`hover`,class:`applications-table-card hidden sm:block`},{default:l(()=>[ee((f(),c(M,{data:p.individualApplications,stripe:``,class:`applications-table !min-h-[calc(100vh-420px)]`,"table-layout":`fixed`,"empty-text":p.$t(`common.message.noData`)},{default:l(()=>[r(k,{prop:`id`,label:p.$t(`application.field.id`),width:`200px`,"class-name":`text-center`},{default:l(t=>[e(`span`,null,n(t.row.id),1),e(`span`,ie,[r(T,{content:t?.row?.id,class:`inline-block`},null,8,[`content`])])]),_:1},8,[`label`]),r(k,{label:p.$t(`application.field.type`),width:`90px`,"class-name":`hidden sm:table-cell`,"label-class-name":`hidden sm:table-cell`},{default:l(e=>[e.row?.type===`Period`?(f(),c(A,{key:0,type:`success`,effect:`dark`,round:``},{default:l(()=>[t(n(p.$t(`application.type.period`)),1)]),_:1})):e.row?.type===`Usage`?(f(),c(A,{key:1,effect:`dark`,round:``},{default:l(()=>[t(n(p.$t(`application.type.usage`)),1)]),_:1})):i(``,!0)]),_:1},8,[`label`]),r(k,{label:p.$t(`application.field.name`),width:`180px`},{default:l(r=>[e(`span`,null,n(r.row?.service?.title),1),r.row?.role===`grantee`?(f(),c(A,{key:0,type:`info`,size:`small`,round:``,class:`ml-2`},{default:l(()=>[t(n(p.$t(`application.badge.shared`)),1)]),_:1})):i(``,!0)]),_:1},8,[`label`]),r(k,{prop:`remaining_amount`,label:p.$t(`application.field.remainingAmount`),width:`150px`,"class-name":`text-center`},{default:l(t=>[e(`span`,null,n(p.getRemainingAmount(t.row)),1)]),_:1},8,[`label`]),r(k,{prop:`used_amount`,label:p.$t(`application.field.usedAmount`),width:`150px`,"class-name":`hidden sm:table-cell text-center`,"label-class-name":`hidden sm:table-cell`},{default:l(t=>[e(`span`,null,n(p.getUsedAmount(t.row)),1)]),_:1},8,[`label`]),r(k,{prop:`allow_consume_global`,label:p.$t(`application.field.allowConsumeGlobal`),width:`120px`,"class-name":`hidden sm:table-cell text-center`,"label-class-name":`hidden sm:table-cell`},{default:l(e=>[e.row.service?.type===p.serviceType.API?(f(),c(j,{key:0,modelValue:e.row.allow_consume_global,"onUpdate:modelValue":t=>e.row.allow_consume_global=t,"active-value":!0,"inactive-value":!1,onChange:t=>p.updateAllowConsumeGlobal(e.row,t)},null,8,[`modelValue`,`onUpdate:modelValue`,`onChange`])):i(``,!0)]),_:1},8,[`label`]),r(k,{label:p.$t(`application.field.expiredAt`),width:`180px`,"class-name":`hidden sm:table-cell`,"label-class-name":`hidden sm:table-cell`},{default:l(e=>[e.row.expired_at?(f(),a(`span`,ae,n(p.$dayjs.format(e.row.expired_at)),1)):i(``,!0)]),_:1},8,[`label`]),r(k,{fixed:`right`,width:`200px`},{default:l(a=>[e(`div`,oe,[r(D,{class:`!m-0 !px-2`,size:`small`,round:``,onClick:e=>p.onGoUsage(a?.row)},{default:l(()=>[r(E,{class:`mr-1 text-[12px]`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(` `+n(p.$t(`application.button.usage`)),1)]),_:1},8,[`onClick`]),p.rowCanPay(a?.row)?(f(),c(D,{key:0,class:`!m-0 !px-2`,type:`primary`,round:``,size:`small`,onClick:e=>p.onBuyMore(a?.row)},{default:l(()=>[r(O,{class:`mr-1 text-[12px]`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(` `+n(p.$t(`application.button.buyMore`)),1)]),_:1},8,[`onClick`])):i(``,!0)])]),_:1})]),_:1},8,[`data`,`empty-text`])),[[F,p.loading]])]),_:1}),e(`div`,se,[p.loading?(f(),c(x,{key:0,rows:4,animated:``})):(f(),a(o,{key:1},[p.individualApplications?.length?(f(!0),a(o,{key:1},d(p.individualApplications,o=>(f(),c(C,{key:o.id,shadow:`hover`,class:`application-card mb-2`,"body-style":{padding:`14px 16px`}},{default:l(()=>[e(`div`,ce,[e(`span`,le,n(o?.service?.title),1),o?.type===`Period`?(f(),c(A,{key:0,type:`success`,effect:`dark`,size:`small`,round:``},{default:l(()=>[t(n(p.$t(`application.type.period`)),1)]),_:1})):o?.type===`Usage`?(f(),c(A,{key:1,effect:`dark`,size:`small`,round:``},{default:l(()=>[t(n(p.$t(`application.type.usage`)),1)]),_:1})):i(``,!0),o?.role===`grantee`?(f(),c(A,{key:2,type:`info`,size:`small`,round:``},{default:l(()=>[t(n(p.$t(`application.badge.shared`)),1)]),_:1})):i(``,!0)]),e(`div`,ue,[e(`span`,de,n(p.$t(`application.field.id`))+`: `+n(o.id),1),r(T,{content:o.id,class:`inline-block shrink-0`},null,8,[`content`])]),e(`div`,fe,[e(`span`,pe,n(p.$t(`application.field.remainingAmount`)),1),e(`span`,me,n(p.getRemainingAmount(o)),1)]),o?.expired_at?(f(),a(`div`,he,[e(`span`,ge,n(p.$t(`application.field.expiredAt`)),1),e(`span`,_e,n(p.$dayjs.format(o.expired_at)),1)])):i(``,!0),o.service?.type===p.serviceType.API?(f(),a(`div`,ve,[e(`span`,ye,n(p.$t(`application.field.allowConsumeGlobal`)),1),r(j,{modelValue:o.allow_consume_global,"onUpdate:modelValue":e=>o.allow_consume_global=e,"active-value":!0,"inactive-value":!1,onChange:e=>p.updateAllowConsumeGlobal(o,e)},null,8,[`modelValue`,`onUpdate:modelValue`,`onChange`])])):i(``,!0),e(`div`,be,[r(D,{class:`!m-0 !px-3`,size:`small`,round:``,onClick:e=>p.onGoUsage(o)},{default:l(()=>[r(E,{class:`mr-1 text-[12px]`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(` `+n(p.$t(`application.button.usage`)),1)]),_:1},8,[`onClick`]),p.rowCanPay(o)?(f(),c(D,{key:0,class:`!m-0 !px-3`,type:`primary`,round:``,size:`small`,onClick:e=>p.onBuyMore(o)},{default:l(()=>[r(O,{class:`mr-1 text-[12px]`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(` `+n(p.$t(`application.button.buyMore`)),1)]),_:1},8,[`onClick`])):i(``,!0)])]),_:2},1024))),128)):(f(),c(N,{key:0,description:p.$t(`common.message.noData`)},null,8,[`description`]))],64))])]),_:1})]),_:1}),r(b,null,{default:l(()=>[r(y,{span:24},{default:l(()=>[e(`div`,xe,[r(P,{"current-page":p.page,"page-size":p.limit,total:p.individualApplicationsTotal,onChange:p.onPageChange},null,8,[`current-page`,`page-size`,`total`,`onChange`])])]),_:1})]),_:1})]),_:1})]),_:1})}var Ce=O(V,[[`render`,Se],[`__scopeId`,`data-v-d88616c5`]]);export{Ce as default};
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime--c01j_DQ.js";import{A as t,I as n,Jt as r,L as i,M as a,N as o,T as s,a as c,at as l,c as u,d,ht as f,i as p,j as m,l as h,mt as g,n as _,o as v,ot as y,qt as b,r as x,rt as S,s as C,t as w,tt as T,u as E,x as D,z as O}from"./vendor-chart-Dw-P17PN.js";import{r as k,t as A}from"./select-DLd87TAB.js";import{n as j,t as M}from"./table-BNsONgi3.js";import{n as N,t as P}from"./tabs-zzZDV1QB.js";import{t as F}from"./card-D-4S-l7a.js";import{n as I,r as L}from"./radio-DgDgyT2l.js";import{n as R,t as z}from"./file-output-CQOQxEqz.js";import{n as B,t as V}from"./row-CdT0aZsY.js";import{t as H}from"./empty-B1wenOj5.js";import{t as U}from"./pagination-D4-j9bk3.js";import{n as W,t as G}from"./skeleton-B3LIGUiE.js";import{t as K}from"./switch-BeR6FXQG.js";import{t as q}from"./boxes-Bv2XKPlq.js";import{E as ee,Jr as te,Mi as ne,Pi as re,Ti as ie,Yr as J,bi as Y,dr as ae,er as oe,gr as se,ni as ce,nr as le,si as ue,tr as X}from"./index-0JujvRxi.js";import{t as de}from"./CopyToClipboard-BGMAd_ao.js";var fe=e(se());v.register(c,u,p,x,C,E,d,h);var Z=[`#5B8FF9`,`#5AD8A6`,`#5D7092`,`#F6BD16`,`#6F5EF9`,`#6DC8EC`,`#945FB9`,`#FF9845`,`#1E9493`,`#FF99C3`],Q=`#C0C4CC`,pe=.01,me=20;function he(e){return e<=Z.length?Z.slice(0,e):Array.from({length:e},(t,n)=>`hsl(${Math.round(n*360/e)}, 62%, ${n%2==0?55:45}%)`)}var ge=15e3,_e=O({name:`ConsoleUsageList`,components:{ApplicationsIcon:q,ExportIcon:z,Pagination:U,ElTag:ne,ElDatePicker:R,ElTable:M,ElSelect:k,ElOption:A,CopyToClipboard:de,ElRow:V,ElCol:B,ElTableColumn:j,ElCard:F,ElRadioButton:I,ElRadioGroup:L,ElSkeleton:G,ElSkeletonItem:W,ElDialog:ie,ElTabs:N,ElTabPane:P,ElButton:re,ElEmpty:H,ElSwitch:K,BarChart:w,DoughnutChart:_},data(){return{applicationIds:this.$route.query.application_id?.toString()?this.$route.query.application_id?.toString().split(`,`):[],apiIds:this.$route.query.api_id?.toString()?this.$route.query.api_id?.toString().split(`,`):[],applications:[],apis:[],apisLoading:!1,credentialType:te,serviceType:J,apiUsages:[],proxyUsages:[],createdAtRange:(()=>{let e=this.$route.query.created_at_to?.toString(),t=this.$route.query.created_at_from?.toString();if(t&&e)return[new Date(t),new Date(e)];let n=new Date,r=new Date;return r.setDate(1),r.setHours(0,0,0,0),[r,n]})(),shortcuts:[{text:this.$t(`usage.shortcuts.thisMonth`),value:()=>{let e=new Date,t=new Date;return t.setDate(1),t.setHours(0,0,0,0),[t,e]}},{text:this.$t(`usage.shortcuts.today`),value:()=>{let e=new Date,t=new Date;return t.setHours(0,0,0,0),[t,e]}},{text:this.$t(`usage.shortcuts.last1Day`),value:()=>{let e=new Date,t=new Date;return t.setDate(t.getDate()-1),[t,e]}},{text:this.$t(`usage.shortcuts.last3Days`),value:()=>{let e=new Date,t=new Date;return t.setDate(t.getDate()-3),[t,e]}},{text:this.$t(`usage.shortcuts.last7Days`),value:()=>{let e=new Date,t=new Date;return t.setDate(t.getDate()-7),[t,e]}},{text:this.$t(`usage.shortcuts.last1Month`),value:()=>{let e=new Date,t=new Date;return t.setMonth(t.getMonth()-1),[t,e]}}],type:this.$route.query.type?.toString()||J.API,loading:!1,total:void 0,limit:15,totalUsed:0,barChartLabels:[],barChartSeries:[],chartView:`trend`,apiBreakdown:[],pieLabels:[],pieData:[],pieColors:[],aggLoading:!1,detailDialogVisible:!1,detailRow:null,detailActiveTab:`request`,detailLoading:!1,exporting:!1,statusCodeFilter:this.$route.query.status_code?.toString()||``,traceId:this.$route.query.trace_id?.toString()||``,statusCodeOptions:[],statusCodeOptionsLoading:!1,autoRefresh:!0,autoRefreshTimer:null,fetchSeq:0}},computed:{redirect(){return this.$route.query?.redirect},page(){return parseInt(this.$route.query.page?.toString()||`1`)},totalUsedString(){return`${(this.totalUsed||0).toFixed(2)}`},barChartData(){return{labels:this.barChartLabels,datasets:this.barChartSeries.map(e=>({label:e.label,data:e.data,backgroundColor:e.color,maxBarThickness:36,borderRadius:2,borderSkipped:!1}))}},barChartOptions(){let e=e=>new Intl.NumberFormat().format(Math.round(((e||0)+2**-52)*100)/100);return{responsive:!0,maintainAspectRatio:!1,interaction:{mode:`index`,intersect:!1},plugins:{legend:{position:`bottom`,labels:{usePointStyle:!0,pointStyle:`circle`,boxWidth:8,boxHeight:8,padding:14},onClick:(e,t,n)=>{let r=n?.chart;if(!r||t?.datasetIndex===void 0)return;let i=t.datasetIndex,a=r.data?.datasets||[];a.some((e,t)=>t!==i&&r.isDatasetVisible(t))?a.forEach((e,t)=>r.setDatasetVisibility(t,t===i)):a.forEach((e,t)=>r.setDatasetVisibility(t,!0)),r.update()}},title:{display:!1},tooltip:{itemSort:(e,t)=>(t.parsed?.y||0)-(e.parsed?.y||0),callbacks:{label:t=>` ${t.dataset.label}: ${e(t.parsed.y)}`,footer:t=>`${this.$t(`usage.title.totalUsed`)}: ${e(t.reduce((e,t)=>e+(t.parsed?.y||0),0))}`}}},scales:{x:{stacked:!0,grid:{display:!1},ticks:{maxRotation:0,autoSkip:!0,autoSkipPadding:16}},y:{stacked:!0,beginAtZero:!0,border:{display:!1},grid:{color:`rgba(128, 128, 128, 0.15)`},ticks:{callback:t=>e(Number(t))}}}}},doughnutChartData(){return{labels:this.pieLabels,datasets:[{data:this.pieData,backgroundColor:this.pieColors,borderWidth:0,hoverOffset:6}]}},doughnutChartOptions(){let e=e=>this.fmtAmount(e),t=this.pieData.reduce((e,t)=>e+(t||0),0);return{responsive:!0,maintainAspectRatio:!1,cutout:`58%`,plugins:{legend:{position:`right`,labels:{usePointStyle:!0,pointStyle:`circle`,boxWidth:8,boxHeight:8,padding:12}},title:{display:!1},tooltip:{callbacks:{label:n=>{let r=n.parsed||0,i=t>0?(r/t*100).toFixed(1):`0`;return` ${n.label}: ${e(r)} (${i}%)`}}}}}}},watch:{page:{handler(){this.onFetchUsages()}},type:{handler(){this.applicationIds=[],this.apiIds=[],this.onApplicationsChange(this.applicationIds),this.onFetchApplications(),this.onFetchApis(),this.onFetchUsages(),this.onFetchAggregate(),this.onFetchStatusCodeOptions()}},autoRefresh:{handler(e){e?this.startAutoRefresh():this.stopAutoRefresh()}}},mounted(){this.onFetchApplications(),this.onFetchApis(),this.onFetchUsages(),this.onFetchAggregate(),this.onFetchStatusCodeOptions(),this.autoRefresh&&this.startAutoRefresh()},beforeUnmount(){this.stopAutoRefresh()},methods:{async onFetchUsages(e=!1){this.type===J.API?this.onFetchApiUsages(e):this.type===J.Proxy&&this.onFetchProxyUsages(e)},startAutoRefresh(){this.stopAutoRefresh(),this.autoRefreshTimer=window.setInterval(()=>{document.hidden||this.onFetchUsages(!0)},ge)},stopAutoRefresh(){this.autoRefreshTimer!==null&&(clearInterval(this.autoRefreshTimer),this.autoRefreshTimer=null)},async onApiChange(e){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,api_id:e}}),this.onFetchApiUsages(),this.onFetchAggregate()},async onApisChange(e){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,api_id:e&&e.length?e.join(`,`):``}}),this.onFetchApiUsages(),this.onFetchAggregate()},async onTimeRangeChanged(){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,created_at_from:this.createdAtRange?this.$dayjs.format(this.createdAtRange[0].toString(),`YYYY-MM-DDTHH:mm:ss.SSSSSSZ`):``,created_at_to:this.createdAtRange?this.$dayjs.format(this.createdAtRange[1].toString(),`YYYY-MM-DDTHH:mm:ss.SSSSSSZ`):``}}),this.onFetchUsages(),this.onFetchAggregate(),this.onFetchStatusCodeOptions()},async onApplicationChange(e){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,application_id:e}}),this.onFetchUsages(),this.onFetchAggregate()},async onApplicationsChange(e){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,application_id:e&&e.length?e.join(`,`):``}}),this.onFetchUsages(),this.onFetchAggregate()},onPageChange(e){this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,page:e}})},getRemainingAmount(e){if(e.remaining_amount===void 0||e.remaining_amount===null)return``;let t=this.$t(`service.unit.${e?.service?.unit||`credit`}s`);return`${e.remaining_amount?.toFixed(6)} ${t}`},getUsedAmount(e){if(e.used_amount===void 0||e.used_amount===null)return``;let t=this.$t(`service.unit.${e?.service?.unit||`credit`}s`);return`${e.used_amount?.toFixed(6)} ${t}`},getDeductedAmount(e){if(e?.deducted_amount===void 0||e?.deducted_amount===null)return``;let t=this.$t(`service.unit.${e?.service?.unit||`credit`}s`);return`${e.deducted_amount?.toFixed(6)} ${t}`},getOriginalAmount(e){if(e?.original_amount===void 0||e?.original_amount===null)return``;let t=this.$t(`service.unit.${e?.service?.unit||`credit`}s`);return`${e.original_amount?.toFixed(6)} ${t}`},onStatusCodeChange(e){let t={...this.$route.query},n=(e||``).trim();n?t.status_code=n:delete t.status_code,delete t.status_code_filter,this.$router.push({name:this.$route.name?.toString(),query:t}),this.onFetchUsages(),this.onFetchAggregate()},async onFetchStatusCodeOptions(){this.statusCodeOptionsLoading=!0;try{let{data:e}=await X.getStatusCodes({user_id:this.$store.getters.user.id,...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{},...this.apiIds&&this.apiIds.length?{api_id:this.apiIds}:{},...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0]}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1]}:{}});this.statusCodeOptions=(e?.items||[]).slice().sort((e,t)=>e-t)}catch{this.statusCodeOptions=[]}finally{this.statusCodeOptionsLoading=!1}},formatElapsed(e){return e==null||Number.isNaN(e)?`-`:e<1?`${Math.round(e*1e3)} ms`:`${e.toFixed(2)} s`},getSimpleMetadata(e){if(!e)return{};let t={};for(let[n,r]of Object.entries(e))n===`request`||n===`response`||typeof r==`object`&&r||(t[n]=r);return t},getCredentialLabel(e){return e.credential?.name?.trim()||e.credential?.id||e.credential_id||`-`},onShowDetail(e){this.detailRow={...e,metadata:void 0},this.detailActiveTab=`request`,this.detailDialogVisible=!0,this.detailLoading=!0,e.id&&X.get(e.id).then(e=>{this.detailRow=e.data}).finally(()=>{this.detailLoading=!1})},formatJson(e){try{return JSON.stringify(e,null,2)}catch{return String(e)}},onFetchApplications(){ae.getAll({limit:100,offset:0,user_id:this.$store.getters.user.id,ordering:`-created_at`,type:ce.USAGE}).then(({data:e})=>{this.applications=e.items.filter(e=>e?.service?.type===this.type)}).catch(()=>{})},onFetchApis(){this.apisLoading=!0,oe.getAll({limit:1e3,offset:0,ordering:`-created_at`}).then(({data:e})=>{this.apis=e.items}).catch(()=>{}).finally(()=>{this.apisLoading=!1})},onFetchApiUsages(e=!1){e||(this.loading=!0);let t=++this.fetchSeq;X.getAll({limit:this.limit,offset:(this.page-1)*this.limit,user_id:this.$store.getters.user.id,ordering:`-created_at`,...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0]}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1]}:{},...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{},...this.apiIds&&this.apiIds.length?{api_id:this.apiIds}:{},...this.statusCodeFilter?{status_code:this.statusCodeFilter}:{},...this.traceId?{trace_id:this.traceId}:{}}).then(({data:e})=>{t===this.fetchSeq&&(this.apiUsages=e.items,this.total=e.count)}).catch(()=>{}).finally(()=>{e||(this.loading=!1)})},onFetchProxyUsages(e=!1){e||(this.loading=!0);let t=++this.fetchSeq;le.getAll({limit:this.limit,offset:(this.page-1)*this.limit,user_id:this.$store.getters.user.id,ordering:`-created_at`,...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{}}).then(({data:e})=>{t===this.fetchSeq&&(this.proxyUsages=e.items,this.total=e.count)}).catch(()=>{}).finally(()=>{e||(this.loading=!1)})},async onExport(){let e=this.$store.state.token?.access;if(!e){Y.error(this.$t(`usage.message.exportFailed`));return}let t={user_id:this.$store.getters.user.id,...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0]}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1]}:{},...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{},...this.apiIds&&this.apiIds.length?{api_id:this.apiIds}:{},...this.statusCodeFilter?{status_code:this.statusCodeFilter}:{}},n=`${ue()}/api/v1/usage/apis/export/?${fe.default.stringify(t,{arrayFormat:`repeat`})}`,r=null,i=window.showSaveFilePicker;if(typeof i==`function`)try{r=await i({suggestedName:`usages.csv`,types:[{description:`CSV`,accept:{"text/csv":[`.csv`]}}]})}catch(e){if(e?.name===`AbortError`)return;r=null}this.exporting=!0;try{let t=await fetch(n,{headers:{authorization:`Bearer ${e}`}});if(!t.ok||!t.body)throw Error(`export failed: ${t.status}`);if(r)await t.body.pipeTo(await r.createWritable());else{let e=await t.blob(),n=window.URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=`usages.csv`,r.click(),window.URL.revokeObjectURL(n)}}catch{Y.error(this.$t(`usage.message.exportFailed`))}finally{this.exporting=!1}},fmtAmount(e){return new Intl.NumberFormat().format(Math.round(((e||0)+2**-52)*100)/100)},async onFetchAggregate(){if(this.type!==this.serviceType.API)return;this.aggLoading=!0;let e={user_id:this.$store.getters.user.id,...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{},...this.apiIds&&this.apiIds.length?{api_id:this.apiIds}:{},...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0]}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1]}:{},timezone:Intl.DateTimeFormat().resolvedOptions().timeZone};try{let{data:t}=await X.getAggregate(e);this.totalUsed=t.total||0;let n=Array.from(new Set((t.items||[]).map(e=>e.date))).sort(),r={},i={};(t.items||[]).forEach(e=>{let t=e.amount||0;(r[e.date]||(r[e.date]={}))[e.api_id]=(r[e.date]?.[e.api_id]||0)+t,i[e.api_id]=(i[e.api_id]||0)+t});let a=Object.keys(i).sort((e,t)=>i[t]-i[e]),o=a.reduce((e,t)=>e+i[t],0),s=a.length;if(o>0){let e=o*(1-pe),t=0;for(let n=0;n<a.length;n++)if(t+=i[a[n]],t>=e){s=n+1;break}s=Math.min(s,me)}a.length-s===1&&(s=a.length);let c=a.slice(0,s),l=new Set(c),u=he(c.length),d=a.slice(s),f=`${this.$t(`usage.value.others`)} (${d.length})`,p=c.map((e,i)=>({key:e,label:t.apis?.[e]?.title||e,data:n.map(t=>r[t]?.[e]||0),color:u[i]}));if(d.length){let e=n.map(e=>Object.entries(r[e]||{}).reduce((e,[t,n])=>l.has(t)?e:e+n,0));e.some(e=>e>0)&&p.push({key:`__others__`,label:f,data:e,color:Q})}this.apiBreakdown=a.map((e,n)=>({key:e,label:t.apis?.[e]?.title||e,amount:i[e],color:n<c.length?u[n]:Q,share:o>0?i[e]/o:0}));let m=[],h=[],g=[];c.forEach((e,n)=>{m.push(t.apis?.[e]?.title||e),h.push(i[e]),g.push(u[n])});let _=d.reduce((e,t)=>e+i[t],0);_>0&&(m.push(f),h.push(_),g.push(Q)),this.pieLabels=m,this.pieData=h,this.pieColors=g,this.barChartLabels=n,this.barChartSeries=p}finally{this.aggLoading=!1}}}}),ve={class:`text-[26px] font-bold mb-5 text-[var(--el-text-color-primary)]`},ye={class:`inline-block w-9`},be={class:`inline-block`},xe={key:1,class:`summary-card`},Se={class:`icon-wrapper`},Ce={class:`text-left`},we={class:`description`},Te={class:`value`},Ee={class:`flex flex-wrap items-center justify-between gap-2`},De={class:`text-[15px] font-medium text-[var(--el-text-color-primary)]`},Oe={class:`chart-wrapper`},ke={class:`share-cell`},Ae={class:`share-bar`},je={class:`share-pct`},Me={class:`flex items-center justify-end gap-2 mb-4`},Ne={class:`text-sm text-[var(--el-text-color-regular)]`},Pe={key:0},Fe={key:0},Ie={key:1},Le={class:`flex flex-wrap gap-2`},Re={class:`key`},ze={key:0,class:`cursor-pointer`},Be={class:`key`},Ve={key:0,class:`cursor-pointer`},$={class:`created-at`},He={class:`key`},Ue={key:0,class:`cursor-pointer`},We={class:`created-at`},Ge={key:1,class:`detail-json`},Ke={key:2,class:`text-gray-400`},qe={key:1,class:`detail-json`},Je={key:2,class:`text-gray-400`},Ye={class:`float-right`};function Xe(e,c,u,d,p,h){let _=l(`el-col`),v=l(`el-row`),x=l(`el-radio-button`),C=l(`el-radio-group`),w=l(`el-option`),E=l(`el-select`),O=l(`el-skeleton-item`),k=l(`el-skeleton`),A=l(`el-date-picker`),j=l(`export-icon`),M=l(`el-button`),N=l(`applications-icon`),P=l(`el-card`),F=l(`bar-chart`),I=l(`el-empty`),L=l(`doughnut-chart`),R=l(`el-table-column`),z=l(`el-table`),B=l(`el-switch`),V=l(`el-tag`),H=l(`copy-to-clipboard`),U=l(`el-tab-pane`),W=l(`el-tabs`),G=l(`el-dialog`),K=l(`pagination`),q=y(`loading`);return T(),m(v,null,{default:g(()=>[i(_,{span:24},{default:g(()=>[i(v,null,{default:g(()=>[i(_,{span:24},{default:g(()=>[t(`h2`,ve,r(e.$t(`common.title.allUsages`)),1)]),_:1})]),_:1}),i(v,null,{default:g(()=>[i(_,{md:4,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[t(`span`,null,r(e.$t(`application.field.type`)),1),i(C,{modelValue:e.type,"onUpdate:modelValue":c[0]||=t=>e.type=t},{default:g(()=>[i(x,{value:e.serviceType.API,label:e.$t(`application.field.api`)},null,8,[`value`,`label`]),i(x,{value:e.serviceType.Proxy,label:e.$t(`application.field.proxy`)},null,8,[`value`,`label`])]),_:1},8,[`modelValue`])]),_:1}),f(i(_,{md:6,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[t(`span`,ye,r(e.$t(`usage.field.application`)),1),i(E,{modelValue:e.applicationIds,"onUpdate:modelValue":c[1]||=t=>e.applicationIds=t,placeholder:e.$t(`usage.field.application`),clearable:``,multiple:``,"collapse-tags":``,"collapse-tags-tooltip":``,class:`w-full`,onChange:e.onApplicationsChange},{default:g(()=>[(T(!0),o(s,null,S(e.applications,e=>(T(),m(w,{key:e.id,label:e.service?.title,value:e?.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`])]),_:1},512),[[D,!1]]),e.type===e.serviceType.API?(T(),m(_,{key:0,md:6,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[t(`span`,be,r(e.$t(`usage.field.api`)),1),e.apisLoading?(T(),m(k,{key:0,animated:``,class:`w-full`},{template:g(()=>[i(O,{variant:`rect`,style:{height:`32px`,"border-radius":`4px`}})]),_:1})):(T(),m(E,{key:1,modelValue:e.apiIds,"onUpdate:modelValue":c[2]||=t=>e.apiIds=t,placeholder:e.$t(`usage.field.api`),clearable:``,filterable:``,multiple:``,"collapse-tags":``,"collapse-tags-tooltip":``,class:`w-full`,onChange:e.onApisChange},{default:g(()=>[(T(!0),o(s,null,S(e.apis,e=>(T(),m(w,{key:e?.id,label:e?.title,value:e?.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`]))]),_:1})):a(``,!0),e.type===e.serviceType.API?(T(),m(_,{key:1,md:8,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[i(A,{modelValue:e.createdAtRange,"onUpdate:modelValue":c[3]||=t=>e.createdAtRange=t,type:`datetimerange`,class:`w-full`,shortcuts:e.shortcuts,"range-separator":e.$t(`usage.placeholder.to`),"start-placeholder":e.$t(`usage.placeholder.startDate`),"end-placeholder":e.$t(`usage.placeholder.endDate`),onChange:e.onTimeRangeChanged},null,8,[`modelValue`,`shortcuts`,`range-separator`,`start-placeholder`,`end-placeholder`,`onChange`])]),_:1})):a(``,!0),e.type===e.serviceType.API?(T(),m(_,{key:2,md:3,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[i(E,{modelValue:e.statusCodeFilter,"onUpdate:modelValue":c[4]||=t=>e.statusCodeFilter=t,placeholder:e.$t(`usage.option.statusCodeAll`),class:`w-full`,clearable:``,filterable:``,"allow-create":``,"default-first-option":``,loading:e.statusCodeOptionsLoading,onChange:e.onStatusCodeChange},{default:g(()=>[(T(!0),o(s,null,S(e.statusCodeOptions,e=>(T(),m(w,{key:e,label:String(e),value:String(e)},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`loading`,`onChange`])]),_:1})):a(``,!0),e.type===e.serviceType.API?(T(),m(_,{key:3,md:3,xs:24,class:`mb-5 flex px-2 gap-2 items-center justify-end`},{default:g(()=>[i(M,{type:`primary`,plain:``,loading:e.exporting,class:`w-full whitespace-nowrap`,onClick:e.onExport},{default:g(()=>[i(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(e.$t(`usage.button.export`)),1)]),_:1},8,[`loading`,`onClick`])]),_:1})):a(``,!0)]),_:1}),i(v,null,{default:g(()=>[i(_,{span:24},{default:g(()=>[e.type===e.serviceType.API?(T(),m(v,{key:0,gutter:24,class:`mb-5`},{default:g(()=>[i(_,{md:6,xs:24},{default:g(()=>[i(P,{shadow:`hover`,class:`h-full`},{default:g(()=>[e.aggLoading?(T(),m(k,{key:0})):(T(),o(`div`,xe,[t(`div`,Se,[i(N,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),t(`div`,Ce,[t(`p`,we,r(e.$t(`usage.title.totalUsed`)),1),t(`p`,Te,r(e.totalUsedString),1)])]))]),_:1})]),_:1}),i(_,{md:18,xs:24},{default:g(()=>[i(P,{shadow:`hover`,class:`h-full`},{header:g(()=>[t(`div`,Ee,[t(`span`,De,r(e.$t(`usage.title.usageAnalytics`)),1),i(C,{modelValue:e.chartView,"onUpdate:modelValue":c[5]||=t=>e.chartView=t,size:`small`},{default:g(()=>[i(x,{value:`trend`,label:e.$t(`usage.view.trend`)},null,8,[`label`]),i(x,{value:`distribution`,label:e.$t(`usage.view.distribution`)},null,8,[`label`]),i(x,{value:`breakdown`,label:e.$t(`usage.view.breakdown`)},null,8,[`label`])]),_:1},8,[`modelValue`])])]),default:g(()=>[t(`div`,Oe,[e.aggLoading?(T(),m(k,{key:0,class:`w-full`})):e.chartView===`trend`?(T(),o(s,{key:1},[e.barChartSeries.length?(T(),m(F,{key:0,data:e.barChartData,options:e.barChartOptions,class:`chart`},null,8,[`data`,`options`])):(T(),m(I,{key:1,description:e.$t(`common.message.noData`),"image-size":70,class:`w-full`},null,8,[`description`]))],64)):e.chartView===`distribution`?(T(),o(s,{key:2},[e.pieData.length?(T(),m(L,{key:0,data:e.doughnutChartData,options:e.doughnutChartOptions,class:`chart`},null,8,[`data`,`options`])):(T(),m(I,{key:1,description:e.$t(`common.message.noData`),"image-size":70,class:`w-full`},null,8,[`description`]))],64)):(T(),o(s,{key:3},[e.apiBreakdown.length?(T(),m(z,{key:0,data:e.apiBreakdown,size:`small`,height:`300`,class:`w-full`},{default:g(()=>[i(R,{label:e.$t(`usage.field.api`),"min-width":`160`},{default:g(e=>[t(`span`,{class:`color-dot`,style:b({backgroundColor:e.row.color})},null,4),t(`span`,null,r(e.row.label),1)]),_:1},8,[`label`]),i(R,{label:e.$t(`usage.field.consumed`),width:`120`,align:`right`},{default:g(n=>[t(`span`,null,r(e.fmtAmount(n.row.amount)),1)]),_:1},8,[`label`]),i(R,{label:e.$t(`usage.field.share`),width:`150`},{default:g(e=>[t(`div`,ke,[t(`div`,Ae,[t(`div`,{class:`share-bar-fill`,style:b({width:e.row.share*100+`%`,backgroundColor:e.row.color})},null,4)]),t(`span`,je,r((e.row.share*100).toFixed(1))+`%`,1)])]),_:1},8,[`label`])]),_:1},8,[`data`])):(T(),m(I,{key:1,description:e.$t(`common.message.noData`),"image-size":70,class:`w-full`},null,8,[`description`]))],64))])]),_:1})]),_:1})]),_:1})):a(``,!0),i(P,{shadow:`hover`},{default:g(()=>[t(`div`,Me,[t(`span`,Ne,r(e.$t(`usage.field.autoRefresh`)),1),i(B,{modelValue:e.autoRefresh,"onUpdate:modelValue":c[6]||=t=>e.autoRefresh=t},null,8,[`modelValue`])]),e.type===e.serviceType.API?f((T(),m(z,{key:0,data:e.apiUsages,stripe:``,"table-layout":`fixed`,"empty-text":e.$t(`common.message.noData`),class:`min-h-[calc(100vh-350px)] mb-5`},{default:g(()=>[i(R,{label:e.$t(`application.field.name`),width:`160px`},{default:g(e=>[t(`span`,null,r(e.row?.api?.title),1)]),_:1},8,[`label`]),i(R,{label:e.$t(`usage.field.statusCode`),width:`120px`},{default:g(t=>[t.row.status_code?(T(),o(`span`,Pe,r(t.row.status_code),1)):(T(),m(V,{key:1,type:`warning`,size:`small`},{default:g(()=>[n(r(e.$t(`usage.value.processing`)),1)]),_:1}))]),_:1},8,[`label`]),i(R,{label:e.$t(`usage.field.elapsed`),width:`120px`},{default:g(n=>[t(`span`,null,r(e.formatElapsed(n.row.elapsed)),1)]),_:1},8,[`label`]),i(R,{prop:`deducted_amount`,label:e.$t(`usage.field.deductedAmount`),width:`150px`,"class-name":`text-center`},{default:g(n=>[e.getDeductedAmount(n.row)===e.getOriginalAmount(n.row)?(T(),o(`div`,Fe,[t(`span`,null,r(e.getDeductedAmount(n.row)),1)])):(T(),o(`div`,Ie,[c[9]||=t(`p`,null,null,-1),t(`p`,null,[t(`span`,null,r(e.getDeductedAmount(n.row)),1)]),t(`p`,null,[t(`del`,null,r(e.getOriginalAmount(n.row)),1)])]))]),_:1},8,[`label`]),i(R,{prop:`remaining_amount`,label:e.$t(`usage.field.balanceAfter`),width:`160px`,"class-name":`text-center`},{default:g(n=>[t(`span`,null,r(e.getRemainingAmount(n.row)),1)]),_:1},8,[`label`]),i(R,{prop:`metadata`,label:e.$t(`usage.field.metadata`),width:`260px`,"class-name":`text-center`},{default:g(i=>[t(`div`,Le,[i.row.original_amount>i.row.deducted_amount&&i.row.original_amount>0?(T(),m(V,{key:0,type:`success`,style:{textWrap:`wrap`,height:`fit-content`,lineHeight:`20px`,borderRadius:`10px`}},{default:g(()=>[n(r(((i.row.original_amount-i.row.deducted_amount)*100/i.row.original_amount).toFixed(0)+`% OFF`),1)]),_:2},1024)):a(``,!0),(T(!0),o(s,null,S(e.getSimpleMetadata(i.row.metadata),(e,t)=>(T(),m(V,{key:t,style:{textWrap:`wrap`,height:`fit-content`,lineHeight:`20px`,borderRadius:`10px`}},{default:g(()=>[n(r(t)+`: `+r(e),1)]),_:2},1024))),128))])]),_:1},8,[`label`]),i(R,{label:e.$t(`usage.button.viewDetail`),width:`120px`,"class-name":`text-center`},{default:g(t=>[t.row.id?(T(),m(M,{key:0,type:`primary`,plain:``,size:`small`,class:`!px-2 !py-1 !text-xs !h-auto !min-h-0`,onClick:n=>e.onShowDetail(t.row)},{default:g(()=>[n(r(e.$t(`usage.button.viewDetail`)),1)]),_:1},8,[`onClick`])):a(``,!0)]),_:1},8,[`label`]),i(R,{prop:`trace_id`,label:e.$t(`application.field.traceId`),width:`200px`,"class-name":`text-center`},{default:g(e=>[t(`span`,Re,r(e.row.trace_id),1),e.row.trace_id?(T(),o(`span`,ze,[i(H,{content:e.row.trace_id,class:`inline-block`},null,8,[`content`])])):a(``,!0)]),_:1},8,[`label`]),i(R,{prop:`credential_id`,label:e.$t(`usage.field.credential`),width:`200px`,"class-name":`text-center`},{default:g(n=>[t(`span`,Be,r(e.getCredentialLabel(n.row)),1),n.row.credential?.id||n.row.credential_id?(T(),o(`span`,Ve,[i(H,{content:n.row.credential?.id||n.row.credential_id,class:`inline-block`},null,8,[`content`])])):a(``,!0)]),_:1},8,[`label`]),i(R,{label:e.$t(`usage.field.createdAt`),width:`200px`},{default:g(n=>[t(`span`,$,r(e.$dayjs.format(n.row.created_at)),1)]),_:1},8,[`label`])]),_:1},8,[`data`,`empty-text`])),[[q,e.loading]]):a(``,!0),e.type===e.serviceType.Proxy?f((T(),m(z,{key:1,data:e.proxyUsages,stripe:``,"table-layout":`fixed`,"empty-text":e.$t(`common.message.noData`),class:`min-h-[calc(100vh-350px)] mb-5`},{default:g(()=>[i(R,{label:e.$t(`application.field.name`),width:`160px`},{default:g(e=>[t(`span`,null,r(e.row?.service?.title),1)]),_:1},8,[`label`]),i(R,{prop:`remaining_amount`,label:e.$t(`usage.field.remainingAmount`),width:`160px`,"class-name":`text-center`},{default:g(n=>[t(`span`,null,r(e.getRemainingAmount(n.row)),1),t(`span`,null,r(e.getOriginalAmount(n.row)),1)]),_:1},8,[`label`]),i(R,{prop:`deducted_amount`,label:e.$t(`usage.field.deductedAmount`),width:`150px`,"class-name":`text-center`},{default:g(n=>[t(`span`,null,r(e.getDeductedAmount(n.row)),1)]),_:1},8,[`label`]),i(R,{label:e.$t(`usage.field.balanceAfter`),width:`160px`,"class-name":`text-center`},{default:g(n=>[t(`span`,null,r(e.getRemainingAmount(n.row)),1)]),_:1},8,[`label`]),i(R,{prop:`metadata`,label:e.$t(`usage.field.metadata`),width:`200px`,"class-name":`text-center`},{default:g(e=>[(T(!0),o(s,null,S(e.row.metadata,(e,t)=>(T(),m(V,{key:t,class:`mb-2`},{default:g(()=>[n(r(t)+`: `+r(e),1)]),_:2},1024))),128))]),_:1},8,[`label`]),i(R,{prop:`credential_id`,label:e.$t(`usage.field.credential`),width:`200px`,"class-name":`text-center`},{default:g(n=>[t(`span`,He,r(e.getCredentialLabel(n.row)),1),n.row.credential?.id||n.row.credential_id?(T(),o(`span`,Ue,[i(H,{content:n.row.credential?.id||n.row.credential_id,class:`inline-block`},null,8,[`content`])])):a(``,!0)]),_:1},8,[`label`]),i(R,{label:e.$t(`usage.field.createdAt`),width:`200px`},{default:g(n=>[t(`span`,We,r(e.$dayjs.format(n.row.created_at)),1)]),_:1},8,[`label`])]),_:1},8,[`data`,`empty-text`])),[[q,e.loading]]):a(``,!0)]),_:1})]),_:1})]),_:1}),i(G,{modelValue:e.detailDialogVisible,"onUpdate:modelValue":c[8]||=t=>e.detailDialogVisible=t,title:e.$t(`usage.dialog.detailTitle`),width:`70%`,top:`5vh`,"destroy-on-close":``},{default:g(()=>[i(W,{modelValue:e.detailActiveTab,"onUpdate:modelValue":c[7]||=t=>e.detailActiveTab=t},{default:g(()=>[i(U,{label:e.$t(`usage.dialog.request`),name:`request`},{default:g(()=>[e.detailLoading?(T(),m(k,{key:0,rows:6,animated:``})):e.detailRow?.metadata?.request?(T(),o(`pre`,Ge,r(e.formatJson(e.detailRow.metadata.request)),1)):(T(),o(`p`,Ke,r(e.$t(`usage.dialog.noData`)),1))]),_:1},8,[`label`]),i(U,{label:e.$t(`usage.dialog.response`),name:`response`},{default:g(()=>[e.detailLoading?(T(),m(k,{key:0,rows:6,animated:``})):e.detailRow?.metadata?.response?(T(),o(`pre`,qe,r(e.formatJson(e.detailRow.metadata.response)),1)):(T(),o(`p`,Je,r(e.$t(`usage.dialog.noData`)),1))]),_:1},8,[`label`])]),_:1},8,[`modelValue`])]),_:1},8,[`modelValue`,`title`]),i(v,null,{default:g(()=>[i(_,{span:10,offset:14},{default:g(()=>[t(`div`,Ye,[i(K,{"current-page":e.page,"page-size":e.limit,total:e.total,onChange:e.onPageChange},null,8,[`current-page`,`page-size`,`total`,`onChange`])])]),_:1})]),_:1})]),_:1})]),_:1})}var Ze=ee(_e,[[`render`,Xe],[`__scopeId`,`data-v-81b0a3c5`]]);export{Ze as default};
@@ -1,5 +0,0 @@
1
- import{r as e}from"./rolldown-runtime--c01j_DQ.js";import{A as t,I as n,Jt as r,L as i,M as a,N as o,T as s,at as c,j as l,mt as u,rt as d,st as f,tt as p,z as m}from"./vendor-chart-Dw-P17PN.js";import{t as ee}from"./switch-BeR6FXQG.js";import{n as te,t as h}from"./shield-_GOOyi3T.js";import{t as g}from"./folder-YwSPRjfx.js";import{t as _}from"./mouse-pointer-2-BkWuevUn.js";import{t as v}from"./pencil-C4h29ypb.js";import{t as y}from"./plus-DPVOt-4h.js";import{t as b}from"./terminal-RaIlicxa.js";import{t as x}from"./wand-sparkles-CWw5upM5.js";import{E as S,Mi as C,O as w,Pi as T,Ui as E,fr as D,li as ne,oi as O,vi as k}from"./index-0JujvRxi.js";var A=k(`arrow-up-down`,[[`path`,{d:`m21 16-4 4-4-4`,key:`f6ql7i`}],[`path`,{d:`M17 20V4`,key:`1ejh1v`}],[`path`,{d:`m3 8 4-4 4 4`,key:`11wl7u`}],[`path`,{d:`M7 4v16`,key:`1glfcx`}]]),j=k(`camera`,[[`path`,{d:`M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z`,key:`18u6gg`}],[`circle`,{cx:`12`,cy:`13`,r:`3`,key:`1vg3eu`}]]),M=k(`keyboard`,[[`path`,{d:`M10 8h.01`,key:`1r9ogq`}],[`path`,{d:`M12 12h.01`,key:`1mp3jc`}],[`path`,{d:`M14 8h.01`,key:`1primd`}],[`path`,{d:`M16 12h.01`,key:`1l6xoz`}],[`path`,{d:`M18 8h.01`,key:`emo2bl`}],[`path`,{d:`M6 8h.01`,key:`x9i8wu`}],[`path`,{d:`M7 16h10`,key:`wp8him`}],[`path`,{d:`M8 12h.01`,key:`czm47f`}],[`rect`,{width:`20`,height:`16`,x:`2`,y:`4`,rx:`2`,key:`18n3k1`}]]),N=k(`move`,[[`path`,{d:`M12 2v20`,key:`t6zp3m`}],[`path`,{d:`m15 19-3 3-3-3`,key:`11eu04`}],[`path`,{d:`m19 9 3 3-3 3`,key:`1mg7y2`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}],[`path`,{d:`m5 9-3 3 3 3`,key:`j64kie`}],[`path`,{d:`m9 5 3-3 3 3`,key:`l8vdw6`}]]),P=m({name:`LocalToolsSetting`,components:{AddIcon:y,ElButton:T,ElTag:C,ElSwitch:ee,ElInput:E,FolderIcon:g,MagicIcon:x,SecurityIcon:h},data(){return{roots:[],tools:[],mcpServers:[],mcpUid:0,mcpStatuses:[],mcpBusy:null,savingMcp:!1,mcpSavedTip:!1,mcpError:``,grants:null,perm:null,computerUse:!1,computerTools:[],computerGrants:{},cuBusy:null,builtinTools:[],toolGrants:{},builtinBusy:null,savingCU:!1,preauthorizing:!1,saving:!1,savedTip:!1,a11yEnabled:!1,xhsSkill:null,xhsLoading:!1,xhsInstalling:!1,xhsError:``,onFocus:null,cuOff:null,a11yPoll:null,refreshingA11y:!1}},computed:{desktop(){return!!w()},android(){return ne()},canInstallXhs(){return this.a11yEnabled&&this.computerUse}},async mounted(){let e=w();if(!e)return;let t=await e.getConfig();this.roots=t.roots,this.computerUse=t.computerUse===!0,this.mcpServers=(t.mcp??[]).map(e=>({_uid:this.mcpUid++,id:e.id,command:e.command,argsText:(e.args??[]).join(`
2
- `),envText:Object.entries(e.env??{}).map(([e,t])=>`${e}=${t}`).join(`
3
- `),enabled:e.enabled!==!1})),this.mcpStatuses=await e.mcp?.status()??[],this.tools=(await e.listTools()).map(e=>e.name),this.computerTools=await e.computerTools?.()??[],this.builtinTools=await e.builtinTools?.()??[];let n=await e.perm?.status();n?.mac&&(this.perm=n),await this.loadGrants(),this.android&&(await this.refreshA11y(),this.fetchXhsSkill(),this.onFocus=()=>{document.visibilityState===`visible`&&this.refreshA11y()},document.addEventListener(`visibilitychange`,this.onFocus),this.a11yPoll=window.setInterval(()=>{document.visibilityState===`visible`&&this.refreshA11y()},3e3)),this.cuOff=e.onComputerUseDisabled?.(()=>{this.computerUse=!1})??null},beforeUnmount(){this.cuOff?.(),this.onFocus&&document.removeEventListener(`visibilitychange`,this.onFocus),this.a11yPoll&&clearInterval(this.a11yPoll)},methods:{async refreshA11y(){if(!this.refreshingA11y){this.refreshingA11y=!0;try{let e=await w()?.perm?.status();this.a11yEnabled=e?.accessibility===!0}finally{this.refreshingA11y=!1}}},async openAndroidAccessibility(){await w()?.perm?.openPane(`accessibility`)},async fetchXhsSkill(){this.xhsLoading=!0,this.xhsError=``;try{let e=await D.get(`/skills/`,{baseURL:`${O()}/api/v1`,params:{q:`xhs-dm`,limit:10}}),t=Array.isArray(e.data?.items)?e.data.items:[];this.xhsSkill=t.find(e=>e.identifier?.endsWith(`/xhs-dm`))??null}catch(e){console.warn(`[LocalTools] fetch xhs skill failed`,e),this.xhsSkill=null,this.xhsError=this.$t(`common.settings.localToolsAndroidSkillsLoadFailed`)}finally{this.xhsLoading=!1}},async installXhs(){let e=this.xhsSkill;if(!(!e||e.installed)){this.xhsInstalling=!0,this.xhsError=``;try{await D.post(`/skills/${e.id}/install/`,{},{baseURL:`${O()}/api/v1`}),e.installed=!0}catch(t){t?.response?.status===409?e.installed=!0:this.xhsError=this.$t(`common.settings.localToolsAndroidSkillsInstallFailed`)}finally{this.xhsInstalling=!1}}},async loadGrants(){let e=w();if(!e?.grants){this.grants=null;return}let t=await e.grants.list(),n={},r={},i=new Set(this.builtinTools.map(e=>e.name)),a=[];for(let e of t){if(e.startsWith(`computer.`)&&!e.includes(`:`)){n[e]=!0;continue}if(!e.includes(`:`)&&i.has(e)){r[e]=!0;continue}let t=e.indexOf(`:{`),o=t>=0?t:e.indexOf(`:`);a.push({key:e,name:o>=0?e.slice(0,o):e,input:o>=0?e.slice(o+1):``})}this.computerGrants=n,this.toolGrants=r,this.grants=a},async addFolder(){let e=await w()?.pickFolder();e&&!this.roots.includes(e)&&this.roots.push(e)},removeRoot(e){this.roots.splice(e,1)},addMcp(){this.mcpServers.push({_uid:this.mcpUid++,id:``,command:``,argsText:``,envText:``,enabled:!0})},removeMcp(e){this.mcpServers.splice(e,1)},mcpStatusFor(e){let t=e.trim();return this.mcpStatuses.find(e=>e.id===t)},mcpBadgeType(e){let t=this.mcpStatusFor(e)?.status;return t===`connected`?`success`:t===`failed`?`danger`:`info`},mcpBadgeText(e){let t=this.mcpStatusFor(e);return this.mcpBusy===e.trim()?this.$t(`common.settings.localToolsMcpConnecting`):t?t.status===`connected`?this.$t(`common.settings.localToolsMcpConnected`,{n:t.toolCount}):t.status===`disabled`?this.$t(`common.settings.localToolsMcpDisabled`):this.$t(`common.settings.localToolsMcpFailed`):this.$t(`common.settings.localToolsMcpNotSaved`)},mcpErrorFor(e){let t=this.mcpStatusFor(e);return t?.status===`failed`&&t.error?t.error:``},buildMcpPayload(){this.mcpError=``;let e=[],t=new Set;for(let n of this.mcpServers){let r=n.id.trim(),i=n.command.trim();if(!r||!i)return this.mcpError=this.$t(`common.settings.localToolsMcpNameRequired`),null;if(!/^[A-Za-z0-9_-]+$/.test(r))return this.mcpError=this.$t(`common.settings.localToolsMcpNameInvalid`),null;if(t.has(r))return this.mcpError=this.$t(`common.settings.localToolsMcpDuplicateName`),null;t.add(r);let a=n.argsText.split(`
4
- `).map(e=>e.trim()).filter(Boolean),o={};for(let e of n.envText.split(`
5
- `)){let t=e.trim();if(!t)continue;let n=t.indexOf(`=`);n<=0||(o[t.slice(0,n).trim()]=t.slice(n+1).trim())}let s={id:r,command:i,args:a,enabled:n.enabled!==!1};Object.keys(o).length&&(s.env=o),e.push(s)}return e},async saveMcp(){let e=this.buildMcpPayload();if(!e)return!1;this.savingMcp=!0;try{let t=await w()?.getConfig();return await w()?.saveConfig({roots:t?.roots??this.roots,mcp:e,computerUse:this.computerUse}),await this.refreshMcpStatus(),this.mcpSavedTip=!0,setTimeout(()=>this.mcpSavedTip=!1,2e3),!0}finally{this.savingMcp=!1}},async refreshMcpStatus(){let e=w();e&&(this.mcpStatuses=await e.mcp?.status()??[],this.tools=(await e.listTools())?.map(e=>e.name)??this.tools)},async onToggleMcpEnabled(e){await this.saveMcp()||(e.enabled=!e.enabled)},async reconnectMcp(e){let t=e.id.trim();if(!t||!e.command.trim())return;let n=this.buildMcpPayload();if(n){this.mcpBusy=t;try{let e=await w()?.getConfig();await w()?.saveConfig({roots:e?.roots??this.roots,mcp:n,computerUse:this.computerUse}),await w()?.mcp?.reconnect(t),await this.refreshMcpStatus()}finally{this.mcpBusy=null}}},async open(e){await w()?.perm?.openPane(e)},async save(){this.saving=!0;let e=await w()?.getConfig();await w()?.saveConfig({roots:this.roots,mcp:e?.mcp??[],computerUse:this.computerUse}),this.saving=!1,this.savedTip=!0,setTimeout(()=>this.savedTip=!1,2e3)},async onToggleComputerUse(e){this.savingCU=!0;let t=await w()?.getConfig();if(await w()?.saveConfig({roots:t?.roots??this.roots,mcp:t?.mcp??[],computerUse:e===!0}),this.savingCU=!1,e===!0&&this.android){let e=(await w()?.perm?.status())?.accessibility===!0;this.a11yEnabled=e,e||await this.openAndroidAccessibility()}},async preauthorizeAll(){let e=w();if(e?.preauthorizeComputerUse){this.preauthorizing=!0;try{let t=await e.preauthorizeComputerUse();this.computerUse=t.computerUse===!0,t.perm?.mac&&(this.perm=t.perm),await this.loadGrants()}finally{this.preauthorizing=!1}}},async onToggleComputerTool(e,t){let n=w();if(n){this.cuBusy=e;try{if(t===!0){let t=await n.preauthorizeComputerUse?.([e]);t&&(this.computerUse=t.computerUse===!0,t.perm?.mac&&(this.perm=t.perm))}else await n.grants?.revoke(e);await this.loadGrants()}finally{this.cuBusy=null}}},cuLabel(e){let t=`common.settings.localToolsCu${this.cuSuffix(e)}`,n=this.$t(t);return n===t?e.replace(/^computer\./,``):n},cuIcon(e){return{screenshot:j,click:_,move:N,type:M,key:M,scroll:A}[e.replace(/^computer\./,``)]??h},cuSuffix(e){let t=e.replace(/^computer\./,``);return t.charAt(0).toUpperCase()+t.slice(1)},async onToggleBuiltinTool(e,t){let n=w();if(n?.grants){this.builtinBusy=e;try{t===!0?(await n.grants.grantToolWide?.(e))?.ok||(this.toolGrants={...this.toolGrants,[e]:!1}):await n.grants.revoke(e),await this.loadGrants()}finally{this.builtinBusy=null}}},builtinIcon(e){return e===`shell.run_command`?b:e===`fs.write_file`?v:e===`fs.read_file`?te:e===`fs.list_dir`?g:h},async revoke(e){await w()?.grants?.revoke(e),await this.loadGrants()},async revokeAll(){await w()?.grants?.clear(),await this.loadGrants()}}}),F=e({default:()=>$}),I={class:`settings-list local-tools-setting`},L={key:0,class:`hint muted`},R={key:0},z={class:`section-head`},B={class:`muted`},V={class:`perm-row`},H={class:`perm-name`},U={key:1},W={class:`section-head`},G={class:`muted`},K={class:`rows`},q={class:`path`},J={key:0,class:`row muted empty`},Y={class:`actions`},X={key:0,class:`muted saved-tip`},Z={key:0,class:`muted tools`},re={class:`section-head`},ie={class:`muted`},ae={key:0,class:`rows`},oe={class:`mcp-fields`},se={class:`mcp-head`},ce={class:`mcp-grid`},le={class:`mcp-flabel`},ue={class:`mcp-flabel`},de={class:`mcp-flabel top`},fe={class:`mcp-flabel top`},pe={key:0,class:`mcp-row-error`},me={key:1,class:`muted`},he={class:`muted mcp-platform-hint`},ge={class:`actions`},_e={key:0,class:`muted saved-tip`},ve={key:1,class:`mcp-error`},ye={key:2},be={class:`section-head`},xe={class:`muted`},Se={class:`rows`},Ce={class:`grant`},we={class:`grant-name`},Te={class:`grant-input`},Ee={key:0,class:`row muted empty`},De={key:3},Oe={class:`section-head`},ke={class:`muted`},Ae={class:`rows`},je={class:`cu-action`},Me={class:`cu-action-name`},Ne={class:`grant-name`},Pe={class:`cu-action-desc`},Fe={class:`section-head`},Ie={class:`muted`},Le={key:0,class:`perm-row cu-ready-row`},Re={class:`perm-name`},ze={class:`section-head sub`},Be={class:`muted`},Ve={class:`rows`},He={class:`cu-action`},Ue={class:`cu-action-name`},We={class:`cu-action-desc`},Ge={key:4},Ke={class:`section-head`},qe={class:`muted`},Je={class:`rows`},Ye={key:0,class:`row`},Xe={class:`cu-action`},Ze={class:`cu-action-name`},Qe={class:`cu-action-desc`},$e={key:1,class:`row muted empty`},et={key:2,class:`row muted empty`},tt={key:0,class:`muted`},nt={key:1,class:`muted saved-tip`},Q={key:2,class:`mcp-error`},rt={key:5},it={class:`section-head`},at={class:`muted`},ot={class:`perm-row`},st={class:`perm-name`},ct={class:`perm-row`},lt={class:`perm-name`},ut={class:`perm-row`},dt={class:`perm-name`};function ft(e,m,ee,te,h,g){let _=c(`el-tag`),v=c(`el-button`),y=c(`add-icon`),b=c(`folder-icon`),x=c(`el-switch`),S=c(`el-input`),C=c(`security-icon`),w=c(`magic-icon`);return p(),o(`div`,I,[e.desktop?(p(),o(s,{key:1},[e.android?(p(),o(`section`,R,[t(`div`,z,[t(`h3`,null,r(e.$t(`common.settings.localToolsPermsTitle`)),1)]),t(`p`,B,r(e.$t(`common.settings.localToolsAndroidPermHint`)),1),t(`div`,V,[t(`span`,H,r(e.$t(`common.settings.localToolsPermAccessibility`)),1),i(_,{size:`small`,type:e.a11yEnabled?`success`:`info`,effect:`plain`},{default:u(()=>[n(r(e.a11yEnabled?e.$t(`common.settings.localToolsGranted`):e.$t(`common.settings.localToolsNotGranted`)),1)]),_:1},8,[`type`]),i(v,{size:`small`,type:`primary`,onClick:e.openAndroidAccessibility},{default:u(()=>[n(r(e.$t(`common.settings.localToolsOpen`)),1)]),_:1},8,[`onClick`])])])):a(``,!0),e.android?a(``,!0):(p(),o(`section`,U,[t(`div`,W,[t(`h3`,null,r(e.$t(`common.settings.localToolsFoldersTitle`)),1),i(v,{size:`small`,type:`primary`,onClick:e.addFolder},{default:u(()=>[i(y,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(e.$t(`common.settings.localToolsAddFolder`)),1)]),_:1},8,[`onClick`])]),t(`p`,G,r(e.$t(`common.settings.localToolsFoldersHint`)),1),t(`ul`,K,[(p(!0),o(s,null,d(e.roots,(a,s)=>(p(),o(`li`,{key:a,class:`row`},[i(b,{class:`row-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(`span`,q,r(a),1),i(v,{size:`small`,text:``,type:`danger`,onClick:t=>e.removeRoot(s)},{default:u(()=>[n(r(e.$t(`common.settings.localToolsRemove`)),1)]),_:1},8,[`onClick`])]))),128)),e.roots.length?a(``,!0):(p(),o(`li`,J,r(e.$t(`common.settings.localToolsNoFolders`)),1))]),t(`div`,Y,[i(v,{size:`small`,type:`primary`,loading:e.saving,onClick:e.save},{default:u(()=>[n(r(e.$t(`common.settings.localToolsSave`)),1)]),_:1},8,[`loading`,`onClick`]),e.savedTip?(p(),o(`span`,X,r(e.$t(`common.settings.localToolsSaved`)),1)):a(``,!0)]),e.tools.length?(p(),o(`p`,Z,r(e.$t(`common.settings.localToolsActiveTools`))+`: `+r(e.tools.join(`, `)),1)):a(``,!0)])),t(`section`,null,[t(`div`,re,[t(`h3`,null,r(e.$t(`common.settings.localToolsMcpTitle`)),1),i(v,{size:`small`,type:`primary`,onClick:e.addMcp},{default:u(()=>[i(y,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(e.$t(`common.settings.localToolsMcpAdd`)),1)]),_:1},8,[`onClick`])]),t(`p`,ie,r(e.$t(`common.settings.localToolsMcpHint`)),1),e.mcpServers.length?(p(),o(`ul`,ae,[(p(!0),o(s,null,d(e.mcpServers,(s,c)=>(p(),o(`li`,{key:s._uid,class:`row mcp-row`},[t(`div`,oe,[t(`div`,se,[i(_,{size:`small`,effect:`plain`,type:e.mcpBadgeType(s.id)},{default:u(()=>[n(r(e.mcpBadgeText(s.id)),1)]),_:2},1032,[`type`]),m[4]||=t(`span`,{class:`mcp-spacer`},null,-1),i(x,{modelValue:s.enabled,"onUpdate:modelValue":e=>s.enabled=e,size:`small`,"active-text":e.$t(`common.settings.localToolsMcpEnabled`),"inline-prompt":``,onChange:t=>e.onToggleMcpEnabled(s)},null,8,[`modelValue`,`onUpdate:modelValue`,`active-text`,`onChange`]),i(v,{size:`small`,text:``,loading:e.mcpBusy===s.id,disabled:!s.id||!s.command,onClick:t=>e.reconnectMcp(s)},{default:u(()=>[n(r(e.$t(`common.settings.localToolsMcpReconnect`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`]),i(v,{size:`small`,text:``,type:`danger`,onClick:t=>e.removeMcp(c)},{default:u(()=>[n(r(e.$t(`common.settings.localToolsRemove`)),1)]),_:1},8,[`onClick`])]),t(`div`,ce,[t(`label`,le,r(e.$t(`common.settings.localToolsMcpName`)),1),i(S,{modelValue:s.id,"onUpdate:modelValue":e=>s.id=e,placeholder:e.$t(`common.settings.localToolsMcpNamePlaceholder`)},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]),t(`label`,ue,r(e.$t(`common.settings.localToolsMcpCommand`)),1),i(S,{modelValue:s.command,"onUpdate:modelValue":e=>s.command=e,placeholder:e.$t(`common.settings.localToolsMcpCommandPlaceholder`)},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]),t(`label`,de,r(e.$t(`common.settings.localToolsMcpArgs`)),1),i(S,{modelValue:s.argsText,"onUpdate:modelValue":e=>s.argsText=e,type:`textarea`,rows:2,placeholder:e.$t(`common.settings.localToolsMcpArgsHint`)},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]),t(`label`,fe,r(e.$t(`common.settings.localToolsMcpEnv`)),1),i(S,{modelValue:s.envText,"onUpdate:modelValue":e=>s.envText=e,type:`textarea`,rows:2,placeholder:e.$t(`common.settings.localToolsMcpEnvHint`)},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),e.mcpErrorFor(s.id)?(p(),o(`p`,pe,r(e.mcpErrorFor(s.id)),1)):a(``,!0)])]))),128))])):(p(),o(`p`,me,r(e.$t(`common.settings.localToolsMcpNoServers`)),1)),t(`p`,he,r(e.$t(`common.settings.localToolsMcpPlatformHint`)),1),t(`div`,ge,[i(v,{size:`small`,type:`primary`,loading:e.savingMcp,onClick:e.saveMcp},{default:u(()=>[n(r(e.$t(`common.settings.localToolsSave`)),1)]),_:1},8,[`loading`,`onClick`]),e.mcpSavedTip?(p(),o(`span`,_e,r(e.$t(`common.settings.localToolsSaved`)),1)):a(``,!0),e.mcpError?(p(),o(`span`,ve,r(e.mcpError),1)):a(``,!0)])]),e.grants!==null&&!e.android?(p(),o(`section`,ye,[t(`div`,be,[t(`h3`,null,r(e.$t(`common.settings.localToolsGrantsTitle`)),1),e.grants.length?(p(),l(v,{key:0,size:`small`,text:``,type:`danger`,onClick:e.revokeAll},{default:u(()=>[n(r(e.$t(`common.settings.localToolsRevokeAll`)),1)]),_:1},8,[`onClick`])):a(``,!0)]),t(`p`,xe,r(e.$t(`common.settings.localToolsGrantsHint`)),1),t(`ul`,Se,[(p(!0),o(s,null,d(e.grants,a=>(p(),o(`li`,{key:a.key,class:`row`},[i(C,{class:`row-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(`span`,Ce,[t(`code`,we,r(a.name),1),t(`span`,Te,r(a.input),1)]),i(v,{size:`small`,type:`danger`,onClick:t=>e.revoke(a.key)},{default:u(()=>[n(r(e.$t(`common.settings.localToolsRevoke`)),1)]),_:1},8,[`onClick`])]))),128)),e.grants.length?a(``,!0):(p(),o(`li`,Ee,r(e.$t(`common.settings.localToolsNoGrants`)),1))])])):a(``,!0),e.builtinTools.length&&!e.android?(p(),o(`section`,De,[t(`div`,Oe,[t(`h3`,null,r(e.$t(`common.settings.localToolsBuiltinTitle`)),1)]),t(`p`,ke,r(e.$t(`common.settings.localToolsBuiltinHint`)),1),t(`ul`,Ae,[(p(!0),o(s,null,d(e.builtinTools,s=>(p(),o(`li`,{key:s.name,class:`row`},[(p(),l(f(e.builtinIcon(s.name)),{class:`row-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),t(`span`,je,[t(`span`,Me,[t(`code`,Ne,r(s.name),1),s.name===`shell.run_command`?(p(),l(_,{key:0,size:`small`,type:`danger`,effect:`plain`},{default:u(()=>[n(r(e.$t(`common.settings.localToolsBuiltinRisky`)),1)]),_:1})):a(``,!0)]),t(`span`,Pe,r(s.description),1)]),i(x,{"model-value":e.toolGrants[s.name]===!0,loading:e.builtinBusy===s.name,disabled:!!e.builtinBusy,onChange:t=>e.onToggleBuiltinTool(s.name,t)},null,8,[`model-value`,`loading`,`disabled`,`onChange`])]))),128))])])):a(``,!0),t(`section`,null,[t(`div`,Fe,[t(`h3`,null,r(e.$t(`common.settings.localToolsComputerUseTitle`)),1),i(x,{modelValue:e.computerUse,"onUpdate:modelValue":m[0]||=t=>e.computerUse=t,loading:e.savingCU,onChange:e.onToggleComputerUse},null,8,[`modelValue`,`loading`,`onChange`])]),t(`p`,Ie,r(e.$t(`common.settings.localToolsComputerUseHint`)),1),e.android&&e.computerUse?(p(),o(`div`,Le,[t(`span`,Re,r(e.$t(`common.settings.localToolsCuA11yLabel`)),1),i(_,{size:`small`,type:e.a11yEnabled?`success`:`danger`,effect:`plain`},{default:u(()=>[n(r(e.a11yEnabled?e.$t(`common.settings.localToolsCuReady`):e.$t(`common.settings.localToolsCuA11yMissing`)),1)]),_:1},8,[`type`]),e.a11yEnabled?a(``,!0):(p(),l(v,{key:0,size:`small`,type:`primary`,onClick:e.openAndroidAccessibility},{default:u(()=>[n(r(e.$t(`common.settings.localToolsOpen`)),1)]),_:1},8,[`onClick`]))])):a(``,!0),e.computerTools.length?(p(),o(s,{key:1},[t(`div`,ze,[t(`h4`,null,r(e.$t(`common.settings.localToolsCuActionsTitle`)),1),i(v,{size:`small`,text:``,type:`primary`,loading:e.preauthorizing,onClick:e.preauthorizeAll},{default:u(()=>[n(r(e.$t(`common.settings.localToolsPreauthorizeAll`)),1)]),_:1},8,[`loading`,`onClick`])]),t(`p`,Be,r(e.$t(`common.settings.localToolsCuActionsHint`)),1),t(`ul`,Ve,[(p(!0),o(s,null,d(e.computerTools,n=>(p(),o(`li`,{key:n.name,class:`row`},[(p(),l(f(e.cuIcon(n.name)),{class:`row-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),t(`span`,He,[t(`span`,Ue,r(e.cuLabel(n.name)),1),t(`span`,We,r(n.description),1)]),i(x,{"model-value":e.computerGrants[n.name]===!0,loading:e.cuBusy===n.name,disabled:!!e.cuBusy||e.preauthorizing,onChange:t=>e.onToggleComputerTool(n.name,t)},null,8,[`model-value`,`loading`,`disabled`,`onChange`])]))),128))])],64)):a(``,!0)]),e.android?(p(),o(`section`,Ge,[t(`div`,Ke,[t(`h3`,null,r(e.$t(`common.settings.localToolsAndroidSkillsTitle`)),1)]),t(`p`,qe,r(e.$t(`common.settings.localToolsAndroidSkillsHint`)),1),t(`ul`,Je,[e.xhsSkill?(p(),o(`li`,Ye,[i(w,{class:`row-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(`span`,Xe,[t(`span`,Ze,r(e.$t(`common.settings.localToolsAndroidSkillsXhsName`)),1),t(`span`,Qe,r(e.$t(`common.settings.localToolsAndroidSkillsXhsDesc`)),1)]),e.xhsSkill.installed?(p(),l(_,{key:0,size:`small`,type:`success`,effect:`plain`},{default:u(()=>[n(r(e.$t(`common.settings.localToolsAndroidSkillsInstalled`)),1)]),_:1})):(p(),l(v,{key:1,size:`small`,type:`primary`,loading:e.xhsInstalling,disabled:!e.canInstallXhs,onClick:e.installXhs},{default:u(()=>[n(r(e.$t(`common.settings.localToolsAndroidSkillsInstall`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`]))])):e.xhsLoading?(p(),o(`li`,$e,r(e.$t(`common.settings.localToolsAndroidSkillsLoading`)),1)):e.xhsError?a(``,!0):(p(),o(`li`,et,r(e.$t(`common.settings.localToolsAndroidSkillsUnavailable`)),1))]),e.xhsSkill&&!e.xhsSkill.installed&&!e.canInstallXhs?(p(),o(`p`,tt,r(e.$t(`common.settings.localToolsAndroidSkillsNeedComputerUse`)),1)):a(``,!0),e.xhsSkill&&e.xhsSkill.installed?(p(),o(`p`,nt,r(e.$t(`common.settings.localToolsAndroidSkillsNextTurn`)),1)):a(``,!0),e.xhsError?(p(),o(`p`,Q,r(e.xhsError),1)):a(``,!0)])):a(``,!0),e.perm?(p(),o(`section`,rt,[t(`div`,it,[t(`h3`,null,r(e.$t(`common.settings.localToolsPermsTitle`)),1)]),t(`p`,at,r(e.$t(`common.settings.localToolsPermsHint`)),1),t(`div`,ot,[t(`span`,st,r(e.$t(`common.settings.localToolsPermFullDisk`)),1),i(_,{size:`small`,type:e.perm.fullDisk?`success`:`info`,effect:`plain`},{default:u(()=>[n(r(e.perm.fullDisk?e.$t(`common.settings.localToolsGranted`):e.$t(`common.settings.localToolsNotGranted`)),1)]),_:1},8,[`type`]),i(v,{size:`small`,type:`primary`,onClick:m[1]||=t=>e.open(`fullDisk`)},{default:u(()=>[n(r(e.$t(`common.settings.localToolsOpen`)),1)]),_:1})]),t(`div`,ct,[t(`span`,lt,r(e.$t(`common.settings.localToolsPermScreen`)),1),i(_,{size:`small`,type:e.perm.screen===`granted`?`success`:`info`,effect:`plain`},{default:u(()=>[n(r(e.perm.screen===`granted`?e.$t(`common.settings.localToolsGranted`):e.$t(`common.settings.localToolsNotGranted`)),1)]),_:1},8,[`type`]),i(v,{size:`small`,type:`primary`,onClick:m[2]||=t=>e.open(`screen`)},{default:u(()=>[n(r(e.$t(`common.settings.localToolsOpen`)),1)]),_:1})]),t(`div`,ut,[t(`span`,dt,r(e.$t(`common.settings.localToolsPermAccessibility`)),1),i(_,{size:`small`,type:e.perm.accessibility?`success`:`info`,effect:`plain`},{default:u(()=>[n(r(e.perm.accessibility?e.$t(`common.settings.localToolsGranted`):e.$t(`common.settings.localToolsNotGranted`)),1)]),_:1},8,[`type`]),i(v,{size:`small`,type:`primary`,onClick:m[3]||=t=>e.open(`accessibility`)},{default:u(()=>[n(r(e.$t(`common.settings.localToolsOpen`)),1)]),_:1})])])):a(``,!0)],64)):(p(),o(`p`,L,r(e.$t(`common.settings.localToolsDesktopOnly`)),1))])}var $=S(P,[[`render`,ft],[`__scopeId`,`data-v-c7cc3eef`]]);export{F as n,$ as t};
@@ -1,2 +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,S as c,T as l,at as u,j as d,mt as f,rt as p,tt as m,z as h}from"./vendor-chart-Dw-P17PN.js";import{n as g,r as _,t as ee}from"./select-DLd87TAB.js";import{t as te}from"./time-picker-w87Ozojj.js";import{n as ne,t as v}from"./form-BNJ9LdPs.js";import{t as y}from"./tooltip-B5wtxrSQ.js";import{t as b}from"./card-D-4S-l7a.js";import{r as x,t as S}from"./radio-DgDgyT2l.js";import{t as C}from"./drawer-BvCbCWSZ.js";import{t as w}from"./empty-B1wenOj5.js";import{t as T}from"./input-number-e_tKMmeS.js";import{t as E}from"./pagination-D4-j9bk3.js";import{t as D}from"./skeleton-B3LIGUiE.js";import{t as O}from"./switch-BeR6FXQG.js";import{t as k}from"./brain-COWNzKwc.js";import{t as A}from"./chevron-right-BQrjHLUf.js";import{t as j}from"./clock-DdDobRU-.js";import{t as M}from"./pencil-C4h29ypb.js";import{t as N}from"./play-DLgB-GBN.js";import{t as P}from"./plus-DPVOt-4h.js";import{t as F}from"./refresh-cw-D5ShQ0yc.js";import{t as I}from"./trash-2-BMAfh8QP.js";import{t as L}from"./vendor-axios-Ck2ffRoh.js";import{$i as R,Fi as z,Ji as B}from"./constants-lvoVrMEx.js";import{E as V,Mi as H,Pi as U,Ti as W,Ui as G,bi as K,lr as re,tn as ie,yi as q}from"./index-0JujvRxi.js";function J(e){let t=ie();return{Authorization:`Bearer ${e}`,"Content-Type":`application/json`,...t?{"x-site-origin":t}:{}}}var Y=`${R}/aichat2/scheduled-tasks`;function ae(e){let t=e?.response?.data;return t?.error===`skill_not_active`?t.detail??{kind:`skill`,slug:``,reason:`not_active`}:null}var X=new class{async listTasks(e){let{data:t}=await L.post(Y,{action:`retrieve_batch`},{headers:J(e)});return t?.items??[]}async createTask(e,t,n=!1){let{data:r}=await L.post(Y,{action:`create`,...t,...n?{force:!0}:{}},{headers:J(e)});return r}async updateTask(e,t,n,r=!1){let{data:i}=await L.post(Y,{action:`update`,id:t,...n,...r?{force:!0}:{}},{headers:J(e)});return i}async deleteTask(e,t){await L.post(Y,{action:`delete`,id:t},{headers:J(e)})}async triggerTask(e,t){let{data:n}=await L.post(Y,{action:`trigger`,id:t},{headers:J(e)});return n??{}}async listRuns(e,t){let{data:n}=await L.post(Y,{action:`retrieve_runs`,id:t},{headers:J(e)});return n?.items??[]}async listAuthorizableSkills(e){let{data:t}=await L.post(Y,{action:`retrieve_authorizable_skills`},{headers:J(e)});return t?.items??[]}async listAuthorizableCapabilities(e){let{data:t}=await L.post(Y,{action:`retrieve_authorizable_skills`},{headers:J(e)});return{skills:t?.skills??t?.items??[],mcp_servers:t?.mcp_servers??[]}}},Z=Intl.DateTimeFormat().resolvedOptions().timeZone||`Asia/Shanghai`,Q=50,oe=h({name:`ScheduledTasks`,components:{AiIcon:k,ExpandRightIcon:A,PlayIcon:N,TimeIcon:j,AddIcon:P,DeleteIcon:I,EditIcon:M,RefreshIcon:F,ElButton:U,ElCard:b,ElSkeleton:D,ElEmpty:w,ElSwitch:O,ElTag:H,ElTooltip:y,ElDrawer:C,ElDialog:W,ElForm:v,ElFormItem:ne,ElInput:G,ElSelect:_,ElOption:ee,ElOptionGroup:g,ElRadioGroup:x,ElRadio:S,ElTimePicker:te,ElInputNumber:T,Pagination:E},data(){return{tasks:[],runs:[],loading:!1,runsLoading:!1,skillsLoading:!1,saving:!1,showCreateDialog:!1,showRunHistory:!1,selectedTask:null,editingTask:null,authorizableSkills:[],authorizableMcpServers:[],triggeringId:``,weekdays:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],page:1,pageSize:6,runPage:1,runPageSize:8,form:this.emptyForm(),WIRE_CONTRACT_DIGEST:re}},computed:{token(){return this.$store.state.chat?.credential?.token},modelGroups(){let e=this.$store.state.site?.features??{};return z.filter(t=>e[t.name]?.enabled!==!1).map(e=>({...e,models:e.models.filter(e=>e.enabled!==!1)})).filter(e=>e.models.length>0)},pagedTasks(){let e=(this.page-1)*this.pageSize;return this.tasks.slice(e,e+this.pageSize)},pagedRuns(){let e=(this.runPage-1)*this.runPageSize;return this.runs.slice(e,e+this.runPageSize)},intervalMax(){return this.form.intervalUnit===`minute`?1440:this.form.intervalUnit===`hour`?720:365},schedulePreview(){try{return this.humanizeSchedule(this.buildSchedule())}catch{return``}},selectedBrowserConnections(){let e=new Set(this.form.authorizedSkills);return this.authorizableSkills.filter(t=>e.has(t.slug)).flatMap(e=>e.browser_connections??[])},selectedBrowserSkills(){let e=new Set(this.form.authorizedSkills);return this.authorizableSkills.filter(t=>e.has(t.slug)&&t.browser_connections!==void 0)},selectedBrowserConnection(){return this.selectedBrowserConnections.find(e=>e.connection_id===this.form.browserConnectionId)}},async mounted(){await this.loadTasks()},methods:{emptyForm(){return{name:``,question:``,model:B,scheduleType:`daily`,intervalValue:4,intervalUnit:`hour`,hourlyMinute:0,dailyTime:`09:00`,weekday:1,cronExpr:`0 9 * * *`,authorizedSkills:[],authorizedMcpServers:[],browserConnectionId:``,authorizationExpiresAt:Math.floor(Date.now()/1e3)+720*60*60,maxTurns:Q}},deriveName(e){let t=(e||``).trim().split(`
2
- `)[0].trim();return t.length>40?`${t.slice(0,40)}…`:t||`Scheduled Task`},async loadTasks(){if(this.token){this.loading=!0;try{this.tasks=await X.listTasks(this.token);let e=Math.max(1,Math.ceil(this.tasks.length/this.pageSize));this.page>e&&(this.page=e)}catch{K.error(this.$t(`chat.scheduledTasks.loadError`))}finally{this.loading=!1}}},async selectTask(e){this.selectedTask=e,this.showRunHistory=!0,this.runPage=1,this.runsLoading=!0;try{this.runs=await X.listRuns(this.token,e.id)}finally{this.runsLoading=!1}},onPageChange(e){this.page=e},onRunPageChange(e){this.runPage=e},openCreate(){this.saving||(this.editingTask=null,this.form=this.emptyForm(),this.showCreateDialog=!0)},closeTaskDialog(){this.saving||(this.showCreateDialog=!1)},openEdit(e){this.editingTask=e;let t=e.schedule,n=`cron`,r=4,i=`hour`,a=0,o=`09:00`,s=`0 9 * * *`,c=1;if(t.type===`cron`){s=t.cron;let[e,r,i,l,u]=t.cron.split(/\s+/),d=e=>/^\d+$/.test(e);i===`*`&&l===`*`&&u===`*`&&r===`*`&&d(e)?(n=`hourly`,a=Number(e)):i===`*`&&l===`*`&&u===`*`&&d(r)&&d(e)?(n=`daily`,o=`${r.padStart(2,`0`)}:${e.padStart(2,`0`)}`):i===`*`&&l===`*`&&d(u)&&d(r)&&d(e)&&(n=`weekly`,c=Number(u),o=`${r.padStart(2,`0`)}:${e.padStart(2,`0`)}`)}else if(t.type===`interval`){n=`interval`;let e=t.interval_seconds;e%86400==0?(i=`day`,r=e/86400):e%3600==0?(i=`hour`,r=e/3600):(i=`minute`,r=Math.max(1,Math.round(e/60)))}this.form={name:e.name,question:e.template.question,model:e.template.model,scheduleType:n,intervalValue:r,intervalUnit:i,hourlyMinute:a,dailyTime:o,weekday:c,cronExpr:s,authorizedSkills:e.unattended_policy?.mode===`allow_selected_skills`&&e.unattended_policy.allowed_skills||[],authorizedMcpServers:e.unattended_policy?.mode===`allow_selected_skills`&&e.unattended_policy.allowed_mcp_servers||[],browserConnectionId:e.unattended_policy?.browser_connections?.[0]?.connection_id??``,authorizationExpiresAt:e.unattended_policy?.expires_at??Math.floor(Date.now()/1e3)+720*60*60,maxTurns:e.template.max_turns??Q},this.showCreateDialog=!0,this.loadAuthorizableSkills()},buildSchedule(){let{scheduleType:e,intervalValue:t,intervalUnit:n,hourlyMinute:r,dailyTime:i,weekday:a,cronExpr:o}=this.form;if(e===`interval`)return{type:`interval`,interval_seconds:Math.max(60,Math.round(t)*(n===`day`?86400:n===`hour`?3600:60)),tz:Z};if(e===`hourly`)return{type:`cron`,cron:`${Math.min(59,Math.max(0,Math.round(r)))} * * * *`,tz:Z};if(e===`daily`){let[e,t]=i.split(`:`);return{type:`cron`,cron:`${t} ${e} * * *`,tz:Z}}if(e===`weekly`){let[e,t]=i.split(`:`);return{type:`cron`,cron:`${t} ${e} * * ${a}`,tz:Z}}return{type:`cron`,cron:o,tz:Z}},async saveTask(){if(!this.form.question.trim()){K.warning(this.$t(`chat.scheduledTasks.form.required`));return}if(this.form.authorizedSkills.length>0||this.form.authorizedMcpServers.length>0)try{await q.confirm(this.authorizationConfirmText(),this.$t(`chat.scheduledTasks.form.skillsConfirmTitle`),{type:`warning`,confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`)})}catch{return}let e=[...this.form.authorizedSkills],t=[...this.form.authorizedMcpServers],n;if(this.selectedBrowserSkills.length){let e=this.selectedBrowserConnection;if(!e||!e.online||!e.compatible||e.wire_contract_digest!==`sha256:1a9e10cdfd839f79f0cb51db31cd07b68eb86126cc993527502f7a5a3ad9ab11`){K.error(this.$t(`chat.scheduledTasks.form.browserBindingInvalid`));return}n=[{connection_id:e.connection_id,revision:e.revision,device_id:e.device_id,wire_contract_digest:e.wire_contract_digest,policy_digest:e.policy_digest}]}let r={name:this.form.name.trim()||this.deriveName(this.form.question),schedule:this.buildSchedule(),template:{model:this.form.model,question:this.form.question,skills:e,mcp_servers:t,max_turns:this.form.maxTurns},unattended_policy:e.length||t.length?{mode:`allow_selected_skills`,allowed_skills:e,allowed_mcp_servers:t,browser_connections:n,expires_at:this.form.authorizationExpiresAt}:{mode:`deny_all`,allowed_skills:[],allowed_mcp_servers:[]}};await this.submitTask(r,!1)},async submitTask(e,t){this.saving=!0;let n=null;try{if(this.editingTask){let n=this.editingTask.id,r=await X.updateTask(this.token,n,e,t),i=this.tasks.findIndex(e=>e.id===n);i!==-1&&(this.tasks[i]=r)}else{let n=await X.createTask(this.token,e,t);this.tasks=[n,...this.tasks],this.page=1}K.success(this.$t(`chat.scheduledTasks.create`)+` OK`),this.showCreateDialog=!1,this.editingTask=null,this.form=this.emptyForm()}catch(e){n=t?null:ae(e),n||K.error(this.$t(`chat.scheduledTasks.loadError`))}finally{this.saving=!1}if(n){if(this.selectedBrowserSkills.length)return;await this.confirmForceSkill(n)&&await this.submitTask(e,!0)}},async confirmForceSkill(e){let t=this.capabilityLabel(e.slug);try{return await q.confirm(this.$t(`chat.scheduledTasks.form.skillNotActiveMessage`,{name:t}),this.$t(`chat.scheduledTasks.form.skillNotActiveTitle`),{type:`warning`,confirmButtonText:this.$t(`chat.scheduledTasks.form.skillNotActiveForce`),cancelButtonText:this.$t(`common.button.cancel`)}),!0}catch{return!1}},capabilityLabel(e){let t=this.authorizableSkills.find(t=>t.slug===e);if(t)return t.name||t.slug;let n=this.authorizableMcpServers.find(t=>t.slug===e);return n?n.name||n.slug:e},async loadAuthorizableSkills(e=!1){if(!(!this.token||this.skillsLoading||!e&&(this.authorizableSkills.length||this.authorizableMcpServers.length))){this.skillsLoading=!0;try{let e=await X.listAuthorizableCapabilities(this.token);this.authorizableSkills=e.skills,this.authorizableMcpServers=e.mcp_servers}catch{K.error(this.$t(`chat.scheduledTasks.loadError`))}finally{this.skillsLoading=!1}}},onSkillSelectVisible(e){e&&this.loadAuthorizableSkills(!0)},skillLabel(e){return e.name||e.slug},mcpServerLabel(e){return e.name||e.slug},authorizationConfirmText(){let e=new Set(this.form.authorizedSkills),t=new Set(this.form.authorizedMcpServers),n=this.authorizableSkills.filter(t=>e.has(t.slug)).map(e=>this.skillLabel(e)),r=this.authorizableMcpServers.filter(e=>t.has(e.slug)).map(e=>this.mcpServerLabel(e));return this.$t(`chat.scheduledTasks.form.skillsConfirm`,{count:e.size+t.size,skills:[...n,...r].length?[...n,...r].join(`, `):[...Array.from(e),...Array.from(t)].join(`, `)})},async toggleState(e,t){let n=this.tasks.findIndex(t=>t.id===e.id),r=t?`enabled`:`disabled`;n!==-1&&(this.tasks[n]={...e,state:r});try{let t=await X.updateTask(this.token,e.id,{state:r});n!==-1&&(this.tasks[n]=t)}catch{n!==-1&&(this.tasks[n]={...e,state:e.state}),K.error(this.$t(`chat.scheduledTasks.loadError`))}},async triggerNow(e){if(!this.triggeringId){this.triggeringId=e.id;try{await X.triggerTask(this.token,e.id),K.success(this.$t(`chat.scheduledTasks.triggerSuccess`)),this.showRunHistory&&this.selectedTask?.id===e.id&&(this.runs=await X.listRuns(this.token,e.id),this.runPage=1)}catch{K.error(this.$t(`chat.scheduledTasks.triggerError`))}finally{this.triggeringId=``}}},async confirmDelete(e){await q.confirm(this.$t(`chat.scheduledTasks.deleteConfirm`,{name:e.name}),{type:`warning`});try{await X.deleteTask(this.token,e.id),this.tasks=this.tasks.filter(t=>t.id!==e.id);let t=Math.max(1,Math.ceil(this.tasks.length/this.pageSize));this.page>t&&(this.page=t)}catch{K.error(this.$t(`chat.scheduledTasks.loadError`))}},openRun(e){if(!e.conversation_id)return;let t=this.modelGroups.map(e=>e.name),n=e.conversation_model_group,r=this.$store.state.chat?.modelGroup?.name||`chatgpt`,i=n&&(t.length===0||t.includes(n))?n:r;this.$router.push(`/${i}/conversations/${e.conversation_id}`)},stateTagType(e){return e===`enabled`?`success`:e===`error`?`danger`:`info`},runTagType(e){return e===`success`?`success`:e===`failed`?`danger`:`warning`},runErrorText(e){if(e.error_message)return e.error_message;let t=e.error_code;return t?this.errorCodeText(t):``},errorCodeText(e){let t=`chat.scheduledTasks.run.reason.${e}`;return this.$te(t)?this.$t(t):e.replace(/_/g,` `)},humanizeSchedule(e){let t=(e,t)=>this.$t(`chat.scheduledTasks.humanize.${e}`,t??{});if(e.type===`interval`){let n=e.interval_seconds;return n%86400==0?t(`everyNDays`,{n:n/86400}):n%3600==0?t(`everyNHours`,{n:n/3600}):t(`everyNMinutes`,{n:Math.round(n/60)})}if(e.type===`cron`){let[n,r,i,a,o]=e.cron.split(/\s+/),s=e=>/^\d+$/.test(e);if(i===`*`&&a===`*`&&o===`*`&&r===`*`&&s(n))return t(`hourlyAtMinute`,{n:Number(n)});let c=s(r)&&s(n)?`${r.padStart(2,`0`)}:${n.padStart(2,`0`)}`:``;return c&&i===`*`&&a===`*`&&o===`*`?t(`dailyAt`,{time:c}):c&&i===`*`&&a===`*`&&s(o)?t(`weeklyAt`,{weekday:this.weekdays[Number(o)]??o,time:c}):t(`cronRaw`,{cron:e.cron})}return t(`once`,{time:new Date(e.at*1e3).toLocaleString()})},scheduleLabel(e){return this.humanizeSchedule(e)},formatTime(e){return new Date(e*1e3).toLocaleString()}}}),se={class:`scheduled-tasks`},ce={class:`inner`},le={class:`header`},ue={class:`title`},de={class:`task-list`},fe={class:`task-top`},pe={class:`task-name`},me={class:`task-meta`},he={class:`meta-chip`},ge={class:`meta-chip`},_e={class:`task-prompt`},ve={key:0,class:`task-last-output`},ye={class:`task-footer`},be={class:`run-count`},xe={key:0,class:`error-hint`},Se={class:`open-hint`},Ce={key:0,class:`pager`},we={key:0,class:`run-context`},Te={class:`run-context-meta`},Ee={class:`run-context-prompt`},De={key:3,class:`run-list`},Oe=[`tabindex`,`role`,`onClick`,`onKeydown`],ke={class:`run-body`},Ae={class:`run-line`},je={class:`run-title`},Me={key:0,class:`run-preview`},Ne={class:`run-sub`},Pe={class:`run-time`},Fe=[`title`],Ie={class:`run-action`},Le={key:1,class:`run-noconv`},Re={key:4,class:`pager run-pager`},ze={class:`hint`},Be={key:0,class:`schedule-preview`},Ve={class:`hint`},He={class:`hint`},Ue={class:`jitter-hint`},We={class:`hint`},$={class:`skill-option`},Ge={class:`skill-option-name`},Ke={key:0,class:`skill-option-missing`},qe={class:`hint`},Je={key:0,class:`browser-binding-summary`},Ye={class:`hint`},Xe={class:`hint`};function Ze(h,g,_,ee,te,ne){let v=u(`add-icon`),y=u(`el-button`),b=u(`el-skeleton`),x=u(`el-empty`),S=u(`el-switch`),C=u(`play-icon`),w=u(`el-tooltip`),T=u(`edit-icon`),E=u(`delete-icon`),D=u(`el-tag`),O=u(`time-icon`),k=u(`ai-icon`),A=u(`refresh-icon`),j=u(`expand-right-icon`),M=u(`el-card`),N=u(`pagination`),P=u(`el-drawer`),F=u(`el-input`),I=u(`el-form-item`),L=u(`el-option`),R=u(`el-option-group`),z=u(`el-select`),B=u(`el-radio`),V=u(`el-radio-group`),H=u(`el-input-number`),U=u(`el-time-picker`),W=u(`el-form`),G=u(`el-dialog`);return m(),s(`div`,se,[e(`div`,ce,[e(`div`,le,[e(`h2`,ue,i(h.$t(`chat.scheduledTasks.title`)),1),a(y,{type:`primary`,round:``,disabled:h.saving,onClick:h.openCreate},{default:f(()=>[a(v,{size:16,class:`icon`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(h.$t(`chat.scheduledTasks.create`)),1)]),_:1},8,[`disabled`,`onClick`])]),h.loading?(m(),d(b,{key:0,rows:4,animated:``,class:`loading-block`})):h.tasks.length?(m(),s(l,{key:2},[e(`div`,de,[(m(!0),s(l,null,p(h.pagedTasks,n=>(m(),d(M,{key:n.id,class:`task-card`,shadow:`hover`,onClick:e=>h.selectTask(n)},{default:f(()=>[e(`div`,fe,[e(`div`,pe,i(n.name),1),e(`div`,{class:`task-actions`,onClick:g[0]||=t(()=>{},[`stop`])},[a(S,{"model-value":n.state===`enabled`,onChange:e=>h.toggleState(n,e===!0)},null,8,[`model-value`,`onChange`]),a(w,{content:h.$t(`chat.scheduledTasks.triggerNow`),placement:`top`},{default:f(()=>[a(y,{text:``,class:`icon-action`,loading:h.triggeringId===n.id,"aria-label":h.$t(`chat.scheduledTasks.triggerNow`),title:h.$t(`chat.scheduledTasks.triggerNow`),onClick:e=>h.triggerNow(n)},{default:f(()=>[h.triggeringId===n.id?o(``,!0):(m(),d(C,{key:0,size:`1em`,"aria-hidden":`true`,focusable:`false`}))]),_:2},1032,[`loading`,`aria-label`,`title`,`onClick`])]),_:2},1032,[`content`]),a(w,{content:h.$t(`common.button.edit`),placement:`top`},{default:f(()=>[a(y,{text:``,class:`icon-action`,"aria-label":h.$t(`common.button.edit`),onClick:e=>h.openEdit(n)},{default:f(()=>[a(T,{size:16,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`onClick`])]),_:2},1032,[`content`]),a(w,{content:h.$t(`common.button.delete`),placement:`top`},{default:f(()=>[a(y,{text:``,type:`danger`,class:`icon-action`,"aria-label":h.$t(`common.button.delete`),onClick:e=>h.confirmDelete(n)},{default:f(()=>[a(E,{size:16,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`onClick`])]),_:2},1032,[`content`])])]),e(`div`,me,[a(D,{size:`small`,type:h.stateTagType(n.state),effect:`dark`,round:``},{default:f(()=>[r(i(h.$t(`chat.scheduledTasks.state.${n.state}`)),1)]),_:2},1032,[`type`]),e(`span`,he,[a(O,{class:`meta-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(h.scheduleLabel(n.schedule)),1)]),e(`span`,ge,[a(k,{class:`meta-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.template.model),1)])]),e(`div`,_e,i(n.template.question),1),n.last_output_snippet?(m(),s(`div`,ve,i(n.last_output_snippet),1)):o(``,!0),e(`div`,ye,[e(`span`,be,[a(A,{size:16,class:`footer-icon`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(h.$t(`chat.scheduledTasks.runCount`,{count:n.run_count})),1)]),n.last_error?(m(),s(`span`,xe,i(h.errorCodeText(n.last_error)),1)):o(``,!0),e(`span`,Se,[r(i(h.$t(`chat.scheduledTasks.viewRuns`))+` `,1),a(j,{size:`1em`,"aria-hidden":`true`,focusable:`false`})])])]),_:2},1032,[`onClick`]))),128))]),h.tasks.length>h.pageSize?(m(),s(`div`,Ce,[a(N,{"current-page":h.page,"page-size":h.pageSize,total:h.tasks.length,onChange:h.onPageChange},null,8,[`current-page`,`page-size`,`total`,`onChange`])])):o(``,!0)],64)):(m(),d(x,{key:1,description:h.$t(`chat.scheduledTasks.empty`),class:`empty`},null,8,[`description`]))]),a(P,{modelValue:h.showRunHistory,"onUpdate:modelValue":g[1]||=e=>h.showRunHistory=e,title:h.selectedTask?.name,direction:`rtl`,size:`min(560px, 92vw)`,class:`run-history-drawer`},{default:f(()=>[h.selectedTask?(m(),s(`div`,we,[e(`div`,Te,[e(`span`,null,i(h.scheduleLabel(h.selectedTask.schedule)),1),e(`span`,null,i(h.selectedTask.template.model),1),e(`span`,null,i(h.$t(`chat.scheduledTasks.runCount`,{count:h.selectedTask.run_count})),1)]),e(`div`,Ee,i(h.selectedTask.template.question),1)])):o(``,!0),h.runsLoading?(m(),d(b,{key:1,rows:3,animated:``})):h.runs.length?(m(),s(`div`,De,[(m(!0),s(l,null,p(h.pagedRuns,l=>(m(),s(`div`,{key:l.id,class:n([`run-item`,{clickable:!!l.conversation_id}]),tabindex:l.conversation_id?0:-1,role:l.conversation_id?`button`:void 0,onClick:e=>h.openRun(l),onKeydown:[c(e=>h.openRun(l),[`enter`]),c(t(e=>h.openRun(l),[`prevent`]),[`space`])]},[e(`div`,ke,[e(`div`,Ae,[e(`span`,je,i(l.conversation_title||h.formatTime(l.scheduled_at)),1),a(D,{size:`small`,type:h.runTagType(l.status),effect:`dark`,round:``,class:`run-tag`},{default:f(()=>[r(i(h.$t(`chat.scheduledTasks.run.${l.status}`)),1)]),_:2},1032,[`type`])]),l.conversation_preview?(m(),s(`div`,Me,i(l.conversation_preview),1)):o(``,!0),e(`div`,Ne,[e(`span`,Pe,i(h.formatTime(l.scheduled_at)),1),l.error_code||l.error_message?(m(),s(`span`,{key:0,class:`run-error`,title:h.runErrorText(l)},i(h.runErrorText(l)),9,Fe)):o(``,!0)])]),e(`div`,Ie,[l.conversation_id?(m(),d(j,{key:0,class:`run-arrow`,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(m(),s(`span`,Le,i(h.$t(`chat.scheduledTasks.noConversation`)),1))])],42,Oe))),128))])):(m(),d(x,{key:2,description:h.$t(`chat.scheduledTasks.noRuns`)},null,8,[`description`])),!h.runsLoading&&h.runs.length>h.runPageSize?(m(),s(`div`,Re,[a(N,{"current-page":h.runPage,"page-size":h.runPageSize,total:h.runs.length,onChange:h.onRunPageChange},null,8,[`current-page`,`page-size`,`total`,`onChange`])])):o(``,!0)]),_:1},8,[`modelValue`,`title`]),a(G,{modelValue:h.showCreateDialog,"onUpdate:modelValue":g[17]||=e=>h.showCreateDialog=e,title:h.editingTask?h.$t(`chat.scheduledTasks.edit`):h.$t(`chat.scheduledTasks.create`),width:`540px`,"close-on-click-modal":!1,"close-on-press-escape":!h.saving,"show-close":!h.saving,class:`scheduled-task-dialog`},{footer:f(()=>[a(y,{disabled:h.saving,onClick:h.closeTaskDialog},{default:f(()=>[r(i(h.$t(`common.button.cancel`)),1)]),_:1},8,[`disabled`,`onClick`]),a(y,{type:`primary`,loading:h.saving,onClick:h.saveTask},{default:f(()=>[r(i(h.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`,`onClick`])]),default:f(()=>[a(W,{model:h.form,"label-width":`92px`},{default:f(()=>[a(I,{label:h.$t(`chat.scheduledTasks.form.name`)},{default:f(()=>[a(F,{modelValue:h.form.name,"onUpdate:modelValue":g[2]||=e=>h.form.name=e,placeholder:h.$t(`chat.scheduledTasks.form.namePlaceholder`),maxlength:`80`},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),a(I,{label:h.$t(`chat.scheduledTasks.form.prompt`),required:``},{default:f(()=>[a(F,{modelValue:h.form.question,"onUpdate:modelValue":g[3]||=e=>h.form.question=e,type:`textarea`,rows:6,placeholder:h.$t(`chat.scheduledTasks.form.promptPlaceholder`)},null,8,[`modelValue`,`placeholder`]),e(`div`,ze,i(h.$t(`chat.scheduledTasks.form.promptHint`)),1)]),_:1},8,[`label`]),a(I,{label:h.$t(`chat.scheduledTasks.form.model`)},{default:f(()=>[a(z,{modelValue:h.form.model,"onUpdate:modelValue":g[4]||=e=>h.form.model=e,style:{width:`100%`},filterable:``},{default:f(()=>[(m(!0),s(l,null,p(h.modelGroups,e=>(m(),d(R,{key:e.name,label:e.getDisplayName()},{default:f(()=>[(m(!0),s(l,null,p(e.models,e=>(m(),d(L,{key:e.name,label:e.getDisplayName(),value:e.name},null,8,[`label`,`value`]))),128))]),_:2},1032,[`label`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),a(I,{label:h.$t(`chat.scheduledTasks.form.schedule`)},{default:f(()=>[a(V,{modelValue:h.form.scheduleType,"onUpdate:modelValue":g[5]||=e=>h.form.scheduleType=e},{default:f(()=>[a(B,{value:`interval`},{default:f(()=>[r(i(h.$t(`chat.scheduledTasks.scheduleType.interval`)),1)]),_:1}),a(B,{value:`hourly`},{default:f(()=>[r(i(h.$t(`chat.scheduledTasks.scheduleType.hourly`)),1)]),_:1}),a(B,{value:`daily`},{default:f(()=>[r(i(h.$t(`chat.scheduledTasks.scheduleType.daily`)),1)]),_:1}),a(B,{value:`weekly`},{default:f(()=>[r(i(h.$t(`chat.scheduledTasks.scheduleType.weekly`)),1)]),_:1}),a(B,{value:`cron`},{default:f(()=>[r(i(h.$t(`chat.scheduledTasks.scheduleType.cron`)),1)]),_:1})]),_:1},8,[`modelValue`]),h.schedulePreview?(m(),s(`div`,Be,[a(O,{class:`preview-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(h.$t(`chat.scheduledTasks.form.schedulePreview`,{text:h.schedulePreview})),1)])):o(``,!0)]),_:1},8,[`label`]),h.form.scheduleType===`interval`?(m(),d(I,{key:0,label:h.$t(`chat.scheduledTasks.scheduleType.interval`)},{default:f(()=>[a(H,{modelValue:h.form.intervalValue,"onUpdate:modelValue":g[6]||=e=>h.form.intervalValue=e,min:1,max:h.intervalMax,step:1,"controls-position":`right`},null,8,[`modelValue`,`max`]),a(z,{modelValue:h.form.intervalUnit,"onUpdate:modelValue":g[7]||=e=>h.form.intervalUnit=e,style:{width:`110px`,"margin-left":`8px`}},{default:f(()=>[a(L,{label:h.$t(`chat.scheduledTasks.form.intervalUnit.minute`),value:`minute`},null,8,[`label`]),a(L,{label:h.$t(`chat.scheduledTasks.form.intervalUnit.hour`),value:`hour`},null,8,[`label`]),a(L,{label:h.$t(`chat.scheduledTasks.form.intervalUnit.day`),value:`day`},null,8,[`label`])]),_:1},8,[`modelValue`]),e(`div`,Ve,i(h.$t(`chat.scheduledTasks.form.intervalHint`)),1)]),_:1},8,[`label`])):o(``,!0),h.form.scheduleType===`hourly`?(m(),d(I,{key:1,label:h.$t(`chat.scheduledTasks.form.hourlyMinute`)},{default:f(()=>[a(H,{modelValue:h.form.hourlyMinute,"onUpdate:modelValue":g[8]||=e=>h.form.hourlyMinute=e,min:0,max:59,step:1,"controls-position":`right`},null,8,[`modelValue`]),e(`div`,He,i(h.$t(`chat.scheduledTasks.form.hourlyMinuteHint`)),1)]),_:1},8,[`label`])):o(``,!0),h.form.scheduleType===`daily`?(m(),d(I,{key:2,label:h.$t(`chat.scheduledTasks.form.time`)},{default:f(()=>[a(U,{modelValue:h.form.dailyTime,"onUpdate:modelValue":g[9]||=e=>h.form.dailyTime=e,format:`HH:mm`,"value-format":`HH:mm`},null,8,[`modelValue`]),e(`span`,Ue,i(h.$t(`chat.scheduledTasks.jitterHint`)),1)]),_:1},8,[`label`])):o(``,!0),h.form.scheduleType===`weekly`?(m(),d(I,{key:3,label:h.$t(`chat.scheduledTasks.form.weekday`)},{default:f(()=>[a(z,{modelValue:h.form.weekday,"onUpdate:modelValue":g[10]||=e=>h.form.weekday=e,style:{width:`120px`}},{default:f(()=>[(m(!0),s(l,null,p(h.weekdays,(e,t)=>(m(),d(L,{key:t,label:e,value:t},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`]),a(U,{modelValue:h.form.dailyTime,"onUpdate:modelValue":g[11]||=e=>h.form.dailyTime=e,format:`HH:mm`,"value-format":`HH:mm`,style:{"margin-left":`8px`}},null,8,[`modelValue`])]),_:1},8,[`label`])):o(``,!0),h.form.scheduleType===`cron`?(m(),d(I,{key:4,label:h.$t(`chat.scheduledTasks.form.cron`)},{default:f(()=>[a(F,{modelValue:h.form.cronExpr,"onUpdate:modelValue":g[12]||=e=>h.form.cronExpr=e,placeholder:`0 9 * * *`},null,8,[`modelValue`]),e(`div`,We,i(h.$t(`chat.scheduledTasks.form.cronHint`)),1)]),_:1},8,[`label`])):o(``,!0),a(I,{label:h.$t(`chat.scheduledTasks.form.skills`)},{default:f(()=>[a(z,{modelValue:h.form.authorizedSkills,"onUpdate:modelValue":g[13]||=e=>h.form.authorizedSkills=e,style:{width:`100%`},multiple:``,filterable:``,"collapse-tags":``,"collapse-tags-tooltip":``,loading:h.skillsLoading,placeholder:h.$t(`chat.scheduledTasks.form.skillsPlaceholder`),onVisibleChange:h.onSkillSelectVisible},{default:f(()=>[(m(!0),s(l,null,p(h.authorizableSkills,t=>(m(),d(L,{key:t.slug,label:h.skillLabel(t),value:t.slug,disabled:!t.connected},{default:f(()=>[e(`div`,$,[e(`span`,Ge,i(h.skillLabel(t)),1),t.connected?o(``,!0):(m(),s(`span`,Ke,i(h.$t(`chat.scheduledTasks.form.skillMissing`)),1))])]),_:2},1032,[`label`,`value`,`disabled`]))),128))]),_:1},8,[`modelValue`,`loading`,`placeholder`,`onVisibleChange`]),e(`div`,qe,i(h.$t(`chat.scheduledTasks.form.skillsHint`)),1)]),_:1},8,[`label`]),h.selectedBrowserSkills.length?(m(),d(I,{key:5,label:h.$t(`chat.scheduledTasks.form.browserConnection`),required:``},{default:f(()=>[a(z,{modelValue:h.form.browserConnectionId,"onUpdate:modelValue":g[14]||=e=>h.form.browserConnectionId=e,style:{width:`100%`}},{default:f(()=>[(m(!0),s(l,null,p(h.selectedBrowserConnections,e=>(m(),d(L,{key:e.connection_id,label:`${e.name} · ${e.device_name}`,value:e.connection_id,disabled:!e.online||!e.compatible||e.wire_contract_digest!==h.WIRE_CONTRACT_DIGEST},null,8,[`label`,`value`,`disabled`]))),128))]),_:1},8,[`modelValue`]),h.selectedBrowserConnection?(m(),s(`div`,Je,[e(`div`,null,i(h.selectedBrowserConnection.allowed_origins.join(`, `)),1),e(`div`,null,i(h.$t(`chat.scheduledTasks.form.browserEffects`,{effects:h.selectedBrowserConnection.side_effects.join(`, `)})),1),e(`div`,null,i(h.$t(`chat.scheduledTasks.form.authorizationExpires`,{time:h.formatTime(h.form.authorizationExpiresAt)})),1)])):o(``,!0)]),_:1},8,[`label`])):o(``,!0),a(I,{label:h.$t(`chat.scheduledTasks.form.mcpServers`)},{default:f(()=>[a(z,{modelValue:h.form.authorizedMcpServers,"onUpdate:modelValue":g[15]||=e=>h.form.authorizedMcpServers=e,style:{width:`100%`},multiple:``,filterable:``,"collapse-tags":``,"collapse-tags-tooltip":``,loading:h.skillsLoading,placeholder:h.$t(`chat.scheduledTasks.form.mcpServersPlaceholder`),onVisibleChange:h.onSkillSelectVisible},{default:f(()=>[(m(!0),s(l,null,p(h.authorizableMcpServers,e=>(m(),d(L,{key:e.slug,label:h.mcpServerLabel(e),value:e.slug},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`loading`,`placeholder`,`onVisibleChange`]),e(`div`,Ye,i(h.$t(`chat.scheduledTasks.form.mcpServersHint`)),1)]),_:1},8,[`label`]),a(I,{label:h.$t(`chat.scheduledTasks.form.maxTurns`)},{default:f(()=>[a(H,{modelValue:h.form.maxTurns,"onUpdate:modelValue":g[16]||=e=>h.form.maxTurns=e,min:1,max:50,step:1,"controls-position":`right`},null,8,[`modelValue`]),e(`div`,Xe,i(h.$t(`chat.scheduledTasks.form.maxTurnsHint`)),1)]),_:1},8,[`label`])]),_:1},8,[`model`])]),_:1},8,[`modelValue`,`title`,`close-on-press-escape`,`show-close`])])}var Qe=V(oe,[[`render`,Ze],[`__scopeId`,`data-v-9eb08ea3`]]);export{Qe as default};
@@ -1 +0,0 @@
1
- import{vi as e}from"./index-0JujvRxi.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{vi as e}from"./index-0JujvRxi.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{vi as e}from"./index-0JujvRxi.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{vi as e}from"./index-0JujvRxi.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{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 ee,Rt as d,St as f,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{a as A,c as j,i as M,t as N}from"./install-Cn-SLM3u.js";import{c as P,d as F,n as I,r as L,u as R}from"./runtime-BTM7t9of.js";import{G as z,J as B,N as V,Ot as ne,W as re,Y as H,_ as ie,dt as U,ft as W,h as ae,m as G,yt as oe}from"./use-deprecated-r4dlLNqm.js";import{t as se}from"./tooltip-B5wtxrSQ.js";import{r as K}from"./aria-8oQuUBWy.js";import{n as ce}from"./vnode-Djvrzqbc.js";import{t as q}from"./click-outside-Cb1hvt0t.js";import{t as le}from"./collapse-transition-BUGXhx7B.js";import{Bi as J,E as Y,Ii as ue,Ji as de}from"./index-0JujvRxi.js";var fe=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 J.down:this.gotoSubIndex(this.subIndex+1),n=!0;break;case J.up:this.gotoSubIndex(this.subIndex-1),n=!0;break;case J.tab:K(e,`mouseleave`);break;case J.enter:case J.numpadEnter:case J.space:n=!0,t.currentTarget.click();break}return n&&(t.preventDefault(),t.stopPropagation()),!1})})}},pe=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 fe(this,t)),this.addListeners()}addListeners(){this.domNode.addEventListener(`keydown`,e=>{let t=!1;switch(e.code){case J.down:K(e.currentTarget,`mouseenter`),this.submenu&&this.submenu.gotoSubIndex(0),t=!0;break;case J.up:K(e.currentTarget,`mouseenter`),this.submenu&&this.submenu.gotoSubIndex(this.submenu.subMenuItems.length-1),t=!0;break;case J.tab:K(e.currentTarget,`mouseleave`);break;case J.enter:case J.numpadEnter:case J.space:t=!0,e.currentTarget.click();break}t&&e.preventDefault()})}},me=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 pe(t,e)})}},he=A(k({...k({name:`ElMenuCollapseTransition`}),setup(e){let t=j(`menu`),r={onBeforeEnter:e=>e.style.opacity=`0.2`,onEnter(e,n){z(e,`${t.namespace.value}-opacity-transition`),e.style.opacity=`1`,n()},onAfterEnter(e){H(e,`${t.namespace.value}-opacity-transition`),e.style.opacity=``},onBeforeLeave(e){e.dataset||={},B(e,t.m(`collapse`))?(H(e,t.m(`collapse`)),e.dataset.oldOverflow=e.style.overflow,e.dataset.scrollWidth=e.clientWidth.toString(),z(e,t.m(`collapse`))):(z(e,t.m(`collapse`)),e.dataset.oldOverflow=e.style.overflow,e.dataset.scrollWidth=e.clientWidth.toString(),H(e,t.m(`collapse`))),e.style.width=`${e.scrollWidth}px`,e.style.overflow=`hidden`},onLeave(e){z(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 ge(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 _e(e){return S(()=>{let t=e.backgroundColor;return t?new ue(t).shade(20).toString():``})}var ve=(e,t)=>{let n=j(`menu`);return S(()=>n.cssVarBlock({"text-color":e.textColor||``,"hover-text-color":e.textColor||``,"bg-color":e.backgroundColor||``,"hover-bg-color":_e(e).value||``,"active-color":e.activeTextColor||``,level:`${t}`}))},X=`rootMenu`,Z=`subMenu:`,ye=I({index:{type:String,required:!0},showTimeout:Number,hideTimeout:Number,popperClass:String,disabled:Boolean,teleported:{type:Boolean,default:void 0},popperOffset:Number,expandCloseIcon:{type:G},expandOpenIcon:{type:G},collapseCloseIcon:{type:G},collapseOpenIcon:{type:G}}),be=`ElSubMenu`,xe=k({name:be,props:ye,setup(e,{slots:n,expose:r}){let a=t(),{indexPath:o,parentMenu:s}=ge(a,S(()=>e.index)),c=j(`menu`),l=j(`sub-menu`),u=m(X);u||W(be,`can not inject root menu`);let d=m(`${Z}${s.value.uid}`);d||W(be,`can not inject sub menu`);let h=O({}),b=O({}),x,C=O(!1),T=O(),E=O(),D=S(()=>L.value===`horizontal`&&A.value?`bottom-start`:`right-start`),k=S(()=>L.value===`horizontal`&&A.value||L.value===`vertical`&&!u.props.collapse?e.expandCloseIcon&&e.expandOpenIcon?F.value?e.expandOpenIcon:e.expandCloseIcon:ae:e.collapseCloseIcon&&e.collapseOpenIcon?F.value?e.collapseOpenIcon:e.collapseCloseIcon:ie),A=S(()=>d.level===0),M=S(()=>{let t=e.teleported;return R(t)?A.value:t}),N=S(()=>u.props.collapse?`${c.namespace.value}-zoom-in-left`:`${c.namespace.value}-zoom-in-top`),P=S(()=>L.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`]),F=S(()=>u.openedMenus.includes(e.index)),I=S(()=>[...Object.values(h.value),...Object.values(b.value)].some(({active:e})=>e)),L=S(()=>u.props.mode),z=S(()=>u.props.persistent),B=f({index:e.index,indexPath:o,active:I}),V=ve(u.props,d.level+1),H=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:I.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){d.mouseInChild.value=!0;return}d.mouseInChild.value=!0,x?.(),{stop:x}=ne(()=>{u.openMenu(e.index,o.value)},n),M.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`){d.mouseInChild.value=!1;return}x?.(),d.mouseInChild.value=!1,{stop:x}=ne(()=>!C.value&&u.closeMenu(e.index,o.value),oe.value),M.value&&t&&((n=d.handleMouseleave)==null||n.call(d,!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:d.level+1}),r({opened:F}),ee(()=>{u.addSubMenu(B),d.addSubMenu(B)}),_(()=>{d.removeSubMenu(B),u.removeSubMenu(B)}),()=>{let t=[n.title?.call(n),i(re,{class:l.e(`icon-arrow`),style:{transform:F.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:F.value,effect:`light`,pure:!0,offset:H.value,showArrow:!1,persistent:z.value,popperClass:U.value,placement:D.value,teleported:M.value,fallbackPlacements:P.value,transition:N.value,gpuAcceleration:!1},{content:()=>i(`div`,{class:[c.m(L.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,F.value]])})]);return i(`li`,{class:[l.b(),l.is(`active`,I.value),l.is(`opened`,F.value),l.is(`disabled`,e.disabled)],role:`menuitem`,ariaHaspopup:!0,ariaExpanded:F.value,onMouseenter:J,onMouseleave:()=>Y(),onFocus:J},[r])}}}),Se=I({mode:{type:String,values:[`horizontal`,`vertical`],default:`vertical`},defaultActive:{type:String,default:``},defaultOpeneds:{type:L(Array),default:()=>de([])},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:G,default:()=>V},popperEffect:{type:L(String),default:`dark`},popperClass:String,showTimeout:{type:Number,default:300},hideTimeout:{type:Number,default:300},persistent:{type:Boolean,default:!0}}),Q=e=>d(e)&&e.every(e=>g(e)),Ce=k({name:`ElMenu`,props:Se,emits:{close:(e,t)=>g(e)&&Q(t),open:(e,t)=>g(e)&&Q(t),select:(e,t,n,r)=>g(e)&&Q(t)&&h(n)&&(R(r)||r instanceof Promise)},setup(e,{emit:n,slots:r,expose:a}){let o=t(),c=o.appContext.config.globalProperties.$router,l=O(),u=j(`menu`),d=j(`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(!(F(r)||F(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},M=e=>{let t=getComputedStyle(e),n=Number.parseInt(t.marginLeft,10),r=Number.parseInt(t.marginRight,10);return e.offsetWidth+n+r||0},N=()=>{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+=M(e),a<=i-64&&(o=t+1))}),o===e.length?-1:o},P=e=>_.value[e].indexPath,I=(e,t=33.34)=>{let n;return()=>{n&&clearTimeout(n),n=setTimeout(()=>{e()},t)}},L=!0,R=()=>{if(p.value===N())return;let e=()=>{p.value=-1,s(()=>{p.value=N()})};L?e():I(e)(),L=!1};v(()=>e.defaultActive,e=>{g.value[e]||(h.value=``),A(e)}),v(()=>e.collapse,e=>{e&&(m.value=[])}),v(g.value,x);let z;E(()=>{e.mode===`horizontal`&&e.ellipsis?z=oe(l,R).stop:z?.()});let B=O(!1);{let t=e=>{_.value[e.index]=e},n=e=>{delete _.value[e.index]};w(X,f({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:B,level:0})}ee(()=>{e.mode===`horizontal`&&new me(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:R});let V=ve(e,0);return()=>{let t=r.default?.call(r)??[],a=[];if(e.mode===`horizontal`&&l.value){let n=ce(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(xe,{index:`sub-menu-more`,class:d.e(`hide-arrow`),popperOffset:e.popperOffset},{title:()=>i(re,{class:d.e(`icon-more`)},{default:()=>i(e.ellipsisIcon)}),default:()=>o})))}let o=e.closeOnClickOutside?[[q,()=>{m.value.length&&(B.value||(m.value.forEach(e=>n(`close`,e,P(e))),m.value=[]))}]]:[],s=y(i(`ul`,{key:String(e.collapse),role:`menubar`,ref:l,style:V.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(he,()=>s):s}}}),we=I({index:{type:L([String,null]),default:null},route:{type:L([String,Object])},disabled:Boolean}),Te={click:e=>g(e.index)&&d(e.indexPath)},$=`ElMenuItem`,Ee=A(k({...k({name:$}),props:we,emits:Te,setup(n,{expose:i,emit:a}){let o=n;P(o.index)&&U($,`Missing required prop: "index"`);let s=t(),d=m(X),h=j(`menu`),g=j(`menu-item`);d||W($,`can not inject root menu`);let{parentMenu:v,indexPath:y}=ge(s,u(o,`index`)),w=m(`${Z}${v.value.uid}`);w||W($,`can not inject sub menu`);let T=S(()=>o.index===d.activeIndex),E=f({index:o.index,indexPath:y,active:T}),O=()=>{o.disabled||(d.handleMenuItemClick({index:o.index,indexPath:y.value,route:o.route}),a(`click`,E))};return ee(()=>{w.addSubMenu(E),d.addMenuItem(E)}),_(()=>{w.removeSubMenu(E),d.removeMenuItem(E)}),i({parentMenu:v,rootMenu:d,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(d).props.collapse&&t.$slots.title?(D(),x(c(se),{key:0,effect:c(d).props.popperEffect,placement:`right`,"fallback-placements":[`left`],persistent:c(d).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`]]),De={title:String},Oe=A(k({...k({name:`ElMenuItemGroup`}),props:De,setup(t){let n=j(`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`]]),ke=N(Ce,{MenuItem:Ee,MenuItemGroup:Oe,SubMenu:xe}),Ae=M(Ee);M(Oe);var je=M(xe),Me=k({props:{collapsed:{type:Boolean,default:!1}},emits:[`click`],computed:{siteTitle(){return this.$store.state.site?.title||`AceData`},url(){let e=this.$store.state.site,t=`https://platform.acedata.cloud/favicon.ico`;return this.collapsed?e?.favicon||e?.logo||t:e?.logo||e?.favicon||t}}}),Ne=[`aria-label`],Pe=[`src`,`alt`];function Fe(t,n,r,i,a,o){return D(),l(`button`,{type:`button`,class:`brand-logo`,"aria-label":t.siteTitle,onClick:n[0]||=e=>t.$emit(`click`)},[e(`img`,{src:t.url,class:`brand-logo__image`,alt:t.siteTitle},null,8,Pe)],8,Ne)}var Ie=Y(Me,[[`render`,Fe],[`__scopeId`,`data-v-c9ca5791`]]),Le=`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{je as a,Ae as i,Ie as n,ke as r,Le as t};
@@ -1 +0,0 @@
1
- import{Yi as e}from"./constants-lvoVrMEx.js";import{Gr as t,Jn as n,dr as r,ii as i,ir as a,qn as o}from"./index-0JujvRxi.js";var s={namespaced:!0,state:t,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},setPendingDraft:(e,t)=>{e.pendingDraft=t||``},resetAll:e=>{let n=e.memoryEnabled;Object.assign(e,t()),e.memoryEnabled=n}},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 o.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:t,state:r})=>{r.status.getService=i.Request;try{let{data:a}=await n.get(e);return r.status.getService=i.Success,t(`setService`,a),a}catch{r.status.getService=i.Error,t(`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:t,state:n,rootState:a})=>{if(console.debug(`start to get applications for chat`),!a?.token?.access)return n.status.getApplications=i.Success,t(`setApplications`,[]),t(`setApplication`,void 0),t(`setCredential`,void 0),[];n.status.getApplications=i.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),n.status.getApplications=i.Success,t(`setApplications`,a.items),console.debug(`set applications for chat`,a.items),a.items}catch(e){console.error(`get applications failed for chat`,e),n.status.getApplications=i.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);i>-1?r[i]=n:r?.unshift(n),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:t,rootState:n})=>{t.status.getConversations=i.Request;let r=t.credential?.token,o=t.modelGroup?.name;if(!r||!o)return t.status.getConversations=i.Error,e(`setConversations`,[]),[];try{let{data:s}=await a.getConversations({userId:n.user?.id,modelGroup:o},{token:r});return console.debug(`get conversations success`,s?.items?.length,`group=`,o),t.status.getConversations=i.Success,e(`setConversations`,s.items),s.items}catch{return t.status.getConversations=i.Error,e(`setConversations`,[]),[]}},getConversation:async({commit:e,state:t},n)=>{let r=t.credential?.token;if(!(!r||!n))try{let{data:i}=await a.getConversation(n,{token:r}),o=t.conversations||[],s=o.findIndex(e=>e.id===n),c=s>-1?{...o[s],...i}:i;if(s>-1){let t=[...o];t[s]=c,e(`setConversations`,t)}return c}catch(e){console.error(`getConversation failed`,n,e);return}}}};export{s as chat,s as default};
@@ -1 +0,0 @@
1
- import{vi as e}from"./index-0JujvRxi.js";var t=e(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]);export{t};
@@ -1 +0,0 @@
1
- import{vi as e}from"./index-0JujvRxi.js";var t=e(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]);export{t};
@@ -1 +0,0 @@
1
- import{vi as e}from"./index-0JujvRxi.js";var t=e(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]);export{t};
@@ -1 +0,0 @@
1
- import{vi as e}from"./index-0JujvRxi.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{vi as e}from"./index-0JujvRxi.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{$i as e}from"./index-0JujvRxi.js";var t=e(`PushNotifications`,{});export{t as PushNotifications};
@@ -1 +0,0 @@
1
- import{vi as e}from"./index-0JujvRxi.js";var t=e(`gauge`,[[`path`,{d:`m12 14 4-4`,key:`9kzdfg`}],[`path`,{d:`M3.34 19a10 10 0 1 1 17.32 0`,key:`19p75a`}]]);export{t};
@@ -1 +0,0 @@
1
- import{vi as e}from"./index-0JujvRxi.js";var t=e(`loader-circle`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]);export{t};
@@ -1 +0,0 @@
1
- import{vi as e}from"./index-0JujvRxi.js";var t=e(`music-2`,[[`circle`,{cx:`8`,cy:`18`,r:`4`,key:`1fc0mg`}],[`path`,{d:`M12 18V2l7 4`,key:`g04rme`}]]);export{t};
@@ -1 +0,0 @@
1
- import{pr as e}from"./constants-lvoVrMEx.js";import{Fr as t,Ln as n}from"./index-0JujvRxi.js";import{t as r}from"./createTaskActions-CCQ0kCyC.js";var i={namespaced:!0,state:t,mutations:{setTasks:(e,t)=>{e.tasks=t},setApplication:(e,t)=>{e.application=t},setApplications:(e,t)=>{e.applications=t},setConfig:(e,t)=>{e.config=t},setCredential:(e,t)=>{e.credential=t},setService:(e,t)=>{e.service=t},setTasksActive:(e,t)=>{e.tasks={...e.tasks,active:t}},setTasksItems:(e,t)=>{e.tasks={...e.tasks,items:t}},setTasksTotal:(e,t)=>{e.tasks={...e.tasks,total:t}},resetAll:e=>{Object.assign(e,t())}},actions:r({serviceId:e,operator:n,type:`videos`})};export{i as default,i as pixverse};
@@ -1 +0,0 @@
1
- import{vi as e}from"./index-0JujvRxi.js";var t=e(`play`,[[`path`,{d:`M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z`,key:`10ikf1`}]]);export{t};
@@ -1 +0,0 @@
1
- import{vi as e}from"./index-0JujvRxi.js";var t=e(`plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]);export{t};
@@ -1 +0,0 @@
1
- import{r as e}from"./rolldown-runtime--c01j_DQ.js";import{dr as t,ii as n,ni as r,qn as i,ti as a,zn as o}from"./index-0JujvRxi.js";var s=e=>{let t=e.token?.access;if(!t)throw Error(`Poivelle requires an authenticated Ace Data Cloud session`);return t},c=e=>{if(e&&typeof e==`object`&&`response`in e){let t=e.response?.data?.detail;if(typeof t==`string`)return t;if(typeof t?.message==`string`)return t.message}return e instanceof Error?e.message:`Poivelle request failed`},l=()=>typeof crypto<`u`&&crypto.randomUUID?crypto.randomUUID():`${Date.now().toString(16)}${Math.random().toString(16).slice(2)}`,u=async(e,n)=>{if(!n.requires_credential)return;if(!e.user?.id)throw Error(`Poivelle provider execution requires an authenticated user`);let o=e.applications??[],s=o.filter(e=>e.scope===a.GLOBAL&&e.role===`owner`).sort((e,t)=>(t.remaining_amount??0)-(e.remaining_amount??0))[0];if(s||=(o=(await t.getAll({limit:100,offset:0,user_id:`me`,ordering:`-created_at`,type:r.USAGE,scope:a.GLOBAL,affiliation:`owner`})).data.items,[...o].sort((e,t)=>(t.remaining_amount??0)-(e.remaining_amount??0))[0]),!s?.id)throw Error(`A Global usage application is required for provider execution`);let c=e=>e.metadata?.purpose===`poivelle_execution`&&e.metadata?.dry_run_id===n.id&&!!e.token&&(!e.expired_at||Date.parse(e.expired_at)>Date.now()),l=s.credentials?.find(c);if(l||=(await i.getAll({application_id:s.id,limit:100,ordering:`-created_at`})).data.items.find(c),l)return l;let u=new Date(Date.now()+1440*60*1e3).toISOString(),d=n.max_cost_microcredits>0?n.max_cost_microcredits/1e6:void 0,{data:f}=await i.create({application_id:s.id,host:typeof window>`u`?`https://studio.acedata.cloud`:window.location.origin,expired_at:u,limited_amount:d,metadata:{purpose:`poivelle_execution`,project_id:n.project_id,dry_run_id:n.id}});if(!f.token)throw Error(`The temporary execution credential has no token`);return f},d=async({commit:e,rootState:t},n)=>{let{data:r}=await o.getMembers(n,{token:s(t)}),i=r.find(e=>e.user_id===t.user?.id&&e.state===`active`);if(!i)throw Error(`Active Poivelle workspace membership was not found`);e(`setCurrentMembership`,i)},f=async({commit:e,rootState:t,state:r,dispatch:i},a={})=>{if(r.status.bootstrap===n.Request)return;e(`setStatus`,{key:`bootstrap`,value:n.Request}),e(`setError`);let l=n.Success;try{let n={token:s(t)},[{data:c},{data:l}]=await Promise.all([o.getWorkspaces(n),o.getDiscovery(n)]);e(`setWorkspaces`,c),e(`setDiscoveryWorks`,l);let u=r.currentWorkspaceId??c[0]?.id;if(e(`setCurrentWorkspace`,u),!u){e(`setProjects`,[]);return}await d({commit:e,rootState:t},u);let{data:f}=await o.getWorkspaceProjects(u,{token:s(t)});e(`setProjects`,f);let p=r.currentProjectId??f[0]?.id;e(`setCurrentProject`,p),p&&a.loadProject!==!1&&await i(`loadProject`,p)}catch(t){l=n.Error,e(`setError`,c(t))}finally{e(`setStatus`,{key:`bootstrap`,value:l})}},p=async({commit:e,rootState:t},n)=>{let{data:r}=await o.createWorkspace(n,{token:s(t)});return e(`addWorkspace`,r),await d({commit:e,rootState:t},r.id),e(`setProjects`,[]),e(`setCurrentProject`),r.id},m=async({state:e,commit:t,rootState:n})=>{if(e.currentWorkspaceId)return e.currentWorkspaceId;let r=e.workspaces[0];if(r)return t(`setCurrentWorkspace`,r.id),await d({commit:t,rootState:n},r.id),r.id;let{data:i}=await o.createWorkspace({name:`My Studio`},{token:s(n)});return t(`addWorkspace`,i),await d({commit:t,rootState:n},i.id),i.id},h={bootstrap:f,createWorkspace:p,copyDiscoveryWork:async(e,t)=>{let{commit:n,rootState:r,dispatch:i}=e,a=await m(e),{data:c}=await o.copyDiscoveryWork(t.work_id,{workspace_id:a,prompt:t.prompt.trim(),title:t.title?.trim(),aspect_ratio:t.aspect_ratio??`16:9`},{token:s(r)});return n(`addProject`,c.project),await i(`loadProject`,c.project.id),c.project},selectWorkspace:async({commit:e,rootState:t,dispatch:n},r)=>{e(`setCurrentWorkspace`,r),await d({commit:e,rootState:t},r);let{data:i}=await o.getWorkspaceProjects(r,{token:s(t)});e(`setProjects`,i);let a=i[0]?.id;e(`setCurrentProject`,a),a&&await n(`loadProject`,a)},createProject:async({commit:e,rootState:t,dispatch:n},r)=>{let{data:i}=await o.createProject(r,{token:s(t)});e(`addProject`,i),await n(`loadProject`,i.id)},createCommercialTVCProject:async({commit:e,rootState:t},n)=>{let{workspace_id:r,...i}=n,{data:a}=await o.createCommercialTVCProject(r,i,{token:s(t)});e(`addProject`,a.project),e(`setGraph`,a.graph),e(`setRevisions`,[a.revision]),e(`setStoryboard`,a.storyboard),e(`setArtifacts`,[]),e(`setTakes`,[]),e(`setSelections`,[])},loadProject:async({commit:e,rootState:t,state:r},i)=>{e(`setCurrentProject`,i),e(`setStatus`,{key:`graph`,value:n.Request}),e(`setError`);let a=n.Success;try{let n={token:s(t)},a=r.projects.find(e=>e.id===i),[c,l,u,d,f,p,m,h,g,_,v]=await Promise.all([o.getGraph(i,n),o.getAssets(i,n),o.getRevisions(i,n),o.getProposals(i,n),o.getRuns(i,n),o.getTimeline(i,n),o.getArtifacts(i,n),o.getTakes(i,n),o.getEvaluations(i,n),o.getForensicValidations(i,n),o.getCosts(i,n)]);if(r.currentProjectId!==i)return;let y=u.data[0]?.id,[b,x]=await Promise.all([y?o.getSelections(i,y,n):Promise.resolve({data:[]}),a?.blueprint_ref===`commercial.tvc.action-imaging@1`?o.getStoryboard(i,n):Promise.resolve(void 0)]);if(r.currentProjectId!==i)return;e(`setGraph`,c.data),e(`setAssets`,l.data),e(`setRevisions`,u.data),e(`setProposals`,d.data),e(`setRuns`,f.data),e(`setTimeline`,p.data),e(`setArtifacts`,m.data),e(`setTakes`,h.data),e(`setEvaluations`,g.data),e(`setForensicValidations`,_.data),e(`setCosts`,v.data),e(`setSelections`,b.data),e(`setStoryboard`,x?.data)}catch(t){if(r.currentProjectId!==i)return;a=n.Error,e(`setError`,c(t))}finally{r.currentProjectId===i&&e(`setStatus`,{key:`graph`,value:a})}},applyCommand:async({commit:e,rootState:t,state:r,dispatch:i},a)=>{if(!r.currentProjectId||!r.graph)return;if(!r.currentMembership)throw Error(`Active Poivelle workspace membership was not loaded`);e(`setStatus`,{key:`command`,value:n.Request});let u=n.Success;try{await o.applyGraphCommand(r.currentProjectId,{idempotency_key:`web-${l()}`,base_graph_version:r.graph.graph_version,read_set:{nodes:r.graph.nodes.map(({id:e,version:t})=>({id:e,version:t})),edges:r.graph.edges.map(({id:e,version:t})=>({id:e,version:t})),groups:r.graph.groups.map(({id:e,version:t})=>({id:e,version:t})),membership_generation:r.currentMembership.generation},operations:a},{token:s(t)}),await i(`loadProject`,r.currentProjectId)}catch(t){throw u=n.Error,e(`setError`,c(t)),t}finally{e(`setStatus`,{key:`command`,value:u})}},createNode:async({dispatch:e},t)=>{await e(`applyCommand`,[{op:`create_node`,node:{id:`node_${l().replace(/-/g,``)}`,node_type:t.node_type,title:t.title,payload:t.payload??{}}}])},importAsset:async({state:e,commit:t,rootState:n},r)=>{if(!e.currentWorkspaceId)return;let{data:i}=await o.importAsset(e.currentWorkspaceId,{...r,rights:{}},{token:s(n)});t(`setAssets`,[i.asset,...e.assets])},updateSelectedNode:async({state:e,dispatch:t},n)=>{e.selectedNodeId&&await t(`applyCommand`,[{op:`update_node`,node_id:e.selectedNodeId,path:n.path,value:n.value}])},deleteSelectedNode:async({state:e,dispatch:t})=>{e.selectedNodeId&&await t(`applyCommand`,[{op:`delete_node`,node_id:e.selectedNodeId}])},setProjection:({commit:e},t)=>{e(`setProjection`,t)},commitRevision:async({state:e,commit:t,rootState:n},r)=>{if(!e.currentProjectId||!e.graph)return;let{data:i}=await o.createRevision(e.currentProjectId,{graph_version:e.graph.graph_version,message:r},{token:s(n)});t(`setRevisions`,[i,...e.revisions])},dryRun:async({state:e,commit:t,rootState:n},r)=>{if(!e.currentProjectId||!e.graph||!e.selectedNodeId)return;let i=e.revisions[0];(!i||i.graph_version!==e.graph.graph_version)&&(i=(await o.createRevision(e.currentProjectId,{graph_version:e.graph.graph_version,message:`${r} from studio`},{token:s(n)})).data,t(`setRevisions`,[i,...e.revisions]));let{data:a}=await o.dryRunAction(e.currentProjectId,{action_type:r,target_ids:[e.selectedNodeId],graph_version:e.graph.graph_version,revision_id:i.id},{token:s(n)});t(`setDryRun`,a)},confirmDryRun:async({state:e,commit:t,rootState:n})=>{if(!e.currentProjectId||!e.dryRun)return;let r=e.projects.find(t=>t.id===e.currentProjectId)?.managed_execution?void 0:await u(n,e.dryRun),a;try{a=(await o.confirmAction(e.currentProjectId,{dry_run_id:e.dryRun.id,revision_id:e.dryRun.revision_id,confirmation_nonce:e.dryRun.confirmation_nonce,idempotency_key:`confirm-${e.dryRun.id}`,execution_credential:r?.token},{token:s(n)})).data}catch(e){let t=e?.response?.status;throw r?.id&&[400,401,403,404,422].includes(t)&&await i.delete(r.id).catch(()=>void 0),Error(c(e))}return t(`setRuns`,[a.run,...e.runs.filter(e=>e.id!==a.run.id)]),t(`setDryRun`),a.run},loadRun:async({state:e,commit:t,rootState:n},r)=>{if(!e.currentProjectId)return;let{data:i}=await o.getRun(e.currentProjectId,r,{token:s(n)});t(`setActiveRun`,i)},retryStep:async({state:e,commit:t,rootState:n},r)=>{if(!e.currentProjectId||!e.graph)return;if(!e.graph.nodes.some(e=>e.id===r.node_id))throw Error(`The failed production node no longer exists in the current graph`);let i=e.revisions[0];(!i||i.graph_version!==e.graph.graph_version)&&(i=(await o.createRevision(e.currentProjectId,{graph_version:e.graph.graph_version,message:`Retry failed production step`},{token:s(n)})).data,t(`setRevisions`,[i,...e.revisions]));let{data:a}=await o.dryRunAction(e.currentProjectId,{action_type:r.operation===`compose.timeline@1`?`compose`:`generate`,target_ids:[r.node_id],graph_version:e.graph.graph_version,revision_id:i.id,options:{recovery_of_run_id:e.activeRun?.run.id}},{token:s(n)});return t(`setSelectedNode`,r.node_id),t(`setDryRun`,a),a},saveTimeline:async({state:e,commit:t,rootState:n},r)=>{if(!e.currentProjectId)return;let{data:i}=await o.saveTimeline(e.currentProjectId,r,{token:s(n)});t(`setTimeline`,i)},rejectProposal:async({state:e,commit:t,rootState:r},i)=>{if(e.currentProjectId){t(`setStatus`,{key:`action`,value:n.Request});try{let{data:a}=await o.rejectProposal(e.currentProjectId,i,{token:s(r)});t(`setProposals`,e.proposals.map(e=>e.id===a.id?a:e)),t(`setStatus`,{key:`action`,value:n.Success})}catch(e){throw t(`setError`,c(e)),t(`setStatus`,{key:`action`,value:n.Error}),e}}},cancelRun:async({state:e,commit:t,rootState:r},i)=>{if(e.currentProjectId){t(`setStatus`,{key:`action`,value:n.Request});try{let{data:a}=await o.cancelRun(e.currentProjectId,i,{token:s(r)});t(`setRuns`,e.runs.map(e=>e.id===a.id?a:e)),t(`setStatus`,{key:`action`,value:n.Success})}catch(e){throw t(`setError`,c(e)),t(`setStatus`,{key:`action`,value:n.Error}),e}}},selectTake:async({state:e,commit:t,rootState:n},r)=>{if(!e.currentProjectId)return;let i=e.revisions[0];if(!i)throw Error(`Commit a project revision before selecting a take`);let a=e.selections.find(e=>e.target_node_id===r.target_node_id),c;try{c=(await o.selectTake(e.currentProjectId,{revision_id:i.id,target_node_id:r.target_node_id,take_id:r.take_id,expected_previous_event_id:a?.id},{token:s(n)})).data}catch(r){throw r?.response?.status===409&&t(`setSelections`,(await o.getSelections(e.currentProjectId,i.id,{token:s(n)})).data),r}t(`setSelections`,[...e.selections.filter(e=>e.target_node_id!==r.target_node_id),c])},selectNode:({commit:e},t)=>e(`setSelectedNode`,t)},g=()=>({workspaces:[],discoveryWorks:[],projects:[],projection:`overview`,assets:[],artifacts:[],takes:[],selections:[],revisions:[],proposals:[],runs:[],evaluations:[],forensicValidations:[],application:void 0,applications:void 0,service:void 0,status:{bootstrap:n.None,graph:n.None,command:n.None,action:n.None,assets:n.None}}),_=e({addProject:()=>E,addWorkspace:()=>C,reset:()=>v,setActiveRun:()=>H,setArtifacts:()=>F,setAssets:()=>P,setCosts:()=>G,setCurrentMembership:()=>O,setCurrentProject:()=>k,setCurrentWorkspace:()=>D,setDiscoveryWorks:()=>S,setDryRun:()=>q,setError:()=>b,setEvaluations:()=>U,setForensicValidations:()=>W,setGraph:()=>j,setProjection:()=>A,setProjects:()=>w,setProposals:()=>B,setRevisions:()=>z,setRuns:()=>V,setSelectedNode:()=>N,setSelections:()=>L,setStatus:()=>y,setStoryboard:()=>R,setTakes:()=>I,setTimeline:()=>K,setWorkspaces:()=>x,updateNode:()=>M}),v=e=>{Object.assign(e,g())},y=(e,t)=>{e.status[t.key]=t.value},b=(e,t)=>{e.error=t},x=(e,t)=>{e.workspaces=t},S=(e,t)=>{e.discoveryWorks=t},C=(e,t)=>{e.workspaces.unshift(t),e.currentWorkspaceId=t.id},w=(e,t)=>{e.projects=t},T=e=>{e.graph=void 0,e.assets=[],e.artifacts=[],e.takes=[],e.selections=[],e.storyboard=void 0,e.revisions=[],e.proposals=[],e.runs=[],e.activeRun=void 0,e.evaluations=[],e.forensicValidations=[],e.costs=void 0,e.timeline=void 0,e.selectedNodeId=void 0,e.dryRun=void 0},E=(e,t)=>{e.projects=e.projects.filter(e=>e.id!==t.id),e.projects.unshift(t),e.currentProjectId!==t.id&&T(e),e.currentProjectId=t.id},D=(e,t)=>{e.currentWorkspaceId=t,e.currentMembership=void 0},O=(e,t)=>{e.currentMembership=t},k=(e,t)=>{e.currentProjectId!==t&&(T(e),e.projection=`overview`),e.currentProjectId=t},A=(e,t)=>{e.projection=t},j=(e,t)=>{e.graph=t,e.selectedNodeId&&!t?.nodes.some(t=>t.id===e.selectedNodeId)&&(e.selectedNodeId=void 0)},M=(e,t)=>{let n=e.graph?.nodes.findIndex(e=>e.id===t.id)??-1;e.graph&&n>=0&&(e.graph.nodes[n]=t)},N=(e,t)=>{e.selectedNodeId=t},P=(e,t)=>{e.assets=t},F=(e,t)=>{e.artifacts=t},I=(e,t)=>{e.takes=t},L=(e,t)=>{e.selections=t},R=(e,t)=>{e.storyboard=t},z=(e,t)=>{e.revisions=t},B=(e,t)=>{e.proposals=t},V=(e,t)=>{e.runs=t},H=(e,t)=>{e.activeRun=t},U=(e,t)=>{e.evaluations=t},W=(e,t)=>{e.forensicValidations=t},G=(e,t)=>{e.costs=t},K=(e,t)=>{e.timeline=t},q=(e,t)=>{e.dryRun=t},J={namespaced:!0,state:g,mutations:_,actions:h};export{J as default,J as poivelle};
@@ -1 +0,0 @@
1
- import{vi as e}from"./index-0JujvRxi.js";var t=e(`rotate-ccw`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}]]);export{t};
@@ -1 +0,0 @@
1
- import{vi as e}from"./index-0JujvRxi.js";var t=e(`rotate-cw`,[[`path`,{d:`M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8`,key:`1p45f6`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}]]);export{t};
@@ -1 +0,0 @@
1
- import{vi as e}from"./index-0JujvRxi.js";var t=e(`search`,[[`path`,{d:`m21 21-4.34-4.34`,key:`14j7rj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}]]);export{t};
@@ -1 +0,0 @@
1
- var e={"name.seedanceBot":{message:`SeeDance Бот`,description:`SeeDance видео генератор название`},"name.prompt":{message:`Подсказка`,description:`Подсказка для генерации видео`},"description.prompt":{message:`Опишите видео, которое вы хотите сгенерировать, можно добавить параметры SeeDance (например: --rs 720p --rt 16:9 --dur 5).`,description:`Описание ввода подсказки`},"placeholder.prompt":{message:`Опишите ваше видео…`,description:`Заполнитель для подсказки`},"name.model":{message:`Модель`,description:`Метка выбора модели`},"description.model":{message:`Выберите версию модели SeeDance для генерации.`,description:`Описание выбора модели`},"placeholder.select":{message:`Выбрать`,description:`Заполнитель для выпадающего списка`},"name.duration":{message:`Длительность`,description:`Метка выбора длительности видео`},"description.duration":{message:`Длительность видео (в секундах), от 2 до 12 секунд.`,description:`Описание длительности видео`},"name.generateAudio":{message:`Сгенерировать аудио`,description:`Метка для генерации аудио`},"description.generateAudio":{message:`При включении видео будет сопровождаться аудио. Поддерживается только модель seedance-1.5-pro, стоимость примерно в 2 раза выше.`,description:`Описание генерации аудио`},"name.resolution":{message:`Разрешение`,description:`Метка разрешения видео`},"model.seedance10pro":{message:`doubao-seedance-1.0-pro`,description:`Модель SeeDance 1.0 Pro`},"model.seedance10proFast":{message:`doubao-seedance-1.0-pro-fast`,description:`Модель SeeDance 1.0 Pro Fast`},"model.seedance15pro":{message:`doubao-seedance-1.5-pro`,description:`Модель SeeDance 1.5 Pro`},"model.seedance20":{message:`doubao-seedance-2.0`,description:`Модель SeeDance 2.0`},"model.seedance20Fast":{message:`doubao-seedance-2.0-fast`,description:`Модель SeeDance 2.0 Fast`},"model.seedance10liteT2v":{message:`doubao-seedance-1.0-lite-t2v`,description:`Модель SeeDance 1.0 Lite T2V`},"model.seedance10liteI2v":{message:`doubao-seedance-1.0-lite-i2v`,description:`Модель SeeDance 1.0 Lite I2V`},"name.serviceTier":{message:`Уровень сервиса`,description:`Метка уровня сервиса`},"description.serviceTier":{message:`Уровень обработки: default или flex.`,description:`Описание уровня сервиса`},"serviceTier.default":{message:`Стандартный`,description:`Стандартный уровень`},"serviceTier.flex":{message:`Гибкий`,description:`Гибкий уровень`},"name.returnLastFrame":{message:`Вернуть последний кадр`,description:`Метка переключателя для возврата последнего кадра`},"description.returnLastFrame":{message:`При включении будет возвращено дополнительное изображение последнего кадра.`,description:`Описание возврата последнего кадра`},"name.firstFrame":{message:`Первый кадр`,description:`Метка загрузки первого кадра`},"description.firstFrame":{message:`Необязательно. Загрузите изображение для справки/первого кадра.`,description:`Описание первого кадра`},"name.lastFrame":{message:`Последний кадр`,description:`Метка загрузки последнего кадра`},"description.lastFrame":{message:`Необязательно. Загрузите изображение последнего кадра (требуется первый кадр).`,description:`Описание последнего кадра`},"button.generate":{message:`Сгенерировать`,description:`Кнопка генерации`},"button.upload":{message:`Загрузить`,description:`Кнопка загрузки`},"button.download":{message:`Скачать`,description:`Кнопка скачивания`},"button.on":{message:`Включить`,description:`Текст для включения переключателя`},"button.off":{message:`Выключить`,description:`Текст для выключения переключателя`},"message.startingTask":{message:`Запуск задачи SeeDance…`,description:`Сообщение о начале задачи`},"message.startTaskSuccess":{message:`Задача запущена`,description:`Сообщение об успешном начале задачи`},"message.startTaskFailed":{message:`Не удалось запустить: `,description:`Сообщение о неудачном начале задачи`},"message.usedUp":{message:`Лимит исчерпан`,description:`Сообщение о исчерпании лимита`},"message.uploadExceed":{message:`Можно загрузить не более 1 изображения`,description:`Сообщение о превышении лимита загрузки`},"name.required":{message:`Обязательно`,description:`Индикатор обязательного поля`},"message.modelUnsupported":{message:`Выбранная модель не поддерживается. Выберите другую.`,description:`Предупреждение о неподдерживаемой модели`},"message.modelRequiresImage":{message:`Эта модель требует изображение первого кадра для генерации видео.`,description:`Предупреждение при отсутствии изображения для image-to-video`},"message.modelRejectsImage":{message:`Эта модель поддерживает только текст в видео. Удалите загруженное изображение.`,description:`Предупреждение когда текстовая модель получает изображение`},"message.resolutionNotSupported":{message:`Это разрешение не поддерживается выбранной моделью.`,description:`Подсказка когда разрешение не поддерживается`},"message.uploadError":{message:`Ошибка загрузки`,description:`Сообщение об ошибке загрузки`},"message.downloadVideo":{message:`Скачать видео`,description:`Сообщение о скачивании видео`},"status.pending":{message:`В очереди`,description:`Статус в очереди`},"status.processing":{message:`Генерация`,description:`Статус генерации`},"name.taskId":{message:`ID задачи`,description:`Метка ID задачи`},"name.traceId":{message:`Trace ID`,description:`Метка Trace ID`},"name.elapsed":{message:`Время выполнения`,description:`Время выполнения задачи (в секундах)`},"name.failure":{message:`Ошибка`,description:`Метка ошибки`},"name.failureReason":{message:`Причина ошибки`,description:`Метка причины ошибки`},"name.status":{message:`Статус`,description:`Метка статуса`},"name.ratio":{message:`Соотношение сторон`,description:`Метка соотношения сторон`},"description.ratio":{message:`Выберите соотношение сторон выходного видео.`,description:`Описание соотношения сторон`},"description.resolution":{message:`Выберите разрешение выходного видео.`,description:`Описание разрешения`},"ratio.adaptive":{message:`Адаптивно`,description:`Адаптивный вариант соотношения`},"name.cameraFixed":{message:`Фиксированная камера`,description:`Метка фиксированной камеры`},"description.cameraFixed":{message:`Когда включено, камера остаётся неподвижной во время видео.`,description:`Описание фиксированной камеры`},"name.seed":{message:`Сид`,description:`Метка случайного сида`},"description.seed":{message:`Случайный seed для воспроизводимости. Оставьте пустым для случайного.`,description:`Описание случайного сида`},"placeholder.seed":{message:`Авто`,description:`Заполнитель сида`},"model.seedance20Mini":{message:`doubao-seedance-2.0-mini`,description:`Модель SeeDance 2.0 Mini`},"name.referenceImage":{message:`Справочное изображение`,description:`Метка загрузки изображения-образца (Seedance 2.0)`},"description.referenceImage":{message:`Необязательно. Загрузите изображение-образец, например, лицо для видео с озвучкой. Поддерживается только Seedance 2.0.`,description:`Описание справочного изображения`},"name.referenceAudio":{message:`Справочное аудио`,description:`Метка загрузки справочного аудио (Seedance 2.0)`},"description.referenceAudio":{message:`Необязательно. Загрузите аудио для генерации видео с озвучкой (цифровой человек), необходимо использовать вместе с изображением-образцом. Поддерживается только Seedance 2.0.`,description:`Описание справочного аудио`},"name.referenceVideo":{message:`Справочное видео`,description:`Метка загрузки справочного видео (Seedance 2.0)`},"description.referenceVideo":{message:`Необязательно. Загрузите справочное видео. Поддерживается только Seedance 2.0.`,description:`Описание справочного видео`},"message.audioRequiresReferenceImage":{message:`Справочное аудио требует использования с изображением-образцом (основной объект озвучки), пожалуйста, загрузите изображение-образец.`,description:`Сообщение при наличии аудио, но отсутствии справочного изображения`},"name.talking":{message:`Talking mode`,description:`Make the on-screen character speak the lines (talking-head / avatar)`},"description.talking":{message:`When on, your uploaded image is used as the reference subject and the character speaks the lines in your prompt, with audio turned on automatically. Seedance 2.0 series only.`,description:`Talking mode switch hint`},"description.talkingPrompt":{message:`To make the character speak, write: the person in image 1 says "your line" (use straight double quotes).`,description:`Dialogue phrasing hint in talking mode`},"button.insertTemplate":{message:`Insert line template`,description:`Insert dialogue template button`},"template.talkingLine":{message:`the person in image 1 says "your line here"`,description:`Dialogue template text`},"message.talkingRecommendModel":{message:`Lite / Fast models may not speak your lines verbatim; for exact lines use Seedance 2.0 standard or upload a reference audio.`,description:`Talking verbatim-accuracy hint`},"message.talkingRequiresReferenceImage":{message:`Talking mode needs a portrait image as the reference subject. Please upload an image first.`,description:`Warning when talking mode has no reference image`}};export{e as default};
@@ -1 +0,0 @@
1
- var e={"name.seedanceBot":{message:`SeeDance Bot`,description:`Name of the SeeDance video generator`},"name.prompt":{message:`Prompt`,description:`Prompt for generating the video`},"description.prompt":{message:`Describe the video you want to generate, you can add SeeDance parameters (e.g., --rs 720p --rt 16:9 --dur 5).`,description:`Instructions for prompt input`},"placeholder.prompt":{message:`Describe your video…`,description:`Placeholder for prompt`},"name.model":{message:`Model`,description:`Label for model selection`},"description.model":{message:`Select the SeeDance model version for generation.`,description:`Instructions for model selection`},"placeholder.select":{message:`Select`,description:`Placeholder for dropdown selection`},"name.duration":{message:`Duration`,description:`Label for video duration selection`},"description.duration":{message:`Video duration (seconds). Select -1 for Auto on supported models, or choose a concrete value.`,description:`Instructions for video duration`},"name.generateAudio":{message:`Generate Audio`,description:`Label for audio generation option`},"description.generateAudio":{message:`Enabling this will include audio with the video. Only supported by seedance-1.5-pro / seedance-2.0 family models, costs about 2 times more.`,description:`Instructions for audio generation`},"name.resolution":{message:`Resolution`,description:`Label for video resolution`},"model.seedance10pro":{message:`doubao-seedance-1.0-pro`,description:`SeeDance 1.0 Pro model`},"model.seedance10proFast":{message:`doubao-seedance-1.0-pro-fast`,description:`SeeDance 1.0 Pro Fast model`},"model.seedance15pro":{message:`doubao-seedance-1.5-pro`,description:`SeeDance 1.5 Pro model`},"model.seedance20":{message:`doubao-seedance-2.0`,description:`SeeDance 2.0 model`},"model.seedance20Fast":{message:`doubao-seedance-2.0-fast`,description:`SeeDance 2.0 Fast model`},"model.seedance10liteT2v":{message:`doubao-seedance-1.0-lite-t2v`,description:`SeeDance 1.0 Lite T2V model`},"model.seedance10liteI2v":{message:`doubao-seedance-1.0-lite-i2v`,description:`SeeDance 1.0 Lite I2V model`},"name.serviceTier":{message:`Service Tier`,description:`Label for service tier`},"description.serviceTier":{message:`Processing tier: default or flex.`,description:`Instructions for service tier`},"serviceTier.default":{message:`default`,description:`Default tier`},"serviceTier.flex":{message:`flex`,description:`Flexible tier`},"name.returnLastFrame":{message:`Return Last Frame`,description:`Label for return last frame toggle`},"description.returnLastFrame":{message:`Enabling this will return the last frame image additionally.`,description:`Instructions for returning last frame`},"name.firstFrame":{message:`First Frame Image`,description:`Label for first frame image upload`},"description.firstFrame":{message:`Optional. Upload reference/first frame image.`,description:`Instructions for first frame image`},"name.lastFrame":{message:`Last Frame Image`,description:`Label for last frame image upload`},"description.lastFrame":{message:`Optional. Upload last frame image (requires first frame).`,description:`Instructions for last frame image`},"button.generate":{message:`Generate`,description:`Button for generating`},"button.upload":{message:`Upload`,description:`Button for uploading`},"button.download":{message:`Download`,description:`Button for downloading`},"button.on":{message:`On`,description:`Text for toggle switch on`},"button.off":{message:`Off`,description:`Text for toggle switch off`},"message.startingTask":{message:`Starting SeeDance task…`,description:`Prompt for starting task`},"message.startTaskSuccess":{message:`Task started`,description:`Prompt for successful task start`},"message.startTaskFailed":{message:`Failed to start: `,description:`Prompt for failed task start`},"message.usedUp":{message:`Quota exhausted`,description:`Prompt for exhausted quota`},"message.uploadExceed":{message:`You can upload a maximum of 1 image`,description:`Prompt for upload limit exceeded`},"name.required":{message:`Required`,description:`Required indicator`},"message.modelUnsupported":{message:`Selected model is not supported. Please pick another.`,description:`Warning when the model is not in the supported list`},"message.modelRequiresImage":{message:`This model requires a first-frame image to generate the video.`,description:`Warning when an image-to-video model lacks an image`},"message.modelRejectsImage":{message:`This model is text-to-video only. Please remove the uploaded image.`,description:`Warning when a text-only model is given an image`},"message.resolutionNotSupported":{message:`This resolution is not supported by the selected model.`,description:`Tooltip when a resolution chip is disabled for the current model`},"message.uploadError":{message:`Upload failed`,description:`Prompt for upload failure`},"message.downloadVideo":{message:`Download Video`,description:`Prompt for downloading video`},"status.pending":{message:`Pending`,description:`Status for pending`},"status.processing":{message:`Processing`,description:`Status for processing`},"name.taskId":{message:`Task ID`,description:`Label for task ID`},"name.traceId":{message:`Trace ID`,description:`Label for trace ID`},"name.elapsed":{message:`Elapsed Time`,description:`Elapsed time for the task (seconds)`},"name.failure":{message:`Failure`,description:`Label for failure`},"name.failureReason":{message:`Failure Reason`,description:`Label for failure reason`},"name.status":{message:`Status`,description:`Label for status`},"name.ratio":{message:`Aspect Ratio`,description:`Aspect ratio label`},"description.ratio":{message:`Choose the output video aspect ratio.`,description:`Aspect ratio description`},"description.resolution":{message:`Choose the output video resolution.`,description:`Video resolution description`},"ratio.adaptive":{message:`Adaptive`,description:`Adaptive ratio option`},"name.cameraFixed":{message:`Lock Camera`,description:`Lock camera switch label`},"description.cameraFixed":{message:`When on, the camera stays still during the video.`,description:`Lock camera description`},"name.seed":{message:`Seed`,description:`Random seed label`},"description.seed":{message:`Random seed for reproducible output. Leave blank to randomize.`,description:`Random seed description`},"placeholder.seed":{message:`Auto`,description:`Seed placeholder`},"model.seedance20Mini":{message:`doubao-seedance-2.0-mini`,description:`SeeDance 2.0 Mini model`},"name.referenceImage":{message:`Reference Image`,description:`Label for reference subject image upload (Seedance 2.0)`},"description.referenceImage":{message:`Optional. Upload reference subject image(s), e.g. a face for talking-head videos. Seedance 2.0 only.`,description:`Instructions for reference image`},"name.referenceAudio":{message:`Reference Audio`,description:`Label for reference audio upload (Seedance 2.0)`},"description.referenceAudio":{message:`Optional. Upload a voice/audio clip to drive a talking-head video. Requires a reference image. Seedance 2.0 only.`,description:`Instructions for reference audio`},"name.referenceVideo":{message:`Reference Video`,description:`Label for reference video upload (Seedance 2.0)`},"description.referenceVideo":{message:`Optional. Upload a reference video. Seedance 2.0 only.`,description:`Instructions for reference video`},"message.audioRequiresReferenceImage":{message:`Reference audio needs a reference image (the talking-head subject). Please upload a reference image too.`,description:`Warning when audio is provided without a reference image`},"name.talking":{message:`Talking mode`,description:`Make the on-screen character speak the lines (talking-head / avatar)`},"description.talking":{message:`When on, your uploaded image is used as the reference subject and the character speaks the lines in your prompt, with audio turned on automatically. Seedance 2.0 series only.`,description:`Talking mode switch hint`},"description.talkingPrompt":{message:`To make the character speak, write: the person in image 1 says "your line" (use straight double quotes).`,description:`Dialogue phrasing hint in talking mode`},"button.insertTemplate":{message:`Insert line template`,description:`Insert dialogue template button`},"template.talkingLine":{message:`the person in image 1 says "your line here"`,description:`Dialogue template text`},"message.talkingRecommendModel":{message:`Lite / Fast models may not speak your lines verbatim; for exact lines use Seedance 2.0 standard or upload a reference audio.`,description:`Talking verbatim-accuracy hint`},"message.talkingRequiresReferenceImage":{message:`Talking mode needs a portrait image as the reference subject. Please upload an image first.`,description:`Warning when talking mode has no reference image`}};export{e as default};
@@ -1 +0,0 @@
1
- var e={"name.seedanceBot":{message:`SeeDance Bot`,description:`Nome do gerador de vídeo SeeDance`},"name.prompt":{message:`Prompt`,description:`Prompt para gerar vídeo`},"description.prompt":{message:`Descreva o vídeo que deseja gerar, podendo adicionar parâmetros do SeeDance (ex: --rs 720p --rt 16:9 --dur 5).`,description:`Instruções para entrada de prompt`},"placeholder.prompt":{message:`Descreva seu vídeo…`,description:`Placeholder para prompt`},"name.model":{message:`Modelo`,description:`Rótulo de seleção de modelo`},"description.model":{message:`Escolha a versão do modelo SeeDance para gerar.`,description:`Instruções para seleção de modelo`},"placeholder.select":{message:`Selecione`,description:`Placeholder para seleção suspensa`},"name.duration":{message:`Duração`,description:`Rótulo de seleção de duração do vídeo`},"description.duration":{message:`Duração do vídeo (segundos), entre 2 e 12 segundos.`,description:`Instruções para duração do vídeo`},"name.generateAudio":{message:`Gerar áudio`,description:`Rótulo para geração de áudio`},"description.generateAudio":{message:`Ativado, o vídeo incluirá áudio. Suportado apenas pelo modelo seedance-1.5-pro, com custo cerca de 2 vezes maior.`,description:`Instruções para geração de áudio`},"name.resolution":{message:`Resolução`,description:`Rótulo de resolução do vídeo`},"model.seedance10pro":{message:`doubao-seedance-1.0-pro`,description:`Modelo SeeDance 1.0 Pro`},"model.seedance10proFast":{message:`doubao-seedance-1.0-pro-fast`,description:`Modelo SeeDance 1.0 Pro Fast`},"model.seedance15pro":{message:`doubao-seedance-1.5-pro`,description:`Modelo SeeDance 1.5 Pro`},"model.seedance20":{message:`doubao-seedance-2.0`,description:`Modelo SeeDance 2.0`},"model.seedance20Fast":{message:`doubao-seedance-2.0-fast`,description:`Modelo SeeDance 2.0 Rápido`},"model.seedance10liteT2v":{message:`doubao-seedance-1.0-lite-t2v`,description:`Modelo SeeDance 1.0 Lite T2V`},"model.seedance10liteI2v":{message:`doubao-seedance-1.0-lite-i2v`,description:`Modelo SeeDance 1.0 Lite I2V`},"name.serviceTier":{message:`Nível de serviço`,description:`Rótulo de nível de serviço`},"description.serviceTier":{message:`Nível de processamento: default ou flex.`,description:`Instruções para nível de serviço`},"serviceTier.default":{message:`default`,description:`Nível padrão`},"serviceTier.flex":{message:`flex`,description:`Nível flexível`},"name.returnLastFrame":{message:`Retornar último quadro`,description:`Rótulo para opção de retornar último quadro`},"description.returnLastFrame":{message:`Ativado, retornará uma imagem do último quadro.`,description:`Instruções para retornar último quadro`},"name.firstFrame":{message:`Imagem do primeiro quadro`,description:`Rótulo para upload da imagem do primeiro quadro`},"description.firstFrame":{message:`Opcional. Faça upload da imagem de referência/primeiro quadro.`,description:`Instruções para imagem do primeiro quadro`},"name.lastFrame":{message:`Imagem do último quadro`,description:`Rótulo para upload da imagem do último quadro`},"description.lastFrame":{message:`Opcional. Faça upload da imagem do último quadro (necessita do primeiro quadro).`,description:`Instruções para imagem do último quadro`},"button.generate":{message:`Gerar`,description:`Botão de gerar`},"button.upload":{message:`Fazer upload`,description:`Botão de upload`},"button.download":{message:`Baixar`,description:`Botão de download`},"button.on":{message:`Ligado`,description:`Texto para ativar o botão`},"button.off":{message:`Desligado`,description:`Texto para desativar o botão`},"message.startingTask":{message:`Iniciando tarefa SeeDance…`,description:`Mensagem de início de tarefa`},"message.startTaskSuccess":{message:`Tarefa iniciada`,description:`Mensagem de sucesso ao iniciar tarefa`},"message.startTaskFailed":{message:`Falha ao iniciar: `,description:`Mensagem de falha ao iniciar tarefa`},"message.usedUp":{message:`Limite esgotado`,description:`Mensagem de limite esgotado`},"message.uploadExceed":{message:`Somente 1 imagem pode ser enviada`,description:`Mensagem de limite de upload excedido`},"name.required":{message:`Obrigatório`,description:`Indicador de obrigatório`},"message.modelUnsupported":{message:`O modelo selecionado não é suportado. Por favor, escolha outro.`,description:`Aviso quando o modelo não é suportado`},"message.modelRequiresImage":{message:`Este modelo requer uma imagem de primeiro quadro para gerar o vídeo.`,description:`Aviso quando falta uma imagem em modelos image-to-video`},"message.modelRejectsImage":{message:`Este modelo é somente texto-para-vídeo. Por favor remova a imagem enviada.`,description:`Aviso quando um modelo somente-texto recebe uma imagem`},"message.resolutionNotSupported":{message:`Esta resolução não é suportada pelo modelo selecionado.`,description:`Tooltip quando uma resolução não é suportada`},"message.uploadError":{message:`Falha no upload`,description:`Mensagem de falha no upload`},"message.downloadVideo":{message:`Baixar vídeo`,description:`Mensagem para baixar vídeo`},"status.pending":{message:`Em fila`,description:`Status de fila`},"status.processing":{message:`Gerando`,description:`Status de geração`},"name.taskId":{message:`ID da tarefa`,description:`Rótulo para ID da tarefa`},"name.traceId":{message:`ID de rastreamento`,description:`Rótulo para ID de rastreamento`},"name.elapsed":{message:`Tempo decorrido`,description:`Tempo decorrido da tarefa (segundos)`},"name.failure":{message:`Falha`,description:`Rótulo de falha`},"name.failureReason":{message:`Razão da falha`,description:`Rótulo para razão da falha`},"name.status":{message:`Status`,description:`Rótulo de status`},"name.ratio":{message:`Proporção`,description:`Rótulo da proporção`},"description.ratio":{message:`Escolha a proporção do vídeo gerado.`,description:`Descrição da proporção`},"description.resolution":{message:`Escolha a resolução do vídeo gerado.`,description:`Descrição da resolução`},"ratio.adaptive":{message:`Adaptativo`,description:`Opção adaptativa de proporção`},"name.cameraFixed":{message:`Travar câmera`,description:`Rótulo travar câmera`},"description.cameraFixed":{message:`Quando ativado, a câmera permanece estática durante o vídeo.`,description:`Descrição de travar câmera`},"name.seed":{message:`Semente`,description:`Rótulo da semente aleatória`},"description.seed":{message:`Semente aleatória para resultados reproduzíveis. Deixe vazio para aleatório.`,description:`Descrição da semente aleatória`},"placeholder.seed":{message:`Auto`,description:`Marcador de posição da semente`},"model.seedance20Mini":{message:`doubao-seedance-2.0-mini`,description:`Modelo SeeDance 2.0 Mini`},"name.referenceImage":{message:`Imagem de referência`,description:`Etiqueta de upload de imagem de referência (Seedance 2.0)`},"description.referenceImage":{message:`Opcional. Faça o upload de uma imagem de referência do sujeito, por exemplo, o rosto da pessoa para o vídeo de narração. Apenas Seedance 2.0 suporta.`,description:`Descrição da imagem de referência`},"name.referenceAudio":{message:`Áudio de referência`,description:`Etiqueta de upload de áudio de referência (Seedance 2.0)`},"description.referenceAudio":{message:`Opcional. Faça o upload de um áudio/vídeo de voz para gerar um vídeo de narração (avatar digital), deve ser usado com uma imagem de referência. Apenas Seedance 2.0 suporta.`,description:`Descrição do áudio de referência`},"name.referenceVideo":{message:`Vídeo de referência`,description:`Etiqueta de upload de vídeo de referência (Seedance 2.0)`},"description.referenceVideo":{message:`Opcional. Faça o upload de um vídeo de referência. Apenas Seedance 2.0 suporta.`,description:`Descrição do vídeo de referência`},"message.audioRequiresReferenceImage":{message:`O áudio de referência precisa ser usado com uma imagem de referência (sujeito da narração), por favor, faça o upload da imagem de referência ao mesmo tempo.`,description:`Mensagem de aviso quando o áudio é fornecido, mas a imagem de referência está faltando`},"name.talking":{message:`Talking mode`,description:`Make the on-screen character speak the lines (talking-head / avatar)`},"description.talking":{message:`When on, your uploaded image is used as the reference subject and the character speaks the lines in your prompt, with audio turned on automatically. Seedance 2.0 series only.`,description:`Talking mode switch hint`},"description.talkingPrompt":{message:`To make the character speak, write: the person in image 1 says "your line" (use straight double quotes).`,description:`Dialogue phrasing hint in talking mode`},"button.insertTemplate":{message:`Insert line template`,description:`Insert dialogue template button`},"template.talkingLine":{message:`the person in image 1 says "your line here"`,description:`Dialogue template text`},"message.talkingRecommendModel":{message:`Lite / Fast models may not speak your lines verbatim; for exact lines use Seedance 2.0 standard or upload a reference audio.`,description:`Talking verbatim-accuracy hint`},"message.talkingRequiresReferenceImage":{message:`Talking mode needs a portrait image as the reference subject. Please upload an image first.`,description:`Warning when talking mode has no reference image`}};export{e as default};
@@ -1 +0,0 @@
1
- var e={"name.seedanceBot":{message:`SeeDance 봇`,description:`SeeDance 비디오 생성기 이름`},"name.prompt":{message:`프롬프트`,description:`비디오 생성을 위한 프롬프트`},"description.prompt":{message:`생성할 비디오를 설명하고 SeeDance 매개변수를 추가할 수 있습니다(예: --rs 720p --rt 16:9 --dur 5).`,description:`프롬프트 입력 설명`},"placeholder.prompt":{message:`비디오를 설명하세요…`,description:`프롬프트 자리 표시자`},"name.model":{message:`모델`,description:`모델 선택 레이블`},"description.model":{message:`비디오 생성을 위한 SeeDance 모델 버전을 선택하세요.`,description:`모델 선택 설명`},"placeholder.select":{message:`선택`,description:`드롭다운 선택 자리 표시자`},"name.duration":{message:`지속 시간`,description:`비디오 지속 시간 선택 레이블`},"description.duration":{message:`비디오 지속 시간(초), 범위 2-12초.`,description:`비디오 지속 시간 설명`},"name.generateAudio":{message:`오디오 생성`,description:`오디오 생성 여부 레이블`},"description.generateAudio":{message:`활성화하면 비디오에 오디오가 추가됩니다. seedance-1.5-pro 모델만 지원하며, 비용은 약 2배입니다.`,description:`오디오 생성 설명`},"name.resolution":{message:`해상도`,description:`비디오 해상도 레이블`},"model.seedance10pro":{message:`doubao-seedance-1.0-pro`,description:`SeeDance 1.0 Pro 모델`},"model.seedance10proFast":{message:`doubao-seedance-1.0-pro-fast`,description:`SeeDance 1.0 Pro Fast 모델`},"model.seedance15pro":{message:`doubao-seedance-1.5-pro`,description:`SeeDance 1.5 Pro 모델`},"model.seedance20":{message:`두바오-시댄스-2.0`,description:`SeeDance 2.0 모델`},"model.seedance20Fast":{message:`두바오-시댄스-2.0-패스트`,description:`SeeDance 2.0 패스트 모델`},"model.seedance10liteT2v":{message:`doubao-seedance-1.0-lite-t2v`,description:`SeeDance 1.0 Lite T2V 모델`},"model.seedance10liteI2v":{message:`doubao-seedance-1.0-lite-i2v`,description:`SeeDance 1.0 Lite I2V 모델`},"name.serviceTier":{message:`서비스 등급`,description:`서비스 등급 레이블`},"description.serviceTier":{message:`처리 등급: default 또는 flex.`,description:`서비스 등급 설명`},"serviceTier.default":{message:`기본`,description:`기본 등급`},"serviceTier.flex":{message:`유연`,description:`유연 등급`},"name.returnLastFrame":{message:`마지막 프레임 반환`,description:`마지막 프레임 반환 스위치 레이블`},"description.returnLastFrame":{message:`활성화하면 마지막 프레임 이미지를 추가로 반환합니다.`,description:`마지막 프레임 설명`},"name.firstFrame":{message:`첫 번째 프레임 이미지`,description:`첫 번째 프레임 이미지 업로드 레이블`},"description.firstFrame":{message:`선택 사항입니다. 참조/첫 번째 프레임 이미지를 업로드하세요.`,description:`첫 번째 프레임 이미지 설명`},"name.lastFrame":{message:`마지막 프레임 이미지`,description:`마지막 프레임 이미지 업로드 레이블`},"description.lastFrame":{message:`선택 사항입니다. 마지막 프레임 이미지를 업로드하세요(첫 번째 프레임 필요).`,description:`마지막 프레임 이미지 설명`},"button.generate":{message:`생성`,description:`생성 버튼`},"button.upload":{message:`업로드`,description:`업로드 버튼`},"button.download":{message:`다운로드`,description:`다운로드 버튼`},"button.on":{message:`켜기`,description:`스위치 켜기 문구`},"button.off":{message:`끄기`,description:`스위치 끄기 문구`},"message.startingTask":{message:`SeeDance 작업을 시작하는 중…`,description:`작업 시작 알림`},"message.startTaskSuccess":{message:`작업이 시작되었습니다`,description:`작업 시작 성공 알림`},"message.startTaskFailed":{message:`시작 실패:`,description:`작업 시작 실패 알림`},"message.usedUp":{message:`할당량이 소진되었습니다`,description:`할당량 소진 알림`},"message.uploadExceed":{message:`최대 1장의 이미지만 업로드할 수 있습니다`,description:`업로드 초과 알림`},"name.required":{message:`필수`,description:`필수 항목 표시`},"message.modelUnsupported":{message:`선택한 모델은 지원되지 않습니다.`,description:`지원되지 않는 모델 경고`},"message.modelRequiresImage":{message:`이 모델은 첫 프레임 이미지가 필요합니다.`,description:`이미지가 필요한 모델 경고`},"message.modelRejectsImage":{message:`이 모델은 텍스트 전용입니다. 업로드한 이미지를 제거하세요.`,description:`텍스트 전용 모델 경고`},"message.resolutionNotSupported":{message:`이 해상도는 현재 모델에서 지원되지 않습니다.`,description:`지원되지 않는 해상도 툴팁`},"message.uploadError":{message:`업로드 실패`,description:`업로드 실패 알림`},"message.downloadVideo":{message:`비디오 다운로드`,description:`비디오 다운로드 알림`},"status.pending":{message:`대기 중`,description:`대기 상태`},"status.processing":{message:`생성 중`,description:`생성 중 상태`},"name.taskId":{message:`작업 ID`,description:`작업 ID 레이블`},"name.traceId":{message:`추적 ID`,description:`추적 ID 레이블`},"name.elapsed":{message:`소요 시간`,description:`작업 소요 시간(초)`},"name.failure":{message:`실패`,description:`실패 레이블`},"name.failureReason":{message:`실패 원인`,description:`실패 원인 레이블`},"name.status":{message:`상태`,description:`상태 레이블`},"name.ratio":{message:`화면 비율`,description:`화면 비율 라벨`},"description.ratio":{message:`출력 영상의 화면 비율을 선택합니다.`,description:`화면 비율 설명`},"description.resolution":{message:`출력 영상의 해상도를 선택합니다.`,description:`영상 해상도 설명`},"ratio.adaptive":{message:`자동`,description:`자동 비율 옵션`},"name.cameraFixed":{message:`카메라 고정`,description:`카메라 고정 스위치 라벨`},"description.cameraFixed":{message:`켜면 영상에서 카메라가 움직이지 않습니다.`,description:`카메라 고정 설명`},"name.seed":{message:`시드`,description:`랜덤 시드 라벨`},"description.seed":{message:`결과 재현을 위한 시드 값. 비워두면 무작위로 생성됩니다.`,description:`랜덤 시드 설명`},"placeholder.seed":{message:`자동`,description:`시드 플레이스홀더`},"model.seedance20Mini":{message:`doubao-seedance-2.0-mini`,description:`SeeDance 2.0 Mini 모델`},"name.referenceImage":{message:`참고 이미지`,description:`참고 주체 이미지 업로드 태그(Seedance 2.0)`},"description.referenceImage":{message:`선택 사항입니다. 구술 비디오에 사용할 참고 주체 이미지를 업로드하세요. Seedance 2.0에서만 지원됩니다.`,description:`참고 이미지 설명`},"name.referenceAudio":{message:`참고 오디오`,description:`참고 오디오 업로드 태그(Seedance 2.0)`},"description.referenceAudio":{message:`선택 사항입니다. 구술(디지털 사람) 비디오 생성을 위해 음성/오디오를 업로드하세요. 참고 이미지를 함께 사용해야 합니다. Seedance 2.0에서만 지원됩니다.`,description:`참고 오디오 설명`},"name.referenceVideo":{message:`참고 비디오`,description:`참고 비디오 업로드 태그(Seedance 2.0)`},"description.referenceVideo":{message:`선택 사항입니다. 참고 비디오를 업로드하세요. Seedance 2.0에서만 지원됩니다.`,description:`참고 비디오 설명`},"message.audioRequiresReferenceImage":{message:`참고 오디오는 참고 이미지(구술 주체)와 함께 사용해야 하므로, 참고 이미지를 함께 업로드하세요.`,description:`오디오를 제공하지만 참고 이미지가 없을 때의 알림`},"name.talking":{message:`Talking mode`,description:`Make the on-screen character speak the lines (talking-head / avatar)`},"description.talking":{message:`When on, your uploaded image is used as the reference subject and the character speaks the lines in your prompt, with audio turned on automatically. Seedance 2.0 series only.`,description:`Talking mode switch hint`},"description.talkingPrompt":{message:`To make the character speak, write: the person in image 1 says "your line" (use straight double quotes).`,description:`Dialogue phrasing hint in talking mode`},"button.insertTemplate":{message:`Insert line template`,description:`Insert dialogue template button`},"template.talkingLine":{message:`the person in image 1 says "your line here"`,description:`Dialogue template text`},"message.talkingRecommendModel":{message:`Lite / Fast models may not speak your lines verbatim; for exact lines use Seedance 2.0 standard or upload a reference audio.`,description:`Talking verbatim-accuracy hint`},"message.talkingRequiresReferenceImage":{message:`Talking mode needs a portrait image as the reference subject. Please upload an image first.`,description:`Warning when talking mode has no reference image`}};export{e as default};
@@ -1 +0,0 @@
1
- var e={"name.seedanceBot":{message:`SeeDance Bot`,description:`Nome del generatore di video SeeDance`},"name.prompt":{message:`Parole chiave`,description:`Parole chiave per generare il video`},"description.prompt":{message:`Descrivi il video che vuoi generare, puoi aggiungere parametri SeeDance (es: --rs 720p --rt 16:9 --dur 5).`,description:`Istruzioni per l'input delle parole chiave`},"placeholder.prompt":{message:`Descrivi il tuo video…`,description:`Segnaposto per le parole chiave`},"name.model":{message:`Modello`,description:`Etichetta per la selezione del modello`},"description.model":{message:`Seleziona la versione del modello SeeDance da utilizzare per la generazione.`,description:`Istruzioni per la selezione del modello`},"placeholder.select":{message:`Seleziona`,description:`Segnaposto per la selezione a discesa`},"name.duration":{message:`Durata`,description:`Etichetta per la selezione della durata del video`},"description.duration":{message:`Durata del video (secondi), da 2 a 12 secondi.`,description:`Istruzioni sulla durata del video`},"name.generateAudio":{message:`Genera audio`,description:`Etichetta per la generazione dell'audio`},"description.generateAudio":{message:`Se attivato, il video includerà audio. Supportato solo dal modello seedance-1.5-pro, costo circa 2 volte.`,description:`Istruzioni per la generazione dell'audio`},"name.resolution":{message:`Risoluzione`,description:`Etichetta per la risoluzione del video`},"model.seedance10pro":{message:`doubao-seedance-1.0-pro`,description:`Modello SeeDance 1.0 Pro`},"model.seedance10proFast":{message:`doubao-seedance-1.0-pro-fast`,description:`Modello SeeDance 1.0 Pro Fast`},"model.seedance15pro":{message:`doubao-seedance-1.5-pro`,description:`Modello SeeDance 1.5 Pro`},"model.seedance20":{message:`doubao-seedance-2.0`,description:`Modello SeeDance 2.0`},"model.seedance20Fast":{message:`doubao-seedance-2.0-fast`,description:`Modello SeeDance 2.0 Fast`},"model.seedance10liteT2v":{message:`doubao-seedance-1.0-lite-t2v`,description:`Modello SeeDance 1.0 Lite T2V`},"model.seedance10liteI2v":{message:`doubao-seedance-1.0-lite-i2v`,description:`Modello SeeDance 1.0 Lite I2V`},"name.serviceTier":{message:`Livello di servizio`,description:`Etichetta per il livello di servizio`},"description.serviceTier":{message:`Livello di elaborazione: default o flex.`,description:`Istruzioni sul livello di servizio`},"serviceTier.default":{message:`default`,description:`Livello predefinito`},"serviceTier.flex":{message:`flex`,description:`Livello flessibile`},"name.returnLastFrame":{message:`Restituisci ultimo fotogramma`,description:`Etichetta per l'interruttore di restituzione dell'ultimo fotogramma`},"description.returnLastFrame":{message:`Se attivato, verrà restituita un'immagine dell'ultimo fotogramma.`,description:`Istruzioni sulla restituzione dell'ultimo fotogramma`},"name.firstFrame":{message:`Immagine del primo fotogramma`,description:`Etichetta per il caricamento dell'immagine del primo fotogramma`},"description.firstFrame":{message:`Facoltativo. Carica un'immagine di riferimento/primo fotogramma.`,description:`Istruzioni sull'immagine del primo fotogramma`},"name.lastFrame":{message:`Immagine dell'ultimo fotogramma`,description:`Etichetta per il caricamento dell'immagine dell'ultimo fotogramma`},"description.lastFrame":{message:`Facoltativo. Carica un'immagine dell'ultimo fotogramma (richiede il primo fotogramma).`,description:`Istruzioni sull'immagine dell'ultimo fotogramma`},"button.generate":{message:`Genera`,description:`Pulsante di generazione`},"button.upload":{message:`Carica`,description:`Pulsante di caricamento`},"button.download":{message:`Scarica`,description:`Pulsante di download`},"button.on":{message:`Acceso`,description:`Testo per l'interruttore acceso`},"button.off":{message:`Spento`,description:`Testo per l'interruttore spento`},"message.startingTask":{message:`Avvio del compito SeeDance…`,description:`Messaggio di avvio del compito`},"message.startTaskSuccess":{message:`Compito avviato`,description:`Messaggio di successo nell'avvio del compito`},"message.startTaskFailed":{message:`Avvio fallito:`,description:`Messaggio di errore nell'avvio del compito`},"message.usedUp":{message:`Quota esaurita`,description:`Messaggio di esaurimento della quota`},"message.uploadExceed":{message:`Puoi caricare solo 1 immagine`,description:`Messaggio di superamento del limite di caricamento`},"name.required":{message:`Required`,description:`Required indicator`},"message.modelUnsupported":{message:`Selected model is not supported. Please pick another.`,description:`Warning when the model is not in the supported list`},"message.modelRequiresImage":{message:`This model requires a first-frame image to generate the video.`,description:`Warning when an image-to-video model lacks an image`},"message.modelRejectsImage":{message:`This model is text-to-video only. Please remove the uploaded image.`,description:`Warning when a text-only model is given an image`},"message.resolutionNotSupported":{message:`This resolution is not supported by the selected model.`,description:`Tooltip when a resolution chip is disabled for the current model`},"message.uploadError":{message:`Caricamento fallito`,description:`Messaggio di errore nel caricamento`},"message.downloadVideo":{message:`Scarica video`,description:`Messaggio per il download del video`},"status.pending":{message:`In coda`,description:`Stato in coda`},"status.processing":{message:`In elaborazione`,description:`Stato in elaborazione`},"name.taskId":{message:`ID compito`,description:`Etichetta per l'ID del compito`},"name.traceId":{message:`ID traccia`,description:`Etichetta per l'ID traccia`},"name.elapsed":{message:`Tempo trascorso`,description:`Tempo impiegato dal compito (secondi)`},"name.failure":{message:`Fallito`,description:`Etichetta di fallimento`},"name.failureReason":{message:`Motivo del fallimento`,description:`Etichetta per il motivo del fallimento`},"name.status":{message:`Stato`,description:`Etichetta per lo stato`},"name.ratio":{message:`Proporzioni`,description:`Etichetta proporzioni`},"description.ratio":{message:`Scegli le proporzioni del video generato.`,description:`Descrizione delle proporzioni`},"description.resolution":{message:`Scegli la risoluzione del video generato.`,description:`Descrizione della risoluzione`},"ratio.adaptive":{message:`Adattivo`,description:`Opzione proporzioni adattive`},"name.cameraFixed":{message:`Camera fissa`,description:`Etichetta camera fissa`},"description.cameraFixed":{message:`Quando attivato, la telecamera resta ferma durante il video.`,description:`Descrizione camera fissa`},"name.seed":{message:`Seme`,description:`Etichetta seme casuale`},"description.seed":{message:`Seme casuale per risultati riproducibili. Lascia vuoto per casuale.`,description:`Descrizione seme casuale`},"placeholder.seed":{message:`Auto`,description:`Segnaposto seme`},"model.seedance20Mini":{message:`doubao-seedance-2.0-mini`,description:`Modello SeeDance 2.0 Mini`},"name.referenceImage":{message:`Immagine di riferimento`,description:`Etichetta di caricamento dell'immagine di riferimento (Seedance 2.0)`},"description.referenceImage":{message:`Facoltativo. Carica un'immagine di riferimento del soggetto, ad esempio il volto per il video di sintesi vocale. Supportato solo da Seedance 2.0.`,description:`Descrizione dell'immagine di riferimento`},"name.referenceAudio":{message:`Audio di riferimento`,description:`Etichetta di caricamento dell'audio di riferimento (Seedance 2.0)`},"description.referenceAudio":{message:`Facoltativo. Carica un audio/voce per generare un video di sintesi vocale (persona digitale), da utilizzare insieme all'immagine di riferimento. Supportato solo da Seedance 2.0.`,description:`Descrizione dell'audio di riferimento`},"name.referenceVideo":{message:`Video di riferimento`,description:`Etichetta di caricamento del video di riferimento (Seedance 2.0)`},"description.referenceVideo":{message:`Facoltativo. Carica un video di riferimento. Supportato solo da Seedance 2.0.`,description:`Descrizione del video di riferimento`},"message.audioRequiresReferenceImage":{message:`L'audio di riferimento deve essere utilizzato con l'immagine di riferimento (soggetto della sintesi vocale), si prega di caricare anche l'immagine di riferimento.`,description:`Messaggio di avviso quando si fornisce audio ma manca l'immagine di riferimento`},"name.talking":{message:`Talking mode`,description:`Make the on-screen character speak the lines (talking-head / avatar)`},"description.talking":{message:`When on, your uploaded image is used as the reference subject and the character speaks the lines in your prompt, with audio turned on automatically. Seedance 2.0 series only.`,description:`Talking mode switch hint`},"description.talkingPrompt":{message:`To make the character speak, write: the person in image 1 says "your line" (use straight double quotes).`,description:`Dialogue phrasing hint in talking mode`},"button.insertTemplate":{message:`Insert line template`,description:`Insert dialogue template button`},"template.talkingLine":{message:`the person in image 1 says "your line here"`,description:`Dialogue template text`},"message.talkingRecommendModel":{message:`Lite / Fast models may not speak your lines verbatim; for exact lines use Seedance 2.0 standard or upload a reference audio.`,description:`Talking verbatim-accuracy hint`},"message.talkingRequiresReferenceImage":{message:`Talking mode needs a portrait image as the reference subject. Please upload an image first.`,description:`Warning when talking mode has no reference image`}};export{e as default};