@acedatacloud/nexior 3.255.0 → 3.255.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (268) hide show
  1. package/dist/assets/{ApiCodeButton-DqTuCryR.js → ApiCodeButton-CUcTPTtZ.js} +1 -1
  2. package/dist/assets/{Auth-CaUv8GT7.js → Auth-DhK6QByc.js} +1 -1
  3. package/dist/assets/{BotPlaceholder-xpsKXt0P.js → BotPlaceholder-Cn18WSZp.js} +1 -1
  4. package/dist/assets/{Callback-s1CTmMse.js → Callback-B7vd2Y9A.js} +1 -1
  5. package/dist/assets/{Console-BbgaCMM5.js → Console-CGf1hkTl.js} +1 -1
  6. package/dist/assets/{Consumption-CpH3KfFv.js → Consumption-BIoTkjic.js} +1 -1
  7. package/dist/assets/{Conversation-CVVFQLLv.js → Conversation-CBUW6wdY.js} +1 -1
  8. package/dist/assets/{CopyToClipboard-CZv5BP7B.js → CopyToClipboard-DtIK0kcZ.js} +1 -1
  9. package/dist/assets/{Detail-Bx_qvytL.css → Detail-TDIwXwGD.css} +1 -1
  10. package/dist/assets/Detail-_zU4imAx.js +2 -0
  11. package/dist/assets/{Extra-tbli3Pnt.js → Extra-MLioSAeG.js} +1 -1
  12. package/dist/assets/{FilePreview-DWf_R-Z4.js → FilePreview-D0lm1FQD.js} +1 -1
  13. package/dist/assets/{Hailuo-Ca6pOxJe.js → Hailuo-BQXRaWty.js} +1 -1
  14. package/dist/assets/{History-DkedzC3a.js → History-CNErADfO.js} +1 -1
  15. package/dist/assets/{ImagePreview-BX_sHHDN.js → ImagePreview-p_KcfXdL.js} +1 -1
  16. package/dist/assets/{ImageWrapper-DN_5eVGU.js → ImageWrapper-BHcXj5zv.js} +1 -1
  17. package/dist/assets/{Index--dfj5vd1.js → Index--I5sszr9.js} +1 -1
  18. package/dist/assets/{Index-Daf9Fkvy.js → Index--kMAnH14.js} +1 -1
  19. package/dist/assets/{Index-Bain-D7h.js → Index-1PLsf_2N.js} +1 -1
  20. package/dist/assets/{Index-zoUSHAee.js → Index-7IHI8zKZ.js} +1 -1
  21. package/dist/assets/{Index-8lfCdU1j.js → Index-B43QLY1l.js} +1 -1
  22. package/dist/assets/{Index-gxpcGiRW.js → Index-BJG_-FJs.js} +1 -1
  23. package/dist/assets/{Index-DSGQ9k0v.js → Index-BWU4La_d.js} +1 -1
  24. package/dist/assets/{Index-qs_4LALf.js → Index-C2m3ZAGq.js} +1 -1
  25. package/dist/assets/{Index-LLYXdeFA.js → Index-C4r2xW9A.js} +1 -1
  26. package/dist/assets/{Index-D6rkIIKq.js → Index-C88gRaFR.js} +1 -1
  27. package/dist/assets/{Index-Cw65p7je.js → Index-CPDKkQqv.js} +1 -1
  28. package/dist/assets/{Index-CrNuM-lN.js → Index-CQv8BfRo.js} +1 -1
  29. package/dist/assets/{Index-DfXsKJR4.js → Index-CSNW19W4.js} +1 -1
  30. package/dist/assets/{Index-BDB6WW6f.js → Index-CaX6Am91.js} +1 -1
  31. package/dist/assets/{Index-DDBsdWbQ.js → Index-CjrlP8s0.js} +1 -1
  32. package/dist/assets/{Index-B95QJvMZ.js → Index-CxfSBfwU.js} +1 -1
  33. package/dist/assets/{Index-D1fRP2ei.js → Index-D0d7awi-.js} +1 -1
  34. package/dist/assets/{Index-CEnhnlXI.js → Index-D6fKFgNg.js} +1 -1
  35. package/dist/assets/{Index-D0rt9Tkm.js → Index-DIYY3Hbt.js} +1 -1
  36. package/dist/assets/{Index-DqhLb-UU.js → Index-DQM5rF3-.js} +1 -1
  37. package/dist/assets/{Index--tnVCPxR.js → Index-DR9PTOW_.js} +1 -1
  38. package/dist/assets/{Index-4uSXPw7p.js → Index-Dde4miJX.js} +1 -1
  39. package/dist/assets/{Index-CSl7cwDw.js → Index-DuK8gdej.js} +1 -1
  40. package/dist/assets/{Index-B118IEjm.js → Index-hgcCp1Rh.js} +1 -1
  41. package/dist/assets/{Index-xjoHcJJp.js → Index-qERMmFvH.js} +1 -1
  42. package/dist/assets/{Invitees-Cw4eSyX8.js → Invitees-DP2jpPpw.js} +1 -1
  43. package/dist/assets/{List-CzyfDKiJ.js → List-BUsT6GSd.js} +1 -1
  44. package/dist/assets/{List-wN-fVbkm.js → List-DyLV0T6J.js} +1 -1
  45. package/dist/assets/{List-B64U3-zy.js → List-e4qEkQQO.js} +1 -1
  46. package/dist/assets/{Main-SsrSyiVA.js → Main-B-PK89Jn.js} +1 -1
  47. package/dist/assets/{Model-DILg2z0u.js → Model-DRl2UkaF.js} +1 -1
  48. package/dist/assets/{Navigator-BMMW5pkI.js → Navigator-CyVubivp.js} +1 -1
  49. package/dist/assets/{NoTasks-tQdol0_2.js → NoTasks-DT0mCAX4.js} +1 -1
  50. package/dist/assets/{NotFound-BrAYtk9g.js → NotFound-lzs6mGG9.js} +1 -1
  51. package/dist/assets/{Pagination-DQzxlNaL.js → Pagination-rUnbqOLh.js} +1 -1
  52. package/dist/assets/Pay-DosupAmO.js +1 -0
  53. package/dist/assets/Pay-wnaSNfmX.css +1 -0
  54. package/dist/assets/{Player.vue_vue_type_script_setup_true_lang-DIpmyQqC.js → Player.vue_vue_type_script_setup_true_lang-Brhp_rs7.js} +1 -1
  55. package/dist/assets/{Status-B1QNk4Dj.js → Status-C5MWNzvf.js} +1 -1
  56. package/dist/assets/{Subscribe-DEvTl7OY.js → Subscribe-BoeGQ7FA.js} +1 -1
  57. package/dist/assets/{TabSwitcher-Cnp92end.js → TabSwitcher-C5DhRvoy.js} +1 -1
  58. package/dist/assets/{Tts-DSosAxt6.js → Tts-CVT3JxLz.js} +1 -1
  59. package/dist/assets/{VideoPlayer-C5VQJMsC.js → VideoPlayer-CKHzUjKf.js} +1 -1
  60. package/dist/assets/{_Uint8Array-DtfKpEZY.js → _Uint8Array-CXUVTNFA.js} +1 -1
  61. package/dist/assets/{_baseClone-dGPbkYnN.js → _baseClone-CbUe37lr.js} +1 -1
  62. package/dist/assets/{_baseIteratee-CY2Cl0zu.js → _baseIteratee-CCPLrKcd.js} +1 -1
  63. package/dist/assets/{_initCloneObject-BzDf8hsu.js → _initCloneObject-B8-TXaLO.js} +1 -1
  64. package/dist/assets/{add-wT4RKb1f.js → add-DGKEzabe.js} +1 -1
  65. package/dist/assets/{all-wallets-Cq_kzkqS.js → all-wallets-CYEmYH_g.js} +1 -1
  66. package/dist/assets/{app-store-Bjja92cH.js → app-store-CeelwDJW.js} +1 -1
  67. package/dist/assets/{apple-CLVy8IzW.js → apple-f5T4JtXG.js} +1 -1
  68. package/dist/assets/{arrow-bottom-AD0AukVd.js → arrow-bottom-2s4ezc8b.js} +1 -1
  69. package/dist/assets/{arrow-bottom-circle-DcKXAtRN.js → arrow-bottom-circle-DpQ7_3Zu.js} +1 -1
  70. package/dist/assets/{arrow-left-DtBOUCBT.js → arrow-left-CDgY1FGo.js} +1 -1
  71. package/dist/assets/{arrow-right-BgjiaXrR.js → arrow-right-YSVezprB.js} +1 -1
  72. package/dist/assets/{arrow-top-DysVxSes.js → arrow-top-CR1tdxct.js} +1 -1
  73. package/dist/assets/{avatar-DfhasVvk.js → avatar-jEBtzPrU.js} +1 -1
  74. package/dist/assets/{bank-Q7sqLOz1.js → bank-BvbXMyGJ.js} +1 -1
  75. package/dist/assets/{basic-1DXN_ZD3.js → basic-BTR9p-A4.js} +1 -1
  76. package/dist/assets/{browser-CbRcUK6i.js → browser-DD-OjWPZ.js} +1 -1
  77. package/dist/assets/{byokCredential-Dh3cWl5K.js → byokCredential-D83pl37c.js} +1 -1
  78. package/dist/assets/{card-B0rx3HS6.js → card-zK5KE-zM.js} +1 -1
  79. package/dist/assets/{castArray-CbnSaxKn.js → castArray-Cv8DqDDB.js} +1 -1
  80. package/dist/assets/{chat-kuuqFnPd.js → chat-C-w4lszi.js} +1 -1
  81. package/dist/assets/{checkmark-Ewjo6mAi.js → checkmark-BN7ZYFky.js} +1 -1
  82. package/dist/assets/{checkmark-bold-DY1Ihkf5.js → checkmark-bold-zh8QFwa7.js} +1 -1
  83. package/dist/assets/{chevron-bottom-cI6gw9FC.js → chevron-bottom-ChAh0UKh.js} +1 -1
  84. package/dist/assets/{chevron-left-cRXv6i0A.js → chevron-left-D1tYUlDw.js} +1 -1
  85. package/dist/assets/{chevron-right-CddWKGMR.js → chevron-right-BN9yB7zs.js} +1 -1
  86. package/dist/assets/{chevron-top-wGPMxUUJ.js → chevron-top-BaB9oIV2.js} +1 -1
  87. package/dist/assets/{chrome-store-E-8FGb-w.js → chrome-store-eZhIfd7v.js} +1 -1
  88. package/dist/assets/{clock-Kk7mQ8vm.js → clock-B2StqR3i.js} +1 -1
  89. package/dist/assets/{close-DU9B7t_z.js → close-BE-sW26c.js} +1 -1
  90. package/dist/assets/{coinPlaceholder-CoFomJaA.js → coinPlaceholder-D6NoBeel.js} +1 -1
  91. package/dist/assets/{compass-tJpGEKbR.js → compass-BYBxyPr_.js} +1 -1
  92. package/dist/assets/{copy-C8xQ0ZEO.js → copy-NX7agfk-.js} +1 -1
  93. package/dist/assets/{createTaskActions-DKa0yzzK.js → createTaskActions-CknzerYI.js} +1 -1
  94. package/dist/assets/{cursor-Dbh54Rsv.js → cursor-JN8rW4AB.js} +1 -1
  95. package/dist/assets/{cursor-transparent-BQo9hq09.js → cursor-transparent-CmP5RzOK.js} +1 -1
  96. package/dist/assets/{debounce-Dl8en2o_.js → debounce-B-vwp3ga.js} +1 -1
  97. package/dist/assets/{desktop-Dwoc4ta0.js → desktop-pL6gm9PK.js} +1 -1
  98. package/dist/assets/{disconnect-D_nLhU-b.js → disconnect-D2jph-Dg.js} +1 -1
  99. package/dist/assets/{discord-CIdUESH_.js → discord-BNDYEpAD.js} +1 -1
  100. package/dist/assets/{distribution-C1zDfqN8.js → distribution-oJc2lgno.js} +1 -1
  101. package/dist/assets/{dropdown-Cs39B1D0.js → dropdown-C1od899P.js} +1 -1
  102. package/dist/assets/{etherscan-c5iL5PR9.js → etherscan-D7o48DHd.js} +1 -1
  103. package/dist/assets/{exclamation-triangle-DnNRu5CO.js → exclamation-triangle-Bn_2Uyhl.js} +1 -1
  104. package/dist/assets/{extension-DNI1Gnrn.js → extension-quR2bovP.js} +1 -1
  105. package/dist/assets/{external-link-DgPbN_EK.js → external-link-D9Yw6b4L.js} +1 -1
  106. package/dist/assets/{facebook-CCmKeeG5.js → facebook-6nwFy8ys.js} +1 -1
  107. package/dist/assets/{farcaster-l4iGUECD.js → farcaster-BZDHYILb.js} +1 -1
  108. package/dist/assets/{filters-pqCYYR-R.js → filters-Z8-H0J9_.js} +1 -1
  109. package/dist/assets/{github-BB6NCnJa.js → github-EuUSd97e.js} +1 -1
  110. package/dist/assets/{google-DvP4BbxP.js → google-T25QmYu9.js} +1 -1
  111. package/dist/assets/{help-circle-B8emXLBE.js → help-circle-DaFrRgbf.js} +1 -1
  112. package/dist/assets/{highlight-CHE-J5E7.js → highlight-B061e0XK.js} +1 -1
  113. package/dist/assets/{id-C5ZJGtmE.js → id-Cnft3lVS.js} +1 -1
  114. package/dist/assets/{image-BLTgaGTx.js → image-CLPln3gJ.js} +1 -1
  115. package/dist/assets/{index-DwGWWSJ5.js → index-1VuDQAwa.js} +1 -1
  116. package/dist/assets/{index-DGfV6O79.js → index-3Udai3kl.js} +1 -1
  117. package/dist/assets/{index-j-bX9GhB.js → index-7kI4dOK6.js} +1 -1
  118. package/dist/assets/{index-qdj2_nOs.js → index-B0SN8iJh.js} +1 -1
  119. package/dist/assets/{index-48ZBNX7c.js → index-B2gr1nvM.js} +1 -1
  120. package/dist/assets/{index-mLHeIJV7.js → index-B66z64hx.js} +1 -1
  121. package/dist/assets/{index-CPWMXvq-.js → index-BByw0G_E.js} +1 -1
  122. package/dist/assets/{index-BNHSnEGK.js → index-BQHgP10P.js} +1 -1
  123. package/dist/assets/{index-h8mYvo0x.js → index-BR9tWzNr.js} +1 -1
  124. package/dist/assets/{index-CxyDg8u4.js → index-BS3TosNw.js} +1 -1
  125. package/dist/assets/{index-CMhaBzH0.js → index-B_jG6ikB.js} +1 -1
  126. package/dist/assets/{index-DDcepg7B.js → index-Bhzy7uLO.js} +1 -1
  127. package/dist/assets/{index-CxP011hD.js → index-Bm8FqJnP.js} +1 -1
  128. package/dist/assets/{index-DathU4wC.js → index-BuL4wrhj.js} +1 -1
  129. package/dist/assets/index-BxT0ZPCT.js +1 -0
  130. package/dist/assets/{index-Cf_g4cNy.js → index-BxvVaie9.js} +1 -1
  131. package/dist/assets/index-C3GFLnoT.js +1 -0
  132. package/dist/assets/{index-DELZT9kn.js → index-C534Mh48.js} +5 -5
  133. package/dist/assets/{index-CX74Mixx.js → index-C9XEpdPc.js} +1 -1
  134. package/dist/assets/{index-CGdcQQoO.js → index-CF5liLjA.js} +2 -2
  135. package/dist/assets/{index-BTNb2CTo.js → index-CGLvj5qX.js} +1 -1
  136. package/dist/assets/{index-DhOSddkE.js → index-CM2xkTYW.js} +1 -1
  137. package/dist/assets/{index-CTEohCbd.js → index-CW9cp3r1.js} +1 -1
  138. package/dist/assets/{index-CcYwI3ai.js → index-CXJwHbs-.js} +1 -1
  139. package/dist/assets/{index-CZbSaGfF.js → index-CaKYkkG7.js} +1 -1
  140. package/dist/assets/{index-CEyacY8c.js → index-CcOy7NfR.js} +1 -1
  141. package/dist/assets/index-CktHtZVV.js +1 -0
  142. package/dist/assets/{index-G2ll_KCq.js → index-CpDLTeHF.js} +1 -1
  143. package/dist/assets/{index-DZku_iGx.js → index-CrQhQx4A.js} +1 -1
  144. package/dist/assets/{index-Cvqp7__y.js → index-CuUKnN6i.js} +1 -1
  145. package/dist/assets/{index-D3WkBohO.js → index-Cv9n35Q1.js} +1 -1
  146. package/dist/assets/{index-CNsD4H53.js → index-CwiuN5yS.js} +1 -1
  147. package/dist/assets/{index-DMfygNOh.js → index-D-5UDz9i.js} +1 -1
  148. package/dist/assets/{index-CHrGWwpa.js → index-DApceo0N.js} +1 -1
  149. package/dist/assets/{index-D_7iS0Ka.js → index-DFezti2N.js} +1 -1
  150. package/dist/assets/{index-BOgFVvRr.js → index-DGvseZJ8.js} +1 -1
  151. package/dist/assets/index-DMsestx_.js +1 -0
  152. package/dist/assets/{index-CRixUSlT.js → index-DQy6Zwck.js} +1 -1
  153. package/dist/assets/{index-CVEJz82s.js → index-DU38pF1D.js} +1 -1
  154. package/dist/assets/{index-BDQqgVDC.js → index-DYtTxjKY.js} +1 -1
  155. package/dist/assets/{index-D8aPgnGc.js → index-DbTnCj6Y.js} +14 -14
  156. package/dist/assets/index-DhFAJubM.js +1 -0
  157. package/dist/assets/{index-Csx7MJnP.js → index-DicsQbSj.js} +1 -1
  158. package/dist/assets/index-DlUmZi-q.js +1 -0
  159. package/dist/assets/{index-Pbe8CChL.js → index-Do6ztq8u.js} +1 -1
  160. package/dist/assets/{index-BRjvV2nQ.js → index-Dpfvnj_D.js} +1 -1
  161. package/dist/assets/{index-TUT4Ls42.js → index-DqtdF-UV.js} +1 -1
  162. package/dist/assets/index-DrcdUb7a.js +1 -0
  163. package/dist/assets/{index-CbnGYE9U.js → index-Ds8WPxf_.js} +1 -1
  164. package/dist/assets/{index-CeOpBsgD.js → index-Dtb4HDII.js} +1 -1
  165. package/dist/assets/{index-DbIiryMD.js → index-DuvI3onY.js} +1 -1
  166. package/dist/assets/{index-DNCRlcDT.js → index-Dwi7KeFX.js} +1 -1
  167. package/dist/assets/{index-uRu0fJoD.js → index-DxXIrwGr.js} +1 -1
  168. package/dist/assets/{index-DdQiL2e_.js → index-GDDzirBe.js} +1 -1
  169. package/dist/assets/{index-DFh4_YKj.js → index-KFvyQLJa.js} +1 -1
  170. package/dist/assets/{index-DVpXcylC.js → index-QaHICmUV.js} +1 -1
  171. package/dist/assets/{index-CYGh3Ikj.js → index-T5bWw6c2.js} +1 -1
  172. package/dist/assets/{index-BwmmAqKj.js → index-XQhYCvNy.js} +1 -1
  173. package/dist/assets/{index-DFm6cIRd.js → index-bw--8y-b.js} +3 -3
  174. package/dist/assets/{index-V6-D7WeC.js → index-dEi2HSun.js} +1 -1
  175. package/dist/assets/{index-B8KoTadR.js → index-dnBKAMqK.js} +1 -1
  176. package/dist/assets/{index-BCBZWdPb.js → index-ja99ynD1.js} +1 -1
  177. package/dist/assets/{index-CFm7oiDC.js → index-kumNwRXK.js} +1 -1
  178. package/dist/assets/{index-CURyBsYJ.js → index-pm-DMONm.js} +1 -1
  179. package/dist/assets/{index.browser.esm-CYce7OkR.js → index.browser.esm-DXQQ0mjR.js} +1 -1
  180. package/dist/assets/{index.es-ChY1FlMW.js → index.es-DMDeBnDi.js} +1 -1
  181. package/dist/assets/{info-circle-johXmI5G.js → info-circle-DTt6rX6e.js} +1 -1
  182. package/dist/assets/{info-BMU798v9.js → info-v5XftnOG.js} +1 -1
  183. package/dist/assets/isEqual-ARjTA69Y.js +1 -0
  184. package/dist/assets/{isPlainObject-D5ZKzez2.js → isPlainObject-B5tfD1Mc.js} +1 -1
  185. package/dist/assets/{lightbulb-C93g8g5s.js → lightbulb-M_UqbYeH.js} +1 -1
  186. package/dist/assets/{mail-BR9vVl-0.js → mail-66Q0xTOQ.js} +1 -1
  187. package/dist/assets/{midjourney-DaI1O8Au.js → midjourney-DTTbxFie.js} +1 -1
  188. package/dist/assets/{mobile-C4xdYxb9.js → mobile-_RZRmurS.js} +1 -1
  189. package/dist/assets/{more-HEjhQ3Bk.js → more-DWWy-Xn3.js} +1 -1
  190. package/dist/assets/{network-placeholder-C1f4OykN.js → network-placeholder-DIt4uH4m.js} +1 -1
  191. package/dist/assets/{nftPlaceholder-BjxSiWW4.js → nftPlaceholder-hU44Nxp3.js} +1 -1
  192. package/dist/assets/{off-DmgjvrrD.js → off-BfNQ95Oe.js} +1 -1
  193. package/dist/assets/{order-CNqzeSfo.js → order-B9b4G2h0.js} +1 -1
  194. package/dist/assets/{order-BjYCXHSR.js → order-BfbaShU8.js} +1 -1
  195. package/dist/assets/{order-BzJSTnZZ.js → order-BhCUYh3S.js} +1 -1
  196. package/dist/assets/{order-Cl29thYZ.js → order-BoDHN9wO.js} +1 -1
  197. package/dist/assets/{order-53ZhwUJJ.js → order-Bw7psk7V.js} +1 -1
  198. package/dist/assets/{order-DbNd9dX0.js → order-C8HkeeSL.js} +1 -1
  199. package/dist/assets/{order-E78f71Aq.js → order-ChM_Cppq.js} +1 -1
  200. package/dist/assets/{order-Vg8oZNKH.js → order-CjMEeiNz.js} +1 -1
  201. package/dist/assets/{order-DlAnaS3P.js → order-CqfL28_Y.js} +1 -1
  202. package/dist/assets/{order-BR8jK_l8.js → order-D3AeI5Vv.js} +1 -1
  203. package/dist/assets/{order-DKNF0BbY.js → order-D5VWms7f.js} +1 -1
  204. package/dist/assets/{order-DShgWTSa.js → order-D7fe9RTH.js} +1 -1
  205. package/dist/assets/{order-Pqxp_o2D.js → order-DHYMhXzU.js} +1 -1
  206. package/dist/assets/{order-sf9aZWzF.js → order-DPqDFs6s.js} +1 -1
  207. package/dist/assets/{order-CHShvqiR.js → order-DXS83YX-.js} +1 -1
  208. package/dist/assets/{order-BAn01Jdq.js → order-Dhn3sJPe.js} +1 -1
  209. package/dist/assets/{order-Aq1TYmVv.js → order-DmxyzCIg.js} +1 -1
  210. package/dist/assets/{order-kgv9S4hZ.js → order-DqLfGudV.js} +1 -1
  211. package/dist/assets/{order-BWI_TRvE.js → order-X1CIy-nl.js} +1 -1
  212. package/dist/assets/{pagination-C95fpX7B.js → pagination-Dn-q2urn.js} +1 -1
  213. package/dist/assets/{play-store-CQqWMsLM.js → play-store-D97ADBg8.js} +1 -1
  214. package/dist/assets/{plus-COaZb5B9.js → plus-DFhmqPnC.js} +1 -1
  215. package/dist/assets/{price-CMLeXGYL.js → price-DeYmurJ6.js} +1 -1
  216. package/dist/assets/{producer-dPR696AG.js → producer-nk9Jr-mg.js} +1 -1
  217. package/dist/assets/{qr-code-DJpYbF84.js → qr-code-BoL5TfaT.js} +1 -1
  218. package/dist/assets/{recycle-horizontal-D8FqNejx.js → recycle-horizontal-Du9etAqV.js} +1 -1
  219. package/dist/assets/{refresh-CvWajFXX.js → refresh-CL_-dVgQ.js} +1 -1
  220. package/dist/assets/{reown-logo-D-IUAAaQ.js → reown-logo-Vmo9h1a5.js} +1 -1
  221. package/dist/assets/{search-C1QSbmoV.js → search-BZehPVq3.js} +1 -1
  222. package/dist/assets/{secp256k1-CdNBysbQ.js → secp256k1-DzngfDqY.js} +1 -1
  223. package/dist/assets/{secp256k1-BerJEjof.js → secp256k1-m4pwUV7F.js} +1 -1
  224. package/dist/assets/{seedream-FPqlKYkV.js → seedream-TVKX2m8f.js} +1 -1
  225. package/dist/assets/{send-BPr-SYTK.js → send-D81wYULI.js} +1 -1
  226. package/dist/assets/{service-DIdO7z6B.js → service-Bq0_e6Up.js} +1 -1
  227. package/dist/assets/{solana-wallets-DtYtHF55.js → solana-wallets-Eydpq2iT.js} +2 -2
  228. package/dist/assets/{solana-wallets-vue-BassVOrf.js → solana-wallets-vue-DlV0ySZw.js} +1 -1
  229. package/dist/assets/{suno-Bd0x0MxO.js → suno-BFvmTtQK.js} +1 -1
  230. package/dist/assets/{swapHorizontal-CQwGVgWb.js → swapHorizontal-pW-Op0qd.js} +1 -1
  231. package/dist/assets/{swapHorizontalBold-DmuUGF6P.js → swapHorizontalBold-B8t7-8fE.js} +1 -1
  232. package/dist/assets/{swapHorizontalMedium-DaW5LoF1.js → swapHorizontalMedium-BIEjfWNa.js} +1 -1
  233. package/dist/assets/{swapHorizontalRoundedBold-Go1JwXPz.js → swapHorizontalRoundedBold-CGOUulCj.js} +1 -1
  234. package/dist/assets/{swapVertical-BKQs2hoi.js → swapVertical-B2XKOIMa.js} +1 -1
  235. package/dist/assets/{telegram-B4hFe0JH.js → telegram-CXzG-B_B.js} +1 -1
  236. package/dist/assets/{three-dots--6oQSEdB.js → three-dots-DSpzCAst.js} +1 -1
  237. package/dist/assets/{twitch-DMVqbWmy.js → twitch-C1icugWw.js} +1 -1
  238. package/dist/assets/{twitterIcon-DfDdLEw_.js → twitterIcon-FtX8qM42.js} +1 -1
  239. package/dist/assets/{typescript-B00PCKaI.js → typescript-CY0oKMIT.js} +1 -1
  240. package/dist/assets/{use-form-item-Bb96LHMh.js → use-form-item-B1LdPsOA.js} +1 -1
  241. package/dist/assets/validator-DXKD343S.js +1 -0
  242. package/dist/assets/{verify-Cnkb9O5n.js → verify-D05DIHk4.js} +1 -1
  243. package/dist/assets/{verify-filled-xTikAp-D.js → verify-filled-DU8B2HXi.js} +1 -1
  244. package/dist/assets/{w3m-modal-DZp5hxTu.js → w3m-modal-DMtCD6de.js} +1 -1
  245. package/dist/assets/{wallet-Dmf8ljEx.js → wallet-CW-HHqfz.js} +1 -1
  246. package/dist/assets/{wallet-placeholder-SUqDJ9Kn.js → wallet-placeholder--gxmHoUZ.js} +1 -1
  247. package/dist/assets/{walletconnect-CYZ_QXw3.js → walletconnect-Bu0D7crr.js} +1 -1
  248. package/dist/assets/{warning-circle-MXnu8_lp.js → warning-circle-j52AH36j.js} +1 -1
  249. package/dist/assets/{web-Bp8d5cO1.js → web-BbaIQBw7.js} +1 -1
  250. package/dist/assets/{web-Dh_B_uV_.js → web-CGATEDgT.js} +1 -1
  251. package/dist/assets/{web-Bjx_sWoJ.js → web-CZFYNLRa.js} +1 -1
  252. package/dist/assets/{web-DZzsB6Mp.js → web-xQ3IZSDy.js} +1 -1
  253. package/dist/assets/{wechat-D18nbT82.js → wechat-BUR7xCM7.js} +1 -1
  254. package/dist/assets/{x-C9WRvzEs.js → x-svIoZt1n.js} +1 -1
  255. package/dist/index.html +1 -1
  256. package/package.json +2 -2
  257. package/dist/assets/Detail-DYaY9_OW.js +0 -2
  258. package/dist/assets/Pay-CJFF6wco.js +0 -1
  259. package/dist/assets/Pay-CesrMfST.css +0 -1
  260. package/dist/assets/index-2vf0SIFc.js +0 -1
  261. package/dist/assets/index-BCMWKGau.js +0 -1
  262. package/dist/assets/index-CxKozXfz.js +0 -1
  263. package/dist/assets/index-Daau4-Bi.js +0 -1
  264. package/dist/assets/index-H2Ne3KH4.js +0 -1
  265. package/dist/assets/index-TODsGByG.js +0 -1
  266. package/dist/assets/index-jc377qLs.js +0 -1
  267. package/dist/assets/isEqual-CfWw3lpS.js +0 -1
  268. package/dist/assets/validator-ClQ6IwxP.js +0 -1
