@acedatacloud/nexior 3.380.3 → 3.380.5

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 (323) hide show
  1. package/dist/assets/{ApiCodeButton-CAQzrT4K.js → ApiCodeButton-DBR9tGBM.js} +1 -1
  2. package/dist/assets/{ApiCodeDialog-LvzBskrJ.js → ApiCodeDialog-CCg8lOq_.js} +2 -2
  3. package/dist/assets/{Artifacts-BC-9S6PN.js → Artifacts-w1CZhaPc.js} +1 -1
  4. package/dist/assets/{AskUserQuestionCard-D7OS85bK.js → AskUserQuestionCard-3OJbU7hp.js} +1 -1
  5. package/dist/assets/{AudioPreview-DQViM4FT.js → AudioPreview-d8-NMxq_.js} +1 -1
  6. package/dist/assets/{Auth-Df14yfuP.js → Auth-CUD5XHGs.js} +1 -1
  7. package/dist/assets/{Bare-DzY0TQIE.js → Bare-DnWOFNQY.js} +1 -1
  8. package/dist/assets/{BotPlaceholder-BlCUdjzq.js → BotPlaceholder-Cl_V5koZ.js} +1 -1
  9. package/dist/assets/{BottomFooter-D3UQv_gV.js → BottomFooter-BY9m2ruR.js} +1 -1
  10. package/dist/assets/{BrowseConnectors-DlJx58_J.js → BrowseConnectors-DAclKO9A.js} +1 -1
  11. package/dist/assets/{BrowserPairingDialog-CW7vfPJR.js → BrowserPairingDialog-D_qGaX9S.js} +1 -1
  12. package/dist/assets/{Callback-CNFgYm3T.js → Callback--vWw7wDq.js} +1 -1
  13. package/dist/assets/{CodeSnippet-C0eBeX2U.js → CodeSnippet-B4XBcVVB.js} +1 -1
  14. package/dist/assets/{Console-CAVioWhS.js → Console-BEN2f_7n.js} +1 -1
  15. package/dist/assets/{Conversation-D7nm4oS-.js → Conversation-Bu85cN-Z.js} +1 -1
  16. package/dist/assets/Conversation-CvvQaGbk.js +2 -0
  17. package/dist/assets/{Conversation-BHYltyL3.css → Conversation-myNal5UI.css} +1 -1
  18. package/dist/assets/{CopyToClipboard-BQaEPLyt.js → CopyToClipboard-Dc_53C_9.js} +1 -1
  19. package/dist/assets/{Detail-DD55uGpe.js → Detail-CP8XjrwP.js} +1 -1
  20. package/dist/assets/Extra-BzOxBC3f.js +1 -0
  21. package/dist/assets/{FilePreview-BjUbMA7c.js → FilePreview-C0VlAjUT.js} +1 -1
  22. package/dist/assets/{Hailuo-xFaz9TxD.js → Hailuo-CBlo8oMQ.js} +1 -1
  23. package/dist/assets/{History-D1zqqw7y.js → History-C_9oHSvo.js} +1 -1
  24. package/dist/assets/{ImagePreview-Dm16d0L7.js → ImagePreview-QrO7VB3T.js} +1 -1
  25. package/dist/assets/{ImageWrapper-KvH_Kyox.js → ImageWrapper-D2sKN22b.js} +1 -1
  26. package/dist/assets/{Index-1ZGPMaND.js → Index--pdY-HXU.js} +1 -1
  27. package/dist/assets/Index-5JQ5PAph.js +2 -0
  28. package/dist/assets/{Index-COJPpNNU.js → Index-B3zcmDVO.js} +1 -1
  29. package/dist/assets/{Index-DJVr7ydY.js → Index-BHxIkZ-a.js} +1 -1
  30. package/dist/assets/Index-Bp91Z4Nq.js +1 -0
  31. package/dist/assets/Index-Bv94reqL.js +1 -0
  32. package/dist/assets/Index-Bz5IEnOW.js +1 -0
  33. package/dist/assets/{Index-BecIFcGo.js → Index-C5Mesekg.js} +1 -1
  34. package/dist/assets/Index-CCBr-lgF.js +1 -0
  35. package/dist/assets/{Index-T0_cSwPH.js → Index-CVKxg1nH.js} +1 -1
  36. package/dist/assets/{Index-BPAo6_jC.js → Index-ChES2Pak.js} +1 -1
  37. package/dist/assets/{Index-CTaXbXmT.js → Index-Chl9pDC8.js} +1 -1
  38. package/dist/assets/{Index-BwfuDrJ9.js → Index-Cm_sNblt.js} +1 -1
  39. package/dist/assets/{Index-DlHoDKfg.js → Index-Cqd_YqFI.js} +1 -1
  40. package/dist/assets/Index-CvMSByPg.js +1 -0
  41. package/dist/assets/{Index-DR-1kfGp.js → Index-D9b419t3.js} +1 -1
  42. package/dist/assets/{Index-CqmNg2WZ.js → Index-DKmuO9HJ.js} +2 -2
  43. package/dist/assets/{Index-BucEDFrW.css → Index-DOv21tLH.css} +1 -1
  44. package/dist/assets/{Index-fTR2-Z-3.js → Index-DTwqo9lt.js} +1 -1
  45. package/dist/assets/{Index-B4GT4puq.js → Index-DVQTbl6Q.js} +1 -1
  46. package/dist/assets/{Index-CjVzRlMN.js → Index-DWJoWMqg.js} +2 -2
  47. package/dist/assets/Index-DXJ-mdMu.js +1 -0
  48. package/dist/assets/{Index-8by4vnko.js → Index-DfFP79Ub.js} +1 -1
  49. package/dist/assets/{Index-DvGsYLo7.js → Index-DoKFeY1d.js} +1 -1
  50. package/dist/assets/Index-DrL4Kua7.js +1 -0
  51. package/dist/assets/{Index-zjZ7CPr72.js → Index-DuKDKmH8.js} +1 -1
  52. package/dist/assets/Index-Dxg0HWdd.js +1 -0
  53. package/dist/assets/Index-DyowxMKL.js +1 -0
  54. package/dist/assets/Index-DzlQ8472.js +1 -0
  55. package/dist/assets/{Index-C1QW_CFl.js → Index-EgwMAM87.js} +1 -1
  56. package/dist/assets/Index-HdBDAK282.js +1 -0
  57. package/dist/assets/Index-IOEjcrMN.js +88 -0
  58. package/dist/assets/{Index-C5CT7Ktv.js → Index-TVvykHny.js} +1 -1
  59. package/dist/assets/Index-UHcGq0ot.css +1 -0
  60. package/dist/assets/{Index-tjXScQUo.js → Index-jL6GyAo52.js} +1 -1
  61. package/dist/assets/Index-pygkRSdJ2.js +1 -0
  62. package/dist/assets/Index-t7wi6x-C.js +1 -0
  63. package/dist/assets/{Index-BkbELH7_.js → Index-xPB2P_un.js} +1 -1
  64. package/dist/assets/{Invitees-tBHppasN.js → Invitees-CqoC6ZzI.js} +1 -1
  65. package/dist/assets/{List-ObMnOLL-.js → List-BKQsGfFn.js} +1 -1
  66. package/dist/assets/{List-CEnfs31Y.js → List-CJ0oDC8J.js} +1 -1
  67. package/dist/assets/{List-B12lnQg5.js → List-Ca7YduxB.js} +1 -1
  68. package/dist/assets/{LocalTools-CVbTpoYn.js → LocalTools-Dj5qgU4Q.js} +1 -1
  69. package/dist/assets/LocalTools-Dk26D2gM.js +5 -0
  70. package/dist/assets/{Logo-DmgrIDIl.js → Logo-0tn3ckQt.js} +1 -1
  71. package/dist/assets/{Main-D1Gr1FHA.js → Main-DZdJRNsj.js} +1 -1
  72. package/dist/assets/{Message-Db6-S5sM.js → Message-Dhxbifix.js} +2 -2
  73. package/dist/assets/{Model-C8RNsnbd.js → Model-BCLqf6xD.js} +1 -1
  74. package/dist/assets/{Navigator-Nfj8gArg.js → Navigator-D0to3R2l.js} +5 -5
  75. package/dist/assets/{NotFound-D-CoxUw9.js → NotFound-C1_UBaSi.js} +1 -1
  76. package/dist/assets/{PageHeader-CNpwb3CV.js → PageHeader-v-5kKXbh.js} +1 -1
  77. package/dist/assets/Pay-7EzYllB7.js +1 -0
  78. package/dist/assets/{Player-DpnDR3pi.js → Player-DMEqEzbG.js} +1 -1
  79. package/dist/assets/{Poivelle-BSP4AAyK.js → Poivelle-BPMERqNg.js} +1 -1
  80. package/dist/assets/{RealtimeCall-B2L27PB_.js → RealtimeCall-YJoGDtET.js} +3 -3
  81. package/dist/assets/{ReportButton-BAx8pia_.js → ReportButton-BCWM_eUv.js} +1 -1
  82. package/dist/assets/{ReportDialog-CE_HdnOJ.js → ReportDialog-C4nnqvVc.js} +1 -1
  83. package/dist/assets/{ScenarioPaymentMode-C2uR8lvu.js → ScenarioPaymentMode-DUv_xCgb.js} +1 -1
  84. package/dist/assets/{ScheduledTasks-BLT-jdpt.js → ScheduledTasks-CGWohgpS.js} +2 -2
  85. package/dist/assets/{ServicePricingSummary-DPzfamaB.js → ServicePricingSummary-BnnhtPm5.js} +1 -1
  86. package/dist/assets/{SharedMarkdown-0ELGv4ui.js → SharedMarkdown-DtzDZm3k.js} +1 -1
  87. package/dist/assets/{ShowcaseGrid-XqUFFvtm.js → ShowcaseGrid-CFbY09WG.js} +1 -1
  88. package/dist/assets/{ShowcaseResultTabs-DEfMzemw.js → ShowcaseResultTabs-DoS1AGxi.js} +1 -1
  89. package/dist/assets/{SolanaWalletPickerDialog-YgC0eQsl.js → SolanaWalletPickerDialog-SPhdpzG5.js} +1 -1
  90. package/dist/assets/{Status-DKf5Jsod.js → Status-D3X4rgdx.js} +1 -1
  91. package/dist/assets/{Subscribe-CkkGJTnx.js → Subscribe-CRjgaqCu.js} +1 -1
  92. package/dist/assets/{TabSwitcher-CfjEN161.js → TabSwitcher-DCp_o3dC.js} +1 -1
  93. package/dist/assets/{Tts-D1u48--B.js → Tts-BHWJBKlm.js} +1 -1
  94. package/dist/assets/{VideoPlayer-Cdtv4baV.js → VideoPlayer-Bt19ZgtM.js} +1 -1
  95. package/dist/assets/{VideoPreview-D3jWNNx1.js → VideoPreview-DbXtGsVJ.js} +1 -1
  96. package/dist/assets/{VueMarkdown-CQ26Rk6o.js → VueMarkdown-xfBKJ0cL.js} +2 -2
  97. package/dist/assets/WriteSkillDialog-DEZTP_2V.js +1 -0
  98. package/dist/assets/{airwallexCheckout-BOMCtt32.js → airwallexCheckout-DG7dh0JD.js} +1 -1
  99. package/dist/assets/arrow-down-CCk6Sb03.js +1 -0
  100. package/dist/assets/arrow-left-CfzVpd8i.js +1 -0
  101. package/dist/assets/arrow-right-Dst44w5B.js +1 -0
  102. package/dist/assets/arrow-up-CvyTr6CH.js +1 -0
  103. package/dist/assets/{authorizeFlow-BMC9h_3t.js → authorizeFlow-DJrWFBbA.js} +1 -1
  104. package/dist/assets/{avatar-BsnEjqLw.js → avatar-C0t81PgD.js} +1 -1
  105. package/dist/assets/{back-navigation-DPa7442X.js → back-navigation-DsXpwk5c.js} +1 -1
  106. package/dist/assets/{basic-p_zsFmA2.js → basic-BtHDhrf8.js} +1 -1
  107. package/dist/assets/{book-open-CpRGukR7.js → book-open-VVs1gk2C.js} +1 -1
  108. package/dist/assets/{box-CGOU4lJt.js → box-Bx0ypDsn.js} +1 -1
  109. package/dist/assets/{boxes-32lkEX3G.js → boxes-8WJI87Gu.js} +1 -1
  110. package/dist/assets/{brain-CEopvMNh.js → brain-DYAdLxct.js} +1 -1
  111. package/dist/assets/{chart-no-axes-combined-tiBL2Ggm.js → chart-no-axes-combined-Cc3WlsU6.js} +1 -1
  112. package/dist/assets/{chat-g6sUFB58.js → chat-Ci-R1f2k.js} +1 -1
  113. package/dist/assets/check-Bfb3v7Zr.js +1 -0
  114. package/dist/assets/chevron-down-BqX4KeBM.js +1 -0
  115. package/dist/assets/chevron-right-1mOXqXoj.js +1 -0
  116. package/dist/assets/{circle-alert-CXkPdq0D.js → circle-alert-DF1kIskJ.js} +1 -1
  117. package/dist/assets/circle-check-C6ll6g09.js +1 -0
  118. package/dist/assets/{circle-question-mark-CVOAxMdj.js → circle-question-mark-CNP_CdTe.js} +1 -1
  119. package/dist/assets/{clipboard-list-Dze8SlYc.js → clipboard-list-BhkjCno-.js} +1 -1
  120. package/dist/assets/clock-B6Xmh354.js +1 -0
  121. package/dist/assets/code-7YWrTdfy.js +1 -0
  122. package/dist/assets/codingBridge-CS16iqlt.js +2 -0
  123. package/dist/assets/{codingBridgeNotify-U3RuiX2r.js → codingBridgeNotify-DQXmYQHs.js} +2 -2
  124. package/dist/assets/{coins-dxsmnq-4.js → coins-CVrCGMHa.js} +1 -1
  125. package/dist/assets/{collapse-Dwaru9dv.js → collapse-qfbCrPJN.js} +1 -1
  126. package/dist/assets/{constants-GmVIn7tC.js → constants-CVb0vrXj.js} +1 -1
  127. package/dist/assets/{copy-DnKHOq1a.js → copy-CP8f_ETR.js} +1 -1
  128. package/dist/assets/{createTaskActions-B2GAm9bk.js → createTaskActions-DLJLKN-c.js} +1 -1
  129. package/dist/assets/{date-picker-bOwyWLdL.js → date-picker-BIwU4ojz.js} +1 -1
  130. package/dist/assets/{digitalhuman-DEbD6hPM.js → digitalhuman-CfG_2-Wv.js} +1 -1
  131. package/dist/assets/{dollar-sign-BLWNTUv9.js → dollar-sign-CFH1O621.js} +1 -1
  132. package/dist/assets/{download-BCOklSE_.js → download-aKoGQMz4.js} +1 -1
  133. package/dist/assets/{drawer-CvX2U8ly.js → drawer-CF4BsAtW.js} +1 -1
  134. package/dist/assets/{dropdown-XCwzKYm5.js → dropdown-CLk44aHS.js} +1 -1
  135. package/dist/assets/{dropdown-DPKXaIsL.js → dropdown-DzQEZ4Jy.js} +1 -1
  136. package/dist/assets/{ellipsis-DPB3bXTW.js → ellipsis-AczbhGQu.js} +1 -1
  137. package/dist/assets/{esm-CyHOLycc.js → esm-Bq7l9xVL.js} +2 -2
  138. package/dist/assets/esm-Dc2aYU0J.js +1 -0
  139. package/dist/assets/{esm-UoEBYxr0.js → esm-rGuxajaG.js} +2 -2
  140. package/dist/assets/{external-link-BZpZYYUS.js → external-link-B5spIiHU.js} +1 -1
  141. package/dist/assets/{eye-BhdeJEHm.js → eye-DOsuMFw9.js} +1 -1
  142. package/dist/assets/{file-BEBKIB3d.js → file-D5T6JpWA.js} +1 -1
  143. package/dist/assets/{file-output-Wrne3aLm.js → file-output-CAMglfrn.js} +1 -1
  144. package/dist/assets/{file-text-BXNggY_W.js → file-text-MxE-jd8A.js} +1 -1
  145. package/dist/assets/{fish-VuGOhXsW.js → fish-mS1PJ3fj.js} +1 -1
  146. package/dist/assets/{flux-BPC7XmH0.js → flux-FQoAagDW.js} +1 -1
  147. package/dist/assets/{folder-l95IzSNw.js → folder-Cbda4XN8.js} +1 -1
  148. package/dist/assets/gauge-DwHZCDNp.js +1 -0
  149. package/dist/assets/{generationInput--J_4Niw5.js → generationInput-jeoGp56s.js} +1 -1
  150. package/dist/assets/{globe-CSktj64F.js → globe-DZXgzAlm.js} +1 -1
  151. package/dist/assets/grokvideo-DISRpIM_.js +1 -0
  152. package/dist/assets/{luma-BtitSxad.js → hailuo-ZSUIO9UD.js} +1 -1
  153. package/dist/assets/{hash-CRnccwx_.js → hash-BKpZIJo7.js} +1 -1
  154. package/dist/assets/{headphones-DoG13pCL.js → headphones--YKlJldO.js} +1 -1
  155. package/dist/assets/{history-BHl5ASZC.js → history-BYzfzIXf.js} +1 -1
  156. package/dist/assets/{house-DNNF-zQb.js → house-DbXM7bV4.js} +1 -1
  157. package/dist/assets/{image-2jgf6twa.js → image-Dsh8h-Vr.js} +1 -1
  158. package/dist/assets/{imageRequests-BaQ60xKB.js → imageRequests-YA3-SUkx.js} +1 -1
  159. package/dist/assets/index-C643U2rX.js +572 -0
  160. package/dist/assets/{index.es-DFqTR-gs.js → index.es-BS_qwYo-.js} +1 -1
  161. package/dist/assets/{info-Bqj02p3r.js → info-CDs2D83H.js} +1 -1
  162. package/dist/assets/{input-number-BecdXhq4.js → input-number-YpK_vIUu.js} +1 -1
  163. package/dist/assets/{kling-C9azn2UB.js → kling-BkuDhdIc.js} +1 -1
  164. package/dist/assets/{languages-Bn9-XqQr.js → languages-DFfBKj3V.js} +1 -1
  165. package/dist/assets/{laptop-C_0NyrMl.js → laptop-DapobfQv.js} +1 -1
  166. package/dist/assets/{lightbulb-C9MU_4ds.js → lightbulb-D_g0yrw8.js} +1 -1
  167. package/dist/assets/{link-CYbuO3R8.js → link-DTTCfbSO.js} +1 -1
  168. package/dist/assets/loader-circle-BQqfluno.js +1 -0
  169. package/dist/assets/{qrart-CtfMNq1M.js → luma-C9imEL86.js} +1 -1
  170. package/dist/assets/maestro-BBLbhcdk.js +1 -0
  171. package/dist/assets/maestro-B_gsOOuc.js +1 -0
  172. package/dist/assets/maestro-BbjtdNWq.js +1 -0
  173. package/dist/assets/maestro-CI7kJGPZ.js +1 -0
  174. package/dist/assets/maestro-Cq-lw4mZ.js +1 -0
  175. package/dist/assets/maestro-CvrCSepF.js +1 -0
  176. package/dist/assets/maestro-DFNYslYD.js +1 -0
  177. package/dist/assets/maestro-DIk5m-7L.js +1 -0
  178. package/dist/assets/maestro-DuZPhVj-.js +1 -0
  179. package/dist/assets/maestro-Oxjr8OPC.js +1 -0
  180. package/dist/assets/maestro-VcPlmsOj.js +1 -0
  181. package/dist/assets/maestro-bsK4BW5L.js +1 -0
  182. package/dist/assets/maestro-h29lA6bR.js +1 -0
  183. package/dist/assets/{mail-BJofA_Qf.js → mail-C0_EFTNr.js} +1 -1
  184. package/dist/assets/{message-circle-CKGmdIMI.js → message-circle-DJ38XN8t.js} +1 -1
  185. package/dist/assets/{mic-Ci4tIrSN.js → mic-BYjF4A_x.js} +1 -1
  186. package/dist/assets/{midjourney-BQZo_d2M.js → midjourney-DGnkUMtd.js} +1 -1
  187. package/dist/assets/{minimax-DsdxWCjq.js → minimax-ClPDICZU.js} +1 -1
  188. package/dist/assets/{mobileLocalExec-Dwqc6v0t.js → mobileLocalExec-B_RtWm83.js} +2 -2
  189. package/dist/assets/{monitor-CPFxk1wZ.js → monitor-GBsAGWb5.js} +1 -1
  190. package/dist/assets/{mouse-pointer-2-B08HzOwW.js → mouse-pointer-2--BMykM3C.js} +1 -1
  191. package/dist/assets/music-2-DsnQPTru.js +1 -0
  192. package/dist/assets/{nanobanana-CJ9wJoGd.js → nanobanana-B80mlHG9.js} +1 -1
  193. package/dist/assets/{omni-C-SLGStU.js → omni-B15iT3Sl.js} +1 -1
  194. package/dist/assets/{openaiimage-D5MNRqg3.js → openaiimage-DAuOj_l2.js} +1 -1
  195. package/dist/assets/{pagination-VjpfotZ8.js → pagination-BGnYVZvp.js} +1 -1
  196. package/dist/assets/{pagination-CYVcmJmV.js → pagination-BsPBo2WI.js} +1 -1
  197. package/dist/assets/{pagination-io6RYkJR.js → pagination-DqPdKWtk.js} +1 -1
  198. package/dist/assets/{palette-SWZNaMAh.js → palette-CSWZ3lMh.js} +1 -1
  199. package/dist/assets/{paperclip-CoovJMXo.js → paperclip-Ed5mDPx6.js} +1 -1
  200. package/dist/assets/{pause-B7eeiCnH.js → pause-BClTBQOr.js} +1 -1
  201. package/dist/assets/{pencil-f21Vtqty.js → pencil-hdf5uaAO.js} +1 -1
  202. package/dist/assets/{pika-CsHCQJSE.js → pika-Cx5cYUmj.js} +1 -1
  203. package/dist/assets/{pixverse-CyDxwFeI.js → pixverse-WYyCcVn-.js} +1 -1
  204. package/dist/assets/play-BZy52WBc.js +1 -0
  205. package/dist/assets/{plug-Dg_9VErH.js → plug-BrR77_0k.js} +1 -1
  206. package/dist/assets/plus-Cv4THF6Q.js +1 -0
  207. package/dist/assets/{poivelle-C0zLhGUa.js → poivelle-B-fGy-mp.js} +1 -1
  208. package/dist/assets/{popover-BBskEwZL.js → popover-DnGAvUIE.js} +1 -1
  209. package/dist/assets/{producer-9b3QkEP1.js → producer-DKQI0Cq6.js} +1 -1
  210. package/dist/assets/{veo-DkZy7hTq.js → qrart-BypAVHHT.js} +1 -1
  211. package/dist/assets/{qwenimage-BTvJJiDf.js → qwenimage-Z73dnVux.js} +1 -1
  212. package/dist/assets/{realtime-Dd7fkm3x.js → realtime-i4smTIH8.js} +1 -1
  213. package/dist/assets/{refresh-cw-Cr7yuII3.js → refresh-cw-Dnm3KhKi.js} +1 -1
  214. package/dist/assets/rotate-ccw-CKzZLPvG.js +1 -0
  215. package/dist/assets/rotate-cw-CEoa6Gbp.js +1 -0
  216. package/dist/assets/{row-DNp_zRGz.js → row-BTg1B7Rq.js} +1 -1
  217. package/dist/assets/{scheduledTasks-CrtGggKP.js → scheduledTasks-BKFHEZEq.js} +1 -1
  218. package/dist/assets/{scroll-text-WT63idaP.js → scroll-text-11dAwBrb.js} +1 -1
  219. package/dist/assets/search-BWxJsKnb.js +1 -0
  220. package/dist/assets/{seedance-tUqFe83z.js → seedance-C7VjAFhT.js} +1 -1
  221. package/dist/assets/{seedream-CuoLy1o8.js → seedream-BNeM6wGx.js} +1 -1
  222. package/dist/assets/{select-CxPN3D9u.js → select-Dxkn5fnG.js} +1 -1
  223. package/dist/assets/{serp-D6lCOvz4.js → serp-CxGGkmaS.js} +1 -1
  224. package/dist/assets/{shield-CK7NS6Gf.js → shield-DgibaIqT.js} +1 -1
  225. package/dist/assets/{showcase-D6Og0HHm.js → showcase-C7ITFcZN.js} +1 -1
  226. package/dist/assets/{showcaseRecreateMixin-BEyu8Djp.js → showcaseRecreateMixin-BvSTHecE.js} +1 -1
  227. package/dist/assets/{shuffle-DpfFdEcH.js → shuffle-BylmN-er.js} +1 -1
  228. package/dist/assets/{siteHome-3TZFCcij.js → siteHome-Cryc_q93.js} +1 -1
  229. package/dist/assets/{slider-DNzVAHfq.js → slider-DyGvOBhi.js} +1 -1
  230. package/dist/assets/{solana-wallets-DzzoQdIQ.js → solana-wallets--z2A3Apa.js} +2 -2
  231. package/dist/assets/{sora-BxwK55Oy.js → sora-D29KqrzE.js} +1 -1
  232. package/dist/assets/{sparkles-Bj8vdW1Y.js → sparkles-x66jEqTw.js} +1 -1
  233. package/dist/assets/square-84JHxm2_.js +1 -0
  234. package/dist/assets/{suno-DNbz_RKF.js → suno-BtOeCZcQ.js} +1 -1
  235. package/dist/assets/{switch-CpihU-Bq.js → switch-FNAnbKSR.js} +1 -1
  236. package/dist/assets/{table-BQFx3k1H.js → table-DcbbzgnI.js} +1 -1
  237. package/dist/assets/{tabs-8Um-YKWZ.js → tabs-0J-7r8zS.js} +1 -1
  238. package/dist/assets/{tag-_vZb-8xx.js → tag-DmliP9Ok.js} +1 -1
  239. package/dist/assets/{taskPolling-9csjvORN.js → taskPolling-Bi1lm4L2.js} +1 -1
  240. package/dist/assets/terminal-fLAKhYLu.js +1 -0
  241. package/dist/assets/{time-picker-RtWvk_sa.js → time-picker-DXRHL55A.js} +1 -1
  242. package/dist/assets/{tooltip-B60Iasgv.js → tooltip-CsVgfK1f.js} +1 -1
  243. package/dist/assets/{trash-2-BBCXfu0p.js → trash-2-rtHpr3JN.js} +1 -1
  244. package/dist/assets/{triangle-alert-BRov4JmE.js → triangle-alert-D_wd4w3Z.js} +1 -1
  245. package/dist/assets/{upload-Sju4DbiY.js → upload-ChEGBjQd.js} +1 -1
  246. package/dist/assets/{upload-D3ICVrNB.js → upload-DoPPJ2yy.js} +1 -1
  247. package/dist/assets/user-bjnB3b4c.js +1 -0
  248. package/dist/assets/{hailuo-BVUhC8lk.js → veo-BueyYArF.js} +1 -1
  249. package/dist/assets/{video-CDFVAtyn.js → video-C2QohmLe.js} +1 -1
  250. package/dist/assets/{volume-2-B06KZpAy.js → volume-2-BoZZadxh.js} +1 -1
  251. package/dist/assets/{vuex.esm-bundler-BV9tXD4i.js → vuex.esm-bundler-uM-kqbAF.js} +1 -1
  252. package/dist/assets/{wallet-C2_hOWbL.js → wallet-BtENm1mj.js} +1 -1
  253. package/dist/assets/{wan-QRuyJPFu.js → wan-BxExpn0G.js} +1 -1
  254. package/dist/assets/{wand-sparkles-D8Xtkkgr.js → wand-sparkles-CReI7Ekg.js} +1 -1
  255. package/dist/assets/{web-JP1HvmQN.js → web-B_mNetg-.js} +1 -1
  256. package/dist/assets/{web-DaBEVlWo.js → web-CwqQtLOY.js} +1 -1
  257. package/dist/assets/{web-CY-888ED.js → web-DHf2pHB5.js} +1 -1
  258. package/dist/assets/{web-BYJbjRYk.js → web-DSR3VOq9.js} +1 -1
  259. package/dist/assets/{web-BUdzeUVv.js → web-I_RIjvbu.js} +1 -1
  260. package/dist/assets/{webextrator-CW6y2mdz.js → webextrator-eme27gPN.js} +1 -1
  261. package/dist/assets/{zap-D2PJQZbU.js → zap-BVQJGqe4.js} +1 -1
  262. package/dist/index.html +3 -3
  263. package/package.json +1 -1
  264. package/dist/assets/Conversation-DQ5RmRdb.js +0 -2
  265. package/dist/assets/Extra-CV4hv9OG.js +0 -1
  266. package/dist/assets/Index-7QD2V3wg.js +0 -1
  267. package/dist/assets/Index-Bk546k4m.js +0 -1
  268. package/dist/assets/Index-Bm_JpxRb.css +0 -1
  269. package/dist/assets/Index-BoWt8dWh.js +0 -1
  270. package/dist/assets/Index-C18MzxuW.js +0 -1
  271. package/dist/assets/Index-CQE7c7Bs.js +0 -2
  272. package/dist/assets/Index-CxqeZIDT.js +0 -1
  273. package/dist/assets/Index-D-bh_mWQ.js +0 -1
  274. package/dist/assets/Index-DOU9VNl0.js +0 -1
  275. package/dist/assets/Index-DVXw0pwb.js +0 -1
  276. package/dist/assets/Index-Dmc0ZPfE.js +0 -1
  277. package/dist/assets/Index-Dn3EoEQQ.js +0 -88
  278. package/dist/assets/Index-eMf5-MRc.js +0 -1
  279. package/dist/assets/Index-ex7Y1vY4.js +0 -1
  280. package/dist/assets/Index-fbMiNaKB.js +0 -1
  281. package/dist/assets/Index-jn2z6JP9.js +0 -1
  282. package/dist/assets/LocalTools-DyjoYQ4h.js +0 -5
  283. package/dist/assets/Pay-BI2Q9Jyg.js +0 -1
  284. package/dist/assets/WriteSkillDialog-Dli1HaFr.js +0 -1
  285. package/dist/assets/arrow-down-B6_R0HuI.js +0 -1
  286. package/dist/assets/arrow-left-BJOpEVmr.js +0 -1
  287. package/dist/assets/arrow-right-COdHSgP-.js +0 -1
  288. package/dist/assets/arrow-up-3YBgb0Kr.js +0 -1
  289. package/dist/assets/check-C0uK_-Ji.js +0 -1
  290. package/dist/assets/chevron-down-BIqc6Sh0.js +0 -1
  291. package/dist/assets/chevron-right-CewUT0fp.js +0 -1
  292. package/dist/assets/circle-check-GRq8kiSg.js +0 -1
  293. package/dist/assets/clock-BRqsgYwQ.js +0 -1
  294. package/dist/assets/code-DoM9goq2.js +0 -1
  295. package/dist/assets/codingBridge-y6RP64MI.js +0 -2
  296. package/dist/assets/esm-CCt2cEvm.js +0 -1
  297. package/dist/assets/gauge-Ncwvr6wi.js +0 -1
  298. package/dist/assets/grokvideo-DTBgLS47.js +0 -1
  299. package/dist/assets/index-BYbC-2BV.js +0 -572
  300. package/dist/assets/loader-circle-BBOOwaos.js +0 -1
  301. package/dist/assets/maestro-BZjKR3qb.js +0 -1
  302. package/dist/assets/maestro-BseWpiuj.js +0 -1
  303. package/dist/assets/maestro-C1SfpTGL.js +0 -1
  304. package/dist/assets/maestro-CA9H8dEG.js +0 -1
  305. package/dist/assets/maestro-CEEx8qvF.js +0 -1
  306. package/dist/assets/maestro-CZsW3Nlk.js +0 -1
  307. package/dist/assets/maestro-ChDcMauc.js +0 -1
  308. package/dist/assets/maestro-Cmd5jQVR.js +0 -1
  309. package/dist/assets/maestro-CsqrFYgi.js +0 -1
  310. package/dist/assets/maestro-DM9tDnMK.js +0 -1
  311. package/dist/assets/maestro-DdTH473R.js +0 -1
  312. package/dist/assets/maestro-ZR8sSyLR.js +0 -1
  313. package/dist/assets/maestro-lQnNR9WV.js +0 -1
  314. package/dist/assets/maestroLanguages-BCseVxSx.js +0 -1
  315. package/dist/assets/music-2-DXzd8a9x.js +0 -1
  316. package/dist/assets/play-D8gxtxAY.js +0 -1
  317. package/dist/assets/plus-BMzVPasG.js +0 -1
  318. package/dist/assets/rotate-ccw-DLsc8rAo.js +0 -1
  319. package/dist/assets/rotate-cw-1vYEmZtB.js +0 -1
  320. package/dist/assets/search-CTbEtirV.js +0 -1
  321. package/dist/assets/square-C64WmG3-.js +0 -1
  322. package/dist/assets/terminal-Clq9LUIa.js +0 -1
  323. package/dist/assets/user-D8RgR1_m.js +0 -1
