@acedatacloud/nexior 3.199.0 → 3.201.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 (237) hide show
  1. package/dist/assets/{Auth-Bxu6lPJs.js → Auth-P9-Y2I27.js} +1 -1
  2. package/dist/assets/{BotPlaceholder-qj2YLdAp.js → BotPlaceholder-oG7ygyok.js} +1 -1
  3. package/dist/assets/{Callback-BDBW_46X.js → Callback-BLBOX9sb.js} +1 -1
  4. package/dist/assets/Console-BZJya_fb.css +1 -0
  5. package/dist/assets/{Console-Cxf3qaXE.js → Console-DKsBuO-z.js} +1 -1
  6. package/dist/assets/{Consumption-D1DmjLsj.js → Consumption-BKf_KS7X.js} +1 -1
  7. package/dist/assets/{Conversation-DVRyMjZO.js → Conversation-CHAHqep6.js} +1 -1
  8. package/dist/assets/{CopyToClipboard-BS0IZ5vm.js → CopyToClipboard-CIRw6WL5.js} +1 -1
  9. package/dist/assets/{Detail-CPKHwE0p.js → Detail-ZWAGWrwd.js} +2 -2
  10. package/dist/assets/{Extra-Ca79F0MR.js → Extra-Cw9_80mD.js} +1 -1
  11. package/dist/assets/{FilePreview-D62u9I_n.js → FilePreview-CnGQ7pAL.js} +1 -1
  12. package/dist/assets/{History-fu6-tYtn.js → History-x5wON19B.js} +1 -1
  13. package/dist/assets/{IconPark.vue_vue_type_script_setup_true_lang-DcudsKh_.js → IconPark.vue_vue_type_script_setup_true_lang-Dyd7AMaP.js} +1 -1
  14. package/dist/assets/{ImagePreview-8xggEAtd.js → ImagePreview-CUVXtH2l.js} +1 -1
  15. package/dist/assets/{ImageWrapper-JCiqYITj.js → ImageWrapper-CuWjkp9m.js} +1 -1
  16. package/dist/assets/{Index-tu2qhy29.js → Index-B6oXbfed.js} +1 -1
  17. package/dist/assets/{Index-BqkPugf_.js → Index-B8XQ3aun.js} +1 -1
  18. package/dist/assets/Index-BErAVvL4.js +1 -0
  19. package/dist/assets/{Index-DlnzVCW0.js → Index-BPXVoXMC.js} +1 -1
  20. package/dist/assets/{Index-l2sz3kZe.js → Index-BdBMhDZm.js} +1 -1
  21. package/dist/assets/{Index-D-Aw5cLX.js → Index-BsraZW6D.js} +1 -1
  22. package/dist/assets/{Index-yNvxuOZ-.js → Index-CEycpOOD.js} +1 -1
  23. package/dist/assets/{Index-C5i12gfd.js → Index-CHdRMrwV.js} +1 -1
  24. package/dist/assets/{Index-oYrxdv5B.js → Index-CIXypFiG.js} +1 -1
  25. package/dist/assets/{Index-aOGN9YGk.js → Index-CLA0XmOz.js} +1 -1
  26. package/dist/assets/{Index-zJAUpNDF.js → Index-CPl2ntR0.js} +1 -1
  27. package/dist/assets/{Index-ZAqosxvD.js → Index-CQqQDBLi.js} +1 -1
  28. package/dist/assets/{Index-BH1V1Iqn.js → Index-CRLMJ1ab.js} +1 -1
  29. package/dist/assets/{Index-VBGiy2BZ.css → Index-CSv0dYm3.css} +1 -1
  30. package/dist/assets/{Index-BoZaR7aV.js → Index-CZNXcq6C.js} +1 -1
  31. package/dist/assets/{Index-KONl-gyR.js → Index-Csp3mEbl.js} +1 -1
  32. package/dist/assets/{Index-CSTXd8gx.js → Index-D5BTU0ZY.js} +2 -2
  33. package/dist/assets/{Index-6_CHK7EV.js → Index-DEqFybWX.js} +1 -1
  34. package/dist/assets/{Index-CN6Cr1o2.js → Index-DHX7oXEA.js} +1 -1
  35. package/dist/assets/{Index-CKjKdeA3.js → Index-DLAgZvuT.js} +1 -1
  36. package/dist/assets/{Index-BHrhLWTN.js → Index-DX3DQjl0.js} +1 -1
  37. package/dist/assets/{Index-CalCfUQZ.js → Index-Df6dDwUo.js} +1 -1
  38. package/dist/assets/{Index-BMZlZqhB.js → Index-X7Xtwp4E.js} +1 -1
  39. package/dist/assets/{Index-BDw62a42.js → Index-hamJD74q.js} +1 -1
  40. package/dist/assets/{Index-iy2_zNpb.js → Index-q01PDwBe.js} +1 -1
  41. package/dist/assets/{Invitees-ASRNDHIx.js → Invitees-BlMDbMOA.js} +1 -1
  42. package/dist/assets/List-DOK3S7GX.js +1 -0
  43. package/dist/assets/{List-DF6W0AJb.js → List-DkQR_5pA.js} +1 -1
  44. package/dist/assets/{List-CquVIuWA.js → List-VfhD8xQP.js} +1 -1
  45. package/dist/assets/List-zFbDrkil.css +1 -0
  46. package/dist/assets/{Main-B4HQop2H.js → Main-uL4w-VWn.js} +1 -1
  47. package/dist/assets/{Navigator-Bvklo3Gd.js → Navigator-Vb9U_Tkm.js} +1 -1
  48. package/dist/assets/{NoTasks-YcewaUb5.js → NoTasks-9iEEhsIS.js} +1 -1
  49. package/dist/assets/{NotFound-D9X7oxaR.js → NotFound-KugwnfTR.js} +1 -1
  50. package/dist/assets/{OAuthCallback-B-dbQ38J.js → OAuthCallback-BOSLZDKl.js} +1 -1
  51. package/dist/assets/{Pagination-n5DVrOdP.js → Pagination-UjYkBaAw.js} +1 -1
  52. package/dist/assets/{Status-C26fA_fP.js → Status-ek_-Lp6a.js} +1 -1
  53. package/dist/assets/{Subscribe-BtqjcFEx.js → Subscribe-DeB1wbxC.js} +1 -1
  54. package/dist/assets/{VideoPlayer-CndCLmxS.js → VideoPlayer-CXT39jg2.js} +1 -1
  55. package/dist/assets/{_Uint8Array-4l3jEroS.js → _Uint8Array-yhuF-6h2.js} +1 -1
  56. package/dist/assets/{_baseClone-Db65SBvG.js → _baseClone-Ccji6pFO.js} +1 -1
  57. package/dist/assets/{_baseIteratee-CJ9W-nbE.js → _baseIteratee-CTMClKxb.js} +1 -1
  58. package/dist/assets/{_initCloneObject-C7XzV3eb.js → _initCloneObject-D2UisHWT.js} +1 -1
  59. package/dist/assets/{add-CIHMDKxi.js → add-Bu_OdUwZ.js} +1 -1
  60. package/dist/assets/{all-wallets-D7C3_H-n.js → all-wallets-B4A8C78S.js} +1 -1
  61. package/dist/assets/{app-store-CPrYPJvx.js → app-store-qURYjH2L.js} +1 -1
  62. package/dist/assets/{apple-B8Tg1DiO.js → apple-Cy9D_M7F.js} +1 -1
  63. package/dist/assets/{arrow-bottom-DRCbehPe.js → arrow-bottom-CW3b5IMC.js} +1 -1
  64. package/dist/assets/{arrow-bottom-circle-BxECh6Zt.js → arrow-bottom-circle-UphuU3is.js} +1 -1
  65. package/dist/assets/{arrow-left-CbzqvYhx.js → arrow-left-BVxZn0NZ.js} +1 -1
  66. package/dist/assets/{arrow-right-BBruSVMi.js → arrow-right-BQGlYIq9.js} +1 -1
  67. package/dist/assets/{arrow-top-B7u4UMuv.js → arrow-top-DV16ibkR.js} +1 -1
  68. package/dist/assets/{avatar-HrHY9X2h.js → avatar-POvkw2fC.js} +1 -1
  69. package/dist/assets/{bank-BMz1T24_.js → bank-BNjUFqiV.js} +1 -1
  70. package/dist/assets/{basic-CcCFvU6g.js → basic-Crh0aODM.js} +1 -1
  71. package/dist/assets/{browser-7joAQpWW.js → browser-CDLJDWE0.js} +1 -1
  72. package/dist/assets/{byokCredential-B4dKziVQ.js → byokCredential-BEnC2ib3.js} +1 -1
  73. package/dist/assets/{card-BHSdgUM6.js → card-DVSu3L2D.js} +1 -1
  74. package/dist/assets/{castArray-FN0qIC-F.js → castArray-B2mZnC5U.js} +1 -1
  75. package/dist/assets/{chat-RH2FHz84.js → chat-CQYnVX2z.js} +1 -1
  76. package/dist/assets/{checkmark-Bys9SwiQ.js → checkmark-CslPX2Yy.js} +1 -1
  77. package/dist/assets/{checkmark-bold-DdZpUzBt.js → checkmark-bold-BHBVYyR5.js} +1 -1
  78. package/dist/assets/{chevron-bottom-lsWoscTx.js → chevron-bottom-fQSKtlqe.js} +1 -1
  79. package/dist/assets/{chevron-left-BEg6k_CD.js → chevron-left-Ca-aYmE7.js} +1 -1
  80. package/dist/assets/{chevron-right-D6_BF5Q4.js → chevron-right-BeCDhv4-.js} +1 -1
  81. package/dist/assets/{chevron-top-BjdcG2gi.js → chevron-top-DtcNqUFz.js} +1 -1
  82. package/dist/assets/{chrome-store-CtCOe48X.js → chrome-store-CqU1zMmU.js} +1 -1
  83. package/dist/assets/{clock-DETEJMl3.js → clock-D7NLSyIk.js} +1 -1
  84. package/dist/assets/{close-CylhswCm.js → close-jNIKLmHe.js} +1 -1
  85. package/dist/assets/{coinPlaceholder-C3axsC5g.js → coinPlaceholder-CK7Zf23d.js} +1 -1
  86. package/dist/assets/{compass-CtsJBqp1.js → compass-DtBu8ANv.js} +1 -1
  87. package/dist/assets/{copy-CLxNORXC.js → copy-BvlFTEKQ.js} +1 -1
  88. package/dist/assets/{createTaskActions-BJSdKH5s.js → createTaskActions-R7aRvJKd.js} +1 -1
  89. package/dist/assets/{cursor-z-aIOLqV.js → cursor-CbMskyVX.js} +1 -1
  90. package/dist/assets/{cursor-transparent-DZTyR1zU.js → cursor-transparent-Cl95jNm6.js} +1 -1
  91. package/dist/assets/{debounce-CqzxdC1T.js → debounce-C18vO1_Z.js} +1 -1
  92. package/dist/assets/{desktop-TrodT5we.js → desktop-CD1xL_HB.js} +1 -1
  93. package/dist/assets/{disconnect-BeEQ7qs9.js → disconnect-R1Cqi78x.js} +1 -1
  94. package/dist/assets/{discord-CwrEZrCT.js → discord-B-bU5cxh.js} +1 -1
  95. package/dist/assets/{distribution-CCQeOooB.js → distribution-QDcM3Yzv.js} +1 -1
  96. package/dist/assets/{dropdown-QVVKiQqM.js → dropdown-CTLcBpRe.js} +1 -1
  97. package/dist/assets/{etherscan-WV8NdF0k.js → etherscan-Dt1Ys1Sc.js} +1 -1
  98. package/dist/assets/{exclamation-triangle-DdbSNzRo.js → exclamation-triangle-1zW8Ikyk.js} +1 -1
  99. package/dist/assets/{extension-CuHkDgHC.js → extension-Cn6aATmd.js} +1 -1
  100. package/dist/assets/{external-link-BgTmHYmG.js → external-link-CXg7XYn0.js} +1 -1
  101. package/dist/assets/{facebook-8nr_Km5Y.js → facebook-IoRWb49C.js} +1 -1
  102. package/dist/assets/{farcaster-3NnaB9KF.js → farcaster-C73_LFCH.js} +1 -1
  103. package/dist/assets/{filters-CerERAFS.js → filters-BOUlQhA1.js} +1 -1
  104. package/dist/assets/{github-CmiBvNun.js → github-DSWdNEuE.js} +1 -1
  105. package/dist/assets/{google-WIulaWE1.js → google-0ZvzJ_rg.js} +1 -1
  106. package/dist/assets/{help-circle-2X23TR3c.js → help-circle-BdcnDRxZ.js} +1 -1
  107. package/dist/assets/{id-vaj7mgsv.js → id-D0bB32vi.js} +1 -1
  108. package/dist/assets/{image-Cvm5qKfH.js → image-CKJr4QvL.js} +1 -1
  109. package/dist/assets/{index-6R6Zq-bb.js → index-8Tcs72Am.js} +1 -1
  110. package/dist/assets/{index-DGwqRoPm.js → index-B-l7vsCb.js} +1 -1
  111. package/dist/assets/{index-cN8cftWM.js → index-B5Z3EZrb.js} +1 -1
  112. package/dist/assets/{index-DqqEEM06.js → index-BHmSF5c7.js} +1 -1
  113. package/dist/assets/{index-IXbBFLGc.js → index-BJecxE7v.js} +1 -1
  114. package/dist/assets/{index-B21ZeSrS.js → index-BKHSCugF.js} +1 -1
  115. package/dist/assets/{index-D2XWlSUE.css → index-BRqmY-RG.css} +1 -1
  116. package/dist/assets/{index-QEi2VXNo.js → index-BULPgnOG.js} +1 -1
  117. package/dist/assets/{index-D1Pp1_Ct.js → index-BdbTMZQG.js} +1 -1
  118. package/dist/assets/{index-CLmaAujN.js → index-BqsKk8tF.js} +1 -1
  119. package/dist/assets/{index-BwAF5fMP.js → index-C-dy1Xao.js} +1 -1
  120. package/dist/assets/{index-_jMWnoRc.js → index-CBVbWfMh.js} +1 -1
  121. package/dist/assets/{index-B2vTKKd_.js → index-CCBjpDl1.js} +1 -1
  122. package/dist/assets/{index-B6QiYIzW.js → index-CFJyFNtJ.js} +1 -1
  123. package/dist/assets/{index-B-vHnqyE.js → index-CGBK8gn9.js} +1 -1
  124. package/dist/assets/{index-BcuAI9DN.js → index-CH8027H5.js} +1 -1
  125. package/dist/assets/{index-CP6llfLN.js → index-CKceOzxT.js} +1 -1
  126. package/dist/assets/{index-pQFvUXd3.js → index-CSLM8oj_.js} +1 -1
  127. package/dist/assets/{index-DsGtRLSG.js → index-CTq_XQ_O.js} +1 -1
  128. package/dist/assets/{index-BiC7KGb5.js → index-CWdAzE8_.js} +1 -1
  129. package/dist/assets/{index-BOBhPDDF.js → index-CXZga4TM.js} +1 -1
  130. package/dist/assets/{index-CiGGgTh3.js → index-CYibZiPb.js} +1 -1
  131. package/dist/assets/{index-CrU_5pwG.js → index-Cb-1HmSl.js} +2 -2
  132. package/dist/assets/{index-ViGPRpNP.js → index-Cd_qWETX.js} +1 -1
  133. package/dist/assets/{index-Dk-srZzW.js → index-CeL66X7b.js} +1 -1
  134. package/dist/assets/{index-CIPeqHrT.js → index-CfDWdmmt.js} +1 -1
  135. package/dist/assets/{index-B0dINqQs.js → index-CkENdWhT.js} +1 -1
  136. package/dist/assets/{index-DLAA8qBO.js → index-Cn6FLrhe.js} +1 -1
  137. package/dist/assets/{index-CQTjuF73.js → index-Cn6q7R8u.js} +1 -1
  138. package/dist/assets/{index-Czz4_hx0.js → index-Cq7DVAGu.js} +1 -1
  139. package/dist/assets/{index-DmgFbW9M.js → index-CsGFFE61.js} +1 -1
  140. package/dist/assets/{index-zQkXvP4I.js → index-CtbJ8jTa.js} +1 -1
  141. package/dist/assets/{index-BbL_4E9w.js → index-CvMqNkLv.js} +1 -1
  142. package/dist/assets/{index-DA818bne.js → index-Cw9yMd7y.js} +1 -1
  143. package/dist/assets/{index-BF3jvRlG.js → index-D-4JF5KB.js} +1 -1
  144. package/dist/assets/{index-CEeMrgcF.js → index-D5GD9sYJ.js} +1 -1
  145. package/dist/assets/{index-BE6qZqmD.js → index-D8TyI7GI.js} +1 -1
  146. package/dist/assets/{index-Bcs3v7-e.js → index-DHxm4Mt3.js} +1 -1
  147. package/dist/assets/{index-DvlZSfpu.js → index-DMHXbvDD.js} +1 -1
  148. package/dist/assets/{index-D52tsFhQ.js → index-DOaSgJ1K.js} +1 -1
  149. package/dist/assets/{index-NUBO-MwK.js → index-DR__Oj5B.js} +1 -1
  150. package/dist/assets/{index-DTeoj4TD.js → index-DTTXVFKN.js} +1 -1
  151. package/dist/assets/{index-B7lLMdzb.js → index-DVUMZ05r.js} +4 -4
  152. package/dist/assets/{index-CBlv28h_.js → index-DX4qnWEq.js} +3 -3
  153. package/dist/assets/{index-DmDrzBI8.js → index-Dh9zo6zc.js} +1 -1
  154. package/dist/assets/{index-ByRqtdbl.js → index-DilHy9ov.js} +1 -1
  155. package/dist/assets/{index-CCnNhz-4.js → index-Doov4lRg.js} +1 -1
  156. package/dist/assets/{index-DuW5L2r7.js → index-DrLf4K3A.js} +1 -1
  157. package/dist/assets/{index-BT22Q2er.js → index-DsLfL_UZ.js} +1 -1
  158. package/dist/assets/{index-CYh_OAtL.js → index-DtFDyBeG.js} +1 -1
  159. package/dist/assets/{index-D2DtLStx.js → index-Dvg07LsC.js} +5 -5
  160. package/dist/assets/{index-CbH6hylr.js → index-GfS1QM00.js} +1 -1
  161. package/dist/assets/{index-BnYAc5a2.js → index-INXD4z_7.js} +1 -1
  162. package/dist/assets/{index-Cke3Ztbn.js → index-NAYAb2EN.js} +1 -1
  163. package/dist/assets/{index-CqFUQRch.js → index-bI3kDgo-.js} +1 -1
  164. package/dist/assets/{index-C9b_9myH.js → index-dU0falwS.js} +1 -1
  165. package/dist/assets/{index-Dw3SeELD.js → index-eWlKuNNN.js} +1 -1
  166. package/dist/assets/{index-BEIVh6R9.js → index-hCU6Gi_N.js} +1 -1
  167. package/dist/assets/{index-CGiBnpqk.js → index-jyz6xleX.js} +1 -1
  168. package/dist/assets/{index-2P6neM4R.js → index-r007Lgz_.js} +1 -1
  169. package/dist/assets/{index-D4F0oixT.js → index-t6HfS0_5.js} +1 -1
  170. package/dist/assets/{index.browser.esm-BC4h3Ej2.js → index.browser.esm-DH1v7uQU.js} +1 -1
  171. package/dist/assets/{index.es-BGvCJe-W.js → index.es-f2R6ubO6.js} +1 -1
  172. package/dist/assets/{info-circle-DCijtL4A.js → info-circle-OpeIg_vK.js} +1 -1
  173. package/dist/assets/{info-ClrQ6-BU.js → info-p1qBqqby.js} +1 -1
  174. package/dist/assets/{isEqual-CfmBLeOp.js → isEqual-B1Z_z-Zf.js} +1 -1
  175. package/dist/assets/{isPlainObject-DrfMRQvm.js → isPlainObject-CmiP43ac.js} +1 -1
  176. package/dist/assets/{lightbulb-Dr1hMBEr.js → lightbulb-CR2nBiZK.js} +1 -1
  177. package/dist/assets/{luma-1KHYlP4B.js → luma-BSTzveKD.js} +1 -1
  178. package/dist/assets/{luma-BD2KKbxW.js → luma-CmQgYMjm.js} +1 -1
  179. package/dist/assets/{mail-CiRR9yzg.js → mail-C4CN8lug.js} +1 -1
  180. package/dist/assets/{midjourney-BHg-HxhG.js → midjourney-DtKSn_55.js} +1 -1
  181. package/dist/assets/{mobile-BAK6nsfE.js → mobile-D6DhWeG9.js} +1 -1
  182. package/dist/assets/{more-D70nXESH.js → more-BIFonLRO.js} +1 -1
  183. package/dist/assets/{network-placeholder-D6q_3JhL.js → network-placeholder-CQoXEWHp.js} +1 -1
  184. package/dist/assets/{nftPlaceholder-Cq73MyuY.js → nftPlaceholder-DzJB0cAU.js} +1 -1
  185. package/dist/assets/{off-Du8xNMQV.js → off-DcYnxUwZ.js} +1 -1
  186. package/dist/assets/{openaiimage-CjUeKUKV.js → openaiimage-BxAXhLbK.js} +1 -1
  187. package/dist/assets/{openaiimage-B7etoC6T.js → openaiimage-DUKFo3_F.js} +1 -1
  188. package/dist/assets/{order-B9IiXfkW.js → order-BkOrE4fx.js} +1 -1
  189. package/dist/assets/{pagination-DSYOIV_9.js → pagination-BIv0I4gk.js} +1 -1
  190. package/dist/assets/{play-store-CMM7iXUy.js → play-store-elgh3FWw.js} +1 -1
  191. package/dist/assets/{plus-jARqHv_C.js → plus-b50-SlO3.js} +1 -1
  192. package/dist/assets/{price-BoiEmiVd.js → price-3Bxyzfub.js} +1 -1
  193. package/dist/assets/{producer-BFn8w39f.js → producer-_ZheEQHj.js} +1 -1
  194. package/dist/assets/{qr-code-DzsFURK2.js → qr-code-0-lOMzDS.js} +1 -1
  195. package/dist/assets/{recycle-horizontal-W2KoV8vw.js → recycle-horizontal-0Lxer4ur.js} +1 -1
  196. package/dist/assets/{refresh-WSaLf8VP.js → refresh-B3-cUONr.js} +1 -1
  197. package/dist/assets/{reown-logo-CEd6ZM8R.js → reown-logo-BIkSMGt2.js} +1 -1
  198. package/dist/assets/{search-ClPkoGZw.js → search-BOg2kbkO.js} +1 -1
  199. package/dist/assets/{secp256k1-DCotto4o.js → secp256k1-B-b9J87u.js} +1 -1
  200. package/dist/assets/{secp256k1-CY7zvKPZ.js → secp256k1-YaViWuM0.js} +1 -1
  201. package/dist/assets/{seedream-B_0r5a5d.js → seedream-DuSeYUSK.js} +1 -1
  202. package/dist/assets/{send-hXw22QVp.js → send-Cb0G2YYi.js} +1 -1
  203. package/dist/assets/{service-D6MwIonb.js → service-s-VOFKDX.js} +1 -1
  204. package/dist/assets/{solana-wallets-D5IXk2C6.js → solana-wallets-BLRSmzvy.js} +2 -2
  205. package/dist/assets/{solana-wallets-vue-CiR9_161.js → solana-wallets-vue-C6Q6-Ct3.js} +1 -1
  206. package/dist/assets/{suno-Bk-Q7Yhc.js → suno-BKRXQ0xj.js} +1 -1
  207. package/dist/assets/{suno-BrgQ_BvV.js → suno-BO6DMqls.js} +1 -1
  208. package/dist/assets/{suno-CnYkQ41d.js → suno-DEP8hfiJ.js} +1 -1
  209. package/dist/assets/{swapHorizontal-C4OATJHV.js → swapHorizontal-KMx0NnVD.js} +1 -1
  210. package/dist/assets/{swapHorizontalBold-BcZ8qUBM.js → swapHorizontalBold-D98Bopio.js} +1 -1
  211. package/dist/assets/{swapHorizontalMedium-DmOnPuPj.js → swapHorizontalMedium-BTPM2ekk.js} +1 -1
  212. package/dist/assets/{swapHorizontalRoundedBold-aCMw7dgZ.js → swapHorizontalRoundedBold-CUB98ewQ.js} +1 -1
  213. package/dist/assets/{swapVertical-DCJHigd7.js → swapVertical-DDhGOeMB.js} +1 -1
  214. package/dist/assets/{telegram-B8hG-ceH.js → telegram-BRZ5559p.js} +1 -1
  215. package/dist/assets/{three-dots-3PfhBNIb.js → three-dots-DK7xpckE.js} +1 -1
  216. package/dist/assets/{twitch-DGLW5dTV.js → twitch-DsDp5f8i.js} +1 -1
  217. package/dist/assets/{twitterIcon-D9shlJUo.js → twitterIcon-CQebQN_n.js} +1 -1
  218. package/dist/assets/{typescript-Bj1ijDQ6.js → typescript-qAIJ13Qr.js} +1 -1
  219. package/dist/assets/{use-form-item-DZgxCtXL.js → use-form-item-DhMXJI5q.js} +1 -1
  220. package/dist/assets/validator-C_MCdjOG.js +1 -0
  221. package/dist/assets/{verify-f7CMRkUd.js → verify--masYrMj.js} +1 -1
  222. package/dist/assets/{verify-filled-D-i_lal-.js → verify-filled-BynRjqu9.js} +1 -1
  223. package/dist/assets/{w3m-modal-Bg36HOCY.js → w3m-modal-Dnk11rKj.js} +1 -1
  224. package/dist/assets/{wallet-CWYcFf4q.js → wallet-DDuyKcqZ.js} +1 -1
  225. package/dist/assets/{wallet-placeholder-CP4xtpLb.js → wallet-placeholder-6f-BSK3t.js} +1 -1
  226. package/dist/assets/{walletconnect-CswCYXjf.js → walletconnect-Fg96-X5C.js} +1 -1
  227. package/dist/assets/{warning-circle-Cy5pvqsS.js → warning-circle-CO_d6TcS.js} +1 -1
  228. package/dist/assets/{web-CrK-XaC6.js → web-DVHNX4-S.js} +1 -1
  229. package/dist/assets/{web-BvZo9FTy.js → web-dgsvqJXd.js} +1 -1
  230. package/dist/assets/{x-B-62v0eX.js → x-DLmg-6Gn.js} +1 -1
  231. package/dist/index.html +2 -2
  232. package/package.json +1 -1
  233. package/dist/assets/Console-D-SOK-Bo.css +0 -1
  234. package/dist/assets/Index-tX7U6ka9.js +0 -1
  235. package/dist/assets/List-CFBrpGZ3.js +0 -1
  236. package/dist/assets/List-Cj4e77Gx.css +0 -1
  237. package/dist/assets/validator-2sHPIwNN.js +0 -1
