@acedatacloud/nexior 3.90.0 → 3.92.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (245) hide show
  1. package/dist/assets/{Auth-DZJBJnih.js → Auth-Ca1zlpxV.js} +1 -1
  2. package/dist/assets/{BotPlaceholder-C31K8To0.js → BotPlaceholder-CnYzSwa6.js} +1 -1
  3. package/dist/assets/{Callback-B3VnQiN9.js → Callback-DAzsXClB.js} +1 -1
  4. package/dist/assets/{Console-C5ZNDDno.js → Console-BGwSeITk.js} +1 -1
  5. package/dist/assets/{Consumption-BZkNM6Iy.js → Consumption-C-RXHwF8.js} +1 -1
  6. package/dist/assets/{Conversation-ypVgyT9Z.js → Conversation-BvkyoHjc.js} +1 -1
  7. package/dist/assets/{CopyToClipboard-Bm9B1JG9.js → CopyToClipboard-j5Q2Kc6N.js} +1 -1
  8. package/dist/assets/{Detail-BJNsa81A.js → Detail-Xqtlygg1.js} +2 -2
  9. package/dist/assets/{EditArray-CX6FHuvB.js → EditArray-DGyTLWw6.js} +1 -1
  10. package/dist/assets/{Extra-Cs4E2QBd.js → Extra-DLEvIL8x.js} +1 -1
  11. package/dist/assets/{FilePreview-DgK4fywf.js → FilePreview-CMiekYFn.js} +1 -1
  12. package/dist/assets/{History-BQPu5NJu.js → History-B7qmGxDF.js} +1 -1
  13. package/dist/assets/{IconPark.vue_vue_type_script_setup_true_lang-CZKUVUG6.js → IconPark.vue_vue_type_script_setup_true_lang-BcKtCnVg.js} +1 -1
  14. package/dist/assets/{ImagePreview-DKUQBUe6.js → ImagePreview-hUTkC0Ih.js} +1 -1
  15. package/dist/assets/{ImageWrapper-ClLlRyzU.js → ImageWrapper-nAPnMgFW.js} +1 -1
  16. package/dist/assets/{Index-Ca3nrhcK.js → Index-B0RDQ9kc.js} +1 -1
  17. package/dist/assets/{Index-C2iRYsqr.js → Index-BKenI2nT.js} +1 -1
  18. package/dist/assets/{Index-nbVOUxQF.js → Index-BMAnpnob.js} +1 -1
  19. package/dist/assets/{Index-DEjVC3QW.js → Index-BMqJMsLk.js} +1 -1
  20. package/dist/assets/{Index-D3jdcd4h.js → Index-BWoOKlKN.js} +1 -1
  21. package/dist/assets/{Index-rEnEC3I6.css → Index-Ba6UBNcH.css} +1 -1
  22. package/dist/assets/{Index-BhwBpPqq.js → Index-BdxUwUTL.js} +1 -1
  23. package/dist/assets/{Index-BNBKPnZS.js → Index-BjeaExfc.js} +1 -1
  24. package/dist/assets/{Index-BfecInRM.js → Index-BxdDYTsN.js} +1 -1
  25. package/dist/assets/{Index-CbkRPIHE.js → Index-CGUKr6rz.js} +1 -1
  26. package/dist/assets/{Index-YWf5oI2T.js → Index-CSU9bGI_.js} +1 -1
  27. package/dist/assets/{Index-BNJgzQAE.js → Index-Ce95Xhwd.js} +1 -1
  28. package/dist/assets/{Index-Dw2Yb9cO.js → Index-CkZ-GIeN.js} +1 -1
  29. package/dist/assets/Index-CqA84pm1.js +1 -0
  30. package/dist/assets/{Index-DFsOHWEV.js → Index-D8pk_n2z.js} +1 -1
  31. package/dist/assets/{Index-BkX0twGH.js → Index-DOSUI8yl.js} +1 -1
  32. package/dist/assets/{Index-D_yxHWyv.js → Index-DPtb1Dvv.js} +1 -1
  33. package/dist/assets/{Index-C2MxAQJZ.js → Index-DdOnDD2J.js} +1 -1
  34. package/dist/assets/{Index-C8WyyT_z.js → Index-DgVGVr0G.js} +1 -1
  35. package/dist/assets/{Index-T8xMQXSj.js → Index-DhaeVX3f.js} +1 -1
  36. package/dist/assets/{Index-DybB5Z8x.js → Index-DkjTtAdR.js} +1 -1
  37. package/dist/assets/{Index-fvJnqrU7.js → Index-Duq6pei3.js} +1 -1
  38. package/dist/assets/{Index-Btf1ONWX.js → Index-R6LvF-rK.js} +1 -1
  39. package/dist/assets/{Index-Q6TLdt-Z.js → Index-Uy6pks0w.js} +1 -1
  40. package/dist/assets/{Index-DT5RyZH9.js → Index-leXD0T4X.js} +1 -1
  41. package/dist/assets/{Index-Cy5r_FdF.js → Index-qS_7rc_F.js} +1 -1
  42. package/dist/assets/{Invitees-LwR1e4pd.js → Invitees-CPvt_Mr0.js} +1 -1
  43. package/dist/assets/{List-L9UL96dD.js → List-B4MnI4Ut.js} +1 -1
  44. package/dist/assets/{List-BLvCnbfN.js → List-Bc6eFHkF.js} +1 -1
  45. package/dist/assets/{List-CSe3cs9u.js → List-CSCdeqyT.js} +1 -1
  46. package/dist/assets/{List-CqapQYOX.js → List-CbiQGNQQ.js} +1 -1
  47. package/dist/assets/{Main-EENueayC.js → Main-C7gD7488.js} +1 -1
  48. package/dist/assets/{Navigator-7FOARZBL.js → Navigator-DuFYGvKr.js} +1 -1
  49. package/dist/assets/{NoTasks-INFj9zWz.js → NoTasks-DCFz_cPB.js} +1 -1
  50. package/dist/assets/{NotFound-auuN5HKq.js → NotFound-7_cX8wpK.js} +1 -1
  51. package/dist/assets/{OAuthCallback-nPWXmEw4.js → OAuthCallback-_xVLEqAx.js} +1 -1
  52. package/dist/assets/{Pagination-B-eaPMPQ.js → Pagination-qfdTQPrv.js} +1 -1
  53. package/dist/assets/{ScrollList-D2YriCs9.js → ScrollList-ppHF7k1A.js} +1 -1
  54. package/dist/assets/{Status-BF51ayN_.js → Status-BDDYaZ43.js} +1 -1
  55. package/dist/assets/{Subscribe-CQfmNjJc.js → Subscribe-Bd1QDvmP.js} +1 -1
  56. package/dist/assets/{TransportWebHID-CBJUPQMM.js → TransportWebHID-jk9Hc7Xp.js} +1 -1
  57. package/dist/assets/{VideoPlayer-DkTzHccF.js → VideoPlayer-BiZGhs1e.js} +1 -1
  58. package/dist/assets/{_Uint8Array-Cr1cjG4I.js → _Uint8Array-B9wo990u.js} +1 -1
  59. package/dist/assets/{_baseClone-CjTgJNX4.js → _baseClone-OaArZu3M.js} +1 -1
  60. package/dist/assets/{_baseIteratee-C2KvIaBQ.js → _baseIteratee-CAzVICbz.js} +1 -1
  61. package/dist/assets/{_initCloneObject-G_TFMsX_.js → _initCloneObject-CezWJWWn.js} +1 -1
  62. package/dist/assets/{add-ZfqV9KJU.js → add-DEMwPiju.js} +1 -1
  63. package/dist/assets/{all-wallets-D0TumgD2.js → all-wallets-hS5Bx0k7.js} +1 -1
  64. package/dist/assets/{app-store-1mg9ndzu.js → app-store-Dp5xS8YD.js} +1 -1
  65. package/dist/assets/{apple-xBYAOTW2.js → apple-DH-j8df2.js} +1 -1
  66. package/dist/assets/{arrow-bottom-DTX7m2yQ.js → arrow-bottom-BsP1IGir.js} +1 -1
  67. package/dist/assets/{arrow-bottom-circle-Bnrdh0M3.js → arrow-bottom-circle-C3e6Zp8c.js} +1 -1
  68. package/dist/assets/{arrow-left-CoPzNzms.js → arrow-left-Cgxg9Goo.js} +1 -1
  69. package/dist/assets/{arrow-right-OU4IoUCT.js → arrow-right-CQpuYp_y.js} +1 -1
  70. package/dist/assets/{arrow-top-CbmWKgiE.js → arrow-top-JQgX23y6.js} +1 -1
  71. package/dist/assets/{avatar-CreZXTP4.js → avatar-KEKoYOP6.js} +1 -1
  72. package/dist/assets/{bank-DPlJX83h.js → bank-I3Zvi_fF.js} +1 -1
  73. package/dist/assets/{basic-CiuX7IRi.js → basic-DvrGKvqa.js} +1 -1
  74. package/dist/assets/{browser-CliwPYH_.js → browser-DGYZYvuX.js} +1 -1
  75. package/dist/assets/{byokCredential-VPisqNad.js → byokCredential-5sSSQc66.js} +1 -1
  76. package/dist/assets/{card-C86zrJkV.js → card-DK1W3Qtw.js} +1 -1
  77. package/dist/assets/{castArray-CNpuHwov.js → castArray-CEgxRlUQ.js} +1 -1
  78. package/dist/assets/{chat-DobfKTYG.js → chat-BKbNZjqm.js} +1 -1
  79. package/dist/assets/{checkmark-CgS-dIyR.js → checkmark-DnugIskI.js} +1 -1
  80. package/dist/assets/{checkmark-bold-D5Ppoy1Z.js → checkmark-bold-BMOkUNdP.js} +1 -1
  81. package/dist/assets/{chevron-bottom-bC3kHkHL.js → chevron-bottom-C5gAkiCt.js} +1 -1
  82. package/dist/assets/{chevron-left-BegHVtJy.js → chevron-left-BjyBbgWT.js} +1 -1
  83. package/dist/assets/{chevron-right-CmnVETRn.js → chevron-right-DIIzRj0Q.js} +1 -1
  84. package/dist/assets/{chevron-top-CTYSG3Zu.js → chevron-top-PDFzmwA6.js} +1 -1
  85. package/dist/assets/{chrome-store-Nk-nK26B.js → chrome-store-Do1xQLwV.js} +1 -1
  86. package/dist/assets/{clock-UXyAXXiy.js → clock-CU-Y6bZa.js} +1 -1
  87. package/dist/assets/{close-CzDoe5Lf.js → close-_0kQCp84.js} +1 -1
  88. package/dist/assets/{coinPlaceholder-Dc7Y5y2v.js → coinPlaceholder-Bi6bmmn3.js} +1 -1
  89. package/dist/assets/{compass-BN7wyNn4.js → compass-BLwv3tbG.js} +1 -1
  90. package/dist/assets/{copy-CASmr1mP.js → copy-Bgx9soZe.js} +1 -1
  91. package/dist/assets/{cursor-CaM-4EM2.js → cursor-Cupf9JP6.js} +1 -1
  92. package/dist/assets/{cursor-transparent-BVVhevkc.js → cursor-transparent-3rfNV1z4.js} +1 -1
  93. package/dist/assets/{debounce-vY0mNUPJ.js → debounce-z3wHMjDj.js} +1 -1
  94. package/dist/assets/{desktop-Dwmk1jVS.js → desktop-DgGQ9yxs.js} +1 -1
  95. package/dist/assets/{disconnect-Ai_l8PmH.js → disconnect-4BrXCIam.js} +1 -1
  96. package/dist/assets/{discord-BtGmxJuP.js → discord-BvNN6ZEV.js} +1 -1
  97. package/dist/assets/{distribution-CGBORnfB.js → distribution-CyV-Hg8s.js} +1 -1
  98. package/dist/assets/{dropdown-oRp0MQI5.js → dropdown-DPQ051fG.js} +1 -1
  99. package/dist/assets/{etherscan-34x79Jb2.js → etherscan-Dl9-zgUj.js} +1 -1
  100. package/dist/assets/{exclamation-triangle-CuIKtox-.js → exclamation-triangle-BSvg3YYN.js} +1 -1
  101. package/dist/assets/{extension-DBsAa4cI.js → extension-DfH2rBT-.js} +1 -1
  102. package/dist/assets/{external-link-BHIjOz7M.js → external-link-Dme5cbGO.js} +1 -1
  103. package/dist/assets/{facebook-BQKAxlM_.js → facebook-qtFBWJ7u.js} +1 -1
  104. package/dist/assets/{farcaster-zfFu_vBu.js → farcaster-Bpz1mbg7.js} +1 -1
  105. package/dist/assets/{filters-1XesSljB.js → filters-Dewno6B6.js} +1 -1
  106. package/dist/assets/{flux-BkqX155p.js → flux-FC-ZXbLy.js} +1 -1
  107. package/dist/assets/{github-CpMTsMEo.js → github-WPcuqu7y.js} +1 -1
  108. package/dist/assets/{google-CIeQGKTu.js → google-CQIisxib.js} +1 -1
  109. package/dist/assets/{hailuo-CC-uStzb.js → hailuo-Bwx9zGTZ.js} +1 -1
  110. package/dist/assets/{headshots-CqML5RTY.js → headshots-DH_21x1m.js} +1 -1
  111. package/dist/assets/{help-circle-CRYWnFwT.js → help-circle-BYzCuumC.js} +1 -1
  112. package/dist/assets/{id-cSrFDjNE.js → id-DzulqMi0.js} +1 -1
  113. package/dist/assets/{image-jgfWW6Hq.js → image-C9vp7EJR.js} +1 -1
  114. package/dist/assets/{index-CiptZ5ok.js → index-3Jquc4Vy.js} +1 -1
  115. package/dist/assets/{index-C_7wmSl9.js → index-5durBcIc.js} +1 -1
  116. package/dist/assets/{index-CkoOQl9N.js → index-6Kj8H0UT.js} +1 -1
  117. package/dist/assets/{index-BTu5LJAi.js → index-9rUgJTM0.js} +1 -1
  118. package/dist/assets/{index-CvzrIomF.js → index-B--cBpnc.js} +1 -1
  119. package/dist/assets/{index-DpurH6sA.js → index-B0CgevO0.js} +1 -1
  120. package/dist/assets/{index-BLE_yb0h.js → index-B57xaC7s.js} +1 -1
  121. package/dist/assets/{index-D-c3cAFR.js → index-B5z3D9g7.js} +1 -1
  122. package/dist/assets/{index-CkSjvWS3.js → index-BCUP3Qpw.js} +1 -1
  123. package/dist/assets/{index-BfzxntyX.js → index-BEISdWxi.js} +1 -1
  124. package/dist/assets/{index-CgJJVGIc.js → index-BLrLR8tq.js} +1 -1
  125. package/dist/assets/{index-CGh2-Zso.js → index-BWUBjXz2.js} +1 -1
  126. package/dist/assets/{index-xRF2VnUn.js → index-BXzGGBJg.js} +1 -1
  127. package/dist/assets/{index-dUO4BtZV.js → index-B_a5jHgv.js} +1 -1
  128. package/dist/assets/{index-B2yh3MI5.js → index-BfOryRNq.js} +1 -1
  129. package/dist/assets/{index-WTcxGUyS.js → index-Bf_0a_2-.js} +1 -1
  130. package/dist/assets/{index-SF_3AsLj.js → index-Bfa0l5Mz.js} +1 -1
  131. package/dist/assets/{index-CPXtqSsE.js → index-BgVy5KIm.js} +1 -1
  132. package/dist/assets/{index-DJl11D_I.js → index-BoMrEY9d.js} +1 -1
  133. package/dist/assets/{index-8zQM9luF.js → index-BoNQ2bwh.js} +1 -1
  134. package/dist/assets/{index-BxmcD7ly.js → index-Brb5A4NQ.js} +1 -1
  135. package/dist/assets/{index-QvSk2owZ.js → index-BtKP25bm.js} +1 -1
  136. package/dist/assets/{index-DA_FluBX.js → index-C2C5Wr_B.js} +1 -1
  137. package/dist/assets/{index-BEuBorcN.js → index-C3qdTgIX.js} +1 -1
  138. package/dist/assets/{index-BR6Om9Zo.js → index-CIgoWPQC.js} +1 -1
  139. package/dist/assets/{index-zUitDARp.js → index-CMy7JKPa.js} +1 -1
  140. package/dist/assets/{index-4N13hL2a.js → index-COZ2Qhqe.js} +1 -1
  141. package/dist/assets/{index-Ctk94Ps3.js → index-CVHZPJ6x.js} +1 -1
  142. package/dist/assets/{index-C-9b9MKh.js → index-CVh8Wj89.js} +1 -1
  143. package/dist/assets/{index-DFNAFF2z.js → index-CZSdwn7u.js} +1 -1
  144. package/dist/assets/{index-0h9O1Jsg.js → index-Ca4hYOWF.js} +1 -1
  145. package/dist/assets/{index-DLFK_N5e.js → index-Cc0CymYy.js} +1 -1
  146. package/dist/assets/{index-CGD4boz_.js → index-CdgG2-bY.js} +1 -1
  147. package/dist/assets/{index-CWWzprLz.js → index-CerYJYug.js} +3 -3
  148. package/dist/assets/{index-Bsidby00.js → index-CkFTRS4T.js} +1 -1
  149. package/dist/assets/{index-CdMoNAeG.js → index-CnQGsAad.js} +1 -1
  150. package/dist/assets/{index-BPc_hLP6.js → index-CrLjycjS.js} +1 -1
  151. package/dist/assets/{index-Csfajqwi.js → index-Cyblde_V.js} +1 -1
  152. package/dist/assets/{index-D0IqUyZl.js → index-D2HSg-zC.js} +1 -1
  153. package/dist/assets/{index-DSGdn0Vx.js → index-D5nhIR6Q.js} +1 -1
  154. package/dist/assets/{index-Bz5ZJB6T.js → index-D6IXtSdh.js} +1 -1
  155. package/dist/assets/{index-CTYdfNsL.js → index-D_lHh-es.js} +1 -1
  156. package/dist/assets/{index-DYbIRvGT.js → index-De6GneQ8.js} +1 -1
  157. package/dist/assets/{index-DV9G969S.js → index-Di4WB8s_.js} +1 -1
  158. package/dist/assets/{index-CL1prdmz.js → index-DiqBmBf1.js} +1 -1
  159. package/dist/assets/{index-T0lAANit.js → index-DpUlq2LB.js} +1 -1
  160. package/dist/assets/{index-M2b128ZH.js → index-DxnrvYVH.js} +4 -4
  161. package/dist/assets/{index-CZat78oA.js → index-Dz8ZozJg.js} +1 -1
  162. package/dist/assets/{index-2OHKNhci.js → index-Ht8ZOU1H.js} +1 -1
  163. package/dist/assets/{index-CxUhtb3l.js → index-LGUNEkGJ.js} +1 -1
  164. package/dist/assets/{index-Jzqg1HiG.js → index-ODKX1GcE.js} +1 -1
  165. package/dist/assets/{index-CJ2GaDXw.js → index-Qx6yMP72.js} +1 -1
  166. package/dist/assets/{index-WMYq6_VE.js → index-SPbBnreU.js} +1 -1
  167. package/dist/assets/{index-myZ2lGrx.js → index-UjZdwrmf.js} +1 -1
  168. package/dist/assets/{index-Crwb1ixw.js → index-Uo0Z1peq.js} +1 -1
  169. package/dist/assets/{index-Bmvuto0Y.js → index-al6k0BWh.js} +1 -1
  170. package/dist/assets/{index-CKLvkNh3.js → index-bLc6Jspi.js} +1 -1
  171. package/dist/assets/{index-CI1PiE-4.js → index-eMWbvaT8.js} +1 -1
  172. package/dist/assets/{index-CLL-9C7m.js → index-ntZJxZkI.js} +1 -1
  173. package/dist/assets/{index-B-GUX2oo.js → index-wZWQdxfX.js} +6 -6
  174. package/dist/assets/{index-C853fSYq.js → index-ybuanIkm.js} +1 -1
  175. package/dist/assets/{index.browser.esm-CRMbKy_R.js → index.browser.esm-CMyd3P11.js} +1 -1
  176. package/dist/assets/{index.es-CMIycEfY.js → index.es-CTSlEmkZ.js} +1 -1
  177. package/dist/assets/{info-CeAmXpnj.js → info-DMZFMzxp.js} +1 -1
  178. package/dist/assets/{info-circle-DwaE_e9M.js → info-circle-xICxd0uu.js} +1 -1
  179. package/dist/assets/{isEqual-Dr8gXji5.js → isEqual-6gRCrOyw.js} +1 -1
  180. package/dist/assets/{isPlainObject-BWZEB0kg.js → isPlainObject-BEYgAMDz.js} +1 -1
  181. package/dist/assets/{kling-DmbPT2cF.js → kling-DXYa77Iq.js} +1 -1
  182. package/dist/assets/{lightbulb-xznf7EC4.js → lightbulb-C5LhhyzR.js} +1 -1
  183. package/dist/assets/{luma-BSLa3cpx.js → luma-Dkzf0Kx5.js} +1 -1
  184. package/dist/assets/{mail--3nf0C-e.js → mail-LNMuUQYI.js} +1 -1
  185. package/dist/assets/{midjourney-B4K_lgnq.js → midjourney-CtLPRylN.js} +1 -1
  186. package/dist/assets/{mobile-V6kDJxnm.js → mobile-tfJMv3jS.js} +1 -1
  187. package/dist/assets/{more-DFym--or.js → more-B_CeVrMU.js} +1 -1
  188. package/dist/assets/{nanobanana-DrUzxhyd.js → nanobanana-DBSwoCbv.js} +1 -1
  189. package/dist/assets/{network-placeholder-JCSsBsWm.js → network-placeholder-BMZoT_Xp.js} +1 -1
  190. package/dist/assets/{nftPlaceholder-CdTTS7Zm.js → nftPlaceholder-CYj1TKgl.js} +1 -1
  191. package/dist/assets/{off-DH8SRHYg.js → off-Diu2oqGG.js} +1 -1
  192. package/dist/assets/{openaiimage-BOyTlTb9.js → openaiimage-Dp1aJmh-.js} +1 -1
  193. package/dist/assets/{order-y7NtUKC7.js → order-DcvZog5z.js} +1 -1
  194. package/dist/assets/{pika-BAYJCSfI.js → pika-C87UZtqr.js} +1 -1
  195. package/dist/assets/{pixverse-CORkjteG.js → pixverse-Dij-fj8j.js} +1 -1
  196. package/dist/assets/{play-store-BuNEZtzo.js → play-store-CC50ZlqW.js} +1 -1
  197. package/dist/assets/{plus-FA9-Hkp6.js → plus-VfQZsL1i.js} +1 -1
  198. package/dist/assets/{price-DTrERJBf.js → price-pXO0t_ig.js} +1 -1
  199. package/dist/assets/{producer-CY4HO-a2.js → producer-9gDqjKg1.js} +1 -1
  200. package/dist/assets/{qr-code-kuRqMpBF.js → qr-code-DdU7ijlx.js} +1 -1
  201. package/dist/assets/{qrart-Dq9wZcEV.js → qrart-D-QIJqqN.js} +1 -1
  202. package/dist/assets/{recycle-horizontal-897XEUe9.js → recycle-horizontal-Ci-6r0iZ.js} +1 -1
  203. package/dist/assets/{refresh-Dwy_Y3Pc.js → refresh-v3PXYPXV.js} +1 -1
  204. package/dist/assets/{reown-logo-BDZauVtp.js → reown-logo-BaFHxeh1.js} +1 -1
  205. package/dist/assets/{search-CFjRk2i8.js → search-Dncno5Z2.js} +1 -1
  206. package/dist/assets/{secp256k1-Cm8f8CgS.js → secp256k1-BInEFu_O.js} +1 -1
  207. package/dist/assets/{secp256k1-CVJSjtCV.js → secp256k1-BYHZzCXX.js} +1 -1
  208. package/dist/assets/{seedance-B4ZxGO-H.js → seedance-DPzn40ni.js} +1 -1
  209. package/dist/assets/{seedream-DUOEyGgz.js → seedream-DFHN2jyY.js} +1 -1
  210. package/dist/assets/{send-jmP4wFNL.js → send-DLKez4WU.js} +1 -1
  211. package/dist/assets/{service-D-bWJV7u.js → service-C-BcC0jW.js} +1 -1
  212. package/dist/assets/{solana-wallets-Cke6ddYt.js → solana-wallets-BLmaFGOH.js} +2 -2
  213. package/dist/assets/{solana-wallets-vue-BL6LpT_N.js → solana-wallets-vue-Ce5vHq8g.js} +1 -1
  214. package/dist/assets/{solanaEmbed.esm-D5xV673d.js → solanaEmbed.esm-C-1HVW-p.js} +1 -1
  215. package/dist/assets/{sora-BpqQdUAg.js → sora-BGy-JOjT.js} +1 -1
  216. package/dist/assets/{string_decoder-DXjg27LR.js → string_decoder-ByRWPqnw.js} +1 -1
  217. package/dist/assets/{suno-8u3cNlqe.js → suno-ClcDMAOe.js} +1 -1
  218. package/dist/assets/{swapHorizontal-D5fVeJ0j.js → swapHorizontal-DKdNOxYo.js} +1 -1
  219. package/dist/assets/{swapHorizontalBold-ETHkPZGC.js → swapHorizontalBold-BLD9O-zm.js} +1 -1
  220. package/dist/assets/{swapHorizontalMedium-B1BeTSgP.js → swapHorizontalMedium-C9W1N81N.js} +1 -1
  221. package/dist/assets/{swapHorizontalRoundedBold-BD11BbUE.js → swapHorizontalRoundedBold-BPn-5dZu.js} +1 -1
  222. package/dist/assets/{swapVertical-O-mi3LWz.js → swapVertical-I5K-5MU2.js} +1 -1
  223. package/dist/assets/{telegram-BRE7_POX.js → telegram-DXoeeESQ.js} +1 -1
  224. package/dist/assets/{three-dots-mpHClpoA.js → three-dots-DzXpa-5W.js} +1 -1
  225. package/dist/assets/{twitch-BLJde7-K.js → twitch-DxMB98Lh.js} +1 -1
  226. package/dist/assets/{twitterIcon-CM4K3h0a.js → twitterIcon-Bk7-lqqy.js} +1 -1
  227. package/dist/assets/{typescript-BWJYf4Zx.js → typescript-Cdvt30Lj.js} +1 -1
  228. package/dist/assets/{use-form-item-BlmY11uh.js → use-form-item-CVgF_2-v.js} +1 -1
  229. package/dist/assets/validator-C3W4Q7W8.js +1 -0
  230. package/dist/assets/{veo-Bl4jycHS.js → veo-DZMs4i-A.js} +1 -1
  231. package/dist/assets/{verify-D3JSjEmx.js → verify-JGkCYxuc.js} +1 -1
  232. package/dist/assets/{verify-filled-dNV0jnpp.js → verify-filled-BXrONTz-.js} +1 -1
  233. package/dist/assets/{w3m-modal-DsP3__-l.js → w3m-modal-ByzqxOkN.js} +1 -1
  234. package/dist/assets/{wallet-BdLsHHI3.js → wallet-Z8BoHxQF.js} +1 -1
  235. package/dist/assets/{wallet-placeholder-BDk06AV0.js → wallet-placeholder-BFR6lqau.js} +1 -1
  236. package/dist/assets/{walletconnect-DfYHmhEm.js → walletconnect-D5ZEGds1.js} +1 -1
  237. package/dist/assets/{wan-vW84zUZn.js → wan-DPH_ee52.js} +1 -1
  238. package/dist/assets/{warning-circle-Bv1SEcux.js → warning-circle-DLJyvaJ4.js} +1 -1
  239. package/dist/assets/{web-lxj39X4Q.js → web-BuQvlgS1.js} +1 -1
  240. package/dist/assets/{web-CnjcE6Kn.js → web-CdVnwqeA.js} +1 -1
  241. package/dist/assets/{x-D-IcFbD6.js → x-ClteeeY4.js} +1 -1
  242. package/dist/index.html +1 -1
  243. package/package.json +1 -1
  244. package/dist/assets/Index-BVCLdTPR.js +0 -1
  245. package/dist/assets/validator-DijqStlu.js +0 -1
