@acedatacloud/nexior 3.247.0 → 3.249.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 (306) hide show
  1. package/dist/assets/{ApiCodeButton-BxWrNlio.js → ApiCodeButton-DbBsqIvO.js} +1 -1
  2. package/dist/assets/{Auth-DBgApWcC.js → Auth-eIryMm0b.js} +1 -1
  3. package/dist/assets/{BotPlaceholder-DpiZEQow.js → BotPlaceholder-CurzhF4I.js} +1 -1
  4. package/dist/assets/{Callback-BEG7BeIC.js → Callback-DYg1TPrv.js} +1 -1
  5. package/dist/assets/{Console-BS1DHQK9.js → Console-DKkdQsH-.js} +1 -1
  6. package/dist/assets/{Consumption-B3cgN_uS.js → Consumption-C3jg3b7m.js} +1 -1
  7. package/dist/assets/{Conversation-HlTR345-.js → Conversation-DbmZ8sUn.js} +1 -1
  8. package/dist/assets/{CopyToClipboard-g4vBpWAA.js → CopyToClipboard-D8319xRo.js} +1 -1
  9. package/dist/assets/{Detail-6rh4qrUH.css → Detail-C39hIHXk.css} +1 -1
  10. package/dist/assets/Detail-C3FWzIRm.js +2 -0
  11. package/dist/assets/{Extra-BaFnbhmW.js → Extra-MJ9K-tYN.js} +1 -1
  12. package/dist/assets/{FilePreview-CgjWf7IZ.js → FilePreview-BQxO2UWY.js} +1 -1
  13. package/dist/assets/{Hailuo-BsGaxbRH.js → Hailuo-BFNi-hGz.js} +1 -1
  14. package/dist/assets/{History-C3WsQvhF.js → History-DejyoqrI.js} +1 -1
  15. package/dist/assets/{ImagePreview-D-9EFWby.js → ImagePreview-Dw054CSM.js} +1 -1
  16. package/dist/assets/{ImageWrapper-B3cbnI5h.js → ImageWrapper-Df56pj51.js} +1 -1
  17. package/dist/assets/{Index-As22PRJ8.js → Index-B6rgTQV-.js} +1 -1
  18. package/dist/assets/{Index-Bim8xkOC.js → Index-BAmCtzd0.js} +1 -1
  19. package/dist/assets/{Index-9lvutSUo.js → Index-BIQomM9E.js} +1 -1
  20. package/dist/assets/{Index-DRfc7-DW.js → Index-BUhGKA5K.js} +1 -1
  21. package/dist/assets/{Index-VmyhabIi.js → Index-BVQCcJ75.js} +1 -1
  22. package/dist/assets/{Index-DLIiVbGX.js → Index-C2bZZAN6.js} +1 -1
  23. package/dist/assets/{Index-Lg4tO5s-.js → Index-CRR7YiVD.js} +1 -1
  24. package/dist/assets/{Index-CiZpMegP.js → Index-CswRcEdF.js} +1 -1
  25. package/dist/assets/{Index-D9ONlvtJ.js → Index-D13zgBEW.js} +1 -1
  26. package/dist/assets/{Index-DxsapMg5.js → Index-D34elpAw.js} +1 -1
  27. package/dist/assets/{Index-PFxzES9c.js → Index-D5J7PnsD.js} +1 -1
  28. package/dist/assets/{Index-x4VIk-M0.js → Index-DBIFFElk.js} +1 -1
  29. package/dist/assets/{Index-pTthfWKC.js → Index-DFdGGK00.js} +1 -1
  30. package/dist/assets/{Index-BRvAWYnK.js → Index-DH1HTjOF.js} +1 -1
  31. package/dist/assets/{Index-G-eiLZof.js → Index-Dk4rSH5S.js} +1 -1
  32. package/dist/assets/{Index-aMnEeK_G.js → Index-Dn6Z7nST.js} +1 -1
  33. package/dist/assets/{Index-CGK17mp3.js → Index-O5e1Bivs.js} +1 -1
  34. package/dist/assets/{Index-wIVXmRng.js → Index-OkRHSwV1.js} +1 -1
  35. package/dist/assets/{Index-bYW9icdw.js → Index-ZqM4Tn1f.js} +1 -1
  36. package/dist/assets/{Index-oMr5qDpE.js → Index-c9Tg3C6I.js} +1 -1
  37. package/dist/assets/{Index-B7wx6DnV.js → Index-eXfv9Wbm.js} +1 -1
  38. package/dist/assets/{Index-BBsPsMNE.js → Index-fOuxXwWE.js} +1 -1
  39. package/dist/assets/{Index-DH5LlwfI.js → Index-grwysYt0.js} +1 -1
  40. package/dist/assets/{Index-CtEwAjzb.js → Index-maLCUqiN.js} +1 -1
  41. package/dist/assets/{Index-GfH7ORBW.js → Index-pCEVEtzZ.js} +1 -1
  42. package/dist/assets/{Invitees-DM2PtM2B.js → Invitees-B6QgR_N-.js} +1 -1
  43. package/dist/assets/{List-B9PWtOVg.js → List-BKbkP5dh.js} +1 -1
  44. package/dist/assets/{List-CFNRyup6.js → List-DQWMNNV5.js} +1 -1
  45. package/dist/assets/{List-BI2uISLt.js → List-DVZZxgmr.js} +1 -1
  46. package/dist/assets/{Main-DvCFH-w5.js → Main-DyJAcnTu.js} +1 -1
  47. package/dist/assets/{Model-BaFunQUx.js → Model-BDV5jpZM.js} +1 -1
  48. package/dist/assets/{Navigator-C90p8IJf.js → Navigator-DV6JjI7i.js} +1 -1
  49. package/dist/assets/{NoTasks-C9fjzpt-.js → NoTasks-D5RXiO5t.js} +1 -1
  50. package/dist/assets/{NotFound-D3DVTX79.js → NotFound-DsGUQyn2.js} +1 -1
  51. package/dist/assets/{Pagination-BS1m7SpE.js → Pagination-DlR9ZaBc.js} +1 -1
  52. package/dist/assets/{Player.vue_vue_type_script_setup_true_lang-VsHNDvNV.js → Player.vue_vue_type_script_setup_true_lang-Ca7X4w0l.js} +1 -1
  53. package/dist/assets/{Status-CUQyGBNT.js → Status-D5L_4PIo.js} +1 -1
  54. package/dist/assets/{Subscribe-DX33tT74.js → Subscribe-GhxRxhEb.js} +1 -1
  55. package/dist/assets/{TabSwitcher-2PjIQYYE.js → TabSwitcher-B8s_FoVg.js} +1 -1
  56. package/dist/assets/{Tts-R9wDfVRw.js → Tts-ByJ7vyc_.js} +1 -1
  57. package/dist/assets/{VideoPlayer-D2Gk8iOW.js → VideoPlayer-Bbn9KAtz.js} +1 -1
  58. package/dist/assets/{_Uint8Array-pk5G6DXb.js → _Uint8Array-CPbtsK4f.js} +1 -1
  59. package/dist/assets/{_baseClone-BEl0SBVQ.js → _baseClone-XRiJGh2W.js} +1 -1
  60. package/dist/assets/{_baseIteratee-DKwNed0n.js → _baseIteratee-DisFYsdP.js} +1 -1
  61. package/dist/assets/{_initCloneObject-7jYqtSMb.js → _initCloneObject-CugDqvBf.js} +1 -1
  62. package/dist/assets/{add-DTKL_ZFS.js → add-B6LijcBD.js} +1 -1
  63. package/dist/assets/{all-wallets-C5MLoAFb.js → all-wallets-BvwKirXz.js} +1 -1
  64. package/dist/assets/{app-store-DCQDZXe0.js → app-store-De9gMOz2.js} +1 -1
  65. package/dist/assets/{apple-C3iyqXrR.js → apple-2AT6uzpa.js} +1 -1
  66. package/dist/assets/{arrow-bottom-BMZap5Cj.js → arrow-bottom-CwsKnKQ3.js} +1 -1
  67. package/dist/assets/{arrow-bottom-circle-4MFN_8UE.js → arrow-bottom-circle-CNOsWgMd.js} +1 -1
  68. package/dist/assets/{arrow-left-Bm5c9N7C.js → arrow-left-BC5pEZUW.js} +1 -1
  69. package/dist/assets/{arrow-right-hZ9Tp0uq.js → arrow-right-CjFr-GEK.js} +1 -1
  70. package/dist/assets/{arrow-top-BuD5nEdS.js → arrow-top-Bc3R1Von.js} +1 -1
  71. package/dist/assets/{avatar-jh__YkZL.js → avatar-CVH_0g-o.js} +1 -1
  72. package/dist/assets/{bank-B4h9ar-t.js → bank-CZ3ADKc9.js} +1 -1
  73. package/dist/assets/{basic-DOcMcTjN.js → basic-COn3QV-i.js} +1 -1
  74. package/dist/assets/{browser-hlzvWCr4.js → browser-BaJN0Isi.js} +1 -1
  75. package/dist/assets/{byokCredential-Co3C1RWX.js → byokCredential-CkwICkBi.js} +1 -1
  76. package/dist/assets/{card-CsqKf5wo.js → card-tSOzScJw.js} +1 -1
  77. package/dist/assets/{castArray-tmh9kbwO.js → castArray-CJc4u1FY.js} +1 -1
  78. package/dist/assets/chat-B_HOcIld.js +1 -0
  79. package/dist/assets/chat-BmceIzis.js +1 -0
  80. package/dist/assets/chat-BmyGGxp8.js +1 -0
  81. package/dist/assets/chat-COZaceBe.js +1 -0
  82. package/dist/assets/chat-Cg7w1tLG.js +1 -0
  83. package/dist/assets/chat-Ch5QN39P.js +1 -0
  84. package/dist/assets/chat-CoVVUBUU.js +1 -0
  85. package/dist/assets/chat-Cwzia3WL.js +1 -0
  86. package/dist/assets/chat-D2g6mCbx.js +1 -0
  87. package/dist/assets/chat-D5y4o62r.js +1 -0
  88. package/dist/assets/chat-D9ufeoXV.js +1 -0
  89. package/dist/assets/chat-DIKm4lJF.js +1 -0
  90. package/dist/assets/chat-DJe220pZ.js +1 -0
  91. package/dist/assets/chat-DWx8DmVN.js +1 -0
  92. package/dist/assets/chat-Dg2XzkIa.js +1 -0
  93. package/dist/assets/chat-DytLYjfu.js +1 -0
  94. package/dist/assets/{chat-CpcSRbD2.js → chat-MbUQidaz.js} +1 -1
  95. package/dist/assets/chat-rKPL6Bq2.js +1 -0
  96. package/dist/assets/chat-t0vRxpFl.js +1 -0
  97. package/dist/assets/{checkmark-CzYmi1Yz.js → checkmark-C53Z2iHu.js} +1 -1
  98. package/dist/assets/{checkmark-bold-DPgXxVBu.js → checkmark-bold-C84STdsg.js} +1 -1
  99. package/dist/assets/{chevron-bottom-Cy--pI3I.js → chevron-bottom-BNAjAgvk.js} +1 -1
  100. package/dist/assets/{chevron-left-S6GJjIbX.js → chevron-left-DjBRN5ZV.js} +1 -1
  101. package/dist/assets/{chevron-right-dJvtWEQO.js → chevron-right-DvIJ1Yht.js} +1 -1
  102. package/dist/assets/{chevron-top-Cq9z70-e.js → chevron-top-CePuI6fA.js} +1 -1
  103. package/dist/assets/{chrome-store-zZ0uWv1q.js → chrome-store-rzutBFhX.js} +1 -1
  104. package/dist/assets/{clock-BnJfjms8.js → clock-DhuqPBbA.js} +1 -1
  105. package/dist/assets/{close-BVSkmDiZ.js → close-Cywqgt7J.js} +1 -1
  106. package/dist/assets/{coinPlaceholder-G8fFe1gL.js → coinPlaceholder-BCqLDMno.js} +1 -1
  107. package/dist/assets/{compass-DQbcnfzc.js → compass-DJ2YTOl_.js} +1 -1
  108. package/dist/assets/{copy-Cmh57Ey0.js → copy-BRBb0CZe.js} +1 -1
  109. package/dist/assets/{createTaskActions-P-2DmrOh.js → createTaskActions-Fe9rLKdc.js} +1 -1
  110. package/dist/assets/{cursor-DkvrzDna.js → cursor-DdxhqJs0.js} +1 -1
  111. package/dist/assets/{cursor-transparent-CNsg0hrQ.js → cursor-transparent-DA-xsjwH.js} +1 -1
  112. package/dist/assets/{debounce-DBeMKn11.js → debounce-Cix8aYnY.js} +1 -1
  113. package/dist/assets/{desktop-DYouJkvo.js → desktop-BkTwkckK.js} +1 -1
  114. package/dist/assets/{disconnect-pnM6foVl.js → disconnect-DVtktXJS.js} +1 -1
  115. package/dist/assets/{discord-CoWlEeWJ.js → discord-Dryj4IvG.js} +1 -1
  116. package/dist/assets/{distribution-CJcqbitH.js → distribution-Bn2NtDww.js} +1 -1
  117. package/dist/assets/{dropdown-CjQKMXq9.js → dropdown-BaCIY_hc.js} +1 -1
  118. package/dist/assets/{etherscan-Ctc0-KXt.js → etherscan-2dURw77t.js} +1 -1
  119. package/dist/assets/{exclamation-triangle-CLxSQi9H.js → exclamation-triangle-BE3cOw73.js} +1 -1
  120. package/dist/assets/{extension-3Ftw9iYz.js → extension-PBBiodic.js} +1 -1
  121. package/dist/assets/{external-link-DWzDSdHd.js → external-link-D7CmbrJZ.js} +1 -1
  122. package/dist/assets/{facebook-P_yhQXYh.js → facebook-Bjfk1BsH.js} +1 -1
  123. package/dist/assets/{farcaster-C6D-Y9Ja.js → farcaster-MEgZO9fU.js} +1 -1
  124. package/dist/assets/{filters-da1DF9Fp.js → filters-D4u5cv7h.js} +1 -1
  125. package/dist/assets/{github-IwtJuUZ4.js → github-D0hFNlO5.js} +1 -1
  126. package/dist/assets/{google-DjH6KSZW.js → google-D58B-3U3.js} +1 -1
  127. package/dist/assets/{help-circle-DLiOYVb2.js → help-circle-Bz87Zz8o.js} +1 -1
  128. package/dist/assets/{highlight-BIVpqebW.js → highlight-DRPB0jUE.js} +1 -1
  129. package/dist/assets/{id-B7sbtS1G.js → id-hdK5sydD.js} +1 -1
  130. package/dist/assets/{image-0AU68zRr.js → image-BBDZhMu1.js} +1 -1
  131. package/dist/assets/{index-ukLW3UKB.js → index-4sGswbzA.js} +1 -1
  132. package/dist/assets/{index-dItq9AaI.js → index-99I3SCyr.js} +1 -1
  133. package/dist/assets/{index-BwIwFxoe.js → index-9N7ZEIpV.js} +1 -1
  134. package/dist/assets/{index-CCwWrfc4.js → index-B7TkhThA.js} +1 -1
  135. package/dist/assets/{index-DbBDYLLC.js → index-BGH0IgYz.js} +1 -1
  136. package/dist/assets/{index-DaJgo_ZX.js → index-BHqFxtOF.js} +1 -1
  137. package/dist/assets/{index-68NaTtAT.js → index-BIE-c4ov.js} +1 -1
  138. package/dist/assets/{index-BaIOFWVN.js → index-BKzGnx5F.js} +1 -1
  139. package/dist/assets/{index-DKT4kT0z.js → index-BN-UQoD0.js} +1 -1
  140. package/dist/assets/{index-CG7pBdX7.js → index-BNgbhBBj.js} +1 -1
  141. package/dist/assets/{index-V-c9hDuN.js → index-BZzjVj6a.js} +1 -1
  142. package/dist/assets/{index-B5jo7NY3.js → index-BeLJU121.js} +1 -1
  143. package/dist/assets/{index-C09FcKq9.js → index-BsyPjG1u.js} +1 -1
  144. package/dist/assets/{index-C2Ef9ZKY.js → index-BtT61g2y.js} +1 -1
  145. package/dist/assets/{index-_dbDaWih.js → index-C-lycVhr.js} +1 -1
  146. package/dist/assets/{index-Bt0OiCSI.js → index-C-onEgM4.js} +1 -1
  147. package/dist/assets/{index-YHAd10KH.js → index-C1eN8oxJ.js} +1 -1
  148. package/dist/assets/{index-DmI0irY_.js → index-C56irszs.js} +3 -3
  149. package/dist/assets/{index-CstN7RKM.js → index-C6O_SREA.js} +1 -1
  150. package/dist/assets/{index-BM3sPBDY.js → index-C6maAFlu.js} +1 -1
  151. package/dist/assets/{index-CQayeKqY.js → index-CEDF6g8f.js} +1 -1
  152. package/dist/assets/{index-Bg3fpyty.js → index-COGZbOvJ.js} +1 -1
  153. package/dist/assets/{index-C9CBkm3J.js → index-CQi5y1tA.js} +1 -1
  154. package/dist/assets/{index-BfvgCRfu.js → index-CU9x1Nwa.js} +1 -1
  155. package/dist/assets/{index-bs2QXOh6.js → index-CV7E7mDR.js} +1 -1
  156. package/dist/assets/{index-D04OE6ZP.js → index-CVkYz1Je.js} +1 -1
  157. package/dist/assets/{index-C11T6v8N.js → index-CW3U7Kji.js} +1 -1
  158. package/dist/assets/{index-C294PRIl.js → index-CWeDD789.js} +1 -1
  159. package/dist/assets/{index-CR6ve8Ck.js → index-CbmTFzvh.js} +1 -1
  160. package/dist/assets/{index-Dh_hemGT.js → index-CiCm-EwM.js} +1 -1
  161. package/dist/assets/{index-Tga9YfTB.js → index-ClZhoIFv.js} +1 -1
  162. package/dist/assets/{index-CV49VNqG.js → index-ClkTqs0M.js} +1 -1
  163. package/dist/assets/{index-ndgg4Xx-.js → index-ClyBp32W.js} +1 -1
  164. package/dist/assets/{index-BQc3ELHV.js → index-Cpx6uL0j.js} +1 -1
  165. package/dist/assets/{index-0u4YGGTa.js → index-Cq3fb6MA.js} +1 -1
  166. package/dist/assets/{index-DizoYeO3.js → index-CxEpAWwz.js} +1 -1
  167. package/dist/assets/{index-B5267oqA.js → index-D4JEvBET.js} +14 -14
  168. package/dist/assets/{index-2vry-0Si.js → index-D65GaJCy.js} +1 -1
  169. package/dist/assets/{index-C3qZe6wM.js → index-D6U1lzhK.js} +1 -1
  170. package/dist/assets/{index-DKF6p7_t.js → index-D6zsD92V.js} +1 -1
  171. package/dist/assets/{index-C94_tKkM.js → index-DAQQMQN_.js} +1 -1
  172. package/dist/assets/{index-DfAn9V8y.js → index-DC-SxuPE.js} +1 -1
  173. package/dist/assets/{index-Bop7QJNZ.js → index-DE1_SThE.js} +1 -1
  174. package/dist/assets/{index-DVPxXPIi.js → index-DGOShBRo.js} +1 -1
  175. package/dist/assets/{index-Bf3A60rN.js → index-DHCVQU69.js} +1 -1
  176. package/dist/assets/{index-DxHihOCA.js → index-DJQzWCYu.js} +1 -1
  177. package/dist/assets/{index-CzL5AhXP.js → index-DKUx2sg9.js} +1 -1
  178. package/dist/assets/{index-D8Cs8xk3.js → index-DMkA3tXo.js} +1 -1
  179. package/dist/assets/{index-D3Pn_CC4.js → index-DPatKvBa.js} +1 -1
  180. package/dist/assets/{index-qgWZ4gIq.js → index-DQBhHeqp.js} +1 -1
  181. package/dist/assets/{index-DD8o6SGh.js → index-DY3r2qc9.js} +1 -1
  182. package/dist/assets/{index-DQecjVoC.js → index-DZ90dRtr.js} +1 -1
  183. package/dist/assets/{index-i3zVFahC.js → index-Do2szyvJ.js} +1 -1
  184. package/dist/assets/{index-BjAmTjb2.js → index-DoKIsuyR.js} +1 -1
  185. package/dist/assets/{index-CLzy2i_E.js → index-DpeMrIQR.js} +1 -1
  186. package/dist/assets/{index-2sob-pDv.js → index-DwBEVukg.js} +1 -1
  187. package/dist/assets/{index-BvL_bkhW.js → index-Orv8G0Z8.js} +5 -5
  188. package/dist/assets/{index-L0hmNNaW.js → index-bgkP0YPJ.js} +1 -1
  189. package/dist/assets/{index-h72lxwun.js → index-cFJ_-B0U.js} +1 -1
  190. package/dist/assets/{index-CKchCVfL.js → index-f17Qof3T.js} +2 -2
  191. package/dist/assets/{index-ekq_L-ma.js → index-me6-hkZE.js} +1 -1
  192. package/dist/assets/{index-CYaLupkJ.js → index-vutD85zq.js} +1 -1
  193. package/dist/assets/{index-C7rmhYmL.js → index-xXBUae2L.js} +1 -1
  194. package/dist/assets/{index.browser.esm-BjveNakI.js → index.browser.esm-KHap9qRA.js} +1 -1
  195. package/dist/assets/{index.es-D8MU6eMk.js → index.es-Dz2WW0mO.js} +1 -1
  196. package/dist/assets/{info-dOvxF9_k.js → info-BMBHzUdl.js} +1 -1
  197. package/dist/assets/{info-circle-B_ptqPDa.js → info-circle-CWWGZOCr.js} +1 -1
  198. package/dist/assets/{isEqual-Dh50OCem.js → isEqual-CCMJAc_b.js} +1 -1
  199. package/dist/assets/{isPlainObject-dMdaxYmL.js → isPlainObject-woldJKog.js} +1 -1
  200. package/dist/assets/{lightbulb-D8KE_ZIV.js → lightbulb-9DrbxaGj.js} +1 -1
  201. package/dist/assets/{mail-DT7Oj5pA.js → mail-DnvzaUPW.js} +1 -1
  202. package/dist/assets/{midjourney-DLKHed76.js → midjourney-n93X9HRa.js} +1 -1
  203. package/dist/assets/{mobile-AVtFisqT.js → mobile-CIUznWtG.js} +1 -1
  204. package/dist/assets/{more-DRhObOpy.js → more-CF8WbsV3.js} +1 -1
  205. package/dist/assets/{network-placeholder-B_FWgMxk.js → network-placeholder-lFNe1_Iu.js} +1 -1
  206. package/dist/assets/{nftPlaceholder-_di0fXLf.js → nftPlaceholder-BROyitps.js} +1 -1
  207. package/dist/assets/{off-COt_i6CT.js → off-nf74n16e.js} +1 -1
  208. package/dist/assets/order-03apkk4w.js +1 -0
  209. package/dist/assets/order-Bo-tnXB3.js +1 -0
  210. package/dist/assets/order-C94zB2DA.js +1 -0
  211. package/dist/assets/order-CdpPmQpG.js +1 -0
  212. package/dist/assets/order-CnCQGMJh.js +1 -0
  213. package/dist/assets/order-CwX_tpSV.js +1 -0
  214. package/dist/assets/order-CzIgaSX4.js +1 -0
  215. package/dist/assets/order-D2XQBvdp.js +1 -0
  216. package/dist/assets/order-D97e7T7u.js +1 -0
  217. package/dist/assets/order-DCTvXGft.js +1 -0
  218. package/dist/assets/order-DZurK8Ek.js +1 -0
  219. package/dist/assets/order-DamR_aAT.js +1 -0
  220. package/dist/assets/order-Dc0Ec8sh.js +1 -0
  221. package/dist/assets/order-DcR5etPG.js +1 -0
  222. package/dist/assets/order-Dh3F9166.js +1 -0
  223. package/dist/assets/order-DhEagMXF.js +1 -0
  224. package/dist/assets/{order-CJX0GN2m.js → order-DnaVR88n.js} +1 -1
  225. package/dist/assets/order-JbPHacDg.js +1 -0
  226. package/dist/assets/order-rAaEPzDi.js +1 -0
  227. package/dist/assets/{pagination-BlJ6xPMo.js → pagination-33HYpCcx.js} +1 -1
  228. package/dist/assets/{play-store-Cedel5kB.js → play-store-BHBDgqwO.js} +1 -1
  229. package/dist/assets/{plus-Cuj7YYtp.js → plus-Cnp3h-UB.js} +1 -1
  230. package/dist/assets/{price-BDO9ZXFV.js → price-BkNDLX8f.js} +1 -1
  231. package/dist/assets/{producer-MVbu9J-a.js → producer-OM4OaxrK.js} +1 -1
  232. package/dist/assets/{qr-code-BDZGQJwb.js → qr-code--H2rGKc3.js} +1 -1
  233. package/dist/assets/{recycle-horizontal-C5WjUkxr.js → recycle-horizontal-DAPYyBK6.js} +1 -1
  234. package/dist/assets/{refresh-CbTpfLPL.js → refresh-Cpormqbd.js} +1 -1
  235. package/dist/assets/{reown-logo-BXupsXS3.js → reown-logo-uiFznOv3.js} +1 -1
  236. package/dist/assets/{search-Bsphe-gu.js → search-DzypqzMg.js} +1 -1
  237. package/dist/assets/{secp256k1-DSvuYwWr.js → secp256k1-B8zf7T5h.js} +1 -1
  238. package/dist/assets/{secp256k1-gBDfF4Ck.js → secp256k1-CQQaQtRy.js} +1 -1
  239. package/dist/assets/{seedream-C7eDwzou.js → seedream-BZ76h4dp.js} +1 -1
  240. package/dist/assets/{send-DTG8ft4a.js → send-BmPxjhzI.js} +1 -1
  241. package/dist/assets/{service-b1ACOrhy.js → service-CIke8-FE.js} +1 -1
  242. package/dist/assets/{solana-wallets-YBA_Z6os.js → solana-wallets-p4EdxnrZ.js} +2 -2
  243. package/dist/assets/{solana-wallets-vue-SsomcTKH.js → solana-wallets-vue-C0jzrnoD.js} +1 -1
  244. package/dist/assets/{suno-BOOKvePt.js → suno-CFKtOQa-.js} +1 -1
  245. package/dist/assets/{swapHorizontal-CgIZOiup.js → swapHorizontal-0jiHNEf4.js} +1 -1
  246. package/dist/assets/{swapHorizontalBold-B1U0OJbS.js → swapHorizontalBold-L-wxJM6w.js} +1 -1
  247. package/dist/assets/{swapHorizontalMedium-BvL_ktn0.js → swapHorizontalMedium-B0c7ziuy.js} +1 -1
  248. package/dist/assets/{swapHorizontalRoundedBold-DmBo86OS.js → swapHorizontalRoundedBold-Kz6JG3ZD.js} +1 -1
  249. package/dist/assets/{swapVertical-CwUQpp6D.js → swapVertical-C_vYpKkw.js} +1 -1
  250. package/dist/assets/{telegram-CgkGRZUZ.js → telegram-Cc9j7RGO.js} +1 -1
  251. package/dist/assets/{three-dots-L8Alh1LI.js → three-dots-Cl25bRBi.js} +1 -1
  252. package/dist/assets/{twitch-tqDRvo5X.js → twitch-DiHnIZi9.js} +1 -1
  253. package/dist/assets/{twitterIcon-m-I-o48i.js → twitterIcon-BEXhaJss.js} +1 -1
  254. package/dist/assets/{typescript-GHEyAG9P.js → typescript-BxdtUEmf.js} +1 -1
  255. package/dist/assets/{use-form-item-CAmCDDpm.js → use-form-item-CfxgrMhy.js} +1 -1
  256. package/dist/assets/validator-Bz8-M2lh.js +1 -0
  257. package/dist/assets/{verify-DYX5GAvx.js → verify-IBoQliqN.js} +1 -1
  258. package/dist/assets/{verify-filled-Bd1KVQgm.js → verify-filled-D1vtEftV.js} +1 -1
  259. package/dist/assets/{w3m-modal-CUDhwQSo.js → w3m-modal-DMimRYmp.js} +1 -1
  260. package/dist/assets/{wallet-fqHipSqw.js → wallet-DhhnjbJl.js} +1 -1
  261. package/dist/assets/{wallet-placeholder-BNss7V7Y.js → wallet-placeholder-CnZA6Ely.js} +1 -1
  262. package/dist/assets/{walletconnect-Dd02hoMz.js → walletconnect-Dh6c2kvm.js} +1 -1
  263. package/dist/assets/{warning-circle-Bq66iBvQ.js → warning-circle-DsaE8s5E.js} +1 -1
  264. package/dist/assets/{web-By0Q0OWp.js → web-DSxsGFNi.js} +1 -1
  265. package/dist/assets/{web-biVkl97I.js → web-DvU4BZks.js} +1 -1
  266. package/dist/assets/{x-CGbk18ka.js → x-BfhZUH9w.js} +1 -1
  267. package/dist/index.html +1 -1
  268. package/package.json +1 -1
  269. package/dist/assets/Detail-BBxS4o_n.js +0 -2
  270. package/dist/assets/chat-BFvmXnGq.js +0 -1
  271. package/dist/assets/chat-BJ1O-acr.js +0 -1
  272. package/dist/assets/chat-BVnywm8V.js +0 -1
  273. package/dist/assets/chat-Bg5nzR2s.js +0 -1
  274. package/dist/assets/chat-Bi9bSam4.js +0 -1
  275. package/dist/assets/chat-BiKeApIc.js +0 -1
  276. package/dist/assets/chat-C6a-XWNv.js +0 -1
  277. package/dist/assets/chat-CcBdBoIQ.js +0 -1
  278. package/dist/assets/chat-DA19T0N-.js +0 -1
  279. package/dist/assets/chat-DDwlXTRr.js +0 -1
  280. package/dist/assets/chat-D_ldAckE.js +0 -1
  281. package/dist/assets/chat-Dh1tEg2g.js +0 -1
  282. package/dist/assets/chat-DktNImx9.js +0 -1
  283. package/dist/assets/chat-J4Z-vAUt.js +0 -1
  284. package/dist/assets/chat-UZtzKTY5.js +0 -1
  285. package/dist/assets/chat-VonUfVbJ.js +0 -1
  286. package/dist/assets/chat-mrd8Uqt-.js +0 -1
  287. package/dist/assets/chat-n5ursQ4V.js +0 -1
  288. package/dist/assets/order-1qJ3GxaX.js +0 -1
  289. package/dist/assets/order-B8dtxAZ2.js +0 -1
  290. package/dist/assets/order-BDzghU3p.js +0 -1
  291. package/dist/assets/order-BI5MxfoB.js +0 -1
  292. package/dist/assets/order-BfoUTh90.js +0 -1
  293. package/dist/assets/order-BigJZUm-.js +0 -1
  294. package/dist/assets/order-BulQDrR-.js +0 -1
  295. package/dist/assets/order-CCmLKKdB.js +0 -1
  296. package/dist/assets/order-CSpGh4Zz.js +0 -1
  297. package/dist/assets/order-CVHCRSWI.js +0 -1
  298. package/dist/assets/order-CerH81Qp.js +0 -1
  299. package/dist/assets/order-CgCnV8Wc.js +0 -1
  300. package/dist/assets/order-D8IX-Cp2.js +0 -1
  301. package/dist/assets/order-D8kStYHA.js +0 -1
  302. package/dist/assets/order-DNR8D2Y8.js +0 -1
  303. package/dist/assets/order-EP4isp-N.js +0 -1
  304. package/dist/assets/order-ReEYaOWl.js +0 -1
  305. package/dist/assets/order-XdBUMXLb.js +0 -1
  306. package/dist/assets/validator-BY6D6xjR.js +0 -1
