@acedatacloud/nexior 3.336.1 → 3.336.2

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 (258) hide show
  1. package/dist/assets/{ApiCodeButton-B4l1tVOr.js → ApiCodeButton-Bq1o8E9q.js} +1 -1
  2. package/dist/assets/{Artifacts-C7m89Fr0.js → Artifacts-DgfQULIo.js} +1 -1
  3. package/dist/assets/{AskUserQuestionCard-iKo1J7N9.js → AskUserQuestionCard-C93L5_2u.js} +1 -1
  4. package/dist/assets/{AudioPreview-BYbExLbb.js → AudioPreview-C4JRWMSN.js} +1 -1
  5. package/dist/assets/{Auth-C0k6Vg99.js → Auth-BFMX7_Uq.js} +1 -1
  6. package/dist/assets/{Bare-MagjIu46.js → Bare-D0Ak7AHD.js} +1 -1
  7. package/dist/assets/{BotPlaceholder-C44_0Ntn.js → BotPlaceholder-CWM-26bc.js} +1 -1
  8. package/dist/assets/{BottomFooter-bRCnDtLK.js → BottomFooter-6QXffQ2Z.js} +1 -1
  9. package/dist/assets/{Callback-Dj_c2ZnD.js → Callback-3L-0igJ7.js} +1 -1
  10. package/dist/assets/{CodeSnippet-B0VSWmDE.js → CodeSnippet-D-XnInna.js} +1 -1
  11. package/dist/assets/{Console-CMBegHJD.js → Console-DbtP7Fxb.js} +1 -1
  12. package/dist/assets/{Consumption-D7JkBL3g.js → Consumption-D14USkw2.js} +1 -1
  13. package/dist/assets/{Conversation-jm7SDZvn.js → Conversation-DoqaB0Zi.js} +1 -1
  14. package/dist/assets/{Conversation-DqG4TDJR.js → Conversation-lVJTqwtJ.js} +1 -1
  15. package/dist/assets/{CopyToClipboard-UlK2GDZ1.js → CopyToClipboard-CwUIV3sA.js} +1 -1
  16. package/dist/assets/{Detail-ZJ01nMv0.js → Detail-BVzVfhqH.js} +2 -2
  17. package/dist/assets/{Extra-BiryjQ7i.js → Extra-hwWuRTwa.js} +1 -1
  18. package/dist/assets/{FilePreview-cBuGGbYT.js → FilePreview-B5nFY9Tn.js} +1 -1
  19. package/dist/assets/{Hailuo-V2xxR84v.js → Hailuo-n5ATiIHc.js} +1 -1
  20. package/dist/assets/{History-D4b51CMh.js → History-BEkOF28r.js} +1 -1
  21. package/dist/assets/{ImagePreview-CRW3UHm8.js → ImagePreview-Cod5m2VA.js} +1 -1
  22. package/dist/assets/{ImageWrapper-BIQNX8zb.js → ImageWrapper-CId6JKHn.js} +1 -1
  23. package/dist/assets/{Index-LepB-oJD.js → Index-2IUzu9Rn.js} +1 -1
  24. package/dist/assets/{Index-pO-Ofr6z.js → Index-6T8sbaWK.js} +1 -1
  25. package/dist/assets/{Index-IxXAz5ZE.js → Index-7r4zMu5-.js} +1 -1
  26. package/dist/assets/{Index-DNBejuK6.js → Index-B4DZrPp8.js} +1 -1
  27. package/dist/assets/{Index-DVZbaW0R2.js → Index-B6ntGedy2.js} +1 -1
  28. package/dist/assets/{Index-B3X0oSoo.js → Index-BOO_uk3M.js} +1 -1
  29. package/dist/assets/{Index-wEYp7QgE.js → Index-BRPfXB1_.js} +1 -1
  30. package/dist/assets/{Index-ByZz7vdC2.js → Index-BaYcBC7L2.js} +1 -1
  31. package/dist/assets/{Index-3xKSb83G.js → Index-BflASWc3.js} +1 -1
  32. package/dist/assets/{Index-Dt4DZnvq2.js → Index-BtqDucI72.js} +1 -1
  33. package/dist/assets/{Index-PXGccZdy2.js → Index-C4yN0UPB2.js} +1 -1
  34. package/dist/assets/{Index-CxtxtH1W.js → Index-C8EM8TnU.js} +1 -1
  35. package/dist/assets/{Index-DrCJMP1w2.js → Index-CJw5_-XK2.js} +1 -1
  36. package/dist/assets/{Index-CS-_FUtq.js → Index-CZIZCnwZ.js} +1 -1
  37. package/dist/assets/{Index-DRt6fU6O.js → Index-CbbLiKTl.js} +1 -1
  38. package/dist/assets/{Index-DaahqTQ9.js → Index-Cha6DbFG.js} +1 -1
  39. package/dist/assets/{Index-DrmjPNk0.js → Index-CoTiBFzc.js} +1 -1
  40. package/dist/assets/{Index-DdnexpU62.js → Index-CstmQzWd2.js} +1 -1
  41. package/dist/assets/{Index-7hcg-Yxq.js → Index-CuXfaUEs.js} +1 -1
  42. package/dist/assets/{Index-pIeZW9Wl.js → Index-DFkAyuvy.js} +1 -1
  43. package/dist/assets/{Index-CjW9fRnV.js → Index-DIetY8xU.js} +1 -1
  44. package/dist/assets/{Index-CcrB6emo.js → Index-DKAbvL_q.js} +1 -1
  45. package/dist/assets/{Index-CA0y4eMx.js → Index-Dfpp-oUM.js} +1 -1
  46. package/dist/assets/{Index-CoshymF6.js → Index-DrgyuhDp.js} +1 -1
  47. package/dist/assets/{Index-CGLjTMlm2.js → Index-Dv1o5Cp72.js} +1 -1
  48. package/dist/assets/{Index-Ck8AV1wF.js → Index-ILU9DAEE.js} +1 -1
  49. package/dist/assets/{Index-C5W5mALc.js → Index-SKzfvq-6.js} +1 -1
  50. package/dist/assets/{Index-B-ADQI6r.js → Index-U69WFyLL.js} +1 -1
  51. package/dist/assets/{Index-DUXlDF6h.js → Index-Uy7Cu4Xf.js} +1 -1
  52. package/dist/assets/{Index-CuT0krUz.js → Index-kmWvMBSb.js} +1 -1
  53. package/dist/assets/{Invitees-aJ-MKoye.js → Invitees-uIsBa7T7.js} +1 -1
  54. package/dist/assets/{List-DfksnY8F.js → List-3VXHK7EW.js} +1 -1
  55. package/dist/assets/{List-kdKY47SQ.js → List-Cr-y_WpJ.js} +1 -1
  56. package/dist/assets/{List-DOzth64L.js → List-CroNWYLF.js} +1 -1
  57. package/dist/assets/{LocalTools-Cguxk6HX.js → LocalTools-DVzsO2eB.js} +1 -1
  58. package/dist/assets/{LocalTools-mA4qi1R9.js → LocalTools-D_8c1BvR.js} +1 -1
  59. package/dist/assets/{Main-Chc8vW7j.js → Main-DWPNZ5DY.js} +1 -1
  60. package/dist/assets/{Message-BVyTN4hs.js → Message-CQUdJPxc.js} +1 -1
  61. package/dist/assets/{Model-B3W0Qiqw.js → Model-DBL--_Z5.js} +1 -1
  62. package/dist/assets/{Navigator-DYdlpuiT.js → Navigator-BQdt47O5.js} +3 -3
  63. package/dist/assets/{NotFound-iSjs67y2.js → NotFound-CbYhJPKu.js} +1 -1
  64. package/dist/assets/{Pay-BnL-P72n.js → Pay-CXbGN2v7.js} +1 -1
  65. package/dist/assets/{Player-DE0PLM1u.js → Player-hhpjdSPR.js} +1 -1
  66. package/dist/assets/{Poivelle-D2YwHOKp.js → Poivelle-B6w4Nbyf.js} +1 -1
  67. package/dist/assets/{PromptTextarea-bkyHuBBi.js → PromptTextarea-nhjTRPsO.js} +1 -1
  68. package/dist/assets/{RealtimeCall-Awjw1dRy.js → RealtimeCall-CtrG5Vwb.js} +1 -1
  69. package/dist/assets/ScheduledTasks-CAmGkOIb.css +1 -0
  70. package/dist/assets/ScheduledTasks-KIkUvQio.js +2 -0
  71. package/dist/assets/{Status-BOIkP48G.js → Status-C4_0xDss.js} +1 -1
  72. package/dist/assets/{Subscribe-BdP5FyXB.js → Subscribe-_J7Rx5r2.js} +1 -1
  73. package/dist/assets/{TabSwitcher-QNcJdpZi.js → TabSwitcher-DbDceO09.js} +1 -1
  74. package/dist/assets/{Tts-ChZMPBMS.js → Tts-Gkt6N10i.js} +1 -1
  75. package/dist/assets/{VideoPlayer-CBQ5wjBb.js → VideoPlayer-aMdV9y1d.js} +1 -1
  76. package/dist/assets/{alert-DlbJ70nF.js → alert-CnaTI5Gp.js} +1 -1
  77. package/dist/assets/arrow-down-DNjtO5QK.js +1 -0
  78. package/dist/assets/{arrow-down-wide-narrow-9072-YD_.js → arrow-down-wide-narrow-J9ZgH-Fn.js} +1 -1
  79. package/dist/assets/arrow-left-BS4x-6NF.js +1 -0
  80. package/dist/assets/arrow-right-BxmQtO3q.js +1 -0
  81. package/dist/assets/arrow-up-BF45BAzW.js +1 -0
  82. package/dist/assets/{avatar-Cd7tHiGS.js → avatar-D-vR7c8b.js} +1 -1
  83. package/dist/assets/{basic-gBVraDla.js → basic-BmoZE7VK.js} +1 -1
  84. package/dist/assets/{box-BnmqC9Hb.js → box-LABsHSHx.js} +1 -1
  85. package/dist/assets/{boxes-D9CjHyPy.js → boxes-sA0c12wS.js} +1 -1
  86. package/dist/assets/{brain-BQtF4WyF.js → brain-DYrg6y6L.js} +1 -1
  87. package/dist/assets/{chart-no-axes-combined-C6a3Jfmv.js → chart-no-axes-combined-5KUIHv31.js} +1 -1
  88. package/dist/assets/{chat-4vCG-pBv.js → chat-B1i-91Hg.js} +1 -1
  89. package/dist/assets/{chat-uKODVAmK.js → chat-B4IiEcYC.js} +1 -1
  90. package/dist/assets/{chat-CKt_ulVA.js → chat-BDppmDU5.js} +1 -1
  91. package/dist/assets/{chat-BgGqKHoW.js → chat-BIxlpRpi.js} +1 -1
  92. package/dist/assets/{chat-hE0UxNXN.js → chat-BatAXKUU.js} +1 -1
  93. package/dist/assets/{chat-D6TO-wix.js → chat-C2YcAZkK.js} +1 -1
  94. package/dist/assets/{chat-ClKQCbP7.js → chat-CJh605Lm.js} +1 -1
  95. package/dist/assets/{chat-DgeBaoFP.js → chat-CZF9PzEL.js} +1 -1
  96. package/dist/assets/{chat-CGKSznil.js → chat-Cb7xxU-h.js} +1 -1
  97. package/dist/assets/{chat-DD_RExH8.js → chat-CcmwesQz.js} +1 -1
  98. package/dist/assets/{chat-BGTplTgP.js → chat-CepZtiHg.js} +1 -1
  99. package/dist/assets/{chat-BS0G8LYI.js → chat-DREiTsAX.js} +1 -1
  100. package/dist/assets/{chat-DNwL1QEi.js → chat-DWHuuuOb.js} +1 -1
  101. package/dist/assets/{chat-5DHtfSjs.js → chat-Dg5JEYoj.js} +1 -1
  102. package/dist/assets/{chat-UlncvA7m.js → chat-DwNXuT7R.js} +1 -1
  103. package/dist/assets/{chat-CzCdLTfT.js → chat-FR-O_1-t.js} +1 -1
  104. package/dist/assets/{chat-CYUlxCUP.js → chat-TnJ_kd1I.js} +1 -1
  105. package/dist/assets/{chat-DI0vEBmP.js → chat-eQACM9OR.js} +1 -1
  106. package/dist/assets/{chat-DJPUulFU.js → chat-rg4beUWH.js} +1 -1
  107. package/dist/assets/check-A2pH6W-B.js +1 -0
  108. package/dist/assets/chevron-down-C_RXq_Td.js +1 -0
  109. package/dist/assets/chevron-right-BmgqhijA.js +1 -0
  110. package/dist/assets/circle-check-C39Iopew.js +1 -0
  111. package/dist/assets/clock-CuqZkl7_.js +1 -0
  112. package/dist/assets/{codingBridge-BOLGhVbN.js → codingBridge-iTvEhcgx.js} +1 -1
  113. package/dist/assets/{codingBridgeNotify-Bh5E_WIu.js → codingBridgeNotify-Bps3ubJO.js} +2 -2
  114. package/dist/assets/{coins-D2UaeE3W.js → coins-csoYhKWo.js} +1 -1
  115. package/dist/assets/{collapse-BBdps8Cp.js → collapse-REPDtdUv.js} +1 -1
  116. package/dist/assets/{constants-C45zS9hd.js → constants-B0QZudfQ.js} +1 -1
  117. package/dist/assets/{copy-fPtchUBf.js → copy-CBsZ8p0j.js} +1 -1
  118. package/dist/assets/{createTaskActions-wTIQ_1Hj.js → createTaskActions-B0SEvsac.js} +1 -1
  119. package/dist/assets/{digitalhuman-CxK5rfiO.js → digitalhuman-BsqpR4Gz.js} +1 -1
  120. package/dist/assets/{dollar-sign-C1xhgwfY.js → dollar-sign-UTTUouLz.js} +1 -1
  121. package/dist/assets/{download-C6_Lkc27.js → download-rdeQ51Fr.js} +1 -1
  122. package/dist/assets/{drawer-xHfVA3B7.js → drawer-WJpD3B-h.js} +1 -1
  123. package/dist/assets/{dropdown-CYQeIt3k.js → dropdown-D4yO_NmO.js} +1 -1
  124. package/dist/assets/{dropdown-s7FVCJOU.js → dropdown-DVrNPZkU.js} +1 -1
  125. package/dist/assets/{ellipsis-Bj2fDILI.js → ellipsis-qpFv_XZT.js} +1 -1
  126. package/dist/assets/{esm-BvgKU_ih.js → esm-BeVk5kqq.js} +1 -1
  127. package/dist/assets/esm-BrFoYOX_.js +1 -0
  128. package/dist/assets/{esm-YDO_Ul4a.js → esm-C3u3adz_.js} +3 -3
  129. package/dist/assets/{esm-Ci_LAIiK.js → esm-CNx0Yv1f.js} +1 -1
  130. package/dist/assets/{esm-DHMPJTAz.js → esm-D5Sc5kcr.js} +2 -2
  131. package/dist/assets/{esm-DyVJibwn.js → esm-Y6vqnX5i.js} +1 -1
  132. package/dist/assets/{esm-D8gUqLRy.js → esm-ayy5K5gq.js} +2 -2
  133. package/dist/assets/{external-link-CaRCPH3m.js → external-link-CD09gDkB.js} +1 -1
  134. package/dist/assets/{eye-BMmxz2ya.js → eye-CSx8C1i4.js} +1 -1
  135. package/dist/assets/{file-output-CXhW1Vlg.js → file-output-BvSIxwKu.js} +1 -1
  136. package/dist/assets/{file-text-BYLy-sPD.js → file-text-BO0wmtBS.js} +1 -1
  137. package/dist/assets/{fish-DmJKFFyz.js → fish-puPUUpL6.js} +1 -1
  138. package/dist/assets/{flux-D2HppgI3.js → flux-PUmAU_4X.js} +1 -1
  139. package/dist/assets/{folder-DZT47PmT.js → folder-CgnOt8zL.js} +1 -1
  140. package/dist/assets/gauge-J6ySR-UC.js +1 -0
  141. package/dist/assets/{globe-3iT6oet3.js → globe-QciOpfcX.js} +1 -1
  142. package/dist/assets/{grokvideo-abFDVZBJ.js → grokvideo-DB3wZwMX.js} +1 -1
  143. package/dist/assets/{hailuo-BI6BL6J9.js → hailuo-CvFkoay9.js} +1 -1
  144. package/dist/assets/{headphones-BnsSNzpR.js → headphones-BcS0Iz_J.js} +1 -1
  145. package/dist/assets/{history-CdtMUGT2.js → history-D01TFbTf.js} +1 -1
  146. package/dist/assets/{house-DysWxNX3.js → house-DCO2t6k5.js} +1 -1
  147. package/dist/assets/{i18n-oacXripk.js → i18n-CX3zGsC_.js} +1 -1
  148. package/dist/assets/{image-DTRMQnYU.js → image-Csdrf1Q9.js} +1 -1
  149. package/dist/assets/{index-DqO3RKoH.js → index-CilVeL08.js} +4 -4
  150. package/dist/assets/{index.browser.esm-CY96Hxd1.js → index.browser.esm-Be4Ar_Vr.js} +1 -1
  151. package/dist/assets/{index.es-XDuz6GZk.js → index.es-DOpWnELV.js} +1 -1
  152. package/dist/assets/{info-TLZ25BWo.js → info-beFALQcg.js} +1 -1
  153. package/dist/assets/{input-number-BClb9pco.js → input-number-Cu-ypyye.js} +1 -1
  154. package/dist/assets/{key-round-7qf2d4ub.js → key-round-oXY7iESp.js} +1 -1
  155. package/dist/assets/{kling-DT0ZggG_.js → kling-D8BXWsYi.js} +1 -1
  156. package/dist/assets/{languages-CgpwU7KZ.js → languages-kC83X2jl.js} +1 -1
  157. package/dist/assets/{laptop-DfepbFs_.js → laptop-CJTCzfhy.js} +1 -1
  158. package/dist/assets/{lightbulb-9Lfam6gx.js → lightbulb-Cea3BT4V.js} +1 -1
  159. package/dist/assets/{link-Bq0lkWio.js → link-D8GcdOin.js} +1 -1
  160. package/dist/assets/loader-circle-ThtlXaMq.js +1 -0
  161. package/dist/assets/{luma-Bhdn0_zD.js → luma-DYVsROE2.js} +1 -1
  162. package/dist/assets/{maestro-BW6hX9jy.js → maestro-DDReA6S3.js} +1 -1
  163. package/dist/assets/{maestro-DOHvvowT.js → maestro-hNT6kQ_L.js} +1 -1
  164. package/dist/assets/{mail-BTt4f0LZ.js → mail-8DqAXB5Q.js} +1 -1
  165. package/dist/assets/{message-circle-BtSdY30x.js → message-circle-Vf0L-vAU.js} +1 -1
  166. package/dist/assets/{mic-DylLkdjl.js → mic-EYDQ6u7s.js} +1 -1
  167. package/dist/assets/{midjourney-D4g-dBCy.js → midjourney-D7HF6aEl.js} +1 -1
  168. package/dist/assets/{mobileLocalExec-00PZAOE8.js → mobileLocalExec-DRrShWMw.js} +2 -2
  169. package/dist/assets/{mouse-pointer-2-GULNpi4q.js → mouse-pointer-2-tkbwXli2.js} +1 -1
  170. package/dist/assets/music-2-CVK69gUU.js +1 -0
  171. package/dist/assets/{nanobanana-B3T8V1hX.js → nanobanana-6Jil3yid.js} +1 -1
  172. package/dist/assets/{omni-k14fnhha.js → omni-CdOEP84p.js} +1 -1
  173. package/dist/assets/{openaiimage-Bd9BkP3f.js → openaiimage-BwfRCt5g.js} +1 -1
  174. package/dist/assets/{pagination-CeYQWqTe.js → pagination-Vp5X9f7J.js} +1 -1
  175. package/dist/assets/{pagination-XVsSjZIU.js → pagination-hGuMVaBt.js} +1 -1
  176. package/dist/assets/{palette-D8WDZIQ6.js → palette-C8Ap_kW7.js} +1 -1
  177. package/dist/assets/{paperclip-BljsVJv_.js → paperclip-DkvhOwZa.js} +1 -1
  178. package/dist/assets/{pause-BeFeR6SN.js → pause-kKFHkNIN.js} +1 -1
  179. package/dist/assets/{pencil-DAHD3MGa.js → pencil-CASuP2Rf.js} +1 -1
  180. package/dist/assets/{pika-D8TvnsSN.js → pika-CvWSlBUj.js} +1 -1
  181. package/dist/assets/{pixverse-COT6HNBd.js → pixverse-j1hKrmi0.js} +1 -1
  182. package/dist/assets/play-BYjGIlmB.js +1 -0
  183. package/dist/assets/plus-CWxdCnNi.js +1 -0
  184. package/dist/assets/{poivelle-DPHMM_nd.js → poivelle-i79xfqm7.js} +1 -1
  185. package/dist/assets/{popover-C1MUt-sq.js → popover-221rYZfL.js} +1 -1
  186. package/dist/assets/{producer-Clgne1rR.js → producer-DmbQhMMp.js} +1 -1
  187. package/dist/assets/{qrart-Cw5rgoVv.js → qrart-Bhy29Vds.js} +1 -1
  188. package/dist/assets/{realtime-B3Ym4V7w.js → realtime-BfIK-QMv.js} +1 -1
  189. package/dist/assets/{refresh-cw-CORK6QMI.js → refresh-cw-Bk6O06_R.js} +1 -1
  190. package/dist/assets/rotate-ccw-BNKCvb2e.js +1 -0
  191. package/dist/assets/rotate-cw-CAq1NqJ5.js +1 -0
  192. package/dist/assets/{row-CyazZ63X.js → row-D7BfMIZB.js} +1 -1
  193. package/dist/assets/search-DbGZIgzA.js +1 -0
  194. package/dist/assets/{seedance-ftho0Cab.js → seedance-kLNHaRR1.js} +1 -1
  195. package/dist/assets/{seedream-C7OYor2M.js → seedream-BSGuGmgp.js} +1 -1
  196. package/dist/assets/{select-Ahh1HtiI.js → select-C1DRhWnC.js} +1 -1
  197. package/dist/assets/{serp-BAur_r7x.js → serp--Y_jbAC2.js} +1 -1
  198. package/dist/assets/{shield-pXoBoWKG.js → shield-BqheksGZ.js} +1 -1
  199. package/dist/assets/{shuffle-DYxLUWPX.js → shuffle-CC-mkWxC.js} +1 -1
  200. package/dist/assets/{slider-oG7zTf6G.js → slider-B0XWCQ-9.js} +1 -1
  201. package/dist/assets/{sliders-horizontal-C1Mpn9mt.js → sliders-horizontal-B_GbFRLT.js} +1 -1
  202. package/dist/assets/{solana-wallets-DZUKVi2b.js → solana-wallets-DLfRfPbT.js} +2 -2
  203. package/dist/assets/{solana-wallets-vue-Bc9dzzHl.js → solana-wallets-vue-CIzcFVaZ.js} +1 -1
  204. package/dist/assets/{sora-CR0H6Q0o.js → sora-BeO7QhCK.js} +1 -1
  205. package/dist/assets/{sparkles-BazFXY9U.js → sparkles-YDxvQ-9c.js} +1 -1
  206. package/dist/assets/square-Cs06den0.js +1 -0
  207. package/dist/assets/{suno-aCu9Hrh8.js → suno-wNkURL1W.js} +1 -1
  208. package/dist/assets/{switch-BRhNWQBv.js → switch-D8nKhRhq.js} +1 -1
  209. package/dist/assets/{table-DD9gDMtN.js → table-DxVjaIcd.js} +1 -1
  210. package/dist/assets/{tabs-Qw07hKJ5.js → tabs-YP0EqXmu.js} +1 -1
  211. package/dist/assets/{tag-DuHozyIF.js → tag-Dkb23AYB.js} +1 -1
  212. package/dist/assets/{taskDrawerMixin-DD5y0W4q.js → taskDrawerMixin-BYiVGM2q.js} +1 -1
  213. package/dist/assets/terminal-CRDBMxuc.js +1 -0
  214. package/dist/assets/{time-picker-WD99cn3x.js → time-picker-CXfQUV9w.js} +1 -1
  215. package/dist/assets/{tooltip-CWf3RfDZ.js → tooltip-BUeFXdRV.js} +1 -1
  216. package/dist/assets/{trash-2-CYUFgSIW.js → trash-2-BAYs4oSn.js} +1 -1
  217. package/dist/assets/{triangle-alert-C0xzbNpO.js → triangle-alert-9bHZRjQO.js} +1 -1
  218. package/dist/assets/{upload-DjXw6Rtx.js → upload-V9clb5xP.js} +1 -1
  219. package/dist/assets/{upload-Tb1Jm-HV.js → upload-wp-jhKLk.js} +1 -1
  220. package/dist/assets/user-DvgRuHEX.js +1 -0
  221. package/dist/assets/{veo-pyIdrCwz.js → veo-Do9feL6s.js} +1 -1
  222. package/dist/assets/{video-DNJWM6rT.js → video-DZNPrA83.js} +1 -1
  223. package/dist/assets/{volume-2-Cm44Sohp.js → volume-2-1yR3u5wq.js} +1 -1
  224. package/dist/assets/{wallet-DO9-OGI8.js → wallet-C33D5O5S.js} +1 -1
  225. package/dist/assets/{wan-BVCgN14M.js → wan-CSsIXOV3.js} +1 -1
  226. package/dist/assets/{wand-sparkles-DYow-1ZH.js → wand-sparkles-CWJ7w1RN.js} +1 -1
  227. package/dist/assets/{web-Rm3Qia_u.js → web-BQkcFqbx.js} +1 -1
  228. package/dist/assets/{web-CAGRzgHb.js → web-Bu6Ec0cU.js} +1 -1
  229. package/dist/assets/{web-BjXxW3pG.js → web-DNF7iwc5.js} +1 -1
  230. package/dist/assets/{web-Cb7qSPfu.js → web-DgohKYQJ.js} +1 -1
  231. package/dist/assets/{web-BaaqEdcZ.js → web-dS0trZA-.js} +1 -1
  232. package/dist/assets/{webextrator-j6UOnkgo.js → webextrator-CUYGceze.js} +1 -1
  233. package/dist/assets/{zap-BiFSDO6A.js → zap-DspE4dgC.js} +1 -1
  234. package/dist/index.html +3 -3
  235. package/package.json +1 -1
  236. package/dist/assets/ScheduledTasks-CcwR9n4c.js +0 -2
  237. package/dist/assets/ScheduledTasks-DGIsLmDx.css +0 -1
  238. package/dist/assets/arrow-down-DamfD3bh.js +0 -1
  239. package/dist/assets/arrow-left-D9daoc-O.js +0 -1
  240. package/dist/assets/arrow-right-CAU0_rYv.js +0 -1
  241. package/dist/assets/arrow-up-uKzSHEUb.js +0 -1
  242. package/dist/assets/check-Cc-gtMK9.js +0 -1
  243. package/dist/assets/chevron-down-5l02buns.js +0 -1
  244. package/dist/assets/chevron-right-BJjM2BPw.js +0 -1
  245. package/dist/assets/circle-check-CVci65aA.js +0 -1
  246. package/dist/assets/clock-Zko38AEz.js +0 -1
  247. package/dist/assets/esm-DZqbl0IO.js +0 -1
  248. package/dist/assets/gauge-TOoz29Pt.js +0 -1
  249. package/dist/assets/loader-circle-BfC4dqBW.js +0 -1
  250. package/dist/assets/music-2-in3kjurP.js +0 -1
  251. package/dist/assets/play-C9EcgCez.js +0 -1
  252. package/dist/assets/plus-B9ZI1sUd.js +0 -1
  253. package/dist/assets/rotate-ccw-RuQy-Dd3.js +0 -1
  254. package/dist/assets/rotate-cw-Dq-JDoxI.js +0 -1
  255. package/dist/assets/search-DrSfiz8p.js +0 -1
  256. package/dist/assets/square-DK7CrPHW.js +0 -1
  257. package/dist/assets/terminal-CVTwU1By.js +0 -1
  258. package/dist/assets/user-CGRKXtHA.js +0 -1