@@ -1 +1 @@
1
- import{F as L}from"./index.es-CMIycEfY.js";import{E as R}from"./index-DA_FluBX.js";import{E as q}from"./index-D0IqUyZl.js";import{d as g,H as r,E as l,z as U,C as t,y as p,D as s,q as n,F as a,O as A,N as G,x as y,Q as I,R as z,J as v,I as h,G as S,L as T}from"./vendor-vue-C5BV5QrY.js";import{D as $,b1 as N,ao as D}from"./index-M2b128ZH.js";import{b as H,c as J,d as Q,e as K}from"./veo-Bf1gjuGB.js";import{a as j,E as O}from"./index-CL1prdmz.js";import{I as P,S as W}from"./ScrollList-D2YriCs9.js";import{E as X}from"./index-D-c3cAFR.js";import{V as M}from"./VideoPlayer-DkTzHccF.js";import{p as Y}from"./pasteUploadMixin-BurWbGNQ.js";import{I as Z}from"./ImagePreview-DKUQBUe6.js";import{E as x}from"./index-DYbIRvGT.js";import{E as V}from"./index-BfzxntyX.js";import{C as ee}from"./Consumption-BZkNM6Iy.js";import{E as te}from"./index-Ctk94Ps3.js";import{a as oe}from"./price-DTrERJBf.js";import{b as se}from"./errorCode-Cqj9Td_Z.js";import{v as ne}from"./veo-Bl4jycHS.js";import{C as ae}from"./CopyToClipboard-Bm9B1JG9.js";import{E as le}from"./index-DFNAFF2z.js";import{E as ie}from"./index-C-9b9MKh.js";import{E as re}from"./index-8zQM9luF.js";import{B as ce}from"./BotPlaceholder-C31K8To0.js";import{N as de}from"./NoTasks-INFj9zWz.js";import{l as pe}from"./pagination-D5yjLyAE.js";import"./use-form-item-BlmY11uh.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-Bl-Po99g.js";import"./index-2OHKNhci.js";import"./typescript-BWJYf4Zx.js";import"./index-DJl11D_I.js";import"./strings-DGr9fDRd.js";import"./isEqual-Dr8gXji5.js";import"./_Uint8Array-Cr1cjG4I.js";import"./castArray-CNpuHwov.js";import"./debounce-vY0mNUPJ.js";import"./_baseIteratee-C2KvIaBQ.js";import"./index-B2yh3MI5.js";import"./validator-DijqStlu.js";import"./vue-plyr-BO2nlN4c.js";import"./index-CJ2GaDXw.js";import"./_baseClone-CjTgJNX4.js";import"./_initCloneObject-G_TFMsX_.js";import"./index-DSGdn0Vx.js";import"./index-C_7wmSl9.js";const ue=g({name:"LayoutVeo",components:{ElDrawer:q,ElButton:R,FontAwesomeIcon:L},data(){return{drawer:!1}}}),me={class:"main flex flex-row flex-1"},fe={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ve={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function _e(e,o,m,_,b,k){const c=s("font-awesome-icon"),d=s("el-button"),i=s("el-drawer");return n(),r("div",me,[l("div",fe,[U(e.$slots,"config",{},void 0,!0)]),l("div",ve,[U(e.$slots,"result",{},void 0,!0)]),t(d,{circle:"",class:"menu",onClick:o[0]||(o[0]=w=>e.drawer=!0)},{default:p(()=>[t(c,{icon:"fa-solid fa-magic"})]),_:1}),t(i,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=w=>e.drawer=w),direction:"ltr","with-header":!1,size:"350px"},{default:p(()=>[U(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const he=$(ue,[["render",_e],["__scopeId","data-v-816b984c"]]),ge=g({name:"ModelSelector",components:{ElSelect:O,ElOption:j},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"veo2",label:"veo2"},{value:"veo2-fast",label:"veo2-fast"},{value:"veo3",label:"veo3"},{value:"veo3-fast",label:"veo3-fast"},{value:"veo31-fast",label:"veo31-fast"},{value:"veo31",label:"veo31"},{value:"veo31-fast-ingredients",label:"veo31-fast-ingredients"}]}},computed:{value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,model:e})}}},mounted(){this.value||(this.value=H)}}),$e={class:"field"},be={class:"title font-bold"};function ke(e,o,m,_,b,k){const c=s("el-option"),d=s("el-select");return n(),r("div",$e,[l("h2",be,a(e.$t("veo.name.model")),1),t(d,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=i=>e.value=i),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(n(!0),r(A,null,G(e.options,i=>(n(),y(c,{key:i.value,label:i.label,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const we=$(ge,[["render",ke],["__scopeId","data-v-a59d89c9"]]),ye=g({name:"ActionSelector",components:{ElSelect:O,ElOption:j},data(){return{}},computed:{options(){return[{value:"text2video",label:this.$t("veo.button.action1")},{value:"image2video",label:this.$t("veo.button.action2")},{value:"get1080p",label:this.$t("veo.button.action3")}]},value:{get(){return this.$store.state.veo?.config?.action},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,action:e})}}},mounted(){this.value||(this.value=J)}}),Ve={class:"field"},Ee={class:"title font-bold"},Se={class:"float-left"};function Te(e,o,m,_,b,k){const c=s("el-option"),d=s("el-select");return n(),r("div",Ve,[l("h2",Ee,a(e.$t("veo.name.action")),1),t(d,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=i=>e.value=i),class:"value",placeholder:e.$t("veo.placeholder.select"),clearable:""},{default:p(()=>[(n(!0),r(A,null,G(e.options,i=>(n(),y(c,{key:i.value,label:i.label,value:i.value},{default:p(()=>[l("span",Se,a(i.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ie=$(ye,[["render",Te],["__scopeId","data-v-ba5abc8a"]]),Ce=g({name:"TranslationSelector",components:{ElSwitch:X,InfoIcon:P},computed:{value:{get(){return this.$store.state.veo?.config?.translation},set(e){console.debug("set translation",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,translation:e})}}},mounted(){this.value===void 0&&(this.value=Q)}}),Ae={class:"relative"},Le={class:"flex justify-between"},Re={class:"flex justify-start items-center"},Ge={class:"text-sm font-bold"},Ue={class:"flex justify-end items-center"};function Pe(e,o,m,_,b,k){const c=s("info-icon"),d=s("el-switch");return n(),r("div",Ae,[l("div",Le,[l("div",Re,[l("span",Ge,a(e.$t("veo.name.translation")),1),t(c,{content:e.$t("veo.description.translation")},null,8,["content"])]),l("div",Ue,[t(d,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=i=>e.value=i),class:"value"},null,8,["modelValue"])])])])}const De=$(Ce,[["render",Pe]]),je=g({name:"AspectRatioSelector",data(){return{options:[{value:"1:1",label:"1:1",width:20,height:20},{value:"4:3",label:"4:3",width:20,height:15},{value:"3:4",label:"3:4",width:15,height:20},{value:"16:9",label:"16:9",width:25,height:13},{value:"9:16",label:"9:16",width:13,height:25}]}},computed:{active(){return this.options.findIndex(e=>e.value===this.value)||0},value:{get(){return this.$store.state.veo?.config?.aspect_ratio},set(e){console.debug("set aspect_ratio",e),this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,aspect_ratio:e})}}},mounted(){this.value||(this.value=K)}}),Oe={class:"text-sm font-bold mb-2 block"},Me={class:"items"},Be=["onClick"],Fe={class:"name"};function qe(e,o,m,_,b,k){return n(),r("div",null,[l("span",Oe,a(e.$t("veo.name.ratio")),1),l("div",Me,[(n(!0),r(A,null,G(e.options,(c,d)=>(n(),r("div",{key:d,class:I({active:e.active===d,item:!0}),onClick:i=>e.value=c.value},[l("div",{class:I(["preview",c.label])},[l("div",{class:"rect",style:z({width:c.width+"px",height:c.height+"px"})},null,4)],2),l("p",Fe,a(c.label),1)],10,Be))),128))])])}const ze=$(je,[["render",qe],["__scopeId","data-v-0f16be77"]]),Ne=g({name:"VideoFromInput",components:{VideoPlayer:M},props:{modelValue:{type:Object,required:!1,default:void 0}},data(){return{options:{quality:{default:"1080p"}}}},computed:{config(){return this.$store.state.veo?.config}}}),He={class:"relative"},Je={class:"flex mb-2"},Qe={class:"text-sm font-bold"};function Ke(e,o,m,_,b,k){const c=s("video-player");return n(),r("div",He,[l("div",Je,[l("span",Qe,a(e.$t("veo.name.action3")),1)]),l("div",null,[e.config?.video_url?(n(),y(c,{key:0,src:e.config?.video_url},null,8,["src"])):v("",!0)])])}const We=$(Ne,[["render",Ke]]),Xe=g({name:"StartEndImage",components:{ElUpload:x,ElButton:R,InfoIcon:P,FontAwesomeIcon:L,ImagePreview:Z},mixins:[Y],emits:["change"],data(){return{fileList:[],uploadUrl:N()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.veo?.config?.image_urls},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartEndImageUrl()},methods:{onExceed(){V.warning(this.$t("veo.message.uploadReferencesExceed"))},onError(){V.error(this.$t("veo.message.uploadReferencesError"))},onSetStartEndImageUrl(){const e=this.urls;this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),Ye={class:"relative"},Ze={class:"flex justify-between"},xe={class:"flex justify-start items-center"},et={class:"text-sm font-bold"};function tt(e,o,m,_,b,k){const c=s("info-icon"),d=s("image-preview"),i=s("font-awesome-icon"),w=s("el-button"),f=s("el-upload");return n(),r("div",Ye,[l("div",Ze,[l("div",xe,[l("span",et,a(e.$t("veo.name.startEndImage")),1),t(c,{content:e.$t("veo.description.uploadStartEndImage")},null,8,["content"])])]),t(f,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=u=>e.fileList=u),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:2,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:p(({file:u})=>[u.url&&u.percentage!==void 0?(n(),y(d,{key:0,url:u.url,name:u.name,percentage:u.percentage,onRemove:E=>e.fileList.splice(e.fileList.indexOf(u),1)},null,8,["url","name","percentage","onRemove"])):v("",!0)]),default:p(()=>[t(w,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:p(()=>[t(i,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+a(e.$t("veo.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const ot=$(Xe,[["render",tt],["__scopeId","data-v-b8ddb8fb"]]),st="",nt=g({name:"PromptInput",components:{ElInput:te,InfoIcon:P},computed:{prompt:{get(){return this.$store.state.veo?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=st)}}),at={class:"field"},lt={class:"box"},it={class:"title font-bold"};function rt(e,o,m,_,b,k){const c=s("info-icon"),d=s("el-input");return n(),r("div",at,[l("div",lt,[l("h2",it,a(e.$t("veo.name.prompt")),1),t(c,{content:e.$t("veo.description.prompt"),class:"info"},null,8,["content"])]),t(d,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=i=>e.prompt=i),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("veo.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const ct=$(nt,[["render",rt],["__scopeId","data-v-84c55ea0"]]),dt=g({name:"ConfigPanel",components:{ElButton:R,Consumption:ee,FontAwesomeIcon:L,PromptInput:ct,ModelSelector:we,StartEndImage:ot,ActionSelector:Ie,VideoFromInput:We,TranslationSelector:De,AspectRatioSelector:ze},emits:["generate"],computed:{config(){return this.$store.state.veo?.config},consumption(){return oe(this.config,this.service?.cost)},service(){return this.$store.state.veo?.service}},methods:{onGenerate(){this.$emit("generate")}}}),pt={class:"flex flex-col h-full"},ut={class:"flex-1 overflow-y-auto p-5"},mt={class:"flex flex-col items-center justify-center px-5 pb-5"};function ft(e,o,m,_,b,k){const c=s("video-from-input"),d=s("action-selector"),i=s("translation-selector"),w=s("aspect-ratio-selector"),f=s("prompt-input"),u=s("model-selector"),E=s("start-end-image"),C=s("consumption"),B=s("font-awesome-icon"),F=s("el-button");return n(),r("div",pt,[l("div",ut,[S(t(c,{class:"mb-4"},null,512),[[T,e.config?.action==="get1080p"]]),t(d,{class:"mb-4"}),S(t(i,{class:"mb-4"},null,512),[[T,e.config?.action!=="get1080p"]]),S(t(w,{class:"mb-4"},null,512),[[T,e.config?.action==="image2video"]]),S(t(f,{class:"mb-4"},null,512),[[T,e.config?.action!=="get1080p"]]),S(t(u,{class:"mb-4"},null,512),[[T,e.config?.action!=="get1080p"]]),S(t(E,{class:"mb-2"},null,512),[[T,e.config?.action==="image2video"]])]),l("div",mt,[t(C,{value:e.consumption,service:e.service},null,8,["value","service"]),t(F,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:p(()=>[t(B,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+a(e.$t("veo.button.generate")),1)]),_:1},8,["onClick"])])])}const vt=$(dt,[["render",ft]]),_t=g({name:"TaskPreview",components:{ElImage:re,CopyToClipboard:ae,FontAwesomeIcon:L,ElAlert:ie,VideoPlayer:M,ElTooltip:le,ElButton:R},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.veo?.application},config(){return this.$store.state.veo?.config}},methods:{onGet1080p(e,o){console.debug("set config",o),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,video_id:o?.data?.[0]?.id,video_url:o?.data[0]?.video_url,action:"get1080p"})},onDownload(e,o){e.stopPropagation(),console.log("on download"),window.open(o,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),ht={class:"preview"},gt={class:"left"},$t={class:"main"},bt={class:"bot"},kt={class:"datetime"},wt={class:"info"},yt={key:0,class:"prompt mt-2"},Vt={key:0},Et={key:1},St={key:0,class:I({content:!0,failed:!0})},Tt={key:0,class:"mb-4"},It={key:1,class:I({operations:!0,"mt-2":!0})},Ct={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},At={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Lt={key:1,class:I({content:!0})},Rt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ut={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Pt={key:2,class:I({content:!0})},Dt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},jt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Ot(e,o,m,_,b,k){const c=s("el-image"),d=s("video-player"),i=s("el-button"),w=s("el-tooltip"),f=s("font-awesome-icon"),u=s("copy-to-clipboard"),E=s("el-alert");return n(),r("div",ht,[l("div",gt,[t(c,{src:"https://cdn.acedata.cloud/8nxyy9.jpg",class:"avatar"})]),l("div",$t,[l("div",bt,[h(a(e.$t("veo.name.veoBot"))+" ",1),l("span",kt,a(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",wt,[e.modelValue?.request?.prompt?(n(),r("p",yt,[h(a(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?v("",!0):(n(),r("span",Vt," - ("+a(e.$t("veo.status.pending"))+") ",1)),Array.isArray(e.modelValue?.response?.data)&&e.modelValue?.response?.data[0]?.state==="running"?(n(),r("span",Et," - ("+a(e.$t("veo.status.processing"))+") ",1)):v("",!0)])):v("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(n(),r("div",St,[e.modelValue?.response?.data[0]?.video_url?(n(),r("div",Tt,[t(d,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):v("",!0),e.modelValue?.response.success?(n(),r("div",It,[t(w,{class:"box-item",effect:"dark",content:e.$t("veo.message.downloadVideo"),placement:"top-start"},{default:p(()=>[e.modelValue?.response?.data[0]?.video_url?(n(),y(i,{key:0,type:"info",size:"small",class:"btn-action",onClick:o[0]||(o[0]=C=>e.onGet1080p(C,e.modelValue?.response))},{default:p(()=>[h(a(e.$t("veo.button.action3")),1)]),_:1})):v("",!0)]),_:1},8,["content"]),t(w,{class:"box-item",effect:"dark",content:e.$t("veo.message.downloadVideo"),placement:"top-start"},{default:p(()=>[e.modelValue?.response?.data[0]?.video_url?(n(),y(i,{key:0,type:"info",size:"small",class:"btn-action",onClick:o[1]||(o[1]=C=>e.onDownload(C,e.modelValue?.response?.data[0]?.video_url))},{default:p(()=>[h(a(e.$t("veo.button.download")),1)]),_:1})):v("",!0)]),_:1},8,["content"])])):v("",!0),t(E,{closable:!1,class:"mt-2 success"},{default:p(()=>[l("p",Ct,[t(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+a(e.$t("veo.name.model"))+": "+a(e.modelValue?.request?.model),1)]),l("p",At,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+a(e.$t("veo.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),t(u,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):v("",!0),e.modelValue?.response?.success===!1?(n(),r("div",Lt,[t(E,{closable:!1,class:"failure"},{template:p(()=>[t(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+a(e.$t("veo.name.failure")),1)]),default:p(()=>[l("p",Rt,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+a(e.$t("veo.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),t(u,{content:e.modelValue?.id},null,8,["content"])]),l("p",Gt,[t(f,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+a(e.$t("veo.name.failureReason"))+": "+a(e.modelValue?.response?.error?.message)+" ",1),t(u,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),r("p",Ut,[t(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+a(e.$t("veo.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),t(u,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):v("",!0)]),_:1})])):v("",!0),e.modelValue?.response?.success===void 0?(n(),r("div",Pt,[t(E,{closable:!1,class:"info"},{template:p(()=>[t(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+a(e.$t("veo.name.failure")),1)]),default:p(()=>[l("p",Dt,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+a(e.$t("veo.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),t(u,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),r("p",jt,[t(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+a(e.$t("veo.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),t(u,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):v("",!0)]),_:1})])):v("",!0)])])}const Mt=$(_t,[["render",Ot],["__scopeId","data-v-4c98c3a2"]]),Bt=g({name:"RecentPanel",components:{TaskPreview:Mt,NoTasks:de,BotPlaceholder:ce,ScrollList:W},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.veo?.tasks,items:this.$store.state.veo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Ft={key:0},qt={key:2,class:"w-full h-full flex items-center justify-center"};function zt(e,o,m,_,b,k){const c=s("bot-placeholder"),d=s("task-preview"),i=s("scroll-list"),w=s("no-tasks");return n(),r(A,null,[e.tasks?.items===void 0?(n(),r("div",Ft,[t(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),y(i,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:o[0]||(o[0]=f=>e.$emit("reach-top"))},{default:p(()=>[(n(!0),r(A,null,G(e.tasks?.items,(f,u)=>(n(),y(d,{key:u,"model-value":f},null,8,["model-value"]))),128))]),_:1},8,["loading"])):v("",!0),e.tasks?.items?.length===0?(n(),r("div",qt,[t(w)])):v("",!0)],64)}const Nt=$(Bt,[["render",zt]]),Ht="https://webhook.acedata.cloud/veo",Jt=g({name:"VeoIndex",components:{ConfigPanel:vt,Layout:he,RecentPanel:Nt},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.veo?.status?.getApplications===D.Request},tasksLoading(){return this.$store.state.veo?.status?.getTasks===D.Request||this.fetchingTasks},credential(){return this.$store.state.veo.credential},config(){return this.$store.state.veo.config},tasks(){return this.$store.state.veo.tasks}},watch:{tasks:{handler(e,o){e?.items?.length>o?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await pe({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("veo/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("veo/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:o=5,createdAtMin:m,createdAtMax:_}=e||{};console.debug("limit",o,"createdAtMin",m,"createdAtMax",_),this.fetchingTasks=!0;try{await this.$store.dispatch("veo/getTasks",{limit:o,createdAtMin:m,createdAtMax:_})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Ht},o=this.credential?.token;if(!o){console.error("no token specified");return}if(e.action==="image2video"&&!(e.image_urls&&e.image_urls.length>0)){V.warning(this.$t("veo.message.imageRequired"));return}(!e.image_urls||e.image_urls.length===0)&&delete e.image_urls,V.info(this.$t("veo.message.startingTask")),ne.generate(e,{token:o}).then(()=>{V.success(this.$t("veo.message.startTaskSuccess"))}).catch(m=>{m?.response?.data?.error?.code===se?V.error(this.$t("veo.message.usedUp")):V.error(this.$t("veo.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Qt(e,o,m,_,b,k){const c=s("config-panel"),d=s("recent-panel"),i=s("layout");return n(),y(i,null,{config:p(()=>[t(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:p(()=>[t(d,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const zo=$(Jt,[["render",Qt]]);export{zo as default};
1
+ import{F as L}from"./index.es-CTSlEmkZ.js";import{E as R}from"./index-C2C5Wr_B.js";import{E as q}from"./index-D2HSg-zC.js";import{d as g,H as r,E as l,z as U,C as t,y as p,D as s,q as n,F as a,O as A,N as G,x as y,Q as I,R as z,J as v,I as h,G as S,L as T}from"./vendor-vue-C5BV5QrY.js";import{D as $,b1 as N,ao as D}from"./index-DxnrvYVH.js";import{b as H,c as J,d as Q,e as K}from"./veo-Bf1gjuGB.js";import{a as j,E as O}from"./index-DiqBmBf1.js";import{I as P,S as W}from"./ScrollList-ppHF7k1A.js";import{E as X}from"./index-B5z3D9g7.js";import{V as M}from"./VideoPlayer-BiZGhs1e.js";import{p as Y}from"./pasteUploadMixin-BurWbGNQ.js";import{I as Z}from"./ImagePreview-hUTkC0Ih.js";import{E as x}from"./index-De6GneQ8.js";import{E as V}from"./index-BEISdWxi.js";import{C as ee}from"./Consumption-C-RXHwF8.js";import{E as te}from"./index-CVHZPJ6x.js";import{a as oe}from"./price-pXO0t_ig.js";import{b as se}from"./errorCode-Cqj9Td_Z.js";import{v as ne}from"./veo-DZMs4i-A.js";import{C as ae}from"./CopyToClipboard-j5Q2Kc6N.js";import{E as le}from"./index-CZSdwn7u.js";import{E as ie}from"./index-CVh8Wj89.js";import{E as re}from"./index-BoNQ2bwh.js";import{B as ce}from"./BotPlaceholder-CnYzSwa6.js";import{N as de}from"./NoTasks-DCFz_cPB.js";import{l as pe}from"./pagination-D5yjLyAE.js";import"./use-form-item-CVgF_2-v.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-Bl-Po99g.js";import"./index-Ht8ZOU1H.js";import"./typescript-Cdvt30Lj.js";import"./index-BoMrEY9d.js";import"./strings-DGr9fDRd.js";import"./isEqual-6gRCrOyw.js";import"./_Uint8Array-B9wo990u.js";import"./castArray-CEgxRlUQ.js";import"./debounce-z3wHMjDj.js";import"./_baseIteratee-CAzVICbz.js";import"./index-BfOryRNq.js";import"./validator-C3W4Q7W8.js";import"./vue-plyr-BO2nlN4c.js";import"./index-Qx6yMP72.js";import"./_baseClone-OaArZu3M.js";import"./_initCloneObject-CezWJWWn.js";import"./index-D5nhIR6Q.js";import"./index-5durBcIc.js";const ue=g({name:"LayoutVeo",components:{ElDrawer:q,ElButton:R,FontAwesomeIcon:L},data(){return{drawer:!1}}}),me={class:"main flex flex-row flex-1"},fe={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ve={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function _e(e,o,m,_,b,k){const c=s("font-awesome-icon"),d=s("el-button"),i=s("el-drawer");return n(),r("div",me,[l("div",fe,[U(e.$slots,"config",{},void 0,!0)]),l("div",ve,[U(e.$slots,"result",{},void 0,!0)]),t(d,{circle:"",class:"menu",onClick:o[0]||(o[0]=w=>e.drawer=!0)},{default:p(()=>[t(c,{icon:"fa-solid fa-magic"})]),_:1}),t(i,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=w=>e.drawer=w),direction:"ltr","with-header":!1,size:"350px"},{default:p(()=>[U(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const he=$(ue,[["render",_e],["__scopeId","data-v-816b984c"]]),ge=g({name:"ModelSelector",components:{ElSelect:O,ElOption:j},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"veo2",label:"veo2"},{value:"veo2-fast",label:"veo2-fast"},{value:"veo3",label:"veo3"},{value:"veo3-fast",label:"veo3-fast"},{value:"veo31-fast",label:"veo31-fast"},{value:"veo31",label:"veo31"},{value:"veo31-fast-ingredients",label:"veo31-fast-ingredients"}]}},computed:{value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,model:e})}}},mounted(){this.value||(this.value=H)}}),$e={class:"field"},be={class:"title font-bold"};function ke(e,o,m,_,b,k){const c=s("el-option"),d=s("el-select");return n(),r("div",$e,[l("h2",be,a(e.$t("veo.name.model")),1),t(d,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=i=>e.value=i),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(n(!0),r(A,null,G(e.options,i=>(n(),y(c,{key:i.value,label:i.label,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const we=$(ge,[["render",ke],["__scopeId","data-v-a59d89c9"]]),ye=g({name:"ActionSelector",components:{ElSelect:O,ElOption:j},data(){return{}},computed:{options(){return[{value:"text2video",label:this.$t("veo.button.action1")},{value:"image2video",label:this.$t("veo.button.action2")},{value:"get1080p",label:this.$t("veo.button.action3")}]},value:{get(){return this.$store.state.veo?.config?.action},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,action:e})}}},mounted(){this.value||(this.value=J)}}),Ve={class:"field"},Ee={class:"title font-bold"},Se={class:"float-left"};function Te(e,o,m,_,b,k){const c=s("el-option"),d=s("el-select");return n(),r("div",Ve,[l("h2",Ee,a(e.$t("veo.name.action")),1),t(d,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=i=>e.value=i),class:"value",placeholder:e.$t("veo.placeholder.select"),clearable:""},{default:p(()=>[(n(!0),r(A,null,G(e.options,i=>(n(),y(c,{key:i.value,label:i.label,value:i.value},{default:p(()=>[l("span",Se,a(i.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ie=$(ye,[["render",Te],["__scopeId","data-v-ba5abc8a"]]),Ce=g({name:"TranslationSelector",components:{ElSwitch:X,InfoIcon:P},computed:{value:{get(){return this.$store.state.veo?.config?.translation},set(e){console.debug("set translation",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,translation:e})}}},mounted(){this.value===void 0&&(this.value=Q)}}),Ae={class:"relative"},Le={class:"flex justify-between"},Re={class:"flex justify-start items-center"},Ge={class:"text-sm font-bold"},Ue={class:"flex justify-end items-center"};function Pe(e,o,m,_,b,k){const c=s("info-icon"),d=s("el-switch");return n(),r("div",Ae,[l("div",Le,[l("div",Re,[l("span",Ge,a(e.$t("veo.name.translation")),1),t(c,{content:e.$t("veo.description.translation")},null,8,["content"])]),l("div",Ue,[t(d,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=i=>e.value=i),class:"value"},null,8,["modelValue"])])])])}const De=$(Ce,[["render",Pe]]),je=g({name:"AspectRatioSelector",data(){return{options:[{value:"1:1",label:"1:1",width:20,height:20},{value:"4:3",label:"4:3",width:20,height:15},{value:"3:4",label:"3:4",width:15,height:20},{value:"16:9",label:"16:9",width:25,height:13},{value:"9:16",label:"9:16",width:13,height:25}]}},computed:{active(){return this.options.findIndex(e=>e.value===this.value)||0},value:{get(){return this.$store.state.veo?.config?.aspect_ratio},set(e){console.debug("set aspect_ratio",e),this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,aspect_ratio:e})}}},mounted(){this.value||(this.value=K)}}),Oe={class:"text-sm font-bold mb-2 block"},Me={class:"items"},Be=["onClick"],Fe={class:"name"};function qe(e,o,m,_,b,k){return n(),r("div",null,[l("span",Oe,a(e.$t("veo.name.ratio")),1),l("div",Me,[(n(!0),r(A,null,G(e.options,(c,d)=>(n(),r("div",{key:d,class:I({active:e.active===d,item:!0}),onClick:i=>e.value=c.value},[l("div",{class:I(["preview",c.label])},[l("div",{class:"rect",style:z({width:c.width+"px",height:c.height+"px"})},null,4)],2),l("p",Fe,a(c.label),1)],10,Be))),128))])])}const ze=$(je,[["render",qe],["__scopeId","data-v-0f16be77"]]),Ne=g({name:"VideoFromInput",components:{VideoPlayer:M},props:{modelValue:{type:Object,required:!1,default:void 0}},data(){return{options:{quality:{default:"1080p"}}}},computed:{config(){return this.$store.state.veo?.config}}}),He={class:"relative"},Je={class:"flex mb-2"},Qe={class:"text-sm font-bold"};function Ke(e,o,m,_,b,k){const c=s("video-player");return n(),r("div",He,[l("div",Je,[l("span",Qe,a(e.$t("veo.name.action3")),1)]),l("div",null,[e.config?.video_url?(n(),y(c,{key:0,src:e.config?.video_url},null,8,["src"])):v("",!0)])])}const We=$(Ne,[["render",Ke]]),Xe=g({name:"StartEndImage",components:{ElUpload:x,ElButton:R,InfoIcon:P,FontAwesomeIcon:L,ImagePreview:Z},mixins:[Y],emits:["change"],data(){return{fileList:[],uploadUrl:N()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.veo?.config?.image_urls},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartEndImageUrl()},methods:{onExceed(){V.warning(this.$t("veo.message.uploadReferencesExceed"))},onError(){V.error(this.$t("veo.message.uploadReferencesError"))},onSetStartEndImageUrl(){const e=this.urls;this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),Ye={class:"relative"},Ze={class:"flex justify-between"},xe={class:"flex justify-start items-center"},et={class:"text-sm font-bold"};function tt(e,o,m,_,b,k){const c=s("info-icon"),d=s("image-preview"),i=s("font-awesome-icon"),w=s("el-button"),f=s("el-upload");return n(),r("div",Ye,[l("div",Ze,[l("div",xe,[l("span",et,a(e.$t("veo.name.startEndImage")),1),t(c,{content:e.$t("veo.description.uploadStartEndImage")},null,8,["content"])])]),t(f,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=u=>e.fileList=u),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:2,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:p(({file:u})=>[u.url&&u.percentage!==void 0?(n(),y(d,{key:0,url:u.url,name:u.name,percentage:u.percentage,onRemove:E=>e.fileList.splice(e.fileList.indexOf(u),1)},null,8,["url","name","percentage","onRemove"])):v("",!0)]),default:p(()=>[t(w,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:p(()=>[t(i,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+a(e.$t("veo.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const ot=$(Xe,[["render",tt],["__scopeId","data-v-b8ddb8fb"]]),st="",nt=g({name:"PromptInput",components:{ElInput:te,InfoIcon:P},computed:{prompt:{get(){return this.$store.state.veo?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=st)}}),at={class:"field"},lt={class:"box"},it={class:"title font-bold"};function rt(e,o,m,_,b,k){const c=s("info-icon"),d=s("el-input");return n(),r("div",at,[l("div",lt,[l("h2",it,a(e.$t("veo.name.prompt")),1),t(c,{content:e.$t("veo.description.prompt"),class:"info"},null,8,["content"])]),t(d,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=i=>e.prompt=i),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("veo.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const ct=$(nt,[["render",rt],["__scopeId","data-v-84c55ea0"]]),dt=g({name:"ConfigPanel",components:{ElButton:R,Consumption:ee,FontAwesomeIcon:L,PromptInput:ct,ModelSelector:we,StartEndImage:ot,ActionSelector:Ie,VideoFromInput:We,TranslationSelector:De,AspectRatioSelector:ze},emits:["generate"],computed:{config(){return this.$store.state.veo?.config},consumption(){return oe(this.config,this.service?.cost)},service(){return this.$store.state.veo?.service}},methods:{onGenerate(){this.$emit("generate")}}}),pt={class:"flex flex-col h-full"},ut={class:"flex-1 overflow-y-auto p-5"},mt={class:"flex flex-col items-center justify-center px-5 pb-5"};function ft(e,o,m,_,b,k){const c=s("video-from-input"),d=s("action-selector"),i=s("translation-selector"),w=s("aspect-ratio-selector"),f=s("prompt-input"),u=s("model-selector"),E=s("start-end-image"),C=s("consumption"),B=s("font-awesome-icon"),F=s("el-button");return n(),r("div",pt,[l("div",ut,[S(t(c,{class:"mb-4"},null,512),[[T,e.config?.action==="get1080p"]]),t(d,{class:"mb-4"}),S(t(i,{class:"mb-4"},null,512),[[T,e.config?.action!=="get1080p"]]),S(t(w,{class:"mb-4"},null,512),[[T,e.config?.action==="image2video"]]),S(t(f,{class:"mb-4"},null,512),[[T,e.config?.action!=="get1080p"]]),S(t(u,{class:"mb-4"},null,512),[[T,e.config?.action!=="get1080p"]]),S(t(E,{class:"mb-2"},null,512),[[T,e.config?.action==="image2video"]])]),l("div",mt,[t(C,{value:e.consumption,service:e.service},null,8,["value","service"]),t(F,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:p(()=>[t(B,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+a(e.$t("veo.button.generate")),1)]),_:1},8,["onClick"])])])}const vt=$(dt,[["render",ft]]),_t=g({name:"TaskPreview",components:{ElImage:re,CopyToClipboard:ae,FontAwesomeIcon:L,ElAlert:ie,VideoPlayer:M,ElTooltip:le,ElButton:R},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.veo?.application},config(){return this.$store.state.veo?.config}},methods:{onGet1080p(e,o){console.debug("set config",o),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,video_id:o?.data?.[0]?.id,video_url:o?.data[0]?.video_url,action:"get1080p"})},onDownload(e,o){e.stopPropagation(),console.log("on download"),window.open(o,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),ht={class:"preview"},gt={class:"left"},$t={class:"main"},bt={class:"bot"},kt={class:"datetime"},wt={class:"info"},yt={key:0,class:"prompt mt-2"},Vt={key:0},Et={key:1},St={key:0,class:I({content:!0,failed:!0})},Tt={key:0,class:"mb-4"},It={key:1,class:I({operations:!0,"mt-2":!0})},Ct={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},At={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Lt={key:1,class:I({content:!0})},Rt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ut={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Pt={key:2,class:I({content:!0})},Dt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},jt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Ot(e,o,m,_,b,k){const c=s("el-image"),d=s("video-player"),i=s("el-button"),w=s("el-tooltip"),f=s("font-awesome-icon"),u=s("copy-to-clipboard"),E=s("el-alert");return n(),r("div",ht,[l("div",gt,[t(c,{src:"https://cdn.acedata.cloud/8nxyy9.jpg",class:"avatar"})]),l("div",$t,[l("div",bt,[h(a(e.$t("veo.name.veoBot"))+" ",1),l("span",kt,a(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",wt,[e.modelValue?.request?.prompt?(n(),r("p",yt,[h(a(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?v("",!0):(n(),r("span",Vt," - ("+a(e.$t("veo.status.pending"))+") ",1)),Array.isArray(e.modelValue?.response?.data)&&e.modelValue?.response?.data[0]?.state==="running"?(n(),r("span",Et," - ("+a(e.$t("veo.status.processing"))+") ",1)):v("",!0)])):v("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(n(),r("div",St,[e.modelValue?.response?.data[0]?.video_url?(n(),r("div",Tt,[t(d,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):v("",!0),e.modelValue?.response.success?(n(),r("div",It,[t(w,{class:"box-item",effect:"dark",content:e.$t("veo.message.downloadVideo"),placement:"top-start"},{default:p(()=>[e.modelValue?.response?.data[0]?.video_url?(n(),y(i,{key:0,type:"info",size:"small",class:"btn-action",onClick:o[0]||(o[0]=C=>e.onGet1080p(C,e.modelValue?.response))},{default:p(()=>[h(a(e.$t("veo.button.action3")),1)]),_:1})):v("",!0)]),_:1},8,["content"]),t(w,{class:"box-item",effect:"dark",content:e.$t("veo.message.downloadVideo"),placement:"top-start"},{default:p(()=>[e.modelValue?.response?.data[0]?.video_url?(n(),y(i,{key:0,type:"info",size:"small",class:"btn-action",onClick:o[1]||(o[1]=C=>e.onDownload(C,e.modelValue?.response?.data[0]?.video_url))},{default:p(()=>[h(a(e.$t("veo.button.download")),1)]),_:1})):v("",!0)]),_:1},8,["content"])])):v("",!0),t(E,{closable:!1,class:"mt-2 success"},{default:p(()=>[l("p",Ct,[t(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+a(e.$t("veo.name.model"))+": "+a(e.modelValue?.request?.model),1)]),l("p",At,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+a(e.$t("veo.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),t(u,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):v("",!0),e.modelValue?.response?.success===!1?(n(),r("div",Lt,[t(E,{closable:!1,class:"failure"},{template:p(()=>[t(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+a(e.$t("veo.name.failure")),1)]),default:p(()=>[l("p",Rt,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+a(e.$t("veo.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),t(u,{content:e.modelValue?.id},null,8,["content"])]),l("p",Gt,[t(f,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+a(e.$t("veo.name.failureReason"))+": "+a(e.modelValue?.response?.error?.message)+" ",1),t(u,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),r("p",Ut,[t(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+a(e.$t("veo.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),t(u,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):v("",!0)]),_:1})])):v("",!0),e.modelValue?.response?.success===void 0?(n(),r("div",Pt,[t(E,{closable:!1,class:"info"},{template:p(()=>[t(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+a(e.$t("veo.name.failure")),1)]),default:p(()=>[l("p",Dt,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+a(e.$t("veo.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),t(u,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),r("p",jt,[t(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+a(e.$t("veo.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),t(u,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):v("",!0)]),_:1})])):v("",!0)])])}const Mt=$(_t,[["render",Ot],["__scopeId","data-v-4c98c3a2"]]),Bt=g({name:"RecentPanel",components:{TaskPreview:Mt,NoTasks:de,BotPlaceholder:ce,ScrollList:W},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.veo?.tasks,items:this.$store.state.veo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Ft={key:0},qt={key:2,class:"w-full h-full flex items-center justify-center"};function zt(e,o,m,_,b,k){const c=s("bot-placeholder"),d=s("task-preview"),i=s("scroll-list"),w=s("no-tasks");return n(),r(A,null,[e.tasks?.items===void 0?(n(),r("div",Ft,[t(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),y(i,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:o[0]||(o[0]=f=>e.$emit("reach-top"))},{default:p(()=>[(n(!0),r(A,null,G(e.tasks?.items,(f,u)=>(n(),y(d,{key:u,"model-value":f},null,8,["model-value"]))),128))]),_:1},8,["loading"])):v("",!0),e.tasks?.items?.length===0?(n(),r("div",qt,[t(w)])):v("",!0)],64)}const Nt=$(Bt,[["render",zt]]),Ht="https://webhook.acedata.cloud/veo",Jt=g({name:"VeoIndex",components:{ConfigPanel:vt,Layout:he,RecentPanel:Nt},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.veo?.status?.getApplications===D.Request},tasksLoading(){return this.$store.state.veo?.status?.getTasks===D.Request||this.fetchingTasks},credential(){return this.$store.state.veo.credential},config(){return this.$store.state.veo.config},tasks(){return this.$store.state.veo.tasks}},watch:{tasks:{handler(e,o){e?.items?.length>o?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await pe({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("veo/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("veo/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:o=5,createdAtMin:m,createdAtMax:_}=e||{};console.debug("limit",o,"createdAtMin",m,"createdAtMax",_),this.fetchingTasks=!0;try{await this.$store.dispatch("veo/getTasks",{limit:o,createdAtMin:m,createdAtMax:_})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Ht},o=this.credential?.token;if(!o){console.error("no token specified");return}if(e.action==="image2video"&&!(e.image_urls&&e.image_urls.length>0)){V.warning(this.$t("veo.message.imageRequired"));return}(!e.image_urls||e.image_urls.length===0)&&delete e.image_urls,V.info(this.$t("veo.message.startingTask")),ne.generate(e,{token:o}).then(()=>{V.success(this.$t("veo.message.startTaskSuccess"))}).catch(m=>{m?.response?.data?.error?.code===se?V.error(this.$t("veo.message.usedUp")):V.error(this.$t("veo.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Qt(e,o,m,_,b,k){const c=s("config-panel"),d=s("recent-panel"),i=s("layout");return n(),y(i,null,{config:p(()=>[t(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:p(()=>[t(d,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const zo=$(Jt,[["render",Qt]]);export{zo as default};
@@ -1 +1 @@
1
- import{aZ as x,b7 as g,D as $,b8 as C,b2 as T,b3 as N,b4 as L,a9 as U,b5 as D,b9 as R,ba as B,bb as P,b1 as A}from"./index-M2b128ZH.js";import{F as v}from"./index.es-CMIycEfY.js";import{E as F,a as H}from"./index-CI1PiE-4.js";import{E as V}from"./index-CKLvkNh3.js";import{E as k}from"./index-8zQM9luF.js";import{d as E,x as f,y as n,C as o,I as _,F as m,J as b,E as s,D as t,q as r,H as h,R as X,O as q,N as J,Q as M}from"./vendor-vue-C5BV5QrY.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-Bl-Po99g.js";import"./typescript-BWJYf4Zx.js";import"./index-CGh2-Zso.js";import"./index-DFNAFF2z.js";import"./index-DJl11D_I.js";import"./index-BuyEbX8F.js";import"./index-B2yh3MI5.js";import"./dropdown-oRp0MQI5.js";import"./debounce-vY0mNUPJ.js";import"./index-DSGdn0Vx.js";const z=E({name:"HelpEntry",components:{ElImage:k,ElDialog:x,ElPopover:V,ElMenu:H,ElMenuItem:F,FontAwesomeIcon:v},props:{visible:{type:Boolean,default:!0}},emits:["close"],computed:{site(){return this.$store.state.site}},methods:{onJoin(){window.open(this.$store.state.site?.features?.support?.discord?.url,"_blank")},onProfit(){this.$router.push({name:g})}}}),j={class:"flex"},G={class:"flex-1 text-center"};function K(e,i,y,I,w,O){const c=t("font-awesome-icon"),l=t("el-menu-item"),u=t("el-image"),p=t("el-popover"),a=t("el-menu"),d=t("el-dialog");return r(),f(d,{"model-value":e.visible,width:200,class:"text-center",onClose:i[0]||(i[0]=S=>e.$emit("close"))},{default:n(()=>[o(a,{collapse:!1,class:"menu"},{default:n(()=>[e.site?.features?.support?.discord?.enabled?(r(),f(l,{key:0,index:"1",onClick:e.onJoin},{title:n(()=>[_(m(e.$t("common.message.joinDiscord")),1)]),default:n(()=>[o(c,{icon:"fa-brands fa-discord",class:"mr-2"})]),_:1},8,["onClick"])):b("",!0),o(p,{width:350,trigger:"hover"},{reference:n(()=>[e.site?.features?.support?.wechat?.enabled?(r(),f(l,{key:0,index:"2"},{title:n(()=>[_(m(e.$t("common.message.addWeChat")),1)]),default:n(()=>[o(c,{icon:"fa-brands fa-weixin",class:"mr-2"})]),_:1})):b("",!0)]),default:n(()=>[s("div",j,[s("div",G,[o(u,{src:e.site?.features?.support?.wechat?.qr},null,8,["src"])])])]),_:1})]),_:1})]),_:1},8,["model-value"])}const Q=$(z,[["render",K],["__scopeId","data-v-0fce633f"]]),W=E({name:"ProfileIndex",components:{ElImage:k,HelpDialog:Q,FontAwesomeIcon:v},data(){return{operating:{locale:!1,dark:!1,help:!1}}},computed:{user(){return this.$store.getters.user},showSupport(){return this.$store?.state?.site?.features?.support?.enabled&&(this.$store?.state?.site?.features?.support?.discord?.enabled||this.$store?.state?.site?.features?.support?.wechat?.enabled)},showSite(){return this.$store?.state?.site?.admins?.includes(this.$store.getters.user?.id)},showSubsite(){return!!this.$store?.state?.site?.features?.subsite?.enabled},links(){return[{key:"profile",text:this.$t("console.menu.userProfile"),href:`${P()}/user/profile`,icon:"fa-regular fa-user"},{key:"application-list",text:this.$t("console.menu.applicationList"),name:N,icon:"fa-solid fa-cube"},{key:"order-list",text:this.$t("console.menu.orderList"),name:L,icon:"fa-solid fa-store"},{key:"usage-list",text:this.$t("console.menu.usageList"),name:U,icon:"fa-solid fa-rotate-left"},{key:"byok-list",text:this.$t("console.menu.byokList"),name:D,icon:"fa-solid fa-key"},{key:"distribution-index",text:this.$t("console.menu.distributionIndex"),name:g,icon:"fa-solid fa-coins"},...this.showSite?[{key:"site-index",text:this.$t("common.nav.site"),name:R,icon:"fa-solid fa-gear"}]:[],...this.showSubsite?[{key:"subsite-index",text:this.$t("common.nav.subsite"),name:B,icon:"fa-solid fa-sitemap"}]:[],{key:"dark-setting",text:this.$t("common.nav.darkMode"),icon:"fa-solid fa-moon",callback:()=>{this.operating.dark=!0}},{key:"locale-setting",text:this.$t("common.nav.locale"),icon:"fa-solid fa-language",callback:()=>{this.operating.locale=!0}},{key:"developerPlatform",text:this.$t("console.menu.developerPlatform"),href:A(),icon:"fa-solid fa-laptop-code"},...this.showSupport?[{key:"support",text:this.$t("common.nav.support"),callback:()=>{this.operating.help=!0},icon:"fa-solid fa-question"}]:[],{key:"logout",text:this.$t("common.nav.logOut"),icon:"fa-solid fa-arrow-right-from-bracket",callback:async()=>{await this.$store.dispatch("logout")}}]}},methods:{onHome(){this.$router.push({name:T})},onNavigate(e){e.name?this.$router.push({name:e.name}):e.href?window.open(C(e.href),"_blank"):e.callback&&e.callback()}}}),Y={class:"profile"},Z={class:"info"},ee={class:"links"},te=["onClick"],oe={class:"icon"},se={class:"text"},ae={class:"suffix"};function ne(e,i,y,I,w,O){const c=t("el-image"),l=t("font-awesome-icon"),u=t("locale-selector"),p=t("help-dialog");return r(),h("div",Y,[s("div",Z,[o(c,{src:e.user.avatar,fit:"cover",class:"avatar"},null,8,["src"]),s("h2",null,m(e.user.username),1),s("div",{style:X({backgroundImage:"url("+e.user.avatar+")"}),class:"background"},null,4)]),s("div",ee,[(r(!0),h(q,null,J(e.links,(a,d)=>(r(),h("a",{key:d,class:M({link:!0,active:e.$route.name===a.name}),onClick:S=>e.onNavigate(a)},[s("span",oe,[o(l,{icon:a.icon,class:"text-sm"},null,8,["icon"])]),s("span",se,m(a.text),1),s("span",ae,[o(l,{icon:"fa-solid fa-chevron-right",class:"text-sm"})])],10,te))),128))]),o(u,{visible:e.operating.locale==!0,onClose:i[0]||(i[0]=a=>e.operating.locale=!1)},null,8,["visible"]),o(p,{visible:e.operating.help==!0,onClose:i[1]||(i[1]=a=>e.operating.help=!1)},null,8,["visible"])])}const Ie=$(W,[["render",ne],["__scopeId","data-v-588fb7cd"]]);export{Ie as default};
1
+ import{aZ as x,b7 as g,D as $,b8 as C,b2 as T,b3 as N,b4 as L,a9 as U,b5 as D,b9 as R,ba as B,bb as P,b1 as A}from"./index-DxnrvYVH.js";import{F as v}from"./index.es-CTSlEmkZ.js";import{E as F,a as H}from"./index-eMWbvaT8.js";import{E as V}from"./index-bLc6Jspi.js";import{E as k}from"./index-BoNQ2bwh.js";import{d as E,x as f,y as n,C as o,I as _,F as m,J as b,E as s,D as t,q as r,H as h,R as X,O as q,N as J,Q as M}from"./vendor-vue-C5BV5QrY.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-Bl-Po99g.js";import"./typescript-Cdvt30Lj.js";import"./index-BWUBjXz2.js";import"./index-CZSdwn7u.js";import"./index-BoMrEY9d.js";import"./index-BuyEbX8F.js";import"./index-BfOryRNq.js";import"./dropdown-DPQ051fG.js";import"./debounce-z3wHMjDj.js";import"./index-D5nhIR6Q.js";const z=E({name:"HelpEntry",components:{ElImage:k,ElDialog:x,ElPopover:V,ElMenu:H,ElMenuItem:F,FontAwesomeIcon:v},props:{visible:{type:Boolean,default:!0}},emits:["close"],computed:{site(){return this.$store.state.site}},methods:{onJoin(){window.open(this.$store.state.site?.features?.support?.discord?.url,"_blank")},onProfit(){this.$router.push({name:g})}}}),j={class:"flex"},G={class:"flex-1 text-center"};function K(e,i,y,I,w,O){const c=t("font-awesome-icon"),l=t("el-menu-item"),u=t("el-image"),p=t("el-popover"),a=t("el-menu"),d=t("el-dialog");return r(),f(d,{"model-value":e.visible,width:200,class:"text-center",onClose:i[0]||(i[0]=S=>e.$emit("close"))},{default:n(()=>[o(a,{collapse:!1,class:"menu"},{default:n(()=>[e.site?.features?.support?.discord?.enabled?(r(),f(l,{key:0,index:"1",onClick:e.onJoin},{title:n(()=>[_(m(e.$t("common.message.joinDiscord")),1)]),default:n(()=>[o(c,{icon:"fa-brands fa-discord",class:"mr-2"})]),_:1},8,["onClick"])):b("",!0),o(p,{width:350,trigger:"hover"},{reference:n(()=>[e.site?.features?.support?.wechat?.enabled?(r(),f(l,{key:0,index:"2"},{title:n(()=>[_(m(e.$t("common.message.addWeChat")),1)]),default:n(()=>[o(c,{icon:"fa-brands fa-weixin",class:"mr-2"})]),_:1})):b("",!0)]),default:n(()=>[s("div",j,[s("div",G,[o(u,{src:e.site?.features?.support?.wechat?.qr},null,8,["src"])])])]),_:1})]),_:1})]),_:1},8,["model-value"])}const Q=$(z,[["render",K],["__scopeId","data-v-0fce633f"]]),W=E({name:"ProfileIndex",components:{ElImage:k,HelpDialog:Q,FontAwesomeIcon:v},data(){return{operating:{locale:!1,dark:!1,help:!1}}},computed:{user(){return this.$store.getters.user},showSupport(){return this.$store?.state?.site?.features?.support?.enabled&&(this.$store?.state?.site?.features?.support?.discord?.enabled||this.$store?.state?.site?.features?.support?.wechat?.enabled)},showSite(){return this.$store?.state?.site?.admins?.includes(this.$store.getters.user?.id)},showSubsite(){return!!this.$store?.state?.site?.features?.subsite?.enabled},links(){return[{key:"profile",text:this.$t("console.menu.userProfile"),href:`${P()}/user/profile`,icon:"fa-regular fa-user"},{key:"application-list",text:this.$t("console.menu.applicationList"),name:N,icon:"fa-solid fa-cube"},{key:"order-list",text:this.$t("console.menu.orderList"),name:L,icon:"fa-solid fa-store"},{key:"usage-list",text:this.$t("console.menu.usageList"),name:U,icon:"fa-solid fa-rotate-left"},{key:"byok-list",text:this.$t("console.menu.byokList"),name:D,icon:"fa-solid fa-key"},{key:"distribution-index",text:this.$t("console.menu.distributionIndex"),name:g,icon:"fa-solid fa-coins"},...this.showSite?[{key:"site-index",text:this.$t("common.nav.site"),name:R,icon:"fa-solid fa-gear"}]:[],...this.showSubsite?[{key:"subsite-index",text:this.$t("common.nav.subsite"),name:B,icon:"fa-solid fa-sitemap"}]:[],{key:"dark-setting",text:this.$t("common.nav.darkMode"),icon:"fa-solid fa-moon",callback:()=>{this.operating.dark=!0}},{key:"locale-setting",text:this.$t("common.nav.locale"),icon:"fa-solid fa-language",callback:()=>{this.operating.locale=!0}},{key:"developerPlatform",text:this.$t("console.menu.developerPlatform"),href:A(),icon:"fa-solid fa-laptop-code"},...this.showSupport?[{key:"support",text:this.$t("common.nav.support"),callback:()=>{this.operating.help=!0},icon:"fa-solid fa-question"}]:[],{key:"logout",text:this.$t("common.nav.logOut"),icon:"fa-solid fa-arrow-right-from-bracket",callback:async()=>{await this.$store.dispatch("logout")}}]}},methods:{onHome(){this.$router.push({name:T})},onNavigate(e){e.name?this.$router.push({name:e.name}):e.href?window.open(C(e.href),"_blank"):e.callback&&e.callback()}}}),Y={class:"profile"},Z={class:"info"},ee={class:"links"},te=["onClick"],oe={class:"icon"},se={class:"text"},ae={class:"suffix"};function ne(e,i,y,I,w,O){const c=t("el-image"),l=t("font-awesome-icon"),u=t("locale-selector"),p=t("help-dialog");return r(),h("div",Y,[s("div",Z,[o(c,{src:e.user.avatar,fit:"cover",class:"avatar"},null,8,["src"]),s("h2",null,m(e.user.username),1),s("div",{style:X({backgroundImage:"url("+e.user.avatar+")"}),class:"background"},null,4)]),s("div",ee,[(r(!0),h(q,null,J(e.links,(a,d)=>(r(),h("a",{key:d,class:M({link:!0,active:e.$route.name===a.name}),onClick:S=>e.onNavigate(a)},[s("span",oe,[o(l,{icon:a.icon,class:"text-sm"},null,8,["icon"])]),s("span",se,m(a.text),1),s("span",ae,[o(l,{icon:"fa-solid fa-chevron-right",class:"text-sm"})])],10,te))),128))]),o(u,{visible:e.operating.locale==!0,onClose:i[0]||(i[0]=a=>e.operating.locale=!1)},null,8,["visible"]),o(p,{visible:e.operating.help==!0,onClose:i[1]||(i[1]=a=>e.operating.help=!1)},null,8,["visible"])])}const Ie=$(W,[["render",ne],["__scopeId","data-v-588fb7cd"]]);export{Ie as default};
@@ -1 +1 @@
1
- import{F as D}from"./index.es-CMIycEfY.js";import{E as W}from"./index-DA_FluBX.js";import{E as oe}from"./index-D0IqUyZl.js";import{d as b,H as c,E as o,z as B,C as s,y as d,D as r,q as n,F as a,O as G,N as q,J as f,x as v,I as U,G as R,K as H,M as E,u as A,c as T,w as se,L as ne}from"./vendor-vue-C5BV5QrY.js";import{D as V,b1 as re,e2 as Y,e3 as Q,R as K,G as ie,ao as L,e4 as Z,e5 as ae,a6 as le}from"./index-M2b128ZH.js";import{a as ce}from"./errorCode-Cqj9Td_Z.js";import{p as I}from"./producer-CY4HO-a2.js";import{b as de}from"./producer-DP85fuAq.js";import{E as ue}from"./index-D-c3cAFR.js";import{a as pe,E as me}from"./index-CL1prdmz.js";import{I as F,S as fe}from"./ScrollList-D2YriCs9.js";import{E as he}from"./index-DYbIRvGT.js";import{E as w}from"./index-BfzxntyX.js";import{E as z}from"./index-Ctk94Ps3.js";import{u as j,F as _e,O as $e,_ as ee,P as ge,a as ve,V as ye,E as ke}from"./IconPark.vue_vue_type_script_setup_true_lang-CZKUVUG6.js";import{E as X,a as x}from"./index-WMYq6_VE.js";import{E as N}from"./index-8zQM9luF.js";import{E as be,a as we}from"./index-xRF2VnUn.js";import{E as Ce,a as Ve}from"./index-Bsidby00.js";import{C as Se}from"./Consumption-BZkNM6Iy.js";import{a as Ue}from"./price-DTrERJBf.js";import{E as Pe,b as Ee,a as Ae}from"./index-zUitDARp.js";import{E as Te}from"./index-DFNAFF2z.js";import{E as Fe}from"./index-CKLvkNh3.js";import{N as Ie}from"./NoTasks-INFj9zWz.js";import{a as Le,E as Ge}from"./index-C_7wmSl9.js";import{l as je}from"./pagination-D5yjLyAE.js";import"./use-form-item-BlmY11uh.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-Bl-Po99g.js";import"./validator-DijqStlu.js";import"./index-DJl11D_I.js";import"./index-2OHKNhci.js";import"./typescript-BWJYf4Zx.js";import"./strings-DGr9fDRd.js";import"./isEqual-Dr8gXji5.js";import"./_Uint8Array-Cr1cjG4I.js";import"./castArray-CNpuHwov.js";import"./debounce-vY0mNUPJ.js";import"./_baseIteratee-C2KvIaBQ.js";import"./index-B2yh3MI5.js";import"./index-CJ2GaDXw.js";import"./_baseClone-CjTgJNX4.js";import"./_initCloneObject-G_TFMsX_.js";import"./index-DSGdn0Vx.js";import"./index-D-qg-A9-.js";import"./index-CGh2-Zso.js";import"./dropdown-oRp0MQI5.js";const De=b({name:"LayoutProducer",components:{ElDrawer:oe,ElButton:W,FontAwesomeIcon:D},data(){return{drawer:!1,preview:!1}},computed:{}}),Re={class:"main flex flex-row flex-1"},Ze={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ze={class:"result h-full flex flex-col flex-1 min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"},Ne={class:"preview h-full w-[300px] flex flex-col"};function Me(e,t,l,i,h,p){const u=r("font-awesome-icon"),m=r("el-button"),_=r("el-drawer");return n(),c("div",Re,[o("div",Ze,[B(e.$slots,"config",{},void 0,!0)]),o("div",ze,[B(e.$slots,"result",{},void 0,!0)]),o("div",Ne,[B(e.$slots,"preview",{},void 0,!0)]),s(m,{circle:"",class:"menu",onClick:t[0]||(t[0]=$=>e.drawer=!0)},{default:d(()=>[s(u,{icon:"fa-solid fa-magic"})]),_:1}),s(_,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=$=>e.drawer=$),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:d(()=>[B(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Oe=V(De,[["render",Me],["__scopeId","data-v-7453886f"]]),Be=b({name:"TypeSelector",components:{ElSelect:me,ElOption:pe,ElSwitch:ue},data(){return{options:[{label:"FUZZ-2.0 Pro",value:"FUZZ-2.0 Pro",info:"8 min"},{label:"FUZZ-2.0",value:"FUZZ-2.0",info:"8 min"},{label:"FUZZ-2.0 Raw",value:"FUZZ-2.0 Raw",info:"8 min"},{label:"FUZZ-1.1 Pro",value:"FUZZ-1.1 Pro",info:"4 min"},{label:"FUZZ-1.0 Pro",value:"FUZZ-1.0 Pro",info:"4 min"},{label:"FUZZ-1.1",value:"FUZZ-1.1",info:"4 min"},{label:"FUZZ-1.0",value:"FUZZ-1.0",info:"2 min"},{label:"FUZZ-0.8",value:"FUZZ-0.8",info:"2 min"}]}},computed:{custom:{get(){return this.$store.state.producer?.config?.custom||!1},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,custom:e})}},instrumental:{get(){return this.$store.state.producer?.config?.instrumental||!1},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,instrumental:e})}},model:{get(){return this.$store.state.producer?.config?.model},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,model:e})}}},mounted(){this.model||(this.model=de)}}),qe={class:"flex items-center justify-between mb-3"},We={class:"text-sm font-bold"},He={class:"mb-3"},Ke={class:"flex items-center mb-1"},Je={class:"text-sm font-bold"},Ye={class:"flex items-center justify-between w-full"},Qe={class:"text-xs text-[var(--el-text-color-placeholder)]"},Xe={key:0,class:"flex items-center justify-between mb-3"},xe={class:"text-sm font-bold"};function et(e,t,l,i,h,p){const u=r("el-switch"),m=r("el-option"),_=r("el-select");return n(),c("div",null,[o("div",qe,[o("span",We,a(e.$t("producer.name.type")),1),s(u,{modelValue:e.custom,"onUpdate:modelValue":t[0]||(t[0]=$=>e.custom=$)},null,8,["modelValue"])]),o("div",He,[o("div",Ke,[o("span",Je,a(e.$t("producer.name.model")),1)]),s(_,{modelValue:e.model,"onUpdate:modelValue":t[1]||(t[1]=$=>e.model=$),class:"w-full",size:"default",placeholder:e.$t("producer.placeholder.select")},{default:d(()=>[(n(!0),c(G,null,q(e.options,$=>(n(),v(m,{key:$.value,label:$.label,value:$.value},{default:d(()=>[o("div",Ye,[o("span",null,a($.label),1),o("span",Qe,a($.info),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),e.custom?(n(),c("div",Xe,[o("span",xe,a(e.$t("producer.name.instrumental")),1),s(u,{modelValue:e.instrumental,"onUpdate:modelValue":t[2]||(t[2]=$=>e.instrumental=$)},null,8,["modelValue"])])):f("",!0)])}const tt=V(Be,[["render",et]]),ot=b({name:"UploadAudio",components:{ElUpload:he,ElButton:W,InfoIcon:F,FontAwesomeIcon:D},emits:["change"],data(){return{fileList:[],uploadUrl:re()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},credential(){return this.$store.state.producer.credential},config(){return this.$store.state.producer.config},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.producer?.config?.audio_id},set(){}}},watch:{urls:{handler(e){this.$emit("change",e)}}},mounted(){this.value||(this.value=void 0),this.onSetAudio()},methods:{onExceed(){w.warning(this.$t("producer.message.uploadReferencesExceed"))},onError(){w.error(this.$t("producer.message.uploadReferencesError"))},async onSuccess(){const e=this.urls?.[0];await this.onGenerateAudioId(e)},async onGenerateAudioId(e){const t={audio_url:e},l=this.credential?.token;if(!l){console.error("no token specified");return}w.info(this.$t("producer.message.startingUploadAudio")),I.upload(t,{token:l}).then(i=>{console.debug("get upload music success",i.data);const h=i.data?.data.audio_id;this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,audio_id:h,action:"upload_extend"}),w.success(this.$t("producer.message.startUploadAudioSuccess"))}).catch(i=>{w.error(i?.response?.data?.error?.message||this.$t("producer.message.startUploadAudioFailed"))})},onSetAudio(){}}}),st={class:"relative"},nt={class:"flex justify-between"},rt={class:"flex justify-start items-center"},it={class:"text-sm font-bold"};function at(e,t,l,i,h,p){const u=r("info-icon"),m=r("font-awesome-icon"),_=r("el-button"),$=r("el-upload");return n(),c("div",st,[o("div",nt,[o("div",rt,[o("span",it,a(e.$t("producer.name.referenceAudios")),1),s(u,{content:e.$t("producer.description.uploadAudios")},null,8,["content"])])]),s($,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=k=>e.fileList=k),name:"file",limit:1,class:"upload-wrapper",action:e.uploadUrl,accept:".mp3","show-file-list":!0,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{default:d(()=>[s(_,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:d(()=>[s(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),U(" "+a(e.$t("producer.button.uploadAudios")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const lt=V(ot,[["render",at],["__scopeId","data-v-e4cd0467"]]),ct="",dt=b({name:"PromptInput",components:{ElInput:z,InfoIcon:F},computed:{prompt:{get(){return this.$store.state.producer?.config?.prompt},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=ct)}}),ut={class:"field"},pt={class:"flex items-center mb-1"},mt={class:"text-sm font-bold"};function ft(e,t,l,i,h,p){const u=r("info-icon"),m=r("el-input");return n(),c("div",ut,[o("div",pt,[o("span",mt,a(e.$t("producer.name.songDescription")),1),s(u,{content:e.$t("producer.description.prompt")},null,8,["content"])]),s(m,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=_=>e.prompt=_),rows:4,type:"textarea",placeholder:e.$t("producer.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const ht=V(dt,[["render",ft]]),_t="",$t=b({name:"LyricInput",components:{ElInput:z,ElButton:W,FontAwesomeIcon:D,InfoIcon:F},data(){return{generatingLyrics:!1}},computed:{lyric:{get(){return this.$store.state.producer?.config?.lyric},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,lyric:e})}},config(){return this.$store.state.producer?.config},credential(){return this.$store.state.producer?.credential}},mounted(){this.lyric||(this.lyric=_t)},methods:{async onGenerateLyrics(){const e=this.credential?.token;if(!e)return;const t=this.config?.style||this.config?.title||"a beautiful song";this.generatingLyrics=!0,w.info(this.$t("producer.message.generatingLyrics"));try{const i=(await I.lyric({prompt:t},{token:e})).data?.data;i?.text&&(this.lyric=i.text,i?.title&&!this.config?.title&&this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,lyric:i.text,title:i.title}),w.success(this.$t("producer.message.generateLyricsSuccess")))}catch{w.error(this.$t("producer.message.generateLyricsFailed"))}finally{this.generatingLyrics=!1}}}}),gt={class:"field"},vt={class:"flex items-center justify-between mb-1"},yt={class:"flex items-center"},kt={class:"text-sm font-bold"};function bt(e,t,l,i,h,p){const u=r("info-icon"),m=r("font-awesome-icon"),_=r("el-button"),$=r("el-input");return n(),c("div",gt,[o("div",vt,[o("div",yt,[o("span",kt,a(e.$t("producer.name.lyrics")),1),s(u,{content:e.$t("producer.description.lyrics")},null,8,["content"])]),e.config?.action!=="extend"?(n(),v(_,{key:0,size:"small",loading:e.generatingLyrics,round:"",onClick:e.onGenerateLyrics},{default:d(()=>[e.generatingLyrics?f("",!0):(n(),v(m,{key:0,icon:"fa-solid fa-wand-magic-sparkles",class:"mr-1"})),U(" "+a(e.$t("producer.button.generate_lyrics")),1)]),_:1},8,["loading","onClick"])):f("",!0)]),e.config?.action!=="extend"?(n(),v($,{key:0,modelValue:e.lyric,"onUpdate:modelValue":t[0]||(t[0]=k=>e.lyric=k),rows:5,type:"textarea",class:"lyrics",placeholder:e.$t("producer.placeholder.lyrics")},null,8,["modelValue","placeholder"])):(n(),v($,{key:1,modelValue:e.lyric,"onUpdate:modelValue":t[1]||(t[1]=k=>e.lyric=k),rows:5,type:"textarea",class:"lyrics",placeholder:e.$t("producer.placeholder.extend.lyrics")},null,8,["modelValue","placeholder"]))])}const wt=V($t,[["render",bt],["__scopeId","data-v-88c6da2b"]]),Ct=b({name:"StyleInput",components:{ElInput:z,InfoIcon:F},computed:{style:{get(){return this.$store.state.producer?.config?.style},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,style:e})}}}}),Vt={class:"field"},St={class:"flex items-center justify-between mb-1"},Ut={class:"flex items-center"},Pt={class:"text-sm font-bold"};function Et(e,t,l,i,h,p){const u=r("info-icon"),m=r("el-input");return n(),c("div",Vt,[o("div",St,[o("div",Ut,[o("span",Pt,a(e.$t("producer.name.style")),1),s(u,{content:e.$t("producer.description.style")},null,8,["content"])])]),s(m,{modelValue:e.style,"onUpdate:modelValue":t[0]||(t[0]=_=>e.style=_),rows:2,type:"textarea",placeholder:e.$t("producer.placeholder.style")},null,8,["modelValue","placeholder"])])}const At=V(Ct,[["render",Et]]),Tt=b({name:"TitleInput",components:{ElInput:z,InfoIcon:F},computed:{title:{get(){return this.$store.state.producer?.config?.title},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,title:e})}}}}),Ft={class:"field"},It={class:"flex items-center mb-1"},Lt={class:"text-sm font-bold"};function Gt(e,t,l,i,h,p){const u=r("info-icon"),m=r("el-input");return n(),c("div",Ft,[o("div",It,[o("span",Lt,a(e.$t("producer.name.title")),1),s(u,{content:e.$t("producer.description.title")},null,8,["content"])]),s(m,{modelValue:e.title,"onUpdate:modelValue":t[0]||(t[0]=_=>e.title=_),placeholder:e.$t("producer.placeholder.title")},null,8,["modelValue","placeholder"])])}const jt=V(Tt,[["render",Gt]]),Dt=b({name:"ExtendFromInput",components:{ElImage:N,ElIcon:K,ElInputNumber:X,VideoPlay:Q,VideoPause:Y},data(){return{}},computed:{audio(){return this.$store.state.producer?.config?.audio},value:{get(){return this.$store.state.producer?.config?.continue_at},set(e){console.debug("set continue_at",e),this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,continue_at:e?parseInt(e):void 0})}}},mounted(){this.value||(this.value=void 0)},methods:{handleChange(e){if(e===void 0){this.value=void 0;return}e<0?this.value=0:e>this.audio?.duration?this.value=this.audio?.duration:this.value=e},useFormatDuring:j,onPlay(e){this.$store.dispatch("producer/setAudio",{...this.$store.state.producer.audio,...e,state:"playing"}),console.log("on play")},onPause(e){this.$store.dispatch("producer/setAudio",{...this.$store.state.producer.audio,...e,state:"paused"}),console.log("on pause")},onClick(e){this.$store.state?.producer?.audio?.id!==e.id&&this.onPlay({...e,progress:0})}}}),Rt={class:"field"},Zt={class:"box"},zt={class:"title font-bold"},Nt={class:"input-wrapper"},Mt={class:"task"},Ot={class:"left"},Bt={key:2,class:"duration"},qt={class:"info"},Wt={class:"title"},Ht={class:"style"};function Kt(e,t,l,i,h,p){const u=r("el-input-number"),m=r("el-image"),_=r("video-pause"),$=r("el-icon"),k=r("video-play"),y=H("loading");return n(),c("div",Rt,[o("div",Zt,[o("h2",zt,a(e.$t("producer.name.extend")),1),o("div",Nt,[s(u,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=P=>e.value=P),class:"value",min:0,max:e.audio?.duration,controls:!1,placeholder:e.$t("producer.placeholder.extend.continue_at"),onChange:e.handleChange},null,8,["modelValue","max","placeholder","onChange"])])]),o("div",Mt,[e.audio?(n(),c("div",{key:0,class:"audio",onClick:t[3]||(t[3]=P=>e.onClick(e.audio))},[R((n(),c("div",Ot,[s(m,{src:e.audio?.image_url,class:"cover",fit:"cover"},null,8,["src"]),e.audio?.audio_url&&e.$store.state?.producer?.audio?.id===e.audio.id&&e.$store.state?.producer?.audio?.state==="playing"?(n(),c("div",{key:0,class:"overlay",onClick:t[1]||(t[1]=P=>e.onPause(e.audio))},[s($,null,{default:d(()=>[s(_)]),_:1})])):f("",!0),e.audio?.audio_url&&(e.$store.state?.producer?.audio?.id!==e.audio.id||e.$store.state?.producer?.audio?.id===e.audio.id&&e.$store.state?.producer?.audio?.state==="paused")?(n(),c("div",{key:1,class:"overlay",onClick:t[2]||(t[2]=P=>e.onPlay(e.audio))},[s($,null,{default:d(()=>[s(k)]),_:1})])):f("",!0),e.audio?.duration?(n(),c("div",Bt,a(e.useFormatDuring(e.audio?.duration)),1)):f("",!0)])),[[y,!e.audio?.audio_url]]),o("div",qt,[o("h2",Wt,a(e.audio?.title),1),o("p",Ht,a(e.audio?.style),1)])])):f("",!0)])])}const Jt=V(Dt,[["render",Kt],["__scopeId","data-v-26d43480"]]),Yt=b({name:"CoverFromInput",components:{ElImage:N,ElIcon:K,VideoPlay:Q,VideoPause:Y},data(){return{}},computed:{audio(){return this.$store.state.producer?.config?.audio},value:{get(){return this.$store.state.producer?.config?.continue_at},set(e){console.debug("set continue_at",e),this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,continue_at:e?parseInt(e):void 0})}}},mounted(){this.value||(this.value=void 0)},methods:{handleChange(e){e<0?this.value=0:e>this.audio?.duration?this.value=this.audio?.duration:this.value=e},useFormatDuring:j,onPlay(e){this.$store.dispatch("producer/setAudio",{...this.$store.state.producer.audio,...e,state:"playing"}),console.log("on play")},onPause(e){this.$store.dispatch("producer/setAudio",{...this.$store.state.producer.audio,...e,state:"paused"}),console.log("on pause")},onClick(e){this.$store.state?.producer?.audio?.id!==e.id&&this.onPlay({...e,progress:0})}}}),Qt={class:"field"},Xt={class:"box"},xt={class:"title font-bold"},eo={class:"task"},to={class:"left"},oo={key:2,class:"duration"},so={class:"info"},no={class:"title"},ro={class:"style"};function io(e,t,l,i,h,p){const u=r("el-image"),m=r("video-pause"),_=r("el-icon"),$=r("video-play"),k=H("loading");return n(),c("div",Qt,[o("div",Xt,[o("h2",xt,a(e.$t("producer.name.cover")),1)]),o("div",eo,[e.audio?(n(),c("div",{key:0,class:"audio",onClick:t[2]||(t[2]=y=>e.onClick(e.audio))},[R((n(),c("div",to,[s(u,{src:e.audio?.image_url,class:"cover",fit:"cover"},null,8,["src"]),e.audio?.audio_url&&e.$store.state?.producer?.audio?.id===e.audio.id&&e.$store.state?.producer?.audio?.state==="playing"?(n(),c("div",{key:0,class:"overlay",onClick:t[0]||(t[0]=y=>e.onPause(e.audio))},[s(_,null,{default:d(()=>[s(m)]),_:1})])):f("",!0),e.audio?.audio_url&&(e.$store.state?.producer?.audio?.id!==e.audio.id||e.$store.state?.producer?.audio?.id===e.audio.id&&e.$store.state?.producer?.audio?.state==="paused")?(n(),c("div",{key:1,class:"overlay",onClick:t[1]||(t[1]=y=>e.onPlay(e.audio))},[s(_,null,{default:d(()=>[s($)]),_:1})])):f("",!0),e.audio?.duration?(n(),c("div",oo,a(e.useFormatDuring(e.audio?.duration)),1)):f("",!0)])),[[k,!e.audio?.audio_url]]),o("div",so,[o("h2",no,a(e.audio?.title),1),o("p",ro,a(e.audio?.style),1)])])):f("",!0)])])}const ao=V(Yt,[["render",io],["__scopeId","data-v-d8a8e583"]]),lo=b({name:"VocalGenderSelector",components:{ElRadioGroup:we,ElRadioButton:be,InfoIcon:F},computed:{vocalGender:{get(){return this.$store.state.producer?.config?.vocal_gender||""},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,vocal_gender:e||void 0})}}}}),co={class:"mb-2"},uo={class:"flex items-center mb-1"},po={class:"text-sm font-bold"};function mo(e,t,l,i,h,p){const u=r("info-icon"),m=r("el-radio-button"),_=r("el-radio-group");return n(),c("div",co,[o("div",uo,[o("span",po,a(e.$t("producer.name.vocalGender")),1),s(u,{content:e.$t("producer.description.vocalGender")},null,8,["content"])]),s(_,{modelValue:e.vocalGender,"onUpdate:modelValue":t[0]||(t[0]=$=>e.vocalGender=$)},{default:d(()=>[s(m,{value:""},{default:d(()=>[U(a(e.$t("producer.gender.auto")),1)]),_:1}),s(m,{value:"f"},{default:d(()=>[U(a(e.$t("producer.gender.female")),1)]),_:1}),s(m,{value:"m"},{default:d(()=>[U(a(e.$t("producer.gender.male")),1)]),_:1})]),_:1},8,["modelValue"])])}const fo=V(lo,[["render",mo]]),ho=b({name:"AdvancedParams",components:{ElCollapse:Ve,ElCollapseItem:Ce,ElInput:z,ElSlider:x,ElInputNumber:X},data(){return{activeNames:[]}},computed:{config(){return this.$store.state.producer?.config},styleNegative:{get(){return this.$store.state.producer?.config?.style_negative||""},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,style_negative:e||void 0})}},lyricPrompt:{get(){return this.$store.state.producer?.config?.lyric_prompt||""},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,lyric_prompt:e||void 0})}},weirdness:{get(){return this.$store.state.producer?.config?.weirdness??0},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,weirdness:e||void 0})}},soundStrength:{get(){return this.$store.state.producer?.config?.sound_strength??50},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,sound_strength:e})}},lyricsStrength:{get(){return this.$store.state.producer?.config?.lyrics_strength??50},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,lyrics_strength:e})}},seed:{get(){return this.$store.state.producer?.config?.seed},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,seed:e})}}}}),_o={key:0,class:"mb-3"},$o={class:"flex items-center mb-1"},go={class:"text-xs font-bold"},vo={key:1,class:"mb-3"},yo={class:"flex items-center mb-1"},ko={class:"text-xs font-bold"},bo={key:2,class:"mb-3"},wo={class:"flex items-center justify-between mb-1"},Co={class:"text-xs font-bold"},Vo={class:"text-xs text-[var(--el-text-color-secondary)]"},So={key:3,class:"mb-3"},Uo={class:"flex items-center justify-between mb-1"},Po={class:"text-xs font-bold"},Eo={class:"text-xs text-[var(--el-text-color-secondary)]"},Ao={key:4,class:"mb-3"},To={class:"flex items-center justify-between mb-1"},Fo={class:"text-xs font-bold"},Io={class:"text-xs text-[var(--el-text-color-secondary)]"},Lo={key:5,class:"mb-3"},Go={class:"flex items-center mb-1"},jo={class:"text-xs font-bold"};function Do(e,t,l,i,h,p){const u=r("el-input"),m=r("el-slider"),_=r("el-input-number"),$=r("el-collapse-item"),k=r("el-collapse");return n(),v(k,{modelValue:e.activeNames,"onUpdate:modelValue":t[6]||(t[6]=y=>e.activeNames=y),class:"advanced-collapse"},{default:d(()=>[s($,{title:e.$t("producer.name.advancedParams"),name:"advanced"},{default:d(()=>[e.config?.custom?(n(),c("div",_o,[o("div",$o,[o("span",go,a(e.$t("producer.name.styleNegative")),1)]),s(u,{modelValue:e.styleNegative,"onUpdate:modelValue":t[0]||(t[0]=y=>e.styleNegative=y),placeholder:e.$t("producer.placeholder.styleNegative")},null,8,["modelValue","placeholder"])])):f("",!0),e.config?.custom&&!e.config?.instrumental?(n(),c("div",vo,[o("div",yo,[o("span",ko,a(e.$t("producer.name.lyricPrompt")),1)]),s(u,{modelValue:e.lyricPrompt,"onUpdate:modelValue":t[1]||(t[1]=y=>e.lyricPrompt=y),placeholder:e.$t("producer.placeholder.lyricPrompt")},null,8,["modelValue","placeholder"])])):f("",!0),e.config?.custom?(n(),c("div",bo,[o("div",wo,[o("span",Co,a(e.$t("producer.name.weirdness")),1),o("span",Vo,a(e.weirdness??0),1)]),s(m,{modelValue:e.weirdness,"onUpdate:modelValue":t[2]||(t[2]=y=>e.weirdness=y),min:0,max:100,step:1},null,8,["modelValue"])])):f("",!0),e.config?.custom?(n(),c("div",So,[o("div",Uo,[o("span",Po,a(e.$t("producer.name.soundStrength")),1),o("span",Eo,a(e.soundStrength??50),1)]),s(m,{modelValue:e.soundStrength,"onUpdate:modelValue":t[3]||(t[3]=y=>e.soundStrength=y),min:0,max:100,step:1},null,8,["modelValue"])])):f("",!0),e.config?.custom&&!e.config?.instrumental?(n(),c("div",Ao,[o("div",To,[o("span",Fo,a(e.$t("producer.name.lyricsStrength")),1),o("span",Io,a(e.lyricsStrength??50),1)]),s(m,{modelValue:e.lyricsStrength,"onUpdate:modelValue":t[4]||(t[4]=y=>e.lyricsStrength=y),min:0,max:100,step:1},null,8,["modelValue"])])):f("",!0),e.config?.custom?(n(),c("div",Lo,[o("div",Go,[o("span",jo,a(e.$t("producer.name.seed")),1)]),s(_,{modelValue:e.seed,"onUpdate:modelValue":t[5]||(t[5]=y=>e.seed=y),min:0,controls:!1,placeholder:e.$t("producer.placeholder.seed"),class:"w-full"},null,8,["modelValue","placeholder"])])):f("",!0)]),_:1},8,["title"])]),_:1},8,["modelValue"])}const Ro=V(ho,[["render",Do],["__scopeId","data-v-88e65aee"]]),Zo=b({name:"ReplaceSectionInput",components:{ElInputNumber:X,ElImage:N,InfoIcon:F},computed:{audio(){return this.$store.state.producer?.config?.audio},replaceSectionStart:{get(){return this.$store.state.producer?.config?.replace_section_start},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,replace_section_start:e})}},replaceSectionEnd:{get(){return this.$store.state.producer?.config?.replace_section_end},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,replace_section_end:e})}}},methods:{onClick(e){this.$store.dispatch("producer/setAudio",{...this.$store.state.producer.audio,...e,state:"playing"})}}}),zo={class:"field"},No={class:"flex items-center mb-2"},Mo={class:"text-sm font-bold m-0"},Oo={key:0,class:"task mb-2"},Bo={class:"left relative w-[50px] h-[50px] mr-3 flex-shrink-0"},qo={class:"info flex-1 min-w-0"},Wo={class:"text-sm font-bold m-0 truncate"},Ho={class:"text-xs text-[var(--el-text-color-secondary)] m-0 truncate"},Ko={class:"flex gap-2"};function Jo(e,t,l,i,h,p){const u=r("info-icon"),m=r("el-image"),_=r("el-input-number"),$=H("loading");return n(),c("div",zo,[o("div",No,[o("h2",Mo,a(e.$t("producer.name.replaceSection")),1),s(u,{content:e.$t("producer.description.replaceSection")},null,8,["content"])]),e.audio?(n(),c("div",Oo,[o("div",{class:"audio flex items-center",onClick:t[0]||(t[0]=k=>e.onClick(e.audio))},[R((n(),c("div",Bo,[s(m,{src:e.audio?.image_url,class:"w-full h-full rounded",fit:"cover"},null,8,["src"])])),[[$,!e.audio?.audio_url]]),o("div",qo,[o("h2",Wo,a(e.audio?.title),1),o("p",Ho,a(e.audio?.style),1)])])])):f("",!0),o("div",Ko,[s(_,{modelValue:e.replaceSectionStart,"onUpdate:modelValue":t[1]||(t[1]=k=>e.replaceSectionStart=k),class:"flex-1",min:0,max:e.audio?.duration,controls:!1,placeholder:e.$t("producer.placeholder.replaceSectionStart")},null,8,["modelValue","max","placeholder"]),s(_,{modelValue:e.replaceSectionEnd,"onUpdate:modelValue":t[2]||(t[2]=k=>e.replaceSectionEnd=k),class:"flex-1",min:e.replaceSectionStart||0,max:e.audio?.duration,controls:!1,placeholder:e.$t("producer.placeholder.replaceSectionEnd")},null,8,["modelValue","min","max","placeholder"])])])}const Yo=V(Zo,[["render",Jo]]),Qo=b({name:"PresetPanel",components:{TypeSelector:tt,PromptInput:ht,LyricInput:wt,StyleInput:At,TitleInput:jt,ExtendFromInput:Jt,CoverFromInput:ao,UploadAudio:lt,VocalGenderSelector:fo,AdvancedParams:Ro,ReplaceSectionInput:Yo,FontAwesomeIcon:D,ElButton:W,Consumption:Se},emits:["generate"],computed:{config(){return this.$store.state.producer?.config},consumption(){return Ue(this.config,this.service?.cost)},service(){return this.$store.state.producer?.service},generateButtonText(){const e=this.config?.action;return e==="extend"?this.$t("producer.button.extend"):e==="cover"?this.$t("producer.button.cover_music"):e==="variation"?this.$t("producer.button.variation"):e==="replace_section"?this.$t("producer.button.replace_section"):e==="stems"?this.$t("producer.button.get_stems"):e==="swap_vocals"?this.$t("producer.button.swap_vocals"):e==="swap_instrumentals"?this.$t("producer.button.swap_instrumentals"):this.$t("producer.button.generate")}},methods:{onGenerate(){this.$emit("generate")}}}),Xo={class:"flex flex-col h-full"},xo={class:"flex-1 overflow-y-auto p-5"},es={class:"flex flex-col items-center justify-center px-5 pb-5"};function ts(e,t,l,i,h,p){const u=r("type-selector"),m=r("upload-audio"),_=r("prompt-input"),$=r("lyric-input"),k=r("style-input"),y=r("title-input"),P=r("vocal-gender-selector"),S=r("extend-from-input"),M=r("cover-from-input"),O=r("replace-section-input"),J=r("advanced-params"),g=r("consumption"),C=r("font-awesome-icon"),te=r("el-button");return n(),c("div",Xo,[o("div",xo,[s(u,{class:"mb-4"}),s(m,{class:"mb-4"}),e.config?.custom?f("",!0):(n(),v(_,{key:0,class:"mb-4"})),e.config?.custom&&!e.config.instrumental?(n(),v($,{key:1,class:"mb-4"})):f("",!0),e.config?.custom?(n(),v(k,{key:2,class:"mb-4"})):f("",!0),e.config?.custom?(n(),v(y,{key:3,class:"mb-4"})):f("",!0),e.config?.custom&&!e.config.instrumental?(n(),v(P,{key:4,class:"mb-4"})):f("",!0),e.config?.action==="extend"?(n(),v(S,{key:5,class:"mb-4"})):f("",!0),e.config?.action==="cover"?(n(),v(M,{key:6,class:"mb-4"})):f("",!0),e.config?.action==="replace_section"?(n(),v(O,{key:7,class:"mb-4"})):f("",!0),s(J,{class:"mb-4"})]),o("div",es,[s(g,{value:e.consumption,service:e.service},null,8,["value","service"]),s(te,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[s(C,{icon:"fa-solid fa-magic",class:"mr-2"}),U(" "+a(e.generateButtonText),1)]),_:1},8,["onClick"])])])}const os=V(Qo,[["render",ts],["__scopeId","data-v-6642bb3c"]]),ss="https://webhook.acedata.cloud/producer",ns=b({name:"TaskPreview",components:{ElImage:N,ElIcon:K,ElTooltip:Te,FontAwesomeIcon:D,VideoPlay:Q,VideoPause:Y,ElDropdown:Ae,ElDropdownMenu:Ee,ElDropdownItem:Pe,Loading:ie},props:{modelValue:{type:Object,required:!0}},data(){return{isFetchingVideoUrl:!1,isFetchingWav:!1}},computed:{loading(){return this.$store.state.producer?.status?.getApplications===L.Request},credential(){return this.$store.state.producer.credential},config(){return this.$store.state.producer.config},task(){return this.$store.state.producer?.tasks},audios(){const e=this.modelValue?.response?.data??[],t=this.modelValue?.request?.action;return t?e.map(l=>({...l,action:t})):e},application(){return this.$store.state.producer?.application},active(){return this.$store.state.producer?.tasks?.active}},methods:{useFormatDuring:j,onPlay(e){this.$store.dispatch("producer/setAudio",{...this.$store.state.producer.audio,...e,state:"playing"}),console.log("on play")},onPause(e){this.$store.dispatch("producer/setAudio",{...this.$store.state.producer.audio,...e,state:"paused"}),console.log("on pause")},onClick(e){this.$store.state?.producer?.audio?.id!==e.id&&this.onPlay({...e,progress:0})},onExtend(e,t){e.stopPropagation(),console.debug("set config",t),this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,model:t.model,custom:!0,instrumental:!1,style:t.style,action:"extend",audio:t,audio_id:t.id,continue_at:t.duration})},onDownload(e,t){e&&e.stopPropagation();const i=new URL(t).pathname,h=i.substring(i.lastIndexOf("/")+1);fetch(t).then(p=>p.blob()).then(p=>{_e.saveAs(p,h)})},async handleVideoDownload(e){if(e.video_url){this.onDownload(null,e.video_url);return}if(!this.isFetchingVideoUrl)try{this.isFetchingVideoUrl=!0;const t=await this.fetchVideoUrlFromApi(e?.id);console.log(`get videoUrl: ${t}`),e.video_url=t,this.onDownload(null,t)}catch(t){console.error("get videoUrl failed:",t),w.error(this.$t("producer.message.getVideoUrlFailed"))}finally{this.isFetchingVideoUrl=!1}},async fetchVideoUrlFromApi(e){return new Promise((t,l)=>{const i={audio_id:e},h=this.credential?.token;if(!h){console.error("no token specified"),l(new Error("No token specified"));return}I.video(i,{token:h}).then(p=>{const u=p.data?.data?.video_url;u?t(u):l(new Error("Video URL not found in response"))}).catch(p=>{l(p)})})},onPreview(e,t){e.stopPropagation(),window.open(t,"_blank")},async onGetStems(e){await this.onGenerateAudioUrl("stems",e)},onCover(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,model:e.model,custom:!0,instrumental:!1,style:e.style,action:"cover",audio:e,audio_id:e.id})},onVariation(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,model:e.model,custom:!0,style:e.style,action:"variation",audio:e,audio_id:e.id})},async onSwapVocals(e){await this.onGenerateAudioUrl("swap_vocals",e)},async onSwapInstrumentals(e){await this.onGenerateAudioUrl("swap_instrumentals",e)},async onGetAllStems(e){await this.onGenerateAudioUrl("all_stems",e)},onReplaceSection(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,model:e.model,custom:!0,instrumental:!1,style:e.style,action:"replace_section",audio:e,audio_id:e.id,replace_section_start:0,replace_section_end:Math.min(30,e.duration||30)})},async handleWavDownload(e){if(!e?.id||this.isFetchingWav)return;const t=this.credential?.token;if(t)try{this.isFetchingWav=!0,w.info(this.$t("producer.message.fetchingWav"));const i=(await I.wav({audio_id:e.id},{token:t})).data?.data?.audio_url;i?this.onDownload(null,i):w.error(this.$t("producer.message.fetchWavFailed"))}catch{w.error(this.$t("producer.message.fetchWavFailed"))}finally{this.isFetchingWav=!1}},async onGenerateAudioUrl(e,t){const l={action:e,audio_id:t,callback_url:ss},i=this.credential?.token;if(!i){console.error("no token specified");return}w.info(this.$t("producer.message.startingTask")),I.audio(l,{token:i}).then(()=>{w.success(this.$t("producer.message.startTaskSuccess"))}).catch(h=>{w.error(h?.response?.data?.error?.message||this.$t("producer.message.startTaskFailed"))}).finally(async()=>{await this.onGetTasks(),await this.onScrollDown()})},async onScrollDown(){setTimeout(()=>{const e=document.querySelector(".tasks");e&&(e.scrollTop=e.scrollHeight)},1e3)},async onGetTasks(){if(this.loading){console.debug("loading");return}await this.$store.dispatch("producer/getTasks",{limit:30,offset:0})}}}),rs={class:"task"},is=["onClick"],as={class:"left"},ls=["onClick"],cs=["onClick"],ds={key:2,class:"duration"},us={class:"info"},ps={class:"title"},ms={class:"style"},fs={class:"right"},hs={class:"el-dropdown-link"},_s={class:"flex items-center min-w-[120px]"},$s={class:"flex items-center min-w-[120px]"},gs={class:"el-dropdown-link"};function vs(e,t,l,i,h,p){const u=r("el-image"),m=r("video-pause"),_=r("el-icon"),$=r("video-play"),k=r("font-awesome-icon"),y=r("el-tooltip"),P=r("Loading"),S=r("el-dropdown-item"),M=r("el-dropdown-menu"),O=r("el-dropdown"),J=H("loading");return n(),c("div",rs,[(n(!0),c(G,null,q(e.audios,g=>(n(),c("div",{key:g.id,class:"audio",onClick:E(C=>e.onClick(g),["stop"])},[R((n(),c("div",as,[s(u,{src:g?.image_url,class:"cover",fit:"cover",lazy:""},null,8,["src"]),g?.audio_url&&e.$store.state?.producer?.audio?.id===g.id&&e.$store.state?.producer?.audio?.state==="playing"?(n(),c("div",{key:0,class:"overlay",onClick:E(C=>e.onPause(g),["stop"])},[s(_,null,{default:d(()=>[s(m)]),_:1})],8,ls)):f("",!0),g?.audio_url&&(e.$store.state?.producer?.audio?.id!==g.id||e.$store.state?.producer?.audio?.id===g.id&&e.$store.state?.producer?.audio?.state==="paused")?(n(),c("div",{key:1,class:"overlay",onClick:E(C=>e.onPlay(g),["stop"])},[s(_,null,{default:d(()=>[s($)]),_:1})],8,cs)):f("",!0),g?.duration?(n(),c("div",ds,a(e.useFormatDuring(g?.duration)),1)):f("",!0)])),[[J,!g?.audio_url]]),o("div",us,[o("h2",ps,a(g?.title),1),o("p",ms,a(g?.style),1)]),o("div",fs,[s(O,null,{dropdown:d(()=>[s(M,null,{default:d(()=>[s(S,{disabled:e.isFetchingVideoUrl,onClick:C=>e.handleVideoDownload(g)},{default:d(()=>[o("div",_s,[e.isFetchingVideoUrl?(n(),v(_,{key:0,class:"is-loading mr-2"},{default:d(()=>[s(P)]),_:1})):f("",!0),o("span",null,a(e.$t("producer.button.download_video")),1)])]),_:1},8,["disabled","onClick"]),g?.audio_url?(n(),v(S,{key:0,onClick:E(C=>e.onDownload(C,g?.audio_url),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.download_audio")),1)]),_:1},8,["onClick"])):f("",!0),s(S,{disabled:e.isFetchingWav,onClick:C=>e.handleWavDownload(g)},{default:d(()=>[o("div",$s,[e.isFetchingWav?(n(),v(_,{key:0,class:"is-loading mr-2"},{default:d(()=>[s(P)]),_:1})):f("",!0),o("span",null,a(e.$t("producer.button.download_wav")),1)])]),_:1},8,["disabled","onClick"])]),_:2},1024)]),default:d(()=>[o("span",hs,[s(y,{effect:"dark",content:e.$t("producer.button.download"),placement:"top"},{default:d(()=>[g?.audio_url||g?.video_url?(n(),v(k,{key:0,icon:"fa-solid fa-download",class:"icon icon-download"})):f("",!0)]),_:2},1032,["content"])])]),_:2},1024),s(O,null,{dropdown:d(()=>[s(M,null,{default:d(()=>[g?.audio_url?(n(),v(S,{key:0,onClick:E(C=>e.onExtend(C,g),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.extend")),1)]),_:1},8,["onClick"])):f("",!0),g.id?(n(),v(S,{key:1,onClick:E(C=>e.onGetStems(g.id),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.get_stems")),1)]),_:1},8,["onClick"])):f("",!0),g.id?(n(),v(S,{key:2,onClick:E(C=>e.onGetAllStems(g.id),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.all_stems")),1)]),_:1},8,["onClick"])):f("",!0),s(S,{onClick:E(C=>e.onCover(g),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.cover_music")),1)]),_:1},8,["onClick"]),g?.id?(n(),v(S,{key:3,onClick:E(C=>e.onVariation(g),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.variation")),1)]),_:1},8,["onClick"])):f("",!0),g?.id?(n(),v(S,{key:4,onClick:E(C=>e.onSwapVocals(g.id),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.swap_vocals")),1)]),_:1},8,["onClick"])):f("",!0),g?.id?(n(),v(S,{key:5,onClick:E(C=>e.onSwapInstrumentals(g.id),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.swap_instrumentals")),1)]),_:1},8,["onClick"])):f("",!0),g?.id?(n(),v(S,{key:6,onClick:E(C=>e.onReplaceSection(g),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.replace_section")),1)]),_:1},8,["onClick"])):f("",!0)]),_:2},1024)]),default:d(()=>[o("span",gs,[s(y,{effect:"dark",content:e.$t("producer.button.more"),placement:"top"},{default:d(()=>[g?.audio_url||g?.video_url?(n(),v(k,{key:0,icon:"fa-solid fa-ellipsis",class:"icon icon-ellipsis"})):f("",!0)]),_:2},1032,["content"])])]),_:2},1024)])],8,is))),128))])}const ys=V(ns,[["render",vs]]),ks={class:"player-slider"},bs=b({__name:"PlayerSlider",setup(e){const t=Z(),l=T({get:()=>t.state.producer?.audio?.progress,set:u=>t.commit("producer/setAudio",{...t.state.producer.audio,progress:u})}),i=T({get:()=>t.state.producer?.audio?.duration,set:u=>t.commit("producer/setAudio",{...t.state.producer.audio,duration:u})}),h=()=>{},p=u=>t.dispatch("producer/setAudio",{...t.state.producer.audio,progress:u});return(u,m)=>(n(),c("div",ks,[s(A(x),{modelValue:l.value,"onUpdate:modelValue":m[0]||(m[0]=_=>l.value=_),"show-tooltip":!1,min:0,max:i.value,onChange:p,onInput:h},null,8,["modelValue","max"])]))}}),ws={class:"flex player-song"},Cs=["src"],Vs={class:"ml-2 text-xs flex flex-col justify-between"},Ss={class:"w-52 2xl:w-96 cursor-pointer truncate"},Us={class:"flex"},Ps={class:"ml-2 text-dc"},Es=b({__name:"PlayerSong",setup(e){const t=Z(),l=T({get:()=>t.state.producer.audio,set:i=>t.commit("producer/setAudio",i)});return se(l,(i,h)=>{if(i?.audio_url!==h?.audio_url){console.log("audio changed",i),i.object&&(console.log("111",i.object),i.object.pause(),delete i.object);const p=new Audio(i.audio_url);i.state==="playing"?p.play():p.pause(),p.addEventListener("loadedmetadata",()=>{p.currentTime=0,p.addEventListener("timeupdate",()=>{t.commit("producer/setAudio",{...t.state.producer.audio,progress:p.currentTime})})}),t.commit("producer/setAudio",{...t.state.producer.audio,object:p})}else if(i?.progress!==h?.progress&&Math.abs(i.progress-i.object.currentTime)>2){console.log("progress changed",i.progress);const p=t.state.producer.audio;p.object&&(p.object.currentTime=p.progress)}else i?.state!==h?.state&&(console.log("state changed",i.state),i.object&&(i.state==="playing"?i.object.play():i.object.pause()));i?.volume!==h?.volume&&(console.log("volume changed",i.volume),i.object&&(i.object.volume=i.volume/100))}),(i,h)=>(n(),c("div",ws,[o("img",{alt:"",class:"w-11 h-11 rounded",src:l.value?.image_url||A($e)},null,8,Cs),o("div",Vs,[o("div",Ss,[o("div",Us,[o("span",null,a(l.value?.title||"Music"),1),o("span",Ps,"- "+a(l.value?.style||"SmallRuralDog"),1)])])])]))}}),As={class:"flex justify-end items-center gap-x-2.5"},Ts={class:"text-xs"},Fs=b({__name:"PlayerAction",setup(e){const t=Z(),l=T({get:()=>t.state.producer?.audio?.progress,set:h=>t.commit("producer/setAudio",{...t.state.producer.audio,progress:h})}),i=T({get:()=>t.state.producer?.audio?.duration,set:h=>t.commit("producer/setAudio",{...t.state.producer.audio,duration:h})});return(h,p)=>(n(),c("div",As,[o("span",Ts,a(A(j)(l.value))+" / "+a(A(j)(i.value)),1)]))}}),Is={class:"player-volume flex flex-col items-center pt-2"},Ls={class:"text-sm mt-3"},Gs=b({__name:"PlayerVolumeSlider",setup(e){const t=Z(),l=T({get:()=>t.state.producer.audio?.volume,set:p=>t.commit("producer/setAudio",{...t.state.producer.audio,volume:p})}),i=T({get:()=>t.state.producer.audio?.muted,set:p=>t.commit("producer/setAudio",{...t.state.producer.audio,muted:p})}),h=p=>t.dispatch("producer/setVolume",p);return(p,u)=>(n(),c("div",Is,[s(A(x),{modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=m=>l.value=m),vertical:"",height:"100px","show-tooltip":!1,max:100,min:0,size:"small",disabled:i.value,onInput:h},null,8,["modelValue","disabled"]),o("div",Ls,a(l.value),1)]))}}),js={class:"flex items-center justify-center gap-x-3"},Ds=b({__name:"PlayerController",setup(e){const t=Z(),l=()=>t.dispatch("producer/setAudio",{...t.state.producer.audio,state:t.state.producer.audio.state==="playing"?"paused":"playing"}),i=T(()=>t.state.producer.audio);return(h,p)=>(n(),c("div",js,[s(ee,{icon:i.value?.state==="playing"?A(ge):A(ve),size:"45",theme:"filled",class:"text-[var(--el-color-primary)] cursor-pointer",onClick:l},null,8,["icon"]),s(A(Fe),{placement:"top",width:"50px",trigger:"click"},{reference:d(()=>[s(ee,{icon:A(ye),size:"20","stroke-width":2,class:"cursor-pointer"},null,8,["icon"])]),default:d(()=>[s(Gs)]),_:1})]))}}),Rs={class:"flex flex-col items-stretch h-20"},Zs={class:"flex grow px-5 items-center"},zs={class:"flex-1"},Ns={class:"flex-1"},Ms={class:"flex-1"},Os=b({__name:"Player",setup(e){return(t,l)=>(n(),c("div",Rs,[s(bs),o("div",Zs,[o("div",zs,[s(Es)]),o("div",Ns,[s(Ds)]),o("div",Ms,[s(Fs)])])]))}}),Bs=b({name:"RecentPanel",components:{ElSkeletonItem:Ge,ElSkeleton:Le,TaskPreview:ys,Player:Os,NoTasks:Ie,ScrollList:fe},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.producer?.tasks,items:this.$store.state.producer?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),qs={key:0,class:"tasks"},Ws={class:"left w-[70px] p-[10px] flex items-center"},Hs={class:"main w-[calc(100%-70px)] flex-1 p-[10px]"},Ks={key:2,class:"w-full flex-1 flex items-center justify-center"},Js={class:"h-20"};function Ys(e,t,l,i,h,p){const u=r("el-skeleton-item"),m=r("el-skeleton"),_=r("task-preview"),$=r("scroll-list"),k=r("no-tasks"),y=r("player");return n(),c(G,null,[e.tasks?.items===void 0?(n(),c("div",qs,[(n(),c(G,null,q(3,P=>o("div",{key:P,class:"flex"},[o("div",Ws,[s(m,{animated:""},{template:d(()=>[s(u,{variant:"image",class:"avatar w-[50px] h-[50px]"})]),_:1})]),o("div",Hs,[s(m,{animated:""},{template:d(()=>[s(u,{variant:"p",class:"w-[200px] h-[15px] mb-[5px] mt-[10px]"}),s(u,{variant:"text"})]),_:1})])])),64))])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),v($,{key:1,ref:"scrollList",class:"flex-1 w-full overflow-y-auto tasks p-2",loading:e.loading,onReachTop:t[0]||(t[0]=P=>e.$emit("reach-top"))},{default:d(()=>[(n(!0),c(G,null,q(e.tasks?.items,(P,S)=>(n(),v(_,{key:S,"model-value":P,class:"preview"},null,8,["model-value"]))),128))]),_:1},8,["loading"])):f("",!0),e.tasks?.items?.length===0?(n(),c("div",Ks,[s(k)])):f("",!0),R(o("div",Js,[s(y)],512),[[ne,!!e.$store?.state?.producer?.audio?.object]])],64)}const Qs=V(Bs,[["render",Ys]]),Xs=b({name:"TaskPreview",components:{IconPicture:ae,ElImage:N,ElAvatar:ke,ElIcon:K},computed:{audio(){return this.$store.state.producer?.audio}}}),xs={key:0,class:"size-full overflow-hidden"},en={class:"relative h-[300px]"},tn={class:"flex items-center justify-center size-full bg-[var(--el-bg-color)]"},on={class:"absolute bottom-0 left-0 right-0 m-0 p-4 text-white z-10 bg-gradient-to-t from-black/70 to-transparent"},sn={class:"p-4"},nn={class:"flex items-center font-bold mb-2"},rn={class:"text-[var(--el-text-color-regular)] mb-2"},an={class:"text-xs text-[var(--el-text-color-regular)]"},ln={class:"mt-4 text-sm leading-[25px] whitespace-pre-wrap"},cn={key:1,class:"w-full h-full"};function dn(e,t,l,i,h,p){const u=r("icon-picture"),m=r("el-icon"),_=r("el-image"),$=r("el-avatar");return e.audio?.object?(n(),c("div",xs,[o("div",en,[s(_,{src:e.audio.image_url,fit:"cover",class:"size-full"},{error:d(()=>[o("div",tn,[s(m,{class:"text-3xl"},{default:d(()=>[s(u)]),_:1})])]),_:1},8,["src"]),o("h2",on,a(e.audio?.title),1)]),o("div",sn,[o("div",nn,[s($,{size:30,src:e.audio?.image_url,class:"mr-2"},null,8,["src"]),o("span",null,a(e.audio?.title),1)]),o("p",rn,a(e.audio?.style),1),o("p",an,a(e.$dayjs.format(e.audio?.created_at)),1),o("div",ln,[o("p",null,a(e.audio?.lyric),1)])])])):(n(),c("div",cn))}const un=V(Xs,[["render",dn]]),pn="https://webhook.acedata.cloud/producer",mn=b({name:"ProducerIndex",components:{Layout:Oe,ConfigPanel:os,RecentPanel:Qs,PreviewPanel:un},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.producer?.status?.getApplications===L.Request},tasksLoading(){return this.$store.state.producer?.status?.getTasks===L.Request||this.fetchingTasks},service(){return this.$store.state.producer.service},credential(){return this.$store.state.producer.credential},config(){return this.$store.state.producer.config},initializing(){return this.$store.state.producer.status.getApplications===L.Request},needApply(){return this.$store.state.producer.status.getApplications===L.Success&&!this.application},application(){return this.$store.state.producer.application},tasks(){return this.$store.state.producer.tasks},applications(){return this.$store.state.producer.applications}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await je({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("producer/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplications"),await this.$store.dispatch("producer/getApplications"),console.debug("end onGetApplications"),await this.onGetTasks()},onApply(){le.create({application:this.application}).then(({data:e})=>{this.application=e,w.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===ce&&w.error(this.$t("application.message.alreadyApplied"))})},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=5,createdAtMin:l,createdAtMax:i}=e||{};console.debug("limit",t,"createdAtMin",l,"createdAtMax",i),this.fetchingTasks=!0;try{await this.$store.dispatch("producer/getTasks",{limit:t,createdAtMin:l,createdAtMax:i})}finally{this.fetchingTasks=!1}},async onGenerateAudio(){const e={...this.config,callback_url:pn},t=this.credential?.token;if(!t){console.error("no token specified");return}w.info(this.$t("producer.message.startingTask")),I.audio(e,{token:t}).then(()=>{w.success(this.$t("producer.message.startTaskSuccess"))}).catch(l=>{w.error(l?.response?.data?.error?.message||this.$t("producer.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function fn(e,t,l,i,h,p){const u=r("config-panel"),m=r("recent-panel"),_=r("preview-panel"),$=r("layout");return n(),v($,null,{config:d(()=>[s(u,{onGenerate:e.onGenerateAudio},null,8,["onGenerate"])]),result:d(()=>[s(m,{ref:"recentPanel",class:"panel recent",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),preview:d(()=>[s(_)]),_:1})}const ur=V(mn,[["render",fn],["__scopeId","data-v-638e0ac5"]]);export{ur as default};
1
+ import{F as D}from"./index.es-CTSlEmkZ.js";import{E as W}from"./index-C2C5Wr_B.js";import{E as oe}from"./index-D2HSg-zC.js";import{d as b,H as c,E as o,z as B,C as s,y as d,D as r,q as n,F as a,O as G,N as q,J as f,x as v,I as U,G as R,K as H,M as E,u as A,c as T,w as se,L as ne}from"./vendor-vue-C5BV5QrY.js";import{D as V,b1 as re,e2 as Y,e3 as Q,R as K,G as ie,ao as L,e4 as Z,e5 as ae,a6 as le}from"./index-DxnrvYVH.js";import{a as ce}from"./errorCode-Cqj9Td_Z.js";import{p as I}from"./producer-9gDqjKg1.js";import{b as de}from"./producer-DP85fuAq.js";import{E as ue}from"./index-B5z3D9g7.js";import{a as pe,E as me}from"./index-DiqBmBf1.js";import{I as F,S as fe}from"./ScrollList-ppHF7k1A.js";import{E as he}from"./index-De6GneQ8.js";import{E as w}from"./index-BEISdWxi.js";import{E as z}from"./index-CVHZPJ6x.js";import{u as j,F as _e,O as $e,_ as ee,P as ge,a as ve,V as ye,E as ke}from"./IconPark.vue_vue_type_script_setup_true_lang-BcKtCnVg.js";import{E as X,a as x}from"./index-SPbBnreU.js";import{E as N}from"./index-BoNQ2bwh.js";import{E as be,a as we}from"./index-BXzGGBJg.js";import{E as Ce,a as Ve}from"./index-CkFTRS4T.js";import{C as Se}from"./Consumption-C-RXHwF8.js";import{a as Ue}from"./price-pXO0t_ig.js";import{E as Pe,b as Ee,a as Ae}from"./index-CMy7JKPa.js";import{E as Te}from"./index-CZSdwn7u.js";import{E as Fe}from"./index-bLc6Jspi.js";import{N as Ie}from"./NoTasks-DCFz_cPB.js";import{a as Le,E as Ge}from"./index-5durBcIc.js";import{l as je}from"./pagination-D5yjLyAE.js";import"./use-form-item-CVgF_2-v.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-Bl-Po99g.js";import"./validator-C3W4Q7W8.js";import"./index-BoMrEY9d.js";import"./index-Ht8ZOU1H.js";import"./typescript-Cdvt30Lj.js";import"./strings-DGr9fDRd.js";import"./isEqual-6gRCrOyw.js";import"./_Uint8Array-B9wo990u.js";import"./castArray-CEgxRlUQ.js";import"./debounce-z3wHMjDj.js";import"./_baseIteratee-CAzVICbz.js";import"./index-BfOryRNq.js";import"./index-Qx6yMP72.js";import"./_baseClone-OaArZu3M.js";import"./_initCloneObject-CezWJWWn.js";import"./index-D5nhIR6Q.js";import"./index-D-qg-A9-.js";import"./index-BWUBjXz2.js";import"./dropdown-DPQ051fG.js";const De=b({name:"LayoutProducer",components:{ElDrawer:oe,ElButton:W,FontAwesomeIcon:D},data(){return{drawer:!1,preview:!1}},computed:{}}),Re={class:"main flex flex-row flex-1"},Ze={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ze={class:"result h-full flex flex-col flex-1 min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"},Ne={class:"preview h-full w-[300px] flex flex-col"};function Me(e,t,l,i,h,p){const u=r("font-awesome-icon"),m=r("el-button"),_=r("el-drawer");return n(),c("div",Re,[o("div",Ze,[B(e.$slots,"config",{},void 0,!0)]),o("div",ze,[B(e.$slots,"result",{},void 0,!0)]),o("div",Ne,[B(e.$slots,"preview",{},void 0,!0)]),s(m,{circle:"",class:"menu",onClick:t[0]||(t[0]=$=>e.drawer=!0)},{default:d(()=>[s(u,{icon:"fa-solid fa-magic"})]),_:1}),s(_,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=$=>e.drawer=$),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:d(()=>[B(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Oe=V(De,[["render",Me],["__scopeId","data-v-7453886f"]]),Be=b({name:"TypeSelector",components:{ElSelect:me,ElOption:pe,ElSwitch:ue},data(){return{options:[{label:"FUZZ-2.0 Pro",value:"FUZZ-2.0 Pro",info:"8 min"},{label:"FUZZ-2.0",value:"FUZZ-2.0",info:"8 min"},{label:"FUZZ-2.0 Raw",value:"FUZZ-2.0 Raw",info:"8 min"},{label:"FUZZ-1.1 Pro",value:"FUZZ-1.1 Pro",info:"4 min"},{label:"FUZZ-1.0 Pro",value:"FUZZ-1.0 Pro",info:"4 min"},{label:"FUZZ-1.1",value:"FUZZ-1.1",info:"4 min"},{label:"FUZZ-1.0",value:"FUZZ-1.0",info:"2 min"},{label:"FUZZ-0.8",value:"FUZZ-0.8",info:"2 min"}]}},computed:{custom:{get(){return this.$store.state.producer?.config?.custom||!1},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,custom:e})}},instrumental:{get(){return this.$store.state.producer?.config?.instrumental||!1},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,instrumental:e})}},model:{get(){return this.$store.state.producer?.config?.model},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,model:e})}}},mounted(){this.model||(this.model=de)}}),qe={class:"flex items-center justify-between mb-3"},We={class:"text-sm font-bold"},He={class:"mb-3"},Ke={class:"flex items-center mb-1"},Je={class:"text-sm font-bold"},Ye={class:"flex items-center justify-between w-full"},Qe={class:"text-xs text-[var(--el-text-color-placeholder)]"},Xe={key:0,class:"flex items-center justify-between mb-3"},xe={class:"text-sm font-bold"};function et(e,t,l,i,h,p){const u=r("el-switch"),m=r("el-option"),_=r("el-select");return n(),c("div",null,[o("div",qe,[o("span",We,a(e.$t("producer.name.type")),1),s(u,{modelValue:e.custom,"onUpdate:modelValue":t[0]||(t[0]=$=>e.custom=$)},null,8,["modelValue"])]),o("div",He,[o("div",Ke,[o("span",Je,a(e.$t("producer.name.model")),1)]),s(_,{modelValue:e.model,"onUpdate:modelValue":t[1]||(t[1]=$=>e.model=$),class:"w-full",size:"default",placeholder:e.$t("producer.placeholder.select")},{default:d(()=>[(n(!0),c(G,null,q(e.options,$=>(n(),v(m,{key:$.value,label:$.label,value:$.value},{default:d(()=>[o("div",Ye,[o("span",null,a($.label),1),o("span",Qe,a($.info),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),e.custom?(n(),c("div",Xe,[o("span",xe,a(e.$t("producer.name.instrumental")),1),s(u,{modelValue:e.instrumental,"onUpdate:modelValue":t[2]||(t[2]=$=>e.instrumental=$)},null,8,["modelValue"])])):f("",!0)])}const tt=V(Be,[["render",et]]),ot=b({name:"UploadAudio",components:{ElUpload:he,ElButton:W,InfoIcon:F,FontAwesomeIcon:D},emits:["change"],data(){return{fileList:[],uploadUrl:re()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},credential(){return this.$store.state.producer.credential},config(){return this.$store.state.producer.config},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.producer?.config?.audio_id},set(){}}},watch:{urls:{handler(e){this.$emit("change",e)}}},mounted(){this.value||(this.value=void 0),this.onSetAudio()},methods:{onExceed(){w.warning(this.$t("producer.message.uploadReferencesExceed"))},onError(){w.error(this.$t("producer.message.uploadReferencesError"))},async onSuccess(){const e=this.urls?.[0];await this.onGenerateAudioId(e)},async onGenerateAudioId(e){const t={audio_url:e},l=this.credential?.token;if(!l){console.error("no token specified");return}w.info(this.$t("producer.message.startingUploadAudio")),I.upload(t,{token:l}).then(i=>{console.debug("get upload music success",i.data);const h=i.data?.data.audio_id;this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,audio_id:h,action:"upload_extend"}),w.success(this.$t("producer.message.startUploadAudioSuccess"))}).catch(i=>{w.error(i?.response?.data?.error?.message||this.$t("producer.message.startUploadAudioFailed"))})},onSetAudio(){}}}),st={class:"relative"},nt={class:"flex justify-between"},rt={class:"flex justify-start items-center"},it={class:"text-sm font-bold"};function at(e,t,l,i,h,p){const u=r("info-icon"),m=r("font-awesome-icon"),_=r("el-button"),$=r("el-upload");return n(),c("div",st,[o("div",nt,[o("div",rt,[o("span",it,a(e.$t("producer.name.referenceAudios")),1),s(u,{content:e.$t("producer.description.uploadAudios")},null,8,["content"])])]),s($,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=k=>e.fileList=k),name:"file",limit:1,class:"upload-wrapper",action:e.uploadUrl,accept:".mp3","show-file-list":!0,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{default:d(()=>[s(_,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:d(()=>[s(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),U(" "+a(e.$t("producer.button.uploadAudios")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const lt=V(ot,[["render",at],["__scopeId","data-v-e4cd0467"]]),ct="",dt=b({name:"PromptInput",components:{ElInput:z,InfoIcon:F},computed:{prompt:{get(){return this.$store.state.producer?.config?.prompt},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=ct)}}),ut={class:"field"},pt={class:"flex items-center mb-1"},mt={class:"text-sm font-bold"};function ft(e,t,l,i,h,p){const u=r("info-icon"),m=r("el-input");return n(),c("div",ut,[o("div",pt,[o("span",mt,a(e.$t("producer.name.songDescription")),1),s(u,{content:e.$t("producer.description.prompt")},null,8,["content"])]),s(m,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=_=>e.prompt=_),rows:4,type:"textarea",placeholder:e.$t("producer.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const ht=V(dt,[["render",ft]]),_t="",$t=b({name:"LyricInput",components:{ElInput:z,ElButton:W,FontAwesomeIcon:D,InfoIcon:F},data(){return{generatingLyrics:!1}},computed:{lyric:{get(){return this.$store.state.producer?.config?.lyric},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,lyric:e})}},config(){return this.$store.state.producer?.config},credential(){return this.$store.state.producer?.credential}},mounted(){this.lyric||(this.lyric=_t)},methods:{async onGenerateLyrics(){const e=this.credential?.token;if(!e)return;const t=this.config?.style||this.config?.title||"a beautiful song";this.generatingLyrics=!0,w.info(this.$t("producer.message.generatingLyrics"));try{const i=(await I.lyric({prompt:t},{token:e})).data?.data;i?.text&&(this.lyric=i.text,i?.title&&!this.config?.title&&this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,lyric:i.text,title:i.title}),w.success(this.$t("producer.message.generateLyricsSuccess")))}catch{w.error(this.$t("producer.message.generateLyricsFailed"))}finally{this.generatingLyrics=!1}}}}),gt={class:"field"},vt={class:"flex items-center justify-between mb-1"},yt={class:"flex items-center"},kt={class:"text-sm font-bold"};function bt(e,t,l,i,h,p){const u=r("info-icon"),m=r("font-awesome-icon"),_=r("el-button"),$=r("el-input");return n(),c("div",gt,[o("div",vt,[o("div",yt,[o("span",kt,a(e.$t("producer.name.lyrics")),1),s(u,{content:e.$t("producer.description.lyrics")},null,8,["content"])]),e.config?.action!=="extend"?(n(),v(_,{key:0,size:"small",loading:e.generatingLyrics,round:"",onClick:e.onGenerateLyrics},{default:d(()=>[e.generatingLyrics?f("",!0):(n(),v(m,{key:0,icon:"fa-solid fa-wand-magic-sparkles",class:"mr-1"})),U(" "+a(e.$t("producer.button.generate_lyrics")),1)]),_:1},8,["loading","onClick"])):f("",!0)]),e.config?.action!=="extend"?(n(),v($,{key:0,modelValue:e.lyric,"onUpdate:modelValue":t[0]||(t[0]=k=>e.lyric=k),rows:5,type:"textarea",class:"lyrics",placeholder:e.$t("producer.placeholder.lyrics")},null,8,["modelValue","placeholder"])):(n(),v($,{key:1,modelValue:e.lyric,"onUpdate:modelValue":t[1]||(t[1]=k=>e.lyric=k),rows:5,type:"textarea",class:"lyrics",placeholder:e.$t("producer.placeholder.extend.lyrics")},null,8,["modelValue","placeholder"]))])}const wt=V($t,[["render",bt],["__scopeId","data-v-88c6da2b"]]),Ct=b({name:"StyleInput",components:{ElInput:z,InfoIcon:F},computed:{style:{get(){return this.$store.state.producer?.config?.style},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,style:e})}}}}),Vt={class:"field"},St={class:"flex items-center justify-between mb-1"},Ut={class:"flex items-center"},Pt={class:"text-sm font-bold"};function Et(e,t,l,i,h,p){const u=r("info-icon"),m=r("el-input");return n(),c("div",Vt,[o("div",St,[o("div",Ut,[o("span",Pt,a(e.$t("producer.name.style")),1),s(u,{content:e.$t("producer.description.style")},null,8,["content"])])]),s(m,{modelValue:e.style,"onUpdate:modelValue":t[0]||(t[0]=_=>e.style=_),rows:2,type:"textarea",placeholder:e.$t("producer.placeholder.style")},null,8,["modelValue","placeholder"])])}const At=V(Ct,[["render",Et]]),Tt=b({name:"TitleInput",components:{ElInput:z,InfoIcon:F},computed:{title:{get(){return this.$store.state.producer?.config?.title},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,title:e})}}}}),Ft={class:"field"},It={class:"flex items-center mb-1"},Lt={class:"text-sm font-bold"};function Gt(e,t,l,i,h,p){const u=r("info-icon"),m=r("el-input");return n(),c("div",Ft,[o("div",It,[o("span",Lt,a(e.$t("producer.name.title")),1),s(u,{content:e.$t("producer.description.title")},null,8,["content"])]),s(m,{modelValue:e.title,"onUpdate:modelValue":t[0]||(t[0]=_=>e.title=_),placeholder:e.$t("producer.placeholder.title")},null,8,["modelValue","placeholder"])])}const jt=V(Tt,[["render",Gt]]),Dt=b({name:"ExtendFromInput",components:{ElImage:N,ElIcon:K,ElInputNumber:X,VideoPlay:Q,VideoPause:Y},data(){return{}},computed:{audio(){return this.$store.state.producer?.config?.audio},value:{get(){return this.$store.state.producer?.config?.continue_at},set(e){console.debug("set continue_at",e),this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,continue_at:e?parseInt(e):void 0})}}},mounted(){this.value||(this.value=void 0)},methods:{handleChange(e){if(e===void 0){this.value=void 0;return}e<0?this.value=0:e>this.audio?.duration?this.value=this.audio?.duration:this.value=e},useFormatDuring:j,onPlay(e){this.$store.dispatch("producer/setAudio",{...this.$store.state.producer.audio,...e,state:"playing"}),console.log("on play")},onPause(e){this.$store.dispatch("producer/setAudio",{...this.$store.state.producer.audio,...e,state:"paused"}),console.log("on pause")},onClick(e){this.$store.state?.producer?.audio?.id!==e.id&&this.onPlay({...e,progress:0})}}}),Rt={class:"field"},Zt={class:"box"},zt={class:"title font-bold"},Nt={class:"input-wrapper"},Mt={class:"task"},Ot={class:"left"},Bt={key:2,class:"duration"},qt={class:"info"},Wt={class:"title"},Ht={class:"style"};function Kt(e,t,l,i,h,p){const u=r("el-input-number"),m=r("el-image"),_=r("video-pause"),$=r("el-icon"),k=r("video-play"),y=H("loading");return n(),c("div",Rt,[o("div",Zt,[o("h2",zt,a(e.$t("producer.name.extend")),1),o("div",Nt,[s(u,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=P=>e.value=P),class:"value",min:0,max:e.audio?.duration,controls:!1,placeholder:e.$t("producer.placeholder.extend.continue_at"),onChange:e.handleChange},null,8,["modelValue","max","placeholder","onChange"])])]),o("div",Mt,[e.audio?(n(),c("div",{key:0,class:"audio",onClick:t[3]||(t[3]=P=>e.onClick(e.audio))},[R((n(),c("div",Ot,[s(m,{src:e.audio?.image_url,class:"cover",fit:"cover"},null,8,["src"]),e.audio?.audio_url&&e.$store.state?.producer?.audio?.id===e.audio.id&&e.$store.state?.producer?.audio?.state==="playing"?(n(),c("div",{key:0,class:"overlay",onClick:t[1]||(t[1]=P=>e.onPause(e.audio))},[s($,null,{default:d(()=>[s(_)]),_:1})])):f("",!0),e.audio?.audio_url&&(e.$store.state?.producer?.audio?.id!==e.audio.id||e.$store.state?.producer?.audio?.id===e.audio.id&&e.$store.state?.producer?.audio?.state==="paused")?(n(),c("div",{key:1,class:"overlay",onClick:t[2]||(t[2]=P=>e.onPlay(e.audio))},[s($,null,{default:d(()=>[s(k)]),_:1})])):f("",!0),e.audio?.duration?(n(),c("div",Bt,a(e.useFormatDuring(e.audio?.duration)),1)):f("",!0)])),[[y,!e.audio?.audio_url]]),o("div",qt,[o("h2",Wt,a(e.audio?.title),1),o("p",Ht,a(e.audio?.style),1)])])):f("",!0)])])}const Jt=V(Dt,[["render",Kt],["__scopeId","data-v-26d43480"]]),Yt=b({name:"CoverFromInput",components:{ElImage:N,ElIcon:K,VideoPlay:Q,VideoPause:Y},data(){return{}},computed:{audio(){return this.$store.state.producer?.config?.audio},value:{get(){return this.$store.state.producer?.config?.continue_at},set(e){console.debug("set continue_at",e),this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,continue_at:e?parseInt(e):void 0})}}},mounted(){this.value||(this.value=void 0)},methods:{handleChange(e){e<0?this.value=0:e>this.audio?.duration?this.value=this.audio?.duration:this.value=e},useFormatDuring:j,onPlay(e){this.$store.dispatch("producer/setAudio",{...this.$store.state.producer.audio,...e,state:"playing"}),console.log("on play")},onPause(e){this.$store.dispatch("producer/setAudio",{...this.$store.state.producer.audio,...e,state:"paused"}),console.log("on pause")},onClick(e){this.$store.state?.producer?.audio?.id!==e.id&&this.onPlay({...e,progress:0})}}}),Qt={class:"field"},Xt={class:"box"},xt={class:"title font-bold"},eo={class:"task"},to={class:"left"},oo={key:2,class:"duration"},so={class:"info"},no={class:"title"},ro={class:"style"};function io(e,t,l,i,h,p){const u=r("el-image"),m=r("video-pause"),_=r("el-icon"),$=r("video-play"),k=H("loading");return n(),c("div",Qt,[o("div",Xt,[o("h2",xt,a(e.$t("producer.name.cover")),1)]),o("div",eo,[e.audio?(n(),c("div",{key:0,class:"audio",onClick:t[2]||(t[2]=y=>e.onClick(e.audio))},[R((n(),c("div",to,[s(u,{src:e.audio?.image_url,class:"cover",fit:"cover"},null,8,["src"]),e.audio?.audio_url&&e.$store.state?.producer?.audio?.id===e.audio.id&&e.$store.state?.producer?.audio?.state==="playing"?(n(),c("div",{key:0,class:"overlay",onClick:t[0]||(t[0]=y=>e.onPause(e.audio))},[s(_,null,{default:d(()=>[s(m)]),_:1})])):f("",!0),e.audio?.audio_url&&(e.$store.state?.producer?.audio?.id!==e.audio.id||e.$store.state?.producer?.audio?.id===e.audio.id&&e.$store.state?.producer?.audio?.state==="paused")?(n(),c("div",{key:1,class:"overlay",onClick:t[1]||(t[1]=y=>e.onPlay(e.audio))},[s(_,null,{default:d(()=>[s($)]),_:1})])):f("",!0),e.audio?.duration?(n(),c("div",oo,a(e.useFormatDuring(e.audio?.duration)),1)):f("",!0)])),[[k,!e.audio?.audio_url]]),o("div",so,[o("h2",no,a(e.audio?.title),1),o("p",ro,a(e.audio?.style),1)])])):f("",!0)])])}const ao=V(Yt,[["render",io],["__scopeId","data-v-d8a8e583"]]),lo=b({name:"VocalGenderSelector",components:{ElRadioGroup:we,ElRadioButton:be,InfoIcon:F},computed:{vocalGender:{get(){return this.$store.state.producer?.config?.vocal_gender||""},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,vocal_gender:e||void 0})}}}}),co={class:"mb-2"},uo={class:"flex items-center mb-1"},po={class:"text-sm font-bold"};function mo(e,t,l,i,h,p){const u=r("info-icon"),m=r("el-radio-button"),_=r("el-radio-group");return n(),c("div",co,[o("div",uo,[o("span",po,a(e.$t("producer.name.vocalGender")),1),s(u,{content:e.$t("producer.description.vocalGender")},null,8,["content"])]),s(_,{modelValue:e.vocalGender,"onUpdate:modelValue":t[0]||(t[0]=$=>e.vocalGender=$)},{default:d(()=>[s(m,{value:""},{default:d(()=>[U(a(e.$t("producer.gender.auto")),1)]),_:1}),s(m,{value:"f"},{default:d(()=>[U(a(e.$t("producer.gender.female")),1)]),_:1}),s(m,{value:"m"},{default:d(()=>[U(a(e.$t("producer.gender.male")),1)]),_:1})]),_:1},8,["modelValue"])])}const fo=V(lo,[["render",mo]]),ho=b({name:"AdvancedParams",components:{ElCollapse:Ve,ElCollapseItem:Ce,ElInput:z,ElSlider:x,ElInputNumber:X},data(){return{activeNames:[]}},computed:{config(){return this.$store.state.producer?.config},styleNegative:{get(){return this.$store.state.producer?.config?.style_negative||""},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,style_negative:e||void 0})}},lyricPrompt:{get(){return this.$store.state.producer?.config?.lyric_prompt||""},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,lyric_prompt:e||void 0})}},weirdness:{get(){return this.$store.state.producer?.config?.weirdness??0},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,weirdness:e||void 0})}},soundStrength:{get(){return this.$store.state.producer?.config?.sound_strength??50},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,sound_strength:e})}},lyricsStrength:{get(){return this.$store.state.producer?.config?.lyrics_strength??50},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,lyrics_strength:e})}},seed:{get(){return this.$store.state.producer?.config?.seed},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,seed:e})}}}}),_o={key:0,class:"mb-3"},$o={class:"flex items-center mb-1"},go={class:"text-xs font-bold"},vo={key:1,class:"mb-3"},yo={class:"flex items-center mb-1"},ko={class:"text-xs font-bold"},bo={key:2,class:"mb-3"},wo={class:"flex items-center justify-between mb-1"},Co={class:"text-xs font-bold"},Vo={class:"text-xs text-[var(--el-text-color-secondary)]"},So={key:3,class:"mb-3"},Uo={class:"flex items-center justify-between mb-1"},Po={class:"text-xs font-bold"},Eo={class:"text-xs text-[var(--el-text-color-secondary)]"},Ao={key:4,class:"mb-3"},To={class:"flex items-center justify-between mb-1"},Fo={class:"text-xs font-bold"},Io={class:"text-xs text-[var(--el-text-color-secondary)]"},Lo={key:5,class:"mb-3"},Go={class:"flex items-center mb-1"},jo={class:"text-xs font-bold"};function Do(e,t,l,i,h,p){const u=r("el-input"),m=r("el-slider"),_=r("el-input-number"),$=r("el-collapse-item"),k=r("el-collapse");return n(),v(k,{modelValue:e.activeNames,"onUpdate:modelValue":t[6]||(t[6]=y=>e.activeNames=y),class:"advanced-collapse"},{default:d(()=>[s($,{title:e.$t("producer.name.advancedParams"),name:"advanced"},{default:d(()=>[e.config?.custom?(n(),c("div",_o,[o("div",$o,[o("span",go,a(e.$t("producer.name.styleNegative")),1)]),s(u,{modelValue:e.styleNegative,"onUpdate:modelValue":t[0]||(t[0]=y=>e.styleNegative=y),placeholder:e.$t("producer.placeholder.styleNegative")},null,8,["modelValue","placeholder"])])):f("",!0),e.config?.custom&&!e.config?.instrumental?(n(),c("div",vo,[o("div",yo,[o("span",ko,a(e.$t("producer.name.lyricPrompt")),1)]),s(u,{modelValue:e.lyricPrompt,"onUpdate:modelValue":t[1]||(t[1]=y=>e.lyricPrompt=y),placeholder:e.$t("producer.placeholder.lyricPrompt")},null,8,["modelValue","placeholder"])])):f("",!0),e.config?.custom?(n(),c("div",bo,[o("div",wo,[o("span",Co,a(e.$t("producer.name.weirdness")),1),o("span",Vo,a(e.weirdness??0),1)]),s(m,{modelValue:e.weirdness,"onUpdate:modelValue":t[2]||(t[2]=y=>e.weirdness=y),min:0,max:100,step:1},null,8,["modelValue"])])):f("",!0),e.config?.custom?(n(),c("div",So,[o("div",Uo,[o("span",Po,a(e.$t("producer.name.soundStrength")),1),o("span",Eo,a(e.soundStrength??50),1)]),s(m,{modelValue:e.soundStrength,"onUpdate:modelValue":t[3]||(t[3]=y=>e.soundStrength=y),min:0,max:100,step:1},null,8,["modelValue"])])):f("",!0),e.config?.custom&&!e.config?.instrumental?(n(),c("div",Ao,[o("div",To,[o("span",Fo,a(e.$t("producer.name.lyricsStrength")),1),o("span",Io,a(e.lyricsStrength??50),1)]),s(m,{modelValue:e.lyricsStrength,"onUpdate:modelValue":t[4]||(t[4]=y=>e.lyricsStrength=y),min:0,max:100,step:1},null,8,["modelValue"])])):f("",!0),e.config?.custom?(n(),c("div",Lo,[o("div",Go,[o("span",jo,a(e.$t("producer.name.seed")),1)]),s(_,{modelValue:e.seed,"onUpdate:modelValue":t[5]||(t[5]=y=>e.seed=y),min:0,controls:!1,placeholder:e.$t("producer.placeholder.seed"),class:"w-full"},null,8,["modelValue","placeholder"])])):f("",!0)]),_:1},8,["title"])]),_:1},8,["modelValue"])}const Ro=V(ho,[["render",Do],["__scopeId","data-v-88e65aee"]]),Zo=b({name:"ReplaceSectionInput",components:{ElInputNumber:X,ElImage:N,InfoIcon:F},computed:{audio(){return this.$store.state.producer?.config?.audio},replaceSectionStart:{get(){return this.$store.state.producer?.config?.replace_section_start},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,replace_section_start:e})}},replaceSectionEnd:{get(){return this.$store.state.producer?.config?.replace_section_end},set(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,replace_section_end:e})}}},methods:{onClick(e){this.$store.dispatch("producer/setAudio",{...this.$store.state.producer.audio,...e,state:"playing"})}}}),zo={class:"field"},No={class:"flex items-center mb-2"},Mo={class:"text-sm font-bold m-0"},Oo={key:0,class:"task mb-2"},Bo={class:"left relative w-[50px] h-[50px] mr-3 flex-shrink-0"},qo={class:"info flex-1 min-w-0"},Wo={class:"text-sm font-bold m-0 truncate"},Ho={class:"text-xs text-[var(--el-text-color-secondary)] m-0 truncate"},Ko={class:"flex gap-2"};function Jo(e,t,l,i,h,p){const u=r("info-icon"),m=r("el-image"),_=r("el-input-number"),$=H("loading");return n(),c("div",zo,[o("div",No,[o("h2",Mo,a(e.$t("producer.name.replaceSection")),1),s(u,{content:e.$t("producer.description.replaceSection")},null,8,["content"])]),e.audio?(n(),c("div",Oo,[o("div",{class:"audio flex items-center",onClick:t[0]||(t[0]=k=>e.onClick(e.audio))},[R((n(),c("div",Bo,[s(m,{src:e.audio?.image_url,class:"w-full h-full rounded",fit:"cover"},null,8,["src"])])),[[$,!e.audio?.audio_url]]),o("div",qo,[o("h2",Wo,a(e.audio?.title),1),o("p",Ho,a(e.audio?.style),1)])])])):f("",!0),o("div",Ko,[s(_,{modelValue:e.replaceSectionStart,"onUpdate:modelValue":t[1]||(t[1]=k=>e.replaceSectionStart=k),class:"flex-1",min:0,max:e.audio?.duration,controls:!1,placeholder:e.$t("producer.placeholder.replaceSectionStart")},null,8,["modelValue","max","placeholder"]),s(_,{modelValue:e.replaceSectionEnd,"onUpdate:modelValue":t[2]||(t[2]=k=>e.replaceSectionEnd=k),class:"flex-1",min:e.replaceSectionStart||0,max:e.audio?.duration,controls:!1,placeholder:e.$t("producer.placeholder.replaceSectionEnd")},null,8,["modelValue","min","max","placeholder"])])])}const Yo=V(Zo,[["render",Jo]]),Qo=b({name:"PresetPanel",components:{TypeSelector:tt,PromptInput:ht,LyricInput:wt,StyleInput:At,TitleInput:jt,ExtendFromInput:Jt,CoverFromInput:ao,UploadAudio:lt,VocalGenderSelector:fo,AdvancedParams:Ro,ReplaceSectionInput:Yo,FontAwesomeIcon:D,ElButton:W,Consumption:Se},emits:["generate"],computed:{config(){return this.$store.state.producer?.config},consumption(){return Ue(this.config,this.service?.cost)},service(){return this.$store.state.producer?.service},generateButtonText(){const e=this.config?.action;return e==="extend"?this.$t("producer.button.extend"):e==="cover"?this.$t("producer.button.cover_music"):e==="variation"?this.$t("producer.button.variation"):e==="replace_section"?this.$t("producer.button.replace_section"):e==="stems"?this.$t("producer.button.get_stems"):e==="swap_vocals"?this.$t("producer.button.swap_vocals"):e==="swap_instrumentals"?this.$t("producer.button.swap_instrumentals"):this.$t("producer.button.generate")}},methods:{onGenerate(){this.$emit("generate")}}}),Xo={class:"flex flex-col h-full"},xo={class:"flex-1 overflow-y-auto p-5"},es={class:"flex flex-col items-center justify-center px-5 pb-5"};function ts(e,t,l,i,h,p){const u=r("type-selector"),m=r("upload-audio"),_=r("prompt-input"),$=r("lyric-input"),k=r("style-input"),y=r("title-input"),P=r("vocal-gender-selector"),S=r("extend-from-input"),M=r("cover-from-input"),O=r("replace-section-input"),J=r("advanced-params"),g=r("consumption"),C=r("font-awesome-icon"),te=r("el-button");return n(),c("div",Xo,[o("div",xo,[s(u,{class:"mb-4"}),s(m,{class:"mb-4"}),e.config?.custom?f("",!0):(n(),v(_,{key:0,class:"mb-4"})),e.config?.custom&&!e.config.instrumental?(n(),v($,{key:1,class:"mb-4"})):f("",!0),e.config?.custom?(n(),v(k,{key:2,class:"mb-4"})):f("",!0),e.config?.custom?(n(),v(y,{key:3,class:"mb-4"})):f("",!0),e.config?.custom&&!e.config.instrumental?(n(),v(P,{key:4,class:"mb-4"})):f("",!0),e.config?.action==="extend"?(n(),v(S,{key:5,class:"mb-4"})):f("",!0),e.config?.action==="cover"?(n(),v(M,{key:6,class:"mb-4"})):f("",!0),e.config?.action==="replace_section"?(n(),v(O,{key:7,class:"mb-4"})):f("",!0),s(J,{class:"mb-4"})]),o("div",es,[s(g,{value:e.consumption,service:e.service},null,8,["value","service"]),s(te,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[s(C,{icon:"fa-solid fa-magic",class:"mr-2"}),U(" "+a(e.generateButtonText),1)]),_:1},8,["onClick"])])])}const os=V(Qo,[["render",ts],["__scopeId","data-v-6642bb3c"]]),ss="https://webhook.acedata.cloud/producer",ns=b({name:"TaskPreview",components:{ElImage:N,ElIcon:K,ElTooltip:Te,FontAwesomeIcon:D,VideoPlay:Q,VideoPause:Y,ElDropdown:Ae,ElDropdownMenu:Ee,ElDropdownItem:Pe,Loading:ie},props:{modelValue:{type:Object,required:!0}},data(){return{isFetchingVideoUrl:!1,isFetchingWav:!1}},computed:{loading(){return this.$store.state.producer?.status?.getApplications===L.Request},credential(){return this.$store.state.producer.credential},config(){return this.$store.state.producer.config},task(){return this.$store.state.producer?.tasks},audios(){const e=this.modelValue?.response?.data??[],t=this.modelValue?.request?.action;return t?e.map(l=>({...l,action:t})):e},application(){return this.$store.state.producer?.application},active(){return this.$store.state.producer?.tasks?.active}},methods:{useFormatDuring:j,onPlay(e){this.$store.dispatch("producer/setAudio",{...this.$store.state.producer.audio,...e,state:"playing"}),console.log("on play")},onPause(e){this.$store.dispatch("producer/setAudio",{...this.$store.state.producer.audio,...e,state:"paused"}),console.log("on pause")},onClick(e){this.$store.state?.producer?.audio?.id!==e.id&&this.onPlay({...e,progress:0})},onExtend(e,t){e.stopPropagation(),console.debug("set config",t),this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,model:t.model,custom:!0,instrumental:!1,style:t.style,action:"extend",audio:t,audio_id:t.id,continue_at:t.duration})},onDownload(e,t){e&&e.stopPropagation();const i=new URL(t).pathname,h=i.substring(i.lastIndexOf("/")+1);fetch(t).then(p=>p.blob()).then(p=>{_e.saveAs(p,h)})},async handleVideoDownload(e){if(e.video_url){this.onDownload(null,e.video_url);return}if(!this.isFetchingVideoUrl)try{this.isFetchingVideoUrl=!0;const t=await this.fetchVideoUrlFromApi(e?.id);console.log(`get videoUrl: ${t}`),e.video_url=t,this.onDownload(null,t)}catch(t){console.error("get videoUrl failed:",t),w.error(this.$t("producer.message.getVideoUrlFailed"))}finally{this.isFetchingVideoUrl=!1}},async fetchVideoUrlFromApi(e){return new Promise((t,l)=>{const i={audio_id:e},h=this.credential?.token;if(!h){console.error("no token specified"),l(new Error("No token specified"));return}I.video(i,{token:h}).then(p=>{const u=p.data?.data?.video_url;u?t(u):l(new Error("Video URL not found in response"))}).catch(p=>{l(p)})})},onPreview(e,t){e.stopPropagation(),window.open(t,"_blank")},async onGetStems(e){await this.onGenerateAudioUrl("stems",e)},onCover(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,model:e.model,custom:!0,instrumental:!1,style:e.style,action:"cover",audio:e,audio_id:e.id})},onVariation(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,model:e.model,custom:!0,style:e.style,action:"variation",audio:e,audio_id:e.id})},async onSwapVocals(e){await this.onGenerateAudioUrl("swap_vocals",e)},async onSwapInstrumentals(e){await this.onGenerateAudioUrl("swap_instrumentals",e)},async onGetAllStems(e){await this.onGenerateAudioUrl("all_stems",e)},onReplaceSection(e){this.$store.commit("producer/setConfig",{...this.$store.state.producer?.config,model:e.model,custom:!0,instrumental:!1,style:e.style,action:"replace_section",audio:e,audio_id:e.id,replace_section_start:0,replace_section_end:Math.min(30,e.duration||30)})},async handleWavDownload(e){if(!e?.id||this.isFetchingWav)return;const t=this.credential?.token;if(t)try{this.isFetchingWav=!0,w.info(this.$t("producer.message.fetchingWav"));const i=(await I.wav({audio_id:e.id},{token:t})).data?.data?.audio_url;i?this.onDownload(null,i):w.error(this.$t("producer.message.fetchWavFailed"))}catch{w.error(this.$t("producer.message.fetchWavFailed"))}finally{this.isFetchingWav=!1}},async onGenerateAudioUrl(e,t){const l={action:e,audio_id:t,callback_url:ss},i=this.credential?.token;if(!i){console.error("no token specified");return}w.info(this.$t("producer.message.startingTask")),I.audio(l,{token:i}).then(()=>{w.success(this.$t("producer.message.startTaskSuccess"))}).catch(h=>{w.error(h?.response?.data?.error?.message||this.$t("producer.message.startTaskFailed"))}).finally(async()=>{await this.onGetTasks(),await this.onScrollDown()})},async onScrollDown(){setTimeout(()=>{const e=document.querySelector(".tasks");e&&(e.scrollTop=e.scrollHeight)},1e3)},async onGetTasks(){if(this.loading){console.debug("loading");return}await this.$store.dispatch("producer/getTasks",{limit:30,offset:0})}}}),rs={class:"task"},is=["onClick"],as={class:"left"},ls=["onClick"],cs=["onClick"],ds={key:2,class:"duration"},us={class:"info"},ps={class:"title"},ms={class:"style"},fs={class:"right"},hs={class:"el-dropdown-link"},_s={class:"flex items-center min-w-[120px]"},$s={class:"flex items-center min-w-[120px]"},gs={class:"el-dropdown-link"};function vs(e,t,l,i,h,p){const u=r("el-image"),m=r("video-pause"),_=r("el-icon"),$=r("video-play"),k=r("font-awesome-icon"),y=r("el-tooltip"),P=r("Loading"),S=r("el-dropdown-item"),M=r("el-dropdown-menu"),O=r("el-dropdown"),J=H("loading");return n(),c("div",rs,[(n(!0),c(G,null,q(e.audios,g=>(n(),c("div",{key:g.id,class:"audio",onClick:E(C=>e.onClick(g),["stop"])},[R((n(),c("div",as,[s(u,{src:g?.image_url,class:"cover",fit:"cover",lazy:""},null,8,["src"]),g?.audio_url&&e.$store.state?.producer?.audio?.id===g.id&&e.$store.state?.producer?.audio?.state==="playing"?(n(),c("div",{key:0,class:"overlay",onClick:E(C=>e.onPause(g),["stop"])},[s(_,null,{default:d(()=>[s(m)]),_:1})],8,ls)):f("",!0),g?.audio_url&&(e.$store.state?.producer?.audio?.id!==g.id||e.$store.state?.producer?.audio?.id===g.id&&e.$store.state?.producer?.audio?.state==="paused")?(n(),c("div",{key:1,class:"overlay",onClick:E(C=>e.onPlay(g),["stop"])},[s(_,null,{default:d(()=>[s($)]),_:1})],8,cs)):f("",!0),g?.duration?(n(),c("div",ds,a(e.useFormatDuring(g?.duration)),1)):f("",!0)])),[[J,!g?.audio_url]]),o("div",us,[o("h2",ps,a(g?.title),1),o("p",ms,a(g?.style),1)]),o("div",fs,[s(O,null,{dropdown:d(()=>[s(M,null,{default:d(()=>[s(S,{disabled:e.isFetchingVideoUrl,onClick:C=>e.handleVideoDownload(g)},{default:d(()=>[o("div",_s,[e.isFetchingVideoUrl?(n(),v(_,{key:0,class:"is-loading mr-2"},{default:d(()=>[s(P)]),_:1})):f("",!0),o("span",null,a(e.$t("producer.button.download_video")),1)])]),_:1},8,["disabled","onClick"]),g?.audio_url?(n(),v(S,{key:0,onClick:E(C=>e.onDownload(C,g?.audio_url),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.download_audio")),1)]),_:1},8,["onClick"])):f("",!0),s(S,{disabled:e.isFetchingWav,onClick:C=>e.handleWavDownload(g)},{default:d(()=>[o("div",$s,[e.isFetchingWav?(n(),v(_,{key:0,class:"is-loading mr-2"},{default:d(()=>[s(P)]),_:1})):f("",!0),o("span",null,a(e.$t("producer.button.download_wav")),1)])]),_:1},8,["disabled","onClick"])]),_:2},1024)]),default:d(()=>[o("span",hs,[s(y,{effect:"dark",content:e.$t("producer.button.download"),placement:"top"},{default:d(()=>[g?.audio_url||g?.video_url?(n(),v(k,{key:0,icon:"fa-solid fa-download",class:"icon icon-download"})):f("",!0)]),_:2},1032,["content"])])]),_:2},1024),s(O,null,{dropdown:d(()=>[s(M,null,{default:d(()=>[g?.audio_url?(n(),v(S,{key:0,onClick:E(C=>e.onExtend(C,g),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.extend")),1)]),_:1},8,["onClick"])):f("",!0),g.id?(n(),v(S,{key:1,onClick:E(C=>e.onGetStems(g.id),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.get_stems")),1)]),_:1},8,["onClick"])):f("",!0),g.id?(n(),v(S,{key:2,onClick:E(C=>e.onGetAllStems(g.id),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.all_stems")),1)]),_:1},8,["onClick"])):f("",!0),s(S,{onClick:E(C=>e.onCover(g),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.cover_music")),1)]),_:1},8,["onClick"]),g?.id?(n(),v(S,{key:3,onClick:E(C=>e.onVariation(g),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.variation")),1)]),_:1},8,["onClick"])):f("",!0),g?.id?(n(),v(S,{key:4,onClick:E(C=>e.onSwapVocals(g.id),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.swap_vocals")),1)]),_:1},8,["onClick"])):f("",!0),g?.id?(n(),v(S,{key:5,onClick:E(C=>e.onSwapInstrumentals(g.id),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.swap_instrumentals")),1)]),_:1},8,["onClick"])):f("",!0),g?.id?(n(),v(S,{key:6,onClick:E(C=>e.onReplaceSection(g),["stop"])},{default:d(()=>[U(a(e.$t("producer.button.replace_section")),1)]),_:1},8,["onClick"])):f("",!0)]),_:2},1024)]),default:d(()=>[o("span",gs,[s(y,{effect:"dark",content:e.$t("producer.button.more"),placement:"top"},{default:d(()=>[g?.audio_url||g?.video_url?(n(),v(k,{key:0,icon:"fa-solid fa-ellipsis",class:"icon icon-ellipsis"})):f("",!0)]),_:2},1032,["content"])])]),_:2},1024)])],8,is))),128))])}const ys=V(ns,[["render",vs]]),ks={class:"player-slider"},bs=b({__name:"PlayerSlider",setup(e){const t=Z(),l=T({get:()=>t.state.producer?.audio?.progress,set:u=>t.commit("producer/setAudio",{...t.state.producer.audio,progress:u})}),i=T({get:()=>t.state.producer?.audio?.duration,set:u=>t.commit("producer/setAudio",{...t.state.producer.audio,duration:u})}),h=()=>{},p=u=>t.dispatch("producer/setAudio",{...t.state.producer.audio,progress:u});return(u,m)=>(n(),c("div",ks,[s(A(x),{modelValue:l.value,"onUpdate:modelValue":m[0]||(m[0]=_=>l.value=_),"show-tooltip":!1,min:0,max:i.value,onChange:p,onInput:h},null,8,["modelValue","max"])]))}}),ws={class:"flex player-song"},Cs=["src"],Vs={class:"ml-2 text-xs flex flex-col justify-between"},Ss={class:"w-52 2xl:w-96 cursor-pointer truncate"},Us={class:"flex"},Ps={class:"ml-2 text-dc"},Es=b({__name:"PlayerSong",setup(e){const t=Z(),l=T({get:()=>t.state.producer.audio,set:i=>t.commit("producer/setAudio",i)});return se(l,(i,h)=>{if(i?.audio_url!==h?.audio_url){console.log("audio changed",i),i.object&&(console.log("111",i.object),i.object.pause(),delete i.object);const p=new Audio(i.audio_url);i.state==="playing"?p.play():p.pause(),p.addEventListener("loadedmetadata",()=>{p.currentTime=0,p.addEventListener("timeupdate",()=>{t.commit("producer/setAudio",{...t.state.producer.audio,progress:p.currentTime})})}),t.commit("producer/setAudio",{...t.state.producer.audio,object:p})}else if(i?.progress!==h?.progress&&Math.abs(i.progress-i.object.currentTime)>2){console.log("progress changed",i.progress);const p=t.state.producer.audio;p.object&&(p.object.currentTime=p.progress)}else i?.state!==h?.state&&(console.log("state changed",i.state),i.object&&(i.state==="playing"?i.object.play():i.object.pause()));i?.volume!==h?.volume&&(console.log("volume changed",i.volume),i.object&&(i.object.volume=i.volume/100))}),(i,h)=>(n(),c("div",ws,[o("img",{alt:"",class:"w-11 h-11 rounded",src:l.value?.image_url||A($e)},null,8,Cs),o("div",Vs,[o("div",Ss,[o("div",Us,[o("span",null,a(l.value?.title||"Music"),1),o("span",Ps,"- "+a(l.value?.style||"SmallRuralDog"),1)])])])]))}}),As={class:"flex justify-end items-center gap-x-2.5"},Ts={class:"text-xs"},Fs=b({__name:"PlayerAction",setup(e){const t=Z(),l=T({get:()=>t.state.producer?.audio?.progress,set:h=>t.commit("producer/setAudio",{...t.state.producer.audio,progress:h})}),i=T({get:()=>t.state.producer?.audio?.duration,set:h=>t.commit("producer/setAudio",{...t.state.producer.audio,duration:h})});return(h,p)=>(n(),c("div",As,[o("span",Ts,a(A(j)(l.value))+" / "+a(A(j)(i.value)),1)]))}}),Is={class:"player-volume flex flex-col items-center pt-2"},Ls={class:"text-sm mt-3"},Gs=b({__name:"PlayerVolumeSlider",setup(e){const t=Z(),l=T({get:()=>t.state.producer.audio?.volume,set:p=>t.commit("producer/setAudio",{...t.state.producer.audio,volume:p})}),i=T({get:()=>t.state.producer.audio?.muted,set:p=>t.commit("producer/setAudio",{...t.state.producer.audio,muted:p})}),h=p=>t.dispatch("producer/setVolume",p);return(p,u)=>(n(),c("div",Is,[s(A(x),{modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=m=>l.value=m),vertical:"",height:"100px","show-tooltip":!1,max:100,min:0,size:"small",disabled:i.value,onInput:h},null,8,["modelValue","disabled"]),o("div",Ls,a(l.value),1)]))}}),js={class:"flex items-center justify-center gap-x-3"},Ds=b({__name:"PlayerController",setup(e){const t=Z(),l=()=>t.dispatch("producer/setAudio",{...t.state.producer.audio,state:t.state.producer.audio.state==="playing"?"paused":"playing"}),i=T(()=>t.state.producer.audio);return(h,p)=>(n(),c("div",js,[s(ee,{icon:i.value?.state==="playing"?A(ge):A(ve),size:"45",theme:"filled",class:"text-[var(--el-color-primary)] cursor-pointer",onClick:l},null,8,["icon"]),s(A(Fe),{placement:"top",width:"50px",trigger:"click"},{reference:d(()=>[s(ee,{icon:A(ye),size:"20","stroke-width":2,class:"cursor-pointer"},null,8,["icon"])]),default:d(()=>[s(Gs)]),_:1})]))}}),Rs={class:"flex flex-col items-stretch h-20"},Zs={class:"flex grow px-5 items-center"},zs={class:"flex-1"},Ns={class:"flex-1"},Ms={class:"flex-1"},Os=b({__name:"Player",setup(e){return(t,l)=>(n(),c("div",Rs,[s(bs),o("div",Zs,[o("div",zs,[s(Es)]),o("div",Ns,[s(Ds)]),o("div",Ms,[s(Fs)])])]))}}),Bs=b({name:"RecentPanel",components:{ElSkeletonItem:Ge,ElSkeleton:Le,TaskPreview:ys,Player:Os,NoTasks:Ie,ScrollList:fe},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.producer?.tasks,items:this.$store.state.producer?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),qs={key:0,class:"tasks"},Ws={class:"left w-[70px] p-[10px] flex items-center"},Hs={class:"main w-[calc(100%-70px)] flex-1 p-[10px]"},Ks={key:2,class:"w-full flex-1 flex items-center justify-center"},Js={class:"h-20"};function Ys(e,t,l,i,h,p){const u=r("el-skeleton-item"),m=r("el-skeleton"),_=r("task-preview"),$=r("scroll-list"),k=r("no-tasks"),y=r("player");return n(),c(G,null,[e.tasks?.items===void 0?(n(),c("div",qs,[(n(),c(G,null,q(3,P=>o("div",{key:P,class:"flex"},[o("div",Ws,[s(m,{animated:""},{template:d(()=>[s(u,{variant:"image",class:"avatar w-[50px] h-[50px]"})]),_:1})]),o("div",Hs,[s(m,{animated:""},{template:d(()=>[s(u,{variant:"p",class:"w-[200px] h-[15px] mb-[5px] mt-[10px]"}),s(u,{variant:"text"})]),_:1})])])),64))])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),v($,{key:1,ref:"scrollList",class:"flex-1 w-full overflow-y-auto tasks p-2",loading:e.loading,onReachTop:t[0]||(t[0]=P=>e.$emit("reach-top"))},{default:d(()=>[(n(!0),c(G,null,q(e.tasks?.items,(P,S)=>(n(),v(_,{key:S,"model-value":P,class:"preview"},null,8,["model-value"]))),128))]),_:1},8,["loading"])):f("",!0),e.tasks?.items?.length===0?(n(),c("div",Ks,[s(k)])):f("",!0),R(o("div",Js,[s(y)],512),[[ne,!!e.$store?.state?.producer?.audio?.object]])],64)}const Qs=V(Bs,[["render",Ys]]),Xs=b({name:"TaskPreview",components:{IconPicture:ae,ElImage:N,ElAvatar:ke,ElIcon:K},computed:{audio(){return this.$store.state.producer?.audio}}}),xs={key:0,class:"size-full overflow-hidden"},en={class:"relative h-[300px]"},tn={class:"flex items-center justify-center size-full bg-[var(--el-bg-color)]"},on={class:"absolute bottom-0 left-0 right-0 m-0 p-4 text-white z-10 bg-gradient-to-t from-black/70 to-transparent"},sn={class:"p-4"},nn={class:"flex items-center font-bold mb-2"},rn={class:"text-[var(--el-text-color-regular)] mb-2"},an={class:"text-xs text-[var(--el-text-color-regular)]"},ln={class:"mt-4 text-sm leading-[25px] whitespace-pre-wrap"},cn={key:1,class:"w-full h-full"};function dn(e,t,l,i,h,p){const u=r("icon-picture"),m=r("el-icon"),_=r("el-image"),$=r("el-avatar");return e.audio?.object?(n(),c("div",xs,[o("div",en,[s(_,{src:e.audio.image_url,fit:"cover",class:"size-full"},{error:d(()=>[o("div",tn,[s(m,{class:"text-3xl"},{default:d(()=>[s(u)]),_:1})])]),_:1},8,["src"]),o("h2",on,a(e.audio?.title),1)]),o("div",sn,[o("div",nn,[s($,{size:30,src:e.audio?.image_url,class:"mr-2"},null,8,["src"]),o("span",null,a(e.audio?.title),1)]),o("p",rn,a(e.audio?.style),1),o("p",an,a(e.$dayjs.format(e.audio?.created_at)),1),o("div",ln,[o("p",null,a(e.audio?.lyric),1)])])])):(n(),c("div",cn))}const un=V(Xs,[["render",dn]]),pn="https://webhook.acedata.cloud/producer",mn=b({name:"ProducerIndex",components:{Layout:Oe,ConfigPanel:os,RecentPanel:Qs,PreviewPanel:un},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.producer?.status?.getApplications===L.Request},tasksLoading(){return this.$store.state.producer?.status?.getTasks===L.Request||this.fetchingTasks},service(){return this.$store.state.producer.service},credential(){return this.$store.state.producer.credential},config(){return this.$store.state.producer.config},initializing(){return this.$store.state.producer.status.getApplications===L.Request},needApply(){return this.$store.state.producer.status.getApplications===L.Success&&!this.application},application(){return this.$store.state.producer.application},tasks(){return this.$store.state.producer.tasks},applications(){return this.$store.state.producer.applications}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await je({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("producer/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplications"),await this.$store.dispatch("producer/getApplications"),console.debug("end onGetApplications"),await this.onGetTasks()},onApply(){le.create({application:this.application}).then(({data:e})=>{this.application=e,w.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===ce&&w.error(this.$t("application.message.alreadyApplied"))})},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=5,createdAtMin:l,createdAtMax:i}=e||{};console.debug("limit",t,"createdAtMin",l,"createdAtMax",i),this.fetchingTasks=!0;try{await this.$store.dispatch("producer/getTasks",{limit:t,createdAtMin:l,createdAtMax:i})}finally{this.fetchingTasks=!1}},async onGenerateAudio(){const e={...this.config,callback_url:pn},t=this.credential?.token;if(!t){console.error("no token specified");return}w.info(this.$t("producer.message.startingTask")),I.audio(e,{token:t}).then(()=>{w.success(this.$t("producer.message.startTaskSuccess"))}).catch(l=>{w.error(l?.response?.data?.error?.message||this.$t("producer.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function fn(e,t,l,i,h,p){const u=r("config-panel"),m=r("recent-panel"),_=r("preview-panel"),$=r("layout");return n(),v($,null,{config:d(()=>[s(u,{onGenerate:e.onGenerateAudio},null,8,["onGenerate"])]),result:d(()=>[s(m,{ref:"recentPanel",class:"panel recent",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),preview:d(()=>[s(_)]),_:1})}const ur=V(mn,[["render",fn],["__scopeId","data-v-638e0ac5"]]);export{ur as default};
@@ -1 +1 @@
1
- import{F as G}from"./index.es-CMIycEfY.js";import{E as P}from"./index-DA_FluBX.js";import{E as W}from"./index-D0IqUyZl.js";import{d as w,H as i,E as c,z as R,C as o,y as $,D as n,q as a,F as s,I as f,O as E,N as L,x as I,J as v,M as H,Q as q}from"./vendor-vue-C5BV5QrY.js";import{D as y,b1 as Z,ch as x,ci as J,cj as K,ck as Q,cl as X,cm as C,cn as U,co as M,cp as Y,ao as z}from"./index-M2b128ZH.js";import{I as O,S as ee}from"./ScrollList-D2YriCs9.js";import{E as te}from"./index-Ctk94Ps3.js";import{I as N}from"./ImagePreview-DKUQBUe6.js";import{E as oe}from"./index-DYbIRvGT.js";import{E as A}from"./index-BfzxntyX.js";import{C as se}from"./Consumption-BZkNM6Iy.js";import{a as ae}from"./price-DTrERJBf.js";import{a as B,E as F}from"./index-CL1prdmz.js";import{b as ne}from"./errorCode-Cqj9Td_Z.js";import{o as j}from"./openaiimage-BOyTlTb9.js";import{C as ie}from"./CopyToClipboard-Bm9B1JG9.js";import{I as le}from"./ImageWrapper-ClLlRyzU.js";import{E as re}from"./index-DFNAFF2z.js";import{E as ce}from"./index-C-9b9MKh.js";import{E as me}from"./index-8zQM9luF.js";import{B as pe}from"./BotPlaceholder-C31K8To0.js";import{N as ue}from"./NoTasks-INFj9zWz.js";import"./use-form-item-BlmY11uh.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-Bl-Po99g.js";import"./typescript-BWJYf4Zx.js";import"./index-DJl11D_I.js";import"./index-DSGdn0Vx.js";import"./index-CJ2GaDXw.js";import"./_baseClone-CjTgJNX4.js";import"./_Uint8Array-Cr1cjG4I.js";import"./_initCloneObject-G_TFMsX_.js";import"./isEqual-Dr8gXji5.js";import"./index-2OHKNhci.js";import"./strings-DGr9fDRd.js";import"./castArray-CNpuHwov.js";import"./debounce-vY0mNUPJ.js";import"./_baseIteratee-C2KvIaBQ.js";import"./index-B2yh3MI5.js";import"./index-C_7wmSl9.js";const de=w({name:"LayoutNanobanana",components:{ElDrawer:W,ElButton:P,FontAwesomeIcon:G},data(){return{drawer:!1}}}),ge={class:"main flex flex-row flex-1"},fe={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},he={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function _e(e,t,m,l,p,h){const u=n("font-awesome-icon"),d=n("el-button"),_=n("el-drawer");return a(),i("div",ge,[c("div",fe,[R(e.$slots,"config",{},void 0,!0)]),c("div",he,[R(e.$slots,"result",{},void 0,!0)]),o(d,{circle:"",class:"menu",onClick:t[0]||(t[0]=g=>e.drawer=!0)},{default:$(()=>[o(u,{icon:"fa-solid fa-magic"})]),_:1}),o(_,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=g=>e.drawer=g),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:$(()=>[R(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const $e=y(de,[["render",_e],["__scopeId","data-v-bfe5cd4b"]]),ve="",be=w({name:"PromptInput",components:{ElInput:te,InfoIcon:O},computed:{prompt:{get(){return this.$store.state.openaiimage?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("openaiimage/setConfig",{...this.$store.state.openaiimage?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=ve)}}),ke={class:"field"},we={class:"box"},ye={class:"title font-bold"};function Ee(e,t,m,l,p,h){const u=n("info-icon"),d=n("el-input");return a(),i("div",ke,[c("div",we,[c("h2",ye,s(e.$t("openaiimage.name.prompt")),1),o(u,{content:e.$t("openaiimage.description.prompt"),class:"info"},null,8,["content"])]),o(d,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=_=>e.prompt=_),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("openaiimage.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ie=y(be,[["render",Ee],["__scopeId","data-v-92f61e4a"]]),Ve=w({name:"ImageUrlsInput",components:{ElUpload:oe,ElButton:P,InfoIcon:O,ImagePreview:N,FontAwesomeIcon:G},data(){return{fileList:[],uploadUrl:Z()+"/api/v1/files/",suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.openaiimage?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const l=(this.fileList||[]).filter(p=>!p?.response?.file_url);this.fileList=l.length?l:[];return}const t=[];e.forEach(l=>{const p=this.fileList.find(h=>h?.response?.file_url===l||h?.url===l);p?t.push(p):t.push({name:l.split("/").pop()||l,url:l,status:"success",percentage:100,response:{file_url:l}})}),(this.fileList||[]).filter(l=>!l?.response?.file_url).forEach(l=>{t.some(h=>h===l||h?.url===l?.url||h?.response?.file_url===l?.response?.file_url)||t.push(l)}),this.fileList=t}}},mounted(){},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url=="string"&&e.url.startsWith("blob:"))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImageUrls()},onExceed(){A.warning(this.$t("openaiimage.message.uploadImageExceed"))},onError(){A.error(this.$t("openaiimage.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("openaiimage/setConfig",{...this.$store.state.openaiimage?.config,image_urls:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImageUrls()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url=="string"&&t.url.startsWith("blob:"))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImageUrls()}}}),Ae={class:"field flex items-center justify-between"},Le={class:"title font-bold text-[14px] mb-[10px]"},Te={class:"upload-wrapper flex flex-col items-start gap-[8px]"},Se={class:"controls flex items-center"},Ge={class:"file-list flex flex-wrap gap-[10px]"};function Pe(e,t,m,l,p,h){const u=n("font-awesome-icon"),d=n("el-button"),_=n("el-upload"),g=n("info-icon"),k=n("image-preview");return a(),i(E,null,[c("div",Ae,[c("h2",Le,s(e.$t("openaiimage.name.imageUrls")),1),c("div",Te,[c("div",Se,[o(_,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=r=>e.fileList=r),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value",limit:5,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:$(()=>[o(d,{size:"small",type:"primary",round:""},{default:$(()=>[o(u,{icon:"fa-solid fa-upload",class:"mr-1"}),f(" "+s(e.$t("openaiimage.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"]),o(g,{content:e.$t("openaiimage.description.imageUrls"),class:"ml-2"},null,8,["content"])])])]),c("div",Ge,[(a(!0),i(E,null,L(e.fileList,(r,b)=>(a(),I(k,{key:r.uid||r?.response?.file_url||r.url||b,url:r.url||r?.response?.file_url,name:r.name,percentage:r.percentage,onRemove:T=>e.onRemovePreview(b,r)},null,8,["url","name","percentage","onRemove"]))),128))])],64)}const qe=y(Ve,[["render",Pe]]),Oe=w({name:"OpenAIImageModelSelector",components:{ElSelect:F,ElOption:B,InfoIcon:O},data(){return{options:[{value:J,label:this.$t("openaiimage.model.gptImage1")},{value:K,label:this.$t("openaiimage.model.gptImage15")},{value:Q,label:this.$t("openaiimage.model.gptImage2")}]}},computed:{value:{get(){return this.$store.state.openaiimage?.config?.model},set(e){this.$store.commit("openaiimage/setConfig",{...this.$store.state.openaiimage?.config,model:e})}},modelDescription(){return this.$t("openaiimage.description.model")}},mounted(){this.value||(this.value=x)}}),Re={class:"field"},Ce={class:"label"},Ue={class:"box"},Me={class:"title font-bold"};function ze(e,t,m,l,p,h){const u=n("info-icon"),d=n("el-option"),_=n("el-select");return a(),i("div",Re,[c("div",Ce,[c("div",Ue,[c("h2",Me,s(e.$t("openaiimage.name.model")),1),o(u,{content:e.modelDescription,class:"info"},null,8,["content"])])]),o(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=g=>e.value=g),class:"value",placeholder:e.$t("openaiimage.placeholder.select")},{default:$(()=>[(a(!0),i(E,null,L(e.options,g=>(a(),I(d,{key:g.value,label:g.label,value:g.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const je=y(Oe,[["render",ze],["__scopeId","data-v-cec771bd"]]),De=w({name:"OpenAIImageSizeSelector",components:{ElSelect:F,ElOption:B,InfoIcon:O},data(){return{options:[{value:C,label:C},{value:U,label:U},{value:M,label:M}]}},computed:{value:{get(){return this.$store.state.openaiimage?.config?.size},set(e){this.$store.commit("openaiimage/setConfig",{...this.$store.state.openaiimage?.config,size:e})}}},mounted(){this.value||(this.value=X)}}),Ne={class:"field"},Be={class:"label"},Fe={class:"box"},We={class:"title font-bold"};function He(e,t,m,l,p,h){const u=n("info-icon"),d=n("el-option"),_=n("el-select");return a(),i("div",Ne,[c("div",Be,[c("div",Fe,[c("h2",We,s(e.$t("openaiimage.name.size")),1),o(u,{content:e.$t("openaiimage.description.size"),class:"info"},null,8,["content"])])]),o(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=g=>e.value=g),class:"value",placeholder:e.$t("openaiimage.placeholder.select")},{default:$(()=>[(a(!0),i(E,null,L(e.options,g=>(a(),I(d,{key:g.value,label:g.label,value:g.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ze=y(De,[["render",He],["__scopeId","data-v-11116785"]]),xe=w({name:"ConfigPanel",components:{ElButton:P,FontAwesomeIcon:G,PromptInput:Ie,Consumption:se,ImageUrlsInput:qe,ModelSelector:je,ResolutionSelector:Ze},emits:["generate"],computed:{config(){return this.$store.state.openaiimage?.config},consumption(){const e={...this.config||{}};return ae({...e},this.service?.cost)},service(){return this.$store.state.openaiimage?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Je={class:"flex flex-col h-full"},Ke={class:"flex-1 overflow-y-auto p-5"},Qe={class:"flex flex-col items-center justify-center px-5 pb-5"};function Xe(e,t,m,l,p,h){const u=n("model-selector"),d=n("resolution-selector"),_=n("prompt-input"),g=n("image-urls-input"),k=n("consumption"),r=n("font-awesome-icon"),b=n("el-button");return a(),i("div",Je,[c("div",Ke,[o(u,{class:"mb-4"}),o(d,{class:"mb-4"}),o(_,{class:"mb-4"}),o(g,{class:"mb-4"})]),c("div",Qe,[o(k,{value:e.consumption,service:e.service},null,8,["value","service"]),o(b,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:$(()=>[o(r,{icon:"fa-solid fa-magic",class:"mr-2"}),f(" "+s(e.$t("openaiimage.button.generate")),1)]),_:1},8,["onClick"])])])}const Ye=y(xe,[["render",Xe]]),et=w({name:"TaskPreview",components:{ElImage:me,CopyToClipboard:ie,FontAwesomeIcon:G,ElAlert:ce,ImageWrapper:le,ElButton:P,ElTooltip:re,ImagePreview:N},props:{modelValue:{type:Object,required:!0}},setup(){return{OPENAIIMAGE_LOGO:Y}},computed:{images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{const m=t;if(m?.image_url||m?.url){e.push(m);return}m?.b64_json&&e.push({...m,url:`data:image/png;base64,${m.b64_json}`})}),e}},methods:{onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.openaiimage?.config||{}};t.image_urls=[e],this.$store.commit("openaiimage/setConfig",t)}}}),tt={class:"preview"},ot={class:"left"},st={class:"main"},at={class:"bot"},nt={class:"datetime"},it={class:"info"},lt={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},rt={key:1,class:"prompt mt-2"},ct={key:0},mt={key:0,class:q({content:!0,failed:!0})},pt={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},ut={class:q({operations:!0,"mt-2":!0,"mb-2":!0})},dt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},gt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ht={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},_t={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},$t={key:1,class:q({content:!0})},vt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},bt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},kt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},wt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},yt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Et={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},It={key:2,class:q({content:!0})},Vt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},At={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Lt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Tt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"};function St(e,t,m,l,p,h){const u=n("el-image"),d=n("image-preview"),_=n("image-wrapper"),g=n("el-button"),k=n("el-tooltip"),r=n("font-awesome-icon"),b=n("copy-to-clipboard"),T=n("el-alert");return a(),i("div",tt,[c("div",ot,[o(u,{src:e.OPENAIIMAGE_LOGO,class:"avatar"},null,8,["src"])]),c("div",st,[c("div",at,[f(s(e.$t("openaiimage.name.openaiimageBot"))+" ",1),c("span",nt,s(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),c("div",it,[e.modelValue?.request?.image_urls&&e.modelValue?.request?.image_urls.length>0?(a(),i("div",lt,[(a(!0),i(E,null,L(e.modelValue?.request?.image_urls,(V,S)=>(a(),I(d,{key:S,url:V,name:`image-${S+1}`,closable:!1},null,8,["url","name"]))),128))])):v("",!0),e.modelValue?.request?.prompt?(a(),i("p",rt,[f(s(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?v("",!0):(a(),i("span",ct," - ("+s(e.$t("openaiimage.status.pending"))+") ",1))])):v("",!0)]),e.modelValue?.response?.success===!0?(a(),i("div",mt,[c("div",pt,[(a(!0),i(E,null,L(e.images,(V,S)=>(a(),I(_,{key:S,src:V?.image_url||V?.url||"","raw-src":V?.image_url||V?.url||""},null,8,["src","raw-src"]))),128))]),c("div",ut,[o(k,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:$(()=>[o(g,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=H(V=>e.onEdit(e.images?.[0]?.image_url||e.images?.[0]?.url),["stop"]))},{default:$(()=>[f(s(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),o(T,{closable:!1,class:"mt-2 success"},{default:$(()=>[e.modelValue?.request?.model?(a(),i("p",dt,[o(r,{icon:"fa-solid fa-cube",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.model"))+": "+s(e.modelValue?.request?.model),1)])):v("",!0),e.modelValue?.request?.size?(a(),i("p",gt,[o(r,{icon:"fa-solid fa-image",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.size"))+": "+s(e.modelValue?.request?.size),1)])):v("",!0),e.modelValue?.request?.action?(a(),i("p",ft,[o(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.task"))+": "+s(e.modelValue?.request?.action==="generate"?e.$t("openaiimage.name.generate"):e.$t("openaiimage.name.edits")),1)])):v("",!0),c("p",ht,[o(r,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.taskId"))+": "+s(e.modelValue?.id)+" ",1),o(b,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.response?.trace_id?(a(),i("p",_t,[o(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.traceId"))+": "+s(e.modelValue?.response?.trace_id)+" ",1),o(b,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(a(),i("div",$t,[o(T,{closable:!1,class:"failure"},{template:$(()=>[o(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.failure")),1)]),default:$(()=>[e.modelValue?.request?.model?(a(),i("p",vt,[o(r,{icon:"fa-solid fa-cube",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.model"))+": "+s(e.modelValue?.request?.model),1)])):v("",!0),e.modelValue?.request?.size?(a(),i("p",bt,[o(r,{icon:"fa-solid fa-image",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.size"))+": "+s(e.modelValue?.request?.size),1)])):v("",!0),e.modelValue?.request?.action?(a(),i("p",kt,[o(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.task"))+": "+s(e.modelValue?.request?.action==="generate"?e.$t("openaiimage.name.generate"):e.$t("openaiimage.name.edits")),1)])):v("",!0),c("p",wt,[o(r,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.taskId"))+": "+s(e.modelValue?.id)+" ",1),o(b,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),c("p",yt,[o(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.failureReason"))+": "+s(e.modelValue?.response?.error?.message)+" ",1),o(b,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.trace_id?(a(),i("p",Et,[o(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.traceId"))+": "+s(e.modelValue?.response?.trace_id)+" ",1),o(b,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):v("",!0)]),_:1})])):(a(),i("div",It,[o(T,{closable:!1,class:"info"},{template:$(()=>[o(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.failure")),1)]),default:$(()=>[e.modelValue?.request?.model?(a(),i("p",Vt,[o(r,{icon:"fa-solid fa-cube",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.model"))+": "+s(e.modelValue?.request?.model),1)])):v("",!0),e.modelValue?.request?.size?(a(),i("p",At,[o(r,{icon:"fa-solid fa-image",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.size"))+": "+s(e.modelValue?.request?.size),1)])):v("",!0),e.modelValue?.request?.action?(a(),i("p",Lt,[o(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.task"))+": "+s(e.modelValue?.request?.action==="generate"?e.$t("openaiimage.name.generate"):e.$t("openaiimage.name.edits")),1)])):v("",!0),c("p",Tt,[o(r,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.taskId"))+": "+s(e.modelValue?.id)+" ",1),o(b,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const Gt=y(et,[["render",St],["__scopeId","data-v-0235adad"]]),Pt=w({name:"RecentPanel",components:{TaskPreview:Gt,BotPlaceholder:pe,NoTasks:ue,ScrollList:ee},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.openaiimage?.tasks,items:this.$store.state.openaiimage?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),qt={key:0},Ot={key:2,class:"w-full h-full flex items-center justify-center"};function Rt(e,t,m,l,p,h){const u=n("bot-placeholder"),d=n("task-preview"),_=n("scroll-list"),g=n("no-tasks");return a(),i(E,null,[e.tasks?.items===void 0?(a(),i("div",qt,[o(u)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),I(_,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=k=>e.$emit("reach-top"))},{default:$(()=>[(a(!0),i(E,null,L(e.tasks?.items,k=>(a(),I(d,{key:k.id,"model-value":k},null,8,["model-value"]))),128))]),_:1},8,["loading"])):v("",!0),e.tasks?.items?.length===0?(a(),i("div",Ot,[o(g)])):v("",!0)],64)}const Ct=y(Pt,[["render",Rt]]),D="https://webhook.acedata.cloud/openaiimage",Ut=w({name:"OpenAIImageIndex",components:{ConfigPanel:Ye,Layout:$e,RecentPanel:Ct},inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.openaiimage?.status?.getApplications===z.Request},tasksLoading(){return this.$store.state.openaiimage?.status?.getTasks===z.Request},credential(){return this.$store.state.openaiimage?.credential},config(){return this.$store.state.openaiimage?.config},application(){return this.$store.state.openaiimage?.application},tasks(){return this.$store.state.openaiimage?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){if(console.debug("reached top"),this.loading||this.tasksLoading)return;const e=this.tasks?.total,t=this.tasks?.items?.length||0;if(e!==void 0&&e<=t)return;const m=this.tasks?.items?.[0];if(!m?.created_at)return;const p=this.$refs.recentPanel?.getScrollElement?.(),h=p?.scrollHeight||0,u=p?.scrollTop||0;this.loading=!0;try{if(await this.onGetTasks({createdAtMax:m.created_at}),await this.$nextTick(),p){const d=p.scrollHeight;p.scrollTop=d-h+u}}finally{this.loading=!1}},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("openaiimage/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("openaiimage/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=20,createdAtMin:m,createdAtMax:l}=e||{};console.debug("limit",t,"createdAtMin",m,"createdAtMax",l),await this.$store.dispatch("openaiimage/getTasks",{limit:t,createdAtMin:m,createdAtMax:l})},async onGenerate(){const e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;!t&&"image_urls"in e&&delete e.image_urls;const m={...e,action:"generate",callback_url:D},l={action:"edit",model:e?.model,prompt:e?.prompt,image_urls:e?.image_urls||[],callback_url:D},p=this.credential?.token;if(!p){console.error("no token specified");return}A.info(this.$t("openaiimage.message.startingTask")),(t?j.edit(l,{token:p}):j.generate(m,{token:p})).then(u=>{console.debug("task accepted",u.data?.task_id),A.success(this.$t("openaiimage.message.startTaskSuccess"))}).catch(u=>{const d=u?.response?.data;d?.error?.code===ne?A.error(this.$t("openaiimage.message.usedUp")):A.error(this.$t("openaiimage.message.startTaskFailed")+(d?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Mt(e,t,m,l,p,h){const u=n("config-panel"),d=n("recent-panel"),_=n("layout");return a(),I(_,null,{config:$(()=>[o(u,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:$(()=>[o(d,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Lo=y(Ut,[["render",Mt]]);export{Lo as default};
1
+ import{F as G}from"./index.es-CTSlEmkZ.js";import{E as P}from"./index-C2C5Wr_B.js";import{E as W}from"./index-D2HSg-zC.js";import{d as w,H as i,E as c,z as R,C as o,y as $,D as n,q as a,F as s,I as f,O as E,N as L,x as I,J as v,M as H,Q as q}from"./vendor-vue-C5BV5QrY.js";import{D as y,b1 as Z,ch as x,ci as J,cj as K,ck as Q,cl as X,cm as C,cn as U,co as M,cp as Y,ao as z}from"./index-DxnrvYVH.js";import{I as O,S as ee}from"./ScrollList-ppHF7k1A.js";import{E as te}from"./index-CVHZPJ6x.js";import{I as N}from"./ImagePreview-hUTkC0Ih.js";import{E as oe}from"./index-De6GneQ8.js";import{E as A}from"./index-BEISdWxi.js";import{C as se}from"./Consumption-C-RXHwF8.js";import{a as ae}from"./price-pXO0t_ig.js";import{a as B,E as F}from"./index-DiqBmBf1.js";import{b as ne}from"./errorCode-Cqj9Td_Z.js";import{o as j}from"./openaiimage-Dp1aJmh-.js";import{C as ie}from"./CopyToClipboard-j5Q2Kc6N.js";import{I as le}from"./ImageWrapper-nAPnMgFW.js";import{E as re}from"./index-CZSdwn7u.js";import{E as ce}from"./index-CVh8Wj89.js";import{E as me}from"./index-BoNQ2bwh.js";import{B as pe}from"./BotPlaceholder-CnYzSwa6.js";import{N as ue}from"./NoTasks-DCFz_cPB.js";import"./use-form-item-CVgF_2-v.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-Bl-Po99g.js";import"./typescript-Cdvt30Lj.js";import"./index-BoMrEY9d.js";import"./index-D5nhIR6Q.js";import"./index-Qx6yMP72.js";import"./_baseClone-OaArZu3M.js";import"./_Uint8Array-B9wo990u.js";import"./_initCloneObject-CezWJWWn.js";import"./isEqual-6gRCrOyw.js";import"./index-Ht8ZOU1H.js";import"./strings-DGr9fDRd.js";import"./castArray-CEgxRlUQ.js";import"./debounce-z3wHMjDj.js";import"./_baseIteratee-CAzVICbz.js";import"./index-BfOryRNq.js";import"./index-5durBcIc.js";const de=w({name:"LayoutNanobanana",components:{ElDrawer:W,ElButton:P,FontAwesomeIcon:G},data(){return{drawer:!1}}}),ge={class:"main flex flex-row flex-1"},fe={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},he={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function _e(e,t,m,l,p,h){const u=n("font-awesome-icon"),d=n("el-button"),_=n("el-drawer");return a(),i("div",ge,[c("div",fe,[R(e.$slots,"config",{},void 0,!0)]),c("div",he,[R(e.$slots,"result",{},void 0,!0)]),o(d,{circle:"",class:"menu",onClick:t[0]||(t[0]=g=>e.drawer=!0)},{default:$(()=>[o(u,{icon:"fa-solid fa-magic"})]),_:1}),o(_,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=g=>e.drawer=g),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:$(()=>[R(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const $e=y(de,[["render",_e],["__scopeId","data-v-bfe5cd4b"]]),ve="",be=w({name:"PromptInput",components:{ElInput:te,InfoIcon:O},computed:{prompt:{get(){return this.$store.state.openaiimage?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("openaiimage/setConfig",{...this.$store.state.openaiimage?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=ve)}}),ke={class:"field"},we={class:"box"},ye={class:"title font-bold"};function Ee(e,t,m,l,p,h){const u=n("info-icon"),d=n("el-input");return a(),i("div",ke,[c("div",we,[c("h2",ye,s(e.$t("openaiimage.name.prompt")),1),o(u,{content:e.$t("openaiimage.description.prompt"),class:"info"},null,8,["content"])]),o(d,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=_=>e.prompt=_),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("openaiimage.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ie=y(be,[["render",Ee],["__scopeId","data-v-92f61e4a"]]),Ve=w({name:"ImageUrlsInput",components:{ElUpload:oe,ElButton:P,InfoIcon:O,ImagePreview:N,FontAwesomeIcon:G},data(){return{fileList:[],uploadUrl:Z()+"/api/v1/files/",suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.openaiimage?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const l=(this.fileList||[]).filter(p=>!p?.response?.file_url);this.fileList=l.length?l:[];return}const t=[];e.forEach(l=>{const p=this.fileList.find(h=>h?.response?.file_url===l||h?.url===l);p?t.push(p):t.push({name:l.split("/").pop()||l,url:l,status:"success",percentage:100,response:{file_url:l}})}),(this.fileList||[]).filter(l=>!l?.response?.file_url).forEach(l=>{t.some(h=>h===l||h?.url===l?.url||h?.response?.file_url===l?.response?.file_url)||t.push(l)}),this.fileList=t}}},mounted(){},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url=="string"&&e.url.startsWith("blob:"))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImageUrls()},onExceed(){A.warning(this.$t("openaiimage.message.uploadImageExceed"))},onError(){A.error(this.$t("openaiimage.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("openaiimage/setConfig",{...this.$store.state.openaiimage?.config,image_urls:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImageUrls()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url=="string"&&t.url.startsWith("blob:"))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImageUrls()}}}),Ae={class:"field flex items-center justify-between"},Le={class:"title font-bold text-[14px] mb-[10px]"},Te={class:"upload-wrapper flex flex-col items-start gap-[8px]"},Se={class:"controls flex items-center"},Ge={class:"file-list flex flex-wrap gap-[10px]"};function Pe(e,t,m,l,p,h){const u=n("font-awesome-icon"),d=n("el-button"),_=n("el-upload"),g=n("info-icon"),k=n("image-preview");return a(),i(E,null,[c("div",Ae,[c("h2",Le,s(e.$t("openaiimage.name.imageUrls")),1),c("div",Te,[c("div",Se,[o(_,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=r=>e.fileList=r),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value",limit:5,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:$(()=>[o(d,{size:"small",type:"primary",round:""},{default:$(()=>[o(u,{icon:"fa-solid fa-upload",class:"mr-1"}),f(" "+s(e.$t("openaiimage.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"]),o(g,{content:e.$t("openaiimage.description.imageUrls"),class:"ml-2"},null,8,["content"])])])]),c("div",Ge,[(a(!0),i(E,null,L(e.fileList,(r,b)=>(a(),I(k,{key:r.uid||r?.response?.file_url||r.url||b,url:r.url||r?.response?.file_url,name:r.name,percentage:r.percentage,onRemove:T=>e.onRemovePreview(b,r)},null,8,["url","name","percentage","onRemove"]))),128))])],64)}const qe=y(Ve,[["render",Pe]]),Oe=w({name:"OpenAIImageModelSelector",components:{ElSelect:F,ElOption:B,InfoIcon:O},data(){return{options:[{value:J,label:this.$t("openaiimage.model.gptImage1")},{value:K,label:this.$t("openaiimage.model.gptImage15")},{value:Q,label:this.$t("openaiimage.model.gptImage2")}]}},computed:{value:{get(){return this.$store.state.openaiimage?.config?.model},set(e){this.$store.commit("openaiimage/setConfig",{...this.$store.state.openaiimage?.config,model:e})}},modelDescription(){return this.$t("openaiimage.description.model")}},mounted(){this.value||(this.value=x)}}),Re={class:"field"},Ce={class:"label"},Ue={class:"box"},Me={class:"title font-bold"};function ze(e,t,m,l,p,h){const u=n("info-icon"),d=n("el-option"),_=n("el-select");return a(),i("div",Re,[c("div",Ce,[c("div",Ue,[c("h2",Me,s(e.$t("openaiimage.name.model")),1),o(u,{content:e.modelDescription,class:"info"},null,8,["content"])])]),o(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=g=>e.value=g),class:"value",placeholder:e.$t("openaiimage.placeholder.select")},{default:$(()=>[(a(!0),i(E,null,L(e.options,g=>(a(),I(d,{key:g.value,label:g.label,value:g.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const je=y(Oe,[["render",ze],["__scopeId","data-v-cec771bd"]]),De=w({name:"OpenAIImageSizeSelector",components:{ElSelect:F,ElOption:B,InfoIcon:O},data(){return{options:[{value:C,label:C},{value:U,label:U},{value:M,label:M}]}},computed:{value:{get(){return this.$store.state.openaiimage?.config?.size},set(e){this.$store.commit("openaiimage/setConfig",{...this.$store.state.openaiimage?.config,size:e})}}},mounted(){this.value||(this.value=X)}}),Ne={class:"field"},Be={class:"label"},Fe={class:"box"},We={class:"title font-bold"};function He(e,t,m,l,p,h){const u=n("info-icon"),d=n("el-option"),_=n("el-select");return a(),i("div",Ne,[c("div",Be,[c("div",Fe,[c("h2",We,s(e.$t("openaiimage.name.size")),1),o(u,{content:e.$t("openaiimage.description.size"),class:"info"},null,8,["content"])])]),o(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=g=>e.value=g),class:"value",placeholder:e.$t("openaiimage.placeholder.select")},{default:$(()=>[(a(!0),i(E,null,L(e.options,g=>(a(),I(d,{key:g.value,label:g.label,value:g.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ze=y(De,[["render",He],["__scopeId","data-v-11116785"]]),xe=w({name:"ConfigPanel",components:{ElButton:P,FontAwesomeIcon:G,PromptInput:Ie,Consumption:se,ImageUrlsInput:qe,ModelSelector:je,ResolutionSelector:Ze},emits:["generate"],computed:{config(){return this.$store.state.openaiimage?.config},consumption(){const e={...this.config||{}};return ae({...e},this.service?.cost)},service(){return this.$store.state.openaiimage?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Je={class:"flex flex-col h-full"},Ke={class:"flex-1 overflow-y-auto p-5"},Qe={class:"flex flex-col items-center justify-center px-5 pb-5"};function Xe(e,t,m,l,p,h){const u=n("model-selector"),d=n("resolution-selector"),_=n("prompt-input"),g=n("image-urls-input"),k=n("consumption"),r=n("font-awesome-icon"),b=n("el-button");return a(),i("div",Je,[c("div",Ke,[o(u,{class:"mb-4"}),o(d,{class:"mb-4"}),o(_,{class:"mb-4"}),o(g,{class:"mb-4"})]),c("div",Qe,[o(k,{value:e.consumption,service:e.service},null,8,["value","service"]),o(b,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:$(()=>[o(r,{icon:"fa-solid fa-magic",class:"mr-2"}),f(" "+s(e.$t("openaiimage.button.generate")),1)]),_:1},8,["onClick"])])])}const Ye=y(xe,[["render",Xe]]),et=w({name:"TaskPreview",components:{ElImage:me,CopyToClipboard:ie,FontAwesomeIcon:G,ElAlert:ce,ImageWrapper:le,ElButton:P,ElTooltip:re,ImagePreview:N},props:{modelValue:{type:Object,required:!0}},setup(){return{OPENAIIMAGE_LOGO:Y}},computed:{images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{const m=t;if(m?.image_url||m?.url){e.push(m);return}m?.b64_json&&e.push({...m,url:`data:image/png;base64,${m.b64_json}`})}),e}},methods:{onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.openaiimage?.config||{}};t.image_urls=[e],this.$store.commit("openaiimage/setConfig",t)}}}),tt={class:"preview"},ot={class:"left"},st={class:"main"},at={class:"bot"},nt={class:"datetime"},it={class:"info"},lt={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},rt={key:1,class:"prompt mt-2"},ct={key:0},mt={key:0,class:q({content:!0,failed:!0})},pt={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},ut={class:q({operations:!0,"mt-2":!0,"mb-2":!0})},dt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},gt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ht={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},_t={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},$t={key:1,class:q({content:!0})},vt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},bt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},kt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},wt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},yt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Et={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},It={key:2,class:q({content:!0})},Vt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},At={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Lt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Tt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"};function St(e,t,m,l,p,h){const u=n("el-image"),d=n("image-preview"),_=n("image-wrapper"),g=n("el-button"),k=n("el-tooltip"),r=n("font-awesome-icon"),b=n("copy-to-clipboard"),T=n("el-alert");return a(),i("div",tt,[c("div",ot,[o(u,{src:e.OPENAIIMAGE_LOGO,class:"avatar"},null,8,["src"])]),c("div",st,[c("div",at,[f(s(e.$t("openaiimage.name.openaiimageBot"))+" ",1),c("span",nt,s(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),c("div",it,[e.modelValue?.request?.image_urls&&e.modelValue?.request?.image_urls.length>0?(a(),i("div",lt,[(a(!0),i(E,null,L(e.modelValue?.request?.image_urls,(V,S)=>(a(),I(d,{key:S,url:V,name:`image-${S+1}`,closable:!1},null,8,["url","name"]))),128))])):v("",!0),e.modelValue?.request?.prompt?(a(),i("p",rt,[f(s(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?v("",!0):(a(),i("span",ct," - ("+s(e.$t("openaiimage.status.pending"))+") ",1))])):v("",!0)]),e.modelValue?.response?.success===!0?(a(),i("div",mt,[c("div",pt,[(a(!0),i(E,null,L(e.images,(V,S)=>(a(),I(_,{key:S,src:V?.image_url||V?.url||"","raw-src":V?.image_url||V?.url||""},null,8,["src","raw-src"]))),128))]),c("div",ut,[o(k,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:$(()=>[o(g,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=H(V=>e.onEdit(e.images?.[0]?.image_url||e.images?.[0]?.url),["stop"]))},{default:$(()=>[f(s(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),o(T,{closable:!1,class:"mt-2 success"},{default:$(()=>[e.modelValue?.request?.model?(a(),i("p",dt,[o(r,{icon:"fa-solid fa-cube",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.model"))+": "+s(e.modelValue?.request?.model),1)])):v("",!0),e.modelValue?.request?.size?(a(),i("p",gt,[o(r,{icon:"fa-solid fa-image",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.size"))+": "+s(e.modelValue?.request?.size),1)])):v("",!0),e.modelValue?.request?.action?(a(),i("p",ft,[o(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.task"))+": "+s(e.modelValue?.request?.action==="generate"?e.$t("openaiimage.name.generate"):e.$t("openaiimage.name.edits")),1)])):v("",!0),c("p",ht,[o(r,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.taskId"))+": "+s(e.modelValue?.id)+" ",1),o(b,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.response?.trace_id?(a(),i("p",_t,[o(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.traceId"))+": "+s(e.modelValue?.response?.trace_id)+" ",1),o(b,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(a(),i("div",$t,[o(T,{closable:!1,class:"failure"},{template:$(()=>[o(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.failure")),1)]),default:$(()=>[e.modelValue?.request?.model?(a(),i("p",vt,[o(r,{icon:"fa-solid fa-cube",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.model"))+": "+s(e.modelValue?.request?.model),1)])):v("",!0),e.modelValue?.request?.size?(a(),i("p",bt,[o(r,{icon:"fa-solid fa-image",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.size"))+": "+s(e.modelValue?.request?.size),1)])):v("",!0),e.modelValue?.request?.action?(a(),i("p",kt,[o(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.task"))+": "+s(e.modelValue?.request?.action==="generate"?e.$t("openaiimage.name.generate"):e.$t("openaiimage.name.edits")),1)])):v("",!0),c("p",wt,[o(r,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.taskId"))+": "+s(e.modelValue?.id)+" ",1),o(b,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),c("p",yt,[o(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.failureReason"))+": "+s(e.modelValue?.response?.error?.message)+" ",1),o(b,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.trace_id?(a(),i("p",Et,[o(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.traceId"))+": "+s(e.modelValue?.response?.trace_id)+" ",1),o(b,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):v("",!0)]),_:1})])):(a(),i("div",It,[o(T,{closable:!1,class:"info"},{template:$(()=>[o(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.failure")),1)]),default:$(()=>[e.modelValue?.request?.model?(a(),i("p",Vt,[o(r,{icon:"fa-solid fa-cube",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.model"))+": "+s(e.modelValue?.request?.model),1)])):v("",!0),e.modelValue?.request?.size?(a(),i("p",At,[o(r,{icon:"fa-solid fa-image",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.size"))+": "+s(e.modelValue?.request?.size),1)])):v("",!0),e.modelValue?.request?.action?(a(),i("p",Lt,[o(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.task"))+": "+s(e.modelValue?.request?.action==="generate"?e.$t("openaiimage.name.generate"):e.$t("openaiimage.name.edits")),1)])):v("",!0),c("p",Tt,[o(r,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+s(e.$t("openaiimage.name.taskId"))+": "+s(e.modelValue?.id)+" ",1),o(b,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const Gt=y(et,[["render",St],["__scopeId","data-v-0235adad"]]),Pt=w({name:"RecentPanel",components:{TaskPreview:Gt,BotPlaceholder:pe,NoTasks:ue,ScrollList:ee},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.openaiimage?.tasks,items:this.$store.state.openaiimage?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),qt={key:0},Ot={key:2,class:"w-full h-full flex items-center justify-center"};function Rt(e,t,m,l,p,h){const u=n("bot-placeholder"),d=n("task-preview"),_=n("scroll-list"),g=n("no-tasks");return a(),i(E,null,[e.tasks?.items===void 0?(a(),i("div",qt,[o(u)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),I(_,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=k=>e.$emit("reach-top"))},{default:$(()=>[(a(!0),i(E,null,L(e.tasks?.items,k=>(a(),I(d,{key:k.id,"model-value":k},null,8,["model-value"]))),128))]),_:1},8,["loading"])):v("",!0),e.tasks?.items?.length===0?(a(),i("div",Ot,[o(g)])):v("",!0)],64)}const Ct=y(Pt,[["render",Rt]]),D="https://webhook.acedata.cloud/openaiimage",Ut=w({name:"OpenAIImageIndex",components:{ConfigPanel:Ye,Layout:$e,RecentPanel:Ct},inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.openaiimage?.status?.getApplications===z.Request},tasksLoading(){return this.$store.state.openaiimage?.status?.getTasks===z.Request},credential(){return this.$store.state.openaiimage?.credential},config(){return this.$store.state.openaiimage?.config},application(){return this.$store.state.openaiimage?.application},tasks(){return this.$store.state.openaiimage?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){if(console.debug("reached top"),this.loading||this.tasksLoading)return;const e=this.tasks?.total,t=this.tasks?.items?.length||0;if(e!==void 0&&e<=t)return;const m=this.tasks?.items?.[0];if(!m?.created_at)return;const p=this.$refs.recentPanel?.getScrollElement?.(),h=p?.scrollHeight||0,u=p?.scrollTop||0;this.loading=!0;try{if(await this.onGetTasks({createdAtMax:m.created_at}),await this.$nextTick(),p){const d=p.scrollHeight;p.scrollTop=d-h+u}}finally{this.loading=!1}},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("openaiimage/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("openaiimage/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=20,createdAtMin:m,createdAtMax:l}=e||{};console.debug("limit",t,"createdAtMin",m,"createdAtMax",l),await this.$store.dispatch("openaiimage/getTasks",{limit:t,createdAtMin:m,createdAtMax:l})},async onGenerate(){const e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;!t&&"image_urls"in e&&delete e.image_urls;const m={...e,action:"generate",callback_url:D},l={action:"edit",model:e?.model,prompt:e?.prompt,image_urls:e?.image_urls||[],callback_url:D},p=this.credential?.token;if(!p){console.error("no token specified");return}A.info(this.$t("openaiimage.message.startingTask")),(t?j.edit(l,{token:p}):j.generate(m,{token:p})).then(u=>{console.debug("task accepted",u.data?.task_id),A.success(this.$t("openaiimage.message.startTaskSuccess"))}).catch(u=>{const d=u?.response?.data;d?.error?.code===ne?A.error(this.$t("openaiimage.message.usedUp")):A.error(this.$t("openaiimage.message.startTaskFailed")+(d?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Mt(e,t,m,l,p,h){const u=n("config-panel"),d=n("recent-panel"),_=n("layout");return a(),I(_,null,{config:$(()=>[o(u,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:$(()=>[o(d,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Lo=y(Ut,[["render",Mt]]);export{Lo as default};