@acedatacloud/nexior 3.358.0 → 3.359.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{ApiCodeButton-CiNqmFYp.js → ApiCodeButton-baHNMZlA.js} +1 -1
- package/dist/assets/{ApiCodeDialog-z5vXc7Xi.js → ApiCodeDialog-Deo-0c8D.js} +2 -2
- package/dist/assets/{Artifacts-BgCwr5i5.js → Artifacts-rB1PHjtI.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-c9PYBcSn.js → AskUserQuestionCard-nQkThZB8.js} +1 -1
- package/dist/assets/{AudioPreview-uUWI_oVU.js → AudioPreview-D4mig8P6.js} +1 -1
- package/dist/assets/{Auth-D7rXWt2c.js → Auth-Dtpa1HYL.js} +1 -1
- package/dist/assets/{Bare-QIH-zKDl.js → Bare-D1d7aC_A.js} +1 -1
- package/dist/assets/{BotPlaceholder-CDv27X3P.js → BotPlaceholder-DErOB9Ll.js} +1 -1
- package/dist/assets/{BottomFooter-CgjUhGFP.js → BottomFooter-CDvP9lAN.js} +1 -1
- package/dist/assets/{BrowseConnectors-1biG2Qgb.js → BrowseConnectors-D7-yVc6L.js} +1 -1
- package/dist/assets/BrowserPairingDialog-D2PzntfQ.js +1 -0
- package/dist/assets/BrowserPairingDialog-FTM3lWFY.css +1 -0
- package/dist/assets/{Callback-CgQSpuL1.js → Callback-BMfUhR1v.js} +1 -1
- package/dist/assets/{CodeSnippet-CBWP_eZL.js → CodeSnippet-CcBzIfVs.js} +1 -1
- package/dist/assets/{Console-XKqCKdZn.js → Console-BPD03jAG.js} +1 -1
- package/dist/assets/{Consumption-Byk7yTVz.js → Consumption-Bdsy-uO_.js} +1 -1
- package/dist/assets/{Conversation-D8Wm_Zri.js → Conversation-C3fEjLqE.js} +1 -1
- package/dist/assets/{Conversation-CA6VWzAh.css → Conversation-lrKxdgf9.css} +1 -1
- package/dist/assets/Conversation-xjI0r6fo.js +1 -0
- package/dist/assets/CopyToClipboard-CBPEp-6G.css +1 -0
- package/dist/assets/CopyToClipboard-DPpOVvXZ.js +1 -0
- package/dist/assets/Detail-DTjEGOWO.js +2 -0
- package/dist/assets/{Extra-xrdEsbzz.js → Extra-CfX3wLRe.js} +1 -1
- package/dist/assets/{FilePreview-B2BrZCN4.js → FilePreview-Doy3Cjm9.js} +1 -1
- package/dist/assets/{Hailuo-C2sgwciH.js → Hailuo-D3sm0zE3.js} +1 -1
- package/dist/assets/{History-DwzwIr-b.js → History-WaZ3yJDQ.js} +1 -1
- package/dist/assets/{ImagePreview-ESZQ89R1.js → ImagePreview-BZEtZTR7.js} +1 -1
- package/dist/assets/{ImageWrapper-ByG7FJxY.js → ImageWrapper-BTkthxgU.js} +1 -1
- package/dist/assets/Index-0ZyKxn2M.js +1 -0
- package/dist/assets/{Index-DG5VlJU5.js → Index-B-GwQwv9.js} +1 -1
- package/dist/assets/Index-B3X2-fiB.js +1 -0
- package/dist/assets/Index-BALQCGVc.js +1 -0
- package/dist/assets/Index-BBI6agf7.js +1 -0
- package/dist/assets/Index-BBlw9DGd.js +1 -0
- package/dist/assets/{Index-CirWkDBR.js → Index-BCZwNO9a2.js} +1 -1
- package/dist/assets/Index-BDYRqCMC.js +1 -0
- package/dist/assets/Index-BG6dY3R2.js +1 -0
- package/dist/assets/{Index-CiwW7_xF.js → Index-BHSv428B.js} +1 -1
- package/dist/assets/Index-BJleeA3Z.js +1 -0
- package/dist/assets/{Index-vI1pmCgu.js → Index-BUeOXlBx.js} +1 -1
- package/dist/assets/{Index-DSE4_905.js → Index-BgLLnPGz.js} +1 -1
- package/dist/assets/{Index-CQX-mX8l.js → Index-C3FefzE1.js} +1 -1
- package/dist/assets/{Index-DrFIjAC4.js → Index-CGALs0sN.js} +1 -1
- package/dist/assets/Index-CMuq2nPV.js +1 -0
- package/dist/assets/{Index-D2m8ATNJ.js → Index-CNKf3lQA.js} +2 -2
- package/dist/assets/{Index-Dh6I-L3l.js → Index-ClHTOQOC.js} +1 -1
- package/dist/assets/{Index-C8I0_0Jk.css → Index-CsbX_HB_.css} +1 -1
- package/dist/assets/{Index-CRHRqEjI.js → Index-D0Q_drcq.js} +1 -1
- package/dist/assets/{Index-B-nXto0t.css → Index-D14ip-eO.css} +1 -1
- package/dist/assets/Index-D7iBfETy.js +1 -0
- package/dist/assets/Index-DA--vrkW.js +1 -0
- package/dist/assets/Index-DGT5UfG3.js +1 -0
- package/dist/assets/{Index-D8Zqoj4n.js → Index-DL5ChMsT.js} +1 -1
- package/dist/assets/Index-DLeqFTBZ.js +1 -0
- package/dist/assets/{Index-C7p8OXFc.css → Index-DMFbiTzd.css} +1 -1
- package/dist/assets/{Index-Cb9NGvy_.css → Index-DMm2-tI2.css} +1 -1
- package/dist/assets/Index-DNazCuED.js +1 -0
- package/dist/assets/{Index-YcZrDvKK.js → Index-DS3D6Fzl.js} +1 -1
- package/dist/assets/{Index-D8yq23DF.js → Index-DS_6NkkW.js} +1 -1
- package/dist/assets/Index-DU66vdch.js +1 -0
- package/dist/assets/Index-Dar0Uput.js +1 -0
- package/dist/assets/Index-DbITpawu.js +1 -0
- package/dist/assets/Index-Di1j4uRc.js +1 -0
- package/dist/assets/{Index-alCHtqWd.js → Index-QRNZHaL2.js} +1 -1
- package/dist/assets/{Index-CFip9nIj.css → Index-fWSMR3_L.css} +1 -1
- package/dist/assets/Index-g_TwNs3z.js +1 -0
- package/dist/assets/{Index-D53QUcJW.css → Index-kkW-6KV5.css} +1 -1
- package/dist/assets/{Index-BSvC21Tn.js → Index-nfzi6Z2R.js} +1 -1
- package/dist/assets/{Index-CIZ0JZtW.css → Index-q3hfYQ5i.css} +1 -1
- package/dist/assets/Index-wxkUGoGb.js +1 -0
- package/dist/assets/{Invitees-DV3QywcL.js → Invitees-D7yNrFFY.js} +1 -1
- package/dist/assets/List-BJC4kROk.css +1 -0
- package/dist/assets/List-BM3h2VIo.js +1 -0
- package/dist/assets/List-BjJNmIEV.js +1 -0
- package/dist/assets/List-CtuRYTLZ.js +1 -0
- package/dist/assets/List-DZk_5yHu.css +1 -0
- package/dist/assets/{LocalTools-B5ToSxwe.js → LocalTools-DWJ1S3qn.js} +1 -1
- package/dist/assets/LocalTools-wQ4F_rrL.js +5 -0
- package/dist/assets/Logo-C2UASpQp.js +1 -0
- package/dist/assets/Logo-fKY-0-aK.css +1 -0
- package/dist/assets/Main-B3xu4dYY.css +1 -0
- package/dist/assets/Main-DVdsLiTj.js +1 -0
- package/dist/assets/{Message-Dr93wREd.css → Message-D6tWmQRB.css} +1 -1
- package/dist/assets/Message-D8PCk54R.js +3 -0
- package/dist/assets/{Model-Dt3P_UQQ.js → Model-BwK13Mj9.js} +1 -1
- package/dist/assets/Navigator-C1hy0s1U.js +8 -0
- package/dist/assets/Navigator-DJAPAK_Y.css +1 -0
- package/dist/assets/{NotFound-BopsMgLM.js → NotFound-Dqa6fAIE.js} +1 -1
- package/dist/assets/{PageHeader-Cd9mBW43.js → PageHeader-DELqXfxi.js} +1 -1
- package/dist/assets/Pay-Ca_NWGhM.js +1 -0
- package/dist/assets/{Player-DQNg6dOq.js → Player--lSClNNH.js} +1 -1
- package/dist/assets/{Poivelle-0k_mctcv.js → Poivelle-C11Cmr7C.js} +1 -1
- package/dist/assets/{RealtimeCall-BgkQdni0.js → RealtimeCall-C1WJIXj6.js} +1 -1
- package/dist/assets/{ReportButton-CuTsbpH1.js → ReportButton-DHPSYmbK.js} +1 -1
- package/dist/assets/{ReportDialog-dN-kkVrJ.js → ReportDialog-CiMYnLJx.js} +1 -1
- package/dist/assets/ScenarioPaymentMode-KgrScg5P.js +1 -0
- package/dist/assets/ScheduledTasks-BFqkFza_.js +2 -0
- package/dist/assets/ScheduledTasks-Bw4xzuMD.css +1 -0
- package/dist/assets/{SolanaWalletPickerDialog-CS7bSwXe.js → SolanaWalletPickerDialog-BZUGBOj2.js} +1 -1
- package/dist/assets/Status-DN2GAXps.js +1 -0
- package/dist/assets/{Status-BDIpm7RB.css → Status-Dqmgq95G.css} +1 -1
- package/dist/assets/{Subscribe-zhWEFj1j.js → Subscribe-CY0bXYPC.js} +1 -1
- package/dist/assets/{TabSwitcher-C4UtlgZ0.js → TabSwitcher-BC4B1I3N.js} +1 -1
- package/dist/assets/Tts-rq3pVjBP.js +1 -0
- package/dist/assets/{VideoPlayer-B9ZoxGwN.js → VideoPlayer-deIEsBH5.js} +1 -1
- package/dist/assets/{VideoPreview-D0f8om32.js → VideoPreview-Yit2lulu.js} +1 -1
- package/dist/assets/arrow-down-GWeZNjBE.js +1 -0
- package/dist/assets/{arrow-down-wide-narrow-D9hT9P8T.js → arrow-down-wide-narrow-Baf9DH9Q.js} +1 -1
- package/dist/assets/arrow-left-Cb3bQp-f.js +1 -0
- package/dist/assets/arrow-right-DvDuE99k.js +1 -0
- package/dist/assets/arrow-up-B1VLgauu.js +1 -0
- package/dist/assets/{authorizeFlow-DjzUZZcO.js → authorizeFlow-CZQ9fXHX.js} +1 -1
- package/dist/assets/{avatar-DIY5kVwM.js → avatar-CNqzEu5a.js} +1 -1
- package/dist/assets/{basic-C9st9xfO.js → basic-Dehq1VKY.js} +1 -1
- package/dist/assets/{book-open-89ot7rat.js → book-open-k-8h6AQM.js} +1 -1
- package/dist/assets/{box-C1K_05R1.js → box-DMe33HP5.js} +1 -1
- package/dist/assets/{boxes-CVfQGj6z.js → boxes-BddRpfmw.js} +1 -1
- package/dist/assets/{brain-DFSeKAZC.js → brain-DnV6VrrB.js} +1 -1
- package/dist/assets/{chart-no-axes-combined-k3QiYa3s.js → chart-no-axes-combined-Cwjs5nYT.js} +1 -1
- package/dist/assets/{chat-CPepUbBA.js → chat-CLjz6JEm.js} +1 -1
- package/dist/assets/{chat-CPyDS1s8.js → chat-CXkcYUKq.js} +1 -1
- package/dist/assets/{chat-BY9DKfAi.js → chat-CcSpUgkY.js} +1 -1
- package/dist/assets/{chat-yJqk9kt9.js → chat-CgPWqT6E.js} +1 -1
- package/dist/assets/{chat-DCsVMCF2.js → chat-CvN3CWdu.js} +1 -1
- package/dist/assets/{chat-duM8vKdA.js → chat-D91Hmjlb.js} +1 -1
- package/dist/assets/{chat-DPYlE44u.js → chat-DEkZV9iK.js} +1 -1
- package/dist/assets/{chat-CA0MD_st.js → chat-DIpceuMx.js} +1 -1
- package/dist/assets/{chat-C1uZputZ.js → chat-DPB9kvDA.js} +1 -1
- package/dist/assets/{chat-tfvZdHmk.js → chat-DjqHq4_f.js} +1 -1
- package/dist/assets/{chat-DsACa9Pk.js → chat-DrKLvU2W.js} +1 -1
- package/dist/assets/{chat-CFPaNnVM.js → chat-Dtw60MWq.js} +1 -1
- package/dist/assets/{chat-BbW_31UJ.js → chat-ElsfXAuZ.js} +1 -1
- package/dist/assets/{chat-CwJDPmon.js → chat-NA5rrX_r.js} +1 -1
- package/dist/assets/{chat-C-7WVcbW.js → chat-WG_nIFDy.js} +1 -1
- package/dist/assets/{chat-CmjlhXy_.js → chat-geiX4yJF.js} +1 -1
- package/dist/assets/{chat-D0orhGlF.js → chat-hwzsraaF.js} +1 -1
- package/dist/assets/{chat-DpRbp8uT.js → chat-lMTbLC_k.js} +1 -1
- package/dist/assets/{chat-CK9a-_Ni.js → chat-s_gscg0W.js} +1 -1
- package/dist/assets/check-DkM8oHOT.js +1 -0
- package/dist/assets/chevron-down-Dx4wMgRS.js +1 -0
- package/dist/assets/chevron-right-CncLbKEy.js +1 -0
- package/dist/assets/circle-check-D2nSO1dk.js +1 -0
- package/dist/assets/{circle-question-mark-C5ETt-Gy.js → circle-question-mark-DoJBAerP.js} +1 -1
- package/dist/assets/{clipboard-list-BaOyMkLK.js → clipboard-list-DegNGwms.js} +1 -1
- package/dist/assets/clock-CKSPDogH.js +1 -0
- package/dist/assets/code-DEZlEcJn.js +1 -0
- package/dist/assets/{codingBridge-ZH5aQjeX.js → codingBridge-rAAvOFbf.js} +2 -2
- package/dist/assets/{codingBridgeNotify-Djdt8v1B.js → codingBridgeNotify-B4DkodFC.js} +2 -2
- package/dist/assets/{coins-o7-8OSvE.js → coins-BOWvY_pO.js} +1 -1
- package/dist/assets/{collapse-B7B33h1p.js → collapse-BrPGjxsq.js} +1 -1
- package/dist/assets/{constants-CX4j41GC.js → constants-BAu6gjb8.js} +1 -1
- package/dist/assets/{copy-CS92scYJ.js → copy-De64oDma.js} +1 -1
- package/dist/assets/{createTaskActions-DLdbSeB0.js → createTaskActions-DipdneQM.js} +1 -1
- package/dist/assets/{digitalhuman-CRLcje7j.js → digitalhuman-C-NZBpp5.js} +1 -1
- package/dist/assets/{dollar-sign-Dp4uO1oi.js → dollar-sign-DlotqO8S.js} +1 -1
- package/dist/assets/{download-BdbUJy-0.js → download-BF36b2VY.js} +1 -1
- package/dist/assets/{drawer-BWJ3_fqW.js → drawer-DZIcn6a0.js} +1 -1
- package/dist/assets/{dropdown--LXlsWOR.js → dropdown-3j2HoEGx.js} +1 -1
- package/dist/assets/{dropdown-gJTX6f0h.js → dropdown-DL_-rt-E.js} +1 -1
- package/dist/assets/{ellipsis-CGG2t4rN.js → ellipsis-di9jyoc-.js} +1 -1
- package/dist/assets/esm-B5A_43-8.js +1 -0
- package/dist/assets/{esm-DJYfkLDv.js → esm-BXqbS1_p.js} +3 -3
- package/dist/assets/{esm-BdQ3IlZD.js → esm-CtPBfBCD.js} +1 -1
- package/dist/assets/{esm-BbAKv0FA.js → esm-DN67DjmJ.js} +1 -1
- package/dist/assets/{esm-xK2aBMtJ.js → esm-DzxH8W0e.js} +2 -2
- package/dist/assets/{esm-COArLl5w.js → esm-bSzrNAkV.js} +2 -2
- package/dist/assets/{esm-ClxEw27d.js → esm-hNLAIKn7.js} +1 -1
- package/dist/assets/{external-link-B_1us9v2.js → external-link-CpeuWi9e.js} +1 -1
- package/dist/assets/{eye-B7qn04JQ.js → eye-DufEFP8H.js} +1 -1
- package/dist/assets/{file-BexmqRy7.js → file-AYkZYXWl.js} +1 -1
- package/dist/assets/{file-output-BJhPINIu.js → file-output-wt5a08Gq.js} +1 -1
- package/dist/assets/{file-text-CJaP1sSt.js → file-text-CvQozW4t.js} +1 -1
- package/dist/assets/{fish-BJ8_esph.js → fish-CyMK1KL4.js} +1 -1
- package/dist/assets/{flux-St5avyWB.js → flux-BzXgowgs.js} +1 -1
- package/dist/assets/{folder-CVwMb5LW.js → folder-CAZNmXsx.js} +1 -1
- package/dist/assets/gauge-CethS0V1.js +1 -0
- package/dist/assets/{globe-BUY6KxOP.js → globe-CzHj-iBe.js} +1 -1
- package/dist/assets/{grokvideo-BzBXIfSN.js → grokvideo-BGu4Ran5.js} +1 -1
- package/dist/assets/{hailuo-Ehj7U293.js → hailuo-D59CuJ9s.js} +1 -1
- package/dist/assets/{headphones-DP3Pmamv.js → headphones-dyZLv3o9.js} +1 -1
- package/dist/assets/{history-Drg92s0e.js → history-HWyScJMt.js} +1 -1
- package/dist/assets/{house-B1TwBkue.js → house-gqPOr4M0.js} +1 -1
- package/dist/assets/{i18n-thhk7vzg.js → i18n-D4nr5BAx.js} +1 -1
- package/dist/assets/{image-DLh3kiN0.js → image-BBBtc1dR.js} +1 -1
- package/dist/assets/imageRequests-DayCUFyY.js +1 -0
- package/dist/assets/{index-DW-VIENs.css → index-BIRoiZhq.css} +1 -1
- package/dist/assets/index-Bbaw1dFE.js +570 -0
- package/dist/assets/{index.browser.esm-D1e4_8C8.js → index.browser.esm-SuvzsTe4.js} +1 -1
- package/dist/assets/{index.es-lCrLu01L.js → index.es-ijsIYXTm.js} +1 -1
- package/dist/assets/{info-JrDUNc3f.js → info-BLyQemIV.js} +1 -1
- package/dist/assets/{input-number-C61XfqeG.js → input-number-DEovBxHn.js} +1 -1
- package/dist/assets/{key-round-DXFWRMd5.js → key-round-CUFYztec.js} +1 -1
- package/dist/assets/{kling-DoGXHJTZ.js → kling-CaPRmmka.js} +1 -1
- package/dist/assets/{languages-Cgvplr1A.js → languages-LdWj9uNe.js} +1 -1
- package/dist/assets/{laptop-I-UIq9Vj.js → laptop-DIczZ0nW.js} +1 -1
- package/dist/assets/{lightbulb-DQPhT5Fv.js → lightbulb-Ds4_3-FZ.js} +1 -1
- package/dist/assets/{link-DqeldxUU.js → link-BYgr6z-k.js} +1 -1
- package/dist/assets/loader-circle-Dk_AuDkG.js +1 -0
- package/dist/assets/{lock-Cyg1wnc-.js → lock-C9wBz4Q3.js} +1 -1
- package/dist/assets/{qrart-qKp7QNwE.js → luma-bxTSJLlY.js} +1 -1
- package/dist/assets/maestro-C4xjgIjN.js +1 -0
- package/dist/assets/maestroLanguages-DNQExYYZ.js +1 -0
- package/dist/assets/{mail-qBSkwZDU.js → mail-BNNvssIj.js} +1 -1
- package/dist/assets/{message-circle-BQZnKfis.js → message-circle-DGTFJhdt.js} +1 -1
- package/dist/assets/{mic-DcJCGd7v.js → mic-CUCTvrr3.js} +1 -1
- package/dist/assets/{midjourney-CT0W-uYP.js → midjourney-DQB1dyIJ.js} +1 -1
- package/dist/assets/{minimax-Pf3RXf5W.js → minimax-BvBea-tF.js} +1 -1
- package/dist/assets/{mobileLocalExec-ChALdNhl.js → mobileLocalExec-CqYbbTdR.js} +2 -2
- package/dist/assets/{models-D6J60Ang.js → models-PmOthmjQ.js} +1 -1
- package/dist/assets/{monitor-C6EmGPtA.js → monitor-DTCuS4Hl.js} +1 -1
- package/dist/assets/{mouse-pointer-2-BJ6u3j3g.js → mouse-pointer-2-BjFZVXsj.js} +1 -1
- package/dist/assets/music-2-DGqemmHA.js +1 -0
- package/dist/assets/{nanobanana-DHdmNSY7.js → nanobanana-ColWxO29.js} +1 -1
- package/dist/assets/{omni-DNB82gzr.js → omni-DaowrSHF.js} +1 -1
- package/dist/assets/{openaiimage-67EecuUS.js → openaiimage-B9aka7O4.js} +1 -1
- package/dist/assets/{pagination-D8oUwQ9k.js → pagination-C-DvTKA-.js} +1 -1
- package/dist/assets/{pagination-D0KEjXO1.js → pagination-CqsKOl-X.js} +1 -1
- package/dist/assets/{pagination-Bh_-G5Ma.js → pagination-DRvbhg2q.js} +1 -1
- package/dist/assets/{palette-BP1_UTBm.js → palette-DGuioZZF.js} +1 -1
- package/dist/assets/{paperclip-bLPkbpvE.js → paperclip-CkNjqGug.js} +1 -1
- package/dist/assets/{pause-DThYSFfn.js → pause-D84fJY8f.js} +1 -1
- package/dist/assets/{pencil-U1H8ouvD.js → pencil-DW3hdHFT.js} +1 -1
- package/dist/assets/{sora-BkHyNKjN.js → pika-Ck3fX2XP.js} +1 -1
- package/dist/assets/{pixverse-DzV6JmiT.js → pixverse-DvSDFq2f.js} +1 -1
- package/dist/assets/play-9WbpHjQ8.js +1 -0
- package/dist/assets/{plug-qlX-ubkq.js → plug-jykIaLNB.js} +1 -1
- package/dist/assets/plus-LG0WgSW0.js +1 -0
- package/dist/assets/{poivelle-BpE_pkIX.js → poivelle-BKgEX3Qw.js} +1 -1
- package/dist/assets/{popover-Bf9u8EI7.js → popover-98sSPRJY.js} +1 -1
- package/dist/assets/{producer-B0atTy_p.js → producer-hwOOSO2-.js} +1 -1
- package/dist/assets/{luma-gSaEzmni.js → qrart-BrkPke-G.js} +1 -1
- package/dist/assets/{realtime-C9h-cRy7.js → realtime-IEDv2Q4_.js} +1 -1
- package/dist/assets/{refresh-cw-DKpjew0c.js → refresh-cw-Bj0HdfbL.js} +1 -1
- package/dist/assets/rotate-ccw-DwqCr7Li.js +1 -0
- package/dist/assets/rotate-cw-Dhpw9MQa.js +1 -0
- package/dist/assets/{row-CSMwp8He.js → row-CsAJ25m0.js} +1 -1
- package/dist/assets/{scenarioPayment-BQxaybOL.js → scenarioPayment-s_hqMl_Z.js} +1 -1
- package/dist/assets/search-XuVnwR9U.js +1 -0
- package/dist/assets/{seedance-CgiMOVoI.js → seedance-BxOSM3-u.js} +1 -1
- package/dist/assets/{seedream-CCN_-T37.js → seedream-CFf-n3Jr.js} +1 -1
- package/dist/assets/{select-BPmmsYsL.js → select-D0gYN9N3.js} +1 -1
- package/dist/assets/serp-Bm-4BqzA.js +1 -0
- package/dist/assets/{shield-DYsoSjvj.js → shield-DnkMrYoN.js} +1 -1
- package/dist/assets/{shuffle-C2cXZMq5.js → shuffle-m5wb4Z8n.js} +1 -1
- package/dist/assets/site-B9bNGPDp.js +1 -0
- package/dist/assets/{site-KpCMucOQ.js → site-BBY-KjEs.js} +1 -1
- package/dist/assets/site-BFzbqR6B.js +1 -0
- package/dist/assets/site-BUAevgYO.js +1 -0
- package/dist/assets/site-BU_tgBOc.js +1 -0
- package/dist/assets/site-Bt-5LCIk.js +1 -0
- package/dist/assets/site-C1s3m4wS.js +1 -0
- package/dist/assets/site-C8Q7Vs05.js +1 -0
- package/dist/assets/site-CGDFhgEE.js +1 -0
- package/dist/assets/site-CXE47oRI.js +1 -0
- package/dist/assets/site-CgY1dD-J.js +1 -0
- package/dist/assets/site-CjYXcRar.js +1 -0
- package/dist/assets/site-CqAZVRQ5.js +1 -0
- package/dist/assets/site-CsGR8gMq.js +1 -0
- package/dist/assets/site-DsmH5PLg.js +1 -0
- package/dist/assets/site-DzMlHY0-.js +1 -0
- package/dist/assets/site-Vo2MP55Y.js +1 -0
- package/dist/assets/site-zGUINcZY.js +1 -0
- package/dist/assets/{slider-BkpC12ud.js → slider-BQkmPGd3.js} +1 -1
- package/dist/assets/{solana-BXAF_MAk.js → solana-CyLlZ_GW.js} +2 -2
- package/dist/assets/{solana-wallets-DX1uEpyK.js → solana-wallets-qhTWyZRX.js} +2 -2
- package/dist/assets/{solana-wallets-vue-BnsXwDtg.js → solana-wallets-vue-BzpfUPqi.js} +1 -1
- package/dist/assets/{wan-DKcIIxSa.js → sora-BAU8CxCb.js} +1 -1
- package/dist/assets/{sparkles-BwWvghRX.js → sparkles-UH-VPT1H.js} +1 -1
- package/dist/assets/square-gUBZkyxY.js +1 -0
- package/dist/assets/{store-p6xQ2bAP.js → store-B5pp5uHg.js} +1 -1
- package/dist/assets/{suno-CFFLk4vG.js → suno-CJUkgptx.js} +1 -1
- package/dist/assets/{switch-B42bu5O7.js → switch-SImeRhlM.js} +1 -1
- package/dist/assets/{table-BD6Hv1lx.js → table-6sUUiL5j.js} +1 -1
- package/dist/assets/{tabs-MtKgGPfn.js → tabs-Djxk5aEt.js} +1 -1
- package/dist/assets/{tag-q7oTj4uz.js → tag-Cnl9tJWZ.js} +1 -1
- package/dist/assets/terminal-DwaDxW8S.js +1 -0
- package/dist/assets/{time-picker-BcOKI3mu.js → time-picker-Cz-FczVa.js} +1 -1
- package/dist/assets/{tooltip-DKF_sGto.js → tooltip-Cfbg70mI.js} +1 -1
- package/dist/assets/{trash-2-Cf1lYl_N.js → trash-2-D1buIvtL.js} +1 -1
- package/dist/assets/{triangle-alert-_LVPy92s.js → triangle-alert-CKxXMrIy.js} +1 -1
- package/dist/assets/{upload-C1h3h1KN.js → upload-1qOyy5pc.js} +1 -1
- package/dist/assets/{upload-CTvrSmVZ.js → upload-CatJa7lp.js} +1 -1
- package/dist/assets/{usage-Dppnw4Fs.js → usage-04z9NZRc.js} +1 -1
- package/dist/assets/{usage-BwijwtIt.js → usage-73yEs7Mu.js} +1 -1
- package/dist/assets/{usage-BhJBxTFm.js → usage-AXtTdmov.js} +1 -1
- package/dist/assets/{usage-BT3Vpw6D.js → usage-BCx4gHkz.js} +1 -1
- package/dist/assets/{usage-P0GwdDpe.js → usage-BbLzE6-S.js} +1 -1
- package/dist/assets/{usage-CpAzsFQJ.js → usage-BrU23hEz.js} +1 -1
- package/dist/assets/usage-BtE70Zyx.js +1 -0
- package/dist/assets/{usage-0JZzyYFH.js → usage-CQF8OlL9.js} +1 -1
- package/dist/assets/{usage-DT-44dxH.js → usage-D2P27yNE.js} +1 -1
- package/dist/assets/{usage-L3l5Eufa.js → usage-DPrYoBCw.js} +1 -1
- package/dist/assets/{usage-CnsPzezH.js → usage-DcCek_bo.js} +1 -1
- package/dist/assets/{usage-BzIokmAu.js → usage-DdyGDvEE.js} +1 -1
- package/dist/assets/usage-Dja9rFWB.js +1 -0
- package/dist/assets/{usage--Zn0QeyQ.js → usage-Dp2RJpVP.js} +1 -1
- package/dist/assets/{usage-DdlX40M5.js → usage-DzHuO39g.js} +1 -1
- package/dist/assets/{usage-C1FkKtgn.js → usage-IPVqlr7d.js} +1 -1
- package/dist/assets/{usage-XjEHiZAl.js → usage-ROzxvUW5.js} +1 -1
- package/dist/assets/{usage-CAL51pBB.js → usage-h3vAtDis.js} +1 -1
- package/dist/assets/user-DuM9h92v.js +1 -0
- package/dist/assets/{veo-sG-RXLUg.js → veo-DSe5f36P.js} +1 -1
- package/dist/assets/{video-BaKcHmj6.js → video-CSoIuko1.js} +1 -1
- package/dist/assets/{volume-2-CY9fv2mC.js → volume-2-DN7QqF1y.js} +1 -1
- package/dist/assets/{wallet-3BCb_2vC.js → wallet-C0zjncIV.js} +1 -1
- package/dist/assets/{pika-CWpxgVbz.js → wan-BU-IhRnG.js} +1 -1
- package/dist/assets/{wand-sparkles-DNHHWq-f.js → wand-sparkles-C0IhvDEL.js} +1 -1
- package/dist/assets/{web-CFTtGOqY.js → web-BUTrUhex.js} +1 -1
- package/dist/assets/{web-DK27GiIu.js → web-CXenM2_s.js} +1 -1
- package/dist/assets/{web-oUobTiGG.js → web-YEbwbdEF.js} +1 -1
- package/dist/assets/{web-CFOndwVN.js → web-aStpYMNw.js} +1 -1
- package/dist/assets/{web-BLn3-jMx.js → web-iHTGPlJN.js} +1 -1
- package/dist/assets/{webextrator-C8hHzuf5.js → webextrator-D5ICXMRu.js} +1 -1
- package/dist/assets/x402-CPM8RH8s.js +1 -0
- package/dist/assets/{zap-BQE62bDm.js → zap-D48bHrSH.js} +1 -1
- package/dist/index.html +5 -5
- package/package.json +2 -2
- package/dist/assets/BrowserPairingDialog-BIBE8_J9.js +0 -1
- package/dist/assets/BrowserPairingDialog-DJiPCPev.css +0 -1
- package/dist/assets/Conversation-dprhbIvD.js +0 -1
- package/dist/assets/CopyToClipboard-BMiCg7d2.js +0 -1
- package/dist/assets/CopyToClipboard-CAM7F2fv.css +0 -1
- package/dist/assets/Detail-BxuN8k_9.js +0 -2
- package/dist/assets/Index-B3f-1Ux6.js +0 -1
- package/dist/assets/Index-B8RYaLCH.js +0 -1
- package/dist/assets/Index-BMpUhZ9q.js +0 -1
- package/dist/assets/Index-B_Iz0WQh.js +0 -1
- package/dist/assets/Index-Bpb4LsMP.js +0 -1
- package/dist/assets/Index-C6oXyNiR.js +0 -1
- package/dist/assets/Index-CP8kmAF9.js +0 -1
- package/dist/assets/Index-CZTEOg82.js +0 -1
- package/dist/assets/Index-C_69L5xX.js +0 -1
- package/dist/assets/Index-Cj5n4RJn2.js +0 -1
- package/dist/assets/Index-CmbZFmpj.js +0 -1
- package/dist/assets/Index-CvB6FNVL.js +0 -1
- package/dist/assets/Index-D3VSffBn.js +0 -1
- package/dist/assets/Index-DK143DDK.js +0 -1
- package/dist/assets/Index-DOXpcGvC.js +0 -1
- package/dist/assets/Index-DfULgGDk.js +0 -1
- package/dist/assets/Index-DpsQqW9b.js +0 -1
- package/dist/assets/Index-DtxAmXcP.js +0 -1
- package/dist/assets/Index-DzfWc7R3.js +0 -1
- package/dist/assets/Index-iHUpduNy.js +0 -1
- package/dist/assets/List-BARsKpTh.js +0 -1
- package/dist/assets/List-BW8OTe4G.js +0 -1
- package/dist/assets/List-DEqv2XDz.css +0 -1
- package/dist/assets/List-DPzL-ykG.css +0 -1
- package/dist/assets/List-DuRVdIUe.js +0 -1
- package/dist/assets/LocalTools-BhSf8_Y4.js +0 -5
- package/dist/assets/Logo-BCsapzVO.js +0 -1
- package/dist/assets/Logo-WBk_MhiY.css +0 -1
- package/dist/assets/Main-Cy6-Ifg-.js +0 -1
- package/dist/assets/Main-DWK8rjPk.css +0 -1
- package/dist/assets/Message-DlnFjCzr.js +0 -3
- package/dist/assets/Navigator-DcUhkdaf.css +0 -1
- package/dist/assets/Navigator-E7FCgVs1.js +0 -8
- package/dist/assets/Pay-0x3gmRoq.js +0 -1
- package/dist/assets/ScheduledTasks-CvrES_A8.css +0 -1
- package/dist/assets/ScheduledTasks-D-qGHm0o.js +0 -2
- package/dist/assets/Status-AZzfal7k.js +0 -1
- package/dist/assets/Tts-CqGAcIoB.js +0 -1
- package/dist/assets/arrow-down-CnzBxJOK.js +0 -1
- package/dist/assets/arrow-left-igb8AMz_.js +0 -1
- package/dist/assets/arrow-right-CGXNgdDZ.js +0 -1
- package/dist/assets/arrow-up-Drhcfl9s.js +0 -1
- package/dist/assets/check-sZ3LdzYe.js +0 -1
- package/dist/assets/chevron-down-B9A1h-il.js +0 -1
- package/dist/assets/chevron-right-CSsOai_n.js +0 -1
- package/dist/assets/circle-check-Cm0vi3QJ.js +0 -1
- package/dist/assets/clock-BRjX06BR.js +0 -1
- package/dist/assets/code-4fXy3EJM.js +0 -1
- package/dist/assets/esm-D0SEwzQg.js +0 -1
- package/dist/assets/gauge-DZ-l2vCx.js +0 -1
- package/dist/assets/imageRequests-BMlSTRGz.js +0 -1
- package/dist/assets/index-DKnFv8oI.js +0 -570
- package/dist/assets/loader-circle-BOu6l4ZA.js +0 -1
- package/dist/assets/maestro-DpyfDSpq.js +0 -1
- package/dist/assets/maestro-EccNg3GS.js +0 -1
- package/dist/assets/music-2-CuTbesAz.js +0 -1
- package/dist/assets/play-DUVZyA7n.js +0 -1
- package/dist/assets/plus-Coq-6ZBW.js +0 -1
- package/dist/assets/rotate-ccw-mdSBnuP9.js +0 -1
- package/dist/assets/rotate-cw-C-F1OyBK.js +0 -1
- package/dist/assets/search-C73sRSFS.js +0 -1
- package/dist/assets/serp-75AFhZeM.js +0 -1
- package/dist/assets/site-AhbD1cAy.js +0 -1
- package/dist/assets/site-ApsDzXmT.js +0 -1
- package/dist/assets/site-B5aK2u48.js +0 -1
- package/dist/assets/site-BSs5bzZR.js +0 -1
- package/dist/assets/site-Bp09pxfx.js +0 -1
- package/dist/assets/site-CAj6esyl.js +0 -1
- package/dist/assets/site-CFOpzeB9.js +0 -1
- package/dist/assets/site-CgKjNFLm.js +0 -1
- package/dist/assets/site-CpvOXr5j.js +0 -1
- package/dist/assets/site-Cz55lBe5.js +0 -1
- package/dist/assets/site-D0_3FJ19.js +0 -1
- package/dist/assets/site-DSnZF7EC.js +0 -1
- package/dist/assets/site-DUtm0lCL.js +0 -1
- package/dist/assets/site-Dyw5SF13.js +0 -1
- package/dist/assets/site-HEpGPpP9.js +0 -1
- package/dist/assets/site-awqEUONZ.js +0 -1
- package/dist/assets/site-wXX_sllY.js +0 -1
- package/dist/assets/square-B1xtLDOg.js +0 -1
- package/dist/assets/terminal-bgNmS1ov.js +0 -1
- package/dist/assets/usage-CMQfpqxQ.js +0 -1
- package/dist/assets/usage-UhwLGkJP.js +0 -1
- package/dist/assets/user-F688Rsm5.js +0 -1
- /package/dist/assets/{imageRequests-DGx3ElFQ.css → ScenarioPaymentMode-DGx3ElFQ.css} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,P as c,T as l,at as u,ht as d,it as f,j as p,mt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{r as y,t as b}from"./select-D0gYN9N3.js";import{t as x}from"./upload-1qOyy5pc.js";import{t as S}from"./tooltip-Cfbg70mI.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-PmOthmjQ.js";import{n as E,r as D}from"./radio-BNhFzeBO.js";import{n as O,t as k}from"./collapse-BrPGjxsq.js";import{t as A}from"./drawer-DZIcn6a0.js";import{t as j}from"./input-number-DEovBxHn.js";import{t as M}from"./progress-BuyYfFZn.js";import{t as N}from"./clock-CKSPDogH.js";import{a as ee,i as P,n as te,o as ne,r as re,s as ie,t as ae}from"./pagination-C-DvTKA-.js";import{t as oe}from"./info-BLyQemIV.js";import{t as se}from"./music-2-DGqemmHA.js";import{t as ce}from"./plus-LG0WgSW0.js";import{t as F}from"./trash-2-D1buIvtL.js";import{t as I}from"./triangle-alert-CKxXMrIy.js";import{t as le}from"./upload-CatJa7lp.js";import{t as ue}from"./user-DuM9h92v.js";import{t as de}from"./video-CSoIuko1.js";import{t as L}from"./wand-sparkles-C0IhvDEL.js";import{Cr as R,Or as fe,Sr as pe,Tr as me,kr as he,wr as ge}from"./constants-BAu6gjb8.js";import{$t as _e,Fr as z,Ii as ve,Ji as ye,O as B,Xi as V,Yt as be,an as xe,dr as H,en as Se,fr as Ce,mn as we,nn as Te,oi as Ee,pr as U,rn as De,ta as Oe,tn as ke,ua as W,va as Ae}from"./index-Bbaw1dFE.js";import{t as je}from"./CopyToClipboard-DPpOVvXZ.js";import{n as G,t as K}from"./scenarioPayment-s_hqMl_Z.js";import{t as Me}from"./ReportButton-DHPSYmbK.js";import{t as q}from"./ImagePreview-BZEtZTR7.js";import{n as Ne}from"./taskDrawerMixin-DyAUhFEq.js";import{t as J}from"./Consumption-Bdsy-uO_.js";import{t as Y}from"./AudioPreview-D4mig8P6.js";import{t as Pe}from"./VideoPlayer-deIEsBH5.js";import{t as X}from"./VideoPreview-Yit2lulu.js";import{t as Fe}from"./ScenarioPaymentMode-KgrScg5P.js";import{t as Ie}from"./ApiCodeButton-baHNMZlA.js";import{t as Le}from"./BotPlaceholder-DErOB9Ll.js";var Re=v({name:`LayoutDigitalHuman`,components:{UserIcon:ue,ElDrawer:A,ElButton:W},mixins:[Ne]}),ze={class:`main flex flex-row flex-1`},Be={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Ve={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function He(t,n,r,i,o,c){let l=u(`user-icon`),p=u(`el-button`),h=u(`el-drawer`);return g(),s(`div`,ze,[e(`div`,Be,[f(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ve,[f(t.$slots,`result`,{},void 0,!0)]),d(a(p,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:m(()=>[a(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[_,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:m(()=>[f(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Ue=B(Re,[[`render`,He],[`__scopeId`,`data-v-e912fd04`]]),We=v({name:`DigitalHumanMediaInput`,components:{AudioPreview:Y,CloseIcon:ye,ElButton:W,ElProgress:M,ElUpload:x,ImagePreview:q,MusicIcon:se,UploadIcon:le,VideoIcon:de,VideoPreview:X},mixins:[De,Te,Se,be],props:{kind:{type:String,required:!0},accept:{type:String,default:``},buttonText:{type:String,default:``},hint:{type:String,default:``}},emits:[`change`],data(){return{fileList:[],uploadUrl:ve()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},hasFile(){return this.fileList.length>0}},methods:{uploadedUrl(e){return e?.response?.file_url},isPending(e){return e.status===`ready`||e.status===`uploading`},onExceed(e){let t=this.$refs.uploader;t?.clearFiles();let n=e[0];n&&(t?.handleStart?.(n),t?.submit?.())},onError(){T.error(this.$t(`digitalhuman.message.uploadError`))},onRemoveFile(e){let t=this.fileList.indexOf(e);t>=0&&this.fileList.splice(t,1),this.onChange()},onChange(){let e=this.fileList?.[0];this.$emit(`change`,e?this.uploadedUrl(e):void 0)}}}),Ge={class:`thumb`},Ke={key:2,class:`placeholder`},qe=[`title`],Je=[`aria-label`,`title`,`onClick`],Ye={key:0,class:`hint`};function Xe(c,d,f,h,_,v){let y=u(`image-preview`),b=u(`video-preview`),x=u(`audio-preview`),S=u(`el-progress`),C=u(`video-icon`),w=u(`music-icon`),T=u(`close-icon`),E=u(`upload-icon`),D=u(`el-button`),O=u(`el-upload`);return g(),p(O,{ref:`uploader`,"file-list":c.fileList,"onUpdate:fileList":d[0]||=e=>c.fileList=e,accept:c.accept,name:`file`,class:`media-input`,limit:1,multiple:!1,"before-upload":c.beforeUploadSizeGuard,action:c.uploadUrl,headers:c.headers,"on-exceed":c.onExceed,"on-error":c.onError,"on-success":c.onChange,"on-remove":c.onChange},{file:m(({file:r})=>[e(`div`,{class:n([`slot`,{pending:c.isPending(r)}])},[c.kind===`image`&&r.url?(g(),p(y,{key:0,url:r.url,name:r.name,percentage:r.percentage,onRemove:e=>c.onRemoveFile(r)},null,8,[`url`,`name`,`percentage`,`onRemove`])):(g(),s(l,{key:1},[e(`div`,Ge,[c.kind===`video`&&c.uploadedUrl(r)?(g(),p(b,{key:0,url:c.uploadedUrl(r)},null,8,[`url`])):c.kind===`audio`&&c.uploadedUrl(r)?(g(),p(x,{key:1,url:c.uploadedUrl(r)},null,8,[`url`])):(g(),s(`div`,Ke,[c.isPending(r)?(g(),p(S,{key:0,type:`circle`,"stroke-width":4,percentage:Math.round(r.percentage||0),width:34},null,8,[`percentage`])):c.kind===`video`?(g(),p(C,{key:1,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(g(),p(w,{key:2,size:`1em`,"aria-hidden":`true`,focusable:`false`}))]))]),e(`span`,{class:`filename`,title:r.name},i(r.name),9,qe),e(`button`,{type:`button`,class:`remove`,"aria-label":c.$t(`common.button.close`),title:c.$t(`common.button.close`),onClick:t(e=>c.onRemoveFile(r),[`stop`])},[a(T,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Je)],64))],2)]),default:m(()=>[a(D,{round:``,type:`primary`,size:`small`,class:`btn`},{default:m(()=>[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.hasFile?c.$t(`digitalhuman.button.replace`):c.buttonText),1)]),_:1}),c.hint?(g(),s(`p`,Ye,i(c.hint),1)):o(``,!0)]),_:1},8,[`file-list`,`accept`,`before-upload`,`action`,`headers`,`on-exceed`,`on-error`,`on-success`,`on-remove`])}var Z=B(We,[[`render`,Xe],[`__scopeId`,`data-v-db0590a9`]]),Ze=20,Q=e=>{let t=e;return!!t&&typeof t.voice_id==`string`&&!!t.voice_id&&typeof t.name==`string`},$=()=>{try{let e=JSON.parse(localStorage.getItem(`digitalhuman.voices`)||`[]`);return Array.isArray(e)?e.filter(Q).map(e=>({voice_id:e.voice_id,name:e.name,lang:typeof e.lang==`string`?e.lang:`zh`,created_at:typeof e.created_at==`number`?e.created_at:0})):[]}catch{return[]}},Qe=e=>{try{localStorage.setItem(he,JSON.stringify(e))}catch{}return e},$e=e=>Q(e)?Qe([e,...$().filter(t=>t.voice_id!==e.voice_id)].slice(0,Ze)):$(),et=e=>Qe($().filter(t=>t.voice_id!==e)),tt=e=>`${e} ${$().length+1}`,nt=3e3,rt=60,it=v({name:`DigitalHumanVoiceCloneDialog`,components:{Consumption:J,ElAlert:C,ElButton:W,ElDialog:Oe,ElInput:Ae,ElRadioButton:E,ElRadioGroup:D,MediaInput:Z},props:{visible:{type:Boolean,default:!1}},emits:[`update:visible`,`cloned`],data(){return{sampleUrl:void 0,name:``,lang:`zh`,cloning:!1,destroyed:!1,runId:0,DIGITALHUMAN_AUDIO_ACCEPT:R,DIGITALHUMAN_VOICE_CLONE_CONSUMPTION:2,voiceQuoteUsdc:void 0,voiceQuoteLoading:!1,quoteRunId:0}},computed:{service(){return this.$store.state.digitalhuman?.service},credentialToken(){return this.$store.state.digitalhuman?.credential?.token},walletMode(){return K()&&G(`digitalhuman`).mode===`wallet`},langOptions(){return pe.map(e=>({value:e,label:this.$t(`digitalhuman.name.lang_${e}`)}))}},watch:{walletMode(e){this.voiceQuoteUsdc=void 0,e&&this.visible&&this.sampleUrl&&this.refreshVoiceQuote()},visible(e){e?(this.sampleUrl=void 0,this.name=tt(this.$t(`digitalhuman.name.myVoice`)),this.lang=`zh`):(this.runId++,this.quoteRunId++,this.cloning=!1,this.voiceQuoteLoading=!1)}},beforeUnmount(){this.destroyed=!0,this.runId++,this.quoteRunId++},methods:{onVisible(e){this.cloning&&!e||this.$emit(`update:visible`,e)},onSampleChange(e){this.sampleUrl=e,this.voiceQuoteUsdc=void 0,e&&this.walletMode&&this.refreshVoiceQuote()},isStale(e){return this.destroyed||e!==this.runId},sleep(e){return new Promise(t=>setTimeout(t,e))},async refreshVoiceQuote(){if(!this.sampleUrl)return;let e=++this.quoteRunId;this.voiceQuoteLoading=!0;try{let t=await U.quoteVoice(this.voiceRequest());e===this.quoteRunId&&this.walletMode&&(this.voiceQuoteUsdc=t.amountUsdc)}catch(e){console.warn(`x402 voice quote failed`,e)}finally{e===this.quoteRunId&&(this.voiceQuoteLoading=!1)}},voiceRequest(){return Ce({audio_url:this.sampleUrl||``,lang:this.lang,name:this.name||void 0})},paymentOptions(){if(!this.walletMode)return this.credentialToken?{token:this.credentialToken}:void 0;let e=this.getWalletContext();if(!e){T.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}return{mode:`x402`,x402:{wallet:e,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credentialToken}}},async onClone(){if(!this.sampleUrl)return;let e=this.paymentOptions();if(!e)return;let t=++this.runId;this.cloning=!0;try{let{data:n}=await U.cloneVoice(this.voiceRequest(),e);if(this.isStale(t))return;if(n?.voice_id){this.onCloned(n.voice_id);return}if(n?.task_id)await this.pollVoice(n.task_id,t);else throw Error(`no task`)}catch(e){if(e instanceof z)return;this.isStale(t)||T.error(this.$t(`digitalhuman.message.voiceCloneFailed`))}finally{this.isStale(t)||(this.cloning=!1)}},async pollVoice(e,t){for(let n=0;n<rt;n++){if(this.isStale(t)||(await this.sleep(nt),this.isStale(t)))return;let n=this.credentialToken,{data:r}=await U.pollTask(e,n?{token:n}:{mode:`x402`});if(this.isStale(t))return;if(r?.voice_id){this.onCloned(r.voice_id);return}if(r?.state===`failed`)throw Error(`clone failed`)}throw Error(`timeout`)},getWalletContext(){let e=this.$wallet,t=e?.publicKey?.value,n=e?.wallet?.value?.adapter;if(!(!t||!n?.signTransaction))return{publicKey:t,signTransaction:n.signTransaction.bind(n)}},async confirmWalletPayment(e){return V.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)},onCloned(e){$e({voice_id:e,name:this.name||this.$t(`digitalhuman.name.myVoice`),lang:this.lang,created_at:Date.now()/1e3}),T.success(this.$t(`digitalhuman.message.voiceCloneSuccess`)),this.cloning=!1,this.$emit(`cloned`,e),this.$emit(`update:visible`,!1)}}}),at={class:`text-xs text-[var(--el-text-color-secondary)] mb-3`},ot={class:`field mb-3`},st={class:`label`},ct={class:`field`},lt={class:`label`},ut={class:`text-xs mb-0`},dt={key:1,class:`mt-4 text-xs text-[var(--el-text-color-secondary)]`},ft={class:`footer`},pt={key:0,class:`cost text-xs text-[var(--el-text-color-secondary)]`};function mt(t,n,o,c,d,f){let _=u(`media-input`),v=u(`el-input`),y=u(`el-radio-button`),b=u(`el-radio-group`),x=u(`el-alert`),S=u(`consumption`),C=u(`el-button`),w=u(`el-dialog`);return g(),p(w,{"model-value":t.visible,title:t.$t(`digitalhuman.name.cloneVoice`),width:`440`,"align-center":``,"append-to-body":``,"close-on-click-modal":!t.cloning,"close-on-press-escape":!t.cloning,"onUpdate:modelValue":t.onVisible},{footer:m(()=>[e(`div`,ft,[t.walletMode?(g(),s(`span`,pt,i(t.voiceQuoteLoading?`…`:t.voiceQuoteUsdc?`${t.voiceQuoteUsdc} USDC`:t.$t(`common.x402Scenario.quoteBeforeSigning`)),1)):(g(),p(S,{key:1,value:t.DIGITALHUMAN_VOICE_CLONE_CONSUMPTION,service:t.service,class:`cost`},null,8,[`value`,`service`])),e(`div`,null,[a(C,{disabled:t.cloning,onClick:n[2]||=e=>t.onVisible(!1)},{default:m(()=>[r(i(t.$t(`common.button.cancel`)),1)]),_:1},8,[`disabled`]),a(C,{type:`primary`,loading:t.cloning,disabled:!t.sampleUrl||t.cloning,onClick:t.onClone},{default:m(()=>[r(i(t.$t(`digitalhuman.button.startClone`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])])])]),default:m(()=>[e(`p`,at,i(t.$t(`digitalhuman.message.voiceCloneHint`)),1),a(_,{kind:`audio`,accept:t.DIGITALHUMAN_AUDIO_ACCEPT,"button-text":t.$t(`digitalhuman.button.uploadSample`),hint:t.$t(`digitalhuman.message.audioHint`),class:`mb-4`,onChange:t.onSampleChange},null,8,[`accept`,`button-text`,`hint`,`onChange`]),e(`div`,ot,[e(`span`,st,i(t.$t(`digitalhuman.name.voiceName`)),1),a(v,{modelValue:t.name,"onUpdate:modelValue":n[0]||=e=>t.name=e,class:`control`,placeholder:t.$t(`digitalhuman.placeholder.voiceName`)},null,8,[`modelValue`,`placeholder`])]),e(`div`,ct,[e(`span`,lt,i(t.$t(`digitalhuman.name.voiceLang`)),1),a(b,{modelValue:t.lang,"onUpdate:modelValue":n[1]||=e=>t.lang=e,class:`control`},{default:m(()=>[(g(!0),s(l,null,h(t.langOptions,e=>(g(),p(y,{key:e.value,value:e.value},{default:m(()=>[r(i(e.label),1)]),_:2},1032,[`value`]))),128))]),_:1},8,[`modelValue`])]),t.cloning?(g(),p(x,{key:0,closable:!1,type:`info`,class:`mt-4`},{default:m(()=>[e(`p`,ut,i(t.$t(`digitalhuman.message.voiceCloneRunning`)),1)]),_:1})):(g(),s(`p`,dt,i(t.$t(`digitalhuman.message.voiceStoredLocally`)),1))]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`close-on-press-escape`,`onUpdate:modelValue`])}var ht=v({name:`DigitalHumanTimbreSelector`,components:{AddIcon:ce,DeleteIcon:F,ElButton:W,ElOption:b,ElSelect:y,VoiceCloneDialog:B(it,[[`render`,mt],[`__scopeId`,`data-v-240eb2d8`]])},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{voices:$(),dialogVisible:!1}},mounted(){this.modelValue&&!this.voices.some(e=>e.voice_id===this.modelValue)&&this.$emit(`update:modelValue`,void 0)},methods:{labelFor(e){let t=this.$t(`digitalhuman.name.lang_${e.lang}`);return t.startsWith(`digitalhuman.`)?e.name:`${e.name} · ${t}`},onCloned(e){this.voices=$(),this.$emit(`update:modelValue`,e)},onRemove(e){this.voices=et(e),this.modelValue===e&&this.$emit(`update:modelValue`,void 0)}}}),gt={class:`row`},_t={class:`label`},vt={class:`option`},yt={class:`option-name`},bt=[`aria-label`,`title`,`onClick`],xt={class:`empty`};function St(n,o,d,f,_,v){let y=u(`delete-icon`),b=u(`el-option`),x=u(`el-select`),S=u(`add-icon`),C=u(`el-button`),w=u(`voice-clone-dialog`);return g(),s(`div`,null,[e(`div`,gt,[e(`span`,_t,i(n.$t(`digitalhuman.name.timbre`)),1),a(x,{"model-value":n.modelValue,class:`control`,placeholder:n.$t(`digitalhuman.placeholder.pickTimbre`),"onUpdate:modelValue":o[0]||=e=>n.$emit(`update:modelValue`,e)},c({default:m(()=>[(g(!0),s(l,null,h(n.voices,r=>(g(),p(b,{key:r.voice_id,label:n.labelFor(r),value:r.voice_id},{default:m(()=>[e(`span`,vt,[e(`span`,yt,i(n.labelFor(r)),1),e(`button`,{type:`button`,class:`option-remove`,"aria-label":n.$t(`common.button.delete`),title:n.$t(`common.button.delete`),onClick:t(e=>n.onRemove(r.voice_id),[`stop`])},[a(y,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,bt)])]),_:2},1032,[`label`,`value`]))),128))]),_:2},[n.voices.length===0?{name:`empty`,fn:m(()=>[e(`p`,xt,i(n.$t(`digitalhuman.message.noVoiceYet`)),1)]),key:`0`}:void 0]),1032,[`model-value`,`placeholder`])]),a(C,{size:`small`,text:``,type:`primary`,class:`clone`,onClick:o[1]||=e=>n.dialogVisible=!0},{default:m(()=>[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.button.cloneNewVoice`)),1)]),_:1}),a(w,{visible:n.dialogVisible,"onUpdate:visible":o[2]||=e=>n.dialogVisible=e,onCloned:n.onCloned},null,8,[`visible`,`onCloned`])])}var Ct=v({name:`ConfigPanel`,components:{Consumption:J,ElButton:W,ElCollapse:k,ElCollapseItem:O,ElInputNumber:j,ElRadioButton:E,ElRadioGroup:D,InfoIcon:ee,MagicIcon:L,MediaInput:Z,PromptTextarea:P,TimbreSelector:B(ht,[[`render`,St],[`__scopeId`,`data-v-e191cc56`]]),WarningIcon:I,ScenarioPaymentMode:Fe},emits:[`generate`],data(){return{faceMode:`video`,voiceMode:`text`,advancedOpen:[],DIGITALHUMAN_VIDEO_ACCEPT:fe,DIGITALHUMAN_IMAGE_ACCEPT:me,DIGITALHUMAN_AUDIO_ACCEPT:R,quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.digitalhuman?.config},service(){return this.$store.state.digitalhuman?.service},consumption(){return xe(this.config,this.service?.cost)},missing(){let e=[];return(this.faceMode===`video`?this.config?.video_url:this.config?.image_url)||e.push({key:`face`,message:this.$t(`digitalhuman.message.missingFace`)}),this.voiceMode===`text`?(this.config?.text?.trim()||e.push({key:`text`,message:this.$t(`digitalhuman.message.missingText`)}),this.config?.voice_id||e.push({key:`timbre`,message:this.$t(`digitalhuman.message.missingTimbre`)})):this.config?.audio_url||e.push({key:`audio`,message:this.$t(`digitalhuman.message.missingAudio`)}),e},text:{get(){return this.config?.text},set(e){this.update({text:e})}},voiceId:{get(){return this.config?.voice_id},set(e){this.update({voice_id:e})}},speed:{get(){return this.config?.speed??1},set(e){this.update({speed:e})}},walletMode(){return K()&&G(`digitalhuman`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0},faceMode(){this.walletMode&&this.scheduleQuote()},voiceMode(){this.walletMode&&this.scheduleQuote()}},mounted(){this.config?.image_url&&!this.config?.video_url&&(this.faceMode=`photo`),this.config?.audio_url&&(this.voiceMode=`audio`)},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteTimer=window.setTimeout(this.refreshQuote,350)},async refreshQuote(){let e=G(`digitalhuman`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=H(this.config,this.faceMode,this.voiceMode),r=await U.quote(n);t===this.quoteRunId&&e.mode===`wallet`&&(e.quoteUsdc=r.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},isMissing(e){return this.missing.some(t=>t.key===e)},update(e){this.$store.commit(`digitalhuman/setConfig`,{...this.config,...e})},onFaceModeChange(e){this.update(e===`video`?{image_url:void 0}:{video_url:void 0})},onVoiceModeChange(e){this.update(e===`audio`?{text:void 0,voice_id:void 0}:{audio_url:void 0})},onFaceVideoChange(e){this.update({video_url:e})},onFacePhotoChange(e){this.update({image_url:e})},onAudioChange(e){this.update({audio_url:e})},onGenerate(){let e=this.missing[0];if(e){T.warning(e.message);let t=e.key===`face`?`face`:`voice`;this.$refs[t]?.scrollIntoView?.({behavior:`smooth`,block:`center`});return}this.$emit(`generate`,H(this.config,this.faceMode,this.voiceMode))}}}),wt={class:`flex flex-col h-full`},Tt={class:`flex-1 overflow-y-auto p-5`},Et={ref:`face`,class:`field-block mb-6`},Dt={class:`field-head`},Ot={class:`field-title font-bold`},kt={key:0,class:`required-badge`},At={ref:`voice`,class:`field-block mb-6`},jt={class:`field-head`},Mt={class:`field-title font-bold`},Nt={key:0,class:`required-badge`},Pt={class:`field-row`},Ft={class:`field-head`},It={class:`field-title font-bold`},Lt={class:`flex flex-col items-center justify-center px-5 pb-5`},Rt={key:0,class:`hint-missing`},zt={class:`hint-eta`};function Bt(t,n,c,d,f,h){let _=u(`info-icon`),v=u(`el-radio-button`),y=u(`el-radio-group`),b=u(`media-input`),x=u(`prompt-textarea`),S=u(`timbre-selector`),C=u(`el-input-number`),w=u(`el-collapse-item`),T=u(`el-collapse`),E=u(`warning-icon`),D=u(`scenario-payment-mode`),O=u(`consumption`),k=u(`magic-icon`),A=u(`el-button`);return g(),s(`div`,wt,[e(`div`,Tt,[e(`section`,Et,[e(`div`,Dt,[e(`h2`,Ot,i(t.$t(`digitalhuman.name.step1`)),1),t.isMissing(`face`)?(g(),s(`span`,kt,i(t.$t(`digitalhuman.name.required`)),1)):o(``,!0),a(_,{content:t.$t(`digitalhuman.description.step1`),class:`ml-1`},null,8,[`content`])]),a(y,{modelValue:t.faceMode,"onUpdate:modelValue":n[0]||=e=>t.faceMode=e,class:`mode-switch mb-3`,onChange:t.onFaceModeChange},{default:m(()=>[a(v,{value:`video`},{default:m(()=>[r(i(t.$t(`digitalhuman.name.faceModeVideo`)),1)]),_:1}),a(v,{value:`photo`},{default:m(()=>[r(i(t.$t(`digitalhuman.name.faceModePhoto`)),1)]),_:1})]),_:1},8,[`modelValue`,`onChange`]),t.faceMode===`video`?(g(),p(b,{key:0,kind:`video`,accept:t.DIGITALHUMAN_VIDEO_ACCEPT,"button-text":t.$t(`digitalhuman.button.uploadFaceVideo`),hint:t.$t(`digitalhuman.message.faceVideoHint`),onChange:t.onFaceVideoChange},null,8,[`accept`,`button-text`,`hint`,`onChange`])):(g(),p(b,{key:1,kind:`image`,accept:t.DIGITALHUMAN_IMAGE_ACCEPT,"button-text":t.$t(`digitalhuman.button.uploadFacePhoto`),hint:t.$t(`digitalhuman.message.facePhotoHint`),onChange:t.onFacePhotoChange},null,8,[`accept`,`button-text`,`hint`,`onChange`]))],512),e(`section`,At,[e(`div`,jt,[e(`h2`,Mt,i(t.$t(`digitalhuman.name.step2`)),1),t.isMissing(`text`)||t.isMissing(`timbre`)||t.isMissing(`audio`)?(g(),s(`span`,Nt,i(t.$t(`digitalhuman.name.required`)),1)):o(``,!0),a(_,{content:t.$t(`digitalhuman.description.step2`),class:`ml-1`},null,8,[`content`])]),a(y,{modelValue:t.voiceMode,"onUpdate:modelValue":n[1]||=e=>t.voiceMode=e,class:`mode-switch mb-3`,onChange:t.onVoiceModeChange},{default:m(()=>[a(v,{value:`text`},{default:m(()=>[r(i(t.$t(`digitalhuman.name.voiceModeText`)),1)]),_:1}),a(v,{value:`audio`},{default:m(()=>[r(i(t.$t(`digitalhuman.name.voiceModeAudio`)),1)]),_:1})]),_:1},8,[`modelValue`,`onChange`]),t.voiceMode===`text`?(g(),s(l,{key:0},[a(x,{modelValue:t.text,"onUpdate:modelValue":n[2]||=e=>t.text=e,class:`mb-3`,title:t.$t(`digitalhuman.name.speech`),placeholder:t.$t(`digitalhuman.placeholder.speech`),"min-rows":5,"max-rows":14},null,8,[`modelValue`,`title`,`placeholder`]),a(S,{modelValue:t.voiceId,"onUpdate:modelValue":n[3]||=e=>t.voiceId=e},null,8,[`modelValue`])],64)):(g(),p(b,{key:1,kind:`audio`,accept:t.DIGITALHUMAN_AUDIO_ACCEPT,"button-text":t.$t(`digitalhuman.button.uploadSpeechAudio`),hint:t.$t(`digitalhuman.message.audioHint`),onChange:t.onAudioChange},null,8,[`accept`,`button-text`,`hint`,`onChange`]))],512),a(T,{modelValue:t.advancedOpen,"onUpdate:modelValue":n[5]||=e=>t.advancedOpen=e,class:`advanced`},{default:m(()=>[a(w,{name:`advanced`,title:t.$t(`digitalhuman.name.advanced`)},{default:m(()=>[e(`div`,Pt,[e(`div`,Ft,[e(`h2`,It,i(t.$t(`digitalhuman.name.speed`)),1),a(_,{content:t.$t(`digitalhuman.description.speed`),class:`ml-1`},null,8,[`content`])]),a(C,{modelValue:t.speed,"onUpdate:modelValue":n[4]||=e=>t.speed=e,class:`field-control`,min:.5,max:2,step:.1,precision:1,"controls-position":`right`},null,8,[`modelValue`])])]),_:1},8,[`title`])]),_:1},8,[`modelValue`])]),e(`div`,Lt,[t.missing.length>0?(g(),s(`p`,Rt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.missing[0].message),1)])):o(``,!0),a(D,{scenario:`digitalhuman`}),t.walletMode?o(``,!0):(g(),p(O,{key:1,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(A,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:m(()=>[a(k,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`digitalhuman.button.generateVideo`)),1)]),_:1},8,[`onClick`]),e(`p`,zt,i(t.$t(`digitalhuman.message.eta`)),1)])])}var Vt=B(Ct,[[`render`,Bt],[`__scopeId`,`data-v-30f81f39`]]),Ht=[`.jpg`,`.jpeg`,`.png`,`.webp`,`.bmp`,`.gif`],Ut=v({name:`TaskPreview`,components:{ApiCodeButton:Ie,AudioPreview:Y,ChannelIcon:ie,CopyToClipboard:je,DeleteIcon:F,ElAlert:C,ElButton:W,ElProgress:M,ElTooltip:S,FullscreenIcon:ne,ImagePreview:q,InfoIcon:oe,MagicIcon:L,ReportButton:Me,TimeIcon:N,VideoPlayer:Pe,VideoPreview:X,WarningIcon:I},props:{modelValue:{type:Object,required:!0}},computed:{status(){return this.modelValue?.status||this.modelValue?.response?.state||`pending`},isSuccess(){return[`succeed`,`succeeded`].includes(this.status)||!!this.modelValue?.response?.video_url},isFailure(){return[`failed`,`dead`].includes(this.status)||this.modelValue?.response?.success===!1},isTerminal(){return this.isSuccess||this.isFailure},videoUrl(){return this.modelValue?.response?.video_url},progressPct(){let e=this.modelValue?.response?.progress;return typeof e==`number`?e:0},voiceLabel(){return this.modelValue?.request?.audio_url?this.$t(`digitalhuman.name.audioDriven`):this.$t(`digitalhuman.name.textDriven`)},faceUrl(){return this.modelValue?.request?.video_url||this.modelValue?.request?.image_url},isPhotoFace(){if(this.modelValue?.request?.image_url)return!0;let e=(this.faceUrl||``).split(`?`)[0].toLowerCase();return Ht.some(t=>e.endsWith(t))},audioUrl(){return this.modelValue?.request?.audio_url},outputSize(){let{width:e,height:t}=this.modelValue?.response||{};return e&&t?`${e}×${t}`:void 0},etaText(){let e=parseFloat((this.modelValue?.created_at||``).toString());if(!e)return;let t=ge-(Date.now()/1e3-e);return t<=60?this.$t(`digitalhuman.message.etaAlmostDone`):this.$t(`digitalhuman.message.etaRemaining`,{minutes:Math.ceil(t/60)})},statusLabel(){let e=`digitalhuman.status.${this.status}`,t=this.$t(e);return t===e?this.$t(`digitalhuman.status.processing`):t},failureReason(){let e=this.modelValue?.response?.error;if(e)return typeof e==`string`?e:e?.message}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await V.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(`digitalhuman/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e,t){e?.stopPropagation(),window.open(t,`_blank`)}}}),Wt={class:`preview`},Gt={class:`left`},Kt={class:`main`},qt={class:`bot`},Jt={class:`datetime`},Yt=[`aria-label`],Xt={class:`info`},Zt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},Qt={class:`prompt mt-2`},$t={key:0},en={key:0,class:`content`},tn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},nn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},rn={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},an={key:1,class:`content`},on={class:`operations mt-2`},sn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},cn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},ln={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},un={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},dn={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},fn={key:2,class:`content`},pn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},mn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},hn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},gn={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function _n(n,c,l,d,f,h){let _=u(`capability-presentation`),v=u(`delete-icon`),y=u(`el-tooltip`),b=u(`image-preview`),x=u(`video-preview`),S=u(`audio-preview`),C=u(`time-icon`),w=u(`el-progress`),T=u(`magic-icon`),E=u(`copy-to-clipboard`),D=u(`el-alert`),O=u(`video-player`),k=u(`el-button`),A=u(`api-code-button`),j=u(`report-button`),M=u(`fullscreen-icon`),N=u(`channel-icon`),ee=u(`warning-icon`),P=u(`info-icon`);return g(),s(`div`,Wt,[e(`div`,Gt,[a(_,{capability:`digitalhuman`,part:`avatar`,class:`avatar`})]),e(`div`,Kt,[e(`div`,qt,[a(_,{capability:`digitalhuman`,part:`name`}),e(`span`,Jt,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:m(()=>[n.modelValue?.id?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Yt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Xt,[n.faceUrl||n.audioUrl?(g(),s(`div`,Zt,[n.faceUrl&&n.isPhotoFace?(g(),p(b,{key:0,url:n.faceUrl,name:`face`,closable:!1},null,8,[`url`])):n.faceUrl?(g(),p(x,{key:1,url:n.faceUrl,name:`face`},null,8,[`url`])):o(``,!0),n.audioUrl?(g(),p(S,{key:2,url:n.audioUrl,name:`audio`},null,8,[`url`])):o(``,!0)])):o(``,!0),e(`p`,Qt,[r(i(n.modelValue?.request?.text||n.voiceLabel)+` `,1),n.isTerminal?o(``,!0):(g(),s(`span`,$t,` - (`+i(n.statusLabel)+`) `,1))])]),n.isTerminal?o(``,!0):(g(),s(`div`,en,[a(D,{closable:!1,class:`info-state`},{default:m(()=>[e(`p`,tn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.statusLabel),1)]),a(w,{percentage:n.progressPct,"stroke-width":6,class:`mb-2`},null,8,[`percentage`]),n.etaText?(g(),s(`p`,nn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.etaLabel`))+`: `+i(n.etaText),1)])):o(``,!0),e(`p`,rn,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(E,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])),n.isSuccess?(g(),s(`div`,an,[n.videoUrl?(g(),p(O,{key:0,src:n.videoUrl},null,8,[`src`])):o(``,!0),e(`div`,on,[n.videoUrl?(g(),p(k,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=e=>n.onDownload(e,n.videoUrl)},{default:m(()=>[r(i(n.$t(`digitalhuman.button.download`)),1)]),_:1})):o(``,!0),a(A,{path:`/digital-human/videos`,body:n.modelValue?.request},null,8,[`body`]),a(j,{service:`digitalhuman`,"target-id":n.modelValue?.id,snapshot:{text:n.modelValue?.request?.text}},null,8,[`target-id`,`snapshot`])]),a(D,{closable:!1,class:`mt-2 success`},{default:m(()=>[n.modelValue?.response?.duration?(g(),s(`p`,sn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.duration`))+`: `+i(n.modelValue?.response?.duration?.toFixed(1))+`s `,1)])):o(``,!0),n.outputSize?(g(),s(`p`,cn,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.outputSize`))+`: `+i(n.outputSize),1)])):o(``,!0),e(`p`,ln,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(E,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,un,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,dn,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.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),n.isFailure?(g(),s(`div`,fn,[a(D,{closable:!1,class:`failure`},{template:m(()=>[a(ee,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.failure`)),1)]),default:m(()=>[e(`p`,pn,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(E,{content:n.modelValue?.id},null,8,[`content`])]),n.failureReason?(g(),s(`p`,mn,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.failureReason`))+`: `+i(n.failureReason)+` `,1),a(E,{content:n.failureReason},null,8,[`content`])])):o(``,!0),n.modelValue?.elapsed?(g(),s(`p`,hn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,gn,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.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 vn=v({name:`RecentPanel`,components:{TaskPreview:B(Ut,[[`render`,_n],[`__scopeId`,`data-v-342f1d6d`]]),NoTasks:re,BotPlaceholder:Le,ScrollList:te},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.digitalhuman?.tasks,items:this.$store.state.digitalhuman?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),yn={key:0},bn={key:2,class:`w-full h-full flex items-center justify-center`};function xn(e,t,n,r,i,c){let d=u(`bot-placeholder`),f=u(`task-preview`),_=u(`scroll-list`),v=u(`no-tasks`);return g(),s(l,null,[e.tasks?.items===void 0?(g(),s(`div`,yn,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),p(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:m(()=>[(g(!0),s(l,null,h(e.tasks?.items,(e,t)=>(g(),p(f,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,bn,[a(v)])):o(``,!0)],64)}var Sn=v({name:`DigitalHumanIndex`,components:{ConfigPanel:Vt,Layout:Ue,RecentPanel:B(vn,[[`render`,xn]])},mixins:[ke],inject:[`initialized`],data(){return{job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.digitalhuman?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.digitalhuman?.status?.getTasks===w.Request||this.fetchingTasks},credential(){return this.$store.state.digitalhuman.credential},config(){return this.$store.state.digitalhuman.config},tasks(){return this.$store.state.digitalhuman.tasks},walletMode(){return K()&&G(`digitalhuman`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`digitalhuman/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onGetTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},initialized:{async handler(e){window.clearInterval(this.job),e&&(await this.onGetTasks(),await this.onScrollDown(),this.job||=window.setInterval(this.onGetTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ae({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(){await this.$store.dispatch(`digitalhuman/getService`)},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch(`digitalhuman/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(e){if(!_e(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;let t;if(this.walletMode){let n=this.getWalletContext();if(!n){T.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=U.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!we())return;let n=this.credential?.token;if(!n)return;t=U.generate(e,{token:n})}T.info(this.$t(`digitalhuman.message.startingTask`)),Ee(`digitalhuman`,t).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(`digitalhuman.message.startTaskSuccess`))}).catch(e=>{e instanceof z||((e?.response?.data)?.error?.code===`used_up`?T.error(this.$t(`digitalhuman.message.usedUp`)):this.walletMode?T.error(`${this.$t(`common.x402Scenario.paymentFailed`)} ${e?.message||``}`.trim()):T.error(this.$t(`digitalhuman.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){let e=this.$wallet,t=e?.publicKey?.value,n=e?.wallet?.value?.adapter;if(!(!t||!n?.signTransaction))return{publicKey:t,signTransaction:n.signTransaction.bind(n)}},async confirmWalletPayment(e){return V.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 Cn(e,t,n,r,i,o){let s=u(`config-panel`),c=u(`recent-panel`),l=u(`layout`);return g(),p(l,null,{config:m(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:m(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var wn=B(Sn,[[`render`,Cn]]);export{wn as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,F as t,I as n,Jt as r,L as i,M as a,N as o,T as s,at as c,it as l,j as u,mt as d,rt as f,tt as p,z as m}from"./vendor-chart-Dw-P17PN.js";import{r as h,t as g}from"./select-D0gYN9N3.js";import{h as _,v}from"./models-PmOthmjQ.js";import{n as y,t as b}from"./collapse-BrPGjxsq.js";import{t as x}from"./drawer-DZIcn6a0.js";import{t as S}from"./circle-question-mark-DoJBAerP.js";import{t as C}from"./globe-CzHj-iBe.js";import{t as w}from"./search-XuVnwR9U.js";import"./constants-BAu6gjb8.js";import{Bn as T,Fr as ee,O as E,Xi as te,an as D,mn as O,ua as k,va as A,zn as j}from"./index-Bbaw1dFE.js";import{n as M,t as N}from"./scenarioPayment-s_hqMl_Z.js";import{t as P}from"./Consumption-Bdsy-uO_.js";import{t as F}from"./ScenarioPaymentMode-KgrScg5P.js";var I=m({name:`LayoutSerp`,components:{SearchIcon:w,ElDrawer:x,ElButton:k},data(){return{drawer:!1}}}),L={class:`main flex flex-row flex-1`},R={class:`config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},z={class:`result h-full flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function B(t,n,r,a,s,u){let f=c(`search-icon`),m=c(`el-button`),h=c(`el-drawer`);return p(),o(`div`,L,[e(`div`,R,[l(t.$slots,`config`,{},void 0,!0)]),e(`div`,z,[l(t.$slots,`result`,{},void 0,!0)]),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:d(()=>[i(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),i(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer`},{default:d(()=>[l(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var V=E(I,[[`render`,B],[`__scopeId`,`data-v-fc67ba0b`]]),H=m({name:`QueryInput`,components:{ElInput:A},computed:{query:{get(){return this.$store.state.serp?.config?.query},set(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,query:e})}}}}),U={class:`field`},W={class:`box`},G={class:`title font-bold`};function K(t,n,a,s,l,u){let d=c(`el-input`);return p(),o(`div`,U,[e(`div`,W,[e(`h2`,G,r(t.$t(`serp.name.query`)),1)]),i(d,{modelValue:t.query,"onUpdate:modelValue":n[0]||=e=>t.query=e,rows:3,type:`textarea`,class:`prompt`,placeholder:t.$t(`serp.placeholder.query`)},null,8,[`modelValue`,`placeholder`])])}var q=E(H,[[`render`,K],[`__scopeId`,`data-v-3582b195`]]),J=m({name:`TypeSelector`,components:{ElSelect:h,ElOption:g},computed:{value:{get(){return this.$store.state.serp?.config?.type},set(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,type:e})}}},mounted(){this.value||=`search`}}),Y={class:`field`},X={class:`title font-bold`};function Z(t,n,a,s,l,u){let f=c(`el-option`),m=c(`el-select`);return p(),o(`div`,Y,[e(`h2`,X,r(t.$t(`serp.name.type`)),1),i(m,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},{default:d(()=>[i(f,{value:`search`,label:t.$t(`serp.type.search`)},null,8,[`label`]),i(f,{value:`images`,label:t.$t(`serp.type.images`)},null,8,[`label`]),i(f,{value:`news`,label:t.$t(`serp.type.news`)},null,8,[`label`]),i(f,{value:`videos`,label:t.$t(`serp.type.videos`)},null,8,[`label`])]),_:1},8,[`modelValue`])])}var Q=E(J,[[`render`,Z],[`__scopeId`,`data-v-2913fb62`]]),ne=m({name:`CountryInput`,components:{ElInput:A},computed:{value:{get(){return this.$store.state.serp?.config?.country},set(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,country:e})}}},mounted(){this.value||=`US`}}),re={class:`field`},ie={class:`title font-bold`};function ae(t,n,a,s,l,u){let d=c(`el-input`);return p(),o(`div`,re,[e(`h2`,ie,r(t.$t(`serp.name.country`)),1),i(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`serp.placeholder.country`)},null,8,[`modelValue`,`placeholder`])])}var oe=E(ne,[[`render`,ae],[`__scopeId`,`data-v-f0672cc6`]]),se=m({name:`LanguageInput`,components:{ElInput:A},computed:{value:{get(){return this.$store.state.serp?.config?.language},set(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,language:e})}}},mounted(){this.value||=`en`}}),ce={class:`field`},le={class:`title font-bold`};function ue(t,n,a,s,l,u){let d=c(`el-input`);return p(),o(`div`,ce,[e(`h2`,le,r(t.$t(`serp.name.language`)),1),i(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`serp.placeholder.language`)},null,8,[`modelValue`,`placeholder`])])}var de=m({name:`SearchPanel`,components:{SearchIcon:w,ElButton:k,QueryInput:q,TypeSelector:Q,CountryInput:oe,LanguageInput:E(se,[[`render`,ue],[`__scopeId`,`data-v-dc1c94b7`]]),Consumption:P,ScenarioPaymentMode:F},emits:[`search`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.serp?.config},consumption(){return D(this.config,this.service?.cost)},service(){return this.$store.state.serp?.service},searching(){return this.$store.state.serp?.status?.search===_.Request},walletMode(){return N()&&M(`serp`).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.quoteTimer=window.setTimeout(this.refreshQuote,350)},async refreshQuote(){let e=M(`serp`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await T.quote(j(this.config));t===this.quoteRunId&&e.mode===`wallet`&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onSearch(){this.$emit(`search`)}}}),fe={class:`flex flex-col h-full`},pe={class:`flex-1 overflow-y-auto p-5`},me={class:`flex flex-col items-center justify-center px-5 pb-5`};function he(t,s,l,f,m,h){let g=c(`query-input`),_=c(`type-selector`),v=c(`country-input`),y=c(`language-input`),b=c(`scenario-payment-mode`),x=c(`consumption`),S=c(`search-icon`),C=c(`el-button`);return p(),o(`div`,fe,[e(`div`,pe,[i(g,{class:`mb-4`}),i(_,{class:`mb-4`}),i(v,{class:`mb-4`}),i(y,{class:`mb-4`})]),e(`div`,me,[i(b,{scenario:`serp`}),t.walletMode?a(``,!0):(p(),u(x,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),i(C,{type:`primary`,class:`btn w-full`,round:``,loading:t.searching,onClick:t.onSearch},{default:d(()=>[i(S,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(t.$t(`serp.button.search`)),1)]),_:1},8,[`loading`,`onClick`])])])}var ge=E(de,[[`render`,he]]),_e=m({name:`KnowledgeGraph`,props:{data:{type:Object,required:!0}}}),ve={class:`knowledge-graph rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},ye={class:`flex flex-row gap-4`},be=[`src`,`alt`],xe={class:`flex-1 min-w-0`},Se={key:0,class:`text-xs text-[var(--el-text-color-disabled)] mb-1 uppercase tracking-wide`},Ce={class:`text-xl font-bold mb-1.5`},we={key:1,class:`text-sm text-[var(--el-text-color-regular)] mb-3 leading-relaxed`},Te=[`href`],Ee={key:2,class:`text-sm`},De={class:`text-[var(--el-text-color-disabled)] flex-none font-medium`},Oe={class:`text-[var(--el-text-color-regular)]`};function ke(t,i,c,l,u,d){return p(),o(`div`,ve,[e(`div`,ye,[t.data.image_url?(p(),o(`img`,{key:0,src:t.data.image_url,alt:t.data.title,class:`w-28 h-28 rounded-lg object-cover flex-none shadow-sm`},null,8,be)):a(``,!0),e(`div`,xe,[t.data.type?(p(),o(`div`,Se,r(t.data.type),1)):a(``,!0),e(`h3`,Ce,r(t.data.title),1),t.data.description?(p(),o(`p`,we,[n(r(t.data.description)+` `,1),t.data.description_link?(p(),o(`a`,{key:0,href:t.data.description_link,target:`_blank`,rel:`noopener noreferrer`,class:`text-[var(--el-color-primary)] hover:underline ml-1`},r(t.data.description_source||`Source`),9,Te)):a(``,!0)])):a(``,!0),t.data.attributes&&Object.keys(t.data.attributes).length?(p(),o(`div`,Ee,[(p(!0),o(s,null,f(t.data.attributes,(t,n)=>(p(),o(`div`,{key:n,class:`flex gap-2 mb-1 py-0.5`},[e(`span`,De,r(n)+`:`,1),e(`span`,Oe,r(t),1)]))),128))])):a(``,!0)])])])}var Ae=E(_e,[[`render`,ke]]),je=m({name:`OrganicResult`,props:{data:{type:Object,required:!0}},data(){return{faviconFailed:!1}},computed:{hostname(){if(!this.data.link)return``;try{return new URL(this.data.link).hostname}catch{return``}},pathname(){if(!this.data.link)return``;try{let e=new URL(this.data.link).pathname;return e===`/`?``:e}catch{return``}},displayUrl(){return this.hostname},faviconUrl(){return this.faviconFailed||!this.hostname?``:`https://www.google.com/s2/favicons?domain=${this.hostname}&sz=32`}},methods:{onFaviconError(e){this.faviconFailed=!0,e.target.style.display=`none`}}}),Me={class:`organic-result rounded-lg p-4 transition-all duration-200 hover:bg-[var(--el-fill-color-lighter)]`},Ne={key:0,class:`flex items-center gap-2 mb-1.5`},Pe=[`src`,`alt`],Fe={class:`text-xs text-[var(--el-text-color-secondary)] truncate`},Ie={class:`text-xs text-[var(--el-text-color-disabled)]`},Le=[`href`],Re={key:1,class:`text-xs text-[var(--el-text-color-disabled)] mt-1`},ze={key:2,class:`text-sm text-[var(--el-text-color-regular)] mt-1.5 leading-relaxed line-clamp-3`},Be={key:3,class:`mt-3 flex flex-wrap gap-x-4 gap-y-1`},Ve=[`href`];function He(t,n,i,c,l,u){return p(),o(`div`,Me,[t.displayUrl?(p(),o(`div`,Ne,[e(`img`,{src:t.faviconUrl,alt:t.hostname,class:`w-4 h-4 rounded-sm flex-none`,loading:`lazy`,onError:n[0]||=(...e)=>t.onFaviconError&&t.onFaviconError(...e)},null,40,Pe),e(`span`,Fe,r(t.hostname),1),e(`span`,Ie,r(t.pathname),1)])):a(``,!0),e(`a`,{href:t.data.link,target:`_blank`,rel:`noopener noreferrer`,class:`text-base font-semibold text-[var(--el-color-primary)] hover:underline leading-snug block`},r(t.data.title),9,Le),t.data.date?(p(),o(`div`,Re,r(t.data.date),1)):a(``,!0),t.data.snippet?(p(),o(`p`,ze,r(t.data.snippet),1)):a(``,!0),t.data.sitelinks?.length?(p(),o(`div`,Be,[(p(!0),o(s,null,f(t.data.sitelinks,(e,t)=>(p(),o(`a`,{key:t,href:e.link,target:`_blank`,rel:`noopener noreferrer`,class:`text-xs text-[var(--el-color-primary-light-3)] hover:text-[var(--el-color-primary)] hover:underline transition-colors`},r(e.title),9,Ve))),128))])):a(``,!0)])}var Ue=E(je,[[`render`,He]]),We=m({name:`ImageResults`,props:{data:{type:Array,required:!0}}}),Ge={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},Ke={class:`text-base font-bold mb-3`},qe={class:`grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3`},Je=[`href`],Ye=[`src`,`alt`],Xe={class:`absolute inset-x-0 bottom-0 bg-gradient-to-t from-black/70 to-transparent p-2.5 opacity-0 group-hover:opacity-100 transition-opacity duration-200`},Ze={class:`text-xs text-white line-clamp-2`};function Qe(t,n,i,c,l,u){return p(),o(`div`,Ge,[e(`h3`,Ke,r(t.$t(`serp.name.imageResults`)),1),e(`div`,qe,[(p(!0),o(s,null,f(t.data,(t,n)=>(p(),o(`a`,{key:n,href:t.link,target:`_blank`,rel:`noopener noreferrer`,class:`group relative rounded-lg overflow-hidden bg-[var(--el-fill-color-light)] aspect-square`},[t.image_url?(p(),o(`img`,{key:0,src:t.image_url,alt:t.title,class:`w-full h-full object-cover transition-transform duration-300 group-hover:scale-105`,loading:`lazy`},null,8,Ye)):a(``,!0),e(`div`,Xe,[e(`span`,Ze,r(t.title),1)])],8,Je))),128))])])}var $e=E(We,[[`render`,Qe]]),et=m({name:`VideoResults`,props:{data:{type:Array,required:!0}}}),tt={class:`text-base font-bold mb-3`},nt={class:`space-y-4`},rt=[`href`],it={class:`relative flex-shrink-0 w-40 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800`},at=[`src`,`alt`],ot={key:1,class:`absolute bottom-1 right-1 bg-black/80 text-white text-xs px-1 rounded`},st={class:`flex-1 min-w-0`},ct={class:`text-blue-600 group-hover:underline font-medium line-clamp-2`},lt={class:`text-xs text-gray-400 mt-1`},ut={key:0},dt={key:1},ft={key:2},pt={key:0,class:`text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2`};function mt(t,n,i,c,l,u){return p(),o(`div`,null,[e(`h3`,tt,r(t.$t(`serp.name.videoResults`)),1),e(`div`,nt,[(p(!0),o(s,null,f(t.data,(t,n)=>(p(),o(`a`,{key:n,href:t.link,target:`_blank`,rel:`noopener noreferrer`,class:`flex gap-4 group`},[e(`div`,it,[t.image_url?(p(),o(`img`,{key:0,src:t.image_url,alt:t.title,class:`w-full h-full object-cover`,loading:`lazy`},null,8,at)):a(``,!0),t.duration?(p(),o(`div`,ot,r(t.duration),1)):a(``,!0)]),e(`div`,st,[e(`div`,ct,r(t.title),1),e(`div`,lt,[t.source?(p(),o(`span`,ut,r(t.source),1)):a(``,!0),t.channel?(p(),o(`span`,dt,` · `+r(t.channel),1)):a(``,!0),t.date?(p(),o(`span`,ft,` · `+r(t.date),1)):a(``,!0)]),t.snippet?(p(),o(`p`,pt,r(t.snippet),1)):a(``,!0)])],8,rt))),128))])])}var ht=E(et,[[`render`,mt]]),gt=m({name:`NewsResults`,props:{data:{type:Array,required:!0}}}),_t={class:`text-base font-bold mb-3`},vt={class:`space-y-4`},yt=[`href`],bt={class:`flex-1 min-w-0`},xt={class:`text-blue-600 group-hover:underline font-medium line-clamp-2`},St={class:`text-xs text-gray-400 mt-1`},Ct={key:0},wt={key:1},Tt={key:0,class:`text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2`},Et={key:0,class:`flex-shrink-0 w-24 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800`},Dt=[`src`,`alt`];function Ot(t,n,i,c,l,u){return p(),o(`div`,null,[e(`h3`,_t,r(t.$t(`serp.name.newsResults`)),1),e(`div`,vt,[(p(!0),o(s,null,f(t.data,(t,n)=>(p(),o(`a`,{key:n,href:t.link,target:`_blank`,rel:`noopener noreferrer`,class:`flex gap-4 group`},[e(`div`,bt,[e(`div`,xt,r(t.title),1),e(`div`,St,[t.source?(p(),o(`span`,Ct,r(t.source),1)):a(``,!0),t.date?(p(),o(`span`,wt,` · `+r(t.date),1)):a(``,!0)]),t.snippet?(p(),o(`p`,Tt,r(t.snippet),1)):a(``,!0)]),t.image_url?(p(),o(`div`,Et,[e(`img`,{src:t.image_url,alt:t.title,class:`w-full h-full object-cover`,loading:`lazy`},null,8,Dt)])):a(``,!0)],8,yt))),128))])])}var kt=E(gt,[[`render`,Ot]]),At=m({name:`PeopleAlsoAsk`,components:{ElCollapse:b,ElCollapseItem:y},props:{data:{type:Array,required:!0}}}),jt={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},Mt={class:`text-base font-bold mb-3`},Nt={key:0,class:`text-sm text-[var(--el-text-color-regular)] mb-2 leading-relaxed`},Pt=[`href`];function Ft(t,n,l,m,h,g){let _=c(`el-collapse-item`),v=c(`el-collapse`);return p(),o(`div`,jt,[e(`h3`,Mt,r(t.$t(`serp.name.peopleAlsoAsk`)),1),i(v,null,{default:d(()=>[(p(!0),o(s,null,f(t.data,(e,t)=>(p(),u(_,{key:t,title:e.question||e.title||``},{default:d(()=>[e.snippet?(p(),o(`p`,Nt,r(e.snippet),1)):a(``,!0),e.link?(p(),o(`a`,{key:1,href:e.link,target:`_blank`,rel:`noopener noreferrer`,class:`text-xs text-[var(--el-color-primary)] hover:underline`},r(e.title||e.link),9,Pt)):a(``,!0)]),_:2},1032,[`title`]))),128))]),_:1})])}var It=E(At,[[`render`,Ft]]),Lt=m({name:`RelatedSearches`,components:{SearchIcon:w},props:{data:{type:Array,required:!0}},emits:[`search`],methods:{onSearch(e){e&&this.$emit(`search`,e)}}}),Rt={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},zt={class:`text-base font-bold mb-3`},Bt={class:`flex flex-wrap gap-2`},$=[`onClick`];function Vt(t,a,l,u,d,m){let h=c(`search-icon`);return p(),o(`div`,Rt,[e(`h3`,zt,r(t.$t(`serp.name.relatedSearches`)),1),e(`div`,Bt,[(p(!0),o(s,null,f(t.data,(e,a)=>(p(),o(`button`,{key:a,class:`inline-flex items-center gap-1.5 px-3 py-1.5 rounded-full text-sm bg-[var(--el-fill-color-light)] text-[var(--el-text-color-regular)] hover:bg-[var(--el-color-primary-light-9)] hover:text-[var(--el-color-primary)] transition-colors cursor-pointer border-none`,onClick:n=>t.onSearch(e.query)},[i(h,{class:`text-xs opacity-50`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(e.query),1)],8,$))),128))])])}var Ht=m({name:`ResultPanel`,components:{GlobeIcon:C,HelpIcon:S,KnowledgeGraph:Ae,OrganicResult:Ue,ImageResults:$e,VideoResults:ht,NewsResults:kt,PeopleAlsoAsk:It,RelatedSearches:E(Lt,[[`render`,Vt]])},emits:[`related-search`],computed:{results(){return this.$store.state.serp?.results},searching(){return this.$store.state.serp?.status?.search===_.Request},noResults(){return this.$store.state.serp?.status?.search===_.Success&&this.results&&!this.results.organic?.length&&!this.results.images?.length&&!this.results.videos?.length&&!this.results.news?.length&&!this.results.knowledge_graph?.title}},methods:{onRelatedSearch(e){this.$emit(`related-search`,e)}}}),Ut={class:`h-full overflow-y-auto p-6`},Wt={key:0,class:`max-w-3xl mx-auto py-8`},Gt={key:1,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Kt={class:`text-base`},qt={key:2,class:`max-w-3xl mx-auto`},Jt={key:1,class:`mb-6`},Yt={key:3,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Xt={class:`text-base`};function Zt(n,l,d,m,h,g){let _=c(`help-icon`),v=c(`knowledge-graph`),y=c(`organic-result`),b=c(`image-results`),x=c(`video-results`),S=c(`news-results`),C=c(`people-also-ask`),w=c(`related-searches`),T=c(`globe-icon`);return p(),o(`div`,Ut,[n.searching?(p(),o(`div`,Wt,[(p(),o(s,null,f(4,n=>e(`div`,{key:n,class:`mb-6 animate-pulse`},[...l[0]||=[t(`<div class="flex items-center gap-2 mb-2"><div class="w-4 h-4 rounded-sm bg-[var(--el-fill-color-darker)]"></div><div class="h-3 w-32 rounded bg-[var(--el-fill-color-darker)]"></div></div><div class="h-4 w-3/4 rounded bg-[var(--el-fill-color-dark)] mb-2"></div><div class="h-3 w-full rounded bg-[var(--el-fill-color)] mb-1"></div><div class="h-3 w-5/6 rounded bg-[var(--el-fill-color)]"></div>`,4)]])),64))])):n.noResults?(p(),o(`div`,Gt,[i(_,{class:`text-5xl mb-4 opacity-40`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,Kt,r(n.$t(`serp.message.noResults`)),1)])):n.results?(p(),o(`div`,qt,[n.results.knowledge_graph?.title?(p(),u(v,{key:0,data:n.results.knowledge_graph,class:`mb-6`},null,8,[`data`])):a(``,!0),n.results.organic?.length?(p(),o(`div`,Jt,[(p(!0),o(s,null,f(n.results.organic,(e,t)=>(p(),u(y,{key:t,data:e,class:`mb-1`},null,8,[`data`]))),128))])):a(``,!0),n.results.images?.length?(p(),u(b,{key:2,data:n.results.images,class:`mb-6`},null,8,[`data`])):a(``,!0),n.results.videos?.length?(p(),u(x,{key:3,data:n.results.videos,class:`mb-6`},null,8,[`data`])):a(``,!0),n.results.news?.length?(p(),u(S,{key:4,data:n.results.news,class:`mb-6`},null,8,[`data`])):a(``,!0),n.results.people_also_ask?.length?(p(),u(C,{key:5,data:n.results.people_also_ask,class:`mb-6`},null,8,[`data`])):a(``,!0),n.results.related_searches?.length?(p(),u(w,{key:6,data:n.results.related_searches,class:`mb-6`,onSearch:n.onRelatedSearch},null,8,[`data`,`onSearch`])):a(``,!0)])):(p(),o(`div`,Yt,[i(T,{class:`text-5xl mb-4 opacity-30`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,Xt,r(n.$t(`serp.description.query`)),1)]))])}var Qt=m({name:`SerpIndex`,components:{Layout:V,SearchPanel:ge,ResultPanel:E(Ht,[[`render`,Zt]])},inject:[`initialized`],computed:{credential(){return this.$store.state.serp?.credential},walletMode(){return N()&&M(`serp`).mode===`wallet`}},async mounted(){await this.onGetService()},methods:{async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`serp/getService`),console.debug(`end onGetService`)},async onSearch(){if(!this.$store.state.serp?.config?.query)return;let e;if(this.walletMode){let t=this.getWalletContext();if(!t){v.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}e={mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}}}else if(!O())return;v.info(this.$t(`serp.message.searching`));try{await this.$store.dispatch(`serp/search`,e),v.success(this.$t(`serp.message.searchSuccess`))}catch(e){if(e instanceof ee)return;(e?.response?.data)?.error?.code===`used_up`?v.error(this.$t(`serp.message.usedUp`)):this.walletMode?v.error(`${this.$t(`common.x402Scenario.paymentFailed`)} ${e?.message||``}`.trim()):v.error(this.$t(`serp.message.searchFailed`))}},getWalletContext(){let e=this.$wallet,t=e?.publicKey?.value,n=e?.wallet?.value?.adapter;if(!(!t||!n?.signTransaction))return{publicKey:t,signTransaction:n.signTransaction.bind(n)}},async confirmWalletPayment(e){return te.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)},async onRelatedSearch(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,query:e}),await this.onSearch()}}});function $t(e,t,n,r,a,o){let s=c(`search-panel`),l=c(`result-panel`),f=c(`layout`);return p(),u(f,null,{config:d(()=>[i(s,{onSearch:e.onSearch},null,8,[`onSearch`])]),result:d(()=>[i(l,{onRelatedSearch:e.onRelatedSearch},null,8,[`onRelatedSearch`])]),_:1})}var en=E(Qt,[[`render`,$t]]);export{en as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,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,Vt as m,Wt as h,b as g,ft as _,ht as v,it as y,j as b,k as x,mt as S,qt as C,rt as w,st as T,tt as E,wt as D,z as O}from"./vendor-chart-Dw-P17PN.js";import{$ as k,X as A,dt as ee,et as j,rt as te,st as ne,wt as re,xt as M}from"./icon-CDmWyIgD.js";import{a as N,c as P,t as F}from"./install-Cn-SLM3u.js";import{r as ie,t as I}from"./select-BPmmsYsL.js";import{t as L}from"./use-aria-DApzlmKf.js";import{n as R,t as z}from"./form-BdKMEyCR.js";import{r as B,t as V}from"./event-BGnHezxC.js";import{_ as ae,h as oe,v as se}from"./models-D6J60Ang.js";import{a as ce,c as le,i as ue,n as de,r as fe}from"./use-deprecated-BAB4ggjd.js";import{t as pe}from"./input-number-C61XfqeG.js";import{t as me}from"./arrow-left-igb8AMz_.js";import{t as he}from"./arrow-right-CGXNgdDZ.js";import{t as ge}from"./arrow-up-Drhcfl9s.js";import{t as _e}from"./box-C1K_05R1.js";import{t as H}from"./check-sZ3LdzYe.js";import{t as ve}from"./chevron-down-B9A1h-il.js";import{t as ye}from"./chevron-right-CSsOai_n.js";import{t as be}from"./copy-CS92scYJ.js";import{t as xe}from"./download-BdbUJy-0.js";import{t as U}from"./file-text-CJaP1sSt.js";import{t as Se}from"./history-Drg92s0e.js";import{t as W}from"./house-B1TwBkue.js";import{t as Ce}from"./image-DLh3kiN0.js";import{t as we}from"./loader-circle-BOu6l4ZA.js";import{t as G}from"./mouse-pointer-2-BJ6u3j3g.js";import{t as K}from"./music-2-CuTbesAz.js";import{t as Te}from"./play-DUVZyA7n.js";import{t as Ee}from"./plus-Coq-6ZBW.js";import{t as De}from"./search-C73sRSFS.js";import{t as Oe}from"./sparkles-BwWvghRX.js";import{t as ke}from"./trash-2-Cf1lYl_N.js";import{t as Ae}from"./triangle-alert-_LVPy92s.js";import{t as je}from"./upload-CTvrSmVZ.js";import{t as Me}from"./video-BaKcHmj6.js";import{i as q}from"./i18n-thhk7vzg.js";import{Di as Ne,Ei as J,Mi as Pe,O as Y,Vi as X,Yi as Z}from"./index-DKnFv8oI.js";import{t as Fe}from"./VideoPlayer-B9ZoxGwN.js";var Ie={label:`label`,value:`value`,disabled:`disabled`},Le=k({direction:{type:j(String),default:`horizontal`},options:{type:j(Array),default:()=>[]},modelValue:{type:[String,Number,Boolean],default:void 0},props:{type:j(Object),default:()=>Ie},block:Boolean,size:A,disabled:Boolean,validateEvent:{type:Boolean,default:!0},id:String,name:String,...L([`ariaLabel`])}),Re={[B]:e=>h(e)||re(e)||M(e),[V]:e=>h(e)||re(e)||M(e)},ze=F(N(O({...O({name:`ElSegmented`}),props:Le,emits:Re,setup(t,{emit:a}){let o=t,u=P(`segmented`),d=le(),h=fe(),g=de(),{formItem:v}=ue(),{inputId:b,isLabeledByFormItem:S}=ce(o,{formItemContext:v}),T=D(null),O=ne(),k=f({isInit:!1,width:0,height:0,translateX:0,translateY:0,focusVisible:!1}),A=e=>{let t=re(e);a(B,t),a(V,t)},j=x(()=>({...Ie,...o.props})),re=e=>m(e)?e[j.value.value]:e,M=e=>m(e)?e[j.value.label]:e,N=e=>!!(g.value||m(e)&&e[j.value.disabled]),F=e=>o.modelValue===re(e),ie=e=>o.options.find(t=>re(t)===e),I=e=>[u.e(`item`),u.is(`selected`,F(e)),u.is(`disabled`,N(e))],L=()=>{if(!T.value)return;let e=T.value.querySelector(`.is-selected`),t=T.value.querySelector(`.is-selected input`);if(!e||!t){k.width=0,k.height=0,k.translateX=0,k.translateY=0,k.focusVisible=!1;return}let n=e.getBoundingClientRect();k.isInit=!0,o.direction===`vertical`?(k.height=n.height,k.translateY=e.offsetTop):(k.width=n.width,k.translateX=e.offsetLeft);try{k.focusVisible=t.matches(`:focus-visible`)}catch{}},R=x(()=>[u.b(),u.m(h.value),u.is(`block`,o.block)]),z=x(()=>({width:o.direction===`vertical`?`100%`:`${k.width}px`,height:o.direction===`vertical`?`${k.height}px`:`100%`,transform:o.direction===`vertical`?`translateY(${k.translateY}px)`:`translateX(${k.translateX}px)`,display:k.isInit?`block`:`none`})),ae=x(()=>[u.e(`item-selected`),u.is(`disabled`,N(ie(o.modelValue))),u.is(`focus-visible`,k.focusVisible)]),oe=x(()=>o.name||d.value);return ee(T,L),_(O,L),_(()=>o.modelValue,()=>{var e;L(),o.validateEvent&&((e=v?.validate)==null||e.call(v,`change`).catch(e=>te(e)))},{flush:`post`}),(t,a)=>t.options.length?(E(),l(`div`,{key:0,id:c(b),ref_key:`segmentedRef`,ref:T,class:n(c(R)),role:`radiogroup`,"aria-label":c(S)?void 0:t.ariaLabel||`segmented`,"aria-labelledby":c(S)?c(v).labelId:void 0},[e(`div`,{class:n([c(u).e(`group`),c(u).m(o.direction)])},[e(`div`,{style:C(c(z)),class:n(c(ae))},null,6),(E(!0),l(p,null,w(t.options,(a,o)=>(E(),l(`label`,{key:o,class:n(I(a))},[e(`input`,{class:n(c(u).e(`item-input`)),type:`radio`,name:c(oe),disabled:N(a),checked:F(a),onChange:e=>A(a)},null,42,[`name`,`disabled`,`checked`,`onChange`]),e(`div`,{class:n(c(u).e(`item-label`))},[y(t.$slots,`default`,{item:a},()=>[r(i(M(a)),1)])],2)],2))),128))],2)],10,[`id`,`aria-label`,`aria-labelledby`])):s(`v-if`,!0)}}),[[`__file`,`segmented.vue`]])),Be=J(`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`}]]),Ve=J(`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`}]]),He=J(`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=J(`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`}]]),Ue=J(`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=J(`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`}]]),Ge=J(`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`}]]),Ke=J(`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`}]]),qe=J(`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`}]]),Je=J(`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`}]]),Ye=J(`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`}]]),Xe={class:`discovery-home`},Ze={class:`discovery-header`},Qe={class:`brand`},$e={class:`project-links`},et=[`title`,`aria-label`,`onClick`],$={key:0,class:`discovery-state`,role:`status`},tt={class:`creator`,"aria-labelledby":`poivelle-create-title`},nt={class:`creator-kicker`},rt={id:`poivelle-create-title`},it=[`aria-label`],at=[`disabled`,`onClick`],ot=[`placeholder`,`disabled`],st={class:`composer-footer`},ct=[`disabled`,`title`],lt={class:`prompt-starters`},ut=[`disabled`,`onClick`],dt={class:`works`,"aria-labelledby":`poivelle-works-title`},ft={class:`works-heading`},pt={id:`poivelle-works-title`},mt={class:`search`},ht=[`placeholder`,`aria-label`],gt={class:`category-tabs`},_t=[`onClick`],vt={class:`work-grid`},yt={class:`cover`},bt=[`src`,`alt`,`onError`],xt={key:2,class:`film-badge`},St=[`aria-label`,`onClick`],Ct={class:`duration-badge`},wt={class:`work-copy`},Tt={class:`work-meta`},Et={class:`work-actions`},Dt=[`onClick`],Ot=[`disabled`,`onClick`],kt={key:0,class:`film-dialog-heading`},At={id:`poivelle-film-dialog-title`},jt=Y(O({__name:`DiscoveryHome`,emits:[`open-studio`],setup(a,{emit:d}){let f=d,m=ae(),h=x(()=>m.state.poivelle),_=x(()=>h.value?.projects??[]),y=x(()=>h.value?.discoveryWorks??[]),C=D(``),O=D(``),k=D(!1),A=D(),ee=D(new Set),j=D(`official:pulsecam`),te=D(`all`),ne=[{workId:`official:pulsecam`,label:`poivelle.discovery.commercial`,icon:Q},{workId:`official:moonlit-signal`,label:`poivelle.discovery.musicVideo`,icon:K},{workId:`official:northstar-origin`,label:`poivelle.discovery.documentary`,icon:He}],re=[`poivelle.discovery.starterProduct`,`poivelle.discovery.starterMusic`,`poivelle.discovery.starterDocumentary`],M=[{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`}],N=x(()=>{let e=O.value.trim().toLowerCase();return y.value.filter(t=>(te.value===`all`||t.category===te.value)&&(!e||`${t.title} ${t.description} ${t.creator_name} ${(t.tags??[]).join(` `)}`.toLowerCase().includes(e)))}),P=x(()=>h.value?.status?.bootstrap===oe.Request),F=x(()=>h.value?.error),ie=x({get:()=>!!A.value,set:e=>{e||(A.value=void 0)}}),I=x(()=>{let e=y.value.find(e=>e.id===j.value);return e&&e.copyable!==!1?e:y.value.find(e=>e.copyable!==!1)}),L=()=>m.dispatch(`poivelle/bootstrap`,{loadProject:!1}),R=e=>{ee.value=new Set([...ee.value,e])},z=e=>e.video_url?.startsWith(`https://`)?e.video_url:void 0,B=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:q(`poivelle.error.generic`)},V=e=>{let t=Math.floor(e/60),n=e%60;return t?`${t}:${n.toString().padStart(2,`0`)}`:`0:${n.toString().padStart(2,`0`)}`},ce=async e=>{await m.dispatch(`poivelle/loadProject`,e),f(`open-studio`)},le=async(e,t)=>{if(!k.value){k.value=!0;try{await m.dispatch(`poivelle/copyDiscoveryWork`,{work_id:e.id,prompt:t,title:t.slice(0,80)}),f(`open-studio`)}catch(e){se.error(B(e))}finally{k.value=!1}}},ue=async()=>{let e=I.value;e&&C.value.trim()&&await le(e,C.value.trim())},de=async e=>{await le(e,C.value.trim()||`${q(`poivelle.discovery.copyPrefix`)} ${e.title}`)};return u(L),(a,u)=>(E(),l(`main`,Xe,[e(`header`,Ze,[e(`div`,Qe,[o(c(Q),{size:19,"aria-hidden":`true`}),u[3]||=r(` POIVELLE`,-1)]),e(`div`,$e,[(E(!0),l(p,null,w(_.value.slice(0,3),e=>(E(),l(`button`,{key:e.id,type:`button`,title:e.title,"aria-label":e.title,onClick:t=>ce(e.id)},[r(i(e.title)+` `,1),o(c(ye),{size:13,"aria-hidden":`true`})],8,et))),128))])]),P.value||F.value?(E(),l(`div`,$,[P.value?(E(),b(c(we),{key:0,size:16,class:`spinning`,"aria-hidden":`true`})):s(``,!0),e(`span`,null,i(P.value?a.$t(`poivelle.status.loading`):F.value),1),F.value?(E(),l(`button`,{key:1,type:`button`,onClick:L},i(a.$t(`poivelle.action.retry`)),1)):s(``,!0)])):s(``,!0),e(`section`,tt,[e(`p`,nt,i(a.$t(`poivelle.discovery.kicker`)),1),e(`h1`,rt,i(a.$t(`poivelle.discovery.title`)),1),e(`div`,{class:`mode-switch`,"aria-label":a.$t(`poivelle.discovery.skills`)},[(E(),l(p,null,w(ne,t=>e(`button`,{key:t.workId,type:`button`,class:n({active:j.value===t.workId}),disabled:P.value,onClick:e=>j.value=t.workId},[(E(),b(T(t.icon),{size:15,"aria-hidden":`true`})),r(` `+i(a.$t(t.label)),1)],10,at)),64))],8,it),e(`form`,{class:`composer`,onSubmit:t(ue,[`prevent`])},[v(e(`textarea`,{"onUpdate:modelValue":u[0]||=e=>C.value=e,placeholder:a.$t(`poivelle.discovery.placeholder`),disabled:P.value,maxlength:`500`,rows:`4`},null,8,ot),[[g,C.value]]),e(`div`,st,[e(`span`,null,i(C.value.length)+`/500`,1),e(`button`,{type:`submit`,disabled:!C.value.trim()||!I.value||P.value||k.value,title:a.$t(`poivelle.discovery.create`)},[k.value?(E(),b(c(we),{key:0,size:18,class:`spinning`,"aria-hidden":`true`})):(E(),b(c(ge),{key:1,size:18,"aria-hidden":`true`}))],8,ct)])],32),e(`div`,lt,[(E(),l(p,null,w(re,t=>e(`button`,{key:t,type:`button`,disabled:P.value,onClick:e=>C.value=a.$t(t)},i(a.$t(t)),9,ut)),64))])]),e(`section`,dt,[e(`div`,ft,[e(`div`,null,[e(`span`,null,i(a.$t(`poivelle.discovery.galleryKicker`)),1),e(`h2`,pt,i(a.$t(`poivelle.discovery.gallery`)),1)]),e(`label`,mt,[o(c(De),{size:16,"aria-hidden":`true`}),v(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,ht),[[g,O.value]])])]),e(`div`,gt,[(E(),l(p,null,w(M,t=>e(`button`,{key:t.value,type:`button`,class:n({active:te.value===t.value}),onClick:e=>te.value=t.value},i(a.$t(t.label)),11,_t)),64))]),e(`div`,vt,[(E(!0),l(p,null,w(N.value,t=>(E(),l(`article`,{key:t.id,class:`work-card`},[e(`div`,yt,[t.cover_url&&!ee.value.has(t.id)?(E(),l(`img`,{key:0,src:t.cover_url,alt:t.title,onError:e=>R(t.id)},null,40,bt)):(E(),b(c(Ue),{key:1,size:32,"aria-hidden":`true`})),z(t)?(E(),l(`span`,xt,i(a.$t(`poivelle.discovery.finishedFilm`)),1)):s(``,!0),z(t)?(E(),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(Te),{size:18,fill:`currentColor`,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.discovery.playFilm`)),1)],8,St)):s(``,!0),e(`span`,Ct,i(t.duration_seconds?V(t.duration_seconds):a.$t(`poivelle.discovery.community`)),1)]),e(`div`,wt,[e(`div`,Tt,[e(`span`,null,i(t.creator_name),1),e(`strong`,null,i(t.title),1),e(`p`,null,i(t.description),1)]),e(`div`,Et,[z(t)?(E(),l(`button`,{key:0,type:`button`,class:`play-button`,onClick:e=>A.value=t},[o(c(Te),{size:14,fill:`currentColor`,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.discovery.play`)),1)],8,Dt)):s(``,!0),t.copyable===!1?s(``,!0):(E(),l(`button`,{key:1,type:`button`,class:`copy-button`,disabled:P.value||k.value,onClick:e=>de(t)},[o(c(be),{size:14,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.discovery.copy`)),1)],8,Ot))])])]))),128))])]),o(c(Pe),{modelValue:ie.value,"onUpdate:modelValue":u[2]||=e=>ie.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:S(()=>[A.value?(E(),l(`div`,kt,[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?(E(),l(p,{key:0},[r(` · `+i(V(A.value.duration_seconds)),1)],64)):s(``,!0)])])):s(``,!0)]),default:S(()=>[A.value&&z(A.value)?(E(),b(Fe,{key:`${A.value.id}-${A.value.video_url}`,src:z(A.value)},null,8,[`src`])):s(``,!0)]),_:1},8,[`modelValue`])]))}}),[[`__scopeId`,`data-v-91feafb0`]]),Mt={class:`studio-header`},Nt={class:`identity`},Pt=[`title`],Ft={class:`wordmark`},It={key:0,class:`version`},Lt={class:`actions`},Rt={class:`sync-state`},zt=[`title`],Bt=[`disabled`],Vt=Y(O({__name:`StudioHeader`,props:{projectTitle:{},graphVersion:{},canRun:{type:Boolean},canEdit:{type:Boolean},primaryLabel:{}},emits:[`open-projects`,`home`,`commit`,`run`],setup(t){return(n,a)=>(E(),l(`header`,Mt,[e(`div`,Nt,[e(`button`,{class:`home-button`,type:`button`,title:n.$t(`poivelle.discovery.back`),onClick:a[0]||=e=>n.$emit(`home`)},[o(c(me),{size:16,"aria-hidden":`true`})],8,Pt),e(`span`,Ft,[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(ve),{size:14,"aria-hidden":`true`})]),t.graphVersion===void 0?s(``,!0):(E(),l(`span`,It,`Graph v`+i(t.graphVersion),1))]),e(`div`,Lt,[e(`span`,Rt,[a[5]||=e(`span`,{class:`sync-dot`},null,-1),r(` `+i(n.$t(`poivelle.status.synced`)),1)]),t.canEdit?(E(),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,zt)):s(``,!0),e(`button`,{class:`primary-button`,type:`button`,disabled:!t.canRun,onClick:a[3]||=e=>n.$emit(`run`)},[o(c(Te),{size:15,fill:`currentColor`,"aria-hidden":`true`}),r(` `+i(t.primaryLabel||n.$t(`poivelle.action.runSkill`)),1)],8,Bt)])]))}}),[[`__scopeId`,`data-v-86d45f69`]]),Ht={class:`production-rail`},Ut={class:`rail-section`},Wt={class:`section-heading`},Gt=[`title`],Kt={class:`project-list`},qt=[`onClick`],Jt={key:0,class:`empty-copy`},Yt={class:`rail-section assets-section`},Xt={class:`section-heading`},Zt=[`title`],Qt={class:`asset-filters`},$t=[`onClick`],en={class:`asset-list`},tn={key:0,class:`empty-copy`},nn={class:`rail-section compact-section`},rn={class:`section-heading static`},an={class:`revision-list`},on={key:0,class:`empty-copy`},sn=Y(O({__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=D(`all`),d=x(()=>u.value===`all`?r.assets:r.assets.filter(e=>e.kind===u.value)),f=e=>e===`video`?Me:e===`voice`||e===`music`||e===`sfx`?Be:e===`script`||e===`brand`?U:Ce;return(r,m)=>(E(),l(`aside`,Ht,[e(`div`,Ut,[e(`div`,Wt,[e(`span`,null,i(r.$t(`poivelle.section.projects`)),1),t.canEdit?(E(),l(`button`,{key:0,type:`button`,title:r.$t(`poivelle.project.create`),onClick:m[0]||=e=>r.$emit(`create-project`)},[o(c(Ee),{size:15,"aria-hidden":`true`})],8,Gt)):s(``,!0)]),e(`div`,Kt,[(E(!0),l(p,null,w(t.projects,a=>(E(),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,qt))),128)),t.projects.length?s(``,!0):(E(),l(`p`,Jt,i(r.$t(`poivelle.project.empty`)),1))])]),e(`div`,Yt,[e(`div`,Xt,[e(`span`,null,i(r.$t(`poivelle.section.assets`)),1),t.canEdit?(E(),l(`button`,{key:0,type:`button`,title:r.$t(`poivelle.asset.import`),onClick:m[1]||=e=>r.$emit(`import-asset`)},[o(c(je),{size:15,"aria-hidden":`true`})],8,Zt)):s(``,!0)]),e(`div`,Qt,[(E(),l(p,null,w(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,$t)),64))]),e(`div`,en,[(E(!0),l(p,null,w(d.value,t=>(E(),l(`button`,{key:t.id,type:`button`,class:`asset-row`},[(E(),b(T(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):(E(),l(`p`,tn,i(r.$t(`poivelle.asset.empty`)),1))])]),e(`div`,nn,[e(`div`,rn,[e(`span`,null,i(r.$t(`poivelle.section.revisions`)),1),o(c(Se),{size:14,"aria-hidden":`true`})]),e(`div`,an,[(E(!0),l(p,null,w(t.revisions.slice(0,4),t=>(E(),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):(E(),l(`p`,on,i(r.$t(`poivelle.revision.empty`)),1))])])]))}}),[[`__scopeId`,`data-v-71c6054d`]]),cn=[`aria-label`],ln=[`onClick`],un=Y(O({__name:`ProjectionTabs`,props:{modelValue:{},canEdit:{type:Boolean}},emits:[`update:modelValue`,`create-node`],setup(t){let a=[{value:`overview`,label:`poivelle.projection.overview`,icon:W},{value:`canvas`,label:`poivelle.projection.advanced`,icon:Ge},{value:`storyboard`,label:`poivelle.projection.storyboard`,icon:Q},{value:`timeline`,label:`poivelle.projection.timeline`,icon:Je},{value:`review`,label:`poivelle.projection.review`,icon:Ke}];return(u,d)=>(E(),l(`nav`,{class:`projection-tabs`,"aria-label":u.$t(`poivelle.projection.label`)},[(E(),l(p,null,w(a,a=>e(`button`,{key:a.value,type:`button`,class:n({active:t.modelValue===a.value}),onClick:e=>u.$emit(`update:modelValue`,a.value)},[(E(),b(T(a.icon),{size:14,"aria-hidden":`true`})),r(` `+i(u.$t(a.label)),1)],10,ln)),64)),d[1]||=e(`span`,{class:`spacer`},null,-1),t.canEdit?(E(),l(`button`,{key:0,class:`add-node`,type:`button`,onClick:d[0]||=e=>u.$emit(`create-node`)},[o(c(Ee),{size:14,"aria-hidden":`true`}),r(` `+i(u.$t(`poivelle.node.create`)),1)])):s(``,!0)],8,cn))}}),[[`__scopeId`,`data-v-393d2d3e`]]),dn={class:`connections`,"aria-hidden":`true`},fn=[`x1`,`y1`,`x2`,`y2`],pn=[`onClick`],mn={class:`node-type`},hn={class:`node-summary`},gn={key:0,class:`lock-mark`},_n={key:0,class:`empty-canvas`},vn=Y(O({__name:`GraphCanvas`,props:{graph:{},selectedNodeId:{},canEdit:{type:Boolean}},emits:[`select-node`,`create-node`],setup(a){let u=a,d=x(()=>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`}},_=x(()=>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))),v=e=>{let t=e.payload.text??e.payload.prompt??e.payload.description;return typeof t==`string`&&t?t:`Version ${e.version}`};return(u,d)=>(E(),l(`div`,{class:`graph-canvas`,onClick:d[1]||=t(e=>u.$emit(`select-node`,void 0),[`self`])},[(E(),l(`svg`,dn,[(E(!0),l(p,null,w(_.value,e=>(E(),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,fn))),128))])),(E(!0),l(p,null,w(a.graph.nodes,f=>(E(),l(`button`,{key:f.id,type:`button`,class:n([`graph-node`,`type-${f.node_type}`,{selected:f.id===a.selectedNodeId}]),style:C(g(f.id)),onClick:t(e=>u.$emit(`select-node`,f.id),[`stop`])},[e(`span`,mn,i(f.node_type),1),e(`strong`,null,i(f.title),1),e(`span`,hn,i(v(f)),1),f.locked_paths.length?(E(),l(`span`,gn,[o(c(qe),{size:11}),d[2]||=r(` locked`,-1)])):s(``,!0)],14,pn))),128)),a.graph.nodes.length?s(``,!0):(E(),l(`div`,_n,[o(c(Ge),{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?(E(),l(`button`,{key:0,type:`button`,onClick:d[0]||=e=>u.$emit(`create-node`)},[o(c(Ee),{size:15,"aria-hidden":`true`}),r(` `+i(u.$t(`poivelle.node.create`)),1)])):s(``,!0)]))]))}}),[[`__scopeId`,`data-v-cd67c1fc`]]),yn={class:`media-lane`},bn={key:0,class:`candidate-strip`},xn=[`src`],Sn=[`src`],Cn=[`onClick`],wn={key:1},Tn=[`onClick`],En={key:1,class:`unavailable-takes`},Dn={key:2,class:`empty-candidates`},On=Y(O({__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=x(()=>{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=x(()=>r.takes.filter(e=>r.nodeIds.includes(e.target_node_id)&&e.state!==`ready`)),c=D([]),u=e=>{c.value=c.value.includes(e)?c.value.filter(t=>t!==e):[...c.value.slice(-1),e]};return(r,d)=>(E(),l(`section`,yn,[e(`header`,null,[e(`span`,null,i(t.title),1),t.nodeIds[0]?(E(),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?(E(),l(`div`,bn,[(E(!0),l(p,null,w(a.value,a=>(E(),l(`article`,{key:a.key,class:n([`candidate`,{selected:a.selected,comparing:c.value.includes(a.key)}])},[t.kind===`image`?(E(),l(`img`,{key:0,src:a.artifact.storage_url,alt:``},null,8,xn)):(E(),l(`video`,{key:1,src:a.artifact.storage_url,controls:``,preload:`metadata`},null,8,Sn)),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?(E(),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,Cn)):a.selected?(E(),l(`em`,wn,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,Tn)])],2))),128))])):s(``,!0),o.value.length?(E(),l(`div`,En,[(E(!0),l(p,null,w(o.value,e=>(E(),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?(E(),l(`div`,Dn,i(r.$t(`poivelle.storyboard.noCandidates`)),1)):s(``,!0)]))}}),[[`__scopeId`,`data-v-4e385f6a`]]),kn={class:`storyboard-view`},An={key:0,class:`storyboard-heading`},jn={class:`section-label`},Mn=[`onClick`],Nn={class:`shot-number`},Pn={class:`shot-production`},Fn={class:`shot-metadata`},In={class:`prompt-columns`},Ln={class:`candidate-columns`},Rn=[`onClick`],zn={key:0,class:`empty-view`},Bn=Y(O({__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=x(()=>r.storyboard?.sections.reduce((e,t)=>e+t.shots.length,0)??0),u=x(()=>r.graph.nodes.filter(e=>[`storyboard`,`scene`,`shot`,`image`,`video`].includes(e.node_type)));return(r,d)=>(E(),l(`div`,kn,[t.storyboard?(E(),l(`header`,An,[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?(E(!0),l(p,{key:1},w(t.storyboard.sections,a=>(E(),l(`section`,{key:a.id,class:`story-section`},[e(`div`,jn,[e(`span`,null,i(String(a.order).padStart(2,`0`)),1),e(`h3`,null,i(a.title),1)]),(E(!0),l(p,null,w(a.shots,a=>(E(),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`,Nn,`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,Mn),e(`div`,Pn,[e(`dl`,Fn,[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`,In,[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`,Ln,[o(On,{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(On,{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)):(E(),l(p,{key:2},[(E(!0),l(p,null,w(u.value,(a,s)=>(E(),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,Rn))),128)),u.value.length?s(``,!0):(E(),l(`div`,zn,[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`]]),Vn={class:`timeline-view`},Hn={key:0,class:`master-output`,"aria-labelledby":`poivelle-master-title`},Un={class:`master-heading`},Wn={class:`master-kicker`},Gn={id:`poivelle-master-title`},Kn=[`href`],qn=[`src`,`aria-label`],Jn={key:0,class:`master-status`,role:`status`},Yn={key:1,class:`master-status is-error`,role:`alert`},Xn={class:`master-metadata`},Zn={class:`timeline-ruler`},Qn={key:1,class:`tracks`},$n={class:`track-label`},er={class:`track-lane`},tr=[`title`],nr=[`aria-label`],rr={key:0,class:`clip-actions`},ir=[`disabled`,`onClick`],ar=[`disabled`,`onClick`],or={key:2,class:`empty-timeline`},sr=120/5e3,cr=Y(O({__name:`TimelineView`,props:{timeline:{},graph:{},artifacts:{},canEdit:{type:Boolean}},emits:[`move-clip`],setup(t){let n=t,a=x(()=>{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=D(!0),d=D(!1);_(()=>a.value?.id,()=>{u.value=!0,d.value=!1});let f=()=>{u.value=!0,d.value=!1},m=()=>{u.value=!1,d.value=!0},h=e=>{let t=a.value?.metadata?.[e];return typeof t==`number`&&Number.isFinite(t)?t:void 0},g=x(()=>{let e=h(`duration_ms`);return e===void 0?`—`:`${(e/1e3).toFixed(1)}s`}),v=x(()=>{let e=h(`width`),t=h(`height`);return e&&t?`${e} × ${t}`:`—`}),y=x(()=>{let e=h(`width`),t=h(`height`);return e&&t?{aspectRatio:`${e} / ${t}`}:void 0}),b=e=>n.timeline?.clips.filter(t=>t.track_id===e)??[],S=e=>e.artifact_id.slice(-6),T=e=>({left:`${e.timeline_start_ms*sr}px`,width:`${Math.max(48,(e.source_out_ms-e.source_in_ms)/(e.speed??1)*sr)}px`});return(n,_)=>(E(),l(`div`,Vn,[a.value?(E(),l(`section`,Hn,[e(`div`,Un,[e(`div`,null,[e(`span`,Wn,i(n.$t(`poivelle.timeline.deliverable`)),1),e(`h2`,Gn,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(xe),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.timeline.download`)),1)],8,Kn)]),e(`div`,{class:`master-media`,style:C(y.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:_[0]||=e=>u.value=!1,onCanplay:_[1]||=e=>u.value=!1,onError:m},null,40,qn),u.value&&!d.value?(E(),l(`div`,Jn,[o(c(we),{size:24,class:`is-spinning`,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.timeline.loading`)),1)])):s(``,!0),d.value?(E(),l(`div`,Yn,[o(c(Ae),{size:24,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.timeline.loadError`)),1)])):s(``,!0)],4),e(`dl`,Xn,[e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.duration`)),1),e(`dd`,null,i(g.value),1)]),e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.frame`)),1),e(`dd`,null,i(v.value),1)]),e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.videoClips`)),1),e(`dd`,null,i(h(`video_clips`)??`—`),1)]),e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.audioClips`)),1),e(`dd`,null,i(h(`audio_clips`)??`—`),1)])])])):s(``,!0),e(`div`,Zn,[(E(),l(p,null,w(10,t=>e(`span`,{key:t},i((t-1)*5)+`s`,1)),64))]),t.timeline?.tracks.length?(E(),l(`div`,Qn,[(E(!0),l(p,null,w(t.timeline.tracks,r=>(E(),l(`div`,{key:r.id,class:`track-row`},[e(`div`,$n,i(r.title||r.kind||r.id),1),e(`div`,er,[(E(!0),l(p,null,w(b(r.id),(a,o)=>(E(),l(`div`,{key:a.id,class:`timeline-clip`,style:C(T(a)),title:a.artifact_id},[e(`button`,{type:`button`,"aria-label":a.artifact_id},i(S(a)),9,nr),t.canEdit&&r.kind===`video`?(E(),l(`span`,rr,[e(`button`,{type:`button`,disabled:o===0,onClick:e=>n.$emit(`move-clip`,{trackId:r.id,clipId:a.id,direction:-1})},` ‹ `,8,ir),e(`button`,{type:`button`,disabled:o===b(r.id).length-1,onClick:e=>n.$emit(`move-clip`,{trackId:r.id,clipId:a.id,direction:1})},` › `,8,ar)])):s(``,!0)],12,tr))),128))])]))),128))])):(E(),l(`div`,or,[o(c(Ue),{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`]]),lr={class:`review-view`},ur={class:`review-summary`},dr={class:`eyebrow`},fr={class:`summary-metrics`},pr={class:`review-columns`},mr={key:0,class:`item-actions`},hr=[`onClick`],gr={key:0,class:`empty-copy`},_r=[`onClick`],vr=[`onClick`],yr={key:0,class:`empty-copy`},br={key:1,class:`run-detail`},xr={key:0},Sr=[`onClick`],Cr={key:2,class:`forensic-failures`,role:`alert`},wr=Y(O({__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=x(()=>o.proposals.filter(e=>e.state===`awaiting_approval`)),u=e=>![`release_pending`,`succeeded`,`failed`,`cancelled`].includes(e.state),d=x(()=>o.evaluations.filter(e=>e.verdict===`pass`).length),f=x(()=>o.forensicValidations[0]),m=x(()=>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,_)=>(E(),l(`div`,lr,[e(`section`,ur,[e(`div`,null,[e(`span`,dr,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`,fr,[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`,pr,[e(`div`,null,[e(`h3`,null,i(o.$t(`poivelle.review.pendingProposals`)),1),(E(!0),l(p,null,w(c.value,t=>(E(),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?(E(),l(`div`,mr,[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,hr)])):s(``,!0)]))),128)),c.value.length?s(``,!0):(E(),l(`p`,gr,i(o.$t(`poivelle.review.noProposals`)),1))]),e(`div`,null,[e(`h3`,null,i(o.$t(`poivelle.review.execution`)),1),(E(!0),l(p,null,w(a.runs,r=>(E(),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)?(E(),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,vr)):s(``,!0)],10,_r))),128)),a.runs.length?s(``,!0):(E(),l(`p`,yr,i(o.$t(`poivelle.review.noRuns`)),1)),a.activeRun?(E(),l(`section`,br,[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)]),(E(!0),l(p,null,w(a.activeRun.steps,r=>(E(),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?(E(),l(`p`,xr,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)?(E(),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,Sr)):s(``,!0)]))),128))])):s(``,!0),m.value.length?(E(),l(`section`,Cr,[e(`strong`,null,i(o.$t(`poivelle.review.forensics`)),1),(E(!0),l(p,null,w(m.value,e=>(E(),l(`p`,{key:e.code},i(e.code)+` · `+i(String(e.actual??`—`))+` / `+i(String(e.expected??`—`)),1))),128))])):s(``,!0)])])]))}}),[[`__scopeId`,`data-v-e66361d5`]]),Tr={class:`inspector-panel`},Er={class:`inspector-heading`},Dr={class:`field`},Or={class:`field`},kr=[`value`],Ar={class:`field grow`},jr={class:`node-meta`},Mr={key:1,class:`empty-inspector`},Nr=Y(O({__name:`InspectorPanel`,props:{node:{}},emits:[`update`,`delete`],setup(t,{emit:n}){let a=t,s=n,u=D(``),f=D(``);_(()=>a.node,e=>{u.value=e?.title??``;let t=e?.payload.prompt??e?.payload.text??``;f.value=typeof t==`string`?t:``},{immediate:!0});let m=x(()=>a.node?a.node.node_type===`video`?Me:a.node.node_type===`audio`?Be:[`shot`,`scene`,`storyboard`].includes(a.node.node_type)?Q:[`image`,`character`,`location`].includes(a.node.node_type)?Ce:a.node.node_type===`script`||a.node.node_type===`text`?U:_e:G),h=()=>{let e=u.value.trim();a.node&&e&&e!==a.node.title&&s(`update`,{path:`/title`,value:e})},y=()=>{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)=>(E(),l(`aside`,Tr,[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)]),(E(),b(T(m.value),{size:18,"aria-hidden":`true`}))]),t.node?(E(),l(p,{key:0},[e(`label`,Dr,[e(`span`,null,i(n.$t(`poivelle.field.title`)),1),v(e(`input`,{"onUpdate:modelValue":a[0]||=e=>u.value=e,type:`text`,onBlur:h,onKeydown:d(h,[`enter`])},null,544),[[g,u.value]])]),e(`label`,Or,[e(`span`,null,i(n.$t(`poivelle.field.type`)),1),e(`input`,{value:t.node.node_type,type:`text`,disabled:``},null,8,kr)]),e(`label`,Ar,[e(`span`,null,i(n.$t(`poivelle.field.prompt`)),1),v(e(`textarea`,{"onUpdate:modelValue":a[1]||=e=>f.value=e,rows:`8`,onBlur:y},null,544),[[g,f.value]])]),e(`div`,jr,[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(ke),{size:14,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.node.delete`)),1)])],64)):(E(),l(`div`,Mr,[o(c(G),{size:24,"stroke-width":`1.4`}),e(`p`,null,i(n.$t(`poivelle.inspector.empty`)),1)]))]))}}),[[`__scopeId`,`data-v-7a6ae318`]]),Pr={class:`agent-dock`},Fr={class:`agent-identity`},Ir={class:`proposal-strip`},Lr=[`onClick`],Rr={key:0},zr=[`disabled`],Br=Y(O({__name:`AgentDock`,props:{proposals:{},selectedNodeId:{},skill:{},canEdit:{type:Boolean}},emits:[`run`,`open-proposal`],setup(t){let a=t,u=x(()=>a.proposals.filter(e=>e.state===`awaiting_approval`));return(a,d)=>(E(),l(`section`,Pr,[e(`div`,Fr,[o(c(Ve),{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`,Ir,[(E(!0),l(p,null,w(u.value,t=>(E(),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,Lr))),128)),u.value.length?s(``,!0):(E(),l(`p`,Rr,i(a.$t(`poivelle.agent.noProposals`)),1))]),t.canEdit?(E(),l(`button`,{key:0,class:`agent-button`,type:`button`,disabled:!t.selectedNodeId,onClick:d[0]||=e=>a.$emit(`run`)},[o(c(Oe),{size:15,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.agent.plan`)),1)],8,zr)):s(``,!0)]))}}),[[`__scopeId`,`data-v-81fac9f8`]]),Vr={class:`project-guide`,"aria-labelledby":`project-guide-title`},Hr={class:`guide-copy`},Ur={id:`project-guide-title`},Wr={class:`guide-body`},Gr={class:`project-facts`},Kr={class:`guide-actions`},qr=[`disabled`],Jr={class:`cost-note`},Yr={class:`production-steps`},Xr={class:`done`},Zr=[`value`,`max`],Qr=[`value`,`max`],$r=Y(O({__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=x(()=>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=x(()=>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=x(()=>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=x(()=>u.value.filter(e=>f.value.has(e)).length),m=x(()=>d.value.filter(e=>f.value.has(e)).length),h=x(()=>new Set(a.selections.map(e=>e.target_node_id))),g=x(()=>u.value.filter(e=>h.value.has(e)).length),_=x(()=>d.value.filter(e=>h.value.has(e)).length),v=x(()=>p.value===u.value.length&&g.value<u.value.length||m.value===d.value.length&&_.value<d.value.length),y=x(()=>a.graph.nodes.some(e=>e.node_type===`output`)),S=x(()=>{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))}),C=x(()=>{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(!(_.value<d.value.length))return a.graph.nodes.find(e=>e.node_type===`audio`&&!f.value.has(e.id))}),w=x(()=>(a.storyboard?.sections.reduce((e,t)=>e+t.shots.length,0)??a.graph.nodes.filter(e=>e.node_type===`shot`).length)||d.value.length),T=x(()=>{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=x(()=>{let e=a.graph.nodes.find(e=>e.node_type===`script`);return String(e?.payload?.aspect_ratio??`16:9`)}),O=x(()=>C.value?.node_type===`image`?q(`poivelle.guide.generateFrame`,{current:p.value+1,total:u.value.length}):C.value?.node_type===`video`?q(`poivelle.guide.generateMotion`,{current:m.value+1,total:d.value.length}):q(`poivelle.guide.generateScore`));return(a,f)=>(E(),l(`section`,Vr,[e(`div`,Hr,[e(`p`,null,i(a.$t(`poivelle.guide.kicker`)),1),e(`h1`,Ur,i(a.$t(`poivelle.guide.title`,{title:t.projectTitle})),1),e(`p`,Wr,i(a.$t(`poivelle.guide.body`)),1),e(`dl`,Gr,[e(`div`,null,[e(`dt`,null,i(a.$t(`poivelle.guide.duration`)),1),e(`dd`,null,i(T.value)+`s`,1)]),e(`div`,null,[e(`dt`,null,i(a.$t(`poivelle.guide.shots`)),1),e(`dd`,null,i(w.value),1)]),e(`div`,null,[e(`dt`,null,i(a.$t(`poivelle.guide.format`)),1),e(`dd`,null,i(D.value),1)])]),e(`div`,Kr,[C.value?(E(),l(`button`,{key:0,type:`button`,class:`primary-action`,disabled:!t.canEdit||t.busy,onClick:f[0]||=e=>a.$emit(`generate-node`,C.value.id)},[t.busy?(E(),b(c(we),{key:0,size:17,class:`spinning`,"aria-hidden":`true`})):(E(),b(c(Oe),{key:1,size:17,"aria-hidden":`true`})),r(` `+i(O.value),1)],8,qr)):(E(),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(v.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(he),{size:15,"aria-hidden":`true`})])]),e(`p`,Jr,[o(c(Ye),{size:14,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.guide.costNote`)),1)])]),e(`ol`,Yr,[e(`li`,Xr,[e(`span`,null,[o(c(H),{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:w.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,Zr)]),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&&_.value<d.value.length,done:d.value.length>0&&_.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,Qr)]),e(`small`,null,i(m.value)+` `+i(a.$t(`poivelle.guide.generated`))+` · `+i(_.value)+` `+i(a.$t(`poivelle.guide.selected`)),1)],2),y.value?(E(),l(`li`,{key:0,class:n({current:_.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`]]),ei={class:`poivelle-studio`},ti={key:0,class:`error-banner`},ni={key:1,class:`loading-state`},ri={key:2,class:`studio-body`},ii={class:`projection-workspace`},ai={class:`projection-content`},oi={key:3,class:`onboarding`},si={key:0,class:`dry-run-summary`},ci={class:`dry-run-note`},li=Y(O({__name:`StudioWorkspace`,emits:[`back-home`],setup(n){let d=ae(),m=x(()=>d.state.poivelle),h=x(()=>m.value?.workspaces??[]),g=x(()=>m.value?.projects??[]),_=x(()=>m.value?.graph),v=x(()=>m.value?.assets??[]),y=x(()=>m.value?.artifacts??[]),C=x(()=>m.value?.takes??[]),T=x(()=>m.value?.selections??[]),O=x(()=>m.value?.storyboard),k=x(()=>m.value?.revisions??[]),A=x(()=>m.value?.proposals??[]),ee=x(()=>m.value?.runs??[]),j=x(()=>m.value?.activeRun),te=x(()=>m.value?.evaluations??[]),ne=x(()=>m.value?.forensicValidations??[]),re=x(()=>m.value?.costs),M=x(()=>m.value?.timeline),N=x(()=>m.value?.projection??`overview`),P=x(()=>m.value?.selectedNodeId),F=x(()=>_.value?.nodes.find(e=>e.id===P.value)),L=x(()=>g.value.find(e=>e.id===m.value?.currentProjectId)),B=x(()=>[`owner`,`producer`,`director`,`editor`].includes(m.value?.currentMembership?.role??``)),V=x(()=>m.value?.dryRun),ce=x(()=>m.value?.error),le=x(()=>[m.value?.status?.bootstrap,m.value?.status?.graph].includes(oe.Request)),ue=x(()=>new Set([...y.value.filter(e=>e.state===`committed`).flatMap(e=>e.node_id??[]),...C.value.filter(e=>e.state===`ready`).map(e=>e.target_node_id)])),de=x(()=>new Set(T.value.map(e=>e.target_node_id))),fe=x(()=>O.value?O.value.sections.flatMap(e=>e.shots.flatMap(e=>e.image_node_ids)):_.value?.nodes.filter(e=>e.node_type===`image`).map(e=>e.id)??[]),me=x(()=>O.value?O.value.sections.flatMap(e=>e.shots.flatMap(e=>e.video_node_ids)):_.value?.nodes.filter(e=>e.node_type===`video`).map(e=>e.id)??[]),he=x(()=>fe.value.length>0&&fe.value.every(e=>ue.value.has(e))&&fe.value.some(e=>!de.value.has(e))||me.value.length>0&&me.value.every(e=>ue.value.has(e))&&me.value.some(e=>!de.value.has(e))),ge=x(()=>{let e=fe.value.find(e=>!ue.value.has(e));if(e)return _.value?.nodes.find(t=>t.id===e);if(fe.value.some(e=>!de.value.has(e)))return;let t=me.value.find(e=>!ue.value.has(e));if(t)return _.value?.nodes.find(e=>e.id===t);if(me.value.some(e=>!de.value.has(e)))return;let n=_.value?.nodes.find(e=>e.node_type===`audio`&&!ue.value.has(e.id));if(n)return n}),_e=x(()=>ge.value?.node_type===`image`?q(`poivelle.guide.generateNextFrame`):ge.value?.node_type===`video`?q(`poivelle.guide.generateNextMotion`):ge.value?.node_type===`audio`?q(`poivelle.guide.generateScore`):q(`poivelle.guide.continue`)),H=D(!1),ve=D(!1),ye=D(!1),be=D(!1),xe=D(!1),U=D(!1),Se=f({name:``,monthly_limit_microcredits:void 0}),W=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`}),Ce=[{label:q(`poivelle.project.blankWorkflow`),value:`blank`},{label:q(`poivelle.project.commercialTVC`),value:`commercial_tvc`}],G=f({node_type:`scene`,title:``,prompt:``}),K=f({title:``,kind:`image`,source_url:``,content_hash:``}),Te=[`script`,`character`,`location`,`prop`,`storyboard`,`scene`,`shot`,`image`,`video`,`audio`,`subtitle`,`composition`,`output`,`note`],De=[`character`,`location`,`prop`,`image`,`video`,`voice`,`music`,`sfx`,`brand`],Oe=()=>d.dispatch(`poivelle/bootstrap`),ke=e=>d.dispatch(`poivelle/loadProject`,e),je=e=>d.dispatch(`poivelle/selectNode`,e),Me=e=>d.dispatch(`poivelle/setProjection`,e),J=()=>{W.workspace_id=m.value?.currentWorkspaceId??h.value[0]?.id??``,ye.value=!0},Y=async()=>{Se.name.trim()&&await $(async()=>{await d.dispatch(`poivelle/createWorkspace`,{...Se,name:Se.name.trim()}),ve.value=!1,J()})},Fe=async()=>{!W.workspace_id||!W.title.trim()||await $(async()=>{W.workflow===`commercial_tvc`?(await d.dispatch(`poivelle/createCommercialTVCProject`,{workspace_id:W.workspace_id,title:W.title.trim(),product_name:W.product_name.trim()||W.title.trim(),product_category:W.product_category.trim(),brand_tone:W.brand_tone.trim(),aspect_ratio:W.aspect_ratio,managed_execution:!1}),Me(`storyboard`)):await d.dispatch(`poivelle/createProject`,{workspace_id:W.workspace_id,title:W.title.trim(),skill:W.skill,domain:`film.drama.short`}),ye.value=!1,W.title=``})},Ie=async()=>{G.title.trim()&&await $(async()=>{await d.dispatch(`poivelle/createNode`,{node_type:G.node_type,title:G.title.trim(),payload:{prompt:G.prompt}}),be.value=!1,G.title=``,G.prompt=``})},Le=async()=>{!m.value?.currentWorkspaceId||!K.title||!K.source_url||!K.content_hash||await $(async()=>{await d.dispatch(`poivelle/importAsset`,{...K,project_id:m.value.currentProjectId}),xe.value=!1})},Re=e=>d.dispatch(`poivelle/updateSelectedNode`,e),Be=async()=>{await Ne.confirm(q(`poivelle.node.deleteConfirm`),``,{type:`warning`}),await d.dispatch(`poivelle/deleteSelectedNode`)},Ve=async()=>{await d.dispatch(`poivelle/commitRevision`,`Studio checkpoint`),se.success(q(`poivelle.revision.committed`))},He=async()=>{F.value&&await $(async()=>{await d.dispatch(`poivelle/dryRun`,F.value?.node_type===`composition`?`compose`:`generate`),U.value=!0})},We=async e=>{await je(e),await a(),await He()},Ge=async()=>{if(N.value===`overview`){ge.value?await We(ge.value.id):he.value&&Me(`storyboard`);return}F.value&&await He()},Ke=async()=>{await $(async()=>{let e=await d.dispatch(`poivelle/confirmDryRun`);U.value=!1,e&&se.success(q(`poivelle.run.queued`))})},qe=e=>{Me(`review`),se.info(`${q(`poivelle.agent.proposal`)} ${e.slice(-8)}`)},Je=async e=>{await Ne.confirm(q(`poivelle.review.rejectConfirm`),``,{type:`warning`}),await $(()=>d.dispatch(`poivelle/rejectProposal`,e))},Ye=async e=>{await Ne.confirm(q(`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),U.value=!0})},Qe=async e=>{if(!M.value)return;let t=M.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`,{...M.value,clips:t}))},$e=async e=>{await $(async()=>{await d.dispatch(`poivelle/selectTake`,e),se.success(q(`poivelle.storyboard.selectionSaved`))})},et=e=>`${(e/1e6).toFixed(2)} credits`,$=async e=>{H.value=!0;try{await e()}catch(e){se.error(e?.response?.data?.detail?.message??e?.response?.data?.detail??e?.message??q(`poivelle.error.generic`))}finally{H.value=!1}};return u(Oe),(n,a)=>(E(),l(`main`,ei,[o(Vt,{"project-title":L.value?.title,"graph-version":_.value?.graph_version,"can-run":B.value&&(N.value===`overview`?!!ge.value||he.value:!!F.value),"can-edit":B.value,"primary-label":N.value===`overview`?he.value?n.$t(`poivelle.guide.chooseResults`):_e.value:void 0,onOpenProjects:a[0]||=e=>ye.value=!0,onHome:a[1]||=e=>n.$emit(`back-home`),onCommit:Ve,onRun:Ge},null,8,[`project-title`,`graph-version`,`can-run`,`can-edit`,`primary-label`]),ce.value?(E(),l(`div`,ti,[o(c(Ae),{size:15,"aria-hidden":`true`}),e(`span`,null,i(ce.value),1),e(`button`,{type:`button`,onClick:Oe},i(n.$t(`poivelle.action.retry`)),1)])):s(``,!0),le.value&&!_.value?(E(),l(`div`,ni,[o(c(we),{size:25,class:`is-spinning`,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.status.loading`)),1)])):L.value&&_.value?(E(),l(`div`,ri,[N.value===`overview`?s(``,!0):(E(),b(sn,{key:0,projects:g.value,"current-project-id":L.value.id,assets:v.value,revisions:k.value,"can-edit":B.value,onSelectProject:ke,onCreateProject:J,onImportAsset:a[2]||=e=>xe.value=!0},null,8,[`projects`,`current-project-id`,`assets`,`revisions`,`can-edit`])),e(`section`,ii,[o(un,{"model-value":N.value,"can-edit":B.value,"onUpdate:modelValue":Me,onCreateNode:a[3]||=e=>be.value=!0},null,8,[`model-value`,`can-edit`]),e(`div`,ai,[N.value===`overview`?(E(),b($r,{key:0,"project-title":L.value.title,graph:_.value,storyboard:O.value,artifacts:y.value,takes:C.value,selections:T.value,"can-edit":B.value,busy:H.value,onGenerateNode:We,onOpenStoryboard:a[4]||=e=>Me(`storyboard`)},null,8,[`project-title`,`graph`,`storyboard`,`artifacts`,`takes`,`selections`,`can-edit`,`busy`])):N.value===`canvas`?(E(),b(vn,{key:1,graph:_.value,"selected-node-id":P.value,"can-edit":B.value,onSelectNode:je,onCreateNode:a[5]||=e=>be.value=!0},null,8,[`graph`,`selected-node-id`,`can-edit`])):N.value===`storyboard`?(E(),b(Bn,{key:2,graph:_.value,storyboard:O.value,artifacts:y.value,takes:C.value,selections:T.value,"selected-node-id":P.value,"can-edit":B.value,"can-select":B.value&&k.value.length>0,onSelectNode:je,onSelectTake:$e},null,8,[`graph`,`storyboard`,`artifacts`,`takes`,`selections`,`selected-node-id`,`can-edit`,`can-select`])):N.value===`timeline`?(E(),b(cr,{key:3,timeline:M.value,graph:_.value,artifacts:y.value,"can-edit":B.value,onMoveClip:Qe},null,8,[`timeline`,`graph`,`artifacts`,`can-edit`])):(E(),b(wr,{key:4,graph:_.value,proposals:A.value,revisions:k.value,runs:ee.value,"active-run":j.value,evaluations:te.value,"forensic-validations":ne.value,costs:re.value,"can-edit":B.value,onRejectProposal:Je,onCancelRun:Ye,onOpenRun:Xe,onRetryStep:Ze},null,8,[`graph`,`proposals`,`revisions`,`runs`,`active-run`,`evaluations`,`forensic-validations`,`costs`,`can-edit`]))]),N.value===`overview`?s(``,!0):(E(),b(Br,{key:0,proposals:A.value,"selected-node-id":P.value,skill:L.value.active_skill,"can-edit":B.value,onRun:He,onOpenProposal:qe},null,8,[`proposals`,`selected-node-id`,`skill`,`can-edit`]))]),B.value&&N.value===`canvas`?(E(),b(Nr,{key:1,node:F.value,onUpdate:Re,onDelete:Be},null,8,[`node`])):s(``,!0)])):(E(),l(`section`,oi,[a[38]||=e(`div`,{class:`onboarding-number`},`01 / STUDIO`,-1),o(c(Ue),{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?B.value?(E(),l(`button`,{key:1,type:`button`,onClick:J},[o(c(Q),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.project.create`)),1)])):s(``,!0):(E(),l(`button`,{key:0,type:`button`,onClick:a[6]||=e=>ve.value=!0},[o(c(Ee),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.workspace.create`)),1)]))])),o(c(Pe),{modelValue:ve.value,"onUpdate:modelValue":a[11]||=e=>ve.value=e,title:n.$t(`poivelle.workspace.create`),width:`420px`},{footer:S(()=>[o(c(X),{onClick:a[10]||=e=>ve.value=!1},{default:S(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(X),{type:`primary`,loading:H.value,onClick:Y},{default:S(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:S(()=>[o(c(z),{"label-position":`top`,onSubmit:a[9]||=t(()=>{},[`prevent`])},{default:S(()=>[o(c(R),{label:n.$t(`poivelle.workspace.name`)},{default:S(()=>[o(c(Z),{modelValue:Se.name,"onUpdate:modelValue":a[7]||=e=>Se.name=e,maxlength:`120`,autofocus:``},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.workspace.budget`)},{default:S(()=>[o(c(pe),{modelValue:Se.monthly_limit_microcredits,"onUpdate:modelValue":a[8]||=e=>Se.monthly_limit_microcredits=e,min:0,step:1e6},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),o(c(Pe),{modelValue:ye.value,"onUpdate:modelValue":a[22]||=e=>ye.value=e,title:n.$t(`poivelle.project.create`),width:`460px`},{footer:S(()=>[o(c(X),{onClick:a[21]||=e=>ye.value=!1},{default:S(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(X),{type:`primary`,loading:H.value,onClick:Fe},{default:S(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:S(()=>[o(c(z),{"label-position":`top`,onSubmit:a[20]||=t(()=>{},[`prevent`])},{default:S(()=>[o(c(R),{label:n.$t(`poivelle.project.workspace`)},{default:S(()=>[o(c(ie),{modelValue:W.workspace_id,"onUpdate:modelValue":a[12]||=e=>W.workspace_id=e,style:{width:`100%`}},{default:S(()=>[(E(!0),l(p,null,w(h.value,e=>(E(),b(c(I),{key:e.id,label:e.name,value:e.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.project.title`)},{default:S(()=>[o(c(Z),{modelValue:W.title,"onUpdate:modelValue":a[13]||=e=>W.title=e,maxlength:`200`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.project.workflow`)},{default:S(()=>[o(c(ze),{modelValue:W.workflow,"onUpdate:modelValue":a[14]||=e=>W.workflow=e,options:Ce,block:``},null,8,[`modelValue`])]),_:1},8,[`label`]),W.workflow===`commercial_tvc`?(E(),l(p,{key:0},[o(c(R),{label:n.$t(`poivelle.project.productName`)},{default:S(()=>[o(c(Z),{modelValue:W.product_name,"onUpdate:modelValue":a[15]||=e=>W.product_name=e,maxlength:`120`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.project.productCategory`)},{default:S(()=>[o(c(Z),{modelValue:W.product_category,"onUpdate:modelValue":a[16]||=e=>W.product_category=e,maxlength:`180`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.project.brandTone`)},{default:S(()=>[o(c(Z),{modelValue:W.brand_tone,"onUpdate:modelValue":a[17]||=e=>W.brand_tone=e,type:`textarea`,rows:2,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.project.aspectRatio`)},{default:S(()=>[o(c(ze),{modelValue:W.aspect_ratio,"onUpdate:modelValue":a[18]||=e=>W.aspect_ratio=e,options:[`16:9`,`9:16`,`1:1`]},null,8,[`modelValue`])]),_:1},8,[`label`])],64)):s(``,!0),o(c(R),{label:n.$t(`poivelle.project.skill`)},{default:S(()=>[W.workflow===`blank`?(E(),b(c(ie),{key:0,modelValue:W.skill,"onUpdate:modelValue":a[19]||=e=>W.skill=e,style:{width:`100%`}},{default:S(()=>[o(c(I),{label:`Short drama · professional`,value:`film.drama.short@1.0.0`}),o(c(I),{label:`Commercial film · professional`,value:`film.commercial@1.0.0`}),o(c(I),{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(Pe),{modelValue:be.value,"onUpdate:modelValue":a[28]||=e=>be.value=e,title:n.$t(`poivelle.node.create`),width:`460px`},{footer:S(()=>[o(c(X),{onClick:a[27]||=e=>be.value=!1},{default:S(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(X),{type:`primary`,loading:H.value,onClick:Ie},{default:S(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:S(()=>[o(c(z),{"label-position":`top`,onSubmit:a[26]||=t(()=>{},[`prevent`])},{default:S(()=>[o(c(R),{label:n.$t(`poivelle.field.type`)},{default:S(()=>[o(c(ie),{modelValue:G.node_type,"onUpdate:modelValue":a[23]||=e=>G.node_type=e,style:{width:`100%`}},{default:S(()=>[(E(),l(p,null,w(Te,e=>o(c(I),{key:e,label:e,value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.field.title`)},{default:S(()=>[o(c(Z),{modelValue:G.title,"onUpdate:modelValue":a[24]||=e=>G.title=e,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.field.prompt`)},{default:S(()=>[o(c(Z),{modelValue:G.prompt,"onUpdate:modelValue":a[25]||=e=>G.prompt=e,type:`textarea`,rows:5},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),o(c(Pe),{modelValue:xe.value,"onUpdate:modelValue":a[35]||=e=>xe.value=e,title:n.$t(`poivelle.asset.import`),width:`500px`},{footer:S(()=>[o(c(X),{onClick:a[34]||=e=>xe.value=!1},{default:S(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(X),{type:`primary`,loading:H.value,onClick:Le},{default:S(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:S(()=>[o(c(z),{"label-position":`top`,onSubmit:a[33]||=t(()=>{},[`prevent`])},{default:S(()=>[o(c(R),{label:n.$t(`poivelle.asset.title`)},{default:S(()=>[o(c(Z),{modelValue:K.title,"onUpdate:modelValue":a[29]||=e=>K.title=e,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.field.type`)},{default:S(()=>[o(c(ie),{modelValue:K.kind,"onUpdate:modelValue":a[30]||=e=>K.kind=e,style:{width:`100%`}},{default:S(()=>[(E(),l(p,null,w(De,e=>o(c(I),{key:e,label:e,value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.asset.url`)},{default:S(()=>[o(c(Z),{modelValue:K.source_url,"onUpdate:modelValue":a[31]||=e=>K.source_url=e},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.asset.hash`)},{default:S(()=>[o(c(Z),{modelValue:K.content_hash,"onUpdate:modelValue":a[32]||=e=>K.content_hash=e,placeholder:`sha256:...`},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),o(c(Pe),{modelValue:U.value,"onUpdate:modelValue":a[37]||=e=>U.value=e,title:n.$t(`poivelle.run.confirmTitle`),width:`520px`},{footer:S(()=>[o(c(X),{onClick:a[36]||=e=>U.value=!1},{default:S(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(X),{type:`primary`,loading:H.value,onClick:Ke},{default:S(()=>[r(i(n.$t(`poivelle.run.confirm`)),1)]),_:1},8,[`loading`])]),default:S(()=>[V.value?(E(),l(`div`,si,[e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.targets`)),1),e(`strong`,null,i(V.value.dependency_closure.length),1)]),e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.maximum`)),1),e(`strong`,null,i(et(V.value.max_cost_microcredits)),1)]),e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.approval`)),1),e(`strong`,null,i(V.value.required_approval),1)])])):s(``,!0),e(`p`,ci,i(n.$t(`poivelle.run.confirmBody`)),1)]),_:1},8,[`modelValue`,`title`])]))}}),[[`__scopeId`,`data-v-1b367de3`]]),ui=O({__name:`Index`,setup(e){let t=D(`discovery`);return(e,n)=>t.value===`discovery`?(E(),b(jt,{key:0,onOpenStudio:n[0]||=e=>t.value=`studio`})):(E(),b(li,{key:1,onBackHome:n[1]||=e=>t.value=`discovery`}))}});export{ui as default};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,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,Vt as m,Wt as h,b as g,ft as _,ht as v,it as y,j as b,k as x,mt as S,qt as C,rt as w,st as T,tt as E,wt as D,z as O}from"./vendor-chart-Dw-P17PN.js";import{$ as k,X as A,dt as ee,et as j,rt as te,st as ne,wt as re,xt as M}from"./icon-CDmWyIgD.js";import{a as N,c as P,t as F}from"./install-Cn-SLM3u.js";import{r as ie,t as I}from"./select-D0gYN9N3.js";import{t as L}from"./use-aria-DApzlmKf.js";import{n as R,t as z}from"./form-BdKMEyCR.js";import{r as B,t as V}from"./event-BGnHezxC.js";import{_ as ae,h as oe,v as se}from"./models-PmOthmjQ.js";import{a as ce,c as le,i as ue,n as de,r as fe}from"./use-deprecated-BAB4ggjd.js";import{t as pe}from"./input-number-DEovBxHn.js";import{t as me}from"./arrow-left-Cb3bQp-f.js";import{t as he}from"./arrow-right-DvDuE99k.js";import{t as ge}from"./arrow-up-B1VLgauu.js";import{t as _e}from"./box-DMe33HP5.js";import{t as H}from"./check-DkM8oHOT.js";import{t as ve}from"./chevron-down-Dx4wMgRS.js";import{t as ye}from"./chevron-right-CncLbKEy.js";import{t as be}from"./copy-De64oDma.js";import{t as xe}from"./download-BF36b2VY.js";import{t as U}from"./file-text-CvQozW4t.js";import{t as Se}from"./history-HWyScJMt.js";import{t as W}from"./house-gqPOr4M0.js";import{t as Ce}from"./image-BBBtc1dR.js";import{t as we}from"./loader-circle-Dk_AuDkG.js";import{t as G}from"./mouse-pointer-2-BjFZVXsj.js";import{t as K}from"./music-2-DGqemmHA.js";import{t as Te}from"./play-9WbpHjQ8.js";import{t as Ee}from"./plus-LG0WgSW0.js";import{t as De}from"./search-XuVnwR9U.js";import{t as Oe}from"./sparkles-UH-VPT1H.js";import{t as ke}from"./trash-2-D1buIvtL.js";import{t as Ae}from"./triangle-alert-CKxXMrIy.js";import{t as je}from"./upload-CatJa7lp.js";import{t as Me}from"./video-CSoIuko1.js";import{i as q}from"./i18n-D4nr5BAx.js";import{O as J,Xi as Ne,Yi as Y,ta as Pe,ua as X,va as Z}from"./index-Bbaw1dFE.js";import{t as Fe}from"./VideoPlayer-deIEsBH5.js";var Ie={label:`label`,value:`value`,disabled:`disabled`},Le=k({direction:{type:j(String),default:`horizontal`},options:{type:j(Array),default:()=>[]},modelValue:{type:[String,Number,Boolean],default:void 0},props:{type:j(Object),default:()=>Ie},block:Boolean,size:A,disabled:Boolean,validateEvent:{type:Boolean,default:!0},id:String,name:String,...L([`ariaLabel`])}),Re={[B]:e=>h(e)||re(e)||M(e),[V]:e=>h(e)||re(e)||M(e)},ze=F(N(O({...O({name:`ElSegmented`}),props:Le,emits:Re,setup(t,{emit:a}){let o=t,u=P(`segmented`),d=le(),h=fe(),g=de(),{formItem:v}=ue(),{inputId:b,isLabeledByFormItem:S}=ce(o,{formItemContext:v}),T=D(null),O=ne(),k=f({isInit:!1,width:0,height:0,translateX:0,translateY:0,focusVisible:!1}),A=e=>{let t=re(e);a(B,t),a(V,t)},j=x(()=>({...Ie,...o.props})),re=e=>m(e)?e[j.value.value]:e,M=e=>m(e)?e[j.value.label]:e,N=e=>!!(g.value||m(e)&&e[j.value.disabled]),F=e=>o.modelValue===re(e),ie=e=>o.options.find(t=>re(t)===e),I=e=>[u.e(`item`),u.is(`selected`,F(e)),u.is(`disabled`,N(e))],L=()=>{if(!T.value)return;let e=T.value.querySelector(`.is-selected`),t=T.value.querySelector(`.is-selected input`);if(!e||!t){k.width=0,k.height=0,k.translateX=0,k.translateY=0,k.focusVisible=!1;return}let n=e.getBoundingClientRect();k.isInit=!0,o.direction===`vertical`?(k.height=n.height,k.translateY=e.offsetTop):(k.width=n.width,k.translateX=e.offsetLeft);try{k.focusVisible=t.matches(`:focus-visible`)}catch{}},R=x(()=>[u.b(),u.m(h.value),u.is(`block`,o.block)]),z=x(()=>({width:o.direction===`vertical`?`100%`:`${k.width}px`,height:o.direction===`vertical`?`${k.height}px`:`100%`,transform:o.direction===`vertical`?`translateY(${k.translateY}px)`:`translateX(${k.translateX}px)`,display:k.isInit?`block`:`none`})),ae=x(()=>[u.e(`item-selected`),u.is(`disabled`,N(ie(o.modelValue))),u.is(`focus-visible`,k.focusVisible)]),oe=x(()=>o.name||d.value);return ee(T,L),_(O,L),_(()=>o.modelValue,()=>{var e;L(),o.validateEvent&&((e=v?.validate)==null||e.call(v,`change`).catch(e=>te(e)))},{flush:`post`}),(t,a)=>t.options.length?(E(),l(`div`,{key:0,id:c(b),ref_key:`segmentedRef`,ref:T,class:n(c(R)),role:`radiogroup`,"aria-label":c(S)?void 0:t.ariaLabel||`segmented`,"aria-labelledby":c(S)?c(v).labelId:void 0},[e(`div`,{class:n([c(u).e(`group`),c(u).m(o.direction)])},[e(`div`,{style:C(c(z)),class:n(c(ae))},null,6),(E(!0),l(p,null,w(t.options,(a,o)=>(E(),l(`label`,{key:o,class:n(I(a))},[e(`input`,{class:n(c(u).e(`item-input`)),type:`radio`,name:c(oe),disabled:N(a),checked:F(a),onChange:e=>A(a)},null,42,[`name`,`disabled`,`checked`,`onChange`]),e(`div`,{class:n(c(u).e(`item-label`))},[y(t.$slots,`default`,{item:a},()=>[r(i(M(a)),1)])],2)],2))),128))],2)],10,[`id`,`aria-label`,`aria-labelledby`])):s(`v-if`,!0)}}),[[`__file`,`segmented.vue`]])),Be=Y(`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`}]]),Ve=Y(`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`}]]),He=Y(`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=Y(`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`}]]),Ue=Y(`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=Y(`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`}]]),Ge=Y(`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`}]]),Ke=Y(`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`}]]),qe=Y(`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`}]]),Je=Y(`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`}]]),Ye=Y(`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`}]]),Xe={class:`discovery-home`},Ze={class:`discovery-header`},Qe={class:`brand`},$e={class:`project-links`},et=[`title`,`aria-label`,`onClick`],$={key:0,class:`discovery-state`,role:`status`},tt={class:`creator`,"aria-labelledby":`poivelle-create-title`},nt={class:`creator-kicker`},rt={id:`poivelle-create-title`},it=[`aria-label`],at=[`disabled`,`onClick`],ot=[`placeholder`,`disabled`],st={class:`composer-footer`},ct=[`disabled`,`title`],lt={class:`prompt-starters`},ut=[`disabled`,`onClick`],dt={class:`works`,"aria-labelledby":`poivelle-works-title`},ft={class:`works-heading`},pt={id:`poivelle-works-title`},mt={class:`search`},ht=[`placeholder`,`aria-label`],gt={class:`category-tabs`},_t=[`onClick`],vt={class:`work-grid`},yt={class:`cover`},bt=[`src`,`alt`,`onError`],xt={key:2,class:`film-badge`},St=[`aria-label`,`onClick`],Ct={class:`duration-badge`},wt={class:`work-copy`},Tt={class:`work-meta`},Et={class:`work-actions`},Dt=[`onClick`],Ot=[`disabled`,`onClick`],kt={key:0,class:`film-dialog-heading`},At={id:`poivelle-film-dialog-title`},jt=J(O({__name:`DiscoveryHome`,emits:[`open-studio`],setup(a,{emit:d}){let f=d,m=ae(),h=x(()=>m.state.poivelle),_=x(()=>h.value?.projects??[]),y=x(()=>h.value?.discoveryWorks??[]),C=D(``),O=D(``),k=D(!1),A=D(),ee=D(new Set),j=D(`official:pulsecam`),te=D(`all`),ne=[{workId:`official:pulsecam`,label:`poivelle.discovery.commercial`,icon:Q},{workId:`official:moonlit-signal`,label:`poivelle.discovery.musicVideo`,icon:K},{workId:`official:northstar-origin`,label:`poivelle.discovery.documentary`,icon:He}],re=[`poivelle.discovery.starterProduct`,`poivelle.discovery.starterMusic`,`poivelle.discovery.starterDocumentary`],M=[{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`}],N=x(()=>{let e=O.value.trim().toLowerCase();return y.value.filter(t=>(te.value===`all`||t.category===te.value)&&(!e||`${t.title} ${t.description} ${t.creator_name} ${(t.tags??[]).join(` `)}`.toLowerCase().includes(e)))}),P=x(()=>h.value?.status?.bootstrap===oe.Request),F=x(()=>h.value?.error),ie=x({get:()=>!!A.value,set:e=>{e||(A.value=void 0)}}),I=x(()=>{let e=y.value.find(e=>e.id===j.value);return e&&e.copyable!==!1?e:y.value.find(e=>e.copyable!==!1)}),L=()=>m.dispatch(`poivelle/bootstrap`,{loadProject:!1}),R=e=>{ee.value=new Set([...ee.value,e])},z=e=>e.video_url?.startsWith(`https://`)?e.video_url:void 0,B=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:q(`poivelle.error.generic`)},V=e=>{let t=Math.floor(e/60),n=e%60;return t?`${t}:${n.toString().padStart(2,`0`)}`:`0:${n.toString().padStart(2,`0`)}`},ce=async e=>{await m.dispatch(`poivelle/loadProject`,e),f(`open-studio`)},le=async(e,t)=>{if(!k.value){k.value=!0;try{await m.dispatch(`poivelle/copyDiscoveryWork`,{work_id:e.id,prompt:t,title:t.slice(0,80)}),f(`open-studio`)}catch(e){se.error(B(e))}finally{k.value=!1}}},ue=async()=>{let e=I.value;e&&C.value.trim()&&await le(e,C.value.trim())},de=async e=>{await le(e,C.value.trim()||`${q(`poivelle.discovery.copyPrefix`)} ${e.title}`)};return u(L),(a,u)=>(E(),l(`main`,Xe,[e(`header`,Ze,[e(`div`,Qe,[o(c(Q),{size:19,"aria-hidden":`true`}),u[3]||=r(` POIVELLE`,-1)]),e(`div`,$e,[(E(!0),l(p,null,w(_.value.slice(0,3),e=>(E(),l(`button`,{key:e.id,type:`button`,title:e.title,"aria-label":e.title,onClick:t=>ce(e.id)},[r(i(e.title)+` `,1),o(c(ye),{size:13,"aria-hidden":`true`})],8,et))),128))])]),P.value||F.value?(E(),l(`div`,$,[P.value?(E(),b(c(we),{key:0,size:16,class:`spinning`,"aria-hidden":`true`})):s(``,!0),e(`span`,null,i(P.value?a.$t(`poivelle.status.loading`):F.value),1),F.value?(E(),l(`button`,{key:1,type:`button`,onClick:L},i(a.$t(`poivelle.action.retry`)),1)):s(``,!0)])):s(``,!0),e(`section`,tt,[e(`p`,nt,i(a.$t(`poivelle.discovery.kicker`)),1),e(`h1`,rt,i(a.$t(`poivelle.discovery.title`)),1),e(`div`,{class:`mode-switch`,"aria-label":a.$t(`poivelle.discovery.skills`)},[(E(),l(p,null,w(ne,t=>e(`button`,{key:t.workId,type:`button`,class:n({active:j.value===t.workId}),disabled:P.value,onClick:e=>j.value=t.workId},[(E(),b(T(t.icon),{size:15,"aria-hidden":`true`})),r(` `+i(a.$t(t.label)),1)],10,at)),64))],8,it),e(`form`,{class:`composer`,onSubmit:t(ue,[`prevent`])},[v(e(`textarea`,{"onUpdate:modelValue":u[0]||=e=>C.value=e,placeholder:a.$t(`poivelle.discovery.placeholder`),disabled:P.value,maxlength:`500`,rows:`4`},null,8,ot),[[g,C.value]]),e(`div`,st,[e(`span`,null,i(C.value.length)+`/500`,1),e(`button`,{type:`submit`,disabled:!C.value.trim()||!I.value||P.value||k.value,title:a.$t(`poivelle.discovery.create`)},[k.value?(E(),b(c(we),{key:0,size:18,class:`spinning`,"aria-hidden":`true`})):(E(),b(c(ge),{key:1,size:18,"aria-hidden":`true`}))],8,ct)])],32),e(`div`,lt,[(E(),l(p,null,w(re,t=>e(`button`,{key:t,type:`button`,disabled:P.value,onClick:e=>C.value=a.$t(t)},i(a.$t(t)),9,ut)),64))])]),e(`section`,dt,[e(`div`,ft,[e(`div`,null,[e(`span`,null,i(a.$t(`poivelle.discovery.galleryKicker`)),1),e(`h2`,pt,i(a.$t(`poivelle.discovery.gallery`)),1)]),e(`label`,mt,[o(c(De),{size:16,"aria-hidden":`true`}),v(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,ht),[[g,O.value]])])]),e(`div`,gt,[(E(),l(p,null,w(M,t=>e(`button`,{key:t.value,type:`button`,class:n({active:te.value===t.value}),onClick:e=>te.value=t.value},i(a.$t(t.label)),11,_t)),64))]),e(`div`,vt,[(E(!0),l(p,null,w(N.value,t=>(E(),l(`article`,{key:t.id,class:`work-card`},[e(`div`,yt,[t.cover_url&&!ee.value.has(t.id)?(E(),l(`img`,{key:0,src:t.cover_url,alt:t.title,onError:e=>R(t.id)},null,40,bt)):(E(),b(c(Ue),{key:1,size:32,"aria-hidden":`true`})),z(t)?(E(),l(`span`,xt,i(a.$t(`poivelle.discovery.finishedFilm`)),1)):s(``,!0),z(t)?(E(),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(Te),{size:18,fill:`currentColor`,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.discovery.playFilm`)),1)],8,St)):s(``,!0),e(`span`,Ct,i(t.duration_seconds?V(t.duration_seconds):a.$t(`poivelle.discovery.community`)),1)]),e(`div`,wt,[e(`div`,Tt,[e(`span`,null,i(t.creator_name),1),e(`strong`,null,i(t.title),1),e(`p`,null,i(t.description),1)]),e(`div`,Et,[z(t)?(E(),l(`button`,{key:0,type:`button`,class:`play-button`,onClick:e=>A.value=t},[o(c(Te),{size:14,fill:`currentColor`,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.discovery.play`)),1)],8,Dt)):s(``,!0),t.copyable===!1?s(``,!0):(E(),l(`button`,{key:1,type:`button`,class:`copy-button`,disabled:P.value||k.value,onClick:e=>de(t)},[o(c(be),{size:14,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.discovery.copy`)),1)],8,Ot))])])]))),128))])]),o(c(Pe),{modelValue:ie.value,"onUpdate:modelValue":u[2]||=e=>ie.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:S(()=>[A.value?(E(),l(`div`,kt,[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?(E(),l(p,{key:0},[r(` · `+i(V(A.value.duration_seconds)),1)],64)):s(``,!0)])])):s(``,!0)]),default:S(()=>[A.value&&z(A.value)?(E(),b(Fe,{key:`${A.value.id}-${A.value.video_url}`,src:z(A.value)},null,8,[`src`])):s(``,!0)]),_:1},8,[`modelValue`])]))}}),[[`__scopeId`,`data-v-91feafb0`]]),Mt={class:`studio-header`},Nt={class:`identity`},Pt=[`title`],Ft={class:`wordmark`},It={key:0,class:`version`},Lt={class:`actions`},Rt={class:`sync-state`},zt=[`title`],Bt=[`disabled`],Vt=J(O({__name:`StudioHeader`,props:{projectTitle:{},graphVersion:{},canRun:{type:Boolean},canEdit:{type:Boolean},primaryLabel:{}},emits:[`open-projects`,`home`,`commit`,`run`],setup(t){return(n,a)=>(E(),l(`header`,Mt,[e(`div`,Nt,[e(`button`,{class:`home-button`,type:`button`,title:n.$t(`poivelle.discovery.back`),onClick:a[0]||=e=>n.$emit(`home`)},[o(c(me),{size:16,"aria-hidden":`true`})],8,Pt),e(`span`,Ft,[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(ve),{size:14,"aria-hidden":`true`})]),t.graphVersion===void 0?s(``,!0):(E(),l(`span`,It,`Graph v`+i(t.graphVersion),1))]),e(`div`,Lt,[e(`span`,Rt,[a[5]||=e(`span`,{class:`sync-dot`},null,-1),r(` `+i(n.$t(`poivelle.status.synced`)),1)]),t.canEdit?(E(),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,zt)):s(``,!0),e(`button`,{class:`primary-button`,type:`button`,disabled:!t.canRun,onClick:a[3]||=e=>n.$emit(`run`)},[o(c(Te),{size:15,fill:`currentColor`,"aria-hidden":`true`}),r(` `+i(t.primaryLabel||n.$t(`poivelle.action.runSkill`)),1)],8,Bt)])]))}}),[[`__scopeId`,`data-v-86d45f69`]]),Ht={class:`production-rail`},Ut={class:`rail-section`},Wt={class:`section-heading`},Gt=[`title`],Kt={class:`project-list`},qt=[`onClick`],Jt={key:0,class:`empty-copy`},Yt={class:`rail-section assets-section`},Xt={class:`section-heading`},Zt=[`title`],Qt={class:`asset-filters`},$t=[`onClick`],en={class:`asset-list`},tn={key:0,class:`empty-copy`},nn={class:`rail-section compact-section`},rn={class:`section-heading static`},an={class:`revision-list`},on={key:0,class:`empty-copy`},sn=J(O({__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=D(`all`),d=x(()=>u.value===`all`?r.assets:r.assets.filter(e=>e.kind===u.value)),f=e=>e===`video`?Me:e===`voice`||e===`music`||e===`sfx`?Be:e===`script`||e===`brand`?U:Ce;return(r,m)=>(E(),l(`aside`,Ht,[e(`div`,Ut,[e(`div`,Wt,[e(`span`,null,i(r.$t(`poivelle.section.projects`)),1),t.canEdit?(E(),l(`button`,{key:0,type:`button`,title:r.$t(`poivelle.project.create`),onClick:m[0]||=e=>r.$emit(`create-project`)},[o(c(Ee),{size:15,"aria-hidden":`true`})],8,Gt)):s(``,!0)]),e(`div`,Kt,[(E(!0),l(p,null,w(t.projects,a=>(E(),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,qt))),128)),t.projects.length?s(``,!0):(E(),l(`p`,Jt,i(r.$t(`poivelle.project.empty`)),1))])]),e(`div`,Yt,[e(`div`,Xt,[e(`span`,null,i(r.$t(`poivelle.section.assets`)),1),t.canEdit?(E(),l(`button`,{key:0,type:`button`,title:r.$t(`poivelle.asset.import`),onClick:m[1]||=e=>r.$emit(`import-asset`)},[o(c(je),{size:15,"aria-hidden":`true`})],8,Zt)):s(``,!0)]),e(`div`,Qt,[(E(),l(p,null,w(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,$t)),64))]),e(`div`,en,[(E(!0),l(p,null,w(d.value,t=>(E(),l(`button`,{key:t.id,type:`button`,class:`asset-row`},[(E(),b(T(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):(E(),l(`p`,tn,i(r.$t(`poivelle.asset.empty`)),1))])]),e(`div`,nn,[e(`div`,rn,[e(`span`,null,i(r.$t(`poivelle.section.revisions`)),1),o(c(Se),{size:14,"aria-hidden":`true`})]),e(`div`,an,[(E(!0),l(p,null,w(t.revisions.slice(0,4),t=>(E(),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):(E(),l(`p`,on,i(r.$t(`poivelle.revision.empty`)),1))])])]))}}),[[`__scopeId`,`data-v-71c6054d`]]),cn=[`aria-label`],ln=[`onClick`],un=J(O({__name:`ProjectionTabs`,props:{modelValue:{},canEdit:{type:Boolean}},emits:[`update:modelValue`,`create-node`],setup(t){let a=[{value:`overview`,label:`poivelle.projection.overview`,icon:W},{value:`canvas`,label:`poivelle.projection.advanced`,icon:Ge},{value:`storyboard`,label:`poivelle.projection.storyboard`,icon:Q},{value:`timeline`,label:`poivelle.projection.timeline`,icon:Je},{value:`review`,label:`poivelle.projection.review`,icon:Ke}];return(u,d)=>(E(),l(`nav`,{class:`projection-tabs`,"aria-label":u.$t(`poivelle.projection.label`)},[(E(),l(p,null,w(a,a=>e(`button`,{key:a.value,type:`button`,class:n({active:t.modelValue===a.value}),onClick:e=>u.$emit(`update:modelValue`,a.value)},[(E(),b(T(a.icon),{size:14,"aria-hidden":`true`})),r(` `+i(u.$t(a.label)),1)],10,ln)),64)),d[1]||=e(`span`,{class:`spacer`},null,-1),t.canEdit?(E(),l(`button`,{key:0,class:`add-node`,type:`button`,onClick:d[0]||=e=>u.$emit(`create-node`)},[o(c(Ee),{size:14,"aria-hidden":`true`}),r(` `+i(u.$t(`poivelle.node.create`)),1)])):s(``,!0)],8,cn))}}),[[`__scopeId`,`data-v-393d2d3e`]]),dn={class:`connections`,"aria-hidden":`true`},fn=[`x1`,`y1`,`x2`,`y2`],pn=[`onClick`],mn={class:`node-type`},hn={class:`node-summary`},gn={key:0,class:`lock-mark`},_n={key:0,class:`empty-canvas`},vn=J(O({__name:`GraphCanvas`,props:{graph:{},selectedNodeId:{},canEdit:{type:Boolean}},emits:[`select-node`,`create-node`],setup(a){let u=a,d=x(()=>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`}},_=x(()=>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))),v=e=>{let t=e.payload.text??e.payload.prompt??e.payload.description;return typeof t==`string`&&t?t:`Version ${e.version}`};return(u,d)=>(E(),l(`div`,{class:`graph-canvas`,onClick:d[1]||=t(e=>u.$emit(`select-node`,void 0),[`self`])},[(E(),l(`svg`,dn,[(E(!0),l(p,null,w(_.value,e=>(E(),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,fn))),128))])),(E(!0),l(p,null,w(a.graph.nodes,f=>(E(),l(`button`,{key:f.id,type:`button`,class:n([`graph-node`,`type-${f.node_type}`,{selected:f.id===a.selectedNodeId}]),style:C(g(f.id)),onClick:t(e=>u.$emit(`select-node`,f.id),[`stop`])},[e(`span`,mn,i(f.node_type),1),e(`strong`,null,i(f.title),1),e(`span`,hn,i(v(f)),1),f.locked_paths.length?(E(),l(`span`,gn,[o(c(qe),{size:11}),d[2]||=r(` locked`,-1)])):s(``,!0)],14,pn))),128)),a.graph.nodes.length?s(``,!0):(E(),l(`div`,_n,[o(c(Ge),{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?(E(),l(`button`,{key:0,type:`button`,onClick:d[0]||=e=>u.$emit(`create-node`)},[o(c(Ee),{size:15,"aria-hidden":`true`}),r(` `+i(u.$t(`poivelle.node.create`)),1)])):s(``,!0)]))]))}}),[[`__scopeId`,`data-v-cd67c1fc`]]),yn={class:`media-lane`},bn={key:0,class:`candidate-strip`},xn=[`src`],Sn=[`src`],Cn=[`onClick`],wn={key:1},Tn=[`onClick`],En={key:1,class:`unavailable-takes`},Dn={key:2,class:`empty-candidates`},On=J(O({__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=x(()=>{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=x(()=>r.takes.filter(e=>r.nodeIds.includes(e.target_node_id)&&e.state!==`ready`)),c=D([]),u=e=>{c.value=c.value.includes(e)?c.value.filter(t=>t!==e):[...c.value.slice(-1),e]};return(r,d)=>(E(),l(`section`,yn,[e(`header`,null,[e(`span`,null,i(t.title),1),t.nodeIds[0]?(E(),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?(E(),l(`div`,bn,[(E(!0),l(p,null,w(a.value,a=>(E(),l(`article`,{key:a.key,class:n([`candidate`,{selected:a.selected,comparing:c.value.includes(a.key)}])},[t.kind===`image`?(E(),l(`img`,{key:0,src:a.artifact.storage_url,alt:``},null,8,xn)):(E(),l(`video`,{key:1,src:a.artifact.storage_url,controls:``,preload:`metadata`},null,8,Sn)),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?(E(),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,Cn)):a.selected?(E(),l(`em`,wn,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,Tn)])],2))),128))])):s(``,!0),o.value.length?(E(),l(`div`,En,[(E(!0),l(p,null,w(o.value,e=>(E(),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?(E(),l(`div`,Dn,i(r.$t(`poivelle.storyboard.noCandidates`)),1)):s(``,!0)]))}}),[[`__scopeId`,`data-v-4e385f6a`]]),kn={class:`storyboard-view`},An={key:0,class:`storyboard-heading`},jn={class:`section-label`},Mn=[`onClick`],Nn={class:`shot-number`},Pn={class:`shot-production`},Fn={class:`shot-metadata`},In={class:`prompt-columns`},Ln={class:`candidate-columns`},Rn=[`onClick`],zn={key:0,class:`empty-view`},Bn=J(O({__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=x(()=>r.storyboard?.sections.reduce((e,t)=>e+t.shots.length,0)??0),u=x(()=>r.graph.nodes.filter(e=>[`storyboard`,`scene`,`shot`,`image`,`video`].includes(e.node_type)));return(r,d)=>(E(),l(`div`,kn,[t.storyboard?(E(),l(`header`,An,[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?(E(!0),l(p,{key:1},w(t.storyboard.sections,a=>(E(),l(`section`,{key:a.id,class:`story-section`},[e(`div`,jn,[e(`span`,null,i(String(a.order).padStart(2,`0`)),1),e(`h3`,null,i(a.title),1)]),(E(!0),l(p,null,w(a.shots,a=>(E(),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`,Nn,`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,Mn),e(`div`,Pn,[e(`dl`,Fn,[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`,In,[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`,Ln,[o(On,{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(On,{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)):(E(),l(p,{key:2},[(E(!0),l(p,null,w(u.value,(a,s)=>(E(),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,Rn))),128)),u.value.length?s(``,!0):(E(),l(`div`,zn,[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`]]),Vn={class:`timeline-view`},Hn={key:0,class:`master-output`,"aria-labelledby":`poivelle-master-title`},Un={class:`master-heading`},Wn={class:`master-kicker`},Gn={id:`poivelle-master-title`},Kn=[`href`],qn=[`src`,`aria-label`],Jn={key:0,class:`master-status`,role:`status`},Yn={key:1,class:`master-status is-error`,role:`alert`},Xn={class:`master-metadata`},Zn={class:`timeline-ruler`},Qn={key:1,class:`tracks`},$n={class:`track-label`},er={class:`track-lane`},tr=[`title`],nr=[`aria-label`],rr={key:0,class:`clip-actions`},ir=[`disabled`,`onClick`],ar=[`disabled`,`onClick`],or={key:2,class:`empty-timeline`},sr=120/5e3,cr=J(O({__name:`TimelineView`,props:{timeline:{},graph:{},artifacts:{},canEdit:{type:Boolean}},emits:[`move-clip`],setup(t){let n=t,a=x(()=>{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=D(!0),d=D(!1);_(()=>a.value?.id,()=>{u.value=!0,d.value=!1});let f=()=>{u.value=!0,d.value=!1},m=()=>{u.value=!1,d.value=!0},h=e=>{let t=a.value?.metadata?.[e];return typeof t==`number`&&Number.isFinite(t)?t:void 0},g=x(()=>{let e=h(`duration_ms`);return e===void 0?`—`:`${(e/1e3).toFixed(1)}s`}),v=x(()=>{let e=h(`width`),t=h(`height`);return e&&t?`${e} × ${t}`:`—`}),y=x(()=>{let e=h(`width`),t=h(`height`);return e&&t?{aspectRatio:`${e} / ${t}`}:void 0}),b=e=>n.timeline?.clips.filter(t=>t.track_id===e)??[],S=e=>e.artifact_id.slice(-6),T=e=>({left:`${e.timeline_start_ms*sr}px`,width:`${Math.max(48,(e.source_out_ms-e.source_in_ms)/(e.speed??1)*sr)}px`});return(n,_)=>(E(),l(`div`,Vn,[a.value?(E(),l(`section`,Hn,[e(`div`,Un,[e(`div`,null,[e(`span`,Wn,i(n.$t(`poivelle.timeline.deliverable`)),1),e(`h2`,Gn,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(xe),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.timeline.download`)),1)],8,Kn)]),e(`div`,{class:`master-media`,style:C(y.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:_[0]||=e=>u.value=!1,onCanplay:_[1]||=e=>u.value=!1,onError:m},null,40,qn),u.value&&!d.value?(E(),l(`div`,Jn,[o(c(we),{size:24,class:`is-spinning`,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.timeline.loading`)),1)])):s(``,!0),d.value?(E(),l(`div`,Yn,[o(c(Ae),{size:24,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.timeline.loadError`)),1)])):s(``,!0)],4),e(`dl`,Xn,[e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.duration`)),1),e(`dd`,null,i(g.value),1)]),e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.frame`)),1),e(`dd`,null,i(v.value),1)]),e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.videoClips`)),1),e(`dd`,null,i(h(`video_clips`)??`—`),1)]),e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.audioClips`)),1),e(`dd`,null,i(h(`audio_clips`)??`—`),1)])])])):s(``,!0),e(`div`,Zn,[(E(),l(p,null,w(10,t=>e(`span`,{key:t},i((t-1)*5)+`s`,1)),64))]),t.timeline?.tracks.length?(E(),l(`div`,Qn,[(E(!0),l(p,null,w(t.timeline.tracks,r=>(E(),l(`div`,{key:r.id,class:`track-row`},[e(`div`,$n,i(r.title||r.kind||r.id),1),e(`div`,er,[(E(!0),l(p,null,w(b(r.id),(a,o)=>(E(),l(`div`,{key:a.id,class:`timeline-clip`,style:C(T(a)),title:a.artifact_id},[e(`button`,{type:`button`,"aria-label":a.artifact_id},i(S(a)),9,nr),t.canEdit&&r.kind===`video`?(E(),l(`span`,rr,[e(`button`,{type:`button`,disabled:o===0,onClick:e=>n.$emit(`move-clip`,{trackId:r.id,clipId:a.id,direction:-1})},` ‹ `,8,ir),e(`button`,{type:`button`,disabled:o===b(r.id).length-1,onClick:e=>n.$emit(`move-clip`,{trackId:r.id,clipId:a.id,direction:1})},` › `,8,ar)])):s(``,!0)],12,tr))),128))])]))),128))])):(E(),l(`div`,or,[o(c(Ue),{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`]]),lr={class:`review-view`},ur={class:`review-summary`},dr={class:`eyebrow`},fr={class:`summary-metrics`},pr={class:`review-columns`},mr={key:0,class:`item-actions`},hr=[`onClick`],gr={key:0,class:`empty-copy`},_r=[`onClick`],vr=[`onClick`],yr={key:0,class:`empty-copy`},br={key:1,class:`run-detail`},xr={key:0},Sr=[`onClick`],Cr={key:2,class:`forensic-failures`,role:`alert`},wr=J(O({__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=x(()=>o.proposals.filter(e=>e.state===`awaiting_approval`)),u=e=>![`release_pending`,`succeeded`,`failed`,`cancelled`].includes(e.state),d=x(()=>o.evaluations.filter(e=>e.verdict===`pass`).length),f=x(()=>o.forensicValidations[0]),m=x(()=>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,_)=>(E(),l(`div`,lr,[e(`section`,ur,[e(`div`,null,[e(`span`,dr,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`,fr,[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`,pr,[e(`div`,null,[e(`h3`,null,i(o.$t(`poivelle.review.pendingProposals`)),1),(E(!0),l(p,null,w(c.value,t=>(E(),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?(E(),l(`div`,mr,[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,hr)])):s(``,!0)]))),128)),c.value.length?s(``,!0):(E(),l(`p`,gr,i(o.$t(`poivelle.review.noProposals`)),1))]),e(`div`,null,[e(`h3`,null,i(o.$t(`poivelle.review.execution`)),1),(E(!0),l(p,null,w(a.runs,r=>(E(),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)?(E(),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,vr)):s(``,!0)],10,_r))),128)),a.runs.length?s(``,!0):(E(),l(`p`,yr,i(o.$t(`poivelle.review.noRuns`)),1)),a.activeRun?(E(),l(`section`,br,[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)]),(E(!0),l(p,null,w(a.activeRun.steps,r=>(E(),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?(E(),l(`p`,xr,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)?(E(),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,Sr)):s(``,!0)]))),128))])):s(``,!0),m.value.length?(E(),l(`section`,Cr,[e(`strong`,null,i(o.$t(`poivelle.review.forensics`)),1),(E(!0),l(p,null,w(m.value,e=>(E(),l(`p`,{key:e.code},i(e.code)+` · `+i(String(e.actual??`—`))+` / `+i(String(e.expected??`—`)),1))),128))])):s(``,!0)])])]))}}),[[`__scopeId`,`data-v-e66361d5`]]),Tr={class:`inspector-panel`},Er={class:`inspector-heading`},Dr={class:`field`},Or={class:`field`},kr=[`value`],Ar={class:`field grow`},jr={class:`node-meta`},Mr={key:1,class:`empty-inspector`},Nr=J(O({__name:`InspectorPanel`,props:{node:{}},emits:[`update`,`delete`],setup(t,{emit:n}){let a=t,s=n,u=D(``),f=D(``);_(()=>a.node,e=>{u.value=e?.title??``;let t=e?.payload.prompt??e?.payload.text??``;f.value=typeof t==`string`?t:``},{immediate:!0});let m=x(()=>a.node?a.node.node_type===`video`?Me:a.node.node_type===`audio`?Be:[`shot`,`scene`,`storyboard`].includes(a.node.node_type)?Q:[`image`,`character`,`location`].includes(a.node.node_type)?Ce:a.node.node_type===`script`||a.node.node_type===`text`?U:_e:G),h=()=>{let e=u.value.trim();a.node&&e&&e!==a.node.title&&s(`update`,{path:`/title`,value:e})},y=()=>{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)=>(E(),l(`aside`,Tr,[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)]),(E(),b(T(m.value),{size:18,"aria-hidden":`true`}))]),t.node?(E(),l(p,{key:0},[e(`label`,Dr,[e(`span`,null,i(n.$t(`poivelle.field.title`)),1),v(e(`input`,{"onUpdate:modelValue":a[0]||=e=>u.value=e,type:`text`,onBlur:h,onKeydown:d(h,[`enter`])},null,544),[[g,u.value]])]),e(`label`,Or,[e(`span`,null,i(n.$t(`poivelle.field.type`)),1),e(`input`,{value:t.node.node_type,type:`text`,disabled:``},null,8,kr)]),e(`label`,Ar,[e(`span`,null,i(n.$t(`poivelle.field.prompt`)),1),v(e(`textarea`,{"onUpdate:modelValue":a[1]||=e=>f.value=e,rows:`8`,onBlur:y},null,544),[[g,f.value]])]),e(`div`,jr,[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(ke),{size:14,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.node.delete`)),1)])],64)):(E(),l(`div`,Mr,[o(c(G),{size:24,"stroke-width":`1.4`}),e(`p`,null,i(n.$t(`poivelle.inspector.empty`)),1)]))]))}}),[[`__scopeId`,`data-v-7a6ae318`]]),Pr={class:`agent-dock`},Fr={class:`agent-identity`},Ir={class:`proposal-strip`},Lr=[`onClick`],Rr={key:0},zr=[`disabled`],Br=J(O({__name:`AgentDock`,props:{proposals:{},selectedNodeId:{},skill:{},canEdit:{type:Boolean}},emits:[`run`,`open-proposal`],setup(t){let a=t,u=x(()=>a.proposals.filter(e=>e.state===`awaiting_approval`));return(a,d)=>(E(),l(`section`,Pr,[e(`div`,Fr,[o(c(Ve),{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`,Ir,[(E(!0),l(p,null,w(u.value,t=>(E(),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,Lr))),128)),u.value.length?s(``,!0):(E(),l(`p`,Rr,i(a.$t(`poivelle.agent.noProposals`)),1))]),t.canEdit?(E(),l(`button`,{key:0,class:`agent-button`,type:`button`,disabled:!t.selectedNodeId,onClick:d[0]||=e=>a.$emit(`run`)},[o(c(Oe),{size:15,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.agent.plan`)),1)],8,zr)):s(``,!0)]))}}),[[`__scopeId`,`data-v-81fac9f8`]]),Vr={class:`project-guide`,"aria-labelledby":`project-guide-title`},Hr={class:`guide-copy`},Ur={id:`project-guide-title`},Wr={class:`guide-body`},Gr={class:`project-facts`},Kr={class:`guide-actions`},qr=[`disabled`],Jr={class:`cost-note`},Yr={class:`production-steps`},Xr={class:`done`},Zr=[`value`,`max`],Qr=[`value`,`max`],$r=J(O({__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=x(()=>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=x(()=>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=x(()=>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=x(()=>u.value.filter(e=>f.value.has(e)).length),m=x(()=>d.value.filter(e=>f.value.has(e)).length),h=x(()=>new Set(a.selections.map(e=>e.target_node_id))),g=x(()=>u.value.filter(e=>h.value.has(e)).length),_=x(()=>d.value.filter(e=>h.value.has(e)).length),v=x(()=>p.value===u.value.length&&g.value<u.value.length||m.value===d.value.length&&_.value<d.value.length),y=x(()=>a.graph.nodes.some(e=>e.node_type===`output`)),S=x(()=>{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))}),C=x(()=>{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(!(_.value<d.value.length))return a.graph.nodes.find(e=>e.node_type===`audio`&&!f.value.has(e.id))}),w=x(()=>(a.storyboard?.sections.reduce((e,t)=>e+t.shots.length,0)??a.graph.nodes.filter(e=>e.node_type===`shot`).length)||d.value.length),T=x(()=>{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=x(()=>{let e=a.graph.nodes.find(e=>e.node_type===`script`);return String(e?.payload?.aspect_ratio??`16:9`)}),O=x(()=>C.value?.node_type===`image`?q(`poivelle.guide.generateFrame`,{current:p.value+1,total:u.value.length}):C.value?.node_type===`video`?q(`poivelle.guide.generateMotion`,{current:m.value+1,total:d.value.length}):q(`poivelle.guide.generateScore`));return(a,f)=>(E(),l(`section`,Vr,[e(`div`,Hr,[e(`p`,null,i(a.$t(`poivelle.guide.kicker`)),1),e(`h1`,Ur,i(a.$t(`poivelle.guide.title`,{title:t.projectTitle})),1),e(`p`,Wr,i(a.$t(`poivelle.guide.body`)),1),e(`dl`,Gr,[e(`div`,null,[e(`dt`,null,i(a.$t(`poivelle.guide.duration`)),1),e(`dd`,null,i(T.value)+`s`,1)]),e(`div`,null,[e(`dt`,null,i(a.$t(`poivelle.guide.shots`)),1),e(`dd`,null,i(w.value),1)]),e(`div`,null,[e(`dt`,null,i(a.$t(`poivelle.guide.format`)),1),e(`dd`,null,i(D.value),1)])]),e(`div`,Kr,[C.value?(E(),l(`button`,{key:0,type:`button`,class:`primary-action`,disabled:!t.canEdit||t.busy,onClick:f[0]||=e=>a.$emit(`generate-node`,C.value.id)},[t.busy?(E(),b(c(we),{key:0,size:17,class:`spinning`,"aria-hidden":`true`})):(E(),b(c(Oe),{key:1,size:17,"aria-hidden":`true`})),r(` `+i(O.value),1)],8,qr)):(E(),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(v.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(he),{size:15,"aria-hidden":`true`})])]),e(`p`,Jr,[o(c(Ye),{size:14,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.guide.costNote`)),1)])]),e(`ol`,Yr,[e(`li`,Xr,[e(`span`,null,[o(c(H),{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:w.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,Zr)]),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&&_.value<d.value.length,done:d.value.length>0&&_.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,Qr)]),e(`small`,null,i(m.value)+` `+i(a.$t(`poivelle.guide.generated`))+` · `+i(_.value)+` `+i(a.$t(`poivelle.guide.selected`)),1)],2),y.value?(E(),l(`li`,{key:0,class:n({current:_.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`]]),ei={class:`poivelle-studio`},ti={key:0,class:`error-banner`},ni={key:1,class:`loading-state`},ri={key:2,class:`studio-body`},ii={class:`projection-workspace`},ai={class:`projection-content`},oi={key:3,class:`onboarding`},si={key:0,class:`dry-run-summary`},ci={class:`dry-run-note`},li=J(O({__name:`StudioWorkspace`,emits:[`back-home`],setup(n){let d=ae(),m=x(()=>d.state.poivelle),h=x(()=>m.value?.workspaces??[]),g=x(()=>m.value?.projects??[]),_=x(()=>m.value?.graph),v=x(()=>m.value?.assets??[]),y=x(()=>m.value?.artifacts??[]),C=x(()=>m.value?.takes??[]),T=x(()=>m.value?.selections??[]),O=x(()=>m.value?.storyboard),k=x(()=>m.value?.revisions??[]),A=x(()=>m.value?.proposals??[]),ee=x(()=>m.value?.runs??[]),j=x(()=>m.value?.activeRun),te=x(()=>m.value?.evaluations??[]),ne=x(()=>m.value?.forensicValidations??[]),re=x(()=>m.value?.costs),M=x(()=>m.value?.timeline),N=x(()=>m.value?.projection??`overview`),P=x(()=>m.value?.selectedNodeId),F=x(()=>_.value?.nodes.find(e=>e.id===P.value)),L=x(()=>g.value.find(e=>e.id===m.value?.currentProjectId)),B=x(()=>[`owner`,`producer`,`director`,`editor`].includes(m.value?.currentMembership?.role??``)),V=x(()=>m.value?.dryRun),ce=x(()=>m.value?.error),le=x(()=>[m.value?.status?.bootstrap,m.value?.status?.graph].includes(oe.Request)),ue=x(()=>new Set([...y.value.filter(e=>e.state===`committed`).flatMap(e=>e.node_id??[]),...C.value.filter(e=>e.state===`ready`).map(e=>e.target_node_id)])),de=x(()=>new Set(T.value.map(e=>e.target_node_id))),fe=x(()=>O.value?O.value.sections.flatMap(e=>e.shots.flatMap(e=>e.image_node_ids)):_.value?.nodes.filter(e=>e.node_type===`image`).map(e=>e.id)??[]),me=x(()=>O.value?O.value.sections.flatMap(e=>e.shots.flatMap(e=>e.video_node_ids)):_.value?.nodes.filter(e=>e.node_type===`video`).map(e=>e.id)??[]),he=x(()=>fe.value.length>0&&fe.value.every(e=>ue.value.has(e))&&fe.value.some(e=>!de.value.has(e))||me.value.length>0&&me.value.every(e=>ue.value.has(e))&&me.value.some(e=>!de.value.has(e))),ge=x(()=>{let e=fe.value.find(e=>!ue.value.has(e));if(e)return _.value?.nodes.find(t=>t.id===e);if(fe.value.some(e=>!de.value.has(e)))return;let t=me.value.find(e=>!ue.value.has(e));if(t)return _.value?.nodes.find(e=>e.id===t);if(me.value.some(e=>!de.value.has(e)))return;let n=_.value?.nodes.find(e=>e.node_type===`audio`&&!ue.value.has(e.id));if(n)return n}),_e=x(()=>ge.value?.node_type===`image`?q(`poivelle.guide.generateNextFrame`):ge.value?.node_type===`video`?q(`poivelle.guide.generateNextMotion`):ge.value?.node_type===`audio`?q(`poivelle.guide.generateScore`):q(`poivelle.guide.continue`)),H=D(!1),ve=D(!1),ye=D(!1),be=D(!1),xe=D(!1),U=D(!1),Se=f({name:``,monthly_limit_microcredits:void 0}),W=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`}),Ce=[{label:q(`poivelle.project.blankWorkflow`),value:`blank`},{label:q(`poivelle.project.commercialTVC`),value:`commercial_tvc`}],G=f({node_type:`scene`,title:``,prompt:``}),K=f({title:``,kind:`image`,source_url:``,content_hash:``}),Te=[`script`,`character`,`location`,`prop`,`storyboard`,`scene`,`shot`,`image`,`video`,`audio`,`subtitle`,`composition`,`output`,`note`],De=[`character`,`location`,`prop`,`image`,`video`,`voice`,`music`,`sfx`,`brand`],Oe=()=>d.dispatch(`poivelle/bootstrap`),ke=e=>d.dispatch(`poivelle/loadProject`,e),je=e=>d.dispatch(`poivelle/selectNode`,e),Me=e=>d.dispatch(`poivelle/setProjection`,e),J=()=>{W.workspace_id=m.value?.currentWorkspaceId??h.value[0]?.id??``,ye.value=!0},Y=async()=>{Se.name.trim()&&await $(async()=>{await d.dispatch(`poivelle/createWorkspace`,{...Se,name:Se.name.trim()}),ve.value=!1,J()})},Fe=async()=>{!W.workspace_id||!W.title.trim()||await $(async()=>{W.workflow===`commercial_tvc`?(await d.dispatch(`poivelle/createCommercialTVCProject`,{workspace_id:W.workspace_id,title:W.title.trim(),product_name:W.product_name.trim()||W.title.trim(),product_category:W.product_category.trim(),brand_tone:W.brand_tone.trim(),aspect_ratio:W.aspect_ratio,managed_execution:!1}),Me(`storyboard`)):await d.dispatch(`poivelle/createProject`,{workspace_id:W.workspace_id,title:W.title.trim(),skill:W.skill,domain:`film.drama.short`}),ye.value=!1,W.title=``})},Ie=async()=>{G.title.trim()&&await $(async()=>{await d.dispatch(`poivelle/createNode`,{node_type:G.node_type,title:G.title.trim(),payload:{prompt:G.prompt}}),be.value=!1,G.title=``,G.prompt=``})},Le=async()=>{!m.value?.currentWorkspaceId||!K.title||!K.source_url||!K.content_hash||await $(async()=>{await d.dispatch(`poivelle/importAsset`,{...K,project_id:m.value.currentProjectId}),xe.value=!1})},Re=e=>d.dispatch(`poivelle/updateSelectedNode`,e),Be=async()=>{await Ne.confirm(q(`poivelle.node.deleteConfirm`),``,{type:`warning`}),await d.dispatch(`poivelle/deleteSelectedNode`)},Ve=async()=>{await d.dispatch(`poivelle/commitRevision`,`Studio checkpoint`),se.success(q(`poivelle.revision.committed`))},He=async()=>{F.value&&await $(async()=>{await d.dispatch(`poivelle/dryRun`,F.value?.node_type===`composition`?`compose`:`generate`),U.value=!0})},We=async e=>{await je(e),await a(),await He()},Ge=async()=>{if(N.value===`overview`){ge.value?await We(ge.value.id):he.value&&Me(`storyboard`);return}F.value&&await He()},Ke=async()=>{await $(async()=>{let e=await d.dispatch(`poivelle/confirmDryRun`);U.value=!1,e&&se.success(q(`poivelle.run.queued`))})},qe=e=>{Me(`review`),se.info(`${q(`poivelle.agent.proposal`)} ${e.slice(-8)}`)},Je=async e=>{await Ne.confirm(q(`poivelle.review.rejectConfirm`),``,{type:`warning`}),await $(()=>d.dispatch(`poivelle/rejectProposal`,e))},Ye=async e=>{await Ne.confirm(q(`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),U.value=!0})},Qe=async e=>{if(!M.value)return;let t=M.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`,{...M.value,clips:t}))},$e=async e=>{await $(async()=>{await d.dispatch(`poivelle/selectTake`,e),se.success(q(`poivelle.storyboard.selectionSaved`))})},et=e=>`${(e/1e6).toFixed(2)} credits`,$=async e=>{H.value=!0;try{await e()}catch(e){se.error(e?.response?.data?.detail?.message??e?.response?.data?.detail??e?.message??q(`poivelle.error.generic`))}finally{H.value=!1}};return u(Oe),(n,a)=>(E(),l(`main`,ei,[o(Vt,{"project-title":L.value?.title,"graph-version":_.value?.graph_version,"can-run":B.value&&(N.value===`overview`?!!ge.value||he.value:!!F.value),"can-edit":B.value,"primary-label":N.value===`overview`?he.value?n.$t(`poivelle.guide.chooseResults`):_e.value:void 0,onOpenProjects:a[0]||=e=>ye.value=!0,onHome:a[1]||=e=>n.$emit(`back-home`),onCommit:Ve,onRun:Ge},null,8,[`project-title`,`graph-version`,`can-run`,`can-edit`,`primary-label`]),ce.value?(E(),l(`div`,ti,[o(c(Ae),{size:15,"aria-hidden":`true`}),e(`span`,null,i(ce.value),1),e(`button`,{type:`button`,onClick:Oe},i(n.$t(`poivelle.action.retry`)),1)])):s(``,!0),le.value&&!_.value?(E(),l(`div`,ni,[o(c(we),{size:25,class:`is-spinning`,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.status.loading`)),1)])):L.value&&_.value?(E(),l(`div`,ri,[N.value===`overview`?s(``,!0):(E(),b(sn,{key:0,projects:g.value,"current-project-id":L.value.id,assets:v.value,revisions:k.value,"can-edit":B.value,onSelectProject:ke,onCreateProject:J,onImportAsset:a[2]||=e=>xe.value=!0},null,8,[`projects`,`current-project-id`,`assets`,`revisions`,`can-edit`])),e(`section`,ii,[o(un,{"model-value":N.value,"can-edit":B.value,"onUpdate:modelValue":Me,onCreateNode:a[3]||=e=>be.value=!0},null,8,[`model-value`,`can-edit`]),e(`div`,ai,[N.value===`overview`?(E(),b($r,{key:0,"project-title":L.value.title,graph:_.value,storyboard:O.value,artifacts:y.value,takes:C.value,selections:T.value,"can-edit":B.value,busy:H.value,onGenerateNode:We,onOpenStoryboard:a[4]||=e=>Me(`storyboard`)},null,8,[`project-title`,`graph`,`storyboard`,`artifacts`,`takes`,`selections`,`can-edit`,`busy`])):N.value===`canvas`?(E(),b(vn,{key:1,graph:_.value,"selected-node-id":P.value,"can-edit":B.value,onSelectNode:je,onCreateNode:a[5]||=e=>be.value=!0},null,8,[`graph`,`selected-node-id`,`can-edit`])):N.value===`storyboard`?(E(),b(Bn,{key:2,graph:_.value,storyboard:O.value,artifacts:y.value,takes:C.value,selections:T.value,"selected-node-id":P.value,"can-edit":B.value,"can-select":B.value&&k.value.length>0,onSelectNode:je,onSelectTake:$e},null,8,[`graph`,`storyboard`,`artifacts`,`takes`,`selections`,`selected-node-id`,`can-edit`,`can-select`])):N.value===`timeline`?(E(),b(cr,{key:3,timeline:M.value,graph:_.value,artifacts:y.value,"can-edit":B.value,onMoveClip:Qe},null,8,[`timeline`,`graph`,`artifacts`,`can-edit`])):(E(),b(wr,{key:4,graph:_.value,proposals:A.value,revisions:k.value,runs:ee.value,"active-run":j.value,evaluations:te.value,"forensic-validations":ne.value,costs:re.value,"can-edit":B.value,onRejectProposal:Je,onCancelRun:Ye,onOpenRun:Xe,onRetryStep:Ze},null,8,[`graph`,`proposals`,`revisions`,`runs`,`active-run`,`evaluations`,`forensic-validations`,`costs`,`can-edit`]))]),N.value===`overview`?s(``,!0):(E(),b(Br,{key:0,proposals:A.value,"selected-node-id":P.value,skill:L.value.active_skill,"can-edit":B.value,onRun:He,onOpenProposal:qe},null,8,[`proposals`,`selected-node-id`,`skill`,`can-edit`]))]),B.value&&N.value===`canvas`?(E(),b(Nr,{key:1,node:F.value,onUpdate:Re,onDelete:Be},null,8,[`node`])):s(``,!0)])):(E(),l(`section`,oi,[a[38]||=e(`div`,{class:`onboarding-number`},`01 / STUDIO`,-1),o(c(Ue),{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?B.value?(E(),l(`button`,{key:1,type:`button`,onClick:J},[o(c(Q),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.project.create`)),1)])):s(``,!0):(E(),l(`button`,{key:0,type:`button`,onClick:a[6]||=e=>ve.value=!0},[o(c(Ee),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.workspace.create`)),1)]))])),o(c(Pe),{modelValue:ve.value,"onUpdate:modelValue":a[11]||=e=>ve.value=e,title:n.$t(`poivelle.workspace.create`),width:`420px`},{footer:S(()=>[o(c(X),{onClick:a[10]||=e=>ve.value=!1},{default:S(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(X),{type:`primary`,loading:H.value,onClick:Y},{default:S(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:S(()=>[o(c(z),{"label-position":`top`,onSubmit:a[9]||=t(()=>{},[`prevent`])},{default:S(()=>[o(c(R),{label:n.$t(`poivelle.workspace.name`)},{default:S(()=>[o(c(Z),{modelValue:Se.name,"onUpdate:modelValue":a[7]||=e=>Se.name=e,maxlength:`120`,autofocus:``},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.workspace.budget`)},{default:S(()=>[o(c(pe),{modelValue:Se.monthly_limit_microcredits,"onUpdate:modelValue":a[8]||=e=>Se.monthly_limit_microcredits=e,min:0,step:1e6},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),o(c(Pe),{modelValue:ye.value,"onUpdate:modelValue":a[22]||=e=>ye.value=e,title:n.$t(`poivelle.project.create`),width:`460px`},{footer:S(()=>[o(c(X),{onClick:a[21]||=e=>ye.value=!1},{default:S(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(X),{type:`primary`,loading:H.value,onClick:Fe},{default:S(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:S(()=>[o(c(z),{"label-position":`top`,onSubmit:a[20]||=t(()=>{},[`prevent`])},{default:S(()=>[o(c(R),{label:n.$t(`poivelle.project.workspace`)},{default:S(()=>[o(c(ie),{modelValue:W.workspace_id,"onUpdate:modelValue":a[12]||=e=>W.workspace_id=e,style:{width:`100%`}},{default:S(()=>[(E(!0),l(p,null,w(h.value,e=>(E(),b(c(I),{key:e.id,label:e.name,value:e.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.project.title`)},{default:S(()=>[o(c(Z),{modelValue:W.title,"onUpdate:modelValue":a[13]||=e=>W.title=e,maxlength:`200`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.project.workflow`)},{default:S(()=>[o(c(ze),{modelValue:W.workflow,"onUpdate:modelValue":a[14]||=e=>W.workflow=e,options:Ce,block:``},null,8,[`modelValue`])]),_:1},8,[`label`]),W.workflow===`commercial_tvc`?(E(),l(p,{key:0},[o(c(R),{label:n.$t(`poivelle.project.productName`)},{default:S(()=>[o(c(Z),{modelValue:W.product_name,"onUpdate:modelValue":a[15]||=e=>W.product_name=e,maxlength:`120`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.project.productCategory`)},{default:S(()=>[o(c(Z),{modelValue:W.product_category,"onUpdate:modelValue":a[16]||=e=>W.product_category=e,maxlength:`180`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.project.brandTone`)},{default:S(()=>[o(c(Z),{modelValue:W.brand_tone,"onUpdate:modelValue":a[17]||=e=>W.brand_tone=e,type:`textarea`,rows:2,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.project.aspectRatio`)},{default:S(()=>[o(c(ze),{modelValue:W.aspect_ratio,"onUpdate:modelValue":a[18]||=e=>W.aspect_ratio=e,options:[`16:9`,`9:16`,`1:1`]},null,8,[`modelValue`])]),_:1},8,[`label`])],64)):s(``,!0),o(c(R),{label:n.$t(`poivelle.project.skill`)},{default:S(()=>[W.workflow===`blank`?(E(),b(c(ie),{key:0,modelValue:W.skill,"onUpdate:modelValue":a[19]||=e=>W.skill=e,style:{width:`100%`}},{default:S(()=>[o(c(I),{label:`Short drama · professional`,value:`film.drama.short@1.0.0`}),o(c(I),{label:`Commercial film · professional`,value:`film.commercial@1.0.0`}),o(c(I),{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(Pe),{modelValue:be.value,"onUpdate:modelValue":a[28]||=e=>be.value=e,title:n.$t(`poivelle.node.create`),width:`460px`},{footer:S(()=>[o(c(X),{onClick:a[27]||=e=>be.value=!1},{default:S(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(X),{type:`primary`,loading:H.value,onClick:Ie},{default:S(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:S(()=>[o(c(z),{"label-position":`top`,onSubmit:a[26]||=t(()=>{},[`prevent`])},{default:S(()=>[o(c(R),{label:n.$t(`poivelle.field.type`)},{default:S(()=>[o(c(ie),{modelValue:G.node_type,"onUpdate:modelValue":a[23]||=e=>G.node_type=e,style:{width:`100%`}},{default:S(()=>[(E(),l(p,null,w(Te,e=>o(c(I),{key:e,label:e,value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.field.title`)},{default:S(()=>[o(c(Z),{modelValue:G.title,"onUpdate:modelValue":a[24]||=e=>G.title=e,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.field.prompt`)},{default:S(()=>[o(c(Z),{modelValue:G.prompt,"onUpdate:modelValue":a[25]||=e=>G.prompt=e,type:`textarea`,rows:5},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),o(c(Pe),{modelValue:xe.value,"onUpdate:modelValue":a[35]||=e=>xe.value=e,title:n.$t(`poivelle.asset.import`),width:`500px`},{footer:S(()=>[o(c(X),{onClick:a[34]||=e=>xe.value=!1},{default:S(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(X),{type:`primary`,loading:H.value,onClick:Le},{default:S(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:S(()=>[o(c(z),{"label-position":`top`,onSubmit:a[33]||=t(()=>{},[`prevent`])},{default:S(()=>[o(c(R),{label:n.$t(`poivelle.asset.title`)},{default:S(()=>[o(c(Z),{modelValue:K.title,"onUpdate:modelValue":a[29]||=e=>K.title=e,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.field.type`)},{default:S(()=>[o(c(ie),{modelValue:K.kind,"onUpdate:modelValue":a[30]||=e=>K.kind=e,style:{width:`100%`}},{default:S(()=>[(E(),l(p,null,w(De,e=>o(c(I),{key:e,label:e,value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.asset.url`)},{default:S(()=>[o(c(Z),{modelValue:K.source_url,"onUpdate:modelValue":a[31]||=e=>K.source_url=e},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(R),{label:n.$t(`poivelle.asset.hash`)},{default:S(()=>[o(c(Z),{modelValue:K.content_hash,"onUpdate:modelValue":a[32]||=e=>K.content_hash=e,placeholder:`sha256:...`},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),o(c(Pe),{modelValue:U.value,"onUpdate:modelValue":a[37]||=e=>U.value=e,title:n.$t(`poivelle.run.confirmTitle`),width:`520px`},{footer:S(()=>[o(c(X),{onClick:a[36]||=e=>U.value=!1},{default:S(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(X),{type:`primary`,loading:H.value,onClick:Ke},{default:S(()=>[r(i(n.$t(`poivelle.run.confirm`)),1)]),_:1},8,[`loading`])]),default:S(()=>[V.value?(E(),l(`div`,si,[e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.targets`)),1),e(`strong`,null,i(V.value.dependency_closure.length),1)]),e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.maximum`)),1),e(`strong`,null,i(et(V.value.max_cost_microcredits)),1)]),e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.approval`)),1),e(`strong`,null,i(V.value.required_approval),1)])])):s(``,!0),e(`p`,ci,i(n.$t(`poivelle.run.confirmBody`)),1)]),_:1},8,[`modelValue`,`title`])]))}}),[[`__scopeId`,`data-v-1b367de3`]]),ui=O({__name:`Index`,setup(e){let t=D(`discovery`);return(e,n)=>t.value===`discovery`?(E(),b(jt,{key:0,onOpenStudio:n[0]||=e=>t.value=`studio`})):(E(),b(li,{key:1,onBackHome:n[1]||=e=>t.value=`discovery`}))}});export{ui as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{n as v,r as y,t as b}from"./select-D0gYN9N3.js";import{t as x}from"./upload-1qOyy5pc.js";import{t as S}from"./tooltip-Cfbg70mI.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-PmOthmjQ.js";import{t as E}from"./drawer-DZIcn6a0.js";import{t as D}from"./input-number-DEovBxHn.js";import{t as O}from"./switch-SImeRhlM.js";import{t as k}from"./box-DMe33HP5.js";import{t as A}from"./clock-CKSPDogH.js";import{a as j,i as M,n as N,r as P,s as F,t as I}from"./pagination-C-DvTKA-.js";import{t as ee}from"./image-BBBtc1dR.js";import{t as te}from"./info-BLyQemIV.js";import{t as L}from"./trash-2-D1buIvtL.js";import{t as ne}from"./triangle-alert-CKxXMrIy.js";import{t as re}from"./upload-CatJa7lp.js";import{t as R}from"./wand-sparkles-C0IhvDEL.js";import{t as ie}from"./zap-D48bHrSH.js";import{Bn as ae,Gn as oe,Kn as z,Ln as se,Mn as ce,Nn as le,Pn as ue,Rn as B,Un as V,Vn as H,Wn as U,jn as de,zn as fe}from"./constants-BAu6gjb8.js";import{$t as pe,Fr as me,Ii as he,O as W,Xi as G,Yt as ge,an as _e,en as ve,mn as ye,nn as be,oi as xe,qn as K,rn as Se,tn as Ce,ua as q}from"./index-Bbaw1dFE.js";import{t as we}from"./CopyToClipboard-DPpOVvXZ.js";import{n as J,t as Y}from"./scenarioPayment-s_hqMl_Z.js";import{t as Te}from"./ReportButton-DHPSYmbK.js";import{t as X}from"./ImagePreview-BZEtZTR7.js";import{n as Ee}from"./taskDrawerMixin-DyAUhFEq.js";import{t as De}from"./Consumption-Bdsy-uO_.js";import{t as Oe}from"./ScenarioPaymentMode-KgrScg5P.js";import{t as ke}from"./ApiCodeButton-baHNMZlA.js";import{t as Ae}from"./BotPlaceholder-DErOB9Ll.js";import{t as je}from"./ImageWrapper-BTkthxgU.js";import{n as Z}from"./imageRequests-DayCUFyY.js";var Me=_({name:`LayoutNanobanana`,components:{MagicIcon:R,ElDrawer:E,ElButton:q},mixins:[Ee]}),Ne={class:`main flex flex-row flex-1`},Pe={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)]`},Fe={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Ie(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,Ne,[e(`div`,Pe,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Fe,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[g,!t.tasksEmpty]]),a(_,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Le=W(Me,[[`render`,Ie],[`__scopeId`,`data-v-fa2172a6`]]),Re=_({name:`PromptInput`,components:{PromptTextarea:M},computed:{prompt:{get(){return this.$store.state.openaiimage?.config?.prompt},set(e){this.$store.commit(`openaiimage/setConfig`,{...this.$store.state.openaiimage?.config,prompt:e})}}},mounted(){this.prompt||=``}});function ze(e,t,n,r,i,a){let o=l(`prompt-textarea`);return h(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`openaiimage.name.prompt`),info:e.$t(`openaiimage.description.prompt`),placeholder:e.$t(`openaiimage.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Be=W(Re,[[`render`,ze]]),Ve=_({name:`ImageUrlsInput`,components:{UploadIcon:re,ElUpload:x,ElButton:q,InfoIcon:j,ImagePreview:X},mixins:[Se,be,ve,ge],data(){return{fileList:[],uploadUrl:he()+`/api/v1/files/`,suppressWatch:!1}},computed:{maxImages(){return 16},headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.openaiimage?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),this.fileList=t}}},mounted(){},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url==`string`&&e.url.startsWith(`blob:`))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImageUrls()},onExceed(){T.warning(this.$t(`openaiimage.message.uploadImageExceed`,{count:16}))},onError(){T.error(this.$t(`openaiimage.message.uploadImageError`))},onSetImageUrls(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`openaiimage/setConfig`,{...this.$store.state.openaiimage?.config,image_urls:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImageUrls()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url==`string`&&t.url.startsWith(`blob:`))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImageUrls()}}}),He={class:`field flex min-h-8 w-full items-center justify-between gap-3`},Ue={class:`flex min-w-0 items-center`},We={class:`title m-0 text-[14px] font-bold`},Ge={class:`file-list flex flex-wrap gap-[10px]`};function Ke(t,n,o,u,d,g){let _=l(`info-icon`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`),x=l(`image-preview`);return h(),s(`div`,null,[e(`div`,He,[e(`div`,Ue,[e(`h2`,We,i(t.$t(`openaiimage.name.imageUrls`)),1),a(_,{content:t.$t(`openaiimage.description.imageUrls`)},null,8,[`content`])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:t.maxImages,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-change":t.onChange,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(y,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`openaiimage.button.uploadImageUrls`)),1)]),_:1})]),_:1},8,[`file-list`,`limit`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])]),e(`div`,Ge,[(h(!0),s(c,null,m(t.fileList,(e,n)=>(h(),f(x,{key:e.uid||e?.response?.file_url||e.url||n,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:r=>t.onRemovePreview(n,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])])}var qe=W(Ve,[[`render`,Ke]]),Je=_({name:`OpenAIImageModelSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:j},data(){return{options:[{value:se,label:this.$t(`openaiimage.model.gptImage1`)},{value:B,label:this.$t(`openaiimage.model.gptImage15`)},{value:fe,label:this.$t(`openaiimage.model.gptImage2`)},{value:ae,label:this.$t(`openaiimage.model.gptImage2Official`)}]}},computed:{value:{get(){return this.$store.state.openaiimage?.config?.model},set(e){this.$store.commit(`openaiimage/setConfig`,{...this.$store.state.openaiimage?.config,model:e})}},modelDescription(){return this.$t(`openaiimage.description.model`)}},mounted(){this.value||=ue}}),Ye={class:`field`},Xe={class:`label`},Ze={class:`box`},Qe={class:`title font-bold`};function $e(t,n,r,o,u,d){let g=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return h(),s(`div`,Ye,[e(`div`,Xe,[e(`div`,Ze,[e(`h2`,Qe,i(t.$t(`openaiimage.name.model`)),1),a(g,{content:t.modelDescription,class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`openaiimage.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var et=W(Je,[[`render`,$e],[`__scopeId`,`data-v-a42acad4`]]);function Q(e){if(!e)return;let t=/^(\d+)x(\d+)$/.exec(e);if(t)return{w:Number(t[1]),h:Number(t[2])}}var tt=_({name:`OpenAIImageSizeSelector`,components:{ElSelect:y,ElOption:b,ElOptionGroup:v,ElSwitch:O,ElInputNumber:D,InfoIcon:j},data(){return{customMode:!1,customWidth:1024,customHeight:1024}},computed:{model(){return this.$store.state.openaiimage?.config?.model||`gpt-image-2`},storedSize(){return this.$store.state.openaiimage?.config?.size},autoSizeValue(){return z},customSupported(){return le.includes(this.model)},presets(){return H[this.model]??H[`gpt-image-2`]??[]},presetGroups(){return this.model===`gpt-image-2`||this.model===`gpt-image-2:official`?[{label:this.$t(`openaiimage.sizeGroup.standard1k`),options:V},{label:this.$t(`openaiimage.sizeGroup.preset2k`),options:U},{label:this.$t(`openaiimage.sizeGroup.preset4k`),options:oe}]:[{label:this.$t(`openaiimage.sizeGroup.standard1k`),options:this.presets}]},useCustom:{get(){return this.customSupported&&this.customMode},set(e){if(!(e&&!this.customSupported))if(this.customMode=e,e){if(this.customError)return;this.commitSize(`${this.customWidth}x${this.customHeight}`)}else this.commitSize(z)}},presetValue:{get(){let e=this.storedSize;return e&&this.presets.includes(e)?e:this.autoSizeValue},set(e){this.customMode=!1,this.commitSize(e||void 0)}},multiple(){return 16},minSide(){return 256},maxSide(){return de},customError(){let e=this.customWidth,t=this.customHeight;return!Number.isFinite(e)||!Number.isFinite(t)||e<=0||t<=0?this.$t(`openaiimage.error.customSizePositive`):e%this.multiple!==0||t%this.multiple!==0?this.$t(`openaiimage.error.customSizeMultiple`,{multiple:this.multiple}):e<this.minSide||t<this.minSide?this.$t(`openaiimage.error.customSizeMin`,{min:this.minSide}):Math.max(e,t)>this.maxSide?this.$t(`openaiimage.error.customSizeMax`,{max:this.maxSide}):e*t>8294400?this.$t(`openaiimage.error.customSizePixels`,{pixels:ce.toLocaleString()}):``}},watch:{model:{immediate:!1,handler(){this.customSupported||(this.customMode=!1);let e=this.storedSize;if(!e||e===`auto`||this.presets.includes(e))return;let t=Q(e);t&&this.customSupported&&(this.customMode=!0,this.customWidth=t.w,this.customHeight=t.h,!this.customError)||this.commitSize(z)}},storedSize(e){if(!e||e===`auto`){this.customMode=!1;return}if(this.presets.includes(e)){this.customMode=!1;return}let t=Q(e);t&&this.customSupported&&(this.customMode=!0,this.customWidth!==t.w&&(this.customWidth=t.w),this.customHeight!==t.h&&(this.customHeight=t.h))},customWidth(){this.syncCustomToStore()},customHeight(){this.syncCustomToStore()}},mounted(){let e=this.storedSize,t=Q(e);e&&t&&this.customSupported&&!this.presets.includes(e)&&(this.customMode=!0,this.customWidth=t.w,this.customHeight=t.h)},methods:{commitSize(e){let t={...this.$store.state.openaiimage?.config};e?t.size=e:delete t.size,this.$store.commit(`openaiimage/setConfig`,t)},syncCustomToStore(){this.useCustom&&(this.customError||this.commitSize(`${this.customWidth}x${this.customHeight}`))}}}),nt={class:`resolution`},rt={class:`field`},it={class:`label`},at={class:`box`},ot={class:`title font-bold`},st={class:`field custom-toggle`},ct={class:`label`},lt={class:`box`},ut={class:`title font-bold`},dt={key:0,class:`custom-inputs`},ft={class:`row`},pt={class:`row-label`},mt={class:`row`},ht={class:`row-label`},gt={key:0,class:`error`};function _t(t,n,r,u,d,g){let _=l(`info-icon`),v=l(`el-option`),y=l(`el-option-group`),b=l(`el-select`),x=l(`el-switch`),S=l(`el-input-number`);return h(),s(`div`,nt,[e(`div`,rt,[e(`div`,it,[e(`div`,at,[e(`h2`,ot,i(t.$t(`openaiimage.name.size`)),1),a(_,{content:t.$t(`openaiimage.description.size`),class:`info`},null,8,[`content`])])]),a(b,{modelValue:t.presetValue,"onUpdate:modelValue":n[0]||=e=>t.presetValue=e,class:`value`,placeholder:t.$t(`openaiimage.placeholder.select`),disabled:t.useCustom},{default:p(()=>[a(v,{label:t.$t(`openaiimage.size.auto`),value:t.autoSizeValue},null,8,[`label`,`value`]),(h(!0),s(c,null,m(t.presetGroups,e=>(h(),f(y,{key:e.label,label:e.label},{default:p(()=>[(h(!0),s(c,null,m(e.options,e=>(h(),f(v,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:2},1032,[`label`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])]),t.customSupported?(h(),s(c,{key:0},[e(`div`,st,[e(`div`,ct,[e(`div`,lt,[e(`h2`,ut,i(t.$t(`openaiimage.name.customSize`)),1),a(_,{content:t.$t(`openaiimage.description.customSize`),class:`info`},null,8,[`content`])])]),a(x,{modelValue:t.useCustom,"onUpdate:modelValue":n[1]||=e=>t.useCustom=e,class:`value-switch`},null,8,[`modelValue`])]),t.useCustom?(h(),s(`div`,dt,[e(`div`,ft,[e(`span`,pt,i(t.$t(`openaiimage.name.width`)),1),a(S,{modelValue:t.customWidth,"onUpdate:modelValue":n[2]||=e=>t.customWidth=e,class:`row-input`,min:t.minSide,max:t.maxSide,step:t.multiple,"step-strictly":!0,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`,`step`])]),e(`div`,mt,[e(`span`,ht,i(t.$t(`openaiimage.name.height`)),1),a(S,{modelValue:t.customHeight,"onUpdate:modelValue":n[3]||=e=>t.customHeight=e,class:`row-input`,min:t.minSide,max:t.maxSide,step:t.multiple,"step-strictly":!0,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`,`step`])]),t.customError?(h(),s(`div`,gt,i(t.customError),1)):o(``,!0)])):o(``,!0)],64)):o(``,!0)])}var vt=W(tt,[[`render`,_t],[`__scopeId`,`data-v-22ab23e0`]]),yt=350,bt=_({name:`ConfigPanel`,components:{MagicIcon:R,ElButton:q,PromptInput:Be,Consumption:De,ImageUrlsInput:qe,ModelSelector:et,ResolutionSelector:vt,ScenarioPaymentMode:Oe},props:{identityToken:{type:String,default:void 0}},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.openaiimage?.config},consumption(){return _e({...this.config||{}},this.service?.cost)},service(){return this.$store.state.openaiimage?.service},walletMode(){return Y()&&J(`openaiimage`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0},identityToken(){this.quoteRunId+=1,this.walletMode&&this.scheduleQuote()}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteTimer=window.setTimeout(this.refreshQuote,yt)},async refreshQuote(){let e=J(`openaiimage`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await K.quote(Z(this.config),this.identityToken);t===this.quoteRunId&&e.mode===`wallet`&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),xt={class:`flex flex-col h-full`},St={class:`flex-1 overflow-y-auto p-5`},Ct={class:`flex flex-col items-center justify-center px-5 pb-5`};function wt(t,n,c,u,d,m){let g=l(`model-selector`),_=l(`resolution-selector`),v=l(`prompt-input`),y=l(`image-urls-input`),b=l(`scenario-payment-mode`),x=l(`consumption`),S=l(`magic-icon`),C=l(`el-button`);return h(),s(`div`,xt,[e(`div`,St,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`})]),e(`div`,Ct,[a(b,{scenario:`openaiimage`}),t.walletMode?o(``,!0):(h(),f(x,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(C,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(S,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`openaiimage.button.generate`)),1)]),_:1},8,[`onClick`])])])}var Tt=W(bt,[[`render`,wt]]),Et=_({name:`TaskPreview`,components:{ApplicationIcon:k,ChannelIcon:F,DeleteIcon:L,ImageIcon:ee,InfoIcon:te,LightningIcon:ie,MagicIcon:R,TimeIcon:A,WarningIcon:ne,CopyToClipboard:we,ElAlert:C,ImageWrapper:je,ElButton:q,ElTooltip:S,ImagePreview:X,ApiCodeButton:ke,ReportButton:Te},props:{modelValue:{type:Object,required:!0}},computed:{isEditRequest(){let e=this.modelValue?.request;return this.modelValue?.type===`images_edits`||e?.action===`edit`||this.referenceImages.length>0},showTaskType(){return!!(this.modelValue?.request?.action||this.modelValue?.type||this.referenceImages.length>0)},taskTypeLabel(){return this.isEditRequest?this.$t(`openaiimage.name.edits`):this.$t(`openaiimage.name.generate`)},openaiimagePath(){return this.isEditRequest?`/openai/images/edits`:`/openai/images/generations`},openaiimageCodeBody(){let e=this.modelValue?.request;if(!e)return;let t={...e};if(delete t.action,delete t.callback_url,this.isEditRequest){delete t.image_urls,delete t.image;let e=this.referenceImages;e.length===1?t.image=e[0]:e.length>1&&(t.image=e)}else delete t.image_urls,delete t.image;return t},images(){let e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{let n=t;if(n?.image_url||n?.url){e.push(n);return}n?.b64_json&&e.push({...n,url:`data:image/png;base64,${n.b64_json}`})}),e},referenceImages(){let e=this.modelValue?.request;if(!e)return[];let t=Array.isArray(e.image_urls)?e.image_urls:[];if(t.length>0)return t.filter(e=>typeof e==`string`&&e.length>0);let n=e.image;return Array.isArray(n)?n.filter(e=>typeof e==`string`&&e.length>0):typeof n==`string`&&n.length>0?[n]:Array.isArray(e.images)?e.images.map(e=>{if(typeof e==`string`)return e;if(e&&typeof e==`object`)return e.image_url}).filter(e=>typeof e==`string`&&e.length>0):[]}},methods:{onEdit(e){if(!e)return;console.debug(`Edit image:`,e);let t={...this.$store.state.openaiimage?.config||{}};t.image_urls=[e],this.$store.commit(`openaiimage/setConfig`,t)},async onDelete(){let e=this.modelValue?.id;if(e){try{await G.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`openaiimage/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}}}}),Dt={class:`preview`},Ot={class:`left`},kt={class:`main`},At={class:`bot`},jt={class:`datetime`},Mt=[`aria-label`],Nt={class:`info`},Pt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},Ft={key:1,class:`prompt mt-2`},It={key:0},Lt={key:0,class:n({content:!0,failed:!0})},Rt={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},zt={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},Bt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ht={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ut={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Wt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Gt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Kt={key:1,class:n({content:!0})},qt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Jt={key:2,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:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Qt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},$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={class:`text-[var(--el-text-color-regular)] text-xs mb-2`};function an(n,u,d,g,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`image-preview`),C=l(`image-wrapper`),w=l(`el-button`),T=l(`api-code-button`),E=l(`report-button`),D=l(`application-icon`),O=l(`image-icon`),k=l(`lightning-icon`),A=l(`magic-icon`),j=l(`copy-to-clipboard`),M=l(`time-icon`),N=l(`channel-icon`),P=l(`el-alert`),F=l(`warning-icon`),I=l(`info-icon`);return h(),s(`div`,Dt,[e(`div`,Ot,[a(y,{capability:`openaiimage`,part:`avatar`,class:`avatar`})]),e(`div`,kt,[e(`div`,At,[a(y,{capability:`openaiimage`,part:`name`}),e(`span`,jt,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(x,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(h(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:u[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Mt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Nt,[n.referenceImages.length>0?(h(),s(`div`,Pt,[(h(!0),s(c,null,m(n.referenceImages,(e,t)=>(h(),f(S,{key:t,url:e,name:`image-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):o(``,!0),n.modelValue?.request?.prompt?(h(),s(`p`,Ft,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,It,` - (`+i(n.$t(`openaiimage.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?.success===!0?(h(),s(`div`,Lt,[e(`div`,Rt,[(h(!0),s(c,null,m(n.images,(e,t)=>(h(),f(C,{key:t,src:e?.image_url||e?.url||``,"raw-src":e?.image_url||e?.url||``},null,8,[`src`,`raw-src`]))),128))]),e(`div`,zt,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`common.button.edit`),placement:`top-start`},{default:p(()=>[a(w,{type:`info`,size:`small`,class:`btn-action`,onClick:u[1]||=t(e=>n.onEdit(n.images?.[0]?.image_url||n.images?.[0]?.url),[`stop`])},{default:p(()=>[r(i(n.$t(`common.button.edit`)),1)]),_:1})]),_:1},8,[`content`]),a(T,{path:n.openaiimagePath,body:n.openaiimageCodeBody},null,8,[`path`,`body`]),a(E,{service:`openaiimage`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])]),a(P,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,Bt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,Vt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),n.showTaskType?(h(),s(`p`,Ht,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.task`))+`: `+i(n.taskTypeLabel),1)])):o(``,!0),e(`p`,Ut,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(j,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Wt,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(h(),s(`p`,Gt,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(j,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.modelValue?.response?.success===!1?(h(),s(`div`,Kt,[a(P,{closable:!1,class:`failure`},{template:p(()=>[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.failure`)),1)]),default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,qt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,$,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),n.showTaskType?(h(),s(`p`,Jt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.task`))+`: `+i(n.taskTypeLabel),1)])):o(``,!0),e(`p`,Yt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(j,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,Xt,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(j,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Zt,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(h(),s(`p`,Qt,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(j,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):o(``,!0)]),_:1})])):(h(),s(`div`,$t,[a(P,{closable:!1,class:`info`},{template:p(()=>[n.modelValue?.response?(h(),f(I,{key:1,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(h(),f(M,{key:0,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),r(` `+i(n.$t(n.modelValue?.response?`openaiimage.name.status`:`openaiimage.status.pending`)),1)]),default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,en,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,tn,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),n.showTaskType?(h(),s(`p`,nn,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.task`))+`: `+i(n.taskTypeLabel),1)])):o(``,!0),e(`p`,rn,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(j,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var on=_({name:`RecentPanel`,components:{TaskPreview:W(Et,[[`render`,an],[`__scopeId`,`data-v-6519c932`]]),BotPlaceholder:Ae,NoTasks:P,ScrollList:N},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.openaiimage?.tasks,items:this.$store.state.openaiimage?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),sn={key:0},cn={key:2,class:`w-full h-full flex items-center justify-center`};function ln(e,t,n,r,i,u){let d=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return h(),s(c,null,[e.tasks?.items===void 0?(h(),s(`div`,sn,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(h(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(h(!0),s(c,null,m(e.tasks?.items,e=>(h(),f(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(h(),s(`div`,cn,[a(v)])):o(``,!0)],64)}var un=_({name:`OpenAIImageIndex`,components:{ConfigPanel:Tt,Layout:Le,RecentPanel:W(on,[[`render`,ln]])},mixins:[Ce],inject:[`initialized`],data(){return{task:void 0,job:0,loading:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.openaiimage?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.openaiimage?.status?.getTasks===w.Request},credential(){return this.$store.state.openaiimage?.credential},config(){return this.$store.state.openaiimage?.config},application(){return this.$store.state.openaiimage?.application},tasks(){return this.$store.state.openaiimage?.tasks},walletMode(){return Y()&&J(`openaiimage`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){t===void 0||e===t||(this.$store.commit(`openaiimage/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.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await I({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`openaiimage/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`openaiimage/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug(`loading`);return}let{limit:t=20,createdAtMin:n,createdAtMax:r}=e||{};await this.$store.dispatch(`openaiimage/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})},async onGenerate(){if(!pe(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;let e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;if(!this.hasText(e.prompt)){T.error(this.$t(`openaiimage.message.promptRequired`));return}e.prompt=e.prompt.trim(),!t&&`image_urls`in e&&delete e.image_urls,e.size||delete e.size;let n=Z(e),r={action:`edit`,model:e?.model,prompt:e?.prompt,size:e?.size,image_urls:e?.image_urls||[],async:!0},i;if(this.walletMode){if(t){T.info(this.$t(`common.x402Scenario.gptEditCreditsOnly`));return}let e=this.getWalletContext();if(!e){T.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}i=K.generate(n,{mode:`x402`,x402:{wallet:e,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!ye())return;let e=this.credential?.token;if(!e){console.error(`no token specified`);return}i=t?K.edit(r,{token:e}):K.generate(n,{token:e})}T.info(this.$t(`openaiimage.message.startingTask`)),xe(`openaiimage`,i).then(e=>{let t=e?.data?.task_id;console.debug(`task accepted`,t),this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),T.success(this.$t(`openaiimage.message.startTaskSuccess`))}).catch(e=>{if(e instanceof me)return;let t=e?.response?.data;t?.error?.code===`used_up`?T.error(this.$t(`openaiimage.message.usedUp`)):this.walletMode?T.error(`${this.$t(`common.x402Scenario.paymentFailed`)} ${e?.message||``}`.trim()):T.error(this.$t(`openaiimage.message.startTaskFailed`)+(t?.error?.message||``))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){let e=this.$wallet,t=e?.publicKey?.value,n=e?.wallet?.value?.adapter;if(!(!t||!n?.signTransaction))return{publicKey:t,signTransaction:n.signTransaction.bind(n)}},async confirmWalletPayment(e){return G.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?.()},hasText(e){return typeof e==`string`&&e.trim().length>0}}});function dn(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return h(),f(u,null,{config:p(()=>[a(s,{"identity-token":e.credential?.token,onGenerate:e.onGenerate},null,8,[`identity-token`,`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loading,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var fn=W(un,[[`render`,dn]]);export{fn as default};
|