@acedatacloud/nexior 3.330.8 → 3.330.10
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-6yNv6GzT.js → ApiCodeButton-ClEhPRDG.js} +1 -1
- package/dist/assets/{Artifacts-Daj2aW6R.js → Artifacts-qlGtcgpR.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-D6NWrkca.js → AskUserQuestionCard-DnMj4X2H.js} +1 -1
- package/dist/assets/{AudioPreview-BwaUx8CQ.js → AudioPreview-BAzNH7Gh.js} +1 -1
- package/dist/assets/{Auth-t24ECk8p.js → Auth-Dc9GFTwF.js} +1 -1
- package/dist/assets/{Bare-B0r772aH.js → Bare-DLLJj0lc.js} +1 -1
- package/dist/assets/{BotPlaceholder-CsV6S3zO.js → BotPlaceholder-Bmy_QsUF.js} +1 -1
- package/dist/assets/{BottomFooter-0XO3UTHH.js → BottomFooter-Bvi5fQAg.js} +1 -1
- package/dist/assets/{Callback-DWFJ3FIS.js → Callback-CvZ4iGkz.js} +1 -1
- package/dist/assets/{CodeSnippet-DReHcwSF.js → CodeSnippet-BNqb9Nmd.js} +1 -1
- package/dist/assets/{Console-ICgTlpIn.js → Console-CLaKrOaI.js} +1 -1
- package/dist/assets/{Consumption-NaAGG5D5.js → Consumption-B57zHHk_.js} +1 -1
- package/dist/assets/{Conversation-CvkouZ3M.js → Conversation-BjRYNt8X.js} +1 -1
- package/dist/assets/{Conversation-Domb3egF.js → Conversation-DKWDYud1.js} +1 -1
- package/dist/assets/{CopyToClipboard-DFuxR3Az.js → CopyToClipboard-98XCpXWu.js} +1 -1
- package/dist/assets/{Detail-DV-JSHYE.js → Detail-vr0kvL9V.js} +2 -2
- package/dist/assets/{Extra-BvK6x-Q3.js → Extra-CIi_afUY.js} +1 -1
- package/dist/assets/{FilePreview-lDiIA4f3.js → FilePreview-DcPPQkpn.js} +1 -1
- package/dist/assets/{Hailuo-ByNlGaAB.js → Hailuo-mEut9QY_.js} +1 -1
- package/dist/assets/{History-CZNMTW2o.js → History-BguidPnB.js} +1 -1
- package/dist/assets/{ImagePreview-BbEGVj7c.js → ImagePreview-MJPeBQLg.js} +1 -1
- package/dist/assets/{ImageWrapper-CZJchffe.js → ImageWrapper-CsmugLzK.js} +1 -1
- package/dist/assets/{Index-BinizDEw.js → Index-6_42E-Cg.js} +1 -1
- package/dist/assets/{Index-C_PsMoRe2.js → Index-B31fhZnB2.js} +1 -1
- package/dist/assets/Index-B5J-60_R.js +1 -0
- package/dist/assets/{Index-BSM8qmE12.js → Index-B8xJ5kV12.js} +1 -1
- package/dist/assets/{Index-D9LzrEzG.js → Index-BAvI1tMj.js} +1 -1
- package/dist/assets/Index-BYCvCMz9.js +1 -0
- package/dist/assets/{Index-B41YMrlv2.js → Index-Bb1zbri92.js} +1 -1
- package/dist/assets/{Index-CORewMsb.js → Index-Bhw2IML8.js} +1 -1
- package/dist/assets/{Index-DbXHxGAA.js → Index-C-i4lA70.js} +1 -1
- package/dist/assets/{Index-p850NYjM.js → Index-C0iSlQKr.js} +1 -1
- package/dist/assets/{Index-D92ZwitE.js → Index-C7FvQY5y.js} +1 -1
- package/dist/assets/{Index-bxOcRAXb.js → Index-CLPC62ZC.js} +1 -1
- package/dist/assets/{Index-D_tsMe7s.js → Index-CRYNONBM.js} +1 -1
- package/dist/assets/{Index-Dq7ZZB8Q2.js → Index-CWizWHTW2.js} +1 -1
- package/dist/assets/{Index-KJoVmqHA.js → Index-CcsnONmv.js} +1 -1
- package/dist/assets/{Index-DMezegh3.js → Index-CwTh8C0s.js} +1 -1
- package/dist/assets/{Index-Bg6RXp-22.js → Index-DCNv5D8Z2.js} +1 -1
- package/dist/assets/{Index-CCExcEGK.js → Index-DGKk7DVX.js} +1 -1
- package/dist/assets/{Index-lYSHkRMS.css → Index-DHppAm0S.css} +1 -1
- package/dist/assets/{Index-CiKtvMba.js → Index-DQOStPmr.js} +1 -1
- package/dist/assets/{Index-BpoOIp5T2.js → Index-DTZZGvH-2.js} +1 -1
- package/dist/assets/{Index-2kWFtnq2.js → Index-DVuUDdw5.js} +1 -1
- package/dist/assets/Index-DfuWgoNA.css +1 -0
- package/dist/assets/{Index-BIi2sZ9J.js → Index-Do7sr9_C.js} +1 -1
- package/dist/assets/Index-DoRHe3xu.js +1 -0
- package/dist/assets/{Index-rHufd-Kr.js → Index-Dpa_ySt0.js} +1 -1
- package/dist/assets/{Index-BwNpMoFU.js → Index-Dr9CzNLY.js} +1 -1
- package/dist/assets/{Index-DeREZXl82.js → Index-DxB-8btM2.js} +1 -1
- package/dist/assets/{Index-D1HZkrcj.js → Index-KD4GRvf3.js} +1 -1
- package/dist/assets/Index-Mc_dRQ7u.js +1 -0
- package/dist/assets/{Index-BZ0J95Zi.js → Index-Vz-l8KzV.js} +1 -1
- package/dist/assets/Index-h-DHVxtp.js +1 -0
- package/dist/assets/{Invitees-BeYhOGAr.js → Invitees-S4oL6Ytk.js} +1 -1
- package/dist/assets/{List-dILUs9ri.js → List-Cv2EqBGv.js} +1 -1
- package/dist/assets/{List-Br-c5Y7K.js → List-D-rwmqTB.js} +1 -1
- package/dist/assets/{List-sZ4o16vO.js → List-DID2BzP0.js} +1 -1
- package/dist/assets/{LocalTools-Du10Q-KG.js → LocalTools-D90yhj4Q.js} +1 -1
- package/dist/assets/{LocalTools-CGlok3bS.js → LocalTools-DT1Bf6OK.js} +1 -1
- package/dist/assets/{Main-CVHgo6nd.js → Main-Cz7EMmjU.js} +1 -1
- package/dist/assets/{Message-CEGebS3A.js → Message-Bym_K0wu.js} +1 -1
- package/dist/assets/Model-CJHV6Hpg.js +1 -0
- package/dist/assets/{Model-ByrKNtxt.css → Model-DA5Wo_wI.css} +1 -1
- package/dist/assets/{Navigator-Dys8G60u.js → Navigator-E1FomAoZ.js} +3 -3
- package/dist/assets/{NotFound-B8xC3Xkg.js → NotFound-YEYn6GF0.js} +1 -1
- package/dist/assets/{Pay-B9D4VVUj.js → Pay-DJaIUPNx.js} +1 -1
- package/dist/assets/{Player-B1-y36IF.js → Player-Cq0BiCce.js} +1 -1
- package/dist/assets/{Poivelle-Ch9SG0cc.js → Poivelle-5vhYszpd.js} +1 -1
- package/dist/assets/{PromptTextarea-BN5xMkDn.js → PromptTextarea-CBVYVrZZ.js} +1 -1
- package/dist/assets/{RealtimeCall-HmxNqTRI.js → RealtimeCall-FNDM5x6c.js} +1 -1
- package/dist/assets/{ScheduledTasks-CXkBXL7j.js → ScheduledTasks-C_sIAw71.js} +1 -1
- package/dist/assets/{Status-BkQ5kopN.js → Status-BCoGSsVk.js} +1 -1
- package/dist/assets/{Subscribe-CQAktB9Y.js → Subscribe-DxkaSYFt.js} +1 -1
- package/dist/assets/{TabSwitcher-DDvB84Ic.js → TabSwitcher-C6hoKxqT.js} +1 -1
- package/dist/assets/{Tts-BXzjQr0k.js → Tts-DTFy4_cx.js} +1 -1
- package/dist/assets/{VideoPlayer-D0YQE8B0.js → VideoPlayer-CLGMPS5K.js} +1 -1
- package/dist/assets/{alert-BDplJjFH.js → alert-B8dZNfxD.js} +1 -1
- package/dist/assets/arrow-down-Chpnqljt.js +1 -0
- package/dist/assets/{arrow-down-wide-narrow-DXNmiMs8.js → arrow-down-wide-narrow-BonlBNNN.js} +1 -1
- package/dist/assets/arrow-left-CAgEtUEh.js +1 -0
- package/dist/assets/arrow-right-pCh8np0E.js +1 -0
- package/dist/assets/arrow-up-1uBNjlRG.js +1 -0
- package/dist/assets/{avatar-BSLfJakz.js → avatar-BOgcZRE9.js} +1 -1
- package/dist/assets/{basic-BDepb3x3.js → basic-WyiVyS4J.js} +1 -1
- package/dist/assets/{box-DZV2E00R.js → box-Dxe2PmZz.js} +1 -1
- package/dist/assets/{boxes-Ci-ujGBZ.js → boxes-BLtLuN6q.js} +1 -1
- package/dist/assets/{brain-CSEkXyaK.js → brain-C6QZBaGE.js} +1 -1
- package/dist/assets/{chart-no-axes-combined-n7ymo6Xg.js → chart-no-axes-combined-DWVMCew1.js} +1 -1
- package/dist/assets/{chat-B80d2mNI.js → chat-Cw6l34Mz.js} +1 -1
- package/dist/assets/check-D-ldSIpj.js +1 -0
- package/dist/assets/chevron-down-CFNvOUcs.js +1 -0
- package/dist/assets/chevron-right-OB3LWSyy.js +1 -0
- package/dist/assets/circle-check-CBf0RwJu.js +1 -0
- package/dist/assets/clock-BcdcK_5I.js +1 -0
- package/dist/assets/{codingBridge-C6l3ZwHz.js → codingBridge-Cyr20CGV.js} +1 -1
- package/dist/assets/{codingBridgeNotify-DD5wHtJU.js → codingBridgeNotify-CTcCY5kl.js} +2 -2
- package/dist/assets/{coins-Bt77jBiZ.js → coins-_RWAQ-_d.js} +1 -1
- package/dist/assets/{collapse-Cdk31esV.js → collapse-CnVDrgrK.js} +1 -1
- package/dist/assets/{copy-CU5KsMub.js → copy-Dt3eHIoJ.js} +1 -1
- package/dist/assets/{createTaskActions-CQkmjGbZ.js → createTaskActions-CnM4gnz1.js} +1 -1
- package/dist/assets/{digitalhuman-BXlkAcCh.js → digitalhuman-Bb13pXex.js} +1 -1
- package/dist/assets/{dollar-sign-BkNO69TI.js → dollar-sign-BfZj2K8W.js} +1 -1
- package/dist/assets/{download-CZBrzAe9.js → download-BpjKdgMZ.js} +1 -1
- package/dist/assets/{drawer-oMnCzPYd.js → drawer-q0LTUsZM.js} +1 -1
- package/dist/assets/{dropdown-Cx68tM9d.js → dropdown-RYEWafpi.js} +1 -1
- package/dist/assets/{dropdown-CRdbOUFC.js → dropdown-fZXlvmyn.js} +1 -1
- package/dist/assets/{ellipsis-VteHkYV-.js → ellipsis-CcaUKWmq.js} +1 -1
- package/dist/assets/{esm-BduzBH2m.js → esm-BbSiyN3-.js} +3 -3
- package/dist/assets/{esm-CH0bYXCY.js → esm-Bg3NLJhf.js} +1 -1
- package/dist/assets/{esm-BhkrvIUo.js → esm-BsPJmrez.js} +1 -1
- package/dist/assets/{esm-CvujFTUm.js → esm-CRtO2bs-.js} +2 -2
- package/dist/assets/{esm-CQ2fMwjC.js → esm-CmTOQzDE.js} +2 -2
- package/dist/assets/esm-DBXBVfWH.js +1 -0
- package/dist/assets/{esm-Dk72GVDQ.js → esm-DJO2WwmI.js} +1 -1
- package/dist/assets/{external-link-DA8scqfR.js → external-link-BPpLa81V.js} +1 -1
- package/dist/assets/{eye-BfWxK8aV.js → eye-Cuo_kDTB.js} +1 -1
- package/dist/assets/{file-output-PWZ63KaJ.js → file-output-DUxBnIvG.js} +1 -1
- package/dist/assets/{file-text-BiCIu3qW.js → file-text-DJG_xSmc.js} +1 -1
- package/dist/assets/{fish-CyjGhFG8.js → fish-JO3KN58I.js} +1 -1
- package/dist/assets/{flux-ChDNRKsU.js → flux-D2_c-qsH.js} +1 -1
- package/dist/assets/{folder-BSdP--wE.js → folder-BtTmXuFQ.js} +1 -1
- package/dist/assets/gauge-CeePGOdk.js +1 -0
- package/dist/assets/{globe-vAb4i-UX.js → globe-BEvzHVHm.js} +1 -1
- package/dist/assets/{grokvideo-D9_K18Z6.js → grokvideo-CIWed6kv.js} +1 -1
- package/dist/assets/{hailuo-DoG0Xfy6.js → hailuo-H6rWiFLY.js} +1 -1
- package/dist/assets/{headphones-DDtvT1Yz.js → headphones-P-qL1M88.js} +1 -1
- package/dist/assets/{history-BJworAx_.js → history-BZjRJVxE.js} +1 -1
- package/dist/assets/{image-igPYo_Pj.js → image-_po7eo8A.js} +1 -1
- package/dist/assets/{index-DjH2rtqz.js → index-B-TI1WPY.js} +3 -3
- package/dist/assets/{index-C0-sWesJ.css → index-Cb8GIs2T.css} +1 -1
- package/dist/assets/{index.browser.esm-CPzH_DYo.js → index.browser.esm-B_HwMvYA.js} +1 -1
- package/dist/assets/{index.es-x8_I2SBU.js → index.es-DRuXH0gh.js} +1 -1
- package/dist/assets/{info-BvANsMZ5.js → info-Cp6nBEm8.js} +1 -1
- package/dist/assets/{input-number-i5U8XdBq.js → input-number-CM6-LfFO.js} +1 -1
- package/dist/assets/{key-round-BhtGMhGK.js → key-round-BZi6s4rh.js} +1 -1
- package/dist/assets/{kling-110lI2T2.js → kling-pUyEhicB.js} +1 -1
- package/dist/assets/{languages-ChstT9C4.js → languages-DYgTECTp.js} +1 -1
- package/dist/assets/{laptop-BmLkCJWZ.js → laptop-iuVbdzCt.js} +1 -1
- package/dist/assets/{lightbulb-DhMN6I26.js → lightbulb-BA50tD5E.js} +1 -1
- package/dist/assets/{link-D5hSNwle.js → link-t-5BBcH_.js} +1 -1
- package/dist/assets/loader-circle-BlkcJy79.js +1 -0
- package/dist/assets/{luma-4spWj8kt.js → luma-BVvx65IB.js} +1 -1
- package/dist/assets/{maestro-D3hecJHK.js → maestro-DLHF-J3G.js} +1 -1
- package/dist/assets/{mail-CJWp-hxo.js → mail-Cc1Pbv3t.js} +1 -1
- package/dist/assets/{message-circle-yF7cDPPh.js → message-circle-CjGWHOhu.js} +1 -1
- package/dist/assets/{mic-DjAHk5K1.js → mic-BiqIKY1m.js} +1 -1
- package/dist/assets/{midjourney-BzentxgM.js → midjourney-DPcHU0l-.js} +1 -1
- package/dist/assets/{mobileLocalExec-DfzBb8QQ.js → mobileLocalExec-X_kH4uKm.js} +2 -2
- package/dist/assets/{mouse-pointer-2-D5k09eQB.js → mouse-pointer-2-C_OdVel6.js} +1 -1
- package/dist/assets/music-2-Dqz-Xs5O.js +1 -0
- package/dist/assets/{nanobanana-oEZ9jCdu.js → nanobanana-BWnsNHIb.js} +1 -1
- package/dist/assets/{omni-BRXZsrc1.js → omni-DHJKtfKo.js} +1 -1
- package/dist/assets/{openaiimage-DIi-WbEx.js → openaiimage-CAiKsQIa.js} +1 -1
- package/dist/assets/{pagination-CRTJLrs9.js → pagination-DiVQ3E5r.js} +1 -1
- package/dist/assets/{pagination-B3irjpSu.js → pagination-b510-ovW.js} +1 -1
- package/dist/assets/{palette-DXQDwyp1.js → palette-Bzlidup2.js} +1 -1
- package/dist/assets/{paperclip-Ds_pgdCl.js → paperclip-fKxlsv3p.js} +1 -1
- package/dist/assets/{pause-GVi14-ft.js → pause-BXVsbiX9.js} +1 -1
- package/dist/assets/{pencil-DBlQBmAn.js → pencil-BQUwvovp.js} +1 -1
- package/dist/assets/{pika-BvVnxn1P.js → pika-BGRdDyj8.js} +1 -1
- package/dist/assets/{pixverse-r5huU6Ul.js → pixverse-MsDKuMwR.js} +1 -1
- package/dist/assets/play-DyD6aXAF.js +1 -0
- package/dist/assets/plus-CX84Naiy.js +1 -0
- package/dist/assets/{poivelle-BK46KraW.js → poivelle-EDVvOte8.js} +1 -1
- package/dist/assets/{popover-Ca6MAZq8.js → popover-BQOJy93S.js} +1 -1
- package/dist/assets/{producer-E_eCaX8O.js → producer--VKnVRC_.js} +1 -1
- package/dist/assets/{qrart-D1rJnCCH.js → qrart-CelmI1Pi.js} +1 -1
- package/dist/assets/{realtime-Dd3584bn.js → realtime-BSJpxETz.js} +1 -1
- package/dist/assets/{refresh-cw-ByRXxRtZ.js → refresh-cw-D4GipOay.js} +1 -1
- package/dist/assets/rotate-ccw-BUF0F2lV.js +1 -0
- package/dist/assets/rotate-cw-BPum9gR3.js +1 -0
- package/dist/assets/{row-B4KJ5qAM.js → row-DjZyv4fI.js} +1 -1
- package/dist/assets/search-BLxBJYy2.js +1 -0
- package/dist/assets/{seedance-B1OWhrfp.js → seedance-DGXwqrDd.js} +1 -1
- package/dist/assets/{seedream-lJ9lgZpf.js → seedream-CR0D4Y5m.js} +1 -1
- package/dist/assets/{select-BStvECg1.js → select-CEdgwxFQ.js} +1 -1
- package/dist/assets/{serp-DThQatO3.js → serp-BPNEOe6s.js} +1 -1
- package/dist/assets/{shield-WWFXGsj1.js → shield-B_dDquE5.js} +1 -1
- package/dist/assets/{shuffle-BqYVx2-u.js → shuffle-gToSrYk5.js} +1 -1
- package/dist/assets/{slider-CuTlFPPR.js → slider-u1mLbxDz.js} +1 -1
- package/dist/assets/{sliders-horizontal-BtXQ68tz.js → sliders-horizontal-Csgm0Vso.js} +1 -1
- package/dist/assets/{solana-wallets-Bw6E39Pm.js → solana-wallets-BPTpl59o.js} +2 -2
- package/dist/assets/{solana-wallets-vue-RNIy_HkB.js → solana-wallets-vue-BILt_Jz6.js} +1 -1
- package/dist/assets/{sora-BZIm7ao3.js → sora-C0de8Nj1.js} +1 -1
- package/dist/assets/{sparkles-iNFqRK4U.js → sparkles-C99ewjws.js} +1 -1
- package/dist/assets/square-1Z11Ogz5.js +1 -0
- package/dist/assets/{suno-D2u_4X97.js → suno-B0kmwKwz.js} +1 -1
- package/dist/assets/{switch-D5lFTJY5.js → switch-wUI1U14Q.js} +1 -1
- package/dist/assets/{table-CaTq0fbd.js → table-B7kafo6x.js} +1 -1
- package/dist/assets/{tabs-LWySwjmg.js → tabs-DZhaejGl.js} +1 -1
- package/dist/assets/{tag-pQCbKxcO.js → tag-CAkBwmo9.js} +1 -1
- package/dist/assets/{taskDrawerMixin-Cl7YxaFY.js → taskDrawerMixin-CR6eNqfy.js} +1 -1
- package/dist/assets/terminal-Bo-GJsYK.js +1 -0
- package/dist/assets/{time-picker-CyN6mYku.js → time-picker-DbFM9U-J.js} +1 -1
- package/dist/assets/{tooltip-D4EgKm6G.js → tooltip-B6dANNTl.js} +1 -1
- package/dist/assets/{trash-2-CiaDFmZj.js → trash-2-CsQogscC.js} +1 -1
- package/dist/assets/{triangle-alert-C3z70mZA.js → triangle-alert-DLNXmngq.js} +1 -1
- package/dist/assets/{upload-DGfOhnPA.js → upload-Bl-8fnQF.js} +1 -1
- package/dist/assets/{upload-ByNQwXJh.js → upload-xQzqDpXE.js} +1 -1
- package/dist/assets/user-Dm_VTD00.js +1 -0
- package/dist/assets/{veo-WhmdJ9EC.js → veo-Kz8Fqyuh.js} +1 -1
- package/dist/assets/{video-Dm20ncFf.js → video-D5a-z3UK.js} +1 -1
- package/dist/assets/{volume-2-xm5Y_nf-.js → volume-2-78qHTdEq.js} +1 -1
- package/dist/assets/{wallet-B_F55Sui.js → wallet-JqLq1iYZ.js} +1 -1
- package/dist/assets/{wan-BoOyw4pn.js → wan-Dv0fqOuN.js} +1 -1
- package/dist/assets/{wand-sparkles-PLgBR18n.js → wand-sparkles-Ds2fUnjm.js} +1 -1
- package/dist/assets/{web-C2aaNWU_.js → web-AMqGIuGN.js} +1 -1
- package/dist/assets/{web-C3PH0T6Z.js → web-Avt8_WwI.js} +1 -1
- package/dist/assets/{web-D2IogFzY.js → web-BwZJ7g97.js} +1 -1
- package/dist/assets/{web-C8GGdKUI.js → web-DBNvfu4k.js} +1 -1
- package/dist/assets/{web-CJf39ZmQ.js → web-YxulttkG.js} +1 -1
- package/dist/assets/{webextrator-Bxv6PWrj.js → webextrator-0MgG-2uE.js} +1 -1
- package/dist/assets/{zap-BEYIN2Rm.js → zap-CF1mYVkx.js} +1 -1
- package/dist/index.html +2 -2
- package/package.json +1 -1
- package/dist/assets/Index-CKdU3-kl.js +0 -1
- package/dist/assets/Index-CdNwVjUJ.js +0 -1
- package/dist/assets/Index-CmTCSoOY.js +0 -1
- package/dist/assets/Index-DQYsJlw6.css +0 -1
- package/dist/assets/Index-DQm-e4Db.js +0 -1
- package/dist/assets/Index-wDZvW7UP.js +0 -1
- package/dist/assets/Model-CQsHyzsI.js +0 -1
- package/dist/assets/arrow-down-Hgc90ZTc.js +0 -1
- package/dist/assets/arrow-left-DB6qWRxA.js +0 -1
- package/dist/assets/arrow-right-RL8gvSEN.js +0 -1
- package/dist/assets/arrow-up-D3niKZHG.js +0 -1
- package/dist/assets/check-sBDe6s27.js +0 -1
- package/dist/assets/chevron-down-DiCB7_cE.js +0 -1
- package/dist/assets/chevron-right-Qv5p8ju5.js +0 -1
- package/dist/assets/circle-check-GlUp7XCt.js +0 -1
- package/dist/assets/clock-Wfu3yNCH.js +0 -1
- package/dist/assets/esm-BkoueZY1.js +0 -1
- package/dist/assets/gauge-CbjIJ_jY.js +0 -1
- package/dist/assets/loader-circle-By_qWfck.js +0 -1
- package/dist/assets/music-2-DwDkh_mX.js +0 -1
- package/dist/assets/play-loqVd6xQ.js +0 -1
- package/dist/assets/plus-5mgK_nZC.js +0 -1
- package/dist/assets/rotate-ccw-B1jJmco8.js +0 -1
- package/dist/assets/rotate-cw-DtZmpRHd.js +0 -1
- package/dist/assets/search-DilmuF2H.js +0 -1
- package/dist/assets/square-CMRoVOCf.js +0 -1
- package/dist/assets/terminal-D3j2ijKT.js +0 -1
- package/dist/assets/user-Bkb9jny8.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,Mt as s,N as c,Q as l,S as u,St as d,T as f,Vt as p,Wt as m,b as h,ft as g,ht as _,it as v,j as y,k as b,mt as x,qt as S,rt as C,st as w,tt as T,wt as E,z as D}from"./vendor-chart-Dw-P17PN.js";import{a as O,c as ee,t as k}from"./install-Cn-SLM3u.js";import{i as A,n as te,r as j,s as ne}from"./runtime-BTM7t9of.js";import{a as re,c as M,dt as N,ht as ie,i as P,it as F,n as ae,r as oe,yt as se}from"./use-deprecated-r4dlLNqm.js";import{r as I,t as ce}from"./select-BStvECg1.js";import{t as L}from"./use-aria-9DurtVZO.js";import{n as R,t as le}from"./form-BNJ9LdPs.js";import{r as ue,t as z}from"./event-BGnHezxC.js";import{t as de}from"./input-number-i5U8XdBq.js";import{t as B}from"./arrow-left-DB6qWRxA.js";import{t as V}from"./arrow-up-D3niKZHG.js";import{t as H}from"./box-DZV2E00R.js";import{t as U}from"./chevron-down-DiCB7_cE.js";import{t as W}from"./chevron-right-Qv5p8ju5.js";import{t as fe}from"./copy-CU5KsMub.js";import{t as G}from"./download-CZBrzAe9.js";import{t as K}from"./file-text-BiCIu3qW.js";import{t as pe}from"./history-BJworAx_.js";import{t as me}from"./image-igPYo_Pj.js";import{t as he}from"./loader-circle-By_qWfck.js";import{t as ge}from"./mouse-pointer-2-D5k09eQB.js";import{t as _e}from"./music-2-DwDkh_mX.js";import{t as ve}from"./play-loqVd6xQ.js";import{t as ye}from"./plus-5mgK_nZC.js";import{t as be}from"./search-DilmuF2H.js";import{t as xe}from"./sparkles-iNFqRK4U.js";import{t as Se}from"./trash-2-CiaDFmZj.js";import{t as Ce}from"./triangle-alert-C3z70mZA.js";import{t as we}from"./upload-DGfOhnPA.js";import{t as Te}from"./video-Dm20ncFf.js";import{i as q}from"./i18n-m-rMtkos.js";import{Ci as Ee,E as J,Mi as Y,Vi as X,_i as De,gi as Z,ni as Oe,ri as ke,vi as Ae}from"./index-DjH2rtqz.js";var je={label:`label`,value:`value`,disabled:`disabled`},Me=te({direction:{type:j(String),default:`horizontal`},options:{type:j(Array),default:()=>[]},modelValue:{type:[String,Number,Boolean],default:void 0},props:{type:j(Object),default:()=>je},block:Boolean,size:F,disabled:Boolean,validateEvent:{type:Boolean,default:!0},id:String,name:String,...L([`ariaLabel`])}),Ne={[ue]:e=>m(e)||ne(e)||A(e),[z]:e=>m(e)||ne(e)||A(e)},Pe=k(O(D({...D({name:`ElSegmented`}),props:Me,emits:Ne,setup(t,{emit:a}){let l=t,u=ee(`segmented`),m=M(),h=oe(),_=ae(),{formItem:y}=P(),{inputId:x,isLabeledByFormItem:w}=re(l,{formItemContext:y}),D=E(null),O=ie(),k=d({isInit:!1,width:0,height:0,translateX:0,translateY:0,focusVisible:!1}),A=e=>{let t=j(e);a(ue,t),a(z,t)},te=b(()=>({...je,...l.props})),j=e=>p(e)?e[te.value.value]:e,ne=e=>p(e)?e[te.value.label]:e,F=e=>!!(_.value||p(e)&&e[te.value.disabled]),I=e=>l.modelValue===j(e),ce=e=>l.options.find(t=>j(t)===e),L=e=>[u.e(`item`),u.is(`selected`,I(e)),u.is(`disabled`,F(e))],R=()=>{if(!D.value)return;let e=D.value.querySelector(`.is-selected`),t=D.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,l.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{}},le=b(()=>[u.b(),u.m(h.value),u.is(`block`,l.block)]),de=b(()=>({width:l.direction===`vertical`?`100%`:`${k.width}px`,height:l.direction===`vertical`?`${k.height}px`:`100%`,transform:l.direction===`vertical`?`translateY(${k.translateY}px)`:`translateX(${k.translateX}px)`,display:k.isInit?`block`:`none`})),B=b(()=>[u.e(`item-selected`),u.is(`disabled`,F(ce(l.modelValue))),u.is(`focus-visible`,k.focusVisible)]),V=b(()=>l.name||m.value);return se(D,R),g(O,R),g(()=>l.modelValue,()=>{var e;R(),l.validateEvent&&((e=y?.validate)==null||e.call(y,`change`).catch(e=>N(e)))},{flush:`post`}),(t,a)=>t.options.length?(T(),c(`div`,{key:0,id:s(x),ref_key:`segmentedRef`,ref:D,class:n(s(le)),role:`radiogroup`,"aria-label":s(w)?void 0:t.ariaLabel||`segmented`,"aria-labelledby":s(w)?s(y).labelId:void 0},[e(`div`,{class:n([s(u).e(`group`),s(u).m(l.direction)])},[e(`div`,{style:S(s(de)),class:n(s(B))},null,6),(T(!0),c(f,null,C(t.options,(a,o)=>(T(),c(`label`,{key:o,class:n(L(a))},[e(`input`,{class:n(s(u).e(`item-input`)),type:`radio`,name:s(V),disabled:F(a),checked:I(a),onChange:e=>A(a)},null,42,[`name`,`disabled`,`checked`,`onChange`]),e(`div`,{class:n(s(u).e(`item-label`))},[v(t.$slots,`default`,{item:a},()=>[r(i(ne(a)),1)])],2)],2))),128))],2)],10,[`id`,`aria-label`,`aria-labelledby`])):o(`v-if`,!0)}}),[[`__file`,`segmented.vue`]])),Fe=Z(`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`}]]),Ie=Z(`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`}]]),Le=Z(`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=Z(`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`}]]),Re=Z(`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`}]]),ze=Z(`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`}]]),Be=Z(`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`}]]),Ve=Z(`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`}]]),He=Z(`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`}]]),Ue=Z(`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`}]]),We={class:`discovery-home`},$={class:`discovery-header`},Ge={class:`brand`},Ke={class:`project-links`},qe=[`title`,`aria-label`,`onClick`],Je={key:0,class:`discovery-state`,role:`status`},Ye={class:`creator`,"aria-labelledby":`poivelle-create-title`},Xe={class:`creator-kicker`},Ze={id:`poivelle-create-title`},Qe=[`aria-label`],$e=[`disabled`,`onClick`],et=[`placeholder`,`disabled`],tt={class:`composer-footer`},nt=[`disabled`,`title`],rt={class:`prompt-starters`},it=[`disabled`,`onClick`],at={class:`works`,"aria-labelledby":`poivelle-works-title`},ot={class:`works-heading`},st={id:`poivelle-works-title`},ct={class:`search`},lt=[`placeholder`,`aria-label`],ut={class:`category-tabs`},dt=[`onClick`],ft={class:`work-grid`},pt={class:`cover`},mt=[`src`,`alt`,`onError`],ht={class:`work-copy`},gt={class:`work-meta`},_t=[`disabled`,`onClick`],vt=J(D({__name:`DiscoveryHome`,emits:[`open-studio`],setup(u,{emit:d}){let p=d,m=ke(),g=b(()=>m.state.poivelle),v=b(()=>g.value?.projects??[]),x=b(()=>g.value?.discoveryWorks??[]),S=E(``),D=E(``),O=E(!1),ee=E(new Set),k=E(`official:pulsecam`),A=E(`all`),te=[{workId:`official:pulsecam`,label:`poivelle.discovery.commercial`,icon:Q},{workId:`official:moonlit-signal`,label:`poivelle.discovery.musicVideo`,icon:_e},{workId:`official:northstar-origin`,label:`poivelle.discovery.documentary`,icon:Le}],j=[`poivelle.discovery.starterProduct`,`poivelle.discovery.starterMusic`,`poivelle.discovery.starterDocumentary`],ne=[{value:`all`,label:`poivelle.discovery.all`},{value:`commercial`,label:`poivelle.discovery.commercial`},{value:`music_video`,label:`poivelle.discovery.musicVideo`},{value:`documentary`,label:`poivelle.discovery.documentary`},{value:`community`,label:`poivelle.discovery.community`}],re=b(()=>{let e=D.value.trim().toLowerCase();return x.value.filter(t=>(A.value===`all`||t.category===A.value)&&(!e||`${t.title} ${t.description} ${t.creator_name} ${(t.tags??[]).join(` `)}`.toLowerCase().includes(e)))}),M=b(()=>g.value?.status?.bootstrap===Oe.Request),N=b(()=>g.value?.error),ie=b(()=>x.value.find(e=>e.id===k.value)??x.value[0]),P=()=>m.dispatch(`poivelle/bootstrap`,{loadProject:!1}),F=e=>{ee.value=new Set([...ee.value,e])},ae=async e=>{await m.dispatch(`poivelle/loadProject`,e),p(`open-studio`)},oe=async(e,t)=>{if(!O.value){O.value=!0;try{await m.dispatch(`poivelle/copyDiscoveryWork`,{work_id:e.id,prompt:t,title:t.slice(0,80)}),p(`open-studio`)}catch(e){Ae.error(e?.message??q(`poivelle.error.generic`))}finally{O.value=!1}}},se=async()=>{let e=ie.value;e&&S.value.trim()&&await oe(e,S.value.trim())},I=async e=>{await oe(e,S.value.trim()||`${q(`poivelle.discovery.copyPrefix`)} ${e.title}`)};return l(P),(l,u)=>(T(),c(`main`,We,[e(`header`,$,[e(`div`,Ge,[a(s(Q),{size:19,"aria-hidden":`true`}),u[2]||=r(` POIVELLE`,-1)]),e(`div`,Ke,[(T(!0),c(f,null,C(v.value.slice(0,3),e=>(T(),c(`button`,{key:e.id,type:`button`,title:e.title,"aria-label":e.title,onClick:t=>ae(e.id)},[r(i(e.title)+` `,1),a(s(W),{size:13,"aria-hidden":`true`})],8,qe))),128))])]),M.value||N.value?(T(),c(`div`,Je,[M.value?(T(),y(s(he),{key:0,size:16,class:`spinning`,"aria-hidden":`true`})):o(``,!0),e(`span`,null,i(M.value?l.$t(`poivelle.status.loading`):N.value),1),N.value?(T(),c(`button`,{key:1,type:`button`,onClick:P},i(l.$t(`poivelle.action.retry`)),1)):o(``,!0)])):o(``,!0),e(`section`,Ye,[e(`p`,Xe,i(l.$t(`poivelle.discovery.kicker`)),1),e(`h1`,Ze,i(l.$t(`poivelle.discovery.title`)),1),e(`div`,{class:`mode-switch`,"aria-label":l.$t(`poivelle.discovery.skills`)},[(T(),c(f,null,C(te,t=>e(`button`,{key:t.workId,type:`button`,class:n({active:k.value===t.workId}),disabled:M.value,onClick:e=>k.value=t.workId},[(T(),y(w(t.icon),{size:15,"aria-hidden":`true`})),r(` `+i(l.$t(t.label)),1)],10,$e)),64))],8,Qe),e(`form`,{class:`composer`,onSubmit:t(se,[`prevent`])},[_(e(`textarea`,{"onUpdate:modelValue":u[0]||=e=>S.value=e,placeholder:l.$t(`poivelle.discovery.placeholder`),disabled:M.value,maxlength:`500`,rows:`4`},null,8,et),[[h,S.value]]),e(`div`,tt,[e(`span`,null,i(S.value.length)+`/500`,1),e(`button`,{type:`submit`,disabled:!S.value.trim()||!ie.value||M.value||O.value,title:l.$t(`poivelle.discovery.create`)},[O.value?(T(),y(s(he),{key:0,size:18,class:`spinning`,"aria-hidden":`true`})):(T(),y(s(V),{key:1,size:18,"aria-hidden":`true`}))],8,nt)])],32),e(`div`,rt,[(T(),c(f,null,C(j,t=>e(`button`,{key:t,type:`button`,disabled:M.value,onClick:e=>S.value=l.$t(t)},i(l.$t(t)),9,it)),64))])]),e(`section`,at,[e(`div`,ot,[e(`div`,null,[e(`span`,null,i(l.$t(`poivelle.discovery.galleryKicker`)),1),e(`h2`,st,i(l.$t(`poivelle.discovery.gallery`)),1)]),e(`label`,ct,[a(s(be),{size:16,"aria-hidden":`true`}),_(e(`input`,{"onUpdate:modelValue":u[1]||=e=>D.value=e,placeholder:l.$t(`poivelle.discovery.search`),"aria-label":l.$t(`poivelle.discovery.search`)},null,8,lt),[[h,D.value]])])]),e(`div`,ut,[(T(),c(f,null,C(ne,t=>e(`button`,{key:t.value,type:`button`,class:n({active:A.value===t.value}),onClick:e=>A.value=t.value},i(l.$t(t.label)),11,dt)),64))]),e(`div`,ft,[(T(!0),c(f,null,C(re.value,t=>(T(),c(`article`,{key:t.id,class:`work-card`},[e(`div`,pt,[t.cover_url&&!ee.value.has(t.id)?(T(),c(`img`,{key:0,src:t.cover_url,alt:t.title,loading:`lazy`,onError:e=>F(t.id)},null,40,mt)):(T(),y(s(Re),{key:1,size:32,"aria-hidden":`true`})),e(`span`,null,i(t.duration_seconds?`${t.duration_seconds}s`:l.$t(`poivelle.discovery.community`)),1)]),e(`div`,ht,[e(`div`,gt,[e(`span`,null,i(t.creator_name),1),e(`strong`,null,i(t.title),1),e(`p`,null,i(t.description),1)]),e(`button`,{type:`button`,disabled:M.value||O.value,onClick:e=>I(t)},[a(s(fe),{size:14,"aria-hidden":`true`}),r(` `+i(l.$t(`poivelle.discovery.copy`)),1)],8,_t)])]))),128))])])]))}}),[[`__scopeId`,`data-v-d0d58a50`]]),yt={class:`studio-header`},bt={class:`identity`},xt=[`title`],St={class:`wordmark`},Ct={key:0,class:`version`},wt={class:`actions`},Tt={class:`sync-state`},Et=[`title`],Dt=[`disabled`],Ot=J(D({__name:`StudioHeader`,props:{projectTitle:{},graphVersion:{},canRun:{type:Boolean},canEdit:{type:Boolean}},emits:[`open-projects`,`home`,`commit`,`run`],setup(t){return(n,l)=>(T(),c(`header`,yt,[e(`div`,bt,[e(`button`,{class:`home-button`,type:`button`,title:n.$t(`poivelle.discovery.back`),onClick:l[0]||=e=>n.$emit(`home`)},[a(s(B),{size:16,"aria-hidden":`true`})],8,xt),e(`span`,St,[a(s(Q),{size:15,"aria-hidden":`true`}),l[4]||=r(` POIVELLE`,-1)]),e(`button`,{class:`project-button`,type:`button`,onClick:l[1]||=e=>n.$emit(`open-projects`)},[e(`span`,null,i(t.projectTitle||n.$t(`poivelle.project.noProject`)),1),a(s(U),{size:14,"aria-hidden":`true`})]),t.graphVersion===void 0?o(``,!0):(T(),c(`span`,Ct,`Graph v`+i(t.graphVersion),1))]),e(`div`,wt,[e(`span`,Tt,[l[5]||=e(`span`,{class:`sync-dot`},null,-1),r(` `+i(n.$t(`poivelle.status.synced`)),1)]),t.canEdit?(T(),c(`button`,{key:0,class:`icon-button`,type:`button`,title:n.$t(`poivelle.action.commit`),onClick:l[2]||=e=>n.$emit(`commit`)},[a(s(ze),{size:17,"aria-hidden":`true`})],8,Et)):o(``,!0),e(`button`,{class:`primary-button`,type:`button`,disabled:!t.canRun,onClick:l[3]||=e=>n.$emit(`run`)},[a(s(ve),{size:15,fill:`currentColor`,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.action.runSkill`)),1)],8,Dt)])]))}}),[[`__scopeId`,`data-v-8329a116`]]),kt={class:`production-rail`},At={class:`rail-section`},jt={class:`section-heading`},Mt=[`title`],Nt={class:`project-list`},Pt=[`onClick`],Ft={key:0,class:`empty-copy`},It={class:`rail-section assets-section`},Lt={class:`section-heading`},Rt=[`title`],zt={class:`asset-filters`},Bt=[`onClick`],Vt={class:`asset-list`},Ht={key:0,class:`empty-copy`},Ut={class:`rail-section compact-section`},Wt={class:`section-heading static`},Gt={class:`revision-list`},Kt={key:0,class:`empty-copy`},qt=J(D({__name:`ProductionRail`,props:{projects:{},currentProjectId:{},assets:{},revisions:{},canEdit:{type:Boolean}},emits:[`select-project`,`create-project`,`import-asset`],setup(t){let r=t,l=[`all`,`character`,`location`,`image`,`video`,`voice`],u=E(`all`),d=b(()=>u.value===`all`?r.assets:r.assets.filter(e=>e.kind===u.value)),p=e=>e===`video`?Te:e===`voice`||e===`music`||e===`sfx`?Fe:e===`script`||e===`brand`?K:me;return(r,m)=>(T(),c(`aside`,kt,[e(`div`,At,[e(`div`,jt,[e(`span`,null,i(r.$t(`poivelle.section.projects`)),1),t.canEdit?(T(),c(`button`,{key:0,type:`button`,title:r.$t(`poivelle.project.create`),onClick:m[0]||=e=>r.$emit(`create-project`)},[a(s(ye),{size:15,"aria-hidden":`true`})],8,Mt)):o(``,!0)]),e(`div`,Nt,[(T(!0),c(f,null,C(t.projects,o=>(T(),c(`button`,{key:o.id,type:`button`,class:n([`project-row`,{active:o.id===t.currentProjectId}]),onClick:e=>r.$emit(`select-project`,o.id)},[a(s(Q),{size:15,"aria-hidden":`true`}),e(`span`,null,i(o.title),1),e(`small`,null,`v`+i(o.graph_version),1)],10,Pt))),128)),t.projects.length?o(``,!0):(T(),c(`p`,Ft,i(r.$t(`poivelle.project.empty`)),1))])]),e(`div`,It,[e(`div`,Lt,[e(`span`,null,i(r.$t(`poivelle.section.assets`)),1),t.canEdit?(T(),c(`button`,{key:0,type:`button`,title:r.$t(`poivelle.asset.import`),onClick:m[1]||=e=>r.$emit(`import-asset`)},[a(s(we),{size:15,"aria-hidden":`true`})],8,Rt)):o(``,!0)]),e(`div`,zt,[(T(),c(f,null,C(l,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,Bt)),64))]),e(`div`,Vt,[(T(!0),c(f,null,C(d.value,t=>(T(),c(`button`,{key:t.id,type:`button`,class:`asset-row`},[(T(),y(w(p(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?o(``,!0):(T(),c(`p`,Ht,i(r.$t(`poivelle.asset.empty`)),1))])]),e(`div`,Ut,[e(`div`,Wt,[e(`span`,null,i(r.$t(`poivelle.section.revisions`)),1),a(s(pe),{size:14,"aria-hidden":`true`})]),e(`div`,Gt,[(T(!0),c(f,null,C(t.revisions.slice(0,4),t=>(T(),c(`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?o(``,!0):(T(),c(`p`,Kt,i(r.$t(`poivelle.revision.empty`)),1))])])]))}}),[[`__scopeId`,`data-v-24e37657`]]),Jt=[`aria-label`],Yt=[`onClick`],Xt=J(D({__name:`ProjectionTabs`,props:{modelValue:{},canEdit:{type:Boolean}},emits:[`update:modelValue`,`create-node`],setup(t){let l=[{value:`canvas`,label:`poivelle.projection.canvas`,icon:Be},{value:`storyboard`,label:`poivelle.projection.storyboard`,icon:Q},{value:`timeline`,label:`poivelle.projection.timeline`,icon:Ue},{value:`review`,label:`poivelle.projection.review`,icon:Ve}];return(u,d)=>(T(),c(`nav`,{class:`projection-tabs`,"aria-label":u.$t(`poivelle.projection.label`)},[(T(),c(f,null,C(l,a=>e(`button`,{key:a.value,type:`button`,class:n({active:t.modelValue===a.value}),onClick:e=>u.$emit(`update:modelValue`,a.value)},[(T(),y(w(a.icon),{size:14,"aria-hidden":`true`})),r(` `+i(u.$t(a.label)),1)],10,Yt)),64)),d[1]||=e(`span`,{class:`spacer`},null,-1),t.canEdit?(T(),c(`button`,{key:0,class:`add-node`,type:`button`,onClick:d[0]||=e=>u.$emit(`create-node`)},[a(s(ye),{size:14,"aria-hidden":`true`}),r(` `+i(u.$t(`poivelle.node.create`)),1)])):o(``,!0)],8,Jt))}}),[[`__scopeId`,`data-v-bea5d208`]]),Zt={class:`connections`,"aria-hidden":`true`},Qt=[`x1`,`y1`,`x2`,`y2`],$t=[`onClick`],en={class:`node-type`},tn={class:`node-summary`},nn={key:0,class:`lock-mark`},rn={key:0,class:`empty-canvas`},an=J(D({__name:`GraphCanvas`,props:{graph:{},selectedNodeId:{},canEdit:{type:Boolean}},emits:[`select-node`,`create-node`],setup(l){let u=l,d=b(()=>new Map(u.graph.layouts.map(e=>[e.node_id,e]))),p=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)??p(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`}},_=b(()=>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)=>(T(),c(`div`,{class:`graph-canvas`,onClick:d[1]||=t(e=>u.$emit(`select-node`,void 0),[`self`])},[(T(),c(`svg`,Zt,[(T(!0),c(f,null,C(_.value,e=>(T(),c(`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,Qt))),128))])),(T(!0),c(f,null,C(l.graph.nodes,f=>(T(),c(`button`,{key:f.id,type:`button`,class:n([`graph-node`,`type-${f.node_type}`,{selected:f.id===l.selectedNodeId}]),style:S(g(f.id)),onClick:t(e=>u.$emit(`select-node`,f.id),[`stop`])},[e(`span`,en,i(f.node_type),1),e(`strong`,null,i(f.title),1),e(`span`,tn,i(v(f)),1),f.locked_paths.length?(T(),c(`span`,nn,[a(s(He),{size:11}),d[2]||=r(` locked`,-1)])):o(``,!0)],14,$t))),128)),l.graph.nodes.length?o(``,!0):(T(),c(`div`,rn,[a(s(Be),{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),l.canEdit?(T(),c(`button`,{key:0,type:`button`,onClick:d[0]||=e=>u.$emit(`create-node`)},[a(s(ye),{size:15,"aria-hidden":`true`}),r(` `+i(u.$t(`poivelle.node.create`)),1)])):o(``,!0)]))]))}}),[[`__scopeId`,`data-v-cd67c1fc`]]),on={class:`media-lane`},sn={key:0,class:`candidate-strip`},cn=[`src`],ln=[`src`],un=[`onClick`],dn={key:1},fn=[`onClick`],pn={key:1,class:`unavailable-takes`},mn={key:2,class:`empty-candidates`},hn=J(D({__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=b(()=>{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]}),s=b(()=>r.takes.filter(e=>r.nodeIds.includes(e.target_node_id)&&e.state!==`ready`)),l=E([]),u=e=>{l.value=l.value.includes(e)?l.value.filter(t=>t!==e):[...l.value.slice(-1),e]};return(r,d)=>(T(),c(`section`,on,[e(`header`,null,[e(`span`,null,i(t.title),1),t.nodeIds[0]?(T(),c(`button`,{key:0,type:`button`,onClick:d[0]||=e=>r.$emit(`select-node`,t.nodeIds[0])},i(r.$t(`poivelle.storyboard.openNode`)),1)):o(``,!0)]),a.value.length?(T(),c(`div`,sn,[(T(!0),c(f,null,C(a.value,a=>(T(),c(`article`,{key:a.key,class:n([`candidate`,{selected:a.selected,comparing:l.value.includes(a.key)}])},[t.kind===`image`?(T(),c(`img`,{key:0,src:a.artifact.storage_url,alt:``},null,8,cn)):(T(),c(`video`,{key:1,src:a.artifact.storage_url,controls:``,preload:`metadata`},null,8,ln)),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?(T(),c(`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,un)):a.selected?(T(),c(`em`,dn,i(r.$t(`poivelle.storyboard.selected`)),1)):o(``,!0),e(`button`,{type:`button`,class:`compare-toggle`,onClick:e=>u(a.key)},i(l.value.includes(a.key)?r.$t(`poivelle.storyboard.comparing`):r.$t(`poivelle.storyboard.compare`)),9,fn)])],2))),128))])):o(``,!0),s.value.length?(T(),c(`div`,pn,[(T(!0),c(f,null,C(s.value,e=>(T(),c(`span`,{key:e.id},i(e.state===`failed`?r.$t(`poivelle.storyboard.failedTake`):r.$t(`poivelle.storyboard.restrictedTake`)),1))),128))])):o(``,!0),!a.value.length&&!s.value.length?(T(),c(`div`,mn,i(r.$t(`poivelle.storyboard.noCandidates`)),1)):o(``,!0)]))}}),[[`__scopeId`,`data-v-4e385f6a`]]),gn={class:`storyboard-view`},_n={key:0,class:`storyboard-heading`},vn={class:`section-label`},yn=[`onClick`],bn={class:`shot-number`},xn={class:`shot-production`},Sn={class:`shot-metadata`},Cn={class:`prompt-columns`},wn={class:`candidate-columns`},Tn=[`onClick`],En={key:0,class:`empty-view`},Dn=J(D({__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,l=b(()=>r.storyboard?.sections.reduce((e,t)=>e+t.shots.length,0)??0),u=b(()=>r.graph.nodes.filter(e=>[`storyboard`,`scene`,`shot`,`image`,`video`].includes(e.node_type)));return(r,d)=>(T(),c(`div`,gn,[t.storyboard?(T(),c(`header`,_n,[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(l.value),1)])])])):o(``,!0),t.storyboard?(T(!0),c(f,{key:1},C(t.storyboard.sections,o=>(T(),c(`section`,{key:o.id,class:`story-section`},[e(`div`,vn,[e(`span`,null,i(String(o.order).padStart(2,`0`)),1),e(`h3`,null,i(o.title),1)]),(T(!0),c(f,null,C(o.shots,o=>(T(),c(`article`,{key:o.row.id,class:n([`shot-row`,{selected:o.shot_node_id===t.selectedNodeId}])},[e(`button`,{class:`shot-brief`,type:`button`,onClick:e=>r.$emit(`select-node`,o.shot_node_id)},[e(`span`,bn,`SHOT `+i(String(o.row.shot_number).padStart(2,`0`)),1),e(`strong`,null,i(o.row.plot_description),1),e(`span`,null,i(o.row.duration_seconds)+`s · `+i(o.row.shot_size),1)],8,yn),e(`div`,xn,[e(`dl`,Sn,[e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.action`)),1),e(`dd`,null,i(o.row.character_action||`—`),1)]),e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.emotion`)),1),e(`dd`,null,i(o.row.emotion||`—`),1)]),e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.lighting`)),1),e(`dd`,null,i(o.row.lighting_and_atmosphere),1)]),e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.audio`)),1),e(`dd`,null,i(o.row.audio_effects),1)])]),e(`div`,Cn,[e(`div`,null,[e(`span`,null,i(r.$t(`poivelle.storyboard.imagePrompt`)),1),e(`p`,null,i(o.row.image_generation_prompt),1)]),e(`div`,null,[e(`span`,null,i(r.$t(`poivelle.storyboard.motionPrompt`)),1),e(`p`,null,i(o.row.video_motion_prompt),1)])])]),e(`div`,wn,[a(hn,{title:r.$t(`poivelle.storyboard.frames`),kind:`image`,"node-ids":o.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`]),a(hn,{title:r.$t(`poivelle.storyboard.motion`),kind:`video`,"node-ids":o.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)):(T(),c(f,{key:2},[(T(!0),c(f,null,C(u.value,(o,l)=>(T(),c(`button`,{key:o.id,type:`button`,class:n([`legacy-card`,{selected:o.id===t.selectedNodeId}]),onClick:e=>r.$emit(`select-node`,o.id)},[e(`span`,null,i(String(l+1).padStart(2,`0`)),1),a(s(Q),{size:26,"stroke-width":`1.25`,"aria-hidden":`true`}),e(`strong`,null,i(o.title),1)],10,Tn))),128)),u.value.length?o(``,!0):(T(),c(`div`,En,[a(s(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`]]),On={class:`timeline-view`},kn={key:0,class:`master-output`,"aria-labelledby":`poivelle-master-title`},An={class:`master-heading`},jn={class:`master-kicker`},Mn={id:`poivelle-master-title`},Nn=[`href`],Pn=[`src`,`aria-label`],Fn={key:0,class:`master-status`,role:`status`},In={key:1,class:`master-status is-error`,role:`alert`},Ln={class:`master-metadata`},Rn={class:`timeline-ruler`},zn={key:1,class:`tracks`},Bn={class:`track-label`},Vn={class:`track-lane`},Hn=[`title`],Un=[`aria-label`],Wn={key:0,class:`clip-actions`},Gn=[`disabled`,`onClick`],Kn=[`disabled`,`onClick`],qn={key:2,class:`empty-timeline`},Jn=120/5e3,Yn=J(D({__name:`TimelineView`,props:{timeline:{},graph:{},artifacts:{},canEdit:{type:Boolean}},emits:[`move-clip`],setup(t){let n=t,l=b(()=>{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=E(!0),d=E(!1);g(()=>l.value?.id,()=>{u.value=!0,d.value=!1});let p=()=>{u.value=!0,d.value=!1},m=()=>{u.value=!1,d.value=!0},h=e=>{let t=l.value?.metadata?.[e];return typeof t==`number`&&Number.isFinite(t)?t:void 0},_=b(()=>{let e=h(`duration_ms`);return e===void 0?`—`:`${(e/1e3).toFixed(1)}s`}),v=b(()=>{let e=h(`width`),t=h(`height`);return e&&t?`${e} × ${t}`:`—`}),y=b(()=>{let e=h(`width`),t=h(`height`);return e&&t?{aspectRatio:`${e} / ${t}`}:void 0}),x=e=>n.timeline?.clips.filter(t=>t.track_id===e)??[],w=e=>e.artifact_id.slice(-6),D=e=>({left:`${e.timeline_start_ms*Jn}px`,width:`${Math.max(48,(e.source_out_ms-e.source_in_ms)/(e.speed??1)*Jn)}px`});return(n,g)=>(T(),c(`div`,On,[l.value?(T(),c(`section`,kn,[e(`div`,An,[e(`div`,null,[e(`span`,jn,i(n.$t(`poivelle.timeline.deliverable`)),1),e(`h2`,Mn,i(n.$t(`poivelle.timeline.masterTitle`)),1)]),e(`a`,{class:`master-download`,href:l.value.storage_url,target:`_blank`,rel:`noopener noreferrer`,download:``},[a(s(G),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.timeline.download`)),1)],8,Nn)]),e(`div`,{class:`master-media`,style:S(y.value)},[e(`video`,{class:`master-player`,src:l.value.storage_url,"aria-label":n.$t(`poivelle.timeline.playerLabel`),controls:``,playsinline:``,preload:`metadata`,onLoadstart:p,onLoadedmetadata:g[0]||=e=>u.value=!1,onCanplay:g[1]||=e=>u.value=!1,onError:m},null,40,Pn),u.value&&!d.value?(T(),c(`div`,Fn,[a(s(he),{size:24,class:`is-spinning`,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.timeline.loading`)),1)])):o(``,!0),d.value?(T(),c(`div`,In,[a(s(Ce),{size:24,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.timeline.loadError`)),1)])):o(``,!0)],4),e(`dl`,Ln,[e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.duration`)),1),e(`dd`,null,i(_.value),1)]),e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.frame`)),1),e(`dd`,null,i(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)])])])):o(``,!0),e(`div`,Rn,[(T(),c(f,null,C(10,t=>e(`span`,{key:t},i((t-1)*5)+`s`,1)),64))]),t.timeline?.tracks.length?(T(),c(`div`,zn,[(T(!0),c(f,null,C(t.timeline.tracks,r=>(T(),c(`div`,{key:r.id,class:`track-row`},[e(`div`,Bn,i(r.title||r.kind||r.id),1),e(`div`,Vn,[(T(!0),c(f,null,C(x(r.id),(a,s)=>(T(),c(`div`,{key:a.id,class:`timeline-clip`,style:S(D(a)),title:a.artifact_id},[e(`button`,{type:`button`,"aria-label":a.artifact_id},i(w(a)),9,Un),t.canEdit&&r.kind===`video`?(T(),c(`span`,Wn,[e(`button`,{type:`button`,disabled:s===0,onClick:e=>n.$emit(`move-clip`,{trackId:r.id,clipId:a.id,direction:-1})},` ‹ `,8,Gn),e(`button`,{type:`button`,disabled:s===x(r.id).length-1,onClick:e=>n.$emit(`move-clip`,{trackId:r.id,clipId:a.id,direction:1})},` › `,8,Kn)])):o(``,!0)],12,Hn))),128))])]))),128))])):(T(),c(`div`,qn,[a(s(Re),{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`]]),Xn={class:`review-view`},Zn={class:`review-summary`},Qn={class:`eyebrow`},$n={class:`summary-metrics`},er={class:`review-columns`},tr={key:0,class:`item-actions`},nr=[`onClick`],rr={key:0,class:`empty-copy`},ir=[`onClick`],ar=[`onClick`],or={key:0,class:`empty-copy`},sr={key:1,class:`run-detail`},cr={key:0},lr=[`onClick`],ur={key:2,class:`forensic-failures`,role:`alert`},dr=J(D({__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 s=a,l=b(()=>s.proposals.filter(e=>e.state===`awaiting_approval`)),u=e=>![`release_pending`,`succeeded`,`failed`,`cancelled`].includes(e.state),d=b(()=>s.evaluations.filter(e=>e.verdict===`pass`).length),p=b(()=>s.forensicValidations[0]),m=b(()=>p.value?.result.checks.filter(e=>e.verdict===`fail`)??[]),h=e=>[...s.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(s,_)=>(T(),c(`div`,Xn,[e(`section`,Zn,[e(`div`,null,[e(`span`,Qn,i(s.$t(`poivelle.review.heading`)),1),e(`h2`,null,i(a.revisions.length?`Revision ${a.revisions[0].revision_number}`:s.$t(`poivelle.review.noRevision`)),1)]),e(`div`,$n,[e(`span`,null,[e(`strong`,null,i(a.graph.nodes.length),1),r(i(s.$t(`poivelle.review.nodes`)),1)]),e(`span`,null,[e(`strong`,null,i(a.proposals.length),1),r(i(s.$t(`poivelle.review.proposals`)),1)]),e(`span`,null,[e(`strong`,null,i(a.runs.length),1),r(i(s.$t(`poivelle.review.runs`)),1)]),e(`span`,null,[e(`strong`,null,i(g(a.costs?.totals_microcredits.final??0)),1),r(i(s.$t(`poivelle.review.finalCost`)),1)]),e(`span`,null,[e(`strong`,null,i(d.value)+`/`+i(a.evaluations.length),1),r(i(s.$t(`poivelle.review.qualityChecks`)),1)]),e(`span`,null,[e(`strong`,{class:n(p.value?.result.verdict===`fail`?`metric-fail`:``)},i(p.value?.result.verdict??`—`),3),r(i(s.$t(`poivelle.review.forensics`)),1)])])]),e(`section`,er,[e(`div`,null,[e(`h3`,null,i(s.$t(`poivelle.review.pendingProposals`)),1),(T(!0),c(f,null,C(l.value,t=>(T(),c(`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?(T(),c(`div`,tr,[e(`span`,null,i(s.$t(`poivelle.review.approvalTokenRequired`)),1),e(`button`,{type:`button`,onClick:e=>s.$emit(`reject-proposal`,t.id)},i(s.$t(`poivelle.review.reject`)),9,nr)])):o(``,!0)]))),128)),l.value.length?o(``,!0):(T(),c(`p`,rr,i(s.$t(`poivelle.review.noProposals`)),1))]),e(`div`,null,[e(`h3`,null,i(s.$t(`poivelle.review.execution`)),1),(T(!0),c(f,null,C(a.runs,r=>(T(),c(`article`,{key:r.id,class:n([`run-item`,{active:a.activeRun?.run.id===r.id}]),onClick:e=>s.$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)?(T(),c(`button`,{key:0,type:`button`,class:`cancel-run`,onClick:t(e=>s.$emit(`cancel-run`,r.id),[`stop`])},i(s.$t(`poivelle.run.cancel`)),9,ar)):o(``,!0)],10,ir))),128)),a.runs.length?o(``,!0):(T(),c(`p`,or,i(s.$t(`poivelle.review.noRuns`)),1)),a.activeRun?(T(),c(`section`,sr,[e(`header`,null,[e(`strong`,null,i(s.$t(`poivelle.review.runDetail`)),1),e(`span`,null,i(a.activeRun.attempts.length)+` `+i(s.$t(`poivelle.review.attempts`)),1)]),(T(!0),c(f,null,C(a.activeRun.steps,r=>(T(),c(`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?(T(),c(`p`,cr,i(h(r.id)?.error?.code??`provider_error`)+`: `+i(h(r.id)?.error?.message??s.$t(`poivelle.error.generic`)),1)):o(``,!0)]),a.canEdit&&[`failed`,`manual_recovery`].includes(r.state)?(T(),c(`button`,{key:0,type:`button`,class:`retry-step`,onClick:t(e=>s.$emit(`retry-step`,r),[`stop`])},i(s.$t(`poivelle.review.retryStep`)),9,lr)):o(``,!0)]))),128))])):o(``,!0),m.value.length?(T(),c(`section`,ur,[e(`strong`,null,i(s.$t(`poivelle.review.forensics`)),1),(T(!0),c(f,null,C(m.value,e=>(T(),c(`p`,{key:e.code},i(e.code)+` · `+i(String(e.actual??`—`))+` / `+i(String(e.expected??`—`)),1))),128))])):o(``,!0)])])]))}}),[[`__scopeId`,`data-v-e66361d5`]]),fr={class:`inspector-panel`},pr={class:`inspector-heading`},mr={class:`field`},hr={class:`field`},gr=[`value`],_r={class:`field grow`},vr={class:`node-meta`},yr={key:1,class:`empty-inspector`},br=J(D({__name:`InspectorPanel`,props:{node:{}},emits:[`update`,`delete`],setup(t,{emit:n}){let o=t,l=n,d=E(``),p=E(``);g(()=>o.node,e=>{d.value=e?.title??``;let t=e?.payload.prompt??e?.payload.text??``;p.value=typeof t==`string`?t:``},{immediate:!0});let m=b(()=>o.node?o.node.node_type===`video`?Te:o.node.node_type===`audio`?Fe:[`shot`,`scene`,`storyboard`].includes(o.node.node_type)?Q:[`image`,`character`,`location`].includes(o.node.node_type)?me:o.node.node_type===`script`||o.node.node_type===`text`?K:H:ge),v=()=>{let e=d.value.trim();o.node&&e&&e!==o.node.title&&l(`update`,{path:`/title`,value:e})},x=()=>{if(!o.node)return;let e=o.node.payload.prompt===void 0?`text`:`prompt`;p.value!==o.node.payload[e]&&l(`update`,{path:`/payload/${e}`,value:p.value})};return(n,o)=>(T(),c(`aside`,fr,[e(`div`,pr,[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)]),(T(),y(w(m.value),{size:18,"aria-hidden":`true`}))]),t.node?(T(),c(f,{key:0},[e(`label`,mr,[e(`span`,null,i(n.$t(`poivelle.field.title`)),1),_(e(`input`,{"onUpdate:modelValue":o[0]||=e=>d.value=e,type:`text`,onBlur:v,onKeydown:u(v,[`enter`])},null,544),[[h,d.value]])]),e(`label`,hr,[e(`span`,null,i(n.$t(`poivelle.field.type`)),1),e(`input`,{value:t.node.node_type,type:`text`,disabled:``},null,8,gr)]),e(`label`,_r,[e(`span`,null,i(n.$t(`poivelle.field.prompt`)),1),_(e(`textarea`,{"onUpdate:modelValue":o[1]||=e=>p.value=e,rows:`8`,onBlur:x},null,544),[[h,p.value]])]),e(`div`,vr,[o[3]||=e(`span`,null,`NODE`,-1),e(`code`,null,i(t.node.id),1),o[4]||=e(`span`,null,`VERSION`,-1),e(`code`,null,i(t.node.version),1)]),e(`button`,{class:`danger-button`,type:`button`,onClick:o[2]||=e=>n.$emit(`delete`)},[a(s(Se),{size:14,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.node.delete`)),1)])],64)):(T(),c(`div`,yr,[a(s(ge),{size:24,"stroke-width":`1.4`}),e(`p`,null,i(n.$t(`poivelle.inspector.empty`)),1)]))]))}}),[[`__scopeId`,`data-v-7a6ae318`]]),xr={class:`agent-dock`},Sr={class:`agent-identity`},Cr={class:`proposal-strip`},wr=[`onClick`],Tr={key:0},Er=[`disabled`],Dr=J(D({__name:`AgentDock`,props:{proposals:{},selectedNodeId:{},skill:{},canEdit:{type:Boolean}},emits:[`run`,`open-proposal`],setup(t){let l=t,u=b(()=>l.proposals.filter(e=>e.state===`awaiting_approval`));return(l,d)=>(T(),c(`section`,xr,[e(`div`,Sr,[a(s(Ie),{size:16,"aria-hidden":`true`}),e(`div`,null,[e(`strong`,null,i(l.$t(`poivelle.agent.title`)),1),e(`span`,null,i(t.skill),1)])]),e(`div`,Cr,[(T(!0),c(f,null,C(u.value,t=>(T(),c(`button`,{key:t.id,type:`button`,onClick:e=>l.$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,wr))),128)),u.value.length?o(``,!0):(T(),c(`p`,Tr,i(l.$t(`poivelle.agent.noProposals`)),1))]),t.canEdit?(T(),c(`button`,{key:0,class:`agent-button`,type:`button`,disabled:!t.selectedNodeId,onClick:d[0]||=e=>l.$emit(`run`)},[a(s(xe),{size:15,"aria-hidden":`true`}),r(` `+i(l.$t(`poivelle.agent.plan`)),1)],8,Er)):o(``,!0)]))}}),[[`__scopeId`,`data-v-81fac9f8`]]),Or={class:`poivelle-studio`},kr={key:0,class:`error-banner`},Ar={key:1,class:`loading-state`},jr={key:2,class:`studio-body`},Mr={class:`projection-workspace`},Nr={class:`projection-content`},Pr={key:3,class:`onboarding`},Fr={key:0,class:`dry-run-summary`},Ir={class:`dry-run-note`},Lr=J(D({__name:`StudioWorkspace`,emits:[`back-home`],setup(n){let u=ke(),p=b(()=>u.state.poivelle),m=b(()=>p.value?.workspaces??[]),h=b(()=>p.value?.projects??[]),g=b(()=>p.value?.graph),_=b(()=>p.value?.assets??[]),v=b(()=>p.value?.artifacts??[]),S=b(()=>p.value?.takes??[]),w=b(()=>p.value?.selections??[]),D=b(()=>p.value?.storyboard),O=b(()=>p.value?.revisions??[]),ee=b(()=>p.value?.proposals??[]),k=b(()=>p.value?.runs??[]),A=b(()=>p.value?.activeRun),te=b(()=>p.value?.evaluations??[]),j=b(()=>p.value?.forensicValidations??[]),ne=b(()=>p.value?.costs),re=b(()=>p.value?.timeline),M=b(()=>p.value?.projection??`canvas`),N=b(()=>p.value?.selectedNodeId),ie=b(()=>g.value?.nodes.find(e=>e.id===N.value)),P=b(()=>h.value.find(e=>e.id===p.value?.currentProjectId)),F=b(()=>[`owner`,`producer`,`director`,`editor`].includes(p.value?.currentMembership?.role??``)),ae=b(()=>p.value?.dryRun),oe=b(()=>p.value?.error),se=b(()=>[p.value?.status?.bootstrap,p.value?.status?.graph].includes(Oe.Request)),L=E(!1),ue=E(!1),z=E(!1),B=E(!1),V=E(!1),H=E(!1),U=d({name:``,monthly_limit_microcredits:void 0}),W=d({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`}),fe=[{label:q(`poivelle.project.blankWorkflow`),value:`blank`},{label:q(`poivelle.project.commercialTVC`),value:`commercial_tvc`}],G=d({node_type:`scene`,title:``,prompt:``}),K=d({title:``,kind:`image`,source_url:``,content_hash:``}),pe=[`script`,`character`,`location`,`prop`,`storyboard`,`scene`,`shot`,`image`,`video`,`audio`,`subtitle`,`composition`,`output`,`note`],me=[`character`,`location`,`prop`,`image`,`video`,`voice`,`music`,`sfx`,`brand`],ge=()=>u.dispatch(`poivelle/bootstrap`),_e=e=>u.dispatch(`poivelle/loadProject`,e),ve=e=>u.dispatch(`poivelle/selectNode`,e),be=e=>u.dispatch(`poivelle/setProjection`,e),xe=()=>{W.workspace_id=p.value?.currentWorkspaceId??m.value[0]?.id??``,z.value=!0},Se=async()=>{U.name.trim()&&await $(async()=>{await u.dispatch(`poivelle/createWorkspace`,{...U,name:U.name.trim()}),ue.value=!1,xe()})},we=async()=>{!W.workspace_id||!W.title.trim()||await $(async()=>{W.workflow===`commercial_tvc`?(await u.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}),be(`storyboard`)):await u.dispatch(`poivelle/createProject`,{workspace_id:W.workspace_id,title:W.title.trim(),skill:W.skill,domain:`film.drama.short`}),z.value=!1,W.title=``})},Te=async()=>{G.title.trim()&&await $(async()=>{await u.dispatch(`poivelle/createNode`,{node_type:G.node_type,title:G.title.trim(),payload:{prompt:G.prompt}}),B.value=!1,G.title=``,G.prompt=``})},J=async()=>{!p.value?.currentWorkspaceId||!K.title||!K.source_url||!K.content_hash||await $(async()=>{await u.dispatch(`poivelle/importAsset`,{...K,project_id:p.value.currentProjectId}),V.value=!1})},Z=e=>u.dispatch(`poivelle/updateSelectedNode`,e),je=async()=>{await De.confirm(q(`poivelle.node.deleteConfirm`),``,{type:`warning`}),await u.dispatch(`poivelle/deleteSelectedNode`)},Me=async()=>{await u.dispatch(`poivelle/commitRevision`,`Studio checkpoint`),Ae.success(q(`poivelle.revision.committed`))},Ne=async()=>{ie.value&&await $(async()=>{await u.dispatch(`poivelle/dryRun`,ie.value?.node_type===`composition`?`compose`:`generate`),H.value=!0})},Fe=async()=>{await $(async()=>{let e=await u.dispatch(`poivelle/confirmDryRun`);H.value=!1,e&&Ae.success(q(`poivelle.run.queued`))})},Ie=e=>{be(`review`),Ae.info(`${q(`poivelle.agent.proposal`)} ${e.slice(-8)}`)},Le=async e=>{await De.confirm(q(`poivelle.review.rejectConfirm`),``,{type:`warning`}),await $(()=>u.dispatch(`poivelle/rejectProposal`,e))},ze=async e=>{await De.confirm(q(`poivelle.run.cancelConfirm`),``,{type:`warning`}),await $(()=>u.dispatch(`poivelle/cancelRun`,e))},Be=e=>$(()=>u.dispatch(`poivelle/loadRun`,e)),Ve=async e=>{await $(async()=>{await u.dispatch(`poivelle/retryStep`,e),H.value=!0})},He=async e=>{if(!re.value)return;let t=re.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 $(()=>u.dispatch(`poivelle/saveTimeline`,{...re.value,clips:t}))},Ue=async e=>{await $(async()=>{await u.dispatch(`poivelle/selectTake`,e),Ae.success(q(`poivelle.storyboard.selectionSaved`))})},We=e=>`${(e/1e6).toFixed(2)} credits`,$=async e=>{L.value=!0;try{await e()}catch(e){Ae.error(e?.response?.data?.detail?.message??e?.response?.data?.detail??e?.message??q(`poivelle.error.generic`))}finally{L.value=!1}};return l(ge),(n,l)=>(T(),c(`main`,Or,[a(Ot,{"project-title":P.value?.title,"graph-version":g.value?.graph_version,"can-run":F.value&&!!ie.value,"can-edit":F.value,onOpenProjects:l[0]||=e=>z.value=!0,onHome:l[1]||=e=>n.$emit(`back-home`),onCommit:Me,onRun:Ne},null,8,[`project-title`,`graph-version`,`can-run`,`can-edit`]),oe.value?(T(),c(`div`,kr,[a(s(Ce),{size:15,"aria-hidden":`true`}),e(`span`,null,i(oe.value),1),e(`button`,{type:`button`,onClick:ge},i(n.$t(`poivelle.action.retry`)),1)])):o(``,!0),se.value&&!g.value?(T(),c(`div`,Ar,[a(s(he),{size:25,class:`is-spinning`,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.status.loading`)),1)])):P.value&&g.value?(T(),c(`div`,jr,[a(qt,{projects:h.value,"current-project-id":P.value.id,assets:_.value,revisions:O.value,"can-edit":F.value,onSelectProject:_e,onCreateProject:xe,onImportAsset:l[2]||=e=>V.value=!0},null,8,[`projects`,`current-project-id`,`assets`,`revisions`,`can-edit`]),e(`section`,Mr,[a(Xt,{"model-value":M.value,"can-edit":F.value,"onUpdate:modelValue":be,onCreateNode:l[3]||=e=>B.value=!0},null,8,[`model-value`,`can-edit`]),e(`div`,Nr,[M.value===`canvas`?(T(),y(an,{key:0,graph:g.value,"selected-node-id":N.value,"can-edit":F.value,onSelectNode:ve,onCreateNode:l[4]||=e=>B.value=!0},null,8,[`graph`,`selected-node-id`,`can-edit`])):M.value===`storyboard`?(T(),y(Dn,{key:1,graph:g.value,storyboard:D.value,artifacts:v.value,takes:S.value,selections:w.value,"selected-node-id":N.value,"can-edit":F.value,"can-select":F.value&&O.value.length>0,onSelectNode:ve,onSelectTake:Ue},null,8,[`graph`,`storyboard`,`artifacts`,`takes`,`selections`,`selected-node-id`,`can-edit`,`can-select`])):M.value===`timeline`?(T(),y(Yn,{key:2,timeline:re.value,graph:g.value,artifacts:v.value,"can-edit":F.value,onMoveClip:He},null,8,[`timeline`,`graph`,`artifacts`,`can-edit`])):(T(),y(dr,{key:3,graph:g.value,proposals:ee.value,revisions:O.value,runs:k.value,"active-run":A.value,evaluations:te.value,"forensic-validations":j.value,costs:ne.value,"can-edit":F.value,onRejectProposal:Le,onCancelRun:ze,onOpenRun:Be,onRetryStep:Ve},null,8,[`graph`,`proposals`,`revisions`,`runs`,`active-run`,`evaluations`,`forensic-validations`,`costs`,`can-edit`]))]),a(Dr,{proposals:ee.value,"selected-node-id":N.value,skill:P.value.active_skill,"can-edit":F.value,onRun:Ne,onOpenProposal:Ie},null,8,[`proposals`,`selected-node-id`,`skill`,`can-edit`])]),F.value?(T(),y(br,{key:0,node:ie.value,onUpdate:Z,onDelete:je},null,8,[`node`])):o(``,!0)])):(T(),c(`section`,Pr,[l[37]||=e(`div`,{class:`onboarding-number`},`01 / STUDIO`,-1),a(s(Re),{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),m.value.length?F.value?(T(),c(`button`,{key:1,type:`button`,onClick:xe},[a(s(Q),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.project.create`)),1)])):o(``,!0):(T(),c(`button`,{key:0,type:`button`,onClick:l[5]||=e=>ue.value=!0},[a(s(ye),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.workspace.create`)),1)]))])),a(s(Ee),{modelValue:ue.value,"onUpdate:modelValue":l[10]||=e=>ue.value=e,title:n.$t(`poivelle.workspace.create`),width:`420px`},{footer:x(()=>[a(s(Y),{onClick:l[9]||=e=>ue.value=!1},{default:x(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),a(s(Y),{type:`primary`,loading:L.value,onClick:Se},{default:x(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:x(()=>[a(s(le),{"label-position":`top`,onSubmit:l[8]||=t(()=>{},[`prevent`])},{default:x(()=>[a(s(R),{label:n.$t(`poivelle.workspace.name`)},{default:x(()=>[a(s(X),{modelValue:U.name,"onUpdate:modelValue":l[6]||=e=>U.name=e,maxlength:`120`,autofocus:``},null,8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.workspace.budget`)},{default:x(()=>[a(s(de),{modelValue:U.monthly_limit_microcredits,"onUpdate:modelValue":l[7]||=e=>U.monthly_limit_microcredits=e,min:0,step:1e6},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),a(s(Ee),{modelValue:z.value,"onUpdate:modelValue":l[21]||=e=>z.value=e,title:n.$t(`poivelle.project.create`),width:`460px`},{footer:x(()=>[a(s(Y),{onClick:l[20]||=e=>z.value=!1},{default:x(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),a(s(Y),{type:`primary`,loading:L.value,onClick:we},{default:x(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:x(()=>[a(s(le),{"label-position":`top`,onSubmit:l[19]||=t(()=>{},[`prevent`])},{default:x(()=>[a(s(R),{label:n.$t(`poivelle.project.workspace`)},{default:x(()=>[a(s(I),{modelValue:W.workspace_id,"onUpdate:modelValue":l[11]||=e=>W.workspace_id=e,style:{width:`100%`}},{default:x(()=>[(T(!0),c(f,null,C(m.value,e=>(T(),y(s(ce),{key:e.id,label:e.name,value:e.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.project.title`)},{default:x(()=>[a(s(X),{modelValue:W.title,"onUpdate:modelValue":l[12]||=e=>W.title=e,maxlength:`200`},null,8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.project.workflow`)},{default:x(()=>[a(s(Pe),{modelValue:W.workflow,"onUpdate:modelValue":l[13]||=e=>W.workflow=e,options:fe,block:``},null,8,[`modelValue`])]),_:1},8,[`label`]),W.workflow===`commercial_tvc`?(T(),c(f,{key:0},[a(s(R),{label:n.$t(`poivelle.project.productName`)},{default:x(()=>[a(s(X),{modelValue:W.product_name,"onUpdate:modelValue":l[14]||=e=>W.product_name=e,maxlength:`120`},null,8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.project.productCategory`)},{default:x(()=>[a(s(X),{modelValue:W.product_category,"onUpdate:modelValue":l[15]||=e=>W.product_category=e,maxlength:`180`},null,8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.project.brandTone`)},{default:x(()=>[a(s(X),{modelValue:W.brand_tone,"onUpdate:modelValue":l[16]||=e=>W.brand_tone=e,type:`textarea`,rows:2,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.project.aspectRatio`)},{default:x(()=>[a(s(Pe),{modelValue:W.aspect_ratio,"onUpdate:modelValue":l[17]||=e=>W.aspect_ratio=e,options:[`16:9`,`9:16`,`1:1`]},null,8,[`modelValue`])]),_:1},8,[`label`])],64)):o(``,!0),a(s(R),{label:n.$t(`poivelle.project.skill`)},{default:x(()=>[W.workflow===`blank`?(T(),y(s(I),{key:0,modelValue:W.skill,"onUpdate:modelValue":l[18]||=e=>W.skill=e,style:{width:`100%`}},{default:x(()=>[a(s(ce),{label:`Short drama · professional`,value:`film.drama.short@1.0.0`}),a(s(ce),{label:`Commercial film · professional`,value:`film.commercial@1.0.0`}),a(s(ce),{label:`Music video · professional`,value:`film.music-video@1.0.0`})]),_:1},8,[`modelValue`])):o(``,!0)]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),a(s(Ee),{modelValue:B.value,"onUpdate:modelValue":l[27]||=e=>B.value=e,title:n.$t(`poivelle.node.create`),width:`460px`},{footer:x(()=>[a(s(Y),{onClick:l[26]||=e=>B.value=!1},{default:x(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),a(s(Y),{type:`primary`,loading:L.value,onClick:Te},{default:x(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:x(()=>[a(s(le),{"label-position":`top`,onSubmit:l[25]||=t(()=>{},[`prevent`])},{default:x(()=>[a(s(R),{label:n.$t(`poivelle.field.type`)},{default:x(()=>[a(s(I),{modelValue:G.node_type,"onUpdate:modelValue":l[22]||=e=>G.node_type=e,style:{width:`100%`}},{default:x(()=>[(T(),c(f,null,C(pe,e=>a(s(ce),{key:e,label:e,value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.field.title`)},{default:x(()=>[a(s(X),{modelValue:G.title,"onUpdate:modelValue":l[23]||=e=>G.title=e,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.field.prompt`)},{default:x(()=>[a(s(X),{modelValue:G.prompt,"onUpdate:modelValue":l[24]||=e=>G.prompt=e,type:`textarea`,rows:5},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),a(s(Ee),{modelValue:V.value,"onUpdate:modelValue":l[34]||=e=>V.value=e,title:n.$t(`poivelle.asset.import`),width:`500px`},{footer:x(()=>[a(s(Y),{onClick:l[33]||=e=>V.value=!1},{default:x(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),a(s(Y),{type:`primary`,loading:L.value,onClick:J},{default:x(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:x(()=>[a(s(le),{"label-position":`top`,onSubmit:l[32]||=t(()=>{},[`prevent`])},{default:x(()=>[a(s(R),{label:n.$t(`poivelle.asset.title`)},{default:x(()=>[a(s(X),{modelValue:K.title,"onUpdate:modelValue":l[28]||=e=>K.title=e,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.field.type`)},{default:x(()=>[a(s(I),{modelValue:K.kind,"onUpdate:modelValue":l[29]||=e=>K.kind=e,style:{width:`100%`}},{default:x(()=>[(T(),c(f,null,C(me,e=>a(s(ce),{key:e,label:e,value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.asset.url`)},{default:x(()=>[a(s(X),{modelValue:K.source_url,"onUpdate:modelValue":l[30]||=e=>K.source_url=e},null,8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.asset.hash`)},{default:x(()=>[a(s(X),{modelValue:K.content_hash,"onUpdate:modelValue":l[31]||=e=>K.content_hash=e,placeholder:`sha256:...`},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),a(s(Ee),{modelValue:H.value,"onUpdate:modelValue":l[36]||=e=>H.value=e,title:n.$t(`poivelle.run.confirmTitle`),width:`520px`},{footer:x(()=>[a(s(Y),{onClick:l[35]||=e=>H.value=!1},{default:x(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),a(s(Y),{type:`primary`,loading:L.value,onClick:Fe},{default:x(()=>[r(i(n.$t(`poivelle.run.confirm`)),1)]),_:1},8,[`loading`])]),default:x(()=>[ae.value?(T(),c(`div`,Fr,[e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.targets`)),1),e(`strong`,null,i(ae.value.dependency_closure.length),1)]),e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.maximum`)),1),e(`strong`,null,i(We(ae.value.max_cost_microcredits)),1)]),e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.approval`)),1),e(`strong`,null,i(ae.value.required_approval),1)])])):o(``,!0),e(`p`,Ir,i(n.$t(`poivelle.run.confirmBody`)),1)]),_:1},8,[`modelValue`,`title`])]))}}),[[`__scopeId`,`data-v-1c683780`]]),Rr=D({__name:`Index`,setup(e){let t=E(`discovery`);return(e,n)=>t.value===`discovery`?(T(),y(vt,{key:0,onOpenStudio:n[0]||=e=>t.value=`studio`})):(T(),y(Lr,{key:1,onBackHome:n[1]||=e=>t.value=`discovery`}))}});export{Rr as default};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,Mt as s,N as c,Q as l,S as u,St as d,T as f,Vt as p,Wt as m,b as h,ft as g,ht as _,it as v,j as y,k as b,mt as x,qt as S,rt as C,st as w,tt as T,wt as E,z as D}from"./vendor-chart-Dw-P17PN.js";import{a as O,c as ee,t as k}from"./install-Cn-SLM3u.js";import{i as A,n as te,r as j,s as ne}from"./runtime-BTM7t9of.js";import{a as re,c as M,dt as N,ht as ie,i as P,it as F,n as ae,r as oe,yt as se}from"./use-deprecated-r4dlLNqm.js";import{r as I,t as ce}from"./select-CEdgwxFQ.js";import{t as L}from"./use-aria-9DurtVZO.js";import{n as R,t as le}from"./form-BNJ9LdPs.js";import{r as ue,t as z}from"./event-BGnHezxC.js";import{t as de}from"./input-number-CM6-LfFO.js";import{t as B}from"./arrow-left-CAgEtUEh.js";import{t as V}from"./arrow-up-1uBNjlRG.js";import{t as H}from"./box-Dxe2PmZz.js";import{t as U}from"./chevron-down-CFNvOUcs.js";import{t as W}from"./chevron-right-OB3LWSyy.js";import{t as fe}from"./copy-Dt3eHIoJ.js";import{t as G}from"./download-BpjKdgMZ.js";import{t as K}from"./file-text-DJG_xSmc.js";import{t as pe}from"./history-BZjRJVxE.js";import{t as me}from"./image-_po7eo8A.js";import{t as he}from"./loader-circle-BlkcJy79.js";import{t as ge}from"./mouse-pointer-2-C_OdVel6.js";import{t as _e}from"./music-2-Dqz-Xs5O.js";import{t as ve}from"./play-DyD6aXAF.js";import{t as ye}from"./plus-CX84Naiy.js";import{t as be}from"./search-BLxBJYy2.js";import{t as xe}from"./sparkles-C99ewjws.js";import{t as Se}from"./trash-2-CsQogscC.js";import{t as Ce}from"./triangle-alert-DLNXmngq.js";import{t as we}from"./upload-Bl-8fnQF.js";import{t as Te}from"./video-D5a-z3UK.js";import{i as q}from"./i18n-m-rMtkos.js";import{Ci as Ee,E as J,Mi as Y,Vi as X,_i as De,gi as Z,ni as Oe,ri as ke,vi as Ae}from"./index-B-TI1WPY.js";var je={label:`label`,value:`value`,disabled:`disabled`},Me=te({direction:{type:j(String),default:`horizontal`},options:{type:j(Array),default:()=>[]},modelValue:{type:[String,Number,Boolean],default:void 0},props:{type:j(Object),default:()=>je},block:Boolean,size:F,disabled:Boolean,validateEvent:{type:Boolean,default:!0},id:String,name:String,...L([`ariaLabel`])}),Ne={[ue]:e=>m(e)||ne(e)||A(e),[z]:e=>m(e)||ne(e)||A(e)},Pe=k(O(D({...D({name:`ElSegmented`}),props:Me,emits:Ne,setup(t,{emit:a}){let l=t,u=ee(`segmented`),m=M(),h=oe(),_=ae(),{formItem:y}=P(),{inputId:x,isLabeledByFormItem:w}=re(l,{formItemContext:y}),D=E(null),O=ie(),k=d({isInit:!1,width:0,height:0,translateX:0,translateY:0,focusVisible:!1}),A=e=>{let t=j(e);a(ue,t),a(z,t)},te=b(()=>({...je,...l.props})),j=e=>p(e)?e[te.value.value]:e,ne=e=>p(e)?e[te.value.label]:e,F=e=>!!(_.value||p(e)&&e[te.value.disabled]),I=e=>l.modelValue===j(e),ce=e=>l.options.find(t=>j(t)===e),L=e=>[u.e(`item`),u.is(`selected`,I(e)),u.is(`disabled`,F(e))],R=()=>{if(!D.value)return;let e=D.value.querySelector(`.is-selected`),t=D.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,l.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{}},le=b(()=>[u.b(),u.m(h.value),u.is(`block`,l.block)]),de=b(()=>({width:l.direction===`vertical`?`100%`:`${k.width}px`,height:l.direction===`vertical`?`${k.height}px`:`100%`,transform:l.direction===`vertical`?`translateY(${k.translateY}px)`:`translateX(${k.translateX}px)`,display:k.isInit?`block`:`none`})),B=b(()=>[u.e(`item-selected`),u.is(`disabled`,F(ce(l.modelValue))),u.is(`focus-visible`,k.focusVisible)]),V=b(()=>l.name||m.value);return se(D,R),g(O,R),g(()=>l.modelValue,()=>{var e;R(),l.validateEvent&&((e=y?.validate)==null||e.call(y,`change`).catch(e=>N(e)))},{flush:`post`}),(t,a)=>t.options.length?(T(),c(`div`,{key:0,id:s(x),ref_key:`segmentedRef`,ref:D,class:n(s(le)),role:`radiogroup`,"aria-label":s(w)?void 0:t.ariaLabel||`segmented`,"aria-labelledby":s(w)?s(y).labelId:void 0},[e(`div`,{class:n([s(u).e(`group`),s(u).m(l.direction)])},[e(`div`,{style:S(s(de)),class:n(s(B))},null,6),(T(!0),c(f,null,C(t.options,(a,o)=>(T(),c(`label`,{key:o,class:n(L(a))},[e(`input`,{class:n(s(u).e(`item-input`)),type:`radio`,name:s(V),disabled:F(a),checked:I(a),onChange:e=>A(a)},null,42,[`name`,`disabled`,`checked`,`onChange`]),e(`div`,{class:n(s(u).e(`item-label`))},[v(t.$slots,`default`,{item:a},()=>[r(i(ne(a)),1)])],2)],2))),128))],2)],10,[`id`,`aria-label`,`aria-labelledby`])):o(`v-if`,!0)}}),[[`__file`,`segmented.vue`]])),Fe=Z(`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`}]]),Ie=Z(`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`}]]),Le=Z(`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=Z(`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`}]]),Re=Z(`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`}]]),ze=Z(`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`}]]),Be=Z(`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`}]]),Ve=Z(`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`}]]),He=Z(`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`}]]),Ue=Z(`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`}]]),We={class:`discovery-home`},$={class:`discovery-header`},Ge={class:`brand`},Ke={class:`project-links`},qe=[`title`,`aria-label`,`onClick`],Je={key:0,class:`discovery-state`,role:`status`},Ye={class:`creator`,"aria-labelledby":`poivelle-create-title`},Xe={class:`creator-kicker`},Ze={id:`poivelle-create-title`},Qe=[`aria-label`],$e=[`disabled`,`onClick`],et=[`placeholder`,`disabled`],tt={class:`composer-footer`},nt=[`disabled`,`title`],rt={class:`prompt-starters`},it=[`disabled`,`onClick`],at={class:`works`,"aria-labelledby":`poivelle-works-title`},ot={class:`works-heading`},st={id:`poivelle-works-title`},ct={class:`search`},lt=[`placeholder`,`aria-label`],ut={class:`category-tabs`},dt=[`onClick`],ft={class:`work-grid`},pt={class:`cover`},mt=[`src`,`alt`,`onError`],ht={class:`work-copy`},gt={class:`work-meta`},_t=[`disabled`,`onClick`],vt=J(D({__name:`DiscoveryHome`,emits:[`open-studio`],setup(u,{emit:d}){let p=d,m=ke(),g=b(()=>m.state.poivelle),v=b(()=>g.value?.projects??[]),x=b(()=>g.value?.discoveryWorks??[]),S=E(``),D=E(``),O=E(!1),ee=E(new Set),k=E(`official:pulsecam`),A=E(`all`),te=[{workId:`official:pulsecam`,label:`poivelle.discovery.commercial`,icon:Q},{workId:`official:moonlit-signal`,label:`poivelle.discovery.musicVideo`,icon:_e},{workId:`official:northstar-origin`,label:`poivelle.discovery.documentary`,icon:Le}],j=[`poivelle.discovery.starterProduct`,`poivelle.discovery.starterMusic`,`poivelle.discovery.starterDocumentary`],ne=[{value:`all`,label:`poivelle.discovery.all`},{value:`commercial`,label:`poivelle.discovery.commercial`},{value:`music_video`,label:`poivelle.discovery.musicVideo`},{value:`documentary`,label:`poivelle.discovery.documentary`},{value:`community`,label:`poivelle.discovery.community`}],re=b(()=>{let e=D.value.trim().toLowerCase();return x.value.filter(t=>(A.value===`all`||t.category===A.value)&&(!e||`${t.title} ${t.description} ${t.creator_name} ${(t.tags??[]).join(` `)}`.toLowerCase().includes(e)))}),M=b(()=>g.value?.status?.bootstrap===Oe.Request),N=b(()=>g.value?.error),ie=b(()=>x.value.find(e=>e.id===k.value)??x.value[0]),P=()=>m.dispatch(`poivelle/bootstrap`,{loadProject:!1}),F=e=>{ee.value=new Set([...ee.value,e])},ae=async e=>{await m.dispatch(`poivelle/loadProject`,e),p(`open-studio`)},oe=async(e,t)=>{if(!O.value){O.value=!0;try{await m.dispatch(`poivelle/copyDiscoveryWork`,{work_id:e.id,prompt:t,title:t.slice(0,80)}),p(`open-studio`)}catch(e){Ae.error(e?.message??q(`poivelle.error.generic`))}finally{O.value=!1}}},se=async()=>{let e=ie.value;e&&S.value.trim()&&await oe(e,S.value.trim())},I=async e=>{await oe(e,S.value.trim()||`${q(`poivelle.discovery.copyPrefix`)} ${e.title}`)};return l(P),(l,u)=>(T(),c(`main`,We,[e(`header`,$,[e(`div`,Ge,[a(s(Q),{size:19,"aria-hidden":`true`}),u[2]||=r(` POIVELLE`,-1)]),e(`div`,Ke,[(T(!0),c(f,null,C(v.value.slice(0,3),e=>(T(),c(`button`,{key:e.id,type:`button`,title:e.title,"aria-label":e.title,onClick:t=>ae(e.id)},[r(i(e.title)+` `,1),a(s(W),{size:13,"aria-hidden":`true`})],8,qe))),128))])]),M.value||N.value?(T(),c(`div`,Je,[M.value?(T(),y(s(he),{key:0,size:16,class:`spinning`,"aria-hidden":`true`})):o(``,!0),e(`span`,null,i(M.value?l.$t(`poivelle.status.loading`):N.value),1),N.value?(T(),c(`button`,{key:1,type:`button`,onClick:P},i(l.$t(`poivelle.action.retry`)),1)):o(``,!0)])):o(``,!0),e(`section`,Ye,[e(`p`,Xe,i(l.$t(`poivelle.discovery.kicker`)),1),e(`h1`,Ze,i(l.$t(`poivelle.discovery.title`)),1),e(`div`,{class:`mode-switch`,"aria-label":l.$t(`poivelle.discovery.skills`)},[(T(),c(f,null,C(te,t=>e(`button`,{key:t.workId,type:`button`,class:n({active:k.value===t.workId}),disabled:M.value,onClick:e=>k.value=t.workId},[(T(),y(w(t.icon),{size:15,"aria-hidden":`true`})),r(` `+i(l.$t(t.label)),1)],10,$e)),64))],8,Qe),e(`form`,{class:`composer`,onSubmit:t(se,[`prevent`])},[_(e(`textarea`,{"onUpdate:modelValue":u[0]||=e=>S.value=e,placeholder:l.$t(`poivelle.discovery.placeholder`),disabled:M.value,maxlength:`500`,rows:`4`},null,8,et),[[h,S.value]]),e(`div`,tt,[e(`span`,null,i(S.value.length)+`/500`,1),e(`button`,{type:`submit`,disabled:!S.value.trim()||!ie.value||M.value||O.value,title:l.$t(`poivelle.discovery.create`)},[O.value?(T(),y(s(he),{key:0,size:18,class:`spinning`,"aria-hidden":`true`})):(T(),y(s(V),{key:1,size:18,"aria-hidden":`true`}))],8,nt)])],32),e(`div`,rt,[(T(),c(f,null,C(j,t=>e(`button`,{key:t,type:`button`,disabled:M.value,onClick:e=>S.value=l.$t(t)},i(l.$t(t)),9,it)),64))])]),e(`section`,at,[e(`div`,ot,[e(`div`,null,[e(`span`,null,i(l.$t(`poivelle.discovery.galleryKicker`)),1),e(`h2`,st,i(l.$t(`poivelle.discovery.gallery`)),1)]),e(`label`,ct,[a(s(be),{size:16,"aria-hidden":`true`}),_(e(`input`,{"onUpdate:modelValue":u[1]||=e=>D.value=e,placeholder:l.$t(`poivelle.discovery.search`),"aria-label":l.$t(`poivelle.discovery.search`)},null,8,lt),[[h,D.value]])])]),e(`div`,ut,[(T(),c(f,null,C(ne,t=>e(`button`,{key:t.value,type:`button`,class:n({active:A.value===t.value}),onClick:e=>A.value=t.value},i(l.$t(t.label)),11,dt)),64))]),e(`div`,ft,[(T(!0),c(f,null,C(re.value,t=>(T(),c(`article`,{key:t.id,class:`work-card`},[e(`div`,pt,[t.cover_url&&!ee.value.has(t.id)?(T(),c(`img`,{key:0,src:t.cover_url,alt:t.title,loading:`lazy`,onError:e=>F(t.id)},null,40,mt)):(T(),y(s(Re),{key:1,size:32,"aria-hidden":`true`})),e(`span`,null,i(t.duration_seconds?`${t.duration_seconds}s`:l.$t(`poivelle.discovery.community`)),1)]),e(`div`,ht,[e(`div`,gt,[e(`span`,null,i(t.creator_name),1),e(`strong`,null,i(t.title),1),e(`p`,null,i(t.description),1)]),e(`button`,{type:`button`,disabled:M.value||O.value,onClick:e=>I(t)},[a(s(fe),{size:14,"aria-hidden":`true`}),r(` `+i(l.$t(`poivelle.discovery.copy`)),1)],8,_t)])]))),128))])])]))}}),[[`__scopeId`,`data-v-d0d58a50`]]),yt={class:`studio-header`},bt={class:`identity`},xt=[`title`],St={class:`wordmark`},Ct={key:0,class:`version`},wt={class:`actions`},Tt={class:`sync-state`},Et=[`title`],Dt=[`disabled`],Ot=J(D({__name:`StudioHeader`,props:{projectTitle:{},graphVersion:{},canRun:{type:Boolean},canEdit:{type:Boolean}},emits:[`open-projects`,`home`,`commit`,`run`],setup(t){return(n,l)=>(T(),c(`header`,yt,[e(`div`,bt,[e(`button`,{class:`home-button`,type:`button`,title:n.$t(`poivelle.discovery.back`),onClick:l[0]||=e=>n.$emit(`home`)},[a(s(B),{size:16,"aria-hidden":`true`})],8,xt),e(`span`,St,[a(s(Q),{size:15,"aria-hidden":`true`}),l[4]||=r(` POIVELLE`,-1)]),e(`button`,{class:`project-button`,type:`button`,onClick:l[1]||=e=>n.$emit(`open-projects`)},[e(`span`,null,i(t.projectTitle||n.$t(`poivelle.project.noProject`)),1),a(s(U),{size:14,"aria-hidden":`true`})]),t.graphVersion===void 0?o(``,!0):(T(),c(`span`,Ct,`Graph v`+i(t.graphVersion),1))]),e(`div`,wt,[e(`span`,Tt,[l[5]||=e(`span`,{class:`sync-dot`},null,-1),r(` `+i(n.$t(`poivelle.status.synced`)),1)]),t.canEdit?(T(),c(`button`,{key:0,class:`icon-button`,type:`button`,title:n.$t(`poivelle.action.commit`),onClick:l[2]||=e=>n.$emit(`commit`)},[a(s(ze),{size:17,"aria-hidden":`true`})],8,Et)):o(``,!0),e(`button`,{class:`primary-button`,type:`button`,disabled:!t.canRun,onClick:l[3]||=e=>n.$emit(`run`)},[a(s(ve),{size:15,fill:`currentColor`,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.action.runSkill`)),1)],8,Dt)])]))}}),[[`__scopeId`,`data-v-8329a116`]]),kt={class:`production-rail`},At={class:`rail-section`},jt={class:`section-heading`},Mt=[`title`],Nt={class:`project-list`},Pt=[`onClick`],Ft={key:0,class:`empty-copy`},It={class:`rail-section assets-section`},Lt={class:`section-heading`},Rt=[`title`],zt={class:`asset-filters`},Bt=[`onClick`],Vt={class:`asset-list`},Ht={key:0,class:`empty-copy`},Ut={class:`rail-section compact-section`},Wt={class:`section-heading static`},Gt={class:`revision-list`},Kt={key:0,class:`empty-copy`},qt=J(D({__name:`ProductionRail`,props:{projects:{},currentProjectId:{},assets:{},revisions:{},canEdit:{type:Boolean}},emits:[`select-project`,`create-project`,`import-asset`],setup(t){let r=t,l=[`all`,`character`,`location`,`image`,`video`,`voice`],u=E(`all`),d=b(()=>u.value===`all`?r.assets:r.assets.filter(e=>e.kind===u.value)),p=e=>e===`video`?Te:e===`voice`||e===`music`||e===`sfx`?Fe:e===`script`||e===`brand`?K:me;return(r,m)=>(T(),c(`aside`,kt,[e(`div`,At,[e(`div`,jt,[e(`span`,null,i(r.$t(`poivelle.section.projects`)),1),t.canEdit?(T(),c(`button`,{key:0,type:`button`,title:r.$t(`poivelle.project.create`),onClick:m[0]||=e=>r.$emit(`create-project`)},[a(s(ye),{size:15,"aria-hidden":`true`})],8,Mt)):o(``,!0)]),e(`div`,Nt,[(T(!0),c(f,null,C(t.projects,o=>(T(),c(`button`,{key:o.id,type:`button`,class:n([`project-row`,{active:o.id===t.currentProjectId}]),onClick:e=>r.$emit(`select-project`,o.id)},[a(s(Q),{size:15,"aria-hidden":`true`}),e(`span`,null,i(o.title),1),e(`small`,null,`v`+i(o.graph_version),1)],10,Pt))),128)),t.projects.length?o(``,!0):(T(),c(`p`,Ft,i(r.$t(`poivelle.project.empty`)),1))])]),e(`div`,It,[e(`div`,Lt,[e(`span`,null,i(r.$t(`poivelle.section.assets`)),1),t.canEdit?(T(),c(`button`,{key:0,type:`button`,title:r.$t(`poivelle.asset.import`),onClick:m[1]||=e=>r.$emit(`import-asset`)},[a(s(we),{size:15,"aria-hidden":`true`})],8,Rt)):o(``,!0)]),e(`div`,zt,[(T(),c(f,null,C(l,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,Bt)),64))]),e(`div`,Vt,[(T(!0),c(f,null,C(d.value,t=>(T(),c(`button`,{key:t.id,type:`button`,class:`asset-row`},[(T(),y(w(p(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?o(``,!0):(T(),c(`p`,Ht,i(r.$t(`poivelle.asset.empty`)),1))])]),e(`div`,Ut,[e(`div`,Wt,[e(`span`,null,i(r.$t(`poivelle.section.revisions`)),1),a(s(pe),{size:14,"aria-hidden":`true`})]),e(`div`,Gt,[(T(!0),c(f,null,C(t.revisions.slice(0,4),t=>(T(),c(`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?o(``,!0):(T(),c(`p`,Kt,i(r.$t(`poivelle.revision.empty`)),1))])])]))}}),[[`__scopeId`,`data-v-24e37657`]]),Jt=[`aria-label`],Yt=[`onClick`],Xt=J(D({__name:`ProjectionTabs`,props:{modelValue:{},canEdit:{type:Boolean}},emits:[`update:modelValue`,`create-node`],setup(t){let l=[{value:`canvas`,label:`poivelle.projection.canvas`,icon:Be},{value:`storyboard`,label:`poivelle.projection.storyboard`,icon:Q},{value:`timeline`,label:`poivelle.projection.timeline`,icon:Ue},{value:`review`,label:`poivelle.projection.review`,icon:Ve}];return(u,d)=>(T(),c(`nav`,{class:`projection-tabs`,"aria-label":u.$t(`poivelle.projection.label`)},[(T(),c(f,null,C(l,a=>e(`button`,{key:a.value,type:`button`,class:n({active:t.modelValue===a.value}),onClick:e=>u.$emit(`update:modelValue`,a.value)},[(T(),y(w(a.icon),{size:14,"aria-hidden":`true`})),r(` `+i(u.$t(a.label)),1)],10,Yt)),64)),d[1]||=e(`span`,{class:`spacer`},null,-1),t.canEdit?(T(),c(`button`,{key:0,class:`add-node`,type:`button`,onClick:d[0]||=e=>u.$emit(`create-node`)},[a(s(ye),{size:14,"aria-hidden":`true`}),r(` `+i(u.$t(`poivelle.node.create`)),1)])):o(``,!0)],8,Jt))}}),[[`__scopeId`,`data-v-bea5d208`]]),Zt={class:`connections`,"aria-hidden":`true`},Qt=[`x1`,`y1`,`x2`,`y2`],$t=[`onClick`],en={class:`node-type`},tn={class:`node-summary`},nn={key:0,class:`lock-mark`},rn={key:0,class:`empty-canvas`},an=J(D({__name:`GraphCanvas`,props:{graph:{},selectedNodeId:{},canEdit:{type:Boolean}},emits:[`select-node`,`create-node`],setup(l){let u=l,d=b(()=>new Map(u.graph.layouts.map(e=>[e.node_id,e]))),p=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)??p(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`}},_=b(()=>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)=>(T(),c(`div`,{class:`graph-canvas`,onClick:d[1]||=t(e=>u.$emit(`select-node`,void 0),[`self`])},[(T(),c(`svg`,Zt,[(T(!0),c(f,null,C(_.value,e=>(T(),c(`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,Qt))),128))])),(T(!0),c(f,null,C(l.graph.nodes,f=>(T(),c(`button`,{key:f.id,type:`button`,class:n([`graph-node`,`type-${f.node_type}`,{selected:f.id===l.selectedNodeId}]),style:S(g(f.id)),onClick:t(e=>u.$emit(`select-node`,f.id),[`stop`])},[e(`span`,en,i(f.node_type),1),e(`strong`,null,i(f.title),1),e(`span`,tn,i(v(f)),1),f.locked_paths.length?(T(),c(`span`,nn,[a(s(He),{size:11}),d[2]||=r(` locked`,-1)])):o(``,!0)],14,$t))),128)),l.graph.nodes.length?o(``,!0):(T(),c(`div`,rn,[a(s(Be),{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),l.canEdit?(T(),c(`button`,{key:0,type:`button`,onClick:d[0]||=e=>u.$emit(`create-node`)},[a(s(ye),{size:15,"aria-hidden":`true`}),r(` `+i(u.$t(`poivelle.node.create`)),1)])):o(``,!0)]))]))}}),[[`__scopeId`,`data-v-cd67c1fc`]]),on={class:`media-lane`},sn={key:0,class:`candidate-strip`},cn=[`src`],ln=[`src`],un=[`onClick`],dn={key:1},fn=[`onClick`],pn={key:1,class:`unavailable-takes`},mn={key:2,class:`empty-candidates`},hn=J(D({__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=b(()=>{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]}),s=b(()=>r.takes.filter(e=>r.nodeIds.includes(e.target_node_id)&&e.state!==`ready`)),l=E([]),u=e=>{l.value=l.value.includes(e)?l.value.filter(t=>t!==e):[...l.value.slice(-1),e]};return(r,d)=>(T(),c(`section`,on,[e(`header`,null,[e(`span`,null,i(t.title),1),t.nodeIds[0]?(T(),c(`button`,{key:0,type:`button`,onClick:d[0]||=e=>r.$emit(`select-node`,t.nodeIds[0])},i(r.$t(`poivelle.storyboard.openNode`)),1)):o(``,!0)]),a.value.length?(T(),c(`div`,sn,[(T(!0),c(f,null,C(a.value,a=>(T(),c(`article`,{key:a.key,class:n([`candidate`,{selected:a.selected,comparing:l.value.includes(a.key)}])},[t.kind===`image`?(T(),c(`img`,{key:0,src:a.artifact.storage_url,alt:``},null,8,cn)):(T(),c(`video`,{key:1,src:a.artifact.storage_url,controls:``,preload:`metadata`},null,8,ln)),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?(T(),c(`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,un)):a.selected?(T(),c(`em`,dn,i(r.$t(`poivelle.storyboard.selected`)),1)):o(``,!0),e(`button`,{type:`button`,class:`compare-toggle`,onClick:e=>u(a.key)},i(l.value.includes(a.key)?r.$t(`poivelle.storyboard.comparing`):r.$t(`poivelle.storyboard.compare`)),9,fn)])],2))),128))])):o(``,!0),s.value.length?(T(),c(`div`,pn,[(T(!0),c(f,null,C(s.value,e=>(T(),c(`span`,{key:e.id},i(e.state===`failed`?r.$t(`poivelle.storyboard.failedTake`):r.$t(`poivelle.storyboard.restrictedTake`)),1))),128))])):o(``,!0),!a.value.length&&!s.value.length?(T(),c(`div`,mn,i(r.$t(`poivelle.storyboard.noCandidates`)),1)):o(``,!0)]))}}),[[`__scopeId`,`data-v-4e385f6a`]]),gn={class:`storyboard-view`},_n={key:0,class:`storyboard-heading`},vn={class:`section-label`},yn=[`onClick`],bn={class:`shot-number`},xn={class:`shot-production`},Sn={class:`shot-metadata`},Cn={class:`prompt-columns`},wn={class:`candidate-columns`},Tn=[`onClick`],En={key:0,class:`empty-view`},Dn=J(D({__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,l=b(()=>r.storyboard?.sections.reduce((e,t)=>e+t.shots.length,0)??0),u=b(()=>r.graph.nodes.filter(e=>[`storyboard`,`scene`,`shot`,`image`,`video`].includes(e.node_type)));return(r,d)=>(T(),c(`div`,gn,[t.storyboard?(T(),c(`header`,_n,[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(l.value),1)])])])):o(``,!0),t.storyboard?(T(!0),c(f,{key:1},C(t.storyboard.sections,o=>(T(),c(`section`,{key:o.id,class:`story-section`},[e(`div`,vn,[e(`span`,null,i(String(o.order).padStart(2,`0`)),1),e(`h3`,null,i(o.title),1)]),(T(!0),c(f,null,C(o.shots,o=>(T(),c(`article`,{key:o.row.id,class:n([`shot-row`,{selected:o.shot_node_id===t.selectedNodeId}])},[e(`button`,{class:`shot-brief`,type:`button`,onClick:e=>r.$emit(`select-node`,o.shot_node_id)},[e(`span`,bn,`SHOT `+i(String(o.row.shot_number).padStart(2,`0`)),1),e(`strong`,null,i(o.row.plot_description),1),e(`span`,null,i(o.row.duration_seconds)+`s · `+i(o.row.shot_size),1)],8,yn),e(`div`,xn,[e(`dl`,Sn,[e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.action`)),1),e(`dd`,null,i(o.row.character_action||`—`),1)]),e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.emotion`)),1),e(`dd`,null,i(o.row.emotion||`—`),1)]),e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.lighting`)),1),e(`dd`,null,i(o.row.lighting_and_atmosphere),1)]),e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.audio`)),1),e(`dd`,null,i(o.row.audio_effects),1)])]),e(`div`,Cn,[e(`div`,null,[e(`span`,null,i(r.$t(`poivelle.storyboard.imagePrompt`)),1),e(`p`,null,i(o.row.image_generation_prompt),1)]),e(`div`,null,[e(`span`,null,i(r.$t(`poivelle.storyboard.motionPrompt`)),1),e(`p`,null,i(o.row.video_motion_prompt),1)])])]),e(`div`,wn,[a(hn,{title:r.$t(`poivelle.storyboard.frames`),kind:`image`,"node-ids":o.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`]),a(hn,{title:r.$t(`poivelle.storyboard.motion`),kind:`video`,"node-ids":o.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)):(T(),c(f,{key:2},[(T(!0),c(f,null,C(u.value,(o,l)=>(T(),c(`button`,{key:o.id,type:`button`,class:n([`legacy-card`,{selected:o.id===t.selectedNodeId}]),onClick:e=>r.$emit(`select-node`,o.id)},[e(`span`,null,i(String(l+1).padStart(2,`0`)),1),a(s(Q),{size:26,"stroke-width":`1.25`,"aria-hidden":`true`}),e(`strong`,null,i(o.title),1)],10,Tn))),128)),u.value.length?o(``,!0):(T(),c(`div`,En,[a(s(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`]]),On={class:`timeline-view`},kn={key:0,class:`master-output`,"aria-labelledby":`poivelle-master-title`},An={class:`master-heading`},jn={class:`master-kicker`},Mn={id:`poivelle-master-title`},Nn=[`href`],Pn=[`src`,`aria-label`],Fn={key:0,class:`master-status`,role:`status`},In={key:1,class:`master-status is-error`,role:`alert`},Ln={class:`master-metadata`},Rn={class:`timeline-ruler`},zn={key:1,class:`tracks`},Bn={class:`track-label`},Vn={class:`track-lane`},Hn=[`title`],Un=[`aria-label`],Wn={key:0,class:`clip-actions`},Gn=[`disabled`,`onClick`],Kn=[`disabled`,`onClick`],qn={key:2,class:`empty-timeline`},Jn=120/5e3,Yn=J(D({__name:`TimelineView`,props:{timeline:{},graph:{},artifacts:{},canEdit:{type:Boolean}},emits:[`move-clip`],setup(t){let n=t,l=b(()=>{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=E(!0),d=E(!1);g(()=>l.value?.id,()=>{u.value=!0,d.value=!1});let p=()=>{u.value=!0,d.value=!1},m=()=>{u.value=!1,d.value=!0},h=e=>{let t=l.value?.metadata?.[e];return typeof t==`number`&&Number.isFinite(t)?t:void 0},_=b(()=>{let e=h(`duration_ms`);return e===void 0?`—`:`${(e/1e3).toFixed(1)}s`}),v=b(()=>{let e=h(`width`),t=h(`height`);return e&&t?`${e} × ${t}`:`—`}),y=b(()=>{let e=h(`width`),t=h(`height`);return e&&t?{aspectRatio:`${e} / ${t}`}:void 0}),x=e=>n.timeline?.clips.filter(t=>t.track_id===e)??[],w=e=>e.artifact_id.slice(-6),D=e=>({left:`${e.timeline_start_ms*Jn}px`,width:`${Math.max(48,(e.source_out_ms-e.source_in_ms)/(e.speed??1)*Jn)}px`});return(n,g)=>(T(),c(`div`,On,[l.value?(T(),c(`section`,kn,[e(`div`,An,[e(`div`,null,[e(`span`,jn,i(n.$t(`poivelle.timeline.deliverable`)),1),e(`h2`,Mn,i(n.$t(`poivelle.timeline.masterTitle`)),1)]),e(`a`,{class:`master-download`,href:l.value.storage_url,target:`_blank`,rel:`noopener noreferrer`,download:``},[a(s(G),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.timeline.download`)),1)],8,Nn)]),e(`div`,{class:`master-media`,style:S(y.value)},[e(`video`,{class:`master-player`,src:l.value.storage_url,"aria-label":n.$t(`poivelle.timeline.playerLabel`),controls:``,playsinline:``,preload:`metadata`,onLoadstart:p,onLoadedmetadata:g[0]||=e=>u.value=!1,onCanplay:g[1]||=e=>u.value=!1,onError:m},null,40,Pn),u.value&&!d.value?(T(),c(`div`,Fn,[a(s(he),{size:24,class:`is-spinning`,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.timeline.loading`)),1)])):o(``,!0),d.value?(T(),c(`div`,In,[a(s(Ce),{size:24,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.timeline.loadError`)),1)])):o(``,!0)],4),e(`dl`,Ln,[e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.duration`)),1),e(`dd`,null,i(_.value),1)]),e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.frame`)),1),e(`dd`,null,i(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)])])])):o(``,!0),e(`div`,Rn,[(T(),c(f,null,C(10,t=>e(`span`,{key:t},i((t-1)*5)+`s`,1)),64))]),t.timeline?.tracks.length?(T(),c(`div`,zn,[(T(!0),c(f,null,C(t.timeline.tracks,r=>(T(),c(`div`,{key:r.id,class:`track-row`},[e(`div`,Bn,i(r.title||r.kind||r.id),1),e(`div`,Vn,[(T(!0),c(f,null,C(x(r.id),(a,s)=>(T(),c(`div`,{key:a.id,class:`timeline-clip`,style:S(D(a)),title:a.artifact_id},[e(`button`,{type:`button`,"aria-label":a.artifact_id},i(w(a)),9,Un),t.canEdit&&r.kind===`video`?(T(),c(`span`,Wn,[e(`button`,{type:`button`,disabled:s===0,onClick:e=>n.$emit(`move-clip`,{trackId:r.id,clipId:a.id,direction:-1})},` ‹ `,8,Gn),e(`button`,{type:`button`,disabled:s===x(r.id).length-1,onClick:e=>n.$emit(`move-clip`,{trackId:r.id,clipId:a.id,direction:1})},` › `,8,Kn)])):o(``,!0)],12,Hn))),128))])]))),128))])):(T(),c(`div`,qn,[a(s(Re),{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`]]),Xn={class:`review-view`},Zn={class:`review-summary`},Qn={class:`eyebrow`},$n={class:`summary-metrics`},er={class:`review-columns`},tr={key:0,class:`item-actions`},nr=[`onClick`],rr={key:0,class:`empty-copy`},ir=[`onClick`],ar=[`onClick`],or={key:0,class:`empty-copy`},sr={key:1,class:`run-detail`},cr={key:0},lr=[`onClick`],ur={key:2,class:`forensic-failures`,role:`alert`},dr=J(D({__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 s=a,l=b(()=>s.proposals.filter(e=>e.state===`awaiting_approval`)),u=e=>![`release_pending`,`succeeded`,`failed`,`cancelled`].includes(e.state),d=b(()=>s.evaluations.filter(e=>e.verdict===`pass`).length),p=b(()=>s.forensicValidations[0]),m=b(()=>p.value?.result.checks.filter(e=>e.verdict===`fail`)??[]),h=e=>[...s.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(s,_)=>(T(),c(`div`,Xn,[e(`section`,Zn,[e(`div`,null,[e(`span`,Qn,i(s.$t(`poivelle.review.heading`)),1),e(`h2`,null,i(a.revisions.length?`Revision ${a.revisions[0].revision_number}`:s.$t(`poivelle.review.noRevision`)),1)]),e(`div`,$n,[e(`span`,null,[e(`strong`,null,i(a.graph.nodes.length),1),r(i(s.$t(`poivelle.review.nodes`)),1)]),e(`span`,null,[e(`strong`,null,i(a.proposals.length),1),r(i(s.$t(`poivelle.review.proposals`)),1)]),e(`span`,null,[e(`strong`,null,i(a.runs.length),1),r(i(s.$t(`poivelle.review.runs`)),1)]),e(`span`,null,[e(`strong`,null,i(g(a.costs?.totals_microcredits.final??0)),1),r(i(s.$t(`poivelle.review.finalCost`)),1)]),e(`span`,null,[e(`strong`,null,i(d.value)+`/`+i(a.evaluations.length),1),r(i(s.$t(`poivelle.review.qualityChecks`)),1)]),e(`span`,null,[e(`strong`,{class:n(p.value?.result.verdict===`fail`?`metric-fail`:``)},i(p.value?.result.verdict??`—`),3),r(i(s.$t(`poivelle.review.forensics`)),1)])])]),e(`section`,er,[e(`div`,null,[e(`h3`,null,i(s.$t(`poivelle.review.pendingProposals`)),1),(T(!0),c(f,null,C(l.value,t=>(T(),c(`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?(T(),c(`div`,tr,[e(`span`,null,i(s.$t(`poivelle.review.approvalTokenRequired`)),1),e(`button`,{type:`button`,onClick:e=>s.$emit(`reject-proposal`,t.id)},i(s.$t(`poivelle.review.reject`)),9,nr)])):o(``,!0)]))),128)),l.value.length?o(``,!0):(T(),c(`p`,rr,i(s.$t(`poivelle.review.noProposals`)),1))]),e(`div`,null,[e(`h3`,null,i(s.$t(`poivelle.review.execution`)),1),(T(!0),c(f,null,C(a.runs,r=>(T(),c(`article`,{key:r.id,class:n([`run-item`,{active:a.activeRun?.run.id===r.id}]),onClick:e=>s.$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)?(T(),c(`button`,{key:0,type:`button`,class:`cancel-run`,onClick:t(e=>s.$emit(`cancel-run`,r.id),[`stop`])},i(s.$t(`poivelle.run.cancel`)),9,ar)):o(``,!0)],10,ir))),128)),a.runs.length?o(``,!0):(T(),c(`p`,or,i(s.$t(`poivelle.review.noRuns`)),1)),a.activeRun?(T(),c(`section`,sr,[e(`header`,null,[e(`strong`,null,i(s.$t(`poivelle.review.runDetail`)),1),e(`span`,null,i(a.activeRun.attempts.length)+` `+i(s.$t(`poivelle.review.attempts`)),1)]),(T(!0),c(f,null,C(a.activeRun.steps,r=>(T(),c(`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?(T(),c(`p`,cr,i(h(r.id)?.error?.code??`provider_error`)+`: `+i(h(r.id)?.error?.message??s.$t(`poivelle.error.generic`)),1)):o(``,!0)]),a.canEdit&&[`failed`,`manual_recovery`].includes(r.state)?(T(),c(`button`,{key:0,type:`button`,class:`retry-step`,onClick:t(e=>s.$emit(`retry-step`,r),[`stop`])},i(s.$t(`poivelle.review.retryStep`)),9,lr)):o(``,!0)]))),128))])):o(``,!0),m.value.length?(T(),c(`section`,ur,[e(`strong`,null,i(s.$t(`poivelle.review.forensics`)),1),(T(!0),c(f,null,C(m.value,e=>(T(),c(`p`,{key:e.code},i(e.code)+` · `+i(String(e.actual??`—`))+` / `+i(String(e.expected??`—`)),1))),128))])):o(``,!0)])])]))}}),[[`__scopeId`,`data-v-e66361d5`]]),fr={class:`inspector-panel`},pr={class:`inspector-heading`},mr={class:`field`},hr={class:`field`},gr=[`value`],_r={class:`field grow`},vr={class:`node-meta`},yr={key:1,class:`empty-inspector`},br=J(D({__name:`InspectorPanel`,props:{node:{}},emits:[`update`,`delete`],setup(t,{emit:n}){let o=t,l=n,d=E(``),p=E(``);g(()=>o.node,e=>{d.value=e?.title??``;let t=e?.payload.prompt??e?.payload.text??``;p.value=typeof t==`string`?t:``},{immediate:!0});let m=b(()=>o.node?o.node.node_type===`video`?Te:o.node.node_type===`audio`?Fe:[`shot`,`scene`,`storyboard`].includes(o.node.node_type)?Q:[`image`,`character`,`location`].includes(o.node.node_type)?me:o.node.node_type===`script`||o.node.node_type===`text`?K:H:ge),v=()=>{let e=d.value.trim();o.node&&e&&e!==o.node.title&&l(`update`,{path:`/title`,value:e})},x=()=>{if(!o.node)return;let e=o.node.payload.prompt===void 0?`text`:`prompt`;p.value!==o.node.payload[e]&&l(`update`,{path:`/payload/${e}`,value:p.value})};return(n,o)=>(T(),c(`aside`,fr,[e(`div`,pr,[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)]),(T(),y(w(m.value),{size:18,"aria-hidden":`true`}))]),t.node?(T(),c(f,{key:0},[e(`label`,mr,[e(`span`,null,i(n.$t(`poivelle.field.title`)),1),_(e(`input`,{"onUpdate:modelValue":o[0]||=e=>d.value=e,type:`text`,onBlur:v,onKeydown:u(v,[`enter`])},null,544),[[h,d.value]])]),e(`label`,hr,[e(`span`,null,i(n.$t(`poivelle.field.type`)),1),e(`input`,{value:t.node.node_type,type:`text`,disabled:``},null,8,gr)]),e(`label`,_r,[e(`span`,null,i(n.$t(`poivelle.field.prompt`)),1),_(e(`textarea`,{"onUpdate:modelValue":o[1]||=e=>p.value=e,rows:`8`,onBlur:x},null,544),[[h,p.value]])]),e(`div`,vr,[o[3]||=e(`span`,null,`NODE`,-1),e(`code`,null,i(t.node.id),1),o[4]||=e(`span`,null,`VERSION`,-1),e(`code`,null,i(t.node.version),1)]),e(`button`,{class:`danger-button`,type:`button`,onClick:o[2]||=e=>n.$emit(`delete`)},[a(s(Se),{size:14,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.node.delete`)),1)])],64)):(T(),c(`div`,yr,[a(s(ge),{size:24,"stroke-width":`1.4`}),e(`p`,null,i(n.$t(`poivelle.inspector.empty`)),1)]))]))}}),[[`__scopeId`,`data-v-7a6ae318`]]),xr={class:`agent-dock`},Sr={class:`agent-identity`},Cr={class:`proposal-strip`},wr=[`onClick`],Tr={key:0},Er=[`disabled`],Dr=J(D({__name:`AgentDock`,props:{proposals:{},selectedNodeId:{},skill:{},canEdit:{type:Boolean}},emits:[`run`,`open-proposal`],setup(t){let l=t,u=b(()=>l.proposals.filter(e=>e.state===`awaiting_approval`));return(l,d)=>(T(),c(`section`,xr,[e(`div`,Sr,[a(s(Ie),{size:16,"aria-hidden":`true`}),e(`div`,null,[e(`strong`,null,i(l.$t(`poivelle.agent.title`)),1),e(`span`,null,i(t.skill),1)])]),e(`div`,Cr,[(T(!0),c(f,null,C(u.value,t=>(T(),c(`button`,{key:t.id,type:`button`,onClick:e=>l.$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,wr))),128)),u.value.length?o(``,!0):(T(),c(`p`,Tr,i(l.$t(`poivelle.agent.noProposals`)),1))]),t.canEdit?(T(),c(`button`,{key:0,class:`agent-button`,type:`button`,disabled:!t.selectedNodeId,onClick:d[0]||=e=>l.$emit(`run`)},[a(s(xe),{size:15,"aria-hidden":`true`}),r(` `+i(l.$t(`poivelle.agent.plan`)),1)],8,Er)):o(``,!0)]))}}),[[`__scopeId`,`data-v-81fac9f8`]]),Or={class:`poivelle-studio`},kr={key:0,class:`error-banner`},Ar={key:1,class:`loading-state`},jr={key:2,class:`studio-body`},Mr={class:`projection-workspace`},Nr={class:`projection-content`},Pr={key:3,class:`onboarding`},Fr={key:0,class:`dry-run-summary`},Ir={class:`dry-run-note`},Lr=J(D({__name:`StudioWorkspace`,emits:[`back-home`],setup(n){let u=ke(),p=b(()=>u.state.poivelle),m=b(()=>p.value?.workspaces??[]),h=b(()=>p.value?.projects??[]),g=b(()=>p.value?.graph),_=b(()=>p.value?.assets??[]),v=b(()=>p.value?.artifacts??[]),S=b(()=>p.value?.takes??[]),w=b(()=>p.value?.selections??[]),D=b(()=>p.value?.storyboard),O=b(()=>p.value?.revisions??[]),ee=b(()=>p.value?.proposals??[]),k=b(()=>p.value?.runs??[]),A=b(()=>p.value?.activeRun),te=b(()=>p.value?.evaluations??[]),j=b(()=>p.value?.forensicValidations??[]),ne=b(()=>p.value?.costs),re=b(()=>p.value?.timeline),M=b(()=>p.value?.projection??`canvas`),N=b(()=>p.value?.selectedNodeId),ie=b(()=>g.value?.nodes.find(e=>e.id===N.value)),P=b(()=>h.value.find(e=>e.id===p.value?.currentProjectId)),F=b(()=>[`owner`,`producer`,`director`,`editor`].includes(p.value?.currentMembership?.role??``)),ae=b(()=>p.value?.dryRun),oe=b(()=>p.value?.error),se=b(()=>[p.value?.status?.bootstrap,p.value?.status?.graph].includes(Oe.Request)),L=E(!1),ue=E(!1),z=E(!1),B=E(!1),V=E(!1),H=E(!1),U=d({name:``,monthly_limit_microcredits:void 0}),W=d({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`}),fe=[{label:q(`poivelle.project.blankWorkflow`),value:`blank`},{label:q(`poivelle.project.commercialTVC`),value:`commercial_tvc`}],G=d({node_type:`scene`,title:``,prompt:``}),K=d({title:``,kind:`image`,source_url:``,content_hash:``}),pe=[`script`,`character`,`location`,`prop`,`storyboard`,`scene`,`shot`,`image`,`video`,`audio`,`subtitle`,`composition`,`output`,`note`],me=[`character`,`location`,`prop`,`image`,`video`,`voice`,`music`,`sfx`,`brand`],ge=()=>u.dispatch(`poivelle/bootstrap`),_e=e=>u.dispatch(`poivelle/loadProject`,e),ve=e=>u.dispatch(`poivelle/selectNode`,e),be=e=>u.dispatch(`poivelle/setProjection`,e),xe=()=>{W.workspace_id=p.value?.currentWorkspaceId??m.value[0]?.id??``,z.value=!0},Se=async()=>{U.name.trim()&&await $(async()=>{await u.dispatch(`poivelle/createWorkspace`,{...U,name:U.name.trim()}),ue.value=!1,xe()})},we=async()=>{!W.workspace_id||!W.title.trim()||await $(async()=>{W.workflow===`commercial_tvc`?(await u.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}),be(`storyboard`)):await u.dispatch(`poivelle/createProject`,{workspace_id:W.workspace_id,title:W.title.trim(),skill:W.skill,domain:`film.drama.short`}),z.value=!1,W.title=``})},Te=async()=>{G.title.trim()&&await $(async()=>{await u.dispatch(`poivelle/createNode`,{node_type:G.node_type,title:G.title.trim(),payload:{prompt:G.prompt}}),B.value=!1,G.title=``,G.prompt=``})},J=async()=>{!p.value?.currentWorkspaceId||!K.title||!K.source_url||!K.content_hash||await $(async()=>{await u.dispatch(`poivelle/importAsset`,{...K,project_id:p.value.currentProjectId}),V.value=!1})},Z=e=>u.dispatch(`poivelle/updateSelectedNode`,e),je=async()=>{await De.confirm(q(`poivelle.node.deleteConfirm`),``,{type:`warning`}),await u.dispatch(`poivelle/deleteSelectedNode`)},Me=async()=>{await u.dispatch(`poivelle/commitRevision`,`Studio checkpoint`),Ae.success(q(`poivelle.revision.committed`))},Ne=async()=>{ie.value&&await $(async()=>{await u.dispatch(`poivelle/dryRun`,ie.value?.node_type===`composition`?`compose`:`generate`),H.value=!0})},Fe=async()=>{await $(async()=>{let e=await u.dispatch(`poivelle/confirmDryRun`);H.value=!1,e&&Ae.success(q(`poivelle.run.queued`))})},Ie=e=>{be(`review`),Ae.info(`${q(`poivelle.agent.proposal`)} ${e.slice(-8)}`)},Le=async e=>{await De.confirm(q(`poivelle.review.rejectConfirm`),``,{type:`warning`}),await $(()=>u.dispatch(`poivelle/rejectProposal`,e))},ze=async e=>{await De.confirm(q(`poivelle.run.cancelConfirm`),``,{type:`warning`}),await $(()=>u.dispatch(`poivelle/cancelRun`,e))},Be=e=>$(()=>u.dispatch(`poivelle/loadRun`,e)),Ve=async e=>{await $(async()=>{await u.dispatch(`poivelle/retryStep`,e),H.value=!0})},He=async e=>{if(!re.value)return;let t=re.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 $(()=>u.dispatch(`poivelle/saveTimeline`,{...re.value,clips:t}))},Ue=async e=>{await $(async()=>{await u.dispatch(`poivelle/selectTake`,e),Ae.success(q(`poivelle.storyboard.selectionSaved`))})},We=e=>`${(e/1e6).toFixed(2)} credits`,$=async e=>{L.value=!0;try{await e()}catch(e){Ae.error(e?.response?.data?.detail?.message??e?.response?.data?.detail??e?.message??q(`poivelle.error.generic`))}finally{L.value=!1}};return l(ge),(n,l)=>(T(),c(`main`,Or,[a(Ot,{"project-title":P.value?.title,"graph-version":g.value?.graph_version,"can-run":F.value&&!!ie.value,"can-edit":F.value,onOpenProjects:l[0]||=e=>z.value=!0,onHome:l[1]||=e=>n.$emit(`back-home`),onCommit:Me,onRun:Ne},null,8,[`project-title`,`graph-version`,`can-run`,`can-edit`]),oe.value?(T(),c(`div`,kr,[a(s(Ce),{size:15,"aria-hidden":`true`}),e(`span`,null,i(oe.value),1),e(`button`,{type:`button`,onClick:ge},i(n.$t(`poivelle.action.retry`)),1)])):o(``,!0),se.value&&!g.value?(T(),c(`div`,Ar,[a(s(he),{size:25,class:`is-spinning`,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.status.loading`)),1)])):P.value&&g.value?(T(),c(`div`,jr,[a(qt,{projects:h.value,"current-project-id":P.value.id,assets:_.value,revisions:O.value,"can-edit":F.value,onSelectProject:_e,onCreateProject:xe,onImportAsset:l[2]||=e=>V.value=!0},null,8,[`projects`,`current-project-id`,`assets`,`revisions`,`can-edit`]),e(`section`,Mr,[a(Xt,{"model-value":M.value,"can-edit":F.value,"onUpdate:modelValue":be,onCreateNode:l[3]||=e=>B.value=!0},null,8,[`model-value`,`can-edit`]),e(`div`,Nr,[M.value===`canvas`?(T(),y(an,{key:0,graph:g.value,"selected-node-id":N.value,"can-edit":F.value,onSelectNode:ve,onCreateNode:l[4]||=e=>B.value=!0},null,8,[`graph`,`selected-node-id`,`can-edit`])):M.value===`storyboard`?(T(),y(Dn,{key:1,graph:g.value,storyboard:D.value,artifacts:v.value,takes:S.value,selections:w.value,"selected-node-id":N.value,"can-edit":F.value,"can-select":F.value&&O.value.length>0,onSelectNode:ve,onSelectTake:Ue},null,8,[`graph`,`storyboard`,`artifacts`,`takes`,`selections`,`selected-node-id`,`can-edit`,`can-select`])):M.value===`timeline`?(T(),y(Yn,{key:2,timeline:re.value,graph:g.value,artifacts:v.value,"can-edit":F.value,onMoveClip:He},null,8,[`timeline`,`graph`,`artifacts`,`can-edit`])):(T(),y(dr,{key:3,graph:g.value,proposals:ee.value,revisions:O.value,runs:k.value,"active-run":A.value,evaluations:te.value,"forensic-validations":j.value,costs:ne.value,"can-edit":F.value,onRejectProposal:Le,onCancelRun:ze,onOpenRun:Be,onRetryStep:Ve},null,8,[`graph`,`proposals`,`revisions`,`runs`,`active-run`,`evaluations`,`forensic-validations`,`costs`,`can-edit`]))]),a(Dr,{proposals:ee.value,"selected-node-id":N.value,skill:P.value.active_skill,"can-edit":F.value,onRun:Ne,onOpenProposal:Ie},null,8,[`proposals`,`selected-node-id`,`skill`,`can-edit`])]),F.value?(T(),y(br,{key:0,node:ie.value,onUpdate:Z,onDelete:je},null,8,[`node`])):o(``,!0)])):(T(),c(`section`,Pr,[l[37]||=e(`div`,{class:`onboarding-number`},`01 / STUDIO`,-1),a(s(Re),{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),m.value.length?F.value?(T(),c(`button`,{key:1,type:`button`,onClick:xe},[a(s(Q),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.project.create`)),1)])):o(``,!0):(T(),c(`button`,{key:0,type:`button`,onClick:l[5]||=e=>ue.value=!0},[a(s(ye),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.workspace.create`)),1)]))])),a(s(Ee),{modelValue:ue.value,"onUpdate:modelValue":l[10]||=e=>ue.value=e,title:n.$t(`poivelle.workspace.create`),width:`420px`},{footer:x(()=>[a(s(Y),{onClick:l[9]||=e=>ue.value=!1},{default:x(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),a(s(Y),{type:`primary`,loading:L.value,onClick:Se},{default:x(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:x(()=>[a(s(le),{"label-position":`top`,onSubmit:l[8]||=t(()=>{},[`prevent`])},{default:x(()=>[a(s(R),{label:n.$t(`poivelle.workspace.name`)},{default:x(()=>[a(s(X),{modelValue:U.name,"onUpdate:modelValue":l[6]||=e=>U.name=e,maxlength:`120`,autofocus:``},null,8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.workspace.budget`)},{default:x(()=>[a(s(de),{modelValue:U.monthly_limit_microcredits,"onUpdate:modelValue":l[7]||=e=>U.monthly_limit_microcredits=e,min:0,step:1e6},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),a(s(Ee),{modelValue:z.value,"onUpdate:modelValue":l[21]||=e=>z.value=e,title:n.$t(`poivelle.project.create`),width:`460px`},{footer:x(()=>[a(s(Y),{onClick:l[20]||=e=>z.value=!1},{default:x(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),a(s(Y),{type:`primary`,loading:L.value,onClick:we},{default:x(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:x(()=>[a(s(le),{"label-position":`top`,onSubmit:l[19]||=t(()=>{},[`prevent`])},{default:x(()=>[a(s(R),{label:n.$t(`poivelle.project.workspace`)},{default:x(()=>[a(s(I),{modelValue:W.workspace_id,"onUpdate:modelValue":l[11]||=e=>W.workspace_id=e,style:{width:`100%`}},{default:x(()=>[(T(!0),c(f,null,C(m.value,e=>(T(),y(s(ce),{key:e.id,label:e.name,value:e.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.project.title`)},{default:x(()=>[a(s(X),{modelValue:W.title,"onUpdate:modelValue":l[12]||=e=>W.title=e,maxlength:`200`},null,8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.project.workflow`)},{default:x(()=>[a(s(Pe),{modelValue:W.workflow,"onUpdate:modelValue":l[13]||=e=>W.workflow=e,options:fe,block:``},null,8,[`modelValue`])]),_:1},8,[`label`]),W.workflow===`commercial_tvc`?(T(),c(f,{key:0},[a(s(R),{label:n.$t(`poivelle.project.productName`)},{default:x(()=>[a(s(X),{modelValue:W.product_name,"onUpdate:modelValue":l[14]||=e=>W.product_name=e,maxlength:`120`},null,8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.project.productCategory`)},{default:x(()=>[a(s(X),{modelValue:W.product_category,"onUpdate:modelValue":l[15]||=e=>W.product_category=e,maxlength:`180`},null,8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.project.brandTone`)},{default:x(()=>[a(s(X),{modelValue:W.brand_tone,"onUpdate:modelValue":l[16]||=e=>W.brand_tone=e,type:`textarea`,rows:2,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.project.aspectRatio`)},{default:x(()=>[a(s(Pe),{modelValue:W.aspect_ratio,"onUpdate:modelValue":l[17]||=e=>W.aspect_ratio=e,options:[`16:9`,`9:16`,`1:1`]},null,8,[`modelValue`])]),_:1},8,[`label`])],64)):o(``,!0),a(s(R),{label:n.$t(`poivelle.project.skill`)},{default:x(()=>[W.workflow===`blank`?(T(),y(s(I),{key:0,modelValue:W.skill,"onUpdate:modelValue":l[18]||=e=>W.skill=e,style:{width:`100%`}},{default:x(()=>[a(s(ce),{label:`Short drama · professional`,value:`film.drama.short@1.0.0`}),a(s(ce),{label:`Commercial film · professional`,value:`film.commercial@1.0.0`}),a(s(ce),{label:`Music video · professional`,value:`film.music-video@1.0.0`})]),_:1},8,[`modelValue`])):o(``,!0)]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),a(s(Ee),{modelValue:B.value,"onUpdate:modelValue":l[27]||=e=>B.value=e,title:n.$t(`poivelle.node.create`),width:`460px`},{footer:x(()=>[a(s(Y),{onClick:l[26]||=e=>B.value=!1},{default:x(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),a(s(Y),{type:`primary`,loading:L.value,onClick:Te},{default:x(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:x(()=>[a(s(le),{"label-position":`top`,onSubmit:l[25]||=t(()=>{},[`prevent`])},{default:x(()=>[a(s(R),{label:n.$t(`poivelle.field.type`)},{default:x(()=>[a(s(I),{modelValue:G.node_type,"onUpdate:modelValue":l[22]||=e=>G.node_type=e,style:{width:`100%`}},{default:x(()=>[(T(),c(f,null,C(pe,e=>a(s(ce),{key:e,label:e,value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.field.title`)},{default:x(()=>[a(s(X),{modelValue:G.title,"onUpdate:modelValue":l[23]||=e=>G.title=e,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.field.prompt`)},{default:x(()=>[a(s(X),{modelValue:G.prompt,"onUpdate:modelValue":l[24]||=e=>G.prompt=e,type:`textarea`,rows:5},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),a(s(Ee),{modelValue:V.value,"onUpdate:modelValue":l[34]||=e=>V.value=e,title:n.$t(`poivelle.asset.import`),width:`500px`},{footer:x(()=>[a(s(Y),{onClick:l[33]||=e=>V.value=!1},{default:x(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),a(s(Y),{type:`primary`,loading:L.value,onClick:J},{default:x(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:x(()=>[a(s(le),{"label-position":`top`,onSubmit:l[32]||=t(()=>{},[`prevent`])},{default:x(()=>[a(s(R),{label:n.$t(`poivelle.asset.title`)},{default:x(()=>[a(s(X),{modelValue:K.title,"onUpdate:modelValue":l[28]||=e=>K.title=e,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.field.type`)},{default:x(()=>[a(s(I),{modelValue:K.kind,"onUpdate:modelValue":l[29]||=e=>K.kind=e,style:{width:`100%`}},{default:x(()=>[(T(),c(f,null,C(me,e=>a(s(ce),{key:e,label:e,value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.asset.url`)},{default:x(()=>[a(s(X),{modelValue:K.source_url,"onUpdate:modelValue":l[30]||=e=>K.source_url=e},null,8,[`modelValue`])]),_:1},8,[`label`]),a(s(R),{label:n.$t(`poivelle.asset.hash`)},{default:x(()=>[a(s(X),{modelValue:K.content_hash,"onUpdate:modelValue":l[31]||=e=>K.content_hash=e,placeholder:`sha256:...`},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),a(s(Ee),{modelValue:H.value,"onUpdate:modelValue":l[36]||=e=>H.value=e,title:n.$t(`poivelle.run.confirmTitle`),width:`520px`},{footer:x(()=>[a(s(Y),{onClick:l[35]||=e=>H.value=!1},{default:x(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),a(s(Y),{type:`primary`,loading:L.value,onClick:Fe},{default:x(()=>[r(i(n.$t(`poivelle.run.confirm`)),1)]),_:1},8,[`loading`])]),default:x(()=>[ae.value?(T(),c(`div`,Fr,[e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.targets`)),1),e(`strong`,null,i(ae.value.dependency_closure.length),1)]),e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.maximum`)),1),e(`strong`,null,i(We(ae.value.max_cost_microcredits)),1)]),e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.approval`)),1),e(`strong`,null,i(ae.value.required_approval),1)])])):o(``,!0),e(`p`,Ir,i(n.$t(`poivelle.run.confirmBody`)),1)]),_:1},8,[`modelValue`,`title`])]))}}),[[`__scopeId`,`data-v-1c683780`]]),Rr=D({__name:`Index`,setup(e){let t=E(`discovery`);return(e,n)=>t.value===`discovery`?(T(),y(vt,{key:0,onOpenStudio:n[0]||=e=>t.value=`studio`})):(T(),y(Lr,{key:1,onBackHome:n[1]||=e=>t.value=`discovery`}))}});export{Rr 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,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{t as y}from"./upload-xQzqDpXE.js";import{t as b}from"./tooltip-B6dANNTl.js";import{t as x}from"./alert-B8dZNfxD.js";import{t as S}from"./drawer-q0LTUsZM.js";import{n as C}from"./taskDrawerMixin-CR6eNqfy.js";import{t as w}from"./box-Dxe2PmZz.js";import{t as T}from"./clock-BcdcK_5I.js";import{n as E,r as D,t as O}from"./PromptTextarea-CBVYVrZZ.js";import{t as k}from"./info-Cp6nBEm8.js";import{t as A}from"./triangle-alert-DLNXmngq.js";import{t as j}from"./upload-Bl-8fnQF.js";import{t as M}from"./wand-sparkles-Ds2fUnjm.js";import{Dt as ee,Et as N,St as P,Tt as F,wt as I,xt as L}from"./constants-P5wTiWzI.js";import{Bt as R,E as z,Gt as te,Ht as ne,Mi as B,Ut as V,Vt as H,ai as U,en as W,gr as G,ni as K,vi as q,xn as J}from"./index-B-TI1WPY.js";import{t as Y}from"./CopyToClipboard-98XCpXWu.js";import{t as X}from"./FilePreview-DcPPQkpn.js";import{t as Z}from"./ImagePreview-MJPeBQLg.js";import{t as re}from"./Consumption-B57zHHk_.js";import{a as Q,n as ie,r as ae,t as oe}from"./pagination-DiVQ3E5r.js";import{t as se}from"./VideoPlayer-CLGMPS5K.js";import{t as ce}from"./ApiCodeButton-ClEhPRDG.js";import{t as le}from"./BotPlaceholder-Bmy_QsUF.js";var ue=v({name:`LayoutOmni`,components:{MagicIcon:M,ElDrawer:S,ElButton:B},mixins:[C]}),de={class:`main flex flex-row flex-1`},fe={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},pe={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function me(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,de,[e(`div`,fe,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,pe,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[_,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var he=z(ue,[[`render`,me],[`__scopeId`,`data-v-b76ffabf`]]),ge=v({name:`OmniPromptInput`,components:{PromptTextarea:O},computed:{prompt:{get(){return this.$store.state.omni?.config?.prompt},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,prompt:e})}}},mounted(){this.prompt||=``}});function _e(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`omni.name.prompt`),info:e.$t(`omni.description.prompt`),placeholder:e.$t(`omni.placeholder.prompt`),"min-rows":5},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var ve=z(ge,[[`render`,_e]]),ye=v({name:`OmniResolutionSelector`,components:{InfoIcon:Q},data(){return{options:[{value:ee,label:`720p`},{value:N,label:`1080p`}]}},computed:{value:{get(){return this.$store.state.omni?.config?.resolution},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,resolution:e})}}},mounted(){this.value||=P}}),be={class:`resolution`},xe={class:`header`},Se={class:`title font-bold`},Ce={class:`items`},we=[`onClick`];function Te(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,be,[e(`div`,xe,[e(`h2`,Se,i(t.$t(`omni.name.resolution`)),1),a(p,{content:t.$t(`omni.description.resolution`),class:`info`},null,8,[`content`])]),e(`div`,Ce,[(g(!0),s(c,null,h(t.options,e=>(g(),s(`div`,{key:e.value,class:n([`item`,{active:t.value===e.value}]),onClick:n=>t.value=e.value},i(e.label),11,we))),128))])])}var Ee=z(ye,[[`render`,Te],[`__scopeId`,`data-v-1f9abe29`]]),De=v({name:`OmniRatioSelector`,components:{InfoIcon:Q},computed:{options(){return[{value:I,label:`16:9`,w:32,h:18},{value:F,label:`9:16`,w:18,h:32}]},value:{get(){return this.$store.state.omni?.config?.aspect_ratio},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,aspect_ratio:e})}}},mounted(){this.value||=L}}),Oe={class:`ratio`},ke={class:`header`},Ae={class:`title font-bold`},je={class:`items`},Me=[`onClick`],Ne={class:`preview`},Pe={class:`name`};function Fe(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,Oe,[e(`div`,ke,[e(`h2`,Ae,i(t.$t(`omni.name.ratio`)),1),a(p,{content:t.$t(`omni.description.ratio`),class:`info`},null,8,[`content`])]),e(`div`,je,[(g(!0),s(c,null,h(t.options,r=>(g(),s(`div`,{key:r.value,class:n([`item`,{active:t.value===r.value}]),onClick:e=>t.value=r.value},[e(`div`,Ne,[e(`div`,{class:`rect`,style:m({width:r.w+`px`,height:r.h+`px`})},null,4)]),e(`div`,Pe,i(r.label),1)],10,Me))),128))])])}var Ie=z(De,[[`render`,Fe],[`__scopeId`,`data-v-1c0c1511`]]),Le=4,Re=v({name:`OmniReferenceImagesInput`,components:{ElUpload:y,ElButton:B,InfoIcon:Q,ImagePreview:Z,UploadIcon:j},mixins:[V,H],data(){return{fileList:[],uploadUrl:U()+`/api/v1/files/`,limit:Le,suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)||[]},value(){return this.$store.state.omni?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),this.fileList=t}}},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url==`string`&&e.url.startsWith(`blob:`))try{URL.revokeObjectURL(e.url)}catch{}this.onSetReferenceImages()},onExceed(){q.warning(this.$t(`omni.message.uploadReferenceExceed`))},onError(){q.error(this.$t(`omni.message.uploadError`))},onSetReferenceImages(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,image_urls:e.length?e:void 0}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetReferenceImages()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url==`string`&&t.url.startsWith(`blob:`))try{URL.revokeObjectURL(t.url)}catch{}this.onSetReferenceImages()}}}),ze={class:`field mb-[10px] flex min-h-8 w-full items-center justify-between gap-3`},Be={class:`flex min-w-0 items-center`},Ve={class:`title m-0 text-[14px] font-bold`},He={class:`file-list flex flex-wrap gap-[10px]`};function Ue(t,n,o,u,d,m){let _=l(`info-icon`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`),x=l(`image-preview`);return g(),s(`div`,null,[e(`div`,ze,[e(`div`,Be,[e(`h2`,Ve,i(t.$t(`omni.name.referenceImages`)),1),a(_,{content:t.$t(`omni.description.referenceImages`)},null,8,[`content`])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:t.limit,multiple:!0,"show-file-list":!1,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-change":t.onChange,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(y,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`limit`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])]),e(`div`,He,[(g(!0),s(c,null,h(t.fileList,(e,n)=>(g(),f(x,{key:e.uid||e?.response?.file_url||e.url||n,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:r=>t.onRemovePreview(n,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])])}var We=z(Re,[[`render`,Ue]]),Ge=v({name:`OmniVideoInput`,components:{ElUpload:y,ElButton:B,InfoIcon:Q,FilePreview:X,UploadIcon:j},mixins:[H],data(){return{fileList:[],uploadUrl:U()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},videoUrl(){return this.$store.state.omni?.config?.video_urls?.[0]},videoName(){let e=this.videoUrl||``;return e.split(`/`).pop()||e}},methods:{onExceed(){q.warning(this.$t(`omni.message.uploadVideoExceed`))},onError(){q.error(this.$t(`omni.message.uploadVideoError`))},beforeUpload(e){let t=e.type===`video/mp4`||e.type===`video/quicktime`,n=e.size/1024/1024<200;return t?n?!0:(q.error(this.$t(`omni.message.uploadVideoSizeExceed`)),!1):(q.error(this.$t(`omni.message.uploadVideoTypeFailed`)),!1)},setVideoUrls(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,video_urls:e?[e]:void 0})},onRemove(){this.fileList=[],this.setVideoUrls(void 0)},async onSuccess(e,t){let n=e?.file_url||t?.response?.file_url;this.setVideoUrls(n||void 0)}}}),Ke={class:`field flex min-h-8 w-full items-center justify-between gap-3`},qe={class:`flex min-w-0 items-center`},Je={class:`title m-0 text-[14px] font-bold`},Ye={key:0,class:`file-list flex flex-wrap gap-[10px]`};function Xe(t,n,c,u,d,f){let m=l(`info-icon`),h=l(`upload-icon`),_=l(`el-button`),v=l(`el-upload`),y=l(`file-preview`);return g(),s(`div`,null,[e(`div`,Ke,[e(`div`,qe,[e(`h2`,Je,i(t.$t(`omni.name.referenceVideo`)),1),a(m,{content:t.$t(`omni.description.referenceVideo`)},null,8,[`content`])]),a(v,{"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.mp4,.mov`,name:`file`,class:`value shrink-0`,"show-file-list":!1,limit:1,multiple:!1,action:t.uploadUrl,"before-upload":t.beforeUpload,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{default:p(()=>[a(_,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(h,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.uploadVideo`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`before-upload`,`on-exceed`,`on-error`,`on-success`,`headers`])]),t.videoUrl?(g(),s(`div`,Ye,[a(y,{url:t.videoUrl,name:t.videoName,percentage:100,onRemove:t.onRemove},null,8,[`url`,`name`,`onRemove`])])):o(``,!0)])}var Ze=v({name:`OmniConfigPanel`,components:{ElButton:B,MagicIcon:M,PromptInput:ve,ResolutionSelector:Ee,RatioSelector:Ie,ReferenceImagesInput:We,VideoInput:z(Ge,[[`render`,Xe],[`__scopeId`,`data-v-aaecff18`]]),Consumption:re},emits:[`generate`],computed:{config(){return this.$store.state.omni?.config},consumption(){return te(this.config,this.service?.cost)},service(){return this.$store.state.omni?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),Qe={class:`flex flex-col h-full`},$e={class:`flex-1 overflow-y-auto p-5`},et={class:`flex flex-col items-center justify-center px-5 pb-5`};function tt(t,n,o,c,u,d){let f=l(`prompt-input`),m=l(`ratio-selector`),h=l(`resolution-selector`),_=l(`reference-images-input`),v=l(`video-input`),y=l(`consumption`),b=l(`magic-icon`),x=l(`el-button`);return g(),s(`div`,Qe,[e(`div`,$e,[a(f,{class:`mb-4`}),a(m,{class:`mb-4`}),a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`})]),e(`div`,et,[a(y,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(x,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(b,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.generate`)),1)]),_:1},8,[`onClick`])])])}var nt=z(Ze,[[`render`,tt]]),rt=v({name:`OmniTaskPreview`,components:{ApplicationIcon:w,ChannelIcon:D,CopyToClipboard:Y,ExpandIcon:E,InfoIcon:k,MagicIcon:M,TimeIcon:T,WarningIcon:A,ElAlert:x,VideoPlayer:se,ElTooltip:b,ElButton:B,ImagePreview:Z,ApiCodeButton:ce},props:{modelValue:{type:Object,required:!0}},data(){return{nowTs:Date.now(),timer:0}},computed:{video(){return this.modelValue?.response?.data?.[0]},inputImage(){return this.modelValue?.request?.image_urls?.[0]},pendingElapsed(){let e=parseFloat((this.modelValue?.created_at||``).toString());if(e)return Math.max(0,Math.floor(this.nowTs/1e3-e))}},watch:{"modelValue.response":{handler(e){e&&this.stopTimer()}}},mounted(){this.modelValue?.response||(this.timer=window.setInterval(()=>{this.nowTs=Date.now()},1e3))},beforeUnmount(){this.stopTimer()},methods:{stopTimer(){this.timer&&=(window.clearInterval(this.timer),0)},onDownload(e){window.open(e,`_blank`)}}}),it={class:`preview`},at={class:`left`},ot={class:`main`},st={class:`bot`},ct={class:`datetime`},lt={class:`info`},ut={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},dt={key:1,class:`prompt mt-2`},ft={key:0},pt={key:1},mt={key:0,class:n({content:!0})},ht={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},gt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},_t={key:1,class:n({content:!0})},vt={key:0,class:`mb-4`},yt={key:1,class:n({operations:!0,"mt-2":!0,"mb-2":!0})},bt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},xt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},St={key:0},Ct={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},wt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Tt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Et={key:2,class:n({content:!0})},$={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Dt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ot={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},kt={key:3,class:n({content:!0})},At={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function jt(n,c,u,d,f,m){let h=l(`capability-presentation`),_=l(`image-preview`),v=l(`time-icon`),y=l(`magic-icon`),b=l(`copy-to-clipboard`),x=l(`el-alert`),S=l(`video-player`),C=l(`el-button`),w=l(`el-tooltip`),T=l(`api-code-button`),E=l(`application-icon`),D=l(`expand-icon`),O=l(`channel-icon`),k=l(`warning-icon`),A=l(`info-icon`);return g(),s(`div`,it,[e(`div`,at,[a(h,{capability:`omni`,part:`avatar`,class:`avatar`})]),e(`div`,ot,[e(`div`,st,[a(h,{capability:`omni`,part:`name`}),e(`span`,ct,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1)]),e(`div`,lt,[n.inputImage?(g(),s(`div`,ut,[a(_,{url:n.inputImage,name:`image`,closable:!1},null,8,[`url`])])):o(``,!0),n.modelValue?.request?.prompt?(g(),s(`p`,dt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?n.video?.state===`processing`||n.video?.state===`pending`?(g(),s(`span`,pt,` - (`+i(n.$t(`omni.status.processing`))+`) `,1)):o(``,!0):(g(),s(`span`,ft,` - (`+i(n.$t(`omni.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?n.modelValue?.response?.success===!0?(g(),s(`div`,_t,[n.video?.video_url?(g(),s(`div`,vt,[a(S,{src:n.video?.video_url},null,8,[`src`])])):o(``,!0),n.video?.video_url?(g(),s(`div`,yt,[a(w,{class:`box-item`,effect:`dark`,content:n.$t(`omni.message.downloadVideo`),placement:`top-start`},{default:p(()=>[a(C,{type:`info`,size:`small`,class:`btn-action`,onClick:c[0]||=t(e=>n.onDownload(n.video?.video_url),[`stop`])},{default:p(()=>[r(i(n.$t(`omni.button.download`)),1)]),_:1})]),_:1},8,[`content`]),a(T,{path:`/gemini/videos`,body:n.modelValue?.request},null,8,[`body`])])):o(``,!0),a(x,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(g(),s(`p`,bt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(g(),s(`p`,xt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.resolution`))+`: `+i(n.modelValue?.request?.resolution)+` `,1),n.modelValue?.request?.aspect_ratio?(g(),s(`span`,St,` · `+i(n.modelValue?.request?.aspect_ratio),1)):o(``,!0)])):o(``,!0),e(`p`,Ct,[a(y,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(b,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,wt,[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,Tt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(b,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.modelValue?.response?.success===!1?(g(),s(`div`,Et,[a(x,{closable:!1,class:`failure`},{template:p(()=>[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.failure`)),1)]),default:p(()=>[e(`p`,$,[a(y,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(b,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.response?.error?.message?(g(),s(`p`,Dt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(b,{content:n.modelValue?.response?.error?.message,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,Ot,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(b,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):(g(),s(`div`,kt,[a(x,{closable:!1,class:`info`},{template:p(()=>[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.status`)),1)]),default:p(()=>[e(`p`,At,[a(y,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(b,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])])]),_:1})])):(g(),s(`div`,mt,[a(x,{closable:!1,class:`info`},{template:p(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.status.pending`)),1)]),default:p(()=>[e(`p`,ht,[a(y,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(b,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.pendingElapsed===void 0?o(``,!0):(g(),s(`p`,gt,[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.elapsed`))+`: `+i(n.pendingElapsed)+`s `,1)]))]),_:1})]))])])}var Mt=v({name:`OmniRecentPanel`,components:{TaskPreview:z(rt,[[`render`,jt],[`__scopeId`,`data-v-4cd17d67`]]),BotPlaceholder:le,NoTasks:ae,ScrollList:ie},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.omni?.tasks,items:this.$store.state.omni?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Nt={key:0},Pt={key:2,class:`w-full h-full flex items-center justify-center`};function Ft(e,t,n,r,i,u){let d=l(`bot-placeholder`),m=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return g(),s(c,null,[e.tasks?.items===void 0?(g(),s(`div`,Nt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`tasks w-full h-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(g(!0),s(c,null,h(e.tasks?.items,e=>(g(),f(m,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,Pt,[a(v)])):o(``,!0)],64)}var It=v({name:`OmniIndex`,components:{ConfigPanel:nt,Layout:he,RecentPanel:z(Mt,[[`render`,Ft]])},mixins:[ne],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.omni?.status?.getApplications===K.Request},tasksLoading(){return this.$store.state.omni?.status?.getTasks===K.Request||this.fetchingTasks},credential(){return this.$store.state.omni?.credential},config(){return this.$store.state.omni?.config},tasks(){return this.$store.state.omni?.tasks}},watch:{initialized:{async handler(e){e&&(await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await oe({tasks:this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){await this.$store.dispatch(`omni/getService`)},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch(`omni/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!R(this.uploadTracker,e=>this.$t(e),e=>q.warning(e)))return;let e={...this.config||{}};if(typeof e?.prompt==`string`&&(e.prompt=e.prompt.trim(),e.prompt||delete e.prompt),Array.isArray(e?.image_urls)&&(e.image_urls=e.image_urls.filter(e=>typeof e==`string`&&e.trim()),e.image_urls.length||delete e.image_urls),Array.isArray(e?.video_urls)&&(e.video_urls=e.video_urls.filter(e=>typeof e==`string`&&e.trim()),e.video_urls.length||delete e.video_urls),!e?.prompt){q.warning(this.$t(`omni.message.promptRequired`));return}if(e?.video_urls&&!e?.image_urls){q.warning(this.$t(`omni.message.videoRequiresImage`));return}let t={...e,async:!0};if(!W())return;let n=this.credential?.token;if(!n){console.error(`no token specified`);return}q.info(this.$t(`omni.message.startingTask`)),G(`omni`,J.generate(t,{token:n})).then(()=>{q.success(this.$t(`omni.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;t?.error?.code===`used_up`?q.error(this.$t(`omni.message.usedUp`)):q.error(this.$t(`omni.message.startTaskFailed`)+(t?.error?.message||``))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Lt(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return g(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Rt=z(It,[[`render`,Lt]]);export{Rt as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,Jt as t,L as n,at as r,ht as i,j as a,mt as o,ot as s,tt as c,z as l}from"./vendor-chart-Dw-P17PN.js";import{n as u,t as d}from"./table-
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,Jt as t,L as n,at as r,ht as i,j as a,mt as o,ot as s,tt as c,z as l}from"./vendor-chart-Dw-P17PN.js";import{n as u,t as d}from"./table-B7kafo6x.js";import{t as f}from"./card-D-4S-l7a.js";import{n as p,t as m}from"./row-DjZyv4fI.js";import{t as h}from"./pagination-b510-ovW.js";import{E as g,cr as _}from"./index-B-TI1WPY.js";import{t as v}from"./CopyToClipboard-98XCpXWu.js";var y=l({name:`ConsoleDistributionInvitees`,components:{Pagination:h,CopyToClipboard:v,ElRow:m,ElCol:p,ElTable:d,ElTableColumn:u,ElCard:f},data(){return{invitees:[],loading:!1,total:void 0,limit:10}},computed:{redirect(){return this.$route.query.redirect},page(){return parseInt(this.$route.query.page?.toString()||`1`)}},watch:{page:{handler(){this.onFetchData()}}},mounted(){this.onFetchData()},methods:{onPageChange(e){this.$router.push({name:this.$route.name?.toString(),query:{page:e}})},onFetchData(){this.loading=!0,Promise.all([this.onFetchInvitees()]).finally(()=>{this.loading=!1})},async onFetchInvitees(){let{data:e}=await _.getInvitees({limit:this.limit,offset:(this.page-1)*this.limit,ordering:`-created_at`});this.invitees=e.items,this.total=e.count}}}),b={class:`title`},x={class:`key`},S={class:`copy`},C={class:`description`},w={class:`description`},T={class:`description`},E={class:`created-at`},D={class:`pagination m-v-lg`};function O(l,u,d,f,p,m){let h=r(`el-col`),g=r(`el-row`),_=r(`copy-to-clipboard`),v=r(`el-table-column`),y=r(`el-table`),O=r(`el-card`),k=r(`pagination`),A=s(`loading`);return c(),a(g,{class:`panel`},{default:o(()=>[n(h,{span:24},{default:o(()=>[n(g,null,{default:o(()=>[n(h,{span:24},{default:o(()=>[e(`h2`,b,t(l.$t(`common.title.invitee`)),1)]),_:1})]),_:1}),n(g,null,{default:o(()=>[n(h,{span:24},{default:o(()=>[n(O,{shadow:`hover`},{default:o(()=>[i((c(),a(y,{data:l.invitees,stripe:``},{default:o(()=>[n(v,{prop:`id`,label:l.$t(`user.field.id`),"class-name":`text-center`,width:`350px`},{default:o(r=>[e(`span`,x,t(r.row.id),1),e(`span`,S,[n(_,{content:r.row.id},null,8,[`content`])])]),_:1},8,[`label`]),n(v,{label:l.$t(`user.field.username`),width:`300px`},{default:o(n=>[e(`span`,C,t(n.row?.username),1)]),_:1},8,[`label`]),n(v,{label:l.$t(`user.field.email`),width:`300px`},{default:o(n=>[e(`span`,w,t(n.row?.email),1)]),_:1},8,[`label`]),n(v,{label:l.$t(`user.field.nickname`),width:`200px`},{default:o(n=>[e(`span`,T,t(n.row.nickname),1)]),_:1},8,[`label`]),n(v,{label:l.$t(`user.field.dateJoined`)},{default:o(n=>[e(`span`,E,t(l.$dayjs.format(n.row.date_joined)),1)]),_:1},8,[`label`])]),_:1},8,[`data`])),[[A,l.loading]])]),_:1})]),_:1})]),_:1}),n(g,null,{default:o(()=>[n(h,{span:10,offset:14},{default:o(()=>[e(`div`,D,[n(k,{"current-page":l.page,"page-size":l.limit,total:l.total,onChange:l.onPageChange},null,8,[`current-page`,`page-size`,`total`,`onChange`])])]),_:1})]),_:1})]),_:1})]),_:1})}var k=g(y,[[`render`,O],[`__scopeId`,`data-v-b2200c49`]]);export{k as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime--c01j_DQ.js";import{A as t,I as n,Jt as r,L as i,M as a,N as o,T as s,a as c,at as l,c as u,d,ht as f,i as p,j as m,l as h,mt as g,n as _,o as v,ot as ee,qt as y,r as b,rt as x,s as S,t as C,tt as w,u as T,x as te,z as E}from"./vendor-chart-Dw-P17PN.js";import{r as D,t as O}from"./select-BStvECg1.js";import{n as k,t as A}from"./table-CaTq0fbd.js";import{n as j,t as M}from"./tabs-LWySwjmg.js";import{t as N}from"./card-D-4S-l7a.js";import{n as P,r as F}from"./radio-DgDgyT2l.js";import{n as I,t as L}from"./file-output-PWZ63KaJ.js";import{n as R,t as z}from"./row-B4KJ5qAM.js";import{t as B}from"./empty-B1wenOj5.js";import{t as V}from"./pagination-B3irjpSu.js";import{n as H,t as U}from"./skeleton-B3LIGUiE.js";import{t as W}from"./switch-D5lFTJY5.js";import{t as G}from"./boxes-Ci-ujGBZ.js";import{Ai as ne,Ci as re,E as ie,Kr as ae,Mi as oe,ai as K,ei as q,er as se,lr as ce,mr as le,nr as ue,qr as J,tr as Y,vi as X}from"./index-DjH2rtqz.js";import{t as de}from"./CopyToClipboard-DFuxR3Az.js";var fe=e(le());v.register(c,u,p,b,S,T,d,h);var Z=[`#5B8FF9`,`#5AD8A6`,`#5D7092`,`#F6BD16`,`#6F5EF9`,`#6DC8EC`,`#945FB9`,`#FF9845`,`#1E9493`,`#FF99C3`],Q=`#C0C4CC`,pe=.01,me=20;function he(e){return e<=Z.length?Z.slice(0,e):Array.from({length:e},(t,n)=>`hsl(${Math.round(n*360/e)}, 62%, ${n%2==0?55:45}%)`)}var ge=15e3,_e=E({name:`ConsoleUsageList`,components:{ApplicationsIcon:G,ExportIcon:L,Pagination:V,ElTag:ne,ElDatePicker:I,ElTable:A,ElSelect:D,ElOption:O,CopyToClipboard:de,ElRow:z,ElCol:R,ElTableColumn:k,ElCard:N,ElRadioButton:P,ElRadioGroup:F,ElSkeleton:U,ElSkeletonItem:H,ElDialog:re,ElTabs:j,ElTabPane:M,ElButton:oe,ElEmpty:B,ElSwitch:W,BarChart:C,DoughnutChart:_},data(){return{applicationIds:this.$route.query.application_id?.toString()?this.$route.query.application_id?.toString().split(`,`):[],apiIds:this.$route.query.api_id?.toString()?this.$route.query.api_id?.toString().split(`,`):[],applications:[],apis:[],apisLoading:!1,credentialType:ae,serviceType:J,apiUsages:[],proxyUsages:[],createdAtRange:(()=>{let e=this.$route.query.created_at_to?.toString(),t=this.$route.query.created_at_from?.toString();if(t&&e)return[new Date(t),new Date(e)];let n=new Date,r=new Date;return r.setDate(1),r.setHours(0,0,0,0),[r,n]})(),shortcuts:[{text:this.$t(`usage.shortcuts.thisMonth`),value:()=>{let e=new Date,t=new Date;return t.setDate(1),t.setHours(0,0,0,0),[t,e]}},{text:this.$t(`usage.shortcuts.today`),value:()=>{let e=new Date,t=new Date;return t.setHours(0,0,0,0),[t,e]}},{text:this.$t(`usage.shortcuts.last1Day`),value:()=>{let e=new Date,t=new Date;return t.setDate(t.getDate()-1),[t,e]}},{text:this.$t(`usage.shortcuts.last3Days`),value:()=>{let e=new Date,t=new Date;return t.setDate(t.getDate()-3),[t,e]}},{text:this.$t(`usage.shortcuts.last7Days`),value:()=>{let e=new Date,t=new Date;return t.setDate(t.getDate()-7),[t,e]}},{text:this.$t(`usage.shortcuts.last1Month`),value:()=>{let e=new Date,t=new Date;return t.setMonth(t.getMonth()-1),[t,e]}}],type:this.$route.query.type?.toString()||J.API,loading:!1,total:void 0,limit:15,totalUsed:0,barChartLabels:[],barChartSeries:[],chartView:`trend`,apiBreakdown:[],pieLabels:[],pieData:[],pieColors:[],aggLoading:!1,detailDialogVisible:!1,detailRow:null,detailActiveTab:`request`,detailLoading:!1,exporting:!1,statusCodeFilter:this.$route.query.status_code?.toString()||``,traceId:this.$route.query.trace_id?.toString()||``,statusCodeOptions:[],statusCodeOptionsLoading:!1,autoRefresh:!0,autoRefreshTimer:null,fetchSeq:0}},computed:{redirect(){return this.$route.query?.redirect},page(){return parseInt(this.$route.query.page?.toString()||`1`)},totalUsedString(){return`${(this.totalUsed||0).toFixed(2)}`},barChartData(){return{labels:this.barChartLabels,datasets:this.barChartSeries.map(e=>({label:e.label,data:e.data,backgroundColor:e.color,maxBarThickness:36,borderRadius:2,borderSkipped:!1}))}},barChartOptions(){let e=e=>new Intl.NumberFormat().format(Math.round(((e||0)+2**-52)*100)/100);return{responsive:!0,maintainAspectRatio:!1,interaction:{mode:`index`,intersect:!1},plugins:{legend:{position:`bottom`,labels:{usePointStyle:!0,pointStyle:`circle`,boxWidth:8,boxHeight:8,padding:14},onClick:(e,t,n)=>{let r=n?.chart;if(!r||t?.datasetIndex===void 0)return;let i=t.datasetIndex,a=r.data?.datasets||[];a.some((e,t)=>t!==i&&r.isDatasetVisible(t))?a.forEach((e,t)=>r.setDatasetVisibility(t,t===i)):a.forEach((e,t)=>r.setDatasetVisibility(t,!0)),r.update()}},title:{display:!1},tooltip:{itemSort:(e,t)=>(t.parsed?.y||0)-(e.parsed?.y||0),callbacks:{label:t=>` ${t.dataset.label}: ${e(t.parsed.y)}`,footer:t=>`${this.$t(`usage.title.totalUsed`)}: ${e(t.reduce((e,t)=>e+(t.parsed?.y||0),0))}`}}},scales:{x:{stacked:!0,grid:{display:!1},ticks:{maxRotation:0,autoSkip:!0,autoSkipPadding:16}},y:{stacked:!0,beginAtZero:!0,border:{display:!1},grid:{color:`rgba(128, 128, 128, 0.15)`},ticks:{callback:t=>e(Number(t))}}}}},doughnutChartData(){return{labels:this.pieLabels,datasets:[{data:this.pieData,backgroundColor:this.pieColors,borderWidth:0,hoverOffset:6}]}},doughnutChartOptions(){let e=e=>this.fmtAmount(e),t=this.pieData.reduce((e,t)=>e+(t||0),0);return{responsive:!0,maintainAspectRatio:!1,cutout:`58%`,plugins:{legend:{position:`right`,labels:{usePointStyle:!0,pointStyle:`circle`,boxWidth:8,boxHeight:8,padding:12}},title:{display:!1},tooltip:{callbacks:{label:n=>{let r=n.parsed||0,i=t>0?(r/t*100).toFixed(1):`0`;return` ${n.label}: ${e(r)} (${i}%)`}}}}}}},watch:{page:{handler(){this.onFetchUsages()}},type:{handler(){this.applicationIds=[],this.apiIds=[],this.onApplicationsChange(this.applicationIds),this.onFetchApplications(),this.onFetchApis(),this.onFetchUsages(),this.onFetchAggregate(),this.onFetchStatusCodeOptions()}},autoRefresh:{handler(e){e?this.startAutoRefresh():this.stopAutoRefresh()}}},mounted(){this.onFetchApplications(),this.onFetchApis(),this.onFetchUsages(),this.onFetchAggregate(),this.onFetchStatusCodeOptions(),this.autoRefresh&&this.startAutoRefresh()},beforeUnmount(){this.stopAutoRefresh()},methods:{async onFetchUsages(e=!1){this.type===J.API?this.onFetchApiUsages(e):this.type===J.Proxy&&this.onFetchProxyUsages(e)},startAutoRefresh(){this.stopAutoRefresh(),this.autoRefreshTimer=window.setInterval(()=>{document.hidden||this.onFetchUsages(!0)},ge)},stopAutoRefresh(){this.autoRefreshTimer!==null&&(clearInterval(this.autoRefreshTimer),this.autoRefreshTimer=null)},async onApiChange(e){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,api_id:e}}),this.onFetchApiUsages(),this.onFetchAggregate()},async onApisChange(e){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,api_id:e&&e.length?e.join(`,`):``}}),this.onFetchApiUsages(),this.onFetchAggregate()},async onTimeRangeChanged(){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,created_at_from:this.createdAtRange?this.$dayjs.format(this.createdAtRange[0].toString(),`YYYY-MM-DDTHH:mm:ss.SSSSSSZ`):``,created_at_to:this.createdAtRange?this.$dayjs.format(this.createdAtRange[1].toString(),`YYYY-MM-DDTHH:mm:ss.SSSSSSZ`):``}}),this.onFetchUsages(),this.onFetchAggregate(),this.onFetchStatusCodeOptions()},async onApplicationChange(e){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,application_id:e}}),this.onFetchUsages(),this.onFetchAggregate()},async onApplicationsChange(e){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,application_id:e&&e.length?e.join(`,`):``}}),this.onFetchUsages(),this.onFetchAggregate()},onPageChange(e){this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,page:e}})},getRemainingAmount(e){if(e.remaining_amount===void 0||e.remaining_amount===null)return``;let t=this.$t(`service.unit.${e?.service?.unit||`credit`}s`);return`${e.remaining_amount?.toFixed(6)} ${t}`},getUsedAmount(e){if(e.used_amount===void 0||e.used_amount===null)return``;let t=this.$t(`service.unit.${e?.service?.unit||`credit`}s`);return`${e.used_amount?.toFixed(6)} ${t}`},getDeductedAmount(e){if(e?.deducted_amount===void 0||e?.deducted_amount===null)return``;let t=this.$t(`service.unit.${e?.service?.unit||`credit`}s`);return`${e.deducted_amount?.toFixed(6)} ${t}`},getOriginalAmount(e){if(e?.original_amount===void 0||e?.original_amount===null)return``;let t=this.$t(`service.unit.${e?.service?.unit||`credit`}s`);return`${e.original_amount?.toFixed(6)} ${t}`},onStatusCodeChange(e){let t={...this.$route.query},n=(e||``).trim();n?t.status_code=n:delete t.status_code,delete t.status_code_filter,this.$router.push({name:this.$route.name?.toString(),query:t}),this.onFetchUsages(),this.onFetchAggregate()},async onFetchStatusCodeOptions(){this.statusCodeOptionsLoading=!0;try{let{data:e}=await Y.getStatusCodes({user_id:this.$store.getters.user.id,...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{},...this.apiIds&&this.apiIds.length?{api_id:this.apiIds}:{},...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0]}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1]}:{}});this.statusCodeOptions=(e?.items||[]).slice().sort((e,t)=>e-t)}catch{this.statusCodeOptions=[]}finally{this.statusCodeOptionsLoading=!1}},formatElapsed(e){return e==null||Number.isNaN(e)?`-`:e<1?`${Math.round(e*1e3)} ms`:`${e.toFixed(2)} s`},getSimpleMetadata(e){if(!e)return{};let t={};for(let[n,r]of Object.entries(e))n===`request`||n===`response`||typeof r==`object`&&r||(t[n]=r);return t},getCredentialLabel(e){return e.credential?.name?.trim()||e.credential?.id||e.credential_id||`-`},onShowDetail(e){this.detailRow={...e,metadata:void 0},this.detailActiveTab=`request`,this.detailDialogVisible=!0,this.detailLoading=!0,e.id&&Y.get(e.id).then(e=>{this.detailRow=e.data}).finally(()=>{this.detailLoading=!1})},formatJson(e){try{return JSON.stringify(e,null,2)}catch{return String(e)}},onFetchApplications(){ce.getAll({limit:100,offset:0,user_id:this.$store.getters.user.id,ordering:`-created_at`,type:q.USAGE}).then(({data:e})=>{this.applications=e.items.filter(e=>e?.service?.type===this.type)}).catch(()=>{})},onFetchApis(){this.apisLoading=!0,se.getAll({limit:1e3,offset:0,ordering:`-created_at`}).then(({data:e})=>{this.apis=e.items}).catch(()=>{}).finally(()=>{this.apisLoading=!1})},onFetchApiUsages(e=!1){e||(this.loading=!0);let t=++this.fetchSeq;Y.getAll({limit:this.limit,offset:(this.page-1)*this.limit,user_id:this.$store.getters.user.id,ordering:`-created_at`,...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0]}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1]}:{},...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{},...this.apiIds&&this.apiIds.length?{api_id:this.apiIds}:{},...this.statusCodeFilter?{status_code:this.statusCodeFilter}:{},...this.traceId?{trace_id:this.traceId}:{}}).then(({data:e})=>{t===this.fetchSeq&&(this.apiUsages=e.items,this.total=e.count)}).catch(()=>{}).finally(()=>{e||(this.loading=!1)})},onFetchProxyUsages(e=!1){e||(this.loading=!0);let t=++this.fetchSeq;ue.getAll({limit:this.limit,offset:(this.page-1)*this.limit,user_id:this.$store.getters.user.id,ordering:`-created_at`,...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{}}).then(({data:e})=>{t===this.fetchSeq&&(this.proxyUsages=e.items,this.total=e.count)}).catch(()=>{}).finally(()=>{e||(this.loading=!1)})},async onExport(){let e=this.$store.state.token?.access;if(!e){X.error(this.$t(`usage.message.exportFailed`));return}let t={user_id:this.$store.getters.user.id,...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0]}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1]}:{},...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{},...this.apiIds&&this.apiIds.length?{api_id:this.apiIds}:{},...this.statusCodeFilter?{status_code:this.statusCodeFilter}:{}},n=`${K()}/api/v1/usage/apis/export/?${fe.default.stringify(t,{arrayFormat:`repeat`})}`,r=null,i=window.showSaveFilePicker;if(typeof i==`function`)try{r=await i({suggestedName:`usages.csv`,types:[{description:`CSV`,accept:{"text/csv":[`.csv`]}}]})}catch(e){if(e?.name===`AbortError`)return;r=null}this.exporting=!0;try{let t=await fetch(n,{headers:{authorization:`Bearer ${e}`}});if(!t.ok||!t.body)throw Error(`export failed: ${t.status}`);if(r)await t.body.pipeTo(await r.createWritable());else{let e=await t.blob(),n=window.URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=`usages.csv`,r.click(),window.URL.revokeObjectURL(n)}}catch{X.error(this.$t(`usage.message.exportFailed`))}finally{this.exporting=!1}},fmtAmount(e){return new Intl.NumberFormat().format(Math.round(((e||0)+2**-52)*100)/100)},async onFetchAggregate(){if(this.type!==this.serviceType.API)return;this.aggLoading=!0;let e={user_id:this.$store.getters.user.id,...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{},...this.apiIds&&this.apiIds.length?{api_id:this.apiIds}:{},...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0]}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1]}:{},timezone:Intl.DateTimeFormat().resolvedOptions().timeZone};try{let{data:t}=await Y.getAggregate(e);this.totalUsed=t.total||0;let n=Array.from(new Set((t.items||[]).map(e=>e.date))).sort(),r={},i={};(t.items||[]).forEach(e=>{let t=e.amount||0;(r[e.date]||(r[e.date]={}))[e.api_id]=(r[e.date]?.[e.api_id]||0)+t,i[e.api_id]=(i[e.api_id]||0)+t});let a=Object.keys(i).sort((e,t)=>i[t]-i[e]),o=a.reduce((e,t)=>e+i[t],0),s=a.length;if(o>0){let e=o*(1-pe),t=0;for(let n=0;n<a.length;n++)if(t+=i[a[n]],t>=e){s=n+1;break}s=Math.min(s,me)}a.length-s===1&&(s=a.length);let c=a.slice(0,s),l=new Set(c),u=he(c.length),d=a.slice(s),f=`${this.$t(`usage.value.others`)} (${d.length})`,p=c.map((e,i)=>({key:e,label:t.apis?.[e]?.title||e,data:n.map(t=>r[t]?.[e]||0),color:u[i]}));if(d.length){let e=n.map(e=>Object.entries(r[e]||{}).reduce((e,[t,n])=>l.has(t)?e:e+n,0));e.some(e=>e>0)&&p.push({key:`__others__`,label:f,data:e,color:Q})}this.apiBreakdown=a.map((e,n)=>({key:e,label:t.apis?.[e]?.title||e,amount:i[e],color:n<c.length?u[n]:Q,share:o>0?i[e]/o:0}));let m=[],h=[],g=[];c.forEach((e,n)=>{m.push(t.apis?.[e]?.title||e),h.push(i[e]),g.push(u[n])});let _=d.reduce((e,t)=>e+i[t],0);_>0&&(m.push(f),h.push(_),g.push(Q)),this.pieLabels=m,this.pieData=h,this.pieColors=g,this.barChartLabels=n,this.barChartSeries=p}finally{this.aggLoading=!1}}}}),ve={class:`text-[26px] font-bold mb-5 text-[var(--el-text-color-primary)]`},ye={class:`inline-block w-9`},be={class:`inline-block`},xe={key:1,class:`summary-card`},Se={class:`icon-wrapper`},Ce={class:`text-left`},we={class:`description`},Te={class:`value`},Ee={class:`flex flex-wrap items-center justify-between gap-2`},De={class:`text-[15px] font-medium text-[var(--el-text-color-primary)]`},Oe={class:`chart-wrapper`},ke={class:`share-cell`},Ae={class:`share-bar`},je={class:`share-pct`},Me={class:`flex items-center justify-end gap-2 mb-4`},Ne={class:`text-sm text-[var(--el-text-color-regular)]`},Pe={key:0},Fe={key:0},Ie={key:1},Le={class:`flex flex-wrap gap-2`},Re={class:`key`},ze={key:0,class:`cursor-pointer`},Be={class:`key`},Ve={key:0,class:`cursor-pointer`},$={class:`created-at`},He={class:`key`},Ue={key:0,class:`cursor-pointer`},We={class:`created-at`},Ge={key:1,class:`detail-json`},Ke={key:2,class:`text-gray-400`},qe={key:1,class:`detail-json`},Je={key:2,class:`text-gray-400`},Ye={class:`float-right`};function Xe(e,c,u,d,p,h){let _=l(`el-col`),v=l(`el-row`),b=l(`el-radio-button`),S=l(`el-radio-group`),C=l(`el-option`),T=l(`el-select`),E=l(`el-skeleton-item`),D=l(`el-skeleton`),O=l(`el-date-picker`),k=l(`export-icon`),A=l(`el-button`),j=l(`applications-icon`),M=l(`el-card`),N=l(`bar-chart`),P=l(`el-empty`),F=l(`doughnut-chart`),I=l(`el-table-column`),L=l(`el-table`),R=l(`el-switch`),z=l(`el-tag`),B=l(`copy-to-clipboard`),V=l(`el-tab-pane`),H=l(`el-tabs`),U=l(`el-dialog`),W=l(`pagination`),G=ee(`loading`);return w(),m(v,null,{default:g(()=>[i(_,{span:24},{default:g(()=>[i(v,null,{default:g(()=>[i(_,{span:24},{default:g(()=>[t(`h2`,ve,r(e.$t(`common.title.allUsages`)),1)]),_:1})]),_:1}),i(v,null,{default:g(()=>[i(_,{md:4,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[t(`span`,null,r(e.$t(`application.field.type`)),1),i(S,{modelValue:e.type,"onUpdate:modelValue":c[0]||=t=>e.type=t},{default:g(()=>[i(b,{value:e.serviceType.API,label:e.$t(`application.field.api`)},null,8,[`value`,`label`]),i(b,{value:e.serviceType.Proxy,label:e.$t(`application.field.proxy`)},null,8,[`value`,`label`])]),_:1},8,[`modelValue`])]),_:1}),f(i(_,{md:6,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[t(`span`,ye,r(e.$t(`usage.field.application`)),1),i(T,{modelValue:e.applicationIds,"onUpdate:modelValue":c[1]||=t=>e.applicationIds=t,placeholder:e.$t(`usage.field.application`),clearable:``,multiple:``,"collapse-tags":``,"collapse-tags-tooltip":``,class:`w-full`,onChange:e.onApplicationsChange},{default:g(()=>[(w(!0),o(s,null,x(e.applications,e=>(w(),m(C,{key:e.id,label:e.service?.title,value:e?.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`])]),_:1},512),[[te,!1]]),e.type===e.serviceType.API?(w(),m(_,{key:0,md:6,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[t(`span`,be,r(e.$t(`usage.field.api`)),1),e.apisLoading?(w(),m(D,{key:0,animated:``,class:`w-full`},{template:g(()=>[i(E,{variant:`rect`,style:{height:`32px`,"border-radius":`4px`}})]),_:1})):(w(),m(T,{key:1,modelValue:e.apiIds,"onUpdate:modelValue":c[2]||=t=>e.apiIds=t,placeholder:e.$t(`usage.field.api`),clearable:``,filterable:``,multiple:``,"collapse-tags":``,"collapse-tags-tooltip":``,class:`w-full`,onChange:e.onApisChange},{default:g(()=>[(w(!0),o(s,null,x(e.apis,e=>(w(),m(C,{key:e?.id,label:e?.title,value:e?.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`]))]),_:1})):a(``,!0),e.type===e.serviceType.API?(w(),m(_,{key:1,md:8,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[i(O,{modelValue:e.createdAtRange,"onUpdate:modelValue":c[3]||=t=>e.createdAtRange=t,type:`datetimerange`,class:`w-full`,shortcuts:e.shortcuts,"range-separator":e.$t(`usage.placeholder.to`),"start-placeholder":e.$t(`usage.placeholder.startDate`),"end-placeholder":e.$t(`usage.placeholder.endDate`),onChange:e.onTimeRangeChanged},null,8,[`modelValue`,`shortcuts`,`range-separator`,`start-placeholder`,`end-placeholder`,`onChange`])]),_:1})):a(``,!0),e.type===e.serviceType.API?(w(),m(_,{key:2,md:3,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[i(T,{modelValue:e.statusCodeFilter,"onUpdate:modelValue":c[4]||=t=>e.statusCodeFilter=t,placeholder:e.$t(`usage.option.statusCodeAll`),class:`w-full`,clearable:``,filterable:``,"allow-create":``,"default-first-option":``,loading:e.statusCodeOptionsLoading,onChange:e.onStatusCodeChange},{default:g(()=>[(w(!0),o(s,null,x(e.statusCodeOptions,e=>(w(),m(C,{key:e,label:String(e),value:String(e)},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`loading`,`onChange`])]),_:1})):a(``,!0),e.type===e.serviceType.API?(w(),m(_,{key:3,md:3,xs:24,class:`mb-5 flex px-2 gap-2 items-center justify-end`},{default:g(()=>[i(A,{type:`primary`,plain:``,loading:e.exporting,class:`w-full whitespace-nowrap`,onClick:e.onExport},{default:g(()=>[i(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(e.$t(`usage.button.export`)),1)]),_:1},8,[`loading`,`onClick`])]),_:1})):a(``,!0)]),_:1}),i(v,null,{default:g(()=>[i(_,{span:24},{default:g(()=>[e.type===e.serviceType.API?(w(),m(v,{key:0,gutter:24,class:`mb-5`},{default:g(()=>[i(_,{md:6,xs:24},{default:g(()=>[i(M,{shadow:`hover`,class:`h-full`},{default:g(()=>[e.aggLoading?(w(),m(D,{key:0})):(w(),o(`div`,xe,[t(`div`,Se,[i(j,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),t(`div`,Ce,[t(`p`,we,r(e.$t(`usage.title.totalUsed`)),1),t(`p`,Te,r(e.totalUsedString),1)])]))]),_:1})]),_:1}),i(_,{md:18,xs:24},{default:g(()=>[i(M,{shadow:`hover`,class:`h-full`},{header:g(()=>[t(`div`,Ee,[t(`span`,De,r(e.$t(`usage.title.usageAnalytics`)),1),i(S,{modelValue:e.chartView,"onUpdate:modelValue":c[5]||=t=>e.chartView=t,size:`small`},{default:g(()=>[i(b,{value:`trend`,label:e.$t(`usage.view.trend`)},null,8,[`label`]),i(b,{value:`distribution`,label:e.$t(`usage.view.distribution`)},null,8,[`label`]),i(b,{value:`breakdown`,label:e.$t(`usage.view.breakdown`)},null,8,[`label`])]),_:1},8,[`modelValue`])])]),default:g(()=>[t(`div`,Oe,[e.aggLoading?(w(),m(D,{key:0,class:`w-full`})):e.chartView===`trend`?(w(),o(s,{key:1},[e.barChartSeries.length?(w(),m(N,{key:0,data:e.barChartData,options:e.barChartOptions,class:`chart`},null,8,[`data`,`options`])):(w(),m(P,{key:1,description:e.$t(`common.message.noData`),"image-size":70,class:`w-full`},null,8,[`description`]))],64)):e.chartView===`distribution`?(w(),o(s,{key:2},[e.pieData.length?(w(),m(F,{key:0,data:e.doughnutChartData,options:e.doughnutChartOptions,class:`chart`},null,8,[`data`,`options`])):(w(),m(P,{key:1,description:e.$t(`common.message.noData`),"image-size":70,class:`w-full`},null,8,[`description`]))],64)):(w(),o(s,{key:3},[e.apiBreakdown.length?(w(),m(L,{key:0,data:e.apiBreakdown,size:`small`,height:`300`,class:`w-full`},{default:g(()=>[i(I,{label:e.$t(`usage.field.api`),"min-width":`160`},{default:g(e=>[t(`span`,{class:`color-dot`,style:y({backgroundColor:e.row.color})},null,4),t(`span`,null,r(e.row.label),1)]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.field.consumed`),width:`120`,align:`right`},{default:g(n=>[t(`span`,null,r(e.fmtAmount(n.row.amount)),1)]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.field.share`),width:`150`},{default:g(e=>[t(`div`,ke,[t(`div`,Ae,[t(`div`,{class:`share-bar-fill`,style:y({width:e.row.share*100+`%`,backgroundColor:e.row.color})},null,4)]),t(`span`,je,r((e.row.share*100).toFixed(1))+`%`,1)])]),_:1},8,[`label`])]),_:1},8,[`data`])):(w(),m(P,{key:1,description:e.$t(`common.message.noData`),"image-size":70,class:`w-full`},null,8,[`description`]))],64))])]),_:1})]),_:1})]),_:1})):a(``,!0),i(M,{shadow:`hover`},{default:g(()=>[t(`div`,Me,[t(`span`,Ne,r(e.$t(`usage.field.autoRefresh`)),1),i(R,{modelValue:e.autoRefresh,"onUpdate:modelValue":c[6]||=t=>e.autoRefresh=t},null,8,[`modelValue`])]),e.type===e.serviceType.API?f((w(),m(L,{key:0,data:e.apiUsages,stripe:``,"table-layout":`fixed`,"empty-text":e.$t(`common.message.noData`),class:`min-h-[calc(100vh-350px)] mb-5`},{default:g(()=>[i(I,{label:e.$t(`application.field.name`),width:`160px`},{default:g(e=>[t(`span`,null,r(e.row?.api?.title),1)]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.field.statusCode`),width:`120px`},{default:g(t=>[t.row.status_code?(w(),o(`span`,Pe,r(t.row.status_code),1)):(w(),m(z,{key:1,type:`warning`,size:`small`},{default:g(()=>[n(r(e.$t(`usage.value.processing`)),1)]),_:1}))]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.field.elapsed`),width:`120px`},{default:g(n=>[t(`span`,null,r(e.formatElapsed(n.row.elapsed)),1)]),_:1},8,[`label`]),i(I,{prop:`deducted_amount`,label:e.$t(`usage.field.deductedAmount`),width:`150px`,"class-name":`text-center`},{default:g(n=>[e.getDeductedAmount(n.row)===e.getOriginalAmount(n.row)?(w(),o(`div`,Fe,[t(`span`,null,r(e.getDeductedAmount(n.row)),1)])):(w(),o(`div`,Ie,[c[9]||=t(`p`,null,null,-1),t(`p`,null,[t(`span`,null,r(e.getDeductedAmount(n.row)),1)]),t(`p`,null,[t(`del`,null,r(e.getOriginalAmount(n.row)),1)])]))]),_:1},8,[`label`]),i(I,{prop:`remaining_amount`,label:e.$t(`usage.field.balanceAfter`),width:`160px`,"class-name":`text-center`},{default:g(n=>[t(`span`,null,r(e.getRemainingAmount(n.row)),1)]),_:1},8,[`label`]),i(I,{prop:`metadata`,label:e.$t(`usage.field.metadata`),width:`260px`,"class-name":`text-center`},{default:g(i=>[t(`div`,Le,[i.row.original_amount>i.row.deducted_amount&&i.row.original_amount>0?(w(),m(z,{key:0,type:`success`,style:{textWrap:`wrap`,height:`fit-content`,lineHeight:`20px`,borderRadius:`10px`}},{default:g(()=>[n(r(((i.row.original_amount-i.row.deducted_amount)*100/i.row.original_amount).toFixed(0)+`% OFF`),1)]),_:2},1024)):a(``,!0),(w(!0),o(s,null,x(e.getSimpleMetadata(i.row.metadata),(e,t)=>(w(),m(z,{key:t,style:{textWrap:`wrap`,height:`fit-content`,lineHeight:`20px`,borderRadius:`10px`}},{default:g(()=>[n(r(t)+`: `+r(e),1)]),_:2},1024))),128))])]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.button.viewDetail`),width:`120px`,"class-name":`text-center`},{default:g(t=>[t.row.id?(w(),m(A,{key:0,type:`primary`,plain:``,size:`small`,class:`!px-2 !py-1 !text-xs !h-auto !min-h-0`,onClick:n=>e.onShowDetail(t.row)},{default:g(()=>[n(r(e.$t(`usage.button.viewDetail`)),1)]),_:1},8,[`onClick`])):a(``,!0)]),_:1},8,[`label`]),i(I,{prop:`trace_id`,label:e.$t(`application.field.traceId`),width:`200px`,"class-name":`text-center`},{default:g(e=>[t(`span`,Re,r(e.row.trace_id),1),e.row.trace_id?(w(),o(`span`,ze,[i(B,{content:e.row.trace_id,class:`inline-block`},null,8,[`content`])])):a(``,!0)]),_:1},8,[`label`]),i(I,{prop:`credential_id`,label:e.$t(`usage.field.credential`),width:`200px`,"class-name":`text-center`},{default:g(n=>[t(`span`,Be,r(e.getCredentialLabel(n.row)),1),n.row.credential?.id||n.row.credential_id?(w(),o(`span`,Ve,[i(B,{content:n.row.credential?.id||n.row.credential_id,class:`inline-block`},null,8,[`content`])])):a(``,!0)]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.field.createdAt`),width:`200px`},{default:g(n=>[t(`span`,$,r(e.$dayjs.format(n.row.created_at)),1)]),_:1},8,[`label`])]),_:1},8,[`data`,`empty-text`])),[[G,e.loading]]):a(``,!0),e.type===e.serviceType.Proxy?f((w(),m(L,{key:1,data:e.proxyUsages,stripe:``,"table-layout":`fixed`,"empty-text":e.$t(`common.message.noData`),class:`min-h-[calc(100vh-350px)] mb-5`},{default:g(()=>[i(I,{label:e.$t(`application.field.name`),width:`160px`},{default:g(e=>[t(`span`,null,r(e.row?.service?.title),1)]),_:1},8,[`label`]),i(I,{prop:`remaining_amount`,label:e.$t(`usage.field.remainingAmount`),width:`160px`,"class-name":`text-center`},{default:g(n=>[t(`span`,null,r(e.getRemainingAmount(n.row)),1),t(`span`,null,r(e.getOriginalAmount(n.row)),1)]),_:1},8,[`label`]),i(I,{prop:`deducted_amount`,label:e.$t(`usage.field.deductedAmount`),width:`150px`,"class-name":`text-center`},{default:g(n=>[t(`span`,null,r(e.getDeductedAmount(n.row)),1)]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.field.balanceAfter`),width:`160px`,"class-name":`text-center`},{default:g(n=>[t(`span`,null,r(e.getRemainingAmount(n.row)),1)]),_:1},8,[`label`]),i(I,{prop:`metadata`,label:e.$t(`usage.field.metadata`),width:`200px`,"class-name":`text-center`},{default:g(e=>[(w(!0),o(s,null,x(e.row.metadata,(e,t)=>(w(),m(z,{key:t,class:`mb-2`},{default:g(()=>[n(r(t)+`: `+r(e),1)]),_:2},1024))),128))]),_:1},8,[`label`]),i(I,{prop:`credential_id`,label:e.$t(`usage.field.credential`),width:`200px`,"class-name":`text-center`},{default:g(n=>[t(`span`,He,r(e.getCredentialLabel(n.row)),1),n.row.credential?.id||n.row.credential_id?(w(),o(`span`,Ue,[i(B,{content:n.row.credential?.id||n.row.credential_id,class:`inline-block`},null,8,[`content`])])):a(``,!0)]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.field.createdAt`),width:`200px`},{default:g(n=>[t(`span`,We,r(e.$dayjs.format(n.row.created_at)),1)]),_:1},8,[`label`])]),_:1},8,[`data`,`empty-text`])),[[G,e.loading]]):a(``,!0)]),_:1})]),_:1})]),_:1}),i(U,{modelValue:e.detailDialogVisible,"onUpdate:modelValue":c[8]||=t=>e.detailDialogVisible=t,title:e.$t(`usage.dialog.detailTitle`),width:`70%`,top:`5vh`,"destroy-on-close":``},{default:g(()=>[i(H,{modelValue:e.detailActiveTab,"onUpdate:modelValue":c[7]||=t=>e.detailActiveTab=t},{default:g(()=>[i(V,{label:e.$t(`usage.dialog.request`),name:`request`},{default:g(()=>[e.detailLoading?(w(),m(D,{key:0,rows:6,animated:``})):e.detailRow?.metadata?.request?(w(),o(`pre`,Ge,r(e.formatJson(e.detailRow.metadata.request)),1)):(w(),o(`p`,Ke,r(e.$t(`usage.dialog.noData`)),1))]),_:1},8,[`label`]),i(V,{label:e.$t(`usage.dialog.response`),name:`response`},{default:g(()=>[e.detailLoading?(w(),m(D,{key:0,rows:6,animated:``})):e.detailRow?.metadata?.response?(w(),o(`pre`,qe,r(e.formatJson(e.detailRow.metadata.response)),1)):(w(),o(`p`,Je,r(e.$t(`usage.dialog.noData`)),1))]),_:1},8,[`label`])]),_:1},8,[`modelValue`])]),_:1},8,[`modelValue`,`title`]),i(v,null,{default:g(()=>[i(_,{span:10,offset:14},{default:g(()=>[t(`div`,Ye,[i(W,{"current-page":e.page,"page-size":e.limit,total:e.total,onChange:e.onPageChange},null,8,[`current-page`,`page-size`,`total`,`onChange`])])]),_:1})]),_:1})]),_:1})]),_:1})}var Ze=ie(_e,[[`render`,Xe],[`__scopeId`,`data-v-81b0a3c5`]]);export{Ze as default};
|
|
1
|
+
import{o as e}from"./rolldown-runtime--c01j_DQ.js";import{A as t,I as n,Jt as r,L as i,M as a,N as o,T as s,a as c,at as l,c as u,d,ht as f,i as p,j as m,l as h,mt as g,n as _,o as v,ot as ee,qt as y,r as b,rt as x,s as S,t as C,tt as w,u as T,x as te,z as E}from"./vendor-chart-Dw-P17PN.js";import{r as D,t as O}from"./select-CEdgwxFQ.js";import{n as k,t as A}from"./table-B7kafo6x.js";import{n as j,t as M}from"./tabs-DZhaejGl.js";import{t as N}from"./card-D-4S-l7a.js";import{n as P,r as F}from"./radio-DgDgyT2l.js";import{n as I,t as L}from"./file-output-DUxBnIvG.js";import{n as R,t as z}from"./row-DjZyv4fI.js";import{t as B}from"./empty-B1wenOj5.js";import{t as V}from"./pagination-b510-ovW.js";import{n as H,t as U}from"./skeleton-B3LIGUiE.js";import{t as W}from"./switch-wUI1U14Q.js";import{t as G}from"./boxes-BLtLuN6q.js";import{Ai as ne,Ci as re,E as ie,Kr as ae,Mi as oe,ai as K,ei as q,er as se,lr as ce,mr as le,nr as ue,qr as J,tr as Y,vi as X}from"./index-B-TI1WPY.js";import{t as de}from"./CopyToClipboard-98XCpXWu.js";var fe=e(le());v.register(c,u,p,b,S,T,d,h);var Z=[`#5B8FF9`,`#5AD8A6`,`#5D7092`,`#F6BD16`,`#6F5EF9`,`#6DC8EC`,`#945FB9`,`#FF9845`,`#1E9493`,`#FF99C3`],Q=`#C0C4CC`,pe=.01,me=20;function he(e){return e<=Z.length?Z.slice(0,e):Array.from({length:e},(t,n)=>`hsl(${Math.round(n*360/e)}, 62%, ${n%2==0?55:45}%)`)}var ge=15e3,_e=E({name:`ConsoleUsageList`,components:{ApplicationsIcon:G,ExportIcon:L,Pagination:V,ElTag:ne,ElDatePicker:I,ElTable:A,ElSelect:D,ElOption:O,CopyToClipboard:de,ElRow:z,ElCol:R,ElTableColumn:k,ElCard:N,ElRadioButton:P,ElRadioGroup:F,ElSkeleton:U,ElSkeletonItem:H,ElDialog:re,ElTabs:j,ElTabPane:M,ElButton:oe,ElEmpty:B,ElSwitch:W,BarChart:C,DoughnutChart:_},data(){return{applicationIds:this.$route.query.application_id?.toString()?this.$route.query.application_id?.toString().split(`,`):[],apiIds:this.$route.query.api_id?.toString()?this.$route.query.api_id?.toString().split(`,`):[],applications:[],apis:[],apisLoading:!1,credentialType:ae,serviceType:J,apiUsages:[],proxyUsages:[],createdAtRange:(()=>{let e=this.$route.query.created_at_to?.toString(),t=this.$route.query.created_at_from?.toString();if(t&&e)return[new Date(t),new Date(e)];let n=new Date,r=new Date;return r.setDate(1),r.setHours(0,0,0,0),[r,n]})(),shortcuts:[{text:this.$t(`usage.shortcuts.thisMonth`),value:()=>{let e=new Date,t=new Date;return t.setDate(1),t.setHours(0,0,0,0),[t,e]}},{text:this.$t(`usage.shortcuts.today`),value:()=>{let e=new Date,t=new Date;return t.setHours(0,0,0,0),[t,e]}},{text:this.$t(`usage.shortcuts.last1Day`),value:()=>{let e=new Date,t=new Date;return t.setDate(t.getDate()-1),[t,e]}},{text:this.$t(`usage.shortcuts.last3Days`),value:()=>{let e=new Date,t=new Date;return t.setDate(t.getDate()-3),[t,e]}},{text:this.$t(`usage.shortcuts.last7Days`),value:()=>{let e=new Date,t=new Date;return t.setDate(t.getDate()-7),[t,e]}},{text:this.$t(`usage.shortcuts.last1Month`),value:()=>{let e=new Date,t=new Date;return t.setMonth(t.getMonth()-1),[t,e]}}],type:this.$route.query.type?.toString()||J.API,loading:!1,total:void 0,limit:15,totalUsed:0,barChartLabels:[],barChartSeries:[],chartView:`trend`,apiBreakdown:[],pieLabels:[],pieData:[],pieColors:[],aggLoading:!1,detailDialogVisible:!1,detailRow:null,detailActiveTab:`request`,detailLoading:!1,exporting:!1,statusCodeFilter:this.$route.query.status_code?.toString()||``,traceId:this.$route.query.trace_id?.toString()||``,statusCodeOptions:[],statusCodeOptionsLoading:!1,autoRefresh:!0,autoRefreshTimer:null,fetchSeq:0}},computed:{redirect(){return this.$route.query?.redirect},page(){return parseInt(this.$route.query.page?.toString()||`1`)},totalUsedString(){return`${(this.totalUsed||0).toFixed(2)}`},barChartData(){return{labels:this.barChartLabels,datasets:this.barChartSeries.map(e=>({label:e.label,data:e.data,backgroundColor:e.color,maxBarThickness:36,borderRadius:2,borderSkipped:!1}))}},barChartOptions(){let e=e=>new Intl.NumberFormat().format(Math.round(((e||0)+2**-52)*100)/100);return{responsive:!0,maintainAspectRatio:!1,interaction:{mode:`index`,intersect:!1},plugins:{legend:{position:`bottom`,labels:{usePointStyle:!0,pointStyle:`circle`,boxWidth:8,boxHeight:8,padding:14},onClick:(e,t,n)=>{let r=n?.chart;if(!r||t?.datasetIndex===void 0)return;let i=t.datasetIndex,a=r.data?.datasets||[];a.some((e,t)=>t!==i&&r.isDatasetVisible(t))?a.forEach((e,t)=>r.setDatasetVisibility(t,t===i)):a.forEach((e,t)=>r.setDatasetVisibility(t,!0)),r.update()}},title:{display:!1},tooltip:{itemSort:(e,t)=>(t.parsed?.y||0)-(e.parsed?.y||0),callbacks:{label:t=>` ${t.dataset.label}: ${e(t.parsed.y)}`,footer:t=>`${this.$t(`usage.title.totalUsed`)}: ${e(t.reduce((e,t)=>e+(t.parsed?.y||0),0))}`}}},scales:{x:{stacked:!0,grid:{display:!1},ticks:{maxRotation:0,autoSkip:!0,autoSkipPadding:16}},y:{stacked:!0,beginAtZero:!0,border:{display:!1},grid:{color:`rgba(128, 128, 128, 0.15)`},ticks:{callback:t=>e(Number(t))}}}}},doughnutChartData(){return{labels:this.pieLabels,datasets:[{data:this.pieData,backgroundColor:this.pieColors,borderWidth:0,hoverOffset:6}]}},doughnutChartOptions(){let e=e=>this.fmtAmount(e),t=this.pieData.reduce((e,t)=>e+(t||0),0);return{responsive:!0,maintainAspectRatio:!1,cutout:`58%`,plugins:{legend:{position:`right`,labels:{usePointStyle:!0,pointStyle:`circle`,boxWidth:8,boxHeight:8,padding:12}},title:{display:!1},tooltip:{callbacks:{label:n=>{let r=n.parsed||0,i=t>0?(r/t*100).toFixed(1):`0`;return` ${n.label}: ${e(r)} (${i}%)`}}}}}}},watch:{page:{handler(){this.onFetchUsages()}},type:{handler(){this.applicationIds=[],this.apiIds=[],this.onApplicationsChange(this.applicationIds),this.onFetchApplications(),this.onFetchApis(),this.onFetchUsages(),this.onFetchAggregate(),this.onFetchStatusCodeOptions()}},autoRefresh:{handler(e){e?this.startAutoRefresh():this.stopAutoRefresh()}}},mounted(){this.onFetchApplications(),this.onFetchApis(),this.onFetchUsages(),this.onFetchAggregate(),this.onFetchStatusCodeOptions(),this.autoRefresh&&this.startAutoRefresh()},beforeUnmount(){this.stopAutoRefresh()},methods:{async onFetchUsages(e=!1){this.type===J.API?this.onFetchApiUsages(e):this.type===J.Proxy&&this.onFetchProxyUsages(e)},startAutoRefresh(){this.stopAutoRefresh(),this.autoRefreshTimer=window.setInterval(()=>{document.hidden||this.onFetchUsages(!0)},ge)},stopAutoRefresh(){this.autoRefreshTimer!==null&&(clearInterval(this.autoRefreshTimer),this.autoRefreshTimer=null)},async onApiChange(e){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,api_id:e}}),this.onFetchApiUsages(),this.onFetchAggregate()},async onApisChange(e){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,api_id:e&&e.length?e.join(`,`):``}}),this.onFetchApiUsages(),this.onFetchAggregate()},async onTimeRangeChanged(){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,created_at_from:this.createdAtRange?this.$dayjs.format(this.createdAtRange[0].toString(),`YYYY-MM-DDTHH:mm:ss.SSSSSSZ`):``,created_at_to:this.createdAtRange?this.$dayjs.format(this.createdAtRange[1].toString(),`YYYY-MM-DDTHH:mm:ss.SSSSSSZ`):``}}),this.onFetchUsages(),this.onFetchAggregate(),this.onFetchStatusCodeOptions()},async onApplicationChange(e){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,application_id:e}}),this.onFetchUsages(),this.onFetchAggregate()},async onApplicationsChange(e){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,application_id:e&&e.length?e.join(`,`):``}}),this.onFetchUsages(),this.onFetchAggregate()},onPageChange(e){this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,page:e}})},getRemainingAmount(e){if(e.remaining_amount===void 0||e.remaining_amount===null)return``;let t=this.$t(`service.unit.${e?.service?.unit||`credit`}s`);return`${e.remaining_amount?.toFixed(6)} ${t}`},getUsedAmount(e){if(e.used_amount===void 0||e.used_amount===null)return``;let t=this.$t(`service.unit.${e?.service?.unit||`credit`}s`);return`${e.used_amount?.toFixed(6)} ${t}`},getDeductedAmount(e){if(e?.deducted_amount===void 0||e?.deducted_amount===null)return``;let t=this.$t(`service.unit.${e?.service?.unit||`credit`}s`);return`${e.deducted_amount?.toFixed(6)} ${t}`},getOriginalAmount(e){if(e?.original_amount===void 0||e?.original_amount===null)return``;let t=this.$t(`service.unit.${e?.service?.unit||`credit`}s`);return`${e.original_amount?.toFixed(6)} ${t}`},onStatusCodeChange(e){let t={...this.$route.query},n=(e||``).trim();n?t.status_code=n:delete t.status_code,delete t.status_code_filter,this.$router.push({name:this.$route.name?.toString(),query:t}),this.onFetchUsages(),this.onFetchAggregate()},async onFetchStatusCodeOptions(){this.statusCodeOptionsLoading=!0;try{let{data:e}=await Y.getStatusCodes({user_id:this.$store.getters.user.id,...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{},...this.apiIds&&this.apiIds.length?{api_id:this.apiIds}:{},...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0]}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1]}:{}});this.statusCodeOptions=(e?.items||[]).slice().sort((e,t)=>e-t)}catch{this.statusCodeOptions=[]}finally{this.statusCodeOptionsLoading=!1}},formatElapsed(e){return e==null||Number.isNaN(e)?`-`:e<1?`${Math.round(e*1e3)} ms`:`${e.toFixed(2)} s`},getSimpleMetadata(e){if(!e)return{};let t={};for(let[n,r]of Object.entries(e))n===`request`||n===`response`||typeof r==`object`&&r||(t[n]=r);return t},getCredentialLabel(e){return e.credential?.name?.trim()||e.credential?.id||e.credential_id||`-`},onShowDetail(e){this.detailRow={...e,metadata:void 0},this.detailActiveTab=`request`,this.detailDialogVisible=!0,this.detailLoading=!0,e.id&&Y.get(e.id).then(e=>{this.detailRow=e.data}).finally(()=>{this.detailLoading=!1})},formatJson(e){try{return JSON.stringify(e,null,2)}catch{return String(e)}},onFetchApplications(){ce.getAll({limit:100,offset:0,user_id:this.$store.getters.user.id,ordering:`-created_at`,type:q.USAGE}).then(({data:e})=>{this.applications=e.items.filter(e=>e?.service?.type===this.type)}).catch(()=>{})},onFetchApis(){this.apisLoading=!0,se.getAll({limit:1e3,offset:0,ordering:`-created_at`}).then(({data:e})=>{this.apis=e.items}).catch(()=>{}).finally(()=>{this.apisLoading=!1})},onFetchApiUsages(e=!1){e||(this.loading=!0);let t=++this.fetchSeq;Y.getAll({limit:this.limit,offset:(this.page-1)*this.limit,user_id:this.$store.getters.user.id,ordering:`-created_at`,...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0]}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1]}:{},...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{},...this.apiIds&&this.apiIds.length?{api_id:this.apiIds}:{},...this.statusCodeFilter?{status_code:this.statusCodeFilter}:{},...this.traceId?{trace_id:this.traceId}:{}}).then(({data:e})=>{t===this.fetchSeq&&(this.apiUsages=e.items,this.total=e.count)}).catch(()=>{}).finally(()=>{e||(this.loading=!1)})},onFetchProxyUsages(e=!1){e||(this.loading=!0);let t=++this.fetchSeq;ue.getAll({limit:this.limit,offset:(this.page-1)*this.limit,user_id:this.$store.getters.user.id,ordering:`-created_at`,...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{}}).then(({data:e})=>{t===this.fetchSeq&&(this.proxyUsages=e.items,this.total=e.count)}).catch(()=>{}).finally(()=>{e||(this.loading=!1)})},async onExport(){let e=this.$store.state.token?.access;if(!e){X.error(this.$t(`usage.message.exportFailed`));return}let t={user_id:this.$store.getters.user.id,...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0]}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1]}:{},...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{},...this.apiIds&&this.apiIds.length?{api_id:this.apiIds}:{},...this.statusCodeFilter?{status_code:this.statusCodeFilter}:{}},n=`${K()}/api/v1/usage/apis/export/?${fe.default.stringify(t,{arrayFormat:`repeat`})}`,r=null,i=window.showSaveFilePicker;if(typeof i==`function`)try{r=await i({suggestedName:`usages.csv`,types:[{description:`CSV`,accept:{"text/csv":[`.csv`]}}]})}catch(e){if(e?.name===`AbortError`)return;r=null}this.exporting=!0;try{let t=await fetch(n,{headers:{authorization:`Bearer ${e}`}});if(!t.ok||!t.body)throw Error(`export failed: ${t.status}`);if(r)await t.body.pipeTo(await r.createWritable());else{let e=await t.blob(),n=window.URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=`usages.csv`,r.click(),window.URL.revokeObjectURL(n)}}catch{X.error(this.$t(`usage.message.exportFailed`))}finally{this.exporting=!1}},fmtAmount(e){return new Intl.NumberFormat().format(Math.round(((e||0)+2**-52)*100)/100)},async onFetchAggregate(){if(this.type!==this.serviceType.API)return;this.aggLoading=!0;let e={user_id:this.$store.getters.user.id,...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{},...this.apiIds&&this.apiIds.length?{api_id:this.apiIds}:{},...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0]}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1]}:{},timezone:Intl.DateTimeFormat().resolvedOptions().timeZone};try{let{data:t}=await Y.getAggregate(e);this.totalUsed=t.total||0;let n=Array.from(new Set((t.items||[]).map(e=>e.date))).sort(),r={},i={};(t.items||[]).forEach(e=>{let t=e.amount||0;(r[e.date]||(r[e.date]={}))[e.api_id]=(r[e.date]?.[e.api_id]||0)+t,i[e.api_id]=(i[e.api_id]||0)+t});let a=Object.keys(i).sort((e,t)=>i[t]-i[e]),o=a.reduce((e,t)=>e+i[t],0),s=a.length;if(o>0){let e=o*(1-pe),t=0;for(let n=0;n<a.length;n++)if(t+=i[a[n]],t>=e){s=n+1;break}s=Math.min(s,me)}a.length-s===1&&(s=a.length);let c=a.slice(0,s),l=new Set(c),u=he(c.length),d=a.slice(s),f=`${this.$t(`usage.value.others`)} (${d.length})`,p=c.map((e,i)=>({key:e,label:t.apis?.[e]?.title||e,data:n.map(t=>r[t]?.[e]||0),color:u[i]}));if(d.length){let e=n.map(e=>Object.entries(r[e]||{}).reduce((e,[t,n])=>l.has(t)?e:e+n,0));e.some(e=>e>0)&&p.push({key:`__others__`,label:f,data:e,color:Q})}this.apiBreakdown=a.map((e,n)=>({key:e,label:t.apis?.[e]?.title||e,amount:i[e],color:n<c.length?u[n]:Q,share:o>0?i[e]/o:0}));let m=[],h=[],g=[];c.forEach((e,n)=>{m.push(t.apis?.[e]?.title||e),h.push(i[e]),g.push(u[n])});let _=d.reduce((e,t)=>e+i[t],0);_>0&&(m.push(f),h.push(_),g.push(Q)),this.pieLabels=m,this.pieData=h,this.pieColors=g,this.barChartLabels=n,this.barChartSeries=p}finally{this.aggLoading=!1}}}}),ve={class:`text-[26px] font-bold mb-5 text-[var(--el-text-color-primary)]`},ye={class:`inline-block w-9`},be={class:`inline-block`},xe={key:1,class:`summary-card`},Se={class:`icon-wrapper`},Ce={class:`text-left`},we={class:`description`},Te={class:`value`},Ee={class:`flex flex-wrap items-center justify-between gap-2`},De={class:`text-[15px] font-medium text-[var(--el-text-color-primary)]`},Oe={class:`chart-wrapper`},ke={class:`share-cell`},Ae={class:`share-bar`},je={class:`share-pct`},Me={class:`flex items-center justify-end gap-2 mb-4`},Ne={class:`text-sm text-[var(--el-text-color-regular)]`},Pe={key:0},Fe={key:0},Ie={key:1},Le={class:`flex flex-wrap gap-2`},Re={class:`key`},ze={key:0,class:`cursor-pointer`},Be={class:`key`},Ve={key:0,class:`cursor-pointer`},$={class:`created-at`},He={class:`key`},Ue={key:0,class:`cursor-pointer`},We={class:`created-at`},Ge={key:1,class:`detail-json`},Ke={key:2,class:`text-gray-400`},qe={key:1,class:`detail-json`},Je={key:2,class:`text-gray-400`},Ye={class:`float-right`};function Xe(e,c,u,d,p,h){let _=l(`el-col`),v=l(`el-row`),b=l(`el-radio-button`),S=l(`el-radio-group`),C=l(`el-option`),T=l(`el-select`),E=l(`el-skeleton-item`),D=l(`el-skeleton`),O=l(`el-date-picker`),k=l(`export-icon`),A=l(`el-button`),j=l(`applications-icon`),M=l(`el-card`),N=l(`bar-chart`),P=l(`el-empty`),F=l(`doughnut-chart`),I=l(`el-table-column`),L=l(`el-table`),R=l(`el-switch`),z=l(`el-tag`),B=l(`copy-to-clipboard`),V=l(`el-tab-pane`),H=l(`el-tabs`),U=l(`el-dialog`),W=l(`pagination`),G=ee(`loading`);return w(),m(v,null,{default:g(()=>[i(_,{span:24},{default:g(()=>[i(v,null,{default:g(()=>[i(_,{span:24},{default:g(()=>[t(`h2`,ve,r(e.$t(`common.title.allUsages`)),1)]),_:1})]),_:1}),i(v,null,{default:g(()=>[i(_,{md:4,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[t(`span`,null,r(e.$t(`application.field.type`)),1),i(S,{modelValue:e.type,"onUpdate:modelValue":c[0]||=t=>e.type=t},{default:g(()=>[i(b,{value:e.serviceType.API,label:e.$t(`application.field.api`)},null,8,[`value`,`label`]),i(b,{value:e.serviceType.Proxy,label:e.$t(`application.field.proxy`)},null,8,[`value`,`label`])]),_:1},8,[`modelValue`])]),_:1}),f(i(_,{md:6,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[t(`span`,ye,r(e.$t(`usage.field.application`)),1),i(T,{modelValue:e.applicationIds,"onUpdate:modelValue":c[1]||=t=>e.applicationIds=t,placeholder:e.$t(`usage.field.application`),clearable:``,multiple:``,"collapse-tags":``,"collapse-tags-tooltip":``,class:`w-full`,onChange:e.onApplicationsChange},{default:g(()=>[(w(!0),o(s,null,x(e.applications,e=>(w(),m(C,{key:e.id,label:e.service?.title,value:e?.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`])]),_:1},512),[[te,!1]]),e.type===e.serviceType.API?(w(),m(_,{key:0,md:6,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[t(`span`,be,r(e.$t(`usage.field.api`)),1),e.apisLoading?(w(),m(D,{key:0,animated:``,class:`w-full`},{template:g(()=>[i(E,{variant:`rect`,style:{height:`32px`,"border-radius":`4px`}})]),_:1})):(w(),m(T,{key:1,modelValue:e.apiIds,"onUpdate:modelValue":c[2]||=t=>e.apiIds=t,placeholder:e.$t(`usage.field.api`),clearable:``,filterable:``,multiple:``,"collapse-tags":``,"collapse-tags-tooltip":``,class:`w-full`,onChange:e.onApisChange},{default:g(()=>[(w(!0),o(s,null,x(e.apis,e=>(w(),m(C,{key:e?.id,label:e?.title,value:e?.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`]))]),_:1})):a(``,!0),e.type===e.serviceType.API?(w(),m(_,{key:1,md:8,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[i(O,{modelValue:e.createdAtRange,"onUpdate:modelValue":c[3]||=t=>e.createdAtRange=t,type:`datetimerange`,class:`w-full`,shortcuts:e.shortcuts,"range-separator":e.$t(`usage.placeholder.to`),"start-placeholder":e.$t(`usage.placeholder.startDate`),"end-placeholder":e.$t(`usage.placeholder.endDate`),onChange:e.onTimeRangeChanged},null,8,[`modelValue`,`shortcuts`,`range-separator`,`start-placeholder`,`end-placeholder`,`onChange`])]),_:1})):a(``,!0),e.type===e.serviceType.API?(w(),m(_,{key:2,md:3,xs:24,class:`mb-5 flex px-2 gap-2 items-center`},{default:g(()=>[i(T,{modelValue:e.statusCodeFilter,"onUpdate:modelValue":c[4]||=t=>e.statusCodeFilter=t,placeholder:e.$t(`usage.option.statusCodeAll`),class:`w-full`,clearable:``,filterable:``,"allow-create":``,"default-first-option":``,loading:e.statusCodeOptionsLoading,onChange:e.onStatusCodeChange},{default:g(()=>[(w(!0),o(s,null,x(e.statusCodeOptions,e=>(w(),m(C,{key:e,label:String(e),value:String(e)},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`loading`,`onChange`])]),_:1})):a(``,!0),e.type===e.serviceType.API?(w(),m(_,{key:3,md:3,xs:24,class:`mb-5 flex px-2 gap-2 items-center justify-end`},{default:g(()=>[i(A,{type:`primary`,plain:``,loading:e.exporting,class:`w-full whitespace-nowrap`,onClick:e.onExport},{default:g(()=>[i(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(e.$t(`usage.button.export`)),1)]),_:1},8,[`loading`,`onClick`])]),_:1})):a(``,!0)]),_:1}),i(v,null,{default:g(()=>[i(_,{span:24},{default:g(()=>[e.type===e.serviceType.API?(w(),m(v,{key:0,gutter:24,class:`mb-5`},{default:g(()=>[i(_,{md:6,xs:24},{default:g(()=>[i(M,{shadow:`hover`,class:`h-full`},{default:g(()=>[e.aggLoading?(w(),m(D,{key:0})):(w(),o(`div`,xe,[t(`div`,Se,[i(j,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),t(`div`,Ce,[t(`p`,we,r(e.$t(`usage.title.totalUsed`)),1),t(`p`,Te,r(e.totalUsedString),1)])]))]),_:1})]),_:1}),i(_,{md:18,xs:24},{default:g(()=>[i(M,{shadow:`hover`,class:`h-full`},{header:g(()=>[t(`div`,Ee,[t(`span`,De,r(e.$t(`usage.title.usageAnalytics`)),1),i(S,{modelValue:e.chartView,"onUpdate:modelValue":c[5]||=t=>e.chartView=t,size:`small`},{default:g(()=>[i(b,{value:`trend`,label:e.$t(`usage.view.trend`)},null,8,[`label`]),i(b,{value:`distribution`,label:e.$t(`usage.view.distribution`)},null,8,[`label`]),i(b,{value:`breakdown`,label:e.$t(`usage.view.breakdown`)},null,8,[`label`])]),_:1},8,[`modelValue`])])]),default:g(()=>[t(`div`,Oe,[e.aggLoading?(w(),m(D,{key:0,class:`w-full`})):e.chartView===`trend`?(w(),o(s,{key:1},[e.barChartSeries.length?(w(),m(N,{key:0,data:e.barChartData,options:e.barChartOptions,class:`chart`},null,8,[`data`,`options`])):(w(),m(P,{key:1,description:e.$t(`common.message.noData`),"image-size":70,class:`w-full`},null,8,[`description`]))],64)):e.chartView===`distribution`?(w(),o(s,{key:2},[e.pieData.length?(w(),m(F,{key:0,data:e.doughnutChartData,options:e.doughnutChartOptions,class:`chart`},null,8,[`data`,`options`])):(w(),m(P,{key:1,description:e.$t(`common.message.noData`),"image-size":70,class:`w-full`},null,8,[`description`]))],64)):(w(),o(s,{key:3},[e.apiBreakdown.length?(w(),m(L,{key:0,data:e.apiBreakdown,size:`small`,height:`300`,class:`w-full`},{default:g(()=>[i(I,{label:e.$t(`usage.field.api`),"min-width":`160`},{default:g(e=>[t(`span`,{class:`color-dot`,style:y({backgroundColor:e.row.color})},null,4),t(`span`,null,r(e.row.label),1)]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.field.consumed`),width:`120`,align:`right`},{default:g(n=>[t(`span`,null,r(e.fmtAmount(n.row.amount)),1)]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.field.share`),width:`150`},{default:g(e=>[t(`div`,ke,[t(`div`,Ae,[t(`div`,{class:`share-bar-fill`,style:y({width:e.row.share*100+`%`,backgroundColor:e.row.color})},null,4)]),t(`span`,je,r((e.row.share*100).toFixed(1))+`%`,1)])]),_:1},8,[`label`])]),_:1},8,[`data`])):(w(),m(P,{key:1,description:e.$t(`common.message.noData`),"image-size":70,class:`w-full`},null,8,[`description`]))],64))])]),_:1})]),_:1})]),_:1})):a(``,!0),i(M,{shadow:`hover`},{default:g(()=>[t(`div`,Me,[t(`span`,Ne,r(e.$t(`usage.field.autoRefresh`)),1),i(R,{modelValue:e.autoRefresh,"onUpdate:modelValue":c[6]||=t=>e.autoRefresh=t},null,8,[`modelValue`])]),e.type===e.serviceType.API?f((w(),m(L,{key:0,data:e.apiUsages,stripe:``,"table-layout":`fixed`,"empty-text":e.$t(`common.message.noData`),class:`min-h-[calc(100vh-350px)] mb-5`},{default:g(()=>[i(I,{label:e.$t(`application.field.name`),width:`160px`},{default:g(e=>[t(`span`,null,r(e.row?.api?.title),1)]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.field.statusCode`),width:`120px`},{default:g(t=>[t.row.status_code?(w(),o(`span`,Pe,r(t.row.status_code),1)):(w(),m(z,{key:1,type:`warning`,size:`small`},{default:g(()=>[n(r(e.$t(`usage.value.processing`)),1)]),_:1}))]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.field.elapsed`),width:`120px`},{default:g(n=>[t(`span`,null,r(e.formatElapsed(n.row.elapsed)),1)]),_:1},8,[`label`]),i(I,{prop:`deducted_amount`,label:e.$t(`usage.field.deductedAmount`),width:`150px`,"class-name":`text-center`},{default:g(n=>[e.getDeductedAmount(n.row)===e.getOriginalAmount(n.row)?(w(),o(`div`,Fe,[t(`span`,null,r(e.getDeductedAmount(n.row)),1)])):(w(),o(`div`,Ie,[c[9]||=t(`p`,null,null,-1),t(`p`,null,[t(`span`,null,r(e.getDeductedAmount(n.row)),1)]),t(`p`,null,[t(`del`,null,r(e.getOriginalAmount(n.row)),1)])]))]),_:1},8,[`label`]),i(I,{prop:`remaining_amount`,label:e.$t(`usage.field.balanceAfter`),width:`160px`,"class-name":`text-center`},{default:g(n=>[t(`span`,null,r(e.getRemainingAmount(n.row)),1)]),_:1},8,[`label`]),i(I,{prop:`metadata`,label:e.$t(`usage.field.metadata`),width:`260px`,"class-name":`text-center`},{default:g(i=>[t(`div`,Le,[i.row.original_amount>i.row.deducted_amount&&i.row.original_amount>0?(w(),m(z,{key:0,type:`success`,style:{textWrap:`wrap`,height:`fit-content`,lineHeight:`20px`,borderRadius:`10px`}},{default:g(()=>[n(r(((i.row.original_amount-i.row.deducted_amount)*100/i.row.original_amount).toFixed(0)+`% OFF`),1)]),_:2},1024)):a(``,!0),(w(!0),o(s,null,x(e.getSimpleMetadata(i.row.metadata),(e,t)=>(w(),m(z,{key:t,style:{textWrap:`wrap`,height:`fit-content`,lineHeight:`20px`,borderRadius:`10px`}},{default:g(()=>[n(r(t)+`: `+r(e),1)]),_:2},1024))),128))])]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.button.viewDetail`),width:`120px`,"class-name":`text-center`},{default:g(t=>[t.row.id?(w(),m(A,{key:0,type:`primary`,plain:``,size:`small`,class:`!px-2 !py-1 !text-xs !h-auto !min-h-0`,onClick:n=>e.onShowDetail(t.row)},{default:g(()=>[n(r(e.$t(`usage.button.viewDetail`)),1)]),_:1},8,[`onClick`])):a(``,!0)]),_:1},8,[`label`]),i(I,{prop:`trace_id`,label:e.$t(`application.field.traceId`),width:`200px`,"class-name":`text-center`},{default:g(e=>[t(`span`,Re,r(e.row.trace_id),1),e.row.trace_id?(w(),o(`span`,ze,[i(B,{content:e.row.trace_id,class:`inline-block`},null,8,[`content`])])):a(``,!0)]),_:1},8,[`label`]),i(I,{prop:`credential_id`,label:e.$t(`usage.field.credential`),width:`200px`,"class-name":`text-center`},{default:g(n=>[t(`span`,Be,r(e.getCredentialLabel(n.row)),1),n.row.credential?.id||n.row.credential_id?(w(),o(`span`,Ve,[i(B,{content:n.row.credential?.id||n.row.credential_id,class:`inline-block`},null,8,[`content`])])):a(``,!0)]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.field.createdAt`),width:`200px`},{default:g(n=>[t(`span`,$,r(e.$dayjs.format(n.row.created_at)),1)]),_:1},8,[`label`])]),_:1},8,[`data`,`empty-text`])),[[G,e.loading]]):a(``,!0),e.type===e.serviceType.Proxy?f((w(),m(L,{key:1,data:e.proxyUsages,stripe:``,"table-layout":`fixed`,"empty-text":e.$t(`common.message.noData`),class:`min-h-[calc(100vh-350px)] mb-5`},{default:g(()=>[i(I,{label:e.$t(`application.field.name`),width:`160px`},{default:g(e=>[t(`span`,null,r(e.row?.service?.title),1)]),_:1},8,[`label`]),i(I,{prop:`remaining_amount`,label:e.$t(`usage.field.remainingAmount`),width:`160px`,"class-name":`text-center`},{default:g(n=>[t(`span`,null,r(e.getRemainingAmount(n.row)),1),t(`span`,null,r(e.getOriginalAmount(n.row)),1)]),_:1},8,[`label`]),i(I,{prop:`deducted_amount`,label:e.$t(`usage.field.deductedAmount`),width:`150px`,"class-name":`text-center`},{default:g(n=>[t(`span`,null,r(e.getDeductedAmount(n.row)),1)]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.field.balanceAfter`),width:`160px`,"class-name":`text-center`},{default:g(n=>[t(`span`,null,r(e.getRemainingAmount(n.row)),1)]),_:1},8,[`label`]),i(I,{prop:`metadata`,label:e.$t(`usage.field.metadata`),width:`200px`,"class-name":`text-center`},{default:g(e=>[(w(!0),o(s,null,x(e.row.metadata,(e,t)=>(w(),m(z,{key:t,class:`mb-2`},{default:g(()=>[n(r(t)+`: `+r(e),1)]),_:2},1024))),128))]),_:1},8,[`label`]),i(I,{prop:`credential_id`,label:e.$t(`usage.field.credential`),width:`200px`,"class-name":`text-center`},{default:g(n=>[t(`span`,He,r(e.getCredentialLabel(n.row)),1),n.row.credential?.id||n.row.credential_id?(w(),o(`span`,Ue,[i(B,{content:n.row.credential?.id||n.row.credential_id,class:`inline-block`},null,8,[`content`])])):a(``,!0)]),_:1},8,[`label`]),i(I,{label:e.$t(`usage.field.createdAt`),width:`200px`},{default:g(n=>[t(`span`,We,r(e.$dayjs.format(n.row.created_at)),1)]),_:1},8,[`label`])]),_:1},8,[`data`,`empty-text`])),[[G,e.loading]]):a(``,!0)]),_:1})]),_:1})]),_:1}),i(U,{modelValue:e.detailDialogVisible,"onUpdate:modelValue":c[8]||=t=>e.detailDialogVisible=t,title:e.$t(`usage.dialog.detailTitle`),width:`70%`,top:`5vh`,"destroy-on-close":``},{default:g(()=>[i(H,{modelValue:e.detailActiveTab,"onUpdate:modelValue":c[7]||=t=>e.detailActiveTab=t},{default:g(()=>[i(V,{label:e.$t(`usage.dialog.request`),name:`request`},{default:g(()=>[e.detailLoading?(w(),m(D,{key:0,rows:6,animated:``})):e.detailRow?.metadata?.request?(w(),o(`pre`,Ge,r(e.formatJson(e.detailRow.metadata.request)),1)):(w(),o(`p`,Ke,r(e.$t(`usage.dialog.noData`)),1))]),_:1},8,[`label`]),i(V,{label:e.$t(`usage.dialog.response`),name:`response`},{default:g(()=>[e.detailLoading?(w(),m(D,{key:0,rows:6,animated:``})):e.detailRow?.metadata?.response?(w(),o(`pre`,qe,r(e.formatJson(e.detailRow.metadata.response)),1)):(w(),o(`p`,Je,r(e.$t(`usage.dialog.noData`)),1))]),_:1},8,[`label`])]),_:1},8,[`modelValue`])]),_:1},8,[`modelValue`,`title`]),i(v,null,{default:g(()=>[i(_,{span:10,offset:14},{default:g(()=>[t(`div`,Ye,[i(W,{"current-page":e.page,"page-size":e.limit,total:e.total,onChange:e.onPageChange},null,8,[`current-page`,`page-size`,`total`,`onChange`])])]),_:1})]),_:1})]),_:1})]),_:1})}var Ze=ie(_e,[[`render`,Xe],[`__scopeId`,`data-v-81b0a3c5`]]);export{Ze as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,I as t,Jt as n,L as r,N as i,T as a,at as o,ht as s,j as c,mt as l,ot as u,rt as d,tt as f,z as p}from"./vendor-chart-Dw-P17PN.js";import{r as m,t as h}from"./select-BStvECg1.js";import{n as g,t as _}from"./table-CaTq0fbd.js";import{t as v}from"./card-D-4S-l7a.js";import{n as y,t as b}from"./file-output-PWZ63KaJ.js";import{n as x,t as S}from"./row-B4KJ5qAM.js";import{t as C}from"./pagination-B3irjpSu.js";import{t as w}from"./skeleton-B3LIGUiE.js";import{t as T}from"./circle-check-GlUp7XCt.js";import{t as E}from"./clock-Wfu3yNCH.js";import{t as D}from"./dollar-sign-BkNO69TI.js";import{$n as O,Ai as k,E as A,Jr as j,Kt as M,Mi as N,gi as P}from"./index-DjH2rtqz.js";import{t as F}from"./CopyToClipboard-DFuxR3Az.js";var I=P(`receipt`,[[`path`,{d:`M12 17V7`,key:`pyj7ub`}],[`path`,{d:`M16 8h-6a2 2 0 0 0 0 4h4a2 2 0 0 1 0 4H8`,key:`1elt7d`}],[`path`,{d:`M4 3a1 1 0 0 1 1-1 1.3 1.3 0 0 1 .7.2l.933.6a1.3 1.3 0 0 0 1.4 0l.934-.6a1.3 1.3 0 0 1 1.4 0l.933.6a1.3 1.3 0 0 0 1.4 0l.933-.6a1.3 1.3 0 0 1 1.4 0l.934.6a1.3 1.3 0 0 0 1.4 0l.933-.6A1.3 1.3 0 0 1 19 2a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1 1.3 1.3 0 0 1-.7-.2l-.933-.6a1.3 1.3 0 0 0-1.4 0l-.934.6a1.3 1.3 0 0 1-1.4 0l-.933-.6a1.3 1.3 0 0 0-1.4 0l-.933.6a1.3 1.3 0 0 1-1.4 0l-.934-.6a1.3 1.3 0 0 0-1.4 0l-.933.6a1.3 1.3 0 0 1-.7.2 1 1 0 0 1-1-1z`,key:`ycz6yz`}]]),L={total_count:0,total_spent:0,state_counts:{}},R=p({name:`ConsoleOrderList`,components:{ExportIcon:b,MoneyIcon:D,ReceiptIcon:I,SuccessIcon:T,TimeIcon:E,Pagination:C,CopyToClipboard:F,ElRow:S,ElCol:x,ElTable:_,ElTableColumn:g,ElButton:N,ElTag:k,ElCard:v,ElSelect:m,ElOption:h,ElDatePicker:y,ElSkeleton:w},data(){return{OrderState:j,orders:[],loading:!1,total:void 0,limit:10,filterState:this.$route.query.state?.toString()||``,filterPayWay:this.$route.query.pay_way?.toString()||``,createdAtRange:(()=>{let e=this.$route.query.created_at_from?.toString(),t=this.$route.query.created_at_to?.toString();if(e&&t)return[new Date(e),new Date(t)]})(),summary:{...L},summaryLoading:!1,exporting:!1,shortcuts:[{text:this.$t(`usage.shortcuts.today`),value:()=>{let e=new Date,t=new Date;return t.setHours(0,0,0,0),[t,e]}},{text:this.$t(`usage.shortcuts.last7Days`),value:()=>{let e=new Date,t=new Date;return t.setDate(t.getDate()-7),[t,e]}},{text:this.$t(`usage.shortcuts.last1Month`),value:()=>{let e=new Date,t=new Date;return t.setMonth(t.getMonth()-1),[t,e]}}]}},computed:{page(){return parseInt(this.$route.query.page?.toString()||`1`)},stateOptions(){return[{value:j.PENDING,label:this.$t(`order.state.pending`)},{value:j.FINISHED,label:this.$t(`order.state.finished`)},{value:j.PAID,label:this.$t(`order.state.paid`)},{value:j.EXPIRED,label:this.$t(`order.state.expired`)},{value:j.FAILED,label:this.$t(`order.state.failed`)},{value:j.REFUNDED,label:this.$t(`order.state.refunded`)}]},payWayOptions(){return[{value:`WechatPay`,label:this.$t(`order.title.wechatPay`)},{value:`Stripe`,label:this.$t(`order.title.stripe`)},{value:`AliPay`,label:this.$t(`order.title.aliPay`)},{value:`X402`,label:this.$t(`order.title.x402`)},{value:`PayPal`,label:this.$t(`order.title.paypal`)}]},filterQuery(){let e={user_id:this.$store.getters.user?.id};return this.filterState&&(e.state=this.filterState),this.filterPayWay&&(e.pay_way=this.filterPayWay),this.createdAtRange?.[0]&&(e.created_at_from=this.createdAtRange[0]),this.createdAtRange?.[1]&&(e.created_at_to=this.createdAtRange[1]),e}},watch:{page:{handler(){this.onFetchData()}}},mounted(){this.onFetchData(),this.onFetchSummary()},methods:{getPriceString:M,stateTagType(e){return e===j.FINISHED||e===j.PAID?`success`:e===j.EXPIRED||e===j.FAILED?`danger`:e===j.REFUNDED?`warning`:`info`},stateLabel(e){return{[j.PENDING]:this.$t(`order.state.pending`),[j.PAID]:this.$t(`order.state.paid`),[j.FINISHED]:this.$t(`order.state.finished`),[j.EXPIRED]:this.$t(`order.state.expired`),[j.FAILED]:this.$t(`order.state.failed`),[j.REFUNDED]:this.$t(`order.state.refunded`)}[e]||e},isPendingAction(e){return e!==j.PAID&&e!==j.FINISHED&&e!==j.EXPIRED&&e!==j.FAILED&&e!==j.REFUNDED},goToDetail(e){this.$router.push({name:`console-order-detail`,params:{id:e}})},async onFilterChange(){await this.$router.push({name:this.$route.name?.toString(),query:{page:1,...this.filterState?{state:this.filterState}:{},...this.filterPayWay?{pay_way:this.filterPayWay}:{},...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0].toISOString()}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1].toISOString()}:{}}}),this.onFetchData(),this.onFetchSummary()},onPageChange(e){this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,page:e}})},onFetchData(){this.loading=!0,O.getAll({ordering:`-created_at`,limit:this.limit,offset:(this.page-1)*this.limit,...this.filterQuery}).then(({data:e})=>{this.orders=e.items,this.total=e.count}).catch(()=>{}).finally(()=>{this.loading=!1})},onFetchSummary(){this.summaryLoading=!0,O.getSummary(this.filterQuery).then(({data:e})=>{this.summary=e}).catch(()=>{this.summary={...L}}).finally(()=>{this.summaryLoading=!1})},onExport(){this.exporting=!0,O.exportCsv(this.filterQuery).then(({data:e})=>{let t=window.URL.createObjectURL(e),n=document.createElement(`a`);n.href=t,n.download=`orders.csv`,n.click(),window.URL.revokeObjectURL(t)}).catch(()=>{}).finally(()=>{this.exporting=!1})}}}),z={class:`title`},B={key:1,class:`card-content`},V={class:`icon-wrapper`},H={class:`description`},U={class:`value`},W={key:1,class:`card-content`},G={class:`icon-wrapper`},K={class:`description`},q={class:`value`},J={key:1,class:`card-content`},ee={class:`icon-wrapper`},Y={class:`description`},X={class:`value`},Z={key:1,class:`card-content`},Q={class:`icon-wrapper`},$={class:`description`},te={class:`value`},ne={class:`filter-row mb-3`},re={class:`key`},ie={class:`cursor-pointer`},ae={class:`price`},oe={class:`description`},se={class:`text-gray-500`},ce={class:`created-at`},le={class:`flex items-center justify-center flex-wrap`},ue={class:`float-right`};function de(p,m,h,g,_,v){let y=o(`el-col`),b=o(`el-row`),x=o(`el-skeleton`),S=o(`receipt-icon`),C=o(`el-card`),w=o(`money-icon`),T=o(`success-icon`),E=o(`time-icon`),D=o(`el-option`),O=o(`el-select`),k=o(`el-date-picker`),A=o(`export-icon`),j=o(`el-button`),M=o(`copy-to-clipboard`),N=o(`el-table-column`),P=o(`el-tag`),F=o(`el-table`),I=o(`pagination`),L=u(`loading`);return f(),c(b,{class:`panel`},{default:l(()=>[r(y,{span:24},{default:l(()=>[r(b,null,{default:l(()=>[r(y,{span:24},{default:l(()=>[e(`h2`,z,n(p.$t(`common.title.allOrders`)),1)]),_:1})]),_:1}),r(b,{gutter:16},{default:l(()=>[r(y,{md:6,sm:12,xs:24},{default:l(()=>[r(C,{shadow:`hover`,class:`item-mini mb-3`},{default:l(()=>[p.summaryLoading?(f(),c(x,{key:0})):(f(),i(`div`,B,[e(`div`,V,[r(S,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`p`,H,n(p.$t(`order.title.totalOrders`)),1),e(`p`,U,n(p.summary.total_count),1)]))]),_:1})]),_:1}),r(y,{md:6,sm:12,xs:24},{default:l(()=>[r(C,{shadow:`hover`,class:`item-mini mb-3`},{default:l(()=>[p.summaryLoading?(f(),c(x,{key:0})):(f(),i(`div`,W,[e(`div`,G,[r(w,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`p`,K,n(p.$t(`order.title.totalSpent`)),1),e(`p`,q,n(p.getPriceString({value:p.summary.total_spent})),1)]))]),_:1})]),_:1}),r(y,{md:6,sm:12,xs:24},{default:l(()=>[r(C,{shadow:`hover`,class:`item-mini mb-3`},{default:l(()=>[p.summaryLoading?(f(),c(x,{key:0})):(f(),i(`div`,J,[e(`div`,ee,[r(T,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`p`,Y,n(p.$t(`order.title.finishedOrders`)),1),e(`p`,X,n(p.summary.state_counts?.Finished||0),1)]))]),_:1})]),_:1}),r(y,{md:6,sm:12,xs:24},{default:l(()=>[r(C,{shadow:`hover`,class:`item-mini mb-3`},{default:l(()=>[p.summaryLoading?(f(),c(x,{key:0})):(f(),i(`div`,Z,[e(`div`,Q,[r(E,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`p`,$,n(p.$t(`order.title.pendingOrders`)),1),e(`p`,te,n(p.summary.state_counts?.Pending||0),1)]))]),_:1})]),_:1})]),_:1}),e(`div`,ne,[r(O,{modelValue:p.filterState,"onUpdate:modelValue":m[0]||=e=>p.filterState=e,clearable:``,placeholder:p.$t(`order.field.allStates`),class:`filter-select`,onChange:p.onFilterChange},{default:l(()=>[(f(!0),i(a,null,d(p.stateOptions,e=>(f(),c(D,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`]),r(O,{modelValue:p.filterPayWay,"onUpdate:modelValue":m[1]||=e=>p.filterPayWay=e,clearable:``,placeholder:p.$t(`order.field.allPayWays`),class:`filter-select`,onChange:p.onFilterChange},{default:l(()=>[(f(!0),i(a,null,d(p.payWayOptions,e=>(f(),c(D,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`]),r(k,{modelValue:p.createdAtRange,"onUpdate:modelValue":m[2]||=e=>p.createdAtRange=e,type:`datetimerange`,shortcuts:p.shortcuts,"range-separator":p.$t(`usage.placeholder.to`),"start-placeholder":p.$t(`usage.placeholder.startDate`),"end-placeholder":p.$t(`usage.placeholder.endDate`),onChange:p.onFilterChange},null,8,[`modelValue`,`shortcuts`,`range-separator`,`start-placeholder`,`end-placeholder`,`onChange`]),r(j,{type:`primary`,plain:``,loading:p.exporting,onClick:p.onExport},{default:l(()=>[r(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(` `+n(p.$t(`order.button.export`)),1)]),_:1},8,[`loading`,`onClick`])]),r(b,null,{default:l(()=>[r(y,{span:24},{default:l(()=>[r(C,{shadow:`hover`},{default:l(()=>[s((f(),c(F,{data:p.orders,stripe:``,"empty-text":p.$t(`common.message.noData`),class:`min-h-[calc(100vh-450px)] mb-[20px]`},{default:l(()=>[r(N,{prop:`id`,label:p.$t(`order.field.id`),"class-name":`text-center`,width:`200px`},{default:l(t=>[e(`span`,re,n(t.row.id),1),e(`span`,ie,[r(M,{content:t.row.id,class:`inline-block`},null,8,[`content`])])]),_:1},8,[`label`]),r(N,{label:p.$t(`order.field.price`),width:`110px`,align:`center`},{default:l(t=>[e(`span`,ae,n(p.getPriceString({value:t.row?.price})),1)]),_:1},8,[`label`]),r(N,{label:p.$t(`order.field.description`),"min-width":`220px`,"class-name":`hidden md:table-cell`,"label-class-name":`hidden md:table-cell`},{default:l(t=>[e(`span`,oe,n(t.row.description),1)]),_:1},8,[`label`]),r(N,{prop:`state`,label:p.$t(`order.field.state`),width:`130px`,align:`center`},{default:l(e=>[r(P,{type:p.stateTagType(e.row.state),class:`mx-1`,effect:`dark`,round:``,size:`small`},{default:l(()=>[t(n(p.stateLabel(e.row.state)),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),r(N,{label:p.$t(`order.field.payWay`),width:`120px`,align:`center`,"class-name":`hidden md:table-cell`,"label-class-name":`hidden md:table-cell`},{default:l(t=>[e(`span`,se,n(t.row.pay_way||`-`),1)]),_:1},8,[`label`]),r(N,{label:p.$t(`order.field.createdAt`),width:`200px`,"class-name":`hidden sm:table-cell`,"label-class-name":`hidden sm:table-cell`},{default:l(t=>[e(`span`,ce,n(p.$dayjs.format(t.row.created_at)),1)]),_:1},8,[`label`]),r(N,{"min-width":`130px`,fixed:`right`},{default:l(r=>[e(`div`,le,[p.isPendingAction(r.row.state)?(f(),c(j,{key:0,type:`primary`,size:`small`,onClick:e=>p.goToDetail(r.row.id)},{default:l(()=>[t(n(p.$t(`order.button.continuePay`)),1)]),_:1},8,[`onClick`])):(f(),c(j,{key:1,size:`small`,onClick:e=>p.goToDetail(r.row.id)},{default:l(()=>[t(n(p.$t(`order.button.checkDetail`)),1)]),_:1},8,[`onClick`]))])]),_:1})]),_:1},8,[`data`,`empty-text`])),[[L,p.loading]])]),_:1})]),_:1})]),_:1}),r(b,null,{default:l(()=>[r(y,{span:10,offset:14},{default:l(()=>[e(`div`,ue,[r(I,{"current-page":p.page,"page-size":p.limit,total:p.total,onChange:p.onPageChange},null,8,[`current-page`,`page-size`,`total`,`onChange`])])]),_:1})]),_:1})]),_:1})]),_:1})}var fe=A(R,[[`render`,de],[`__scopeId`,`data-v-c1fc3317`]]);export{fe as default};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,I as t,Jt as n,L as r,N as i,T as a,at as o,ht as s,j as c,mt as l,ot as u,rt as d,tt as f,z as p}from"./vendor-chart-Dw-P17PN.js";import{r as m,t as h}from"./select-CEdgwxFQ.js";import{n as g,t as _}from"./table-B7kafo6x.js";import{t as v}from"./card-D-4S-l7a.js";import{n as y,t as b}from"./file-output-DUxBnIvG.js";import{n as x,t as S}from"./row-DjZyv4fI.js";import{t as C}from"./pagination-b510-ovW.js";import{t as w}from"./skeleton-B3LIGUiE.js";import{t as T}from"./circle-check-CBf0RwJu.js";import{t as E}from"./clock-BcdcK_5I.js";import{t as D}from"./dollar-sign-BfZj2K8W.js";import{$n as O,Ai as k,E as A,Jr as j,Kt as M,Mi as N,gi as P}from"./index-B-TI1WPY.js";import{t as F}from"./CopyToClipboard-98XCpXWu.js";var I=P(`receipt`,[[`path`,{d:`M12 17V7`,key:`pyj7ub`}],[`path`,{d:`M16 8h-6a2 2 0 0 0 0 4h4a2 2 0 0 1 0 4H8`,key:`1elt7d`}],[`path`,{d:`M4 3a1 1 0 0 1 1-1 1.3 1.3 0 0 1 .7.2l.933.6a1.3 1.3 0 0 0 1.4 0l.934-.6a1.3 1.3 0 0 1 1.4 0l.933.6a1.3 1.3 0 0 0 1.4 0l.933-.6a1.3 1.3 0 0 1 1.4 0l.934.6a1.3 1.3 0 0 0 1.4 0l.933-.6A1.3 1.3 0 0 1 19 2a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1 1.3 1.3 0 0 1-.7-.2l-.933-.6a1.3 1.3 0 0 0-1.4 0l-.934.6a1.3 1.3 0 0 1-1.4 0l-.933-.6a1.3 1.3 0 0 0-1.4 0l-.933.6a1.3 1.3 0 0 1-1.4 0l-.934-.6a1.3 1.3 0 0 0-1.4 0l-.933.6a1.3 1.3 0 0 1-.7.2 1 1 0 0 1-1-1z`,key:`ycz6yz`}]]),L={total_count:0,total_spent:0,state_counts:{}},R=p({name:`ConsoleOrderList`,components:{ExportIcon:b,MoneyIcon:D,ReceiptIcon:I,SuccessIcon:T,TimeIcon:E,Pagination:C,CopyToClipboard:F,ElRow:S,ElCol:x,ElTable:_,ElTableColumn:g,ElButton:N,ElTag:k,ElCard:v,ElSelect:m,ElOption:h,ElDatePicker:y,ElSkeleton:w},data(){return{OrderState:j,orders:[],loading:!1,total:void 0,limit:10,filterState:this.$route.query.state?.toString()||``,filterPayWay:this.$route.query.pay_way?.toString()||``,createdAtRange:(()=>{let e=this.$route.query.created_at_from?.toString(),t=this.$route.query.created_at_to?.toString();if(e&&t)return[new Date(e),new Date(t)]})(),summary:{...L},summaryLoading:!1,exporting:!1,shortcuts:[{text:this.$t(`usage.shortcuts.today`),value:()=>{let e=new Date,t=new Date;return t.setHours(0,0,0,0),[t,e]}},{text:this.$t(`usage.shortcuts.last7Days`),value:()=>{let e=new Date,t=new Date;return t.setDate(t.getDate()-7),[t,e]}},{text:this.$t(`usage.shortcuts.last1Month`),value:()=>{let e=new Date,t=new Date;return t.setMonth(t.getMonth()-1),[t,e]}}]}},computed:{page(){return parseInt(this.$route.query.page?.toString()||`1`)},stateOptions(){return[{value:j.PENDING,label:this.$t(`order.state.pending`)},{value:j.FINISHED,label:this.$t(`order.state.finished`)},{value:j.PAID,label:this.$t(`order.state.paid`)},{value:j.EXPIRED,label:this.$t(`order.state.expired`)},{value:j.FAILED,label:this.$t(`order.state.failed`)},{value:j.REFUNDED,label:this.$t(`order.state.refunded`)}]},payWayOptions(){return[{value:`WechatPay`,label:this.$t(`order.title.wechatPay`)},{value:`Stripe`,label:this.$t(`order.title.stripe`)},{value:`AliPay`,label:this.$t(`order.title.aliPay`)},{value:`X402`,label:this.$t(`order.title.x402`)},{value:`PayPal`,label:this.$t(`order.title.paypal`)}]},filterQuery(){let e={user_id:this.$store.getters.user?.id};return this.filterState&&(e.state=this.filterState),this.filterPayWay&&(e.pay_way=this.filterPayWay),this.createdAtRange?.[0]&&(e.created_at_from=this.createdAtRange[0]),this.createdAtRange?.[1]&&(e.created_at_to=this.createdAtRange[1]),e}},watch:{page:{handler(){this.onFetchData()}}},mounted(){this.onFetchData(),this.onFetchSummary()},methods:{getPriceString:M,stateTagType(e){return e===j.FINISHED||e===j.PAID?`success`:e===j.EXPIRED||e===j.FAILED?`danger`:e===j.REFUNDED?`warning`:`info`},stateLabel(e){return{[j.PENDING]:this.$t(`order.state.pending`),[j.PAID]:this.$t(`order.state.paid`),[j.FINISHED]:this.$t(`order.state.finished`),[j.EXPIRED]:this.$t(`order.state.expired`),[j.FAILED]:this.$t(`order.state.failed`),[j.REFUNDED]:this.$t(`order.state.refunded`)}[e]||e},isPendingAction(e){return e!==j.PAID&&e!==j.FINISHED&&e!==j.EXPIRED&&e!==j.FAILED&&e!==j.REFUNDED},goToDetail(e){this.$router.push({name:`console-order-detail`,params:{id:e}})},async onFilterChange(){await this.$router.push({name:this.$route.name?.toString(),query:{page:1,...this.filterState?{state:this.filterState}:{},...this.filterPayWay?{pay_way:this.filterPayWay}:{},...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0].toISOString()}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1].toISOString()}:{}}}),this.onFetchData(),this.onFetchSummary()},onPageChange(e){this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,page:e}})},onFetchData(){this.loading=!0,O.getAll({ordering:`-created_at`,limit:this.limit,offset:(this.page-1)*this.limit,...this.filterQuery}).then(({data:e})=>{this.orders=e.items,this.total=e.count}).catch(()=>{}).finally(()=>{this.loading=!1})},onFetchSummary(){this.summaryLoading=!0,O.getSummary(this.filterQuery).then(({data:e})=>{this.summary=e}).catch(()=>{this.summary={...L}}).finally(()=>{this.summaryLoading=!1})},onExport(){this.exporting=!0,O.exportCsv(this.filterQuery).then(({data:e})=>{let t=window.URL.createObjectURL(e),n=document.createElement(`a`);n.href=t,n.download=`orders.csv`,n.click(),window.URL.revokeObjectURL(t)}).catch(()=>{}).finally(()=>{this.exporting=!1})}}}),z={class:`title`},B={key:1,class:`card-content`},V={class:`icon-wrapper`},H={class:`description`},U={class:`value`},W={key:1,class:`card-content`},G={class:`icon-wrapper`},K={class:`description`},q={class:`value`},J={key:1,class:`card-content`},ee={class:`icon-wrapper`},Y={class:`description`},X={class:`value`},Z={key:1,class:`card-content`},Q={class:`icon-wrapper`},$={class:`description`},te={class:`value`},ne={class:`filter-row mb-3`},re={class:`key`},ie={class:`cursor-pointer`},ae={class:`price`},oe={class:`description`},se={class:`text-gray-500`},ce={class:`created-at`},le={class:`flex items-center justify-center flex-wrap`},ue={class:`float-right`};function de(p,m,h,g,_,v){let y=o(`el-col`),b=o(`el-row`),x=o(`el-skeleton`),S=o(`receipt-icon`),C=o(`el-card`),w=o(`money-icon`),T=o(`success-icon`),E=o(`time-icon`),D=o(`el-option`),O=o(`el-select`),k=o(`el-date-picker`),A=o(`export-icon`),j=o(`el-button`),M=o(`copy-to-clipboard`),N=o(`el-table-column`),P=o(`el-tag`),F=o(`el-table`),I=o(`pagination`),L=u(`loading`);return f(),c(b,{class:`panel`},{default:l(()=>[r(y,{span:24},{default:l(()=>[r(b,null,{default:l(()=>[r(y,{span:24},{default:l(()=>[e(`h2`,z,n(p.$t(`common.title.allOrders`)),1)]),_:1})]),_:1}),r(b,{gutter:16},{default:l(()=>[r(y,{md:6,sm:12,xs:24},{default:l(()=>[r(C,{shadow:`hover`,class:`item-mini mb-3`},{default:l(()=>[p.summaryLoading?(f(),c(x,{key:0})):(f(),i(`div`,B,[e(`div`,V,[r(S,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`p`,H,n(p.$t(`order.title.totalOrders`)),1),e(`p`,U,n(p.summary.total_count),1)]))]),_:1})]),_:1}),r(y,{md:6,sm:12,xs:24},{default:l(()=>[r(C,{shadow:`hover`,class:`item-mini mb-3`},{default:l(()=>[p.summaryLoading?(f(),c(x,{key:0})):(f(),i(`div`,W,[e(`div`,G,[r(w,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`p`,K,n(p.$t(`order.title.totalSpent`)),1),e(`p`,q,n(p.getPriceString({value:p.summary.total_spent})),1)]))]),_:1})]),_:1}),r(y,{md:6,sm:12,xs:24},{default:l(()=>[r(C,{shadow:`hover`,class:`item-mini mb-3`},{default:l(()=>[p.summaryLoading?(f(),c(x,{key:0})):(f(),i(`div`,J,[e(`div`,ee,[r(T,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`p`,Y,n(p.$t(`order.title.finishedOrders`)),1),e(`p`,X,n(p.summary.state_counts?.Finished||0),1)]))]),_:1})]),_:1}),r(y,{md:6,sm:12,xs:24},{default:l(()=>[r(C,{shadow:`hover`,class:`item-mini mb-3`},{default:l(()=>[p.summaryLoading?(f(),c(x,{key:0})):(f(),i(`div`,Z,[e(`div`,Q,[r(E,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`p`,$,n(p.$t(`order.title.pendingOrders`)),1),e(`p`,te,n(p.summary.state_counts?.Pending||0),1)]))]),_:1})]),_:1})]),_:1}),e(`div`,ne,[r(O,{modelValue:p.filterState,"onUpdate:modelValue":m[0]||=e=>p.filterState=e,clearable:``,placeholder:p.$t(`order.field.allStates`),class:`filter-select`,onChange:p.onFilterChange},{default:l(()=>[(f(!0),i(a,null,d(p.stateOptions,e=>(f(),c(D,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`]),r(O,{modelValue:p.filterPayWay,"onUpdate:modelValue":m[1]||=e=>p.filterPayWay=e,clearable:``,placeholder:p.$t(`order.field.allPayWays`),class:`filter-select`,onChange:p.onFilterChange},{default:l(()=>[(f(!0),i(a,null,d(p.payWayOptions,e=>(f(),c(D,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`onChange`]),r(k,{modelValue:p.createdAtRange,"onUpdate:modelValue":m[2]||=e=>p.createdAtRange=e,type:`datetimerange`,shortcuts:p.shortcuts,"range-separator":p.$t(`usage.placeholder.to`),"start-placeholder":p.$t(`usage.placeholder.startDate`),"end-placeholder":p.$t(`usage.placeholder.endDate`),onChange:p.onFilterChange},null,8,[`modelValue`,`shortcuts`,`range-separator`,`start-placeholder`,`end-placeholder`,`onChange`]),r(j,{type:`primary`,plain:``,loading:p.exporting,onClick:p.onExport},{default:l(()=>[r(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(` `+n(p.$t(`order.button.export`)),1)]),_:1},8,[`loading`,`onClick`])]),r(b,null,{default:l(()=>[r(y,{span:24},{default:l(()=>[r(C,{shadow:`hover`},{default:l(()=>[s((f(),c(F,{data:p.orders,stripe:``,"empty-text":p.$t(`common.message.noData`),class:`min-h-[calc(100vh-450px)] mb-[20px]`},{default:l(()=>[r(N,{prop:`id`,label:p.$t(`order.field.id`),"class-name":`text-center`,width:`200px`},{default:l(t=>[e(`span`,re,n(t.row.id),1),e(`span`,ie,[r(M,{content:t.row.id,class:`inline-block`},null,8,[`content`])])]),_:1},8,[`label`]),r(N,{label:p.$t(`order.field.price`),width:`110px`,align:`center`},{default:l(t=>[e(`span`,ae,n(p.getPriceString({value:t.row?.price})),1)]),_:1},8,[`label`]),r(N,{label:p.$t(`order.field.description`),"min-width":`220px`,"class-name":`hidden md:table-cell`,"label-class-name":`hidden md:table-cell`},{default:l(t=>[e(`span`,oe,n(t.row.description),1)]),_:1},8,[`label`]),r(N,{prop:`state`,label:p.$t(`order.field.state`),width:`130px`,align:`center`},{default:l(e=>[r(P,{type:p.stateTagType(e.row.state),class:`mx-1`,effect:`dark`,round:``,size:`small`},{default:l(()=>[t(n(p.stateLabel(e.row.state)),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),r(N,{label:p.$t(`order.field.payWay`),width:`120px`,align:`center`,"class-name":`hidden md:table-cell`,"label-class-name":`hidden md:table-cell`},{default:l(t=>[e(`span`,se,n(t.row.pay_way||`-`),1)]),_:1},8,[`label`]),r(N,{label:p.$t(`order.field.createdAt`),width:`200px`,"class-name":`hidden sm:table-cell`,"label-class-name":`hidden sm:table-cell`},{default:l(t=>[e(`span`,ce,n(p.$dayjs.format(t.row.created_at)),1)]),_:1},8,[`label`]),r(N,{"min-width":`130px`,fixed:`right`},{default:l(r=>[e(`div`,le,[p.isPendingAction(r.row.state)?(f(),c(j,{key:0,type:`primary`,size:`small`,onClick:e=>p.goToDetail(r.row.id)},{default:l(()=>[t(n(p.$t(`order.button.continuePay`)),1)]),_:1},8,[`onClick`])):(f(),c(j,{key:1,size:`small`,onClick:e=>p.goToDetail(r.row.id)},{default:l(()=>[t(n(p.$t(`order.button.checkDetail`)),1)]),_:1},8,[`onClick`]))])]),_:1})]),_:1},8,[`data`,`empty-text`])),[[L,p.loading]])]),_:1})]),_:1})]),_:1}),r(b,null,{default:l(()=>[r(y,{span:10,offset:14},{default:l(()=>[e(`div`,ue,[r(I,{"current-page":p.page,"page-size":p.limit,total:p.total,onChange:p.onPageChange},null,8,[`current-page`,`page-size`,`total`,`onChange`])])]),_:1})]),_:1})]),_:1})]),_:1})}var fe=A(R,[[`render`,de],[`__scopeId`,`data-v-c1fc3317`]]);export{fe as default};
|