@higgsfield/video-editor-mcp 1.0.7 → 1.1.1-dev.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/THIRD_PARTY_NOTICES.md +24 -24
- package/dist/cli.mjs +134 -125
- package/dist/index.html +136 -133
- package/dist/launcher.mjs +90 -90
- package/dist/server.mjs +1553 -1389
- package/node_modules/@higgsfield/higgsedit/README.md +181 -1
- package/node_modules/@higgsfield/higgsedit/dist/capture-page.js +902 -314
- package/node_modules/@higgsfield/higgsedit/dist/chunk-2JYLVSVV.mjs +1594 -0
- package/node_modules/@higgsfield/higgsedit/dist/chunk-2WKNH7OL.mjs +16 -0
- package/node_modules/@higgsfield/higgsedit/dist/{chunk-OMKZ5BXM.mjs → chunk-5LTTL3Q3.mjs} +1 -1
- package/node_modules/@higgsfield/higgsedit/dist/chunk-7PYXSJS7.mjs +717 -0
- package/node_modules/@higgsfield/higgsedit/dist/{chunk-MLJAIZGP.mjs → chunk-BH2QF635.mjs} +33 -326
- package/node_modules/@higgsfield/higgsedit/dist/{chunk-WZR5PZM7.mjs → chunk-BV5COOQZ.mjs} +250 -161
- package/node_modules/@higgsfield/higgsedit/dist/{chunk-HTCYVKFX.mjs → chunk-C3GSB3XZ.mjs} +8 -7
- package/node_modules/@higgsfield/higgsedit/dist/{chunk-CYH2EUQV.mjs → chunk-DVN4LUXV.mjs} +13 -4
- package/node_modules/@higgsfield/higgsedit/dist/chunk-F4CMIG5G.mjs +36 -0
- package/node_modules/@higgsfield/higgsedit/dist/chunk-IEPPEDEU.mjs +33 -0
- package/node_modules/@higgsfield/higgsedit/dist/{chunk-UVAZ6I6U.mjs → chunk-KIWGVAPJ.mjs} +16 -12
- package/node_modules/@higgsfield/higgsedit/dist/{chunk-L6QDNSL3.mjs → chunk-L5LWBA6A.mjs} +5 -5
- package/node_modules/@higgsfield/higgsedit/dist/chunk-LMQR3DHT.mjs +37 -0
- package/node_modules/@higgsfield/higgsedit/dist/chunk-LTKMGZ6T.mjs +58 -0
- package/node_modules/@higgsfield/higgsedit/dist/{chunk-VI6IV6JP.mjs → chunk-MV2JTTBQ.mjs} +65 -47
- package/node_modules/@higgsfield/higgsedit/dist/{chunk-4D6AXU4B.mjs → chunk-NARTAWRN.mjs} +50 -30
- package/node_modules/@higgsfield/higgsedit/dist/{chunk-27NBQ5FA.mjs → chunk-NUXTKQNM.mjs} +33 -21
- package/node_modules/@higgsfield/higgsedit/dist/chunk-OCIZ36XD.mjs +40 -0
- package/node_modules/@higgsfield/higgsedit/dist/{chunk-MK6PL7N4.mjs → chunk-OF6RMSM2.mjs} +19 -17
- package/node_modules/@higgsfield/higgsedit/dist/{chunk-6BETMESC.mjs → chunk-P2BGHTRR.mjs} +2 -2
- package/node_modules/@higgsfield/higgsedit/dist/{chunk-EKFC4S4M.mjs → chunk-PAHMD6SU.mjs} +5 -0
- package/node_modules/@higgsfield/higgsedit/dist/{chunk-QVLAEV3U.mjs → chunk-PFQYUJQL.mjs} +3 -4
- package/node_modules/@higgsfield/higgsedit/dist/chunk-QJTILFBS.mjs +335 -0
- package/node_modules/@higgsfield/higgsedit/dist/chunk-QQ3GGKDN.mjs +21 -0
- package/node_modules/@higgsfield/higgsedit/dist/chunk-TH7TK67K.mjs +23 -0
- package/node_modules/@higgsfield/higgsedit/dist/{chunk-SIMO6I3D.mjs → chunk-UDL5AHKO.mjs} +163 -158
- package/node_modules/@higgsfield/higgsedit/dist/chunk-UMWOUQN3.mjs +60 -0
- package/node_modules/@higgsfield/higgsedit/dist/{chunk-3AIM3THH.mjs → chunk-VLM5EOWJ.mjs} +4 -4
- package/node_modules/@higgsfield/higgsedit/dist/chunk-WENFTPXQ.mjs +403 -0
- package/node_modules/@higgsfield/higgsedit/dist/chunk-YLVXQIPX.mjs +464 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/.vite/manifest.json +559 -506
- package/node_modules/@higgsfield/higgsedit/dist/editor/assets/agent-corner-bottom-q4hZltI-.svg +431 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/assets/agent-corner-top-BJYI-I24.svg +431 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/assets/confirmation-BTnwl3LS.css +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/assets/drag-Bt_t4HZO.css +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/assets/local-B3OTAV_A.css +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/assets/menubar-2Y1Y2XJt.css +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/assets/model-DdE4hCgf.css +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/assets/{IconText1-CzbCrP7v.css → notifications-B08L1jSe.css} +1 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/assets/{panel-g852pZf_.css → panel-BRN_AbBM.css} +1 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/assets/panel-CYELNqrv.css +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/assets/panel-DYLpT6oA.css +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/assets/panel-v84HaGTZ.css +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/IconChainLink1-Bxb1Or0F.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/{IconCheckmark2Medium-daaES9uF.js → IconCheckmark2Medium-hegaz9mQ.js} +1 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/{IconChevronDownSmall-BhTBJk26.js → IconChevronDownSmall-DaruzJwU.js} +1 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/IconClosedCaptioning-BPqcqKsD.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/{IconCrossMedium-acfnCXOM.js → IconCrossMedium-BsPFJzc6.js} +1 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/IconOpenaiFilled-D1fzthmi.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/{IconPause-pTeVSvUe.js → IconPause-ClNg8pao.js} +1 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/{IconPlayFilled-CwdgIuDG.js → IconPlayFilled-CHb-7GSx.js} +1 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/IconSparklesSoftFilled-o7o33KRn.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/ai-composer-B9h-eaki.js +567 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/auto-layout-BO20Tg4B.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/{button-CjG6GcgF.js → button-Cg0U0zpV.js} +1 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/canvas-Bw4CVzfw.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/capabilities-BCd4-zPF.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/commands-QeSqAbCt.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/components-tXMtIZNL.js +51 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/confirmation-CO2PHR_z.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/dom-6aoQn29n.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/drag-Dw8b_vO2.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/{editing-CjWbiCxv.js → editing-Cy-SaOyB.js} +1 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/edits-CqLBqir0.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/export-dialog-BjBskOe3.js +2 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/factories-Bw_iQrUL.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/id3-CSR0NCRI.js +2 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/import-DP49i4ke.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/import-error-CMz9sLPe.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/ingest-DsmIc415.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/jsx-runtime-B5yqYJvp.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/{media-Bwjxu-0U.js → media-DQw6vU_T.js} +1 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/menubar-D31srALX.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/meters-D0nZVEJs.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/mode-DEG6doKF.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/model-Duf9fszJ.js +2 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/model-DyAkLA69.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/notifications-DqWZNIrK.js +9 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/palette-HT83gWgL.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-B5Mvm6dg.js +7 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-BC90wyvd.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-Bw_ZJ2JI.js +3 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-DNS060Nt.js +3 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-DSgxIrEq.js +2 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-DgBttE5O.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-assets-_T2bHsHW.js +771 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-inspector-DfHvAt5X.js +2 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-nBZvHlkA.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-timeline-DsCpJVSt.js +327 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-viewport-CEhZwZ67.js +280 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/projects-2_tW9Do7.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/react-dom-1uB7Vbbb.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/schemas-CddYAOcj.js +64 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/session-BpFeKAI2.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/src-BLG3tYBa.js +2 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/styles-e2n2A_JN.js +284 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/supercomputer-CuV0zYKd.js +24 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/tabs-XeAgs9cs.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/toggle-DbNEaSIl.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/transport-C8Ll3qFl.js +69 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/transport-bar-Dv1LPFbu.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/useOpenInteractionType-HWSfSsp2.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/useRenderElement-D4SOg3N_.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/value-EB7YmAdS.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/writeback-support-fj5rA9k3.js +1 -0
- package/node_modules/@higgsfield/higgsedit/dist/editor/editor-B-WAkLt7.js +372 -0
- package/node_modules/@higgsfield/higgsedit/dist/higgsedit.mjs +39 -24
- package/node_modules/@higgsfield/higgsedit/dist/jsx/hooks.d.ts +26 -0
- package/node_modules/@higgsfield/higgsedit/dist/jsx/index.d.ts +17 -0
- package/node_modules/@higgsfield/higgsedit/dist/jsx/inspect.d.ts +42 -0
- package/node_modules/@higgsfield/higgsedit/dist/jsx/jsx-runtime.d.ts +28 -0
- package/node_modules/@higgsfield/higgsedit/dist/jsx/svg.d.ts +9 -0
- package/node_modules/@higgsfield/higgsedit/dist/jsx/time.d.ts +6 -0
- package/node_modules/@higgsfield/higgsedit/dist/jsx/types.d.ts +420 -0
- package/node_modules/@higgsfield/higgsedit/package.json +28 -20
- package/package.json +4 -3
- package/plugin/.codex-plugin/plugin.json +1 -1
- package/plugin/plugin.json +1 -1
- package/plugin/skills/video-editing/references/caption-titling.md +1 -1
- package/plugin/skills/video-editing/references/local-setup.md +3 -3
- package/node_modules/@higgsfield/higgsedit/dist/chunk-C6SASQHE.mjs +0 -424
- package/node_modules/@higgsfield/higgsedit/dist/chunk-FZ5U36SQ.mjs +0 -83
- package/node_modules/@higgsfield/higgsedit/dist/chunk-QLPCYN6K.mjs +0 -292
- package/node_modules/@higgsfield/higgsedit/dist/editor/assets/edit-drag-D2EV5ddd.css +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/assets/editor-CuRHT75g.css +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/assets/panel-DnuQD7ja.css +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/FieldControl-B0fenhBJ.js +0 -2
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/IconChainLink1-Cwv1X7hi.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/IconEyeOpen-BqTT9_VV.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/IconEyeSlash-Whv58c1m.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/IconPencil-Dr17k_7e.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/IconPlay-BroH3ziH.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/IconPlusSmall-43T9aE3d.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/IconText1-BaP_p9DW.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/IconTrashCan-DX2w2AIC.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/ai-composer-C-l0eIdP.js +0 -560
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/captions-Cd-bDG3G.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/clip-highlight-DpAvcA4x.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/components-e3ZbUVns.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/disposables-CwUPjcuA.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/drag-HLBkto5o.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/dropdown-BJ04G_X3.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/edit-drag-Bg6LggKC.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/edits-a2IixhrN.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/export-dialog-4I4gqI5V.js +0 -2
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/face-tracker-DzVfjVOO.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/fit-imported-media-CaCB0x0b.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/generation-queue-DuL2F4-_.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/import-error-CMARA0Hy.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/jsx-runtime-B-hcVAMW.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/menubar-Bs26OdwP.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/meters-YEr9OQjq.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/paints-DS2Msf91.js +0 -67
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/palette-CcS9IcAC.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-7M3uQokX.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-BBK1NyG-.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-CHZTs7By.js +0 -4
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-DaSOa3MP.js +0 -2
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-DlK3RYVo.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-Dst5OKWu.js +0 -2
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-H_ZoDiKK.js +0 -2
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-Rn9Z7Eek.js +0 -3
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-assets-FAghGFG3.js +0 -678
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-inspector-DEqULBNF.js +0 -260
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-timeline-0GYNz1uc.js +0 -333
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/panel-viewport-DOWjJi5-.js +0 -317
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/projects-BBJc7h5_.js +0 -2
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/session-B9sZaFKC.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/supercomputer-CX-LCL6Y.js +0 -24
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/tabs-CvKQ-eas.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/toggle-CrzrwiDZ.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/transport-BgRfk-Qq.js +0 -69
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/transport-bar-C9nqAfE2.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/typography-C5-w9LOu-kD3uLKkf.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/useOpenInteractionType-DbrQ6Ehu.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/useRenderElement-bbxXdYq0.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/chunks/writeback-support-BZfNpkmB.js +0 -1
- package/node_modules/@higgsfield/higgsedit/dist/editor/editor-Csn2_T_e.js +0 -293
- package/node_modules/@higgsfield/higgsedit/dist/export-settings.mjs +0 -75
- package/node_modules/@higgsfield/higgsedit/dist/history.mjs +0 -295
- package/node_modules/@higgsfield/higgsedit/dist/media-upload.mjs +0 -381
- package/node_modules/@higgsfield/higgsedit/dist/proxy.mjs +0 -170
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e}from"./import-error-CMz9sLPe.js";import{t}from"./asset-op-C6YhYJcd.js";import{i as n}from"./dom-6aoQn29n.js";import{o as r}from"./editing-Cy-SaOyB.js";var i=`capability:storage/local`,a=[{description:`Media files`,accept:{"image/*":[`.png`,`.jpg`,`.jpeg`,`.webp`,`.gif`,`.avif`,`.svg`,`.bmp`],"video/*":[`.mp4`,`.webm`,`.mov`,`.m4v`,`.mkv`],"audio/*":[`.mp3`,`.wav`,`.ogg`,`.oga`,`.m4a`,`.aac`,`.flac`]}}];function o(e){return n(e)?e.showOpenFilePicker?.bind(e)??null:null}function s(e){return typeof e==`object`&&!!e&&e.name===`AbortError`}async function c(n,a,o){if(o.length===0)return[];let s=a.snapshot()?.id??null;if(!s)return[];let c=await n.require(i),l=[];for(let t of o){try{l.push(await c.importFile(t))}catch(r){e(n,t.name,r)}if(a.snapshot()?.id!==s)return l}let u=a.snapshot();if(l.length===0||!u||u.id!==s)return l;let d=u.assets,f=l.map(e=>{let n=t({...u,assets:d},e,e);return n.op===`insert`&&(d=[...d,e]),n});return await n.commands.execute(`document.apply`,r(`Import media`,f)),l}function l(e,t){u(n=>void c(e,t,n),e.log)}function u(e,t){if(typeof document>`u`){t.warn(`import needs a DOM host`);return}let n=typeof window<`u`?o(window):null;if(!n)return d(e);n({multiple:!0,types:a}).then(t=>{t.length&&e(t)}).catch(n=>{s(n)||(t.warn(`native import picker failed: ${n instanceof Error?n.message:String(n)}`),d(e))})}function d(e){let t=document.createElement(`input`);t.type=`file`,t.multiple=!0,t.accept=`image/*,video/*,audio/*`,t.hidden=!0,t.onchange=()=>{let n=Array.from(t.files??[]);t.remove(),n.length&&e(n)},t.oncancel=()=>t.remove(),document.body.append(t),t.click()}export{l as n,u as r,i as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./jsx-runtime-B5yqYJvp.js";import{i as t,r as n}from"./notifications-DqWZNIrK.js";import{t as r}from"./IconCheckmark2Medium-hegaz9mQ.js";var i=e();function a(e){n({appearance:`editor`,variant:`error`,message:e instanceof Error?e.message:`Could not complete this action. Try again.`})}function o(e,t,a,o){n({variant:`success`,appearance:`editor`,message:e,description:t,icon:a??(0,i.jsx)(r,{size:16}),...o?{action:o}:{}})}function s(e){e<1||o(e===1?`Asset added`:`${e} assets added`,void 0,(0,i.jsx)(t,{size:16}))}function c(e){n({variant:`success`,appearance:`editor`,message:`Saved`,description:`All changes saved`,dismissible:!1,icon:(0,i.jsx)(r,{size:16}),...e?{action:{label:`Show in folder`,onClick:e}}:{}})}var l=`fable.media-import-error`;function u(e,t,n){let r=`Could not import ${t}: ${n instanceof Error?n.message:String(n)}`;e.log.warn(r),e.bus.publish(l,r)}export{c as a,a as i,u as n,o,s as r,l as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as e,f as t}from"./factories-Bw_iQrUL.js";var n=[`pending`,`waiting`,`queued`,`dna`,`script`,`visuals`,`vision`,`flow`,`in_progress`,`ip_detect`,`completed`,`canceled`,`failed`,`nsfw`,`ip_detected`],r=new Set([`completed`,`failed`,`canceled`,`nsfw`,`ip_detected`]);function i(e){return r.has(e)}var a=e=>/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e);function o(e,t,n){let r=e.findIndex(e=>e.id===t),i=e.filter(e=>e.id!==t&&!n?.some(t=>t.id===e.id));if(!n?.length)return i;let a=r<0?0:Math.min(r,i.length);return[...i.slice(0,a),...n,...i.slice(a)]}function s(e){if(!e||typeof e!=`object`)return null;let t=e;if(!Array.isArray(t.items))return null;let n=t.items.filter(e=>!!(e&&typeof e==`object`&&typeof e.id==`string`)),r=Array.isArray(t.models)?t.models.filter(e=>!!(e&&typeof e==`object`&&typeof e.id==`string`&&typeof e.label==`string`)):[];return{items:n,next_cursor:typeof t.next_cursor==`number`?t.next_cursor:null,models:r}}function c(e){if(typeof e!=`string`||!e.trim())return null;try{let t=new URL(e);return t.protocol===`https:`||t.protocol===`http:`?t.href:null}catch{return null}}function l(e,t){let n=e?.scenes.find(t=>t.id===e.activeSceneId);if(!e||!n)return[];let r=new Set(t),i=new Set(e.assets.filter(e=>e.kind===`video`).map(e=>e.id));return n.tracks.filter(e=>!e.locked).flatMap(t=>t.clips.filter(e=>r.has(e.id)&&!e.locked&&e.kind===`media`&&i.has(e.assetId)).sort((e,t)=>e.timeRange.start-t.timeRange.start).map(t=>({projectId:e.id,sceneId:n.id,clipId:t.id,assetId:t.assetId})))}function u(e,t){let n=l(e,t);if(n.length&&n.length===t.length)return n;let r=e?.scenes.find(t=>t.id===e.activeSceneId)?.tracks.flatMap(e=>e.clips.filter(e=>t.includes(e.id)));throw!r?.length||r.length!==t.length?Error(`Select a video clip on the timeline to use this tool.`):r.some(t=>t.kind!==`media`||!e?.assets.some(e=>e.id===t.assetId&&e.kind===`video`))?Error(`This tool only works with video clips. Select a video clip on the timeline.`):Error(`Unlock the selected video clips and their tracks to use this tool.`)}function d(e,t){if(e?.id!==t.projectId||e.activeSceneId!==t.sceneId)return null;let n=e.scenes.find(e=>e.id===t.sceneId);if(!n)return null;for(let[e,r]of n.tracks.entries()){let i=r.clips.find(e=>e.id===t.clipId);if(i?.kind===`media`&&i.assetId===t.assetId&&!i.locked&&!r.locked)return{scene:n,track:r,trackIndex:e,clip:i}}return null}function f(){return typeof crypto<`u`&&`randomUUID`in crypto?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}function p(e){return e.slice(0,40).replace(/[\\/:*?"<>|\n\r]+/g,` `).replace(/\s+/g,` `).trim()||`generated-media`}var m={x:0,y:0,scaleX:1,scaleY:1,rotation:0,skewX:0,skewY:0,anchorX:.5,anchorY:.5,flipX:!1,flipY:!1},h=e=>JSON.parse(JSON.stringify(e));function g(e,t,n){let r=e.kind===`image`?5:e.duration??5,i=e.width!=null&&e.width>0?e.width:t.width,a=e.height!=null&&e.height>0?e.height:t.height,o=Math.min(t.width/i,t.height/a),s={id:f(),name:e.name,transform:{...m,x:t.width/2,y:t.height/2,scaleX:o,scaleY:o},size:{width:i,height:a},opacity:1,blendMode:`normal`,effects:[],timeRange:{start:n,duration:r},animations:[],presetAnimations:[],mask:null,locked:!1,hidden:!1};return e.kind===`audio`?{...s,kind:`audio`,size:{width:0,height:0},transform:{...m},assetId:e.id,trim:{start:0,end:e.duration??r},speed:1,preservePitch:!0,volume:1,muted:!1}:{...s,kind:`media`,assetId:e.id,trim:{start:0,end:e.duration??r},speed:1,preservePitch:!0,volume:1,muted:!1,cornerRadius:{mixed:!1,uniform:0,tl:0,tr:0,br:0,bl:0}}}function _(e,t,n){let r=Math.max(0,t);for(let t of[...e?.clips??[]].sort((e,t)=>e.timeRange.start-t.timeRange.start)){let e=t.timeRange.start+t.timeRange.duration;if(!(e<=r+1e-6)){if(t.timeRange.start>=r+n-1e-6)break;r=e}}return r}function v(n,r,i,a,o){let s=n.scenes.find(e=>e.id===n.activeSceneId)??null;if(!s)return null;if(o&&`aboveSources`in o){let e=n,s=[],c=[];for(let n of o.aboveSources){let o=v(e,r,i,a,{aboveSource:n});if(!o)return null;s.push(...o.envelope.ops),c.push(o.clipId),e=t(e,o.envelope.ops)}return c.length?{clipId:c[0],clipIds:c,envelope:{id:f(),name:`Add generated clips`,coalesceKey:null,ops:s}}:null}let c=n.assets.some(e=>e.id===r.id)?[]:[{op:`insert`,path:[`assets`],index:n.assets.length,value:h(r)}];if(o&&`aboveSource`in o){let t=d(n,o.aboveSource);if(!t||r.kind===`audio`)return null;let i=g(r,s,t.clip.timeRange.start),a=o.aboveSource.resultRange===`clip`,l=o.aboveSource.resultRange===`extend`,u=a?0:t.clip.trim.start,p=a?1:t.clip.speed,m=((r.duration??t.clip.trim.end)-u)/p,_=a||l?m:Math.min(t.clip.timeRange.duration,m);if(_<=0)return null;i.timeRange.duration=_,i.trim={start:u,end:u+_*p},i.speed=p,i.preservePitch=t.clip.preservePitch,i.muted=t.clip.muted||t.track.muted,i.volume=t.clip.volume;let v=o.aboveSource.resultTrack,y=v?.sourceTrackId===t.track.id?v.id:void 0,b=s.tracks.findIndex(e=>e.id===y),x=s.tracks[b],S=x&&b>t.trackIndex&&!x.locked&&!x.hidden&&x.clips.every(e=>e.timeRange.start>=i.timeRange.start+_-1e-6||e.timeRange.start+e.timeRange.duration<=i.timeRange.start+1e-6),C=n.scenes.indexOf(s),w={...e(),...y&&!x?{id:y}:{},clips:[i]},T=S?{op:`insert`,path:[`scenes`,C,`tracks`,b,`clips`],index:x.clips.length,value:h(i)}:{op:`insert`,path:[`scenes`,C,`tracks`],index:t.trackIndex+1,value:h(w)};return{clipId:i.id,envelope:{id:f(),name:`Add generated clip`,coalesceKey:null,ops:[...c,T,{op:`set`,path:[`scenes`,C,`tracks`,t.trackIndex,`clips`,t.track.clips.indexOf(t.clip),`hidden`],value:!0}]}}}let l=o?s.tracks.find(e=>e.id===o.preferredTrackId&&!e.locked&&!e.hidden)??s.tracks.find(e=>!e.locked&&!e.hidden&&(!e.clips.length||e.clips.some(e=>e.kind!==`audio`))):void 0,u=g(r,s,o?_(l,i,r.kind===`image`?5:r.duration??5):Math.max(i,0)),p=a.planClipPlacement(n,s.id,u,{preferredTrackId:l?.id});if(!p)return null;let m=[...c,...p.ops];return{envelope:{id:f(),name:`Add generated clip`,ops:m,coalesceKey:null},clipId:u.id}}async function y(e,t){try{let n=e.snapshot();if(!n||t.projectId&&n.id!==t.projectId)return{ok:!1,message:`The video editor project changed`};let r=[];if(e.insertion&&`aboveSources`in e.insertion&&r.push(...e.insertion.aboveSources),e.insertion&&`aboveSource`in e.insertion&&r.push(e.insertion.aboveSource),r.some(e=>!d(n,e)))return{ok:!1,message:`The source clip is no longer available for reframing`};let i=e.playhead(),o=await e.fetchResult(t);if(e.snapshot()?.id!==n.id||e.snapshot()?.activeSceneId!==n.activeSceneId)return{ok:!1,message:`The video editor project or scene changed`};let s=o.name.includes(`.`)?o.name.split(`.`).pop():`bin`,c=`projectSrc`in o?o:new File([o],`${p(t.prompt)}.${s}`,{type:o.type}),l=await e.importFile(c,{generationId:t.id,sourceUrl:t.resultUrl??void 0});a(t.id)&&e.rememberSource?.(l,t.id);let u=async()=>{let t=e.snapshot();if(!t||t.id!==n.id||t.activeSceneId!==n.activeSceneId)return{ok:!1,message:`The video editor project or scene changed`};let a=v(t,l,i,e.placement,e.insertion);if(!a)return{ok:!1,message:r.length?`The source clip changed or is locked`:`No active scene`};await e.execute(`document.apply`,a.envelope);let o=e.snapshot(),s=o?.scenes.find(e=>e.id===n.activeSceneId)?.tracks.flatMap(e=>e.clips),c=(a.clipIds??[a.clipId]).every(e=>s?.some(t=>t.id===e));return o?.id!==n.id||!c?{ok:!1,message:`The result was not added to the target timeline. Reopen that project and retry.`}:(o.activeSceneId===n.activeSceneId&&e.select(a.clipId),{ok:!0,clipId:a.clipId})};return await(e.commit?e.commit(u):u())}catch(e){return{ok:!1,message:e instanceof Error?e.message:`Import failed`}}}export{l as a,s as c,i as d,d as i,o as l,y as n,c as o,u as r,a as s,f as t,n as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t,n)=>()=>{if(n)throw n[0];try{return e&&(t=e(e=0)),t}catch(e){throw n=[e],e}},s=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),c=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},l=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},u=(n,r,o)=>(o=n==null?{}:e(i(n)),l(r||!n||!n.__esModule||!a.call(n,`default`)?t(o,`default`,{value:n,enumerable:!0}):o,n)),d=e=>a.call(e,`module.exports`)?e[`module.exports`]:l(t({},`__esModule`,{value:!0}),e),f=s((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var S=Array.isArray;function C(){}var w={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function E(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function D(e,t){return E(e.type,t,e.props)}function O(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function k(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var A=/\/+/g;function j(e,t){return typeof e==`object`&&e&&e.key!=null?k(``+e.key):t.toString(36)}function M(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(C,C):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function N(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,N(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+j(e,0):a,S(o)?(i=``,c!=null&&(i=c.replace(A,`$&/`)+`/`),N(o,r,i,``,function(e){return e})):o!=null&&(O(o)&&(o=D(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(A,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(S(e))for(var u=0;u<e.length;u++)a=e[u],s=l+j(a,u),c+=N(a,r,i,s,o);else if(u=m(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+j(a,u++),c+=N(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return N(M(e),r,i,a,o);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return c}function P(e,t,n){if(e==null)return e;var r=[],i=0;return N(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function F(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t)},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var I=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},L={map:P,forEach:function(e,t,n){P(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return P(e,function(){t++}),t},toArray:function(e){return P(e,function(e){return e})||[]},only:function(e){if(!O(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=L,e.Component=v,e.Fragment=r,e.Profiler=a,e.PureComponent=b,e.StrictMode=i,e.Suspense=l,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=w,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return w.H.useMemoCache(e)}},e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=g({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!T.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return E(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)T.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return E(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=O,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:F}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=function(e){var t=w.T,n={};w.T=n;try{var r=e(),i=w.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(C,I)}catch(e){I(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),w.T=t}},e.unstable_useCacheRefresh=function(){return w.H.useCacheRefresh()},e.use=function(e){return w.H.use(e)},e.useActionState=function(e,t,n){return w.H.useActionState(e,t,n)},e.useCallback=function(e,t){return w.H.useCallback(e,t)},e.useContext=function(e){return w.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return w.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return w.H.useEffect(e,t)},e.useEffectEvent=function(e){return w.H.useEffectEvent(e)},e.useId=function(){return w.H.useId()},e.useImperativeHandle=function(e,t,n){return w.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return w.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return w.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return w.H.useMemo(e,t)},e.useOptimistic=function(e,t){return w.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return w.H.useReducer(e,t,n)},e.useRef=function(e){return w.H.useRef(e)},e.useState=function(e){return w.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return w.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return w.H.useTransition()},e.version=`19.2.8`})),p=s(((e,t)=>{t.exports=f()})),m=s((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),h=s(((e,t)=>{t.exports=m()}));export{c as a,o as i,p as n,d as o,s as r,u as s,h as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{n as e,s as t,t as n}from"./jsx-runtime-B5yqYJvp.js";import{f as r}from"./useRenderElement-D4SOg3N_.js";var i=t(e(),1);function a(e={}){let{threshold:t=.5,rootMargin:n,root:r=null,once:a=!1}=e,[o,s]=(0,i.useState)(null),[c,l]=(0,i.useState)(!1),u=(0,i.useCallback)(e=>s(e),[]);return(0,i.useEffect)(()=>{if(o==null||typeof IntersectionObserver>`u`)return;let e=new IntersectionObserver(n=>{let r=n[0];if(r==null)return;let i=r.isIntersecting&&r.intersectionRatio>=t;l(i),i&&a&&e.disconnect()},{threshold:t,rootMargin:n??void 0,root:r});return e.observe(o),()=>e.disconnect()},[o,t,n,r,a]),{ref:u,inView:c}}var o=n(),s={square:`aspect-square`,video:`aspect-video`,portrait:`q-media-portrait`,wide:`q-media-wide`,auto:``},c={cover:`object-cover`,contain:`object-contain`},l={none:`rounded-q-0`,sm:`rounded-q-150`,md:`rounded-q-300`,lg:`rounded-q-500`,full:`rounded-q-full`},u={fill:`q-media-overlay-fill`,top:`q-media-overlay-top`,bottom:`q-media-overlay-bottom`,center:`q-media-overlay-center`};function d({ratio:e=`video`,rounded:t=`md`,className:n,style:i,children:a,...c}){let u=typeof e==`number`;return(0,o.jsx)(`div`,{className:r(`q-media`,u?void 0:s[e],l[t],n),style:u?{"--q-media-ratio":e,...i}:i,...c,children:a})}function f({fit:e=`cover`,loading:t=`lazy`,decoding:n=`async`,className:i,alt:a=``,...s}){return(0,o.jsx)(`img`,{alt:a,loading:t,decoding:n,className:r(`q-media-fill`,c[e],i),...s})}function p({fit:e=`cover`,autoPlayInView:t=!1,inViewThreshold:n=.5,muted:s,playsInline:l,preload:u,className:d,ref:f,...p}){let{ref:m,inView:h}=a({threshold:n}),g=(0,i.useRef)(null),_=(0,i.useCallback)(e=>{g.current=e,m(e),typeof f==`function`?f(e):f!=null&&(f.current=e)},[m,f]);return(0,i.useEffect)(()=>{if(!t)return;let e=g.current;e!=null&&(h?e.play()?.catch(()=>{}):e.pause())},[t,h]),(0,o.jsx)(`video`,{ref:t?_:f,className:r(`q-media-fill`,c[e],d),muted:t?!0:s,playsInline:t?!0:l,preload:u??(t?`metadata`:void 0),...p})}function m({className:e,...t}){return(0,o.jsx)(`div`,{className:r(`q-media-fallback`,e),...t})}function h({placement:e=`fill`,className:t,...n}){return(0,o.jsx)(`div`,{className:r(`q-media-overlay`,u[e],t),...n})}function g({className:e,...t}){return(0,o.jsx)(`div`,{className:r(`q-media-caption`,e),...t})}var _=Object.assign(d,{Root:d,Image:f,Video:p,Fallback:m,Overlay:h,Caption:g});export{_ as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e,s as t,t as n}from"./jsx-runtime-B5yqYJvp.js";import{i as r}from"./import-error-CMz9sLPe.js";import{d as i}from"./useRenderElement-D4SOg3N_.js";import{H as a,O as o,S as s,b as c,h as l,k as u,x as d}from"./components-tXMtIZNL.js";import{X as f,_ as p,b as m,f as h,h as g,l as _,m as v,n as y,p as b,r as x,t as S,v as C,x as w,y as T}from"../editor-B-WAkLt7.js";import{t as E}from"./button-Cg0U0zpV.js";import{t as D}from"./writeback-support-fj5rA9k3.js";import{t as O}from"./IconSparklesSoftFilled-o7o33KRn.js";import{t as k}from"./IconPlayFilled-CHb-7GSx.js";var A=t(e(),1),j=n(),M=({size:e=24,...t})=>(0,j.jsx)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...t,children:(0,j.jsx)(j.Fragment,{children:(0,j.jsx)(`path`,{stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.5,d:`M5.75 9.5 12 15.75l6.25-6.25`})})});function N({open:e,onOpenChange:t,container:n,name:r,rename:i}){let a=(0,A.useRef)(null),o=(0,A.useRef)(!1),[s,c]=(0,A.useState)(!1),[l,u]=(0,A.useState)(``);async function d(){let e=a.current?.value.trim();if(!o.current){if(!e){u(`Enter a project name.`);return}o.current=!0,c(!0),u(``);try{e!==r&&await i(e),t(!1)}catch(e){u(e instanceof Error?e.message:`Could not rename the project. Try again.`)}finally{o.current=!1,c(!1)}}}return(0,j.jsx)(S.Root,{open:e,onOpenChange:e=>{o.current||(u(``),t(e))},children:(0,j.jsx)(S.Content,{"data-theme":`default-dark`,container:n,className:`ftr-rename-modal`,backdropClassName:`ftr-rename-backdrop`,size:`sm`,initialFocus:()=>(a.current?.select(),a.current),children:(0,j.jsxs)(`form`,{onSubmit:e=>{e.preventDefault(),d()},"aria-busy":s,children:[(0,j.jsxs)(S.Header,{children:[(0,j.jsx)(S.Title,{children:`Rename project`}),(0,j.jsx)(S.CloseButton,{disabled:s})]}),(0,j.jsx)(S.Body,{children:(0,j.jsx)(x,{ref:a,label:`Project name`,defaultValue:r,maxLength:120,disabled:s,error:l||void 0},String(e))}),(0,j.jsx)(S.Footer,{children:(0,j.jsxs)(S.FooterActions,{children:[(0,j.jsx)(E,{type:`button`,variant:`secondary`,size:`sm`,disabled:s,onClick:()=>t(!1),children:`Cancel`}),(0,j.jsx)(E,{type:`submit`,size:`sm`,disabled:s,children:s?`Renaming…`:`Rename`})]})})]})})})}function P(){let{projects:e,openProjects:t}=w(),{editor:n}=m(),i=b(e=>e?.name??null),o=e?.name??i??`Untitled project`,[u,f]=(0,A.useState)(!1),[p,h]=(0,A.useState)(!1),[g,_]=(0,A.useState)(null);async function v(t){try{await n?.session.flush(),await e?.open(t)}catch(e){r(e)}}return(0,j.jsxs)(j.Fragment,{children:[(0,j.jsxs)(a.Root,{open:e?.menuOpen??u,onOpenChange:e?.setMenuOpen??f,children:[(0,j.jsx)(a.Trigger,{render:(0,j.jsxs)(E,{ref:e=>{e&&_(l(e))},variant:`ghost`,size:`xs`,className:`ftr-project-name`,"aria-current":`page`,title:o,children:[(0,j.jsx)(`span`,{className:`ftr-project-title`,children:o}),(0,j.jsx)(M,{size:12})]})}),g&&(0,j.jsxs)(c,{container:g,align:`start`,className:`ftr-project-menu`,children:[(0,j.jsx)(s,{container:g,items:e?[{label:`Rename`,icon:`rename`,onSelect:()=>h(!0)}]:[{label:`My projects`,icon:`folder`,disabled:!t,onSelect:()=>t?.()}]}),!!e?.recent.length&&(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(a.Separator,{}),e.recent.map(e=>(0,j.jsx)(a.Item,{title:e.name,subtitle:e.path,start:(0,j.jsx)(d,{name:`folder`}),className:`ftr-recent-project`,onSelect:()=>void v(e.path)},e.path))]})]})]}),g&&e&&(0,j.jsx)(N,{open:p,onOpenChange:h,container:g,name:o,rename:e.rename})]})}function F({open:e,onOpenChange:t,container:n}){let{updates:r}=w(),[i,a]=(0,A.useState)(null),[o,s]=(0,A.useState)(``),c=(0,A.useRef)(!1),l=(0,A.useRef)(0);(0,A.useEffect)(()=>{if(!r||!e)return;let t=!0,n=async()=>{if(c.current)return;let e=++l.current;try{let n=await r.status();t&&e===l.current&&(a(n),s(``))}catch{t&&e===l.current&&s(`Update status is unavailable. Reopen this dialog to try again.`)}};n();let i=setInterval(()=>void n(),2e3);return()=>{t=!1,clearInterval(i)}},[r,e]);async function u(){if(!r||c.current||i?.checking)return;c.current=!0;let e=++l.current;s(``),a(e=>e&&{...e,checking:!0});try{let t=await r.check();e===l.current&&a(t)}catch{e===l.current&&(a(e=>e&&{...e,checking:!1}),s(`Could not start the update check. Try again.`))}finally{c.current=!1}}if(!r)return null;let d=o||i?.error,f=i?.readyVersion,p=i?.checking,m=i?p?`Checking for updates…`:d?`Could not check for updates`:f?`An update is ready`:i.supported?i.checkedAt?`You’re up to date`:`Stay up to date`:`Manual updates`:`Loading update status…`;return(0,j.jsx)(S.Root,{open:e,onOpenChange:t,children:(0,j.jsxs)(S.Content,{container:n??void 0,finalFocus:()=>n?.querySelector(`.ftr-editor-menu`)??null,"data-theme":`default-dark`,className:`ftr-updates-modal`,backdropClassName:`ftr-updates-backdrop`,size:`sm`,children:[(0,j.jsxs)(S.Header,{children:[(0,j.jsx)(S.Title,{children:`Video Editor updates`}),(0,j.jsx)(S.CloseButton,{})]}),(0,j.jsx)(S.Body,{padded:!1,children:(0,j.jsxs)(S.Workspace,{padded:!1,className:`ftr-updates-content`,children:[(0,j.jsx)(S.Description,{children:`Keep your editor up to date.`}),i&&(0,j.jsxs)(`div`,{className:`ftr-update-installed`,children:[(0,j.jsxs)(`div`,{children:[(0,j.jsx)(`span`,{children:`Current version`}),(0,j.jsx)(`strong`,{children:i.runningVersion})]}),i.channel&&(0,j.jsx)(`span`,{className:`ftr-update-channel`,children:i.channel===`next`?`Preview`:`Stable`})]}),(0,j.jsxs)(`div`,{className:`ftr-update-status`,"data-checking":p||void 0,"data-error":!!d||void 0,"data-ready":!!f||void 0,role:d?`alert`:`status`,"aria-live":`polite`,children:[(0,j.jsx)(`span`,{className:`ftr-update-status-icon`,"aria-hidden":`true`,children:p?(0,j.jsx)(`span`,{className:`ftr-update-spinner`}):d?`!`:f?`↓`:`✓`}),(0,j.jsxs)(`div`,{children:[(0,j.jsx)(`strong`,{children:m}),(0,j.jsx)(`p`,{children:d?(0,j.jsxs)(j.Fragment,{children:[d,` Your current editor remains available.`]}):p?`You can keep editing while we check and prepare updates.`:f?(0,j.jsxs)(j.Fragment,{children:[`Version `,f,` is ready. Reload the desktop app, then start a new chat to use it.`]}):i?i.supported?i.automatic?`Updates are downloaded automatically. New chats use the latest installed version.`:`Automatic checks are off. You can check for an update below.`:`Install a newer package or ZIP to update this editor.`:`Getting the latest information about your installation.`})]})]}),i&&(0,j.jsxs)(`dl`,{className:`ftr-update-details`,children:[(0,j.jsxs)(`div`,{children:[(0,j.jsx)(`dt`,{children:`Automatic updates`}),(0,j.jsxs)(`dd`,{children:[(0,j.jsx)(`span`,{className:`ftr-update-auto-dot`,"data-enabled":i.automatic}),i.automatic?`On`:`Off`]})]}),(0,j.jsxs)(`div`,{children:[(0,j.jsx)(`dt`,{children:`Last checked`}),(0,j.jsx)(`dd`,{children:i.checkedAt?new Date(i.checkedAt).toLocaleString(void 0,{month:`short`,day:`numeric`,hour:`numeric`,minute:`2-digit`}):`Not checked yet`})]})]})]})}),(0,j.jsx)(S.Footer,{children:(0,j.jsxs)(S.FooterActions,{children:[(0,j.jsx)(E,{className:`ftr-update-close`,variant:`secondary`,size:`sm`,onClick:()=>t(!1),children:`Close`}),(0,j.jsx)(E,{className:`ftr-update-check`,size:`sm`,disabled:!i?.supported||i.checking,onClick:()=>void u(),children:p?`Checking…`:`Check for updates`})]})})]})})}var I=({size:e=24,...t})=>(0,j.jsx)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...t,children:(0,j.jsx)(j.Fragment,{children:(0,j.jsx)(`path`,{stroke:`#fff`,strokeLinejoin:`round`,strokeWidth:1.5,d:`M15.75 5v14m-13-13.25a1 1 0 0 1 1-1h16.5a1 1 0 0 1 1 1v12.5a1 1 0 0 1-1 1H3.75a1 1 0 0 1-1-1z`})})}),L=[{title:`Playback`,rows:[{keys:[`Space`],action:`Play / pause`},{keys:[`J`,`K`,`L`],action:`Shuttle back / stop / forward`},{keys:[`←`,`→`],action:`Step one frame (nothing selected)`},{keys:[`Home`,`End`],action:`Jump to start / end`}]},{title:`Tools`,rows:[{keys:[`V`],action:`Move / Selection tool`},{keys:[`F`],action:`Frame (scene) tool`},{keys:[`R`],action:`Rect tool`},{keys:[`T`],action:`Text tool`},{keys:[`B`,`T`],action:`Blade / Trim (over timeline)`},{keys:[`Space`,`drag`],action:`Pan the canvas`}]},{title:`Editing`,rows:[{keys:[`⌘Z`,`⇧⌘Z`],action:`Undo / redo`},{keys:[`⌘C`,`⌘V`],action:`Copy / paste`},{keys:[`⌘D`],action:`Duplicate`},{keys:[`⌘A`],action:`Select all`},{keys:[`⌫`],action:`Delete selection`},{keys:[`⇧⌫`],action:`Ripple delete (close the gap)`},{keys:[`⌘G`,`⇧⌘G`],action:`Group / ungroup`},{keys:[`⇧⌘H`],action:`Hide / show selection`},{keys:[`←→↑↓`],action:`Nudge 1 px (⇧ = 10 px)`},{keys:[`Esc`],action:`Deselect / close overlay`}]},{title:`Timeline`,rows:[{keys:[`S`],action:`Split at playhead`},...D(`markers`)?[{keys:[`M`],action:`Add marker at playhead`}]:[],{keys:[`Shift`,`Drag`],action:`Snap playhead or dragged media`},{keys:[`⇧⌘A`],action:`Add adjustment layer`},{keys:[`⇧↑`,`⇧↓`],action:`Previous / next marker`},{keys:[`⌘2`],action:`Zoom to selection`},{keys:[`=`,`-`],action:`Zoom in / out (over timeline)`}]},{title:`File`,rows:[{keys:[`⌘S`],action:`Save project`},{keys:[`⌘O`],action:`Open project`},{keys:[`⌘I`],action:`Import media`},{keys:[`⌘E`],action:`Export dialog`},{keys:[`⇧⌘E`],action:`Export frame as PNG`}]},{title:`View`,rows:[{keys:[`⌘1`],action:`Zoom to fit`},{keys:[`⌘0`],action:`Zoom to 100%`},{keys:[`⌘J`],action:`Edit selection with prompt / open AI composer`},{keys:[`⌘K`],action:`Command palette`}]}];function R({onClose:e}){let[t,n]=(0,A.useState)(null);return(0,j.jsx)(`div`,{ref:e=>{e&&t!==e.ownerDocument.body&&n(e.ownerDocument.body)},children:t&&(0,j.jsx)(S.Root,{open:!0,onOpenChange:t=>!t&&e(),children:(0,j.jsxs)(S.Content,{container:t,size:`md`,"data-theme":`default-dark`,"aria-label":`Keyboard shortcuts`,children:[(0,j.jsxs)(S.Header,{children:[(0,j.jsx)(S.Title,{children:`Keyboard shortcuts`}),(0,j.jsx)(S.CloseButton,{})]}),(0,j.jsx)(S.Body,{children:(0,j.jsx)(`div`,{className:`grid grid-cols-1 gap-x-7 gap-y-1 tablet:grid-cols-2`,children:L.map(e=>(0,j.jsxs)(`section`,{className:`mb-3`,children:[(0,j.jsx)(`h3`,{className:`mb-1.5 border-b border-q-border-subtle pb-1.5 text-q-caption-sm-medium uppercase tracking-wide text-q-text-tertiary`,children:e.title}),e.rows.map(e=>(0,j.jsxs)(`div`,{className:`flex items-center justify-between gap-3 py-1`,children:[(0,j.jsx)(`span`,{className:`text-q-caption-sm-regular text-q-text-primary`,children:e.action}),(0,j.jsx)(`span`,{className:`inline-flex shrink-0 gap-1`,children:e.keys.map(e=>(0,j.jsx)(y,{children:e},e))})]},e.action))]},e.title))})}),(0,j.jsx)(S.Footer,{children:(0,j.jsx)(S.FooterCaption,{children:`⌘ is Ctrl on Windows/Linux. Every command is also runnable from the command palette (⌘K).`})})]})})})}var z=`data:image/webp;base64,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`,B=`https://static.higgsfield.ai/extension-video-editor/how-it-works-v3`,V=[{title:`Upload footage`,description:`Pick a template or create from scratch`,height:508,viewTop:32},{title:`Ask ChatGPT to edit`,description:`Type any changes directly in chat`,height:450,viewTop:90},{title:`Point out changes`,description:`Guide ChatGPT through drawings & notes`,height:506,viewTop:0},{title:`Export`,description:`Up to 4K, back into your chat`,height:522,viewTop:0}],H=[[0,0],[.42,.2],[.68269,.7],[.86538,.9],[1,1]],U=[[0,0],[.73737,.6],[1,1]];function W(e,t,n){let r=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 ${t} 761 ${n}" preserveAspectRatio="none"><defs><radialGradient id="falloff" gradientUnits="userSpaceOnUse" cx="0" cy="0" r="10" gradientTransform="${e===1?`matrix(32.85 27 -19.159 23.31 380.5 270)`:`matrix(33.45 25.65 -18.201 23.736 380.5 270)`}">${(e===3?U:H).map(([e,t])=>`<stop offset="${e}" stop-color="white" stop-opacity="${1-t}"/>`).join(``)}</radialGradient></defs><rect width="761" height="540" fill="url(#falloff)"/></svg>`;return`url("data:image/svg+xml,${encodeURIComponent(r)}")`}function G({open:e,onOpenChange:t,container:n,children:r}){let[i,a]=(0,A.useState)(0),o=i===V.length-1;return(0,j.jsxs)(S.Root,{open:e,onOpenChange:e=>{e&&a(0),t(e)},children:[r,(0,j.jsxs)(S.Content,{container:n??void 0,"data-theme":`default-dark`,className:`ftr-how-modal`,backdropClassName:`ftr-how-backdrop`,size:`2xl`,onKeyDown:e=>{if(!(e.altKey||e.ctrlKey||e.metaKey)&&(e.key===`ArrowRight`||e.key===`ArrowLeft`)){e.preventDefault(),e.stopPropagation();let t=e.key===`ArrowRight`?1:-1;a(e=>Math.max(0,Math.min(V.length-1,e+t)))}},children:[(0,j.jsx)(S.CloseButton,{className:`ftr-how-close`,"aria-label":`Close how it works`}),(0,j.jsx)(`div`,{className:`ftr-how-visual`,"aria-hidden":`true`,children:V.map((e,t)=>(0,j.jsxs)(`div`,{className:`ftr-how-frame`,"data-step":t+1,"data-active":i===t,style:{aspectRatio:`761 / ${e.height}`},children:[(0,j.jsx)(`img`,{className:`ftr-how-image`,src:`${B}/step-${t+1}.webp`,width:761,height:e.height,style:{maskImage:W(t,e.viewTop,e.height)},alt:``,decoding:`async`,draggable:!1}),t===1&&(0,j.jsx)(`img`,{className:`ftr-how-image ftr-how-composer`,src:`${B}/composer.webp`,width:442,height:54,alt:``,decoding:`async`,draggable:!1}),t===3&&(0,j.jsx)(`img`,{className:`ftr-how-image ftr-how-export-panel`,src:`${B}/export-panel.webp`,width:418,height:292,alt:``,decoding:`async`,draggable:!1})]},e.title))}),(0,j.jsxs)(`div`,{className:`ftr-how-content`,children:[(0,j.jsx)(S.Title,{className:`ftr-how-title`,children:`How it works`}),(0,j.jsx)(`ol`,{className:`ftr-how-steps`,"aria-label":`Video editing steps`,children:V.map((e,t)=>(0,j.jsx)(`li`,{children:(0,j.jsxs)(`button`,{type:`button`,className:`ftr-how-step`,"aria-current":i===t?`step`:void 0,onClick:()=>a(t),children:[(0,j.jsx)(`span`,{className:`ftr-how-number`,"aria-hidden":`true`,children:t+1}),(0,j.jsxs)(`span`,{className:`ftr-how-copy`,children:[(0,j.jsx)(`span`,{className:`ftr-how-step-title`,children:e.title}),(0,j.jsx)(`span`,{className:`ftr-how-description`,children:e.description})]})]})},e.title))}),(0,j.jsx)(E,{type:`button`,variant:o?`primary`:`ghost`,"data-last-step":o,"aria-label":o?`Start creating`:`Next`,size:`xs`,className:`ftr-how-next`,end:o?(0,j.jsx)(O,{size:16,"aria-hidden":!0}):void 0,onClick:()=>{o?t(!1):a(e=>Math.min(V.length-1,e+1))},children:o?`Start creating`:`Next →`})]})]})]})}function K({disabled:e}){let t=T();return(0,j.jsx)(`div`,{className:`ftr-save-project`,children:(0,j.jsx)(E,{variant:`tertiary`,size:`xs`,className:`ftr-save`,"aria-label":`Save project`,start:(0,j.jsx)(o,{size:16}),disabled:e,title:`Write every change to the project folder`,onClick:()=>void t.commands.execute(`fable.transport.save`),children:`Save`})})}function q(){let[e,t]=(0,A.useState)(!1),[n,r]=(0,A.useState)(null);return(0,j.jsx)(G,{open:e,onOpenChange:t,container:n,children:(0,j.jsxs)(S.Trigger,{render:(0,j.jsx)(E,{variant:`ghost`,size:`sm`,className:`ftr-guide`,ref:e=>{let t=e?.closest(`[data-video-editor-root]`);t&&n!==t&&r(t)}}),children:[(0,j.jsxs)(`span`,{className:`ftr-guide-preview`,children:[(0,j.jsx)(`img`,{src:z,alt:``,draggable:!1}),(0,j.jsx)(k,{size:20})]}),(0,j.jsx)(`span`,{children:`See how it works`})]})})}var J=`shell.inspector.toggle`;function Y(e,t,n={}){return{kind:`item`,label:e,command:t,...n}}var X={kind:`separator`},Z=`fable.transport.shortcuts.open`,Q={clipIds:[],sceneId:null,enteredGroupId:null},$=[];function ee(e,t){return e.hasDoc===t.hasDoc&&e.name===t.name&&e.scenes.length===t.scenes.length&&e.scenes.every((e,n)=>e.id===t.scenes[n].id&&e.name===t.scenes[n].name)}function te(){let{onHome:e,updates:t}=w(),n=(0,A.useRef)(null),r=v(),i=h(`fable.export-dialog.open`),[a,o]=(0,A.useState)(null),[s,c]=(0,A.useState)(!1),[l,d]=(0,A.useState)(!1),m=(0,A.useCallback)(()=>c(!0),[]),g=C(),_=p(r?.selection,Q,e=>e.clipIds.length),y=p(r?.clipboard,$,e=>e.length),x=b(e=>({hasDoc:e!==null,name:e?.name??null,scenes:e?e.scenes.map(e=>({id:e.id,name:e.name})):[]}),ee),S=_===0,T={hasDocument:x.hasDoc,selectionCount:_},O=[{kind:`item`,label:`Home`,disabled:!e,onSelect:()=>e?.()},X,Y(`Open project…`,`fable.projects.open`),X,Y(`Import…`,`fable.transport.import`,{shortcut:`⌘I`}),Y(`Export…`,`fable.export-dialog.open`,{args:{sceneId:null},shortcut:`⌘E`})];if(x.scenes.length>1){O.push({kind:`header`,label:`Export scene`});for(let e of x.scenes)O.push(Y(e.name,`fable.export-dialog.open`,{args:{sceneId:e.id}}))}O.push(Y(`Export frame as image`,`fable.transport.exportFramePng`,{shortcut:`⇧⌘E`,disabled:!x.hasDoc}));let k=[Y(g.undoName?`Undo ${g.undoName}`:`Undo`,`fable.transport.undo`,{shortcut:`⌘Z`,disabled:!g.canUndo}),Y(g.redoName?`Redo ${g.redoName}`:`Redo`,`fable.transport.redo`,{shortcut:`⇧⌘Z`,disabled:!g.canRedo}),X,Y(`Copy`,`fable.transport.copy`,{shortcut:`⌘C`,disabled:S}),Y(`Paste`,`fable.transport.paste`,{shortcut:`⌘V`,disabled:y===0}),Y(`Duplicate`,`fable.transport.duplicate`,{shortcut:`⌘D`,disabled:S}),Y(`Delete`,`fable.transport.delete`,{shortcut:`⌫`,disabled:S}),X,Y(`Group`,`fable.transport.group`,{shortcut:`⌘G`,disabled:S}),Y(`Ungroup`,`fable.transport.ungroup`,{shortcut:`⇧⌘G`,disabled:S}),X,Y(`Hide / Show`,`fable.transport.toggleHidden`,{shortcut:`⇧⌘H`,disabled:S}),X,Y(`Select all`,`fable.transport.selectAll`,{shortcut:`⌘A`}),Y(`Deselect`,`fable.transport.deselect`,{shortcut:`Esc`,disabled:S}),X,...[[`Move tool`,`move`],[`Frame tool`,`frame`],[`Rectangle tool`,`rect`],[`Text tool`,`text`]].map(([e,t])=>({kind:`item`,label:e,onSelect:()=>r?.setActiveTool(t)})),...D(`markers`)?[Y(`Add marker at playhead`,`fable.panel-timeline.addMarkerAtPlayhead`)]:[]],M=[Y(`Docked panels`,`shell.viewMode.docked`),Y(`Contextual controls`,`shell.viewMode.contextual`),X,Y(`Show / hide project panel`,`shell.panel.toggle.fable.panel-assets.panel`),...f.inspector?[Y(`Show / hide inspector`,J)]:[],Y(`Show / hide AI composer`,`fable.ai-composer.toggle`),Y(`Show / hide audio meters`,`shell.panel.toggle.fable.transport.meters`),X,Y(`Zoom to fit`,`fable.panel-viewport.zoomToFit`,{shortcut:`⌘1`}),Y(`Zoom to 100%`,`fable.panel-viewport.zoomToActual`,{shortcut:`⌘0`})],N=[{label:`File`,target:`menubar/file`,entries:O},{label:`Edit`,target:`menubar/edit`,entries:k},{label:`View`,target:`menubar/view`,entries:M},{label:`Settings`,target:`menubar/settings`,entries:[Y(`Keyboard shortcuts…`,Z),...t?[{kind:`item`,label:`Check for updates…`,onSelect:()=>d(!0)}]:[]]}];return(0,j.jsxs)(`div`,{ref:n,className:`ftr-topbar text-q-text-primary text-q-caption-sm-regular`,children:[(0,j.jsxs)(`nav`,{className:`ftr-breadcrumb`,"aria-label":`Breadcrumb`,children:[(0,j.jsx)(re,{label:`Edit video`,target:`menubar/file`,additionalTargets:[`menubar/edit`,`menubar/view`,`menubar/settings`],entries:N.flatMap(e=>[{kind:`header`,label:e.label},...e.entries]),context:T,open:a===`editor`,onToggle:()=>o(e=>e===`editor`?null:`editor`),onClose:()=>o(null),onOpenShortcuts:m}),(0,j.jsx)(`span`,{"aria-hidden":`true`,children:`/`}),(0,j.jsx)(P,{})]}),(0,j.jsx)(q,{}),(0,j.jsxs)(`div`,{className:`ftr-project-actions`,children:[f.inspector&&(0,j.jsx)(ne,{}),(0,j.jsx)(K,{disabled:!x.hasDoc}),(0,j.jsx)(E,{variant:`secondary`,size:`xs`,className:`ftr-export`,start:(0,j.jsx)(u,{size:16}),onClick:()=>void i({sceneId:null}),disabled:!x.hasDoc,children:`Export`}),(0,j.jsx)(`span`,{"data-export-status-slot":!0})]}),s&&(0,j.jsx)(R,{onClose:()=>c(!1)}),(0,j.jsx)(F,{open:l,onOpenChange:d,container:n.current?.closest(`[data-video-editor-root]`)})]})}function ne(){let e=_(),t=h(J);return e?(0,j.jsx)(E,{variant:`tertiary`,size:`xs`,className:`ftr-inspector-toggle`,"aria-label":`Inspector`,"aria-pressed":e.rightPanelOpen,title:`Show or hide the inspector`,onClick:()=>void t(),children:(0,j.jsx)(I,{size:16})}):null}function re({label:e,target:t,additionalTargets:n,entries:r,context:o,open:s,onToggle:l,onClose:u,onOpenShortcuts:d}){let f=T(),p=(0,A.useRef)(null),m=g(t,o,{enabled:s}),h=g(n[0],o,{enabled:s}),_=g(n[1],o,{enabled:s}),v=g(n[2],o,{enabled:s}),y=[...m,...h,..._,...v],b=(e,t)=>{if(e===Z){d();return}f.commands.execute(e,t).catch(t=>f.log.warn(`menu command "${e}" failed: ${t instanceof Error?t.message:String(t)}`))},x=y.map(e=>Y(e.title,e.command)),S=x.length===0?[...r]:r.length===0?x:[...r,X,...x],C=0,w=S.map(e=>({entry:e,key:e.kind===`separator`?`separator-${C++}`:e.kind===`header`?`header-${e.label}`:`item-${e.command??`action`}-${e.label}`}));return(0,j.jsxs)(a.Root,{open:s,onOpenChange:e=>e?l():u(),children:[(0,j.jsx)(a.Trigger,{render:(0,j.jsx)(E,{ref:p,variant:`ghost`,size:`xs`,className:`ftr-editor-menu`,children:(0,j.jsx)(i,{as:`span`,variant:`label-md-semi-bold`,children:e})})}),(0,j.jsx)(c,{container:p.current?.closest(`[data-video-editor-root]`)??p.current?.ownerDocument.body,align:`start`,sideOffset:4,className:`min-w-56`,"data-theme":`default-dark`,children:w.map(({entry:e,key:t})=>(0,j.jsx)(ie,{entry:e,onExec:b,onClose:u},t))})]})}function ie({entry:e,onExec:t,onClose:n}){return e.kind===`separator`?(0,j.jsx)(a.Separator,{}):e.kind===`header`?(0,j.jsx)(a.Label,{children:e.label}):(0,j.jsx)(a.Item,{title:e.label,disabled:e.disabled,end:e.shortcut?(0,j.jsx)(i,{as:`span`,variant:`caption-xs-regular`,color:`tertiary`,children:e.shortcut}):void 0,onSelect:()=>{e.disabled||(n(),e.onSelect?e.onSelect():e.command&&t(e.command,e.args))}})}export{te as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e,s as t,t as n}from"./jsx-runtime-B5yqYJvp.js";import{t as r}from"./editing-Cy-SaOyB.js";import{_ as i,d as a,m as o,p as s}from"../editor-B-WAkLt7.js";import{t as c}from"./canvas-Bw4CVzfw.js";import{n as l}from"./palette-HT83gWgL.js";var u=t(e(),1),d=`capability:audio/meters`,f=[`0`,`-3`,`-6`,`-12`,`-24`,`dB`],p=[0,-3,-6,-12,-24,-48],m=.12;function h(e){if(e<=1e-4)return 0;let t=20*Math.log10(e);if(t>=0)return 1;for(let e=1;e<p.length;e++){let n=p[e-1],r=p[e];if(t>=r)return 1-(e-1+(n-t)/(n-r))/(p.length-1)}return 0}function g(e,t,n,r){let i=Math.exp(-n/m);return e.level=t>e.level?t:e.level*i,e.level<1e-4&&(e.level=0),e.level>=e.hold?(e.hold=e.level,e.holdAt=r):r-e.holdAt>900&&(e.hold*=i,e.hold<1e-4&&(e.hold=0)),e.level>0||e.hold>0}function _(e){return String(e.index+1)}function v(e){return e?e.tracks.map((e,t)=>({track:e,index:t})).filter(({track:e})=>e.clips.some(e=>e.kind===`audio`||e.kind===`media`)).map(({track:e,index:t})=>({trackId:e.id,index:t,name:e.name})):[]}var y=n(),b=4,x=3,S=14,C=22,w=2,T={lane:`#1a1a1a`,safe:`#3fb950`,warning:`#d4a72c`},E=2;function D(e,t){return e.length===t.length&&e.every((e,n)=>e.trackId===t[n].trackId&&e.index===t[n].index&&e.name===t[n].name)}function O(){let e=o(),t=a(d),n=i(e?.playing,!1),l=s(e=>v(r(e)?.scene??null),D),f=(0,u.useMemo)(()=>{let e=l.map(e=>({read:t=>t?.trackPeak(e.trackId)??0,level:0,hold:0,holdAt:0}));return e.push({read:e=>e?.masterPeak()??0,level:0,hold:0,holdAt:0}),e.push({read:e=>e?.masterPeak()??0,level:0,hold:0,holdAt:0}),e},[l]),p=(0,u.useRef)(null),m=(0,u.useRef)(0),h=(0,u.useRef)([]),_=(0,u.useRef)({textW:null,grad:null,gradKey:-1,palette:null}),b=(0,u.useCallback)((e,r)=>{let i=performance.now(),a=m.current>0?Math.min(.1,(i-m.current)/1e3):1/60;m.current=i;let o=!0;for(let e of f)g(e,n?e.read(t):0,a,i)&&(o=!1);h.current=k(e,r,f,l,_.current),n||!o?p.current?.():m.current=0},[f,t,n,l]),x=(0,u.useCallback)(e=>{let t=e.currentTarget,n=e.nativeEvent.offsetX,r=h.current.find(e=>n>=e.x0&&n<e.x1)?.name??``;t.title!==r&&(t.title=r)},[]);return(0,y.jsx)(`div`,{className:`ftr-meters`,children:(0,y.jsx)(`div`,{className:`ftr-meters-canvas`,children:(0,y.jsx)(c,{draw:b,invalidate:p,onPointerMove:x})})})}function k(e,{width:t,height:n,dpr:r},i,a,o){let s=o.palette??=l(e.canvas);e.setTransform(r,0,0,r,0,0),e.clearRect(0,0,t,n),e.font=`11px ${s.fontMono}`,e.textBaseline=`middle`;let c=n-C,u=Math.max(1,c-w);if(!o.textW){let t=0;for(let n of f)t=Math.max(t,e.measureText(n).width);o.textW={scale:t,master:e.measureText(`Master`).width}}let{scale:d,master:p}=o.textW;e.fillStyle=s.textMuted,e.textAlign=`right`;let m=Math.max(0,u-12);for(let t=0;t<f.length;t++){let n=8+(f.length>1?t/(f.length-1)*m:0);e.fillText(f[t],d,n)}if(o.gradKey!==c||!o.grad){let t=e.createLinearGradient(0,c,0,w);t.addColorStop(0,T.safe),t.addColorStop(.55,T.safe),t.addColorStop(.78,T.warning),t.addColorStop(.96,s.error),o.grad=t,o.gradKey=c}let g=o.grad,v=(t,n)=>{e.fillStyle=T.lane,e.fillRect(t,w,b,u);let r=h(n.level);r>0&&(e.fillStyle=g,e.fillRect(t,c-r*u,b,r*u));let i=h(n.hold);i>.005&&(e.fillStyle=s.text,e.fillRect(t,w+(1-i)*u-1,b,2))},y=t-Math.max(11,p)/2-E,D=y-11/2;e.textAlign=`center`;let O=c+C/2,k=[],A=d+S;for(let t=0;t<a.length;t++){if(A+b>D-S){e.fillStyle=s.textMuted,e.fillText(`+${a.length-t}`,A+b/2,O);break}v(A,i[t]),e.fillStyle=s.textMuted,e.fillText(_(a[t]),A+b/2,O),k.push({x0:A-S/2,x1:A+b+S/2,name:a[t].name}),A+=18}return v(D,i[a.length]),v(D+b+x,i[a.length+1]),e.fillStyle=s.textMuted,e.fillText(`Master`,y,O),k}export{O as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
async function e(e,t,n){await e?.select(null),e?.mode.set(n),t?.setActiveTool(`move`),n&&(t?.pause(),t?.setSelection({clipIds:[]}))}export{e as t};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function e(e){return e<0?0:e>1?1:e}function t(e,t,n){let r=1-e;return 3*r*r*e*t+3*r*e*e*n+e*e*e}function n(e,n,r,i,a){if(a<=0)return 0;if(a>=1)return 1;let o=a;for(let s=0;s<8;s++){let s=t(o,e,r)-a;if(Math.abs(s)<1e-5)return t(o,n,i);let c=1-o,l=3*c*c*e+6*c*o*(r-e)+3*o*o*(1-r);if(Math.abs(l)<1e-6)break;o=Math.min(1,Math.max(0,o-s/l))}let s=0,c=1;for(let n=0;n<24;n++)o=(s+c)/2,t(o,e,r)<a?s=o:c=o;return t(o,n,i)}function r(t){let n=e(t),r=7.5625,i=2.75;if(n<1/i)return r*n*n;if(n<2/i){let e=n-1.5/i;return r*e*e+.75}if(n<2.5/i){let e=n-2.25/i;return r*e*e+.9375}let a=n-2.625/i;return r*a*a+.984375}function i(e,t){switch(e.kind){case`linear`:return t;case`hold`:return 0;case`steps`:return e.count>0?Math.min(1,Math.floor(t*e.count)/e.count):t;case`cubic-bezier`:return n(e.x1,e.y1,e.x2,e.y2,t);case`bounce`:return r(t);default:return t}}function a(e,t){let n=e.length;if(n===0)return null;let r=e[0];if(n===1||t<=r.time)return o(r.value);let a=e[n-1];if(t>=a.time)return o(a.value);let s=0;for(;s+1<n&&e[s+1].time<=t;)s++;let c=e[s],l=e[s+1],u=l.time-c.time,d=u>1e-9?(t-c.time)/u:1,f=i(c.easing,d);return typeof c.value==`number`&&typeof l.value==`number`?c.value+(l.value-c.value)*f:o(f<1?c.value:l.value)}function o(e){return typeof e==`number`&&Number.isFinite(e)?e:null}function s(e,t,n,r,i){return{property:e,unit:t,enter:n,exit:r,neutral:i}}var c={grow:[s(`scale`,`value`,.6,.6,1)],shrink:[s(`scale`,`value`,1.4,1.4,1)],"slide-left":[s(`offsetX`,`clip-width`,1,-1,0)],"slide-right":[s(`offsetX`,`clip-width`,-1,1,0)],"slide-up":[s(`offsetY`,`clip-height`,1,-1,0)],"slide-down":[s(`offsetY`,`clip-height`,-1,1,0)],spin:[s(`rotation`,`value`,-360,360,0)],twist:[s(`rotation`,`value`,-90,90,0),s(`scale`,`value`,.3,.3,1)]};function l(e,t,n,r){return t===`clip-width`?e*n:t===`clip-height`?e*r:e}function u(e,t){return t.height>0||e.kind!==`text`?t.height:e.fontSize*e.lineHeight*e.text.split(`
|
|
2
|
+
`).length}function d(e,t){let n=e.transform,r={x:n.x,y:n.y,scaleX:n.scaleX,scaleY:n.scaleY,rotation:n.rotation,skewX:n.skewX,skewY:n.skewY,width:e.size.width,height:e.size.height};for(let n of e.animations){let e=a(n.keyframes,t);if(e!==null)switch(n.property){case`positionX`:r.x=e;break;case`positionY`:r.y=e;break;case`offsetX`:r.x+=e;break;case`offsetY`:r.y+=e;break;case`scale`:r.scaleX*=e,r.scaleY*=e;break;case`scaleX`:r.scaleX=e;break;case`scaleY`:r.scaleY=e;break;case`rotation`:r.rotation=e;break;case`skewX`:r.skewX=e;break;case`skewY`:r.skewY=e;break;case`width`:r.width=e;break;case`height`:r.height=e}}return e.presetAnimations.length>0&&f(r,e.presetAnimations,e.timeRange.duration,t),r}function f(t,n,r,a){for(let o of n){let n=c[o.preset];if(!n)continue;let s=Math.min(Math.max(o.duration,0),r);if(s<=0)continue;let u=o.direction===`in`?0:r-s,d=o.direction===`in`?s:r,f=d-u,p=f<=1e-9?+(a>=d):e((a-u)/f),m=i(o.easing,p);for(let e of n){let n=l(o.direction===`in`?e.enter:e.exit,e.unit,t.width,t.height),r=l(e.neutral,e.unit,t.width,t.height),i=o.direction===`in`?n:r,a=i+((o.direction===`in`?r:n)-i)*m;switch(e.property){case`scale`:t.scaleX*=a,t.scaleY*=a;break;case`offsetX`:t.x+=a;break;case`offsetY`:t.y+=a;break;case`rotation`:t.rotation+=a}}}}function p(){return{a:1,b:0,c:0,d:1,e:0,f:0}}function m(e,t,n){let r=e.a*t.a+e.c*t.b,i=e.b*t.a+e.d*t.b,a=e.a*t.c+e.c*t.d,o=e.b*t.c+e.d*t.d,s=e.a*t.e+e.c*t.f+e.e,c=e.b*t.e+e.d*t.f+e.f;return n.a=r,n.b=i,n.c=a,n.d=o,n.e=s,n.f=c,n}var h=Math.PI/180;function g(e,t,n,r,i,a,o,s,c,l,u,d,f,p){let m=n*h,g=Math.cos(m),_=Math.sin(m),v=Math.tan(r*h),y=Math.tan(i*h),b=d?-a:a,x=f?-o:o,S=(g-_*y)*b,C=(_+g*y)*b,w=(g*v-_)*x,T=(_*v+g)*x,E=-s*l,D=-c*u;return p.a=S,p.b=C,p.c=w,p.d=T,p.e=S*E+w*D+e,p.f=C*E+T*D+t,p}function _(e,t,n){return g(t.x,t.y,t.rotation,t.skewX,t.skewY,t.scaleX,t.scaleY,e.anchorX,e.anchorY,t.width,t.height,e.flipX,e.flipY,n)}function v(e,t,n,r){return g(e.x,e.y,e.rotation,e.skewX,e.skewY,e.scaleX,e.scaleY,e.anchorX,e.anchorY,t,n,e.flipX,e.flipY,r)}function y(e,t){let n=e.a*e.d-e.b*e.c;if(!Number.isFinite(n)||Math.abs(n)<1e-12)return!1;let r=1/n;return t.a=e.d*r,t.b=-e.b*r,t.c=-e.c*r,t.d=e.a*r,t.e=(e.c*e.f-e.d*e.e)*r,t.f=(e.b*e.e-e.a*e.f)*r,!0}function b(e,t,n){return e.a*t+e.c*n+e.e}function x(e,t,n){return e.b*t+e.d*n+e.f}function S(e,t,n){return e.a*t+e.c*n}function C(e,t,n){return e.b*t+e.d*n}function w(e){return e?e.scenes.find(t=>t.id===e.activeSceneId)??e.scenes[0]??null:null}function T(e,t){return e?.scenes.find(e=>e.id===t)??null}function E(e,t,n){for(let r of e){if(r.id===t)return{clip:r,chain:[...n]};if(r.kind===`group`){n.push(r);let e=E(r.children,t,n);if(n.pop(),e)return e}}return null}function D(e,t){for(let n of e.tracks){let e=E(n.clips,t,[]);if(e)return e}return null}function O(e){return e.clip.locked||e.chain.some(e=>e.locked)}function k(e,t){let n=t;for(let t of e.chain)n-=t.timeRange.start;return n-e.clip.timeRange.start}function A(e,t){t.a=1,t.b=0,t.c=0,t.d=1,t.e=0,t.f=0;let n=p();for(let r of e)v(r.transform,r.size.width,r.size.height,n),m(t,n,t);return t}function j(e,t,n){n.a=1,n.b=0,n.c=0,n.d=1,n.e=0,n.f=0;let r=p(),i=t;for(let t of e){let e=i-t.timeRange.start;_(t.transform,d(t,M(t,e)),r),m(n,r,n),i=e}return n}function M(e,t){return Math.min(Math.max(t,0),e.timeRange.duration)}function N(e,t,n){j(e.chain,t,n);let r=M(e.clip,k(e,t)),i=p();return _(e.clip.transform,d(e.clip,r),i),m(n,i,n)}function P(e,t){let n=e.scenes.findIndex(e=>e.id===t);return n===-1?null:[`scenes`,n]}function F(e,t,n){for(let r=0;r<e.length;r++){let i=e[r],a=[...n,r];if(i.id===t)return a;if(i.kind===`group`){let e=F(i.children,t,[...a,`children`]);if(e)return e}}return null}function I(e,t){for(let n=0;n<e.scenes.length;n++){let r=e.scenes[n];for(let e=0;e<r.tracks.length;e++){let i=F(r.tracks[e].clips,t,[`scenes`,n,`tracks`,e,`clips`]);if(i)return i}}return null}export{x as _,D as a,d as b,O as c,_ as d,p as f,b as g,y as h,N as i,T as l,C as m,A as n,I as o,S as p,k as r,P as s,w as t,v as u,i as v,u as y};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e,s as t,t as n}from"./jsx-runtime-B5yqYJvp.js";import{t as r}from"./react-dom-1uB7Vbbb.js";import{t as i}from"./value-EB7YmAdS.js";import{S as a,_ as o,b as s,i as c,x as l}from"./edits-CqLBqir0.js";import{t as u}from"./asset-op-C6YhYJcd.js";import{a as d,l as f,s as p,t as m}from"./useRenderElement-D4SOg3N_.js";import{$ as h,A as g,C as _,D as v,Dt as y,E as b,G as x,Gt as S,Ht as C,It as w,J as T,K as E,L as D,M as O,N as k,O as A,Or as j,S as M,T as N,U as P,Ut as F,W as I,X as L,Y as R,a as z,bt as ee,it as B,j as te,k as V,n as ne,o as re,p as ie,pt as ae,q as oe,qt as se,s as ce,st as H,tt as le,ur as ue,vr as de,vt as fe,w as pe,xr as me,xt as he,yt as ge}from"./useOpenInteractionType-HWSfSsp2.js";import{$ as _e,K as ve,L as ye,Q as be,U as xe,X as Se,Y as Ce,at as we,it as Te,ot as Ee,q as De}from"./components-tXMtIZNL.js";var U=t(e()),Oe=U.createContext(void 0);function W(e){let t=U.useContext(Oe);if(t===void 0&&!e)throw Error(f(47));return t}var ke=t(r());function Ae(){return{...M(),disabled:!1,modal:!1,focusManagerModal:!1,instantType:void 0,openMethod:null,openChangeReason:null,titleElementId:void 0,descriptionElementId:void 0,stickIfOpen:!0,nested:!1,openOnHover:!1,closeDelay:0,hasViewport:!1}}var je={...pe,disabled:P(e=>e.disabled),instantType:P(e=>e.instantType),openMethod:P(e=>e.openMethod),openChangeReason:P(e=>e.openChangeReason),modal:P(e=>e.modal),focusManagerModal:P(e=>e.focusManagerModal),stickIfOpen:P(e=>e.stickIfOpen),titleElementId:P(e=>e.titleElementId),descriptionElementId:P(e=>e.descriptionElementId),openOnHover:P(e=>e.openOnHover),closeDelay:P(e=>e.closeDelay),hasViewport:P(e=>e.hasViewport)},Me=class e extends D{constructor(e,t,n=!1){let r={...Ae(),...e},i=new N;r.open&&e?.mounted===void 0&&(r.mounted=!0),r.floatingRootContext=_(i,t,n),super(r,{popupRef:U.createRef(),backdropRef:U.createRef(),internalBackdropRef:U.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerFocusTargetRef:U.createRef(),beforeContentFocusGuardRef:U.createRef(),stickIfOpenTimeout:new se,triggerElements:i},je)}setOpen=(e,t)=>{let n=t.reason===w,r=t.reason===`trigger-press`&&t.event.detail===0,i=!e&&(t.reason===`escape-key`||t.reason==null);t.preventUnmountOnClose=()=>{this.set(`preventUnmountingOnClose`,!0)};let a=this.select(`activeTriggerId`);if(!e&&t.reason===`close-press`&&t.trigger==null&&a!=null&&(t.trigger=this.context.triggerElements.getById(a)??this.select(`activeTriggerElement`)??void 0),this.context.onOpenChange?.(e,t),t.isCanceled)return;this.state.floatingRootContext.dispatchOpenChange(e,t);let o=()=>{let n={open:e,openChangeReason:t.reason};v(n,e,t.trigger),this.update(n)};n?(this.set(`stickIfOpen`,!0),this.context.stickIfOpenTimeout.start(500,()=>{this.set(`stickIfOpen`,!1)}),ke.flushSync(o)):o(),r||i?this.set(`instantType`,r?`click`:`dismiss`):t.reason===`focus-out`?this.set(`instantType`,`focus`):this.set(`instantType`,void 0)};static useStore(t,n){let{store:r,internalStore:i}=O(t,(t,r)=>new e(n,t,r));return U.useEffect(()=>i?.disposeEffect(),[i]),r}disposeEffect=()=>this.context.stickIfOpenTimeout.disposeEffect()},G=n();function Ne({props:e}){let{children:t,open:n,defaultOpen:r=!1,onOpenChange:i,onOpenChangeComplete:a,modal:o=!1,handle:s,triggerId:c,defaultTriggerId:l=null}=e,u=Me.useStore(s?.store,{modal:o,open:r,openProp:n,activeTriggerId:l,triggerIdProp:c});z(()=>{n===void 0&&u.state.open===!1&&r===!0&&u.update({open:!0,activeTriggerId:l})}),u.useControlledProp(`openProp`,n),u.useControlledProp(`triggerIdProp`,c);let d=u.useState(`open`),f=u.useState(`mounted`),p=u.useState(`payload`),m=L()!=null;u.useContextCallback(`onOpenChange`,i),u.useContextCallback(`onOpenChangeComplete`,a),te(u,d),A(u);let{forceUnmount:h}=V(d,u,()=>{u.update({stickIfOpen:!0,openChangeReason:null})});u.useSyncedValues({modal:o,nested:m}),U.useEffect(()=>{d||u.context.stickIfOpenTimeout.clear()},[u,d]);let g=U.useCallback(()=>{u.setOpen(!1,he(y))},[u]);U.useImperativeHandle(e.actionsRef,()=>({unmount:h,close:g}),[h,g]);let _=d||f,v=U.useMemo(()=>({store:u}),[u]);return(0,G.jsxs)(Oe.Provider,{value:v,children:[_&&(0,G.jsx)(Fe,{store:u,modal:o}),typeof t==`function`?t({payload:p}):t]})}function Pe(e){return W(!0)?(0,G.jsx)(Ne,{props:e}):(0,G.jsx)(T,{children:(0,G.jsx)(Ne,{props:e})})}function Fe({store:e,modal:t}){let n=e.useState(`floatingRootContext`),r=I(n,{outsidePressEvent:{mouse:t===`trap-focus`?`sloppy`:`intentional`,touch:`sloppy`}}),i=r.reference??p,a=r.trigger??p,o=U.useMemo(()=>d(b,r.floating),[r.floating]);return g(e,{activeTriggerProps:i,inactiveTriggerProps:a,popupProps:o}),null}var Ie=U.forwardRef(function(e,t){let{render:n,className:r,style:i,disabled:a=!1,nativeButton:o=!0,handle:s,payload:c,openOnHover:l=!1,delay:u=300,closeDelay:d=0,id:p,...h}=e,g=W(!0),_=s?.store??g?.store;if(!_)throw Error(f(74));let v=me(p),y=_.useState(`isTriggerActive`,v),b=_.useState(`floatingRootContext`),S=_.useState(`isOpenedByTrigger`,v),C=_.useState(`triggerPopupId`,v),w=U.useRef(null),{registerTrigger:T,isMountedByThisTrigger:E}=k(v,w,_,{payload:c,disabled:a,openOnHover:l,closeDelay:d}),D=_.useState(`openChangeReason`),O=_.useState(`stickIfOpen`),A=_.useState(`openMethod`),j=_.useState(`focusManagerModal`),M=we(b,{enabled:b!=null&&l&&(A!==`touch`||D!==`trigger-press`),mouseOnly:!0,move:!1,handleClose:Te(),restMs:u,delay:{close:d},triggerElementRef:w,isActiveTrigger:y,isClosing:()=>_.select(`transitionStatus`)===`ending`}),N=x(b,{enabled:b!=null,stickIfOpen:O}),P=ne(()=>_.select(`open`),e=>{_.set(`openMethod`,e)}),F=_.useState(`triggerProps`,E),{getButtonProps:I,buttonRef:L}=ae({disabled:a,native:o}),R={open(e){return e&&D===`trigger-press`?ge.open(e):ee.open(e)}},{preFocusGuardRef:z,handlePreFocusGuardFocus:B,handleFocusTargetFocus:te}=xe(_,w),V=m(`button`,e,{state:{disabled:a,open:S},ref:[L,t,T,w],props:[N.reference,M,F,P,{[le]:``,id:v,"aria-haspopup":`dialog`,"aria-expanded":S,"aria-controls":C},h,I],stateAttributesMapping:R});return E&&!j?(0,G.jsxs)(U.Fragment,{children:[(0,G.jsx)(H,{ref:z,onFocus:B}),(0,G.jsx)(U.Fragment,{children:V},v),(0,G.jsx)(H,{ref:_.context.triggerFocusTargetRef,onFocus:te})]}):(0,G.jsx)(U.Fragment,{children:V},v)}),Le=U.createContext(void 0);function Re(){let e=U.useContext(Le);if(e===void 0)throw Error(f(45));return e}var ze=U.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e,{store:i}=W();return i.useState(`mounted`)||n?(0,G.jsx)(Le.Provider,{value:n,children:(0,G.jsx)(h,{ref:t,...r})}):null}),K=U.createContext(void 0);function Be(){let e=U.useContext(K);if(!e)throw Error(f(46));return e}var Ve=U.forwardRef(function(e,t){let{render:n,className:r,style:i,anchor:a,positionMethod:o=`absolute`,side:s=`bottom`,align:c=`center`,sideOffset:l=0,alignOffset:u=0,collisionBoundary:d=`clipping-ancestors`,collisionPadding:f=5,arrowPadding:p=5,sticky:m=!1,disableAnchorTracking:h=!1,collisionAvoidance:g=B,..._}=e,{store:v}=W(),y=Re(),b=R(),x=v.useState(`floatingRootContext`),S=v.useState(`mounted`),C=v.useState(`open`),w=v.useState(`openChangeReason`),T=v.useState(`activeTriggerElement`),E=v.useState(`modal`),D=v.useState(`openMethod`),O=v.useState(`positionerElement`),k=v.useState(`instantType`),A=v.useState(`transitionStatus`),j=v.useState(`hasViewport`),M=U.useRef(null),N=F(O,!1,!1),P=Ce({anchor:a,floatingRootContext:x,positionMethod:o,mounted:S,side:s,sideOffset:l,align:c,alignOffset:u,arrowPadding:p,collisionBoundary:d,collisionPadding:f,sticky:m,disableAnchorTracking:h,keepMounted:y,nodeId:b,collisionAvoidance:g,adaptiveOrigin:j?Se:void 0}),I=x.useState(`domReferenceElement`);de(()=>{let e=I,t=M.current;if(e&&(M.current=e),t&&e&&e!==t){v.set(`instantType`,void 0);let e=new AbortController;return N(()=>{v.set(`instantType`,`trigger-change`)},e.signal),()=>{e.abort()}}},[I,N,v]),ve(C&&E===!0&&w!==`trigger-hover`,D===`touch`,O,T);let L=U.useCallback(e=>{v.set(`positionerElement`,e)},[v]),z={open:C,side:P.side,align:P.align,anchorHidden:P.anchorHidden,instant:k},ee=De(e,z,{styles:P.positionerStyles,transitionStatus:A,props:_,refs:[t,L],hidden:!S,inert:!C});return(0,G.jsxs)(K.Provider,{value:P,children:[S&&E===!0&&w!==`trigger-hover`&&(0,G.jsx)(re,{ref:v.context.internalBackdropRef,inert:ce(!C),cutout:T}),(0,G.jsx)(oe,{id:b,children:ee})]})}),He=U.createContext(void 0);function Ue(){let[e,t]=U.useState(0),n=j(()=>(t(e=>e+1),()=>{t(e=>Math.max(0,e-1))}));return{context:U.useMemo(()=>({register:n}),[n]),hasClosePart:e>0}}function We(e){let{value:t,children:n}=e;return(0,G.jsx)(He.Provider,{value:t,children:n})}var Ge={...fe,...S},Ke=U.forwardRef(function(e,t){let{render:n,className:r,style:i,initialFocus:a,finalFocus:o,...s}=e,{store:c}=W(),l=Be(),u=_e(!0)!=null,{context:d,hasClosePart:f}=Ue(),p=c.useState(`open`),h=c.useState(`openMethod`),g=c.useState(`instantType`),_=c.useState(`transitionStatus`),v=c.useState(`popupProps`),y=c.useState(`titleElementId`),x=c.useState(`descriptionElementId`),S=c.useState(`modal`),w=c.useState(`mounted`),T=c.useState(`openChangeReason`),D=c.useState(`activeTriggerElement`),O=c.useState(`floatingRootContext`),k=O.useState(`floatingId`),A=c.useState(`disabled`),j=c.useState(`openOnHover`),M=c.useState(`closeDelay`),N=s.id??k;C({open:p,ref:c.context.popupRef,onComplete(){p&&c.context.onOpenChangeComplete?.(!0)}}),Ee(O,{enabled:j&&!A,closeDelay:M});function P(e){return e!==`touch`||c.context.popupRef.current}let F=a===void 0?P:a,I=S!==!1&&f;c.useSyncedValue(`focusManagerModal`,I);let L=U.useCallback(e=>{c.set(`popupElement`,e)},[c]),R={open:p,side:l.side,align:l.align,instant:g,transitionStatus:_},z=m(`div`,e,{state:R,ref:[t,c.context.popupRef,L],props:[v,{id:N,role:`dialog`,...b,"aria-labelledby":y,"aria-describedby":x,onKeyDown(e){u&&ie.has(e.key)&&e.stopPropagation()}},be(_),s],stateAttributesMapping:Ge});return(0,G.jsx)(E,{context:O,openInteractionType:h,modal:I,disabled:!w||T===`trigger-hover`,initialFocus:F,returnFocus:o,restoreFocus:`popup`,previousFocusableElement:ue(D)?D:void 0,nextFocusableElement:c.context.triggerFocusTargetRef,beforeContentFocusGuardRef:c.context.beforeContentFocusGuardRef,children:(0,G.jsx)(We,{value:d,children:z})})}),q=new WeakMap;function qe(e){let t=q.get(e);return t||(t=new i(null),q.set(e,t)),t}var J=[{kind:`layer-blur`,label:`Gaussian Blur`,params:{value:8}},{kind:`film-grain`,label:`Film grain`,params:{grainAmount:.55,grainSize:1.5,scratchIntensity:.2,vignetteStrength:.25,fadeToSepia:0}},{kind:`grayscale`,label:`Grayscale`,params:{value:1}}];function Je(e){let t=e.replace(/^fable\./,``);return J.find(e=>e.kind===t)?.label??a(t)}function Ye(e,t,n){return t.kind===`media`?e.assets.some(e=>e.id===t.assetId&&(e.kind===`video`||e.kind===`image`)):n===`film-grain`?!1:t.kind===`text`||t.kind===`rect`||t.kind===`path`}function Y(e,t,n){let r=new Set(t),i=[];if(!r.size)return i;let a=(t,o)=>{t.forEach((t,s)=>{if(t.locked)return;let c=[...o,s];r.has(t.id)&&Ye(e,t,n)&&i.push({clip:t,path:c}),t.kind===`group`&&a(t.children,[...c,`children`])})};return e.scenes.forEach((t,n)=>{t.id===e.activeSceneId&&t.tracks.forEach((e,t)=>{e.locked||a(e.clips,[`scenes`,n,`tracks`,t,`clips`])})}),i}function Xe(e,t){return e?.id===t.documentId?Y(e,[t.clipId])[0]??null:null}function Ze(e,t,n){let r=J.find(e=>e.kind===n);if(!r)return null;let i=Y(e,t,n).map(({clip:e,path:t})=>({op:`set`,path:[...t,`effects`],value:[...e.effects,{id:l(),kind:n,enabled:!0,params:{...r.params}}]}));return i.length?{id:l(),name:`Add ${r.label}`,ops:i,coalesceKey:null}:null}function Qe(e,t,n){let r=Xe(e,t);if(!r)return null;let{clip:i,path:a}=r,o=new Set(i.effects.filter(e=>!n||e.id===n).map(e=>e.id));return o.size?{id:l(),name:n?`Remove effect`:`Remove all effects`,coalesceKey:null,ops:[{op:`set`,path:[...a,`effects`],value:i.effects.filter(e=>!o.has(e.id))},{op:`set`,path:[...a,`animations`],value:i.animations.filter(e=>!e.effectId||!o.has(e.effectId))}]}:null}function $e(e,t,n){let r=e.map(e=>({label:e,width:Math.ceil(n(e))+28}));if(r.reduce((e,t)=>e+t.width,Math.max(0,r.length-1)*4)<=t)return r;let i=0,a=[];for(let e=0;e<r.length;e++){let o=r[e],s=r.length-e-1,c=s?Math.ceil(n(`+${s}`))+28+4:0;if(i+o.width+c>t){let o=`+${r.length-e}`,s=Math.ceil(n(o))+28;i+s<=t&&a.push({label:o,width:s});break}a.push(o),i+=o.width+4}return a}var et=e=>{let t=U.useId();return U.createElement(it,{...e,instanceId:t})},tt=0,nt=typeof U.useId==`function`?void 0:class extends U.Component{state={};componentDidMount(){this.setState({instanceId:`legacy-${++tt}`})}render(){return U.createElement(it,{...this.props.iconProps,instanceId:this.state.instanceId})}},rt=U.forwardRef((e,t)=>nt?U.createElement(nt,{iconProps:{...e,svgRef:t}}):U.createElement(et,{...e,svgRef:t}));rt.displayName=`CentralIconBase`;var it=({children:e,size:t=24,ariaLabel:n,color:r,ariaHidden:i,"aria-hidden":a,"aria-label":o,role:s,svgRef:c,renderShapes:l,style:u,mode:d=`masked`,maskId:f,instanceId:p,...m})=>{let h=p?`${f}-${p}`:f,g=d!==`raw`&&!!f,_=a??i??!0,v=_===!0||_===`true`,y=o??n,b=l?l(h??p??`icon`):e;return U.createElement(`svg`,{...m,ref:c,"aria-hidden":_,"aria-label":o,role:s??(v?void 0:`img`),width:typeof t==`number`?`${t}px`:t,height:typeof t==`number`?`${t}px`:t,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,style:{color:r,...u}},y&&!v&&U.createElement(`title`,null,y),g?U.createElement(U.Fragment,null,U.createElement(`mask`,{id:h,maskUnits:`userSpaceOnUse`,x:`0`,y:`0`,width:`24`,height:`24`},U.createElement(`rect`,{width:`24`,height:`24`,fill:`#000`}),U.createElement(`g`,{fill:`none`,style:{color:`#fff`}},b)),U.createElement(`rect`,{width:`24`,height:`24`,fill:`currentColor`,mask:`url(#${h})`})):b)},at=U.memo(U.forwardRef((e,t)=>U.createElement(rt,{...e,ref:t,ariaLabel:`arrows-repeat-circle, repost`,maskId:`round-outlined-radius-2-stroke-1.5-IconArrowsRepeatCircle`},U.createElement(`path`,{d:`M10.75 1.5L14.25 4.75L10.75 8`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`}),U.createElement(`path`,{d:`M13.25 16L9.75 19.25L13.25 22.5`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`}),U.createElement(`path`,{d:`M10.75 19.2507H14C18.0041 19.2507 21.25 16.0048 21.25 12.0007C21.25 9.81577 20.2834 7.85656 18.7546 6.52734`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`}),U.createElement(`path`,{d:`M13.25 4.75H10C5.99593 4.75 2.75 7.99594 2.75 12C2.75 14.1854 3.71696 16.145 5.24638 17.4742`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`}))));function ot({error:e,creditsRefunded:t,canceled:n=!1,busy:r=!1,onRegenerate:i,onDelete:a}){return(0,G.jsxs)(`div`,{className:`editor-generation-failure`,children:[(0,G.jsxs)(`div`,{className:`editor-generation-failure-copy`,role:`status`,children:[(0,G.jsx)(`h3`,{children:n?`Generation canceled`:`Generation failed`}),(0,G.jsxs)(`p`,{children:[e||(n?`This generation was canceled.`:`We couldn't generate this clip. Please try again.`),t&&` Credits refunded.`]})]}),(0,G.jsxs)(`div`,{className:`editor-generation-failure-actions`,children:[(0,G.jsxs)(`button`,{type:`button`,disabled:r,onClick:i,children:[(0,G.jsx)(at,{size:16,"aria-hidden":`true`}),(0,G.jsx)(`span`,{children:`Regenerate`})]}),(0,G.jsxs)(`button`,{type:`button`,disabled:r,onClick:a,children:[(0,G.jsx)(ye,{size:16,"aria-hidden":`true`}),(0,G.jsx)(`span`,{children:`Delete`})]})]})]})}var st=({size:e=24,...t})=>(0,G.jsx)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...t,children:(0,G.jsx)(G.Fragment,{children:(0,G.jsx)(`path`,{stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:1.5,d:`m4.75 6.5.97 13.82a1 1 0 0 0 .998.93h10.564a1 1 0 0 0 .998-.93l.97-13.82m-16-.75h17.5M8.525 5.583a3.5 3.5 0 0 1 6.95 0M10 10.5v5.75m4-5.75v5.75`})})}),ct=e=>{let t=U.useId();return U.createElement(ft,{...e,instanceId:t})},lt=0,ut=typeof U.useId==`function`?void 0:class extends U.Component{state={};componentDidMount(){this.setState({instanceId:`legacy-${++lt}`})}render(){return U.createElement(ft,{...this.props.iconProps,instanceId:this.state.instanceId})}},dt=U.forwardRef((e,t)=>ut?U.createElement(ut,{iconProps:{...e,svgRef:t}}):U.createElement(ct,{...e,svgRef:t}));dt.displayName=`CentralIconBase`;var ft=({children:e,size:t=24,ariaLabel:n,color:r,ariaHidden:i,"aria-hidden":a,"aria-label":o,role:s,svgRef:c,renderShapes:l,style:u,mode:d=`masked`,maskId:f,instanceId:p,...m})=>{let h=p?`${f}-${p}`:f,g=d!==`raw`&&!!f,_=a??i??!0,v=_===!0||_===`true`,y=o??n,b=l?l(h??p??`icon`):e;return U.createElement(`svg`,{...m,ref:c,"aria-hidden":_,"aria-label":o,role:s??(v?void 0:`img`),width:typeof t==`number`?`${t}px`:t,height:typeof t==`number`?`${t}px`:t,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,style:{color:r,...u}},y&&!v&&U.createElement(`title`,null,y),g?U.createElement(U.Fragment,null,U.createElement(`mask`,{id:h,maskUnits:`userSpaceOnUse`,x:`0`,y:`0`,width:`24`,height:`24`},U.createElement(`rect`,{width:`24`,height:`24`,fill:`#000`}),U.createElement(`g`,{fill:`none`,style:{color:`#fff`}},b)),U.createElement(`rect`,{width:`24`,height:`24`,fill:`currentColor`,mask:`url(#${h})`})):b)},pt=U.memo(U.forwardRef((e,t)=>U.createElement(dt,{...e,ref:t,ariaLabel:`text-1`,maskId:`round-outlined-radius-2-stroke-1.5-IconText1`},U.createElement(`path`,{d:`M3.75 6.25V3.75H12H20.25V6.25`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`}),U.createElement(`path`,{d:`M12 20.25V3.75`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`}),U.createElement(`path`,{d:`M9.75 20.25H12H14.25`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`})))),mt=e=>{let t=U.useId();return U.createElement(vt,{...e,instanceId:t})},ht=0,gt=typeof U.useId==`function`?void 0:class extends U.Component{state={};componentDidMount(){this.setState({instanceId:`legacy-${++ht}`})}render(){return U.createElement(vt,{...this.props.iconProps,instanceId:this.state.instanceId})}},_t=U.forwardRef((e,t)=>gt?U.createElement(gt,{iconProps:{...e,svgRef:t}}):U.createElement(mt,{...e,svgRef:t}));_t.displayName=`CentralIconBase`;var vt=({children:e,size:t=24,ariaLabel:n,color:r,ariaHidden:i,"aria-hidden":a,"aria-label":o,role:s,svgRef:c,renderShapes:l,style:u,mode:d=`masked`,maskId:f,instanceId:p,...m})=>{let h=p?`${f}-${p}`:f,g=d!==`raw`&&!!f,_=a??i??!0,v=_===!0||_===`true`,y=o??n,b=l?l(h??p??`icon`):e;return U.createElement(`svg`,{...m,ref:c,"aria-hidden":_,"aria-label":o,role:s??(v?void 0:`img`),width:typeof t==`number`?`${t}px`:t,height:typeof t==`number`?`${t}px`:t,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,style:{color:r,...u}},y&&!v&&U.createElement(`title`,null,y),g?U.createElement(U.Fragment,null,U.createElement(`mask`,{id:h,maskUnits:`userSpaceOnUse`,x:`0`,y:`0`,width:`24`,height:`24`},U.createElement(`rect`,{width:`24`,height:`24`,fill:`#000`}),U.createElement(`g`,{fill:`none`,style:{color:`#fff`}},b)),U.createElement(`rect`,{width:`24`,height:`24`,fill:`currentColor`,mask:`url(#${h})`})):b)},yt=U.memo(U.forwardRef((e,t)=>U.createElement(_t,{...e,ref:t,ariaLabel:`boolean-group-intersect-3`,maskId:`round-outlined-radius-2-stroke-1.5-IconBooleanGroupIntersect3`},U.createElement(`path`,{d:`M8.75 4.75C8.75 3.64543 9.64543 2.75 10.75 2.75H19.25C20.3546 2.75 21.25 3.64543 21.25 4.75V13.25C21.25 14.3546 20.3546 15.25 19.25 15.25H10.75C9.64543 15.25 8.75 14.3546 8.75 13.25V4.75Z`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`}),U.createElement(`path`,{d:`M12.25 8.75H13.25C14.3546 8.75 15.25 9.64543 15.25 10.75V11.75`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`}),U.createElement(`path`,{d:`M8.75 8.75H4.75C3.64543 8.75 2.75 9.64543 2.75 10.75V19.25C2.75 20.3546 3.64543 21.25 4.75 21.25H13.25C14.3546 21.25 15.25 20.3546 15.25 19.25V15.25`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`})))),bt=({size:e=24,...t})=>(0,G.jsx)(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...t,children:(0,G.jsx)(G.Fragment,{children:(0,G.jsx)(`path`,{fill:`currentColor`,d:`M5 16c.099 0 .187.064.216.16l.202.657c.26.844.92 1.505 1.765 1.765l.658.202a.226.226 0 0 1 0 .432l-.658.202c-.844.26-1.505.92-1.765 1.765l-.202.658a.226.226 0 0 1-.432 0l-.202-.658a2.67 2.67 0 0 0-1.765-1.765l-.658-.202a.226.226 0 0 1 0-.432l.658-.202a2.67 2.67 0 0 0 1.765-1.765l.202-.658A.23.23 0 0 1 5 16m8-14c.297 0 .56.194.648.478l.607 1.974a8 8 0 0 0 5.293 5.293l1.975.607a.678.678 0 0 1 0 1.296l-1.975.607a8 8 0 0 0-5.293 5.293l-.607 1.975a.678.678 0 0 1-1.296 0l-.607-1.975a8 8 0 0 0-5.293-5.293l-1.974-.607a.678.678 0 0 1 0-1.296l1.974-.607a8 8 0 0 0 5.293-5.293l.607-1.974A.68.68 0 0 1 13 2`})})});function xt(e,t,n){let r=new Set(t),i=[];if(r.size===0)return i;let a=(t,o)=>{t.forEach((t,c)=>{if(t.locked)return;let l=[...o,c];if(r.has(t.id)&&t.timeRange.duration>0){let r=t.kind===`media`&&e.assets.some(e=>e.id===t.assetId&&e.kind===`video`);s(t.kind,r).includes(n)&&i.push({clip:t,path:l})}t.kind===`group`&&a(t.children,[...l,`children`])})};return e.scenes.forEach((e,t)=>{e.tracks.forEach((e,n)=>{e.locked||a(e.clips,[`scenes`,t,`tracks`,n,`clips`])})}),i}function St(e,t,n,r=`in`){let i=r===`combo`?[`in`,`out`]:[r],a=xt(e,t,n).map(({clip:e,path:t})=>({op:`set`,path:[...t,`presetAnimations`],value:[...e.presetAnimations,...i.map(t=>c(n,t,Math.min(o,e.timeRange.duration/i.length)))]}));return a.length?{id:l(),name:`Apply motion preset`,ops:a,coalesceKey:null}:null}var Ct=[{id:`auto-cut`,label:`Auto Cut`,hint:`Create an automatic cut of the selected video clips with a prompt`,command:`fable.ai-composer.auto-cut`},{id:`reframe`,label:`Reframe`,hint:`Change the clip’s aspect ratio`,command:`fable.ai-composer.reframe`},{id:`video-background-remover`,label:`Remove BG`,hint:`Remove the clip’s background`,command:`fable.ai-composer.remove-background`},{id:`video-upscale`,label:`Upscale`,hint:`Increase the video resolution`,command:`fable.ai-composer.upscale`},{id:`fps-boost`,label:`FPS Boost`,hint:`Change the frame rate`,command:`fable.ai-composer.fps-boost`},{id:`extend`,label:`Extend Video`,hint:`Generate a continuation`,command:`fable.ai-composer.extend`},{id:`sdr-to-hdr`,label:`SDR to HDR`,hint:`Convert SDR footage to HDR`,command:`fable.ai-composer.sdr-to-hdr`},{id:`depth-map`,label:`Depth Map`,hint:`Generate a depth map`,command:`fable.ai-composer.depth-map`}];function wt(e,t,n){let r=e.scenes.find(t=>t.id===e.activeSceneId);if(!r)return[];if(n.kind===`graphics`||n.kind===`animations`)return xt({...e,scenes:[r]},t,n.preset).map(({clip:e})=>e.id);if(n.kind===`effects`)return Y(e,t,n.effect).map(({clip:e})=>e.id);let i=new Set(t);return r.tracks.filter(e=>!e.locked).flatMap(t=>t.clips.filter(t=>i.has(t.id)&&!t.locked&&t.kind===`media`&&e.assets.some(e=>e.id===t.assetId&&e.kind===`video`)).map(e=>e.id))}var X=new WeakMap;function Tt(e){let t=X.get(e);return t||(t=new i([]),X.set(e,t)),t}async function Et(e,t,n,r,i){let a=t.snapshot();if(!a)return;let o=wt(a,i,r);if(!o.length)return;let s=Tt(t),c={documentId:a.id,clipIds:o};s.set([...s.get(),c]);try{if(r.kind===`graphics`||r.kind===`animations`){let t=St(a,o,r.preset,r.kind===`animations`?r.mode:`in`);t&&await e.commands.execute(`document.apply`,t);return}if(r.kind===`effects`){let t=Ze(a,o,r.effect);t&&await e.commands.execute(`document.apply`,t);return}let t=Ct.find(e=>e.id===r.id);if(!t)return;n.setSelection({clipIds:o,sceneId:a.activeSceneId,enteredGroupId:null}),await e.commands.execute(t.command,{projectId:a.id,sceneId:a.activeSceneId,clipIds:n.selection.get().clipIds})}finally{s.set(s.get().filter(e=>e!==c))}}var Dt=`application/x-fable-edit-item`,Z=new WeakMap;function Ot(e,t){let n=e.snapshot();if(!n)return null;let r=l();return Z.set(e,{token:r,documentId:n.id,sceneId:n.activeSceneId,item:t}),r}function kt(e){let t=Z.get(e),n=e.snapshot();return t?.documentId===n?.id&&t?.sceneId===n?.activeSceneId?t?.item??null:null}function At(e){Z.delete(e)}function jt(e,t){if(!t||Z.get(e)?.token!==t)return null;let n=kt(e);return At(e),n}var Mt=`application/x-fable-asset`,Nt=`application/x-fable-scene`;function Q(){return typeof crypto<`u`&&`randomUUID`in crypto?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}var Pt=e=>e;function Ft(e,t){let n=Math.max(0,e),r=e=>String(e).padStart(2,`0`),i=Math.floor(n/60),a=Math.floor(n%60),o=Math.min(Math.max(t-1,0),Math.floor((n-Math.floor(n))*t));return`${r(i)}:${r(a)}.${r(o)}`}function It(e){return e.duration==null?e.width!=null&&e.height!=null?`${e.width}×${e.height}`:``:Ft(e.duration,30)}function Lt(e,t,n=`all`){let r=e.filter(e=>e.kind!==`font`&&e.kind!==`component`&&(n===`all`||e.kind===n)),i=t.trim().toLowerCase();return i?r.filter(e=>e.name.toLowerCase().includes(i)):r}function Rt(){let e=null,t,n=[];return r=>{if(e!==(r?.id??null)&&(e=r?.id??null,t=void 0,n=[]),t===r?.assets)return n;t=r?.assets;let i=new Map(t?.map(e=>[e.id,e])),a=[];for(let e of n){let t=i.get(e.id);t&&a.push(t),i.delete(e.id)}for(let e of i.values())a.push(e);return(a.length!==n.length||a.some((e,t)=>e!==n[t]))&&(n=a),n}}function $(e,t){return e.name.localeCompare(t.name,void 0,{numeric:!0,sensitivity:`base`})}function zt(e,t){if(t==="default")return e;let n=[...e];return t===`name`?n.sort($):t===`duration`?n.sort((e,t)=>(t.duration??0)-(e.duration??0)||$(e,t)):n.sort((e,t)=>e.kind.localeCompare(t.kind)||$(e,t)),n}function Bt(e,t){let n=t.trim().toLowerCase();return n?e.filter(e=>e.name.toLowerCase().includes(n)):e}var Vt={x:0,y:0,scaleX:1,scaleY:1,rotation:0,skewX:0,skewY:0,anchorX:.5,anchorY:.5,flipX:!1,flipY:!1};function Ht(e){return e.scenes.find(t=>t.id===e.activeSceneId)??e.scenes[0]??null}var Ut=5;function Wt(e){return e.duration>0?e.duration:Ut}function Gt(e,t,n){let r=new Set,i=n=>{if(n===t)return!0;if(r.has(n))return!1;r.add(n);let a=e.scenes.find(e=>e.id===n);if(!a)return!1;for(let e of a.tracks)for(let t of e.clips)if(t.kind===`scene`&&i(t.sceneId))return!0;return!1};return i(n)}function Kt(e,t,n){let r=Math.min(1,t.width/e.width,t.height/e.height),i=Wt(e);return{id:Q(),kind:`scene`,sceneId:e.id,name:e.name,opacity:1,blendMode:`normal`,effects:[],timeRange:{start:n,duration:i},trim:{start:0,end:i},speed:1,animations:[],presetAnimations:[],mask:null,locked:!1,hidden:!1,size:{width:e.width,height:e.height},transform:{...Vt,x:t.width/2,y:t.height/2,scaleX:r,scaleY:r}}}function qt(e,t){return{id:Q(),name:`Import asset`,ops:[u(e,t,Pt(t))],coalesceKey:null}}function Jt(e,t){return e.activeSceneId===t||!e.scenes.some(e=>e.id===t)?null:{id:Q(),name:`Switch scene`,ops:[{op:`set`,path:[`activeSceneId`],value:t}],coalesceKey:null}}function Yt(e,t,n,r){let i=Ht(e),a=e.scenes.find(e=>e.id===t);if(!i||!a||Gt(e,i.id,a.id))return null;let o=Kt(a,i,Math.max(n,0)),s=r.planClipPlacement(e,i.id,o);return s?{envelope:{id:Q(),name:`Add scene clip`,ops:s.ops,coalesceKey:null},clipId:o.id}:null}function Xt(e,t){let n=!1,r=[];for(let i of e){if((i.kind===`media`||i.kind===`audio`)&&t.has(i.assetId)){n=!0;continue}if(i.kind===`group`){let e=Xt(i.children,t);if(e.changed){n=!0,r.push({...i,children:e.clips});continue}}r.push(i)}return{clips:r,changed:n}}function Zt(e,t){let n=new Set(t);if(!e.assets.some(e=>n.has(e.id)))return null;let r=[];e.scenes.forEach((e,t)=>{e.tracks.forEach((e,i)=>{let a=Xt(e.clips,n);a.changed&&r.push({op:`set`,path:[`scenes`,t,`tracks`,i,`clips`],value:Pt(a.clips)})})});for(let t=e.assets.length-1;t>=0;t--)n.has(e.assets[t].id)&&r.push({op:`remove`,path:[`assets`],index:t});return{id:Q(),name:t.length>1?`Delete assets`:`Delete asset`,ops:r,coalesceKey:null}}function Qt(e){let t=new Map,n=e=>{for(let r of e)r.kind===`group`?n(r.children):(r.kind===`media`||r.kind===`audio`)&&t.set(r.assetId,(t.get(r.assetId)??0)+1)};for(let t of e)for(let e of t.tracks)n(e.clips);return t}function $t(e,t,n,r){let i=t===`usage`?Qt(r):null,a=t===`usage`?[...e].sort((e,t)=>(i?.get(e.id)??0)-(i?.get(t.id)??0)||$(e,t)):zt(e,t);return t===`duration`&&(a=[...a].reverse()),n?a:[...a].reverse()}export{$e as A,bt as C,ot as D,st as E,Ve as F,ze as I,Ie as L,Xe as M,qe as N,J as O,Ke as P,Pe as R,wt as S,pt as T,kt as _,It as a,Et as b,Lt as c,Gt as d,$t as f,jt as g,Ot as h,Yt as i,Qe as j,Je as k,Bt as l,Dt as m,Nt as n,Rt as o,Jt as p,qt as r,Zt as s,Mt as t,Ft as u,At as v,yt as w,Tt as x,Ct as y,W as z};
|