@acedatacloud/nexior 3.195.0 → 3.196.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 (224) hide show
  1. package/dist/assets/{Auth-amaB4hqn.js → Auth-Mbih7X4A.js} +1 -1
  2. package/dist/assets/{BotPlaceholder-CypCpXTJ.js → BotPlaceholder-BeyeAf9f.js} +1 -1
  3. package/dist/assets/{Callback-CryA65op.js → Callback-D6RMgDn7.js} +1 -1
  4. package/dist/assets/{Console-BRICQrMm.js → Console-BWZpJyGW.js} +1 -1
  5. package/dist/assets/{Consumption-BR_5gQEP.js → Consumption-DVBEzfCm.js} +1 -1
  6. package/dist/assets/{Conversation-Dfzivw_M.js → Conversation-CobktRJ6.js} +1 -1
  7. package/dist/assets/{CopyToClipboard-DsvxywqB.js → CopyToClipboard-C2THHT8U.js} +1 -1
  8. package/dist/assets/{Detail-Dk1wdZuC.js → Detail-DN9xyEPZ.js} +2 -2
  9. package/dist/assets/{Extra-Cj5sfwza.js → Extra-D-71nFix.js} +1 -1
  10. package/dist/assets/{FilePreview-C0VC8REB.js → FilePreview-8FQKYkYM.js} +1 -1
  11. package/dist/assets/{History-D2T3HMV0.js → History-CI0IKBCT.js} +1 -1
  12. package/dist/assets/{IconPark.vue_vue_type_script_setup_true_lang-IyXC2YoK.js → IconPark.vue_vue_type_script_setup_true_lang-DHCP0oBC.js} +1 -1
  13. package/dist/assets/{ImagePreview-CAQ3njUm.js → ImagePreview-BID-4kFX.js} +1 -1
  14. package/dist/assets/{ImageWrapper-BuGClxW3.js → ImageWrapper-J09Vd3aW.js} +1 -1
  15. package/dist/assets/{Index-2tMs3V6d.js → Index-BQjHXYmE.js} +1 -1
  16. package/dist/assets/{Index-Mr4WT5pf.js → Index-BS6-CC3d.js} +1 -1
  17. package/dist/assets/{Index-BtJAt8_f.js → Index-Bf5O9LDS.js} +1 -1
  18. package/dist/assets/{Index-CyWWa2Xn.js → Index-BfMalOjb.js} +1 -1
  19. package/dist/assets/{Index-AwcSOcMc.js → Index-BhwVL3x4.js} +1 -1
  20. package/dist/assets/{Index-DN3ic69Z.js → Index-BmNsS978.js} +1 -1
  21. package/dist/assets/{Index-u7vtzBLX.js → Index-BpicSvEQ.js} +1 -1
  22. package/dist/assets/{Index-Vd2E_PxY.js → Index-BqX8Johs.js} +1 -1
  23. package/dist/assets/{Index-DryKtxlp.js → Index-C9pD7aCg.js} +1 -1
  24. package/dist/assets/{Index-CSr4Z6wn.js → Index-CI-BXcSh.js} +1 -1
  25. package/dist/assets/{Index-gYx-T-_w.js → Index-Cg4ZUVhh.js} +1 -1
  26. package/dist/assets/{Index-BvqlipP0.js → Index-Cr92DtzA.js} +1 -1
  27. package/dist/assets/{Index-pWlb0MXY.js → Index-Cv7J3Ye-.js} +1 -1
  28. package/dist/assets/{Index-BvS8sEfV.js → Index-Cx7kcFuO.js} +1 -1
  29. package/dist/assets/{Index-CmxadVTy.js → Index-CznZ8rbX.js} +1 -1
  30. package/dist/assets/{Index-BfRc8gup.js → Index-DEBuwX7a.js} +1 -1
  31. package/dist/assets/{Index-BG-CAEY3.js → Index-DFKPlxg7.js} +1 -1
  32. package/dist/assets/{Index-BQSlLPTx.js → Index-DKPhnKXX.js} +1 -1
  33. package/dist/assets/{Index-CMzpAO6m.js → Index-DNYHKHC1.js} +1 -1
  34. package/dist/assets/{Index-C0W473Ee.js → Index-DtSMo1Vh.js} +1 -1
  35. package/dist/assets/{Index-COkHz-qk.js → Index-EAvEmHbz.js} +1 -1
  36. package/dist/assets/{Index-CiKrRp1_.js → Index-oBw4wPZu.js} +1 -1
  37. package/dist/assets/{Index-DoZVRG8J.js → Index-r4n3zgQH.js} +1 -1
  38. package/dist/assets/{Index-DlCXocOF.js → Index-zKdQEm_3.js} +1 -1
  39. package/dist/assets/{Invitees-DKJq6AgV.js → Invitees-xtfk7PEx.js} +1 -1
  40. package/dist/assets/{List-DmUXmLPf.js → List-C0yUFjtR.js} +1 -1
  41. package/dist/assets/{List-FHz3TGpM.js → List-CAvGw-0h.js} +1 -1
  42. package/dist/assets/{List-Dou1jN7u.js → List-DCcIEA6m.js} +1 -1
  43. package/dist/assets/{Main-C4PbVoO5.js → Main-xk5uPe74.js} +1 -1
  44. package/dist/assets/{Navigator-DxRf4uZs.js → Navigator-BQlhmrkb.js} +3 -3
  45. package/dist/assets/{Navigator-DyNWu2Kc.css → Navigator-DHVStqnV.css} +1 -1
  46. package/dist/assets/{NoTasks-BEMX_TrD.js → NoTasks-COJAQuGK.js} +1 -1
  47. package/dist/assets/{NotFound-BCThQhwj.js → NotFound-waTf2F4N.js} +1 -1
  48. package/dist/assets/{OAuthCallback-B1c4jqGS.js → OAuthCallback-DpZC8fKk.js} +1 -1
  49. package/dist/assets/{Pagination-CMKXBbss.js → Pagination-LPTyBWbU.js} +1 -1
  50. package/dist/assets/{Status-DRqlD1pZ.js → Status-Blr6rj5w.js} +1 -1
  51. package/dist/assets/{Subscribe-CmmjrQs_.js → Subscribe-DVJayY3f.js} +1 -1
  52. package/dist/assets/{VideoPlayer-B61RdWmY.js → VideoPlayer-B27B1Ug2.js} +1 -1
  53. package/dist/assets/{_Uint8Array-IvXV4zMb.js → _Uint8Array-CI8yFZ43.js} +1 -1
  54. package/dist/assets/{_baseClone-fkn69WCu.js → _baseClone-I702BQXP.js} +1 -1
  55. package/dist/assets/{_baseIteratee-BdprhHej.js → _baseIteratee-BU-JT24z.js} +1 -1
  56. package/dist/assets/{_initCloneObject-CLMgxJ_1.js → _initCloneObject-DtaxLMaj.js} +1 -1
  57. package/dist/assets/{add-DoG_9gLA.js → add-DnlsS2ka.js} +1 -1
  58. package/dist/assets/{all-wallets-xwiGBuPv.js → all-wallets-MtxE6BLv.js} +1 -1
  59. package/dist/assets/{app-store-CIAjl3-_.js → app-store-DTecGWMj.js} +1 -1
  60. package/dist/assets/{apple-D28ejyoa.js → apple-CLkUFspW.js} +1 -1
  61. package/dist/assets/{arrow-bottom-6EiJGOgl.js → arrow-bottom-BRpsJeV5.js} +1 -1
  62. package/dist/assets/{arrow-bottom-circle-BFqYaOGo.js → arrow-bottom-circle-DpV1vrfs.js} +1 -1
  63. package/dist/assets/{arrow-left-D88nNGSy.js → arrow-left-DHZH4tyD.js} +1 -1
  64. package/dist/assets/{arrow-right-naZ893tR.js → arrow-right-tlMNfHBv.js} +1 -1
  65. package/dist/assets/{arrow-top-CSSxYwuG.js → arrow-top-DrBwhspQ.js} +1 -1
  66. package/dist/assets/{avatar-ByVyKa_O.js → avatar-yPfoVaqm.js} +1 -1
  67. package/dist/assets/{bank-Cog8CqCh.js → bank-CSAhfi2i.js} +1 -1
  68. package/dist/assets/{basic-bgr7Dr-g.js → basic-BQDMuSfm.js} +1 -1
  69. package/dist/assets/{browser-BzReUBjv.js → browser-B2P1lCFH.js} +1 -1
  70. package/dist/assets/{byokCredential-WhEwXvbm.js → byokCredential-DE1qzDd9.js} +1 -1
  71. package/dist/assets/{card-e1BZx1pL.js → card-C2aNLDAe.js} +1 -1
  72. package/dist/assets/{castArray-s_94RxeJ.js → castArray-mQ1tkxyC.js} +1 -1
  73. package/dist/assets/{chat-D_2RYLe-.js → chat-B11j-8KQ.js} +1 -1
  74. package/dist/assets/{checkmark-D7UKjgXa.js → checkmark-DMk3TaWM.js} +1 -1
  75. package/dist/assets/{checkmark-bold-Dtk8dJV-.js → checkmark-bold-INE9TErX.js} +1 -1
  76. package/dist/assets/{chevron-bottom-3Q0R3qLK.js → chevron-bottom-xDO8NQ9R.js} +1 -1
  77. package/dist/assets/{chevron-left-Cg0EModL.js → chevron-left-C7fyUOv2.js} +1 -1
  78. package/dist/assets/{chevron-right-CWeQyLvm.js → chevron-right-tmCO_gYJ.js} +1 -1
  79. package/dist/assets/{chevron-top-C7Udb9pe.js → chevron-top-BH5GFnck.js} +1 -1
  80. package/dist/assets/{chrome-store-CXXwigCb.js → chrome-store-9_n1tQOa.js} +1 -1
  81. package/dist/assets/{clock-D22dvlBL.js → clock-cZin1nOI.js} +1 -1
  82. package/dist/assets/{close-CgpiRKUj.js → close-dkQku9ea.js} +1 -1
  83. package/dist/assets/{coinPlaceholder-Uw86ctAb.js → coinPlaceholder-DuX6kR-6.js} +1 -1
  84. package/dist/assets/{compass-CklL2F-J.js → compass-CncojspH.js} +1 -1
  85. package/dist/assets/{copy-Cl3EyKEo.js → copy-CNVTpgOk.js} +1 -1
  86. package/dist/assets/{createTaskActions-CuIexWj5.js → createTaskActions-BN6-V8Nz.js} +1 -1
  87. package/dist/assets/{cursor-Dvl9k31b.js → cursor-C7U0M9kc.js} +1 -1
  88. package/dist/assets/{cursor-transparent-BwIIWFyQ.js → cursor-transparent-CDYSCF15.js} +1 -1
  89. package/dist/assets/{debounce-CxI-RAFA.js → debounce-Dh8RqSlB.js} +1 -1
  90. package/dist/assets/{desktop-Z9LvXzV1.js → desktop-CfihbARa.js} +1 -1
  91. package/dist/assets/{disconnect-D0iyXHBh.js → disconnect-CA2ykC_x.js} +1 -1
  92. package/dist/assets/{discord-PiyM3lBJ.js → discord-CcoV_FRK.js} +1 -1
  93. package/dist/assets/{distribution-MYJyvU49.js → distribution-Ct_ANw3m.js} +1 -1
  94. package/dist/assets/{dropdown-BqDjon4C.js → dropdown-DR031DEl.js} +1 -1
  95. package/dist/assets/{etherscan-podeg9_a.js → etherscan-BhuyS-zL.js} +1 -1
  96. package/dist/assets/{exclamation-triangle-COr8Mk7W.js → exclamation-triangle-DPLPdw6s.js} +1 -1
  97. package/dist/assets/{extension-BFlD6Twf.js → extension-B4J5H7n8.js} +1 -1
  98. package/dist/assets/{external-link-CP59-GMF.js → external-link-fjyUTYeb.js} +1 -1
  99. package/dist/assets/{facebook-D0Rv5Tsg.js → facebook-CiadvA8D.js} +1 -1
  100. package/dist/assets/{farcaster-BRLo7TvM.js → farcaster-_otB0AZo.js} +1 -1
  101. package/dist/assets/{filters-C-hrjAdN.js → filters-D_6dW1Wu.js} +1 -1
  102. package/dist/assets/{github-eiag-dBv.js → github-BYNMPfhl.js} +1 -1
  103. package/dist/assets/{google-CE3ljgps.js → google-DU3q9NFA.js} +1 -1
  104. package/dist/assets/{help-circle-Bw1H0G0N.js → help-circle-DKNUyWSv.js} +1 -1
  105. package/dist/assets/{id-DUb_LJR9.js → id-BxCPp99k.js} +1 -1
  106. package/dist/assets/{image-Dl6H4-eb.js → image-Bbd91L5U.js} +1 -1
  107. package/dist/assets/{index-i7LaIhEl.js → index-5Q_ntzEA.js} +1 -1
  108. package/dist/assets/{index-MJwFr5pt.js → index-8otrg1ss.js} +1 -1
  109. package/dist/assets/{index-C8l3aLfE.js → index-B1G8khkk.js} +1 -1
  110. package/dist/assets/{index-CCC7Iud0.js → index-B3Az8tWL.js} +1 -1
  111. package/dist/assets/{index-B-o8xgtM.js → index-B73VNuAm.js} +1 -1
  112. package/dist/assets/{index-DZsC4FHH.js → index-B7NNNKnx.js} +1 -1
  113. package/dist/assets/{index-CeOrxb2Y.js → index-BLdEuIsD.js} +1 -1
  114. package/dist/assets/{index-DBYDUmpq.js → index-BP5RfV51.js} +1 -1
  115. package/dist/assets/{index-BBzmV_zP.js → index-BaiEmqCP.js} +1 -1
  116. package/dist/assets/{index-DmC6RQUK.js → index-BeI_IAX0.js} +2 -2
  117. package/dist/assets/{index-B9PuvLP_.js → index-BjD_dt7j.js} +1 -1
  118. package/dist/assets/{index-DTemvQzS.js → index-BlNGp7j6.js} +1 -1
  119. package/dist/assets/{index-DE-d-bZ4.js → index-BrMwzvlw.js} +1 -1
  120. package/dist/assets/{index-C5vqfEbP.js → index-Btf_IFYC.js} +1 -1
  121. package/dist/assets/{index-Bul_oSf1.js → index-BttYw7zE.js} +1 -1
  122. package/dist/assets/{index-BzRqOf2X.js → index-BtuNRDJF.js} +1 -1
  123. package/dist/assets/{index-BJNhtEZy.js → index-C2-gUTzR.js} +1 -1
  124. package/dist/assets/{index-IFMiVE9t.js → index-C2wvnUt2.js} +1 -1
  125. package/dist/assets/{index-Bo6wjGF_.js → index-C46TTxpf.js} +1 -1
  126. package/dist/assets/{index-WPQMmAJ1.js → index-C9aSwap6.js} +1 -1
  127. package/dist/assets/{index-DCvXs_pG.js → index-CEdD59-J.js} +1 -1
  128. package/dist/assets/{index-CxRyuX-l.js → index-CRa1r1FF.js} +1 -1
  129. package/dist/assets/{index-DHPLfqr5.js → index-CUVDfnmG.js} +1 -1
  130. package/dist/assets/{index-Ckoh5GRm.js → index-CXk4y1bt.js} +1 -1
  131. package/dist/assets/{index-LamSeCLK.js → index-CaNU8q02.js} +3 -3
  132. package/dist/assets/{index-DYyqi1ll.js → index-CdR8PFV2.js} +1 -1
  133. package/dist/assets/{index-CATKuMBg.js → index-Cf8vZqdt.js} +1 -1
  134. package/dist/assets/{index-sE4mImkt.js → index-CgQGwr_3.js} +1 -1
  135. package/dist/assets/{index-CBckj94J.js → index-CjojA4Ra.js} +1 -1
  136. package/dist/assets/{index-p_ZlQnDf.js → index-Ck3CsOLd.js} +1 -1
  137. package/dist/assets/{index-BEHgvvhm.js → index-Ck6171A8.js} +1 -1
  138. package/dist/assets/{index-Dx0qtQPV.js → index-Cp5Vilw1.js} +1 -1
  139. package/dist/assets/{index-7bTsjUXw.js → index-CqcFDQ_G.js} +1 -1
  140. package/dist/assets/{index-n4JFW6cj.js → index-CtWa2yYi.js} +1 -1
  141. package/dist/assets/{index-BapI_KHp.js → index-D-6cfpdQ.js} +1 -1
  142. package/dist/assets/{index-C_zhaqiZ.js → index-D12rbAaK.js} +1 -1
  143. package/dist/assets/{index-B92A7jKd.js → index-D3Nml2aS.js} +1 -1
  144. package/dist/assets/{index-Bjro1OyI.js → index-D7h6kSUL.js} +1 -1
  145. package/dist/assets/{index-CSM8ZMaI.js → index-DJpzDqQ4.js} +1 -1
  146. package/dist/assets/{index-DVOrGEKk.js → index-DK4RusQa.js} +1 -1
  147. package/dist/assets/{index-CmCpa2Pb.js → index-DKJuDgcJ.js} +1 -1
  148. package/dist/assets/{index-ClFscUDS.js → index-DKwJd-cN.js} +1 -1
  149. package/dist/assets/{index-C4uNbx2T.js → index-DWuZyOZ-.js} +1 -1
  150. package/dist/assets/{index-CpxfFztz.js → index-DYODEtlg.js} +1 -1
  151. package/dist/assets/{index-bUpeOHOe.js → index-Dd8z6DSj.js} +1 -1
  152. package/dist/assets/{index-C9UO553z.js → index-DeIqVUBN.js} +1 -1
  153. package/dist/assets/{index-DFk5dZam.js → index-DigorHCU.js} +1 -1
  154. package/dist/assets/{index-B1p3ZFni.js → index-Dnwh_UKJ.js} +1 -1
  155. package/dist/assets/{index-BB1KS7Bg.js → index-DolbUkC_.js} +1 -1
  156. package/dist/assets/{index-auelhuar.js → index-Dw4DHrde.js} +1 -1
  157. package/dist/assets/{index-BGUUX3Ap.js → index-Eq5AqKg5.js} +1 -1
  158. package/dist/assets/{index-D1eSXPhw.js → index-GZSNU0N9.js} +5 -5
  159. package/dist/assets/{index-Co1WiwV-.js → index-MCEIpvm0.js} +1 -1
  160. package/dist/assets/{index-CSpEx6Y6.js → index-OifGQVvF.js} +1 -1
  161. package/dist/assets/{index-BKyujlle.js → index-SK2Q_jIx.js} +1 -1
  162. package/dist/assets/{index-3-aLpRUB.js → index-UEQ4C95J.js} +3 -3
  163. package/dist/assets/{index-BBMPk9By.js → index-bhWRuh9o.js} +1 -1
  164. package/dist/assets/{index-Bre-Bh8H.js → index-fxj2Ya9s.js} +1 -1
  165. package/dist/assets/{index-DXL7u9IT.js → index-sMArUCsN.js} +1 -1
  166. package/dist/assets/{index-BnpUnjLT.js → index-vIRnBdhG.js} +1 -1
  167. package/dist/assets/{index.browser.esm-CkvMjpT-.js → index.browser.esm-DknHpLjZ.js} +1 -1
  168. package/dist/assets/{index.es-D472pU9k.js → index.es-DCL3aYjw.js} +1 -1
  169. package/dist/assets/{info-BXeommwU.js → info-CfypWIYB.js} +1 -1
  170. package/dist/assets/{info-circle-Dv7-6-gM.js → info-circle-DWxelnV5.js} +1 -1
  171. package/dist/assets/{isEqual-Bo54SuCQ.js → isEqual-Djnx406d.js} +1 -1
  172. package/dist/assets/{isPlainObject-BbX8X0UC.js → isPlainObject-C0M2uYU9.js} +1 -1
  173. package/dist/assets/{lightbulb-DxTwm-Fw.js → lightbulb-CnEat2Mh.js} +1 -1
  174. package/dist/assets/{mail-KscoHE2n.js → mail-BcX2d7Ma.js} +1 -1
  175. package/dist/assets/{midjourney-CYC0ROOt.js → midjourney-C69CJAOf.js} +1 -1
  176. package/dist/assets/{mobile-KEEIdVhY.js → mobile-bhvaXp0M.js} +1 -1
  177. package/dist/assets/{more-CP85XB1r.js → more-itNtiPEs.js} +1 -1
  178. package/dist/assets/{network-placeholder-JQdTezS5.js → network-placeholder-D4d60HAN.js} +1 -1
  179. package/dist/assets/{nftPlaceholder-D5P6p_KW.js → nftPlaceholder-D4dIg165.js} +1 -1
  180. package/dist/assets/{off-BfM5YXfu.js → off-BoQa4bQQ.js} +1 -1
  181. package/dist/assets/{order-qfwKX42r.js → order-BLDMSc8e.js} +1 -1
  182. package/dist/assets/{pagination-DXmJ4BvP.js → pagination-wUSdmOzL.js} +1 -1
  183. package/dist/assets/{play-store-bbBQLpaJ.js → play-store-QEHStvxm.js} +1 -1
  184. package/dist/assets/{plus-BsSSdbAO.js → plus-hzhxvCID.js} +1 -1
  185. package/dist/assets/{price-BXhkc4WG.js → price-CabnHqB_.js} +1 -1
  186. package/dist/assets/{producer-JRpVQ4r4.js → producer-DTWhlOOc.js} +1 -1
  187. package/dist/assets/{qr-code-B-XGx_cf.js → qr-code-fd3A-so8.js} +1 -1
  188. package/dist/assets/{recycle-horizontal-O9UlQQVP.js → recycle-horizontal-BPlQktI5.js} +1 -1
  189. package/dist/assets/{refresh-CPGWQ9XX.js → refresh-BBUZq0rj.js} +1 -1
  190. package/dist/assets/{reown-logo-Q9RB7LUF.js → reown-logo-EtMlHxPn.js} +1 -1
  191. package/dist/assets/{search-BT6Tzp3K.js → search-DpoXHlBs.js} +1 -1
  192. package/dist/assets/{secp256k1-wEgr-Pwb.js → secp256k1-BLBVoYYl.js} +1 -1
  193. package/dist/assets/{secp256k1-BN7Ig0vQ.js → secp256k1-tLAc6PuD.js} +1 -1
  194. package/dist/assets/{seedream-BEbuV2yj.js → seedream-Co0VK0Ot.js} +1 -1
  195. package/dist/assets/{send-m8U4mrt7.js → send-CcIyE-F4.js} +1 -1
  196. package/dist/assets/{service-PiPj-3s4.js → service-BTTv5kGB.js} +1 -1
  197. package/dist/assets/{solana-wallets-BwpCXmYl.js → solana-wallets-Cr7geZHD.js} +2 -2
  198. package/dist/assets/{solana-wallets-vue-BwVksjPT.js → solana-wallets-vue-BB0_ubk2.js} +1 -1
  199. package/dist/assets/{suno-CDXwl-i9.js → suno-RzNRcSnE.js} +1 -1
  200. package/dist/assets/{swapHorizontal-y3E8oNkG.js → swapHorizontal-Cd2y4G-i.js} +1 -1
  201. package/dist/assets/{swapHorizontalBold-BQvMpfRw.js → swapHorizontalBold-SVQPX73l.js} +1 -1
  202. package/dist/assets/{swapHorizontalMedium-DHQFhf1P.js → swapHorizontalMedium-BaojsUtd.js} +1 -1
  203. package/dist/assets/{swapHorizontalRoundedBold-26jUkMzB.js → swapHorizontalRoundedBold-Br4zZFe2.js} +1 -1
  204. package/dist/assets/{swapVertical-Bf4y7w6R.js → swapVertical-CiwHgJcc.js} +1 -1
  205. package/dist/assets/{telegram-CLdodaf5.js → telegram-BqJh1ayX.js} +1 -1
  206. package/dist/assets/{three-dots-CU80YLIj.js → three-dots-DCznbj2f.js} +1 -1
  207. package/dist/assets/{twitch-DdL8LYWU.js → twitch-C-dpEZna.js} +1 -1
  208. package/dist/assets/{twitterIcon-CCVVqX9u.js → twitterIcon-BpiWaGTT.js} +1 -1
  209. package/dist/assets/{typescript-COBnNpmt.js → typescript-tDSPj8Z9.js} +1 -1
  210. package/dist/assets/{use-form-item-BIjUa6ZN.js → use-form-item-CLq3ss4x.js} +1 -1
  211. package/dist/assets/validator-CmOZ_UpT.js +1 -0
  212. package/dist/assets/{verify-CBaLfUaY.js → verify-CwL2WmQA.js} +1 -1
  213. package/dist/assets/{verify-filled-COFrHOek.js → verify-filled-Delosfd0.js} +1 -1
  214. package/dist/assets/{w3m-modal-DuUpf9Cd.js → w3m-modal-7WkfMU8q.js} +1 -1
  215. package/dist/assets/{wallet-pyENbNQv.js → wallet-CGJYue9A.js} +1 -1
  216. package/dist/assets/{wallet-placeholder-D29gZQzE.js → wallet-placeholder-Bk8smVwV.js} +1 -1
  217. package/dist/assets/{walletconnect-ByCHx2gY.js → walletconnect-C3APs1Ej.js} +1 -1
  218. package/dist/assets/{warning-circle-DjpPtnE5.js → warning-circle-Cb1zI58D.js} +1 -1
  219. package/dist/assets/{web-E8Xgrksd.js → web-cssymKTe.js} +1 -1
  220. package/dist/assets/{web-DA7bXjuB.js → web-wzlpY75j.js} +1 -1
  221. package/dist/assets/{x-C2PbEpkT.js → x-DIZ3Jpjd.js} +1 -1
  222. package/dist/index.html +1 -1
  223. package/package.json +1 -1
  224. package/dist/assets/validator-DvgC3znr.js +0 -1