@@ -1 +0,0 @@
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-CxPN3D9u.js";import{t as x}from"./upload-Sju4DbiY.js";import{t as S}from"./tooltip-B60Iasgv.js";import{t as C}from"./alert-BprQRUmf.js";import{_ as w,v as T}from"./vuex.esm-bundler-BV9tXD4i.js";import{t as E}from"./drawer-CvX2U8ly.js";import{t as D}from"./input-number-BecdXhq4.js";import{t as O}from"./slider-DNzVAHfq.js";import{t as k}from"./clock-BRqsgYwQ.js";import{t as A}from"./hash-CRnccwx_.js";import{t as ee}from"./info-Bqj02p3r.js";import{a as j,i as M,n as N,r as P,t as F}from"./pagination-VjpfotZ8.js";import{t as I}from"./trash-2-BBCXfu0p.js";import{t as te}from"./triangle-alert-BRov4JmE.js";import{t as ne}from"./upload-D3ICVrNB.js";import{t as L}from"./wand-sparkles-D8Xtkkgr.js";import{Br as re,Lr as R,Rr as z,zr as B}from"./constants-GmVIn7tC.js";import{D as V,Mi as H,Na as U,Pi as W,Qa as G,T as K,Tn as q,_r as J,at as Y,ct as X,gr as Z,lt as ie,oi as ae,ot as oe,qi as se,ri as ce,st as le,ta as ue,tt as de,za as Q}from"./index-BYbC-2BV.js";import{t as fe}from"./CopyToClipboard-BQaEPLyt.js";import{t as pe}from"./ReportButton-BAx8pia_.js";import{t as me}from"./ImagePreview-Dm16d0L7.js";import{n as he}from"./taskDrawerMixin-DyAUhFEq.js";import{t as ge}from"./ServicePricingSummary-DPzfamaB.js";import{t as _e}from"./VideoPlayer-Cdtv4baV.js";import{t as ve}from"./ScenarioPaymentMode-C2uR8lvu.js";import{t as ye}from"./ApiCodeButton-CAQzrT4K.js";import{t as be}from"./BotPlaceholder-BlCUdjzq.js";import{t as xe}from"./taskPollingMixin-CcLxtz8z.js";import{n as Se,t as Ce}from"./generationInput--J_4Niw5.js";var we=v({name:`LayoutPixverse`,components:{MagicIcon:L,ElDrawer:E,ElButton:G},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||=z}}),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||=re}}),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||=B}}),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:j,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||=R}}),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:ne,ElUpload:x,ElButton:G,InfoIcon:j,ImagePreview:me},mixins:[ie,X,oe,de],emits:[`change`],data(){return{fileList:[],uploadUrl:U()+`/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:M},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:L,ElButton:G,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`,Z(this.config))},config(){return this.$store.state.pixverse?.config},consumption(){return q(this.config,this.service?.cost)},service(){return this.$store.state.pixverse?.service},walletMode(){return H()&&W(`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=W(`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=W(`pixverse`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await J.quote(Z(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:I,ChannelIcon:A,InfoIcon:ee,MagicIcon:L,TimeIcon:k,WarningIcon:te,CopyToClipboard:fe,ElAlert:C,VideoPlayer:_e,ElTooltip:S,ElButton:G,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 Q.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:P,BotPlaceholder:be,ScrollList:N},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:[le,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 H()&&W(`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 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(`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=Z(this.config),t=Se(`pixverse`,e);if(t){T.error(this.$t(`common.message.${t}`));return}if(!Y(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(!ue())return;let t=this.credential?.token;if(!t)return;n=J.generate(e,{token:t})}T.info(this.$t(`pixverse.message.startingTask`)),se(`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 ce||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 ae(this.$wallet)},async confirmWalletPayment(e){return Q.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 +0,0 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,K as a,L as o,M as s,Mt as c,N as l,Q as u,S as d,St as f,T as p,b as m,ft as h,ht as g,j as _,k as v,mt as y,qt as b,rt as x,st as S,tt as C,wt as w,z as T}from"./vendor-chart-Dw-P17PN.js";import{r as E,t as D}from"./select-CxPN3D9u.js";import{n as O,t as k}from"./form-BdKMEyCR.js";import{_ as ee,n as te,v as ne}from"./vuex.esm-bundler-BV9tXD4i.js";import{t as A}from"./input-number-BecdXhq4.js";import{t as re}from"./segmented-D0zHdf9D.js";import{t as ie}from"./arrow-right-COdHSgP-.js";import{t as ae}from"./arrow-up-3YBgb0Kr.js";import{t as j}from"./box-CGOU4lJt.js";import{t as oe}from"./check-C0uK_-Ji.js";import{t as se}from"./chevron-down-BIqc6Sh0.js";import{t as ce}from"./chevron-right-CewUT0fp.js";import{t as le}from"./copy-DnKHOq1a.js";import{t as ue}from"./download-BCOklSE_.js";import{t as de}from"./file-text-BXNggY_W.js";import{t as M}from"./history-BHl5ASZC.js";import{t as N}from"./house-DNNF-zQb.js";import{t as P}from"./image-2jgf6twa.js";import{t as fe}from"./loader-circle-BBOOwaos.js";import{t as F}from"./mouse-pointer-2-B08HzOwW.js";import{t as pe}from"./music-2-DXzd8a9x.js";import{t as I}from"./play-D8gxtxAY.js";import{t as me}from"./plus-BMzVPasG.js";import{t as L}from"./search-CTbEtirV.js";import{t as he}from"./sparkles-Bj8vdW1Y.js";import{t as R}from"./trash-2-BBCXfu0p.js";import{t as ge}from"./triangle-alert-BRov4JmE.js";import{t as _e}from"./upload-D3ICVrNB.js";import{t as z}from"./video-CDFVAtyn.js";import{t as ve}from"./back-navigation-DPa7442X.js";import{Da as B}from"./constants-GmVIn7tC.js";import{D as V,Ga as ye,Qa as H,Ra as U,oo as W,za as be}from"./index-BYbC-2BV.js";import{t as xe}from"./VideoPlayer-Cdtv4baV.js";var G=U(`audio-lines`,[[`path`,{d:`M2 10v3`,key:`1fnikh`}],[`path`,{d:`M6 6v11`,key:`11sgs0`}],[`path`,{d:`M10 3v18`,key:`yhl04a`}],[`path`,{d:`M14 8v7`,key:`3a1oy3`}],[`path`,{d:`M18 5v13`,key:`123xd1`}],[`path`,{d:`M22 10v3`,key:`154ddg`}]]),Se=U(`bot`,[[`path`,{d:`M12 8V4H8`,key:`hb8ula`}],[`rect`,{width:`16`,height:`12`,x:`4`,y:`8`,rx:`2`,key:`enze0r`}],[`path`,{d:`M2 14h2`,key:`vft8re`}],[`path`,{d:`M20 14h2`,key:`4cs60a`}],[`path`,{d:`M15 13v2`,key:`1xurst`}],[`path`,{d:`M9 13v2`,key:`rq6x2g`}]]),K=U(`building-2`,[[`path`,{d:`M10 12h4`,key:`a56b0p`}],[`path`,{d:`M10 8h4`,key:`1sr2af`}],[`path`,{d:`M14 21v-3a2 2 0 0 0-4 0v3`,key:`1rgiei`}],[`path`,{d:`M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2`,key:`secmi2`}],[`path`,{d:`M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16`,key:`16ra0t`}]]),q=U(`clapperboard`,[[`path`,{d:`m12.296 3.464 3.02 3.956`,key:`qash78`}],[`path`,{d:`M20.2 6 3 11l-.9-2.4c-.3-1.1.3-2.2 1.3-2.5l13.5-4c1.1-.3 2.2.3 2.5 1.3z`,key:`1h7j8b`}],[`path`,{d:`M3 11h18v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`4lm6w1`}],[`path`,{d:`m6.18 5.276 3.1 3.899`,key:`zjj9t3`}]]),Ce=U(`film`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M7 3v18`,key:`bbkbws`}],[`path`,{d:`M3 7.5h4`,key:`zfgn84`}],[`path`,{d:`M3 12h18`,key:`1i2n21`}],[`path`,{d:`M3 16.5h4`,key:`1230mu`}],[`path`,{d:`M17 3v18`,key:`in4fa5`}],[`path`,{d:`M17 7.5h4`,key:`myr1c1`}],[`path`,{d:`M17 16.5h4`,key:`go4c1d`}]]),we=U(`git-commit-horizontal`,[[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}],[`line`,{x1:`3`,x2:`9`,y1:`12`,y2:`12`,key:`1dyftd`}],[`line`,{x1:`15`,x2:`21`,y1:`12`,y2:`12`,key:`oup4p8`}]]),J=U(`git-branch`,[[`path`,{d:`M15 6a9 9 0 0 0-9 9V3`,key:`1cii5b`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}],[`circle`,{cx:`6`,cy:`18`,r:`3`,key:`fqmcym`}]]),Te=U(`list-checks`,[[`path`,{d:`M13 5h8`,key:`a7qcls`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`path`,{d:`m3 7 2 2 4-4`,key:`1obspn`}]]),Ee=U(`lock-keyhole`,[[`circle`,{cx:`12`,cy:`16`,r:`1`,key:`1au0dj`}],[`rect`,{x:`3`,y:`10`,width:`18`,height:`12`,rx:`2`,key:`6s8ecr`}],[`path`,{d:`M7 10V7a5 5 0 0 1 10 0v3`,key:`1pqi11`}]]),De=U(`rows-3`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M21 9H3`,key:`1338ky`}],[`path`,{d:`M21 15H3`,key:`9uk58r`}]]),Y=U(`shield-check`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),X={class:`discovery-home`},Oe={class:`discovery-header`},Z={class:`brand`},Q={class:`project-links`},ke=[`title`,`aria-label`,`onClick`],Ae={key:0,class:`discovery-state`,role:`status`},je={class:`creator`,"aria-labelledby":`poivelle-create-title`},Me={class:`creator-kicker`},Ne={id:`poivelle-create-title`},Pe=[`aria-label`],Fe=[`disabled`,`onClick`],Ie=[`placeholder`,`disabled`],Le={class:`composer-footer`},Re=[`disabled`,`title`],ze={class:`prompt-starters`},Be=[`disabled`,`onClick`],Ve={class:`works`,"aria-labelledby":`poivelle-works-title`},He={class:`works-heading`},Ue={id:`poivelle-works-title`},We={class:`search`},Ge=[`placeholder`,`aria-label`],Ke={class:`category-tabs`},qe=[`onClick`],Je={class:`work-grid card-gap`},Ye={class:`cover`},Xe=[`src`,`alt`,`onError`],Ze={key:2,class:`film-badge`},Qe=[`aria-label`,`onClick`],$e={class:`duration-badge`},et={class:`work-copy`},$={class:`work-meta`},tt={class:`work-actions`},nt=[`onClick`],rt=[`disabled`,`onClick`],it={key:0,class:`film-dialog-heading`},at={id:`poivelle-film-dialog-title`},ot=V(T({__name:`DiscoveryHome`,emits:[`open-studio`],setup(a,{emit:d}){let f=d,h=te(),b=v(()=>h.state.poivelle),T=v(()=>b.value?.projects??[]),E=v(()=>b.value?.discoveryWorks??[]),D=w(``),O=w(``),k=w(!1),A=w(),re=w(new Set),ie=w(`official:pulsecam`),j=w(`all`),oe=[{workId:`official:pulsecam`,label:`poivelle.discovery.commercial`,icon:q},{workId:`official:moonlit-signal`,label:`poivelle.discovery.musicVideo`,icon:pe},{workId:`official:northstar-origin`,label:`poivelle.discovery.documentary`,icon:K}],se=[`poivelle.discovery.starterProduct`,`poivelle.discovery.starterMusic`,`poivelle.discovery.starterDocumentary`],ue=[{value:`all`,label:`poivelle.discovery.all`},{value:`commercial`,label:`poivelle.discovery.commercial`},{value:`music_video`,label:`poivelle.discovery.musicVideo`},{value:`narrative`,label:`poivelle.discovery.narrative`},{value:`documentary`,label:`poivelle.discovery.documentary`},{value:`community`,label:`poivelle.discovery.community`}],de=v(()=>{let e=O.value.trim().toLowerCase();return E.value.filter(t=>(j.value===`all`||t.category===j.value)&&(!e||`${t.title} ${t.description} ${t.creator_name} ${(t.tags??[]).join(` `)}`.toLowerCase().includes(e)))}),M=v(()=>b.value?.status?.bootstrap===ee.Request),N=v(()=>b.value?.error),P=v({get:()=>!!A.value,set:e=>{e||(A.value=void 0)}}),F=v(()=>{let e=E.value.find(e=>e.id===ie.value);return e&&e.copyable!==!1?e:E.value.find(e=>e.copyable!==!1)}),me=()=>h.dispatch(`poivelle/bootstrap`,{loadProject:!1}),he=e=>{re.value=new Set([...re.value,e])},R=e=>e.video_url?.startsWith(`https://`)?e.video_url:void 0,ge=e=>{if(e&&typeof e==`object`&&`response`in e){let t=e.response?.data?.detail;if(typeof t==`string`)return t;if(typeof t?.message==`string`)return t.message}return e instanceof Error?e.message:B(`poivelle.error.generic`)},_e=e=>{let t=Math.floor(e/60),n=e%60;return t?`${t}:${n.toString().padStart(2,`0`)}`:`0:${n.toString().padStart(2,`0`)}`},z=async e=>{await h.dispatch(`poivelle/loadProject`,e),f(`open-studio`)},ve=async(e,t)=>{if(!k.value){k.value=!0;try{await h.dispatch(`poivelle/copyDiscoveryWork`,{work_id:e.id,prompt:t,title:t.slice(0,80)}),f(`open-studio`)}catch(e){ne.error(ge(e))}finally{k.value=!1}}},V=async()=>{let e=F.value;e&&D.value.trim()&&await ve(e,D.value.trim())},H=async e=>{await ve(e,D.value.trim()||`${B(`poivelle.discovery.copyPrefix`)} ${e.title}`)};return u(me),(a,u)=>(C(),l(`main`,X,[e(`header`,Oe,[e(`div`,Z,[o(c(q),{size:19,"aria-hidden":`true`}),u[3]||=r(` POIVELLE`,-1)]),e(`div`,Q,[(C(!0),l(p,null,x(T.value.slice(0,3),e=>(C(),l(`button`,{key:e.id,type:`button`,title:e.title,"aria-label":e.title,onClick:t=>z(e.id)},[r(i(e.title)+` `,1),o(c(ce),{size:13,"aria-hidden":`true`})],8,ke))),128))])]),M.value||N.value?(C(),l(`div`,Ae,[M.value?(C(),_(c(fe),{key:0,size:16,class:`spinning`,"aria-hidden":`true`})):s(``,!0),e(`span`,null,i(M.value?a.$t(`poivelle.status.loading`):N.value),1),N.value?(C(),l(`button`,{key:1,type:`button`,onClick:me},i(a.$t(`poivelle.action.retry`)),1)):s(``,!0)])):s(``,!0),e(`section`,je,[e(`p`,Me,i(a.$t(`poivelle.discovery.kicker`)),1),e(`h1`,Ne,i(a.$t(`poivelle.discovery.title`)),1),e(`div`,{class:`mode-switch`,"aria-label":a.$t(`poivelle.discovery.skills`)},[(C(),l(p,null,x(oe,t=>e(`button`,{key:t.workId,type:`button`,class:n({active:ie.value===t.workId}),disabled:M.value,onClick:e=>ie.value=t.workId},[(C(),_(S(t.icon),{size:15,"aria-hidden":`true`})),r(` `+i(a.$t(t.label)),1)],10,Fe)),64))],8,Pe),e(`form`,{class:`composer`,onSubmit:t(V,[`prevent`])},[g(e(`textarea`,{"onUpdate:modelValue":u[0]||=e=>D.value=e,placeholder:a.$t(`poivelle.discovery.placeholder`),disabled:M.value,maxlength:`500`,rows:`4`},null,8,Ie),[[m,D.value]]),e(`div`,Le,[e(`span`,null,i(D.value.length)+`/500`,1),e(`button`,{type:`submit`,disabled:!D.value.trim()||!F.value||M.value||k.value,title:a.$t(`poivelle.discovery.create`)},[k.value?(C(),_(c(fe),{key:0,size:18,class:`spinning`,"aria-hidden":`true`})):(C(),_(c(ae),{key:1,size:18,"aria-hidden":`true`}))],8,Re)])],32),e(`div`,ze,[(C(),l(p,null,x(se,t=>e(`button`,{key:t,type:`button`,disabled:M.value,onClick:e=>D.value=a.$t(t)},i(a.$t(t)),9,Be)),64))])]),e(`section`,Ve,[e(`div`,He,[e(`div`,null,[e(`span`,null,i(a.$t(`poivelle.discovery.galleryKicker`)),1),e(`h2`,Ue,i(a.$t(`poivelle.discovery.gallery`)),1)]),e(`label`,We,[o(c(L),{size:16,"aria-hidden":`true`}),g(e(`input`,{"onUpdate:modelValue":u[1]||=e=>O.value=e,placeholder:a.$t(`poivelle.discovery.search`),"aria-label":a.$t(`poivelle.discovery.search`)},null,8,Ge),[[m,O.value]])])]),e(`div`,Ke,[(C(),l(p,null,x(ue,t=>e(`button`,{key:t.value,type:`button`,class:n({active:j.value===t.value}),onClick:e=>j.value=t.value},i(a.$t(t.label)),11,qe)),64))]),e(`div`,Je,[(C(!0),l(p,null,x(de.value,t=>(C(),l(`article`,{key:t.id,class:`work-card`},[e(`div`,Ye,[t.cover_url&&!re.value.has(t.id)?(C(),l(`img`,{key:0,src:t.cover_url,alt:t.title,onError:e=>he(t.id)},null,40,Xe)):(C(),_(c(Ce),{key:1,size:32,"aria-hidden":`true`})),R(t)?(C(),l(`span`,Ze,i(a.$t(`poivelle.discovery.finishedFilm`)),1)):s(``,!0),R(t)?(C(),l(`button`,{key:3,type:`button`,class:`cover-play`,"aria-label":`${a.$t(`poivelle.discovery.playFilm`)}: ${t.title}`,onClick:e=>A.value=t},[o(c(I),{size:18,fill:`currentColor`,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.discovery.playFilm`)),1)],8,Qe)):s(``,!0),e(`span`,$e,i(t.duration_seconds?_e(t.duration_seconds):a.$t(`poivelle.discovery.community`)),1)]),e(`div`,et,[e(`div`,$,[e(`span`,null,i(t.creator_name),1),e(`strong`,null,i(t.title),1),e(`p`,null,i(t.description),1)]),e(`div`,tt,[R(t)?(C(),l(`button`,{key:0,type:`button`,class:`play-button`,onClick:e=>A.value=t},[o(c(I),{size:14,fill:`currentColor`,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.discovery.play`)),1)],8,nt)):s(``,!0),t.copyable===!1?s(``,!0):(C(),l(`button`,{key:1,type:`button`,class:`copy-button`,disabled:M.value||k.value,onClick:e=>H(t)},[o(c(le),{size:14,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.discovery.copy`)),1)],8,rt))])])]))),128))])]),o(c(ye),{modelValue:P.value,"onUpdate:modelValue":u[2]||=e=>P.value=e,class:`film-preview-dialog`,"aria-labelledby":`poivelle-film-dialog-title`,width:`min(920px, calc(100vw - 32px))`,"align-center":``,"append-to-body":``,"destroy-on-close":``},{header:y(()=>[A.value?(C(),l(`div`,it,[e(`span`,null,i(a.$t(`poivelle.discovery.finishedFilm`)),1),e(`strong`,at,i(A.value.title),1),e(`small`,null,[r(i(A.value.creator_name)+` `,1),A.value.duration_seconds?(C(),l(p,{key:0},[r(` · `+i(_e(A.value.duration_seconds)),1)],64)):s(``,!0)])])):s(``,!0)]),default:y(()=>[A.value&&R(A.value)?(C(),_(xe,{key:`${A.value.id}-${A.value.video_url}`,src:R(A.value)},null,8,[`src`])):s(``,!0)]),_:1},8,[`modelValue`])]))}}),[[`__scopeId`,`data-v-50f67d0e`]]),st={class:`studio-header`},ct={class:`identity`},lt={class:`wordmark`},ut={key:0,class:`version`},dt={class:`actions`},ft={class:`sync-state`},pt=[`title`],mt=[`disabled`],ht=V(T({__name:`StudioHeader`,props:{projectTitle:{},graphVersion:{},canRun:{type:Boolean},canEdit:{type:Boolean},primaryLabel:{}},emits:[`open-projects`,`home`,`commit`,`run`],setup(t){return(n,a)=>(C(),l(`header`,st,[e(`div`,ct,[o(c(ve),{"icon-only":``,"aria-label":n.$t(`poivelle.discovery.back`),onClick:a[0]||=e=>n.$emit(`home`)},null,8,[`aria-label`]),e(`span`,lt,[o(c(q),{size:15,"aria-hidden":`true`}),a[4]||=r(` POIVELLE`,-1)]),e(`button`,{class:`project-button`,type:`button`,onClick:a[1]||=e=>n.$emit(`open-projects`)},[e(`span`,null,i(t.projectTitle||n.$t(`poivelle.project.noProject`)),1),o(c(se),{size:14,"aria-hidden":`true`})]),t.graphVersion===void 0?s(``,!0):(C(),l(`span`,ut,`Graph v`+i(t.graphVersion),1))]),e(`div`,dt,[e(`span`,ft,[a[5]||=e(`span`,{class:`sync-dot`},null,-1),r(` `+i(n.$t(`poivelle.status.synced`)),1)]),t.canEdit?(C(),l(`button`,{key:0,class:`icon-button`,type:`button`,title:n.$t(`poivelle.action.commit`),onClick:a[2]||=e=>n.$emit(`commit`)},[o(c(we),{size:17,"aria-hidden":`true`})],8,pt)):s(``,!0),e(`button`,{class:`primary-button`,type:`button`,disabled:!t.canRun,onClick:a[3]||=e=>n.$emit(`run`)},[o(c(I),{size:15,fill:`currentColor`,"aria-hidden":`true`}),r(` `+i(t.primaryLabel||n.$t(`poivelle.action.runSkill`)),1)],8,mt)])]))}}),[[`__scopeId`,`data-v-b22020af`]]),gt={class:`production-rail`},_t={class:`rail-section`},vt={class:`section-heading`},yt=[`title`],bt={class:`project-list`},xt=[`onClick`],St={key:0,class:`empty-copy`},Ct={class:`rail-section assets-section`},wt={class:`section-heading`},Tt=[`title`],Et={class:`asset-filters`},Dt=[`onClick`],Ot={class:`asset-list`},kt={key:0,class:`empty-copy`},At={class:`rail-section compact-section`},jt={class:`section-heading static`},Mt={class:`revision-list`},Nt={key:0,class:`empty-copy`},Pt=V(T({__name:`ProductionRail`,props:{projects:{},currentProjectId:{},assets:{},revisions:{},canEdit:{type:Boolean}},emits:[`select-project`,`create-project`,`import-asset`],setup(t){let r=t,a=[`all`,`character`,`location`,`image`,`video`,`voice`],u=w(`all`),d=v(()=>u.value===`all`?r.assets:r.assets.filter(e=>e.kind===u.value)),f=e=>e===`video`?z:e===`voice`||e===`music`||e===`sfx`?G:e===`script`||e===`brand`?de:P;return(r,m)=>(C(),l(`aside`,gt,[e(`div`,_t,[e(`div`,vt,[e(`span`,null,i(r.$t(`poivelle.section.projects`)),1),t.canEdit?(C(),l(`button`,{key:0,type:`button`,title:r.$t(`poivelle.project.create`),onClick:m[0]||=e=>r.$emit(`create-project`)},[o(c(me),{size:15,"aria-hidden":`true`})],8,yt)):s(``,!0)]),e(`div`,bt,[(C(!0),l(p,null,x(t.projects,a=>(C(),l(`button`,{key:a.id,type:`button`,class:n([`project-row`,{active:a.id===t.currentProjectId}]),onClick:e=>r.$emit(`select-project`,a.id)},[o(c(q),{size:15,"aria-hidden":`true`}),e(`span`,null,i(a.title),1),e(`small`,null,`v`+i(a.graph_version),1)],10,xt))),128)),t.projects.length?s(``,!0):(C(),l(`p`,St,i(r.$t(`poivelle.project.empty`)),1))])]),e(`div`,Ct,[e(`div`,wt,[e(`span`,null,i(r.$t(`poivelle.section.assets`)),1),t.canEdit?(C(),l(`button`,{key:0,type:`button`,title:r.$t(`poivelle.asset.import`),onClick:m[1]||=e=>r.$emit(`import-asset`)},[o(c(_e),{size:15,"aria-hidden":`true`})],8,Tt)):s(``,!0)]),e(`div`,Et,[(C(),l(p,null,x(a,t=>e(`button`,{key:t,type:`button`,class:n({active:u.value===t}),onClick:e=>u.value=t},i(t===`all`?r.$t(`poivelle.asset.all`):t),11,Dt)),64))]),e(`div`,Ot,[(C(!0),l(p,null,x(d.value,t=>(C(),l(`button`,{key:t.id,type:`button`,class:`asset-row`},[(C(),_(S(f(t.kind)),{size:15,"aria-hidden":`true`})),e(`span`,null,[e(`strong`,null,i(t.title),1),e(`small`,null,i(t.kind)+` · `+i(t.scope),1)])]))),128)),d.value.length?s(``,!0):(C(),l(`p`,kt,i(r.$t(`poivelle.asset.empty`)),1))])]),e(`div`,At,[e(`div`,jt,[e(`span`,null,i(r.$t(`poivelle.section.revisions`)),1),o(c(M),{size:14,"aria-hidden":`true`})]),e(`div`,Mt,[(C(!0),l(p,null,x(t.revisions.slice(0,4),t=>(C(),l(`div`,{key:t.id,class:`revision-row`},[e(`span`,null,`R`+i(t.revision_number),1),e(`small`,null,`Graph v`+i(t.graph_version),1)]))),128)),t.revisions.length?s(``,!0):(C(),l(`p`,Nt,i(r.$t(`poivelle.revision.empty`)),1))])])]))}}),[[`__scopeId`,`data-v-71c6054d`]]),Ft=[`aria-label`],It=[`onClick`],Lt=V(T({__name:`ProjectionTabs`,props:{modelValue:{},canEdit:{type:Boolean}},emits:[`update:modelValue`,`create-node`],setup(t){let a=[{value:`overview`,label:`poivelle.projection.overview`,icon:N},{value:`canvas`,label:`poivelle.projection.advanced`,icon:J},{value:`storyboard`,label:`poivelle.projection.storyboard`,icon:q},{value:`timeline`,label:`poivelle.projection.timeline`,icon:De},{value:`review`,label:`poivelle.projection.review`,icon:Te}];return(u,d)=>(C(),l(`nav`,{class:`projection-tabs`,"aria-label":u.$t(`poivelle.projection.label`)},[(C(),l(p,null,x(a,a=>e(`button`,{key:a.value,type:`button`,class:n({active:t.modelValue===a.value}),onClick:e=>u.$emit(`update:modelValue`,a.value)},[(C(),_(S(a.icon),{size:14,"aria-hidden":`true`})),r(` `+i(u.$t(a.label)),1)],10,It)),64)),d[1]||=e(`span`,{class:`spacer`},null,-1),t.canEdit?(C(),l(`button`,{key:0,class:`add-node`,type:`button`,onClick:d[0]||=e=>u.$emit(`create-node`)},[o(c(me),{size:14,"aria-hidden":`true`}),r(` `+i(u.$t(`poivelle.node.create`)),1)])):s(``,!0)],8,Ft))}}),[[`__scopeId`,`data-v-393d2d3e`]]),Rt={class:`connections`,"aria-hidden":`true`},zt=[`x1`,`y1`,`x2`,`y2`],Bt=[`onClick`],Vt={class:`node-type`},Ht={class:`node-summary`},Ut={key:0,class:`lock-mark`},Wt={key:0,class:`empty-canvas`},Gt=V(T({__name:`GraphCanvas`,props:{graph:{},selectedNodeId:{},canEdit:{type:Boolean}},emits:[`select-node`,`create-node`],setup(a){let u=a,d=v(()=>new Map(u.graph.layouts.map(e=>[e.node_id,e]))),f=e=>{let t=u.graph.nodes.findIndex(t=>t.id===e);return{x:52+t%3*250,y:54+Math.floor(t/3)*170,width:208,height:116}},m=e=>d.value.get(e)??f(e),h=e=>{let t=m(e);return{x:t.x+t.width/2,y:t.y+t.height/2}},g=e=>{let t=m(e);return{left:`${t.x}px`,top:`${t.y}px`,width:`${t.width}px`,minHeight:`${t.height}px`}},_=v(()=>u.graph.edges.filter(e=>u.graph.nodes.some(t=>t.id===e.source.node_id)&&u.graph.nodes.some(t=>t.id===e.target.node_id))),y=e=>{let t=e.payload.text??e.payload.prompt??e.payload.description;return typeof t==`string`&&t?t:`Version ${e.version}`};return(u,d)=>(C(),l(`div`,{class:`graph-canvas`,onClick:d[1]||=t(e=>u.$emit(`select-node`,void 0),[`self`])},[(C(),l(`svg`,Rt,[(C(!0),l(p,null,x(_.value,e=>(C(),l(`line`,{key:e.id,x1:h(e.source.node_id).x,y1:h(e.source.node_id).y,x2:h(e.target.node_id).x,y2:h(e.target.node_id).y},null,8,zt))),128))])),(C(!0),l(p,null,x(a.graph.nodes,f=>(C(),l(`button`,{key:f.id,type:`button`,class:n([`graph-node`,`type-${f.node_type}`,{selected:f.id===a.selectedNodeId}]),style:b(g(f.id)),onClick:t(e=>u.$emit(`select-node`,f.id),[`stop`])},[e(`span`,Vt,i(f.node_type),1),e(`strong`,null,i(f.title),1),e(`span`,Ht,i(y(f)),1),f.locked_paths.length?(C(),l(`span`,Ut,[o(c(Ee),{size:11}),d[2]||=r(` locked`,-1)])):s(``,!0)],14,Bt))),128)),a.graph.nodes.length?s(``,!0):(C(),l(`div`,Wt,[o(c(J),{size:28,"stroke-width":`1.5`,"aria-hidden":`true`}),e(`h2`,null,i(u.$t(`poivelle.graph.emptyTitle`)),1),e(`p`,null,i(u.$t(`poivelle.graph.emptyBody`)),1),a.canEdit?(C(),l(`button`,{key:0,type:`button`,onClick:d[0]||=e=>u.$emit(`create-node`)},[o(c(me),{size:15,"aria-hidden":`true`}),r(` `+i(u.$t(`poivelle.node.create`)),1)])):s(``,!0)]))]))}}),[[`__scopeId`,`data-v-cd67c1fc`]]),Kt={class:`media-lane`},qt={key:0,class:`candidate-strip`},Jt=[`src`],Yt=[`src`],Xt=[`onClick`],Zt={key:1},Qt=[`onClick`],$t={key:1,class:`unavailable-takes`},en={key:2,class:`empty-candidates`},tn=V(T({__name:`StoryboardMediaLane`,props:{title:{},kind:{},nodeIds:{},artifacts:{},takes:{},selections:{},canEdit:{type:Boolean},canSelect:{type:Boolean}},emits:[`select-node`,`select-take`],setup(t){let r=t,a=v(()=>{let e=new Set(r.nodeIds),t=new Map(r.artifacts.map(e=>[e.id,e])),n=r.takes.filter(t=>e.has(t.target_node_id)&&t.state===`ready`).flatMap(e=>[...new Set(e.artifact_ids)].map(e=>t.get(e)).filter(e=>!!e).map(t=>({key:`${e.id}:${t.id}`,take:e,artifact:t,selected:r.selections.some(t=>t.target_node_id===e.target_node_id&&t.take_id===e.id)}))),i=new Set(n.map(e=>e.artifact.id)),a=r.artifacts.filter(t=>e.has(t.node_id??``)&&t.kind===r.kind&&!i.has(t.id)).map(e=>({key:e.id,take:void 0,artifact:e,selected:!1}));return[...n,...a]}),o=v(()=>r.takes.filter(e=>r.nodeIds.includes(e.target_node_id)&&e.state!==`ready`)),c=w([]),u=e=>{c.value=c.value.includes(e)?c.value.filter(t=>t!==e):[...c.value.slice(-1),e]};return(r,d)=>(C(),l(`section`,Kt,[e(`header`,null,[e(`span`,null,i(t.title),1),t.nodeIds[0]?(C(),l(`button`,{key:0,type:`button`,onClick:d[0]||=e=>r.$emit(`select-node`,t.nodeIds[0])},i(r.$t(`poivelle.storyboard.openNode`)),1)):s(``,!0)]),a.value.length?(C(),l(`div`,qt,[(C(!0),l(p,null,x(a.value,a=>(C(),l(`article`,{key:a.key,class:n([`candidate`,{selected:a.selected,comparing:c.value.includes(a.key)}])},[t.kind===`image`?(C(),l(`img`,{key:0,src:a.artifact.storage_url,alt:``},null,8,Jt)):(C(),l(`video`,{key:1,src:a.artifact.storage_url,controls:``,preload:`metadata`},null,8,Yt)),e(`div`,null,[e(`span`,null,i(a.take?`TAKE`:`ARTIFACT`),1),e(`strong`,null,i(a.artifact.id.slice(-8)),1),t.canEdit&&t.canSelect&&a.take&&!a.selected?(C(),l(`button`,{key:0,type:`button`,onClick:e=>r.$emit(`select-take`,{target_node_id:a.take.target_node_id,take_id:a.take.id})},i(r.$t(`poivelle.storyboard.selectTake`)),9,Xt)):a.selected?(C(),l(`em`,Zt,i(r.$t(`poivelle.storyboard.selected`)),1)):s(``,!0),e(`button`,{type:`button`,class:`compare-toggle`,onClick:e=>u(a.key)},i(c.value.includes(a.key)?r.$t(`poivelle.storyboard.comparing`):r.$t(`poivelle.storyboard.compare`)),9,Qt)])],2))),128))])):s(``,!0),o.value.length?(C(),l(`div`,$t,[(C(!0),l(p,null,x(o.value,e=>(C(),l(`span`,{key:e.id},i(e.state===`failed`?r.$t(`poivelle.storyboard.failedTake`):r.$t(`poivelle.storyboard.restrictedTake`)),1))),128))])):s(``,!0),!a.value.length&&!o.value.length?(C(),l(`div`,en,i(r.$t(`poivelle.storyboard.noCandidates`)),1)):s(``,!0)]))}}),[[`__scopeId`,`data-v-4e385f6a`]]),nn={class:`storyboard-view`},rn={key:0,class:`storyboard-heading`},an={class:`section-label`},on=[`onClick`],sn={class:`shot-number`},cn={class:`shot-production`},ln={class:`shot-metadata`},un={class:`prompt-columns`},dn={class:`candidate-columns`},fn=[`onClick`],pn={key:0,class:`empty-view`},mn=V(T({__name:`StoryboardView`,props:{graph:{},storyboard:{},artifacts:{},takes:{},selections:{},selectedNodeId:{},canEdit:{type:Boolean},canSelect:{type:Boolean}},emits:[`select-node`,`select-take`],setup(t){let r=t,a=v(()=>r.storyboard?.sections.reduce((e,t)=>e+t.shots.length,0)??0),u=v(()=>r.graph.nodes.filter(e=>[`storyboard`,`scene`,`shot`,`image`,`video`].includes(e.node_type)));return(r,d)=>(C(),l(`div`,nn,[t.storyboard?(C(),l(`header`,rn,[e(`div`,null,[e(`span`,null,i(t.storyboard.schema_ref),1),e(`h2`,null,i(t.storyboard.title),1)]),e(`dl`,null,[e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.product`)),1),e(`dd`,null,i(t.storyboard.product_name),1)]),e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.duration`)),1),e(`dd`,null,i(t.storyboard.target_duration_seconds)+`s`,1)]),e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.shots`)),1),e(`dd`,null,i(a.value),1)])])])):s(``,!0),t.storyboard?(C(!0),l(p,{key:1},x(t.storyboard.sections,a=>(C(),l(`section`,{key:a.id,class:`story-section`},[e(`div`,an,[e(`span`,null,i(String(a.order).padStart(2,`0`)),1),e(`h3`,null,i(a.title),1)]),(C(!0),l(p,null,x(a.shots,a=>(C(),l(`article`,{key:a.row.id,class:n([`shot-row`,{selected:a.shot_node_id===t.selectedNodeId}])},[e(`button`,{class:`shot-brief`,type:`button`,onClick:e=>r.$emit(`select-node`,a.shot_node_id)},[e(`span`,sn,`SHOT `+i(String(a.row.shot_number).padStart(2,`0`)),1),e(`strong`,null,i(a.row.plot_description),1),e(`span`,null,i(a.row.duration_seconds)+`s · `+i(a.row.shot_size),1)],8,on),e(`div`,cn,[e(`dl`,ln,[e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.action`)),1),e(`dd`,null,i(a.row.character_action||`—`),1)]),e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.emotion`)),1),e(`dd`,null,i(a.row.emotion||`—`),1)]),e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.lighting`)),1),e(`dd`,null,i(a.row.lighting_and_atmosphere),1)]),e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.audio`)),1),e(`dd`,null,i(a.row.audio_effects),1)])]),e(`div`,un,[e(`div`,null,[e(`span`,null,i(r.$t(`poivelle.storyboard.imagePrompt`)),1),e(`p`,null,i(a.row.image_generation_prompt),1)]),e(`div`,null,[e(`span`,null,i(r.$t(`poivelle.storyboard.motionPrompt`)),1),e(`p`,null,i(a.row.video_motion_prompt),1)])])]),e(`div`,dn,[o(tn,{title:r.$t(`poivelle.storyboard.frames`),kind:`image`,"node-ids":a.image_node_ids,artifacts:t.artifacts,takes:t.takes,selections:t.selections,"can-edit":t.canEdit,"can-select":t.canSelect,onSelectNode:d[0]||=e=>r.$emit(`select-node`,e),onSelectTake:d[1]||=e=>r.$emit(`select-take`,e)},null,8,[`title`,`node-ids`,`artifacts`,`takes`,`selections`,`can-edit`,`can-select`]),o(tn,{title:r.$t(`poivelle.storyboard.motion`),kind:`video`,"node-ids":a.video_node_ids,artifacts:t.artifacts,takes:t.takes,selections:t.selections,"can-edit":t.canEdit,"can-select":t.canSelect,onSelectNode:d[2]||=e=>r.$emit(`select-node`,e),onSelectTake:d[3]||=e=>r.$emit(`select-take`,e)},null,8,[`title`,`node-ids`,`artifacts`,`takes`,`selections`,`can-edit`,`can-select`])])],2))),128))]))),128)):(C(),l(p,{key:2},[(C(!0),l(p,null,x(u.value,(a,s)=>(C(),l(`button`,{key:a.id,type:`button`,class:n([`legacy-card`,{selected:a.id===t.selectedNodeId}]),onClick:e=>r.$emit(`select-node`,a.id)},[e(`span`,null,i(String(s+1).padStart(2,`0`)),1),o(c(q),{size:26,"stroke-width":`1.25`,"aria-hidden":`true`}),e(`strong`,null,i(a.title),1)],10,fn))),128)),u.value.length?s(``,!0):(C(),l(`div`,pn,[o(c(q),{size:30,"stroke-width":`1.4`}),e(`h2`,null,i(r.$t(`poivelle.storyboard.emptyTitle`)),1),e(`p`,null,i(r.$t(`poivelle.storyboard.emptyBody`)),1)]))],64))]))}}),[[`__scopeId`,`data-v-ce90da94`]]),hn={class:`timeline-view`},gn={key:0,class:`master-output`,"aria-labelledby":`poivelle-master-title`},_n={class:`master-heading`},vn={class:`master-kicker`},yn={id:`poivelle-master-title`},bn=[`href`],xn=[`src`,`aria-label`],Sn={key:0,class:`master-status`,role:`status`},Cn={key:1,class:`master-status is-error`,role:`alert`},wn={class:`master-metadata`},Tn={class:`timeline-ruler`},En={key:1,class:`tracks`},Dn={class:`track-label`},On={class:`track-lane`},kn=[`title`],An=[`aria-label`],jn={key:0,class:`clip-actions`},Mn=[`disabled`,`onClick`],Nn=[`disabled`,`onClick`],Pn={key:2,class:`empty-timeline`},Fn=120/5e3,In=V(T({__name:`TimelineView`,props:{timeline:{},graph:{},artifacts:{},canEdit:{type:Boolean}},emits:[`move-clip`],setup(t){let n=t,a=v(()=>{let e=new Set(n.graph.nodes.filter(e=>e.node_type===`composition`).map(e=>e.id));return[...n.artifacts??[]].filter(t=>t.kind===`video`&&t.state===`committed`&&t.restriction_watermark===0&&!!t.node_id&&e.has(t.node_id)&&t.metadata?.operation===`compose.timeline@1`).sort((e,t)=>t.created_at.localeCompare(e.created_at))[0]}),u=w(!0),d=w(!1);h(()=>a.value?.id,()=>{u.value=!0,d.value=!1});let f=()=>{u.value=!0,d.value=!1},m=()=>{u.value=!1,d.value=!0},g=e=>{let t=a.value?.metadata?.[e];return typeof t==`number`&&Number.isFinite(t)?t:void 0},_=v(()=>{let e=g(`duration_ms`);return e===void 0?`—`:`${(e/1e3).toFixed(1)}s`}),y=v(()=>{let e=g(`width`),t=g(`height`);return e&&t?`${e} × ${t}`:`—`}),S=v(()=>{let e=g(`width`),t=g(`height`);return e&&t?{aspectRatio:`${e} / ${t}`}:void 0}),T=e=>n.timeline?.clips.filter(t=>t.track_id===e)??[],E=e=>e.artifact_id.slice(-6),D=e=>({left:`${e.timeline_start_ms*Fn}px`,width:`${Math.max(48,(e.source_out_ms-e.source_in_ms)/(e.speed??1)*Fn)}px`});return(n,h)=>(C(),l(`div`,hn,[a.value?(C(),l(`section`,gn,[e(`div`,_n,[e(`div`,null,[e(`span`,vn,i(n.$t(`poivelle.timeline.deliverable`)),1),e(`h2`,yn,i(n.$t(`poivelle.timeline.masterTitle`)),1)]),e(`a`,{class:`master-download`,href:a.value.storage_url,target:`_blank`,rel:`noopener noreferrer`,download:``},[o(c(ue),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.timeline.download`)),1)],8,bn)]),e(`div`,{class:`master-media`,style:b(S.value)},[e(`video`,{class:`master-player`,src:a.value.storage_url,"aria-label":n.$t(`poivelle.timeline.playerLabel`),controls:``,playsinline:``,preload:`metadata`,onLoadstart:f,onLoadedmetadata:h[0]||=e=>u.value=!1,onCanplay:h[1]||=e=>u.value=!1,onError:m},null,40,xn),u.value&&!d.value?(C(),l(`div`,Sn,[o(c(fe),{size:24,class:`is-spinning`,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.timeline.loading`)),1)])):s(``,!0),d.value?(C(),l(`div`,Cn,[o(c(ge),{size:24,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.timeline.loadError`)),1)])):s(``,!0)],4),e(`dl`,wn,[e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.duration`)),1),e(`dd`,null,i(_.value),1)]),e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.frame`)),1),e(`dd`,null,i(y.value),1)]),e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.videoClips`)),1),e(`dd`,null,i(g(`video_clips`)??`—`),1)]),e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.audioClips`)),1),e(`dd`,null,i(g(`audio_clips`)??`—`),1)])])])):s(``,!0),e(`div`,Tn,[(C(),l(p,null,x(10,t=>e(`span`,{key:t},i((t-1)*5)+`s`,1)),64))]),t.timeline?.tracks.length?(C(),l(`div`,En,[(C(!0),l(p,null,x(t.timeline.tracks,r=>(C(),l(`div`,{key:r.id,class:`track-row`},[e(`div`,Dn,i(r.title||r.kind||r.id),1),e(`div`,On,[(C(!0),l(p,null,x(T(r.id),(a,o)=>(C(),l(`div`,{key:a.id,class:`timeline-clip`,style:b(D(a)),title:a.artifact_id},[e(`button`,{type:`button`,"aria-label":a.artifact_id},i(E(a)),9,An),t.canEdit&&r.kind===`video`?(C(),l(`span`,jn,[e(`button`,{type:`button`,disabled:o===0,onClick:e=>n.$emit(`move-clip`,{trackId:r.id,clipId:a.id,direction:-1})},` ‹ `,8,Mn),e(`button`,{type:`button`,disabled:o===T(r.id).length-1,onClick:e=>n.$emit(`move-clip`,{trackId:r.id,clipId:a.id,direction:1})},` › `,8,Nn)])):s(``,!0)],12,kn))),128))])]))),128))])):(C(),l(`div`,Pn,[o(c(Ce),{size:30,"stroke-width":`1.4`}),e(`h2`,null,i(n.$t(`poivelle.timeline.emptyTitle`)),1),e(`p`,null,i(n.$t(`poivelle.timeline.emptyBody`)),1)]))]))}}),[[`__scopeId`,`data-v-37eb37c8`]]),Ln={class:`review-view`},Rn={class:`review-summary`},zn={class:`eyebrow`},Bn={class:`summary-metrics`},Vn={class:`review-columns card-gap`},Hn={key:0,class:`item-actions`},Un=[`onClick`],Wn={key:0,class:`empty-copy`},Gn=[`onClick`],Kn=[`onClick`],qn={key:0,class:`empty-copy`},Jn={key:1,class:`run-detail`},Yn={key:0},Xn=[`onClick`],Zn={key:2,class:`forensic-failures`,role:`alert`},Qn=V(T({__name:`ReviewView`,props:{graph:{},proposals:{},revisions:{},runs:{},activeRun:{},evaluations:{},forensicValidations:{},costs:{},canEdit:{type:Boolean}},emits:[`reject-proposal`,`cancel-run`,`open-run`,`retry-step`],setup(a){let o=a,c=v(()=>o.proposals.filter(e=>e.state===`awaiting_approval`)),u=e=>![`release_pending`,`succeeded`,`failed`,`cancelled`].includes(e.state),d=v(()=>o.evaluations.filter(e=>e.verdict===`pass`).length),f=v(()=>o.forensicValidations[0]),m=v(()=>f.value?.result.checks.filter(e=>e.verdict===`fail`)??[]),h=e=>[...o.activeRun?.attempts??[]].filter(t=>t.step_run_id===e).sort((e,t)=>t.created_at.localeCompare(e.created_at))[0],g=e=>(e/1e6).toFixed(2);return(o,_)=>(C(),l(`div`,Ln,[e(`section`,Rn,[e(`div`,null,[e(`span`,zn,i(o.$t(`poivelle.review.heading`)),1),e(`h2`,null,i(a.revisions.length?`Revision ${a.revisions[0].revision_number}`:o.$t(`poivelle.review.noRevision`)),1)]),e(`div`,Bn,[e(`span`,null,[e(`strong`,null,i(a.graph.nodes.length),1),r(i(o.$t(`poivelle.review.nodes`)),1)]),e(`span`,null,[e(`strong`,null,i(a.proposals.length),1),r(i(o.$t(`poivelle.review.proposals`)),1)]),e(`span`,null,[e(`strong`,null,i(a.runs.length),1),r(i(o.$t(`poivelle.review.runs`)),1)]),e(`span`,null,[e(`strong`,null,i(g(a.costs?.totals_microcredits.final??0)),1),r(i(o.$t(`poivelle.review.finalCost`)),1)]),e(`span`,null,[e(`strong`,null,i(d.value)+`/`+i(a.evaluations.length),1),r(i(o.$t(`poivelle.review.qualityChecks`)),1)]),e(`span`,null,[e(`strong`,{class:n(f.value?.result.verdict===`fail`?`metric-fail`:``)},i(f.value?.result.verdict??`—`),3),r(i(o.$t(`poivelle.review.forensics`)),1)])])]),e(`section`,Vn,[e(`div`,null,[e(`h3`,null,i(o.$t(`poivelle.review.pendingProposals`)),1),(C(!0),l(p,null,x(c.value,t=>(C(),l(`article`,{key:t.id,class:`review-item`},[e(`span`,{class:n([`risk`,`risk-${t.risk_class}`])},i(t.risk_class),3),e(`strong`,null,i(t.intent),1),e(`p`,null,i(t.rationale),1),a.canEdit?(C(),l(`div`,Hn,[e(`span`,null,i(o.$t(`poivelle.review.approvalTokenRequired`)),1),e(`button`,{type:`button`,onClick:e=>o.$emit(`reject-proposal`,t.id)},i(o.$t(`poivelle.review.reject`)),9,Un)])):s(``,!0)]))),128)),c.value.length?s(``,!0):(C(),l(`p`,Wn,i(o.$t(`poivelle.review.noProposals`)),1))]),e(`div`,null,[e(`h3`,null,i(o.$t(`poivelle.review.execution`)),1),(C(!0),l(p,null,x(a.runs,r=>(C(),l(`article`,{key:r.id,class:n([`run-item`,{active:a.activeRun?.run.id===r.id}]),onClick:e=>o.$emit(`open-run`,r.id)},[e(`span`,{class:n([`run-state`,`state-${r.state}`])},null,2),e(`div`,null,[e(`strong`,null,i(r.state),1),e(`small`,null,i(r.id),1)]),a.canEdit&&u(r)?(C(),l(`button`,{key:0,type:`button`,class:`cancel-run`,onClick:t(e=>o.$emit(`cancel-run`,r.id),[`stop`])},i(o.$t(`poivelle.run.cancel`)),9,Kn)):s(``,!0)],10,Gn))),128)),a.runs.length?s(``,!0):(C(),l(`p`,qn,i(o.$t(`poivelle.review.noRuns`)),1)),a.activeRun?(C(),l(`section`,Jn,[e(`header`,null,[e(`strong`,null,i(o.$t(`poivelle.review.runDetail`)),1),e(`span`,null,i(a.activeRun.attempts.length)+` `+i(o.$t(`poivelle.review.attempts`)),1)]),(C(!0),l(p,null,x(a.activeRun.steps,r=>(C(),l(`article`,{key:r.id,class:`step-item`},[e(`span`,{class:n([`run-state`,`state-${r.state}`])},null,2),e(`div`,null,[e(`strong`,null,i(r.operation),1),e(`small`,null,i(r.state)+` · `+i(r.node_id),1),h(r.id)?.error?(C(),l(`p`,Yn,i(h(r.id)?.error?.code??`provider_error`)+`: `+i(h(r.id)?.error?.message??o.$t(`poivelle.error.generic`)),1)):s(``,!0)]),a.canEdit&&[`failed`,`manual_recovery`].includes(r.state)?(C(),l(`button`,{key:0,type:`button`,class:`retry-step`,onClick:t(e=>o.$emit(`retry-step`,r),[`stop`])},i(o.$t(`poivelle.review.retryStep`)),9,Xn)):s(``,!0)]))),128))])):s(``,!0),m.value.length?(C(),l(`section`,Zn,[e(`strong`,null,i(o.$t(`poivelle.review.forensics`)),1),(C(!0),l(p,null,x(m.value,e=>(C(),l(`p`,{key:e.code},i(e.code)+` · `+i(String(e.actual??`—`))+` / `+i(String(e.expected??`—`)),1))),128))])):s(``,!0)])])]))}}),[[`__scopeId`,`data-v-d81fa56e`]]),$n={class:`inspector-panel`},er={class:`inspector-heading`},tr={class:`field`},nr={class:`field`},rr=[`value`],ir={class:`field grow`},ar={class:`node-meta`},or={key:1,class:`empty-inspector`},sr=V(T({__name:`InspectorPanel`,props:{node:{}},emits:[`update`,`delete`],setup(t,{emit:n}){let a=t,s=n,u=w(``),f=w(``);h(()=>a.node,e=>{u.value=e?.title??``;let t=e?.payload.prompt??e?.payload.text??``;f.value=typeof t==`string`?t:``},{immediate:!0});let y=v(()=>a.node?a.node.node_type===`video`?z:a.node.node_type===`audio`?G:[`shot`,`scene`,`storyboard`].includes(a.node.node_type)?q:[`image`,`character`,`location`].includes(a.node.node_type)?P:a.node.node_type===`script`||a.node.node_type===`text`?de:j:F),b=()=>{let e=u.value.trim();a.node&&e&&e!==a.node.title&&s(`update`,{path:`/title`,value:e})},x=()=>{if(!a.node)return;let e=a.node.payload.prompt===void 0?`text`:`prompt`;f.value!==a.node.payload[e]&&s(`update`,{path:`/payload/${e}`,value:f.value})};return(n,a)=>(C(),l(`aside`,$n,[e(`div`,er,[e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.section.inspector`)),1),e(`strong`,null,i(t.node?.title||n.$t(`poivelle.inspector.noSelection`)),1)]),(C(),_(S(y.value),{size:18,"aria-hidden":`true`}))]),t.node?(C(),l(p,{key:0},[e(`label`,tr,[e(`span`,null,i(n.$t(`poivelle.field.title`)),1),g(e(`input`,{"onUpdate:modelValue":a[0]||=e=>u.value=e,type:`text`,onBlur:b,onKeydown:d(b,[`enter`])},null,544),[[m,u.value]])]),e(`label`,nr,[e(`span`,null,i(n.$t(`poivelle.field.type`)),1),e(`input`,{value:t.node.node_type,type:`text`,disabled:``},null,8,rr)]),e(`label`,ir,[e(`span`,null,i(n.$t(`poivelle.field.prompt`)),1),g(e(`textarea`,{"onUpdate:modelValue":a[1]||=e=>f.value=e,rows:`8`,onBlur:x},null,544),[[m,f.value]])]),e(`div`,ar,[a[3]||=e(`span`,null,`NODE`,-1),e(`code`,null,i(t.node.id),1),a[4]||=e(`span`,null,`VERSION`,-1),e(`code`,null,i(t.node.version),1)]),e(`button`,{class:`danger-button`,type:`button`,onClick:a[2]||=e=>n.$emit(`delete`)},[o(c(R),{size:14,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.node.delete`)),1)])],64)):(C(),l(`div`,or,[o(c(F),{size:24,"stroke-width":`1.4`}),e(`p`,null,i(n.$t(`poivelle.inspector.empty`)),1)]))]))}}),[[`__scopeId`,`data-v-7a6ae318`]]),cr={class:`agent-dock`},lr={class:`agent-identity`},ur={class:`proposal-strip`},dr=[`onClick`],fr={key:0},pr=[`disabled`],mr=V(T({__name:`AgentDock`,props:{proposals:{},selectedNodeId:{},skill:{},canEdit:{type:Boolean}},emits:[`run`,`open-proposal`],setup(t){let a=t,u=v(()=>a.proposals.filter(e=>e.state===`awaiting_approval`));return(a,d)=>(C(),l(`section`,cr,[e(`div`,lr,[o(c(Se),{size:16,"aria-hidden":`true`}),e(`div`,null,[e(`strong`,null,i(a.$t(`poivelle.agent.title`)),1),e(`span`,null,i(t.skill),1)])]),e(`div`,ur,[(C(!0),l(p,null,x(u.value,t=>(C(),l(`button`,{key:t.id,type:`button`,onClick:e=>a.$emit(`open-proposal`,t.id)},[e(`span`,{class:n([`risk-dot`,`risk-${t.risk_class}`])},null,2),e(`strong`,null,i(t.intent),1),e(`small`,null,i(t.state),1)],8,dr))),128)),u.value.length?s(``,!0):(C(),l(`p`,fr,i(a.$t(`poivelle.agent.noProposals`)),1))]),t.canEdit?(C(),l(`button`,{key:0,class:`agent-button`,type:`button`,disabled:!t.selectedNodeId,onClick:d[0]||=e=>a.$emit(`run`)},[o(c(he),{size:15,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.agent.plan`)),1)],8,pr)):s(``,!0)]))}}),[[`__scopeId`,`data-v-81fac9f8`]]),hr={class:`project-guide`,"aria-labelledby":`project-guide-title`},gr={class:`guide-copy`},_r={id:`project-guide-title`},vr={class:`guide-body`},yr={class:`project-facts`},br={class:`guide-actions`},xr=[`disabled`],Sr={class:`cost-note`},Cr={class:`production-steps`},wr={class:`done`},Tr=[`value`,`max`],Er=[`value`,`max`],Dr=V(T({__name:`ProjectGuide`,props:{projectTitle:{},graph:{},storyboard:{},artifacts:{},takes:{},selections:{},canEdit:{type:Boolean},busy:{type:Boolean}},emits:[`generate-node`,`open-storyboard`],setup(t){let a=t,u=v(()=>a.storyboard?a.storyboard.sections.flatMap(e=>e.shots.flatMap(e=>e.image_node_ids)):a.graph.nodes.filter(e=>e.node_type===`image`).map(e=>e.id)),d=v(()=>a.storyboard?a.storyboard.sections.flatMap(e=>e.shots.flatMap(e=>e.video_node_ids)):a.graph.nodes.filter(e=>e.node_type===`video`).map(e=>e.id)),f=v(()=>new Set([...a.artifacts.filter(e=>e.state===`committed`).flatMap(e=>e.node_id??[]),...a.takes.filter(e=>e.state===`ready`).map(e=>e.target_node_id)])),p=v(()=>u.value.filter(e=>f.value.has(e)).length),m=v(()=>d.value.filter(e=>f.value.has(e)).length),h=v(()=>new Set(a.selections.map(e=>e.target_node_id))),g=v(()=>u.value.filter(e=>h.value.has(e)).length),y=v(()=>d.value.filter(e=>h.value.has(e)).length),b=v(()=>p.value===u.value.length&&g.value<u.value.length||m.value===d.value.length&&y.value<d.value.length),x=v(()=>a.graph.nodes.some(e=>e.node_type===`output`)),S=v(()=>{let e=new Set(a.graph.nodes.filter(e=>e.node_type===`output`).map(e=>e.id));return a.artifacts.some(t=>t.state===`committed`&&!!t.node_id&&e.has(t.node_id))}),w=v(()=>{let e=u.value.find(e=>!f.value.has(e));if(e)return a.graph.nodes.find(t=>t.id===e);if(g.value<u.value.length)return;let t=d.value.find(e=>!f.value.has(e));if(t)return a.graph.nodes.find(e=>e.id===t);if(!(y.value<d.value.length))return a.graph.nodes.find(e=>e.node_type===`audio`&&!f.value.has(e.id))}),T=v(()=>(a.storyboard?.sections.reduce((e,t)=>e+t.shots.length,0)??a.graph.nodes.filter(e=>e.node_type===`shot`).length)||d.value.length),E=v(()=>{let e=a.graph.nodes.find(e=>e.node_type===`script`),t=Number(e?.payload?.target_duration_seconds);return a.storyboard?.target_duration_seconds??(Number.isFinite(t)?t:40)}),D=v(()=>{let e=a.graph.nodes.find(e=>e.node_type===`script`);return String(e?.payload?.aspect_ratio??`16:9`)}),O=v(()=>w.value?.node_type===`image`?B(`poivelle.guide.generateFrame`,{current:p.value+1,total:u.value.length}):w.value?.node_type===`video`?B(`poivelle.guide.generateMotion`,{current:m.value+1,total:d.value.length}):B(`poivelle.guide.generateScore`));return(a,f)=>(C(),l(`section`,hr,[e(`div`,gr,[e(`p`,null,i(a.$t(`poivelle.guide.kicker`)),1),e(`h1`,_r,i(a.$t(`poivelle.guide.title`,{title:t.projectTitle})),1),e(`p`,vr,i(a.$t(`poivelle.guide.body`)),1),e(`dl`,yr,[e(`div`,null,[e(`dt`,null,i(a.$t(`poivelle.guide.duration`)),1),e(`dd`,null,i(E.value)+`s`,1)]),e(`div`,null,[e(`dt`,null,i(a.$t(`poivelle.guide.shots`)),1),e(`dd`,null,i(T.value),1)]),e(`div`,null,[e(`dt`,null,i(a.$t(`poivelle.guide.format`)),1),e(`dd`,null,i(D.value),1)])]),e(`div`,br,[w.value?(C(),l(`button`,{key:0,type:`button`,class:`primary-action`,disabled:!t.canEdit||t.busy,onClick:f[0]||=e=>a.$emit(`generate-node`,w.value.id)},[t.busy?(C(),_(c(fe),{key:0,size:17,class:`spinning`,"aria-hidden":`true`})):(C(),_(c(he),{key:1,size:17,"aria-hidden":`true`})),r(` `+i(O.value),1)],8,xr)):(C(),l(`button`,{key:1,type:`button`,class:`primary-action`,onClick:f[1]||=e=>a.$emit(`open-storyboard`)},[o(c(q),{size:17,"aria-hidden":`true`}),r(` `+i(b.value?a.$t(`poivelle.guide.chooseResults`):a.$t(`poivelle.guide.reviewResults`)),1)])),e(`button`,{type:`button`,class:`secondary-action`,onClick:f[2]||=e=>a.$emit(`open-storyboard`)},[r(i(a.$t(`poivelle.guide.reviewPlan`))+` `,1),o(c(ie),{size:15,"aria-hidden":`true`})])]),e(`p`,Sr,[o(c(Y),{size:14,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.guide.costNote`)),1)])]),e(`ol`,Cr,[e(`li`,wr,[e(`span`,null,[o(c(oe),{size:15,"aria-hidden":`true`})]),e(`div`,null,[e(`strong`,null,i(a.$t(`poivelle.guide.stepPlan`)),1),e(`p`,null,i(a.$t(`poivelle.guide.stepPlanBody`,{shots:T.value})),1)]),e(`small`,null,i(a.$t(`poivelle.guide.ready`)),1)]),e(`li`,{class:n({current:g.value<u.value.length,done:u.value.length>0&&g.value===u.value.length})},[f[3]||=e(`span`,null,`2`,-1),e(`div`,null,[e(`strong`,null,i(a.$t(`poivelle.guide.stepFrames`)),1),e(`p`,null,i(a.$t(`poivelle.guide.stepFramesBody`)),1),e(`progress`,{value:p.value,max:Math.max(u.value.length,1)},null,8,Tr)]),e(`small`,null,i(p.value)+` `+i(a.$t(`poivelle.guide.generated`))+` · `+i(g.value)+` `+i(a.$t(`poivelle.guide.selected`)),1)],2),e(`li`,{class:n({current:g.value===u.value.length&&y.value<d.value.length,done:d.value.length>0&&y.value===d.value.length})},[f[4]||=e(`span`,null,`3`,-1),e(`div`,null,[e(`strong`,null,i(a.$t(`poivelle.guide.stepMotion`)),1),e(`p`,null,i(a.$t(`poivelle.guide.stepMotionBody`)),1),e(`progress`,{value:m.value,max:Math.max(d.value.length,1)},null,8,Er)]),e(`small`,null,i(m.value)+` `+i(a.$t(`poivelle.guide.generated`))+` · `+i(y.value)+` `+i(a.$t(`poivelle.guide.selected`)),1)],2),x.value?(C(),l(`li`,{key:0,class:n({current:y.value===d.value.length&&!S.value,done:S.value})},[f[5]||=e(`span`,null,`4`,-1),e(`div`,null,[e(`strong`,null,i(a.$t(`poivelle.guide.stepMaster`)),1),e(`p`,null,i(a.$t(`poivelle.guide.stepMasterBody`)),1)]),e(`small`,null,i(S.value?a.$t(`poivelle.guide.ready`):a.$t(`poivelle.guide.waiting`)),1)],2)):s(``,!0)])]))}}),[[`__scopeId`,`data-v-86112731`]]),Or={class:`poivelle-studio`},kr={key:0,class:`error-banner`},Ar={key:1,class:`loading-state`},jr={key:2,class:`studio-body`},Mr={class:`projection-workspace`},Nr={class:`projection-content`},Pr={key:3,class:`onboarding`},Fr={key:0,class:`dry-run-summary`},Ir={class:`dry-run-note`},Lr=V(T({__name:`StudioWorkspace`,emits:[`back-home`],setup(n){let d=te(),m=v(()=>d.state.poivelle),h=v(()=>m.value?.workspaces??[]),g=v(()=>m.value?.projects??[]),b=v(()=>m.value?.graph),S=v(()=>m.value?.assets??[]),T=v(()=>m.value?.artifacts??[]),ie=v(()=>m.value?.takes??[]),ae=v(()=>m.value?.selections??[]),j=v(()=>m.value?.storyboard),oe=v(()=>m.value?.revisions??[]),se=v(()=>m.value?.proposals??[]),ce=v(()=>m.value?.runs??[]),le=v(()=>m.value?.activeRun),ue=v(()=>m.value?.evaluations??[]),de=v(()=>m.value?.forensicValidations??[]),M=v(()=>m.value?.costs),N=v(()=>m.value?.timeline),P=v(()=>m.value?.projection??`overview`),F=v(()=>m.value?.selectedNodeId),pe=v(()=>b.value?.nodes.find(e=>e.id===F.value)),I=v(()=>g.value.find(e=>e.id===m.value?.currentProjectId)),L=v(()=>[`owner`,`producer`,`director`,`editor`].includes(m.value?.currentMembership?.role??``)),he=v(()=>m.value?.dryRun),R=v(()=>m.value?.error),_e=v(()=>[m.value?.status?.bootstrap,m.value?.status?.graph].includes(ee.Request)),z=v(()=>new Set([...T.value.filter(e=>e.state===`committed`).flatMap(e=>e.node_id??[]),...ie.value.filter(e=>e.state===`ready`).map(e=>e.target_node_id)])),ve=v(()=>new Set(ae.value.map(e=>e.target_node_id))),V=v(()=>j.value?j.value.sections.flatMap(e=>e.shots.flatMap(e=>e.image_node_ids)):b.value?.nodes.filter(e=>e.node_type===`image`).map(e=>e.id)??[]),U=v(()=>j.value?j.value.sections.flatMap(e=>e.shots.flatMap(e=>e.video_node_ids)):b.value?.nodes.filter(e=>e.node_type===`video`).map(e=>e.id)??[]),xe=v(()=>V.value.length>0&&V.value.every(e=>z.value.has(e))&&V.value.some(e=>!ve.value.has(e))||U.value.length>0&&U.value.every(e=>z.value.has(e))&&U.value.some(e=>!ve.value.has(e))),G=v(()=>{let e=V.value.find(e=>!z.value.has(e));if(e)return b.value?.nodes.find(t=>t.id===e);if(V.value.some(e=>!ve.value.has(e)))return;let t=U.value.find(e=>!z.value.has(e));if(t)return b.value?.nodes.find(e=>e.id===t);if(U.value.some(e=>!ve.value.has(e)))return;let n=b.value?.nodes.find(e=>e.node_type===`audio`&&!z.value.has(e.id));if(n)return n}),Se=v(()=>G.value?.node_type===`image`?B(`poivelle.guide.generateNextFrame`):G.value?.node_type===`video`?B(`poivelle.guide.generateNextMotion`):G.value?.node_type===`audio`?B(`poivelle.guide.generateScore`):B(`poivelle.guide.continue`)),K=w(!1),we=w(!1),J=w(!1),Te=w(!1),Ee=w(!1),De=w(!1),Y=f({name:``,monthly_limit_microcredits:void 0}),X=f({workspace_id:``,title:``,workflow:`blank`,skill:`film.drama.short@1.0.0`,product_name:``,product_category:`professional action imaging device`,brand_tone:`precise, fearless, cinematic, premium`,aspect_ratio:`16:9`}),Oe=[{label:B(`poivelle.project.blankWorkflow`),value:`blank`},{label:B(`poivelle.project.commercialTVC`),value:`commercial_tvc`}],Z=f({node_type:`scene`,title:``,prompt:``}),Q=f({title:``,kind:`image`,source_url:``,content_hash:``}),ke=[`script`,`character`,`location`,`prop`,`storyboard`,`scene`,`shot`,`image`,`video`,`audio`,`subtitle`,`composition`,`output`,`note`],Ae=[`character`,`location`,`prop`,`image`,`video`,`voice`,`music`,`sfx`,`brand`],je=()=>d.dispatch(`poivelle/bootstrap`),Me=e=>d.dispatch(`poivelle/loadProject`,e),Ne=e=>d.dispatch(`poivelle/selectNode`,e),Pe=e=>d.dispatch(`poivelle/setProjection`,e),Fe=()=>{X.workspace_id=m.value?.currentWorkspaceId??h.value[0]?.id??``,J.value=!0},Ie=async()=>{Y.name.trim()&&await $(async()=>{await d.dispatch(`poivelle/createWorkspace`,{...Y,name:Y.name.trim()}),we.value=!1,Fe()})},Le=async()=>{!X.workspace_id||!X.title.trim()||await $(async()=>{X.workflow===`commercial_tvc`?(await d.dispatch(`poivelle/createCommercialTVCProject`,{workspace_id:X.workspace_id,title:X.title.trim(),product_name:X.product_name.trim()||X.title.trim(),product_category:X.product_category.trim(),brand_tone:X.brand_tone.trim(),aspect_ratio:X.aspect_ratio,managed_execution:!1}),Pe(`storyboard`)):await d.dispatch(`poivelle/createProject`,{workspace_id:X.workspace_id,title:X.title.trim(),skill:X.skill,domain:`film.drama.short`}),J.value=!1,X.title=``})},Re=async()=>{Z.title.trim()&&await $(async()=>{await d.dispatch(`poivelle/createNode`,{node_type:Z.node_type,title:Z.title.trim(),payload:{prompt:Z.prompt}}),Te.value=!1,Z.title=``,Z.prompt=``})},ze=async()=>{!m.value?.currentWorkspaceId||!Q.title||!Q.source_url||!Q.content_hash||await $(async()=>{await d.dispatch(`poivelle/importAsset`,{...Q,project_id:m.value.currentProjectId}),Ee.value=!1})},Be=e=>d.dispatch(`poivelle/updateSelectedNode`,e),Ve=async()=>{await be.confirm(B(`poivelle.node.deleteConfirm`),``,{type:`warning`}),await d.dispatch(`poivelle/deleteSelectedNode`)},He=async()=>{await d.dispatch(`poivelle/commitRevision`,`Studio checkpoint`),ne.success(B(`poivelle.revision.committed`))},Ue=async()=>{pe.value&&await $(async()=>{await d.dispatch(`poivelle/dryRun`,pe.value?.node_type===`composition`?`compose`:`generate`),De.value=!0})},We=async e=>{await Ne(e),await a(),await Ue()},Ge=async()=>{if(P.value===`overview`){G.value?await We(G.value.id):xe.value&&Pe(`storyboard`);return}pe.value&&await Ue()},Ke=async()=>{await $(async()=>{let e=await d.dispatch(`poivelle/confirmDryRun`);De.value=!1,e&&ne.success(B(`poivelle.run.queued`))})},qe=e=>{Pe(`review`),ne.info(`${B(`poivelle.agent.proposal`)} ${e.slice(-8)}`)},Je=async e=>{await be.confirm(B(`poivelle.review.rejectConfirm`),``,{type:`warning`}),await $(()=>d.dispatch(`poivelle/rejectProposal`,e))},Ye=async e=>{await be.confirm(B(`poivelle.run.cancelConfirm`),``,{type:`warning`}),await $(()=>d.dispatch(`poivelle/cancelRun`,e))},Xe=e=>$(()=>d.dispatch(`poivelle/loadRun`,e)),Ze=async e=>{await $(async()=>{await d.dispatch(`poivelle/retryStep`,e),De.value=!0})},Qe=async e=>{if(!N.value)return;let t=N.value.clips.map(e=>({...e})),n=t.filter(t=>t.track_id===e.trackId).sort((e,t)=>e.timeline_start_ms-t.timeline_start_ms),r=n.findIndex(t=>t.id===e.clipId),i=r+e.direction;if(r<0||i<0||i>=n.length)return;[n[r],n[i]]=[n[i],n[r]];let a=0;n.forEach(e=>{let t=typeof e.speed==`number`&&Number.isFinite(e.speed)&&e.speed>0?e.speed:1;e.timeline_start_ms=a,a+=(e.source_out_ms-e.source_in_ms)/t}),await $(()=>d.dispatch(`poivelle/saveTimeline`,{...N.value,clips:t}))},$e=async e=>{await $(async()=>{await d.dispatch(`poivelle/selectTake`,e),ne.success(B(`poivelle.storyboard.selectionSaved`))})},et=e=>`${(e/1e6).toFixed(2)} credits`,$=async e=>{K.value=!0;try{await e()}catch(e){ne.error(e?.response?.data?.detail?.message??e?.response?.data?.detail??e?.message??B(`poivelle.error.generic`))}finally{K.value=!1}};return u(je),(n,a)=>(C(),l(`main`,Or,[o(ht,{"project-title":I.value?.title,"graph-version":b.value?.graph_version,"can-run":L.value&&(P.value===`overview`?!!G.value||xe.value:!!pe.value),"can-edit":L.value,"primary-label":P.value===`overview`?xe.value?n.$t(`poivelle.guide.chooseResults`):Se.value:void 0,onOpenProjects:a[0]||=e=>J.value=!0,onHome:a[1]||=e=>n.$emit(`back-home`),onCommit:He,onRun:Ge},null,8,[`project-title`,`graph-version`,`can-run`,`can-edit`,`primary-label`]),R.value?(C(),l(`div`,kr,[o(c(ge),{size:15,"aria-hidden":`true`}),e(`span`,null,i(R.value),1),e(`button`,{type:`button`,onClick:je},i(n.$t(`poivelle.action.retry`)),1)])):s(``,!0),_e.value&&!b.value?(C(),l(`div`,Ar,[o(c(fe),{size:25,class:`is-spinning`,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.status.loading`)),1)])):I.value&&b.value?(C(),l(`div`,jr,[P.value===`overview`?s(``,!0):(C(),_(Pt,{key:0,projects:g.value,"current-project-id":I.value.id,assets:S.value,revisions:oe.value,"can-edit":L.value,onSelectProject:Me,onCreateProject:Fe,onImportAsset:a[2]||=e=>Ee.value=!0},null,8,[`projects`,`current-project-id`,`assets`,`revisions`,`can-edit`])),e(`section`,Mr,[o(Lt,{"model-value":P.value,"can-edit":L.value,"onUpdate:modelValue":Pe,onCreateNode:a[3]||=e=>Te.value=!0},null,8,[`model-value`,`can-edit`]),e(`div`,Nr,[P.value===`overview`?(C(),_(Dr,{key:0,"project-title":I.value.title,graph:b.value,storyboard:j.value,artifacts:T.value,takes:ie.value,selections:ae.value,"can-edit":L.value,busy:K.value,onGenerateNode:We,onOpenStoryboard:a[4]||=e=>Pe(`storyboard`)},null,8,[`project-title`,`graph`,`storyboard`,`artifacts`,`takes`,`selections`,`can-edit`,`busy`])):P.value===`canvas`?(C(),_(Gt,{key:1,graph:b.value,"selected-node-id":F.value,"can-edit":L.value,onSelectNode:Ne,onCreateNode:a[5]||=e=>Te.value=!0},null,8,[`graph`,`selected-node-id`,`can-edit`])):P.value===`storyboard`?(C(),_(mn,{key:2,graph:b.value,storyboard:j.value,artifacts:T.value,takes:ie.value,selections:ae.value,"selected-node-id":F.value,"can-edit":L.value,"can-select":L.value&&oe.value.length>0,onSelectNode:Ne,onSelectTake:$e},null,8,[`graph`,`storyboard`,`artifacts`,`takes`,`selections`,`selected-node-id`,`can-edit`,`can-select`])):P.value===`timeline`?(C(),_(In,{key:3,timeline:N.value,graph:b.value,artifacts:T.value,"can-edit":L.value,onMoveClip:Qe},null,8,[`timeline`,`graph`,`artifacts`,`can-edit`])):(C(),_(Qn,{key:4,graph:b.value,proposals:se.value,revisions:oe.value,runs:ce.value,"active-run":le.value,evaluations:ue.value,"forensic-validations":de.value,costs:M.value,"can-edit":L.value,onRejectProposal:Je,onCancelRun:Ye,onOpenRun:Xe,onRetryStep:Ze},null,8,[`graph`,`proposals`,`revisions`,`runs`,`active-run`,`evaluations`,`forensic-validations`,`costs`,`can-edit`]))]),P.value===`overview`?s(``,!0):(C(),_(mr,{key:0,proposals:se.value,"selected-node-id":F.value,skill:I.value.active_skill,"can-edit":L.value,onRun:Ue,onOpenProposal:qe},null,8,[`proposals`,`selected-node-id`,`skill`,`can-edit`]))]),L.value&&P.value===`canvas`?(C(),_(sr,{key:1,node:pe.value,onUpdate:Be,onDelete:Ve},null,8,[`node`])):s(``,!0)])):(C(),l(`section`,Pr,[a[38]||=e(`div`,{class:`onboarding-number`},`01 / STUDIO`,-1),o(c(Ce),{size:34,"stroke-width":`1.25`,"aria-hidden":`true`}),e(`h1`,null,i(n.$t(`poivelle.onboarding.title`)),1),e(`p`,null,i(n.$t(`poivelle.onboarding.body`)),1),h.value.length?L.value?(C(),l(`button`,{key:1,type:`button`,onClick:Fe},[o(c(q),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.project.create`)),1)])):s(``,!0):(C(),l(`button`,{key:0,type:`button`,onClick:a[6]||=e=>we.value=!0},[o(c(me),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.workspace.create`)),1)]))])),o(c(ye),{modelValue:we.value,"onUpdate:modelValue":a[11]||=e=>we.value=e,title:n.$t(`poivelle.workspace.create`),width:`420px`},{footer:y(()=>[o(c(H),{onClick:a[10]||=e=>we.value=!1},{default:y(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(H),{type:`primary`,loading:K.value,onClick:Ie},{default:y(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:y(()=>[o(c(k),{"label-position":`top`,onSubmit:a[9]||=t(()=>{},[`prevent`])},{default:y(()=>[o(c(O),{label:n.$t(`poivelle.workspace.name`)},{default:y(()=>[o(c(W),{modelValue:Y.name,"onUpdate:modelValue":a[7]||=e=>Y.name=e,maxlength:`120`,autofocus:``},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.workspace.budget`)},{default:y(()=>[o(c(A),{modelValue:Y.monthly_limit_microcredits,"onUpdate:modelValue":a[8]||=e=>Y.monthly_limit_microcredits=e,min:0,step:1e6},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),o(c(ye),{modelValue:J.value,"onUpdate:modelValue":a[22]||=e=>J.value=e,title:n.$t(`poivelle.project.create`),width:`460px`},{footer:y(()=>[o(c(H),{onClick:a[21]||=e=>J.value=!1},{default:y(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(H),{type:`primary`,loading:K.value,onClick:Le},{default:y(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:y(()=>[o(c(k),{"label-position":`top`,onSubmit:a[20]||=t(()=>{},[`prevent`])},{default:y(()=>[o(c(O),{label:n.$t(`poivelle.project.workspace`)},{default:y(()=>[o(c(E),{modelValue:X.workspace_id,"onUpdate:modelValue":a[12]||=e=>X.workspace_id=e,style:{width:`100%`}},{default:y(()=>[(C(!0),l(p,null,x(h.value,e=>(C(),_(c(D),{key:e.id,label:e.name,value:e.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.project.title`)},{default:y(()=>[o(c(W),{modelValue:X.title,"onUpdate:modelValue":a[13]||=e=>X.title=e,maxlength:`200`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.project.workflow`)},{default:y(()=>[o(c(re),{modelValue:X.workflow,"onUpdate:modelValue":a[14]||=e=>X.workflow=e,options:Oe,block:``},null,8,[`modelValue`])]),_:1},8,[`label`]),X.workflow===`commercial_tvc`?(C(),l(p,{key:0},[o(c(O),{label:n.$t(`poivelle.project.productName`)},{default:y(()=>[o(c(W),{modelValue:X.product_name,"onUpdate:modelValue":a[15]||=e=>X.product_name=e,maxlength:`120`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.project.productCategory`)},{default:y(()=>[o(c(W),{modelValue:X.product_category,"onUpdate:modelValue":a[16]||=e=>X.product_category=e,maxlength:`180`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.project.brandTone`)},{default:y(()=>[o(c(W),{modelValue:X.brand_tone,"onUpdate:modelValue":a[17]||=e=>X.brand_tone=e,type:`textarea`,rows:2,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.project.aspectRatio`)},{default:y(()=>[o(c(re),{modelValue:X.aspect_ratio,"onUpdate:modelValue":a[18]||=e=>X.aspect_ratio=e,options:[`16:9`,`9:16`,`1:1`]},null,8,[`modelValue`])]),_:1},8,[`label`])],64)):s(``,!0),o(c(O),{label:n.$t(`poivelle.project.skill`)},{default:y(()=>[X.workflow===`blank`?(C(),_(c(E),{key:0,modelValue:X.skill,"onUpdate:modelValue":a[19]||=e=>X.skill=e,style:{width:`100%`}},{default:y(()=>[o(c(D),{label:`Short drama · professional`,value:`film.drama.short@1.0.0`}),o(c(D),{label:`Commercial film · professional`,value:`film.commercial@1.0.0`}),o(c(D),{label:`Music video · professional`,value:`film.music-video@1.0.0`})]),_:1},8,[`modelValue`])):s(``,!0)]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),o(c(ye),{modelValue:Te.value,"onUpdate:modelValue":a[28]||=e=>Te.value=e,title:n.$t(`poivelle.node.create`),width:`460px`},{footer:y(()=>[o(c(H),{onClick:a[27]||=e=>Te.value=!1},{default:y(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(H),{type:`primary`,loading:K.value,onClick:Re},{default:y(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:y(()=>[o(c(k),{"label-position":`top`,onSubmit:a[26]||=t(()=>{},[`prevent`])},{default:y(()=>[o(c(O),{label:n.$t(`poivelle.field.type`)},{default:y(()=>[o(c(E),{modelValue:Z.node_type,"onUpdate:modelValue":a[23]||=e=>Z.node_type=e,style:{width:`100%`}},{default:y(()=>[(C(),l(p,null,x(ke,e=>o(c(D),{key:e,label:e,value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.field.title`)},{default:y(()=>[o(c(W),{modelValue:Z.title,"onUpdate:modelValue":a[24]||=e=>Z.title=e,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.field.prompt`)},{default:y(()=>[o(c(W),{modelValue:Z.prompt,"onUpdate:modelValue":a[25]||=e=>Z.prompt=e,type:`textarea`,rows:5},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),o(c(ye),{modelValue:Ee.value,"onUpdate:modelValue":a[35]||=e=>Ee.value=e,title:n.$t(`poivelle.asset.import`),width:`500px`},{footer:y(()=>[o(c(H),{onClick:a[34]||=e=>Ee.value=!1},{default:y(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(H),{type:`primary`,loading:K.value,onClick:ze},{default:y(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:y(()=>[o(c(k),{"label-position":`top`,onSubmit:a[33]||=t(()=>{},[`prevent`])},{default:y(()=>[o(c(O),{label:n.$t(`poivelle.asset.title`)},{default:y(()=>[o(c(W),{modelValue:Q.title,"onUpdate:modelValue":a[29]||=e=>Q.title=e,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.field.type`)},{default:y(()=>[o(c(E),{modelValue:Q.kind,"onUpdate:modelValue":a[30]||=e=>Q.kind=e,style:{width:`100%`}},{default:y(()=>[(C(),l(p,null,x(Ae,e=>o(c(D),{key:e,label:e,value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.asset.url`)},{default:y(()=>[o(c(W),{modelValue:Q.source_url,"onUpdate:modelValue":a[31]||=e=>Q.source_url=e},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.asset.hash`)},{default:y(()=>[o(c(W),{modelValue:Q.content_hash,"onUpdate:modelValue":a[32]||=e=>Q.content_hash=e,placeholder:`sha256:...`},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),o(c(ye),{modelValue:De.value,"onUpdate:modelValue":a[37]||=e=>De.value=e,title:n.$t(`poivelle.run.confirmTitle`),width:`520px`},{footer:y(()=>[o(c(H),{onClick:a[36]||=e=>De.value=!1},{default:y(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(H),{type:`primary`,loading:K.value,onClick:Ke},{default:y(()=>[r(i(n.$t(`poivelle.run.confirm`)),1)]),_:1},8,[`loading`])]),default:y(()=>[he.value?(C(),l(`div`,Fr,[e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.targets`)),1),e(`strong`,null,i(he.value.dependency_closure.length),1)]),e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.maximum`)),1),e(`strong`,null,i(et(he.value.max_cost_microcredits)),1)]),e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.approval`)),1),e(`strong`,null,i(he.value.required_approval),1)])])):s(``,!0),e(`p`,Ir,i(n.$t(`poivelle.run.confirmBody`)),1)]),_:1},8,[`modelValue`,`title`])]))}}),[[`__scopeId`,`data-v-1b367de3`]]),Rr=T({__name:`Index`,setup(e){let t=w(`discovery`);return(e,n)=>t.value===`discovery`?(C(),_(ot,{key:0,onOpenStudio:n[0]||=e=>t.value=`studio`})):(C(),_(Lr,{key:1,onBackHome:n[1]||=e=>t.value=`discovery`}))}});export{Rr as default};
@@ -1 +0,0 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,S as c,T as l,at as u,ht as d,it as f,j as p,mt as m,qt as h,rt as g,tt as _,x as v,z as y}from"./vendor-chart-Dw-P17PN.js";import{r as b,t as x}from"./select-CxPN3D9u.js";import{t as S}from"./upload-Sju4DbiY.js";import{t as C}from"./tooltip-B60Iasgv.js";import{t as w}from"./alert-BprQRUmf.js";import{_ as T,v as E}from"./vuex.esm-bundler-BV9tXD4i.js";import{t as D}from"./drawer-CvX2U8ly.js";import{t as O}from"./box-CGOU4lJt.js";import{t as k}from"./clock-BRqsgYwQ.js";import{t as A}from"./external-link-BZpZYYUS.js";import{t as j}from"./hash-CRnccwx_.js";import{t as M}from"./image-2jgf6twa.js";import{t as N}from"./info-Bqj02p3r.js";import{a as P,i as F,n as I,r as L,t as ee}from"./pagination-VjpfotZ8.js";import{t as te}from"./trash-2-BBCXfu0p.js";import{t as ne}from"./triangle-alert-BRov4JmE.js";import{t as re}from"./upload-D3ICVrNB.js";import{t as R}from"./wand-sparkles-D8Xtkkgr.js";import{t as z}from"./zap-D2PJQZbU.js";import{$a as ie,Ua as B,_r as V,gr as ae,hr as oe,pr as se,vr as H,yr as ce}from"./constants-GmVIn7tC.js";import{D as U,Mi as W,Na as G,Pi as K,Qa as q,Qn as J,T as le,Tn as ue,at as de,ct as fe,lt as pe,oi as me,ot as he,qi as ge,ri as _e,st as ve,ta as Y,tt as ye,za as X}from"./index-BYbC-2BV.js";import{t as be}from"./CopyToClipboard-BQaEPLyt.js";import{t as xe}from"./ReportButton-BAx8pia_.js";import{t as Z}from"./ImagePreview-Dm16d0L7.js";import{n as Se}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Ce}from"./ServicePricingSummary-DPzfamaB.js";import{t as we}from"./ScenarioPaymentMode-C2uR8lvu.js";import{t as Te}from"./ApiCodeButton-CAQzrT4K.js";import{t as Ee}from"./BotPlaceholder-BlCUdjzq.js";import{t as De}from"./taskPollingMixin-CcLxtz8z.js";import{t as Oe}from"./ShowcaseResultTabs-DEfMzemw.js";import{t as ke}from"./showcaseRecreateMixin-BEyu8Djp.js";import{t as Ae}from"./ImageWrapper-KvH_Kyox.js";import{t as Q}from"./imageRequests-BaQ60xKB.js";var je=y({name:`LayoutNanobanana`,components:{MagicIcon:R,ElDrawer:D,ElButton:q},mixins:[Se]}),Me={class:`main flex flex-row flex-1`},Ne={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)]`},Pe={class:`result h-full p-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Fe(t,n,r,i,o,c){let l=u(`magic-icon`),p=u(`el-button`),h=u(`el-drawer`);return _(),s(`div`,Me,[e(`div`,Ne,[f(t.$slots,`config`,{},void 0,!0)]),e(`div`,Pe,[f(t.$slots,`result`,{},void 0,!0)]),d(a(p,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:m(()=>[a(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[v,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer generator-drawer`},{default:m(()=>[f(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Ie=U(je,[[`render`,Fe],[`__scopeId`,`data-v-6f553b1e`]]),Le=y({name:`PromptInput`,components:{PromptTextarea:F},computed:{prompt:{get(){return this.$store.state.nanobanana?.config?.prompt},set(e){this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Re(e,t,n,r,i,a){let o=u(`prompt-textarea`);return _(),p(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`nanobanana.name.prompt`),info:e.$t(`nanobanana.description.prompt`),placeholder:e.$t(`nanobanana.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var ze=U(Le,[[`render`,Re]]),Be=y({name:`ImageUrlsInput`,components:{UploadIcon:re,ElUpload:S,ElButton:q,InfoIcon:P,ImagePreview:Z},mixins:[pe,fe,he,ye],data(){return{fileList:[],uploadUrl:G()+`/api/v1/files/`,suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.nanobanana?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),this.fileList=t}}},mounted(){},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url==`string`&&e.url.startsWith(`blob:`))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImageUrls()},onExceed(){E.warning(this.$t(`nanobanana.message.uploadImageExceed`))},onError(){E.error(this.$t(`nanobanana.message.uploadImageError`))},onSetImageUrls(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,image_urls:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImageUrls()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url==`string`&&t.url.startsWith(`blob:`))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImageUrls()}}}),Ve={class:`field mb-[10px] flex min-h-8 w-full items-center justify-between gap-3`},He={class:`flex min-w-0 items-center`},Ue={class:`title m-0 text-[14px] font-bold`},We={class:`file-list flex flex-wrap gap-[10px]`};function Ge(t,n,o,c,d,f){let h=u(`info-icon`),v=u(`upload-icon`),y=u(`el-button`),b=u(`el-upload`),x=u(`image-preview`);return _(),s(`div`,null,[e(`div`,Ve,[e(`div`,He,[e(`h2`,Ue,i(t.$t(`nanobanana.name.imageUrls`)),1),a(h,{content:t.$t(`nanobanana.description.imageUrls`)},null,8,[`content`])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:5,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-change":t.onChange,"on-remove":t.onRemove,headers:t.headers},{default:m(()=>[a(y,{size:`small`,type:`primary`,round:``},{default:m(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`nanobanana.button.uploadImageUrls`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])]),e(`div`,We,[(_(!0),s(l,null,g(t.fileList,(e,n)=>(_(),p(x,{key:e.uid||e?.response?.file_url||e.url||n,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:r=>t.onRemovePreview(n,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])])}var Ke=U(Be,[[`render`,Ge]]),qe=y({name:`AspectRatioSelector`,components:{InfoIcon:P},data(){return{options:[{value:`1:1`,label:`1:1`,width:20,height:20},{value:`3:2`,label:`3:2`,width:27,height:18},{value:`2:3`,label:`2:3`,width:18,height:27},{value:`16:9`,label:`16:9`,width:25,height:13},{value:`9:16`,label:`9:16`,width:13,height:25},{value:`4:3`,label:`4:3`,width:24,height:18},{value:`3:4`,label:`3:4`,width:18,height:24}]}},computed:{value(){return this.$store.state.nanobanana?.config?.aspect_ratio}},methods:{onSelect(e){let t=this.value===e?void 0:e,n={...this.$store.state.nanobanana?.config||{}};t?n.aspect_ratio=t:delete n.aspect_ratio,this.$store.commit(`nanobanana/setConfig`,n)}}}),Je={class:`ratio`},Ye={class:`header`},Xe={class:`title font-bold`},Ze=[`aria-label`],Qe=[`aria-checked`,`aria-label`,`onClick`,`onKeydown`],$e={class:`preview`},et={class:`name`};function tt(r,o,d,f,p,m){let v=u(`info-icon`);return _(),s(`div`,Je,[e(`div`,Ye,[e(`h2`,Xe,i(r.$t(`nanobanana.name.aspectRatio`)),1),a(v,{content:r.$t(`nanobanana.description.aspectRatio`),class:`ml-1`},null,8,[`content`])]),e(`div`,{class:`items`,role:`radiogroup`,"aria-label":r.$t(`nanobanana.name.aspectRatio`)},[(_(!0),s(l,null,g(r.options,a=>(_(),s(`div`,{key:a.value,class:n([`item`,{active:r.value===a.value}]),role:`radio`,"aria-checked":r.value===a.value,"aria-label":a.label,tabindex:`0`,onClick:e=>r.onSelect(a.value),onKeydown:[c(t(e=>r.onSelect(a.value),[`prevent`]),[`enter`]),c(t(e=>r.onSelect(a.value),[`prevent`]),[`space`])]},[e(`div`,$e,[e(`div`,{class:`rect`,style:h({width:a.width+`px`,height:a.height+`px`})},null,4)]),e(`p`,et,i(a.label),1)],42,Qe))),128))],8,Ze)])}var nt=U(qe,[[`render`,tt],[`__scopeId`,`data-v-7131eb97`]]),rt=y({name:`NanobananaModelSelector`,components:{ElSelect:b,ElOption:x,InfoIcon:P},data(){return{options:[{value:oe,label:this.$t(`nanobanana.model.nanoBanana`)},{value:H,label:H},{value:ce,label:this.$t(`nanobanana.model.nanoBananaPro`)},{value:ae,label:this.$t(`nanobanana.model.nanoBanana2`)},{value:V,label:V}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.model},set(e){this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,model:e})}},modelDescription(){return this.$t(`nanobanana.description.model`)}},mounted(){this.value||=se}}),it={class:`field`},at={class:`label`},ot={class:`box`},st={class:`title font-bold`};function ct(t,n,r,o,c,d){let f=u(`info-icon`),h=u(`el-option`),v=u(`el-select`);return _(),s(`div`,it,[e(`div`,at,[e(`div`,ot,[e(`h2`,st,i(t.$t(`nanobanana.name.model`)),1),a(f,{content:t.modelDescription,class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`nanobanana.placeholder.select`)},{default:m(()=>[(_(!0),s(l,null,g(t.options,e=>(_(),p(h,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var lt=U(rt,[[`render`,ct],[`__scopeId`,`data-v-a04056e6`]]),ut=y({name:`NanobananaResolutionSelector`,components:{ElSelect:b,ElOption:x,InfoIcon:P},data(){return{cachedResolution:`1K`,options:[{value:`1K`,label:`1K`},{value:`2K`,label:`2K`},{value:`4K`,label:`4K`}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.resolution},set(e){this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,resolution:e})}},supportsResolution(){let e=this.$store.state.nanobanana?.config?.model;return e===`nano-banana-2`||e===`nano-banana-2.1`||e===`nano-banana-pro`}},watch:{value(e){this.supportsResolution&&e&&(this.cachedResolution=e)},supportsResolution(e){e?this.value||=this.cachedResolution||`1K`:(this.value&&(this.cachedResolution=this.value),this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,resolution:void 0}))}},mounted(){this.supportsResolution&&!this.value&&(this.value=`1K`),!this.supportsResolution&&this.value&&(this.cachedResolution=this.value,this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,resolution:void 0}))}}),dt={class:`field`},ft={class:`label`},pt={class:`box`},mt={class:`title font-bold`};function ht(t,n,r,o,c,d){let f=u(`info-icon`),h=u(`el-option`),v=u(`el-select`);return _(),s(`div`,dt,[e(`div`,ft,[e(`div`,pt,[e(`h2`,mt,i(t.$t(`nanobanana.name.resolution`)),1),a(f,{content:t.$t(`nanobanana.description.resolutionProOnly`),class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`nanobanana.placeholder.select`),disabled:!t.supportsResolution},{default:m(()=>[(_(!0),s(l,null,g(t.options,e=>(_(),p(h,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])])}var gt=U(ut,[[`render`,ht],[`__scopeId`,`data-v-6246047b`]]),_t=350,vt=y({name:`ConfigPanel`,components:{MagicIcon:R,ElButton:q,PromptInput:ze,ServicePricingSummary:Ce,ImageUrlsInput:Ke,AspectRatioSelector:nt,ModelSelector:lt,ResolutionSelector:gt,ScenarioPaymentMode:we},props:{identityToken:{type:String,default:void 0}},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.nanobanana?.config},canGenerate(){return B(this.config?.prompt)},consumption(){let e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;return ue({...e,action:t?`edit`:`generate`},this.service?.cost)},service(){return this.$store.state.nanobanana?.service},walletMode(){return W()&&K(`nanobanana`).mode===`wallet`}},watch:{walletMode:{handler(e){e?this.scheduleQuote():this.clearQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0},identityToken(){this.walletMode&&this.scheduleQuote()}},beforeUnmount(){this.clearQuote()},methods:{clearQuote(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1;let e=K(`nanobanana`);e.quoteUsdc=void 0,e.quoteLoading=!1},scheduleQuote(){this.clearQuote(),!(!this.walletMode||!this.canGenerate)&&(this.quoteTimer=window.setTimeout(this.refreshQuote,_t))},async refreshQuote(){if(!this.walletMode||!this.canGenerate){this.clearQuote();return}let e=K(`nanobanana`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await J.quote(Q(this.config),this.identityToken);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`)}}}),yt={class:`flex flex-col h-full`},bt={class:`flex-1 overflow-y-auto p-5`},xt={class:`flex flex-col items-center justify-center px-5 pb-5`};function St(t,n,c,l,d,f){let h=u(`model-selector`),g=u(`resolution-selector`),v=u(`prompt-input`),y=u(`aspect-ratio-selector`),b=u(`image-urls-input`),x=u(`scenario-payment-mode`),S=u(`service-pricing-summary`),C=u(`magic-icon`),w=u(`el-button`);return _(),s(`div`,yt,[e(`div`,bt,[a(h,{class:`mb-4`}),a(g,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),a(b,{class:`mb-4`})]),e(`div`,xt,[a(x,{scenario:`nanobanana`}),t.walletMode?o(``,!0):(_(),p(S,{key:0,value:t.consumption,service:t.service,"pricing-unit-aliases":{count:`image`}},null,8,[`value`,`service`])),a(w,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:m(()=>[a(C,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`nanobanana.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var Ct=U(vt,[[`render`,St]]),wt=y({name:`TaskPreview`,components:{ApplicationIcon:O,ChannelIcon:j,DeleteIcon:te,ExternalLinkIcon:A,ImageIcon:M,InfoIcon:N,LightningIcon:z,MagicIcon:R,TimeIcon:k,WarningIcon:ne,CopyToClipboard:be,ElAlert:w,ImageWrapper:Ae,ElButton:q,ElTooltip:C,ImagePreview:Z,ApiCodeButton:Te,ReportButton:xe},props:{modelValue:{type:Object,required:!0}},computed:{images(){let e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e},hasImages(){return this.images.some(e=>!!e?.image_url)},isFailure(){let e=this.modelValue?.response;return e?.success===!1||!!e?.error},showResult(){let e=this.modelValue?.response;return!e||this.isFailure?!1:(e.success,this.hasImages)},reportSnapshot(){return{prompt:this.modelValue?.request?.prompt,image_urls:this.images.map(e=>e.image_url).filter(Boolean),model:this.modelValue?.request?.model,action:this.modelValue?.request?.action,task_id:this.modelValue?.id,trace_id:this.modelValue?.response?.trace_id}}},methods:{onEdit(e){if(!e)return;console.debug(`Edit image:`,e);let t={...this.$store.state.nanobanana?.config||{}};delete t.action,t.image_urls=[e],this.$store.commit(`nanobanana/setConfig`,t)},async onDelete(){let e=this.modelValue?.id;if(e){try{await X.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`nanobanana/deleteTask`,{id:e}),E.success(this.$t(`common.message.deleteTaskSuccess`))}catch{E.error(this.$t(`common.message.deleteTaskFailed`))}}}}}),Tt={class:`preview`},Et={class:`left`},Dt={class:`main`},Ot={class:`bot`},kt={class:`datetime`},At=[`aria-label`],jt={class:`info`},Mt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},Nt={key:1,class:`prompt mt-2`},Pt={key:0},Ft={key:0,class:n({content:!0,failed:!0})},It={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},Lt={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},Rt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},zt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Bt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ht={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ut={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Wt={key:5,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Gt={key:1,class:n({content:!0})},Kt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},qt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Jt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Yt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Xt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Zt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Qt={key:5,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},$t={key:2,class:n({content:!0})},en={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},tn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},nn={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},rn={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},an={class:`text-[var(--el-text-color-regular)] text-xs mb-2`};function on(n,c,d,f,h,v){let y=u(`capability-presentation`),b=u(`delete-icon`),x=u(`el-tooltip`),S=u(`image-preview`),C=u(`image-wrapper`),w=u(`el-button`),T=u(`api-code-button`),E=u(`report-button`),D=u(`application-icon`),O=u(`image-icon`),k=u(`external-link-icon`),A=u(`lightning-icon`),j=u(`magic-icon`),M=u(`copy-to-clipboard`),N=u(`time-icon`),P=u(`channel-icon`),F=u(`el-alert`),I=u(`warning-icon`),L=u(`info-icon`);return _(),s(`div`,Tt,[e(`div`,Et,[a(y,{capability:`nanobanana`,part:`avatar`,class:`avatar`})]),e(`div`,Dt,[e(`div`,Ot,[a(y,{capability:`nanobanana`,part:`name`}),e(`span`,kt,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(x,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:m(()=>[n.modelValue?.id?(_(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,At)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,jt,[n.modelValue?.request?.image_urls&&n.modelValue?.request?.image_urls.length>0?(_(),s(`div`,Mt,[(_(!0),s(l,null,g(n.modelValue?.request?.image_urls,(e,t)=>(_(),p(S,{key:t,url:e,name:`image-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):o(``,!0),n.modelValue?.request?.prompt?(_(),s(`p`,Nt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(_(),s(`span`,Pt,` - (`+i(n.$t(`nanobanana.status.pending`))+`) `,1))])):o(``,!0)]),n.showResult?(_(),s(`div`,Ft,[e(`div`,It,[(_(!0),s(l,null,g(n.images,(e,t)=>(_(),p(C,{key:t,src:e?.image_url,"raw-src":e?.image_url},null,8,[`src`,`raw-src`]))),128))]),e(`div`,Lt,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`common.button.edit`),placement:`top-start`},{default:m(()=>[a(w,{type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=t(e=>n.onEdit(n.images?.[0]?.image_url),[`stop`])},{default:m(()=>[r(i(n.$t(`common.button.edit`)),1)]),_:1})]),_:1},8,[`content`]),a(T,{path:`/nano-banana/images`,body:n.modelValue?.request},null,8,[`body`]),a(E,{service:`nanobanana`,"target-id":n.modelValue?.id,snapshot:n.reportSnapshot,"show-label":``},null,8,[`target-id`,`snapshot`])]),a(F,{closable:!1,class:`mt-2 success`},{default:m(()=>[n.modelValue?.request?.model?(_(),s(`p`,Rt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(_(),s(`p`,zt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.resolution`))+`: `+i(n.modelValue?.request?.resolution),1)])):o(``,!0),n.modelValue?.request?.aspect_ratio?(_(),s(`p`,Bt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.aspectRatio`))+`: `+i(n.modelValue?.request?.aspect_ratio),1)])):o(``,!0),n.modelValue?.request?.action?(_(),s(`p`,Vt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.task`))+`: `+i(n.modelValue?.request?.action===`generate`?n.$t(`nanobanana.name.generate`):n.$t(`nanobanana.name.edits`)),1)])):o(``,!0),e(`p`,Ht,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(M,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(_(),s(`p`,Ut,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(_(),s(`p`,Wt,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(M,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.isFailure?(_(),s(`div`,Gt,[a(F,{closable:!1,class:`failure`},{template:m(()=>[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.failure`)),1)]),default:m(()=>[n.modelValue?.request?.model?(_(),s(`p`,Kt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(_(),s(`p`,qt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.resolution`))+`: `+i(n.modelValue?.request?.resolution),1)])):o(``,!0),n.modelValue?.request?.aspect_ratio?(_(),s(`p`,$,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.aspectRatio`))+`: `+i(n.modelValue?.request?.aspect_ratio),1)])):o(``,!0),n.modelValue?.request?.action?(_(),s(`p`,Jt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.task`))+`: `+i(n.modelValue?.request?.action===`generate`?n.$t(`nanobanana.name.generate`):n.$t(`nanobanana.name.edits`)),1)])):o(``,!0),e(`p`,Yt,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(M,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,Xt,[a(L,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(M,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(_(),s(`p`,Zt,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(_(),s(`p`,Qt,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(M,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):o(``,!0)]),_:1})])):(_(),s(`div`,$t,[a(F,{closable:!1,class:`info`},{template:m(()=>[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.status.pending`)),1)]),default:m(()=>[n.modelValue?.request?.model?(_(),s(`p`,en,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(_(),s(`p`,tn,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.resolution`))+`: `+i(n.modelValue?.request?.resolution),1)])):o(``,!0),n.modelValue?.request?.aspect_ratio?(_(),s(`p`,nn,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.aspectRatio`))+`: `+i(n.modelValue?.request?.aspect_ratio),1)])):o(``,!0),n.modelValue?.request?.action?(_(),s(`p`,rn,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.task`))+`: `+i(n.modelValue?.request?.action===`generate`?n.$t(`nanobanana.name.generate`):n.$t(`nanobanana.name.edits`)),1)])):o(``,!0),e(`p`,an,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(M,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var sn=y({name:`RecentPanel`,components:{TaskPreview:U(wt,[[`render`,on],[`__scopeId`,`data-v-aa642ec8`]]),BotPlaceholder:Ee,NoTasks:L,ScrollList:I},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.nanobanana?.tasks,items:this.$store.state.nanobanana?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),cn={key:0},ln={key:2,class:`w-full h-full flex items-center justify-center`};function un(e,t,n,r,i,c){let d=u(`bot-placeholder`),f=u(`task-preview`),h=u(`scroll-list`),v=u(`no-tasks`);return _(),s(l,null,[e.tasks?.items===void 0?(_(),s(`div`,cn,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(_(),p(h,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:m(()=>[(_(!0),s(l,null,g(e.tasks?.items,e=>(_(),p(f,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(_(),s(`div`,ln,[a(v)])):o(``,!0)],64)}var dn=y({name:`NanobananaIndex`,components:{ConfigPanel:Ct,Layout:Ie,RecentPanel:U(sn,[[`render`,un]]),ShowcaseResultTabs:Oe},mixins:[ve,ke(`nanobanana`),De(`nanobanana`)],inject:[`initialized`],data(){return{task:void 0,job:0,loading:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.nanobanana?.status?.getApplications===T.Request},tasksLoading(){return this.$store.state.nanobanana?.status?.getTasks===T.Request},credential(){return this.$store.state.nanobanana?.credential},config(){return this.$store.state.nanobanana?.config},application(){return this.$store.state.nanobanana?.application},tasks(){return this.$store.state.nanobanana?.tasks},walletMode(){return W()&&K(`nanobanana`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){t===void 0||e===t||(this.$store.commit(`nanobanana/setTasks`,void 0),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 ee({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`nanobanana/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`nanobanana/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug(`loading`);return}let{limit:t=20,createdAtMin:n,createdAtMax:r}=e||{};await this.$store.dispatch(`nanobanana/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})},async onGenerate(){if(ie()&&!Y())return;if(!B(this.config?.prompt)){E.error(this.$t(`common.message.promptRequired`));return}if(!de(this.uploadTracker,e=>this.$t(e),e=>E.warning(e)))return;let e=Q(this.config),t;if(this.walletMode){let n=this.getWalletContext();if(!n){E.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=J.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!Y())return;let n=this.credential?.token;if(!n){console.error(`no token specified`);return}t=J.generate(e,{token:n})}E.info(this.$t(`nanobanana.message.startingTask`)),ge(`nanobanana`,t).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),E.success(this.$t(`nanobanana.message.startTaskSuccess`))}).catch(e=>{if(e instanceof _e)return;let t=e?.response?.data;le(e,`nanobanana`)||(this.walletMode?E.error(this.$t(`common.x402Scenario.paymentFailed`)):E.error(this.$t(`nanobanana.message.startTaskFailed`)+(t?.error?.message||``)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return me(this.$wallet)},async confirmWalletPayment(e){return X.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 fn(e,t,n,r,i,o){let s=u(`config-panel`),c=u(`recent-panel`),l=u(`showcase-result-tabs`),d=u(`layout`);return _(),p(d,null,{config:m(()=>[a(s,{"identity-token":e.credential?.token,onGenerate:e.onGenerate},null,8,[`identity-token`,`onGenerate`])]),result:m(()=>[a(l,{service:`nano-banana`},{tasks:m(()=>[a(c,{ref:`recentPanel`,loading:e.loading,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})]),_:1})}var pn=U(dn,[[`render`,fn]]);export{pn as default};
@@ -1 +0,0 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,I as n,Jt as r,L as i,M as a,N as o,S as s,T as c,at as l,ht as u,it as d,j as f,mt as p,ot as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{F as y}from"./icon-CDmWyIgD.js";import{r as b,t as x}from"./select-CxPN3D9u.js";import{n as S,t as C}from"./tabs-8Um-YKWZ.js";import{t as w}from"./upload-Sju4DbiY.js";import{t as T}from"./tooltip-B60Iasgv.js";import{t as E}from"./alert-BprQRUmf.js";import{_ as D,v as O}from"./vuex.esm-bundler-BV9tXD4i.js";import{t as k}from"./avatar-DEN_WCPo.js";import{n as A,r as j}from"./radio-BNhFzeBO.js";import{n as M,t as N}from"./collapse-Dwaru9dv.js";import{t as ee}from"./drawer-CvX2U8ly.js";import{n as P,r as F,t as I}from"./dropdown-XCwzKYm5.js";import{t as L}from"./input-number-BecdXhq4.js";import{n as te,t as ne}from"./skeleton-Dj_a_iIP.js";import{t as re}from"./slider-DNzVAHfq.js";import{t as ie}from"./switch-CpihU-Bq.js";import{i as ae,n as oe,r as R,t as se}from"./Player-DpnDR3pi.js";import{t as ce}from"./code-DoM9goq2.js";import{t as le}from"./download-BCOklSE_.js";import{t as ue}from"./ellipsis-DPB3bXTW.js";import{t as de}from"./hash-CRnccwx_.js";import{t as fe}from"./image-2jgf6twa.js";import{t as pe}from"./info-Bqj02p3r.js";import{t as me}from"./loader-circle-BBOOwaos.js";import{a as z,i as he,n as ge,r as _e,t as ve}from"./pagination-VjpfotZ8.js";import{t as B}from"./pause-B7eeiCnH.js";import{t as V}from"./play-D8gxtxAY.js";import{t as ye}from"./triangle-alert-BRov4JmE.js";import{t as be}from"./upload-D3ICVrNB.js";import{t as H}from"./wand-sparkles-D8Xtkkgr.js";import{Ka as xe,xr as Se}from"./constants-GmVIn7tC.js";import{$n as U,D as W,Ha as G,Mi as K,Na as Ce,Pi as q,Qa as J,Tn as we,Ui as Te,at as Ee,ct as De,er as Y,oi as X,oo as Z,ot as Oe,qi as ke,ri as Q,st as Ae,ta as je,tt as Me,za as $}from"./index-BYbC-2BV.js";import{t as Ne}from"./CopyToClipboard-BQaEPLyt.js";import{t as Pe}from"./ReportDialog-CE_HdnOJ.js";import{n as Fe}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Ie}from"./ServicePricingSummary-DPzfamaB.js";import{t as Le}from"./ScenarioPaymentMode-C2uR8lvu.js";import{t as Re}from"./ApiCodeDialog-LvzBskrJ.js";import{t as ze}from"./taskPollingMixin-CcLxtz8z.js";import{t as Be}from"./showcaseRecreateMixin-BEyu8Djp.js";import{n as Ve,t as He}from"./generationInput--J_4Niw5.js";var Ue=v({name:`LayoutProducer`,components:{MagicIcon:H,ElDrawer:ee,ElButton:J},mixins:[Fe],data(){return{preview:!1}},computed:{}}),We={class:`main flex flex-row flex-1`},Ge={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)]`},Ke={class:`result h-full flex flex-col flex-1 min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`},qe={class:`preview h-full w-[300px] flex flex-col`};function Je(t,n,r,a,s,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),o(`div`,We,[e(`div`,Ge,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ke,[d(t.$slots,`result`,{},void 0,!0)]),e(`div`,qe,[d(t.$slots,`preview`,{},void 0,!0)]),u(i(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(()=>[i(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[_,!t.tasksEmpty]]),i(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Ye=W(Ue,[[`render`,Je],[`__scopeId`,`data-v-6461643a`]]),Xe=v({name:`TypeSelector`,components:{ElSelect:b,ElOption:x,ElSwitch:ie,InfoIcon:z},data(){return{options:[{label:`FUZZ-2.0 Pro`,value:`FUZZ-2.0 Pro`,desc:this.$t(`producer.model.fuzz20proDesc`)},{label:`FUZZ-2.0`,value:`FUZZ-2.0`,desc:this.$t(`producer.model.fuzz20desc`)},{label:`FUZZ-2.0 Raw`,value:`FUZZ-2.0 Raw`,desc:this.$t(`producer.model.fuzz20rawDesc`)},{label:`FUZZ-1.1 Pro`,value:`FUZZ-1.1 Pro`,desc:this.$t(`producer.model.fuzz11proDesc`)},{label:`FUZZ-1.1`,value:`FUZZ-1.1`,desc:this.$t(`producer.model.fuzz11desc`)},{label:`FUZZ-1.0 Pro`,value:`FUZZ-1.0 Pro`,desc:this.$t(`producer.model.fuzz10proDesc`)},{label:`FUZZ-1.0`,value:`FUZZ-1.0`,desc:this.$t(`producer.model.fuzz10desc`)},{label:`FUZZ-0.8`,value:`FUZZ-0.8`,desc:this.$t(`producer.model.fuzz08desc`)}]}},computed:{custom:{get(){return this.$store.state.producer?.config?.custom||!1},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,custom:e})}},instrumental:{get(){return this.$store.state.producer?.config?.instrumental||!1},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,instrumental:e})}},model:{get(){return this.$store.state.producer?.config?.model},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,model:e})}}},mounted(){this.model||=Se}}),Ze={class:`mb-3`},Qe={class:`flex items-center mb-1`},$e={class:`text-sm font-bold`},et={class:`model-option`},tt={class:`model-option-name`},nt={class:`model-option-desc`},rt={key:0,class:`flex items-center justify-between mb-3`},it={class:`flex items-center`},at={class:`text-sm font-bold`};function ot(t,n,s,u,d,m){let _=l(`el-option`),v=l(`el-select`),y=l(`info-icon`),b=l(`el-switch`);return g(),o(`div`,null,[e(`div`,Ze,[e(`div`,Qe,[e(`span`,$e,r(t.$t(`producer.name.model`)),1)]),i(v,{modelValue:t.model,"onUpdate:modelValue":n[0]||=e=>t.model=e,class:`w-full model-select`,size:`default`,placeholder:t.$t(`producer.placeholder.select`)},{default:p(()=>[(g(!0),o(c,null,h(t.options,t=>(g(),f(_,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`div`,et,[e(`span`,tt,r(t.label),1),e(`span`,nt,r(t.desc),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])]),t.custom?(g(),o(`div`,rt,[e(`div`,it,[e(`span`,at,r(t.$t(`producer.name.instrumental`)),1),i(y,{content:t.$t(`producer.description.instrumental`)},null,8,[`content`])]),i(b,{modelValue:t.instrumental,"onUpdate:modelValue":n[1]||=e=>t.instrumental=e},null,8,[`modelValue`])])):a(``,!0)])}var st=W(Xe,[[`render`,ot],[`__scopeId`,`data-v-42496b9a`]]),ct=v({name:`UploadAudio`,components:{UploadIcon:be,ElUpload:w,ElButton:J,ElRadioGroup:j,ElRadioButton:A,InfoIcon:z},mixins:[De,Oe,Me],emits:[`change`],data(){return{fileList:[],uploadUrl:Ce()+`/api/v1/files/`,audioPreviewUrl:null,uploading:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},credential(){return this.$store.state.producer.credential},config(){return this.$store.state.producer.config},urls(){return this.fileList.map(e=>e?.response?.file_url)},hasUploadedAudio(){let e=this.$store.state.producer?.config?.action;return e===`upload_extend`||e===`upload_cover`},uploadAction:{get(){return this.$store.state.producer?.config?.action||`upload_extend`},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,action:e})}}},watch:{urls:{handler(e){this.$emit(`change`,e)}}},methods:{onExceed(){O.warning(this.$t(`producer.message.uploadReferencesExceed`))},onError(){this.uploading=!1,O.error(this.$t(`producer.message.uploadReferencesError`))},async onSuccess(){let e=this.urls?.[0];if(!e){this.uploading=!1;return}this.audioPreviewUrl=e,await this.onGenerateAudioId(e)},async onGenerateAudioId(e){let t={audio_url:e},n=this.credential?.token;if(!n){console.error(`no token specified`),this.uploading=!1;return}this.uploading=!0,O.info(this.$t(`producer.message.startingUploadAudio`));try{let e=(await Y.upload(t,{token:n})).data?.data.audio_id;this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,audio_id:e,action:`upload_extend`}),O.success(this.$t(`producer.message.startUploadAudioSuccess`))}catch(e){O.error(e?.response?.data?.error?.message||this.$t(`producer.message.startUploadAudioFailed`))}finally{this.uploading=!1}}}}),lt={class:`relative`},ut={class:`flex justify-between items-center mb-2`},dt={class:`flex justify-start items-center`},ft={class:`text-sm font-bold`},pt={key:0,class:`mb-2`},mt=[`src`],ht={key:1,class:`mt-1`};function gt(t,s,c,u,d,f){let m=l(`info-icon`),h=l(`upload-icon`),_=l(`el-button`),v=l(`el-upload`),y=l(`el-radio-button`),b=l(`el-radio-group`);return g(),o(`div`,lt,[e(`div`,ut,[e(`div`,dt,[e(`span`,ft,r(t.$t(`producer.name.referenceAudios`)),1),i(m,{content:t.$t(`producer.description.uploadAudios`)},null,8,[`content`])]),i(v,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":s[0]||=e=>t.fileList=e,name:`file`,limit:1,class:`upload-wrapper inline-upload`,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,accept:`.mp3,.wav,.m4a,audio/*`,"show-file-list":!1,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{default:p(()=>[i(_,{round:``,type:`primary`,size:`small`,loading:t.uploading},{default:p(()=>[i(h,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(t.$t(`producer.button.uploadAudios`)),1)]),_:1},8,[`loading`])]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])]),t.audioPreviewUrl?(g(),o(`div`,pt,[e(`audio`,{src:t.audioPreviewUrl,controls:``,class:`w-full`},null,8,mt)])):a(``,!0),t.hasUploadedAudio?(g(),o(`div`,ht,[i(b,{modelValue:t.uploadAction,"onUpdate:modelValue":s[1]||=e=>t.uploadAction=e,size:`small`},{default:p(()=>[i(y,{value:`upload_extend`},{default:p(()=>[n(r(t.$t(`producer.button.extend`)),1)]),_:1}),i(y,{value:`upload_cover`},{default:p(()=>[n(r(t.$t(`producer.button.cover_music`)),1)]),_:1})]),_:1},8,[`modelValue`])])):a(``,!0)])}var _t=W(ct,[[`render`,gt],[`__scopeId`,`data-v-3938abc2`]]),vt=v({name:`PromptInput`,components:{PromptTextarea:he},computed:{prompt:{get(){return this.$store.state.producer?.config?.prompt},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,prompt:e})}}},mounted(){this.prompt||=``}});function yt(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(`producer.name.songDescription`),info:e.$t(`producer.description.prompt`),placeholder:e.$t(`producer.placeholder.prompt`),"min-rows":5,"max-rows":14},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var bt=W(vt,[[`render`,yt]]),xt=v({name:`LyricInput`,components:{MagicIcon:H,ElInput:Z,ElButton:J,InfoIcon:z},data(){return{generatingLyrics:!1}},computed:{lyric:{get(){return this.$store.state.producer?.config?.lyric},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,lyric:e})}},config(){return this.$store.state.producer?.config},credential(){return this.$store.state.producer?.credential},walletMode(){return K()&&q(`producer`).mode===`wallet`}},mounted(){this.lyric||=``},methods:{paymentOptions(){if(!this.walletMode){let e=this.credential?.token;return e?{token:e}:void 0}let e=this.getWalletContext();if(!e){O.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}return{mode:`x402`,x402:{wallet:e,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}}},async onGenerateLyrics(){let e=this.paymentOptions();if(!e)return;let t=this.config?.style||this.config?.title||`a beautiful song`;this.generatingLyrics=!0,O.info(this.$t(`producer.message.generatingLyrics`));try{let n=(await Y.lyric({prompt:t},e)).data?.data;n?.text&&(this.lyric=n.text,n?.title&&!this.config?.title&&this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,lyric:n.text,title:n.title}),O.success(this.$t(`producer.message.generateLyricsSuccess`)))}catch(e){if(e instanceof Q)return;O.error(this.$t(`producer.message.generateLyricsFailed`))}finally{this.generatingLyrics=!1}},getWalletContext(){return X(this.$wallet)},async confirmWalletPayment(e){return $.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)}}}),St={class:`field`},Ct={class:`flex items-center justify-between mb-1`},wt={class:`flex items-center`},Tt={class:`text-sm font-bold`};function Et(t,s,c,u,d,m){let h=l(`info-icon`),_=l(`magic-icon`),v=l(`el-button`),y=l(`el-input`);return g(),o(`div`,St,[e(`div`,Ct,[e(`div`,wt,[e(`span`,Tt,r(t.$t(`producer.name.lyrics`)),1),i(h,{content:t.$t(`producer.description.lyrics`)},null,8,[`content`])]),t.config?.action===`extend`?a(``,!0):(g(),f(v,{key:0,size:`small`,loading:t.generatingLyrics,round:``,onClick:t.onGenerateLyrics},{default:p(()=>[t.generatingLyrics?a(``,!0):(g(),f(_,{key:0,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),n(` `+r(t.$t(`producer.button.generate_lyrics`)),1)]),_:1},8,[`loading`,`onClick`]))]),t.config?.action===`extend`?(g(),f(y,{key:1,modelValue:t.lyric,"onUpdate:modelValue":s[1]||=e=>t.lyric=e,rows:5,type:`textarea`,class:`lyrics`,placeholder:t.$t(`producer.placeholder.extend.lyrics`)},null,8,[`modelValue`,`placeholder`])):(g(),f(y,{key:0,modelValue:t.lyric,"onUpdate:modelValue":s[0]||=e=>t.lyric=e,rows:5,type:`textarea`,class:`lyrics`,placeholder:t.$t(`producer.placeholder.lyrics`)},null,8,[`modelValue`,`placeholder`]))])}var Dt=W(xt,[[`render`,Et],[`__scopeId`,`data-v-548b9253`]]),Ot=v({name:`StyleInput`,components:{ElInput:Z,InfoIcon:z},computed:{style:{get(){return this.$store.state.producer?.config?.style},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,style:e})}}}}),kt={class:`field`},At={class:`flex items-center justify-between mb-1`},jt={class:`flex items-center`},Mt={class:`text-sm font-bold`};function Nt(t,n,a,s,c,u){let d=l(`info-icon`),f=l(`el-input`);return g(),o(`div`,kt,[e(`div`,At,[e(`div`,jt,[e(`span`,Mt,r(t.$t(`producer.name.style`)),1),i(d,{content:t.$t(`producer.description.style`)},null,8,[`content`])])]),i(f,{modelValue:t.style,"onUpdate:modelValue":n[0]||=e=>t.style=e,rows:2,type:`textarea`,placeholder:t.$t(`producer.placeholder.style`)},null,8,[`modelValue`,`placeholder`])])}var Pt=W(Ot,[[`render`,Nt]]),Ft=v({name:`TitleInput`,components:{ElInput:Z,InfoIcon:z},computed:{title:{get(){return this.$store.state.producer?.config?.title},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,title:e})}}}}),It={class:`field`},Lt={class:`flex items-center mb-1`},Rt={class:`text-sm font-bold`};function zt(t,n,a,s,c,u){let d=l(`info-icon`),f=l(`el-input`);return g(),o(`div`,It,[e(`div`,Lt,[e(`span`,Rt,r(t.$t(`producer.name.title`)),1),i(d,{content:t.$t(`producer.description.title`)},null,8,[`content`])]),i(f,{modelValue:t.title,"onUpdate:modelValue":n[0]||=e=>t.title=e,placeholder:t.$t(`producer.placeholder.title`)},null,8,[`modelValue`,`placeholder`])])}var Bt=W(Ft,[[`render`,zt]]),Vt=v({name:`ExtendFromInput`,components:{ElImage:G,ElIcon:y,ElInputNumber:L,VideoPlay:V,VideoPause:B},data(){return{}},computed:{audio(){return this.$store.state.producer?.config?.audio},value:{get(){return this.$store.state.producer?.config?.continue_at},set(e){console.debug(`set continue_at`,e),this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,continue_at:e?parseInt(e):void 0})}}},mounted(){this.value||=void 0},methods:{handleChange(e){if(e===void 0){this.value=void 0;return}e<0?this.value=0:e>this.audio?.duration?this.value=this.audio?.duration:this.value=e},useFormatDuring:R,onPlay(e){this.$store.dispatch(`producer/setAudio`,{...this.$store.state.producer.audio,...e,state:`playing`}),console.log(`on play`)},onPause(e){this.$store.dispatch(`producer/setAudio`,{...this.$store.state.producer.audio,...e,state:`paused`}),console.log(`on pause`)},onClick(e){this.$store.state?.producer?.audio?.id!==e.id&&this.onPlay({...e,progress:0})}}}),Ht={class:`field`},Ut={class:`box`},Wt={class:`title font-bold`},Gt={class:`input-wrapper`},Kt={class:`task`},qt={class:`left`},Jt=[`aria-label`,`title`],Yt=[`aria-label`,`title`],Xt={key:2,class:`duration`},Zt={class:`info`},Qt={class:`title`},$t={class:`style`};function en(n,c,d,f,h,_){let v=l(`el-input-number`),y=l(`el-image`),b=l(`video-pause`),x=l(`el-icon`),S=l(`video-play`),C=m(`loading`);return g(),o(`div`,Ht,[e(`div`,Ut,[e(`h2`,Wt,r(n.$t(`producer.name.extend`)),1),e(`div`,Gt,[i(v,{modelValue:n.value,"onUpdate:modelValue":c[0]||=e=>n.value=e,class:`value`,min:0,max:n.audio?.duration,controls:!1,placeholder:n.$t(`producer.placeholder.extend.continue_at`),onChange:n.handleChange},null,8,[`modelValue`,`max`,`placeholder`,`onChange`])])]),e(`div`,Kt,[n.audio?(g(),o(`div`,{key:0,class:`audio`,onClick:c[7]||=e=>n.onClick(n.audio)},[u((g(),o(`div`,qt,[i(y,{src:n.audio?.image_url,class:`cover`,fit:`cover`},null,8,[`src`]),n.audio?.audio_url&&n.$store.state?.producer?.audio?.id===n.audio.id&&n.$store.state?.producer?.audio?.state===`playing`?(g(),o(`div`,{key:0,class:`overlay`,role:`button`,tabindex:`0`,"aria-label":n.$t(`common.player.pause`),title:n.$t(`common.player.pause`),onClick:c[1]||=e=>n.onPause(n.audio),onKeydown:[c[2]||=s(t(e=>n.onPause(n.audio),[`stop`,`prevent`]),[`enter`]),c[3]||=s(t(e=>n.onPause(n.audio),[`stop`,`prevent`]),[`space`])]},[i(x,null,{default:p(()=>[i(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,Jt)):a(``,!0),n.audio?.audio_url&&(n.$store.state?.producer?.audio?.id!==n.audio.id||n.$store.state?.producer?.audio?.id===n.audio.id&&n.$store.state?.producer?.audio?.state===`paused`)?(g(),o(`div`,{key:1,class:`overlay`,role:`button`,tabindex:`0`,"aria-label":n.$t(`common.player.play`),title:n.$t(`common.player.play`),onClick:c[4]||=e=>n.onPlay(n.audio),onKeydown:[c[5]||=s(t(e=>n.onPlay(n.audio),[`stop`,`prevent`]),[`enter`]),c[6]||=s(t(e=>n.onPlay(n.audio),[`stop`,`prevent`]),[`space`])]},[i(x,null,{default:p(()=>[i(S,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,Yt)):a(``,!0),n.audio?.duration?(g(),o(`div`,Xt,r(n.useFormatDuring(n.audio?.duration)),1)):a(``,!0)])),[[C,!n.audio?.audio_url]]),e(`div`,Zt,[e(`h2`,Qt,r(n.audio?.title),1),e(`p`,$t,r(n.audio?.style),1)])])):a(``,!0)])])}var tn=W(Vt,[[`render`,en],[`__scopeId`,`data-v-96005bd8`]]),nn=v({name:`CoverFromInput`,components:{ElImage:G,ElIcon:y,VideoPlay:V,VideoPause:B},data(){return{}},computed:{audio(){return this.$store.state.producer?.config?.audio},value:{get(){return this.$store.state.producer?.config?.continue_at},set(e){console.debug(`set continue_at`,e),this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,continue_at:e?parseInt(e):void 0})}}},mounted(){this.value||=void 0},methods:{handleChange(e){e<0?this.value=0:e>this.audio?.duration?this.value=this.audio?.duration:this.value=e},useFormatDuring:R,onPlay(e){this.$store.dispatch(`producer/setAudio`,{...this.$store.state.producer.audio,...e,state:`playing`}),console.log(`on play`)},onPause(e){this.$store.dispatch(`producer/setAudio`,{...this.$store.state.producer.audio,...e,state:`paused`}),console.log(`on pause`)},onClick(e){this.$store.state?.producer?.audio?.id!==e.id&&this.onPlay({...e,progress:0})}}}),rn={class:`field`},an={class:`box`},on={class:`title font-bold`},sn={class:`task`},cn={class:`left`},ln=[`aria-label`,`title`],un=[`aria-label`,`title`],dn={key:2,class:`duration`},fn={class:`info`},pn={class:`title`},mn={class:`style`};function hn(n,c,d,f,h,_){let v=l(`el-image`),y=l(`video-pause`),b=l(`el-icon`),x=l(`video-play`),S=m(`loading`);return g(),o(`div`,rn,[e(`div`,an,[e(`h2`,on,r(n.$t(`producer.name.cover`)),1)]),e(`div`,sn,[n.audio?(g(),o(`div`,{key:0,class:`audio`,onClick:c[6]||=e=>n.onClick(n.audio)},[u((g(),o(`div`,cn,[i(v,{src:n.audio?.image_url,class:`cover`,fit:`cover`},null,8,[`src`]),n.audio?.audio_url&&n.$store.state?.producer?.audio?.id===n.audio.id&&n.$store.state?.producer?.audio?.state===`playing`?(g(),o(`div`,{key:0,class:`overlay`,role:`button`,tabindex:`0`,"aria-label":n.$t(`common.player.pause`),title:n.$t(`common.player.pause`),onClick:c[0]||=e=>n.onPause(n.audio),onKeydown:[c[1]||=s(t(e=>n.onPause(n.audio),[`stop`,`prevent`]),[`enter`]),c[2]||=s(t(e=>n.onPause(n.audio),[`stop`,`prevent`]),[`space`])]},[i(b,null,{default:p(()=>[i(y,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,ln)):a(``,!0),n.audio?.audio_url&&(n.$store.state?.producer?.audio?.id!==n.audio.id||n.$store.state?.producer?.audio?.id===n.audio.id&&n.$store.state?.producer?.audio?.state===`paused`)?(g(),o(`div`,{key:1,class:`overlay`,role:`button`,tabindex:`0`,"aria-label":n.$t(`common.player.play`),title:n.$t(`common.player.play`),onClick:c[3]||=e=>n.onPlay(n.audio),onKeydown:[c[4]||=s(t(e=>n.onPlay(n.audio),[`stop`,`prevent`]),[`enter`]),c[5]||=s(t(e=>n.onPlay(n.audio),[`stop`,`prevent`]),[`space`])]},[i(b,null,{default:p(()=>[i(x,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,un)):a(``,!0),n.audio?.duration?(g(),o(`div`,dn,r(n.useFormatDuring(n.audio?.duration)),1)):a(``,!0)])),[[S,!n.audio?.audio_url]]),e(`div`,fn,[e(`h2`,pn,r(n.audio?.title),1),e(`p`,mn,r(n.audio?.style),1)])])):a(``,!0)])])}var gn=W(nn,[[`render`,hn],[`__scopeId`,`data-v-9a4b0b16`]]),_n=v({name:`VocalGenderSelector`,components:{ElRadioGroup:j,ElRadioButton:A,InfoIcon:z},computed:{vocalGender:{get(){return this.$store.state.producer?.config?.vocal_gender||``},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,vocal_gender:e||void 0})}}}}),vn={class:`mb-2`},yn={class:`flex items-center mb-1`},bn={class:`text-sm font-bold`};function xn(t,a,s,c,u,d){let f=l(`info-icon`),m=l(`el-radio-button`),h=l(`el-radio-group`);return g(),o(`div`,vn,[e(`div`,yn,[e(`span`,bn,r(t.$t(`producer.name.vocalGender`)),1),i(f,{content:t.$t(`producer.description.vocalGender`)},null,8,[`content`])]),i(h,{modelValue:t.vocalGender,"onUpdate:modelValue":a[0]||=e=>t.vocalGender=e},{default:p(()=>[i(m,{value:``},{default:p(()=>[n(r(t.$t(`producer.gender.auto`)),1)]),_:1}),i(m,{value:`f`},{default:p(()=>[n(r(t.$t(`producer.gender.female`)),1)]),_:1}),i(m,{value:`m`},{default:p(()=>[n(r(t.$t(`producer.gender.male`)),1)]),_:1})]),_:1},8,[`modelValue`])])}var Sn=W(_n,[[`render`,xn]]),Cn=v({name:`AdvancedParams`,components:{ElCollapse:N,ElCollapseItem:M,ElInput:Z,ElSlider:re,ElInputNumber:L,InfoIcon:z},data(){return{activeNames:[]}},computed:{config(){return this.$store.state.producer?.config},styleNegative:{get(){return this.$store.state.producer?.config?.style_negative||``},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,style_negative:e||void 0})}},lyricPrompt:{get(){return this.$store.state.producer?.config?.lyric_prompt||``},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,lyric_prompt:e||void 0})}},weirdness:{get(){return this.$store.state.producer?.config?.weirdness??.5},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,weirdness:e})}},soundStrength:{get(){return this.$store.state.producer?.config?.sound_strength??.7},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,sound_strength:e})}},lyricsStrength:{get(){return this.$store.state.producer?.config?.lyrics_strength??.7},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,lyrics_strength:e})}},seed:{get(){return this.$store.state.producer?.config?.seed},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,seed:e})}}},mounted(){let e=this.$store.state.producer?.config;if(!e)return;let t={};typeof e.weirdness==`number`&&e.weirdness>1&&(t.weirdness=e.weirdness/100),typeof e.sound_strength==`number`&&e.sound_strength>1&&(t.sound_strength=e.sound_strength/100),typeof e.lyrics_strength==`number`&&e.lyrics_strength>1&&(t.lyrics_strength=e.lyrics_strength/100),Object.keys(t).length>0&&this.$store.commit(`producer/setConfig`,{...e,...t})}}),wn={key:0,class:`mb-3`},Tn={class:`flex items-center mb-1`},En={class:`text-xs font-bold`},Dn={key:1,class:`mb-3`},On={class:`flex items-center mb-1`},kn={class:`text-xs font-bold`},An={class:`mb-3`},jn={class:`flex items-center justify-between mb-1`},Mn={class:`flex items-center`},Nn={class:`text-xs font-bold`},Pn={class:`text-xs text-[var(--el-text-color-secondary)]`},Fn={class:`mb-3`},In={class:`flex items-center justify-between mb-1`},Ln={class:`flex items-center`},Rn={class:`text-xs font-bold`},zn={class:`text-xs text-[var(--el-text-color-secondary)]`},Bn={key:2,class:`mb-3`},Vn={class:`flex items-center justify-between mb-1`},Hn={class:`flex items-center`},Un={class:`text-xs font-bold`},Wn={class:`text-xs text-[var(--el-text-color-secondary)]`},Gn={class:`mb-3`},Kn={class:`flex items-center mb-1`},qn={class:`text-xs font-bold`};function Jn(t,n,s,c,u,d){let m=l(`info-icon`),h=l(`el-input`),_=l(`el-slider`),v=l(`el-input-number`),y=l(`el-collapse-item`),b=l(`el-collapse`);return g(),f(b,{modelValue:t.activeNames,"onUpdate:modelValue":n[6]||=e=>t.activeNames=e,class:`advanced-collapse`},{default:p(()=>[i(y,{title:t.$t(`producer.name.advancedParams`),name:`advanced`},{default:p(()=>[t.config?.custom?(g(),o(`div`,wn,[e(`div`,Tn,[e(`span`,En,r(t.$t(`producer.name.styleNegative`)),1),i(m,{content:t.$t(`producer.description.styleNegative`)},null,8,[`content`])]),i(h,{modelValue:t.styleNegative,"onUpdate:modelValue":n[0]||=e=>t.styleNegative=e,size:`small`,placeholder:t.$t(`producer.placeholder.styleNegative`)},null,8,[`modelValue`,`placeholder`])])):a(``,!0),t.config?.custom&&!t.config?.instrumental?(g(),o(`div`,Dn,[e(`div`,On,[e(`span`,kn,r(t.$t(`producer.name.lyricPrompt`)),1),i(m,{content:t.$t(`producer.description.lyricPrompt`)},null,8,[`content`])]),i(h,{modelValue:t.lyricPrompt,"onUpdate:modelValue":n[1]||=e=>t.lyricPrompt=e,size:`small`,placeholder:t.$t(`producer.placeholder.lyricPrompt`)},null,8,[`modelValue`,`placeholder`])])):a(``,!0),e(`div`,An,[e(`div`,jn,[e(`div`,Mn,[e(`span`,Nn,r(t.$t(`producer.name.weirdness`)),1),i(m,{content:t.$t(`producer.description.weirdness`)},null,8,[`content`])]),e(`span`,Pn,r(t.weirdness??.5),1)]),i(_,{modelValue:t.weirdness,"onUpdate:modelValue":n[2]||=e=>t.weirdness=e,min:0,max:1,step:.01},null,8,[`modelValue`])]),e(`div`,Fn,[e(`div`,In,[e(`div`,Ln,[e(`span`,Rn,r(t.$t(`producer.name.soundStrength`)),1),i(m,{content:t.$t(`producer.description.soundStrength`)},null,8,[`content`])]),e(`span`,zn,r(t.soundStrength??.7),1)]),i(_,{modelValue:t.soundStrength,"onUpdate:modelValue":n[3]||=e=>t.soundStrength=e,min:.2,max:1,step:.01},null,8,[`modelValue`])]),t.config?.custom&&!t.config?.instrumental?(g(),o(`div`,Bn,[e(`div`,Vn,[e(`div`,Hn,[e(`span`,Un,r(t.$t(`producer.name.lyricsStrength`)),1),i(m,{content:t.$t(`producer.description.lyricsStrength`)},null,8,[`content`])]),e(`span`,Wn,r(t.lyricsStrength??.7),1)]),i(_,{modelValue:t.lyricsStrength,"onUpdate:modelValue":n[4]||=e=>t.lyricsStrength=e,min:0,max:1,step:.01},null,8,[`modelValue`])])):a(``,!0),e(`div`,Gn,[e(`div`,Kn,[e(`span`,qn,r(t.$t(`producer.name.seed`)),1),i(m,{content:t.$t(`producer.description.seed`)},null,8,[`content`])]),i(v,{modelValue:t.seed,"onUpdate:modelValue":n[5]||=e=>t.seed=e,min:0,controls:!1,size:`small`,placeholder:t.$t(`producer.placeholder.seed`),class:`w-full`},null,8,[`modelValue`,`placeholder`])])]),_:1},8,[`title`])]),_:1},8,[`modelValue`])}var Yn=W(Cn,[[`render`,Jn],[`__scopeId`,`data-v-f9296888`]]),Xn=v({name:`ReplaceSectionInput`,components:{ElInputNumber:L,ElImage:G,InfoIcon:z},computed:{audio(){return this.$store.state.producer?.config?.audio},replaceSectionStart:{get(){return this.$store.state.producer?.config?.replace_section_start},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,replace_section_start:e})}},replaceSectionEnd:{get(){return this.$store.state.producer?.config?.replace_section_end},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,replace_section_end:e})}}},methods:{onClick(e){this.$store.dispatch(`producer/setAudio`,{...this.$store.state.producer.audio,...e,state:`playing`})}}}),Zn={class:`field`},Qn={class:`flex items-center mb-2`},$n={class:`text-sm font-bold m-0`},er={key:0,class:`task mb-2`},tr={class:`left relative w-[50px] h-[50px] mr-3 flex-shrink-0`},nr={class:`info flex-1 min-w-0`},rr={class:`text-sm font-bold m-0 truncate`},ir={class:`text-xs text-[var(--el-text-color-secondary)] m-0 truncate`},ar={class:`flex gap-2`};function or(t,n,s,c,d,f){let p=l(`info-icon`),h=l(`el-image`),_=l(`el-input-number`),v=m(`loading`);return g(),o(`div`,Zn,[e(`div`,Qn,[e(`h2`,$n,r(t.$t(`producer.name.replaceSection`)),1),i(p,{content:t.$t(`producer.description.replaceSection`)},null,8,[`content`])]),t.audio?(g(),o(`div`,er,[e(`div`,{class:`audio flex items-center`,onClick:n[0]||=e=>t.onClick(t.audio)},[u((g(),o(`div`,tr,[i(h,{src:t.audio?.image_url,class:`w-full h-full rounded`,fit:`cover`},null,8,[`src`])])),[[v,!t.audio?.audio_url]]),e(`div`,nr,[e(`h2`,rr,r(t.audio?.title),1),e(`p`,ir,r(t.audio?.style),1)])])])):a(``,!0),e(`div`,ar,[i(_,{modelValue:t.replaceSectionStart,"onUpdate:modelValue":n[1]||=e=>t.replaceSectionStart=e,class:`flex-1`,min:0,max:t.audio?.duration,controls:!1,placeholder:t.$t(`producer.placeholder.replaceSectionStart`)},null,8,[`modelValue`,`max`,`placeholder`]),i(_,{modelValue:t.replaceSectionEnd,"onUpdate:modelValue":n[2]||=e=>t.replaceSectionEnd=e,class:`flex-1`,min:t.replaceSectionStart||0,max:t.audio?.duration,controls:!1,placeholder:t.$t(`producer.placeholder.replaceSectionEnd`)},null,8,[`modelValue`,`min`,`max`,`placeholder`])])])}var sr=v({name:`PresetPanel`,components:{CleanupIcon:ae,MagicIcon:H,TypeSelector:st,PromptInput:bt,LyricInput:Dt,StyleInput:Pt,TitleInput:Bt,ExtendFromInput:tn,CoverFromInput:gn,UploadAudio:_t,VocalGenderSelector:Sn,AdvancedParams:Yn,ReplaceSectionInput:W(Xn,[[`render`,or]]),ElButton:J,ElTabs:S,ElTabPane:C,ServicePricingSummary:Ie,ScenarioPaymentMode:Le},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{canGenerate(){return He(`producer`,U(this.config))},config(){return this.$store.state.producer?.config},mode:{get(){return this.$store.state.producer?.config?.custom?`custom`:`simple`},set(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,custom:e===`custom`})}},consumption(){return we(this.config,this.service?.cost)},service(){return this.$store.state.producer?.service},walletMode(){return K()&&q(`producer`).mode===`wallet`},generateButtonText(){let e=this.config?.action;return e===`extend`||e===`upload_extend`?this.$t(`producer.button.extend`):e===`cover`||e===`upload_cover`?this.$t(`producer.button.cover_music`):e===`variation`?this.$t(`producer.button.variation`):e===`replace_section`?this.$t(`producer.button.replace_section`):e===`stems`?this.$t(`producer.button.get_stems`):e===`swap_vocals`?this.$t(`producer.button.swap_vocals`):e===`swap_instrumentals`?this.$t(`producer.button.swap_instrumentals`):this.$t(`producer.button.generate`)}},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(`producer`);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(`producer`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await Y.quoteAudio(U(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`)},onClearAll(){this.$store.commit(`producer/setConfig`,{custom:this.$store.state.producer?.config?.custom||!1,instrumental:!1,prompt:``,lyric:``,style:``,title:``,model:this.$store.state.producer?.config?.model})}}}),cr={class:`flex flex-col h-full`},lr={class:`flex-1 min-h-0 overflow-hidden`},ur={class:`p-5`},dr={class:`p-5`},fr={class:`flex flex-col items-center justify-center px-5 pb-5 gap-2`},pr={class:`flex gap-2 w-full`};function mr(t,s,c,u,d,m){let h=l(`type-selector`),_=l(`upload-audio`),v=l(`prompt-input`),y=l(`extend-from-input`),b=l(`cover-from-input`),x=l(`replace-section-input`),S=l(`advanced-params`),C=l(`el-tab-pane`),w=l(`lyric-input`),T=l(`style-input`),E=l(`title-input`),D=l(`vocal-gender-selector`),O=l(`el-tabs`),k=l(`scenario-payment-mode`),A=l(`service-pricing-summary`),j=l(`cleanup-icon`),M=l(`el-button`),N=l(`magic-icon`);return g(),o(`div`,cr,[e(`div`,lr,[i(O,{modelValue:t.mode,"onUpdate:modelValue":s[0]||=e=>t.mode=e,class:`producer-mode-tabs scenario-tabs scenario-tabs--scrollable scenario-tabs--divided`},{default:p(()=>[i(C,{label:t.$t(`producer.mode.simple`),name:`simple`},{default:p(()=>[e(`div`,ur,[i(h,{class:`mb-4`}),i(_,{class:`mb-4`}),i(v,{class:`mb-4`}),t.config?.action===`extend`?(g(),f(y,{key:0,class:`mb-4`})):a(``,!0),t.config?.action===`cover`?(g(),f(b,{key:1,class:`mb-4`})):a(``,!0),t.config?.action===`replace_section`?(g(),f(x,{key:2,class:`mb-4`})):a(``,!0),i(S,{class:`mb-4`})])]),_:1},8,[`label`]),i(C,{label:t.$t(`producer.mode.custom`),name:`custom`},{default:p(()=>[e(`div`,dr,[i(h,{class:`mb-4`}),i(_,{class:`mb-4`}),t.config?.instrumental?a(``,!0):(g(),f(w,{key:0,class:`mb-4`})),i(T,{class:`mb-4`}),i(E,{class:`mb-4`}),t.config?.instrumental?a(``,!0):(g(),f(D,{key:1,class:`mb-4`})),t.config?.action===`extend`?(g(),f(y,{key:2,class:`mb-4`})):a(``,!0),t.config?.action===`cover`?(g(),f(b,{key:3,class:`mb-4`})):a(``,!0),t.config?.action===`replace_section`?(g(),f(x,{key:4,class:`mb-4`})):a(``,!0),i(S,{class:`mb-4`})])]),_:1},8,[`label`])]),_:1},8,[`modelValue`])]),e(`div`,fr,[i(k,{scenario:`producer`}),t.walletMode?a(``,!0):(g(),f(A,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),e(`div`,pr,[i(M,{class:`flex-1`,onClick:t.onClearAll},{default:p(()=>[i(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(t.$t(`producer.button.clear_all`)),1)]),_:1},8,[`onClick`]),i(M,{type:`primary`,class:`flex-1`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:p(()=>[i(N,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(t.generateButtonText),1)]),_:1},8,[`disabled`,`onClick`])])])])}var hr=W(sr,[[`render`,mr],[`__scopeId`,`data-v-647162cb`]]),gr=oe(),_r=v({name:`TaskPreview`,components:{ChannelIcon:de,CodeIcon:ce,DownloadIcon:le,InfoIcon:pe,MagicIcon:H,MoreIcon:ue,WarningIcon:ye,ElAlert:E,ElImage:G,ElIcon:y,ElTooltip:T,VideoPlay:V,VideoPause:B,ElDropdown:I,ElDropdownMenu:F,ElDropdownItem:P,Loading:me,ApiCodeDialog:Re,ReportDialog:Pe,CopyToClipboard:Ne},props:{modelValue:{type:Object,required:!0}},emits:[`wallet-task`],data(){return{isFetchingVideoUrl:!1,isFetchingWav:!1,apiCodeVisible:!1,reportVisible:!1,reportTargetId:``,reportSnapshot:void 0,apiCodePath:`/producer/audios`,apiCodeBody:{}}},computed:{loading(){return this.$store.state.producer?.status?.getApplications===D.Request},showViewCode(){return xe()},credential(){return this.$store.state.producer.credential},walletMode(){return K()&&q(`producer`).mode===`wallet`},config(){return this.$store.state.producer.config},task(){return this.$store.state.producer?.tasks},audios(){let e=this.modelValue?.response?.data??[],t=this.modelValue?.request?.action;return t?e.map(e=>({...e,action:t})):e},isFailure(){return this.audios.length===0&&(this.modelValue?.response?.success===!1||!!this.modelValue?.response?.error)},failureReason(){let e=this.modelValue?.response?.error;return typeof e==`string`?e:e?.message},traceId(){return this.modelValue?.response?.trace_id||this.modelValue?.trace_id},application(){return this.$store.state.producer?.application},active(){return this.$store.state.producer?.tasks?.active}},methods:{paymentOptions(){if(!this.walletMode){let e=this.credential?.token;return e?{token:e}:void 0}let e=this.getWalletContext();if(!e){O.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}return{mode:`x402`,x402:{wallet:e,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}}},getWalletContext(){return X(this.$wallet)},async confirmWalletPayment(e){return $.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)},onReport(e){this.reportTargetId=e?.id||``,this.reportSnapshot={prompt:e?.prompt,title:e?.title},this.reportVisible=!0},useFormatDuring:R,onViewCode(){let e=this.modelValue?.request||{},t={};Object.entries(e).forEach(([e,n])=>{e===`application_id`||e===`callback_url`||n!=null&&(typeof n==`string`&&n===``||Array.isArray(n)&&n.length===0||(t[e]=n))}),this.apiCodeBody=t,this.apiCodePath=`/producer/audios`,this.apiCodeVisible=!0},onPlay(e){this.$store.dispatch(`producer/setAudio`,{...this.$store.state.producer.audio,...e,state:`playing`}),console.log(`on play`)},onPause(e){this.$store.dispatch(`producer/setAudio`,{...this.$store.state.producer.audio,...e,state:`paused`}),console.log(`on pause`)},onClick(e){this.$store.state?.producer?.audio?.id!==e.id&&this.onPlay({...e,progress:0})},onExtend(e,t){e?.stopPropagation(),console.debug(`set config`,t),this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,model:t.model,custom:!0,instrumental:!1,style:t.style,action:`extend`,audio:t,audio_id:t.id,continue_at:t.duration})},onDownload(e,t){e&&e?.stopPropagation();let n=new URL(t).pathname,r=n.substring(n.lastIndexOf(`/`)+1);fetch(t).then(e=>e.blob()).then(e=>{(0,gr.saveAs)(e,r)})},async handleVideoDownload(e){if(e.video_url){this.onDownload(null,e.video_url);return}if(!this.isFetchingVideoUrl)try{this.isFetchingVideoUrl=!0;let t=await this.fetchVideoUrlFromApi(e?.id);console.log(`get videoUrl: ${t}`),e.video_url=t,this.onDownload(null,t)}catch(e){if(e instanceof Q)return;console.error(`get videoUrl failed:`,e),O.error(this.$t(`producer.message.getVideoUrlFailed`))}finally{this.isFetchingVideoUrl=!1}},async fetchVideoUrlFromApi(e){return new Promise((t,n)=>{let r={audio_id:e},i=this.paymentOptions();if(!i)return n(new Q);Y.video(r,i).then(e=>{let r=e.data?.data?.video_url;r?t(r):n(Error(`Video URL not found in response`))}).catch(e=>{n(e)})})},onPreview(e,t){e?.stopPropagation(),window.open(t,`_blank`)},async onGetStems(e){await this.onGenerateAudioUrl(`stems`,e)},onCover(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,model:e.model,custom:!0,instrumental:!1,style:e.style,action:`cover`,audio:e,audio_id:e.id})},onVariation(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,model:e.model,custom:!0,style:e.style,action:`variation`,audio:e,audio_id:e.id})},async onSwapVocals(e){await this.onGenerateAudioUrl(`swap_vocals`,e)},async onSwapInstrumentals(e){await this.onGenerateAudioUrl(`swap_instrumentals`,e)},async onGetAllStems(e){await this.onGenerateAudioUrl(`all_stems`,e)},onReplaceSection(e){this.$store.commit(`producer/setConfig`,{...this.$store.state.producer?.config,model:e.model,custom:!0,instrumental:!1,style:e.style,action:`replace_section`,audio:e,audio_id:e.id,replace_section_start:0,replace_section_end:Math.min(30,e.duration||30)})},async handleWavDownload(e){if(!e?.id||this.isFetchingWav)return;let t=this.paymentOptions();if(t)try{this.isFetchingWav=!0,O.info(this.$t(`producer.message.fetchingWav`));let n=(await Y.wav({audio_id:e.id},t)).data?.data,r=Array.isArray(n)?n[0]?.file_url:n?.file_url||n?.audio_url;r?this.onDownload(null,r):O.error(this.$t(`producer.message.fetchWavFailed`))}catch(e){if(e instanceof Q)return;O.error(this.$t(`producer.message.fetchWavFailed`))}finally{this.isFetchingWav=!1}},async onGenerateAudioUrl(e,t){let n={action:e,audio_id:t,async:!0},r=this.paymentOptions();r&&(O.info(this.$t(`producer.message.startingTask`)),Y.audio(n,r).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&this.$emit(`wallet-task`,t),O.success(this.$t(`producer.message.startTaskSuccess`))}).catch(e=>{e instanceof Q||O.error(e?.response?.data?.error?.message||this.$t(`producer.message.startTaskFailed`))}))},async onScrollDown(){setTimeout(()=>{let e=document.querySelector(`.tasks`);e&&(e.scrollTop=e.scrollHeight)},1e3)},async onGetTasks(){if(this.loading){console.debug(`loading`);return}await this.$store.dispatch(`producer/getTasks`,{limit:30,offset:0})}}}),vr={class:`task`},yr={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},br={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},xr={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Sr=[`onClick`],Cr={class:`left`},wr=[`aria-label`,`title`,`onClick`,`onKeydown`],Tr=[`aria-label`,`title`,`onClick`,`onKeydown`],Er={key:2,class:`duration`},Dr={class:`info`},Or={class:`title`},kr={class:`style`},Ar={class:`right`},jr={class:`el-dropdown-link`},Mr={class:`flex items-center min-w-[120px]`},Nr={class:`flex items-center min-w-[120px]`},Pr={class:`el-dropdown-link`};function Fr(d,_,v,y,b,x){let S=l(`warning-icon`),C=l(`magic-icon`),w=l(`copy-to-clipboard`),T=l(`info-icon`),E=l(`channel-icon`),D=l(`el-alert`),O=l(`el-image`),k=l(`video-pause`),A=l(`el-icon`),j=l(`video-play`),M=l(`download-icon`),N=l(`el-tooltip`),ee=l(`Loading`),P=l(`el-dropdown-item`),F=l(`el-dropdown-menu`),I=l(`el-dropdown`),L=l(`more-icon`),te=l(`code-icon`),ne=l(`api-code-dialog`),re=l(`report-dialog`),ie=m(`loading`);return g(),o(`div`,vr,[d.isFailure?(g(),f(D,{key:0,closable:!1,class:`task-failure`},{title:p(()=>[i(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(d.$t(`producer.name.failure`)),1)]),default:p(()=>[e(`p`,yr,[i(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(d.$t(`producer.name.taskId`))+`: `+r(d.modelValue?.id)+` `,1),i(w,{content:d.modelValue?.id},null,8,[`content`])]),d.failureReason?(g(),o(`p`,br,[i(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(d.$t(`producer.name.failureReason`))+`: `+r(d.failureReason)+` `,1),i(w,{content:d.failureReason},null,8,[`content`])])):a(``,!0),d.traceId?(g(),o(`p`,xr,[i(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(d.$t(`producer.name.traceId`))+`: `+r(d.traceId)+` `,1),i(w,{content:d.traceId},null,8,[`content`])])):a(``,!0)]),_:1})):a(``,!0),(g(!0),o(c,null,h(d.audios,c=>(g(),o(`div`,{key:c.id,class:`audio`,onClick:t(e=>d.onClick(c),[`stop`])},[u((g(),o(`div`,Cr,[i(O,{src:c?.image_url,class:`cover`,fit:`cover`,lazy:``},null,8,[`src`]),c?.audio_url&&d.$store.state?.producer?.audio?.id===c.id&&d.$store.state?.producer?.audio?.state===`playing`?(g(),o(`div`,{key:0,class:`overlay`,role:`button`,tabindex:`0`,"aria-label":d.$t(`common.player.pause`),title:d.$t(`common.player.pause`),onClick:t(e=>d.onPause(c),[`stop`]),onKeydown:[s(t(e=>d.onPause(c),[`stop`,`prevent`]),[`enter`]),s(t(e=>d.onPause(c),[`stop`,`prevent`]),[`space`])]},[i(A,null,{default:p(()=>[i(k,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,wr)):a(``,!0),c?.audio_url&&(d.$store.state?.producer?.audio?.id!==c.id||d.$store.state?.producer?.audio?.id===c.id&&d.$store.state?.producer?.audio?.state===`paused`)?(g(),o(`div`,{key:1,class:`overlay`,role:`button`,tabindex:`0`,"aria-label":d.$t(`common.player.play`),title:d.$t(`common.player.play`),onClick:t(e=>d.onPlay(c),[`stop`]),onKeydown:[s(t(e=>d.onPlay(c),[`stop`,`prevent`]),[`enter`]),s(t(e=>d.onPlay(c),[`stop`,`prevent`]),[`space`])]},[i(A,null,{default:p(()=>[i(j,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,Tr)):a(``,!0),c?.duration?(g(),o(`div`,Er,r(d.useFormatDuring(c?.duration)),1)):a(``,!0)])),[[ie,!c?.audio_url]]),e(`div`,Dr,[e(`h2`,Or,r(c?.title),1),e(`p`,kr,r(c?.style),1)]),e(`div`,Ar,[i(I,null,{dropdown:p(()=>[i(F,null,{default:p(()=>[i(P,{disabled:d.isFetchingVideoUrl,onClick:e=>d.handleVideoDownload(c)},{default:p(()=>[e(`div`,Mr,[d.isFetchingVideoUrl?(g(),f(A,{key:0,class:`is-loading mr-2`},{default:p(()=>[i(ee,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})):a(``,!0),e(`span`,null,r(d.$t(`producer.button.download_video`)),1)])]),_:1},8,[`disabled`,`onClick`]),c?.audio_url?(g(),f(P,{key:0,onClick:t(e=>d.onDownload(e,c?.audio_url),[`stop`])},{default:p(()=>[n(r(d.$t(`producer.button.download_audio`)),1)]),_:1},8,[`onClick`])):a(``,!0),i(P,{disabled:d.isFetchingWav,onClick:e=>d.handleWavDownload(c)},{default:p(()=>[e(`div`,Nr,[d.isFetchingWav?(g(),f(A,{key:0,class:`is-loading mr-2`},{default:p(()=>[i(ee,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})):a(``,!0),e(`span`,null,r(d.$t(`producer.button.download_wav`)),1)])]),_:1},8,[`disabled`,`onClick`])]),_:2},1024)]),default:p(()=>[e(`span`,jr,[i(N,{effect:`dark`,content:d.$t(`common.button.download`),placement:`top`},{default:p(()=>[c?.audio_url||c?.video_url?(g(),f(M,{key:0,class:`icon icon-download`,size:`1em`,"aria-hidden":`true`,focusable:`false`})):a(``,!0)]),_:2},1032,[`content`])])]),_:2},1024),i(I,null,{dropdown:p(()=>[i(F,null,{default:p(()=>[c?.audio_url?(g(),f(P,{key:0,onClick:t(e=>d.onExtend(e,c),[`stop`])},{default:p(()=>[n(r(d.$t(`producer.button.extend`)),1)]),_:1},8,[`onClick`])):a(``,!0),c.id?(g(),f(P,{key:1,onClick:t(e=>d.onGetStems(c.id),[`stop`])},{default:p(()=>[n(r(d.$t(`producer.button.get_stems`)),1)]),_:1},8,[`onClick`])):a(``,!0),c.id?(g(),f(P,{key:2,onClick:t(e=>d.onGetAllStems(c.id),[`stop`])},{default:p(()=>[n(r(d.$t(`producer.button.all_stems`)),1)]),_:1},8,[`onClick`])):a(``,!0),i(P,{onClick:t(e=>d.onCover(c),[`stop`])},{default:p(()=>[n(r(d.$t(`producer.button.cover_music`)),1)]),_:1},8,[`onClick`]),c?.id?(g(),f(P,{key:3,onClick:t(e=>d.onVariation(c),[`stop`])},{default:p(()=>[n(r(d.$t(`producer.button.variation`)),1)]),_:1},8,[`onClick`])):a(``,!0),c?.id?(g(),f(P,{key:4,onClick:t(e=>d.onSwapVocals(c.id),[`stop`])},{default:p(()=>[n(r(d.$t(`producer.button.swap_vocals`)),1)]),_:1},8,[`onClick`])):a(``,!0),c?.id?(g(),f(P,{key:5,onClick:t(e=>d.onSwapInstrumentals(c.id),[`stop`])},{default:p(()=>[n(r(d.$t(`producer.button.swap_instrumentals`)),1)]),_:1},8,[`onClick`])):a(``,!0),c?.id?(g(),f(P,{key:6,onClick:t(e=>d.onReplaceSection(c),[`stop`])},{default:p(()=>[n(r(d.$t(`producer.button.replace_section`)),1)]),_:1},8,[`onClick`])):a(``,!0),d.showViewCode?(g(),f(P,{key:7,onClick:t(d.onViewCode,[`stop`])},{default:p(()=>[i(te,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(d.$t(`common.button.viewCode`)),1)]),_:1},8,[`onClick`])):a(``,!0),c?.id?(g(),f(P,{key:8,onClick:t(e=>d.onReport(c),[`stop`])},{default:p(()=>[i(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(d.$t(`common.button.report`)),1)]),_:1},8,[`onClick`])):a(``,!0)]),_:2},1024)]),default:p(()=>[e(`span`,Pr,[i(N,{effect:`dark`,content:d.$t(`producer.button.more`),placement:`top`},{default:p(()=>[c?.audio_url||c?.video_url?(g(),f(L,{key:0,class:`icon icon-ellipsis`,size:`1em`,"aria-hidden":`true`,focusable:`false`})):a(``,!0)]),_:2},1032,[`content`])])]),_:2},1024)])],8,Sr))),128)),i(ne,{visible:d.apiCodeVisible,"onUpdate:visible":_[0]||=e=>d.apiCodeVisible=e,method:`POST`,path:d.apiCodePath,body:d.apiCodeBody,token:d.$store.state.producer?.credential?.token||``},null,8,[`visible`,`path`,`body`,`token`]),i(re,{visible:d.reportVisible,"onUpdate:visible":_[1]||=e=>d.reportVisible=e,service:`producer`,"target-id":d.reportTargetId,snapshot:d.reportSnapshot},null,8,[`visible`,`target-id`,`snapshot`])])}var Ir=v({name:`RecentPanel`,components:{ElSkeletonItem:te,ElSkeleton:ne,TaskPreview:W(_r,[[`render`,Fr]]),Player:se,NoTasks:_e,ScrollList:ge},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`,`wallet-task`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.producer?.tasks,items:this.$store.state.producer?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Lr={key:0,class:`tasks`},Rr={class:`left w-[70px] p-[10px] flex items-center`},zr={class:`main w-[calc(100%-70px)] flex-1 p-[10px]`},Br={key:2,class:`w-full flex-1 flex items-center justify-center`},Vr={class:`h-20`};function Hr(t,n,r,s,d,m){let v=l(`el-skeleton-item`),y=l(`el-skeleton`),b=l(`task-preview`),x=l(`scroll-list`),S=l(`no-tasks`),C=l(`player`);return g(),o(c,null,[t.tasks?.items===void 0?(g(),o(`div`,Lr,[(g(),o(c,null,h(3,t=>e(`div`,{key:t,class:`flex`},[e(`div`,Rr,[i(y,{animated:``},{template:p(()=>[i(v,{variant:`image`,class:`avatar w-[50px] h-[50px]`})]),_:1})]),e(`div`,zr,[i(y,{animated:``},{template:p(()=>[i(v,{variant:`p`,class:`w-[200px] h-[15px] mb-[5px] mt-[10px]`}),i(v,{variant:`text`})]),_:1})])])),64))])):t.tasks?.items?.length&&t.tasks?.items?.length>0?(g(),f(x,{key:1,ref:`scrollList`,class:`flex-1 w-full overflow-y-auto tasks p-2`,loading:t.loading,onReachTop:n[1]||=e=>t.$emit(`reach-top`)},{default:p(()=>[(g(!0),o(c,null,h(t.tasks?.items,(e,r)=>(g(),f(b,{key:r,"model-value":e,class:`preview`,onWalletTask:n[0]||=e=>t.$emit(`wallet-task`,e)},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):a(``,!0),t.tasks?.items?.length===0?(g(),o(`div`,Br,[i(S)])):a(``,!0),u(e(`div`,Vr,[i(C,{namespace:`producer`})],512),[[_,!!t.$store?.state?.producer?.audio?.object]])],64)}var Ur=W(Ir,[[`render`,Hr]]),Wr=v({name:`TaskPreview`,components:{IconPicture:fe,ElImage:G,ElAvatar:k,ElIcon:y},computed:{audio(){return this.$store.state.producer?.audio}}}),Gr={key:0,class:`size-full overflow-hidden`},Kr={class:`relative h-[300px]`},qr={class:`flex items-center justify-center size-full bg-[var(--el-bg-color)]`},Jr={class:`absolute bottom-0 left-0 right-0 m-0 p-4 text-white z-10 bg-gradient-to-t from-black/70 to-transparent`},Yr={class:`p-4`},Xr={class:`flex items-center font-bold mb-2`},Zr={class:`text-[var(--el-text-color-regular)] mb-2`},Qr={class:`text-xs text-[var(--el-text-color-regular)]`},$r={class:`mt-4 text-sm leading-[25px] whitespace-pre-wrap`},ei={key:1,class:`w-full h-full`};function ti(t,n,a,s,c,u){let d=l(`icon-picture`),f=l(`el-icon`),m=l(`el-image`),h=l(`el-avatar`);return t.audio?.object?(g(),o(`div`,Gr,[e(`div`,Kr,[i(m,{src:t.audio.image_url,fit:`cover`,class:`size-full`},{error:p(()=>[e(`div`,qr,[i(f,{class:`text-3xl`},{default:p(()=>[i(d,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})])]),_:1},8,[`src`]),e(`h2`,Jr,r(t.audio?.title),1)]),e(`div`,Yr,[e(`div`,Xr,[i(h,{size:30,src:t.audio?.image_url,class:`mr-2`},null,8,[`src`]),e(`span`,null,r(t.audio?.title),1)]),e(`p`,Zr,r(t.audio?.style),1),e(`p`,Qr,r(t.$dayjs.format(t.audio?.created_at)),1),e(`div`,$r,[e(`p`,null,r(t.audio?.lyric),1)])])])):(g(),o(`div`,ei))}var ni=v({name:`ProducerIndex`,components:{Layout:Ye,ConfigPanel:hr,RecentPanel:Ur,PreviewPanel:W(Wr,[[`render`,ti]])},mixins:[Ae,Be(`producer`),ze(`producer`)],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.producer?.status?.getApplications===D.Request},tasksLoading(){return this.$store.state.producer?.status?.getTasks===D.Request||this.fetchingTasks},service(){return this.$store.state.producer.service},credential(){return this.$store.state.producer.credential},config(){return this.$store.state.producer.config},initializing(){return this.$store.state.producer.status.getApplications===D.Request},needApply(){return this.$store.state.producer.status.getApplications===D.Success&&!this.application},application(){return this.$store.state.producer.application},tasks(){return this.$store.state.producer.tasks},applications(){return this.$store.state.producer.applications},walletMode(){return K()&&q(`producer`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`producer/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 ve({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(`producer/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplications`),await this.$store.dispatch(`producer/getApplications`),console.debug(`end onGetApplications`),await this.onGetTasks()},onApply(){Te.create({application:this.application}).then(({data:e})=>{this.application=e,O.success(this.$t(`application.message.applySuccessfully`))}).catch(e=>{e?.response?.data?.code===`duplication`&&O.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(`producer/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerateAudio(){let e=U(this.config),t=Ve(`producer`,e);if(t){O.error(this.$t(`common.message.${t}`));return}if(!Ee(this.uploadTracker,e=>this.$t(e),e=>O.warning(e)))return;let n=this.createPaymentOperation(t=>Y.audio(e,t));if(n){O.info(this.$t(`producer.message.startingTask`));try{let e=await ke(`producer`,n);this.recordWalletTask(e),O.success(this.$t(`producer.message.startTaskSuccess`))}catch(e){this.handlePaymentError(e)}finally{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)}}},createPaymentOperation(e){if(!this.walletMode){if(!je())return;let t=this.credential?.token;return t?e({token:t}):void 0}let t=this.getWalletContext();if(!t){O.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}return e({mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})},recordWalletTask(e){this.onWalletTask(e?.data?.task_id)},onWalletTask(e){this.walletMode&&!this.credential?.token&&e&&!this.walletTaskIds.includes(e)&&this.walletTaskIds.unshift(e)},handlePaymentError(e){e instanceof Q||(this.walletMode?O.error(this.$t(`common.x402Scenario.paymentFailed`)):O.error(e?.response?.data?.error?.message||this.$t(`producer.message.startTaskFailed`)))},getWalletContext(){return X(this.$wallet)},async confirmWalletPayment(e){return $.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 ri(e,t,n,r,a,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`preview-panel`),d=l(`layout`);return g(),f(d,null,{config:p(()=>[i(s,{onGenerate:e.onGenerateAudio},null,8,[`onGenerate`])]),result:p(()=>[i(c,{ref:`recentPanel`,class:`panel recent`,loading:e.loadingMore,onReachTop:e.onReachTop,onWalletTask:e.onWalletTask},null,8,[`loading`,`onReachTop`,`onWalletTask`])]),preview:p(()=>[i(u)]),_:1})}var ii=W(ni,[[`render`,ri],[`__scopeId`,`data-v-ae7b5900`]]);export{ii as default};
@@ -1,5 +0,0 @@
1
- import{r as e}from"./rolldown-runtime--c01j_DQ.js";import{A as t,I as n,Jt as r,L as i,M as a,N as o,T as s,at as c,j as l,mt as u,rt as d,st as f,tt as p,z as m}from"./vendor-chart-Dw-P17PN.js";import{t as ee}from"./switch-CpihU-Bq.js";import{t as te}from"./file-BEBKIB3d.js";import{t as h}from"./folder-l95IzSNw.js";import{t as ne}from"./mouse-pointer-2-B08HzOwW.js";import{t as g}from"./pencil-f21Vtqty.js";import{t as _}from"./plus-BMzVPasG.js";import{t as v}from"./shield-CK7NS6Gf.js";import{t as y}from"./terminal-Clq9LUIa.js";import{t as b}from"./wand-sparkles-D8Xtkkgr.js";import{$a as x}from"./constants-GmVIn7tC.js";import{D as S,Fa as C,Ia as w,Ma as T,Qa as E,Ra as D,Wi as O,k,oo as A}from"./index-BYbC-2BV.js";var j=D(`arrow-up-down`,[[`path`,{d:`m21 16-4 4-4-4`,key:`f6ql7i`}],[`path`,{d:`M17 20V4`,key:`1ejh1v`}],[`path`,{d:`m3 8 4-4 4 4`,key:`11wl7u`}],[`path`,{d:`M7 4v16`,key:`1glfcx`}]]),M=D(`camera`,[[`path`,{d:`M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z`,key:`18u6gg`}],[`circle`,{cx:`12`,cy:`13`,r:`3`,key:`1vg3eu`}]]),N=D(`keyboard`,[[`path`,{d:`M10 8h.01`,key:`1r9ogq`}],[`path`,{d:`M12 12h.01`,key:`1mp3jc`}],[`path`,{d:`M14 8h.01`,key:`1primd`}],[`path`,{d:`M16 12h.01`,key:`1l6xoz`}],[`path`,{d:`M18 8h.01`,key:`emo2bl`}],[`path`,{d:`M6 8h.01`,key:`x9i8wu`}],[`path`,{d:`M7 16h10`,key:`wp8him`}],[`path`,{d:`M8 12h.01`,key:`czm47f`}],[`rect`,{width:`20`,height:`16`,x:`2`,y:`4`,rx:`2`,key:`18n3k1`}]]),P=D(`move`,[[`path`,{d:`M12 2v20`,key:`t6zp3m`}],[`path`,{d:`m15 19-3 3-3-3`,key:`11eu04`}],[`path`,{d:`m19 9 3 3-3 3`,key:`1mg7y2`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}],[`path`,{d:`m5 9-3 3 3 3`,key:`j64kie`}],[`path`,{d:`m9 5 3-3 3 3`,key:`l8vdw6`}]]),F=m({name:`LocalToolsSetting`,components:{MetaTag:C,StatusBadge:w,AddIcon:_,ElButton:E,ElSwitch:ee,ElInput:A,FolderIcon:h,MagicIcon:b,SecurityIcon:v},data(){return{roots:[],workingDir:``,pickingWorkingDir:!1,tools:[],mcpServers:[],mcpUid:0,mcpStatuses:[],mcpBusy:null,savingMcp:!1,mcpSavedTip:!1,mcpError:``,grants:null,perm:null,computerUse:!1,computerTools:[],computerGrants:{},cuBusy:null,builtinTools:[],mcpTools:[],toolGrants:{},builtinBusy:null,savingCU:!1,preauthorizing:!1,saving:!1,savedTip:!1,a11yEnabled:!1,xhsSkill:null,xhsLoading:!1,xhsInstalling:!1,xhsError:``,onFocus:null,cuOff:null,a11yPoll:null,refreshingA11y:!1}},computed:{desktop(){return!!k()},android(){return x()},canInstallXhs(){return this.a11yEnabled&&this.computerUse}},async mounted(){let e=k();if(!e)return;let t=await e.getConfig();this.roots=t.roots,this.workingDir=t.workingDir??``,this.computerUse=t.computerUse===!0,this.mcpServers=(t.mcp??[]).map(e=>({_uid:this.mcpUid++,id:e.id,command:e.command,argsText:(e.args??[]).join(`
2
- `),envText:Object.entries(e.env??{}).map(([e,t])=>`${e}=${t}`).join(`
3
- `),enabled:e.enabled!==!1})),this.mcpStatuses=await e.mcp?.status()??[],this.tools=(await e.listTools()).map(e=>e.name),this.computerTools=await e.computerTools?.()??[],this.builtinTools=await e.builtinTools?.()??[],this.mcpTools=await e.mcpTools?.()??[];let n=await e.perm?.status();n?.mac&&(this.perm=n),await this.loadGrants(),this.android&&(await this.refreshA11y(),this.fetchXhsSkill(),this.onFocus=()=>{document.visibilityState===`visible`&&this.refreshA11y()},document.addEventListener(`visibilitychange`,this.onFocus),this.a11yPoll=window.setInterval(()=>{document.visibilityState===`visible`&&this.refreshA11y()},3e3)),this.cuOff=e.onComputerUseDisabled?.(()=>{this.computerUse=!1})??null},beforeUnmount(){this.cuOff?.(),this.onFocus&&document.removeEventListener(`visibilitychange`,this.onFocus),this.a11yPoll&&clearInterval(this.a11yPoll)},methods:{async refreshA11y(){if(!this.refreshingA11y){this.refreshingA11y=!0;try{let e=await k()?.perm?.status();this.a11yEnabled=e?.accessibility===!0}finally{this.refreshingA11y=!1}}},async openAndroidAccessibility(){await k()?.perm?.openPane(`accessibility`)},async fetchXhsSkill(){this.xhsLoading=!0,this.xhsError=``;try{let e=await O.get(`/skills/`,{baseURL:`${T()}/api/v1`,params:{q:`xhs-dm`,limit:10}}),t=Array.isArray(e.data?.items)?e.data.items:[];this.xhsSkill=t.find(e=>e.identifier?.endsWith(`/xhs-dm`))??null}catch(e){console.warn(`[LocalTools] fetch xhs skill failed`,e),this.xhsSkill=null,this.xhsError=this.$t(`common.settings.localToolsAndroidSkillsLoadFailed`)}finally{this.xhsLoading=!1}},async installXhs(){let e=this.xhsSkill;if(!(!e||e.installed)){this.xhsInstalling=!0,this.xhsError=``;try{await O.post(`/skills/${e.id}/install/`,{},{baseURL:`${T()}/api/v1`}),e.installed=!0}catch(t){t?.response?.status===409?e.installed=!0:this.xhsError=this.$t(`common.settings.localToolsAndroidSkillsInstallFailed`)}finally{this.xhsInstalling=!1}}},async loadGrants(){let e=k();if(!e?.grants){this.grants=null;return}let t=await e.grants.list(),n={},r={},i=new Set(this.builtinTools.map(e=>e.name)),a=new Set(this.mcpTools.map(e=>e.name)),o=[];for(let e of t){if(e.startsWith(`computer.`)&&!e.includes(`:`)){n[e]=!0;continue}if(!e.includes(`:`)&&(i.has(e)||a.has(e))){r[e]=!0;continue}if(e.startsWith(`dir:`)){let t=e.slice(4),n=t.indexOf(`:`);if(n>0){o.push({key:e,name:t.slice(0,n),input:`📁 ${t.slice(n+1)}`});continue}}let t=e.indexOf(`:{`),s=t>=0?t:e.indexOf(`:`);o.push({key:e,name:s>=0?e.slice(0,s):e,input:s>=0?e.slice(s+1):``})}this.computerGrants=n,this.toolGrants=r,this.grants=o},async chooseWorkingDir(){if(!this.pickingWorkingDir){this.pickingWorkingDir=!0;try{let e=await k()?.pickFolder();if(!e)return;let t=await k()?.getConfig();await k()?.saveConfig({roots:t?.roots??this.roots,mcp:t?.mcp??[],computerUse:this.computerUse,workingDir:e}),this.workingDir=e}finally{this.pickingWorkingDir=!1}}},async addFolder(){let e=await k()?.pickFolder();e&&!this.roots.includes(e)&&this.roots.push(e)},removeRoot(e){this.roots.splice(e,1)},addMcp(){this.mcpServers.push({_uid:this.mcpUid++,id:``,command:``,argsText:``,envText:``,enabled:!0})},removeMcp(e){this.mcpServers.splice(e,1)},mcpStatusFor(e){let t=e.trim();return this.mcpStatuses.find(e=>e.id===t)},mcpBadgeType(e){let t=this.mcpStatusFor(e)?.status;return t===`connected`?`success`:t===`failed`?`danger`:`info`},mcpBadgeText(e){let t=this.mcpStatusFor(e);return this.mcpBusy===e.trim()?this.$t(`common.settings.localToolsMcpConnecting`):t?t.status===`connected`?this.$t(`common.settings.localToolsMcpConnected`,{n:t.toolCount}):t.status===`disabled`?this.$t(`common.settings.localToolsMcpDisabled`):this.$t(`common.settings.localToolsMcpFailed`):this.$t(`common.settings.localToolsMcpNotSaved`)},mcpErrorFor(e){let t=this.mcpStatusFor(e);return t?.status===`failed`&&t.error?t.error:``},buildMcpPayload(){this.mcpError=``;let e=[],t=new Set;for(let n of this.mcpServers){let r=n.id.trim(),i=n.command.trim();if(!r||!i)return this.mcpError=this.$t(`common.settings.localToolsMcpNameRequired`),null;if(!/^[A-Za-z0-9_-]+$/.test(r))return this.mcpError=this.$t(`common.settings.localToolsMcpNameInvalid`),null;if(t.has(r))return this.mcpError=this.$t(`common.settings.localToolsMcpDuplicateName`),null;t.add(r);let a=n.argsText.split(`
4
- `).map(e=>e.trim()).filter(Boolean),o={};for(let e of n.envText.split(`
5
- `)){let t=e.trim();if(!t)continue;let n=t.indexOf(`=`);n<=0||(o[t.slice(0,n).trim()]=t.slice(n+1).trim())}let s={id:r,command:i,args:a,enabled:n.enabled!==!1};Object.keys(o).length&&(s.env=o),e.push(s)}return e},async saveMcp(){let e=this.buildMcpPayload();if(!e)return!1;this.savingMcp=!0;try{let t=await k()?.getConfig();return await k()?.saveConfig({roots:t?.roots??this.roots,mcp:e,computerUse:this.computerUse}),await this.refreshMcpStatus(),this.mcpSavedTip=!0,setTimeout(()=>this.mcpSavedTip=!1,2e3),!0}finally{this.savingMcp=!1}},async refreshMcpStatus(){let e=k();e&&(this.mcpStatuses=await e.mcp?.status()??[],this.tools=(await e.listTools())?.map(e=>e.name)??this.tools,this.mcpTools=await e.mcpTools?.()??[],await this.loadGrants())},async onToggleMcpEnabled(e){await this.saveMcp()||(e.enabled=!e.enabled)},async reconnectMcp(e){let t=e.id.trim();if(!t||!e.command.trim())return;let n=this.buildMcpPayload();if(n){this.mcpBusy=t;try{let e=await k()?.getConfig();await k()?.saveConfig({roots:e?.roots??this.roots,mcp:n,computerUse:this.computerUse}),await k()?.mcp?.reconnect(t),await this.refreshMcpStatus()}finally{this.mcpBusy=null}}},async open(e){await k()?.perm?.openPane(e)},async save(){this.saving=!0;let e=await k()?.getConfig();await k()?.saveConfig({roots:this.roots,mcp:e?.mcp??[],computerUse:this.computerUse}),this.saving=!1,this.savedTip=!0,setTimeout(()=>this.savedTip=!1,2e3)},async onToggleComputerUse(e){this.savingCU=!0;let t=await k()?.getConfig();if(await k()?.saveConfig({roots:t?.roots??this.roots,mcp:t?.mcp??[],computerUse:e===!0}),this.savingCU=!1,e===!0&&this.android){let e=(await k()?.perm?.status())?.accessibility===!0;this.a11yEnabled=e,e||await this.openAndroidAccessibility()}},async preauthorizeAll(){let e=k();if(e?.preauthorizeComputerUse){this.preauthorizing=!0;try{let t=await e.preauthorizeComputerUse();this.computerUse=t.computerUse===!0,t.perm?.mac&&(this.perm=t.perm),await this.loadGrants()}finally{this.preauthorizing=!1}}},async onToggleComputerTool(e,t){let n=k();if(n){this.cuBusy=e;try{if(t===!0){let t=await n.preauthorizeComputerUse?.([e]);t&&(this.computerUse=t.computerUse===!0,t.perm?.mac&&(this.perm=t.perm))}else await n.grants?.revoke(e);await this.loadGrants()}finally{this.cuBusy=null}}},cuLabel(e){let t=`common.settings.localToolsCu${this.cuSuffix(e)}`,n=this.$t(t);return n===t?e.replace(/^computer\./,``):n},cuIcon(e){return{screenshot:M,click:ne,move:P,type:N,key:N,scroll:j}[e.replace(/^computer\./,``)]??v},cuSuffix(e){let t=e.replace(/^computer\./,``);return t.charAt(0).toUpperCase()+t.slice(1)},async onToggleBuiltinTool(e,t){let n=k();if(n?.grants){this.builtinBusy=e;try{t===!0?(await n.grants.grantToolWide?.(e))?.ok||(this.toolGrants={...this.toolGrants,[e]:!1}):await n.grants.revoke(e),await this.loadGrants()}finally{this.builtinBusy=null}}},builtinIcon(e){return e===`shell.run_command`?y:e===`fs.write_file`?g:e===`fs.read_file`?te:e===`fs.list_dir`?h:v},async revoke(e){await k()?.grants?.revoke(e),await this.loadGrants()},async revokeAll(){await k()?.grants?.clear(),await this.loadGrants()}}}),I=e({default:()=>$}),L={class:`settings-list card-gap local-tools-setting`},R={key:0,class:`hint muted`},z={key:0},B={class:`section-head`},V={class:`muted`},H={class:`perm-row`},U={class:`perm-name`},W={key:1},G={class:`section-head`},K={class:`muted`},q={class:`rows`},J={class:`path`},Y={key:0,class:`row muted empty`},X={class:`actions`},Z={key:0,class:`muted saved-tip`},re={key:0,class:`muted tools`},ie={key:2},ae={class:`section-head`},oe={class:`muted`},se={class:`rows`},ce={key:0,class:`row`},le={class:`path`},ue={key:1,class:`row muted empty`},de={class:`section-head`},fe={class:`muted`},pe={key:0,class:`rows`},me={class:`mcp-fields`},he={class:`mcp-head`},ge={class:`mcp-grid`},_e={class:`mcp-flabel`},ve={class:`mcp-flabel`},ye={class:`mcp-flabel top`},be={class:`mcp-flabel top`},xe={key:0,class:`mcp-row-error`},Se={key:1,class:`muted`},Ce={class:`muted mcp-platform-hint`},we={class:`actions`},Te={key:0,class:`muted saved-tip`},Ee={key:1,class:`mcp-error`},De={key:3},Oe={class:`section-head`},ke={class:`muted`},Ae={class:`rows`},je={class:`grant`},Me={class:`grant-name`},Ne={class:`grant-input`},Pe={key:0,class:`row muted empty`},Fe={key:4},Ie={class:`section-head`},Le={class:`muted`},Re={class:`rows`},ze={class:`cu-action`},Be={class:`cu-action-name`},Ve={class:`grant-name`},He={class:`cu-action-desc`},Ue={key:5},We={class:`section-head`},Ge={class:`muted`},Ke={class:`rows`},qe={class:`cu-action`},Je={class:`cu-action-name`},Ye={class:`grant-name`},Xe={class:`cu-action-desc`},Ze={class:`section-head`},Qe={class:`muted`},$e={key:0,class:`perm-row cu-ready-row`},et={class:`perm-name`},tt={class:`section-head sub`},nt={class:`muted`},rt={class:`rows`},it={class:`cu-action`},at={class:`cu-action-name`},ot={class:`cu-action-desc`},st={key:6},ct={class:`section-head`},lt={class:`muted`},ut={class:`rows`},dt={key:0,class:`row`},ft={class:`cu-action`},pt={class:`cu-action-name`},mt={class:`cu-action-desc`},ht={key:1,class:`row muted empty`},gt={key:2,class:`row muted empty`},_t={key:0,class:`muted`},vt={key:1,class:`muted saved-tip`},yt={key:2,class:`mcp-error`},bt={key:7},Q={class:`section-head`},xt={class:`muted`},St={class:`perm-row`},Ct={class:`perm-name`},wt={class:`perm-row`},Tt={class:`perm-name`},Et={class:`perm-row`},Dt={class:`perm-name`};function Ot(e,m,ee,te,h,ne){let g=c(`status-badge`),_=c(`el-button`),v=c(`add-icon`),y=c(`folder-icon`),b=c(`el-switch`),x=c(`el-input`),S=c(`security-icon`),C=c(`meta-tag`),w=c(`MagicIcon`),T=c(`magic-icon`);return p(),o(`div`,L,[e.desktop?(p(),o(s,{key:1},[e.android?(p(),o(`section`,z,[t(`div`,B,[t(`h3`,null,r(e.$t(`common.settings.localToolsPermsTitle`)),1)]),t(`p`,V,r(e.$t(`common.settings.localToolsAndroidPermHint`)),1),t(`div`,H,[t(`span`,U,r(e.$t(`common.settings.localToolsPermAccessibility`)),1),i(g,{tone:e.a11yEnabled?`success`:`info`,density:`compact`},{default:u(()=>[n(r(e.a11yEnabled?e.$t(`common.settings.localToolsGranted`):e.$t(`common.settings.localToolsNotGranted`)),1)]),_:1},8,[`tone`]),i(_,{size:`small`,type:`primary`,onClick:e.openAndroidAccessibility},{default:u(()=>[n(r(e.$t(`common.settings.localToolsOpen`)),1)]),_:1},8,[`onClick`])])])):a(``,!0),e.android?a(``,!0):(p(),o(`section`,W,[t(`div`,G,[t(`h3`,null,r(e.$t(`common.settings.localToolsFoldersTitle`)),1),i(_,{size:`small`,type:`primary`,onClick:e.addFolder},{default:u(()=>[i(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(e.$t(`common.settings.localToolsAddFolder`)),1)]),_:1},8,[`onClick`])]),t(`p`,K,r(e.$t(`common.settings.localToolsFoldersHint`)),1),t(`ul`,q,[(p(!0),o(s,null,d(e.roots,(a,s)=>(p(),o(`li`,{key:a,class:`row`},[i(y,{class:`row-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(`span`,J,r(a),1),i(_,{size:`small`,text:``,type:`danger`,onClick:t=>e.removeRoot(s)},{default:u(()=>[n(r(e.$t(`common.settings.localToolsRemove`)),1)]),_:1},8,[`onClick`])]))),128)),e.roots.length?a(``,!0):(p(),o(`li`,Y,r(e.$t(`common.settings.localToolsNoFolders`)),1))]),t(`div`,X,[i(_,{size:`small`,type:`primary`,loading:e.saving,onClick:e.save},{default:u(()=>[n(r(e.$t(`common.settings.localToolsSave`)),1)]),_:1},8,[`loading`,`onClick`]),e.savedTip?(p(),o(`span`,Z,r(e.$t(`common.settings.localToolsSaved`)),1)):a(``,!0)]),e.tools.length?(p(),o(`p`,re,r(e.$t(`common.settings.localToolsActiveTools`))+`: `+r(e.tools.join(`, `)),1)):a(``,!0)])),e.android?a(``,!0):(p(),o(`section`,ie,[t(`div`,ae,[t(`h3`,null,r(e.$t(`common.settings.localToolsWorkingDirTitle`)),1),i(_,{size:`small`,type:`primary`,loading:e.pickingWorkingDir,onClick:e.chooseWorkingDir},{default:u(()=>[i(y,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(e.workingDir?e.$t(`common.settings.localToolsWorkingDirChange`):e.$t(`common.settings.localToolsAddFolder`)),1)]),_:1},8,[`loading`,`onClick`])]),t(`p`,oe,r(e.$t(`common.settings.localToolsWorkingDirHint`)),1),t(`ul`,se,[e.workingDir?(p(),o(`li`,ce,[i(y,{class:`row-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(`span`,le,r(e.workingDir),1)])):(p(),o(`li`,ue,r(e.$t(`common.settings.localToolsWorkingDirNone`)),1))])])),t(`section`,null,[t(`div`,de,[t(`h3`,null,r(e.$t(`common.settings.localToolsMcpTitle`)),1),i(_,{size:`small`,type:`primary`,onClick:e.addMcp},{default:u(()=>[i(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(e.$t(`common.settings.localToolsMcpAdd`)),1)]),_:1},8,[`onClick`])]),t(`p`,fe,r(e.$t(`common.settings.localToolsMcpHint`)),1),e.mcpServers.length?(p(),o(`ul`,pe,[(p(!0),o(s,null,d(e.mcpServers,(s,c)=>(p(),o(`li`,{key:s._uid,class:`row mcp-row`},[t(`div`,me,[t(`div`,he,[i(g,{tone:e.mcpBadgeType(s.id),density:`compact`},{default:u(()=>[n(r(e.mcpBadgeText(s.id)),1)]),_:2},1032,[`tone`]),m[4]||=t(`span`,{class:`mcp-spacer`},null,-1),i(b,{modelValue:s.enabled,"onUpdate:modelValue":e=>s.enabled=e,size:`small`,"active-text":e.$t(`common.settings.localToolsMcpEnabled`),"inline-prompt":``,onChange:t=>e.onToggleMcpEnabled(s)},null,8,[`modelValue`,`onUpdate:modelValue`,`active-text`,`onChange`]),i(_,{size:`small`,text:``,loading:e.mcpBusy===s.id,disabled:!s.id||!s.command,onClick:t=>e.reconnectMcp(s)},{default:u(()=>[n(r(e.$t(`common.settings.localToolsMcpReconnect`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`]),i(_,{size:`small`,text:``,type:`danger`,onClick:t=>e.removeMcp(c)},{default:u(()=>[n(r(e.$t(`common.settings.localToolsRemove`)),1)]),_:1},8,[`onClick`])]),t(`div`,ge,[t(`label`,_e,r(e.$t(`common.settings.localToolsMcpName`)),1),i(x,{modelValue:s.id,"onUpdate:modelValue":e=>s.id=e,placeholder:e.$t(`common.settings.localToolsMcpNamePlaceholder`)},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]),t(`label`,ve,r(e.$t(`common.settings.localToolsMcpCommand`)),1),i(x,{modelValue:s.command,"onUpdate:modelValue":e=>s.command=e,placeholder:e.$t(`common.settings.localToolsMcpCommandPlaceholder`)},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]),t(`label`,ye,r(e.$t(`common.settings.localToolsMcpArgs`)),1),i(x,{modelValue:s.argsText,"onUpdate:modelValue":e=>s.argsText=e,type:`textarea`,rows:2,placeholder:e.$t(`common.settings.localToolsMcpArgsHint`)},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]),t(`label`,be,r(e.$t(`common.settings.localToolsMcpEnv`)),1),i(x,{modelValue:s.envText,"onUpdate:modelValue":e=>s.envText=e,type:`textarea`,rows:2,placeholder:e.$t(`common.settings.localToolsMcpEnvHint`)},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),e.mcpErrorFor(s.id)?(p(),o(`p`,xe,r(e.mcpErrorFor(s.id)),1)):a(``,!0)])]))),128))])):(p(),o(`p`,Se,r(e.$t(`common.settings.localToolsMcpNoServers`)),1)),t(`p`,Ce,r(e.$t(`common.settings.localToolsMcpPlatformHint`)),1),t(`div`,we,[i(_,{size:`small`,type:`primary`,loading:e.savingMcp,onClick:e.saveMcp},{default:u(()=>[n(r(e.$t(`common.settings.localToolsSave`)),1)]),_:1},8,[`loading`,`onClick`]),e.mcpSavedTip?(p(),o(`span`,Te,r(e.$t(`common.settings.localToolsSaved`)),1)):a(``,!0),e.mcpError?(p(),o(`span`,Ee,r(e.mcpError),1)):a(``,!0)])]),e.grants!==null&&!e.android?(p(),o(`section`,De,[t(`div`,Oe,[t(`h3`,null,r(e.$t(`common.settings.localToolsGrantsTitle`)),1),e.grants.length?(p(),l(_,{key:0,size:`small`,text:``,type:`danger`,onClick:e.revokeAll},{default:u(()=>[n(r(e.$t(`common.settings.localToolsRevokeAll`)),1)]),_:1},8,[`onClick`])):a(``,!0)]),t(`p`,ke,r(e.$t(`common.settings.localToolsGrantsHint`)),1),t(`ul`,Ae,[(p(!0),o(s,null,d(e.grants,a=>(p(),o(`li`,{key:a.key,class:`row`},[i(S,{class:`row-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(`span`,je,[t(`code`,Me,r(a.name),1),t(`span`,Ne,r(a.input),1)]),i(_,{size:`small`,type:`danger`,onClick:t=>e.revoke(a.key)},{default:u(()=>[n(r(e.$t(`common.settings.localToolsRevoke`)),1)]),_:1},8,[`onClick`])]))),128)),e.grants.length?a(``,!0):(p(),o(`li`,Pe,r(e.$t(`common.settings.localToolsNoGrants`)),1))])])):a(``,!0),e.builtinTools.length&&!e.android?(p(),o(`section`,Fe,[t(`div`,Ie,[t(`h3`,null,r(e.$t(`common.settings.localToolsBuiltinTitle`)),1)]),t(`p`,Le,r(e.$t(`common.settings.localToolsBuiltinHint`)),1),t(`ul`,Re,[(p(!0),o(s,null,d(e.builtinTools,s=>(p(),o(`li`,{key:s.name,class:`row`},[(p(),l(f(e.builtinIcon(s.name)),{class:`row-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),t(`span`,ze,[t(`span`,Be,[t(`code`,Ve,r(s.name),1),s.name===`shell.run_command`?(p(),l(C,{key:0,tone:`danger`,density:`compact`},{default:u(()=>[n(r(e.$t(`common.settings.localToolsBuiltinRisky`)),1)]),_:1})):a(``,!0)]),t(`span`,He,r(s.description),1)]),i(b,{"model-value":e.toolGrants[s.name]===!0,loading:e.builtinBusy===s.name,disabled:!!e.builtinBusy,onChange:t=>e.onToggleBuiltinTool(s.name,t)},null,8,[`model-value`,`loading`,`disabled`,`onChange`])]))),128))])])):a(``,!0),e.mcpTools.length&&!e.android?(p(),o(`section`,Ue,[t(`div`,We,[t(`h3`,null,r(e.$t(`common.settings.localToolsMcpToolsTitle`)),1)]),t(`p`,Ge,r(e.$t(`common.settings.localToolsMcpToolsHint`)),1),t(`ul`,Ke,[(p(!0),o(s,null,d(e.mcpTools,s=>(p(),o(`li`,{key:s.name,class:`row`},[i(w,{class:`row-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(`span`,qe,[t(`span`,Je,[t(`code`,Ye,r(s.name),1),s.writes?(p(),l(C,{key:0,tone:`danger`,density:`compact`},{default:u(()=>[n(r(e.$t(`common.settings.localToolsBuiltinRisky`)),1)]),_:1})):a(``,!0)]),t(`span`,Xe,r(s.description),1)]),i(b,{"model-value":e.toolGrants[s.name]===!0,loading:e.builtinBusy===s.name,disabled:!!e.builtinBusy,onChange:t=>e.onToggleBuiltinTool(s.name,t)},null,8,[`model-value`,`loading`,`disabled`,`onChange`])]))),128))])])):a(``,!0),t(`section`,null,[t(`div`,Ze,[t(`h3`,null,r(e.$t(`common.settings.localToolsComputerUseTitle`)),1),i(b,{modelValue:e.computerUse,"onUpdate:modelValue":m[0]||=t=>e.computerUse=t,loading:e.savingCU,onChange:e.onToggleComputerUse},null,8,[`modelValue`,`loading`,`onChange`])]),t(`p`,Qe,r(e.$t(`common.settings.localToolsComputerUseHint`)),1),e.android&&e.computerUse?(p(),o(`div`,$e,[t(`span`,et,r(e.$t(`common.settings.localToolsCuA11yLabel`)),1),i(g,{tone:e.a11yEnabled?`success`:`danger`,density:`compact`},{default:u(()=>[n(r(e.a11yEnabled?e.$t(`common.settings.localToolsCuReady`):e.$t(`common.settings.localToolsCuA11yMissing`)),1)]),_:1},8,[`tone`]),e.a11yEnabled?a(``,!0):(p(),l(_,{key:0,size:`small`,type:`primary`,onClick:e.openAndroidAccessibility},{default:u(()=>[n(r(e.$t(`common.settings.localToolsOpen`)),1)]),_:1},8,[`onClick`]))])):a(``,!0),e.computerTools.length?(p(),o(s,{key:1},[t(`div`,tt,[t(`h4`,null,r(e.$t(`common.settings.localToolsCuActionsTitle`)),1),i(_,{size:`small`,text:``,type:`primary`,loading:e.preauthorizing,onClick:e.preauthorizeAll},{default:u(()=>[n(r(e.$t(`common.settings.localToolsPreauthorizeAll`)),1)]),_:1},8,[`loading`,`onClick`])]),t(`p`,nt,r(e.$t(`common.settings.localToolsCuActionsHint`)),1),t(`ul`,rt,[(p(!0),o(s,null,d(e.computerTools,n=>(p(),o(`li`,{key:n.name,class:`row`},[(p(),l(f(e.cuIcon(n.name)),{class:`row-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),t(`span`,it,[t(`span`,at,r(e.cuLabel(n.name)),1),t(`span`,ot,r(n.description),1)]),i(b,{"model-value":e.computerGrants[n.name]===!0,loading:e.cuBusy===n.name,disabled:!!e.cuBusy||e.preauthorizing,onChange:t=>e.onToggleComputerTool(n.name,t)},null,8,[`model-value`,`loading`,`disabled`,`onChange`])]))),128))])],64)):a(``,!0)]),e.android?(p(),o(`section`,st,[t(`div`,ct,[t(`h3`,null,r(e.$t(`common.settings.localToolsAndroidSkillsTitle`)),1)]),t(`p`,lt,r(e.$t(`common.settings.localToolsAndroidSkillsHint`)),1),t(`ul`,ut,[e.xhsSkill?(p(),o(`li`,dt,[i(T,{class:`row-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(`span`,ft,[t(`span`,pt,r(e.$t(`common.settings.localToolsAndroidSkillsXhsName`)),1),t(`span`,mt,r(e.$t(`common.settings.localToolsAndroidSkillsXhsDesc`)),1)]),e.xhsSkill.installed?(p(),l(g,{key:0,tone:`success`,density:`compact`},{default:u(()=>[n(r(e.$t(`common.settings.localToolsAndroidSkillsInstalled`)),1)]),_:1})):(p(),l(_,{key:1,size:`small`,type:`primary`,loading:e.xhsInstalling,disabled:!e.canInstallXhs,onClick:e.installXhs},{default:u(()=>[n(r(e.$t(`common.settings.localToolsAndroidSkillsInstall`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`]))])):e.xhsLoading?(p(),o(`li`,ht,r(e.$t(`common.settings.localToolsAndroidSkillsLoading`)),1)):e.xhsError?a(``,!0):(p(),o(`li`,gt,r(e.$t(`common.settings.localToolsAndroidSkillsUnavailable`)),1))]),e.xhsSkill&&!e.xhsSkill.installed&&!e.canInstallXhs?(p(),o(`p`,_t,r(e.$t(`common.settings.localToolsAndroidSkillsNeedComputerUse`)),1)):a(``,!0),e.xhsSkill&&e.xhsSkill.installed?(p(),o(`p`,vt,r(e.$t(`common.settings.localToolsAndroidSkillsNextTurn`)),1)):a(``,!0),e.xhsError?(p(),o(`p`,yt,r(e.xhsError),1)):a(``,!0)])):a(``,!0),e.perm?(p(),o(`section`,bt,[t(`div`,Q,[t(`h3`,null,r(e.$t(`common.settings.localToolsPermsTitle`)),1)]),t(`p`,xt,r(e.$t(`common.settings.localToolsPermsHint`)),1),t(`div`,St,[t(`span`,Ct,r(e.$t(`common.settings.localToolsPermFullDisk`)),1),i(g,{tone:e.perm.fullDisk?`success`:`info`,density:`compact`},{default:u(()=>[n(r(e.perm.fullDisk?e.$t(`common.settings.localToolsGranted`):e.$t(`common.settings.localToolsNotGranted`)),1)]),_:1},8,[`tone`]),i(_,{size:`small`,type:`primary`,onClick:m[1]||=t=>e.open(`fullDisk`)},{default:u(()=>[n(r(e.$t(`common.settings.localToolsOpen`)),1)]),_:1})]),t(`div`,wt,[t(`span`,Tt,r(e.$t(`common.settings.localToolsPermScreen`)),1),i(g,{tone:e.perm.screen===`granted`?`success`:`info`,density:`compact`},{default:u(()=>[n(r(e.perm.screen===`granted`?e.$t(`common.settings.localToolsGranted`):e.$t(`common.settings.localToolsNotGranted`)),1)]),_:1},8,[`tone`]),i(_,{size:`small`,type:`primary`,onClick:m[2]||=t=>e.open(`screen`)},{default:u(()=>[n(r(e.$t(`common.settings.localToolsOpen`)),1)]),_:1})]),t(`div`,Et,[t(`span`,Dt,r(e.$t(`common.settings.localToolsPermAccessibility`)),1),i(g,{tone:e.perm.accessibility?`success`:`info`,density:`compact`},{default:u(()=>[n(r(e.perm.accessibility?e.$t(`common.settings.localToolsGranted`):e.$t(`common.settings.localToolsNotGranted`)),1)]),_:1},8,[`tone`]),i(_,{size:`small`,type:`primary`,onClick:m[3]||=t=>e.open(`accessibility`)},{default:u(()=>[n(r(e.$t(`common.settings.localToolsOpen`)),1)]),_:1})])])):a(``,!0)],64)):(p(),o(`p`,R,r(e.$t(`common.settings.localToolsDesktopOnly`)),1))])}var $=S(F,[[`render`,Ot],[`__scopeId`,`data-v-a7df0f21`]]);export{I as n,$ as t};
@@ -1 +0,0 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,Gt as t,I as n,Jt as r,L as i,M as a,N as o,T as s,at as c,j as l,mt as u,tt as d,z as f}from"./vendor-chart-Dw-P17PN.js";import{t as p}from"./alert-BprQRUmf.js";import{c as m,v as ee}from"./vuex.esm-bundler-BV9tXD4i.js";import{t as h}from"./card-IQwqnRJR.js";import{n as g,t as _}from"./row-DNp_zRGz.js";import{a as v,i as y,n as b,r as x,t as S}from"./airwallexCheckout-BOMCtt32.js";import{t as C}from"./divider-Du_3kymg.js";import{t as w}from"./skeleton-Dj_a_iIP.js";import{t as T}from"./circle-check-GRq8kiSg.js";import{t as E}from"./copy-DnKHOq1a.js";import{Za as D,co as O,no as k}from"./constants-GmVIn7tC.js";import{D as A,En as te,Fa as j,Ga as M,Jr as N,On as ne,Qa as P,V as F}from"./index-BYbC-2BV.js";import{t as I}from"./CopyToClipboard-BQaEPLyt.js";var L=f({name:`PublicWechatPayDialog`,components:{ElDialog:M,ElButton:P,CopyIcon:E,QrCode:F,ElRow:_,ElCol:g,SuccessIcon:T},props:{order:{type:Object,required:!0},visible:{type:Boolean,required:!1,default:!1}},emits:[`hide`],data(){return{copied:!1,copiedTimer:void 0}},computed:{isMobileOutsideWechat(){return x()&&!b()},isMobileInsideWechat(){return x()&&b()},dialogWidth(){return this.isMobileOutsideWechat||this.isMobileInsideWechat?`90%`:`500px`}},unmounted(){this.copiedTimer&&clearTimeout(this.copiedTimer)},methods:{async onCopyLink(){let e=typeof window<`u`?window.location.href:``;if(!e)return;let t=!1;try{t=await ne(e,{debug:!1})}catch{t=!1}t?(this.copied=!0,this.copiedTimer&&clearTimeout(this.copiedTimer),this.copiedTimer=window.setTimeout(()=>{this.copied=!1},3e3)):ee.error(String(this.$t(`common.message.copyFailed`)||`Copy failed`))}}}),R={key:0,class:`wechat-pay-mobile text-center py-[20px] px-[10px]`},z={class:`text-[14px] mb-3 leading-relaxed`},B={class:`text-[12px] text-gray-500 mb-4 leading-relaxed`},V={key:1,class:`wechat-pay-longpress text-center py-[20px] px-[10px]`},H={class:`text-[14px] mb-4 leading-relaxed`},U={class:`paycode wechat`},W={class:`help-text block bg-[#00c800] text-white text-[14px] h-[35px] w-[240px] text-center leading-[35px] mt-[10px] mx-auto`};function G(t,s,f,p,m,ee){let h=c(`qr-code`),g=c(`success-icon`),_=c(`copy-icon`),v=c(`el-button`),y=c(`el-col`),b=c(`el-row`),x=c(`el-dialog`);return d(),l(x,{"model-value":t.visible,title:t.$t(`application.title.buyService`),width:t.dialogWidth,center:``,onClose:s[0]||=e=>t.$emit(`hide`)},{default:u(()=>[t.isMobileOutsideWechat?(d(),o(`div`,R,[e(`p`,z,r(t.$t(`order.message.wechatPayMobileScanTip`)),1),t.order?.pay_url?(d(),l(h,{key:0,value:t.order?.pay_url,size:220,class:`qrcode m-auto mb-3`,type:`image/png`,color:{dark:`#000000`,light:`#ffffff`}},null,8,[`value`])):a(``,!0),e(`p`,B,r(t.$t(`order.message.wechatPayMobileHint`)),1),i(v,{size:`default`,round:``,class:`w-[220px]`,"aria-label":t.copied?t.$t(`common.message.copied`):t.$t(`order.button.copyPayLink`),onClick:t.onCopyLink},{default:u(()=>[t.copied?(d(),l(g,{key:0,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(d(),l(_,{key:1,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),n(` `+r(t.copied?t.$t(`common.message.copied`):t.$t(`order.button.copyPayLink`)),1)]),_:1},8,[`aria-label`,`onClick`])])):t.isMobileInsideWechat?(d(),o(`div`,V,[e(`p`,H,r(t.$t(`order.message.wechatPayLongPressTip`)),1),t.order?.pay_url?(d(),l(h,{key:0,value:t.order?.pay_url,size:240,class:`qrcode mx-auto`,type:`image/png`,color:{dark:`#000000`,light:`#ffffff`}},null,8,[`value`])):a(``,!0)])):(d(),l(b,{key:2,class:`paycodes py-[30px] w-[500px] mx-auto`},{default:u(()=>[i(y,{span:12},{default:u(()=>[e(`div`,U,[t.order?.pay_url?(d(),l(h,{key:0,value:t.order?.pay_url,size:200,class:`qrcode m-auto w-[200px] h-[200px]`,type:`image/png`,color:{dark:`#000000`,light:`#ffffff`}},null,8,[`value`])):a(``,!0),e(`p`,W,r(t.$t(`order.message.wechatPayHelp`)),1)])]),_:1}),i(y,{span:12},{default:u(()=>[...s[1]||=[e(`div`,{class:`help-img`},[e(`img`,{src:`https://midas.gtimg.cn/enterprise/images/ep_sys_wx_tip.jpg`})],-1)]]),_:1})]),_:1}))]),_:1},8,[`model-value`,`title`,`width`])}var K=A(L,[[`render`,G]]),q=f({name:`PublicStripePayDialog`,components:{ElDialog:M},props:{order:{type:Object,required:!0},visible:{type:Boolean,required:!1,default:!1}},emits:[`hide`],watch:{visible:{handler(e){e&&this.order?.pay_url&&window.open(this.order.pay_url,`_blank`)}}}}),J={class:`text-center`};function Y(t,n,i,a,o,s){let f=c(`el-dialog`);return d(),l(f,{"model-value":t.visible,title:t.$t(`application.title.buyService`),width:`500px`,center:``,onClose:n[0]||=e=>t.$emit(`hide`)},{default:u(()=>[e(`p`,J,r(t.$t(`order.message.buyInExternalUrl`)),1)]),_:1},8,[`model-value`,`title`])}var X=A(q,[[`render`,Y]]),Z=f({name:`PublicAlipayPayDialog`,components:{ElDialog:M},props:{order:{type:Object,required:!0},visible:{type:Boolean,required:!1,default:!1}},emits:[`hide`],watch:{visible:{handler(e){e&&this.order?.pay_url&&window.open(this.order.pay_url,`_blank`)}}}}),re={class:`text-center`};function ie(t,n,i,a,o,s){let f=c(`el-dialog`);return d(),l(f,{"model-value":t.visible,title:t.$t(`application.title.buyService`),width:`500px`,center:``,onClose:n[0]||=e=>t.$emit(`hide`)},{default:u(()=>[e(`p`,re,r(t.$t(`order.message.buyInExternalUrl`)),1)]),_:1},8,[`model-value`,`title`])}var ae=A(Z,[[`render`,ie]]),oe=7e3,se=2e3,Q=function(e){return e.WechatPay=`WechatPay`,e.Stripe=`Stripe`,e.AliPay=`AliPay`,e.Card=`Card`,e.Airwallex=`Airwallex`,e}(Q||{}),ce=f({name:`OrderPublicPay`,components:{MetaTag:j,ElButton:P,ElRow:_,ElCol:g,ElCard:h,ElSkeleton:w,ElDivider:C,ElAlert:p,ElDescriptions:y,ElDescriptionsItem:v,PublicWechatPay:K,PublicStripePay:X,PublicAlipayPay:ae,CopyToClipboard:I},data(){return{PayWay:Q,OrderState:m,payWay:`WechatPay`,order:void 0,loading:!1,paying:!1,prepaying:!1}},computed:{id(){return this.$route.params?.id?.toString()??``},showPayment(){return!k()}},watch:{paying(e){e?this.startOrderPolling(se):this.stopOrderPolling()}},created(){this._orderRefreshTimer=void 0},mounted(){this.onFetchData()},beforeUnmount(){this.stopOrderPolling()},methods:{getPriceString:te,payWayLabel(e){return{WechatPay:this.$t(`order.title.wechatPay`),Stripe:this.$t(`order.title.stripe`),AliPay:this.$t(`order.title.aliPay`),Card:this.$t(`order.title.card`),Airwallex:this.$t(`order.title.card`)}[e]||e},onFetchData(){this.id&&(this.loading=!0,N.getPublic(this.id).then(({data:e})=>{this.order=e,e?.pay_way&&e.pay_way in Q&&(this.payWay=e.pay_way),this.loading=!1}).catch(()=>{this.order=void 0,this.loading=!1}))},startOrderPolling(e=0){this.stopOrderPolling();let t=async()=>{try{let{data:e}=await N.getPublic(this.id);if(this.order=e,e?.state===m.PAID||e?.state===m.FINISHED||e?.state===m.FAILED||e?.state===m.EXPIRED){this.paying=!1,this.stopOrderPolling();return}}catch{}this.paying&&(this._orderRefreshTimer=window.setTimeout(t,oe))};this._orderRefreshTimer=window.setTimeout(t,e)},stopOrderPolling(){let e=this._orderRefreshTimer;e&&(clearTimeout(e),this._orderRefreshTimer=void 0)},onRepay(){if(this.order?.pay_way===`Airwallex`){this.onPay();return}this.paying=!0},selectedPayWay(){return this.order?.pay_way===`Airwallex`||this.payWay===`Card`?`Airwallex`:this.payWay},onPay(){if(!this.id)return;this.prepaying=!0;let e=this.selectedPayWay(),t={pay_way:e};e===`Airwallex`&&O()&&(t.payment_contract=`airwallex_payment_intent`),e===`AliPay`&&(t.surface=D()),N.payPublic(this.id,t).then(async({data:t})=>{this.prepaying=!1;let{payment:n,...r}=t;if(r?.id&&(this.order=r,this.payWay=r.pay_way||this.payWay),e===`Airwallex`&&n){this.paying=!0,await S(n);return}this.order&&this.order.price&&this.order.price>0&&(this.paying=!0)}).catch(()=>{this.prepaying=!1,this.paying=!1})}}}),le={class:`title`},ue={key:0,class:`pt-5`},de={key:1,class:`pt-10 text-center`},fe={key:2,class:`order`},pe={key:0,class:`price current unfree`},$={key:1,class:`price free`},me={key:0,class:`payways mb-6`},he={class:`payname`},ge={class:`payname`},_e={class:`payname`},ve={key:1},ye={key:2};function be(f,p,m,ee,h,g){let _=c(`el-col`),v=c(`el-row`),y=c(`el-skeleton`),b=c(`el-alert`),x=c(`copy-to-clipboard`),S=c(`el-descriptions-item`),C=c(`meta-tag`),w=c(`el-descriptions`),T=c(`el-divider`),E=c(`el-button`),D=c(`el-card`),O=c(`public-wechat-pay`),k=c(`public-stripe-pay`),A=c(`public-alipay-pay`);return d(),o(s,null,[i(v,{class:`wrapper`},{default:u(()=>[i(_,{span:24},{default:u(()=>[i(v,null,{default:u(()=>[i(_,{span:24},{default:u(()=>[e(`h2`,le,r(f.$t(`order.title.info`)),1)]),_:1})]),_:1}),i(v,{class:`panel`},{default:u(()=>[i(_,{span:24},{default:u(()=>[i(D,{shadow:`never`},{default:u(()=>[i(v,null,{default:u(()=>[i(_,{xs:{span:22,offset:1},sm:{span:16,offset:4}},{default:u(()=>[f.loading?(d(),o(`div`,ue,[i(y,{animated:``})])):f.order?(d(),o(`div`,fe,[i(w,{column:1},{default:u(()=>[i(S,{label:f.$t(`order.field.id`)},{default:u(()=>[e(`span`,null,r(f.order.id),1),f.order.id?(d(),l(x,{key:0,content:f.order.id,class:`inline-block`},null,8,[`content`])):a(``,!0)]),_:1},8,[`label`]),i(S,{label:f.$t(`order.field.description`)},{default:u(()=>[n(r(f.order.description),1)]),_:1},8,[`label`]),f.order.pay_way?(d(),l(S,{key:0,label:f.$t(`order.field.payWay`)},{default:u(()=>[i(C,{tone:`info`,density:`compact`},{default:u(()=>[n(r(f.payWayLabel(f.order.pay_way)),1)]),_:1})]),_:1},8,[`label`])):a(``,!0),i(S,{label:f.$t(`order.field.createdAt`)},{default:u(()=>[n(r(f.$dayjs.format(f.order.created_at||``)),1)]),_:1},8,[`label`]),i(S,{label:f.$t(`order.field.price`)},{default:u(()=>[f.order.price&&f.order.price>0?(d(),o(`span`,pe,r(f.getPriceString({value:f.order.price})),1)):(d(),o(`span`,$,r(f.$t(`order.message.free`)),1))]),_:1},8,[`label`])]),_:1})])):(d(),o(`div`,de,[i(b,{title:f.$t(`order.message.publicPayNotFound`),type:`error`,"show-icon":``,closable:!1},null,8,[`title`])]))]),_:1})]),_:1}),f.order?.state===f.OrderState.PAID||f.order?.state===f.OrderState.FINISHED?(d(),l(v,{key:0,class:`mb-5`},{default:u(()=>[i(_,{xs:{span:22,offset:1},sm:{span:16,offset:4}},{default:u(()=>[i(T,{"border-style":`dashed`}),i(b,{title:f.$t(`order.message.paidSuccessfully`),type:`success`,"show-icon":``,closable:!1},null,8,[`title`])]),_:1})]),_:1})):a(``,!0),f.order?.state===f.OrderState.EXPIRED?(d(),l(v,{key:1,class:`mb-5`},{default:u(()=>[i(_,{xs:{span:22,offset:1},sm:{span:16,offset:4}},{default:u(()=>[i(T,{"border-style":`dashed`}),i(b,{title:f.$t(`order.message.orderExpired`),type:`error`,"show-icon":``,closable:!1},null,8,[`title`])]),_:1})]),_:1})):a(``,!0),f.order?.state===f.OrderState.FAILED?(d(),l(v,{key:2,class:`mb-5`},{default:u(()=>[i(_,{xs:{span:22,offset:1},sm:{span:16,offset:4}},{default:u(()=>[i(T,{"border-style":`dashed`}),i(b,{title:f.$t(`order.state.failed`),type:`error`,"show-icon":``,closable:!1},null,8,[`title`])]),_:1})]),_:1})):a(``,!0),f.order?.state===f.OrderState.PENDING&&f.showPayment?(d(),l(v,{key:3},{default:u(()=>[i(_,{xs:{span:22,offset:1},sm:{span:16,offset:4}},{default:u(()=>[i(T,{"border-style":`dashed`}),!f.order.pay_way&&f.order.price&&f.order.price>0?(d(),o(`div`,me,[e(`div`,{class:t({payway:!0,wechatpay:!0,active:f.payWay===f.PayWay.WechatPay}),onClick:p[0]||=e=>f.payWay=f.PayWay.WechatPay},[p[6]||=e(`span`,{class:`payicon wechatpay`},null,-1),e(`span`,he,r(f.$t(`order.title.wechatPay`)),1)],2),e(`div`,{class:t({payway:!0,alipay:!0,active:f.payWay===f.PayWay.AliPay}),onClick:p[1]||=e=>f.payWay=f.PayWay.AliPay},[p[7]||=e(`span`,{class:`payicon alipay`},null,-1),e(`span`,ge,r(f.$t(`order.title.aliPay`)),1)],2),e(`div`,{class:t({payway:!0,creditcard:!0,active:f.payWay===f.PayWay.Card}),onClick:p[2]||=e=>f.payWay=f.PayWay.Card},[p[8]||=e(`span`,{class:`payicon card`,"aria-hidden":`true`},null,-1),e(`span`,_e,r(f.$t(`order.title.card`)),1)],2)])):a(``,!0),f.order.pay_way?(d(),o(`div`,ye,[i(E,{type:`primary`,round:``,size:`large`,class:`btn-repay`,onClick:f.onRepay},{default:u(()=>[n(r(f.$t(`common.button.repay`)),1)]),_:1},8,[`onClick`])])):(d(),o(`div`,ve,[i(E,{loading:f.prepaying,round:``,type:`primary`,size:`large`,class:`btn-pay`,onClick:f.onPay},{default:u(()=>[n(r(f.$t(`common.button.pay`)),1)]),_:1},8,[`loading`,`onClick`])]))]),_:1})]),_:1})):a(``,!0)]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),f.order&&f.payWay===f.PayWay.WechatPay?(d(),l(O,{key:0,order:f.order,visible:f.paying,onHide:p[3]||=e=>f.paying=!1},null,8,[`order`,`visible`])):a(``,!0),f.order&&(f.payWay===f.PayWay.Stripe||f.payWay===f.PayWay.Card)?(d(),l(k,{key:1,order:f.order,visible:f.paying,onHide:p[4]||=e=>f.paying=!1},null,8,[`order`,`visible`])):a(``,!0),f.order&&f.payWay===f.PayWay.AliPay?(d(),l(A,{key:2,order:f.order,visible:f.paying,onHide:p[5]||=e=>f.paying=!1},null,8,[`order`,`visible`])):a(``,!0)],64)}var xe=A(ce,[[`render`,be],[`__scopeId`,`data-v-18414c7e`]]);export{xe as default};
@@ -1 +0,0 @@
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,Mt as s,N as c,Q as l,T as u,at as d,ft as f,j as p,k as m,mt as h,rt as g,tt as _,wt as v,z as y}from"./vendor-chart-Dw-P17PN.js";import{r as b,t as x}from"./select-CxPN3D9u.js";import{v as S}from"./vuex.esm-bundler-BV9tXD4i.js";import{t as ee}from"./pagination-CYVcmJmV.js";import{t as te}from"./search-CTbEtirV.js";import{n as ne}from"./chip-CNPdFg2A.js";import{$a as C,Xa as re,no as w,oo as T,to as ie,wa as ae}from"./constants-GmVIn7tC.js";import{D as E,Fa as D,Ga as O,Gi as k,Ma as oe,Qa as A,Ra as j,Wi as M,oo as se}from"./index-BYbC-2BV.js";import{t as ce}from"./VueMarkdown-CQ26Rk6o.js";var N=j(`cloud-upload`,[[`path`,{d:`M12 13v8`,key:`1l5pq0`}],[`path`,{d:`M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242`,key:`1pljnt`}],[`path`,{d:`m8 17 4-4 4 4`,key:`1quai1`}]]),P=j(`square-plus`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}],[`path`,{d:`M12 8v8`,key:`napkw2`}]]),le=j(`store`,[[`path`,{d:`M15 21v-5a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v5`,key:`slp6dd`}],[`path`,{d:`M17.774 10.31a1.12 1.12 0 0 0-1.549 0 2.5 2.5 0 0 1-3.451 0 1.12 1.12 0 0 0-1.548 0 2.5 2.5 0 0 1-3.452 0 1.12 1.12 0 0 0-1.549 0 2.5 2.5 0 0 1-3.77-3.248l2.889-4.184A2 2 0 0 1 7 2h10a2 2 0 0 1 1.653.873l2.895 4.192a2.5 2.5 0 0 1-3.774 3.244`,key:`o0xfot`}],[`path`,{d:`M4 10.95V19a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8.05`,key:`wn3emo`}]]),F=()=>({baseURL:`${oe()}/api/v1`}),I=new class{key=`skills/installed`;async list(e){return M.get(`/${this.key}/`,{...F(),params:e?{site_id:e}:void 0})}async get(e){return M.get(`/${this.key}/${e}/`,F())}async createMarkdown(e,t){return M.post(`/${this.key}/`,t?{...e,site_id:t}:e,F())}async createTarball(e,t){let n=new FormData;return n.append(`tarball`,e),t&&n.append(`site_id`,t),M.post(`/${this.key}/`,n,{...F(),headers:{"Content-Type":`multipart/form-data`}})}async update(e,t,n){return M.patch(`/${this.key}/${e}/`,t,{...F(),params:n?{site_id:n}:void 0})}async remove(e,t){return M.delete(`/${this.key}/${e}/`,{...F(),params:t?{site_id:t}:void 0})}async enable(e,t){return M.post(`/${this.key}/${e}/enable/`,void 0,{...F(),params:t?{site_id:t}:void 0})}async disable(e,t){return M.post(`/${this.key}/${e}/disable/`,void 0,{...F(),params:t?{site_id:t}:void 0})}async fetchFile(e,t,n){let r=await M.get(`/${this.key}/${e}/files/`,{...F(),params:{path:t,...n?{site_id:n}:{}},responseType:`arraybuffer`}),i=r.headers[`content-type`]||`application/octet-stream`;return{blob:new Blob([r.data],{type:i}),contentType:i}}},ue=new class{key=`skills`;async list(e={}){return k.get(`/${this.key}/`,{...F(),params:e})}async get(e,t){return k.get(`/${this.key}/${e}/`,{...F(),params:t?{site_id:t}:void 0})}async categories(){return k.get(`/${this.key}/categories/`,F())}async install(e,t={}){return M.post(`/${this.key}/${e}/install/`,t,F())}},de={list:e=>k.get(`/skills/marketplaces/`,{...F(),params:e,timeout:35e3}),install:(e,t)=>M.post(`/skills/marketplaces/install/`,{reference:e,...t?{site_id:t}:{}},{...F(),timeout:1e5})};function fe(){let e=new Set;ie()&&e.add(`desktop`),w()&&e.add(`ios`),C()&&e.add(`android`),T()&&e.add(`web`);let t=re();if(t===`mac`)e.add(`mac`);else if(t===`windows`)e.add(`windows`);else if(typeof navigator<`u`){let t=navigator.userAgent||``,n=navigator.userAgentData?.platform,r=/macintosh/i.test(t)&&(navigator.maxTouchPoints||0)>1;!w()&&!r&&(n===`macOS`||/mac os x|macintosh/i.test(t))&&e.add(`mac`),(n===`Windows`||/windows nt/i.test(t))&&e.add(`windows`)}return e}var pe=new Set([`mac`,`windows`,`desktop`,`web`,`ios`,`android`]);function me(e){let t=e.filter(e=>pe.has(e));if(!t.length)return!0;let n=fe();return t.some(e=>n.has(e))}var he=[`aria-label`],ge=[`aria-selected`,`onClick`],_e={key:0,class:`source-count`},ve={class:`market-intro`},ye={key:0,class:`market-toolbar`},be={key:1,class:`market-collections`},xe={class:`market-summary`,"aria-live":`polite`},Se={key:0},Ce={key:0},we={key:1},Te=[`href`],Ee={key:2,class:`market-empty`},De=[`href`],Oe={key:3,class:`market-empty`,role:`alert`},ke={key:4,class:`market-grid card-gap`,"aria-busy":`true`},Ae={key:5,class:`market-empty`},je={key:6,class:`market-grid card-gap`},Me={class:`skill-card-top`},Ne={class:`publisher-monogram`,"aria-hidden":`true`},Pe={class:`publisher`},Fe=[`onClick`],Ie={class:`skill-description`},Le={class:`skill-card-footer`},Re=[`title`],ze=[`aria-label`,`onClick`],Be={key:7,class:`market-pagination`},Ve={class:`detail-meta`},He={class:`detail-description`},Ue={class:`detail-facts`},We=[`href`],Ge={key:0},Ke={key:1},qe={key:2},Je={key:1,class:`external-note`},Ye={key:2,class:`install-error`,role:`alert`},Xe={key:0,class:`detail-actions`},Ze=[`href`],L=24,R=E(y({__name:`SkillMarketplace`,props:{siteId:{},compact:{type:Boolean}},emits:[`installed`],setup(d,{emit:y}){let C=d,re=y,w=v(null),T=(e,t)=>ae.global.t(e,t||{}),ie=m(()=>ae.global.locale),E={catalog:{name:`AceDataCloud`,url:``},"skills-sh":{name:`skills.sh`,url:`https://skills.sh`},skillsmp:{name:`SkillsMP`,url:`https://skillsmp.com`}},k=v(`catalog`),oe=Object.keys(E).map(e=>({key:e,...E[e]})),j=v([]),M=v(null),N=v(``),P=v(`popular`),F=v(``),I=v(``),fe=v([]),pe=v([]),R=m(()=>[...new Set(fe.value.filter(e=>!F.value||e.namespace===F.value).map(e=>e.category))].filter(Boolean).sort((e,t)=>e.localeCompare(t))),z=v(`trending`),B=v(1),V=v(0),H=v(0),Qe=m(()=>V.value?(B.value-1)*L+1:0),$e=m(()=>Math.min(B.value*L,V.value)),U=v(!1),W=v(!1),G=v(!1),K=v(``),q=v(``),J=v(new Set),Y=0,X=e=>`identifier`in e,Z=e=>Array.isArray(e.frontmatter?.surfaces)?e.frontmatter.surfaces.filter(e=>typeof e==`string`):[],et=e=>X(e)?e.install_count:e.metric_count,tt=e=>T(X(e)?`skill.marketplace.localInstalls`:e.metric===`stars`?`skill.marketplace.repoStars`:`skill.marketplace.marketInstalls`),nt=e=>new Intl.NumberFormat(ie.value,{notation:`compact`,maximumFractionDigits:1}).format(e),rt=e=>new Intl.DateTimeFormat(ie.value,{year:`numeric`,month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`}).format(new Date(e));async function it(){try{let{data:e}=await ue.categories();fe.value=e.namespaces,pe.value=[...new Map(e.namespaces.map(e=>[e.namespace,{namespace:e.namespace,label:e.publisher||e.namespace}])).values()].sort((e,t)=>e.label.localeCompare(t.label))}catch{}}async function Q(){let e=++Y;W.value=!0,K.value=``;try{let t={namespace:F.value||void 0,category:I.value||void 0,q:N.value.trim()||void 0,sort:P.value,limit:L,offset:(B.value-1)*L,site_id:C.siteId||void 0};if(k.value===`catalog`){let{data:n}=await ue.list(t);if(e!==Y)return;j.value=n.items,V.value=n.total,!F.value&&!I.value&&!t.q&&(H.value=n.total),U.value=!1}else{let{data:n}=await de.list({q:t.q,sort:t.sort,site_id:t.site_id,page:B.value,marketplace:k.value,collection:k.value===`skills-sh`?z.value||`all-time`:void 0});if(e!==Y)return;j.value=n.items,V.value=0,U.value=n.has_more}J.value=new Set([...J.value].filter(e=>e!==k.value))}catch(t){e===Y&&(j.value=[],V.value=0,U.value=!1,K.value=t.response?.data?.code||`unavailable`,K.value===`not_configured`&&(J.value=new Set([...J.value,k.value])))}finally{e===Y&&(W.value=!1)}}function $(){B.value=1,Q()}function at(){I.value=``,$()}function ot(e){k.value!==e&&(k.value=e,F.value=``,I.value=``,N.value=``,P.value=`popular`,$())}function st(e){z.value=e,$()}function ct(e){B.value=e,Q(),w.value?.closest(`.marketplace-page-content, .market-dialog-content`)?.scrollTo({top:0})}function lt(e){!e&&!G.value&&(M.value=null)}f(M,()=>{q.value=``}),f(()=>C.siteId,$);async function ut(e){if(!(G.value||e.installed)&&!(X(e)&&(!e.installable||!me(Z(e))))){G.value=!0,q.value=``;try{let{data:t}=X(e)?await ue.install(e.id,C.siteId?{site_id:C.siteId}:{}):await de.install(e.reference,C.siteId);e.installed=!0,S.success(T(`skill.directory.installSuccess`,{name:e.name})),re(`installed`,t.id)}catch(e){let t=e.response?.data?.code;q.value=T(t?.startsWith(`license`)?`skill.marketplace.licenseBlocked`:`skill.marketplace.importFailed`)}finally{G.value=!1}}}return l(()=>{it(),Q()}),(l,f)=>(_(),c(`section`,{ref_key:`marketRoot`,ref:w,class:n([`marketplace`,{compact:d.compact}])},[e(`div`,{class:`market-sources`,role:`tablist`,"aria-label":l.$t(`skill.marketplace.sources`)},[(_(!0),c(u,null,g(s(oe),t=>(_(),c(`button`,{key:t.key,type:`button`,role:`tab`,class:n([`source-tab`,[t.key,{active:k.value===t.key}]]),"aria-selected":k.value===t.key,onClick:e=>ot(t.key)},[e(`span`,null,i(t.name),1),t.key===`catalog`&&H.value?(_(),c(`span`,_e,i(H.value),1)):o(``,!0),t.key===`skills-sh`&&J.value.has(t.key)?(_(),p(s(D),{key:1,density:`compact`,tone:`neutral`},{default:h(()=>[r(i(l.$t(`skill.marketplace.notConnectedShort`)),1)]),_:1})):o(``,!0)],10,ge))),128))],8,he),e(`p`,ve,i(l.$t(`skill.marketplace.source.${k.value}`)),1),K.value===`not_configured`?o(``,!0):(_(),c(`div`,ye,[e(`form`,{class:`market-search`,onSubmit:t($,[`prevent`])},[a(s(se),{modelValue:N.value,"onUpdate:modelValue":f[0]||=e=>N.value=e,clearable:``,placeholder:l.$t(`skill.marketplace.search`),"aria-label":l.$t(`skill.marketplace.search`),onClear:$},{prefix:h(()=>[a(s(te),{size:16,"aria-hidden":`true`})]),_:1},8,[`modelValue`,`placeholder`,`aria-label`]),a(s(A),{"native-type":`submit`},{default:h(()=>[r(i(l.$t(`skill.marketplace.searchButton`)),1)]),_:1})],32),k.value===`catalog`?(_(),p(s(b),{key:0,modelValue:F.value,"onUpdate:modelValue":f[1]||=e=>F.value=e,clearable:``,class:`market-sort`,placeholder:l.$t(`skill.directory.allPublishers`),"aria-label":l.$t(`skill.directory.allPublishers`),onChange:at},{default:h(()=>[(_(!0),c(u,null,g(pe.value,e=>(_(),p(s(x),{key:e.namespace,label:e.label,value:e.namespace},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`aria-label`])):o(``,!0),k.value===`catalog`&&R.value.length?(_(),p(s(b),{key:1,modelValue:I.value,"onUpdate:modelValue":f[2]||=e=>I.value=e,clearable:``,class:`market-sort`,placeholder:l.$t(`skill.marketplace.allCategories`),"aria-label":l.$t(`skill.marketplace.allCategories`),onChange:$},{default:h(()=>[(_(!0),c(u,null,g(R.value,e=>(_(),p(s(x),{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`aria-label`])):o(``,!0),k.value===`skills-sh`?o(``,!0):(_(),p(s(b),{key:2,modelValue:P.value,"onUpdate:modelValue":f[3]||=e=>P.value=e,class:`market-sort`,"aria-label":l.$t(`skill.marketplace.sort`),onChange:$},{default:h(()=>[a(s(x),{label:l.$t(k.value===`catalog`?`skill.marketplace.popularLocal`:`skill.marketplace.popularExternal`),value:`popular`},null,8,[`label`]),a(s(x),{label:l.$t(k.value===`catalog`?`skill.marketplace.discovered`:`skill.marketplace.updated`),value:`recent`},null,8,[`label`])]),_:1},8,[`modelValue`,`aria-label`]))])),k.value===`skills-sh`&&K.value!==`not_configured`?(_(),c(`div`,be,[(_(),c(u,null,g([`trending`,`hot`,`official`,``],e=>a(s(ne),{key:e,selected:z.value===e,onClick:t=>st(e)},{default:h(()=>[r(i(l.$t(`skill.marketplace.collection.${e||`all`}`)),1)]),_:2},1032,[`selected`,`onClick`])),64))])):o(``,!0),e(`div`,xe,[k.value===`catalog`&&!K.value&&!W.value?(_(),c(`span`,Se,[r(i(l.$t(`skill.marketplace.results`,{count:V.value}))+` `,1),V.value?(_(),c(`span`,Ce,` · `+i(l.$t(`skill.marketplace.showing`,{start:Qe.value,end:$e.value})),1)):o(``,!0)])):k.value!==`catalog`&&!K.value&&!W.value&&j.value.length?(_(),c(`span`,we,i(l.$t(`skill.marketplace.externalPage`,{page:B.value})),1)):o(``,!0),k.value!==`catalog`&&K.value!==`not_configured`?(_(),c(`a`,{key:2,href:E[k.value].url,target:`_blank`,rel:`noopener noreferrer`},i(l.$t(`skill.marketplace.visit`))+` ↗`,9,Te)):o(``,!0)]),K.value===`not_configured`?(_(),c(`div`,Ee,[a(s(le),{size:32,"aria-hidden":`true`}),e(`h3`,null,i(l.$t(`skill.marketplace.notConnected`)),1),e(`p`,null,i(l.$t(`skill.marketplace.notConnectedHint`)),1),e(`a`,{href:E[k.value].url,target:`_blank`,rel:`noopener noreferrer`},i(l.$t(`skill.marketplace.visit`))+` ↗`,9,De)])):K.value?(_(),c(`div`,Oe,[e(`p`,null,i(l.$t(`skill.directory.loadFailed`)),1),a(s(A),{onClick:Q},{default:h(()=>[r(i(l.$t(`skill.marketplace.retry`)),1)]),_:1})])):W.value?(_(),c(`div`,ke,[(_(),c(u,null,g(6,t=>e(`div`,{key:t,class:`skill-card skeleton`},[...f[5]||=[e(`span`,null,null,-1),e(`span`,null,null,-1),e(`span`,null,null,-1)]])),64))])):j.value.length?(_(),c(`div`,je,[(_(!0),c(u,null,g(j.value,t=>(_(),c(`article`,{key:t.id,class:`skill-card`},[e(`div`,Me,[e(`span`,Ne,i(t.publisher.slice(0,1).toUpperCase()),1),e(`span`,Pe,i(t.publisher),1),t.installed?(_(),p(s(D),{key:0,density:`compact`,tone:`success`},{default:h(()=>[r(i(l.$t(`skill.directory.installed`)),1)]),_:1})):o(``,!0)]),e(`button`,{type:`button`,class:`skill-title`,onClick:e=>M.value=t},i(t.name||t.slug),9,Fe),e(`p`,Ie,i(t.description||l.$t(`skill.marketplace.sourceDescription`)),1),e(`div`,Le,[e(`span`,{class:`skill-metric`,title:tt(t)},[r(i(nt(et(t)))+` `,1),e(`span`,null,i(tt(t)),1)],8,Re),e(`button`,{type:`button`,class:`skill-details`,"aria-label":l.$t(`skill.marketplace.detailsFor`,{name:t.name}),onClick:e=>M.value=t},[r(i(l.$t(`skill.marketplace.details`))+` `,1),f[6]||=e(`span`,{"aria-hidden":`true`},`↗`,-1)],8,ze)])]))),128))])):(_(),c(`div`,Ae,[a(s(le),{size:32,"aria-hidden":`true`}),e(`h3`,null,i(l.$t(`skill.directory.empty`)),1),e(`p`,null,i(l.$t(`skill.marketplace.emptyHint`)),1)])),k.value===`catalog`&&V.value>L?(_(),c(`div`,Be,[e(`span`,null,i(l.$t(`skill.marketplace.pageOf`,{page:B.value,pages:Math.ceil(V.value/L)})),1),a(s(ee),{class:`adc-pagination`,background:``,"current-page":B.value,"page-size":L,total:V.value,"pager-count":5,layout:`prev, pager, next`,onCurrentChange:ct},null,8,[`current-page`,`total`])])):o(``,!0),k.value!==`catalog`&&!K.value&&(B.value>1||U.value)?(_(),p(s(ee),{key:8,class:`market-pagination adc-pagination`,background:``,"current-page":B.value,"page-count":U.value?B.value+1:B.value,disabled:W.value,layout:`prev, next`,onCurrentChange:ct},null,8,[`current-page`,`page-count`,`disabled`])):o(``,!0),a(s(O),{"model-value":!!M.value,"append-to-body":``,width:`min(760px, 94vw)`,title:M.value?.name,"close-on-click-modal":!G.value,"show-close":!G.value,"onUpdate:modelValue":lt},{footer:h(()=>[M.value?(_(),c(`div`,Xe,[X(M.value)?o(``,!0):(_(),c(`a`,{key:0,href:M.value.marketplace_url,target:`_blank`,rel:`noopener noreferrer`},i(l.$t(`skill.marketplace.originalListing`))+` ↗`,9,Ze)),M.value.installed?(_(),p(s(A),{key:1,disabled:``},{default:h(()=>[r(i(l.$t(`skill.directory.installed`)),1)]),_:1})):X(M.value)&&!M.value.installable?(_(),p(s(A),{key:2,disabled:``},{default:h(()=>[r(i(l.$t(`skill.directory.notInstallable`)),1)]),_:1})):X(M.value)&&!s(me)(Z(M.value))?(_(),p(s(A),{key:3,disabled:``},{default:h(()=>[r(i(l.$t(`skill.directory.surfaceUnavailable`)),1)]),_:1})):(_(),p(s(A),{key:4,type:`primary`,loading:G.value,onClick:f[4]||=e=>ut(M.value)},{default:h(()=>[r(i(l.$t(X(M.value)?`skill.directory.install`:`skill.marketplace.import`)),1)]),_:1},8,[`loading`]))])):o(``,!0)]),default:h(()=>[M.value?(_(),c(u,{key:0},[e(`div`,Ve,[a(s(D),null,{default:h(()=>[r(i(M.value.publisher),1)]),_:1}),a(s(D),null,{default:h(()=>[r(i(X(M.value)?`AceDataCloud`:E[M.value.marketplace]?.name),1)]),_:1}),X(M.value)&&M.value.license?(_(),p(s(D),{key:0},{default:h(()=>[r(i(M.value.license),1)]),_:1})):o(``,!0)]),e(`p`,He,i(M.value.description),1),e(`dl`,Ue,[e(`div`,null,[e(`dt`,null,i(l.$t(`skill.marketplace.repository`)),1),e(`dd`,null,[e(`a`,{href:M.value.source_url,target:`_blank`,rel:`noopener noreferrer`},i(M.value.source_repo)+` ↗`,9,We)])]),X(M.value)?(_(),c(`div`,Ge,[e(`dt`,null,i(l.$t(`skill.marketplace.synced`)),1),e(`dd`,null,i(rt(M.value.last_synced_at)),1)])):o(``,!0),!X(M.value)&&M.value.upstream_updated_at?(_(),c(`div`,Ke,[e(`dt`,null,i(l.$t(`skill.marketplace.updated`)),1),e(`dd`,null,i(rt(M.value.upstream_updated_at)),1)])):o(``,!0),X(M.value)&&Z(M.value).length?(_(),c(`div`,qe,[e(`dt`,null,i(l.$t(`skill.directory.surfaceHint`)),1),e(`dd`,null,i(Z(M.value).join(`, `)),1)])):o(``,!0)]),X(M.value)?(_(),p(ce,{key:0,class:`detail-content`,source:M.value.content.replace(/^---\r?\n[\s\S]*?\r?\n---\r?\n?/,``),sanitize:``},null,8,[`source`])):(_(),c(`p`,Je,i(l.$t(`skill.marketplace.importHint`)),1)),q.value?(_(),c(`p`,Ye,i(q.value),1)):o(``,!0)],64)):o(``,!0)]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`show-close`])],2))}}),[[`__scopeId`,`data-v-1324593b`]]),z=10*1024*1024,B=/\.(tar\.gz|tgz|tar|zip|md)$/i,V=y({name:`UploadSkillDialog`,components:{ElDialog:O,ElButton:A,AddFileIcon:P,CloudUploadIcon:N},props:{siteId:{type:String,default:``},modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`created`],data(){return{file:null,isDragging:!1,uploading:!1}},methods:{onVisibleChange(e){this.$emit(`update:modelValue`,e)},onClose(){this.uploading||this.$emit(`update:modelValue`,!1)},reset(){this.file=null,this.isDragging=!1;let e=this.$refs.fileInput;e&&(e.value=``)},humanSize(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(2)} MB`},onPickFile(){this.uploading||this.$refs.fileInput?.click()},onFilePicked(e){let t=e.target.files?.[0]||null;this.acceptFile(t)},onDrop(e){this.isDragging=!1;let t=e.dataTransfer?.files?.[0]||null;this.acceptFile(t)},acceptFile(e){if(!e){this.file=null;return}if(e.size>z){S.error(this.$t(`skill.message.fileTooLarge`));return}if(!B.test(e.name)){S.error(this.$t(`skill.message.fileTypeWrong`));return}this.file=e},extractError(e){let t=e;return t?.response?.data?.detail||(t?.response?.data?.content||[]).join(`; `)||String(e)||`unknown error`},async onSubmit(){if(this.file){this.uploading=!0;try{if(/\.md$/i.test(this.file.name)){let e=await this.file.text(),{data:t}=await I.createMarkdown({content:e},this.siteId||void 0);S.success(this.$t(`skill.message.createSuccess`)),this.$emit(`created`,t.id)}else{let{data:e}=await I.createTarball(this.file,this.siteId||void 0);S.success(this.$t(`skill.message.createSuccess`)),this.$emit(`created`,e.id)}this.$emit(`update:modelValue`,!1)}catch(e){S.error(this.$t(`skill.message.createFailed`,{detail:this.extractError(e)}))}finally{this.uploading=!1}}}}}),H={key:0,class:`dropzone-hint`},Qe={key:1,class:`dropzone-file`},$e={class:`dropzone-file-name`},U={class:`dropzone-file-size`},W={class:`requirements`},G={class:`requirements-title`};function K(o,s,l,u,f,m){let g=d(`add-file-icon`),v=d(`el-button`),y=d(`cloud-upload-icon`),b=d(`el-dialog`);return _(),p(b,{"append-to-body":``,"model-value":o.modelValue,title:o.$t(`skill.dialog.uploadTitle`),width:`min(520px, 94vw)`,"align-center":``,"close-on-click-modal":!o.uploading,"close-on-press-escape":!o.uploading,"show-close":!o.uploading,"onUpdate:modelValue":o.onVisibleChange,onClosed:o.reset},{footer:h(()=>[a(v,{disabled:o.uploading,onClick:o.onClose},{default:h(()=>[r(i(o.$t(`common.button.cancel`)),1)]),_:1},8,[`disabled`,`onClick`]),a(v,{type:`primary`,loading:o.uploading,disabled:!o.file,onClick:o.onSubmit},{default:h(()=>[a(y,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(o.$t(`skill.button.create`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:h(()=>[e(`input`,{ref:`fileInput`,type:`file`,accept:`.tar.gz,.tgz,.tar,.zip,.md,application/gzip,application/zip,application/x-tar,text/markdown`,hidden:``,onChange:s[0]||=(...e)=>o.onFilePicked&&o.onFilePicked(...e)},null,544),e(`div`,{class:n([`dropzone`,{"is-dragging":o.isDragging,"has-file":!!o.file}]),onClick:s[1]||=(...e)=>o.onPickFile&&o.onPickFile(...e),onDragover:s[2]||=t(e=>o.isDragging=!0,[`prevent`]),onDragleave:s[3]||=t(e=>o.isDragging=!1,[`prevent`]),onDrop:s[4]||=t((...e)=>o.onDrop&&o.onDrop(...e),[`prevent`])},[a(g,{class:`dropzone-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o.file?(_(),c(`p`,Qe,[e(`span`,$e,i(o.file.name),1),e(`span`,U,i(o.humanSize(o.file.size)),1)])):(_(),c(`p`,H,i(o.$t(`skill.dialog.uploadDrop`)),1))],34),e(`div`,W,[e(`p`,G,i(o.$t(`skill.dialog.fileRequirements`)),1),e(`ul`,null,[e(`li`,null,i(o.$t(`skill.dialog.requirementMd`)),1),e(`li`,null,i(o.$t(`skill.dialog.requirementArchive`)),1)])])]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`close-on-press-escape`,`show-close`,`onUpdate:modelValue`,`onClosed`])}var q=E(V,[[`render`,K],[`__scopeId`,`data-v-5018f27e`]]),J=y({name:`WriteSkillDialog`,components:{ElDialog:O,ElButton:A,ElInput:se,CloudUploadIcon:N},props:{siteId:{type:String,default:``},modelValue:{type:Boolean,default:!1}},emits:[`update:modelValue`,`created`],data(){return{content:``,saving:!1}},methods:{onVisibleChange(e){this.$emit(`update:modelValue`,e)},onClose(){this.saving||this.$emit(`update:modelValue`,!1)},reset(){this.content=``},extractError(e){let t=e;return t?.response?.data?.detail||(t?.response?.data?.content||[]).join(`; `)||String(e)||`unknown error`},async onSubmit(){if(this.content.trim()){this.saving=!0;try{let{data:e}=await I.createMarkdown({content:this.content},this.siteId||void 0);S.success(this.$t(`skill.message.createSuccess`)),this.$emit(`created`,e.id),this.$emit(`update:modelValue`,!1)}catch(e){S.error(this.$t(`skill.message.createFailed`,{detail:this.extractError(e)}))}finally{this.saving=!1}}}}}),Y={class:`hint`};function X(t,n,o,s,c,l){let u=d(`el-input`),f=d(`el-button`),m=d(`cloud-upload-icon`),g=d(`el-dialog`);return _(),p(g,{"append-to-body":``,"model-value":t.modelValue,title:t.$t(`skill.dialog.writeTitle`),width:`min(720px, 94vw)`,"align-center":``,"close-on-click-modal":!t.saving,"close-on-press-escape":!t.saving,"show-close":!t.saving,"onUpdate:modelValue":t.onVisibleChange,onClosed:t.reset},{footer:h(()=>[a(f,{disabled:t.saving,onClick:t.onClose},{default:h(()=>[r(i(t.$t(`common.button.cancel`)),1)]),_:1},8,[`disabled`,`onClick`]),a(f,{type:`primary`,loading:t.saving,disabled:!t.content.trim(),onClick:t.onSubmit},{default:h(()=>[a(m,{class:`mr-1`,size:16,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`skill.button.create`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:h(()=>[e(`p`,Y,i(t.$t(`skill.dialog.writeHint`)),1),a(u,{modelValue:t.content,"onUpdate:modelValue":n[0]||=e=>t.content=e,type:`textarea`,rows:18,placeholder:t.$t(`skill.placeholder.content`),spellcheck:`false`,class:`editor`},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`close-on-press-escape`,`show-close`,`onUpdate:modelValue`,`onClosed`])}var Z=E(J,[[`render`,X],[`__scopeId`,`data-v-a5dcdeb8`]]);export{le as a,I as i,q as n,R as r,Z as t};