@acedatacloud/nexior 3.104.0 → 3.106.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 (244) hide show
  1. package/dist/assets/{Auth-De9cigC4.js → Auth-C0G4n2_Z.js} +1 -1
  2. package/dist/assets/{BotPlaceholder-u7M84VaW.js → BotPlaceholder-Xw824Ebv.js} +1 -1
  3. package/dist/assets/{Callback-BxNbqB72.js → Callback--NSA2Q2q.js} +1 -1
  4. package/dist/assets/{Console-Db0_4HUG.js → Console-D21c4q_2.js} +1 -1
  5. package/dist/assets/{Consumption-CuHw6ulT.js → Consumption-DYQFnbqu.js} +1 -1
  6. package/dist/assets/{Conversation-CvEokGcG.css → Conversation-CmjKckOg.css} +1 -1
  7. package/dist/assets/{Conversation-kHnTuCiP.js → Conversation-DoxBS3fQ.js} +10 -10
  8. package/dist/assets/{CopyToClipboard-C-YsAZ-3.js → CopyToClipboard-D2C5yA75.js} +1 -1
  9. package/dist/assets/{Detail-Cq6p_hJm.js → Detail-iFzUHjar.js} +2 -2
  10. package/dist/assets/{EditArray-p_OxJXzJ.js → EditArray-Bdfh2NFp.js} +1 -1
  11. package/dist/assets/{Extra-DsQAFfyy.js → Extra-CivYr1XD.js} +1 -1
  12. package/dist/assets/{FilePreview-BNWwl0Pe.js → FilePreview-C0FyUEVU.js} +1 -1
  13. package/dist/assets/{History-BpOU9uIg.js → History-DljpGAPN.js} +1 -1
  14. package/dist/assets/{IconPark.vue_vue_type_script_setup_true_lang-Ddb47dNh.js → IconPark.vue_vue_type_script_setup_true_lang-Sl16svi6.js} +1 -1
  15. package/dist/assets/{ImagePreview-CwQNggMy.js → ImagePreview-DX53I496.js} +1 -1
  16. package/dist/assets/{ImageWrapper-C1ITExgu.js → ImageWrapper-Dg_w6TVm.js} +1 -1
  17. package/dist/assets/{Index-DZQlZ4ch.js → Index-BRRCw9VF.js} +1 -1
  18. package/dist/assets/{Index-DCP2WWJ_.js → Index-BbwM6-dd.js} +1 -1
  19. package/dist/assets/{Index-Df-daA_k.js → Index-BcOS-Z_l.js} +1 -1
  20. package/dist/assets/{Index-BSgzx3M7.js → Index-Bec-ThKC.js} +1 -1
  21. package/dist/assets/{Index-BMjPxs0z.js → Index-BmbP9IN7.js} +1 -1
  22. package/dist/assets/{Index-evzxH9nI.js → Index-BstTTWZ9.js} +1 -1
  23. package/dist/assets/{Index-DKdk1o9x.js → Index-C0aeBATu.js} +1 -1
  24. package/dist/assets/{Index-C1rWV0FD.js → Index-CBRfhBjZ.js} +1 -1
  25. package/dist/assets/{Index-Bzgztvbk.js → Index-CEtc6jM2.js} +1 -1
  26. package/dist/assets/{Index-CHCenVoy.js → Index-CLLyAp6i.js} +1 -1
  27. package/dist/assets/{Index-hkUr0yEW.js → Index-CMoqskAt.js} +1 -1
  28. package/dist/assets/{Index-BvFk9qMR.js → Index-CNdW0TVn.js} +1 -1
  29. package/dist/assets/{Index-FgVcvfRN.js → Index-CP6v6KE1.js} +1 -1
  30. package/dist/assets/{Index-BSSnP9ri.js → Index-CW03ownQ.js} +1 -1
  31. package/dist/assets/{Index-0gesAWUO.js → Index-C_h8y2BS.js} +1 -1
  32. package/dist/assets/{Index--vvFfCOl.js → Index-Co3U_irQ.js} +1 -1
  33. package/dist/assets/{Index-Dnvi-7HK.js → Index-CySKMkjB.js} +1 -1
  34. package/dist/assets/{Index-C4lPhnEo.js → Index-CyaHtQKn.js} +1 -1
  35. package/dist/assets/{Index-CvpySOAN.js → Index-D91ksKK8.js} +1 -1
  36. package/dist/assets/{Index-D8x-GgRi.js → Index-DHI66Dpu.js} +1 -1
  37. package/dist/assets/{Index-DTlHlP7k.js → Index-DhltvXMi.js} +1 -1
  38. package/dist/assets/{Index-CZbhRVl1.js → Index-GDj6u4d5.js} +1 -1
  39. package/dist/assets/{Index-00jxoxmv.js → Index-brsU2RFf.js} +1 -1
  40. package/dist/assets/{Index-Cotx-4vy.js → Index-eHl6_E3Z.js} +1 -1
  41. package/dist/assets/{Index-B4suL5NW.js → Index-pezrA5GB.js} +1 -1
  42. package/dist/assets/{Invitees-CamN2vSF.js → Invitees-B6hUfXTZ.js} +1 -1
  43. package/dist/assets/{List-CCXEwswD.js → List-BaZz_7E-.js} +1 -1
  44. package/dist/assets/{List-BZOPrAl1.js → List-DLRUSA1A.js} +1 -1
  45. package/dist/assets/{List-QlezO8-7.js → List-pKNvMBjk.js} +1 -1
  46. package/dist/assets/{Main-B6TwLaC9.js → Main-BXG_Xh5x.js} +1 -1
  47. package/dist/assets/Navigator-DnFgbdZ0.js +1 -0
  48. package/dist/assets/{NoTasks-pbAt4IfW.js → NoTasks-D1kN6xBe.js} +1 -1
  49. package/dist/assets/{NotFound-DTySrta8.js → NotFound-CM8d7YsB.js} +1 -1
  50. package/dist/assets/{OAuthCallback-nf8s46YI.js → OAuthCallback--rNfG1Ee.js} +1 -1
  51. package/dist/assets/{Pagination-DeOOXngE.js → Pagination-BliIHIlh.js} +1 -1
  52. package/dist/assets/{ScrollList-CCNTFcYW.js → ScrollList-aZu_p1B4.js} +1 -1
  53. package/dist/assets/{Status-yXxQ-1Da.js → Status-DOmaLVHY.js} +1 -1
  54. package/dist/assets/{Subscribe-Vn_das09.js → Subscribe-Dkegr8zt.js} +1 -1
  55. package/dist/assets/{TransportWebHID-cUfZYXrc.js → TransportWebHID-C57Mi2zx.js} +1 -1
  56. package/dist/assets/{VideoPlayer-QCeD6PqW.js → VideoPlayer-N6hsMqS4.js} +1 -1
  57. package/dist/assets/{_Uint8Array-DvWTKNUb.js → _Uint8Array-axOCySub.js} +1 -1
  58. package/dist/assets/{_baseClone-CGF2vxwQ.js → _baseClone-DLTr8Yd-.js} +1 -1
  59. package/dist/assets/{_baseIteratee-DoMzLeQE.js → _baseIteratee-BG9w6eZz.js} +1 -1
  60. package/dist/assets/{_initCloneObject-952WUert.js → _initCloneObject-C4ELQ6fU.js} +1 -1
  61. package/dist/assets/{add-D3wyHF5s.js → add-D8KTrjms.js} +1 -1
  62. package/dist/assets/{all-wallets-BFcKRGzD.js → all-wallets-BBubCFe8.js} +1 -1
  63. package/dist/assets/{app-store-DeMtYHU4.js → app-store-BvL_nkp6.js} +1 -1
  64. package/dist/assets/{apple-DSwRXltL.js → apple-DKJcgI6v.js} +1 -1
  65. package/dist/assets/{arrow-bottom-zwC2-0Ld.js → arrow-bottom-DgkdP9YK.js} +1 -1
  66. package/dist/assets/{arrow-bottom-circle-Clk6_VHj.js → arrow-bottom-circle-BTcdz9-8.js} +1 -1
  67. package/dist/assets/{arrow-left-ZrOeNlBA.js → arrow-left-BkEw9xER.js} +1 -1
  68. package/dist/assets/{arrow-right-Dd4FEXIQ.js → arrow-right-DU01qMkH.js} +1 -1
  69. package/dist/assets/{arrow-top-BxSw7e1c.js → arrow-top-C3utfkC7.js} +1 -1
  70. package/dist/assets/{avatar-CYrplKns.js → avatar-BlChVzGp.js} +1 -1
  71. package/dist/assets/{bank-BJhigBBK.js → bank-kfFVDyUp.js} +1 -1
  72. package/dist/assets/{basic-DGIsxvZW.js → basic-u2t74OVt.js} +1 -1
  73. package/dist/assets/{browser-CjhOlRlx.js → browser-BMEDJAkh.js} +1 -1
  74. package/dist/assets/{byokCredential-BY62AQLG.js → byokCredential-CpiKbP_G.js} +1 -1
  75. package/dist/assets/{card-Bv2HM9qM.js → card-D5tJQGeC.js} +1 -1
  76. package/dist/assets/{castArray-CPn6Fhtf.js → castArray-D_FrG8JL.js} +1 -1
  77. package/dist/assets/{chat-D1Toc45a.js → chat-CFHdfjc8.js} +1 -1
  78. package/dist/assets/{checkmark-D2QjjmVQ.js → checkmark-B0F_cBXv.js} +1 -1
  79. package/dist/assets/{checkmark-bold-D1Zq7_YA.js → checkmark-bold-DW8lFfyz.js} +1 -1
  80. package/dist/assets/{chevron-bottom-BLj5ISVP.js → chevron-bottom-BWcEhXJ1.js} +1 -1
  81. package/dist/assets/{chevron-left-C104AkOm.js → chevron-left-DmyN_zF_.js} +1 -1
  82. package/dist/assets/{chevron-right-BvLZ56p-.js → chevron-right-Di3NUJLn.js} +1 -1
  83. package/dist/assets/{chevron-top-Pl_A3D_X.js → chevron-top-CvXKXI07.js} +1 -1
  84. package/dist/assets/{chrome-store-CoexynaB.js → chrome-store-CT6OReqn.js} +1 -1
  85. package/dist/assets/{clock-mw0Dbf6W.js → clock-AU3BIR0h.js} +1 -1
  86. package/dist/assets/{close-oUPsHd3S.js → close-BgKVQ2gy.js} +1 -1
  87. package/dist/assets/{coinPlaceholder-BFCdOzkI.js → coinPlaceholder-DrPWEbwz.js} +1 -1
  88. package/dist/assets/{compass-tQtL6Y-C.js → compass-BFNuyPpx.js} +1 -1
  89. package/dist/assets/{copy-BUdauY76.js → copy-C86Dd4Bv.js} +1 -1
  90. package/dist/assets/{cursor-qxpqmPOW.js → cursor-Bz1obDqF.js} +1 -1
  91. package/dist/assets/{cursor-transparent-yD0J7Rz1.js → cursor-transparent-DEQ0FTMj.js} +1 -1
  92. package/dist/assets/{debounce-9WIXSH1A.js → debounce-D2BAnQ-_.js} +1 -1
  93. package/dist/assets/{desktop-D9-NEikk.js → desktop-CvzztIRz.js} +1 -1
  94. package/dist/assets/{disconnect-BMrkYIu5.js → disconnect-Bnhaxybr.js} +1 -1
  95. package/dist/assets/{discord-DDyDmnQS.js → discord-DGq9Koqu.js} +1 -1
  96. package/dist/assets/{distribution-ApHBMtCo.js → distribution-BwsDWKLQ.js} +1 -1
  97. package/dist/assets/{dropdown-DjKLPf3y.js → dropdown-DkKlWf_G.js} +1 -1
  98. package/dist/assets/{etherscan-BqXPPiwD.js → etherscan-DD1gvD_1.js} +1 -1
  99. package/dist/assets/{exclamation-triangle-qQV1iUkn.js → exclamation-triangle-czXTLgkj.js} +1 -1
  100. package/dist/assets/{extension-BTQgOBRb.js → extension--8uzX16z.js} +1 -1
  101. package/dist/assets/{external-link-CNQ2wCTw.js → external-link-BTnzyYHl.js} +1 -1
  102. package/dist/assets/{facebook-DjsdjHAi.js → facebook-CRECIPLx.js} +1 -1
  103. package/dist/assets/{farcaster-BXWowcXR.js → farcaster-CIdyTNak.js} +1 -1
  104. package/dist/assets/{filters-CvcJrHeg.js → filters-BLMDPeMT.js} +1 -1
  105. package/dist/assets/{flux-5qkR22z1.js → flux-7qQmSGhX.js} +1 -1
  106. package/dist/assets/{github-fI4fgJOP.js → github-DTZcLYCC.js} +1 -1
  107. package/dist/assets/{google-DX5cPSCt.js → google-B_MqZXeR.js} +1 -1
  108. package/dist/assets/{hailuo-BPEWIOMN.js → hailuo-jDmqQkaO.js} +1 -1
  109. package/dist/assets/{headshots-DQ7Lm1l2.js → headshots-D4hPrz4f.js} +1 -1
  110. package/dist/assets/{help-circle-EmZuoV7s.js → help-circle-WwJZkePz.js} +1 -1
  111. package/dist/assets/{id-DIA5z5ly.js → id-C0qmhJnU.js} +1 -1
  112. package/dist/assets/{image-DiJVmAkP.js → image-GNa2CsYg.js} +1 -1
  113. package/dist/assets/{index-BLTsdbxA.js → index-25Oi82xK.js} +1 -1
  114. package/dist/assets/{index-CpXag0eH.js → index-8lYBEdNo.js} +1 -1
  115. package/dist/assets/{index-BF-QKe5i.js → index-B543o7gJ.js} +1 -1
  116. package/dist/assets/{index-DQPI1sIT.js → index-B8EePg6z.js} +1 -1
  117. package/dist/assets/{index-oc5eSPYO.js → index-BCxNYeqQ.js} +1 -1
  118. package/dist/assets/{index-zUuDQX_5.js → index-BF94xmZz.js} +1 -1
  119. package/dist/assets/{index-ChEGJjjI.js → index-BN9-igbd.js} +1 -1
  120. package/dist/assets/{index-CqazYWfX.js → index-BYQvdkcL.js} +1 -1
  121. package/dist/assets/{index-DTwk4Hgp.js → index-BZNIHLm6.js} +1 -1
  122. package/dist/assets/{index-BQBfgytU.js → index-BZQTcknd.js} +1 -1
  123. package/dist/assets/{index-DlCXkGcT.js → index-B_uohCDD.js} +1 -1
  124. package/dist/assets/{index-DSt-cNy7.js → index-Bd4BP7So.js} +1 -1
  125. package/dist/assets/{index-_db8K285.js → index-BeL1x8f5.js} +1 -1
  126. package/dist/assets/{index-mg_plYx5.js → index-BgPVrzUN.js} +1 -1
  127. package/dist/assets/{index-DvnC_xLE.js → index-Bk-O7L34.js} +3 -3
  128. package/dist/assets/{index-C1Re5fO3.js → index-Bk0cwtzm.js} +1 -1
  129. package/dist/assets/{index-C0UTyOLS.js → index-BmFuwdAl.js} +1 -1
  130. package/dist/assets/{index-CCYfTylQ.js → index-BrW5RGcC.js} +1 -1
  131. package/dist/assets/{index-DkD0knch.js → index-BuOK2l4t.js} +1 -1
  132. package/dist/assets/{index-DLT5zGpy.js → index-Bxu6veir.js} +1 -1
  133. package/dist/assets/{index-B5fXwrbI.js → index-C1iMhCA7.js} +1 -1
  134. package/dist/assets/{index-Bz9zugZw.js → index-CDT-Snwp.js} +1 -1
  135. package/dist/assets/{index-DD9uYaJY.js → index-CIXUtLqg.js} +1 -1
  136. package/dist/assets/{index---PxsvUJ.js → index-CIryI-af.js} +1 -1
  137. package/dist/assets/{index-BBY7h1aM.js → index-CRw7S42Z.js} +1 -1
  138. package/dist/assets/{index-CTBmQBa0.js → index-CY1Exr69.js} +1 -1
  139. package/dist/assets/{index-BnCbV7QO.js → index-CYAMxtOc.js} +1 -1
  140. package/dist/assets/{index-C8-vJUEW.js → index-CYN_lpsc.js} +1 -1
  141. package/dist/assets/{index-D_GRVo9W.js → index-C_RJn0nn.js} +1 -1
  142. package/dist/assets/{index-BOyVW-fq.js → index-Ce8tJ2pd.js} +1 -1
  143. package/dist/assets/{index-JWt8KSpW.js → index-CmHFyCoi.js} +1 -1
  144. package/dist/assets/{index-_-PkCcim.js → index-Cp42eF2R.js} +1 -1
  145. package/dist/assets/{index-CjC7mV9L.js → index-Cu3g7nB4.js} +1 -1
  146. package/dist/assets/{index-DTef1omD.js → index-CuDuQCsR.js} +1 -1
  147. package/dist/assets/{index-DMp9KWzv.js → index-CwFV_OkW.js} +1 -1
  148. package/dist/assets/{index-_aktZE54.js → index-CyjEKl2F.js} +1 -1
  149. package/dist/assets/{index-CuT2TkgJ.js → index-D-OGc8dc.js} +6 -6
  150. package/dist/assets/{index-D-i7xigj.js → index-D2GS-Zbq.js} +1 -1
  151. package/dist/assets/{index-CiWHIvgg.js → index-D7vWKmzW.js} +1 -1
  152. package/dist/assets/{index-DrRI9FV5.js → index-D8r9jTwO.js} +1 -1
  153. package/dist/assets/{index-1_dbFRJE.js → index-DAIfBksn.js} +1 -1
  154. package/dist/assets/{index-BnSUR8Aa.js → index-DDDX9moe.js} +1 -1
  155. package/dist/assets/{index-ZPBLis0J.js → index-DFo9jeHo.js} +1 -1
  156. package/dist/assets/{index-BtJn6Brh.js → index-DNc1Hhcd.js} +1 -1
  157. package/dist/assets/{index-Ci4FRvXu.js → index-DQxhaWwh.js} +1 -1
  158. package/dist/assets/{index--qvN-Sny.js → index-D_QhsPIk.js} +1 -1
  159. package/dist/assets/{index-Das1whBA.js → index-Ddqs3PVq.js} +1 -1
  160. package/dist/assets/{index-ENO3BvdF.js → index-Do6OHSnf.js} +1 -1
  161. package/dist/assets/{index-BaT-5I8C.js → index-Dq2GZE3C.js} +1 -1
  162. package/dist/assets/{index-DqAvdDhd.js → index-Dqtim6tM.js} +1 -1
  163. package/dist/assets/{index-D3Sz8XF9.js → index-Dwj1xevj.js} +1 -1
  164. package/dist/assets/{index-DPh73FnG.js → index-GFPsC8yY.js} +1 -1
  165. package/dist/assets/{index-Cgrb_qTf.js → index-Ry6IyMkb.js} +1 -1
  166. package/dist/assets/{index-CWOt51e0.js → index-TUxTopxs.js} +1 -1
  167. package/dist/assets/{index-BiLyGh2K.js → index-YxPqkKIL.js} +1 -1
  168. package/dist/assets/{index-BSESYaJD.js → index-_KdgWCsj.js} +1 -1
  169. package/dist/assets/{index-B2pf180Z.js → index-l89VCPwF.js} +1 -1
  170. package/dist/assets/{index-CCDQRUF2.js → index-lkdNAUlz.js} +3 -3
  171. package/dist/assets/{index-CC0gBjqc.js → index-ne6drSEe.js} +1 -1
  172. package/dist/assets/{index-DsddwGbz.js → index-rFipP7Xt.js} +1 -1
  173. package/dist/assets/{index-BTEwvtEq.js → index-tQF8_Vp3.js} +1 -1
  174. package/dist/assets/{index.browser.esm-DFjYzSpH.js → index.browser.esm-eaQFIm0M.js} +1 -1
  175. package/dist/assets/{index.es-BeIj-WvV.js → index.es-B2ceJEe-.js} +1 -1
  176. package/dist/assets/{info-VEOyJnY6.js → info-DglhHthP.js} +1 -1
  177. package/dist/assets/{info-circle-CDvOEHYk.js → info-circle-BNMg_Zfk.js} +1 -1
  178. package/dist/assets/{isEqual-ps8KzfY6.js → isEqual-D4vnwyEd.js} +1 -1
  179. package/dist/assets/{isPlainObject-DjORb5hQ.js → isPlainObject-WQTaoXoz.js} +1 -1
  180. package/dist/assets/{kling-CwiO8naM.js → kling-BVNz-A35.js} +1 -1
  181. package/dist/assets/{lightbulb-C3by4xdp.js → lightbulb-DDgHqHNP.js} +1 -1
  182. package/dist/assets/{luma-CM9sjKWL.js → luma-rCoEps85.js} +1 -1
  183. package/dist/assets/{mail-D-2FjldV.js → mail-BaqXF8yN.js} +1 -1
  184. package/dist/assets/{midjourney-BUJbOlBX.js → midjourney-qpb91z_G.js} +1 -1
  185. package/dist/assets/{mobile-C75fl4_k.js → mobile-Cn3uw53w.js} +1 -1
  186. package/dist/assets/{more-DtwMaowF.js → more-CBmN2Io8.js} +1 -1
  187. package/dist/assets/{nanobanana-DBscxyP3.js → nanobanana-CdjuFA_e.js} +1 -1
  188. package/dist/assets/{network-placeholder-BIsHBlxV.js → network-placeholder-CSgz7EI0.js} +1 -1
  189. package/dist/assets/{nftPlaceholder-DCBE9w4E.js → nftPlaceholder-Cv5RMx4b.js} +1 -1
  190. package/dist/assets/{off-DfVJ4w1f.js → off-xvIZV3ID.js} +1 -1
  191. package/dist/assets/{openaiimage-DBbKVmGr.js → openaiimage-D0Z1W7Y5.js} +1 -1
  192. package/dist/assets/{order-BoMXWQL_.js → order-DFMlF4hQ.js} +1 -1
  193. package/dist/assets/{pika-Mo1PNCF7.js → pika-6W66qszW.js} +1 -1
  194. package/dist/assets/{pixverse-CwqXq4dt.js → pixverse-CnfxhDEI.js} +1 -1
  195. package/dist/assets/{play-store-TfyehXAB.js → play-store-BnIhGWxe.js} +1 -1
  196. package/dist/assets/{plus-dYz-bfst.js → plus-CH--V479.js} +1 -1
  197. package/dist/assets/{price-Bl7M2Hry.js → price-BfW_ZaN-.js} +1 -1
  198. package/dist/assets/{producer-BzuZvksG.js → producer-DzJnaKD8.js} +1 -1
  199. package/dist/assets/{qr-code-BPbwBAwT.js → qr-code-B2E5iWjp.js} +1 -1
  200. package/dist/assets/{qrart-CRgO_db6.js → qrart-BKfYE4ea.js} +1 -1
  201. package/dist/assets/{recycle-horizontal-7nGtQmMs.js → recycle-horizontal-D03Efwmz.js} +1 -1
  202. package/dist/assets/{refresh-ys3pyrGv.js → refresh-D2AAfCBr.js} +1 -1
  203. package/dist/assets/{reown-logo-oN-2_FB5.js → reown-logo-BPgm3Wzi.js} +1 -1
  204. package/dist/assets/{search-CsBnDW3F.js → search-DRsKuVCX.js} +1 -1
  205. package/dist/assets/{secp256k1-Dtj8YDhy.js → secp256k1-D5SIpaDf.js} +1 -1
  206. package/dist/assets/{secp256k1-E1qaTUcP.js → secp256k1-DWX6S8jP.js} +1 -1
  207. package/dist/assets/{seedance-DBdi55h8.js → seedance-hCHDzDd5.js} +1 -1
  208. package/dist/assets/{seedream-CBWjwzPW.js → seedream-CYxoDdhO.js} +1 -1
  209. package/dist/assets/{send-BSgzkZmk.js → send-BcR9VzcO.js} +1 -1
  210. package/dist/assets/{service-B8SktuDH.js → service-BpN4a6cu.js} +1 -1
  211. package/dist/assets/{solana-wallets-DyiQ4VyT.js → solana-wallets-Q4rgoeMa.js} +2 -2
  212. package/dist/assets/{solana-wallets-vue-DPmS-65v.js → solana-wallets-vue-Dt4dQ00_.js} +1 -1
  213. package/dist/assets/{solanaEmbed.esm-Ba2ykdfL.js → solanaEmbed.esm-DLswJqsz.js} +1 -1
  214. package/dist/assets/{sora-42iiSmXi.js → sora-QPlFMQRB.js} +1 -1
  215. package/dist/assets/{string_decoder-CK0DNpTd.js → string_decoder-BLWvhUM3.js} +1 -1
  216. package/dist/assets/{suno-BgV2Vycq.js → suno-BZfYaUBv.js} +1 -1
  217. package/dist/assets/{swapHorizontal-DWQ1FFWq.js → swapHorizontal-vy48cXw3.js} +1 -1
  218. package/dist/assets/{swapHorizontalBold-DLKinZPV.js → swapHorizontalBold-BrbfxsO2.js} +1 -1
  219. package/dist/assets/{swapHorizontalMedium-CZ_MLJig.js → swapHorizontalMedium-Dsq_1pVF.js} +1 -1
  220. package/dist/assets/{swapHorizontalRoundedBold-CwgWFbyZ.js → swapHorizontalRoundedBold-Cv2fgTdX.js} +1 -1
  221. package/dist/assets/{swapVertical-BWjx10Xt.js → swapVertical-CsLb-bdB.js} +1 -1
  222. package/dist/assets/{telegram-C9M9iiMt.js → telegram-L8MKz5QU.js} +1 -1
  223. package/dist/assets/{three-dots-CS5lwVdR.js → three-dots-C97QdF7v.js} +1 -1
  224. package/dist/assets/{twitch-DosDANsc.js → twitch-CfTFgS5v.js} +1 -1
  225. package/dist/assets/{twitterIcon-Dc49KPcO.js → twitterIcon-CGUTIvwu.js} +1 -1
  226. package/dist/assets/{typescript-BoTWiUfq.js → typescript-DMS-x3hO.js} +1 -1
  227. package/dist/assets/{use-form-item-BLVuE2i0.js → use-form-item-DOP-oyAC.js} +1 -1
  228. package/dist/assets/validator-Bhm9tAwh.js +1 -0
  229. package/dist/assets/{veo-DTcgMItK.js → veo-DcQ0FWY5.js} +1 -1
  230. package/dist/assets/{verify-BXf9kT7e.js → verify-DtewNnnL.js} +1 -1
  231. package/dist/assets/{verify-filled-DU_15uit.js → verify-filled-CYQfdaRr.js} +1 -1
  232. package/dist/assets/{w3m-modal-DMpZSMjy.js → w3m-modal-kXSm_sSu.js} +1 -1
  233. package/dist/assets/{wallet-CUGpo0A6.js → wallet-BNiH8eKE.js} +1 -1
  234. package/dist/assets/{wallet-placeholder-i4JlocHZ.js → wallet-placeholder-DVoAaEoj.js} +1 -1
  235. package/dist/assets/{walletconnect-CaIV6blM.js → walletconnect-D_-oEXxW.js} +1 -1
  236. package/dist/assets/{wan-DkuIGGBB.js → wan-C6RMxIMA.js} +1 -1
  237. package/dist/assets/{warning-circle-CIT8uQEE.js → warning-circle-Czibbg16.js} +1 -1
  238. package/dist/assets/{web-Bb7wNFds.js → web-BAdLePju.js} +1 -1
  239. package/dist/assets/{web-C_i5Dpsc.js → web-C9NXdRTM.js} +1 -1
  240. package/dist/assets/{x-CcQROvQ1.js → x-Dhnxkf73.js} +1 -1
  241. package/dist/index.html +1 -1
  242. package/package.json +1 -1
  243. package/dist/assets/Navigator-B77epd0s.js +0 -1
  244. package/dist/assets/validator-DElNJZJ2.js +0 -1