@@ -1 +1 @@
1
- import{F as z}from"./index.es-D8MU6eMk.js";import{E as P}from"./index-DbBDYLLC.js";import{E as x}from"./index-C09FcKq9.js";import{d as y,H as n,E as m,z as O,C as s,y as _,D as i,q as a,x as I,F as o,I as u,O as S,N as M,J as d,M as K,Q as L}from"./vendor-vue-NSDaktjZ.js";import{H as w,bp as X,cC as U,cD as J,cE as Q,cF as B,cG as G,cH as N,cI as Y,cJ as ee,cK as te,cL as se,cM as oe,cN as ae,cO as R,cP as ie,cQ as ne,cs as re,aZ as D,S as j,ct as le}from"./index-B5267oqA.js";import{P as me,N as ce}from"./NoTasks-C9fjzpt-.js";import{u as pe,a as ue,e as de}from"./uploadTrackerMixin--N-yU8Tl.js";import{I as q,S as ge,l as he}from"./pagination-BlJ6xPMo.js";import{I as F}from"./ImagePreview-D-9EFWby.js";import{E as fe}from"./index-bs2QXOh6.js";import{E as V}from"./index-CCwWrfc4.js";import{C as _e}from"./Consumption-B3cgN_uS.js";import{a as $e}from"./price-BDO9ZXFV.js";import{E as H,a as Z,b as be}from"./index-h72lxwun.js";import{E as ve}from"./index-ukLW3UKB.js";import{E as ke}from"./index-D3Pn_CC4.js";import{b as Ee}from"./errorCode-Cqj9Td_Z.js";import{C as Se}from"./CopyToClipboard-g4vBpWAA.js";import{I as Ie}from"./ImageWrapper-B3cbnI5h.js";import{A as ye}from"./ApiCodeButton-BxWrNlio.js";import{E as we}from"./index-CzL5AhXP.js";import{E as Ve}from"./index-B5jo7NY3.js";import{E as Ae}from"./index-Bf3A60rN.js";import{B as Me}from"./BotPlaceholder-DpiZEQow.js";import"./use-form-item-CAmCDDpm.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./index-CQayeKqY.js";import"./typescript-GHEyAG9P.js";import"./index-C94_tKkM.js";import"./index-DVPxXPIi.js";import"./highlight-BIVpqebW.js";import"./index-BLjywj98.js";import"./vendor-highlight-lEWW1Jxd.js";import"./index-Tga9YfTB.js";import"./_baseClone-BEl0SBVQ.js";import"./_Uint8Array-pk5G6DXb.js";import"./_initCloneObject-7jYqtSMb.js";import"./isEqual-Dh50OCem.js";import"./index-V-c9hDuN.js";import"./strings-beZM2Y-f.js";import"./castArray-tmh9kbwO.js";import"./debounce-DBeMKn11.js";import"./_baseIteratee-DKwNed0n.js";import"./index-YHAd10KH.js";import"./index-Cu41y2Fl.js";import"./validator-BY6D6xjR.js";import"./index-68NaTtAT.js";const Ge=y({name:"LayoutNanobanana",components:{ElDrawer:x,ElButton:P,FontAwesomeIcon:z},data(){return{drawer:!1}}}),Te={class:"main flex flex-row flex-1"},ze={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},Pe={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function Le(e,t,c,r,h,b){const p=i("font-awesome-icon"),g=i("el-button"),v=i("el-drawer");return a(),n("div",Te,[m("div",ze,[O(e.$slots,"config",{},void 0,!0)]),m("div",Pe,[O(e.$slots,"result",{},void 0,!0)]),s(g,{circle:"",class:"menu",onClick:t[0]||(t[0]=f=>e.drawer=!0)},{default:_(()=>[s(p,{icon:"fa-solid fa-magic"})]),_:1}),s(v,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=f=>e.drawer=f),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:_(()=>[O(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Ce=w(Ge,[["render",Le],["__scopeId","data-v-e480ada6"]]),Oe="",Ue=y({name:"PromptInput",components:{PromptTextarea:me},computed:{prompt:{get(){return this.$store.state.openaiimage?.config?.prompt},set(e){this.$store.commit("openaiimage/setConfig",{...this.$store.state.openaiimage?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Oe)}});function qe(e,t,c,r,h,b){const p=i("prompt-textarea");return a(),I(p,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=g=>e.prompt=g),title:e.$t("openaiimage.name.prompt"),info:e.$t("openaiimage.description.prompt"),placeholder:e.$t("openaiimage.placeholder.prompt")},null,8,["modelValue","title","info","placeholder"])}const Ne=w(Ue,[["render",qe]]),Re=y({name:"ImageUrlsInput",components:{ElUpload:fe,ElButton:P,InfoIcon:q,ImagePreview:F,FontAwesomeIcon:z},mixins:[pe],data(){return{fileList:[],uploadUrl:X()+"/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.openaiimage?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const r=(this.fileList||[]).filter(h=>!h?.response?.file_url);this.fileList=r.length?r:[];return}const t=[];e.forEach(r=>{const h=this.fileList.find(b=>b?.response?.file_url===r||b?.url===r);h?t.push(h):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(b=>b===r||b?.url===r?.url||b?.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(){V.warning(this.$t("openaiimage.message.uploadImageExceed"))},onError(){V.error(this.$t("openaiimage.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("openaiimage/setConfig",{...this.$store.state.openaiimage?.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()}}}),De={class:"field flex items-center justify-between"},je={class:"title font-bold text-[14px] mb-[10px]"},We={class:"upload-wrapper flex flex-col items-start gap-[8px]"},Be={class:"controls flex items-center"},Fe={class:"file-list flex flex-wrap gap-[10px]"};function He(e,t,c,r,h,b){const p=i("font-awesome-icon"),g=i("el-button"),v=i("el-upload"),f=i("info-icon"),k=i("image-preview");return a(),n(S,null,[m("div",De,[m("h2",je,o(e.$t("openaiimage.name.imageUrls")),1),m("div",We,[m("div",Be,[s(v,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=$=>e.fileList=$),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:_(()=>[s(g,{size:"small",type:"primary",round:""},{default:_(()=>[s(p,{icon:"fa-solid fa-upload",class:"mr-1"}),u(" "+o(e.$t("openaiimage.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"]),s(f,{content:e.$t("openaiimage.description.imageUrls"),class:"ml-2"},null,8,["content"])])])]),m("div",Fe,[(a(!0),n(S,null,M(e.fileList,($,l)=>(a(),I(k,{key:$.uid||$?.response?.file_url||$.url||l,url:$.url||$?.response?.file_url,name:$.name,percentage:$.percentage,onRemove:E=>e.onRemovePreview(l,$)},null,8,["url","name","percentage","onRemove"]))),128))])],64)}const Ze=w(Re,[["render",He]]),xe=y({name:"OpenAIImageModelSelector",components:{ElSelect:Z,ElOption:H,InfoIcon:q},data(){return{options:[{value:J,label:this.$t("openaiimage.model.gptImage1")},{value:Q,label:this.$t("openaiimage.model.gptImage15")},{value:B,label:this.$t("openaiimage.model.gptImage2")}]}},computed:{value:{get(){return this.$store.state.openaiimage?.config?.model},set(e){this.$store.commit("openaiimage/setConfig",{...this.$store.state.openaiimage?.config,model:e})}},modelDescription(){return this.$t("openaiimage.description.model")}},mounted(){this.value||(this.value=U)}}),Ke={class:"field"},Xe={class:"label"},Je={class:"box"},Qe={class:"title font-bold"};function Ye(e,t,c,r,h,b){const p=i("info-icon"),g=i("el-option"),v=i("el-select");return a(),n("div",Ke,[m("div",Xe,[m("div",Je,[m("h2",Qe,o(e.$t("openaiimage.name.model")),1),s(p,{content:e.modelDescription,class:"info"},null,8,["content"])])]),s(v,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=f=>e.value=f),class:"value",placeholder:e.$t("openaiimage.placeholder.select")},{default:_(()=>[(a(!0),n(S,null,M(e.options,f=>(a(),I(g,{key:f.value,label:f.label,value:f.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const et=w(xe,[["render",Ye],["__scopeId","data-v-cec771bd"]]);function tt(e){if(!e)return;const t=/^(\d+)x(\d+)$/.exec(e);if(t)return{w:Number(t[1]),h:Number(t[2])}}const st=y({name:"OpenAIImageSizeSelector",components:{ElSelect:Z,ElOption:H,ElOptionGroup:be,ElSwitch:ke,ElInputNumber:ve,InfoIcon:q},data(){return{customMode:!1,customWidth:1024,customHeight:1024}},computed:{model(){return this.$store.state.openaiimage?.config?.model||U},storedSize(){return this.$store.state.openaiimage?.config?.size},customSupported(){return ie.includes(this.model)},presets(){return R[this.model]??R[U]??[]},presetGroups(){return this.model===B?[{label:this.$t("openaiimage.sizeGroup.standard1k"),options:se},{label:this.$t("openaiimage.sizeGroup.preset2k"),options:oe},{label:this.$t("openaiimage.sizeGroup.preset4k"),options:ae}]:[{label:this.$t("openaiimage.sizeGroup.standard1k"),options:this.presets}]},useCustom:{get(){return this.customSupported&&this.customMode},set(e){if(!(e&&!this.customSupported))if(this.customMode=e,e){if(this.customError)return;this.commitSize(`${this.customWidth}x${this.customHeight}`)}else{const t=this.presets[0]??G;this.commitSize(t)}}},presetValue:{get(){const e=this.storedSize;return e&&this.presets.includes(e)?e:this.presets[0]??G},set(e){this.customMode=!1,this.commitSize(e)}},multiple(){return te},minSide(){return ee},maxSide(){return Y},customError(){const e=this.customWidth,t=this.customHeight;return!Number.isFinite(e)||!Number.isFinite(t)||e<=0||t<=0?this.$t("openaiimage.error.customSizePositive"):e%this.multiple!==0||t%this.multiple!==0?this.$t("openaiimage.error.customSizeMultiple",{multiple:this.multiple}):e<this.minSide||t<this.minSide?this.$t("openaiimage.error.customSizeMin",{min:this.minSide}):Math.max(e,t)>this.maxSide?this.$t("openaiimage.error.customSizeMax",{max:this.maxSide}):e*t>N?this.$t("openaiimage.error.customSizePixels",{pixels:N.toLocaleString()}):""}},watch:{model:{immediate:!1,handler(){if(!this.customSupported){this.customMode=!1;const t=this.storedSize;(!t||!this.presets.includes(t))&&this.commitSize(this.presets[0]??G);return}const e=this.storedSize;if(this.customMode&&!this.customError){this.commitSize(`${this.customWidth}x${this.customHeight}`);return}(!e||!this.presets.includes(e))&&this.commitSize(this.presets[0]??G)}},customWidth(){this.syncCustomToStore()},customHeight(){this.syncCustomToStore()}},mounted(){if(!this.storedSize){this.commitSize(this.presets[0]??G);return}const e=tt(this.storedSize);e&&this.customSupported&&!this.presets.includes(this.storedSize)&&(this.customMode=!0,this.customWidth=e.w,this.customHeight=e.h)},methods:{commitSize(e){this.$store.commit("openaiimage/setConfig",{...this.$store.state.openaiimage?.config,size:e})},syncCustomToStore(){this.useCustom&&(this.customError||this.commitSize(`${this.customWidth}x${this.customHeight}`))}}}),ot={class:"resolution"},at={class:"field"},it={class:"label"},nt={class:"box"},rt={class:"title font-bold"},lt={class:"field custom-toggle"},mt={class:"label"},ct={class:"box"},pt={class:"title font-bold"},ut={key:0,class:"custom-inputs"},dt={class:"row"},gt={class:"row-label"},ht={class:"row"},ft={class:"row-label"},_t={key:0,class:"error"};function $t(e,t,c,r,h,b){const p=i("info-icon"),g=i("el-option"),v=i("el-option-group"),f=i("el-select"),k=i("el-switch"),$=i("el-input-number");return a(),n("div",ot,[m("div",at,[m("div",it,[m("div",nt,[m("h2",rt,o(e.$t("openaiimage.name.size")),1),s(p,{content:e.$t("openaiimage.description.size"),class:"info"},null,8,["content"])])]),s(f,{modelValue:e.presetValue,"onUpdate:modelValue":t[0]||(t[0]=l=>e.presetValue=l),class:"value",placeholder:e.$t("openaiimage.placeholder.select"),disabled:e.useCustom},{default:_(()=>[(a(!0),n(S,null,M(e.presetGroups,l=>(a(),I(v,{key:l.label,label:l.label},{default:_(()=>[(a(!0),n(S,null,M(l.options,E=>(a(),I(g,{key:E,label:E,value:E},null,8,["label","value"]))),128))]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue","placeholder","disabled"])]),e.customSupported?(a(),n(S,{key:0},[m("div",lt,[m("div",mt,[m("div",ct,[m("h2",pt,o(e.$t("openaiimage.name.customSize")),1),s(p,{content:e.$t("openaiimage.description.customSize"),class:"info"},null,8,["content"])])]),s(k,{modelValue:e.useCustom,"onUpdate:modelValue":t[1]||(t[1]=l=>e.useCustom=l),class:"value-switch"},null,8,["modelValue"])]),e.useCustom?(a(),n("div",ut,[m("div",dt,[m("span",gt,o(e.$t("openaiimage.name.width")),1),s($,{modelValue:e.customWidth,"onUpdate:modelValue":t[2]||(t[2]=l=>e.customWidth=l),class:"row-input",min:e.minSide,max:e.maxSide,step:e.multiple,"step-strictly":!0,"controls-position":"right"},null,8,["modelValue","min","max","step"])]),m("div",ht,[m("span",ft,o(e.$t("openaiimage.name.height")),1),s($,{modelValue:e.customHeight,"onUpdate:modelValue":t[3]||(t[3]=l=>e.customHeight=l),class:"row-input",min:e.minSide,max:e.maxSide,step:e.multiple,"step-strictly":!0,"controls-position":"right"},null,8,["modelValue","min","max","step"])]),e.customError?(a(),n("div",_t,o(e.customError),1)):d("",!0)])):d("",!0)],64)):d("",!0)])}const bt=w(st,[["render",$t],["__scopeId","data-v-218b58cb"]]),vt=y({name:"ConfigPanel",components:{ElButton:P,FontAwesomeIcon:z,PromptInput:Ne,Consumption:_e,ImageUrlsInput:Ze,ModelSelector:et,ResolutionSelector:bt},emits:["generate"],computed:{config(){return this.$store.state.openaiimage?.config},consumption(){const e={...this.config||{}};return $e({...e},this.service?.cost)},service(){return this.$store.state.openaiimage?.service}},methods:{onGenerate(){this.$emit("generate")}}}),kt={class:"flex flex-col h-full"},Et={class:"flex-1 overflow-y-auto p-5"},St={class:"flex flex-col items-center justify-center px-5 pb-5"};function It(e,t,c,r,h,b){const p=i("model-selector"),g=i("resolution-selector"),v=i("prompt-input"),f=i("image-urls-input"),k=i("consumption"),$=i("font-awesome-icon"),l=i("el-button");return a(),n("div",kt,[m("div",Et,[s(p,{class:"mb-4"}),s(g,{class:"mb-4"}),s(v,{class:"mb-4"}),s(f,{class:"mb-4"})]),m("div",St,[s(k,{value:e.consumption,service:e.service},null,8,["value","service"]),s(l,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:_(()=>[s($,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("openaiimage.button.generate")),1)]),_:1},8,["onClick"])])])}const yt=w(vt,[["render",It]]),wt=y({name:"TaskPreview",components:{ElImage:Ae,CopyToClipboard:Se,FontAwesomeIcon:z,ElAlert:Ve,ImageWrapper:Ie,ElButton:P,ElTooltip:we,ImagePreview:F,ApiCodeButton:ye},props:{modelValue:{type:Object,required:!0}},setup(){return{OPENAIIMAGE_LOGO:ne}},computed:{openaiimagePath(){return this.modelValue?.request?.action==="edit"?"/openai/images/edits":"/openai/images/generations"},images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{const c=t;if(c?.image_url||c?.url){e.push(c);return}c?.b64_json&&e.push({...c,url:`data:image/png;base64,${c.b64_json}`})}),e},referenceImages(){const e=this.modelValue?.request;if(!e)return[];const t=Array.isArray(e.image_urls)?e.image_urls:[];if(t.length>0)return t.filter(r=>typeof r=="string"&&r.length>0);const c=e.image;return Array.isArray(c)?c.filter(r=>typeof r=="string"&&r.length>0):typeof c=="string"&&c.length>0?[c]:[]}},methods:{onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.openaiimage?.config||{}};t.image_urls=[e],this.$store.commit("openaiimage/setConfig",t)}}}),Vt={class:"preview"},At={class:"left"},Mt={class:"main"},Gt={class:"bot"},Tt={class:"datetime"},zt={class:"info"},Pt={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},Lt={key:1,class:"prompt mt-2"},Ct={key:0},Ot={key:0,class:L({content:!0,failed:!0})},Ut={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},qt={class:L({operations:!0,"mt-2":!0,"mb-2":!0})},Nt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Rt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Dt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},jt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Wt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ft={key:1,class:L({content:!0})},Ht={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Zt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},xt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Kt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Xt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Jt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Qt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Yt={key:2,class:L({content:!0})},es={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ts={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ss={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},os={class:"text-[var(--el-text-color-regular)] text-xs mb-2"};function as(e,t,c,r,h,b){const p=i("el-image"),g=i("image-preview"),v=i("image-wrapper"),f=i("el-button"),k=i("el-tooltip"),$=i("api-code-button"),l=i("font-awesome-icon"),E=i("copy-to-clipboard"),C=i("el-alert");return a(),n("div",Vt,[m("div",At,[s(p,{src:e.OPENAIIMAGE_LOGO,class:"avatar"},null,8,["src"])]),m("div",Mt,[m("div",Gt,[u(o(e.$t("openaiimage.name.openaiimageBot"))+" ",1),m("span",Tt,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),m("div",zt,[e.referenceImages.length>0?(a(),n("div",Pt,[(a(!0),n(S,null,M(e.referenceImages,(A,T)=>(a(),I(g,{key:T,url:A,name:`image-${T+1}`,closable:!1},null,8,["url","name"]))),128))])):d("",!0),e.modelValue?.request?.prompt?(a(),n("p",Lt,[u(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?d("",!0):(a(),n("span",Ct," - ("+o(e.$t("openaiimage.status.pending"))+") ",1))])):d("",!0)]),e.modelValue?.response?.success===!0?(a(),n("div",Ot,[m("div",Ut,[(a(!0),n(S,null,M(e.images,(A,T)=>(a(),I(v,{key:T,src:A?.image_url||A?.url||"","raw-src":A?.image_url||A?.url||""},null,8,["src","raw-src"]))),128))]),m("div",qt,[s(k,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:_(()=>[s(f,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=K(A=>e.onEdit(e.images?.[0]?.image_url||e.images?.[0]?.url),["stop"]))},{default:_(()=>[u(o(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"]),s($,{path:e.openaiimagePath,body:e.modelValue?.request},null,8,["path","body"])]),s(C,{closable:!1,class:"mt-2 success"},{default:_(()=>[e.modelValue?.request?.model?(a(),n("p",Nt,[s(l,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.model"))+": "+o(e.modelValue?.request?.model),1)])):d("",!0),e.modelValue?.request?.size?(a(),n("p",Rt,[s(l,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.size"))+": "+o(e.modelValue?.request?.size),1)])):d("",!0),e.modelValue?.request?.action?(a(),n("p",Dt,[s(l,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("openaiimage.name.generate"):e.$t("openaiimage.name.edits")),1)])):d("",!0),m("p",jt,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(E,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(a(),n("p",Wt,[s(l,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):d("",!0),e.modelValue?.response?.trace_id?(a(),n("p",Bt,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),s(E,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):d("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(a(),n("div",Ft,[s(C,{closable:!1,class:"failure"},{template:_(()=>[s(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.failure")),1)]),default:_(()=>[e.modelValue?.request?.model?(a(),n("p",Ht,[s(l,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.model"))+": "+o(e.modelValue?.request?.model),1)])):d("",!0),e.modelValue?.request?.size?(a(),n("p",Zt,[s(l,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.size"))+": "+o(e.modelValue?.request?.size),1)])):d("",!0),e.modelValue?.request?.action?(a(),n("p",xt,[s(l,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("openaiimage.name.generate"):e.$t("openaiimage.name.edits")),1)])):d("",!0),m("p",Kt,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(E,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),m("p",Xt,[s(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),s(E,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(a(),n("p",Jt,[s(l,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):d("",!0),e.modelValue?.response?.trace_id?(a(),n("p",Qt,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),s(E,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):d("",!0)]),_:1})])):(a(),n("div",Yt,[s(C,{closable:!1,class:"info"},{template:_(()=>[s(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.failure")),1)]),default:_(()=>[e.modelValue?.request?.model?(a(),n("p",es,[s(l,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.model"))+": "+o(e.modelValue?.request?.model),1)])):d("",!0),e.modelValue?.request?.size?(a(),n("p",ts,[s(l,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.size"))+": "+o(e.modelValue?.request?.size),1)])):d("",!0),e.modelValue?.request?.action?(a(),n("p",ss,[s(l,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("openaiimage.name.generate"):e.$t("openaiimage.name.edits")),1)])):d("",!0),m("p",os,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(E,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const is=w(wt,[["render",as],["__scopeId","data-v-8057d8e2"]]),ns=y({name:"RecentPanel",components:{TaskPreview:is,BotPlaceholder:Me,NoTasks:ce,ScrollList:ge},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.openaiimage?.tasks,items:this.$store.state.openaiimage?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),rs={key:0},ls={key:2,class:"w-full h-full flex items-center justify-center"};function ms(e,t,c,r,h,b){const p=i("bot-placeholder"),g=i("task-preview"),v=i("scroll-list"),f=i("no-tasks");return a(),n(S,null,[e.tasks?.items===void 0?(a(),n("div",rs,[s(p)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),I(v,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=k=>e.$emit("reach-top"))},{default:_(()=>[(a(!0),n(S,null,M(e.tasks?.items,k=>(a(),I(g,{key:k.id,"model-value":k},null,8,["model-value"]))),128))]),_:1},8,["loading"])):d("",!0),e.tasks?.items?.length===0?(a(),n("div",ls,[s(f)])):d("",!0)],64)}const cs=w(ns,[["render",ms]]),W=le("openaiimage"),ps=y({name:"OpenAIImageIndex",components:{ConfigPanel:yt,Layout:Ce,RecentPanel:cs},mixins:[ue],inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.openaiimage?.status?.getApplications===j.Request},tasksLoading(){return this.$store.state.openaiimage?.status?.getTasks===j.Request},credential(){return this.$store.state.openaiimage?.credential},config(){return this.$store.state.openaiimage?.config},application(){return this.$store.state.openaiimage?.application},tasks(){return this.$store.state.openaiimage?.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 he({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("openaiimage/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("openaiimage/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:c,createdAtMax:r}=e||{};console.debug("limit",t,"createdAtMin",c,"createdAtMax",r),await this.$store.dispatch("openaiimage/getTasks",{limit:t,createdAtMin:c,createdAtMax:r})},async onGenerate(){if(!de(this.uploadTracker,p=>this.$t(p),p=>V.warning(p)))return;const e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;if(!this.hasText(e.prompt)){V.error(this.$t("openaiimage.message.promptRequired"));return}e.prompt=e.prompt.trim(),!t&&"image_urls"in e&&delete e.image_urls;const c={...e,action:"generate",callback_url:W},r={action:"edit",model:e?.model,prompt:e?.prompt,size:e?.size,image_urls:e?.image_urls||[],callback_url:W},h=this.credential?.token;if(!h){console.error("no token specified");return}V.info(this.$t("openaiimage.message.startingTask")),re("openaiimage",t?D.edit(r,{token:h}):D.generate(c,{token:h})).then(p=>{console.debug("task accepted",p.data?.task_id),V.success(this.$t("openaiimage.message.startTaskSuccess"))}).catch(p=>{const g=p?.response?.data;g?.error?.code===Ee?V.error(this.$t("openaiimage.message.usedUp")):V.error(this.$t("openaiimage.message.startTaskFailed")+(g?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()},hasText(e){return typeof e=="string"&&e.trim().length>0}}});function us(e,t,c,r,h,b){const p=i("config-panel"),g=i("recent-panel"),v=i("layout");return a(),I(v,null,{config:_(()=>[s(p,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:_(()=>[s(g,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const mo=w(ps,[["render",us]]);export{mo as default};
1
+ import{F as z}from"./index.es-Dz2WW0mO.js";import{E as P}from"./index-BGH0IgYz.js";import{E as x}from"./index-BsyPjG1u.js";import{d as y,H as n,E as m,z as O,C as s,y as _,D as i,q as a,x as I,F as o,I as u,O as S,N as M,J as d,M as K,Q as L}from"./vendor-vue-NSDaktjZ.js";import{H as w,bp as X,cC as U,cD as J,cE as Q,cF as B,cG as G,cH as N,cI as Y,cJ as ee,cK as te,cL as se,cM as oe,cN as ae,cO as R,cP as ie,cQ as ne,cs as re,aZ as D,S as j,ct as le}from"./index-D4JEvBET.js";import{P as me,N as ce}from"./NoTasks-D5RXiO5t.js";import{u as pe,a as ue,e as de}from"./uploadTrackerMixin--N-yU8Tl.js";import{I as q,S as ge,l as he}from"./pagination-33HYpCcx.js";import{I as F}from"./ImagePreview-Dw054CSM.js";import{E as fe}from"./index-CV7E7mDR.js";import{E as V}from"./index-B7TkhThA.js";import{C as _e}from"./Consumption-C3jg3b7m.js";import{a as $e}from"./price-BkNDLX8f.js";import{E as H,a as Z,b as be}from"./index-cFJ_-B0U.js";import{E as ve}from"./index-4sGswbzA.js";import{E as ke}from"./index-DPatKvBa.js";import{b as Ee}from"./errorCode-Cqj9Td_Z.js";import{C as Se}from"./CopyToClipboard-D8319xRo.js";import{I as Ie}from"./ImageWrapper-Df56pj51.js";import{A as ye}from"./ApiCodeButton-DbBsqIvO.js";import{E as we}from"./index-DKUx2sg9.js";import{E as Ve}from"./index-BeLJU121.js";import{E as Ae}from"./index-DHCVQU69.js";import{B as Me}from"./BotPlaceholder-CurzhF4I.js";import"./use-form-item-CfxgrMhy.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./index-CEDF6g8f.js";import"./typescript-BxdtUEmf.js";import"./index-DAQQMQN_.js";import"./index-DGOShBRo.js";import"./highlight-DRPB0jUE.js";import"./index-BLjywj98.js";import"./vendor-highlight-lEWW1Jxd.js";import"./index-ClZhoIFv.js";import"./_baseClone-XRiJGh2W.js";import"./_Uint8Array-CPbtsK4f.js";import"./_initCloneObject-CugDqvBf.js";import"./isEqual-CCMJAc_b.js";import"./index-BZzjVj6a.js";import"./strings-beZM2Y-f.js";import"./castArray-CJc4u1FY.js";import"./debounce-Cix8aYnY.js";import"./_baseIteratee-DisFYsdP.js";import"./index-C1eN8oxJ.js";import"./index-Cu41y2Fl.js";import"./validator-Bz8-M2lh.js";import"./index-BIE-c4ov.js";const Ge=y({name:"LayoutNanobanana",components:{ElDrawer:x,ElButton:P,FontAwesomeIcon:z},data(){return{drawer:!1}}}),Te={class:"main flex flex-row flex-1"},ze={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},Pe={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function Le(e,t,c,r,h,b){const p=i("font-awesome-icon"),g=i("el-button"),v=i("el-drawer");return a(),n("div",Te,[m("div",ze,[O(e.$slots,"config",{},void 0,!0)]),m("div",Pe,[O(e.$slots,"result",{},void 0,!0)]),s(g,{circle:"",class:"menu",onClick:t[0]||(t[0]=f=>e.drawer=!0)},{default:_(()=>[s(p,{icon:"fa-solid fa-magic"})]),_:1}),s(v,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=f=>e.drawer=f),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:_(()=>[O(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Ce=w(Ge,[["render",Le],["__scopeId","data-v-e480ada6"]]),Oe="",Ue=y({name:"PromptInput",components:{PromptTextarea:me},computed:{prompt:{get(){return this.$store.state.openaiimage?.config?.prompt},set(e){this.$store.commit("openaiimage/setConfig",{...this.$store.state.openaiimage?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Oe)}});function qe(e,t,c,r,h,b){const p=i("prompt-textarea");return a(),I(p,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=g=>e.prompt=g),title:e.$t("openaiimage.name.prompt"),info:e.$t("openaiimage.description.prompt"),placeholder:e.$t("openaiimage.placeholder.prompt")},null,8,["modelValue","title","info","placeholder"])}const Ne=w(Ue,[["render",qe]]),Re=y({name:"ImageUrlsInput",components:{ElUpload:fe,ElButton:P,InfoIcon:q,ImagePreview:F,FontAwesomeIcon:z},mixins:[pe],data(){return{fileList:[],uploadUrl:X()+"/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.openaiimage?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const r=(this.fileList||[]).filter(h=>!h?.response?.file_url);this.fileList=r.length?r:[];return}const t=[];e.forEach(r=>{const h=this.fileList.find(b=>b?.response?.file_url===r||b?.url===r);h?t.push(h):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(b=>b===r||b?.url===r?.url||b?.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(){V.warning(this.$t("openaiimage.message.uploadImageExceed"))},onError(){V.error(this.$t("openaiimage.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("openaiimage/setConfig",{...this.$store.state.openaiimage?.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()}}}),De={class:"field flex items-center justify-between"},je={class:"title font-bold text-[14px] mb-[10px]"},We={class:"upload-wrapper flex flex-col items-start gap-[8px]"},Be={class:"controls flex items-center"},Fe={class:"file-list flex flex-wrap gap-[10px]"};function He(e,t,c,r,h,b){const p=i("font-awesome-icon"),g=i("el-button"),v=i("el-upload"),f=i("info-icon"),k=i("image-preview");return a(),n(S,null,[m("div",De,[m("h2",je,o(e.$t("openaiimage.name.imageUrls")),1),m("div",We,[m("div",Be,[s(v,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=$=>e.fileList=$),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:_(()=>[s(g,{size:"small",type:"primary",round:""},{default:_(()=>[s(p,{icon:"fa-solid fa-upload",class:"mr-1"}),u(" "+o(e.$t("openaiimage.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"]),s(f,{content:e.$t("openaiimage.description.imageUrls"),class:"ml-2"},null,8,["content"])])])]),m("div",Fe,[(a(!0),n(S,null,M(e.fileList,($,l)=>(a(),I(k,{key:$.uid||$?.response?.file_url||$.url||l,url:$.url||$?.response?.file_url,name:$.name,percentage:$.percentage,onRemove:E=>e.onRemovePreview(l,$)},null,8,["url","name","percentage","onRemove"]))),128))])],64)}const Ze=w(Re,[["render",He]]),xe=y({name:"OpenAIImageModelSelector",components:{ElSelect:Z,ElOption:H,InfoIcon:q},data(){return{options:[{value:J,label:this.$t("openaiimage.model.gptImage1")},{value:Q,label:this.$t("openaiimage.model.gptImage15")},{value:B,label:this.$t("openaiimage.model.gptImage2")}]}},computed:{value:{get(){return this.$store.state.openaiimage?.config?.model},set(e){this.$store.commit("openaiimage/setConfig",{...this.$store.state.openaiimage?.config,model:e})}},modelDescription(){return this.$t("openaiimage.description.model")}},mounted(){this.value||(this.value=U)}}),Ke={class:"field"},Xe={class:"label"},Je={class:"box"},Qe={class:"title font-bold"};function Ye(e,t,c,r,h,b){const p=i("info-icon"),g=i("el-option"),v=i("el-select");return a(),n("div",Ke,[m("div",Xe,[m("div",Je,[m("h2",Qe,o(e.$t("openaiimage.name.model")),1),s(p,{content:e.modelDescription,class:"info"},null,8,["content"])])]),s(v,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=f=>e.value=f),class:"value",placeholder:e.$t("openaiimage.placeholder.select")},{default:_(()=>[(a(!0),n(S,null,M(e.options,f=>(a(),I(g,{key:f.value,label:f.label,value:f.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const et=w(xe,[["render",Ye],["__scopeId","data-v-cec771bd"]]);function tt(e){if(!e)return;const t=/^(\d+)x(\d+)$/.exec(e);if(t)return{w:Number(t[1]),h:Number(t[2])}}const st=y({name:"OpenAIImageSizeSelector",components:{ElSelect:Z,ElOption:H,ElOptionGroup:be,ElSwitch:ke,ElInputNumber:ve,InfoIcon:q},data(){return{customMode:!1,customWidth:1024,customHeight:1024}},computed:{model(){return this.$store.state.openaiimage?.config?.model||U},storedSize(){return this.$store.state.openaiimage?.config?.size},customSupported(){return ie.includes(this.model)},presets(){return R[this.model]??R[U]??[]},presetGroups(){return this.model===B?[{label:this.$t("openaiimage.sizeGroup.standard1k"),options:se},{label:this.$t("openaiimage.sizeGroup.preset2k"),options:oe},{label:this.$t("openaiimage.sizeGroup.preset4k"),options:ae}]:[{label:this.$t("openaiimage.sizeGroup.standard1k"),options:this.presets}]},useCustom:{get(){return this.customSupported&&this.customMode},set(e){if(!(e&&!this.customSupported))if(this.customMode=e,e){if(this.customError)return;this.commitSize(`${this.customWidth}x${this.customHeight}`)}else{const t=this.presets[0]??G;this.commitSize(t)}}},presetValue:{get(){const e=this.storedSize;return e&&this.presets.includes(e)?e:this.presets[0]??G},set(e){this.customMode=!1,this.commitSize(e)}},multiple(){return te},minSide(){return ee},maxSide(){return Y},customError(){const e=this.customWidth,t=this.customHeight;return!Number.isFinite(e)||!Number.isFinite(t)||e<=0||t<=0?this.$t("openaiimage.error.customSizePositive"):e%this.multiple!==0||t%this.multiple!==0?this.$t("openaiimage.error.customSizeMultiple",{multiple:this.multiple}):e<this.minSide||t<this.minSide?this.$t("openaiimage.error.customSizeMin",{min:this.minSide}):Math.max(e,t)>this.maxSide?this.$t("openaiimage.error.customSizeMax",{max:this.maxSide}):e*t>N?this.$t("openaiimage.error.customSizePixels",{pixels:N.toLocaleString()}):""}},watch:{model:{immediate:!1,handler(){if(!this.customSupported){this.customMode=!1;const t=this.storedSize;(!t||!this.presets.includes(t))&&this.commitSize(this.presets[0]??G);return}const e=this.storedSize;if(this.customMode&&!this.customError){this.commitSize(`${this.customWidth}x${this.customHeight}`);return}(!e||!this.presets.includes(e))&&this.commitSize(this.presets[0]??G)}},customWidth(){this.syncCustomToStore()},customHeight(){this.syncCustomToStore()}},mounted(){if(!this.storedSize){this.commitSize(this.presets[0]??G);return}const e=tt(this.storedSize);e&&this.customSupported&&!this.presets.includes(this.storedSize)&&(this.customMode=!0,this.customWidth=e.w,this.customHeight=e.h)},methods:{commitSize(e){this.$store.commit("openaiimage/setConfig",{...this.$store.state.openaiimage?.config,size:e})},syncCustomToStore(){this.useCustom&&(this.customError||this.commitSize(`${this.customWidth}x${this.customHeight}`))}}}),ot={class:"resolution"},at={class:"field"},it={class:"label"},nt={class:"box"},rt={class:"title font-bold"},lt={class:"field custom-toggle"},mt={class:"label"},ct={class:"box"},pt={class:"title font-bold"},ut={key:0,class:"custom-inputs"},dt={class:"row"},gt={class:"row-label"},ht={class:"row"},ft={class:"row-label"},_t={key:0,class:"error"};function $t(e,t,c,r,h,b){const p=i("info-icon"),g=i("el-option"),v=i("el-option-group"),f=i("el-select"),k=i("el-switch"),$=i("el-input-number");return a(),n("div",ot,[m("div",at,[m("div",it,[m("div",nt,[m("h2",rt,o(e.$t("openaiimage.name.size")),1),s(p,{content:e.$t("openaiimage.description.size"),class:"info"},null,8,["content"])])]),s(f,{modelValue:e.presetValue,"onUpdate:modelValue":t[0]||(t[0]=l=>e.presetValue=l),class:"value",placeholder:e.$t("openaiimage.placeholder.select"),disabled:e.useCustom},{default:_(()=>[(a(!0),n(S,null,M(e.presetGroups,l=>(a(),I(v,{key:l.label,label:l.label},{default:_(()=>[(a(!0),n(S,null,M(l.options,E=>(a(),I(g,{key:E,label:E,value:E},null,8,["label","value"]))),128))]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue","placeholder","disabled"])]),e.customSupported?(a(),n(S,{key:0},[m("div",lt,[m("div",mt,[m("div",ct,[m("h2",pt,o(e.$t("openaiimage.name.customSize")),1),s(p,{content:e.$t("openaiimage.description.customSize"),class:"info"},null,8,["content"])])]),s(k,{modelValue:e.useCustom,"onUpdate:modelValue":t[1]||(t[1]=l=>e.useCustom=l),class:"value-switch"},null,8,["modelValue"])]),e.useCustom?(a(),n("div",ut,[m("div",dt,[m("span",gt,o(e.$t("openaiimage.name.width")),1),s($,{modelValue:e.customWidth,"onUpdate:modelValue":t[2]||(t[2]=l=>e.customWidth=l),class:"row-input",min:e.minSide,max:e.maxSide,step:e.multiple,"step-strictly":!0,"controls-position":"right"},null,8,["modelValue","min","max","step"])]),m("div",ht,[m("span",ft,o(e.$t("openaiimage.name.height")),1),s($,{modelValue:e.customHeight,"onUpdate:modelValue":t[3]||(t[3]=l=>e.customHeight=l),class:"row-input",min:e.minSide,max:e.maxSide,step:e.multiple,"step-strictly":!0,"controls-position":"right"},null,8,["modelValue","min","max","step"])]),e.customError?(a(),n("div",_t,o(e.customError),1)):d("",!0)])):d("",!0)],64)):d("",!0)])}const bt=w(st,[["render",$t],["__scopeId","data-v-218b58cb"]]),vt=y({name:"ConfigPanel",components:{ElButton:P,FontAwesomeIcon:z,PromptInput:Ne,Consumption:_e,ImageUrlsInput:Ze,ModelSelector:et,ResolutionSelector:bt},emits:["generate"],computed:{config(){return this.$store.state.openaiimage?.config},consumption(){const e={...this.config||{}};return $e({...e},this.service?.cost)},service(){return this.$store.state.openaiimage?.service}},methods:{onGenerate(){this.$emit("generate")}}}),kt={class:"flex flex-col h-full"},Et={class:"flex-1 overflow-y-auto p-5"},St={class:"flex flex-col items-center justify-center px-5 pb-5"};function It(e,t,c,r,h,b){const p=i("model-selector"),g=i("resolution-selector"),v=i("prompt-input"),f=i("image-urls-input"),k=i("consumption"),$=i("font-awesome-icon"),l=i("el-button");return a(),n("div",kt,[m("div",Et,[s(p,{class:"mb-4"}),s(g,{class:"mb-4"}),s(v,{class:"mb-4"}),s(f,{class:"mb-4"})]),m("div",St,[s(k,{value:e.consumption,service:e.service},null,8,["value","service"]),s(l,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:_(()=>[s($,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("openaiimage.button.generate")),1)]),_:1},8,["onClick"])])])}const yt=w(vt,[["render",It]]),wt=y({name:"TaskPreview",components:{ElImage:Ae,CopyToClipboard:Se,FontAwesomeIcon:z,ElAlert:Ve,ImageWrapper:Ie,ElButton:P,ElTooltip:we,ImagePreview:F,ApiCodeButton:ye},props:{modelValue:{type:Object,required:!0}},setup(){return{OPENAIIMAGE_LOGO:ne}},computed:{openaiimagePath(){return this.modelValue?.request?.action==="edit"?"/openai/images/edits":"/openai/images/generations"},images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{const c=t;if(c?.image_url||c?.url){e.push(c);return}c?.b64_json&&e.push({...c,url:`data:image/png;base64,${c.b64_json}`})}),e},referenceImages(){const e=this.modelValue?.request;if(!e)return[];const t=Array.isArray(e.image_urls)?e.image_urls:[];if(t.length>0)return t.filter(r=>typeof r=="string"&&r.length>0);const c=e.image;return Array.isArray(c)?c.filter(r=>typeof r=="string"&&r.length>0):typeof c=="string"&&c.length>0?[c]:[]}},methods:{onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.openaiimage?.config||{}};t.image_urls=[e],this.$store.commit("openaiimage/setConfig",t)}}}),Vt={class:"preview"},At={class:"left"},Mt={class:"main"},Gt={class:"bot"},Tt={class:"datetime"},zt={class:"info"},Pt={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},Lt={key:1,class:"prompt mt-2"},Ct={key:0},Ot={key:0,class:L({content:!0,failed:!0})},Ut={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},qt={class:L({operations:!0,"mt-2":!0,"mb-2":!0})},Nt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Rt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Dt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},jt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Wt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ft={key:1,class:L({content:!0})},Ht={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Zt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},xt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Kt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Xt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Jt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Qt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Yt={key:2,class:L({content:!0})},es={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ts={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ss={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},os={class:"text-[var(--el-text-color-regular)] text-xs mb-2"};function as(e,t,c,r,h,b){const p=i("el-image"),g=i("image-preview"),v=i("image-wrapper"),f=i("el-button"),k=i("el-tooltip"),$=i("api-code-button"),l=i("font-awesome-icon"),E=i("copy-to-clipboard"),C=i("el-alert");return a(),n("div",Vt,[m("div",At,[s(p,{src:e.OPENAIIMAGE_LOGO,class:"avatar"},null,8,["src"])]),m("div",Mt,[m("div",Gt,[u(o(e.$t("openaiimage.name.openaiimageBot"))+" ",1),m("span",Tt,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),m("div",zt,[e.referenceImages.length>0?(a(),n("div",Pt,[(a(!0),n(S,null,M(e.referenceImages,(A,T)=>(a(),I(g,{key:T,url:A,name:`image-${T+1}`,closable:!1},null,8,["url","name"]))),128))])):d("",!0),e.modelValue?.request?.prompt?(a(),n("p",Lt,[u(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?d("",!0):(a(),n("span",Ct," - ("+o(e.$t("openaiimage.status.pending"))+") ",1))])):d("",!0)]),e.modelValue?.response?.success===!0?(a(),n("div",Ot,[m("div",Ut,[(a(!0),n(S,null,M(e.images,(A,T)=>(a(),I(v,{key:T,src:A?.image_url||A?.url||"","raw-src":A?.image_url||A?.url||""},null,8,["src","raw-src"]))),128))]),m("div",qt,[s(k,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:_(()=>[s(f,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=K(A=>e.onEdit(e.images?.[0]?.image_url||e.images?.[0]?.url),["stop"]))},{default:_(()=>[u(o(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"]),s($,{path:e.openaiimagePath,body:e.modelValue?.request},null,8,["path","body"])]),s(C,{closable:!1,class:"mt-2 success"},{default:_(()=>[e.modelValue?.request?.model?(a(),n("p",Nt,[s(l,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.model"))+": "+o(e.modelValue?.request?.model),1)])):d("",!0),e.modelValue?.request?.size?(a(),n("p",Rt,[s(l,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.size"))+": "+o(e.modelValue?.request?.size),1)])):d("",!0),e.modelValue?.request?.action?(a(),n("p",Dt,[s(l,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("openaiimage.name.generate"):e.$t("openaiimage.name.edits")),1)])):d("",!0),m("p",jt,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(E,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(a(),n("p",Wt,[s(l,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):d("",!0),e.modelValue?.response?.trace_id?(a(),n("p",Bt,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),s(E,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):d("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(a(),n("div",Ft,[s(C,{closable:!1,class:"failure"},{template:_(()=>[s(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.failure")),1)]),default:_(()=>[e.modelValue?.request?.model?(a(),n("p",Ht,[s(l,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.model"))+": "+o(e.modelValue?.request?.model),1)])):d("",!0),e.modelValue?.request?.size?(a(),n("p",Zt,[s(l,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.size"))+": "+o(e.modelValue?.request?.size),1)])):d("",!0),e.modelValue?.request?.action?(a(),n("p",xt,[s(l,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("openaiimage.name.generate"):e.$t("openaiimage.name.edits")),1)])):d("",!0),m("p",Kt,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(E,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),m("p",Xt,[s(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),s(E,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(a(),n("p",Jt,[s(l,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):d("",!0),e.modelValue?.response?.trace_id?(a(),n("p",Qt,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),s(E,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):d("",!0)]),_:1})])):(a(),n("div",Yt,[s(C,{closable:!1,class:"info"},{template:_(()=>[s(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.failure")),1)]),default:_(()=>[e.modelValue?.request?.model?(a(),n("p",es,[s(l,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.model"))+": "+o(e.modelValue?.request?.model),1)])):d("",!0),e.modelValue?.request?.size?(a(),n("p",ts,[s(l,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.size"))+": "+o(e.modelValue?.request?.size),1)])):d("",!0),e.modelValue?.request?.action?(a(),n("p",ss,[s(l,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("openaiimage.name.generate"):e.$t("openaiimage.name.edits")),1)])):d("",!0),m("p",os,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("openaiimage.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(E,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const is=w(wt,[["render",as],["__scopeId","data-v-8057d8e2"]]),ns=y({name:"RecentPanel",components:{TaskPreview:is,BotPlaceholder:Me,NoTasks:ce,ScrollList:ge},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.openaiimage?.tasks,items:this.$store.state.openaiimage?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),rs={key:0},ls={key:2,class:"w-full h-full flex items-center justify-center"};function ms(e,t,c,r,h,b){const p=i("bot-placeholder"),g=i("task-preview"),v=i("scroll-list"),f=i("no-tasks");return a(),n(S,null,[e.tasks?.items===void 0?(a(),n("div",rs,[s(p)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),I(v,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=k=>e.$emit("reach-top"))},{default:_(()=>[(a(!0),n(S,null,M(e.tasks?.items,k=>(a(),I(g,{key:k.id,"model-value":k},null,8,["model-value"]))),128))]),_:1},8,["loading"])):d("",!0),e.tasks?.items?.length===0?(a(),n("div",ls,[s(f)])):d("",!0)],64)}const cs=w(ns,[["render",ms]]),W=le("openaiimage"),ps=y({name:"OpenAIImageIndex",components:{ConfigPanel:yt,Layout:Ce,RecentPanel:cs},mixins:[ue],inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.openaiimage?.status?.getApplications===j.Request},tasksLoading(){return this.$store.state.openaiimage?.status?.getTasks===j.Request},credential(){return this.$store.state.openaiimage?.credential},config(){return this.$store.state.openaiimage?.config},application(){return this.$store.state.openaiimage?.application},tasks(){return this.$store.state.openaiimage?.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 he({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("openaiimage/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("openaiimage/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:c,createdAtMax:r}=e||{};console.debug("limit",t,"createdAtMin",c,"createdAtMax",r),await this.$store.dispatch("openaiimage/getTasks",{limit:t,createdAtMin:c,createdAtMax:r})},async onGenerate(){if(!de(this.uploadTracker,p=>this.$t(p),p=>V.warning(p)))return;const e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;if(!this.hasText(e.prompt)){V.error(this.$t("openaiimage.message.promptRequired"));return}e.prompt=e.prompt.trim(),!t&&"image_urls"in e&&delete e.image_urls;const c={...e,action:"generate",callback_url:W},r={action:"edit",model:e?.model,prompt:e?.prompt,size:e?.size,image_urls:e?.image_urls||[],callback_url:W},h=this.credential?.token;if(!h){console.error("no token specified");return}V.info(this.$t("openaiimage.message.startingTask")),re("openaiimage",t?D.edit(r,{token:h}):D.generate(c,{token:h})).then(p=>{console.debug("task accepted",p.data?.task_id),V.success(this.$t("openaiimage.message.startTaskSuccess"))}).catch(p=>{const g=p?.response?.data;g?.error?.code===Ee?V.error(this.$t("openaiimage.message.usedUp")):V.error(this.$t("openaiimage.message.startTaskFailed")+(g?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()},hasText(e){return typeof e=="string"&&e.trim().length>0}}});function us(e,t,c,r,h,b){const p=i("config-panel"),g=i("recent-panel"),v=i("layout");return a(),I(v,null,{config:_(()=>[s(p,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:_(()=>[s(g,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const mo=w(ps,[["render",us]]);export{mo as default};
@@ -1 +1 @@
1
- import{F as E}from"./index.es-D8MU6eMk.js";import{E as C}from"./index-DbBDYLLC.js";import{E as j}from"./index-C09FcKq9.js";import{d as v,H as c,E as l,z as L,C as t,y as f,D as s,q as n,F as a,O as T,N as S,x as w,I as _,J as $,Q as I}from"./vendor-vue-NSDaktjZ.js";import{H as b,bp as F,cs as M,aQ as D,S as A,ct as B}from"./index-B5267oqA.js";import{a as O,b as N,c as q}from"./flux-BDAe6Szo.js";import{E as P,a as G}from"./index-h72lxwun.js";import{I as R,S as z,l as H}from"./pagination-BlJ6xPMo.js";import{E as X}from"./index-ukLW3UKB.js";import{E as Q}from"./index-Bop7QJNZ.js";import{p as W}from"./pasteUploadMixin-BurWbGNQ.js";import{u as J,a as K,e as Y}from"./uploadTrackerMixin--N-yU8Tl.js";import{I as Z}from"./ImagePreview-D-9EFWby.js";import{E as ee}from"./index-bs2QXOh6.js";import{E as y}from"./index-CCwWrfc4.js";import{P as te,N as oe}from"./NoTasks-C9fjzpt-.js";import{C as se}from"./Consumption-B3cgN_uS.js";import{a as ne}from"./price-BDO9ZXFV.js";import{b as ae}from"./errorCode-Cqj9Td_Z.js";import{C as le}from"./CopyToClipboard-g4vBpWAA.js";import{I as re}from"./ImageWrapper-B3cbnI5h.js";import{A as ie}from"./ApiCodeButton-BxWrNlio.js";import{E as ce}from"./index-B5jo7NY3.js";import{E as ue}from"./index-Bf3A60rN.js";import{B as de}from"./BotPlaceholder-DpiZEQow.js";import"./use-form-item-CAmCDDpm.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./index-CzL5AhXP.js";import"./index-C94_tKkM.js";import"./typescript-GHEyAG9P.js";import"./index-V-c9hDuN.js";import"./strings-beZM2Y-f.js";import"./isEqual-Dh50OCem.js";import"./_Uint8Array-pk5G6DXb.js";import"./castArray-tmh9kbwO.js";import"./index-CQayeKqY.js";import"./index-DVPxXPIi.js";import"./debounce-DBeMKn11.js";import"./_baseIteratee-DKwNed0n.js";import"./index-YHAd10KH.js";import"./highlight-BIVpqebW.js";import"./index-BLjywj98.js";import"./vendor-highlight-lEWW1Jxd.js";import"./index-Cu41y2Fl.js";import"./index-Tga9YfTB.js";import"./_baseClone-BEl0SBVQ.js";import"./_initCloneObject-7jYqtSMb.js";import"./index-68NaTtAT.js";const pe=v({name:"LayoutFlux",components:{ElDrawer:j,ElButton:C,FontAwesomeIcon:E},data(){return{drawer:!1}}}),me={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)]"},_e={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function he(e,o,u,m,x,k){const d=s("font-awesome-icon"),p=s("el-button"),r=s("el-drawer");return n(),c("div",me,[l("div",fe,[L(e.$slots,"config",{},void 0,!0)]),l("div",_e,[L(e.$slots,"result",{},void 0,!0)]),t(p,{circle:"",class:"menu",onClick:o[0]||(o[0]=i=>e.drawer=!0)},{default:f(()=>[t(d,{icon:"fa-solid fa-magic"})]),_:1}),t(r,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=i=>e.drawer=i),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:f(()=>[L(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ge=b(pe,[["render",he],["__scopeId","data-v-d022364a"]]),$e=v({name:"ModelSelector",components:{ElSelect:G,ElOption:P},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"flux-dev",label:"flux-dev"},{value:"flux-pro",label:"flux-pro"},{value:"flux-pro-1.1",label:"flux-pro-1.1"},{value:"flux-pro-1.1-ultra",label:"flux-pro-1.1-ultra"},{value:"flux-kontext-pro",label:"flux-kontext-pro"},{value:"flux-kontext-max",label:"flux-kontext-max"}]}},computed:{value:{get(){return this.$store.state.flux?.config?.model},set(e){this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,model:e})}}},mounted(){this.value||(this.value=O)}}),ve={class:"field"},be={class:"title font-bold"};function xe(e,o,u,m,x,k){const d=s("el-option"),p=s("el-select");return n(),c("div",ve,[l("h2",be,a(e.$t("flux.name.model")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=r=>e.value=r),class:"value",placeholder:e.$t("flux.placeholder.select")},{default:f(()=>[(n(!0),c(T,null,S(e.options,r=>(n(),w(d,{key:r.value,label:r.label,value:r.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ke=b($e,[["render",xe],["__scopeId","data-v-8df4b8a7"]]),we=v({name:"CountSelector",components:{ElSlider:Q,InfoIcon:R,ElInputNumber:X},computed:{value:{get(){return this.$store.state.flux?.config?.count},set(e){console.debug("set count",e),this.$store.commit("flux/setConfig",{...this.$store.state.flux?.config,count:e})}}},mounted(){this.value||(this.value=N)}}),ye={class:"flex justify-between"},Ve={class:"flex justify-start items-center"},Te={class:"text-sm font-bold"},Ee={class:"flex justify-end items-center"},Se={class:"w-full"};function Ie(e,o,u,m,x,k){const d=s("info-icon"),p=s("el-input-number"),r=s("el-slider");return n(),c("div",null,[l("div",ye,[l("div",Ve,[l("span",Te,a(e.$t("flux.name.numbers")),1),t(d,{content:e.$t("flux.description.numbers")},null,8,["content"])]),l("div",Ee,[t(p,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=i=>e.value=i),"controls-position":"right"},null,8,["modelValue"])])]),l("div",Se,[t(r,{modelValue:e.value,"onUpdate:modelValue":o[1]||(o[1]=i=>e.value=i),min:1,max:4,step:1},null,8,["modelValue"])])])}const Ue=b(we,[["render",Ie]]),Le=v({name:"ActionSelector",components:{ElSelect:G,ElOption:P},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"generate",label:this.$t("flux.name.generate")},{value:"edits",label:this.$t("flux.name.edits")}]}},computed:{value:{get(){return this.$store.state.flux?.config?.action},set(e){this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,action:e})}}},mounted(){this.value||(this.value=q)}}),Ce={class:"field"},Ae={class:"title font-bold"};function Pe(e,o,u,m,x,k){const d=s("el-option"),p=s("el-select");return n(),c("div",Ce,[l("h2",Ae,a(e.$t("flux.name.task")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=r=>e.value=r),class:"value",placeholder:e.$t("flux.placeholder.select")},{default:f(()=>[(n(!0),c(T,null,S(e.options,r=>(n(),w(d,{key:r.value,label:r.label,value:r.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ge=b(Le,[["render",Pe],["__scopeId","data-v-81fd05e5"]]),Re=v({name:"ImageUrlInput",components:{ElUpload:ee,ElButton:C,InfoIcon:R,FontAwesomeIcon:E,ImagePreview:Z},mixins:[W,J],emits:["change"],data(){return{fileList:[],uploadUrl:F()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{urls:{handler(e){console.debug("URLs changed:",e),this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,image_url:e[0]})}}},methods:{onExceed(){y.warning(this.$t("flux.message.uploadStartImageExceed"))},onError(){y.error(this.$t("flux.message.uploadStartImageError"))}}}),je={class:"relative"},Fe={class:"flex justify-between"},Me={class:"flex justify-start items-center"},De={class:"text-sm font-bold"};function Be(e,o,u,m,x,k){const d=s("info-icon"),p=s("image-preview"),r=s("font-awesome-icon"),i=s("el-button"),h=s("el-upload");return n(),c("div",je,[l("div",Fe,[l("div",Me,[l("span",De,a(e.$t("flux.name.imageUrl")),1),t(d,{content:e.$t("flux.description.imageUrl")},null,8,["content"])])]),t(h,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=g=>e.fileList=g),name:"file",limit:5,class:"upload-wrapper",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,headers:e.headers},{file:f(({file:g})=>[t(p,{url:g.url||g.response?.file_url,name:g.name,percentage:g.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(g),1)},null,8,["url","name","percentage","onRemove"])]),default:f(()=>[t(i,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:f(()=>[t(r,{icon:"fa-solid fa-upload",class:"icon mr-1"}),_(" "+a(e.$t("flux.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","headers"])])}const Oe=b(Re,[["render",Be],["__scopeId","data-v-7482072d"]]),Ne="",qe=v({name:"PromptInput",components:{PromptTextarea:te},computed:{prompt:{get(){return this.$store.state.flux?.config?.prompt},set(e){this.$store.commit("flux/setConfig",{...this.$store.state.flux?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Ne)}});function ze(e,o,u,m,x,k){const d=s("prompt-textarea");return n(),w(d,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=p=>e.prompt=p),title:e.$t("flux.name.prompt"),info:e.$t("flux.description.prompt"),placeholder:e.$t("flux.placeholder.prompt")},null,8,["modelValue","title","info","placeholder"])}const He=b(qe,[["render",ze]]),Xe=v({name:"PresetPanel",components:{ElButton:C,FontAwesomeIcon:E,PromptInput:He,ModelSelector:ke,CountSelector:Ue,Consumption:se,ActionSelector:Ge,ImageUrlInput:Oe},emits:["generate"],computed:{config(){return this.$store.state.flux?.config},consumption(){return ne(this.config,this.service?.cost)},service(){return this.$store.state.flux?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Qe={class:"flex flex-col h-full"},We={class:"flex-1 overflow-y-auto p-5"},Je={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ke(e,o,u,m,x,k){const d=s("action-selector"),p=s("prompt-input"),r=s("image-url-input"),i=s("model-selector"),h=s("count-selector"),g=s("consumption"),V=s("font-awesome-icon"),U=s("el-button");return n(),c("div",Qe,[l("div",We,[t(d,{class:"mb-4"}),t(p,{class:"mb-4"}),e.config?.action==="edits"?(n(),w(r,{key:0,class:"mb-4"})):$("",!0),t(i,{class:"mb-4"}),t(h,{class:"mb-4"})]),l("div",Je,[t(g,{value:e.consumption,service:e.service},null,8,["value","service"]),t(U,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:f(()=>[t(V,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+a(e.$t("flux.button.generate")),1)]),_:1},8,["onClick"])])])}const Ye=b(Xe,[["render",Ke]]),Ze=v({name:"TaskPreview",components:{ElImage:ue,CopyToClipboard:le,FontAwesomeIcon:E,ElAlert:ce,ImageWrapper:re,ApiCodeButton:ie},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.flux?.application},config(){return this.$store.state.flux?.config},images(){let e=[];const o=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(u=>{let m=u;o&&(m.action=o),e.push(m)}),e}},methods:{onDownload(e,o){e.stopPropagation(),console.log("on download"),window.open(o,"_blank")},onOpenImage(e){window.open(e,"_blank")}}}),et={class:"preview"},tt={class:"left"},ot={class:"main"},st={class:"bot"},nt={class:"datetime"},at={class:"info"},lt={key:0,class:"prompt mt-2"},rt={key:0},it={key:0,class:I({content:!0,failed:!0})},ct={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},ut={class:I({operations:!0,"mt-2":!0,"mb-2":!0})},dt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},pt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},mt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ft={key:1,class:I({content:!0})},_t={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ht={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},gt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},$t={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},vt={key:2,class:I({content:!0})},bt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function xt(e,o,u,m,x,k){const d=s("el-image"),p=s("image-wrapper"),r=s("api-code-button"),i=s("font-awesome-icon"),h=s("copy-to-clipboard"),g=s("el-alert");return n(),c("div",et,[l("div",tt,[t(d,{src:"https://cdn.acedata.cloud/ogm2oa.png",class:"avatar"})]),l("div",ot,[l("div",st,[_(a(e.$t("flux.name.fluxBot"))+" ",1),l("span",nt,a(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",at,[e.modelValue?.request?.prompt?(n(),c("p",lt,[_(a(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?$("",!0):(n(),c("span",rt," - ("+a(e.$t("flux.status.pending"))+") ",1))])):$("",!0)]),e.modelValue?.response?.success===!0?(n(),c("div",it,[l("div",ct,[(n(!0),c(T,null,S(e.images,(V,U)=>(n(),w(p,{key:U,src:V?.image_url,"raw-src":V?.image_url,"model-value":V},null,8,["src","raw-src","model-value"]))),128))]),l("div",ut,[t(r,{path:"/flux/images",body:e.modelValue?.request},null,8,["body"])]),t(g,{closable:!1,class:"mt-2 success"},{default:f(()=>[l("p",dt,[t(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+a(e.$t("flux.name.model"))+": "+a(e.modelValue?.request?.model),1)]),l("p",pt,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+a(e.$t("flux.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),t(h,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(n(),c("p",mt,[t(i,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+a(e.$t("flux.name.elapsed"))+": "+a(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0)]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(n(),c("div",ft,[t(g,{closable:!1,class:"failure"},{template:f(()=>[t(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+a(e.$t("flux.name.failure")),1)]),default:f(()=>[l("p",_t,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+a(e.$t("flux.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),t(h,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),l("p",ht,[t(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+a(e.$t("flux.name.failureReason"))+": "+a(e.modelValue?.response?.error?.message)+" ",1),t(h,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(n(),c("p",gt,[t(i,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+a(e.$t("flux.name.elapsed"))+": "+a(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),l("p",$t,[t(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+a(e.$t("flux.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),t(h,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?$("",!0):(n(),c("div",vt,[t(g,{closable:!1,class:"info"},{template:f(()=>[t(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+a(e.$t("flux.name.failure")),1)]),default:f(()=>[l("p",bt,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+a(e.$t("flux.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),t(h,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const kt=b(Ze,[["render",xt],["__scopeId","data-v-6a2b3fc7"]]),wt=v({name:"RecentPanel",components:{TaskPreview:kt,BotPlaceholder:de,NoTasks:oe,ScrollList:z},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.flux?.tasks,items:this.$store.state.flux?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),yt={key:0},Vt={key:2,class:"w-full h-full flex items-center justify-center"};function Tt(e,o,u,m,x,k){const d=s("bot-placeholder"),p=s("task-preview"),r=s("scroll-list"),i=s("no-tasks");return n(),c(T,null,[e.tasks?.items===void 0?(n(),c("div",yt,[t(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),w(r,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:o[0]||(o[0]=h=>e.$emit("reach-top"))},{default:f(()=>[(n(!0),c(T,null,S(e.tasks?.items,h=>(n(),w(p,{key:h.id,"model-value":h},null,8,["model-value"]))),128))]),_:1},8,["loading"])):$("",!0),e.tasks?.items?.length===0?(n(),c("div",Vt,[t(i)])):$("",!0)],64)}const Et=b(wt,[["render",Tt]]),St=B("flux"),It=v({name:"FluxIndex",components:{ConfigPanel:Ye,Layout:ge,RecentPanel:Et},mixins:[K],inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.flux?.status?.getApplications===A.Request},tasksLoading(){return this.$store.state.flux?.status?.getTasks===A.Request||this.fetchingTasks},credential(){return this.$store.state.flux?.credential},config(){return this.$store.state.flux?.config},application(){return this.$store.state.flux?.application},tasks(){return this.$store.state.flux?.tasks}},watch:{tasks:{handler(e,o){e?.items?.length>o?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await H({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("flux/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("flux/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:o=5,createdAtMin:u,createdAtMax:m}=e||{};console.debug("limit",o,"createdAtMin",u,"createdAtMax",m),this.fetchingTasks=!0;try{await this.$store.dispatch("flux/getTasks",{limit:o,createdAtMin:u,createdAtMax:m})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!Y(this.uploadTracker,u=>this.$t(u),u=>y.warning(u)))return;const e={...this.config,callback_url:St},o=this.credential?.token;if(!o){console.error("no token specified");return}y.info(this.$t("flux.message.startingTask")),M("flux",D.generate(e,{token:o})).then(()=>{y.success(this.$t("flux.message.startTaskSuccess"))}).catch(u=>{const m=u?.response?.data;m?.error?.code===ae?y.error(this.$t("flux.message.usedUp")):y.error(this.$t("flux.message.startTaskFailed")+m?.error?.message)}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Ut(e,o,u,m,x,k){const d=s("config-panel"),p=s("recent-panel"),r=s("layout");return n(),w(r,null,{config:f(()=>[t(d,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:f(()=>[t(p,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Io=b(It,[["render",Ut]]);export{Io as default};
1
+ import{F as E}from"./index.es-Dz2WW0mO.js";import{E as C}from"./index-BGH0IgYz.js";import{E as j}from"./index-BsyPjG1u.js";import{d as v,H as c,E as l,z as L,C as t,y as f,D as s,q as n,F as a,O as T,N as S,x as w,I as _,J as $,Q as I}from"./vendor-vue-NSDaktjZ.js";import{H as b,bp as F,cs as M,aQ as D,S as A,ct as B}from"./index-D4JEvBET.js";import{a as O,b as N,c as q}from"./flux-BDAe6Szo.js";import{E as P,a as G}from"./index-cFJ_-B0U.js";import{I as R,S as z,l as H}from"./pagination-33HYpCcx.js";import{E as X}from"./index-4sGswbzA.js";import{E as Q}from"./index-DE1_SThE.js";import{p as W}from"./pasteUploadMixin-BurWbGNQ.js";import{u as J,a as K,e as Y}from"./uploadTrackerMixin--N-yU8Tl.js";import{I as Z}from"./ImagePreview-Dw054CSM.js";import{E as ee}from"./index-CV7E7mDR.js";import{E as y}from"./index-B7TkhThA.js";import{P as te,N as oe}from"./NoTasks-D5RXiO5t.js";import{C as se}from"./Consumption-C3jg3b7m.js";import{a as ne}from"./price-BkNDLX8f.js";import{b as ae}from"./errorCode-Cqj9Td_Z.js";import{C as le}from"./CopyToClipboard-D8319xRo.js";import{I as re}from"./ImageWrapper-Df56pj51.js";import{A as ie}from"./ApiCodeButton-DbBsqIvO.js";import{E as ce}from"./index-BeLJU121.js";import{E as ue}from"./index-DHCVQU69.js";import{B as de}from"./BotPlaceholder-CurzhF4I.js";import"./use-form-item-CfxgrMhy.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./index-DKUx2sg9.js";import"./index-DAQQMQN_.js";import"./typescript-BxdtUEmf.js";import"./index-BZzjVj6a.js";import"./strings-beZM2Y-f.js";import"./isEqual-CCMJAc_b.js";import"./_Uint8Array-CPbtsK4f.js";import"./castArray-CJc4u1FY.js";import"./index-CEDF6g8f.js";import"./index-DGOShBRo.js";import"./debounce-Cix8aYnY.js";import"./_baseIteratee-DisFYsdP.js";import"./index-C1eN8oxJ.js";import"./highlight-DRPB0jUE.js";import"./index-BLjywj98.js";import"./vendor-highlight-lEWW1Jxd.js";import"./index-Cu41y2Fl.js";import"./index-ClZhoIFv.js";import"./_baseClone-XRiJGh2W.js";import"./_initCloneObject-CugDqvBf.js";import"./index-BIE-c4ov.js";const pe=v({name:"LayoutFlux",components:{ElDrawer:j,ElButton:C,FontAwesomeIcon:E},data(){return{drawer:!1}}}),me={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)]"},_e={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function he(e,o,u,m,x,k){const d=s("font-awesome-icon"),p=s("el-button"),r=s("el-drawer");return n(),c("div",me,[l("div",fe,[L(e.$slots,"config",{},void 0,!0)]),l("div",_e,[L(e.$slots,"result",{},void 0,!0)]),t(p,{circle:"",class:"menu",onClick:o[0]||(o[0]=i=>e.drawer=!0)},{default:f(()=>[t(d,{icon:"fa-solid fa-magic"})]),_:1}),t(r,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=i=>e.drawer=i),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:f(()=>[L(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ge=b(pe,[["render",he],["__scopeId","data-v-d022364a"]]),$e=v({name:"ModelSelector",components:{ElSelect:G,ElOption:P},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"flux-dev",label:"flux-dev"},{value:"flux-pro",label:"flux-pro"},{value:"flux-pro-1.1",label:"flux-pro-1.1"},{value:"flux-pro-1.1-ultra",label:"flux-pro-1.1-ultra"},{value:"flux-kontext-pro",label:"flux-kontext-pro"},{value:"flux-kontext-max",label:"flux-kontext-max"}]}},computed:{value:{get(){return this.$store.state.flux?.config?.model},set(e){this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,model:e})}}},mounted(){this.value||(this.value=O)}}),ve={class:"field"},be={class:"title font-bold"};function xe(e,o,u,m,x,k){const d=s("el-option"),p=s("el-select");return n(),c("div",ve,[l("h2",be,a(e.$t("flux.name.model")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=r=>e.value=r),class:"value",placeholder:e.$t("flux.placeholder.select")},{default:f(()=>[(n(!0),c(T,null,S(e.options,r=>(n(),w(d,{key:r.value,label:r.label,value:r.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ke=b($e,[["render",xe],["__scopeId","data-v-8df4b8a7"]]),we=v({name:"CountSelector",components:{ElSlider:Q,InfoIcon:R,ElInputNumber:X},computed:{value:{get(){return this.$store.state.flux?.config?.count},set(e){console.debug("set count",e),this.$store.commit("flux/setConfig",{...this.$store.state.flux?.config,count:e})}}},mounted(){this.value||(this.value=N)}}),ye={class:"flex justify-between"},Ve={class:"flex justify-start items-center"},Te={class:"text-sm font-bold"},Ee={class:"flex justify-end items-center"},Se={class:"w-full"};function Ie(e,o,u,m,x,k){const d=s("info-icon"),p=s("el-input-number"),r=s("el-slider");return n(),c("div",null,[l("div",ye,[l("div",Ve,[l("span",Te,a(e.$t("flux.name.numbers")),1),t(d,{content:e.$t("flux.description.numbers")},null,8,["content"])]),l("div",Ee,[t(p,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=i=>e.value=i),"controls-position":"right"},null,8,["modelValue"])])]),l("div",Se,[t(r,{modelValue:e.value,"onUpdate:modelValue":o[1]||(o[1]=i=>e.value=i),min:1,max:4,step:1},null,8,["modelValue"])])])}const Ue=b(we,[["render",Ie]]),Le=v({name:"ActionSelector",components:{ElSelect:G,ElOption:P},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"generate",label:this.$t("flux.name.generate")},{value:"edits",label:this.$t("flux.name.edits")}]}},computed:{value:{get(){return this.$store.state.flux?.config?.action},set(e){this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,action:e})}}},mounted(){this.value||(this.value=q)}}),Ce={class:"field"},Ae={class:"title font-bold"};function Pe(e,o,u,m,x,k){const d=s("el-option"),p=s("el-select");return n(),c("div",Ce,[l("h2",Ae,a(e.$t("flux.name.task")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=r=>e.value=r),class:"value",placeholder:e.$t("flux.placeholder.select")},{default:f(()=>[(n(!0),c(T,null,S(e.options,r=>(n(),w(d,{key:r.value,label:r.label,value:r.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ge=b(Le,[["render",Pe],["__scopeId","data-v-81fd05e5"]]),Re=v({name:"ImageUrlInput",components:{ElUpload:ee,ElButton:C,InfoIcon:R,FontAwesomeIcon:E,ImagePreview:Z},mixins:[W,J],emits:["change"],data(){return{fileList:[],uploadUrl:F()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{urls:{handler(e){console.debug("URLs changed:",e),this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,image_url:e[0]})}}},methods:{onExceed(){y.warning(this.$t("flux.message.uploadStartImageExceed"))},onError(){y.error(this.$t("flux.message.uploadStartImageError"))}}}),je={class:"relative"},Fe={class:"flex justify-between"},Me={class:"flex justify-start items-center"},De={class:"text-sm font-bold"};function Be(e,o,u,m,x,k){const d=s("info-icon"),p=s("image-preview"),r=s("font-awesome-icon"),i=s("el-button"),h=s("el-upload");return n(),c("div",je,[l("div",Fe,[l("div",Me,[l("span",De,a(e.$t("flux.name.imageUrl")),1),t(d,{content:e.$t("flux.description.imageUrl")},null,8,["content"])])]),t(h,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=g=>e.fileList=g),name:"file",limit:5,class:"upload-wrapper",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,headers:e.headers},{file:f(({file:g})=>[t(p,{url:g.url||g.response?.file_url,name:g.name,percentage:g.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(g),1)},null,8,["url","name","percentage","onRemove"])]),default:f(()=>[t(i,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:f(()=>[t(r,{icon:"fa-solid fa-upload",class:"icon mr-1"}),_(" "+a(e.$t("flux.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","headers"])])}const Oe=b(Re,[["render",Be],["__scopeId","data-v-7482072d"]]),Ne="",qe=v({name:"PromptInput",components:{PromptTextarea:te},computed:{prompt:{get(){return this.$store.state.flux?.config?.prompt},set(e){this.$store.commit("flux/setConfig",{...this.$store.state.flux?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Ne)}});function ze(e,o,u,m,x,k){const d=s("prompt-textarea");return n(),w(d,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=p=>e.prompt=p),title:e.$t("flux.name.prompt"),info:e.$t("flux.description.prompt"),placeholder:e.$t("flux.placeholder.prompt")},null,8,["modelValue","title","info","placeholder"])}const He=b(qe,[["render",ze]]),Xe=v({name:"PresetPanel",components:{ElButton:C,FontAwesomeIcon:E,PromptInput:He,ModelSelector:ke,CountSelector:Ue,Consumption:se,ActionSelector:Ge,ImageUrlInput:Oe},emits:["generate"],computed:{config(){return this.$store.state.flux?.config},consumption(){return ne(this.config,this.service?.cost)},service(){return this.$store.state.flux?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Qe={class:"flex flex-col h-full"},We={class:"flex-1 overflow-y-auto p-5"},Je={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ke(e,o,u,m,x,k){const d=s("action-selector"),p=s("prompt-input"),r=s("image-url-input"),i=s("model-selector"),h=s("count-selector"),g=s("consumption"),V=s("font-awesome-icon"),U=s("el-button");return n(),c("div",Qe,[l("div",We,[t(d,{class:"mb-4"}),t(p,{class:"mb-4"}),e.config?.action==="edits"?(n(),w(r,{key:0,class:"mb-4"})):$("",!0),t(i,{class:"mb-4"}),t(h,{class:"mb-4"})]),l("div",Je,[t(g,{value:e.consumption,service:e.service},null,8,["value","service"]),t(U,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:f(()=>[t(V,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+a(e.$t("flux.button.generate")),1)]),_:1},8,["onClick"])])])}const Ye=b(Xe,[["render",Ke]]),Ze=v({name:"TaskPreview",components:{ElImage:ue,CopyToClipboard:le,FontAwesomeIcon:E,ElAlert:ce,ImageWrapper:re,ApiCodeButton:ie},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.flux?.application},config(){return this.$store.state.flux?.config},images(){let e=[];const o=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(u=>{let m=u;o&&(m.action=o),e.push(m)}),e}},methods:{onDownload(e,o){e.stopPropagation(),console.log("on download"),window.open(o,"_blank")},onOpenImage(e){window.open(e,"_blank")}}}),et={class:"preview"},tt={class:"left"},ot={class:"main"},st={class:"bot"},nt={class:"datetime"},at={class:"info"},lt={key:0,class:"prompt mt-2"},rt={key:0},it={key:0,class:I({content:!0,failed:!0})},ct={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},ut={class:I({operations:!0,"mt-2":!0,"mb-2":!0})},dt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},pt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},mt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ft={key:1,class:I({content:!0})},_t={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ht={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},gt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},$t={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},vt={key:2,class:I({content:!0})},bt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function xt(e,o,u,m,x,k){const d=s("el-image"),p=s("image-wrapper"),r=s("api-code-button"),i=s("font-awesome-icon"),h=s("copy-to-clipboard"),g=s("el-alert");return n(),c("div",et,[l("div",tt,[t(d,{src:"https://cdn.acedata.cloud/ogm2oa.png",class:"avatar"})]),l("div",ot,[l("div",st,[_(a(e.$t("flux.name.fluxBot"))+" ",1),l("span",nt,a(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",at,[e.modelValue?.request?.prompt?(n(),c("p",lt,[_(a(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?$("",!0):(n(),c("span",rt," - ("+a(e.$t("flux.status.pending"))+") ",1))])):$("",!0)]),e.modelValue?.response?.success===!0?(n(),c("div",it,[l("div",ct,[(n(!0),c(T,null,S(e.images,(V,U)=>(n(),w(p,{key:U,src:V?.image_url,"raw-src":V?.image_url,"model-value":V},null,8,["src","raw-src","model-value"]))),128))]),l("div",ut,[t(r,{path:"/flux/images",body:e.modelValue?.request},null,8,["body"])]),t(g,{closable:!1,class:"mt-2 success"},{default:f(()=>[l("p",dt,[t(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+a(e.$t("flux.name.model"))+": "+a(e.modelValue?.request?.model),1)]),l("p",pt,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+a(e.$t("flux.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),t(h,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(n(),c("p",mt,[t(i,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+a(e.$t("flux.name.elapsed"))+": "+a(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0)]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(n(),c("div",ft,[t(g,{closable:!1,class:"failure"},{template:f(()=>[t(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+a(e.$t("flux.name.failure")),1)]),default:f(()=>[l("p",_t,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+a(e.$t("flux.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),t(h,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),l("p",ht,[t(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+a(e.$t("flux.name.failureReason"))+": "+a(e.modelValue?.response?.error?.message)+" ",1),t(h,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(n(),c("p",gt,[t(i,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+a(e.$t("flux.name.elapsed"))+": "+a(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),l("p",$t,[t(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+a(e.$t("flux.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),t(h,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?$("",!0):(n(),c("div",vt,[t(g,{closable:!1,class:"info"},{template:f(()=>[t(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+a(e.$t("flux.name.failure")),1)]),default:f(()=>[l("p",bt,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+a(e.$t("flux.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),t(h,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const kt=b(Ze,[["render",xt],["__scopeId","data-v-6a2b3fc7"]]),wt=v({name:"RecentPanel",components:{TaskPreview:kt,BotPlaceholder:de,NoTasks:oe,ScrollList:z},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.flux?.tasks,items:this.$store.state.flux?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),yt={key:0},Vt={key:2,class:"w-full h-full flex items-center justify-center"};function Tt(e,o,u,m,x,k){const d=s("bot-placeholder"),p=s("task-preview"),r=s("scroll-list"),i=s("no-tasks");return n(),c(T,null,[e.tasks?.items===void 0?(n(),c("div",yt,[t(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),w(r,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:o[0]||(o[0]=h=>e.$emit("reach-top"))},{default:f(()=>[(n(!0),c(T,null,S(e.tasks?.items,h=>(n(),w(p,{key:h.id,"model-value":h},null,8,["model-value"]))),128))]),_:1},8,["loading"])):$("",!0),e.tasks?.items?.length===0?(n(),c("div",Vt,[t(i)])):$("",!0)],64)}const Et=b(wt,[["render",Tt]]),St=B("flux"),It=v({name:"FluxIndex",components:{ConfigPanel:Ye,Layout:ge,RecentPanel:Et},mixins:[K],inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.flux?.status?.getApplications===A.Request},tasksLoading(){return this.$store.state.flux?.status?.getTasks===A.Request||this.fetchingTasks},credential(){return this.$store.state.flux?.credential},config(){return this.$store.state.flux?.config},application(){return this.$store.state.flux?.application},tasks(){return this.$store.state.flux?.tasks}},watch:{tasks:{handler(e,o){e?.items?.length>o?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await H({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("flux/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("flux/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:o=5,createdAtMin:u,createdAtMax:m}=e||{};console.debug("limit",o,"createdAtMin",u,"createdAtMax",m),this.fetchingTasks=!0;try{await this.$store.dispatch("flux/getTasks",{limit:o,createdAtMin:u,createdAtMax:m})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!Y(this.uploadTracker,u=>this.$t(u),u=>y.warning(u)))return;const e={...this.config,callback_url:St},o=this.credential?.token;if(!o){console.error("no token specified");return}y.info(this.$t("flux.message.startingTask")),M("flux",D.generate(e,{token:o})).then(()=>{y.success(this.$t("flux.message.startTaskSuccess"))}).catch(u=>{const m=u?.response?.data;m?.error?.code===ae?y.error(this.$t("flux.message.usedUp")):y.error(this.$t("flux.message.startTaskFailed")+m?.error?.message)}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Ut(e,o,u,m,x,k){const d=s("config-panel"),p=s("recent-panel"),r=s("layout");return n(),w(r,null,{config:f(()=>[t(d,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:f(()=>[t(p,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Io=b(It,[["render",Ut]]);export{Io as default};
@@ -1 +1 @@
1
- import{F as P}from"./index.es-D8MU6eMk.js";import{E as q}from"./index-DbBDYLLC.js";import{E as oe}from"./index-C09FcKq9.js";import{d as k,H as c,E as i,z as G,C as s,y as $,D as a,q as n,x as b,F as r,I as g,O as y,N as I,J as v,M as ae,Q as D}from"./vendor-vue-NSDaktjZ.js";import{H as S,da as B,db as R,dc as j,dd as L,de as F,df as K,dg as O,dh as J,di as Q,dj as Y,bp as ne,dk as re,dl as Z,dm as ie,dn as le,dp as de,dq as H,dr as ce,ds as me,dt as ee,cs as ue,S as X,ct as pe}from"./index-B5267oqA.js";import{P as fe,N as _e}from"./NoTasks-C9fjzpt-.js";import{p as ge}from"./pasteUploadMixin-BurWbGNQ.js";import{u as he,a as $e,e as ve}from"./uploadTrackerMixin--N-yU8Tl.js";import{I as V,S as be,l as Ee}from"./pagination-BlJ6xPMo.js";import{I as te}from"./ImagePreview-D-9EFWby.js";import{E as ke}from"./index-bs2QXOh6.js";import{E as A}from"./index-CCwWrfc4.js";import{C as Se}from"./Consumption-B3cgN_uS.js";import{a as ye}from"./price-BDO9ZXFV.js";import{E as x,a as N,b as we}from"./index-h72lxwun.js";import{E as Ae}from"./index-BQc3ELHV.js";import{E as W}from"./index-ukLW3UKB.js";import{E as Ie}from"./index-D3Pn_CC4.js";import{b as Ve}from"./errorCode-Cqj9Td_Z.js";import{s as ze}from"./seedream-C7eDwzou.js";import{C as Te}from"./CopyToClipboard-g4vBpWAA.js";import{I as Me}from"./ImageWrapper-B3cbnI5h.js";import{A as Re}from"./ApiCodeButton-BxWrNlio.js";import{E as Le}from"./index-CzL5AhXP.js";import{E as De}from"./index-B5jo7NY3.js";import{E as Ce}from"./index-Bf3A60rN.js";import{B as Pe}from"./BotPlaceholder-DpiZEQow.js";import"./use-form-item-CAmCDDpm.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./index-CQayeKqY.js";import"./typescript-GHEyAG9P.js";import"./index-C94_tKkM.js";import"./index-DVPxXPIi.js";import"./highlight-BIVpqebW.js";import"./index-BLjywj98.js";import"./vendor-highlight-lEWW1Jxd.js";import"./index-Tga9YfTB.js";import"./_baseClone-BEl0SBVQ.js";import"./_Uint8Array-pk5G6DXb.js";import"./_initCloneObject-7jYqtSMb.js";import"./isEqual-Dh50OCem.js";import"./index-V-c9hDuN.js";import"./strings-beZM2Y-f.js";import"./castArray-tmh9kbwO.js";import"./debounce-DBeMKn11.js";import"./_baseIteratee-DKwNed0n.js";import"./index-YHAd10KH.js";import"./validator-BY6D6xjR.js";import"./index-Cu41y2Fl.js";import"./index-68NaTtAT.js";const qe=k({name:"LayoutSeedream",components:{ElDrawer:oe,ElButton:q,FontAwesomeIcon:P},data(){return{drawer:!1}}}),Ue={class:"main flex flex-row flex-1"},Ge={class:"config w-[320px] h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},Fe={class:"result h-full p-6 flex-1 flex flex-col bg-[var(--app-content-bg)]"};function Oe(e,t,m,o,d,p){const u=a("font-awesome-icon"),f=a("el-button"),l=a("el-drawer");return n(),c("div",Ue,[i("div",Ge,[G(e.$slots,"config",{},void 0,!0)]),i("div",Fe,[G(e.$slots,"result",{},void 0,!0)]),s(f,{circle:"",class:"menu",onClick:t[0]||(t[0]=_=>e.drawer=!0)},{default:$(()=>[s(u,{icon:"fa-solid fa-magic"})]),_:1}),s(l,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=_=>e.drawer=_),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:$(()=>[G(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Be=S(qe,[["render",Oe],["__scopeId","data-v-f2a6eb9e"]]),je="",xe=k({name:"SeedreamPromptInput",components:{PromptTextarea:fe},computed:{prompt:{get(){return this.$store.state.seedream?.config?.prompt},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=je)}});function Ne(e,t,m,o,d,p){const u=a("prompt-textarea");return n(),b(u,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=f=>e.prompt=f),title:e.$t("seedream.name.prompt"),info:e.$t("seedream.description.prompt"),placeholder:e.$t("seedream.placeholder.prompt")},null,8,["modelValue","title","info","placeholder"])}const We=S(xe,[["render",Ne]]),Ke={image:!0,imageRequired:!1,sizeTiers:[B,R,j,L],sizeAdaptive:!0,sizePixel:!0,sizePixelDefault:void 0,groupGeneration:!1,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};function w(e){switch(e){case Y:return{image:!0,imageRequired:!1,sizeTiers:[R,j,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!0,tools:!0};case Q:return{image:!0,imageRequired:!1,sizeTiers:[R,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case J:return{image:!0,imageRequired:!1,sizeTiers:[B,R,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case O:return{image:!1,imageRequired:!1,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:"1024x1024",groupGeneration:!1,seed:!0,guidanceScale:!0,guidanceScaleDefault:K[O],outputFormat:!1,tools:!1};case F:return{image:!0,imageRequired:!0,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:"1024x1024",groupGeneration:!1,seed:!1,guidanceScale:!0,guidanceScaleDefault:K[F],outputFormat:!1,tools:!1};default:return Ke}}const Ze=[B,R,j,L];function He(e,t){if(!e)return[];const m=t.model??e.model;if(!m)return[];const o=w(m),d=[];Array.isArray(e.image)&&e.image.length>0&&!o.image&&d.push({field:"image",i18nLabel:"seedream.name.imageUrls"});const p=typeof e.size=="string"?e.size:void 0;if(p){const u=p.toUpperCase();Ze.includes(u)&&!o.sizeTiers.includes(u)?d.push({field:"size",i18nLabel:"seedream.name.size"}):p==="adaptive"&&!o.sizeAdaptive&&d.push({field:"size",i18nLabel:"seedream.name.size"})}return e.sequential_image_generation==="auto"&&!o.groupGeneration&&d.push({field:"sequential_image_generation",i18nLabel:"seedream.name.maxImages"}),e.seed!==void 0&&e.seed!==null&&!o.seed&&d.push({field:"seed",i18nLabel:"seedream.name.seed"}),e.guidance_scale!==void 0&&e.guidance_scale!==null&&!o.guidanceScale&&d.push({field:"guidance_scale",i18nLabel:"seedream.name.guidanceScale"}),e.output_format&&!o.outputFormat&&d.push({field:"output_format",i18nLabel:"seedream.name.outputFormat"}),Array.isArray(e.tools)&&e.tools.length>0&&!o.tools&&d.push({field:"tools",i18nLabel:"seedream.name.tools"}),d}function Xe(e,t,m){const o={...e},d=m.model??e.model,p=w(d);for(const u of t)switch(u.field){case"image":delete o.image;break;case"size":p.sizePixelDefault?o.size=p.sizePixelDefault:delete o.size;break;case"sequential_image_generation":o.sequential_image_generation="disabled",delete o.sequential_image_generation_options;break;case"seed":delete o.seed;break;case"guidance_scale":delete o.guidance_scale;break;case"output_format":delete o.output_format;break;case"tools":delete o.tools;break}return o}const Je=k({name:"SeedreamImageInput",components:{ElUpload:ke,ElButton:q,InfoIcon:V,ImagePreview:te,FontAwesomeIcon:P},mixins:[ge,he],data(){return{fileList:[],uploadUrl:ne()+"/api/v1/files/",suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.seedream?.config?.image},model(){return this.$store.state.seedream?.config?.model},supported(){return w(this.model).image}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const o=(this.fileList||[]).filter(d=>!d?.response?.file_url);this.fileList=o.length?o:[];return}const t=[];e.forEach(o=>{const d=this.fileList.find(p=>p?.response?.file_url===o||p?.url===o);d?t.push(d):t.push({name:o.split("/").pop()||o,url:o,status:"success",percentage:100,response:{file_url:o}})}),(this.fileList||[]).filter(o=>!o?.response?.file_url).forEach(o=>{t.some(p=>p===o||p?.url===o?.url||p?.response?.file_url===o?.response?.file_url)||t.push(o)}),this.fileList=t}}},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url=="string"&&e.url.startsWith("blob:"))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImages()},onExceed(){A.warning(this.$t("seedream.message.uploadImageExceed"))},onError(){A.error(this.$t("seedream.message.uploadImageError"))},onSetImages(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,image:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImages()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url=="string"&&t.url.startsWith("blob:"))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImages()}}}),Qe={key:0},Ye={class:"field"},et={class:"label"},tt={class:"box"},st={class:"title font-bold"},ot={class:"value"},at={class:"file-list mt-2 flex flex-wrap gap-[10px]"};function nt(e,t,m,o,d,p){const u=a("info-icon"),f=a("font-awesome-icon"),l=a("el-button"),_=a("el-upload"),h=a("image-preview");return e.supported?(n(),c("div",Qe,[i("div",Ye,[i("div",et,[i("div",tt,[i("h2",st,r(e.$t("seedream.name.imageUrls")),1),s(u,{content:e.$t("seedream.description.imageUrls"),class:"info"},null,8,["content"])])]),i("div",ot,[s(_,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=E=>e.fileList=E),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",limit:14,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:$(()=>[s(l,{size:"small",type:"primary",round:""},{default:$(()=>[s(f,{icon:"fa-solid fa-upload",class:"mr-1"}),g(" "+r(e.$t("seedream.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"])])]),i("div",at,[(n(!0),c(y,null,I(e.fileList,(E,T)=>(n(),b(h,{key:E.uid||E?.response?.file_url||E.url||T,url:E.url||E?.response?.file_url,name:E.name,percentage:E.percentage,onRemove:C=>e.onRemovePreview(T,E)},null,8,["url","name","percentage","onRemove"]))),128))])])):v("",!0)}const rt=S(Je,[["render",nt],["__scopeId","data-v-6ef4c2e4"]]),it=k({name:"SeedreamModelSelector",components:{ElSelect:N,ElOption:x,InfoIcon:V},data(){return{revertKey:0,options:[{value:Y,label:this.$t("seedream.model.seedream50")},{value:Q,label:this.$t("seedream.model.seedream45")},{value:J,label:this.$t("seedream.model.seedream40")},{value:O,label:this.$t("seedream.model.seedream30t2i")},{value:F,label:this.$t("seedream.model.seededit30i2i")}]}},computed:{value(){return this.$store.state.seedream?.config?.model}},mounted(){this.value||this.applyModel(re)},methods:{async onChange(e){const t=this.$store.state.seedream?.config||{},m=He(t,{model:e});if(m.length===0){this.applyModel(e);return}const o=m.map(d=>this.$t(d.i18nLabel)).join("、");try{await Ae.confirm(this.$t("seedream.message.featureNotSupportedBody",{fields:o}),this.$t("seedream.message.featureNotSupportedTitle"),{confirmButtonText:this.$t("seedream.button.confirmContinue"),cancelButtonText:this.$t("seedream.button.cancelSwitch"),type:"warning"});const d=Xe({...t,model:e},m,{model:e});this.$store.commit("seedream/setConfig",d),A.success(this.$t("seedream.message.featureRemovedNotice",{fields:o}))}catch{this.revertKey+=1}},applyModel(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,model:e})}}}),lt={class:"field"},dt={class:"label"},ct={class:"box"},mt={class:"title font-bold"};function ut(e,t,m,o,d,p){const u=a("info-icon"),f=a("el-option"),l=a("el-select");return n(),c("div",lt,[i("div",dt,[i("div",ct,[i("h2",mt,r(e.$t("seedream.name.model")),1),s(u,{content:e.$t("seedream.description.model"),class:"info"},null,8,["content"])])]),(n(),b(l,{key:e.revertKey,"model-value":e.value,class:"value",placeholder:e.$t("seedream.placeholder.select"),onChange:e.onChange},{default:$(()=>[(n(!0),c(y,null,I(e.options,_=>(n(),b(f,{key:_.value,label:_.label,value:_.value},null,8,["label","value"]))),128))]),_:1},8,["model-value","placeholder","onChange"]))])}const pt=S(it,[["render",ut],["__scopeId","data-v-8892a12c"]]),ft=k({name:"SeedreamSizeSelector",components:{ElSelect:N,ElOption:x,ElOptionGroup:we,InfoIcon:V},data(){return{SEEDREAM_SIZE_ADAPTIVE:le,pixelOptions:ie}},computed:{model(){return this.$store.state.seedream?.config?.model},capabilities(){return w(this.model)},value:{get(){return this.$store.state.seedream?.config?.size},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,size:e})}}},watch:{model:{immediate:!0,handler(){if(this.value)return;const e=this.capabilities;e.sizeTiers.length?this.value=e.sizeTiers.includes(Z)?Z:e.sizeTiers[0]:e.sizePixelDefault&&(this.value=e.sizePixelDefault)}}}}),_t={class:"field"},gt={class:"label"},ht={class:"box"},$t={class:"title font-bold"};function vt(e,t,m,o,d,p){const u=a("info-icon"),f=a("el-option"),l=a("el-option-group"),_=a("el-select");return n(),c("div",_t,[i("div",gt,[i("div",ht,[i("h2",$t,r(e.$t("seedream.name.size")),1),s(u,{content:e.$t("seedream.description.size"),class:"info"},null,8,["content"])])]),s(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=h=>e.value=h),class:"value",placeholder:e.$t("seedream.placeholder.size"),filterable:"","allow-create":"","default-first-option":""},{default:$(()=>[e.capabilities.sizeTiers.length?(n(),b(l,{key:0,label:e.$t("seedream.size.group.tier")},{default:$(()=>[(n(!0),c(y,null,I(e.capabilities.sizeTiers,h=>(n(),b(f,{key:h,label:h,value:h},null,8,["label","value"]))),128))]),_:1},8,["label"])):v("",!0),e.capabilities.sizeAdaptive?(n(),b(l,{key:1,label:e.$t("seedream.size.group.adaptive")},{default:$(()=>[(n(),b(f,{key:e.SEEDREAM_SIZE_ADAPTIVE,label:e.$t("seedream.size.adaptive"),value:e.SEEDREAM_SIZE_ADAPTIVE},null,8,["label","value"]))]),_:1},8,["label"])):v("",!0),s(l,{label:e.$t("seedream.size.group.pixel")},{default:$(()=>[(n(!0),c(y,null,I(e.pixelOptions,h=>(n(),b(f,{key:h.value,label:`${h.value} (${h.ratio})`,value:h.value},null,8,["label","value"]))),128))]),_:1},8,["label"])]),_:1},8,["modelValue","placeholder"])])}const bt=S(ft,[["render",vt],["__scopeId","data-v-dd7bd021"]]),Et=k({name:"SeedreamMaxImagesSelector",components:{ElInputNumber:W,InfoIcon:V},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).groupGeneration},referenceImageCount(){const e=this.config?.image;return Array.isArray(e)?e.length:0},effectiveMax(){const e=H-this.referenceImageCount;return Math.max(1,Math.min(H,e))},value:{get(){const e=this.config?.sequential_image_generation_options?.max_images;return typeof e=="number"&&e>=1?e:de},set(e){const t={...this.config||{}},m=Math.max(1,Math.min(this.effectiveMax,Math.floor(e||1)));m>1?(t.sequential_image_generation="auto",t.sequential_image_generation_options={...t.sequential_image_generation_options||{},max_images:m}):(t.sequential_image_generation="disabled",t.sequential_image_generation_options&&delete t.sequential_image_generation_options),this.$store.commit("seedream/setConfig",t)}}},watch:{effectiveMax(e){this.value>e&&(this.value=e)}}}),kt={key:0,class:"field"},St={class:"label"},yt={class:"box"},wt={class:"title font-bold"},At={class:"value"};function It(e,t,m,o,d,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",kt,[i("div",St,[i("div",yt,[i("h2",wt,r(e.$t("seedream.name.maxImages")),1),s(u,{content:e.$t("seedream.description.maxImages"),class:"info"},null,8,["content"])])]),i("div",At,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=l=>e.value=l),min:1,max:e.effectiveMax,step:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue","max"])])])):v("",!0)}const Vt=S(Et,[["render",It],["__scopeId","data-v-f079fd20"]]),zt=k({name:"SeedreamOutputFormatSelector",components:{ElSelect:N,ElOption:x,InfoIcon:V},data(){return{options:[...ce]}},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).outputFormat},value:{get(){return this.config?.output_format},set(e){const t={...this.config||{}};t.output_format=e,this.$store.commit("seedream/setConfig",t)}}}}),Tt={key:0,class:"field"},Mt={class:"label"},Rt={class:"box"},Lt={class:"title font-bold"};function Dt(e,t,m,o,d,p){const u=a("info-icon"),f=a("el-option"),l=a("el-select");return e.supported?(n(),c("div",Tt,[i("div",Mt,[i("div",Rt,[i("h2",Lt,r(e.$t("seedream.name.outputFormat")),1),s(u,{content:e.$t("seedream.description.outputFormat"),class:"info"},null,8,["content"])])]),s(l,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=_=>e.value=_),class:"value",placeholder:e.$t("seedream.placeholder.select")},{default:$(()=>[(n(!0),c(y,null,I(e.options,_=>(n(),b(f,{key:_,label:_.toUpperCase(),value:_},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])):v("",!0)}const Ct=S(zt,[["render",Dt],["__scopeId","data-v-69ea4c07"]]),Pt=k({name:"SeedreamSeedInput",components:{ElInputNumber:W,InfoIcon:V},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).seed},value:{get(){const e=this.config?.seed;return typeof e=="number"?e:-1},set(e){const t={...this.config||{}},m=typeof e=="number"&&Number.isInteger(e)?e:-1;t.seed=m,this.$store.commit("seedream/setConfig",t)}}}}),qt={key:0,class:"field"},Ut={class:"label"},Gt={class:"box"},Ft={class:"title font-bold"},Ot={class:"value"};function Bt(e,t,m,o,d,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",qt,[i("div",Ut,[i("div",Gt,[i("h2",Ft,r(e.$t("seedream.name.seed")),1),s(u,{content:e.$t("seedream.description.seed"),class:"info"},null,8,["content"])])]),i("div",Ot,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=l=>e.value=l),min:-1,max:2147483647,step:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue"])])])):v("",!0)}const jt=S(Pt,[["render",Bt],["__scopeId","data-v-10cdc1e0"]]),xt=k({name:"SeedreamGuidanceScaleInput",components:{ElInputNumber:W,InfoIcon:V},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).guidanceScale},defaultValue(){return w(this.config?.model).guidanceScaleDefault??2.5},value:{get(){const e=this.config?.guidance_scale;return typeof e=="number"?e:this.defaultValue},set(e){const t={...this.config||{}},m=typeof e=="number"&&e>=1&&e<=10?e:this.defaultValue;t.guidance_scale=m,this.$store.commit("seedream/setConfig",t)}}}}),Nt={key:0,class:"field"},Wt={class:"label"},Kt={class:"box"},Zt={class:"title font-bold"},Ht={class:"value"};function Xt(e,t,m,o,d,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",Nt,[i("div",Wt,[i("div",Kt,[i("h2",Zt,r(e.$t("seedream.name.guidanceScale")),1),s(u,{content:e.$t("seedream.description.guidanceScale"),class:"info"},null,8,["content"])])]),i("div",Ht,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=l=>e.value=l),min:1,max:10,step:.1,precision:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue"])])])):v("",!0)}const Jt=S(xt,[["render",Xt],["__scopeId","data-v-7386f064"]]),Qt=k({name:"SeedreamWatermarkSwitch",components:{ElSwitch:Ie,InfoIcon:V},computed:{value:{get(){const e=this.$store.state.seedream?.config?.watermark;return e===void 0?me:!!e},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,watermark:e})}}}}),Yt={class:"field"},es={class:"label"},ts={class:"box"},ss={class:"title font-bold"},os={class:"value"};function as(e,t,m,o,d,p){const u=a("info-icon"),f=a("el-switch");return n(),c("div",Yt,[i("div",es,[i("div",ts,[i("h2",ss,r(e.$t("seedream.name.watermark")),1),s(u,{content:e.$t("seedream.description.watermark"),class:"info"},null,8,["content"])])]),i("div",os,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=l=>e.value=l)},null,8,["modelValue"])])])}const ns=S(Qt,[["render",as],["__scopeId","data-v-9e2abf0f"]]),rs=k({name:"SeedreamConfigPanel",components:{ElButton:q,FontAwesomeIcon:P,PromptInput:We,Consumption:Se,ImageInput:rt,ModelSelector:pt,SizeSelector:bt,MaxImagesSelector:Vt,OutputFormatSelector:Ct,SeedInput:jt,GuidanceScaleInput:Jt,WatermarkSwitch:ns},emits:["generate"],computed:{config(){return this.$store.state.seedream?.config},consumption(){const e={...this.config||{}},t=Array.isArray(e?.image)&&e.image.length>0,m=e?.sequential_image_generation==="auto"?Math.max(1,Math.floor(e?.sequential_image_generation_options?.max_images||1)):1;return ye({...e,action:t?"edit":"generate",model:ee(e?.model),count:m},this.service?.cost)},service(){return this.$store.state.seedream?.service}},methods:{onGenerate(){this.$emit("generate")}}}),is={class:"flex flex-col h-full"},ls={class:"flex-1 overflow-y-auto p-5"},ds={class:"flex flex-col items-center justify-center px-5 pb-5"};function cs(e,t,m,o,d,p){const u=a("model-selector"),f=a("size-selector"),l=a("max-images-selector"),_=a("output-format-selector"),h=a("seed-input"),E=a("guidance-scale-input"),T=a("watermark-switch"),C=a("prompt-input"),U=a("image-input"),z=a("consumption"),M=a("font-awesome-icon"),se=a("el-button");return n(),c("div",is,[i("div",ls,[s(u,{class:"mb-4"}),s(f,{class:"mb-4"}),s(l,{class:"mb-4"}),s(_,{class:"mb-4"}),s(h,{class:"mb-4"}),s(E,{class:"mb-4"}),s(T,{class:"mb-4"}),s(C,{class:"mb-4"}),s(U,{class:"mb-4"})]),i("div",ds,[s(z,{value:e.consumption,service:e.service},null,8,["value","service"]),s(se,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:$(()=>[s(M,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+r(e.$t("seedream.button.generate")),1)]),_:1},8,["onClick"])])])}const ms=S(rs,[["render",cs]]),us=k({name:"SeedreamTaskPreview",components:{ElImage:Ce,CopyToClipboard:Te,FontAwesomeIcon:P,ElAlert:De,ImageWrapper:Me,ElButton:q,ElTooltip:Le,ImagePreview:te,ApiCodeButton:Re},props:{modelValue:{type:Object,required:!0}},computed:{isEdit(){return Array.isArray(this.modelValue?.request?.image)&&(this.modelValue?.request?.image?.length||0)>0},images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{shortModel(e){return ee(e)||e},onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.seedream?.config||{}};t.image=[e],this.$store.commit("seedream/setConfig",t)}}}),ps={class:"preview"},fs={class:"left"},_s={class:"main"},gs={class:"bot"},hs={class:"datetime"},$s={class:"info"},vs={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},bs={key:1,class:"prompt mt-2"},Es={key:0},ks={key:0,class:D({content:!0})},Ss={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ys={key:1,class:D({content:!0,failed:!0})},ws={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},As={class:D({operations:!0,"mt-2":!0,"mb-2":!0})},Is={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Vs={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},zs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ts={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ms={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Rs={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ls={key:2,class:D({content:!0})},Ds={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Cs={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ps={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Us={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gs={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Fs={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Os={key:3,class:D({content:!0})},Bs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},js={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function xs(e,t,m,o,d,p){const u=a("el-image"),f=a("image-preview"),l=a("font-awesome-icon"),_=a("copy-to-clipboard"),h=a("el-alert"),E=a("image-wrapper"),T=a("el-button"),C=a("el-tooltip"),U=a("api-code-button");return n(),c("div",ps,[i("div",fs,[s(u,{src:"https://cdn.acedata.cloud/9egrbn.png",class:"avatar"})]),i("div",_s,[i("div",gs,[g(r(e.$t("seedream.name.seedreamBot"))+" ",1),i("span",hs,r(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),i("div",$s,[Array.isArray(e.modelValue?.request?.image)&&e.modelValue?.request?.image.length>0?(n(),c("div",vs,[(n(!0),c(y,null,I(e.modelValue?.request?.image,(z,M)=>(n(),b(f,{key:M,url:z,name:`image-${M+1}`,closable:!1},null,8,["url","name"]))),128))])):v("",!0),e.modelValue?.request?.prompt?(n(),c("p",bs,[g(r(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?v("",!0):(n(),c("span",Es," - ("+r(e.$t("seedream.status.pending"))+") ",1))])):v("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(n(),c("div",ys,[i("div",ws,[(n(!0),c(y,null,I(e.images,(z,M)=>(n(),b(E,{key:M,src:z?.image_url,"raw-src":z?.image_url},null,8,["src","raw-src"]))),128))]),i("div",As,[s(C,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:$(()=>[s(T,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=ae(z=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:$(()=>[g(r(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"]),s(U,{path:"/seedream/images",body:e.modelValue?.request},null,8,["body"])]),s(h,{closable:!1,class:"mt-2 success"},{default:$(()=>[e.modelValue?.request?.model?(n(),c("p",Is,[s(l,{icon:"fa-solid fa-cube",class:"mr-1"}),g(" "+r(e.$t("seedream.name.model"))+": "+r(e.shortModel(e.modelValue?.request?.model)),1)])):v("",!0),e.modelValue?.request?.size?(n(),c("p",Vs,[s(l,{icon:"fa-solid fa-image",class:"mr-1"}),g(" "+r(e.$t("seedream.name.size"))+": "+r(e.modelValue?.request?.size),1)])):v("",!0),i("p",zs,[s(l,{icon:"fa-solid fa-bolt",class:"mr-1"}),g(" "+r(e.$t("seedream.name.task"))+": "+r(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),i("p",Ts,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(n(),c("p",Ms,[s(l,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.name.elapsed"))+": "+r(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(n(),c("p",Rs,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(n(),c("div",Ls,[s(h,{closable:!1,class:"failure"},{template:$(()=>[s(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+r(e.$t("seedream.name.failure")),1)]),default:$(()=>[e.modelValue?.request?.model?(n(),c("p",Ds,[s(l,{icon:"fa-solid fa-cube",class:"mr-1"}),g(" "+r(e.$t("seedream.name.model"))+": "+r(e.shortModel(e.modelValue?.request?.model)),1)])):v("",!0),e.modelValue?.request?.size?(n(),c("p",Cs,[s(l,{icon:"fa-solid fa-image",class:"mr-1"}),g(" "+r(e.$t("seedream.name.size"))+": "+r(e.modelValue?.request?.size),1)])):v("",!0),i("p",Ps,[s(l,{icon:"fa-solid fa-bolt",class:"mr-1"}),g(" "+r(e.$t("seedream.name.task"))+": "+r(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),i("p",qs,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.error?.message?(n(),c("p",Us,[s(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+r(e.$t("seedream.name.failureReason"))+": "+r(e.modelValue?.response?.error?.message)+" ",1),s(_,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])])):v("",!0),e.modelValue?.elapsed?(n(),c("p",Gs,[s(l,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.name.elapsed"))+": "+r(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(n(),c("p",Fs,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):v("",!0)]),_:1})])):(n(),c("div",Os,[s(h,{closable:!1,class:"info"},{template:$(()=>[s(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+r(e.$t("seedream.name.status")),1)]),default:$(()=>[i("p",Bs,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),c("p",js,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):v("",!0)]),_:1})])):(n(),c("div",ks,[s(h,{closable:!1,class:"info"},{template:$(()=>[s(l,{icon:"fa-regular fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.status.pending")),1)]),default:$(()=>[i("p",Ss,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})]))])])}const Ns=S(us,[["render",xs],["__scopeId","data-v-1b4654bc"]]),Ws=k({name:"SeedreamRecentPanel",components:{TaskPreview:Ns,BotPlaceholder:Pe,NoTasks:_e,ScrollList:be},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],computed:{tasks(){return{...this.$store.state.seedream?.tasks,items:this.$store.state.seedream?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Ks={key:0},Zs={key:2,class:"w-full h-full flex items-center justify-center"};function Hs(e,t,m,o,d,p){const u=a("bot-placeholder"),f=a("task-preview"),l=a("scroll-list"),_=a("no-tasks");return n(),c(y,null,[e.tasks?.items===void 0?(n(),c("div",Ks,[s(u)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),b(l,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=h=>e.$emit("reach-top"))},{default:$(()=>[(n(!0),c(y,null,I(e.tasks?.items,h=>(n(),b(f,{key:h.id,"model-value":h},null,8,["model-value"]))),128))]),_:1},8,["loading"])):v("",!0),e.tasks?.items?.length===0?(n(),c("div",Zs,[s(_)])):v("",!0)],64)}const Xs=S(Ws,[["render",Hs]]),Js=pe("seedream"),Qs=k({name:"SeedreamIndex",components:{ConfigPanel:ms,Layout:Be,RecentPanel:Xs},mixins:[$e],inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.seedream?.status?.getApplications===X.Request},tasksLoading(){return this.$store.state.seedream?.status?.getTasks===X.Request},credential(){return this.$store.state.seedream?.credential},config(){return this.$store.state.seedream?.config},application(){return this.$store.state.seedream?.application},tasks(){return this.$store.state.seedream?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await Ee({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("seedream/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("seedream/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=20,createdAtMin:m,createdAtMax:o}=e||{};console.debug("limit",t,"createdAtMin",m,"createdAtMax",o),await this.$store.dispatch("seedream/getTasks",{limit:t,createdAtMin:m,createdAtMax:o})},async onGenerate(){if(!ve(this.uploadTracker,d=>this.$t(d),d=>A.warning(d)))return;const e={...this.config||{}};!(Array.isArray(e?.image)&&e.image.length>0)&&"image"in e&&delete e.image,e?.size||delete e.size;const m={...e,callback_url:Js},o=this.credential?.token;if(!o){console.error("no token specified");return}A.info(this.$t("seedream.message.startingTask")),ue("seedream",ze.generate(m,{token:o})).then(()=>{A.success(this.$t("seedream.message.startTaskSuccess"))}).catch(d=>{const p=d?.response?.data;p?.error?.code===Ve?A.error(this.$t("seedream.message.usedUp")):A.error(this.$t("seedream.message.startTaskFailed")+(p?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Ys(e,t,m,o,d,p){const u=a("config-panel"),f=a("recent-panel"),l=a("layout");return n(),b(l,null,{config:$(()=>[s(u,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:$(()=>[s(f,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const ea=S(Qs,[["render",Ys]]);export{ea as default};
1
+ import{F as P}from"./index.es-Dz2WW0mO.js";import{E as q}from"./index-BGH0IgYz.js";import{E as oe}from"./index-BsyPjG1u.js";import{d as k,H as c,E as i,z as G,C as s,y as $,D as a,q as n,x as b,F as r,I as g,O as y,N as I,J as v,M as ae,Q as D}from"./vendor-vue-NSDaktjZ.js";import{H as S,da as B,db as R,dc as j,dd as L,de as F,df as K,dg as O,dh as J,di as Q,dj as Y,bp as ne,dk as re,dl as Z,dm as ie,dn as le,dp as de,dq as H,dr as ce,ds as me,dt as ee,cs as ue,S as X,ct as pe}from"./index-D4JEvBET.js";import{P as fe,N as _e}from"./NoTasks-D5RXiO5t.js";import{p as ge}from"./pasteUploadMixin-BurWbGNQ.js";import{u as he,a as $e,e as ve}from"./uploadTrackerMixin--N-yU8Tl.js";import{I as V,S as be,l as Ee}from"./pagination-33HYpCcx.js";import{I as te}from"./ImagePreview-Dw054CSM.js";import{E as ke}from"./index-CV7E7mDR.js";import{E as A}from"./index-B7TkhThA.js";import{C as Se}from"./Consumption-C3jg3b7m.js";import{a as ye}from"./price-BkNDLX8f.js";import{E as x,a as N,b as we}from"./index-cFJ_-B0U.js";import{E as Ae}from"./index-Cpx6uL0j.js";import{E as W}from"./index-4sGswbzA.js";import{E as Ie}from"./index-DPatKvBa.js";import{b as Ve}from"./errorCode-Cqj9Td_Z.js";import{s as ze}from"./seedream-BZ76h4dp.js";import{C as Te}from"./CopyToClipboard-D8319xRo.js";import{I as Me}from"./ImageWrapper-Df56pj51.js";import{A as Re}from"./ApiCodeButton-DbBsqIvO.js";import{E as Le}from"./index-DKUx2sg9.js";import{E as De}from"./index-BeLJU121.js";import{E as Ce}from"./index-DHCVQU69.js";import{B as Pe}from"./BotPlaceholder-CurzhF4I.js";import"./use-form-item-CfxgrMhy.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./index-CEDF6g8f.js";import"./typescript-BxdtUEmf.js";import"./index-DAQQMQN_.js";import"./index-DGOShBRo.js";import"./highlight-DRPB0jUE.js";import"./index-BLjywj98.js";import"./vendor-highlight-lEWW1Jxd.js";import"./index-ClZhoIFv.js";import"./_baseClone-XRiJGh2W.js";import"./_Uint8Array-CPbtsK4f.js";import"./_initCloneObject-CugDqvBf.js";import"./isEqual-CCMJAc_b.js";import"./index-BZzjVj6a.js";import"./strings-beZM2Y-f.js";import"./castArray-CJc4u1FY.js";import"./debounce-Cix8aYnY.js";import"./_baseIteratee-DisFYsdP.js";import"./index-C1eN8oxJ.js";import"./validator-Bz8-M2lh.js";import"./index-Cu41y2Fl.js";import"./index-BIE-c4ov.js";const qe=k({name:"LayoutSeedream",components:{ElDrawer:oe,ElButton:q,FontAwesomeIcon:P},data(){return{drawer:!1}}}),Ue={class:"main flex flex-row flex-1"},Ge={class:"config w-[320px] h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},Fe={class:"result h-full p-6 flex-1 flex flex-col bg-[var(--app-content-bg)]"};function Oe(e,t,m,o,d,p){const u=a("font-awesome-icon"),f=a("el-button"),l=a("el-drawer");return n(),c("div",Ue,[i("div",Ge,[G(e.$slots,"config",{},void 0,!0)]),i("div",Fe,[G(e.$slots,"result",{},void 0,!0)]),s(f,{circle:"",class:"menu",onClick:t[0]||(t[0]=_=>e.drawer=!0)},{default:$(()=>[s(u,{icon:"fa-solid fa-magic"})]),_:1}),s(l,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=_=>e.drawer=_),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:$(()=>[G(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Be=S(qe,[["render",Oe],["__scopeId","data-v-f2a6eb9e"]]),je="",xe=k({name:"SeedreamPromptInput",components:{PromptTextarea:fe},computed:{prompt:{get(){return this.$store.state.seedream?.config?.prompt},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=je)}});function Ne(e,t,m,o,d,p){const u=a("prompt-textarea");return n(),b(u,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=f=>e.prompt=f),title:e.$t("seedream.name.prompt"),info:e.$t("seedream.description.prompt"),placeholder:e.$t("seedream.placeholder.prompt")},null,8,["modelValue","title","info","placeholder"])}const We=S(xe,[["render",Ne]]),Ke={image:!0,imageRequired:!1,sizeTiers:[B,R,j,L],sizeAdaptive:!0,sizePixel:!0,sizePixelDefault:void 0,groupGeneration:!1,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};function w(e){switch(e){case Y:return{image:!0,imageRequired:!1,sizeTiers:[R,j,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!0,tools:!0};case Q:return{image:!0,imageRequired:!1,sizeTiers:[R,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case J:return{image:!0,imageRequired:!1,sizeTiers:[B,R,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case O:return{image:!1,imageRequired:!1,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:"1024x1024",groupGeneration:!1,seed:!0,guidanceScale:!0,guidanceScaleDefault:K[O],outputFormat:!1,tools:!1};case F:return{image:!0,imageRequired:!0,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:"1024x1024",groupGeneration:!1,seed:!1,guidanceScale:!0,guidanceScaleDefault:K[F],outputFormat:!1,tools:!1};default:return Ke}}const Ze=[B,R,j,L];function He(e,t){if(!e)return[];const m=t.model??e.model;if(!m)return[];const o=w(m),d=[];Array.isArray(e.image)&&e.image.length>0&&!o.image&&d.push({field:"image",i18nLabel:"seedream.name.imageUrls"});const p=typeof e.size=="string"?e.size:void 0;if(p){const u=p.toUpperCase();Ze.includes(u)&&!o.sizeTiers.includes(u)?d.push({field:"size",i18nLabel:"seedream.name.size"}):p==="adaptive"&&!o.sizeAdaptive&&d.push({field:"size",i18nLabel:"seedream.name.size"})}return e.sequential_image_generation==="auto"&&!o.groupGeneration&&d.push({field:"sequential_image_generation",i18nLabel:"seedream.name.maxImages"}),e.seed!==void 0&&e.seed!==null&&!o.seed&&d.push({field:"seed",i18nLabel:"seedream.name.seed"}),e.guidance_scale!==void 0&&e.guidance_scale!==null&&!o.guidanceScale&&d.push({field:"guidance_scale",i18nLabel:"seedream.name.guidanceScale"}),e.output_format&&!o.outputFormat&&d.push({field:"output_format",i18nLabel:"seedream.name.outputFormat"}),Array.isArray(e.tools)&&e.tools.length>0&&!o.tools&&d.push({field:"tools",i18nLabel:"seedream.name.tools"}),d}function Xe(e,t,m){const o={...e},d=m.model??e.model,p=w(d);for(const u of t)switch(u.field){case"image":delete o.image;break;case"size":p.sizePixelDefault?o.size=p.sizePixelDefault:delete o.size;break;case"sequential_image_generation":o.sequential_image_generation="disabled",delete o.sequential_image_generation_options;break;case"seed":delete o.seed;break;case"guidance_scale":delete o.guidance_scale;break;case"output_format":delete o.output_format;break;case"tools":delete o.tools;break}return o}const Je=k({name:"SeedreamImageInput",components:{ElUpload:ke,ElButton:q,InfoIcon:V,ImagePreview:te,FontAwesomeIcon:P},mixins:[ge,he],data(){return{fileList:[],uploadUrl:ne()+"/api/v1/files/",suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.seedream?.config?.image},model(){return this.$store.state.seedream?.config?.model},supported(){return w(this.model).image}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const o=(this.fileList||[]).filter(d=>!d?.response?.file_url);this.fileList=o.length?o:[];return}const t=[];e.forEach(o=>{const d=this.fileList.find(p=>p?.response?.file_url===o||p?.url===o);d?t.push(d):t.push({name:o.split("/").pop()||o,url:o,status:"success",percentage:100,response:{file_url:o}})}),(this.fileList||[]).filter(o=>!o?.response?.file_url).forEach(o=>{t.some(p=>p===o||p?.url===o?.url||p?.response?.file_url===o?.response?.file_url)||t.push(o)}),this.fileList=t}}},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url=="string"&&e.url.startsWith("blob:"))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImages()},onExceed(){A.warning(this.$t("seedream.message.uploadImageExceed"))},onError(){A.error(this.$t("seedream.message.uploadImageError"))},onSetImages(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,image:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImages()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url=="string"&&t.url.startsWith("blob:"))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImages()}}}),Qe={key:0},Ye={class:"field"},et={class:"label"},tt={class:"box"},st={class:"title font-bold"},ot={class:"value"},at={class:"file-list mt-2 flex flex-wrap gap-[10px]"};function nt(e,t,m,o,d,p){const u=a("info-icon"),f=a("font-awesome-icon"),l=a("el-button"),_=a("el-upload"),h=a("image-preview");return e.supported?(n(),c("div",Qe,[i("div",Ye,[i("div",et,[i("div",tt,[i("h2",st,r(e.$t("seedream.name.imageUrls")),1),s(u,{content:e.$t("seedream.description.imageUrls"),class:"info"},null,8,["content"])])]),i("div",ot,[s(_,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=E=>e.fileList=E),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",limit:14,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:$(()=>[s(l,{size:"small",type:"primary",round:""},{default:$(()=>[s(f,{icon:"fa-solid fa-upload",class:"mr-1"}),g(" "+r(e.$t("seedream.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"])])]),i("div",at,[(n(!0),c(y,null,I(e.fileList,(E,T)=>(n(),b(h,{key:E.uid||E?.response?.file_url||E.url||T,url:E.url||E?.response?.file_url,name:E.name,percentage:E.percentage,onRemove:C=>e.onRemovePreview(T,E)},null,8,["url","name","percentage","onRemove"]))),128))])])):v("",!0)}const rt=S(Je,[["render",nt],["__scopeId","data-v-6ef4c2e4"]]),it=k({name:"SeedreamModelSelector",components:{ElSelect:N,ElOption:x,InfoIcon:V},data(){return{revertKey:0,options:[{value:Y,label:this.$t("seedream.model.seedream50")},{value:Q,label:this.$t("seedream.model.seedream45")},{value:J,label:this.$t("seedream.model.seedream40")},{value:O,label:this.$t("seedream.model.seedream30t2i")},{value:F,label:this.$t("seedream.model.seededit30i2i")}]}},computed:{value(){return this.$store.state.seedream?.config?.model}},mounted(){this.value||this.applyModel(re)},methods:{async onChange(e){const t=this.$store.state.seedream?.config||{},m=He(t,{model:e});if(m.length===0){this.applyModel(e);return}const o=m.map(d=>this.$t(d.i18nLabel)).join("、");try{await Ae.confirm(this.$t("seedream.message.featureNotSupportedBody",{fields:o}),this.$t("seedream.message.featureNotSupportedTitle"),{confirmButtonText:this.$t("seedream.button.confirmContinue"),cancelButtonText:this.$t("seedream.button.cancelSwitch"),type:"warning"});const d=Xe({...t,model:e},m,{model:e});this.$store.commit("seedream/setConfig",d),A.success(this.$t("seedream.message.featureRemovedNotice",{fields:o}))}catch{this.revertKey+=1}},applyModel(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,model:e})}}}),lt={class:"field"},dt={class:"label"},ct={class:"box"},mt={class:"title font-bold"};function ut(e,t,m,o,d,p){const u=a("info-icon"),f=a("el-option"),l=a("el-select");return n(),c("div",lt,[i("div",dt,[i("div",ct,[i("h2",mt,r(e.$t("seedream.name.model")),1),s(u,{content:e.$t("seedream.description.model"),class:"info"},null,8,["content"])])]),(n(),b(l,{key:e.revertKey,"model-value":e.value,class:"value",placeholder:e.$t("seedream.placeholder.select"),onChange:e.onChange},{default:$(()=>[(n(!0),c(y,null,I(e.options,_=>(n(),b(f,{key:_.value,label:_.label,value:_.value},null,8,["label","value"]))),128))]),_:1},8,["model-value","placeholder","onChange"]))])}const pt=S(it,[["render",ut],["__scopeId","data-v-8892a12c"]]),ft=k({name:"SeedreamSizeSelector",components:{ElSelect:N,ElOption:x,ElOptionGroup:we,InfoIcon:V},data(){return{SEEDREAM_SIZE_ADAPTIVE:le,pixelOptions:ie}},computed:{model(){return this.$store.state.seedream?.config?.model},capabilities(){return w(this.model)},value:{get(){return this.$store.state.seedream?.config?.size},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,size:e})}}},watch:{model:{immediate:!0,handler(){if(this.value)return;const e=this.capabilities;e.sizeTiers.length?this.value=e.sizeTiers.includes(Z)?Z:e.sizeTiers[0]:e.sizePixelDefault&&(this.value=e.sizePixelDefault)}}}}),_t={class:"field"},gt={class:"label"},ht={class:"box"},$t={class:"title font-bold"};function vt(e,t,m,o,d,p){const u=a("info-icon"),f=a("el-option"),l=a("el-option-group"),_=a("el-select");return n(),c("div",_t,[i("div",gt,[i("div",ht,[i("h2",$t,r(e.$t("seedream.name.size")),1),s(u,{content:e.$t("seedream.description.size"),class:"info"},null,8,["content"])])]),s(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=h=>e.value=h),class:"value",placeholder:e.$t("seedream.placeholder.size"),filterable:"","allow-create":"","default-first-option":""},{default:$(()=>[e.capabilities.sizeTiers.length?(n(),b(l,{key:0,label:e.$t("seedream.size.group.tier")},{default:$(()=>[(n(!0),c(y,null,I(e.capabilities.sizeTiers,h=>(n(),b(f,{key:h,label:h,value:h},null,8,["label","value"]))),128))]),_:1},8,["label"])):v("",!0),e.capabilities.sizeAdaptive?(n(),b(l,{key:1,label:e.$t("seedream.size.group.adaptive")},{default:$(()=>[(n(),b(f,{key:e.SEEDREAM_SIZE_ADAPTIVE,label:e.$t("seedream.size.adaptive"),value:e.SEEDREAM_SIZE_ADAPTIVE},null,8,["label","value"]))]),_:1},8,["label"])):v("",!0),s(l,{label:e.$t("seedream.size.group.pixel")},{default:$(()=>[(n(!0),c(y,null,I(e.pixelOptions,h=>(n(),b(f,{key:h.value,label:`${h.value} (${h.ratio})`,value:h.value},null,8,["label","value"]))),128))]),_:1},8,["label"])]),_:1},8,["modelValue","placeholder"])])}const bt=S(ft,[["render",vt],["__scopeId","data-v-dd7bd021"]]),Et=k({name:"SeedreamMaxImagesSelector",components:{ElInputNumber:W,InfoIcon:V},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).groupGeneration},referenceImageCount(){const e=this.config?.image;return Array.isArray(e)?e.length:0},effectiveMax(){const e=H-this.referenceImageCount;return Math.max(1,Math.min(H,e))},value:{get(){const e=this.config?.sequential_image_generation_options?.max_images;return typeof e=="number"&&e>=1?e:de},set(e){const t={...this.config||{}},m=Math.max(1,Math.min(this.effectiveMax,Math.floor(e||1)));m>1?(t.sequential_image_generation="auto",t.sequential_image_generation_options={...t.sequential_image_generation_options||{},max_images:m}):(t.sequential_image_generation="disabled",t.sequential_image_generation_options&&delete t.sequential_image_generation_options),this.$store.commit("seedream/setConfig",t)}}},watch:{effectiveMax(e){this.value>e&&(this.value=e)}}}),kt={key:0,class:"field"},St={class:"label"},yt={class:"box"},wt={class:"title font-bold"},At={class:"value"};function It(e,t,m,o,d,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",kt,[i("div",St,[i("div",yt,[i("h2",wt,r(e.$t("seedream.name.maxImages")),1),s(u,{content:e.$t("seedream.description.maxImages"),class:"info"},null,8,["content"])])]),i("div",At,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=l=>e.value=l),min:1,max:e.effectiveMax,step:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue","max"])])])):v("",!0)}const Vt=S(Et,[["render",It],["__scopeId","data-v-f079fd20"]]),zt=k({name:"SeedreamOutputFormatSelector",components:{ElSelect:N,ElOption:x,InfoIcon:V},data(){return{options:[...ce]}},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).outputFormat},value:{get(){return this.config?.output_format},set(e){const t={...this.config||{}};t.output_format=e,this.$store.commit("seedream/setConfig",t)}}}}),Tt={key:0,class:"field"},Mt={class:"label"},Rt={class:"box"},Lt={class:"title font-bold"};function Dt(e,t,m,o,d,p){const u=a("info-icon"),f=a("el-option"),l=a("el-select");return e.supported?(n(),c("div",Tt,[i("div",Mt,[i("div",Rt,[i("h2",Lt,r(e.$t("seedream.name.outputFormat")),1),s(u,{content:e.$t("seedream.description.outputFormat"),class:"info"},null,8,["content"])])]),s(l,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=_=>e.value=_),class:"value",placeholder:e.$t("seedream.placeholder.select")},{default:$(()=>[(n(!0),c(y,null,I(e.options,_=>(n(),b(f,{key:_,label:_.toUpperCase(),value:_},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])):v("",!0)}const Ct=S(zt,[["render",Dt],["__scopeId","data-v-69ea4c07"]]),Pt=k({name:"SeedreamSeedInput",components:{ElInputNumber:W,InfoIcon:V},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).seed},value:{get(){const e=this.config?.seed;return typeof e=="number"?e:-1},set(e){const t={...this.config||{}},m=typeof e=="number"&&Number.isInteger(e)?e:-1;t.seed=m,this.$store.commit("seedream/setConfig",t)}}}}),qt={key:0,class:"field"},Ut={class:"label"},Gt={class:"box"},Ft={class:"title font-bold"},Ot={class:"value"};function Bt(e,t,m,o,d,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",qt,[i("div",Ut,[i("div",Gt,[i("h2",Ft,r(e.$t("seedream.name.seed")),1),s(u,{content:e.$t("seedream.description.seed"),class:"info"},null,8,["content"])])]),i("div",Ot,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=l=>e.value=l),min:-1,max:2147483647,step:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue"])])])):v("",!0)}const jt=S(Pt,[["render",Bt],["__scopeId","data-v-10cdc1e0"]]),xt=k({name:"SeedreamGuidanceScaleInput",components:{ElInputNumber:W,InfoIcon:V},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).guidanceScale},defaultValue(){return w(this.config?.model).guidanceScaleDefault??2.5},value:{get(){const e=this.config?.guidance_scale;return typeof e=="number"?e:this.defaultValue},set(e){const t={...this.config||{}},m=typeof e=="number"&&e>=1&&e<=10?e:this.defaultValue;t.guidance_scale=m,this.$store.commit("seedream/setConfig",t)}}}}),Nt={key:0,class:"field"},Wt={class:"label"},Kt={class:"box"},Zt={class:"title font-bold"},Ht={class:"value"};function Xt(e,t,m,o,d,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",Nt,[i("div",Wt,[i("div",Kt,[i("h2",Zt,r(e.$t("seedream.name.guidanceScale")),1),s(u,{content:e.$t("seedream.description.guidanceScale"),class:"info"},null,8,["content"])])]),i("div",Ht,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=l=>e.value=l),min:1,max:10,step:.1,precision:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue"])])])):v("",!0)}const Jt=S(xt,[["render",Xt],["__scopeId","data-v-7386f064"]]),Qt=k({name:"SeedreamWatermarkSwitch",components:{ElSwitch:Ie,InfoIcon:V},computed:{value:{get(){const e=this.$store.state.seedream?.config?.watermark;return e===void 0?me:!!e},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,watermark:e})}}}}),Yt={class:"field"},es={class:"label"},ts={class:"box"},ss={class:"title font-bold"},os={class:"value"};function as(e,t,m,o,d,p){const u=a("info-icon"),f=a("el-switch");return n(),c("div",Yt,[i("div",es,[i("div",ts,[i("h2",ss,r(e.$t("seedream.name.watermark")),1),s(u,{content:e.$t("seedream.description.watermark"),class:"info"},null,8,["content"])])]),i("div",os,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=l=>e.value=l)},null,8,["modelValue"])])])}const ns=S(Qt,[["render",as],["__scopeId","data-v-9e2abf0f"]]),rs=k({name:"SeedreamConfigPanel",components:{ElButton:q,FontAwesomeIcon:P,PromptInput:We,Consumption:Se,ImageInput:rt,ModelSelector:pt,SizeSelector:bt,MaxImagesSelector:Vt,OutputFormatSelector:Ct,SeedInput:jt,GuidanceScaleInput:Jt,WatermarkSwitch:ns},emits:["generate"],computed:{config(){return this.$store.state.seedream?.config},consumption(){const e={...this.config||{}},t=Array.isArray(e?.image)&&e.image.length>0,m=e?.sequential_image_generation==="auto"?Math.max(1,Math.floor(e?.sequential_image_generation_options?.max_images||1)):1;return ye({...e,action:t?"edit":"generate",model:ee(e?.model),count:m},this.service?.cost)},service(){return this.$store.state.seedream?.service}},methods:{onGenerate(){this.$emit("generate")}}}),is={class:"flex flex-col h-full"},ls={class:"flex-1 overflow-y-auto p-5"},ds={class:"flex flex-col items-center justify-center px-5 pb-5"};function cs(e,t,m,o,d,p){const u=a("model-selector"),f=a("size-selector"),l=a("max-images-selector"),_=a("output-format-selector"),h=a("seed-input"),E=a("guidance-scale-input"),T=a("watermark-switch"),C=a("prompt-input"),U=a("image-input"),z=a("consumption"),M=a("font-awesome-icon"),se=a("el-button");return n(),c("div",is,[i("div",ls,[s(u,{class:"mb-4"}),s(f,{class:"mb-4"}),s(l,{class:"mb-4"}),s(_,{class:"mb-4"}),s(h,{class:"mb-4"}),s(E,{class:"mb-4"}),s(T,{class:"mb-4"}),s(C,{class:"mb-4"}),s(U,{class:"mb-4"})]),i("div",ds,[s(z,{value:e.consumption,service:e.service},null,8,["value","service"]),s(se,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:$(()=>[s(M,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+r(e.$t("seedream.button.generate")),1)]),_:1},8,["onClick"])])])}const ms=S(rs,[["render",cs]]),us=k({name:"SeedreamTaskPreview",components:{ElImage:Ce,CopyToClipboard:Te,FontAwesomeIcon:P,ElAlert:De,ImageWrapper:Me,ElButton:q,ElTooltip:Le,ImagePreview:te,ApiCodeButton:Re},props:{modelValue:{type:Object,required:!0}},computed:{isEdit(){return Array.isArray(this.modelValue?.request?.image)&&(this.modelValue?.request?.image?.length||0)>0},images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{shortModel(e){return ee(e)||e},onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.seedream?.config||{}};t.image=[e],this.$store.commit("seedream/setConfig",t)}}}),ps={class:"preview"},fs={class:"left"},_s={class:"main"},gs={class:"bot"},hs={class:"datetime"},$s={class:"info"},vs={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},bs={key:1,class:"prompt mt-2"},Es={key:0},ks={key:0,class:D({content:!0})},Ss={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ys={key:1,class:D({content:!0,failed:!0})},ws={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},As={class:D({operations:!0,"mt-2":!0,"mb-2":!0})},Is={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Vs={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},zs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ts={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ms={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Rs={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ls={key:2,class:D({content:!0})},Ds={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Cs={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ps={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Us={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gs={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Fs={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Os={key:3,class:D({content:!0})},Bs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},js={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function xs(e,t,m,o,d,p){const u=a("el-image"),f=a("image-preview"),l=a("font-awesome-icon"),_=a("copy-to-clipboard"),h=a("el-alert"),E=a("image-wrapper"),T=a("el-button"),C=a("el-tooltip"),U=a("api-code-button");return n(),c("div",ps,[i("div",fs,[s(u,{src:"https://cdn.acedata.cloud/9egrbn.png",class:"avatar"})]),i("div",_s,[i("div",gs,[g(r(e.$t("seedream.name.seedreamBot"))+" ",1),i("span",hs,r(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),i("div",$s,[Array.isArray(e.modelValue?.request?.image)&&e.modelValue?.request?.image.length>0?(n(),c("div",vs,[(n(!0),c(y,null,I(e.modelValue?.request?.image,(z,M)=>(n(),b(f,{key:M,url:z,name:`image-${M+1}`,closable:!1},null,8,["url","name"]))),128))])):v("",!0),e.modelValue?.request?.prompt?(n(),c("p",bs,[g(r(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?v("",!0):(n(),c("span",Es," - ("+r(e.$t("seedream.status.pending"))+") ",1))])):v("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(n(),c("div",ys,[i("div",ws,[(n(!0),c(y,null,I(e.images,(z,M)=>(n(),b(E,{key:M,src:z?.image_url,"raw-src":z?.image_url},null,8,["src","raw-src"]))),128))]),i("div",As,[s(C,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:$(()=>[s(T,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=ae(z=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:$(()=>[g(r(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"]),s(U,{path:"/seedream/images",body:e.modelValue?.request},null,8,["body"])]),s(h,{closable:!1,class:"mt-2 success"},{default:$(()=>[e.modelValue?.request?.model?(n(),c("p",Is,[s(l,{icon:"fa-solid fa-cube",class:"mr-1"}),g(" "+r(e.$t("seedream.name.model"))+": "+r(e.shortModel(e.modelValue?.request?.model)),1)])):v("",!0),e.modelValue?.request?.size?(n(),c("p",Vs,[s(l,{icon:"fa-solid fa-image",class:"mr-1"}),g(" "+r(e.$t("seedream.name.size"))+": "+r(e.modelValue?.request?.size),1)])):v("",!0),i("p",zs,[s(l,{icon:"fa-solid fa-bolt",class:"mr-1"}),g(" "+r(e.$t("seedream.name.task"))+": "+r(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),i("p",Ts,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(n(),c("p",Ms,[s(l,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.name.elapsed"))+": "+r(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(n(),c("p",Rs,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(n(),c("div",Ls,[s(h,{closable:!1,class:"failure"},{template:$(()=>[s(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+r(e.$t("seedream.name.failure")),1)]),default:$(()=>[e.modelValue?.request?.model?(n(),c("p",Ds,[s(l,{icon:"fa-solid fa-cube",class:"mr-1"}),g(" "+r(e.$t("seedream.name.model"))+": "+r(e.shortModel(e.modelValue?.request?.model)),1)])):v("",!0),e.modelValue?.request?.size?(n(),c("p",Cs,[s(l,{icon:"fa-solid fa-image",class:"mr-1"}),g(" "+r(e.$t("seedream.name.size"))+": "+r(e.modelValue?.request?.size),1)])):v("",!0),i("p",Ps,[s(l,{icon:"fa-solid fa-bolt",class:"mr-1"}),g(" "+r(e.$t("seedream.name.task"))+": "+r(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),i("p",qs,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.error?.message?(n(),c("p",Us,[s(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+r(e.$t("seedream.name.failureReason"))+": "+r(e.modelValue?.response?.error?.message)+" ",1),s(_,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])])):v("",!0),e.modelValue?.elapsed?(n(),c("p",Gs,[s(l,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.name.elapsed"))+": "+r(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(n(),c("p",Fs,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):v("",!0)]),_:1})])):(n(),c("div",Os,[s(h,{closable:!1,class:"info"},{template:$(()=>[s(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+r(e.$t("seedream.name.status")),1)]),default:$(()=>[i("p",Bs,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),c("p",js,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):v("",!0)]),_:1})])):(n(),c("div",ks,[s(h,{closable:!1,class:"info"},{template:$(()=>[s(l,{icon:"fa-regular fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.status.pending")),1)]),default:$(()=>[i("p",Ss,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})]))])])}const Ns=S(us,[["render",xs],["__scopeId","data-v-1b4654bc"]]),Ws=k({name:"SeedreamRecentPanel",components:{TaskPreview:Ns,BotPlaceholder:Pe,NoTasks:_e,ScrollList:be},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],computed:{tasks(){return{...this.$store.state.seedream?.tasks,items:this.$store.state.seedream?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Ks={key:0},Zs={key:2,class:"w-full h-full flex items-center justify-center"};function Hs(e,t,m,o,d,p){const u=a("bot-placeholder"),f=a("task-preview"),l=a("scroll-list"),_=a("no-tasks");return n(),c(y,null,[e.tasks?.items===void 0?(n(),c("div",Ks,[s(u)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),b(l,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=h=>e.$emit("reach-top"))},{default:$(()=>[(n(!0),c(y,null,I(e.tasks?.items,h=>(n(),b(f,{key:h.id,"model-value":h},null,8,["model-value"]))),128))]),_:1},8,["loading"])):v("",!0),e.tasks?.items?.length===0?(n(),c("div",Zs,[s(_)])):v("",!0)],64)}const Xs=S(Ws,[["render",Hs]]),Js=pe("seedream"),Qs=k({name:"SeedreamIndex",components:{ConfigPanel:ms,Layout:Be,RecentPanel:Xs},mixins:[$e],inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.seedream?.status?.getApplications===X.Request},tasksLoading(){return this.$store.state.seedream?.status?.getTasks===X.Request},credential(){return this.$store.state.seedream?.credential},config(){return this.$store.state.seedream?.config},application(){return this.$store.state.seedream?.application},tasks(){return this.$store.state.seedream?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await Ee({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("seedream/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("seedream/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=20,createdAtMin:m,createdAtMax:o}=e||{};console.debug("limit",t,"createdAtMin",m,"createdAtMax",o),await this.$store.dispatch("seedream/getTasks",{limit:t,createdAtMin:m,createdAtMax:o})},async onGenerate(){if(!ve(this.uploadTracker,d=>this.$t(d),d=>A.warning(d)))return;const e={...this.config||{}};!(Array.isArray(e?.image)&&e.image.length>0)&&"image"in e&&delete e.image,e?.size||delete e.size;const m={...e,callback_url:Js},o=this.credential?.token;if(!o){console.error("no token specified");return}A.info(this.$t("seedream.message.startingTask")),ue("seedream",ze.generate(m,{token:o})).then(()=>{A.success(this.$t("seedream.message.startTaskSuccess"))}).catch(d=>{const p=d?.response?.data;p?.error?.code===Ve?A.error(this.$t("seedream.message.usedUp")):A.error(this.$t("seedream.message.startTaskFailed")+(p?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Ys(e,t,m,o,d,p){const u=a("config-panel"),f=a("recent-panel"),l=a("layout");return n(),b(l,null,{config:$(()=>[s(u,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:$(()=>[s(f,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const ea=S(Qs,[["render",Ys]]);export{ea as default};