@@ -1 +1 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{r as y,t as b}from"./select-Ahh1HtiI.js";import{t as x}from"./upload-DjXw6Rtx.js";import{t as S}from"./tooltip-CWf3RfDZ.js";import{t as C}from"./alert-DlbJ70nF.js";import{n as w,r as T}from"./radio-DgDgyT2l.js";import{t as E}from"./drawer-xHfVA3B7.js";import{t as D}from"./slider-oG7zTf6G.js";import{t as O}from"./switch-BRhNWQBv.js";import{n as k}from"./taskDrawerMixin-DD5y0W4q.js";import{t as A}from"./clock-Zko38AEz.js";import{t as j}from"./external-link-CaRCPH3m.js";import{r as M,t as N}from"./PromptTextarea-bkyHuBBi.js";import{t as P}from"./info-TLZ25BWo.js";import{t as F}from"./message-circle-BtSdY30x.js";import{t as I}from"./sparkles-BazFXY9U.js";import{t as ee}from"./trash-2-CYUFgSIW.js";import{t as L}from"./triangle-alert-C0xzbNpO.js";import{t as R}from"./upload-Tb1Jm-HV.js";import{t as z}from"./wand-sparkles-DYow-1ZH.js";import{Ci as B,Si as te,bi as ne,xi as re,yi as ie}from"./constants-C45zS9hd.js";import{Bt as V,E as H,Fi as U,Ht as W,Jn as G,Kt as K,Ut as q,Vt as J,Wi as Y,Wt as ae,ai as X,bi as oe,ci as se,fr as ce,tn as le,wi as ue,xi as Z,yi as de,yr as fe}from"./index-DqO3RKoH.js";import{t as pe}from"./CopyToClipboard-UlK2GDZ1.js";import{t as me}from"./Status-BOIkP48G.js";import{t as he}from"./ImagePreview-CRW3UHm8.js";import{t as ge}from"./Consumption-D7JkBL3g.js";import{a as Q,n as _e,r as ve,t as ye}from"./pagination-XVsSjZIU.js";import{t as be}from"./ApiCodeButton-B4l1tVOr.js";import{t as xe}from"./BotPlaceholder-C44_0Ntn.js";import{t as Se}from"./ImageWrapper-BIQNX8zb.js";var Ce=de(`sprout`,[[`path`,{d:`M14 9.536V7a4 4 0 0 1 4-4h1.5a.5.5 0 0 1 .5.5V5a4 4 0 0 1-4 4 4 4 0 0 0-4 4c0 2 1 3 1 5a5 5 0 0 1-1 3`,key:`139s4v`}],[`path`,{d:`M4 9a5 5 0 0 1 8 4 5 5 0 0 1-8-4`,key:`1dlkgp`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]),we=v({name:`LayoutQrart`,components:{MagicIcon:z,ElDrawer:E,ElButton:U},mixins:[k]}),Te={class:`main flex flex-row flex-1`},Ee={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},De={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Oe(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,Te,[e(`div`,Ee,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,De,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[_,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var ke=H(we,[[`render`,Oe],[`__scopeId`,`data-v-b6a1bb95`]]),Ae=v({name:`VersionSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{label:this.$t(`qrart.type.text`),value:`text`},{label:this.$t(`qrart.type.link`),value:`link`},{label:this.$t(`qrart.type.email`),value:`email`},{label:this.$t(`qrart.type.phone`),value:`phone`},{label:this.$t(`qrart.type.sms`),value:`sms`}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.type},set(e){console.debug(`set type`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,type:e})}}},mounted(){this.value||=(console.debug(`set default type`,B),B)}}),je={class:`field`},Me={class:`text-sm font-bold title`};function Ne(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,je,[e(`span`,Me,i(t.$t(`qrart.name.type`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`qrart.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Pe=H(Ae,[[`render`,Ne],[`__scopeId`,`data-v-b4bd8f04`]]),Fe=v({name:`AspectRatioSelector`,data(){return{options:[{value:`1:1`,label:`1:1`,width:30,height:30},{value:`4:3`,label:`4:3`,width:32,height:24},{value:`3:4`,label:`3:4`,width:24,height:32},{value:`16:9`,label:`16:9`,width:32,height:18},{value:`9:16`,label:`9:16`,width:18,height:32}]}},computed:{active(){return this.options.findIndex(e=>e.value===String(this.value))||0},value:{get(){return this.$store.state.qrart?.config?.aspect_ratio},set(e){console.debug(`set aspect ratio`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,aspect_ratio:e})}}},mounted(){this.value||=`1:1`}}),Ie={class:`text-sm font-bold block mb-2`},Le={class:`items`},Re=[`onClick`],ze={class:`name`};function Be(t,r,a,o,l,u){return g(),s(`div`,null,[e(`span`,Ie,i(t.$t(`qrart.name.aspectRatio`)),1),e(`div`,Le,[(g(!0),s(c,null,h(t.options,(r,a)=>(g(),s(`div`,{key:a,class:n({active:t.active===a,item:!0}),onClick:e=>t.value=r.value},[e(`div`,{class:n([`preview`,r.label])},[e(`div`,{class:`rect`,style:m({width:r.width+`px`,height:r.height+`px`})},null,4)],2),e(`p`,ze,i(r.label),1)],10,Re))),128))])])}var Ve=H(Fe,[[`render`,Be],[`__scopeId`,`data-v-b7590ecc`]]),He=v({name:`QrwSelector`,components:{ElSlider:D,InfoIcon:Q},computed:{value:{get(){return this.$store.state.qrart?.config?.qrw||2},set(e){console.debug(`set qrw`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,qrw:e})}}},mounted(){this.value||=(console.debug(`set default qrw`),2)}}),Ue={class:`field`},We={class:`text-sm font-bold title mb-2`};function Ge(t,n,r,o,c,u){let d=l(`el-slider`),f=l(`info-icon`);return g(),s(`div`,Ue,[e(`span`,We,i(t.$t(`qrart.name.qrw`)),1),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:1.5,max:3,step:.1,class:`value`},null,8,[`modelValue`]),a(f,{content:t.$t(`qrart.description.qrw`),class:`info`},null,8,[`content`])])}var Ke=H(He,[[`render`,Ge],[`__scopeId`,`data-v-8410479c`]]),qe=v({name:`StepsSelector`,components:{ElSlider:D,InfoIcon:Q},computed:{value:{get(){return this.$store.state.qrart?.config?.steps||20},set(e){console.debug(`set steps`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,steps:e})}}},mounted(){this.value||=(console.debug(`set default steps`,20),20)}}),Je={class:`field`},Ye={class:`text-sm font-bold block mb-2`};function Xe(t,n,r,o,c,u){let d=l(`el-slider`),f=l(`info-icon`);return g(),s(`div`,Je,[e(`span`,Ye,i(t.$t(`qrart.name.steps`)),1),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:10,max:20,step:1,class:`value`},null,8,[`modelValue`]),a(f,{content:t.$t(`qrart.description.steps`),class:`info`},null,8,[`content`])])}var Ze=H(qe,[[`render`,Xe],[`__scopeId`,`data-v-0c88983e`]]),Qe=v({name:`AdvancedSelector`,components:{ElSwitch:O},computed:{value:{get(){return this.$store.state.qrart?.config?.advanced},set(e){console.debug(`set advanced`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,advanced:e})}}},mounted(){this.value===void 0&&(this.value=!1)}}),$e={class:`field`},et={class:`title font-bold`};function tt(t,n,r,o,c,u){let d=l(`el-switch`);return g(),s(`div`,$e,[e(`span`,et,i(t.$t(`qrart.name.advanced`)),1),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])}var nt=H(Qe,[[`render`,tt],[`__scopeId`,`data-v-f8ddf849`]]),rt=v({name:`MarkerShapeSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`square`,label:this.$t(`qrart.markerShape.square`)},{value:`circle`,label:this.$t(`qrart.markerShape.circle`)},{value:`plus`,label:this.$t(`qrart.markerShape.plus`)},{value:`box`,label:this.$t(`qrart.markerShape.box`)},{value:`octagon`,label:this.$t(`qrart.markerShape.octagon`)},{value:`tiny-plus`,label:this.$t(`qrart.markerShape.tinyPlus`)},{value:`random`,label:this.$t(`qrart.markerShape.random`)}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.marker_shape},set(e){console.debug(`set marker_shape`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,marker_shape:e})}}},mounted(){this.value||=ie}}),it={class:`field`},at={class:`text-sm font-bold block mb-2`};function ot(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,it,[e(`span`,at,i(t.$t(`qrart.name.markerShape`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.markerShape`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var st=H(rt,[[`render`,ot],[`__scopeId`,`data-v-de71e0b0`]]),ct=v({name:`SubMarkerSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`square`,label:this.$t(`qrart.subMarker.square`)},{value:`circle`,label:this.$t(`qrart.subMarker.circle`)},{value:`plus`,label:this.$t(`qrart.subMarker.plus`)},{value:`box`,label:this.$t(`qrart.subMarker.box`)},{value:`random`,label:this.$t(`qrart.subMarker.random`)}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.sub_marker},set(e){console.debug(`set sub_marker`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,sub_marker:e})}}},mounted(){this.value||=te}}),lt={class:`field`},ut={class:`text-sm font-bold block mb-2`};function dt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,lt,[e(`span`,ut,i(t.$t(`qrart.name.subMarker`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.subMarker`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var ft=H(ct,[[`render`,dt],[`__scopeId`,`data-v-51a39efa`]]),pt=v({name:`RotateSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:0,label:0},{value:90,label:90},{value:180,label:180},{value:270,label:270}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.rotate},set(e){console.debug(`set rotate`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,rotate:e})}}},mounted(){this.value||=0}}),mt={class:`field`},ht={class:`text-sm font-bold block mb-2`};function gt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,mt,[e(`span`,ht,i(t.$t(`qrart.name.rotate`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.rotate`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var _t=H(pt,[[`render`,gt],[`__scopeId`,`data-v-72e35835`]]),vt=v({name:`EclSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`L`,label:`L`},{value:`M`,label:`M`},{value:`Q`,label:`Q`},{value:`H`,label:`H`}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.ecl},set(e){console.debug(`set ecl`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,ecl:e})}}},mounted(){this.value||=`H`}}),yt={class:`field`},bt={class:`text-sm font-bold block mb-2`};function xt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,yt,[e(`span`,bt,i(t.$t(`qrart.name.ecl`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.ecl`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var St=H(vt,[[`render`,xt],[`__scopeId`,`data-v-b3a5e331`]]),Ct=v({name:`MarkerShapeSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`center`,label:this.$t(`qrart.position.center`)},{value:`top`,label:this.$t(`qrart.position.top`)},{value:`right`,label:this.$t(`qrart.position.right`)},{value:`bottom`,label:this.$t(`qrart.position.bottom`)},{value:`left`,label:this.$t(`qrart.position.left`)},{value:`top-left`,label:this.$t(`qrart.position.topLeft`)},{value:`top-right`,label:this.$t(`qrart.position.topRight`)},{value:`bottom-left`,label:this.$t(`qrart.position.bottomLeft`)},{value:`bottom-right`,label:this.$t(`qrart.position.bottomRight`)}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.position},set(e){console.debug(`set position`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,position:e})}}},mounted(){this.value||=re}}),wt={class:`field`},Tt={class:`title font-bold`};function Et(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,wt,[e(`span`,Tt,i(t.$t(`qrart.name.position`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.position`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Dt=H(Ct,[[`render`,Et],[`__scopeId`,`data-v-54186505`]]),Ot=v({name:`PaddingLevelSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:0,label:0},{value:5,label:5},{value:10,label:10},{value:10,label:10},{value:15,label:15},{value:20,label:20}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.padding_level},set(e){console.debug(`set padding_level`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,padding_level:e})}}},mounted(){this.value||=5}}),kt={class:`field`},At={class:`text-sm font-bold block mb-2`};function jt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,kt,[e(`span`,At,i(t.$t(`qrart.name.paddingLevel`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.paddingLevel`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Mt=H(Ot,[[`render`,jt],[`__scopeId`,`data-v-49d801fd`]]),Nt=v({name:`PaddingNoiseSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:0,label:0},{value:.25,label:.25},{value:.5,label:.5},{value:.75,label:.75},{value:1,label:1}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.padding_noise},set(e){console.debug(`set padding_noise`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,padding_noise:e})}}},mounted(){this.value||=0}}),Pt={class:`field`},Ft={class:`text-sm font-bold block mb-2`};function It(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Pt,[e(`span`,Ft,i(t.$t(`qrart.name.paddingNoise`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.paddingNoise`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Lt=H(Nt,[[`render`,It],[`__scopeId`,`data-v-a20833bb`]]),Rt=v({name:`PixelStyleSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`square`,label:this.$t(`qrart.pixelStyle.square`)},{value:`rounded`,label:this.$t(`qrart.pixelStyle.rounded`)},{value:`dot`,label:this.$t(`qrart.pixelStyle.dot`)},{value:`squircle`,label:this.$t(`qrart.pixelStyle.squircle`)},{value:`row`,label:this.$t(`qrart.pixelStyle.row`)},{value:`column`,label:this.$t(`qrart.pixelStyle.column`)}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.pixel_style},set(e){console.debug(`set pixel_style`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,pixel_style:e})}}},mounted(){this.value||=ne}}),zt={class:`field`},Bt={class:`text-sm font-bold block mb-2`};function Vt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,zt,[e(`span`,Bt,i(t.$t(`qrart.name.pixelStyle`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.pixelStyle`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ht=H(Rt,[[`render`,Vt],[`__scopeId`,`data-v-aca7f79f`]]),Ut=v({name:`SeedInput`,components:{ElInput:Y},data(){return{}},computed:{value:{get(){return this.$store.state.qrart?.config?.seed},set(e){console.debug(`set seed`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,seed:e?parseInt(e):void 0})}}},mounted(){this.value||=void 0}}),Wt={class:`field`},Gt={class:`text-sm font-bold block mb-2`};function Kt(t,n,r,o,c,u){let d=l(`el-input`);return g(),s(`div`,Wt,[e(`span`,Gt,i(t.$t(`qrart.name.seed`)),1),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`qrart.placeholder.seed`)},null,8,[`modelValue`,`placeholder`])])}var qt=H(Ut,[[`render`,Kt],[`__scopeId`,`data-v-d939305d`]]),Jt=v({name:`PresetSelector`,components:{ElImage:ue},data(){return{options:[{value:`sunset`,label:this.$t(`qrart.preset.sunset`),url:`https://cdn.acedata.cloud/rp1h1s.png`},{value:`floral`,label:this.$t(`qrart.preset.floral`),url:`https://cdn.acedata.cloud/upyikx.png`},{value:`snowflakes`,label:this.$t(`qrart.preset.snowflakes`),url:`https://cdn.acedata.cloud/j447da.png`},{value:`feathers`,label:this.$t(`qrart.preset.feathers`),url:`https://cdn.acedata.cloud/d2ctz9.png`},{value:`raindrops`,label:this.$t(`qrart.preset.raindrops`),url:`https://cdn.acedata.cloud/xv2t3s.png`},{value:`ultra-realism`,label:this.$t(`qrart.preset.ultraRealism`),url:`https://cdn.acedata.cloud/nlor4y.png`},{value:`epic-realms`,label:this.$t(`qrart.preset.epicRealms`),url:`https://cdn.acedata.cloud/wwzkvy.png`},{value:`intricate-studio`,label:this.$t(`qrart.preset.intricateStudio`),url:`https://cdn.acedata.cloud/4kzf5y.png`},{value:`symmetric-masterpiece`,label:this.$t(`qrart.preset.symmetricMasterpiece`),url:`https://cdn.acedata.cloud/ff4ii2.png`},{value:`luminous-highway`,label:this.$t(`qrart.preset.luminousHighway`),url:`https://cdn.acedata.cloud/cliodt.png`},{value:`celestial-journey`,label:this.$t(`qrart.preset.celestialJourney`),url:`https://cdn.acedata.cloud/ejellf.png`},{value:`neon-mech`,label:this.$t(`qrart.preset.neonMech`),url:`https://cdn.acedata.cloud/3z0y6z.png`},{value:`ethereal-low-poly`,label:this.$t(`qrart.preset.etherealLowPoly`),url:`https://cdn.acedata.cloud/36o0mm.png`},{value:`golden-vista`,label:this.$t(`qrart.preset.goldenVista`),url:`https://cdn.acedata.cloud/xa0267.png`},{value:`cinematic-expanse`,label:this.$t(`qrart.preset.cinematicExpanse`),url:`https://cdn.acedata.cloud/krl5qp.png`},{value:`cinematic-warm`,label:this.$t(`qrart.preset.cinematicWarm`),url:`https://cdn.acedata.cloud/e1aahg.png`},{value:`desolate-wilderness`,label:this.$t(`qrart.preset.desolateWilderness`),url:`https://cdn.acedata.cloud/9evqqu.png`},{value:`vibrant-palette`,label:this.$t(`qrart.preset.vibrantPalette`),url:`https://cdn.acedata.cloud/3fvsmz.png`},{value:`enigmatic-journey`,label:this.$t(`qrart.preset.enigmaticJourney`),url:`https://cdn.acedata.cloud/l6kku0.png`},{value:`timeless-cinematic`,label:this.$t(`qrart.preset.timelessCinematic`),url:`https://cdn.acedata.cloud/h5mzyn.png`},{value:`regal-galaxy`,label:this.$t(`qrart.preset.regalGalaxy`),url:`https://cdn.acedata.cloud/czkegd.png`},{value:`illustrious-canvas`,label:this.$t(`qrart.preset.illustriousCanvas`),url:`https://cdn.acedata.cloud/m8hwzh.png`},{value:`expressive-mural`,label:this.$t(`qrart.preset.expressiveMural`),url:`https://cdn.acedata.cloud/g4v1rb.png`},{value:`serene-haze`,label:this.$t(`qrart.preset.sereneHaze`),url:`https://cdn.acedata.cloud/3w3ixr.png`}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.preset},set(e){console.debug(`set qrw`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,preset:e})}}},mounted(){this.value||=``}}),Yt={class:`field`},Xt={class:`text-sm font-bold block mb-2`},Zt={class:`pane`},Qt=[`onClick`],$t={class:`name`};function en(t,r,o,u,d,f){let p=l(`el-image`);return g(),s(`div`,Yt,[e(`span`,Xt,i(t.$t(`qrart.name.preset`)),1),e(`div`,Zt,[(g(!0),s(c,null,h(t.options,(r,o)=>(g(),s(`div`,{key:o,class:n({item:!0,active:t.value===r.value}),onClick:e=>t.value===r.value?t.value=void 0:t.value=r.value},[a(p,{src:r.url,fit:`fill`,class:`preview`},null,8,[`src`]),e(`span`,$t,i(r.label),1)],10,Qt))),128))])])}var tn=H(Jt,[[`render`,en],[`__scopeId`,`data-v-65c34adf`]]),nn=v({name:`ContentInput`,components:{UploadIcon:R,ElInput:Y,ElUpload:x,ElRadioGroup:T,ElButton:U,ElRadioButton:w,ImagePreview:he},mixins:[ae,q,J],data(){return{inputWay:`input`,fileList:[],uploadUrl:se()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.qrart?.config?.content},set(e){this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,content:e,content_image_url:void 0})}}},mounted(){this.value||=``,this.onSetContentImageUrl()},methods:{onExceed(){Z.warning(this.$t(`qrart.message.uploadDocumentsExceed`))},onError(){Z.error(this.$t(`qrart.message.uploadDocumentsError`))},onSetContentImageUrl(){let e=this.urls?.[0];this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,content:void 0,content_image_url:e})},async onSuccess(){this.onSetContentImageUrl()}}}),rn={class:`field`},an={class:`flex justify-between items-center mb-4`},on={class:`text-sm font-bold title`},sn={class:`flex items-center`},cn={key:2,class:`description`};function ln(t,n,c,u,d,m){let h=l(`el-radio-button`),_=l(`el-radio-group`),v=l(`el-input`),y=l(`image-preview`),b=l(`upload-icon`),x=l(`el-button`),S=l(`el-upload`);return g(),s(`div`,rn,[e(`div`,an,[e(`span`,on,i(t.$t(`qrart.name.content`)),1),e(`div`,sn,[a(_,{modelValue:t.inputWay,"onUpdate:modelValue":n[0]||=e=>t.inputWay=e},{default:p(()=>[a(h,{label:`input`},{default:p(()=>[r(i(t.$t(`qrart.inputWay.input`)),1)]),_:1}),a(h,{label:`upload`},{default:p(()=>[r(i(t.$t(`qrart.inputWay.upload`)),1)]),_:1})]),_:1},8,[`modelValue`])])]),t.inputWay==`input`?(g(),f(v,{key:0,modelValue:t.value,"onUpdate:modelValue":n[1]||=e=>t.value=e,class:`content`,placeholder:t.$t(`qrart.placeholder.content`)},null,8,[`modelValue`,`placeholder`])):o(``,!0),t.inputWay==`upload`?(g(),f(S,{key:1,ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[2]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`upload upload-wrapper`,limit:1,multiple:!1,"list-type":`picture`,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[a(y,{url:e.url||e.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])]),default:p(()=>[a(x,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`qrart.button.uploadQr`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])):o(``,!0),t.inputWay==`upload`?(g(),s(`p`,cn,i(t.$t(`qrart.message.uploadQr`)),1)):o(``,!0)])}var un=H(nn,[[`render`,ln],[`__scopeId`,`data-v-fad0a7db`]]),dn=v({name:`PromptInput`,components:{PromptTextarea:N},computed:{value:{get(){return this.$store.state.qrart?.config?.prompt},set(e){this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,prompt:e})}}},mounted(){this.value||=``}});function fn(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.value,"onUpdate:modelValue":t[0]||=t=>e.value=t,title:e.$t(`qrart.name.prompt`),placeholder:e.$t(`qrart.placeholder.prompt`)},null,8,[`modelValue`,`title`,`placeholder`])}var pn=v({name:`ConfigPanel`,components:{MagicIcon:z,ElButton:U,Consumption:ge,TypeSelector:Pe,PositionSelector:Dt,PixelStyleSelector:Ht,PaddingLevelSelector:Mt,SeedInput:qt,AspectRatioSelector:Ve,QrwSelector:Ke,EclSelector:St,StepsSelector:Ze,PaddingNoiseSelector:Lt,AdvancedSelector:nt,MarkerShapeSelector:st,SubMarkerSelector:ft,RotateSelector:_t,PresetSelector:tn,ContentInput:un,PromptInput:H(dn,[[`render`,fn]])},emits:[`generate`],computed:{config(){return this.$store.state.qrart?.config},consumption(){return K(this.config,this.service?.cost)},service(){return this.$store.state.qrart?.service}}}),mn={class:`flex flex-col h-full`},hn={class:`flex-1 overflow-y-auto p-5`},gn={class:`flex flex-col items-center justify-center px-5 pb-5`};function _n(t,n,c,u,d,m){let h=l(`type-selector`),_=l(`content-input`),v=l(`prompt-input`),y=l(`aspect-ratio-selector`),b=l(`qrw-selector`),x=l(`preset-selector`),S=l(`position-selector`),C=l(`advanced-selector`),w=l(`steps-selector`),T=l(`seed-input`),E=l(`pixel-style-selector`),D=l(`marker-shape-selector`),O=l(`sub-marker-selector`),k=l(`rotate-selector`),A=l(`ecl-selector`),j=l(`padding-level-selector`),M=l(`padding-noise-selector`),N=l(`consumption`),P=l(`magic-icon`),F=l(`el-button`);return g(),s(`div`,mn,[e(`div`,hn,[a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`}),a(S,{class:`mb-4`}),a(C,{class:`mb-4`}),t.config?.advanced?(g(),f(w,{key:0,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(T,{key:1,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(E,{key:2,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(D,{key:3,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(O,{key:4,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(k,{key:5,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(A,{key:6,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(j,{key:7,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(M,{key:8,class:`mb-4`})):o(``,!0)]),e(`div`,gn,[a(N,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(F,{type:`primary`,class:`btn w-full`,round:``,onClick:n[0]||=e=>t.$emit(`generate`)},{default:p(()=>[a(P,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`qrart.button.generate`)),1)]),_:1})])])}var vn=H(pn,[[`render`,_n]]),yn=v({name:`TaskPreview`,components:{ChannelIcon:M,DeleteIcon:ee,ExternalLinkIcon:j,GrowthIcon:Ce,InfoIcon:P,MagicIcon:z,MessageIcon:F,RewardIcon:I,TimeIcon:A,WarningIcon:L,CopyToClipboard:pe,ElAlert:C,ElTooltip:S,ImageWrapper:Se,ApiCodeButton:be},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.qrart?.application}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await oe.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`qrart/deleteTask`,{id:e}),Z.success(this.$t(`common.message.deleteTaskSuccess`))}catch{Z.error(this.$t(`common.message.deleteTaskFailed`))}}},onOpenLink(e){window.open(e,`_blank`)},onReload(e){let t=e.target,n=new URL(t.src),r=n.searchParams.get(`retry`);if(!r)n.searchParams.set(`retry`,`1`);else if(parseInt(r)<2)n.searchParams.set(`retry`,(parseInt(r)+1).toString());else return;t.src=n.toString()},onOpenUrl(e){window.open(e,`_blank`)},onDownload(e){let t=document.createElement(`a`);t.href=e,t.download=e.split(`/`).pop(),t.click()}}}),bn={class:`preview w-full h-fit text-left flex flex-row mb-[15px]`},xn={class:`left`},Sn={class:`main flex-1 w-[calc(100%-70px)] min-w-0 pt-[10px] pr-[10px] pb-0 pl-[10px]`},Cn={class:`bot flex items-center text-[16px] font-bold text-[var(--el-color-primary)] overflow-hidden whitespace-nowrap`},wn={class:`datetime text-[12px] font-normal text-[var(--el-text-color-secondary)] ml-[10px] overflow-hidden text-ellipsis`},Tn=[`aria-label`],En={class:`info`},Dn={key:0,class:`prompt mt-2 text-[14px] font-bold text-[var(--el-text-color-regular)] mb-[10px] overflow-hidden text-ellipsis whitespace-nowrap`},On={key:0},kn={key:0,class:n({content:!0,failed:!0})},An={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},jn={class:`description`},Mn={class:`description`},Nn={key:0,class:`description`},$={key:1,class:`description`},Pn=[`aria-label`,`title`],Fn={key:2,class:`description`},In={key:3,class:`description`},Ln={key:1,class:n({content:!0})},Rn={class:`description`},zn={class:`description`},Bn={key:0,class:`description`},Vn={class:`description`},Hn={key:2,class:n({content:!0})},Un={class:`description`};function Wn(n,c,u,d,m,h){let _=l(`capability-presentation`),v=l(`delete-icon`),y=l(`el-tooltip`),b=l(`image-wrapper`),x=l(`api-code-button`),S=l(`magic-icon`),C=l(`copy-to-clipboard`),w=l(`reward-icon`),T=l(`message-icon`),E=l(`external-link-icon`),D=l(`growth-icon`),O=l(`time-icon`),k=l(`el-alert`),A=l(`warning-icon`),j=l(`info-icon`),M=l(`channel-icon`);return g(),s(`div`,bn,[e(`div`,xn,[a(_,{capability:`qrart`,part:`avatar`,class:`avatar bg-[var(--el-bg-color)] p-[2px] w-[50px] h-[50px] m-[10px] rounded-full`})]),e(`div`,Sn,[e(`div`,Cn,[a(_,{capability:`qrart`,part:`name`}),e(`span`,wn,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(y,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete ml-auto shrink-0 cursor-pointer border-none bg-transparent p-[4px_6px] leading-none`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Tn)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,En,[n.modelValue?.request?.prompt?(g(),s(`p`,Dn,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(g(),s(`span`,On,` - (`+i(n.$t(`qrart.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?.success===!0?(g(),s(`div`,kn,[n.modelValue?.response?.image_url?(g(),f(b,{key:0,src:n.modelValue?.response?.image_url,"raw-src":n.modelValue?.response?.image_url},null,8,[`src`,`raw-src`])):o(``,!0),e(`div`,An,[a(x,{path:`/qrart/generate`,body:n.modelValue?.request},null,8,[`body`])]),a(k,{closable:!1,class:`mt-2 success`},{default:p(()=>[e(`p`,jn,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,Mn,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.type`))+`: `+i(n.$t(`qrart.type.`+n.modelValue?.request?.type))+` `,1),a(C,{content:n.modelValue?.request?.type,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.request?.content?(g(),s(`p`,Nn,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.content`))+`: `+i(n.modelValue?.request?.content)+` `,1),a(C,{content:n.modelValue?.request?.content,class:`btn-copy`},null,8,[`content`])])):o(``,!0),n.modelValue?.request?.content_image_url?(g(),s(`p`,$,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.contentImageUrl`))+`: `,1),e(`button`,{type:`button`,class:`icon-button mr-1 cursor-pointer`,"aria-label":n.$t(`common.button.view`),title:n.$t(`common.button.view`),onClick:c[1]||=e=>n.onOpenLink(n.modelValue?.request?.content_image_url)},[a(E,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Pn)])):o(``,!0),n.modelValue?.request?.seed||n.modelValue?.response?.seed?(g(),s(`p`,Fn,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.seed`))+`: `+i(n.modelValue?.request?.seed||n.modelValue?.response?.seed)+` `,1),a(C,{content:(n.modelValue?.request?.seed||n.modelValue?.response?.seed).toString(),class:`btn-copy`},null,8,[`content`])])):o(``,!0),n.modelValue?.elapsed?(g(),s(`p`,In,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.success===!1?(g(),s(`div`,Ln,[a(k,{closable:!1,class:`failure`},{template:p(()=>[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.failure`)),1)]),default:p(()=>[e(`p`,Rn,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,zn,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(C,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Bn,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,Vn,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(C,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])]),_:1})])):o(``,!0),n.modelValue?.response?o(``,!0):(g(),s(`div`,Hn,[a(k,{closable:!1,class:`info`},{template:p(()=>[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.failure`)),1)]),default:p(()=>[e(`p`,Un,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var Gn=v({name:`RecentPanel`,components:{TaskPreview:H(yn,[[`render`,Wn],[`__scopeId`,`data-v-87029fb9`]]),BotPlaceholder:xe,NoTasks:ve,ScrollList:_e},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.qrart?.tasks,items:this.$store.state.qrart?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Kn={key:0},qn={key:2,class:`w-full h-full flex items-center justify-center`};function Jn(e,t,n,r,i,u){let d=l(`bot-placeholder`),m=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return g(),s(c,null,[e.tasks?.items===void 0?(g(),s(`div`,Kn,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(g(!0),s(c,null,h(e.tasks?.items,(e,t)=>(g(),f(m,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,qn,[a(v)])):o(``,!0)],64)}var Yn=v({name:`QrartIndex`,components:{ConfigPanel:vn,Layout:ke,ApplicationStatus:me,RecentPanel:H(Gn,[[`render`,Jn]])},mixins:[W],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.qrart?.status?.getApplications===X.Request},tasksLoading(){return this.$store.state.qrart?.status?.getTasks===X.Request||this.fetchingTasks},service(){return this.$store.state.qrart.service},credential(){return this.$store.state.qrart.credential},config(){return this.$store.state.qrart.config},initializing(){return this.$store.state.qrart.status.getApplications===X.Request},needApply(){return this.$store.state.qrart.status.getApplications===X.Success&&!this.application},application(){return this.$store.state.qrart.application},tasks(){return this.$store.state.qrart.tasks},applications(){return this.$store.state.qrart.applications}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ye({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`qrart/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplications`),await this.$store.dispatch(`qrart/getApplications`),console.debug(`end onGetApplications`),await this.onGetTasks()},onApply(){ce.create({application:this.application}).then(({data:e})=>{this.application=e,Z.success(this.$t(`application.message.applySuccessfully`))}).catch(e=>{e?.response?.data?.code===`duplication`&&Z.error(this.$t(`application.message.alreadyApplied`))})},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`qrart/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!V(this.uploadTracker,e=>this.$t(e),e=>Z.warning(e)))return;let e={type:this.config?.type,content:this.config?.content,content_image_url:this.config?.content_image_url,prompt:this.config?.prompt,aspect_ratio:this.config?.aspect_ratio,async:!0,qrw:this.config?.qrw,steps:this.config?.steps,preset:this.config?.preset,...this.config?.advanced?{position:this.config?.position,pixel_style:this.config?.pixel_style,marker_shape:this.config?.marker_shape,sub_marker:this.config?.sub_marker,rotate:this.config?.rotate,ecl:this.config?.ecl,seed:this.config?.seed,padding_level:this.config?.padding_level,padding_noise:this.config?.padding_noise}:{}};if(!le())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}Z.info(this.$t(`qrart.message.startingTask`)),fe(`qrart`,G.generate(e,{token:t})).then(()=>{Z.success(this.$t(`qrart.message.startTaskSuccess`))}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?Z.error(this.$t(`qrart.message.usedUp`)):Z.error(this.$t(`qrart.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Xn(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`application-status`),u=l(`recent-panel`),d=l(`layout`);return g(),f(d,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{initializing:e.initializing,application:e.application,applications:e.applications,service:e.service,"need-apply":e.needApply,class:`mb-4`,onRefresh:e.onGetApplication,onSelect:t[0]||=t=>e.$store.dispatch(`qrart/setApplication`,t)},null,8,[`initializing`,`application`,`applications`,`service`,`need-apply`,`onRefresh`]),a(u,{ref:`recentPanel`,class:`panel recent`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Zn=H(Yn,[[`render`,Xn],[`__scopeId`,`data-v-f87e6eb4`]]);export{Zn as default};
1
+ import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{r as y,t as b}from"./select-C1DRhWnC.js";import{t as x}from"./upload-V9clb5xP.js";import{t as S}from"./tooltip-BUeFXdRV.js";import{t as C}from"./alert-CnaTI5Gp.js";import{n as w,r as T}from"./radio-DgDgyT2l.js";import{t as E}from"./drawer-WJpD3B-h.js";import{t as D}from"./slider-B0XWCQ-9.js";import{t as O}from"./switch-D8nKhRhq.js";import{n as k}from"./taskDrawerMixin-BYiVGM2q.js";import{t as A}from"./clock-CuqZkl7_.js";import{t as j}from"./external-link-CD09gDkB.js";import{r as M,t as N}from"./PromptTextarea-nhjTRPsO.js";import{t as P}from"./info-beFALQcg.js";import{t as F}from"./message-circle-Vf0L-vAU.js";import{t as I}from"./sparkles-YDxvQ-9c.js";import{t as ee}from"./trash-2-BAYs4oSn.js";import{t as L}from"./triangle-alert-9bHZRjQO.js";import{t as R}from"./upload-wp-jhKLk.js";import{t as z}from"./wand-sparkles-CWJ7w1RN.js";import{Ci as B,Si as te,bi as ne,xi as re,yi as ie}from"./constants-B0QZudfQ.js";import{Bt as V,E as H,Fi as U,Ht as W,Jn as G,Kt as K,Ut as q,Vt as J,Wi as Y,Wt as ae,ai as X,bi as oe,ci as se,fr as ce,tn as le,wi as ue,xi as Z,yi as de,yr as fe}from"./index-CilVeL08.js";import{t as pe}from"./CopyToClipboard-CwUIV3sA.js";import{t as me}from"./Status-C4_0xDss.js";import{t as he}from"./ImagePreview-Cod5m2VA.js";import{t as ge}from"./Consumption-D14USkw2.js";import{a as Q,n as _e,r as ve,t as ye}from"./pagination-hGuMVaBt.js";import{t as be}from"./ApiCodeButton-Bq1o8E9q.js";import{t as xe}from"./BotPlaceholder-CWM-26bc.js";import{t as Se}from"./ImageWrapper-CId6JKHn.js";var Ce=de(`sprout`,[[`path`,{d:`M14 9.536V7a4 4 0 0 1 4-4h1.5a.5.5 0 0 1 .5.5V5a4 4 0 0 1-4 4 4 4 0 0 0-4 4c0 2 1 3 1 5a5 5 0 0 1-1 3`,key:`139s4v`}],[`path`,{d:`M4 9a5 5 0 0 1 8 4 5 5 0 0 1-8-4`,key:`1dlkgp`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]),we=v({name:`LayoutQrart`,components:{MagicIcon:z,ElDrawer:E,ElButton:U},mixins:[k]}),Te={class:`main flex flex-row flex-1`},Ee={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},De={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Oe(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,Te,[e(`div`,Ee,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,De,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[_,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var ke=H(we,[[`render`,Oe],[`__scopeId`,`data-v-b6a1bb95`]]),Ae=v({name:`VersionSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{label:this.$t(`qrart.type.text`),value:`text`},{label:this.$t(`qrart.type.link`),value:`link`},{label:this.$t(`qrart.type.email`),value:`email`},{label:this.$t(`qrart.type.phone`),value:`phone`},{label:this.$t(`qrart.type.sms`),value:`sms`}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.type},set(e){console.debug(`set type`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,type:e})}}},mounted(){this.value||=(console.debug(`set default type`,B),B)}}),je={class:`field`},Me={class:`text-sm font-bold title`};function Ne(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,je,[e(`span`,Me,i(t.$t(`qrart.name.type`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`qrart.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Pe=H(Ae,[[`render`,Ne],[`__scopeId`,`data-v-b4bd8f04`]]),Fe=v({name:`AspectRatioSelector`,data(){return{options:[{value:`1:1`,label:`1:1`,width:30,height:30},{value:`4:3`,label:`4:3`,width:32,height:24},{value:`3:4`,label:`3:4`,width:24,height:32},{value:`16:9`,label:`16:9`,width:32,height:18},{value:`9:16`,label:`9:16`,width:18,height:32}]}},computed:{active(){return this.options.findIndex(e=>e.value===String(this.value))||0},value:{get(){return this.$store.state.qrart?.config?.aspect_ratio},set(e){console.debug(`set aspect ratio`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,aspect_ratio:e})}}},mounted(){this.value||=`1:1`}}),Ie={class:`text-sm font-bold block mb-2`},Le={class:`items`},Re=[`onClick`],ze={class:`name`};function Be(t,r,a,o,l,u){return g(),s(`div`,null,[e(`span`,Ie,i(t.$t(`qrart.name.aspectRatio`)),1),e(`div`,Le,[(g(!0),s(c,null,h(t.options,(r,a)=>(g(),s(`div`,{key:a,class:n({active:t.active===a,item:!0}),onClick:e=>t.value=r.value},[e(`div`,{class:n([`preview`,r.label])},[e(`div`,{class:`rect`,style:m({width:r.width+`px`,height:r.height+`px`})},null,4)],2),e(`p`,ze,i(r.label),1)],10,Re))),128))])])}var Ve=H(Fe,[[`render`,Be],[`__scopeId`,`data-v-b7590ecc`]]),He=v({name:`QrwSelector`,components:{ElSlider:D,InfoIcon:Q},computed:{value:{get(){return this.$store.state.qrart?.config?.qrw||2},set(e){console.debug(`set qrw`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,qrw:e})}}},mounted(){this.value||=(console.debug(`set default qrw`),2)}}),Ue={class:`field`},We={class:`text-sm font-bold title mb-2`};function Ge(t,n,r,o,c,u){let d=l(`el-slider`),f=l(`info-icon`);return g(),s(`div`,Ue,[e(`span`,We,i(t.$t(`qrart.name.qrw`)),1),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:1.5,max:3,step:.1,class:`value`},null,8,[`modelValue`]),a(f,{content:t.$t(`qrart.description.qrw`),class:`info`},null,8,[`content`])])}var Ke=H(He,[[`render`,Ge],[`__scopeId`,`data-v-8410479c`]]),qe=v({name:`StepsSelector`,components:{ElSlider:D,InfoIcon:Q},computed:{value:{get(){return this.$store.state.qrart?.config?.steps||20},set(e){console.debug(`set steps`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,steps:e})}}},mounted(){this.value||=(console.debug(`set default steps`,20),20)}}),Je={class:`field`},Ye={class:`text-sm font-bold block mb-2`};function Xe(t,n,r,o,c,u){let d=l(`el-slider`),f=l(`info-icon`);return g(),s(`div`,Je,[e(`span`,Ye,i(t.$t(`qrart.name.steps`)),1),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:10,max:20,step:1,class:`value`},null,8,[`modelValue`]),a(f,{content:t.$t(`qrart.description.steps`),class:`info`},null,8,[`content`])])}var Ze=H(qe,[[`render`,Xe],[`__scopeId`,`data-v-0c88983e`]]),Qe=v({name:`AdvancedSelector`,components:{ElSwitch:O},computed:{value:{get(){return this.$store.state.qrart?.config?.advanced},set(e){console.debug(`set advanced`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,advanced:e})}}},mounted(){this.value===void 0&&(this.value=!1)}}),$e={class:`field`},et={class:`title font-bold`};function tt(t,n,r,o,c,u){let d=l(`el-switch`);return g(),s(`div`,$e,[e(`span`,et,i(t.$t(`qrart.name.advanced`)),1),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])}var nt=H(Qe,[[`render`,tt],[`__scopeId`,`data-v-f8ddf849`]]),rt=v({name:`MarkerShapeSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`square`,label:this.$t(`qrart.markerShape.square`)},{value:`circle`,label:this.$t(`qrart.markerShape.circle`)},{value:`plus`,label:this.$t(`qrart.markerShape.plus`)},{value:`box`,label:this.$t(`qrart.markerShape.box`)},{value:`octagon`,label:this.$t(`qrart.markerShape.octagon`)},{value:`tiny-plus`,label:this.$t(`qrart.markerShape.tinyPlus`)},{value:`random`,label:this.$t(`qrart.markerShape.random`)}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.marker_shape},set(e){console.debug(`set marker_shape`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,marker_shape:e})}}},mounted(){this.value||=ie}}),it={class:`field`},at={class:`text-sm font-bold block mb-2`};function ot(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,it,[e(`span`,at,i(t.$t(`qrart.name.markerShape`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.markerShape`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var st=H(rt,[[`render`,ot],[`__scopeId`,`data-v-de71e0b0`]]),ct=v({name:`SubMarkerSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`square`,label:this.$t(`qrart.subMarker.square`)},{value:`circle`,label:this.$t(`qrart.subMarker.circle`)},{value:`plus`,label:this.$t(`qrart.subMarker.plus`)},{value:`box`,label:this.$t(`qrart.subMarker.box`)},{value:`random`,label:this.$t(`qrart.subMarker.random`)}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.sub_marker},set(e){console.debug(`set sub_marker`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,sub_marker:e})}}},mounted(){this.value||=te}}),lt={class:`field`},ut={class:`text-sm font-bold block mb-2`};function dt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,lt,[e(`span`,ut,i(t.$t(`qrart.name.subMarker`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.subMarker`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var ft=H(ct,[[`render`,dt],[`__scopeId`,`data-v-51a39efa`]]),pt=v({name:`RotateSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:0,label:0},{value:90,label:90},{value:180,label:180},{value:270,label:270}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.rotate},set(e){console.debug(`set rotate`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,rotate:e})}}},mounted(){this.value||=0}}),mt={class:`field`},ht={class:`text-sm font-bold block mb-2`};function gt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,mt,[e(`span`,ht,i(t.$t(`qrart.name.rotate`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.rotate`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var _t=H(pt,[[`render`,gt],[`__scopeId`,`data-v-72e35835`]]),vt=v({name:`EclSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`L`,label:`L`},{value:`M`,label:`M`},{value:`Q`,label:`Q`},{value:`H`,label:`H`}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.ecl},set(e){console.debug(`set ecl`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,ecl:e})}}},mounted(){this.value||=`H`}}),yt={class:`field`},bt={class:`text-sm font-bold block mb-2`};function xt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,yt,[e(`span`,bt,i(t.$t(`qrart.name.ecl`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.ecl`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var St=H(vt,[[`render`,xt],[`__scopeId`,`data-v-b3a5e331`]]),Ct=v({name:`MarkerShapeSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`center`,label:this.$t(`qrart.position.center`)},{value:`top`,label:this.$t(`qrart.position.top`)},{value:`right`,label:this.$t(`qrart.position.right`)},{value:`bottom`,label:this.$t(`qrart.position.bottom`)},{value:`left`,label:this.$t(`qrart.position.left`)},{value:`top-left`,label:this.$t(`qrart.position.topLeft`)},{value:`top-right`,label:this.$t(`qrart.position.topRight`)},{value:`bottom-left`,label:this.$t(`qrart.position.bottomLeft`)},{value:`bottom-right`,label:this.$t(`qrart.position.bottomRight`)}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.position},set(e){console.debug(`set position`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,position:e})}}},mounted(){this.value||=re}}),wt={class:`field`},Tt={class:`title font-bold`};function Et(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,wt,[e(`span`,Tt,i(t.$t(`qrart.name.position`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.position`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Dt=H(Ct,[[`render`,Et],[`__scopeId`,`data-v-54186505`]]),Ot=v({name:`PaddingLevelSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:0,label:0},{value:5,label:5},{value:10,label:10},{value:10,label:10},{value:15,label:15},{value:20,label:20}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.padding_level},set(e){console.debug(`set padding_level`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,padding_level:e})}}},mounted(){this.value||=5}}),kt={class:`field`},At={class:`text-sm font-bold block mb-2`};function jt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,kt,[e(`span`,At,i(t.$t(`qrart.name.paddingLevel`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.paddingLevel`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Mt=H(Ot,[[`render`,jt],[`__scopeId`,`data-v-49d801fd`]]),Nt=v({name:`PaddingNoiseSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:0,label:0},{value:.25,label:.25},{value:.5,label:.5},{value:.75,label:.75},{value:1,label:1}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.padding_noise},set(e){console.debug(`set padding_noise`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,padding_noise:e})}}},mounted(){this.value||=0}}),Pt={class:`field`},Ft={class:`text-sm font-bold block mb-2`};function It(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Pt,[e(`span`,Ft,i(t.$t(`qrart.name.paddingNoise`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.paddingNoise`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Lt=H(Nt,[[`render`,It],[`__scopeId`,`data-v-a20833bb`]]),Rt=v({name:`PixelStyleSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`square`,label:this.$t(`qrart.pixelStyle.square`)},{value:`rounded`,label:this.$t(`qrart.pixelStyle.rounded`)},{value:`dot`,label:this.$t(`qrart.pixelStyle.dot`)},{value:`squircle`,label:this.$t(`qrart.pixelStyle.squircle`)},{value:`row`,label:this.$t(`qrart.pixelStyle.row`)},{value:`column`,label:this.$t(`qrart.pixelStyle.column`)}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.pixel_style},set(e){console.debug(`set pixel_style`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,pixel_style:e})}}},mounted(){this.value||=ne}}),zt={class:`field`},Bt={class:`text-sm font-bold block mb-2`};function Vt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,zt,[e(`span`,Bt,i(t.$t(`qrart.name.pixelStyle`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.pixelStyle`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ht=H(Rt,[[`render`,Vt],[`__scopeId`,`data-v-aca7f79f`]]),Ut=v({name:`SeedInput`,components:{ElInput:Y},data(){return{}},computed:{value:{get(){return this.$store.state.qrart?.config?.seed},set(e){console.debug(`set seed`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,seed:e?parseInt(e):void 0})}}},mounted(){this.value||=void 0}}),Wt={class:`field`},Gt={class:`text-sm font-bold block mb-2`};function Kt(t,n,r,o,c,u){let d=l(`el-input`);return g(),s(`div`,Wt,[e(`span`,Gt,i(t.$t(`qrart.name.seed`)),1),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`qrart.placeholder.seed`)},null,8,[`modelValue`,`placeholder`])])}var qt=H(Ut,[[`render`,Kt],[`__scopeId`,`data-v-d939305d`]]),Jt=v({name:`PresetSelector`,components:{ElImage:ue},data(){return{options:[{value:`sunset`,label:this.$t(`qrart.preset.sunset`),url:`https://cdn.acedata.cloud/rp1h1s.png`},{value:`floral`,label:this.$t(`qrart.preset.floral`),url:`https://cdn.acedata.cloud/upyikx.png`},{value:`snowflakes`,label:this.$t(`qrart.preset.snowflakes`),url:`https://cdn.acedata.cloud/j447da.png`},{value:`feathers`,label:this.$t(`qrart.preset.feathers`),url:`https://cdn.acedata.cloud/d2ctz9.png`},{value:`raindrops`,label:this.$t(`qrart.preset.raindrops`),url:`https://cdn.acedata.cloud/xv2t3s.png`},{value:`ultra-realism`,label:this.$t(`qrart.preset.ultraRealism`),url:`https://cdn.acedata.cloud/nlor4y.png`},{value:`epic-realms`,label:this.$t(`qrart.preset.epicRealms`),url:`https://cdn.acedata.cloud/wwzkvy.png`},{value:`intricate-studio`,label:this.$t(`qrart.preset.intricateStudio`),url:`https://cdn.acedata.cloud/4kzf5y.png`},{value:`symmetric-masterpiece`,label:this.$t(`qrart.preset.symmetricMasterpiece`),url:`https://cdn.acedata.cloud/ff4ii2.png`},{value:`luminous-highway`,label:this.$t(`qrart.preset.luminousHighway`),url:`https://cdn.acedata.cloud/cliodt.png`},{value:`celestial-journey`,label:this.$t(`qrart.preset.celestialJourney`),url:`https://cdn.acedata.cloud/ejellf.png`},{value:`neon-mech`,label:this.$t(`qrart.preset.neonMech`),url:`https://cdn.acedata.cloud/3z0y6z.png`},{value:`ethereal-low-poly`,label:this.$t(`qrart.preset.etherealLowPoly`),url:`https://cdn.acedata.cloud/36o0mm.png`},{value:`golden-vista`,label:this.$t(`qrart.preset.goldenVista`),url:`https://cdn.acedata.cloud/xa0267.png`},{value:`cinematic-expanse`,label:this.$t(`qrart.preset.cinematicExpanse`),url:`https://cdn.acedata.cloud/krl5qp.png`},{value:`cinematic-warm`,label:this.$t(`qrart.preset.cinematicWarm`),url:`https://cdn.acedata.cloud/e1aahg.png`},{value:`desolate-wilderness`,label:this.$t(`qrart.preset.desolateWilderness`),url:`https://cdn.acedata.cloud/9evqqu.png`},{value:`vibrant-palette`,label:this.$t(`qrart.preset.vibrantPalette`),url:`https://cdn.acedata.cloud/3fvsmz.png`},{value:`enigmatic-journey`,label:this.$t(`qrart.preset.enigmaticJourney`),url:`https://cdn.acedata.cloud/l6kku0.png`},{value:`timeless-cinematic`,label:this.$t(`qrart.preset.timelessCinematic`),url:`https://cdn.acedata.cloud/h5mzyn.png`},{value:`regal-galaxy`,label:this.$t(`qrart.preset.regalGalaxy`),url:`https://cdn.acedata.cloud/czkegd.png`},{value:`illustrious-canvas`,label:this.$t(`qrart.preset.illustriousCanvas`),url:`https://cdn.acedata.cloud/m8hwzh.png`},{value:`expressive-mural`,label:this.$t(`qrart.preset.expressiveMural`),url:`https://cdn.acedata.cloud/g4v1rb.png`},{value:`serene-haze`,label:this.$t(`qrart.preset.sereneHaze`),url:`https://cdn.acedata.cloud/3w3ixr.png`}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.preset},set(e){console.debug(`set qrw`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,preset:e})}}},mounted(){this.value||=``}}),Yt={class:`field`},Xt={class:`text-sm font-bold block mb-2`},Zt={class:`pane`},Qt=[`onClick`],$t={class:`name`};function en(t,r,o,u,d,f){let p=l(`el-image`);return g(),s(`div`,Yt,[e(`span`,Xt,i(t.$t(`qrart.name.preset`)),1),e(`div`,Zt,[(g(!0),s(c,null,h(t.options,(r,o)=>(g(),s(`div`,{key:o,class:n({item:!0,active:t.value===r.value}),onClick:e=>t.value===r.value?t.value=void 0:t.value=r.value},[a(p,{src:r.url,fit:`fill`,class:`preview`},null,8,[`src`]),e(`span`,$t,i(r.label),1)],10,Qt))),128))])])}var tn=H(Jt,[[`render`,en],[`__scopeId`,`data-v-65c34adf`]]),nn=v({name:`ContentInput`,components:{UploadIcon:R,ElInput:Y,ElUpload:x,ElRadioGroup:T,ElButton:U,ElRadioButton:w,ImagePreview:he},mixins:[ae,q,J],data(){return{inputWay:`input`,fileList:[],uploadUrl:se()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.qrart?.config?.content},set(e){this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,content:e,content_image_url:void 0})}}},mounted(){this.value||=``,this.onSetContentImageUrl()},methods:{onExceed(){Z.warning(this.$t(`qrart.message.uploadDocumentsExceed`))},onError(){Z.error(this.$t(`qrart.message.uploadDocumentsError`))},onSetContentImageUrl(){let e=this.urls?.[0];this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,content:void 0,content_image_url:e})},async onSuccess(){this.onSetContentImageUrl()}}}),rn={class:`field`},an={class:`flex justify-between items-center mb-4`},on={class:`text-sm font-bold title`},sn={class:`flex items-center`},cn={key:2,class:`description`};function ln(t,n,c,u,d,m){let h=l(`el-radio-button`),_=l(`el-radio-group`),v=l(`el-input`),y=l(`image-preview`),b=l(`upload-icon`),x=l(`el-button`),S=l(`el-upload`);return g(),s(`div`,rn,[e(`div`,an,[e(`span`,on,i(t.$t(`qrart.name.content`)),1),e(`div`,sn,[a(_,{modelValue:t.inputWay,"onUpdate:modelValue":n[0]||=e=>t.inputWay=e},{default:p(()=>[a(h,{label:`input`},{default:p(()=>[r(i(t.$t(`qrart.inputWay.input`)),1)]),_:1}),a(h,{label:`upload`},{default:p(()=>[r(i(t.$t(`qrart.inputWay.upload`)),1)]),_:1})]),_:1},8,[`modelValue`])])]),t.inputWay==`input`?(g(),f(v,{key:0,modelValue:t.value,"onUpdate:modelValue":n[1]||=e=>t.value=e,class:`content`,placeholder:t.$t(`qrart.placeholder.content`)},null,8,[`modelValue`,`placeholder`])):o(``,!0),t.inputWay==`upload`?(g(),f(S,{key:1,ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[2]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`upload upload-wrapper`,limit:1,multiple:!1,"list-type":`picture`,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[a(y,{url:e.url||e.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])]),default:p(()=>[a(x,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`qrart.button.uploadQr`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])):o(``,!0),t.inputWay==`upload`?(g(),s(`p`,cn,i(t.$t(`qrart.message.uploadQr`)),1)):o(``,!0)])}var un=H(nn,[[`render`,ln],[`__scopeId`,`data-v-fad0a7db`]]),dn=v({name:`PromptInput`,components:{PromptTextarea:N},computed:{value:{get(){return this.$store.state.qrart?.config?.prompt},set(e){this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,prompt:e})}}},mounted(){this.value||=``}});function fn(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.value,"onUpdate:modelValue":t[0]||=t=>e.value=t,title:e.$t(`qrart.name.prompt`),placeholder:e.$t(`qrart.placeholder.prompt`)},null,8,[`modelValue`,`title`,`placeholder`])}var pn=v({name:`ConfigPanel`,components:{MagicIcon:z,ElButton:U,Consumption:ge,TypeSelector:Pe,PositionSelector:Dt,PixelStyleSelector:Ht,PaddingLevelSelector:Mt,SeedInput:qt,AspectRatioSelector:Ve,QrwSelector:Ke,EclSelector:St,StepsSelector:Ze,PaddingNoiseSelector:Lt,AdvancedSelector:nt,MarkerShapeSelector:st,SubMarkerSelector:ft,RotateSelector:_t,PresetSelector:tn,ContentInput:un,PromptInput:H(dn,[[`render`,fn]])},emits:[`generate`],computed:{config(){return this.$store.state.qrart?.config},consumption(){return K(this.config,this.service?.cost)},service(){return this.$store.state.qrart?.service}}}),mn={class:`flex flex-col h-full`},hn={class:`flex-1 overflow-y-auto p-5`},gn={class:`flex flex-col items-center justify-center px-5 pb-5`};function _n(t,n,c,u,d,m){let h=l(`type-selector`),_=l(`content-input`),v=l(`prompt-input`),y=l(`aspect-ratio-selector`),b=l(`qrw-selector`),x=l(`preset-selector`),S=l(`position-selector`),C=l(`advanced-selector`),w=l(`steps-selector`),T=l(`seed-input`),E=l(`pixel-style-selector`),D=l(`marker-shape-selector`),O=l(`sub-marker-selector`),k=l(`rotate-selector`),A=l(`ecl-selector`),j=l(`padding-level-selector`),M=l(`padding-noise-selector`),N=l(`consumption`),P=l(`magic-icon`),F=l(`el-button`);return g(),s(`div`,mn,[e(`div`,hn,[a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`}),a(S,{class:`mb-4`}),a(C,{class:`mb-4`}),t.config?.advanced?(g(),f(w,{key:0,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(T,{key:1,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(E,{key:2,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(D,{key:3,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(O,{key:4,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(k,{key:5,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(A,{key:6,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(j,{key:7,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(M,{key:8,class:`mb-4`})):o(``,!0)]),e(`div`,gn,[a(N,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(F,{type:`primary`,class:`btn w-full`,round:``,onClick:n[0]||=e=>t.$emit(`generate`)},{default:p(()=>[a(P,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`qrart.button.generate`)),1)]),_:1})])])}var vn=H(pn,[[`render`,_n]]),yn=v({name:`TaskPreview`,components:{ChannelIcon:M,DeleteIcon:ee,ExternalLinkIcon:j,GrowthIcon:Ce,InfoIcon:P,MagicIcon:z,MessageIcon:F,RewardIcon:I,TimeIcon:A,WarningIcon:L,CopyToClipboard:pe,ElAlert:C,ElTooltip:S,ImageWrapper:Se,ApiCodeButton:be},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.qrart?.application}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await oe.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`qrart/deleteTask`,{id:e}),Z.success(this.$t(`common.message.deleteTaskSuccess`))}catch{Z.error(this.$t(`common.message.deleteTaskFailed`))}}},onOpenLink(e){window.open(e,`_blank`)},onReload(e){let t=e.target,n=new URL(t.src),r=n.searchParams.get(`retry`);if(!r)n.searchParams.set(`retry`,`1`);else if(parseInt(r)<2)n.searchParams.set(`retry`,(parseInt(r)+1).toString());else return;t.src=n.toString()},onOpenUrl(e){window.open(e,`_blank`)},onDownload(e){let t=document.createElement(`a`);t.href=e,t.download=e.split(`/`).pop(),t.click()}}}),bn={class:`preview w-full h-fit text-left flex flex-row mb-[15px]`},xn={class:`left`},Sn={class:`main flex-1 w-[calc(100%-70px)] min-w-0 pt-[10px] pr-[10px] pb-0 pl-[10px]`},Cn={class:`bot flex items-center text-[16px] font-bold text-[var(--el-color-primary)] overflow-hidden whitespace-nowrap`},wn={class:`datetime text-[12px] font-normal text-[var(--el-text-color-secondary)] ml-[10px] overflow-hidden text-ellipsis`},Tn=[`aria-label`],En={class:`info`},Dn={key:0,class:`prompt mt-2 text-[14px] font-bold text-[var(--el-text-color-regular)] mb-[10px] overflow-hidden text-ellipsis whitespace-nowrap`},On={key:0},kn={key:0,class:n({content:!0,failed:!0})},An={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},jn={class:`description`},Mn={class:`description`},Nn={key:0,class:`description`},$={key:1,class:`description`},Pn=[`aria-label`,`title`],Fn={key:2,class:`description`},In={key:3,class:`description`},Ln={key:1,class:n({content:!0})},Rn={class:`description`},zn={class:`description`},Bn={key:0,class:`description`},Vn={class:`description`},Hn={key:2,class:n({content:!0})},Un={class:`description`};function Wn(n,c,u,d,m,h){let _=l(`capability-presentation`),v=l(`delete-icon`),y=l(`el-tooltip`),b=l(`image-wrapper`),x=l(`api-code-button`),S=l(`magic-icon`),C=l(`copy-to-clipboard`),w=l(`reward-icon`),T=l(`message-icon`),E=l(`external-link-icon`),D=l(`growth-icon`),O=l(`time-icon`),k=l(`el-alert`),A=l(`warning-icon`),j=l(`info-icon`),M=l(`channel-icon`);return g(),s(`div`,bn,[e(`div`,xn,[a(_,{capability:`qrart`,part:`avatar`,class:`avatar bg-[var(--el-bg-color)] p-[2px] w-[50px] h-[50px] m-[10px] rounded-full`})]),e(`div`,Sn,[e(`div`,Cn,[a(_,{capability:`qrart`,part:`name`}),e(`span`,wn,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(y,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete ml-auto shrink-0 cursor-pointer border-none bg-transparent p-[4px_6px] leading-none`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Tn)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,En,[n.modelValue?.request?.prompt?(g(),s(`p`,Dn,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(g(),s(`span`,On,` - (`+i(n.$t(`qrart.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?.success===!0?(g(),s(`div`,kn,[n.modelValue?.response?.image_url?(g(),f(b,{key:0,src:n.modelValue?.response?.image_url,"raw-src":n.modelValue?.response?.image_url},null,8,[`src`,`raw-src`])):o(``,!0),e(`div`,An,[a(x,{path:`/qrart/generate`,body:n.modelValue?.request},null,8,[`body`])]),a(k,{closable:!1,class:`mt-2 success`},{default:p(()=>[e(`p`,jn,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,Mn,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.type`))+`: `+i(n.$t(`qrart.type.`+n.modelValue?.request?.type))+` `,1),a(C,{content:n.modelValue?.request?.type,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.request?.content?(g(),s(`p`,Nn,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.content`))+`: `+i(n.modelValue?.request?.content)+` `,1),a(C,{content:n.modelValue?.request?.content,class:`btn-copy`},null,8,[`content`])])):o(``,!0),n.modelValue?.request?.content_image_url?(g(),s(`p`,$,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.contentImageUrl`))+`: `,1),e(`button`,{type:`button`,class:`icon-button mr-1 cursor-pointer`,"aria-label":n.$t(`common.button.view`),title:n.$t(`common.button.view`),onClick:c[1]||=e=>n.onOpenLink(n.modelValue?.request?.content_image_url)},[a(E,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Pn)])):o(``,!0),n.modelValue?.request?.seed||n.modelValue?.response?.seed?(g(),s(`p`,Fn,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.seed`))+`: `+i(n.modelValue?.request?.seed||n.modelValue?.response?.seed)+` `,1),a(C,{content:(n.modelValue?.request?.seed||n.modelValue?.response?.seed).toString(),class:`btn-copy`},null,8,[`content`])])):o(``,!0),n.modelValue?.elapsed?(g(),s(`p`,In,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.success===!1?(g(),s(`div`,Ln,[a(k,{closable:!1,class:`failure`},{template:p(()=>[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.failure`)),1)]),default:p(()=>[e(`p`,Rn,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,zn,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(C,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Bn,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,Vn,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(C,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])]),_:1})])):o(``,!0),n.modelValue?.response?o(``,!0):(g(),s(`div`,Hn,[a(k,{closable:!1,class:`info`},{template:p(()=>[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.failure`)),1)]),default:p(()=>[e(`p`,Un,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var Gn=v({name:`RecentPanel`,components:{TaskPreview:H(yn,[[`render`,Wn],[`__scopeId`,`data-v-87029fb9`]]),BotPlaceholder:xe,NoTasks:ve,ScrollList:_e},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.qrart?.tasks,items:this.$store.state.qrart?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Kn={key:0},qn={key:2,class:`w-full h-full flex items-center justify-center`};function Jn(e,t,n,r,i,u){let d=l(`bot-placeholder`),m=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return g(),s(c,null,[e.tasks?.items===void 0?(g(),s(`div`,Kn,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(g(!0),s(c,null,h(e.tasks?.items,(e,t)=>(g(),f(m,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,qn,[a(v)])):o(``,!0)],64)}var Yn=v({name:`QrartIndex`,components:{ConfigPanel:vn,Layout:ke,ApplicationStatus:me,RecentPanel:H(Gn,[[`render`,Jn]])},mixins:[W],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.qrart?.status?.getApplications===X.Request},tasksLoading(){return this.$store.state.qrart?.status?.getTasks===X.Request||this.fetchingTasks},service(){return this.$store.state.qrart.service},credential(){return this.$store.state.qrart.credential},config(){return this.$store.state.qrart.config},initializing(){return this.$store.state.qrart.status.getApplications===X.Request},needApply(){return this.$store.state.qrart.status.getApplications===X.Success&&!this.application},application(){return this.$store.state.qrart.application},tasks(){return this.$store.state.qrart.tasks},applications(){return this.$store.state.qrart.applications}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ye({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`qrart/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplications`),await this.$store.dispatch(`qrart/getApplications`),console.debug(`end onGetApplications`),await this.onGetTasks()},onApply(){ce.create({application:this.application}).then(({data:e})=>{this.application=e,Z.success(this.$t(`application.message.applySuccessfully`))}).catch(e=>{e?.response?.data?.code===`duplication`&&Z.error(this.$t(`application.message.alreadyApplied`))})},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`qrart/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!V(this.uploadTracker,e=>this.$t(e),e=>Z.warning(e)))return;let e={type:this.config?.type,content:this.config?.content,content_image_url:this.config?.content_image_url,prompt:this.config?.prompt,aspect_ratio:this.config?.aspect_ratio,async:!0,qrw:this.config?.qrw,steps:this.config?.steps,preset:this.config?.preset,...this.config?.advanced?{position:this.config?.position,pixel_style:this.config?.pixel_style,marker_shape:this.config?.marker_shape,sub_marker:this.config?.sub_marker,rotate:this.config?.rotate,ecl:this.config?.ecl,seed:this.config?.seed,padding_level:this.config?.padding_level,padding_noise:this.config?.padding_noise}:{}};if(!le())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}Z.info(this.$t(`qrart.message.startingTask`)),fe(`qrart`,G.generate(e,{token:t})).then(()=>{Z.success(this.$t(`qrart.message.startTaskSuccess`))}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?Z.error(this.$t(`qrart.message.usedUp`)):Z.error(this.$t(`qrart.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Xn(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`application-status`),u=l(`recent-panel`),d=l(`layout`);return g(),f(d,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{initializing:e.initializing,application:e.application,applications:e.applications,service:e.service,"need-apply":e.needApply,class:`mb-4`,onRefresh:e.onGetApplication,onSelect:t[0]||=t=>e.$store.dispatch(`qrart/setApplication`,t)},null,8,[`initializing`,`application`,`applications`,`service`,`need-apply`,`onRefresh`]),a(u,{ref:`recentPanel`,class:`panel recent`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Zn=H(Yn,[[`render`,Xn],[`__scopeId`,`data-v-f87e6eb4`]]);export{Zn as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{r as v,t as y}from"./select-Ahh1HtiI.js";import{t as b}from"./upload-DjXw6Rtx.js";import{t as x}from"./tooltip-CWf3RfDZ.js";import{t as S}from"./alert-DlbJ70nF.js";import{n as C,r as w}from"./radio-DgDgyT2l.js";import{t as T}from"./drawer-xHfVA3B7.js";import{t as E}from"./switch-BRhNWQBv.js";import{n as D}from"./taskDrawerMixin-DD5y0W4q.js";import{t as O}from"./clock-Zko38AEz.js";import{r as k,t as A}from"./PromptTextarea-bkyHuBBi.js";import{t as j}from"./info-TLZ25BWo.js";import{t as M}from"./trash-2-CYUFgSIW.js";import{t as ee}from"./triangle-alert-C0xzbNpO.js";import{t as te}from"./upload-Tb1Jm-HV.js";import{t as N}from"./wand-sparkles-DYow-1ZH.js";import{mi as P}from"./constants-C45zS9hd.js";import{Bt as ne,E as F,Fi as I,Ht as L,Kn as R,Kt as z,Ut as B,Vt as V,Wt as H,ai as U,bi as W,ci as G,fr as K,tn as q,xi as J,yr as Y}from"./index-DqO3RKoH.js";import{t as X}from"./CopyToClipboard-UlK2GDZ1.js";import{t as Z}from"./ImagePreview-CRW3UHm8.js";import{t as re}from"./Consumption-D7JkBL3g.js";import{a as Q,n as ie,r as ae,t as oe}from"./pagination-XVsSjZIU.js";import{t as se}from"./vue-plyr-wiIKa-zl.js";import{t as ce}from"./ApiCodeButton-B4l1tVOr.js";import{t as le}from"./BotPlaceholder-C44_0Ntn.js";var ue=_({name:`LayoutPika`,components:{MagicIcon:N,ElDrawer:T,ElButton:I},mixins:[D]}),de={class:`main flex flex-row flex-1`},fe={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},pe={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function me(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,de,[e(`div`,fe,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,pe,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[g,!t.tasksEmpty]]),a(_,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var he=F(ue,[[`render`,me],[`__scopeId`,`data-v-14cc52c3`]]),ge=_({name:`IngredientsSelector`,components:{ElSwitch:E,InfoIcon:Q},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients},set(e){if(!e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,ingredients:e,ingredients_mode:void 0,image_url:void 0});return}this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,ingredients:e,model:`2.0`})}}},mounted(){this.value===void 0&&(this.value=!1)}}),_e={class:`field`},ve={class:`label`},ye={class:`title font-bold`};function be(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-switch`);return h(),s(`div`,_e,[e(`div`,ve,[e(`h2`,ye,i(t.$t(`pika.name.ingredients`)),1),a(d,{content:t.$t(`pika.description.ingredients`),class:`info`},null,8,[`content`])]),a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])}var xe=F(ge,[[`render`,be],[`__scopeId`,`data-v-606e1d1a`]]),Se=_({name:`EffectSelector`,components:{ElSelect:v,ElOption:y},data(){return{}},computed:{options(){return[{value:`Levitate`,label:this.$t(`pika.style.effect1`)},{value:`Decapitate`,label:this.$t(`pika.style.effect2`)},{value:`Eye-pop`,label:this.$t(`pika.style.effect3`)},{value:`Ta-da`,label:this.$t(`pika.style.effect4`)},{value:`Deflate`,label:this.$t(`pika.style.effect5`)},{value:`Crumble`,label:this.$t(`pika.style.effect6`)},{value:`Dissolve`,label:this.$t(`pika.style.effect7`)},{value:`Squish`,label:this.$t(`pika.style.effect8`)},{value:`Inflate`,label:this.$t(`pika.style.effect9`)},{value:`Melt`,label:this.$t(`pika.style.effect10`)},{value:`Cake-ify`,label:this.$t(`pika.style.effect11`)},{value:`Crush`,label:this.$t(`pika.style.effect12`)},{value:`Explode`,label:this.$t(`pika.style.effect13`)}]},value:{get(){return this.$store.state.pika?.config?.effect},set(e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,effect:e})}}}}),Ce={class:`field`},we={class:`title font-bold`},Te={class:`float-left`};function Ee(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Ce,[e(`h2`,we,i(t.$t(`pika.name.effect`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pika.placeholder.select`),clearable:``},{default:p(()=>[(h(!0),s(c,null,m(t.options,t=>(h(),f(g,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,Te,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var De=F(Se,[[`render`,Ee],[`__scopeId`,`data-v-d1c54475`]]),Oe=_({name:`IngredientsModelSelector`,components:{ElRadioButton:C,ElRadioGroup:w},data(){return{options:[{label:this.$t(`pika.button.precise`),value:`precise`},{label:this.$t(`pika.button.creative`),value:`creative`}]}},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients_mode},set(e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,ingredients_mode:e})}}},mounted(){this.value||=P}}),ke={class:`field`},Ae={class:`title font-bold`};function je(t,n,o,u,d,g){let _=l(`el-radio-button`),v=l(`el-radio-group`);return h(),s(`div`,ke,[e(`h2`,Ae,i(t.$t(`pika.name.ingredientsModel`)),1),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`quality`},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(_,{key:e.value,label:e.value},{default:p(()=>[r(i(e.label),1)]),_:2},1032,[`label`]))),128))]),_:1},8,[`modelValue`])])}var Me=F(Oe,[[`render`,je],[`__scopeId`,`data-v-b72865fa`]]),Ne=_({name:`ModelSelector`,components:{ElSelect:v,ElOption:y},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`2.0`,label:`2.0`},{value:`1.5`,label:`1.5`}]}},computed:{value:{get(){return this.$store.state.pika?.config?.model},set(e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika.config,model:e})}}},mounted(){this.value||=`2.0`}}),Pe={class:`field`},Fe={class:`title font-bold`};function Ie(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Pe,[e(`h2`,Fe,i(t.$t(`pika.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pika.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(g,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Le=F(Ne,[[`render`,Ie],[`__scopeId`,`data-v-7b2e870a`]]),Re=_({name:`ImageUrlInput`,components:{UploadIcon:te,ElUpload:b,ElButton:I,InfoIcon:Q,ImagePreview:Z},mixins:[H,B,V],data(){return{fileList:[],uploadUrl:G()+`/api/v1/files/`,suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.pika?.config?.image_url}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;let t=this.fileList.filter(e=>!e.response?.file_url),n=(e||[]).map(e=>this.fileList.find(t=>t.response?.file_url===e||t.url===e)||{name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}});this.fileList=[...n,...t.filter(e=>!n.includes(e))]}}},methods:{onChange(e){!e.url&&e.raw&&(e.url=URL.createObjectURL(e.raw))},onExceed(){J.warning(this.$t(`pika.message.uploadStartImageExceed`))},onError(){J.error(this.$t(`pika.message.uploadStartImageError`))},onRemove(){this.onSetStartImageUrl()},onSetStartImageUrl(){this.suppressWatch=!0,this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,image_url:this.urls}),this.$nextTick(()=>{this.suppressWatch=!1})},onSuccess(){this.onSetStartImageUrl()},onRemovePreview(e){let t=this.fileList.indexOf(e);t>=0&&this.fileList.splice(t,1),e.url?.startsWith(`blob:`)&&URL.revokeObjectURL(e.url),this.onSetStartImageUrl()}}}),ze={class:`field`},Be={class:`label`},Ve={class:`title font-bold`},He={key:0,class:`file-list mt-2 flex flex-wrap gap-[10px]`};function Ue(t,n,u,d,g,_){let v=l(`info-icon`),y=l(`upload-icon`),b=l(`el-button`),x=l(`el-upload`),S=l(`image-preview`);return h(),s(`div`,null,[e(`div`,ze,[e(`div`,Be,[e(`h2`,Ve,i(t.$t(`pika.name.imageUrl`)),1),a(v,{content:t.$t(`pika.description.imageUrl`),class:`info`},null,8,[`content`])]),a(x,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:3,multiple:!0,"show-file-list":!1,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-change":t.onChange,"on-remove":t.onRemove,"on-success":t.onSuccess,headers:t.headers},{default:p(()=>[a(b,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(y,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`pika.button.uploadImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-change`,`on-remove`,`on-success`,`headers`])]),t.fileList.length?(h(),s(`div`,He,[(h(!0),s(c,null,m(t.fileList,(e,n)=>(h(),f(S,{key:e.uid||e.url||n,url:e.url||e.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>t.onRemovePreview(e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])):o(``,!0)])}var We=F(Re,[[`render`,Ue],[`__scopeId`,`data-v-2dc7db44`]]),Ge=_({name:`PromptInput`,components:{PromptTextarea:A},computed:{prompt:{get(){return this.$store.state.pika?.config?.prompt},set(e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Ke(e,t,n,r,i,a){let o=l(`prompt-textarea`);return h(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`pika.name.prompt`),info:e.$t(`pika.description.prompt`),placeholder:e.$t(`pika.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var qe=_({name:`PresetPanel`,components:{MagicIcon:N,ImageUrlInput:We,ElButton:I,Consumption:re,PromptInput:F(Ge,[[`render`,Ke]]),IngredientsSelector:xe,IngredientsModelSelector:Me,ModelSelector:Le,EffectSelector:De},emits:[`generate`],computed:{config(){return this.$store.state.pika?.config},consumption(){return z(this.config,this.service?.cost)},service(){return this.$store.state.pika?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),Je={class:`flex flex-col h-full`},Ye={class:`flex-1 overflow-y-auto p-5`},Xe={class:`flex flex-col items-center justify-center px-5 pb-5`};function Ze(t,n,c,u,d,m){let g=l(`prompt-input`),_=l(`model-selector`),v=l(`ingredients-selector`),y=l(`effect-selector`),b=l(`image-url-input`),x=l(`ingredients-model-selector`),S=l(`consumption`),C=l(`magic-icon`),w=l(`el-button`);return h(),s(`div`,Je,[e(`div`,Ye,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),t.config?.ingredients?(h(),f(b,{key:0,class:`mb-4`})):o(``,!0),t.config?.ingredients?(h(),f(x,{key:1,class:`mb-4`})):o(``,!0)]),e(`div`,Xe,[a(S,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(w,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(C,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`pika.button.generate`)),1)]),_:1},8,[`onClick`])])])}var Qe=F(qe,[[`render`,Ze]]),$e=_({name:`VideoPlayer`,components:{VuePlyr:se},props:{modelValue:{type:Object,required:!0}},data(){return{options:{quality:{default:1080,options:[1080]}}}}}),et=[`data-poster`],tt=[`src`];function nt(t,n,r,i,o,c){let u=l(`vue-plyr`);return h(),s(`div`,null,[a(u,{options:t.options,class:`video`},{default:p(()=>[e(`video`,{controls:``,playsinline:``,preload:`metadata`,"data-poster":t.modelValue?.image_url},[e(`source`,{size:`1080`,src:t.modelValue?.video_url,type:`video/mp4`},null,8,tt)],8,et)]),_:1},8,[`options`])])}var rt=_({name:`TaskPreview`,components:{DeleteIcon:M,ChannelIcon:k,InfoIcon:j,MagicIcon:N,TimeIcon:O,WarningIcon:ee,CopyToClipboard:X,ElAlert:S,VideoPlayer:F($e,[[`render`,nt],[`__scopeId`,`data-v-897d9fe0`]]),ElTooltip:x,ElButton:I,ApiCodeButton:ce},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.pika?.application},config(){return this.$store.state.pika?.config},videos(){let e=[],t=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(n=>{let r=n;t&&(r.action=t),e.push(r)}),e.length===0&&e.push({}),e}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await W.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`pika/deleteTask`,{id:e}),J.success(this.$t(`common.message.deleteTaskSuccess`))}catch{J.error(this.$t(`common.message.deleteTaskFailed`))}}},isFailure(e){let t=this.modelValue?.response;return t?.success===!1||!!t?.error||e?.state===`failed`||e?.state===`cancelled`},isWaiting(e){return this.modelValue?.response?this.isFailure(e)||e?.video_url?!1:!e?.state||[`queued`,`pending`,`processing`,`running`].includes(e.state):!0},onDownload(e){console.log(`on download`),window.open(e,`_blank`)},onReload(e){let t=e.target,n=new URL(t.src),r=n.searchParams.get(`retry`);if(!r)n.searchParams.set(`retry`,`1`);else if(parseInt(r)<2)n.searchParams.set(`retry`,(parseInt(r)+1).toString());else return;t.src=n.toString()},onOpenVideo(e){window.open(e,`_blank`)}}}),it={class:`left`},at={class:`main`},ot={class:`bot`},st={class:`datetime`},ct=[`aria-label`],lt={class:`info`},ut={key:0,class:`prompt mt-2`},dt={key:0},ft={key:1},pt={key:0,class:n({content:!0,failed:!0})},mt={class:`image-wrapper`},ht={key:0,class:n({operations:!0,"mt-2":!0})},gt={key:0,class:`description`},_t={class:`description`},vt={key:1,class:`description`},yt={key:1,class:n({content:!0})},$={class:`description`},bt={class:`description`},xt={key:0,class:`description`},St={class:`description`},Ct={key:2,class:n({content:!0})},wt={class:`description`};function Tt(n,u,d,g,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`VideoPlayer`),C=l(`el-button`),w=l(`api-code-button`),T=l(`channel-icon`),E=l(`magic-icon`),D=l(`copy-to-clipboard`),O=l(`time-icon`),k=l(`el-alert`),A=l(`warning-icon`),j=l(`info-icon`);return h(!0),s(c,null,m(n.videos,(c,l)=>(h(),s(`div`,{key:l,class:`preview`},[e(`div`,it,[a(y,{capability:`pika`,part:`avatar`,class:`avatar`})]),e(`div`,at,[e(`div`,ot,[a(y,{capability:`pika`,part:`name`}),e(`span`,st,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(x,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(h(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:u[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,ct)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,lt,[n.modelValue?.request?.prompt?(h(),s(`p`,ut,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,dt,` - (`+i(n.$t(`pika.status.pending`))+`) `,1)),n.modelValue?.response&&n.isWaiting(c)?(h(),s(`span`,ft,` - (`+i(n.$t(`pika.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&c?.video_url?(h(),s(`div`,pt,[e(`div`,mt,[a(S,{"model-value":c},null,8,[`model-value`])]),c?(h(),s(`div`,ht,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`pika.message.downloadVideo`),placement:`top-start`},{default:p(()=>[c?.video_url?(h(),f(C,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:e=>n.onDownload(c?.video_url)},{default:p(()=>[r(i(n.$t(`pika.button.download`)),1)]),_:1},8,[`onClick`])):o(``,!0)]),_:2},1032,[`content`]),a(w,{path:`/pika/videos`,body:n.modelValue?.request},null,8,[`body`])])):o(``,!0),a(k,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,gt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),e(`p`,_t,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,vt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.isFailure(c)?(h(),s(`div`,yt,[a(k,{closable:!1,class:`failure`},{template:p(()=>[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.failure`)),1)]),default:p(()=>[e(`p`,$,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,bt,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(D,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,xt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,St,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(D,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])]),_:1})])):o(``,!0),n.isWaiting(c)?(h(),s(`div`,Ct,[a(k,{closable:!1,class:`info`},{template:p(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.response?`pika.status.processing`:`pika.status.pending`)),1)]),default:p(()=>[e(`p`,wt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})])):o(``,!0)])]))),128)}var Et=_({name:`RecentPanel`,components:{TaskPreview:F(rt,[[`render`,Tt],[`__scopeId`,`data-v-0c3b2346`]]),BotPlaceholder:le,NoTasks:ae,ScrollList:ie},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.pika?.tasks,items:this.$store.state.pika?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Dt={key:0},Ot={key:2,class:`w-full h-full flex items-center justify-center`};function kt(e,t,n,r,i,u){let d=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return h(),s(c,null,[e.tasks?.items===void 0?(h(),s(`div`,Dt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(h(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(h(!0),s(c,null,m(e.tasks?.items,(e,t)=>(h(),f(g,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(h(),s(`div`,Ot,[a(v)])):o(``,!0)],64)}var At=_({name:`PikaIndex`,components:{ConfigPanel:Qe,Layout:he,RecentPanel:F(Et,[[`render`,kt]])},mixins:[L],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.pika?.status?.getApplications===U.Request},tasksLoading(){return this.$store.state.pika?.status?.getTasks===U.Request||this.fetchingTasks},service(){return this.$store.state.pika.service},credential(){return this.$store.state.pika.credential},config(){return this.$store.state.pika.config},initializing(){return this.$store.state.pika.status.getApplications===U.Request},needApply(){return this.$store.state.pika.status.getApplications===U.Success&&!this.application},application(){return this.$store.state.pika.application},applications(){return this.$store.state.pika.applications},tasks(){return this.$store.state.pika.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await oe({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`pika/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`pika/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},onApply(){K.create({application:this.application}).then(({data:e})=>{this.application=e,J.success(this.$t(`application.message.applySuccessfully`))}).catch(e=>{e?.response?.data?.code===`duplication`&&J.error(this.$t(`application.message.alreadyApplied`))})},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`pika/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!ne(this.uploadTracker,e=>this.$t(e),e=>J.warning(e)))return;let e={...this.config,async:!0};if(!q())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}J.info(this.$t(`pika.message.startingTask`)),Y(`pika`,R.generate(e,{token:t})).then(()=>{J.success(this.$t(`pika.message.startTaskSuccess`)),this.$store.commit(`pika/setConfig`,{config:void 0})}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?J.error(this.$t(`pika.message.usedUp`)):J.error(this.$t(`pika.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function jt(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return h(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,class:`panel recent`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Mt=F(At,[[`render`,jt],[`__scopeId`,`data-v-fee6c9ea`]]);export{Mt as default};
1
+ import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{r as v,t as y}from"./select-C1DRhWnC.js";import{t as b}from"./upload-V9clb5xP.js";import{t as x}from"./tooltip-BUeFXdRV.js";import{t as S}from"./alert-CnaTI5Gp.js";import{n as C,r as w}from"./radio-DgDgyT2l.js";import{t as T}from"./drawer-WJpD3B-h.js";import{t as E}from"./switch-D8nKhRhq.js";import{n as D}from"./taskDrawerMixin-BYiVGM2q.js";import{t as O}from"./clock-CuqZkl7_.js";import{r as k,t as A}from"./PromptTextarea-nhjTRPsO.js";import{t as j}from"./info-beFALQcg.js";import{t as M}from"./trash-2-BAYs4oSn.js";import{t as ee}from"./triangle-alert-9bHZRjQO.js";import{t as te}from"./upload-wp-jhKLk.js";import{t as N}from"./wand-sparkles-CWJ7w1RN.js";import{mi as P}from"./constants-B0QZudfQ.js";import{Bt as ne,E as F,Fi as I,Ht as L,Kn as R,Kt as z,Ut as B,Vt as V,Wt as H,ai as U,bi as W,ci as G,fr as K,tn as q,xi as J,yr as Y}from"./index-CilVeL08.js";import{t as X}from"./CopyToClipboard-CwUIV3sA.js";import{t as Z}from"./ImagePreview-Cod5m2VA.js";import{t as re}from"./Consumption-D14USkw2.js";import{a as Q,n as ie,r as ae,t as oe}from"./pagination-hGuMVaBt.js";import{t as se}from"./vue-plyr-wiIKa-zl.js";import{t as ce}from"./ApiCodeButton-Bq1o8E9q.js";import{t as le}from"./BotPlaceholder-CWM-26bc.js";var ue=_({name:`LayoutPika`,components:{MagicIcon:N,ElDrawer:T,ElButton:I},mixins:[D]}),de={class:`main flex flex-row flex-1`},fe={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},pe={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function me(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,de,[e(`div`,fe,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,pe,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[g,!t.tasksEmpty]]),a(_,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var he=F(ue,[[`render`,me],[`__scopeId`,`data-v-14cc52c3`]]),ge=_({name:`IngredientsSelector`,components:{ElSwitch:E,InfoIcon:Q},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients},set(e){if(!e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,ingredients:e,ingredients_mode:void 0,image_url:void 0});return}this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,ingredients:e,model:`2.0`})}}},mounted(){this.value===void 0&&(this.value=!1)}}),_e={class:`field`},ve={class:`label`},ye={class:`title font-bold`};function be(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-switch`);return h(),s(`div`,_e,[e(`div`,ve,[e(`h2`,ye,i(t.$t(`pika.name.ingredients`)),1),a(d,{content:t.$t(`pika.description.ingredients`),class:`info`},null,8,[`content`])]),a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])}var xe=F(ge,[[`render`,be],[`__scopeId`,`data-v-606e1d1a`]]),Se=_({name:`EffectSelector`,components:{ElSelect:v,ElOption:y},data(){return{}},computed:{options(){return[{value:`Levitate`,label:this.$t(`pika.style.effect1`)},{value:`Decapitate`,label:this.$t(`pika.style.effect2`)},{value:`Eye-pop`,label:this.$t(`pika.style.effect3`)},{value:`Ta-da`,label:this.$t(`pika.style.effect4`)},{value:`Deflate`,label:this.$t(`pika.style.effect5`)},{value:`Crumble`,label:this.$t(`pika.style.effect6`)},{value:`Dissolve`,label:this.$t(`pika.style.effect7`)},{value:`Squish`,label:this.$t(`pika.style.effect8`)},{value:`Inflate`,label:this.$t(`pika.style.effect9`)},{value:`Melt`,label:this.$t(`pika.style.effect10`)},{value:`Cake-ify`,label:this.$t(`pika.style.effect11`)},{value:`Crush`,label:this.$t(`pika.style.effect12`)},{value:`Explode`,label:this.$t(`pika.style.effect13`)}]},value:{get(){return this.$store.state.pika?.config?.effect},set(e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,effect:e})}}}}),Ce={class:`field`},we={class:`title font-bold`},Te={class:`float-left`};function Ee(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Ce,[e(`h2`,we,i(t.$t(`pika.name.effect`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pika.placeholder.select`),clearable:``},{default:p(()=>[(h(!0),s(c,null,m(t.options,t=>(h(),f(g,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,Te,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var De=F(Se,[[`render`,Ee],[`__scopeId`,`data-v-d1c54475`]]),Oe=_({name:`IngredientsModelSelector`,components:{ElRadioButton:C,ElRadioGroup:w},data(){return{options:[{label:this.$t(`pika.button.precise`),value:`precise`},{label:this.$t(`pika.button.creative`),value:`creative`}]}},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients_mode},set(e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,ingredients_mode:e})}}},mounted(){this.value||=P}}),ke={class:`field`},Ae={class:`title font-bold`};function je(t,n,o,u,d,g){let _=l(`el-radio-button`),v=l(`el-radio-group`);return h(),s(`div`,ke,[e(`h2`,Ae,i(t.$t(`pika.name.ingredientsModel`)),1),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`quality`},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(_,{key:e.value,label:e.value},{default:p(()=>[r(i(e.label),1)]),_:2},1032,[`label`]))),128))]),_:1},8,[`modelValue`])])}var Me=F(Oe,[[`render`,je],[`__scopeId`,`data-v-b72865fa`]]),Ne=_({name:`ModelSelector`,components:{ElSelect:v,ElOption:y},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`2.0`,label:`2.0`},{value:`1.5`,label:`1.5`}]}},computed:{value:{get(){return this.$store.state.pika?.config?.model},set(e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika.config,model:e})}}},mounted(){this.value||=`2.0`}}),Pe={class:`field`},Fe={class:`title font-bold`};function Ie(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Pe,[e(`h2`,Fe,i(t.$t(`pika.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pika.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(g,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Le=F(Ne,[[`render`,Ie],[`__scopeId`,`data-v-7b2e870a`]]),Re=_({name:`ImageUrlInput`,components:{UploadIcon:te,ElUpload:b,ElButton:I,InfoIcon:Q,ImagePreview:Z},mixins:[H,B,V],data(){return{fileList:[],uploadUrl:G()+`/api/v1/files/`,suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.pika?.config?.image_url}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;let t=this.fileList.filter(e=>!e.response?.file_url),n=(e||[]).map(e=>this.fileList.find(t=>t.response?.file_url===e||t.url===e)||{name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}});this.fileList=[...n,...t.filter(e=>!n.includes(e))]}}},methods:{onChange(e){!e.url&&e.raw&&(e.url=URL.createObjectURL(e.raw))},onExceed(){J.warning(this.$t(`pika.message.uploadStartImageExceed`))},onError(){J.error(this.$t(`pika.message.uploadStartImageError`))},onRemove(){this.onSetStartImageUrl()},onSetStartImageUrl(){this.suppressWatch=!0,this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,image_url:this.urls}),this.$nextTick(()=>{this.suppressWatch=!1})},onSuccess(){this.onSetStartImageUrl()},onRemovePreview(e){let t=this.fileList.indexOf(e);t>=0&&this.fileList.splice(t,1),e.url?.startsWith(`blob:`)&&URL.revokeObjectURL(e.url),this.onSetStartImageUrl()}}}),ze={class:`field`},Be={class:`label`},Ve={class:`title font-bold`},He={key:0,class:`file-list mt-2 flex flex-wrap gap-[10px]`};function Ue(t,n,u,d,g,_){let v=l(`info-icon`),y=l(`upload-icon`),b=l(`el-button`),x=l(`el-upload`),S=l(`image-preview`);return h(),s(`div`,null,[e(`div`,ze,[e(`div`,Be,[e(`h2`,Ve,i(t.$t(`pika.name.imageUrl`)),1),a(v,{content:t.$t(`pika.description.imageUrl`),class:`info`},null,8,[`content`])]),a(x,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:3,multiple:!0,"show-file-list":!1,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-change":t.onChange,"on-remove":t.onRemove,"on-success":t.onSuccess,headers:t.headers},{default:p(()=>[a(b,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(y,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`pika.button.uploadImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-change`,`on-remove`,`on-success`,`headers`])]),t.fileList.length?(h(),s(`div`,He,[(h(!0),s(c,null,m(t.fileList,(e,n)=>(h(),f(S,{key:e.uid||e.url||n,url:e.url||e.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>t.onRemovePreview(e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])):o(``,!0)])}var We=F(Re,[[`render`,Ue],[`__scopeId`,`data-v-2dc7db44`]]),Ge=_({name:`PromptInput`,components:{PromptTextarea:A},computed:{prompt:{get(){return this.$store.state.pika?.config?.prompt},set(e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Ke(e,t,n,r,i,a){let o=l(`prompt-textarea`);return h(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`pika.name.prompt`),info:e.$t(`pika.description.prompt`),placeholder:e.$t(`pika.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var qe=_({name:`PresetPanel`,components:{MagicIcon:N,ImageUrlInput:We,ElButton:I,Consumption:re,PromptInput:F(Ge,[[`render`,Ke]]),IngredientsSelector:xe,IngredientsModelSelector:Me,ModelSelector:Le,EffectSelector:De},emits:[`generate`],computed:{config(){return this.$store.state.pika?.config},consumption(){return z(this.config,this.service?.cost)},service(){return this.$store.state.pika?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),Je={class:`flex flex-col h-full`},Ye={class:`flex-1 overflow-y-auto p-5`},Xe={class:`flex flex-col items-center justify-center px-5 pb-5`};function Ze(t,n,c,u,d,m){let g=l(`prompt-input`),_=l(`model-selector`),v=l(`ingredients-selector`),y=l(`effect-selector`),b=l(`image-url-input`),x=l(`ingredients-model-selector`),S=l(`consumption`),C=l(`magic-icon`),w=l(`el-button`);return h(),s(`div`,Je,[e(`div`,Ye,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),t.config?.ingredients?(h(),f(b,{key:0,class:`mb-4`})):o(``,!0),t.config?.ingredients?(h(),f(x,{key:1,class:`mb-4`})):o(``,!0)]),e(`div`,Xe,[a(S,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(w,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(C,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`pika.button.generate`)),1)]),_:1},8,[`onClick`])])])}var Qe=F(qe,[[`render`,Ze]]),$e=_({name:`VideoPlayer`,components:{VuePlyr:se},props:{modelValue:{type:Object,required:!0}},data(){return{options:{quality:{default:1080,options:[1080]}}}}}),et=[`data-poster`],tt=[`src`];function nt(t,n,r,i,o,c){let u=l(`vue-plyr`);return h(),s(`div`,null,[a(u,{options:t.options,class:`video`},{default:p(()=>[e(`video`,{controls:``,playsinline:``,preload:`metadata`,"data-poster":t.modelValue?.image_url},[e(`source`,{size:`1080`,src:t.modelValue?.video_url,type:`video/mp4`},null,8,tt)],8,et)]),_:1},8,[`options`])])}var rt=_({name:`TaskPreview`,components:{DeleteIcon:M,ChannelIcon:k,InfoIcon:j,MagicIcon:N,TimeIcon:O,WarningIcon:ee,CopyToClipboard:X,ElAlert:S,VideoPlayer:F($e,[[`render`,nt],[`__scopeId`,`data-v-897d9fe0`]]),ElTooltip:x,ElButton:I,ApiCodeButton:ce},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.pika?.application},config(){return this.$store.state.pika?.config},videos(){let e=[],t=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(n=>{let r=n;t&&(r.action=t),e.push(r)}),e.length===0&&e.push({}),e}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await W.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`pika/deleteTask`,{id:e}),J.success(this.$t(`common.message.deleteTaskSuccess`))}catch{J.error(this.$t(`common.message.deleteTaskFailed`))}}},isFailure(e){let t=this.modelValue?.response;return t?.success===!1||!!t?.error||e?.state===`failed`||e?.state===`cancelled`},isWaiting(e){return this.modelValue?.response?this.isFailure(e)||e?.video_url?!1:!e?.state||[`queued`,`pending`,`processing`,`running`].includes(e.state):!0},onDownload(e){console.log(`on download`),window.open(e,`_blank`)},onReload(e){let t=e.target,n=new URL(t.src),r=n.searchParams.get(`retry`);if(!r)n.searchParams.set(`retry`,`1`);else if(parseInt(r)<2)n.searchParams.set(`retry`,(parseInt(r)+1).toString());else return;t.src=n.toString()},onOpenVideo(e){window.open(e,`_blank`)}}}),it={class:`left`},at={class:`main`},ot={class:`bot`},st={class:`datetime`},ct=[`aria-label`],lt={class:`info`},ut={key:0,class:`prompt mt-2`},dt={key:0},ft={key:1},pt={key:0,class:n({content:!0,failed:!0})},mt={class:`image-wrapper`},ht={key:0,class:n({operations:!0,"mt-2":!0})},gt={key:0,class:`description`},_t={class:`description`},vt={key:1,class:`description`},yt={key:1,class:n({content:!0})},$={class:`description`},bt={class:`description`},xt={key:0,class:`description`},St={class:`description`},Ct={key:2,class:n({content:!0})},wt={class:`description`};function Tt(n,u,d,g,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`VideoPlayer`),C=l(`el-button`),w=l(`api-code-button`),T=l(`channel-icon`),E=l(`magic-icon`),D=l(`copy-to-clipboard`),O=l(`time-icon`),k=l(`el-alert`),A=l(`warning-icon`),j=l(`info-icon`);return h(!0),s(c,null,m(n.videos,(c,l)=>(h(),s(`div`,{key:l,class:`preview`},[e(`div`,it,[a(y,{capability:`pika`,part:`avatar`,class:`avatar`})]),e(`div`,at,[e(`div`,ot,[a(y,{capability:`pika`,part:`name`}),e(`span`,st,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(x,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(h(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:u[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,ct)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,lt,[n.modelValue?.request?.prompt?(h(),s(`p`,ut,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,dt,` - (`+i(n.$t(`pika.status.pending`))+`) `,1)),n.modelValue?.response&&n.isWaiting(c)?(h(),s(`span`,ft,` - (`+i(n.$t(`pika.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&c?.video_url?(h(),s(`div`,pt,[e(`div`,mt,[a(S,{"model-value":c},null,8,[`model-value`])]),c?(h(),s(`div`,ht,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`pika.message.downloadVideo`),placement:`top-start`},{default:p(()=>[c?.video_url?(h(),f(C,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:e=>n.onDownload(c?.video_url)},{default:p(()=>[r(i(n.$t(`pika.button.download`)),1)]),_:1},8,[`onClick`])):o(``,!0)]),_:2},1032,[`content`]),a(w,{path:`/pika/videos`,body:n.modelValue?.request},null,8,[`body`])])):o(``,!0),a(k,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,gt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),e(`p`,_t,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,vt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.isFailure(c)?(h(),s(`div`,yt,[a(k,{closable:!1,class:`failure`},{template:p(()=>[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.failure`)),1)]),default:p(()=>[e(`p`,$,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,bt,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(D,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,xt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,St,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(D,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])]),_:1})])):o(``,!0),n.isWaiting(c)?(h(),s(`div`,Ct,[a(k,{closable:!1,class:`info`},{template:p(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.response?`pika.status.processing`:`pika.status.pending`)),1)]),default:p(()=>[e(`p`,wt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})])):o(``,!0)])]))),128)}var Et=_({name:`RecentPanel`,components:{TaskPreview:F(rt,[[`render`,Tt],[`__scopeId`,`data-v-0c3b2346`]]),BotPlaceholder:le,NoTasks:ae,ScrollList:ie},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.pika?.tasks,items:this.$store.state.pika?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Dt={key:0},Ot={key:2,class:`w-full h-full flex items-center justify-center`};function kt(e,t,n,r,i,u){let d=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return h(),s(c,null,[e.tasks?.items===void 0?(h(),s(`div`,Dt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(h(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(h(!0),s(c,null,m(e.tasks?.items,(e,t)=>(h(),f(g,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(h(),s(`div`,Ot,[a(v)])):o(``,!0)],64)}var At=_({name:`PikaIndex`,components:{ConfigPanel:Qe,Layout:he,RecentPanel:F(Et,[[`render`,kt]])},mixins:[L],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.pika?.status?.getApplications===U.Request},tasksLoading(){return this.$store.state.pika?.status?.getTasks===U.Request||this.fetchingTasks},service(){return this.$store.state.pika.service},credential(){return this.$store.state.pika.credential},config(){return this.$store.state.pika.config},initializing(){return this.$store.state.pika.status.getApplications===U.Request},needApply(){return this.$store.state.pika.status.getApplications===U.Success&&!this.application},application(){return this.$store.state.pika.application},applications(){return this.$store.state.pika.applications},tasks(){return this.$store.state.pika.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await oe({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`pika/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`pika/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},onApply(){K.create({application:this.application}).then(({data:e})=>{this.application=e,J.success(this.$t(`application.message.applySuccessfully`))}).catch(e=>{e?.response?.data?.code===`duplication`&&J.error(this.$t(`application.message.alreadyApplied`))})},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`pika/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!ne(this.uploadTracker,e=>this.$t(e),e=>J.warning(e)))return;let e={...this.config,async:!0};if(!q())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}J.info(this.$t(`pika.message.startingTask`)),Y(`pika`,R.generate(e,{token:t})).then(()=>{J.success(this.$t(`pika.message.startTaskSuccess`)),this.$store.commit(`pika/setConfig`,{config:void 0})}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?J.error(this.$t(`pika.message.usedUp`)):J.error(this.$t(`pika.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function jt(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return h(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,class:`panel recent`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Mt=F(At,[[`render`,jt],[`__scopeId`,`data-v-fee6c9ea`]]);export{Mt as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{r as y,t as b}from"./select-Ahh1HtiI.js";import{t as x}from"./upload-DjXw6Rtx.js";import{t as S}from"./tooltip-CWf3RfDZ.js";import{t as C}from"./alert-DlbJ70nF.js";import{t as w}from"./drawer-xHfVA3B7.js";import{n as T}from"./taskDrawerMixin-DD5y0W4q.js";import{t as E}from"./clock-Zko38AEz.js";import{r as D,t as O}from"./PromptTextarea-bkyHuBBi.js";import{t as k}from"./info-TLZ25BWo.js";import{t as A}from"./trash-2-CYUFgSIW.js";import{t as j}from"./triangle-alert-C0xzbNpO.js";import{t as M}from"./upload-Tb1Jm-HV.js";import{t as N}from"./wand-sparkles-DYow-1ZH.js";import{Jr as P,Qr as ee,Xr as te,Yr as ne,Zr as F,ei as I,qr as L,ti as R}from"./constants-C45zS9hd.js";import{Bt as z,E as B,Fi as V,Ht as H,Kt as U,Un as W,Ut as G,Vt as K,Wt as q,ai as J,bi as Y,ci as X,tn as Z,xi as Q,yr as re}from"./index-DqO3RKoH.js";import{t as ie}from"./CopyToClipboard-UlK2GDZ1.js";import{t as ae}from"./ImagePreview-CRW3UHm8.js";import{t as oe}from"./Consumption-D7JkBL3g.js";import{a as se,n as ce,r as le,t as ue}from"./pagination-XVsSjZIU.js";import{t as de}from"./VideoPlayer-CBQ5wjBb.js";import{t as fe}from"./ApiCodeButton-B4l1tVOr.js";import{t as pe}from"./BotPlaceholder-C44_0Ntn.js";var me=v({name:`LayoutSora`,components:{MagicIcon:N,ElDrawer:w,ElButton:V},mixins:[T]}),he={class:`main flex flex-row flex-1`},ge={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},_e={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function ve(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,he,[e(`div`,ge,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,_e,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[_,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var ye=B(me,[[`render`,ve],[`__scopeId`,`data-v-b8cedc77`]]),be=v({name:`ModelSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:R,label:`sora-2`},{value:I,label:`sora-2-pro`}]}},computed:{value:{get(){return this.$store.state.sora?.config?.model},set(e){let t=this.$store.state.sora?.config||{},n=L[e]||[10],r=t.duration,i=r&&n.includes(r)?r:n.includes(10)?10:n[0],a={...t,model:e,duration:i,size:t.size||`small`};this.$store.commit(`sora/setConfig`,a)}}},mounted(){this.value||=te}}),xe={class:`field`},Se={class:`title font-bold`};function Ce(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,xe,[e(`h2`,Se,i(t.$t(`sora.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`sora.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var we=B(be,[[`render`,Ce],[`__scopeId`,`data-v-0cb7913d`]]),Te=v({name:`ActionSelector`,components:{ElSelect:y,ElOption:b},data(){return{}},computed:{options(){return[{value:`text2video`,label:this.$t(`sora.button.action1`)},{value:`image2video`,label:this.$t(`sora.button.action2`)}]},value:{get(){return this.$store.state.sora?.config?.action},set(e){this.$store.commit(`sora/setConfig`,{...this.$store.state.sora?.config,action:e})}}},mounted(){this.value||=ne}}),Ee={class:`field`},De={class:`title font-bold`},Oe={class:`float-left`};function ke(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Ee,[e(`h2`,De,i(t.$t(`sora.name.action`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`sora.placeholder.select`),clearable:``},{default:p(()=>[(g(!0),s(c,null,h(t.options,t=>(g(),f(m,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,Oe,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ae=B(Te,[[`render`,ke],[`__scopeId`,`data-v-7b82fa7f`]]),je=v({name:`DurationSelector`,components:{ElSelect:y,ElOption:b},computed:{model(){return this.$store.state.sora?.config?.model||`sora-2`},allowedDurations(){return L[this.model]||[10]},optionsForModel(){return this.allowedDurations.map(e=>({value:e,label:`${e}s`}))},value:{get(){return this.$store.state.sora?.config?.duration},set(e){let t=this.$store.state.sora?.config||{};this.$store.commit(`sora/setConfig`,{...t,duration:e})}}},watch:{allowedDurations(){let e=this.allowedDurations;if(!e.includes(this.value)){let t=e.includes(10)?10:e[0];this.value=t}}},mounted(){this.value||=10}}),Me={class:`field`},Ne={class:`control`},Pe={class:`title font-bold`};function Fe(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Me,[e(`div`,Ne,[e(`h2`,Pe,i(t.$t(`sora.name.duration`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`sora.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.optionsForModel,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])])}var Ie=B(je,[[`render`,Fe],[`__scopeId`,`data-v-c2934598`]]),Le=v({name:`OrientationSelector`,data(){return{options:[{value:`portrait`,labelKey:`sora.option.portrait`,width:13,height:25},{value:`landscape`,labelKey:`sora.option.landscape`,width:25,height:13}]}},computed:{active(){let e=this.options.findIndex(e=>e.value===this.value);return e>=0?e:0},value:{get(){return this.$store.state.sora?.config?.orientation},set(e){console.debug(`set orientation`,e),this.$store.commit(`sora/setConfig`,{...this.$store.state?.sora?.config,orientation:e})}}},mounted(){this.value||=F}}),Re={class:`text-sm font-bold mb-2 block`},ze={class:`items`},Be=[`onClick`],Ve={class:`name`};function He(t,r,a,o,l,u){return g(),s(`div`,null,[e(`span`,Re,i(t.$t(`sora.name.orientation`)),1),e(`div`,ze,[(g(!0),s(c,null,h(t.options,(r,a)=>(g(),s(`div`,{key:a,class:n({active:t.active===a,item:!0}),onClick:e=>t.value=r.value},[e(`div`,{class:n([`preview`,r.value])},[e(`div`,{class:`rect`,style:m({width:r.width+`px`,height:r.height+`px`})},null,4)],2),e(`p`,Ve,i(t.$t(r.labelKey)),1)],10,Be))),128))])])}var Ue=B(Le,[[`render`,He],[`__scopeId`,`data-v-a20be6d9`]]),We=v({name:`StartEndImage`,components:{UploadIcon:M,ElUpload:x,ElButton:V,InfoIcon:se,ImagePreview:ae},mixins:[q,G,K],emits:[`change`],data(){return{fileList:[],uploadUrl:X()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.sora?.config?.image_urls},set(){}}},mounted(){this.value||=void 0,this.onSetStartEndImageUrl()},methods:{onExceed(){Q.warning(this.$t(`sora.message.uploadReferencesExceed`))},onError(){Q.error(this.$t(`sora.message.uploadReferencesError`))},onSetStartEndImageUrl(){let e=this.urls;this.$store.commit(`sora/setConfig`,{...this.$store.state?.sora?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),Ge={class:`relative`},Ke={class:`flex justify-between`},qe={class:`flex justify-start items-center`},Je={class:`text-sm font-bold`};function Ye(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return g(),s(`div`,Ge,[e(`div`,Ke,[e(`div`,qe,[e(`span`,Je,i(t.$t(`sora.name.startEndImage`)),1),a(h,{content:t.$t(`sora.description.uploadStartEndImage`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:2,class:`upload-wrapper`,multiple:!1,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`sora.button.uploadReferences`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])])}var Xe=B(We,[[`render`,Ye],[`__scopeId`,`data-v-c6a420d1`]]),Ze=e=>e&&e.charAt(0).toUpperCase()+e.slice(1),Qe=v({name:`SizeSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:P.map(e=>({value:e,label:Ze(e)}))}},computed:{value:{get(){return this.$store.state.sora?.config?.size},set(e){let t=this.$store.state.sora?.config||{};this.$store.commit(`sora/setConfig`,{...t,size:e})}}},mounted(){this.value||=ee}}),$e={class:`field`},et={class:`control`},tt={class:`title font-bold`};function nt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,$e,[e(`div`,et,[e(`h2`,tt,i(t.$t(`sora.name.size`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`sora.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])])}var rt=B(Qe,[[`render`,nt],[`__scopeId`,`data-v-8c485f0f`]]),it=v({name:`PromptInput`,components:{PromptTextarea:O},computed:{prompt:{get(){return this.$store.state.sora?.config?.prompt},set(e){this.$store.commit(`sora/setConfig`,{...this.$store.state.sora?.config,prompt:e})}}},mounted(){this.prompt||=``}});function at(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`sora.name.prompt`),info:e.$t(`sora.description.prompt`),placeholder:e.$t(`sora.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var ot=v({name:`ConfigPanel`,components:{MagicIcon:N,ElButton:V,Consumption:oe,PromptInput:B(it,[[`render`,at]]),ModelSelector:we,StartEndImage:Xe,SizeSelector:rt,ActionSelector:Ae,OrientationSelector:Ue,DurationSelector:Ie},emits:[`generate`],computed:{config(){return this.$store.state.sora?.config},consumption(){return U(this.config,this.service?.cost)},service(){return this.$store.state.sora?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),st={class:`flex flex-col h-full`},ct={class:`flex-1 overflow-y-auto p-5`},lt={class:`flex flex-col items-center justify-center px-5 pb-5`};function ut(t,n,o,c,d,f){let m=l(`model-selector`),h=l(`action-selector`),v=l(`duration-selector`),y=l(`size-selector`),b=l(`orientation-selector`),x=l(`prompt-input`),S=l(`start-end-image`),C=l(`consumption`),w=l(`magic-icon`),T=l(`el-button`);return g(),s(`div`,st,[e(`div`,ct,[a(m,{class:`mb-4`}),a(h,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`}),u(a(S,{class:`mb-4`},null,512),[[_,t.config?.action===`image2video`]])]),e(`div`,lt,[a(C,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(T,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(w,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`sora.button.generate`)),1)]),_:1},8,[`onClick`])])])}var dt=B(ot,[[`render`,ut]]),ft=v({name:`TaskPreview`,components:{DeleteIcon:A,ChannelIcon:D,InfoIcon:k,MagicIcon:N,TimeIcon:E,WarningIcon:j,CopyToClipboard:ie,ElAlert:C,VideoPlayer:de,ElTooltip:S,ElButton:V,ApiCodeButton:fe},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.sora?.application},config(){return this.$store.state.sora?.config}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Y.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`sora/deleteTask`,{id:e}),Q.success(this.$t(`common.message.deleteTaskSuccess`))}catch{Q.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e,t){e?.stopPropagation(),console.log(`on download`),window.open(t,`_blank`)},onOpenVideo(e){window.open(e,`_blank`)}}}),pt={class:`preview`},mt={class:`left`},ht={class:`main`},gt={class:`bot`},_t={class:`datetime`},vt=[`aria-label`],yt={class:`info`},bt={key:0,class:`prompt mt-2`},xt={key:0},St={key:1},Ct={key:0,class:n({content:!0,failed:!0})},wt={key:0,class:`mb-4`},Tt={key:1,class:n({operations:!0,"mt-2":!0})},Et={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Dt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ot={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},kt={key:1,class:n({content:!0})},At={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},jt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Mt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Nt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},$={key:2,class:n({content:!0})},Pt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ft={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function It(n,c,u,d,m,h){let _=l(`capability-presentation`),v=l(`delete-icon`),y=l(`el-tooltip`),b=l(`video-player`),x=l(`el-button`),S=l(`api-code-button`),C=l(`channel-icon`),w=l(`magic-icon`),T=l(`copy-to-clipboard`),E=l(`time-icon`),D=l(`el-alert`),O=l(`warning-icon`),k=l(`info-icon`);return g(),s(`div`,pt,[e(`div`,mt,[a(_,{capability:`sora`,part:`avatar`,class:`avatar`})]),e(`div`,ht,[e(`div`,gt,[a(_,{capability:`sora`,part:`name`}),e(`span`,_t,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(y,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,vt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,yt,[n.modelValue?.request?.prompt?(g(),s(`p`,bt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(g(),s(`span`,xt,` - (`+i(n.$t(`sora.status.pending`))+`) `,1)),n.modelValue?.response&&n.modelValue?.response?.success===void 0?(g(),s(`span`,St,` - (`+i(n.$t(`sora.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&n.modelValue?.response?.data?(g(),s(`div`,Ct,[n.modelValue?.response?.data[0]?.video_url?(g(),s(`div`,wt,[a(b,{src:n.modelValue?.response?.data[0]?.video_url},null,8,[`src`])])):o(``,!0),n.modelValue?.response.success?(g(),s(`div`,Tt,[a(y,{class:`box-item`,effect:`dark`,content:n.$t(`sora.message.downloadVideo`),placement:`top-start`},{default:p(()=>[n.modelValue?.response?.data[0]?.video_url?(g(),f(x,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=e=>n.onDownload(e,n.modelValue?.response?.data[0]?.video_url)},{default:p(()=>[r(i(n.$t(`sora.button.download`)),1)]),_:1})):o(``,!0)]),_:1},8,[`content`]),a(S,{path:`/sora/videos`,body:n.modelValue?.request},null,8,[`body`])])):o(``,!0),a(D,{closable:!1,class:`mt-2 success`},{default:p(()=>[e(`p`,Et,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.model`))+`: `+i(n.modelValue?.request?.model),1)]),e(`p`,Dt,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Ot,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.success===!1?(g(),s(`div`,kt,[a(D,{closable:!1,class:`failure`},{template:p(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.failure`)),1)]),default:p(()=>[e(`p`,At,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id},null,8,[`content`])]),e(`p`,jt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(T,{content:n.modelValue?.response?.error?.message},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Mt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,Nt,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(T,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.success===void 0?(g(),s(`div`,$,[a(D,{closable:!1,class:`info`},{template:p(()=>[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.response?`sora.status.processing`:`sora.status.pending`)),1)]),default:p(()=>[e(`p`,Pt,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.response?.trace_id?(g(),s(`p`,Ft,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(T,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0)])])}var Lt=v({name:`RecentPanel`,components:{TaskPreview:B(ft,[[`render`,It],[`__scopeId`,`data-v-ae994d15`]]),NoTasks:le,BotPlaceholder:pe,ScrollList:ce},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.sora?.tasks,items:this.$store.state.sora?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Rt={key:0},zt={key:2,class:`w-full h-full flex items-center justify-center`};function Bt(e,t,n,r,i,u){let d=l(`bot-placeholder`),m=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return g(),s(c,null,[e.tasks?.items===void 0?(g(),s(`div`,Rt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(g(!0),s(c,null,h(e.tasks?.items,(e,t)=>(g(),f(m,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,zt,[a(v)])):o(``,!0)],64)}var Vt=v({name:`SoraIndex`,components:{ConfigPanel:dt,Layout:ye,RecentPanel:B(Lt,[[`render`,Bt]])},mixins:[H],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.sora?.status?.getApplications===J.Request},tasksLoading(){return this.$store.state.sora?.status?.getTasks===J.Request||this.fetchingTasks},credential(){return this.$store.state.sora.credential},config(){return this.$store.state.sora.config},tasks(){return this.$store.state.sora.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ue({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`sora/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`sora/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`sora/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!z(this.uploadTracker,e=>this.$t(e),e=>Q.warning(e)))return;let e={...this.config,async:!0};if(!Z())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}Q.info(this.$t(`sora.message.startingTask`)),re(`sora`,W.generate(e,{token:t})).then(()=>{Q.success(this.$t(`sora.message.startTaskSuccess`))}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?Q.error(this.$t(`sora.message.usedUp`)):Q.error(this.$t(`sora.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Ht(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return g(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Ut=B(Vt,[[`render`,Ht]]);export{Ut as default};
1
+ import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{r as y,t as b}from"./select-C1DRhWnC.js";import{t as x}from"./upload-V9clb5xP.js";import{t as S}from"./tooltip-BUeFXdRV.js";import{t as C}from"./alert-CnaTI5Gp.js";import{t as w}from"./drawer-WJpD3B-h.js";import{n as T}from"./taskDrawerMixin-BYiVGM2q.js";import{t as E}from"./clock-CuqZkl7_.js";import{r as D,t as O}from"./PromptTextarea-nhjTRPsO.js";import{t as k}from"./info-beFALQcg.js";import{t as A}from"./trash-2-BAYs4oSn.js";import{t as j}from"./triangle-alert-9bHZRjQO.js";import{t as M}from"./upload-wp-jhKLk.js";import{t as N}from"./wand-sparkles-CWJ7w1RN.js";import{Jr as P,Qr as ee,Xr as te,Yr as ne,Zr as F,ei as I,qr as L,ti as R}from"./constants-B0QZudfQ.js";import{Bt as z,E as B,Fi as V,Ht as H,Kt as U,Un as W,Ut as G,Vt as K,Wt as q,ai as J,bi as Y,ci as X,tn as Z,xi as Q,yr as re}from"./index-CilVeL08.js";import{t as ie}from"./CopyToClipboard-CwUIV3sA.js";import{t as ae}from"./ImagePreview-Cod5m2VA.js";import{t as oe}from"./Consumption-D14USkw2.js";import{a as se,n as ce,r as le,t as ue}from"./pagination-hGuMVaBt.js";import{t as de}from"./VideoPlayer-aMdV9y1d.js";import{t as fe}from"./ApiCodeButton-Bq1o8E9q.js";import{t as pe}from"./BotPlaceholder-CWM-26bc.js";var me=v({name:`LayoutSora`,components:{MagicIcon:N,ElDrawer:w,ElButton:V},mixins:[T]}),he={class:`main flex flex-row flex-1`},ge={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},_e={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function ve(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,he,[e(`div`,ge,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,_e,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[_,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var ye=B(me,[[`render`,ve],[`__scopeId`,`data-v-b8cedc77`]]),be=v({name:`ModelSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:R,label:`sora-2`},{value:I,label:`sora-2-pro`}]}},computed:{value:{get(){return this.$store.state.sora?.config?.model},set(e){let t=this.$store.state.sora?.config||{},n=L[e]||[10],r=t.duration,i=r&&n.includes(r)?r:n.includes(10)?10:n[0],a={...t,model:e,duration:i,size:t.size||`small`};this.$store.commit(`sora/setConfig`,a)}}},mounted(){this.value||=te}}),xe={class:`field`},Se={class:`title font-bold`};function Ce(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,xe,[e(`h2`,Se,i(t.$t(`sora.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`sora.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var we=B(be,[[`render`,Ce],[`__scopeId`,`data-v-0cb7913d`]]),Te=v({name:`ActionSelector`,components:{ElSelect:y,ElOption:b},data(){return{}},computed:{options(){return[{value:`text2video`,label:this.$t(`sora.button.action1`)},{value:`image2video`,label:this.$t(`sora.button.action2`)}]},value:{get(){return this.$store.state.sora?.config?.action},set(e){this.$store.commit(`sora/setConfig`,{...this.$store.state.sora?.config,action:e})}}},mounted(){this.value||=ne}}),Ee={class:`field`},De={class:`title font-bold`},Oe={class:`float-left`};function ke(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Ee,[e(`h2`,De,i(t.$t(`sora.name.action`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`sora.placeholder.select`),clearable:``},{default:p(()=>[(g(!0),s(c,null,h(t.options,t=>(g(),f(m,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,Oe,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ae=B(Te,[[`render`,ke],[`__scopeId`,`data-v-7b82fa7f`]]),je=v({name:`DurationSelector`,components:{ElSelect:y,ElOption:b},computed:{model(){return this.$store.state.sora?.config?.model||`sora-2`},allowedDurations(){return L[this.model]||[10]},optionsForModel(){return this.allowedDurations.map(e=>({value:e,label:`${e}s`}))},value:{get(){return this.$store.state.sora?.config?.duration},set(e){let t=this.$store.state.sora?.config||{};this.$store.commit(`sora/setConfig`,{...t,duration:e})}}},watch:{allowedDurations(){let e=this.allowedDurations;if(!e.includes(this.value)){let t=e.includes(10)?10:e[0];this.value=t}}},mounted(){this.value||=10}}),Me={class:`field`},Ne={class:`control`},Pe={class:`title font-bold`};function Fe(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Me,[e(`div`,Ne,[e(`h2`,Pe,i(t.$t(`sora.name.duration`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`sora.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.optionsForModel,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])])}var Ie=B(je,[[`render`,Fe],[`__scopeId`,`data-v-c2934598`]]),Le=v({name:`OrientationSelector`,data(){return{options:[{value:`portrait`,labelKey:`sora.option.portrait`,width:13,height:25},{value:`landscape`,labelKey:`sora.option.landscape`,width:25,height:13}]}},computed:{active(){let e=this.options.findIndex(e=>e.value===this.value);return e>=0?e:0},value:{get(){return this.$store.state.sora?.config?.orientation},set(e){console.debug(`set orientation`,e),this.$store.commit(`sora/setConfig`,{...this.$store.state?.sora?.config,orientation:e})}}},mounted(){this.value||=F}}),Re={class:`text-sm font-bold mb-2 block`},ze={class:`items`},Be=[`onClick`],Ve={class:`name`};function He(t,r,a,o,l,u){return g(),s(`div`,null,[e(`span`,Re,i(t.$t(`sora.name.orientation`)),1),e(`div`,ze,[(g(!0),s(c,null,h(t.options,(r,a)=>(g(),s(`div`,{key:a,class:n({active:t.active===a,item:!0}),onClick:e=>t.value=r.value},[e(`div`,{class:n([`preview`,r.value])},[e(`div`,{class:`rect`,style:m({width:r.width+`px`,height:r.height+`px`})},null,4)],2),e(`p`,Ve,i(t.$t(r.labelKey)),1)],10,Be))),128))])])}var Ue=B(Le,[[`render`,He],[`__scopeId`,`data-v-a20be6d9`]]),We=v({name:`StartEndImage`,components:{UploadIcon:M,ElUpload:x,ElButton:V,InfoIcon:se,ImagePreview:ae},mixins:[q,G,K],emits:[`change`],data(){return{fileList:[],uploadUrl:X()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.sora?.config?.image_urls},set(){}}},mounted(){this.value||=void 0,this.onSetStartEndImageUrl()},methods:{onExceed(){Q.warning(this.$t(`sora.message.uploadReferencesExceed`))},onError(){Q.error(this.$t(`sora.message.uploadReferencesError`))},onSetStartEndImageUrl(){let e=this.urls;this.$store.commit(`sora/setConfig`,{...this.$store.state?.sora?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),Ge={class:`relative`},Ke={class:`flex justify-between`},qe={class:`flex justify-start items-center`},Je={class:`text-sm font-bold`};function Ye(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return g(),s(`div`,Ge,[e(`div`,Ke,[e(`div`,qe,[e(`span`,Je,i(t.$t(`sora.name.startEndImage`)),1),a(h,{content:t.$t(`sora.description.uploadStartEndImage`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:2,class:`upload-wrapper`,multiple:!1,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`sora.button.uploadReferences`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])])}var Xe=B(We,[[`render`,Ye],[`__scopeId`,`data-v-c6a420d1`]]),Ze=e=>e&&e.charAt(0).toUpperCase()+e.slice(1),Qe=v({name:`SizeSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:P.map(e=>({value:e,label:Ze(e)}))}},computed:{value:{get(){return this.$store.state.sora?.config?.size},set(e){let t=this.$store.state.sora?.config||{};this.$store.commit(`sora/setConfig`,{...t,size:e})}}},mounted(){this.value||=ee}}),$e={class:`field`},et={class:`control`},tt={class:`title font-bold`};function nt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,$e,[e(`div`,et,[e(`h2`,tt,i(t.$t(`sora.name.size`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`sora.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])])}var rt=B(Qe,[[`render`,nt],[`__scopeId`,`data-v-8c485f0f`]]),it=v({name:`PromptInput`,components:{PromptTextarea:O},computed:{prompt:{get(){return this.$store.state.sora?.config?.prompt},set(e){this.$store.commit(`sora/setConfig`,{...this.$store.state.sora?.config,prompt:e})}}},mounted(){this.prompt||=``}});function at(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`sora.name.prompt`),info:e.$t(`sora.description.prompt`),placeholder:e.$t(`sora.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var ot=v({name:`ConfigPanel`,components:{MagicIcon:N,ElButton:V,Consumption:oe,PromptInput:B(it,[[`render`,at]]),ModelSelector:we,StartEndImage:Xe,SizeSelector:rt,ActionSelector:Ae,OrientationSelector:Ue,DurationSelector:Ie},emits:[`generate`],computed:{config(){return this.$store.state.sora?.config},consumption(){return U(this.config,this.service?.cost)},service(){return this.$store.state.sora?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),st={class:`flex flex-col h-full`},ct={class:`flex-1 overflow-y-auto p-5`},lt={class:`flex flex-col items-center justify-center px-5 pb-5`};function ut(t,n,o,c,d,f){let m=l(`model-selector`),h=l(`action-selector`),v=l(`duration-selector`),y=l(`size-selector`),b=l(`orientation-selector`),x=l(`prompt-input`),S=l(`start-end-image`),C=l(`consumption`),w=l(`magic-icon`),T=l(`el-button`);return g(),s(`div`,st,[e(`div`,ct,[a(m,{class:`mb-4`}),a(h,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`}),u(a(S,{class:`mb-4`},null,512),[[_,t.config?.action===`image2video`]])]),e(`div`,lt,[a(C,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(T,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(w,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`sora.button.generate`)),1)]),_:1},8,[`onClick`])])])}var dt=B(ot,[[`render`,ut]]),ft=v({name:`TaskPreview`,components:{DeleteIcon:A,ChannelIcon:D,InfoIcon:k,MagicIcon:N,TimeIcon:E,WarningIcon:j,CopyToClipboard:ie,ElAlert:C,VideoPlayer:de,ElTooltip:S,ElButton:V,ApiCodeButton:fe},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.sora?.application},config(){return this.$store.state.sora?.config}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Y.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`sora/deleteTask`,{id:e}),Q.success(this.$t(`common.message.deleteTaskSuccess`))}catch{Q.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e,t){e?.stopPropagation(),console.log(`on download`),window.open(t,`_blank`)},onOpenVideo(e){window.open(e,`_blank`)}}}),pt={class:`preview`},mt={class:`left`},ht={class:`main`},gt={class:`bot`},_t={class:`datetime`},vt=[`aria-label`],yt={class:`info`},bt={key:0,class:`prompt mt-2`},xt={key:0},St={key:1},Ct={key:0,class:n({content:!0,failed:!0})},wt={key:0,class:`mb-4`},Tt={key:1,class:n({operations:!0,"mt-2":!0})},Et={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Dt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ot={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},kt={key:1,class:n({content:!0})},At={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},jt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Mt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Nt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},$={key:2,class:n({content:!0})},Pt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ft={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function It(n,c,u,d,m,h){let _=l(`capability-presentation`),v=l(`delete-icon`),y=l(`el-tooltip`),b=l(`video-player`),x=l(`el-button`),S=l(`api-code-button`),C=l(`channel-icon`),w=l(`magic-icon`),T=l(`copy-to-clipboard`),E=l(`time-icon`),D=l(`el-alert`),O=l(`warning-icon`),k=l(`info-icon`);return g(),s(`div`,pt,[e(`div`,mt,[a(_,{capability:`sora`,part:`avatar`,class:`avatar`})]),e(`div`,ht,[e(`div`,gt,[a(_,{capability:`sora`,part:`name`}),e(`span`,_t,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(y,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,vt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,yt,[n.modelValue?.request?.prompt?(g(),s(`p`,bt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(g(),s(`span`,xt,` - (`+i(n.$t(`sora.status.pending`))+`) `,1)),n.modelValue?.response&&n.modelValue?.response?.success===void 0?(g(),s(`span`,St,` - (`+i(n.$t(`sora.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&n.modelValue?.response?.data?(g(),s(`div`,Ct,[n.modelValue?.response?.data[0]?.video_url?(g(),s(`div`,wt,[a(b,{src:n.modelValue?.response?.data[0]?.video_url},null,8,[`src`])])):o(``,!0),n.modelValue?.response.success?(g(),s(`div`,Tt,[a(y,{class:`box-item`,effect:`dark`,content:n.$t(`sora.message.downloadVideo`),placement:`top-start`},{default:p(()=>[n.modelValue?.response?.data[0]?.video_url?(g(),f(x,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=e=>n.onDownload(e,n.modelValue?.response?.data[0]?.video_url)},{default:p(()=>[r(i(n.$t(`sora.button.download`)),1)]),_:1})):o(``,!0)]),_:1},8,[`content`]),a(S,{path:`/sora/videos`,body:n.modelValue?.request},null,8,[`body`])])):o(``,!0),a(D,{closable:!1,class:`mt-2 success`},{default:p(()=>[e(`p`,Et,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.model`))+`: `+i(n.modelValue?.request?.model),1)]),e(`p`,Dt,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Ot,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.success===!1?(g(),s(`div`,kt,[a(D,{closable:!1,class:`failure`},{template:p(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.failure`)),1)]),default:p(()=>[e(`p`,At,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id},null,8,[`content`])]),e(`p`,jt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(T,{content:n.modelValue?.response?.error?.message},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Mt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,Nt,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(T,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.success===void 0?(g(),s(`div`,$,[a(D,{closable:!1,class:`info`},{template:p(()=>[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.response?`sora.status.processing`:`sora.status.pending`)),1)]),default:p(()=>[e(`p`,Pt,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.response?.trace_id?(g(),s(`p`,Ft,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(T,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0)])])}var Lt=v({name:`RecentPanel`,components:{TaskPreview:B(ft,[[`render`,It],[`__scopeId`,`data-v-ae994d15`]]),NoTasks:le,BotPlaceholder:pe,ScrollList:ce},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.sora?.tasks,items:this.$store.state.sora?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Rt={key:0},zt={key:2,class:`w-full h-full flex items-center justify-center`};function Bt(e,t,n,r,i,u){let d=l(`bot-placeholder`),m=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return g(),s(c,null,[e.tasks?.items===void 0?(g(),s(`div`,Rt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(g(!0),s(c,null,h(e.tasks?.items,(e,t)=>(g(),f(m,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,zt,[a(v)])):o(``,!0)],64)}var Vt=v({name:`SoraIndex`,components:{ConfigPanel:dt,Layout:ye,RecentPanel:B(Lt,[[`render`,Bt]])},mixins:[H],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.sora?.status?.getApplications===J.Request},tasksLoading(){return this.$store.state.sora?.status?.getTasks===J.Request||this.fetchingTasks},credential(){return this.$store.state.sora.credential},config(){return this.$store.state.sora.config},tasks(){return this.$store.state.sora.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ue({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`sora/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`sora/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`sora/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!z(this.uploadTracker,e=>this.$t(e),e=>Q.warning(e)))return;let e={...this.config,async:!0};if(!Z())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}Q.info(this.$t(`sora.message.startingTask`)),re(`sora`,W.generate(e,{token:t})).then(()=>{Q.success(this.$t(`sora.message.startTaskSuccess`))}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?Q.error(this.$t(`sora.message.usedUp`)):Q.error(this.$t(`sora.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Ht(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return g(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Ut=B(Vt,[[`render`,Ht]]);export{Ut as default};
@@ -1 +1 @@
1
- import{N as e,tt as t,z as n}from"./vendor-chart-Dw-P17PN.js";import{E as r}from"./index-DqO3RKoH.js";var i=n({name:`SettingsIndex`,mounted(){let e=this.$route.query.tab||``;window.dispatchEvent(new CustomEvent(`open-user-settings`,{detail:{tab:e}}))}}),a={class:`settings-page`};function o(n,r,i,o,s,c){return t(),e(`div`,a)}var s=r(i,[[`render`,o]]);export{s as default};
1
+ import{N as e,tt as t,z as n}from"./vendor-chart-Dw-P17PN.js";import{E as r}from"./index-CilVeL08.js";var i=n({name:`SettingsIndex`,mounted(){let e=this.$route.query.tab||``;window.dispatchEvent(new CustomEvent(`open-user-settings`,{detail:{tab:e}}))}}),a={class:`settings-page`};function o(n,r,i,o,s,c){return t(),e(`div`,a)}var s=r(i,[[`render`,o]]);export{s as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,Jt as t,L as n,at as r,ht as i,j as a,mt as o,ot as s,tt as c,z as l}from"./vendor-chart-Dw-P17PN.js";import{n as u,t as d}from"./table-DD9gDMtN.js";import{t as f}from"./card-D-4S-l7a.js";import{n as p,t as m}from"./row-CyazZ63X.js";import{t as h}from"./pagination-CeYQWqTe.js";import{E as g,dr as _}from"./index-DqO3RKoH.js";import{t as v}from"./CopyToClipboard-UlK2GDZ1.js";var y=l({name:`ConsoleDistributionInvitees`,components:{Pagination:h,CopyToClipboard:v,ElRow:m,ElCol:p,ElTable:d,ElTableColumn:u,ElCard:f},data(){return{invitees:[],loading:!1,total:void 0,limit:10}},computed:{redirect(){return this.$route.query.redirect},page(){return parseInt(this.$route.query.page?.toString()||`1`)}},watch:{page:{handler(){this.onFetchData()}}},mounted(){this.onFetchData()},methods:{onPageChange(e){this.$router.push({name:this.$route.name?.toString(),query:{page:e}})},onFetchData(){this.loading=!0,Promise.all([this.onFetchInvitees()]).finally(()=>{this.loading=!1})},async onFetchInvitees(){let{data:e}=await _.getInvitees({limit:this.limit,offset:(this.page-1)*this.limit,ordering:`-created_at`});this.invitees=e.items,this.total=e.count}}}),b={class:`title`},x={class:`key`},S={class:`copy`},C={class:`description`},w={class:`description`},T={class:`description`},E={class:`created-at`},D={class:`pagination m-v-lg`};function O(l,u,d,f,p,m){let h=r(`el-col`),g=r(`el-row`),_=r(`copy-to-clipboard`),v=r(`el-table-column`),y=r(`el-table`),O=r(`el-card`),k=r(`pagination`),A=s(`loading`);return c(),a(g,{class:`panel`},{default:o(()=>[n(h,{span:24},{default:o(()=>[n(g,null,{default:o(()=>[n(h,{span:24},{default:o(()=>[e(`h2`,b,t(l.$t(`common.title.invitee`)),1)]),_:1})]),_:1}),n(g,null,{default:o(()=>[n(h,{span:24},{default:o(()=>[n(O,{shadow:`hover`},{default:o(()=>[i((c(),a(y,{data:l.invitees,stripe:``},{default:o(()=>[n(v,{prop:`id`,label:l.$t(`user.field.id`),"class-name":`text-center`,width:`350px`},{default:o(r=>[e(`span`,x,t(r.row.id),1),e(`span`,S,[n(_,{content:r.row.id},null,8,[`content`])])]),_:1},8,[`label`]),n(v,{label:l.$t(`user.field.username`),width:`300px`},{default:o(n=>[e(`span`,C,t(n.row?.username),1)]),_:1},8,[`label`]),n(v,{label:l.$t(`user.field.email`),width:`300px`},{default:o(n=>[e(`span`,w,t(n.row?.email),1)]),_:1},8,[`label`]),n(v,{label:l.$t(`user.field.nickname`),width:`200px`},{default:o(n=>[e(`span`,T,t(n.row.nickname),1)]),_:1},8,[`label`]),n(v,{label:l.$t(`user.field.dateJoined`)},{default:o(n=>[e(`span`,E,t(l.$dayjs.format(n.row.date_joined)),1)]),_:1},8,[`label`])]),_:1},8,[`data`])),[[A,l.loading]])]),_:1})]),_:1})]),_:1}),n(g,null,{default:o(()=>[n(h,{span:10,offset:14},{default:o(()=>[e(`div`,D,[n(k,{"current-page":l.page,"page-size":l.limit,total:l.total,onChange:l.onPageChange},null,8,[`current-page`,`page-size`,`total`,`onChange`])])]),_:1})]),_:1})]),_:1})]),_:1})}var k=g(y,[[`render`,O],[`__scopeId`,`data-v-b2200c49`]]);export{k as default};
1
+ import"./rolldown-runtime--c01j_DQ.js";import{A as e,Jt as t,L as n,at as r,ht as i,j as a,mt as o,ot as s,tt as c,z as l}from"./vendor-chart-Dw-P17PN.js";import{n as u,t as d}from"./table-DxVjaIcd.js";import{t as f}from"./card-D-4S-l7a.js";import{n as p,t as m}from"./row-D7BfMIZB.js";import{t as h}from"./pagination-Vp5X9f7J.js";import{E as g,dr as _}from"./index-CilVeL08.js";import{t as v}from"./CopyToClipboard-CwUIV3sA.js";var y=l({name:`ConsoleDistributionInvitees`,components:{Pagination:h,CopyToClipboard:v,ElRow:m,ElCol:p,ElTable:d,ElTableColumn:u,ElCard:f},data(){return{invitees:[],loading:!1,total:void 0,limit:10}},computed:{redirect(){return this.$route.query.redirect},page(){return parseInt(this.$route.query.page?.toString()||`1`)}},watch:{page:{handler(){this.onFetchData()}}},mounted(){this.onFetchData()},methods:{onPageChange(e){this.$router.push({name:this.$route.name?.toString(),query:{page:e}})},onFetchData(){this.loading=!0,Promise.all([this.onFetchInvitees()]).finally(()=>{this.loading=!1})},async onFetchInvitees(){let{data:e}=await _.getInvitees({limit:this.limit,offset:(this.page-1)*this.limit,ordering:`-created_at`});this.invitees=e.items,this.total=e.count}}}),b={class:`title`},x={class:`key`},S={class:`copy`},C={class:`description`},w={class:`description`},T={class:`description`},E={class:`created-at`},D={class:`pagination m-v-lg`};function O(l,u,d,f,p,m){let h=r(`el-col`),g=r(`el-row`),_=r(`copy-to-clipboard`),v=r(`el-table-column`),y=r(`el-table`),O=r(`el-card`),k=r(`pagination`),A=s(`loading`);return c(),a(g,{class:`panel`},{default:o(()=>[n(h,{span:24},{default:o(()=>[n(g,null,{default:o(()=>[n(h,{span:24},{default:o(()=>[e(`h2`,b,t(l.$t(`common.title.invitee`)),1)]),_:1})]),_:1}),n(g,null,{default:o(()=>[n(h,{span:24},{default:o(()=>[n(O,{shadow:`hover`},{default:o(()=>[i((c(),a(y,{data:l.invitees,stripe:``},{default:o(()=>[n(v,{prop:`id`,label:l.$t(`user.field.id`),"class-name":`text-center`,width:`350px`},{default:o(r=>[e(`span`,x,t(r.row.id),1),e(`span`,S,[n(_,{content:r.row.id},null,8,[`content`])])]),_:1},8,[`label`]),n(v,{label:l.$t(`user.field.username`),width:`300px`},{default:o(n=>[e(`span`,C,t(n.row?.username),1)]),_:1},8,[`label`]),n(v,{label:l.$t(`user.field.email`),width:`300px`},{default:o(n=>[e(`span`,w,t(n.row?.email),1)]),_:1},8,[`label`]),n(v,{label:l.$t(`user.field.nickname`),width:`200px`},{default:o(n=>[e(`span`,T,t(n.row.nickname),1)]),_:1},8,[`label`]),n(v,{label:l.$t(`user.field.dateJoined`)},{default:o(n=>[e(`span`,E,t(l.$dayjs.format(n.row.date_joined)),1)]),_:1},8,[`label`])]),_:1},8,[`data`])),[[A,l.loading]])]),_:1})]),_:1})]),_:1}),n(g,null,{default:o(()=>[n(h,{span:10,offset:14},{default:o(()=>[e(`div`,D,[n(k,{"current-page":l.page,"page-size":l.limit,total:l.total,onChange:l.onPageChange},null,8,[`current-page`,`page-size`,`total`,`onChange`])])]),_:1})]),_:1})]),_:1})]),_:1})}var k=g(y,[[`render`,O],[`__scopeId`,`data-v-b2200c49`]]);export{k as default};
@@ -1 +1 @@
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 ee,qt as y,r as b,rt as x,s as S,t as C,tt as w,u as T,x as te,z as E}from"./vendor-chart-Dw-P17PN.js";import{r as D,t as O}from"./select-Ahh1HtiI.js";import{n as k,t as A}from"./table-DD9gDMtN.js";import{n as j,t as M}from"./tabs-Qw07hKJ5.js";import{t as N}from"./card-D-4S-l7a.js";import{n as P,r as F}from"./radio-DgDgyT2l.js";import{n as I,t as L}from"./file-output-CXhW1Vlg.js";import{n as R,t as z}from"./row-CyazZ63X.js";import{t as B}from"./empty-B1wenOj5.js";import{t as V}from"./pagination-CeYQWqTe.js";import{n as H,t as U}from"./skeleton-B3LIGUiE.js";import{t as W}from"./switch-BRhNWQBv.js";import{t as G}from"./boxes-D9CjHyPy.js";import{E as ne,Ei as re,Fi as ie,Ni as ae,Xr as K,Yr as q,_r as J,ci as oe,fr as se,ir as ce,nr as le,ri as ue,rr as Y,xi as X}from"./index-DqO3RKoH.js";import{t as de}from"./CopyToClipboard-UlK2GDZ1.js";var fe=e(J());v.register(c,u,p,b,S,T,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=E({name:`ConsoleUsageList`,components:{ApplicationsIcon:G,ExportIcon:L,Pagination:V,ElTag:ae,ElDatePicker:I,ElTable:A,ElSelect:D,ElOption:O,CopyToClipboard:de,ElRow:z,ElCol:R,ElTableColumn:k,ElCard:N,ElRadioButton:P,ElRadioGroup:F,ElSkeleton:U,ElSkeletonItem:H,ElDialog:re,ElTabs:j,ElTabPane:M,ElButton:ie,ElEmpty:B,ElSwitch:W,BarChart:C,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:q,serviceType:K,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()||K.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===K.API?this.onFetchApiUsages(e):this.type===K.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 Y.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&&Y.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(){se.getAll({limit:100,offset:0,user_id:this.$store.getters.user.id,ordering:`-created_at`,type:ue.USAGE}).then(({data:e})=>{this.applications=e.items.filter(e=>e?.service?.type===this.type)}).catch(()=>{})},onFetchApis(){this.apisLoading=!0,le.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;Y.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;ce.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){X.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=`${oe()}/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{X.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 Y.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`),b=l(`el-radio-button`),S=l(`el-radio-group`),C=l(`el-option`),T=l(`el-select`),E=l(`el-skeleton-item`),D=l(`el-skeleton`),O=l(`el-date-picker`),k=l(`export-icon`),A=l(`el-button`),j=l(`applications-icon`),M=l(`el-card`),N=l(`bar-chart`),P=l(`el-empty`),F=l(`doughnut-chart`),I=l(`el-table-column`),L=l(`el-table`),R=l(`el-switch`),z=l(`el-tag`),B=l(`copy-to-clipboard`),V=l(`el-tab-pane`),H=l(`el-tabs`),U=l(`el-dialog`),W=l(`pagination`),G=ee(`loading`);return w(),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(S,{modelValue:e.type,"onUpdate:modelValue":c[0]||=t=>e.type=t},{default:g(()=>[i(b,{value:e.serviceType.API,label:e.$t(`application.field.api`)},null,8,[`value`,`label`]),i(b,{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(T,{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(()=>[(w(!0),o(s,null,x(e.applications,e=>(w(),m(C,{key:e.id,label:e.service?.title,value:e?.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`])]),_:1},512),[[te,!1]]),e.type===e.serviceType.API?(w(),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?(w(),m(D,{key:0,animated:``,class:`w-full`},{template:g(()=>[i(E,{variant:`rect`,style:{height:`32px`,"border-radius":`4px`}})]),_:1})):(w(),m(T,{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(()=>[(w(!0),o(s,null,x(e.apis,e=>(w(),m(C,{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?(w(),m(_,{key:1,md:8,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[i(O,{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?(w(),m(_,{key:2,md:3,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[i(T,{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(()=>[(w(!0),o(s,null,x(e.statusCodeOptions,e=>(w(),m(C,{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?(w(),m(_,{key:3,md:3,xs:24,class:`mb-5 flex px-2 gap-2 items-center justify-end`},{default:g(()=>[i(A,{type:`primary`,plain:``,loading:e.exporting,class:`w-full whitespace-nowrap`,onClick:e.onExport},{default:g(()=>[i(k,{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?(w(),m(v,{key:0,gutter:24,class:`mb-5`},{default:g(()=>[i(_,{md:6,xs:24},{default:g(()=>[i(M,{shadow:`hover`,class:`h-full`},{default:g(()=>[e.aggLoading?(w(),m(D,{key:0})):(w(),o(`div`,xe,[t(`div`,Se,[i(j,{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(M,{shadow:`hover`,class:`h-full`},{header:g(()=>[t(`div`,Ee,[t(`span`,De,r(e.$t(`usage.title.usageAnalytics`)),1),i(S,{modelValue:e.chartView,"onUpdate:modelValue":c[5]||=t=>e.chartView=t,size:`small`},{default:g(()=>[i(b,{value:`trend`,label:e.$t(`usage.view.trend`)},null,8,[`label`]),i(b,{value:`distribution`,label:e.$t(`usage.view.distribution`)},null,8,[`label`]),i(b,{value:`breakdown`,label:e.$t(`usage.view.breakdown`)},null,8,[`label`])]),_:1},8,[`modelValue`])])]),default:g(()=>[t(`div`,Oe,[e.aggLoading?(w(),m(D,{key:0,class:`w-full`})):e.chartView===`trend`?(w(),o(s,{key:1},[e.barChartSeries.length?(w(),m(N,{key:0,data:e.barChartData,options:e.barChartOptions,class:`chart`},null,8,[`data`,`options`])):(w(),m(P,{key:1,description:e.$t(`common.message.noData`),"image-size":70,class:`w-full`},null,8,[`description`]))],64)):e.chartView===`distribution`?(w(),o(s,{key:2},[e.pieData.length?(w(),m(F,{key:0,data:e.doughnutChartData,options:e.doughnutChartOptions,class:`chart`},null,8,[`data`,`options`])):(w(),m(P,{key:1,description:e.$t(`common.message.noData`),"image-size":70,class:`w-full`},null,8,[`description`]))],64)):(w(),o(s,{key:3},[e.apiBreakdown.length?(w(),m(L,{key:0,data:e.apiBreakdown,size:`small`,height:`300`,class:`w-full`},{default:g(()=>[i(I,{label:e.$t(`usage.field.api`),"min-width":`160`},{default:g(e=>[t(`span`,{class:`color-dot`,style:y({backgroundColor:e.row.color})},null,4),t(`span`,null,r(e.row.label),1)]),_:1},8,[`label`]),i(I,{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(I,{label:e.$t(`usage.field.share`),width:`150`},{default:g(e=>[t(`div`,ke,[t(`div`,Ae,[t(`div`,{class:`share-bar-fill`,style:y({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`])):(w(),m(P,{key:1,description:e.$t(`common.message.noData`),"image-size":70,class:`w-full`},null,8,[`description`]))],64))])]),_:1})]),_:1})]),_:1})):a(``,!0),i(M,{shadow:`hover`},{default:g(()=>[t(`div`,Me,[t(`span`,Ne,r(e.$t(`usage.field.autoRefresh`)),1),i(R,{modelValue:e.autoRefresh,"onUpdate:modelValue":c[6]||=t=>e.autoRefresh=t},null,8,[`modelValue`])]),e.type===e.serviceType.API?f((w(),m(L,{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(I,{label:e.$t(`application.field.name`),width:`160px`},{default:g(e=>[t(`span`,null,r(e.row?.api?.title),1)]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.field.statusCode`),width:`120px`},{default:g(t=>[t.row.status_code?(w(),o(`span`,Pe,r(t.row.status_code),1)):(w(),m(z,{key:1,type:`warning`,size:`small`},{default:g(()=>[n(r(e.$t(`usage.value.processing`)),1)]),_:1}))]),_:1},8,[`label`]),i(I,{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(I,{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)?(w(),o(`div`,Fe,[t(`span`,null,r(e.getDeductedAmount(n.row)),1)])):(w(),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(I,{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(I,{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?(w(),m(z,{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),(w(!0),o(s,null,x(e.getSimpleMetadata(i.row.metadata),(e,t)=>(w(),m(z,{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(I,{label:e.$t(`usage.button.viewDetail`),width:`120px`,"class-name":`text-center`},{default:g(t=>[t.row.id?(w(),m(A,{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(I,{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?(w(),o(`span`,ze,[i(B,{content:e.row.trace_id,class:`inline-block`},null,8,[`content`])])):a(``,!0)]),_:1},8,[`label`]),i(I,{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?(w(),o(`span`,Ve,[i(B,{content:n.row.credential?.id||n.row.credential_id,class:`inline-block`},null,8,[`content`])])):a(``,!0)]),_:1},8,[`label`]),i(I,{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`])),[[G,e.loading]]):a(``,!0),e.type===e.serviceType.Proxy?f((w(),m(L,{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(I,{label:e.$t(`application.field.name`),width:`160px`},{default:g(e=>[t(`span`,null,r(e.row?.service?.title),1)]),_:1},8,[`label`]),i(I,{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(I,{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(I,{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(I,{prop:`metadata`,label:e.$t(`usage.field.metadata`),width:`200px`,"class-name":`text-center`},{default:g(e=>[(w(!0),o(s,null,x(e.row.metadata,(e,t)=>(w(),m(z,{key:t,class:`mb-2`},{default:g(()=>[n(r(t)+`: `+r(e),1)]),_:2},1024))),128))]),_:1},8,[`label`]),i(I,{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?(w(),o(`span`,Ue,[i(B,{content:n.row.credential?.id||n.row.credential_id,class:`inline-block`},null,8,[`content`])])):a(``,!0)]),_:1},8,[`label`]),i(I,{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`])),[[G,e.loading]]):a(``,!0)]),_:1})]),_:1})]),_:1}),i(U,{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(H,{modelValue:e.detailActiveTab,"onUpdate:modelValue":c[7]||=t=>e.detailActiveTab=t},{default:g(()=>[i(V,{label:e.$t(`usage.dialog.request`),name:`request`},{default:g(()=>[e.detailLoading?(w(),m(D,{key:0,rows:6,animated:``})):e.detailRow?.metadata?.request?(w(),o(`pre`,Ge,r(e.formatJson(e.detailRow.metadata.request)),1)):(w(),o(`p`,Ke,r(e.$t(`usage.dialog.noData`)),1))]),_:1},8,[`label`]),i(V,{label:e.$t(`usage.dialog.response`),name:`response`},{default:g(()=>[e.detailLoading?(w(),m(D,{key:0,rows:6,animated:``})):e.detailRow?.metadata?.response?(w(),o(`pre`,qe,r(e.formatJson(e.detailRow.metadata.response)),1)):(w(),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(W,{"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=ne(_e,[[`render`,Xe],[`__scopeId`,`data-v-81b0a3c5`]]);export{Ze as default};
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 ee,qt as y,r as b,rt as x,s as S,t as C,tt as w,u as T,x as te,z as E}from"./vendor-chart-Dw-P17PN.js";import{r as D,t as O}from"./select-C1DRhWnC.js";import{n as k,t as A}from"./table-DxVjaIcd.js";import{n as j,t as M}from"./tabs-YP0EqXmu.js";import{t as N}from"./card-D-4S-l7a.js";import{n as P,r as F}from"./radio-DgDgyT2l.js";import{n as I,t as L}from"./file-output-BvSIxwKu.js";import{n as R,t as z}from"./row-D7BfMIZB.js";import{t as B}from"./empty-B1wenOj5.js";import{t as V}from"./pagination-Vp5X9f7J.js";import{n as H,t as U}from"./skeleton-B3LIGUiE.js";import{t as W}from"./switch-D8nKhRhq.js";import{t as G}from"./boxes-sA0c12wS.js";import{E as ne,Ei as re,Fi as ie,Ni as ae,Xr as K,Yr as q,_r as J,ci as oe,fr as se,ir as ce,nr as le,ri as ue,rr as Y,xi as X}from"./index-CilVeL08.js";import{t as de}from"./CopyToClipboard-CwUIV3sA.js";var fe=e(J());v.register(c,u,p,b,S,T,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=E({name:`ConsoleUsageList`,components:{ApplicationsIcon:G,ExportIcon:L,Pagination:V,ElTag:ae,ElDatePicker:I,ElTable:A,ElSelect:D,ElOption:O,CopyToClipboard:de,ElRow:z,ElCol:R,ElTableColumn:k,ElCard:N,ElRadioButton:P,ElRadioGroup:F,ElSkeleton:U,ElSkeletonItem:H,ElDialog:re,ElTabs:j,ElTabPane:M,ElButton:ie,ElEmpty:B,ElSwitch:W,BarChart:C,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:q,serviceType:K,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()||K.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===K.API?this.onFetchApiUsages(e):this.type===K.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 Y.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&&Y.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(){se.getAll({limit:100,offset:0,user_id:this.$store.getters.user.id,ordering:`-created_at`,type:ue.USAGE}).then(({data:e})=>{this.applications=e.items.filter(e=>e?.service?.type===this.type)}).catch(()=>{})},onFetchApis(){this.apisLoading=!0,le.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;Y.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;ce.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){X.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=`${oe()}/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{X.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 Y.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`),b=l(`el-radio-button`),S=l(`el-radio-group`),C=l(`el-option`),T=l(`el-select`),E=l(`el-skeleton-item`),D=l(`el-skeleton`),O=l(`el-date-picker`),k=l(`export-icon`),A=l(`el-button`),j=l(`applications-icon`),M=l(`el-card`),N=l(`bar-chart`),P=l(`el-empty`),F=l(`doughnut-chart`),I=l(`el-table-column`),L=l(`el-table`),R=l(`el-switch`),z=l(`el-tag`),B=l(`copy-to-clipboard`),V=l(`el-tab-pane`),H=l(`el-tabs`),U=l(`el-dialog`),W=l(`pagination`),G=ee(`loading`);return w(),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(S,{modelValue:e.type,"onUpdate:modelValue":c[0]||=t=>e.type=t},{default:g(()=>[i(b,{value:e.serviceType.API,label:e.$t(`application.field.api`)},null,8,[`value`,`label`]),i(b,{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(T,{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(()=>[(w(!0),o(s,null,x(e.applications,e=>(w(),m(C,{key:e.id,label:e.service?.title,value:e?.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`])]),_:1},512),[[te,!1]]),e.type===e.serviceType.API?(w(),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?(w(),m(D,{key:0,animated:``,class:`w-full`},{template:g(()=>[i(E,{variant:`rect`,style:{height:`32px`,"border-radius":`4px`}})]),_:1})):(w(),m(T,{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(()=>[(w(!0),o(s,null,x(e.apis,e=>(w(),m(C,{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?(w(),m(_,{key:1,md:8,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[i(O,{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?(w(),m(_,{key:2,md:3,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[i(T,{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(()=>[(w(!0),o(s,null,x(e.statusCodeOptions,e=>(w(),m(C,{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?(w(),m(_,{key:3,md:3,xs:24,class:`mb-5 flex px-2 gap-2 items-center justify-end`},{default:g(()=>[i(A,{type:`primary`,plain:``,loading:e.exporting,class:`w-full whitespace-nowrap`,onClick:e.onExport},{default:g(()=>[i(k,{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?(w(),m(v,{key:0,gutter:24,class:`mb-5`},{default:g(()=>[i(_,{md:6,xs:24},{default:g(()=>[i(M,{shadow:`hover`,class:`h-full`},{default:g(()=>[e.aggLoading?(w(),m(D,{key:0})):(w(),o(`div`,xe,[t(`div`,Se,[i(j,{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(M,{shadow:`hover`,class:`h-full`},{header:g(()=>[t(`div`,Ee,[t(`span`,De,r(e.$t(`usage.title.usageAnalytics`)),1),i(S,{modelValue:e.chartView,"onUpdate:modelValue":c[5]||=t=>e.chartView=t,size:`small`},{default:g(()=>[i(b,{value:`trend`,label:e.$t(`usage.view.trend`)},null,8,[`label`]),i(b,{value:`distribution`,label:e.$t(`usage.view.distribution`)},null,8,[`label`]),i(b,{value:`breakdown`,label:e.$t(`usage.view.breakdown`)},null,8,[`label`])]),_:1},8,[`modelValue`])])]),default:g(()=>[t(`div`,Oe,[e.aggLoading?(w(),m(D,{key:0,class:`w-full`})):e.chartView===`trend`?(w(),o(s,{key:1},[e.barChartSeries.length?(w(),m(N,{key:0,data:e.barChartData,options:e.barChartOptions,class:`chart`},null,8,[`data`,`options`])):(w(),m(P,{key:1,description:e.$t(`common.message.noData`),"image-size":70,class:`w-full`},null,8,[`description`]))],64)):e.chartView===`distribution`?(w(),o(s,{key:2},[e.pieData.length?(w(),m(F,{key:0,data:e.doughnutChartData,options:e.doughnutChartOptions,class:`chart`},null,8,[`data`,`options`])):(w(),m(P,{key:1,description:e.$t(`common.message.noData`),"image-size":70,class:`w-full`},null,8,[`description`]))],64)):(w(),o(s,{key:3},[e.apiBreakdown.length?(w(),m(L,{key:0,data:e.apiBreakdown,size:`small`,height:`300`,class:`w-full`},{default:g(()=>[i(I,{label:e.$t(`usage.field.api`),"min-width":`160`},{default:g(e=>[t(`span`,{class:`color-dot`,style:y({backgroundColor:e.row.color})},null,4),t(`span`,null,r(e.row.label),1)]),_:1},8,[`label`]),i(I,{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(I,{label:e.$t(`usage.field.share`),width:`150`},{default:g(e=>[t(`div`,ke,[t(`div`,Ae,[t(`div`,{class:`share-bar-fill`,style:y({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`])):(w(),m(P,{key:1,description:e.$t(`common.message.noData`),"image-size":70,class:`w-full`},null,8,[`description`]))],64))])]),_:1})]),_:1})]),_:1})):a(``,!0),i(M,{shadow:`hover`},{default:g(()=>[t(`div`,Me,[t(`span`,Ne,r(e.$t(`usage.field.autoRefresh`)),1),i(R,{modelValue:e.autoRefresh,"onUpdate:modelValue":c[6]||=t=>e.autoRefresh=t},null,8,[`modelValue`])]),e.type===e.serviceType.API?f((w(),m(L,{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(I,{label:e.$t(`application.field.name`),width:`160px`},{default:g(e=>[t(`span`,null,r(e.row?.api?.title),1)]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.field.statusCode`),width:`120px`},{default:g(t=>[t.row.status_code?(w(),o(`span`,Pe,r(t.row.status_code),1)):(w(),m(z,{key:1,type:`warning`,size:`small`},{default:g(()=>[n(r(e.$t(`usage.value.processing`)),1)]),_:1}))]),_:1},8,[`label`]),i(I,{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(I,{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)?(w(),o(`div`,Fe,[t(`span`,null,r(e.getDeductedAmount(n.row)),1)])):(w(),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(I,{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(I,{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?(w(),m(z,{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),(w(!0),o(s,null,x(e.getSimpleMetadata(i.row.metadata),(e,t)=>(w(),m(z,{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(I,{label:e.$t(`usage.button.viewDetail`),width:`120px`,"class-name":`text-center`},{default:g(t=>[t.row.id?(w(),m(A,{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(I,{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?(w(),o(`span`,ze,[i(B,{content:e.row.trace_id,class:`inline-block`},null,8,[`content`])])):a(``,!0)]),_:1},8,[`label`]),i(I,{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?(w(),o(`span`,Ve,[i(B,{content:n.row.credential?.id||n.row.credential_id,class:`inline-block`},null,8,[`content`])])):a(``,!0)]),_:1},8,[`label`]),i(I,{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`])),[[G,e.loading]]):a(``,!0),e.type===e.serviceType.Proxy?f((w(),m(L,{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(I,{label:e.$t(`application.field.name`),width:`160px`},{default:g(e=>[t(`span`,null,r(e.row?.service?.title),1)]),_:1},8,[`label`]),i(I,{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(I,{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(I,{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(I,{prop:`metadata`,label:e.$t(`usage.field.metadata`),width:`200px`,"class-name":`text-center`},{default:g(e=>[(w(!0),o(s,null,x(e.row.metadata,(e,t)=>(w(),m(z,{key:t,class:`mb-2`},{default:g(()=>[n(r(t)+`: `+r(e),1)]),_:2},1024))),128))]),_:1},8,[`label`]),i(I,{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?(w(),o(`span`,Ue,[i(B,{content:n.row.credential?.id||n.row.credential_id,class:`inline-block`},null,8,[`content`])])):a(``,!0)]),_:1},8,[`label`]),i(I,{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`])),[[G,e.loading]]):a(``,!0)]),_:1})]),_:1})]),_:1}),i(U,{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(H,{modelValue:e.detailActiveTab,"onUpdate:modelValue":c[7]||=t=>e.detailActiveTab=t},{default:g(()=>[i(V,{label:e.$t(`usage.dialog.request`),name:`request`},{default:g(()=>[e.detailLoading?(w(),m(D,{key:0,rows:6,animated:``})):e.detailRow?.metadata?.request?(w(),o(`pre`,Ge,r(e.formatJson(e.detailRow.metadata.request)),1)):(w(),o(`p`,Ke,r(e.$t(`usage.dialog.noData`)),1))]),_:1},8,[`label`]),i(V,{label:e.$t(`usage.dialog.response`),name:`response`},{default:g(()=>[e.detailLoading?(w(),m(D,{key:0,rows:6,animated:``})):e.detailRow?.metadata?.response?(w(),o(`pre`,qe,r(e.formatJson(e.detailRow.metadata.response)),1)):(w(),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(W,{"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=ne(_e,[[`render`,Xe],[`__scopeId`,`data-v-81b0a3c5`]]);export{Ze as default};