@acedatacloud/nexior 3.109.0 → 3.111.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 (242) hide show
  1. package/dist/assets/{Auth-CZBUsR-8.js → Auth-CKncbOs3.js} +1 -1
  2. package/dist/assets/{BotPlaceholder-808fKlrc.js → BotPlaceholder-pdWT9yaS.js} +1 -1
  3. package/dist/assets/{Callback-BCw34S4I.js → Callback-ug-RJzdC.js} +1 -1
  4. package/dist/assets/{Console-DPEMhi7m.js → Console-HM5QEMny.js} +1 -1
  5. package/dist/assets/{Consumption-D8o6ZGlD.js → Consumption-HjIHVPfJ.js} +1 -1
  6. package/dist/assets/{Conversation-BQ_U-I9L.js → Conversation-3fXcacWu.js} +7 -7
  7. package/dist/assets/{Conversation-CmjKckOg.css → Conversation-BOINVenJ.css} +1 -1
  8. package/dist/assets/{CopyToClipboard-99x8TU_E.js → CopyToClipboard-Bm9IiB5O.js} +1 -1
  9. package/dist/assets/{Detail-BTbBX_0l.js → Detail-W4psxShz.js} +2 -2
  10. package/dist/assets/{EditArray-BodaIya6.js → EditArray-CdJCgAF8.js} +1 -1
  11. package/dist/assets/{Extra-CUrRwWxs.js → Extra-BKIBFZ5w.js} +1 -1
  12. package/dist/assets/{FilePreview-BMrbMk0x.js → FilePreview-B-kt6wkS.js} +1 -1
  13. package/dist/assets/{History-ZibpTepi.js → History-DnkBBOXL.js} +1 -1
  14. package/dist/assets/{IconPark.vue_vue_type_script_setup_true_lang-BF3qQycP.js → IconPark.vue_vue_type_script_setup_true_lang-CUMeVlRQ.js} +1 -1
  15. package/dist/assets/{ImagePreview-B7ddO4K-.js → ImagePreview-B-kcZ7xf.js} +1 -1
  16. package/dist/assets/{ImageWrapper-B4mqUlhx.js → ImageWrapper-C6EfiSL4.js} +1 -1
  17. package/dist/assets/{Index-CjcUhG9o.js → Index-1fB1hKXH.js} +1 -1
  18. package/dist/assets/{Index-CdKg1Y3u.js → Index-BB_5NoTS.js} +1 -1
  19. package/dist/assets/{Index-DEnL8MY5.js → Index-BEHhdQWb.js} +1 -1
  20. package/dist/assets/{Index-CUQg6KBW.js → Index-BID7cAU3.js} +1 -1
  21. package/dist/assets/{Index-Ck00cdj3.js → Index-BRx9uhpp.js} +1 -1
  22. package/dist/assets/{Index-GcemLKVi.js → Index-BVlIcCLM.js} +1 -1
  23. package/dist/assets/{Index-BpUiKoDK.js → Index-Bb0CvWHW.js} +1 -1
  24. package/dist/assets/{Index-BIDqjbbO.js → Index-Bb4sqjBP.js} +1 -1
  25. package/dist/assets/{Index-BHFKdAzq.js → Index-BvAGIdGo.js} +1 -1
  26. package/dist/assets/{Index-CK59qCoD.js → Index-BwFbNF68.js} +1 -1
  27. package/dist/assets/{Index-DZEI8Sn1.js → Index-CDzIBHMu.js} +1 -1
  28. package/dist/assets/{Index-DUe_N0MN.js → Index-CERNv4NG.js} +1 -1
  29. package/dist/assets/{Index-Bg2Zm6-5.js → Index-CGzSyP7E.js} +1 -1
  30. package/dist/assets/{Index-CjvSntWd.js → Index-CU3TiMjH.js} +1 -1
  31. package/dist/assets/{Index-C1xSniax.js → Index-Clfys-rl.js} +1 -1
  32. package/dist/assets/{Index-RB9xEjUG.js → Index-D3VhpC77.js} +1 -1
  33. package/dist/assets/{Index-Fco5LKSK.js → Index-DFmUgljq.js} +1 -1
  34. package/dist/assets/{Index-DpUp9_s9.js → Index-DOpXe2QA.js} +1 -1
  35. package/dist/assets/{Index-CSso_LoA.js → Index-DRTcpond.js} +1 -1
  36. package/dist/assets/{Index-DCsM3bGF.js → Index-DX2b70BW.js} +1 -1
  37. package/dist/assets/{Index-DHRBWrtm.js → Index-DiYqwnkS.js} +1 -1
  38. package/dist/assets/{Index-CKjQDdoM.js → Index-Ja_nX74y.js} +1 -1
  39. package/dist/assets/{Index-rd81kAqo.js → Index-Jo8DToQ8.js} +1 -1
  40. package/dist/assets/{Index-CgdNSbRG.js → Index-lq5gDGvW.js} +1 -1
  41. package/dist/assets/{Invitees-BvTLQ2Dx.js → Invitees-DeZvE0vR.js} +1 -1
  42. package/dist/assets/{List-CzCbV2RI.js → List-BLNAIM--.js} +1 -1
  43. package/dist/assets/{List-DxmG5Fsu.js → List-BaDbbTt2.js} +1 -1
  44. package/dist/assets/{List-DrRSr6rf.js → List-DEn-WRCu.js} +1 -1
  45. package/dist/assets/{Main-DAOxrJFm.js → Main-DVf7M63m.js} +1 -1
  46. package/dist/assets/{Navigator-7tnlvMe5.js → Navigator-CCkQr_IE.js} +1 -1
  47. package/dist/assets/{NoTasks-CzCoCJiJ.js → NoTasks-CAc7WMUu.js} +1 -1
  48. package/dist/assets/{NotFound-1k_dya0M.js → NotFound-CGgtDNPl.js} +1 -1
  49. package/dist/assets/{OAuthCallback-D2YKjyo8.js → OAuthCallback-BST1uyNt.js} +1 -1
  50. package/dist/assets/{Pagination-BmrVtAe2.js → Pagination-C9VApaPW.js} +1 -1
  51. package/dist/assets/{ScrollList-CHr2ER0d.js → ScrollList-ClLx5Ay2.js} +1 -1
  52. package/dist/assets/{Status-BtwLPzrZ.js → Status-CvSbHrk3.js} +1 -1
  53. package/dist/assets/{Subscribe-DNcY8cWa.js → Subscribe-4E3Osz40.js} +1 -1
  54. package/dist/assets/{TransportWebHID-BiNkPg4j.js → TransportWebHID-DR_-jCTH.js} +1 -1
  55. package/dist/assets/{VideoPlayer-BJPVVH4v.js → VideoPlayer-DHTu44Da.js} +1 -1
  56. package/dist/assets/{_Uint8Array-BWy8cKCo.js → _Uint8Array-B8owGMyd.js} +1 -1
  57. package/dist/assets/{_baseClone-CVDR-yNh.js → _baseClone-CmG_Edvh.js} +1 -1
  58. package/dist/assets/{_baseIteratee-GCheQ423.js → _baseIteratee-DBmltUMm.js} +1 -1
  59. package/dist/assets/{_initCloneObject-BnGf6y2Q.js → _initCloneObject-D15ri8PG.js} +1 -1
  60. package/dist/assets/{add-CkjK2xW1.js → add-C0mpNF6k.js} +1 -1
  61. package/dist/assets/{all-wallets-CdL_YtIS.js → all-wallets-ClotN1E9.js} +1 -1
  62. package/dist/assets/{app-store-Bt1dpC73.js → app-store-CHklZbY1.js} +1 -1
  63. package/dist/assets/{apple-CEeGRsLR.js → apple-Bp91tKsA.js} +1 -1
  64. package/dist/assets/{arrow-bottom-CY7QPC3v.js → arrow-bottom-DC_JVzih.js} +1 -1
  65. package/dist/assets/{arrow-bottom-circle-DUacLrTK.js → arrow-bottom-circle-CjNfFI8_.js} +1 -1
  66. package/dist/assets/{arrow-left-DdkU_cJC.js → arrow-left-DNF67cNt.js} +1 -1
  67. package/dist/assets/{arrow-right-BApVZAmW.js → arrow-right-Cq-twVbs.js} +1 -1
  68. package/dist/assets/{arrow-top-6DcF8ipC.js → arrow-top-BAPEAr7x.js} +1 -1
  69. package/dist/assets/{avatar-C0m3kdBO.js → avatar-BHUyKT-A.js} +1 -1
  70. package/dist/assets/{bank-FZTS0Bvm.js → bank-CNjbkHxk.js} +1 -1
  71. package/dist/assets/{basic-z3EiNtlJ.js → basic-cMadvC5q.js} +1 -1
  72. package/dist/assets/{browser-D-00yn8G.js → browser-mVDec-es.js} +1 -1
  73. package/dist/assets/{byokCredential-Cdy8REIp.js → byokCredential-XJt4P01K.js} +1 -1
  74. package/dist/assets/{card-D_wHBdr4.js → card-Du_mEvSr.js} +1 -1
  75. package/dist/assets/{castArray-BX2YHThj.js → castArray-BiIaTbnK.js} +1 -1
  76. package/dist/assets/{chat-D11jX4Iv.js → chat-DWj33yLu.js} +1 -1
  77. package/dist/assets/{checkmark-BEf3bMy_.js → checkmark-Cei_rTl3.js} +1 -1
  78. package/dist/assets/{checkmark-bold-Bw9dOPyC.js → checkmark-bold-D3tBxScN.js} +1 -1
  79. package/dist/assets/{chevron-bottom-GHiW7kBq.js → chevron-bottom-BWP3X89B.js} +1 -1
  80. package/dist/assets/{chevron-left-CNEj2dO4.js → chevron-left-ny6iN6nL.js} +1 -1
  81. package/dist/assets/{chevron-right-sgqFx8lL.js → chevron-right-B-UE9tuL.js} +1 -1
  82. package/dist/assets/{chevron-top-DlAuFkpk.js → chevron-top-B-6l7I9J.js} +1 -1
  83. package/dist/assets/{chrome-store-ClGqsVeO.js → chrome-store-BMLIHKOJ.js} +1 -1
  84. package/dist/assets/{clock-Dn87YZjp.js → clock-CbDF99vc.js} +1 -1
  85. package/dist/assets/{close-BwRH304n.js → close-BEl-n2L2.js} +1 -1
  86. package/dist/assets/{coinPlaceholder-D3MTdGQ0.js → coinPlaceholder-in5hstB8.js} +1 -1
  87. package/dist/assets/{compass-C-E2T0zy.js → compass-CeCFDZeC.js} +1 -1
  88. package/dist/assets/{copy-BNJGAvMa.js → copy-BE9gVTUY.js} +1 -1
  89. package/dist/assets/{cursor--i4Xa0OQ.js → cursor-EOAd-eyy.js} +1 -1
  90. package/dist/assets/{cursor-transparent-WOU8mk8F.js → cursor-transparent-DGW1C4WL.js} +1 -1
  91. package/dist/assets/{debounce-rFO21RGd.js → debounce-BIXA4vQu.js} +1 -1
  92. package/dist/assets/{desktop-CdiQ5DFl.js → desktop-5wy2kz4T.js} +1 -1
  93. package/dist/assets/{disconnect-BBTXz5Xp.js → disconnect-CiniaH88.js} +1 -1
  94. package/dist/assets/{discord-BavN0D2g.js → discord-ChaVMatf.js} +1 -1
  95. package/dist/assets/{distribution-gC6pfUsz.js → distribution-Cd4FxZnP.js} +1 -1
  96. package/dist/assets/{dropdown-D7fDLjhX.js → dropdown-Djw4XhII.js} +1 -1
  97. package/dist/assets/{etherscan-Bw-ZKmx-.js → etherscan-DZRo-j_B.js} +1 -1
  98. package/dist/assets/{exclamation-triangle-DOt3gbax.js → exclamation-triangle-Bh0MIQEt.js} +1 -1
  99. package/dist/assets/{extension-DAiziIeO.js → extension-UwWFgJsF.js} +1 -1
  100. package/dist/assets/{external-link-Cv8eFrXr.js → external-link-BfiFs4MY.js} +1 -1
  101. package/dist/assets/{facebook-CzJaALeT.js → facebook-CxpowLvQ.js} +1 -1
  102. package/dist/assets/{farcaster-DlHpFJ18.js → farcaster-B0fSWpie.js} +1 -1
  103. package/dist/assets/{filters-BWg9cLQ3.js → filters-BiMMkudc.js} +1 -1
  104. package/dist/assets/{flux-BP0RP-7R.js → flux-DGCtih8k.js} +1 -1
  105. package/dist/assets/{github-BlSjhO5R.js → github-i5XVnXPQ.js} +1 -1
  106. package/dist/assets/{google-wrIehkN1.js → google-DVKOuAf3.js} +1 -1
  107. package/dist/assets/{hailuo-CpEa1UDZ.js → hailuo-DY93FJRp.js} +1 -1
  108. package/dist/assets/{headshots-C_z_6iJl.js → headshots-Clx9yFtP.js} +1 -1
  109. package/dist/assets/{help-circle-CgG5yAaM.js → help-circle-CDCGzUXe.js} +1 -1
  110. package/dist/assets/{id-D2oqHw8z.js → id-BedLB6T_.js} +1 -1
  111. package/dist/assets/{image-D4yLPdQZ.js → image-BgiMeEyg.js} +1 -1
  112. package/dist/assets/{index-BEvg2pRE.js → index-15GiJQk_.js} +1 -1
  113. package/dist/assets/{index-B2l9Ai7a.js → index-6bMysa7o.js} +1 -1
  114. package/dist/assets/{index-B--xRYrq.js → index-B4eGti-_.js} +1 -1
  115. package/dist/assets/{index-DKT9lpv-.js → index-B4njNk04.js} +1 -1
  116. package/dist/assets/{index-Ds-UbI_q.js → index-B5SDKCdK.js} +1 -1
  117. package/dist/assets/{index-CRPCTgYK.js → index-BF_wH3W3.js} +1 -1
  118. package/dist/assets/{index-C1Nafj7o.js → index-BMEABvuF.js} +1 -1
  119. package/dist/assets/{index-RiVU3gTe.js → index-BOCCszA-.js} +1 -1
  120. package/dist/assets/{index-CW-yt64R.js → index-BV8tcem4.js} +1 -1
  121. package/dist/assets/{index-BwN6IC9f.js → index-BXBPY2JC.js} +1 -1
  122. package/dist/assets/{index-FF4WAJT-.js → index-B_w2jnax.js} +1 -1
  123. package/dist/assets/{index-CNnZhdJr.js → index-BahF1AaV.js} +1 -1
  124. package/dist/assets/{index-DB1wHeLA.js → index-BbT7wIiK.js} +1 -1
  125. package/dist/assets/{index-aO6Fi57H.js → index-BcLxs5FR.js} +1 -1
  126. package/dist/assets/{index-26h1mgt-.js → index-BhD-3nzt.js} +1 -1
  127. package/dist/assets/{index-BlG1KEGq.js → index-Bp2WW5ki.js} +1 -1
  128. package/dist/assets/{index-BCtLhxeC.js → index-BpC0_K8o.js} +1 -1
  129. package/dist/assets/{index-D4vu-0Vi.js → index-BqLSd7S8.js} +3 -3
  130. package/dist/assets/{index-DTQtEf7n.js → index-Btke2Pu_.js} +1 -1
  131. package/dist/assets/{index-FTscF_cz.js → index-BuYqOs8q.js} +4 -4
  132. package/dist/assets/{index-D4Yc4tRk.js → index-Buu7519g.js} +1 -1
  133. package/dist/assets/{index-DUswWNzD.js → index-BydGPbsc.js} +1 -1
  134. package/dist/assets/{index-CJJgickM.js → index-C0Am24Fv.js} +1 -1
  135. package/dist/assets/{index-W9z3tmv_.js → index-C1knIa8B.js} +1 -1
  136. package/dist/assets/{index-B2UzvqRs.js → index-C6K-Tjf2.js} +1 -1
  137. package/dist/assets/{index-CENBZ_Mi.js → index-C8kzC-fT.js} +1 -1
  138. package/dist/assets/{index-jii325vi.js → index-CADSUEtD.js} +1 -1
  139. package/dist/assets/{index-38G9IKZp.js → index-CEjOHMmS.js} +1 -1
  140. package/dist/assets/{index-DefEPu5Z.js → index-CIsfCFqq.js} +1 -1
  141. package/dist/assets/{index-ByyI6VwW.js → index-CLjGlCqv.js} +1 -1
  142. package/dist/assets/{index-Cu8jEzMt.js → index-CVnh-uJy.js} +1 -1
  143. package/dist/assets/{index-brUXT6Ic.js → index-CXPFo-z3.js} +1 -1
  144. package/dist/assets/{index-B5aLH4ZV.js → index-Cice4EwV.js} +1 -1
  145. package/dist/assets/{index-CJtfHm7C.js → index-CidH52Gm.js} +1 -1
  146. package/dist/assets/{index-DBcVZLrq.js → index-CkTa3bXW.js} +1 -1
  147. package/dist/assets/{index-BXMkJF7H.js → index-CpgGHDqx.js} +1 -1
  148. package/dist/assets/{index-DdfzO8ET.js → index-CrmvmSrr.js} +1 -1
  149. package/dist/assets/{index-Bw6diQ6i.js → index-CwwCvsDf.js} +1 -1
  150. package/dist/assets/{index-a10HPOrI.js → index-D5tBMy2e.js} +1 -1
  151. package/dist/assets/{index-BRydlsSG.js → index-D9mxLTtD.js} +1 -1
  152. package/dist/assets/{index-BVMM7e5x.js → index-DJ6hjNjr.js} +1 -1
  153. package/dist/assets/{index-CUOB8-6a.js → index-DN23pRhq.js} +6 -6
  154. package/dist/assets/{index-DPl_Q5wR.js → index-DW8Srdwr.js} +1 -1
  155. package/dist/assets/{index-DrvGU9i_.js → index-DWFPMm_t.js} +1 -1
  156. package/dist/assets/{index-3euot5lf.js → index-DXKnEKkD.js} +1 -1
  157. package/dist/assets/{index-CWoJcxvr.js → index-DinNeXmi.js} +1 -1
  158. package/dist/assets/{index-CbXIzWSz.js → index-DlKmz7tK.js} +1 -1
  159. package/dist/assets/{index-BdrHjNrn.js → index-Dsf-WzCN.js} +1 -1
  160. package/dist/assets/{index-O7t1BsNB.js → index-DwHZBeTH.js} +1 -1
  161. package/dist/assets/{index-o4zhAWG6.js → index-DywgxFYh.js} +1 -1
  162. package/dist/assets/{index-B_xoWE5M.js → index-Eg9Dtvnb.js} +1 -1
  163. package/dist/assets/{index-DWTCukaE.js → index-G7zvMRT-.js} +1 -1
  164. package/dist/assets/{index-DsKeM0Xq.js → index-OLF8hEHW.js} +1 -1
  165. package/dist/assets/{index-d1Dl3INe.js → index-Pz-2MS0a.js} +1 -1
  166. package/dist/assets/{index-BEYNW2EK.js → index-QCvk6zjY.js} +1 -1
  167. package/dist/assets/{index-CwJsW1oV.js → index-ZsRAFqiK.js} +1 -1
  168. package/dist/assets/{index-FhK8yklc.js → index-c06zQDT0.js} +1 -1
  169. package/dist/assets/{index-CNQqVjGk.js → index-cHGiSHLI.js} +1 -1
  170. package/dist/assets/{index-BHTuBZXJ.js → index-ot7wZnSG.js} +1 -1
  171. package/dist/assets/{index-D8V5LY1E.js → index-wLOejvGf.js} +1 -1
  172. package/dist/assets/{index-oWuBTe9g.js → index-x4n6plQ5.js} +1 -1
  173. package/dist/assets/{index.browser.esm-BaPNoGjI.js → index.browser.esm-DIXpj19X.js} +1 -1
  174. package/dist/assets/{index.es-B1lW1a9B.js → index.es-DAf85_c_.js} +1 -1
  175. package/dist/assets/{info-D2mbPMyX.js → info-Dcvf_89T.js} +1 -1
  176. package/dist/assets/{info-circle-CQtpHFeL.js → info-circle-DV3akfKd.js} +1 -1
  177. package/dist/assets/{isEqual-BiGspMHU.js → isEqual-CSXiaW-q.js} +1 -1
  178. package/dist/assets/{isPlainObject-1A9ncyWS.js → isPlainObject-C_0Ser3m.js} +1 -1
  179. package/dist/assets/{kling-Bga-2-Yk.js → kling-DF1S_RXj.js} +1 -1
  180. package/dist/assets/{lightbulb-SMN0MP8P.js → lightbulb-CTjRCOVB.js} +1 -1
  181. package/dist/assets/{luma-CHNWeOk6.js → luma-Ce6gwGqt.js} +1 -1
  182. package/dist/assets/{mail-D-ZfsNgq.js → mail-JYFL_gx5.js} +1 -1
  183. package/dist/assets/{midjourney-BdpbGQo1.js → midjourney-CuEnjhqh.js} +1 -1
  184. package/dist/assets/{mobile-DEieegSW.js → mobile-DIYoPDSS.js} +1 -1
  185. package/dist/assets/{more-BMIzMnqp.js → more-CUQy4jyV.js} +1 -1
  186. package/dist/assets/{nanobanana-JVOGegpV.js → nanobanana-YVmjD6V4.js} +1 -1
  187. package/dist/assets/{network-placeholder-ppqpKoOQ.js → network-placeholder-CQmyqqKl.js} +1 -1
  188. package/dist/assets/{nftPlaceholder-55iywwqB.js → nftPlaceholder-DOdHjKQn.js} +1 -1
  189. package/dist/assets/{off-CpesiVFf.js → off-BXm2uAZs.js} +1 -1
  190. package/dist/assets/{openaiimage-CEkHQ02c.js → openaiimage-RB3W1okN.js} +1 -1
  191. package/dist/assets/{order-BFBb3_Nm.js → order-B8iRnZ9u.js} +1 -1
  192. package/dist/assets/{pika-DF9AQtCB.js → pika-BYnVUjKG.js} +1 -1
  193. package/dist/assets/{pixverse-NFnml3Ad.js → pixverse-CXnOvngq.js} +1 -1
  194. package/dist/assets/{play-store-EtWgj9tY.js → play-store-CPfNZfrJ.js} +1 -1
  195. package/dist/assets/{plus-Bz9Zrmf7.js → plus-BXW-k2IL.js} +1 -1
  196. package/dist/assets/{price-D5TNZtWD.js → price-BLnrGcOE.js} +1 -1
  197. package/dist/assets/{producer-BTXuQmdX.js → producer-CSq1TP08.js} +1 -1
  198. package/dist/assets/{qr-code-BteNX7f7.js → qr-code-COhRIfZa.js} +1 -1
  199. package/dist/assets/{qrart-DBM0vNab.js → qrart-D8ryGM-9.js} +1 -1
  200. package/dist/assets/{recycle-horizontal-DoCeu-wB.js → recycle-horizontal-oiQLPHu6.js} +1 -1
  201. package/dist/assets/{refresh-B27QPFje.js → refresh-DkQoUj_h.js} +1 -1
  202. package/dist/assets/{reown-logo-DOxrtg5r.js → reown-logo-BmyPqZYO.js} +1 -1
  203. package/dist/assets/{search-Bbvjy0sE.js → search-BC02l1O6.js} +1 -1
  204. package/dist/assets/{secp256k1-cwsWPnax.js → secp256k1-CBqKWMtb.js} +1 -1
  205. package/dist/assets/{secp256k1-DfbSkrJA.js → secp256k1-sCCitGyD.js} +1 -1
  206. package/dist/assets/{seedance-DHGvvKi5.js → seedance-CQqE954y.js} +1 -1
  207. package/dist/assets/{seedream-BGv1ajnv.js → seedream-CbKKvSYs.js} +1 -1
  208. package/dist/assets/{send-CKT6bzdT.js → send-B5FP1wam.js} +1 -1
  209. package/dist/assets/{service-C5LrDt_v.js → service-CMBkXmXP.js} +1 -1
  210. package/dist/assets/{solana-wallets-D3sNEfV2.js → solana-wallets-BnLlJgtL.js} +2 -2
  211. package/dist/assets/{solana-wallets-vue-CJOnb2mO.js → solana-wallets-vue-C3FNJ-KO.js} +1 -1
  212. package/dist/assets/{solanaEmbed.esm-AUvjIviJ.js → solanaEmbed.esm-BVmZmGt9.js} +1 -1
  213. package/dist/assets/{sora-B2wrmmta.js → sora-rDGW7zC2.js} +1 -1
  214. package/dist/assets/{string_decoder-pE91rp0R.js → string_decoder-BwKhmRiq.js} +1 -1
  215. package/dist/assets/{suno-D94YFwAz.js → suno-D3BndtXK.js} +1 -1
  216. package/dist/assets/{swapHorizontal-7WpTJnsP.js → swapHorizontal-DDJN4WuP.js} +1 -1
  217. package/dist/assets/{swapHorizontalBold-BCnSLf6o.js → swapHorizontalBold-CKBCDFj1.js} +1 -1
  218. package/dist/assets/{swapHorizontalMedium-mWC-N_Ro.js → swapHorizontalMedium-BuYlPcYm.js} +1 -1
  219. package/dist/assets/{swapHorizontalRoundedBold-Bu0IBfBl.js → swapHorizontalRoundedBold-CtXfzUhW.js} +1 -1
  220. package/dist/assets/{swapVertical-zPCGtEyW.js → swapVertical-Dr_u3jzk.js} +1 -1
  221. package/dist/assets/{telegram-CqVol6C7.js → telegram-DKCJn8tP.js} +1 -1
  222. package/dist/assets/{three-dots-BvwfJBxD.js → three-dots-Blqhwg1v.js} +1 -1
  223. package/dist/assets/{twitch-W0B0uQ2_.js → twitch-CfZ8VTU0.js} +1 -1
  224. package/dist/assets/{twitterIcon-Dy3K7R98.js → twitterIcon-BO8ajIje.js} +1 -1
  225. package/dist/assets/{typescript-CUMR9uNq.js → typescript-Bu1ceUI1.js} +1 -1
  226. package/dist/assets/{use-form-item-DDWqgx7q.js → use-form-item-Bcf9wMdQ.js} +1 -1
  227. package/dist/assets/validator-BqhII7fg.js +1 -0
  228. package/dist/assets/{veo-ibQ-pqXQ.js → veo-BYRN1b7S.js} +1 -1
  229. package/dist/assets/{verify-qcg7LJmo.js → verify-Bp_XfnF7.js} +1 -1
  230. package/dist/assets/{verify-filled-CKhjqWtR.js → verify-filled-BDgsXFBn.js} +1 -1
  231. package/dist/assets/{w3m-modal-BYAeKj4C.js → w3m-modal-DOfTvFLZ.js} +1 -1
  232. package/dist/assets/{wallet-q_V1cxSj.js → wallet-BxuFLslW.js} +1 -1
  233. package/dist/assets/{wallet-placeholder-DdZaIWvi.js → wallet-placeholder-UhpiYUNA.js} +1 -1
  234. package/dist/assets/{walletconnect-DqDsf_VI.js → walletconnect-DbKdQMMx.js} +1 -1
  235. package/dist/assets/{wan-BSsn6vES.js → wan-DwtDIND_.js} +1 -1
  236. package/dist/assets/{warning-circle-olX97x29.js → warning-circle-Dqt3R-fW.js} +1 -1
  237. package/dist/assets/{web-CpRQ4ifd.js → web-CHMoqKkF.js} +1 -1
  238. package/dist/assets/{web-Csr5ExDC.js → web-DCcjiHPr.js} +1 -1
  239. package/dist/assets/{x-DfcqJEz9.js → x-Cegnpxkg.js} +1 -1
  240. package/dist/index.html +62 -14
  241. package/package.json +1 -1
  242. package/dist/assets/validator-pb75_c-A.js +0 -1
