@acedatacloud/nexior 3.44.0 → 3.45.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 (205) hide show
  1. package/dist/assets/{Auth-BhPzf-Ti.js → Auth-C9xSYJ13.js} +1 -1
  2. package/dist/assets/{BotPlaceholder-Bo9dgZvP.js → BotPlaceholder-BfJyCZe5.js} +1 -1
  3. package/dist/assets/{Callback-DcUptxE5.js → Callback-B2k4paJm.js} +1 -1
  4. package/dist/assets/{Console-Ds07RMhz.js → Console-Bm1FaWzA.js} +1 -1
  5. package/dist/assets/{Consumption-CyJkpzDZ.js → Consumption-DwyEh2id.js} +1 -1
  6. package/dist/assets/{Conversation-CEAKW51C.js → Conversation-DtGy1dUQ.js} +1 -1
  7. package/dist/assets/{CopyToClipboard-9qCYDiH6.js → CopyToClipboard-6pnI9uu0.js} +1 -1
  8. package/dist/assets/{Detail-BRUXu15s.js → Detail-KnDX30Va.js} +2 -2
  9. package/dist/assets/{EditArray-CTE3EMRa.js → EditArray-CEadF9cS.js} +1 -1
  10. package/dist/assets/{Extra-3msP7-dn.js → Extra-DhA6dao9.js} +1 -1
  11. package/dist/assets/{FilePreview-qi9ZXwAu.js → FilePreview-W8e20EBQ.js} +1 -1
  12. package/dist/assets/{History-Dl4zgONf.js → History-Cmlx01Je.js} +1 -1
  13. package/dist/assets/{IconPark.vue_vue_type_script_setup_true_lang-7o0TqoCK.js → IconPark.vue_vue_type_script_setup_true_lang-DiVfiptZ.js} +1 -1
  14. package/dist/assets/{ImagePreview-Dok-mWnh.js → ImagePreview-DiG8EmAe.js} +1 -1
  15. package/dist/assets/{ImageWrapper-DO4MvTt6.js → ImageWrapper-DFcbEaxu.js} +1 -1
  16. package/dist/assets/{Index-DLJzUYuN.js → Index--s3YeANd.js} +1 -1
  17. package/dist/assets/{Index-CLlpkHH8.js → Index-0z37g8zM.js} +1 -1
  18. package/dist/assets/{Index-BWkphhDk.js → Index-5BXsWi3J.js} +1 -1
  19. package/dist/assets/{Index-Dl5u62II.js → Index-BJXmPJ_3.js} +1 -1
  20. package/dist/assets/{Index-BUMEm1E4.js → Index-BPmVt1pP.js} +1 -1
  21. package/dist/assets/{Index-Oj5Cev61.js → Index-BZN-Qt7l.js} +1 -1
  22. package/dist/assets/{Index-DI1-gaOK.js → Index-BiHn_nZJ.js} +1 -1
  23. package/dist/assets/{Index-D4b9nkhL.js → Index-Bm5iaDyb.js} +1 -1
  24. package/dist/assets/{Index-B9XK0C4R.js → Index-Bvnj8Dla.js} +1 -1
  25. package/dist/assets/{Index-U3q7XnSx.js → Index-C2ccPCvh.js} +1 -1
  26. package/dist/assets/{Index-BMOvZ0QL.js → Index-C8kefURJ.js} +1 -1
  27. package/dist/assets/{Index-DrTzuDka.js → Index-CZutLC0D.js} +1 -1
  28. package/dist/assets/{Index-KRK4Io4x.js → Index-CaMnVD4p.js} +1 -1
  29. package/dist/assets/{Index-B-HG0CCt.js → Index-CdwnmH9Z.js} +1 -1
  30. package/dist/assets/{Index-D072TBRy.js → Index-CofTYfZJ.js} +1 -1
  31. package/dist/assets/{Index-q5-zo3DU.js → Index-Cq_e-kXq.js} +1 -1
  32. package/dist/assets/{Index-ZZckMasb.js → Index-CvC_ZrtT.js} +1 -1
  33. package/dist/assets/{Index-CTTRa3WH.js → Index-DXkAp7kj.js} +1 -1
  34. package/dist/assets/{Index-vhoDh173.js → Index-DYxC6F2l.js} +1 -1
  35. package/dist/assets/{Index-B1Qz2aGw.js → Index-DjBYt0hJ.js} +1 -1
  36. package/dist/assets/{Index-BA2TXNu5.js → Index-DxpqsvWT.js} +1 -1
  37. package/dist/assets/{Index-B1vUDzl8.js → Index-RC-tfDMm.js} +1 -1
  38. package/dist/assets/{Index-BDtL9B7V.js → Index-WLegNQan.js} +1 -1
  39. package/dist/assets/{Index-DXqxQBYR.js → Index-sx7FK6pN.js} +1 -1
  40. package/dist/assets/{Invitees-tt1o0ocq.js → Invitees-C1eCGOfu.js} +1 -1
  41. package/dist/assets/{List--tFybb-b.js → List-ByTzmlWP.js} +1 -1
  42. package/dist/assets/{List-FAWPriGH.js → List-DlNyad7Q.js} +1 -1
  43. package/dist/assets/{List-BDy3Ri5F.js → List-DqWibweA.js} +1 -1
  44. package/dist/assets/{Main-BZuZoVsb.js → Main-4nwkzvXK.js} +1 -1
  45. package/dist/assets/{Navigator-BLG5x3Yp.js → Navigator-BsOguq8g.js} +1 -1
  46. package/dist/assets/{NoTasks-CJsE40jB.js → NoTasks-Dh1ZLJoo.js} +1 -1
  47. package/dist/assets/{OAuthCallback-dYyFDVd5.js → OAuthCallback-D4_nRddx.js} +1 -1
  48. package/dist/assets/{Pagination-B233OXW7.js → Pagination-O8F26VyP.js} +1 -1
  49. package/dist/assets/{ScrollList-BvJlbkuP.js → ScrollList-Bg9XoeXr.js} +1 -1
  50. package/dist/assets/{Status-D_LmdqGY.js → Status-BN7ovGK6.js} +1 -1
  51. package/dist/assets/{Subscribe-qSoGjCKn.js → Subscribe-KmChXp3a.js} +1 -1
  52. package/dist/assets/{TransportWebHID-DFgbMXOS.js → TransportWebHID-EsmlaNLB.js} +1 -1
  53. package/dist/assets/{VideoPlayer-BGEYAPlk.js → VideoPlayer-CvDqvGIC.js} +1 -1
  54. package/dist/assets/{_Uint8Array-9dmsQrsP.js → _Uint8Array-Bje2NAqX.js} +1 -1
  55. package/dist/assets/{_baseClone-DvV9-v-c.js → _baseClone-BvSIk2Dq.js} +1 -1
  56. package/dist/assets/{_baseIteratee-BevRfjTA.js → _baseIteratee-CRIhlIS7.js} +1 -1
  57. package/dist/assets/{_initCloneObject-DAG7nN4w.js → _initCloneObject-BDx_mvcr.js} +1 -1
  58. package/dist/assets/{add-Btml7mBl.js → add-D9vyX8yo.js} +1 -1
  59. package/dist/assets/{all-wallets-DCm-nDXf.js → all-wallets-Bh_ChrON.js} +1 -1
  60. package/dist/assets/{app-store-D-gSL9Yc.js → app-store-DcdfkBnh.js} +1 -1
  61. package/dist/assets/{apple-B__z0cJt.js → apple-D7HuvwbH.js} +1 -1
  62. package/dist/assets/{arrow-bottom-oxruawRn.js → arrow-bottom-BYE2XsJV.js} +1 -1
  63. package/dist/assets/{arrow-bottom-circle-zDoBiavA.js → arrow-bottom-circle-DcaDFk60.js} +1 -1
  64. package/dist/assets/{arrow-left-C076gjbw.js → arrow-left-h1--LFFK.js} +1 -1
  65. package/dist/assets/{arrow-right-CzQHrDzV.js → arrow-right-AHa7ajAV.js} +1 -1
  66. package/dist/assets/{arrow-top-dR8ZqCBU.js → arrow-top-7T77UwPV.js} +1 -1
  67. package/dist/assets/{avatar-DfIVMpeI.js → avatar-D3CtnVUJ.js} +1 -1
  68. package/dist/assets/{bank-GNtvZ2BA.js → bank-Bd2Hk3QT.js} +1 -1
  69. package/dist/assets/{basic-hE8HRGC-.js → basic-CiHoLiuj.js} +1 -1
  70. package/dist/assets/{bignumber-DWvwpj66.js → bignumber-BejGR1Af.js} +1 -1
  71. package/dist/assets/{browser-8-EC8l43.js → browser-CmDARrf-.js} +1 -1
  72. package/dist/assets/{card-BumMOEEc.js → card-BVNV6M9E.js} +1 -1
  73. package/dist/assets/{castArray-BxXcA5jl.js → castArray-mR3ylEMC.js} +1 -1
  74. package/dist/assets/chat-BVX1nB4c.js +1 -0
  75. package/dist/assets/chat-BaXHJJsF.js +1 -0
  76. package/dist/assets/{checkmark-9-cz_YBL.js → checkmark-BouAfmbu.js} +1 -1
  77. package/dist/assets/{checkmark-bold-BBs2Tm5c.js → checkmark-bold-CLn4y_80.js} +1 -1
  78. package/dist/assets/{chevron-bottom-DDN1YYT_.js → chevron-bottom-V3PGjfpc.js} +1 -1
  79. package/dist/assets/{chevron-left-DjXQ8NfY.js → chevron-left-BH_BnP1o.js} +1 -1
  80. package/dist/assets/{chevron-right-CvUUlN-p.js → chevron-right-BbSbWgCu.js} +1 -1
  81. package/dist/assets/{chevron-top-bOuO-TVJ.js → chevron-top-yn_6J048.js} +1 -1
  82. package/dist/assets/{chrome-store-DFNKQ5Qh.js → chrome-store-CMYHBcwR.js} +1 -1
  83. package/dist/assets/{clock-B7-Xoq63.js → clock-BKYaACeU.js} +1 -1
  84. package/dist/assets/{close-DqEKmwG6.js → close-BX1amLOC.js} +1 -1
  85. package/dist/assets/{coinPlaceholder-CeIA8qYY.js → coinPlaceholder-Bg17Qz5u.js} +1 -1
  86. package/dist/assets/{compass-B7PK9JyU.js → compass-CIcP3uDP.js} +1 -1
  87. package/dist/assets/{copy-DgNRrB-g.js → copy-82vEG0H0.js} +1 -1
  88. package/dist/assets/{cursor-vw_ee5US.js → cursor-DAUzNLJ0.js} +1 -1
  89. package/dist/assets/{cursor-transparent-BGcnVB2b.js → cursor-transparent-B8PeIvUY.js} +1 -1
  90. package/dist/assets/{debounce-DI9xWcc4.js → debounce-ow11MzZE.js} +1 -1
  91. package/dist/assets/{desktop-DozWh6RT.js → desktop-BC9vhONC.js} +1 -1
  92. package/dist/assets/{disconnect-DU0YR7Wo.js → disconnect-CuWC7Utz.js} +1 -1
  93. package/dist/assets/{discord-ps0NDjSa.js → discord-MAV0M7yG.js} +1 -1
  94. package/dist/assets/{distribution-BHzlTOBY.js → distribution-CYqmfLnx.js} +1 -1
  95. package/dist/assets/{dropdown-vrWW4lbE.js → dropdown-BPbG7pwy.js} +1 -1
  96. package/dist/assets/{etherscan-BAhvJEer.js → etherscan-BLM58ZuX.js} +1 -1
  97. package/dist/assets/{exclamation-triangle-BawcsrLa.js → exclamation-triangle-XSNG9-kO.js} +1 -1
  98. package/dist/assets/{extension-DaHQYwet.js → extension-BVefIu__.js} +1 -1
  99. package/dist/assets/{external-link-D6HnDTbj.js → external-link-BC1koas6.js} +1 -1
  100. package/dist/assets/{facebook-C_WvjXNO.js → facebook-CgIwbxk9.js} +1 -1
  101. package/dist/assets/{farcaster-DvmRHjGR.js → farcaster-ITmdG3YD.js} +1 -1
  102. package/dist/assets/{filters-BOeSFnFD.js → filters-DgmBkjw1.js} +1 -1
  103. package/dist/assets/{github-BF0715AU.js → github-_9c6A7bU.js} +1 -1
  104. package/dist/assets/{google-D2wiUeX_.js → google-hj5yz9i7.js} +1 -1
  105. package/dist/assets/{help-circle-Dl_hQUyY.js → help-circle-Ca495oBS.js} +1 -1
  106. package/dist/assets/{id-Bqkwb-40.js → id-CR45MpUb.js} +1 -1
  107. package/dist/assets/{image-DEEL9bHt.js → image-nH0iJFNE.js} +1 -1
  108. package/dist/assets/{index-_Z0ASBe6.js → index-1IMFPB3G.js} +1 -1
  109. package/dist/assets/{index-BGPS6JZN.js → index-4moLlQhW.js} +1 -1
  110. package/dist/assets/{index-D1naT-DZ.js → index-8EIDsGD3.js} +1 -1
  111. package/dist/assets/{index-BDn7cXWD.js → index-B3PLeRwV.js} +1 -1
  112. package/dist/assets/{index-Sb9EXCnM.js → index-B68ZhoIT.js} +1 -1
  113. package/dist/assets/{index-DR0-HSOc.js → index-BLYDqesi.js} +1 -1
  114. package/dist/assets/{index-BbbU5oQo.js → index-BLvcuKQ4.js} +1 -1
  115. package/dist/assets/{index-D0bJHajn.js → index-BROdJ7Ne.js} +1 -1
  116. package/dist/assets/{index-CzjzKA_i.js → index-BW57UABO.js} +1 -1
  117. package/dist/assets/{index-DK6ICGEb.js → index-BgpVkRAf.js} +1 -1
  118. package/dist/assets/{index-CHzMY7YM.js → index-BoVrtEmb.js} +1 -1
  119. package/dist/assets/{index-BsLejv2f.js → index-Bw7ZFK2d.js} +1 -1
  120. package/dist/assets/{index-DlAGTKAW.js → index-C6KPImGU.js} +1 -1
  121. package/dist/assets/{index-DLAIpdWC.js → index-C7iQbpiR.js} +1 -1
  122. package/dist/assets/{index-CG9ekXyX.js → index-CBo_FbjP.js} +1 -1
  123. package/dist/assets/{index-DTeH_Prb.js → index-CEY2FBzQ.js} +1 -1
  124. package/dist/assets/{index-3Hp7egSS.js → index-CEyvVlM3.js} +1 -1
  125. package/dist/assets/{index-D9CotYVj.js → index-CFADpY6u.js} +1 -1
  126. package/dist/assets/{index-CUujnUBa.js → index-CNj1v0HL.js} +1 -1
  127. package/dist/assets/{index-3iP8Z-3t.js → index-Chex9RTb.js} +1 -1
  128. package/dist/assets/{index-DXJVDdWa.js → index-CiJMz0_3.js} +1 -1
  129. package/dist/assets/{index-fPdYGXMp.js → index-Cs1CUMcB.js} +1 -1
  130. package/dist/assets/{index-V3lWWGOd.js → index-Cs_p5eWu.js} +1 -1
  131. package/dist/assets/{index-S4Wb9X3V.js → index-CugtBXlr.js} +1 -1
  132. package/dist/assets/{index-DNKByHmu.js → index-CvlbLd2G.js} +1 -1
  133. package/dist/assets/{index-COyhwUb4.js → index-CyFiNoMU.js} +27 -27
  134. package/dist/assets/{index-6Fm2ene2.js → index-CzPIUOWH.js} +1 -1
  135. package/dist/assets/{index-99ihYIAo.js → index-D2AAXWtV.js} +1 -1
  136. package/dist/assets/{index-Ymjrklrk.js → index-D5cFfN5f.js} +1 -1
  137. package/dist/assets/{index-BM-HMa1S.js → index-D7fcfY2G.js} +7 -7
  138. package/dist/assets/{index-C53fdRyi.js → index-DDF3vfwa.js} +1 -1
  139. package/dist/assets/{index-Cz-jGQcY.js → index-DFK9VEvg.js} +1 -1
  140. package/dist/assets/{index-SDIA6VGh.js → index-DN-Rcven.js} +1 -1
  141. package/dist/assets/{index-BXCB0oof.js → index-DRSGxifI.js} +1 -1
  142. package/dist/assets/{index-BbJJEVxg.js → index-DcHOv-6F.js} +1 -1
  143. package/dist/assets/{index-M3nP3CDv.js → index-Dngx-9m3.js} +1 -1
  144. package/dist/assets/{index-C4BBh2qy.js → index-WHv9HyZz.js} +1 -1
  145. package/dist/assets/{index-Bhs5kE1g.js → index-eH0Tmi9D.js} +3 -3
  146. package/dist/assets/{index-jWTVpvs-.js → index-fsa4SQ7X.js} +1 -1
  147. package/dist/assets/{index-BXcZP0SO.js → index-plT7UIDX.js} +1 -1
  148. package/dist/assets/{index-ClGimrvP.js → index-qF1dBsuF.js} +1 -1
  149. package/dist/assets/{index-taxIPwin.js → index-sGc6bObk.js} +1 -1
  150. package/dist/assets/{index.browser.esm-DK5_Qtta.js → index.browser.esm-2_rbAvpO.js} +1 -1
  151. package/dist/assets/{index.es-E1XclKiE.js → index.es-DvlYcEm8.js} +1 -1
  152. package/dist/assets/{info-Cw0p-nrY.js → info-ChO8qHX8.js} +1 -1
  153. package/dist/assets/{info-circle-DI7kX3Ur.js → info-circle-rhSwdwu4.js} +1 -1
  154. package/dist/assets/{isEqual-BCC4XmQc.js → isEqual-B2AS9zF7.js} +1 -1
  155. package/dist/assets/{isPlainObject-J2UrjW37.js → isPlainObject-D0vy8ndR.js} +1 -1
  156. package/dist/assets/{lightbulb-Pn6un27a.js → lightbulb-CuhpKn8I.js} +1 -1
  157. package/dist/assets/{mail-Dn1t3Uzm.js → mail-Bxlylmoc.js} +1 -1
  158. package/dist/assets/{mobile-Dou3T5HE.js → mobile-DN-q6Z0i.js} +1 -1
  159. package/dist/assets/{more-qPeYAvUq.js → more-DQNa0WVQ.js} +1 -1
  160. package/dist/assets/{network-placeholder-DkGgge-Q.js → network-placeholder-Ki77isiu.js} +1 -1
  161. package/dist/assets/{nftPlaceholder-CD_-GOFc.js → nftPlaceholder-BA_Gt0JA.js} +1 -1
  162. package/dist/assets/{off-DcZe1P-A.js → off-DgLx5E8B.js} +1 -1
  163. package/dist/assets/{order-bQpq5uC0.js → order-CpNLpnol.js} +1 -1
  164. package/dist/assets/{play-store-DMjNiVuN.js → play-store-yhMeLk2O.js} +1 -1
  165. package/dist/assets/{plus-BysugK6M.js → plus-Do3DPOQv.js} +1 -1
  166. package/dist/assets/{price-CGsOFrju.js → price-Z3WJjRpi.js} +1 -1
  167. package/dist/assets/{qr-code-dgR8Eyuy.js → qr-code-CvK2hmlZ.js} +1 -1
  168. package/dist/assets/{recycle-horizontal-Dpwvigah.js → recycle-horizontal-ChSl380R.js} +1 -1
  169. package/dist/assets/{refresh-mjfkuaKr.js → refresh-1T5EfFZY.js} +1 -1
  170. package/dist/assets/{reown-logo-BLNAFOl-.js → reown-logo--CUAbDVx.js} +1 -1
  171. package/dist/assets/{search-BPOd4MAP.js → search-BUzNVJNh.js} +1 -1
  172. package/dist/assets/{secp256k1-DCBDl4nC.js → secp256k1-B1Gs4G-8.js} +1 -1
  173. package/dist/assets/{secp256k1-BBvQToJg.js → secp256k1-CjdPemrg.js} +1 -1
  174. package/dist/assets/{send-hjFFPIY5.js → send-Y_j9A3YO.js} +1 -1
  175. package/dist/assets/{solana-wallets-C6V-Q0Oi.js → solana-wallets-BQfeJF-n.js} +2 -2
  176. package/dist/assets/{solana-wallets-vue-CO_zktya.js → solana-wallets-vue-iojqS9gU.js} +1 -1
  177. package/dist/assets/{solanaEmbed.esm-D0ppgx5b.js → solanaEmbed.esm-DAzqkEEG.js} +1 -1
  178. package/dist/assets/{string_decoder-B6_IT4rQ.js → string_decoder-JS-HPQK6.js} +1 -1
  179. package/dist/assets/{swapHorizontal-CXPdVsn-.js → swapHorizontal-CTMtetrm.js} +1 -1
  180. package/dist/assets/{swapHorizontalBold-BrYefkD3.js → swapHorizontalBold-OSMWppt3.js} +1 -1
  181. package/dist/assets/{swapHorizontalMedium-HUHE2QPh.js → swapHorizontalMedium-DnqCh7JU.js} +1 -1
  182. package/dist/assets/{swapHorizontalRoundedBold-DcDUzxEh.js → swapHorizontalRoundedBold-BQ3RTtU_.js} +1 -1
  183. package/dist/assets/{swapVertical-BVA5QsQH.js → swapVertical-DeVq0pnI.js} +1 -1
  184. package/dist/assets/{telegram-CDzAEQR3.js → telegram-D7gTT3nm.js} +1 -1
  185. package/dist/assets/{three-dots-NNldPFIQ.js → three-dots-dZojVQ9i.js} +1 -1
  186. package/dist/assets/{twitch-CX1TRj7E.js → twitch-BDms4QYr.js} +1 -1
  187. package/dist/assets/{twitterIcon-J5fZ1flJ.js → twitterIcon-Cdqi2cxF.js} +1 -1
  188. package/dist/assets/{typescript-qp-NtKm7.js → typescript-8DTRp7mg.js} +1 -1
  189. package/dist/assets/{use-form-item-Cp52yInw.js → use-form-item-D3JefaBi.js} +1 -1
  190. package/dist/assets/validator-eScdQo1j.js +1 -0
  191. package/dist/assets/{verify-1Tw_lGAj.js → verify-BLzrUIJ_.js} +1 -1
  192. package/dist/assets/{verify-filled-Bc2E0j5b.js → verify-filled-BIaNJPmA.js} +1 -1
  193. package/dist/assets/{w3m-modal-OKh_pK3G.js → w3m-modal-DnOXXo85.js} +1 -1
  194. package/dist/assets/{wallet-pwqqJl07.js → wallet-B6H1-nAw.js} +1 -1
  195. package/dist/assets/{wallet-placeholder-C3UuZelN.js → wallet-placeholder-B_GZnj0S.js} +1 -1
  196. package/dist/assets/{walletconnect-BvTNKZov.js → walletconnect-Coj2OSFe.js} +1 -1
  197. package/dist/assets/{warning-circle-QieFlAgI.js → warning-circle-sJNYSGRp.js} +1 -1
  198. package/dist/assets/{web-B2Ap1Pud.js → web-D-Y6P_pg.js} +1 -1
  199. package/dist/assets/{web-6o-8YBsj.js → web-DA8oRmXK.js} +1 -1
  200. package/dist/assets/{x-BRpxcvJj.js → x-DQrxcPl1.js} +1 -1
  201. package/dist/index.html +1 -1
  202. package/package.json +1 -1
  203. package/dist/assets/chat-BWGsL_Rz.js +0 -1
  204. package/dist/assets/chat-BdAY5zFv.js +0 -1
  205. package/dist/assets/validator-Bk_SpaTc.js +0 -1