@@ -1 +1 @@
1
- import{F as P}from"./index.es-BGvCJe-W.js";import{E as L}from"./index-BF3jvRlG.js";import{E as O}from"./index-CP6llfLN.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 E,I as h,J as g,Q as U}from"./vendor-vue-NSDaktjZ.js";import{G as k,bj as q,co as B,aD as j,n as F,S as C,cp as N}from"./index-B7lLMdzb.js";import{a as z,b as K,c as H}from"./pika-DpzVVVef.js";import{I as D,S as J,l as Q}from"./pagination-DSYOIV_9.js";import{E as W}from"./index-DvlZSfpu.js";import{E as G,a as M}from"./index-B21ZeSrS.js";import{a as X,E as Y}from"./index-CLmaAujN.js";import{p as Z}from"./pasteUploadMixin-BurWbGNQ.js";import{I as x}from"./ImagePreview-8xggEAtd.js";import{E as ee}from"./index-2P6neM4R.js";import{E as V}from"./index-DmgFbW9M.js";import{E as te}from"./index-zQkXvP4I.js";import{C as oe}from"./Consumption-D1DmjLsj.js";import{a as se}from"./price-BoiEmiVd.js";import{b as ae,a as ne}from"./errorCode-Cqj9Td_Z.js";import{C as ie}from"./CopyToClipboard-BS0IZ5vm.js";import{s as le}from"./vue-plyr-BO2nlN4c.js";import{E as re}from"./index-BiC7KGb5.js";import{E as ce}from"./index-ViGPRpNP.js";import{E as pe}from"./index-DuW5L2r7.js";import{B as de}from"./BotPlaceholder-qj2YLdAp.js";import{N as ue}from"./NoTasks-YcewaUb5.js";import"./use-form-item-DZgxCtXL.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./validator-2sHPIwNN.js";import"./index-cN8cftWM.js";import"./index-CGiBnpqk.js";import"./typescript-Bj1ijDQ6.js";import"./strings-beZM2Y-f.js";import"./isEqual-CfmBLeOp.js";import"./_Uint8Array-4l3jEroS.js";import"./castArray-FN0qIC-F.js";import"./debounce-CqzxdC1T.js";import"./_baseIteratee-CJ9W-nbE.js";import"./index-CbH6hylr.js";import"./index-Dw3SeELD.js";import"./_baseClone-Db65SBvG.js";import"./_initCloneObject-C7XzV3eb.js";import"./index-pQFvUXd3.js";import"./index-B-vHnqyE.js";const me=$({name:"LayoutPika",components:{ElDrawer:O,ElButton:L,FontAwesomeIcon:P},data(){return{drawer:!1}}}),fe={class:"main flex flex-row flex-1"},_e={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},he={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ge(e,o,c,d,v,b){const p=s("font-awesome-icon"),m=s("el-button"),n=s("el-drawer");return a(),l("div",fe,[r("div",_e,[R(e.$slots,"config",{},void 0,!0)]),r("div",he,[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 $e=k(me,[["render",ge],["__scopeId","data-v-10596416"]]),ke=$({name:"IngredientsSelector",components:{ElSwitch:W,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=z)}}),ve={class:"field"},be={class:"title font-bold"};function ye(e,o,c,d,v,b){const p=s("el-switch"),m=s("info-icon");return a(),l("div",ve,[r("h2",be,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 we=k(ke,[["render",ye],["__scopeId","data-v-17c0af5c"]]),Ve=$({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})}}}}),Ee={class:"field"},Ie={class:"title font-bold"},Se={class:"float-left"};function Te(e,o,c,d,v,b){const p=s("el-option"),m=s("el-select");return a(),l("div",Ee,[r("h2",Ie,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(),E(p,{key:n.value,label:n.label,value:n.value},{default:u(()=>[r("span",Se,i(n.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ce=k(Ve,[["render",Te],["__scopeId","data-v-d1c54475"]]),Pe=$({name:"IngredientsModelSelector",components:{ElRadioButton:Y,ElRadioGroup:X},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=K)}}),Le={class:"field"},Ue={class:"title font-bold"};function Ae(e,o,c,d,v,b){const p=s("el-radio-button"),m=s("el-radio-group");return a(),l("div",Le,[r("h2",Ue,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(),E(p,{key:n.value,label:n.value},{default:u(()=>[h(i(n.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const Re=k(Pe,[["render",Ae],["__scopeId","data-v-b72865fa"]]),De=$({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=H)}}),Ge={class:"field"},Me={class:"title font-bold"};function Oe(e,o,c,d,v,b){const p=s("el-option"),m=s("el-select");return a(),l("div",Ge,[r("h2",Me,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(),E(p,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const qe=k(De,[["render",Oe],["__scopeId","data-v-7b2e870a"]]),Be=$({name:"ImageUrlInput",components:{ElUpload:ee,ElButton:L,InfoIcon:D,ImagePreview:x,FontAwesomeIcon:P},mixins:[Z],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(){V.warning(this.$t("pika.message.uploadStartImageExceed"))},onError(){V.error(this.$t("pika.message.uploadStartImageError"))},async onRemove(){V.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()}}}),je={class:"field"},Fe={class:"title font-bold"},Ne={class:"upload-wrapper"};function ze(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",je,[r("h2",Fe,i(e.$t("pika.name.imageUrl")),1),r("div",Ne,[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 Ke=k(Be,[["render",ze],["__scopeId","data-v-a948772f"]]),He="",Je=$({name:"PromptInput",components:{ElInput:te,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=He)}}),Qe={class:"field"},We={class:"box"},Xe={class:"title font-bold"};function Ye(e,o,c,d,v,b){const p=s("info-icon"),m=s("el-input");return a(),l("div",Qe,[r("div",We,[r("h2",Xe,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 Ze=k(Je,[["render",Ye],["__scopeId","data-v-d7f7cedd"]]),xe=$({name:"PresetPanel",components:{ImageUrlInput:Ke,ElButton:L,FontAwesomeIcon:P,Consumption:oe,PromptInput:Ze,IngredientsSelector:we,IngredientsModelSelector:Re,ModelSelector:qe,EffectSelector:Ce},emits:["generate"],computed:{config(){return this.$store.state.pika?.config},consumption(){return se(this.config,this.service?.cost)},service(){return this.$store.state.pika?.service}},methods:{onGenerate(){this.$emit("generate")}}}),et={class:"flex flex-col h-full"},tt={class:"flex-1 overflow-y-auto p-5"},ot={class:"flex flex-col items-center justify-center px-5 pb-5"};function st(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",et,[r("div",tt,[t(p,{class:"mb-4"}),t(m,{class:"mb-4"}),t(n,{class:"mb-4"}),t(y,{class:"mb-4"}),e.config?.ingredients?(a(),E(f,{key:0,class:"mb-4"})):g("",!0),e.config?.ingredients?(a(),E(_,{key:1,class:"mb-4"})):g("",!0)]),r("div",ot,[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 at=k(xe,[["render",st]]),nt=$({name:"VideoPlayer",components:{VuePlyr:le},props:{modelValue:{type:Object,required:!0}},data(){return{options:{quality:{default:"1080p"}}}}}),it=["data-poster"],lt=["src"];function rt(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,lt)],8,it)]),_:1},8,["options"])])}const ct=k(nt,[["render",rt],["__scopeId","data-v-fc420430"]]),pt=$({name:"TaskPreview",components:{ElImage:pe,CopyToClipboard:ie,FontAwesomeIcon:P,ElAlert:ce,VideoPlayer:ct,ElTooltip:re,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")}}}),dt={class:"left"},ut={class:"main"},mt={class:"bot"},ft={class:"datetime"},_t={class:"info"},ht={key:0,class:"prompt mt-2"},gt={key:0},$t={key:1},kt={key:0,class:U({content:!0,failed:!0})},vt={class:"image-wrapper"},bt={key:0,class:U({operations:!0,"mt-2":!0})},yt={key:0,class:"description"},wt={class:"description"},Vt={key:1,class:"description"},Et={key:1,class:U({content:!0})},It={class:"description"},St={class:"description"},Tt={key:0,class:"description"},Ct={class:"description"},Pt={key:2,class:U({content:!0})},Lt={class:"description"};function Ut(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",dt,[t(p,{src:"https://cdn.acedata.cloud/i80tgn.png",class:"avatar"})]),r("div",ut,[r("div",mt,[h(i(e.$t("pika.name.pikaBot"))+" ",1),r("span",ft,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",_t,[e.modelValue?.request?.prompt?(a(),l("p",ht,[h(i(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?g("",!0):(a(),l("span",gt," - ("+i(e.$t("pika.status.pending"))+") ",1)),w?.state==="processing"||w?.state==="pending"?(a(),l("span",$t," - ("+i(e.$t("pika.status.processing"))+") ",1)):g("",!0)])):g("",!0)]),e.modelValue?.response?.success===!0?(a(),l("div",kt,[r("div",vt,[t(m,{"model-value":w},null,8,["model-value"])]),w?(a(),l("div",bt,[t(y,{class:"box-item",effect:"dark",content:e.$t("pika.message.downloadVideo"),placement:"top-start"},{default:u(()=>[w?.video_url?(a(),E(n,{key:0,type:"info",size:"small",class:"btn-action",onClick:Ft=>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",yt,[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",wt,[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",Vt,[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",Et,[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",It,[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",St,[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",Tt,[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",Ct,[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",Pt,[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",Lt,[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 At=k(pt,[["render",Ut],["__scopeId","data-v-41fe2be6"]]),Rt=$({name:"RecentPanel",components:{TaskPreview:At,BotPlaceholder:de,NoTasks:ue,ScrollList:J},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.pika?.tasks,items:this.$store.state.pika?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Dt={key:0},Gt={key:2,class:"w-full h-full flex items-center justify-center"};function Mt(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",Dt,[t(p)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),E(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(),E(m,{key:_,"model-value":f},null,8,["model-value"]))),128))]),_:1},8,["loading"])):g("",!0),e.tasks?.items?.length===0?(a(),l("div",Gt,[t(y)])):g("",!0)],64)}const Ot=k(Rt,[["render",Mt]]),qt=N("pika"),Bt=$({name:"PikaIndex",components:{ConfigPanel:at,Layout:$e,RecentPanel:Ot},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 Q({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(){F.create({application:this.application}).then(({data:e})=>{this.application=e,V.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===ne&&V.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:qt},o=this.credential?.token;if(!o){console.error("no token specified");return}V.info(this.$t("pika.message.startingTask")),B("pika",j.generate(e,{token:o})).then(()=>{V.success(this.$t("pika.message.startTaskSuccess")),this.$store.commit("pika/setConfig",{config:void 0})}).catch(c=>{c?.response?.data?.error?.code===ae?V.error(this.$t("pika.message.usedUp")):V.error(this.$t("pika.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function jt(e,o,c,d,v,b){const p=s("config-panel"),m=s("recent-panel"),n=s("layout");return a(),E(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 Go=k(Bt,[["render",jt],["__scopeId","data-v-3cd7cf5b"]]);export{Go as default};
1
+ import{F as P}from"./index.es-f2R6ubO6.js";import{E as L}from"./index-D-4JF5KB.js";import{E as O}from"./index-CKceOzxT.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 E,I as h,J as g,Q as U}from"./vendor-vue-NSDaktjZ.js";import{G as k,bj as q,co as B,aD as j,n as F,S as C,cp as N}from"./index-DVUMZ05r.js";import{a as z,b as K,c as H}from"./pika-DpzVVVef.js";import{I as D,S as J,l as Q}from"./pagination-BIv0I4gk.js";import{E as W}from"./index-DMHXbvDD.js";import{E as G,a as M}from"./index-BKHSCugF.js";import{a as X,E as Y}from"./index-BqsKk8tF.js";import{p as Z}from"./pasteUploadMixin-BurWbGNQ.js";import{I as x}from"./ImagePreview-CUVXtH2l.js";import{E as ee}from"./index-r007Lgz_.js";import{E as V}from"./index-CsGFFE61.js";import{E as te}from"./index-CtbJ8jTa.js";import{C as oe}from"./Consumption-BKf_KS7X.js";import{a as se}from"./price-3Bxyzfub.js";import{b as ae,a as ne}from"./errorCode-Cqj9Td_Z.js";import{C as ie}from"./CopyToClipboard-CIRw6WL5.js";import{s as le}from"./vue-plyr-BO2nlN4c.js";import{E as re}from"./index-CWdAzE8_.js";import{E as ce}from"./index-Cd_qWETX.js";import{E as pe}from"./index-DrLf4K3A.js";import{B as de}from"./BotPlaceholder-oG7ygyok.js";import{N as ue}from"./NoTasks-9iEEhsIS.js";import"./use-form-item-DhMXJI5q.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./validator-C_MCdjOG.js";import"./index-B5Z3EZrb.js";import"./index-jyz6xleX.js";import"./typescript-qAIJ13Qr.js";import"./strings-beZM2Y-f.js";import"./isEqual-B1Z_z-Zf.js";import"./_Uint8Array-yhuF-6h2.js";import"./castArray-B2mZnC5U.js";import"./debounce-C18vO1_Z.js";import"./_baseIteratee-CTMClKxb.js";import"./index-GfS1QM00.js";import"./index-eWlKuNNN.js";import"./_baseClone-Ccji6pFO.js";import"./_initCloneObject-D2UisHWT.js";import"./index-CSLM8oj_.js";import"./index-CGBK8gn9.js";const me=$({name:"LayoutPika",components:{ElDrawer:O,ElButton:L,FontAwesomeIcon:P},data(){return{drawer:!1}}}),fe={class:"main flex flex-row flex-1"},_e={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},he={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ge(e,o,c,d,v,b){const p=s("font-awesome-icon"),m=s("el-button"),n=s("el-drawer");return a(),l("div",fe,[r("div",_e,[R(e.$slots,"config",{},void 0,!0)]),r("div",he,[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 $e=k(me,[["render",ge],["__scopeId","data-v-10596416"]]),ke=$({name:"IngredientsSelector",components:{ElSwitch:W,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=z)}}),ve={class:"field"},be={class:"title font-bold"};function ye(e,o,c,d,v,b){const p=s("el-switch"),m=s("info-icon");return a(),l("div",ve,[r("h2",be,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 we=k(ke,[["render",ye],["__scopeId","data-v-17c0af5c"]]),Ve=$({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})}}}}),Ee={class:"field"},Ie={class:"title font-bold"},Se={class:"float-left"};function Te(e,o,c,d,v,b){const p=s("el-option"),m=s("el-select");return a(),l("div",Ee,[r("h2",Ie,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(),E(p,{key:n.value,label:n.label,value:n.value},{default:u(()=>[r("span",Se,i(n.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ce=k(Ve,[["render",Te],["__scopeId","data-v-d1c54475"]]),Pe=$({name:"IngredientsModelSelector",components:{ElRadioButton:Y,ElRadioGroup:X},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=K)}}),Le={class:"field"},Ue={class:"title font-bold"};function Ae(e,o,c,d,v,b){const p=s("el-radio-button"),m=s("el-radio-group");return a(),l("div",Le,[r("h2",Ue,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(),E(p,{key:n.value,label:n.value},{default:u(()=>[h(i(n.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const Re=k(Pe,[["render",Ae],["__scopeId","data-v-b72865fa"]]),De=$({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=H)}}),Ge={class:"field"},Me={class:"title font-bold"};function Oe(e,o,c,d,v,b){const p=s("el-option"),m=s("el-select");return a(),l("div",Ge,[r("h2",Me,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(),E(p,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const qe=k(De,[["render",Oe],["__scopeId","data-v-7b2e870a"]]),Be=$({name:"ImageUrlInput",components:{ElUpload:ee,ElButton:L,InfoIcon:D,ImagePreview:x,FontAwesomeIcon:P},mixins:[Z],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(){V.warning(this.$t("pika.message.uploadStartImageExceed"))},onError(){V.error(this.$t("pika.message.uploadStartImageError"))},async onRemove(){V.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()}}}),je={class:"field"},Fe={class:"title font-bold"},Ne={class:"upload-wrapper"};function ze(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",je,[r("h2",Fe,i(e.$t("pika.name.imageUrl")),1),r("div",Ne,[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 Ke=k(Be,[["render",ze],["__scopeId","data-v-a948772f"]]),He="",Je=$({name:"PromptInput",components:{ElInput:te,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=He)}}),Qe={class:"field"},We={class:"box"},Xe={class:"title font-bold"};function Ye(e,o,c,d,v,b){const p=s("info-icon"),m=s("el-input");return a(),l("div",Qe,[r("div",We,[r("h2",Xe,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 Ze=k(Je,[["render",Ye],["__scopeId","data-v-d7f7cedd"]]),xe=$({name:"PresetPanel",components:{ImageUrlInput:Ke,ElButton:L,FontAwesomeIcon:P,Consumption:oe,PromptInput:Ze,IngredientsSelector:we,IngredientsModelSelector:Re,ModelSelector:qe,EffectSelector:Ce},emits:["generate"],computed:{config(){return this.$store.state.pika?.config},consumption(){return se(this.config,this.service?.cost)},service(){return this.$store.state.pika?.service}},methods:{onGenerate(){this.$emit("generate")}}}),et={class:"flex flex-col h-full"},tt={class:"flex-1 overflow-y-auto p-5"},ot={class:"flex flex-col items-center justify-center px-5 pb-5"};function st(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",et,[r("div",tt,[t(p,{class:"mb-4"}),t(m,{class:"mb-4"}),t(n,{class:"mb-4"}),t(y,{class:"mb-4"}),e.config?.ingredients?(a(),E(f,{key:0,class:"mb-4"})):g("",!0),e.config?.ingredients?(a(),E(_,{key:1,class:"mb-4"})):g("",!0)]),r("div",ot,[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 at=k(xe,[["render",st]]),nt=$({name:"VideoPlayer",components:{VuePlyr:le},props:{modelValue:{type:Object,required:!0}},data(){return{options:{quality:{default:"1080p"}}}}}),it=["data-poster"],lt=["src"];function rt(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,lt)],8,it)]),_:1},8,["options"])])}const ct=k(nt,[["render",rt],["__scopeId","data-v-fc420430"]]),pt=$({name:"TaskPreview",components:{ElImage:pe,CopyToClipboard:ie,FontAwesomeIcon:P,ElAlert:ce,VideoPlayer:ct,ElTooltip:re,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")}}}),dt={class:"left"},ut={class:"main"},mt={class:"bot"},ft={class:"datetime"},_t={class:"info"},ht={key:0,class:"prompt mt-2"},gt={key:0},$t={key:1},kt={key:0,class:U({content:!0,failed:!0})},vt={class:"image-wrapper"},bt={key:0,class:U({operations:!0,"mt-2":!0})},yt={key:0,class:"description"},wt={class:"description"},Vt={key:1,class:"description"},Et={key:1,class:U({content:!0})},It={class:"description"},St={class:"description"},Tt={key:0,class:"description"},Ct={class:"description"},Pt={key:2,class:U({content:!0})},Lt={class:"description"};function Ut(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",dt,[t(p,{src:"https://cdn.acedata.cloud/i80tgn.png",class:"avatar"})]),r("div",ut,[r("div",mt,[h(i(e.$t("pika.name.pikaBot"))+" ",1),r("span",ft,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",_t,[e.modelValue?.request?.prompt?(a(),l("p",ht,[h(i(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?g("",!0):(a(),l("span",gt," - ("+i(e.$t("pika.status.pending"))+") ",1)),w?.state==="processing"||w?.state==="pending"?(a(),l("span",$t," - ("+i(e.$t("pika.status.processing"))+") ",1)):g("",!0)])):g("",!0)]),e.modelValue?.response?.success===!0?(a(),l("div",kt,[r("div",vt,[t(m,{"model-value":w},null,8,["model-value"])]),w?(a(),l("div",bt,[t(y,{class:"box-item",effect:"dark",content:e.$t("pika.message.downloadVideo"),placement:"top-start"},{default:u(()=>[w?.video_url?(a(),E(n,{key:0,type:"info",size:"small",class:"btn-action",onClick:Ft=>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",yt,[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",wt,[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",Vt,[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",Et,[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",It,[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",St,[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",Tt,[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",Ct,[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",Pt,[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",Lt,[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 At=k(pt,[["render",Ut],["__scopeId","data-v-41fe2be6"]]),Rt=$({name:"RecentPanel",components:{TaskPreview:At,BotPlaceholder:de,NoTasks:ue,ScrollList:J},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.pika?.tasks,items:this.$store.state.pika?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Dt={key:0},Gt={key:2,class:"w-full h-full flex items-center justify-center"};function Mt(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",Dt,[t(p)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),E(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(),E(m,{key:_,"model-value":f},null,8,["model-value"]))),128))]),_:1},8,["loading"])):g("",!0),e.tasks?.items?.length===0?(a(),l("div",Gt,[t(y)])):g("",!0)],64)}const Ot=k(Rt,[["render",Mt]]),qt=N("pika"),Bt=$({name:"PikaIndex",components:{ConfigPanel:at,Layout:$e,RecentPanel:Ot},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 Q({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(){F.create({application:this.application}).then(({data:e})=>{this.application=e,V.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===ne&&V.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:qt},o=this.credential?.token;if(!o){console.error("no token specified");return}V.info(this.$t("pika.message.startingTask")),B("pika",j.generate(e,{token:o})).then(()=>{V.success(this.$t("pika.message.startTaskSuccess")),this.$store.commit("pika/setConfig",{config:void 0})}).catch(c=>{c?.response?.data?.error?.code===ae?V.error(this.$t("pika.message.usedUp")):V.error(this.$t("pika.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function jt(e,o,c,d,v,b){const p=s("config-panel"),m=s("recent-panel"),n=s("layout");return a(),E(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 Go=k(Bt,[["render",jt],["__scopeId","data-v-3cd7cf5b"]]);export{Go as default};
@@ -1 +1 @@
1
- import{F as P}from"./index.es-BGvCJe-W.js";import{E as U}from"./index-BF3jvRlG.js";import{E as Y}from"./index-CP6llfLN.js";import{d as b,H as i,E as r,z as L,C as a,y as p,D as n,q as t,F as l,O as E,N as T,x as m,Q as C,R as J,J as d,I as _}from"./vendor-vue-NSDaktjZ.js";import{G as k,bj as Q,co as W,aH as K,S as M,cp as Z}from"./index-B7lLMdzb.js";import{a as x,b as ee,c as oe,d as te,e as se,f as ne,g as G,h as ae,i as le,j as ie}from"./veo-Dg8Zhpd-.js";import{E as A,a as O}from"./index-B21ZeSrS.js";import{I as j,S as re,l as ce}from"./pagination-DSYOIV_9.js";import{E as de}from"./index-DvlZSfpu.js";import{V as D}from"./VideoPlayer-CndCLmxS.js";import{E as R}from"./index-zQkXvP4I.js";import{p as ue}from"./pasteUploadMixin-BurWbGNQ.js";import{I as pe}from"./ImagePreview-8xggEAtd.js";import{E as me}from"./index-2P6neM4R.js";import{E as I}from"./index-DmgFbW9M.js";import{C as ve}from"./Consumption-D1DmjLsj.js";import{a as fe}from"./price-BoiEmiVd.js";import{b as _e}from"./errorCode-Cqj9Td_Z.js";import{C as he}from"./CopyToClipboard-BS0IZ5vm.js";import{E as $e}from"./index-BiC7KGb5.js";import{E as ge}from"./index-ViGPRpNP.js";import{E as be}from"./index-DuW5L2r7.js";import{B as ke}from"./BotPlaceholder-qj2YLdAp.js";import{N as ye}from"./NoTasks-YcewaUb5.js";import"./use-form-item-DZgxCtXL.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./index-CGiBnpqk.js";import"./typescript-Bj1ijDQ6.js";import"./index-cN8cftWM.js";import"./strings-beZM2Y-f.js";import"./isEqual-CfmBLeOp.js";import"./_Uint8Array-4l3jEroS.js";import"./castArray-FN0qIC-F.js";import"./debounce-CqzxdC1T.js";import"./_baseIteratee-CJ9W-nbE.js";import"./index-CbH6hylr.js";import"./validator-2sHPIwNN.js";import"./vue-plyr-BO2nlN4c.js";import"./index-pQFvUXd3.js";import"./index-Dw3SeELD.js";import"./_baseClone-Db65SBvG.js";import"./_initCloneObject-C7XzV3eb.js";import"./index-B-vHnqyE.js";const Ve=b({name:"LayoutVeo",components:{ElDrawer:Y,ElButton:U,FontAwesomeIcon:P},data(){return{drawer:!1}}}),we={class:"main flex flex-row flex-1"},Ee={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},Ie={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function Te(e,o,v,f,y,V){const c=n("font-awesome-icon"),u=n("el-button"),s=n("el-drawer");return t(),i("div",we,[r("div",Ee,[L(e.$slots,"config",{},void 0,!0)]),r("div",Ie,[L(e.$slots,"result",{},void 0,!0)]),a(u,{circle:"",class:"menu",onClick:o[0]||(o[0]=w=>e.drawer=!0)},{default:p(()=>[a(c,{icon:"fa-solid fa-magic"})]),_:1}),a(s,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=w=>e.drawer=w),direction:"ltr","with-header":!1,size:"350px"},{default:p(()=>[L(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Se=k(Ve,[["render",Te],["__scopeId","data-v-9b26d591"]]),Ce=b({name:"ModelSelector",components:{ElSelect:O,ElOption:A},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"veo2",label:"veo2"},{value:"veo2-fast",label:"veo2-fast"},{value:"veo3",label:"veo3"},{value:"veo3-fast",label:"veo3-fast"},{value:"veo31-fast",label:"veo31-fast"},{value:"veo31",label:"veo31"},{value:"veo31-fast-ingredients",label:"veo31-fast-ingredients"}]}},computed:{value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,model:e})}}},mounted(){this.value||(this.value=x)}}),Ae={class:"field"},Oe={class:"title font-bold"};function Pe(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Ae,[r("h2",Oe,l(e.$t("veo.name.model")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ue=k(Ce,[["render",Pe],["__scopeId","data-v-a59d89c9"]]),Le=b({name:"ActionSelector",components:{ElSelect:O,ElOption:A},data(){return{}},computed:{options(){return[{value:"text2video",label:this.$t("veo.button.action1")},{value:"image2video",label:this.$t("veo.button.action2")},{value:"ingredients2video",label:this.$t("veo.button.actionIngredients")},{value:"upsample",label:this.$t("veo.button.actionUpsample")},{value:"extend",label:this.$t("veo.button.actionExtend")},{value:"reshoot",label:this.$t("veo.button.actionReshoot")},{value:"object_insert",label:this.$t("veo.button.actionObjectInsert")},{value:"object_remove",label:this.$t("veo.button.actionObjectRemove")}]},value:{get(){return this.$store.state.veo?.config?.action},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,action:e})}}},mounted(){this.value||(this.value=ee)}}),je={class:"field"},Re={class:"title font-bold"},Me={class:"float-left"};function Ge(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",je,[r("h2",Re,l(e.$t("veo.name.action")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select"),clearable:""},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},{default:p(()=>[r("span",Me,l(s.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const De=k(Le,[["render",Ge],["__scopeId","data-v-f4d8785c"]]),Ne=b({name:"TranslationSelector",components:{ElSwitch:de,InfoIcon:j},computed:{value:{get(){return this.$store.state.veo?.config?.translation},set(e){console.debug("set translation",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,translation:e})}}},mounted(){this.value===void 0&&(this.value=oe)}}),Fe={class:"relative"},ze={class:"flex justify-between"},Be={class:"flex justify-start items-center"},qe={class:"text-sm font-bold"},He={class:"flex justify-end items-center"};function Xe(e,o,v,f,y,V){const c=n("info-icon"),u=n("el-switch");return t(),i("div",Fe,[r("div",ze,[r("div",Be,[r("span",qe,l(e.$t("veo.name.translation")),1),a(c,{content:e.$t("veo.description.translation")},null,8,["content"])]),r("div",He,[a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value"},null,8,["modelValue"])])])])}const Ye=k(Ne,[["render",Xe]]),Je=b({name:"AspectRatioSelector",data(){return{options:[{value:"1:1",label:"1:1",width:20,height:20},{value:"4:3",label:"4:3",width:20,height:15},{value:"3:4",label:"3:4",width:15,height:20},{value:"16:9",label:"16:9",width:25,height:13},{value:"9:16",label:"9:16",width:13,height:25}]}},computed:{active(){return this.options.findIndex(e=>e.value===this.value)||0},value:{get(){return this.$store.state.veo?.config?.aspect_ratio},set(e){console.debug("set aspect_ratio",e),this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,aspect_ratio:e})}}},mounted(){this.value||(this.value=te)}}),Qe={class:"text-sm font-bold mb-2 block"},We={class:"items"},Ke=["onClick"],Ze={class:"name"};function xe(e,o,v,f,y,V){return t(),i("div",null,[r("span",Qe,l(e.$t("veo.name.ratio")),1),r("div",We,[(t(!0),i(E,null,T(e.options,(c,u)=>(t(),i("div",{key:u,class:C({active:e.active===u,item:!0}),onClick:s=>e.value=c.value},[r("div",{class:C(["preview",c.label])},[r("div",{class:"rect",style:J({width:c.width+"px",height:c.height+"px"})},null,4)],2),r("p",Ze,l(c.label),1)],10,Ke))),128))])])}const eo=k(Je,[["render",xe],["__scopeId","data-v-0f16be77"]]),oo=b({name:"VideoFromInput",components:{VideoPlayer:D},props:{modelValue:{type:Object,required:!1,default:void 0}},data(){return{options:{quality:{default:"1080p"}}}},computed:{config(){return this.$store.state.veo?.config}}}),to={class:"relative"},so={class:"flex mb-2"},no={class:"text-sm font-bold"};function ao(e,o,v,f,y,V){const c=n("video-player");return t(),i("div",to,[r("div",so,[r("span",no,l(e.$t("veo.name.action3")),1)]),r("div",null,[e.config?.video_url?(t(),m(c,{key:0,src:e.config?.video_url},null,8,["src"])):d("",!0)])])}const lo=k(oo,[["render",ao]]),io=b({name:"VideoIdInput",components:{ElInput:R},computed:{value:{get(){return this.$store.state.veo?.config?.video_id},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,video_id:e})}}}}),ro={class:"field"},co={class:"title font-bold"};function uo(e,o,v,f,y,V){const c=n("el-input");return t(),i("div",ro,[r("h2",co,l(e.$t("veo.name.videoId")),1),a(c,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=u=>e.value=u),class:"value",type:"text",placeholder:e.$t("veo.placeholder.videoId"),clearable:""},null,8,["modelValue","placeholder"])])}const po=k(io,[["render",uo],["__scopeId","data-v-6eba4026"]]),mo=b({name:"StartEndImage",components:{ElUpload:me,ElButton:U,InfoIcon:j,FontAwesomeIcon:P,ImagePreview:pe},mixins:[ue],emits:["change"],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?.veo?.config?.image_urls},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartEndImageUrl()},methods:{onExceed(){I.warning(this.$t("veo.message.uploadReferencesExceed"))},onError(){I.error(this.$t("veo.message.uploadReferencesError"))},onSetStartEndImageUrl(){const e=this.urls;this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),vo={class:"relative"},fo={class:"flex justify-between"},_o={class:"flex justify-start items-center"},ho={class:"text-sm font-bold"};function $o(e,o,v,f,y,V){const c=n("info-icon"),u=n("image-preview"),s=n("font-awesome-icon"),w=n("el-button"),$=n("el-upload");return t(),i("div",vo,[r("div",fo,[r("div",_o,[r("span",ho,l(e.$t("veo.name.startEndImage")),1),a(c,{content:e.$t("veo.description.uploadStartEndImage")},null,8,["content"])])]),a($,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=h=>e.fileList=h),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:2,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:p(({file:h})=>[h.url&&h.percentage!==void 0?(t(),m(u,{key:0,url:h.url,name:h.name,percentage:h.percentage,onRemove:S=>e.fileList.splice(e.fileList.indexOf(h),1)},null,8,["url","name","percentage","onRemove"])):d("",!0)]),default:p(()=>[a(w,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:p(()=>[a(s,{icon:"fa-solid fa-upload",class:"icon mr-1"}),_(" "+l(e.$t("veo.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const go=k(mo,[["render",$o],["__scopeId","data-v-b8ddb8fb"]]),bo=b({name:"UpsampleActionSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return ne.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.upsample_action},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,upsample_action:e})}}},mounted(){this.value||(this.value=se)}}),ko={class:"field"},yo={class:"title font-bold"};function Vo(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",ko,[r("h2",yo,l(e.$t("veo.name.upsampleAction")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const wo=k(bo,[["render",Vo],["__scopeId","data-v-8b74a7ae"]]),Eo=b({name:"ExtendModelSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return G.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,model:e})}}},mounted(){(!this.value||!G.includes(this.value))&&(this.value=ae)}}),Io={class:"field"},To={class:"title font-bold"};function So(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Io,[r("h2",To,l(e.$t("veo.name.model")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Co=k(Eo,[["render",So],["__scopeId","data-v-cc3f9355"]]),Ao=b({name:"MotionTypeSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return ie.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.motion_type},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,motion_type:e})}}},mounted(){this.value||(this.value=le)}}),Oo={class:"field"},Po={class:"title font-bold"};function Uo(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Oo,[r("h2",Po,l(e.$t("veo.name.motionType")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select"),filterable:""},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Lo=k(Ao,[["render",Uo],["__scopeId","data-v-3affff3c"]]),jo=b({name:"ImageMaskInput",components:{ElInput:R},computed:{value:{get(){return this.$store.state.veo?.config?.image_mask},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,image_mask:e})}}}}),Ro={class:"field"},Mo={class:"title font-bold"};function Go(e,o,v,f,y,V){const c=n("el-input");return t(),i("div",Ro,[r("h2",Mo,l(e.$t("veo.name.imageMask")),1),a(c,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=u=>e.value=u),class:"value",type:"text",placeholder:e.$t("veo.placeholder.imageMask"),clearable:""},null,8,["modelValue","placeholder"])])}const Do=k(jo,[["render",Go],["__scopeId","data-v-6cc27c68"]]),No="",Fo=b({name:"PromptInput",components:{ElInput:R,InfoIcon:j},computed:{prompt:{get(){return this.$store.state.veo?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=No)}}),zo={class:"field"},Bo={class:"box"},qo={class:"title font-bold"};function Ho(e,o,v,f,y,V){const c=n("info-icon"),u=n("el-input");return t(),i("div",zo,[r("div",Bo,[r("h2",qo,l(e.$t("veo.name.prompt")),1),a(c,{content:e.$t("veo.description.prompt"),class:"info"},null,8,["content"])]),a(u,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=s=>e.prompt=s),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("veo.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Xo=k(Fo,[["render",Ho],["__scopeId","data-v-84c55ea0"]]),Yo=["upsample","extend","reshoot","object_insert","object_remove","get1080p"],Jo=["text2video","image2video","ingredients2video"],Qo=b({name:"ConfigPanel",components:{ElButton:U,Consumption:ve,FontAwesomeIcon:P,PromptInput:Xo,ModelSelector:Ue,StartEndImage:go,ActionSelector:De,VideoFromInput:lo,VideoIdInput:po,UpsampleActionSelector:wo,ExtendModelSelector:Co,MotionTypeSelector:Lo,ImageMaskInput:Do,TranslationSelector:Ye,AspectRatioSelector:eo},emits:["generate"],computed:{config(){return this.$store.state.veo?.config},consumption(){return fe(this.config,this.service?.cost)},service(){return this.$store.state.veo?.service},isPostProcessing(){return Yo.includes(this.config?.action??"")},isGeneration(){return Jo.includes(this.config?.action??"")}},methods:{onGenerate(){this.$emit("generate")}}}),Wo={class:"flex flex-col h-full"},Ko={class:"flex-1 overflow-y-auto p-5"},Zo={class:"flex flex-col items-center justify-center px-5 pb-5"};function xo(e,o,v,f,y,V){const c=n("action-selector"),u=n("video-from-input"),s=n("video-id-input"),w=n("upsample-action-selector"),$=n("extend-model-selector"),h=n("prompt-input"),S=n("motion-type-selector"),g=n("image-mask-input"),N=n("translation-selector"),F=n("aspect-ratio-selector"),z=n("model-selector"),B=n("start-end-image"),q=n("consumption"),H=n("font-awesome-icon"),X=n("el-button");return t(),i("div",Wo,[r("div",Ko,[a(c,{class:"mb-4"}),e.isPostProcessing?(t(),i(E,{key:0},[e.config?.video_url?(t(),m(u,{key:0,class:"mb-4"})):d("",!0),a(s,{class:"mb-4"})],64)):d("",!0),e.config?.action==="upsample"?(t(),m(w,{key:1,class:"mb-4"})):d("",!0),e.config?.action==="extend"?(t(),m($,{key:2,class:"mb-4"})):d("",!0),e.config?.action==="extend"?(t(),m(h,{key:3,class:"mb-4"})):d("",!0),e.config?.action==="reshoot"?(t(),m(S,{key:4,class:"mb-4"})):d("",!0),e.config?.action==="object_insert"?(t(),m(h,{key:5,class:"mb-4"})):d("",!0),e.config?.action==="object_insert"||e.config?.action==="object_remove"?(t(),m(g,{key:6,class:"mb-4"})):d("",!0),e.config?.action==="object_remove"?(t(),m(h,{key:7,class:"mb-4"})):d("",!0),e.isGeneration?(t(),i(E,{key:8},[a(N,{class:"mb-4"}),a(F,{class:"mb-4"}),a(h,{class:"mb-4"}),e.config?.action!=="ingredients2video"?(t(),m(z,{key:0,class:"mb-4"})):d("",!0),e.config?.action==="image2video"||e.config?.action==="ingredients2video"?(t(),m(B,{key:1,class:"mb-2"})):d("",!0)],64)):d("",!0)]),r("div",Zo,[a(q,{value:e.consumption,service:e.service},null,8,["value","service"]),a(X,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:p(()=>[a(H,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+l(e.$t("veo.button.generate")),1)]),_:1},8,["onClick"])])])}const et=k(Qo,[["render",xo]]),ot=b({name:"TaskPreview",components:{ElImage:be,CopyToClipboard:he,FontAwesomeIcon:P,ElAlert:ge,VideoPlayer:D,ElTooltip:$e,ElButton:U},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.veo?.application},config(){return this.$store.state.veo?.config}},methods:{onPickAction(e,o,v,f){console.debug("seed config from preview",{action:v,upsampleAction:f,response:o}),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,action:v,video_id:o?.data?.[0]?.id,video_url:o?.data?.[0]?.video_url,...f?{upsample_action:f}:{}})},onDownload(e,o){e.stopPropagation(),console.log("on download"),window.open(o,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),tt={class:"preview"},st={class:"left"},nt={class:"main"},at={class:"bot"},lt={class:"datetime"},it={class:"info"},rt={key:0,class:"prompt mt-2"},ct={key:0},dt={key:1},ut={key:0,class:C({content:!0,failed:!0})},pt={key:0,class:"mb-4"},mt={key:1,class:C({operations:!0,"mt-2":!0})},vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},_t={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ht={key:1,class:C({content:!0})},$t={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},gt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},bt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},kt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},yt={key:2,class:C({content:!0})},Vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},wt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Et(e,o,v,f,y,V){const c=n("el-image"),u=n("video-player"),s=n("el-button"),w=n("el-tooltip"),$=n("font-awesome-icon"),h=n("copy-to-clipboard"),S=n("el-alert");return t(),i("div",tt,[r("div",st,[a(c,{src:"https://cdn.acedata.cloud/8nxyy9.jpg",class:"avatar"})]),r("div",nt,[r("div",at,[_(l(e.$t("veo.name.veoBot"))+" ",1),r("span",lt,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",it,[e.modelValue?.request?.prompt?(t(),i("p",rt,[_(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?d("",!0):(t(),i("span",ct," - ("+l(e.$t("veo.status.pending"))+") ",1)),Array.isArray(e.modelValue?.response?.data)&&e.modelValue?.response?.data[0]?.state==="running"?(t(),i("span",dt," - ("+l(e.$t("veo.status.processing"))+") ",1)):d("",!0)])):d("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(t(),i("div",ut,[e.modelValue?.response?.data[0]?.video_url?(t(),i("div",pt,[a(u,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):d("",!0),e.modelValue?.response.success?(t(),i("div",mt,[e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:0,type:"info",size:"small",class:"btn-action",onClick:o[0]||(o[0]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","1080p"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsample1080p")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:1,type:"info",size:"small",class:"btn-action",onClick:o[1]||(o[1]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","4k"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsample4k")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:2,type:"info",size:"small",class:"btn-action",onClick:o[2]||(o[2]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","gif"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsampleGif")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:3,type:"info",size:"small",class:"btn-action",onClick:o[3]||(o[3]=g=>e.onPickAction(g,e.modelValue?.response,"extend"))},{default:p(()=>[_(l(e.$t("veo.button.actionExtend")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:4,type:"info",size:"small",class:"btn-action",onClick:o[4]||(o[4]=g=>e.onPickAction(g,e.modelValue?.response,"reshoot"))},{default:p(()=>[_(l(e.$t("veo.button.actionReshoot")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:5,type:"info",size:"small",class:"btn-action",onClick:o[5]||(o[5]=g=>e.onPickAction(g,e.modelValue?.response,"object_insert"))},{default:p(()=>[_(l(e.$t("veo.button.actionObjectInsert")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:6,type:"info",size:"small",class:"btn-action",onClick:o[6]||(o[6]=g=>e.onPickAction(g,e.modelValue?.response,"object_remove"))},{default:p(()=>[_(l(e.$t("veo.button.actionObjectRemove")),1)]),_:1})):d("",!0),a(w,{class:"box-item",effect:"dark",content:e.$t("veo.message.downloadVideo"),placement:"top-start"},{default:p(()=>[e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:0,type:"info",size:"small",class:"btn-action",onClick:o[7]||(o[7]=g=>e.onDownload(g,e.modelValue?.response?.data[0]?.video_url))},{default:p(()=>[_(l(e.$t("veo.button.download")),1)]),_:1})):d("",!0)]),_:1},8,["content"])])):d("",!0),a(S,{closable:!1,class:"mt-2 success"},{default:p(()=>[r("p",vt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.model"))+": "+l(e.modelValue?.request?.model),1)]),r("p",ft,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.elapsed?(t(),i("p",_t,[a($,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+l(e.$t("veo.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):d("",!0)]),_:1})])):d("",!0),e.modelValue?.response?.success===!1?(t(),i("div",ht,[a(S,{closable:!1,class:"failure"},{template:p(()=>[a($,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+l(e.$t("veo.name.failure")),1)]),default:p(()=>[r("p",$t,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),r("p",gt,[a($,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+l(e.$t("veo.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),a(h,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.elapsed?(t(),i("p",bt,[a($,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+l(e.$t("veo.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):d("",!0),e.modelValue?.response?.trace_id?(t(),i("p",kt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),a(h,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):d("",!0)]),_:1})])):d("",!0),e.modelValue?.response?.success===void 0?(t(),i("div",yt,[a(S,{closable:!1,class:"info"},{template:p(()=>[a($,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+l(e.$t("veo.name.failure")),1)]),default:p(()=>[r("p",Vt,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(t(),i("p",wt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),a(h,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):d("",!0)]),_:1})])):d("",!0)])])}const It=k(ot,[["render",Et],["__scopeId","data-v-83f2991f"]]),Tt=b({name:"RecentPanel",components:{TaskPreview:It,NoTasks:ye,BotPlaceholder:ke,ScrollList:re},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.veo?.tasks,items:this.$store.state.veo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),St={key:0},Ct={key:2,class:"w-full h-full flex items-center justify-center"};function At(e,o,v,f,y,V){const c=n("bot-placeholder"),u=n("task-preview"),s=n("scroll-list"),w=n("no-tasks");return t(),i(E,null,[e.tasks?.items===void 0?(t(),i("div",St,[a(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(t(),m(s,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:o[0]||(o[0]=$=>e.$emit("reach-top"))},{default:p(()=>[(t(!0),i(E,null,T(e.tasks?.items,($,h)=>(t(),m(u,{key:h,"model-value":$},null,8,["model-value"]))),128))]),_:1},8,["loading"])):d("",!0),e.tasks?.items?.length===0?(t(),i("div",Ct,[a(w)])):d("",!0)],64)}const Ot=k(Tt,[["render",At]]),Pt=Z("veo"),Ut=b({name:"VeoIndex",components:{ConfigPanel:et,Layout:Se,RecentPanel:Ot},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.veo?.status?.getApplications===M.Request},tasksLoading(){return this.$store.state.veo?.status?.getTasks===M.Request||this.fetchingTasks},credential(){return this.$store.state.veo.credential},config(){return this.$store.state.veo.config},tasks(){return this.$store.state.veo.tasks}},watch:{tasks:{handler(e,o){e?.items?.length>o?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ce({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("veo/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("veo/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:o=5,createdAtMin:v,createdAtMax:f}=e||{};console.debug("limit",o,"createdAtMin",v,"createdAtMax",f),this.fetchingTasks=!0;try{await this.$store.dispatch("veo/getTasks",{limit:o,createdAtMin:v,createdAtMax:f})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Pt},o=this.credential?.token;if(!o){console.error("no token specified");return}if(e.action==="image2video"&&!(e.image_urls&&e.image_urls.length>0)){I.warning(this.$t("veo.message.imageRequired"));return}(!e.image_urls||e.image_urls.length===0)&&delete e.image_urls,I.info(this.$t("veo.message.startingTask")),W("veo",K.generate(e,{token:o})).then(()=>{I.success(this.$t("veo.message.startTaskSuccess"))}).catch(v=>{v?.response?.data?.error?.code===_e?I.error(this.$t("veo.message.usedUp")):I.error(this.$t("veo.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Lt(e,o,v,f,y,V){const c=n("config-panel"),u=n("recent-panel"),s=n("layout");return t(),m(s,null,{config:p(()=>[a(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:p(()=>[a(u,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Ts=k(Ut,[["render",Lt]]);export{Ts as default};
1
+ import{F as P}from"./index.es-f2R6ubO6.js";import{E as U}from"./index-D-4JF5KB.js";import{E as Y}from"./index-CKceOzxT.js";import{d as b,H as i,E as r,z as L,C as a,y as p,D as n,q as t,F as l,O as E,N as T,x as m,Q as C,R as J,J as d,I as _}from"./vendor-vue-NSDaktjZ.js";import{G as k,bj as Q,co as W,aH as K,S as M,cp as Z}from"./index-DVUMZ05r.js";import{a as x,b as ee,c as oe,d as te,e as se,f as ne,g as G,h as ae,i as le,j as ie}from"./veo-Dg8Zhpd-.js";import{E as A,a as O}from"./index-BKHSCugF.js";import{I as j,S as re,l as ce}from"./pagination-BIv0I4gk.js";import{E as de}from"./index-DMHXbvDD.js";import{V as D}from"./VideoPlayer-CXT39jg2.js";import{E as R}from"./index-CtbJ8jTa.js";import{p as ue}from"./pasteUploadMixin-BurWbGNQ.js";import{I as pe}from"./ImagePreview-CUVXtH2l.js";import{E as me}from"./index-r007Lgz_.js";import{E as I}from"./index-CsGFFE61.js";import{C as ve}from"./Consumption-BKf_KS7X.js";import{a as fe}from"./price-3Bxyzfub.js";import{b as _e}from"./errorCode-Cqj9Td_Z.js";import{C as he}from"./CopyToClipboard-CIRw6WL5.js";import{E as $e}from"./index-CWdAzE8_.js";import{E as ge}from"./index-Cd_qWETX.js";import{E as be}from"./index-DrLf4K3A.js";import{B as ke}from"./BotPlaceholder-oG7ygyok.js";import{N as ye}from"./NoTasks-9iEEhsIS.js";import"./use-form-item-DhMXJI5q.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./index-jyz6xleX.js";import"./typescript-qAIJ13Qr.js";import"./index-B5Z3EZrb.js";import"./strings-beZM2Y-f.js";import"./isEqual-B1Z_z-Zf.js";import"./_Uint8Array-yhuF-6h2.js";import"./castArray-B2mZnC5U.js";import"./debounce-C18vO1_Z.js";import"./_baseIteratee-CTMClKxb.js";import"./index-GfS1QM00.js";import"./validator-C_MCdjOG.js";import"./vue-plyr-BO2nlN4c.js";import"./index-CSLM8oj_.js";import"./index-eWlKuNNN.js";import"./_baseClone-Ccji6pFO.js";import"./_initCloneObject-D2UisHWT.js";import"./index-CGBK8gn9.js";const Ve=b({name:"LayoutVeo",components:{ElDrawer:Y,ElButton:U,FontAwesomeIcon:P},data(){return{drawer:!1}}}),we={class:"main flex flex-row flex-1"},Ee={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},Ie={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function Te(e,o,v,f,y,V){const c=n("font-awesome-icon"),u=n("el-button"),s=n("el-drawer");return t(),i("div",we,[r("div",Ee,[L(e.$slots,"config",{},void 0,!0)]),r("div",Ie,[L(e.$slots,"result",{},void 0,!0)]),a(u,{circle:"",class:"menu",onClick:o[0]||(o[0]=w=>e.drawer=!0)},{default:p(()=>[a(c,{icon:"fa-solid fa-magic"})]),_:1}),a(s,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=w=>e.drawer=w),direction:"ltr","with-header":!1,size:"350px"},{default:p(()=>[L(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Se=k(Ve,[["render",Te],["__scopeId","data-v-9b26d591"]]),Ce=b({name:"ModelSelector",components:{ElSelect:O,ElOption:A},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"veo2",label:"veo2"},{value:"veo2-fast",label:"veo2-fast"},{value:"veo3",label:"veo3"},{value:"veo3-fast",label:"veo3-fast"},{value:"veo31-fast",label:"veo31-fast"},{value:"veo31",label:"veo31"},{value:"veo31-fast-ingredients",label:"veo31-fast-ingredients"}]}},computed:{value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,model:e})}}},mounted(){this.value||(this.value=x)}}),Ae={class:"field"},Oe={class:"title font-bold"};function Pe(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Ae,[r("h2",Oe,l(e.$t("veo.name.model")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ue=k(Ce,[["render",Pe],["__scopeId","data-v-a59d89c9"]]),Le=b({name:"ActionSelector",components:{ElSelect:O,ElOption:A},data(){return{}},computed:{options(){return[{value:"text2video",label:this.$t("veo.button.action1")},{value:"image2video",label:this.$t("veo.button.action2")},{value:"ingredients2video",label:this.$t("veo.button.actionIngredients")},{value:"upsample",label:this.$t("veo.button.actionUpsample")},{value:"extend",label:this.$t("veo.button.actionExtend")},{value:"reshoot",label:this.$t("veo.button.actionReshoot")},{value:"object_insert",label:this.$t("veo.button.actionObjectInsert")},{value:"object_remove",label:this.$t("veo.button.actionObjectRemove")}]},value:{get(){return this.$store.state.veo?.config?.action},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,action:e})}}},mounted(){this.value||(this.value=ee)}}),je={class:"field"},Re={class:"title font-bold"},Me={class:"float-left"};function Ge(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",je,[r("h2",Re,l(e.$t("veo.name.action")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select"),clearable:""},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},{default:p(()=>[r("span",Me,l(s.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const De=k(Le,[["render",Ge],["__scopeId","data-v-f4d8785c"]]),Ne=b({name:"TranslationSelector",components:{ElSwitch:de,InfoIcon:j},computed:{value:{get(){return this.$store.state.veo?.config?.translation},set(e){console.debug("set translation",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,translation:e})}}},mounted(){this.value===void 0&&(this.value=oe)}}),Fe={class:"relative"},ze={class:"flex justify-between"},Be={class:"flex justify-start items-center"},qe={class:"text-sm font-bold"},He={class:"flex justify-end items-center"};function Xe(e,o,v,f,y,V){const c=n("info-icon"),u=n("el-switch");return t(),i("div",Fe,[r("div",ze,[r("div",Be,[r("span",qe,l(e.$t("veo.name.translation")),1),a(c,{content:e.$t("veo.description.translation")},null,8,["content"])]),r("div",He,[a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value"},null,8,["modelValue"])])])])}const Ye=k(Ne,[["render",Xe]]),Je=b({name:"AspectRatioSelector",data(){return{options:[{value:"1:1",label:"1:1",width:20,height:20},{value:"4:3",label:"4:3",width:20,height:15},{value:"3:4",label:"3:4",width:15,height:20},{value:"16:9",label:"16:9",width:25,height:13},{value:"9:16",label:"9:16",width:13,height:25}]}},computed:{active(){return this.options.findIndex(e=>e.value===this.value)||0},value:{get(){return this.$store.state.veo?.config?.aspect_ratio},set(e){console.debug("set aspect_ratio",e),this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,aspect_ratio:e})}}},mounted(){this.value||(this.value=te)}}),Qe={class:"text-sm font-bold mb-2 block"},We={class:"items"},Ke=["onClick"],Ze={class:"name"};function xe(e,o,v,f,y,V){return t(),i("div",null,[r("span",Qe,l(e.$t("veo.name.ratio")),1),r("div",We,[(t(!0),i(E,null,T(e.options,(c,u)=>(t(),i("div",{key:u,class:C({active:e.active===u,item:!0}),onClick:s=>e.value=c.value},[r("div",{class:C(["preview",c.label])},[r("div",{class:"rect",style:J({width:c.width+"px",height:c.height+"px"})},null,4)],2),r("p",Ze,l(c.label),1)],10,Ke))),128))])])}const eo=k(Je,[["render",xe],["__scopeId","data-v-0f16be77"]]),oo=b({name:"VideoFromInput",components:{VideoPlayer:D},props:{modelValue:{type:Object,required:!1,default:void 0}},data(){return{options:{quality:{default:"1080p"}}}},computed:{config(){return this.$store.state.veo?.config}}}),to={class:"relative"},so={class:"flex mb-2"},no={class:"text-sm font-bold"};function ao(e,o,v,f,y,V){const c=n("video-player");return t(),i("div",to,[r("div",so,[r("span",no,l(e.$t("veo.name.action3")),1)]),r("div",null,[e.config?.video_url?(t(),m(c,{key:0,src:e.config?.video_url},null,8,["src"])):d("",!0)])])}const lo=k(oo,[["render",ao]]),io=b({name:"VideoIdInput",components:{ElInput:R},computed:{value:{get(){return this.$store.state.veo?.config?.video_id},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,video_id:e})}}}}),ro={class:"field"},co={class:"title font-bold"};function uo(e,o,v,f,y,V){const c=n("el-input");return t(),i("div",ro,[r("h2",co,l(e.$t("veo.name.videoId")),1),a(c,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=u=>e.value=u),class:"value",type:"text",placeholder:e.$t("veo.placeholder.videoId"),clearable:""},null,8,["modelValue","placeholder"])])}const po=k(io,[["render",uo],["__scopeId","data-v-6eba4026"]]),mo=b({name:"StartEndImage",components:{ElUpload:me,ElButton:U,InfoIcon:j,FontAwesomeIcon:P,ImagePreview:pe},mixins:[ue],emits:["change"],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?.veo?.config?.image_urls},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartEndImageUrl()},methods:{onExceed(){I.warning(this.$t("veo.message.uploadReferencesExceed"))},onError(){I.error(this.$t("veo.message.uploadReferencesError"))},onSetStartEndImageUrl(){const e=this.urls;this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),vo={class:"relative"},fo={class:"flex justify-between"},_o={class:"flex justify-start items-center"},ho={class:"text-sm font-bold"};function $o(e,o,v,f,y,V){const c=n("info-icon"),u=n("image-preview"),s=n("font-awesome-icon"),w=n("el-button"),$=n("el-upload");return t(),i("div",vo,[r("div",fo,[r("div",_o,[r("span",ho,l(e.$t("veo.name.startEndImage")),1),a(c,{content:e.$t("veo.description.uploadStartEndImage")},null,8,["content"])])]),a($,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=h=>e.fileList=h),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:2,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:p(({file:h})=>[h.url&&h.percentage!==void 0?(t(),m(u,{key:0,url:h.url,name:h.name,percentage:h.percentage,onRemove:S=>e.fileList.splice(e.fileList.indexOf(h),1)},null,8,["url","name","percentage","onRemove"])):d("",!0)]),default:p(()=>[a(w,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:p(()=>[a(s,{icon:"fa-solid fa-upload",class:"icon mr-1"}),_(" "+l(e.$t("veo.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const go=k(mo,[["render",$o],["__scopeId","data-v-b8ddb8fb"]]),bo=b({name:"UpsampleActionSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return ne.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.upsample_action},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,upsample_action:e})}}},mounted(){this.value||(this.value=se)}}),ko={class:"field"},yo={class:"title font-bold"};function Vo(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",ko,[r("h2",yo,l(e.$t("veo.name.upsampleAction")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const wo=k(bo,[["render",Vo],["__scopeId","data-v-8b74a7ae"]]),Eo=b({name:"ExtendModelSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return G.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,model:e})}}},mounted(){(!this.value||!G.includes(this.value))&&(this.value=ae)}}),Io={class:"field"},To={class:"title font-bold"};function So(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Io,[r("h2",To,l(e.$t("veo.name.model")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Co=k(Eo,[["render",So],["__scopeId","data-v-cc3f9355"]]),Ao=b({name:"MotionTypeSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return ie.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.motion_type},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,motion_type:e})}}},mounted(){this.value||(this.value=le)}}),Oo={class:"field"},Po={class:"title font-bold"};function Uo(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Oo,[r("h2",Po,l(e.$t("veo.name.motionType")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select"),filterable:""},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Lo=k(Ao,[["render",Uo],["__scopeId","data-v-3affff3c"]]),jo=b({name:"ImageMaskInput",components:{ElInput:R},computed:{value:{get(){return this.$store.state.veo?.config?.image_mask},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,image_mask:e})}}}}),Ro={class:"field"},Mo={class:"title font-bold"};function Go(e,o,v,f,y,V){const c=n("el-input");return t(),i("div",Ro,[r("h2",Mo,l(e.$t("veo.name.imageMask")),1),a(c,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=u=>e.value=u),class:"value",type:"text",placeholder:e.$t("veo.placeholder.imageMask"),clearable:""},null,8,["modelValue","placeholder"])])}const Do=k(jo,[["render",Go],["__scopeId","data-v-6cc27c68"]]),No="",Fo=b({name:"PromptInput",components:{ElInput:R,InfoIcon:j},computed:{prompt:{get(){return this.$store.state.veo?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=No)}}),zo={class:"field"},Bo={class:"box"},qo={class:"title font-bold"};function Ho(e,o,v,f,y,V){const c=n("info-icon"),u=n("el-input");return t(),i("div",zo,[r("div",Bo,[r("h2",qo,l(e.$t("veo.name.prompt")),1),a(c,{content:e.$t("veo.description.prompt"),class:"info"},null,8,["content"])]),a(u,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=s=>e.prompt=s),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("veo.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Xo=k(Fo,[["render",Ho],["__scopeId","data-v-84c55ea0"]]),Yo=["upsample","extend","reshoot","object_insert","object_remove","get1080p"],Jo=["text2video","image2video","ingredients2video"],Qo=b({name:"ConfigPanel",components:{ElButton:U,Consumption:ve,FontAwesomeIcon:P,PromptInput:Xo,ModelSelector:Ue,StartEndImage:go,ActionSelector:De,VideoFromInput:lo,VideoIdInput:po,UpsampleActionSelector:wo,ExtendModelSelector:Co,MotionTypeSelector:Lo,ImageMaskInput:Do,TranslationSelector:Ye,AspectRatioSelector:eo},emits:["generate"],computed:{config(){return this.$store.state.veo?.config},consumption(){return fe(this.config,this.service?.cost)},service(){return this.$store.state.veo?.service},isPostProcessing(){return Yo.includes(this.config?.action??"")},isGeneration(){return Jo.includes(this.config?.action??"")}},methods:{onGenerate(){this.$emit("generate")}}}),Wo={class:"flex flex-col h-full"},Ko={class:"flex-1 overflow-y-auto p-5"},Zo={class:"flex flex-col items-center justify-center px-5 pb-5"};function xo(e,o,v,f,y,V){const c=n("action-selector"),u=n("video-from-input"),s=n("video-id-input"),w=n("upsample-action-selector"),$=n("extend-model-selector"),h=n("prompt-input"),S=n("motion-type-selector"),g=n("image-mask-input"),N=n("translation-selector"),F=n("aspect-ratio-selector"),z=n("model-selector"),B=n("start-end-image"),q=n("consumption"),H=n("font-awesome-icon"),X=n("el-button");return t(),i("div",Wo,[r("div",Ko,[a(c,{class:"mb-4"}),e.isPostProcessing?(t(),i(E,{key:0},[e.config?.video_url?(t(),m(u,{key:0,class:"mb-4"})):d("",!0),a(s,{class:"mb-4"})],64)):d("",!0),e.config?.action==="upsample"?(t(),m(w,{key:1,class:"mb-4"})):d("",!0),e.config?.action==="extend"?(t(),m($,{key:2,class:"mb-4"})):d("",!0),e.config?.action==="extend"?(t(),m(h,{key:3,class:"mb-4"})):d("",!0),e.config?.action==="reshoot"?(t(),m(S,{key:4,class:"mb-4"})):d("",!0),e.config?.action==="object_insert"?(t(),m(h,{key:5,class:"mb-4"})):d("",!0),e.config?.action==="object_insert"||e.config?.action==="object_remove"?(t(),m(g,{key:6,class:"mb-4"})):d("",!0),e.config?.action==="object_remove"?(t(),m(h,{key:7,class:"mb-4"})):d("",!0),e.isGeneration?(t(),i(E,{key:8},[a(N,{class:"mb-4"}),a(F,{class:"mb-4"}),a(h,{class:"mb-4"}),e.config?.action!=="ingredients2video"?(t(),m(z,{key:0,class:"mb-4"})):d("",!0),e.config?.action==="image2video"||e.config?.action==="ingredients2video"?(t(),m(B,{key:1,class:"mb-2"})):d("",!0)],64)):d("",!0)]),r("div",Zo,[a(q,{value:e.consumption,service:e.service},null,8,["value","service"]),a(X,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:p(()=>[a(H,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+l(e.$t("veo.button.generate")),1)]),_:1},8,["onClick"])])])}const et=k(Qo,[["render",xo]]),ot=b({name:"TaskPreview",components:{ElImage:be,CopyToClipboard:he,FontAwesomeIcon:P,ElAlert:ge,VideoPlayer:D,ElTooltip:$e,ElButton:U},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.veo?.application},config(){return this.$store.state.veo?.config}},methods:{onPickAction(e,o,v,f){console.debug("seed config from preview",{action:v,upsampleAction:f,response:o}),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,action:v,video_id:o?.data?.[0]?.id,video_url:o?.data?.[0]?.video_url,...f?{upsample_action:f}:{}})},onDownload(e,o){e.stopPropagation(),console.log("on download"),window.open(o,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),tt={class:"preview"},st={class:"left"},nt={class:"main"},at={class:"bot"},lt={class:"datetime"},it={class:"info"},rt={key:0,class:"prompt mt-2"},ct={key:0},dt={key:1},ut={key:0,class:C({content:!0,failed:!0})},pt={key:0,class:"mb-4"},mt={key:1,class:C({operations:!0,"mt-2":!0})},vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},_t={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ht={key:1,class:C({content:!0})},$t={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},gt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},bt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},kt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},yt={key:2,class:C({content:!0})},Vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},wt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Et(e,o,v,f,y,V){const c=n("el-image"),u=n("video-player"),s=n("el-button"),w=n("el-tooltip"),$=n("font-awesome-icon"),h=n("copy-to-clipboard"),S=n("el-alert");return t(),i("div",tt,[r("div",st,[a(c,{src:"https://cdn.acedata.cloud/8nxyy9.jpg",class:"avatar"})]),r("div",nt,[r("div",at,[_(l(e.$t("veo.name.veoBot"))+" ",1),r("span",lt,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",it,[e.modelValue?.request?.prompt?(t(),i("p",rt,[_(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?d("",!0):(t(),i("span",ct," - ("+l(e.$t("veo.status.pending"))+") ",1)),Array.isArray(e.modelValue?.response?.data)&&e.modelValue?.response?.data[0]?.state==="running"?(t(),i("span",dt," - ("+l(e.$t("veo.status.processing"))+") ",1)):d("",!0)])):d("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(t(),i("div",ut,[e.modelValue?.response?.data[0]?.video_url?(t(),i("div",pt,[a(u,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):d("",!0),e.modelValue?.response.success?(t(),i("div",mt,[e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:0,type:"info",size:"small",class:"btn-action",onClick:o[0]||(o[0]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","1080p"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsample1080p")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:1,type:"info",size:"small",class:"btn-action",onClick:o[1]||(o[1]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","4k"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsample4k")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:2,type:"info",size:"small",class:"btn-action",onClick:o[2]||(o[2]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","gif"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsampleGif")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:3,type:"info",size:"small",class:"btn-action",onClick:o[3]||(o[3]=g=>e.onPickAction(g,e.modelValue?.response,"extend"))},{default:p(()=>[_(l(e.$t("veo.button.actionExtend")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:4,type:"info",size:"small",class:"btn-action",onClick:o[4]||(o[4]=g=>e.onPickAction(g,e.modelValue?.response,"reshoot"))},{default:p(()=>[_(l(e.$t("veo.button.actionReshoot")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:5,type:"info",size:"small",class:"btn-action",onClick:o[5]||(o[5]=g=>e.onPickAction(g,e.modelValue?.response,"object_insert"))},{default:p(()=>[_(l(e.$t("veo.button.actionObjectInsert")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:6,type:"info",size:"small",class:"btn-action",onClick:o[6]||(o[6]=g=>e.onPickAction(g,e.modelValue?.response,"object_remove"))},{default:p(()=>[_(l(e.$t("veo.button.actionObjectRemove")),1)]),_:1})):d("",!0),a(w,{class:"box-item",effect:"dark",content:e.$t("veo.message.downloadVideo"),placement:"top-start"},{default:p(()=>[e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:0,type:"info",size:"small",class:"btn-action",onClick:o[7]||(o[7]=g=>e.onDownload(g,e.modelValue?.response?.data[0]?.video_url))},{default:p(()=>[_(l(e.$t("veo.button.download")),1)]),_:1})):d("",!0)]),_:1},8,["content"])])):d("",!0),a(S,{closable:!1,class:"mt-2 success"},{default:p(()=>[r("p",vt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.model"))+": "+l(e.modelValue?.request?.model),1)]),r("p",ft,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.elapsed?(t(),i("p",_t,[a($,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+l(e.$t("veo.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):d("",!0)]),_:1})])):d("",!0),e.modelValue?.response?.success===!1?(t(),i("div",ht,[a(S,{closable:!1,class:"failure"},{template:p(()=>[a($,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+l(e.$t("veo.name.failure")),1)]),default:p(()=>[r("p",$t,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),r("p",gt,[a($,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+l(e.$t("veo.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),a(h,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.elapsed?(t(),i("p",bt,[a($,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+l(e.$t("veo.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):d("",!0),e.modelValue?.response?.trace_id?(t(),i("p",kt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),a(h,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):d("",!0)]),_:1})])):d("",!0),e.modelValue?.response?.success===void 0?(t(),i("div",yt,[a(S,{closable:!1,class:"info"},{template:p(()=>[a($,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+l(e.$t("veo.name.failure")),1)]),default:p(()=>[r("p",Vt,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(t(),i("p",wt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),a(h,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):d("",!0)]),_:1})])):d("",!0)])])}const It=k(ot,[["render",Et],["__scopeId","data-v-83f2991f"]]),Tt=b({name:"RecentPanel",components:{TaskPreview:It,NoTasks:ye,BotPlaceholder:ke,ScrollList:re},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.veo?.tasks,items:this.$store.state.veo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),St={key:0},Ct={key:2,class:"w-full h-full flex items-center justify-center"};function At(e,o,v,f,y,V){const c=n("bot-placeholder"),u=n("task-preview"),s=n("scroll-list"),w=n("no-tasks");return t(),i(E,null,[e.tasks?.items===void 0?(t(),i("div",St,[a(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(t(),m(s,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:o[0]||(o[0]=$=>e.$emit("reach-top"))},{default:p(()=>[(t(!0),i(E,null,T(e.tasks?.items,($,h)=>(t(),m(u,{key:h,"model-value":$},null,8,["model-value"]))),128))]),_:1},8,["loading"])):d("",!0),e.tasks?.items?.length===0?(t(),i("div",Ct,[a(w)])):d("",!0)],64)}const Ot=k(Tt,[["render",At]]),Pt=Z("veo"),Ut=b({name:"VeoIndex",components:{ConfigPanel:et,Layout:Se,RecentPanel:Ot},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.veo?.status?.getApplications===M.Request},tasksLoading(){return this.$store.state.veo?.status?.getTasks===M.Request||this.fetchingTasks},credential(){return this.$store.state.veo.credential},config(){return this.$store.state.veo.config},tasks(){return this.$store.state.veo.tasks}},watch:{tasks:{handler(e,o){e?.items?.length>o?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ce({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("veo/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("veo/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:o=5,createdAtMin:v,createdAtMax:f}=e||{};console.debug("limit",o,"createdAtMin",v,"createdAtMax",f),this.fetchingTasks=!0;try{await this.$store.dispatch("veo/getTasks",{limit:o,createdAtMin:v,createdAtMax:f})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Pt},o=this.credential?.token;if(!o){console.error("no token specified");return}if(e.action==="image2video"&&!(e.image_urls&&e.image_urls.length>0)){I.warning(this.$t("veo.message.imageRequired"));return}(!e.image_urls||e.image_urls.length===0)&&delete e.image_urls,I.info(this.$t("veo.message.startingTask")),W("veo",K.generate(e,{token:o})).then(()=>{I.success(this.$t("veo.message.startTaskSuccess"))}).catch(v=>{v?.response?.data?.error?.code===_e?I.error(this.$t("veo.message.usedUp")):I.error(this.$t("veo.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Lt(e,o,v,f,y,V){const c=n("config-panel"),u=n("recent-panel"),s=n("layout");return t(),m(s,null,{config:p(()=>[a(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:p(()=>[a(u,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Ts=k(Ut,[["render",Lt]]);export{Ts as default};
@@ -1 +1 @@
1
- import{F as I}from"./index.es-BGvCJe-W.js";import{E as F}from"./index-BF3jvRlG.js";import{E as W}from"./index-CP6llfLN.js";import{d as E,H as l,E as i,z as N,C as s,y as _,D as t,q as o,F as n,O as V,N as A,x as y,J as v,I as h,M as J,Q as C}from"./vendor-vue-NSDaktjZ.js";import{G as k,d1 as K,d2 as Q,d3 as X,d4 as j,d5 as Y,d6 as Z,d7 as x,d8 as ee,bj as B,d9 as se,da as te,db as oe,dc as ne,dd as ae,co as le,a$ as re,S as G,cp as ie}from"./index-B7lLMdzb.js";import{I as S,S as ce,l as de}from"./pagination-DSYOIV_9.js";import{E as me}from"./index-zQkXvP4I.js";import{E as O,a as P}from"./index-B21ZeSrS.js";import{E as q}from"./index-DvlZSfpu.js";import{p as z}from"./pasteUploadMixin-BurWbGNQ.js";import{I as M}from"./ImagePreview-8xggEAtd.js";import{E as H}from"./index-2P6neM4R.js";import{E as w}from"./index-DmgFbW9M.js";import{C as ue}from"./Consumption-D1DmjLsj.js";import{a as pe}from"./price-BoiEmiVd.js";import{C as fe}from"./CopyToClipboard-BS0IZ5vm.js";import{V as _e}from"./VideoPlayer-CndCLmxS.js";import{I as he}from"./ImageWrapper-JCiqYITj.js";import{E as ve}from"./index-BiC7KGb5.js";import{E as $e}from"./index-ViGPRpNP.js";import{E as ge}from"./index-DuW5L2r7.js";import{B as be}from"./BotPlaceholder-qj2YLdAp.js";import{N as Ee}from"./NoTasks-YcewaUb5.js";import{b as ke}from"./errorCode-Cqj9Td_Z.js";import"./use-form-item-DZgxCtXL.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./typescript-Bj1ijDQ6.js";import"./index-cN8cftWM.js";import"./index-pQFvUXd3.js";import"./index-CGiBnpqk.js";import"./strings-beZM2Y-f.js";import"./isEqual-CfmBLeOp.js";import"./_Uint8Array-4l3jEroS.js";import"./castArray-FN0qIC-F.js";import"./debounce-CqzxdC1T.js";import"./_baseIteratee-CJ9W-nbE.js";import"./index-CbH6hylr.js";import"./validator-2sHPIwNN.js";import"./index-Dw3SeELD.js";import"./_baseClone-Db65SBvG.js";import"./_initCloneObject-C7XzV3eb.js";import"./vue-plyr-BO2nlN4c.js";import"./index-B-vHnqyE.js";const ye=E({name:"LayoutSeedance",components:{ElDrawer:W,ElButton:F,FontAwesomeIcon:I},data(){return{drawer:!1}}}),we={class:"main flex flex-row flex-1"},Se={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 Le(e,a,m,f,u,g){const d=t("font-awesome-icon"),p=t("el-button"),r=t("el-drawer");return o(),l("div",we,[i("div",Se,[N(e.$slots,"config",{},void 0,!0)]),i("div",Ve,[N(e.$slots,"result",{},void 0,!0)]),s(p,{circle:"",class:"menu",onClick:a[0]||(a[0]=c=>e.drawer=!0)},{default:_(()=>[s(d,{icon:"fa-solid fa-magic"})]),_:1}),s(r,{modelValue:e.drawer,"onUpdate:modelValue":a[1]||(a[1]=c=>e.drawer=c),direction:"ltr","with-header":!1,size:"350px"},{default:_(()=>[N(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Te=k(ye,[["render",Le],["__scopeId","data-v-caafd095"]]),Ie="",Fe=E({name:"SeedancePromptInput",components:{ElInput:me,InfoIcon:S},computed:{prompt:{get(){return this.$store.state.seedance?.config?.prompt},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Ie)}}),Ae={class:"field"},Ce={class:"box"},De={class:"title font-bold"};function Re(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-input");return o(),l("div",Ae,[i("div",Ce,[i("h2",De,n(e.$t("seedance.name.prompt")),1),s(d,{content:e.$t("seedance.description.prompt"),class:"info"},null,8,["content"])]),s(p,{modelValue:e.prompt,"onUpdate:modelValue":a[0]||(a[0]=r=>e.prompt=r),rows:4,type:"textarea",class:"prompt",placeholder:e.$t("seedance.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ue=k(Fe,[["render",Re],["__scopeId","data-v-865909f4"]]),Ne=E({name:"SeedanceModelSelector",components:{ElSelect:P,ElOption:O,InfoIcon:S},data(){return{options:[{value:Q,label:this.$t("seedance.model.seedance10pro")},{value:X,label:this.$t("seedance.model.seedance10proFast")},{value:j,label:this.$t("seedance.model.seedance15pro")},{value:Y,label:this.$t("seedance.model.seedance10liteT2v")},{value:Z,label:this.$t("seedance.model.seedance10liteI2v")}]}},computed:{value:{get(){return this.$store.state.seedance?.config?.model},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,model:e})}}},mounted(){this.value||(this.value=K)}}),Oe={class:"field"},Pe={class:"label"},Me={class:"box"},Ge={class:"title font-bold"};function je(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-option"),r=t("el-select");return o(),l("div",Oe,[i("div",Pe,[i("div",Me,[i("h2",Ge,n(e.$t("seedance.name.model")),1),s(d,{content:e.$t("seedance.description.model"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=c=>e.value=c),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:_(()=>[(o(!0),l(V,null,A(e.options,c=>(o(),y(p,{key:c.value,label:c.label,value:c.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Be=k(Ne,[["render",je],["__scopeId","data-v-eaa1425a"]]),qe=E({name:"SeedanceDurationSelector",components:{ElSelect:P,ElOption:O,InfoIcon:S},data(){return{options:[{value:2,label:"2s"},{value:3,label:"3s"},{value:4,label:"4s"},{value:5,label:"5s"},{value:6,label:"6s"},{value:7,label:"7s"},{value:8,label:"8s"},{value:9,label:"9s"},{value:10,label:"10s"},{value:11,label:"11s"},{value:12,label:"12s"}]}},computed:{value:{get(){return this.$store.state.seedance?.config?.duration},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,duration:e})}}},mounted(){this.value||(this.value=x)}}),ze={class:"field"},He={class:"label"},We={class:"box"},Je={class:"title font-bold"};function Ke(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-option"),r=t("el-select");return o(),l("div",ze,[i("div",He,[i("div",We,[i("h2",Je,n(e.$t("seedance.name.duration")),1),s(d,{content:e.$t("seedance.description.duration"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=c=>e.value=c),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:_(()=>[(o(!0),l(V,null,A(e.options,c=>(o(),y(p,{key:c.value,label:c.label,value:c.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Qe=k(qe,[["render",Ke],["__scopeId","data-v-5c809a72"]]),Xe=E({name:"SeedanceGenerateAudioSwitch",components:{ElSwitch:q,InfoIcon:S},computed:{isSupported(){return this.$store.state.seedance?.config?.model===j},value:{get(){return this.$store.state.seedance?.config?.generate_audio??!1},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,generate_audio:e})}}},watch:{isSupported(e){!e&&this.value&&(this.value=!1)}},mounted(){this.value===void 0&&(this.value=ee)}}),Ye={key:0,class:"field"},Ze={class:"label"},xe={class:"box"},es={class:"title font-bold"},ss={class:"value"};function ts(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-switch");return e.isSupported?(o(),l("div",Ye,[i("div",Ze,[i("div",xe,[i("h2",es,n(e.$t("seedance.name.generateAudio")),1),s(d,{content:e.$t("seedance.description.generateAudio"),class:"info"},null,8,["content"])])]),i("div",ss,[s(p,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=r=>e.value=r),"inline-prompt":"","active-text":e.$t("seedance.button.on"),"inactive-text":e.$t("seedance.button.off")},null,8,["modelValue","active-text","inactive-text"])])])):v("",!0)}const os=k(Xe,[["render",ts],["__scopeId","data-v-8d716dcc"]]),ns=E({name:"SeedanceFirstFrameImage",components:{ElUpload:H,ElButton:F,InfoIcon:S,FontAwesomeIcon:I,ImagePreview:M},mixins:[z],data(){return{fileList:[],uploadUrl:B()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},methods:{onExceed(){w.warning(this.$t("seedance.message.uploadExceed"))},onError(){w.error(this.$t("seedance.message.uploadError"))},onSetFirstFrameUrl(){const e=this.urls?.[0],m=(this.$store.state.seedance?.config?.images||[]).filter(f=>f?.role!=="first_frame");e&&m.push({url:e,role:"first_frame"}),this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,images:m.length>0?m:void 0})},async onSuccess(){this.onSetFirstFrameUrl()},async onRemove(){this.onSetFirstFrameUrl()}}}),as={class:"relative"},ls={class:"flex justify-between"},rs={class:"flex justify-start items-center"},is={class:"text-sm font-bold"};function cs(e,a,m,f,u,g){const d=t("info-icon"),p=t("image-preview"),r=t("font-awesome-icon"),c=t("el-button"),b=t("el-upload");return o(),l("div",as,[i("div",ls,[i("div",rs,[i("span",is,n(e.$t("seedance.name.firstFrame")),1),s(d,{content:e.$t("seedance.description.firstFrame")},null,8,["content"])])]),s(b,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=$=>e.fileList=$),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-remove":e.onRemove,headers:e.headers},{file:_(({file:$})=>[$.url&&$.percentage!==void 0?(o(),y(p,{key:0,url:$.url,name:$.name,percentage:$.percentage,onRemove:L=>e.fileList.splice(e.fileList.indexOf($),1)},null,8,["url","name","percentage","onRemove"])):v("",!0)]),default:_(()=>[s(c,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:_(()=>[s(r,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+n(e.$t("seedance.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-remove","headers"])])}const ds=k(ns,[["render",cs],["__scopeId","data-v-5294baf8"]]),ms=E({name:"SeedanceLastFrameImage",components:{ElUpload:H,ElButton:F,ImagePreview:M,InfoIcon:S,FontAwesomeIcon:I},mixins:[z],data(){return{fileList:[],uploadUrl:B()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},methods:{onExceed(){w.warning(this.$t("seedance.message.uploadExceed"))},onError(){w.error(this.$t("seedance.message.uploadError"))},onSetLastFrameUrl(){const e=this.urls?.[0],m=(this.$store.state.seedance?.config?.images||[]).filter(f=>f?.role!=="last_frame");e&&m.push({url:e,role:"last_frame"}),this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,images:m.length>0?m:void 0})},async onSuccess(){this.onSetLastFrameUrl()},async onRemove(){this.onSetLastFrameUrl()}}}),us={class:"relative"},ps={class:"flex justify-between"},fs={class:"flex justify-start items-center"},_s={class:"text-sm font-bold"};function hs(e,a,m,f,u,g){const d=t("info-icon"),p=t("image-preview"),r=t("font-awesome-icon"),c=t("el-button"),b=t("el-upload");return o(),l("div",us,[i("div",ps,[i("div",fs,[i("span",_s,n(e.$t("seedance.name.lastFrame")),1),s(d,{content:e.$t("seedance.description.lastFrame")},null,8,["content"])])]),s(b,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=$=>e.fileList=$),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-remove":e.onRemove,headers:e.headers},{file:_(({file:$})=>[$.url&&$.percentage!==void 0?(o(),y(p,{key:0,url:$.url,name:$.name,percentage:$.percentage,onRemove:L=>e.fileList.splice(e.fileList.indexOf($),1)},null,8,["url","name","percentage","onRemove"])):v("",!0)]),default:_(()=>[s(c,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:_(()=>[s(r,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+n(e.$t("seedance.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-remove","headers"])])}const vs=k(ms,[["render",hs],["__scopeId","data-v-f423739f"]]),$s=E({name:"SeedanceServiceTierSelector",components:{ElSelect:P,ElOption:O,InfoIcon:S},data(){return{options:[{value:te,label:this.$t("seedance.serviceTier.default")},{value:oe,label:this.$t("seedance.serviceTier.flex")}]}},computed:{value:{get(){return this.$store.state.seedance?.config?.service_tier},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,service_tier:e})}}},mounted(){this.value||(this.value=se)}}),gs={class:"field"},bs={class:"label"},Es={class:"box"},ks={class:"title font-bold"};function ys(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-option"),r=t("el-select");return o(),l("div",gs,[i("div",bs,[i("div",Es,[i("h2",ks,n(e.$t("seedance.name.serviceTier")),1),s(d,{content:e.$t("seedance.description.serviceTier"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=c=>e.value=c),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:_(()=>[(o(!0),l(V,null,A(e.options,c=>(o(),y(p,{key:c.value,label:c.label,value:c.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ws=k($s,[["render",ys],["__scopeId","data-v-cc938de2"]]),Ss=E({name:"SeedanceReturnLastFrameSwitch",components:{ElSwitch:q,InfoIcon:S},computed:{value:{get(){return this.$store.state.seedance?.config?.return_last_frame},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,return_last_frame:e})}}},mounted(){this.value===void 0&&(this.value=ne)}}),Vs={class:"field"},Ls={class:"label"},Ts={class:"box"},Is={class:"title font-bold"},Fs={class:"value"};function As(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-switch");return o(),l("div",Vs,[i("div",Ls,[i("div",Ts,[i("h2",Is,n(e.$t("seedance.name.returnLastFrame")),1),s(d,{content:e.$t("seedance.description.returnLastFrame"),class:"info"},null,8,["content"])])]),i("div",Fs,[s(p,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=r=>e.value=r),"inline-prompt":"","active-text":e.$t("seedance.button.on"),"inactive-text":e.$t("seedance.button.off")},null,8,["modelValue","active-text","inactive-text"])])])}const Cs=k(Ss,[["render",As],["__scopeId","data-v-cd179b1c"]]),Ds=E({name:"SeedanceConfigPanel",components:{ElButton:F,FontAwesomeIcon:I,PromptInput:Ue,ModelSelector:Be,DurationSelector:Qe,GenerateAudioSwitch:os,ServiceTierSelector:ws,ReturnLastFrameSwitch:Cs,FirstFrameImage:ds,LastFrameImage:vs,Consumption:ue},emits:["generate"],computed:{config(){return this.$store.state.seedance?.config},consumption(){return pe(this.config,this.service?.cost)},service(){return this.$store.state.seedance?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Rs={class:"flex flex-col h-full"},Us={class:"flex-1 overflow-y-auto p-5"},Ns={class:"flex flex-col items-center justify-center px-5 pb-5"};function Os(e,a,m,f,u,g){const d=t("prompt-input"),p=t("model-selector"),r=t("duration-selector"),c=t("generate-audio-switch"),b=t("service-tier-selector"),$=t("return-last-frame-switch"),L=t("first-frame-image"),D=t("last-frame-image"),R=t("consumption"),T=t("font-awesome-icon"),U=t("el-button");return o(),l("div",Rs,[i("div",Us,[s(d,{class:"mb-4"}),s(p,{class:"mb-4"}),s(r,{class:"mb-4"}),s(c,{class:"mb-4"}),s(b,{class:"mb-4"}),s($,{class:"mb-4"}),s(L,{class:"mb-2"}),s(D,{class:"mb-2"})]),i("div",Ns,[s(R,{value:e.consumption,service:e.service},null,8,["value","service"]),s(U,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:_(()=>[s(T,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+n(e.$t("seedance.button.generate")),1)]),_:1},8,["onClick"])])])}const Ps=k(Ds,[["render",Os]]),Ms=E({name:"SeedanceTaskPreview",components:{ElImage:ge,CopyToClipboard:fe,FontAwesomeIcon:I,ElAlert:$e,VideoPlayer:_e,ElTooltip:ve,ElButton:F,ImageWrapper:he,ImagePreview:M},props:{modelValue:{type:Object,required:!0}},data(){return{seedanceLogo:ae}},computed:{video(){return this.modelValue?.response?.data},referenceImages(){const e=this.modelValue?.request?.images;if(!Array.isArray(e))return[];const a=[],m=e.find(u=>u?.role==="first_frame");m?.url&&a.push({url:m.url,name:"first-frame"});const f=e.find(u=>u?.role==="last_frame");return f?.url&&a.push({url:f.url,name:"last-frame"}),e.forEach((u,g)=>{u?.url&&u.role!=="first_frame"&&u.role!=="last_frame"&&a.push({url:u.url,name:u.role||`image-${g}`})}),a}},methods:{onDownload(e){window.open(e,"_blank")}}}),Gs={class:"preview"},js={class:"left"},Bs={class:"main"},qs={class:"bot"},zs={class:"datetime"},Hs={class:"info"},Ws={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},Js={key:1,class:"prompt mt-2"},Ks={key:0},Qs={key:1},Xs={key:0,class:C({content:!0})},Ys={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Zs={key:1,class:C({content:!0})},xs={key:0,class:"mb-4"},et={key:1,class:"mb-4"},st={key:2,class:C({operations:!0,"mt-2":!0,"mb-2":!0})},tt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ot={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},nt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},at={key:0},lt={key:1},rt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},it={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ct={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},dt={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},mt={key:2,class:C({content:!0})},ut={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},pt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},_t={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ht={key:3,class:C({content:!0})},vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},$t={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function gt(e,a,m,f,u,g){const d=t("el-image"),p=t("image-preview"),r=t("font-awesome-icon"),c=t("copy-to-clipboard"),b=t("el-alert"),$=t("video-player"),L=t("image-wrapper"),D=t("el-button"),R=t("el-tooltip");return o(),l("div",Gs,[i("div",js,[s(d,{src:e.seedanceLogo,class:"avatar"},null,8,["src"])]),i("div",Bs,[i("div",qs,[h(n(e.$t("seedance.name.seedanceBot"))+" ",1),i("span",zs,n(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),i("div",Hs,[e.referenceImages.length>0?(o(),l("div",Ws,[(o(!0),l(V,null,A(e.referenceImages,(T,U)=>(o(),y(p,{key:U,url:T.url,name:T.name,closable:!1},null,8,["url","name"]))),128))])):v("",!0),e.modelValue?.request?.prompt?(o(),l("p",Js,[h(n(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?e.video?.status==="processing"||e.video?.status==="pending"?(o(),l("span",Qs," - ("+n(e.$t("seedance.status.processing"))+") ",1)):v("",!0):(o(),l("span",Ks," - ("+n(e.$t("seedance.status.pending"))+") ",1))])):v("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(o(),l("div",Zs,[e.video?.video_url?(o(),l("div",xs,[s($,{src:e.video?.video_url},null,8,["src"])])):v("",!0),e.video?.last_frame_url?(o(),l("div",et,[s(L,{src:e.video?.last_frame_url,"raw-src":e.video?.last_frame_url},null,8,["src","raw-src"])])):v("",!0),e.video?.video_url?(o(),l("div",st,[s(R,{class:"box-item",effect:"dark",content:e.$t("seedance.message.downloadVideo"),placement:"top-start"},{default:_(()=>[s(D,{type:"info",size:"small",class:"btn-action",onClick:a[0]||(a[0]=J(T=>e.onDownload(e.video?.video_url),["stop"]))},{default:_(()=>[h(n(e.$t("seedance.button.download")),1)]),_:1})]),_:1},8,["content"])])):v("",!0),s(b,{closable:!1,class:"mt-2 success"},{default:_(()=>[e.modelValue?.request?.model?(o(),l("p",tt,[s(r,{icon:"fa-solid fa-cube",class:"mr-1"}),h(" "+n(e.$t("seedance.name.model"))+": "+n(e.modelValue?.request?.model),1)])):v("",!0),e.video?.duration?(o(),l("p",ot,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+n(e.$t("seedance.name.duration"))+": "+n(e.video?.duration)+"s ",1)])):v("",!0),e.video?.resolution?(o(),l("p",nt,[s(r,{icon:"fa-solid fa-expand",class:"mr-1"}),h(" "+n(e.$t("seedance.name.resolution"))+": "+n(e.video?.resolution)+" ",1),e.video?.ratio?(o(),l("span",at," · "+n(e.video?.ratio),1)):v("",!0),e.video?.framespersecond?(o(),l("span",lt," · "+n(e.video?.framespersecond)+"fps",1)):v("",!0)])):v("",!0),e.modelValue?.request?.generate_audio?(o(),l("p",rt,[s(r,{icon:"fa-solid fa-volume-up",class:"mr-1"}),h(" "+n(e.$t("seedance.name.generateAudio"))+": "+n(e.$t("seedance.button.on")),1)])):v("",!0),i("p",it,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+n(e.$t("seedance.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(o(),l("p",ct,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+n(e.$t("seedance.name.elapsed"))+": "+n(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(o(),l("p",dt,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+n(e.$t("seedance.name.traceId"))+": "+n(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(o(),l("div",mt,[s(b,{closable:!1,class:"failure"},{template:_(()=>[s(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+n(e.$t("seedance.name.failure")),1)]),default:_(()=>[i("p",ut,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+n(e.$t("seedance.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.response?.error?.message?(o(),l("p",pt,[s(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+n(e.$t("seedance.name.failureReason"))+": "+n(e.modelValue?.response?.error?.message)+" ",1),s(c,{content:e.modelValue?.response?.error?.message,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0),e.modelValue?.elapsed?(o(),l("p",ft,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+n(e.$t("seedance.name.elapsed"))+": "+n(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(o(),l("p",_t,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+n(e.$t("seedance.name.traceId"))+": "+n(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):(o(),l("div",ht,[s(b,{closable:!1,class:"info"},{template:_(()=>[s(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+n(e.$t("seedance.name.status")),1)]),default:_(()=>[i("p",vt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+n(e.$t("seedance.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.response?.trace_id?(o(),l("p",$t,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+n(e.$t("seedance.name.traceId"))+": "+n(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):(o(),l("div",Xs,[s(b,{closable:!1,class:"info"},{template:_(()=>[s(r,{icon:"fa-regular fa-clock",class:"mr-1"}),h(" "+n(e.$t("seedance.status.pending")),1)]),default:_(()=>[i("p",Ys,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+n(e.$t("seedance.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})]))])])}const bt=k(Ms,[["render",gt],["__scopeId","data-v-6b9d75ed"]]),Et=E({name:"SeedanceRecentPanel",components:{TaskPreview:bt,BotPlaceholder:be,NoTasks:Ee,ScrollList:ce},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],computed:{tasks(){return{...this.$store.state.seedance?.tasks,items:this.$store.state.seedance?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),kt={key:0},yt={key:2,class:"w-full h-full flex items-center justify-center"};function wt(e,a,m,f,u,g){const d=t("bot-placeholder"),p=t("task-preview"),r=t("scroll-list"),c=t("no-tasks");return o(),l(V,null,[e.tasks?.items===void 0?(o(),l("div",kt,[s(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(o(),y(r,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:a[0]||(a[0]=b=>e.$emit("reach-top"))},{default:_(()=>[(o(!0),l(V,null,A(e.tasks?.items,b=>(o(),y(p,{key:b.id,"model-value":b},null,8,["model-value"]))),128))]),_:1},8,["loading"])):v("",!0),e.tasks?.items?.length===0?(o(),l("div",yt,[s(c)])):v("",!0)],64)}const St=k(Et,[["render",wt]]),Vt=ie("seedance"),Lt=E({name:"SeedanceIndex",components:{ConfigPanel:Ps,Layout:Te,RecentPanel:St},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.seedance?.status?.getApplications===G.Request},tasksLoading(){return this.$store.state.seedance?.status?.getTasks===G.Request||this.fetchingTasks},credential(){return this.$store.state.seedance?.credential},config(){return this.$store.state.seedance?.config},tasks(){return this.$store.state.seedance?.tasks}},watch:{initialized:{async handler(e){e&&(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 de({tasks: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(){await this.$store.dispatch("seedance/getService")},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;const{limit:a=5,createdAtMin:m,createdAtMax:f}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch("seedance/getTasks",{limit:a,createdAtMin:m,createdAtMax:f})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config||{}};if(typeof e?.prompt=="string"&&(e.prompt=e.prompt.trim(),e.prompt||delete e.prompt),Array.isArray(e?.images)){e.images=e.images.filter(d=>!!d?.url);const u=e.images.some(d=>d?.role==="first_frame"),g=e.images.some(d=>d?.role==="last_frame");!u&&g&&(e.images=e.images.map(d=>d?.role==="last_frame"?{...d,role:"first_frame"}:d))}!(Array.isArray(e?.images)&&e.images.length>0)&&"images"in e&&delete e.images;const m={...e,callback_url:Vt},f=this.credential?.token;if(!f){console.error("no token specified");return}w.info(this.$t("seedance.message.startingTask")),le("seedance",re.generate(m,{token:f})).then(()=>{w.success(this.$t("seedance.message.startTaskSuccess"))}).catch(u=>{const g=u?.response?.data;g?.error?.code===ke?w.error(this.$t("seedance.message.usedUp")):w.error(this.$t("seedance.message.startTaskFailed")+(g?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Tt(e,a,m,f,u,g){const d=t("config-panel"),p=t("recent-panel"),r=t("layout");return o(),y(r,null,{config:_(()=>[s(d,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:_(()=>[s(p,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const ko=k(Lt,[["render",Tt]]);export{ko as default};
1
+ import{F as I}from"./index.es-f2R6ubO6.js";import{E as F}from"./index-D-4JF5KB.js";import{E as W}from"./index-CKceOzxT.js";import{d as E,H as l,E as i,z as N,C as s,y as _,D as t,q as o,F as n,O as V,N as A,x as y,J as v,I as h,M as J,Q as C}from"./vendor-vue-NSDaktjZ.js";import{G as k,d1 as K,d2 as Q,d3 as X,d4 as j,d5 as Y,d6 as Z,d7 as x,d8 as ee,bj as B,d9 as se,da as te,db as oe,dc as ne,dd as ae,co as le,a$ as re,S as G,cp as ie}from"./index-DVUMZ05r.js";import{I as S,S as ce,l as de}from"./pagination-BIv0I4gk.js";import{E as me}from"./index-CtbJ8jTa.js";import{E as O,a as P}from"./index-BKHSCugF.js";import{E as q}from"./index-DMHXbvDD.js";import{p as z}from"./pasteUploadMixin-BurWbGNQ.js";import{I as M}from"./ImagePreview-CUVXtH2l.js";import{E as H}from"./index-r007Lgz_.js";import{E as w}from"./index-CsGFFE61.js";import{C as ue}from"./Consumption-BKf_KS7X.js";import{a as pe}from"./price-3Bxyzfub.js";import{C as fe}from"./CopyToClipboard-CIRw6WL5.js";import{V as _e}from"./VideoPlayer-CXT39jg2.js";import{I as he}from"./ImageWrapper-CuWjkp9m.js";import{E as ve}from"./index-CWdAzE8_.js";import{E as $e}from"./index-Cd_qWETX.js";import{E as ge}from"./index-DrLf4K3A.js";import{B as be}from"./BotPlaceholder-oG7ygyok.js";import{N as Ee}from"./NoTasks-9iEEhsIS.js";import{b as ke}from"./errorCode-Cqj9Td_Z.js";import"./use-form-item-DhMXJI5q.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./typescript-qAIJ13Qr.js";import"./index-B5Z3EZrb.js";import"./index-CSLM8oj_.js";import"./index-jyz6xleX.js";import"./strings-beZM2Y-f.js";import"./isEqual-B1Z_z-Zf.js";import"./_Uint8Array-yhuF-6h2.js";import"./castArray-B2mZnC5U.js";import"./debounce-C18vO1_Z.js";import"./_baseIteratee-CTMClKxb.js";import"./index-GfS1QM00.js";import"./validator-C_MCdjOG.js";import"./index-eWlKuNNN.js";import"./_baseClone-Ccji6pFO.js";import"./_initCloneObject-D2UisHWT.js";import"./vue-plyr-BO2nlN4c.js";import"./index-CGBK8gn9.js";const ye=E({name:"LayoutSeedance",components:{ElDrawer:W,ElButton:F,FontAwesomeIcon:I},data(){return{drawer:!1}}}),we={class:"main flex flex-row flex-1"},Se={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 Le(e,a,m,f,u,g){const d=t("font-awesome-icon"),p=t("el-button"),r=t("el-drawer");return o(),l("div",we,[i("div",Se,[N(e.$slots,"config",{},void 0,!0)]),i("div",Ve,[N(e.$slots,"result",{},void 0,!0)]),s(p,{circle:"",class:"menu",onClick:a[0]||(a[0]=c=>e.drawer=!0)},{default:_(()=>[s(d,{icon:"fa-solid fa-magic"})]),_:1}),s(r,{modelValue:e.drawer,"onUpdate:modelValue":a[1]||(a[1]=c=>e.drawer=c),direction:"ltr","with-header":!1,size:"350px"},{default:_(()=>[N(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Te=k(ye,[["render",Le],["__scopeId","data-v-caafd095"]]),Ie="",Fe=E({name:"SeedancePromptInput",components:{ElInput:me,InfoIcon:S},computed:{prompt:{get(){return this.$store.state.seedance?.config?.prompt},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Ie)}}),Ae={class:"field"},Ce={class:"box"},De={class:"title font-bold"};function Re(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-input");return o(),l("div",Ae,[i("div",Ce,[i("h2",De,n(e.$t("seedance.name.prompt")),1),s(d,{content:e.$t("seedance.description.prompt"),class:"info"},null,8,["content"])]),s(p,{modelValue:e.prompt,"onUpdate:modelValue":a[0]||(a[0]=r=>e.prompt=r),rows:4,type:"textarea",class:"prompt",placeholder:e.$t("seedance.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ue=k(Fe,[["render",Re],["__scopeId","data-v-865909f4"]]),Ne=E({name:"SeedanceModelSelector",components:{ElSelect:P,ElOption:O,InfoIcon:S},data(){return{options:[{value:Q,label:this.$t("seedance.model.seedance10pro")},{value:X,label:this.$t("seedance.model.seedance10proFast")},{value:j,label:this.$t("seedance.model.seedance15pro")},{value:Y,label:this.$t("seedance.model.seedance10liteT2v")},{value:Z,label:this.$t("seedance.model.seedance10liteI2v")}]}},computed:{value:{get(){return this.$store.state.seedance?.config?.model},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,model:e})}}},mounted(){this.value||(this.value=K)}}),Oe={class:"field"},Pe={class:"label"},Me={class:"box"},Ge={class:"title font-bold"};function je(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-option"),r=t("el-select");return o(),l("div",Oe,[i("div",Pe,[i("div",Me,[i("h2",Ge,n(e.$t("seedance.name.model")),1),s(d,{content:e.$t("seedance.description.model"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=c=>e.value=c),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:_(()=>[(o(!0),l(V,null,A(e.options,c=>(o(),y(p,{key:c.value,label:c.label,value:c.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Be=k(Ne,[["render",je],["__scopeId","data-v-eaa1425a"]]),qe=E({name:"SeedanceDurationSelector",components:{ElSelect:P,ElOption:O,InfoIcon:S},data(){return{options:[{value:2,label:"2s"},{value:3,label:"3s"},{value:4,label:"4s"},{value:5,label:"5s"},{value:6,label:"6s"},{value:7,label:"7s"},{value:8,label:"8s"},{value:9,label:"9s"},{value:10,label:"10s"},{value:11,label:"11s"},{value:12,label:"12s"}]}},computed:{value:{get(){return this.$store.state.seedance?.config?.duration},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,duration:e})}}},mounted(){this.value||(this.value=x)}}),ze={class:"field"},He={class:"label"},We={class:"box"},Je={class:"title font-bold"};function Ke(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-option"),r=t("el-select");return o(),l("div",ze,[i("div",He,[i("div",We,[i("h2",Je,n(e.$t("seedance.name.duration")),1),s(d,{content:e.$t("seedance.description.duration"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=c=>e.value=c),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:_(()=>[(o(!0),l(V,null,A(e.options,c=>(o(),y(p,{key:c.value,label:c.label,value:c.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Qe=k(qe,[["render",Ke],["__scopeId","data-v-5c809a72"]]),Xe=E({name:"SeedanceGenerateAudioSwitch",components:{ElSwitch:q,InfoIcon:S},computed:{isSupported(){return this.$store.state.seedance?.config?.model===j},value:{get(){return this.$store.state.seedance?.config?.generate_audio??!1},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,generate_audio:e})}}},watch:{isSupported(e){!e&&this.value&&(this.value=!1)}},mounted(){this.value===void 0&&(this.value=ee)}}),Ye={key:0,class:"field"},Ze={class:"label"},xe={class:"box"},es={class:"title font-bold"},ss={class:"value"};function ts(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-switch");return e.isSupported?(o(),l("div",Ye,[i("div",Ze,[i("div",xe,[i("h2",es,n(e.$t("seedance.name.generateAudio")),1),s(d,{content:e.$t("seedance.description.generateAudio"),class:"info"},null,8,["content"])])]),i("div",ss,[s(p,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=r=>e.value=r),"inline-prompt":"","active-text":e.$t("seedance.button.on"),"inactive-text":e.$t("seedance.button.off")},null,8,["modelValue","active-text","inactive-text"])])])):v("",!0)}const os=k(Xe,[["render",ts],["__scopeId","data-v-8d716dcc"]]),ns=E({name:"SeedanceFirstFrameImage",components:{ElUpload:H,ElButton:F,InfoIcon:S,FontAwesomeIcon:I,ImagePreview:M},mixins:[z],data(){return{fileList:[],uploadUrl:B()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},methods:{onExceed(){w.warning(this.$t("seedance.message.uploadExceed"))},onError(){w.error(this.$t("seedance.message.uploadError"))},onSetFirstFrameUrl(){const e=this.urls?.[0],m=(this.$store.state.seedance?.config?.images||[]).filter(f=>f?.role!=="first_frame");e&&m.push({url:e,role:"first_frame"}),this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,images:m.length>0?m:void 0})},async onSuccess(){this.onSetFirstFrameUrl()},async onRemove(){this.onSetFirstFrameUrl()}}}),as={class:"relative"},ls={class:"flex justify-between"},rs={class:"flex justify-start items-center"},is={class:"text-sm font-bold"};function cs(e,a,m,f,u,g){const d=t("info-icon"),p=t("image-preview"),r=t("font-awesome-icon"),c=t("el-button"),b=t("el-upload");return o(),l("div",as,[i("div",ls,[i("div",rs,[i("span",is,n(e.$t("seedance.name.firstFrame")),1),s(d,{content:e.$t("seedance.description.firstFrame")},null,8,["content"])])]),s(b,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=$=>e.fileList=$),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-remove":e.onRemove,headers:e.headers},{file:_(({file:$})=>[$.url&&$.percentage!==void 0?(o(),y(p,{key:0,url:$.url,name:$.name,percentage:$.percentage,onRemove:L=>e.fileList.splice(e.fileList.indexOf($),1)},null,8,["url","name","percentage","onRemove"])):v("",!0)]),default:_(()=>[s(c,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:_(()=>[s(r,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+n(e.$t("seedance.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-remove","headers"])])}const ds=k(ns,[["render",cs],["__scopeId","data-v-5294baf8"]]),ms=E({name:"SeedanceLastFrameImage",components:{ElUpload:H,ElButton:F,ImagePreview:M,InfoIcon:S,FontAwesomeIcon:I},mixins:[z],data(){return{fileList:[],uploadUrl:B()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},methods:{onExceed(){w.warning(this.$t("seedance.message.uploadExceed"))},onError(){w.error(this.$t("seedance.message.uploadError"))},onSetLastFrameUrl(){const e=this.urls?.[0],m=(this.$store.state.seedance?.config?.images||[]).filter(f=>f?.role!=="last_frame");e&&m.push({url:e,role:"last_frame"}),this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,images:m.length>0?m:void 0})},async onSuccess(){this.onSetLastFrameUrl()},async onRemove(){this.onSetLastFrameUrl()}}}),us={class:"relative"},ps={class:"flex justify-between"},fs={class:"flex justify-start items-center"},_s={class:"text-sm font-bold"};function hs(e,a,m,f,u,g){const d=t("info-icon"),p=t("image-preview"),r=t("font-awesome-icon"),c=t("el-button"),b=t("el-upload");return o(),l("div",us,[i("div",ps,[i("div",fs,[i("span",_s,n(e.$t("seedance.name.lastFrame")),1),s(d,{content:e.$t("seedance.description.lastFrame")},null,8,["content"])])]),s(b,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=$=>e.fileList=$),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-remove":e.onRemove,headers:e.headers},{file:_(({file:$})=>[$.url&&$.percentage!==void 0?(o(),y(p,{key:0,url:$.url,name:$.name,percentage:$.percentage,onRemove:L=>e.fileList.splice(e.fileList.indexOf($),1)},null,8,["url","name","percentage","onRemove"])):v("",!0)]),default:_(()=>[s(c,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:_(()=>[s(r,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+n(e.$t("seedance.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-remove","headers"])])}const vs=k(ms,[["render",hs],["__scopeId","data-v-f423739f"]]),$s=E({name:"SeedanceServiceTierSelector",components:{ElSelect:P,ElOption:O,InfoIcon:S},data(){return{options:[{value:te,label:this.$t("seedance.serviceTier.default")},{value:oe,label:this.$t("seedance.serviceTier.flex")}]}},computed:{value:{get(){return this.$store.state.seedance?.config?.service_tier},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,service_tier:e})}}},mounted(){this.value||(this.value=se)}}),gs={class:"field"},bs={class:"label"},Es={class:"box"},ks={class:"title font-bold"};function ys(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-option"),r=t("el-select");return o(),l("div",gs,[i("div",bs,[i("div",Es,[i("h2",ks,n(e.$t("seedance.name.serviceTier")),1),s(d,{content:e.$t("seedance.description.serviceTier"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=c=>e.value=c),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:_(()=>[(o(!0),l(V,null,A(e.options,c=>(o(),y(p,{key:c.value,label:c.label,value:c.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ws=k($s,[["render",ys],["__scopeId","data-v-cc938de2"]]),Ss=E({name:"SeedanceReturnLastFrameSwitch",components:{ElSwitch:q,InfoIcon:S},computed:{value:{get(){return this.$store.state.seedance?.config?.return_last_frame},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,return_last_frame:e})}}},mounted(){this.value===void 0&&(this.value=ne)}}),Vs={class:"field"},Ls={class:"label"},Ts={class:"box"},Is={class:"title font-bold"},Fs={class:"value"};function As(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-switch");return o(),l("div",Vs,[i("div",Ls,[i("div",Ts,[i("h2",Is,n(e.$t("seedance.name.returnLastFrame")),1),s(d,{content:e.$t("seedance.description.returnLastFrame"),class:"info"},null,8,["content"])])]),i("div",Fs,[s(p,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=r=>e.value=r),"inline-prompt":"","active-text":e.$t("seedance.button.on"),"inactive-text":e.$t("seedance.button.off")},null,8,["modelValue","active-text","inactive-text"])])])}const Cs=k(Ss,[["render",As],["__scopeId","data-v-cd179b1c"]]),Ds=E({name:"SeedanceConfigPanel",components:{ElButton:F,FontAwesomeIcon:I,PromptInput:Ue,ModelSelector:Be,DurationSelector:Qe,GenerateAudioSwitch:os,ServiceTierSelector:ws,ReturnLastFrameSwitch:Cs,FirstFrameImage:ds,LastFrameImage:vs,Consumption:ue},emits:["generate"],computed:{config(){return this.$store.state.seedance?.config},consumption(){return pe(this.config,this.service?.cost)},service(){return this.$store.state.seedance?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Rs={class:"flex flex-col h-full"},Us={class:"flex-1 overflow-y-auto p-5"},Ns={class:"flex flex-col items-center justify-center px-5 pb-5"};function Os(e,a,m,f,u,g){const d=t("prompt-input"),p=t("model-selector"),r=t("duration-selector"),c=t("generate-audio-switch"),b=t("service-tier-selector"),$=t("return-last-frame-switch"),L=t("first-frame-image"),D=t("last-frame-image"),R=t("consumption"),T=t("font-awesome-icon"),U=t("el-button");return o(),l("div",Rs,[i("div",Us,[s(d,{class:"mb-4"}),s(p,{class:"mb-4"}),s(r,{class:"mb-4"}),s(c,{class:"mb-4"}),s(b,{class:"mb-4"}),s($,{class:"mb-4"}),s(L,{class:"mb-2"}),s(D,{class:"mb-2"})]),i("div",Ns,[s(R,{value:e.consumption,service:e.service},null,8,["value","service"]),s(U,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:_(()=>[s(T,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+n(e.$t("seedance.button.generate")),1)]),_:1},8,["onClick"])])])}const Ps=k(Ds,[["render",Os]]),Ms=E({name:"SeedanceTaskPreview",components:{ElImage:ge,CopyToClipboard:fe,FontAwesomeIcon:I,ElAlert:$e,VideoPlayer:_e,ElTooltip:ve,ElButton:F,ImageWrapper:he,ImagePreview:M},props:{modelValue:{type:Object,required:!0}},data(){return{seedanceLogo:ae}},computed:{video(){return this.modelValue?.response?.data},referenceImages(){const e=this.modelValue?.request?.images;if(!Array.isArray(e))return[];const a=[],m=e.find(u=>u?.role==="first_frame");m?.url&&a.push({url:m.url,name:"first-frame"});const f=e.find(u=>u?.role==="last_frame");return f?.url&&a.push({url:f.url,name:"last-frame"}),e.forEach((u,g)=>{u?.url&&u.role!=="first_frame"&&u.role!=="last_frame"&&a.push({url:u.url,name:u.role||`image-${g}`})}),a}},methods:{onDownload(e){window.open(e,"_blank")}}}),Gs={class:"preview"},js={class:"left"},Bs={class:"main"},qs={class:"bot"},zs={class:"datetime"},Hs={class:"info"},Ws={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},Js={key:1,class:"prompt mt-2"},Ks={key:0},Qs={key:1},Xs={key:0,class:C({content:!0})},Ys={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Zs={key:1,class:C({content:!0})},xs={key:0,class:"mb-4"},et={key:1,class:"mb-4"},st={key:2,class:C({operations:!0,"mt-2":!0,"mb-2":!0})},tt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ot={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},nt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},at={key:0},lt={key:1},rt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},it={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ct={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},dt={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},mt={key:2,class:C({content:!0})},ut={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},pt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},_t={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ht={key:3,class:C({content:!0})},vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},$t={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function gt(e,a,m,f,u,g){const d=t("el-image"),p=t("image-preview"),r=t("font-awesome-icon"),c=t("copy-to-clipboard"),b=t("el-alert"),$=t("video-player"),L=t("image-wrapper"),D=t("el-button"),R=t("el-tooltip");return o(),l("div",Gs,[i("div",js,[s(d,{src:e.seedanceLogo,class:"avatar"},null,8,["src"])]),i("div",Bs,[i("div",qs,[h(n(e.$t("seedance.name.seedanceBot"))+" ",1),i("span",zs,n(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),i("div",Hs,[e.referenceImages.length>0?(o(),l("div",Ws,[(o(!0),l(V,null,A(e.referenceImages,(T,U)=>(o(),y(p,{key:U,url:T.url,name:T.name,closable:!1},null,8,["url","name"]))),128))])):v("",!0),e.modelValue?.request?.prompt?(o(),l("p",Js,[h(n(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?e.video?.status==="processing"||e.video?.status==="pending"?(o(),l("span",Qs," - ("+n(e.$t("seedance.status.processing"))+") ",1)):v("",!0):(o(),l("span",Ks," - ("+n(e.$t("seedance.status.pending"))+") ",1))])):v("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(o(),l("div",Zs,[e.video?.video_url?(o(),l("div",xs,[s($,{src:e.video?.video_url},null,8,["src"])])):v("",!0),e.video?.last_frame_url?(o(),l("div",et,[s(L,{src:e.video?.last_frame_url,"raw-src":e.video?.last_frame_url},null,8,["src","raw-src"])])):v("",!0),e.video?.video_url?(o(),l("div",st,[s(R,{class:"box-item",effect:"dark",content:e.$t("seedance.message.downloadVideo"),placement:"top-start"},{default:_(()=>[s(D,{type:"info",size:"small",class:"btn-action",onClick:a[0]||(a[0]=J(T=>e.onDownload(e.video?.video_url),["stop"]))},{default:_(()=>[h(n(e.$t("seedance.button.download")),1)]),_:1})]),_:1},8,["content"])])):v("",!0),s(b,{closable:!1,class:"mt-2 success"},{default:_(()=>[e.modelValue?.request?.model?(o(),l("p",tt,[s(r,{icon:"fa-solid fa-cube",class:"mr-1"}),h(" "+n(e.$t("seedance.name.model"))+": "+n(e.modelValue?.request?.model),1)])):v("",!0),e.video?.duration?(o(),l("p",ot,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+n(e.$t("seedance.name.duration"))+": "+n(e.video?.duration)+"s ",1)])):v("",!0),e.video?.resolution?(o(),l("p",nt,[s(r,{icon:"fa-solid fa-expand",class:"mr-1"}),h(" "+n(e.$t("seedance.name.resolution"))+": "+n(e.video?.resolution)+" ",1),e.video?.ratio?(o(),l("span",at," · "+n(e.video?.ratio),1)):v("",!0),e.video?.framespersecond?(o(),l("span",lt," · "+n(e.video?.framespersecond)+"fps",1)):v("",!0)])):v("",!0),e.modelValue?.request?.generate_audio?(o(),l("p",rt,[s(r,{icon:"fa-solid fa-volume-up",class:"mr-1"}),h(" "+n(e.$t("seedance.name.generateAudio"))+": "+n(e.$t("seedance.button.on")),1)])):v("",!0),i("p",it,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+n(e.$t("seedance.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(o(),l("p",ct,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+n(e.$t("seedance.name.elapsed"))+": "+n(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(o(),l("p",dt,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+n(e.$t("seedance.name.traceId"))+": "+n(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(o(),l("div",mt,[s(b,{closable:!1,class:"failure"},{template:_(()=>[s(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+n(e.$t("seedance.name.failure")),1)]),default:_(()=>[i("p",ut,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+n(e.$t("seedance.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.response?.error?.message?(o(),l("p",pt,[s(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+n(e.$t("seedance.name.failureReason"))+": "+n(e.modelValue?.response?.error?.message)+" ",1),s(c,{content:e.modelValue?.response?.error?.message,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0),e.modelValue?.elapsed?(o(),l("p",ft,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+n(e.$t("seedance.name.elapsed"))+": "+n(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(o(),l("p",_t,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+n(e.$t("seedance.name.traceId"))+": "+n(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):(o(),l("div",ht,[s(b,{closable:!1,class:"info"},{template:_(()=>[s(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+n(e.$t("seedance.name.status")),1)]),default:_(()=>[i("p",vt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+n(e.$t("seedance.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.response?.trace_id?(o(),l("p",$t,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+n(e.$t("seedance.name.traceId"))+": "+n(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):(o(),l("div",Xs,[s(b,{closable:!1,class:"info"},{template:_(()=>[s(r,{icon:"fa-regular fa-clock",class:"mr-1"}),h(" "+n(e.$t("seedance.status.pending")),1)]),default:_(()=>[i("p",Ys,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+n(e.$t("seedance.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})]))])])}const bt=k(Ms,[["render",gt],["__scopeId","data-v-6b9d75ed"]]),Et=E({name:"SeedanceRecentPanel",components:{TaskPreview:bt,BotPlaceholder:be,NoTasks:Ee,ScrollList:ce},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],computed:{tasks(){return{...this.$store.state.seedance?.tasks,items:this.$store.state.seedance?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),kt={key:0},yt={key:2,class:"w-full h-full flex items-center justify-center"};function wt(e,a,m,f,u,g){const d=t("bot-placeholder"),p=t("task-preview"),r=t("scroll-list"),c=t("no-tasks");return o(),l(V,null,[e.tasks?.items===void 0?(o(),l("div",kt,[s(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(o(),y(r,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:a[0]||(a[0]=b=>e.$emit("reach-top"))},{default:_(()=>[(o(!0),l(V,null,A(e.tasks?.items,b=>(o(),y(p,{key:b.id,"model-value":b},null,8,["model-value"]))),128))]),_:1},8,["loading"])):v("",!0),e.tasks?.items?.length===0?(o(),l("div",yt,[s(c)])):v("",!0)],64)}const St=k(Et,[["render",wt]]),Vt=ie("seedance"),Lt=E({name:"SeedanceIndex",components:{ConfigPanel:Ps,Layout:Te,RecentPanel:St},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.seedance?.status?.getApplications===G.Request},tasksLoading(){return this.$store.state.seedance?.status?.getTasks===G.Request||this.fetchingTasks},credential(){return this.$store.state.seedance?.credential},config(){return this.$store.state.seedance?.config},tasks(){return this.$store.state.seedance?.tasks}},watch:{initialized:{async handler(e){e&&(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 de({tasks: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(){await this.$store.dispatch("seedance/getService")},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;const{limit:a=5,createdAtMin:m,createdAtMax:f}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch("seedance/getTasks",{limit:a,createdAtMin:m,createdAtMax:f})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config||{}};if(typeof e?.prompt=="string"&&(e.prompt=e.prompt.trim(),e.prompt||delete e.prompt),Array.isArray(e?.images)){e.images=e.images.filter(d=>!!d?.url);const u=e.images.some(d=>d?.role==="first_frame"),g=e.images.some(d=>d?.role==="last_frame");!u&&g&&(e.images=e.images.map(d=>d?.role==="last_frame"?{...d,role:"first_frame"}:d))}!(Array.isArray(e?.images)&&e.images.length>0)&&"images"in e&&delete e.images;const m={...e,callback_url:Vt},f=this.credential?.token;if(!f){console.error("no token specified");return}w.info(this.$t("seedance.message.startingTask")),le("seedance",re.generate(m,{token:f})).then(()=>{w.success(this.$t("seedance.message.startTaskSuccess"))}).catch(u=>{const g=u?.response?.data;g?.error?.code===ke?w.error(this.$t("seedance.message.usedUp")):w.error(this.$t("seedance.message.startTaskFailed")+(g?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Tt(e,a,m,f,u,g){const d=t("config-panel"),p=t("recent-panel"),r=t("layout");return o(),y(r,null,{config:_(()=>[s(d,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:_(()=>[s(p,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const ko=k(Lt,[["render",Tt]]);export{ko as default};
@@ -1 +1 @@
1
- import{F as x}from"./index.es-BGvCJe-W.js";import{E as A}from"./index-BF3jvRlG.js";import{E as O}from"./index-CP6llfLN.js";import{d as h,H as o,E as r,z as E,C as d,y as k,D as i,q as t,F as a,I,J as c,O as b,N as y,x as v,P as z}from"./vendor-vue-NSDaktjZ.js";import{G as m,S as V}from"./index-B7lLMdzb.js";import{E as U}from"./index-zQkXvP4I.js";import{E as N,a as P}from"./index-B21ZeSrS.js";import{C as G}from"./Consumption-D1DmjLsj.js";import{a as L}from"./price-BoiEmiVd.js";import{E as B,a as D}from"./index-BE6qZqmD.js";import{b as T}from"./errorCode-Cqj9Td_Z.js";import{E as w}from"./index-DmgFbW9M.js";import"./use-form-item-DZgxCtXL.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./typescript-Bj1ijDQ6.js";import"./index-cN8cftWM.js";import"./index-pQFvUXd3.js";import"./index-BiC7KGb5.js";import"./index-CGiBnpqk.js";import"./strings-beZM2Y-f.js";import"./isEqual-CfmBLeOp.js";import"./_Uint8Array-4l3jEroS.js";import"./castArray-FN0qIC-F.js";import"./debounce-CqzxdC1T.js";import"./_baseIteratee-CJ9W-nbE.js";import"./index-CbH6hylr.js";import"./index-BbL_4E9w.js";const K=h({name:"LayoutSerp",components:{ElDrawer:O,ElButton:A,FontAwesomeIcon:x},data(){return{drawer:!1}}}),Q={class:"main flex flex-row flex-1"},H={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},J={class:"result h-full flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function M(e,n,p,_,f,g){const s=i("font-awesome-icon"),l=i("el-button"),u=i("el-drawer");return t(),o("div",Q,[r("div",H,[E(e.$slots,"config",{},void 0,!0)]),r("div",J,[E(e.$slots,"result",{},void 0,!0)]),d(l,{circle:"",class:"menu",onClick:n[0]||(n[0]=$=>e.drawer=!0)},{default:k(()=>[d(s,{icon:"fa-solid fa-search"})]),_:1}),d(u,{modelValue:e.drawer,"onUpdate:modelValue":n[1]||(n[1]=$=>e.drawer=$),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:k(()=>[E(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const W=m(K,[["render",M],["__scopeId","data-v-72398911"]]),X=h({name:"QueryInput",components:{ElInput:U},computed:{query:{get(){return this.$store.state.serp?.config?.query},set(e){this.$store.commit("serp/setConfig",{...this.$store.state.serp?.config,query:e})}}}}),Y={class:"field"},Z={class:"box"},ee={class:"title font-bold"};function te(e,n,p,_,f,g){const s=i("el-input");return t(),o("div",Y,[r("div",Z,[r("h2",ee,a(e.$t("serp.name.query")),1)]),d(s,{modelValue:e.query,"onUpdate:modelValue":n[0]||(n[0]=l=>e.query=l),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("serp.placeholder.query")},null,8,["modelValue","placeholder"])])}const se=m(X,[["render",te],["__scopeId","data-v-3582b195"]]),oe=h({name:"TypeSelector",components:{ElSelect:P,ElOption:N},computed:{value:{get(){return this.$store.state.serp?.config?.type},set(e){this.$store.commit("serp/setConfig",{...this.$store.state.serp?.config,type:e})}}},mounted(){this.value||(this.value="search")}}),re={class:"field"},ae={class:"title font-bold"};function ne(e,n,p,_,f,g){const s=i("el-option"),l=i("el-select");return t(),o("div",re,[r("h2",ae,a(e.$t("serp.name.type")),1),d(l,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=u=>e.value=u),class:"value"},{default:k(()=>[d(s,{value:"search",label:e.$t("serp.type.search")},null,8,["label"]),d(s,{value:"images",label:e.$t("serp.type.images")},null,8,["label"]),d(s,{value:"news",label:e.$t("serp.type.news")},null,8,["label"]),d(s,{value:"videos",label:e.$t("serp.type.videos")},null,8,["label"])]),_:1},8,["modelValue"])])}const le=m(oe,[["render",ne],["__scopeId","data-v-2913fb62"]]),ie=h({name:"CountryInput",components:{ElInput:U},computed:{value:{get(){return this.$store.state.serp?.config?.country},set(e){this.$store.commit("serp/setConfig",{...this.$store.state.serp?.config,country:e})}}},mounted(){this.value||(this.value="US")}}),ce={class:"field"},de={class:"title font-bold"};function ue(e,n,p,_,f,g){const s=i("el-input");return t(),o("div",ce,[r("h2",de,a(e.$t("serp.name.country")),1),d(s,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),class:"value",placeholder:e.$t("serp.placeholder.country")},null,8,["modelValue","placeholder"])])}const pe=m(ie,[["render",ue],["__scopeId","data-v-f0672cc6"]]),he=h({name:"LanguageInput",components:{ElInput:U},computed:{value:{get(){return this.$store.state.serp?.config?.language},set(e){this.$store.commit("serp/setConfig",{...this.$store.state.serp?.config,language:e})}}},mounted(){this.value||(this.value="en")}}),me={class:"field"},_e={class:"title font-bold"};function fe(e,n,p,_,f,g){const s=i("el-input");return t(),o("div",me,[r("h2",_e,a(e.$t("serp.name.language")),1),d(s,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),class:"value",placeholder:e.$t("serp.placeholder.language")},null,8,["modelValue","placeholder"])])}const ge=m(he,[["render",fe],["__scopeId","data-v-dc1c94b7"]]),$e=h({name:"SearchPanel",components:{ElButton:A,FontAwesomeIcon:x,QueryInput:se,TypeSelector:le,CountryInput:pe,LanguageInput:ge,Consumption:G},emits:["search"],computed:{config(){return this.$store.state.serp?.config},consumption(){return L(this.config,this.service?.cost)},service(){return this.$store.state.serp?.service},searching(){return this.$store.state.serp?.status?.search===V.Request}},methods:{onSearch(){this.$emit("search")}}}),ve={class:"flex flex-col h-full"},be={class:"flex-1 overflow-y-auto p-5"},ye={class:"flex flex-col items-center justify-center px-5 pb-5"};function ke(e,n,p,_,f,g){const s=i("query-input"),l=i("type-selector"),u=i("country-input"),$=i("language-input"),S=i("consumption"),R=i("font-awesome-icon"),q=i("el-button");return t(),o("div",ve,[r("div",be,[d(s,{class:"mb-4"}),d(l,{class:"mb-4"}),d(u,{class:"mb-4"}),d($,{class:"mb-4"})]),r("div",ye,[d(S,{value:e.consumption,service:e.service},null,8,["value","service"]),d(q,{type:"primary",class:"btn w-full",round:"",loading:e.searching,onClick:e.onSearch},{default:k(()=>[d(R,{icon:"fa-solid fa-search",class:"mr-2"}),I(" "+a(e.$t("serp.button.search")),1)]),_:1},8,["loading","onClick"])])])}const we=m($e,[["render",ke]]),xe=h({name:"KnowledgeGraph",props:{data:{type:Object,required:!0}}}),Se={class:"knowledge-graph rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]"},Re={class:"flex flex-row gap-4"},qe=["src","alt"],Ce={class:"flex-1 min-w-0"},Ee={key:0,class:"text-xs text-[var(--el-text-color-disabled)] mb-1 uppercase tracking-wide"},Ve={class:"text-xl font-bold mb-1.5"},Ie={key:1,class:"text-sm text-[var(--el-text-color-regular)] mb-3 leading-relaxed"},Ue=["href"],Ae={key:2,class:"text-sm"},je={class:"text-[var(--el-text-color-disabled)] flex-none font-medium"},Fe={class:"text-[var(--el-text-color-regular)]"};function Oe(e,n,p,_,f,g){return t(),o("div",Se,[r("div",Re,[e.data.image_url?(t(),o("img",{key:0,src:e.data.image_url,alt:e.data.title,class:"w-28 h-28 rounded-lg object-cover flex-none shadow-sm"},null,8,qe)):c("",!0),r("div",Ce,[e.data.type?(t(),o("div",Ee,a(e.data.type),1)):c("",!0),r("h3",Ve,a(e.data.title),1),e.data.description?(t(),o("p",Ie,[I(a(e.data.description)+" ",1),e.data.description_link?(t(),o("a",{key:0,href:e.data.description_link,target:"_blank",rel:"noopener noreferrer",class:"text-[var(--el-color-primary)] hover:underline ml-1"},a(e.data.description_source||"Source"),9,Ue)):c("",!0)])):c("",!0),e.data.attributes&&Object.keys(e.data.attributes).length?(t(),o("div",Ae,[(t(!0),o(b,null,y(e.data.attributes,(s,l)=>(t(),o("div",{key:l,class:"flex gap-2 mb-1 py-0.5"},[r("span",je,a(l)+":",1),r("span",Fe,a(s),1)]))),128))])):c("",!0)])])])}const ze=m(xe,[["render",Oe]]),Ne=h({name:"OrganicResult",props:{data:{type:Object,required:!0}},data(){return{faviconFailed:!1}},computed:{hostname(){if(!this.data.link)return"";try{return new URL(this.data.link).hostname}catch{return""}},pathname(){if(!this.data.link)return"";try{const e=new URL(this.data.link).pathname;return e==="/"?"":e}catch{return""}},displayUrl(){return this.hostname},faviconUrl(){return this.faviconFailed||!this.hostname?"":`https://www.google.com/s2/favicons?domain=${this.hostname}&sz=32`}},methods:{onFaviconError(e){this.faviconFailed=!0,e.target.style.display="none"}}}),Pe={class:"organic-result rounded-lg p-4 transition-all duration-200 hover:bg-[var(--el-fill-color-lighter)]"},Ge={key:0,class:"flex items-center gap-2 mb-1.5"},Le=["src","alt"],Be={class:"text-xs text-[var(--el-text-color-secondary)] truncate"},De={class:"text-xs text-[var(--el-text-color-disabled)]"},Te=["href"],Ke={key:1,class:"text-xs text-[var(--el-text-color-disabled)] mt-1"},Qe={key:2,class:"text-sm text-[var(--el-text-color-regular)] mt-1.5 leading-relaxed line-clamp-3"},He={key:3,class:"mt-3 flex flex-wrap gap-x-4 gap-y-1"},Je=["href"];function Me(e,n,p,_,f,g){return t(),o("div",Pe,[e.displayUrl?(t(),o("div",Ge,[r("img",{src:e.faviconUrl,alt:e.hostname,class:"w-4 h-4 rounded-sm flex-none",loading:"lazy",onError:n[0]||(n[0]=(...s)=>e.onFaviconError&&e.onFaviconError(...s))},null,40,Le),r("span",Be,a(e.hostname),1),r("span",De,a(e.pathname),1)])):c("",!0),r("a",{href:e.data.link,target:"_blank",rel:"noopener noreferrer",class:"text-base font-semibold text-[var(--el-color-primary)] hover:underline leading-snug block"},a(e.data.title),9,Te),e.data.date?(t(),o("div",Ke,a(e.data.date),1)):c("",!0),e.data.snippet?(t(),o("p",Qe,a(e.data.snippet),1)):c("",!0),e.data.sitelinks?.length?(t(),o("div",He,[(t(!0),o(b,null,y(e.data.sitelinks,(s,l)=>(t(),o("a",{key:l,href:s.link,target:"_blank",rel:"noopener noreferrer",class:"text-xs text-[var(--el-color-primary-light-3)] hover:text-[var(--el-color-primary)] hover:underline transition-colors"},a(s.title),9,Je))),128))])):c("",!0)])}const We=m(Ne,[["render",Me]]),Xe=h({name:"ImageResults",props:{data:{type:Array,required:!0}}}),Ye={class:"rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]"},Ze={class:"text-base font-bold mb-3"},et={class:"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3"},tt=["href"],st=["src","alt"],ot={class:"absolute inset-x-0 bottom-0 bg-gradient-to-t from-black/70 to-transparent p-2.5 opacity-0 group-hover:opacity-100 transition-opacity duration-200"},rt={class:"text-xs text-white line-clamp-2"};function at(e,n,p,_,f,g){return t(),o("div",Ye,[r("h3",Ze,a(e.$t("serp.name.imageResults")),1),r("div",et,[(t(!0),o(b,null,y(e.data,(s,l)=>(t(),o("a",{key:l,href:s.link,target:"_blank",rel:"noopener noreferrer",class:"group relative rounded-lg overflow-hidden bg-[var(--el-fill-color-light)] aspect-square"},[s.image_url?(t(),o("img",{key:0,src:s.image_url,alt:s.title,class:"w-full h-full object-cover transition-transform duration-300 group-hover:scale-105",loading:"lazy"},null,8,st)):c("",!0),r("div",ot,[r("span",rt,a(s.title),1)])],8,tt))),128))])])}const nt=m(Xe,[["render",at]]),lt=h({name:"VideoResults",props:{data:{type:Array,required:!0}}}),it={class:"text-base font-bold mb-3"},ct={class:"space-y-4"},dt=["href"],ut={class:"relative flex-shrink-0 w-40 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800"},pt=["src","alt"],ht={key:1,class:"absolute bottom-1 right-1 bg-black/80 text-white text-xs px-1 rounded"},mt={class:"flex-1 min-w-0"},_t={class:"text-blue-600 group-hover:underline font-medium line-clamp-2"},ft={class:"text-xs text-gray-400 mt-1"},gt={key:0},$t={key:1},vt={key:2},bt={key:0,class:"text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2"};function yt(e,n,p,_,f,g){return t(),o("div",null,[r("h3",it,a(e.$t("serp.name.videoResults")),1),r("div",ct,[(t(!0),o(b,null,y(e.data,(s,l)=>(t(),o("a",{key:l,href:s.link,target:"_blank",rel:"noopener noreferrer",class:"flex gap-4 group"},[r("div",ut,[s.image_url?(t(),o("img",{key:0,src:s.image_url,alt:s.title,class:"w-full h-full object-cover",loading:"lazy"},null,8,pt)):c("",!0),s.duration?(t(),o("div",ht,a(s.duration),1)):c("",!0)]),r("div",mt,[r("div",_t,a(s.title),1),r("div",ft,[s.source?(t(),o("span",gt,a(s.source),1)):c("",!0),s.channel?(t(),o("span",$t," · "+a(s.channel),1)):c("",!0),s.date?(t(),o("span",vt," · "+a(s.date),1)):c("",!0)]),s.snippet?(t(),o("p",bt,a(s.snippet),1)):c("",!0)])],8,dt))),128))])])}const kt=m(lt,[["render",yt]]),wt=h({name:"NewsResults",props:{data:{type:Array,required:!0}}}),xt={class:"text-base font-bold mb-3"},St={class:"space-y-4"},Rt=["href"],qt={class:"flex-1 min-w-0"},Ct={class:"text-blue-600 group-hover:underline font-medium line-clamp-2"},Et={class:"text-xs text-gray-400 mt-1"},Vt={key:0},It={key:1},Ut={key:0,class:"text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2"},At={key:0,class:"flex-shrink-0 w-24 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800"},jt=["src","alt"];function Ft(e,n,p,_,f,g){return t(),o("div",null,[r("h3",xt,a(e.$t("serp.name.newsResults")),1),r("div",St,[(t(!0),o(b,null,y(e.data,(s,l)=>(t(),o("a",{key:l,href:s.link,target:"_blank",rel:"noopener noreferrer",class:"flex gap-4 group"},[r("div",qt,[r("div",Ct,a(s.title),1),r("div",Et,[s.source?(t(),o("span",Vt,a(s.source),1)):c("",!0),s.date?(t(),o("span",It," · "+a(s.date),1)):c("",!0)]),s.snippet?(t(),o("p",Ut,a(s.snippet),1)):c("",!0)]),s.image_url?(t(),o("div",At,[r("img",{src:s.image_url,alt:s.title,class:"w-full h-full object-cover",loading:"lazy"},null,8,jt)])):c("",!0)],8,Rt))),128))])])}const Ot=m(wt,[["render",Ft]]),zt=h({name:"PeopleAlsoAsk",components:{ElCollapse:D,ElCollapseItem:B},props:{data:{type:Array,required:!0}}}),Nt={class:"rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]"},Pt={class:"text-base font-bold mb-3"},Gt={key:0,class:"text-sm text-[var(--el-text-color-regular)] mb-2 leading-relaxed"},Lt=["href"];function Bt(e,n,p,_,f,g){const s=i("el-collapse-item"),l=i("el-collapse");return t(),o("div",Nt,[r("h3",Pt,a(e.$t("serp.name.peopleAlsoAsk")),1),d(l,null,{default:k(()=>[(t(!0),o(b,null,y(e.data,(u,$)=>(t(),v(s,{key:$,title:u.question||u.title||""},{default:k(()=>[u.snippet?(t(),o("p",Gt,a(u.snippet),1)):c("",!0),u.link?(t(),o("a",{key:1,href:u.link,target:"_blank",rel:"noopener noreferrer",class:"text-xs text-[var(--el-color-primary)] hover:underline"},a(u.title||u.link),9,Lt)):c("",!0)]),_:2},1032,["title"]))),128))]),_:1})])}const Dt=m(zt,[["render",Bt]]),Tt=h({name:"RelatedSearches",components:{FontAwesomeIcon:x},props:{data:{type:Array,required:!0}},emits:["search"],methods:{onSearch(e){e&&this.$emit("search",e)}}}),Kt={class:"rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]"},Qt={class:"text-base font-bold mb-3"},Ht={class:"flex flex-wrap gap-2"},Jt=["onClick"];function Mt(e,n,p,_,f,g){const s=i("font-awesome-icon");return t(),o("div",Kt,[r("h3",Qt,a(e.$t("serp.name.relatedSearches")),1),r("div",Ht,[(t(!0),o(b,null,y(e.data,(l,u)=>(t(),o("button",{key:u,class:"inline-flex items-center gap-1.5 px-3 py-1.5 rounded-full text-sm bg-[var(--el-fill-color-light)] text-[var(--el-text-color-regular)] hover:bg-[var(--el-color-primary-light-9)] hover:text-[var(--el-color-primary)] transition-colors cursor-pointer border-none",onClick:$=>e.onSearch(l.query)},[d(s,{icon:"fa-solid fa-magnifying-glass",class:"text-xs opacity-50"}),I(" "+a(l.query),1)],8,Jt))),128))])])}const Wt=m(Tt,[["render",Mt]]),Xt=h({name:"ResultPanel",components:{FontAwesomeIcon:x,KnowledgeGraph:ze,OrganicResult:We,ImageResults:nt,VideoResults:kt,NewsResults:Ot,PeopleAlsoAsk:Dt,RelatedSearches:Wt},emits:["related-search"],computed:{results(){return this.$store.state.serp?.results},searching(){return this.$store.state.serp?.status?.search===V.Request},noResults(){return this.$store.state.serp?.status?.search===V.Success&&this.results&&!this.results.organic?.length&&!this.results.images?.length&&!this.results.videos?.length&&!this.results.news?.length&&!this.results.knowledge_graph?.title}},methods:{onRelatedSearch(e){this.$emit("related-search",e)}}}),Yt={class:"h-full overflow-y-auto p-6"},Zt={key:0,class:"max-w-3xl mx-auto py-8"},es={key:1,class:"flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]"},ts={class:"text-base"},ss={key:2,class:"max-w-3xl mx-auto"},os={key:1,class:"mb-6"},rs={key:3,class:"flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]"},as={class:"text-base"};function ns(e,n,p,_,f,g){const s=i("font-awesome-icon"),l=i("knowledge-graph"),u=i("organic-result"),$=i("image-results"),S=i("video-results"),R=i("news-results"),q=i("people-also-ask"),j=i("related-searches");return t(),o("div",Yt,[e.searching?(t(),o("div",Zt,[(t(),o(b,null,y(4,C=>r("div",{key:C,class:"mb-6 animate-pulse"},[...n[0]||(n[0]=[z('<div class="flex items-center gap-2 mb-2"><div class="w-4 h-4 rounded-sm bg-[var(--el-fill-color-darker)]"></div><div class="h-3 w-32 rounded bg-[var(--el-fill-color-darker)]"></div></div><div class="h-4 w-3/4 rounded bg-[var(--el-fill-color-dark)] mb-2"></div><div class="h-3 w-full rounded bg-[var(--el-fill-color)] mb-1"></div><div class="h-3 w-5/6 rounded bg-[var(--el-fill-color)]"></div>',4)])])),64))])):e.noResults?(t(),o("div",es,[d(s,{icon:"fa-solid fa-face-meh",class:"text-5xl mb-4 opacity-40"}),r("p",ts,a(e.$t("serp.message.noResults")),1)])):e.results?(t(),o("div",ss,[e.results.knowledge_graph?.title?(t(),v(l,{key:0,data:e.results.knowledge_graph,class:"mb-6"},null,8,["data"])):c("",!0),e.results.organic?.length?(t(),o("div",os,[(t(!0),o(b,null,y(e.results.organic,(C,F)=>(t(),v(u,{key:F,data:C,class:"mb-1"},null,8,["data"]))),128))])):c("",!0),e.results.images?.length?(t(),v($,{key:2,data:e.results.images,class:"mb-6"},null,8,["data"])):c("",!0),e.results.videos?.length?(t(),v(S,{key:3,data:e.results.videos,class:"mb-6"},null,8,["data"])):c("",!0),e.results.news?.length?(t(),v(R,{key:4,data:e.results.news,class:"mb-6"},null,8,["data"])):c("",!0),e.results.people_also_ask?.length?(t(),v(q,{key:5,data:e.results.people_also_ask,class:"mb-6"},null,8,["data"])):c("",!0),e.results.related_searches?.length?(t(),v(j,{key:6,data:e.results.related_searches,class:"mb-6",onSearch:e.onRelatedSearch},null,8,["data","onSearch"])):c("",!0)])):(t(),o("div",rs,[d(s,{icon:"fa-solid fa-globe",class:"text-5xl mb-4 opacity-30"}),r("p",as,a(e.$t("serp.description.query")),1)]))])}const ls=m(Xt,[["render",ns]]),is=h({name:"SerpIndex",components:{Layout:W,SearchPanel:we,ResultPanel:ls},inject:["initialized"],async mounted(){await this.onGetService()},methods:{async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("serp/getService"),console.debug("end onGetService")},async onSearch(){if(this.$store.state.serp?.config?.query){w.info(this.$t("serp.message.searching"));try{await this.$store.dispatch("serp/search"),w.success(this.$t("serp.message.searchSuccess"))}catch(n){n?.response?.data?.error?.code===T?w.error(this.$t("serp.message.usedUp")):w.error(this.$t("serp.message.searchFailed"))}}},async onRelatedSearch(e){this.$store.commit("serp/setConfig",{...this.$store.state.serp?.config,query:e}),await this.onSearch()}}});function cs(e,n,p,_,f,g){const s=i("search-panel"),l=i("result-panel"),u=i("layout");return t(),v(u,null,{config:k(()=>[d(s,{onSearch:e.onSearch},null,8,["onSearch"])]),result:k(()=>[d(l,{onRelatedSearch:e.onRelatedSearch},null,8,["onRelatedSearch"])]),_:1})}const Gs=m(is,[["render",cs]]);export{Gs as default};
1
+ import{F as x}from"./index.es-f2R6ubO6.js";import{E as A}from"./index-D-4JF5KB.js";import{E as O}from"./index-CKceOzxT.js";import{d as h,H as o,E as r,z as E,C as d,y as k,D as i,q as t,F as a,I,J as c,O as b,N as y,x as v,P as z}from"./vendor-vue-NSDaktjZ.js";import{G as m,S as V}from"./index-DVUMZ05r.js";import{E as U}from"./index-CtbJ8jTa.js";import{E as N,a as P}from"./index-BKHSCugF.js";import{C as G}from"./Consumption-BKf_KS7X.js";import{a as L}from"./price-3Bxyzfub.js";import{E as B,a as D}from"./index-D8TyI7GI.js";import{b as T}from"./errorCode-Cqj9Td_Z.js";import{E as w}from"./index-CsGFFE61.js";import"./use-form-item-DhMXJI5q.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./typescript-qAIJ13Qr.js";import"./index-B5Z3EZrb.js";import"./index-CSLM8oj_.js";import"./index-CWdAzE8_.js";import"./index-jyz6xleX.js";import"./strings-beZM2Y-f.js";import"./isEqual-B1Z_z-Zf.js";import"./_Uint8Array-yhuF-6h2.js";import"./castArray-B2mZnC5U.js";import"./debounce-C18vO1_Z.js";import"./_baseIteratee-CTMClKxb.js";import"./index-GfS1QM00.js";import"./index-CvMqNkLv.js";const K=h({name:"LayoutSerp",components:{ElDrawer:O,ElButton:A,FontAwesomeIcon:x},data(){return{drawer:!1}}}),Q={class:"main flex flex-row flex-1"},H={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},J={class:"result h-full flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function M(e,n,p,_,f,g){const s=i("font-awesome-icon"),l=i("el-button"),u=i("el-drawer");return t(),o("div",Q,[r("div",H,[E(e.$slots,"config",{},void 0,!0)]),r("div",J,[E(e.$slots,"result",{},void 0,!0)]),d(l,{circle:"",class:"menu",onClick:n[0]||(n[0]=$=>e.drawer=!0)},{default:k(()=>[d(s,{icon:"fa-solid fa-search"})]),_:1}),d(u,{modelValue:e.drawer,"onUpdate:modelValue":n[1]||(n[1]=$=>e.drawer=$),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:k(()=>[E(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const W=m(K,[["render",M],["__scopeId","data-v-72398911"]]),X=h({name:"QueryInput",components:{ElInput:U},computed:{query:{get(){return this.$store.state.serp?.config?.query},set(e){this.$store.commit("serp/setConfig",{...this.$store.state.serp?.config,query:e})}}}}),Y={class:"field"},Z={class:"box"},ee={class:"title font-bold"};function te(e,n,p,_,f,g){const s=i("el-input");return t(),o("div",Y,[r("div",Z,[r("h2",ee,a(e.$t("serp.name.query")),1)]),d(s,{modelValue:e.query,"onUpdate:modelValue":n[0]||(n[0]=l=>e.query=l),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("serp.placeholder.query")},null,8,["modelValue","placeholder"])])}const se=m(X,[["render",te],["__scopeId","data-v-3582b195"]]),oe=h({name:"TypeSelector",components:{ElSelect:P,ElOption:N},computed:{value:{get(){return this.$store.state.serp?.config?.type},set(e){this.$store.commit("serp/setConfig",{...this.$store.state.serp?.config,type:e})}}},mounted(){this.value||(this.value="search")}}),re={class:"field"},ae={class:"title font-bold"};function ne(e,n,p,_,f,g){const s=i("el-option"),l=i("el-select");return t(),o("div",re,[r("h2",ae,a(e.$t("serp.name.type")),1),d(l,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=u=>e.value=u),class:"value"},{default:k(()=>[d(s,{value:"search",label:e.$t("serp.type.search")},null,8,["label"]),d(s,{value:"images",label:e.$t("serp.type.images")},null,8,["label"]),d(s,{value:"news",label:e.$t("serp.type.news")},null,8,["label"]),d(s,{value:"videos",label:e.$t("serp.type.videos")},null,8,["label"])]),_:1},8,["modelValue"])])}const le=m(oe,[["render",ne],["__scopeId","data-v-2913fb62"]]),ie=h({name:"CountryInput",components:{ElInput:U},computed:{value:{get(){return this.$store.state.serp?.config?.country},set(e){this.$store.commit("serp/setConfig",{...this.$store.state.serp?.config,country:e})}}},mounted(){this.value||(this.value="US")}}),ce={class:"field"},de={class:"title font-bold"};function ue(e,n,p,_,f,g){const s=i("el-input");return t(),o("div",ce,[r("h2",de,a(e.$t("serp.name.country")),1),d(s,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),class:"value",placeholder:e.$t("serp.placeholder.country")},null,8,["modelValue","placeholder"])])}const pe=m(ie,[["render",ue],["__scopeId","data-v-f0672cc6"]]),he=h({name:"LanguageInput",components:{ElInput:U},computed:{value:{get(){return this.$store.state.serp?.config?.language},set(e){this.$store.commit("serp/setConfig",{...this.$store.state.serp?.config,language:e})}}},mounted(){this.value||(this.value="en")}}),me={class:"field"},_e={class:"title font-bold"};function fe(e,n,p,_,f,g){const s=i("el-input");return t(),o("div",me,[r("h2",_e,a(e.$t("serp.name.language")),1),d(s,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=l=>e.value=l),class:"value",placeholder:e.$t("serp.placeholder.language")},null,8,["modelValue","placeholder"])])}const ge=m(he,[["render",fe],["__scopeId","data-v-dc1c94b7"]]),$e=h({name:"SearchPanel",components:{ElButton:A,FontAwesomeIcon:x,QueryInput:se,TypeSelector:le,CountryInput:pe,LanguageInput:ge,Consumption:G},emits:["search"],computed:{config(){return this.$store.state.serp?.config},consumption(){return L(this.config,this.service?.cost)},service(){return this.$store.state.serp?.service},searching(){return this.$store.state.serp?.status?.search===V.Request}},methods:{onSearch(){this.$emit("search")}}}),ve={class:"flex flex-col h-full"},be={class:"flex-1 overflow-y-auto p-5"},ye={class:"flex flex-col items-center justify-center px-5 pb-5"};function ke(e,n,p,_,f,g){const s=i("query-input"),l=i("type-selector"),u=i("country-input"),$=i("language-input"),S=i("consumption"),R=i("font-awesome-icon"),q=i("el-button");return t(),o("div",ve,[r("div",be,[d(s,{class:"mb-4"}),d(l,{class:"mb-4"}),d(u,{class:"mb-4"}),d($,{class:"mb-4"})]),r("div",ye,[d(S,{value:e.consumption,service:e.service},null,8,["value","service"]),d(q,{type:"primary",class:"btn w-full",round:"",loading:e.searching,onClick:e.onSearch},{default:k(()=>[d(R,{icon:"fa-solid fa-search",class:"mr-2"}),I(" "+a(e.$t("serp.button.search")),1)]),_:1},8,["loading","onClick"])])])}const we=m($e,[["render",ke]]),xe=h({name:"KnowledgeGraph",props:{data:{type:Object,required:!0}}}),Se={class:"knowledge-graph rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]"},Re={class:"flex flex-row gap-4"},qe=["src","alt"],Ce={class:"flex-1 min-w-0"},Ee={key:0,class:"text-xs text-[var(--el-text-color-disabled)] mb-1 uppercase tracking-wide"},Ve={class:"text-xl font-bold mb-1.5"},Ie={key:1,class:"text-sm text-[var(--el-text-color-regular)] mb-3 leading-relaxed"},Ue=["href"],Ae={key:2,class:"text-sm"},je={class:"text-[var(--el-text-color-disabled)] flex-none font-medium"},Fe={class:"text-[var(--el-text-color-regular)]"};function Oe(e,n,p,_,f,g){return t(),o("div",Se,[r("div",Re,[e.data.image_url?(t(),o("img",{key:0,src:e.data.image_url,alt:e.data.title,class:"w-28 h-28 rounded-lg object-cover flex-none shadow-sm"},null,8,qe)):c("",!0),r("div",Ce,[e.data.type?(t(),o("div",Ee,a(e.data.type),1)):c("",!0),r("h3",Ve,a(e.data.title),1),e.data.description?(t(),o("p",Ie,[I(a(e.data.description)+" ",1),e.data.description_link?(t(),o("a",{key:0,href:e.data.description_link,target:"_blank",rel:"noopener noreferrer",class:"text-[var(--el-color-primary)] hover:underline ml-1"},a(e.data.description_source||"Source"),9,Ue)):c("",!0)])):c("",!0),e.data.attributes&&Object.keys(e.data.attributes).length?(t(),o("div",Ae,[(t(!0),o(b,null,y(e.data.attributes,(s,l)=>(t(),o("div",{key:l,class:"flex gap-2 mb-1 py-0.5"},[r("span",je,a(l)+":",1),r("span",Fe,a(s),1)]))),128))])):c("",!0)])])])}const ze=m(xe,[["render",Oe]]),Ne=h({name:"OrganicResult",props:{data:{type:Object,required:!0}},data(){return{faviconFailed:!1}},computed:{hostname(){if(!this.data.link)return"";try{return new URL(this.data.link).hostname}catch{return""}},pathname(){if(!this.data.link)return"";try{const e=new URL(this.data.link).pathname;return e==="/"?"":e}catch{return""}},displayUrl(){return this.hostname},faviconUrl(){return this.faviconFailed||!this.hostname?"":`https://www.google.com/s2/favicons?domain=${this.hostname}&sz=32`}},methods:{onFaviconError(e){this.faviconFailed=!0,e.target.style.display="none"}}}),Pe={class:"organic-result rounded-lg p-4 transition-all duration-200 hover:bg-[var(--el-fill-color-lighter)]"},Ge={key:0,class:"flex items-center gap-2 mb-1.5"},Le=["src","alt"],Be={class:"text-xs text-[var(--el-text-color-secondary)] truncate"},De={class:"text-xs text-[var(--el-text-color-disabled)]"},Te=["href"],Ke={key:1,class:"text-xs text-[var(--el-text-color-disabled)] mt-1"},Qe={key:2,class:"text-sm text-[var(--el-text-color-regular)] mt-1.5 leading-relaxed line-clamp-3"},He={key:3,class:"mt-3 flex flex-wrap gap-x-4 gap-y-1"},Je=["href"];function Me(e,n,p,_,f,g){return t(),o("div",Pe,[e.displayUrl?(t(),o("div",Ge,[r("img",{src:e.faviconUrl,alt:e.hostname,class:"w-4 h-4 rounded-sm flex-none",loading:"lazy",onError:n[0]||(n[0]=(...s)=>e.onFaviconError&&e.onFaviconError(...s))},null,40,Le),r("span",Be,a(e.hostname),1),r("span",De,a(e.pathname),1)])):c("",!0),r("a",{href:e.data.link,target:"_blank",rel:"noopener noreferrer",class:"text-base font-semibold text-[var(--el-color-primary)] hover:underline leading-snug block"},a(e.data.title),9,Te),e.data.date?(t(),o("div",Ke,a(e.data.date),1)):c("",!0),e.data.snippet?(t(),o("p",Qe,a(e.data.snippet),1)):c("",!0),e.data.sitelinks?.length?(t(),o("div",He,[(t(!0),o(b,null,y(e.data.sitelinks,(s,l)=>(t(),o("a",{key:l,href:s.link,target:"_blank",rel:"noopener noreferrer",class:"text-xs text-[var(--el-color-primary-light-3)] hover:text-[var(--el-color-primary)] hover:underline transition-colors"},a(s.title),9,Je))),128))])):c("",!0)])}const We=m(Ne,[["render",Me]]),Xe=h({name:"ImageResults",props:{data:{type:Array,required:!0}}}),Ye={class:"rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]"},Ze={class:"text-base font-bold mb-3"},et={class:"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3"},tt=["href"],st=["src","alt"],ot={class:"absolute inset-x-0 bottom-0 bg-gradient-to-t from-black/70 to-transparent p-2.5 opacity-0 group-hover:opacity-100 transition-opacity duration-200"},rt={class:"text-xs text-white line-clamp-2"};function at(e,n,p,_,f,g){return t(),o("div",Ye,[r("h3",Ze,a(e.$t("serp.name.imageResults")),1),r("div",et,[(t(!0),o(b,null,y(e.data,(s,l)=>(t(),o("a",{key:l,href:s.link,target:"_blank",rel:"noopener noreferrer",class:"group relative rounded-lg overflow-hidden bg-[var(--el-fill-color-light)] aspect-square"},[s.image_url?(t(),o("img",{key:0,src:s.image_url,alt:s.title,class:"w-full h-full object-cover transition-transform duration-300 group-hover:scale-105",loading:"lazy"},null,8,st)):c("",!0),r("div",ot,[r("span",rt,a(s.title),1)])],8,tt))),128))])])}const nt=m(Xe,[["render",at]]),lt=h({name:"VideoResults",props:{data:{type:Array,required:!0}}}),it={class:"text-base font-bold mb-3"},ct={class:"space-y-4"},dt=["href"],ut={class:"relative flex-shrink-0 w-40 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800"},pt=["src","alt"],ht={key:1,class:"absolute bottom-1 right-1 bg-black/80 text-white text-xs px-1 rounded"},mt={class:"flex-1 min-w-0"},_t={class:"text-blue-600 group-hover:underline font-medium line-clamp-2"},ft={class:"text-xs text-gray-400 mt-1"},gt={key:0},$t={key:1},vt={key:2},bt={key:0,class:"text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2"};function yt(e,n,p,_,f,g){return t(),o("div",null,[r("h3",it,a(e.$t("serp.name.videoResults")),1),r("div",ct,[(t(!0),o(b,null,y(e.data,(s,l)=>(t(),o("a",{key:l,href:s.link,target:"_blank",rel:"noopener noreferrer",class:"flex gap-4 group"},[r("div",ut,[s.image_url?(t(),o("img",{key:0,src:s.image_url,alt:s.title,class:"w-full h-full object-cover",loading:"lazy"},null,8,pt)):c("",!0),s.duration?(t(),o("div",ht,a(s.duration),1)):c("",!0)]),r("div",mt,[r("div",_t,a(s.title),1),r("div",ft,[s.source?(t(),o("span",gt,a(s.source),1)):c("",!0),s.channel?(t(),o("span",$t," · "+a(s.channel),1)):c("",!0),s.date?(t(),o("span",vt," · "+a(s.date),1)):c("",!0)]),s.snippet?(t(),o("p",bt,a(s.snippet),1)):c("",!0)])],8,dt))),128))])])}const kt=m(lt,[["render",yt]]),wt=h({name:"NewsResults",props:{data:{type:Array,required:!0}}}),xt={class:"text-base font-bold mb-3"},St={class:"space-y-4"},Rt=["href"],qt={class:"flex-1 min-w-0"},Ct={class:"text-blue-600 group-hover:underline font-medium line-clamp-2"},Et={class:"text-xs text-gray-400 mt-1"},Vt={key:0},It={key:1},Ut={key:0,class:"text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2"},At={key:0,class:"flex-shrink-0 w-24 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800"},jt=["src","alt"];function Ft(e,n,p,_,f,g){return t(),o("div",null,[r("h3",xt,a(e.$t("serp.name.newsResults")),1),r("div",St,[(t(!0),o(b,null,y(e.data,(s,l)=>(t(),o("a",{key:l,href:s.link,target:"_blank",rel:"noopener noreferrer",class:"flex gap-4 group"},[r("div",qt,[r("div",Ct,a(s.title),1),r("div",Et,[s.source?(t(),o("span",Vt,a(s.source),1)):c("",!0),s.date?(t(),o("span",It," · "+a(s.date),1)):c("",!0)]),s.snippet?(t(),o("p",Ut,a(s.snippet),1)):c("",!0)]),s.image_url?(t(),o("div",At,[r("img",{src:s.image_url,alt:s.title,class:"w-full h-full object-cover",loading:"lazy"},null,8,jt)])):c("",!0)],8,Rt))),128))])])}const Ot=m(wt,[["render",Ft]]),zt=h({name:"PeopleAlsoAsk",components:{ElCollapse:D,ElCollapseItem:B},props:{data:{type:Array,required:!0}}}),Nt={class:"rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]"},Pt={class:"text-base font-bold mb-3"},Gt={key:0,class:"text-sm text-[var(--el-text-color-regular)] mb-2 leading-relaxed"},Lt=["href"];function Bt(e,n,p,_,f,g){const s=i("el-collapse-item"),l=i("el-collapse");return t(),o("div",Nt,[r("h3",Pt,a(e.$t("serp.name.peopleAlsoAsk")),1),d(l,null,{default:k(()=>[(t(!0),o(b,null,y(e.data,(u,$)=>(t(),v(s,{key:$,title:u.question||u.title||""},{default:k(()=>[u.snippet?(t(),o("p",Gt,a(u.snippet),1)):c("",!0),u.link?(t(),o("a",{key:1,href:u.link,target:"_blank",rel:"noopener noreferrer",class:"text-xs text-[var(--el-color-primary)] hover:underline"},a(u.title||u.link),9,Lt)):c("",!0)]),_:2},1032,["title"]))),128))]),_:1})])}const Dt=m(zt,[["render",Bt]]),Tt=h({name:"RelatedSearches",components:{FontAwesomeIcon:x},props:{data:{type:Array,required:!0}},emits:["search"],methods:{onSearch(e){e&&this.$emit("search",e)}}}),Kt={class:"rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]"},Qt={class:"text-base font-bold mb-3"},Ht={class:"flex flex-wrap gap-2"},Jt=["onClick"];function Mt(e,n,p,_,f,g){const s=i("font-awesome-icon");return t(),o("div",Kt,[r("h3",Qt,a(e.$t("serp.name.relatedSearches")),1),r("div",Ht,[(t(!0),o(b,null,y(e.data,(l,u)=>(t(),o("button",{key:u,class:"inline-flex items-center gap-1.5 px-3 py-1.5 rounded-full text-sm bg-[var(--el-fill-color-light)] text-[var(--el-text-color-regular)] hover:bg-[var(--el-color-primary-light-9)] hover:text-[var(--el-color-primary)] transition-colors cursor-pointer border-none",onClick:$=>e.onSearch(l.query)},[d(s,{icon:"fa-solid fa-magnifying-glass",class:"text-xs opacity-50"}),I(" "+a(l.query),1)],8,Jt))),128))])])}const Wt=m(Tt,[["render",Mt]]),Xt=h({name:"ResultPanel",components:{FontAwesomeIcon:x,KnowledgeGraph:ze,OrganicResult:We,ImageResults:nt,VideoResults:kt,NewsResults:Ot,PeopleAlsoAsk:Dt,RelatedSearches:Wt},emits:["related-search"],computed:{results(){return this.$store.state.serp?.results},searching(){return this.$store.state.serp?.status?.search===V.Request},noResults(){return this.$store.state.serp?.status?.search===V.Success&&this.results&&!this.results.organic?.length&&!this.results.images?.length&&!this.results.videos?.length&&!this.results.news?.length&&!this.results.knowledge_graph?.title}},methods:{onRelatedSearch(e){this.$emit("related-search",e)}}}),Yt={class:"h-full overflow-y-auto p-6"},Zt={key:0,class:"max-w-3xl mx-auto py-8"},es={key:1,class:"flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]"},ts={class:"text-base"},ss={key:2,class:"max-w-3xl mx-auto"},os={key:1,class:"mb-6"},rs={key:3,class:"flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]"},as={class:"text-base"};function ns(e,n,p,_,f,g){const s=i("font-awesome-icon"),l=i("knowledge-graph"),u=i("organic-result"),$=i("image-results"),S=i("video-results"),R=i("news-results"),q=i("people-also-ask"),j=i("related-searches");return t(),o("div",Yt,[e.searching?(t(),o("div",Zt,[(t(),o(b,null,y(4,C=>r("div",{key:C,class:"mb-6 animate-pulse"},[...n[0]||(n[0]=[z('<div class="flex items-center gap-2 mb-2"><div class="w-4 h-4 rounded-sm bg-[var(--el-fill-color-darker)]"></div><div class="h-3 w-32 rounded bg-[var(--el-fill-color-darker)]"></div></div><div class="h-4 w-3/4 rounded bg-[var(--el-fill-color-dark)] mb-2"></div><div class="h-3 w-full rounded bg-[var(--el-fill-color)] mb-1"></div><div class="h-3 w-5/6 rounded bg-[var(--el-fill-color)]"></div>',4)])])),64))])):e.noResults?(t(),o("div",es,[d(s,{icon:"fa-solid fa-face-meh",class:"text-5xl mb-4 opacity-40"}),r("p",ts,a(e.$t("serp.message.noResults")),1)])):e.results?(t(),o("div",ss,[e.results.knowledge_graph?.title?(t(),v(l,{key:0,data:e.results.knowledge_graph,class:"mb-6"},null,8,["data"])):c("",!0),e.results.organic?.length?(t(),o("div",os,[(t(!0),o(b,null,y(e.results.organic,(C,F)=>(t(),v(u,{key:F,data:C,class:"mb-1"},null,8,["data"]))),128))])):c("",!0),e.results.images?.length?(t(),v($,{key:2,data:e.results.images,class:"mb-6"},null,8,["data"])):c("",!0),e.results.videos?.length?(t(),v(S,{key:3,data:e.results.videos,class:"mb-6"},null,8,["data"])):c("",!0),e.results.news?.length?(t(),v(R,{key:4,data:e.results.news,class:"mb-6"},null,8,["data"])):c("",!0),e.results.people_also_ask?.length?(t(),v(q,{key:5,data:e.results.people_also_ask,class:"mb-6"},null,8,["data"])):c("",!0),e.results.related_searches?.length?(t(),v(j,{key:6,data:e.results.related_searches,class:"mb-6",onSearch:e.onRelatedSearch},null,8,["data","onSearch"])):c("",!0)])):(t(),o("div",rs,[d(s,{icon:"fa-solid fa-globe",class:"text-5xl mb-4 opacity-30"}),r("p",as,a(e.$t("serp.description.query")),1)]))])}const ls=m(Xt,[["render",ns]]),is=h({name:"SerpIndex",components:{Layout:W,SearchPanel:we,ResultPanel:ls},inject:["initialized"],async mounted(){await this.onGetService()},methods:{async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("serp/getService"),console.debug("end onGetService")},async onSearch(){if(this.$store.state.serp?.config?.query){w.info(this.$t("serp.message.searching"));try{await this.$store.dispatch("serp/search"),w.success(this.$t("serp.message.searchSuccess"))}catch(n){n?.response?.data?.error?.code===T?w.error(this.$t("serp.message.usedUp")):w.error(this.$t("serp.message.searchFailed"))}}},async onRelatedSearch(e){this.$store.commit("serp/setConfig",{...this.$store.state.serp?.config,query:e}),await this.onSearch()}}});function cs(e,n,p,_,f,g){const s=i("search-panel"),l=i("result-panel"),u=i("layout");return t(),v(u,null,{config:k(()=>[d(s,{onSearch:e.onSearch},null,8,["onSearch"])]),result:k(()=>[d(l,{onRelatedSearch:e.onRelatedSearch},null,8,["onRelatedSearch"])]),_:1})}const Gs=m(is,[["render",cs]]);export{Gs as default};