@@ -1 +1 @@
1
- import{F as C}from"./index.es-B1lW1a9B.js";import{E as P}from"./index-jii325vi.js";import{E as G}from"./index-38G9IKZp.js";import{d as v,H as l,E as r,z as A,C as s,y as d,D as n,q as o,F as a,I as g,O as I,N as T,x as E,Q as S,c as U,J as $}from"./vendor-vue-DU0w5ewx.js";import{E as b,b1 as D,a7 as z,ap as V}from"./index-FTscF_cz.js";import{p as M}from"./pasteUploadMixin-BurWbGNQ.js";import{I as O,S as j}from"./ScrollList-CHr2ER0d.js";import{I as B}from"./ImagePreview-B7ddO4K-.js";import{E as q}from"./index-aO6Fi57H.js";import{E as w}from"./index-FF4WAJT-.js";import{a as F,E as N}from"./index-B--xRYrq.js";import{E as L}from"./index-DdfzO8ET.js";import{E as H,a as J}from"./index-CW-yt64R.js";import{b as Q,a as K}from"./errorCode-Cqj9Td_Z.js";import{h as W}from"./headshots-C_z_6iJl.js";import{A as X}from"./Status-BtwLPzrZ.js";import{C as Y}from"./CopyToClipboard-99x8TU_E.js";import{E as Z}from"./index-B2l9Ai7a.js";import{E as x,a as ee}from"./index-CJJgickM.js";import{l as se}from"./pagination-CcnL0MdN.js";import"./use-form-item-DDWqgx7q.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./index-DTQtEf7n.js";import"./index-DB1wHeLA.js";import"./typescript-CUMR9uNq.js";import"./index-BdrHjNrn.js";import"./_baseClone-CVDR-yNh.js";import"./_Uint8Array-BWy8cKCo.js";import"./_initCloneObject-BnGf6y2Q.js";import"./isEqual-BiGspMHU.js";import"./debounce-rFO21RGd.js";import"./index-RiVU3gTe.js";import"./strings-DigWlKo9.js";import"./isPlainObject-1A9ncyWS.js";const te=v({name:"LayoutHeadshots",components:{ElDrawer:G,ElButton:P,FontAwesomeIcon:C},data(){return{drawer:!1}}}),oe={class:"main flex flex-row flex-1"},ae={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ne={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,t,m,h,k,y){const p=n("font-awesome-icon"),u=n("el-button"),i=n("el-drawer");return o(),l("div",oe,[r("div",ae,[A(e.$slots,"config",{},void 0,!0)]),r("div",ne,[A(e.$slots,"result",{},void 0,!0)]),s(u,{circle:"",class:"menu",onClick:t[0]||(t[0]=c=>e.drawer=!0)},{default:d(()=>[s(p,{icon:"fa-solid fa-gear"})]),_:1}),s(i,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=c=>e.drawer=c),"with-header":!1,size:"340px",class:"drawer"},{default:d(()=>[A(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const le=b(te,[["render",ie],["__scopeId","data-v-202b355b"]]),re=v({name:"ImageUrlsInput",components:{ElUpload:q,ElButton:P,InfoIcon:O,ImagePreview:B,FontAwesomeIcon:C},mixins:[M],data(){return{fileList:[],uploadUrl:D()+"/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.headshots?.config?.image_urls},set(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})}}},mounted(){this.value||(this.value=void 0),this.onSetImageUrls()},methods:{onExceed(){w.warning(this.$t("headshots.message.uploadImageExceed"))},onError(){w.error(this.$t("headshots.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})},async onSuccess(){this.onSetImageUrls()}}}),ce={class:"field"},de={class:"title font-bold"},pe={class:"upload-wrapper"};function me(e,t,m,h,k,y){const p=n("image-preview"),u=n("font-awesome-icon"),i=n("el-button"),c=n("el-upload"),f=n("info-icon");return o(),l("div",ce,[r("h2",de,a(e.$t("headshots.name.endImageUrls")),1),r("div",pe,[s(c,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=_=>e.fileList=_),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value upload-wrapper",limit:2,multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:d(({file:_})=>[s(p,{url:_.url||_.response?.file_url,name:_.name,percentage:_.percentage,onRemove:R=>e.fileList.splice(e.fileList.indexOf(_),1)},null,8,["url","name","percentage","onRemove"])]),default:d(()=>[s(i,{size:"small",type:"primary",round:""},{default:d(()=>[s(u,{icon:"fa-solid fa-upload",class:"mr-1"}),g(" "+a(e.$t("headshots.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])]),s(f,{content:e.$t("headshots.description.endImageUrls"),class:"info"},null,8,["content"])])}const he=b(re,[["render",me],["__scopeId","data-v-ca56051e"]]),ue="fast",fe=v({name:"ModeSelector",components:{ElRadioButton:N,ElRadioGroup:F},data(){return{options:[{label:this.$t("headshots.button.fast"),value:"fast"},{label:this.$t("headshots.button.relax"),value:"relax"}]}},computed:{value:{get(){return this.$store.state.headshots.config?.mode},set(e){console.debug("set mode",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots.config,mode:e})}}},mounted(){this.value||(this.value=ue)}}),ge={class:"field"},_e={class:"title font-bold"};function $e(e,t,m,h,k,y){const p=n("el-radio-button"),u=n("el-radio-group");return o(),l("div",ge,[r("h2",_e,a(e.$t("headshots.name.mode")),1),s(u,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),class:"mode"},{default:d(()=>[(o(!0),l(I,null,T(e.options,i=>(o(),E(p,{key:i.value,label:i.value},{default:d(()=>[g(a(i.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const ve=b(fe,[["render",$e],["__scopeId","data-v-e7702494"]]),be=v({name:"StylizeSelector",components:{ElTabs:J,ElTabPane:H,ElImage:L},data(){return{tab:"styles",value:"",elements:{styles:{displayName:this.$t("headshots.styleCategory.styles"),items:[{image:"https://static.aipedias.com/aicamera/common/20241008/20241008202314260779439.png",label:this.$t("headshots.styleTag.malePportrait"),value:"male_portrait"},{image:"https://static.aipedias.com/aicamera/common/20241008/202410082022241e9755548.png",label:this.$t("headshots.styleTag.malePportrait2"),value:"male_portrait2"},{image:"https://static.aipedias.com/aicamera/common/20241101/20241101170130d78f66521.png",label:this.$t("headshots.styleTag.kindergarten"),value:"kindergarten"},{image:"https://static.aipedias.com/aicamera/common/20240923/20240923123233accf60398.webp",label:this.$t("headshots.styleTag.logoTshirt"),value:"logo_tshirt"},{image:"https://static.aipedias.com/aicamera/common/20241025/202410252012329472d0656.jpg",label:this.$t("headshots.styleTag.wedding"),value:"wedding"},{image:"https://static.aipedias.com/aicamera/common/20240915/20240915145045254931400.webp",label:this.$t("headshots.styleTag.businessPphoto"),value:"business_photo"},{image:"https://static.aipedias.com/aicamera/common/20240810/20240810194526040341795.jpg",label:this.$t("headshots.styleTag.bobSuit"),value:"bob_suit"},{image:"https://static.aipedias.com/aicamera/common/20240717/20240717152654e0b348173.webp",label:this.$t("headshots.styleTag.femalePortrait"),value:"female_portrait"}]}}}},watch:{value(e){console.debug("set template",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:e})}},mounted(){this.value||(this.value=""),console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})},methods:{onToggle(e){this.value===e?this.value="":this.value=e,console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})}}}),ke={class:"field"},ye=["onClick"],we={class:"name"};function Ie(e,t,m,h,k,y){const p=n("el-image"),u=n("el-tab-pane"),i=n("el-tabs");return o(),l("div",ke,[s(i,{modelValue:e.tab,"onUpdate:modelValue":t[0]||(t[0]=c=>e.tab=c)},{default:d(()=>[(o(!0),l(I,null,T(e.elements,(c,f)=>(o(),E(u,{key:f,label:c.displayName,name:f,class:"pane"},{default:d(()=>[(o(!0),l(I,null,T(c.items,(_,R)=>(o(),l("div",{key:R,class:S({item:!0,active:e.value===_.value}),onClick:bs=>e.onToggle(_.value)},[s(p,{src:_.image,fit:"fill",class:"preview"},null,8,["src"]),r("span",we,a(_.label),1)],10,ye))),128))]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])])}const Te=b(be,[["render",Ie],["__scopeId","data-v-be4bd25d"]]),Ee=v({name:"PresetPanel",components:{ModeSelector:ve,ImageUrlsInput:he,ElButton:P,FontAwesomeIcon:C,ElementsSelector:Te},emits:["generate"],computed:{config(){return this.$store.state.headshots?.config}},methods:{onGenerate(){this.$emit("generate")}}}),Se={class:"panel"},Ve={class:"config"},Ce={class:"actions"};function Ae(e,t,m,h,k,y){const p=n("elements-selector"),u=n("mode-selector"),i=n("image-urls-input"),c=n("font-awesome-icon"),f=n("el-button");return o(),l("div",Se,[r("div",Ve,[s(p,{class:"mb-4"}),s(u,{class:"mb-4"}),s(i,{class:"mb-4"}),r("div",Ce,[s(f,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[s(c,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+a(e.$t("headshots.button.generate")),1)]),_:1},8,["onClick"])])])])}const Pe=b(Ee,[["render",Ae],["__scopeId","data-v-848739f6"]]),Re=v({name:"ImageGallery",props:{modelValue:{type:Object,required:!0}},setup(e){return{images:U(()=>e.modelValue?.response?.data?.slice(0,2)||[]),viewImage:h=>{window.open(h,"_blank")}}}}),Le={class:"image-gallery"},Ge=["src"],Ue=["onClick"];function De(e,t,m,h,k,y){return o(),l("div",Le,[(o(!0),l(I,null,T(e.images,(p,u)=>(o(),l("div",{key:u,class:"image-container"},[r("img",{src:p.image_url,alt:"Image"},null,8,Ge),p.image_url?(o(),l("button",{key:0,class:"view-button",onClick:i=>e.viewImage(p.image_url)},a(e.$t("headshots.button.viewImage")),9,Ue)):$("",!0)]))),128))])}const ze=b(Re,[["render",De],["__scopeId","data-v-42f0a7be"]]),Me=v({name:"TaskPreview",components:{ElImage:L,CopyToClipboard:Y,FontAwesomeIcon:C,ElAlert:Z,ImageGallery:ze},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.headshots?.application},config(){return this.$store.state.headshots?.config}},methods:{onDownload(e,t){e.stopPropagation(),console.log("on download"),window.open(t,"_blank")},onReload(e){const t=e.target,m=new URL(t.src),h=m.searchParams.get("retry");if(!h)m.searchParams.set("retry","1");else if(parseInt(h)<2)m.searchParams.set("retry",(parseInt(h)+1).toString());else return;t.src=m.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),Oe={class:"preview"},je={class:"left"},Be={class:"main"},qe={class:"bot"},Fe={class:"datetime"},Ne={class:"info"},He={key:0,class:"prompt mt-2"},Je={key:0},Qe={key:1},Ke={key:0,class:S({content:!0,failed:!0})},We={class:"image-wrapper"},Xe={class:"description"},Ye={key:0,class:"description"},Ze={key:1,class:S({content:!0})},xe={class:"description"},es={class:"description"},ss={key:0,class:"description"},ts={class:"description"},os={key:2,class:S({content:!0})},as={class:"description"},ns={key:3,class:S({content:!0})},is={class:"description"};function ls(e,t,m,h,k,y){const p=n("el-image"),u=n("image-gallery"),i=n("font-awesome-icon"),c=n("copy-to-clipboard"),f=n("el-alert");return o(),l("div",Oe,[r("div",je,[s(p,{src:"https://cdn.acedata.cloud/isxyfw.png",class:"avatar"})]),r("div",Be,[r("div",qe,[g(a(e.$t("headshots.name.headshotsBot"))+" ",1),r("span",Fe,a(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Ne,[e.modelValue?.request?.template?(o(),l("p",He,[g(a(e.modelValue?.request?.template)+" ",1),e.modelValue?.response?$("",!0):(o(),l("span",Je," - ("+a(e.$t("headshots.status.pending"))+") ",1)),e.modelValue?.response?.status==="unknown"?(o(),l("span",Qe," - ("+a(e.$t("headshots.status.processing"))+") ",1)):$("",!0)])):$("",!0)]),e.modelValue?.response?.success===!0?(o(),l("div",Ke,[r("div",We,[s(u,{"model-value":e.modelValue},null,8,["model-value"])]),s(f,{closable:!1,class:"mt-2 success"},{default:d(()=>[r("p",Xe,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(o(),l("p",Ye,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+a(e.$t("headshots.name.elapsed"))+": "+a(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0)]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(o(),l("div",Ze,[s(f,{closable:!1,class:"failure"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",xe,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),r("p",es,[s(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failureReason"))+": "+a(e.modelValue?.response?.error?.message)+" ",1),s(c,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(o(),l("p",ss,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+a(e.$t("headshots.name.elapsed"))+": "+a(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),r("p",ts,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+a(e.$t("headshots.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?$("",!0):(o(),l("div",os,[s(f,{closable:!1,class:"info"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",as,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])),e.modelValue?.response?.status==="unknown"?(o(),l("div",ns,[s(f,{closable:!1,class:"info"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",is,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0)])])}const rs=b(Me,[["render",ls],["__scopeId","data-v-d286678e"]]),cs=v({name:"RecentPanel",components:{TaskPreview:rs,ElSkeleton:ee,ElSkeletonItem:x,ScrollList:j},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.headshots?.tasks,items:this.$store.state.headshots?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),ds={key:0,class:"tasks"},ps={class:"left"},ms={class:"main"},hs={key:1,class:"tasks"},us={key:2,class:"description"};function fs(e,t,m,h,k,y){const p=n("el-skeleton-item"),u=n("el-skeleton"),i=n("task-preview"),c=n("scroll-list");return o(),E(c,{ref:"scrollList",class:"panel recent",loading:e.loading,onReachTop:t[0]||(t[0]=f=>e.$emit("reach-top"))},{default:d(()=>[e.tasks?.items===void 0?(o(),l("div",ds,[(o(),l(I,null,T(3,f=>r("div",{key:f,class:"task placeholder"},[r("div",ps,[s(u,{animated:""},{template:d(()=>[s(p,{variant:"image",class:"avatar"})]),_:1})]),r("div",ms,[s(u,{animated:""},{template:d(()=>[s(p,{variant:"p",class:"title"}),s(p,{variant:"image",class:"icon"})]),_:1})])])),64))])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(o(),l("div",hs,[(o(!0),l(I,null,T(e.tasks?.items,(f,_)=>(o(),E(i,{key:_,"model-value":f,class:"preview"},null,8,["model-value"]))),128))])):$("",!0),e.tasks?.items?.length===0?(o(),l("p",us,a(e.$t("headshots.message.noTasks")),1)):$("",!0)]),_:1},8,["loading"])}const gs=b(cs,[["render",fs],["__scopeId","data-v-ffd55c16"]]),_s="https://webhook.acedata.cloud/headshots",$s=v({name:"HeadshotsIndex",components:{ConfigPanel:Pe,Layout:le,ApplicationStatus:X,RecentPanel:gs},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.headshots?.status?.getApplications===V.Request},tasksLoading(){return this.$store.state.headshots?.status?.getTasks===V.Request||this.fetchingTasks},service(){return this.$store.state.headshots.service},credential(){return this.$store.state.headshots.credential},config(){return this.$store.state.headshots.config},initializing(){return this.$store.state.headshots.status.getApplications===V.Request},needApply(){return this.$store.state.headshots.status.getApplications===V.Success&&!this.application},application(){return this.$store.state.headshots.application},applications(){return this.$store.state.headshots.applications},tasks(){return this.$store.state.headshots.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 se({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("headshots/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("headshots/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){z.create({application:this.application}).then(({data:e})=>{this.application=e,w.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===K&&w.error(this.$t("application.message.alreadyApplied"))})},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=5,createdAtMin:m,createdAtMax:h}=e||{};console.debug("limit",t,"createdAtMin",m,"createdAtMax",h),this.fetchingTasks=!0;try{await this.$store.dispatch("headshots/getTasks",{limit:t,createdAtMin:m,createdAtMax:h})}finally{this.fetchingTasks=!1}},async onGeneratePicture(){const e={...this.config,callback_url:_s},t=this.credential?.token;if(!t){console.error("no token specified");return}w.info(this.$t("headshots.message.startingTask")),W.generate(e,{token:t}).then(()=>{w.success(this.$t("headshots.message.startTaskSuccess")),this.$store.commit("headshots/setConfig",{config:void 0})}).catch(m=>{m?.response?.data?.error?.code===Q?w.error(this.$t("headshots.message.usedUp")):w.error(this.$t("headshots.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function vs(e,t,m,h,k,y){const p=n("config-panel"),u=n("application-status"),i=n("recent-panel"),c=n("layout");return o(),E(c,null,{config:d(()=>[s(p,{onGenerate:e.onGeneratePicture},null,8,["onGenerate"])]),result:d(()=>[s(u,{initializing:e.initializing,application:e.application,applications:e.applications,service:e.service,"need-apply":e.needApply,class:"mb-4",onRefresh:e.onGetApplication,onSelect:t[0]||(t[0]=f=>e.$store.dispatch("headshots/setApplication",f))},null,8,["initializing","application","applications","service","need-apply","onRefresh"]),s(i,{ref:"recentPanel",class:"panel recent",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const at=b($s,[["render",vs],["__scopeId","data-v-6cafffbd"]]);export{at as default};
1
+ import{F as C}from"./index.es-DAf85_c_.js";import{E as P}from"./index-CADSUEtD.js";import{E as G}from"./index-CEjOHMmS.js";import{d as v,H as l,E as r,z as A,C as s,y as d,D as n,q as o,F as a,I as g,O as I,N as T,x as E,Q as S,c as U,J as $}from"./vendor-vue-DU0w5ewx.js";import{E as b,b1 as D,a7 as z,ap as V}from"./index-BuYqOs8q.js";import{p as M}from"./pasteUploadMixin-BurWbGNQ.js";import{I as O,S as j}from"./ScrollList-ClLx5Ay2.js";import{I as B}from"./ImagePreview-B-kcZ7xf.js";import{E as q}from"./index-BcLxs5FR.js";import{E as w}from"./index-B_w2jnax.js";import{a as F,E as N}from"./index-B4eGti-_.js";import{E as L}from"./index-CrmvmSrr.js";import{E as H,a as J}from"./index-BV8tcem4.js";import{b as Q,a as K}from"./errorCode-Cqj9Td_Z.js";import{h as W}from"./headshots-Clx9yFtP.js";import{A as X}from"./Status-CvSbHrk3.js";import{C as Y}from"./CopyToClipboard-Bm9IiB5O.js";import{E as Z}from"./index-6bMysa7o.js";import{E as x,a as ee}from"./index-C0Am24Fv.js";import{l as se}from"./pagination-CcnL0MdN.js";import"./use-form-item-Bcf9wMdQ.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./index-Btke2Pu_.js";import"./index-BbT7wIiK.js";import"./typescript-Bu1ceUI1.js";import"./index-Dsf-WzCN.js";import"./_baseClone-CmG_Edvh.js";import"./_Uint8Array-B8owGMyd.js";import"./_initCloneObject-D15ri8PG.js";import"./isEqual-CSXiaW-q.js";import"./debounce-BIXA4vQu.js";import"./index-BOCCszA-.js";import"./strings-DigWlKo9.js";import"./isPlainObject-C_0Ser3m.js";const te=v({name:"LayoutHeadshots",components:{ElDrawer:G,ElButton:P,FontAwesomeIcon:C},data(){return{drawer:!1}}}),oe={class:"main flex flex-row flex-1"},ae={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ne={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,t,m,h,k,y){const p=n("font-awesome-icon"),u=n("el-button"),i=n("el-drawer");return o(),l("div",oe,[r("div",ae,[A(e.$slots,"config",{},void 0,!0)]),r("div",ne,[A(e.$slots,"result",{},void 0,!0)]),s(u,{circle:"",class:"menu",onClick:t[0]||(t[0]=c=>e.drawer=!0)},{default:d(()=>[s(p,{icon:"fa-solid fa-gear"})]),_:1}),s(i,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=c=>e.drawer=c),"with-header":!1,size:"340px",class:"drawer"},{default:d(()=>[A(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const le=b(te,[["render",ie],["__scopeId","data-v-202b355b"]]),re=v({name:"ImageUrlsInput",components:{ElUpload:q,ElButton:P,InfoIcon:O,ImagePreview:B,FontAwesomeIcon:C},mixins:[M],data(){return{fileList:[],uploadUrl:D()+"/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.headshots?.config?.image_urls},set(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})}}},mounted(){this.value||(this.value=void 0),this.onSetImageUrls()},methods:{onExceed(){w.warning(this.$t("headshots.message.uploadImageExceed"))},onError(){w.error(this.$t("headshots.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})},async onSuccess(){this.onSetImageUrls()}}}),ce={class:"field"},de={class:"title font-bold"},pe={class:"upload-wrapper"};function me(e,t,m,h,k,y){const p=n("image-preview"),u=n("font-awesome-icon"),i=n("el-button"),c=n("el-upload"),f=n("info-icon");return o(),l("div",ce,[r("h2",de,a(e.$t("headshots.name.endImageUrls")),1),r("div",pe,[s(c,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=_=>e.fileList=_),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value upload-wrapper",limit:2,multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:d(({file:_})=>[s(p,{url:_.url||_.response?.file_url,name:_.name,percentage:_.percentage,onRemove:R=>e.fileList.splice(e.fileList.indexOf(_),1)},null,8,["url","name","percentage","onRemove"])]),default:d(()=>[s(i,{size:"small",type:"primary",round:""},{default:d(()=>[s(u,{icon:"fa-solid fa-upload",class:"mr-1"}),g(" "+a(e.$t("headshots.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])]),s(f,{content:e.$t("headshots.description.endImageUrls"),class:"info"},null,8,["content"])])}const he=b(re,[["render",me],["__scopeId","data-v-ca56051e"]]),ue="fast",fe=v({name:"ModeSelector",components:{ElRadioButton:N,ElRadioGroup:F},data(){return{options:[{label:this.$t("headshots.button.fast"),value:"fast"},{label:this.$t("headshots.button.relax"),value:"relax"}]}},computed:{value:{get(){return this.$store.state.headshots.config?.mode},set(e){console.debug("set mode",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots.config,mode:e})}}},mounted(){this.value||(this.value=ue)}}),ge={class:"field"},_e={class:"title font-bold"};function $e(e,t,m,h,k,y){const p=n("el-radio-button"),u=n("el-radio-group");return o(),l("div",ge,[r("h2",_e,a(e.$t("headshots.name.mode")),1),s(u,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),class:"mode"},{default:d(()=>[(o(!0),l(I,null,T(e.options,i=>(o(),E(p,{key:i.value,label:i.value},{default:d(()=>[g(a(i.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const ve=b(fe,[["render",$e],["__scopeId","data-v-e7702494"]]),be=v({name:"StylizeSelector",components:{ElTabs:J,ElTabPane:H,ElImage:L},data(){return{tab:"styles",value:"",elements:{styles:{displayName:this.$t("headshots.styleCategory.styles"),items:[{image:"https://static.aipedias.com/aicamera/common/20241008/20241008202314260779439.png",label:this.$t("headshots.styleTag.malePportrait"),value:"male_portrait"},{image:"https://static.aipedias.com/aicamera/common/20241008/202410082022241e9755548.png",label:this.$t("headshots.styleTag.malePportrait2"),value:"male_portrait2"},{image:"https://static.aipedias.com/aicamera/common/20241101/20241101170130d78f66521.png",label:this.$t("headshots.styleTag.kindergarten"),value:"kindergarten"},{image:"https://static.aipedias.com/aicamera/common/20240923/20240923123233accf60398.webp",label:this.$t("headshots.styleTag.logoTshirt"),value:"logo_tshirt"},{image:"https://static.aipedias.com/aicamera/common/20241025/202410252012329472d0656.jpg",label:this.$t("headshots.styleTag.wedding"),value:"wedding"},{image:"https://static.aipedias.com/aicamera/common/20240915/20240915145045254931400.webp",label:this.$t("headshots.styleTag.businessPphoto"),value:"business_photo"},{image:"https://static.aipedias.com/aicamera/common/20240810/20240810194526040341795.jpg",label:this.$t("headshots.styleTag.bobSuit"),value:"bob_suit"},{image:"https://static.aipedias.com/aicamera/common/20240717/20240717152654e0b348173.webp",label:this.$t("headshots.styleTag.femalePortrait"),value:"female_portrait"}]}}}},watch:{value(e){console.debug("set template",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:e})}},mounted(){this.value||(this.value=""),console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})},methods:{onToggle(e){this.value===e?this.value="":this.value=e,console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})}}}),ke={class:"field"},ye=["onClick"],we={class:"name"};function Ie(e,t,m,h,k,y){const p=n("el-image"),u=n("el-tab-pane"),i=n("el-tabs");return o(),l("div",ke,[s(i,{modelValue:e.tab,"onUpdate:modelValue":t[0]||(t[0]=c=>e.tab=c)},{default:d(()=>[(o(!0),l(I,null,T(e.elements,(c,f)=>(o(),E(u,{key:f,label:c.displayName,name:f,class:"pane"},{default:d(()=>[(o(!0),l(I,null,T(c.items,(_,R)=>(o(),l("div",{key:R,class:S({item:!0,active:e.value===_.value}),onClick:bs=>e.onToggle(_.value)},[s(p,{src:_.image,fit:"fill",class:"preview"},null,8,["src"]),r("span",we,a(_.label),1)],10,ye))),128))]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])])}const Te=b(be,[["render",Ie],["__scopeId","data-v-be4bd25d"]]),Ee=v({name:"PresetPanel",components:{ModeSelector:ve,ImageUrlsInput:he,ElButton:P,FontAwesomeIcon:C,ElementsSelector:Te},emits:["generate"],computed:{config(){return this.$store.state.headshots?.config}},methods:{onGenerate(){this.$emit("generate")}}}),Se={class:"panel"},Ve={class:"config"},Ce={class:"actions"};function Ae(e,t,m,h,k,y){const p=n("elements-selector"),u=n("mode-selector"),i=n("image-urls-input"),c=n("font-awesome-icon"),f=n("el-button");return o(),l("div",Se,[r("div",Ve,[s(p,{class:"mb-4"}),s(u,{class:"mb-4"}),s(i,{class:"mb-4"}),r("div",Ce,[s(f,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[s(c,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+a(e.$t("headshots.button.generate")),1)]),_:1},8,["onClick"])])])])}const Pe=b(Ee,[["render",Ae],["__scopeId","data-v-848739f6"]]),Re=v({name:"ImageGallery",props:{modelValue:{type:Object,required:!0}},setup(e){return{images:U(()=>e.modelValue?.response?.data?.slice(0,2)||[]),viewImage:h=>{window.open(h,"_blank")}}}}),Le={class:"image-gallery"},Ge=["src"],Ue=["onClick"];function De(e,t,m,h,k,y){return o(),l("div",Le,[(o(!0),l(I,null,T(e.images,(p,u)=>(o(),l("div",{key:u,class:"image-container"},[r("img",{src:p.image_url,alt:"Image"},null,8,Ge),p.image_url?(o(),l("button",{key:0,class:"view-button",onClick:i=>e.viewImage(p.image_url)},a(e.$t("headshots.button.viewImage")),9,Ue)):$("",!0)]))),128))])}const ze=b(Re,[["render",De],["__scopeId","data-v-42f0a7be"]]),Me=v({name:"TaskPreview",components:{ElImage:L,CopyToClipboard:Y,FontAwesomeIcon:C,ElAlert:Z,ImageGallery:ze},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.headshots?.application},config(){return this.$store.state.headshots?.config}},methods:{onDownload(e,t){e.stopPropagation(),console.log("on download"),window.open(t,"_blank")},onReload(e){const t=e.target,m=new URL(t.src),h=m.searchParams.get("retry");if(!h)m.searchParams.set("retry","1");else if(parseInt(h)<2)m.searchParams.set("retry",(parseInt(h)+1).toString());else return;t.src=m.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),Oe={class:"preview"},je={class:"left"},Be={class:"main"},qe={class:"bot"},Fe={class:"datetime"},Ne={class:"info"},He={key:0,class:"prompt mt-2"},Je={key:0},Qe={key:1},Ke={key:0,class:S({content:!0,failed:!0})},We={class:"image-wrapper"},Xe={class:"description"},Ye={key:0,class:"description"},Ze={key:1,class:S({content:!0})},xe={class:"description"},es={class:"description"},ss={key:0,class:"description"},ts={class:"description"},os={key:2,class:S({content:!0})},as={class:"description"},ns={key:3,class:S({content:!0})},is={class:"description"};function ls(e,t,m,h,k,y){const p=n("el-image"),u=n("image-gallery"),i=n("font-awesome-icon"),c=n("copy-to-clipboard"),f=n("el-alert");return o(),l("div",Oe,[r("div",je,[s(p,{src:"https://cdn.acedata.cloud/isxyfw.png",class:"avatar"})]),r("div",Be,[r("div",qe,[g(a(e.$t("headshots.name.headshotsBot"))+" ",1),r("span",Fe,a(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Ne,[e.modelValue?.request?.template?(o(),l("p",He,[g(a(e.modelValue?.request?.template)+" ",1),e.modelValue?.response?$("",!0):(o(),l("span",Je," - ("+a(e.$t("headshots.status.pending"))+") ",1)),e.modelValue?.response?.status==="unknown"?(o(),l("span",Qe," - ("+a(e.$t("headshots.status.processing"))+") ",1)):$("",!0)])):$("",!0)]),e.modelValue?.response?.success===!0?(o(),l("div",Ke,[r("div",We,[s(u,{"model-value":e.modelValue},null,8,["model-value"])]),s(f,{closable:!1,class:"mt-2 success"},{default:d(()=>[r("p",Xe,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(o(),l("p",Ye,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+a(e.$t("headshots.name.elapsed"))+": "+a(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0)]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(o(),l("div",Ze,[s(f,{closable:!1,class:"failure"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",xe,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),r("p",es,[s(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failureReason"))+": "+a(e.modelValue?.response?.error?.message)+" ",1),s(c,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(o(),l("p",ss,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+a(e.$t("headshots.name.elapsed"))+": "+a(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),r("p",ts,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+a(e.$t("headshots.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?$("",!0):(o(),l("div",os,[s(f,{closable:!1,class:"info"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",as,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])),e.modelValue?.response?.status==="unknown"?(o(),l("div",ns,[s(f,{closable:!1,class:"info"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",is,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0)])])}const rs=b(Me,[["render",ls],["__scopeId","data-v-d286678e"]]),cs=v({name:"RecentPanel",components:{TaskPreview:rs,ElSkeleton:ee,ElSkeletonItem:x,ScrollList:j},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.headshots?.tasks,items:this.$store.state.headshots?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),ds={key:0,class:"tasks"},ps={class:"left"},ms={class:"main"},hs={key:1,class:"tasks"},us={key:2,class:"description"};function fs(e,t,m,h,k,y){const p=n("el-skeleton-item"),u=n("el-skeleton"),i=n("task-preview"),c=n("scroll-list");return o(),E(c,{ref:"scrollList",class:"panel recent",loading:e.loading,onReachTop:t[0]||(t[0]=f=>e.$emit("reach-top"))},{default:d(()=>[e.tasks?.items===void 0?(o(),l("div",ds,[(o(),l(I,null,T(3,f=>r("div",{key:f,class:"task placeholder"},[r("div",ps,[s(u,{animated:""},{template:d(()=>[s(p,{variant:"image",class:"avatar"})]),_:1})]),r("div",ms,[s(u,{animated:""},{template:d(()=>[s(p,{variant:"p",class:"title"}),s(p,{variant:"image",class:"icon"})]),_:1})])])),64))])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(o(),l("div",hs,[(o(!0),l(I,null,T(e.tasks?.items,(f,_)=>(o(),E(i,{key:_,"model-value":f,class:"preview"},null,8,["model-value"]))),128))])):$("",!0),e.tasks?.items?.length===0?(o(),l("p",us,a(e.$t("headshots.message.noTasks")),1)):$("",!0)]),_:1},8,["loading"])}const gs=b(cs,[["render",fs],["__scopeId","data-v-ffd55c16"]]),_s="https://webhook.acedata.cloud/headshots",$s=v({name:"HeadshotsIndex",components:{ConfigPanel:Pe,Layout:le,ApplicationStatus:X,RecentPanel:gs},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.headshots?.status?.getApplications===V.Request},tasksLoading(){return this.$store.state.headshots?.status?.getTasks===V.Request||this.fetchingTasks},service(){return this.$store.state.headshots.service},credential(){return this.$store.state.headshots.credential},config(){return this.$store.state.headshots.config},initializing(){return this.$store.state.headshots.status.getApplications===V.Request},needApply(){return this.$store.state.headshots.status.getApplications===V.Success&&!this.application},application(){return this.$store.state.headshots.application},applications(){return this.$store.state.headshots.applications},tasks(){return this.$store.state.headshots.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 se({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("headshots/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("headshots/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){z.create({application:this.application}).then(({data:e})=>{this.application=e,w.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===K&&w.error(this.$t("application.message.alreadyApplied"))})},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=5,createdAtMin:m,createdAtMax:h}=e||{};console.debug("limit",t,"createdAtMin",m,"createdAtMax",h),this.fetchingTasks=!0;try{await this.$store.dispatch("headshots/getTasks",{limit:t,createdAtMin:m,createdAtMax:h})}finally{this.fetchingTasks=!1}},async onGeneratePicture(){const e={...this.config,callback_url:_s},t=this.credential?.token;if(!t){console.error("no token specified");return}w.info(this.$t("headshots.message.startingTask")),W.generate(e,{token:t}).then(()=>{w.success(this.$t("headshots.message.startTaskSuccess")),this.$store.commit("headshots/setConfig",{config:void 0})}).catch(m=>{m?.response?.data?.error?.code===Q?w.error(this.$t("headshots.message.usedUp")):w.error(this.$t("headshots.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function vs(e,t,m,h,k,y){const p=n("config-panel"),u=n("application-status"),i=n("recent-panel"),c=n("layout");return o(),E(c,null,{config:d(()=>[s(p,{onGenerate:e.onGeneratePicture},null,8,["onGenerate"])]),result:d(()=>[s(u,{initializing:e.initializing,application:e.application,applications:e.applications,service:e.service,"need-apply":e.needApply,class:"mb-4",onRefresh:e.onGetApplication,onSelect:t[0]||(t[0]=f=>e.$store.dispatch("headshots/setApplication",f))},null,8,["initializing","application","applications","service","need-apply","onRefresh"]),s(i,{ref:"recentPanel",class:"panel recent",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const at=b($s,[["render",vs],["__scopeId","data-v-6cafffbd"]]);export{at as default};
@@ -1 +1 @@
1
- import{F as P}from"./index.es-B1lW1a9B.js";import{E as L}from"./index-jii325vi.js";import{E as O}from"./index-38G9IKZp.js";import{d as $,H as l,E as r,z as R,C as t,y as u,D as s,q as a,F as i,O as S,N as T,x as V,I as h,J as g,Q as U}from"./vendor-vue-DU0w5ewx.js";import{E as k,b1 as q,a7 as B,ap as C}from"./index-FTscF_cz.js";import{a as j,b as F,c as N,p as z}from"./pika-DF9AQtCB.js";import{I as D,S as K}from"./ScrollList-CHr2ER0d.js";import{E as H}from"./index-o4zhAWG6.js";import{E as G,a as M}from"./index-DKT9lpv-.js";import{a as J,E as Q}from"./index-B--xRYrq.js";import{p as W}from"./pasteUploadMixin-BurWbGNQ.js";import{I as X}from"./ImagePreview-B7ddO4K-.js";import{E as Y}from"./index-aO6Fi57H.js";import{E}from"./index-FF4WAJT-.js";import{E as Z}from"./index-DUswWNzD.js";import{C as x}from"./Consumption-D8o6ZGlD.js";import{a as ee}from"./price-D5TNZtWD.js";import{b as te,a as oe}from"./errorCode-Cqj9Td_Z.js";import{C as se}from"./CopyToClipboard-99x8TU_E.js";import{s as ae}from"./vue-plyr-BO2nlN4c.js";import{E as ne}from"./index-DTQtEf7n.js";import{E as ie}from"./index-B2l9Ai7a.js";import{E as le}from"./index-DdfzO8ET.js";import{B as re}from"./BotPlaceholder-808fKlrc.js";import{N as ce}from"./NoTasks-CzCoCJiJ.js";import{l as pe}from"./pagination-CcnL0MdN.js";import"./use-form-item-DDWqgx7q.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./validator-pb75_c-A.js";import"./index-DB1wHeLA.js";import"./index-BRydlsSG.js";import"./typescript-CUMR9uNq.js";import"./strings-DigWlKo9.js";import"./isEqual-BiGspMHU.js";import"./_Uint8Array-BWy8cKCo.js";import"./castArray-BX2YHThj.js";import"./debounce-rFO21RGd.js";import"./_baseIteratee-GCheQ423.js";import"./index-CJtfHm7C.js";import"./index-BdrHjNrn.js";import"./_baseClone-CVDR-yNh.js";import"./_initCloneObject-BnGf6y2Q.js";import"./index-RiVU3gTe.js";import"./index-CJJgickM.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(),l("div",ue,[r("div",me,[R(e.$slots,"config",{},void 0,!0)]),r("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:H,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=j)}}),$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(),l("div",$e,[r("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(),l("div",we,[r("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),l(S,null,T(e.options,n=>(a(),V(p,{key:n.value,label:n.label,value:n.value},{default:u(()=>[r("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:Q,ElRadioGroup:J},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=F)}}),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(),l("div",Ce,[r("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),l(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 Ue=k(Te,[["render",Le],["__scopeId","data-v-b72865fa"]]),Ae=$({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=N)}}),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(),l("div",Re,[r("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),l(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(Ae,[["render",Ge],["__scopeId","data-v-7b2e870a"]]),Oe=$({name:"ImageUrlInput",components:{ElUpload:Y,ElButton:L,InfoIcon:D,ImagePreview:X,FontAwesomeIcon:P},mixins:[W],data(){return{fileList:[],uploadUrl:q()+"/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 Fe(e,o,c,d,v,b){const p=s("image-preview"),m=s("font-awesome-icon"),n=s("el-button"),y=s("el-upload"),f=s("info-icon");return a(),l("div",qe,[r("h2",Be,i(e.$t("pika.name.imageUrl")),1),r("div",je,[t(y,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=_=>e.fileList=_),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:_})=>[t(p,{url:_.url||_.response?.file_url,name:_.name,percentage:_.percentage,onRemove:I=>e.fileList.splice(e.fileList.indexOf(_),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(f,{content:e.$t("pika.description.imageUrl"),class:"info"},null,8,["content"])])}const Ne=k(Oe,[["render",Fe],["__scopeId","data-v-a948772f"]]),ze="",Ke=$({name:"PromptInput",components:{ElInput:Z,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=ze)}}),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(),l("div",He,[r("div",Je,[r("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:Ne,ElButton:L,FontAwesomeIcon:P,Consumption:x,PromptInput:Xe,IngredientsSelector:be,IngredientsModelSelector:Ue,ModelSelector:Me,EffectSelector:Se},emits:["generate"],computed:{config(){return this.$store.state.pika?.config},consumption(){return ee(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"),f=s("image-url-input"),_=s("ingredients-model-selector"),I=s("consumption"),w=s("font-awesome-icon"),A=s("el-button");return a(),l("div",Ze,[r("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(f,{key:0,class:"mb-4"})):g("",!0),e.config?.ingredients?(a(),V(_,{key:1,class:"mb-4"})):g("",!0)]),r("div",et,[t(I,{value:e.consumption,service:e.service},null,8,["value","service"]),t(A,{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(),l("div",null,[t(p,{options:e.options,class:"video"},{default:u(()=>[r("video",{controls:"",crossorigin:"",playsinline:"","data-poster":e.modelValue?.image_url},[r("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:U({content:!0,failed:!0})},$t={class:"image-wrapper"},kt={key:0,class:U({operations:!0,"mt-2":!0})},vt={key:0,class:"description"},bt={class:"description"},yt={key:1,class:"description"},wt={key:1,class:U({content:!0})},Et={class:"description"},Vt={class:"description"},It={key:0,class:"description"},St={class:"description"},Tt={key:2,class:U({content:!0})},Ct={class:"description"};function Pt(e,o,c,d,v,b){const p=s("el-image"),m=s("VideoPlayer"),n=s("el-button"),y=s("el-tooltip"),f=s("font-awesome-icon"),_=s("copy-to-clipboard"),I=s("el-alert");return a(!0),l(S,null,T(e.videos,(w,A)=>(a(),l("div",{key:A,class:"preview"},[r("div",ct,[t(p,{src:"https://cdn.acedata.cloud/i80tgn.png",class:"avatar"})]),r("div",pt,[r("div",dt,[h(i(e.$t("pika.name.pikaBot"))+" ",1),r("span",ut,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",mt,[e.modelValue?.request?.prompt?(a(),l("p",ft,[h(i(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?g("",!0):(a(),l("span",_t," - ("+i(e.$t("pika.status.pending"))+") ",1)),w?.state==="processing"||w?.state==="pending"?(a(),l("span",ht," - ("+i(e.$t("pika.status.processing"))+") ",1)):g("",!0)])):g("",!0)]),e.modelValue?.response?.success===!0?(a(),l("div",gt,[r("div",$t,[t(m,{"model-value":w},null,8,["model-value"])]),w?(a(),l("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:Bt=>e.onDownload(w?.video_url)},{default:u(()=>[h(i(e.$t("pika.button.download")),1)]),_:1},8,["onClick"])):g("",!0)]),_:2},1032,["content"])])):g("",!0),t(I,{closable:!1,class:"mt-2 success"},{default:u(()=>[e.modelValue?.request?.model?(a(),l("p",vt,[t(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+i(e.$t("pika.name.model"))+": "+i(e.modelValue?.request?.model),1)])):g("",!0),r("p",bt,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(a(),l("p",yt,[t(f,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+i(e.$t("pika.name.elapsed"))+": "+i(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):g("",!0)]),_:1})])):g("",!0),e.modelValue?.response?.success===!1?(a(),l("div",wt,[t(I,{closable:!1,class:"failure"},{template:u(()=>[t(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+i(e.$t("pika.name.failure")),1)]),default:u(()=>[r("p",Et,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),r("p",Vt,[t(f,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+i(e.$t("pika.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),t(_,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(a(),l("p",It,[t(f,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+i(e.$t("pika.name.elapsed"))+": "+i(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):g("",!0),r("p",St,[t(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+i(e.$t("pika.name.traceId"))+": "+i(e.modelValue?.response?.trace_id)+" ",1),t(_,{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(),l("div",Tt,[t(I,{closable:!1,class:"info"},{template:u(()=>[t(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+i(e.$t("pika.name.failure")),1)]),default:u(()=>[r("p",Ct,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0)])]))),128)}const Lt=k(rt,[["render",Pt],["__scopeId","data-v-41fe2be6"]]),Ut=$({name:"RecentPanel",components:{TaskPreview:Lt,BotPlaceholder:re,NoTasks:ce,ScrollList:K},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?.()}}}),At={key:0},Rt={key:2,class:"w-full h-full flex items-center justify-center"};function Dt(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(),l(S,null,[e.tasks?.items===void 0?(a(),l("div",At,[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]=f=>e.$emit("reach-top"))},{default:u(()=>[(a(!0),l(S,null,T(e.tasks?.items,(f,_)=>(a(),V(m,{key:_,"model-value":f},null,8,["model-value"]))),128))]),_:1},8,["loading"])):g("",!0),e.tasks?.items?.length===0?(a(),l("div",Rt,[t(y)])):g("",!0)],64)}const Gt=k(Ut,[["render",Dt]]),Mt="https://webhook.acedata.cloud/pika",Ot=$({name:"PikaIndex",components:{ConfigPanel:ot,Layout:he,RecentPanel:Gt},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(){B.create({application:this.application}).then(({data:e})=>{this.application=e,E.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===oe&&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:Mt},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===te?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 qt(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 Do=k(Ot,[["render",qt],["__scopeId","data-v-456819d1"]]);export{Do as default};
1
+ import{F as P}from"./index.es-DAf85_c_.js";import{E as L}from"./index-CADSUEtD.js";import{E as O}from"./index-CEjOHMmS.js";import{d as $,H as l,E as r,z as R,C as t,y as u,D as s,q as a,F as i,O as S,N as T,x as V,I as h,J as g,Q as U}from"./vendor-vue-DU0w5ewx.js";import{E as k,b1 as q,a7 as B,ap as C}from"./index-BuYqOs8q.js";import{a as j,b as F,c as N,p as z}from"./pika-BYnVUjKG.js";import{I as D,S as K}from"./ScrollList-ClLx5Ay2.js";import{E as H}from"./index-DywgxFYh.js";import{E as G,a as M}from"./index-B4njNk04.js";import{a as J,E as Q}from"./index-B4eGti-_.js";import{p as W}from"./pasteUploadMixin-BurWbGNQ.js";import{I as X}from"./ImagePreview-B-kcZ7xf.js";import{E as Y}from"./index-BcLxs5FR.js";import{E}from"./index-B_w2jnax.js";import{E as Z}from"./index-BydGPbsc.js";import{C as x}from"./Consumption-HjIHVPfJ.js";import{a as ee}from"./price-BLnrGcOE.js";import{b as te,a as oe}from"./errorCode-Cqj9Td_Z.js";import{C as se}from"./CopyToClipboard-Bm9IiB5O.js";import{s as ae}from"./vue-plyr-BO2nlN4c.js";import{E as ne}from"./index-Btke2Pu_.js";import{E as ie}from"./index-6bMysa7o.js";import{E as le}from"./index-CrmvmSrr.js";import{B as re}from"./BotPlaceholder-pdWT9yaS.js";import{N as ce}from"./NoTasks-CAc7WMUu.js";import{l as pe}from"./pagination-CcnL0MdN.js";import"./use-form-item-Bcf9wMdQ.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./validator-BqhII7fg.js";import"./index-BbT7wIiK.js";import"./index-D9mxLTtD.js";import"./typescript-Bu1ceUI1.js";import"./strings-DigWlKo9.js";import"./isEqual-CSXiaW-q.js";import"./_Uint8Array-B8owGMyd.js";import"./castArray-BiIaTbnK.js";import"./debounce-BIXA4vQu.js";import"./_baseIteratee-DBmltUMm.js";import"./index-CidH52Gm.js";import"./index-Dsf-WzCN.js";import"./_baseClone-CmG_Edvh.js";import"./_initCloneObject-D15ri8PG.js";import"./index-BOCCszA-.js";import"./index-C0Am24Fv.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(),l("div",ue,[r("div",me,[R(e.$slots,"config",{},void 0,!0)]),r("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:H,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=j)}}),$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(),l("div",$e,[r("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(),l("div",we,[r("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),l(S,null,T(e.options,n=>(a(),V(p,{key:n.value,label:n.label,value:n.value},{default:u(()=>[r("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:Q,ElRadioGroup:J},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=F)}}),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(),l("div",Ce,[r("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),l(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 Ue=k(Te,[["render",Le],["__scopeId","data-v-b72865fa"]]),Ae=$({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=N)}}),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(),l("div",Re,[r("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),l(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(Ae,[["render",Ge],["__scopeId","data-v-7b2e870a"]]),Oe=$({name:"ImageUrlInput",components:{ElUpload:Y,ElButton:L,InfoIcon:D,ImagePreview:X,FontAwesomeIcon:P},mixins:[W],data(){return{fileList:[],uploadUrl:q()+"/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 Fe(e,o,c,d,v,b){const p=s("image-preview"),m=s("font-awesome-icon"),n=s("el-button"),y=s("el-upload"),f=s("info-icon");return a(),l("div",qe,[r("h2",Be,i(e.$t("pika.name.imageUrl")),1),r("div",je,[t(y,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=_=>e.fileList=_),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:_})=>[t(p,{url:_.url||_.response?.file_url,name:_.name,percentage:_.percentage,onRemove:I=>e.fileList.splice(e.fileList.indexOf(_),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(f,{content:e.$t("pika.description.imageUrl"),class:"info"},null,8,["content"])])}const Ne=k(Oe,[["render",Fe],["__scopeId","data-v-a948772f"]]),ze="",Ke=$({name:"PromptInput",components:{ElInput:Z,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=ze)}}),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(),l("div",He,[r("div",Je,[r("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:Ne,ElButton:L,FontAwesomeIcon:P,Consumption:x,PromptInput:Xe,IngredientsSelector:be,IngredientsModelSelector:Ue,ModelSelector:Me,EffectSelector:Se},emits:["generate"],computed:{config(){return this.$store.state.pika?.config},consumption(){return ee(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"),f=s("image-url-input"),_=s("ingredients-model-selector"),I=s("consumption"),w=s("font-awesome-icon"),A=s("el-button");return a(),l("div",Ze,[r("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(f,{key:0,class:"mb-4"})):g("",!0),e.config?.ingredients?(a(),V(_,{key:1,class:"mb-4"})):g("",!0)]),r("div",et,[t(I,{value:e.consumption,service:e.service},null,8,["value","service"]),t(A,{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(),l("div",null,[t(p,{options:e.options,class:"video"},{default:u(()=>[r("video",{controls:"",crossorigin:"",playsinline:"","data-poster":e.modelValue?.image_url},[r("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:U({content:!0,failed:!0})},$t={class:"image-wrapper"},kt={key:0,class:U({operations:!0,"mt-2":!0})},vt={key:0,class:"description"},bt={class:"description"},yt={key:1,class:"description"},wt={key:1,class:U({content:!0})},Et={class:"description"},Vt={class:"description"},It={key:0,class:"description"},St={class:"description"},Tt={key:2,class:U({content:!0})},Ct={class:"description"};function Pt(e,o,c,d,v,b){const p=s("el-image"),m=s("VideoPlayer"),n=s("el-button"),y=s("el-tooltip"),f=s("font-awesome-icon"),_=s("copy-to-clipboard"),I=s("el-alert");return a(!0),l(S,null,T(e.videos,(w,A)=>(a(),l("div",{key:A,class:"preview"},[r("div",ct,[t(p,{src:"https://cdn.acedata.cloud/i80tgn.png",class:"avatar"})]),r("div",pt,[r("div",dt,[h(i(e.$t("pika.name.pikaBot"))+" ",1),r("span",ut,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",mt,[e.modelValue?.request?.prompt?(a(),l("p",ft,[h(i(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?g("",!0):(a(),l("span",_t," - ("+i(e.$t("pika.status.pending"))+") ",1)),w?.state==="processing"||w?.state==="pending"?(a(),l("span",ht," - ("+i(e.$t("pika.status.processing"))+") ",1)):g("",!0)])):g("",!0)]),e.modelValue?.response?.success===!0?(a(),l("div",gt,[r("div",$t,[t(m,{"model-value":w},null,8,["model-value"])]),w?(a(),l("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:Bt=>e.onDownload(w?.video_url)},{default:u(()=>[h(i(e.$t("pika.button.download")),1)]),_:1},8,["onClick"])):g("",!0)]),_:2},1032,["content"])])):g("",!0),t(I,{closable:!1,class:"mt-2 success"},{default:u(()=>[e.modelValue?.request?.model?(a(),l("p",vt,[t(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+i(e.$t("pika.name.model"))+": "+i(e.modelValue?.request?.model),1)])):g("",!0),r("p",bt,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(a(),l("p",yt,[t(f,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+i(e.$t("pika.name.elapsed"))+": "+i(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):g("",!0)]),_:1})])):g("",!0),e.modelValue?.response?.success===!1?(a(),l("div",wt,[t(I,{closable:!1,class:"failure"},{template:u(()=>[t(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+i(e.$t("pika.name.failure")),1)]),default:u(()=>[r("p",Et,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),r("p",Vt,[t(f,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+i(e.$t("pika.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),t(_,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(a(),l("p",It,[t(f,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+i(e.$t("pika.name.elapsed"))+": "+i(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):g("",!0),r("p",St,[t(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+i(e.$t("pika.name.traceId"))+": "+i(e.modelValue?.response?.trace_id)+" ",1),t(_,{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(),l("div",Tt,[t(I,{closable:!1,class:"info"},{template:u(()=>[t(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+i(e.$t("pika.name.failure")),1)]),default:u(()=>[r("p",Ct,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0)])]))),128)}const Lt=k(rt,[["render",Pt],["__scopeId","data-v-41fe2be6"]]),Ut=$({name:"RecentPanel",components:{TaskPreview:Lt,BotPlaceholder:re,NoTasks:ce,ScrollList:K},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?.()}}}),At={key:0},Rt={key:2,class:"w-full h-full flex items-center justify-center"};function Dt(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(),l(S,null,[e.tasks?.items===void 0?(a(),l("div",At,[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]=f=>e.$emit("reach-top"))},{default:u(()=>[(a(!0),l(S,null,T(e.tasks?.items,(f,_)=>(a(),V(m,{key:_,"model-value":f},null,8,["model-value"]))),128))]),_:1},8,["loading"])):g("",!0),e.tasks?.items?.length===0?(a(),l("div",Rt,[t(y)])):g("",!0)],64)}const Gt=k(Ut,[["render",Dt]]),Mt="https://webhook.acedata.cloud/pika",Ot=$({name:"PikaIndex",components:{ConfigPanel:ot,Layout:he,RecentPanel:Gt},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(){B.create({application:this.application}).then(({data:e})=>{this.application=e,E.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===oe&&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:Mt},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===te?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 qt(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 Do=k(Ot,[["render",qt],["__scopeId","data-v-456819d1"]]);export{Do as default};
@@ -1 +1 @@
1
- import{F as L}from"./index.es-B1lW1a9B.js";import{E as D}from"./index-jii325vi.js";import{E as N}from"./index-38G9IKZp.js";import{d as b,H as r,E as i,z as U,C as o,y as u,D as s,q as a,F as l,O as V,N as A,x as y,Q as I,R as q,I as h,J as $,G as K,L as H}from"./vendor-vue-DU0w5ewx.js";import{E as k,b1 as W,ap as G}from"./index-FTscF_cz.js";import{a as P,b as z,c as S,d as M,e as Z,f as J,g as Q,h as Y,i as X}from"./sora-Dyuoglk1.js";import{E as C,a as R}from"./index-DKT9lpv-.js";import{p as x}from"./pasteUploadMixin-BurWbGNQ.js";import{I as F,S as ee}from"./ScrollList-CHr2ER0d.js";import{I as te}from"./ImagePreview-B7ddO4K-.js";import{E as oe}from"./index-aO6Fi57H.js";import{E as T}from"./index-FF4WAJT-.js";import{C as se}from"./Consumption-D8o6ZGlD.js";import{E as ae}from"./index-DUswWNzD.js";import{a as ne}from"./price-D5TNZtWD.js";import{b as le}from"./errorCode-Cqj9Td_Z.js";import{s as re}from"./sora-B2wrmmta.js";import{C as ie}from"./CopyToClipboard-99x8TU_E.js";import{V as ce}from"./VideoPlayer-BJPVVH4v.js";import{E as de}from"./index-DTQtEf7n.js";import{E as ue}from"./index-B2l9Ai7a.js";import{E as pe}from"./index-DdfzO8ET.js";import{B as me}from"./BotPlaceholder-808fKlrc.js";import{N as fe}from"./NoTasks-CzCoCJiJ.js";import{l as _e}from"./pagination-CcnL0MdN.js";import"./use-form-item-DDWqgx7q.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./index-BRydlsSG.js";import"./typescript-CUMR9uNq.js";import"./index-DB1wHeLA.js";import"./strings-DigWlKo9.js";import"./isEqual-BiGspMHU.js";import"./_Uint8Array-BWy8cKCo.js";import"./castArray-BX2YHThj.js";import"./debounce-rFO21RGd.js";import"./_baseIteratee-GCheQ423.js";import"./index-CJtfHm7C.js";import"./index-BdrHjNrn.js";import"./_baseClone-CVDR-yNh.js";import"./_initCloneObject-BnGf6y2Q.js";import"./index-RiVU3gTe.js";import"./vue-plyr-BO2nlN4c.js";import"./index-CJJgickM.js";const he=b({name:"LayoutSora",components:{ElDrawer:N,ElButton:D,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"),n=s("el-drawer");return a(),r("div",$e,[i("div",ge,[U(e.$slots,"config",{},void 0,!0)]),i("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(n,{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:C},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:Z,label:"sora-2"},{value:J,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=P)}}),ye={class:"field"},Se={class:"title font-bold"};function Ve(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return a(),r("div",ye,[i("h2",Se,l(e.$t("sora.name.model")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(a(!0),r(V,null,A(e.options,n=>(a(),y(c,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ee=k(we,[["render",Ve],["__scopeId","data-v-0cb7913d"]]),Te=b({name:"ActionSelector",components:{ElSelect:R,ElOption:C},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=Q)}}),Ie={class:"field"},Ae={class:"title font-bold"},Le={class:"float-left"};function De(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return a(),r("div",Ie,[i("h2",Ae,l(e.$t("sora.name.action")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("sora.placeholder.select"),clearable:""},{default:u(()=>[(a(!0),r(V,null,A(e.options,n=>(a(),y(c,{key:n.value,label:n.label,value:n.value},{default:u(()=>[i("span",Le,l(n.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ce=k(Te,[["render",De],["__scopeId","data-v-7b82fa7f"]]),Re=b({name:"DurationSelector",components:{ElSelect:R,ElOption:C},computed:{model(){return this.$store.state.sora?.config?.model||P},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"},Ge={class:"title font-bold"};function Pe(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return a(),r("div",Oe,[i("div",Ue,[i("h2",Ge,l(e.$t("sora.name.duration")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(a(!0),r(V,null,A(e.optionsForModel,n=>(a(),y(c,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])])}const ze=k(Re,[["render",Pe],["__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=Y)}}),Fe={class:"text-sm font-bold mb-2 block"},Be={class:"items"},je=["onClick"],Ne={class:"name"};function qe(e,t,p,m,g,v){return a(),r("div",null,[i("span",Fe,l(e.$t("sora.name.orientation")),1),i("div",Be,[(a(!0),r(V,null,A(e.options,(c,d)=>(a(),r("div",{key:d,class:I({active:e.active===d,item:!0}),onClick:n=>e.value=c.value},[i("div",{class:I(["preview",c.value])},[i("div",{class:"rect",style:q({width:c.width+"px",height:c.height+"px"})},null,4)],2),i("p",Ne,l(e.$t(c.labelKey)),1)],10,je))),128))])])}const Ke=k(Me,[["render",qe],["__scopeId","data-v-a20be6d9"]]),He=b({name:"StartEndImage",components:{ElUpload:oe,ElButton:D,InfoIcon:F,FontAwesomeIcon:L,ImagePreview:te},mixins:[x],emits:["change"],data(){return{fileList:[],uploadUrl:W()+"/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()}}}),We={class:"relative"},Ze={class:"flex justify-between"},Je={class:"flex justify-start items-center"},Qe={class:"text-sm font-bold"};function Ye(e,t,p,m,g,v){const c=s("info-icon"),d=s("image-preview"),n=s("font-awesome-icon"),w=s("el-button"),_=s("el-upload");return a(),r("div",We,[i("div",Ze,[i("div",Je,[i("span",Qe,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?(a(),y(d,{key:0,url:f.url,name:f.name,percentage:f.percentage,onRemove:E=>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(n,{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(He,[["render",Ye],["__scopeId","data-v-a942382b"]]),xe=e=>e&&e.charAt(0).toUpperCase()+e.slice(1),et=b({name:"SizeSelector",components:{ElSelect:R,ElOption:C},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 a(),r("div",tt,[i("div",ot,[i("h2",st,l(e.$t("sora.name.size")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(a(!0),r(V,null,A(e.options,n=>(a(),y(c,{key:n.value,label:n.label,value:n.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:ae,InfoIcon:F},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 a(),r("div",it,[i("div",ct,[i("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]=n=>e.prompt=n),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:D,Consumption:se,FontAwesomeIcon:L,PromptInput:pt,ModelSelector:Ee,StartEndImage:Xe,SizeSelector:nt,ActionSelector:Ce,OrientationSelector:Ke,DurationSelector:ze},emits:["generate"],computed:{config(){return this.$store.state.sora?.config},consumption(){return ne(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"),n=s("duration-selector"),w=s("size-selector"),_=s("orientation-selector"),f=s("prompt-input"),E=s("start-end-image"),O=s("consumption"),B=s("font-awesome-icon"),j=s("el-button");return a(),r("div",ft,[i("div",_t,[o(c,{class:"mb-4"}),o(d,{class:"mb-4"}),o(n,{class:"mb-4"}),o(w,{class:"mb-4"}),o(_,{class:"mb-4"}),o(f,{class:"mb-4"}),K(o(E,{class:"mb-2"},null,512),[[H,e.config?.action==="image2video"]])]),i("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(B,{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:D},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"},Vt={class:"info"},Et={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"},Dt={key:1,class:I({operations:!0,"mt-2":!0})},Ct={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Rt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ot={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ut={key:1,class:I({content:!0})},Gt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Pt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},zt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Mt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ft={key:2,class:I({content:!0})},Bt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},jt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Nt(e,t,p,m,g,v){const c=s("el-image"),d=s("video-player"),n=s("el-button"),w=s("el-tooltip"),_=s("font-awesome-icon"),f=s("copy-to-clipboard"),E=s("el-alert");return a(),r("div",bt,[i("div",kt,[o(c,{src:"https://cdn.acedata.cloud/z5id1u.png",class:"avatar"})]),i("div",wt,[i("div",yt,[h(l(e.$t("sora.name.soraBot"))+" ",1),i("span",St,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),i("div",Vt,[e.modelValue?.request?.prompt?(a(),r("p",Et,[h(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?$("",!0):(a(),r("span",Tt," - ("+l(e.$t("sora.status.pending"))+") ",1)),Array.isArray(e.modelValue?.response?.data)&&e.modelValue?.response?.data[0]?.state==="pending"?(a(),r("span",It," - ("+l(e.$t("sora.status.processing"))+") ",1)):$("",!0)])):$("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(a(),r("div",At,[e.modelValue?.response?.data[0]?.video_url?(a(),r("div",Lt,[o(d,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):$("",!0),e.modelValue?.response.success?(a(),r("div",Dt,[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?(a(),y(n,{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(E,{closable:!1,class:"mt-2 success"},{default:u(()=>[i("p",Ct,[o(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+l(e.$t("sora.name.model"))+": "+l(e.modelValue?.request?.model),1)]),i("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"])]),e.modelValue?.elapsed?(a(),r("p",Ot,[o(_,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+l(e.$t("sora.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0)]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(a(),r("div",Ut,[o(E,{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(()=>[i("p",Gt,[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"])]),i("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?.elapsed?(a(),r("p",zt,[o(_,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+l(e.$t("sora.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),e.modelValue?.response?.trace_id?(a(),r("p",Mt,[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?(a(),r("div",Ft,[o(E,{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(()=>[i("p",Bt,[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?(a(),r("p",jt,[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 qt=k(vt,[["render",Nt],["__scopeId","data-v-fa5225eb"]]),Kt=b({name:"RecentPanel",components:{TaskPreview:qt,NoTasks:fe,BotPlaceholder:me,ScrollList:ee},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?.()}}}),Ht={key:0},Wt={key:2,class:"w-full h-full flex items-center justify-center"};function Zt(e,t,p,m,g,v){const c=s("bot-placeholder"),d=s("task-preview"),n=s("scroll-list"),w=s("no-tasks");return a(),r(V,null,[e.tasks?.items===void 0?(a(),r("div",Ht,[o(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),y(n,{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(()=>[(a(!0),r(V,null,A(e.tasks?.items,(_,f)=>(a(),y(d,{key:f,"model-value":_},null,8,["model-value"]))),128))]),_:1},8,["loading"])):$("",!0),e.tasks?.items?.length===0?(a(),r("div",Wt,[o(w)])):$("",!0)],64)}const Jt=k(Kt,[["render",Zt]]),Qt="https://webhook.acedata.cloud/sora",Yt=b({name:"SoraIndex",components:{ConfigPanel:gt,Layout:ke,RecentPanel:Jt},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.sora?.status?.getApplications===G.Request},tasksLoading(){return this.$store.state.sora?.status?.getTasks===G.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")),re.generate(e,{token:t}).then(()=>{T.success(this.$t("sora.message.startTaskSuccess"))}).catch(p=>{p?.response?.data?.error?.code===le?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 Xt(e,t,p,m,g,v){const c=s("config-panel"),d=s("recent-panel"),n=s("layout");return a(),y(n,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 Ho=k(Yt,[["render",Xt]]);export{Ho as default};
1
+ import{F as L}from"./index.es-DAf85_c_.js";import{E as D}from"./index-CADSUEtD.js";import{E as N}from"./index-CEjOHMmS.js";import{d as b,H as r,E as i,z as U,C as o,y as u,D as s,q as a,F as l,O as V,N as A,x as y,Q as I,R as q,I as h,J as $,G as K,L as H}from"./vendor-vue-DU0w5ewx.js";import{E as k,b1 as W,ap as G}from"./index-BuYqOs8q.js";import{a as P,b as z,c as S,d as M,e as Z,f as J,g as Q,h as Y,i as X}from"./sora-Dyuoglk1.js";import{E as C,a as R}from"./index-B4njNk04.js";import{p as x}from"./pasteUploadMixin-BurWbGNQ.js";import{I as F,S as ee}from"./ScrollList-ClLx5Ay2.js";import{I as te}from"./ImagePreview-B-kcZ7xf.js";import{E as oe}from"./index-BcLxs5FR.js";import{E as T}from"./index-B_w2jnax.js";import{C as se}from"./Consumption-HjIHVPfJ.js";import{E as ae}from"./index-BydGPbsc.js";import{a as ne}from"./price-BLnrGcOE.js";import{b as le}from"./errorCode-Cqj9Td_Z.js";import{s as re}from"./sora-rDGW7zC2.js";import{C as ie}from"./CopyToClipboard-Bm9IiB5O.js";import{V as ce}from"./VideoPlayer-DHTu44Da.js";import{E as de}from"./index-Btke2Pu_.js";import{E as ue}from"./index-6bMysa7o.js";import{E as pe}from"./index-CrmvmSrr.js";import{B as me}from"./BotPlaceholder-pdWT9yaS.js";import{N as fe}from"./NoTasks-CAc7WMUu.js";import{l as _e}from"./pagination-CcnL0MdN.js";import"./use-form-item-Bcf9wMdQ.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./index-D9mxLTtD.js";import"./typescript-Bu1ceUI1.js";import"./index-BbT7wIiK.js";import"./strings-DigWlKo9.js";import"./isEqual-CSXiaW-q.js";import"./_Uint8Array-B8owGMyd.js";import"./castArray-BiIaTbnK.js";import"./debounce-BIXA4vQu.js";import"./_baseIteratee-DBmltUMm.js";import"./index-CidH52Gm.js";import"./index-Dsf-WzCN.js";import"./_baseClone-CmG_Edvh.js";import"./_initCloneObject-D15ri8PG.js";import"./index-BOCCszA-.js";import"./vue-plyr-BO2nlN4c.js";import"./index-C0Am24Fv.js";const he=b({name:"LayoutSora",components:{ElDrawer:N,ElButton:D,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"),n=s("el-drawer");return a(),r("div",$e,[i("div",ge,[U(e.$slots,"config",{},void 0,!0)]),i("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(n,{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:C},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:Z,label:"sora-2"},{value:J,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=P)}}),ye={class:"field"},Se={class:"title font-bold"};function Ve(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return a(),r("div",ye,[i("h2",Se,l(e.$t("sora.name.model")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(a(!0),r(V,null,A(e.options,n=>(a(),y(c,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ee=k(we,[["render",Ve],["__scopeId","data-v-0cb7913d"]]),Te=b({name:"ActionSelector",components:{ElSelect:R,ElOption:C},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=Q)}}),Ie={class:"field"},Ae={class:"title font-bold"},Le={class:"float-left"};function De(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return a(),r("div",Ie,[i("h2",Ae,l(e.$t("sora.name.action")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("sora.placeholder.select"),clearable:""},{default:u(()=>[(a(!0),r(V,null,A(e.options,n=>(a(),y(c,{key:n.value,label:n.label,value:n.value},{default:u(()=>[i("span",Le,l(n.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ce=k(Te,[["render",De],["__scopeId","data-v-7b82fa7f"]]),Re=b({name:"DurationSelector",components:{ElSelect:R,ElOption:C},computed:{model(){return this.$store.state.sora?.config?.model||P},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"},Ge={class:"title font-bold"};function Pe(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return a(),r("div",Oe,[i("div",Ue,[i("h2",Ge,l(e.$t("sora.name.duration")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(a(!0),r(V,null,A(e.optionsForModel,n=>(a(),y(c,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])])}const ze=k(Re,[["render",Pe],["__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=Y)}}),Fe={class:"text-sm font-bold mb-2 block"},Be={class:"items"},je=["onClick"],Ne={class:"name"};function qe(e,t,p,m,g,v){return a(),r("div",null,[i("span",Fe,l(e.$t("sora.name.orientation")),1),i("div",Be,[(a(!0),r(V,null,A(e.options,(c,d)=>(a(),r("div",{key:d,class:I({active:e.active===d,item:!0}),onClick:n=>e.value=c.value},[i("div",{class:I(["preview",c.value])},[i("div",{class:"rect",style:q({width:c.width+"px",height:c.height+"px"})},null,4)],2),i("p",Ne,l(e.$t(c.labelKey)),1)],10,je))),128))])])}const Ke=k(Me,[["render",qe],["__scopeId","data-v-a20be6d9"]]),He=b({name:"StartEndImage",components:{ElUpload:oe,ElButton:D,InfoIcon:F,FontAwesomeIcon:L,ImagePreview:te},mixins:[x],emits:["change"],data(){return{fileList:[],uploadUrl:W()+"/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()}}}),We={class:"relative"},Ze={class:"flex justify-between"},Je={class:"flex justify-start items-center"},Qe={class:"text-sm font-bold"};function Ye(e,t,p,m,g,v){const c=s("info-icon"),d=s("image-preview"),n=s("font-awesome-icon"),w=s("el-button"),_=s("el-upload");return a(),r("div",We,[i("div",Ze,[i("div",Je,[i("span",Qe,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?(a(),y(d,{key:0,url:f.url,name:f.name,percentage:f.percentage,onRemove:E=>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(n,{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(He,[["render",Ye],["__scopeId","data-v-a942382b"]]),xe=e=>e&&e.charAt(0).toUpperCase()+e.slice(1),et=b({name:"SizeSelector",components:{ElSelect:R,ElOption:C},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 a(),r("div",tt,[i("div",ot,[i("h2",st,l(e.$t("sora.name.size")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=n=>e.value=n),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(a(!0),r(V,null,A(e.options,n=>(a(),y(c,{key:n.value,label:n.label,value:n.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:ae,InfoIcon:F},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 a(),r("div",it,[i("div",ct,[i("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]=n=>e.prompt=n),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:D,Consumption:se,FontAwesomeIcon:L,PromptInput:pt,ModelSelector:Ee,StartEndImage:Xe,SizeSelector:nt,ActionSelector:Ce,OrientationSelector:Ke,DurationSelector:ze},emits:["generate"],computed:{config(){return this.$store.state.sora?.config},consumption(){return ne(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"),n=s("duration-selector"),w=s("size-selector"),_=s("orientation-selector"),f=s("prompt-input"),E=s("start-end-image"),O=s("consumption"),B=s("font-awesome-icon"),j=s("el-button");return a(),r("div",ft,[i("div",_t,[o(c,{class:"mb-4"}),o(d,{class:"mb-4"}),o(n,{class:"mb-4"}),o(w,{class:"mb-4"}),o(_,{class:"mb-4"}),o(f,{class:"mb-4"}),K(o(E,{class:"mb-2"},null,512),[[H,e.config?.action==="image2video"]])]),i("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(B,{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:D},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"},Vt={class:"info"},Et={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"},Dt={key:1,class:I({operations:!0,"mt-2":!0})},Ct={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Rt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ot={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ut={key:1,class:I({content:!0})},Gt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Pt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},zt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Mt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ft={key:2,class:I({content:!0})},Bt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},jt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Nt(e,t,p,m,g,v){const c=s("el-image"),d=s("video-player"),n=s("el-button"),w=s("el-tooltip"),_=s("font-awesome-icon"),f=s("copy-to-clipboard"),E=s("el-alert");return a(),r("div",bt,[i("div",kt,[o(c,{src:"https://cdn.acedata.cloud/z5id1u.png",class:"avatar"})]),i("div",wt,[i("div",yt,[h(l(e.$t("sora.name.soraBot"))+" ",1),i("span",St,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),i("div",Vt,[e.modelValue?.request?.prompt?(a(),r("p",Et,[h(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?$("",!0):(a(),r("span",Tt," - ("+l(e.$t("sora.status.pending"))+") ",1)),Array.isArray(e.modelValue?.response?.data)&&e.modelValue?.response?.data[0]?.state==="pending"?(a(),r("span",It," - ("+l(e.$t("sora.status.processing"))+") ",1)):$("",!0)])):$("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(a(),r("div",At,[e.modelValue?.response?.data[0]?.video_url?(a(),r("div",Lt,[o(d,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):$("",!0),e.modelValue?.response.success?(a(),r("div",Dt,[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?(a(),y(n,{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(E,{closable:!1,class:"mt-2 success"},{default:u(()=>[i("p",Ct,[o(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+l(e.$t("sora.name.model"))+": "+l(e.modelValue?.request?.model),1)]),i("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"])]),e.modelValue?.elapsed?(a(),r("p",Ot,[o(_,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+l(e.$t("sora.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0)]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(a(),r("div",Ut,[o(E,{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(()=>[i("p",Gt,[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"])]),i("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?.elapsed?(a(),r("p",zt,[o(_,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+l(e.$t("sora.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),e.modelValue?.response?.trace_id?(a(),r("p",Mt,[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?(a(),r("div",Ft,[o(E,{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(()=>[i("p",Bt,[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?(a(),r("p",jt,[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 qt=k(vt,[["render",Nt],["__scopeId","data-v-fa5225eb"]]),Kt=b({name:"RecentPanel",components:{TaskPreview:qt,NoTasks:fe,BotPlaceholder:me,ScrollList:ee},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?.()}}}),Ht={key:0},Wt={key:2,class:"w-full h-full flex items-center justify-center"};function Zt(e,t,p,m,g,v){const c=s("bot-placeholder"),d=s("task-preview"),n=s("scroll-list"),w=s("no-tasks");return a(),r(V,null,[e.tasks?.items===void 0?(a(),r("div",Ht,[o(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),y(n,{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(()=>[(a(!0),r(V,null,A(e.tasks?.items,(_,f)=>(a(),y(d,{key:f,"model-value":_},null,8,["model-value"]))),128))]),_:1},8,["loading"])):$("",!0),e.tasks?.items?.length===0?(a(),r("div",Wt,[o(w)])):$("",!0)],64)}const Jt=k(Kt,[["render",Zt]]),Qt="https://webhook.acedata.cloud/sora",Yt=b({name:"SoraIndex",components:{ConfigPanel:gt,Layout:ke,RecentPanel:Jt},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.sora?.status?.getApplications===G.Request},tasksLoading(){return this.$store.state.sora?.status?.getTasks===G.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")),re.generate(e,{token:t}).then(()=>{T.success(this.$t("sora.message.startTaskSuccess"))}).catch(p=>{p?.response?.data?.error?.code===le?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 Xt(e,t,p,m,g,v){const c=s("config-panel"),d=s("recent-panel"),n=s("layout");return a(),y(n,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 Ho=k(Yt,[["render",Xt]]);export{Ho as default};
@@ -1 +1 @@
1
- import{F as L}from"./index.es-B1lW1a9B.js";import{E as V}from"./index-jii325vi.js";import{E as R}from"./index-38G9IKZp.js";import{d as b,H as i,E as r,z as T,C as t,y as d,D as a,q as s,F as o,O as C,N as G,x as v,I as u,J as m,M as A,Q as S}from"./vendor-vue-DU0w5ewx.js";import{E as k,b1 as M,ap as U}from"./index-FTscF_cz.js";import{a as D}from"./hailuo-C8Dw-0xR.js";import{E as j,a as B}from"./index-DKT9lpv-.js";import{p as q}from"./pasteUploadMixin-BurWbGNQ.js";import{I as P,S as F}from"./ScrollList-CHr2ER0d.js";import{I as O}from"./ImagePreview-B7ddO4K-.js";import{E as z}from"./index-aO6Fi57H.js";import{E}from"./index-FF4WAJT-.js";import{E as N}from"./index-DUswWNzD.js";import{C as H}from"./Consumption-D8o6ZGlD.js";import{a as J}from"./price-D5TNZtWD.js";import{b as K}from"./errorCode-Cqj9Td_Z.js";import{h as Q}from"./hailuo-CpEa1UDZ.js";import{C as W}from"./CopyToClipboard-99x8TU_E.js";import{V as X}from"./VideoPlayer-BJPVVH4v.js";import{E as Y}from"./index-DTQtEf7n.js";import{E as Z}from"./index-B2l9Ai7a.js";import{E as x}from"./index-DdfzO8ET.js";import{B as ee}from"./BotPlaceholder-808fKlrc.js";import{N as te}from"./NoTasks-CzCoCJiJ.js";import{l as oe}from"./pagination-CcnL0MdN.js";import"./use-form-item-DDWqgx7q.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./index-BRydlsSG.js";import"./typescript-CUMR9uNq.js";import"./index-DB1wHeLA.js";import"./strings-DigWlKo9.js";import"./isEqual-BiGspMHU.js";import"./_Uint8Array-BWy8cKCo.js";import"./castArray-BX2YHThj.js";import"./debounce-rFO21RGd.js";import"./_baseIteratee-GCheQ423.js";import"./index-CJtfHm7C.js";import"./index-BdrHjNrn.js";import"./_baseClone-CVDR-yNh.js";import"./_initCloneObject-BnGf6y2Q.js";import"./index-RiVU3gTe.js";import"./vue-plyr-BO2nlN4c.js";import"./index-CJJgickM.js";const se=b({name:"LayoutHailuo",components:{ElDrawer:R,ElButton:V,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,n,f,g,w,y){const p=a("font-awesome-icon"),h=a("el-button"),c=a("el-drawer");return s(),i("div",ae,[r("div",ne,[T(e.$slots,"config",{},void 0,!0)]),r("div",le,[T(e.$slots,"result",{},void 0,!0)]),t(h,{circle:"",class:"menu",onClick:n[0]||(n[0]=_=>e.drawer=!0)},{default:d(()=>[t(p,{icon:"fa-solid fa-magic"})]),_:1}),t(c,{modelValue:e.drawer,"onUpdate:modelValue":n[1]||(n[1]=_=>e.drawer=_),direction:"ltr","with-header":!1,size:"340px"},{default:d(()=>[T(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:B,ElOption:j},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=D)}}),de={class:"field"},ue={class:"title font-bold"},me={class:"float-left"};function pe(e,n,f,g,w,y){const p=a("el-option"),h=a("el-select");return s(),i("div",de,[r("h2",ue,o(e.$t("hailuo.name.model")),1),t(h,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=c=>e.value=c),class:"value",placeholder:e.$t("hailuo.placeholder.select"),clearable:""},{default:d(()=>[(s(!0),i(C,null,G(e.options,c=>(s(),v(p,{key:c.value,label:c.label,value:c.value},{default:d(()=>[r("span",me,o(c.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:z,ElButton:V,InfoIcon:P,ImagePreview:O},mixins:[q],data(){return{fileList:[],uploadUrl:M()+"/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,n,f,g,w,y){const p=a("info-icon"),h=a("image-preview"),c=a("el-button"),_=a("el-upload");return s(),i("div",ge,[r("div",_e,[r("div",$e,[r("span",ve,o(e.$t("hailuo.name.startImageUrl")),1),t(p,{content:e.$t("hailuo.description.startImageUrl"),class:"info"},null,8,["content"])])]),t(_,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":n[0]||(n[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:d(({file:l})=>[l.url&&l.percentage!==void 0?(s(),v(h,{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"])):m("",!0)]),default:d(()=>[t(c,{size:"small",type:"primary",class:"btn btn-upload",round:""},{default:d(()=>[u(o(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:N,InfoIcon:P},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"},Ve={class:"box"},Se={class:"title font-bold"};function Ie(e,n,f,g,w,y){const p=a("info-icon"),h=a("el-input");return s(),i("div",Ee,[r("div",Ve,[r("h2",Se,o(e.$t("hailuo.name.prompt")),1),t(p,{content:e.$t("hailuo.description.prompt"),class:"info"},null,8,["content"])]),t(h,{modelValue:e.prompt,"onUpdate:modelValue":n[0]||(n[0]=c=>e.prompt=c),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("hailuo.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Te=k(ye,[["render",Ie],["__scopeId","data-v-c601bcba"]]),Ce=b({name:"PresetPanel",components:{ElButton:V,FontAwesomeIcon:L,PromptInput:Te,StartImageUrlInput:ke,ModelSelector:he,Consumption:H},emits:["generate"],computed:{config(){return this.$store.state.hailuo?.config},consumption(){return J(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"},Ge={class:"flex flex-col items-center justify-center px-5 pb-5"};function Pe(e,n,f,g,w,y){const p=a("prompt-input"),h=a("model-selector"),c=a("start-image-url-input"),_=a("consumption"),l=a("font-awesome-icon"),$=a("el-button");return s(),i("div",Le,[r("div",Ue,[t(p,{class:"mb-4"}),t(h,{class:"mb-4"}),e.config?.model==="minimax-i2v"?(s(),v(c,{key:0,class:"mb-2"})):m("",!0)]),r("div",Ge,[t(_,{value:e.consumption,service:e.service},null,8,["value","service"]),e.config?.video_url!==void 0||e.config?.custom?(s(),v($,{key:0,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[t(l,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("hailuo.button.extend")),1)]),_:1},8,["onClick"])):(s(),v($,{key:1,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[t(l,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("hailuo.button.generate")),1)]),_:1},8,["onClick"]))])])}const Re=k(Ce,[["render",Pe]]),Ae=b({name:"TaskPreview",components:{ElImage:x,CopyToClipboard:W,FontAwesomeIcon:L,ElAlert:Z,VideoPlayer:X,ElTooltip:Y,ElButton:V},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"},De={class:"left"},je={class:"main"},Be={class:"bot"},qe={class:"datetime"},Fe={class:"info"},Oe={key:0,class:"prompt mt-2"},ze={key:0},Ne={key:1},He={key:0,class:S({content:!0,failed:!0})},Je={key:0,class:"mb-4"},Ke={key:1,class:S({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-2"},Xe={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ye={key:1,class:S({content:!0})},Ze={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},xe={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},et={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},tt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ot={key:2,class:S({content:!0})},st={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function at(e,n,f,g,w,y){const p=a("el-image"),h=a("video-player"),c=a("el-button"),_=a("el-tooltip"),l=a("font-awesome-icon"),$=a("copy-to-clipboard"),I=a("el-alert");return s(),i("div",Me,[r("div",De,[t(p,{src:"https://cdn.acedata.cloud/0qg4gp.png",class:"avatar"})]),r("div",je,[r("div",Be,[u(o(e.$t("hailuo.name.hailuoBot"))+" ",1),r("span",qe,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Fe,[e.modelValue?.request?.prompt?(s(),i("p",Oe,[u(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?m("",!0):(s(),i("span",ze," - ("+o(e.$t("hailuo.status.pending"))+") ",1)),e.video?.state==="processing"||e.video?.state==="pending"||e.video?.state==="running"?(s(),i("span",Ne," - ("+o(e.$t("hailuo.status.processing"))+") ",1)):m("",!0)])):m("",!0)]),e.modelValue?.response?.success===!0?(s(),i("div",He,[e.video?.video_url?(s(),i("div",Je,[t(h,{src:e.video?.video_url},null,8,["src"])])):m("",!0),e.video?(s(),i("div",Ke,[t(_,{class:"box-item",effect:"dark",content:e.$t("hailuo.message.downloadVideo"),placement:"top-start"},{default:d(()=>[e.video?.video_url?(s(),v(c,{key:0,type:"info",size:"small",class:"mb-2",onClick:n[0]||(n[0]=A(ht=>e.onDownload(e.video?.video_url),["stop"]))},{default:d(()=>[u(o(e.$t("hailuo.button.download")),1)]),_:1})):m("",!0)]),_:1},8,["content"])])):m("",!0),t(I,{closable:!1,class:"mt-2 success"},{default:d(()=>[e.modelValue?.request?.model?(s(),i("p",Qe,[t(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.model"))+": "+o(e.modelValue?.request?.model)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])])):m("",!0),r("p",We,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.elapsed?(s(),i("p",Xe,[t(l,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):m("",!0)]),_:1})])):m("",!0),e.modelValue?.response?.success===!1?(s(),i("div",Ye,[t(I,{closable:!1,class:"failure"},{template:d(()=>[t(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.failure")),1)]),default:d(()=>[r("p",Ze,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])]),r("p",xe,[t(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),t($,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.elapsed?(s(),i("p",et,[t(l,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):m("",!0),r("p",tt,[t(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),t($,{content:e.modelValue?.response?.trace_id},null,8,["content"])])]),_:1})])):m("",!0),e.modelValue?.response?.success===void 0?(s(),i("div",ot,[t(I,{closable:!1,class:"info"},{template:d(()=>[t(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.failure")),1)]),default:d(()=>[r("p",st,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):m("",!0)])])}const nt=k(Ae,[["render",at],["__scopeId","data-v-1ff65585"]]),lt=b({name:"RecentPanel",components:{TaskPreview:nt,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?.()}}}),it={key:0},rt={key:2,class:"w-full h-full flex items-center justify-center"};function ct(e,n,f,g,w,y){const p=a("bot-placeholder"),h=a("task-preview"),c=a("scroll-list"),_=a("no-tasks");return s(),i(C,null,[e.tasks?.items===void 0?(s(),i("div",it,[t(p)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(s(),v(c,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:n[0]||(n[0]=l=>e.$emit("reach-top"))},{default:d(()=>[(s(!0),i(C,null,G(e.tasks?.items,l=>(s(),v(h,{key:l.id,"model-value":l},null,8,["model-value"]))),128))]),_:1},8,["loading"])):m("",!0),e.tasks?.items?.length===0?(s(),i("div",rt,[t(_)])):m("",!0)],64)}const dt=k(lt,[["render",ct]]),ut="https://webhook.acedata.cloud/hailuo",mt=b({name:"HailuoIndex",components:{ConfigPanel:Re,Layout:re,RecentPanel:dt},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,n){e?.items?.length>n?.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:n=5,createdAtMin:f,createdAtMax:g}=e||{};console.debug("limit",n,"createdAtMin",f,"createdAtMax",g),this.fetchingTasks=!0;try{await this.$store.dispatch("hailuo/getTasks",{limit:n,createdAtMin:f,createdAtMax:g})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:ut},n=this.credential?.token;if(!n){console.error("no token specified");return}E.info(this.$t("hailuo.message.startingTask")),Q.generate(e,{token:n}).then(()=>{E.success(this.$t("hailuo.message.startTaskSuccess"))}).catch(f=>{f?.response?.data?.error?.code===K?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 pt(e,n,f,g,w,y){const p=a("config-panel"),h=a("recent-panel"),c=a("layout");return s(),v(c,null,{config:d(()=>[t(p,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:d(()=>[t(h,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const io=k(mt,[["render",pt]]);export{io as default};
1
+ import{F as L}from"./index.es-DAf85_c_.js";import{E as V}from"./index-CADSUEtD.js";import{E as R}from"./index-CEjOHMmS.js";import{d as b,H as i,E as r,z as T,C as t,y as d,D as a,q as s,F as o,O as C,N as G,x as v,I as u,J as m,M as A,Q as S}from"./vendor-vue-DU0w5ewx.js";import{E as k,b1 as M,ap as U}from"./index-BuYqOs8q.js";import{a as D}from"./hailuo-C8Dw-0xR.js";import{E as j,a as B}from"./index-B4njNk04.js";import{p as q}from"./pasteUploadMixin-BurWbGNQ.js";import{I as P,S as F}from"./ScrollList-ClLx5Ay2.js";import{I as O}from"./ImagePreview-B-kcZ7xf.js";import{E as z}from"./index-BcLxs5FR.js";import{E}from"./index-B_w2jnax.js";import{E as N}from"./index-BydGPbsc.js";import{C as H}from"./Consumption-HjIHVPfJ.js";import{a as J}from"./price-BLnrGcOE.js";import{b as K}from"./errorCode-Cqj9Td_Z.js";import{h as Q}from"./hailuo-DY93FJRp.js";import{C as W}from"./CopyToClipboard-Bm9IiB5O.js";import{V as X}from"./VideoPlayer-DHTu44Da.js";import{E as Y}from"./index-Btke2Pu_.js";import{E as Z}from"./index-6bMysa7o.js";import{E as x}from"./index-CrmvmSrr.js";import{B as ee}from"./BotPlaceholder-pdWT9yaS.js";import{N as te}from"./NoTasks-CAc7WMUu.js";import{l as oe}from"./pagination-CcnL0MdN.js";import"./use-form-item-Bcf9wMdQ.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./index-D9mxLTtD.js";import"./typescript-Bu1ceUI1.js";import"./index-BbT7wIiK.js";import"./strings-DigWlKo9.js";import"./isEqual-CSXiaW-q.js";import"./_Uint8Array-B8owGMyd.js";import"./castArray-BiIaTbnK.js";import"./debounce-BIXA4vQu.js";import"./_baseIteratee-DBmltUMm.js";import"./index-CidH52Gm.js";import"./index-Dsf-WzCN.js";import"./_baseClone-CmG_Edvh.js";import"./_initCloneObject-D15ri8PG.js";import"./index-BOCCszA-.js";import"./vue-plyr-BO2nlN4c.js";import"./index-C0Am24Fv.js";const se=b({name:"LayoutHailuo",components:{ElDrawer:R,ElButton:V,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,n,f,g,w,y){const p=a("font-awesome-icon"),h=a("el-button"),c=a("el-drawer");return s(),i("div",ae,[r("div",ne,[T(e.$slots,"config",{},void 0,!0)]),r("div",le,[T(e.$slots,"result",{},void 0,!0)]),t(h,{circle:"",class:"menu",onClick:n[0]||(n[0]=_=>e.drawer=!0)},{default:d(()=>[t(p,{icon:"fa-solid fa-magic"})]),_:1}),t(c,{modelValue:e.drawer,"onUpdate:modelValue":n[1]||(n[1]=_=>e.drawer=_),direction:"ltr","with-header":!1,size:"340px"},{default:d(()=>[T(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:B,ElOption:j},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=D)}}),de={class:"field"},ue={class:"title font-bold"},me={class:"float-left"};function pe(e,n,f,g,w,y){const p=a("el-option"),h=a("el-select");return s(),i("div",de,[r("h2",ue,o(e.$t("hailuo.name.model")),1),t(h,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=c=>e.value=c),class:"value",placeholder:e.$t("hailuo.placeholder.select"),clearable:""},{default:d(()=>[(s(!0),i(C,null,G(e.options,c=>(s(),v(p,{key:c.value,label:c.label,value:c.value},{default:d(()=>[r("span",me,o(c.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:z,ElButton:V,InfoIcon:P,ImagePreview:O},mixins:[q],data(){return{fileList:[],uploadUrl:M()+"/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,n,f,g,w,y){const p=a("info-icon"),h=a("image-preview"),c=a("el-button"),_=a("el-upload");return s(),i("div",ge,[r("div",_e,[r("div",$e,[r("span",ve,o(e.$t("hailuo.name.startImageUrl")),1),t(p,{content:e.$t("hailuo.description.startImageUrl"),class:"info"},null,8,["content"])])]),t(_,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":n[0]||(n[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:d(({file:l})=>[l.url&&l.percentage!==void 0?(s(),v(h,{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"])):m("",!0)]),default:d(()=>[t(c,{size:"small",type:"primary",class:"btn btn-upload",round:""},{default:d(()=>[u(o(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:N,InfoIcon:P},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"},Ve={class:"box"},Se={class:"title font-bold"};function Ie(e,n,f,g,w,y){const p=a("info-icon"),h=a("el-input");return s(),i("div",Ee,[r("div",Ve,[r("h2",Se,o(e.$t("hailuo.name.prompt")),1),t(p,{content:e.$t("hailuo.description.prompt"),class:"info"},null,8,["content"])]),t(h,{modelValue:e.prompt,"onUpdate:modelValue":n[0]||(n[0]=c=>e.prompt=c),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("hailuo.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Te=k(ye,[["render",Ie],["__scopeId","data-v-c601bcba"]]),Ce=b({name:"PresetPanel",components:{ElButton:V,FontAwesomeIcon:L,PromptInput:Te,StartImageUrlInput:ke,ModelSelector:he,Consumption:H},emits:["generate"],computed:{config(){return this.$store.state.hailuo?.config},consumption(){return J(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"},Ge={class:"flex flex-col items-center justify-center px-5 pb-5"};function Pe(e,n,f,g,w,y){const p=a("prompt-input"),h=a("model-selector"),c=a("start-image-url-input"),_=a("consumption"),l=a("font-awesome-icon"),$=a("el-button");return s(),i("div",Le,[r("div",Ue,[t(p,{class:"mb-4"}),t(h,{class:"mb-4"}),e.config?.model==="minimax-i2v"?(s(),v(c,{key:0,class:"mb-2"})):m("",!0)]),r("div",Ge,[t(_,{value:e.consumption,service:e.service},null,8,["value","service"]),e.config?.video_url!==void 0||e.config?.custom?(s(),v($,{key:0,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[t(l,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("hailuo.button.extend")),1)]),_:1},8,["onClick"])):(s(),v($,{key:1,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[t(l,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("hailuo.button.generate")),1)]),_:1},8,["onClick"]))])])}const Re=k(Ce,[["render",Pe]]),Ae=b({name:"TaskPreview",components:{ElImage:x,CopyToClipboard:W,FontAwesomeIcon:L,ElAlert:Z,VideoPlayer:X,ElTooltip:Y,ElButton:V},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"},De={class:"left"},je={class:"main"},Be={class:"bot"},qe={class:"datetime"},Fe={class:"info"},Oe={key:0,class:"prompt mt-2"},ze={key:0},Ne={key:1},He={key:0,class:S({content:!0,failed:!0})},Je={key:0,class:"mb-4"},Ke={key:1,class:S({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-2"},Xe={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ye={key:1,class:S({content:!0})},Ze={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},xe={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},et={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},tt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ot={key:2,class:S({content:!0})},st={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function at(e,n,f,g,w,y){const p=a("el-image"),h=a("video-player"),c=a("el-button"),_=a("el-tooltip"),l=a("font-awesome-icon"),$=a("copy-to-clipboard"),I=a("el-alert");return s(),i("div",Me,[r("div",De,[t(p,{src:"https://cdn.acedata.cloud/0qg4gp.png",class:"avatar"})]),r("div",je,[r("div",Be,[u(o(e.$t("hailuo.name.hailuoBot"))+" ",1),r("span",qe,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Fe,[e.modelValue?.request?.prompt?(s(),i("p",Oe,[u(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?m("",!0):(s(),i("span",ze," - ("+o(e.$t("hailuo.status.pending"))+") ",1)),e.video?.state==="processing"||e.video?.state==="pending"||e.video?.state==="running"?(s(),i("span",Ne," - ("+o(e.$t("hailuo.status.processing"))+") ",1)):m("",!0)])):m("",!0)]),e.modelValue?.response?.success===!0?(s(),i("div",He,[e.video?.video_url?(s(),i("div",Je,[t(h,{src:e.video?.video_url},null,8,["src"])])):m("",!0),e.video?(s(),i("div",Ke,[t(_,{class:"box-item",effect:"dark",content:e.$t("hailuo.message.downloadVideo"),placement:"top-start"},{default:d(()=>[e.video?.video_url?(s(),v(c,{key:0,type:"info",size:"small",class:"mb-2",onClick:n[0]||(n[0]=A(ht=>e.onDownload(e.video?.video_url),["stop"]))},{default:d(()=>[u(o(e.$t("hailuo.button.download")),1)]),_:1})):m("",!0)]),_:1},8,["content"])])):m("",!0),t(I,{closable:!1,class:"mt-2 success"},{default:d(()=>[e.modelValue?.request?.model?(s(),i("p",Qe,[t(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.model"))+": "+o(e.modelValue?.request?.model)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])])):m("",!0),r("p",We,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.elapsed?(s(),i("p",Xe,[t(l,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):m("",!0)]),_:1})])):m("",!0),e.modelValue?.response?.success===!1?(s(),i("div",Ye,[t(I,{closable:!1,class:"failure"},{template:d(()=>[t(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.failure")),1)]),default:d(()=>[r("p",Ze,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])]),r("p",xe,[t(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),t($,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.elapsed?(s(),i("p",et,[t(l,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):m("",!0),r("p",tt,[t(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),t($,{content:e.modelValue?.response?.trace_id},null,8,["content"])])]),_:1})])):m("",!0),e.modelValue?.response?.success===void 0?(s(),i("div",ot,[t(I,{closable:!1,class:"info"},{template:d(()=>[t(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.failure")),1)]),default:d(()=>[r("p",st,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):m("",!0)])])}const nt=k(Ae,[["render",at],["__scopeId","data-v-1ff65585"]]),lt=b({name:"RecentPanel",components:{TaskPreview:nt,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?.()}}}),it={key:0},rt={key:2,class:"w-full h-full flex items-center justify-center"};function ct(e,n,f,g,w,y){const p=a("bot-placeholder"),h=a("task-preview"),c=a("scroll-list"),_=a("no-tasks");return s(),i(C,null,[e.tasks?.items===void 0?(s(),i("div",it,[t(p)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(s(),v(c,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:n[0]||(n[0]=l=>e.$emit("reach-top"))},{default:d(()=>[(s(!0),i(C,null,G(e.tasks?.items,l=>(s(),v(h,{key:l.id,"model-value":l},null,8,["model-value"]))),128))]),_:1},8,["loading"])):m("",!0),e.tasks?.items?.length===0?(s(),i("div",rt,[t(_)])):m("",!0)],64)}const dt=k(lt,[["render",ct]]),ut="https://webhook.acedata.cloud/hailuo",mt=b({name:"HailuoIndex",components:{ConfigPanel:Re,Layout:re,RecentPanel:dt},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,n){e?.items?.length>n?.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:n=5,createdAtMin:f,createdAtMax:g}=e||{};console.debug("limit",n,"createdAtMin",f,"createdAtMax",g),this.fetchingTasks=!0;try{await this.$store.dispatch("hailuo/getTasks",{limit:n,createdAtMin:f,createdAtMax:g})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:ut},n=this.credential?.token;if(!n){console.error("no token specified");return}E.info(this.$t("hailuo.message.startingTask")),Q.generate(e,{token:n}).then(()=>{E.success(this.$t("hailuo.message.startTaskSuccess"))}).catch(f=>{f?.response?.data?.error?.code===K?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 pt(e,n,f,g,w,y){const p=a("config-panel"),h=a("recent-panel"),c=a("layout");return s(),v(c,null,{config:d(()=>[t(p,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:d(()=>[t(h,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const io=k(mt,[["render",pt]]);export{io as default};