@@ -1 +1 @@
1
- import{F as S}from"./index.es-BeIj-WvV.js";import{E as q}from"./index-BLTsdbxA.js";import{E as x}from"./index-CjC7mV9L.js";import{d as k,H as l,E as c,z as C,C as o,y as $,D as s,q as n,F as a,I as u,O as A,N,x as V,J as b,M as H,Q as O}from"./vendor-vue-DU0w5ewx.js";import{D as y,b0 as K,cy as J,cz as z,cA as P,cB as Q,cC as T,cD as D,cE as G,cF as j,ao as F}from"./index-DvnC_xLE.js";import{I as U,S as X}from"./ScrollList-CCNTFcYW.js";import{E as Y}from"./index-Cgrb_qTf.js";import{p as Z}from"./pasteUploadMixin-BurWbGNQ.js";import{I as W}from"./ImagePreview-CwQNggMy.js";import{E as ee}from"./index-CiWHIvgg.js";import{E as R}from"./index-_-PkCcim.js";import{E as B,a as M}from"./index-DSt-cNy7.js";import{C as te}from"./Consumption-CuHw6ulT.js";import{a as oe}from"./price-Bl7M2Hry.js";import{b as ae}from"./errorCode-Cqj9Td_Z.js";import{n as ne}from"./nanobanana-DBscxyP3.js";import{C as se}from"./CopyToClipboard-C-YsAZ-3.js";import{I as le}from"./ImageWrapper-C1ITExgu.js";import{E as re}from"./index-ENO3BvdF.js";import{E as ie}from"./index-BSESYaJD.js";import{E as ce}from"./index-DLT5zGpy.js";import{B as ue}from"./BotPlaceholder-u7M84VaW.js";import{N as me}from"./NoTasks-pbAt4IfW.js";import"./use-form-item-BLVuE2i0.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./typescript-BoTWiUfq.js";import"./index-DlCXkGcT.js";import"./index-mg_plYx5.js";import"./index-DD9uYaJY.js";import"./_baseClone-CGF2vxwQ.js";import"./_Uint8Array-DvWTKNUb.js";import"./_initCloneObject-952WUert.js";import"./isEqual-ps8KzfY6.js";import"./index-Ci4FRvXu.js";import"./strings-DigWlKo9.js";import"./castArray-CPn6Fhtf.js";import"./debounce-9WIXSH1A.js";import"./_baseIteratee-DoMzLeQE.js";import"./index-BTEwvtEq.js";import"./index-B5fXwrbI.js";const de=k({name:"LayoutNanobanana",components:{ElDrawer:x,ElButton:q,FontAwesomeIcon:S},data(){return{drawer:!1}}}),pe={class:"main flex flex-row flex-1"},fe={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},he={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function _e(e,t,g,r,m,f){const h=s("font-awesome-icon"),_=s("el-button"),d=s("el-drawer");return n(),l("div",pe,[c("div",fe,[C(e.$slots,"config",{},void 0,!0)]),c("div",he,[C(e.$slots,"result",{},void 0,!0)]),o(_,{circle:"",class:"menu",onClick:t[0]||(t[0]=p=>e.drawer=!0)},{default:$(()=>[o(h,{icon:"fa-solid fa-magic"})]),_:1}),o(d,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=p=>e.drawer=p),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:$(()=>[C(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ge=y(de,[["render",_e],["__scopeId","data-v-9fbc8a5c"]]),be="",$e=k({name:"PromptInput",components:{ElInput:Y,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=be)}}),ve={class:"field"},ke={class:"box"},ye={class:"title font-bold"};function we(e,t,g,r,m,f){const h=s("info-icon"),_=s("el-input");return n(),l("div",ve,[c("div",ke,[c("h2",ye,a(e.$t("nanobanana.name.prompt")),1),o(h,{content:e.$t("nanobanana.description.prompt"),class:"info"},null,8,["content"])]),o(_,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=d=>e.prompt=d),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("nanobanana.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ae=y($e,[["render",we],["__scopeId","data-v-2331e197"]]),Ve=k({name:"ImageUrlsInput",components:{ElUpload:ee,ElButton:q,InfoIcon:U,ImagePreview:W,FontAwesomeIcon:S},mixins:[Z],data(){return{fileList:[],uploadUrl:K()+"/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 r=(this.fileList||[]).filter(m=>!m?.response?.file_url);this.fileList=r.length?r:[];return}const t=[];e.forEach(r=>{const m=this.fileList.find(f=>f?.response?.file_url===r||f?.url===r);m?t.push(m):t.push({name:r.split("/").pop()||r,url:r,status:"success",percentage:100,response:{file_url:r}})}),(this.fileList||[]).filter(r=>!r?.response?.file_url).forEach(r=>{t.some(f=>f===r||f?.url===r?.url||f?.response?.file_url===r?.response?.file_url)||t.push(r)}),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()}}}),Ne={class:"field flex items-center justify-between"},Ee={class:"title font-bold text-[14px] mb-[10px]"},Re={class:"upload-wrapper flex flex-col items-start gap-[8px]"},Ie={class:"controls flex items-center"},Le={class:"file-list flex flex-wrap gap-[10px]"};function Te(e,t,g,r,m,f){const h=s("font-awesome-icon"),_=s("el-button"),d=s("el-upload"),p=s("info-icon"),w=s("image-preview");return n(),l(A,null,[c("div",Ne,[c("h2",Ee,a(e.$t("nanobanana.name.imageUrls")),1),c("div",Re,[c("div",Ie,[o(d,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=i=>e.fileList=i),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value",limit:5,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:$(()=>[o(_,{size:"small",type:"primary",round:""},{default:$(()=>[o(h,{icon:"fa-solid fa-upload",class:"mr-1"}),u(" "+a(e.$t("nanobanana.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"]),o(p,{content:e.$t("nanobanana.description.imageUrls"),class:"ml-2"},null,8,["content"])])])]),c("div",Le,[(n(!0),l(A,null,N(e.fileList,(i,v)=>(n(),V(w,{key:i.uid||i?.response?.file_url||i.url||v,url:i.url||i?.response?.file_url,name:i.name,percentage:i.percentage,onRemove:E=>e.onRemovePreview(v,i)},null,8,["url","name","percentage","onRemove"]))),128))])],64)}const Se=y(Ve,[["render",Te]]),qe=k({name:"AspectRatioSelector",components:{ElSelect:M,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)}}}}),Oe={class:"field"},Ue={class:"title font-bold"};function Ce(e,t,g,r,m,f){const h=s("el-option"),_=s("el-select");return n(),l("div",Oe,[c("h2",Ue,a(e.$t("nanobanana.name.aspectRatio")),1),o(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=d=>e.value=d),class:"value",clearable:"",placeholder:e.$t("nanobanana.placeholder.select")},{default:$(()=>[(n(!0),l(A,null,N(e.options,d=>(n(),V(h,{key:d,label:d,value:d},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Pe=y(qe,[["render",Ce],["__scopeId","data-v-67f08a08"]]),Be=k({name:"NanobananaModelSelector",components:{ElSelect:M,ElOption:B,InfoIcon:U},data(){return{options:[{value:z,label:this.$t("nanobanana.model.nanoBanana")},{value:P,label:this.$t("nanobanana.model.nanoBananaPro")},{value:Q,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=J)}}),Me={class:"field"},De={class:"label"},Ge={class:"box"},je={class:"title font-bold"};function Fe(e,t,g,r,m,f){const h=s("info-icon"),_=s("el-option"),d=s("el-select");return n(),l("div",Me,[c("div",De,[c("div",Ge,[c("h2",je,a(e.$t("nanobanana.name.model")),1),o(h,{content:e.modelDescription,class:"info"},null,8,["content"])])]),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=p=>e.value=p),class:"value",placeholder:e.$t("nanobanana.placeholder.select")},{default:$(()=>[(n(!0),l(A,null,N(e.options,p=>(n(),V(_,{key:p.value,label:p.label,value:p.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ze=y(Be,[["render",Fe],["__scopeId","data-v-94304d73"]]),We=k({name:"NanobananaResolutionSelector",components:{ElSelect:M,ElOption:B,InfoIcon:U},data(){return{cachedResolution:T,options:[{value:D,label:D},{value:G,label:G},{value:j,label:j}]}},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||T):(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=T),!this.isProModel&&this.value&&(this.cachedResolution=this.value,this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:void 0}))}}),xe={class:"field"},He={class:"label"},Ke={class:"box"},Je={class:"title font-bold"};function Qe(e,t,g,r,m,f){const h=s("info-icon"),_=s("el-option"),d=s("el-select");return n(),l("div",xe,[c("div",He,[c("div",Ke,[c("h2",Je,a(e.$t("nanobanana.name.resolution")),1),o(h,{content:e.$t("nanobanana.description.resolutionProOnly"),class:"info"},null,8,["content"])])]),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=p=>e.value=p),class:"value",placeholder:e.$t("nanobanana.placeholder.select"),disabled:!e.isProModel},{default:$(()=>[(n(!0),l(A,null,N(e.options,p=>(n(),V(_,{key:p.value,label:p.label,value:p.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","disabled"])])}const Xe=y(We,[["render",Qe],["__scopeId","data-v-fd5ab393"]]),Ye=k({name:"ConfigPanel",components:{ElButton:q,FontAwesomeIcon:S,PromptInput:Ae,Consumption:te,ImageUrlsInput:Se,AspectRatioSelector:Pe,ModelSelector:ze,ResolutionSelector:Xe},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 oe({...e,action:t?"edit":"generate"},this.service?.cost)},service(){return this.$store.state.nanobanana?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Ze={class:"flex flex-col h-full"},et={class:"flex-1 overflow-y-auto p-5"},tt={class:"flex flex-col items-center justify-center px-5 pb-5"};function ot(e,t,g,r,m,f){const h=s("model-selector"),_=s("resolution-selector"),d=s("prompt-input"),p=s("aspect-ratio-selector"),w=s("image-urls-input"),i=s("consumption"),v=s("font-awesome-icon"),E=s("el-button");return n(),l("div",Ze,[c("div",et,[o(h,{class:"mb-4"}),o(_,{class:"mb-4"}),o(d,{class:"mb-4"}),o(p,{class:"mb-4"}),o(w,{class:"mb-4"})]),c("div",tt,[o(i,{value:e.consumption,service:e.service},null,8,["value","service"]),o(E,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:$(()=>[o(v,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+a(e.$t("nanobanana.button.generate")),1)]),_:1},8,["onClick"])])])}const at=y(Ye,[["render",ot]]),nt=k({name:"TaskPreview",components:{ElImage:ce,CopyToClipboard:se,FontAwesomeIcon:S,ElAlert:ie,ImageWrapper:le,ElButton:q,ElTooltip:re,ImagePreview:W},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)}}}),st={class:"preview"},lt={class:"left"},rt={class:"main"},it={class:"bot"},ct={class:"datetime"},ut={class:"info"},mt={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},dt={key:1,class:"prompt mt-2"},pt={key:0},ft={key:0,class:O({content:!0,failed:!0})},ht={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},_t={class:O({operations:!0,"mt-2":!0,"mb-2":!0})},gt={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"},$t={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},vt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},kt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},yt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},wt={key:1,class:O({content:!0})},At={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Vt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Nt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Et={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Rt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},It={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Lt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Tt={key:2,class:O({content:!0})},St={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ot={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ut={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ct={class:"text-[var(--el-text-color-regular)] text-xs mb-2"};function Pt(e,t,g,r,m,f){const h=s("el-image"),_=s("image-preview"),d=s("image-wrapper"),p=s("el-button"),w=s("el-tooltip"),i=s("font-awesome-icon"),v=s("copy-to-clipboard"),E=s("el-alert");return n(),l("div",st,[c("div",lt,[o(h,{src:"https://cdn.acedata.cloud/859plc.jpg",class:"avatar"})]),c("div",rt,[c("div",it,[u(a(e.$t("nanobanana.name.nanobananaBot"))+" ",1),c("span",ct,a(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),c("div",ut,[e.modelValue?.request?.image_urls&&e.modelValue?.request?.image_urls.length>0?(n(),l("div",mt,[(n(!0),l(A,null,N(e.modelValue?.request?.image_urls,(I,L)=>(n(),V(_,{key:L,url:I,name:`image-${L+1}`,closable:!1},null,8,["url","name"]))),128))])):b("",!0),e.modelValue?.request?.prompt?(n(),l("p",dt,[u(a(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?b("",!0):(n(),l("span",pt," - ("+a(e.$t("nanobanana.status.pending"))+") ",1))])):b("",!0)]),e.modelValue?.response?.success===!0?(n(),l("div",ft,[c("div",ht,[(n(!0),l(A,null,N(e.images,(I,L)=>(n(),V(d,{key:L,src:I?.image_url,"raw-src":I?.image_url},null,8,["src","raw-src"]))),128))]),c("div",_t,[o(w,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:$(()=>[o(p,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=H(I=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:$(()=>[u(a(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),o(E,{closable:!1,class:"mt-2 success"},{default:$(()=>[e.modelValue?.request?.model?(n(),l("p",gt,[o(i,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.model"))+": "+a(e.modelValue?.request?.model),1)])):b("",!0),e.modelValue?.request?.resolution?(n(),l("p",bt,[o(i,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.resolution"))+": "+a(e.modelValue?.request?.resolution),1)])):b("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",$t,[o(i,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.aspectRatio"))+": "+a(e.modelValue?.request?.aspect_ratio),1)])):b("",!0),e.modelValue?.request?.action?(n(),l("p",vt,[o(i,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.task"))+": "+a(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):b("",!0),c("p",kt,[o(i,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),o(v,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),l("p",yt,[o(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),o(v,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):b("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(n(),l("div",wt,[o(E,{closable:!1,class:"failure"},{template:$(()=>[o(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.failure")),1)]),default:$(()=>[e.modelValue?.request?.model?(n(),l("p",At,[o(i,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.model"))+": "+a(e.modelValue?.request?.model),1)])):b("",!0),e.modelValue?.request?.resolution?(n(),l("p",Vt,[o(i,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.resolution"))+": "+a(e.modelValue?.request?.resolution),1)])):b("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",Nt,[o(i,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.aspectRatio"))+": "+a(e.modelValue?.request?.aspect_ratio),1)])):b("",!0),e.modelValue?.request?.action?(n(),l("p",Et,[o(i,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.task"))+": "+a(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):b("",!0),c("p",Rt,[o(i,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),o(v,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),c("p",It,[o(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.failureReason"))+": "+a(e.modelValue?.response?.error?.message)+" ",1),o(v,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),l("p",Lt,[o(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),o(v,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):b("",!0)]),_:1})])):(n(),l("div",Tt,[o(E,{closable:!1,class:"info"},{template:$(()=>[o(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.failure")),1)]),default:$(()=>[e.modelValue?.request?.model?(n(),l("p",St,[o(i,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.model"))+": "+a(e.modelValue?.request?.model),1)])):b("",!0),e.modelValue?.request?.resolution?(n(),l("p",qt,[o(i,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.resolution"))+": "+a(e.modelValue?.request?.resolution),1)])):b("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",Ot,[o(i,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.aspectRatio"))+": "+a(e.modelValue?.request?.aspect_ratio),1)])):b("",!0),e.modelValue?.request?.action?(n(),l("p",Ut,[o(i,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.task"))+": "+a(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):b("",!0),c("p",Ct,[o(i,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),o(v,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const Bt=y(nt,[["render",Pt],["__scopeId","data-v-72e2ec32"]]),Mt=k({name:"RecentPanel",components:{TaskPreview:Bt,BotPlaceholder:ue,NoTasks:me,ScrollList:X},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?.()}}}),Dt={key:0},Gt={key:2,class:"w-full h-full flex items-center justify-center"};function jt(e,t,g,r,m,f){const h=s("bot-placeholder"),_=s("task-preview"),d=s("scroll-list"),p=s("no-tasks");return n(),l(A,null,[e.tasks?.items===void 0?(n(),l("div",Dt,[o(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),V(d,{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:$(()=>[(n(!0),l(A,null,N(e.tasks?.items,w=>(n(),V(_,{key:w.id,"model-value":w},null,8,["model-value"]))),128))]),_:1},8,["loading"])):b("",!0),e.tasks?.items?.length===0?(n(),l("div",Gt,[o(p)])):b("",!0)],64)}const Ft=y(Mt,[["render",jt]]),zt="https://webhook.acedata.cloud/nanobanana",Wt=k({name:"NanobananaIndex",components:{ConfigPanel:at,Layout:ge,RecentPanel:Ft},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(){if(console.debug("reached top"),this.loading||this.tasksLoading)return;const e=this.tasks?.total,t=this.tasks?.items?.length||0;if(e!==void 0&&e<=t)return;const g=this.tasks?.items?.[0];if(!g?.created_at)return;const m=this.$refs.recentPanel?.getScrollElement?.(),f=m?.scrollHeight||0,h=m?.scrollTop||0;this.loading=!0;try{if(await this.onGetTasks({createdAtMax:g.created_at}),await this.$nextTick(),m){const _=m.scrollHeight;m.scrollTop=_-f+h}}finally{this.loading=!1}},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:g,createdAtMax:r}=e||{};console.debug("limit",t,"createdAtMin",g,"createdAtMax",r),await this.$store.dispatch("nanobanana/getTasks",{limit:t,createdAtMin:g,createdAtMax:r})},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=T);const g={...e,action:t?"edit":"generate",callback_url:zt},r=this.credential?.token;if(!r){console.error("no token specified");return}R.info(this.$t("nanobanana.message.startingTask")),ne.generate(g,{token:r}).then(()=>{R.success(this.$t("nanobanana.message.startTaskSuccess"))}).catch(m=>{const f=m?.response?.data;f?.error?.code===ae?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,g,r,m,f){const h=s("config-panel"),_=s("recent-panel"),d=s("layout");return n(),V(d,null,{config:$(()=>[o(h,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:$(()=>[o(_,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Po=y(Wt,[["render",xt]]);export{Po as default};
1
+ import{F as S}from"./index.es-B2ceJEe-.js";import{E as q}from"./index-25Oi82xK.js";import{E as x}from"./index-Cu3g7nB4.js";import{d as k,H as l,E as c,z as C,C as o,y as $,D as s,q as n,F as a,I as u,O as A,N,x as V,J as b,M as H,Q as O}from"./vendor-vue-DU0w5ewx.js";import{D as y,b0 as K,cy as J,cz as z,cA as P,cB as Q,cC as T,cD as D,cE as G,cF as j,ao as F}from"./index-Bk-O7L34.js";import{I as U,S as X}from"./ScrollList-aZu_p1B4.js";import{E as Y}from"./index-Ry6IyMkb.js";import{p as Z}from"./pasteUploadMixin-BurWbGNQ.js";import{I as W}from"./ImagePreview-DX53I496.js";import{E as ee}from"./index-D7vWKmzW.js";import{E as R}from"./index-Cp42eF2R.js";import{E as B,a as M}from"./index-Bd4BP7So.js";import{C as te}from"./Consumption-DYQFnbqu.js";import{a as oe}from"./price-BfW_ZaN-.js";import{b as ae}from"./errorCode-Cqj9Td_Z.js";import{n as ne}from"./nanobanana-CdjuFA_e.js";import{C as se}from"./CopyToClipboard-D2C5yA75.js";import{I as le}from"./ImageWrapper-Dg_w6TVm.js";import{E as re}from"./index-Do6OHSnf.js";import{E as ie}from"./index-_KdgWCsj.js";import{E as ce}from"./index-Bxu6veir.js";import{B as ue}from"./BotPlaceholder-Xw824Ebv.js";import{N as me}from"./NoTasks-D1kN6xBe.js";import"./use-form-item-DOP-oyAC.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./typescript-DMS-x3hO.js";import"./index-B_uohCDD.js";import"./index-BgPVrzUN.js";import"./index-CIXUtLqg.js";import"./_baseClone-DLTr8Yd-.js";import"./_Uint8Array-axOCySub.js";import"./_initCloneObject-C4ELQ6fU.js";import"./isEqual-D4vnwyEd.js";import"./index-DQxhaWwh.js";import"./strings-DigWlKo9.js";import"./castArray-D_FrG8JL.js";import"./debounce-D2BAnQ-_.js";import"./_baseIteratee-BG9w6eZz.js";import"./index-tQF8_Vp3.js";import"./index-C1iMhCA7.js";const de=k({name:"LayoutNanobanana",components:{ElDrawer:x,ElButton:q,FontAwesomeIcon:S},data(){return{drawer:!1}}}),pe={class:"main flex flex-row flex-1"},fe={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},he={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function _e(e,t,g,r,m,f){const h=s("font-awesome-icon"),_=s("el-button"),d=s("el-drawer");return n(),l("div",pe,[c("div",fe,[C(e.$slots,"config",{},void 0,!0)]),c("div",he,[C(e.$slots,"result",{},void 0,!0)]),o(_,{circle:"",class:"menu",onClick:t[0]||(t[0]=p=>e.drawer=!0)},{default:$(()=>[o(h,{icon:"fa-solid fa-magic"})]),_:1}),o(d,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=p=>e.drawer=p),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:$(()=>[C(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ge=y(de,[["render",_e],["__scopeId","data-v-9fbc8a5c"]]),be="",$e=k({name:"PromptInput",components:{ElInput:Y,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=be)}}),ve={class:"field"},ke={class:"box"},ye={class:"title font-bold"};function we(e,t,g,r,m,f){const h=s("info-icon"),_=s("el-input");return n(),l("div",ve,[c("div",ke,[c("h2",ye,a(e.$t("nanobanana.name.prompt")),1),o(h,{content:e.$t("nanobanana.description.prompt"),class:"info"},null,8,["content"])]),o(_,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=d=>e.prompt=d),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("nanobanana.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ae=y($e,[["render",we],["__scopeId","data-v-2331e197"]]),Ve=k({name:"ImageUrlsInput",components:{ElUpload:ee,ElButton:q,InfoIcon:U,ImagePreview:W,FontAwesomeIcon:S},mixins:[Z],data(){return{fileList:[],uploadUrl:K()+"/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 r=(this.fileList||[]).filter(m=>!m?.response?.file_url);this.fileList=r.length?r:[];return}const t=[];e.forEach(r=>{const m=this.fileList.find(f=>f?.response?.file_url===r||f?.url===r);m?t.push(m):t.push({name:r.split("/").pop()||r,url:r,status:"success",percentage:100,response:{file_url:r}})}),(this.fileList||[]).filter(r=>!r?.response?.file_url).forEach(r=>{t.some(f=>f===r||f?.url===r?.url||f?.response?.file_url===r?.response?.file_url)||t.push(r)}),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()}}}),Ne={class:"field flex items-center justify-between"},Ee={class:"title font-bold text-[14px] mb-[10px]"},Re={class:"upload-wrapper flex flex-col items-start gap-[8px]"},Ie={class:"controls flex items-center"},Le={class:"file-list flex flex-wrap gap-[10px]"};function Te(e,t,g,r,m,f){const h=s("font-awesome-icon"),_=s("el-button"),d=s("el-upload"),p=s("info-icon"),w=s("image-preview");return n(),l(A,null,[c("div",Ne,[c("h2",Ee,a(e.$t("nanobanana.name.imageUrls")),1),c("div",Re,[c("div",Ie,[o(d,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=i=>e.fileList=i),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value",limit:5,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:$(()=>[o(_,{size:"small",type:"primary",round:""},{default:$(()=>[o(h,{icon:"fa-solid fa-upload",class:"mr-1"}),u(" "+a(e.$t("nanobanana.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"]),o(p,{content:e.$t("nanobanana.description.imageUrls"),class:"ml-2"},null,8,["content"])])])]),c("div",Le,[(n(!0),l(A,null,N(e.fileList,(i,v)=>(n(),V(w,{key:i.uid||i?.response?.file_url||i.url||v,url:i.url||i?.response?.file_url,name:i.name,percentage:i.percentage,onRemove:E=>e.onRemovePreview(v,i)},null,8,["url","name","percentage","onRemove"]))),128))])],64)}const Se=y(Ve,[["render",Te]]),qe=k({name:"AspectRatioSelector",components:{ElSelect:M,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)}}}}),Oe={class:"field"},Ue={class:"title font-bold"};function Ce(e,t,g,r,m,f){const h=s("el-option"),_=s("el-select");return n(),l("div",Oe,[c("h2",Ue,a(e.$t("nanobanana.name.aspectRatio")),1),o(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=d=>e.value=d),class:"value",clearable:"",placeholder:e.$t("nanobanana.placeholder.select")},{default:$(()=>[(n(!0),l(A,null,N(e.options,d=>(n(),V(h,{key:d,label:d,value:d},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Pe=y(qe,[["render",Ce],["__scopeId","data-v-67f08a08"]]),Be=k({name:"NanobananaModelSelector",components:{ElSelect:M,ElOption:B,InfoIcon:U},data(){return{options:[{value:z,label:this.$t("nanobanana.model.nanoBanana")},{value:P,label:this.$t("nanobanana.model.nanoBananaPro")},{value:Q,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=J)}}),Me={class:"field"},De={class:"label"},Ge={class:"box"},je={class:"title font-bold"};function Fe(e,t,g,r,m,f){const h=s("info-icon"),_=s("el-option"),d=s("el-select");return n(),l("div",Me,[c("div",De,[c("div",Ge,[c("h2",je,a(e.$t("nanobanana.name.model")),1),o(h,{content:e.modelDescription,class:"info"},null,8,["content"])])]),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=p=>e.value=p),class:"value",placeholder:e.$t("nanobanana.placeholder.select")},{default:$(()=>[(n(!0),l(A,null,N(e.options,p=>(n(),V(_,{key:p.value,label:p.label,value:p.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ze=y(Be,[["render",Fe],["__scopeId","data-v-94304d73"]]),We=k({name:"NanobananaResolutionSelector",components:{ElSelect:M,ElOption:B,InfoIcon:U},data(){return{cachedResolution:T,options:[{value:D,label:D},{value:G,label:G},{value:j,label:j}]}},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||T):(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=T),!this.isProModel&&this.value&&(this.cachedResolution=this.value,this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:void 0}))}}),xe={class:"field"},He={class:"label"},Ke={class:"box"},Je={class:"title font-bold"};function Qe(e,t,g,r,m,f){const h=s("info-icon"),_=s("el-option"),d=s("el-select");return n(),l("div",xe,[c("div",He,[c("div",Ke,[c("h2",Je,a(e.$t("nanobanana.name.resolution")),1),o(h,{content:e.$t("nanobanana.description.resolutionProOnly"),class:"info"},null,8,["content"])])]),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=p=>e.value=p),class:"value",placeholder:e.$t("nanobanana.placeholder.select"),disabled:!e.isProModel},{default:$(()=>[(n(!0),l(A,null,N(e.options,p=>(n(),V(_,{key:p.value,label:p.label,value:p.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","disabled"])])}const Xe=y(We,[["render",Qe],["__scopeId","data-v-fd5ab393"]]),Ye=k({name:"ConfigPanel",components:{ElButton:q,FontAwesomeIcon:S,PromptInput:Ae,Consumption:te,ImageUrlsInput:Se,AspectRatioSelector:Pe,ModelSelector:ze,ResolutionSelector:Xe},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 oe({...e,action:t?"edit":"generate"},this.service?.cost)},service(){return this.$store.state.nanobanana?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Ze={class:"flex flex-col h-full"},et={class:"flex-1 overflow-y-auto p-5"},tt={class:"flex flex-col items-center justify-center px-5 pb-5"};function ot(e,t,g,r,m,f){const h=s("model-selector"),_=s("resolution-selector"),d=s("prompt-input"),p=s("aspect-ratio-selector"),w=s("image-urls-input"),i=s("consumption"),v=s("font-awesome-icon"),E=s("el-button");return n(),l("div",Ze,[c("div",et,[o(h,{class:"mb-4"}),o(_,{class:"mb-4"}),o(d,{class:"mb-4"}),o(p,{class:"mb-4"}),o(w,{class:"mb-4"})]),c("div",tt,[o(i,{value:e.consumption,service:e.service},null,8,["value","service"]),o(E,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:$(()=>[o(v,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+a(e.$t("nanobanana.button.generate")),1)]),_:1},8,["onClick"])])])}const at=y(Ye,[["render",ot]]),nt=k({name:"TaskPreview",components:{ElImage:ce,CopyToClipboard:se,FontAwesomeIcon:S,ElAlert:ie,ImageWrapper:le,ElButton:q,ElTooltip:re,ImagePreview:W},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)}}}),st={class:"preview"},lt={class:"left"},rt={class:"main"},it={class:"bot"},ct={class:"datetime"},ut={class:"info"},mt={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},dt={key:1,class:"prompt mt-2"},pt={key:0},ft={key:0,class:O({content:!0,failed:!0})},ht={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},_t={class:O({operations:!0,"mt-2":!0,"mb-2":!0})},gt={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"},$t={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},vt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},kt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},yt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},wt={key:1,class:O({content:!0})},At={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Vt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Nt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Et={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Rt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},It={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Lt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Tt={key:2,class:O({content:!0})},St={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ot={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ut={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ct={class:"text-[var(--el-text-color-regular)] text-xs mb-2"};function Pt(e,t,g,r,m,f){const h=s("el-image"),_=s("image-preview"),d=s("image-wrapper"),p=s("el-button"),w=s("el-tooltip"),i=s("font-awesome-icon"),v=s("copy-to-clipboard"),E=s("el-alert");return n(),l("div",st,[c("div",lt,[o(h,{src:"https://cdn.acedata.cloud/859plc.jpg",class:"avatar"})]),c("div",rt,[c("div",it,[u(a(e.$t("nanobanana.name.nanobananaBot"))+" ",1),c("span",ct,a(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),c("div",ut,[e.modelValue?.request?.image_urls&&e.modelValue?.request?.image_urls.length>0?(n(),l("div",mt,[(n(!0),l(A,null,N(e.modelValue?.request?.image_urls,(I,L)=>(n(),V(_,{key:L,url:I,name:`image-${L+1}`,closable:!1},null,8,["url","name"]))),128))])):b("",!0),e.modelValue?.request?.prompt?(n(),l("p",dt,[u(a(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?b("",!0):(n(),l("span",pt," - ("+a(e.$t("nanobanana.status.pending"))+") ",1))])):b("",!0)]),e.modelValue?.response?.success===!0?(n(),l("div",ft,[c("div",ht,[(n(!0),l(A,null,N(e.images,(I,L)=>(n(),V(d,{key:L,src:I?.image_url,"raw-src":I?.image_url},null,8,["src","raw-src"]))),128))]),c("div",_t,[o(w,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:$(()=>[o(p,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=H(I=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:$(()=>[u(a(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),o(E,{closable:!1,class:"mt-2 success"},{default:$(()=>[e.modelValue?.request?.model?(n(),l("p",gt,[o(i,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.model"))+": "+a(e.modelValue?.request?.model),1)])):b("",!0),e.modelValue?.request?.resolution?(n(),l("p",bt,[o(i,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.resolution"))+": "+a(e.modelValue?.request?.resolution),1)])):b("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",$t,[o(i,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.aspectRatio"))+": "+a(e.modelValue?.request?.aspect_ratio),1)])):b("",!0),e.modelValue?.request?.action?(n(),l("p",vt,[o(i,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.task"))+": "+a(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):b("",!0),c("p",kt,[o(i,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),o(v,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),l("p",yt,[o(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),o(v,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):b("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(n(),l("div",wt,[o(E,{closable:!1,class:"failure"},{template:$(()=>[o(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.failure")),1)]),default:$(()=>[e.modelValue?.request?.model?(n(),l("p",At,[o(i,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.model"))+": "+a(e.modelValue?.request?.model),1)])):b("",!0),e.modelValue?.request?.resolution?(n(),l("p",Vt,[o(i,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.resolution"))+": "+a(e.modelValue?.request?.resolution),1)])):b("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",Nt,[o(i,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.aspectRatio"))+": "+a(e.modelValue?.request?.aspect_ratio),1)])):b("",!0),e.modelValue?.request?.action?(n(),l("p",Et,[o(i,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.task"))+": "+a(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):b("",!0),c("p",Rt,[o(i,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),o(v,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),c("p",It,[o(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.failureReason"))+": "+a(e.modelValue?.response?.error?.message)+" ",1),o(v,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),l("p",Lt,[o(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),o(v,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):b("",!0)]),_:1})])):(n(),l("div",Tt,[o(E,{closable:!1,class:"info"},{template:$(()=>[o(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.failure")),1)]),default:$(()=>[e.modelValue?.request?.model?(n(),l("p",St,[o(i,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.model"))+": "+a(e.modelValue?.request?.model),1)])):b("",!0),e.modelValue?.request?.resolution?(n(),l("p",qt,[o(i,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.resolution"))+": "+a(e.modelValue?.request?.resolution),1)])):b("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",Ot,[o(i,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.aspectRatio"))+": "+a(e.modelValue?.request?.aspect_ratio),1)])):b("",!0),e.modelValue?.request?.action?(n(),l("p",Ut,[o(i,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.task"))+": "+a(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):b("",!0),c("p",Ct,[o(i,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+a(e.$t("nanobanana.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),o(v,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const Bt=y(nt,[["render",Pt],["__scopeId","data-v-72e2ec32"]]),Mt=k({name:"RecentPanel",components:{TaskPreview:Bt,BotPlaceholder:ue,NoTasks:me,ScrollList:X},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?.()}}}),Dt={key:0},Gt={key:2,class:"w-full h-full flex items-center justify-center"};function jt(e,t,g,r,m,f){const h=s("bot-placeholder"),_=s("task-preview"),d=s("scroll-list"),p=s("no-tasks");return n(),l(A,null,[e.tasks?.items===void 0?(n(),l("div",Dt,[o(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),V(d,{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:$(()=>[(n(!0),l(A,null,N(e.tasks?.items,w=>(n(),V(_,{key:w.id,"model-value":w},null,8,["model-value"]))),128))]),_:1},8,["loading"])):b("",!0),e.tasks?.items?.length===0?(n(),l("div",Gt,[o(p)])):b("",!0)],64)}const Ft=y(Mt,[["render",jt]]),zt="https://webhook.acedata.cloud/nanobanana",Wt=k({name:"NanobananaIndex",components:{ConfigPanel:at,Layout:ge,RecentPanel:Ft},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(){if(console.debug("reached top"),this.loading||this.tasksLoading)return;const e=this.tasks?.total,t=this.tasks?.items?.length||0;if(e!==void 0&&e<=t)return;const g=this.tasks?.items?.[0];if(!g?.created_at)return;const m=this.$refs.recentPanel?.getScrollElement?.(),f=m?.scrollHeight||0,h=m?.scrollTop||0;this.loading=!0;try{if(await this.onGetTasks({createdAtMax:g.created_at}),await this.$nextTick(),m){const _=m.scrollHeight;m.scrollTop=_-f+h}}finally{this.loading=!1}},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:g,createdAtMax:r}=e||{};console.debug("limit",t,"createdAtMin",g,"createdAtMax",r),await this.$store.dispatch("nanobanana/getTasks",{limit:t,createdAtMin:g,createdAtMax:r})},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=T);const g={...e,action:t?"edit":"generate",callback_url:zt},r=this.credential?.token;if(!r){console.error("no token specified");return}R.info(this.$t("nanobanana.message.startingTask")),ne.generate(g,{token:r}).then(()=>{R.success(this.$t("nanobanana.message.startTaskSuccess"))}).catch(m=>{const f=m?.response?.data;f?.error?.code===ae?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,g,r,m,f){const h=s("config-panel"),_=s("recent-panel"),d=s("layout");return n(),V(d,null,{config:$(()=>[o(h,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:$(()=>[o(_,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Po=y(Wt,[["render",xt]]);export{Po as default};
@@ -1 +1 @@
1
- import{F as D}from"./index.es-BeIj-WvV.js";import{E as L}from"./index-BLTsdbxA.js";import{E as N}from"./index-CjC7mV9L.js";import{d as b,H as i,E as r,z as U,C as o,y as u,D as s,q as n,F as l,O as E,N as A,x as y,Q as I,R as q,I as h,J as $,G as K,L as H}from"./vendor-vue-DU0w5ewx.js";import{D as k,b0 as W,ao as G}from"./index-DvnC_xLE.js";import{a as P,b as z,c as S,d as M,e as Z,f as J,g as Q,h as Y,i as X}from"./sora-Dyuoglk1.js";import{E as C,a as R}from"./index-DSt-cNy7.js";import{p as x}from"./pasteUploadMixin-BurWbGNQ.js";import{I as B,S as ee}from"./ScrollList-CCNTFcYW.js";import{I as te}from"./ImagePreview-CwQNggMy.js";import{E as oe}from"./index-CiWHIvgg.js";import{E as T}from"./index-_-PkCcim.js";import{C as se}from"./Consumption-CuHw6ulT.js";import{E as ae}from"./index-Cgrb_qTf.js";import{a as ne}from"./price-Bl7M2Hry.js";import{b as le}from"./errorCode-Cqj9Td_Z.js";import{s as re}from"./sora-42iiSmXi.js";import{C as ie}from"./CopyToClipboard-C-YsAZ-3.js";import{V as ce}from"./VideoPlayer-QCeD6PqW.js";import{E as de}from"./index-ENO3BvdF.js";import{E as ue}from"./index-BSESYaJD.js";import{E as pe}from"./index-DLT5zGpy.js";import{B as me}from"./BotPlaceholder-u7M84VaW.js";import{N as fe}from"./NoTasks-pbAt4IfW.js";import{l as _e}from"./pagination-CcnL0MdN.js";import"./use-form-item-BLVuE2i0.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./index-Ci4FRvXu.js";import"./typescript-BoTWiUfq.js";import"./index-DlCXkGcT.js";import"./strings-DigWlKo9.js";import"./isEqual-ps8KzfY6.js";import"./_Uint8Array-DvWTKNUb.js";import"./castArray-CPn6Fhtf.js";import"./debounce-9WIXSH1A.js";import"./_baseIteratee-DoMzLeQE.js";import"./index-BTEwvtEq.js";import"./index-DD9uYaJY.js";import"./_baseClone-CGF2vxwQ.js";import"./_initCloneObject-952WUert.js";import"./index-mg_plYx5.js";import"./vue-plyr-BO2nlN4c.js";import"./index-B5fXwrbI.js";const he=b({name:"LayoutSora",components:{ElDrawer:N,ElButton:L,FontAwesomeIcon:D},data(){return{drawer:!1}}}),$e={class:"main flex flex-row flex-1"},ge={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ve={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function be(e,t,p,m,g,v){const c=s("font-awesome-icon"),d=s("el-button"),a=s("el-drawer");return n(),i("div",$e,[r("div",ge,[U(e.$slots,"config",{},void 0,!0)]),r("div",ve,[U(e.$slots,"result",{},void 0,!0)]),o(d,{circle:"",class:"menu",onClick:t[0]||(t[0]=w=>e.drawer=!0)},{default:u(()=>[o(c,{icon:"fa-solid fa-magic"})]),_:1}),o(a,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=w=>e.drawer=w),direction:"ltr","with-header":!1,size:"350px"},{default:u(()=>[U(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ke=k(he,[["render",be],["__scopeId","data-v-2dca3c13"]]),we=b({name:"ModelSelector",components:{ElSelect:R,ElOption:C},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:Z,label:"sora-2"},{value:J,label:"sora-2-pro"}]}},computed:{value:{get(){return this.$store.state.sora?.config?.model},set(e){const t=this.$store.state.sora?.config||{},p=z[e]||[S],m=t.duration,g=m&&p.includes(m)?m:p.includes(S)?S:p[0],v={...t,model:e,duration:g,size:t.size||M};this.$store.commit("sora/setConfig",v)}}},mounted(){this.value||(this.value=P)}}),ye={class:"field"},Se={class:"title font-bold"};function Ee(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return n(),i("div",ye,[r("h2",Se,l(e.$t("sora.name.model")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=a=>e.value=a),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(n(!0),i(E,null,A(e.options,a=>(n(),y(c,{key:a.value,label:a.label,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ve=k(we,[["render",Ee],["__scopeId","data-v-0cb7913d"]]),Te=b({name:"ActionSelector",components:{ElSelect:R,ElOption:C},data(){return{}},computed:{options(){return[{value:"text2video",label:this.$t("sora.button.action1")},{value:"image2video",label:this.$t("sora.button.action2")}]},value:{get(){return this.$store.state.sora?.config?.action},set(e){this.$store.commit("sora/setConfig",{...this.$store.state.sora?.config,action:e})}}},mounted(){this.value||(this.value=Q)}}),Ie={class:"field"},Ae={class:"title font-bold"},De={class:"float-left"};function Le(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return n(),i("div",Ie,[r("h2",Ae,l(e.$t("sora.name.action")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=a=>e.value=a),class:"value",placeholder:e.$t("sora.placeholder.select"),clearable:""},{default:u(()=>[(n(!0),i(E,null,A(e.options,a=>(n(),y(c,{key:a.value,label:a.label,value:a.value},{default:u(()=>[r("span",De,l(a.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ce=k(Te,[["render",Le],["__scopeId","data-v-7b82fa7f"]]),Re=b({name:"DurationSelector",components:{ElSelect:R,ElOption:C},computed:{model(){return this.$store.state.sora?.config?.model||P},allowedDurations(){return z[this.model]||[S]},optionsForModel(){return this.allowedDurations.map(e=>({value:e,label:`${e}s`}))},value:{get(){return this.$store.state.sora?.config?.duration},set(e){const t=this.$store.state.sora?.config||{};this.$store.commit("sora/setConfig",{...t,duration:e})}}},watch:{allowedDurations(){const e=this.allowedDurations;if(!e.includes(this.value)){const t=e.includes(S)?S:e[0];this.value=t}}},mounted(){this.value||(this.value=S)}}),Oe={class:"field"},Ue={class:"control"},Ge={class:"title font-bold"};function Pe(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return n(),i("div",Oe,[r("div",Ue,[r("h2",Ge,l(e.$t("sora.name.duration")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=a=>e.value=a),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(n(!0),i(E,null,A(e.optionsForModel,a=>(n(),y(c,{key:a.value,label:a.label,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])])}const ze=k(Re,[["render",Pe],["__scopeId","data-v-c2934598"]]),Me=b({name:"OrientationSelector",data(){return{options:[{value:"portrait",labelKey:"sora.option.portrait",width:13,height:25},{value:"landscape",labelKey:"sora.option.landscape",width:25,height:13}]}},computed:{active(){const e=this.options.findIndex(t=>t.value===this.value);return e>=0?e:0},value:{get(){return this.$store.state.sora?.config?.orientation},set(e){console.debug("set orientation",e),this.$store.commit("sora/setConfig",{...this.$store.state?.sora?.config,orientation:e})}}},mounted(){this.value||(this.value=Y)}}),Be={class:"text-sm font-bold mb-2 block"},Fe={class:"items"},je=["onClick"],Ne={class:"name"};function qe(e,t,p,m,g,v){return n(),i("div",null,[r("span",Be,l(e.$t("sora.name.orientation")),1),r("div",Fe,[(n(!0),i(E,null,A(e.options,(c,d)=>(n(),i("div",{key:d,class:I({active:e.active===d,item:!0}),onClick:a=>e.value=c.value},[r("div",{class:I(["preview",c.value])},[r("div",{class:"rect",style:q({width:c.width+"px",height:c.height+"px"})},null,4)],2),r("p",Ne,l(e.$t(c.labelKey)),1)],10,je))),128))])])}const Ke=k(Me,[["render",qe],["__scopeId","data-v-a20be6d9"]]),He=b({name:"StartEndImage",components:{ElUpload:oe,ElButton:L,InfoIcon:B,FontAwesomeIcon:D,ImagePreview:te},mixins:[x],emits:["change"],data(){return{fileList:[],uploadUrl:W()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.sora?.config?.image_urls},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartEndImageUrl()},methods:{onExceed(){T.warning(this.$t("sora.message.uploadReferencesExceed"))},onError(){T.error(this.$t("sora.message.uploadReferencesError"))},onSetStartEndImageUrl(){const e=this.urls;this.$store.commit("sora/setConfig",{...this.$store.state?.sora?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),We={class:"relative"},Ze={class:"flex justify-between"},Je={class:"flex justify-start items-center"},Qe={class:"text-sm font-bold"};function Ye(e,t,p,m,g,v){const c=s("info-icon"),d=s("image-preview"),a=s("font-awesome-icon"),w=s("el-button"),_=s("el-upload");return n(),i("div",We,[r("div",Ze,[r("div",Je,[r("span",Qe,l(e.$t("sora.name.startEndImage")),1),o(c,{content:e.$t("sora.description.uploadStartEndImage")},null,8,["content"])])]),o(_,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=f=>e.fileList=f),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:2,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:u(({file:f})=>[f.url&&f.percentage!==void 0?(n(),y(d,{key:0,url:f.url,name:f.name,percentage:f.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(f),1)},null,8,["url","name","percentage","onRemove"])):$("",!0)]),default:u(()=>[o(w,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:u(()=>[o(a,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+l(e.$t("sora.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const Xe=k(He,[["render",Ye],["__scopeId","data-v-a942382b"]]),xe=e=>e&&e.charAt(0).toUpperCase()+e.slice(1),et=b({name:"SizeSelector",components:{ElSelect:R,ElOption:C},data(){return{options:X.map(e=>({value:e,label:xe(e)}))}},computed:{value:{get(){return this.$store.state.sora?.config?.size},set(e){const t=this.$store.state.sora?.config||{};this.$store.commit("sora/setConfig",{...t,size:e})}}},mounted(){this.value||(this.value=M)}}),tt={class:"field"},ot={class:"control"},st={class:"title font-bold"};function at(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return n(),i("div",tt,[r("div",ot,[r("h2",st,l(e.$t("sora.name.size")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=a=>e.value=a),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(n(!0),i(E,null,A(e.options,a=>(n(),y(c,{key:a.value,label:a.label,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])])}const nt=k(et,[["render",at],["__scopeId","data-v-8c485f0f"]]),lt="",rt=b({name:"PromptInput",components:{ElInput:ae,InfoIcon:B},computed:{prompt:{get(){return this.$store.state.sora?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("sora/setConfig",{...this.$store.state.sora?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=lt)}}),it={class:"field"},ct={class:"box"},dt={class:"title font-bold"};function ut(e,t,p,m,g,v){const c=s("info-icon"),d=s("el-input");return n(),i("div",it,[r("div",ct,[r("h2",dt,l(e.$t("sora.name.prompt")),1),o(c,{content:e.$t("sora.description.prompt"),class:"info"},null,8,["content"])]),o(d,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=a=>e.prompt=a),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("sora.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const pt=k(rt,[["render",ut],["__scopeId","data-v-a57633d5"]]),mt=b({name:"ConfigPanel",components:{ElButton:L,Consumption:se,FontAwesomeIcon:D,PromptInput:pt,ModelSelector:Ve,StartEndImage:Xe,SizeSelector:nt,ActionSelector:Ce,OrientationSelector:Ke,DurationSelector:ze},emits:["generate"],computed:{config(){return this.$store.state.sora?.config},consumption(){return ne(this.config,this.service?.cost)},service(){return this.$store.state.sora?.service}},methods:{onGenerate(){this.$emit("generate")}}}),ft={class:"flex flex-col h-full"},_t={class:"flex-1 overflow-y-auto p-5"},ht={class:"flex flex-col items-center justify-center px-5 pb-5"};function $t(e,t,p,m,g,v){const c=s("model-selector"),d=s("action-selector"),a=s("duration-selector"),w=s("size-selector"),_=s("orientation-selector"),f=s("prompt-input"),V=s("start-end-image"),O=s("consumption"),F=s("font-awesome-icon"),j=s("el-button");return n(),i("div",ft,[r("div",_t,[o(c,{class:"mb-4"}),o(d,{class:"mb-4"}),o(a,{class:"mb-4"}),o(w,{class:"mb-4"}),o(_,{class:"mb-4"}),o(f,{class:"mb-4"}),K(o(V,{class:"mb-2"},null,512),[[H,e.config?.action==="image2video"]])]),r("div",ht,[o(O,{value:e.consumption,service:e.service},null,8,["value","service"]),o(j,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[o(F,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+l(e.$t("sora.button.generate")),1)]),_:1},8,["onClick"])])])}const gt=k(mt,[["render",$t]]),vt=b({name:"TaskPreview",components:{ElImage:pe,CopyToClipboard:ie,FontAwesomeIcon:D,ElAlert:ue,VideoPlayer:ce,ElTooltip:de,ElButton:L},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.sora?.application},config(){return this.$store.state.sora?.config}},methods:{onDownload(e,t){e.stopPropagation(),console.log("on download"),window.open(t,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),bt={class:"preview"},kt={class:"left"},wt={class:"main"},yt={class:"bot"},St={class:"datetime"},Et={class:"info"},Vt={key:0,class:"prompt mt-2"},Tt={key:0},It={key:1},At={key:0,class:I({content:!0,failed:!0})},Dt={key:0,class:"mb-4"},Lt={key:1,class:I({operations:!0,"mt-2":!0})},Ct={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Rt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ot={key:1,class:I({content:!0})},Ut={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Pt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},zt={key:2,class:I({content:!0})},Mt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Ft(e,t,p,m,g,v){const c=s("el-image"),d=s("video-player"),a=s("el-button"),w=s("el-tooltip"),_=s("font-awesome-icon"),f=s("copy-to-clipboard"),V=s("el-alert");return n(),i("div",bt,[r("div",kt,[o(c,{src:"https://cdn.acedata.cloud/z5id1u.png",class:"avatar"})]),r("div",wt,[r("div",yt,[h(l(e.$t("sora.name.soraBot"))+" ",1),r("span",St,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Et,[e.modelValue?.request?.prompt?(n(),i("p",Vt,[h(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?$("",!0):(n(),i("span",Tt," - ("+l(e.$t("sora.status.pending"))+") ",1)),Array.isArray(e.modelValue?.response?.data)&&e.modelValue?.response?.data[0]?.state==="pending"?(n(),i("span",It," - ("+l(e.$t("sora.status.processing"))+") ",1)):$("",!0)])):$("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(n(),i("div",At,[e.modelValue?.response?.data[0]?.video_url?(n(),i("div",Dt,[o(d,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):$("",!0),e.modelValue?.response.success?(n(),i("div",Lt,[o(w,{class:"box-item",effect:"dark",content:e.$t("sora.message.downloadVideo"),placement:"top-start"},{default:u(()=>[e.modelValue?.response?.data[0]?.video_url?(n(),y(a,{key:0,type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=O=>e.onDownload(O,e.modelValue?.response?.data[0]?.video_url))},{default:u(()=>[h(l(e.$t("sora.button.download")),1)]),_:1})):$("",!0)]),_:1},8,["content"])])):$("",!0),o(V,{closable:!1,class:"mt-2 success"},{default:u(()=>[r("p",Ct,[o(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+l(e.$t("sora.name.model"))+": "+l(e.modelValue?.request?.model),1)]),r("p",Rt,[o(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+l(e.$t("sora.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),o(f,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(n(),i("div",Ot,[o(V,{closable:!1,class:"failure"},{template:u(()=>[o(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+l(e.$t("sora.name.failure")),1)]),default:u(()=>[r("p",Ut,[o(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+l(e.$t("sora.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),o(f,{content:e.modelValue?.id},null,8,["content"])]),r("p",Gt,[o(_,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+l(e.$t("sora.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),o(f,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),i("p",Pt,[o(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+l(e.$t("sora.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),o(f,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):$("",!0)]),_:1})])):$("",!0),e.modelValue?.response?.success===void 0?(n(),i("div",zt,[o(V,{closable:!1,class:"info"},{template:u(()=>[o(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+l(e.$t("sora.name.failure")),1)]),default:u(()=>[r("p",Mt,[o(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+l(e.$t("sora.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),o(f,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),i("p",Bt,[o(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+l(e.$t("sora.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),o(f,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):$("",!0)]),_:1})])):$("",!0)])])}const jt=k(vt,[["render",Ft],["__scopeId","data-v-7b468b7a"]]),Nt=b({name:"RecentPanel",components:{TaskPreview:jt,NoTasks:fe,BotPlaceholder:me,ScrollList:ee},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.sora?.tasks,items:this.$store.state.sora?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),qt={key:0},Kt={key:2,class:"w-full h-full flex items-center justify-center"};function Ht(e,t,p,m,g,v){const c=s("bot-placeholder"),d=s("task-preview"),a=s("scroll-list"),w=s("no-tasks");return n(),i(E,null,[e.tasks?.items===void 0?(n(),i("div",qt,[o(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),y(a,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=_=>e.$emit("reach-top"))},{default:u(()=>[(n(!0),i(E,null,A(e.tasks?.items,(_,f)=>(n(),y(d,{key:f,"model-value":_},null,8,["model-value"]))),128))]),_:1},8,["loading"])):$("",!0),e.tasks?.items?.length===0?(n(),i("div",Kt,[o(w)])):$("",!0)],64)}const Wt=k(Nt,[["render",Ht]]),Zt="https://webhook.acedata.cloud/sora",Jt=b({name:"SoraIndex",components:{ConfigPanel:gt,Layout:ke,RecentPanel:Wt},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.sora?.status?.getApplications===G.Request},tasksLoading(){return this.$store.state.sora?.status?.getTasks===G.Request||this.fetchingTasks},credential(){return this.$store.state.sora.credential},config(){return this.$store.state.sora.config},tasks(){return this.$store.state.sora.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await _e({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("sora/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("sora/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=5,createdAtMin:p,createdAtMax:m}=e||{};console.debug("limit",t,"createdAtMin",p,"createdAtMax",m),this.fetchingTasks=!0;try{await this.$store.dispatch("sora/getTasks",{limit:t,createdAtMin:p,createdAtMax:m})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Zt},t=this.credential?.token;if(!t){console.error("no token specified");return}T.info(this.$t("sora.message.startingTask")),re.generate(e,{token:t}).then(()=>{T.success(this.$t("sora.message.startTaskSuccess"))}).catch(p=>{p?.response?.data?.error?.code===le?T.error(this.$t("sora.message.usedUp")):T.error(this.$t("sora.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Qt(e,t,p,m,g,v){const c=s("config-panel"),d=s("recent-panel"),a=s("layout");return n(),y(a,null,{config:u(()=>[o(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:u(()=>[o(d,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const qo=k(Jt,[["render",Qt]]);export{qo as default};
1
+ import{F as D}from"./index.es-B2ceJEe-.js";import{E as L}from"./index-25Oi82xK.js";import{E as N}from"./index-Cu3g7nB4.js";import{d as b,H as i,E as r,z as U,C as o,y as u,D as s,q as n,F as l,O as E,N as A,x as y,Q as I,R as q,I as h,J as $,G as K,L as H}from"./vendor-vue-DU0w5ewx.js";import{D as k,b0 as W,ao as G}from"./index-Bk-O7L34.js";import{a as P,b as z,c as S,d as M,e as Z,f as J,g as Q,h as Y,i as X}from"./sora-Dyuoglk1.js";import{E as C,a as R}from"./index-Bd4BP7So.js";import{p as x}from"./pasteUploadMixin-BurWbGNQ.js";import{I as B,S as ee}from"./ScrollList-aZu_p1B4.js";import{I as te}from"./ImagePreview-DX53I496.js";import{E as oe}from"./index-D7vWKmzW.js";import{E as T}from"./index-Cp42eF2R.js";import{C as se}from"./Consumption-DYQFnbqu.js";import{E as ae}from"./index-Ry6IyMkb.js";import{a as ne}from"./price-BfW_ZaN-.js";import{b as le}from"./errorCode-Cqj9Td_Z.js";import{s as re}from"./sora-QPlFMQRB.js";import{C as ie}from"./CopyToClipboard-D2C5yA75.js";import{V as ce}from"./VideoPlayer-N6hsMqS4.js";import{E as de}from"./index-Do6OHSnf.js";import{E as ue}from"./index-_KdgWCsj.js";import{E as pe}from"./index-Bxu6veir.js";import{B as me}from"./BotPlaceholder-Xw824Ebv.js";import{N as fe}from"./NoTasks-D1kN6xBe.js";import{l as _e}from"./pagination-CcnL0MdN.js";import"./use-form-item-DOP-oyAC.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./index-DQxhaWwh.js";import"./typescript-DMS-x3hO.js";import"./index-B_uohCDD.js";import"./strings-DigWlKo9.js";import"./isEqual-D4vnwyEd.js";import"./_Uint8Array-axOCySub.js";import"./castArray-D_FrG8JL.js";import"./debounce-D2BAnQ-_.js";import"./_baseIteratee-BG9w6eZz.js";import"./index-tQF8_Vp3.js";import"./index-CIXUtLqg.js";import"./_baseClone-DLTr8Yd-.js";import"./_initCloneObject-C4ELQ6fU.js";import"./index-BgPVrzUN.js";import"./vue-plyr-BO2nlN4c.js";import"./index-C1iMhCA7.js";const he=b({name:"LayoutSora",components:{ElDrawer:N,ElButton:L,FontAwesomeIcon:D},data(){return{drawer:!1}}}),$e={class:"main flex flex-row flex-1"},ge={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ve={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function be(e,t,p,m,g,v){const c=s("font-awesome-icon"),d=s("el-button"),a=s("el-drawer");return n(),i("div",$e,[r("div",ge,[U(e.$slots,"config",{},void 0,!0)]),r("div",ve,[U(e.$slots,"result",{},void 0,!0)]),o(d,{circle:"",class:"menu",onClick:t[0]||(t[0]=w=>e.drawer=!0)},{default:u(()=>[o(c,{icon:"fa-solid fa-magic"})]),_:1}),o(a,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=w=>e.drawer=w),direction:"ltr","with-header":!1,size:"350px"},{default:u(()=>[U(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ke=k(he,[["render",be],["__scopeId","data-v-2dca3c13"]]),we=b({name:"ModelSelector",components:{ElSelect:R,ElOption:C},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:Z,label:"sora-2"},{value:J,label:"sora-2-pro"}]}},computed:{value:{get(){return this.$store.state.sora?.config?.model},set(e){const t=this.$store.state.sora?.config||{},p=z[e]||[S],m=t.duration,g=m&&p.includes(m)?m:p.includes(S)?S:p[0],v={...t,model:e,duration:g,size:t.size||M};this.$store.commit("sora/setConfig",v)}}},mounted(){this.value||(this.value=P)}}),ye={class:"field"},Se={class:"title font-bold"};function Ee(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return n(),i("div",ye,[r("h2",Se,l(e.$t("sora.name.model")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=a=>e.value=a),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(n(!0),i(E,null,A(e.options,a=>(n(),y(c,{key:a.value,label:a.label,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ve=k(we,[["render",Ee],["__scopeId","data-v-0cb7913d"]]),Te=b({name:"ActionSelector",components:{ElSelect:R,ElOption:C},data(){return{}},computed:{options(){return[{value:"text2video",label:this.$t("sora.button.action1")},{value:"image2video",label:this.$t("sora.button.action2")}]},value:{get(){return this.$store.state.sora?.config?.action},set(e){this.$store.commit("sora/setConfig",{...this.$store.state.sora?.config,action:e})}}},mounted(){this.value||(this.value=Q)}}),Ie={class:"field"},Ae={class:"title font-bold"},De={class:"float-left"};function Le(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return n(),i("div",Ie,[r("h2",Ae,l(e.$t("sora.name.action")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=a=>e.value=a),class:"value",placeholder:e.$t("sora.placeholder.select"),clearable:""},{default:u(()=>[(n(!0),i(E,null,A(e.options,a=>(n(),y(c,{key:a.value,label:a.label,value:a.value},{default:u(()=>[r("span",De,l(a.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ce=k(Te,[["render",Le],["__scopeId","data-v-7b82fa7f"]]),Re=b({name:"DurationSelector",components:{ElSelect:R,ElOption:C},computed:{model(){return this.$store.state.sora?.config?.model||P},allowedDurations(){return z[this.model]||[S]},optionsForModel(){return this.allowedDurations.map(e=>({value:e,label:`${e}s`}))},value:{get(){return this.$store.state.sora?.config?.duration},set(e){const t=this.$store.state.sora?.config||{};this.$store.commit("sora/setConfig",{...t,duration:e})}}},watch:{allowedDurations(){const e=this.allowedDurations;if(!e.includes(this.value)){const t=e.includes(S)?S:e[0];this.value=t}}},mounted(){this.value||(this.value=S)}}),Oe={class:"field"},Ue={class:"control"},Ge={class:"title font-bold"};function Pe(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return n(),i("div",Oe,[r("div",Ue,[r("h2",Ge,l(e.$t("sora.name.duration")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=a=>e.value=a),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(n(!0),i(E,null,A(e.optionsForModel,a=>(n(),y(c,{key:a.value,label:a.label,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])])}const ze=k(Re,[["render",Pe],["__scopeId","data-v-c2934598"]]),Me=b({name:"OrientationSelector",data(){return{options:[{value:"portrait",labelKey:"sora.option.portrait",width:13,height:25},{value:"landscape",labelKey:"sora.option.landscape",width:25,height:13}]}},computed:{active(){const e=this.options.findIndex(t=>t.value===this.value);return e>=0?e:0},value:{get(){return this.$store.state.sora?.config?.orientation},set(e){console.debug("set orientation",e),this.$store.commit("sora/setConfig",{...this.$store.state?.sora?.config,orientation:e})}}},mounted(){this.value||(this.value=Y)}}),Be={class:"text-sm font-bold mb-2 block"},Fe={class:"items"},je=["onClick"],Ne={class:"name"};function qe(e,t,p,m,g,v){return n(),i("div",null,[r("span",Be,l(e.$t("sora.name.orientation")),1),r("div",Fe,[(n(!0),i(E,null,A(e.options,(c,d)=>(n(),i("div",{key:d,class:I({active:e.active===d,item:!0}),onClick:a=>e.value=c.value},[r("div",{class:I(["preview",c.value])},[r("div",{class:"rect",style:q({width:c.width+"px",height:c.height+"px"})},null,4)],2),r("p",Ne,l(e.$t(c.labelKey)),1)],10,je))),128))])])}const Ke=k(Me,[["render",qe],["__scopeId","data-v-a20be6d9"]]),He=b({name:"StartEndImage",components:{ElUpload:oe,ElButton:L,InfoIcon:B,FontAwesomeIcon:D,ImagePreview:te},mixins:[x],emits:["change"],data(){return{fileList:[],uploadUrl:W()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.sora?.config?.image_urls},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartEndImageUrl()},methods:{onExceed(){T.warning(this.$t("sora.message.uploadReferencesExceed"))},onError(){T.error(this.$t("sora.message.uploadReferencesError"))},onSetStartEndImageUrl(){const e=this.urls;this.$store.commit("sora/setConfig",{...this.$store.state?.sora?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),We={class:"relative"},Ze={class:"flex justify-between"},Je={class:"flex justify-start items-center"},Qe={class:"text-sm font-bold"};function Ye(e,t,p,m,g,v){const c=s("info-icon"),d=s("image-preview"),a=s("font-awesome-icon"),w=s("el-button"),_=s("el-upload");return n(),i("div",We,[r("div",Ze,[r("div",Je,[r("span",Qe,l(e.$t("sora.name.startEndImage")),1),o(c,{content:e.$t("sora.description.uploadStartEndImage")},null,8,["content"])])]),o(_,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=f=>e.fileList=f),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:2,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:u(({file:f})=>[f.url&&f.percentage!==void 0?(n(),y(d,{key:0,url:f.url,name:f.name,percentage:f.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(f),1)},null,8,["url","name","percentage","onRemove"])):$("",!0)]),default:u(()=>[o(w,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:u(()=>[o(a,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+l(e.$t("sora.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const Xe=k(He,[["render",Ye],["__scopeId","data-v-a942382b"]]),xe=e=>e&&e.charAt(0).toUpperCase()+e.slice(1),et=b({name:"SizeSelector",components:{ElSelect:R,ElOption:C},data(){return{options:X.map(e=>({value:e,label:xe(e)}))}},computed:{value:{get(){return this.$store.state.sora?.config?.size},set(e){const t=this.$store.state.sora?.config||{};this.$store.commit("sora/setConfig",{...t,size:e})}}},mounted(){this.value||(this.value=M)}}),tt={class:"field"},ot={class:"control"},st={class:"title font-bold"};function at(e,t,p,m,g,v){const c=s("el-option"),d=s("el-select");return n(),i("div",tt,[r("div",ot,[r("h2",st,l(e.$t("sora.name.size")),1),o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=a=>e.value=a),class:"value",placeholder:e.$t("sora.placeholder.select")},{default:u(()=>[(n(!0),i(E,null,A(e.options,a=>(n(),y(c,{key:a.value,label:a.label,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])])}const nt=k(et,[["render",at],["__scopeId","data-v-8c485f0f"]]),lt="",rt=b({name:"PromptInput",components:{ElInput:ae,InfoIcon:B},computed:{prompt:{get(){return this.$store.state.sora?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("sora/setConfig",{...this.$store.state.sora?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=lt)}}),it={class:"field"},ct={class:"box"},dt={class:"title font-bold"};function ut(e,t,p,m,g,v){const c=s("info-icon"),d=s("el-input");return n(),i("div",it,[r("div",ct,[r("h2",dt,l(e.$t("sora.name.prompt")),1),o(c,{content:e.$t("sora.description.prompt"),class:"info"},null,8,["content"])]),o(d,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=a=>e.prompt=a),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("sora.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const pt=k(rt,[["render",ut],["__scopeId","data-v-a57633d5"]]),mt=b({name:"ConfigPanel",components:{ElButton:L,Consumption:se,FontAwesomeIcon:D,PromptInput:pt,ModelSelector:Ve,StartEndImage:Xe,SizeSelector:nt,ActionSelector:Ce,OrientationSelector:Ke,DurationSelector:ze},emits:["generate"],computed:{config(){return this.$store.state.sora?.config},consumption(){return ne(this.config,this.service?.cost)},service(){return this.$store.state.sora?.service}},methods:{onGenerate(){this.$emit("generate")}}}),ft={class:"flex flex-col h-full"},_t={class:"flex-1 overflow-y-auto p-5"},ht={class:"flex flex-col items-center justify-center px-5 pb-5"};function $t(e,t,p,m,g,v){const c=s("model-selector"),d=s("action-selector"),a=s("duration-selector"),w=s("size-selector"),_=s("orientation-selector"),f=s("prompt-input"),V=s("start-end-image"),O=s("consumption"),F=s("font-awesome-icon"),j=s("el-button");return n(),i("div",ft,[r("div",_t,[o(c,{class:"mb-4"}),o(d,{class:"mb-4"}),o(a,{class:"mb-4"}),o(w,{class:"mb-4"}),o(_,{class:"mb-4"}),o(f,{class:"mb-4"}),K(o(V,{class:"mb-2"},null,512),[[H,e.config?.action==="image2video"]])]),r("div",ht,[o(O,{value:e.consumption,service:e.service},null,8,["value","service"]),o(j,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[o(F,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+l(e.$t("sora.button.generate")),1)]),_:1},8,["onClick"])])])}const gt=k(mt,[["render",$t]]),vt=b({name:"TaskPreview",components:{ElImage:pe,CopyToClipboard:ie,FontAwesomeIcon:D,ElAlert:ue,VideoPlayer:ce,ElTooltip:de,ElButton:L},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.sora?.application},config(){return this.$store.state.sora?.config}},methods:{onDownload(e,t){e.stopPropagation(),console.log("on download"),window.open(t,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),bt={class:"preview"},kt={class:"left"},wt={class:"main"},yt={class:"bot"},St={class:"datetime"},Et={class:"info"},Vt={key:0,class:"prompt mt-2"},Tt={key:0},It={key:1},At={key:0,class:I({content:!0,failed:!0})},Dt={key:0,class:"mb-4"},Lt={key:1,class:I({operations:!0,"mt-2":!0})},Ct={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Rt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ot={key:1,class:I({content:!0})},Ut={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Pt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},zt={key:2,class:I({content:!0})},Mt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Ft(e,t,p,m,g,v){const c=s("el-image"),d=s("video-player"),a=s("el-button"),w=s("el-tooltip"),_=s("font-awesome-icon"),f=s("copy-to-clipboard"),V=s("el-alert");return n(),i("div",bt,[r("div",kt,[o(c,{src:"https://cdn.acedata.cloud/z5id1u.png",class:"avatar"})]),r("div",wt,[r("div",yt,[h(l(e.$t("sora.name.soraBot"))+" ",1),r("span",St,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Et,[e.modelValue?.request?.prompt?(n(),i("p",Vt,[h(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?$("",!0):(n(),i("span",Tt," - ("+l(e.$t("sora.status.pending"))+") ",1)),Array.isArray(e.modelValue?.response?.data)&&e.modelValue?.response?.data[0]?.state==="pending"?(n(),i("span",It," - ("+l(e.$t("sora.status.processing"))+") ",1)):$("",!0)])):$("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(n(),i("div",At,[e.modelValue?.response?.data[0]?.video_url?(n(),i("div",Dt,[o(d,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):$("",!0),e.modelValue?.response.success?(n(),i("div",Lt,[o(w,{class:"box-item",effect:"dark",content:e.$t("sora.message.downloadVideo"),placement:"top-start"},{default:u(()=>[e.modelValue?.response?.data[0]?.video_url?(n(),y(a,{key:0,type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=O=>e.onDownload(O,e.modelValue?.response?.data[0]?.video_url))},{default:u(()=>[h(l(e.$t("sora.button.download")),1)]),_:1})):$("",!0)]),_:1},8,["content"])])):$("",!0),o(V,{closable:!1,class:"mt-2 success"},{default:u(()=>[r("p",Ct,[o(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+l(e.$t("sora.name.model"))+": "+l(e.modelValue?.request?.model),1)]),r("p",Rt,[o(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+l(e.$t("sora.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),o(f,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(n(),i("div",Ot,[o(V,{closable:!1,class:"failure"},{template:u(()=>[o(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+l(e.$t("sora.name.failure")),1)]),default:u(()=>[r("p",Ut,[o(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+l(e.$t("sora.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),o(f,{content:e.modelValue?.id},null,8,["content"])]),r("p",Gt,[o(_,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+l(e.$t("sora.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),o(f,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),i("p",Pt,[o(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+l(e.$t("sora.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),o(f,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):$("",!0)]),_:1})])):$("",!0),e.modelValue?.response?.success===void 0?(n(),i("div",zt,[o(V,{closable:!1,class:"info"},{template:u(()=>[o(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+l(e.$t("sora.name.failure")),1)]),default:u(()=>[r("p",Mt,[o(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+l(e.$t("sora.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),o(f,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),i("p",Bt,[o(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+l(e.$t("sora.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),o(f,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):$("",!0)]),_:1})])):$("",!0)])])}const jt=k(vt,[["render",Ft],["__scopeId","data-v-7b468b7a"]]),Nt=b({name:"RecentPanel",components:{TaskPreview:jt,NoTasks:fe,BotPlaceholder:me,ScrollList:ee},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.sora?.tasks,items:this.$store.state.sora?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),qt={key:0},Kt={key:2,class:"w-full h-full flex items-center justify-center"};function Ht(e,t,p,m,g,v){const c=s("bot-placeholder"),d=s("task-preview"),a=s("scroll-list"),w=s("no-tasks");return n(),i(E,null,[e.tasks?.items===void 0?(n(),i("div",qt,[o(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),y(a,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=_=>e.$emit("reach-top"))},{default:u(()=>[(n(!0),i(E,null,A(e.tasks?.items,(_,f)=>(n(),y(d,{key:f,"model-value":_},null,8,["model-value"]))),128))]),_:1},8,["loading"])):$("",!0),e.tasks?.items?.length===0?(n(),i("div",Kt,[o(w)])):$("",!0)],64)}const Wt=k(Nt,[["render",Ht]]),Zt="https://webhook.acedata.cloud/sora",Jt=b({name:"SoraIndex",components:{ConfigPanel:gt,Layout:ke,RecentPanel:Wt},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.sora?.status?.getApplications===G.Request},tasksLoading(){return this.$store.state.sora?.status?.getTasks===G.Request||this.fetchingTasks},credential(){return this.$store.state.sora.credential},config(){return this.$store.state.sora.config},tasks(){return this.$store.state.sora.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await _e({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("sora/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("sora/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=5,createdAtMin:p,createdAtMax:m}=e||{};console.debug("limit",t,"createdAtMin",p,"createdAtMax",m),this.fetchingTasks=!0;try{await this.$store.dispatch("sora/getTasks",{limit:t,createdAtMin:p,createdAtMax:m})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Zt},t=this.credential?.token;if(!t){console.error("no token specified");return}T.info(this.$t("sora.message.startingTask")),re.generate(e,{token:t}).then(()=>{T.success(this.$t("sora.message.startTaskSuccess"))}).catch(p=>{p?.response?.data?.error?.code===le?T.error(this.$t("sora.message.usedUp")):T.error(this.$t("sora.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Qt(e,t,p,m,g,v){const c=s("config-panel"),d=s("recent-panel"),a=s("layout");return n(),y(a,null,{config:u(()=>[o(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:u(()=>[o(d,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const qo=k(Jt,[["render",Qt]]);export{qo as default};
@@ -1 +1 @@
1
- import{F as C}from"./index.es-BeIj-WvV.js";import{E as P}from"./index-BLTsdbxA.js";import{E as G}from"./index-CjC7mV9L.js";import{d as v,H as l,E as r,z as A,C as t,y as d,D as a,q as o,F as i,I as _,O as I,N as T,x as E,Q as S,c as U,J as $}from"./vendor-vue-DU0w5ewx.js";import{D as b,b0 as D,a6 as z,ao as V}from"./index-DvnC_xLE.js";import{p as M}from"./pasteUploadMixin-BurWbGNQ.js";import{I as O,S as j}from"./ScrollList-CCNTFcYW.js";import{I as B}from"./ImagePreview-CwQNggMy.js";import{E as q}from"./index-CiWHIvgg.js";import{E as w}from"./index-_-PkCcim.js";import{a as N,E as F}from"./index-Bz9zugZw.js";import{E as L}from"./index-DLT5zGpy.js";import{E as H,a as J}from"./index---PxsvUJ.js";import{b as Q,a as K}from"./errorCode-Cqj9Td_Z.js";import{h as W}from"./headshots-DQ7Lm1l2.js";import{A as X}from"./Status-yXxQ-1Da.js";import{C as Y}from"./CopyToClipboard-C-YsAZ-3.js";import{E as Z}from"./index-BSESYaJD.js";import{E as x,a as ee}from"./index-B5fXwrbI.js";import{l as te}from"./pagination-CcnL0MdN.js";import"./use-form-item-BLVuE2i0.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./index-ENO3BvdF.js";import"./index-DlCXkGcT.js";import"./typescript-BoTWiUfq.js";import"./index-DD9uYaJY.js";import"./_baseClone-CGF2vxwQ.js";import"./_Uint8Array-DvWTKNUb.js";import"./_initCloneObject-952WUert.js";import"./isEqual-ps8KzfY6.js";import"./debounce-9WIXSH1A.js";import"./index-mg_plYx5.js";import"./strings-DigWlKo9.js";import"./isPlainObject-DjORb5hQ.js";const se=v({name:"LayoutHeadshots",components:{ElDrawer:G,ElButton:P,FontAwesomeIcon:C},data(){return{drawer:!1}}}),oe={class:"main flex flex-row flex-1"},ae={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ne={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ie(e,s,m,h,k,y){const p=a("font-awesome-icon"),u=a("el-button"),n=a("el-drawer");return o(),l("div",oe,[r("div",ae,[A(e.$slots,"config",{},void 0,!0)]),r("div",ne,[A(e.$slots,"result",{},void 0,!0)]),t(u,{circle:"",class:"menu",onClick:s[0]||(s[0]=c=>e.drawer=!0)},{default:d(()=>[t(p,{icon:"fa-solid fa-gear"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":s[1]||(s[1]=c=>e.drawer=c),"with-header":!1,size:"340px",class:"drawer"},{default:d(()=>[A(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const le=b(se,[["render",ie],["__scopeId","data-v-202b355b"]]),re=v({name:"ImageUrlsInput",components:{ElUpload:q,ElButton:P,InfoIcon:O,ImagePreview:B,FontAwesomeIcon:C},mixins:[M],data(){return{fileList:[],uploadUrl:D()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.headshots?.config?.image_urls},set(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})}}},mounted(){this.value||(this.value=void 0),this.onSetImageUrls()},methods:{onExceed(){w.warning(this.$t("headshots.message.uploadImageExceed"))},onError(){w.error(this.$t("headshots.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})},async onSuccess(){this.onSetImageUrls()}}}),ce={class:"field"},de={class:"title font-bold"},pe={class:"upload-wrapper"};function me(e,s,m,h,k,y){const p=a("image-preview"),u=a("font-awesome-icon"),n=a("el-button"),c=a("el-upload"),f=a("info-icon");return o(),l("div",ce,[r("h2",de,i(e.$t("headshots.name.endImageUrls")),1),r("div",pe,[t(c,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":s[0]||(s[0]=g=>e.fileList=g),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:g})=>[t(p,{url:g.url||g.response?.file_url,name:g.name,percentage:g.percentage,onRemove:R=>e.fileList.splice(e.fileList.indexOf(g),1)},null,8,["url","name","percentage","onRemove"])]),default:d(()=>[t(n,{size:"small",type:"primary",round:""},{default:d(()=>[t(u,{icon:"fa-solid fa-upload",class:"mr-1"}),_(" "+i(e.$t("headshots.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])]),t(f,{content:e.$t("headshots.description.endImageUrls"),class:"info"},null,8,["content"])])}const he=b(re,[["render",me],["__scopeId","data-v-ca56051e"]]),ue="fast",fe=v({name:"ModeSelector",components:{ElRadioButton:F,ElRadioGroup:N},data(){return{options:[{label:this.$t("headshots.button.fast"),value:"fast"},{label:this.$t("headshots.button.relax"),value:"relax"}]}},computed:{value:{get(){return this.$store.state.headshots.config?.mode},set(e){console.debug("set mode",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots.config,mode:e})}}},mounted(){this.value||(this.value=ue)}}),ge={class:"field"},_e={class:"title font-bold"};function $e(e,s,m,h,k,y){const p=a("el-radio-button"),u=a("el-radio-group");return o(),l("div",ge,[r("h2",_e,i(e.$t("headshots.name.mode")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":s[0]||(s[0]=n=>e.value=n),class:"mode"},{default:d(()=>[(o(!0),l(I,null,T(e.options,n=>(o(),E(p,{key:n.value,label:n.value},{default:d(()=>[_(i(n.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const ve=b(fe,[["render",$e],["__scopeId","data-v-e7702494"]]),be=v({name:"StylizeSelector",components:{ElTabs:J,ElTabPane:H,ElImage:L},data(){return{tab:"styles",value:"",elements:{styles:{displayName:this.$t("headshots.styleCategory.styles"),items:[{image:"https://static.aipedias.com/aicamera/common/20241008/20241008202314260779439.png",label:this.$t("headshots.styleTag.malePportrait"),value:"male_portrait"},{image:"https://static.aipedias.com/aicamera/common/20241008/202410082022241e9755548.png",label:this.$t("headshots.styleTag.malePportrait2"),value:"male_portrait2"},{image:"https://static.aipedias.com/aicamera/common/20241101/20241101170130d78f66521.png",label:this.$t("headshots.styleTag.kindergarten"),value:"kindergarten"},{image:"https://static.aipedias.com/aicamera/common/20240923/20240923123233accf60398.webp",label:this.$t("headshots.styleTag.logoTshirt"),value:"logo_tshirt"},{image:"https://static.aipedias.com/aicamera/common/20241025/202410252012329472d0656.jpg",label:this.$t("headshots.styleTag.wedding"),value:"wedding"},{image:"https://static.aipedias.com/aicamera/common/20240915/20240915145045254931400.webp",label:this.$t("headshots.styleTag.businessPphoto"),value:"business_photo"},{image:"https://static.aipedias.com/aicamera/common/20240810/20240810194526040341795.jpg",label:this.$t("headshots.styleTag.bobSuit"),value:"bob_suit"},{image:"https://static.aipedias.com/aicamera/common/20240717/20240717152654e0b348173.webp",label:this.$t("headshots.styleTag.femalePortrait"),value:"female_portrait"}]}}}},watch:{value(e){console.debug("set template",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:e})}},mounted(){this.value||(this.value=""),console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})},methods:{onToggle(e){this.value===e?this.value="":this.value=e,console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})}}}),ke={class:"field"},ye=["onClick"],we={class:"name"};function Ie(e,s,m,h,k,y){const p=a("el-image"),u=a("el-tab-pane"),n=a("el-tabs");return o(),l("div",ke,[t(n,{modelValue:e.tab,"onUpdate:modelValue":s[0]||(s[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,(g,R)=>(o(),l("div",{key:R,class:S({item:!0,active:e.value===g.value}),onClick:$t=>e.onToggle(g.value)},[t(p,{src:g.image,fit:"fill",class:"preview"},null,8,["src"]),r("span",we,i(g.label),1)],10,ye))),128))]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])])}const Te=b(be,[["render",Ie],["__scopeId","data-v-be4bd25d"]]),Ee=v({name:"PresetPanel",components:{ModeSelector:ve,ImageUrlsInput:he,ElButton:P,FontAwesomeIcon:C,ElementsSelector:Te},emits:["generate"],computed:{config(){return this.$store.state.headshots?.config}},methods:{onGenerate(){this.$emit("generate")}}}),Se={class:"panel"},Ve={class:"config"},Ce={class:"actions"};function Ae(e,s,m,h,k,y){const p=a("elements-selector"),u=a("mode-selector"),n=a("image-urls-input"),c=a("font-awesome-icon"),f=a("el-button");return o(),l("div",Se,[r("div",Ve,[t(p,{class:"mb-4"}),t(u,{class:"mb-4"}),t(n,{class:"mb-4"}),r("div",Ce,[t(f,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[t(c,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+i(e.$t("headshots.button.generate")),1)]),_:1},8,["onClick"])])])])}const Pe=b(Ee,[["render",Ae],["__scopeId","data-v-848739f6"]]),Re=v({name:"ImageGallery",props:{modelValue:{type:Object,required:!0}},setup(e){return{images:U(()=>e.modelValue?.response?.data?.slice(0,2)||[]),viewImage:h=>{window.open(h,"_blank")}}}}),Le={class:"image-gallery"},Ge=["src"],Ue=["onClick"];function De(e,s,m,h,k,y){return o(),l("div",Le,[(o(!0),l(I,null,T(e.images,(p,u)=>(o(),l("div",{key:u,class:"image-container"},[r("img",{src:p.image_url,alt:"Image"},null,8,Ge),p.image_url?(o(),l("button",{key:0,class:"view-button",onClick:n=>e.viewImage(p.image_url)},i(e.$t("headshots.button.viewImage")),9,Ue)):$("",!0)]))),128))])}const ze=b(Re,[["render",De],["__scopeId","data-v-42f0a7be"]]),Me=v({name:"TaskPreview",components:{ElImage:L,CopyToClipboard:Y,FontAwesomeIcon:C,ElAlert:Z,ImageGallery:ze},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.headshots?.application},config(){return this.$store.state.headshots?.config}},methods:{onDownload(e,s){e.stopPropagation(),console.log("on download"),window.open(s,"_blank")},onReload(e){const s=e.target,m=new URL(s.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;s.src=m.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),Oe={class:"preview"},je={class:"left"},Be={class:"main"},qe={class:"bot"},Ne={class:"datetime"},Fe={class:"info"},He={key:0,class:"prompt mt-2"},Je={key:0},Qe={key:1},Ke={key:0,class:S({content:!0,failed:!0})},We={class:"image-wrapper"},Xe={class:"description"},Ye={key:1,class:S({content:!0})},Ze={class:"description"},xe={class:"description"},et={class:"description"},tt={key:2,class:S({content:!0})},st={class:"description"},ot={key:3,class:S({content:!0})},at={class:"description"};function nt(e,s,m,h,k,y){const p=a("el-image"),u=a("image-gallery"),n=a("font-awesome-icon"),c=a("copy-to-clipboard"),f=a("el-alert");return o(),l("div",Oe,[r("div",je,[t(p,{src:"https://cdn.acedata.cloud/isxyfw.png",class:"avatar"})]),r("div",Be,[r("div",qe,[_(i(e.$t("headshots.name.headshotsBot"))+" ",1),r("span",Ne,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Fe,[e.modelValue?.request?.template?(o(),l("p",He,[_(i(e.modelValue?.request?.template)+" ",1),e.modelValue?.response?$("",!0):(o(),l("span",Je," - ("+i(e.$t("headshots.status.pending"))+") ",1)),e.modelValue?.response?.status==="unknown"?(o(),l("span",Qe," - ("+i(e.$t("headshots.status.processing"))+") ",1)):$("",!0)])):$("",!0)]),e.modelValue?.response?.success===!0?(o(),l("div",Ke,[r("div",We,[t(u,{"model-value":e.modelValue},null,8,["model-value"])]),t(f,{closable:!1,class:"mt-2 success"},{default:d(()=>[r("p",Xe,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("headshots.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(o(),l("div",Ye,[t(f,{closable:!1,class:"failure"},{template:d(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+i(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",Ze,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("headshots.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),r("p",xe,[t(n,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+i(e.$t("headshots.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),t(c,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),r("p",et,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+i(e.$t("headshots.name.traceId"))+": "+i(e.modelValue?.response?.trace_id)+" ",1),t(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?$("",!0):(o(),l("div",tt,[t(f,{closable:!1,class:"info"},{template:d(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+i(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",st,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("headshots.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])),e.modelValue?.response?.status==="unknown"?(o(),l("div",ot,[t(f,{closable:!1,class:"info"},{template:d(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+i(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",at,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("headshots.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0)])])}const it=b(Me,[["render",nt],["__scopeId","data-v-91e2f073"]]),lt=v({name:"RecentPanel",components:{TaskPreview:it,ElSkeleton:ee,ElSkeletonItem:x,ScrollList:j},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.headshots?.tasks,items:this.$store.state.headshots?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),rt={key:0,class:"tasks"},ct={class:"left"},dt={class:"main"},pt={key:1,class:"tasks"},mt={key:2,class:"description"};function ht(e,s,m,h,k,y){const p=a("el-skeleton-item"),u=a("el-skeleton"),n=a("task-preview"),c=a("scroll-list");return o(),E(c,{ref:"scrollList",class:"panel recent",loading:e.loading,onReachTop:s[0]||(s[0]=f=>e.$emit("reach-top"))},{default:d(()=>[e.tasks?.items===void 0?(o(),l("div",rt,[(o(),l(I,null,T(3,f=>r("div",{key:f,class:"task placeholder"},[r("div",ct,[t(u,{animated:""},{template:d(()=>[t(p,{variant:"image",class:"avatar"})]),_:1})]),r("div",dt,[t(u,{animated:""},{template:d(()=>[t(p,{variant:"p",class:"title"}),t(p,{variant:"image",class:"icon"})]),_:1})])])),64))])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(o(),l("div",pt,[(o(!0),l(I,null,T(e.tasks?.items,(f,g)=>(o(),E(n,{key:g,"model-value":f,class:"preview"},null,8,["model-value"]))),128))])):$("",!0),e.tasks?.items?.length===0?(o(),l("p",mt,i(e.$t("headshots.message.noTasks")),1)):$("",!0)]),_:1},8,["loading"])}const ut=b(lt,[["render",ht],["__scopeId","data-v-ffd55c16"]]),ft="https://webhook.acedata.cloud/headshots",gt=v({name:"HeadshotsIndex",components:{ConfigPanel:Pe,Layout:le,ApplicationStatus:X,RecentPanel:ut},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,s){e?.items?.length>s?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await te({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("headshots/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("headshots/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){z.create({application:this.application}).then(({data:e})=>{this.application=e,w.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===K&&w.error(this.$t("application.message.alreadyApplied"))})},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:s=5,createdAtMin:m,createdAtMax:h}=e||{};console.debug("limit",s,"createdAtMin",m,"createdAtMax",h),this.fetchingTasks=!0;try{await this.$store.dispatch("headshots/getTasks",{limit:s,createdAtMin:m,createdAtMax:h})}finally{this.fetchingTasks=!1}},async onGeneratePicture(){const e={...this.config,callback_url:ft},s=this.credential?.token;if(!s){console.error("no token specified");return}w.info(this.$t("headshots.message.startingTask")),W.generate(e,{token:s}).then(()=>{w.success(this.$t("headshots.message.startTaskSuccess")),this.$store.commit("headshots/setConfig",{config:void 0})}).catch(m=>{m?.response?.data?.error?.code===Q?w.error(this.$t("headshots.message.usedUp")):w.error(this.$t("headshots.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function _t(e,s,m,h,k,y){const p=a("config-panel"),u=a("application-status"),n=a("recent-panel"),c=a("layout");return o(),E(c,null,{config:d(()=>[t(p,{onGenerate:e.onGeneratePicture},null,8,["onGenerate"])]),result:d(()=>[t(u,{initializing:e.initializing,application:e.application,applications:e.applications,service:e.service,"need-apply":e.needApply,class:"mb-4",onRefresh:e.onGetApplication,onSelect:s[0]||(s[0]=f=>e.$store.dispatch("headshots/setApplication",f))},null,8,["initializing","application","applications","service","need-apply","onRefresh"]),t(n,{ref:"recentPanel",class:"panel recent",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const ss=b(gt,[["render",_t],["__scopeId","data-v-6cafffbd"]]);export{ss as default};
1
+ import{F as C}from"./index.es-B2ceJEe-.js";import{E as P}from"./index-25Oi82xK.js";import{E as G}from"./index-Cu3g7nB4.js";import{d as v,H as l,E as r,z as A,C as t,y as d,D as a,q as o,F as i,I as _,O as I,N as T,x as E,Q as S,c as U,J as $}from"./vendor-vue-DU0w5ewx.js";import{D as b,b0 as D,a6 as z,ao as V}from"./index-Bk-O7L34.js";import{p as M}from"./pasteUploadMixin-BurWbGNQ.js";import{I as O,S as j}from"./ScrollList-aZu_p1B4.js";import{I as B}from"./ImagePreview-DX53I496.js";import{E as q}from"./index-D7vWKmzW.js";import{E as w}from"./index-Cp42eF2R.js";import{a as N,E as F}from"./index-CDT-Snwp.js";import{E as L}from"./index-Bxu6veir.js";import{E as H,a as J}from"./index-CIryI-af.js";import{b as Q,a as K}from"./errorCode-Cqj9Td_Z.js";import{h as W}from"./headshots-D4hPrz4f.js";import{A as X}from"./Status-DOmaLVHY.js";import{C as Y}from"./CopyToClipboard-D2C5yA75.js";import{E as Z}from"./index-_KdgWCsj.js";import{E as x,a as ee}from"./index-C1iMhCA7.js";import{l as te}from"./pagination-CcnL0MdN.js";import"./use-form-item-DOP-oyAC.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./index-Do6OHSnf.js";import"./index-B_uohCDD.js";import"./typescript-DMS-x3hO.js";import"./index-CIXUtLqg.js";import"./_baseClone-DLTr8Yd-.js";import"./_Uint8Array-axOCySub.js";import"./_initCloneObject-C4ELQ6fU.js";import"./isEqual-D4vnwyEd.js";import"./debounce-D2BAnQ-_.js";import"./index-BgPVrzUN.js";import"./strings-DigWlKo9.js";import"./isPlainObject-WQTaoXoz.js";const se=v({name:"LayoutHeadshots",components:{ElDrawer:G,ElButton:P,FontAwesomeIcon:C},data(){return{drawer:!1}}}),oe={class:"main flex flex-row flex-1"},ae={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ne={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ie(e,s,m,h,k,y){const p=a("font-awesome-icon"),u=a("el-button"),n=a("el-drawer");return o(),l("div",oe,[r("div",ae,[A(e.$slots,"config",{},void 0,!0)]),r("div",ne,[A(e.$slots,"result",{},void 0,!0)]),t(u,{circle:"",class:"menu",onClick:s[0]||(s[0]=c=>e.drawer=!0)},{default:d(()=>[t(p,{icon:"fa-solid fa-gear"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":s[1]||(s[1]=c=>e.drawer=c),"with-header":!1,size:"340px",class:"drawer"},{default:d(()=>[A(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const le=b(se,[["render",ie],["__scopeId","data-v-202b355b"]]),re=v({name:"ImageUrlsInput",components:{ElUpload:q,ElButton:P,InfoIcon:O,ImagePreview:B,FontAwesomeIcon:C},mixins:[M],data(){return{fileList:[],uploadUrl:D()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.headshots?.config?.image_urls},set(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})}}},mounted(){this.value||(this.value=void 0),this.onSetImageUrls()},methods:{onExceed(){w.warning(this.$t("headshots.message.uploadImageExceed"))},onError(){w.error(this.$t("headshots.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})},async onSuccess(){this.onSetImageUrls()}}}),ce={class:"field"},de={class:"title font-bold"},pe={class:"upload-wrapper"};function me(e,s,m,h,k,y){const p=a("image-preview"),u=a("font-awesome-icon"),n=a("el-button"),c=a("el-upload"),f=a("info-icon");return o(),l("div",ce,[r("h2",de,i(e.$t("headshots.name.endImageUrls")),1),r("div",pe,[t(c,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":s[0]||(s[0]=g=>e.fileList=g),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:g})=>[t(p,{url:g.url||g.response?.file_url,name:g.name,percentage:g.percentage,onRemove:R=>e.fileList.splice(e.fileList.indexOf(g),1)},null,8,["url","name","percentage","onRemove"])]),default:d(()=>[t(n,{size:"small",type:"primary",round:""},{default:d(()=>[t(u,{icon:"fa-solid fa-upload",class:"mr-1"}),_(" "+i(e.$t("headshots.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])]),t(f,{content:e.$t("headshots.description.endImageUrls"),class:"info"},null,8,["content"])])}const he=b(re,[["render",me],["__scopeId","data-v-ca56051e"]]),ue="fast",fe=v({name:"ModeSelector",components:{ElRadioButton:F,ElRadioGroup:N},data(){return{options:[{label:this.$t("headshots.button.fast"),value:"fast"},{label:this.$t("headshots.button.relax"),value:"relax"}]}},computed:{value:{get(){return this.$store.state.headshots.config?.mode},set(e){console.debug("set mode",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots.config,mode:e})}}},mounted(){this.value||(this.value=ue)}}),ge={class:"field"},_e={class:"title font-bold"};function $e(e,s,m,h,k,y){const p=a("el-radio-button"),u=a("el-radio-group");return o(),l("div",ge,[r("h2",_e,i(e.$t("headshots.name.mode")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":s[0]||(s[0]=n=>e.value=n),class:"mode"},{default:d(()=>[(o(!0),l(I,null,T(e.options,n=>(o(),E(p,{key:n.value,label:n.value},{default:d(()=>[_(i(n.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const ve=b(fe,[["render",$e],["__scopeId","data-v-e7702494"]]),be=v({name:"StylizeSelector",components:{ElTabs:J,ElTabPane:H,ElImage:L},data(){return{tab:"styles",value:"",elements:{styles:{displayName:this.$t("headshots.styleCategory.styles"),items:[{image:"https://static.aipedias.com/aicamera/common/20241008/20241008202314260779439.png",label:this.$t("headshots.styleTag.malePportrait"),value:"male_portrait"},{image:"https://static.aipedias.com/aicamera/common/20241008/202410082022241e9755548.png",label:this.$t("headshots.styleTag.malePportrait2"),value:"male_portrait2"},{image:"https://static.aipedias.com/aicamera/common/20241101/20241101170130d78f66521.png",label:this.$t("headshots.styleTag.kindergarten"),value:"kindergarten"},{image:"https://static.aipedias.com/aicamera/common/20240923/20240923123233accf60398.webp",label:this.$t("headshots.styleTag.logoTshirt"),value:"logo_tshirt"},{image:"https://static.aipedias.com/aicamera/common/20241025/202410252012329472d0656.jpg",label:this.$t("headshots.styleTag.wedding"),value:"wedding"},{image:"https://static.aipedias.com/aicamera/common/20240915/20240915145045254931400.webp",label:this.$t("headshots.styleTag.businessPphoto"),value:"business_photo"},{image:"https://static.aipedias.com/aicamera/common/20240810/20240810194526040341795.jpg",label:this.$t("headshots.styleTag.bobSuit"),value:"bob_suit"},{image:"https://static.aipedias.com/aicamera/common/20240717/20240717152654e0b348173.webp",label:this.$t("headshots.styleTag.femalePortrait"),value:"female_portrait"}]}}}},watch:{value(e){console.debug("set template",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:e})}},mounted(){this.value||(this.value=""),console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})},methods:{onToggle(e){this.value===e?this.value="":this.value=e,console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})}}}),ke={class:"field"},ye=["onClick"],we={class:"name"};function Ie(e,s,m,h,k,y){const p=a("el-image"),u=a("el-tab-pane"),n=a("el-tabs");return o(),l("div",ke,[t(n,{modelValue:e.tab,"onUpdate:modelValue":s[0]||(s[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,(g,R)=>(o(),l("div",{key:R,class:S({item:!0,active:e.value===g.value}),onClick:$t=>e.onToggle(g.value)},[t(p,{src:g.image,fit:"fill",class:"preview"},null,8,["src"]),r("span",we,i(g.label),1)],10,ye))),128))]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])])}const Te=b(be,[["render",Ie],["__scopeId","data-v-be4bd25d"]]),Ee=v({name:"PresetPanel",components:{ModeSelector:ve,ImageUrlsInput:he,ElButton:P,FontAwesomeIcon:C,ElementsSelector:Te},emits:["generate"],computed:{config(){return this.$store.state.headshots?.config}},methods:{onGenerate(){this.$emit("generate")}}}),Se={class:"panel"},Ve={class:"config"},Ce={class:"actions"};function Ae(e,s,m,h,k,y){const p=a("elements-selector"),u=a("mode-selector"),n=a("image-urls-input"),c=a("font-awesome-icon"),f=a("el-button");return o(),l("div",Se,[r("div",Ve,[t(p,{class:"mb-4"}),t(u,{class:"mb-4"}),t(n,{class:"mb-4"}),r("div",Ce,[t(f,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[t(c,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+i(e.$t("headshots.button.generate")),1)]),_:1},8,["onClick"])])])])}const Pe=b(Ee,[["render",Ae],["__scopeId","data-v-848739f6"]]),Re=v({name:"ImageGallery",props:{modelValue:{type:Object,required:!0}},setup(e){return{images:U(()=>e.modelValue?.response?.data?.slice(0,2)||[]),viewImage:h=>{window.open(h,"_blank")}}}}),Le={class:"image-gallery"},Ge=["src"],Ue=["onClick"];function De(e,s,m,h,k,y){return o(),l("div",Le,[(o(!0),l(I,null,T(e.images,(p,u)=>(o(),l("div",{key:u,class:"image-container"},[r("img",{src:p.image_url,alt:"Image"},null,8,Ge),p.image_url?(o(),l("button",{key:0,class:"view-button",onClick:n=>e.viewImage(p.image_url)},i(e.$t("headshots.button.viewImage")),9,Ue)):$("",!0)]))),128))])}const ze=b(Re,[["render",De],["__scopeId","data-v-42f0a7be"]]),Me=v({name:"TaskPreview",components:{ElImage:L,CopyToClipboard:Y,FontAwesomeIcon:C,ElAlert:Z,ImageGallery:ze},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.headshots?.application},config(){return this.$store.state.headshots?.config}},methods:{onDownload(e,s){e.stopPropagation(),console.log("on download"),window.open(s,"_blank")},onReload(e){const s=e.target,m=new URL(s.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;s.src=m.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),Oe={class:"preview"},je={class:"left"},Be={class:"main"},qe={class:"bot"},Ne={class:"datetime"},Fe={class:"info"},He={key:0,class:"prompt mt-2"},Je={key:0},Qe={key:1},Ke={key:0,class:S({content:!0,failed:!0})},We={class:"image-wrapper"},Xe={class:"description"},Ye={key:1,class:S({content:!0})},Ze={class:"description"},xe={class:"description"},et={class:"description"},tt={key:2,class:S({content:!0})},st={class:"description"},ot={key:3,class:S({content:!0})},at={class:"description"};function nt(e,s,m,h,k,y){const p=a("el-image"),u=a("image-gallery"),n=a("font-awesome-icon"),c=a("copy-to-clipboard"),f=a("el-alert");return o(),l("div",Oe,[r("div",je,[t(p,{src:"https://cdn.acedata.cloud/isxyfw.png",class:"avatar"})]),r("div",Be,[r("div",qe,[_(i(e.$t("headshots.name.headshotsBot"))+" ",1),r("span",Ne,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Fe,[e.modelValue?.request?.template?(o(),l("p",He,[_(i(e.modelValue?.request?.template)+" ",1),e.modelValue?.response?$("",!0):(o(),l("span",Je," - ("+i(e.$t("headshots.status.pending"))+") ",1)),e.modelValue?.response?.status==="unknown"?(o(),l("span",Qe," - ("+i(e.$t("headshots.status.processing"))+") ",1)):$("",!0)])):$("",!0)]),e.modelValue?.response?.success===!0?(o(),l("div",Ke,[r("div",We,[t(u,{"model-value":e.modelValue},null,8,["model-value"])]),t(f,{closable:!1,class:"mt-2 success"},{default:d(()=>[r("p",Xe,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("headshots.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(o(),l("div",Ye,[t(f,{closable:!1,class:"failure"},{template:d(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+i(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",Ze,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("headshots.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),r("p",xe,[t(n,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+i(e.$t("headshots.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),t(c,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),r("p",et,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+i(e.$t("headshots.name.traceId"))+": "+i(e.modelValue?.response?.trace_id)+" ",1),t(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?$("",!0):(o(),l("div",tt,[t(f,{closable:!1,class:"info"},{template:d(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+i(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",st,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("headshots.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])),e.modelValue?.response?.status==="unknown"?(o(),l("div",ot,[t(f,{closable:!1,class:"info"},{template:d(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+i(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",at,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("headshots.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0)])])}const it=b(Me,[["render",nt],["__scopeId","data-v-91e2f073"]]),lt=v({name:"RecentPanel",components:{TaskPreview:it,ElSkeleton:ee,ElSkeletonItem:x,ScrollList:j},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.headshots?.tasks,items:this.$store.state.headshots?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),rt={key:0,class:"tasks"},ct={class:"left"},dt={class:"main"},pt={key:1,class:"tasks"},mt={key:2,class:"description"};function ht(e,s,m,h,k,y){const p=a("el-skeleton-item"),u=a("el-skeleton"),n=a("task-preview"),c=a("scroll-list");return o(),E(c,{ref:"scrollList",class:"panel recent",loading:e.loading,onReachTop:s[0]||(s[0]=f=>e.$emit("reach-top"))},{default:d(()=>[e.tasks?.items===void 0?(o(),l("div",rt,[(o(),l(I,null,T(3,f=>r("div",{key:f,class:"task placeholder"},[r("div",ct,[t(u,{animated:""},{template:d(()=>[t(p,{variant:"image",class:"avatar"})]),_:1})]),r("div",dt,[t(u,{animated:""},{template:d(()=>[t(p,{variant:"p",class:"title"}),t(p,{variant:"image",class:"icon"})]),_:1})])])),64))])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(o(),l("div",pt,[(o(!0),l(I,null,T(e.tasks?.items,(f,g)=>(o(),E(n,{key:g,"model-value":f,class:"preview"},null,8,["model-value"]))),128))])):$("",!0),e.tasks?.items?.length===0?(o(),l("p",mt,i(e.$t("headshots.message.noTasks")),1)):$("",!0)]),_:1},8,["loading"])}const ut=b(lt,[["render",ht],["__scopeId","data-v-ffd55c16"]]),ft="https://webhook.acedata.cloud/headshots",gt=v({name:"HeadshotsIndex",components:{ConfigPanel:Pe,Layout:le,ApplicationStatus:X,RecentPanel:ut},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,s){e?.items?.length>s?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await te({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("headshots/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("headshots/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){z.create({application:this.application}).then(({data:e})=>{this.application=e,w.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===K&&w.error(this.$t("application.message.alreadyApplied"))})},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:s=5,createdAtMin:m,createdAtMax:h}=e||{};console.debug("limit",s,"createdAtMin",m,"createdAtMax",h),this.fetchingTasks=!0;try{await this.$store.dispatch("headshots/getTasks",{limit:s,createdAtMin:m,createdAtMax:h})}finally{this.fetchingTasks=!1}},async onGeneratePicture(){const e={...this.config,callback_url:ft},s=this.credential?.token;if(!s){console.error("no token specified");return}w.info(this.$t("headshots.message.startingTask")),W.generate(e,{token:s}).then(()=>{w.success(this.$t("headshots.message.startTaskSuccess")),this.$store.commit("headshots/setConfig",{config:void 0})}).catch(m=>{m?.response?.data?.error?.code===Q?w.error(this.$t("headshots.message.usedUp")):w.error(this.$t("headshots.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function _t(e,s,m,h,k,y){const p=a("config-panel"),u=a("application-status"),n=a("recent-panel"),c=a("layout");return o(),E(c,null,{config:d(()=>[t(p,{onGenerate:e.onGeneratePicture},null,8,["onGenerate"])]),result:d(()=>[t(u,{initializing:e.initializing,application:e.application,applications:e.applications,service:e.service,"need-apply":e.needApply,class:"mb-4",onRefresh:e.onGetApplication,onSelect:s[0]||(s[0]=f=>e.$store.dispatch("headshots/setApplication",f))},null,8,["initializing","application","applications","service","need-apply","onRefresh"]),t(n,{ref:"recentPanel",class:"panel recent",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const ss=b(gt,[["render",_t],["__scopeId","data-v-6cafffbd"]]);export{ss as default};