@acedatacloud/nexior 3.371.5 → 3.371.6

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 (273) hide show
  1. package/dist/assets/{ApiCodeButton-DyCQcWPT.js → ApiCodeButton-C6FWrCva.js} +1 -1
  2. package/dist/assets/{ApiCodeDialog-DfF1paQe.js → ApiCodeDialog-BSOAGpIl.js} +1 -1
  3. package/dist/assets/{Artifacts-DeeXmcXM.js → Artifacts-v6aQr948.js} +1 -1
  4. package/dist/assets/{AskUserQuestionCard-BphOGSFL.js → AskUserQuestionCard-B9r5PAWt.js} +1 -1
  5. package/dist/assets/{AudioPreview-Db4Jiu9s.js → AudioPreview-B8qr2QlT.js} +1 -1
  6. package/dist/assets/{Auth-Ba1GFqiJ.js → Auth-Qz3S7RBz.js} +1 -1
  7. package/dist/assets/{Bare-DG90GwH5.js → Bare-CyyL0_4R.js} +1 -1
  8. package/dist/assets/{BotPlaceholder-BrT2BqT3.js → BotPlaceholder-CG-3N26i.js} +1 -1
  9. package/dist/assets/{BottomFooter-WFR6_QhV.js → BottomFooter-pZhbWjGC.js} +1 -1
  10. package/dist/assets/{BrowseConnectors-CG2nxaOa.js → BrowseConnectors-B6itmWFg.js} +1 -1
  11. package/dist/assets/{BrowserPairingDialog-EHBoKgmq.js → BrowserPairingDialog-DSRNWzJg.js} +1 -1
  12. package/dist/assets/{Callback-Fg8ea2Bk.js → Callback-CZTWooWq.js} +1 -1
  13. package/dist/assets/{CodeSnippet-Dcdiu1in.js → CodeSnippet-DgcSbbsU.js} +1 -1
  14. package/dist/assets/{Console-D1_KVXR2.js → Console-BBxTJLSJ.js} +1 -1
  15. package/dist/assets/{Conversation-1XBRBUIF.js → Conversation-CHN3U1zy.js} +1 -1
  16. package/dist/assets/Conversation-Djf4TKT3.js +1 -0
  17. package/dist/assets/{Conversation-AdT9y2ml.css → Conversation-PiS-3hIh.css} +1 -1
  18. package/dist/assets/{CopyToClipboard-BGKJYLUb.js → CopyToClipboard-CnfP3j6K.js} +1 -1
  19. package/dist/assets/{Detail--OCveBDe.css → Detail-CTKzBwgm.css} +1 -1
  20. package/dist/assets/Detail-H6T_ACAo.js +2 -0
  21. package/dist/assets/{Extra-DDNae5p8.js → Extra-N4bz_ynA.js} +1 -1
  22. package/dist/assets/{FilePreview-Cm-nsN19.js → FilePreview-3oibArLi.js} +1 -1
  23. package/dist/assets/{Hailuo-gN1Qi8PV.js → Hailuo-CzSCljMp.js} +1 -1
  24. package/dist/assets/{History-CnG8fKJ5.js → History-DFUC7MI1.js} +1 -1
  25. package/dist/assets/{ImagePreview-BI2WtJD9.js → ImagePreview-CZs9JDgj.js} +1 -1
  26. package/dist/assets/{ImageWrapper-UDtY3eN8.js → ImageWrapper-BUBjCc4Y.js} +1 -1
  27. package/dist/assets/{Index-Br5oujDd.js → Index-7yAAcCnc.js} +1 -1
  28. package/dist/assets/{Index-DeXq3ZUD.js → Index-B83nU58S.js} +1 -1
  29. package/dist/assets/{Index-Dhmz_Euw.js → Index-BGgODwvs.js} +1 -1
  30. package/dist/assets/{Index-By_NWSaz.js → Index-BI7IvD_5.js} +1 -1
  31. package/dist/assets/{Index-xKUkuyyT.js → Index-Bl8zKfvm.js} +1 -1
  32. package/dist/assets/{Index-D-1CB5F8.js → Index-BwOPPFrx.js} +1 -1
  33. package/dist/assets/{Index-B2hMcr6a.js → Index-C8dz08xT.js} +1 -1
  34. package/dist/assets/{Index-7idA_Bxd.js → Index-C8ztBhDJ.js} +1 -1
  35. package/dist/assets/{Index-DrFo-lR5.js → Index-CLzix8gw.js} +1 -1
  36. package/dist/assets/{Index-NKnqyIui.js → Index-CYb1uz3n.js} +1 -1
  37. package/dist/assets/{Index-qoQulRnv.js → Index-CedzRUkc.js} +1 -1
  38. package/dist/assets/{Index-0hyZ0H3o2.js → Index-Ch0Xco0B2.js} +1 -1
  39. package/dist/assets/{Index-8gZOW0sJ.js → Index-Chf5wpzE.js} +1 -1
  40. package/dist/assets/{Index-vDjYpKVM.js → Index-ChnzAzDM.js} +1 -1
  41. package/dist/assets/{Index-CSptC6Yn.js → Index-CoUozD_X.js} +1 -1
  42. package/dist/assets/{Index-GcFGwYr7.js → Index-CuX8wB-J.js} +1 -1
  43. package/dist/assets/{Index-C2hvXGDm.js → Index-CvbQ8pbZ.js} +1 -1
  44. package/dist/assets/{Index-L-4H0bjK.js → Index-D-9JExIN.js} +1 -1
  45. package/dist/assets/{Index-DNOr1iW3.js → Index-DBJQPnv-.js} +1 -1
  46. package/dist/assets/{Index-CYezLMCm.js → Index-DKLECQzD.js} +1 -1
  47. package/dist/assets/{Index-CZYaNvqE.js → Index-D_72nyK6.js} +1 -1
  48. package/dist/assets/{Index-ClY6C9CW.js → Index-DcSYotGI.js} +1 -1
  49. package/dist/assets/{Index-Dboqekd6.js → Index-DjOhuydQ.js} +1 -1
  50. package/dist/assets/{Index-ChPo_nS6.js → Index-Ds72pk48.js} +1 -1
  51. package/dist/assets/{Index-BaQal-3S.js → Index-DzuFr4ZN.js} +1 -1
  52. package/dist/assets/{Index-DWPoYB-J.js → Index-Dzw9vy2Q.js} +1 -1
  53. package/dist/assets/{Index-DXyn9qUk.js → Index-EbrrxMJp.js} +1 -1
  54. package/dist/assets/{Index-BfEz17xd.js → Index-QVhHmPeT.js} +1 -1
  55. package/dist/assets/{Index-UlxbSfsT.js → Index-RLfIr6Wd.js} +1 -1
  56. package/dist/assets/{Index-DSU8KxZF.js → Index-bdI4gOf7.js} +1 -1
  57. package/dist/assets/{Index-DReQQDJT.js → Index-cA9Q2kHT.js} +1 -1
  58. package/dist/assets/{Index-R-nHNTqY.js → Index-i4QVlQSj.js} +1 -1
  59. package/dist/assets/{Index-DUre6b6Q.js → Index-kV9B534Y.js} +1 -1
  60. package/dist/assets/{Index-616Xzkz6.js → Index-nreUcrR7.js} +1 -1
  61. package/dist/assets/{Index-CwlCChgd.js → Index-pSZ8x4oA.js} +1 -1
  62. package/dist/assets/{Index-CSAAyyr-.js → Index-yD08zqTo.js} +1 -1
  63. package/dist/assets/{Invitees-Dhs-Vbz1.js → Invitees-tJhxy9gP.js} +1 -1
  64. package/dist/assets/{List-AN5SRm3y.js → List-JRCW-2v3.js} +1 -1
  65. package/dist/assets/{List-BOHzpOWY.js → List-QYECvNlK.js} +1 -1
  66. package/dist/assets/{List-EFijGIpJ.js → List-k6GfD4W_.js} +1 -1
  67. package/dist/assets/{LocalTools-d9bq1DKk.js → LocalTools-7PXxcEkm.js} +1 -1
  68. package/dist/assets/{LocalTools-DsOEoy5E.js → LocalTools-DdGKYdbA.js} +1 -1
  69. package/dist/assets/{Logo-Bk-FMbTK.js → Logo-BenBX9Da.js} +1 -1
  70. package/dist/assets/{Main-o0Oe-Xzd.js → Main-p2YgZplk.js} +1 -1
  71. package/dist/assets/Message-DqA6hbOr.js +3 -0
  72. package/dist/assets/{Message-Ciwuue9Q.css → Message-MNJe97I0.css} +1 -1
  73. package/dist/assets/{Model-CzcN45mJ.js → Model-BSBuC_kq.js} +1 -1
  74. package/dist/assets/{Navigator-C8Zu1I7k.js → Navigator-BOH7oW8Y.js} +4 -4
  75. package/dist/assets/{NotFound-B_RZjNiy.js → NotFound-RbxyL3Bn.js} +1 -1
  76. package/dist/assets/{PageHeader-Ce-bDWDK.js → PageHeader-BGawVup6.js} +1 -1
  77. package/dist/assets/Pay-CVDZ8AV7.css +1 -0
  78. package/dist/assets/Pay-HLlmauma.js +1 -0
  79. package/dist/assets/{Player-BroqHdEp.js → Player-zfV2wET8.js} +1 -1
  80. package/dist/assets/{Poivelle-B3i4BIJi.js → Poivelle-BQSiSpTp.js} +1 -1
  81. package/dist/assets/{RealtimeCall-DVrrlQgb.js → RealtimeCall-9erGXsm6.js} +1 -1
  82. package/dist/assets/{ReportButton-CNzy8ytz.js → ReportButton-B0ZDQxLy.js} +1 -1
  83. package/dist/assets/{ReportDialog-iVvYSkR2.js → ReportDialog-C9Ed7KVo.js} +1 -1
  84. package/dist/assets/{ScenarioPaymentMode-DjfcTokL.js → ScenarioPaymentMode-BMC9eBkY.js} +1 -1
  85. package/dist/assets/{ScheduledTasks-ihSalV__.js → ScheduledTasks-BGSPlhqV.js} +1 -1
  86. package/dist/assets/{ServicePricingSummary-DDotAm8d.js → ServicePricingSummary-CMOjp4_z.js} +1 -1
  87. package/dist/assets/{ShowcaseGrid-B9WuVAMp.js → ShowcaseGrid-Bi3bNMFN.js} +1 -1
  88. package/dist/assets/{ShowcaseResultTabs-D6syzWr0.js → ShowcaseResultTabs-Be1u7B7Y.js} +1 -1
  89. package/dist/assets/{SolanaWalletPickerDialog-DA5z7JvO.js → SolanaWalletPickerDialog-ZfFE4moG.js} +1 -1
  90. package/dist/assets/{Status-BtpwPL21.js → Status-CjqISdkv.js} +1 -1
  91. package/dist/assets/{Subscribe-D_nukBwe.js → Subscribe-BNKvzM85.js} +1 -1
  92. package/dist/assets/{TabSwitcher-DFTCRy9R.js → TabSwitcher-C378mpaQ.js} +1 -1
  93. package/dist/assets/{Tts-CmfUhbHO.js → Tts-tiYmIS9F.js} +1 -1
  94. package/dist/assets/{VideoPlayer-spbjDbBj.js → VideoPlayer-DaI2iEuf.js} +1 -1
  95. package/dist/assets/{VideoPreview-_hD289E2.js → VideoPreview-iLfPvLl6.js} +1 -1
  96. package/dist/assets/airwallexCheckout-CX2POYmT.js +1 -0
  97. package/dist/assets/arrow-down-ChqsQZig.js +1 -0
  98. package/dist/assets/{arrow-down-wide-narrow-OghJzty4.js → arrow-down-wide-narrow-CONJ6MMS.js} +1 -1
  99. package/dist/assets/arrow-left-Dtuf3L2j.js +1 -0
  100. package/dist/assets/arrow-right-Bqfb6t60.js +1 -0
  101. package/dist/assets/arrow-up-CSpz0srB.js +1 -0
  102. package/dist/assets/{authorizeFlow-CKMe8_Mi.js → authorizeFlow-DA7_paQn.js} +1 -1
  103. package/dist/assets/{avatar-BvqKVB1C.js → avatar-B4_zPbI4.js} +1 -1
  104. package/dist/assets/{basic-BLiOd5uO.js → basic-DD2NrEBB.js} +1 -1
  105. package/dist/assets/{book-open-CciDm_Vd.js → book-open-Cofs7E9U.js} +1 -1
  106. package/dist/assets/{box-BCNuHUlh.js → box-B17UUMMH.js} +1 -1
  107. package/dist/assets/{boxes-i3mXsEpj.js → boxes-ZhcRrPKY.js} +1 -1
  108. package/dist/assets/{brain-BxOScqtA.js → brain-hlKyCeK7.js} +1 -1
  109. package/dist/assets/{chart-no-axes-combined-BgdzySL2.js → chart-no-axes-combined-CIn_DbGn.js} +1 -1
  110. package/dist/assets/{chat-Dkcmvp3V.js → chat-D-bnMuYT.js} +1 -1
  111. package/dist/assets/check-CTUDvagB.js +1 -0
  112. package/dist/assets/chevron-down-Ce5WWTJ4.js +1 -0
  113. package/dist/assets/chevron-right-CIFdBNP8.js +1 -0
  114. package/dist/assets/{circle-alert-B_P37SXR.js → circle-alert-DMhbkY9i.js} +1 -1
  115. package/dist/assets/circle-check-C7raGFyE.js +1 -0
  116. package/dist/assets/{circle-question-mark-BZwtMJy4.js → circle-question-mark-C4awnefe.js} +1 -1
  117. package/dist/assets/{clipboard-list-D5h3FLI6.js → clipboard-list-BtP8g_uG.js} +1 -1
  118. package/dist/assets/clock-CxvQJYC5.js +1 -0
  119. package/dist/assets/code-DnoJmxOh.js +1 -0
  120. package/dist/assets/{codingBridge-9fRKkXYx.js → codingBridge-Cvwiwqe7.js} +1 -1
  121. package/dist/assets/{codingBridgeNotify-DrZu58pn.js → codingBridgeNotify-Bs3sOsDi.js} +1 -1
  122. package/dist/assets/{coins-CCFGM5M3.js → coins-CGkvr3bq.js} +1 -1
  123. package/dist/assets/{collapse-DsSFtXhr.js → collapse-D4pqPjny.js} +1 -1
  124. package/dist/assets/{constants-CmC-0Hwp.js → constants-CuuFtMEu.js} +1 -1
  125. package/dist/assets/{copy-fKMS0PiE.js → copy-Bgq_Lt5F.js} +1 -1
  126. package/dist/assets/{createTaskActions-DQtYTRiq.js → createTaskActions-CgTN396G.js} +1 -1
  127. package/dist/assets/{date-picker-tuto8KOx.js → date-picker-CIVhQSq0.js} +1 -1
  128. package/dist/assets/{digitalhuman-BA-kq4Bb.js → digitalhuman-1RfVeR5X.js} +1 -1
  129. package/dist/assets/{dollar-sign-Df-0dDx9.js → dollar-sign--zIyRxW2.js} +1 -1
  130. package/dist/assets/{download-x4LIyCFT.js → download-BpXfjPLY.js} +1 -1
  131. package/dist/assets/{drawer-D-nvOajb.js → drawer-DttMD3IQ.js} +1 -1
  132. package/dist/assets/{dropdown-ZW2KkxX8.js → dropdown-uDZzlyvc.js} +1 -1
  133. package/dist/assets/{dropdown-C-txjYRt.js → dropdown-xvOpGXaf.js} +1 -1
  134. package/dist/assets/{ellipsis-BHYVvatw.js → ellipsis-D-4XqsA_.js} +1 -1
  135. package/dist/assets/{esm-DZEpexXY.js → esm-BxnuLIIk.js} +2 -2
  136. package/dist/assets/{external-link-BlEDNV7V.js → external-link-CfkUyibd.js} +1 -1
  137. package/dist/assets/{eye-C0mUD2kS.js → eye-Dhb3D_OP.js} +1 -1
  138. package/dist/assets/{file-B_edwII7.js → file-BY8wxxW3.js} +1 -1
  139. package/dist/assets/{file-output-DUwHsaTR.js → file-output-CSH2H9Po.js} +1 -1
  140. package/dist/assets/{file-text-DSjOXw5_.js → file-text-iEDL634w.js} +1 -1
  141. package/dist/assets/{fish-xeeiP7E9.js → fish-7f57Y8Hh.js} +1 -1
  142. package/dist/assets/{flux-CZWDSsaT.js → flux-Ca7x13EY.js} +1 -1
  143. package/dist/assets/{folder-BX4TmtAd.js → folder-BQwFHQqf.js} +1 -1
  144. package/dist/assets/gauge-Cn1dy4QG.js +1 -0
  145. package/dist/assets/{generationInput-CuX9cjvY.js → generationInput-Tp6tVYL4.js} +1 -1
  146. package/dist/assets/{globe-HRE9WPel.js → globe-CeROj4EC.js} +1 -1
  147. package/dist/assets/{grokvideo-SCXVcV3o.js → grokvideo-DBBElwKl.js} +1 -1
  148. package/dist/assets/{hailuo-CjcT1syR.js → hailuo-DndOJa7m.js} +1 -1
  149. package/dist/assets/{headphones-Bbkug9k5.js → headphones-CFqTn-wN.js} +1 -1
  150. package/dist/assets/{history-CH3z3rd0.js → history-BRP3o6Xd.js} +1 -1
  151. package/dist/assets/{house-CxlhGUbg.js → house-BUpAjJMo.js} +1 -1
  152. package/dist/assets/{i18n-BQrNxKw9.js → i18n-lmeSFJDq.js} +1 -1
  153. package/dist/assets/{image-B-M2bJ6h.js → image-CfYTaFPL.js} +1 -1
  154. package/dist/assets/{imageRequests-rKUC83Nh.js → imageRequests-DkHCCRlh.js} +1 -1
  155. package/dist/assets/{index-DqV-SJ5V.js → index-DVmeVwK7.js} +5 -5
  156. package/dist/assets/{index.es-xLHNFjv4.js → index.es-Chh6NaN3.js} +1 -1
  157. package/dist/assets/{info-BQSzmvEK.js → info-DbD2xHpS.js} +1 -1
  158. package/dist/assets/{input-number-BirnWaVC.js → input-number-CMFoxP_g.js} +1 -1
  159. package/dist/assets/{key-round-ChCuz1jv.js → key-round-CIFO1AJb.js} +1 -1
  160. package/dist/assets/{kling-DTdHs3_5.js → kling-BOhcy_Wh.js} +1 -1
  161. package/dist/assets/{languages-Bl73JZYq.js → languages-U21LtzrS.js} +1 -1
  162. package/dist/assets/{laptop-BOh762DU.js → laptop-By9AaYDw.js} +1 -1
  163. package/dist/assets/lib-CsvHzvqw.js +3 -0
  164. package/dist/assets/{lightbulb-D5pLYn1Y.js → lightbulb-Dmr-hP5L.js} +1 -1
  165. package/dist/assets/{link-COtKkd88.js → link-m8jORFL0.js} +1 -1
  166. package/dist/assets/loader-circle-b6njcpdq.js +1 -0
  167. package/dist/assets/{lock-ChRu85GF.js → lock-ClNzLpGj.js} +1 -1
  168. package/dist/assets/{luma-BW0j0Pb8.js → luma-Bbjxsp1K.js} +1 -1
  169. package/dist/assets/{maestro-BjzFgF7e.js → maestro-3lYA-9TB.js} +1 -1
  170. package/dist/assets/{maestroLanguages-DTI_fmcg.js → maestroLanguages-nCvoB59e.js} +1 -1
  171. package/dist/assets/{mail-CQdi9ZzD.js → mail-t2bgiRlI.js} +1 -1
  172. package/dist/assets/{message-circle-DxV12Lc6.js → message-circle-BhkVaGxg.js} +1 -1
  173. package/dist/assets/{mic-BpSNYK33.js → mic-C_oCRbvR.js} +1 -1
  174. package/dist/assets/{midjourney-CPZijRWY.js → midjourney-Du1OMPdL.js} +1 -1
  175. package/dist/assets/{minimax-BkYTmKXk.js → minimax-Dt0kZ3Vo.js} +1 -1
  176. package/dist/assets/{mobileLocalExec-BTp8FnEX.js → mobileLocalExec-Ce7U3Nmb.js} +1 -1
  177. package/dist/assets/{models-qt9s4QBH.js → models-Cru5uJc2.js} +1 -1
  178. package/dist/assets/{monitor-CE9GQaE1.js → monitor-CNUuuIgl.js} +1 -1
  179. package/dist/assets/{mouse-pointer-2-DUGOXw5q.js → mouse-pointer-2-HsST9qMs.js} +1 -1
  180. package/dist/assets/music-2-JRU0Dy3p.js +1 -0
  181. package/dist/assets/{nanobanana-hHXFtUYP.js → nanobanana-DiX5DuZY.js} +1 -1
  182. package/dist/assets/{omni-DpQnaEWk.js → omni-DJ2wmtaL.js} +1 -1
  183. package/dist/assets/{openaiimage-CVZfwpa8.js → openaiimage-BqvK74sh.js} +1 -1
  184. package/dist/assets/{pagination-CdEqT6nu.js → pagination-B62agDTK.js} +1 -1
  185. package/dist/assets/{pagination-BNM_M1GC.js → pagination-B_nilV_t.js} +1 -1
  186. package/dist/assets/{pagination-SAEpTY0E.js → pagination-DEYlwTlL.js} +1 -1
  187. package/dist/assets/{palette-VPPhzXTH.js → palette-zKJYv6Zy.js} +1 -1
  188. package/dist/assets/{paperclip-DtJRgA-W.js → paperclip-D0oNKYmJ.js} +1 -1
  189. package/dist/assets/{pause-COMcncHS.js → pause-U4QQSdVl.js} +1 -1
  190. package/dist/assets/{pencil-BTHCbcBX.js → pencil-DHzOKEgq.js} +1 -1
  191. package/dist/assets/{pika-C7XCLds7.js → pika-BbThRPIH.js} +1 -1
  192. package/dist/assets/{pixverse-CGaGZF00.js → pixverse-C-ZGeFKf.js} +1 -1
  193. package/dist/assets/play-CE4vLIhC.js +1 -0
  194. package/dist/assets/{plug-C0_t43IR.js → plug-D5dZg2UY.js} +1 -1
  195. package/dist/assets/plus-CKVbpoNT.js +1 -0
  196. package/dist/assets/{poivelle-Cz93rInj.js → poivelle-Ckaod8ZT.js} +1 -1
  197. package/dist/assets/{popover-BCDyyoJf.js → popover-D2p4u8-Q.js} +1 -1
  198. package/dist/assets/{producer-Dce1_I-e.js → producer-BbFTej8S.js} +1 -1
  199. package/dist/assets/{qrart-Czda0FqW.js → qrart-VBAjMw1M.js} +1 -1
  200. package/dist/assets/{qwenimage-CspF--PW.js → qwenimage-CuCAms4O.js} +1 -1
  201. package/dist/assets/{realtime-BSiECcor.js → realtime-B8R0_LhC.js} +1 -1
  202. package/dist/assets/{refresh-cw-D7ZZA5dZ.js → refresh-cw-Br21vEXT.js} +1 -1
  203. package/dist/assets/rotate-ccw-qPIu5GI_.js +1 -0
  204. package/dist/assets/rotate-cw-B7QEaCme.js +1 -0
  205. package/dist/assets/{row-IQ605R-m.js → row-DP0oDZAs.js} +1 -1
  206. package/dist/assets/search-Ba7fFpK4.js +1 -0
  207. package/dist/assets/{seedance-Bdy5PN34.js → seedance-hj8hoS13.js} +1 -1
  208. package/dist/assets/{seedream-DY3kkM79.js → seedream-CaMAYFeC.js} +1 -1
  209. package/dist/assets/{select-vXURdu1n.js → select-C_X0J3Ch.js} +1 -1
  210. package/dist/assets/{serp-D0jI8jgI.js → serp-BCRB0Wv_.js} +1 -1
  211. package/dist/assets/{shield-BP9Syrng.js → shield-BJ2lOk1S.js} +1 -1
  212. package/dist/assets/{showcase-D2MQ88YU.js → showcase-BzFqOq7u.js} +1 -1
  213. package/dist/assets/{showcaseRecreateMixin-BTTx6P4V.js → showcaseRecreateMixin-DyKdifmx.js} +1 -1
  214. package/dist/assets/{shuffle-7eMQRCTi.js → shuffle-DuAaOCLP.js} +1 -1
  215. package/dist/assets/{siteHome-C_LuwTQb.js → siteHome-CubcvlzE.js} +1 -1
  216. package/dist/assets/{slider-ILog1xgF.js → slider-CdeLiUQL.js} +1 -1
  217. package/dist/assets/{solana-wallets-DFhbGuWs.js → solana-wallets-Ctt177Lt.js} +2 -2
  218. package/dist/assets/{sora-3A2qd3Rj.js → sora-CRRO9qcp.js} +1 -1
  219. package/dist/assets/{sparkles-DvrnpaZU.js → sparkles-CKXe2q1X.js} +1 -1
  220. package/dist/assets/square-_WGgwmKd.js +1 -0
  221. package/dist/assets/{store-Cg1vR3oj.js → store-DztoOndf.js} +1 -1
  222. package/dist/assets/{suno-pr3WzvOs.js → suno-BPfVaq-I.js} +1 -1
  223. package/dist/assets/{switch-DsvSpAPL.js → switch-DyfMMvH-.js} +1 -1
  224. package/dist/assets/{table-C_Fimrfp.js → table-BEiwdkro.js} +1 -1
  225. package/dist/assets/{tabs-D_ymCjuP.js → tabs-6hfO7ztL.js} +1 -1
  226. package/dist/assets/{tag-yyEb6fTF.js → tag-mqM1JPuG.js} +1 -1
  227. package/dist/assets/{taskPolling-CNkyfqFX.js → taskPolling-U8DOPUQy.js} +1 -1
  228. package/dist/assets/terminal-Brg8gOCC.js +1 -0
  229. package/dist/assets/{time-picker-BY_8GGxp.js → time-picker-DgkXiE-7.js} +1 -1
  230. package/dist/assets/{tooltip-DhzXpaev.js → tooltip-OUJEXz3N.js} +1 -1
  231. package/dist/assets/{trash-2-CuwbroP3.js → trash-2-Cy68rO6n.js} +1 -1
  232. package/dist/assets/{triangle-alert-CXwoT9L1.js → triangle-alert-CjbgCRoN.js} +1 -1
  233. package/dist/assets/{upload-DPM3VJNR.js → upload-XPx0yx5g.js} +1 -1
  234. package/dist/assets/{upload-_ak4mf2P.js → upload-vSq7Ihy4.js} +1 -1
  235. package/dist/assets/user-CbpGf9ep.js +1 -0
  236. package/dist/assets/{veo-Z326mp90.js → veo-BEgEF3Oz.js} +1 -1
  237. package/dist/assets/{video-DeT9cCCj.js → video-a0RDUv9h.js} +1 -1
  238. package/dist/assets/{volume-2-Cd3hiwwO.js → volume-2-DGSpj-NH.js} +1 -1
  239. package/dist/assets/{wallet-BIHkm5lY.js → wallet-Ca1vgVzZ.js} +1 -1
  240. package/dist/assets/{wan-DMD3wwVk.js → wan-iM8yvoVy.js} +1 -1
  241. package/dist/assets/{wand-sparkles-DKunfvfr.js → wand-sparkles-BLj6TbQF.js} +1 -1
  242. package/dist/assets/{web-CkSTYnBp.js → web-D4sEVuy1.js} +1 -1
  243. package/dist/assets/{webextrator-BRrqmOXi.js → webextrator-CppLRjXW.js} +1 -1
  244. package/dist/assets/{zap-Bs0LoGjL.js → zap-D95myyfC.js} +1 -1
  245. package/dist/index.html +4 -4
  246. package/package.json +2 -1
  247. package/dist/assets/Conversation-D6eSyt3H.js +0 -1
  248. package/dist/assets/Detail-DppGnkTU.js +0 -2
  249. package/dist/assets/Message-BkQFvQNA.js +0 -3
  250. package/dist/assets/Pay-B9KTqsCM.css +0 -1
  251. package/dist/assets/Pay-z0qsNo1_.js +0 -1
  252. package/dist/assets/airwallexCheckout-BtejPoL2.js +0 -1
  253. package/dist/assets/arrow-down-D057mODD.js +0 -1
  254. package/dist/assets/arrow-left-YoHcMhBE.js +0 -1
  255. package/dist/assets/arrow-right-B9ho0-hr.js +0 -1
  256. package/dist/assets/arrow-up-803cjwMX.js +0 -1
  257. package/dist/assets/check-BQ2kURhQ.js +0 -1
  258. package/dist/assets/chevron-down-B3REnXgR.js +0 -1
  259. package/dist/assets/chevron-right-w2PXBeor.js +0 -1
  260. package/dist/assets/circle-check-BQthOLHp.js +0 -1
  261. package/dist/assets/clock-B-p2Z5fl.js +0 -1
  262. package/dist/assets/code-D6hLj3tB.js +0 -1
  263. package/dist/assets/gauge-BSdnz2_X.js +0 -1
  264. package/dist/assets/loader-circle-DKKtAnTB.js +0 -1
  265. package/dist/assets/music-2-B89JBAVE.js +0 -1
  266. package/dist/assets/play-Cj4Rc7zR.js +0 -1
  267. package/dist/assets/plus-D5KrvAv-.js +0 -1
  268. package/dist/assets/rotate-ccw-CdzApwyj.js +0 -1
  269. package/dist/assets/rotate-cw-5loEUj__.js +0 -1
  270. package/dist/assets/search-Dm-cjK6g.js +0 -1
  271. package/dist/assets/square-CJdx7-_g.js +0 -1
  272. package/dist/assets/terminal-Cee_oZYd.js +0 -1
  273. package/dist/assets/user-Q-EjoZno.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,R as c,T as l,at as u,ht as d,it as f,j as p,mt 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-vXURdu1n.js";import{t as x}from"./upload-DPM3VJNR.js";import{t as S}from"./tooltip-DhzXpaev.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-qt9s4QBH.js";import{n as E,r as D}from"./radio-BNhFzeBO.js";import{t as O}from"./drawer-D-nvOajb.js";import{t as k}from"./switch-DsvSpAPL.js";import{t as A}from"./clock-B-p2Z5fl.js";import{a as j,i as M,n as ee,r as N,s as P,t as F}from"./pagination-CdEqT6nu.js";import{t as I}from"./info-BQSzmvEK.js";import{t as L}from"./trash-2-CuwbroP3.js";import{t as te}from"./triangle-alert-CXwoT9L1.js";import{t as ne}from"./upload-_ak4mf2P.js";import{t as R}from"./wand-sparkles-DKunfvfr.js";import{Mi as re}from"./constants-CmC-0Hwp.js";import{t as z}from"./preload-helper-zJ_50EbN.js";import{A as B,Cn as V,Hr as H,Ji as U,La as W,Li as G,O as K,Qi as q,Ur as J,Va as Y,aa as X,at as ie,ct as ae,di as oe,et as se,it as ce,li as le,ot as ue,st as de,to as Z,zi as Q}from"./index-DqV-SJ5V.js";import{t as fe}from"./CopyToClipboard-BGKJYLUb.js";import{t as pe}from"./ReportButton-CNzy8ytz.js";import{t as me}from"./ImagePreview-BI2WtJD9.js";import{n as he}from"./taskDrawerMixin-DyAUhFEq.js";import{t as ge}from"./ServicePricingSummary-DDotAm8d.js";/* empty css */import{t as _e}from"./ScenarioPaymentMode-DjfcTokL.js";import{t as ve}from"./ApiCodeButton-DyCQcWPT.js";import{t as ye}from"./BotPlaceholder-BrT2BqT3.js";import{t as be}from"./taskPollingMixin-CcLxtz8z.js";import{n as xe,t as Se}from"./generationInput-CuX9cjvY.js";var Ce=v({name:`LayoutPika`,components:{MagicIcon:R,ElDrawer:O,ElButton:Z},mixins:[he]}),we={class:`main flex flex-row flex-1`},Te={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)]`},Ee={class:`result h-full p-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function De(t,n,r,i,o,c){let l=u(`magic-icon`),p=u(`el-button`),h=u(`el-drawer`);return g(),s(`div`,we,[e(`div`,Te,[f(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ee,[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`]),[[_,!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:m(()=>[f(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Oe=B(Ce,[[`render`,De],[`__scopeId`,`data-v-85e060ce`]]),ke=v({name:`IngredientsSelector`,components:{ElSwitch:k,InfoIcon:j},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients},set(e){if(!e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,ingredients:e,ingredients_mode:void 0,image_url:void 0});return}this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,ingredients:e,model:`2.0`})}}},mounted(){this.value===void 0&&(this.value=!1)}}),Ae={class:`field`},je={class:`label`},Me={class:`title font-bold`};function Ne(t,n,r,o,c,l){let d=u(`info-icon`),f=u(`el-switch`);return g(),s(`div`,Ae,[e(`div`,je,[e(`h2`,Me,i(t.$t(`pika.name.ingredients`)),1),a(d,{content:t.$t(`pika.description.ingredients`),class:`info`},null,8,[`content`])]),a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])}var Pe=B(ke,[[`render`,Ne],[`__scopeId`,`data-v-606e1d1a`]]),Fe=v({name:`EffectSelector`,components:{ElSelect:y,ElOption:b},data(){return{}},computed:{options(){return[{value:`Levitate`,label:this.$t(`pika.style.effect1`)},{value:`Decapitate`,label:this.$t(`pika.style.effect2`)},{value:`Eye-pop`,label:this.$t(`pika.style.effect3`)},{value:`Ta-da`,label:this.$t(`pika.style.effect4`)},{value:`Deflate`,label:this.$t(`pika.style.effect5`)},{value:`Crumble`,label:this.$t(`pika.style.effect6`)},{value:`Dissolve`,label:this.$t(`pika.style.effect7`)},{value:`Squish`,label:this.$t(`pika.style.effect8`)},{value:`Inflate`,label:this.$t(`pika.style.effect9`)},{value:`Melt`,label:this.$t(`pika.style.effect10`)},{value:`Cake-ify`,label:this.$t(`pika.style.effect11`)},{value:`Crush`,label:this.$t(`pika.style.effect12`)},{value:`Explode`,label:this.$t(`pika.style.effect13`)}]},value:{get(){return this.$store.state.pika?.config?.effect},set(e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,effect:e})}}}}),Ie={class:`field`},Le={class:`title font-bold`},Re={class:`float-left`};function ze(t,n,r,o,c,d){let f=u(`el-option`),_=u(`el-select`);return g(),s(`div`,Ie,[e(`h2`,Le,i(t.$t(`pika.name.effect`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pika.placeholder.select`),clearable:``},{default:m(()=>[(g(!0),s(l,null,h(t.options,t=>(g(),p(f,{key:t.value,label:t.label,value:t.value},{default:m(()=>[e(`span`,Re,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Be=B(Fe,[[`render`,ze],[`__scopeId`,`data-v-d1c54475`]]),Ve=v({name:`IngredientsModelSelector`,components:{ElRadioButton:E,ElRadioGroup:D},data(){return{options:[{label:this.$t(`pika.button.precise`),value:`precise`},{label:this.$t(`pika.button.creative`),value:`creative`}]}},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients_mode},set(e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,ingredients_mode:e})}}},mounted(){this.value||=re}}),He={class:`field`},Ue={class:`title font-bold`};function We(t,n,o,c,d,f){let _=u(`el-radio-button`),v=u(`el-radio-group`);return g(),s(`div`,He,[e(`h2`,Ue,i(t.$t(`pika.name.ingredientsModel`)),1),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`quality`},{default:m(()=>[(g(!0),s(l,null,h(t.options,e=>(g(),p(_,{key:e.value,label:e.value},{default:m(()=>[r(i(e.label),1)]),_:2},1032,[`label`]))),128))]),_:1},8,[`modelValue`])])}var Ge=B(Ve,[[`render`,We],[`__scopeId`,`data-v-b72865fa`]]),Ke=v({name:`ModelSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`2.0`,label:`2.0`},{value:`1.5`,label:`1.5`}]}},computed:{value:{get(){return this.$store.state.pika?.config?.model},set(e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika.config,model:e})}}},mounted(){this.value||=`2.0`}}),qe={class:`field`},Je={class:`title font-bold`};function Ye(t,n,r,o,c,d){let f=u(`el-option`),_=u(`el-select`);return g(),s(`div`,qe,[e(`h2`,Je,i(t.$t(`pika.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pika.placeholder.select`)},{default:m(()=>[(g(!0),s(l,null,h(t.options,e=>(g(),p(f,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Xe=B(Ke,[[`render`,Ye],[`__scopeId`,`data-v-7b2e870a`]]),Ze=v({name:`ImageUrlInput`,components:{UploadIcon:ne,ElUpload:x,ElButton:Z,InfoIcon:j,ImagePreview:me},mixins:[ae,de,ie,se],data(){return{fileList:[],uploadUrl:W()+`/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.pika?.config?.image_url}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;let t=this.fileList.filter(e=>!e.response?.file_url),n=(e||[]).map(e=>this.fileList.find(t=>t.response?.file_url===e||t.url===e)||{name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}});this.fileList=[...n,...t.filter(e=>!n.includes(e))]}}},methods:{onChange(e){!e.url&&e.raw&&(e.url=URL.createObjectURL(e.raw))},onExceed(){T.warning(this.$t(`pika.message.uploadStartImageExceed`))},onError(){T.error(this.$t(`pika.message.uploadStartImageError`))},onRemove(){this.onSetStartImageUrl()},onSetStartImageUrl(){this.suppressWatch=!0,this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,image_url:this.urls}),this.$nextTick(()=>{this.suppressWatch=!1})},onSuccess(){this.onSetStartImageUrl()},onRemovePreview(e){let t=this.fileList.indexOf(e);t>=0&&this.fileList.splice(t,1),e.url?.startsWith(`blob:`)&&URL.revokeObjectURL(e.url),this.onSetStartImageUrl()}}}),Qe={class:`field`},$e={class:`label`},et={class:`title font-bold`},tt={key:0,class:`file-list mt-2 flex flex-wrap gap-[10px]`};function nt(t,n,c,d,f,_){let v=u(`info-icon`),y=u(`upload-icon`),b=u(`el-button`),x=u(`el-upload`),S=u(`image-preview`);return g(),s(`div`,null,[e(`div`,Qe,[e(`div`,$e,[e(`h2`,et,i(t.$t(`pika.name.imageUrl`)),1),a(v,{content:t.$t(`pika.description.imageUrl`),class:`info`},null,8,[`content`])]),a(x,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:3,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-change":t.onChange,"on-remove":t.onRemove,"on-success":t.onSuccess,headers:t.headers},{default:m(()=>[a(b,{size:`small`,type:`primary`,round:``},{default:m(()=>[a(y,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`pika.button.uploadImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-change`,`on-remove`,`on-success`,`headers`])]),t.fileList.length?(g(),s(`div`,tt,[(g(!0),s(l,null,h(t.fileList,(e,n)=>(g(),p(S,{key:e.uid||e.url||n,url:e.url||e.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>t.onRemovePreview(e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])):o(``,!0)])}var rt=B(Ze,[[`render`,nt],[`__scopeId`,`data-v-637337bb`]]),it=v({name:`PromptInput`,components:{PromptTextarea:M},computed:{prompt:{get(){return this.$store.state.pika?.config?.prompt},set(e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,prompt:e})}}},mounted(){this.prompt||=``}});function at(e,t,n,r,i,a){let o=u(`prompt-textarea`);return g(),p(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`pika.name.prompt`),info:e.$t(`pika.description.prompt`),placeholder:e.$t(`pika.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var ot=v({name:`PresetPanel`,components:{MagicIcon:R,ImageUrlInput:rt,ElButton:Z,ServicePricingSummary:ge,PromptInput:B(it,[[`render`,at]]),IngredientsSelector:Pe,IngredientsModelSelector:Ge,ModelSelector:Xe,EffectSelector:Be,ScenarioPaymentMode:_e},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{canGenerate(){return Se(`pika`,H(this.config))},config(){return this.$store.state.pika?.config},consumption(){return V(this.config,this.service?.cost)},service(){return this.$store.state.pika?.service},walletMode(){return G()&&Q(`pika`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1;let e=Q(`pika`);e.quoteUsdc=void 0,e.quoteLoading=!1,this.canGenerate&&(this.quoteTimer=window.setTimeout(this.refreshQuote,350))},async refreshQuote(){if(!this.canGenerate)return;let e=Q(`pika`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await J.quote(H(this.config));t===this.quoteRunId&&e.mode===`wallet`&&this.canGenerate&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),st={class:`flex flex-col h-full`},ct={class:`flex-1 overflow-y-auto p-5`},lt={class:`flex flex-col items-center justify-center px-5 pb-5`};function ut(t,n,c,l,d,f){let h=u(`prompt-input`),_=u(`model-selector`),v=u(`ingredients-selector`),y=u(`effect-selector`),b=u(`image-url-input`),x=u(`ingredients-model-selector`),S=u(`scenario-payment-mode`),C=u(`service-pricing-summary`),w=u(`magic-icon`),T=u(`el-button`);return g(),s(`div`,st,[e(`div`,ct,[a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),t.config?.ingredients?(g(),p(b,{key:0,class:`mb-4`})):o(``,!0),t.config?.ingredients?(g(),p(x,{key:1,class:`mb-4`})):o(``,!0)]),e(`div`,lt,[a(S,{scenario:`pika`}),t.walletMode?o(``,!0):(g(),p(C,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(T,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:m(()=>[a(w,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`pika.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var dt=B(ot,[[`render`,ut]]),ft=v({name:`VideoPlayer`,components:{VuePlyr:c(()=>z(()=>import(`./index.esm-B6OqqThm.js`),[]))},props:{modelValue:{type:Object,required:!0}},data(){return{clientReady:!1,options:{quality:{default:1080,options:[1080]}}}},mounted(){this.clientReady=!0}}),pt=[`data-poster`],mt=[`src`];function ht(t,n,r,i,a,c){let l=u(`vue-plyr`);return g(),s(`div`,null,[t.clientReady?(g(),p(l,{key:0,options:t.options,class:`video`},{default:m(()=>[e(`video`,{controls:``,playsinline:``,preload:`metadata`,"data-poster":t.modelValue?.image_url},[e(`source`,{size:`1080`,src:t.modelValue?.video_url,type:`video/mp4`},null,8,mt)],8,pt)]),_:1},8,[`options`])):o(``,!0)])}var gt=v({name:`TaskPreview`,components:{DeleteIcon:L,ChannelIcon:P,InfoIcon:I,MagicIcon:R,TimeIcon:A,WarningIcon:te,CopyToClipboard:fe,ElAlert:C,VideoPlayer:B(ft,[[`render`,ht],[`__scopeId`,`data-v-3a68a4bd`]]),ElTooltip:S,ElButton:Z,ApiCodeButton:ve,ReportButton:pe},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.pika?.application},config(){return this.$store.state.pika?.config},videos(){let e=[],t=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(n=>{let r=n;t&&(r.action=t),e.push(r)}),e.length===0&&e.push({}),e}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Y.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(`pika/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}},isFailure(e){let t=this.modelValue?.response;return t?.success===!1||!!t?.error||e?.state===`failed`||e?.state===`cancelled`},isWaiting(e){return this.modelValue?.response?this.isFailure(e)||e?.video_url?!1:!e?.state||[`queued`,`pending`,`processing`,`running`].includes(e.state):!0},onDownload(e){console.log(`on download`),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()},onOpenVideo(e){window.open(e,`_blank`)}}}),_t={class:`left`},vt={class:`main`},yt={class:`bot`},bt={class:`datetime`},xt=[`aria-label`],St={class:`info`},Ct={key:0,class:`prompt mt-2`},wt={key:0},Tt={key:1},Et={key:0,class:n({content:!0,failed:!0})},Dt={class:`image-wrapper`},Ot={key:0,class:n({operations:!0,"mt-2":!0})},kt={key:0,class:`description`},At={class:`description`},jt={key:1,class:`description`},Mt={key:1,class:n({content:!0})},Nt={class:`description`},$={class:`description`},Pt={key:0,class:`description`},Ft={class:`description`},It={key:2,class:n({content:!0})},Lt={class:`description`};function Rt(n,c,d,f,_,v){let y=u(`capability-presentation`),b=u(`delete-icon`),x=u(`el-tooltip`),S=u(`VideoPlayer`),C=u(`el-button`),w=u(`api-code-button`),T=u(`report-button`),E=u(`channel-icon`),D=u(`magic-icon`),O=u(`copy-to-clipboard`),k=u(`time-icon`),A=u(`el-alert`),j=u(`warning-icon`),M=u(`info-icon`);return g(!0),s(l,null,h(n.videos,(l,u)=>(g(),s(`div`,{key:u,class:`preview`},[e(`div`,_t,[a(y,{capability:`pika`,part:`avatar`,class:`avatar`})]),e(`div`,vt,[e(`div`,yt,[a(y,{capability:`pika`,part:`name`}),e(`span`,bt,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?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,xt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,St,[n.modelValue?.request?.prompt?(g(),s(`p`,Ct,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(g(),s(`span`,wt,` - (`+i(n.$t(`pika.status.pending`))+`) `,1)),n.modelValue?.response&&n.isWaiting(l)?(g(),s(`span`,Tt,` - (`+i(n.$t(`pika.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&l?.video_url?(g(),s(`div`,Et,[e(`div`,Dt,[a(S,{"model-value":l},null,8,[`model-value`])]),l?(g(),s(`div`,Ot,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`pika.message.downloadVideo`),placement:`top-start`},{default:m(()=>[l?.video_url?(g(),p(C,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:e=>n.onDownload(l?.video_url)},{default:m(()=>[r(i(n.$t(`pika.button.download`)),1)]),_:1},8,[`onClick`])):o(``,!0)]),_:2},1032,[`content`]),a(w,{path:`/pika/videos`,body:n.modelValue?.request},null,8,[`body`]),a(T,{service:`pika`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(A,{closable:!1,class:`mt-2 success`},{default:m(()=>[n.modelValue?.request?.model?(g(),s(`p`,kt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),e(`p`,At,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(O,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,jt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.isFailure(l)?(g(),s(`div`,Mt,[a(A,{closable:!1,class:`failure`},{template:m(()=>[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.failure`)),1)]),default:m(()=>[e(`p`,Nt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(O,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,$,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(O,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Pt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,Ft,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(O,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])]),_:1})])):o(``,!0),n.isWaiting(l)?(g(),s(`div`,It,[a(A,{closable:!1,class:`info`},{template:m(()=>[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.response?`pika.status.processing`:`pika.status.pending`)),1)]),default:m(()=>[e(`p`,Lt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(O,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})])):o(``,!0)])]))),128)}var zt=v({name:`RecentPanel`,components:{TaskPreview:B(gt,[[`render`,Rt],[`__scopeId`,`data-v-4c95d941`]]),BotPlaceholder:ye,NoTasks:N,ScrollList:ee},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.pika?.tasks,items:this.$store.state.pika?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Bt={key:0},Vt={key:2,class:`w-full h-full flex items-center justify-center`};function Ht(e,t,n,r,i,c){let d=u(`bot-placeholder`),f=u(`task-preview`),_=u(`scroll-list`),v=u(`no-tasks`);return g(),s(l,null,[e.tasks?.items===void 0?(g(),s(`div`,Bt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),p(_,{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(()=>[(g(!0),s(l,null,h(e.tasks?.items,(e,t)=>(g(),p(f,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,Vt,[a(v)])):o(``,!0)],64)}var Ut=v({name:`PikaIndex`,components:{ConfigPanel:dt,Layout:Oe,RecentPanel:B(zt,[[`render`,Ht]])},mixins:[ue,be(`pika`)],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.pika?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.pika?.status?.getTasks===w.Request||this.fetchingTasks},service(){return this.$store.state.pika.service},credential(){return this.$store.state.pika.credential},config(){return this.$store.state.pika.config},initializing(){return this.$store.state.pika.status.getApplications===w.Request},needApply(){return this.$store.state.pika.status.getApplications===w.Success&&!this.application},application(){return this.$store.state.pika.application},applications(){return this.$store.state.pika.applications},tasks(){return this.$store.state.pika.tasks},walletMode(){return G()&&Q(`pika`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`pika/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onPollTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},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.onPollTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await F({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.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(`pika/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`pika/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},onApply(){U.create({application:this.application}).then(({data:e})=>{this.application=e,T.success(this.$t(`application.message.applySuccessfully`))}).catch(e=>{e?.response?.data?.code===`duplication`&&T.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(`pika/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){let e=H(this.config),t=xe(`pika`,e);if(t){T.error(this.$t(`common.message.${t}`));return}if(!ce(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;let n;if(this.walletMode){let t=this.getWalletContext();if(!t){T.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}n=J.generate(e,{mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!X())return;let t=this.credential?.token;if(!t)return;n=J.generate(e,{token:t})}T.info(this.$t(`pika.message.startingTask`)),q(`pika`,n).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),T.success(this.$t(`pika.message.startTaskSuccess`)),this.$store.commit(`pika/setConfig`,{config:void 0})}).catch(e=>{e instanceof le||K(e,`pika`)||(this.walletMode?T.error(this.$t(`common.x402Scenario.paymentFailed`)):T.error(this.$t(`pika.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return oe(this.$wallet)},async confirmWalletPayment(e){return Y.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Wt(e,t,n,r,i,o){let s=u(`config-panel`),c=u(`recent-panel`),l=u(`layout`);return g(),p(l,null,{config:m(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:m(()=>[a(c,{ref:`recentPanel`,class:`panel recent`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Gt=B(Ut,[[`render`,Wt],[`__scopeId`,`data-v-50569acf`]]);export{Gt 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,R as c,T as l,at as u,ht as d,it as f,j as p,mt 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-C_X0J3Ch.js";import{t as x}from"./upload-XPx0yx5g.js";import{t as S}from"./tooltip-OUJEXz3N.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-Cru5uJc2.js";import{n as E,r as D}from"./radio-BNhFzeBO.js";import{t as O}from"./drawer-DttMD3IQ.js";import{t as k}from"./switch-DyfMMvH-.js";import{t as A}from"./clock-CxvQJYC5.js";import{a as j,i as M,n as ee,r as N,s as P,t as F}from"./pagination-B62agDTK.js";import{t as I}from"./info-DbD2xHpS.js";import{t as L}from"./trash-2-Cy68rO6n.js";import{t as te}from"./triangle-alert-CjbgCRoN.js";import{t as ne}from"./upload-vSq7Ihy4.js";import{t as R}from"./wand-sparkles-BLj6TbQF.js";import{Mi as re}from"./constants-CuuFtMEu.js";import{t as z}from"./preload-helper-zJ_50EbN.js";import{A as B,Cn as V,Hr as H,Ji as U,La as W,Li as G,O as K,Qi as q,Ur as J,Va as Y,aa as X,at as ie,ct as ae,di as oe,et as se,it as ce,li as le,ot as ue,st as de,to as Z,zi as Q}from"./index-DVmeVwK7.js";import{t as fe}from"./CopyToClipboard-CnfP3j6K.js";import{t as pe}from"./ReportButton-B0ZDQxLy.js";import{t as me}from"./ImagePreview-CZs9JDgj.js";import{n as he}from"./taskDrawerMixin-DyAUhFEq.js";import{t as ge}from"./ServicePricingSummary-CMOjp4_z.js";/* empty css */import{t as _e}from"./ScenarioPaymentMode-BMC9eBkY.js";import{t as ve}from"./ApiCodeButton-C6FWrCva.js";import{t as ye}from"./BotPlaceholder-CG-3N26i.js";import{t as be}from"./taskPollingMixin-CcLxtz8z.js";import{n as xe,t as Se}from"./generationInput-Tp6tVYL4.js";var Ce=v({name:`LayoutPika`,components:{MagicIcon:R,ElDrawer:O,ElButton:Z},mixins:[he]}),we={class:`main flex flex-row flex-1`},Te={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)]`},Ee={class:`result h-full p-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function De(t,n,r,i,o,c){let l=u(`magic-icon`),p=u(`el-button`),h=u(`el-drawer`);return g(),s(`div`,we,[e(`div`,Te,[f(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ee,[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`]),[[_,!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:m(()=>[f(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Oe=B(Ce,[[`render`,De],[`__scopeId`,`data-v-85e060ce`]]),ke=v({name:`IngredientsSelector`,components:{ElSwitch:k,InfoIcon:j},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients},set(e){if(!e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,ingredients:e,ingredients_mode:void 0,image_url:void 0});return}this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,ingredients:e,model:`2.0`})}}},mounted(){this.value===void 0&&(this.value=!1)}}),Ae={class:`field`},je={class:`label`},Me={class:`title font-bold`};function Ne(t,n,r,o,c,l){let d=u(`info-icon`),f=u(`el-switch`);return g(),s(`div`,Ae,[e(`div`,je,[e(`h2`,Me,i(t.$t(`pika.name.ingredients`)),1),a(d,{content:t.$t(`pika.description.ingredients`),class:`info`},null,8,[`content`])]),a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])}var Pe=B(ke,[[`render`,Ne],[`__scopeId`,`data-v-606e1d1a`]]),Fe=v({name:`EffectSelector`,components:{ElSelect:y,ElOption:b},data(){return{}},computed:{options(){return[{value:`Levitate`,label:this.$t(`pika.style.effect1`)},{value:`Decapitate`,label:this.$t(`pika.style.effect2`)},{value:`Eye-pop`,label:this.$t(`pika.style.effect3`)},{value:`Ta-da`,label:this.$t(`pika.style.effect4`)},{value:`Deflate`,label:this.$t(`pika.style.effect5`)},{value:`Crumble`,label:this.$t(`pika.style.effect6`)},{value:`Dissolve`,label:this.$t(`pika.style.effect7`)},{value:`Squish`,label:this.$t(`pika.style.effect8`)},{value:`Inflate`,label:this.$t(`pika.style.effect9`)},{value:`Melt`,label:this.$t(`pika.style.effect10`)},{value:`Cake-ify`,label:this.$t(`pika.style.effect11`)},{value:`Crush`,label:this.$t(`pika.style.effect12`)},{value:`Explode`,label:this.$t(`pika.style.effect13`)}]},value:{get(){return this.$store.state.pika?.config?.effect},set(e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,effect:e})}}}}),Ie={class:`field`},Le={class:`title font-bold`},Re={class:`float-left`};function ze(t,n,r,o,c,d){let f=u(`el-option`),_=u(`el-select`);return g(),s(`div`,Ie,[e(`h2`,Le,i(t.$t(`pika.name.effect`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pika.placeholder.select`),clearable:``},{default:m(()=>[(g(!0),s(l,null,h(t.options,t=>(g(),p(f,{key:t.value,label:t.label,value:t.value},{default:m(()=>[e(`span`,Re,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Be=B(Fe,[[`render`,ze],[`__scopeId`,`data-v-d1c54475`]]),Ve=v({name:`IngredientsModelSelector`,components:{ElRadioButton:E,ElRadioGroup:D},data(){return{options:[{label:this.$t(`pika.button.precise`),value:`precise`},{label:this.$t(`pika.button.creative`),value:`creative`}]}},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients_mode},set(e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,ingredients_mode:e})}}},mounted(){this.value||=re}}),He={class:`field`},Ue={class:`title font-bold`};function We(t,n,o,c,d,f){let _=u(`el-radio-button`),v=u(`el-radio-group`);return g(),s(`div`,He,[e(`h2`,Ue,i(t.$t(`pika.name.ingredientsModel`)),1),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`quality`},{default:m(()=>[(g(!0),s(l,null,h(t.options,e=>(g(),p(_,{key:e.value,label:e.value},{default:m(()=>[r(i(e.label),1)]),_:2},1032,[`label`]))),128))]),_:1},8,[`modelValue`])])}var Ge=B(Ve,[[`render`,We],[`__scopeId`,`data-v-b72865fa`]]),Ke=v({name:`ModelSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`2.0`,label:`2.0`},{value:`1.5`,label:`1.5`}]}},computed:{value:{get(){return this.$store.state.pika?.config?.model},set(e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika.config,model:e})}}},mounted(){this.value||=`2.0`}}),qe={class:`field`},Je={class:`title font-bold`};function Ye(t,n,r,o,c,d){let f=u(`el-option`),_=u(`el-select`);return g(),s(`div`,qe,[e(`h2`,Je,i(t.$t(`pika.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pika.placeholder.select`)},{default:m(()=>[(g(!0),s(l,null,h(t.options,e=>(g(),p(f,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Xe=B(Ke,[[`render`,Ye],[`__scopeId`,`data-v-7b2e870a`]]),Ze=v({name:`ImageUrlInput`,components:{UploadIcon:ne,ElUpload:x,ElButton:Z,InfoIcon:j,ImagePreview:me},mixins:[ae,de,ie,se],data(){return{fileList:[],uploadUrl:W()+`/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.pika?.config?.image_url}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;let t=this.fileList.filter(e=>!e.response?.file_url),n=(e||[]).map(e=>this.fileList.find(t=>t.response?.file_url===e||t.url===e)||{name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}});this.fileList=[...n,...t.filter(e=>!n.includes(e))]}}},methods:{onChange(e){!e.url&&e.raw&&(e.url=URL.createObjectURL(e.raw))},onExceed(){T.warning(this.$t(`pika.message.uploadStartImageExceed`))},onError(){T.error(this.$t(`pika.message.uploadStartImageError`))},onRemove(){this.onSetStartImageUrl()},onSetStartImageUrl(){this.suppressWatch=!0,this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,image_url:this.urls}),this.$nextTick(()=>{this.suppressWatch=!1})},onSuccess(){this.onSetStartImageUrl()},onRemovePreview(e){let t=this.fileList.indexOf(e);t>=0&&this.fileList.splice(t,1),e.url?.startsWith(`blob:`)&&URL.revokeObjectURL(e.url),this.onSetStartImageUrl()}}}),Qe={class:`field`},$e={class:`label`},et={class:`title font-bold`},tt={key:0,class:`file-list mt-2 flex flex-wrap gap-[10px]`};function nt(t,n,c,d,f,_){let v=u(`info-icon`),y=u(`upload-icon`),b=u(`el-button`),x=u(`el-upload`),S=u(`image-preview`);return g(),s(`div`,null,[e(`div`,Qe,[e(`div`,$e,[e(`h2`,et,i(t.$t(`pika.name.imageUrl`)),1),a(v,{content:t.$t(`pika.description.imageUrl`),class:`info`},null,8,[`content`])]),a(x,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:3,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-change":t.onChange,"on-remove":t.onRemove,"on-success":t.onSuccess,headers:t.headers},{default:m(()=>[a(b,{size:`small`,type:`primary`,round:``},{default:m(()=>[a(y,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`pika.button.uploadImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-change`,`on-remove`,`on-success`,`headers`])]),t.fileList.length?(g(),s(`div`,tt,[(g(!0),s(l,null,h(t.fileList,(e,n)=>(g(),p(S,{key:e.uid||e.url||n,url:e.url||e.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>t.onRemovePreview(e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])):o(``,!0)])}var rt=B(Ze,[[`render`,nt],[`__scopeId`,`data-v-637337bb`]]),it=v({name:`PromptInput`,components:{PromptTextarea:M},computed:{prompt:{get(){return this.$store.state.pika?.config?.prompt},set(e){this.$store.commit(`pika/setConfig`,{...this.$store.state.pika?.config,prompt:e})}}},mounted(){this.prompt||=``}});function at(e,t,n,r,i,a){let o=u(`prompt-textarea`);return g(),p(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`pika.name.prompt`),info:e.$t(`pika.description.prompt`),placeholder:e.$t(`pika.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var ot=v({name:`PresetPanel`,components:{MagicIcon:R,ImageUrlInput:rt,ElButton:Z,ServicePricingSummary:ge,PromptInput:B(it,[[`render`,at]]),IngredientsSelector:Pe,IngredientsModelSelector:Ge,ModelSelector:Xe,EffectSelector:Be,ScenarioPaymentMode:_e},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{canGenerate(){return Se(`pika`,H(this.config))},config(){return this.$store.state.pika?.config},consumption(){return V(this.config,this.service?.cost)},service(){return this.$store.state.pika?.service},walletMode(){return G()&&Q(`pika`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1;let e=Q(`pika`);e.quoteUsdc=void 0,e.quoteLoading=!1,this.canGenerate&&(this.quoteTimer=window.setTimeout(this.refreshQuote,350))},async refreshQuote(){if(!this.canGenerate)return;let e=Q(`pika`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await J.quote(H(this.config));t===this.quoteRunId&&e.mode===`wallet`&&this.canGenerate&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),st={class:`flex flex-col h-full`},ct={class:`flex-1 overflow-y-auto p-5`},lt={class:`flex flex-col items-center justify-center px-5 pb-5`};function ut(t,n,c,l,d,f){let h=u(`prompt-input`),_=u(`model-selector`),v=u(`ingredients-selector`),y=u(`effect-selector`),b=u(`image-url-input`),x=u(`ingredients-model-selector`),S=u(`scenario-payment-mode`),C=u(`service-pricing-summary`),w=u(`magic-icon`),T=u(`el-button`);return g(),s(`div`,st,[e(`div`,ct,[a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),t.config?.ingredients?(g(),p(b,{key:0,class:`mb-4`})):o(``,!0),t.config?.ingredients?(g(),p(x,{key:1,class:`mb-4`})):o(``,!0)]),e(`div`,lt,[a(S,{scenario:`pika`}),t.walletMode?o(``,!0):(g(),p(C,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(T,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:m(()=>[a(w,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`pika.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var dt=B(ot,[[`render`,ut]]),ft=v({name:`VideoPlayer`,components:{VuePlyr:c(()=>z(()=>import(`./index.esm-B6OqqThm.js`),[]))},props:{modelValue:{type:Object,required:!0}},data(){return{clientReady:!1,options:{quality:{default:1080,options:[1080]}}}},mounted(){this.clientReady=!0}}),pt=[`data-poster`],mt=[`src`];function ht(t,n,r,i,a,c){let l=u(`vue-plyr`);return g(),s(`div`,null,[t.clientReady?(g(),p(l,{key:0,options:t.options,class:`video`},{default:m(()=>[e(`video`,{controls:``,playsinline:``,preload:`metadata`,"data-poster":t.modelValue?.image_url},[e(`source`,{size:`1080`,src:t.modelValue?.video_url,type:`video/mp4`},null,8,mt)],8,pt)]),_:1},8,[`options`])):o(``,!0)])}var gt=v({name:`TaskPreview`,components:{DeleteIcon:L,ChannelIcon:P,InfoIcon:I,MagicIcon:R,TimeIcon:A,WarningIcon:te,CopyToClipboard:fe,ElAlert:C,VideoPlayer:B(ft,[[`render`,ht],[`__scopeId`,`data-v-3a68a4bd`]]),ElTooltip:S,ElButton:Z,ApiCodeButton:ve,ReportButton:pe},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.pika?.application},config(){return this.$store.state.pika?.config},videos(){let e=[],t=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(n=>{let r=n;t&&(r.action=t),e.push(r)}),e.length===0&&e.push({}),e}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Y.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(`pika/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}},isFailure(e){let t=this.modelValue?.response;return t?.success===!1||!!t?.error||e?.state===`failed`||e?.state===`cancelled`},isWaiting(e){return this.modelValue?.response?this.isFailure(e)||e?.video_url?!1:!e?.state||[`queued`,`pending`,`processing`,`running`].includes(e.state):!0},onDownload(e){console.log(`on download`),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()},onOpenVideo(e){window.open(e,`_blank`)}}}),_t={class:`left`},vt={class:`main`},yt={class:`bot`},bt={class:`datetime`},xt=[`aria-label`],St={class:`info`},Ct={key:0,class:`prompt mt-2`},wt={key:0},Tt={key:1},Et={key:0,class:n({content:!0,failed:!0})},Dt={class:`image-wrapper`},Ot={key:0,class:n({operations:!0,"mt-2":!0})},kt={key:0,class:`description`},At={class:`description`},jt={key:1,class:`description`},Mt={key:1,class:n({content:!0})},Nt={class:`description`},$={class:`description`},Pt={key:0,class:`description`},Ft={class:`description`},It={key:2,class:n({content:!0})},Lt={class:`description`};function Rt(n,c,d,f,_,v){let y=u(`capability-presentation`),b=u(`delete-icon`),x=u(`el-tooltip`),S=u(`VideoPlayer`),C=u(`el-button`),w=u(`api-code-button`),T=u(`report-button`),E=u(`channel-icon`),D=u(`magic-icon`),O=u(`copy-to-clipboard`),k=u(`time-icon`),A=u(`el-alert`),j=u(`warning-icon`),M=u(`info-icon`);return g(!0),s(l,null,h(n.videos,(l,u)=>(g(),s(`div`,{key:u,class:`preview`},[e(`div`,_t,[a(y,{capability:`pika`,part:`avatar`,class:`avatar`})]),e(`div`,vt,[e(`div`,yt,[a(y,{capability:`pika`,part:`name`}),e(`span`,bt,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?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,xt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,St,[n.modelValue?.request?.prompt?(g(),s(`p`,Ct,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(g(),s(`span`,wt,` - (`+i(n.$t(`pika.status.pending`))+`) `,1)),n.modelValue?.response&&n.isWaiting(l)?(g(),s(`span`,Tt,` - (`+i(n.$t(`pika.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&l?.video_url?(g(),s(`div`,Et,[e(`div`,Dt,[a(S,{"model-value":l},null,8,[`model-value`])]),l?(g(),s(`div`,Ot,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`pika.message.downloadVideo`),placement:`top-start`},{default:m(()=>[l?.video_url?(g(),p(C,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:e=>n.onDownload(l?.video_url)},{default:m(()=>[r(i(n.$t(`pika.button.download`)),1)]),_:1},8,[`onClick`])):o(``,!0)]),_:2},1032,[`content`]),a(w,{path:`/pika/videos`,body:n.modelValue?.request},null,8,[`body`]),a(T,{service:`pika`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(A,{closable:!1,class:`mt-2 success`},{default:m(()=>[n.modelValue?.request?.model?(g(),s(`p`,kt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),e(`p`,At,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(O,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,jt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.isFailure(l)?(g(),s(`div`,Mt,[a(A,{closable:!1,class:`failure`},{template:m(()=>[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.failure`)),1)]),default:m(()=>[e(`p`,Nt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(O,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,$,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(O,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Pt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,Ft,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(O,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])]),_:1})])):o(``,!0),n.isWaiting(l)?(g(),s(`div`,It,[a(A,{closable:!1,class:`info`},{template:m(()=>[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.response?`pika.status.processing`:`pika.status.pending`)),1)]),default:m(()=>[e(`p`,Lt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pika.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(O,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})])):o(``,!0)])]))),128)}var zt=v({name:`RecentPanel`,components:{TaskPreview:B(gt,[[`render`,Rt],[`__scopeId`,`data-v-4c95d941`]]),BotPlaceholder:ye,NoTasks:N,ScrollList:ee},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.pika?.tasks,items:this.$store.state.pika?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Bt={key:0},Vt={key:2,class:`w-full h-full flex items-center justify-center`};function Ht(e,t,n,r,i,c){let d=u(`bot-placeholder`),f=u(`task-preview`),_=u(`scroll-list`),v=u(`no-tasks`);return g(),s(l,null,[e.tasks?.items===void 0?(g(),s(`div`,Bt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),p(_,{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(()=>[(g(!0),s(l,null,h(e.tasks?.items,(e,t)=>(g(),p(f,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,Vt,[a(v)])):o(``,!0)],64)}var Ut=v({name:`PikaIndex`,components:{ConfigPanel:dt,Layout:Oe,RecentPanel:B(zt,[[`render`,Ht]])},mixins:[ue,be(`pika`)],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.pika?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.pika?.status?.getTasks===w.Request||this.fetchingTasks},service(){return this.$store.state.pika.service},credential(){return this.$store.state.pika.credential},config(){return this.$store.state.pika.config},initializing(){return this.$store.state.pika.status.getApplications===w.Request},needApply(){return this.$store.state.pika.status.getApplications===w.Success&&!this.application},application(){return this.$store.state.pika.application},applications(){return this.$store.state.pika.applications},tasks(){return this.$store.state.pika.tasks},walletMode(){return G()&&Q(`pika`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`pika/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onPollTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},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.onPollTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await F({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.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(`pika/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`pika/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},onApply(){U.create({application:this.application}).then(({data:e})=>{this.application=e,T.success(this.$t(`application.message.applySuccessfully`))}).catch(e=>{e?.response?.data?.code===`duplication`&&T.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(`pika/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){let e=H(this.config),t=xe(`pika`,e);if(t){T.error(this.$t(`common.message.${t}`));return}if(!ce(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;let n;if(this.walletMode){let t=this.getWalletContext();if(!t){T.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}n=J.generate(e,{mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!X())return;let t=this.credential?.token;if(!t)return;n=J.generate(e,{token:t})}T.info(this.$t(`pika.message.startingTask`)),q(`pika`,n).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),T.success(this.$t(`pika.message.startTaskSuccess`)),this.$store.commit(`pika/setConfig`,{config:void 0})}).catch(e=>{e instanceof le||K(e,`pika`)||(this.walletMode?T.error(this.$t(`common.x402Scenario.paymentFailed`)):T.error(this.$t(`pika.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return oe(this.$wallet)},async confirmWalletPayment(e){return Y.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Wt(e,t,n,r,i,o){let s=u(`config-panel`),c=u(`recent-panel`),l=u(`layout`);return g(),p(l,null,{config:m(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:m(()=>[a(c,{ref:`recentPanel`,class:`panel recent`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Gt=B(Ut,[[`render`,Wt],[`__scopeId`,`data-v-50569acf`]]);export{Gt as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{r as v,t as y}from"./select-vXURdu1n.js";import{t as b}from"./upload-DPM3VJNR.js";import{t as x}from"./tooltip-DhzXpaev.js";import{t as S}from"./alert-BprQRUmf.js";import{h as C,v as w}from"./models-qt9s4QBH.js";import{t as T}from"./checkbox-DXMDpaxv.js";import{t as E}from"./drawer-D-nvOajb.js";import{t as D}from"./input-number-BirnWaVC.js";import{t as O}from"./clock-B-p2Z5fl.js";import{a as k,i as ee,n as A,r as j,s as M,t as N}from"./pagination-CdEqT6nu.js";import{t as te}from"./info-BQSzmvEK.js";import{t as ne}from"./trash-2-CuwbroP3.js";import{t as re}from"./triangle-alert-CXwoT9L1.js";import{t as P}from"./wand-sparkles-DKunfvfr.js";import{bt as ie}from"./constants-CmC-0Hwp.js";import{A as F,Cn as I,Kn as L,La as R,Li as z,O as B,Qi as V,Va as H,aa as U,at as W,ct as G,di as K,et as q,it as J,li as Y,lo as ae,ot as oe,qn as X,st as se,to as Z,zi as Q}from"./index-DqV-SJ5V.js";import{t as ce}from"./CopyToClipboard-BGKJYLUb.js";import{t as le}from"./ReportButton-CNzy8ytz.js";import{t as ue}from"./ImagePreview-BI2WtJD9.js";import{n as de}from"./taskDrawerMixin-DyAUhFEq.js";import{t as fe}from"./ServicePricingSummary-DDotAm8d.js";import{t as pe}from"./VideoPlayer-spbjDbBj.js";import{t as me}from"./ScenarioPaymentMode-DjfcTokL.js";import{t as he}from"./ApiCodeButton-DyCQcWPT.js";import{t as ge}from"./BotPlaceholder-BrT2BqT3.js";import{t as _e}from"./taskPollingMixin-CcLxtz8z.js";import{n as ve,t as ye}from"./generationInput-CuX9cjvY.js";var be=_({name:`LayoutWan`,components:{MagicIcon:P,ElDrawer:E,ElButton:Z},mixins:[de]}),xe={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-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function we(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,xe,[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 Te=F(be,[[`render`,we],[`__scopeId`,`data-v-20dc9571`]]),Ee=_({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:`wan3.0-video`,label:this.$t(`wan.button.modelWan3`)}]},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||=ie}}),De={class:`field`},Oe={class:`title font-bold`},ke={class:`float-left`};function Ae(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,De,[e(`h2`,Oe,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`,ke,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var je=F(Ee,[[`render`,Ae],[`__scopeId`,`data-v-f4ee3412`]]),Me=`720p`,Ne=_({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||=Me}}),Pe={class:`field`},Fe={class:`title font-bold`},Ie={class:`float-left`};function Le(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Pe,[e(`h2`,Fe,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`,Ie,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Re=F(Ne,[[`render`,Le],[`__scopeId`,`data-v-3e39f44e`]]),ze=5,Be=_({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||=ze}}),Ve={class:`field`},He={class:`title font-bold`},Ue={class:`float-left`};function We(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Ve,[e(`h2`,He,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`,Ue,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ge=F(Be,[[`render`,We],[`__scopeId`,`data-v-5f35a2cf`]]),Ke=_({name:`ImageUrlInput`,components:{ElUpload:b,ElButton:Z,InfoIcon:k,ImagePreview:ue},mixins:[G,se,W,q],data(){return{fileList:[],uploadUrl:R()+`/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(){w.warning(this.$t(`wan.message.uploadImageExceed`))},onError(){w.error(this.$t(`wan.message.uploadImageError`))},async onRemove(){w.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()}}}),qe={class:`relative`},Je={class:`flex justify-between`},Ye={class:`flex justify-start items-center`},Xe={class:`text-sm font-bold`};function Ze(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`,qe,[e(`div`,Je,[e(`div`,Ye,[e(`span`,Xe,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`,"before-upload":t.beforeUploadSizeGuard,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`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-remove`,`on-success`,`headers`])])}var Qe=F(Ke,[[`render`,Ze],[`__scopeId`,`data-v-56929914`]]),$e=_({name:`PromptInput`,components:{PromptTextarea:ee},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 et(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 tt=F($e,[[`render`,et]]),nt=_({name:`WanMediaInput`,components:{ElInput:ae},computed:{value:{get(){return this.$store.state.wan?.config?.media_text||``},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,media_text:e})}}}}),rt={class:`field`},it={class:`flex items-center mb-2`},at={class:`text-sm font-bold`},ot={class:`text-xs mt-1 text-[var(--el-text-color-secondary)]`};function st(t,n,r,o,c,u){let d=l(`el-input`);return h(),s(`div`,rt,[e(`div`,it,[e(`span`,at,i(t.$t(`wan.name.media`)),1)]),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,type:`textarea`,rows:5,placeholder:t.$t(`wan.placeholder.media`)},null,8,[`modelValue`,`placeholder`]),e(`p`,ot,i(t.$t(`wan.description.media`)),1)])}var ct=F(nt,[[`render`,st]]),lt=_({name:`Wan3Options`,components:{ElSelect:v,ElOption:y,ElInputNumber:D,ElCheckbox:T},data:()=>({ratios:[`adaptive`,`16:9`,`4:3`,`1:1`,`3:4`,`9:16`]}),computed:{ratio:{get(){return this.$store.state.wan?.config?.ratio||`adaptive`},set(e){this.set({ratio:e})}},duration:{get(){return this.$store.state.wan?.config?.duration??5},set(e){this.set({duration:e})}},audio:{get(){return this.$store.state.wan?.config?.audio!==!1},set(e){this.set({audio:e})}}},methods:{set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,...e})}}}),ut={class:`space-y-4`},dt={class:`field`},ft={class:`label`},pt={class:`field`},mt={class:`label`};function ht(t,n,o,u,d,g){let _=l(`el-option`),v=l(`el-select`),y=l(`el-input-number`),b=l(`el-checkbox`);return h(),s(`div`,ut,[e(`div`,dt,[e(`span`,ft,i(t.$t(`wan.name.ratio`)),1),a(v,{modelValue:t.ratio,"onUpdate:modelValue":n[0]||=e=>t.ratio=e},{default:p(()=>[(h(!0),s(c,null,m(t.ratios,e=>(h(),f(_,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),e(`div`,pt,[e(`span`,mt,i(t.$t(`wan.name.duration`)),1),a(y,{modelValue:t.duration,"onUpdate:modelValue":n[1]||=e=>t.duration=e,min:-1,max:30},null,8,[`modelValue`])]),a(b,{modelValue:t.audio,"onUpdate:modelValue":n[2]||=e=>t.audio=e},{default:p(()=>[r(i(t.$t(`wan.name.audio`)),1)]),_:1},8,[`modelValue`])])}var gt=_({name:`PresetPanel`,components:{MagicIcon:P,ElButton:Z,PromptInput:tt,ImageUrlInput:Qe,ModelSelector:je,ResolutionSelector:Re,DurationSelector:Ge,MediaInput:ct,Wan3Options:F(lt,[[`render`,ht],[`__scopeId`,`data-v-49568593`]]),ServicePricingSummary:fe,ScenarioPaymentMode:me},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{canGenerate(){return ye(`wan`,L(this.config))},config(){return this.$store.state.wan?.config},consumption(){return I(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`||e===`wan3.0-video`},supportsDuration(){return this.config?.model===`wan2.6-t2v`},isWan3(){return this.config?.model===`wan3.0-video`},supportsImageUrl(){let e=this.config?.model;return e===`wan2.6-i2v`||e===`wan2.6-i2v-flash`},walletMode(){return z()&&Q(`wan`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1;let e=Q(`wan`);e.quoteUsdc=void 0,e.quoteLoading=!1,this.canGenerate&&(this.quoteTimer=window.setTimeout(this.refreshQuote,350))},async refreshQuote(){if(!this.canGenerate)return;let e=Q(`wan`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await X.quote(L(this.config));t===this.quoteRunId&&e.mode===`wallet`&&this.canGenerate&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),_t={class:`flex flex-col h-full`},vt={class:`flex-1 overflow-y-auto p-5`},yt={class:`flex flex-col items-center justify-center px-5 pb-5`};function bt(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(`media-input`),S=l(`wan3-options`),C=l(`scenario-payment-mode`),w=l(`service-pricing-summary`),T=l(`magic-icon`),E=l(`el-button`);return h(),s(`div`,_t,[e(`div`,vt,[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),t.isWan3?(h(),f(x,{key:3,class:`mb-4`})):o(``,!0),t.isWan3?(h(),f(S,{key:4,class:`mb-4`})):o(``,!0)]),e(`div`,yt,[a(C,{scenario:`wan`}),t.walletMode?o(``,!0):(h(),f(w,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(E,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:p(()=>[a(T,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`wan.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var xt=F(gt,[[`render`,bt]]),St=_({name:`TaskPreview`,components:{DeleteIcon:ne,ChannelIcon:M,InfoIcon:te,MagicIcon:P,TimeIcon:O,WarningIcon:re,CopyToClipboard:ce,ElAlert:S,VideoPlayer:pe,ElTooltip:x,ElButton:Z,ApiCodeButton:he,ReportButton:le},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}),w.success(this.$t(`common.message.deleteTaskSuccess`))}catch{w.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e){console.debug(`on download wan video`,e),window.open(e,`_blank`)}}}),Ct={class:`preview`},wt={class:`left`},Tt={class:`main`},Et={class:`bot`},Dt={class:`datetime`},Ot=[`aria-label`],kt={class:`info`},At={key:0,class:`prompt mt-2`},jt={key:0},Mt={key:1},Nt={key:0,class:n({content:!0,failed:!0})},Pt={key:0,class:`mb-4`},Ft={key:1,class:n({operations:!0,"mt-2":!0})},It={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Lt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Rt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},zt={key:1,class:n({content:!0})},Bt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ht={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Ut={key:2,class:n({content:!0})},Wt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Gt(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(`report-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 h(),s(`div`,Ct,[e(`div`,wt,[a(g,{capability:`wan`,part:`avatar`,class:`avatar`})]),e(`div`,Tt,[e(`div`,Et,[a(g,{capability:`wan`,part:`name`}),e(`span`,Dt,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,Ot)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,kt,[n.modelValue?.request?.prompt?(h(),s(`p`,At,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,jt,` - (`+i(n.$t(`wan.status.pending`))+`) `,1)),n.modelValue?.response&&n.isWaiting?(h(),s(`span`,Mt,` - (`+i(n.$t(`wan.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&!n.isFailure&&!n.isWaiting?(h(),s(`div`,Nt,[n.modelValue?.response?.video_url?(h(),s(`div`,Pt,[a(y,{src:n.modelValue?.response?.video_url},null,8,[`src`])])):o(``,!0),n.modelValue?.response?.video_url?(h(),s(`div`,Ft,[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`]),a(S,{service:`wan`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(D,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,It,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.model`))+`: `+i(n.modelValue?.request?.model)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])):o(``,!0),e(`p`,Lt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Rt,[a(E,{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`,zt,[a(D,{closable:!1,class:`failure`},{template:p(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.failure`)),1)]),default:p(()=>[e(`p`,Bt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),e(`p`,$,[a(k,{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(w,{content:n.modelValue?.response?.error?.message},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Vt,[a(E,{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`,Ht,[a(C,{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(w,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])]),_:1})])):o(``,!0),n.isWaiting?(h(),s(`div`,Ut,[a(D,{closable:!1,class:`info`},{template:p(()=>[a(E,{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`,Wt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])):o(``,!0)])])}var Kt=_({name:`RecentPanel`,components:{TaskPreview:F(St,[[`render`,Gt],[`__scopeId`,`data-v-f180e91e`]]),BotPlaceholder:ge,NoTasks:j,ScrollList:A},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?.()}}}),qt={key:0},Jt={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`,qt,[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`,Jt,[a(v)])):o(``,!0)],64)}var Xt=_({name:`WanIndex`,components:{ConfigPanel:xt,Layout:Te,RecentPanel:F(Kt,[[`render`,Yt]])},mixins:[oe,_e(`wan`)],inject:[`initialized`],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.wan?.status?.getApplications===C.Request},tasksLoading(){return this.$store.state.wan?.status?.getTasks===C.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},walletMode(){return z()&&Q(`wan`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`wan/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onPollTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},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.onPollTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await N({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`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,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){let e=L(this.config),t=ve(`wan`,e);if(t){w.error(this.$t(`common.message.${t}`));return}if(!J(this.uploadTracker,e=>this.$t(e),e=>w.warning(e)))return;let n;if(this.walletMode){let t=this.getWalletContext();if(!t){w.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}n=X.generate(e,{mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!U())return;let t=this.credential?.token;if(!t)return;n=X.generate(e,{token:t})}w.info(this.$t(`wan.message.startingTask`)),V(`wan`,n).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),w.success(this.$t(`wan.message.startTaskSuccess`))}).catch(e=>{e instanceof Y||B(e,`wan`)||(this.walletMode?w.error(this.$t(`common.x402Scenario.paymentFailed`)):w.error(this.$t(`wan.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return K(this.$wallet)},async confirmWalletPayment(e){return H.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Zt(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 Qt=F(Xt,[[`render`,Zt]]);export{Qt as default};
1
+ import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,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-C_X0J3Ch.js";import{t as b}from"./upload-XPx0yx5g.js";import{t as x}from"./tooltip-OUJEXz3N.js";import{t as S}from"./alert-BprQRUmf.js";import{h as C,v as w}from"./models-Cru5uJc2.js";import{t as T}from"./checkbox-DXMDpaxv.js";import{t as E}from"./drawer-DttMD3IQ.js";import{t as D}from"./input-number-CMFoxP_g.js";import{t as O}from"./clock-CxvQJYC5.js";import{a as k,i as ee,n as A,r as j,s as M,t as N}from"./pagination-B62agDTK.js";import{t as te}from"./info-DbD2xHpS.js";import{t as ne}from"./trash-2-Cy68rO6n.js";import{t as re}from"./triangle-alert-CjbgCRoN.js";import{t as P}from"./wand-sparkles-BLj6TbQF.js";import{bt as ie}from"./constants-CuuFtMEu.js";import{A as F,Cn as I,Kn as L,La as R,Li as z,O as B,Qi as V,Va as H,aa as U,at as W,ct as G,di as K,et as q,it as J,li as Y,lo as ae,ot as oe,qn as X,st as se,to as Z,zi as Q}from"./index-DVmeVwK7.js";import{t as ce}from"./CopyToClipboard-CnfP3j6K.js";import{t as le}from"./ReportButton-B0ZDQxLy.js";import{t as ue}from"./ImagePreview-CZs9JDgj.js";import{n as de}from"./taskDrawerMixin-DyAUhFEq.js";import{t as fe}from"./ServicePricingSummary-CMOjp4_z.js";import{t as pe}from"./VideoPlayer-DaI2iEuf.js";import{t as me}from"./ScenarioPaymentMode-BMC9eBkY.js";import{t as he}from"./ApiCodeButton-C6FWrCva.js";import{t as ge}from"./BotPlaceholder-CG-3N26i.js";import{t as _e}from"./taskPollingMixin-CcLxtz8z.js";import{n as ve,t as ye}from"./generationInput-Tp6tVYL4.js";var be=_({name:`LayoutWan`,components:{MagicIcon:P,ElDrawer:E,ElButton:Z},mixins:[de]}),xe={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-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function we(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,xe,[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 Te=F(be,[[`render`,we],[`__scopeId`,`data-v-20dc9571`]]),Ee=_({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:`wan3.0-video`,label:this.$t(`wan.button.modelWan3`)}]},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||=ie}}),De={class:`field`},Oe={class:`title font-bold`},ke={class:`float-left`};function Ae(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,De,[e(`h2`,Oe,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`,ke,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var je=F(Ee,[[`render`,Ae],[`__scopeId`,`data-v-f4ee3412`]]),Me=`720p`,Ne=_({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||=Me}}),Pe={class:`field`},Fe={class:`title font-bold`},Ie={class:`float-left`};function Le(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Pe,[e(`h2`,Fe,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`,Ie,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Re=F(Ne,[[`render`,Le],[`__scopeId`,`data-v-3e39f44e`]]),ze=5,Be=_({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||=ze}}),Ve={class:`field`},He={class:`title font-bold`},Ue={class:`float-left`};function We(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Ve,[e(`h2`,He,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`,Ue,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ge=F(Be,[[`render`,We],[`__scopeId`,`data-v-5f35a2cf`]]),Ke=_({name:`ImageUrlInput`,components:{ElUpload:b,ElButton:Z,InfoIcon:k,ImagePreview:ue},mixins:[G,se,W,q],data(){return{fileList:[],uploadUrl:R()+`/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(){w.warning(this.$t(`wan.message.uploadImageExceed`))},onError(){w.error(this.$t(`wan.message.uploadImageError`))},async onRemove(){w.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()}}}),qe={class:`relative`},Je={class:`flex justify-between`},Ye={class:`flex justify-start items-center`},Xe={class:`text-sm font-bold`};function Ze(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`,qe,[e(`div`,Je,[e(`div`,Ye,[e(`span`,Xe,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`,"before-upload":t.beforeUploadSizeGuard,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`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-remove`,`on-success`,`headers`])])}var Qe=F(Ke,[[`render`,Ze],[`__scopeId`,`data-v-56929914`]]),$e=_({name:`PromptInput`,components:{PromptTextarea:ee},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 et(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 tt=F($e,[[`render`,et]]),nt=_({name:`WanMediaInput`,components:{ElInput:ae},computed:{value:{get(){return this.$store.state.wan?.config?.media_text||``},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,media_text:e})}}}}),rt={class:`field`},it={class:`flex items-center mb-2`},at={class:`text-sm font-bold`},ot={class:`text-xs mt-1 text-[var(--el-text-color-secondary)]`};function st(t,n,r,o,c,u){let d=l(`el-input`);return h(),s(`div`,rt,[e(`div`,it,[e(`span`,at,i(t.$t(`wan.name.media`)),1)]),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,type:`textarea`,rows:5,placeholder:t.$t(`wan.placeholder.media`)},null,8,[`modelValue`,`placeholder`]),e(`p`,ot,i(t.$t(`wan.description.media`)),1)])}var ct=F(nt,[[`render`,st]]),lt=_({name:`Wan3Options`,components:{ElSelect:v,ElOption:y,ElInputNumber:D,ElCheckbox:T},data:()=>({ratios:[`adaptive`,`16:9`,`4:3`,`1:1`,`3:4`,`9:16`]}),computed:{ratio:{get(){return this.$store.state.wan?.config?.ratio||`adaptive`},set(e){this.set({ratio:e})}},duration:{get(){return this.$store.state.wan?.config?.duration??5},set(e){this.set({duration:e})}},audio:{get(){return this.$store.state.wan?.config?.audio!==!1},set(e){this.set({audio:e})}}},methods:{set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,...e})}}}),ut={class:`space-y-4`},dt={class:`field`},ft={class:`label`},pt={class:`field`},mt={class:`label`};function ht(t,n,o,u,d,g){let _=l(`el-option`),v=l(`el-select`),y=l(`el-input-number`),b=l(`el-checkbox`);return h(),s(`div`,ut,[e(`div`,dt,[e(`span`,ft,i(t.$t(`wan.name.ratio`)),1),a(v,{modelValue:t.ratio,"onUpdate:modelValue":n[0]||=e=>t.ratio=e},{default:p(()=>[(h(!0),s(c,null,m(t.ratios,e=>(h(),f(_,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),e(`div`,pt,[e(`span`,mt,i(t.$t(`wan.name.duration`)),1),a(y,{modelValue:t.duration,"onUpdate:modelValue":n[1]||=e=>t.duration=e,min:-1,max:30},null,8,[`modelValue`])]),a(b,{modelValue:t.audio,"onUpdate:modelValue":n[2]||=e=>t.audio=e},{default:p(()=>[r(i(t.$t(`wan.name.audio`)),1)]),_:1},8,[`modelValue`])])}var gt=_({name:`PresetPanel`,components:{MagicIcon:P,ElButton:Z,PromptInput:tt,ImageUrlInput:Qe,ModelSelector:je,ResolutionSelector:Re,DurationSelector:Ge,MediaInput:ct,Wan3Options:F(lt,[[`render`,ht],[`__scopeId`,`data-v-49568593`]]),ServicePricingSummary:fe,ScenarioPaymentMode:me},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{canGenerate(){return ye(`wan`,L(this.config))},config(){return this.$store.state.wan?.config},consumption(){return I(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`||e===`wan3.0-video`},supportsDuration(){return this.config?.model===`wan2.6-t2v`},isWan3(){return this.config?.model===`wan3.0-video`},supportsImageUrl(){let e=this.config?.model;return e===`wan2.6-i2v`||e===`wan2.6-i2v-flash`},walletMode(){return z()&&Q(`wan`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1;let e=Q(`wan`);e.quoteUsdc=void 0,e.quoteLoading=!1,this.canGenerate&&(this.quoteTimer=window.setTimeout(this.refreshQuote,350))},async refreshQuote(){if(!this.canGenerate)return;let e=Q(`wan`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await X.quote(L(this.config));t===this.quoteRunId&&e.mode===`wallet`&&this.canGenerate&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),_t={class:`flex flex-col h-full`},vt={class:`flex-1 overflow-y-auto p-5`},yt={class:`flex flex-col items-center justify-center px-5 pb-5`};function bt(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(`media-input`),S=l(`wan3-options`),C=l(`scenario-payment-mode`),w=l(`service-pricing-summary`),T=l(`magic-icon`),E=l(`el-button`);return h(),s(`div`,_t,[e(`div`,vt,[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),t.isWan3?(h(),f(x,{key:3,class:`mb-4`})):o(``,!0),t.isWan3?(h(),f(S,{key:4,class:`mb-4`})):o(``,!0)]),e(`div`,yt,[a(C,{scenario:`wan`}),t.walletMode?o(``,!0):(h(),f(w,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(E,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:p(()=>[a(T,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`wan.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var xt=F(gt,[[`render`,bt]]),St=_({name:`TaskPreview`,components:{DeleteIcon:ne,ChannelIcon:M,InfoIcon:te,MagicIcon:P,TimeIcon:O,WarningIcon:re,CopyToClipboard:ce,ElAlert:S,VideoPlayer:pe,ElTooltip:x,ElButton:Z,ApiCodeButton:he,ReportButton:le},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}),w.success(this.$t(`common.message.deleteTaskSuccess`))}catch{w.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e){console.debug(`on download wan video`,e),window.open(e,`_blank`)}}}),Ct={class:`preview`},wt={class:`left`},Tt={class:`main`},Et={class:`bot`},Dt={class:`datetime`},Ot=[`aria-label`],kt={class:`info`},At={key:0,class:`prompt mt-2`},jt={key:0},Mt={key:1},Nt={key:0,class:n({content:!0,failed:!0})},Pt={key:0,class:`mb-4`},Ft={key:1,class:n({operations:!0,"mt-2":!0})},It={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Lt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Rt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},zt={key:1,class:n({content:!0})},Bt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ht={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Ut={key:2,class:n({content:!0})},Wt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Gt(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(`report-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 h(),s(`div`,Ct,[e(`div`,wt,[a(g,{capability:`wan`,part:`avatar`,class:`avatar`})]),e(`div`,Tt,[e(`div`,Et,[a(g,{capability:`wan`,part:`name`}),e(`span`,Dt,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,Ot)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,kt,[n.modelValue?.request?.prompt?(h(),s(`p`,At,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,jt,` - (`+i(n.$t(`wan.status.pending`))+`) `,1)),n.modelValue?.response&&n.isWaiting?(h(),s(`span`,Mt,` - (`+i(n.$t(`wan.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&!n.isFailure&&!n.isWaiting?(h(),s(`div`,Nt,[n.modelValue?.response?.video_url?(h(),s(`div`,Pt,[a(y,{src:n.modelValue?.response?.video_url},null,8,[`src`])])):o(``,!0),n.modelValue?.response?.video_url?(h(),s(`div`,Ft,[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`]),a(S,{service:`wan`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(D,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,It,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.model`))+`: `+i(n.modelValue?.request?.model)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])):o(``,!0),e(`p`,Lt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Rt,[a(E,{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`,zt,[a(D,{closable:!1,class:`failure`},{template:p(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.failure`)),1)]),default:p(()=>[e(`p`,Bt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),e(`p`,$,[a(k,{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(w,{content:n.modelValue?.response?.error?.message},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Vt,[a(E,{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`,Ht,[a(C,{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(w,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])]),_:1})])):o(``,!0),n.isWaiting?(h(),s(`div`,Ut,[a(D,{closable:!1,class:`info`},{template:p(()=>[a(E,{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`,Wt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])):o(``,!0)])])}var Kt=_({name:`RecentPanel`,components:{TaskPreview:F(St,[[`render`,Gt],[`__scopeId`,`data-v-f180e91e`]]),BotPlaceholder:ge,NoTasks:j,ScrollList:A},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?.()}}}),qt={key:0},Jt={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`,qt,[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`,Jt,[a(v)])):o(``,!0)],64)}var Xt=_({name:`WanIndex`,components:{ConfigPanel:xt,Layout:Te,RecentPanel:F(Kt,[[`render`,Yt]])},mixins:[oe,_e(`wan`)],inject:[`initialized`],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.wan?.status?.getApplications===C.Request},tasksLoading(){return this.$store.state.wan?.status?.getTasks===C.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},walletMode(){return z()&&Q(`wan`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`wan/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onPollTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},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.onPollTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await N({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`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,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){let e=L(this.config),t=ve(`wan`,e);if(t){w.error(this.$t(`common.message.${t}`));return}if(!J(this.uploadTracker,e=>this.$t(e),e=>w.warning(e)))return;let n;if(this.walletMode){let t=this.getWalletContext();if(!t){w.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}n=X.generate(e,{mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!U())return;let t=this.credential?.token;if(!t)return;n=X.generate(e,{token:t})}w.info(this.$t(`wan.message.startingTask`)),V(`wan`,n).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),w.success(this.$t(`wan.message.startTaskSuccess`))}).catch(e=>{e instanceof Y||B(e,`wan`)||(this.walletMode?w.error(this.$t(`common.x402Scenario.paymentFailed`)):w.error(this.$t(`wan.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return K(this.$wallet)},async confirmWalletPayment(e){return H.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Zt(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 Qt=F(Xt,[[`render`,Zt]]);export{Qt as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,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-vXURdu1n.js";import{t as x}from"./upload-DPM3VJNR.js";import{t as S}from"./tooltip-DhzXpaev.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-qt9s4QBH.js";import{t as E}from"./drawer-D-nvOajb.js";import{t as D}from"./input-number-BirnWaVC.js";import{t as O}from"./slider-ILog1xgF.js";import{t as k}from"./clock-B-p2Z5fl.js";import{a as A,i as ee,n as j,r as M,s as N,t as P}from"./pagination-CdEqT6nu.js";import{t as F}from"./info-BQSzmvEK.js";import{t as te}from"./trash-2-CuwbroP3.js";import{t as ne}from"./triangle-alert-CXwoT9L1.js";import{t as re}from"./upload-_ak4mf2P.js";import{t as I}from"./wand-sparkles-DKunfvfr.js";import{Fr as L,Ir as R,Nr as z,Pr as B}from"./constants-CmC-0Hwp.js";import{A as V,Cn as H,Cr as U,La as W,Li as G,O as K,Qi as q,Sr as J,Va as Y,aa as X,at as ie,ct as ae,di as oe,et as se,it as ce,li as le,ot as ue,st as de,to as Z,zi as Q}from"./index-DqV-SJ5V.js";import{t as fe}from"./CopyToClipboard-BGKJYLUb.js";import{t as pe}from"./ReportButton-CNzy8ytz.js";import{t as me}from"./ImagePreview-BI2WtJD9.js";import{n as he}from"./taskDrawerMixin-DyAUhFEq.js";import{t as ge}from"./ServicePricingSummary-DDotAm8d.js";import{t as _e}from"./VideoPlayer-spbjDbBj.js";import{t as ve}from"./ScenarioPaymentMode-DjfcTokL.js";import{t as ye}from"./ApiCodeButton-DyCQcWPT.js";import{t as be}from"./BotPlaceholder-BrT2BqT3.js";import{t as xe}from"./taskPollingMixin-CcLxtz8z.js";import{n as Se,t as Ce}from"./generationInput-CuX9cjvY.js";var we=v({name:`LayoutPixverse`,components:{MagicIcon:I,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-4 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-5a9d4c2f`]]),Ae=v({name:`ModelSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`v3.5`,label:`v3.5`},{value:`v4`,label:`v4`},{value:`v4.5`,label:`v4.5`}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.model},set(e){this.$store.commit(`pixverse/setConfig`,{...this.$store.state.pixverse.config,model:e})}}},mounted(){this.value||=B}}),je={class:`field`},Me={class:`title font-bold`};function Ne(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,je,[e(`h2`,Me,i(t.$t(`pixverse.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pixverse.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-e8f337ca`]]),Fe=v({name:`QualitySelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`360p`,label:`360p`},{value:`540p`,label:`540p`},{value:`720p`,label:`720p`},{value:`1080p`,label:`1080p`}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.quality},set(e){this.$store.commit(`pixverse/setConfig`,{...this.$store.state.pixverse.config,quality:e})}}},mounted(){this.value||=R}}),Ie={class:`field`},Le={class:`title font-bold`};function Re(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Ie,[e(`h2`,Le,i(t.$t(`pixverse.name.quality`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pixverse.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 ze=V(Fe,[[`render`,Re],[`__scopeId`,`data-v-64aeaae9`]]),Be=v({name:`MotionSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`normal`,label:this.$t(`pixverse.name.motion1`)},{value:`fast`,label:this.$t(`pixverse.name.motion2`)}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.motion},set(e){this.$store.commit(`pixverse/setConfig`,{...this.$store.state.pixverse.config,motion:e})}}},mounted(){this.value||=L}}),Ve={class:`field`},He={class:`title font-bold`};function Ue(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Ve,[e(`h2`,He,i(t.$t(`pixverse.name.motion`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pixverse.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 We=V(Be,[[`render`,Ue],[`__scopeId`,`data-v-94237408`]]),Ge=v({name:`StyleSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`cyberpunk`,label:this.$t(`pixverse.name.style1`)},{value:`anime`,label:this.$t(`pixverse.name.style2`)},{value:`comic`,label:this.$t(`pixverse.name.style3`)},{value:`clay`,label:this.$t(`pixverse.name.style4`)},{value:`3d_animation`,label:this.$t(`pixverse.name.style5`)},{value:`realistic`,label:this.$t(`pixverse.name.style6`)}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.style},set(e){this.$store.commit(`pixverse/setConfig`,{...this.$store.state.pixverse.config,style:e})}}},mounted(){this.value||=``}}),Ke={class:`field`},qe={class:`title font-bold`};function Je(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Ke,[e(`h2`,qe,i(t.$t(`pixverse.name.style`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pixverse.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 Ye=V(Ge,[[`render`,Je],[`__scopeId`,`data-v-64e17b3c`]]),Xe=v({name:`SeedSelector`,components:{ElSlider:O,InfoIcon:A,ElInputNumber:D},computed:{value:{get(){return this.$store.state?.pixverse?.config?.seed},set(e){console.debug(`set seed`,e),this.$store.commit(`pixverse/setConfig`,{...this.$store.state?.pixverse?.config,seed:e})}}},mounted(){this.value||=void 0}}),Ze={class:`flex justify-between`},Qe={class:`flex justify-start items-center`},$e={class:`text-sm font-bold`},et={class:`flex justify-end items-center`},tt={class:`w-full`};function nt(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-input-number`),p=l(`el-slider`);return g(),s(`div`,null,[e(`div`,Ze,[e(`div`,Qe,[e(`span`,$e,i(t.$t(`pixverse.name.seed`)),1),a(d,{content:t.$t(`pixverse.description.seed`)},null,8,[`content`])]),e(`div`,et,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,"controls-position":`right`},null,8,[`modelValue`])])]),e(`div`,tt,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[1]||=e=>t.value=e,min:0,max:1e3,step:1},null,8,[`modelValue`])])])}var rt=V(Xe,[[`render`,nt]]),it=v({name:`DurationSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:5,label:`5s`},{value:8,label:`8s`}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.duration},set(e){this.$store.commit(`pixverse/setConfig`,{...this.$store.state.pixverse.config,duration:e})}}},mounted(){this.value||=5}}),at={class:`field`},ot={class:`title font-bold`};function st(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,at,[e(`h2`,ot,i(t.$t(`pixverse.name.duration`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pixverse.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 ct=V(it,[[`render`,st],[`__scopeId`,`data-v-e7343a05`]]),lt=v({name:`RatioSelector`,data(){return{options:[{value:`1:1`,label:`1:1`,width:20,height:20},{value:`4:3`,label:`4:3`,width:20,height:15},{value:`3:4`,label:`3:4`,width:15,height:20},{value:`16:9`,label:`16:9`,width:25,height:13},{value:`9:16`,label:`9:16`,width:13,height:25}]}},computed:{active(){return this.options.findIndex(e=>e.value===this.value)||0},value:{get(){return this.$store.state.pixverse.config?.aspect_ratio},set(e){console.debug(`set aspect_ratio`,e),this.$store.commit(`pixverse/setConfig`,{...this.$store.state.pixverse.config,aspect_ratio:e})}}},mounted(){this.value||=z}}),ut={class:`text-sm font-bold mb-2 block`},dt={class:`items`},ft=[`onClick`],pt={class:`name`};function mt(t,r,a,o,l,u){return g(),s(`div`,null,[e(`span`,ut,i(t.$t(`pixverse.name.aspectRatio`)),1),e(`div`,dt,[(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`,pt,i(r.label),1)],10,ft))),128))])])}var ht=V(lt,[[`render`,mt],[`__scopeId`,`data-v-53038264`]]),gt=v({name:`StartImage`,components:{UploadIcon:re,ElUpload:x,ElButton:Z,InfoIcon:A,ImagePreview:me},mixins:[ae,de,ie,se],emits:[`change`],data(){return{fileList:[],uploadUrl:W()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.pixverse?.config?.image_url},set(){}}},mounted(){this.value||=void 0,this.onSetStartImageUrl()},methods:{onExceed(){T.warning(this.$t(`pixverse.message.uploadReferencesExceed`))},onError(){T.error(this.$t(`pixverse.message.uploadReferencesError`))},onSetStartImageUrl(){let e=this.urls?.[0];this.$store.commit(`pixverse/setConfig`,{...this.$store.state?.pixverse?.config,image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),_t={class:`relative`},vt={class:`flex justify-between`},yt={class:`flex justify-start items-center`},bt={class:`text-sm font-bold`};function xt(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return g(),s(`div`,_t,[e(`div`,vt,[e(`div`,yt,[e(`span`,bt,i(t.$t(`pixverse.name.startImage`)),1),a(h,{content:t.$t(`pixverse.description.uploadStartImage`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:5,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),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(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`pixverse.button.uploadReferences`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])])}var St=V(gt,[[`render`,xt],[`__scopeId`,`data-v-e2ab1425`]]),Ct=v({name:`PromptInput`,components:{PromptTextarea:ee},computed:{prompt:{get(){return this.$store.state.pixverse?.config?.prompt},set(e){this.$store.commit(`pixverse/setConfig`,{...this.$store.state.pixverse?.config,prompt:e})}}},mounted(){this.prompt||=``}});function wt(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`pixverse.name.prompt`),info:e.$t(`pixverse.description.prompt`),placeholder:e.$t(`pixverse.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Tt=v({name:`ConfigPanel`,components:{MagicIcon:I,ElButton:Z,PromptInput:V(Ct,[[`render`,wt]]),ModelSelector:Pe,QualitySelector:ze,MotionSelector:We,StyleSelector:Ye,DurationSelector:ct,StartImage:St,SeedSelector:rt,RatioSelector:ht,ServicePricingSummary:ge,ScenarioPaymentMode:ve},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{canGenerate(){return Ce(`pixverse`,J(this.config))},config(){return this.$store.state.pixverse?.config},consumption(){return H(this.config,this.service?.cost)},service(){return this.$store.state.pixverse?.service},walletMode(){return G()&&Q(`pixverse`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1;let e=Q(`pixverse`);e.quoteUsdc=void 0,e.quoteLoading=!1,this.canGenerate&&(this.quoteTimer=window.setTimeout(this.refreshQuote,350))},async refreshQuote(){if(!this.canGenerate)return;let e=Q(`pixverse`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await U.quote(J(this.config));t===this.quoteRunId&&e.mode===`wallet`&&this.canGenerate&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),Et={class:`flex flex-col h-full`},Dt={class:`flex-1 overflow-y-auto p-5`},Ot={class:`flex flex-col items-center justify-center px-5 pb-5`};function kt(t,n,c,u,d,m){let h=l(`prompt-input`),_=l(`model-selector`),v=l(`style-selector`),y=l(`ratio-selector`),b=l(`motion-selector`),x=l(`quality-selector`),S=l(`start-image`),C=l(`seed-selector`),w=l(`duration-selector`),T=l(`scenario-payment-mode`),E=l(`service-pricing-summary`),D=l(`magic-icon`),O=l(`el-button`);return g(),s(`div`,Et,[e(`div`,Dt,[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`}),a(w,{class:`mb-4`})]),e(`div`,Ot,[a(T,{scenario:`pixverse`}),t.walletMode?o(``,!0):(g(),f(E,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(O,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:p(()=>[a(D,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`pixverse.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var At=V(Tt,[[`render`,kt]]),jt=v({name:`TaskPreview`,components:{DeleteIcon:te,ChannelIcon:N,InfoIcon:F,MagicIcon:I,TimeIcon:k,WarningIcon:ne,CopyToClipboard:fe,ElAlert:C,VideoPlayer:_e,ElTooltip:S,ElButton:Z,ApiCodeButton:ye,ReportButton:pe},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.pixverse?.application},config(){return this.$store.state.pixverse?.config}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Y.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(`pixverse/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e,t){e?.stopPropagation(),console.log(`on download`),window.open(t,`_blank`)},onOpenVideo(e){window.open(e,`_blank`)}}}),Mt={class:`preview`},Nt={class:`left`},Pt={class:`main`},Ft={class:`bot`},It={class:`datetime`},Lt=[`aria-label`],Rt={class:`info`},zt={key:0,class:`prompt mt-2`},Bt={key:0},Vt={key:1},Ht={key:0,class:n({content:!0,failed:!0})},Ut={key:0,class:`mb-4`},Wt={key:1,class:n({operations:!0,"mt-2":!0})},Gt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Kt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},qt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},$={key:1,class:n({content:!0})},Jt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Yt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Xt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Zt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Qt(n,c,u,d,m,h){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(`report-button`),w=l(`channel-icon`),T=l(`magic-icon`),E=l(`copy-to-clipboard`),D=l(`time-icon`),O=l(`el-alert`),k=l(`warning-icon`),A=l(`info-icon`);return g(),s(`div`,Mt,[e(`div`,Nt,[a(_,{capability:`pixverse`,part:`avatar`,class:`avatar`})]),e(`div`,Pt,[e(`div`,Ft,[a(_,{capability:`pixverse`,part:`name`}),e(`span`,It,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`,"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,Lt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Rt,[n.modelValue?.request?.prompt?(g(),s(`p`,zt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(g(),s(`span`,Bt,` - (`+i(n.$t(`pixverse.status.pending`))+`) `,1)),n.modelValue?.response?.data&&(n.modelValue?.response?.data[0]?.state===`processing`||n.modelValue?.response?.data[0]?.state===`pending`)?(g(),s(`span`,Vt,` - (`+i(n.$t(`pixverse.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&n.modelValue?.response?.data?(g(),s(`div`,Ht,[n.modelValue?.response?.data[0]?.video_url?(g(),s(`div`,Ut,[a(b,{src:n.modelValue?.response?.data[0]?.video_url},null,8,[`src`])])):o(``,!0),n.modelValue?.response.success?(g(),s(`div`,Wt,[a(y,{class:`box-item`,effect:`dark`,content:n.$t(`pixverse.message.downloadVideo`),placement:`top-start`},{default:p(()=>[n.modelValue?.response?.data[0]?.video_url?(g(),f(x,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=e=>n.onDownload(e,n.modelValue?.response?.data[0]?.video_url)},{default:p(()=>[r(i(n.$t(`pixverse.button.download`)),1)]),_:1})):o(``,!0)]),_:1},8,[`content`]),a(S,{path:`/pixverse/videos`,body:n.modelValue?.request},null,8,[`body`]),a(C,{service:`pixverse`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(O,{closable:!1,class:`mt-2 success`},{default:p(()=>[e(`p`,Gt,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pixverse.name.model`))+`: `+i(n.modelValue?.request?.model),1)]),e(`p`,Kt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pixverse.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(E,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,qt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pixverse.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.success===!1?(g(),s(`div`,$,[a(O,{closable:!1,class:`failure`},{template:p(()=>[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pixverse.name.failure`)),1)]),default:p(()=>[e(`p`,Jt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pixverse.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(E,{content:n.modelValue?.response?.error?.message},null,8,[`content`])]),e(`p`,Yt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pixverse.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(E,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Xt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pixverse.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,Zt,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pixverse.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(E,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0)])])}var $t=v({name:`RecentPanel`,components:{TaskPreview:V(jt,[[`render`,Qt],[`__scopeId`,`data-v-7707e0ef`]]),NoTasks:M,BotPlaceholder:be,ScrollList:j},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.pixverse?.tasks,items:this.$store.state.pixverse?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),en={key:0},tn={key:2,class:`w-full h-full flex items-center justify-center`};function nn(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`,en,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`h-full w-full overflow-y-auto tasks`,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`,tn,[a(v)])):o(``,!0)],64)}var rn=v({name:`PixverseIndex`,components:{ConfigPanel:At,Layout:ke,RecentPanel:V($t,[[`render`,nn]])},mixins:[ue,xe(`pixverse`)],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.pixverse?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.pixverse?.status?.getTasks===w.Request||this.fetchingTasks},credential(){return this.$store.state.pixverse.credential},config(){return this.$store.state.pixverse.config},tasks(){return this.$store.state.pixverse.tasks},walletMode(){return G()&&Q(`pixverse`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`pixverse/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onPollTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},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.onPollTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await P({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(`pixverse/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`pixverse/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(`pixverse/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){let e=J(this.config),t=Se(`pixverse`,e);if(t){T.error(this.$t(`common.message.${t}`));return}if(!ce(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;let n;if(this.walletMode){let t=this.getWalletContext();if(!t){T.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}n=U.generate(e,{mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!X())return;let t=this.credential?.token;if(!t)return;n=U.generate(e,{token:t})}T.info(this.$t(`pixverse.message.startingTask`)),q(`pixverse`,n).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),T.success(this.$t(`pixverse.message.startTaskSuccess`))}).catch(e=>{e instanceof le||K(e,`pixverse`)||(this.walletMode?T.error(this.$t(`common.x402Scenario.paymentFailed`)):T.error(this.$t(`pixverse.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return oe(this.$wallet)},async confirmWalletPayment(e){return Y.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function an(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return g(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var on=V(rn,[[`render`,an]]);export{on 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-C_X0J3Ch.js";import{t as x}from"./upload-XPx0yx5g.js";import{t as S}from"./tooltip-OUJEXz3N.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-Cru5uJc2.js";import{t as E}from"./drawer-DttMD3IQ.js";import{t as D}from"./input-number-CMFoxP_g.js";import{t as O}from"./slider-CdeLiUQL.js";import{t as k}from"./clock-CxvQJYC5.js";import{a as A,i as ee,n as j,r as M,s as N,t as P}from"./pagination-B62agDTK.js";import{t as F}from"./info-DbD2xHpS.js";import{t as te}from"./trash-2-Cy68rO6n.js";import{t as ne}from"./triangle-alert-CjbgCRoN.js";import{t as re}from"./upload-vSq7Ihy4.js";import{t as I}from"./wand-sparkles-BLj6TbQF.js";import{Fr as L,Ir as R,Nr as z,Pr as B}from"./constants-CuuFtMEu.js";import{A as V,Cn as H,Cr as U,La as W,Li as G,O as K,Qi as q,Sr as J,Va as Y,aa as X,at as ie,ct as ae,di as oe,et as se,it as ce,li as le,ot as ue,st as de,to as Z,zi as Q}from"./index-DVmeVwK7.js";import{t as fe}from"./CopyToClipboard-CnfP3j6K.js";import{t as pe}from"./ReportButton-B0ZDQxLy.js";import{t as me}from"./ImagePreview-CZs9JDgj.js";import{n as he}from"./taskDrawerMixin-DyAUhFEq.js";import{t as ge}from"./ServicePricingSummary-CMOjp4_z.js";import{t as _e}from"./VideoPlayer-DaI2iEuf.js";import{t as ve}from"./ScenarioPaymentMode-BMC9eBkY.js";import{t as ye}from"./ApiCodeButton-C6FWrCva.js";import{t as be}from"./BotPlaceholder-CG-3N26i.js";import{t as xe}from"./taskPollingMixin-CcLxtz8z.js";import{n as Se,t as Ce}from"./generationInput-Tp6tVYL4.js";var we=v({name:`LayoutPixverse`,components:{MagicIcon:I,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-4 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-5a9d4c2f`]]),Ae=v({name:`ModelSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`v3.5`,label:`v3.5`},{value:`v4`,label:`v4`},{value:`v4.5`,label:`v4.5`}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.model},set(e){this.$store.commit(`pixverse/setConfig`,{...this.$store.state.pixverse.config,model:e})}}},mounted(){this.value||=B}}),je={class:`field`},Me={class:`title font-bold`};function Ne(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,je,[e(`h2`,Me,i(t.$t(`pixverse.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pixverse.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-e8f337ca`]]),Fe=v({name:`QualitySelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`360p`,label:`360p`},{value:`540p`,label:`540p`},{value:`720p`,label:`720p`},{value:`1080p`,label:`1080p`}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.quality},set(e){this.$store.commit(`pixverse/setConfig`,{...this.$store.state.pixverse.config,quality:e})}}},mounted(){this.value||=R}}),Ie={class:`field`},Le={class:`title font-bold`};function Re(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Ie,[e(`h2`,Le,i(t.$t(`pixverse.name.quality`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pixverse.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 ze=V(Fe,[[`render`,Re],[`__scopeId`,`data-v-64aeaae9`]]),Be=v({name:`MotionSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`normal`,label:this.$t(`pixverse.name.motion1`)},{value:`fast`,label:this.$t(`pixverse.name.motion2`)}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.motion},set(e){this.$store.commit(`pixverse/setConfig`,{...this.$store.state.pixverse.config,motion:e})}}},mounted(){this.value||=L}}),Ve={class:`field`},He={class:`title font-bold`};function Ue(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Ve,[e(`h2`,He,i(t.$t(`pixverse.name.motion`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pixverse.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 We=V(Be,[[`render`,Ue],[`__scopeId`,`data-v-94237408`]]),Ge=v({name:`StyleSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`cyberpunk`,label:this.$t(`pixverse.name.style1`)},{value:`anime`,label:this.$t(`pixverse.name.style2`)},{value:`comic`,label:this.$t(`pixverse.name.style3`)},{value:`clay`,label:this.$t(`pixverse.name.style4`)},{value:`3d_animation`,label:this.$t(`pixverse.name.style5`)},{value:`realistic`,label:this.$t(`pixverse.name.style6`)}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.style},set(e){this.$store.commit(`pixverse/setConfig`,{...this.$store.state.pixverse.config,style:e})}}},mounted(){this.value||=``}}),Ke={class:`field`},qe={class:`title font-bold`};function Je(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Ke,[e(`h2`,qe,i(t.$t(`pixverse.name.style`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pixverse.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 Ye=V(Ge,[[`render`,Je],[`__scopeId`,`data-v-64e17b3c`]]),Xe=v({name:`SeedSelector`,components:{ElSlider:O,InfoIcon:A,ElInputNumber:D},computed:{value:{get(){return this.$store.state?.pixverse?.config?.seed},set(e){console.debug(`set seed`,e),this.$store.commit(`pixverse/setConfig`,{...this.$store.state?.pixverse?.config,seed:e})}}},mounted(){this.value||=void 0}}),Ze={class:`flex justify-between`},Qe={class:`flex justify-start items-center`},$e={class:`text-sm font-bold`},et={class:`flex justify-end items-center`},tt={class:`w-full`};function nt(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-input-number`),p=l(`el-slider`);return g(),s(`div`,null,[e(`div`,Ze,[e(`div`,Qe,[e(`span`,$e,i(t.$t(`pixverse.name.seed`)),1),a(d,{content:t.$t(`pixverse.description.seed`)},null,8,[`content`])]),e(`div`,et,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,"controls-position":`right`},null,8,[`modelValue`])])]),e(`div`,tt,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[1]||=e=>t.value=e,min:0,max:1e3,step:1},null,8,[`modelValue`])])])}var rt=V(Xe,[[`render`,nt]]),it=v({name:`DurationSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:5,label:`5s`},{value:8,label:`8s`}]}},computed:{value:{get(){return this.$store.state.pixverse?.config?.duration},set(e){this.$store.commit(`pixverse/setConfig`,{...this.$store.state.pixverse.config,duration:e})}}},mounted(){this.value||=5}}),at={class:`field`},ot={class:`title font-bold`};function st(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,at,[e(`h2`,ot,i(t.$t(`pixverse.name.duration`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`pixverse.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 ct=V(it,[[`render`,st],[`__scopeId`,`data-v-e7343a05`]]),lt=v({name:`RatioSelector`,data(){return{options:[{value:`1:1`,label:`1:1`,width:20,height:20},{value:`4:3`,label:`4:3`,width:20,height:15},{value:`3:4`,label:`3:4`,width:15,height:20},{value:`16:9`,label:`16:9`,width:25,height:13},{value:`9:16`,label:`9:16`,width:13,height:25}]}},computed:{active(){return this.options.findIndex(e=>e.value===this.value)||0},value:{get(){return this.$store.state.pixverse.config?.aspect_ratio},set(e){console.debug(`set aspect_ratio`,e),this.$store.commit(`pixverse/setConfig`,{...this.$store.state.pixverse.config,aspect_ratio:e})}}},mounted(){this.value||=z}}),ut={class:`text-sm font-bold mb-2 block`},dt={class:`items`},ft=[`onClick`],pt={class:`name`};function mt(t,r,a,o,l,u){return g(),s(`div`,null,[e(`span`,ut,i(t.$t(`pixverse.name.aspectRatio`)),1),e(`div`,dt,[(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`,pt,i(r.label),1)],10,ft))),128))])])}var ht=V(lt,[[`render`,mt],[`__scopeId`,`data-v-53038264`]]),gt=v({name:`StartImage`,components:{UploadIcon:re,ElUpload:x,ElButton:Z,InfoIcon:A,ImagePreview:me},mixins:[ae,de,ie,se],emits:[`change`],data(){return{fileList:[],uploadUrl:W()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.pixverse?.config?.image_url},set(){}}},mounted(){this.value||=void 0,this.onSetStartImageUrl()},methods:{onExceed(){T.warning(this.$t(`pixverse.message.uploadReferencesExceed`))},onError(){T.error(this.$t(`pixverse.message.uploadReferencesError`))},onSetStartImageUrl(){let e=this.urls?.[0];this.$store.commit(`pixverse/setConfig`,{...this.$store.state?.pixverse?.config,image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),_t={class:`relative`},vt={class:`flex justify-between`},yt={class:`flex justify-start items-center`},bt={class:`text-sm font-bold`};function xt(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return g(),s(`div`,_t,[e(`div`,vt,[e(`div`,yt,[e(`span`,bt,i(t.$t(`pixverse.name.startImage`)),1),a(h,{content:t.$t(`pixverse.description.uploadStartImage`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:5,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),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(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`pixverse.button.uploadReferences`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])])}var St=V(gt,[[`render`,xt],[`__scopeId`,`data-v-e2ab1425`]]),Ct=v({name:`PromptInput`,components:{PromptTextarea:ee},computed:{prompt:{get(){return this.$store.state.pixverse?.config?.prompt},set(e){this.$store.commit(`pixverse/setConfig`,{...this.$store.state.pixverse?.config,prompt:e})}}},mounted(){this.prompt||=``}});function wt(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`pixverse.name.prompt`),info:e.$t(`pixverse.description.prompt`),placeholder:e.$t(`pixverse.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Tt=v({name:`ConfigPanel`,components:{MagicIcon:I,ElButton:Z,PromptInput:V(Ct,[[`render`,wt]]),ModelSelector:Pe,QualitySelector:ze,MotionSelector:We,StyleSelector:Ye,DurationSelector:ct,StartImage:St,SeedSelector:rt,RatioSelector:ht,ServicePricingSummary:ge,ScenarioPaymentMode:ve},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{canGenerate(){return Ce(`pixverse`,J(this.config))},config(){return this.$store.state.pixverse?.config},consumption(){return H(this.config,this.service?.cost)},service(){return this.$store.state.pixverse?.service},walletMode(){return G()&&Q(`pixverse`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1;let e=Q(`pixverse`);e.quoteUsdc=void 0,e.quoteLoading=!1,this.canGenerate&&(this.quoteTimer=window.setTimeout(this.refreshQuote,350))},async refreshQuote(){if(!this.canGenerate)return;let e=Q(`pixverse`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await U.quote(J(this.config));t===this.quoteRunId&&e.mode===`wallet`&&this.canGenerate&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),Et={class:`flex flex-col h-full`},Dt={class:`flex-1 overflow-y-auto p-5`},Ot={class:`flex flex-col items-center justify-center px-5 pb-5`};function kt(t,n,c,u,d,m){let h=l(`prompt-input`),_=l(`model-selector`),v=l(`style-selector`),y=l(`ratio-selector`),b=l(`motion-selector`),x=l(`quality-selector`),S=l(`start-image`),C=l(`seed-selector`),w=l(`duration-selector`),T=l(`scenario-payment-mode`),E=l(`service-pricing-summary`),D=l(`magic-icon`),O=l(`el-button`);return g(),s(`div`,Et,[e(`div`,Dt,[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`}),a(w,{class:`mb-4`})]),e(`div`,Ot,[a(T,{scenario:`pixverse`}),t.walletMode?o(``,!0):(g(),f(E,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(O,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:p(()=>[a(D,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`pixverse.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var At=V(Tt,[[`render`,kt]]),jt=v({name:`TaskPreview`,components:{DeleteIcon:te,ChannelIcon:N,InfoIcon:F,MagicIcon:I,TimeIcon:k,WarningIcon:ne,CopyToClipboard:fe,ElAlert:C,VideoPlayer:_e,ElTooltip:S,ElButton:Z,ApiCodeButton:ye,ReportButton:pe},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.pixverse?.application},config(){return this.$store.state.pixverse?.config}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Y.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(`pixverse/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e,t){e?.stopPropagation(),console.log(`on download`),window.open(t,`_blank`)},onOpenVideo(e){window.open(e,`_blank`)}}}),Mt={class:`preview`},Nt={class:`left`},Pt={class:`main`},Ft={class:`bot`},It={class:`datetime`},Lt=[`aria-label`],Rt={class:`info`},zt={key:0,class:`prompt mt-2`},Bt={key:0},Vt={key:1},Ht={key:0,class:n({content:!0,failed:!0})},Ut={key:0,class:`mb-4`},Wt={key:1,class:n({operations:!0,"mt-2":!0})},Gt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Kt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},qt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},$={key:1,class:n({content:!0})},Jt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Yt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Xt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Zt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Qt(n,c,u,d,m,h){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(`report-button`),w=l(`channel-icon`),T=l(`magic-icon`),E=l(`copy-to-clipboard`),D=l(`time-icon`),O=l(`el-alert`),k=l(`warning-icon`),A=l(`info-icon`);return g(),s(`div`,Mt,[e(`div`,Nt,[a(_,{capability:`pixverse`,part:`avatar`,class:`avatar`})]),e(`div`,Pt,[e(`div`,Ft,[a(_,{capability:`pixverse`,part:`name`}),e(`span`,It,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`,"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,Lt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Rt,[n.modelValue?.request?.prompt?(g(),s(`p`,zt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(g(),s(`span`,Bt,` - (`+i(n.$t(`pixverse.status.pending`))+`) `,1)),n.modelValue?.response?.data&&(n.modelValue?.response?.data[0]?.state===`processing`||n.modelValue?.response?.data[0]?.state===`pending`)?(g(),s(`span`,Vt,` - (`+i(n.$t(`pixverse.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&n.modelValue?.response?.data?(g(),s(`div`,Ht,[n.modelValue?.response?.data[0]?.video_url?(g(),s(`div`,Ut,[a(b,{src:n.modelValue?.response?.data[0]?.video_url},null,8,[`src`])])):o(``,!0),n.modelValue?.response.success?(g(),s(`div`,Wt,[a(y,{class:`box-item`,effect:`dark`,content:n.$t(`pixverse.message.downloadVideo`),placement:`top-start`},{default:p(()=>[n.modelValue?.response?.data[0]?.video_url?(g(),f(x,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=e=>n.onDownload(e,n.modelValue?.response?.data[0]?.video_url)},{default:p(()=>[r(i(n.$t(`pixverse.button.download`)),1)]),_:1})):o(``,!0)]),_:1},8,[`content`]),a(S,{path:`/pixverse/videos`,body:n.modelValue?.request},null,8,[`body`]),a(C,{service:`pixverse`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(O,{closable:!1,class:`mt-2 success`},{default:p(()=>[e(`p`,Gt,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pixverse.name.model`))+`: `+i(n.modelValue?.request?.model),1)]),e(`p`,Kt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pixverse.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(E,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,qt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pixverse.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.success===!1?(g(),s(`div`,$,[a(O,{closable:!1,class:`failure`},{template:p(()=>[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pixverse.name.failure`)),1)]),default:p(()=>[e(`p`,Jt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pixverse.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(E,{content:n.modelValue?.response?.error?.message},null,8,[`content`])]),e(`p`,Yt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pixverse.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(E,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Xt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pixverse.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,Zt,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`pixverse.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(E,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0)])])}var $t=v({name:`RecentPanel`,components:{TaskPreview:V(jt,[[`render`,Qt],[`__scopeId`,`data-v-7707e0ef`]]),NoTasks:M,BotPlaceholder:be,ScrollList:j},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.pixverse?.tasks,items:this.$store.state.pixverse?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),en={key:0},tn={key:2,class:`w-full h-full flex items-center justify-center`};function nn(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`,en,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`h-full w-full overflow-y-auto tasks`,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`,tn,[a(v)])):o(``,!0)],64)}var rn=v({name:`PixverseIndex`,components:{ConfigPanel:At,Layout:ke,RecentPanel:V($t,[[`render`,nn]])},mixins:[ue,xe(`pixverse`)],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.pixverse?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.pixverse?.status?.getTasks===w.Request||this.fetchingTasks},credential(){return this.$store.state.pixverse.credential},config(){return this.$store.state.pixverse.config},tasks(){return this.$store.state.pixverse.tasks},walletMode(){return G()&&Q(`pixverse`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`pixverse/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onPollTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},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.onPollTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await P({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(`pixverse/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`pixverse/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(`pixverse/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){let e=J(this.config),t=Se(`pixverse`,e);if(t){T.error(this.$t(`common.message.${t}`));return}if(!ce(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;let n;if(this.walletMode){let t=this.getWalletContext();if(!t){T.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}n=U.generate(e,{mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!X())return;let t=this.credential?.token;if(!t)return;n=U.generate(e,{token:t})}T.info(this.$t(`pixverse.message.startingTask`)),q(`pixverse`,n).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),T.success(this.$t(`pixverse.message.startTaskSuccess`))}).catch(e=>{e instanceof le||K(e,`pixverse`)||(this.walletMode?T.error(this.$t(`common.x402Scenario.paymentFailed`)):T.error(this.$t(`pixverse.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return oe(this.$wallet)},async confirmWalletPayment(e){return Y.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function an(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return g(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var on=V(rn,[[`render`,an]]);export{on as default};