@@ -1 +1 @@
1
- import{F as T}from"./index.es-D472pU9k.js";import{E as q}from"./index-Ckoh5GRm.js";import{E as W}from"./index-BJNhtEZy.js";import{d as k,H as l,E as c,z as C,C as a,y as g,D as s,q as n,F as o,I as u,O as V,N,x as A,J as p,M as K,Q as O}from"./vendor-vue-NSDaktjZ.js";import{G as y,bj as H,cL as Q,cM as z,cN as P,cO as J,cP as S,cQ as M,cR as j,cS as D,co as X,aT as Y,S as F,cp as Z}from"./index-3-aLpRUB.js";import{I as U,S as ee,l as te}from"./pagination-DXmJ4BvP.js";import{E as ae}from"./index-MJwFr5pt.js";import{p as oe}from"./pasteUploadMixin-BurWbGNQ.js";import{I as x}from"./ImagePreview-CAQ3njUm.js";import{E as ne}from"./index-CmCpa2Pb.js";import{E as R}from"./index-B-o8xgtM.js";import{E as B,a as G}from"./index-B92A7jKd.js";import{C as se}from"./Consumption-BR_5gQEP.js";import{a as le}from"./price-BXhkc4WG.js";import{b as re}from"./errorCode-Cqj9Td_Z.js";import{C as ie}from"./CopyToClipboard-DsvxywqB.js";import{I as ce}from"./ImageWrapper-BuGClxW3.js";import{E as ue}from"./index-CpxfFztz.js";import{E as me}from"./index-CeOrxb2Y.js";import{E as de}from"./index-CCC7Iud0.js";import{B as pe}from"./BotPlaceholder-CypCpXTJ.js";import{N as fe}from"./NoTasks-BEMX_TrD.js";import"./use-form-item-BIjUa6ZN.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./typescript-COBnNpmt.js";import"./index-Bre-Bh8H.js";import"./index-n4JFW6cj.js";import"./index-CxRyuX-l.js";import"./_baseClone-fkn69WCu.js";import"./_Uint8Array-IvXV4zMb.js";import"./_initCloneObject-CLMgxJ_1.js";import"./isEqual-Bo54SuCQ.js";import"./index-CSM8ZMaI.js";import"./strings-beZM2Y-f.js";import"./castArray-s_94RxeJ.js";import"./debounce-CxI-RAFA.js";import"./_baseIteratee-BdprhHej.js";import"./index-7bTsjUXw.js";import"./index-C5vqfEbP.js";const he=k({name:"LayoutNanobanana",components:{ElDrawer:W,ElButton:q,FontAwesomeIcon:T},data(){return{drawer:!1}}}),_e={class:"main flex flex-row flex-1"},ge={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},be={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function $e(e,t,$,i,b,f){const h=s("font-awesome-icon"),_=s("el-button"),m=s("el-drawer");return n(),l("div",_e,[c("div",ge,[C(e.$slots,"config",{},void 0,!0)]),c("div",be,[C(e.$slots,"result",{},void 0,!0)]),a(_,{circle:"",class:"menu",onClick:t[0]||(t[0]=d=>e.drawer=!0)},{default:g(()=>[a(h,{icon:"fa-solid fa-magic"})]),_:1}),a(m,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=d=>e.drawer=d),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:g(()=>[C(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ve=y(he,[["render",$e],["__scopeId","data-v-977284aa"]]),ke="",ye=k({name:"PromptInput",components:{ElInput:ae,InfoIcon:U},computed:{prompt:{get(){return this.$store.state.nanobanana?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=ke)}}),we={class:"field"},Ve={class:"box"},Ae={class:"title font-bold"};function Ne(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-input");return n(),l("div",we,[c("div",Ve,[c("h2",Ae,o(e.$t("nanobanana.name.prompt")),1),a(h,{content:e.$t("nanobanana.description.prompt"),class:"info"},null,8,["content"])]),a(_,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=m=>e.prompt=m),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("nanobanana.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ee=y(ye,[["render",Ne],["__scopeId","data-v-2331e197"]]),Re=k({name:"ImageUrlsInput",components:{ElUpload:ne,ElButton:q,InfoIcon:U,ImagePreview:x,FontAwesomeIcon:T},mixins:[oe],data(){return{fileList:[],uploadUrl:H()+"/api/v1/files/",suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.nanobanana?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const i=(this.fileList||[]).filter(b=>!b?.response?.file_url);this.fileList=i.length?i:[];return}const t=[];e.forEach(i=>{const b=this.fileList.find(f=>f?.response?.file_url===i||f?.url===i);b?t.push(b):t.push({name:i.split("/").pop()||i,url:i,status:"success",percentage:100,response:{file_url:i}})}),(this.fileList||[]).filter(i=>!i?.response?.file_url).forEach(i=>{t.some(f=>f===i||f?.url===i?.url||f?.response?.file_url===i?.response?.file_url)||t.push(i)}),this.fileList=t}}},mounted(){},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url=="string"&&e.url.startsWith("blob:"))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImageUrls()},onExceed(){R.warning(this.$t("nanobanana.message.uploadImageExceed"))},onError(){R.error(this.$t("nanobanana.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,image_urls:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImageUrls()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url=="string"&&t.url.startsWith("blob:"))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImageUrls()}}}),Ie={class:"field flex items-center justify-between"},Le={class:"title font-bold text-[14px] mb-[10px]"},Se={class:"upload-wrapper flex flex-col items-start gap-[8px]"},Te={class:"controls flex items-center"},qe={class:"file-list flex flex-wrap gap-[10px]"};function Oe(e,t,$,i,b,f){const h=s("font-awesome-icon"),_=s("el-button"),m=s("el-upload"),d=s("info-icon"),w=s("image-preview");return n(),l(V,null,[c("div",Ie,[c("h2",Le,o(e.$t("nanobanana.name.imageUrls")),1),c("div",Se,[c("div",Te,[a(m,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=r=>e.fileList=r),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value",limit:5,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:g(()=>[a(_,{size:"small",type:"primary",round:""},{default:g(()=>[a(h,{icon:"fa-solid fa-upload",class:"mr-1"}),u(" "+o(e.$t("nanobanana.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"]),a(d,{content:e.$t("nanobanana.description.imageUrls"),class:"ml-2"},null,8,["content"])])])]),c("div",qe,[(n(!0),l(V,null,N(e.fileList,(r,v)=>(n(),A(w,{key:r.uid||r?.response?.file_url||r.url||v,url:r.url||r?.response?.file_url,name:r.name,percentage:r.percentage,onRemove:E=>e.onRemovePreview(v,r)},null,8,["url","name","percentage","onRemove"]))),128))])],64)}const Ue=y(Re,[["render",Oe]]),Ce=k({name:"AspectRatioSelector",components:{ElSelect:G,ElOption:B},data(){return{options:["1:1","3:2","2:3","16:9","9:16","4:3","3:4"]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.aspect_ratio},set(e){console.debug("set aspect_ratio",e);const t={...this.$store.state.nanobanana?.config||{}};e?t.aspect_ratio=e:delete t.aspect_ratio,this.$store.commit("nanobanana/setConfig",t)}}}}),Pe={class:"field"},Be={class:"title font-bold"};function Ge(e,t,$,i,b,f){const h=s("el-option"),_=s("el-select");return n(),l("div",Pe,[c("h2",Be,o(e.$t("nanobanana.name.aspectRatio")),1),a(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",clearable:"",placeholder:e.$t("nanobanana.placeholder.select")},{default:g(()=>[(n(!0),l(V,null,N(e.options,m=>(n(),A(h,{key:m,label:m,value:m},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Me=y(Ce,[["render",Ge],["__scopeId","data-v-67f08a08"]]),je=k({name:"NanobananaModelSelector",components:{ElSelect:G,ElOption:B,InfoIcon:U},data(){return{options:[{value:z,label:this.$t("nanobanana.model.nanoBanana")},{value:P,label:this.$t("nanobanana.model.nanoBananaPro")},{value:J,label:this.$t("nanobanana.model.nanoBanana2")}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.model},set(e){this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,model:e})}},modelDescription(){return this.$t("nanobanana.description.model")}},mounted(){this.value||(this.value=Q)}}),De={class:"field"},Fe={class:"label"},ze={class:"box"},xe={class:"title font-bold"};function We(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-option"),m=s("el-select");return n(),l("div",De,[c("div",Fe,[c("div",ze,[c("h2",xe,o(e.$t("nanobanana.name.model")),1),a(h,{content:e.modelDescription,class:"info"},null,8,["content"])])]),a(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=d=>e.value=d),class:"value",placeholder:e.$t("nanobanana.placeholder.select")},{default:g(()=>[(n(!0),l(V,null,N(e.options,d=>(n(),A(_,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ke=y(je,[["render",We],["__scopeId","data-v-94304d73"]]),He=k({name:"NanobananaResolutionSelector",components:{ElSelect:G,ElOption:B,InfoIcon:U},data(){return{cachedResolution:S,options:[{value:M,label:M},{value:j,label:j},{value:D,label:D}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.resolution},set(e){this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:e})}},isProModel(){return this.$store.state.nanobanana?.config?.model!==z}},watch:{value(e){this.isProModel&&e&&(this.cachedResolution=e)},isProModel(e){e?this.value||(this.value=this.cachedResolution||S):(this.value&&(this.cachedResolution=this.value),this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:void 0}))}},mounted(){this.isProModel&&!this.value&&(this.value=S),!this.isProModel&&this.value&&(this.cachedResolution=this.value,this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:void 0}))}}),Qe={class:"field"},Je={class:"label"},Xe={class:"box"},Ye={class:"title font-bold"};function Ze(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-option"),m=s("el-select");return n(),l("div",Qe,[c("div",Je,[c("div",Xe,[c("h2",Ye,o(e.$t("nanobanana.name.resolution")),1),a(h,{content:e.$t("nanobanana.description.resolutionProOnly"),class:"info"},null,8,["content"])])]),a(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=d=>e.value=d),class:"value",placeholder:e.$t("nanobanana.placeholder.select"),disabled:!e.isProModel},{default:g(()=>[(n(!0),l(V,null,N(e.options,d=>(n(),A(_,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","disabled"])])}const et=y(He,[["render",Ze],["__scopeId","data-v-fd5ab393"]]),tt=k({name:"ConfigPanel",components:{ElButton:q,FontAwesomeIcon:T,PromptInput:Ee,Consumption:se,ImageUrlsInput:Ue,AspectRatioSelector:Me,ModelSelector:Ke,ResolutionSelector:et},emits:["generate"],computed:{config(){return this.$store.state.nanobanana?.config},consumption(){const e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;return le({...e,action:t?"edit":"generate"},this.service?.cost)},service(){return this.$store.state.nanobanana?.service}},methods:{onGenerate(){this.$emit("generate")}}}),at={class:"flex flex-col h-full"},ot={class:"flex-1 overflow-y-auto p-5"},nt={class:"flex flex-col items-center justify-center px-5 pb-5"};function st(e,t,$,i,b,f){const h=s("model-selector"),_=s("resolution-selector"),m=s("prompt-input"),d=s("aspect-ratio-selector"),w=s("image-urls-input"),r=s("consumption"),v=s("font-awesome-icon"),E=s("el-button");return n(),l("div",at,[c("div",ot,[a(h,{class:"mb-4"}),a(_,{class:"mb-4"}),a(m,{class:"mb-4"}),a(d,{class:"mb-4"}),a(w,{class:"mb-4"})]),c("div",nt,[a(r,{value:e.consumption,service:e.service},null,8,["value","service"]),a(E,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:g(()=>[a(v,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("nanobanana.button.generate")),1)]),_:1},8,["onClick"])])])}const lt=y(tt,[["render",st]]),rt=k({name:"TaskPreview",components:{ElImage:de,CopyToClipboard:ie,FontAwesomeIcon:T,ElAlert:me,ImageWrapper:ce,ElButton:q,ElTooltip:ue,ImagePreview:x},props:{modelValue:{type:Object,required:!0}},computed:{images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.nanobanana?.config||{}};delete t.action,t.image_urls=[e],this.$store.commit("nanobanana/setConfig",t)}}}),it={class:"preview"},ct={class:"left"},ut={class:"main"},mt={class:"bot"},dt={class:"datetime"},pt={class:"info"},ft={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},ht={key:1,class:"prompt mt-2"},_t={key:0},gt={key:0,class:O({content:!0,failed:!0})},bt={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},$t={class:O({operations:!0,"mt-2":!0,"mb-2":!0})},vt={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-2"},yt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},wt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},At={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Nt={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Et={key:1,class:O({content:!0})},Rt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},It={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Lt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},St={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Tt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ot={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ut={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ct={key:2,class:O({content:!0})},Pt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Mt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},jt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"};function Dt(e,t,$,i,b,f){const h=s("el-image"),_=s("image-preview"),m=s("image-wrapper"),d=s("el-button"),w=s("el-tooltip"),r=s("font-awesome-icon"),v=s("copy-to-clipboard"),E=s("el-alert");return n(),l("div",it,[c("div",ct,[a(h,{src:"https://cdn.acedata.cloud/859plc.jpg",class:"avatar"})]),c("div",ut,[c("div",mt,[u(o(e.$t("nanobanana.name.nanobananaBot"))+" ",1),c("span",dt,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),c("div",pt,[e.modelValue?.request?.image_urls&&e.modelValue?.request?.image_urls.length>0?(n(),l("div",ft,[(n(!0),l(V,null,N(e.modelValue?.request?.image_urls,(I,L)=>(n(),A(_,{key:L,url:I,name:`image-${L+1}`,closable:!1},null,8,["url","name"]))),128))])):p("",!0),e.modelValue?.request?.prompt?(n(),l("p",ht,[u(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?p("",!0):(n(),l("span",_t," - ("+o(e.$t("nanobanana.status.pending"))+") ",1))])):p("",!0)]),e.modelValue?.response?.success===!0?(n(),l("div",gt,[c("div",bt,[(n(!0),l(V,null,N(e.images,(I,L)=>(n(),A(m,{key:L,src:I?.image_url,"raw-src":I?.image_url},null,8,["src","raw-src"]))),128))]),c("div",$t,[a(w,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:g(()=>[a(d,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=K(I=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:g(()=>[u(o(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),a(E,{closable:!1,class:"mt-2 success"},{default:g(()=>[e.modelValue?.request?.model?(n(),l("p",vt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",kt,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",yt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",wt,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",Vt,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(n(),l("p",At,[a(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):p("",!0),e.modelValue?.response?.trace_id?(n(),l("p",Nt,[a(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),a(v,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):p("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(n(),l("div",Et,[a(E,{closable:!1,class:"failure"},{template:g(()=>[a(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failure")),1)]),default:g(()=>[e.modelValue?.request?.model?(n(),l("p",Rt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",It,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",Lt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",St,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",Tt,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),c("p",qt,[a(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),a(v,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(n(),l("p",Ot,[a(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):p("",!0),e.modelValue?.response?.trace_id?(n(),l("p",Ut,[a(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),a(v,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):p("",!0)]),_:1})])):(n(),l("div",Ct,[a(E,{closable:!1,class:"info"},{template:g(()=>[a(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failure")),1)]),default:g(()=>[e.modelValue?.request?.model?(n(),l("p",Pt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",Bt,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",Gt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",Mt,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",jt,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const Ft=y(rt,[["render",Dt],["__scopeId","data-v-8d5f4fff"]]),zt=k({name:"RecentPanel",components:{TaskPreview:Ft,BotPlaceholder:pe,NoTasks:fe,ScrollList:ee},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.nanobanana?.tasks,items:this.$store.state.nanobanana?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),xt={key:0},Wt={key:2,class:"w-full h-full flex items-center justify-center"};function Kt(e,t,$,i,b,f){const h=s("bot-placeholder"),_=s("task-preview"),m=s("scroll-list"),d=s("no-tasks");return n(),l(V,null,[e.tasks?.items===void 0?(n(),l("div",xt,[a(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),A(m,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=w=>e.$emit("reach-top"))},{default:g(()=>[(n(!0),l(V,null,N(e.tasks?.items,w=>(n(),A(_,{key:w.id,"model-value":w},null,8,["model-value"]))),128))]),_:1},8,["loading"])):p("",!0),e.tasks?.items?.length===0?(n(),l("div",Wt,[a(d)])):p("",!0)],64)}const Ht=y(zt,[["render",Kt]]),Qt=Z("nanobanana"),Jt=k({name:"NanobananaIndex",components:{ConfigPanel:lt,Layout:ve,RecentPanel:Ht},inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.nanobanana?.status?.getApplications===F.Request},tasksLoading(){return this.$store.state.nanobanana?.status?.getTasks===F.Request},credential(){return this.$store.state.nanobanana?.credential},config(){return this.$store.state.nanobanana?.config},application(){return this.$store.state.nanobanana?.application},tasks(){return this.$store.state.nanobanana?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await te({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("nanobanana/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("nanobanana/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=20,createdAtMin:$,createdAtMax:i}=e||{};console.debug("limit",t,"createdAtMin",$,"createdAtMax",i),await this.$store.dispatch("nanobanana/getTasks",{limit:t,createdAtMin:$,createdAtMax:i})},async onGenerate(){const e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;delete e.action,!t&&"image_urls"in e&&delete e.image_urls,e?.aspect_ratio||delete e.aspect_ratio,e?.model!==P&&"resolution"in e&&delete e.resolution,e?.model===P&&!e?.resolution&&(e.resolution=S);const $={...e,action:t?"edit":"generate",callback_url:Qt},i=this.credential?.token;if(!i){console.error("no token specified");return}R.info(this.$t("nanobanana.message.startingTask")),X("nanobanana",Y.generate($,{token:i})).then(()=>{R.success(this.$t("nanobanana.message.startTaskSuccess"))}).catch(b=>{const f=b?.response?.data;f?.error?.code===re?R.error(this.$t("nanobanana.message.usedUp")):R.error(this.$t("nanobanana.message.startTaskFailed")+(f?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Xt(e,t,$,i,b,f){const h=s("config-panel"),_=s("recent-panel"),m=s("layout");return n(),A(m,null,{config:g(()=>[a(h,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:g(()=>[a(_,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Ma=y(Jt,[["render",Xt]]);export{Ma as default};
1
+ import{F as T}from"./index.es-DCL3aYjw.js";import{E as q}from"./index-CXk4y1bt.js";import{E as W}from"./index-C2-gUTzR.js";import{d as k,H as l,E as c,z as C,C as a,y as g,D as s,q as n,F as o,I as u,O as V,N,x as A,J as p,M as K,Q as O}from"./vendor-vue-NSDaktjZ.js";import{G as y,bj as H,cL as Q,cM as z,cN as P,cO as J,cP as S,cQ as M,cR as j,cS as D,co as X,aT as Y,S as F,cp as Z}from"./index-UEQ4C95J.js";import{I as U,S as ee,l as te}from"./pagination-wUSdmOzL.js";import{E as ae}from"./index-8otrg1ss.js";import{p as oe}from"./pasteUploadMixin-BurWbGNQ.js";import{I as x}from"./ImagePreview-BID-4kFX.js";import{E as ne}from"./index-DKJuDgcJ.js";import{E as R}from"./index-B73VNuAm.js";import{E as B,a as G}from"./index-D3Nml2aS.js";import{C as se}from"./Consumption-DVBEzfCm.js";import{a as le}from"./price-CabnHqB_.js";import{b as re}from"./errorCode-Cqj9Td_Z.js";import{C as ie}from"./CopyToClipboard-C2THHT8U.js";import{I as ce}from"./ImageWrapper-J09Vd3aW.js";import{E as ue}from"./index-DYODEtlg.js";import{E as me}from"./index-BLdEuIsD.js";import{E as de}from"./index-B3Az8tWL.js";import{B as pe}from"./BotPlaceholder-BeyeAf9f.js";import{N as fe}from"./NoTasks-COJAQuGK.js";import"./use-form-item-CLq3ss4x.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./typescript-tDSPj8Z9.js";import"./index-fxj2Ya9s.js";import"./index-CtWa2yYi.js";import"./index-CRa1r1FF.js";import"./_baseClone-I702BQXP.js";import"./_Uint8Array-CI8yFZ43.js";import"./_initCloneObject-DtaxLMaj.js";import"./isEqual-Djnx406d.js";import"./index-DJpzDqQ4.js";import"./strings-beZM2Y-f.js";import"./castArray-mQ1tkxyC.js";import"./debounce-Dh8RqSlB.js";import"./_baseIteratee-BU-JT24z.js";import"./index-CqcFDQ_G.js";import"./index-Btf_IFYC.js";const he=k({name:"LayoutNanobanana",components:{ElDrawer:W,ElButton:q,FontAwesomeIcon:T},data(){return{drawer:!1}}}),_e={class:"main flex flex-row flex-1"},ge={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},be={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function $e(e,t,$,i,b,f){const h=s("font-awesome-icon"),_=s("el-button"),m=s("el-drawer");return n(),l("div",_e,[c("div",ge,[C(e.$slots,"config",{},void 0,!0)]),c("div",be,[C(e.$slots,"result",{},void 0,!0)]),a(_,{circle:"",class:"menu",onClick:t[0]||(t[0]=d=>e.drawer=!0)},{default:g(()=>[a(h,{icon:"fa-solid fa-magic"})]),_:1}),a(m,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=d=>e.drawer=d),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:g(()=>[C(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ve=y(he,[["render",$e],["__scopeId","data-v-977284aa"]]),ke="",ye=k({name:"PromptInput",components:{ElInput:ae,InfoIcon:U},computed:{prompt:{get(){return this.$store.state.nanobanana?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=ke)}}),we={class:"field"},Ve={class:"box"},Ae={class:"title font-bold"};function Ne(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-input");return n(),l("div",we,[c("div",Ve,[c("h2",Ae,o(e.$t("nanobanana.name.prompt")),1),a(h,{content:e.$t("nanobanana.description.prompt"),class:"info"},null,8,["content"])]),a(_,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=m=>e.prompt=m),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("nanobanana.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ee=y(ye,[["render",Ne],["__scopeId","data-v-2331e197"]]),Re=k({name:"ImageUrlsInput",components:{ElUpload:ne,ElButton:q,InfoIcon:U,ImagePreview:x,FontAwesomeIcon:T},mixins:[oe],data(){return{fileList:[],uploadUrl:H()+"/api/v1/files/",suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.nanobanana?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const i=(this.fileList||[]).filter(b=>!b?.response?.file_url);this.fileList=i.length?i:[];return}const t=[];e.forEach(i=>{const b=this.fileList.find(f=>f?.response?.file_url===i||f?.url===i);b?t.push(b):t.push({name:i.split("/").pop()||i,url:i,status:"success",percentage:100,response:{file_url:i}})}),(this.fileList||[]).filter(i=>!i?.response?.file_url).forEach(i=>{t.some(f=>f===i||f?.url===i?.url||f?.response?.file_url===i?.response?.file_url)||t.push(i)}),this.fileList=t}}},mounted(){},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url=="string"&&e.url.startsWith("blob:"))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImageUrls()},onExceed(){R.warning(this.$t("nanobanana.message.uploadImageExceed"))},onError(){R.error(this.$t("nanobanana.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,image_urls:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImageUrls()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url=="string"&&t.url.startsWith("blob:"))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImageUrls()}}}),Ie={class:"field flex items-center justify-between"},Le={class:"title font-bold text-[14px] mb-[10px]"},Se={class:"upload-wrapper flex flex-col items-start gap-[8px]"},Te={class:"controls flex items-center"},qe={class:"file-list flex flex-wrap gap-[10px]"};function Oe(e,t,$,i,b,f){const h=s("font-awesome-icon"),_=s("el-button"),m=s("el-upload"),d=s("info-icon"),w=s("image-preview");return n(),l(V,null,[c("div",Ie,[c("h2",Le,o(e.$t("nanobanana.name.imageUrls")),1),c("div",Se,[c("div",Te,[a(m,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=r=>e.fileList=r),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value",limit:5,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:g(()=>[a(_,{size:"small",type:"primary",round:""},{default:g(()=>[a(h,{icon:"fa-solid fa-upload",class:"mr-1"}),u(" "+o(e.$t("nanobanana.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"]),a(d,{content:e.$t("nanobanana.description.imageUrls"),class:"ml-2"},null,8,["content"])])])]),c("div",qe,[(n(!0),l(V,null,N(e.fileList,(r,v)=>(n(),A(w,{key:r.uid||r?.response?.file_url||r.url||v,url:r.url||r?.response?.file_url,name:r.name,percentage:r.percentage,onRemove:E=>e.onRemovePreview(v,r)},null,8,["url","name","percentage","onRemove"]))),128))])],64)}const Ue=y(Re,[["render",Oe]]),Ce=k({name:"AspectRatioSelector",components:{ElSelect:G,ElOption:B},data(){return{options:["1:1","3:2","2:3","16:9","9:16","4:3","3:4"]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.aspect_ratio},set(e){console.debug("set aspect_ratio",e);const t={...this.$store.state.nanobanana?.config||{}};e?t.aspect_ratio=e:delete t.aspect_ratio,this.$store.commit("nanobanana/setConfig",t)}}}}),Pe={class:"field"},Be={class:"title font-bold"};function Ge(e,t,$,i,b,f){const h=s("el-option"),_=s("el-select");return n(),l("div",Pe,[c("h2",Be,o(e.$t("nanobanana.name.aspectRatio")),1),a(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",clearable:"",placeholder:e.$t("nanobanana.placeholder.select")},{default:g(()=>[(n(!0),l(V,null,N(e.options,m=>(n(),A(h,{key:m,label:m,value:m},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Me=y(Ce,[["render",Ge],["__scopeId","data-v-67f08a08"]]),je=k({name:"NanobananaModelSelector",components:{ElSelect:G,ElOption:B,InfoIcon:U},data(){return{options:[{value:z,label:this.$t("nanobanana.model.nanoBanana")},{value:P,label:this.$t("nanobanana.model.nanoBananaPro")},{value:J,label:this.$t("nanobanana.model.nanoBanana2")}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.model},set(e){this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,model:e})}},modelDescription(){return this.$t("nanobanana.description.model")}},mounted(){this.value||(this.value=Q)}}),De={class:"field"},Fe={class:"label"},ze={class:"box"},xe={class:"title font-bold"};function We(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-option"),m=s("el-select");return n(),l("div",De,[c("div",Fe,[c("div",ze,[c("h2",xe,o(e.$t("nanobanana.name.model")),1),a(h,{content:e.modelDescription,class:"info"},null,8,["content"])])]),a(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=d=>e.value=d),class:"value",placeholder:e.$t("nanobanana.placeholder.select")},{default:g(()=>[(n(!0),l(V,null,N(e.options,d=>(n(),A(_,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ke=y(je,[["render",We],["__scopeId","data-v-94304d73"]]),He=k({name:"NanobananaResolutionSelector",components:{ElSelect:G,ElOption:B,InfoIcon:U},data(){return{cachedResolution:S,options:[{value:M,label:M},{value:j,label:j},{value:D,label:D}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.resolution},set(e){this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:e})}},isProModel(){return this.$store.state.nanobanana?.config?.model!==z}},watch:{value(e){this.isProModel&&e&&(this.cachedResolution=e)},isProModel(e){e?this.value||(this.value=this.cachedResolution||S):(this.value&&(this.cachedResolution=this.value),this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:void 0}))}},mounted(){this.isProModel&&!this.value&&(this.value=S),!this.isProModel&&this.value&&(this.cachedResolution=this.value,this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:void 0}))}}),Qe={class:"field"},Je={class:"label"},Xe={class:"box"},Ye={class:"title font-bold"};function Ze(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-option"),m=s("el-select");return n(),l("div",Qe,[c("div",Je,[c("div",Xe,[c("h2",Ye,o(e.$t("nanobanana.name.resolution")),1),a(h,{content:e.$t("nanobanana.description.resolutionProOnly"),class:"info"},null,8,["content"])])]),a(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=d=>e.value=d),class:"value",placeholder:e.$t("nanobanana.placeholder.select"),disabled:!e.isProModel},{default:g(()=>[(n(!0),l(V,null,N(e.options,d=>(n(),A(_,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","disabled"])])}const et=y(He,[["render",Ze],["__scopeId","data-v-fd5ab393"]]),tt=k({name:"ConfigPanel",components:{ElButton:q,FontAwesomeIcon:T,PromptInput:Ee,Consumption:se,ImageUrlsInput:Ue,AspectRatioSelector:Me,ModelSelector:Ke,ResolutionSelector:et},emits:["generate"],computed:{config(){return this.$store.state.nanobanana?.config},consumption(){const e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;return le({...e,action:t?"edit":"generate"},this.service?.cost)},service(){return this.$store.state.nanobanana?.service}},methods:{onGenerate(){this.$emit("generate")}}}),at={class:"flex flex-col h-full"},ot={class:"flex-1 overflow-y-auto p-5"},nt={class:"flex flex-col items-center justify-center px-5 pb-5"};function st(e,t,$,i,b,f){const h=s("model-selector"),_=s("resolution-selector"),m=s("prompt-input"),d=s("aspect-ratio-selector"),w=s("image-urls-input"),r=s("consumption"),v=s("font-awesome-icon"),E=s("el-button");return n(),l("div",at,[c("div",ot,[a(h,{class:"mb-4"}),a(_,{class:"mb-4"}),a(m,{class:"mb-4"}),a(d,{class:"mb-4"}),a(w,{class:"mb-4"})]),c("div",nt,[a(r,{value:e.consumption,service:e.service},null,8,["value","service"]),a(E,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:g(()=>[a(v,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("nanobanana.button.generate")),1)]),_:1},8,["onClick"])])])}const lt=y(tt,[["render",st]]),rt=k({name:"TaskPreview",components:{ElImage:de,CopyToClipboard:ie,FontAwesomeIcon:T,ElAlert:me,ImageWrapper:ce,ElButton:q,ElTooltip:ue,ImagePreview:x},props:{modelValue:{type:Object,required:!0}},computed:{images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.nanobanana?.config||{}};delete t.action,t.image_urls=[e],this.$store.commit("nanobanana/setConfig",t)}}}),it={class:"preview"},ct={class:"left"},ut={class:"main"},mt={class:"bot"},dt={class:"datetime"},pt={class:"info"},ft={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},ht={key:1,class:"prompt mt-2"},_t={key:0},gt={key:0,class:O({content:!0,failed:!0})},bt={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},$t={class:O({operations:!0,"mt-2":!0,"mb-2":!0})},vt={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-2"},yt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},wt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},At={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Nt={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Et={key:1,class:O({content:!0})},Rt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},It={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Lt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},St={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Tt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ot={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ut={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ct={key:2,class:O({content:!0})},Pt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Mt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},jt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"};function Dt(e,t,$,i,b,f){const h=s("el-image"),_=s("image-preview"),m=s("image-wrapper"),d=s("el-button"),w=s("el-tooltip"),r=s("font-awesome-icon"),v=s("copy-to-clipboard"),E=s("el-alert");return n(),l("div",it,[c("div",ct,[a(h,{src:"https://cdn.acedata.cloud/859plc.jpg",class:"avatar"})]),c("div",ut,[c("div",mt,[u(o(e.$t("nanobanana.name.nanobananaBot"))+" ",1),c("span",dt,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),c("div",pt,[e.modelValue?.request?.image_urls&&e.modelValue?.request?.image_urls.length>0?(n(),l("div",ft,[(n(!0),l(V,null,N(e.modelValue?.request?.image_urls,(I,L)=>(n(),A(_,{key:L,url:I,name:`image-${L+1}`,closable:!1},null,8,["url","name"]))),128))])):p("",!0),e.modelValue?.request?.prompt?(n(),l("p",ht,[u(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?p("",!0):(n(),l("span",_t," - ("+o(e.$t("nanobanana.status.pending"))+") ",1))])):p("",!0)]),e.modelValue?.response?.success===!0?(n(),l("div",gt,[c("div",bt,[(n(!0),l(V,null,N(e.images,(I,L)=>(n(),A(m,{key:L,src:I?.image_url,"raw-src":I?.image_url},null,8,["src","raw-src"]))),128))]),c("div",$t,[a(w,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:g(()=>[a(d,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=K(I=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:g(()=>[u(o(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),a(E,{closable:!1,class:"mt-2 success"},{default:g(()=>[e.modelValue?.request?.model?(n(),l("p",vt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",kt,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",yt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",wt,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",Vt,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(n(),l("p",At,[a(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):p("",!0),e.modelValue?.response?.trace_id?(n(),l("p",Nt,[a(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),a(v,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):p("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(n(),l("div",Et,[a(E,{closable:!1,class:"failure"},{template:g(()=>[a(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failure")),1)]),default:g(()=>[e.modelValue?.request?.model?(n(),l("p",Rt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",It,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",Lt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",St,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",Tt,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),c("p",qt,[a(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),a(v,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(n(),l("p",Ot,[a(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):p("",!0),e.modelValue?.response?.trace_id?(n(),l("p",Ut,[a(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),a(v,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):p("",!0)]),_:1})])):(n(),l("div",Ct,[a(E,{closable:!1,class:"info"},{template:g(()=>[a(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failure")),1)]),default:g(()=>[e.modelValue?.request?.model?(n(),l("p",Pt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",Bt,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",Gt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",Mt,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",jt,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const Ft=y(rt,[["render",Dt],["__scopeId","data-v-8d5f4fff"]]),zt=k({name:"RecentPanel",components:{TaskPreview:Ft,BotPlaceholder:pe,NoTasks:fe,ScrollList:ee},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.nanobanana?.tasks,items:this.$store.state.nanobanana?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),xt={key:0},Wt={key:2,class:"w-full h-full flex items-center justify-center"};function Kt(e,t,$,i,b,f){const h=s("bot-placeholder"),_=s("task-preview"),m=s("scroll-list"),d=s("no-tasks");return n(),l(V,null,[e.tasks?.items===void 0?(n(),l("div",xt,[a(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),A(m,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=w=>e.$emit("reach-top"))},{default:g(()=>[(n(!0),l(V,null,N(e.tasks?.items,w=>(n(),A(_,{key:w.id,"model-value":w},null,8,["model-value"]))),128))]),_:1},8,["loading"])):p("",!0),e.tasks?.items?.length===0?(n(),l("div",Wt,[a(d)])):p("",!0)],64)}const Ht=y(zt,[["render",Kt]]),Qt=Z("nanobanana"),Jt=k({name:"NanobananaIndex",components:{ConfigPanel:lt,Layout:ve,RecentPanel:Ht},inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.nanobanana?.status?.getApplications===F.Request},tasksLoading(){return this.$store.state.nanobanana?.status?.getTasks===F.Request},credential(){return this.$store.state.nanobanana?.credential},config(){return this.$store.state.nanobanana?.config},application(){return this.$store.state.nanobanana?.application},tasks(){return this.$store.state.nanobanana?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await te({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("nanobanana/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("nanobanana/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=20,createdAtMin:$,createdAtMax:i}=e||{};console.debug("limit",t,"createdAtMin",$,"createdAtMax",i),await this.$store.dispatch("nanobanana/getTasks",{limit:t,createdAtMin:$,createdAtMax:i})},async onGenerate(){const e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;delete e.action,!t&&"image_urls"in e&&delete e.image_urls,e?.aspect_ratio||delete e.aspect_ratio,e?.model!==P&&"resolution"in e&&delete e.resolution,e?.model===P&&!e?.resolution&&(e.resolution=S);const $={...e,action:t?"edit":"generate",callback_url:Qt},i=this.credential?.token;if(!i){console.error("no token specified");return}R.info(this.$t("nanobanana.message.startingTask")),X("nanobanana",Y.generate($,{token:i})).then(()=>{R.success(this.$t("nanobanana.message.startTaskSuccess"))}).catch(b=>{const f=b?.response?.data;f?.error?.code===re?R.error(this.$t("nanobanana.message.usedUp")):R.error(this.$t("nanobanana.message.startTaskFailed")+(f?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Xt(e,t,$,i,b,f){const h=s("config-panel"),_=s("recent-panel"),m=s("layout");return n(),A(m,null,{config:g(()=>[a(h,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:g(()=>[a(_,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Ma=y(Jt,[["render",Xt]]);export{Ma as default};
@@ -1 +1 @@
1
- import{F as C}from"./index.es-D472pU9k.js";import{E as G}from"./index-Ckoh5GRm.js";import{E as L}from"./index-BJNhtEZy.js";import{d as v,H as l,E as r,z as A,C as s,y as d,D as n,q as o,F as a,I as g,O as I,N as T,x as E,Q as S,c as U,J as $}from"./vendor-vue-NSDaktjZ.js";import{G as b,bj as D,co as j,bb as z,n as M,S as V,cp as O}from"./index-3-aLpRUB.js";import{p as B}from"./pasteUploadMixin-BurWbGNQ.js";import{I as q,S as F,l as N}from"./pagination-DXmJ4BvP.js";import{I as H}from"./ImagePreview-CAQ3njUm.js";import{E as J}from"./index-CmCpa2Pb.js";import{E as w}from"./index-B-o8xgtM.js";import{a as Q,E as W}from"./index-B9PuvLP_.js";import{E as R}from"./index-CCC7Iud0.js";import{E as K,a as X}from"./index-auelhuar.js";import{b as Y,a as Z}from"./errorCode-Cqj9Td_Z.js";import{A as x}from"./Status-DRqlD1pZ.js";import{C as ee}from"./CopyToClipboard-DsvxywqB.js";import{E as se}from"./index-CeOrxb2Y.js";import{E as te,a as oe}from"./index-C5vqfEbP.js";import"./use-form-item-BIjUa6ZN.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./index-CpxfFztz.js";import"./index-Bre-Bh8H.js";import"./typescript-COBnNpmt.js";import"./index-CxRyuX-l.js";import"./_baseClone-fkn69WCu.js";import"./_Uint8Array-IvXV4zMb.js";import"./_initCloneObject-CLMgxJ_1.js";import"./isEqual-Bo54SuCQ.js";import"./debounce-CxI-RAFA.js";import"./index-n4JFW6cj.js";import"./strings-beZM2Y-f.js";import"./isPlainObject-BbX8X0UC.js";const ae=v({name:"LayoutHeadshots",components:{ElDrawer:L,ElButton:G,FontAwesomeIcon:C},data(){return{drawer:!1}}}),ne={class:"main flex flex-row flex-1"},ie={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},le={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function re(e,t,m,h,k,y){const p=n("font-awesome-icon"),u=n("el-button"),i=n("el-drawer");return o(),l("div",ne,[r("div",ie,[A(e.$slots,"config",{},void 0,!0)]),r("div",le,[A(e.$slots,"result",{},void 0,!0)]),s(u,{circle:"",class:"menu",onClick:t[0]||(t[0]=c=>e.drawer=!0)},{default:d(()=>[s(p,{icon:"fa-solid fa-gear"})]),_:1}),s(i,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=c=>e.drawer=c),"with-header":!1,size:"340px",class:"drawer"},{default:d(()=>[A(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ce=b(ae,[["render",re],["__scopeId","data-v-c93166c8"]]),de=v({name:"ImageUrlsInput",components:{ElUpload:J,ElButton:G,InfoIcon:q,ImagePreview:H,FontAwesomeIcon:C},mixins:[B],data(){return{fileList:[],uploadUrl:D()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.headshots?.config?.image_urls},set(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})}}},mounted(){this.value||(this.value=void 0),this.onSetImageUrls()},methods:{onExceed(){w.warning(this.$t("headshots.message.uploadImageExceed"))},onError(){w.error(this.$t("headshots.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})},async onSuccess(){this.onSetImageUrls()}}}),pe={class:"field"},me={class:"title font-bold"},he={class:"upload-wrapper"};function ue(e,t,m,h,k,y){const p=n("image-preview"),u=n("font-awesome-icon"),i=n("el-button"),c=n("el-upload"),f=n("info-icon");return o(),l("div",pe,[r("h2",me,a(e.$t("headshots.name.endImageUrls")),1),r("div",he,[s(c,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=_=>e.fileList=_),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value upload-wrapper",limit:2,multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:d(({file:_})=>[s(p,{url:_.url||_.response?.file_url,name:_.name,percentage:_.percentage,onRemove:P=>e.fileList.splice(e.fileList.indexOf(_),1)},null,8,["url","name","percentage","onRemove"])]),default:d(()=>[s(i,{size:"small",type:"primary",round:""},{default:d(()=>[s(u,{icon:"fa-solid fa-upload",class:"mr-1"}),g(" "+a(e.$t("headshots.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])]),s(f,{content:e.$t("headshots.description.endImageUrls"),class:"info"},null,8,["content"])])}const fe=b(de,[["render",ue],["__scopeId","data-v-ca56051e"]]),ge="fast",_e=v({name:"ModeSelector",components:{ElRadioButton:W,ElRadioGroup:Q},data(){return{options:[{label:this.$t("headshots.button.fast"),value:"fast"},{label:this.$t("headshots.button.relax"),value:"relax"}]}},computed:{value:{get(){return this.$store.state.headshots.config?.mode},set(e){console.debug("set mode",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots.config,mode:e})}}},mounted(){this.value||(this.value=ge)}}),$e={class:"field"},ve={class:"title font-bold"};function be(e,t,m,h,k,y){const p=n("el-radio-button"),u=n("el-radio-group");return o(),l("div",$e,[r("h2",ve,a(e.$t("headshots.name.mode")),1),s(u,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),class:"mode"},{default:d(()=>[(o(!0),l(I,null,T(e.options,i=>(o(),E(p,{key:i.value,label:i.value},{default:d(()=>[g(a(i.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const ke=b(_e,[["render",be],["__scopeId","data-v-e7702494"]]),ye=v({name:"StylizeSelector",components:{ElTabs:X,ElTabPane:K,ElImage:R},data(){return{tab:"styles",value:"",elements:{styles:{displayName:this.$t("headshots.styleCategory.styles"),items:[{image:"https://static.aipedias.com/aicamera/common/20241008/20241008202314260779439.png",label:this.$t("headshots.styleTag.malePportrait"),value:"male_portrait"},{image:"https://static.aipedias.com/aicamera/common/20241008/202410082022241e9755548.png",label:this.$t("headshots.styleTag.malePportrait2"),value:"male_portrait2"},{image:"https://static.aipedias.com/aicamera/common/20241101/20241101170130d78f66521.png",label:this.$t("headshots.styleTag.kindergarten"),value:"kindergarten"},{image:"https://static.aipedias.com/aicamera/common/20240923/20240923123233accf60398.webp",label:this.$t("headshots.styleTag.logoTshirt"),value:"logo_tshirt"},{image:"https://static.aipedias.com/aicamera/common/20241025/202410252012329472d0656.jpg",label:this.$t("headshots.styleTag.wedding"),value:"wedding"},{image:"https://static.aipedias.com/aicamera/common/20240915/20240915145045254931400.webp",label:this.$t("headshots.styleTag.businessPphoto"),value:"business_photo"},{image:"https://static.aipedias.com/aicamera/common/20240810/20240810194526040341795.jpg",label:this.$t("headshots.styleTag.bobSuit"),value:"bob_suit"},{image:"https://static.aipedias.com/aicamera/common/20240717/20240717152654e0b348173.webp",label:this.$t("headshots.styleTag.femalePortrait"),value:"female_portrait"}]}}}},watch:{value(e){console.debug("set template",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:e})}},mounted(){this.value||(this.value=""),console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})},methods:{onToggle(e){this.value===e?this.value="":this.value=e,console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})}}}),we={class:"field"},Ie=["onClick"],Te={class:"name"};function Ee(e,t,m,h,k,y){const p=n("el-image"),u=n("el-tab-pane"),i=n("el-tabs");return o(),l("div",we,[s(i,{modelValue:e.tab,"onUpdate:modelValue":t[0]||(t[0]=c=>e.tab=c)},{default:d(()=>[(o(!0),l(I,null,T(e.elements,(c,f)=>(o(),E(u,{key:f,label:c.displayName,name:f,class:"pane"},{default:d(()=>[(o(!0),l(I,null,T(c.items,(_,P)=>(o(),l("div",{key:P,class:S({item:!0,active:e.value===_.value}),onClick:ys=>e.onToggle(_.value)},[s(p,{src:_.image,fit:"fill",class:"preview"},null,8,["src"]),r("span",Te,a(_.label),1)],10,Ie))),128))]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])])}const Se=b(ye,[["render",Ee],["__scopeId","data-v-be4bd25d"]]),Ve=v({name:"PresetPanel",components:{ModeSelector:ke,ImageUrlsInput:fe,ElButton:G,FontAwesomeIcon:C,ElementsSelector:Se},emits:["generate"],computed:{config(){return this.$store.state.headshots?.config}},methods:{onGenerate(){this.$emit("generate")}}}),Ce={class:"panel"},Ae={class:"config"},Ge={class:"actions"};function Pe(e,t,m,h,k,y){const p=n("elements-selector"),u=n("mode-selector"),i=n("image-urls-input"),c=n("font-awesome-icon"),f=n("el-button");return o(),l("div",Ce,[r("div",Ae,[s(p,{class:"mb-4"}),s(u,{class:"mb-4"}),s(i,{class:"mb-4"}),r("div",Ge,[s(f,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[s(c,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+a(e.$t("headshots.button.generate")),1)]),_:1},8,["onClick"])])])])}const Re=b(Ve,[["render",Pe],["__scopeId","data-v-848739f6"]]),Le=v({name:"ImageGallery",props:{modelValue:{type:Object,required:!0}},setup(e){return{images:U(()=>e.modelValue?.response?.data?.slice(0,2)||[]),viewImage:h=>{window.open(h,"_blank")}}}}),Ue={class:"image-gallery"},De=["src"],je=["onClick"];function ze(e,t,m,h,k,y){return o(),l("div",Ue,[(o(!0),l(I,null,T(e.images,(p,u)=>(o(),l("div",{key:u,class:"image-container"},[r("img",{src:p.image_url,alt:"Image"},null,8,De),p.image_url?(o(),l("button",{key:0,class:"view-button",onClick:i=>e.viewImage(p.image_url)},a(e.$t("headshots.button.viewImage")),9,je)):$("",!0)]))),128))])}const Me=b(Le,[["render",ze],["__scopeId","data-v-42f0a7be"]]),Oe=v({name:"TaskPreview",components:{ElImage:R,CopyToClipboard:ee,FontAwesomeIcon:C,ElAlert:se,ImageGallery:Me},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.headshots?.application},config(){return this.$store.state.headshots?.config}},methods:{onDownload(e,t){e.stopPropagation(),console.log("on download"),window.open(t,"_blank")},onReload(e){const t=e.target,m=new URL(t.src),h=m.searchParams.get("retry");if(!h)m.searchParams.set("retry","1");else if(parseInt(h)<2)m.searchParams.set("retry",(parseInt(h)+1).toString());else return;t.src=m.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),Be={class:"preview"},qe={class:"left"},Fe={class:"main"},Ne={class:"bot"},He={class:"datetime"},Je={class:"info"},Qe={key:0,class:"prompt mt-2"},We={key:0},Ke={key:1},Xe={key:0,class:S({content:!0,failed:!0})},Ye={class:"image-wrapper"},Ze={class:"description"},xe={key:0,class:"description"},es={key:1,class:S({content:!0})},ss={class:"description"},ts={class:"description"},os={key:0,class:"description"},as={class:"description"},ns={key:2,class:S({content:!0})},is={class:"description"},ls={key:3,class:S({content:!0})},rs={class:"description"};function cs(e,t,m,h,k,y){const p=n("el-image"),u=n("image-gallery"),i=n("font-awesome-icon"),c=n("copy-to-clipboard"),f=n("el-alert");return o(),l("div",Be,[r("div",qe,[s(p,{src:"https://cdn.acedata.cloud/isxyfw.png",class:"avatar"})]),r("div",Fe,[r("div",Ne,[g(a(e.$t("headshots.name.headshotsBot"))+" ",1),r("span",He,a(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Je,[e.modelValue?.request?.template?(o(),l("p",Qe,[g(a(e.modelValue?.request?.template)+" ",1),e.modelValue?.response?$("",!0):(o(),l("span",We," - ("+a(e.$t("headshots.status.pending"))+") ",1)),e.modelValue?.response?.status==="unknown"?(o(),l("span",Ke," - ("+a(e.$t("headshots.status.processing"))+") ",1)):$("",!0)])):$("",!0)]),e.modelValue?.response?.success===!0?(o(),l("div",Xe,[r("div",Ye,[s(u,{"model-value":e.modelValue},null,8,["model-value"])]),s(f,{closable:!1,class:"mt-2 success"},{default:d(()=>[r("p",Ze,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(o(),l("p",xe,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+a(e.$t("headshots.name.elapsed"))+": "+a(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0)]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(o(),l("div",es,[s(f,{closable:!1,class:"failure"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",ss,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),r("p",ts,[s(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failureReason"))+": "+a(e.modelValue?.response?.error?.message)+" ",1),s(c,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(o(),l("p",os,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+a(e.$t("headshots.name.elapsed"))+": "+a(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),r("p",as,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+a(e.$t("headshots.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?$("",!0):(o(),l("div",ns,[s(f,{closable:!1,class:"info"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",is,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])),e.modelValue?.response?.status==="unknown"?(o(),l("div",ls,[s(f,{closable:!1,class:"info"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",rs,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0)])])}const ds=b(Oe,[["render",cs],["__scopeId","data-v-d286678e"]]),ps=v({name:"RecentPanel",components:{TaskPreview:ds,ElSkeleton:oe,ElSkeletonItem:te,ScrollList:F},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.headshots?.tasks,items:this.$store.state.headshots?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),ms={key:0,class:"tasks"},hs={class:"left"},us={class:"main"},fs={key:1,class:"tasks"},gs={key:2,class:"description"};function _s(e,t,m,h,k,y){const p=n("el-skeleton-item"),u=n("el-skeleton"),i=n("task-preview"),c=n("scroll-list");return o(),E(c,{ref:"scrollList",class:"panel recent",loading:e.loading,onReachTop:t[0]||(t[0]=f=>e.$emit("reach-top"))},{default:d(()=>[e.tasks?.items===void 0?(o(),l("div",ms,[(o(),l(I,null,T(3,f=>r("div",{key:f,class:"task placeholder"},[r("div",hs,[s(u,{animated:""},{template:d(()=>[s(p,{variant:"image",class:"avatar"})]),_:1})]),r("div",us,[s(u,{animated:""},{template:d(()=>[s(p,{variant:"p",class:"title"}),s(p,{variant:"image",class:"icon"})]),_:1})])])),64))])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(o(),l("div",fs,[(o(!0),l(I,null,T(e.tasks?.items,(f,_)=>(o(),E(i,{key:_,"model-value":f,class:"preview"},null,8,["model-value"]))),128))])):$("",!0),e.tasks?.items?.length===0?(o(),l("p",gs,a(e.$t("headshots.message.noTasks")),1)):$("",!0)]),_:1},8,["loading"])}const $s=b(ps,[["render",_s],["__scopeId","data-v-ffd55c16"]]),vs=O("headshots"),bs=v({name:"HeadshotsIndex",components:{ConfigPanel:Re,Layout:ce,ApplicationStatus:x,RecentPanel:$s},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.headshots?.status?.getApplications===V.Request},tasksLoading(){return this.$store.state.headshots?.status?.getTasks===V.Request||this.fetchingTasks},service(){return this.$store.state.headshots.service},credential(){return this.$store.state.headshots.credential},config(){return this.$store.state.headshots.config},initializing(){return this.$store.state.headshots.status.getApplications===V.Request},needApply(){return this.$store.state.headshots.status.getApplications===V.Success&&!this.application},application(){return this.$store.state.headshots.application},applications(){return this.$store.state.headshots.applications},tasks(){return this.$store.state.headshots.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await N({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("headshots/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("headshots/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){M.create({application:this.application}).then(({data:e})=>{this.application=e,w.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===Z&&w.error(this.$t("application.message.alreadyApplied"))})},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=5,createdAtMin:m,createdAtMax:h}=e||{};console.debug("limit",t,"createdAtMin",m,"createdAtMax",h),this.fetchingTasks=!0;try{await this.$store.dispatch("headshots/getTasks",{limit:t,createdAtMin:m,createdAtMax:h})}finally{this.fetchingTasks=!1}},async onGeneratePicture(){const e={...this.config,callback_url:vs},t=this.credential?.token;if(!t){console.error("no token specified");return}w.info(this.$t("headshots.message.startingTask")),j("headshots",z.generate(e,{token:t})).then(()=>{w.success(this.$t("headshots.message.startTaskSuccess")),this.$store.commit("headshots/setConfig",{config:void 0})}).catch(m=>{m?.response?.data?.error?.code===Y?w.error(this.$t("headshots.message.usedUp")):w.error(this.$t("headshots.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function ks(e,t,m,h,k,y){const p=n("config-panel"),u=n("application-status"),i=n("recent-panel"),c=n("layout");return o(),E(c,null,{config:d(()=>[s(p,{onGenerate:e.onGeneratePicture},null,8,["onGenerate"])]),result:d(()=>[s(u,{initializing:e.initializing,application:e.application,applications:e.applications,service:e.service,"need-apply":e.needApply,class:"mb-4",onRefresh:e.onGetApplication,onSelect:t[0]||(t[0]=f=>e.$store.dispatch("headshots/setApplication",f))},null,8,["initializing","application","applications","service","need-apply","onRefresh"]),s(i,{ref:"recentPanel",class:"panel recent",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const at=b(bs,[["render",ks],["__scopeId","data-v-0af228d8"]]);export{at as default};
1
+ import{F as C}from"./index.es-DCL3aYjw.js";import{E as G}from"./index-CXk4y1bt.js";import{E as L}from"./index-C2-gUTzR.js";import{d as v,H as l,E as r,z as A,C as s,y as d,D as n,q as o,F as a,I as g,O as I,N as T,x as E,Q as S,c as U,J as $}from"./vendor-vue-NSDaktjZ.js";import{G as b,bj as D,co as j,bb as z,n as M,S as V,cp as O}from"./index-UEQ4C95J.js";import{p as B}from"./pasteUploadMixin-BurWbGNQ.js";import{I as q,S as F,l as N}from"./pagination-wUSdmOzL.js";import{I as H}from"./ImagePreview-BID-4kFX.js";import{E as J}from"./index-DKJuDgcJ.js";import{E as w}from"./index-B73VNuAm.js";import{a as Q,E as W}from"./index-BjD_dt7j.js";import{E as R}from"./index-B3Az8tWL.js";import{E as K,a as X}from"./index-Dw4DHrde.js";import{b as Y,a as Z}from"./errorCode-Cqj9Td_Z.js";import{A as x}from"./Status-Blr6rj5w.js";import{C as ee}from"./CopyToClipboard-C2THHT8U.js";import{E as se}from"./index-BLdEuIsD.js";import{E as te,a as oe}from"./index-Btf_IFYC.js";import"./use-form-item-CLq3ss4x.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./index-DYODEtlg.js";import"./index-fxj2Ya9s.js";import"./typescript-tDSPj8Z9.js";import"./index-CRa1r1FF.js";import"./_baseClone-I702BQXP.js";import"./_Uint8Array-CI8yFZ43.js";import"./_initCloneObject-DtaxLMaj.js";import"./isEqual-Djnx406d.js";import"./debounce-Dh8RqSlB.js";import"./index-CtWa2yYi.js";import"./strings-beZM2Y-f.js";import"./isPlainObject-C0M2uYU9.js";const ae=v({name:"LayoutHeadshots",components:{ElDrawer:L,ElButton:G,FontAwesomeIcon:C},data(){return{drawer:!1}}}),ne={class:"main flex flex-row flex-1"},ie={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},le={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function re(e,t,m,h,k,y){const p=n("font-awesome-icon"),u=n("el-button"),i=n("el-drawer");return o(),l("div",ne,[r("div",ie,[A(e.$slots,"config",{},void 0,!0)]),r("div",le,[A(e.$slots,"result",{},void 0,!0)]),s(u,{circle:"",class:"menu",onClick:t[0]||(t[0]=c=>e.drawer=!0)},{default:d(()=>[s(p,{icon:"fa-solid fa-gear"})]),_:1}),s(i,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=c=>e.drawer=c),"with-header":!1,size:"340px",class:"drawer"},{default:d(()=>[A(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ce=b(ae,[["render",re],["__scopeId","data-v-c93166c8"]]),de=v({name:"ImageUrlsInput",components:{ElUpload:J,ElButton:G,InfoIcon:q,ImagePreview:H,FontAwesomeIcon:C},mixins:[B],data(){return{fileList:[],uploadUrl:D()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.headshots?.config?.image_urls},set(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})}}},mounted(){this.value||(this.value=void 0),this.onSetImageUrls()},methods:{onExceed(){w.warning(this.$t("headshots.message.uploadImageExceed"))},onError(){w.error(this.$t("headshots.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})},async onSuccess(){this.onSetImageUrls()}}}),pe={class:"field"},me={class:"title font-bold"},he={class:"upload-wrapper"};function ue(e,t,m,h,k,y){const p=n("image-preview"),u=n("font-awesome-icon"),i=n("el-button"),c=n("el-upload"),f=n("info-icon");return o(),l("div",pe,[r("h2",me,a(e.$t("headshots.name.endImageUrls")),1),r("div",he,[s(c,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=_=>e.fileList=_),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value upload-wrapper",limit:2,multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:d(({file:_})=>[s(p,{url:_.url||_.response?.file_url,name:_.name,percentage:_.percentage,onRemove:P=>e.fileList.splice(e.fileList.indexOf(_),1)},null,8,["url","name","percentage","onRemove"])]),default:d(()=>[s(i,{size:"small",type:"primary",round:""},{default:d(()=>[s(u,{icon:"fa-solid fa-upload",class:"mr-1"}),g(" "+a(e.$t("headshots.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])]),s(f,{content:e.$t("headshots.description.endImageUrls"),class:"info"},null,8,["content"])])}const fe=b(de,[["render",ue],["__scopeId","data-v-ca56051e"]]),ge="fast",_e=v({name:"ModeSelector",components:{ElRadioButton:W,ElRadioGroup:Q},data(){return{options:[{label:this.$t("headshots.button.fast"),value:"fast"},{label:this.$t("headshots.button.relax"),value:"relax"}]}},computed:{value:{get(){return this.$store.state.headshots.config?.mode},set(e){console.debug("set mode",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots.config,mode:e})}}},mounted(){this.value||(this.value=ge)}}),$e={class:"field"},ve={class:"title font-bold"};function be(e,t,m,h,k,y){const p=n("el-radio-button"),u=n("el-radio-group");return o(),l("div",$e,[r("h2",ve,a(e.$t("headshots.name.mode")),1),s(u,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),class:"mode"},{default:d(()=>[(o(!0),l(I,null,T(e.options,i=>(o(),E(p,{key:i.value,label:i.value},{default:d(()=>[g(a(i.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const ke=b(_e,[["render",be],["__scopeId","data-v-e7702494"]]),ye=v({name:"StylizeSelector",components:{ElTabs:X,ElTabPane:K,ElImage:R},data(){return{tab:"styles",value:"",elements:{styles:{displayName:this.$t("headshots.styleCategory.styles"),items:[{image:"https://static.aipedias.com/aicamera/common/20241008/20241008202314260779439.png",label:this.$t("headshots.styleTag.malePportrait"),value:"male_portrait"},{image:"https://static.aipedias.com/aicamera/common/20241008/202410082022241e9755548.png",label:this.$t("headshots.styleTag.malePportrait2"),value:"male_portrait2"},{image:"https://static.aipedias.com/aicamera/common/20241101/20241101170130d78f66521.png",label:this.$t("headshots.styleTag.kindergarten"),value:"kindergarten"},{image:"https://static.aipedias.com/aicamera/common/20240923/20240923123233accf60398.webp",label:this.$t("headshots.styleTag.logoTshirt"),value:"logo_tshirt"},{image:"https://static.aipedias.com/aicamera/common/20241025/202410252012329472d0656.jpg",label:this.$t("headshots.styleTag.wedding"),value:"wedding"},{image:"https://static.aipedias.com/aicamera/common/20240915/20240915145045254931400.webp",label:this.$t("headshots.styleTag.businessPphoto"),value:"business_photo"},{image:"https://static.aipedias.com/aicamera/common/20240810/20240810194526040341795.jpg",label:this.$t("headshots.styleTag.bobSuit"),value:"bob_suit"},{image:"https://static.aipedias.com/aicamera/common/20240717/20240717152654e0b348173.webp",label:this.$t("headshots.styleTag.femalePortrait"),value:"female_portrait"}]}}}},watch:{value(e){console.debug("set template",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:e})}},mounted(){this.value||(this.value=""),console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})},methods:{onToggle(e){this.value===e?this.value="":this.value=e,console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})}}}),we={class:"field"},Ie=["onClick"],Te={class:"name"};function Ee(e,t,m,h,k,y){const p=n("el-image"),u=n("el-tab-pane"),i=n("el-tabs");return o(),l("div",we,[s(i,{modelValue:e.tab,"onUpdate:modelValue":t[0]||(t[0]=c=>e.tab=c)},{default:d(()=>[(o(!0),l(I,null,T(e.elements,(c,f)=>(o(),E(u,{key:f,label:c.displayName,name:f,class:"pane"},{default:d(()=>[(o(!0),l(I,null,T(c.items,(_,P)=>(o(),l("div",{key:P,class:S({item:!0,active:e.value===_.value}),onClick:ys=>e.onToggle(_.value)},[s(p,{src:_.image,fit:"fill",class:"preview"},null,8,["src"]),r("span",Te,a(_.label),1)],10,Ie))),128))]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])])}const Se=b(ye,[["render",Ee],["__scopeId","data-v-be4bd25d"]]),Ve=v({name:"PresetPanel",components:{ModeSelector:ke,ImageUrlsInput:fe,ElButton:G,FontAwesomeIcon:C,ElementsSelector:Se},emits:["generate"],computed:{config(){return this.$store.state.headshots?.config}},methods:{onGenerate(){this.$emit("generate")}}}),Ce={class:"panel"},Ae={class:"config"},Ge={class:"actions"};function Pe(e,t,m,h,k,y){const p=n("elements-selector"),u=n("mode-selector"),i=n("image-urls-input"),c=n("font-awesome-icon"),f=n("el-button");return o(),l("div",Ce,[r("div",Ae,[s(p,{class:"mb-4"}),s(u,{class:"mb-4"}),s(i,{class:"mb-4"}),r("div",Ge,[s(f,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[s(c,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+a(e.$t("headshots.button.generate")),1)]),_:1},8,["onClick"])])])])}const Re=b(Ve,[["render",Pe],["__scopeId","data-v-848739f6"]]),Le=v({name:"ImageGallery",props:{modelValue:{type:Object,required:!0}},setup(e){return{images:U(()=>e.modelValue?.response?.data?.slice(0,2)||[]),viewImage:h=>{window.open(h,"_blank")}}}}),Ue={class:"image-gallery"},De=["src"],je=["onClick"];function ze(e,t,m,h,k,y){return o(),l("div",Ue,[(o(!0),l(I,null,T(e.images,(p,u)=>(o(),l("div",{key:u,class:"image-container"},[r("img",{src:p.image_url,alt:"Image"},null,8,De),p.image_url?(o(),l("button",{key:0,class:"view-button",onClick:i=>e.viewImage(p.image_url)},a(e.$t("headshots.button.viewImage")),9,je)):$("",!0)]))),128))])}const Me=b(Le,[["render",ze],["__scopeId","data-v-42f0a7be"]]),Oe=v({name:"TaskPreview",components:{ElImage:R,CopyToClipboard:ee,FontAwesomeIcon:C,ElAlert:se,ImageGallery:Me},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.headshots?.application},config(){return this.$store.state.headshots?.config}},methods:{onDownload(e,t){e.stopPropagation(),console.log("on download"),window.open(t,"_blank")},onReload(e){const t=e.target,m=new URL(t.src),h=m.searchParams.get("retry");if(!h)m.searchParams.set("retry","1");else if(parseInt(h)<2)m.searchParams.set("retry",(parseInt(h)+1).toString());else return;t.src=m.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),Be={class:"preview"},qe={class:"left"},Fe={class:"main"},Ne={class:"bot"},He={class:"datetime"},Je={class:"info"},Qe={key:0,class:"prompt mt-2"},We={key:0},Ke={key:1},Xe={key:0,class:S({content:!0,failed:!0})},Ye={class:"image-wrapper"},Ze={class:"description"},xe={key:0,class:"description"},es={key:1,class:S({content:!0})},ss={class:"description"},ts={class:"description"},os={key:0,class:"description"},as={class:"description"},ns={key:2,class:S({content:!0})},is={class:"description"},ls={key:3,class:S({content:!0})},rs={class:"description"};function cs(e,t,m,h,k,y){const p=n("el-image"),u=n("image-gallery"),i=n("font-awesome-icon"),c=n("copy-to-clipboard"),f=n("el-alert");return o(),l("div",Be,[r("div",qe,[s(p,{src:"https://cdn.acedata.cloud/isxyfw.png",class:"avatar"})]),r("div",Fe,[r("div",Ne,[g(a(e.$t("headshots.name.headshotsBot"))+" ",1),r("span",He,a(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Je,[e.modelValue?.request?.template?(o(),l("p",Qe,[g(a(e.modelValue?.request?.template)+" ",1),e.modelValue?.response?$("",!0):(o(),l("span",We," - ("+a(e.$t("headshots.status.pending"))+") ",1)),e.modelValue?.response?.status==="unknown"?(o(),l("span",Ke," - ("+a(e.$t("headshots.status.processing"))+") ",1)):$("",!0)])):$("",!0)]),e.modelValue?.response?.success===!0?(o(),l("div",Xe,[r("div",Ye,[s(u,{"model-value":e.modelValue},null,8,["model-value"])]),s(f,{closable:!1,class:"mt-2 success"},{default:d(()=>[r("p",Ze,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(o(),l("p",xe,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+a(e.$t("headshots.name.elapsed"))+": "+a(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0)]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(o(),l("div",es,[s(f,{closable:!1,class:"failure"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",ss,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),r("p",ts,[s(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failureReason"))+": "+a(e.modelValue?.response?.error?.message)+" ",1),s(c,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(o(),l("p",os,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+a(e.$t("headshots.name.elapsed"))+": "+a(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),r("p",as,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+a(e.$t("headshots.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?$("",!0):(o(),l("div",ns,[s(f,{closable:!1,class:"info"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",is,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])),e.modelValue?.response?.status==="unknown"?(o(),l("div",ls,[s(f,{closable:!1,class:"info"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",rs,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0)])])}const ds=b(Oe,[["render",cs],["__scopeId","data-v-d286678e"]]),ps=v({name:"RecentPanel",components:{TaskPreview:ds,ElSkeleton:oe,ElSkeletonItem:te,ScrollList:F},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.headshots?.tasks,items:this.$store.state.headshots?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),ms={key:0,class:"tasks"},hs={class:"left"},us={class:"main"},fs={key:1,class:"tasks"},gs={key:2,class:"description"};function _s(e,t,m,h,k,y){const p=n("el-skeleton-item"),u=n("el-skeleton"),i=n("task-preview"),c=n("scroll-list");return o(),E(c,{ref:"scrollList",class:"panel recent",loading:e.loading,onReachTop:t[0]||(t[0]=f=>e.$emit("reach-top"))},{default:d(()=>[e.tasks?.items===void 0?(o(),l("div",ms,[(o(),l(I,null,T(3,f=>r("div",{key:f,class:"task placeholder"},[r("div",hs,[s(u,{animated:""},{template:d(()=>[s(p,{variant:"image",class:"avatar"})]),_:1})]),r("div",us,[s(u,{animated:""},{template:d(()=>[s(p,{variant:"p",class:"title"}),s(p,{variant:"image",class:"icon"})]),_:1})])])),64))])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(o(),l("div",fs,[(o(!0),l(I,null,T(e.tasks?.items,(f,_)=>(o(),E(i,{key:_,"model-value":f,class:"preview"},null,8,["model-value"]))),128))])):$("",!0),e.tasks?.items?.length===0?(o(),l("p",gs,a(e.$t("headshots.message.noTasks")),1)):$("",!0)]),_:1},8,["loading"])}const $s=b(ps,[["render",_s],["__scopeId","data-v-ffd55c16"]]),vs=O("headshots"),bs=v({name:"HeadshotsIndex",components:{ConfigPanel:Re,Layout:ce,ApplicationStatus:x,RecentPanel:$s},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.headshots?.status?.getApplications===V.Request},tasksLoading(){return this.$store.state.headshots?.status?.getTasks===V.Request||this.fetchingTasks},service(){return this.$store.state.headshots.service},credential(){return this.$store.state.headshots.credential},config(){return this.$store.state.headshots.config},initializing(){return this.$store.state.headshots.status.getApplications===V.Request},needApply(){return this.$store.state.headshots.status.getApplications===V.Success&&!this.application},application(){return this.$store.state.headshots.application},applications(){return this.$store.state.headshots.applications},tasks(){return this.$store.state.headshots.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await N({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("headshots/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("headshots/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){M.create({application:this.application}).then(({data:e})=>{this.application=e,w.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===Z&&w.error(this.$t("application.message.alreadyApplied"))})},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=5,createdAtMin:m,createdAtMax:h}=e||{};console.debug("limit",t,"createdAtMin",m,"createdAtMax",h),this.fetchingTasks=!0;try{await this.$store.dispatch("headshots/getTasks",{limit:t,createdAtMin:m,createdAtMax:h})}finally{this.fetchingTasks=!1}},async onGeneratePicture(){const e={...this.config,callback_url:vs},t=this.credential?.token;if(!t){console.error("no token specified");return}w.info(this.$t("headshots.message.startingTask")),j("headshots",z.generate(e,{token:t})).then(()=>{w.success(this.$t("headshots.message.startTaskSuccess")),this.$store.commit("headshots/setConfig",{config:void 0})}).catch(m=>{m?.response?.data?.error?.code===Y?w.error(this.$t("headshots.message.usedUp")):w.error(this.$t("headshots.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function ks(e,t,m,h,k,y){const p=n("config-panel"),u=n("application-status"),i=n("recent-panel"),c=n("layout");return o(),E(c,null,{config:d(()=>[s(p,{onGenerate:e.onGeneratePicture},null,8,["onGenerate"])]),result:d(()=>[s(u,{initializing:e.initializing,application:e.application,applications:e.applications,service:e.service,"need-apply":e.needApply,class:"mb-4",onRefresh:e.onGetApplication,onSelect:t[0]||(t[0]=f=>e.$store.dispatch("headshots/setApplication",f))},null,8,["initializing","application","applications","service","need-apply","onRefresh"]),s(i,{ref:"recentPanel",class:"panel recent",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const at=b(bs,[["render",ks],["__scopeId","data-v-0af228d8"]]);export{at as default};
@@ -1 +1 @@
1
- import{F as C}from"./index.es-D472pU9k.js";import{E as T}from"./index-Ckoh5GRm.js";import{E as M}from"./index-BJNhtEZy.js";import{d as v,H as r,E as c,z as L,C as t,y as d,D as o,q as s,F as l,O as I,N as S,x as $,I as f,J as m,M as O,Q as U}from"./vendor-vue-NSDaktjZ.js";import{G as w,bj as j,co as B,b2 as F,S as D,cp as N}from"./index-3-aLpRUB.js";import{a as q,b as z}from"./wan-DKq-jYOo.js";import{E as R,a as G}from"./index-B92A7jKd.js";import{p as W}from"./pasteUploadMixin-BurWbGNQ.js";import{I as P,S as H,l as J}from"./pagination-DXmJ4BvP.js";import{I as K}from"./ImagePreview-CAQ3njUm.js";import{E as Q}from"./index-CmCpa2Pb.js";import{E as V}from"./index-B-o8xgtM.js";import{E as X}from"./index-MJwFr5pt.js";import{C as Y}from"./Consumption-BR_5gQEP.js";import{a as Z}from"./price-BXhkc4WG.js";import{b as x}from"./errorCode-Cqj9Td_Z.js";import{C as ee}from"./CopyToClipboard-DsvxywqB.js";import{V as te}from"./VideoPlayer-B61RdWmY.js";import{E as oe}from"./index-CpxfFztz.js";import{E as se}from"./index-CeOrxb2Y.js";import{E as ne}from"./index-CCC7Iud0.js";import{B as ae}from"./BotPlaceholder-CypCpXTJ.js";import{N as le}from"./NoTasks-BEMX_TrD.js";import"./use-form-item-BIjUa6ZN.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./index-CSM8ZMaI.js";import"./typescript-COBnNpmt.js";import"./index-Bre-Bh8H.js";import"./strings-beZM2Y-f.js";import"./isEqual-Bo54SuCQ.js";import"./_Uint8Array-IvXV4zMb.js";import"./castArray-s_94RxeJ.js";import"./debounce-CxI-RAFA.js";import"./_baseIteratee-BdprhHej.js";import"./index-7bTsjUXw.js";import"./index-CxRyuX-l.js";import"./_baseClone-fkn69WCu.js";import"./_initCloneObject-CLMgxJ_1.js";import"./index-n4JFW6cj.js";import"./vue-plyr-BO2nlN4c.js";import"./index-C5vqfEbP.js";const re=v({name:"LayoutWan",components:{ElDrawer:M,ElButton:T,FontAwesomeIcon:C},data(){return{drawer:!1}}}),ie={class:"main flex flex-row flex-1"},ce={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},de={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ue(e,n,h,_,b,k){const u=o("font-awesome-icon"),p=o("el-button"),a=o("el-drawer");return s(),r("div",ie,[c("div",ce,[L(e.$slots,"config",{},void 0,!0)]),c("div",de,[L(e.$slots,"result",{},void 0,!0)]),t(p,{circle:"",class:"menu",onClick:n[0]||(n[0]=g=>e.drawer=!0)},{default:d(()=>[t(u,{icon:"fa-solid fa-magic"})]),_:1}),t(a,{modelValue:e.drawer,"onUpdate:modelValue":n[1]||(n[1]=g=>e.drawer=g),direction:"ltr","with-header":!1,size:"340px"},{default:d(()=>[L(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const pe=w(re,[["render",ue],["__scopeId","data-v-37ba1764"]]),me=v({name:"ModelSelector",components:{ElSelect:G,ElOption:R},data(){return{}},computed:{options(){return[{value:"wan2.6-t2v",label:this.$t("wan.button.modelT2v")},{value:"wan2.6-i2v",label:this.$t("wan.button.modelI2v")},{value:"wan2.6-i2v-flash",label:this.$t("wan.button.modelI2vFlash")},{value:"wan2.6-r2v",label:this.$t("wan.button.modelR2v")}]},value:{get(){return this.$store.state.wan?.config?.model},set(e){this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,model:e})}}},mounted(){this.value||(this.value=q)}}),fe={class:"field"},he={class:"title font-bold"},_e={class:"float-left"};function ge(e,n,h,_,b,k){const u=o("el-option"),p=o("el-select");return s(),r("div",fe,[c("h2",he,l(e.$t("wan.name.model")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=a=>e.value=a),class:"value",placeholder:e.$t("wan.placeholder.select"),clearable:""},{default:d(()=>[(s(!0),r(I,null,S(e.options,a=>(s(),$(u,{key:a.value,label:a.label,value:a.value},{default:d(()=>[c("span",_e,l(a.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const $e=w(me,[["render",ge],["__scopeId","data-v-eb090beb"]]),ve="720p",we=v({name:"ResolutionSelector",components:{ElSelect:G,ElOption:R},computed:{options(){return[{value:"480p",label:this.$t("wan.name.resolution480p")},{value:"720p",label:this.$t("wan.name.resolution720p")},{value:"1080p",label:this.$t("wan.name.resolution1080p")}]},value:{get(){return this.$store.state.wan?.config?.resolution},set(e){this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,resolution:e})}}},mounted(){this.value||(this.value=ve)}}),be={class:"field"},ke={class:"title font-bold"},ye={class:"float-left"};function Ve(e,n,h,_,b,k){const u=o("el-option"),p=o("el-select");return s(),r("div",be,[c("h2",ke,l(e.$t("wan.name.resolution")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=a=>e.value=a),class:"value",placeholder:e.$t("wan.placeholder.select"),clearable:""},{default:d(()=>[(s(!0),r(I,null,S(e.options,a=>(s(),$(u,{key:a.value,label:a.label,value:a.value},{default:d(()=>[c("span",ye,l(a.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ee=w(we,[["render",Ve],["__scopeId","data-v-3e39f44e"]]),Ie=5,Te=v({name:"DurationSelector",components:{ElSelect:G,ElOption:R},computed:{options(){return[{value:5,label:this.$t("wan.name.duration5s")},{value:10,label:this.$t("wan.name.duration10s")},{value:15,label:this.$t("wan.name.duration15s")}]},value:{get(){return this.$store.state.wan?.config?.duration},set(e){this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,duration:e})}}},mounted(){this.value||(this.value=Ie)}}),Se={class:"field"},Ue={class:"title font-bold"},Le={class:"float-left"};function Ce(e,n,h,_,b,k){const u=o("el-option"),p=o("el-select");return s(),r("div",Se,[c("h2",Ue,l(e.$t("wan.name.duration")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=a=>e.value=a),class:"value",placeholder:e.$t("wan.placeholder.select"),clearable:""},{default:d(()=>[(s(!0),r(I,null,S(e.options,a=>(s(),$(u,{key:a.value,label:a.label,value:a.value},{default:d(()=>[c("span",Le,l(a.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Re=w(Te,[["render",Ce],["__scopeId","data-v-5f35a2cf"]]),Ge=v({name:"ImageUrlInput",components:{ElUpload:Q,ElButton:T,InfoIcon:P,ImagePreview:K},mixins:[W],data(){return{fileList:[],uploadUrl:j()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e.url).filter(e=>e!==void 0)},value:{get(){return this.$store.state.wan?.config?.image_url},set(){const e=this.urls?.[0];this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,image_url:e})}}},mounted(){this.value||(this.value=void 0),this.onSetImageUrl()},methods:{onExceed(){V.warning(this.$t("wan.message.uploadImageExceed"))},onError(){V.error(this.$t("wan.message.uploadImageError"))},async onRemove(){V.error(this.$t("wan.message.uploadImageError"))},onSetImageUrl(){const e=this.urls?.[0];this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,image_url:e})},async onSuccess(){this.onSetImageUrl()}}}),Ae={class:"relative"},De={class:"flex justify-between"},Pe={class:"flex justify-start items-center"},Me={class:"text-sm font-bold"};function Oe(e,n,h,_,b,k){const u=o("info-icon"),p=o("image-preview"),a=o("el-button"),g=o("el-upload");return s(),r("div",Ae,[c("div",De,[c("div",Pe,[c("span",Me,l(e.$t("wan.name.imageUrl")),1),t(u,{content:e.$t("wan.description.imageUrl"),class:"info"},null,8,["content"])])]),t(g,{"file-list":e.fileList,"onUpdate:fileList":n[0]||(n[0]=i=>e.fileList=i),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file","show-file-list":!0,limit:1,multiple:!1,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-remove":e.onRemove,"on-success":e.onSuccess,headers:e.headers},{file:d(({file:i})=>[i.url&&i.percentage!==void 0?(s(),$(p,{key:0,url:i.url,name:i.name,percentage:i.percentage,onRemove:y=>e.fileList.splice(e.fileList.indexOf(i),1)},null,8,["url","name","percentage","onRemove"])):m("",!0)]),default:d(()=>[t(a,{size:"small",type:"primary",class:"btn btn-upload",round:""},{default:d(()=>[f(l(e.$t("wan.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-remove","on-success","headers"])])}const je=w(Ge,[["render",Oe],["__scopeId","data-v-c9ebe1b1"]]),Be="",Fe=v({name:"PromptInput",components:{ElInput:X,InfoIcon:P},computed:{prompt:{get(){return this.$store.state.wan?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Be)}}),Ne={class:"field"},qe={class:"box"},ze={class:"title font-bold"};function We(e,n,h,_,b,k){const u=o("info-icon"),p=o("el-input");return s(),r("div",Ne,[c("div",qe,[c("h2",ze,l(e.$t("wan.name.prompt")),1),t(u,{content:e.$t("wan.description.prompt"),class:"info"},null,8,["content"])]),t(p,{modelValue:e.prompt,"onUpdate:modelValue":n[0]||(n[0]=a=>e.prompt=a),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("wan.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const He=w(Fe,[["render",We],["__scopeId","data-v-45557a2d"]]),Je=v({name:"PresetPanel",components:{ElButton:T,FontAwesomeIcon:C,PromptInput:He,ImageUrlInput:je,ModelSelector:$e,ResolutionSelector:Ee,DurationSelector:Re,Consumption:Y},emits:["generate"],computed:{config(){return this.$store.state.wan?.config},consumption(){return Z(this.config,this.service?.cost)},service(){return this.$store.state.wan?.service},supportsResolution(){const e=this.config?.model;return e==="wan2.6-t2v"||e==="wan2.6-i2v"||e==="wan2.6-i2v-flash"},supportsDuration(){return this.config?.model==="wan2.6-t2v"},supportsImageUrl(){const e=this.config?.model;return e==="wan2.6-i2v"||e==="wan2.6-i2v-flash"}},methods:{onGenerate(){this.$emit("generate")}}}),Ke={class:"flex flex-col h-full"},Qe={class:"flex-1 overflow-y-auto p-5"},Xe={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ye(e,n,h,_,b,k){const u=o("prompt-input"),p=o("model-selector"),a=o("resolution-selector"),g=o("duration-selector"),i=o("image-url-input"),y=o("consumption"),E=o("font-awesome-icon"),A=o("el-button");return s(),r("div",Ke,[c("div",Qe,[t(u,{class:"mb-4"}),t(p,{class:"mb-4"}),e.supportsResolution?(s(),$(a,{key:0,class:"mb-4"})):m("",!0),e.supportsDuration?(s(),$(g,{key:1,class:"mb-4"})):m("",!0),e.supportsImageUrl?(s(),$(i,{key:2,class:"mb-2"})):m("",!0)]),c("div",Xe,[t(y,{value:e.consumption,service:e.service},null,8,["value","service"]),t(A,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[t(E,{icon:"fa-solid fa-magic",class:"mr-2"}),f(" "+l(e.$t("wan.button.generate")),1)]),_:1},8,["onClick"])])])}const Ze=w(Je,[["render",Ye]]),xe=v({name:"TaskPreview",components:{ElImage:ne,CopyToClipboard:ee,FontAwesomeIcon:C,ElAlert:se,VideoPlayer:te,ElTooltip:oe,ElButton:T},props:{modelValue:{type:Object,required:!0}},setup(){return{WAN_LOGO:z}},computed:{application(){return this.$store.state.wan?.application},config(){return this.$store.state.wan?.config}},methods:{onDownload(e){console.debug("on download wan video",e),window.open(e,"_blank")}}}),et={class:"preview"},tt={class:"left"},ot={class:"main"},st={class:"bot"},nt={class:"datetime"},at={class:"info"},lt={key:0,class:"prompt mt-2"},rt={key:0},it={key:1},ct={key:0,class:U({content:!0,failed:!0})},dt={key:0,class:"mb-4"},ut={key:1,class:U({operations:!0,"mt-2":!0})},pt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},mt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ht={key:1,class:U({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"},$t={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},vt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},wt={key:2,class:U({content:!0})},bt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function kt(e,n,h,_,b,k){const u=o("el-image"),p=o("video-player"),a=o("el-button"),g=o("el-tooltip"),i=o("font-awesome-icon"),y=o("copy-to-clipboard"),E=o("el-alert");return s(),r("div",et,[c("div",tt,[t(u,{src:e.WAN_LOGO,class:"avatar"},null,8,["src"])]),c("div",ot,[c("div",st,[f(l(e.$t("wan.name.wanBot"))+" ",1),c("span",nt,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),c("div",at,[e.modelValue?.request?.prompt?(s(),r("p",lt,[f(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?m("",!0):(s(),r("span",rt," - ("+l(e.$t("wan.status.pending"))+") ",1)),e.modelValue?.response?.state==="processing"||e.modelValue?.response?.state==="pending"||e.modelValue?.response?.state==="running"?(s(),r("span",it," - ("+l(e.$t("wan.status.processing"))+") ",1)):m("",!0)])):m("",!0)]),e.modelValue?.response?.success===!0?(s(),r("div",ct,[e.modelValue?.response?.video_url?(s(),r("div",dt,[t(p,{src:e.modelValue?.response?.video_url},null,8,["src"])])):m("",!0),e.modelValue?.response?.video_url?(s(),r("div",ut,[t(g,{class:"box-item",effect:"dark",content:e.$t("wan.message.downloadVideo"),placement:"top-start"},{default:d(()=>[t(a,{type:"info",size:"small",class:"mb-2",onClick:n[0]||(n[0]=O(A=>e.onDownload(e.modelValue?.response?.video_url),["stop"]))},{default:d(()=>[f(l(e.$t("wan.button.download")),1)]),_:1})]),_:1},8,["content"])])):m("",!0),t(E,{closable:!1,class:"mt-2 success"},{default:d(()=>[e.modelValue?.request?.model?(s(),r("p",pt,[t(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+l(e.$t("wan.name.model"))+": "+l(e.modelValue?.request?.model)+" ",1),t(y,{content:e.modelValue?.id},null,8,["content"])])):m("",!0),c("p",mt,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("wan.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(y,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.elapsed?(s(),r("p",ft,[t(i,{icon:"fa-solid fa-clock",class:"mr-1"}),f(" "+l(e.$t("wan.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):m("",!0)]),_:1})])):m("",!0),e.modelValue?.response?.success===!1?(s(),r("div",ht,[t(E,{closable:!1,class:"failure"},{template:d(()=>[t(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+l(e.$t("wan.name.failure")),1)]),default:d(()=>[c("p",_t,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("wan.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(y,{content:e.modelValue?.id},null,8,["content"])]),c("p",gt,[t(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),f(" "+l(e.$t("wan.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),t(y,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.elapsed?(s(),r("p",$t,[t(i,{icon:"fa-solid fa-clock",class:"mr-1"}),f(" "+l(e.$t("wan.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):m("",!0),c("p",vt,[t(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+l(e.$t("wan.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),t(y,{content:e.modelValue?.response?.trace_id},null,8,["content"])])]),_:1})])):m("",!0),e.modelValue?.response?.success===void 0?(s(),r("div",wt,[t(E,{closable:!1,class:"info"},{template:d(()=>[t(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+l(e.$t("wan.name.failure")),1)]),default:d(()=>[c("p",bt,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("wan.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(y,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):m("",!0)])])}const yt=w(xe,[["render",kt],["__scopeId","data-v-6d1d636e"]]),Vt=v({name:"RecentPanel",components:{TaskPreview:yt,BotPlaceholder:ae,NoTasks:le,ScrollList:H},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.wan?.tasks,items:this.$store.state.wan?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Et={key:0},It={key:2,class:"w-full h-full flex items-center justify-center"};function Tt(e,n,h,_,b,k){const u=o("bot-placeholder"),p=o("task-preview"),a=o("scroll-list"),g=o("no-tasks");return s(),r(I,null,[e.tasks?.items===void 0?(s(),r("div",Et,[t(u)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(s(),$(a,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:n[0]||(n[0]=i=>e.$emit("reach-top"))},{default:d(()=>[(s(!0),r(I,null,S(e.tasks?.items,i=>(s(),$(p,{key:i.id,"model-value":i},null,8,["model-value"]))),128))]),_:1},8,["loading"])):m("",!0),e.tasks?.items?.length===0?(s(),r("div",It,[t(g)])):m("",!0)],64)}const St=w(Vt,[["render",Tt]]),Ut=N("wan"),Lt=v({name:"WanIndex",components:{ConfigPanel:Ze,Layout:pe,RecentPanel:St},inject:["initialized"],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.wan?.status?.getApplications===D.Request},tasksLoading(){return this.$store.state.wan?.status?.getTasks===D.Request||this.fetchingTasks},credential(){return this.$store.state.wan.credential},config(){return this.$store.state.wan.config},application(){return this.$store.state.wan.application},tasks(){return this.$store.state.wan.tasks}},watch:{tasks:{handler(e,n){e?.items?.length>n?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await J({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("wan/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("wan/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:n=5,createdAtMin:h,createdAtMax:_}=e||{};console.debug("limit",n,"createdAtMin",h,"createdAtMax",_),this.fetchingTasks=!0;try{await this.$store.dispatch("wan/getTasks",{limit:n,createdAtMin:h,createdAtMax:_})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Ut},n=this.credential?.token;if(!n){console.error("no token specified");return}V.info(this.$t("wan.message.startingTask")),B("wan",F.generate(e,{token:n})).then(()=>{V.success(this.$t("wan.message.startTaskSuccess"))}).catch(h=>{h?.response?.data?.error?.code===x?V.error(this.$t("wan.message.usedUp")):V.error(this.$t("wan.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Ct(e,n,h,_,b,k){const u=o("config-panel"),p=o("recent-panel"),a=o("layout");return s(),$(a,null,{config:d(()=>[t(u,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:d(()=>[t(p,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const yo=w(Lt,[["render",Ct]]);export{yo as default};
1
+ import{F as C}from"./index.es-DCL3aYjw.js";import{E as T}from"./index-CXk4y1bt.js";import{E as M}from"./index-C2-gUTzR.js";import{d as v,H as r,E as c,z as L,C as t,y as d,D as o,q as s,F as l,O as I,N as S,x as $,I as f,J as m,M as O,Q as U}from"./vendor-vue-NSDaktjZ.js";import{G as w,bj as j,co as B,b2 as F,S as D,cp as N}from"./index-UEQ4C95J.js";import{a as q,b as z}from"./wan-DKq-jYOo.js";import{E as R,a as G}from"./index-D3Nml2aS.js";import{p as W}from"./pasteUploadMixin-BurWbGNQ.js";import{I as P,S as H,l as J}from"./pagination-wUSdmOzL.js";import{I as K}from"./ImagePreview-BID-4kFX.js";import{E as Q}from"./index-DKJuDgcJ.js";import{E as V}from"./index-B73VNuAm.js";import{E as X}from"./index-8otrg1ss.js";import{C as Y}from"./Consumption-DVBEzfCm.js";import{a as Z}from"./price-CabnHqB_.js";import{b as x}from"./errorCode-Cqj9Td_Z.js";import{C as ee}from"./CopyToClipboard-C2THHT8U.js";import{V as te}from"./VideoPlayer-B27B1Ug2.js";import{E as oe}from"./index-DYODEtlg.js";import{E as se}from"./index-BLdEuIsD.js";import{E as ne}from"./index-B3Az8tWL.js";import{B as ae}from"./BotPlaceholder-BeyeAf9f.js";import{N as le}from"./NoTasks-COJAQuGK.js";import"./use-form-item-CLq3ss4x.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./index-DJpzDqQ4.js";import"./typescript-tDSPj8Z9.js";import"./index-fxj2Ya9s.js";import"./strings-beZM2Y-f.js";import"./isEqual-Djnx406d.js";import"./_Uint8Array-CI8yFZ43.js";import"./castArray-mQ1tkxyC.js";import"./debounce-Dh8RqSlB.js";import"./_baseIteratee-BU-JT24z.js";import"./index-CqcFDQ_G.js";import"./index-CRa1r1FF.js";import"./_baseClone-I702BQXP.js";import"./_initCloneObject-DtaxLMaj.js";import"./index-CtWa2yYi.js";import"./vue-plyr-BO2nlN4c.js";import"./index-Btf_IFYC.js";const re=v({name:"LayoutWan",components:{ElDrawer:M,ElButton:T,FontAwesomeIcon:C},data(){return{drawer:!1}}}),ie={class:"main flex flex-row flex-1"},ce={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},de={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ue(e,n,h,_,b,k){const u=o("font-awesome-icon"),p=o("el-button"),a=o("el-drawer");return s(),r("div",ie,[c("div",ce,[L(e.$slots,"config",{},void 0,!0)]),c("div",de,[L(e.$slots,"result",{},void 0,!0)]),t(p,{circle:"",class:"menu",onClick:n[0]||(n[0]=g=>e.drawer=!0)},{default:d(()=>[t(u,{icon:"fa-solid fa-magic"})]),_:1}),t(a,{modelValue:e.drawer,"onUpdate:modelValue":n[1]||(n[1]=g=>e.drawer=g),direction:"ltr","with-header":!1,size:"340px"},{default:d(()=>[L(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const pe=w(re,[["render",ue],["__scopeId","data-v-37ba1764"]]),me=v({name:"ModelSelector",components:{ElSelect:G,ElOption:R},data(){return{}},computed:{options(){return[{value:"wan2.6-t2v",label:this.$t("wan.button.modelT2v")},{value:"wan2.6-i2v",label:this.$t("wan.button.modelI2v")},{value:"wan2.6-i2v-flash",label:this.$t("wan.button.modelI2vFlash")},{value:"wan2.6-r2v",label:this.$t("wan.button.modelR2v")}]},value:{get(){return this.$store.state.wan?.config?.model},set(e){this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,model:e})}}},mounted(){this.value||(this.value=q)}}),fe={class:"field"},he={class:"title font-bold"},_e={class:"float-left"};function ge(e,n,h,_,b,k){const u=o("el-option"),p=o("el-select");return s(),r("div",fe,[c("h2",he,l(e.$t("wan.name.model")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=a=>e.value=a),class:"value",placeholder:e.$t("wan.placeholder.select"),clearable:""},{default:d(()=>[(s(!0),r(I,null,S(e.options,a=>(s(),$(u,{key:a.value,label:a.label,value:a.value},{default:d(()=>[c("span",_e,l(a.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const $e=w(me,[["render",ge],["__scopeId","data-v-eb090beb"]]),ve="720p",we=v({name:"ResolutionSelector",components:{ElSelect:G,ElOption:R},computed:{options(){return[{value:"480p",label:this.$t("wan.name.resolution480p")},{value:"720p",label:this.$t("wan.name.resolution720p")},{value:"1080p",label:this.$t("wan.name.resolution1080p")}]},value:{get(){return this.$store.state.wan?.config?.resolution},set(e){this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,resolution:e})}}},mounted(){this.value||(this.value=ve)}}),be={class:"field"},ke={class:"title font-bold"},ye={class:"float-left"};function Ve(e,n,h,_,b,k){const u=o("el-option"),p=o("el-select");return s(),r("div",be,[c("h2",ke,l(e.$t("wan.name.resolution")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=a=>e.value=a),class:"value",placeholder:e.$t("wan.placeholder.select"),clearable:""},{default:d(()=>[(s(!0),r(I,null,S(e.options,a=>(s(),$(u,{key:a.value,label:a.label,value:a.value},{default:d(()=>[c("span",ye,l(a.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ee=w(we,[["render",Ve],["__scopeId","data-v-3e39f44e"]]),Ie=5,Te=v({name:"DurationSelector",components:{ElSelect:G,ElOption:R},computed:{options(){return[{value:5,label:this.$t("wan.name.duration5s")},{value:10,label:this.$t("wan.name.duration10s")},{value:15,label:this.$t("wan.name.duration15s")}]},value:{get(){return this.$store.state.wan?.config?.duration},set(e){this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,duration:e})}}},mounted(){this.value||(this.value=Ie)}}),Se={class:"field"},Ue={class:"title font-bold"},Le={class:"float-left"};function Ce(e,n,h,_,b,k){const u=o("el-option"),p=o("el-select");return s(),r("div",Se,[c("h2",Ue,l(e.$t("wan.name.duration")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=a=>e.value=a),class:"value",placeholder:e.$t("wan.placeholder.select"),clearable:""},{default:d(()=>[(s(!0),r(I,null,S(e.options,a=>(s(),$(u,{key:a.value,label:a.label,value:a.value},{default:d(()=>[c("span",Le,l(a.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Re=w(Te,[["render",Ce],["__scopeId","data-v-5f35a2cf"]]),Ge=v({name:"ImageUrlInput",components:{ElUpload:Q,ElButton:T,InfoIcon:P,ImagePreview:K},mixins:[W],data(){return{fileList:[],uploadUrl:j()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e.url).filter(e=>e!==void 0)},value:{get(){return this.$store.state.wan?.config?.image_url},set(){const e=this.urls?.[0];this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,image_url:e})}}},mounted(){this.value||(this.value=void 0),this.onSetImageUrl()},methods:{onExceed(){V.warning(this.$t("wan.message.uploadImageExceed"))},onError(){V.error(this.$t("wan.message.uploadImageError"))},async onRemove(){V.error(this.$t("wan.message.uploadImageError"))},onSetImageUrl(){const e=this.urls?.[0];this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,image_url:e})},async onSuccess(){this.onSetImageUrl()}}}),Ae={class:"relative"},De={class:"flex justify-between"},Pe={class:"flex justify-start items-center"},Me={class:"text-sm font-bold"};function Oe(e,n,h,_,b,k){const u=o("info-icon"),p=o("image-preview"),a=o("el-button"),g=o("el-upload");return s(),r("div",Ae,[c("div",De,[c("div",Pe,[c("span",Me,l(e.$t("wan.name.imageUrl")),1),t(u,{content:e.$t("wan.description.imageUrl"),class:"info"},null,8,["content"])])]),t(g,{"file-list":e.fileList,"onUpdate:fileList":n[0]||(n[0]=i=>e.fileList=i),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file","show-file-list":!0,limit:1,multiple:!1,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-remove":e.onRemove,"on-success":e.onSuccess,headers:e.headers},{file:d(({file:i})=>[i.url&&i.percentage!==void 0?(s(),$(p,{key:0,url:i.url,name:i.name,percentage:i.percentage,onRemove:y=>e.fileList.splice(e.fileList.indexOf(i),1)},null,8,["url","name","percentage","onRemove"])):m("",!0)]),default:d(()=>[t(a,{size:"small",type:"primary",class:"btn btn-upload",round:""},{default:d(()=>[f(l(e.$t("wan.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-remove","on-success","headers"])])}const je=w(Ge,[["render",Oe],["__scopeId","data-v-c9ebe1b1"]]),Be="",Fe=v({name:"PromptInput",components:{ElInput:X,InfoIcon:P},computed:{prompt:{get(){return this.$store.state.wan?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Be)}}),Ne={class:"field"},qe={class:"box"},ze={class:"title font-bold"};function We(e,n,h,_,b,k){const u=o("info-icon"),p=o("el-input");return s(),r("div",Ne,[c("div",qe,[c("h2",ze,l(e.$t("wan.name.prompt")),1),t(u,{content:e.$t("wan.description.prompt"),class:"info"},null,8,["content"])]),t(p,{modelValue:e.prompt,"onUpdate:modelValue":n[0]||(n[0]=a=>e.prompt=a),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("wan.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const He=w(Fe,[["render",We],["__scopeId","data-v-45557a2d"]]),Je=v({name:"PresetPanel",components:{ElButton:T,FontAwesomeIcon:C,PromptInput:He,ImageUrlInput:je,ModelSelector:$e,ResolutionSelector:Ee,DurationSelector:Re,Consumption:Y},emits:["generate"],computed:{config(){return this.$store.state.wan?.config},consumption(){return Z(this.config,this.service?.cost)},service(){return this.$store.state.wan?.service},supportsResolution(){const e=this.config?.model;return e==="wan2.6-t2v"||e==="wan2.6-i2v"||e==="wan2.6-i2v-flash"},supportsDuration(){return this.config?.model==="wan2.6-t2v"},supportsImageUrl(){const e=this.config?.model;return e==="wan2.6-i2v"||e==="wan2.6-i2v-flash"}},methods:{onGenerate(){this.$emit("generate")}}}),Ke={class:"flex flex-col h-full"},Qe={class:"flex-1 overflow-y-auto p-5"},Xe={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ye(e,n,h,_,b,k){const u=o("prompt-input"),p=o("model-selector"),a=o("resolution-selector"),g=o("duration-selector"),i=o("image-url-input"),y=o("consumption"),E=o("font-awesome-icon"),A=o("el-button");return s(),r("div",Ke,[c("div",Qe,[t(u,{class:"mb-4"}),t(p,{class:"mb-4"}),e.supportsResolution?(s(),$(a,{key:0,class:"mb-4"})):m("",!0),e.supportsDuration?(s(),$(g,{key:1,class:"mb-4"})):m("",!0),e.supportsImageUrl?(s(),$(i,{key:2,class:"mb-2"})):m("",!0)]),c("div",Xe,[t(y,{value:e.consumption,service:e.service},null,8,["value","service"]),t(A,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[t(E,{icon:"fa-solid fa-magic",class:"mr-2"}),f(" "+l(e.$t("wan.button.generate")),1)]),_:1},8,["onClick"])])])}const Ze=w(Je,[["render",Ye]]),xe=v({name:"TaskPreview",components:{ElImage:ne,CopyToClipboard:ee,FontAwesomeIcon:C,ElAlert:se,VideoPlayer:te,ElTooltip:oe,ElButton:T},props:{modelValue:{type:Object,required:!0}},setup(){return{WAN_LOGO:z}},computed:{application(){return this.$store.state.wan?.application},config(){return this.$store.state.wan?.config}},methods:{onDownload(e){console.debug("on download wan video",e),window.open(e,"_blank")}}}),et={class:"preview"},tt={class:"left"},ot={class:"main"},st={class:"bot"},nt={class:"datetime"},at={class:"info"},lt={key:0,class:"prompt mt-2"},rt={key:0},it={key:1},ct={key:0,class:U({content:!0,failed:!0})},dt={key:0,class:"mb-4"},ut={key:1,class:U({operations:!0,"mt-2":!0})},pt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},mt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ht={key:1,class:U({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"},$t={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},vt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},wt={key:2,class:U({content:!0})},bt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function kt(e,n,h,_,b,k){const u=o("el-image"),p=o("video-player"),a=o("el-button"),g=o("el-tooltip"),i=o("font-awesome-icon"),y=o("copy-to-clipboard"),E=o("el-alert");return s(),r("div",et,[c("div",tt,[t(u,{src:e.WAN_LOGO,class:"avatar"},null,8,["src"])]),c("div",ot,[c("div",st,[f(l(e.$t("wan.name.wanBot"))+" ",1),c("span",nt,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),c("div",at,[e.modelValue?.request?.prompt?(s(),r("p",lt,[f(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?m("",!0):(s(),r("span",rt," - ("+l(e.$t("wan.status.pending"))+") ",1)),e.modelValue?.response?.state==="processing"||e.modelValue?.response?.state==="pending"||e.modelValue?.response?.state==="running"?(s(),r("span",it," - ("+l(e.$t("wan.status.processing"))+") ",1)):m("",!0)])):m("",!0)]),e.modelValue?.response?.success===!0?(s(),r("div",ct,[e.modelValue?.response?.video_url?(s(),r("div",dt,[t(p,{src:e.modelValue?.response?.video_url},null,8,["src"])])):m("",!0),e.modelValue?.response?.video_url?(s(),r("div",ut,[t(g,{class:"box-item",effect:"dark",content:e.$t("wan.message.downloadVideo"),placement:"top-start"},{default:d(()=>[t(a,{type:"info",size:"small",class:"mb-2",onClick:n[0]||(n[0]=O(A=>e.onDownload(e.modelValue?.response?.video_url),["stop"]))},{default:d(()=>[f(l(e.$t("wan.button.download")),1)]),_:1})]),_:1},8,["content"])])):m("",!0),t(E,{closable:!1,class:"mt-2 success"},{default:d(()=>[e.modelValue?.request?.model?(s(),r("p",pt,[t(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+l(e.$t("wan.name.model"))+": "+l(e.modelValue?.request?.model)+" ",1),t(y,{content:e.modelValue?.id},null,8,["content"])])):m("",!0),c("p",mt,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("wan.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(y,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.elapsed?(s(),r("p",ft,[t(i,{icon:"fa-solid fa-clock",class:"mr-1"}),f(" "+l(e.$t("wan.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):m("",!0)]),_:1})])):m("",!0),e.modelValue?.response?.success===!1?(s(),r("div",ht,[t(E,{closable:!1,class:"failure"},{template:d(()=>[t(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+l(e.$t("wan.name.failure")),1)]),default:d(()=>[c("p",_t,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("wan.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(y,{content:e.modelValue?.id},null,8,["content"])]),c("p",gt,[t(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),f(" "+l(e.$t("wan.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),t(y,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.elapsed?(s(),r("p",$t,[t(i,{icon:"fa-solid fa-clock",class:"mr-1"}),f(" "+l(e.$t("wan.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):m("",!0),c("p",vt,[t(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+l(e.$t("wan.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),t(y,{content:e.modelValue?.response?.trace_id},null,8,["content"])])]),_:1})])):m("",!0),e.modelValue?.response?.success===void 0?(s(),r("div",wt,[t(E,{closable:!1,class:"info"},{template:d(()=>[t(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+l(e.$t("wan.name.failure")),1)]),default:d(()=>[c("p",bt,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("wan.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(y,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):m("",!0)])])}const yt=w(xe,[["render",kt],["__scopeId","data-v-6d1d636e"]]),Vt=v({name:"RecentPanel",components:{TaskPreview:yt,BotPlaceholder:ae,NoTasks:le,ScrollList:H},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.wan?.tasks,items:this.$store.state.wan?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Et={key:0},It={key:2,class:"w-full h-full flex items-center justify-center"};function Tt(e,n,h,_,b,k){const u=o("bot-placeholder"),p=o("task-preview"),a=o("scroll-list"),g=o("no-tasks");return s(),r(I,null,[e.tasks?.items===void 0?(s(),r("div",Et,[t(u)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(s(),$(a,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:n[0]||(n[0]=i=>e.$emit("reach-top"))},{default:d(()=>[(s(!0),r(I,null,S(e.tasks?.items,i=>(s(),$(p,{key:i.id,"model-value":i},null,8,["model-value"]))),128))]),_:1},8,["loading"])):m("",!0),e.tasks?.items?.length===0?(s(),r("div",It,[t(g)])):m("",!0)],64)}const St=w(Vt,[["render",Tt]]),Ut=N("wan"),Lt=v({name:"WanIndex",components:{ConfigPanel:Ze,Layout:pe,RecentPanel:St},inject:["initialized"],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.wan?.status?.getApplications===D.Request},tasksLoading(){return this.$store.state.wan?.status?.getTasks===D.Request||this.fetchingTasks},credential(){return this.$store.state.wan.credential},config(){return this.$store.state.wan.config},application(){return this.$store.state.wan.application},tasks(){return this.$store.state.wan.tasks}},watch:{tasks:{handler(e,n){e?.items?.length>n?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await J({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("wan/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("wan/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:n=5,createdAtMin:h,createdAtMax:_}=e||{};console.debug("limit",n,"createdAtMin",h,"createdAtMax",_),this.fetchingTasks=!0;try{await this.$store.dispatch("wan/getTasks",{limit:n,createdAtMin:h,createdAtMax:_})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Ut},n=this.credential?.token;if(!n){console.error("no token specified");return}V.info(this.$t("wan.message.startingTask")),B("wan",F.generate(e,{token:n})).then(()=>{V.success(this.$t("wan.message.startTaskSuccess"))}).catch(h=>{h?.response?.data?.error?.code===x?V.error(this.$t("wan.message.usedUp")):V.error(this.$t("wan.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Ct(e,n,h,_,b,k){const u=o("config-panel"),p=o("recent-panel"),a=o("layout");return s(),$(a,null,{config:d(()=>[t(u,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:d(()=>[t(p,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const yo=w(Lt,[["render",Ct]]);export{yo as default};
@@ -1 +1 @@
1
- import{F as q}from"./index.es-D472pU9k.js";import{E as P}from"./index-Ckoh5GRm.js";import{E as oe}from"./index-BJNhtEZy.js";import{d as k,H as c,E as l,z as U,C as s,y as $,D as a,q as n,F as r,I as g,O as y,N as A,J as v,x as E,M as ae,Q as D}from"./vendor-vue-NSDaktjZ.js";import{G as S,de as O,df as R,dg as j,dh as L,di as G,dj as W,dk as F,dl as H,dm as J,dn as Q,bj as ne,dp as re,dq as K,dr as le,ds as ie,dt as ce,du as Z,dv as de,dw as me,dx as Y,co as ue,S as X,cp as pe}from"./index-3-aLpRUB.js";import{I,S as fe,l as _e}from"./pagination-DXmJ4BvP.js";import{E as ge}from"./index-MJwFr5pt.js";import{p as he}from"./pasteUploadMixin-BurWbGNQ.js";import{I as ee}from"./ImagePreview-CAQ3njUm.js";import{E as $e}from"./index-CmCpa2Pb.js";import{E as z}from"./index-B-o8xgtM.js";import{C as ve}from"./Consumption-BR_5gQEP.js";import{a as be}from"./price-BXhkc4WG.js";import{E as B,a as x,b as Ee}from"./index-B92A7jKd.js";import{E as ke}from"./index-CATKuMBg.js";import{E as N}from"./index-DHPLfqr5.js";import{E as Se}from"./index-Bo6wjGF_.js";import{b as ye}from"./errorCode-Cqj9Td_Z.js";import{s as we}from"./seedream-BEbuV2yj.js";import{C as Ie}from"./CopyToClipboard-DsvxywqB.js";import{I as Ae}from"./ImageWrapper-BuGClxW3.js";import{E as Ve}from"./index-CpxfFztz.js";import{E as ze}from"./index-CeOrxb2Y.js";import{E as Me}from"./index-CCC7Iud0.js";import{B as Te}from"./BotPlaceholder-CypCpXTJ.js";import{N as Re}from"./NoTasks-BEMX_TrD.js";import"./use-form-item-BIjUa6ZN.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./typescript-COBnNpmt.js";import"./index-Bre-Bh8H.js";import"./index-n4JFW6cj.js";import"./index-CxRyuX-l.js";import"./_baseClone-fkn69WCu.js";import"./_Uint8Array-IvXV4zMb.js";import"./_initCloneObject-CLMgxJ_1.js";import"./isEqual-Bo54SuCQ.js";import"./index-CSM8ZMaI.js";import"./strings-beZM2Y-f.js";import"./castArray-s_94RxeJ.js";import"./debounce-CxI-RAFA.js";import"./_baseIteratee-BdprhHej.js";import"./index-7bTsjUXw.js";import"./validator-DvgC3znr.js";import"./index-Cu41y2Fl.js";import"./index-C5vqfEbP.js";const Le=k({name:"LayoutSeedream",components:{ElDrawer:oe,ElButton:P,FontAwesomeIcon:q},data(){return{drawer:!1}}}),De={class:"main flex flex-row flex-1"},Ce={class:"config w-[320px] h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},qe={class:"result h-full p-6 flex-1 flex flex-col bg-[var(--app-content-bg)]"};function Pe(e,t,d,o,m,p){const u=a("font-awesome-icon"),f=a("el-button"),i=a("el-drawer");return n(),c("div",De,[l("div",Ce,[U(e.$slots,"config",{},void 0,!0)]),l("div",qe,[U(e.$slots,"result",{},void 0,!0)]),s(f,{circle:"",class:"menu",onClick:t[0]||(t[0]=_=>e.drawer=!0)},{default:$(()=>[s(u,{icon:"fa-solid fa-magic"})]),_:1}),s(i,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=_=>e.drawer=_),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:$(()=>[U(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Ue=S(Le,[["render",Pe],["__scopeId","data-v-614f7afe"]]),Ge="",Fe=k({name:"SeedreamPromptInput",components:{ElInput:ge,InfoIcon:I},computed:{prompt:{get(){return this.$store.state.seedream?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Ge)}}),Oe={class:"field"},je={class:"box"},Be={class:"title font-bold"};function xe(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-input");return n(),c("div",Oe,[l("div",je,[l("h2",Be,r(e.$t("seedream.name.prompt")),1),s(u,{content:e.$t("seedream.description.prompt"),class:"info"},null,8,["content"])]),s(f,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=i=>e.prompt=i),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("seedream.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ne=S(Fe,[["render",xe],["__scopeId","data-v-5559520a"]]),We={image:!0,imageRequired:!1,sizeTiers:[O,R,j,L],sizeAdaptive:!0,sizePixel:!0,sizePixelDefault:void 0,groupGeneration:!1,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};function w(e){switch(e){case Q:return{image:!0,imageRequired:!1,sizeTiers:[R,j,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!0,tools:!0};case J:return{image:!0,imageRequired:!1,sizeTiers:[R,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case H:return{image:!0,imageRequired:!1,sizeTiers:[O,R,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case F:return{image:!1,imageRequired:!1,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:"1024x1024",groupGeneration:!1,seed:!0,guidanceScale:!0,guidanceScaleDefault:W[F],outputFormat:!1,tools:!1};case G:return{image:!0,imageRequired:!0,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:"1024x1024",groupGeneration:!1,seed:!1,guidanceScale:!0,guidanceScaleDefault:W[G],outputFormat:!1,tools:!1};default:return We}}const Ke=[O,R,j,L];function Ze(e,t){if(!e)return[];const d=t.model??e.model;if(!d)return[];const o=w(d),m=[];Array.isArray(e.image)&&e.image.length>0&&!o.image&&m.push({field:"image",i18nLabel:"seedream.name.imageUrls"});const p=typeof e.size=="string"?e.size:void 0;if(p){const u=p.toUpperCase();Ke.includes(u)&&!o.sizeTiers.includes(u)?m.push({field:"size",i18nLabel:"seedream.name.size"}):p==="adaptive"&&!o.sizeAdaptive&&m.push({field:"size",i18nLabel:"seedream.name.size"})}return e.sequential_image_generation==="auto"&&!o.groupGeneration&&m.push({field:"sequential_image_generation",i18nLabel:"seedream.name.maxImages"}),e.seed!==void 0&&e.seed!==null&&!o.seed&&m.push({field:"seed",i18nLabel:"seedream.name.seed"}),e.guidance_scale!==void 0&&e.guidance_scale!==null&&!o.guidanceScale&&m.push({field:"guidance_scale",i18nLabel:"seedream.name.guidanceScale"}),e.output_format&&!o.outputFormat&&m.push({field:"output_format",i18nLabel:"seedream.name.outputFormat"}),Array.isArray(e.tools)&&e.tools.length>0&&!o.tools&&m.push({field:"tools",i18nLabel:"seedream.name.tools"}),m}function Xe(e,t,d){const o={...e},m=d.model??e.model,p=w(m);for(const u of t)switch(u.field){case"image":delete o.image;break;case"size":p.sizePixelDefault?o.size=p.sizePixelDefault:delete o.size;break;case"sequential_image_generation":o.sequential_image_generation="disabled",delete o.sequential_image_generation_options;break;case"seed":delete o.seed;break;case"guidance_scale":delete o.guidance_scale;break;case"output_format":delete o.output_format;break;case"tools":delete o.tools;break}return o}const He=k({name:"SeedreamImageInput",components:{ElUpload:$e,ElButton:P,InfoIcon:I,ImagePreview:ee,FontAwesomeIcon:q},mixins:[he],data(){return{fileList:[],uploadUrl:ne()+"/api/v1/files/",suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.seedream?.config?.image},model(){return this.$store.state.seedream?.config?.model},supported(){return w(this.model).image}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const o=(this.fileList||[]).filter(m=>!m?.response?.file_url);this.fileList=o.length?o:[];return}const t=[];e.forEach(o=>{const m=this.fileList.find(p=>p?.response?.file_url===o||p?.url===o);m?t.push(m):t.push({name:o.split("/").pop()||o,url:o,status:"success",percentage:100,response:{file_url:o}})}),(this.fileList||[]).filter(o=>!o?.response?.file_url).forEach(o=>{t.some(p=>p===o||p?.url===o?.url||p?.response?.file_url===o?.response?.file_url)||t.push(o)}),this.fileList=t}}},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url=="string"&&e.url.startsWith("blob:"))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImages()},onExceed(){z.warning(this.$t("seedream.message.uploadImageExceed"))},onError(){z.error(this.$t("seedream.message.uploadImageError"))},onSetImages(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,image:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImages()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url=="string"&&t.url.startsWith("blob:"))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImages()}}}),Je={key:0},Qe={class:"field"},Ye={class:"label"},et={class:"box"},tt={class:"title font-bold"},st={class:"value"},ot={class:"file-list mt-2 flex flex-wrap gap-[10px]"};function at(e,t,d,o,m,p){const u=a("info-icon"),f=a("font-awesome-icon"),i=a("el-button"),_=a("el-upload"),h=a("image-preview");return e.supported?(n(),c("div",Je,[l("div",Qe,[l("div",Ye,[l("div",et,[l("h2",tt,r(e.$t("seedream.name.imageUrls")),1),s(u,{content:e.$t("seedream.description.imageUrls"),class:"info"},null,8,["content"])])]),l("div",st,[s(_,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=b=>e.fileList=b),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",limit:14,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:$(()=>[s(i,{size:"small",type:"primary",round:""},{default:$(()=>[s(f,{icon:"fa-solid fa-upload",class:"mr-1"}),g(" "+r(e.$t("seedream.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"])])]),l("div",ot,[(n(!0),c(y,null,A(e.fileList,(b,M)=>(n(),E(h,{key:b.uid||b?.response?.file_url||b.url||M,url:b.url||b?.response?.file_url,name:b.name,percentage:b.percentage,onRemove:C=>e.onRemovePreview(M,b)},null,8,["url","name","percentage","onRemove"]))),128))])])):v("",!0)}const nt=S(He,[["render",at],["__scopeId","data-v-2aa4829c"]]),rt=k({name:"SeedreamModelSelector",components:{ElSelect:x,ElOption:B,InfoIcon:I},data(){return{revertKey:0,options:[{value:Q,label:this.$t("seedream.model.seedream50")},{value:J,label:this.$t("seedream.model.seedream45")},{value:H,label:this.$t("seedream.model.seedream40")},{value:F,label:this.$t("seedream.model.seedream30t2i")},{value:G,label:this.$t("seedream.model.seededit30i2i")}]}},computed:{value(){return this.$store.state.seedream?.config?.model}},mounted(){this.value||this.applyModel(re)},methods:{async onChange(e){const t=this.$store.state.seedream?.config||{},d=Ze(t,{model:e});if(d.length===0){this.applyModel(e);return}const o=d.map(m=>this.$t(m.i18nLabel)).join("、");try{await ke.confirm(this.$t("seedream.message.featureNotSupportedBody",{fields:o}),this.$t("seedream.message.featureNotSupportedTitle"),{confirmButtonText:this.$t("seedream.button.confirmContinue"),cancelButtonText:this.$t("seedream.button.cancelSwitch"),type:"warning"});const m=Xe({...t,model:e},d,{model:e});this.$store.commit("seedream/setConfig",m),z.success(this.$t("seedream.message.featureRemovedNotice",{fields:o}))}catch{this.revertKey+=1}},applyModel(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,model:e})}}}),lt={class:"field"},it={class:"label"},ct={class:"box"},dt={class:"title font-bold"};function mt(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-option"),i=a("el-select");return n(),c("div",lt,[l("div",it,[l("div",ct,[l("h2",dt,r(e.$t("seedream.name.model")),1),s(u,{content:e.$t("seedream.description.model"),class:"info"},null,8,["content"])])]),(n(),E(i,{key:e.revertKey,"model-value":e.value,class:"value",placeholder:e.$t("seedream.placeholder.select"),onChange:e.onChange},{default:$(()=>[(n(!0),c(y,null,A(e.options,_=>(n(),E(f,{key:_.value,label:_.label,value:_.value},null,8,["label","value"]))),128))]),_:1},8,["model-value","placeholder","onChange"]))])}const ut=S(rt,[["render",mt],["__scopeId","data-v-8892a12c"]]),pt=k({name:"SeedreamSizeSelector",components:{ElSelect:x,ElOption:B,ElOptionGroup:Ee,InfoIcon:I},data(){return{SEEDREAM_SIZE_ADAPTIVE:ie,pixelOptions:le}},computed:{model(){return this.$store.state.seedream?.config?.model},capabilities(){return w(this.model)},value:{get(){return this.$store.state.seedream?.config?.size},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,size:e})}}},watch:{model:{immediate:!0,handler(){if(this.value)return;const e=this.capabilities;e.sizeTiers.length?this.value=e.sizeTiers.includes(K)?K:e.sizeTiers[0]:e.sizePixelDefault&&(this.value=e.sizePixelDefault)}}}}),ft={class:"field"},_t={class:"label"},gt={class:"box"},ht={class:"title font-bold"};function $t(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-option"),i=a("el-option-group"),_=a("el-select");return n(),c("div",ft,[l("div",_t,[l("div",gt,[l("h2",ht,r(e.$t("seedream.name.size")),1),s(u,{content:e.$t("seedream.description.size"),class:"info"},null,8,["content"])])]),s(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=h=>e.value=h),class:"value",placeholder:e.$t("seedream.placeholder.size"),filterable:"","allow-create":"","default-first-option":""},{default:$(()=>[e.capabilities.sizeTiers.length?(n(),E(i,{key:0,label:e.$t("seedream.size.group.tier")},{default:$(()=>[(n(!0),c(y,null,A(e.capabilities.sizeTiers,h=>(n(),E(f,{key:h,label:h,value:h},null,8,["label","value"]))),128))]),_:1},8,["label"])):v("",!0),e.capabilities.sizeAdaptive?(n(),E(i,{key:1,label:e.$t("seedream.size.group.adaptive")},{default:$(()=>[(n(),E(f,{key:e.SEEDREAM_SIZE_ADAPTIVE,label:e.$t("seedream.size.adaptive"),value:e.SEEDREAM_SIZE_ADAPTIVE},null,8,["label","value"]))]),_:1},8,["label"])):v("",!0),s(i,{label:e.$t("seedream.size.group.pixel")},{default:$(()=>[(n(!0),c(y,null,A(e.pixelOptions,h=>(n(),E(f,{key:h.value,label:`${h.value} (${h.ratio})`,value:h.value},null,8,["label","value"]))),128))]),_:1},8,["label"])]),_:1},8,["modelValue","placeholder"])])}const vt=S(pt,[["render",$t],["__scopeId","data-v-dd7bd021"]]),bt=k({name:"SeedreamMaxImagesSelector",components:{ElInputNumber:N,InfoIcon:I},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).groupGeneration},referenceImageCount(){const e=this.config?.image;return Array.isArray(e)?e.length:0},effectiveMax(){const e=Z-this.referenceImageCount;return Math.max(1,Math.min(Z,e))},value:{get(){const e=this.config?.sequential_image_generation_options?.max_images;return typeof e=="number"&&e>=1?e:ce},set(e){const t={...this.config||{}},d=Math.max(1,Math.min(this.effectiveMax,Math.floor(e||1)));d>1?(t.sequential_image_generation="auto",t.sequential_image_generation_options={...t.sequential_image_generation_options||{},max_images:d}):(t.sequential_image_generation="disabled",t.sequential_image_generation_options&&delete t.sequential_image_generation_options),this.$store.commit("seedream/setConfig",t)}}},watch:{effectiveMax(e){this.value>e&&(this.value=e)}}}),Et={key:0,class:"field"},kt={class:"label"},St={class:"box"},yt={class:"title font-bold"},wt={class:"value"};function It(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",Et,[l("div",kt,[l("div",St,[l("h2",yt,r(e.$t("seedream.name.maxImages")),1),s(u,{content:e.$t("seedream.description.maxImages"),class:"info"},null,8,["content"])])]),l("div",wt,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),min:1,max:e.effectiveMax,step:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue","max"])])])):v("",!0)}const At=S(bt,[["render",It],["__scopeId","data-v-f079fd20"]]),Vt=k({name:"SeedreamOutputFormatSelector",components:{ElSelect:x,ElOption:B,InfoIcon:I},data(){return{options:[...de]}},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).outputFormat},value:{get(){return this.config?.output_format},set(e){const t={...this.config||{}};t.output_format=e,this.$store.commit("seedream/setConfig",t)}}}}),zt={key:0,class:"field"},Mt={class:"label"},Tt={class:"box"},Rt={class:"title font-bold"};function Lt(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-option"),i=a("el-select");return e.supported?(n(),c("div",zt,[l("div",Mt,[l("div",Tt,[l("h2",Rt,r(e.$t("seedream.name.outputFormat")),1),s(u,{content:e.$t("seedream.description.outputFormat"),class:"info"},null,8,["content"])])]),s(i,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=_=>e.value=_),class:"value",placeholder:e.$t("seedream.placeholder.select")},{default:$(()=>[(n(!0),c(y,null,A(e.options,_=>(n(),E(f,{key:_,label:_.toUpperCase(),value:_},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])):v("",!0)}const Dt=S(Vt,[["render",Lt],["__scopeId","data-v-69ea4c07"]]),Ct=k({name:"SeedreamSeedInput",components:{ElInputNumber:N,InfoIcon:I},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).seed},value:{get(){const e=this.config?.seed;return typeof e=="number"?e:-1},set(e){const t={...this.config||{}},d=typeof e=="number"&&Number.isInteger(e)?e:-1;t.seed=d,this.$store.commit("seedream/setConfig",t)}}}}),qt={key:0,class:"field"},Pt={class:"label"},Ut={class:"box"},Gt={class:"title font-bold"},Ft={class:"value"};function Ot(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",qt,[l("div",Pt,[l("div",Ut,[l("h2",Gt,r(e.$t("seedream.name.seed")),1),s(u,{content:e.$t("seedream.description.seed"),class:"info"},null,8,["content"])])]),l("div",Ft,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),min:-1,max:2147483647,step:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue"])])])):v("",!0)}const jt=S(Ct,[["render",Ot],["__scopeId","data-v-10cdc1e0"]]),Bt=k({name:"SeedreamGuidanceScaleInput",components:{ElInputNumber:N,InfoIcon:I},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).guidanceScale},defaultValue(){return w(this.config?.model).guidanceScaleDefault??2.5},value:{get(){const e=this.config?.guidance_scale;return typeof e=="number"?e:this.defaultValue},set(e){const t={...this.config||{}},d=typeof e=="number"&&e>=1&&e<=10?e:this.defaultValue;t.guidance_scale=d,this.$store.commit("seedream/setConfig",t)}}}}),xt={key:0,class:"field"},Nt={class:"label"},Wt={class:"box"},Kt={class:"title font-bold"},Zt={class:"value"};function Xt(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",xt,[l("div",Nt,[l("div",Wt,[l("h2",Kt,r(e.$t("seedream.name.guidanceScale")),1),s(u,{content:e.$t("seedream.description.guidanceScale"),class:"info"},null,8,["content"])])]),l("div",Zt,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),min:1,max:10,step:.1,precision:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue"])])])):v("",!0)}const Ht=S(Bt,[["render",Xt],["__scopeId","data-v-7386f064"]]),Jt=k({name:"SeedreamWatermarkSwitch",components:{ElSwitch:Se,InfoIcon:I},computed:{value:{get(){const e=this.$store.state.seedream?.config?.watermark;return e===void 0?me:!!e},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,watermark:e})}}}}),Qt={class:"field"},Yt={class:"label"},es={class:"box"},ts={class:"title font-bold"},ss={class:"value"};function os(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-switch");return n(),c("div",Qt,[l("div",Yt,[l("div",es,[l("h2",ts,r(e.$t("seedream.name.watermark")),1),s(u,{content:e.$t("seedream.description.watermark"),class:"info"},null,8,["content"])])]),l("div",ss,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i)},null,8,["modelValue"])])])}const as=S(Jt,[["render",os],["__scopeId","data-v-9e2abf0f"]]),ns=k({name:"SeedreamConfigPanel",components:{ElButton:P,FontAwesomeIcon:q,PromptInput:Ne,Consumption:ve,ImageInput:nt,ModelSelector:ut,SizeSelector:vt,MaxImagesSelector:At,OutputFormatSelector:Dt,SeedInput:jt,GuidanceScaleInput:Ht,WatermarkSwitch:as},emits:["generate"],computed:{config(){return this.$store.state.seedream?.config},consumption(){const e={...this.config||{}},t=Array.isArray(e?.image)&&e.image.length>0,d=e?.sequential_image_generation==="auto"?Math.max(1,Math.floor(e?.sequential_image_generation_options?.max_images||1)):1;return be({...e,action:t?"edit":"generate",model:Y(e?.model),count:d},this.service?.cost)},service(){return this.$store.state.seedream?.service}},methods:{onGenerate(){this.$emit("generate")}}}),rs={class:"flex flex-col h-full"},ls={class:"flex-1 overflow-y-auto p-5"},is={class:"flex flex-col items-center justify-center px-5 pb-5"};function cs(e,t,d,o,m,p){const u=a("model-selector"),f=a("size-selector"),i=a("max-images-selector"),_=a("output-format-selector"),h=a("seed-input"),b=a("guidance-scale-input"),M=a("watermark-switch"),C=a("prompt-input"),V=a("image-input"),T=a("consumption"),te=a("font-awesome-icon"),se=a("el-button");return n(),c("div",rs,[l("div",ls,[s(u,{class:"mb-4"}),s(f,{class:"mb-4"}),s(i,{class:"mb-4"}),s(_,{class:"mb-4"}),s(h,{class:"mb-4"}),s(b,{class:"mb-4"}),s(M,{class:"mb-4"}),s(C,{class:"mb-4"}),s(V,{class:"mb-4"})]),l("div",is,[s(T,{value:e.consumption,service:e.service},null,8,["value","service"]),s(se,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:$(()=>[s(te,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+r(e.$t("seedream.button.generate")),1)]),_:1},8,["onClick"])])])}const ds=S(ns,[["render",cs]]),ms=k({name:"SeedreamTaskPreview",components:{ElImage:Me,CopyToClipboard:Ie,FontAwesomeIcon:q,ElAlert:ze,ImageWrapper:Ae,ElButton:P,ElTooltip:Ve,ImagePreview:ee},props:{modelValue:{type:Object,required:!0}},computed:{isEdit(){return Array.isArray(this.modelValue?.request?.image)&&(this.modelValue?.request?.image?.length||0)>0},images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{shortModel(e){return Y(e)||e},onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.seedream?.config||{}};t.image=[e],this.$store.commit("seedream/setConfig",t)}}}),us={class:"preview"},ps={class:"left"},fs={class:"main"},_s={class:"bot"},gs={class:"datetime"},hs={class:"info"},$s={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},vs={key:1,class:"prompt mt-2"},bs={key:0},Es={key:0,class:D({content:!0})},ks={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ss={key:1,class:D({content:!0,failed:!0})},ys={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},ws={class:D({operations:!0,"mt-2":!0,"mb-2":!0})},Is={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},As={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Vs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},zs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ms={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ts={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Rs={key:2,class:D({content:!0})},Ls={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ds={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Cs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ps={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Us={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gs={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Fs={key:3,class:D({content:!0})},Os={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},js={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Bs(e,t,d,o,m,p){const u=a("el-image"),f=a("image-preview"),i=a("font-awesome-icon"),_=a("copy-to-clipboard"),h=a("el-alert"),b=a("image-wrapper"),M=a("el-button"),C=a("el-tooltip");return n(),c("div",us,[l("div",ps,[s(u,{src:"https://cdn.acedata.cloud/9egrbn.png",class:"avatar"})]),l("div",fs,[l("div",_s,[g(r(e.$t("seedream.name.seedreamBot"))+" ",1),l("span",gs,r(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",hs,[Array.isArray(e.modelValue?.request?.image)&&e.modelValue?.request?.image.length>0?(n(),c("div",$s,[(n(!0),c(y,null,A(e.modelValue?.request?.image,(V,T)=>(n(),E(f,{key:T,url:V,name:`image-${T+1}`,closable:!1},null,8,["url","name"]))),128))])):v("",!0),e.modelValue?.request?.prompt?(n(),c("p",vs,[g(r(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?v("",!0):(n(),c("span",bs," - ("+r(e.$t("seedream.status.pending"))+") ",1))])):v("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(n(),c("div",Ss,[l("div",ys,[(n(!0),c(y,null,A(e.images,(V,T)=>(n(),E(b,{key:T,src:V?.image_url,"raw-src":V?.image_url},null,8,["src","raw-src"]))),128))]),l("div",ws,[s(C,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:$(()=>[s(M,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=ae(V=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:$(()=>[g(r(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),s(h,{closable:!1,class:"mt-2 success"},{default:$(()=>[e.modelValue?.request?.model?(n(),c("p",Is,[s(i,{icon:"fa-solid fa-cube",class:"mr-1"}),g(" "+r(e.$t("seedream.name.model"))+": "+r(e.shortModel(e.modelValue?.request?.model)),1)])):v("",!0),e.modelValue?.request?.size?(n(),c("p",As,[s(i,{icon:"fa-solid fa-image",class:"mr-1"}),g(" "+r(e.$t("seedream.name.size"))+": "+r(e.modelValue?.request?.size),1)])):v("",!0),l("p",Vs,[s(i,{icon:"fa-solid fa-bolt",class:"mr-1"}),g(" "+r(e.$t("seedream.name.task"))+": "+r(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),l("p",zs,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(n(),c("p",Ms,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.name.elapsed"))+": "+r(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(n(),c("p",Ts,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(n(),c("div",Rs,[s(h,{closable:!1,class:"failure"},{template:$(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+r(e.$t("seedream.name.failure")),1)]),default:$(()=>[e.modelValue?.request?.model?(n(),c("p",Ls,[s(i,{icon:"fa-solid fa-cube",class:"mr-1"}),g(" "+r(e.$t("seedream.name.model"))+": "+r(e.shortModel(e.modelValue?.request?.model)),1)])):v("",!0),e.modelValue?.request?.size?(n(),c("p",Ds,[s(i,{icon:"fa-solid fa-image",class:"mr-1"}),g(" "+r(e.$t("seedream.name.size"))+": "+r(e.modelValue?.request?.size),1)])):v("",!0),l("p",Cs,[s(i,{icon:"fa-solid fa-bolt",class:"mr-1"}),g(" "+r(e.$t("seedream.name.task"))+": "+r(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),l("p",qs,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.error?.message?(n(),c("p",Ps,[s(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+r(e.$t("seedream.name.failureReason"))+": "+r(e.modelValue?.response?.error?.message)+" ",1),s(_,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])])):v("",!0),e.modelValue?.elapsed?(n(),c("p",Us,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.name.elapsed"))+": "+r(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(n(),c("p",Gs,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):v("",!0)]),_:1})])):(n(),c("div",Fs,[s(h,{closable:!1,class:"info"},{template:$(()=>[s(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+r(e.$t("seedream.name.status")),1)]),default:$(()=>[l("p",Os,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),c("p",js,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):v("",!0)]),_:1})])):(n(),c("div",Es,[s(h,{closable:!1,class:"info"},{template:$(()=>[s(i,{icon:"fa-regular fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.status.pending")),1)]),default:$(()=>[l("p",ks,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})]))])])}const xs=S(ms,[["render",Bs],["__scopeId","data-v-0dfc6a09"]]),Ns=k({name:"SeedreamRecentPanel",components:{TaskPreview:xs,BotPlaceholder:Te,NoTasks:Re,ScrollList:fe},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],computed:{tasks(){return{...this.$store.state.seedream?.tasks,items:this.$store.state.seedream?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Ws={key:0},Ks={key:2,class:"w-full h-full flex items-center justify-center"};function Zs(e,t,d,o,m,p){const u=a("bot-placeholder"),f=a("task-preview"),i=a("scroll-list"),_=a("no-tasks");return n(),c(y,null,[e.tasks?.items===void 0?(n(),c("div",Ws,[s(u)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),E(i,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=h=>e.$emit("reach-top"))},{default:$(()=>[(n(!0),c(y,null,A(e.tasks?.items,h=>(n(),E(f,{key:h.id,"model-value":h},null,8,["model-value"]))),128))]),_:1},8,["loading"])):v("",!0),e.tasks?.items?.length===0?(n(),c("div",Ks,[s(_)])):v("",!0)],64)}const Xs=S(Ns,[["render",Zs]]),Hs=pe("seedream"),Js=k({name:"SeedreamIndex",components:{ConfigPanel:ds,Layout:Ue,RecentPanel:Xs},inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.seedream?.status?.getApplications===X.Request},tasksLoading(){return this.$store.state.seedream?.status?.getTasks===X.Request},credential(){return this.$store.state.seedream?.credential},config(){return this.$store.state.seedream?.config},application(){return this.$store.state.seedream?.application},tasks(){return this.$store.state.seedream?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await _e({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("seedream/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("seedream/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=20,createdAtMin:d,createdAtMax:o}=e||{};console.debug("limit",t,"createdAtMin",d,"createdAtMax",o),await this.$store.dispatch("seedream/getTasks",{limit:t,createdAtMin:d,createdAtMax:o})},async onGenerate(){const e={...this.config||{}};!(Array.isArray(e?.image)&&e.image.length>0)&&"image"in e&&delete e.image,e?.size||delete e.size;const d={...e,callback_url:Hs},o=this.credential?.token;if(!o){console.error("no token specified");return}z.info(this.$t("seedream.message.startingTask")),ue("seedream",we.generate(d,{token:o})).then(()=>{z.success(this.$t("seedream.message.startTaskSuccess"))}).catch(m=>{const p=m?.response?.data;p?.error?.code===ye?z.error(this.$t("seedream.message.usedUp")):z.error(this.$t("seedream.message.startTaskFailed")+(p?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Qs(e,t,d,o,m,p){const u=a("config-panel"),f=a("recent-panel"),i=a("layout");return n(),E(i,null,{config:$(()=>[s(u,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:$(()=>[s(f,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Zo=S(Js,[["render",Qs]]);export{Zo as default};
1
+ import{F as q}from"./index.es-DCL3aYjw.js";import{E as P}from"./index-CXk4y1bt.js";import{E as oe}from"./index-C2-gUTzR.js";import{d as k,H as c,E as l,z as U,C as s,y as $,D as a,q as n,F as r,I as g,O as y,N as A,J as v,x as E,M as ae,Q as D}from"./vendor-vue-NSDaktjZ.js";import{G as S,de as O,df as R,dg as j,dh as L,di as G,dj as W,dk as F,dl as H,dm as J,dn as Q,bj as ne,dp as re,dq as K,dr as le,ds as ie,dt as ce,du as Z,dv as de,dw as me,dx as Y,co as ue,S as X,cp as pe}from"./index-UEQ4C95J.js";import{I,S as fe,l as _e}from"./pagination-wUSdmOzL.js";import{E as ge}from"./index-8otrg1ss.js";import{p as he}from"./pasteUploadMixin-BurWbGNQ.js";import{I as ee}from"./ImagePreview-BID-4kFX.js";import{E as $e}from"./index-DKJuDgcJ.js";import{E as z}from"./index-B73VNuAm.js";import{C as ve}from"./Consumption-DVBEzfCm.js";import{a as be}from"./price-CabnHqB_.js";import{E as B,a as x,b as Ee}from"./index-D3Nml2aS.js";import{E as ke}from"./index-Cf8vZqdt.js";import{E as N}from"./index-CUVDfnmG.js";import{E as Se}from"./index-C46TTxpf.js";import{b as ye}from"./errorCode-Cqj9Td_Z.js";import{s as we}from"./seedream-Co0VK0Ot.js";import{C as Ie}from"./CopyToClipboard-C2THHT8U.js";import{I as Ae}from"./ImageWrapper-J09Vd3aW.js";import{E as Ve}from"./index-DYODEtlg.js";import{E as ze}from"./index-BLdEuIsD.js";import{E as Me}from"./index-B3Az8tWL.js";import{B as Te}from"./BotPlaceholder-BeyeAf9f.js";import{N as Re}from"./NoTasks-COJAQuGK.js";import"./use-form-item-CLq3ss4x.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./typescript-tDSPj8Z9.js";import"./index-fxj2Ya9s.js";import"./index-CtWa2yYi.js";import"./index-CRa1r1FF.js";import"./_baseClone-I702BQXP.js";import"./_Uint8Array-CI8yFZ43.js";import"./_initCloneObject-DtaxLMaj.js";import"./isEqual-Djnx406d.js";import"./index-DJpzDqQ4.js";import"./strings-beZM2Y-f.js";import"./castArray-mQ1tkxyC.js";import"./debounce-Dh8RqSlB.js";import"./_baseIteratee-BU-JT24z.js";import"./index-CqcFDQ_G.js";import"./validator-CmOZ_UpT.js";import"./index-Cu41y2Fl.js";import"./index-Btf_IFYC.js";const Le=k({name:"LayoutSeedream",components:{ElDrawer:oe,ElButton:P,FontAwesomeIcon:q},data(){return{drawer:!1}}}),De={class:"main flex flex-row flex-1"},Ce={class:"config w-[320px] h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},qe={class:"result h-full p-6 flex-1 flex flex-col bg-[var(--app-content-bg)]"};function Pe(e,t,d,o,m,p){const u=a("font-awesome-icon"),f=a("el-button"),i=a("el-drawer");return n(),c("div",De,[l("div",Ce,[U(e.$slots,"config",{},void 0,!0)]),l("div",qe,[U(e.$slots,"result",{},void 0,!0)]),s(f,{circle:"",class:"menu",onClick:t[0]||(t[0]=_=>e.drawer=!0)},{default:$(()=>[s(u,{icon:"fa-solid fa-magic"})]),_:1}),s(i,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=_=>e.drawer=_),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:$(()=>[U(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Ue=S(Le,[["render",Pe],["__scopeId","data-v-614f7afe"]]),Ge="",Fe=k({name:"SeedreamPromptInput",components:{ElInput:ge,InfoIcon:I},computed:{prompt:{get(){return this.$store.state.seedream?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Ge)}}),Oe={class:"field"},je={class:"box"},Be={class:"title font-bold"};function xe(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-input");return n(),c("div",Oe,[l("div",je,[l("h2",Be,r(e.$t("seedream.name.prompt")),1),s(u,{content:e.$t("seedream.description.prompt"),class:"info"},null,8,["content"])]),s(f,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=i=>e.prompt=i),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("seedream.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ne=S(Fe,[["render",xe],["__scopeId","data-v-5559520a"]]),We={image:!0,imageRequired:!1,sizeTiers:[O,R,j,L],sizeAdaptive:!0,sizePixel:!0,sizePixelDefault:void 0,groupGeneration:!1,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};function w(e){switch(e){case Q:return{image:!0,imageRequired:!1,sizeTiers:[R,j,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!0,tools:!0};case J:return{image:!0,imageRequired:!1,sizeTiers:[R,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case H:return{image:!0,imageRequired:!1,sizeTiers:[O,R,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case F:return{image:!1,imageRequired:!1,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:"1024x1024",groupGeneration:!1,seed:!0,guidanceScale:!0,guidanceScaleDefault:W[F],outputFormat:!1,tools:!1};case G:return{image:!0,imageRequired:!0,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:"1024x1024",groupGeneration:!1,seed:!1,guidanceScale:!0,guidanceScaleDefault:W[G],outputFormat:!1,tools:!1};default:return We}}const Ke=[O,R,j,L];function Ze(e,t){if(!e)return[];const d=t.model??e.model;if(!d)return[];const o=w(d),m=[];Array.isArray(e.image)&&e.image.length>0&&!o.image&&m.push({field:"image",i18nLabel:"seedream.name.imageUrls"});const p=typeof e.size=="string"?e.size:void 0;if(p){const u=p.toUpperCase();Ke.includes(u)&&!o.sizeTiers.includes(u)?m.push({field:"size",i18nLabel:"seedream.name.size"}):p==="adaptive"&&!o.sizeAdaptive&&m.push({field:"size",i18nLabel:"seedream.name.size"})}return e.sequential_image_generation==="auto"&&!o.groupGeneration&&m.push({field:"sequential_image_generation",i18nLabel:"seedream.name.maxImages"}),e.seed!==void 0&&e.seed!==null&&!o.seed&&m.push({field:"seed",i18nLabel:"seedream.name.seed"}),e.guidance_scale!==void 0&&e.guidance_scale!==null&&!o.guidanceScale&&m.push({field:"guidance_scale",i18nLabel:"seedream.name.guidanceScale"}),e.output_format&&!o.outputFormat&&m.push({field:"output_format",i18nLabel:"seedream.name.outputFormat"}),Array.isArray(e.tools)&&e.tools.length>0&&!o.tools&&m.push({field:"tools",i18nLabel:"seedream.name.tools"}),m}function Xe(e,t,d){const o={...e},m=d.model??e.model,p=w(m);for(const u of t)switch(u.field){case"image":delete o.image;break;case"size":p.sizePixelDefault?o.size=p.sizePixelDefault:delete o.size;break;case"sequential_image_generation":o.sequential_image_generation="disabled",delete o.sequential_image_generation_options;break;case"seed":delete o.seed;break;case"guidance_scale":delete o.guidance_scale;break;case"output_format":delete o.output_format;break;case"tools":delete o.tools;break}return o}const He=k({name:"SeedreamImageInput",components:{ElUpload:$e,ElButton:P,InfoIcon:I,ImagePreview:ee,FontAwesomeIcon:q},mixins:[he],data(){return{fileList:[],uploadUrl:ne()+"/api/v1/files/",suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.seedream?.config?.image},model(){return this.$store.state.seedream?.config?.model},supported(){return w(this.model).image}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const o=(this.fileList||[]).filter(m=>!m?.response?.file_url);this.fileList=o.length?o:[];return}const t=[];e.forEach(o=>{const m=this.fileList.find(p=>p?.response?.file_url===o||p?.url===o);m?t.push(m):t.push({name:o.split("/").pop()||o,url:o,status:"success",percentage:100,response:{file_url:o}})}),(this.fileList||[]).filter(o=>!o?.response?.file_url).forEach(o=>{t.some(p=>p===o||p?.url===o?.url||p?.response?.file_url===o?.response?.file_url)||t.push(o)}),this.fileList=t}}},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url=="string"&&e.url.startsWith("blob:"))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImages()},onExceed(){z.warning(this.$t("seedream.message.uploadImageExceed"))},onError(){z.error(this.$t("seedream.message.uploadImageError"))},onSetImages(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,image:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImages()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url=="string"&&t.url.startsWith("blob:"))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImages()}}}),Je={key:0},Qe={class:"field"},Ye={class:"label"},et={class:"box"},tt={class:"title font-bold"},st={class:"value"},ot={class:"file-list mt-2 flex flex-wrap gap-[10px]"};function at(e,t,d,o,m,p){const u=a("info-icon"),f=a("font-awesome-icon"),i=a("el-button"),_=a("el-upload"),h=a("image-preview");return e.supported?(n(),c("div",Je,[l("div",Qe,[l("div",Ye,[l("div",et,[l("h2",tt,r(e.$t("seedream.name.imageUrls")),1),s(u,{content:e.$t("seedream.description.imageUrls"),class:"info"},null,8,["content"])])]),l("div",st,[s(_,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=b=>e.fileList=b),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",limit:14,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:$(()=>[s(i,{size:"small",type:"primary",round:""},{default:$(()=>[s(f,{icon:"fa-solid fa-upload",class:"mr-1"}),g(" "+r(e.$t("seedream.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"])])]),l("div",ot,[(n(!0),c(y,null,A(e.fileList,(b,M)=>(n(),E(h,{key:b.uid||b?.response?.file_url||b.url||M,url:b.url||b?.response?.file_url,name:b.name,percentage:b.percentage,onRemove:C=>e.onRemovePreview(M,b)},null,8,["url","name","percentage","onRemove"]))),128))])])):v("",!0)}const nt=S(He,[["render",at],["__scopeId","data-v-2aa4829c"]]),rt=k({name:"SeedreamModelSelector",components:{ElSelect:x,ElOption:B,InfoIcon:I},data(){return{revertKey:0,options:[{value:Q,label:this.$t("seedream.model.seedream50")},{value:J,label:this.$t("seedream.model.seedream45")},{value:H,label:this.$t("seedream.model.seedream40")},{value:F,label:this.$t("seedream.model.seedream30t2i")},{value:G,label:this.$t("seedream.model.seededit30i2i")}]}},computed:{value(){return this.$store.state.seedream?.config?.model}},mounted(){this.value||this.applyModel(re)},methods:{async onChange(e){const t=this.$store.state.seedream?.config||{},d=Ze(t,{model:e});if(d.length===0){this.applyModel(e);return}const o=d.map(m=>this.$t(m.i18nLabel)).join("、");try{await ke.confirm(this.$t("seedream.message.featureNotSupportedBody",{fields:o}),this.$t("seedream.message.featureNotSupportedTitle"),{confirmButtonText:this.$t("seedream.button.confirmContinue"),cancelButtonText:this.$t("seedream.button.cancelSwitch"),type:"warning"});const m=Xe({...t,model:e},d,{model:e});this.$store.commit("seedream/setConfig",m),z.success(this.$t("seedream.message.featureRemovedNotice",{fields:o}))}catch{this.revertKey+=1}},applyModel(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,model:e})}}}),lt={class:"field"},it={class:"label"},ct={class:"box"},dt={class:"title font-bold"};function mt(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-option"),i=a("el-select");return n(),c("div",lt,[l("div",it,[l("div",ct,[l("h2",dt,r(e.$t("seedream.name.model")),1),s(u,{content:e.$t("seedream.description.model"),class:"info"},null,8,["content"])])]),(n(),E(i,{key:e.revertKey,"model-value":e.value,class:"value",placeholder:e.$t("seedream.placeholder.select"),onChange:e.onChange},{default:$(()=>[(n(!0),c(y,null,A(e.options,_=>(n(),E(f,{key:_.value,label:_.label,value:_.value},null,8,["label","value"]))),128))]),_:1},8,["model-value","placeholder","onChange"]))])}const ut=S(rt,[["render",mt],["__scopeId","data-v-8892a12c"]]),pt=k({name:"SeedreamSizeSelector",components:{ElSelect:x,ElOption:B,ElOptionGroup:Ee,InfoIcon:I},data(){return{SEEDREAM_SIZE_ADAPTIVE:ie,pixelOptions:le}},computed:{model(){return this.$store.state.seedream?.config?.model},capabilities(){return w(this.model)},value:{get(){return this.$store.state.seedream?.config?.size},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,size:e})}}},watch:{model:{immediate:!0,handler(){if(this.value)return;const e=this.capabilities;e.sizeTiers.length?this.value=e.sizeTiers.includes(K)?K:e.sizeTiers[0]:e.sizePixelDefault&&(this.value=e.sizePixelDefault)}}}}),ft={class:"field"},_t={class:"label"},gt={class:"box"},ht={class:"title font-bold"};function $t(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-option"),i=a("el-option-group"),_=a("el-select");return n(),c("div",ft,[l("div",_t,[l("div",gt,[l("h2",ht,r(e.$t("seedream.name.size")),1),s(u,{content:e.$t("seedream.description.size"),class:"info"},null,8,["content"])])]),s(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=h=>e.value=h),class:"value",placeholder:e.$t("seedream.placeholder.size"),filterable:"","allow-create":"","default-first-option":""},{default:$(()=>[e.capabilities.sizeTiers.length?(n(),E(i,{key:0,label:e.$t("seedream.size.group.tier")},{default:$(()=>[(n(!0),c(y,null,A(e.capabilities.sizeTiers,h=>(n(),E(f,{key:h,label:h,value:h},null,8,["label","value"]))),128))]),_:1},8,["label"])):v("",!0),e.capabilities.sizeAdaptive?(n(),E(i,{key:1,label:e.$t("seedream.size.group.adaptive")},{default:$(()=>[(n(),E(f,{key:e.SEEDREAM_SIZE_ADAPTIVE,label:e.$t("seedream.size.adaptive"),value:e.SEEDREAM_SIZE_ADAPTIVE},null,8,["label","value"]))]),_:1},8,["label"])):v("",!0),s(i,{label:e.$t("seedream.size.group.pixel")},{default:$(()=>[(n(!0),c(y,null,A(e.pixelOptions,h=>(n(),E(f,{key:h.value,label:`${h.value} (${h.ratio})`,value:h.value},null,8,["label","value"]))),128))]),_:1},8,["label"])]),_:1},8,["modelValue","placeholder"])])}const vt=S(pt,[["render",$t],["__scopeId","data-v-dd7bd021"]]),bt=k({name:"SeedreamMaxImagesSelector",components:{ElInputNumber:N,InfoIcon:I},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).groupGeneration},referenceImageCount(){const e=this.config?.image;return Array.isArray(e)?e.length:0},effectiveMax(){const e=Z-this.referenceImageCount;return Math.max(1,Math.min(Z,e))},value:{get(){const e=this.config?.sequential_image_generation_options?.max_images;return typeof e=="number"&&e>=1?e:ce},set(e){const t={...this.config||{}},d=Math.max(1,Math.min(this.effectiveMax,Math.floor(e||1)));d>1?(t.sequential_image_generation="auto",t.sequential_image_generation_options={...t.sequential_image_generation_options||{},max_images:d}):(t.sequential_image_generation="disabled",t.sequential_image_generation_options&&delete t.sequential_image_generation_options),this.$store.commit("seedream/setConfig",t)}}},watch:{effectiveMax(e){this.value>e&&(this.value=e)}}}),Et={key:0,class:"field"},kt={class:"label"},St={class:"box"},yt={class:"title font-bold"},wt={class:"value"};function It(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",Et,[l("div",kt,[l("div",St,[l("h2",yt,r(e.$t("seedream.name.maxImages")),1),s(u,{content:e.$t("seedream.description.maxImages"),class:"info"},null,8,["content"])])]),l("div",wt,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),min:1,max:e.effectiveMax,step:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue","max"])])])):v("",!0)}const At=S(bt,[["render",It],["__scopeId","data-v-f079fd20"]]),Vt=k({name:"SeedreamOutputFormatSelector",components:{ElSelect:x,ElOption:B,InfoIcon:I},data(){return{options:[...de]}},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).outputFormat},value:{get(){return this.config?.output_format},set(e){const t={...this.config||{}};t.output_format=e,this.$store.commit("seedream/setConfig",t)}}}}),zt={key:0,class:"field"},Mt={class:"label"},Tt={class:"box"},Rt={class:"title font-bold"};function Lt(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-option"),i=a("el-select");return e.supported?(n(),c("div",zt,[l("div",Mt,[l("div",Tt,[l("h2",Rt,r(e.$t("seedream.name.outputFormat")),1),s(u,{content:e.$t("seedream.description.outputFormat"),class:"info"},null,8,["content"])])]),s(i,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=_=>e.value=_),class:"value",placeholder:e.$t("seedream.placeholder.select")},{default:$(()=>[(n(!0),c(y,null,A(e.options,_=>(n(),E(f,{key:_,label:_.toUpperCase(),value:_},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])):v("",!0)}const Dt=S(Vt,[["render",Lt],["__scopeId","data-v-69ea4c07"]]),Ct=k({name:"SeedreamSeedInput",components:{ElInputNumber:N,InfoIcon:I},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).seed},value:{get(){const e=this.config?.seed;return typeof e=="number"?e:-1},set(e){const t={...this.config||{}},d=typeof e=="number"&&Number.isInteger(e)?e:-1;t.seed=d,this.$store.commit("seedream/setConfig",t)}}}}),qt={key:0,class:"field"},Pt={class:"label"},Ut={class:"box"},Gt={class:"title font-bold"},Ft={class:"value"};function Ot(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",qt,[l("div",Pt,[l("div",Ut,[l("h2",Gt,r(e.$t("seedream.name.seed")),1),s(u,{content:e.$t("seedream.description.seed"),class:"info"},null,8,["content"])])]),l("div",Ft,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),min:-1,max:2147483647,step:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue"])])])):v("",!0)}const jt=S(Ct,[["render",Ot],["__scopeId","data-v-10cdc1e0"]]),Bt=k({name:"SeedreamGuidanceScaleInput",components:{ElInputNumber:N,InfoIcon:I},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).guidanceScale},defaultValue(){return w(this.config?.model).guidanceScaleDefault??2.5},value:{get(){const e=this.config?.guidance_scale;return typeof e=="number"?e:this.defaultValue},set(e){const t={...this.config||{}},d=typeof e=="number"&&e>=1&&e<=10?e:this.defaultValue;t.guidance_scale=d,this.$store.commit("seedream/setConfig",t)}}}}),xt={key:0,class:"field"},Nt={class:"label"},Wt={class:"box"},Kt={class:"title font-bold"},Zt={class:"value"};function Xt(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",xt,[l("div",Nt,[l("div",Wt,[l("h2",Kt,r(e.$t("seedream.name.guidanceScale")),1),s(u,{content:e.$t("seedream.description.guidanceScale"),class:"info"},null,8,["content"])])]),l("div",Zt,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),min:1,max:10,step:.1,precision:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue"])])])):v("",!0)}const Ht=S(Bt,[["render",Xt],["__scopeId","data-v-7386f064"]]),Jt=k({name:"SeedreamWatermarkSwitch",components:{ElSwitch:Se,InfoIcon:I},computed:{value:{get(){const e=this.$store.state.seedream?.config?.watermark;return e===void 0?me:!!e},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,watermark:e})}}}}),Qt={class:"field"},Yt={class:"label"},es={class:"box"},ts={class:"title font-bold"},ss={class:"value"};function os(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-switch");return n(),c("div",Qt,[l("div",Yt,[l("div",es,[l("h2",ts,r(e.$t("seedream.name.watermark")),1),s(u,{content:e.$t("seedream.description.watermark"),class:"info"},null,8,["content"])])]),l("div",ss,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i)},null,8,["modelValue"])])])}const as=S(Jt,[["render",os],["__scopeId","data-v-9e2abf0f"]]),ns=k({name:"SeedreamConfigPanel",components:{ElButton:P,FontAwesomeIcon:q,PromptInput:Ne,Consumption:ve,ImageInput:nt,ModelSelector:ut,SizeSelector:vt,MaxImagesSelector:At,OutputFormatSelector:Dt,SeedInput:jt,GuidanceScaleInput:Ht,WatermarkSwitch:as},emits:["generate"],computed:{config(){return this.$store.state.seedream?.config},consumption(){const e={...this.config||{}},t=Array.isArray(e?.image)&&e.image.length>0,d=e?.sequential_image_generation==="auto"?Math.max(1,Math.floor(e?.sequential_image_generation_options?.max_images||1)):1;return be({...e,action:t?"edit":"generate",model:Y(e?.model),count:d},this.service?.cost)},service(){return this.$store.state.seedream?.service}},methods:{onGenerate(){this.$emit("generate")}}}),rs={class:"flex flex-col h-full"},ls={class:"flex-1 overflow-y-auto p-5"},is={class:"flex flex-col items-center justify-center px-5 pb-5"};function cs(e,t,d,o,m,p){const u=a("model-selector"),f=a("size-selector"),i=a("max-images-selector"),_=a("output-format-selector"),h=a("seed-input"),b=a("guidance-scale-input"),M=a("watermark-switch"),C=a("prompt-input"),V=a("image-input"),T=a("consumption"),te=a("font-awesome-icon"),se=a("el-button");return n(),c("div",rs,[l("div",ls,[s(u,{class:"mb-4"}),s(f,{class:"mb-4"}),s(i,{class:"mb-4"}),s(_,{class:"mb-4"}),s(h,{class:"mb-4"}),s(b,{class:"mb-4"}),s(M,{class:"mb-4"}),s(C,{class:"mb-4"}),s(V,{class:"mb-4"})]),l("div",is,[s(T,{value:e.consumption,service:e.service},null,8,["value","service"]),s(se,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:$(()=>[s(te,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+r(e.$t("seedream.button.generate")),1)]),_:1},8,["onClick"])])])}const ds=S(ns,[["render",cs]]),ms=k({name:"SeedreamTaskPreview",components:{ElImage:Me,CopyToClipboard:Ie,FontAwesomeIcon:q,ElAlert:ze,ImageWrapper:Ae,ElButton:P,ElTooltip:Ve,ImagePreview:ee},props:{modelValue:{type:Object,required:!0}},computed:{isEdit(){return Array.isArray(this.modelValue?.request?.image)&&(this.modelValue?.request?.image?.length||0)>0},images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{shortModel(e){return Y(e)||e},onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.seedream?.config||{}};t.image=[e],this.$store.commit("seedream/setConfig",t)}}}),us={class:"preview"},ps={class:"left"},fs={class:"main"},_s={class:"bot"},gs={class:"datetime"},hs={class:"info"},$s={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},vs={key:1,class:"prompt mt-2"},bs={key:0},Es={key:0,class:D({content:!0})},ks={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ss={key:1,class:D({content:!0,failed:!0})},ys={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},ws={class:D({operations:!0,"mt-2":!0,"mb-2":!0})},Is={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},As={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Vs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},zs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ms={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ts={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Rs={key:2,class:D({content:!0})},Ls={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ds={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Cs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ps={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Us={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gs={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Fs={key:3,class:D({content:!0})},Os={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},js={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Bs(e,t,d,o,m,p){const u=a("el-image"),f=a("image-preview"),i=a("font-awesome-icon"),_=a("copy-to-clipboard"),h=a("el-alert"),b=a("image-wrapper"),M=a("el-button"),C=a("el-tooltip");return n(),c("div",us,[l("div",ps,[s(u,{src:"https://cdn.acedata.cloud/9egrbn.png",class:"avatar"})]),l("div",fs,[l("div",_s,[g(r(e.$t("seedream.name.seedreamBot"))+" ",1),l("span",gs,r(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",hs,[Array.isArray(e.modelValue?.request?.image)&&e.modelValue?.request?.image.length>0?(n(),c("div",$s,[(n(!0),c(y,null,A(e.modelValue?.request?.image,(V,T)=>(n(),E(f,{key:T,url:V,name:`image-${T+1}`,closable:!1},null,8,["url","name"]))),128))])):v("",!0),e.modelValue?.request?.prompt?(n(),c("p",vs,[g(r(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?v("",!0):(n(),c("span",bs," - ("+r(e.$t("seedream.status.pending"))+") ",1))])):v("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(n(),c("div",Ss,[l("div",ys,[(n(!0),c(y,null,A(e.images,(V,T)=>(n(),E(b,{key:T,src:V?.image_url,"raw-src":V?.image_url},null,8,["src","raw-src"]))),128))]),l("div",ws,[s(C,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:$(()=>[s(M,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=ae(V=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:$(()=>[g(r(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),s(h,{closable:!1,class:"mt-2 success"},{default:$(()=>[e.modelValue?.request?.model?(n(),c("p",Is,[s(i,{icon:"fa-solid fa-cube",class:"mr-1"}),g(" "+r(e.$t("seedream.name.model"))+": "+r(e.shortModel(e.modelValue?.request?.model)),1)])):v("",!0),e.modelValue?.request?.size?(n(),c("p",As,[s(i,{icon:"fa-solid fa-image",class:"mr-1"}),g(" "+r(e.$t("seedream.name.size"))+": "+r(e.modelValue?.request?.size),1)])):v("",!0),l("p",Vs,[s(i,{icon:"fa-solid fa-bolt",class:"mr-1"}),g(" "+r(e.$t("seedream.name.task"))+": "+r(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),l("p",zs,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(n(),c("p",Ms,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.name.elapsed"))+": "+r(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(n(),c("p",Ts,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(n(),c("div",Rs,[s(h,{closable:!1,class:"failure"},{template:$(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+r(e.$t("seedream.name.failure")),1)]),default:$(()=>[e.modelValue?.request?.model?(n(),c("p",Ls,[s(i,{icon:"fa-solid fa-cube",class:"mr-1"}),g(" "+r(e.$t("seedream.name.model"))+": "+r(e.shortModel(e.modelValue?.request?.model)),1)])):v("",!0),e.modelValue?.request?.size?(n(),c("p",Ds,[s(i,{icon:"fa-solid fa-image",class:"mr-1"}),g(" "+r(e.$t("seedream.name.size"))+": "+r(e.modelValue?.request?.size),1)])):v("",!0),l("p",Cs,[s(i,{icon:"fa-solid fa-bolt",class:"mr-1"}),g(" "+r(e.$t("seedream.name.task"))+": "+r(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),l("p",qs,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.error?.message?(n(),c("p",Ps,[s(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+r(e.$t("seedream.name.failureReason"))+": "+r(e.modelValue?.response?.error?.message)+" ",1),s(_,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])])):v("",!0),e.modelValue?.elapsed?(n(),c("p",Us,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.name.elapsed"))+": "+r(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(n(),c("p",Gs,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):v("",!0)]),_:1})])):(n(),c("div",Fs,[s(h,{closable:!1,class:"info"},{template:$(()=>[s(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+r(e.$t("seedream.name.status")),1)]),default:$(()=>[l("p",Os,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),c("p",js,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):v("",!0)]),_:1})])):(n(),c("div",Es,[s(h,{closable:!1,class:"info"},{template:$(()=>[s(i,{icon:"fa-regular fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.status.pending")),1)]),default:$(()=>[l("p",ks,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})]))])])}const xs=S(ms,[["render",Bs],["__scopeId","data-v-0dfc6a09"]]),Ns=k({name:"SeedreamRecentPanel",components:{TaskPreview:xs,BotPlaceholder:Te,NoTasks:Re,ScrollList:fe},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],computed:{tasks(){return{...this.$store.state.seedream?.tasks,items:this.$store.state.seedream?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Ws={key:0},Ks={key:2,class:"w-full h-full flex items-center justify-center"};function Zs(e,t,d,o,m,p){const u=a("bot-placeholder"),f=a("task-preview"),i=a("scroll-list"),_=a("no-tasks");return n(),c(y,null,[e.tasks?.items===void 0?(n(),c("div",Ws,[s(u)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),E(i,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=h=>e.$emit("reach-top"))},{default:$(()=>[(n(!0),c(y,null,A(e.tasks?.items,h=>(n(),E(f,{key:h.id,"model-value":h},null,8,["model-value"]))),128))]),_:1},8,["loading"])):v("",!0),e.tasks?.items?.length===0?(n(),c("div",Ks,[s(_)])):v("",!0)],64)}const Xs=S(Ns,[["render",Zs]]),Hs=pe("seedream"),Js=k({name:"SeedreamIndex",components:{ConfigPanel:ds,Layout:Ue,RecentPanel:Xs},inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.seedream?.status?.getApplications===X.Request},tasksLoading(){return this.$store.state.seedream?.status?.getTasks===X.Request},credential(){return this.$store.state.seedream?.credential},config(){return this.$store.state.seedream?.config},application(){return this.$store.state.seedream?.application},tasks(){return this.$store.state.seedream?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await _e({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("seedream/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("seedream/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=20,createdAtMin:d,createdAtMax:o}=e||{};console.debug("limit",t,"createdAtMin",d,"createdAtMax",o),await this.$store.dispatch("seedream/getTasks",{limit:t,createdAtMin:d,createdAtMax:o})},async onGenerate(){const e={...this.config||{}};!(Array.isArray(e?.image)&&e.image.length>0)&&"image"in e&&delete e.image,e?.size||delete e.size;const d={...e,callback_url:Hs},o=this.credential?.token;if(!o){console.error("no token specified");return}z.info(this.$t("seedream.message.startingTask")),ue("seedream",we.generate(d,{token:o})).then(()=>{z.success(this.$t("seedream.message.startTaskSuccess"))}).catch(m=>{const p=m?.response?.data;p?.error?.code===ye?z.error(this.$t("seedream.message.usedUp")):z.error(this.$t("seedream.message.startTaskFailed")+(p?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Qs(e,t,d,o,m,p){const u=a("config-panel"),f=a("recent-panel"),i=a("layout");return n(),E(i,null,{config:$(()=>[s(u,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:$(()=>[s(f,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Zo=S(Js,[["render",Qs]]);export{Zo as default};