@acedatacloud/nexior 3.356.2 → 3.356.3

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 (294) hide show
  1. package/dist/assets/{ApiCodeButton-CiYVI-BW.js → ApiCodeButton-DnW2mEEl.js} +1 -1
  2. package/dist/assets/{Artifacts-oV-cxX6-.js → Artifacts-BbXNE0MY.js} +1 -1
  3. package/dist/assets/{AskUserQuestionCard-BJ5H7v3C.js → AskUserQuestionCard-Cbw3Hxlr.js} +1 -1
  4. package/dist/assets/{Auth-DmbX4IcG.js → Auth-Csf5NVN-.js} +1 -1
  5. package/dist/assets/{Bare-CKC6gxoC.js → Bare-CtV6pjUP.js} +1 -1
  6. package/dist/assets/{BotPlaceholder-CWVuEjbL.js → BotPlaceholder-hcIRfy3i.js} +1 -1
  7. package/dist/assets/{BottomFooter-C80gDUXR.js → BottomFooter-DzQdavFJ.js} +1 -1
  8. package/dist/assets/{BrowserPairingDialog-NGsMVfzJ.js → BrowserPairingDialog-Cl__jmX7.js} +1 -1
  9. package/dist/assets/{Callback-CEITpQWh.js → Callback-CaJlsIlI.js} +1 -1
  10. package/dist/assets/{CodeSnippet-BUumFIYE.js → CodeSnippet-PjDE_CEu.js} +1 -1
  11. package/dist/assets/{Console-DaKR60hu.js → Console-B2Ek4SCM.js} +1 -1
  12. package/dist/assets/{Consumption-64yHTpsG.js → Consumption-C1nuDweL.js} +1 -1
  13. package/dist/assets/{Conversation-fDmuX-NP.js → Conversation-BMSIKWqv.js} +1 -1
  14. package/dist/assets/{Conversation-Br3QCbxZ.js → Conversation-inS0U5qq.js} +1 -1
  15. package/dist/assets/{CopyToClipboard-BoetcLMP.js → CopyToClipboard-CLVp5I29.js} +1 -1
  16. package/dist/assets/{Detail-xLit1ZcQ.js → Detail-4_enJ6qH.js} +2 -2
  17. package/dist/assets/{Extra-C2v1moyP.js → Extra-Ce7_Kba0.js} +1 -1
  18. package/dist/assets/{FilePreview-CL9QnaXZ.js → FilePreview-BlCzWGSp.js} +1 -1
  19. package/dist/assets/{Hailuo-BgKkSb1Z.js → Hailuo-CRu4cYR4.js} +1 -1
  20. package/dist/assets/{History-Csx7tGHq.js → History-CyDH3_w6.js} +1 -1
  21. package/dist/assets/{ImagePreview-Bc9stSGF.js → ImagePreview-DIR230rQ.js} +1 -1
  22. package/dist/assets/{ImageWrapper-BU9rTzRE.js → ImageWrapper-DTMYPBbG.js} +1 -1
  23. package/dist/assets/{Index-CbYgQHvA.js → Index-7-jB-rrs.js} +1 -1
  24. package/dist/assets/{Index-CxtAOMuR2.js → Index-B5t18uMS2.js} +1 -1
  25. package/dist/assets/{Index-BLkVvuW1.js → Index-B8Wivqji.js} +1 -1
  26. package/dist/assets/Index-BU-Jt2iC.css +1 -0
  27. package/dist/assets/{Index-Dp4r7Gxt.js → Index-BXIajqur.js} +1 -1
  28. package/dist/assets/{Index-C7sDNFdr.js → Index-Bh0MSga2.js} +1 -1
  29. package/dist/assets/{Index-MJKawRgO.js → Index-Bhge0Ye3.js} +1 -1
  30. package/dist/assets/{Index-BZIytdwE.js → Index-BjUC4Qy2.js} +1 -1
  31. package/dist/assets/{Index-Dy27xVwA.js → Index-BlIY8K2y.js} +1 -1
  32. package/dist/assets/{Index-B1r3Gul3.js → Index-Bp4mYiWT.js} +1 -1
  33. package/dist/assets/{Index-CFxfsEB3.js → Index-Bpv_QguW.js} +1 -1
  34. package/dist/assets/{Index-ip9nThQe.js → Index-BrILi0-c.js} +1 -1
  35. package/dist/assets/{Index-D29WuERC.js → Index-C-wEZgIN.js} +1 -1
  36. package/dist/assets/Index-CBybAWmy.js +1 -0
  37. package/dist/assets/{Index-ByElOcMX.js → Index-CGHYkqjO.js} +1 -1
  38. package/dist/assets/{Index-fb0d5Ij8.js → Index-CMihZ-nT.js} +1 -1
  39. package/dist/assets/{Index-D1kTVn4v.js → Index-CNdFXrFF.js} +1 -1
  40. package/dist/assets/{Index-CUKoS2jG2.js → Index-CVhzkBCU2.js} +1 -1
  41. package/dist/assets/{Index-CzZIKZir.js → Index-CWPkVAGu.js} +1 -1
  42. package/dist/assets/{Index-fCMXDMdR.js → Index-CbuI24qA.js} +1 -1
  43. package/dist/assets/{Index-BSOYkVrY2.js → Index-CyI5B5Iw2.js} +1 -1
  44. package/dist/assets/{Index-cmED8Wf82.js → Index-D2n66vom2.js} +1 -1
  45. package/dist/assets/{Index-DVZYw8Ti.js → Index-D5cJIMqk.js} +1 -1
  46. package/dist/assets/{Index-D1mfppvZ.js → Index-D89ynFEG.js} +1 -1
  47. package/dist/assets/{Index-BWKAgE_L.js → Index-DExxCDca.js} +1 -1
  48. package/dist/assets/{Index-BMvzcOYA.js → Index-DYxSLsTm.js} +1 -1
  49. package/dist/assets/{Index-BbpkGoZb.js → Index-DZ8exWOg.js} +1 -1
  50. package/dist/assets/{Index-C79dNjpN.js → Index-DgR8EjvG.js} +1 -1
  51. package/dist/assets/{Index-BzEW9qOH.js → Index-F5FVH4XA.js} +1 -1
  52. package/dist/assets/{Index-B7ZIhLPz.js → Index-IWedAkVJ.js} +1 -1
  53. package/dist/assets/{Index-DVb4v3oF.js → Index-KWeUZuBG.js} +1 -1
  54. package/dist/assets/{Index-EXzPO3cH.js → Index-KigOtr6Q.js} +1 -1
  55. package/dist/assets/{Index-d0Ax26tm.js → Index-Q9SnXeG5.js} +1 -1
  56. package/dist/assets/{Index-CHjMy5ex2.js → Index-b_bVC-2v2.js} +1 -1
  57. package/dist/assets/{Index-DHDKggl22.js → Index-fAKzMOZY2.js} +1 -1
  58. package/dist/assets/{Invitees-Cjh_HkSH.js → Invitees-t8LjUtox.js} +1 -1
  59. package/dist/assets/{List-pfCsf92F.js → List-BcdTB0xZ.js} +1 -1
  60. package/dist/assets/{List-dw1Xv1Kt.js → List-CiRlLqQi.js} +1 -1
  61. package/dist/assets/{List-Dj0wsQZF.js → List-D0ppoVM_.js} +1 -1
  62. package/dist/assets/{LocalTools-Dz6pS18B.js → LocalTools-8f1nIu1i.js} +1 -1
  63. package/dist/assets/{LocalTools-L1Z9CYWz.js → LocalTools-TuBOV-fy.js} +1 -1
  64. package/dist/assets/{Logo-IS52iyq3.js → Logo-BIQjmFe8.js} +1 -1
  65. package/dist/assets/{Main-CKzyMm5n.js → Main-BM7WSyw6.js} +1 -1
  66. package/dist/assets/{Message-CYvcKMlp.js → Message-CrGhKWMq.js} +2 -2
  67. package/dist/assets/{Model-C2N_nPmj.js → Model-BDoRG1y3.js} +1 -1
  68. package/dist/assets/{Navigator-DbZtnb_p.js → Navigator-Uk0XBf21.js} +3 -3
  69. package/dist/assets/{NotFound-P7fqDiGG.js → NotFound-BxmMuusa.js} +1 -1
  70. package/dist/assets/{PageHeader-SdNvT1p3.js → PageHeader-B7aH63od.js} +1 -1
  71. package/dist/assets/{Pay-CkRLPLzC.js → Pay-a8uYoEfm.js} +1 -1
  72. package/dist/assets/{Player-cWxD5Tss.js → Player-tEjbz8km.js} +1 -1
  73. package/dist/assets/{Poivelle-BnqjulQy.js → Poivelle-D2Pg88fJ.js} +1 -1
  74. package/dist/assets/{RealtimeCall-Bp8EL62t.js → RealtimeCall-Dh_EECLN.js} +1 -1
  75. package/dist/assets/{ReportButton-D7JGzuC6.js → ReportButton-CYa13w8h.js} +1 -1
  76. package/dist/assets/{ReportDialog-DmMuOP3a.js → ReportDialog-BdPWn65b.js} +1 -1
  77. package/dist/assets/{ScheduledTasks-DTSyAEUZ.js → ScheduledTasks-d52JFkP6.js} +1 -1
  78. package/dist/assets/{Status-CSRYA8fU.js → Status-xxs4gXOB.js} +1 -1
  79. package/dist/assets/{Subscribe-Ci1vhdb7.js → Subscribe-DgrTtF4n.js} +1 -1
  80. package/dist/assets/{TabSwitcher-ClLXbedz.js → TabSwitcher-C_N_7W5M.js} +1 -1
  81. package/dist/assets/{Tts-BtFmYfFd.js → Tts-ZE4EzLsJ.js} +1 -1
  82. package/dist/assets/{VideoPlayer-DZajGyHg.js → VideoPlayer-C44SsSWU.js} +1 -1
  83. package/dist/assets/{VideoPreview-yy9EIf_l.js → VideoPreview-D2JHTDU8.js} +1 -1
  84. package/dist/assets/arrow-down-DfZZ6O9V.js +1 -0
  85. package/dist/assets/{arrow-down-wide-narrow-Bh9l3U0_.js → arrow-down-wide-narrow-CXsartjU.js} +1 -1
  86. package/dist/assets/arrow-left-uQ2QSI6E.js +1 -0
  87. package/dist/assets/arrow-right-DLK8H_c3.js +1 -0
  88. package/dist/assets/arrow-up-CySfbL5G.js +1 -0
  89. package/dist/assets/{authorizeFlow-B9aZMxfA.js → authorizeFlow-qoRgSMcK.js} +1 -1
  90. package/dist/assets/{avatar-D8dj7T0j.js → avatar-B9amXRqx.js} +1 -1
  91. package/dist/assets/{basic-BRAq7Qs_.js → basic-POh0fuWQ.js} +1 -1
  92. package/dist/assets/{book-open-Bgt2CzJP.js → book-open-DJntghzP.js} +1 -1
  93. package/dist/assets/{box-K1AOg2Dt.js → box-BgafcOxN.js} +1 -1
  94. package/dist/assets/{boxes-nkCCYn_H.js → boxes-BxwF-h52.js} +1 -1
  95. package/dist/assets/{brain-OfFe2iNh.js → brain-DRAL5UnC.js} +1 -1
  96. package/dist/assets/{chart-no-axes-combined-NmmizHnk.js → chart-no-axes-combined-C2XBdAJR.js} +1 -1
  97. package/dist/assets/{chat-fmefJyfA.js → chat-C-QhdNDG.js} +1 -1
  98. package/dist/assets/check-C1SSXE37.js +1 -0
  99. package/dist/assets/chevron-down-D54yUG_W.js +1 -0
  100. package/dist/assets/chevron-right-kcQrk7a4.js +1 -0
  101. package/dist/assets/circle-check-B7M0eLJf.js +1 -0
  102. package/dist/assets/{circle-question-mark-J5LrgC7z.js → circle-question-mark-CkrnC9TN.js} +1 -1
  103. package/dist/assets/{clipboard-list-D6rxrE8d.js → clipboard-list-BQu_m5lA.js} +1 -1
  104. package/dist/assets/clock-DcgPnVJa.js +1 -0
  105. package/dist/assets/code-Cx-HLyjl.js +1 -0
  106. package/dist/assets/{codingBridge-CWXTjgaq.js → codingBridge-5Younw34.js} +2 -2
  107. package/dist/assets/{codingBridgeNotify-CNQGGqEk.js → codingBridgeNotify-dNV0kJQ8.js} +2 -2
  108. package/dist/assets/{coins-CA8lophH.js → coins-gBDFWv_r.js} +1 -1
  109. package/dist/assets/{collapse-LIyzteME.js → collapse-B_99IkFQ.js} +1 -1
  110. package/dist/assets/{constants-CQR8cCBL.js → constants-C44cV5UH.js} +1 -1
  111. package/dist/assets/{copy-B489PY7H.js → copy-DpODTAxb.js} +1 -1
  112. package/dist/assets/{createTaskActions-hQu69zYP.js → createTaskActions-bHjJf96C.js} +1 -1
  113. package/dist/assets/{digitalhuman-C-m4TlWk.js → digitalhuman-DgSMt73W.js} +1 -1
  114. package/dist/assets/{dollar-sign-d8zK5thl.js → dollar-sign-BGeaa3gL.js} +1 -1
  115. package/dist/assets/{download-CoMPboZJ.js → download-CZLXh4-2.js} +1 -1
  116. package/dist/assets/{drawer-BMRGHI-3.js → drawer-CL63mgQu.js} +1 -1
  117. package/dist/assets/{dropdown-DzzmAJqH.js → dropdown-B8Z-l-iE.js} +1 -1
  118. package/dist/assets/{dropdown-fFM8TrPr.js → dropdown-kUTe8e-9.js} +1 -1
  119. package/dist/assets/{ellipsis-Cxuin38H.js → ellipsis-Du3lY52z.js} +1 -1
  120. package/dist/assets/esm-B1tUH8kr.js +1 -0
  121. package/dist/assets/{esm-DWKsBcY1.js → esm-BGOjVEnk.js} +3 -3
  122. package/dist/assets/{esm-DlTz8W4O.js → esm-DHZANs_t.js} +2 -2
  123. package/dist/assets/{esm-xG4UB0yZ.js → esm-DOo7uPDb.js} +2 -2
  124. package/dist/assets/{esm-DtlST3qG.js → esm-DTElW73d.js} +1 -1
  125. package/dist/assets/{esm-BDC0wUT8.js → esm-aYaknvQ1.js} +1 -1
  126. package/dist/assets/{esm-E98t4dD8.js → esm-j1DgBTjx.js} +1 -1
  127. package/dist/assets/{external-link-CgEa7yis.js → external-link-dZgWEqL4.js} +1 -1
  128. package/dist/assets/{eye-C4SyrpXf.js → eye-DFp2jfce.js} +1 -1
  129. package/dist/assets/{file-BNfEG5IF.js → file-DvOzOx_P.js} +1 -1
  130. package/dist/assets/{file-output-DNvvFeOx.js → file-output-19dlKJBf.js} +1 -1
  131. package/dist/assets/{file-text--Qjz57wL.js → file-text-mDCcsztI.js} +1 -1
  132. package/dist/assets/{fish-BhaYIY2P.js → fish-D60Al1yj.js} +1 -1
  133. package/dist/assets/{flux-SeBD2b5R.js → flux-d_SeQnk9.js} +1 -1
  134. package/dist/assets/{folder-DcItLXw1.js → folder-DbyunSbX.js} +1 -1
  135. package/dist/assets/gauge-CdYwce4s.js +1 -0
  136. package/dist/assets/{globe-DcRbETD-.js → globe-BhHHcHQD.js} +1 -1
  137. package/dist/assets/{grokvideo-CwVElxKX.js → grokvideo-S1pCi5Tr.js} +1 -1
  138. package/dist/assets/{hailuo-maOTnYd1.js → hailuo-M_qwVpNw.js} +1 -1
  139. package/dist/assets/{headphones-DCnnsYrD.js → headphones-Dr9_CJTJ.js} +1 -1
  140. package/dist/assets/{history-5dWDE2j4.js → history-CCILjiNN.js} +1 -1
  141. package/dist/assets/{house-BIolUNvl.js → house-BTwHBckD.js} +1 -1
  142. package/dist/assets/{i18n-D69rWLe_.js → i18n-Cqi3MO17.js} +1 -1
  143. package/dist/assets/{image-l7GEfh5m.js → image-ltLE0_B2.js} +1 -1
  144. package/dist/assets/{index-DIgS5Gvp.js → index-CREYJmGZ.js} +6 -6
  145. package/dist/assets/{index.browser.esm-BglHW4F-.js → index.browser.esm-NRFegStZ.js} +1 -1
  146. package/dist/assets/{index.es-Ci-Vjlrb.js → index.es-Dp5oaXS7.js} +1 -1
  147. package/dist/assets/{info-C40CnPeL.js → info-B6zz-sKo.js} +1 -1
  148. package/dist/assets/{input-number-ByXVBT4t.js → input-number-u0MGro2n.js} +1 -1
  149. package/dist/assets/intro-2CIeLa4V.js +1 -0
  150. package/dist/assets/intro-BQHGX5HW.js +1 -0
  151. package/dist/assets/intro-BTSbJEHO.js +1 -0
  152. package/dist/assets/intro-BuaD45ZB.js +1 -0
  153. package/dist/assets/intro-CVqOAs0d.js +1 -0
  154. package/dist/assets/intro-CX-tVM1n.js +1 -0
  155. package/dist/assets/intro-CumGy2RC.js +1 -0
  156. package/dist/assets/intro-D26BGrp9.js +1 -0
  157. package/dist/assets/intro-D7SWXPm3.js +1 -0
  158. package/dist/assets/intro-DFfBLUfo.js +1 -0
  159. package/dist/assets/intro-Dq8aF71M.js +1 -0
  160. package/dist/assets/intro-HirJwSQO.js +1 -0
  161. package/dist/assets/intro-JkrATbbK.js +1 -0
  162. package/dist/assets/intro-Y10dLinG.js +1 -0
  163. package/dist/assets/intro-Z5WuhH2a.js +1 -0
  164. package/dist/assets/intro-bo9fZbK4.js +1 -0
  165. package/dist/assets/intro-msK-p0lY.js +1 -0
  166. package/dist/assets/intro-zxCwJqFb.js +1 -0
  167. package/dist/assets/{key-round-D4yW8b4H.js → key-round-CgK5ul3S.js} +1 -1
  168. package/dist/assets/{kling-BBObHQ4y.js → kling-DdPnVX2L.js} +1 -1
  169. package/dist/assets/{languages-DPAWujhs.js → languages-CVKa6GSx.js} +1 -1
  170. package/dist/assets/{laptop-CkMMUQQ5.js → laptop-C1UtQchD.js} +1 -1
  171. package/dist/assets/{lightbulb-BYkyNQBq.js → lightbulb-DMMH-itQ.js} +1 -1
  172. package/dist/assets/{link-DKCPP9JK.js → link-Ck182LqI.js} +1 -1
  173. package/dist/assets/loader-circle-BJdKG6dp.js +1 -0
  174. package/dist/assets/{lock-D-SCAKKf.js → lock-DGLRMLsk.js} +1 -1
  175. package/dist/assets/{luma-CWo2eJhn.js → luma-D08kYXX2.js} +1 -1
  176. package/dist/assets/{maestro-D6pCMVdC.js → maestro-BSTyCJsV.js} +1 -1
  177. package/dist/assets/{maestro-Dk0xw1uy.js → maestro-wC6egBQw.js} +1 -1
  178. package/dist/assets/{mail-DsWU4MNx.js → mail-Dte9tFt2.js} +1 -1
  179. package/dist/assets/{message-circle-PQt0Q2mh.js → message-circle-DWzinnDO.js} +1 -1
  180. package/dist/assets/{mic-CrSotd0p.js → mic-Dow6VrJE.js} +1 -1
  181. package/dist/assets/{midjourney-w3B_dqpl.js → midjourney-BPtltduI.js} +1 -1
  182. package/dist/assets/{mobileLocalExec-CN1GlgN2.js → mobileLocalExec-DaDhbwJt.js} +2 -2
  183. package/dist/assets/{models-CwEjR6Nf.js → models-DcpkDkjF.js} +1 -1
  184. package/dist/assets/{monitor-BHx1oad3.js → monitor-DkCq84E2.js} +1 -1
  185. package/dist/assets/{mouse-pointer-2-BSu7sguX.js → mouse-pointer-2-9VJBV_22.js} +1 -1
  186. package/dist/assets/music-2-iJ0GWVrl.js +1 -0
  187. package/dist/assets/{nanobanana-CtkE9yDF.js → nanobanana-CYmgToNy.js} +1 -1
  188. package/dist/assets/{omni-DXnPbKHE.js → omni-CldP_ZwX.js} +1 -1
  189. package/dist/assets/{openaiimage-6vtOuJFv.js → openaiimage-d3GjQIMh.js} +1 -1
  190. package/dist/assets/{pagination-CebMKB63.js → pagination-BbFTEjBg.js} +1 -1
  191. package/dist/assets/{pagination-CP5QlGv2.js → pagination-IckkXpUO.js} +1 -1
  192. package/dist/assets/{pagination-BNPMPfyr.js → pagination-uq23xZEg.js} +1 -1
  193. package/dist/assets/{palette-DGHTNrTx.js → palette-D_hzvJDa.js} +1 -1
  194. package/dist/assets/{paperclip-D7VNr9Qq.js → paperclip-BYNr5XFL.js} +1 -1
  195. package/dist/assets/{pause-Ck2Rq3YJ.js → pause-BWpPJP_R.js} +1 -1
  196. package/dist/assets/{pencil-Djn9Hc9z.js → pencil-BhwkvOrn.js} +1 -1
  197. package/dist/assets/{pika-HczyW99B.js → pika-CLJeCDA-.js} +1 -1
  198. package/dist/assets/{pixverse-b652Co6y.js → pixverse-CmbNyRQT.js} +1 -1
  199. package/dist/assets/play-CJx7xQc1.js +1 -0
  200. package/dist/assets/{plug-B6e7XxKm.js → plug-Bm5lTQdF.js} +1 -1
  201. package/dist/assets/plus--lrUTaV9.js +1 -0
  202. package/dist/assets/{poivelle-BkvmnyzU.js → poivelle-BCa_2ckb.js} +1 -1
  203. package/dist/assets/{popover-Br-sCBHH.js → popover-s9P5QTaN.js} +1 -1
  204. package/dist/assets/{producer-D0wRhvwS.js → producer-CJpFQFtR.js} +1 -1
  205. package/dist/assets/{qrart-BrgI_rXw.js → qrart-j4X6G25p.js} +1 -1
  206. package/dist/assets/{realtime-mVqPss9r.js → realtime-DGslBgjF.js} +1 -1
  207. package/dist/assets/{refresh-cw-DqyQYIrN.js → refresh-cw-DsZHH-ne.js} +1 -1
  208. package/dist/assets/rotate-ccw-CwG8Tr4q.js +1 -0
  209. package/dist/assets/rotate-cw-is7J0f7E.js +1 -0
  210. package/dist/assets/{row-Cbv7FLTy.js → row-DQqpuvYH.js} +1 -1
  211. package/dist/assets/search-B-v-GhMv.js +1 -0
  212. package/dist/assets/{seedance-K37GcyFq.js → seedance-DyH2BqTs.js} +1 -1
  213. package/dist/assets/{seedream-DHdTsMrg.js → seedream-LGwBa99t.js} +1 -1
  214. package/dist/assets/{select-CUw_YhcY.js → select-jRFQ1Hzk.js} +1 -1
  215. package/dist/assets/{serp-b5iBdcvx.js → serp-BdAsrKwn.js} +1 -1
  216. package/dist/assets/{shield-CzPrLCPw.js → shield-41WYVrpG.js} +1 -1
  217. package/dist/assets/{shuffle-DI8PXiNu.js → shuffle-bmih4UqZ.js} +1 -1
  218. package/dist/assets/{slider-508i2Vb5.js → slider-B_xhGTdh.js} +1 -1
  219. package/dist/assets/{solana-wallets-DLq6-GrY.js → solana-wallets-DYmoNImk.js} +2 -2
  220. package/dist/assets/{solana-wallets-vue-Crh7p7UD.js → solana-wallets-vue-B5OBaahJ.js} +1 -1
  221. package/dist/assets/{sora-D5EIXmmO.js → sora-o-5xigw-.js} +1 -1
  222. package/dist/assets/{sparkles-BFNqXTZL.js → sparkles-BIuDjfQg.js} +1 -1
  223. package/dist/assets/square-OXtSEmlD.js +1 -0
  224. package/dist/assets/{store-BaH2jfBX.js → store-Co9jwnq8.js} +1 -1
  225. package/dist/assets/{suno-BuLDW1Vh.js → suno-FRCRn1YL.js} +1 -1
  226. package/dist/assets/{switch-BHE5VSJC.js → switch-CP09CWeK.js} +1 -1
  227. package/dist/assets/{table-C42opMok.js → table-Cg2N5b5E.js} +1 -1
  228. package/dist/assets/{tabs-BFs4t-aK.js → tabs-DsmI05G2.js} +1 -1
  229. package/dist/assets/{tag-CScqQXGX.js → tag-YwN0l1gW.js} +1 -1
  230. package/dist/assets/terminal-D9ZMN0k5.js +1 -0
  231. package/dist/assets/{time-picker-CEYuPPVi.js → time-picker-BqcqHMtN.js} +1 -1
  232. package/dist/assets/{tooltip-xGYGkgTR.js → tooltip-bfg-03mE.js} +1 -1
  233. package/dist/assets/{trash-2-xb-Jm4i0.js → trash-2-CDz5PwCk.js} +1 -1
  234. package/dist/assets/{triangle-alert-COLtfogn.js → triangle-alert-Z8DwGNFK.js} +1 -1
  235. package/dist/assets/{upload-Bu37nR-5.js → upload-CYgk_oSr.js} +1 -1
  236. package/dist/assets/{upload-CI1ZP51F.js → upload-DerPm8IS.js} +1 -1
  237. package/dist/assets/user-C8SZiVQC.js +1 -0
  238. package/dist/assets/{veo-Bl64NYd7.js → veo-DUuufx00.js} +1 -1
  239. package/dist/assets/{video-CYTJ80IP.js → video-Brn0_a8G.js} +1 -1
  240. package/dist/assets/{volume-2-Cd9jV3NX.js → volume-2-ovELC7ze.js} +1 -1
  241. package/dist/assets/{wallet-g88KrNyB.js → wallet-9ymkHmqV.js} +1 -1
  242. package/dist/assets/{wan-a4X7kt1x.js → wan-Bw9kZwn9.js} +1 -1
  243. package/dist/assets/{wand-sparkles-DDyMsIR4.js → wand-sparkles-yU_7R4u-.js} +1 -1
  244. package/dist/assets/{web-BK1giVaU.js → web-BHLJMImD.js} +1 -1
  245. package/dist/assets/{web-Bk36mANR.js → web-BoThAuaz.js} +1 -1
  246. package/dist/assets/{web-BrXDDpbD.js → web-BzrH1Vlj.js} +1 -1
  247. package/dist/assets/{web-BSXd6Enl.js → web-Dc_YylFI.js} +1 -1
  248. package/dist/assets/{web-CN5hmZ5J.js → web-Dgy8v0wC.js} +1 -1
  249. package/dist/assets/{webextrator-J-SZn-nF.js → webextrator-D-jr1MFk.js} +1 -1
  250. package/dist/assets/{zap-UpSN-PKO.js → zap-C0PdDJso.js} +1 -1
  251. package/dist/index.html +4 -4
  252. package/package.json +1 -1
  253. package/dist/assets/Index-DNp3_EIy.js +0 -1
  254. package/dist/assets/Index-Dt0MGZVR.css +0 -1
  255. package/dist/assets/arrow-down-D1ze7Zz7.js +0 -1
  256. package/dist/assets/arrow-left-i-SsgbVR.js +0 -1
  257. package/dist/assets/arrow-right-HPaEW4ct.js +0 -1
  258. package/dist/assets/arrow-up-DPsaJu0u.js +0 -1
  259. package/dist/assets/check-D7wYAXxh.js +0 -1
  260. package/dist/assets/chevron-down-7kJMC2ch.js +0 -1
  261. package/dist/assets/chevron-right-BaNlttpH.js +0 -1
  262. package/dist/assets/circle-check-BlfTJ16z.js +0 -1
  263. package/dist/assets/clock-CS3ZX4nf.js +0 -1
  264. package/dist/assets/code-C18Pb5Rt.js +0 -1
  265. package/dist/assets/esm-BL-lS1AO.js +0 -1
  266. package/dist/assets/gauge-DMrbDCVd.js +0 -1
  267. package/dist/assets/intro-7jC51zyA.js +0 -1
  268. package/dist/assets/intro-B4j8G6Wn.js +0 -1
  269. package/dist/assets/intro-B7ZR6MnR.js +0 -1
  270. package/dist/assets/intro-B_1eX0NN.js +0 -1
  271. package/dist/assets/intro-Bcw1QD06.js +0 -1
  272. package/dist/assets/intro-C9lKNVJp.js +0 -1
  273. package/dist/assets/intro-CIqtCCxn.js +0 -1
  274. package/dist/assets/intro-CSc4mVpE.js +0 -1
  275. package/dist/assets/intro-CuHGodEn.js +0 -1
  276. package/dist/assets/intro-CzRUcQTo.js +0 -1
  277. package/dist/assets/intro-D-bQZq5n.js +0 -1
  278. package/dist/assets/intro-D3xF3uFy.js +0 -1
  279. package/dist/assets/intro-DhjBVTet.js +0 -1
  280. package/dist/assets/intro-SJ6J3iZY.js +0 -1
  281. package/dist/assets/intro-eclZL9RF.js +0 -1
  282. package/dist/assets/intro-mc9fOYHH.js +0 -1
  283. package/dist/assets/intro-mnSZn8oq.js +0 -1
  284. package/dist/assets/intro-tDJyt_-M.js +0 -1
  285. package/dist/assets/loader-circle-DC7tP4px.js +0 -1
  286. package/dist/assets/music-2-C2YDBG9V.js +0 -1
  287. package/dist/assets/play-DFR_GqpJ.js +0 -1
  288. package/dist/assets/plus-lIyMOEZf.js +0 -1
  289. package/dist/assets/rotate-ccw-D9mZ9lfD.js +0 -1
  290. package/dist/assets/rotate-cw-CwiEEFRc.js +0 -1
  291. package/dist/assets/search-iterppMr.js +0 -1
  292. package/dist/assets/square-Bl9we4gC.js +0 -1
  293. package/dist/assets/terminal-BlBAbz4X.js +0 -1
  294. package/dist/assets/user-DV5LrGq4.js +0 -1