@@ -1 +1 @@
1
- import{F as L}from"./index.es-E1XclKiE.js";import{E as R}from"./index-Sb9EXCnM.js";import{E as B}from"./index-V3lWWGOd.js";import{d as _,I as r,E as l,y as o,B as P,x as d,z as s,A as a,F as c,O as V,N as S,q as w,P as T,Q as O,K as k,J as y}from"./vendor-vue-DT_1TMfY.js";import{m as h,ek as F,el as z,em as N,en as X,eo as Q,ep as Y,aC as H,eq as J,bQ as K,aE as D}from"./index-COyhwUb4.js";import{E as I,a as C}from"./index-CUujnUBa.js";import{I as A,S as W}from"./ScrollList-BvJlbkuP.js";import{E as Z,a as ee}from"./index-BXCB0oof.js";import{p as te}from"./pasteUploadMixin-BurWbGNQ.js";import{I as se}from"./ImagePreview-Dok-mWnh.js";import{E as oe}from"./index-S4Wb9X3V.js";import{E as x}from"./index-C4BBh2qy.js";import{E as ne}from"./index-fPdYGXMp.js";import{C as ae}from"./Consumption-CyJkpzDZ.js";import{a as le}from"./price-CGsOFrju.js";import{C as ie}from"./CopyToClipboard-9qCYDiH6.js";import{V as re}from"./VideoPlayer-BGEYAPlk.js";import{E as ce}from"./index-jWTVpvs-.js";import{E as pe}from"./index-_Z0ASBe6.js";import{E as de}from"./index-D9CotYVj.js";import{B as ue}from"./BotPlaceholder-Bo9dgZvP.js";import{N as me}from"./NoTasks-CJsE40jB.js";import{l as ve}from"./pagination-B2Jzxk4_.js";import"./use-form-item-Cp52yInw.js";import"./index-r5W6hzzQ.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-dayjs-D7e3rSuL.js";import"./vendor-vue-router-BdJrTa0V.js";import"./index-ClGimrvP.js";import"./typescript-qp-NtKm7.js";import"./index-DTeH_Prb.js";import"./strings-BT-SZrAZ.js";import"./castArray-BxXcA5jl.js";import"./isEqual-BCC4XmQc.js";import"./_Uint8Array-9dmsQrsP.js";import"./debounce-DI9xWcc4.js";import"./_baseIteratee-BevRfjTA.js";import"./index-BDn7cXWD.js";import"./index-BrRZLWMC.js";import"./index-CHzMY7YM.js";import"./_baseClone-DvV9-v-c.js";import"./_initCloneObject-DAG7nN4w.js";import"./index-DLAIpdWC.js";import"./vue-plyr-QZFBikSk.js";import"./index-BGPS6JZN.js";const fe=_({name:"LayoutPixverse",components:{ElDrawer:B,ElButton:R,FontAwesomeIcon:L},data(){return{drawer:!1}}}),_e={class:"main flex flex-row flex-1"},he={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},$e={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ge(e,t,u,m,$,g){const i=s("font-awesome-icon"),p=s("el-button"),n=s("el-drawer");return a(),r("div",_e,[l("div",he,[P(e.$slots,"config",{},void 0,!0)]),l("div",$e,[P(e.$slots,"result",{},void 0,!0)]),o(p,{circle:"",class:"menu",onClick:t[0]||(t[0]=f=>e.drawer=!0)},{default:d(()=>[o(i,{icon:"fa-solid fa-magic"})]),_:1}),o(n,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=f=>e.drawer=f),direction:"ltr","with-header":!1,size:"350px"},{default:d(()=>[P(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const be=h(fe,[["render",ge],["__scopeId","data-v-30cb83f9"]]),ye=_({name:"ModelSelector",components:{ElSelect:C,ElOption:I},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"v3.5",label:"v3.5"},{value:"v4",label:"v4"},{value:"v4.5",label:"v4.5"}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.model},set(e){this.$store.commit("pixverse/setConfig",{...this.$store.state.pixverse.config,model:e})}}},mounted(){this.value||(this.value=F)}}),ke={class:"field"},we={class:"title font-bold"};function Ve(e,t,u,m,$,g){const i=s("el-option"),p=s("el-select");return a(),r("div",ke,[l("h2",we,c(e.$t("pixverse.name.model")),1),o(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("pixverse.placeholder.select")},{default:d(()=>[(a(!0),r(V,null,S(e.options,n=>(a(),w(i,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Se=h(ye,[["render",Ve],["__scopeId","data-v-e8f337ca"]]),xe=_({name:"QualitySelector",components:{ElSelect:C,ElOption:I},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"360p",label:"360p"},{value:"540p",label:"540p"},{value:"720p",label:"720p"},{value:"1080p",label:"1080p"}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.quality},set(e){this.$store.commit("pixverse/setConfig",{...this.$store.state.pixverse.config,quality:e})}}},mounted(){this.value||(this.value=z)}}),Ee={class:"field"},Te={class:"title font-bold"};function Ie(e,t,u,m,$,g){const i=s("el-option"),p=s("el-select");return a(),r("div",Ee,[l("h2",Te,c(e.$t("pixverse.name.quality")),1),o(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("pixverse.placeholder.select")},{default:d(()=>[(a(!0),r(V,null,S(e.options,n=>(a(),w(i,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ce=h(xe,[["render",Ie],["__scopeId","data-v-64aeaae9"]]),Le=_({name:"MotionSelector",components:{ElSelect:C,ElOption:I},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"normal",label:this.$t("pixverse.name.motion1")},{value:"fast",label:this.$t("pixverse.name.motion2")}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.motion},set(e){this.$store.commit("pixverse/setConfig",{...this.$store.state.pixverse.config,motion:e})}}},mounted(){this.value||(this.value=N)}}),Re={class:"field"},Ue={class:"title font-bold"};function Pe(e,t,u,m,$,g){const i=s("el-option"),p=s("el-select");return a(),r("div",Re,[l("h2",Ue,c(e.$t("pixverse.name.motion")),1),o(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("pixverse.placeholder.select")},{default:d(()=>[(a(!0),r(V,null,S(e.options,n=>(a(),w(i,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ae=h(Le,[["render",Pe],["__scopeId","data-v-94237408"]]),De=_({name:"StyleSelector",components:{ElSelect:C,ElOption:I},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"cyberpunk",label:this.$t("pixverse.name.style1")},{value:"anime",label:this.$t("pixverse.name.style2")},{value:"comic",label:this.$t("pixverse.name.style3")},{value:"clay",label:this.$t("pixverse.name.style4")},{value:"3d_animation",label:this.$t("pixverse.name.style5")},{value:"realistic",label:this.$t("pixverse.name.style6")}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.style},set(e){this.$store.commit("pixverse/setConfig",{...this.$store.state.pixverse.config,style:e})}}},mounted(){this.value||(this.value=X)}}),Ge={class:"field"},je={class:"title font-bold"};function Me(e,t,u,m,$,g){const i=s("el-option"),p=s("el-select");return a(),r("div",Ge,[l("h2",je,c(e.$t("pixverse.name.style")),1),o(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("pixverse.placeholder.select")},{default:d(()=>[(a(!0),r(V,null,S(e.options,n=>(a(),w(i,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const qe=h(De,[["render",Me],["__scopeId","data-v-64e17b3c"]]),Be=_({name:"SeedSelector",components:{ElSlider:ee,InfoIcon:A,ElInputNumber:Z},computed:{value:{get(){return this.$store.state?.pixverse?.config?.seed},set(e){console.debug("set seed",e),this.$store.commit("pixverse/setConfig",{...this.$store.state?.pixverse?.config,seed:e})}}},mounted(){this.value||(this.value=void 0)}}),Oe={class:"flex justify-between"},Fe={class:"flex justify-start items-center"},ze={class:"text-sm font-bold"},Ne={class:"flex justify-end items-center"},Xe={class:"w-full"};function Qe(e,t,u,m,$,g){const i=s("info-icon"),p=s("el-input-number"),n=s("el-slider");return a(),r("div",null,[l("div",Oe,[l("div",Fe,[l("span",ze,c(e.$t("pixverse.name.seed")),1),o(i,{content:e.$t("pixverse.description.seed")},null,8,["content"])]),l("div",Ne,[o(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=f=>e.value=f),"controls-position":"right"},null,8,["modelValue"])])]),l("div",Xe,[o(n,{modelValue:e.value,"onUpdate:modelValue":t[1]||(t[1]=f=>e.value=f),min:0,max:1e3,step:1},null,8,["modelValue"])])])}const Ye=h(Be,[["render",Qe]]),He=_({name:"DurationSelector",components:{ElSelect:C,ElOption:I},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:5,label:"5s"},{value:8,label:"8s"}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.duration},set(e){this.$store.commit("pixverse/setConfig",{...this.$store.state.pixverse.config,duration:e})}}},mounted(){this.value||(this.value=Q)}}),Je={class:"field"},Ke={class:"title font-bold"};function We(e,t,u,m,$,g){const i=s("el-option"),p=s("el-select");return a(),r("div",Je,[l("h2",Ke,c(e.$t("pixverse.name.duration")),1),o(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("pixverse.placeholder.select")},{default:d(()=>[(a(!0),r(V,null,S(e.options,n=>(a(),w(i,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ze=h(He,[["render",We],["__scopeId","data-v-065c77ef"]]),et=_({name:"RatioSelector",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.pixverse.config?.aspect_ratio},set(e){console.debug("set aspect_ratio",e),this.$store.commit("pixverse/setConfig",{...this.$store.state.pixverse.config,aspect_ratio:e})}}},mounted(){this.value||(this.value=Y)}}),tt={class:"text-sm font-bold mb-2 block"},st={class:"items"},ot=["onClick"],nt={class:"name"};function at(e,t,u,m,$,g){return a(),r("div",null,[l("span",tt,c(e.$t("pixverse.name.aspectRatio")),1),l("div",st,[(a(!0),r(V,null,S(e.options,(i,p)=>(a(),r("div",{key:p,class:T({active:e.active===p,item:!0}),onClick:n=>e.value=i.value},[l("div",{class:T(["preview",i.label])},[l("div",{class:"rect",style:O({width:i.width+"px",height:i.height+"px"})},null,4)],2),l("p",nt,c(i.label),1)],10,ot))),128))])])}const lt=h(et,[["render",at],["__scopeId","data-v-53038264"]]),it=_({name:"StartImage",components:{ElUpload:oe,ElButton:R,InfoIcon:A,FontAwesomeIcon:L,ImagePreview:se},mixins:[te],emits:["change"],data(){return{fileList:[],uploadUrl:H()+"/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?.pixverse?.config?.image_url},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){x.warning(this.$t("pixverse.message.uploadReferencesExceed"))},onError(){x.error(this.$t("pixverse.message.uploadReferencesError"))},onSetStartImageUrl(){const e=this.urls?.[0];this.$store.commit("pixverse/setConfig",{...this.$store.state?.pixverse?.config,image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),rt={class:"relative"},ct={class:"flex justify-between"},pt={class:"flex justify-start items-center"},dt={class:"text-sm font-bold"};function ut(e,t,u,m,$,g){const i=s("info-icon"),p=s("image-preview"),n=s("font-awesome-icon"),f=s("el-button"),b=s("el-upload");return a(),r("div",rt,[l("div",ct,[l("div",pt,[l("span",dt,c(e.$t("pixverse.name.startImage")),1),o(i,{content:e.$t("pixverse.description.uploadStartImage")},null,8,["content"])])]),o(b,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=v=>e.fileList=v),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:5,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:d(({file:v})=>[v.url&&v.percentage!==void 0?(a(),w(p,{key:0,url:v.url,name:v.name,percentage:v.percentage,onRemove:E=>e.fileList.splice(e.fileList.indexOf(v),1)},null,8,["url","name","percentage","onRemove"])):y("",!0)]),default:d(()=>[o(f,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:d(()=>[o(n,{icon:"fa-solid fa-upload",class:"icon mr-1"}),k(" "+c(e.$t("pixverse.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const mt=h(it,[["render",ut],["__scopeId","data-v-bc133fd2"]]),vt="",ft=_({name:"PromptInput",components:{ElInput:ne,InfoIcon:A},computed:{prompt:{get(){return this.$store.state.pixverse?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("pixverse/setConfig",{...this.$store.state.pixverse?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=vt)}}),_t={class:"field"},ht={class:"box"},$t={class:"title font-bold"};function gt(e,t,u,m,$,g){const i=s("info-icon"),p=s("el-input");return a(),r("div",_t,[l("div",ht,[l("h2",$t,c(e.$t("pixverse.name.prompt")),1),o(i,{content:e.$t("pixverse.description.prompt"),class:"info"},null,8,["content"])]),o(p,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=n=>e.prompt=n),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("pixverse.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const bt=h(ft,[["render",gt],["__scopeId","data-v-2f675ca4"]]),yt=_({name:"ConfigPanel",components:{ElButton:R,FontAwesomeIcon:L,PromptInput:bt,ModelSelector:Se,QualitySelector:Ce,MotionSelector:Ae,StyleSelector:qe,DurationSelector:Ze,StartImage:mt,SeedSelector:Ye,RatioSelector:lt,Consumption:ae},emits:["generate"],computed:{config(){return this.$store.state.pixverse?.config},consumption(){return le(this.config,this.service?.cost)},service(){return this.$store.state.pixverse?.service}},methods:{onGenerate(){this.$emit("generate")}}}),kt={class:"flex flex-col h-full"},wt={class:"flex-1 overflow-y-auto p-5"},Vt={class:"flex flex-col items-center justify-center px-5 pb-5"};function St(e,t,u,m,$,g){const i=s("prompt-input"),p=s("model-selector"),n=s("style-selector"),f=s("ratio-selector"),b=s("motion-selector"),v=s("quality-selector"),E=s("start-image"),U=s("seed-selector"),G=s("duration-selector"),j=s("consumption"),M=s("font-awesome-icon"),q=s("el-button");return a(),r("div",kt,[l("div",wt,[o(i,{class:"mb-4"}),o(p,{class:"mb-4"}),o(n,{class:"mb-4"}),o(f,{class:"mb-4"}),o(b,{class:"mb-4"}),o(v,{class:"mb-4"}),o(E,{class:"mb-2"}),o(U,{class:"mb-4"}),o(G,{class:"mb-4"})]),l("div",Vt,[o(j,{value:e.consumption,service:e.service},null,8,["value","service"]),o(q,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[o(M,{icon:"fa-solid fa-magic",class:"mr-2"}),k(" "+c(e.$t("pixverse.button.generate")),1)]),_:1},8,["onClick"])])])}const xt=h(yt,[["render",St]]),Et=_({name:"TaskPreview",components:{ElImage:de,CopyToClipboard:ie,FontAwesomeIcon:L,ElAlert:pe,VideoPlayer:re,ElTooltip:ce,ElButton:R},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.pixverse?.application},config(){return this.$store.state.pixverse?.config}},methods:{onDownload(e,t){e.stopPropagation(),console.log("on download"),window.open(t,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),Tt={class:"preview"},It={class:"left"},Ct={class:"main"},Lt={class:"bot"},Rt={class:"datetime"},Ut={class:"info"},Pt={key:0,class:"prompt mt-2"},At={key:0},Dt={key:1},Gt={key:0,class:T({content:!0,failed:!0})},jt={key:0,class:"mb-4"},Mt={key:1,class:T({operations:!0,"mt-2":!0})},qt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ot={key:1,class:T({content:!0})},Ft={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},zt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Nt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Xt(e,t,u,m,$,g){const i=s("el-image"),p=s("video-player"),n=s("el-button"),f=s("el-tooltip"),b=s("font-awesome-icon"),v=s("copy-to-clipboard"),E=s("el-alert");return a(),r("div",Tt,[l("div",It,[o(i,{src:"https://cdn.acedata.cloud/viy61r.jpg",class:"avatar"})]),l("div",Ct,[l("div",Lt,[k(c(e.$t("pixverse.name.pixverseBot"))+" ",1),l("span",Rt,c(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",Ut,[e.modelValue?.request?.prompt?(a(),r("p",Pt,[k(c(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?y("",!0):(a(),r("span",At," - ("+c(e.$t("pixverse.status.pending"))+") ",1)),e.modelValue?.response?.data&&(e.modelValue?.response?.data[0]?.state==="processing"||e.modelValue?.response?.data[0]?.state==="pending")?(a(),r("span",Dt," - ("+c(e.$t("pixverse.status.processing"))+") ",1)):y("",!0)])):y("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(a(),r("div",Gt,[e.modelValue?.response?.data[0]?.video_url?(a(),r("div",jt,[o(p,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):y("",!0),e.modelValue?.response.success?(a(),r("div",Mt,[o(f,{class:"box-item",effect:"dark",content:e.$t("pixverse.message.downloadVideo"),placement:"top-start"},{default:d(()=>[e.modelValue?.response?.data[0]?.video_url?(a(),w(n,{key:0,type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=U=>e.onDownload(U,e.modelValue?.response?.data[0]?.video_url))},{default:d(()=>[k(c(e.$t("pixverse.button.download")),1)]),_:1})):y("",!0)]),_:1},8,["content"])])):y("",!0),o(E,{closable:!1,class:"mt-2 success"},{default:d(()=>[l("p",qt,[o(b,{icon:"fa-solid fa-hashtag",class:"mr-1"}),k(" "+c(e.$t("pixverse.name.model"))+": "+c(e.modelValue?.request?.model),1)]),l("p",Bt,[o(b,{icon:"fa-solid fa-magic",class:"mr-1"}),k(" "+c(e.$t("pixverse.name.taskId"))+": "+c(e.modelValue?.id)+" ",1),o(v,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):y("",!0),e.modelValue?.response?.success===!1?(a(),r("div",Ot,[o(E,{closable:!1,class:"info"},{template:d(()=>[o(b,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),k(" "+c(e.$t("pixverse.name.failure")),1)]),default:d(()=>[l("p",Ft,[o(b,{icon:"fa-solid fa-circle-info",class:"mr-1"}),k(" "+c(e.$t("pixverse.name.failureReason"))+": "+c(e.modelValue?.response?.error?.message)+" ",1),o(v,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),l("p",zt,[o(b,{icon:"fa-solid fa-magic",class:"mr-1"}),k(" "+c(e.$t("pixverse.name.taskId"))+": "+c(e.modelValue?.id)+" ",1),o(v,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(a(),r("p",Nt,[o(b,{icon:"fa-solid fa-hashtag",class:"mr-1"}),k(" "+c(e.$t("pixverse.name.traceId"))+": "+c(e.modelValue?.response?.trace_id)+" ",1),o(v,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):y("",!0)]),_:1})])):y("",!0)])])}const Qt=h(Et,[["render",Xt],["__scopeId","data-v-9da65937"]]),Yt=_({name:"RecentPanel",components:{TaskPreview:Qt,NoTasks:me,BotPlaceholder:ue,ScrollList:W},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.pixverse?.tasks,items:this.$store.state.pixverse?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Ht={key:0},Jt={key:2,class:"w-full h-full flex items-center justify-center"};function Kt(e,t,u,m,$,g){const i=s("bot-placeholder"),p=s("task-preview"),n=s("scroll-list"),f=s("no-tasks");return a(),r(V,null,[e.tasks?.items===void 0?(a(),r("div",Ht,[o(i)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),w(n,{key:1,ref:"scrollList",class:"h-full w-full overflow-y-auto tasks",loading:e.loading,onReachTop:t[0]||(t[0]=b=>e.$emit("reach-top"))},{default:d(()=>[(a(!0),r(V,null,S(e.tasks?.items,(b,v)=>(a(),w(p,{key:v,"model-value":b},null,8,["model-value"]))),128))]),_:1},8,["loading"])):y("",!0),e.tasks?.items?.length===0?(a(),r("div",Jt,[o(f)])):y("",!0)],64)}const Wt=h(Yt,[["render",Kt]]),Zt="https://webhook.acedata.cloud/pixverse",es=_({name:"PixverseIndex",components:{ConfigPanel:xt,Layout:be,RecentPanel:Wt},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.pixverse?.status?.getApplications===D.Request},tasksLoading(){return this.$store.state.pixverse?.status?.getTasks===D.Request||this.fetchingTasks},credential(){return this.$store.state.pixverse.credential},config(){return this.$store.state.pixverse.config},tasks(){return this.$store.state.pixverse.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ve({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("pixverse/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("pixverse/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:t=5,createdAtMin:u,createdAtMax:m}=e||{};console.debug("limit",t,"createdAtMin",u,"createdAtMax",m),this.fetchingTasks=!0;try{await this.$store.dispatch("pixverse/getTasks",{limit:t,createdAtMin:u,createdAtMax:m})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Zt},t=this.credential?.token;if(!t){console.error("no token specified");return}x.info(this.$t("pixverse.message.startingTask")),J.generate(e,{token:t}).then(()=>{x.success(this.$t("pixverse.message.startTaskSuccess"))}).catch(u=>{u?.response?.data?.error?.code===K?x.error(this.$t("pixverse.message.usedUp")):x.error(this.$t("pixverse.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function ts(e,t,u,m,$,g){const i=s("config-panel"),p=s("recent-panel"),n=s("layout");return a(),w(n,null,{config:d(()=>[o(i,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:d(()=>[o(p,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Qs=h(es,[["render",ts]]);export{Qs as default};
1
+ import{F as L}from"./index.es-DvlYcEm8.js";import{E as R}from"./index-B68ZhoIT.js";import{E as B}from"./index-Cs_p5eWu.js";import{d as _,I as r,E as l,y as o,B as P,x as d,z as s,A as a,F as c,O as V,N as S,q as w,P as T,Q as O,K as k,J as y}from"./vendor-vue-DT_1TMfY.js";import{m as h,ek as F,el as z,em as N,en as X,eo as Q,ep as Y,aC as H,eq as J,bQ as K,aE as D}from"./index-CyFiNoMU.js";import{E as I,a as C}from"./index-CNj1v0HL.js";import{I as A,S as W}from"./ScrollList-Bg9XoeXr.js";import{E as Z,a as ee}from"./index-DRSGxifI.js";import{p as te}from"./pasteUploadMixin-BurWbGNQ.js";import{I as se}from"./ImagePreview-DiG8EmAe.js";import{E as oe}from"./index-CugtBXlr.js";import{E as x}from"./index-WHv9HyZz.js";import{E as ne}from"./index-Cs1CUMcB.js";import{C as ae}from"./Consumption-DwyEh2id.js";import{a as le}from"./price-Z3WJjRpi.js";import{C as ie}from"./CopyToClipboard-6pnI9uu0.js";import{V as re}from"./VideoPlayer-CvDqvGIC.js";import{E as ce}from"./index-fsa4SQ7X.js";import{E as pe}from"./index-1IMFPB3G.js";import{E as de}from"./index-CFADpY6u.js";import{B as ue}from"./BotPlaceholder-BfJyCZe5.js";import{N as me}from"./NoTasks-Dh1ZLJoo.js";import{l as ve}from"./pagination-B2Jzxk4_.js";import"./use-form-item-D3JefaBi.js";import"./index-r5W6hzzQ.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-dayjs-D7e3rSuL.js";import"./vendor-vue-router-BdJrTa0V.js";import"./index-qF1dBsuF.js";import"./typescript-8DTRp7mg.js";import"./index-CEY2FBzQ.js";import"./strings-BT-SZrAZ.js";import"./castArray-mR3ylEMC.js";import"./isEqual-B2AS9zF7.js";import"./_Uint8Array-Bje2NAqX.js";import"./debounce-ow11MzZE.js";import"./_baseIteratee-CRIhlIS7.js";import"./index-B3PLeRwV.js";import"./index-BrRZLWMC.js";import"./index-BoVrtEmb.js";import"./_baseClone-BvSIk2Dq.js";import"./_initCloneObject-BDx_mvcr.js";import"./index-C7iQbpiR.js";import"./vue-plyr-QZFBikSk.js";import"./index-4moLlQhW.js";const fe=_({name:"LayoutPixverse",components:{ElDrawer:B,ElButton:R,FontAwesomeIcon:L},data(){return{drawer:!1}}}),_e={class:"main flex flex-row flex-1"},he={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},$e={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ge(e,t,u,m,$,g){const i=s("font-awesome-icon"),p=s("el-button"),n=s("el-drawer");return a(),r("div",_e,[l("div",he,[P(e.$slots,"config",{},void 0,!0)]),l("div",$e,[P(e.$slots,"result",{},void 0,!0)]),o(p,{circle:"",class:"menu",onClick:t[0]||(t[0]=f=>e.drawer=!0)},{default:d(()=>[o(i,{icon:"fa-solid fa-magic"})]),_:1}),o(n,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=f=>e.drawer=f),direction:"ltr","with-header":!1,size:"350px"},{default:d(()=>[P(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const be=h(fe,[["render",ge],["__scopeId","data-v-30cb83f9"]]),ye=_({name:"ModelSelector",components:{ElSelect:C,ElOption:I},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"v3.5",label:"v3.5"},{value:"v4",label:"v4"},{value:"v4.5",label:"v4.5"}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.model},set(e){this.$store.commit("pixverse/setConfig",{...this.$store.state.pixverse.config,model:e})}}},mounted(){this.value||(this.value=F)}}),ke={class:"field"},we={class:"title font-bold"};function Ve(e,t,u,m,$,g){const i=s("el-option"),p=s("el-select");return a(),r("div",ke,[l("h2",we,c(e.$t("pixverse.name.model")),1),o(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("pixverse.placeholder.select")},{default:d(()=>[(a(!0),r(V,null,S(e.options,n=>(a(),w(i,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Se=h(ye,[["render",Ve],["__scopeId","data-v-e8f337ca"]]),xe=_({name:"QualitySelector",components:{ElSelect:C,ElOption:I},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"360p",label:"360p"},{value:"540p",label:"540p"},{value:"720p",label:"720p"},{value:"1080p",label:"1080p"}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.quality},set(e){this.$store.commit("pixverse/setConfig",{...this.$store.state.pixverse.config,quality:e})}}},mounted(){this.value||(this.value=z)}}),Ee={class:"field"},Te={class:"title font-bold"};function Ie(e,t,u,m,$,g){const i=s("el-option"),p=s("el-select");return a(),r("div",Ee,[l("h2",Te,c(e.$t("pixverse.name.quality")),1),o(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("pixverse.placeholder.select")},{default:d(()=>[(a(!0),r(V,null,S(e.options,n=>(a(),w(i,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ce=h(xe,[["render",Ie],["__scopeId","data-v-64aeaae9"]]),Le=_({name:"MotionSelector",components:{ElSelect:C,ElOption:I},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"normal",label:this.$t("pixverse.name.motion1")},{value:"fast",label:this.$t("pixverse.name.motion2")}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.motion},set(e){this.$store.commit("pixverse/setConfig",{...this.$store.state.pixverse.config,motion:e})}}},mounted(){this.value||(this.value=N)}}),Re={class:"field"},Ue={class:"title font-bold"};function Pe(e,t,u,m,$,g){const i=s("el-option"),p=s("el-select");return a(),r("div",Re,[l("h2",Ue,c(e.$t("pixverse.name.motion")),1),o(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("pixverse.placeholder.select")},{default:d(()=>[(a(!0),r(V,null,S(e.options,n=>(a(),w(i,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ae=h(Le,[["render",Pe],["__scopeId","data-v-94237408"]]),De=_({name:"StyleSelector",components:{ElSelect:C,ElOption:I},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"cyberpunk",label:this.$t("pixverse.name.style1")},{value:"anime",label:this.$t("pixverse.name.style2")},{value:"comic",label:this.$t("pixverse.name.style3")},{value:"clay",label:this.$t("pixverse.name.style4")},{value:"3d_animation",label:this.$t("pixverse.name.style5")},{value:"realistic",label:this.$t("pixverse.name.style6")}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.style},set(e){this.$store.commit("pixverse/setConfig",{...this.$store.state.pixverse.config,style:e})}}},mounted(){this.value||(this.value=X)}}),Ge={class:"field"},je={class:"title font-bold"};function Me(e,t,u,m,$,g){const i=s("el-option"),p=s("el-select");return a(),r("div",Ge,[l("h2",je,c(e.$t("pixverse.name.style")),1),o(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("pixverse.placeholder.select")},{default:d(()=>[(a(!0),r(V,null,S(e.options,n=>(a(),w(i,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const qe=h(De,[["render",Me],["__scopeId","data-v-64e17b3c"]]),Be=_({name:"SeedSelector",components:{ElSlider:ee,InfoIcon:A,ElInputNumber:Z},computed:{value:{get(){return this.$store.state?.pixverse?.config?.seed},set(e){console.debug("set seed",e),this.$store.commit("pixverse/setConfig",{...this.$store.state?.pixverse?.config,seed:e})}}},mounted(){this.value||(this.value=void 0)}}),Oe={class:"flex justify-between"},Fe={class:"flex justify-start items-center"},ze={class:"text-sm font-bold"},Ne={class:"flex justify-end items-center"},Xe={class:"w-full"};function Qe(e,t,u,m,$,g){const i=s("info-icon"),p=s("el-input-number"),n=s("el-slider");return a(),r("div",null,[l("div",Oe,[l("div",Fe,[l("span",ze,c(e.$t("pixverse.name.seed")),1),o(i,{content:e.$t("pixverse.description.seed")},null,8,["content"])]),l("div",Ne,[o(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=f=>e.value=f),"controls-position":"right"},null,8,["modelValue"])])]),l("div",Xe,[o(n,{modelValue:e.value,"onUpdate:modelValue":t[1]||(t[1]=f=>e.value=f),min:0,max:1e3,step:1},null,8,["modelValue"])])])}const Ye=h(Be,[["render",Qe]]),He=_({name:"DurationSelector",components:{ElSelect:C,ElOption:I},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:5,label:"5s"},{value:8,label:"8s"}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.duration},set(e){this.$store.commit("pixverse/setConfig",{...this.$store.state.pixverse.config,duration:e})}}},mounted(){this.value||(this.value=Q)}}),Je={class:"field"},Ke={class:"title font-bold"};function We(e,t,u,m,$,g){const i=s("el-option"),p=s("el-select");return a(),r("div",Je,[l("h2",Ke,c(e.$t("pixverse.name.duration")),1),o(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("pixverse.placeholder.select")},{default:d(()=>[(a(!0),r(V,null,S(e.options,n=>(a(),w(i,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ze=h(He,[["render",We],["__scopeId","data-v-065c77ef"]]),et=_({name:"RatioSelector",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.pixverse.config?.aspect_ratio},set(e){console.debug("set aspect_ratio",e),this.$store.commit("pixverse/setConfig",{...this.$store.state.pixverse.config,aspect_ratio:e})}}},mounted(){this.value||(this.value=Y)}}),tt={class:"text-sm font-bold mb-2 block"},st={class:"items"},ot=["onClick"],nt={class:"name"};function at(e,t,u,m,$,g){return a(),r("div",null,[l("span",tt,c(e.$t("pixverse.name.aspectRatio")),1),l("div",st,[(a(!0),r(V,null,S(e.options,(i,p)=>(a(),r("div",{key:p,class:T({active:e.active===p,item:!0}),onClick:n=>e.value=i.value},[l("div",{class:T(["preview",i.label])},[l("div",{class:"rect",style:O({width:i.width+"px",height:i.height+"px"})},null,4)],2),l("p",nt,c(i.label),1)],10,ot))),128))])])}const lt=h(et,[["render",at],["__scopeId","data-v-53038264"]]),it=_({name:"StartImage",components:{ElUpload:oe,ElButton:R,InfoIcon:A,FontAwesomeIcon:L,ImagePreview:se},mixins:[te],emits:["change"],data(){return{fileList:[],uploadUrl:H()+"/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?.pixverse?.config?.image_url},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){x.warning(this.$t("pixverse.message.uploadReferencesExceed"))},onError(){x.error(this.$t("pixverse.message.uploadReferencesError"))},onSetStartImageUrl(){const e=this.urls?.[0];this.$store.commit("pixverse/setConfig",{...this.$store.state?.pixverse?.config,image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),rt={class:"relative"},ct={class:"flex justify-between"},pt={class:"flex justify-start items-center"},dt={class:"text-sm font-bold"};function ut(e,t,u,m,$,g){const i=s("info-icon"),p=s("image-preview"),n=s("font-awesome-icon"),f=s("el-button"),b=s("el-upload");return a(),r("div",rt,[l("div",ct,[l("div",pt,[l("span",dt,c(e.$t("pixverse.name.startImage")),1),o(i,{content:e.$t("pixverse.description.uploadStartImage")},null,8,["content"])])]),o(b,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=v=>e.fileList=v),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:5,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:d(({file:v})=>[v.url&&v.percentage!==void 0?(a(),w(p,{key:0,url:v.url,name:v.name,percentage:v.percentage,onRemove:E=>e.fileList.splice(e.fileList.indexOf(v),1)},null,8,["url","name","percentage","onRemove"])):y("",!0)]),default:d(()=>[o(f,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:d(()=>[o(n,{icon:"fa-solid fa-upload",class:"icon mr-1"}),k(" "+c(e.$t("pixverse.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const mt=h(it,[["render",ut],["__scopeId","data-v-bc133fd2"]]),vt="",ft=_({name:"PromptInput",components:{ElInput:ne,InfoIcon:A},computed:{prompt:{get(){return this.$store.state.pixverse?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("pixverse/setConfig",{...this.$store.state.pixverse?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=vt)}}),_t={class:"field"},ht={class:"box"},$t={class:"title font-bold"};function gt(e,t,u,m,$,g){const i=s("info-icon"),p=s("el-input");return a(),r("div",_t,[l("div",ht,[l("h2",$t,c(e.$t("pixverse.name.prompt")),1),o(i,{content:e.$t("pixverse.description.prompt"),class:"info"},null,8,["content"])]),o(p,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=n=>e.prompt=n),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("pixverse.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const bt=h(ft,[["render",gt],["__scopeId","data-v-2f675ca4"]]),yt=_({name:"ConfigPanel",components:{ElButton:R,FontAwesomeIcon:L,PromptInput:bt,ModelSelector:Se,QualitySelector:Ce,MotionSelector:Ae,StyleSelector:qe,DurationSelector:Ze,StartImage:mt,SeedSelector:Ye,RatioSelector:lt,Consumption:ae},emits:["generate"],computed:{config(){return this.$store.state.pixverse?.config},consumption(){return le(this.config,this.service?.cost)},service(){return this.$store.state.pixverse?.service}},methods:{onGenerate(){this.$emit("generate")}}}),kt={class:"flex flex-col h-full"},wt={class:"flex-1 overflow-y-auto p-5"},Vt={class:"flex flex-col items-center justify-center px-5 pb-5"};function St(e,t,u,m,$,g){const i=s("prompt-input"),p=s("model-selector"),n=s("style-selector"),f=s("ratio-selector"),b=s("motion-selector"),v=s("quality-selector"),E=s("start-image"),U=s("seed-selector"),G=s("duration-selector"),j=s("consumption"),M=s("font-awesome-icon"),q=s("el-button");return a(),r("div",kt,[l("div",wt,[o(i,{class:"mb-4"}),o(p,{class:"mb-4"}),o(n,{class:"mb-4"}),o(f,{class:"mb-4"}),o(b,{class:"mb-4"}),o(v,{class:"mb-4"}),o(E,{class:"mb-2"}),o(U,{class:"mb-4"}),o(G,{class:"mb-4"})]),l("div",Vt,[o(j,{value:e.consumption,service:e.service},null,8,["value","service"]),o(q,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[o(M,{icon:"fa-solid fa-magic",class:"mr-2"}),k(" "+c(e.$t("pixverse.button.generate")),1)]),_:1},8,["onClick"])])])}const xt=h(yt,[["render",St]]),Et=_({name:"TaskPreview",components:{ElImage:de,CopyToClipboard:ie,FontAwesomeIcon:L,ElAlert:pe,VideoPlayer:re,ElTooltip:ce,ElButton:R},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.pixverse?.application},config(){return this.$store.state.pixverse?.config}},methods:{onDownload(e,t){e.stopPropagation(),console.log("on download"),window.open(t,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),Tt={class:"preview"},It={class:"left"},Ct={class:"main"},Lt={class:"bot"},Rt={class:"datetime"},Ut={class:"info"},Pt={key:0,class:"prompt mt-2"},At={key:0},Dt={key:1},Gt={key:0,class:T({content:!0,failed:!0})},jt={key:0,class:"mb-4"},Mt={key:1,class:T({operations:!0,"mt-2":!0})},qt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ot={key:1,class:T({content:!0})},Ft={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},zt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Nt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Xt(e,t,u,m,$,g){const i=s("el-image"),p=s("video-player"),n=s("el-button"),f=s("el-tooltip"),b=s("font-awesome-icon"),v=s("copy-to-clipboard"),E=s("el-alert");return a(),r("div",Tt,[l("div",It,[o(i,{src:"https://cdn.acedata.cloud/viy61r.jpg",class:"avatar"})]),l("div",Ct,[l("div",Lt,[k(c(e.$t("pixverse.name.pixverseBot"))+" ",1),l("span",Rt,c(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",Ut,[e.modelValue?.request?.prompt?(a(),r("p",Pt,[k(c(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?y("",!0):(a(),r("span",At," - ("+c(e.$t("pixverse.status.pending"))+") ",1)),e.modelValue?.response?.data&&(e.modelValue?.response?.data[0]?.state==="processing"||e.modelValue?.response?.data[0]?.state==="pending")?(a(),r("span",Dt," - ("+c(e.$t("pixverse.status.processing"))+") ",1)):y("",!0)])):y("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(a(),r("div",Gt,[e.modelValue?.response?.data[0]?.video_url?(a(),r("div",jt,[o(p,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):y("",!0),e.modelValue?.response.success?(a(),r("div",Mt,[o(f,{class:"box-item",effect:"dark",content:e.$t("pixverse.message.downloadVideo"),placement:"top-start"},{default:d(()=>[e.modelValue?.response?.data[0]?.video_url?(a(),w(n,{key:0,type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=U=>e.onDownload(U,e.modelValue?.response?.data[0]?.video_url))},{default:d(()=>[k(c(e.$t("pixverse.button.download")),1)]),_:1})):y("",!0)]),_:1},8,["content"])])):y("",!0),o(E,{closable:!1,class:"mt-2 success"},{default:d(()=>[l("p",qt,[o(b,{icon:"fa-solid fa-hashtag",class:"mr-1"}),k(" "+c(e.$t("pixverse.name.model"))+": "+c(e.modelValue?.request?.model),1)]),l("p",Bt,[o(b,{icon:"fa-solid fa-magic",class:"mr-1"}),k(" "+c(e.$t("pixverse.name.taskId"))+": "+c(e.modelValue?.id)+" ",1),o(v,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):y("",!0),e.modelValue?.response?.success===!1?(a(),r("div",Ot,[o(E,{closable:!1,class:"info"},{template:d(()=>[o(b,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),k(" "+c(e.$t("pixverse.name.failure")),1)]),default:d(()=>[l("p",Ft,[o(b,{icon:"fa-solid fa-circle-info",class:"mr-1"}),k(" "+c(e.$t("pixverse.name.failureReason"))+": "+c(e.modelValue?.response?.error?.message)+" ",1),o(v,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),l("p",zt,[o(b,{icon:"fa-solid fa-magic",class:"mr-1"}),k(" "+c(e.$t("pixverse.name.taskId"))+": "+c(e.modelValue?.id)+" ",1),o(v,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(a(),r("p",Nt,[o(b,{icon:"fa-solid fa-hashtag",class:"mr-1"}),k(" "+c(e.$t("pixverse.name.traceId"))+": "+c(e.modelValue?.response?.trace_id)+" ",1),o(v,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):y("",!0)]),_:1})])):y("",!0)])])}const Qt=h(Et,[["render",Xt],["__scopeId","data-v-9da65937"]]),Yt=_({name:"RecentPanel",components:{TaskPreview:Qt,NoTasks:me,BotPlaceholder:ue,ScrollList:W},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.pixverse?.tasks,items:this.$store.state.pixverse?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Ht={key:0},Jt={key:2,class:"w-full h-full flex items-center justify-center"};function Kt(e,t,u,m,$,g){const i=s("bot-placeholder"),p=s("task-preview"),n=s("scroll-list"),f=s("no-tasks");return a(),r(V,null,[e.tasks?.items===void 0?(a(),r("div",Ht,[o(i)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),w(n,{key:1,ref:"scrollList",class:"h-full w-full overflow-y-auto tasks",loading:e.loading,onReachTop:t[0]||(t[0]=b=>e.$emit("reach-top"))},{default:d(()=>[(a(!0),r(V,null,S(e.tasks?.items,(b,v)=>(a(),w(p,{key:v,"model-value":b},null,8,["model-value"]))),128))]),_:1},8,["loading"])):y("",!0),e.tasks?.items?.length===0?(a(),r("div",Jt,[o(f)])):y("",!0)],64)}const Wt=h(Yt,[["render",Kt]]),Zt="https://webhook.acedata.cloud/pixverse",es=_({name:"PixverseIndex",components:{ConfigPanel:xt,Layout:be,RecentPanel:Wt},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.pixverse?.status?.getApplications===D.Request},tasksLoading(){return this.$store.state.pixverse?.status?.getTasks===D.Request||this.fetchingTasks},credential(){return this.$store.state.pixverse.credential},config(){return this.$store.state.pixverse.config},tasks(){return this.$store.state.pixverse.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ve({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("pixverse/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("pixverse/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:t=5,createdAtMin:u,createdAtMax:m}=e||{};console.debug("limit",t,"createdAtMin",u,"createdAtMax",m),this.fetchingTasks=!0;try{await this.$store.dispatch("pixverse/getTasks",{limit:t,createdAtMin:u,createdAtMax:m})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Zt},t=this.credential?.token;if(!t){console.error("no token specified");return}x.info(this.$t("pixverse.message.startingTask")),J.generate(e,{token:t}).then(()=>{x.success(this.$t("pixverse.message.startTaskSuccess"))}).catch(u=>{u?.response?.data?.error?.code===K?x.error(this.$t("pixverse.message.usedUp")):x.error(this.$t("pixverse.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function ts(e,t,u,m,$,g){const i=s("config-panel"),p=s("recent-panel"),n=s("layout");return a(),w(n,null,{config:d(()=>[o(i,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:d(()=>[o(p,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Qs=h(es,[["render",ts]]);export{Qs as default};
@@ -1 +1 @@
1
- import{F as L}from"./index.es-E1XclKiE.js";import{E as S}from"./index-Sb9EXCnM.js";import{E as R}from"./index-V3lWWGOd.js";import{d as b,I as c,E as i,y as t,B as V,x as u,z as o,A as a,F as n,O as C,N as P,q as v,K as p,J as h,P as I,M as A}from"./vendor-vue-DT_1TMfY.js";import{m as k,bO as M,aC as B,bP as j,bQ as D,aE as U}from"./index-COyhwUb4.js";import{E as O,a as q}from"./index-CUujnUBa.js";import{p as z}from"./pasteUploadMixin-BurWbGNQ.js";import{I as G,S as F}from"./ScrollList-BvJlbkuP.js";import{I as N}from"./ImagePreview-Dok-mWnh.js";import{E as H}from"./index-S4Wb9X3V.js";import{E}from"./index-C4BBh2qy.js";import{E as K}from"./index-fPdYGXMp.js";import{C as J}from"./Consumption-CyJkpzDZ.js";import{a as Q}from"./price-CGsOFrju.js";import{C as W}from"./CopyToClipboard-9qCYDiH6.js";import{V as X}from"./VideoPlayer-BGEYAPlk.js";import{E as Y}from"./index-jWTVpvs-.js";import{E as Z}from"./index-_Z0ASBe6.js";import{E as x}from"./index-D9CotYVj.js";import{B as ee}from"./BotPlaceholder-Bo9dgZvP.js";import{N as te}from"./NoTasks-CJsE40jB.js";import{l as oe}from"./pagination-B2Jzxk4_.js";import"./use-form-item-Cp52yInw.js";import"./index-r5W6hzzQ.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-dayjs-D7e3rSuL.js";import"./vendor-vue-router-BdJrTa0V.js";import"./index-ClGimrvP.js";import"./typescript-qp-NtKm7.js";import"./index-DTeH_Prb.js";import"./strings-BT-SZrAZ.js";import"./castArray-BxXcA5jl.js";import"./isEqual-BCC4XmQc.js";import"./_Uint8Array-9dmsQrsP.js";import"./debounce-DI9xWcc4.js";import"./_baseIteratee-BevRfjTA.js";import"./index-BDn7cXWD.js";import"./index-CHzMY7YM.js";import"./_baseClone-DvV9-v-c.js";import"./_initCloneObject-DAG7nN4w.js";import"./index-DLAIpdWC.js";import"./vue-plyr-QZFBikSk.js";import"./index-BGPS6JZN.js";const se=b({name:"LayoutHailuo",components:{ElDrawer:R,ElButton:S,FontAwesomeIcon:L},data(){return{drawer:!1}}}),ae={class:"main flex flex-row flex-1"},ne={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},le={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ie(e,s,f,g,w,y){const d=o("font-awesome-icon"),m=o("el-button"),r=o("el-drawer");return a(),c("div",ae,[i("div",ne,[V(e.$slots,"config",{},void 0,!0)]),i("div",le,[V(e.$slots,"result",{},void 0,!0)]),t(m,{circle:"",class:"menu",onClick:s[0]||(s[0]=_=>e.drawer=!0)},{default:u(()=>[t(d,{icon:"fa-solid fa-magic"})]),_:1}),t(r,{modelValue:e.drawer,"onUpdate:modelValue":s[1]||(s[1]=_=>e.drawer=_),direction:"ltr","with-header":!1,size:"340px"},{default:u(()=>[V(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const re=k(se,[["render",ie],["__scopeId","data-v-fa61db7a"]]),ce=b({name:"ModelSelector",components:{ElSelect:q,ElOption:O},data(){return{}},computed:{options(){return[{value:"minimax-t2v",label:this.$t("hailuo.button.model1")},{value:"minimax-i2v",label:this.$t("hailuo.button.model2")},{value:"minimax-i2v-director",label:this.$t("hailuo.button.model3")}]},value:{get(){return this.$store.state.hailuo?.config?.model},set(e){this.$store.commit("hailuo/setConfig",{...this.$store.state.hailuo?.config,model:e})}}},mounted(){this.value||(this.value=M)}}),ue={class:"field"},de={class:"title font-bold"},me={class:"float-left"};function pe(e,s,f,g,w,y){const d=o("el-option"),m=o("el-select");return a(),c("div",ue,[i("h2",de,n(e.$t("hailuo.name.model")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":s[0]||(s[0]=r=>e.value=r),class:"value",placeholder:e.$t("hailuo.placeholder.select"),clearable:""},{default:u(()=>[(a(!0),c(C,null,P(e.options,r=>(a(),v(d,{key:r.value,label:r.label,value:r.value},{default:u(()=>[i("span",me,n(r.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const he=k(ce,[["render",pe],["__scopeId","data-v-a768fbd9"]]),fe=b({name:"StartImageUrlInput",components:{ElUpload:H,ElButton:S,InfoIcon:G,ImagePreview:N},mixins:[z],data(){return{fileList:[],uploadUrl:B()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e.url).filter(e=>e!==void 0)},value:{get(){return this.$store.state.hailuo?.config?.first_image_url},set(){const e=this.urls?.[0];this.$store.commit("hailuo/setConfig",{...this.$store.state.hailuo?.config,first_image_url:e})}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){E.warning(this.$t("hailuo.message.uploadStartImageExceed"))},onError(){E.error(this.$t("hailuo.message.uploadStartImageError"))},async onRemove(){E.error(this.$t("hailuo.message.uploadStartImageError"))},onSetStartImageUrl(){const e=this.urls?.[0];this.$store.commit("hailuo/setConfig",{...this.$store.state.hailuo?.config,first_image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),ge={class:"relative"},_e={class:"flex justify-between"},$e={class:"flex justify-start items-center"},ve={class:"text-sm font-bold"};function be(e,s,f,g,w,y){const d=o("info-icon"),m=o("image-preview"),r=o("el-button"),_=o("el-upload");return a(),c("div",ge,[i("div",_e,[i("div",$e,[i("span",ve,n(e.$t("hailuo.name.startImageUrl")),1),t(d,{content:e.$t("hailuo.description.startImageUrl"),class:"info"},null,8,["content"])])]),t(_,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":s[0]||(s[0]=l=>e.fileList=l),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file","show-file-list":!0,limit:1,multiple:!1,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-remove":e.onRemove,"on-success":e.onSuccess,headers:e.headers},{file:u(({file:l})=>[l.url&&l.percentage!==void 0?(a(),v(m,{key:0,url:l.url,name:l.name,percentage:l.percentage,onRemove:$=>e.fileList.splice(e.fileList.indexOf(l),1)},null,8,["url","name","percentage","onRemove"])):h("",!0)]),default:u(()=>[t(r,{size:"small",type:"primary",class:"btn btn-upload",round:""},{default:u(()=>[p(n(e.$t("hailuo.button.uploadStartImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-remove","on-success","headers"])])}const ke=k(fe,[["render",be],["__scopeId","data-v-48f4a681"]]),we="",ye=b({name:"PromptInput",components:{ElInput:K,InfoIcon:G},computed:{prompt:{get(){return this.$store.state.hailuo?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("hailuo/setConfig",{...this.$store.state.hailuo?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=we)}}),Ee={class:"field"},Se={class:"box"},Ie={class:"title font-bold"};function Te(e,s,f,g,w,y){const d=o("info-icon"),m=o("el-input");return a(),c("div",Ee,[i("div",Se,[i("h2",Ie,n(e.$t("hailuo.name.prompt")),1),t(d,{content:e.$t("hailuo.description.prompt"),class:"info"},null,8,["content"])]),t(m,{modelValue:e.prompt,"onUpdate:modelValue":s[0]||(s[0]=r=>e.prompt=r),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("hailuo.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ve=k(ye,[["render",Te],["__scopeId","data-v-c601bcba"]]),Ce=b({name:"PresetPanel",components:{ElButton:S,FontAwesomeIcon:L,PromptInput:Ve,StartImageUrlInput:ke,ModelSelector:he,Consumption:J},emits:["generate"],computed:{config(){return this.$store.state.hailuo?.config},consumption(){return Q(this.config,this.service?.cost)},service(){return this.$store.state.hailuo?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Le={class:"flex flex-col h-full"},Ue={class:"flex-1 overflow-y-auto p-5"},Pe={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ge(e,s,f,g,w,y){const d=o("prompt-input"),m=o("model-selector"),r=o("start-image-url-input"),_=o("consumption"),l=o("font-awesome-icon"),$=o("el-button");return a(),c("div",Le,[i("div",Ue,[t(d,{class:"mb-4"}),t(m,{class:"mb-4"}),e.config?.model==="minimax-i2v"?(a(),v(r,{key:0,class:"mb-2"})):h("",!0)]),i("div",Pe,[t(_,{value:e.consumption,service:e.service},null,8,["value","service"]),e.config?.video_url!==void 0||e.config?.custom?(a(),v($,{key:0,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[t(l,{icon:"fa-solid fa-magic",class:"mr-2"}),p(" "+n(e.$t("hailuo.button.extend")),1)]),_:1},8,["onClick"])):(a(),v($,{key:1,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[t(l,{icon:"fa-solid fa-magic",class:"mr-2"}),p(" "+n(e.$t("hailuo.button.generate")),1)]),_:1},8,["onClick"]))])])}const Re=k(Ce,[["render",Ge]]),Ae=b({name:"TaskPreview",components:{ElImage:x,CopyToClipboard:W,FontAwesomeIcon:L,ElAlert:Z,VideoPlayer:X,ElTooltip:Y,ElButton:S},props:{modelValue:{type:Object,required:!0}},computed:{application(){return this.$store.state.hailuo?.application},config(){return this.$store.state.hailuo?.config},video(){return this.modelValue?.response?.data?.[0]}},methods:{onDownload(e){console.debug("on download hailuo video",e),window.open(e,"_blank")}}}),Me={class:"preview"},Be={class:"left"},je={class:"main"},De={class:"bot"},Oe={class:"datetime"},qe={class:"info"},ze={key:0,class:"prompt mt-2"},Fe={key:0},Ne={key:1},He={key:0,class:I({content:!0,failed:!0})},Ke={key:0,class:"mb-4"},Je={key:1,class:I({operations:!0,"mt-2":!0})},Qe={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},We={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Xe={key:1,class:I({content:!0})},Ye={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ze={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},xe={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},et={key:2,class:I({content:!0})},tt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function ot(e,s,f,g,w,y){const d=o("el-image"),m=o("video-player"),r=o("el-button"),_=o("el-tooltip"),l=o("font-awesome-icon"),$=o("copy-to-clipboard"),T=o("el-alert");return a(),c("div",Me,[i("div",Be,[t(d,{src:"https://cdn.acedata.cloud/0qg4gp.png",class:"avatar"})]),i("div",je,[i("div",De,[p(n(e.$t("hailuo.name.hailuoBot"))+" ",1),i("span",Oe,n(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),i("div",qe,[e.modelValue?.request?.prompt?(a(),c("p",ze,[p(n(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?h("",!0):(a(),c("span",Fe," - ("+n(e.$t("hailuo.status.pending"))+") ",1)),e.video?.state==="processing"||e.video?.state==="pending"||e.video?.state==="running"?(a(),c("span",Ne," - ("+n(e.$t("hailuo.status.processing"))+") ",1)):h("",!0)])):h("",!0)]),e.modelValue?.response?.success===!0?(a(),c("div",He,[e.video?.video_url?(a(),c("div",Ke,[t(m,{src:e.video?.video_url},null,8,["src"])])):h("",!0),e.video?(a(),c("div",Je,[t(_,{class:"box-item",effect:"dark",content:e.$t("hailuo.message.downloadVideo"),placement:"top-start"},{default:u(()=>[e.video?.video_url?(a(),v(r,{key:0,type:"info",size:"small",class:"mb-2",onClick:s[0]||(s[0]=A(mt=>e.onDownload(e.video?.video_url),["stop"]))},{default:u(()=>[p(n(e.$t("hailuo.button.download")),1)]),_:1})):h("",!0)]),_:1},8,["content"])])):h("",!0),t(T,{closable:!1,class:"mt-2 success"},{default:u(()=>[e.modelValue?.request?.model?(a(),c("p",Qe,[t(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),p(" "+n(e.$t("hailuo.name.model"))+": "+n(e.modelValue?.request?.model)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])])):h("",!0),i("p",We,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),p(" "+n(e.$t("hailuo.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):h("",!0),e.modelValue?.response?.success===!1?(a(),c("div",Xe,[t(T,{closable:!1,class:"failure"},{template:u(()=>[t(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),p(" "+n(e.$t("hailuo.name.failure")),1)]),default:u(()=>[i("p",Ye,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),p(" "+n(e.$t("hailuo.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])]),i("p",Ze,[t(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),p(" "+n(e.$t("hailuo.name.failureReason"))+": "+n(e.modelValue?.response?.error?.message)+" ",1),t($,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),i("p",xe,[t(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),p(" "+n(e.$t("hailuo.name.traceId"))+": "+n(e.modelValue?.response?.trace_id)+" ",1),t($,{content:e.modelValue?.response?.trace_id},null,8,["content"])])]),_:1})])):h("",!0),e.modelValue?.response?.success===void 0?(a(),c("div",et,[t(T,{closable:!1,class:"info"},{template:u(()=>[t(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),p(" "+n(e.$t("hailuo.name.failure")),1)]),default:u(()=>[i("p",tt,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),p(" "+n(e.$t("hailuo.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):h("",!0)])])}const st=k(Ae,[["render",ot],["__scopeId","data-v-48b0ddf9"]]),at=b({name:"RecentPanel",components:{TaskPreview:st,BotPlaceholder:ee,NoTasks:te,ScrollList:F},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.hailuo?.tasks,items:this.$store.state.hailuo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),nt={key:0},lt={key:2,class:"w-full h-full flex items-center justify-center"};function it(e,s,f,g,w,y){const d=o("bot-placeholder"),m=o("task-preview"),r=o("scroll-list"),_=o("no-tasks");return a(),c(C,null,[e.tasks?.items===void 0?(a(),c("div",nt,[t(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),v(r,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:s[0]||(s[0]=l=>e.$emit("reach-top"))},{default:u(()=>[(a(!0),c(C,null,P(e.tasks?.items,l=>(a(),v(m,{key:l.id,"model-value":l},null,8,["model-value"]))),128))]),_:1},8,["loading"])):h("",!0),e.tasks?.items?.length===0?(a(),c("div",lt,[t(_)])):h("",!0)],64)}const rt=k(at,[["render",it]]),ct="https://webhook.acedata.cloud/hailuo",ut=b({name:"HailuoIndex",components:{ConfigPanel:Re,Layout:re,RecentPanel:rt},inject:["initialized"],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.hailuo?.status?.getApplications===U.Request},tasksLoading(){return this.$store.state.hailuo?.status?.getTasks===U.Request||this.fetchingTasks},credential(){return this.$store.state.hailuo.credential},config(){return this.$store.state.hailuo.config},application(){return this.$store.state.hailuo.application},tasks(){return this.$store.state.hailuo.tasks}},watch:{tasks:{handler(e,s){e?.items?.length>s?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await oe({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("hailuo/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("hailuo/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:s=5,createdAtMin:f,createdAtMax:g}=e||{};console.debug("limit",s,"createdAtMin",f,"createdAtMax",g),this.fetchingTasks=!0;try{await this.$store.dispatch("hailuo/getTasks",{limit:s,createdAtMin:f,createdAtMax:g})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:ct},s=this.credential?.token;if(!s){console.error("no token specified");return}E.info(this.$t("hailuo.message.startingTask")),j.generate(e,{token:s}).then(()=>{E.success(this.$t("hailuo.message.startTaskSuccess"))}).catch(f=>{f?.response?.data?.error?.code===D?E.error(this.$t("hailuo.message.usedUp")):E.error(this.$t("hailuo.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function dt(e,s,f,g,w,y){const d=o("config-panel"),m=o("recent-panel"),r=o("layout");return a(),v(r,null,{config:u(()=>[t(d,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:u(()=>[t(m,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const oo=k(ut,[["render",dt]]);export{oo as default};
1
+ import{F as L}from"./index.es-DvlYcEm8.js";import{E as S}from"./index-B68ZhoIT.js";import{E as R}from"./index-Cs_p5eWu.js";import{d as b,I as c,E as i,y as t,B as V,x as u,z as o,A as a,F as n,O as C,N as P,q as v,K as p,J as h,P as I,M as A}from"./vendor-vue-DT_1TMfY.js";import{m as k,bO as M,aC as B,bP as j,bQ as D,aE as U}from"./index-CyFiNoMU.js";import{E as O,a as q}from"./index-CNj1v0HL.js";import{p as z}from"./pasteUploadMixin-BurWbGNQ.js";import{I as G,S as F}from"./ScrollList-Bg9XoeXr.js";import{I as N}from"./ImagePreview-DiG8EmAe.js";import{E as H}from"./index-CugtBXlr.js";import{E}from"./index-WHv9HyZz.js";import{E as K}from"./index-Cs1CUMcB.js";import{C as J}from"./Consumption-DwyEh2id.js";import{a as Q}from"./price-Z3WJjRpi.js";import{C as W}from"./CopyToClipboard-6pnI9uu0.js";import{V as X}from"./VideoPlayer-CvDqvGIC.js";import{E as Y}from"./index-fsa4SQ7X.js";import{E as Z}from"./index-1IMFPB3G.js";import{E as x}from"./index-CFADpY6u.js";import{B as ee}from"./BotPlaceholder-BfJyCZe5.js";import{N as te}from"./NoTasks-Dh1ZLJoo.js";import{l as oe}from"./pagination-B2Jzxk4_.js";import"./use-form-item-D3JefaBi.js";import"./index-r5W6hzzQ.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-dayjs-D7e3rSuL.js";import"./vendor-vue-router-BdJrTa0V.js";import"./index-qF1dBsuF.js";import"./typescript-8DTRp7mg.js";import"./index-CEY2FBzQ.js";import"./strings-BT-SZrAZ.js";import"./castArray-mR3ylEMC.js";import"./isEqual-B2AS9zF7.js";import"./_Uint8Array-Bje2NAqX.js";import"./debounce-ow11MzZE.js";import"./_baseIteratee-CRIhlIS7.js";import"./index-B3PLeRwV.js";import"./index-BoVrtEmb.js";import"./_baseClone-BvSIk2Dq.js";import"./_initCloneObject-BDx_mvcr.js";import"./index-C7iQbpiR.js";import"./vue-plyr-QZFBikSk.js";import"./index-4moLlQhW.js";const se=b({name:"LayoutHailuo",components:{ElDrawer:R,ElButton:S,FontAwesomeIcon:L},data(){return{drawer:!1}}}),ae={class:"main flex flex-row flex-1"},ne={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},le={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ie(e,s,f,g,w,y){const d=o("font-awesome-icon"),m=o("el-button"),r=o("el-drawer");return a(),c("div",ae,[i("div",ne,[V(e.$slots,"config",{},void 0,!0)]),i("div",le,[V(e.$slots,"result",{},void 0,!0)]),t(m,{circle:"",class:"menu",onClick:s[0]||(s[0]=_=>e.drawer=!0)},{default:u(()=>[t(d,{icon:"fa-solid fa-magic"})]),_:1}),t(r,{modelValue:e.drawer,"onUpdate:modelValue":s[1]||(s[1]=_=>e.drawer=_),direction:"ltr","with-header":!1,size:"340px"},{default:u(()=>[V(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const re=k(se,[["render",ie],["__scopeId","data-v-fa61db7a"]]),ce=b({name:"ModelSelector",components:{ElSelect:q,ElOption:O},data(){return{}},computed:{options(){return[{value:"minimax-t2v",label:this.$t("hailuo.button.model1")},{value:"minimax-i2v",label:this.$t("hailuo.button.model2")},{value:"minimax-i2v-director",label:this.$t("hailuo.button.model3")}]},value:{get(){return this.$store.state.hailuo?.config?.model},set(e){this.$store.commit("hailuo/setConfig",{...this.$store.state.hailuo?.config,model:e})}}},mounted(){this.value||(this.value=M)}}),ue={class:"field"},de={class:"title font-bold"},me={class:"float-left"};function pe(e,s,f,g,w,y){const d=o("el-option"),m=o("el-select");return a(),c("div",ue,[i("h2",de,n(e.$t("hailuo.name.model")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":s[0]||(s[0]=r=>e.value=r),class:"value",placeholder:e.$t("hailuo.placeholder.select"),clearable:""},{default:u(()=>[(a(!0),c(C,null,P(e.options,r=>(a(),v(d,{key:r.value,label:r.label,value:r.value},{default:u(()=>[i("span",me,n(r.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const he=k(ce,[["render",pe],["__scopeId","data-v-a768fbd9"]]),fe=b({name:"StartImageUrlInput",components:{ElUpload:H,ElButton:S,InfoIcon:G,ImagePreview:N},mixins:[z],data(){return{fileList:[],uploadUrl:B()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e.url).filter(e=>e!==void 0)},value:{get(){return this.$store.state.hailuo?.config?.first_image_url},set(){const e=this.urls?.[0];this.$store.commit("hailuo/setConfig",{...this.$store.state.hailuo?.config,first_image_url:e})}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){E.warning(this.$t("hailuo.message.uploadStartImageExceed"))},onError(){E.error(this.$t("hailuo.message.uploadStartImageError"))},async onRemove(){E.error(this.$t("hailuo.message.uploadStartImageError"))},onSetStartImageUrl(){const e=this.urls?.[0];this.$store.commit("hailuo/setConfig",{...this.$store.state.hailuo?.config,first_image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),ge={class:"relative"},_e={class:"flex justify-between"},$e={class:"flex justify-start items-center"},ve={class:"text-sm font-bold"};function be(e,s,f,g,w,y){const d=o("info-icon"),m=o("image-preview"),r=o("el-button"),_=o("el-upload");return a(),c("div",ge,[i("div",_e,[i("div",$e,[i("span",ve,n(e.$t("hailuo.name.startImageUrl")),1),t(d,{content:e.$t("hailuo.description.startImageUrl"),class:"info"},null,8,["content"])])]),t(_,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":s[0]||(s[0]=l=>e.fileList=l),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file","show-file-list":!0,limit:1,multiple:!1,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-remove":e.onRemove,"on-success":e.onSuccess,headers:e.headers},{file:u(({file:l})=>[l.url&&l.percentage!==void 0?(a(),v(m,{key:0,url:l.url,name:l.name,percentage:l.percentage,onRemove:$=>e.fileList.splice(e.fileList.indexOf(l),1)},null,8,["url","name","percentage","onRemove"])):h("",!0)]),default:u(()=>[t(r,{size:"small",type:"primary",class:"btn btn-upload",round:""},{default:u(()=>[p(n(e.$t("hailuo.button.uploadStartImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-remove","on-success","headers"])])}const ke=k(fe,[["render",be],["__scopeId","data-v-48f4a681"]]),we="",ye=b({name:"PromptInput",components:{ElInput:K,InfoIcon:G},computed:{prompt:{get(){return this.$store.state.hailuo?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("hailuo/setConfig",{...this.$store.state.hailuo?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=we)}}),Ee={class:"field"},Se={class:"box"},Ie={class:"title font-bold"};function Te(e,s,f,g,w,y){const d=o("info-icon"),m=o("el-input");return a(),c("div",Ee,[i("div",Se,[i("h2",Ie,n(e.$t("hailuo.name.prompt")),1),t(d,{content:e.$t("hailuo.description.prompt"),class:"info"},null,8,["content"])]),t(m,{modelValue:e.prompt,"onUpdate:modelValue":s[0]||(s[0]=r=>e.prompt=r),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("hailuo.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ve=k(ye,[["render",Te],["__scopeId","data-v-c601bcba"]]),Ce=b({name:"PresetPanel",components:{ElButton:S,FontAwesomeIcon:L,PromptInput:Ve,StartImageUrlInput:ke,ModelSelector:he,Consumption:J},emits:["generate"],computed:{config(){return this.$store.state.hailuo?.config},consumption(){return Q(this.config,this.service?.cost)},service(){return this.$store.state.hailuo?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Le={class:"flex flex-col h-full"},Ue={class:"flex-1 overflow-y-auto p-5"},Pe={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ge(e,s,f,g,w,y){const d=o("prompt-input"),m=o("model-selector"),r=o("start-image-url-input"),_=o("consumption"),l=o("font-awesome-icon"),$=o("el-button");return a(),c("div",Le,[i("div",Ue,[t(d,{class:"mb-4"}),t(m,{class:"mb-4"}),e.config?.model==="minimax-i2v"?(a(),v(r,{key:0,class:"mb-2"})):h("",!0)]),i("div",Pe,[t(_,{value:e.consumption,service:e.service},null,8,["value","service"]),e.config?.video_url!==void 0||e.config?.custom?(a(),v($,{key:0,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[t(l,{icon:"fa-solid fa-magic",class:"mr-2"}),p(" "+n(e.$t("hailuo.button.extend")),1)]),_:1},8,["onClick"])):(a(),v($,{key:1,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[t(l,{icon:"fa-solid fa-magic",class:"mr-2"}),p(" "+n(e.$t("hailuo.button.generate")),1)]),_:1},8,["onClick"]))])])}const Re=k(Ce,[["render",Ge]]),Ae=b({name:"TaskPreview",components:{ElImage:x,CopyToClipboard:W,FontAwesomeIcon:L,ElAlert:Z,VideoPlayer:X,ElTooltip:Y,ElButton:S},props:{modelValue:{type:Object,required:!0}},computed:{application(){return this.$store.state.hailuo?.application},config(){return this.$store.state.hailuo?.config},video(){return this.modelValue?.response?.data?.[0]}},methods:{onDownload(e){console.debug("on download hailuo video",e),window.open(e,"_blank")}}}),Me={class:"preview"},Be={class:"left"},je={class:"main"},De={class:"bot"},Oe={class:"datetime"},qe={class:"info"},ze={key:0,class:"prompt mt-2"},Fe={key:0},Ne={key:1},He={key:0,class:I({content:!0,failed:!0})},Ke={key:0,class:"mb-4"},Je={key:1,class:I({operations:!0,"mt-2":!0})},Qe={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},We={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Xe={key:1,class:I({content:!0})},Ye={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ze={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},xe={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},et={key:2,class:I({content:!0})},tt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function ot(e,s,f,g,w,y){const d=o("el-image"),m=o("video-player"),r=o("el-button"),_=o("el-tooltip"),l=o("font-awesome-icon"),$=o("copy-to-clipboard"),T=o("el-alert");return a(),c("div",Me,[i("div",Be,[t(d,{src:"https://cdn.acedata.cloud/0qg4gp.png",class:"avatar"})]),i("div",je,[i("div",De,[p(n(e.$t("hailuo.name.hailuoBot"))+" ",1),i("span",Oe,n(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),i("div",qe,[e.modelValue?.request?.prompt?(a(),c("p",ze,[p(n(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?h("",!0):(a(),c("span",Fe," - ("+n(e.$t("hailuo.status.pending"))+") ",1)),e.video?.state==="processing"||e.video?.state==="pending"||e.video?.state==="running"?(a(),c("span",Ne," - ("+n(e.$t("hailuo.status.processing"))+") ",1)):h("",!0)])):h("",!0)]),e.modelValue?.response?.success===!0?(a(),c("div",He,[e.video?.video_url?(a(),c("div",Ke,[t(m,{src:e.video?.video_url},null,8,["src"])])):h("",!0),e.video?(a(),c("div",Je,[t(_,{class:"box-item",effect:"dark",content:e.$t("hailuo.message.downloadVideo"),placement:"top-start"},{default:u(()=>[e.video?.video_url?(a(),v(r,{key:0,type:"info",size:"small",class:"mb-2",onClick:s[0]||(s[0]=A(mt=>e.onDownload(e.video?.video_url),["stop"]))},{default:u(()=>[p(n(e.$t("hailuo.button.download")),1)]),_:1})):h("",!0)]),_:1},8,["content"])])):h("",!0),t(T,{closable:!1,class:"mt-2 success"},{default:u(()=>[e.modelValue?.request?.model?(a(),c("p",Qe,[t(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),p(" "+n(e.$t("hailuo.name.model"))+": "+n(e.modelValue?.request?.model)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])])):h("",!0),i("p",We,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),p(" "+n(e.$t("hailuo.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):h("",!0),e.modelValue?.response?.success===!1?(a(),c("div",Xe,[t(T,{closable:!1,class:"failure"},{template:u(()=>[t(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),p(" "+n(e.$t("hailuo.name.failure")),1)]),default:u(()=>[i("p",Ye,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),p(" "+n(e.$t("hailuo.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])]),i("p",Ze,[t(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),p(" "+n(e.$t("hailuo.name.failureReason"))+": "+n(e.modelValue?.response?.error?.message)+" ",1),t($,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),i("p",xe,[t(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),p(" "+n(e.$t("hailuo.name.traceId"))+": "+n(e.modelValue?.response?.trace_id)+" ",1),t($,{content:e.modelValue?.response?.trace_id},null,8,["content"])])]),_:1})])):h("",!0),e.modelValue?.response?.success===void 0?(a(),c("div",et,[t(T,{closable:!1,class:"info"},{template:u(()=>[t(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),p(" "+n(e.$t("hailuo.name.failure")),1)]),default:u(()=>[i("p",tt,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),p(" "+n(e.$t("hailuo.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):h("",!0)])])}const st=k(Ae,[["render",ot],["__scopeId","data-v-48b0ddf9"]]),at=b({name:"RecentPanel",components:{TaskPreview:st,BotPlaceholder:ee,NoTasks:te,ScrollList:F},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.hailuo?.tasks,items:this.$store.state.hailuo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),nt={key:0},lt={key:2,class:"w-full h-full flex items-center justify-center"};function it(e,s,f,g,w,y){const d=o("bot-placeholder"),m=o("task-preview"),r=o("scroll-list"),_=o("no-tasks");return a(),c(C,null,[e.tasks?.items===void 0?(a(),c("div",nt,[t(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),v(r,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:s[0]||(s[0]=l=>e.$emit("reach-top"))},{default:u(()=>[(a(!0),c(C,null,P(e.tasks?.items,l=>(a(),v(m,{key:l.id,"model-value":l},null,8,["model-value"]))),128))]),_:1},8,["loading"])):h("",!0),e.tasks?.items?.length===0?(a(),c("div",lt,[t(_)])):h("",!0)],64)}const rt=k(at,[["render",it]]),ct="https://webhook.acedata.cloud/hailuo",ut=b({name:"HailuoIndex",components:{ConfigPanel:Re,Layout:re,RecentPanel:rt},inject:["initialized"],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.hailuo?.status?.getApplications===U.Request},tasksLoading(){return this.$store.state.hailuo?.status?.getTasks===U.Request||this.fetchingTasks},credential(){return this.$store.state.hailuo.credential},config(){return this.$store.state.hailuo.config},application(){return this.$store.state.hailuo.application},tasks(){return this.$store.state.hailuo.tasks}},watch:{tasks:{handler(e,s){e?.items?.length>s?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await oe({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("hailuo/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("hailuo/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:s=5,createdAtMin:f,createdAtMax:g}=e||{};console.debug("limit",s,"createdAtMin",f,"createdAtMax",g),this.fetchingTasks=!0;try{await this.$store.dispatch("hailuo/getTasks",{limit:s,createdAtMin:f,createdAtMax:g})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:ct},s=this.credential?.token;if(!s){console.error("no token specified");return}E.info(this.$t("hailuo.message.startingTask")),j.generate(e,{token:s}).then(()=>{E.success(this.$t("hailuo.message.startTaskSuccess"))}).catch(f=>{f?.response?.data?.error?.code===D?E.error(this.$t("hailuo.message.usedUp")):E.error(this.$t("hailuo.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function dt(e,s,f,g,w,y){const d=o("config-panel"),m=o("recent-panel"),r=o("layout");return a(),v(r,null,{config:u(()=>[t(d,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:u(()=>[t(m,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const oo=k(ut,[["render",dt]]);export{oo as default};
@@ -1 +1 @@
1
- import{F as P}from"./index.es-E1XclKiE.js";import{E as L}from"./index-Sb9EXCnM.js";import{E as O}from"./index-V3lWWGOd.js";import{d as $,I as r,E as l,y as t,B as R,x as u,z as s,A as a,F as i,O as S,N as T,q as V,K as h,J as g,P as A}from"./vendor-vue-DT_1TMfY.js";import{m as k,e3 as q,e4 as B,e5 as j,aC as N,e6 as z,bQ as F,a5 as K,aD as H,aE as C}from"./index-COyhwUb4.js";import{I as D,S as J}from"./ScrollList-BvJlbkuP.js";import{E as Q}from"./index-taxIPwin.js";import{E as G,a as M}from"./index-CUujnUBa.js";import{a as W,E as X}from"./index-BbbU5oQo.js";import{p as Y}from"./pasteUploadMixin-BurWbGNQ.js";import{I as Z}from"./ImagePreview-Dok-mWnh.js";import{E as x}from"./index-S4Wb9X3V.js";import{E}from"./index-C4BBh2qy.js";import{E as ee}from"./index-fPdYGXMp.js";import{C as te}from"./Consumption-CyJkpzDZ.js";import{a as oe}from"./price-CGsOFrju.js";import{C as se}from"./CopyToClipboard-9qCYDiH6.js";import{s as ae}from"./vue-plyr-QZFBikSk.js";import{E as ne}from"./index-jWTVpvs-.js";import{E as ie}from"./index-_Z0ASBe6.js";import{E as le}from"./index-D9CotYVj.js";import{B as re}from"./BotPlaceholder-Bo9dgZvP.js";import{N as ce}from"./NoTasks-CJsE40jB.js";import{l as pe}from"./pagination-B2Jzxk4_.js";import"./use-form-item-Cp52yInw.js";import"./index-r5W6hzzQ.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-dayjs-D7e3rSuL.js";import"./vendor-vue-router-BdJrTa0V.js";import"./validator-Bk_SpaTc.js";import"./index-DTeH_Prb.js";import"./index-ClGimrvP.js";import"./typescript-qp-NtKm7.js";import"./strings-BT-SZrAZ.js";import"./castArray-BxXcA5jl.js";import"./isEqual-BCC4XmQc.js";import"./_Uint8Array-9dmsQrsP.js";import"./debounce-DI9xWcc4.js";import"./_baseIteratee-BevRfjTA.js";import"./index-BDn7cXWD.js";import"./index-CHzMY7YM.js";import"./_baseClone-DvV9-v-c.js";import"./_initCloneObject-DAG7nN4w.js";import"./index-DLAIpdWC.js";import"./index-BGPS6JZN.js";const de=$({name:"LayoutPika",components:{ElDrawer:O,ElButton:L,FontAwesomeIcon:P},data(){return{drawer:!1}}}),ue={class:"main flex flex-row flex-1"},me={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},fe={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,c,d,v,b){const p=s("font-awesome-icon"),m=s("el-button"),n=s("el-drawer");return a(),r("div",ue,[l("div",me,[R(e.$slots,"config",{},void 0,!0)]),l("div",fe,[R(e.$slots,"result",{},void 0,!0)]),t(m,{circle:"",class:"menu",onClick:o[0]||(o[0]=y=>e.drawer=!0)},{default:u(()=>[t(p,{icon:"fa-solid fa-magic"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=y=>e.drawer=y),direction:"ltr","with-header":!1,size:"350px"},{default:u(()=>[R(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const he=k(de,[["render",_e],["__scopeId","data-v-11f71ab6"]]),ge=$({name:"IngredientsSelector",components:{ElSwitch:Q,InfoIcon:D},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients},set(e){console.debug("set ingredients",e),e||this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients:e,ingredients_mode:void 0,image_url:void 0}),this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients:e,model:"2.0"})}}},mounted(){this.value===void 0&&(this.value=q)}}),$e={class:"field"},ke={class:"title font-bold"};function ve(e,o,c,d,v,b){const p=s("el-switch"),m=s("info-icon");return a(),r("div",$e,[l("h2",ke,i(e.$t("pika.name.ingredients")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value"},null,8,["modelValue"]),t(m,{content:e.$t("pika.description.ingredients"),class:"info"},null,8,["content"])])}const be=k(ge,[["render",ve],["__scopeId","data-v-17c0af5c"]]),ye=$({name:"EffectSelector",components:{ElSelect:M,ElOption:G},data(){return{}},computed:{options(){return[{value:"Levitate",label:this.$t("pika.style.effect1")},{value:"Decapitate",label:this.$t("pika.style.effect2")},{value:"Eye-pop",label:this.$t("pika.style.effect3")},{value:"Ta-da",label:this.$t("pika.style.effect4")},{value:"Deflate",label:this.$t("pika.style.effect5")},{value:"Crumble",label:this.$t("pika.style.effect6")},{value:"Dissolve",label:this.$t("pika.style.effect7")},{value:"Squish",label:this.$t("pika.style.effect8")},{value:"Inflate",label:this.$t("pika.style.effect9")},{value:"Melt",label:this.$t("pika.style.effect10")},{value:"Cake-ify",label:this.$t("pika.style.effect11")},{value:"Crush",label:this.$t("pika.style.effect12")},{value:"Explode",label:this.$t("pika.style.effect13")}]},value:{get(){return this.$store.state.pika?.config?.effect},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,effect:e})}}}}),we={class:"field"},Ee={class:"title font-bold"},Ve={class:"float-left"};function Ie(e,o,c,d,v,b){const p=s("el-option"),m=s("el-select");return a(),r("div",we,[l("h2",Ee,i(e.$t("pika.name.effect")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("pika.placeholder.select"),clearable:""},{default:u(()=>[(a(!0),r(S,null,T(e.options,n=>(a(),V(p,{key:n.value,label:n.label,value:n.value},{default:u(()=>[l("span",Ve,i(n.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Se=k(ye,[["render",Ie],["__scopeId","data-v-d1c54475"]]),Te=$({name:"IngredientsModelSelector",components:{ElRadioButton:X,ElRadioGroup:W},data(){return{options:[{label:this.$t("pika.button.precise"),value:"precise"},{label:this.$t("pika.button.creative"),value:"creative"}]}},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients_mode},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients_mode:e})}}},mounted(){this.value||(this.value=B)}}),Ce={class:"field"},Pe={class:"title font-bold"};function Le(e,o,c,d,v,b){const p=s("el-radio-button"),m=s("el-radio-group");return a(),r("div",Ce,[l("h2",Pe,i(e.$t("pika.name.ingredientsModel")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"quality"},{default:u(()=>[(a(!0),r(S,null,T(e.options,n=>(a(),V(p,{key:n.value,label:n.value},{default:u(()=>[h(i(n.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const Ae=k(Te,[["render",Le],["__scopeId","data-v-b72865fa"]]),Ue=$({name:"ModelSelector",components:{ElSelect:M,ElOption:G},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"2.0",label:"2.0"},{value:"1.5",label:"1.5"}]}},computed:{value:{get(){return this.$store.state.pika?.config?.model},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika.config,model:e})}}},mounted(){this.value||(this.value=j)}}),Re={class:"field"},De={class:"title font-bold"};function Ge(e,o,c,d,v,b){const p=s("el-option"),m=s("el-select");return a(),r("div",Re,[l("h2",De,i(e.$t("pika.name.model")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("pika.placeholder.select")},{default:u(()=>[(a(!0),r(S,null,T(e.options,n=>(a(),V(p,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Me=k(Ue,[["render",Ge],["__scopeId","data-v-7b2e870a"]]),Oe=$({name:"ImageUrlInput",components:{ElUpload:x,ElButton:L,InfoIcon:D,ImagePreview:Z,FontAwesomeIcon:P},mixins:[Y],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.pika?.config?.image_url},set(){const e=this.urls?.[0];this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,image_url:e})}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){E.warning(this.$t("pika.message.uploadStartImageExceed"))},onError(){E.error(this.$t("pika.message.uploadStartImageError"))},async onRemove(){E.error(this.$t("pika.message.uploadStartImageError"))},onSetStartImageUrl(){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,image_url:this.urls})},async onSuccess(){this.onSetStartImageUrl()}}}),qe={class:"field"},Be={class:"title font-bold"},je={class:"upload-wrapper"};function Ne(e,o,c,d,v,b){const p=s("image-preview"),m=s("font-awesome-icon"),n=s("el-button"),y=s("el-upload"),_=s("info-icon");return a(),r("div",qe,[l("h2",Be,i(e.$t("pika.name.imageUrl")),1),l("div",je,[t(y,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=f=>e.fileList=f),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value upload-wrapper",limit:3,multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-remove":e.onRemove,"on-success":e.onSuccess,headers:e.headers},{file:u(({file:f})=>[t(p,{url:f.url||f.response?.file_url,name:f.name,percentage:f.percentage,onRemove:I=>e.fileList.splice(e.fileList.indexOf(f),1)},null,8,["url","name","percentage","onRemove"])]),default:u(()=>[t(n,{size:"small",type:"primary",round:""},{default:u(()=>[t(m,{icon:"fa-solid fa-upload",class:"mr-1"}),h(" "+i(e.$t("pika.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-remove","on-success","headers"])]),t(_,{content:e.$t("pika.description.imageUrl"),class:"info"},null,8,["content"])])}const ze=k(Oe,[["render",Ne],["__scopeId","data-v-a948772f"]]),Fe="",Ke=$({name:"PromptInput",components:{ElInput:ee,InfoIcon:D},computed:{prompt:{get(){return this.$store.state.pika?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Fe)}}),He={class:"field"},Je={class:"box"},Qe={class:"title font-bold"};function We(e,o,c,d,v,b){const p=s("info-icon"),m=s("el-input");return a(),r("div",He,[l("div",Je,[l("h2",Qe,i(e.$t("pika.name.prompt")),1),t(p,{content:e.$t("pika.description.prompt"),class:"info"},null,8,["content"])]),t(m,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=n=>e.prompt=n),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("pika.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Xe=k(Ke,[["render",We],["__scopeId","data-v-d7f7cedd"]]),Ye=$({name:"PresetPanel",components:{ImageUrlInput:ze,ElButton:L,FontAwesomeIcon:P,Consumption:te,PromptInput:Xe,IngredientsSelector:be,IngredientsModelSelector:Ae,ModelSelector:Me,EffectSelector:Se},emits:["generate"],computed:{config(){return this.$store.state.pika?.config},consumption(){return oe(this.config,this.service?.cost)},service(){return this.$store.state.pika?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Ze={class:"flex flex-col h-full"},xe={class:"flex-1 overflow-y-auto p-5"},et={class:"flex flex-col items-center justify-center px-5 pb-5"};function tt(e,o,c,d,v,b){const p=s("prompt-input"),m=s("model-selector"),n=s("ingredients-selector"),y=s("effect-selector"),_=s("image-url-input"),f=s("ingredients-model-selector"),I=s("consumption"),w=s("font-awesome-icon"),U=s("el-button");return a(),r("div",Ze,[l("div",xe,[t(p,{class:"mb-4"}),t(m,{class:"mb-4"}),t(n,{class:"mb-4"}),t(y,{class:"mb-4"}),e.config?.ingredients?(a(),V(_,{key:0,class:"mb-4"})):g("",!0),e.config?.ingredients?(a(),V(f,{key:1,class:"mb-4"})):g("",!0)]),l("div",et,[t(I,{value:e.consumption,service:e.service},null,8,["value","service"]),t(U,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[t(w,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+i(e.$t("pika.button.generate")),1)]),_:1},8,["onClick"])])])}const ot=k(Ye,[["render",tt]]),st=$({name:"VideoPlayer",components:{VuePlyr:ae},props:{modelValue:{type:Object,required:!0}},data(){return{options:{quality:{default:"1080p"}}}}}),at=["data-poster"],nt=["src"];function it(e,o,c,d,v,b){const p=s("vue-plyr");return a(),r("div",null,[t(p,{options:e.options,class:"video"},{default:u(()=>[l("video",{controls:"",crossorigin:"",playsinline:"","data-poster":e.modelValue?.image_url},[l("source",{size:"1080",src:e.modelValue?.video_url,type:"video/mp4"},null,8,nt)],8,at)]),_:1},8,["options"])])}const lt=k(st,[["render",it],["__scopeId","data-v-fc420430"]]),rt=$({name:"TaskPreview",components:{ElImage:le,CopyToClipboard:se,FontAwesomeIcon:P,ElAlert:ie,VideoPlayer:lt,ElTooltip:ne,ElButton:L},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.pika?.application},config(){return this.$store.state.pika?.config},videos(){let e=[];const o=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(c=>{let d=c;o&&(d.action=o),e.push(d)}),e}},methods:{onDownload(e){console.log("on download"),window.open(e,"_blank")},onReload(e){const o=e.target,c=new URL(o.src),d=c.searchParams.get("retry");if(!d)c.searchParams.set("retry","1");else if(parseInt(d)<2)c.searchParams.set("retry",(parseInt(d)+1).toString());else return;o.src=c.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),ct={class:"left"},pt={class:"main"},dt={class:"bot"},ut={class:"datetime"},mt={class:"info"},ft={key:0,class:"prompt mt-2"},_t={key:0},ht={key:1},gt={key:0,class:A({content:!0,failed:!0})},$t={class:"image-wrapper"},kt={key:0,class:A({operations:!0,"mt-2":!0})},vt={key:0,class:"description"},bt={class:"description"},yt={key:1,class:A({content:!0})},wt={class:"description"},Et={class:"description"},Vt={class:"description"},It={key:2,class:A({content:!0})},St={class:"description"};function Tt(e,o,c,d,v,b){const p=s("el-image"),m=s("VideoPlayer"),n=s("el-button"),y=s("el-tooltip"),_=s("font-awesome-icon"),f=s("copy-to-clipboard"),I=s("el-alert");return a(!0),r(S,null,T(e.videos,(w,U)=>(a(),r("div",{key:U,class:"preview"},[l("div",ct,[t(p,{src:"https://cdn.acedata.cloud/i80tgn.png",class:"avatar"})]),l("div",pt,[l("div",dt,[h(i(e.$t("pika.name.pikaBot"))+" ",1),l("span",ut,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",mt,[e.modelValue?.request?.prompt?(a(),r("p",ft,[h(i(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?g("",!0):(a(),r("span",_t," - ("+i(e.$t("pika.status.pending"))+") ",1)),w?.state==="processing"||w?.state==="pending"?(a(),r("span",ht," - ("+i(e.$t("pika.status.processing"))+") ",1)):g("",!0)])):g("",!0)]),e.modelValue?.response?.success===!0?(a(),r("div",gt,[l("div",$t,[t(m,{"model-value":w},null,8,["model-value"])]),w?(a(),r("div",kt,[t(y,{class:"box-item",effect:"dark",content:e.$t("pika.message.downloadVideo"),placement:"top-start"},{default:u(()=>[w?.video_url?(a(),V(n,{key:0,type:"info",size:"small",class:"btn-action",onClick:Ot=>e.onDownload(w?.video_url)},{default:u(()=>[h(i(e.$t("pika.button.download")),1)]),_:2},1032,["onClick"])):g("",!0)]),_:2},1032,["content"])])):g("",!0),t(I,{closable:!1,class:"mt-2 success"},{default:u(()=>[e.modelValue?.request?.model?(a(),r("p",vt,[t(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+i(e.$t("pika.name.model"))+": "+i(e.modelValue?.request?.model),1)])):g("",!0),l("p",bt,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(f,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0),e.modelValue?.response?.success===!1?(a(),r("div",yt,[t(I,{closable:!1,class:"failure"},{template:u(()=>[t(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+i(e.$t("pika.name.failure")),1)]),default:u(()=>[l("p",wt,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(f,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),l("p",Et,[t(_,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+i(e.$t("pika.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),t(f,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),l("p",Vt,[t(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+i(e.$t("pika.name.traceId"))+": "+i(e.modelValue?.response?.trace_id)+" ",1),t(f,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0),!e.modelValue?.response||w?.state==="processing"||w?.state==="pending"?(a(),r("div",It,[t(I,{closable:!1,class:"info"},{template:u(()=>[t(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+i(e.$t("pika.name.failure")),1)]),default:u(()=>[l("p",St,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(f,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0)])]))),128)}const Ct=k(rt,[["render",Tt],["__scopeId","data-v-df7eb728"]]),Pt=$({name:"RecentPanel",components:{TaskPreview:Ct,BotPlaceholder:re,NoTasks:ce,ScrollList:J},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.pika?.tasks,items:this.$store.state.pika?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Lt={key:0},At={key:2,class:"w-full h-full flex items-center justify-center"};function Ut(e,o,c,d,v,b){const p=s("bot-placeholder"),m=s("task-preview"),n=s("scroll-list"),y=s("no-tasks");return a(),r(S,null,[e.tasks?.items===void 0?(a(),r("div",Lt,[t(p)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),V(n,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:o[0]||(o[0]=_=>e.$emit("reach-top"))},{default:u(()=>[(a(!0),r(S,null,T(e.tasks?.items,(_,f)=>(a(),V(m,{key:f,"model-value":_},null,8,["model-value"]))),128))]),_:1},8,["loading"])):g("",!0),e.tasks?.items?.length===0?(a(),r("div",At,[t(y)])):g("",!0)],64)}const Rt=k(Pt,[["render",Ut]]),Dt="https://webhook.acedata.cloud/pika",Gt=$({name:"PikaIndex",components:{ConfigPanel:ot,Layout:he,RecentPanel:Rt},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.pika?.status?.getApplications===C.Request},tasksLoading(){return this.$store.state.pika?.status?.getTasks===C.Request||this.fetchingTasks},service(){return this.$store.state.pika.service},credential(){return this.$store.state.pika.credential},config(){return this.$store.state.pika.config},initializing(){return this.$store.state.pika.status.getApplications===C.Request},needApply(){return this.$store.state.pika.status.getApplications===C.Success&&!this.application},application(){return this.$store.state.pika.application},applications(){return this.$store.state.pika.applications},tasks(){return this.$store.state.pika.tasks}},watch:{tasks:{handler(e,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("pika/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("pika/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){K.create({application:this.application}).then(({data:e})=>{this.application=e,E.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===H&&E.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:o=5,createdAtMin:c,createdAtMax:d}=e||{};console.debug("limit",o,"createdAtMin",c,"createdAtMax",d),this.fetchingTasks=!0;try{await this.$store.dispatch("pika/getTasks",{limit:o,createdAtMin:c,createdAtMax:d})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Dt},o=this.credential?.token;if(!o){console.error("no token specified");return}E.info(this.$t("pika.message.startingTask")),z.generate(e,{token:o}).then(()=>{E.success(this.$t("pika.message.startTaskSuccess")),this.$store.commit("pika/setConfig",{config:void 0})}).catch(c=>{c?.response?.data?.error?.code===F?E.error(this.$t("pika.message.usedUp")):E.error(this.$t("pika.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Mt(e,o,c,d,v,b){const p=s("config-panel"),m=s("recent-panel"),n=s("layout");return a(),V(n,null,{config:u(()=>[t(p,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:u(()=>[t(m,{ref:"recentPanel",class:"panel recent",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Lo=k(Gt,[["render",Mt],["__scopeId","data-v-456819d1"]]);export{Lo as default};
1
+ import{F as P}from"./index.es-DvlYcEm8.js";import{E as L}from"./index-B68ZhoIT.js";import{E as O}from"./index-Cs_p5eWu.js";import{d as $,I as r,E as l,y as t,B as R,x as u,z as s,A as a,F as i,O as S,N as T,q as V,K as h,J as g,P as A}from"./vendor-vue-DT_1TMfY.js";import{m as k,e3 as q,e4 as B,e5 as j,aC as N,e6 as z,bQ as F,a5 as K,aD as H,aE as C}from"./index-CyFiNoMU.js";import{I as D,S as J}from"./ScrollList-Bg9XoeXr.js";import{E as Q}from"./index-sGc6bObk.js";import{E as G,a as M}from"./index-CNj1v0HL.js";import{a as W,E as X}from"./index-BLvcuKQ4.js";import{p as Y}from"./pasteUploadMixin-BurWbGNQ.js";import{I as Z}from"./ImagePreview-DiG8EmAe.js";import{E as x}from"./index-CugtBXlr.js";import{E}from"./index-WHv9HyZz.js";import{E as ee}from"./index-Cs1CUMcB.js";import{C as te}from"./Consumption-DwyEh2id.js";import{a as oe}from"./price-Z3WJjRpi.js";import{C as se}from"./CopyToClipboard-6pnI9uu0.js";import{s as ae}from"./vue-plyr-QZFBikSk.js";import{E as ne}from"./index-fsa4SQ7X.js";import{E as ie}from"./index-1IMFPB3G.js";import{E as le}from"./index-CFADpY6u.js";import{B as re}from"./BotPlaceholder-BfJyCZe5.js";import{N as ce}from"./NoTasks-Dh1ZLJoo.js";import{l as pe}from"./pagination-B2Jzxk4_.js";import"./use-form-item-D3JefaBi.js";import"./index-r5W6hzzQ.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-dayjs-D7e3rSuL.js";import"./vendor-vue-router-BdJrTa0V.js";import"./validator-eScdQo1j.js";import"./index-CEY2FBzQ.js";import"./index-qF1dBsuF.js";import"./typescript-8DTRp7mg.js";import"./strings-BT-SZrAZ.js";import"./castArray-mR3ylEMC.js";import"./isEqual-B2AS9zF7.js";import"./_Uint8Array-Bje2NAqX.js";import"./debounce-ow11MzZE.js";import"./_baseIteratee-CRIhlIS7.js";import"./index-B3PLeRwV.js";import"./index-BoVrtEmb.js";import"./_baseClone-BvSIk2Dq.js";import"./_initCloneObject-BDx_mvcr.js";import"./index-C7iQbpiR.js";import"./index-4moLlQhW.js";const de=$({name:"LayoutPika",components:{ElDrawer:O,ElButton:L,FontAwesomeIcon:P},data(){return{drawer:!1}}}),ue={class:"main flex flex-row flex-1"},me={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},fe={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,c,d,v,b){const p=s("font-awesome-icon"),m=s("el-button"),n=s("el-drawer");return a(),r("div",ue,[l("div",me,[R(e.$slots,"config",{},void 0,!0)]),l("div",fe,[R(e.$slots,"result",{},void 0,!0)]),t(m,{circle:"",class:"menu",onClick:o[0]||(o[0]=y=>e.drawer=!0)},{default:u(()=>[t(p,{icon:"fa-solid fa-magic"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=y=>e.drawer=y),direction:"ltr","with-header":!1,size:"350px"},{default:u(()=>[R(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const he=k(de,[["render",_e],["__scopeId","data-v-11f71ab6"]]),ge=$({name:"IngredientsSelector",components:{ElSwitch:Q,InfoIcon:D},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients},set(e){console.debug("set ingredients",e),e||this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients:e,ingredients_mode:void 0,image_url:void 0}),this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients:e,model:"2.0"})}}},mounted(){this.value===void 0&&(this.value=q)}}),$e={class:"field"},ke={class:"title font-bold"};function ve(e,o,c,d,v,b){const p=s("el-switch"),m=s("info-icon");return a(),r("div",$e,[l("h2",ke,i(e.$t("pika.name.ingredients")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value"},null,8,["modelValue"]),t(m,{content:e.$t("pika.description.ingredients"),class:"info"},null,8,["content"])])}const be=k(ge,[["render",ve],["__scopeId","data-v-17c0af5c"]]),ye=$({name:"EffectSelector",components:{ElSelect:M,ElOption:G},data(){return{}},computed:{options(){return[{value:"Levitate",label:this.$t("pika.style.effect1")},{value:"Decapitate",label:this.$t("pika.style.effect2")},{value:"Eye-pop",label:this.$t("pika.style.effect3")},{value:"Ta-da",label:this.$t("pika.style.effect4")},{value:"Deflate",label:this.$t("pika.style.effect5")},{value:"Crumble",label:this.$t("pika.style.effect6")},{value:"Dissolve",label:this.$t("pika.style.effect7")},{value:"Squish",label:this.$t("pika.style.effect8")},{value:"Inflate",label:this.$t("pika.style.effect9")},{value:"Melt",label:this.$t("pika.style.effect10")},{value:"Cake-ify",label:this.$t("pika.style.effect11")},{value:"Crush",label:this.$t("pika.style.effect12")},{value:"Explode",label:this.$t("pika.style.effect13")}]},value:{get(){return this.$store.state.pika?.config?.effect},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,effect:e})}}}}),we={class:"field"},Ee={class:"title font-bold"},Ve={class:"float-left"};function Ie(e,o,c,d,v,b){const p=s("el-option"),m=s("el-select");return a(),r("div",we,[l("h2",Ee,i(e.$t("pika.name.effect")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("pika.placeholder.select"),clearable:""},{default:u(()=>[(a(!0),r(S,null,T(e.options,n=>(a(),V(p,{key:n.value,label:n.label,value:n.value},{default:u(()=>[l("span",Ve,i(n.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Se=k(ye,[["render",Ie],["__scopeId","data-v-d1c54475"]]),Te=$({name:"IngredientsModelSelector",components:{ElRadioButton:X,ElRadioGroup:W},data(){return{options:[{label:this.$t("pika.button.precise"),value:"precise"},{label:this.$t("pika.button.creative"),value:"creative"}]}},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients_mode},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients_mode:e})}}},mounted(){this.value||(this.value=B)}}),Ce={class:"field"},Pe={class:"title font-bold"};function Le(e,o,c,d,v,b){const p=s("el-radio-button"),m=s("el-radio-group");return a(),r("div",Ce,[l("h2",Pe,i(e.$t("pika.name.ingredientsModel")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"quality"},{default:u(()=>[(a(!0),r(S,null,T(e.options,n=>(a(),V(p,{key:n.value,label:n.value},{default:u(()=>[h(i(n.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const Ae=k(Te,[["render",Le],["__scopeId","data-v-b72865fa"]]),Ue=$({name:"ModelSelector",components:{ElSelect:M,ElOption:G},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"2.0",label:"2.0"},{value:"1.5",label:"1.5"}]}},computed:{value:{get(){return this.$store.state.pika?.config?.model},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika.config,model:e})}}},mounted(){this.value||(this.value=j)}}),Re={class:"field"},De={class:"title font-bold"};function Ge(e,o,c,d,v,b){const p=s("el-option"),m=s("el-select");return a(),r("div",Re,[l("h2",De,i(e.$t("pika.name.model")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("pika.placeholder.select")},{default:u(()=>[(a(!0),r(S,null,T(e.options,n=>(a(),V(p,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Me=k(Ue,[["render",Ge],["__scopeId","data-v-7b2e870a"]]),Oe=$({name:"ImageUrlInput",components:{ElUpload:x,ElButton:L,InfoIcon:D,ImagePreview:Z,FontAwesomeIcon:P},mixins:[Y],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.pika?.config?.image_url},set(){const e=this.urls?.[0];this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,image_url:e})}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){E.warning(this.$t("pika.message.uploadStartImageExceed"))},onError(){E.error(this.$t("pika.message.uploadStartImageError"))},async onRemove(){E.error(this.$t("pika.message.uploadStartImageError"))},onSetStartImageUrl(){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,image_url:this.urls})},async onSuccess(){this.onSetStartImageUrl()}}}),qe={class:"field"},Be={class:"title font-bold"},je={class:"upload-wrapper"};function Ne(e,o,c,d,v,b){const p=s("image-preview"),m=s("font-awesome-icon"),n=s("el-button"),y=s("el-upload"),_=s("info-icon");return a(),r("div",qe,[l("h2",Be,i(e.$t("pika.name.imageUrl")),1),l("div",je,[t(y,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=f=>e.fileList=f),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value upload-wrapper",limit:3,multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-remove":e.onRemove,"on-success":e.onSuccess,headers:e.headers},{file:u(({file:f})=>[t(p,{url:f.url||f.response?.file_url,name:f.name,percentage:f.percentage,onRemove:I=>e.fileList.splice(e.fileList.indexOf(f),1)},null,8,["url","name","percentage","onRemove"])]),default:u(()=>[t(n,{size:"small",type:"primary",round:""},{default:u(()=>[t(m,{icon:"fa-solid fa-upload",class:"mr-1"}),h(" "+i(e.$t("pika.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-remove","on-success","headers"])]),t(_,{content:e.$t("pika.description.imageUrl"),class:"info"},null,8,["content"])])}const ze=k(Oe,[["render",Ne],["__scopeId","data-v-a948772f"]]),Fe="",Ke=$({name:"PromptInput",components:{ElInput:ee,InfoIcon:D},computed:{prompt:{get(){return this.$store.state.pika?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Fe)}}),He={class:"field"},Je={class:"box"},Qe={class:"title font-bold"};function We(e,o,c,d,v,b){const p=s("info-icon"),m=s("el-input");return a(),r("div",He,[l("div",Je,[l("h2",Qe,i(e.$t("pika.name.prompt")),1),t(p,{content:e.$t("pika.description.prompt"),class:"info"},null,8,["content"])]),t(m,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=n=>e.prompt=n),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("pika.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Xe=k(Ke,[["render",We],["__scopeId","data-v-d7f7cedd"]]),Ye=$({name:"PresetPanel",components:{ImageUrlInput:ze,ElButton:L,FontAwesomeIcon:P,Consumption:te,PromptInput:Xe,IngredientsSelector:be,IngredientsModelSelector:Ae,ModelSelector:Me,EffectSelector:Se},emits:["generate"],computed:{config(){return this.$store.state.pika?.config},consumption(){return oe(this.config,this.service?.cost)},service(){return this.$store.state.pika?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Ze={class:"flex flex-col h-full"},xe={class:"flex-1 overflow-y-auto p-5"},et={class:"flex flex-col items-center justify-center px-5 pb-5"};function tt(e,o,c,d,v,b){const p=s("prompt-input"),m=s("model-selector"),n=s("ingredients-selector"),y=s("effect-selector"),_=s("image-url-input"),f=s("ingredients-model-selector"),I=s("consumption"),w=s("font-awesome-icon"),U=s("el-button");return a(),r("div",Ze,[l("div",xe,[t(p,{class:"mb-4"}),t(m,{class:"mb-4"}),t(n,{class:"mb-4"}),t(y,{class:"mb-4"}),e.config?.ingredients?(a(),V(_,{key:0,class:"mb-4"})):g("",!0),e.config?.ingredients?(a(),V(f,{key:1,class:"mb-4"})):g("",!0)]),l("div",et,[t(I,{value:e.consumption,service:e.service},null,8,["value","service"]),t(U,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[t(w,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+i(e.$t("pika.button.generate")),1)]),_:1},8,["onClick"])])])}const ot=k(Ye,[["render",tt]]),st=$({name:"VideoPlayer",components:{VuePlyr:ae},props:{modelValue:{type:Object,required:!0}},data(){return{options:{quality:{default:"1080p"}}}}}),at=["data-poster"],nt=["src"];function it(e,o,c,d,v,b){const p=s("vue-plyr");return a(),r("div",null,[t(p,{options:e.options,class:"video"},{default:u(()=>[l("video",{controls:"",crossorigin:"",playsinline:"","data-poster":e.modelValue?.image_url},[l("source",{size:"1080",src:e.modelValue?.video_url,type:"video/mp4"},null,8,nt)],8,at)]),_:1},8,["options"])])}const lt=k(st,[["render",it],["__scopeId","data-v-fc420430"]]),rt=$({name:"TaskPreview",components:{ElImage:le,CopyToClipboard:se,FontAwesomeIcon:P,ElAlert:ie,VideoPlayer:lt,ElTooltip:ne,ElButton:L},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.pika?.application},config(){return this.$store.state.pika?.config},videos(){let e=[];const o=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(c=>{let d=c;o&&(d.action=o),e.push(d)}),e}},methods:{onDownload(e){console.log("on download"),window.open(e,"_blank")},onReload(e){const o=e.target,c=new URL(o.src),d=c.searchParams.get("retry");if(!d)c.searchParams.set("retry","1");else if(parseInt(d)<2)c.searchParams.set("retry",(parseInt(d)+1).toString());else return;o.src=c.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),ct={class:"left"},pt={class:"main"},dt={class:"bot"},ut={class:"datetime"},mt={class:"info"},ft={key:0,class:"prompt mt-2"},_t={key:0},ht={key:1},gt={key:0,class:A({content:!0,failed:!0})},$t={class:"image-wrapper"},kt={key:0,class:A({operations:!0,"mt-2":!0})},vt={key:0,class:"description"},bt={class:"description"},yt={key:1,class:A({content:!0})},wt={class:"description"},Et={class:"description"},Vt={class:"description"},It={key:2,class:A({content:!0})},St={class:"description"};function Tt(e,o,c,d,v,b){const p=s("el-image"),m=s("VideoPlayer"),n=s("el-button"),y=s("el-tooltip"),_=s("font-awesome-icon"),f=s("copy-to-clipboard"),I=s("el-alert");return a(!0),r(S,null,T(e.videos,(w,U)=>(a(),r("div",{key:U,class:"preview"},[l("div",ct,[t(p,{src:"https://cdn.acedata.cloud/i80tgn.png",class:"avatar"})]),l("div",pt,[l("div",dt,[h(i(e.$t("pika.name.pikaBot"))+" ",1),l("span",ut,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",mt,[e.modelValue?.request?.prompt?(a(),r("p",ft,[h(i(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?g("",!0):(a(),r("span",_t," - ("+i(e.$t("pika.status.pending"))+") ",1)),w?.state==="processing"||w?.state==="pending"?(a(),r("span",ht," - ("+i(e.$t("pika.status.processing"))+") ",1)):g("",!0)])):g("",!0)]),e.modelValue?.response?.success===!0?(a(),r("div",gt,[l("div",$t,[t(m,{"model-value":w},null,8,["model-value"])]),w?(a(),r("div",kt,[t(y,{class:"box-item",effect:"dark",content:e.$t("pika.message.downloadVideo"),placement:"top-start"},{default:u(()=>[w?.video_url?(a(),V(n,{key:0,type:"info",size:"small",class:"btn-action",onClick:Ot=>e.onDownload(w?.video_url)},{default:u(()=>[h(i(e.$t("pika.button.download")),1)]),_:2},1032,["onClick"])):g("",!0)]),_:2},1032,["content"])])):g("",!0),t(I,{closable:!1,class:"mt-2 success"},{default:u(()=>[e.modelValue?.request?.model?(a(),r("p",vt,[t(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+i(e.$t("pika.name.model"))+": "+i(e.modelValue?.request?.model),1)])):g("",!0),l("p",bt,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(f,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0),e.modelValue?.response?.success===!1?(a(),r("div",yt,[t(I,{closable:!1,class:"failure"},{template:u(()=>[t(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+i(e.$t("pika.name.failure")),1)]),default:u(()=>[l("p",wt,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(f,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),l("p",Et,[t(_,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+i(e.$t("pika.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),t(f,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),l("p",Vt,[t(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+i(e.$t("pika.name.traceId"))+": "+i(e.modelValue?.response?.trace_id)+" ",1),t(f,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0),!e.modelValue?.response||w?.state==="processing"||w?.state==="pending"?(a(),r("div",It,[t(I,{closable:!1,class:"info"},{template:u(()=>[t(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+i(e.$t("pika.name.failure")),1)]),default:u(()=>[l("p",St,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(f,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0)])]))),128)}const Ct=k(rt,[["render",Tt],["__scopeId","data-v-df7eb728"]]),Pt=$({name:"RecentPanel",components:{TaskPreview:Ct,BotPlaceholder:re,NoTasks:ce,ScrollList:J},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.pika?.tasks,items:this.$store.state.pika?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Lt={key:0},At={key:2,class:"w-full h-full flex items-center justify-center"};function Ut(e,o,c,d,v,b){const p=s("bot-placeholder"),m=s("task-preview"),n=s("scroll-list"),y=s("no-tasks");return a(),r(S,null,[e.tasks?.items===void 0?(a(),r("div",Lt,[t(p)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),V(n,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:o[0]||(o[0]=_=>e.$emit("reach-top"))},{default:u(()=>[(a(!0),r(S,null,T(e.tasks?.items,(_,f)=>(a(),V(m,{key:f,"model-value":_},null,8,["model-value"]))),128))]),_:1},8,["loading"])):g("",!0),e.tasks?.items?.length===0?(a(),r("div",At,[t(y)])):g("",!0)],64)}const Rt=k(Pt,[["render",Ut]]),Dt="https://webhook.acedata.cloud/pika",Gt=$({name:"PikaIndex",components:{ConfigPanel:ot,Layout:he,RecentPanel:Rt},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.pika?.status?.getApplications===C.Request},tasksLoading(){return this.$store.state.pika?.status?.getTasks===C.Request||this.fetchingTasks},service(){return this.$store.state.pika.service},credential(){return this.$store.state.pika.credential},config(){return this.$store.state.pika.config},initializing(){return this.$store.state.pika.status.getApplications===C.Request},needApply(){return this.$store.state.pika.status.getApplications===C.Success&&!this.application},application(){return this.$store.state.pika.application},applications(){return this.$store.state.pika.applications},tasks(){return this.$store.state.pika.tasks}},watch:{tasks:{handler(e,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("pika/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("pika/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){K.create({application:this.application}).then(({data:e})=>{this.application=e,E.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===H&&E.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:o=5,createdAtMin:c,createdAtMax:d}=e||{};console.debug("limit",o,"createdAtMin",c,"createdAtMax",d),this.fetchingTasks=!0;try{await this.$store.dispatch("pika/getTasks",{limit:o,createdAtMin:c,createdAtMax:d})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Dt},o=this.credential?.token;if(!o){console.error("no token specified");return}E.info(this.$t("pika.message.startingTask")),z.generate(e,{token:o}).then(()=>{E.success(this.$t("pika.message.startTaskSuccess")),this.$store.commit("pika/setConfig",{config:void 0})}).catch(c=>{c?.response?.data?.error?.code===F?E.error(this.$t("pika.message.usedUp")):E.error(this.$t("pika.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Mt(e,o,c,d,v,b){const p=s("config-panel"),m=s("recent-panel"),n=s("layout");return a(),V(n,null,{config:u(()=>[t(p,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:u(()=>[t(m,{ref:"recentPanel",class:"panel recent",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Lo=k(Gt,[["render",Mt],["__scopeId","data-v-456819d1"]]);export{Lo as default};
@@ -1 +1 @@
1
- import{F as L}from"./index.es-E1XclKiE.js";import{E as C}from"./index-Sb9EXCnM.js";import{E as N}from"./index-V3lWWGOd.js";import{d as b,I as i,E as r,y as o,B as U,x as u,z as s,A as n,F as l,O as E,N as A,q as y,P as I,Q as q,K as h,J as $,G as K,L as W}from"./vendor-vue-DT_1TMfY.js";import{m as k,dV as G,dW as z,dX as S,dY as M,dZ as Z,d_ as Q,d$ as Y,e0 as H,aC as J,e1 as X,e2 as x,bQ as ee,aE as P}from"./index-COyhwUb4.js";import{E as D,a as R}from"./index-CUujnUBa.js";import{p as te}from"./pasteUploadMixin-BurWbGNQ.js";import{I as B,S as oe}from"./ScrollList-BvJlbkuP.js";import{I as se}from"./ImagePreview-Dok-mWnh.js";import{E as ae}from"./index-S4Wb9X3V.js";import{E as T}from"./index-C4BBh2qy.js";import{C as ne}from"./Consumption-CyJkpzDZ.js";import{E as le}from"./index-fPdYGXMp.js";import{a as re}from"./price-CGsOFrju.js";import{C as ie}from"./CopyToClipboard-9qCYDiH6.js";import{V as ce}from"./VideoPlayer-BGEYAPlk.js";import{E as de}from"./index-jWTVpvs-.js";import{E as ue}from"./index-_Z0ASBe6.js";import{E as pe}from"./index-D9CotYVj.js";import{B as me}from"./BotPlaceholder-Bo9dgZvP.js";import{N as fe}from"./NoTasks-CJsE40jB.js";import{l as _e}from"./pagination-B2Jzxk4_.js";import"./use-form-item-Cp52yInw.js";import"./index-r5W6hzzQ.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-dayjs-D7e3rSuL.js";import"./vendor-vue-router-BdJrTa0V.js";import"./index-ClGimrvP.js";import"./typescript-qp-NtKm7.js";import"./index-DTeH_Prb.js";import"./strings-BT-SZrAZ.js";import"./castArray-BxXcA5jl.js";import"./isEqual-BCC4XmQc.js";import"./_Uint8Array-9dmsQrsP.js";import"./debounce-DI9xWcc4.js";import"./_baseIteratee-BevRfjTA.js";import"./index-BDn7cXWD.js";import"./index-CHzMY7YM.js";import"./_baseClone-DvV9-v-c.js";import"./_initCloneObject-DAG7nN4w.js";import"./index-DLAIpdWC.js";import"./vue-plyr-QZFBikSk.js";import"./index-BGPS6JZN.js";const he=b({name:"LayoutSora",components:{ElDrawer:N,ElButton:C,FontAwesomeIcon:L},data(){return{drawer:!1}}}),$e={class:"main flex flex-row flex-1"},ge={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 be(e,t,p,m,g,v){const c=s("font-awesome-icon"),d=s("el-button"),a=s("el-drawer");return n(),i("div",$e,[r("div",ge,[U(e.$slots,"config",{},void 0,!0)]),r("div",ve,[U(e.$slots,"result",{},void 0,!0)]),o(d,{circle:"",class:"menu",onClick:t[0]||(t[0]=w=>e.drawer=!0)},{default:u(()=>[o(c,{icon:"fa-solid fa-magic"})]),_:1}),o(a,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=w=>e.drawer=w),direction:"ltr","with-header":!1,size:"350px"},{default:u(()=>[U(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ke=k(he,[["render",be],["__scopeId","data-v-2dca3c13"]]),we=b({name:"ModelSelector",components:{ElSelect:R,ElOption:D},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:Z,label:"sora-2"},{value:Q,label:"sora-2-pro"}]}},computed:{value:{get(){return this.$store.state.sora?.config?.model},set(e){const t=this.$store.state.sora?.config||{},p=z[e]||[S],m=t.duration,g=m&&p.includes(m)?m:p.includes(S)?S:p[0],v={...t,model:e,duration:g,size:t.size||M};this.$store.commit("sora/setConfig",v)}}},mounted(){this.value||(this.value=G)}}),ye={class:"field"},Se={class:"title font-bold"};function Ee(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return n(),i("div",ye,[r("h2",Se,l(e.$t("sora.name.model")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=a=>e.value=a),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(n(!0),i(E,null,A(e.options,a=>(n(),y(c,{key:a.value,label:a.label,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ve=k(we,[["render",Ee],["__scopeId","data-v-0cb7913d"]]),Te=b({name:"ActionSelector",components:{ElSelect:R,ElOption:D},data(){return{}},computed:{options(){return[{value:"text2video",label:this.$t("sora.button.action1")},{value:"image2video",label:this.$t("sora.button.action2")}]},value:{get(){return this.$store.state.sora?.config?.action},set(e){this.$store.commit("sora/setConfig",{...this.$store.state.sora?.config,action:e})}}},mounted(){this.value||(this.value=Y)}}),Ie={class:"field"},Ae={class:"title font-bold"},Le={class:"float-left"};function Ce(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return n(),i("div",Ie,[r("h2",Ae,l(e.$t("sora.name.action")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=a=>e.value=a),class:"value",placeholder:e.$t("sora.placeholder.select"),clearable:""},{default:u(()=>[(n(!0),i(E,null,A(e.options,a=>(n(),y(c,{key:a.value,label:a.label,value:a.value},{default:u(()=>[r("span",Le,l(a.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const De=k(Te,[["render",Ce],["__scopeId","data-v-7b82fa7f"]]),Re=b({name:"DurationSelector",components:{ElSelect:R,ElOption:D},computed:{model(){return this.$store.state.sora?.config?.model||G},allowedDurations(){return z[this.model]||[S]},optionsForModel(){return this.allowedDurations.map(e=>({value:e,label:`${e}s`}))},value:{get(){return this.$store.state.sora?.config?.duration},set(e){const t=this.$store.state.sora?.config||{};this.$store.commit("sora/setConfig",{...t,duration:e})}}},watch:{allowedDurations(){const e=this.allowedDurations;if(!e.includes(this.value)){const t=e.includes(S)?S:e[0];this.value=t}}},mounted(){this.value||(this.value=S)}}),Oe={class:"field"},Ue={class:"control"},Pe={class:"title font-bold"};function Ge(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return n(),i("div",Oe,[r("div",Ue,[r("h2",Pe,l(e.$t("sora.name.duration")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=a=>e.value=a),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(n(!0),i(E,null,A(e.optionsForModel,a=>(n(),y(c,{key:a.value,label:a.label,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])])}const ze=k(Re,[["render",Ge],["__scopeId","data-v-c2934598"]]),Me=b({name:"OrientationSelector",data(){return{options:[{value:"portrait",labelKey:"sora.option.portrait",width:13,height:25},{value:"landscape",labelKey:"sora.option.landscape",width:25,height:13}]}},computed:{active(){const e=this.options.findIndex(t=>t.value===this.value);return e>=0?e:0},value:{get(){return this.$store.state.sora?.config?.orientation},set(e){console.debug("set orientation",e),this.$store.commit("sora/setConfig",{...this.$store.state?.sora?.config,orientation:e})}}},mounted(){this.value||(this.value=H)}}),Be={class:"text-sm font-bold mb-2 block"},Fe={class:"items"},je=["onClick"],Ne={class:"name"};function qe(e,t,p,m,g,v){return n(),i("div",null,[r("span",Be,l(e.$t("sora.name.orientation")),1),r("div",Fe,[(n(!0),i(E,null,A(e.options,(c,d)=>(n(),i("div",{key:d,class:I({active:e.active===d,item:!0}),onClick:a=>e.value=c.value},[r("div",{class:I(["preview",c.value])},[r("div",{class:"rect",style:q({width:c.width+"px",height:c.height+"px"})},null,4)],2),r("p",Ne,l(e.$t(c.labelKey)),1)],10,je))),128))])])}const Ke=k(Me,[["render",qe],["__scopeId","data-v-a20be6d9"]]),We=b({name:"StartEndImage",components:{ElUpload:ae,ElButton:C,InfoIcon:B,FontAwesomeIcon:L,ImagePreview:se},mixins:[te],emits:["change"],data(){return{fileList:[],uploadUrl:J()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.sora?.config?.image_urls},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartEndImageUrl()},methods:{onExceed(){T.warning(this.$t("sora.message.uploadReferencesExceed"))},onError(){T.error(this.$t("sora.message.uploadReferencesError"))},onSetStartEndImageUrl(){const e=this.urls;this.$store.commit("sora/setConfig",{...this.$store.state?.sora?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),Ze={class:"relative"},Qe={class:"flex justify-between"},Ye={class:"flex justify-start items-center"},He={class:"text-sm font-bold"};function Je(e,t,p,m,g,v){const c=s("info-icon"),d=s("image-preview"),a=s("font-awesome-icon"),w=s("el-button"),_=s("el-upload");return n(),i("div",Ze,[r("div",Qe,[r("div",Ye,[r("span",He,l(e.$t("sora.name.startEndImage")),1),o(c,{content:e.$t("sora.description.uploadStartEndImage")},null,8,["content"])])]),o(_,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=f=>e.fileList=f),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:u(({file:f})=>[f.url&&f.percentage!==void 0?(n(),y(d,{key:0,url:f.url,name:f.name,percentage:f.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(f),1)},null,8,["url","name","percentage","onRemove"])):$("",!0)]),default:u(()=>[o(w,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:u(()=>[o(a,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+l(e.$t("sora.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const Xe=k(We,[["render",Je],["__scopeId","data-v-a942382b"]]),xe=e=>e&&e.charAt(0).toUpperCase()+e.slice(1),et=b({name:"SizeSelector",components:{ElSelect:R,ElOption:D},data(){return{options:X.map(e=>({value:e,label:xe(e)}))}},computed:{value:{get(){return this.$store.state.sora?.config?.size},set(e){const t=this.$store.state.sora?.config||{};this.$store.commit("sora/setConfig",{...t,size:e})}}},mounted(){this.value||(this.value=M)}}),tt={class:"field"},ot={class:"control"},st={class:"title font-bold"};function at(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return n(),i("div",tt,[r("div",ot,[r("h2",st,l(e.$t("sora.name.size")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=a=>e.value=a),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(n(!0),i(E,null,A(e.options,a=>(n(),y(c,{key:a.value,label:a.label,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])])}const nt=k(et,[["render",at],["__scopeId","data-v-8c485f0f"]]),lt="",rt=b({name:"PromptInput",components:{ElInput:le,InfoIcon:B},computed:{prompt:{get(){return this.$store.state.sora?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("sora/setConfig",{...this.$store.state.sora?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=lt)}}),it={class:"field"},ct={class:"box"},dt={class:"title font-bold"};function ut(e,t,p,m,g,v){const c=s("info-icon"),d=s("el-input");return n(),i("div",it,[r("div",ct,[r("h2",dt,l(e.$t("sora.name.prompt")),1),o(c,{content:e.$t("sora.description.prompt"),class:"info"},null,8,["content"])]),o(d,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=a=>e.prompt=a),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("sora.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const pt=k(rt,[["render",ut],["__scopeId","data-v-a57633d5"]]),mt=b({name:"ConfigPanel",components:{ElButton:C,Consumption:ne,FontAwesomeIcon:L,PromptInput:pt,ModelSelector:Ve,StartEndImage:Xe,SizeSelector:nt,ActionSelector:De,OrientationSelector:Ke,DurationSelector:ze},emits:["generate"],computed:{config(){return this.$store.state.sora?.config},consumption(){return re(this.config,this.service?.cost)},service(){return this.$store.state.sora?.service}},methods:{onGenerate(){this.$emit("generate")}}}),ft={class:"flex flex-col h-full"},_t={class:"flex-1 overflow-y-auto p-5"},ht={class:"flex flex-col items-center justify-center px-5 pb-5"};function $t(e,t,p,m,g,v){const c=s("model-selector"),d=s("action-selector"),a=s("duration-selector"),w=s("size-selector"),_=s("orientation-selector"),f=s("prompt-input"),V=s("start-end-image"),O=s("consumption"),F=s("font-awesome-icon"),j=s("el-button");return n(),i("div",ft,[r("div",_t,[o(c,{class:"mb-4"}),o(d,{class:"mb-4"}),o(a,{class:"mb-4"}),o(w,{class:"mb-4"}),o(_,{class:"mb-4"}),o(f,{class:"mb-4"}),K(o(V,{class:"mb-2"},null,512),[[W,e.config?.action==="image2video"]])]),r("div",ht,[o(O,{value:e.consumption,service:e.service},null,8,["value","service"]),o(j,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[o(F,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+l(e.$t("sora.button.generate")),1)]),_:1},8,["onClick"])])])}const gt=k(mt,[["render",$t]]),vt=b({name:"TaskPreview",components:{ElImage:pe,CopyToClipboard:ie,FontAwesomeIcon:L,ElAlert:ue,VideoPlayer:ce,ElTooltip:de,ElButton:C},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.sora?.application},config(){return this.$store.state.sora?.config}},methods:{onDownload(e,t){e.stopPropagation(),console.log("on download"),window.open(t,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),bt={class:"preview"},kt={class:"left"},wt={class:"main"},yt={class:"bot"},St={class:"datetime"},Et={class:"info"},Vt={key:0,class:"prompt mt-2"},Tt={key:0},It={key:1},At={key:0,class:I({content:!0,failed:!0})},Lt={key:0,class:"mb-4"},Ct={key:1,class:I({operations:!0,"mt-2":!0})},Dt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Rt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ot={key:1,class:I({content:!0})},Ut={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Pt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},zt={key:2,class:I({content:!0})},Mt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Ft(e,t,p,m,g,v){const c=s("el-image"),d=s("video-player"),a=s("el-button"),w=s("el-tooltip"),_=s("font-awesome-icon"),f=s("copy-to-clipboard"),V=s("el-alert");return n(),i("div",bt,[r("div",kt,[o(c,{src:"https://cdn.acedata.cloud/z5id1u.png",class:"avatar"})]),r("div",wt,[r("div",yt,[h(l(e.$t("sora.name.soraBot"))+" ",1),r("span",St,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Et,[e.modelValue?.request?.prompt?(n(),i("p",Vt,[h(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?$("",!0):(n(),i("span",Tt," - ("+l(e.$t("sora.status.pending"))+") ",1)),Array.isArray(e.modelValue?.response?.data)&&e.modelValue?.response?.data[0]?.state==="pending"?(n(),i("span",It," - ("+l(e.$t("sora.status.processing"))+") ",1)):$("",!0)])):$("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(n(),i("div",At,[e.modelValue?.response?.data[0]?.video_url?(n(),i("div",Lt,[o(d,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):$("",!0),e.modelValue?.response.success?(n(),i("div",Ct,[o(w,{class:"box-item",effect:"dark",content:e.$t("sora.message.downloadVideo"),placement:"top-start"},{default:u(()=>[e.modelValue?.response?.data[0]?.video_url?(n(),y(a,{key:0,type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=O=>e.onDownload(O,e.modelValue?.response?.data[0]?.video_url))},{default:u(()=>[h(l(e.$t("sora.button.download")),1)]),_:1})):$("",!0)]),_:1},8,["content"])])):$("",!0),o(V,{closable:!1,class:"mt-2 success"},{default:u(()=>[r("p",Dt,[o(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+l(e.$t("sora.name.model"))+": "+l(e.modelValue?.request?.model),1)]),r("p",Rt,[o(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+l(e.$t("sora.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),o(f,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(n(),i("div",Ot,[o(V,{closable:!1,class:"failure"},{template:u(()=>[o(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+l(e.$t("sora.name.failure")),1)]),default:u(()=>[r("p",Ut,[o(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+l(e.$t("sora.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),o(f,{content:e.modelValue?.id},null,8,["content"])]),r("p",Pt,[o(_,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+l(e.$t("sora.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),o(f,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),i("p",Gt,[o(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+l(e.$t("sora.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),o(f,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):$("",!0)]),_:1})])):$("",!0),e.modelValue?.response?.success===void 0?(n(),i("div",zt,[o(V,{closable:!1,class:"info"},{template:u(()=>[o(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+l(e.$t("sora.name.failure")),1)]),default:u(()=>[r("p",Mt,[o(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+l(e.$t("sora.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),o(f,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),i("p",Bt,[o(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+l(e.$t("sora.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),o(f,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):$("",!0)]),_:1})])):$("",!0)])])}const jt=k(vt,[["render",Ft],["__scopeId","data-v-7b468b7a"]]),Nt=b({name:"RecentPanel",components:{TaskPreview:jt,NoTasks:fe,BotPlaceholder:me,ScrollList:oe},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.sora?.tasks,items:this.$store.state.sora?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),qt={key:0},Kt={key:2,class:"w-full h-full flex items-center justify-center"};function Wt(e,t,p,m,g,v){const c=s("bot-placeholder"),d=s("task-preview"),a=s("scroll-list"),w=s("no-tasks");return n(),i(E,null,[e.tasks?.items===void 0?(n(),i("div",qt,[o(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),y(a,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=_=>e.$emit("reach-top"))},{default:u(()=>[(n(!0),i(E,null,A(e.tasks?.items,(_,f)=>(n(),y(d,{key:f,"model-value":_},null,8,["model-value"]))),128))]),_:1},8,["loading"])):$("",!0),e.tasks?.items?.length===0?(n(),i("div",Kt,[o(w)])):$("",!0)],64)}const Zt=k(Nt,[["render",Wt]]),Qt="https://webhook.acedata.cloud/sora",Yt=b({name:"SoraIndex",components:{ConfigPanel:gt,Layout:ke,RecentPanel:Zt},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.sora?.status?.getApplications===P.Request},tasksLoading(){return this.$store.state.sora?.status?.getTasks===P.Request||this.fetchingTasks},credential(){return this.$store.state.sora.credential},config(){return this.$store.state.sora.config},tasks(){return this.$store.state.sora.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await _e({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("sora/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("sora/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();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:p,createdAtMax:m}=e||{};console.debug("limit",t,"createdAtMin",p,"createdAtMax",m),this.fetchingTasks=!0;try{await this.$store.dispatch("sora/getTasks",{limit:t,createdAtMin:p,createdAtMax:m})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Qt},t=this.credential?.token;if(!t){console.error("no token specified");return}T.info(this.$t("sora.message.startingTask")),x.generate(e,{token:t}).then(()=>{T.success(this.$t("sora.message.startTaskSuccess"))}).catch(p=>{p?.response?.data?.error?.code===ee?T.error(this.$t("sora.message.usedUp")):T.error(this.$t("sora.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Ht(e,t,p,m,g,v){const c=s("config-panel"),d=s("recent-panel"),a=s("layout");return n(),y(a,null,{config:u(()=>[o(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:u(()=>[o(d,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Fo=k(Yt,[["render",Ht]]);export{Fo as default};
1
+ import{F as L}from"./index.es-DvlYcEm8.js";import{E as C}from"./index-B68ZhoIT.js";import{E as N}from"./index-Cs_p5eWu.js";import{d as b,I as i,E as r,y as o,B as U,x as u,z as s,A as n,F as l,O as E,N as A,q as y,P as I,Q as q,K as h,J as $,G as K,L as W}from"./vendor-vue-DT_1TMfY.js";import{m as k,dV as G,dW as z,dX as S,dY as M,dZ as Z,d_ as Q,d$ as Y,e0 as H,aC as J,e1 as X,e2 as x,bQ as ee,aE as P}from"./index-CyFiNoMU.js";import{E as D,a as R}from"./index-CNj1v0HL.js";import{p as te}from"./pasteUploadMixin-BurWbGNQ.js";import{I as B,S as oe}from"./ScrollList-Bg9XoeXr.js";import{I as se}from"./ImagePreview-DiG8EmAe.js";import{E as ae}from"./index-CugtBXlr.js";import{E as T}from"./index-WHv9HyZz.js";import{C as ne}from"./Consumption-DwyEh2id.js";import{E as le}from"./index-Cs1CUMcB.js";import{a as re}from"./price-Z3WJjRpi.js";import{C as ie}from"./CopyToClipboard-6pnI9uu0.js";import{V as ce}from"./VideoPlayer-CvDqvGIC.js";import{E as de}from"./index-fsa4SQ7X.js";import{E as ue}from"./index-1IMFPB3G.js";import{E as pe}from"./index-CFADpY6u.js";import{B as me}from"./BotPlaceholder-BfJyCZe5.js";import{N as fe}from"./NoTasks-Dh1ZLJoo.js";import{l as _e}from"./pagination-B2Jzxk4_.js";import"./use-form-item-D3JefaBi.js";import"./index-r5W6hzzQ.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-dayjs-D7e3rSuL.js";import"./vendor-vue-router-BdJrTa0V.js";import"./index-qF1dBsuF.js";import"./typescript-8DTRp7mg.js";import"./index-CEY2FBzQ.js";import"./strings-BT-SZrAZ.js";import"./castArray-mR3ylEMC.js";import"./isEqual-B2AS9zF7.js";import"./_Uint8Array-Bje2NAqX.js";import"./debounce-ow11MzZE.js";import"./_baseIteratee-CRIhlIS7.js";import"./index-B3PLeRwV.js";import"./index-BoVrtEmb.js";import"./_baseClone-BvSIk2Dq.js";import"./_initCloneObject-BDx_mvcr.js";import"./index-C7iQbpiR.js";import"./vue-plyr-QZFBikSk.js";import"./index-4moLlQhW.js";const he=b({name:"LayoutSora",components:{ElDrawer:N,ElButton:C,FontAwesomeIcon:L},data(){return{drawer:!1}}}),$e={class:"main flex flex-row flex-1"},ge={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 be(e,t,p,m,g,v){const c=s("font-awesome-icon"),d=s("el-button"),a=s("el-drawer");return n(),i("div",$e,[r("div",ge,[U(e.$slots,"config",{},void 0,!0)]),r("div",ve,[U(e.$slots,"result",{},void 0,!0)]),o(d,{circle:"",class:"menu",onClick:t[0]||(t[0]=w=>e.drawer=!0)},{default:u(()=>[o(c,{icon:"fa-solid fa-magic"})]),_:1}),o(a,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=w=>e.drawer=w),direction:"ltr","with-header":!1,size:"350px"},{default:u(()=>[U(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ke=k(he,[["render",be],["__scopeId","data-v-2dca3c13"]]),we=b({name:"ModelSelector",components:{ElSelect:R,ElOption:D},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:Z,label:"sora-2"},{value:Q,label:"sora-2-pro"}]}},computed:{value:{get(){return this.$store.state.sora?.config?.model},set(e){const t=this.$store.state.sora?.config||{},p=z[e]||[S],m=t.duration,g=m&&p.includes(m)?m:p.includes(S)?S:p[0],v={...t,model:e,duration:g,size:t.size||M};this.$store.commit("sora/setConfig",v)}}},mounted(){this.value||(this.value=G)}}),ye={class:"field"},Se={class:"title font-bold"};function Ee(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return n(),i("div",ye,[r("h2",Se,l(e.$t("sora.name.model")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=a=>e.value=a),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(n(!0),i(E,null,A(e.options,a=>(n(),y(c,{key:a.value,label:a.label,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ve=k(we,[["render",Ee],["__scopeId","data-v-0cb7913d"]]),Te=b({name:"ActionSelector",components:{ElSelect:R,ElOption:D},data(){return{}},computed:{options(){return[{value:"text2video",label:this.$t("sora.button.action1")},{value:"image2video",label:this.$t("sora.button.action2")}]},value:{get(){return this.$store.state.sora?.config?.action},set(e){this.$store.commit("sora/setConfig",{...this.$store.state.sora?.config,action:e})}}},mounted(){this.value||(this.value=Y)}}),Ie={class:"field"},Ae={class:"title font-bold"},Le={class:"float-left"};function Ce(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return n(),i("div",Ie,[r("h2",Ae,l(e.$t("sora.name.action")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=a=>e.value=a),class:"value",placeholder:e.$t("sora.placeholder.select"),clearable:""},{default:u(()=>[(n(!0),i(E,null,A(e.options,a=>(n(),y(c,{key:a.value,label:a.label,value:a.value},{default:u(()=>[r("span",Le,l(a.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const De=k(Te,[["render",Ce],["__scopeId","data-v-7b82fa7f"]]),Re=b({name:"DurationSelector",components:{ElSelect:R,ElOption:D},computed:{model(){return this.$store.state.sora?.config?.model||G},allowedDurations(){return z[this.model]||[S]},optionsForModel(){return this.allowedDurations.map(e=>({value:e,label:`${e}s`}))},value:{get(){return this.$store.state.sora?.config?.duration},set(e){const t=this.$store.state.sora?.config||{};this.$store.commit("sora/setConfig",{...t,duration:e})}}},watch:{allowedDurations(){const e=this.allowedDurations;if(!e.includes(this.value)){const t=e.includes(S)?S:e[0];this.value=t}}},mounted(){this.value||(this.value=S)}}),Oe={class:"field"},Ue={class:"control"},Pe={class:"title font-bold"};function Ge(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return n(),i("div",Oe,[r("div",Ue,[r("h2",Pe,l(e.$t("sora.name.duration")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=a=>e.value=a),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(n(!0),i(E,null,A(e.optionsForModel,a=>(n(),y(c,{key:a.value,label:a.label,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])])}const ze=k(Re,[["render",Ge],["__scopeId","data-v-c2934598"]]),Me=b({name:"OrientationSelector",data(){return{options:[{value:"portrait",labelKey:"sora.option.portrait",width:13,height:25},{value:"landscape",labelKey:"sora.option.landscape",width:25,height:13}]}},computed:{active(){const e=this.options.findIndex(t=>t.value===this.value);return e>=0?e:0},value:{get(){return this.$store.state.sora?.config?.orientation},set(e){console.debug("set orientation",e),this.$store.commit("sora/setConfig",{...this.$store.state?.sora?.config,orientation:e})}}},mounted(){this.value||(this.value=H)}}),Be={class:"text-sm font-bold mb-2 block"},Fe={class:"items"},je=["onClick"],Ne={class:"name"};function qe(e,t,p,m,g,v){return n(),i("div",null,[r("span",Be,l(e.$t("sora.name.orientation")),1),r("div",Fe,[(n(!0),i(E,null,A(e.options,(c,d)=>(n(),i("div",{key:d,class:I({active:e.active===d,item:!0}),onClick:a=>e.value=c.value},[r("div",{class:I(["preview",c.value])},[r("div",{class:"rect",style:q({width:c.width+"px",height:c.height+"px"})},null,4)],2),r("p",Ne,l(e.$t(c.labelKey)),1)],10,je))),128))])])}const Ke=k(Me,[["render",qe],["__scopeId","data-v-a20be6d9"]]),We=b({name:"StartEndImage",components:{ElUpload:ae,ElButton:C,InfoIcon:B,FontAwesomeIcon:L,ImagePreview:se},mixins:[te],emits:["change"],data(){return{fileList:[],uploadUrl:J()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.sora?.config?.image_urls},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartEndImageUrl()},methods:{onExceed(){T.warning(this.$t("sora.message.uploadReferencesExceed"))},onError(){T.error(this.$t("sora.message.uploadReferencesError"))},onSetStartEndImageUrl(){const e=this.urls;this.$store.commit("sora/setConfig",{...this.$store.state?.sora?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),Ze={class:"relative"},Qe={class:"flex justify-between"},Ye={class:"flex justify-start items-center"},He={class:"text-sm font-bold"};function Je(e,t,p,m,g,v){const c=s("info-icon"),d=s("image-preview"),a=s("font-awesome-icon"),w=s("el-button"),_=s("el-upload");return n(),i("div",Ze,[r("div",Qe,[r("div",Ye,[r("span",He,l(e.$t("sora.name.startEndImage")),1),o(c,{content:e.$t("sora.description.uploadStartEndImage")},null,8,["content"])])]),o(_,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=f=>e.fileList=f),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:u(({file:f})=>[f.url&&f.percentage!==void 0?(n(),y(d,{key:0,url:f.url,name:f.name,percentage:f.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(f),1)},null,8,["url","name","percentage","onRemove"])):$("",!0)]),default:u(()=>[o(w,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:u(()=>[o(a,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+l(e.$t("sora.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const Xe=k(We,[["render",Je],["__scopeId","data-v-a942382b"]]),xe=e=>e&&e.charAt(0).toUpperCase()+e.slice(1),et=b({name:"SizeSelector",components:{ElSelect:R,ElOption:D},data(){return{options:X.map(e=>({value:e,label:xe(e)}))}},computed:{value:{get(){return this.$store.state.sora?.config?.size},set(e){const t=this.$store.state.sora?.config||{};this.$store.commit("sora/setConfig",{...t,size:e})}}},mounted(){this.value||(this.value=M)}}),tt={class:"field"},ot={class:"control"},st={class:"title font-bold"};function at(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return n(),i("div",tt,[r("div",ot,[r("h2",st,l(e.$t("sora.name.size")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=a=>e.value=a),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(n(!0),i(E,null,A(e.options,a=>(n(),y(c,{key:a.value,label:a.label,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])])}const nt=k(et,[["render",at],["__scopeId","data-v-8c485f0f"]]),lt="",rt=b({name:"PromptInput",components:{ElInput:le,InfoIcon:B},computed:{prompt:{get(){return this.$store.state.sora?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("sora/setConfig",{...this.$store.state.sora?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=lt)}}),it={class:"field"},ct={class:"box"},dt={class:"title font-bold"};function ut(e,t,p,m,g,v){const c=s("info-icon"),d=s("el-input");return n(),i("div",it,[r("div",ct,[r("h2",dt,l(e.$t("sora.name.prompt")),1),o(c,{content:e.$t("sora.description.prompt"),class:"info"},null,8,["content"])]),o(d,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=a=>e.prompt=a),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("sora.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const pt=k(rt,[["render",ut],["__scopeId","data-v-a57633d5"]]),mt=b({name:"ConfigPanel",components:{ElButton:C,Consumption:ne,FontAwesomeIcon:L,PromptInput:pt,ModelSelector:Ve,StartEndImage:Xe,SizeSelector:nt,ActionSelector:De,OrientationSelector:Ke,DurationSelector:ze},emits:["generate"],computed:{config(){return this.$store.state.sora?.config},consumption(){return re(this.config,this.service?.cost)},service(){return this.$store.state.sora?.service}},methods:{onGenerate(){this.$emit("generate")}}}),ft={class:"flex flex-col h-full"},_t={class:"flex-1 overflow-y-auto p-5"},ht={class:"flex flex-col items-center justify-center px-5 pb-5"};function $t(e,t,p,m,g,v){const c=s("model-selector"),d=s("action-selector"),a=s("duration-selector"),w=s("size-selector"),_=s("orientation-selector"),f=s("prompt-input"),V=s("start-end-image"),O=s("consumption"),F=s("font-awesome-icon"),j=s("el-button");return n(),i("div",ft,[r("div",_t,[o(c,{class:"mb-4"}),o(d,{class:"mb-4"}),o(a,{class:"mb-4"}),o(w,{class:"mb-4"}),o(_,{class:"mb-4"}),o(f,{class:"mb-4"}),K(o(V,{class:"mb-2"},null,512),[[W,e.config?.action==="image2video"]])]),r("div",ht,[o(O,{value:e.consumption,service:e.service},null,8,["value","service"]),o(j,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[o(F,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+l(e.$t("sora.button.generate")),1)]),_:1},8,["onClick"])])])}const gt=k(mt,[["render",$t]]),vt=b({name:"TaskPreview",components:{ElImage:pe,CopyToClipboard:ie,FontAwesomeIcon:L,ElAlert:ue,VideoPlayer:ce,ElTooltip:de,ElButton:C},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.sora?.application},config(){return this.$store.state.sora?.config}},methods:{onDownload(e,t){e.stopPropagation(),console.log("on download"),window.open(t,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),bt={class:"preview"},kt={class:"left"},wt={class:"main"},yt={class:"bot"},St={class:"datetime"},Et={class:"info"},Vt={key:0,class:"prompt mt-2"},Tt={key:0},It={key:1},At={key:0,class:I({content:!0,failed:!0})},Lt={key:0,class:"mb-4"},Ct={key:1,class:I({operations:!0,"mt-2":!0})},Dt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Rt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ot={key:1,class:I({content:!0})},Ut={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Pt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},zt={key:2,class:I({content:!0})},Mt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Ft(e,t,p,m,g,v){const c=s("el-image"),d=s("video-player"),a=s("el-button"),w=s("el-tooltip"),_=s("font-awesome-icon"),f=s("copy-to-clipboard"),V=s("el-alert");return n(),i("div",bt,[r("div",kt,[o(c,{src:"https://cdn.acedata.cloud/z5id1u.png",class:"avatar"})]),r("div",wt,[r("div",yt,[h(l(e.$t("sora.name.soraBot"))+" ",1),r("span",St,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Et,[e.modelValue?.request?.prompt?(n(),i("p",Vt,[h(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?$("",!0):(n(),i("span",Tt," - ("+l(e.$t("sora.status.pending"))+") ",1)),Array.isArray(e.modelValue?.response?.data)&&e.modelValue?.response?.data[0]?.state==="pending"?(n(),i("span",It," - ("+l(e.$t("sora.status.processing"))+") ",1)):$("",!0)])):$("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(n(),i("div",At,[e.modelValue?.response?.data[0]?.video_url?(n(),i("div",Lt,[o(d,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):$("",!0),e.modelValue?.response.success?(n(),i("div",Ct,[o(w,{class:"box-item",effect:"dark",content:e.$t("sora.message.downloadVideo"),placement:"top-start"},{default:u(()=>[e.modelValue?.response?.data[0]?.video_url?(n(),y(a,{key:0,type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=O=>e.onDownload(O,e.modelValue?.response?.data[0]?.video_url))},{default:u(()=>[h(l(e.$t("sora.button.download")),1)]),_:1})):$("",!0)]),_:1},8,["content"])])):$("",!0),o(V,{closable:!1,class:"mt-2 success"},{default:u(()=>[r("p",Dt,[o(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+l(e.$t("sora.name.model"))+": "+l(e.modelValue?.request?.model),1)]),r("p",Rt,[o(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+l(e.$t("sora.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),o(f,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(n(),i("div",Ot,[o(V,{closable:!1,class:"failure"},{template:u(()=>[o(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+l(e.$t("sora.name.failure")),1)]),default:u(()=>[r("p",Ut,[o(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+l(e.$t("sora.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),o(f,{content:e.modelValue?.id},null,8,["content"])]),r("p",Pt,[o(_,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+l(e.$t("sora.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),o(f,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),i("p",Gt,[o(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+l(e.$t("sora.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),o(f,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):$("",!0)]),_:1})])):$("",!0),e.modelValue?.response?.success===void 0?(n(),i("div",zt,[o(V,{closable:!1,class:"info"},{template:u(()=>[o(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+l(e.$t("sora.name.failure")),1)]),default:u(()=>[r("p",Mt,[o(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+l(e.$t("sora.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),o(f,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),i("p",Bt,[o(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+l(e.$t("sora.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),o(f,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):$("",!0)]),_:1})])):$("",!0)])])}const jt=k(vt,[["render",Ft],["__scopeId","data-v-7b468b7a"]]),Nt=b({name:"RecentPanel",components:{TaskPreview:jt,NoTasks:fe,BotPlaceholder:me,ScrollList:oe},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.sora?.tasks,items:this.$store.state.sora?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),qt={key:0},Kt={key:2,class:"w-full h-full flex items-center justify-center"};function Wt(e,t,p,m,g,v){const c=s("bot-placeholder"),d=s("task-preview"),a=s("scroll-list"),w=s("no-tasks");return n(),i(E,null,[e.tasks?.items===void 0?(n(),i("div",qt,[o(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),y(a,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=_=>e.$emit("reach-top"))},{default:u(()=>[(n(!0),i(E,null,A(e.tasks?.items,(_,f)=>(n(),y(d,{key:f,"model-value":_},null,8,["model-value"]))),128))]),_:1},8,["loading"])):$("",!0),e.tasks?.items?.length===0?(n(),i("div",Kt,[o(w)])):$("",!0)],64)}const Zt=k(Nt,[["render",Wt]]),Qt="https://webhook.acedata.cloud/sora",Yt=b({name:"SoraIndex",components:{ConfigPanel:gt,Layout:ke,RecentPanel:Zt},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.sora?.status?.getApplications===P.Request},tasksLoading(){return this.$store.state.sora?.status?.getTasks===P.Request||this.fetchingTasks},credential(){return this.$store.state.sora.credential},config(){return this.$store.state.sora.config},tasks(){return this.$store.state.sora.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await _e({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("sora/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("sora/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();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:p,createdAtMax:m}=e||{};console.debug("limit",t,"createdAtMin",p,"createdAtMax",m),this.fetchingTasks=!0;try{await this.$store.dispatch("sora/getTasks",{limit:t,createdAtMin:p,createdAtMax:m})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Qt},t=this.credential?.token;if(!t){console.error("no token specified");return}T.info(this.$t("sora.message.startingTask")),x.generate(e,{token:t}).then(()=>{T.success(this.$t("sora.message.startTaskSuccess"))}).catch(p=>{p?.response?.data?.error?.code===ee?T.error(this.$t("sora.message.usedUp")):T.error(this.$t("sora.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Ht(e,t,p,m,g,v){const c=s("config-panel"),d=s("recent-panel"),a=s("layout");return n(),y(a,null,{config:u(()=>[o(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:u(()=>[o(d,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Fo=k(Yt,[["render",Ht]]);export{Fo as default};