@@ -1 +1 @@
1
- import{o as v}from"./order-Aq1TYmVv.js";import{P as O}from"./Pagination-DQzxlNaL.js";import{C as N}from"./CopyToClipboard-CZv5BP7B.js";import{O as r}from"./order-CB3uOPHS.js";import{a0 as T,J as U}from"./index-D8aPgnGc.js";import{g as W}from"./price-CMLeXGYL.js";import{F as V}from"./index.es-ChY1FlMW.js";import{a as q}from"./index-TUT4Ls42.js";import{E as H}from"./index-CHrGWwpa.js";import{E as M,a as z}from"./index-qdj2_nOs.js";import{E as B}from"./index-D3WkBohO.js";import{E as X}from"./index-Cf_g4cNy.js";import{E as j,a as Q}from"./index-Csx7MJnP.js";import{E as G,a as J}from"./index-CURyBsYJ.js";import{d as Y,x as c,y as a,E as t,D as l,H as i,C as u,L as E,M as S,N as b,F as K,J as d,W as Z,q as n}from"./vendor-vue-BWIxYyW8.js";import"./typescript-B00PCKaI.js";import"./isEqual-CfWw3lpS.js";import"./_Uint8Array-DtfKpEZY.js";import"./index-Pbe8CChL.js";import"./index-DNCRlcDT.js";import"./index-BNHSnEGK.js";import"./use-form-item-Bb96LHMh.js";import"./index-BLjywj98.js";import"./index-DbIiryMD.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-CCWK5dA3.js";import"./index-CcYwI3ai.js";import"./index-BC6AqXIx.js";import"./debounce-Dl8en2o_.js";import"./index-D_7iS0Ka.js";import"./strings-CoSJ5yUQ.js";import"./castArray-CbnSaxKn.js";import"./_baseIteratee-CY2Cl0zu.js";import"./index-BuyEbX8F.js";import"./_initCloneObject-BzDf8hsu.js";import"./isPlainObject-D5ZKzez2.js";import"./index-BRjvV2nQ.js";const P={total_count:0,total_spent:0,state_counts:{}},x=Y({name:"ConsoleOrderList",components:{Pagination:O,CopyToClipboard:N,ElRow:J,ElCol:G,ElTable:Q,ElTableColumn:j,ElButton:X,ElTag:T,ElCard:B,ElSelect:z,ElOption:M,ElDatePicker:H,ElSkeleton:q,FontAwesomeIcon:V},data(){return{OrderState:r,orders:[],loading:!1,total:void 0,limit:10,filterState:this.$route.query.state?.toString()||"",filterPayWay:this.$route.query.pay_way?.toString()||"",createdAtRange:(()=>{const e=this.$route.query.created_at_from?.toString(),s=this.$route.query.created_at_to?.toString();if(e&&s)return[new Date(e),new Date(s)]})(),summary:{...P},summaryLoading:!1,exporting:!1,shortcuts:[{text:this.$t("usage.shortcuts.today"),value:()=>{const e=new Date,s=new Date;return s.setHours(0,0,0,0),[s,e]}},{text:this.$t("usage.shortcuts.last7Days"),value:()=>{const e=new Date,s=new Date;return s.setDate(s.getDate()-7),[s,e]}},{text:this.$t("usage.shortcuts.last1Month"),value:()=>{const e=new Date,s=new Date;return s.setMonth(s.getMonth()-1),[s,e]}}]}},computed:{page(){return parseInt(this.$route.query.page?.toString()||"1")},stateOptions(){return[{value:r.PENDING,label:this.$t("order.state.pending")},{value:r.FINISHED,label:this.$t("order.state.finished")},{value:r.PAID,label:this.$t("order.state.paid")},{value:r.EXPIRED,label:this.$t("order.state.expired")},{value:r.FAILED,label:this.$t("order.state.failed")},{value:r.REFUNDED,label:this.$t("order.state.refunded")}]},payWayOptions(){return[{value:"WechatPay",label:this.$t("order.title.wechatPay")},{value:"Stripe",label:this.$t("order.title.stripe")},{value:"AliPay",label:this.$t("order.title.aliPay")},{value:"X402",label:this.$t("order.title.x402")},{value:"PayPal",label:this.$t("order.title.paypal")}]},filterQuery(){const e={user_id:this.$store.getters.user?.id};return this.filterState&&(e.state=this.filterState),this.filterPayWay&&(e.pay_way=this.filterPayWay),this.createdAtRange?.[0]&&(e.created_at_from=this.createdAtRange[0]),this.createdAtRange?.[1]&&(e.created_at_to=this.createdAtRange[1]),e}},watch:{page:{handler(){this.onFetchData()}}},mounted(){this.onFetchData(),this.onFetchSummary()},methods:{getPriceString:W,stateTagType(e){return e===r.FINISHED||e===r.PAID?"success":e===r.EXPIRED||e===r.FAILED?"danger":e===r.REFUNDED?"warning":"info"},stateLabel(e){return{[r.PENDING]:this.$t("order.state.pending"),[r.PAID]:this.$t("order.state.paid"),[r.FINISHED]:this.$t("order.state.finished"),[r.EXPIRED]:this.$t("order.state.expired"),[r.FAILED]:this.$t("order.state.failed"),[r.REFUNDED]:this.$t("order.state.refunded")}[e]||e},isPendingAction(e){return e!==r.PAID&&e!==r.FINISHED&&e!==r.EXPIRED&&e!==r.FAILED&&e!==r.REFUNDED},goToDetail(e){this.$router.push({name:"console-order-detail",params:{id:e}})},async onFilterChange(){await this.$router.push({name:this.$route.name?.toString(),query:{page:1,...this.filterState?{state:this.filterState}:{},...this.filterPayWay?{pay_way:this.filterPayWay}:{},...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0].toISOString()}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1].toISOString()}:{}}}),this.onFetchData(),this.onFetchSummary()},onPageChange(e){this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,page:e}})},onFetchData(){this.loading=!0,v.getAll({ordering:"-created_at",limit:this.limit,offset:(this.page-1)*this.limit,...this.filterQuery}).then(({data:e})=>{this.orders=e.items,this.total=e.count}).catch(()=>{}).finally(()=>{this.loading=!1})},onFetchSummary(){this.summaryLoading=!0,v.getSummary(this.filterQuery).then(({data:e})=>{this.summary=e}).catch(()=>{this.summary={...P}}).finally(()=>{this.summaryLoading=!1})},onExport(){this.exporting=!0,v.exportCsv(this.filterQuery).then(({data:e})=>{const s=window.URL.createObjectURL(e),_=document.createElement("a");_.href=s,_.download="orders.csv",_.click(),window.URL.revokeObjectURL(s)}).catch(()=>{}).finally(()=>{this.exporting=!1})}}}),ee={class:"title"},te={key:1,class:"card-content"},ae={class:"icon-wrapper"},oe={class:"description"},se={class:"value"},re={key:1,class:"card-content"},le={class:"icon-wrapper"},ie={class:"description"},ne={class:"value"},de={key:1,class:"card-content"},ce={class:"icon-wrapper"},pe={class:"description"},me={class:"value"},ue={key:1,class:"card-content"},he={class:"icon-wrapper"},fe={class:"description"},ge={class:"value"},_e={class:"filter-row mb-3"},ye={class:"key"},be={class:"cursor-pointer"},$e={class:"price"},ve={class:"description"},we={class:"text-gray-500"},De={class:"created-at"},Ee={class:"flex items-center justify-center flex-wrap"},Se={class:"float-right"};function Pe(e,s,_,ke,Ce,Fe){const p=d("el-col"),h=d("el-row"),y=d("el-skeleton"),f=d("font-awesome-icon"),g=d("el-card"),w=d("el-option"),D=d("el-select"),k=d("el-date-picker"),$=d("el-button"),C=d("copy-to-clipboard"),m=d("el-table-column"),F=d("el-tag"),A=d("el-table"),I=d("pagination"),R=Z("loading");return n(),c(h,{class:"panel"},{default:a(()=>[t(p,{span:24},{default:a(()=>[t(h,null,{default:a(()=>[t(p,{span:24},{default:a(()=>[l("h2",ee,i(e.$t("common.title.allOrders")),1)]),_:1})]),_:1}),t(h,{gutter:16},{default:a(()=>[t(p,{md:6,sm:12,xs:24},{default:a(()=>[t(g,{shadow:"hover",class:"item-mini mb-3"},{default:a(()=>[e.summaryLoading?(n(),c(y,{key:0})):(n(),u("div",te,[l("div",ae,[t(f,{icon:"fa-solid fa-receipt",class:"icon"})]),l("p",oe,i(e.$t("order.title.totalOrders")),1),l("p",se,i(e.summary.total_count),1)]))]),_:1})]),_:1}),t(p,{md:6,sm:12,xs:24},{default:a(()=>[t(g,{shadow:"hover",class:"item-mini mb-3"},{default:a(()=>[e.summaryLoading?(n(),c(y,{key:0})):(n(),u("div",re,[l("div",le,[t(f,{icon:"fa-solid fa-dollar-sign",class:"icon"})]),l("p",ie,i(e.$t("order.title.totalSpent")),1),l("p",ne,i(e.getPriceString({value:e.summary.total_spent})),1)]))]),_:1})]),_:1}),t(p,{md:6,sm:12,xs:24},{default:a(()=>[t(g,{shadow:"hover",class:"item-mini mb-3"},{default:a(()=>[e.summaryLoading?(n(),c(y,{key:0})):(n(),u("div",de,[l("div",ce,[t(f,{icon:"fa-solid fa-check-circle",class:"icon"})]),l("p",pe,i(e.$t("order.title.finishedOrders")),1),l("p",me,i(e.summary.state_counts?.Finished||0),1)]))]),_:1})]),_:1}),t(p,{md:6,sm:12,xs:24},{default:a(()=>[t(g,{shadow:"hover",class:"item-mini mb-3"},{default:a(()=>[e.summaryLoading?(n(),c(y,{key:0})):(n(),u("div",ue,[l("div",he,[t(f,{icon:"fa-solid fa-clock",class:"icon"})]),l("p",fe,i(e.$t("order.title.pendingOrders")),1),l("p",ge,i(e.summary.state_counts?.Pending||0),1)]))]),_:1})]),_:1})]),_:1}),l("div",_e,[t(D,{modelValue:e.filterState,"onUpdate:modelValue":s[0]||(s[0]=o=>e.filterState=o),clearable:"",placeholder:e.$t("order.field.allStates"),class:"filter-select",onChange:e.onFilterChange},{default:a(()=>[(n(!0),u(S,null,E(e.stateOptions,o=>(n(),c(w,{key:o.value,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","onChange"]),t(D,{modelValue:e.filterPayWay,"onUpdate:modelValue":s[1]||(s[1]=o=>e.filterPayWay=o),clearable:"",placeholder:e.$t("order.field.allPayWays"),class:"filter-select",onChange:e.onFilterChange},{default:a(()=>[(n(!0),u(S,null,E(e.payWayOptions,o=>(n(),c(w,{key:o.value,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","onChange"]),t(k,{modelValue:e.createdAtRange,"onUpdate:modelValue":s[2]||(s[2]=o=>e.createdAtRange=o),type:"datetimerange",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.onFilterChange},null,8,["modelValue","shortcuts","range-separator","start-placeholder","end-placeholder","onChange"]),t($,{type:"primary",plain:"",loading:e.exporting,onClick:e.onExport},{default:a(()=>[t(f,{icon:"fa-solid fa-file-export",class:"mr-1"}),b(" "+i(e.$t("order.button.export")),1)]),_:1},8,["loading","onClick"])]),t(h,null,{default:a(()=>[t(p,{span:24},{default:a(()=>[t(g,{shadow:"hover"},{default:a(()=>[K((n(),c(A,{data:e.orders,stripe:"","empty-text":e.$t("common.message.noData"),class:"min-h-[calc(100vh-450px)] mb-[20px]"},{default:a(()=>[t(m,{prop:"id",label:e.$t("order.field.id"),"class-name":"text-center",width:"200px"},{default:a(o=>[l("span",ye,i(o.row.id),1),l("span",be,[t(C,{content:o.row.id,class:"inline-block"},null,8,["content"])])]),_:1},8,["label"]),t(m,{label:e.$t("order.field.price"),width:"110px",align:"center"},{default:a(o=>[l("span",$e,i(e.getPriceString({value:o.row?.price})),1)]),_:1},8,["label"]),t(m,{label:e.$t("order.field.description"),"min-width":"220px","class-name":"hidden md:table-cell","label-class-name":"hidden md:table-cell"},{default:a(o=>[l("span",ve,i(o.row.description),1)]),_:1},8,["label"]),t(m,{prop:"state",label:e.$t("order.field.state"),width:"130px",align:"center"},{default:a(o=>[t(F,{type:e.stateTagType(o.row.state),class:"mx-1",effect:"dark",round:"",size:"small"},{default:a(()=>[b(i(e.stateLabel(o.row.state)),1)]),_:2},1032,["type"])]),_:1},8,["label"]),t(m,{label:e.$t("order.field.payWay"),width:"120px",align:"center","class-name":"hidden md:table-cell","label-class-name":"hidden md:table-cell"},{default:a(o=>[l("span",we,i(o.row.pay_way||"-"),1)]),_:1},8,["label"]),t(m,{label:e.$t("order.field.createdAt"),width:"200px","class-name":"hidden sm:table-cell","label-class-name":"hidden sm:table-cell"},{default:a(o=>[l("span",De,i(e.$dayjs.format(o.row.created_at)),1)]),_:1},8,["label"]),t(m,{"min-width":"130px",fixed:"right"},{default:a(o=>[l("div",Ee,[e.isPendingAction(o.row.state)?(n(),c($,{key:0,type:"primary",size:"small",onClick:L=>e.goToDetail(o.row.id)},{default:a(()=>[b(i(e.$t("order.button.continuePay")),1)]),_:1},8,["onClick"])):(n(),c($,{key:1,size:"small",onClick:L=>e.goToDetail(o.row.id)},{default:a(()=>[b(i(e.$t("order.button.checkDetail")),1)]),_:1},8,["onClick"]))])]),_:1})]),_:1},8,["data","empty-text"])),[[R,e.loading]])]),_:1})]),_:1})]),_:1}),t(h,null,{default:a(()=>[t(p,{span:10,offset:14},{default:a(()=>[l("div",Se,[t(I,{"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})}const ht=U(x,[["render",Pe],["__scopeId","data-v-350ab467"]]);export{ht as default};
1
+ import{o as v}from"./order-DmxyzCIg.js";import{P as O}from"./Pagination-rUnbqOLh.js";import{C as N}from"./CopyToClipboard-DtIK0kcZ.js";import{O as r}from"./order-CB3uOPHS.js";import{a0 as T,J as U}from"./index-DbTnCj6Y.js";import{g as W}from"./price-DeYmurJ6.js";import{F as V}from"./index.es-DMDeBnDi.js";import{a as q}from"./index-DqtdF-UV.js";import{E as H}from"./index-DApceo0N.js";import{E as M,a as z}from"./index-B0SN8iJh.js";import{E as B}from"./index-Cv9n35Q1.js";import{E as X}from"./index-BxvVaie9.js";import{E as j,a as Q}from"./index-DicsQbSj.js";import{E as G,a as J}from"./index-pm-DMONm.js";import{d as Y,x as c,y as a,E as t,D as l,H as i,C as u,L as E,M as S,N as b,F as K,J as d,W as Z,q as n}from"./vendor-vue-BWIxYyW8.js";import"./typescript-CY0oKMIT.js";import"./isEqual-ARjTA69Y.js";import"./_Uint8Array-CXUVTNFA.js";import"./index-Do6ztq8u.js";import"./index-Dwi7KeFX.js";import"./index-BQHgP10P.js";import"./use-form-item-B1LdPsOA.js";import"./index-BLjywj98.js";import"./index-DuvI3onY.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-CCWK5dA3.js";import"./index-CXJwHbs-.js";import"./index-BC6AqXIx.js";import"./debounce-B-vwp3ga.js";import"./index-DFezti2N.js";import"./strings-CoSJ5yUQ.js";import"./castArray-Cv8DqDDB.js";import"./_baseIteratee-CCPLrKcd.js";import"./index-BuyEbX8F.js";import"./_initCloneObject-B8-TXaLO.js";import"./isPlainObject-B5tfD1Mc.js";import"./index-Dpfvnj_D.js";const P={total_count:0,total_spent:0,state_counts:{}},x=Y({name:"ConsoleOrderList",components:{Pagination:O,CopyToClipboard:N,ElRow:J,ElCol:G,ElTable:Q,ElTableColumn:j,ElButton:X,ElTag:T,ElCard:B,ElSelect:z,ElOption:M,ElDatePicker:H,ElSkeleton:q,FontAwesomeIcon:V},data(){return{OrderState:r,orders:[],loading:!1,total:void 0,limit:10,filterState:this.$route.query.state?.toString()||"",filterPayWay:this.$route.query.pay_way?.toString()||"",createdAtRange:(()=>{const e=this.$route.query.created_at_from?.toString(),s=this.$route.query.created_at_to?.toString();if(e&&s)return[new Date(e),new Date(s)]})(),summary:{...P},summaryLoading:!1,exporting:!1,shortcuts:[{text:this.$t("usage.shortcuts.today"),value:()=>{const e=new Date,s=new Date;return s.setHours(0,0,0,0),[s,e]}},{text:this.$t("usage.shortcuts.last7Days"),value:()=>{const e=new Date,s=new Date;return s.setDate(s.getDate()-7),[s,e]}},{text:this.$t("usage.shortcuts.last1Month"),value:()=>{const e=new Date,s=new Date;return s.setMonth(s.getMonth()-1),[s,e]}}]}},computed:{page(){return parseInt(this.$route.query.page?.toString()||"1")},stateOptions(){return[{value:r.PENDING,label:this.$t("order.state.pending")},{value:r.FINISHED,label:this.$t("order.state.finished")},{value:r.PAID,label:this.$t("order.state.paid")},{value:r.EXPIRED,label:this.$t("order.state.expired")},{value:r.FAILED,label:this.$t("order.state.failed")},{value:r.REFUNDED,label:this.$t("order.state.refunded")}]},payWayOptions(){return[{value:"WechatPay",label:this.$t("order.title.wechatPay")},{value:"Stripe",label:this.$t("order.title.stripe")},{value:"AliPay",label:this.$t("order.title.aliPay")},{value:"X402",label:this.$t("order.title.x402")},{value:"PayPal",label:this.$t("order.title.paypal")}]},filterQuery(){const e={user_id:this.$store.getters.user?.id};return this.filterState&&(e.state=this.filterState),this.filterPayWay&&(e.pay_way=this.filterPayWay),this.createdAtRange?.[0]&&(e.created_at_from=this.createdAtRange[0]),this.createdAtRange?.[1]&&(e.created_at_to=this.createdAtRange[1]),e}},watch:{page:{handler(){this.onFetchData()}}},mounted(){this.onFetchData(),this.onFetchSummary()},methods:{getPriceString:W,stateTagType(e){return e===r.FINISHED||e===r.PAID?"success":e===r.EXPIRED||e===r.FAILED?"danger":e===r.REFUNDED?"warning":"info"},stateLabel(e){return{[r.PENDING]:this.$t("order.state.pending"),[r.PAID]:this.$t("order.state.paid"),[r.FINISHED]:this.$t("order.state.finished"),[r.EXPIRED]:this.$t("order.state.expired"),[r.FAILED]:this.$t("order.state.failed"),[r.REFUNDED]:this.$t("order.state.refunded")}[e]||e},isPendingAction(e){return e!==r.PAID&&e!==r.FINISHED&&e!==r.EXPIRED&&e!==r.FAILED&&e!==r.REFUNDED},goToDetail(e){this.$router.push({name:"console-order-detail",params:{id:e}})},async onFilterChange(){await this.$router.push({name:this.$route.name?.toString(),query:{page:1,...this.filterState?{state:this.filterState}:{},...this.filterPayWay?{pay_way:this.filterPayWay}:{},...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0].toISOString()}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1].toISOString()}:{}}}),this.onFetchData(),this.onFetchSummary()},onPageChange(e){this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,page:e}})},onFetchData(){this.loading=!0,v.getAll({ordering:"-created_at",limit:this.limit,offset:(this.page-1)*this.limit,...this.filterQuery}).then(({data:e})=>{this.orders=e.items,this.total=e.count}).catch(()=>{}).finally(()=>{this.loading=!1})},onFetchSummary(){this.summaryLoading=!0,v.getSummary(this.filterQuery).then(({data:e})=>{this.summary=e}).catch(()=>{this.summary={...P}}).finally(()=>{this.summaryLoading=!1})},onExport(){this.exporting=!0,v.exportCsv(this.filterQuery).then(({data:e})=>{const s=window.URL.createObjectURL(e),_=document.createElement("a");_.href=s,_.download="orders.csv",_.click(),window.URL.revokeObjectURL(s)}).catch(()=>{}).finally(()=>{this.exporting=!1})}}}),ee={class:"title"},te={key:1,class:"card-content"},ae={class:"icon-wrapper"},oe={class:"description"},se={class:"value"},re={key:1,class:"card-content"},le={class:"icon-wrapper"},ie={class:"description"},ne={class:"value"},de={key:1,class:"card-content"},ce={class:"icon-wrapper"},pe={class:"description"},me={class:"value"},ue={key:1,class:"card-content"},he={class:"icon-wrapper"},fe={class:"description"},ge={class:"value"},_e={class:"filter-row mb-3"},ye={class:"key"},be={class:"cursor-pointer"},$e={class:"price"},ve={class:"description"},we={class:"text-gray-500"},De={class:"created-at"},Ee={class:"flex items-center justify-center flex-wrap"},Se={class:"float-right"};function Pe(e,s,_,ke,Ce,Fe){const p=d("el-col"),h=d("el-row"),y=d("el-skeleton"),f=d("font-awesome-icon"),g=d("el-card"),w=d("el-option"),D=d("el-select"),k=d("el-date-picker"),$=d("el-button"),C=d("copy-to-clipboard"),m=d("el-table-column"),F=d("el-tag"),A=d("el-table"),I=d("pagination"),R=Z("loading");return n(),c(h,{class:"panel"},{default:a(()=>[t(p,{span:24},{default:a(()=>[t(h,null,{default:a(()=>[t(p,{span:24},{default:a(()=>[l("h2",ee,i(e.$t("common.title.allOrders")),1)]),_:1})]),_:1}),t(h,{gutter:16},{default:a(()=>[t(p,{md:6,sm:12,xs:24},{default:a(()=>[t(g,{shadow:"hover",class:"item-mini mb-3"},{default:a(()=>[e.summaryLoading?(n(),c(y,{key:0})):(n(),u("div",te,[l("div",ae,[t(f,{icon:"fa-solid fa-receipt",class:"icon"})]),l("p",oe,i(e.$t("order.title.totalOrders")),1),l("p",se,i(e.summary.total_count),1)]))]),_:1})]),_:1}),t(p,{md:6,sm:12,xs:24},{default:a(()=>[t(g,{shadow:"hover",class:"item-mini mb-3"},{default:a(()=>[e.summaryLoading?(n(),c(y,{key:0})):(n(),u("div",re,[l("div",le,[t(f,{icon:"fa-solid fa-dollar-sign",class:"icon"})]),l("p",ie,i(e.$t("order.title.totalSpent")),1),l("p",ne,i(e.getPriceString({value:e.summary.total_spent})),1)]))]),_:1})]),_:1}),t(p,{md:6,sm:12,xs:24},{default:a(()=>[t(g,{shadow:"hover",class:"item-mini mb-3"},{default:a(()=>[e.summaryLoading?(n(),c(y,{key:0})):(n(),u("div",de,[l("div",ce,[t(f,{icon:"fa-solid fa-check-circle",class:"icon"})]),l("p",pe,i(e.$t("order.title.finishedOrders")),1),l("p",me,i(e.summary.state_counts?.Finished||0),1)]))]),_:1})]),_:1}),t(p,{md:6,sm:12,xs:24},{default:a(()=>[t(g,{shadow:"hover",class:"item-mini mb-3"},{default:a(()=>[e.summaryLoading?(n(),c(y,{key:0})):(n(),u("div",ue,[l("div",he,[t(f,{icon:"fa-solid fa-clock",class:"icon"})]),l("p",fe,i(e.$t("order.title.pendingOrders")),1),l("p",ge,i(e.summary.state_counts?.Pending||0),1)]))]),_:1})]),_:1})]),_:1}),l("div",_e,[t(D,{modelValue:e.filterState,"onUpdate:modelValue":s[0]||(s[0]=o=>e.filterState=o),clearable:"",placeholder:e.$t("order.field.allStates"),class:"filter-select",onChange:e.onFilterChange},{default:a(()=>[(n(!0),u(S,null,E(e.stateOptions,o=>(n(),c(w,{key:o.value,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","onChange"]),t(D,{modelValue:e.filterPayWay,"onUpdate:modelValue":s[1]||(s[1]=o=>e.filterPayWay=o),clearable:"",placeholder:e.$t("order.field.allPayWays"),class:"filter-select",onChange:e.onFilterChange},{default:a(()=>[(n(!0),u(S,null,E(e.payWayOptions,o=>(n(),c(w,{key:o.value,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","onChange"]),t(k,{modelValue:e.createdAtRange,"onUpdate:modelValue":s[2]||(s[2]=o=>e.createdAtRange=o),type:"datetimerange",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.onFilterChange},null,8,["modelValue","shortcuts","range-separator","start-placeholder","end-placeholder","onChange"]),t($,{type:"primary",plain:"",loading:e.exporting,onClick:e.onExport},{default:a(()=>[t(f,{icon:"fa-solid fa-file-export",class:"mr-1"}),b(" "+i(e.$t("order.button.export")),1)]),_:1},8,["loading","onClick"])]),t(h,null,{default:a(()=>[t(p,{span:24},{default:a(()=>[t(g,{shadow:"hover"},{default:a(()=>[K((n(),c(A,{data:e.orders,stripe:"","empty-text":e.$t("common.message.noData"),class:"min-h-[calc(100vh-450px)] mb-[20px]"},{default:a(()=>[t(m,{prop:"id",label:e.$t("order.field.id"),"class-name":"text-center",width:"200px"},{default:a(o=>[l("span",ye,i(o.row.id),1),l("span",be,[t(C,{content:o.row.id,class:"inline-block"},null,8,["content"])])]),_:1},8,["label"]),t(m,{label:e.$t("order.field.price"),width:"110px",align:"center"},{default:a(o=>[l("span",$e,i(e.getPriceString({value:o.row?.price})),1)]),_:1},8,["label"]),t(m,{label:e.$t("order.field.description"),"min-width":"220px","class-name":"hidden md:table-cell","label-class-name":"hidden md:table-cell"},{default:a(o=>[l("span",ve,i(o.row.description),1)]),_:1},8,["label"]),t(m,{prop:"state",label:e.$t("order.field.state"),width:"130px",align:"center"},{default:a(o=>[t(F,{type:e.stateTagType(o.row.state),class:"mx-1",effect:"dark",round:"",size:"small"},{default:a(()=>[b(i(e.stateLabel(o.row.state)),1)]),_:2},1032,["type"])]),_:1},8,["label"]),t(m,{label:e.$t("order.field.payWay"),width:"120px",align:"center","class-name":"hidden md:table-cell","label-class-name":"hidden md:table-cell"},{default:a(o=>[l("span",we,i(o.row.pay_way||"-"),1)]),_:1},8,["label"]),t(m,{label:e.$t("order.field.createdAt"),width:"200px","class-name":"hidden sm:table-cell","label-class-name":"hidden sm:table-cell"},{default:a(o=>[l("span",De,i(e.$dayjs.format(o.row.created_at)),1)]),_:1},8,["label"]),t(m,{"min-width":"130px",fixed:"right"},{default:a(o=>[l("div",Ee,[e.isPendingAction(o.row.state)?(n(),c($,{key:0,type:"primary",size:"small",onClick:L=>e.goToDetail(o.row.id)},{default:a(()=>[b(i(e.$t("order.button.continuePay")),1)]),_:1},8,["onClick"])):(n(),c($,{key:1,size:"small",onClick:L=>e.goToDetail(o.row.id)},{default:a(()=>[b(i(e.$t("order.button.checkDetail")),1)]),_:1},8,["onClick"]))])]),_:1})]),_:1},8,["data","empty-text"])),[[R,e.loading]])]),_:1})]),_:1})]),_:1}),t(h,null,{default:a(()=>[t(p,{span:10,offset:14},{default:a(()=>[l("div",Se,[t(I,{"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})}const ht=U(x,[["render",Pe],["__scopeId","data-v-350ab467"]]);export{ht as default};
@@ -1 +1 @@
1
- import{a5 as h,a0 as F,o as A,a6 as T,a7 as G,a8 as P,J as B}from"./index-D8aPgnGc.js";import{I as N,a as V}from"./credential-CEfFFZzi.js";import{P as x}from"./Pagination-DQzxlNaL.js";import{C as O}from"./CopyToClipboard-CZv5BP7B.js";import{F as z}from"./index.es-ChY1FlMW.js";import{E as q}from"./index-D3WkBohO.js";import{E as M,a as R}from"./index-Csx7MJnP.js";import{E as j}from"./index-DDcepg7B.js";import{a as J}from"./index-TUT4Ls42.js";import{E as H,a as W}from"./index-CURyBsYJ.js";import{E as X}from"./index-Cf_g4cNy.js";import{E as $}from"./index-DZku_iGx.js";import{d as K,x as r,y as t,E as a,D as i,H as l,C,N as m,I as u,F as Q,J as p,W as Y,q as s}from"./vendor-vue-BWIxYyW8.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-CCWK5dA3.js";import"./index-qdj2_nOs.js";import"./index-DbIiryMD.js";import"./index-Pbe8CChL.js";import"./typescript-B00PCKaI.js";import"./index-CcYwI3ai.js";import"./strings-CoSJ5yUQ.js";import"./isEqual-CfWw3lpS.js";import"./_Uint8Array-DtfKpEZY.js";import"./castArray-CbnSaxKn.js";import"./use-form-item-Bb96LHMh.js";import"./index-DNCRlcDT.js";import"./index-BNHSnEGK.js";import"./debounce-Dl8en2o_.js";import"./_baseIteratee-CY2Cl0zu.js";import"./index-D_7iS0Ka.js";import"./index-BLjywj98.js";import"./_initCloneObject-BzDf8hsu.js";import"./isPlainObject-D5ZKzez2.js";import"./index-BRjvV2nQ.js";import"./validator-ClQ6IwxP.js";import"./index-BuyEbX8F.js";const Z=K({name:"ConsoleApplicationList",components:{Pagination:x,CopyToClipboard:O,ElTable:R,ElRow:W,ElButton:X,ElCol:H,ElTag:F,ElSkeleton:J,ElSwitch:j,ElTableColumn:M,ElCard:q,FontAwesomeIcon:z},data(){return{credentialType:V,serviceType:N,individualApplications:[],globalApplications:[],individualApplicationsTotal:void 0,globalApplicationsTotal:void 0,loading:!1,buying:!1,limit:10,form:{amount:1},active:{service:void 0,application:void 0}}},computed:{redirect(){return this.$route.query?.redirect},page(){return parseInt(this.$route.query.page?.toString()||"1")},showPayment(){return!0}},watch:{page:{handler(){this.onFetchData()}}},mounted(){this.onInitializeGlobalApplication(),this.onFetchData()},methods:{updateAllowConsumeGlobal(e,n){!e||!e.id||A.updateAllConsumeGlobal(e.id,{...e,allow_consume_global:!!n}).then(()=>{$.success(this.$t("application.message.updateSuccessfully").toString())}).catch(()=>{$.error(this.$t("application.message.updateFailed").toString())})},onGoUsage(e){this.$router.push({name:P,query:{application_id:e.id,type:e?.service?.type}})},onBuyMore(e){e?.id&&this.$router.push({name:G,params:{id:e.id}})},onPageChange(e){this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,page:e}})},onFetchApplications(e=h.INDIVIDUAL){return new Promise((n,k)=>{A.getAll({limit:this.limit,...e===h.INDIVIDUAL?{offset:(this.page-1)*this.limit}:{},user_id:this.$store.getters.user.id,ordering:"-created_at",type:T.USAGE,scope:e}).then(({data:d})=>{e===h.INDIVIDUAL?(this.individualApplications=d.items,this.individualApplicationsTotal=d.count):(this.globalApplications=d.items,this.globalApplicationsTotal=d.count),n(d)}).catch(d=>{$.error(this.$t("application.message.fetchFailed").toString()),k(d)})})},onFetchData(){this.loading=!0,Promise.all([this.onFetchApplications(h.INDIVIDUAL),this.onFetchApplications(h.GLOBAL)]).then(()=>{this.loading=!1}).catch(()=>{this.loading=!1})},onInitializeGlobalApplication(){A.create({type:T.USAGE,scope:h.GLOBAL,user_id:this.$store.getters.user.id}).finally(()=>{this.onFetchApplications(h.GLOBAL)})},getRemainingAmount(e){if(e.remaining_amount===void 0||e.remaining_amount===null)return"";const n=this.$t(`service.unit.${e?.service?.unit||"credit"}s`);return`${e.remaining_amount?.toFixed(6)} ${n}`},getUsedAmount(e){if(e.used_amount===void 0||e.used_amount===null)return"";const n=this.$t(`service.unit.${e?.service?.unit||"credit"}s`);return`${e.used_amount?.toFixed(6)} ${n}`}}}),ee={class:"title"},te={key:1,class:"summary-card"},ae={class:"icon-wrapper"},oe={class:"label"},le={class:"value"},ie={class:"description"},se={key:1,class:"flex flex-row justify-between align-center"},ne={class:"summary-card"},re={class:"flex justify-start items-center gap-2 mb-2 w-full"},pe={class:"icon-wrapper !mb-0"},de={class:"text-[var(--el-text-color-regular)] text-[14px] truncate"},ce={class:"label"},me={class:"value"},ue={class:"description"},he={class:"flex flex-col items-end gap-2"},fe={class:"copy"},ge={key:0,class:"expired-at"},_e={class:"flex flex-wrap items-center justify-end gap-1"},be={class:"pagination"};function ye(e,n,k,d,ve,we){const f=p("el-col"),_=p("el-row"),I=p("el-skeleton"),g=p("font-awesome-icon"),v=p("el-card"),E=p("copy-to-clipboard"),y=p("el-button"),c=p("el-table-column"),w=p("el-tag"),D=p("el-switch"),S=p("el-table"),U=p("pagination"),L=Y("loading");return s(),r(_,{class:"application-list"},{default:t(()=>[a(f,{span:24},{default:t(()=>[a(_,null,{default:t(()=>[a(f,{span:24},{default:t(()=>[i("h2",ee,l(e.$t("common.title.allApplications")),1)]),_:1})]),_:1}),a(_,{gutter:15,class:"mb-3"},{default:t(()=>[a(f,{md:12,xs:24},{default:t(()=>[a(v,{shadow:"hover",class:"relative min-h-[180px] mb-2","body-style":{padding:"18px 20px"}},{default:t(()=>[e.loading?(s(),r(I,{key:0})):(s(),C("div",te,[i("div",ae,[a(g,{icon:"fa-solid fa-cubes-stacked"})]),i("p",oe,l(e.$t("application.title.count")),1),i("p",le,l(e.individualApplicationsTotal),1),i("p",ie,l(e.$t("application.message.countDescription")),1)]))]),_:1})]),_:1}),e.showPayment&&e.globalApplications?.length>0?(s(),r(f,{key:0,md:12,xs:24},{default:t(()=>[a(v,{shadow:"hover",class:"relative min-h-[180px] mb-2","body-style":{padding:"18px 20px"}},{default:t(()=>[e.loading?(s(),r(I,{key:0})):(s(),C("div",se,[i("div",ne,[i("div",re,[i("div",pe,[a(g,{icon:"fa-solid fa-wallet"})]),i("span",de,[m(l(e.$t("application.field.id"))+": "+l(e.globalApplications?.[0]?.id)+" ",1),e.globalApplications?.[0]?.id?(s(),r(E,{key:0,content:e.globalApplications?.[0]?.id,class:"inline-block"},null,8,["content"])):u("",!0)])]),i("p",ce,l(e.$t("application.title.globalBalance")),1),i("p",me,l(e.globalApplications?.[0]?.remaining_amount?.toFixed(6)||"0.000000")+" "+l(e.$t("service.unit.credits")),1),i("p",ue,l(e.$t("application.message.globalBalanceDescription")),1)]),i("div",he,[a(y,{class:"!m-0 !px-2",size:"small",round:"",onClick:n[0]||(n[0]=o=>e.onGoUsage(e.globalApplications?.[0]))},{default:t(()=>[a(g,{icon:"fa-solid fa-chart-line",class:"mr-1 text-[12px]"}),m(" "+l(e.$t("application.button.usage")),1)]),_:1}),e.showPayment?(s(),r(y,{key:0,class:"!m-0 !px-2",type:"primary",round:"",size:"small",onClick:n[1]||(n[1]=o=>e.onBuyMore(e.globalApplications?.[0]))},{default:t(()=>[a(g,{icon:"fa-solid fa-coins",class:"mr-1 text-[12px]"}),m(" "+l(e.$t("application.button.buyMore")),1)]),_:1})):u("",!0)])]))]),_:1})]),_:1})):u("",!0)]),_:1}),a(_,null,{default:t(()=>[a(f,{span:24},{default:t(()=>[a(v,{shadow:"hover",class:"applications-table-card"},{default:t(()=>[Q((s(),r(S,{data:e.individualApplications,stripe:"",class:"applications-table !min-h-[calc(100vh-420px)]","table-layout":"fixed","empty-text":e.$t("common.message.noData")},{default:t(()=>[a(c,{prop:"id",label:e.$t("application.field.id"),width:"200px","class-name":"text-center"},{default:t(o=>[i("span",null,l(o.row.id),1),i("span",fe,[a(E,{content:o?.row?.id,class:"inline-block"},null,8,["content"])])]),_:1},8,["label"]),a(c,{label:e.$t("application.field.type"),width:"90px","class-name":"hidden sm:table-cell","label-class-name":"hidden sm:table-cell"},{default:t(o=>[o.row?.type==="Period"?(s(),r(w,{key:0,type:"success",effect:"dark",round:""},{default:t(()=>[m(l(e.$t("application.type.period")),1)]),_:1})):o.row?.type==="Usage"?(s(),r(w,{key:1,effect:"dark",round:""},{default:t(()=>[m(l(e.$t("application.type.usage")),1)]),_:1})):u("",!0)]),_:1},8,["label"]),a(c,{label:e.$t("application.field.name"),width:"180px"},{default:t(o=>[i("span",null,l(o.row?.service?.title),1),o.row?.role==="grantee"?(s(),r(w,{key:0,type:"info",size:"small",round:"",class:"ml-2"},{default:t(()=>[m(l(e.$t("application.badge.shared")),1)]),_:1})):u("",!0)]),_:1},8,["label"]),a(c,{prop:"remaining_amount",label:e.$t("application.field.remainingAmount"),width:"150px","class-name":"text-center"},{default:t(o=>[i("span",null,l(e.getRemainingAmount(o.row)),1)]),_:1},8,["label"]),a(c,{prop:"used_amount",label:e.$t("application.field.usedAmount"),width:"150px","class-name":"hidden sm:table-cell text-center","label-class-name":"hidden sm:table-cell"},{default:t(o=>[i("span",null,l(e.getUsedAmount(o.row)),1)]),_:1},8,["label"]),a(c,{prop:"allow_consume_global",label:e.$t("application.field.allowConsumeGlobal"),width:"120px","class-name":"hidden sm:table-cell text-center","label-class-name":"hidden sm:table-cell"},{default:t(o=>[o.row.service?.type===e.serviceType.API?(s(),r(D,{key:0,modelValue:o.row.allow_consume_global,"onUpdate:modelValue":b=>o.row.allow_consume_global=b,"active-value":!0,"inactive-value":!1,onChange:b=>e.updateAllowConsumeGlobal(o.row,b)},null,8,["modelValue","onUpdate:modelValue","onChange"])):u("",!0)]),_:1},8,["label"]),a(c,{label:e.$t("application.field.expiredAt"),width:"180px","class-name":"hidden sm:table-cell","label-class-name":"hidden sm:table-cell"},{default:t(o=>[o.row.expired_at?(s(),C("span",ge,l(e.$dayjs.format(o.row.expired_at)),1)):u("",!0)]),_:1},8,["label"]),a(c,{fixed:"right",width:"200px"},{default:t(o=>[i("div",_e,[a(y,{class:"!m-0 !px-2",size:"small",round:"",onClick:b=>e.onGoUsage(o?.row)},{default:t(()=>[a(g,{icon:"fa-solid fa-chart-line",class:"mr-1 text-[12px]"}),m(" "+l(e.$t("application.button.usage")),1)]),_:1},8,["onClick"]),e.showPayment?(s(),r(y,{key:0,class:"!m-0 !px-2",type:"primary",round:"",size:"small",onClick:b=>e.onBuyMore(o?.row)},{default:t(()=>[a(g,{icon:"fa-solid fa-coins",class:"mr-1 text-[12px]"}),m(" "+l(e.$t("application.button.buyMore")),1)]),_:1},8,["onClick"])):u("",!0)])]),_:1})]),_:1},8,["data","empty-text"])),[[L,e.loading]])]),_:1})]),_:1})]),_:1}),a(_,null,{default:t(()=>[a(f,{span:24},{default:t(()=>[i("div",be,[a(U,{"current-page":e.page,"page-size":e.limit,total:e.individualApplicationsTotal,onChange:e.onPageChange},null,8,["current-page","page-size","total","onChange"])])]),_:1})]),_:1})]),_:1})]),_:1})}const it=B(Z,[["render",ye],["__scopeId","data-v-7182b838"]]);export{it as default};
1
+ import{a5 as h,a0 as F,o as A,a6 as T,a7 as G,a8 as P,J as B}from"./index-DbTnCj6Y.js";import{I as N,a as V}from"./credential-CEfFFZzi.js";import{P as x}from"./Pagination-rUnbqOLh.js";import{C as O}from"./CopyToClipboard-DtIK0kcZ.js";import{F as z}from"./index.es-DMDeBnDi.js";import{E as q}from"./index-Cv9n35Q1.js";import{E as M,a as R}from"./index-DicsQbSj.js";import{E as j}from"./index-Bhzy7uLO.js";import{a as J}from"./index-DqtdF-UV.js";import{E as H,a as W}from"./index-pm-DMONm.js";import{E as X}from"./index-BxvVaie9.js";import{E as $}from"./index-CrQhQx4A.js";import{d as K,x as r,y as t,E as a,D as i,H as l,C,N as m,I as u,F as Q,J as p,W as Y,q as s}from"./vendor-vue-BWIxYyW8.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-CCWK5dA3.js";import"./index-B0SN8iJh.js";import"./index-DuvI3onY.js";import"./index-Do6ztq8u.js";import"./typescript-CY0oKMIT.js";import"./index-CXJwHbs-.js";import"./strings-CoSJ5yUQ.js";import"./isEqual-ARjTA69Y.js";import"./_Uint8Array-CXUVTNFA.js";import"./castArray-Cv8DqDDB.js";import"./use-form-item-B1LdPsOA.js";import"./index-Dwi7KeFX.js";import"./index-BQHgP10P.js";import"./debounce-B-vwp3ga.js";import"./_baseIteratee-CCPLrKcd.js";import"./index-DFezti2N.js";import"./index-BLjywj98.js";import"./_initCloneObject-B8-TXaLO.js";import"./isPlainObject-B5tfD1Mc.js";import"./index-Dpfvnj_D.js";import"./validator-DXKD343S.js";import"./index-BuyEbX8F.js";const Z=K({name:"ConsoleApplicationList",components:{Pagination:x,CopyToClipboard:O,ElTable:R,ElRow:W,ElButton:X,ElCol:H,ElTag:F,ElSkeleton:J,ElSwitch:j,ElTableColumn:M,ElCard:q,FontAwesomeIcon:z},data(){return{credentialType:V,serviceType:N,individualApplications:[],globalApplications:[],individualApplicationsTotal:void 0,globalApplicationsTotal:void 0,loading:!1,buying:!1,limit:10,form:{amount:1},active:{service:void 0,application:void 0}}},computed:{redirect(){return this.$route.query?.redirect},page(){return parseInt(this.$route.query.page?.toString()||"1")},showPayment(){return!0}},watch:{page:{handler(){this.onFetchData()}}},mounted(){this.onInitializeGlobalApplication(),this.onFetchData()},methods:{updateAllowConsumeGlobal(e,n){!e||!e.id||A.updateAllConsumeGlobal(e.id,{...e,allow_consume_global:!!n}).then(()=>{$.success(this.$t("application.message.updateSuccessfully").toString())}).catch(()=>{$.error(this.$t("application.message.updateFailed").toString())})},onGoUsage(e){this.$router.push({name:P,query:{application_id:e.id,type:e?.service?.type}})},onBuyMore(e){e?.id&&this.$router.push({name:G,params:{id:e.id}})},onPageChange(e){this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,page:e}})},onFetchApplications(e=h.INDIVIDUAL){return new Promise((n,k)=>{A.getAll({limit:this.limit,...e===h.INDIVIDUAL?{offset:(this.page-1)*this.limit}:{},user_id:this.$store.getters.user.id,ordering:"-created_at",type:T.USAGE,scope:e}).then(({data:d})=>{e===h.INDIVIDUAL?(this.individualApplications=d.items,this.individualApplicationsTotal=d.count):(this.globalApplications=d.items,this.globalApplicationsTotal=d.count),n(d)}).catch(d=>{$.error(this.$t("application.message.fetchFailed").toString()),k(d)})})},onFetchData(){this.loading=!0,Promise.all([this.onFetchApplications(h.INDIVIDUAL),this.onFetchApplications(h.GLOBAL)]).then(()=>{this.loading=!1}).catch(()=>{this.loading=!1})},onInitializeGlobalApplication(){A.create({type:T.USAGE,scope:h.GLOBAL,user_id:this.$store.getters.user.id}).finally(()=>{this.onFetchApplications(h.GLOBAL)})},getRemainingAmount(e){if(e.remaining_amount===void 0||e.remaining_amount===null)return"";const n=this.$t(`service.unit.${e?.service?.unit||"credit"}s`);return`${e.remaining_amount?.toFixed(6)} ${n}`},getUsedAmount(e){if(e.used_amount===void 0||e.used_amount===null)return"";const n=this.$t(`service.unit.${e?.service?.unit||"credit"}s`);return`${e.used_amount?.toFixed(6)} ${n}`}}}),ee={class:"title"},te={key:1,class:"summary-card"},ae={class:"icon-wrapper"},oe={class:"label"},le={class:"value"},ie={class:"description"},se={key:1,class:"flex flex-row justify-between align-center"},ne={class:"summary-card"},re={class:"flex justify-start items-center gap-2 mb-2 w-full"},pe={class:"icon-wrapper !mb-0"},de={class:"text-[var(--el-text-color-regular)] text-[14px] truncate"},ce={class:"label"},me={class:"value"},ue={class:"description"},he={class:"flex flex-col items-end gap-2"},fe={class:"copy"},ge={key:0,class:"expired-at"},_e={class:"flex flex-wrap items-center justify-end gap-1"},be={class:"pagination"};function ye(e,n,k,d,ve,we){const f=p("el-col"),_=p("el-row"),I=p("el-skeleton"),g=p("font-awesome-icon"),v=p("el-card"),E=p("copy-to-clipboard"),y=p("el-button"),c=p("el-table-column"),w=p("el-tag"),D=p("el-switch"),S=p("el-table"),U=p("pagination"),L=Y("loading");return s(),r(_,{class:"application-list"},{default:t(()=>[a(f,{span:24},{default:t(()=>[a(_,null,{default:t(()=>[a(f,{span:24},{default:t(()=>[i("h2",ee,l(e.$t("common.title.allApplications")),1)]),_:1})]),_:1}),a(_,{gutter:15,class:"mb-3"},{default:t(()=>[a(f,{md:12,xs:24},{default:t(()=>[a(v,{shadow:"hover",class:"relative min-h-[180px] mb-2","body-style":{padding:"18px 20px"}},{default:t(()=>[e.loading?(s(),r(I,{key:0})):(s(),C("div",te,[i("div",ae,[a(g,{icon:"fa-solid fa-cubes-stacked"})]),i("p",oe,l(e.$t("application.title.count")),1),i("p",le,l(e.individualApplicationsTotal),1),i("p",ie,l(e.$t("application.message.countDescription")),1)]))]),_:1})]),_:1}),e.showPayment&&e.globalApplications?.length>0?(s(),r(f,{key:0,md:12,xs:24},{default:t(()=>[a(v,{shadow:"hover",class:"relative min-h-[180px] mb-2","body-style":{padding:"18px 20px"}},{default:t(()=>[e.loading?(s(),r(I,{key:0})):(s(),C("div",se,[i("div",ne,[i("div",re,[i("div",pe,[a(g,{icon:"fa-solid fa-wallet"})]),i("span",de,[m(l(e.$t("application.field.id"))+": "+l(e.globalApplications?.[0]?.id)+" ",1),e.globalApplications?.[0]?.id?(s(),r(E,{key:0,content:e.globalApplications?.[0]?.id,class:"inline-block"},null,8,["content"])):u("",!0)])]),i("p",ce,l(e.$t("application.title.globalBalance")),1),i("p",me,l(e.globalApplications?.[0]?.remaining_amount?.toFixed(6)||"0.000000")+" "+l(e.$t("service.unit.credits")),1),i("p",ue,l(e.$t("application.message.globalBalanceDescription")),1)]),i("div",he,[a(y,{class:"!m-0 !px-2",size:"small",round:"",onClick:n[0]||(n[0]=o=>e.onGoUsage(e.globalApplications?.[0]))},{default:t(()=>[a(g,{icon:"fa-solid fa-chart-line",class:"mr-1 text-[12px]"}),m(" "+l(e.$t("application.button.usage")),1)]),_:1}),e.showPayment?(s(),r(y,{key:0,class:"!m-0 !px-2",type:"primary",round:"",size:"small",onClick:n[1]||(n[1]=o=>e.onBuyMore(e.globalApplications?.[0]))},{default:t(()=>[a(g,{icon:"fa-solid fa-coins",class:"mr-1 text-[12px]"}),m(" "+l(e.$t("application.button.buyMore")),1)]),_:1})):u("",!0)])]))]),_:1})]),_:1})):u("",!0)]),_:1}),a(_,null,{default:t(()=>[a(f,{span:24},{default:t(()=>[a(v,{shadow:"hover",class:"applications-table-card"},{default:t(()=>[Q((s(),r(S,{data:e.individualApplications,stripe:"",class:"applications-table !min-h-[calc(100vh-420px)]","table-layout":"fixed","empty-text":e.$t("common.message.noData")},{default:t(()=>[a(c,{prop:"id",label:e.$t("application.field.id"),width:"200px","class-name":"text-center"},{default:t(o=>[i("span",null,l(o.row.id),1),i("span",fe,[a(E,{content:o?.row?.id,class:"inline-block"},null,8,["content"])])]),_:1},8,["label"]),a(c,{label:e.$t("application.field.type"),width:"90px","class-name":"hidden sm:table-cell","label-class-name":"hidden sm:table-cell"},{default:t(o=>[o.row?.type==="Period"?(s(),r(w,{key:0,type:"success",effect:"dark",round:""},{default:t(()=>[m(l(e.$t("application.type.period")),1)]),_:1})):o.row?.type==="Usage"?(s(),r(w,{key:1,effect:"dark",round:""},{default:t(()=>[m(l(e.$t("application.type.usage")),1)]),_:1})):u("",!0)]),_:1},8,["label"]),a(c,{label:e.$t("application.field.name"),width:"180px"},{default:t(o=>[i("span",null,l(o.row?.service?.title),1),o.row?.role==="grantee"?(s(),r(w,{key:0,type:"info",size:"small",round:"",class:"ml-2"},{default:t(()=>[m(l(e.$t("application.badge.shared")),1)]),_:1})):u("",!0)]),_:1},8,["label"]),a(c,{prop:"remaining_amount",label:e.$t("application.field.remainingAmount"),width:"150px","class-name":"text-center"},{default:t(o=>[i("span",null,l(e.getRemainingAmount(o.row)),1)]),_:1},8,["label"]),a(c,{prop:"used_amount",label:e.$t("application.field.usedAmount"),width:"150px","class-name":"hidden sm:table-cell text-center","label-class-name":"hidden sm:table-cell"},{default:t(o=>[i("span",null,l(e.getUsedAmount(o.row)),1)]),_:1},8,["label"]),a(c,{prop:"allow_consume_global",label:e.$t("application.field.allowConsumeGlobal"),width:"120px","class-name":"hidden sm:table-cell text-center","label-class-name":"hidden sm:table-cell"},{default:t(o=>[o.row.service?.type===e.serviceType.API?(s(),r(D,{key:0,modelValue:o.row.allow_consume_global,"onUpdate:modelValue":b=>o.row.allow_consume_global=b,"active-value":!0,"inactive-value":!1,onChange:b=>e.updateAllowConsumeGlobal(o.row,b)},null,8,["modelValue","onUpdate:modelValue","onChange"])):u("",!0)]),_:1},8,["label"]),a(c,{label:e.$t("application.field.expiredAt"),width:"180px","class-name":"hidden sm:table-cell","label-class-name":"hidden sm:table-cell"},{default:t(o=>[o.row.expired_at?(s(),C("span",ge,l(e.$dayjs.format(o.row.expired_at)),1)):u("",!0)]),_:1},8,["label"]),a(c,{fixed:"right",width:"200px"},{default:t(o=>[i("div",_e,[a(y,{class:"!m-0 !px-2",size:"small",round:"",onClick:b=>e.onGoUsage(o?.row)},{default:t(()=>[a(g,{icon:"fa-solid fa-chart-line",class:"mr-1 text-[12px]"}),m(" "+l(e.$t("application.button.usage")),1)]),_:1},8,["onClick"]),e.showPayment?(s(),r(y,{key:0,class:"!m-0 !px-2",type:"primary",round:"",size:"small",onClick:b=>e.onBuyMore(o?.row)},{default:t(()=>[a(g,{icon:"fa-solid fa-coins",class:"mr-1 text-[12px]"}),m(" "+l(e.$t("application.button.buyMore")),1)]),_:1},8,["onClick"])):u("",!0)])]),_:1})]),_:1},8,["data","empty-text"])),[[L,e.loading]])]),_:1})]),_:1})]),_:1}),a(_,null,{default:t(()=>[a(f,{span:24},{default:t(()=>[i("div",be,[a(U,{"current-page":e.page,"page-size":e.limit,total:e.individualApplicationsTotal,onChange:e.onPageChange},null,8,["current-page","page-size","total","onChange"])])]),_:1})]),_:1})]),_:1})]),_:1})}const it=B(Z,[["render",ye],["__scopeId","data-v-7182b838"]]);export{it as default};
@@ -1 +1 @@
1
- import{l as f,bo as z,a0 as G,o as W,a6 as Z,J as K}from"./index-D8aPgnGc.js";import{I as U,a as Q}from"./credential-CEfFFZzi.js";import{P as X}from"./Pagination-DQzxlNaL.js";import{C as tt}from"./CopyToClipboard-CZv5BP7B.js";import{F as et}from"./index.es-ChY1FlMW.js";import{B as at,C as st,a as it,L as ot,b as nt,p as lt,c as rt,d as dt}from"./vendor-chart-CqqdxQvL.js";import{E as pt}from"./index-Cf_g4cNy.js";import{E as ut,a as ht}from"./index-j-bX9GhB.js";import{E as ct,a as gt}from"./index-TUT4Ls42.js";import{E as mt,a as ft}from"./index-CPWMXvq-.js";import{E as yt}from"./index-D3WkBohO.js";import{E as _t,a as bt}from"./index-Csx7MJnP.js";import{E as wt,a as $t}from"./index-CURyBsYJ.js";import{E as At,a as vt}from"./index-qdj2_nOs.js";import{E as Ct}from"./index-CHrGWwpa.js";import{d as kt,x as p,y as s,E as i,D as l,H as n,F as V,C as g,L as k,M as S,I as b,N as D,J as u,W as St,q as o,G as Dt}from"./vendor-vue-BWIxYyW8.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-CCWK5dA3.js";import"./typescript-B00PCKaI.js";import"./isEqual-CfWw3lpS.js";import"./_Uint8Array-DtfKpEZY.js";import"./index-Pbe8CChL.js";import"./index-DNCRlcDT.js";import"./index-BNHSnEGK.js";import"./use-form-item-Bb96LHMh.js";import"./index-BLjywj98.js";import"./index-DbIiryMD.js";import"./index-BuyEbX8F.js";import"./strings-CoSJ5yUQ.js";import"./_baseClone-dGPbkYnN.js";import"./_initCloneObject-BzDf8hsu.js";import"./isPlainObject-D5ZKzez2.js";import"./index-CcYwI3ai.js";import"./_baseIteratee-CY2Cl0zu.js";import"./castArray-CbnSaxKn.js";import"./debounce-Dl8en2o_.js";import"./index-BRjvV2nQ.js";import"./index-D_7iS0Ka.js";import"./index-BC6AqXIx.js";class Ft{key="usage/apis";async getAll(e){return await f.get(`/${this.key}/`,{params:e})}async getAggregate(e){return await f.get(`/${this.key}/aggregate/`,{params:e})}async get(e){return await f.get(`/${this.key}/${e}`)}async getStatusCodes(e){return await f.get(`/${this.key}/status-codes/`,{params:e})}async exportCsv(e){return await f.get(`/${this.key}/export/`,{params:e,responseType:"blob"})}}const F=new Ft;class It{key="usage/proxies";async getAll(e){return await f.get(`/${this.key}/`,{params:e})}}const Rt=new It;class Ut{key="apis";async getAll(e){return await f.get(`/${this.key}/`,{params:e})}async get(e){return await f.get(`/${this.key}/${e}`)}async create(e){return await f.post(`/${this.key}/`,e)}async update(e,r){return await f.put(`/${this.key}/${e}`,r)}async delete(e){return await f.delete(`/${this.key}/${e}`)}async getAllForService(e,r){return await f.get(`/services/${e}/${this.key}/`,{params:r})}}const Et=new Ut;st.register(it,ot,nt,lt,rt,dt);const Tt=kt({name:"ConsoleUsageList",components:{Pagination:X,ElTag:G,ElDatePicker:Ct,ElTable:bt,ElSelect:vt,ElOption:At,CopyToClipboard:tt,ElRow:$t,ElCol:wt,ElTableColumn:_t,ElCard:yt,ElRadioButton:ft,ElRadioGroup:mt,ElSkeleton:gt,ElSkeletonItem:ct,ElDialog:z,ElTabs:ht,ElTabPane:ut,ElButton:pt,FontAwesomeIcon:et,BarChart:at},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:U,apiUsages:[],proxyUsages:[],createdAtRange:(()=>{const t=this.$route.query.created_at_to?.toString(),e=this.$route.query.created_at_from?.toString();if(e&&t)return[new Date(e),new Date(t)];const r=new Date,h=new Date;return h.setDate(1),h.setHours(0,0,0,0),[h,r]})(),shortcuts:[{text:this.$t("usage.shortcuts.thisMonth"),value:()=>{const t=new Date,e=new Date;return e.setDate(1),e.setHours(0,0,0,0),[e,t]}},{text:this.$t("usage.shortcuts.today"),value:()=>{const t=new Date,e=new Date;return e.setHours(0,0,0,0),[e,t]}},{text:this.$t("usage.shortcuts.last1Day"),value:()=>{const t=new Date,e=new Date;return e.setDate(e.getDate()-1),[e,t]}},{text:this.$t("usage.shortcuts.last3Days"),value:()=>{const t=new Date,e=new Date;return e.setDate(e.getDate()-3),[e,t]}},{text:this.$t("usage.shortcuts.last7Days"),value:()=>{const t=new Date,e=new Date;return e.setDate(e.getDate()-7),[e,t]}},{text:this.$t("usage.shortcuts.last1Month"),value:()=>{const t=new Date,e=new Date;return e.setMonth(e.getMonth()-1),[e,t]}}],type:this.$route.query.type?.toString()||U.API,loading:!1,total:void 0,limit:15,totalUsed:0,barChartLabels:[],barChartSeries:[],aggLoading:!1,detailDialogVisible:!1,detailRow:null,detailActiveTab:"request",detailLoading:!1,exporting:!1,statusCodeFilter:this.$route.query.status_code?.toString()||"",statusCodeOptions:[],statusCodeOptionsLoading:!1}},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(t=>({label:t.label,data:t.data,backgroundColor:t.color}))}},barChartOptions(){return{responsive:!0,plugins:{legend:{position:"top",onClick:(t,e,r)=>{const h=r?.chart;if(!h||e?.datasetIndex===void 0)return;const $=e.datasetIndex,w=h.data?.datasets||[];w.some((y,m)=>m!==$&&h.isDatasetVisible(m))?w.forEach((y,m)=>h.setDatasetVisibility(m,m===$)):w.forEach((y,m)=>h.setDatasetVisibility(m,!0)),h.update()}},title:{display:!0,text:this.$t("usage.title.usageTrend")}},scales:{x:{stacked:!0},y:{stacked:!0,beginAtZero:!0}}}}},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()}}},mounted(){this.onFetchApplications(),this.onFetchApis(),this.onFetchUsages(),this.onFetchAggregate(),this.onFetchStatusCodeOptions()},methods:{async onFetchUsages(){this.type===U.API?this.onFetchApiUsages():this.type===U.Proxy&&this.onFetchProxyUsages()},async onApiChange(t){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,api_id:t}}),this.onFetchApiUsages(),this.onFetchAggregate()},async onApisChange(t){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,api_id:t&&t.length?t.join(","):""}}),this.onFetchApiUsages(),this.onFetchAggregate()},async onTimeRangeChanged(){console.log("onTimeRangeChanged",this.createdAtRange),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(t){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,application_id:t}}),this.onFetchUsages(),this.onFetchAggregate()},async onApplicationsChange(t){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,application_id:t&&t.length?t.join(","):""}}),this.onFetchUsages(),this.onFetchAggregate()},onPageChange(t){this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,page:t}})},getRemainingAmount(t){if(t.remaining_amount===void 0||t.remaining_amount===null)return"";const e=this.$t(`service.unit.${t?.service?.unit||"credit"}s`);return`${t.remaining_amount?.toFixed(6)} ${e}`},getUsedAmount(t){if(t.used_amount===void 0||t.used_amount===null)return"";const e=this.$t(`service.unit.${t?.service?.unit||"credit"}s`);return`${t.used_amount?.toFixed(6)} ${e}`},getDeductedAmount(t){if(t?.deducted_amount===void 0||t?.deducted_amount===null)return"";const e=this.$t(`service.unit.${t?.service?.unit||"credit"}s`);return`${t.deducted_amount?.toFixed(6)} ${e}`},getOriginalAmount(t){if(t?.original_amount===void 0||t?.original_amount===null)return"";const e=this.$t(`service.unit.${t?.service?.unit||"credit"}s`);return`${t.original_amount?.toFixed(6)} ${e}`},onStatusCodeChange(t){const e={...this.$route.query},r=(t||"").trim();r?e.status_code=r:delete e.status_code,delete e.status_code_filter,this.$router.push({name:this.$route.name?.toString(),query:e}),this.onFetchUsages(),this.onFetchAggregate()},async onFetchStatusCodeOptions(){this.statusCodeOptionsLoading=!0;try{const{data:t}=await F.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=(t?.items||[]).slice().sort((e,r)=>e-r)}catch{this.statusCodeOptions=[]}finally{this.statusCodeOptionsLoading=!1}},formatElapsed(t){return t==null||Number.isNaN(t)?"-":t<1?`${Math.round(t*1e3)} ms`:`${t.toFixed(2)} s`},getSimpleMetadata(t){if(!t)return{};const e={};for(const[r,h]of Object.entries(t))r==="request"||r==="response"||typeof h=="object"&&h!==null||(e[r]=h);return e},onShowDetail(t){this.detailRow={...t,metadata:void 0},this.detailActiveTab="request",this.detailDialogVisible=!0,this.detailLoading=!0,t.id&&F.get(t.id).then(e=>{this.detailRow=e.data}).finally(()=>{this.detailLoading=!1})},formatJson(t){try{return JSON.stringify(t,null,2)}catch{return String(t)}},onFetchApplications(){W.getAll({limit:100,offset:0,user_id:this.$store.getters.user.id,ordering:"-created_at",type:Z.USAGE}).then(({data:t})=>{this.applications=t.items.filter(e=>e?.service?.type===this.type)}).catch(()=>{})},onFetchApis(){this.apisLoading=!0,Et.getAll({limit:100,offset:0,ordering:"-created_at"}).then(({data:t})=>{this.apis=t.items}).catch(()=>{}).finally(()=>{this.apisLoading=!1})},onFetchApiUsages(){console.log("onFetchApiUsages",this.createdAtRange),this.loading=!0,F.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}:{}}).then(({data:t})=>{this.apiUsages=t.items,this.loading=!1,this.total=t.count}).catch(()=>{this.loading=!1})},onFetchProxyUsages(){this.loading=!0,Rt.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:t})=>{this.proxyUsages=t.items,this.loading=!1,this.total=t.count}).catch(()=>{this.loading=!1})},onExport(){this.exporting=!0,F.exportCsv({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}:{}}).then(({data:t})=>{const e=window.URL.createObjectURL(t),r=document.createElement("a");r.href=e,r.download="usages.csv",r.click(),window.URL.revokeObjectURL(e)}).catch(()=>{}).finally(()=>{this.exporting=!1})},async onFetchAggregate(){if(this.aggLoading=!0,this.type!==this.serviceType.API)return;const t={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]}:{}};try{const{data:e}=await F.getAggregate(t);this.totalUsed=e.total||0;const r=Array.from(new Set((e.items||[]).map(d=>d.date))).sort(),h=Array.from(new Set((e.items||[]).map(d=>d.api_id))),$=d=>`hsl(${d*57%360}, 70%, 60%)`,w=h.map((d,y)=>{const m=e.apis?.[d]?.title||d,I={};(e.items||[]).filter(_=>_.api_id===d).forEach(_=>{I[_.date]=_.amount||0});const A=r.map(_=>I[_]||0);return{key:d,label:m,data:A,color:$(y)}});this.barChartLabels=r,this.barChartSeries=w}finally{this.aggLoading=!1}}}}),Vt={class:"text-[26px] font-bold mb-5 text-[var(--el-text-color-primary)]"},qt={class:"inline-block w-9"},Lt={class:"inline-block"},Ot={key:1,class:"summary-card"},Pt={class:"icon-wrapper"},jt={class:"text-left"},Mt={class:"description"},Bt={class:"value"},Ht={class:"chart-wrapper"},Nt={key:0},Yt={key:1},Jt={class:"flex flex-wrap gap-2"},xt={class:"key"},zt={key:0,class:"cursor-pointer"},Gt={class:"created-at"},Wt={class:"created-at"},Zt={key:1,class:"detail-json"},Kt={key:2,class:"text-gray-400"},Qt={key:1,class:"detail-json"},Xt={key:2,class:"text-gray-400"},te={class:"float-right"};function ee(t,e,r,h,$,w){const d=u("el-col"),y=u("el-row"),m=u("el-radio-button"),I=u("el-radio-group"),A=u("el-option"),_=u("el-select"),M=u("el-skeleton-item"),v=u("el-skeleton"),B=u("el-date-picker"),q=u("font-awesome-icon"),L=u("el-button"),E=u("el-card"),H=u("bar-chart"),c=u("el-table-column"),T=u("el-tag"),N=u("copy-to-clipboard"),O=u("el-table"),P=u("el-tab-pane"),Y=u("el-tabs"),J=u("el-dialog"),x=u("pagination"),j=St("loading");return o(),p(y,null,{default:s(()=>[i(d,{span:24},{default:s(()=>[i(y,null,{default:s(()=>[i(d,{span:24},{default:s(()=>[l("h2",Vt,n(t.$t("common.title.allUsages")),1)]),_:1})]),_:1}),i(y,null,{default:s(()=>[i(d,{md:4,xs:24,class:"mb-5 flex px-2 gap-2 items-center"},{default:s(()=>[l("span",null,n(t.$t("application.field.type")),1),i(I,{modelValue:t.type,"onUpdate:modelValue":e[0]||(e[0]=a=>t.type=a)},{default:s(()=>[i(m,{value:t.serviceType.API,label:t.$t("application.field.api")},null,8,["value","label"]),i(m,{value:t.serviceType.Proxy,label:t.$t("application.field.proxy")},null,8,["value","label"])]),_:1},8,["modelValue"])]),_:1}),V(i(d,{md:6,xs:24,class:"mb-5 flex px-2 gap-2 items-center"},{default:s(()=>[l("span",qt,n(t.$t("usage.field.application")),1),i(_,{modelValue:t.applicationIds,"onUpdate:modelValue":e[1]||(e[1]=a=>t.applicationIds=a),placeholder:t.$t("usage.field.application"),clearable:"",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",class:"w-full",onChange:t.onApplicationsChange},{default:s(()=>[(o(!0),g(S,null,k(t.applications,a=>(o(),p(A,{key:a.id,label:a.service?.title,value:a?.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","onChange"])]),_:1},512),[[Dt,!1]]),t.type===t.serviceType.API?(o(),p(d,{key:0,md:6,xs:24,class:"mb-5 flex px-2 gap-2 items-center"},{default:s(()=>[l("span",Lt,n(t.$t("usage.field.api")),1),t.apisLoading?(o(),p(v,{key:0,animated:"",class:"w-full"},{template:s(()=>[i(M,{variant:"rect",style:{height:"32px","border-radius":"4px"}})]),_:1})):(o(),p(_,{key:1,modelValue:t.apiIds,"onUpdate:modelValue":e[2]||(e[2]=a=>t.apiIds=a),placeholder:t.$t("usage.field.api"),clearable:"",filterable:"",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",class:"w-full",onChange:t.onApisChange},{default:s(()=>[(o(!0),g(S,null,k(t.apis,a=>(o(),p(A,{key:a?.id,label:a?.title,value:a?.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","onChange"]))]),_:1})):b("",!0),t.type===t.serviceType.API?(o(),p(d,{key:1,md:8,xs:24,class:"mb-5 flex px-2 gap-2 items-center"},{default:s(()=>[i(B,{modelValue:t.createdAtRange,"onUpdate:modelValue":e[3]||(e[3]=a=>t.createdAtRange=a),type:"datetimerange",class:"w-full",shortcuts:t.shortcuts,"range-separator":t.$t("usage.placeholder.to"),"start-placeholder":t.$t("usage.placeholder.startDate"),"end-placeholder":t.$t("usage.placeholder.endDate"),onChange:t.onTimeRangeChanged},null,8,["modelValue","shortcuts","range-separator","start-placeholder","end-placeholder","onChange"])]),_:1})):b("",!0),t.type===t.serviceType.API?(o(),p(d,{key:2,md:3,xs:24,class:"mb-5 flex px-2 gap-2 items-center"},{default:s(()=>[i(_,{modelValue:t.statusCodeFilter,"onUpdate:modelValue":e[4]||(e[4]=a=>t.statusCodeFilter=a),placeholder:t.$t("usage.option.statusCodeAll"),class:"w-full",clearable:"",filterable:"","allow-create":"","default-first-option":"",loading:t.statusCodeOptionsLoading,onChange:t.onStatusCodeChange},{default:s(()=>[(o(!0),g(S,null,k(t.statusCodeOptions,a=>(o(),p(A,{key:a,label:String(a),value:String(a)},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","loading","onChange"])]),_:1})):b("",!0),t.type===t.serviceType.API?(o(),p(d,{key:3,md:3,xs:24,class:"mb-5 flex px-2 gap-2 items-center justify-end"},{default:s(()=>[i(L,{type:"primary",plain:"",loading:t.exporting,class:"w-full whitespace-nowrap",onClick:t.onExport},{default:s(()=>[i(q,{icon:"fa-solid fa-file-export",class:"mr-1"}),D(" "+n(t.$t("usage.button.export")),1)]),_:1},8,["loading","onClick"])]),_:1})):b("",!0)]),_:1}),i(y,null,{default:s(()=>[i(d,{span:24},{default:s(()=>[t.type===t.serviceType.API?(o(),p(y,{key:0,gutter:24,class:"mb-5"},{default:s(()=>[i(d,{md:6,xs:24},{default:s(()=>[i(E,{shadow:"hover",class:"h-full"},{default:s(()=>[t.aggLoading?(o(),p(v,{key:0})):(o(),g("div",Ot,[l("div",Pt,[i(q,{icon:"fa-solid fa-cubes",class:"icon"})]),l("div",jt,[l("p",Mt,n(t.$t("usage.title.totalUsed")),1),l("p",Bt,n(t.totalUsedString),1)])]))]),_:1})]),_:1}),i(d,{md:18,xs:24},{default:s(()=>[i(E,{shadow:"hover",class:"h-full"},{default:s(()=>[l("div",Ht,[t.aggLoading?(o(),p(v,{key:0,class:"w-full"})):(o(),p(H,{key:1,data:t.barChartData,options:t.barChartOptions,class:"chart"},null,8,["data","options"]))])]),_:1})]),_:1})]),_:1})):b("",!0),i(E,{shadow:"hover"},{default:s(()=>[t.type===t.serviceType.API?V((o(),p(O,{key:0,data:t.apiUsages,stripe:"","table-layout":"fixed","empty-text":t.$t("common.message.noData"),class:"min-h-[calc(100vh-350px)] mb-5"},{default:s(()=>[i(c,{label:t.$t("application.field.name"),width:"160px"},{default:s(a=>[l("span",null,n(a.row?.api?.title),1)]),_:1},8,["label"]),i(c,{label:t.$t("usage.field.statusCode"),width:"120px"},{default:s(a=>[l("span",null,n(a.row.status_code),1)]),_:1},8,["label"]),i(c,{label:t.$t("usage.field.elapsed"),width:"120px"},{default:s(a=>[l("span",null,n(t.formatElapsed(a.row.elapsed)),1)]),_:1},8,["label"]),i(c,{prop:"deducted_amount",label:t.$t("usage.field.deductedAmount"),width:"150px","class-name":"text-center"},{default:s(a=>[t.getDeductedAmount(a.row)===t.getOriginalAmount(a.row)?(o(),g("div",Nt,[l("span",null,n(t.getDeductedAmount(a.row)),1)])):(o(),g("div",Yt,[e[7]||(e[7]=l("p",null,null,-1)),l("p",null,[l("span",null,n(t.getDeductedAmount(a.row)),1)]),l("p",null,[l("del",null,n(t.getOriginalAmount(a.row)),1)])]))]),_:1},8,["label"]),i(c,{prop:"remaining_amount",label:t.$t("usage.field.balanceAfter"),width:"160px","class-name":"text-center"},{default:s(a=>[l("span",null,n(t.getRemainingAmount(a.row)),1)]),_:1},8,["label"]),i(c,{prop:"metadata",label:t.$t("usage.field.metadata"),width:"260px","class-name":"text-center"},{default:s(a=>[l("div",Jt,[a.row.original_amount>a.row.deducted_amount&&a.row.original_amount>0?(o(),p(T,{key:0,type:"success",style:{textWrap:"wrap",height:"fit-content",lineHeight:"20px",borderRadius:"10px"}},{default:s(()=>[D(n(((a.row.original_amount-a.row.deducted_amount)*100/a.row.original_amount).toFixed(0)+"% OFF"),1)]),_:2},1024)):b("",!0),(o(!0),g(S,null,k(t.getSimpleMetadata(a.row.metadata),(R,C)=>(o(),p(T,{key:C,style:{textWrap:"wrap",height:"fit-content",lineHeight:"20px",borderRadius:"10px"}},{default:s(()=>[D(n(C)+": "+n(R),1)]),_:2},1024))),128))])]),_:1},8,["label"]),i(c,{label:t.$t("usage.button.viewDetail"),width:"120px","class-name":"text-center"},{default:s(a=>[a.row.id?(o(),p(L,{key:0,type:"primary",plain:"",size:"small",class:"!px-2 !py-1 !text-xs !h-auto !min-h-0",onClick:R=>t.onShowDetail(a.row)},{default:s(()=>[D(n(t.$t("usage.button.viewDetail")),1)]),_:1},8,["onClick"])):b("",!0)]),_:1},8,["label"]),i(c,{prop:"trace_id",label:t.$t("application.field.traceId"),width:"200px","class-name":"text-center"},{default:s(a=>[l("span",xt,n(a.row.trace_id),1),a.row.trace_id?(o(),g("span",zt,[i(N,{content:a.row.trace_id,class:"inline-block"},null,8,["content"])])):b("",!0)]),_:1},8,["label"]),i(c,{label:t.$t("usage.field.createdAt"),width:"200px"},{default:s(a=>[l("span",Gt,n(t.$dayjs.format(a.row.created_at)),1)]),_:1},8,["label"])]),_:1},8,["data","empty-text"])),[[j,t.loading]]):b("",!0),t.type===t.serviceType.Proxy?V((o(),p(O,{key:1,data:t.proxyUsages,stripe:"","table-layout":"fixed","empty-text":t.$t("common.message.noData"),class:"min-h-[calc(100vh-350px)] mb-5"},{default:s(()=>[i(c,{label:t.$t("application.field.name"),width:"160px"},{default:s(a=>[l("span",null,n(a.row?.service?.title),1)]),_:1},8,["label"]),i(c,{prop:"remaining_amount",label:t.$t("usage.field.remainingAmount"),width:"160px","class-name":"text-center"},{default:s(a=>[l("span",null,n(t.getRemainingAmount(a.row)),1),l("span",null,n(t.getOriginalAmount(a.row)),1)]),_:1},8,["label"]),i(c,{prop:"deducted_amount",label:t.$t("usage.field.deductedAmount"),width:"150px","class-name":"text-center"},{default:s(a=>[l("span",null,n(t.getDeductedAmount(a.row)),1)]),_:1},8,["label"]),i(c,{label:t.$t("usage.field.balanceAfter"),width:"160px","class-name":"text-center"},{default:s(a=>[l("span",null,n(t.getRemainingAmount(a.row)),1)]),_:1},8,["label"]),i(c,{prop:"metadata",label:t.$t("usage.field.metadata"),width:"200px","class-name":"text-center"},{default:s(a=>[(o(!0),g(S,null,k(a.row.metadata,(R,C)=>(o(),p(T,{key:C,class:"mb-2"},{default:s(()=>[D(n(C)+": "+n(R),1)]),_:2},1024))),128))]),_:1},8,["label"]),i(c,{label:t.$t("usage.field.createdAt"),width:"200px"},{default:s(a=>[l("span",Wt,n(t.$dayjs.format(a.row.created_at)),1)]),_:1},8,["label"])]),_:1},8,["data","empty-text"])),[[j,t.loading]]):b("",!0)]),_:1})]),_:1})]),_:1}),i(J,{modelValue:t.detailDialogVisible,"onUpdate:modelValue":e[6]||(e[6]=a=>t.detailDialogVisible=a),title:t.$t("usage.dialog.detailTitle"),width:"70%",top:"5vh","destroy-on-close":""},{default:s(()=>[i(Y,{modelValue:t.detailActiveTab,"onUpdate:modelValue":e[5]||(e[5]=a=>t.detailActiveTab=a)},{default:s(()=>[i(P,{label:t.$t("usage.dialog.request"),name:"request"},{default:s(()=>[t.detailLoading?(o(),p(v,{key:0,rows:6,animated:""})):t.detailRow?.metadata?.request?(o(),g("pre",Zt,n(t.formatJson(t.detailRow.metadata.request)),1)):(o(),g("p",Kt,n(t.$t("usage.dialog.noData")),1))]),_:1},8,["label"]),i(P,{label:t.$t("usage.dialog.response"),name:"response"},{default:s(()=>[t.detailLoading?(o(),p(v,{key:0,rows:6,animated:""})):t.detailRow?.metadata?.response?(o(),g("pre",Qt,n(t.formatJson(t.detailRow.metadata.response)),1)):(o(),g("p",Xt,n(t.$t("usage.dialog.noData")),1))]),_:1},8,["label"])]),_:1},8,["modelValue"])]),_:1},8,["modelValue","title"]),i(y,null,{default:s(()=>[i(d,{span:10,offset:14},{default:s(()=>[l("div",te,[i(x,{"current-page":t.page,"page-size":t.limit,total:t.total,onChange:t.onPageChange},null,8,["current-page","page-size","total","onChange"])])]),_:1})]),_:1})]),_:1})]),_:1})}const He=K(Tt,[["render",ee],["__scopeId","data-v-38f1845c"]]);export{He as default};
1
+ import{l as f,bo as z,a0 as G,o as W,a6 as Z,J as K}from"./index-DbTnCj6Y.js";import{I as U,a as Q}from"./credential-CEfFFZzi.js";import{P as X}from"./Pagination-rUnbqOLh.js";import{C as tt}from"./CopyToClipboard-DtIK0kcZ.js";import{F as et}from"./index.es-DMDeBnDi.js";import{B as at,C as st,a as it,L as ot,b as nt,p as lt,c as rt,d as dt}from"./vendor-chart-CqqdxQvL.js";import{E as pt}from"./index-BxvVaie9.js";import{E as ut,a as ht}from"./index-7kI4dOK6.js";import{E as ct,a as gt}from"./index-DqtdF-UV.js";import{E as mt,a as ft}from"./index-BByw0G_E.js";import{E as yt}from"./index-Cv9n35Q1.js";import{E as _t,a as bt}from"./index-DicsQbSj.js";import{E as wt,a as $t}from"./index-pm-DMONm.js";import{E as At,a as vt}from"./index-B0SN8iJh.js";import{E as Ct}from"./index-DApceo0N.js";import{d as kt,x as p,y as s,E as i,D as l,H as n,F as V,C as g,L as k,M as S,I as b,N as D,J as u,W as St,q as o,G as Dt}from"./vendor-vue-BWIxYyW8.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-CCWK5dA3.js";import"./typescript-CY0oKMIT.js";import"./isEqual-ARjTA69Y.js";import"./_Uint8Array-CXUVTNFA.js";import"./index-Do6ztq8u.js";import"./index-Dwi7KeFX.js";import"./index-BQHgP10P.js";import"./use-form-item-B1LdPsOA.js";import"./index-BLjywj98.js";import"./index-DuvI3onY.js";import"./index-BuyEbX8F.js";import"./strings-CoSJ5yUQ.js";import"./_baseClone-CbUe37lr.js";import"./_initCloneObject-B8-TXaLO.js";import"./isPlainObject-B5tfD1Mc.js";import"./index-CXJwHbs-.js";import"./_baseIteratee-CCPLrKcd.js";import"./castArray-Cv8DqDDB.js";import"./debounce-B-vwp3ga.js";import"./index-Dpfvnj_D.js";import"./index-DFezti2N.js";import"./index-BC6AqXIx.js";class Ft{key="usage/apis";async getAll(e){return await f.get(`/${this.key}/`,{params:e})}async getAggregate(e){return await f.get(`/${this.key}/aggregate/`,{params:e})}async get(e){return await f.get(`/${this.key}/${e}`)}async getStatusCodes(e){return await f.get(`/${this.key}/status-codes/`,{params:e})}async exportCsv(e){return await f.get(`/${this.key}/export/`,{params:e,responseType:"blob"})}}const F=new Ft;class It{key="usage/proxies";async getAll(e){return await f.get(`/${this.key}/`,{params:e})}}const Rt=new It;class Ut{key="apis";async getAll(e){return await f.get(`/${this.key}/`,{params:e})}async get(e){return await f.get(`/${this.key}/${e}`)}async create(e){return await f.post(`/${this.key}/`,e)}async update(e,r){return await f.put(`/${this.key}/${e}`,r)}async delete(e){return await f.delete(`/${this.key}/${e}`)}async getAllForService(e,r){return await f.get(`/services/${e}/${this.key}/`,{params:r})}}const Et=new Ut;st.register(it,ot,nt,lt,rt,dt);const Tt=kt({name:"ConsoleUsageList",components:{Pagination:X,ElTag:G,ElDatePicker:Ct,ElTable:bt,ElSelect:vt,ElOption:At,CopyToClipboard:tt,ElRow:$t,ElCol:wt,ElTableColumn:_t,ElCard:yt,ElRadioButton:ft,ElRadioGroup:mt,ElSkeleton:gt,ElSkeletonItem:ct,ElDialog:z,ElTabs:ht,ElTabPane:ut,ElButton:pt,FontAwesomeIcon:et,BarChart:at},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:U,apiUsages:[],proxyUsages:[],createdAtRange:(()=>{const t=this.$route.query.created_at_to?.toString(),e=this.$route.query.created_at_from?.toString();if(e&&t)return[new Date(e),new Date(t)];const r=new Date,h=new Date;return h.setDate(1),h.setHours(0,0,0,0),[h,r]})(),shortcuts:[{text:this.$t("usage.shortcuts.thisMonth"),value:()=>{const t=new Date,e=new Date;return e.setDate(1),e.setHours(0,0,0,0),[e,t]}},{text:this.$t("usage.shortcuts.today"),value:()=>{const t=new Date,e=new Date;return e.setHours(0,0,0,0),[e,t]}},{text:this.$t("usage.shortcuts.last1Day"),value:()=>{const t=new Date,e=new Date;return e.setDate(e.getDate()-1),[e,t]}},{text:this.$t("usage.shortcuts.last3Days"),value:()=>{const t=new Date,e=new Date;return e.setDate(e.getDate()-3),[e,t]}},{text:this.$t("usage.shortcuts.last7Days"),value:()=>{const t=new Date,e=new Date;return e.setDate(e.getDate()-7),[e,t]}},{text:this.$t("usage.shortcuts.last1Month"),value:()=>{const t=new Date,e=new Date;return e.setMonth(e.getMonth()-1),[e,t]}}],type:this.$route.query.type?.toString()||U.API,loading:!1,total:void 0,limit:15,totalUsed:0,barChartLabels:[],barChartSeries:[],aggLoading:!1,detailDialogVisible:!1,detailRow:null,detailActiveTab:"request",detailLoading:!1,exporting:!1,statusCodeFilter:this.$route.query.status_code?.toString()||"",statusCodeOptions:[],statusCodeOptionsLoading:!1}},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(t=>({label:t.label,data:t.data,backgroundColor:t.color}))}},barChartOptions(){return{responsive:!0,plugins:{legend:{position:"top",onClick:(t,e,r)=>{const h=r?.chart;if(!h||e?.datasetIndex===void 0)return;const $=e.datasetIndex,w=h.data?.datasets||[];w.some((y,m)=>m!==$&&h.isDatasetVisible(m))?w.forEach((y,m)=>h.setDatasetVisibility(m,m===$)):w.forEach((y,m)=>h.setDatasetVisibility(m,!0)),h.update()}},title:{display:!0,text:this.$t("usage.title.usageTrend")}},scales:{x:{stacked:!0},y:{stacked:!0,beginAtZero:!0}}}}},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()}}},mounted(){this.onFetchApplications(),this.onFetchApis(),this.onFetchUsages(),this.onFetchAggregate(),this.onFetchStatusCodeOptions()},methods:{async onFetchUsages(){this.type===U.API?this.onFetchApiUsages():this.type===U.Proxy&&this.onFetchProxyUsages()},async onApiChange(t){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,api_id:t}}),this.onFetchApiUsages(),this.onFetchAggregate()},async onApisChange(t){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,api_id:t&&t.length?t.join(","):""}}),this.onFetchApiUsages(),this.onFetchAggregate()},async onTimeRangeChanged(){console.log("onTimeRangeChanged",this.createdAtRange),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(t){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,application_id:t}}),this.onFetchUsages(),this.onFetchAggregate()},async onApplicationsChange(t){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,application_id:t&&t.length?t.join(","):""}}),this.onFetchUsages(),this.onFetchAggregate()},onPageChange(t){this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,page:t}})},getRemainingAmount(t){if(t.remaining_amount===void 0||t.remaining_amount===null)return"";const e=this.$t(`service.unit.${t?.service?.unit||"credit"}s`);return`${t.remaining_amount?.toFixed(6)} ${e}`},getUsedAmount(t){if(t.used_amount===void 0||t.used_amount===null)return"";const e=this.$t(`service.unit.${t?.service?.unit||"credit"}s`);return`${t.used_amount?.toFixed(6)} ${e}`},getDeductedAmount(t){if(t?.deducted_amount===void 0||t?.deducted_amount===null)return"";const e=this.$t(`service.unit.${t?.service?.unit||"credit"}s`);return`${t.deducted_amount?.toFixed(6)} ${e}`},getOriginalAmount(t){if(t?.original_amount===void 0||t?.original_amount===null)return"";const e=this.$t(`service.unit.${t?.service?.unit||"credit"}s`);return`${t.original_amount?.toFixed(6)} ${e}`},onStatusCodeChange(t){const e={...this.$route.query},r=(t||"").trim();r?e.status_code=r:delete e.status_code,delete e.status_code_filter,this.$router.push({name:this.$route.name?.toString(),query:e}),this.onFetchUsages(),this.onFetchAggregate()},async onFetchStatusCodeOptions(){this.statusCodeOptionsLoading=!0;try{const{data:t}=await F.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=(t?.items||[]).slice().sort((e,r)=>e-r)}catch{this.statusCodeOptions=[]}finally{this.statusCodeOptionsLoading=!1}},formatElapsed(t){return t==null||Number.isNaN(t)?"-":t<1?`${Math.round(t*1e3)} ms`:`${t.toFixed(2)} s`},getSimpleMetadata(t){if(!t)return{};const e={};for(const[r,h]of Object.entries(t))r==="request"||r==="response"||typeof h=="object"&&h!==null||(e[r]=h);return e},onShowDetail(t){this.detailRow={...t,metadata:void 0},this.detailActiveTab="request",this.detailDialogVisible=!0,this.detailLoading=!0,t.id&&F.get(t.id).then(e=>{this.detailRow=e.data}).finally(()=>{this.detailLoading=!1})},formatJson(t){try{return JSON.stringify(t,null,2)}catch{return String(t)}},onFetchApplications(){W.getAll({limit:100,offset:0,user_id:this.$store.getters.user.id,ordering:"-created_at",type:Z.USAGE}).then(({data:t})=>{this.applications=t.items.filter(e=>e?.service?.type===this.type)}).catch(()=>{})},onFetchApis(){this.apisLoading=!0,Et.getAll({limit:100,offset:0,ordering:"-created_at"}).then(({data:t})=>{this.apis=t.items}).catch(()=>{}).finally(()=>{this.apisLoading=!1})},onFetchApiUsages(){console.log("onFetchApiUsages",this.createdAtRange),this.loading=!0,F.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}:{}}).then(({data:t})=>{this.apiUsages=t.items,this.loading=!1,this.total=t.count}).catch(()=>{this.loading=!1})},onFetchProxyUsages(){this.loading=!0,Rt.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:t})=>{this.proxyUsages=t.items,this.loading=!1,this.total=t.count}).catch(()=>{this.loading=!1})},onExport(){this.exporting=!0,F.exportCsv({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}:{}}).then(({data:t})=>{const e=window.URL.createObjectURL(t),r=document.createElement("a");r.href=e,r.download="usages.csv",r.click(),window.URL.revokeObjectURL(e)}).catch(()=>{}).finally(()=>{this.exporting=!1})},async onFetchAggregate(){if(this.aggLoading=!0,this.type!==this.serviceType.API)return;const t={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]}:{}};try{const{data:e}=await F.getAggregate(t);this.totalUsed=e.total||0;const r=Array.from(new Set((e.items||[]).map(d=>d.date))).sort(),h=Array.from(new Set((e.items||[]).map(d=>d.api_id))),$=d=>`hsl(${d*57%360}, 70%, 60%)`,w=h.map((d,y)=>{const m=e.apis?.[d]?.title||d,I={};(e.items||[]).filter(_=>_.api_id===d).forEach(_=>{I[_.date]=_.amount||0});const A=r.map(_=>I[_]||0);return{key:d,label:m,data:A,color:$(y)}});this.barChartLabels=r,this.barChartSeries=w}finally{this.aggLoading=!1}}}}),Vt={class:"text-[26px] font-bold mb-5 text-[var(--el-text-color-primary)]"},qt={class:"inline-block w-9"},Lt={class:"inline-block"},Ot={key:1,class:"summary-card"},Pt={class:"icon-wrapper"},jt={class:"text-left"},Mt={class:"description"},Bt={class:"value"},Ht={class:"chart-wrapper"},Nt={key:0},Yt={key:1},Jt={class:"flex flex-wrap gap-2"},xt={class:"key"},zt={key:0,class:"cursor-pointer"},Gt={class:"created-at"},Wt={class:"created-at"},Zt={key:1,class:"detail-json"},Kt={key:2,class:"text-gray-400"},Qt={key:1,class:"detail-json"},Xt={key:2,class:"text-gray-400"},te={class:"float-right"};function ee(t,e,r,h,$,w){const d=u("el-col"),y=u("el-row"),m=u("el-radio-button"),I=u("el-radio-group"),A=u("el-option"),_=u("el-select"),M=u("el-skeleton-item"),v=u("el-skeleton"),B=u("el-date-picker"),q=u("font-awesome-icon"),L=u("el-button"),E=u("el-card"),H=u("bar-chart"),c=u("el-table-column"),T=u("el-tag"),N=u("copy-to-clipboard"),O=u("el-table"),P=u("el-tab-pane"),Y=u("el-tabs"),J=u("el-dialog"),x=u("pagination"),j=St("loading");return o(),p(y,null,{default:s(()=>[i(d,{span:24},{default:s(()=>[i(y,null,{default:s(()=>[i(d,{span:24},{default:s(()=>[l("h2",Vt,n(t.$t("common.title.allUsages")),1)]),_:1})]),_:1}),i(y,null,{default:s(()=>[i(d,{md:4,xs:24,class:"mb-5 flex px-2 gap-2 items-center"},{default:s(()=>[l("span",null,n(t.$t("application.field.type")),1),i(I,{modelValue:t.type,"onUpdate:modelValue":e[0]||(e[0]=a=>t.type=a)},{default:s(()=>[i(m,{value:t.serviceType.API,label:t.$t("application.field.api")},null,8,["value","label"]),i(m,{value:t.serviceType.Proxy,label:t.$t("application.field.proxy")},null,8,["value","label"])]),_:1},8,["modelValue"])]),_:1}),V(i(d,{md:6,xs:24,class:"mb-5 flex px-2 gap-2 items-center"},{default:s(()=>[l("span",qt,n(t.$t("usage.field.application")),1),i(_,{modelValue:t.applicationIds,"onUpdate:modelValue":e[1]||(e[1]=a=>t.applicationIds=a),placeholder:t.$t("usage.field.application"),clearable:"",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",class:"w-full",onChange:t.onApplicationsChange},{default:s(()=>[(o(!0),g(S,null,k(t.applications,a=>(o(),p(A,{key:a.id,label:a.service?.title,value:a?.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","onChange"])]),_:1},512),[[Dt,!1]]),t.type===t.serviceType.API?(o(),p(d,{key:0,md:6,xs:24,class:"mb-5 flex px-2 gap-2 items-center"},{default:s(()=>[l("span",Lt,n(t.$t("usage.field.api")),1),t.apisLoading?(o(),p(v,{key:0,animated:"",class:"w-full"},{template:s(()=>[i(M,{variant:"rect",style:{height:"32px","border-radius":"4px"}})]),_:1})):(o(),p(_,{key:1,modelValue:t.apiIds,"onUpdate:modelValue":e[2]||(e[2]=a=>t.apiIds=a),placeholder:t.$t("usage.field.api"),clearable:"",filterable:"",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",class:"w-full",onChange:t.onApisChange},{default:s(()=>[(o(!0),g(S,null,k(t.apis,a=>(o(),p(A,{key:a?.id,label:a?.title,value:a?.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","onChange"]))]),_:1})):b("",!0),t.type===t.serviceType.API?(o(),p(d,{key:1,md:8,xs:24,class:"mb-5 flex px-2 gap-2 items-center"},{default:s(()=>[i(B,{modelValue:t.createdAtRange,"onUpdate:modelValue":e[3]||(e[3]=a=>t.createdAtRange=a),type:"datetimerange",class:"w-full",shortcuts:t.shortcuts,"range-separator":t.$t("usage.placeholder.to"),"start-placeholder":t.$t("usage.placeholder.startDate"),"end-placeholder":t.$t("usage.placeholder.endDate"),onChange:t.onTimeRangeChanged},null,8,["modelValue","shortcuts","range-separator","start-placeholder","end-placeholder","onChange"])]),_:1})):b("",!0),t.type===t.serviceType.API?(o(),p(d,{key:2,md:3,xs:24,class:"mb-5 flex px-2 gap-2 items-center"},{default:s(()=>[i(_,{modelValue:t.statusCodeFilter,"onUpdate:modelValue":e[4]||(e[4]=a=>t.statusCodeFilter=a),placeholder:t.$t("usage.option.statusCodeAll"),class:"w-full",clearable:"",filterable:"","allow-create":"","default-first-option":"",loading:t.statusCodeOptionsLoading,onChange:t.onStatusCodeChange},{default:s(()=>[(o(!0),g(S,null,k(t.statusCodeOptions,a=>(o(),p(A,{key:a,label:String(a),value:String(a)},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","loading","onChange"])]),_:1})):b("",!0),t.type===t.serviceType.API?(o(),p(d,{key:3,md:3,xs:24,class:"mb-5 flex px-2 gap-2 items-center justify-end"},{default:s(()=>[i(L,{type:"primary",plain:"",loading:t.exporting,class:"w-full whitespace-nowrap",onClick:t.onExport},{default:s(()=>[i(q,{icon:"fa-solid fa-file-export",class:"mr-1"}),D(" "+n(t.$t("usage.button.export")),1)]),_:1},8,["loading","onClick"])]),_:1})):b("",!0)]),_:1}),i(y,null,{default:s(()=>[i(d,{span:24},{default:s(()=>[t.type===t.serviceType.API?(o(),p(y,{key:0,gutter:24,class:"mb-5"},{default:s(()=>[i(d,{md:6,xs:24},{default:s(()=>[i(E,{shadow:"hover",class:"h-full"},{default:s(()=>[t.aggLoading?(o(),p(v,{key:0})):(o(),g("div",Ot,[l("div",Pt,[i(q,{icon:"fa-solid fa-cubes",class:"icon"})]),l("div",jt,[l("p",Mt,n(t.$t("usage.title.totalUsed")),1),l("p",Bt,n(t.totalUsedString),1)])]))]),_:1})]),_:1}),i(d,{md:18,xs:24},{default:s(()=>[i(E,{shadow:"hover",class:"h-full"},{default:s(()=>[l("div",Ht,[t.aggLoading?(o(),p(v,{key:0,class:"w-full"})):(o(),p(H,{key:1,data:t.barChartData,options:t.barChartOptions,class:"chart"},null,8,["data","options"]))])]),_:1})]),_:1})]),_:1})):b("",!0),i(E,{shadow:"hover"},{default:s(()=>[t.type===t.serviceType.API?V((o(),p(O,{key:0,data:t.apiUsages,stripe:"","table-layout":"fixed","empty-text":t.$t("common.message.noData"),class:"min-h-[calc(100vh-350px)] mb-5"},{default:s(()=>[i(c,{label:t.$t("application.field.name"),width:"160px"},{default:s(a=>[l("span",null,n(a.row?.api?.title),1)]),_:1},8,["label"]),i(c,{label:t.$t("usage.field.statusCode"),width:"120px"},{default:s(a=>[l("span",null,n(a.row.status_code),1)]),_:1},8,["label"]),i(c,{label:t.$t("usage.field.elapsed"),width:"120px"},{default:s(a=>[l("span",null,n(t.formatElapsed(a.row.elapsed)),1)]),_:1},8,["label"]),i(c,{prop:"deducted_amount",label:t.$t("usage.field.deductedAmount"),width:"150px","class-name":"text-center"},{default:s(a=>[t.getDeductedAmount(a.row)===t.getOriginalAmount(a.row)?(o(),g("div",Nt,[l("span",null,n(t.getDeductedAmount(a.row)),1)])):(o(),g("div",Yt,[e[7]||(e[7]=l("p",null,null,-1)),l("p",null,[l("span",null,n(t.getDeductedAmount(a.row)),1)]),l("p",null,[l("del",null,n(t.getOriginalAmount(a.row)),1)])]))]),_:1},8,["label"]),i(c,{prop:"remaining_amount",label:t.$t("usage.field.balanceAfter"),width:"160px","class-name":"text-center"},{default:s(a=>[l("span",null,n(t.getRemainingAmount(a.row)),1)]),_:1},8,["label"]),i(c,{prop:"metadata",label:t.$t("usage.field.metadata"),width:"260px","class-name":"text-center"},{default:s(a=>[l("div",Jt,[a.row.original_amount>a.row.deducted_amount&&a.row.original_amount>0?(o(),p(T,{key:0,type:"success",style:{textWrap:"wrap",height:"fit-content",lineHeight:"20px",borderRadius:"10px"}},{default:s(()=>[D(n(((a.row.original_amount-a.row.deducted_amount)*100/a.row.original_amount).toFixed(0)+"% OFF"),1)]),_:2},1024)):b("",!0),(o(!0),g(S,null,k(t.getSimpleMetadata(a.row.metadata),(R,C)=>(o(),p(T,{key:C,style:{textWrap:"wrap",height:"fit-content",lineHeight:"20px",borderRadius:"10px"}},{default:s(()=>[D(n(C)+": "+n(R),1)]),_:2},1024))),128))])]),_:1},8,["label"]),i(c,{label:t.$t("usage.button.viewDetail"),width:"120px","class-name":"text-center"},{default:s(a=>[a.row.id?(o(),p(L,{key:0,type:"primary",plain:"",size:"small",class:"!px-2 !py-1 !text-xs !h-auto !min-h-0",onClick:R=>t.onShowDetail(a.row)},{default:s(()=>[D(n(t.$t("usage.button.viewDetail")),1)]),_:1},8,["onClick"])):b("",!0)]),_:1},8,["label"]),i(c,{prop:"trace_id",label:t.$t("application.field.traceId"),width:"200px","class-name":"text-center"},{default:s(a=>[l("span",xt,n(a.row.trace_id),1),a.row.trace_id?(o(),g("span",zt,[i(N,{content:a.row.trace_id,class:"inline-block"},null,8,["content"])])):b("",!0)]),_:1},8,["label"]),i(c,{label:t.$t("usage.field.createdAt"),width:"200px"},{default:s(a=>[l("span",Gt,n(t.$dayjs.format(a.row.created_at)),1)]),_:1},8,["label"])]),_:1},8,["data","empty-text"])),[[j,t.loading]]):b("",!0),t.type===t.serviceType.Proxy?V((o(),p(O,{key:1,data:t.proxyUsages,stripe:"","table-layout":"fixed","empty-text":t.$t("common.message.noData"),class:"min-h-[calc(100vh-350px)] mb-5"},{default:s(()=>[i(c,{label:t.$t("application.field.name"),width:"160px"},{default:s(a=>[l("span",null,n(a.row?.service?.title),1)]),_:1},8,["label"]),i(c,{prop:"remaining_amount",label:t.$t("usage.field.remainingAmount"),width:"160px","class-name":"text-center"},{default:s(a=>[l("span",null,n(t.getRemainingAmount(a.row)),1),l("span",null,n(t.getOriginalAmount(a.row)),1)]),_:1},8,["label"]),i(c,{prop:"deducted_amount",label:t.$t("usage.field.deductedAmount"),width:"150px","class-name":"text-center"},{default:s(a=>[l("span",null,n(t.getDeductedAmount(a.row)),1)]),_:1},8,["label"]),i(c,{label:t.$t("usage.field.balanceAfter"),width:"160px","class-name":"text-center"},{default:s(a=>[l("span",null,n(t.getRemainingAmount(a.row)),1)]),_:1},8,["label"]),i(c,{prop:"metadata",label:t.$t("usage.field.metadata"),width:"200px","class-name":"text-center"},{default:s(a=>[(o(!0),g(S,null,k(a.row.metadata,(R,C)=>(o(),p(T,{key:C,class:"mb-2"},{default:s(()=>[D(n(C)+": "+n(R),1)]),_:2},1024))),128))]),_:1},8,["label"]),i(c,{label:t.$t("usage.field.createdAt"),width:"200px"},{default:s(a=>[l("span",Wt,n(t.$dayjs.format(a.row.created_at)),1)]),_:1},8,["label"])]),_:1},8,["data","empty-text"])),[[j,t.loading]]):b("",!0)]),_:1})]),_:1})]),_:1}),i(J,{modelValue:t.detailDialogVisible,"onUpdate:modelValue":e[6]||(e[6]=a=>t.detailDialogVisible=a),title:t.$t("usage.dialog.detailTitle"),width:"70%",top:"5vh","destroy-on-close":""},{default:s(()=>[i(Y,{modelValue:t.detailActiveTab,"onUpdate:modelValue":e[5]||(e[5]=a=>t.detailActiveTab=a)},{default:s(()=>[i(P,{label:t.$t("usage.dialog.request"),name:"request"},{default:s(()=>[t.detailLoading?(o(),p(v,{key:0,rows:6,animated:""})):t.detailRow?.metadata?.request?(o(),g("pre",Zt,n(t.formatJson(t.detailRow.metadata.request)),1)):(o(),g("p",Kt,n(t.$t("usage.dialog.noData")),1))]),_:1},8,["label"]),i(P,{label:t.$t("usage.dialog.response"),name:"response"},{default:s(()=>[t.detailLoading?(o(),p(v,{key:0,rows:6,animated:""})):t.detailRow?.metadata?.response?(o(),g("pre",Qt,n(t.formatJson(t.detailRow.metadata.response)),1)):(o(),g("p",Xt,n(t.$t("usage.dialog.noData")),1))]),_:1},8,["label"])]),_:1},8,["modelValue"])]),_:1},8,["modelValue","title"]),i(y,null,{default:s(()=>[i(d,{span:10,offset:14},{default:s(()=>[l("div",te,[i(x,{"current-page":t.page,"page-size":t.limit,total:t.total,onChange:t.onPageChange},null,8,["current-page","page-size","total","onChange"])])]),_:1})]),_:1})]),_:1})]),_:1})}const He=K(Tt,[["render",ee],["__scopeId","data-v-38f1845c"]]);export{He as default};
@@ -1 +1 @@
1
- import{N as E}from"./Navigator-BMMW5pkI.js";import{A as N}from"./Status-B1QNk4Dj.js";import{a5 as d,a6 as u,br as z,bo as I,J as v,o as k,S as C}from"./index-D8aPgnGc.js";import{a as x}from"./errorCode-Cqj9Td_Z.js";import{E as D}from"./index-Cf_g4cNy.js";import{E as U}from"./index-BRjvV2nQ.js";import{E as L}from"./index-DMfygNOh.js";import{E as y}from"./index-DZku_iGx.js";import{d as w,x as _,y as $,D as m,H as h,E as l,N as R,J as a,q as A,c as B,C as V,I as P}from"./vendor-vue-BWIxYyW8.js";import"./midjourney-BpOMf6EO.js";import"./luma-DcySqBv2.js";import"./kling-DwJwIwVI.js";import"./veo-Dg8Zhpd-.js";import"./sora-Dyuoglk1.js";import"./pixverse-g-p4CgDy.js";import"./flux-BDAe6Szo.js";import"./hailuo-C8Dw-0xR.js";import"./suno-B9P6-pqW.js";import"./producer-BGNC4QeM.js";import"./serp-BcjVM9iR.js";import"./wan-DKq-jYOo.js";import"./webextrator-B5rnj1Le.js";import"./fish-B2JG6AjH.js";import"./avatar-DfhasVvk.js";import"./index.es-ChY1FlMW.js";import"./index-CeOpBsgD.js";import"./index-DbIiryMD.js";import"./index-Pbe8CChL.js";import"./typescript-B00PCKaI.js";import"./index-CcYwI3ai.js";import"./dropdown-Cs39B1D0.js";import"./castArray-CbnSaxKn.js";import"./byokCredential-Dh3cWl5K.js";import"./vendor-axios-B8_nURbH.js";import"./index-qdj2_nOs.js";import"./strings-CoSJ5yUQ.js";import"./isEqual-CfWw3lpS.js";import"./_Uint8Array-DtfKpEZY.js";import"./use-form-item-Bb96LHMh.js";import"./index-DNCRlcDT.js";import"./index-BNHSnEGK.js";import"./debounce-Dl8en2o_.js";import"./_baseIteratee-CY2Cl0zu.js";import"./index-D_7iS0Ka.js";import"./index-h8mYvo0x.js";import"./_baseClone-dGPbkYnN.js";import"./_initCloneObject-BzDf8hsu.js";import"./index-Csx7MJnP.js";import"./isPlainObject-D5ZKzez2.js";import"./index-DDcepg7B.js";import"./validator-ClQ6IwxP.js";import"./index-CYGh3Ikj.js";import"./index-CTEohCbd.js";import"./index-mLHeIJV7.js";import"./index-BuyEbX8F.js";import"./index-D3WkBohO.js";import"./index-CNsD4H53.js";import"./index-48ZBNX7c.js";import"./index-CX74Mixx.js";import"./CopyToClipboard-CZv5BP7B.js";import"./index-BLjywj98.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-CCWK5dA3.js";function S(t){if(!t?.expired_at)return!1;try{return new Date(t?.expired_at)<new Date}catch{return!1}}function O(t){return console.debug("application remaining amount",t,t?.remaining_amount),t?.remaining_amount&&t?.remaining_amount<0}function f(t){if(!t)return console.debug("application is undefined, return false"),!1;const i=O(t),o=S(t);return console.debug("is application exhausted",i),console.debug("is application expired",o),!i&&!o}function G(t,i){if(console.debug("start to execute getFinalApplication",t,i),i){const e=t?.find(c=>c.id===i.id);if(e)return console.debug("current application is preserved (respect user selection)",e),e}console.debug("get final application from applications",t);const o=t?.find(e=>e.scope===d.GLOBAL&&e.type===u.PERIOD);if(console.debug("application1",o),f(o))return console.debug("application with global scope and Period type",o),o;const s=t?.find(e=>e.scope===d.GLOBAL&&e.type===u.USAGE);if(console.debug("application2",s),f(s))return console.debug("application with global scope and Usage type",s),s;const p=t?.find(e=>(e.scope===d.INDIVIDUAL&&e?.type)===u.PERIOD);if(console.debug("application3",p),f(p))return console.debug("application with Period type",p),p;const n=t?.find(e=>(e.scope===d.INDIVIDUAL&&e?.type)===u.USAGE);return console.debug("application4",n),f(n)?(console.debug("application with Usage type",n),n):o||s||p||n}const F=w({name:"ApplicationConfirm",components:{ElDialog:I,ElDivider:L,ElCheckbox:U,ElButton:D},props:{visible:{type:Boolean,required:!1,default:!1}},emits:["update:visible","apply"],data(){return{checked:!0}},watch:{},methods:{getBaseUrlPlatform:z,onApply(){if(!this.checked){y.error(this.$t("application.message.notAgreePolicy"));return}this.$emit("apply")}}}),M={class:"content py-[10px] px-[40px]"},T={class:"my-4"},W={class:"policy mb-[10px]"},q={class:"policy-title text-[12px] relative -bottom-[3px]"},J=["href"];function H(t,i,o,s,p,n){const e=a("el-divider"),c=a("el-checkbox"),g=a("el-button"),b=a("el-dialog");return A(),_(b,{"model-value":t.visible,width:"500px",title:t.$t("application.message.welcome"),center:"",onClose:i[1]||(i[1]=r=>t.$emit("update:visible",!1))},{default:$(()=>[m("div",M,[m("p",T,h(t.$t("application.message.notApplied")),1),l(e,{class:"my-2"}),m("div",W,[l(c,{modelValue:t.checked,"onUpdate:modelValue":i[0]||(i[0]=r=>t.checked=r),size:"large",class:"policy-checkbox mr-[10px]"},null,8,["modelValue"]),m("span",q,h(t.$t("application.message.readPolicy")),1),m("a",{class:"policy-title text-[12px] relative -bottom-[3px] text-[var(--el-color-primary)] cursor-pointer no-underline",target:"_blank",href:t.getBaseUrlPlatform()+"/terms"},"  "+h(t.$t("application.message.policy")),9,J)]),l(g,{round:"",type:"primary",onClick:t.onApply},{default:$(()=>[R(h(t.$t("common.button.start")),1)]),_:1},8,["onClick"])])]),_:1},8,["model-value","title"])}const j=v(F,[["render",H]]),K=w({name:"LayoutMain",components:{Navigator:E,ApplicationStatus:N,ApplicationConfirm:j},provide(){return{initialized:B(()=>this.initialized)}},data(){return{initialized:!1,applying:!1,mobile:window.innerWidth<768,initializeRunId:0}},computed:{appName(){return this.$route.meta.appName},application(){return this.$store.state[this.appName]?.application},applications(){const t=this.$store.state[this.appName]?.applications??[];console.debug("individualApplications",t);const i=this.$store.state.applications??[];return console.debug("globalApplications",i),i.concat(t)},loading(){return this.$store.state[this.appName]?.status?.getApplications===C.Request},service(){return this.$store.state[this.appName]?.service},userId(){return this.$store.state.user?.id}},watch:{appName(){this.initialize()},userId(t,i){t&&t!==i&&this.initialize()}},mounted(){this.initialize(),window.addEventListener("resize",this.onResize)},beforeUnmount(){window.removeEventListener("resize",this.onResize)},methods:{onResize(){this.mobile=window.innerWidth<768},async initialize(){const t=++this.initializeRunId;if(this.initialized=!1,console.debug("Fetching all individual and global applications for",this.appName),await Promise.allSettled([this.$store.dispatch("getApplications"),this.$store.dispatch(`${this.appName}/getApplications`)]),t!==this.initializeRunId)return;console.debug("Fetched all applications",this.applications),this.$store.state.applications?.length===0&&await this.onAutoApply();const i=this.$store.state[this.appName]?.application;console.debug("current application",i);const o=G(this.applications,i);console.debug("final application",o),o&&(console.debug("set final application",o,o?.type),await this.$store.dispatch(`${this.appName}/setApplication`,o)),console.debug("finished initialization"),this.initialized=!0},onApply(){this.onAutoApply()},async onAutoApply(){try{await k.create({type:u.USAGE,scope:d.GLOBAL,user_id:this.$store.getters.user.id}),this.applying=!1,await this.$store.dispatch("getApplications"),this.showWelcomeToast()}catch(t){t?.response?.data?.code===x?await this.$store.dispatch("getApplications"):y.error(this.$t("application.message.applyFailed"))}},showWelcomeToast(){const t=this.$store.state.applications?.[0],i=Math.floor(t?.remaining_amount??0),o=i>0?this.$t("application.message.welcomeWithCredits",{credits:i}):this.$t("application.message.welcomeNoCredits");y({message:o,type:"success",duration:6e3,showClose:!0})}}}),Q={class:"wrapper"};function X(t,i,o,s,p,n){const e=a("router-view"),c=a("navigator"),g=a("application-status"),b=a("application-confirm");return A(),V("div",Q,[l(e,{class:"main"}),l(c,{class:"navigator",direction:t.mobile?"row":"column"},null,8,["direction"]),t.application?(A(),_(g,{key:0,class:"status-floating fixed right-2 z-[200]",application:t.application,applications:t.applications,"show-price":!1,authenticated:!!t.$store.state.token.access,service:t.service,onSelect:i[0]||(i[0]=r=>t.$store.dispatch(`${t.appName}/setApplication`,r))},null,8,["application","applications","authenticated","service"])):P("",!0),l(b,{modelValue:t.applying,"onUpdate:modelValue":i[1]||(i[1]=r=>t.applying=r),modelModifiers:{visible:!0},onApply:t.onApply},null,8,["modelValue","onApply"])])}const ni=v(K,[["render",X],["__scopeId","data-v-319483e1"]]);export{ni as default};
1
+ import{N as E}from"./Navigator-CyVubivp.js";import{A as N}from"./Status-C5MWNzvf.js";import{a5 as d,a6 as u,br as z,bo as I,J as v,o as k,S as C}from"./index-DbTnCj6Y.js";import{a as x}from"./errorCode-Cqj9Td_Z.js";import{E as D}from"./index-BxvVaie9.js";import{E as U}from"./index-Dpfvnj_D.js";import{E as L}from"./index-D-5UDz9i.js";import{E as y}from"./index-CrQhQx4A.js";import{d as w,x as _,y as $,D as m,H as h,E as l,N as R,J as a,q as A,c as B,C as V,I as P}from"./vendor-vue-BWIxYyW8.js";import"./midjourney-BpOMf6EO.js";import"./luma-DcySqBv2.js";import"./kling-DwJwIwVI.js";import"./veo-Dg8Zhpd-.js";import"./sora-Dyuoglk1.js";import"./pixverse-g-p4CgDy.js";import"./flux-BDAe6Szo.js";import"./hailuo-C8Dw-0xR.js";import"./suno-B9P6-pqW.js";import"./producer-BGNC4QeM.js";import"./serp-BcjVM9iR.js";import"./wan-DKq-jYOo.js";import"./webextrator-B5rnj1Le.js";import"./fish-B2JG6AjH.js";import"./avatar-jEBtzPrU.js";import"./index.es-DMDeBnDi.js";import"./index-Dtb4HDII.js";import"./index-DuvI3onY.js";import"./index-Do6ztq8u.js";import"./typescript-CY0oKMIT.js";import"./index-CXJwHbs-.js";import"./dropdown-C1od899P.js";import"./castArray-Cv8DqDDB.js";import"./byokCredential-D83pl37c.js";import"./vendor-axios-B8_nURbH.js";import"./index-B0SN8iJh.js";import"./strings-CoSJ5yUQ.js";import"./isEqual-ARjTA69Y.js";import"./_Uint8Array-CXUVTNFA.js";import"./use-form-item-B1LdPsOA.js";import"./index-Dwi7KeFX.js";import"./index-BQHgP10P.js";import"./debounce-B-vwp3ga.js";import"./_baseIteratee-CCPLrKcd.js";import"./index-DFezti2N.js";import"./index-BR9tWzNr.js";import"./_baseClone-CbUe37lr.js";import"./_initCloneObject-B8-TXaLO.js";import"./index-DicsQbSj.js";import"./isPlainObject-B5tfD1Mc.js";import"./index-Bhzy7uLO.js";import"./validator-DXKD343S.js";import"./index-T5bWw6c2.js";import"./index-CW9cp3r1.js";import"./index-B66z64hx.js";import"./index-BuyEbX8F.js";import"./index-Cv9n35Q1.js";import"./index-CwiuN5yS.js";import"./index-B2gr1nvM.js";import"./index-C9XEpdPc.js";import"./CopyToClipboard-DtIK0kcZ.js";import"./index-BLjywj98.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-CCWK5dA3.js";function S(t){if(!t?.expired_at)return!1;try{return new Date(t?.expired_at)<new Date}catch{return!1}}function O(t){return console.debug("application remaining amount",t,t?.remaining_amount),t?.remaining_amount&&t?.remaining_amount<0}function f(t){if(!t)return console.debug("application is undefined, return false"),!1;const i=O(t),o=S(t);return console.debug("is application exhausted",i),console.debug("is application expired",o),!i&&!o}function G(t,i){if(console.debug("start to execute getFinalApplication",t,i),i){const e=t?.find(c=>c.id===i.id);if(e)return console.debug("current application is preserved (respect user selection)",e),e}console.debug("get final application from applications",t);const o=t?.find(e=>e.scope===d.GLOBAL&&e.type===u.PERIOD);if(console.debug("application1",o),f(o))return console.debug("application with global scope and Period type",o),o;const s=t?.find(e=>e.scope===d.GLOBAL&&e.type===u.USAGE);if(console.debug("application2",s),f(s))return console.debug("application with global scope and Usage type",s),s;const p=t?.find(e=>(e.scope===d.INDIVIDUAL&&e?.type)===u.PERIOD);if(console.debug("application3",p),f(p))return console.debug("application with Period type",p),p;const n=t?.find(e=>(e.scope===d.INDIVIDUAL&&e?.type)===u.USAGE);return console.debug("application4",n),f(n)?(console.debug("application with Usage type",n),n):o||s||p||n}const F=w({name:"ApplicationConfirm",components:{ElDialog:I,ElDivider:L,ElCheckbox:U,ElButton:D},props:{visible:{type:Boolean,required:!1,default:!1}},emits:["update:visible","apply"],data(){return{checked:!0}},watch:{},methods:{getBaseUrlPlatform:z,onApply(){if(!this.checked){y.error(this.$t("application.message.notAgreePolicy"));return}this.$emit("apply")}}}),M={class:"content py-[10px] px-[40px]"},T={class:"my-4"},W={class:"policy mb-[10px]"},q={class:"policy-title text-[12px] relative -bottom-[3px]"},J=["href"];function H(t,i,o,s,p,n){const e=a("el-divider"),c=a("el-checkbox"),g=a("el-button"),b=a("el-dialog");return A(),_(b,{"model-value":t.visible,width:"500px",title:t.$t("application.message.welcome"),center:"",onClose:i[1]||(i[1]=r=>t.$emit("update:visible",!1))},{default:$(()=>[m("div",M,[m("p",T,h(t.$t("application.message.notApplied")),1),l(e,{class:"my-2"}),m("div",W,[l(c,{modelValue:t.checked,"onUpdate:modelValue":i[0]||(i[0]=r=>t.checked=r),size:"large",class:"policy-checkbox mr-[10px]"},null,8,["modelValue"]),m("span",q,h(t.$t("application.message.readPolicy")),1),m("a",{class:"policy-title text-[12px] relative -bottom-[3px] text-[var(--el-color-primary)] cursor-pointer no-underline",target:"_blank",href:t.getBaseUrlPlatform()+"/terms"},"  "+h(t.$t("application.message.policy")),9,J)]),l(g,{round:"",type:"primary",onClick:t.onApply},{default:$(()=>[R(h(t.$t("common.button.start")),1)]),_:1},8,["onClick"])])]),_:1},8,["model-value","title"])}const j=v(F,[["render",H]]),K=w({name:"LayoutMain",components:{Navigator:E,ApplicationStatus:N,ApplicationConfirm:j},provide(){return{initialized:B(()=>this.initialized)}},data(){return{initialized:!1,applying:!1,mobile:window.innerWidth<768,initializeRunId:0}},computed:{appName(){return this.$route.meta.appName},application(){return this.$store.state[this.appName]?.application},applications(){const t=this.$store.state[this.appName]?.applications??[];console.debug("individualApplications",t);const i=this.$store.state.applications??[];return console.debug("globalApplications",i),i.concat(t)},loading(){return this.$store.state[this.appName]?.status?.getApplications===C.Request},service(){return this.$store.state[this.appName]?.service},userId(){return this.$store.state.user?.id}},watch:{appName(){this.initialize()},userId(t,i){t&&t!==i&&this.initialize()}},mounted(){this.initialize(),window.addEventListener("resize",this.onResize)},beforeUnmount(){window.removeEventListener("resize",this.onResize)},methods:{onResize(){this.mobile=window.innerWidth<768},async initialize(){const t=++this.initializeRunId;if(this.initialized=!1,console.debug("Fetching all individual and global applications for",this.appName),await Promise.allSettled([this.$store.dispatch("getApplications"),this.$store.dispatch(`${this.appName}/getApplications`)]),t!==this.initializeRunId)return;console.debug("Fetched all applications",this.applications),this.$store.state.applications?.length===0&&await this.onAutoApply();const i=this.$store.state[this.appName]?.application;console.debug("current application",i);const o=G(this.applications,i);console.debug("final application",o),o&&(console.debug("set final application",o,o?.type),await this.$store.dispatch(`${this.appName}/setApplication`,o)),console.debug("finished initialization"),this.initialized=!0},onApply(){this.onAutoApply()},async onAutoApply(){try{await k.create({type:u.USAGE,scope:d.GLOBAL,user_id:this.$store.getters.user.id}),this.applying=!1,await this.$store.dispatch("getApplications"),this.showWelcomeToast()}catch(t){t?.response?.data?.code===x?await this.$store.dispatch("getApplications"):y.error(this.$t("application.message.applyFailed"))}},showWelcomeToast(){const t=this.$store.state.applications?.[0],i=Math.floor(t?.remaining_amount??0),o=i>0?this.$t("application.message.welcomeWithCredits",{credits:i}):this.$t("application.message.welcomeNoCredits");y({message:o,type:"success",duration:6e3,showClose:!0})}}}),Q={class:"wrapper"};function X(t,i,o,s,p,n){const e=a("router-view"),c=a("navigator"),g=a("application-status"),b=a("application-confirm");return A(),V("div",Q,[l(e,{class:"main"}),l(c,{class:"navigator",direction:t.mobile?"row":"column"},null,8,["direction"]),t.application?(A(),_(g,{key:0,class:"status-floating fixed right-2 z-[200]",application:t.application,applications:t.applications,"show-price":!1,authenticated:!!t.$store.state.token.access,service:t.service,onSelect:i[0]||(i[0]=r=>t.$store.dispatch(`${t.appName}/setApplication`,r))},null,8,["application","applications","authenticated","service"])):P("",!0),l(b,{modelValue:t.applying,"onUpdate:modelValue":i[1]||(i[1]=r=>t.applying=r),modelModifiers:{visible:!0},onApply:t.onApply},null,8,["modelValue","onApply"])])}const ni=v(K,[["render",X],["__scopeId","data-v-319483e1"]]);export{ni as default};
@@ -1 +1 @@
1
- import{L as A}from"./Hailuo-Ca6pOxJe.js";import{F as R}from"./index.es-ChY1FlMW.js";import{br as T,J as k,az as B,b8 as L}from"./index-D8aPgnGc.js";import{u as D}from"./uploadTrackerMixin--N-yU8Tl.js";import{a as z}from"./vendor-axios-B8_nURbH.js";import{E as S}from"./index-Cf_g4cNy.js";import{E as p}from"./index-DZku_iGx.js";import{d as U,C as l,D as t,E as i,H as s,y as a,N as m,I as f,x as b,P as F,J as n,q as r,K as O,M as N,L as P}from"./vendor-vue-BWIxYyW8.js";import{E as j}from"./index-BTNb2CTo.js";import{E as q}from"./index-DDcepg7B.js";import{E as G,a as H}from"./index-CPWMXvq-.js";import{E as X}from"./index-DNCRlcDT.js";import{C as Y}from"./CopyToClipboard-CZv5BP7B.js";import{E as J}from"./index-mLHeIJV7.js";import{E as K}from"./index-CbnGYE9U.js";import{B as Z}from"./BotPlaceholder-xpsKXt0P.js";import{T as Q}from"./TabSwitcher-Cnp92end.js";import{b as W}from"./errorCode-Cqj9Td_Z.js";import"./index-Cvqp7__y.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-CCWK5dA3.js";import"./use-form-item-Bb96LHMh.js";import"./index-BuyEbX8F.js";import"./typescript-B00PCKaI.js";import"./index-DhOSddkE.js";import"./_baseClone-dGPbkYnN.js";import"./_Uint8Array-DtfKpEZY.js";import"./index-Pbe8CChL.js";import"./_initCloneObject-BzDf8hsu.js";import"./isEqual-CfWw3lpS.js";import"./validator-ClQ6IwxP.js";import"./index-BNHSnEGK.js";import"./index-BLjywj98.js";import"./index-DbIiryMD.js";import"./debounce-Dl8en2o_.js";import"./index-TUT4Ls42.js";import"./index-j-bX9GhB.js";import"./strings-CoSJ5yUQ.js";import"./isPlainObject-D5ZKzez2.js";const I=4,x=90,ee=U({name:"FishRecorder",components:{ElButton:S,FontAwesomeIcon:R},emits:["done","cancel","update:script"],data(){return{state:"idle",scriptIndex:0,seconds:0,timerId:0,maxTimerId:0,mediaRecorder:null,stream:null,chunks:[],recordedBlob:null,recordedUrl:"",uploading:!1}},computed:{formattedTime(){const e=Math.floor(this.seconds/60),o=this.seconds%60;return`${e.toString().padStart(2,"0")}:${o.toString().padStart(2,"0")}`},currentScript(){const e=`fish.script.passage${this.scriptIndex%I+1}`;return this.$t(e)}},beforeUnmount(){this.cleanup()},mounted(){this.$emit("update:script",this.currentScript)},methods:{nextScript(){this.scriptIndex=(this.scriptIndex+1)%I,this.$emit("update:script",this.currentScript)},async startRecord(){if(!navigator.mediaDevices?.getUserMedia||typeof MediaRecorder>"u"){p.error(this.$t("fish.message.recorderUnsupported"));return}try{this.stream=await navigator.mediaDevices.getUserMedia({audio:!0})}catch(o){const v=o?.name==="NotAllowedError"||o?.name==="PermissionDeniedError";p.error(this.$t(v?"fish.message.micDenied":"fish.message.micError"));return}this.chunks=[];const e=this.pickMimeType();try{this.mediaRecorder=e?new MediaRecorder(this.stream,{mimeType:e}):new MediaRecorder(this.stream)}catch{this.mediaRecorder=new MediaRecorder(this.stream)}this.mediaRecorder.ondataavailable=o=>{o.data&&o.data.size>0&&this.chunks.push(o.data)},this.mediaRecorder.onstop=()=>{const o=new Blob(this.chunks,{type:this.mediaRecorder?.mimeType||"audio/webm"});this.recordedBlob=o,this.recordedUrl=URL.createObjectURL(o),this.state="recorded",this.releaseStream()},this.mediaRecorder.start(),this.state="recording",this.seconds=0,this.timerId=window.setInterval(()=>{this.seconds++},1e3),this.maxTimerId=window.setTimeout(()=>{this.state==="recording"&&this.stopRecord()},x*1e3)},stopRecord(){this.mediaRecorder&&this.mediaRecorder.state!=="inactive"&&this.mediaRecorder.stop(),window.clearInterval(this.timerId),window.clearTimeout(this.maxTimerId)},reset(){this.recordedUrl&&URL.revokeObjectURL(this.recordedUrl),this.recordedUrl="",this.recordedBlob=null,this.state="idle",this.seconds=0},onCancel(){this.cleanup(),this.$emit("cancel")},cleanup(){this.stopRecord(),this.releaseStream(),this.recordedUrl&&URL.revokeObjectURL(this.recordedUrl)},releaseStream(){this.stream?.getTracks().forEach(e=>e.stop()),this.stream=null},pickMimeType(){const e=["audio/webm;codecs=opus","audio/webm","audio/mp4","audio/ogg"];for(const o of e)if(typeof MediaRecorder<"u"&&MediaRecorder.isTypeSupported?.(o))return o},extensionForMime(e){return e.includes("webm")?"webm":e.includes("mp4")?"m4a":e.includes("ogg")?"ogg":e.includes("wav")?"wav":"mp3"},async useRecording(){if(this.recordedBlob){if(this.seconds<3){p.warning(this.$t("fish.message.recordingTooShort"));return}this.uploading=!0;try{const e=this.$store.state.token?.access,o=this.extensionForMime(this.recordedBlob.type||""),v=new File([this.recordedBlob],`recording-${Date.now()}.${o}`,{type:this.recordedBlob.type||"audio/webm"}),h=new FormData;h.append("file",v);const{data:y}=await z.post(`${T()}/api/v1/files/`,h,{headers:{Authorization:`Bearer ${e}`}}),_=y?.file_url;if(!_){p.error(this.$t("fish.message.uploadError"));return}this.$emit("done",{url:_,text:this.currentScript})}catch(e){p.error(this.$t("fish.message.uploadError")),console.error("recorder upload failed",e)}finally{this.uploading=!1}}}}}),oe={class:"recorder"},te={key:0,class:"script"},se={class:"script-header"},ie={class:"label"},re={class:"script-text"},ae={class:"controls"},ne={class:"status"},le={class:"hint"},de={key:1,class:"preview"},ce=["src"],me={class:"preview-actions"},ue={class:"footer"};function pe(e,o,v,h,y,_){const c=n("font-awesome-icon"),d=n("el-button");return r(),l("div",oe,[e.state!=="recorded"?(r(),l("div",te,[t("div",se,[i(c,{icon:"fa-solid fa-book-open",class:"icon mr-1"}),t("span",ie,s(e.$t("fish.description.readScript")),1),i(d,{link:"",size:"small",class:"ml-auto",disabled:e.state==="recording",onClick:e.nextScript},{default:a(()=>[i(c,{icon:"fa-solid fa-shuffle",class:"mr-1"}),m(" "+s(e.$t("fish.button.nextScript")),1)]),_:1},8,["disabled","onClick"])]),t("p",re,s(e.currentScript),1)])):f("",!0),t("div",ae,[e.state==="idle"?(r(),b(d,{key:0,type:"danger",circle:"",size:"large",title:e.$t("fish.button.startRecord"),onClick:e.startRecord},{default:a(()=>[i(c,{icon:"fa-solid fa-microphone"})]),_:1},8,["title","onClick"])):e.state==="recording"?(r(),b(d,{key:1,type:"warning",circle:"",size:"large",title:e.$t("fish.button.stopRecord"),onClick:e.stopRecord},{default:a(()=>[i(c,{icon:"fa-solid fa-stop"})]),_:1},8,["title","onClick"])):f("",!0),t("div",ne,[t("span",{class:F(["timer",e.state==="recording"?"live":""])},s(e.formattedTime),3),t("span",le,s(e.state==="idle"?e.$t("fish.description.recorderIdle"):e.state==="recording"?e.$t("fish.description.recorderRecording"):e.$t("fish.description.recorderRecorded")),1)])]),e.state==="recorded"&&e.recordedUrl?(r(),l("div",de,[t("audio",{src:e.recordedUrl,controls:"",preload:"metadata",class:"w-full"},null,8,ce),t("div",me,[i(d,{size:"small",disabled:e.uploading,onClick:e.reset},{default:a(()=>[i(c,{icon:"fa-solid fa-rotate-left",class:"mr-1"}),m(" "+s(e.$t("fish.button.reRecord")),1)]),_:1},8,["disabled","onClick"]),i(d,{size:"small",type:"primary",loading:e.uploading,onClick:e.useRecording},{default:a(()=>[i(c,{icon:"fa-solid fa-check",class:"mr-1"}),m(" "+s(e.$t("fish.button.useRecording")),1)]),_:1},8,["loading","onClick"])])])):f("",!0),t("div",ue,[i(d,{link:"",size:"small",disabled:e.uploading||e.state==="recording",onClick:e.onCancel},{default:a(()=>[m(s(e.$t("fish.button.cancel")),1)]),_:1},8,["disabled","onClick"])])])}const fe=k(ee,[["render",pe],["__scopeId","data-v-1958e4a1"]]),he=50*1024*1024,M=()=>({title:"",description:"",texts:"",voicesUrl:"",visibility:"unlist",trainMode:"fast",enhanceAudio:!0,generateSample:!1}),ve=U({name:"FishModelConfigPanel",components:{ElButton:S,ElInput:X,ElRadioButton:H,ElRadioGroup:G,ElSwitch:q,ElUpload:j,FontAwesomeIcon:R,Recorder:fe},mixins:[D],emits:["create"],data(){return{form:M(),fileList:[],uploading:!1,creating:!1,recording:!1,textsAuto:!0}},computed:{uploadUrl(){return T()+"/api/v1/files/"},uploadHeaders(){return{Authorization:`Bearer ${this.$store.state.token?.access}`}},canCreate(){return!!this.form.title.trim()&&!!this.form.voicesUrl&&!this.uploading&&!this.creating},supportsRecorder(){return!!(typeof navigator<"u"?navigator.mediaDevices:void 0)?.getUserMedia&&typeof MediaRecorder<"u"}},methods:{onBeforeUpload(e){return e.size>he?(p.warning(this.$t("fish.message.audioSizeExceed")),!1):(this.uploading=!0,!0)},onExceed(){p.warning(this.$t("fish.message.audioOnlyOne"))},onUploadError(){this.uploading=!1,p.error(this.$t("fish.message.uploadError"))},onUploadSuccess(e,o,v){this.uploading=!1;const h=e?.file_url;if(!h){p.error(this.$t("fish.message.uploadError")),this.fileList=[];return}this.form.voicesUrl=h,this.fileList=v},onRecorded(e){this.form.voicesUrl=e.url,this.recording=!1,e.text&&this.textsAuto&&(this.form.texts=e.text)},onStartRecord(){this.recording=!0,this.textsAuto=!this.form.texts.trim()},onScriptChange(e){this.textsAuto&&this.recording&&(this.form.texts=e)},onTextsInput(){this.textsAuto=!1},clearAudio(){this.form.voicesUrl="",this.fileList=[]},onCreate(){const e=this.form.title.trim();if(!e){p.warning(this.$t("fish.message.titleRequired"));return}if(!this.form.voicesUrl){p.warning(this.$t("fish.message.audioRequired"));return}const o={title:e,voices:this.form.voicesUrl,visibility:this.form.visibility,train_mode:this.form.trainMode,enhance_audio_quality:this.form.enhanceAudio,generate_sample:this.form.generateSample};this.form.description.trim()&&(o.description=this.form.description.trim()),this.form.texts.trim()&&(o.texts=[this.form.texts.trim()]),this.creating=!0,this.$emit("create",o),setTimeout(()=>{this.creating=!1,this.form=M(),this.fileList=[]},600)}}}),$e={class:"flex flex-col h-full"},ge={class:"flex-1 overflow-y-auto p-5"},_e={class:"field-block mb-4"},be={class:"title font-bold"},ye={class:"field-block mb-4"},we={class:"flex items-baseline justify-between mb-1"},ke={class:"title font-bold"},Ue={key:0,class:"muted"},Re={class:"hint"},Ce={key:0,class:"audio-actions"},Se={key:1,class:"hint warn"},Ve={key:3,class:"mt-2"},Ee=["src"],Ie={class:"ready-actions"},Me={class:"field-block mb-4"},Te={class:"title font-bold"},Ae={class:"hint"},Be={class:"field-block mb-4"},Le={class:"title font-bold"},De={class:"field-block mb-4"},ze={class:"title font-bold"},Fe={class:"field-block mb-4"},Oe={class:"title font-bold"},Ne={class:"field-block mb-3"},Pe={class:"field-row"},je={class:"title font-bold"},qe={class:"hint mt-0 mb-0"},Ge={class:"field-block mb-2"},He={class:"field-row"},Xe={class:"title font-bold"},Ye={class:"hint mt-0 mb-0"},Je={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ke(e,o,v,h,y,_){const c=n("el-input"),d=n("font-awesome-icon"),$=n("el-button"),g=n("el-upload"),C=n("recorder"),w=n("el-radio-button"),V=n("el-radio-group"),E=n("el-switch");return r(),l("div",$e,[t("div",ge,[t("div",_e,[t("h2",be,[m(s(e.$t("fish.name.voiceTitle"))+" ",1),o[9]||(o[9]=t("span",{class:"required"},"*",-1))]),i(c,{modelValue:e.form.title,"onUpdate:modelValue":o[0]||(o[0]=u=>e.form.title=u),placeholder:e.$t("fish.placeholder.voiceTitle"),maxlength:"60"},null,8,["modelValue","placeholder"])]),t("div",ye,[t("div",we,[t("h2",ke,[m(s(e.$t("fish.name.referenceAudio"))+" ",1),o[10]||(o[10]=t("span",{class:"required"},"*",-1))]),!e.form.voicesUrl&&!e.recording?(r(),l("span",Ue,s(e.$t("fish.description.audioRequired")),1)):f("",!0)]),t("p",Re,s(e.$t("fish.description.uploadAudio")),1),!e.form.voicesUrl&&!e.recording?(r(),l("div",Ce,[i(g,{"file-list":e.fileList,"onUpdate:fileList":o[1]||(o[1]=u=>e.fileList=u),name:"file",limit:1,class:"upload-wrapper",action:e.uploadUrl,accept:".mp3,.wav,.m4a,.ogg,.webm,audio/*","show-file-list":!1,"on-exceed":e.onExceed,"on-error":e.onUploadError,"on-success":e.onUploadSuccess,"before-upload":e.onBeforeUpload,headers:e.uploadHeaders},{default:a(()=>[i($,{type:"primary",plain:"",round:"",loading:e.uploading},{default:a(()=>[i(d,{icon:"fa-solid fa-upload",class:"icon mr-1"}),m(" "+s(e.$t("fish.button.uploadAudio")),1)]),_:1},8,["loading"])]),_:1},8,["file-list","action","on-exceed","on-error","on-success","before-upload","headers"]),i($,{type:"primary",round:"",disabled:!e.supportsRecorder,onClick:e.onStartRecord},{default:a(()=>[i(d,{icon:"fa-solid fa-microphone",class:"icon mr-1"}),m(" "+s(e.$t("fish.button.recordAudio")),1)]),_:1},8,["disabled","onClick"])])):f("",!0),!e.supportsRecorder&&!e.form.voicesUrl&&!e.recording?(r(),l("p",Se,s(e.$t("fish.message.recorderUnsupported")),1)):f("",!0),e.recording?(r(),b(C,{key:2,class:"mt-2",onDone:e.onRecorded,onCancel:o[2]||(o[2]=u=>e.recording=!1),"onUpdate:script":e.onScriptChange},null,8,["onDone","onUpdate:script"])):f("",!0),e.form.voicesUrl&&!e.recording?(r(),l("div",Ve,[t("audio",{src:e.form.voicesUrl,controls:"",preload:"metadata",class:"w-full"},null,8,Ee),t("div",Ie,[i($,{link:"",size:"small",onClick:e.clearAudio},{default:a(()=>[i(d,{icon:"fa-solid fa-rotate-left",class:"mr-1"}),m(" "+s(e.$t("fish.button.replaceAudio")),1)]),_:1},8,["onClick"])])])):f("",!0)]),t("div",Me,[t("h2",Te,s(e.$t("fish.name.audioTexts")),1),t("p",Ae,s(e.$t("fish.description.audioTexts")),1),i(c,{modelValue:e.form.texts,"onUpdate:modelValue":o[3]||(o[3]=u=>e.form.texts=u),type:"textarea",rows:2,placeholder:e.$t("fish.placeholder.audioTexts"),maxlength:"500",onInput:e.onTextsInput},null,8,["modelValue","placeholder","onInput"])]),t("div",Be,[t("h2",Le,s(e.$t("fish.name.voiceDescription")),1),i(c,{modelValue:e.form.description,"onUpdate:modelValue":o[4]||(o[4]=u=>e.form.description=u),type:"textarea",rows:2,placeholder:e.$t("fish.placeholder.voiceDescription"),maxlength:"500"},null,8,["modelValue","placeholder"])]),t("div",De,[t("h2",ze,s(e.$t("fish.name.visibility")),1),i(V,{modelValue:e.form.visibility,"onUpdate:modelValue":o[5]||(o[5]=u=>e.form.visibility=u),size:"small"},{default:a(()=>[i(w,{label:"private",value:"private"},{default:a(()=>[m(s(e.$t("fish.value.private")),1)]),_:1}),i(w,{label:"unlist",value:"unlist"},{default:a(()=>[m(s(e.$t("fish.value.unlist")),1)]),_:1}),i(w,{label:"public",value:"public"},{default:a(()=>[m(s(e.$t("fish.value.public")),1)]),_:1})]),_:1},8,["modelValue"])]),t("div",Fe,[t("h2",Oe,s(e.$t("fish.name.trainMode")),1),i(V,{modelValue:e.form.trainMode,"onUpdate:modelValue":o[6]||(o[6]=u=>e.form.trainMode=u),size:"small"},{default:a(()=>[i(w,{label:"fast",value:"fast"},{default:a(()=>[m(s(e.$t("fish.value.trainModeFast")),1)]),_:1}),i(w,{label:"precise",value:"precise"},{default:a(()=>[m(s(e.$t("fish.value.trainModePrecise")),1)]),_:1})]),_:1},8,["modelValue"])]),t("div",Ne,[t("div",Pe,[t("h2",je,s(e.$t("fish.name.enhanceAudio")),1),i(E,{modelValue:e.form.enhanceAudio,"onUpdate:modelValue":o[7]||(o[7]=u=>e.form.enhanceAudio=u)},null,8,["modelValue"])]),t("p",qe,s(e.$t("fish.description.enhanceAudio")),1)]),t("div",Ge,[t("div",He,[t("h2",Xe,s(e.$t("fish.name.generateSample")),1),i(E,{modelValue:e.form.generateSample,"onUpdate:modelValue":o[8]||(o[8]=u=>e.form.generateSample=u)},null,8,["modelValue"])]),t("p",Ye,s(e.$t("fish.description.generateSample")),1)])]),t("div",Je,[i($,{type:"primary",class:"btn w-full",round:"",disabled:!e.canCreate||e.creating,loading:e.creating,onClick:e.onCreate},{default:a(()=>[i(d,{icon:"fa-solid fa-magic",class:"mr-2"}),m(" "+s(e.$t("fish.button.createModel")),1)]),_:1},8,["disabled","loading","onClick"])])])}const Ze=k(ve,[["render",Ke],["__scopeId","data-v-d8fc0e55"]]),Qe=U({name:"FishVoiceCard",components:{ElAlert:K,ElButton:S,ElImage:J,CopyToClipboard:Y,FontAwesomeIcon:R},props:{modelValue:{type:Object,required:!0}},computed:{sampleAudioUrl(){const e=this.modelValue?.samples;if(e?.length)return e[0]?.audio},voiceId(){const e=this.modelValue;return(e?.id||e?._id||e?.reference_id||"").toString()},coverSrc(){const e=this.modelValue?.cover_image;return e&&typeof e=="string"?e:void 0},createdAtLabel(){const e=this.modelValue?.created_at;if(e==null||e==="")return null;const o=typeof e=="number"?e:parseFloat(String(e));return!Number.isFinite(o)||o<=0?null:this.$dayjs.format(""+new Date(o*1e3))}},methods:{onUseVoice(){const e=this.voiceId;e&&(this.$store.commit("fish/setConfig",{...this.$store.state.fish?.config,reference_id:e}),this.$router.push({name:B}))}}}),We={class:"card"},xe={class:"left"},eo={class:"main"},oo={class:"header"},to={class:"title"},so={key:0,class:"datetime"},io={key:0,class:"description"},ro={key:1,class:"sample mt-2"},ao=["src"],no={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},lo={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},co={class:"operations mt-2"};function mo(e,o,v,h,y,_){const c=n("el-image"),d=n("font-awesome-icon"),$=n("copy-to-clipboard"),g=n("el-alert"),C=n("el-button");return r(),l("div",We,[t("div",xe,[e.coverSrc?(r(),b(c,{key:0,src:e.coverSrc,class:"cover",fit:"cover"},{error:a(()=>[i(c,{src:"https://cdn.acedata.cloud/e40fccc727.png",class:"cover fallback",fit:"cover"})]),placeholder:a(()=>[...o[0]||(o[0]=[t("div",{class:"cover placeholder"},null,-1)])]),_:1},8,["src"])):(r(),b(c,{key:1,src:"https://cdn.acedata.cloud/e40fccc727.png",class:"cover fallback",fit:"cover"}))]),t("div",eo,[t("div",oo,[t("span",to,s(e.modelValue?.title||e.$t("fish.name.untitledVoice")),1),e.createdAtLabel?(r(),l("span",so,s(e.createdAtLabel),1)):f("",!0)]),e.modelValue?.description?(r(),l("p",io,s(e.modelValue?.description),1)):f("",!0),e.sampleAudioUrl?(r(),l("div",ro,[t("audio",{src:e.sampleAudioUrl,controls:"",preload:"metadata",class:"w-full"},null,8,ao)])):f("",!0),i(g,{closable:!1,class:"mt-2 success"},{default:a(()=>[e.voiceId?(r(),l("p",no,[i(d,{icon:"fa-solid fa-microphone",class:"mr-1"}),m(" "+s(e.$t("fish.name.referenceId"))+": "+s(e.voiceId)+" ",1),i($,{content:e.voiceId},null,8,["content"])])):f("",!0),e.modelValue?.visibility?(r(),l("p",lo,[i(d,{icon:"fa-solid fa-eye",class:"mr-1"}),m(" "+s(e.$t("fish.name.visibility"))+": "+s(e.modelValue?.visibility),1)])):f("",!0)]),_:1}),t("div",co,[i(C,{type:"primary",size:"small",plain:"",disabled:!e.voiceId,onClick:O(e.onUseVoice,["stop"])},{default:a(()=>[i(d,{icon:"fa-solid fa-volume-high",class:"mr-1"}),m(" "+s(e.$t("fish.button.useVoice")),1)]),_:1},8,["disabled","onClick"])])])])}const uo=k(Qe,[["render",mo],["__scopeId","data-v-629e2d04"]]),po=U({name:"FishModelListPanel",components:{VoiceCard:uo,BotPlaceholder:Z,FontAwesomeIcon:R},props:{loading:{type:Boolean,default:!1}},computed:{voices(){return this.$store.state.fish?.voices}}}),fo={class:"model-list-panel flex flex-col h-full"},ho={class:"header"},vo={class:"title"},$o={key:0,class:"count"},go={class:"body flex-1 min-h-0"},_o={key:0,class:"h-full"},bo={key:1,class:"w-full h-full flex flex-col items-center justify-center text-center px-6"},yo={class:"empty-title"},wo={class:"empty-hint"},ko={key:2,class:"w-full h-full overflow-y-auto pr-1"};function Uo(e,o,v,h,y,_){const c=n("bot-placeholder"),d=n("font-awesome-icon"),$=n("voice-card");return r(),l("div",fo,[t("header",ho,[t("h2",vo,s(e.$t("fish.title.myVoices")),1),e.voices?.length?(r(),l("span",$o,s(e.voices?.length),1)):f("",!0)]),t("div",go,[e.voices===void 0?(r(),l("div",_o,[i(c)])):e.voices.length===0?(r(),l("div",bo,[i(d,{icon:"fa-solid fa-microphone-lines",class:"empty-icon"}),t("p",yo,s(e.$t("fish.title.noVoicesYet")),1),t("p",wo,s(e.$t("fish.description.noVoicesYet")),1)])):(r(),l("div",ko,[(r(!0),l(N,null,P(e.voices,g=>(r(),b($,{key:g.id,"model-value":g},null,8,["model-value"]))),128))]))])])}const Ro=k(po,[["render",Uo],["__scopeId","data-v-4aab2294"]]),Co=U({name:"FishModelIndex",components:{ModelConfigPanel:Ze,Layout:A,ModelListPanel:Ro,TabSwitcher:Q},inject:["initialized"],data(){return{loading:!1}},computed:{credential(){return this.$store.state.fish?.credential}},watch:{initialized:{async handler(e){e&&await this.onGetVoices()},immediate:!0}},async mounted(){await this.onGetService()},methods:{async onGetService(){await this.$store.dispatch("fish/getService")},async onGetVoices(){await this.$store.dispatch("fish/getVoices")},async onCreate(e){const o=this.credential?.token;if(!o){console.error("no token specified");return}this.loading=!0,p.info(this.$t("fish.message.creatingModel"));try{await L.createModel(e,{token:o}),p.success(this.$t("fish.message.createModelSuccess")),await this.onGetVoices()}catch(v){const h=v?.response?.data;h?.error?.code===W?p.error(this.$t("fish.message.usedUp")):p.error(h?.error?.message||this.$t("fish.message.createModelFailed"))}finally{this.loading=!1}}}}),So={class:"flex flex-col h-full"},Vo={class:"flex-1 min-h-0"};function Eo(e,o,v,h,y,_){const c=n("tab-switcher"),d=n("model-config-panel"),$=n("model-list-panel"),g=n("layout");return r(),b(g,null,{config:a(()=>[t("div",So,[i(c),t("div",Vo,[i(d,{onCreate:e.onCreate},null,8,["onCreate"])])])]),result:a(()=>[i($,{loading:e.loading},null,8,["loading"])]),_:1})}const ht=k(Co,[["render",Eo]]);export{ht as default};
1
+ import{L as A}from"./Hailuo-BQXRaWty.js";import{F as R}from"./index.es-DMDeBnDi.js";import{br as T,J as k,az as B,b8 as L}from"./index-DbTnCj6Y.js";import{u as D}from"./uploadTrackerMixin--N-yU8Tl.js";import{a as z}from"./vendor-axios-B8_nURbH.js";import{E as S}from"./index-BxvVaie9.js";import{E as p}from"./index-CrQhQx4A.js";import{d as U,C as l,D as t,E as i,H as s,y as a,N as m,I as f,x as b,P as F,J as n,q as r,K as O,M as N,L as P}from"./vendor-vue-BWIxYyW8.js";import{E as j}from"./index-CGLvj5qX.js";import{E as q}from"./index-Bhzy7uLO.js";import{E as G,a as H}from"./index-BByw0G_E.js";import{E as X}from"./index-Dwi7KeFX.js";import{C as Y}from"./CopyToClipboard-DtIK0kcZ.js";import{E as J}from"./index-B66z64hx.js";import{E as K}from"./index-Ds8WPxf_.js";import{B as Z}from"./BotPlaceholder-Cn18WSZp.js";import{T as Q}from"./TabSwitcher-C5DhRvoy.js";import{b as W}from"./errorCode-Cqj9Td_Z.js";import"./index-CuUKnN6i.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-CCWK5dA3.js";import"./use-form-item-B1LdPsOA.js";import"./index-BuyEbX8F.js";import"./typescript-CY0oKMIT.js";import"./index-CM2xkTYW.js";import"./_baseClone-CbUe37lr.js";import"./_Uint8Array-CXUVTNFA.js";import"./index-Do6ztq8u.js";import"./_initCloneObject-B8-TXaLO.js";import"./isEqual-ARjTA69Y.js";import"./validator-DXKD343S.js";import"./index-BQHgP10P.js";import"./index-BLjywj98.js";import"./index-DuvI3onY.js";import"./debounce-B-vwp3ga.js";import"./index-DqtdF-UV.js";import"./index-7kI4dOK6.js";import"./strings-CoSJ5yUQ.js";import"./isPlainObject-B5tfD1Mc.js";const I=4,x=90,ee=U({name:"FishRecorder",components:{ElButton:S,FontAwesomeIcon:R},emits:["done","cancel","update:script"],data(){return{state:"idle",scriptIndex:0,seconds:0,timerId:0,maxTimerId:0,mediaRecorder:null,stream:null,chunks:[],recordedBlob:null,recordedUrl:"",uploading:!1}},computed:{formattedTime(){const e=Math.floor(this.seconds/60),o=this.seconds%60;return`${e.toString().padStart(2,"0")}:${o.toString().padStart(2,"0")}`},currentScript(){const e=`fish.script.passage${this.scriptIndex%I+1}`;return this.$t(e)}},beforeUnmount(){this.cleanup()},mounted(){this.$emit("update:script",this.currentScript)},methods:{nextScript(){this.scriptIndex=(this.scriptIndex+1)%I,this.$emit("update:script",this.currentScript)},async startRecord(){if(!navigator.mediaDevices?.getUserMedia||typeof MediaRecorder>"u"){p.error(this.$t("fish.message.recorderUnsupported"));return}try{this.stream=await navigator.mediaDevices.getUserMedia({audio:!0})}catch(o){const v=o?.name==="NotAllowedError"||o?.name==="PermissionDeniedError";p.error(this.$t(v?"fish.message.micDenied":"fish.message.micError"));return}this.chunks=[];const e=this.pickMimeType();try{this.mediaRecorder=e?new MediaRecorder(this.stream,{mimeType:e}):new MediaRecorder(this.stream)}catch{this.mediaRecorder=new MediaRecorder(this.stream)}this.mediaRecorder.ondataavailable=o=>{o.data&&o.data.size>0&&this.chunks.push(o.data)},this.mediaRecorder.onstop=()=>{const o=new Blob(this.chunks,{type:this.mediaRecorder?.mimeType||"audio/webm"});this.recordedBlob=o,this.recordedUrl=URL.createObjectURL(o),this.state="recorded",this.releaseStream()},this.mediaRecorder.start(),this.state="recording",this.seconds=0,this.timerId=window.setInterval(()=>{this.seconds++},1e3),this.maxTimerId=window.setTimeout(()=>{this.state==="recording"&&this.stopRecord()},x*1e3)},stopRecord(){this.mediaRecorder&&this.mediaRecorder.state!=="inactive"&&this.mediaRecorder.stop(),window.clearInterval(this.timerId),window.clearTimeout(this.maxTimerId)},reset(){this.recordedUrl&&URL.revokeObjectURL(this.recordedUrl),this.recordedUrl="",this.recordedBlob=null,this.state="idle",this.seconds=0},onCancel(){this.cleanup(),this.$emit("cancel")},cleanup(){this.stopRecord(),this.releaseStream(),this.recordedUrl&&URL.revokeObjectURL(this.recordedUrl)},releaseStream(){this.stream?.getTracks().forEach(e=>e.stop()),this.stream=null},pickMimeType(){const e=["audio/webm;codecs=opus","audio/webm","audio/mp4","audio/ogg"];for(const o of e)if(typeof MediaRecorder<"u"&&MediaRecorder.isTypeSupported?.(o))return o},extensionForMime(e){return e.includes("webm")?"webm":e.includes("mp4")?"m4a":e.includes("ogg")?"ogg":e.includes("wav")?"wav":"mp3"},async useRecording(){if(this.recordedBlob){if(this.seconds<3){p.warning(this.$t("fish.message.recordingTooShort"));return}this.uploading=!0;try{const e=this.$store.state.token?.access,o=this.extensionForMime(this.recordedBlob.type||""),v=new File([this.recordedBlob],`recording-${Date.now()}.${o}`,{type:this.recordedBlob.type||"audio/webm"}),h=new FormData;h.append("file",v);const{data:y}=await z.post(`${T()}/api/v1/files/`,h,{headers:{Authorization:`Bearer ${e}`}}),_=y?.file_url;if(!_){p.error(this.$t("fish.message.uploadError"));return}this.$emit("done",{url:_,text:this.currentScript})}catch(e){p.error(this.$t("fish.message.uploadError")),console.error("recorder upload failed",e)}finally{this.uploading=!1}}}}}),oe={class:"recorder"},te={key:0,class:"script"},se={class:"script-header"},ie={class:"label"},re={class:"script-text"},ae={class:"controls"},ne={class:"status"},le={class:"hint"},de={key:1,class:"preview"},ce=["src"],me={class:"preview-actions"},ue={class:"footer"};function pe(e,o,v,h,y,_){const c=n("font-awesome-icon"),d=n("el-button");return r(),l("div",oe,[e.state!=="recorded"?(r(),l("div",te,[t("div",se,[i(c,{icon:"fa-solid fa-book-open",class:"icon mr-1"}),t("span",ie,s(e.$t("fish.description.readScript")),1),i(d,{link:"",size:"small",class:"ml-auto",disabled:e.state==="recording",onClick:e.nextScript},{default:a(()=>[i(c,{icon:"fa-solid fa-shuffle",class:"mr-1"}),m(" "+s(e.$t("fish.button.nextScript")),1)]),_:1},8,["disabled","onClick"])]),t("p",re,s(e.currentScript),1)])):f("",!0),t("div",ae,[e.state==="idle"?(r(),b(d,{key:0,type:"danger",circle:"",size:"large",title:e.$t("fish.button.startRecord"),onClick:e.startRecord},{default:a(()=>[i(c,{icon:"fa-solid fa-microphone"})]),_:1},8,["title","onClick"])):e.state==="recording"?(r(),b(d,{key:1,type:"warning",circle:"",size:"large",title:e.$t("fish.button.stopRecord"),onClick:e.stopRecord},{default:a(()=>[i(c,{icon:"fa-solid fa-stop"})]),_:1},8,["title","onClick"])):f("",!0),t("div",ne,[t("span",{class:F(["timer",e.state==="recording"?"live":""])},s(e.formattedTime),3),t("span",le,s(e.state==="idle"?e.$t("fish.description.recorderIdle"):e.state==="recording"?e.$t("fish.description.recorderRecording"):e.$t("fish.description.recorderRecorded")),1)])]),e.state==="recorded"&&e.recordedUrl?(r(),l("div",de,[t("audio",{src:e.recordedUrl,controls:"",preload:"metadata",class:"w-full"},null,8,ce),t("div",me,[i(d,{size:"small",disabled:e.uploading,onClick:e.reset},{default:a(()=>[i(c,{icon:"fa-solid fa-rotate-left",class:"mr-1"}),m(" "+s(e.$t("fish.button.reRecord")),1)]),_:1},8,["disabled","onClick"]),i(d,{size:"small",type:"primary",loading:e.uploading,onClick:e.useRecording},{default:a(()=>[i(c,{icon:"fa-solid fa-check",class:"mr-1"}),m(" "+s(e.$t("fish.button.useRecording")),1)]),_:1},8,["loading","onClick"])])])):f("",!0),t("div",ue,[i(d,{link:"",size:"small",disabled:e.uploading||e.state==="recording",onClick:e.onCancel},{default:a(()=>[m(s(e.$t("fish.button.cancel")),1)]),_:1},8,["disabled","onClick"])])])}const fe=k(ee,[["render",pe],["__scopeId","data-v-1958e4a1"]]),he=50*1024*1024,M=()=>({title:"",description:"",texts:"",voicesUrl:"",visibility:"unlist",trainMode:"fast",enhanceAudio:!0,generateSample:!1}),ve=U({name:"FishModelConfigPanel",components:{ElButton:S,ElInput:X,ElRadioButton:H,ElRadioGroup:G,ElSwitch:q,ElUpload:j,FontAwesomeIcon:R,Recorder:fe},mixins:[D],emits:["create"],data(){return{form:M(),fileList:[],uploading:!1,creating:!1,recording:!1,textsAuto:!0}},computed:{uploadUrl(){return T()+"/api/v1/files/"},uploadHeaders(){return{Authorization:`Bearer ${this.$store.state.token?.access}`}},canCreate(){return!!this.form.title.trim()&&!!this.form.voicesUrl&&!this.uploading&&!this.creating},supportsRecorder(){return!!(typeof navigator<"u"?navigator.mediaDevices:void 0)?.getUserMedia&&typeof MediaRecorder<"u"}},methods:{onBeforeUpload(e){return e.size>he?(p.warning(this.$t("fish.message.audioSizeExceed")),!1):(this.uploading=!0,!0)},onExceed(){p.warning(this.$t("fish.message.audioOnlyOne"))},onUploadError(){this.uploading=!1,p.error(this.$t("fish.message.uploadError"))},onUploadSuccess(e,o,v){this.uploading=!1;const h=e?.file_url;if(!h){p.error(this.$t("fish.message.uploadError")),this.fileList=[];return}this.form.voicesUrl=h,this.fileList=v},onRecorded(e){this.form.voicesUrl=e.url,this.recording=!1,e.text&&this.textsAuto&&(this.form.texts=e.text)},onStartRecord(){this.recording=!0,this.textsAuto=!this.form.texts.trim()},onScriptChange(e){this.textsAuto&&this.recording&&(this.form.texts=e)},onTextsInput(){this.textsAuto=!1},clearAudio(){this.form.voicesUrl="",this.fileList=[]},onCreate(){const e=this.form.title.trim();if(!e){p.warning(this.$t("fish.message.titleRequired"));return}if(!this.form.voicesUrl){p.warning(this.$t("fish.message.audioRequired"));return}const o={title:e,voices:this.form.voicesUrl,visibility:this.form.visibility,train_mode:this.form.trainMode,enhance_audio_quality:this.form.enhanceAudio,generate_sample:this.form.generateSample};this.form.description.trim()&&(o.description=this.form.description.trim()),this.form.texts.trim()&&(o.texts=[this.form.texts.trim()]),this.creating=!0,this.$emit("create",o),setTimeout(()=>{this.creating=!1,this.form=M(),this.fileList=[]},600)}}}),$e={class:"flex flex-col h-full"},ge={class:"flex-1 overflow-y-auto p-5"},_e={class:"field-block mb-4"},be={class:"title font-bold"},ye={class:"field-block mb-4"},we={class:"flex items-baseline justify-between mb-1"},ke={class:"title font-bold"},Ue={key:0,class:"muted"},Re={class:"hint"},Ce={key:0,class:"audio-actions"},Se={key:1,class:"hint warn"},Ve={key:3,class:"mt-2"},Ee=["src"],Ie={class:"ready-actions"},Me={class:"field-block mb-4"},Te={class:"title font-bold"},Ae={class:"hint"},Be={class:"field-block mb-4"},Le={class:"title font-bold"},De={class:"field-block mb-4"},ze={class:"title font-bold"},Fe={class:"field-block mb-4"},Oe={class:"title font-bold"},Ne={class:"field-block mb-3"},Pe={class:"field-row"},je={class:"title font-bold"},qe={class:"hint mt-0 mb-0"},Ge={class:"field-block mb-2"},He={class:"field-row"},Xe={class:"title font-bold"},Ye={class:"hint mt-0 mb-0"},Je={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ke(e,o,v,h,y,_){const c=n("el-input"),d=n("font-awesome-icon"),$=n("el-button"),g=n("el-upload"),C=n("recorder"),w=n("el-radio-button"),V=n("el-radio-group"),E=n("el-switch");return r(),l("div",$e,[t("div",ge,[t("div",_e,[t("h2",be,[m(s(e.$t("fish.name.voiceTitle"))+" ",1),o[9]||(o[9]=t("span",{class:"required"},"*",-1))]),i(c,{modelValue:e.form.title,"onUpdate:modelValue":o[0]||(o[0]=u=>e.form.title=u),placeholder:e.$t("fish.placeholder.voiceTitle"),maxlength:"60"},null,8,["modelValue","placeholder"])]),t("div",ye,[t("div",we,[t("h2",ke,[m(s(e.$t("fish.name.referenceAudio"))+" ",1),o[10]||(o[10]=t("span",{class:"required"},"*",-1))]),!e.form.voicesUrl&&!e.recording?(r(),l("span",Ue,s(e.$t("fish.description.audioRequired")),1)):f("",!0)]),t("p",Re,s(e.$t("fish.description.uploadAudio")),1),!e.form.voicesUrl&&!e.recording?(r(),l("div",Ce,[i(g,{"file-list":e.fileList,"onUpdate:fileList":o[1]||(o[1]=u=>e.fileList=u),name:"file",limit:1,class:"upload-wrapper",action:e.uploadUrl,accept:".mp3,.wav,.m4a,.ogg,.webm,audio/*","show-file-list":!1,"on-exceed":e.onExceed,"on-error":e.onUploadError,"on-success":e.onUploadSuccess,"before-upload":e.onBeforeUpload,headers:e.uploadHeaders},{default:a(()=>[i($,{type:"primary",plain:"",round:"",loading:e.uploading},{default:a(()=>[i(d,{icon:"fa-solid fa-upload",class:"icon mr-1"}),m(" "+s(e.$t("fish.button.uploadAudio")),1)]),_:1},8,["loading"])]),_:1},8,["file-list","action","on-exceed","on-error","on-success","before-upload","headers"]),i($,{type:"primary",round:"",disabled:!e.supportsRecorder,onClick:e.onStartRecord},{default:a(()=>[i(d,{icon:"fa-solid fa-microphone",class:"icon mr-1"}),m(" "+s(e.$t("fish.button.recordAudio")),1)]),_:1},8,["disabled","onClick"])])):f("",!0),!e.supportsRecorder&&!e.form.voicesUrl&&!e.recording?(r(),l("p",Se,s(e.$t("fish.message.recorderUnsupported")),1)):f("",!0),e.recording?(r(),b(C,{key:2,class:"mt-2",onDone:e.onRecorded,onCancel:o[2]||(o[2]=u=>e.recording=!1),"onUpdate:script":e.onScriptChange},null,8,["onDone","onUpdate:script"])):f("",!0),e.form.voicesUrl&&!e.recording?(r(),l("div",Ve,[t("audio",{src:e.form.voicesUrl,controls:"",preload:"metadata",class:"w-full"},null,8,Ee),t("div",Ie,[i($,{link:"",size:"small",onClick:e.clearAudio},{default:a(()=>[i(d,{icon:"fa-solid fa-rotate-left",class:"mr-1"}),m(" "+s(e.$t("fish.button.replaceAudio")),1)]),_:1},8,["onClick"])])])):f("",!0)]),t("div",Me,[t("h2",Te,s(e.$t("fish.name.audioTexts")),1),t("p",Ae,s(e.$t("fish.description.audioTexts")),1),i(c,{modelValue:e.form.texts,"onUpdate:modelValue":o[3]||(o[3]=u=>e.form.texts=u),type:"textarea",rows:2,placeholder:e.$t("fish.placeholder.audioTexts"),maxlength:"500",onInput:e.onTextsInput},null,8,["modelValue","placeholder","onInput"])]),t("div",Be,[t("h2",Le,s(e.$t("fish.name.voiceDescription")),1),i(c,{modelValue:e.form.description,"onUpdate:modelValue":o[4]||(o[4]=u=>e.form.description=u),type:"textarea",rows:2,placeholder:e.$t("fish.placeholder.voiceDescription"),maxlength:"500"},null,8,["modelValue","placeholder"])]),t("div",De,[t("h2",ze,s(e.$t("fish.name.visibility")),1),i(V,{modelValue:e.form.visibility,"onUpdate:modelValue":o[5]||(o[5]=u=>e.form.visibility=u),size:"small"},{default:a(()=>[i(w,{label:"private",value:"private"},{default:a(()=>[m(s(e.$t("fish.value.private")),1)]),_:1}),i(w,{label:"unlist",value:"unlist"},{default:a(()=>[m(s(e.$t("fish.value.unlist")),1)]),_:1}),i(w,{label:"public",value:"public"},{default:a(()=>[m(s(e.$t("fish.value.public")),1)]),_:1})]),_:1},8,["modelValue"])]),t("div",Fe,[t("h2",Oe,s(e.$t("fish.name.trainMode")),1),i(V,{modelValue:e.form.trainMode,"onUpdate:modelValue":o[6]||(o[6]=u=>e.form.trainMode=u),size:"small"},{default:a(()=>[i(w,{label:"fast",value:"fast"},{default:a(()=>[m(s(e.$t("fish.value.trainModeFast")),1)]),_:1}),i(w,{label:"precise",value:"precise"},{default:a(()=>[m(s(e.$t("fish.value.trainModePrecise")),1)]),_:1})]),_:1},8,["modelValue"])]),t("div",Ne,[t("div",Pe,[t("h2",je,s(e.$t("fish.name.enhanceAudio")),1),i(E,{modelValue:e.form.enhanceAudio,"onUpdate:modelValue":o[7]||(o[7]=u=>e.form.enhanceAudio=u)},null,8,["modelValue"])]),t("p",qe,s(e.$t("fish.description.enhanceAudio")),1)]),t("div",Ge,[t("div",He,[t("h2",Xe,s(e.$t("fish.name.generateSample")),1),i(E,{modelValue:e.form.generateSample,"onUpdate:modelValue":o[8]||(o[8]=u=>e.form.generateSample=u)},null,8,["modelValue"])]),t("p",Ye,s(e.$t("fish.description.generateSample")),1)])]),t("div",Je,[i($,{type:"primary",class:"btn w-full",round:"",disabled:!e.canCreate||e.creating,loading:e.creating,onClick:e.onCreate},{default:a(()=>[i(d,{icon:"fa-solid fa-magic",class:"mr-2"}),m(" "+s(e.$t("fish.button.createModel")),1)]),_:1},8,["disabled","loading","onClick"])])])}const Ze=k(ve,[["render",Ke],["__scopeId","data-v-d8fc0e55"]]),Qe=U({name:"FishVoiceCard",components:{ElAlert:K,ElButton:S,ElImage:J,CopyToClipboard:Y,FontAwesomeIcon:R},props:{modelValue:{type:Object,required:!0}},computed:{sampleAudioUrl(){const e=this.modelValue?.samples;if(e?.length)return e[0]?.audio},voiceId(){const e=this.modelValue;return(e?.id||e?._id||e?.reference_id||"").toString()},coverSrc(){const e=this.modelValue?.cover_image;return e&&typeof e=="string"?e:void 0},createdAtLabel(){const e=this.modelValue?.created_at;if(e==null||e==="")return null;const o=typeof e=="number"?e:parseFloat(String(e));return!Number.isFinite(o)||o<=0?null:this.$dayjs.format(""+new Date(o*1e3))}},methods:{onUseVoice(){const e=this.voiceId;e&&(this.$store.commit("fish/setConfig",{...this.$store.state.fish?.config,reference_id:e}),this.$router.push({name:B}))}}}),We={class:"card"},xe={class:"left"},eo={class:"main"},oo={class:"header"},to={class:"title"},so={key:0,class:"datetime"},io={key:0,class:"description"},ro={key:1,class:"sample mt-2"},ao=["src"],no={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},lo={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},co={class:"operations mt-2"};function mo(e,o,v,h,y,_){const c=n("el-image"),d=n("font-awesome-icon"),$=n("copy-to-clipboard"),g=n("el-alert"),C=n("el-button");return r(),l("div",We,[t("div",xe,[e.coverSrc?(r(),b(c,{key:0,src:e.coverSrc,class:"cover",fit:"cover"},{error:a(()=>[i(c,{src:"https://cdn.acedata.cloud/e40fccc727.png",class:"cover fallback",fit:"cover"})]),placeholder:a(()=>[...o[0]||(o[0]=[t("div",{class:"cover placeholder"},null,-1)])]),_:1},8,["src"])):(r(),b(c,{key:1,src:"https://cdn.acedata.cloud/e40fccc727.png",class:"cover fallback",fit:"cover"}))]),t("div",eo,[t("div",oo,[t("span",to,s(e.modelValue?.title||e.$t("fish.name.untitledVoice")),1),e.createdAtLabel?(r(),l("span",so,s(e.createdAtLabel),1)):f("",!0)]),e.modelValue?.description?(r(),l("p",io,s(e.modelValue?.description),1)):f("",!0),e.sampleAudioUrl?(r(),l("div",ro,[t("audio",{src:e.sampleAudioUrl,controls:"",preload:"metadata",class:"w-full"},null,8,ao)])):f("",!0),i(g,{closable:!1,class:"mt-2 success"},{default:a(()=>[e.voiceId?(r(),l("p",no,[i(d,{icon:"fa-solid fa-microphone",class:"mr-1"}),m(" "+s(e.$t("fish.name.referenceId"))+": "+s(e.voiceId)+" ",1),i($,{content:e.voiceId},null,8,["content"])])):f("",!0),e.modelValue?.visibility?(r(),l("p",lo,[i(d,{icon:"fa-solid fa-eye",class:"mr-1"}),m(" "+s(e.$t("fish.name.visibility"))+": "+s(e.modelValue?.visibility),1)])):f("",!0)]),_:1}),t("div",co,[i(C,{type:"primary",size:"small",plain:"",disabled:!e.voiceId,onClick:O(e.onUseVoice,["stop"])},{default:a(()=>[i(d,{icon:"fa-solid fa-volume-high",class:"mr-1"}),m(" "+s(e.$t("fish.button.useVoice")),1)]),_:1},8,["disabled","onClick"])])])])}const uo=k(Qe,[["render",mo],["__scopeId","data-v-629e2d04"]]),po=U({name:"FishModelListPanel",components:{VoiceCard:uo,BotPlaceholder:Z,FontAwesomeIcon:R},props:{loading:{type:Boolean,default:!1}},computed:{voices(){return this.$store.state.fish?.voices}}}),fo={class:"model-list-panel flex flex-col h-full"},ho={class:"header"},vo={class:"title"},$o={key:0,class:"count"},go={class:"body flex-1 min-h-0"},_o={key:0,class:"h-full"},bo={key:1,class:"w-full h-full flex flex-col items-center justify-center text-center px-6"},yo={class:"empty-title"},wo={class:"empty-hint"},ko={key:2,class:"w-full h-full overflow-y-auto pr-1"};function Uo(e,o,v,h,y,_){const c=n("bot-placeholder"),d=n("font-awesome-icon"),$=n("voice-card");return r(),l("div",fo,[t("header",ho,[t("h2",vo,s(e.$t("fish.title.myVoices")),1),e.voices?.length?(r(),l("span",$o,s(e.voices?.length),1)):f("",!0)]),t("div",go,[e.voices===void 0?(r(),l("div",_o,[i(c)])):e.voices.length===0?(r(),l("div",bo,[i(d,{icon:"fa-solid fa-microphone-lines",class:"empty-icon"}),t("p",yo,s(e.$t("fish.title.noVoicesYet")),1),t("p",wo,s(e.$t("fish.description.noVoicesYet")),1)])):(r(),l("div",ko,[(r(!0),l(N,null,P(e.voices,g=>(r(),b($,{key:g.id,"model-value":g},null,8,["model-value"]))),128))]))])])}const Ro=k(po,[["render",Uo],["__scopeId","data-v-4aab2294"]]),Co=U({name:"FishModelIndex",components:{ModelConfigPanel:Ze,Layout:A,ModelListPanel:Ro,TabSwitcher:Q},inject:["initialized"],data(){return{loading:!1}},computed:{credential(){return this.$store.state.fish?.credential}},watch:{initialized:{async handler(e){e&&await this.onGetVoices()},immediate:!0}},async mounted(){await this.onGetService()},methods:{async onGetService(){await this.$store.dispatch("fish/getService")},async onGetVoices(){await this.$store.dispatch("fish/getVoices")},async onCreate(e){const o=this.credential?.token;if(!o){console.error("no token specified");return}this.loading=!0,p.info(this.$t("fish.message.creatingModel"));try{await L.createModel(e,{token:o}),p.success(this.$t("fish.message.createModelSuccess")),await this.onGetVoices()}catch(v){const h=v?.response?.data;h?.error?.code===W?p.error(this.$t("fish.message.usedUp")):p.error(h?.error?.message||this.$t("fish.message.createModelFailed"))}finally{this.loading=!1}}}}),So={class:"flex flex-col h-full"},Vo={class:"flex-1 min-h-0"};function Eo(e,o,v,h,y,_){const c=n("tab-switcher"),d=n("model-config-panel"),$=n("model-list-panel"),g=n("layout");return r(),b(g,null,{config:a(()=>[t("div",So,[i(c),t("div",Vo,[i(d,{onCreate:e.onCreate},null,8,["onCreate"])])])]),result:a(()=>[i($,{loading:e.loading},null,8,["loading"])]),_:1})}const ht=k(Co,[["render",Eo]]);export{ht as default};