@@ -1 +1 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{t as y}from"./upload-CI1ZP51F.js";import{t as b}from"./tooltip-xGYGkgTR.js";import{t as x}from"./alert-BprQRUmf.js";import{h as S,v as C}from"./models-CwEjR6Nf.js";import{t as w}from"./drawer-BMRGHI-3.js";import{t as T}from"./box-K1AOg2Dt.js";import{t as E}from"./clock-CS3ZX4nf.js";import{a as D,c as O,n as k,o as A,r as j,s as M,t as N}from"./pagination-CebMKB63.js";import{t as ee}from"./info-C40CnPeL.js";import{t as P}from"./trash-2-xb-Jm4i0.js";import{t as F}from"./triangle-alert-COLtfogn.js";import{t as I}from"./upload-Bu37nR-5.js";import{t as L}from"./wand-sparkles-DDyMsIR4.js";import{At as te,Et as ne,Ot as re,Tt as ie,jt as R,kt as z}from"./constants-CQR8cCBL.js";import{$t as B,Fi as V,In as H,Jt as U,Mr as W,O as G,Qt as K,Xt as q,Yt as J,Zt as Y,en as ae,in as oe,nn as se,pn as ce,si as X,tn as Z,xi as le}from"./index-DIgS5Gvp.js";import{t as ue}from"./CopyToClipboard-BoetcLMP.js";import{t as de}from"./ReportButton-D7JGzuC6.js";import{t as fe}from"./FilePreview-CL9QnaXZ.js";import{t as Q}from"./ImagePreview-Bc9stSGF.js";import{n as pe}from"./taskDrawerMixin-DyAUhFEq.js";import{t as me}from"./Consumption-64yHTpsG.js";import{t as he}from"./VideoPlayer-DZajGyHg.js";import{t as ge}from"./ApiCodeButton-CiYVI-BW.js";import{t as _e}from"./BotPlaceholder-CWVuEjbL.js";var ve=v({name:`LayoutOmni`,components:{MagicIcon:L,ElDrawer:w,ElButton:V},mixins:[pe]}),ye={class:`main flex flex-row flex-1`},be={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},xe={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Se(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,ye,[e(`div`,be,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,xe,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[_,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Ce=G(ve,[[`render`,Se],[`__scopeId`,`data-v-b76ffabf`]]),we=v({name:`OmniPromptInput`,components:{PromptTextarea:D},computed:{prompt:{get(){return this.$store.state.omni?.config?.prompt},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Te(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`omni.name.prompt`),info:e.$t(`omni.description.prompt`),placeholder:e.$t(`omni.placeholder.prompt`),"min-rows":5},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Ee=G(we,[[`render`,Te]]),De=v({name:`OmniResolutionSelector`,components:{InfoIcon:A},data(){return{options:[{value:R,label:`720p`},{value:te,label:`1080p`}]}},computed:{value:{get(){return this.$store.state.omni?.config?.resolution},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,resolution:e})}}},mounted(){this.value||=ne}}),Oe={class:`resolution`},ke={class:`header`},Ae={class:`title font-bold`},je={class:`items`},Me=[`onClick`];function Ne(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,Oe,[e(`div`,ke,[e(`h2`,Ae,i(t.$t(`omni.name.resolution`)),1),a(p,{content:t.$t(`omni.description.resolution`),class:`info`},null,8,[`content`])]),e(`div`,je,[(g(!0),s(c,null,h(t.options,e=>(g(),s(`div`,{key:e.value,class:n([`item`,{active:t.value===e.value}]),onClick:n=>t.value=e.value},i(e.label),11,Me))),128))])])}var Pe=G(De,[[`render`,Ne],[`__scopeId`,`data-v-1f9abe29`]]),Fe=v({name:`OmniRatioSelector`,components:{InfoIcon:A},computed:{options(){return[{value:re,label:`16:9`,w:32,h:18},{value:z,label:`9:16`,w:18,h:32}]},value:{get(){return this.$store.state.omni?.config?.aspect_ratio},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,aspect_ratio:e})}}},mounted(){this.value||=ie}}),Ie={class:`ratio`},Le={class:`header`},Re={class:`title font-bold`},ze={class:`items`},Be=[`onClick`],Ve={class:`preview`},He={class:`name`};function Ue(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,Ie,[e(`div`,Le,[e(`h2`,Re,i(t.$t(`omni.name.ratio`)),1),a(p,{content:t.$t(`omni.description.ratio`),class:`info`},null,8,[`content`])]),e(`div`,ze,[(g(!0),s(c,null,h(t.options,r=>(g(),s(`div`,{key:r.value,class:n([`item`,{active:t.value===r.value}]),onClick:e=>t.value=r.value},[e(`div`,Ve,[e(`div`,{class:`rect`,style:m({width:r.w+`px`,height:r.h+`px`})},null,4)]),e(`div`,He,i(r.label),1)],10,Be))),128))])])}var We=G(Fe,[[`render`,Ue],[`__scopeId`,`data-v-1c0c1511`]]),Ge=4,Ke=v({name:`OmniReferenceImagesInput`,components:{ElUpload:y,ElButton:V,InfoIcon:A,ImagePreview:Q,UploadIcon:I},mixins:[se,Z,B,U],data(){return{fileList:[],uploadUrl:X()+`/api/v1/files/`,limit:Ge,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.omni?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),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.onSetReferenceImages()},onExceed(){C.warning(this.$t(`omni.message.uploadReferenceExceed`))},onError(){C.error(this.$t(`omni.message.uploadError`))},onSetReferenceImages(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,image_urls:e.length?e:void 0}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetReferenceImages()},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.onSetReferenceImages()}}}),qe={class:`field mb-[10px] flex min-h-8 w-full items-center justify-between gap-3`},Je={class:`flex min-w-0 items-center`},Ye={class:`title m-0 text-[14px] font-bold`},Xe={class:`file-list flex flex-wrap gap-[10px]`};function Ze(t,n,o,u,d,m){let _=l(`info-icon`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`),x=l(`image-preview`);return g(),s(`div`,null,[e(`div`,qe,[e(`div`,Je,[e(`h2`,Ye,i(t.$t(`omni.name.referenceImages`)),1),a(_,{content:t.$t(`omni.description.referenceImages`)},null,8,[`content`])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:t.limit,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-change":t.onChange,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(y,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`limit`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])]),e(`div`,Xe,[(g(!0),s(c,null,h(t.fileList,(e,n)=>(g(),f(x,{key:e.uid||e?.response?.file_url||e.url||n,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:r=>t.onRemovePreview(n,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])])}var Qe=G(Ke,[[`render`,Ze]]),$e=v({name:`OmniVideoInput`,components:{ElUpload:y,ElButton:V,InfoIcon:A,FilePreview:fe,UploadIcon:I},mixins:[Z,B],data(){return{fileList:[],uploadUrl:X()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},videoUrl(){return this.$store.state.omni?.config?.video_urls?.[0]},videoName(){let e=this.videoUrl||``;return e.split(`/`).pop()||e}},methods:{onExceed(){C.warning(this.$t(`omni.message.uploadVideoExceed`))},onError(){C.error(this.$t(`omni.message.uploadVideoError`))},beforeUpload(e){let t=e.type===`video/mp4`||e.type===`video/quicktime`,n=Y(e.size);return t?n?!0:(C.error(this.$t(`omni.message.uploadVideoSizeExceed`,{max:q(J)})),!1):(C.error(this.$t(`omni.message.uploadVideoTypeFailed`)),!1)},setVideoUrls(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,video_urls:e?[e]:void 0})},onRemove(){this.fileList=[],this.setVideoUrls(void 0)},async onSuccess(e,t){let n=e?.file_url||t?.response?.file_url;this.setVideoUrls(n||void 0)}}}),et={class:`field flex min-h-8 w-full items-center justify-between gap-3`},tt={class:`flex min-w-0 items-center`},nt={class:`title m-0 text-[14px] font-bold`},rt={key:0,class:`file-list flex flex-wrap gap-[10px]`};function it(t,n,c,u,d,f){let m=l(`info-icon`),h=l(`upload-icon`),_=l(`el-button`),v=l(`el-upload`),y=l(`file-preview`);return g(),s(`div`,null,[e(`div`,et,[e(`div`,tt,[e(`h2`,nt,i(t.$t(`omni.name.referenceVideo`)),1),a(m,{content:t.$t(`omni.description.referenceVideo`)},null,8,[`content`])]),a(v,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.mp4,.mov`,name:`file`,class:`value shrink-0`,"show-file-list":!1,limit:1,multiple:!1,action:t.uploadUrl,"before-upload":t.beforeUpload,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{default:p(()=>[a(_,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(h,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.uploadVideo`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`before-upload`,`on-exceed`,`on-error`,`on-success`,`headers`])]),t.videoUrl?(g(),s(`div`,rt,[a(y,{url:t.videoUrl,name:t.videoName,percentage:100,onRemove:t.onRemove},null,8,[`url`,`name`,`onRemove`])])):o(``,!0)])}var at=v({name:`OmniConfigPanel`,components:{ElButton:V,MagicIcon:L,PromptInput:Ee,ResolutionSelector:Pe,RatioSelector:We,ReferenceImagesInput:Qe,VideoInput:G($e,[[`render`,it],[`__scopeId`,`data-v-b87d1e4e`]]),Consumption:me},emits:[`generate`],computed:{config(){return this.$store.state.omni?.config},consumption(){return oe(this.config,this.service?.cost)},service(){return this.$store.state.omni?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),ot={class:`flex flex-col h-full`},st={class:`flex-1 overflow-y-auto p-5`},ct={class:`flex flex-col items-center justify-center px-5 pb-5`};function lt(t,n,o,c,u,d){let f=l(`prompt-input`),m=l(`ratio-selector`),h=l(`resolution-selector`),_=l(`reference-images-input`),v=l(`video-input`),y=l(`consumption`),b=l(`magic-icon`),x=l(`el-button`);return g(),s(`div`,ot,[e(`div`,st,[a(f,{class:`mb-4`}),a(m,{class:`mb-4`}),a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`})]),e(`div`,ct,[a(y,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(x,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(b,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.generate`)),1)]),_:1},8,[`onClick`])])])}var ut=G(at,[[`render`,lt]]),dt=v({name:`OmniTaskPreview`,components:{DeleteIcon:P,ApplicationIcon:T,ChannelIcon:O,CopyToClipboard:ue,ExpandIcon:M,InfoIcon:ee,MagicIcon:L,TimeIcon:E,WarningIcon:F,ElAlert:x,VideoPlayer:he,ElTooltip:b,ElButton:V,ImagePreview:Q,ApiCodeButton:ge,ReportButton:de},props:{modelValue:{type:Object,required:!0}},data(){return{nowTs:Date.now(),timer:0}},computed:{video(){return this.modelValue?.response?.data?.[0]},inputImage(){return this.modelValue?.request?.image_urls?.[0]},pendingElapsed(){let e=parseFloat((this.modelValue?.created_at||``).toString());if(e)return Math.max(0,Math.floor(this.nowTs/1e3-e))}},watch:{"modelValue.response":{handler(e){e&&this.stopTimer()}}},mounted(){this.modelValue?.response||(this.timer=window.setInterval(()=>{this.nowTs=Date.now()},1e3))},beforeUnmount(){this.stopTimer()},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await le.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`omni/deleteTask`,{id:e}),C.success(this.$t(`common.message.deleteTaskSuccess`))}catch{C.error(this.$t(`common.message.deleteTaskFailed`))}}},stopTimer(){this.timer&&=(window.clearInterval(this.timer),0)},onDownload(e){window.open(e,`_blank`)}}}),ft={class:`preview`},pt={class:`left`},mt={class:`main`},ht={class:`bot`},gt={class:`datetime`},_t=[`aria-label`],vt={class:`info`},yt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},bt={key:1,class:`prompt mt-2`},xt={key:0},St={key:1},Ct={key:0,class:n({content:!0})},wt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Tt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Et={key:1,class:n({content:!0})},Dt={key:0,class:`mb-4`},Ot={key:1,class:n({operations:!0,"mt-2":!0,"mb-2":!0})},kt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},At={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},jt={key:0},Mt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Nt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Pt={key:2,class:n({content:!0})},Ft={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},It={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Lt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Rt={key:3,class:n({content:!0})},zt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Bt(n,c,u,d,f,m){let h=l(`capability-presentation`),_=l(`delete-icon`),v=l(`el-tooltip`),y=l(`image-preview`),b=l(`time-icon`),x=l(`magic-icon`),S=l(`copy-to-clipboard`),C=l(`el-alert`),w=l(`video-player`),T=l(`el-button`),E=l(`api-code-button`),D=l(`report-button`),O=l(`application-icon`),k=l(`expand-icon`),A=l(`channel-icon`),j=l(`warning-icon`),M=l(`info-icon`);return g(),s(`div`,ft,[e(`div`,pt,[a(h,{capability:`omni`,part:`avatar`,class:`avatar`})]),e(`div`,mt,[e(`div`,ht,[a(h,{capability:`omni`,part:`name`}),e(`span`,gt,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(v,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(_,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,_t)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,vt,[n.inputImage?(g(),s(`div`,yt,[a(y,{url:n.inputImage,name:`image`,closable:!1},null,8,[`url`])])):o(``,!0),n.modelValue?.request?.prompt?(g(),s(`p`,bt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?n.video?.state===`processing`||n.video?.state===`pending`?(g(),s(`span`,St,` - (`+i(n.$t(`omni.status.processing`))+`) `,1)):o(``,!0):(g(),s(`span`,xt,` - (`+i(n.$t(`omni.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?n.modelValue?.response?.success===!0?(g(),s(`div`,Et,[n.video?.video_url?(g(),s(`div`,Dt,[a(w,{src:n.video?.video_url},null,8,[`src`])])):o(``,!0),n.video?.video_url?(g(),s(`div`,Ot,[a(v,{class:`box-item`,effect:`dark`,content:n.$t(`omni.message.downloadVideo`),placement:`top-start`},{default:p(()=>[a(T,{type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=t(e=>n.onDownload(n.video?.video_url),[`stop`])},{default:p(()=>[r(i(n.$t(`omni.button.download`)),1)]),_:1})]),_:1},8,[`content`]),a(E,{path:`/gemini/videos`,body:n.modelValue?.request},null,8,[`body`]),a(D,{service:`omni`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(C,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(g(),s(`p`,kt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(g(),s(`p`,At,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.resolution`))+`: `+i(n.modelValue?.request?.resolution)+` `,1),n.modelValue?.request?.aspect_ratio?(g(),s(`span`,jt,` · `+i(n.modelValue?.request?.aspect_ratio),1)):o(``,!0)])):o(``,!0),e(`p`,Mt,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Nt,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,$,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(S,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.modelValue?.response?.success===!1?(g(),s(`div`,Pt,[a(C,{closable:!1,class:`failure`},{template:p(()=>[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.failure`)),1)]),default:p(()=>[e(`p`,Ft,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.response?.error?.message?(g(),s(`p`,It,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(S,{content:n.modelValue?.response?.error?.message,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,Lt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(S,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):(g(),s(`div`,Rt,[a(C,{closable:!1,class:`info`},{template:p(()=>[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.status`)),1)]),default:p(()=>[e(`p`,zt,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])])]),_:1})])):(g(),s(`div`,Ct,[a(C,{closable:!1,class:`info`},{template:p(()=>[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.status.pending`)),1)]),default:p(()=>[e(`p`,wt,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.pendingElapsed===void 0?o(``,!0):(g(),s(`p`,Tt,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.elapsed`))+`: `+i(n.pendingElapsed)+`s `,1)]))]),_:1})]))])])}var Vt=v({name:`OmniRecentPanel`,components:{TaskPreview:G(dt,[[`render`,Bt],[`__scopeId`,`data-v-08bc502f`]]),BotPlaceholder:_e,NoTasks:j,ScrollList:k},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.omni?.tasks,items:this.$store.state.omni?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Ht={key:0},Ut={key:2,class:`w-full h-full flex items-center justify-center`};function Wt(e,t,n,r,i,u){let d=l(`bot-placeholder`),m=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return g(),s(c,null,[e.tasks?.items===void 0?(g(),s(`div`,Ht,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`tasks w-full h-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(g(!0),s(c,null,h(e.tasks?.items,e=>(g(),f(m,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,Ut,[a(v)])):o(``,!0)],64)}var Gt=v({name:`OmniIndex`,components:{ConfigPanel:ut,Layout:Ce,RecentPanel:G(Vt,[[`render`,Wt]])},mixins:[ae],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.omni?.status?.getApplications===S.Request},tasksLoading(){return this.$store.state.omni?.status?.getTasks===S.Request||this.fetchingTasks},credential(){return this.$store.state.omni?.credential},config(){return this.$store.state.omni?.config},tasks(){return this.$store.state.omni?.tasks}},watch:{initialized:{async handler(e){e&&(await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await N({tasks:this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){await this.$store.dispatch(`omni/getService`)},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch(`omni/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!K(this.uploadTracker,e=>this.$t(e),e=>C.warning(e)))return;let e={...this.config||{}};if(typeof e?.prompt==`string`&&(e.prompt=e.prompt.trim(),e.prompt||delete e.prompt),Array.isArray(e?.image_urls)&&(e.image_urls=e.image_urls.filter(e=>typeof e==`string`&&e.trim()),e.image_urls.length||delete e.image_urls),Array.isArray(e?.video_urls)&&(e.video_urls=e.video_urls.filter(e=>typeof e==`string`&&e.trim()),e.video_urls.length||delete e.video_urls),!e?.prompt){C.warning(this.$t(`omni.message.promptRequired`));return}if(e?.video_urls&&!e?.image_urls){C.warning(this.$t(`omni.message.videoRequiresImage`));return}let t={...e,async:!0};if(!ce())return;let n=this.credential?.token;if(!n){console.error(`no token specified`);return}C.info(this.$t(`omni.message.startingTask`)),W(`omni`,H.generate(t,{token:n})).then(()=>{C.success(this.$t(`omni.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;t?.error?.code===`used_up`?C.error(this.$t(`omni.message.usedUp`)):C.error(this.$t(`omni.message.startTaskFailed`)+(t?.error?.message||``))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Kt(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return g(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var qt=G(Gt,[[`render`,Kt]]);export{qt as default};
1
+ import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{t as y}from"./upload-DerPm8IS.js";import{t as b}from"./tooltip-bfg-03mE.js";import{t as x}from"./alert-BprQRUmf.js";import{h as S,v as C}from"./models-DcpkDkjF.js";import{t as w}from"./drawer-CL63mgQu.js";import{t as T}from"./box-BgafcOxN.js";import{t as E}from"./clock-DcgPnVJa.js";import{a as D,c as O,n as k,o as A,r as j,s as M,t as N}from"./pagination-BbFTEjBg.js";import{t as ee}from"./info-B6zz-sKo.js";import{t as P}from"./trash-2-CDz5PwCk.js";import{t as F}from"./triangle-alert-Z8DwGNFK.js";import{t as I}from"./upload-CYgk_oSr.js";import{t as L}from"./wand-sparkles-yU_7R4u-.js";import{At as te,Et as ne,Ot as re,Tt as ie,jt as R,kt as z}from"./constants-C44cV5UH.js";import{$t as B,Fi as V,In as H,Jt as U,Mr as W,O as G,Qt as K,Xt as q,Yt as J,Zt as Y,en as ae,in as oe,nn as se,pn as ce,si as X,tn as Z,xi as le}from"./index-CREYJmGZ.js";import{t as ue}from"./CopyToClipboard-CLVp5I29.js";import{t as de}from"./ReportButton-CYa13w8h.js";import{t as fe}from"./FilePreview-BlCzWGSp.js";import{t as Q}from"./ImagePreview-DIR230rQ.js";import{n as pe}from"./taskDrawerMixin-DyAUhFEq.js";import{t as me}from"./Consumption-C1nuDweL.js";import{t as he}from"./VideoPlayer-C44SsSWU.js";import{t as ge}from"./ApiCodeButton-DnW2mEEl.js";import{t as _e}from"./BotPlaceholder-hcIRfy3i.js";var ve=v({name:`LayoutOmni`,components:{MagicIcon:L,ElDrawer:w,ElButton:V},mixins:[pe]}),ye={class:`main flex flex-row flex-1`},be={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},xe={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Se(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,ye,[e(`div`,be,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,xe,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[_,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Ce=G(ve,[[`render`,Se],[`__scopeId`,`data-v-b76ffabf`]]),we=v({name:`OmniPromptInput`,components:{PromptTextarea:D},computed:{prompt:{get(){return this.$store.state.omni?.config?.prompt},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Te(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`omni.name.prompt`),info:e.$t(`omni.description.prompt`),placeholder:e.$t(`omni.placeholder.prompt`),"min-rows":5},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Ee=G(we,[[`render`,Te]]),De=v({name:`OmniResolutionSelector`,components:{InfoIcon:A},data(){return{options:[{value:R,label:`720p`},{value:te,label:`1080p`}]}},computed:{value:{get(){return this.$store.state.omni?.config?.resolution},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,resolution:e})}}},mounted(){this.value||=ne}}),Oe={class:`resolution`},ke={class:`header`},Ae={class:`title font-bold`},je={class:`items`},Me=[`onClick`];function Ne(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,Oe,[e(`div`,ke,[e(`h2`,Ae,i(t.$t(`omni.name.resolution`)),1),a(p,{content:t.$t(`omni.description.resolution`),class:`info`},null,8,[`content`])]),e(`div`,je,[(g(!0),s(c,null,h(t.options,e=>(g(),s(`div`,{key:e.value,class:n([`item`,{active:t.value===e.value}]),onClick:n=>t.value=e.value},i(e.label),11,Me))),128))])])}var Pe=G(De,[[`render`,Ne],[`__scopeId`,`data-v-1f9abe29`]]),Fe=v({name:`OmniRatioSelector`,components:{InfoIcon:A},computed:{options(){return[{value:re,label:`16:9`,w:32,h:18},{value:z,label:`9:16`,w:18,h:32}]},value:{get(){return this.$store.state.omni?.config?.aspect_ratio},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,aspect_ratio:e})}}},mounted(){this.value||=ie}}),Ie={class:`ratio`},Le={class:`header`},Re={class:`title font-bold`},ze={class:`items`},Be=[`onClick`],Ve={class:`preview`},He={class:`name`};function Ue(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,Ie,[e(`div`,Le,[e(`h2`,Re,i(t.$t(`omni.name.ratio`)),1),a(p,{content:t.$t(`omni.description.ratio`),class:`info`},null,8,[`content`])]),e(`div`,ze,[(g(!0),s(c,null,h(t.options,r=>(g(),s(`div`,{key:r.value,class:n([`item`,{active:t.value===r.value}]),onClick:e=>t.value=r.value},[e(`div`,Ve,[e(`div`,{class:`rect`,style:m({width:r.w+`px`,height:r.h+`px`})},null,4)]),e(`div`,He,i(r.label),1)],10,Be))),128))])])}var We=G(Fe,[[`render`,Ue],[`__scopeId`,`data-v-1c0c1511`]]),Ge=4,Ke=v({name:`OmniReferenceImagesInput`,components:{ElUpload:y,ElButton:V,InfoIcon:A,ImagePreview:Q,UploadIcon:I},mixins:[se,Z,B,U],data(){return{fileList:[],uploadUrl:X()+`/api/v1/files/`,limit:Ge,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.omni?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),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.onSetReferenceImages()},onExceed(){C.warning(this.$t(`omni.message.uploadReferenceExceed`))},onError(){C.error(this.$t(`omni.message.uploadError`))},onSetReferenceImages(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,image_urls:e.length?e:void 0}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetReferenceImages()},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.onSetReferenceImages()}}}),qe={class:`field mb-[10px] flex min-h-8 w-full items-center justify-between gap-3`},Je={class:`flex min-w-0 items-center`},Ye={class:`title m-0 text-[14px] font-bold`},Xe={class:`file-list flex flex-wrap gap-[10px]`};function Ze(t,n,o,u,d,m){let _=l(`info-icon`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`),x=l(`image-preview`);return g(),s(`div`,null,[e(`div`,qe,[e(`div`,Je,[e(`h2`,Ye,i(t.$t(`omni.name.referenceImages`)),1),a(_,{content:t.$t(`omni.description.referenceImages`)},null,8,[`content`])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:t.limit,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-change":t.onChange,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(y,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`limit`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])]),e(`div`,Xe,[(g(!0),s(c,null,h(t.fileList,(e,n)=>(g(),f(x,{key:e.uid||e?.response?.file_url||e.url||n,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:r=>t.onRemovePreview(n,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])])}var Qe=G(Ke,[[`render`,Ze]]),$e=v({name:`OmniVideoInput`,components:{ElUpload:y,ElButton:V,InfoIcon:A,FilePreview:fe,UploadIcon:I},mixins:[Z,B],data(){return{fileList:[],uploadUrl:X()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},videoUrl(){return this.$store.state.omni?.config?.video_urls?.[0]},videoName(){let e=this.videoUrl||``;return e.split(`/`).pop()||e}},methods:{onExceed(){C.warning(this.$t(`omni.message.uploadVideoExceed`))},onError(){C.error(this.$t(`omni.message.uploadVideoError`))},beforeUpload(e){let t=e.type===`video/mp4`||e.type===`video/quicktime`,n=Y(e.size);return t?n?!0:(C.error(this.$t(`omni.message.uploadVideoSizeExceed`,{max:q(J)})),!1):(C.error(this.$t(`omni.message.uploadVideoTypeFailed`)),!1)},setVideoUrls(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,video_urls:e?[e]:void 0})},onRemove(){this.fileList=[],this.setVideoUrls(void 0)},async onSuccess(e,t){let n=e?.file_url||t?.response?.file_url;this.setVideoUrls(n||void 0)}}}),et={class:`field flex min-h-8 w-full items-center justify-between gap-3`},tt={class:`flex min-w-0 items-center`},nt={class:`title m-0 text-[14px] font-bold`},rt={key:0,class:`file-list flex flex-wrap gap-[10px]`};function it(t,n,c,u,d,f){let m=l(`info-icon`),h=l(`upload-icon`),_=l(`el-button`),v=l(`el-upload`),y=l(`file-preview`);return g(),s(`div`,null,[e(`div`,et,[e(`div`,tt,[e(`h2`,nt,i(t.$t(`omni.name.referenceVideo`)),1),a(m,{content:t.$t(`omni.description.referenceVideo`)},null,8,[`content`])]),a(v,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.mp4,.mov`,name:`file`,class:`value shrink-0`,"show-file-list":!1,limit:1,multiple:!1,action:t.uploadUrl,"before-upload":t.beforeUpload,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{default:p(()=>[a(_,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(h,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.uploadVideo`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`before-upload`,`on-exceed`,`on-error`,`on-success`,`headers`])]),t.videoUrl?(g(),s(`div`,rt,[a(y,{url:t.videoUrl,name:t.videoName,percentage:100,onRemove:t.onRemove},null,8,[`url`,`name`,`onRemove`])])):o(``,!0)])}var at=v({name:`OmniConfigPanel`,components:{ElButton:V,MagicIcon:L,PromptInput:Ee,ResolutionSelector:Pe,RatioSelector:We,ReferenceImagesInput:Qe,VideoInput:G($e,[[`render`,it],[`__scopeId`,`data-v-b87d1e4e`]]),Consumption:me},emits:[`generate`],computed:{config(){return this.$store.state.omni?.config},consumption(){return oe(this.config,this.service?.cost)},service(){return this.$store.state.omni?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),ot={class:`flex flex-col h-full`},st={class:`flex-1 overflow-y-auto p-5`},ct={class:`flex flex-col items-center justify-center px-5 pb-5`};function lt(t,n,o,c,u,d){let f=l(`prompt-input`),m=l(`ratio-selector`),h=l(`resolution-selector`),_=l(`reference-images-input`),v=l(`video-input`),y=l(`consumption`),b=l(`magic-icon`),x=l(`el-button`);return g(),s(`div`,ot,[e(`div`,st,[a(f,{class:`mb-4`}),a(m,{class:`mb-4`}),a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`})]),e(`div`,ct,[a(y,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(x,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(b,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.generate`)),1)]),_:1},8,[`onClick`])])])}var ut=G(at,[[`render`,lt]]),dt=v({name:`OmniTaskPreview`,components:{DeleteIcon:P,ApplicationIcon:T,ChannelIcon:O,CopyToClipboard:ue,ExpandIcon:M,InfoIcon:ee,MagicIcon:L,TimeIcon:E,WarningIcon:F,ElAlert:x,VideoPlayer:he,ElTooltip:b,ElButton:V,ImagePreview:Q,ApiCodeButton:ge,ReportButton:de},props:{modelValue:{type:Object,required:!0}},data(){return{nowTs:Date.now(),timer:0}},computed:{video(){return this.modelValue?.response?.data?.[0]},inputImage(){return this.modelValue?.request?.image_urls?.[0]},pendingElapsed(){let e=parseFloat((this.modelValue?.created_at||``).toString());if(e)return Math.max(0,Math.floor(this.nowTs/1e3-e))}},watch:{"modelValue.response":{handler(e){e&&this.stopTimer()}}},mounted(){this.modelValue?.response||(this.timer=window.setInterval(()=>{this.nowTs=Date.now()},1e3))},beforeUnmount(){this.stopTimer()},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await le.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`omni/deleteTask`,{id:e}),C.success(this.$t(`common.message.deleteTaskSuccess`))}catch{C.error(this.$t(`common.message.deleteTaskFailed`))}}},stopTimer(){this.timer&&=(window.clearInterval(this.timer),0)},onDownload(e){window.open(e,`_blank`)}}}),ft={class:`preview`},pt={class:`left`},mt={class:`main`},ht={class:`bot`},gt={class:`datetime`},_t=[`aria-label`],vt={class:`info`},yt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},bt={key:1,class:`prompt mt-2`},xt={key:0},St={key:1},Ct={key:0,class:n({content:!0})},wt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Tt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Et={key:1,class:n({content:!0})},Dt={key:0,class:`mb-4`},Ot={key:1,class:n({operations:!0,"mt-2":!0,"mb-2":!0})},kt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},At={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},jt={key:0},Mt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Nt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Pt={key:2,class:n({content:!0})},Ft={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},It={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Lt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Rt={key:3,class:n({content:!0})},zt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Bt(n,c,u,d,f,m){let h=l(`capability-presentation`),_=l(`delete-icon`),v=l(`el-tooltip`),y=l(`image-preview`),b=l(`time-icon`),x=l(`magic-icon`),S=l(`copy-to-clipboard`),C=l(`el-alert`),w=l(`video-player`),T=l(`el-button`),E=l(`api-code-button`),D=l(`report-button`),O=l(`application-icon`),k=l(`expand-icon`),A=l(`channel-icon`),j=l(`warning-icon`),M=l(`info-icon`);return g(),s(`div`,ft,[e(`div`,pt,[a(h,{capability:`omni`,part:`avatar`,class:`avatar`})]),e(`div`,mt,[e(`div`,ht,[a(h,{capability:`omni`,part:`name`}),e(`span`,gt,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(v,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(_,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,_t)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,vt,[n.inputImage?(g(),s(`div`,yt,[a(y,{url:n.inputImage,name:`image`,closable:!1},null,8,[`url`])])):o(``,!0),n.modelValue?.request?.prompt?(g(),s(`p`,bt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?n.video?.state===`processing`||n.video?.state===`pending`?(g(),s(`span`,St,` - (`+i(n.$t(`omni.status.processing`))+`) `,1)):o(``,!0):(g(),s(`span`,xt,` - (`+i(n.$t(`omni.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?n.modelValue?.response?.success===!0?(g(),s(`div`,Et,[n.video?.video_url?(g(),s(`div`,Dt,[a(w,{src:n.video?.video_url},null,8,[`src`])])):o(``,!0),n.video?.video_url?(g(),s(`div`,Ot,[a(v,{class:`box-item`,effect:`dark`,content:n.$t(`omni.message.downloadVideo`),placement:`top-start`},{default:p(()=>[a(T,{type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=t(e=>n.onDownload(n.video?.video_url),[`stop`])},{default:p(()=>[r(i(n.$t(`omni.button.download`)),1)]),_:1})]),_:1},8,[`content`]),a(E,{path:`/gemini/videos`,body:n.modelValue?.request},null,8,[`body`]),a(D,{service:`omni`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(C,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(g(),s(`p`,kt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(g(),s(`p`,At,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.resolution`))+`: `+i(n.modelValue?.request?.resolution)+` `,1),n.modelValue?.request?.aspect_ratio?(g(),s(`span`,jt,` · `+i(n.modelValue?.request?.aspect_ratio),1)):o(``,!0)])):o(``,!0),e(`p`,Mt,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Nt,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,$,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(S,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.modelValue?.response?.success===!1?(g(),s(`div`,Pt,[a(C,{closable:!1,class:`failure`},{template:p(()=>[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.failure`)),1)]),default:p(()=>[e(`p`,Ft,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.response?.error?.message?(g(),s(`p`,It,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(S,{content:n.modelValue?.response?.error?.message,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,Lt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(S,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):(g(),s(`div`,Rt,[a(C,{closable:!1,class:`info`},{template:p(()=>[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.status`)),1)]),default:p(()=>[e(`p`,zt,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])])]),_:1})])):(g(),s(`div`,Ct,[a(C,{closable:!1,class:`info`},{template:p(()=>[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.status.pending`)),1)]),default:p(()=>[e(`p`,wt,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.pendingElapsed===void 0?o(``,!0):(g(),s(`p`,Tt,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.elapsed`))+`: `+i(n.pendingElapsed)+`s `,1)]))]),_:1})]))])])}var Vt=v({name:`OmniRecentPanel`,components:{TaskPreview:G(dt,[[`render`,Bt],[`__scopeId`,`data-v-08bc502f`]]),BotPlaceholder:_e,NoTasks:j,ScrollList:k},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.omni?.tasks,items:this.$store.state.omni?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Ht={key:0},Ut={key:2,class:`w-full h-full flex items-center justify-center`};function Wt(e,t,n,r,i,u){let d=l(`bot-placeholder`),m=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return g(),s(c,null,[e.tasks?.items===void 0?(g(),s(`div`,Ht,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`tasks w-full h-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(g(!0),s(c,null,h(e.tasks?.items,e=>(g(),f(m,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,Ut,[a(v)])):o(``,!0)],64)}var Gt=v({name:`OmniIndex`,components:{ConfigPanel:ut,Layout:Ce,RecentPanel:G(Vt,[[`render`,Wt]])},mixins:[ae],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.omni?.status?.getApplications===S.Request},tasksLoading(){return this.$store.state.omni?.status?.getTasks===S.Request||this.fetchingTasks},credential(){return this.$store.state.omni?.credential},config(){return this.$store.state.omni?.config},tasks(){return this.$store.state.omni?.tasks}},watch:{initialized:{async handler(e){e&&(await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await N({tasks:this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){await this.$store.dispatch(`omni/getService`)},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch(`omni/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!K(this.uploadTracker,e=>this.$t(e),e=>C.warning(e)))return;let e={...this.config||{}};if(typeof e?.prompt==`string`&&(e.prompt=e.prompt.trim(),e.prompt||delete e.prompt),Array.isArray(e?.image_urls)&&(e.image_urls=e.image_urls.filter(e=>typeof e==`string`&&e.trim()),e.image_urls.length||delete e.image_urls),Array.isArray(e?.video_urls)&&(e.video_urls=e.video_urls.filter(e=>typeof e==`string`&&e.trim()),e.video_urls.length||delete e.video_urls),!e?.prompt){C.warning(this.$t(`omni.message.promptRequired`));return}if(e?.video_urls&&!e?.image_urls){C.warning(this.$t(`omni.message.videoRequiresImage`));return}let t={...e,async:!0};if(!ce())return;let n=this.credential?.token;if(!n){console.error(`no token specified`);return}C.info(this.$t(`omni.message.startingTask`)),W(`omni`,H.generate(t,{token:n})).then(()=>{C.success(this.$t(`omni.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;t?.error?.code===`used_up`?C.error(this.$t(`omni.message.usedUp`)):C.error(this.$t(`omni.message.startTaskFailed`)+(t?.error?.message||``))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Kt(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return g(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var qt=G(Gt,[[`render`,Kt]]);export{qt as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{n as v,r as y,t as b}from"./select-CUw_YhcY.js";import{t as x}from"./upload-CI1ZP51F.js";import{t as S}from"./tooltip-xGYGkgTR.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-CwEjR6Nf.js";import{t as E}from"./drawer-BMRGHI-3.js";import{t as D}from"./input-number-ByXVBT4t.js";import{t as O}from"./box-K1AOg2Dt.js";import{t as k}from"./clock-CS3ZX4nf.js";import{a as A,c as j,n as M,o as N,r as P,t as F}from"./pagination-CebMKB63.js";import{t as I}from"./image-l7GEfh5m.js";import{t as ee}from"./info-C40CnPeL.js";import{t as te}from"./trash-2-xb-Jm4i0.js";import{t as ne}from"./triangle-alert-COLtfogn.js";import{t as re}from"./upload-Bu37nR-5.js";import{t as L}from"./wand-sparkles-DDyMsIR4.js";import{t as ie}from"./zap-UpSN-PKO.js";import{An as ae,Cn as R,Dn as z,En as B,Mn as oe,Nn as V,On as H,Tn as U,bn as se,kn as ce,wn as W,xn as G}from"./constants-CQR8cCBL.js";import{$t as le,Fi as K,Jt as ue,Mr as de,O as q,Qt as fe,en as pe,in as me,nn as he,pn as ge,si as _e,tn as ve,xi as J,zn as ye}from"./index-DIgS5Gvp.js";import{t as be}from"./CopyToClipboard-BoetcLMP.js";import{t as xe}from"./ReportButton-D7JGzuC6.js";import{t as Y}from"./ImagePreview-Bc9stSGF.js";import{n as Se}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Ce}from"./Consumption-64yHTpsG.js";import{t as we}from"./ApiCodeButton-CiYVI-BW.js";import{t as Te}from"./BotPlaceholder-CWVuEjbL.js";import{t as Ee}from"./ImageWrapper-BU9rTzRE.js";var De=_({name:`LayoutSeedream`,components:{MagicIcon:L,ElDrawer:E,ElButton:K},mixins:[Se]}),Oe={class:`main flex flex-row flex-1`},ke={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Ae={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function je(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,Oe,[e(`div`,ke,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ae,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[g,!t.tasksEmpty]]),a(_,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Me=q(De,[[`render`,je],[`__scopeId`,`data-v-c10167d0`]]),Ne=_({name:`SeedreamPromptInput`,components:{PromptTextarea:A},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||=``}});function Pe(e,t,n,r,i,a){let o=l(`prompt-textarea`);return h(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`seedream.name.prompt`),info:e.$t(`seedream.description.prompt`),placeholder:e.$t(`seedream.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Fe=q(Ne,[[`render`,Pe]]),Ie={image:!0,imageRequired:!1,sizeTiers:[`1K`,`2K`,`3K`,`4K`],sizeAdaptive:!0,sizePixel:!0,sizePixelDefault:void 0,groupGeneration:!1,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};function X(e){switch(e){case z:return{image:!0,imageRequired:!1,sizeTiers:[`1K`,`2K`],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!1,seed:!1,guidanceScale:!1,outputFormat:!0,tools:!1};case B:return{image:!0,imageRequired:!1,sizeTiers:[`2K`,`3K`,`4K`],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!0,tools:!0};case U:return{image:!0,imageRequired:!1,sizeTiers:[`2K`,`4K`],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case W:return{image:!0,imageRequired:!1,sizeTiers:[`1K`,`2K`,`4K`],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case R:return{image:!1,imageRequired:!1,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:`1024x1024`,groupGeneration:!1,seed:!0,guidanceScale:!0,guidanceScaleDefault:G[R],outputFormat:!1,tools:!1};case H:return{image:!0,imageRequired:!0,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:`1024x1024`,groupGeneration:!1,seed:!1,guidanceScale:!0,guidanceScaleDefault:G[H],outputFormat:!1,tools:!1};default:return Ie}}function Z(e,t){let n=X(e);return n.imageRequired||n.image&&t?.length?`edit`:`generate`}var Le=[`1K`,`2K`,`3K`,`4K`];function Re(e,t){if(!e)return[];let n=t.model??e.model;if(!n)return[];let r=X(n),i=[];Array.isArray(e.image)&&e.image.length>0&&!r.image&&i.push({field:`image`,i18nLabel:`seedream.name.imageUrls`});let a=typeof e.size==`string`?e.size:void 0;if(a){let e=a.toUpperCase();(Le.includes(e)&&!r.sizeTiers.includes(e)||a===`adaptive`&&!r.sizeAdaptive)&&i.push({field:`size`,i18nLabel:`seedream.name.size`})}return e.sequential_image_generation===`auto`&&!r.groupGeneration&&i.push({field:`sequential_image_generation`,i18nLabel:`seedream.name.maxImages`}),e.seed!==void 0&&e.seed!==null&&!r.seed&&i.push({field:`seed`,i18nLabel:`seedream.name.seed`}),e.guidance_scale!==void 0&&e.guidance_scale!==null&&!r.guidanceScale&&i.push({field:`guidance_scale`,i18nLabel:`seedream.name.guidanceScale`}),e.output_format&&!r.outputFormat&&i.push({field:`output_format`,i18nLabel:`seedream.name.outputFormat`}),Array.isArray(e.tools)&&e.tools.length>0&&!r.tools&&i.push({field:`tools`,i18nLabel:`seedream.name.tools`}),i}function ze(e,t,n){let r={...e},i=X(n.model??e.model);for(let e of t)switch(e.field){case`image`:delete r.image;break;case`size`:i.sizePixelDefault?r.size=i.sizePixelDefault:delete r.size;break;case`sequential_image_generation`:r.sequential_image_generation=`disabled`,delete r.sequential_image_generation_options;break;case`seed`:delete r.seed;break;case`guidance_scale`:delete r.guidance_scale;break;case`output_format`:delete r.output_format;break;case`tools`:delete r.tools;break}return r}var Be=_({name:`SeedreamImageInput`,components:{UploadIcon:re,ElUpload:x,ElButton:K,InfoIcon:N,ImagePreview:Y},mixins:[he,ve,le,ue],data(){return{fileList:[],uploadUrl:_e()+`/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 X(this.model).image}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),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(){T.warning(this.$t(`seedream.message.uploadImageExceed`))},onError(){T.error(this.$t(`seedream.message.uploadImageError`))},onSetImages(){let 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()}}}),Ve={key:0},He={class:`field`},Ue={class:`label`},We={class:`box`},Ge={class:`title font-bold`},Ke={class:`value`},qe={class:`file-list mt-2 flex flex-wrap gap-[10px]`};function Je(t,n,u,d,g,_){let v=l(`info-icon`),y=l(`upload-icon`),b=l(`el-button`),x=l(`el-upload`),S=l(`image-preview`);return t.supported?(h(),s(`div`,Ve,[e(`div`,He,[e(`div`,Ue,[e(`div`,We,[e(`h2`,Ge,i(t.$t(`seedream.name.imageUrls`)),1),a(v,{content:t.$t(`seedream.description.imageUrls`),class:`info`},null,8,[`content`])])]),e(`div`,Ke,[a(x,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,limit:14,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-change":t.onChange,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(b,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(y,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedream.button.uploadImageUrls`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])])]),e(`div`,qe,[(h(!0),s(c,null,m(t.fileList,(e,n)=>(h(),f(S,{key:e.uid||e?.response?.file_url||e.url||n,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:r=>t.onRemovePreview(n,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])])):o(``,!0)}var Ye=q(Be,[[`render`,Je],[`__scopeId`,`data-v-21f4dd97`]]),Xe=_({name:`SeedreamModelSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:N},data(){return{revertKey:0,options:[{value:z,label:this.$t(`seedream.model.seedream50pro`)},{value:B,label:this.$t(`seedream.model.seedream50`)},{value:U,label:this.$t(`seedream.model.seedream45`)},{value:W,label:this.$t(`seedream.model.seedream40`)},{value:R,label:this.$t(`seedream.model.seedream30t2i`)},{value:H,label:this.$t(`seedream.model.seededit30i2i`)}]}},computed:{value(){return this.$store.state.seedream?.config?.model}},mounted(){this.value||this.applyModel(se)},methods:{async onChange(e){let t=this.$store.state.seedream?.config||{},n=Re(t,{model:e});if(n.length===0){this.applyModel(e);return}let r=n.map(e=>this.$t(e.i18nLabel)).join(`、`);try{await J.confirm(this.$t(`seedream.message.featureNotSupportedBody`,{fields:r}),this.$t(`seedream.message.featureNotSupportedTitle`),{confirmButtonText:this.$t(`seedream.button.confirmContinue`),cancelButtonText:this.$t(`seedream.button.cancelSwitch`),type:`warning`});let i=ze({...t,model:e},n,{model:e});this.$store.commit(`seedream/setConfig`,i),T.success(this.$t(`seedream.message.featureRemovedNotice`,{fields:r}))}catch{this.revertKey+=1}},applyModel(e){this.$store.commit(`seedream/setConfig`,{...this.$store.state.seedream?.config,model:e})}}}),Ze={class:`field`},Qe={class:`label`},$e={class:`box`},et={class:`title font-bold`};function tt(t,n,r,o,u,d){let g=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return h(),s(`div`,Ze,[e(`div`,Qe,[e(`div`,$e,[e(`h2`,et,i(t.$t(`seedream.name.model`)),1),a(g,{content:t.$t(`seedream.description.model`),class:`info`},null,8,[`content`])])]),(h(),f(v,{key:t.revertKey,"model-value":t.value,class:`value`,placeholder:t.$t(`seedream.placeholder.select`),onChange:t.onChange},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`onChange`]))])}var nt=q(Xe,[[`render`,tt],[`__scopeId`,`data-v-6413c179`]]),rt=_({name:`SeedreamSizeSelector`,components:{ElSelect:y,ElOption:b,ElOptionGroup:v,InfoIcon:N},data(){return{SEEDREAM_SIZE_ADAPTIVE:oe,pixelOptions:ae}},computed:{model(){return this.$store.state.seedream?.config?.model},capabilities(){return X(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;let e=this.capabilities;e.sizeTiers.length?this.value=e.sizeTiers.includes(`2K`)?`2K`:e.sizeTiers[0]:e.sizePixelDefault&&(this.value=e.sizePixelDefault)}}}}),it={class:`field`},at={class:`label`},ot={class:`box`},st={class:`title font-bold`};function ct(t,n,r,u,d,g){let _=l(`info-icon`),v=l(`el-option`),y=l(`el-option-group`),b=l(`el-select`);return h(),s(`div`,it,[e(`div`,at,[e(`div`,ot,[e(`h2`,st,i(t.$t(`seedream.name.size`)),1),a(_,{content:t.$t(`seedream.description.size`),class:`info`},null,8,[`content`])])]),a(b,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`seedream.placeholder.size`),filterable:``,"allow-create":``,"default-first-option":``},{default:p(()=>[t.capabilities.sizeTiers.length?(h(),f(y,{key:0,label:t.$t(`seedream.size.group.tier`)},{default:p(()=>[(h(!0),s(c,null,m(t.capabilities.sizeTiers,e=>(h(),f(v,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`label`])):o(``,!0),t.capabilities.sizeAdaptive?(h(),f(y,{key:1,label:t.$t(`seedream.size.group.adaptive`)},{default:p(()=>[(h(),f(v,{key:t.SEEDREAM_SIZE_ADAPTIVE,label:t.$t(`seedream.size.adaptive`),value:t.SEEDREAM_SIZE_ADAPTIVE},null,8,[`label`,`value`]))]),_:1},8,[`label`])):o(``,!0),a(y,{label:t.$t(`seedream.size.group.pixel`)},{default:p(()=>[(h(!0),s(c,null,m(t.pixelOptions,e=>(h(),f(v,{key:e.value,label:`${e.value} (${e.ratio})`,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])])}var lt=q(rt,[[`render`,ct],[`__scopeId`,`data-v-dd7bd021`]]),ut=_({name:`SeedreamMaxImagesSelector`,components:{ElInputNumber:D,InfoIcon:N},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return X(this.config?.model).groupGeneration},referenceImageCount(){let e=this.config?.image;return Array.isArray(e)?e.length:0},effectiveMax(){let e=15-this.referenceImageCount;return Math.max(1,Math.min(15,e))},value:{get(){let e=this.config?.sequential_image_generation_options?.max_images;return typeof e==`number`&&e>=1?e:1},set(e){let t={...this.config||{}},n=Math.max(1,Math.min(this.effectiveMax,Math.floor(e||1)));n>1?(t.sequential_image_generation=`auto`,t.sequential_image_generation_options={...t.sequential_image_generation_options||{},max_images:n}):(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)}}}),dt={key:0,class:`field`},ft={class:`label`},pt={class:`box`},mt={class:`title font-bold`},ht={class:`value`};function gt(t,n,r,c,u,d){let f=l(`info-icon`),p=l(`el-input-number`);return t.supported?(h(),s(`div`,dt,[e(`div`,ft,[e(`div`,pt,[e(`h2`,mt,i(t.$t(`seedream.name.maxImages`)),1),a(f,{content:t.$t(`seedream.description.maxImages`),class:`info`},null,8,[`content`])])]),e(`div`,ht,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:1,max:t.effectiveMax,step:1,size:`default`,"controls-position":`right`,class:`counter`},null,8,[`modelValue`,`max`])])])):o(``,!0)}var _t=q(ut,[[`render`,gt],[`__scopeId`,`data-v-f079fd20`]]),vt=_({name:`SeedreamOutputFormatSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:N},data(){return{options:[...ce]}},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return X(this.config?.model).outputFormat},value:{get(){return this.config?.output_format},set(e){let t={...this.config||{}};t.output_format=e,this.$store.commit(`seedream/setConfig`,t)}}}}),yt={key:0,class:`field`},bt={class:`label`},xt={class:`box`},St={class:`title font-bold`};function Ct(t,n,r,u,d,g){let _=l(`info-icon`),v=l(`el-option`),y=l(`el-select`);return t.supported?(h(),s(`div`,yt,[e(`div`,bt,[e(`div`,xt,[e(`h2`,St,i(t.$t(`seedream.name.outputFormat`)),1),a(_,{content:t.$t(`seedream.description.outputFormat`),class:`info`},null,8,[`content`])])]),a(y,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`seedream.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(v,{key:e,label:e.toUpperCase(),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])):o(``,!0)}var wt=q(vt,[[`render`,Ct],[`__scopeId`,`data-v-69ea4c07`]]),Tt=_({name:`SeedreamSeedInput`,components:{ElInputNumber:D,InfoIcon:N},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return X(this.config?.model).seed},value:{get(){let e=this.config?.seed;return typeof e==`number`?e:-1},set(e){let t={...this.config||{}};t.seed=typeof e==`number`&&Number.isInteger(e)?e:-1,this.$store.commit(`seedream/setConfig`,t)}}}}),Et={key:0,class:`field`},Dt={class:`label`},Ot={class:`box`},kt={class:`title font-bold`},At={class:`value`};function jt(t,n,r,c,u,d){let f=l(`info-icon`),p=l(`el-input-number`);return t.supported?(h(),s(`div`,Et,[e(`div`,Dt,[e(`div`,Ot,[e(`h2`,kt,i(t.$t(`seedream.name.seed`)),1),a(f,{content:t.$t(`seedream.description.seed`),class:`info`},null,8,[`content`])])]),e(`div`,At,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:-1,max:2147483647,step:1,size:`default`,"controls-position":`right`,class:`counter`},null,8,[`modelValue`])])])):o(``,!0)}var Mt=q(Tt,[[`render`,jt],[`__scopeId`,`data-v-10cdc1e0`]]),Nt=_({name:`SeedreamGuidanceScaleInput`,components:{ElInputNumber:D,InfoIcon:N},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return X(this.config?.model).guidanceScale},defaultValue(){return X(this.config?.model).guidanceScaleDefault??2.5},value:{get(){let e=this.config?.guidance_scale;return typeof e==`number`?e:this.defaultValue},set(e){let t={...this.config||{}};t.guidance_scale=typeof e==`number`&&e>=1&&e<=10?e:this.defaultValue,this.$store.commit(`seedream/setConfig`,t)}}}}),Pt={key:0,class:`field`},Ft={class:`label`},It={class:`box`},Lt={class:`title font-bold`},Rt={class:`value`};function zt(t,n,r,c,u,d){let f=l(`info-icon`),p=l(`el-input-number`);return t.supported?(h(),s(`div`,Pt,[e(`div`,Ft,[e(`div`,It,[e(`h2`,Lt,i(t.$t(`seedream.name.guidanceScale`)),1),a(f,{content:t.$t(`seedream.description.guidanceScale`),class:`info`},null,8,[`content`])])]),e(`div`,Rt,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:1,max:10,step:.1,precision:1,size:`default`,"controls-position":`right`,class:`counter`},null,8,[`modelValue`])])])):o(``,!0)}var Bt=q(Nt,[[`render`,zt],[`__scopeId`,`data-v-7386f064`]]),Q=e=>{let t={...e||{}},n=Z(t.model,t.image);return delete t.action,t.watermark=!1,(n!==`edit`||!t.image?.length)&&delete t.image,t.size||delete t.size,t.sequential_image_generation!==`auto`&&delete t.sequential_image_generation_options,{...t,async:!0}},Vt=_({name:`SeedreamConfigPanel`,components:{MagicIcon:L,ElButton:K,PromptInput:Fe,Consumption:Ce,ImageInput:Ye,ModelSelector:nt,SizeSelector:lt,MaxImagesSelector:_t,OutputFormatSelector:wt,SeedInput:Mt,GuidanceScaleInput:Bt},emits:[`generate`],computed:{action(){return Z(this.config?.model,this.config?.image)},capabilities(){return X(this.config?.model)},config(){return this.$store.state.seedream?.config},consumption(){let e=Q(this.config),t=e.sequential_image_generation===`auto`?Math.max(1,Math.floor(e.sequential_image_generation_options?.max_images||1)):1;return me({...e,action:this.action,model:V(e.model),input_image_count:e.image?.length||0,count:t},this.service?.cost)},service(){return this.$store.state.seedream?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),Ht={class:`flex flex-col h-full`},Ut={class:`flex-1 overflow-y-auto p-5`},Wt={class:`flex flex-col items-center justify-center px-5 pb-5`};function Gt(t,n,c,u,d,m){let g=l(`model-selector`),_=l(`size-selector`),v=l(`max-images-selector`),y=l(`output-format-selector`),b=l(`seed-input`),x=l(`guidance-scale-input`),S=l(`prompt-input`),C=l(`image-input`),w=l(`consumption`),T=l(`magic-icon`),E=l(`el-button`);return h(),s(`div`,Ht,[e(`div`,Ut,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`}),a(S,{class:`mb-4`}),t.capabilities.image?(h(),f(C,{key:0,class:`mb-4`})):o(``,!0)]),e(`div`,Wt,[a(w,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(E,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(T,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedream.button.generate`)),1)]),_:1},8,[`onClick`])])])}var Kt=q(Vt,[[`render`,Gt]]),qt=_({name:`SeedreamTaskPreview`,components:{DeleteIcon:te,ApplicationIcon:O,ChannelIcon:j,ImageIcon:I,InfoIcon:ee,LightningIcon:ie,MagicIcon:L,TimeIcon:k,WarningIcon:ne,CopyToClipboard:be,ElAlert:C,ImageWrapper:Ee,ElButton:K,ElTooltip:S,ImagePreview:Y,ApiCodeButton:we,ReportButton:xe},props:{modelValue:{type:Object,required:!0}},computed:{apiRequest(){return Q(this.modelValue?.request)},isEdit(){return Array.isArray(this.modelValue?.request?.image)&&(this.modelValue?.request?.image?.length||0)>0},images(){let e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await J.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`seedream/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}},shortModel(e){return V(e)||e},onEdit(e){if(!e)return;console.debug(`Edit image:`,e);let t={...this.$store.state.seedream?.config||{}};t.image=[e],this.$store.commit(`seedream/setConfig`,t)}}}),Jt={class:`preview`},Yt={class:`left`},Xt={class:`main`},Zt={class:`bot`},Qt={class:`datetime`},$t=[`aria-label`],en={class:`info`},tn={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},nn={key:1,class:`prompt mt-2`},rn={key:0},an={key:0,class:n({content:!0})},on={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},sn={key:1,class:n({content:!0,failed:!0})},cn={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},ln={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},un={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},dn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},fn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},pn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},mn={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},hn={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},gn={key:2,class:`content`},_n={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},vn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},yn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},bn={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},xn={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Sn={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Cn={key:3,class:n({content:!0})},wn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Tn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function En(n,u,d,g,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`image-preview`),C=l(`time-icon`),w=l(`magic-icon`),T=l(`copy-to-clipboard`),E=l(`el-alert`),D=l(`image-wrapper`),O=l(`el-button`),k=l(`api-code-button`),A=l(`report-button`),j=l(`application-icon`),M=l(`image-icon`),N=l(`lightning-icon`),P=l(`channel-icon`),F=l(`warning-icon`),I=l(`info-icon`);return h(),s(`div`,Jt,[e(`div`,Yt,[a(y,{capability:`seedream`,part:`avatar`,class:`avatar`})]),e(`div`,Xt,[e(`div`,Zt,[a(y,{capability:`seedream`,part:`name`}),e(`span`,Qt,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(x,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(h(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:u[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,$t)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,en,[Array.isArray(n.modelValue?.request?.image)&&n.modelValue?.request?.image.length>0?(h(),s(`div`,tn,[(h(!0),s(c,null,m(n.modelValue?.request?.image,(e,t)=>(h(),f(S,{key:t,url:e,name:`image-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):o(``,!0),n.modelValue?.request?.prompt?(h(),s(`p`,nn,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,rn,` - (`+i(n.$t(`seedream.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?n.modelValue?.response?.success===!0?(h(),s(`div`,sn,[e(`div`,cn,[(h(!0),s(c,null,m(n.images,(e,t)=>(h(),f(D,{key:t,src:e?.image_url,"raw-src":e?.image_url},null,8,[`src`,`raw-src`]))),128))]),e(`div`,ln,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`common.button.edit`),placement:`top-start`},{default:p(()=>[a(O,{type:`info`,size:`small`,class:`btn-action`,onClick:u[1]||=t(e=>n.onEdit(n.images?.[0]?.image_url),[`stop`])},{default:p(()=>[r(i(n.$t(`common.button.edit`)),1)]),_:1})]),_:1},8,[`content`]),a(k,{path:`/seedream/images`,body:n.apiRequest},null,8,[`body`]),a(A,{service:`seedream`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])]),a(E,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,un,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.model`))+`: `+i(n.shortModel(n.modelValue?.request?.model)),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,dn,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),e(`p`,fn,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.task`))+`: `+i(n.isEdit?n.$t(`seedream.name.edits`):n.$t(`seedream.name.generate`)),1)]),e(`p`,pn,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,mn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(h(),s(`p`,hn,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(T,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.modelValue?.response?.success===!1?(h(),s(`div`,gn,[a(E,{closable:!1,class:`failure`},{template:p(()=>[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.failure`)),1)]),default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,_n,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.model`))+`: `+i(n.shortModel(n.modelValue?.request?.model)),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,vn,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),e(`p`,yn,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.task`))+`: `+i(n.isEdit?n.$t(`seedream.name.edits`):n.$t(`seedream.name.generate`)),1)]),e(`p`,$,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.response?.error?.message?(h(),s(`p`,bn,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(T,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])])):o(``,!0),n.modelValue?.elapsed?(h(),s(`p`,xn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(h(),s(`p`,Sn,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(T,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):o(``,!0)]),_:1})])):(h(),s(`div`,Cn,[a(E,{closable:!1,class:`info`},{template:p(()=>[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.status`)),1)]),default:p(()=>[e(`p`,wn,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.response?.trace_id?(h(),s(`p`,Tn,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(T,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):o(``,!0)]),_:1})])):(h(),s(`div`,an,[a(E,{closable:!1,class:`info`},{template:p(()=>[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.status.pending`)),1)]),default:p(()=>[e(`p`,on,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])])]),_:1})]))])])}var Dn=_({name:`SeedreamRecentPanel`,components:{TaskPreview:q(qt,[[`render`,En],[`__scopeId`,`data-v-b0055abb`]]),BotPlaceholder:Te,NoTasks:P,ScrollList:M},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?.()}}}),On={key:0},kn={key:2,class:`w-full h-full flex items-center justify-center`};function An(e,t,n,r,i,u){let d=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return h(),s(c,null,[e.tasks?.items===void 0?(h(),s(`div`,On,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(h(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(h(!0),s(c,null,m(e.tasks?.items,e=>(h(),f(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(h(),s(`div`,kn,[a(v)])):o(``,!0)],64)}var jn=_({name:`SeedreamIndex`,components:{ConfigPanel:Kt,Layout:Me,RecentPanel:q(Dn,[[`render`,An]])},mixins:[pe],inject:[`initialized`],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.seedream?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.seedream?.status?.getTasks===w.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 F({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();let 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);let{limit:t=20,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),await this.$store.dispatch(`seedream/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})},async onGenerate(){if(!fe(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;if(X(this.config?.model).imageRequired&&!this.config?.image?.length){T.warning(this.$t(`seedream.message.referenceImageRequired`));return}let e=Q(this.config);if(!ge())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}T.info(this.$t(`seedream.message.startingTask`)),de(`seedream`,ye.generate(e,{token:t})).then(()=>{T.success(this.$t(`seedream.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;t?.error?.code===`used_up`?T.error(this.$t(`seedream.message.usedUp`)):T.error(this.$t(`seedream.message.startTaskFailed`)+(t?.error?.message||``))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Mn(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return h(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loading,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Nn=q(jn,[[`render`,Mn]]);export{Nn as default};
1
+ import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{n as v,r as y,t as b}from"./select-jRFQ1Hzk.js";import{t as x}from"./upload-DerPm8IS.js";import{t as S}from"./tooltip-bfg-03mE.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-DcpkDkjF.js";import{t as E}from"./drawer-CL63mgQu.js";import{t as D}from"./input-number-u0MGro2n.js";import{t as O}from"./box-BgafcOxN.js";import{t as k}from"./clock-DcgPnVJa.js";import{a as A,c as j,n as M,o as N,r as P,t as F}from"./pagination-BbFTEjBg.js";import{t as I}from"./image-ltLE0_B2.js";import{t as ee}from"./info-B6zz-sKo.js";import{t as te}from"./trash-2-CDz5PwCk.js";import{t as ne}from"./triangle-alert-Z8DwGNFK.js";import{t as re}from"./upload-CYgk_oSr.js";import{t as L}from"./wand-sparkles-yU_7R4u-.js";import{t as ie}from"./zap-C0PdDJso.js";import{An as ae,Cn as R,Dn as z,En as B,Mn as oe,Nn as V,On as H,Tn as U,bn as se,kn as ce,wn as W,xn as G}from"./constants-C44cV5UH.js";import{$t as le,Fi as K,Jt as ue,Mr as de,O as q,Qt as fe,en as pe,in as me,nn as he,pn as ge,si as _e,tn as ve,xi as J,zn as ye}from"./index-CREYJmGZ.js";import{t as be}from"./CopyToClipboard-CLVp5I29.js";import{t as xe}from"./ReportButton-CYa13w8h.js";import{t as Y}from"./ImagePreview-DIR230rQ.js";import{n as Se}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Ce}from"./Consumption-C1nuDweL.js";import{t as we}from"./ApiCodeButton-DnW2mEEl.js";import{t as Te}from"./BotPlaceholder-hcIRfy3i.js";import{t as Ee}from"./ImageWrapper-DTMYPBbG.js";var De=_({name:`LayoutSeedream`,components:{MagicIcon:L,ElDrawer:E,ElButton:K},mixins:[Se]}),Oe={class:`main flex flex-row flex-1`},ke={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Ae={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function je(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,Oe,[e(`div`,ke,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ae,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[g,!t.tasksEmpty]]),a(_,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Me=q(De,[[`render`,je],[`__scopeId`,`data-v-c10167d0`]]),Ne=_({name:`SeedreamPromptInput`,components:{PromptTextarea:A},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||=``}});function Pe(e,t,n,r,i,a){let o=l(`prompt-textarea`);return h(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`seedream.name.prompt`),info:e.$t(`seedream.description.prompt`),placeholder:e.$t(`seedream.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Fe=q(Ne,[[`render`,Pe]]),Ie={image:!0,imageRequired:!1,sizeTiers:[`1K`,`2K`,`3K`,`4K`],sizeAdaptive:!0,sizePixel:!0,sizePixelDefault:void 0,groupGeneration:!1,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};function X(e){switch(e){case z:return{image:!0,imageRequired:!1,sizeTiers:[`1K`,`2K`],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!1,seed:!1,guidanceScale:!1,outputFormat:!0,tools:!1};case B:return{image:!0,imageRequired:!1,sizeTiers:[`2K`,`3K`,`4K`],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!0,tools:!0};case U:return{image:!0,imageRequired:!1,sizeTiers:[`2K`,`4K`],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case W:return{image:!0,imageRequired:!1,sizeTiers:[`1K`,`2K`,`4K`],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case R:return{image:!1,imageRequired:!1,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:`1024x1024`,groupGeneration:!1,seed:!0,guidanceScale:!0,guidanceScaleDefault:G[R],outputFormat:!1,tools:!1};case H:return{image:!0,imageRequired:!0,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:`1024x1024`,groupGeneration:!1,seed:!1,guidanceScale:!0,guidanceScaleDefault:G[H],outputFormat:!1,tools:!1};default:return Ie}}function Z(e,t){let n=X(e);return n.imageRequired||n.image&&t?.length?`edit`:`generate`}var Le=[`1K`,`2K`,`3K`,`4K`];function Re(e,t){if(!e)return[];let n=t.model??e.model;if(!n)return[];let r=X(n),i=[];Array.isArray(e.image)&&e.image.length>0&&!r.image&&i.push({field:`image`,i18nLabel:`seedream.name.imageUrls`});let a=typeof e.size==`string`?e.size:void 0;if(a){let e=a.toUpperCase();(Le.includes(e)&&!r.sizeTiers.includes(e)||a===`adaptive`&&!r.sizeAdaptive)&&i.push({field:`size`,i18nLabel:`seedream.name.size`})}return e.sequential_image_generation===`auto`&&!r.groupGeneration&&i.push({field:`sequential_image_generation`,i18nLabel:`seedream.name.maxImages`}),e.seed!==void 0&&e.seed!==null&&!r.seed&&i.push({field:`seed`,i18nLabel:`seedream.name.seed`}),e.guidance_scale!==void 0&&e.guidance_scale!==null&&!r.guidanceScale&&i.push({field:`guidance_scale`,i18nLabel:`seedream.name.guidanceScale`}),e.output_format&&!r.outputFormat&&i.push({field:`output_format`,i18nLabel:`seedream.name.outputFormat`}),Array.isArray(e.tools)&&e.tools.length>0&&!r.tools&&i.push({field:`tools`,i18nLabel:`seedream.name.tools`}),i}function ze(e,t,n){let r={...e},i=X(n.model??e.model);for(let e of t)switch(e.field){case`image`:delete r.image;break;case`size`:i.sizePixelDefault?r.size=i.sizePixelDefault:delete r.size;break;case`sequential_image_generation`:r.sequential_image_generation=`disabled`,delete r.sequential_image_generation_options;break;case`seed`:delete r.seed;break;case`guidance_scale`:delete r.guidance_scale;break;case`output_format`:delete r.output_format;break;case`tools`:delete r.tools;break}return r}var Be=_({name:`SeedreamImageInput`,components:{UploadIcon:re,ElUpload:x,ElButton:K,InfoIcon:N,ImagePreview:Y},mixins:[he,ve,le,ue],data(){return{fileList:[],uploadUrl:_e()+`/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 X(this.model).image}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),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(){T.warning(this.$t(`seedream.message.uploadImageExceed`))},onError(){T.error(this.$t(`seedream.message.uploadImageError`))},onSetImages(){let 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()}}}),Ve={key:0},He={class:`field`},Ue={class:`label`},We={class:`box`},Ge={class:`title font-bold`},Ke={class:`value`},qe={class:`file-list mt-2 flex flex-wrap gap-[10px]`};function Je(t,n,u,d,g,_){let v=l(`info-icon`),y=l(`upload-icon`),b=l(`el-button`),x=l(`el-upload`),S=l(`image-preview`);return t.supported?(h(),s(`div`,Ve,[e(`div`,He,[e(`div`,Ue,[e(`div`,We,[e(`h2`,Ge,i(t.$t(`seedream.name.imageUrls`)),1),a(v,{content:t.$t(`seedream.description.imageUrls`),class:`info`},null,8,[`content`])])]),e(`div`,Ke,[a(x,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,limit:14,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-change":t.onChange,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(b,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(y,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedream.button.uploadImageUrls`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])])]),e(`div`,qe,[(h(!0),s(c,null,m(t.fileList,(e,n)=>(h(),f(S,{key:e.uid||e?.response?.file_url||e.url||n,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:r=>t.onRemovePreview(n,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])])):o(``,!0)}var Ye=q(Be,[[`render`,Je],[`__scopeId`,`data-v-21f4dd97`]]),Xe=_({name:`SeedreamModelSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:N},data(){return{revertKey:0,options:[{value:z,label:this.$t(`seedream.model.seedream50pro`)},{value:B,label:this.$t(`seedream.model.seedream50`)},{value:U,label:this.$t(`seedream.model.seedream45`)},{value:W,label:this.$t(`seedream.model.seedream40`)},{value:R,label:this.$t(`seedream.model.seedream30t2i`)},{value:H,label:this.$t(`seedream.model.seededit30i2i`)}]}},computed:{value(){return this.$store.state.seedream?.config?.model}},mounted(){this.value||this.applyModel(se)},methods:{async onChange(e){let t=this.$store.state.seedream?.config||{},n=Re(t,{model:e});if(n.length===0){this.applyModel(e);return}let r=n.map(e=>this.$t(e.i18nLabel)).join(`、`);try{await J.confirm(this.$t(`seedream.message.featureNotSupportedBody`,{fields:r}),this.$t(`seedream.message.featureNotSupportedTitle`),{confirmButtonText:this.$t(`seedream.button.confirmContinue`),cancelButtonText:this.$t(`seedream.button.cancelSwitch`),type:`warning`});let i=ze({...t,model:e},n,{model:e});this.$store.commit(`seedream/setConfig`,i),T.success(this.$t(`seedream.message.featureRemovedNotice`,{fields:r}))}catch{this.revertKey+=1}},applyModel(e){this.$store.commit(`seedream/setConfig`,{...this.$store.state.seedream?.config,model:e})}}}),Ze={class:`field`},Qe={class:`label`},$e={class:`box`},et={class:`title font-bold`};function tt(t,n,r,o,u,d){let g=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return h(),s(`div`,Ze,[e(`div`,Qe,[e(`div`,$e,[e(`h2`,et,i(t.$t(`seedream.name.model`)),1),a(g,{content:t.$t(`seedream.description.model`),class:`info`},null,8,[`content`])])]),(h(),f(v,{key:t.revertKey,"model-value":t.value,class:`value`,placeholder:t.$t(`seedream.placeholder.select`),onChange:t.onChange},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`onChange`]))])}var nt=q(Xe,[[`render`,tt],[`__scopeId`,`data-v-6413c179`]]),rt=_({name:`SeedreamSizeSelector`,components:{ElSelect:y,ElOption:b,ElOptionGroup:v,InfoIcon:N},data(){return{SEEDREAM_SIZE_ADAPTIVE:oe,pixelOptions:ae}},computed:{model(){return this.$store.state.seedream?.config?.model},capabilities(){return X(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;let e=this.capabilities;e.sizeTiers.length?this.value=e.sizeTiers.includes(`2K`)?`2K`:e.sizeTiers[0]:e.sizePixelDefault&&(this.value=e.sizePixelDefault)}}}}),it={class:`field`},at={class:`label`},ot={class:`box`},st={class:`title font-bold`};function ct(t,n,r,u,d,g){let _=l(`info-icon`),v=l(`el-option`),y=l(`el-option-group`),b=l(`el-select`);return h(),s(`div`,it,[e(`div`,at,[e(`div`,ot,[e(`h2`,st,i(t.$t(`seedream.name.size`)),1),a(_,{content:t.$t(`seedream.description.size`),class:`info`},null,8,[`content`])])]),a(b,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`seedream.placeholder.size`),filterable:``,"allow-create":``,"default-first-option":``},{default:p(()=>[t.capabilities.sizeTiers.length?(h(),f(y,{key:0,label:t.$t(`seedream.size.group.tier`)},{default:p(()=>[(h(!0),s(c,null,m(t.capabilities.sizeTiers,e=>(h(),f(v,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`label`])):o(``,!0),t.capabilities.sizeAdaptive?(h(),f(y,{key:1,label:t.$t(`seedream.size.group.adaptive`)},{default:p(()=>[(h(),f(v,{key:t.SEEDREAM_SIZE_ADAPTIVE,label:t.$t(`seedream.size.adaptive`),value:t.SEEDREAM_SIZE_ADAPTIVE},null,8,[`label`,`value`]))]),_:1},8,[`label`])):o(``,!0),a(y,{label:t.$t(`seedream.size.group.pixel`)},{default:p(()=>[(h(!0),s(c,null,m(t.pixelOptions,e=>(h(),f(v,{key:e.value,label:`${e.value} (${e.ratio})`,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])])}var lt=q(rt,[[`render`,ct],[`__scopeId`,`data-v-dd7bd021`]]),ut=_({name:`SeedreamMaxImagesSelector`,components:{ElInputNumber:D,InfoIcon:N},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return X(this.config?.model).groupGeneration},referenceImageCount(){let e=this.config?.image;return Array.isArray(e)?e.length:0},effectiveMax(){let e=15-this.referenceImageCount;return Math.max(1,Math.min(15,e))},value:{get(){let e=this.config?.sequential_image_generation_options?.max_images;return typeof e==`number`&&e>=1?e:1},set(e){let t={...this.config||{}},n=Math.max(1,Math.min(this.effectiveMax,Math.floor(e||1)));n>1?(t.sequential_image_generation=`auto`,t.sequential_image_generation_options={...t.sequential_image_generation_options||{},max_images:n}):(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)}}}),dt={key:0,class:`field`},ft={class:`label`},pt={class:`box`},mt={class:`title font-bold`},ht={class:`value`};function gt(t,n,r,c,u,d){let f=l(`info-icon`),p=l(`el-input-number`);return t.supported?(h(),s(`div`,dt,[e(`div`,ft,[e(`div`,pt,[e(`h2`,mt,i(t.$t(`seedream.name.maxImages`)),1),a(f,{content:t.$t(`seedream.description.maxImages`),class:`info`},null,8,[`content`])])]),e(`div`,ht,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:1,max:t.effectiveMax,step:1,size:`default`,"controls-position":`right`,class:`counter`},null,8,[`modelValue`,`max`])])])):o(``,!0)}var _t=q(ut,[[`render`,gt],[`__scopeId`,`data-v-f079fd20`]]),vt=_({name:`SeedreamOutputFormatSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:N},data(){return{options:[...ce]}},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return X(this.config?.model).outputFormat},value:{get(){return this.config?.output_format},set(e){let t={...this.config||{}};t.output_format=e,this.$store.commit(`seedream/setConfig`,t)}}}}),yt={key:0,class:`field`},bt={class:`label`},xt={class:`box`},St={class:`title font-bold`};function Ct(t,n,r,u,d,g){let _=l(`info-icon`),v=l(`el-option`),y=l(`el-select`);return t.supported?(h(),s(`div`,yt,[e(`div`,bt,[e(`div`,xt,[e(`h2`,St,i(t.$t(`seedream.name.outputFormat`)),1),a(_,{content:t.$t(`seedream.description.outputFormat`),class:`info`},null,8,[`content`])])]),a(y,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`seedream.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(v,{key:e,label:e.toUpperCase(),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])):o(``,!0)}var wt=q(vt,[[`render`,Ct],[`__scopeId`,`data-v-69ea4c07`]]),Tt=_({name:`SeedreamSeedInput`,components:{ElInputNumber:D,InfoIcon:N},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return X(this.config?.model).seed},value:{get(){let e=this.config?.seed;return typeof e==`number`?e:-1},set(e){let t={...this.config||{}};t.seed=typeof e==`number`&&Number.isInteger(e)?e:-1,this.$store.commit(`seedream/setConfig`,t)}}}}),Et={key:0,class:`field`},Dt={class:`label`},Ot={class:`box`},kt={class:`title font-bold`},At={class:`value`};function jt(t,n,r,c,u,d){let f=l(`info-icon`),p=l(`el-input-number`);return t.supported?(h(),s(`div`,Et,[e(`div`,Dt,[e(`div`,Ot,[e(`h2`,kt,i(t.$t(`seedream.name.seed`)),1),a(f,{content:t.$t(`seedream.description.seed`),class:`info`},null,8,[`content`])])]),e(`div`,At,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:-1,max:2147483647,step:1,size:`default`,"controls-position":`right`,class:`counter`},null,8,[`modelValue`])])])):o(``,!0)}var Mt=q(Tt,[[`render`,jt],[`__scopeId`,`data-v-10cdc1e0`]]),Nt=_({name:`SeedreamGuidanceScaleInput`,components:{ElInputNumber:D,InfoIcon:N},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return X(this.config?.model).guidanceScale},defaultValue(){return X(this.config?.model).guidanceScaleDefault??2.5},value:{get(){let e=this.config?.guidance_scale;return typeof e==`number`?e:this.defaultValue},set(e){let t={...this.config||{}};t.guidance_scale=typeof e==`number`&&e>=1&&e<=10?e:this.defaultValue,this.$store.commit(`seedream/setConfig`,t)}}}}),Pt={key:0,class:`field`},Ft={class:`label`},It={class:`box`},Lt={class:`title font-bold`},Rt={class:`value`};function zt(t,n,r,c,u,d){let f=l(`info-icon`),p=l(`el-input-number`);return t.supported?(h(),s(`div`,Pt,[e(`div`,Ft,[e(`div`,It,[e(`h2`,Lt,i(t.$t(`seedream.name.guidanceScale`)),1),a(f,{content:t.$t(`seedream.description.guidanceScale`),class:`info`},null,8,[`content`])])]),e(`div`,Rt,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:1,max:10,step:.1,precision:1,size:`default`,"controls-position":`right`,class:`counter`},null,8,[`modelValue`])])])):o(``,!0)}var Bt=q(Nt,[[`render`,zt],[`__scopeId`,`data-v-7386f064`]]),Q=e=>{let t={...e||{}},n=Z(t.model,t.image);return delete t.action,t.watermark=!1,(n!==`edit`||!t.image?.length)&&delete t.image,t.size||delete t.size,t.sequential_image_generation!==`auto`&&delete t.sequential_image_generation_options,{...t,async:!0}},Vt=_({name:`SeedreamConfigPanel`,components:{MagicIcon:L,ElButton:K,PromptInput:Fe,Consumption:Ce,ImageInput:Ye,ModelSelector:nt,SizeSelector:lt,MaxImagesSelector:_t,OutputFormatSelector:wt,SeedInput:Mt,GuidanceScaleInput:Bt},emits:[`generate`],computed:{action(){return Z(this.config?.model,this.config?.image)},capabilities(){return X(this.config?.model)},config(){return this.$store.state.seedream?.config},consumption(){let e=Q(this.config),t=e.sequential_image_generation===`auto`?Math.max(1,Math.floor(e.sequential_image_generation_options?.max_images||1)):1;return me({...e,action:this.action,model:V(e.model),input_image_count:e.image?.length||0,count:t},this.service?.cost)},service(){return this.$store.state.seedream?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),Ht={class:`flex flex-col h-full`},Ut={class:`flex-1 overflow-y-auto p-5`},Wt={class:`flex flex-col items-center justify-center px-5 pb-5`};function Gt(t,n,c,u,d,m){let g=l(`model-selector`),_=l(`size-selector`),v=l(`max-images-selector`),y=l(`output-format-selector`),b=l(`seed-input`),x=l(`guidance-scale-input`),S=l(`prompt-input`),C=l(`image-input`),w=l(`consumption`),T=l(`magic-icon`),E=l(`el-button`);return h(),s(`div`,Ht,[e(`div`,Ut,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`}),a(S,{class:`mb-4`}),t.capabilities.image?(h(),f(C,{key:0,class:`mb-4`})):o(``,!0)]),e(`div`,Wt,[a(w,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(E,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(T,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedream.button.generate`)),1)]),_:1},8,[`onClick`])])])}var Kt=q(Vt,[[`render`,Gt]]),qt=_({name:`SeedreamTaskPreview`,components:{DeleteIcon:te,ApplicationIcon:O,ChannelIcon:j,ImageIcon:I,InfoIcon:ee,LightningIcon:ie,MagicIcon:L,TimeIcon:k,WarningIcon:ne,CopyToClipboard:be,ElAlert:C,ImageWrapper:Ee,ElButton:K,ElTooltip:S,ImagePreview:Y,ApiCodeButton:we,ReportButton:xe},props:{modelValue:{type:Object,required:!0}},computed:{apiRequest(){return Q(this.modelValue?.request)},isEdit(){return Array.isArray(this.modelValue?.request?.image)&&(this.modelValue?.request?.image?.length||0)>0},images(){let e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await J.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`seedream/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}},shortModel(e){return V(e)||e},onEdit(e){if(!e)return;console.debug(`Edit image:`,e);let t={...this.$store.state.seedream?.config||{}};t.image=[e],this.$store.commit(`seedream/setConfig`,t)}}}),Jt={class:`preview`},Yt={class:`left`},Xt={class:`main`},Zt={class:`bot`},Qt={class:`datetime`},$t=[`aria-label`],en={class:`info`},tn={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},nn={key:1,class:`prompt mt-2`},rn={key:0},an={key:0,class:n({content:!0})},on={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},sn={key:1,class:n({content:!0,failed:!0})},cn={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},ln={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},un={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},dn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},fn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},pn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},mn={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},hn={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},gn={key:2,class:`content`},_n={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},vn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},yn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},bn={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},xn={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Sn={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Cn={key:3,class:n({content:!0})},wn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Tn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function En(n,u,d,g,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`image-preview`),C=l(`time-icon`),w=l(`magic-icon`),T=l(`copy-to-clipboard`),E=l(`el-alert`),D=l(`image-wrapper`),O=l(`el-button`),k=l(`api-code-button`),A=l(`report-button`),j=l(`application-icon`),M=l(`image-icon`),N=l(`lightning-icon`),P=l(`channel-icon`),F=l(`warning-icon`),I=l(`info-icon`);return h(),s(`div`,Jt,[e(`div`,Yt,[a(y,{capability:`seedream`,part:`avatar`,class:`avatar`})]),e(`div`,Xt,[e(`div`,Zt,[a(y,{capability:`seedream`,part:`name`}),e(`span`,Qt,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(x,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(h(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:u[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,$t)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,en,[Array.isArray(n.modelValue?.request?.image)&&n.modelValue?.request?.image.length>0?(h(),s(`div`,tn,[(h(!0),s(c,null,m(n.modelValue?.request?.image,(e,t)=>(h(),f(S,{key:t,url:e,name:`image-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):o(``,!0),n.modelValue?.request?.prompt?(h(),s(`p`,nn,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,rn,` - (`+i(n.$t(`seedream.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?n.modelValue?.response?.success===!0?(h(),s(`div`,sn,[e(`div`,cn,[(h(!0),s(c,null,m(n.images,(e,t)=>(h(),f(D,{key:t,src:e?.image_url,"raw-src":e?.image_url},null,8,[`src`,`raw-src`]))),128))]),e(`div`,ln,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`common.button.edit`),placement:`top-start`},{default:p(()=>[a(O,{type:`info`,size:`small`,class:`btn-action`,onClick:u[1]||=t(e=>n.onEdit(n.images?.[0]?.image_url),[`stop`])},{default:p(()=>[r(i(n.$t(`common.button.edit`)),1)]),_:1})]),_:1},8,[`content`]),a(k,{path:`/seedream/images`,body:n.apiRequest},null,8,[`body`]),a(A,{service:`seedream`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])]),a(E,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,un,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.model`))+`: `+i(n.shortModel(n.modelValue?.request?.model)),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,dn,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),e(`p`,fn,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.task`))+`: `+i(n.isEdit?n.$t(`seedream.name.edits`):n.$t(`seedream.name.generate`)),1)]),e(`p`,pn,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,mn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(h(),s(`p`,hn,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(T,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.modelValue?.response?.success===!1?(h(),s(`div`,gn,[a(E,{closable:!1,class:`failure`},{template:p(()=>[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.failure`)),1)]),default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,_n,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.model`))+`: `+i(n.shortModel(n.modelValue?.request?.model)),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,vn,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),e(`p`,yn,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.task`))+`: `+i(n.isEdit?n.$t(`seedream.name.edits`):n.$t(`seedream.name.generate`)),1)]),e(`p`,$,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.response?.error?.message?(h(),s(`p`,bn,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(T,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])])):o(``,!0),n.modelValue?.elapsed?(h(),s(`p`,xn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(h(),s(`p`,Sn,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(T,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):o(``,!0)]),_:1})])):(h(),s(`div`,Cn,[a(E,{closable:!1,class:`info`},{template:p(()=>[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.status`)),1)]),default:p(()=>[e(`p`,wn,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.response?.trace_id?(h(),s(`p`,Tn,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(T,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):o(``,!0)]),_:1})])):(h(),s(`div`,an,[a(E,{closable:!1,class:`info`},{template:p(()=>[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.status.pending`)),1)]),default:p(()=>[e(`p`,on,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedream.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])])]),_:1})]))])])}var Dn=_({name:`SeedreamRecentPanel`,components:{TaskPreview:q(qt,[[`render`,En],[`__scopeId`,`data-v-b0055abb`]]),BotPlaceholder:Te,NoTasks:P,ScrollList:M},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?.()}}}),On={key:0},kn={key:2,class:`w-full h-full flex items-center justify-center`};function An(e,t,n,r,i,u){let d=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return h(),s(c,null,[e.tasks?.items===void 0?(h(),s(`div`,On,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(h(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(h(!0),s(c,null,m(e.tasks?.items,e=>(h(),f(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(h(),s(`div`,kn,[a(v)])):o(``,!0)],64)}var jn=_({name:`SeedreamIndex`,components:{ConfigPanel:Kt,Layout:Me,RecentPanel:q(Dn,[[`render`,An]])},mixins:[pe],inject:[`initialized`],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.seedream?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.seedream?.status?.getTasks===w.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 F({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();let 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);let{limit:t=20,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),await this.$store.dispatch(`seedream/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})},async onGenerate(){if(!fe(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;if(X(this.config?.model).imageRequired&&!this.config?.image?.length){T.warning(this.$t(`seedream.message.referenceImageRequired`));return}let e=Q(this.config);if(!ge())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}T.info(this.$t(`seedream.message.startingTask`)),de(`seedream`,ye.generate(e,{token:t})).then(()=>{T.success(this.$t(`seedream.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;t?.error?.code===`used_up`?T.error(this.$t(`seedream.message.usedUp`)):T.error(this.$t(`seedream.message.startTaskFailed`)+(t?.error?.message||``))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Mn(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return h(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loading,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Nn=q(jn,[[`render`,Mn]]);export{Nn as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,I as t,Jt as n,L as r,M as i,N as a,T as o,at as s,j as c,mt as l,rt as u,tt as d,z as f}from"./vendor-chart-Dw-P17PN.js";import{v as p}from"./models-CwEjR6Nf.js";import{t as m}from"./card-IQwqnRJR.js";import{t as h}from"./empty-C5KjRN0h.js";import{t as g}from"./skeleton-Dj_a_iIP.js";import{t as _}from"./monitor-BHx1oad3.js";import{t as v}from"./plus-lIyMOEZf.js";import{Fi as y,Ni as b,O as x,Y as S,xi as C}from"./index-DIgS5Gvp.js";import{t as w}from"./PageHeader-SdNvT1p3.js";import{n as T,t as E}from"./BrowserPairingDialog-NGsMVfzJ.js";var D=f({name:`ConsoleBrowserDevices`,components:{AddIcon:v,BrowserPairingDialog:E,ConsolePageHeader:w,DesktopIcon:_,ElButton:y,ElCard:m,ElEmpty:h,ElSkeleton:g,ElTag:b},data(){return{devices:[],loading:!1,busyId:null,pairingVisible:!1}},mounted(){this.refresh()},methods:{async refresh(){this.loading=!0;try{let{data:e}=await T.list();this.devices=e.filter(e=>e.status===`active`)}catch(e){p.error(this.errorDetail(e,`user.browserDevice.loadFailed`))}finally{this.loading=!1}},async rename(e){let t=await C.prompt(this.$t(`user.browserDevice.renamePrompt`),this.$t(`user.browserDevice.renameTitle`),{confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`),inputValue:e.name,inputValidator:e=>!!e.trim()&&e.trim().length<=128||this.$t(`user.browserDevice.nameRequired`)}).catch(()=>null);if(!t)return;let n=t.value?.trim();if(n){this.busyId=e.id;try{let{data:t}=await T.rename(e.id,n);this.devices=this.devices.map(e=>e.id===t.id?t:e),p.success(this.$t(`user.browserDevice.renameSuccess`))}catch(e){p.error(this.errorDetail(e,`user.browserDevice.renameFailed`))}finally{this.busyId=null}}},async remove(e){if(await C.confirm(this.$t(`user.browserDevice.deleteConfirm`,{name:e.name,count:e.active_session_count}),this.$t(`user.browserDevice.deleteTitle`),{confirmButtonText:this.$t(`user.browserDevice.delete`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).catch(()=>!1)){this.busyId=e.id;try{await T.delete(e.id),await this.refresh(),p.success(this.$t(`user.browserDevice.deleteSuccess`))}catch(e){p.error(this.errorDetail(e,`user.browserDevice.deleteFailed`))}finally{this.busyId=null}}},onPaired(e){e.status===`active`&&(this.devices=[e,...this.devices.filter(t=>t.id!==e.id)])},openConnectors(){this.$router.push({name:S})},compatibilityLabel(e){return e.compatible?String(this.$t(`connection.message.browserCompatible`)):String(this.$t(`connection.message.browserIncompatibility.${e.incompatibility_reason}`))},compatibilityTagType(e){return e.compatible?`success`:e.incompatibility_reason===`device_offline`?`warning`:`danger`},errorDetail(e,t){let n=e?.response?.data;return(Array.isArray(n?.name)?n.name[0]:n?.name)||n?.detail||String(this.$t(t))}}}),O={class:`devices-page`},k={class:`devices-actions`},A={key:0,class:`devices-loading`},j={key:2,class:`device-list`},M={class:`device-icon`},N={class:`device-content`},P={class:`device-heading`},F={class:`device-meta`},I={class:`device-digest-row`},L={class:`device-actions`};function R(f,p,m,h,g,_){let v=s(`console-page-header`),y=s(`add-icon`),b=s(`el-button`),x=s(`el-skeleton`),S=s(`el-empty`),C=s(`desktop-icon`),w=s(`el-tag`),T=s(`el-card`),E=s(`browser-pairing-dialog`);return d(),a(`div`,O,[r(v,{title:f.$t(`user.browserDevice.title`),subtitle:f.$t(`user.browserDevice.subtitle`)},null,8,[`title`,`subtitle`]),e(`div`,k,[r(b,{type:`primary`,onClick:p[0]||=e=>f.pairingVisible=!0},{default:l(()=>[r(y,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(` `+n(f.$t(`user.browserDevice.pairButton`)),1)]),_:1})]),r(T,{shadow:`never`,class:`devices-panel`,"body-style":{padding:0}},{default:l(()=>[f.loading?(d(),a(`div`,A,[r(x,{rows:5,animated:``})])):f.devices.length===0?(d(),c(S,{key:1,description:f.$t(`user.browserDevice.empty`)},null,8,[`description`])):(d(),a(`div`,j,[(d(!0),a(o,null,u(f.devices,o=>(d(),a(`article`,{key:o.id,class:`device-row`},[e(`div`,M,[r(C,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`div`,N,[e(`div`,P,[e(`strong`,null,n(o.name),1),r(w,{type:f.compatibilityTagType(o),size:`small`},{default:l(()=>[t(n(f.compatibilityLabel(o)),1)]),_:2},1032,[`type`])]),e(`dl`,F,[e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.platform`)),1),e(`dd`,null,n(o.platform),1)]),e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.extensionVersion`)),1),e(`dd`,null,n(o.extension_version),1)]),e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.lastSeen`)),1),e(`dd`,null,n(o.last_seen_at?f.$dayjs.format(o.last_seen_at):f.$t(`user.browserDevice.neverSeen`)),1)]),e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.capabilities`)),1),e(`dd`,null,n(o.capabilities.length?o.capabilities.join(`, `):`—`),1)]),e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.onlineStatus`)),1),e(`dd`,null,n(f.$t(o.online?`connection.message.browserOnline`:`connection.message.browserOffline`)),1)]),e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.activeSessions`)),1),e(`dd`,null,n(o.active_session_count),1)]),e(`div`,I,[e(`dt`,null,n(f.$t(`user.browserDevice.wireContractDigest`)),1),e(`dd`,null,n(o.wire_contract_digest),1)])])]),e(`div`,L,[o.status!==`revoked`&&o.active_session_count?(d(),c(b,{key:0,size:`small`,onClick:f.openConnectors},{default:l(()=>[t(n(f.$t(`user.browserDevice.manageSessions`)),1)]),_:1},8,[`onClick`])):i(``,!0),o.status===`revoked`?i(``,!0):(d(),c(b,{key:1,size:`small`,disabled:f.busyId===o.id,onClick:e=>f.rename(o)},{default:l(()=>[t(n(f.$t(`user.browserDevice.rename`)),1)]),_:1},8,[`disabled`,`onClick`])),o.status===`revoked`?i(``,!0):(d(),c(b,{key:2,size:`small`,type:`danger`,loading:f.busyId===o.id,onClick:e=>f.remove(o)},{default:l(()=>[t(n(f.$t(`user.browserDevice.delete`)),1)]),_:1},8,[`loading`,`onClick`]))])]))),128))]))]),_:1}),r(E,{modelValue:f.pairingVisible,"onUpdate:modelValue":p[1]||=e=>f.pairingVisible=e,onPaired:f.onPaired},null,8,[`modelValue`,`onPaired`])])}var z=x(D,[[`render`,R],[`__scopeId`,`data-v-eab6a84d`]]);export{z as default};
1
+ import"./rolldown-runtime--c01j_DQ.js";import{A as e,I as t,Jt as n,L as r,M as i,N as a,T as o,at as s,j as c,mt as l,rt as u,tt as d,z as f}from"./vendor-chart-Dw-P17PN.js";import{v as p}from"./models-DcpkDkjF.js";import{t as m}from"./card-IQwqnRJR.js";import{t as h}from"./empty-C5KjRN0h.js";import{t as g}from"./skeleton-Dj_a_iIP.js";import{t as _}from"./monitor-DkCq84E2.js";import{t as v}from"./plus--lrUTaV9.js";import{Fi as y,Ni as b,O as x,Y as S,xi as C}from"./index-CREYJmGZ.js";import{t as w}from"./PageHeader-B7aH63od.js";import{n as T,t as E}from"./BrowserPairingDialog-Cl__jmX7.js";var D=f({name:`ConsoleBrowserDevices`,components:{AddIcon:v,BrowserPairingDialog:E,ConsolePageHeader:w,DesktopIcon:_,ElButton:y,ElCard:m,ElEmpty:h,ElSkeleton:g,ElTag:b},data(){return{devices:[],loading:!1,busyId:null,pairingVisible:!1}},mounted(){this.refresh()},methods:{async refresh(){this.loading=!0;try{let{data:e}=await T.list();this.devices=e.filter(e=>e.status===`active`)}catch(e){p.error(this.errorDetail(e,`user.browserDevice.loadFailed`))}finally{this.loading=!1}},async rename(e){let t=await C.prompt(this.$t(`user.browserDevice.renamePrompt`),this.$t(`user.browserDevice.renameTitle`),{confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`),inputValue:e.name,inputValidator:e=>!!e.trim()&&e.trim().length<=128||this.$t(`user.browserDevice.nameRequired`)}).catch(()=>null);if(!t)return;let n=t.value?.trim();if(n){this.busyId=e.id;try{let{data:t}=await T.rename(e.id,n);this.devices=this.devices.map(e=>e.id===t.id?t:e),p.success(this.$t(`user.browserDevice.renameSuccess`))}catch(e){p.error(this.errorDetail(e,`user.browserDevice.renameFailed`))}finally{this.busyId=null}}},async remove(e){if(await C.confirm(this.$t(`user.browserDevice.deleteConfirm`,{name:e.name,count:e.active_session_count}),this.$t(`user.browserDevice.deleteTitle`),{confirmButtonText:this.$t(`user.browserDevice.delete`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).catch(()=>!1)){this.busyId=e.id;try{await T.delete(e.id),await this.refresh(),p.success(this.$t(`user.browserDevice.deleteSuccess`))}catch(e){p.error(this.errorDetail(e,`user.browserDevice.deleteFailed`))}finally{this.busyId=null}}},onPaired(e){e.status===`active`&&(this.devices=[e,...this.devices.filter(t=>t.id!==e.id)])},openConnectors(){this.$router.push({name:S})},compatibilityLabel(e){return e.compatible?String(this.$t(`connection.message.browserCompatible`)):String(this.$t(`connection.message.browserIncompatibility.${e.incompatibility_reason}`))},compatibilityTagType(e){return e.compatible?`success`:e.incompatibility_reason===`device_offline`?`warning`:`danger`},errorDetail(e,t){let n=e?.response?.data;return(Array.isArray(n?.name)?n.name[0]:n?.name)||n?.detail||String(this.$t(t))}}}),O={class:`devices-page`},k={class:`devices-actions`},A={key:0,class:`devices-loading`},j={key:2,class:`device-list`},M={class:`device-icon`},N={class:`device-content`},P={class:`device-heading`},F={class:`device-meta`},I={class:`device-digest-row`},L={class:`device-actions`};function R(f,p,m,h,g,_){let v=s(`console-page-header`),y=s(`add-icon`),b=s(`el-button`),x=s(`el-skeleton`),S=s(`el-empty`),C=s(`desktop-icon`),w=s(`el-tag`),T=s(`el-card`),E=s(`browser-pairing-dialog`);return d(),a(`div`,O,[r(v,{title:f.$t(`user.browserDevice.title`),subtitle:f.$t(`user.browserDevice.subtitle`)},null,8,[`title`,`subtitle`]),e(`div`,k,[r(b,{type:`primary`,onClick:p[0]||=e=>f.pairingVisible=!0},{default:l(()=>[r(y,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(` `+n(f.$t(`user.browserDevice.pairButton`)),1)]),_:1})]),r(T,{shadow:`never`,class:`devices-panel`,"body-style":{padding:0}},{default:l(()=>[f.loading?(d(),a(`div`,A,[r(x,{rows:5,animated:``})])):f.devices.length===0?(d(),c(S,{key:1,description:f.$t(`user.browserDevice.empty`)},null,8,[`description`])):(d(),a(`div`,j,[(d(!0),a(o,null,u(f.devices,o=>(d(),a(`article`,{key:o.id,class:`device-row`},[e(`div`,M,[r(C,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`div`,N,[e(`div`,P,[e(`strong`,null,n(o.name),1),r(w,{type:f.compatibilityTagType(o),size:`small`},{default:l(()=>[t(n(f.compatibilityLabel(o)),1)]),_:2},1032,[`type`])]),e(`dl`,F,[e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.platform`)),1),e(`dd`,null,n(o.platform),1)]),e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.extensionVersion`)),1),e(`dd`,null,n(o.extension_version),1)]),e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.lastSeen`)),1),e(`dd`,null,n(o.last_seen_at?f.$dayjs.format(o.last_seen_at):f.$t(`user.browserDevice.neverSeen`)),1)]),e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.capabilities`)),1),e(`dd`,null,n(o.capabilities.length?o.capabilities.join(`, `):`—`),1)]),e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.onlineStatus`)),1),e(`dd`,null,n(f.$t(o.online?`connection.message.browserOnline`:`connection.message.browserOffline`)),1)]),e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.activeSessions`)),1),e(`dd`,null,n(o.active_session_count),1)]),e(`div`,I,[e(`dt`,null,n(f.$t(`user.browserDevice.wireContractDigest`)),1),e(`dd`,null,n(o.wire_contract_digest),1)])])]),e(`div`,L,[o.status!==`revoked`&&o.active_session_count?(d(),c(b,{key:0,size:`small`,onClick:f.openConnectors},{default:l(()=>[t(n(f.$t(`user.browserDevice.manageSessions`)),1)]),_:1},8,[`onClick`])):i(``,!0),o.status===`revoked`?i(``,!0):(d(),c(b,{key:1,size:`small`,disabled:f.busyId===o.id,onClick:e=>f.rename(o)},{default:l(()=>[t(n(f.$t(`user.browserDevice.rename`)),1)]),_:1},8,[`disabled`,`onClick`])),o.status===`revoked`?i(``,!0):(d(),c(b,{key:2,size:`small`,type:`danger`,loading:f.busyId===o.id,onClick:e=>f.remove(o)},{default:l(()=>[t(n(f.$t(`user.browserDevice.delete`)),1)]),_:1},8,[`loading`,`onClick`]))])]))),128))]))]),_:1}),r(E,{modelValue:f.pairingVisible,"onUpdate:modelValue":p[1]||=e=>f.pairingVisible=e,onPaired:f.onPaired},null,8,[`modelValue`,`onPaired`])])}var z=x(D,[[`render`,R],[`__scopeId`,`data-v-eab6a84d`]]);export{z as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{n as v,r as y,t as b}from"./select-CUw_YhcY.js";import{t as x}from"./upload-CI1ZP51F.js";import{t as S}from"./tooltip-xGYGkgTR.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-CwEjR6Nf.js";import{t as E}from"./drawer-BMRGHI-3.js";import{t as D}from"./input-number-ByXVBT4t.js";import{t as O}from"./switch-BHE5VSJC.js";import{t as k}from"./box-K1AOg2Dt.js";import{t as A}from"./clock-CS3ZX4nf.js";import{a as j,c as M,n as N,o as P,r as F,t as I}from"./pagination-CebMKB63.js";import{t as ee}from"./image-l7GEfh5m.js";import{t as L}from"./info-C40CnPeL.js";import{t as te}from"./trash-2-xb-Jm4i0.js";import{t as ne}from"./triangle-alert-COLtfogn.js";import{t as re}from"./upload-Bu37nR-5.js";import{t as R}from"./wand-sparkles-DDyMsIR4.js";import{t as ie}from"./zap-UpSN-PKO.js";import{Bn as ae,Fn as oe,Hn as se,In as z,Jn as B,Kn as V,Ln as H,Pn as U,Un as W,Vn as G,Wn as K,Yn as q,qn as ce}from"./constants-CQR8cCBL.js";import{$t as le,Bn as J,Fi as Y,Jt as ue,Mr as de,O as X,Qt as fe,en as pe,in as me,nn as he,pn as ge,si as _e,tn as ve,xi as ye}from"./index-DIgS5Gvp.js";import{t as be}from"./CopyToClipboard-BoetcLMP.js";import{t as xe}from"./ReportButton-D7JGzuC6.js";import{t as Z}from"./ImagePreview-Bc9stSGF.js";import{n as Se}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Ce}from"./Consumption-64yHTpsG.js";import{t as we}from"./ApiCodeButton-CiYVI-BW.js";import{t as Te}from"./BotPlaceholder-CWVuEjbL.js";import{t as Ee}from"./ImageWrapper-BU9rTzRE.js";var De=_({name:`LayoutNanobanana`,components:{MagicIcon:R,ElDrawer:E,ElButton:Y},mixins:[Se]}),Oe={class:`main flex flex-row flex-1`},ke={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Ae={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function je(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,Oe,[e(`div`,ke,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ae,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[g,!t.tasksEmpty]]),a(_,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Me=X(De,[[`render`,je],[`__scopeId`,`data-v-fa2172a6`]]),Ne=_({name:`PromptInput`,components:{PromptTextarea:j},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||=``}});function Pe(e,t,n,r,i,a){let o=l(`prompt-textarea`);return h(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`openaiimage.name.prompt`),info:e.$t(`openaiimage.description.prompt`),placeholder:e.$t(`openaiimage.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Fe=X(Ne,[[`render`,Pe]]),Ie=_({name:`ImageUrlsInput`,components:{UploadIcon:re,ElUpload:x,ElButton:Y,InfoIcon:P,ImagePreview:Z},mixins:[he,ve,le,ue],data(){return{fileList:[],uploadUrl:_e()+`/api/v1/files/`,suppressWatch:!1}},computed:{maxImages(){return 16},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){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),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(){T.warning(this.$t(`openaiimage.message.uploadImageExceed`,{count:16}))},onError(){T.error(this.$t(`openaiimage.message.uploadImageError`))},onSetImageUrls(){let 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()}}}),Le={class:`field flex min-h-8 w-full items-center justify-between gap-3`},Re={class:`flex min-w-0 items-center`},ze={class:`title m-0 text-[14px] font-bold`},Be={class:`file-list flex flex-wrap gap-[10px]`};function Ve(t,n,o,u,d,g){let _=l(`info-icon`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`),x=l(`image-preview`);return h(),s(`div`,null,[e(`div`,Le,[e(`div`,Re,[e(`h2`,ze,i(t.$t(`openaiimage.name.imageUrls`)),1),a(_,{content:t.$t(`openaiimage.description.imageUrls`)},null,8,[`content`])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:t.maxImages,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-change":t.onChange,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(y,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`openaiimage.button.uploadImageUrls`)),1)]),_:1})]),_:1},8,[`file-list`,`limit`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])]),e(`div`,Be,[(h(!0),s(c,null,m(t.fileList,(e,n)=>(h(),f(x,{key:e.uid||e?.response?.file_url||e.url||n,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:r=>t.onRemovePreview(n,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])])}var He=X(Ie,[[`render`,Ve]]),Ue=_({name:`OpenAIImageModelSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:P},data(){return{options:[{value:ae,label:this.$t(`openaiimage.model.gptImage1`)},{value:G,label:this.$t(`openaiimage.model.gptImage15`)},{value:se,label:this.$t(`openaiimage.model.gptImage2`)},{value:W,label:this.$t(`openaiimage.model.gptImage2Official`)}]}},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||=H}}),We={class:`field`},Ge={class:`label`},Ke={class:`box`},qe={class:`title font-bold`};function Je(t,n,r,o,u,d){let g=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return h(),s(`div`,We,[e(`div`,Ge,[e(`div`,Ke,[e(`h2`,qe,i(t.$t(`openaiimage.name.model`)),1),a(g,{content:t.modelDescription,class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`openaiimage.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ye=X(Ue,[[`render`,Je],[`__scopeId`,`data-v-a42acad4`]]);function Q(e){if(!e)return;let t=/^(\d+)x(\d+)$/.exec(e);if(t)return{w:Number(t[1]),h:Number(t[2])}}var Xe=_({name:`OpenAIImageSizeSelector`,components:{ElSelect:y,ElOption:b,ElOptionGroup:v,ElSwitch:O,ElInputNumber:D,InfoIcon:P},data(){return{customMode:!1,customWidth:1024,customHeight:1024}},computed:{model(){return this.$store.state.openaiimage?.config?.model||`gpt-image-2`},storedSize(){return this.$store.state.openaiimage?.config?.size},autoSizeValue(){return q},customSupported(){return z.includes(this.model)},presets(){return K[this.model]??K[`gpt-image-2`]??[]},presetGroups(){return this.model===`gpt-image-2`||this.model===`gpt-image-2:official`?[{label:this.$t(`openaiimage.sizeGroup.standard1k`),options:V},{label:this.$t(`openaiimage.sizeGroup.preset2k`),options:ce},{label:this.$t(`openaiimage.sizeGroup.preset4k`),options:B}]:[{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 this.commitSize(q)}},presetValue:{get(){let e=this.storedSize;return e&&this.presets.includes(e)?e:this.autoSizeValue},set(e){this.customMode=!1,this.commitSize(e||void 0)}},multiple(){return 16},minSide(){return 256},maxSide(){return U},customError(){let 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>8294400?this.$t(`openaiimage.error.customSizePixels`,{pixels:oe.toLocaleString()}):``}},watch:{model:{immediate:!1,handler(){this.customSupported||(this.customMode=!1);let e=this.storedSize;if(!e||e===`auto`||this.presets.includes(e))return;let t=Q(e);t&&this.customSupported&&(this.customMode=!0,this.customWidth=t.w,this.customHeight=t.h,!this.customError)||this.commitSize(q)}},storedSize(e){if(!e||e===`auto`){this.customMode=!1;return}if(this.presets.includes(e)){this.customMode=!1;return}let t=Q(e);t&&this.customSupported&&(this.customMode=!0,this.customWidth!==t.w&&(this.customWidth=t.w),this.customHeight!==t.h&&(this.customHeight=t.h))},customWidth(){this.syncCustomToStore()},customHeight(){this.syncCustomToStore()}},mounted(){let e=this.storedSize,t=Q(e);e&&t&&this.customSupported&&!this.presets.includes(e)&&(this.customMode=!0,this.customWidth=t.w,this.customHeight=t.h)},methods:{commitSize(e){let t={...this.$store.state.openaiimage?.config};e?t.size=e:delete t.size,this.$store.commit(`openaiimage/setConfig`,t)},syncCustomToStore(){this.useCustom&&(this.customError||this.commitSize(`${this.customWidth}x${this.customHeight}`))}}}),Ze={class:`resolution`},Qe={class:`field`},$e={class:`label`},et={class:`box`},tt={class:`title font-bold`},nt={class:`field custom-toggle`},rt={class:`label`},it={class:`box`},at={class:`title font-bold`},ot={key:0,class:`custom-inputs`},st={class:`row`},ct={class:`row-label`},lt={class:`row`},ut={class:`row-label`},dt={key:0,class:`error`};function ft(t,n,r,u,d,g){let _=l(`info-icon`),v=l(`el-option`),y=l(`el-option-group`),b=l(`el-select`),x=l(`el-switch`),S=l(`el-input-number`);return h(),s(`div`,Ze,[e(`div`,Qe,[e(`div`,$e,[e(`div`,et,[e(`h2`,tt,i(t.$t(`openaiimage.name.size`)),1),a(_,{content:t.$t(`openaiimage.description.size`),class:`info`},null,8,[`content`])])]),a(b,{modelValue:t.presetValue,"onUpdate:modelValue":n[0]||=e=>t.presetValue=e,class:`value`,placeholder:t.$t(`openaiimage.placeholder.select`),disabled:t.useCustom},{default:p(()=>[a(v,{label:t.$t(`openaiimage.size.auto`),value:t.autoSizeValue},null,8,[`label`,`value`]),(h(!0),s(c,null,m(t.presetGroups,e=>(h(),f(y,{key:e.label,label:e.label},{default:p(()=>[(h(!0),s(c,null,m(e.options,e=>(h(),f(v,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:2},1032,[`label`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])]),t.customSupported?(h(),s(c,{key:0},[e(`div`,nt,[e(`div`,rt,[e(`div`,it,[e(`h2`,at,i(t.$t(`openaiimage.name.customSize`)),1),a(_,{content:t.$t(`openaiimage.description.customSize`),class:`info`},null,8,[`content`])])]),a(x,{modelValue:t.useCustom,"onUpdate:modelValue":n[1]||=e=>t.useCustom=e,class:`value-switch`},null,8,[`modelValue`])]),t.useCustom?(h(),s(`div`,ot,[e(`div`,st,[e(`span`,ct,i(t.$t(`openaiimage.name.width`)),1),a(S,{modelValue:t.customWidth,"onUpdate:modelValue":n[2]||=e=>t.customWidth=e,class:`row-input`,min:t.minSide,max:t.maxSide,step:t.multiple,"step-strictly":!0,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`,`step`])]),e(`div`,lt,[e(`span`,ut,i(t.$t(`openaiimage.name.height`)),1),a(S,{modelValue:t.customHeight,"onUpdate:modelValue":n[3]||=e=>t.customHeight=e,class:`row-input`,min:t.minSide,max:t.maxSide,step:t.multiple,"step-strictly":!0,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`,`step`])]),t.customError?(h(),s(`div`,dt,i(t.customError),1)):o(``,!0)])):o(``,!0)],64)):o(``,!0)])}var pt=_({name:`ConfigPanel`,components:{MagicIcon:R,ElButton:Y,PromptInput:Fe,Consumption:Ce,ImageUrlsInput:He,ModelSelector:Ye,ResolutionSelector:X(Xe,[[`render`,ft],[`__scopeId`,`data-v-22ab23e0`]])},emits:[`generate`],computed:{config(){return this.$store.state.openaiimage?.config},consumption(){return me({...this.config||{}},this.service?.cost)},service(){return this.$store.state.openaiimage?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),mt={class:`flex flex-col h-full`},ht={class:`flex-1 overflow-y-auto p-5`},gt={class:`flex flex-col items-center justify-center px-5 pb-5`};function _t(t,n,o,c,u,d){let f=l(`model-selector`),m=l(`resolution-selector`),g=l(`prompt-input`),_=l(`image-urls-input`),v=l(`consumption`),y=l(`magic-icon`),b=l(`el-button`);return h(),s(`div`,mt,[e(`div`,ht,[a(f,{class:`mb-4`}),a(m,{class:`mb-4`}),a(g,{class:`mb-4`}),a(_,{class:`mb-4`})]),e(`div`,gt,[a(v,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(b,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(y,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`openaiimage.button.generate`)),1)]),_:1},8,[`onClick`])])])}var vt=X(pt,[[`render`,_t]]),yt=_({name:`TaskPreview`,components:{ApplicationIcon:k,ChannelIcon:M,DeleteIcon:te,ImageIcon:ee,InfoIcon:L,LightningIcon:ie,MagicIcon:R,TimeIcon:A,WarningIcon:ne,CopyToClipboard:be,ElAlert:C,ImageWrapper:Ee,ElButton:Y,ElTooltip:S,ImagePreview:Z,ApiCodeButton:we,ReportButton:xe},props:{modelValue:{type:Object,required:!0}},computed:{isEditRequest(){let e=this.modelValue?.request;return this.modelValue?.type===`images_edits`||e?.action===`edit`||this.referenceImages.length>0},showTaskType(){return!!(this.modelValue?.request?.action||this.modelValue?.type||this.referenceImages.length>0)},taskTypeLabel(){return this.isEditRequest?this.$t(`openaiimage.name.edits`):this.$t(`openaiimage.name.generate`)},openaiimagePath(){return this.isEditRequest?`/openai/images/edits`:`/openai/images/generations`},openaiimageCodeBody(){let e=this.modelValue?.request;if(!e)return;let t={...e};if(delete t.action,delete t.callback_url,this.isEditRequest){delete t.image_urls,delete t.image;let e=this.referenceImages;e.length===1?t.image=e[0]:e.length>1&&(t.image=e)}else delete t.image_urls,delete t.image;return t},images(){let e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{let n=t;if(n?.image_url||n?.url){e.push(n);return}n?.b64_json&&e.push({...n,url:`data:image/png;base64,${n.b64_json}`})}),e},referenceImages(){let e=this.modelValue?.request;if(!e)return[];let t=Array.isArray(e.image_urls)?e.image_urls:[];if(t.length>0)return t.filter(e=>typeof e==`string`&&e.length>0);let n=e.image;return Array.isArray(n)?n.filter(e=>typeof e==`string`&&e.length>0):typeof n==`string`&&n.length>0?[n]:Array.isArray(e.images)?e.images.map(e=>{if(typeof e==`string`)return e;if(e&&typeof e==`object`)return e.image_url}).filter(e=>typeof e==`string`&&e.length>0):[]}},methods:{onEdit(e){if(!e)return;console.debug(`Edit image:`,e);let t={...this.$store.state.openaiimage?.config||{}};t.image_urls=[e],this.$store.commit(`openaiimage/setConfig`,t)},async onDelete(){let e=this.modelValue?.id;if(e){try{await ye.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`openaiimage/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}}}}),bt={class:`preview`},xt={class:`left`},St={class:`main`},Ct={class:`bot`},wt={class:`datetime`},Tt=[`aria-label`],Et={class:`info`},Dt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},Ot={key:1,class:`prompt mt-2`},kt={key:0},At={key:0,class:n({content:!0,failed:!0})},jt={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},Mt={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},Nt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Pt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ft={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},It={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Lt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Rt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},zt={key:1,class:n({content:!0})},Bt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ht={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ut={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`},Gt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Kt={key:2,class:n({content:!0})},qt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Jt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Yt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Xt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`};function Zt(n,u,d,g,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`image-preview`),C=l(`image-wrapper`),w=l(`el-button`),T=l(`api-code-button`),E=l(`report-button`),D=l(`application-icon`),O=l(`image-icon`),k=l(`lightning-icon`),A=l(`magic-icon`),j=l(`copy-to-clipboard`),M=l(`time-icon`),N=l(`channel-icon`),P=l(`el-alert`),F=l(`warning-icon`),I=l(`info-icon`);return h(),s(`div`,bt,[e(`div`,xt,[a(y,{capability:`openaiimage`,part:`avatar`,class:`avatar`})]),e(`div`,St,[e(`div`,Ct,[a(y,{capability:`openaiimage`,part:`name`}),e(`span`,wt,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(x,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(h(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:u[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Tt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Et,[n.referenceImages.length>0?(h(),s(`div`,Dt,[(h(!0),s(c,null,m(n.referenceImages,(e,t)=>(h(),f(S,{key:t,url:e,name:`image-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):o(``,!0),n.modelValue?.request?.prompt?(h(),s(`p`,Ot,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,kt,` - (`+i(n.$t(`openaiimage.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?.success===!0?(h(),s(`div`,At,[e(`div`,jt,[(h(!0),s(c,null,m(n.images,(e,t)=>(h(),f(C,{key:t,src:e?.image_url||e?.url||``,"raw-src":e?.image_url||e?.url||``},null,8,[`src`,`raw-src`]))),128))]),e(`div`,Mt,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`common.button.edit`),placement:`top-start`},{default:p(()=>[a(w,{type:`info`,size:`small`,class:`btn-action`,onClick:u[1]||=t(e=>n.onEdit(n.images?.[0]?.image_url||n.images?.[0]?.url),[`stop`])},{default:p(()=>[r(i(n.$t(`common.button.edit`)),1)]),_:1})]),_:1},8,[`content`]),a(T,{path:n.openaiimagePath,body:n.openaiimageCodeBody},null,8,[`path`,`body`]),a(E,{service:`openaiimage`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])]),a(P,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,Nt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,Pt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),n.showTaskType?(h(),s(`p`,Ft,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.task`))+`: `+i(n.taskTypeLabel),1)])):o(``,!0),e(`p`,It,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(j,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Lt,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(h(),s(`p`,Rt,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(j,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.modelValue?.response?.success===!1?(h(),s(`div`,zt,[a(P,{closable:!1,class:`failure`},{template:p(()=>[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.failure`)),1)]),default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,Bt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,$,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),n.showTaskType?(h(),s(`p`,Vt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.task`))+`: `+i(n.taskTypeLabel),1)])):o(``,!0),e(`p`,Ht,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(j,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,Ut,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(j,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Wt,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(h(),s(`p`,Gt,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(j,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):o(``,!0)]),_:1})])):(h(),s(`div`,Kt,[a(P,{closable:!1,class:`info`},{template:p(()=>[n.modelValue?.response?(h(),f(I,{key:1,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(h(),f(M,{key:0,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),r(` `+i(n.$t(n.modelValue?.response?`openaiimage.name.status`:`openaiimage.status.pending`)),1)]),default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,qt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,Jt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),n.showTaskType?(h(),s(`p`,Yt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.task`))+`: `+i(n.taskTypeLabel),1)])):o(``,!0),e(`p`,Xt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(j,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var Qt=_({name:`RecentPanel`,components:{TaskPreview:X(yt,[[`render`,Zt],[`__scopeId`,`data-v-6519c932`]]),BotPlaceholder:Te,NoTasks:F,ScrollList:N},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?.()}}}),$t={key:0},en={key:2,class:`w-full h-full flex items-center justify-center`};function tn(e,t,n,r,i,u){let d=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return h(),s(c,null,[e.tasks?.items===void 0?(h(),s(`div`,$t,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(h(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(h(!0),s(c,null,m(e.tasks?.items,e=>(h(),f(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(h(),s(`div`,en,[a(v)])):o(``,!0)],64)}var nn=_({name:`OpenAIImageIndex`,components:{ConfigPanel:vt,Layout:Me,RecentPanel:X(Qt,[[`render`,tn]])},mixins:[pe],inject:[`initialized`],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.openaiimage?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.openaiimage?.status?.getTasks===w.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 I({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();let 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);let{limit:t=20,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),await this.$store.dispatch(`openaiimage/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})},async onGenerate(){if(!fe(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;let e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;if(!this.hasText(e.prompt)){T.error(this.$t(`openaiimage.message.promptRequired`));return}e.prompt=e.prompt.trim(),!t&&`image_urls`in e&&delete e.image_urls,e.size||delete e.size;let n={...e,action:`generate`,async:!0},r={action:`edit`,model:e?.model,prompt:e?.prompt,size:e?.size,image_urls:e?.image_urls||[],async:!0};if(!ge())return;let i=this.credential?.token;if(!i){console.error(`no token specified`);return}T.info(this.$t(`openaiimage.message.startingTask`)),de(`openaiimage`,t?J.edit(r,{token:i}):J.generate(n,{token:i})).then(e=>{console.debug(`task accepted`,e.data?.task_id),T.success(this.$t(`openaiimage.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;t?.error?.code===`used_up`?T.error(this.$t(`openaiimage.message.usedUp`)):T.error(this.$t(`openaiimage.message.startTaskFailed`)+(t?.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 rn(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return h(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loading,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var an=X(nn,[[`render`,rn]]);export{an as default};
1
+ import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{n as v,r as y,t as b}from"./select-jRFQ1Hzk.js";import{t as x}from"./upload-DerPm8IS.js";import{t as S}from"./tooltip-bfg-03mE.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-DcpkDkjF.js";import{t as E}from"./drawer-CL63mgQu.js";import{t as D}from"./input-number-u0MGro2n.js";import{t as O}from"./switch-CP09CWeK.js";import{t as k}from"./box-BgafcOxN.js";import{t as A}from"./clock-DcgPnVJa.js";import{a as j,c as M,n as N,o as P,r as F,t as I}from"./pagination-BbFTEjBg.js";import{t as ee}from"./image-ltLE0_B2.js";import{t as L}from"./info-B6zz-sKo.js";import{t as te}from"./trash-2-CDz5PwCk.js";import{t as ne}from"./triangle-alert-Z8DwGNFK.js";import{t as re}from"./upload-CYgk_oSr.js";import{t as R}from"./wand-sparkles-yU_7R4u-.js";import{t as ie}from"./zap-C0PdDJso.js";import{Bn as ae,Fn as oe,Hn as se,In as z,Jn as B,Kn as V,Ln as H,Pn as U,Un as W,Vn as G,Wn as K,Yn as q,qn as ce}from"./constants-C44cV5UH.js";import{$t as le,Bn as J,Fi as Y,Jt as ue,Mr as de,O as X,Qt as fe,en as pe,in as me,nn as he,pn as ge,si as _e,tn as ve,xi as ye}from"./index-CREYJmGZ.js";import{t as be}from"./CopyToClipboard-CLVp5I29.js";import{t as xe}from"./ReportButton-CYa13w8h.js";import{t as Z}from"./ImagePreview-DIR230rQ.js";import{n as Se}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Ce}from"./Consumption-C1nuDweL.js";import{t as we}from"./ApiCodeButton-DnW2mEEl.js";import{t as Te}from"./BotPlaceholder-hcIRfy3i.js";import{t as Ee}from"./ImageWrapper-DTMYPBbG.js";var De=_({name:`LayoutNanobanana`,components:{MagicIcon:R,ElDrawer:E,ElButton:Y},mixins:[Se]}),Oe={class:`main flex flex-row flex-1`},ke={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Ae={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function je(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,Oe,[e(`div`,ke,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ae,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[g,!t.tasksEmpty]]),a(_,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Me=X(De,[[`render`,je],[`__scopeId`,`data-v-fa2172a6`]]),Ne=_({name:`PromptInput`,components:{PromptTextarea:j},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||=``}});function Pe(e,t,n,r,i,a){let o=l(`prompt-textarea`);return h(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`openaiimage.name.prompt`),info:e.$t(`openaiimage.description.prompt`),placeholder:e.$t(`openaiimage.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Fe=X(Ne,[[`render`,Pe]]),Ie=_({name:`ImageUrlsInput`,components:{UploadIcon:re,ElUpload:x,ElButton:Y,InfoIcon:P,ImagePreview:Z},mixins:[he,ve,le,ue],data(){return{fileList:[],uploadUrl:_e()+`/api/v1/files/`,suppressWatch:!1}},computed:{maxImages(){return 16},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){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),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(){T.warning(this.$t(`openaiimage.message.uploadImageExceed`,{count:16}))},onError(){T.error(this.$t(`openaiimage.message.uploadImageError`))},onSetImageUrls(){let 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()}}}),Le={class:`field flex min-h-8 w-full items-center justify-between gap-3`},Re={class:`flex min-w-0 items-center`},ze={class:`title m-0 text-[14px] font-bold`},Be={class:`file-list flex flex-wrap gap-[10px]`};function Ve(t,n,o,u,d,g){let _=l(`info-icon`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`),x=l(`image-preview`);return h(),s(`div`,null,[e(`div`,Le,[e(`div`,Re,[e(`h2`,ze,i(t.$t(`openaiimage.name.imageUrls`)),1),a(_,{content:t.$t(`openaiimage.description.imageUrls`)},null,8,[`content`])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:t.maxImages,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-change":t.onChange,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(y,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`openaiimage.button.uploadImageUrls`)),1)]),_:1})]),_:1},8,[`file-list`,`limit`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])]),e(`div`,Be,[(h(!0),s(c,null,m(t.fileList,(e,n)=>(h(),f(x,{key:e.uid||e?.response?.file_url||e.url||n,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:r=>t.onRemovePreview(n,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])])}var He=X(Ie,[[`render`,Ve]]),Ue=_({name:`OpenAIImageModelSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:P},data(){return{options:[{value:ae,label:this.$t(`openaiimage.model.gptImage1`)},{value:G,label:this.$t(`openaiimage.model.gptImage15`)},{value:se,label:this.$t(`openaiimage.model.gptImage2`)},{value:W,label:this.$t(`openaiimage.model.gptImage2Official`)}]}},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||=H}}),We={class:`field`},Ge={class:`label`},Ke={class:`box`},qe={class:`title font-bold`};function Je(t,n,r,o,u,d){let g=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return h(),s(`div`,We,[e(`div`,Ge,[e(`div`,Ke,[e(`h2`,qe,i(t.$t(`openaiimage.name.model`)),1),a(g,{content:t.modelDescription,class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`openaiimage.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ye=X(Ue,[[`render`,Je],[`__scopeId`,`data-v-a42acad4`]]);function Q(e){if(!e)return;let t=/^(\d+)x(\d+)$/.exec(e);if(t)return{w:Number(t[1]),h:Number(t[2])}}var Xe=_({name:`OpenAIImageSizeSelector`,components:{ElSelect:y,ElOption:b,ElOptionGroup:v,ElSwitch:O,ElInputNumber:D,InfoIcon:P},data(){return{customMode:!1,customWidth:1024,customHeight:1024}},computed:{model(){return this.$store.state.openaiimage?.config?.model||`gpt-image-2`},storedSize(){return this.$store.state.openaiimage?.config?.size},autoSizeValue(){return q},customSupported(){return z.includes(this.model)},presets(){return K[this.model]??K[`gpt-image-2`]??[]},presetGroups(){return this.model===`gpt-image-2`||this.model===`gpt-image-2:official`?[{label:this.$t(`openaiimage.sizeGroup.standard1k`),options:V},{label:this.$t(`openaiimage.sizeGroup.preset2k`),options:ce},{label:this.$t(`openaiimage.sizeGroup.preset4k`),options:B}]:[{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 this.commitSize(q)}},presetValue:{get(){let e=this.storedSize;return e&&this.presets.includes(e)?e:this.autoSizeValue},set(e){this.customMode=!1,this.commitSize(e||void 0)}},multiple(){return 16},minSide(){return 256},maxSide(){return U},customError(){let 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>8294400?this.$t(`openaiimage.error.customSizePixels`,{pixels:oe.toLocaleString()}):``}},watch:{model:{immediate:!1,handler(){this.customSupported||(this.customMode=!1);let e=this.storedSize;if(!e||e===`auto`||this.presets.includes(e))return;let t=Q(e);t&&this.customSupported&&(this.customMode=!0,this.customWidth=t.w,this.customHeight=t.h,!this.customError)||this.commitSize(q)}},storedSize(e){if(!e||e===`auto`){this.customMode=!1;return}if(this.presets.includes(e)){this.customMode=!1;return}let t=Q(e);t&&this.customSupported&&(this.customMode=!0,this.customWidth!==t.w&&(this.customWidth=t.w),this.customHeight!==t.h&&(this.customHeight=t.h))},customWidth(){this.syncCustomToStore()},customHeight(){this.syncCustomToStore()}},mounted(){let e=this.storedSize,t=Q(e);e&&t&&this.customSupported&&!this.presets.includes(e)&&(this.customMode=!0,this.customWidth=t.w,this.customHeight=t.h)},methods:{commitSize(e){let t={...this.$store.state.openaiimage?.config};e?t.size=e:delete t.size,this.$store.commit(`openaiimage/setConfig`,t)},syncCustomToStore(){this.useCustom&&(this.customError||this.commitSize(`${this.customWidth}x${this.customHeight}`))}}}),Ze={class:`resolution`},Qe={class:`field`},$e={class:`label`},et={class:`box`},tt={class:`title font-bold`},nt={class:`field custom-toggle`},rt={class:`label`},it={class:`box`},at={class:`title font-bold`},ot={key:0,class:`custom-inputs`},st={class:`row`},ct={class:`row-label`},lt={class:`row`},ut={class:`row-label`},dt={key:0,class:`error`};function ft(t,n,r,u,d,g){let _=l(`info-icon`),v=l(`el-option`),y=l(`el-option-group`),b=l(`el-select`),x=l(`el-switch`),S=l(`el-input-number`);return h(),s(`div`,Ze,[e(`div`,Qe,[e(`div`,$e,[e(`div`,et,[e(`h2`,tt,i(t.$t(`openaiimage.name.size`)),1),a(_,{content:t.$t(`openaiimage.description.size`),class:`info`},null,8,[`content`])])]),a(b,{modelValue:t.presetValue,"onUpdate:modelValue":n[0]||=e=>t.presetValue=e,class:`value`,placeholder:t.$t(`openaiimage.placeholder.select`),disabled:t.useCustom},{default:p(()=>[a(v,{label:t.$t(`openaiimage.size.auto`),value:t.autoSizeValue},null,8,[`label`,`value`]),(h(!0),s(c,null,m(t.presetGroups,e=>(h(),f(y,{key:e.label,label:e.label},{default:p(()=>[(h(!0),s(c,null,m(e.options,e=>(h(),f(v,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:2},1032,[`label`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])]),t.customSupported?(h(),s(c,{key:0},[e(`div`,nt,[e(`div`,rt,[e(`div`,it,[e(`h2`,at,i(t.$t(`openaiimage.name.customSize`)),1),a(_,{content:t.$t(`openaiimage.description.customSize`),class:`info`},null,8,[`content`])])]),a(x,{modelValue:t.useCustom,"onUpdate:modelValue":n[1]||=e=>t.useCustom=e,class:`value-switch`},null,8,[`modelValue`])]),t.useCustom?(h(),s(`div`,ot,[e(`div`,st,[e(`span`,ct,i(t.$t(`openaiimage.name.width`)),1),a(S,{modelValue:t.customWidth,"onUpdate:modelValue":n[2]||=e=>t.customWidth=e,class:`row-input`,min:t.minSide,max:t.maxSide,step:t.multiple,"step-strictly":!0,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`,`step`])]),e(`div`,lt,[e(`span`,ut,i(t.$t(`openaiimage.name.height`)),1),a(S,{modelValue:t.customHeight,"onUpdate:modelValue":n[3]||=e=>t.customHeight=e,class:`row-input`,min:t.minSide,max:t.maxSide,step:t.multiple,"step-strictly":!0,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`,`step`])]),t.customError?(h(),s(`div`,dt,i(t.customError),1)):o(``,!0)])):o(``,!0)],64)):o(``,!0)])}var pt=_({name:`ConfigPanel`,components:{MagicIcon:R,ElButton:Y,PromptInput:Fe,Consumption:Ce,ImageUrlsInput:He,ModelSelector:Ye,ResolutionSelector:X(Xe,[[`render`,ft],[`__scopeId`,`data-v-22ab23e0`]])},emits:[`generate`],computed:{config(){return this.$store.state.openaiimage?.config},consumption(){return me({...this.config||{}},this.service?.cost)},service(){return this.$store.state.openaiimage?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),mt={class:`flex flex-col h-full`},ht={class:`flex-1 overflow-y-auto p-5`},gt={class:`flex flex-col items-center justify-center px-5 pb-5`};function _t(t,n,o,c,u,d){let f=l(`model-selector`),m=l(`resolution-selector`),g=l(`prompt-input`),_=l(`image-urls-input`),v=l(`consumption`),y=l(`magic-icon`),b=l(`el-button`);return h(),s(`div`,mt,[e(`div`,ht,[a(f,{class:`mb-4`}),a(m,{class:`mb-4`}),a(g,{class:`mb-4`}),a(_,{class:`mb-4`})]),e(`div`,gt,[a(v,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(b,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(y,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`openaiimage.button.generate`)),1)]),_:1},8,[`onClick`])])])}var vt=X(pt,[[`render`,_t]]),yt=_({name:`TaskPreview`,components:{ApplicationIcon:k,ChannelIcon:M,DeleteIcon:te,ImageIcon:ee,InfoIcon:L,LightningIcon:ie,MagicIcon:R,TimeIcon:A,WarningIcon:ne,CopyToClipboard:be,ElAlert:C,ImageWrapper:Ee,ElButton:Y,ElTooltip:S,ImagePreview:Z,ApiCodeButton:we,ReportButton:xe},props:{modelValue:{type:Object,required:!0}},computed:{isEditRequest(){let e=this.modelValue?.request;return this.modelValue?.type===`images_edits`||e?.action===`edit`||this.referenceImages.length>0},showTaskType(){return!!(this.modelValue?.request?.action||this.modelValue?.type||this.referenceImages.length>0)},taskTypeLabel(){return this.isEditRequest?this.$t(`openaiimage.name.edits`):this.$t(`openaiimage.name.generate`)},openaiimagePath(){return this.isEditRequest?`/openai/images/edits`:`/openai/images/generations`},openaiimageCodeBody(){let e=this.modelValue?.request;if(!e)return;let t={...e};if(delete t.action,delete t.callback_url,this.isEditRequest){delete t.image_urls,delete t.image;let e=this.referenceImages;e.length===1?t.image=e[0]:e.length>1&&(t.image=e)}else delete t.image_urls,delete t.image;return t},images(){let e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{let n=t;if(n?.image_url||n?.url){e.push(n);return}n?.b64_json&&e.push({...n,url:`data:image/png;base64,${n.b64_json}`})}),e},referenceImages(){let e=this.modelValue?.request;if(!e)return[];let t=Array.isArray(e.image_urls)?e.image_urls:[];if(t.length>0)return t.filter(e=>typeof e==`string`&&e.length>0);let n=e.image;return Array.isArray(n)?n.filter(e=>typeof e==`string`&&e.length>0):typeof n==`string`&&n.length>0?[n]:Array.isArray(e.images)?e.images.map(e=>{if(typeof e==`string`)return e;if(e&&typeof e==`object`)return e.image_url}).filter(e=>typeof e==`string`&&e.length>0):[]}},methods:{onEdit(e){if(!e)return;console.debug(`Edit image:`,e);let t={...this.$store.state.openaiimage?.config||{}};t.image_urls=[e],this.$store.commit(`openaiimage/setConfig`,t)},async onDelete(){let e=this.modelValue?.id;if(e){try{await ye.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`openaiimage/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}}}}),bt={class:`preview`},xt={class:`left`},St={class:`main`},Ct={class:`bot`},wt={class:`datetime`},Tt=[`aria-label`],Et={class:`info`},Dt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},Ot={key:1,class:`prompt mt-2`},kt={key:0},At={key:0,class:n({content:!0,failed:!0})},jt={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},Mt={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},Nt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Pt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ft={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},It={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Lt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Rt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},zt={key:1,class:n({content:!0})},Bt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ht={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ut={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`},Gt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Kt={key:2,class:n({content:!0})},qt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Jt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Yt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Xt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`};function Zt(n,u,d,g,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`image-preview`),C=l(`image-wrapper`),w=l(`el-button`),T=l(`api-code-button`),E=l(`report-button`),D=l(`application-icon`),O=l(`image-icon`),k=l(`lightning-icon`),A=l(`magic-icon`),j=l(`copy-to-clipboard`),M=l(`time-icon`),N=l(`channel-icon`),P=l(`el-alert`),F=l(`warning-icon`),I=l(`info-icon`);return h(),s(`div`,bt,[e(`div`,xt,[a(y,{capability:`openaiimage`,part:`avatar`,class:`avatar`})]),e(`div`,St,[e(`div`,Ct,[a(y,{capability:`openaiimage`,part:`name`}),e(`span`,wt,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(x,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(h(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:u[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Tt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Et,[n.referenceImages.length>0?(h(),s(`div`,Dt,[(h(!0),s(c,null,m(n.referenceImages,(e,t)=>(h(),f(S,{key:t,url:e,name:`image-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):o(``,!0),n.modelValue?.request?.prompt?(h(),s(`p`,Ot,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,kt,` - (`+i(n.$t(`openaiimage.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?.success===!0?(h(),s(`div`,At,[e(`div`,jt,[(h(!0),s(c,null,m(n.images,(e,t)=>(h(),f(C,{key:t,src:e?.image_url||e?.url||``,"raw-src":e?.image_url||e?.url||``},null,8,[`src`,`raw-src`]))),128))]),e(`div`,Mt,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`common.button.edit`),placement:`top-start`},{default:p(()=>[a(w,{type:`info`,size:`small`,class:`btn-action`,onClick:u[1]||=t(e=>n.onEdit(n.images?.[0]?.image_url||n.images?.[0]?.url),[`stop`])},{default:p(()=>[r(i(n.$t(`common.button.edit`)),1)]),_:1})]),_:1},8,[`content`]),a(T,{path:n.openaiimagePath,body:n.openaiimageCodeBody},null,8,[`path`,`body`]),a(E,{service:`openaiimage`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])]),a(P,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,Nt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,Pt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),n.showTaskType?(h(),s(`p`,Ft,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.task`))+`: `+i(n.taskTypeLabel),1)])):o(``,!0),e(`p`,It,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(j,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Lt,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(h(),s(`p`,Rt,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(j,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.modelValue?.response?.success===!1?(h(),s(`div`,zt,[a(P,{closable:!1,class:`failure`},{template:p(()=>[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.failure`)),1)]),default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,Bt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,$,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),n.showTaskType?(h(),s(`p`,Vt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.task`))+`: `+i(n.taskTypeLabel),1)])):o(``,!0),e(`p`,Ht,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(j,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,Ut,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(j,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Wt,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(h(),s(`p`,Gt,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(j,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):o(``,!0)]),_:1})])):(h(),s(`div`,Kt,[a(P,{closable:!1,class:`info`},{template:p(()=>[n.modelValue?.response?(h(),f(I,{key:1,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(h(),f(M,{key:0,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),r(` `+i(n.$t(n.modelValue?.response?`openaiimage.name.status`:`openaiimage.status.pending`)),1)]),default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,qt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,Jt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),n.showTaskType?(h(),s(`p`,Yt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.task`))+`: `+i(n.taskTypeLabel),1)])):o(``,!0),e(`p`,Xt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(j,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var Qt=_({name:`RecentPanel`,components:{TaskPreview:X(yt,[[`render`,Zt],[`__scopeId`,`data-v-6519c932`]]),BotPlaceholder:Te,NoTasks:F,ScrollList:N},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?.()}}}),$t={key:0},en={key:2,class:`w-full h-full flex items-center justify-center`};function tn(e,t,n,r,i,u){let d=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return h(),s(c,null,[e.tasks?.items===void 0?(h(),s(`div`,$t,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(h(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(h(!0),s(c,null,m(e.tasks?.items,e=>(h(),f(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(h(),s(`div`,en,[a(v)])):o(``,!0)],64)}var nn=_({name:`OpenAIImageIndex`,components:{ConfigPanel:vt,Layout:Me,RecentPanel:X(Qt,[[`render`,tn]])},mixins:[pe],inject:[`initialized`],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.openaiimage?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.openaiimage?.status?.getTasks===w.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 I({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();let 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);let{limit:t=20,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),await this.$store.dispatch(`openaiimage/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})},async onGenerate(){if(!fe(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;let e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;if(!this.hasText(e.prompt)){T.error(this.$t(`openaiimage.message.promptRequired`));return}e.prompt=e.prompt.trim(),!t&&`image_urls`in e&&delete e.image_urls,e.size||delete e.size;let n={...e,action:`generate`,async:!0},r={action:`edit`,model:e?.model,prompt:e?.prompt,size:e?.size,image_urls:e?.image_urls||[],async:!0};if(!ge())return;let i=this.credential?.token;if(!i){console.error(`no token specified`);return}T.info(this.$t(`openaiimage.message.startingTask`)),de(`openaiimage`,t?J.edit(r,{token:i}):J.generate(n,{token:i})).then(e=>{console.debug(`task accepted`,e.data?.task_id),T.success(this.$t(`openaiimage.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;t?.error?.code===`used_up`?T.error(this.$t(`openaiimage.message.usedUp`)):T.error(this.$t(`openaiimage.message.startTaskFailed`)+(t?.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 rn(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return h(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loading,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var an=X(nn,[[`render`,rn]]);export{an as default};