@acedatacloud/nexior 3.349.1 → 3.349.2

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 (247) hide show
  1. package/dist/assets/{ApiCodeButton-DQfIqta7.js → ApiCodeButton-Ck-LkZnA.js} +1 -1
  2. package/dist/assets/{Artifacts-kWL9Riji.js → Artifacts-BgIY0V5w.js} +1 -1
  3. package/dist/assets/{AskUserQuestionCard-F6QltHc7.js → AskUserQuestionCard-BHIzmvpA.js} +1 -1
  4. package/dist/assets/{AudioPreview-64v3DHym.js → AudioPreview-B-vGM5ZE.js} +1 -1
  5. package/dist/assets/{Auth-D6M98il0.js → Auth-BSB5j2IR.js} +1 -1
  6. package/dist/assets/{Bare-lk4XPATw.js → Bare-CGpzlaiP.js} +1 -1
  7. package/dist/assets/{BotPlaceholder-DUy5q_lY.js → BotPlaceholder-SAI3U7Vk.js} +1 -1
  8. package/dist/assets/{BottomFooter-Djj35Gv6.js → BottomFooter-BPu8gJnO.js} +1 -1
  9. package/dist/assets/{Callback-CUicfzzX.js → Callback-DI7I7e9o.js} +1 -1
  10. package/dist/assets/{CodeSnippet-C6IMRLP5.js → CodeSnippet-nfL3VN6b.js} +1 -1
  11. package/dist/assets/{Console-tm3KZ31s.js → Console-C1p-WtRP.js} +1 -1
  12. package/dist/assets/{Consumption-Bwtr-oKm.js → Consumption-JN0X0f8c.js} +1 -1
  13. package/dist/assets/{Conversation-BR2OsN-v.js → Conversation-C2YzpBK3.js} +1 -1
  14. package/dist/assets/{Conversation-Cx2puCv5.js → Conversation-C348UZiO.js} +1 -1
  15. package/dist/assets/{CopyToClipboard-BC8MgUTU.js → CopyToClipboard-DOx2-KTG.js} +1 -1
  16. package/dist/assets/{Detail-BT1KV9_K.js → Detail-MUwXxjGI.js} +2 -2
  17. package/dist/assets/{Extra-BrfHDlNl.js → Extra-DefQxg0y.js} +1 -1
  18. package/dist/assets/{FilePreview-BsvcYriG.js → FilePreview-CibPHhpy.js} +1 -1
  19. package/dist/assets/{Hailuo-CXcL-krx.js → Hailuo-CE5R8cCt.js} +1 -1
  20. package/dist/assets/{History-BZjDOAbi.js → History-CQt5uXkC.js} +1 -1
  21. package/dist/assets/{ImagePreview-COWWmcN6.js → ImagePreview-CSSReHgL.js} +1 -1
  22. package/dist/assets/{ImageWrapper-Cm2rWx3d.js → ImageWrapper-DkF7PVGL.js} +1 -1
  23. package/dist/assets/{Index-Cw5emgdO.js → Index-B5TInMYN.js} +1 -1
  24. package/dist/assets/{Index-wIABtMV9.js → Index-B7vEEPhg.js} +1 -1
  25. package/dist/assets/{Index-BjNd8nJ_2.js → Index-BDnHLDfB2.js} +1 -1
  26. package/dist/assets/{Index-B3NFE_m2.js → Index-BIEqYgeq.js} +1 -1
  27. package/dist/assets/{Index-D_m4uHK92.js → Index-B_o8lp612.js} +1 -1
  28. package/dist/assets/{Index-CqskEb2x.js → Index-BmXYmlZt.js} +1 -1
  29. package/dist/assets/{Index-DT_HG8rV.js → Index-Bo9HAK0V.js} +1 -1
  30. package/dist/assets/{Index-Y5988nG3.js → Index-BxkXq-kP.js} +1 -1
  31. package/dist/assets/{Index-D2B6uJ-h.js → Index-ByI27Xqj.js} +1 -1
  32. package/dist/assets/{Index-jM4hJZCH.js → Index-C82TTXNf.js} +1 -1
  33. package/dist/assets/{Index-Bsr0Y0-7.js → Index-CBRHBLT-.js} +1 -1
  34. package/dist/assets/{Index-D6YsyB-8.js → Index-CCfbH63M.js} +1 -1
  35. package/dist/assets/{Index-DyI3f68Y.js → Index-CETeiJqR.js} +1 -1
  36. package/dist/assets/{Index-CM_dFqwv.js → Index-Cg-dC_Jb.js} +1 -1
  37. package/dist/assets/{Index-BKixWAdW.js → Index-Cr4TQ-xE.js} +1 -1
  38. package/dist/assets/{Index-CGMLyKiA.js → Index-DDUzpZ0O.js} +1 -1
  39. package/dist/assets/{Index-CDrAXXyt.js → Index-DNo4I4BL.js} +1 -1
  40. package/dist/assets/{Index-Dxfy1h192.js → Index-DYteu8It2.js} +1 -1
  41. package/dist/assets/{Index-a6RmlG1c.js → Index-DZx0iwsI.js} +1 -1
  42. package/dist/assets/{Index-lHrMgoRp.js → Index-DaXmhISA.js} +1 -1
  43. package/dist/assets/{Index-CCTvgJ6F.js → Index-DfVd1UkS.js} +1 -1
  44. package/dist/assets/{Index-WHvyEe86.js → Index-Do3syugm.js} +1 -1
  45. package/dist/assets/{Index-RIz17uAA.js → Index-DpbjqT2k.js} +1 -1
  46. package/dist/assets/{Index-CPCPDvtj.js → Index-DxD497tW.js} +1 -1
  47. package/dist/assets/{Index-pP7LKfCF.js → Index-FNMBrHbM.js} +1 -1
  48. package/dist/assets/{Index-B2mhxxRK.js → Index-FQ4q5-hl.js} +1 -1
  49. package/dist/assets/{Index-ROnaQL-D.js → Index-G-IlVG_I.js} +1 -1
  50. package/dist/assets/{Index-Bl91_uC82.js → Index-NTeyVOvk2.js} +1 -1
  51. package/dist/assets/{Index-BjOkqHzx.js → Index-i5okuoPn.js} +1 -1
  52. package/dist/assets/{Index-DoNGPVE6.js → Index-iKaft8ke.js} +1 -1
  53. package/dist/assets/{Index-DTLbeAxS.js → Index-q8_pYIR6.js} +1 -1
  54. package/dist/assets/{Index-9Ay0leMc.js → Index-wD6dVDos.js} +1 -1
  55. package/dist/assets/{Invitees-BILT3z2_.js → Invitees-DS4bwsvn.js} +1 -1
  56. package/dist/assets/{List-npLXSfbK.js → List-Bpu2Pidt.js} +1 -1
  57. package/dist/assets/{List-C3nDlEjr.js → List-C9Z8Wip0.js} +1 -1
  58. package/dist/assets/{List-B2Ch3yc5.js → List-DAeJuNL1.js} +1 -1
  59. package/dist/assets/{LocalTools-C3A7PNEU.js → LocalTools-CDaNo5_1.js} +1 -1
  60. package/dist/assets/{LocalTools-8kExdDm8.js → LocalTools-CHjjKZLq.js} +1 -1
  61. package/dist/assets/{Logo-BQHbeQsM.js → Logo-DdeUQOfD.js} +1 -1
  62. package/dist/assets/{Main-BdJ6YdEi.js → Main-DwWx37vb.js} +1 -1
  63. package/dist/assets/{Message-DtsaQttD.js → Message-HtQyFDWX.js} +1 -1
  64. package/dist/assets/{Model-K5ShzHzz.js → Model-BVtu2MqI.js} +1 -1
  65. package/dist/assets/{Navigator-Bv_MscZu.js → Navigator-D4znkCq3.js} +3 -3
  66. package/dist/assets/{NotFound-CuZnXKE2.js → NotFound-DUFo-kbQ.js} +1 -1
  67. package/dist/assets/{Pay-CgY8eRaL.js → Pay-BGp7Pc6d.js} +1 -1
  68. package/dist/assets/{Player-C0lraAbb.js → Player-DPDc2wPX.js} +1 -1
  69. package/dist/assets/{Poivelle-dw68Js7k.js → Poivelle-DYy7nBfz.js} +1 -1
  70. package/dist/assets/{PromptTextarea-DIx8KWwe.js → PromptTextarea-O8KxwMGn.js} +1 -1
  71. package/dist/assets/{RealtimeCall-CQB14u7k.js → RealtimeCall-BamozLji.js} +1 -1
  72. package/dist/assets/{ScheduledTasks-zGZ0ySiy.js → ScheduledTasks-DawIJs2a.js} +1 -1
  73. package/dist/assets/{Status-D-sl3ntz.js → Status-DIFSbgzO.js} +1 -1
  74. package/dist/assets/{Subscribe-DhdmXmRy.js → Subscribe-DBMALSdv.js} +1 -1
  75. package/dist/assets/{TabSwitcher-p-qcmsep.js → TabSwitcher-BtIo_WJk.js} +1 -1
  76. package/dist/assets/{Tts-DpGGF8dP.js → Tts-BFhwi7Nm.js} +1 -1
  77. package/dist/assets/{VideoPlayer-CYq2VZJJ.js → VideoPlayer-BnwIjt1E.js} +1 -1
  78. package/dist/assets/{alert-DIqm-Kad.js → alert-G37GiXIg.js} +1 -1
  79. package/dist/assets/arrow-down-B47oLEZg.js +1 -0
  80. package/dist/assets/{arrow-down-wide-narrow-sZbuga-c.js → arrow-down-wide-narrow-Bw3-m9uw.js} +1 -1
  81. package/dist/assets/arrow-left-xCa4y53k.js +1 -0
  82. package/dist/assets/arrow-right-ZB-S5Hdw.js +1 -0
  83. package/dist/assets/arrow-up-BeYMyDMK.js +1 -0
  84. package/dist/assets/{avatar-C1vjMCSH.js → avatar-BsiZaXKt.js} +1 -1
  85. package/dist/assets/{basic-Cc41Fhmw.js → basic-CUD9ixpS.js} +1 -1
  86. package/dist/assets/{book-open-BbaTABUc.js → book-open-VOA-qRz-.js} +1 -1
  87. package/dist/assets/{box-DzrSsXb8.js → box-BTYdpeSs.js} +1 -1
  88. package/dist/assets/{boxes-CbI3ri12.js → boxes-wDC71gk_.js} +1 -1
  89. package/dist/assets/{brain-yOHAoTDj.js → brain-CVKUI3Ty.js} +1 -1
  90. package/dist/assets/{chart-no-axes-combined-FKmtdBaZ.js → chart-no-axes-combined-Css_xsI4.js} +1 -1
  91. package/dist/assets/{chat-DWuPz9vw.js → chat-Cluz0DyK.js} +1 -1
  92. package/dist/assets/check-D47LmiyR.js +1 -0
  93. package/dist/assets/chevron-down-BumkMWkr.js +1 -0
  94. package/dist/assets/chevron-right-DJAkv6gb.js +1 -0
  95. package/dist/assets/circle-check-D5h_jiB2.js +1 -0
  96. package/dist/assets/{circle-question-mark-DE0O8vxY.js → circle-question-mark-PRKtc95j.js} +1 -1
  97. package/dist/assets/{clipboard-list-Rsq5M2Nz.js → clipboard-list-DS2oQz8T.js} +1 -1
  98. package/dist/assets/clock-BbOTrjoQ.js +1 -0
  99. package/dist/assets/code-DIu2zrn0.js +1 -0
  100. package/dist/assets/{codingBridge-B10viDZh.js → codingBridge-Bfu7FDAD.js} +1 -1
  101. package/dist/assets/{codingBridgeNotify-BNlDtT0c.js → codingBridgeNotify--CrnyiFc.js} +2 -2
  102. package/dist/assets/{coins-MP0mZyiq.js → coins-CbJVFUNa.js} +1 -1
  103. package/dist/assets/{collapse-0Kxpo1XO.js → collapse-D-Az5Y1x.js} +1 -1
  104. package/dist/assets/{copy-BuBuMUSy.js → copy-BV2l4S4i.js} +1 -1
  105. package/dist/assets/{createTaskActions-HLn9rRlN.js → createTaskActions-Dc-9CHrk.js} +1 -1
  106. package/dist/assets/{digitalhuman-B88DD4iR.js → digitalhuman-Dz67yLQj.js} +1 -1
  107. package/dist/assets/{dollar-sign-atK6VBbL.js → dollar-sign-C1g65vkD.js} +1 -1
  108. package/dist/assets/{download-BfG9EpAP.js → download-DH4XAzhp.js} +1 -1
  109. package/dist/assets/{drawer-DcAaZIVn.js → drawer-BF8tPGkj.js} +1 -1
  110. package/dist/assets/{dropdown-CsUCrZAZ.js → dropdown-BPFUku-f.js} +1 -1
  111. package/dist/assets/{dropdown-BK55ixdu.js → dropdown-Dxiw3zEy.js} +1 -1
  112. package/dist/assets/{ellipsis-In1Yb9VJ.js → ellipsis-Dne0PaxK.js} +1 -1
  113. package/dist/assets/{esm-CS65Xs2R.js → esm-BLmcHm-_.js} +1 -1
  114. package/dist/assets/{esm-Br7a3VFs.js → esm-D2EUd9-p.js} +2 -2
  115. package/dist/assets/{esm-C06KdT5r.js → esm-D3RGWycH.js} +1 -1
  116. package/dist/assets/{esm-CJSkUzDW.js → esm-D48kK9Ia.js} +3 -3
  117. package/dist/assets/{esm-JkKD4-F_.js → esm-DcMLRHGU.js} +1 -1
  118. package/dist/assets/{esm-D4oWOswP.js → esm-VF3xOK5d.js} +2 -2
  119. package/dist/assets/esm-VeU-Svd3.js +1 -0
  120. package/dist/assets/{external-link-BEIhmD26.js → external-link-Y1fuqa_d.js} +1 -1
  121. package/dist/assets/{eye-C1bTVOBo.js → eye-uumNqt6F.js} +1 -1
  122. package/dist/assets/{file-DD9Lna7S.js → file-B6BY8JCh.js} +1 -1
  123. package/dist/assets/{file-output-bhQpbo5l.js → file-output-BRGppmHm.js} +1 -1
  124. package/dist/assets/{file-text-BN1gU3ZM.js → file-text-BD_ZgyAJ.js} +1 -1
  125. package/dist/assets/{fish-Dpe8gRq6.js → fish-D0SCi3ei.js} +1 -1
  126. package/dist/assets/{flux-BuA3BIs0.js → flux-QvdaqKdp.js} +1 -1
  127. package/dist/assets/{folder-rv9DxoE4.js → folder-D8OqMpU-.js} +1 -1
  128. package/dist/assets/gauge-kqBdc9W1.js +1 -0
  129. package/dist/assets/{globe-PJ9sTZNb.js → globe-DogeYs6l.js} +1 -1
  130. package/dist/assets/{grokvideo-fqvMBEh2.js → grokvideo-DyWrWpO4.js} +1 -1
  131. package/dist/assets/{hailuo-BOh0rePI.js → hailuo-m02yWO8T.js} +1 -1
  132. package/dist/assets/{headphones-CR_6T7Wm.js → headphones-B24PnKmj.js} +1 -1
  133. package/dist/assets/{history-ba0-pw0K.js → history-hh_iVs0t.js} +1 -1
  134. package/dist/assets/{house-BnLmSfxc.js → house-DMuPgP0K.js} +1 -1
  135. package/dist/assets/{image-B13GFkdr.js → image-4hDRDwRY.js} +1 -1
  136. package/dist/assets/{index-S2D3KxIN.js → index-dzU0SACS.js} +3 -3
  137. package/dist/assets/{index.browser.esm-9DXoovs-.js → index.browser.esm-DEBg8Czw.js} +1 -1
  138. package/dist/assets/{index.es-CR3OWAv9.js → index.es-B_JRhb1z.js} +1 -1
  139. package/dist/assets/{info-B5kD0bjW.js → info-C7eq8W70.js} +1 -1
  140. package/dist/assets/{input-number-bfnLLHoF.js → input-number-DwjoHB_t.js} +1 -1
  141. package/dist/assets/{key-round-Cu7RQ2TD.js → key-round-CbX1QjS3.js} +1 -1
  142. package/dist/assets/{kling-2hKUY8Vt.js → kling-Uz16T18I.js} +1 -1
  143. package/dist/assets/{languages-DyqDD_jY.js → languages-kMgQhORN.js} +1 -1
  144. package/dist/assets/{laptop-CkBPu-wQ.js → laptop--KTFz907.js} +1 -1
  145. package/dist/assets/{lightbulb-Bt0-3_2v.js → lightbulb-Btwo92TP.js} +1 -1
  146. package/dist/assets/{link-B2fUiu3P.js → link-BHUi4UzQ.js} +1 -1
  147. package/dist/assets/loader-circle-Chlmw50N.js +1 -0
  148. package/dist/assets/{lock-BN9HCeSw.js → lock-HFF7LqQ6.js} +1 -1
  149. package/dist/assets/{luma-DfCvm1--.js → luma-B8gBcwfK.js} +1 -1
  150. package/dist/assets/{maestro-Dwk7RTTU.js → maestro-DtHatUjf.js} +1 -1
  151. package/dist/assets/{mail-rIZF6fYg.js → mail-Cf8LFguX.js} +1 -1
  152. package/dist/assets/{message-circle-BwF7ok3T.js → message-circle-75uDV2HU.js} +1 -1
  153. package/dist/assets/{mic-hCKzZgRm.js → mic-U9HFofCv.js} +1 -1
  154. package/dist/assets/{midjourney-D9afYoFk.js → midjourney-DLsZDLHN.js} +1 -1
  155. package/dist/assets/{mobileLocalExec-B5JnmUhl.js → mobileLocalExec-Jy6peL1O.js} +2 -2
  156. package/dist/assets/{monitor-DwUIFVs4.js → monitor-CaLaxqsl.js} +1 -1
  157. package/dist/assets/{mouse-pointer-2-DhUGQ7ZH.js → mouse-pointer-2-OdaCocrT.js} +1 -1
  158. package/dist/assets/music-2-Bntsr1pc.js +1 -0
  159. package/dist/assets/{nanobanana-DA2GduwI.js → nanobanana-Dl-ipICX.js} +1 -1
  160. package/dist/assets/{omni-xmJPCNtQ.js → omni-CI7RALc3.js} +1 -1
  161. package/dist/assets/{openaiimage-2fQ-9rfR.js → openaiimage-x5VnybkH.js} +1 -1
  162. package/dist/assets/{pagination-DtHw8A6D.js → pagination-Bzi2EMHv.js} +1 -1
  163. package/dist/assets/{pagination-V-HQo9KR.js → pagination-C5nrzUF9.js} +1 -1
  164. package/dist/assets/{pagination-C60kxWZe.js → pagination-DZKa3-YT.js} +1 -1
  165. package/dist/assets/{palette-B6_cijkw.js → palette-Dcz8R07T.js} +1 -1
  166. package/dist/assets/{paperclip-CFrO-Wn5.js → paperclip-C9CPT-QH.js} +1 -1
  167. package/dist/assets/{pause-DaFJqaMW.js → pause-B7nZk56m.js} +1 -1
  168. package/dist/assets/{pencil-B9copLoS.js → pencil-DjYsRqzY.js} +1 -1
  169. package/dist/assets/{pika-CN3tdiBe.js → pika-JthT3pXY.js} +1 -1
  170. package/dist/assets/{pixverse-BAFM6H2P.js → pixverse-BdQw9oon.js} +1 -1
  171. package/dist/assets/play-D4UKBipL.js +1 -0
  172. package/dist/assets/{plug-CJn2rNBP.js → plug-Pqr_YrfP.js} +1 -1
  173. package/dist/assets/plus-Yte47cek.js +1 -0
  174. package/dist/assets/{poivelle-ChIyy-EH.js → poivelle-BhoxBCwR.js} +1 -1
  175. package/dist/assets/{popover-Dii1mMtm.js → popover-vu3TWrhj.js} +1 -1
  176. package/dist/assets/{producer-a40YkPpg.js → producer-DqmOMlav.js} +1 -1
  177. package/dist/assets/{qrart-CVYY3JqO.js → qrart-wpmoj2Md.js} +1 -1
  178. package/dist/assets/{realtime-D-hgT5rf.js → realtime-Ce9utybp.js} +1 -1
  179. package/dist/assets/{refresh-cw-Dexs11YW.js → refresh-cw-CfsQ44rr.js} +1 -1
  180. package/dist/assets/rotate-ccw-C2vE6W20.js +1 -0
  181. package/dist/assets/rotate-cw-B3ZTq3Bo.js +1 -0
  182. package/dist/assets/{row-DJjKecw-.js → row-ig5nVOkc.js} +1 -1
  183. package/dist/assets/search-Dd9GL0kL.js +1 -0
  184. package/dist/assets/{seedance-Bkhqwyxg.js → seedance-tg7fYegi.js} +1 -1
  185. package/dist/assets/{seedream-XE2D-OF0.js → seedream-BN7uBnTq.js} +1 -1
  186. package/dist/assets/{select-wPYO0KL0.js → select--z-fac6_.js} +1 -1
  187. package/dist/assets/{serp-ISzYa1VG.js → serp-B6cjTPwx.js} +1 -1
  188. package/dist/assets/{shield-ltlAnxJj.js → shield-DTxeqQnl.js} +1 -1
  189. package/dist/assets/{shuffle-DmJvfh5Q.js → shuffle-BGv-o6iw.js} +1 -1
  190. package/dist/assets/{slider-y-dr3F-C.js → slider-7iC9uVCH.js} +1 -1
  191. package/dist/assets/{sliders-horizontal-CI4HLf6g.js → sliders-horizontal-BJThi7W3.js} +1 -1
  192. package/dist/assets/{solana-wallets-BlV5vs9p.js → solana-wallets-BOOwBWgF.js} +2 -2
  193. package/dist/assets/{solana-wallets-vue-IyI9vQtZ.js → solana-wallets-vue-CeTGdA4N.js} +1 -1
  194. package/dist/assets/{sora-H7mbBzEU.js → sora-CmhEupYX.js} +1 -1
  195. package/dist/assets/{sparkles-DTtL3_VY.js → sparkles-BXttUKHs.js} +1 -1
  196. package/dist/assets/square-DUN4iYgL.js +1 -0
  197. package/dist/assets/{store-plcsEF7T.js → store-f5a0TlJm.js} +1 -1
  198. package/dist/assets/{suno-B9NnVc_f.js → suno-CMpuwwKN.js} +1 -1
  199. package/dist/assets/{switch-CGc7vZAq.js → switch-CU7Lbydn.js} +1 -1
  200. package/dist/assets/{table-BUZvX-Et.js → table-B1ktVOIV.js} +1 -1
  201. package/dist/assets/{tabs-CeP4BX60.js → tabs-CMeHhbQd.js} +1 -1
  202. package/dist/assets/{tag-Brs_vqpG.js → tag-D88Sfg4N.js} +1 -1
  203. package/dist/assets/terminal-BXyA_hw_.js +1 -0
  204. package/dist/assets/{time-picker-DcBgjET5.js → time-picker-D3G4t_oE.js} +1 -1
  205. package/dist/assets/{tooltip-DjLl_Tv9.js → tooltip-CVVApYjJ.js} +1 -1
  206. package/dist/assets/{trash-2-jm25a3wz.js → trash-2-B7h9iX5Q.js} +1 -1
  207. package/dist/assets/{triangle-alert-RGg8X9Hu.js → triangle-alert-C_NcfP7e.js} +1 -1
  208. package/dist/assets/{upload-CIMqvT63.js → upload-DRjQvPEd.js} +1 -1
  209. package/dist/assets/{upload-D-5KHpRy.js → upload-GC5EGmwp.js} +1 -1
  210. package/dist/assets/user-DAcxFEzJ.js +1 -0
  211. package/dist/assets/{veo-DrzkEdnG.js → veo-aFwNCFqW.js} +1 -1
  212. package/dist/assets/{video-CeuAAsEB.js → video-DzECS7d8.js} +1 -1
  213. package/dist/assets/{volume-2-eVailN2d.js → volume-2-P5c2kRYc.js} +1 -1
  214. package/dist/assets/{wallet-CX9SKZRT.js → wallet-Dx1JWzUk.js} +1 -1
  215. package/dist/assets/{wan-C0mdV9Rz.js → wan-BSz5Kzfp.js} +1 -1
  216. package/dist/assets/{wand-sparkles-DIimd5K-.js → wand-sparkles-BQfGRD0P.js} +1 -1
  217. package/dist/assets/{web-BVpxeVn9.js → web-Bd7fTTXa.js} +1 -1
  218. package/dist/assets/{web-BO8Wllv3.js → web-CQd8Y7AZ.js} +1 -1
  219. package/dist/assets/{web-BO5Pdh_K.js → web-Jqmx6K36.js} +1 -1
  220. package/dist/assets/{web-wBLWPFcq.js → web-bobTX3fT.js} +1 -1
  221. package/dist/assets/{web-B7xnbizz.js → web-sGhtaPRt.js} +1 -1
  222. package/dist/assets/{webextrator-aanjbblU.js → webextrator-Blj-ynVW.js} +1 -1
  223. package/dist/assets/{zap-BsvIhLIz.js → zap-BAyq1MAX.js} +1 -1
  224. package/dist/index.html +1 -1
  225. package/package.json +1 -1
  226. package/dist/assets/arrow-down-Dh452YIC.js +0 -1
  227. package/dist/assets/arrow-left-Ch_lXtQi.js +0 -1
  228. package/dist/assets/arrow-right-wyaZljl1.js +0 -1
  229. package/dist/assets/arrow-up-lL0oPCkq.js +0 -1
  230. package/dist/assets/check-pR3vm7Fd.js +0 -1
  231. package/dist/assets/chevron-down-CjOUzYER.js +0 -1
  232. package/dist/assets/chevron-right-hQDGFAdA.js +0 -1
  233. package/dist/assets/circle-check-BRrtyFQR.js +0 -1
  234. package/dist/assets/clock-CYQS4x6R.js +0 -1
  235. package/dist/assets/code-BW5Yks2E.js +0 -1
  236. package/dist/assets/esm-DJikXHl0.js +0 -1
  237. package/dist/assets/gauge-B1-tdKSR.js +0 -1
  238. package/dist/assets/loader-circle-CVdEfzJY.js +0 -1
  239. package/dist/assets/music-2-Dt2ZUjFq.js +0 -1
  240. package/dist/assets/play-V3reP3Bw.js +0 -1
  241. package/dist/assets/plus-C0Y7fZjt.js +0 -1
  242. package/dist/assets/rotate-ccw-CtkUdLFt.js +0 -1
  243. package/dist/assets/rotate-cw-B5OvUSKK.js +0 -1
  244. package/dist/assets/search-gH7NbLUO.js +0 -1
  245. package/dist/assets/square-9zBx8cT8.js +0 -1
  246. package/dist/assets/terminal-Bk-Dcy9N.js +0 -1
  247. package/dist/assets/user-CWDZ6e_c.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,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{r as v,t as y}from"./select-wPYO0KL0.js";import{t as b}from"./upload-D-5KHpRy.js";import{t as x}from"./tooltip-DjLl_Tv9.js";import{t as S}from"./alert-DIqm-Kad.js";import{t as C}from"./drawer-DcAaZIVn.js";import{t as w}from"./clock-CYQS4x6R.js";import{r as T,t as E}from"./PromptTextarea-DIx8KWwe.js";import{t as D}from"./info-B5kD0bjW.js";import{t as O}from"./trash-2-jm25a3wz.js";import{t as k}from"./triangle-alert-RGg8X9Hu.js";import{t as A}from"./wand-sparkles-DIimd5K-.js";import{gt as j}from"./constants-7uZLiijT.js";import{E as M,Gt as N,Kt as ee,Sr as te,Ti as P,Ut as F,Wt as I,Yt as L,ci as R,di as z,in as B,qt as V,wi as H,wn as U,zi as W}from"./index-S2D3KxIN.js";import{t as G}from"./CopyToClipboard-BC8MgUTU.js";import{t as K}from"./ImagePreview-COWWmcN6.js";import{n as q}from"./taskDrawerMixin-DyAUhFEq.js";import{t as J}from"./Consumption-Bwtr-oKm.js";import{a as Y,n as X,r as Z,t as Q}from"./pagination-C60kxWZe.js";import{t as ne}from"./VideoPlayer-CYq2VZJJ.js";import{t as re}from"./ApiCodeButton-DQfIqta7.js";import{t as ie}from"./BotPlaceholder-DUy5q_lY.js";var ae=_({name:`LayoutWan`,components:{MagicIcon:A,ElDrawer:C,ElButton:W},mixins:[q]}),oe={class:`main flex flex-row flex-1`},se={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)]`},ce={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function le(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`,se,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,ce,[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:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var ue=M(ae,[[`render`,le],[`__scopeId`,`data-v-c8c76881`]]),de=_({name:`ModelSelector`,components:{ElSelect:v,ElOption:y},data(){return{}},computed:{options(){return[{value:`wan2.6-t2v`,label:this.$t(`wan.button.modelT2v`)},{value:`wan2.6-i2v`,label:this.$t(`wan.button.modelI2v`)},{value:`wan2.6-i2v-flash`,label:this.$t(`wan.button.modelI2vFlash`)},{value:`wan2.6-r2v`,label:this.$t(`wan.button.modelR2v`)}]},value:{get(){return this.$store.state.wan?.config?.model},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,model:e})}}},mounted(){this.value||=j}}),fe={class:`field`},pe={class:`title font-bold`},me={class:`float-left`};function he(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,fe,[e(`h2`,pe,i(t.$t(`wan.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`wan.placeholder.select`),clearable:``},{default:p(()=>[(h(!0),s(c,null,m(t.options,t=>(h(),f(g,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,me,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var ge=M(de,[[`render`,he],[`__scopeId`,`data-v-eb090beb`]]),_e=`720p`,ve=_({name:`ResolutionSelector`,components:{ElSelect:v,ElOption:y},computed:{options(){return[{value:`480p`,label:this.$t(`wan.name.resolution480p`)},{value:`720p`,label:this.$t(`wan.name.resolution720p`)},{value:`1080p`,label:this.$t(`wan.name.resolution1080p`)}]},value:{get(){return this.$store.state.wan?.config?.resolution},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,resolution:e})}}},mounted(){this.value||=_e}}),ye={class:`field`},be={class:`title font-bold`},xe={class:`float-left`};function Se(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,ye,[e(`h2`,be,i(t.$t(`wan.name.resolution`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`wan.placeholder.select`),clearable:``},{default:p(()=>[(h(!0),s(c,null,m(t.options,t=>(h(),f(g,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,xe,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ce=M(ve,[[`render`,Se],[`__scopeId`,`data-v-3e39f44e`]]),we=5,Te=_({name:`DurationSelector`,components:{ElSelect:v,ElOption:y},computed:{options(){return[{value:5,label:this.$t(`wan.name.duration5s`)},{value:10,label:this.$t(`wan.name.duration10s`)},{value:15,label:this.$t(`wan.name.duration15s`)}]},value:{get(){return this.$store.state.wan?.config?.duration},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,duration:e})}}},mounted(){this.value||=we}}),Ee={class:`field`},De={class:`title font-bold`},Oe={class:`float-left`};function ke(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Ee,[e(`h2`,De,i(t.$t(`wan.name.duration`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`wan.placeholder.select`),clearable:``},{default:p(()=>[(h(!0),s(c,null,m(t.options,t=>(h(),f(g,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,Oe,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ae=M(Te,[[`render`,ke],[`__scopeId`,`data-v-5f35a2cf`]]),je=_({name:`ImageUrlInput`,components:{ElUpload:b,ElButton:W,InfoIcon:Y,ImagePreview:K},mixins:[V,ee,I],data(){return{fileList:[],uploadUrl:z()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e.url).filter(e=>e!==void 0)},value:{get(){return this.$store.state.wan?.config?.image_url},set(){let e=this.urls?.[0];this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,image_url:e})}}},mounted(){this.value||=void 0,this.onSetImageUrl()},methods:{onExceed(){P.warning(this.$t(`wan.message.uploadImageExceed`))},onError(){P.error(this.$t(`wan.message.uploadImageError`))},async onRemove(){P.error(this.$t(`wan.message.uploadImageError`))},onSetImageUrl(){let e=this.urls?.[0];this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,image_url:e})},async onSuccess(){this.onSetImageUrl()}}}),Me={class:`relative`},Ne={class:`flex justify-between`},Pe={class:`flex justify-start items-center`},Fe={class:`text-sm font-bold`};function Ie(t,n,c,u,d,m){let g=l(`info-icon`),_=l(`image-preview`),v=l(`el-button`),y=l(`el-upload`);return h(),s(`div`,Me,[e(`div`,Ne,[e(`div`,Pe,[e(`span`,Fe,i(t.$t(`wan.name.imageUrl`)),1),a(g,{content:t.$t(`wan.description.imageUrl`),class:`info`},null,8,[`content`])])]),a(y,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,"show-file-list":!0,limit:1,multiple:!1,"list-type":`picture`,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-remove":t.onRemove,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(h(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(v,{size:`small`,type:`primary`,class:`btn btn-upload`,round:``},{default:p(()=>[r(i(t.$t(`wan.button.uploadImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-remove`,`on-success`,`headers`])])}var Le=M(je,[[`render`,Ie],[`__scopeId`,`data-v-22b604dc`]]),Re=_({name:`PromptInput`,components:{PromptTextarea:E},computed:{prompt:{get(){return this.$store.state.wan?.config?.prompt},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,prompt:e})}}},mounted(){this.prompt||=``}});function ze(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(`wan.name.prompt`),info:e.$t(`wan.description.prompt`),placeholder:e.$t(`wan.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Be=_({name:`PresetPanel`,components:{MagicIcon:A,ElButton:W,PromptInput:M(Re,[[`render`,ze]]),ImageUrlInput:Le,ModelSelector:ge,ResolutionSelector:Ce,DurationSelector:Ae,Consumption:J},emits:[`generate`],computed:{config(){return this.$store.state.wan?.config},consumption(){return L(this.config,this.service?.cost)},service(){return this.$store.state.wan?.service},supportsResolution(){let e=this.config?.model;return e===`wan2.6-t2v`||e===`wan2.6-i2v`||e===`wan2.6-i2v-flash`},supportsDuration(){return this.config?.model===`wan2.6-t2v`},supportsImageUrl(){let e=this.config?.model;return e===`wan2.6-i2v`||e===`wan2.6-i2v-flash`}},methods:{onGenerate(){this.$emit(`generate`)}}}),Ve={class:`flex flex-col h-full`},He={class:`flex-1 overflow-y-auto p-5`},Ue={class:`flex flex-col items-center justify-center px-5 pb-5`};function We(t,n,c,u,d,m){let g=l(`prompt-input`),_=l(`model-selector`),v=l(`resolution-selector`),y=l(`duration-selector`),b=l(`image-url-input`),x=l(`consumption`),S=l(`magic-icon`),C=l(`el-button`);return h(),s(`div`,Ve,[e(`div`,He,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`}),t.supportsResolution?(h(),f(v,{key:0,class:`mb-4`})):o(``,!0),t.supportsDuration?(h(),f(y,{key:1,class:`mb-4`})):o(``,!0),t.supportsImageUrl?(h(),f(b,{key:2,class:`mb-4`})):o(``,!0)]),e(`div`,Ue,[a(x,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(C,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(S,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`wan.button.generate`)),1)]),_:1},8,[`onClick`])])])}var Ge=M(Be,[[`render`,We]]),Ke=_({name:`TaskPreview`,components:{DeleteIcon:O,ChannelIcon:T,InfoIcon:D,MagicIcon:A,TimeIcon:w,WarningIcon:k,CopyToClipboard:G,ElAlert:S,VideoPlayer:ne,ElTooltip:x,ElButton:W,ApiCodeButton:re},props:{modelValue:{type:Object,required:!0}},computed:{isFailure(){let e=this.modelValue?.response;return e?.success===!1||!!e?.error||e?.state===`failed`||e?.state===`cancelled`},isWaiting(){let e=this.modelValue?.response;return e?this.isFailure?!1:[`queued`,`pending`,`processing`,`running`].includes(e.state||``)?!0:e.success!==!0&&!e.state:!0},application(){return this.$store.state.wan?.application},config(){return this.$store.state.wan?.config}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await H.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(`wan/deleteTask`,{id:e}),P.success(this.$t(`common.message.deleteTaskSuccess`))}catch{P.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e){console.debug(`on download wan video`,e),window.open(e,`_blank`)}}}),qe={class:`preview`},Je={class:`left`},Ye={class:`main`},Xe={class:`bot`},Ze={class:`datetime`},Qe=[`aria-label`],$e={class:`info`},et={key:0,class:`prompt mt-2`},tt={key:0},nt={key:1},rt={key:0,class:n({content:!0,failed:!0})},it={key:0,class:`mb-4`},at={key:1,class:n({operations:!0,"mt-2":!0})},ot={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},st={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},ct={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},lt={key:1,class:n({content:!0})},ut={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},dt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},ft={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},pt={key:2,class:n({content:!0})},mt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function ht(n,c,u,d,f,m){let g=l(`capability-presentation`),_=l(`delete-icon`),v=l(`el-tooltip`),y=l(`video-player`),b=l(`el-button`),x=l(`api-code-button`),S=l(`channel-icon`),C=l(`copy-to-clipboard`),w=l(`magic-icon`),T=l(`time-icon`),E=l(`el-alert`),D=l(`warning-icon`),O=l(`info-icon`);return h(),s(`div`,qe,[e(`div`,Je,[a(g,{capability:`wan`,part:`avatar`,class:`avatar`})]),e(`div`,Ye,[e(`div`,Xe,[a(g,{capability:`wan`,part:`name`}),e(`span`,Ze,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?(h(),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,Qe)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,$e,[n.modelValue?.request?.prompt?(h(),s(`p`,et,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,tt,` - (`+i(n.$t(`wan.status.pending`))+`) `,1)),n.modelValue?.response&&n.isWaiting?(h(),s(`span`,nt,` - (`+i(n.$t(`wan.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&!n.isFailure&&!n.isWaiting?(h(),s(`div`,rt,[n.modelValue?.response?.video_url?(h(),s(`div`,it,[a(y,{src:n.modelValue?.response?.video_url},null,8,[`src`])])):o(``,!0),n.modelValue?.response?.video_url?(h(),s(`div`,at,[a(v,{class:`box-item`,effect:`dark`,content:n.$t(`wan.message.downloadVideo`),placement:`top-start`},{default:p(()=>[a(b,{type:`info`,size:`small`,class:`mb-2`,onClick:c[1]||=t(e=>n.onDownload(n.modelValue?.response?.video_url),[`stop`])},{default:p(()=>[r(i(n.$t(`wan.button.download`)),1)]),_:1})]),_:1},8,[`content`]),a(x,{path:`/wan/videos`,body:n.modelValue?.request},null,8,[`body`])])):o(``,!0),a(E,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,ot,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.model`))+`: `+i(n.modelValue?.request?.model)+` `,1),a(C,{content:n.modelValue?.id},null,8,[`content`])])):o(``,!0),e(`p`,st,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,ct,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.isFailure?(h(),s(`div`,lt,[a(E,{closable:!1,class:`failure`},{template:p(()=>[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.failure`)),1)]),default:p(()=>[e(`p`,ut,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id},null,8,[`content`])]),e(`p`,dt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(C,{content:n.modelValue?.response?.error?.message},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,ft,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,$,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(C,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])]),_:1})])):o(``,!0),n.isWaiting?(h(),s(`div`,pt,[a(E,{closable:!1,class:`info`},{template:p(()=>[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.response?`wan.status.processing`:`wan.status.pending`)),1)]),default:p(()=>[e(`p`,mt,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])):o(``,!0)])])}var gt=_({name:`RecentPanel`,components:{TaskPreview:M(Ke,[[`render`,ht],[`__scopeId`,`data-v-3abd14f0`]]),BotPlaceholder:ie,NoTasks:Z,ScrollList:X},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.wan?.tasks,items:this.$store.state.wan?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),_t={key:0},vt={key:2,class:`w-full h-full flex items-center justify-center`};function yt(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 w-full h-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`,vt,[a(v)])):o(``,!0)],64)}var bt=_({name:`WanIndex`,components:{ConfigPanel:Ge,Layout:ue,RecentPanel:M(gt,[[`render`,yt]])},mixins:[N],inject:[`initialized`],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.wan?.status?.getApplications===R.Request},tasksLoading(){return this.$store.state.wan?.status?.getTasks===R.Request||this.fetchingTasks},credential(){return this.$store.state.wan.credential},config(){return this.$store.state.wan.config},application(){return this.$store.state.wan.application},tasks(){return this.$store.state.wan.tasks}},watch:{tasks:{handler(e,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 Q({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`wan/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`wan/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`wan/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!F(this.uploadTracker,e=>this.$t(e),e=>P.warning(e)))return;let e={...this.config,async:!0};if(!B())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}P.info(this.$t(`wan.message.startingTask`)),te(`wan`,U.generate(e,{token:t})).then(()=>{P.success(this.$t(`wan.message.startTaskSuccess`))}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?P.error(this.$t(`wan.message.usedUp`)):P.error(this.$t(`wan.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function xt(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.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var St=M(bt,[[`render`,xt]]);export{St 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{r as v,t as y}from"./select--z-fac6_.js";import{t as b}from"./upload-GC5EGmwp.js";import{t as x}from"./tooltip-CVVApYjJ.js";import{t as S}from"./alert-G37GiXIg.js";import{t as C}from"./drawer-BF8tPGkj.js";import{t as w}from"./clock-BbOTrjoQ.js";import{r as T,t as E}from"./PromptTextarea-O8KxwMGn.js";import{t as D}from"./info-C7eq8W70.js";import{t as O}from"./trash-2-B7h9iX5Q.js";import{t as k}from"./triangle-alert-C_NcfP7e.js";import{t as A}from"./wand-sparkles-BQfGRD0P.js";import{gt as j}from"./constants-7uZLiijT.js";import{E as M,Gt as N,Kt as ee,Sr as te,Ti as P,Ut as F,Wt as I,Yt as L,ci as R,di as z,in as B,qt as V,wi as H,wn as U,zi as W}from"./index-dzU0SACS.js";import{t as G}from"./CopyToClipboard-DOx2-KTG.js";import{t as K}from"./ImagePreview-CSSReHgL.js";import{n as q}from"./taskDrawerMixin-DyAUhFEq.js";import{t as J}from"./Consumption-JN0X0f8c.js";import{a as Y,n as X,r as Z,t as Q}from"./pagination-DZKa3-YT.js";import{t as ne}from"./VideoPlayer-BnwIjt1E.js";import{t as re}from"./ApiCodeButton-Ck-LkZnA.js";import{t as ie}from"./BotPlaceholder-SAI3U7Vk.js";var ae=_({name:`LayoutWan`,components:{MagicIcon:A,ElDrawer:C,ElButton:W},mixins:[q]}),oe={class:`main flex flex-row flex-1`},se={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)]`},ce={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function le(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`,se,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,ce,[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:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var ue=M(ae,[[`render`,le],[`__scopeId`,`data-v-c8c76881`]]),de=_({name:`ModelSelector`,components:{ElSelect:v,ElOption:y},data(){return{}},computed:{options(){return[{value:`wan2.6-t2v`,label:this.$t(`wan.button.modelT2v`)},{value:`wan2.6-i2v`,label:this.$t(`wan.button.modelI2v`)},{value:`wan2.6-i2v-flash`,label:this.$t(`wan.button.modelI2vFlash`)},{value:`wan2.6-r2v`,label:this.$t(`wan.button.modelR2v`)}]},value:{get(){return this.$store.state.wan?.config?.model},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,model:e})}}},mounted(){this.value||=j}}),fe={class:`field`},pe={class:`title font-bold`},me={class:`float-left`};function he(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,fe,[e(`h2`,pe,i(t.$t(`wan.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`wan.placeholder.select`),clearable:``},{default:p(()=>[(h(!0),s(c,null,m(t.options,t=>(h(),f(g,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,me,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var ge=M(de,[[`render`,he],[`__scopeId`,`data-v-eb090beb`]]),_e=`720p`,ve=_({name:`ResolutionSelector`,components:{ElSelect:v,ElOption:y},computed:{options(){return[{value:`480p`,label:this.$t(`wan.name.resolution480p`)},{value:`720p`,label:this.$t(`wan.name.resolution720p`)},{value:`1080p`,label:this.$t(`wan.name.resolution1080p`)}]},value:{get(){return this.$store.state.wan?.config?.resolution},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,resolution:e})}}},mounted(){this.value||=_e}}),ye={class:`field`},be={class:`title font-bold`},xe={class:`float-left`};function Se(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,ye,[e(`h2`,be,i(t.$t(`wan.name.resolution`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`wan.placeholder.select`),clearable:``},{default:p(()=>[(h(!0),s(c,null,m(t.options,t=>(h(),f(g,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,xe,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ce=M(ve,[[`render`,Se],[`__scopeId`,`data-v-3e39f44e`]]),we=5,Te=_({name:`DurationSelector`,components:{ElSelect:v,ElOption:y},computed:{options(){return[{value:5,label:this.$t(`wan.name.duration5s`)},{value:10,label:this.$t(`wan.name.duration10s`)},{value:15,label:this.$t(`wan.name.duration15s`)}]},value:{get(){return this.$store.state.wan?.config?.duration},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,duration:e})}}},mounted(){this.value||=we}}),Ee={class:`field`},De={class:`title font-bold`},Oe={class:`float-left`};function ke(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Ee,[e(`h2`,De,i(t.$t(`wan.name.duration`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`wan.placeholder.select`),clearable:``},{default:p(()=>[(h(!0),s(c,null,m(t.options,t=>(h(),f(g,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,Oe,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ae=M(Te,[[`render`,ke],[`__scopeId`,`data-v-5f35a2cf`]]),je=_({name:`ImageUrlInput`,components:{ElUpload:b,ElButton:W,InfoIcon:Y,ImagePreview:K},mixins:[V,ee,I],data(){return{fileList:[],uploadUrl:z()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e.url).filter(e=>e!==void 0)},value:{get(){return this.$store.state.wan?.config?.image_url},set(){let e=this.urls?.[0];this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,image_url:e})}}},mounted(){this.value||=void 0,this.onSetImageUrl()},methods:{onExceed(){P.warning(this.$t(`wan.message.uploadImageExceed`))},onError(){P.error(this.$t(`wan.message.uploadImageError`))},async onRemove(){P.error(this.$t(`wan.message.uploadImageError`))},onSetImageUrl(){let e=this.urls?.[0];this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,image_url:e})},async onSuccess(){this.onSetImageUrl()}}}),Me={class:`relative`},Ne={class:`flex justify-between`},Pe={class:`flex justify-start items-center`},Fe={class:`text-sm font-bold`};function Ie(t,n,c,u,d,m){let g=l(`info-icon`),_=l(`image-preview`),v=l(`el-button`),y=l(`el-upload`);return h(),s(`div`,Me,[e(`div`,Ne,[e(`div`,Pe,[e(`span`,Fe,i(t.$t(`wan.name.imageUrl`)),1),a(g,{content:t.$t(`wan.description.imageUrl`),class:`info`},null,8,[`content`])])]),a(y,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,"show-file-list":!0,limit:1,multiple:!1,"list-type":`picture`,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-remove":t.onRemove,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(h(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(v,{size:`small`,type:`primary`,class:`btn btn-upload`,round:``},{default:p(()=>[r(i(t.$t(`wan.button.uploadImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-remove`,`on-success`,`headers`])])}var Le=M(je,[[`render`,Ie],[`__scopeId`,`data-v-22b604dc`]]),Re=_({name:`PromptInput`,components:{PromptTextarea:E},computed:{prompt:{get(){return this.$store.state.wan?.config?.prompt},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,prompt:e})}}},mounted(){this.prompt||=``}});function ze(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(`wan.name.prompt`),info:e.$t(`wan.description.prompt`),placeholder:e.$t(`wan.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Be=_({name:`PresetPanel`,components:{MagicIcon:A,ElButton:W,PromptInput:M(Re,[[`render`,ze]]),ImageUrlInput:Le,ModelSelector:ge,ResolutionSelector:Ce,DurationSelector:Ae,Consumption:J},emits:[`generate`],computed:{config(){return this.$store.state.wan?.config},consumption(){return L(this.config,this.service?.cost)},service(){return this.$store.state.wan?.service},supportsResolution(){let e=this.config?.model;return e===`wan2.6-t2v`||e===`wan2.6-i2v`||e===`wan2.6-i2v-flash`},supportsDuration(){return this.config?.model===`wan2.6-t2v`},supportsImageUrl(){let e=this.config?.model;return e===`wan2.6-i2v`||e===`wan2.6-i2v-flash`}},methods:{onGenerate(){this.$emit(`generate`)}}}),Ve={class:`flex flex-col h-full`},He={class:`flex-1 overflow-y-auto p-5`},Ue={class:`flex flex-col items-center justify-center px-5 pb-5`};function We(t,n,c,u,d,m){let g=l(`prompt-input`),_=l(`model-selector`),v=l(`resolution-selector`),y=l(`duration-selector`),b=l(`image-url-input`),x=l(`consumption`),S=l(`magic-icon`),C=l(`el-button`);return h(),s(`div`,Ve,[e(`div`,He,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`}),t.supportsResolution?(h(),f(v,{key:0,class:`mb-4`})):o(``,!0),t.supportsDuration?(h(),f(y,{key:1,class:`mb-4`})):o(``,!0),t.supportsImageUrl?(h(),f(b,{key:2,class:`mb-4`})):o(``,!0)]),e(`div`,Ue,[a(x,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(C,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(S,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`wan.button.generate`)),1)]),_:1},8,[`onClick`])])])}var Ge=M(Be,[[`render`,We]]),Ke=_({name:`TaskPreview`,components:{DeleteIcon:O,ChannelIcon:T,InfoIcon:D,MagicIcon:A,TimeIcon:w,WarningIcon:k,CopyToClipboard:G,ElAlert:S,VideoPlayer:ne,ElTooltip:x,ElButton:W,ApiCodeButton:re},props:{modelValue:{type:Object,required:!0}},computed:{isFailure(){let e=this.modelValue?.response;return e?.success===!1||!!e?.error||e?.state===`failed`||e?.state===`cancelled`},isWaiting(){let e=this.modelValue?.response;return e?this.isFailure?!1:[`queued`,`pending`,`processing`,`running`].includes(e.state||``)?!0:e.success!==!0&&!e.state:!0},application(){return this.$store.state.wan?.application},config(){return this.$store.state.wan?.config}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await H.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(`wan/deleteTask`,{id:e}),P.success(this.$t(`common.message.deleteTaskSuccess`))}catch{P.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e){console.debug(`on download wan video`,e),window.open(e,`_blank`)}}}),qe={class:`preview`},Je={class:`left`},Ye={class:`main`},Xe={class:`bot`},Ze={class:`datetime`},Qe=[`aria-label`],$e={class:`info`},et={key:0,class:`prompt mt-2`},tt={key:0},nt={key:1},rt={key:0,class:n({content:!0,failed:!0})},it={key:0,class:`mb-4`},at={key:1,class:n({operations:!0,"mt-2":!0})},ot={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},st={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},ct={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},lt={key:1,class:n({content:!0})},ut={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},dt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},ft={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},pt={key:2,class:n({content:!0})},mt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function ht(n,c,u,d,f,m){let g=l(`capability-presentation`),_=l(`delete-icon`),v=l(`el-tooltip`),y=l(`video-player`),b=l(`el-button`),x=l(`api-code-button`),S=l(`channel-icon`),C=l(`copy-to-clipboard`),w=l(`magic-icon`),T=l(`time-icon`),E=l(`el-alert`),D=l(`warning-icon`),O=l(`info-icon`);return h(),s(`div`,qe,[e(`div`,Je,[a(g,{capability:`wan`,part:`avatar`,class:`avatar`})]),e(`div`,Ye,[e(`div`,Xe,[a(g,{capability:`wan`,part:`name`}),e(`span`,Ze,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?(h(),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,Qe)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,$e,[n.modelValue?.request?.prompt?(h(),s(`p`,et,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,tt,` - (`+i(n.$t(`wan.status.pending`))+`) `,1)),n.modelValue?.response&&n.isWaiting?(h(),s(`span`,nt,` - (`+i(n.$t(`wan.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&!n.isFailure&&!n.isWaiting?(h(),s(`div`,rt,[n.modelValue?.response?.video_url?(h(),s(`div`,it,[a(y,{src:n.modelValue?.response?.video_url},null,8,[`src`])])):o(``,!0),n.modelValue?.response?.video_url?(h(),s(`div`,at,[a(v,{class:`box-item`,effect:`dark`,content:n.$t(`wan.message.downloadVideo`),placement:`top-start`},{default:p(()=>[a(b,{type:`info`,size:`small`,class:`mb-2`,onClick:c[1]||=t(e=>n.onDownload(n.modelValue?.response?.video_url),[`stop`])},{default:p(()=>[r(i(n.$t(`wan.button.download`)),1)]),_:1})]),_:1},8,[`content`]),a(x,{path:`/wan/videos`,body:n.modelValue?.request},null,8,[`body`])])):o(``,!0),a(E,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,ot,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.model`))+`: `+i(n.modelValue?.request?.model)+` `,1),a(C,{content:n.modelValue?.id},null,8,[`content`])])):o(``,!0),e(`p`,st,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,ct,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.isFailure?(h(),s(`div`,lt,[a(E,{closable:!1,class:`failure`},{template:p(()=>[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.failure`)),1)]),default:p(()=>[e(`p`,ut,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id},null,8,[`content`])]),e(`p`,dt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(C,{content:n.modelValue?.response?.error?.message},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,ft,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,$,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(C,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])]),_:1})])):o(``,!0),n.isWaiting?(h(),s(`div`,pt,[a(E,{closable:!1,class:`info`},{template:p(()=>[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.response?`wan.status.processing`:`wan.status.pending`)),1)]),default:p(()=>[e(`p`,mt,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])):o(``,!0)])])}var gt=_({name:`RecentPanel`,components:{TaskPreview:M(Ke,[[`render`,ht],[`__scopeId`,`data-v-3abd14f0`]]),BotPlaceholder:ie,NoTasks:Z,ScrollList:X},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.wan?.tasks,items:this.$store.state.wan?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),_t={key:0},vt={key:2,class:`w-full h-full flex items-center justify-center`};function yt(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 w-full h-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`,vt,[a(v)])):o(``,!0)],64)}var bt=_({name:`WanIndex`,components:{ConfigPanel:Ge,Layout:ue,RecentPanel:M(gt,[[`render`,yt]])},mixins:[N],inject:[`initialized`],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.wan?.status?.getApplications===R.Request},tasksLoading(){return this.$store.state.wan?.status?.getTasks===R.Request||this.fetchingTasks},credential(){return this.$store.state.wan.credential},config(){return this.$store.state.wan.config},application(){return this.$store.state.wan.application},tasks(){return this.$store.state.wan.tasks}},watch:{tasks:{handler(e,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 Q({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`wan/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`wan/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`wan/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!F(this.uploadTracker,e=>this.$t(e),e=>P.warning(e)))return;let e={...this.config,async:!0};if(!B())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}P.info(this.$t(`wan.message.startingTask`)),te(`wan`,U.generate(e,{token:t})).then(()=>{P.success(this.$t(`wan.message.startTaskSuccess`))}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?P.error(this.$t(`wan.message.usedUp`)):P.error(this.$t(`wan.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function xt(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.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var St=M(bt,[[`render`,xt]]);export{St 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,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{r as y,t as b}from"./select-wPYO0KL0.js";import{t as x}from"./upload-D-5KHpRy.js";import{t as S}from"./tooltip-DjLl_Tv9.js";import{t as C}from"./alert-DIqm-Kad.js";import{n as w,r as T}from"./radio-DgDgyT2l.js";import{t as E}from"./drawer-DcAaZIVn.js";import{t as D}from"./slider-y-dr3F-C.js";import{t as O}from"./switch-CGc7vZAq.js";import{t as k}from"./clock-CYQS4x6R.js";import{t as A}from"./external-link-BEIhmD26.js";import{r as j,t as M}from"./PromptTextarea-DIx8KWwe.js";import{t as N}from"./info-B5kD0bjW.js";import{t as P}from"./message-circle-BwF7ok3T.js";import{t as F}from"./sparkles-DTtL3_VY.js";import{t as I}from"./trash-2-jm25a3wz.js";import{t as ee}from"./triangle-alert-RGg8X9Hu.js";import{t as L}from"./upload-CIMqvT63.js";import{t as R}from"./wand-sparkles-DIimd5K-.js";import{Ci as z,Si as te,Ti as B,wi as ne,xi as re}from"./constants-7uZLiijT.js";import{Ci as ie,E as V,Gt as H,Ji as U,Kt as W,Oi as G,Sr as K,Ti as q,Ut as J,Wt as Y,Yt as ae,Zn as oe,ci as X,di as se,hr as ce,in as le,qt as ue,wi as de,zi as Z}from"./index-S2D3KxIN.js";import{t as fe}from"./CopyToClipboard-BC8MgUTU.js";import{t as pe}from"./Status-D-sl3ntz.js";import{t as me}from"./ImagePreview-COWWmcN6.js";import{n as he}from"./taskDrawerMixin-DyAUhFEq.js";import{t as ge}from"./Consumption-Bwtr-oKm.js";import{a as Q,n as _e,r as ve,t as ye}from"./pagination-C60kxWZe.js";import{t as be}from"./ApiCodeButton-DQfIqta7.js";import{t as xe}from"./BotPlaceholder-DUy5q_lY.js";import{t as Se}from"./ImageWrapper-Cm2rWx3d.js";var Ce=ie(`sprout`,[[`path`,{d:`M14 9.536V7a4 4 0 0 1 4-4h1.5a.5.5 0 0 1 .5.5V5a4 4 0 0 1-4 4 4 4 0 0 0-4 4c0 2 1 3 1 5a5 5 0 0 1-1 3`,key:`139s4v`}],[`path`,{d:`M4 9a5 5 0 0 1 8 4 5 5 0 0 1-8-4`,key:`1dlkgp`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]),we=v({name:`LayoutQrart`,components:{MagicIcon:R,ElDrawer:E,ElButton:Z},mixins:[he]}),Te={class:`main flex flex-row flex-1`},Ee={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)]`},De={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Oe(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,Te,[e(`div`,Ee,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,De,[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 ke=V(we,[[`render`,Oe],[`__scopeId`,`data-v-b6a1bb95`]]),Ae=v({name:`VersionSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{label:this.$t(`qrart.type.text`),value:`text`},{label:this.$t(`qrart.type.link`),value:`link`},{label:this.$t(`qrart.type.email`),value:`email`},{label:this.$t(`qrart.type.phone`),value:`phone`},{label:this.$t(`qrart.type.sms`),value:`sms`}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.type},set(e){console.debug(`set type`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,type:e})}}},mounted(){this.value||=(console.debug(`set default type`,B),B)}}),je={class:`field`},Me={class:`text-sm font-bold title`};function Ne(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,je,[e(`span`,Me,i(t.$t(`qrart.name.type`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`qrart.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Pe=V(Ae,[[`render`,Ne],[`__scopeId`,`data-v-b4bd8f04`]]),Fe=v({name:`AspectRatioSelector`,data(){return{options:[{value:`1:1`,label:`1:1`,width:30,height:30},{value:`4:3`,label:`4:3`,width:32,height:24},{value:`3:4`,label:`3:4`,width:24,height:32},{value:`16:9`,label:`16:9`,width:32,height:18},{value:`9:16`,label:`9:16`,width:18,height:32}]}},computed:{active(){return this.options.findIndex(e=>e.value===String(this.value))||0},value:{get(){return this.$store.state.qrart?.config?.aspect_ratio},set(e){console.debug(`set aspect ratio`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,aspect_ratio:e})}}},mounted(){this.value||=`1:1`}}),Ie={class:`text-sm font-bold block mb-2`},Le={class:`items`},Re=[`onClick`],ze={class:`name`};function Be(t,r,a,o,l,u){return g(),s(`div`,null,[e(`span`,Ie,i(t.$t(`qrart.name.aspectRatio`)),1),e(`div`,Le,[(g(!0),s(c,null,h(t.options,(r,a)=>(g(),s(`div`,{key:a,class:n({active:t.active===a,item:!0}),onClick:e=>t.value=r.value},[e(`div`,{class:n([`preview`,r.label])},[e(`div`,{class:`rect`,style:m({width:r.width+`px`,height:r.height+`px`})},null,4)],2),e(`p`,ze,i(r.label),1)],10,Re))),128))])])}var Ve=V(Fe,[[`render`,Be],[`__scopeId`,`data-v-b7590ecc`]]),He=v({name:`QrwSelector`,components:{ElSlider:D,InfoIcon:Q},computed:{value:{get(){return this.$store.state.qrart?.config?.qrw||2},set(e){console.debug(`set qrw`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,qrw:e})}}},mounted(){this.value||=(console.debug(`set default qrw`),2)}}),Ue={class:`field`},We={class:`text-sm font-bold title mb-2`};function Ge(t,n,r,o,c,u){let d=l(`el-slider`),f=l(`info-icon`);return g(),s(`div`,Ue,[e(`span`,We,i(t.$t(`qrart.name.qrw`)),1),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:1.5,max:3,step:.1,class:`value`},null,8,[`modelValue`]),a(f,{content:t.$t(`qrart.description.qrw`),class:`info`},null,8,[`content`])])}var Ke=V(He,[[`render`,Ge],[`__scopeId`,`data-v-8410479c`]]),qe=v({name:`StepsSelector`,components:{ElSlider:D,InfoIcon:Q},computed:{value:{get(){return this.$store.state.qrart?.config?.steps||20},set(e){console.debug(`set steps`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,steps:e})}}},mounted(){this.value||=(console.debug(`set default steps`,20),20)}}),Je={class:`field`},Ye={class:`text-sm font-bold block mb-2`};function Xe(t,n,r,o,c,u){let d=l(`el-slider`),f=l(`info-icon`);return g(),s(`div`,Je,[e(`span`,Ye,i(t.$t(`qrart.name.steps`)),1),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:10,max:20,step:1,class:`value`},null,8,[`modelValue`]),a(f,{content:t.$t(`qrart.description.steps`),class:`info`},null,8,[`content`])])}var Ze=V(qe,[[`render`,Xe],[`__scopeId`,`data-v-0c88983e`]]),Qe=v({name:`AdvancedSelector`,components:{ElSwitch:O},computed:{value:{get(){return this.$store.state.qrart?.config?.advanced},set(e){console.debug(`set advanced`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,advanced:e})}}},mounted(){this.value===void 0&&(this.value=!1)}}),$e={class:`field`},et={class:`title font-bold`};function tt(t,n,r,o,c,u){let d=l(`el-switch`);return g(),s(`div`,$e,[e(`span`,et,i(t.$t(`qrart.name.advanced`)),1),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])}var nt=V(Qe,[[`render`,tt],[`__scopeId`,`data-v-f8ddf849`]]),rt=v({name:`MarkerShapeSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`square`,label:this.$t(`qrart.markerShape.square`)},{value:`circle`,label:this.$t(`qrart.markerShape.circle`)},{value:`plus`,label:this.$t(`qrart.markerShape.plus`)},{value:`box`,label:this.$t(`qrart.markerShape.box`)},{value:`octagon`,label:this.$t(`qrart.markerShape.octagon`)},{value:`tiny-plus`,label:this.$t(`qrart.markerShape.tinyPlus`)},{value:`random`,label:this.$t(`qrart.markerShape.random`)}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.marker_shape},set(e){console.debug(`set marker_shape`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,marker_shape:e})}}},mounted(){this.value||=re}}),it={class:`field`},at={class:`text-sm font-bold block mb-2`};function ot(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,it,[e(`span`,at,i(t.$t(`qrart.name.markerShape`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.markerShape`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var st=V(rt,[[`render`,ot],[`__scopeId`,`data-v-de71e0b0`]]),ct=v({name:`SubMarkerSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`square`,label:this.$t(`qrart.subMarker.square`)},{value:`circle`,label:this.$t(`qrart.subMarker.circle`)},{value:`plus`,label:this.$t(`qrart.subMarker.plus`)},{value:`box`,label:this.$t(`qrart.subMarker.box`)},{value:`random`,label:this.$t(`qrart.subMarker.random`)}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.sub_marker},set(e){console.debug(`set sub_marker`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,sub_marker:e})}}},mounted(){this.value||=ne}}),lt={class:`field`},ut={class:`text-sm font-bold block mb-2`};function dt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,lt,[e(`span`,ut,i(t.$t(`qrart.name.subMarker`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.subMarker`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var ft=V(ct,[[`render`,dt],[`__scopeId`,`data-v-51a39efa`]]),pt=v({name:`RotateSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:0,label:0},{value:90,label:90},{value:180,label:180},{value:270,label:270}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.rotate},set(e){console.debug(`set rotate`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,rotate:e})}}},mounted(){this.value||=0}}),mt={class:`field`},ht={class:`text-sm font-bold block mb-2`};function gt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,mt,[e(`span`,ht,i(t.$t(`qrart.name.rotate`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.rotate`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var _t=V(pt,[[`render`,gt],[`__scopeId`,`data-v-72e35835`]]),vt=v({name:`EclSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`L`,label:`L`},{value:`M`,label:`M`},{value:`Q`,label:`Q`},{value:`H`,label:`H`}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.ecl},set(e){console.debug(`set ecl`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,ecl:e})}}},mounted(){this.value||=`H`}}),yt={class:`field`},bt={class:`text-sm font-bold block mb-2`};function xt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,yt,[e(`span`,bt,i(t.$t(`qrart.name.ecl`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.ecl`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var St=V(vt,[[`render`,xt],[`__scopeId`,`data-v-b3a5e331`]]),Ct=v({name:`MarkerShapeSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`center`,label:this.$t(`qrart.position.center`)},{value:`top`,label:this.$t(`qrart.position.top`)},{value:`right`,label:this.$t(`qrart.position.right`)},{value:`bottom`,label:this.$t(`qrart.position.bottom`)},{value:`left`,label:this.$t(`qrart.position.left`)},{value:`top-left`,label:this.$t(`qrart.position.topLeft`)},{value:`top-right`,label:this.$t(`qrart.position.topRight`)},{value:`bottom-left`,label:this.$t(`qrart.position.bottomLeft`)},{value:`bottom-right`,label:this.$t(`qrart.position.bottomRight`)}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.position},set(e){console.debug(`set position`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,position:e})}}},mounted(){this.value||=z}}),wt={class:`field`},Tt={class:`title font-bold`};function Et(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,wt,[e(`span`,Tt,i(t.$t(`qrart.name.position`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.position`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Dt=V(Ct,[[`render`,Et],[`__scopeId`,`data-v-54186505`]]),Ot=v({name:`PaddingLevelSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:0,label:0},{value:5,label:5},{value:10,label:10},{value:10,label:10},{value:15,label:15},{value:20,label:20}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.padding_level},set(e){console.debug(`set padding_level`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,padding_level:e})}}},mounted(){this.value||=5}}),kt={class:`field`},At={class:`text-sm font-bold block mb-2`};function jt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,kt,[e(`span`,At,i(t.$t(`qrart.name.paddingLevel`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.paddingLevel`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Mt=V(Ot,[[`render`,jt],[`__scopeId`,`data-v-49d801fd`]]),Nt=v({name:`PaddingNoiseSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:0,label:0},{value:.25,label:.25},{value:.5,label:.5},{value:.75,label:.75},{value:1,label:1}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.padding_noise},set(e){console.debug(`set padding_noise`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,padding_noise:e})}}},mounted(){this.value||=0}}),Pt={class:`field`},Ft={class:`text-sm font-bold block mb-2`};function It(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Pt,[e(`span`,Ft,i(t.$t(`qrart.name.paddingNoise`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.paddingNoise`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Lt=V(Nt,[[`render`,It],[`__scopeId`,`data-v-a20833bb`]]),Rt=v({name:`PixelStyleSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`square`,label:this.$t(`qrart.pixelStyle.square`)},{value:`rounded`,label:this.$t(`qrart.pixelStyle.rounded`)},{value:`dot`,label:this.$t(`qrart.pixelStyle.dot`)},{value:`squircle`,label:this.$t(`qrart.pixelStyle.squircle`)},{value:`row`,label:this.$t(`qrart.pixelStyle.row`)},{value:`column`,label:this.$t(`qrart.pixelStyle.column`)}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.pixel_style},set(e){console.debug(`set pixel_style`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,pixel_style:e})}}},mounted(){this.value||=te}}),zt={class:`field`},Bt={class:`text-sm font-bold block mb-2`};function Vt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,zt,[e(`span`,Bt,i(t.$t(`qrart.name.pixelStyle`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.pixelStyle`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ht=V(Rt,[[`render`,Vt],[`__scopeId`,`data-v-aca7f79f`]]),Ut=v({name:`SeedInput`,components:{ElInput:U},data(){return{}},computed:{value:{get(){return this.$store.state.qrart?.config?.seed},set(e){console.debug(`set seed`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,seed:e?parseInt(e):void 0})}}},mounted(){this.value||=void 0}}),Wt={class:`field`},Gt={class:`text-sm font-bold block mb-2`};function Kt(t,n,r,o,c,u){let d=l(`el-input`);return g(),s(`div`,Wt,[e(`span`,Gt,i(t.$t(`qrart.name.seed`)),1),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`qrart.placeholder.seed`)},null,8,[`modelValue`,`placeholder`])])}var qt=V(Ut,[[`render`,Kt],[`__scopeId`,`data-v-d939305d`]]),Jt=v({name:`PresetSelector`,components:{ElImage:G},data(){return{options:[{value:`sunset`,label:this.$t(`qrart.preset.sunset`),url:`https://cdn.acedata.cloud/rp1h1s.png`},{value:`floral`,label:this.$t(`qrart.preset.floral`),url:`https://cdn.acedata.cloud/upyikx.png`},{value:`snowflakes`,label:this.$t(`qrart.preset.snowflakes`),url:`https://cdn.acedata.cloud/j447da.png`},{value:`feathers`,label:this.$t(`qrart.preset.feathers`),url:`https://cdn.acedata.cloud/d2ctz9.png`},{value:`raindrops`,label:this.$t(`qrart.preset.raindrops`),url:`https://cdn.acedata.cloud/xv2t3s.png`},{value:`ultra-realism`,label:this.$t(`qrart.preset.ultraRealism`),url:`https://cdn.acedata.cloud/nlor4y.png`},{value:`epic-realms`,label:this.$t(`qrart.preset.epicRealms`),url:`https://cdn.acedata.cloud/wwzkvy.png`},{value:`intricate-studio`,label:this.$t(`qrart.preset.intricateStudio`),url:`https://cdn.acedata.cloud/4kzf5y.png`},{value:`symmetric-masterpiece`,label:this.$t(`qrart.preset.symmetricMasterpiece`),url:`https://cdn.acedata.cloud/ff4ii2.png`},{value:`luminous-highway`,label:this.$t(`qrart.preset.luminousHighway`),url:`https://cdn.acedata.cloud/cliodt.png`},{value:`celestial-journey`,label:this.$t(`qrart.preset.celestialJourney`),url:`https://cdn.acedata.cloud/ejellf.png`},{value:`neon-mech`,label:this.$t(`qrart.preset.neonMech`),url:`https://cdn.acedata.cloud/3z0y6z.png`},{value:`ethereal-low-poly`,label:this.$t(`qrart.preset.etherealLowPoly`),url:`https://cdn.acedata.cloud/36o0mm.png`},{value:`golden-vista`,label:this.$t(`qrart.preset.goldenVista`),url:`https://cdn.acedata.cloud/xa0267.png`},{value:`cinematic-expanse`,label:this.$t(`qrart.preset.cinematicExpanse`),url:`https://cdn.acedata.cloud/krl5qp.png`},{value:`cinematic-warm`,label:this.$t(`qrart.preset.cinematicWarm`),url:`https://cdn.acedata.cloud/e1aahg.png`},{value:`desolate-wilderness`,label:this.$t(`qrart.preset.desolateWilderness`),url:`https://cdn.acedata.cloud/9evqqu.png`},{value:`vibrant-palette`,label:this.$t(`qrart.preset.vibrantPalette`),url:`https://cdn.acedata.cloud/3fvsmz.png`},{value:`enigmatic-journey`,label:this.$t(`qrart.preset.enigmaticJourney`),url:`https://cdn.acedata.cloud/l6kku0.png`},{value:`timeless-cinematic`,label:this.$t(`qrart.preset.timelessCinematic`),url:`https://cdn.acedata.cloud/h5mzyn.png`},{value:`regal-galaxy`,label:this.$t(`qrart.preset.regalGalaxy`),url:`https://cdn.acedata.cloud/czkegd.png`},{value:`illustrious-canvas`,label:this.$t(`qrart.preset.illustriousCanvas`),url:`https://cdn.acedata.cloud/m8hwzh.png`},{value:`expressive-mural`,label:this.$t(`qrart.preset.expressiveMural`),url:`https://cdn.acedata.cloud/g4v1rb.png`},{value:`serene-haze`,label:this.$t(`qrart.preset.sereneHaze`),url:`https://cdn.acedata.cloud/3w3ixr.png`}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.preset},set(e){console.debug(`set qrw`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,preset:e})}}},mounted(){this.value||=``}}),Yt={class:`field`},Xt={class:`text-sm font-bold block mb-2`},Zt={class:`pane`},Qt=[`onClick`],$t={class:`name`};function en(t,r,o,u,d,f){let p=l(`el-image`);return g(),s(`div`,Yt,[e(`span`,Xt,i(t.$t(`qrart.name.preset`)),1),e(`div`,Zt,[(g(!0),s(c,null,h(t.options,(r,o)=>(g(),s(`div`,{key:o,class:n({item:!0,active:t.value===r.value}),onClick:e=>t.value===r.value?t.value=void 0:t.value=r.value},[a(p,{src:r.url,fit:`fill`,class:`preview`},null,8,[`src`]),e(`span`,$t,i(r.label),1)],10,Qt))),128))])])}var tn=V(Jt,[[`render`,en],[`__scopeId`,`data-v-65c34adf`]]),nn=v({name:`ContentInput`,components:{UploadIcon:L,ElInput:U,ElUpload:x,ElRadioGroup:T,ElButton:Z,ElRadioButton:w,ImagePreview:me},mixins:[ue,W,Y],data(){return{inputWay:`input`,fileList:[],uploadUrl:se()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.qrart?.config?.content},set(e){this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,content:e,content_image_url:void 0})}}},mounted(){this.value||=``,this.onSetContentImageUrl()},methods:{onExceed(){q.warning(this.$t(`qrart.message.uploadDocumentsExceed`))},onError(){q.error(this.$t(`qrart.message.uploadDocumentsError`))},onSetContentImageUrl(){let e=this.urls?.[0];this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,content:void 0,content_image_url:e})},async onSuccess(){this.onSetContentImageUrl()}}}),rn={class:`field`},an={class:`flex justify-between items-center mb-4`},on={class:`text-sm font-bold title`},sn={class:`flex items-center`},cn={key:2,class:`description`};function ln(t,n,c,u,d,m){let h=l(`el-radio-button`),_=l(`el-radio-group`),v=l(`el-input`),y=l(`image-preview`),b=l(`upload-icon`),x=l(`el-button`),S=l(`el-upload`);return g(),s(`div`,rn,[e(`div`,an,[e(`span`,on,i(t.$t(`qrart.name.content`)),1),e(`div`,sn,[a(_,{modelValue:t.inputWay,"onUpdate:modelValue":n[0]||=e=>t.inputWay=e},{default:p(()=>[a(h,{label:`input`},{default:p(()=>[r(i(t.$t(`qrart.inputWay.input`)),1)]),_:1}),a(h,{label:`upload`},{default:p(()=>[r(i(t.$t(`qrart.inputWay.upload`)),1)]),_:1})]),_:1},8,[`modelValue`])])]),t.inputWay==`input`?(g(),f(v,{key:0,modelValue:t.value,"onUpdate:modelValue":n[1]||=e=>t.value=e,class:`content`,placeholder:t.$t(`qrart.placeholder.content`)},null,8,[`modelValue`,`placeholder`])):o(``,!0),t.inputWay==`upload`?(g(),f(S,{key:1,ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[2]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`upload upload-wrapper`,limit:1,multiple:!1,"list-type":`picture`,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[a(y,{url:e.url||e.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])]),default:p(()=>[a(x,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`qrart.button.uploadQr`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])):o(``,!0),t.inputWay==`upload`?(g(),s(`p`,cn,i(t.$t(`qrart.message.uploadQr`)),1)):o(``,!0)])}var un=V(nn,[[`render`,ln],[`__scopeId`,`data-v-fad0a7db`]]),dn=v({name:`PromptInput`,components:{PromptTextarea:M},computed:{value:{get(){return this.$store.state.qrart?.config?.prompt},set(e){this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,prompt:e})}}},mounted(){this.value||=``}});function fn(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.value,"onUpdate:modelValue":t[0]||=t=>e.value=t,title:e.$t(`qrart.name.prompt`),placeholder:e.$t(`qrart.placeholder.prompt`)},null,8,[`modelValue`,`title`,`placeholder`])}var pn=v({name:`ConfigPanel`,components:{MagicIcon:R,ElButton:Z,Consumption:ge,TypeSelector:Pe,PositionSelector:Dt,PixelStyleSelector:Ht,PaddingLevelSelector:Mt,SeedInput:qt,AspectRatioSelector:Ve,QrwSelector:Ke,EclSelector:St,StepsSelector:Ze,PaddingNoiseSelector:Lt,AdvancedSelector:nt,MarkerShapeSelector:st,SubMarkerSelector:ft,RotateSelector:_t,PresetSelector:tn,ContentInput:un,PromptInput:V(dn,[[`render`,fn]])},emits:[`generate`],computed:{config(){return this.$store.state.qrart?.config},consumption(){return ae(this.config,this.service?.cost)},service(){return this.$store.state.qrart?.service}}}),mn={class:`flex flex-col h-full`},hn={class:`flex-1 overflow-y-auto p-5`},gn={class:`flex flex-col items-center justify-center px-5 pb-5`};function _n(t,n,c,u,d,m){let h=l(`type-selector`),_=l(`content-input`),v=l(`prompt-input`),y=l(`aspect-ratio-selector`),b=l(`qrw-selector`),x=l(`preset-selector`),S=l(`position-selector`),C=l(`advanced-selector`),w=l(`steps-selector`),T=l(`seed-input`),E=l(`pixel-style-selector`),D=l(`marker-shape-selector`),O=l(`sub-marker-selector`),k=l(`rotate-selector`),A=l(`ecl-selector`),j=l(`padding-level-selector`),M=l(`padding-noise-selector`),N=l(`consumption`),P=l(`magic-icon`),F=l(`el-button`);return g(),s(`div`,mn,[e(`div`,hn,[a(h,{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`}),a(C,{class:`mb-4`}),t.config?.advanced?(g(),f(w,{key:0,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(T,{key:1,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(E,{key:2,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(D,{key:3,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(O,{key:4,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(k,{key:5,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(A,{key:6,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(j,{key:7,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(M,{key:8,class:`mb-4`})):o(``,!0)]),e(`div`,gn,[a(N,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(F,{type:`primary`,class:`btn w-full`,round:``,onClick:n[0]||=e=>t.$emit(`generate`)},{default:p(()=>[a(P,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`qrart.button.generate`)),1)]),_:1})])])}var vn=V(pn,[[`render`,_n]]),yn=v({name:`TaskPreview`,components:{ChannelIcon:j,DeleteIcon:I,ExternalLinkIcon:A,GrowthIcon:Ce,InfoIcon:N,MagicIcon:R,MessageIcon:P,RewardIcon:F,TimeIcon:k,WarningIcon:ee,CopyToClipboard:fe,ElAlert:C,ElTooltip:S,ImageWrapper:Se,ApiCodeButton:be},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.qrart?.application}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await de.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(`qrart/deleteTask`,{id:e}),q.success(this.$t(`common.message.deleteTaskSuccess`))}catch{q.error(this.$t(`common.message.deleteTaskFailed`))}}},onOpenLink(e){window.open(e,`_blank`)},onReload(e){let t=e.target,n=new URL(t.src),r=n.searchParams.get(`retry`);if(!r)n.searchParams.set(`retry`,`1`);else if(parseInt(r)<2)n.searchParams.set(`retry`,(parseInt(r)+1).toString());else return;t.src=n.toString()},onOpenUrl(e){window.open(e,`_blank`)},onDownload(e){let t=document.createElement(`a`);t.href=e,t.download=e.split(`/`).pop(),t.click()}}}),bn={class:`preview w-full h-fit text-left flex flex-row mb-[15px]`},xn={class:`left`},Sn={class:`main flex-1 w-[calc(100%-70px)] min-w-0 pt-[10px] pr-[10px] pb-0 pl-[10px]`},Cn={class:`bot flex items-center text-[16px] font-bold text-[var(--el-color-primary)] overflow-hidden whitespace-nowrap`},wn={class:`datetime text-[12px] font-normal text-[var(--el-text-color-secondary)] ml-[10px] overflow-hidden text-ellipsis`},Tn=[`aria-label`],En={class:`info`},Dn={key:0,class:`prompt mt-2 text-[14px] font-bold text-[var(--el-text-color-regular)] mb-[10px] overflow-hidden text-ellipsis whitespace-nowrap`},On={key:0},kn={key:0,class:n({content:!0,failed:!0})},An={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},jn={class:`description`},Mn={class:`description`},Nn={key:0,class:`description`},$={key:1,class:`description`},Pn=[`aria-label`,`title`],Fn={key:2,class:`description`},In={key:3,class:`description`},Ln={key:1,class:n({content:!0})},Rn={class:`description`},zn={class:`description`},Bn={key:0,class:`description`},Vn={class:`description`},Hn={key:2,class:n({content:!0})},Un={class:`description`};function Wn(n,c,u,d,m,h){let _=l(`capability-presentation`),v=l(`delete-icon`),y=l(`el-tooltip`),b=l(`image-wrapper`),x=l(`api-code-button`),S=l(`magic-icon`),C=l(`copy-to-clipboard`),w=l(`reward-icon`),T=l(`message-icon`),E=l(`external-link-icon`),D=l(`growth-icon`),O=l(`time-icon`),k=l(`el-alert`),A=l(`warning-icon`),j=l(`info-icon`),M=l(`channel-icon`);return g(),s(`div`,bn,[e(`div`,xn,[a(_,{capability:`qrart`,part:`avatar`,class:`avatar bg-[var(--el-bg-color)] p-[2px] w-[50px] h-[50px] m-[10px] rounded-full`})]),e(`div`,Sn,[e(`div`,Cn,[a(_,{capability:`qrart`,part:`name`}),e(`span`,wn,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(y,{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 ml-auto shrink-0 cursor-pointer border-none bg-transparent p-[4px_6px] leading-none`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Tn)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,En,[n.modelValue?.request?.prompt?(g(),s(`p`,Dn,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(g(),s(`span`,On,` - (`+i(n.$t(`qrart.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?.success===!0?(g(),s(`div`,kn,[n.modelValue?.response?.image_url?(g(),f(b,{key:0,src:n.modelValue?.response?.image_url,"raw-src":n.modelValue?.response?.image_url},null,8,[`src`,`raw-src`])):o(``,!0),e(`div`,An,[a(x,{path:`/qrart/generate`,body:n.modelValue?.request},null,8,[`body`])]),a(k,{closable:!1,class:`mt-2 success`},{default:p(()=>[e(`p`,jn,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,Mn,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.type`))+`: `+i(n.$t(`qrart.type.`+n.modelValue?.request?.type))+` `,1),a(C,{content:n.modelValue?.request?.type,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.request?.content?(g(),s(`p`,Nn,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.content`))+`: `+i(n.modelValue?.request?.content)+` `,1),a(C,{content:n.modelValue?.request?.content,class:`btn-copy`},null,8,[`content`])])):o(``,!0),n.modelValue?.request?.content_image_url?(g(),s(`p`,$,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.contentImageUrl`))+`: `,1),e(`button`,{type:`button`,class:`icon-button mr-1 cursor-pointer`,"aria-label":n.$t(`common.button.view`),title:n.$t(`common.button.view`),onClick:c[1]||=e=>n.onOpenLink(n.modelValue?.request?.content_image_url)},[a(E,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Pn)])):o(``,!0),n.modelValue?.request?.seed||n.modelValue?.response?.seed?(g(),s(`p`,Fn,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.seed`))+`: `+i(n.modelValue?.request?.seed||n.modelValue?.response?.seed)+` `,1),a(C,{content:(n.modelValue?.request?.seed||n.modelValue?.response?.seed).toString(),class:`btn-copy`},null,8,[`content`])])):o(``,!0),n.modelValue?.elapsed?(g(),s(`p`,In,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.success===!1?(g(),s(`div`,Ln,[a(k,{closable:!1,class:`failure`},{template:p(()=>[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.failure`)),1)]),default:p(()=>[e(`p`,Rn,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,zn,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(C,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Bn,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,Vn,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(C,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])]),_:1})])):o(``,!0),n.modelValue?.response?o(``,!0):(g(),s(`div`,Hn,[a(k,{closable:!1,class:`info`},{template:p(()=>[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.failure`)),1)]),default:p(()=>[e(`p`,Un,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var Gn=v({name:`RecentPanel`,components:{TaskPreview:V(yn,[[`render`,Wn],[`__scopeId`,`data-v-87029fb9`]]),BotPlaceholder:xe,NoTasks:ve,ScrollList:_e},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.qrart?.tasks,items:this.$store.state.qrart?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Kn={key:0},qn={key:2,class:`w-full h-full flex items-center justify-center`};function Jn(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`,Kn,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),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(()=>[(g(!0),s(c,null,h(e.tasks?.items,(e,t)=>(g(),f(m,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,qn,[a(v)])):o(``,!0)],64)}var Yn=v({name:`QrartIndex`,components:{ConfigPanel:vn,Layout:ke,ApplicationStatus:pe,RecentPanel:V(Gn,[[`render`,Jn]])},mixins:[H],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.qrart?.status?.getApplications===X.Request},tasksLoading(){return this.$store.state.qrart?.status?.getTasks===X.Request||this.fetchingTasks},service(){return this.$store.state.qrart.service},credential(){return this.$store.state.qrart.credential},config(){return this.$store.state.qrart.config},initializing(){return this.$store.state.qrart.status.getApplications===X.Request},needApply(){return this.$store.state.qrart.status.getApplications===X.Success&&!this.application},application(){return this.$store.state.qrart.application},tasks(){return this.$store.state.qrart.tasks},applications(){return this.$store.state.qrart.applications}},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 ye({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`qrart/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplications`),await this.$store.dispatch(`qrart/getApplications`),console.debug(`end onGetApplications`),await this.onGetTasks()},onApply(){ce.create({application:this.application}).then(({data:e})=>{this.application=e,q.success(this.$t(`application.message.applySuccessfully`))}).catch(e=>{e?.response?.data?.code===`duplication`&&q.error(this.$t(`application.message.alreadyApplied`))})},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`qrart/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!J(this.uploadTracker,e=>this.$t(e),e=>q.warning(e)))return;let e={type:this.config?.type,content:this.config?.content,content_image_url:this.config?.content_image_url,prompt:this.config?.prompt,aspect_ratio:this.config?.aspect_ratio,async:!0,qrw:this.config?.qrw,steps:this.config?.steps,preset:this.config?.preset,...this.config?.advanced?{position:this.config?.position,pixel_style:this.config?.pixel_style,marker_shape:this.config?.marker_shape,sub_marker:this.config?.sub_marker,rotate:this.config?.rotate,ecl:this.config?.ecl,seed:this.config?.seed,padding_level:this.config?.padding_level,padding_noise:this.config?.padding_noise}:{}};if(!le())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}q.info(this.$t(`qrart.message.startingTask`)),K(`qrart`,oe.generate(e,{token:t})).then(()=>{q.success(this.$t(`qrart.message.startTaskSuccess`))}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?q.error(this.$t(`qrart.message.usedUp`)):q.error(this.$t(`qrart.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Xn(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`application-status`),u=l(`recent-panel`),d=l(`layout`);return g(),f(d,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{initializing:e.initializing,application:e.application,applications:e.applications,service:e.service,"need-apply":e.needApply,class:`mb-4`,onRefresh:e.onGetApplication,onSelect:t[0]||=t=>e.$store.dispatch(`qrart/setApplication`,t)},null,8,[`initializing`,`application`,`applications`,`service`,`need-apply`,`onRefresh`]),a(u,{ref:`recentPanel`,class:`panel recent`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Zn=V(Yn,[[`render`,Xn],[`__scopeId`,`data-v-f87e6eb4`]]);export{Zn 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{r as y,t as b}from"./select--z-fac6_.js";import{t as x}from"./upload-GC5EGmwp.js";import{t as S}from"./tooltip-CVVApYjJ.js";import{t as C}from"./alert-G37GiXIg.js";import{n as w,r as T}from"./radio-DgDgyT2l.js";import{t as E}from"./drawer-BF8tPGkj.js";import{t as D}from"./slider-7iC9uVCH.js";import{t as O}from"./switch-CU7Lbydn.js";import{t as k}from"./clock-BbOTrjoQ.js";import{t as A}from"./external-link-Y1fuqa_d.js";import{r as j,t as M}from"./PromptTextarea-O8KxwMGn.js";import{t as N}from"./info-C7eq8W70.js";import{t as P}from"./message-circle-75uDV2HU.js";import{t as F}from"./sparkles-BXttUKHs.js";import{t as I}from"./trash-2-B7h9iX5Q.js";import{t as ee}from"./triangle-alert-C_NcfP7e.js";import{t as L}from"./upload-DRjQvPEd.js";import{t as R}from"./wand-sparkles-BQfGRD0P.js";import{Ci as z,Si as te,Ti as B,wi as ne,xi as re}from"./constants-7uZLiijT.js";import{Ci as ie,E as V,Gt as H,Ji as U,Kt as W,Oi as G,Sr as K,Ti as q,Ut as J,Wt as Y,Yt as ae,Zn as oe,ci as X,di as se,hr as ce,in as le,qt as ue,wi as de,zi as Z}from"./index-dzU0SACS.js";import{t as fe}from"./CopyToClipboard-DOx2-KTG.js";import{t as pe}from"./Status-DIFSbgzO.js";import{t as me}from"./ImagePreview-CSSReHgL.js";import{n as he}from"./taskDrawerMixin-DyAUhFEq.js";import{t as ge}from"./Consumption-JN0X0f8c.js";import{a as Q,n as _e,r as ve,t as ye}from"./pagination-DZKa3-YT.js";import{t as be}from"./ApiCodeButton-Ck-LkZnA.js";import{t as xe}from"./BotPlaceholder-SAI3U7Vk.js";import{t as Se}from"./ImageWrapper-DkF7PVGL.js";var Ce=ie(`sprout`,[[`path`,{d:`M14 9.536V7a4 4 0 0 1 4-4h1.5a.5.5 0 0 1 .5.5V5a4 4 0 0 1-4 4 4 4 0 0 0-4 4c0 2 1 3 1 5a5 5 0 0 1-1 3`,key:`139s4v`}],[`path`,{d:`M4 9a5 5 0 0 1 8 4 5 5 0 0 1-8-4`,key:`1dlkgp`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]),we=v({name:`LayoutQrart`,components:{MagicIcon:R,ElDrawer:E,ElButton:Z},mixins:[he]}),Te={class:`main flex flex-row flex-1`},Ee={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)]`},De={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Oe(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,Te,[e(`div`,Ee,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,De,[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 ke=V(we,[[`render`,Oe],[`__scopeId`,`data-v-b6a1bb95`]]),Ae=v({name:`VersionSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{label:this.$t(`qrart.type.text`),value:`text`},{label:this.$t(`qrart.type.link`),value:`link`},{label:this.$t(`qrart.type.email`),value:`email`},{label:this.$t(`qrart.type.phone`),value:`phone`},{label:this.$t(`qrart.type.sms`),value:`sms`}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.type},set(e){console.debug(`set type`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,type:e})}}},mounted(){this.value||=(console.debug(`set default type`,B),B)}}),je={class:`field`},Me={class:`text-sm font-bold title`};function Ne(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,je,[e(`span`,Me,i(t.$t(`qrart.name.type`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`qrart.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Pe=V(Ae,[[`render`,Ne],[`__scopeId`,`data-v-b4bd8f04`]]),Fe=v({name:`AspectRatioSelector`,data(){return{options:[{value:`1:1`,label:`1:1`,width:30,height:30},{value:`4:3`,label:`4:3`,width:32,height:24},{value:`3:4`,label:`3:4`,width:24,height:32},{value:`16:9`,label:`16:9`,width:32,height:18},{value:`9:16`,label:`9:16`,width:18,height:32}]}},computed:{active(){return this.options.findIndex(e=>e.value===String(this.value))||0},value:{get(){return this.$store.state.qrart?.config?.aspect_ratio},set(e){console.debug(`set aspect ratio`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,aspect_ratio:e})}}},mounted(){this.value||=`1:1`}}),Ie={class:`text-sm font-bold block mb-2`},Le={class:`items`},Re=[`onClick`],ze={class:`name`};function Be(t,r,a,o,l,u){return g(),s(`div`,null,[e(`span`,Ie,i(t.$t(`qrart.name.aspectRatio`)),1),e(`div`,Le,[(g(!0),s(c,null,h(t.options,(r,a)=>(g(),s(`div`,{key:a,class:n({active:t.active===a,item:!0}),onClick:e=>t.value=r.value},[e(`div`,{class:n([`preview`,r.label])},[e(`div`,{class:`rect`,style:m({width:r.width+`px`,height:r.height+`px`})},null,4)],2),e(`p`,ze,i(r.label),1)],10,Re))),128))])])}var Ve=V(Fe,[[`render`,Be],[`__scopeId`,`data-v-b7590ecc`]]),He=v({name:`QrwSelector`,components:{ElSlider:D,InfoIcon:Q},computed:{value:{get(){return this.$store.state.qrart?.config?.qrw||2},set(e){console.debug(`set qrw`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,qrw:e})}}},mounted(){this.value||=(console.debug(`set default qrw`),2)}}),Ue={class:`field`},We={class:`text-sm font-bold title mb-2`};function Ge(t,n,r,o,c,u){let d=l(`el-slider`),f=l(`info-icon`);return g(),s(`div`,Ue,[e(`span`,We,i(t.$t(`qrart.name.qrw`)),1),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:1.5,max:3,step:.1,class:`value`},null,8,[`modelValue`]),a(f,{content:t.$t(`qrart.description.qrw`),class:`info`},null,8,[`content`])])}var Ke=V(He,[[`render`,Ge],[`__scopeId`,`data-v-8410479c`]]),qe=v({name:`StepsSelector`,components:{ElSlider:D,InfoIcon:Q},computed:{value:{get(){return this.$store.state.qrart?.config?.steps||20},set(e){console.debug(`set steps`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,steps:e})}}},mounted(){this.value||=(console.debug(`set default steps`,20),20)}}),Je={class:`field`},Ye={class:`text-sm font-bold block mb-2`};function Xe(t,n,r,o,c,u){let d=l(`el-slider`),f=l(`info-icon`);return g(),s(`div`,Je,[e(`span`,Ye,i(t.$t(`qrart.name.steps`)),1),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:10,max:20,step:1,class:`value`},null,8,[`modelValue`]),a(f,{content:t.$t(`qrart.description.steps`),class:`info`},null,8,[`content`])])}var Ze=V(qe,[[`render`,Xe],[`__scopeId`,`data-v-0c88983e`]]),Qe=v({name:`AdvancedSelector`,components:{ElSwitch:O},computed:{value:{get(){return this.$store.state.qrart?.config?.advanced},set(e){console.debug(`set advanced`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,advanced:e})}}},mounted(){this.value===void 0&&(this.value=!1)}}),$e={class:`field`},et={class:`title font-bold`};function tt(t,n,r,o,c,u){let d=l(`el-switch`);return g(),s(`div`,$e,[e(`span`,et,i(t.$t(`qrart.name.advanced`)),1),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])}var nt=V(Qe,[[`render`,tt],[`__scopeId`,`data-v-f8ddf849`]]),rt=v({name:`MarkerShapeSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`square`,label:this.$t(`qrart.markerShape.square`)},{value:`circle`,label:this.$t(`qrart.markerShape.circle`)},{value:`plus`,label:this.$t(`qrart.markerShape.plus`)},{value:`box`,label:this.$t(`qrart.markerShape.box`)},{value:`octagon`,label:this.$t(`qrart.markerShape.octagon`)},{value:`tiny-plus`,label:this.$t(`qrart.markerShape.tinyPlus`)},{value:`random`,label:this.$t(`qrart.markerShape.random`)}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.marker_shape},set(e){console.debug(`set marker_shape`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,marker_shape:e})}}},mounted(){this.value||=re}}),it={class:`field`},at={class:`text-sm font-bold block mb-2`};function ot(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,it,[e(`span`,at,i(t.$t(`qrart.name.markerShape`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.markerShape`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var st=V(rt,[[`render`,ot],[`__scopeId`,`data-v-de71e0b0`]]),ct=v({name:`SubMarkerSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`square`,label:this.$t(`qrart.subMarker.square`)},{value:`circle`,label:this.$t(`qrart.subMarker.circle`)},{value:`plus`,label:this.$t(`qrart.subMarker.plus`)},{value:`box`,label:this.$t(`qrart.subMarker.box`)},{value:`random`,label:this.$t(`qrart.subMarker.random`)}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.sub_marker},set(e){console.debug(`set sub_marker`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,sub_marker:e})}}},mounted(){this.value||=ne}}),lt={class:`field`},ut={class:`text-sm font-bold block mb-2`};function dt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,lt,[e(`span`,ut,i(t.$t(`qrart.name.subMarker`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.subMarker`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var ft=V(ct,[[`render`,dt],[`__scopeId`,`data-v-51a39efa`]]),pt=v({name:`RotateSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:0,label:0},{value:90,label:90},{value:180,label:180},{value:270,label:270}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.rotate},set(e){console.debug(`set rotate`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,rotate:e})}}},mounted(){this.value||=0}}),mt={class:`field`},ht={class:`text-sm font-bold block mb-2`};function gt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,mt,[e(`span`,ht,i(t.$t(`qrart.name.rotate`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.rotate`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var _t=V(pt,[[`render`,gt],[`__scopeId`,`data-v-72e35835`]]),vt=v({name:`EclSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`L`,label:`L`},{value:`M`,label:`M`},{value:`Q`,label:`Q`},{value:`H`,label:`H`}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.ecl},set(e){console.debug(`set ecl`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,ecl:e})}}},mounted(){this.value||=`H`}}),yt={class:`field`},bt={class:`text-sm font-bold block mb-2`};function xt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,yt,[e(`span`,bt,i(t.$t(`qrart.name.ecl`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.ecl`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var St=V(vt,[[`render`,xt],[`__scopeId`,`data-v-b3a5e331`]]),Ct=v({name:`MarkerShapeSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`center`,label:this.$t(`qrart.position.center`)},{value:`top`,label:this.$t(`qrart.position.top`)},{value:`right`,label:this.$t(`qrart.position.right`)},{value:`bottom`,label:this.$t(`qrart.position.bottom`)},{value:`left`,label:this.$t(`qrart.position.left`)},{value:`top-left`,label:this.$t(`qrart.position.topLeft`)},{value:`top-right`,label:this.$t(`qrart.position.topRight`)},{value:`bottom-left`,label:this.$t(`qrart.position.bottomLeft`)},{value:`bottom-right`,label:this.$t(`qrart.position.bottomRight`)}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.position},set(e){console.debug(`set position`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,position:e})}}},mounted(){this.value||=z}}),wt={class:`field`},Tt={class:`title font-bold`};function Et(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,wt,[e(`span`,Tt,i(t.$t(`qrart.name.position`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.position`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Dt=V(Ct,[[`render`,Et],[`__scopeId`,`data-v-54186505`]]),Ot=v({name:`PaddingLevelSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:0,label:0},{value:5,label:5},{value:10,label:10},{value:10,label:10},{value:15,label:15},{value:20,label:20}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.padding_level},set(e){console.debug(`set padding_level`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,padding_level:e})}}},mounted(){this.value||=5}}),kt={class:`field`},At={class:`text-sm font-bold block mb-2`};function jt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,kt,[e(`span`,At,i(t.$t(`qrart.name.paddingLevel`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.paddingLevel`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Mt=V(Ot,[[`render`,jt],[`__scopeId`,`data-v-49d801fd`]]),Nt=v({name:`PaddingNoiseSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:0,label:0},{value:.25,label:.25},{value:.5,label:.5},{value:.75,label:.75},{value:1,label:1}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.padding_noise},set(e){console.debug(`set padding_noise`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,padding_noise:e})}}},mounted(){this.value||=0}}),Pt={class:`field`},Ft={class:`text-sm font-bold block mb-2`};function It(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Pt,[e(`span`,Ft,i(t.$t(`qrart.name.paddingNoise`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.paddingNoise`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Lt=V(Nt,[[`render`,It],[`__scopeId`,`data-v-a20833bb`]]),Rt=v({name:`PixelStyleSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:[{value:`square`,label:this.$t(`qrart.pixelStyle.square`)},{value:`rounded`,label:this.$t(`qrart.pixelStyle.rounded`)},{value:`dot`,label:this.$t(`qrart.pixelStyle.dot`)},{value:`squircle`,label:this.$t(`qrart.pixelStyle.squircle`)},{value:`row`,label:this.$t(`qrart.pixelStyle.row`)},{value:`column`,label:this.$t(`qrart.pixelStyle.column`)}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.pixel_style},set(e){console.debug(`set pixel_style`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,pixel_style:e})}}},mounted(){this.value||=te}}),zt={class:`field`},Bt={class:`text-sm font-bold block mb-2`};function Vt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,zt,[e(`span`,Bt,i(t.$t(`qrart.name.pixelStyle`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,clearable:``,class:`value`,placeholder:t.$t(`qrart.placeholder.pixelStyle`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ht=V(Rt,[[`render`,Vt],[`__scopeId`,`data-v-aca7f79f`]]),Ut=v({name:`SeedInput`,components:{ElInput:U},data(){return{}},computed:{value:{get(){return this.$store.state.qrart?.config?.seed},set(e){console.debug(`set seed`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,seed:e?parseInt(e):void 0})}}},mounted(){this.value||=void 0}}),Wt={class:`field`},Gt={class:`text-sm font-bold block mb-2`};function Kt(t,n,r,o,c,u){let d=l(`el-input`);return g(),s(`div`,Wt,[e(`span`,Gt,i(t.$t(`qrart.name.seed`)),1),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`qrart.placeholder.seed`)},null,8,[`modelValue`,`placeholder`])])}var qt=V(Ut,[[`render`,Kt],[`__scopeId`,`data-v-d939305d`]]),Jt=v({name:`PresetSelector`,components:{ElImage:G},data(){return{options:[{value:`sunset`,label:this.$t(`qrart.preset.sunset`),url:`https://cdn.acedata.cloud/rp1h1s.png`},{value:`floral`,label:this.$t(`qrart.preset.floral`),url:`https://cdn.acedata.cloud/upyikx.png`},{value:`snowflakes`,label:this.$t(`qrart.preset.snowflakes`),url:`https://cdn.acedata.cloud/j447da.png`},{value:`feathers`,label:this.$t(`qrart.preset.feathers`),url:`https://cdn.acedata.cloud/d2ctz9.png`},{value:`raindrops`,label:this.$t(`qrart.preset.raindrops`),url:`https://cdn.acedata.cloud/xv2t3s.png`},{value:`ultra-realism`,label:this.$t(`qrart.preset.ultraRealism`),url:`https://cdn.acedata.cloud/nlor4y.png`},{value:`epic-realms`,label:this.$t(`qrart.preset.epicRealms`),url:`https://cdn.acedata.cloud/wwzkvy.png`},{value:`intricate-studio`,label:this.$t(`qrart.preset.intricateStudio`),url:`https://cdn.acedata.cloud/4kzf5y.png`},{value:`symmetric-masterpiece`,label:this.$t(`qrart.preset.symmetricMasterpiece`),url:`https://cdn.acedata.cloud/ff4ii2.png`},{value:`luminous-highway`,label:this.$t(`qrart.preset.luminousHighway`),url:`https://cdn.acedata.cloud/cliodt.png`},{value:`celestial-journey`,label:this.$t(`qrart.preset.celestialJourney`),url:`https://cdn.acedata.cloud/ejellf.png`},{value:`neon-mech`,label:this.$t(`qrart.preset.neonMech`),url:`https://cdn.acedata.cloud/3z0y6z.png`},{value:`ethereal-low-poly`,label:this.$t(`qrart.preset.etherealLowPoly`),url:`https://cdn.acedata.cloud/36o0mm.png`},{value:`golden-vista`,label:this.$t(`qrart.preset.goldenVista`),url:`https://cdn.acedata.cloud/xa0267.png`},{value:`cinematic-expanse`,label:this.$t(`qrart.preset.cinematicExpanse`),url:`https://cdn.acedata.cloud/krl5qp.png`},{value:`cinematic-warm`,label:this.$t(`qrart.preset.cinematicWarm`),url:`https://cdn.acedata.cloud/e1aahg.png`},{value:`desolate-wilderness`,label:this.$t(`qrart.preset.desolateWilderness`),url:`https://cdn.acedata.cloud/9evqqu.png`},{value:`vibrant-palette`,label:this.$t(`qrart.preset.vibrantPalette`),url:`https://cdn.acedata.cloud/3fvsmz.png`},{value:`enigmatic-journey`,label:this.$t(`qrart.preset.enigmaticJourney`),url:`https://cdn.acedata.cloud/l6kku0.png`},{value:`timeless-cinematic`,label:this.$t(`qrart.preset.timelessCinematic`),url:`https://cdn.acedata.cloud/h5mzyn.png`},{value:`regal-galaxy`,label:this.$t(`qrart.preset.regalGalaxy`),url:`https://cdn.acedata.cloud/czkegd.png`},{value:`illustrious-canvas`,label:this.$t(`qrart.preset.illustriousCanvas`),url:`https://cdn.acedata.cloud/m8hwzh.png`},{value:`expressive-mural`,label:this.$t(`qrart.preset.expressiveMural`),url:`https://cdn.acedata.cloud/g4v1rb.png`},{value:`serene-haze`,label:this.$t(`qrart.preset.sereneHaze`),url:`https://cdn.acedata.cloud/3w3ixr.png`}]}},computed:{value:{get(){return this.$store.state.qrart?.config?.preset},set(e){console.debug(`set qrw`,e),this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,preset:e})}}},mounted(){this.value||=``}}),Yt={class:`field`},Xt={class:`text-sm font-bold block mb-2`},Zt={class:`pane`},Qt=[`onClick`],$t={class:`name`};function en(t,r,o,u,d,f){let p=l(`el-image`);return g(),s(`div`,Yt,[e(`span`,Xt,i(t.$t(`qrart.name.preset`)),1),e(`div`,Zt,[(g(!0),s(c,null,h(t.options,(r,o)=>(g(),s(`div`,{key:o,class:n({item:!0,active:t.value===r.value}),onClick:e=>t.value===r.value?t.value=void 0:t.value=r.value},[a(p,{src:r.url,fit:`fill`,class:`preview`},null,8,[`src`]),e(`span`,$t,i(r.label),1)],10,Qt))),128))])])}var tn=V(Jt,[[`render`,en],[`__scopeId`,`data-v-65c34adf`]]),nn=v({name:`ContentInput`,components:{UploadIcon:L,ElInput:U,ElUpload:x,ElRadioGroup:T,ElButton:Z,ElRadioButton:w,ImagePreview:me},mixins:[ue,W,Y],data(){return{inputWay:`input`,fileList:[],uploadUrl:se()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.qrart?.config?.content},set(e){this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,content:e,content_image_url:void 0})}}},mounted(){this.value||=``,this.onSetContentImageUrl()},methods:{onExceed(){q.warning(this.$t(`qrart.message.uploadDocumentsExceed`))},onError(){q.error(this.$t(`qrart.message.uploadDocumentsError`))},onSetContentImageUrl(){let e=this.urls?.[0];this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,content:void 0,content_image_url:e})},async onSuccess(){this.onSetContentImageUrl()}}}),rn={class:`field`},an={class:`flex justify-between items-center mb-4`},on={class:`text-sm font-bold title`},sn={class:`flex items-center`},cn={key:2,class:`description`};function ln(t,n,c,u,d,m){let h=l(`el-radio-button`),_=l(`el-radio-group`),v=l(`el-input`),y=l(`image-preview`),b=l(`upload-icon`),x=l(`el-button`),S=l(`el-upload`);return g(),s(`div`,rn,[e(`div`,an,[e(`span`,on,i(t.$t(`qrart.name.content`)),1),e(`div`,sn,[a(_,{modelValue:t.inputWay,"onUpdate:modelValue":n[0]||=e=>t.inputWay=e},{default:p(()=>[a(h,{label:`input`},{default:p(()=>[r(i(t.$t(`qrart.inputWay.input`)),1)]),_:1}),a(h,{label:`upload`},{default:p(()=>[r(i(t.$t(`qrart.inputWay.upload`)),1)]),_:1})]),_:1},8,[`modelValue`])])]),t.inputWay==`input`?(g(),f(v,{key:0,modelValue:t.value,"onUpdate:modelValue":n[1]||=e=>t.value=e,class:`content`,placeholder:t.$t(`qrart.placeholder.content`)},null,8,[`modelValue`,`placeholder`])):o(``,!0),t.inputWay==`upload`?(g(),f(S,{key:1,ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[2]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`upload upload-wrapper`,limit:1,multiple:!1,"list-type":`picture`,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[a(y,{url:e.url||e.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])]),default:p(()=>[a(x,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`qrart.button.uploadQr`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])):o(``,!0),t.inputWay==`upload`?(g(),s(`p`,cn,i(t.$t(`qrart.message.uploadQr`)),1)):o(``,!0)])}var un=V(nn,[[`render`,ln],[`__scopeId`,`data-v-fad0a7db`]]),dn=v({name:`PromptInput`,components:{PromptTextarea:M},computed:{value:{get(){return this.$store.state.qrart?.config?.prompt},set(e){this.$store.commit(`qrart/setConfig`,{...this.$store.state.qrart?.config,prompt:e})}}},mounted(){this.value||=``}});function fn(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.value,"onUpdate:modelValue":t[0]||=t=>e.value=t,title:e.$t(`qrart.name.prompt`),placeholder:e.$t(`qrart.placeholder.prompt`)},null,8,[`modelValue`,`title`,`placeholder`])}var pn=v({name:`ConfigPanel`,components:{MagicIcon:R,ElButton:Z,Consumption:ge,TypeSelector:Pe,PositionSelector:Dt,PixelStyleSelector:Ht,PaddingLevelSelector:Mt,SeedInput:qt,AspectRatioSelector:Ve,QrwSelector:Ke,EclSelector:St,StepsSelector:Ze,PaddingNoiseSelector:Lt,AdvancedSelector:nt,MarkerShapeSelector:st,SubMarkerSelector:ft,RotateSelector:_t,PresetSelector:tn,ContentInput:un,PromptInput:V(dn,[[`render`,fn]])},emits:[`generate`],computed:{config(){return this.$store.state.qrart?.config},consumption(){return ae(this.config,this.service?.cost)},service(){return this.$store.state.qrart?.service}}}),mn={class:`flex flex-col h-full`},hn={class:`flex-1 overflow-y-auto p-5`},gn={class:`flex flex-col items-center justify-center px-5 pb-5`};function _n(t,n,c,u,d,m){let h=l(`type-selector`),_=l(`content-input`),v=l(`prompt-input`),y=l(`aspect-ratio-selector`),b=l(`qrw-selector`),x=l(`preset-selector`),S=l(`position-selector`),C=l(`advanced-selector`),w=l(`steps-selector`),T=l(`seed-input`),E=l(`pixel-style-selector`),D=l(`marker-shape-selector`),O=l(`sub-marker-selector`),k=l(`rotate-selector`),A=l(`ecl-selector`),j=l(`padding-level-selector`),M=l(`padding-noise-selector`),N=l(`consumption`),P=l(`magic-icon`),F=l(`el-button`);return g(),s(`div`,mn,[e(`div`,hn,[a(h,{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`}),a(C,{class:`mb-4`}),t.config?.advanced?(g(),f(w,{key:0,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(T,{key:1,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(E,{key:2,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(D,{key:3,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(O,{key:4,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(k,{key:5,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(A,{key:6,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(j,{key:7,class:`mb-4`})):o(``,!0),t.config?.advanced?(g(),f(M,{key:8,class:`mb-4`})):o(``,!0)]),e(`div`,gn,[a(N,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(F,{type:`primary`,class:`btn w-full`,round:``,onClick:n[0]||=e=>t.$emit(`generate`)},{default:p(()=>[a(P,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`qrart.button.generate`)),1)]),_:1})])])}var vn=V(pn,[[`render`,_n]]),yn=v({name:`TaskPreview`,components:{ChannelIcon:j,DeleteIcon:I,ExternalLinkIcon:A,GrowthIcon:Ce,InfoIcon:N,MagicIcon:R,MessageIcon:P,RewardIcon:F,TimeIcon:k,WarningIcon:ee,CopyToClipboard:fe,ElAlert:C,ElTooltip:S,ImageWrapper:Se,ApiCodeButton:be},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.qrart?.application}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await de.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(`qrart/deleteTask`,{id:e}),q.success(this.$t(`common.message.deleteTaskSuccess`))}catch{q.error(this.$t(`common.message.deleteTaskFailed`))}}},onOpenLink(e){window.open(e,`_blank`)},onReload(e){let t=e.target,n=new URL(t.src),r=n.searchParams.get(`retry`);if(!r)n.searchParams.set(`retry`,`1`);else if(parseInt(r)<2)n.searchParams.set(`retry`,(parseInt(r)+1).toString());else return;t.src=n.toString()},onOpenUrl(e){window.open(e,`_blank`)},onDownload(e){let t=document.createElement(`a`);t.href=e,t.download=e.split(`/`).pop(),t.click()}}}),bn={class:`preview w-full h-fit text-left flex flex-row mb-[15px]`},xn={class:`left`},Sn={class:`main flex-1 w-[calc(100%-70px)] min-w-0 pt-[10px] pr-[10px] pb-0 pl-[10px]`},Cn={class:`bot flex items-center text-[16px] font-bold text-[var(--el-color-primary)] overflow-hidden whitespace-nowrap`},wn={class:`datetime text-[12px] font-normal text-[var(--el-text-color-secondary)] ml-[10px] overflow-hidden text-ellipsis`},Tn=[`aria-label`],En={class:`info`},Dn={key:0,class:`prompt mt-2 text-[14px] font-bold text-[var(--el-text-color-regular)] mb-[10px] overflow-hidden text-ellipsis whitespace-nowrap`},On={key:0},kn={key:0,class:n({content:!0,failed:!0})},An={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},jn={class:`description`},Mn={class:`description`},Nn={key:0,class:`description`},$={key:1,class:`description`},Pn=[`aria-label`,`title`],Fn={key:2,class:`description`},In={key:3,class:`description`},Ln={key:1,class:n({content:!0})},Rn={class:`description`},zn={class:`description`},Bn={key:0,class:`description`},Vn={class:`description`},Hn={key:2,class:n({content:!0})},Un={class:`description`};function Wn(n,c,u,d,m,h){let _=l(`capability-presentation`),v=l(`delete-icon`),y=l(`el-tooltip`),b=l(`image-wrapper`),x=l(`api-code-button`),S=l(`magic-icon`),C=l(`copy-to-clipboard`),w=l(`reward-icon`),T=l(`message-icon`),E=l(`external-link-icon`),D=l(`growth-icon`),O=l(`time-icon`),k=l(`el-alert`),A=l(`warning-icon`),j=l(`info-icon`),M=l(`channel-icon`);return g(),s(`div`,bn,[e(`div`,xn,[a(_,{capability:`qrart`,part:`avatar`,class:`avatar bg-[var(--el-bg-color)] p-[2px] w-[50px] h-[50px] m-[10px] rounded-full`})]),e(`div`,Sn,[e(`div`,Cn,[a(_,{capability:`qrart`,part:`name`}),e(`span`,wn,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(y,{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 ml-auto shrink-0 cursor-pointer border-none bg-transparent p-[4px_6px] leading-none`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Tn)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,En,[n.modelValue?.request?.prompt?(g(),s(`p`,Dn,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(g(),s(`span`,On,` - (`+i(n.$t(`qrart.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?.success===!0?(g(),s(`div`,kn,[n.modelValue?.response?.image_url?(g(),f(b,{key:0,src:n.modelValue?.response?.image_url,"raw-src":n.modelValue?.response?.image_url},null,8,[`src`,`raw-src`])):o(``,!0),e(`div`,An,[a(x,{path:`/qrart/generate`,body:n.modelValue?.request},null,8,[`body`])]),a(k,{closable:!1,class:`mt-2 success`},{default:p(()=>[e(`p`,jn,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,Mn,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.type`))+`: `+i(n.$t(`qrart.type.`+n.modelValue?.request?.type))+` `,1),a(C,{content:n.modelValue?.request?.type,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.request?.content?(g(),s(`p`,Nn,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.content`))+`: `+i(n.modelValue?.request?.content)+` `,1),a(C,{content:n.modelValue?.request?.content,class:`btn-copy`},null,8,[`content`])])):o(``,!0),n.modelValue?.request?.content_image_url?(g(),s(`p`,$,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.contentImageUrl`))+`: `,1),e(`button`,{type:`button`,class:`icon-button mr-1 cursor-pointer`,"aria-label":n.$t(`common.button.view`),title:n.$t(`common.button.view`),onClick:c[1]||=e=>n.onOpenLink(n.modelValue?.request?.content_image_url)},[a(E,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Pn)])):o(``,!0),n.modelValue?.request?.seed||n.modelValue?.response?.seed?(g(),s(`p`,Fn,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.seed`))+`: `+i(n.modelValue?.request?.seed||n.modelValue?.response?.seed)+` `,1),a(C,{content:(n.modelValue?.request?.seed||n.modelValue?.response?.seed).toString(),class:`btn-copy`},null,8,[`content`])])):o(``,!0),n.modelValue?.elapsed?(g(),s(`p`,In,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.success===!1?(g(),s(`div`,Ln,[a(k,{closable:!1,class:`failure`},{template:p(()=>[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.failure`)),1)]),default:p(()=>[e(`p`,Rn,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,zn,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(C,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Bn,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,Vn,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(C,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])]),_:1})])):o(``,!0),n.modelValue?.response?o(``,!0):(g(),s(`div`,Hn,[a(k,{closable:!1,class:`info`},{template:p(()=>[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.failure`)),1)]),default:p(()=>[e(`p`,Un,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qrart.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(C,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var Gn=v({name:`RecentPanel`,components:{TaskPreview:V(yn,[[`render`,Wn],[`__scopeId`,`data-v-87029fb9`]]),BotPlaceholder:xe,NoTasks:ve,ScrollList:_e},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.qrart?.tasks,items:this.$store.state.qrart?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Kn={key:0},qn={key:2,class:`w-full h-full flex items-center justify-center`};function Jn(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`,Kn,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),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(()=>[(g(!0),s(c,null,h(e.tasks?.items,(e,t)=>(g(),f(m,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,qn,[a(v)])):o(``,!0)],64)}var Yn=v({name:`QrartIndex`,components:{ConfigPanel:vn,Layout:ke,ApplicationStatus:pe,RecentPanel:V(Gn,[[`render`,Jn]])},mixins:[H],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.qrart?.status?.getApplications===X.Request},tasksLoading(){return this.$store.state.qrart?.status?.getTasks===X.Request||this.fetchingTasks},service(){return this.$store.state.qrart.service},credential(){return this.$store.state.qrart.credential},config(){return this.$store.state.qrart.config},initializing(){return this.$store.state.qrart.status.getApplications===X.Request},needApply(){return this.$store.state.qrart.status.getApplications===X.Success&&!this.application},application(){return this.$store.state.qrart.application},tasks(){return this.$store.state.qrart.tasks},applications(){return this.$store.state.qrart.applications}},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 ye({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`qrart/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplications`),await this.$store.dispatch(`qrart/getApplications`),console.debug(`end onGetApplications`),await this.onGetTasks()},onApply(){ce.create({application:this.application}).then(({data:e})=>{this.application=e,q.success(this.$t(`application.message.applySuccessfully`))}).catch(e=>{e?.response?.data?.code===`duplication`&&q.error(this.$t(`application.message.alreadyApplied`))})},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`qrart/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!J(this.uploadTracker,e=>this.$t(e),e=>q.warning(e)))return;let e={type:this.config?.type,content:this.config?.content,content_image_url:this.config?.content_image_url,prompt:this.config?.prompt,aspect_ratio:this.config?.aspect_ratio,async:!0,qrw:this.config?.qrw,steps:this.config?.steps,preset:this.config?.preset,...this.config?.advanced?{position:this.config?.position,pixel_style:this.config?.pixel_style,marker_shape:this.config?.marker_shape,sub_marker:this.config?.sub_marker,rotate:this.config?.rotate,ecl:this.config?.ecl,seed:this.config?.seed,padding_level:this.config?.padding_level,padding_noise:this.config?.padding_noise}:{}};if(!le())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}q.info(this.$t(`qrart.message.startingTask`)),K(`qrart`,oe.generate(e,{token:t})).then(()=>{q.success(this.$t(`qrart.message.startTaskSuccess`))}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?q.error(this.$t(`qrart.message.usedUp`)):q.error(this.$t(`qrart.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Xn(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`application-status`),u=l(`recent-panel`),d=l(`layout`);return g(),f(d,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{initializing:e.initializing,application:e.application,applications:e.applications,service:e.service,"need-apply":e.needApply,class:`mb-4`,onRefresh:e.onGetApplication,onSelect:t[0]||=t=>e.$store.dispatch(`qrart/setApplication`,t)},null,8,[`initializing`,`application`,`applications`,`service`,`need-apply`,`onRefresh`]),a(u,{ref:`recentPanel`,class:`panel recent`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Zn=V(Yn,[[`render`,Xn],[`__scopeId`,`data-v-f87e6eb4`]]);export{Zn as default};
@@ -1 +1 @@
1
- import{N as e,tt as t,z as n}from"./vendor-chart-Dw-P17PN.js";import{E as r}from"./index-S2D3KxIN.js";var i=n({name:`SettingsIndex`,mounted(){let e=this.$route.query.tab||``;window.dispatchEvent(new CustomEvent(`open-user-settings`,{detail:{tab:e}}))}}),a={class:`settings-page`};function o(n,r,i,o,s,c){return t(),e(`div`,a)}var s=r(i,[[`render`,o]]);export{s as default};
1
+ import{N as e,tt as t,z as n}from"./vendor-chart-Dw-P17PN.js";import{E as r}from"./index-dzU0SACS.js";var i=n({name:`SettingsIndex`,mounted(){let e=this.$route.query.tab||``;window.dispatchEvent(new CustomEvent(`open-user-settings`,{detail:{tab:e}}))}}),a={class:`settings-page`};function o(n,r,i,o,s,c){return t(),e(`div`,a)}var s=r(i,[[`render`,o]]);export{s 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,S as c,T as l,at as u,ht as d,it as f,j as p,mt as m,qt as h,rt as g,tt as _,x as v,z as y}from"./vendor-chart-Dw-P17PN.js";import{r as b,t as x}from"./select-wPYO0KL0.js";import{t as S}from"./upload-D-5KHpRy.js";import{t as C}from"./tooltip-DjLl_Tv9.js";import{t as w}from"./alert-DIqm-Kad.js";import{t as T}from"./drawer-DcAaZIVn.js";import{t as E}from"./box-DzrSsXb8.js";import{t as D}from"./clock-CYQS4x6R.js";import{t as O}from"./external-link-BEIhmD26.js";import{r as k,t as A}from"./PromptTextarea-DIx8KWwe.js";import{t as j}from"./image-B13GFkdr.js";import{t as M}from"./info-B5kD0bjW.js";import{t as N}from"./trash-2-jm25a3wz.js";import{t as P}from"./triangle-alert-RGg8X9Hu.js";import{t as F}from"./upload-CIMqvT63.js";import{t as I}from"./wand-sparkles-DIimd5K-.js";import{t as L}from"./zap-BsvIhLIz.js";import{Jn as ee,Kn as R,Xn as z,Yn as te,Zn as ne}from"./constants-7uZLiijT.js";import{E as B,Gt as re,Kt as ie,Sr as V,Ti as H,Ut as U,Wt as W,Yt as G,ci as K,di as q,in as J,jn as Y,qt as ae,wi as oe,zi as X}from"./index-S2D3KxIN.js";import{t as se}from"./CopyToClipboard-BC8MgUTU.js";import{t as Z}from"./ImagePreview-COWWmcN6.js";import{n as ce}from"./taskDrawerMixin-DyAUhFEq.js";import{t as le}from"./Consumption-Bwtr-oKm.js";import{a as Q,n as ue,r as de,t as fe}from"./pagination-C60kxWZe.js";import{t as pe}from"./ApiCodeButton-DQfIqta7.js";import{t as me}from"./BotPlaceholder-DUy5q_lY.js";import{t as he}from"./ImageWrapper-Cm2rWx3d.js";var ge=y({name:`LayoutNanobanana`,components:{MagicIcon:I,ElDrawer:T,ElButton:X},mixins:[ce]}),_e={class:`main flex flex-row flex-1`},ve={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)]`},ye={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function be(t,n,r,i,o,c){let l=u(`magic-icon`),p=u(`el-button`),h=u(`el-drawer`);return _(),s(`div`,_e,[e(`div`,ve,[f(t.$slots,`config`,{},void 0,!0)]),e(`div`,ye,[f(t.$slots,`result`,{},void 0,!0)]),d(a(p,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:m(()=>[a(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[v,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer generator-drawer`},{default:m(()=>[f(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var xe=B(ge,[[`render`,be],[`__scopeId`,`data-v-6419fc74`]]),Se=y({name:`PromptInput`,components:{PromptTextarea:A},computed:{prompt:{get(){return this.$store.state.nanobanana?.config?.prompt},set(e){this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Ce(e,t,n,r,i,a){let o=u(`prompt-textarea`);return _(),p(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`nanobanana.name.prompt`),info:e.$t(`nanobanana.description.prompt`),placeholder:e.$t(`nanobanana.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var we=B(Se,[[`render`,Ce]]),Te=y({name:`ImageUrlsInput`,components:{UploadIcon:F,ElUpload:S,ElButton:X,InfoIcon:Q,ImagePreview:Z},mixins:[ae,ie,W],data(){return{fileList:[],uploadUrl:q()+`/api/v1/files/`,suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.nanobanana?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){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(){H.warning(this.$t(`nanobanana.message.uploadImageExceed`))},onError(){H.error(this.$t(`nanobanana.message.uploadImageError`))},onSetImageUrls(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,image_urls:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImageUrls()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url==`string`&&t.url.startsWith(`blob:`))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImageUrls()}}}),Ee={class:`field mb-[10px] flex min-h-8 w-full items-center justify-between gap-3`},De={class:`flex min-w-0 items-center`},Oe={class:`title m-0 text-[14px] font-bold`},ke={class:`file-list flex flex-wrap gap-[10px]`};function Ae(t,n,o,c,d,f){let h=u(`info-icon`),v=u(`upload-icon`),y=u(`el-button`),b=u(`el-upload`),x=u(`image-preview`);return _(),s(`div`,null,[e(`div`,Ee,[e(`div`,De,[e(`h2`,Oe,i(t.$t(`nanobanana.name.imageUrls`)),1),a(h,{content:t.$t(`nanobanana.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:5,multiple:!0,"show-file-list":!1,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:m(()=>[a(y,{size:`small`,type:`primary`,round:``},{default:m(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`nanobanana.button.uploadImageUrls`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])]),e(`div`,ke,[(_(!0),s(l,null,g(t.fileList,(e,n)=>(_(),p(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 je=B(Te,[[`render`,Ae]]),Me=y({name:`AspectRatioSelector`,components:{InfoIcon:Q},data(){return{options:[{value:`1:1`,label:`1:1`,width:20,height:20},{value:`3:2`,label:`3:2`,width:27,height:18},{value:`2:3`,label:`2:3`,width:18,height:27},{value:`16:9`,label:`16:9`,width:25,height:13},{value:`9:16`,label:`9:16`,width:13,height:25},{value:`4:3`,label:`4:3`,width:24,height:18},{value:`3:4`,label:`3:4`,width:18,height:24}]}},computed:{value(){return this.$store.state.nanobanana?.config?.aspect_ratio}},methods:{onSelect(e){let t=this.value===e?void 0:e,n={...this.$store.state.nanobanana?.config||{}};t?n.aspect_ratio=t:delete n.aspect_ratio,this.$store.commit(`nanobanana/setConfig`,n)}}}),Ne={class:`ratio`},Pe={class:`header`},Fe={class:`title font-bold`},Ie=[`aria-label`],Le=[`aria-checked`,`aria-label`,`onClick`,`onKeydown`],Re={class:`preview`},ze={class:`name`};function Be(r,o,d,f,p,m){let v=u(`info-icon`);return _(),s(`div`,Ne,[e(`div`,Pe,[e(`h2`,Fe,i(r.$t(`nanobanana.name.aspectRatio`)),1),a(v,{content:r.$t(`nanobanana.description.aspectRatio`),class:`ml-1`},null,8,[`content`])]),e(`div`,{class:`items`,role:`radiogroup`,"aria-label":r.$t(`nanobanana.name.aspectRatio`)},[(_(!0),s(l,null,g(r.options,a=>(_(),s(`div`,{key:a.value,class:n([`item`,{active:r.value===a.value}]),role:`radio`,"aria-checked":r.value===a.value,"aria-label":a.label,tabindex:`0`,onClick:e=>r.onSelect(a.value),onKeydown:[c(t(e=>r.onSelect(a.value),[`prevent`]),[`enter`]),c(t(e=>r.onSelect(a.value),[`prevent`]),[`space`])]},[e(`div`,Re,[e(`div`,{class:`rect`,style:h({width:a.width+`px`,height:a.height+`px`})},null,4)]),e(`p`,ze,i(a.label),1)],42,Le))),128))],8,Ie)])}var Ve=B(Me,[[`render`,Be],[`__scopeId`,`data-v-7131eb97`]]),He=y({name:`NanobananaModelSelector`,components:{ElSelect:b,ElOption:x,InfoIcon:Q},data(){return{options:[{value:ee,label:this.$t(`nanobanana.model.nanoBanana`)},{value:z,label:z},{value:ne,label:this.$t(`nanobanana.model.nanoBananaPro`)},{value:te,label:this.$t(`nanobanana.model.nanoBanana2`)}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.model},set(e){this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,model:e})}},modelDescription(){return this.$t(`nanobanana.description.model`)}},mounted(){this.value||=R}}),Ue={class:`field`},We={class:`label`},Ge={class:`box`},Ke={class:`title font-bold`};function qe(t,n,r,o,c,d){let f=u(`info-icon`),h=u(`el-option`),v=u(`el-select`);return _(),s(`div`,Ue,[e(`div`,We,[e(`div`,Ge,[e(`h2`,Ke,i(t.$t(`nanobanana.name.model`)),1),a(f,{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(`nanobanana.placeholder.select`)},{default:m(()=>[(_(!0),s(l,null,g(t.options,e=>(_(),p(h,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Je=B(He,[[`render`,qe],[`__scopeId`,`data-v-11cb675b`]]),Ye=y({name:`NanobananaResolutionSelector`,components:{ElSelect:b,ElOption:x,InfoIcon:Q},data(){return{cachedResolution:`1K`,options:[{value:`1K`,label:`1K`},{value:`2K`,label:`2K`},{value:`4K`,label:`4K`}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.resolution},set(e){this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,resolution:e})}},supportsResolution(){let e=this.$store.state.nanobanana?.config?.model;return e===`nano-banana-2`||e===`nano-banana-pro`}},watch:{value(e){this.supportsResolution&&e&&(this.cachedResolution=e)},supportsResolution(e){e?this.value||=this.cachedResolution||`1K`:(this.value&&(this.cachedResolution=this.value),this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,resolution:void 0}))}},mounted(){this.supportsResolution&&!this.value&&(this.value=`1K`),!this.supportsResolution&&this.value&&(this.cachedResolution=this.value,this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,resolution:void 0}))}}),Xe={class:`field`},Ze={class:`label`},Qe={class:`box`},$e={class:`title font-bold`};function et(t,n,r,o,c,d){let f=u(`info-icon`),h=u(`el-option`),v=u(`el-select`);return _(),s(`div`,Xe,[e(`div`,Ze,[e(`div`,Qe,[e(`h2`,$e,i(t.$t(`nanobanana.name.resolution`)),1),a(f,{content:t.$t(`nanobanana.description.resolutionProOnly`),class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`nanobanana.placeholder.select`),disabled:!t.supportsResolution},{default:m(()=>[(_(!0),s(l,null,g(t.options,e=>(_(),p(h,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])])}var tt=y({name:`ConfigPanel`,components:{MagicIcon:I,ElButton:X,PromptInput:we,Consumption:le,ImageUrlsInput:je,AspectRatioSelector:Ve,ModelSelector:Je,ResolutionSelector:B(Ye,[[`render`,et],[`__scopeId`,`data-v-7ab9d4d4`]])},emits:[`generate`],computed:{config(){return this.$store.state.nanobanana?.config},consumption(){let e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;return G({...e,action:t?`edit`:`generate`},this.service?.cost)},service(){return this.$store.state.nanobanana?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),nt={class:`flex flex-col h-full`},rt={class:`flex-1 overflow-y-auto p-5`},it={class:`flex flex-col items-center justify-center px-5 pb-5`};function at(t,n,o,c,l,d){let f=u(`model-selector`),p=u(`resolution-selector`),h=u(`prompt-input`),g=u(`aspect-ratio-selector`),v=u(`image-urls-input`),y=u(`consumption`),b=u(`magic-icon`),x=u(`el-button`);return _(),s(`div`,nt,[e(`div`,rt,[a(f,{class:`mb-4`}),a(p,{class:`mb-4`}),a(h,{class:`mb-4`}),a(g,{class:`mb-4`}),a(v,{class:`mb-4`})]),e(`div`,it,[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:m(()=>[a(b,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`nanobanana.button.generate`)),1)]),_:1},8,[`onClick`])])])}var ot=B(tt,[[`render`,at]]),st=y({name:`TaskPreview`,components:{ApplicationIcon:E,ChannelIcon:k,DeleteIcon:N,ExternalLinkIcon:O,ImageIcon:j,InfoIcon:M,LightningIcon:L,MagicIcon:I,TimeIcon:D,WarningIcon:P,CopyToClipboard:se,ElAlert:w,ImageWrapper:he,ElButton:X,ElTooltip:C,ImagePreview:Z,ApiCodeButton:pe},props:{modelValue:{type:Object,required:!0}},computed:{images(){let e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e},hasImages(){return this.images.some(e=>!!e?.image_url)},showResult(){let e=this.modelValue?.response;return e?e.success===!0?!0:this.hasImages&&e.success!==!1:!1}},methods:{onEdit(e){if(!e)return;console.debug(`Edit image:`,e);let t={...this.$store.state.nanobanana?.config||{}};delete t.action,t.image_urls=[e],this.$store.commit(`nanobanana/setConfig`,t)},async onDelete(){let e=this.modelValue?.id;if(e){try{await oe.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(`nanobanana/deleteTask`,{id:e}),H.success(this.$t(`common.message.deleteTaskSuccess`))}catch{H.error(this.$t(`common.message.deleteTaskFailed`))}}}}}),ct={class:`preview`},lt={class:`left`},ut={class:`main`},dt={class:`bot`},ft={class:`datetime`},pt=[`aria-label`],mt={class:`info`},ht={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},gt={key:1,class:`prompt mt-2`},_t={key:0},vt={key:0,class:n({content:!0,failed:!0})},yt={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},bt={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},xt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},St={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ct={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},wt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Tt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Et={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Dt={key:5,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Ot={key:1,class:n({content:!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:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Mt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Nt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Pt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ft={key:5,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},It={key:2,class:n({content:!0})},Lt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Rt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},zt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Bt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`};function Ht(n,c,d,f,h,v){let y=u(`capability-presentation`),b=u(`delete-icon`),x=u(`el-tooltip`),S=u(`image-preview`),C=u(`image-wrapper`),w=u(`el-button`),T=u(`api-code-button`),E=u(`application-icon`),D=u(`image-icon`),O=u(`external-link-icon`),k=u(`lightning-icon`),A=u(`magic-icon`),j=u(`copy-to-clipboard`),M=u(`time-icon`),N=u(`channel-icon`),P=u(`el-alert`),F=u(`warning-icon`),I=u(`info-icon`);return _(),s(`div`,ct,[e(`div`,lt,[a(y,{capability:`nanobanana`,part:`avatar`,class:`avatar`})]),e(`div`,ut,[e(`div`,dt,[a(y,{capability:`nanobanana`,part:`name`}),e(`span`,ft,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:m(()=>[n.modelValue?.id?(_(),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(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,pt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,mt,[n.modelValue?.request?.image_urls&&n.modelValue?.request?.image_urls.length>0?(_(),s(`div`,ht,[(_(!0),s(l,null,g(n.modelValue?.request?.image_urls,(e,t)=>(_(),p(S,{key:t,url:e,name:`image-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):o(``,!0),n.modelValue?.request?.prompt?(_(),s(`p`,gt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(_(),s(`span`,_t,` - (`+i(n.$t(`nanobanana.status.pending`))+`) `,1))])):o(``,!0)]),n.showResult?(_(),s(`div`,vt,[e(`div`,yt,[(_(!0),s(l,null,g(n.images,(e,t)=>(_(),p(C,{key:t,src:e?.image_url,"raw-src":e?.image_url},null,8,[`src`,`raw-src`]))),128))]),e(`div`,bt,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`common.button.edit`),placement:`top-start`},{default:m(()=>[a(w,{type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=t(e=>n.onEdit(n.images?.[0]?.image_url),[`stop`])},{default:m(()=>[r(i(n.$t(`common.button.edit`)),1)]),_:1})]),_:1},8,[`content`]),a(T,{path:`/nano-banana/images`,body:n.modelValue?.request},null,8,[`body`])]),a(P,{closable:!1,class:`mt-2 success`},{default:m(()=>[n.modelValue?.request?.model?(_(),s(`p`,xt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(_(),s(`p`,St,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.resolution`))+`: `+i(n.modelValue?.request?.resolution),1)])):o(``,!0),n.modelValue?.request?.aspect_ratio?(_(),s(`p`,Ct,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.aspectRatio`))+`: `+i(n.modelValue?.request?.aspect_ratio),1)])):o(``,!0),n.modelValue?.request?.action?(_(),s(`p`,wt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.task`))+`: `+i(n.modelValue?.request?.action===`generate`?n.$t(`nanobanana.name.generate`):n.$t(`nanobanana.name.edits`)),1)])):o(``,!0),e(`p`,Tt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(j,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(_(),s(`p`,Et,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(_(),s(`p`,Dt,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.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||n.modelValue?.response?.error?(_(),s(`div`,Ot,[a(P,{closable:!1,class:`failure`},{template:m(()=>[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.failure`)),1)]),default:m(()=>[n.modelValue?.request?.model?(_(),s(`p`,kt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(_(),s(`p`,At,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.resolution`))+`: `+i(n.modelValue?.request?.resolution),1)])):o(``,!0),n.modelValue?.request?.aspect_ratio?(_(),s(`p`,jt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.aspectRatio`))+`: `+i(n.modelValue?.request?.aspect_ratio),1)])):o(``,!0),n.modelValue?.request?.action?(_(),s(`p`,Mt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.task`))+`: `+i(n.modelValue?.request?.action===`generate`?n.$t(`nanobanana.name.generate`):n.$t(`nanobanana.name.edits`)),1)])):o(``,!0),e(`p`,Nt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(j,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,$,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.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?(_(),s(`p`,Pt,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(_(),s(`p`,Ft,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.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})])):(_(),s(`div`,It,[a(P,{closable:!1,class:`info`},{template:m(()=>[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.status.pending`)),1)]),default:m(()=>[n.modelValue?.request?.model?(_(),s(`p`,Lt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(_(),s(`p`,Rt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.resolution`))+`: `+i(n.modelValue?.request?.resolution),1)])):o(``,!0),n.modelValue?.request?.aspect_ratio?(_(),s(`p`,zt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.aspectRatio`))+`: `+i(n.modelValue?.request?.aspect_ratio),1)])):o(``,!0),n.modelValue?.request?.action?(_(),s(`p`,Bt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.task`))+`: `+i(n.modelValue?.request?.action===`generate`?n.$t(`nanobanana.name.generate`):n.$t(`nanobanana.name.edits`)),1)])):o(``,!0),e(`p`,Vt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(j,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var Ut=y({name:`RecentPanel`,components:{TaskPreview:B(st,[[`render`,Ht],[`__scopeId`,`data-v-8a190878`]]),BotPlaceholder:me,NoTasks:de,ScrollList:ue},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.nanobanana?.tasks,items:this.$store.state.nanobanana?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Wt={key:0},Gt={key:2,class:`w-full h-full flex items-center justify-center`};function Kt(e,t,n,r,i,c){let d=u(`bot-placeholder`),f=u(`task-preview`),h=u(`scroll-list`),v=u(`no-tasks`);return _(),s(l,null,[e.tasks?.items===void 0?(_(),s(`div`,Wt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(_(),p(h,{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:m(()=>[(_(!0),s(l,null,g(e.tasks?.items,e=>(_(),p(f,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(_(),s(`div`,Gt,[a(v)])):o(``,!0)],64)}var qt=y({name:`NanobananaIndex`,components:{ConfigPanel:ot,Layout:xe,RecentPanel:B(Ut,[[`render`,Kt]])},mixins:[re],inject:[`initialized`],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.nanobanana?.status?.getApplications===K.Request},tasksLoading(){return this.$store.state.nanobanana?.status?.getTasks===K.Request},credential(){return this.$store.state.nanobanana?.credential},config(){return this.$store.state.nanobanana?.config},application(){return this.$store.state.nanobanana?.application},tasks(){return this.$store.state.nanobanana?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await fe({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`nanobanana/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`nanobanana/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();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(`nanobanana/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})},async onGenerate(){if(!U(this.uploadTracker,e=>this.$t(e),e=>H.warning(e)))return;let e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;delete e.action,!t&&`image_urls`in e&&delete e.image_urls,e?.aspect_ratio||delete e.aspect_ratio;let n=e?.model===`nano-banana-2`||e?.model===`nano-banana-pro`;!n&&`resolution`in e&&delete e.resolution,n&&!e?.resolution&&(e.resolution=`1K`);let r={...e,action:t?`edit`:`generate`,async:!0};if(!J())return;let i=this.credential?.token;if(!i){console.error(`no token specified`);return}H.info(this.$t(`nanobanana.message.startingTask`)),V(`nanobanana`,Y.generate(r,{token:i})).then(()=>{H.success(this.$t(`nanobanana.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;t?.error?.code===`used_up`?H.error(this.$t(`nanobanana.message.usedUp`)):H.error(this.$t(`nanobanana.message.startTaskFailed`)+(t?.error?.message||``))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Jt(e,t,n,r,i,o){let s=u(`config-panel`),c=u(`recent-panel`),l=u(`layout`);return _(),p(l,null,{config:m(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:m(()=>[a(c,{ref:`recentPanel`,loading:e.loading,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Yt=B(qt,[[`render`,Jt]]);export{Yt 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,S as c,T as l,at as u,ht as d,it as f,j as p,mt as m,qt as h,rt as g,tt as _,x as v,z as y}from"./vendor-chart-Dw-P17PN.js";import{r as b,t as x}from"./select--z-fac6_.js";import{t as S}from"./upload-GC5EGmwp.js";import{t as C}from"./tooltip-CVVApYjJ.js";import{t as w}from"./alert-G37GiXIg.js";import{t as T}from"./drawer-BF8tPGkj.js";import{t as E}from"./box-BTYdpeSs.js";import{t as D}from"./clock-BbOTrjoQ.js";import{t as O}from"./external-link-Y1fuqa_d.js";import{r as k,t as A}from"./PromptTextarea-O8KxwMGn.js";import{t as j}from"./image-4hDRDwRY.js";import{t as M}from"./info-C7eq8W70.js";import{t as N}from"./trash-2-B7h9iX5Q.js";import{t as P}from"./triangle-alert-C_NcfP7e.js";import{t as F}from"./upload-DRjQvPEd.js";import{t as I}from"./wand-sparkles-BQfGRD0P.js";import{t as L}from"./zap-BAyq1MAX.js";import{Jn as ee,Kn as R,Xn as z,Yn as te,Zn as ne}from"./constants-7uZLiijT.js";import{E as B,Gt as re,Kt as ie,Sr as V,Ti as H,Ut as U,Wt as W,Yt as G,ci as K,di as q,in as J,jn as Y,qt as ae,wi as oe,zi as X}from"./index-dzU0SACS.js";import{t as se}from"./CopyToClipboard-DOx2-KTG.js";import{t as Z}from"./ImagePreview-CSSReHgL.js";import{n as ce}from"./taskDrawerMixin-DyAUhFEq.js";import{t as le}from"./Consumption-JN0X0f8c.js";import{a as Q,n as ue,r as de,t as fe}from"./pagination-DZKa3-YT.js";import{t as pe}from"./ApiCodeButton-Ck-LkZnA.js";import{t as me}from"./BotPlaceholder-SAI3U7Vk.js";import{t as he}from"./ImageWrapper-DkF7PVGL.js";var ge=y({name:`LayoutNanobanana`,components:{MagicIcon:I,ElDrawer:T,ElButton:X},mixins:[ce]}),_e={class:`main flex flex-row flex-1`},ve={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)]`},ye={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function be(t,n,r,i,o,c){let l=u(`magic-icon`),p=u(`el-button`),h=u(`el-drawer`);return _(),s(`div`,_e,[e(`div`,ve,[f(t.$slots,`config`,{},void 0,!0)]),e(`div`,ye,[f(t.$slots,`result`,{},void 0,!0)]),d(a(p,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:m(()=>[a(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[v,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer generator-drawer`},{default:m(()=>[f(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var xe=B(ge,[[`render`,be],[`__scopeId`,`data-v-6419fc74`]]),Se=y({name:`PromptInput`,components:{PromptTextarea:A},computed:{prompt:{get(){return this.$store.state.nanobanana?.config?.prompt},set(e){this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Ce(e,t,n,r,i,a){let o=u(`prompt-textarea`);return _(),p(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`nanobanana.name.prompt`),info:e.$t(`nanobanana.description.prompt`),placeholder:e.$t(`nanobanana.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var we=B(Se,[[`render`,Ce]]),Te=y({name:`ImageUrlsInput`,components:{UploadIcon:F,ElUpload:S,ElButton:X,InfoIcon:Q,ImagePreview:Z},mixins:[ae,ie,W],data(){return{fileList:[],uploadUrl:q()+`/api/v1/files/`,suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.nanobanana?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){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(){H.warning(this.$t(`nanobanana.message.uploadImageExceed`))},onError(){H.error(this.$t(`nanobanana.message.uploadImageError`))},onSetImageUrls(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,image_urls:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImageUrls()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url==`string`&&t.url.startsWith(`blob:`))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImageUrls()}}}),Ee={class:`field mb-[10px] flex min-h-8 w-full items-center justify-between gap-3`},De={class:`flex min-w-0 items-center`},Oe={class:`title m-0 text-[14px] font-bold`},ke={class:`file-list flex flex-wrap gap-[10px]`};function Ae(t,n,o,c,d,f){let h=u(`info-icon`),v=u(`upload-icon`),y=u(`el-button`),b=u(`el-upload`),x=u(`image-preview`);return _(),s(`div`,null,[e(`div`,Ee,[e(`div`,De,[e(`h2`,Oe,i(t.$t(`nanobanana.name.imageUrls`)),1),a(h,{content:t.$t(`nanobanana.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:5,multiple:!0,"show-file-list":!1,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:m(()=>[a(y,{size:`small`,type:`primary`,round:``},{default:m(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`nanobanana.button.uploadImageUrls`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])]),e(`div`,ke,[(_(!0),s(l,null,g(t.fileList,(e,n)=>(_(),p(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 je=B(Te,[[`render`,Ae]]),Me=y({name:`AspectRatioSelector`,components:{InfoIcon:Q},data(){return{options:[{value:`1:1`,label:`1:1`,width:20,height:20},{value:`3:2`,label:`3:2`,width:27,height:18},{value:`2:3`,label:`2:3`,width:18,height:27},{value:`16:9`,label:`16:9`,width:25,height:13},{value:`9:16`,label:`9:16`,width:13,height:25},{value:`4:3`,label:`4:3`,width:24,height:18},{value:`3:4`,label:`3:4`,width:18,height:24}]}},computed:{value(){return this.$store.state.nanobanana?.config?.aspect_ratio}},methods:{onSelect(e){let t=this.value===e?void 0:e,n={...this.$store.state.nanobanana?.config||{}};t?n.aspect_ratio=t:delete n.aspect_ratio,this.$store.commit(`nanobanana/setConfig`,n)}}}),Ne={class:`ratio`},Pe={class:`header`},Fe={class:`title font-bold`},Ie=[`aria-label`],Le=[`aria-checked`,`aria-label`,`onClick`,`onKeydown`],Re={class:`preview`},ze={class:`name`};function Be(r,o,d,f,p,m){let v=u(`info-icon`);return _(),s(`div`,Ne,[e(`div`,Pe,[e(`h2`,Fe,i(r.$t(`nanobanana.name.aspectRatio`)),1),a(v,{content:r.$t(`nanobanana.description.aspectRatio`),class:`ml-1`},null,8,[`content`])]),e(`div`,{class:`items`,role:`radiogroup`,"aria-label":r.$t(`nanobanana.name.aspectRatio`)},[(_(!0),s(l,null,g(r.options,a=>(_(),s(`div`,{key:a.value,class:n([`item`,{active:r.value===a.value}]),role:`radio`,"aria-checked":r.value===a.value,"aria-label":a.label,tabindex:`0`,onClick:e=>r.onSelect(a.value),onKeydown:[c(t(e=>r.onSelect(a.value),[`prevent`]),[`enter`]),c(t(e=>r.onSelect(a.value),[`prevent`]),[`space`])]},[e(`div`,Re,[e(`div`,{class:`rect`,style:h({width:a.width+`px`,height:a.height+`px`})},null,4)]),e(`p`,ze,i(a.label),1)],42,Le))),128))],8,Ie)])}var Ve=B(Me,[[`render`,Be],[`__scopeId`,`data-v-7131eb97`]]),He=y({name:`NanobananaModelSelector`,components:{ElSelect:b,ElOption:x,InfoIcon:Q},data(){return{options:[{value:ee,label:this.$t(`nanobanana.model.nanoBanana`)},{value:z,label:z},{value:ne,label:this.$t(`nanobanana.model.nanoBananaPro`)},{value:te,label:this.$t(`nanobanana.model.nanoBanana2`)}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.model},set(e){this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,model:e})}},modelDescription(){return this.$t(`nanobanana.description.model`)}},mounted(){this.value||=R}}),Ue={class:`field`},We={class:`label`},Ge={class:`box`},Ke={class:`title font-bold`};function qe(t,n,r,o,c,d){let f=u(`info-icon`),h=u(`el-option`),v=u(`el-select`);return _(),s(`div`,Ue,[e(`div`,We,[e(`div`,Ge,[e(`h2`,Ke,i(t.$t(`nanobanana.name.model`)),1),a(f,{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(`nanobanana.placeholder.select`)},{default:m(()=>[(_(!0),s(l,null,g(t.options,e=>(_(),p(h,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Je=B(He,[[`render`,qe],[`__scopeId`,`data-v-11cb675b`]]),Ye=y({name:`NanobananaResolutionSelector`,components:{ElSelect:b,ElOption:x,InfoIcon:Q},data(){return{cachedResolution:`1K`,options:[{value:`1K`,label:`1K`},{value:`2K`,label:`2K`},{value:`4K`,label:`4K`}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.resolution},set(e){this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,resolution:e})}},supportsResolution(){let e=this.$store.state.nanobanana?.config?.model;return e===`nano-banana-2`||e===`nano-banana-pro`}},watch:{value(e){this.supportsResolution&&e&&(this.cachedResolution=e)},supportsResolution(e){e?this.value||=this.cachedResolution||`1K`:(this.value&&(this.cachedResolution=this.value),this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,resolution:void 0}))}},mounted(){this.supportsResolution&&!this.value&&(this.value=`1K`),!this.supportsResolution&&this.value&&(this.cachedResolution=this.value,this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,resolution:void 0}))}}),Xe={class:`field`},Ze={class:`label`},Qe={class:`box`},$e={class:`title font-bold`};function et(t,n,r,o,c,d){let f=u(`info-icon`),h=u(`el-option`),v=u(`el-select`);return _(),s(`div`,Xe,[e(`div`,Ze,[e(`div`,Qe,[e(`h2`,$e,i(t.$t(`nanobanana.name.resolution`)),1),a(f,{content:t.$t(`nanobanana.description.resolutionProOnly`),class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`nanobanana.placeholder.select`),disabled:!t.supportsResolution},{default:m(()=>[(_(!0),s(l,null,g(t.options,e=>(_(),p(h,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])])}var tt=y({name:`ConfigPanel`,components:{MagicIcon:I,ElButton:X,PromptInput:we,Consumption:le,ImageUrlsInput:je,AspectRatioSelector:Ve,ModelSelector:Je,ResolutionSelector:B(Ye,[[`render`,et],[`__scopeId`,`data-v-7ab9d4d4`]])},emits:[`generate`],computed:{config(){return this.$store.state.nanobanana?.config},consumption(){let e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;return G({...e,action:t?`edit`:`generate`},this.service?.cost)},service(){return this.$store.state.nanobanana?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),nt={class:`flex flex-col h-full`},rt={class:`flex-1 overflow-y-auto p-5`},it={class:`flex flex-col items-center justify-center px-5 pb-5`};function at(t,n,o,c,l,d){let f=u(`model-selector`),p=u(`resolution-selector`),h=u(`prompt-input`),g=u(`aspect-ratio-selector`),v=u(`image-urls-input`),y=u(`consumption`),b=u(`magic-icon`),x=u(`el-button`);return _(),s(`div`,nt,[e(`div`,rt,[a(f,{class:`mb-4`}),a(p,{class:`mb-4`}),a(h,{class:`mb-4`}),a(g,{class:`mb-4`}),a(v,{class:`mb-4`})]),e(`div`,it,[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:m(()=>[a(b,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`nanobanana.button.generate`)),1)]),_:1},8,[`onClick`])])])}var ot=B(tt,[[`render`,at]]),st=y({name:`TaskPreview`,components:{ApplicationIcon:E,ChannelIcon:k,DeleteIcon:N,ExternalLinkIcon:O,ImageIcon:j,InfoIcon:M,LightningIcon:L,MagicIcon:I,TimeIcon:D,WarningIcon:P,CopyToClipboard:se,ElAlert:w,ImageWrapper:he,ElButton:X,ElTooltip:C,ImagePreview:Z,ApiCodeButton:pe},props:{modelValue:{type:Object,required:!0}},computed:{images(){let e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e},hasImages(){return this.images.some(e=>!!e?.image_url)},showResult(){let e=this.modelValue?.response;return e?e.success===!0?!0:this.hasImages&&e.success!==!1:!1}},methods:{onEdit(e){if(!e)return;console.debug(`Edit image:`,e);let t={...this.$store.state.nanobanana?.config||{}};delete t.action,t.image_urls=[e],this.$store.commit(`nanobanana/setConfig`,t)},async onDelete(){let e=this.modelValue?.id;if(e){try{await oe.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(`nanobanana/deleteTask`,{id:e}),H.success(this.$t(`common.message.deleteTaskSuccess`))}catch{H.error(this.$t(`common.message.deleteTaskFailed`))}}}}}),ct={class:`preview`},lt={class:`left`},ut={class:`main`},dt={class:`bot`},ft={class:`datetime`},pt=[`aria-label`],mt={class:`info`},ht={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},gt={key:1,class:`prompt mt-2`},_t={key:0},vt={key:0,class:n({content:!0,failed:!0})},yt={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},bt={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},xt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},St={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ct={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},wt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Tt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Et={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Dt={key:5,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Ot={key:1,class:n({content:!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:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Mt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Nt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Pt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ft={key:5,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},It={key:2,class:n({content:!0})},Lt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Rt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},zt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Bt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`};function Ht(n,c,d,f,h,v){let y=u(`capability-presentation`),b=u(`delete-icon`),x=u(`el-tooltip`),S=u(`image-preview`),C=u(`image-wrapper`),w=u(`el-button`),T=u(`api-code-button`),E=u(`application-icon`),D=u(`image-icon`),O=u(`external-link-icon`),k=u(`lightning-icon`),A=u(`magic-icon`),j=u(`copy-to-clipboard`),M=u(`time-icon`),N=u(`channel-icon`),P=u(`el-alert`),F=u(`warning-icon`),I=u(`info-icon`);return _(),s(`div`,ct,[e(`div`,lt,[a(y,{capability:`nanobanana`,part:`avatar`,class:`avatar`})]),e(`div`,ut,[e(`div`,dt,[a(y,{capability:`nanobanana`,part:`name`}),e(`span`,ft,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:m(()=>[n.modelValue?.id?(_(),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(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,pt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,mt,[n.modelValue?.request?.image_urls&&n.modelValue?.request?.image_urls.length>0?(_(),s(`div`,ht,[(_(!0),s(l,null,g(n.modelValue?.request?.image_urls,(e,t)=>(_(),p(S,{key:t,url:e,name:`image-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):o(``,!0),n.modelValue?.request?.prompt?(_(),s(`p`,gt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(_(),s(`span`,_t,` - (`+i(n.$t(`nanobanana.status.pending`))+`) `,1))])):o(``,!0)]),n.showResult?(_(),s(`div`,vt,[e(`div`,yt,[(_(!0),s(l,null,g(n.images,(e,t)=>(_(),p(C,{key:t,src:e?.image_url,"raw-src":e?.image_url},null,8,[`src`,`raw-src`]))),128))]),e(`div`,bt,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`common.button.edit`),placement:`top-start`},{default:m(()=>[a(w,{type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=t(e=>n.onEdit(n.images?.[0]?.image_url),[`stop`])},{default:m(()=>[r(i(n.$t(`common.button.edit`)),1)]),_:1})]),_:1},8,[`content`]),a(T,{path:`/nano-banana/images`,body:n.modelValue?.request},null,8,[`body`])]),a(P,{closable:!1,class:`mt-2 success`},{default:m(()=>[n.modelValue?.request?.model?(_(),s(`p`,xt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(_(),s(`p`,St,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.resolution`))+`: `+i(n.modelValue?.request?.resolution),1)])):o(``,!0),n.modelValue?.request?.aspect_ratio?(_(),s(`p`,Ct,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.aspectRatio`))+`: `+i(n.modelValue?.request?.aspect_ratio),1)])):o(``,!0),n.modelValue?.request?.action?(_(),s(`p`,wt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.task`))+`: `+i(n.modelValue?.request?.action===`generate`?n.$t(`nanobanana.name.generate`):n.$t(`nanobanana.name.edits`)),1)])):o(``,!0),e(`p`,Tt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(j,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(_(),s(`p`,Et,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(_(),s(`p`,Dt,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.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||n.modelValue?.response?.error?(_(),s(`div`,Ot,[a(P,{closable:!1,class:`failure`},{template:m(()=>[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.failure`)),1)]),default:m(()=>[n.modelValue?.request?.model?(_(),s(`p`,kt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(_(),s(`p`,At,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.resolution`))+`: `+i(n.modelValue?.request?.resolution),1)])):o(``,!0),n.modelValue?.request?.aspect_ratio?(_(),s(`p`,jt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.aspectRatio`))+`: `+i(n.modelValue?.request?.aspect_ratio),1)])):o(``,!0),n.modelValue?.request?.action?(_(),s(`p`,Mt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.task`))+`: `+i(n.modelValue?.request?.action===`generate`?n.$t(`nanobanana.name.generate`):n.$t(`nanobanana.name.edits`)),1)])):o(``,!0),e(`p`,Nt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(j,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,$,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.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?(_(),s(`p`,Pt,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(_(),s(`p`,Ft,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.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})])):(_(),s(`div`,It,[a(P,{closable:!1,class:`info`},{template:m(()=>[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.status.pending`)),1)]),default:m(()=>[n.modelValue?.request?.model?(_(),s(`p`,Lt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(_(),s(`p`,Rt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.resolution`))+`: `+i(n.modelValue?.request?.resolution),1)])):o(``,!0),n.modelValue?.request?.aspect_ratio?(_(),s(`p`,zt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.aspectRatio`))+`: `+i(n.modelValue?.request?.aspect_ratio),1)])):o(``,!0),n.modelValue?.request?.action?(_(),s(`p`,Bt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.task`))+`: `+i(n.modelValue?.request?.action===`generate`?n.$t(`nanobanana.name.generate`):n.$t(`nanobanana.name.edits`)),1)])):o(``,!0),e(`p`,Vt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(j,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var Ut=y({name:`RecentPanel`,components:{TaskPreview:B(st,[[`render`,Ht],[`__scopeId`,`data-v-8a190878`]]),BotPlaceholder:me,NoTasks:de,ScrollList:ue},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.nanobanana?.tasks,items:this.$store.state.nanobanana?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Wt={key:0},Gt={key:2,class:`w-full h-full flex items-center justify-center`};function Kt(e,t,n,r,i,c){let d=u(`bot-placeholder`),f=u(`task-preview`),h=u(`scroll-list`),v=u(`no-tasks`);return _(),s(l,null,[e.tasks?.items===void 0?(_(),s(`div`,Wt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(_(),p(h,{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:m(()=>[(_(!0),s(l,null,g(e.tasks?.items,e=>(_(),p(f,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(_(),s(`div`,Gt,[a(v)])):o(``,!0)],64)}var qt=y({name:`NanobananaIndex`,components:{ConfigPanel:ot,Layout:xe,RecentPanel:B(Ut,[[`render`,Kt]])},mixins:[re],inject:[`initialized`],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.nanobanana?.status?.getApplications===K.Request},tasksLoading(){return this.$store.state.nanobanana?.status?.getTasks===K.Request},credential(){return this.$store.state.nanobanana?.credential},config(){return this.$store.state.nanobanana?.config},application(){return this.$store.state.nanobanana?.application},tasks(){return this.$store.state.nanobanana?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await fe({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`nanobanana/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`nanobanana/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();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(`nanobanana/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})},async onGenerate(){if(!U(this.uploadTracker,e=>this.$t(e),e=>H.warning(e)))return;let e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;delete e.action,!t&&`image_urls`in e&&delete e.image_urls,e?.aspect_ratio||delete e.aspect_ratio;let n=e?.model===`nano-banana-2`||e?.model===`nano-banana-pro`;!n&&`resolution`in e&&delete e.resolution,n&&!e?.resolution&&(e.resolution=`1K`);let r={...e,action:t?`edit`:`generate`,async:!0};if(!J())return;let i=this.credential?.token;if(!i){console.error(`no token specified`);return}H.info(this.$t(`nanobanana.message.startingTask`)),V(`nanobanana`,Y.generate(r,{token:i})).then(()=>{H.success(this.$t(`nanobanana.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;t?.error?.code===`used_up`?H.error(this.$t(`nanobanana.message.usedUp`)):H.error(this.$t(`nanobanana.message.startTaskFailed`)+(t?.error?.message||``))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Jt(e,t,n,r,i,o){let s=u(`config-panel`),c=u(`recent-panel`),l=u(`layout`);return _(),p(l,null,{config:m(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:m(()=>[a(c,{ref:`recentPanel`,loading:e.loading,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Yt=B(qt,[[`render`,Jt]]);export{Yt 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,j as u,mt as d,rt as f,tt as p,z as m}from"./vendor-chart-Dw-P17PN.js";import{r as h,t as g}from"./select-wPYO0KL0.js";import{t as _}from"./upload-D-5KHpRy.js";import{t as v}from"./tooltip-DjLl_Tv9.js";import{t as y}from"./alert-DIqm-Kad.js";import{t as b}from"./clock-CYQS4x6R.js";import{r as x,t as S}from"./PromptTextarea-DIx8KWwe.js";import{t as C}from"./info-B5kD0bjW.js";import{t as w}from"./trash-2-jm25a3wz.js";import{t as T}from"./triangle-alert-RGg8X9Hu.js";import{t as E}from"./wand-sparkles-DIimd5K-.js";import{ar as D}from"./constants-7uZLiijT.js";import{Bn as O,E as k,Gt as ee,Kt as A,Sr as j,Ti as M,Ut as te,Wt as N,Yt as P,ci as F,di as I,in as L,qt as R,wi as z,zi as B}from"./index-S2D3KxIN.js";import{t as V}from"./CopyToClipboard-BC8MgUTU.js";import{t as H}from"./ImagePreview-COWWmcN6.js";import{t as U}from"./Consumption-Bwtr-oKm.js";import{a as W,n as G,r as K,t as q}from"./pagination-C60kxWZe.js";import{t as J}from"./VideoPlayer-CYq2VZJJ.js";import{t as Y}from"./ApiCodeButton-DQfIqta7.js";import{t as X}from"./BotPlaceholder-DUy5q_lY.js";import{t as Z}from"./Hailuo-CXcL-krx.js";var Q=m({name:`ModelSelector`,components:{ElSelect:h,ElOption:g},data(){return{}},computed:{options(){return[{value:`minimax-t2v`,label:this.$t(`hailuo.button.model1`)},{value:`minimax-i2v`,label:this.$t(`hailuo.button.model2`)},{value:`minimax-i2v-director`,label:this.$t(`hailuo.button.model3`)}]},value:{get(){return this.$store.state.hailuo?.config?.model},set(e){this.$store.commit(`hailuo/setConfig`,{...this.$store.state.hailuo?.config,model:e})}}},mounted(){this.value||=D}}),ne={class:`field`},re={class:`title font-bold`},ie={class:`float-left`};function ae(t,n,r,o,m,h){let g=l(`el-option`),_=l(`el-select`);return p(),s(`div`,ne,[e(`h2`,re,i(t.$t(`hailuo.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`hailuo.placeholder.select`),clearable:``},{default:d(()=>[(p(!0),s(c,null,f(t.options,t=>(p(),u(g,{key:t.value,label:t.label,value:t.value},{default:d(()=>[e(`span`,ie,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var oe=k(Q,[[`render`,ae],[`__scopeId`,`data-v-a768fbd9`]]),se=m({name:`StartImageUrlInput`,components:{ElUpload:_,ElButton:B,InfoIcon:W,ImagePreview:H},mixins:[R,A,N],data(){return{fileList:[],uploadUrl:I()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e.url).filter(e=>e!==void 0)},value:{get(){return this.$store.state.hailuo?.config?.first_image_url},set(){let e=this.urls?.[0];this.$store.commit(`hailuo/setConfig`,{...this.$store.state.hailuo?.config,first_image_url:e})}}},mounted(){this.value||=void 0,this.onSetStartImageUrl()},methods:{onExceed(){M.warning(this.$t(`hailuo.message.uploadStartImageExceed`))},onError(){M.error(this.$t(`hailuo.message.uploadStartImageError`))},async onRemove(){M.error(this.$t(`hailuo.message.uploadStartImageError`))},onSetStartImageUrl(){let e=this.urls?.[0];this.$store.commit(`hailuo/setConfig`,{...this.$store.state.hailuo?.config,first_image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),ce={class:`relative`},le={class:`flex justify-between`},ue={class:`flex justify-start items-center`},de={class:`text-sm font-bold`};function fe(t,n,c,f,m,h){let g=l(`info-icon`),_=l(`image-preview`),v=l(`el-button`),y=l(`el-upload`);return p(),s(`div`,ce,[e(`div`,le,[e(`div`,ue,[e(`span`,de,i(t.$t(`hailuo.name.startImageUrl`)),1),a(g,{content:t.$t(`hailuo.description.startImageUrl`),class:`info`},null,8,[`content`])])]),a(y,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,"show-file-list":!0,limit:1,multiple:!1,"list-type":`picture`,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-remove":t.onRemove,"on-success":t.onSuccess,headers:t.headers},{file:d(({file:e})=>[e.url&&e.percentage!==void 0?(p(),u(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:d(()=>[a(v,{size:`small`,type:`primary`,class:`btn btn-upload`,round:``},{default:d(()=>[r(i(t.$t(`hailuo.button.uploadStartImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-remove`,`on-success`,`headers`])])}var pe=k(se,[[`render`,fe],[`__scopeId`,`data-v-11c1de4e`]]),me=m({name:`PromptInput`,components:{PromptTextarea:S},computed:{prompt:{get(){return this.$store.state.hailuo?.config?.prompt},set(e){this.$store.commit(`hailuo/setConfig`,{...this.$store.state.hailuo?.config,prompt:e})}}},mounted(){this.prompt||=``}});function he(e,t,n,r,i,a){let o=l(`prompt-textarea`);return p(),u(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`hailuo.name.prompt`),info:e.$t(`hailuo.description.prompt`),placeholder:e.$t(`hailuo.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var ge=m({name:`PresetPanel`,components:{MagicIcon:E,ElButton:B,PromptInput:k(me,[[`render`,he]]),StartImageUrlInput:pe,ModelSelector:oe,Consumption:U},emits:[`generate`],computed:{config(){return this.$store.state.hailuo?.config},consumption(){return P(this.config,this.service?.cost)},service(){return this.$store.state.hailuo?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),_e={class:`flex flex-col h-full`},ve={class:`flex-1 overflow-y-auto p-5`},ye={class:`flex flex-col items-center justify-center px-5 pb-5`};function be(t,n,c,f,m,h){let g=l(`prompt-input`),_=l(`model-selector`),v=l(`start-image-url-input`),y=l(`consumption`),b=l(`magic-icon`),x=l(`el-button`);return p(),s(`div`,_e,[e(`div`,ve,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`}),t.config?.model===`minimax-i2v`?(p(),u(v,{key:0,class:`mb-4`})):o(``,!0)]),e(`div`,ye,[a(y,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),t.config?.video_url!==void 0||t.config?.custom?(p(),u(x,{key:0,type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:d(()=>[a(b,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`hailuo.button.extend`)),1)]),_:1},8,[`onClick`])):(p(),u(x,{key:1,type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:d(()=>[a(b,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`hailuo.button.generate`)),1)]),_:1},8,[`onClick`]))])])}var xe=k(ge,[[`render`,be]]),Se=m({name:`TaskPreview`,components:{DeleteIcon:w,ChannelIcon:x,InfoIcon:C,MagicIcon:E,TimeIcon:b,WarningIcon:T,CopyToClipboard:V,ElAlert:y,VideoPlayer:J,ElTooltip:v,ElButton:B,ApiCodeButton:Y},props:{modelValue:{type:Object,required:!0}},computed:{isFailure(){let e=this.modelValue?.response;return e?.success===!1||!!e?.error||this.video?.state===`failed`||this.video?.state===`cancelled`},isWaiting(){return!this.modelValue?.response||!this.isFailure&&[`queued`,`pending`,`processing`,`running`].includes(this.video?.state||``)},application(){return this.$store.state.hailuo?.application},config(){return this.$store.state.hailuo?.config},video(){return this.modelValue?.response?.data?.[0]}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await z.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(`hailuo/deleteTask`,{id:e}),M.success(this.$t(`common.message.deleteTaskSuccess`))}catch{M.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e){console.debug(`on download hailuo video`,e),window.open(e,`_blank`)}}}),Ce={class:`preview`},we={class:`left`},Te={class:`main`},Ee={class:`bot`},De={class:`datetime`},Oe=[`aria-label`],ke={class:`info`},Ae={key:0,class:`prompt mt-2`},je={key:0},Me={key:1},Ne={key:0,class:n({content:!0,failed:!0})},Pe={key:0,class:`mb-4`},Fe={key:1,class:n({operations:!0,"mt-2":!0})},Ie={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Le={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Re={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},ze={key:1,class:n({content:!0})},Be={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ve={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},He={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Ue={key:2,class:n({content:!0})},We={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Ge(n,c,f,m,h,g){let _=l(`capability-presentation`),v=l(`delete-icon`),y=l(`el-tooltip`),b=l(`video-player`),x=l(`el-button`),S=l(`api-code-button`),C=l(`channel-icon`),w=l(`copy-to-clipboard`),T=l(`magic-icon`),E=l(`time-icon`),D=l(`el-alert`),O=l(`warning-icon`),k=l(`info-icon`);return p(),s(`div`,Ce,[e(`div`,we,[a(_,{capability:`hailuo`,part:`avatar`,class:`avatar`})]),e(`div`,Te,[e(`div`,Ee,[a(_,{capability:`hailuo`,part:`name`}),e(`span`,De,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(y,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:d(()=>[n.modelValue?.id?(p(),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(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Oe)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,ke,[n.modelValue?.request?.prompt?(p(),s(`p`,Ae,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(p(),s(`span`,je,` - (`+i(n.$t(`hailuo.status.pending`))+`) `,1)),n.modelValue?.response&&n.isWaiting?(p(),s(`span`,Me,` - (`+i(n.$t(`hailuo.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&!n.isFailure&&!n.isWaiting?(p(),s(`div`,Ne,[n.video?.video_url?(p(),s(`div`,Pe,[a(b,{src:n.video?.video_url},null,8,[`src`])])):o(``,!0),n.video?(p(),s(`div`,Fe,[a(y,{class:`box-item`,effect:`dark`,content:n.$t(`hailuo.message.downloadVideo`),placement:`top-start`},{default:d(()=>[n.video?.video_url?(p(),u(x,{key:0,type:`info`,size:`small`,class:`mb-2`,onClick:c[1]||=t(e=>n.onDownload(n.video?.video_url),[`stop`])},{default:d(()=>[r(i(n.$t(`hailuo.button.download`)),1)]),_:1})):o(``,!0)]),_:1},8,[`content`]),a(S,{path:`/hailuo/videos`,body:n.modelValue?.request},null,8,[`body`])])):o(``,!0),a(D,{closable:!1,class:`mt-2 success`},{default:d(()=>[n.modelValue?.request?.model?(p(),s(`p`,Ie,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.model`))+`: `+i(n.modelValue?.request?.model)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])):o(``,!0),e(`p`,Le,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(p(),s(`p`,Re,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.isFailure?(p(),s(`div`,ze,[a(D,{closable:!1,class:`failure`},{template:d(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.failure`)),1)]),default:d(()=>[e(`p`,Be,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),e(`p`,Ve,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(w,{content:n.modelValue?.response?.error?.message},null,8,[`content`])]),n.modelValue?.elapsed?(p(),s(`p`,$,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,He,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(w,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])]),_:1})])):o(``,!0),n.isWaiting?(p(),s(`div`,Ue,[a(D,{closable:!1,class:`info`},{template:d(()=>[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.response?`hailuo.status.processing`:`hailuo.status.pending`)),1)]),default:d(()=>[e(`p`,We,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])):o(``,!0)])])}var Ke=m({name:`RecentPanel`,components:{TaskPreview:k(Se,[[`render`,Ge],[`__scopeId`,`data-v-fa307ccb`]]),BotPlaceholder:X,NoTasks:K,ScrollList:G},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.hailuo?.tasks,items:this.$store.state.hailuo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),qe={key:0},Je={key:2,class:`w-full h-full flex items-center justify-center`};function Ye(e,t,n,r,i,m){let h=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return p(),s(c,null,[e.tasks?.items===void 0?(p(),s(`div`,qe,[a(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(p(),u(_,{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:d(()=>[(p(!0),s(c,null,f(e.tasks?.items,e=>(p(),u(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(p(),s(`div`,Je,[a(v)])):o(``,!0)],64)}var Xe=m({name:`HailuoIndex`,components:{ConfigPanel:xe,Layout:Z,RecentPanel:k(Ke,[[`render`,Ye]])},mixins:[ee],inject:[`initialized`],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.hailuo?.status?.getApplications===F.Request},tasksLoading(){return this.$store.state.hailuo?.status?.getTasks===F.Request||this.fetchingTasks},credential(){return this.$store.state.hailuo.credential},config(){return this.$store.state.hailuo.config},application(){return this.$store.state.hailuo.application},tasks(){return this.$store.state.hailuo.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 q({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`hailuo/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`hailuo/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.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`hailuo/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!te(this.uploadTracker,e=>this.$t(e),e=>M.warning(e)))return;let e={...this.config,async:!0};if(!L())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}M.info(this.$t(`hailuo.message.startingTask`)),j(`hailuo`,O.generate(e,{token:t})).then(()=>{M.success(this.$t(`hailuo.message.startTaskSuccess`))}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?M.error(this.$t(`hailuo.message.usedUp`)):M.error(this.$t(`hailuo.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Ze(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),f=l(`layout`);return p(),u(f,null,{config:d(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:d(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Qe=k(Xe,[[`render`,Ze]]);export{Qe 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,j as u,mt as d,rt as f,tt as p,z as m}from"./vendor-chart-Dw-P17PN.js";import{r as h,t as g}from"./select--z-fac6_.js";import{t as _}from"./upload-GC5EGmwp.js";import{t as v}from"./tooltip-CVVApYjJ.js";import{t as y}from"./alert-G37GiXIg.js";import{t as b}from"./clock-BbOTrjoQ.js";import{r as x,t as S}from"./PromptTextarea-O8KxwMGn.js";import{t as C}from"./info-C7eq8W70.js";import{t as w}from"./trash-2-B7h9iX5Q.js";import{t as T}from"./triangle-alert-C_NcfP7e.js";import{t as E}from"./wand-sparkles-BQfGRD0P.js";import{ar as D}from"./constants-7uZLiijT.js";import{Bn as O,E as k,Gt as ee,Kt as A,Sr as j,Ti as M,Ut as te,Wt as N,Yt as P,ci as F,di as I,in as L,qt as R,wi as z,zi as B}from"./index-dzU0SACS.js";import{t as V}from"./CopyToClipboard-DOx2-KTG.js";import{t as H}from"./ImagePreview-CSSReHgL.js";import{t as U}from"./Consumption-JN0X0f8c.js";import{a as W,n as G,r as K,t as q}from"./pagination-DZKa3-YT.js";import{t as J}from"./VideoPlayer-BnwIjt1E.js";import{t as Y}from"./ApiCodeButton-Ck-LkZnA.js";import{t as X}from"./BotPlaceholder-SAI3U7Vk.js";import{t as Z}from"./Hailuo-CE5R8cCt.js";var Q=m({name:`ModelSelector`,components:{ElSelect:h,ElOption:g},data(){return{}},computed:{options(){return[{value:`minimax-t2v`,label:this.$t(`hailuo.button.model1`)},{value:`minimax-i2v`,label:this.$t(`hailuo.button.model2`)},{value:`minimax-i2v-director`,label:this.$t(`hailuo.button.model3`)}]},value:{get(){return this.$store.state.hailuo?.config?.model},set(e){this.$store.commit(`hailuo/setConfig`,{...this.$store.state.hailuo?.config,model:e})}}},mounted(){this.value||=D}}),ne={class:`field`},re={class:`title font-bold`},ie={class:`float-left`};function ae(t,n,r,o,m,h){let g=l(`el-option`),_=l(`el-select`);return p(),s(`div`,ne,[e(`h2`,re,i(t.$t(`hailuo.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`hailuo.placeholder.select`),clearable:``},{default:d(()=>[(p(!0),s(c,null,f(t.options,t=>(p(),u(g,{key:t.value,label:t.label,value:t.value},{default:d(()=>[e(`span`,ie,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var oe=k(Q,[[`render`,ae],[`__scopeId`,`data-v-a768fbd9`]]),se=m({name:`StartImageUrlInput`,components:{ElUpload:_,ElButton:B,InfoIcon:W,ImagePreview:H},mixins:[R,A,N],data(){return{fileList:[],uploadUrl:I()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e.url).filter(e=>e!==void 0)},value:{get(){return this.$store.state.hailuo?.config?.first_image_url},set(){let e=this.urls?.[0];this.$store.commit(`hailuo/setConfig`,{...this.$store.state.hailuo?.config,first_image_url:e})}}},mounted(){this.value||=void 0,this.onSetStartImageUrl()},methods:{onExceed(){M.warning(this.$t(`hailuo.message.uploadStartImageExceed`))},onError(){M.error(this.$t(`hailuo.message.uploadStartImageError`))},async onRemove(){M.error(this.$t(`hailuo.message.uploadStartImageError`))},onSetStartImageUrl(){let e=this.urls?.[0];this.$store.commit(`hailuo/setConfig`,{...this.$store.state.hailuo?.config,first_image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),ce={class:`relative`},le={class:`flex justify-between`},ue={class:`flex justify-start items-center`},de={class:`text-sm font-bold`};function fe(t,n,c,f,m,h){let g=l(`info-icon`),_=l(`image-preview`),v=l(`el-button`),y=l(`el-upload`);return p(),s(`div`,ce,[e(`div`,le,[e(`div`,ue,[e(`span`,de,i(t.$t(`hailuo.name.startImageUrl`)),1),a(g,{content:t.$t(`hailuo.description.startImageUrl`),class:`info`},null,8,[`content`])])]),a(y,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,"show-file-list":!0,limit:1,multiple:!1,"list-type":`picture`,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-remove":t.onRemove,"on-success":t.onSuccess,headers:t.headers},{file:d(({file:e})=>[e.url&&e.percentage!==void 0?(p(),u(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:d(()=>[a(v,{size:`small`,type:`primary`,class:`btn btn-upload`,round:``},{default:d(()=>[r(i(t.$t(`hailuo.button.uploadStartImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-remove`,`on-success`,`headers`])])}var pe=k(se,[[`render`,fe],[`__scopeId`,`data-v-11c1de4e`]]),me=m({name:`PromptInput`,components:{PromptTextarea:S},computed:{prompt:{get(){return this.$store.state.hailuo?.config?.prompt},set(e){this.$store.commit(`hailuo/setConfig`,{...this.$store.state.hailuo?.config,prompt:e})}}},mounted(){this.prompt||=``}});function he(e,t,n,r,i,a){let o=l(`prompt-textarea`);return p(),u(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`hailuo.name.prompt`),info:e.$t(`hailuo.description.prompt`),placeholder:e.$t(`hailuo.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var ge=m({name:`PresetPanel`,components:{MagicIcon:E,ElButton:B,PromptInput:k(me,[[`render`,he]]),StartImageUrlInput:pe,ModelSelector:oe,Consumption:U},emits:[`generate`],computed:{config(){return this.$store.state.hailuo?.config},consumption(){return P(this.config,this.service?.cost)},service(){return this.$store.state.hailuo?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),_e={class:`flex flex-col h-full`},ve={class:`flex-1 overflow-y-auto p-5`},ye={class:`flex flex-col items-center justify-center px-5 pb-5`};function be(t,n,c,f,m,h){let g=l(`prompt-input`),_=l(`model-selector`),v=l(`start-image-url-input`),y=l(`consumption`),b=l(`magic-icon`),x=l(`el-button`);return p(),s(`div`,_e,[e(`div`,ve,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`}),t.config?.model===`minimax-i2v`?(p(),u(v,{key:0,class:`mb-4`})):o(``,!0)]),e(`div`,ye,[a(y,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),t.config?.video_url!==void 0||t.config?.custom?(p(),u(x,{key:0,type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:d(()=>[a(b,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`hailuo.button.extend`)),1)]),_:1},8,[`onClick`])):(p(),u(x,{key:1,type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:d(()=>[a(b,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`hailuo.button.generate`)),1)]),_:1},8,[`onClick`]))])])}var xe=k(ge,[[`render`,be]]),Se=m({name:`TaskPreview`,components:{DeleteIcon:w,ChannelIcon:x,InfoIcon:C,MagicIcon:E,TimeIcon:b,WarningIcon:T,CopyToClipboard:V,ElAlert:y,VideoPlayer:J,ElTooltip:v,ElButton:B,ApiCodeButton:Y},props:{modelValue:{type:Object,required:!0}},computed:{isFailure(){let e=this.modelValue?.response;return e?.success===!1||!!e?.error||this.video?.state===`failed`||this.video?.state===`cancelled`},isWaiting(){return!this.modelValue?.response||!this.isFailure&&[`queued`,`pending`,`processing`,`running`].includes(this.video?.state||``)},application(){return this.$store.state.hailuo?.application},config(){return this.$store.state.hailuo?.config},video(){return this.modelValue?.response?.data?.[0]}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await z.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(`hailuo/deleteTask`,{id:e}),M.success(this.$t(`common.message.deleteTaskSuccess`))}catch{M.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e){console.debug(`on download hailuo video`,e),window.open(e,`_blank`)}}}),Ce={class:`preview`},we={class:`left`},Te={class:`main`},Ee={class:`bot`},De={class:`datetime`},Oe=[`aria-label`],ke={class:`info`},Ae={key:0,class:`prompt mt-2`},je={key:0},Me={key:1},Ne={key:0,class:n({content:!0,failed:!0})},Pe={key:0,class:`mb-4`},Fe={key:1,class:n({operations:!0,"mt-2":!0})},Ie={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Le={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Re={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},ze={key:1,class:n({content:!0})},Be={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ve={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},He={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Ue={key:2,class:n({content:!0})},We={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Ge(n,c,f,m,h,g){let _=l(`capability-presentation`),v=l(`delete-icon`),y=l(`el-tooltip`),b=l(`video-player`),x=l(`el-button`),S=l(`api-code-button`),C=l(`channel-icon`),w=l(`copy-to-clipboard`),T=l(`magic-icon`),E=l(`time-icon`),D=l(`el-alert`),O=l(`warning-icon`),k=l(`info-icon`);return p(),s(`div`,Ce,[e(`div`,we,[a(_,{capability:`hailuo`,part:`avatar`,class:`avatar`})]),e(`div`,Te,[e(`div`,Ee,[a(_,{capability:`hailuo`,part:`name`}),e(`span`,De,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(y,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:d(()=>[n.modelValue?.id?(p(),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(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Oe)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,ke,[n.modelValue?.request?.prompt?(p(),s(`p`,Ae,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(p(),s(`span`,je,` - (`+i(n.$t(`hailuo.status.pending`))+`) `,1)),n.modelValue?.response&&n.isWaiting?(p(),s(`span`,Me,` - (`+i(n.$t(`hailuo.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&!n.isFailure&&!n.isWaiting?(p(),s(`div`,Ne,[n.video?.video_url?(p(),s(`div`,Pe,[a(b,{src:n.video?.video_url},null,8,[`src`])])):o(``,!0),n.video?(p(),s(`div`,Fe,[a(y,{class:`box-item`,effect:`dark`,content:n.$t(`hailuo.message.downloadVideo`),placement:`top-start`},{default:d(()=>[n.video?.video_url?(p(),u(x,{key:0,type:`info`,size:`small`,class:`mb-2`,onClick:c[1]||=t(e=>n.onDownload(n.video?.video_url),[`stop`])},{default:d(()=>[r(i(n.$t(`hailuo.button.download`)),1)]),_:1})):o(``,!0)]),_:1},8,[`content`]),a(S,{path:`/hailuo/videos`,body:n.modelValue?.request},null,8,[`body`])])):o(``,!0),a(D,{closable:!1,class:`mt-2 success`},{default:d(()=>[n.modelValue?.request?.model?(p(),s(`p`,Ie,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.model`))+`: `+i(n.modelValue?.request?.model)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])):o(``,!0),e(`p`,Le,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(p(),s(`p`,Re,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.isFailure?(p(),s(`div`,ze,[a(D,{closable:!1,class:`failure`},{template:d(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.failure`)),1)]),default:d(()=>[e(`p`,Be,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),e(`p`,Ve,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(w,{content:n.modelValue?.response?.error?.message},null,8,[`content`])]),n.modelValue?.elapsed?(p(),s(`p`,$,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,He,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(w,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])]),_:1})])):o(``,!0),n.isWaiting?(p(),s(`div`,Ue,[a(D,{closable:!1,class:`info`},{template:d(()=>[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.response?`hailuo.status.processing`:`hailuo.status.pending`)),1)]),default:d(()=>[e(`p`,We,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`hailuo.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])):o(``,!0)])])}var Ke=m({name:`RecentPanel`,components:{TaskPreview:k(Se,[[`render`,Ge],[`__scopeId`,`data-v-fa307ccb`]]),BotPlaceholder:X,NoTasks:K,ScrollList:G},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.hailuo?.tasks,items:this.$store.state.hailuo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),qe={key:0},Je={key:2,class:`w-full h-full flex items-center justify-center`};function Ye(e,t,n,r,i,m){let h=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return p(),s(c,null,[e.tasks?.items===void 0?(p(),s(`div`,qe,[a(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(p(),u(_,{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:d(()=>[(p(!0),s(c,null,f(e.tasks?.items,e=>(p(),u(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(p(),s(`div`,Je,[a(v)])):o(``,!0)],64)}var Xe=m({name:`HailuoIndex`,components:{ConfigPanel:xe,Layout:Z,RecentPanel:k(Ke,[[`render`,Ye]])},mixins:[ee],inject:[`initialized`],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.hailuo?.status?.getApplications===F.Request},tasksLoading(){return this.$store.state.hailuo?.status?.getTasks===F.Request||this.fetchingTasks},credential(){return this.$store.state.hailuo.credential},config(){return this.$store.state.hailuo.config},application(){return this.$store.state.hailuo.application},tasks(){return this.$store.state.hailuo.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 q({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`hailuo/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`hailuo/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.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`hailuo/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!te(this.uploadTracker,e=>this.$t(e),e=>M.warning(e)))return;let e={...this.config,async:!0};if(!L())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}M.info(this.$t(`hailuo.message.startingTask`)),j(`hailuo`,O.generate(e,{token:t})).then(()=>{M.success(this.$t(`hailuo.message.startTaskSuccess`))}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?M.error(this.$t(`hailuo.message.usedUp`)):M.error(this.$t(`hailuo.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Ze(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),f=l(`layout`);return p(),u(f,null,{config:d(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:d(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Qe=k(Xe,[[`render`,Ze]]);export{Qe as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,Gt as t,I as n,Jt as r,L as i,M as a,N as o,at as s,ht as c,j as l,mt as u,ot as d,tt as f,z as p}from"./vendor-chart-Dw-P17PN.js";import{n as m,t as h}from"./row-DJjKecw-.js";import{i as g,n as _,r as v,t as y}from"./container-VI0MzukK.js";import{n as b,t as x}from"./dropdown-BK55ixdu.js";import{i as S,n as C,r as w,t as T}from"./avatar-C1vjMCSH.js";import{E,K as D,_i as O,cn as k,ft as A,hi as j,k as M,rn as N,tt as P,ui as F,yi as I,zi as L}from"./index-S2D3KxIN.js";import{t as R}from"./BottomFooter-Djj35Gv6.js";import{t as z}from"./Logo-BQHbeQsM.js";var B=p({name:`TopHeader`,components:{ElCol:m,Logo:z,ElRow:h,ElDropdown:x,ElMenu:C,ElMenuItem:w,ElDropdownItem:b,ElButton:L,ElSubMenu:S},data(){return{defaultAvatar:T,products:`chat`}},computed:{site(){return this.$store.state?.site},dark(){return this.$store.getters?.dark},active(){return this.$route.matched?.[0]?.path},isHome(){return this.$route.name===A},user(){return this.$store.getters?.user},authenticated(){return this.$store.getters?.authenticated},isMainOfficialHost(){return k()},isDesktopChrome(){return j()},isMacChrome(){return j()&&O()}},methods:{openTab(e){if(I()){M.open({url:e}).catch(t=>{console.warn(`Browser.open failed, falling back to window.open`,t),window.open(e,`_blank`)});return}window.open(e,`_blank`)},onSelect(e){e&&this.$router.push(e)},onHome(){this.$router.push({name:A})},onLogin(){this.$store.dispatch(`login`,{redirect:this.$route.fullPath})},onDownload(){this.$router.push({name:P})},onProfile(){let e=F();this.openTab(N(`${e}/user/profile`))},onVerify(){let e=F();this.openTab(N(`${e}/user/verify`))},onConsole(){this.$router.push({name:D})},async onLogout(){this.$store.dispatch(`logout`)}}}),V={key:0,class:`mt-4 pr-10`},H={key:1,class:`float-right`},U=[`src`];function W(p,m,h,g,_,v){let y=s(`logo`),b=s(`el-col`),x=s(`el-menu-item`),S=s(`el-sub-menu`),C=s(`el-menu`),w=s(`el-button`),T=s(`language-selector`),E=s(`dark-selector`),D=s(`el-dropdown-item`),O=s(`el-dropdown-menu`),k=s(`el-dropdown`),A=s(`el-row`),j=d(`t`);return f(),l(A,{class:t([`header`,{"desktop-chrome":p.isDesktopChrome,"is-mac":p.isMacChrome,"home-only":p.isHome}])},{default:u(()=>[p.isHome?(f(),l(b,{key:0,span:24,class:`brand-col`},{default:u(()=>[i(y,{onClick:p.onHome},null,8,[`onClick`])]),_:1})):(f(),l(b,{key:1,md:4,xs:24,class:`brand-col`},{default:u(()=>[i(y,{onClick:p.onHome},null,8,[`onClick`])]),_:1})),p.isHome?a(``,!0):(f(),l(b,{key:2,md:16,xs:13},{default:u(()=>[i(C,{"default-active":p.active,mode:`horizontal`,class:`menu`,ellipsis:!0,onSelect:p.onSelect},{default:u(()=>[i(S,{index:p.products},{title:u(()=>[n(r(p.$t(`common.nav.products`)),1)]),default:u(()=>[p.site?.features?.chatgpt?.enabled?c((f(),l(x,{key:0,index:`/chat`},null,512)),[[j,`index.title.chat`]]):a(``,!0),p.site?.features?.midjourney?.enabled?c((f(),l(x,{key:1,index:`/midjourney`},null,512)),[[j,`index.title.midjourney`]]):a(``,!0),p.site?.features?.qrart?.enabled?c((f(),l(x,{key:2,index:`/qrart`},null,512)),[[j,`index.title.qrart`]]):a(``,!0),p.site?.features?.suno?.enabled?c((f(),l(x,{key:3,index:`/suno`},null,512)),[[j,`index.title.suno`]]):a(``,!0),p.site?.features?.luma?.enabled?c((f(),l(x,{key:4,index:`/luma`},null,512)),[[j,`index.title.luma`]]):a(``,!0)]),_:1},8,[`index`]),p.isMainOfficialHost?c((f(),l(x,{key:0,onRoute:e=>void 0,onClick:p.onDownload},null,8,[`onClick`])),[[j,`common.nav.mobileApp`]]):a(``,!0),c(i(x,{onRoute:e=>void 0,onClick:m[0]||=e=>p.openTab(`https://platform.acedata.cloud`)},null,512),[[j,`common.nav.apiPlatform`]]),c(i(x,{onRoute:e=>void 0,onClick:m[1]||=e=>p.openTab(`https://platform.acedata.cloud/support`)},null,512),[[j,`common.nav.support`]]),c(i(x,{onRoute:e=>void 0,onClick:m[2]||=e=>p.openTab(`https://platform.acedata.cloud/earning`)},null,512),[[j,`common.nav.referral`]])]),_:1},8,[`default-active`,`onSelect`])]),_:1})),p.isHome?a(``,!0):(f(),l(b,{key:3,md:4,xs:11},{default:u(()=>[p.authenticated?(f(),o(`div`,H,[e(`div`,{class:`console`,onClick:m[3]||=(...e)=>p.onConsole&&p.onConsole(...e)},r(p.$t(`common.button.console`)),1),i(k,{trigger:`click`},{dropdown:u(()=>[i(O,null,{default:u(()=>[i(D,{onClick:p.onProfile},{default:u(()=>[n(r(p.$t(`common.button.profile`)),1)]),_:1},8,[`onClick`]),i(D,{onClick:p.onLogout},{default:u(()=>[n(r(p.$t(`common.button.logout`)),1)]),_:1},8,[`onClick`])]),_:1})]),default:u(()=>[e(`img`,{src:p.user?.avatar||p.defaultAvatar,class:`avatar`},null,8,U)]),_:1})])):(f(),o(`div`,V,[i(w,{type:`primary`,class:`float-right`,size:`small`,round:``,onClick:p.onLogin},{default:u(()=>[n(r(p.$t(`common.button.login`)),1)]),_:1},8,[`onClick`]),i(T,{class:`locale float-right mr-4`}),i(E,{class:`float-right mr-4`})]))]),_:1}))]),_:1},8,[`class`])}var G=p({name:`LayoutIndex`,components:{TopHeader:E(B,[[`render`,W]]),BottomFooter:R,ElContainer:y,ElMain:g,ElFooter:_,ElHeader:v}});function K(e,t,n,r,a,o){let c=s(`top-header`),d=s(`el-header`),p=s(`router-view`),m=s(`el-main`),h=s(`bottom-footer`),g=s(`el-footer`),_=s(`el-container`);return f(),l(_,{class:`wrapper min-h-[100vh]`},{default:u(()=>[i(d,{class:`header p-0 h-auto`},{default:u(()=>[i(c)]),_:1}),i(m,{class:`main`},{default:u(()=>[i(p)]),_:1}),i(g,{class:`footer p-0 h-auto`},{default:u(()=>[i(h)]),_:1})]),_:1})}var q=E(G,[[`render`,K]]);export{q as default};
1
+ import"./rolldown-runtime--c01j_DQ.js";import{A as e,Gt as t,I as n,Jt as r,L as i,M as a,N as o,at as s,ht as c,j as l,mt as u,ot as d,tt as f,z as p}from"./vendor-chart-Dw-P17PN.js";import{n as m,t as h}from"./row-ig5nVOkc.js";import{i as g,n as _,r as v,t as y}from"./container-VI0MzukK.js";import{n as b,t as x}from"./dropdown-Dxiw3zEy.js";import{i as S,n as C,r as w,t as T}from"./avatar-BsiZaXKt.js";import{E,K as D,_i as O,cn as k,ft as A,hi as j,k as M,rn as N,tt as P,ui as F,yi as I,zi as L}from"./index-dzU0SACS.js";import{t as R}from"./BottomFooter-BPu8gJnO.js";import{t as z}from"./Logo-DdeUQOfD.js";var B=p({name:`TopHeader`,components:{ElCol:m,Logo:z,ElRow:h,ElDropdown:x,ElMenu:C,ElMenuItem:w,ElDropdownItem:b,ElButton:L,ElSubMenu:S},data(){return{defaultAvatar:T,products:`chat`}},computed:{site(){return this.$store.state?.site},dark(){return this.$store.getters?.dark},active(){return this.$route.matched?.[0]?.path},isHome(){return this.$route.name===A},user(){return this.$store.getters?.user},authenticated(){return this.$store.getters?.authenticated},isMainOfficialHost(){return k()},isDesktopChrome(){return j()},isMacChrome(){return j()&&O()}},methods:{openTab(e){if(I()){M.open({url:e}).catch(t=>{console.warn(`Browser.open failed, falling back to window.open`,t),window.open(e,`_blank`)});return}window.open(e,`_blank`)},onSelect(e){e&&this.$router.push(e)},onHome(){this.$router.push({name:A})},onLogin(){this.$store.dispatch(`login`,{redirect:this.$route.fullPath})},onDownload(){this.$router.push({name:P})},onProfile(){let e=F();this.openTab(N(`${e}/user/profile`))},onVerify(){let e=F();this.openTab(N(`${e}/user/verify`))},onConsole(){this.$router.push({name:D})},async onLogout(){this.$store.dispatch(`logout`)}}}),V={key:0,class:`mt-4 pr-10`},H={key:1,class:`float-right`},U=[`src`];function W(p,m,h,g,_,v){let y=s(`logo`),b=s(`el-col`),x=s(`el-menu-item`),S=s(`el-sub-menu`),C=s(`el-menu`),w=s(`el-button`),T=s(`language-selector`),E=s(`dark-selector`),D=s(`el-dropdown-item`),O=s(`el-dropdown-menu`),k=s(`el-dropdown`),A=s(`el-row`),j=d(`t`);return f(),l(A,{class:t([`header`,{"desktop-chrome":p.isDesktopChrome,"is-mac":p.isMacChrome,"home-only":p.isHome}])},{default:u(()=>[p.isHome?(f(),l(b,{key:0,span:24,class:`brand-col`},{default:u(()=>[i(y,{onClick:p.onHome},null,8,[`onClick`])]),_:1})):(f(),l(b,{key:1,md:4,xs:24,class:`brand-col`},{default:u(()=>[i(y,{onClick:p.onHome},null,8,[`onClick`])]),_:1})),p.isHome?a(``,!0):(f(),l(b,{key:2,md:16,xs:13},{default:u(()=>[i(C,{"default-active":p.active,mode:`horizontal`,class:`menu`,ellipsis:!0,onSelect:p.onSelect},{default:u(()=>[i(S,{index:p.products},{title:u(()=>[n(r(p.$t(`common.nav.products`)),1)]),default:u(()=>[p.site?.features?.chatgpt?.enabled?c((f(),l(x,{key:0,index:`/chat`},null,512)),[[j,`index.title.chat`]]):a(``,!0),p.site?.features?.midjourney?.enabled?c((f(),l(x,{key:1,index:`/midjourney`},null,512)),[[j,`index.title.midjourney`]]):a(``,!0),p.site?.features?.qrart?.enabled?c((f(),l(x,{key:2,index:`/qrart`},null,512)),[[j,`index.title.qrart`]]):a(``,!0),p.site?.features?.suno?.enabled?c((f(),l(x,{key:3,index:`/suno`},null,512)),[[j,`index.title.suno`]]):a(``,!0),p.site?.features?.luma?.enabled?c((f(),l(x,{key:4,index:`/luma`},null,512)),[[j,`index.title.luma`]]):a(``,!0)]),_:1},8,[`index`]),p.isMainOfficialHost?c((f(),l(x,{key:0,onRoute:e=>void 0,onClick:p.onDownload},null,8,[`onClick`])),[[j,`common.nav.mobileApp`]]):a(``,!0),c(i(x,{onRoute:e=>void 0,onClick:m[0]||=e=>p.openTab(`https://platform.acedata.cloud`)},null,512),[[j,`common.nav.apiPlatform`]]),c(i(x,{onRoute:e=>void 0,onClick:m[1]||=e=>p.openTab(`https://platform.acedata.cloud/support`)},null,512),[[j,`common.nav.support`]]),c(i(x,{onRoute:e=>void 0,onClick:m[2]||=e=>p.openTab(`https://platform.acedata.cloud/earning`)},null,512),[[j,`common.nav.referral`]])]),_:1},8,[`default-active`,`onSelect`])]),_:1})),p.isHome?a(``,!0):(f(),l(b,{key:3,md:4,xs:11},{default:u(()=>[p.authenticated?(f(),o(`div`,H,[e(`div`,{class:`console`,onClick:m[3]||=(...e)=>p.onConsole&&p.onConsole(...e)},r(p.$t(`common.button.console`)),1),i(k,{trigger:`click`},{dropdown:u(()=>[i(O,null,{default:u(()=>[i(D,{onClick:p.onProfile},{default:u(()=>[n(r(p.$t(`common.button.profile`)),1)]),_:1},8,[`onClick`]),i(D,{onClick:p.onLogout},{default:u(()=>[n(r(p.$t(`common.button.logout`)),1)]),_:1},8,[`onClick`])]),_:1})]),default:u(()=>[e(`img`,{src:p.user?.avatar||p.defaultAvatar,class:`avatar`},null,8,U)]),_:1})])):(f(),o(`div`,V,[i(w,{type:`primary`,class:`float-right`,size:`small`,round:``,onClick:p.onLogin},{default:u(()=>[n(r(p.$t(`common.button.login`)),1)]),_:1},8,[`onClick`]),i(T,{class:`locale float-right mr-4`}),i(E,{class:`float-right mr-4`})]))]),_:1}))]),_:1},8,[`class`])}var G=p({name:`LayoutIndex`,components:{TopHeader:E(B,[[`render`,W]]),BottomFooter:R,ElContainer:y,ElMain:g,ElFooter:_,ElHeader:v}});function K(e,t,n,r,a,o){let c=s(`top-header`),d=s(`el-header`),p=s(`router-view`),m=s(`el-main`),h=s(`bottom-footer`),g=s(`el-footer`),_=s(`el-container`);return f(),l(_,{class:`wrapper min-h-[100vh]`},{default:u(()=>[i(d,{class:`header p-0 h-auto`},{default:u(()=>[i(c)]),_:1}),i(m,{class:`main`},{default:u(()=>[i(p)]),_:1}),i(g,{class:`footer p-0 h-auto`},{default:u(()=>[i(h)]),_:1})]),_:1})}var q=E(G,[[`render`,K]]);export{q as default};