@kenkaiiii/gg-editor 0.1.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/LICENSE +21 -0
- package/README.md +453 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +173 -0
- package/dist/cli.js.map +1 -0
- package/dist/core/ass.d.ts +75 -0
- package/dist/core/ass.d.ts.map +1 -0
- package/dist/core/ass.js +128 -0
- package/dist/core/ass.js.map +1 -0
- package/dist/core/ass.test.d.ts +2 -0
- package/dist/core/ass.test.d.ts.map +1 -0
- package/dist/core/ass.test.js +112 -0
- package/dist/core/ass.test.js.map +1 -0
- package/dist/core/audio-cleanup.d.ts +16 -0
- package/dist/core/audio-cleanup.d.ts.map +1 -0
- package/dist/core/audio-cleanup.js +79 -0
- package/dist/core/audio-cleanup.js.map +1 -0
- package/dist/core/audio-cleanup.test.d.ts +2 -0
- package/dist/core/audio-cleanup.test.d.ts.map +1 -0
- package/dist/core/audio-cleanup.test.js +41 -0
- package/dist/core/audio-cleanup.test.js.map +1 -0
- package/dist/core/audio-mix.d.ts +89 -0
- package/dist/core/audio-mix.d.ts.map +1 -0
- package/dist/core/audio-mix.js +156 -0
- package/dist/core/audio-mix.js.map +1 -0
- package/dist/core/audio-mix.test.d.ts +2 -0
- package/dist/core/audio-mix.test.d.ts.map +1 -0
- package/dist/core/audio-mix.test.js +91 -0
- package/dist/core/audio-mix.test.js.map +1 -0
- package/dist/core/auth/anthropic.d.ts +4 -0
- package/dist/core/auth/anthropic.d.ts.map +1 -0
- package/dist/core/auth/anthropic.js +78 -0
- package/dist/core/auth/anthropic.js.map +1 -0
- package/dist/core/auth/index.d.ts +7 -0
- package/dist/core/auth/index.d.ts.map +1 -0
- package/dist/core/auth/index.js +6 -0
- package/dist/core/auth/index.js.map +1 -0
- package/dist/core/auth/login.d.ts +13 -0
- package/dist/core/auth/login.d.ts.map +1 -0
- package/dist/core/auth/login.js +188 -0
- package/dist/core/auth/login.js.map +1 -0
- package/dist/core/auth/openai.d.ts +4 -0
- package/dist/core/auth/openai.d.ts.map +1 -0
- package/dist/core/auth/openai.js +170 -0
- package/dist/core/auth/openai.js.map +1 -0
- package/dist/core/auth/pkce.d.ts +5 -0
- package/dist/core/auth/pkce.d.ts.map +1 -0
- package/dist/core/auth/pkce.js +17 -0
- package/dist/core/auth/pkce.js.map +1 -0
- package/dist/core/auth/storage.d.ts +29 -0
- package/dist/core/auth/storage.d.ts.map +1 -0
- package/dist/core/auth/storage.js +127 -0
- package/dist/core/auth/storage.js.map +1 -0
- package/dist/core/auth/types.d.ts +22 -0
- package/dist/core/auth/types.d.ts.map +1 -0
- package/dist/core/auth/types.js +12 -0
- package/dist/core/auth/types.js.map +1 -0
- package/dist/core/clustering.d.ts +52 -0
- package/dist/core/clustering.d.ts.map +1 -0
- package/dist/core/clustering.js +163 -0
- package/dist/core/clustering.js.map +1 -0
- package/dist/core/clustering.test.d.ts +2 -0
- package/dist/core/clustering.test.d.ts.map +1 -0
- package/dist/core/clustering.test.js +112 -0
- package/dist/core/clustering.test.js.map +1 -0
- package/dist/core/color-match.d.ts +19 -0
- package/dist/core/color-match.d.ts.map +1 -0
- package/dist/core/color-match.js +118 -0
- package/dist/core/color-match.js.map +1 -0
- package/dist/core/color-match.test.d.ts +2 -0
- package/dist/core/color-match.test.d.ts.map +1 -0
- package/dist/core/color-match.test.js +40 -0
- package/dist/core/color-match.test.js.map +1 -0
- package/dist/core/ducking.d.ts +37 -0
- package/dist/core/ducking.d.ts.map +1 -0
- package/dist/core/ducking.js +71 -0
- package/dist/core/ducking.js.map +1 -0
- package/dist/core/ducking.test.d.ts +2 -0
- package/dist/core/ducking.test.d.ts.map +1 -0
- package/dist/core/ducking.test.js +38 -0
- package/dist/core/ducking.test.js.map +1 -0
- package/dist/core/edl-roundtrip.test.d.ts +2 -0
- package/dist/core/edl-roundtrip.test.d.ts.map +1 -0
- package/dist/core/edl-roundtrip.test.js +171 -0
- package/dist/core/edl-roundtrip.test.js.map +1 -0
- package/dist/core/edl.d.ts +41 -0
- package/dist/core/edl.d.ts.map +1 -0
- package/dist/core/edl.js +56 -0
- package/dist/core/edl.js.map +1 -0
- package/dist/core/edl.test.d.ts +2 -0
- package/dist/core/edl.test.d.ts.map +1 -0
- package/dist/core/edl.test.js +62 -0
- package/dist/core/edl.test.js.map +1 -0
- package/dist/core/envelope-sync.d.ts +52 -0
- package/dist/core/envelope-sync.d.ts.map +1 -0
- package/dist/core/envelope-sync.js +169 -0
- package/dist/core/envelope-sync.js.map +1 -0
- package/dist/core/envelope-sync.test.d.ts +2 -0
- package/dist/core/envelope-sync.test.d.ts.map +1 -0
- package/dist/core/envelope-sync.test.js +70 -0
- package/dist/core/envelope-sync.test.js.map +1 -0
- package/dist/core/fcpxml-roundtrip.test.d.ts +2 -0
- package/dist/core/fcpxml-roundtrip.test.d.ts.map +1 -0
- package/dist/core/fcpxml-roundtrip.test.js +251 -0
- package/dist/core/fcpxml-roundtrip.test.js.map +1 -0
- package/dist/core/fcpxml.d.ts +172 -0
- package/dist/core/fcpxml.d.ts.map +1 -0
- package/dist/core/fcpxml.js +406 -0
- package/dist/core/fcpxml.js.map +1 -0
- package/dist/core/fcpxml.test.d.ts +2 -0
- package/dist/core/fcpxml.test.d.ts.map +1 -0
- package/dist/core/fcpxml.test.js +360 -0
- package/dist/core/fcpxml.test.js.map +1 -0
- package/dist/core/filler-words.d.ts +107 -0
- package/dist/core/filler-words.d.ts.map +1 -0
- package/dist/core/filler-words.js +221 -0
- package/dist/core/filler-words.js.map +1 -0
- package/dist/core/filler-words.test.d.ts +2 -0
- package/dist/core/filler-words.test.d.ts.map +1 -0
- package/dist/core/filler-words.test.js +177 -0
- package/dist/core/filler-words.test.js.map +1 -0
- package/dist/core/format.d.ts +36 -0
- package/dist/core/format.d.ts.map +1 -0
- package/dist/core/format.js +57 -0
- package/dist/core/format.js.map +1 -0
- package/dist/core/format.test.d.ts +2 -0
- package/dist/core/format.test.d.ts.map +1 -0
- package/dist/core/format.test.js +81 -0
- package/dist/core/format.test.js.map +1 -0
- package/dist/core/frames.d.ts +35 -0
- package/dist/core/frames.d.ts.map +1 -0
- package/dist/core/frames.js +64 -0
- package/dist/core/frames.js.map +1 -0
- package/dist/core/hook-analysis.d.ts +90 -0
- package/dist/core/hook-analysis.d.ts.map +1 -0
- package/dist/core/hook-analysis.js +222 -0
- package/dist/core/hook-analysis.js.map +1 -0
- package/dist/core/hook-analysis.test.d.ts +2 -0
- package/dist/core/hook-analysis.test.d.ts.map +1 -0
- package/dist/core/hook-analysis.test.js +130 -0
- package/dist/core/hook-analysis.test.js.map +1 -0
- package/dist/core/hosts/detect.d.ts +17 -0
- package/dist/core/hosts/detect.d.ts.map +1 -0
- package/dist/core/hosts/detect.js +64 -0
- package/dist/core/hosts/detect.js.map +1 -0
- package/dist/core/hosts/detect.test.d.ts +2 -0
- package/dist/core/hosts/detect.test.d.ts.map +1 -0
- package/dist/core/hosts/detect.test.js +17 -0
- package/dist/core/hosts/detect.test.js.map +1 -0
- package/dist/core/hosts/index.d.ts +13 -0
- package/dist/core/hosts/index.d.ts.map +1 -0
- package/dist/core/hosts/index.js +30 -0
- package/dist/core/hosts/index.js.map +1 -0
- package/dist/core/hosts/lazy.d.ts +53 -0
- package/dist/core/hosts/lazy.d.ts.map +1 -0
- package/dist/core/hosts/lazy.js +125 -0
- package/dist/core/hosts/lazy.js.map +1 -0
- package/dist/core/hosts/lazy.test.d.ts +2 -0
- package/dist/core/hosts/lazy.test.d.ts.map +1 -0
- package/dist/core/hosts/lazy.test.js +117 -0
- package/dist/core/hosts/lazy.test.js.map +1 -0
- package/dist/core/hosts/none/adapter.d.ts +74 -0
- package/dist/core/hosts/none/adapter.d.ts.map +1 -0
- package/dist/core/hosts/none/adapter.js +99 -0
- package/dist/core/hosts/none/adapter.js.map +1 -0
- package/dist/core/hosts/premiere/adapter.d.ts +87 -0
- package/dist/core/hosts/premiere/adapter.d.ts.map +1 -0
- package/dist/core/hosts/premiere/adapter.js +218 -0
- package/dist/core/hosts/premiere/adapter.js.map +1 -0
- package/dist/core/hosts/premiere/bridge-source.d.ts +26 -0
- package/dist/core/hosts/premiere/bridge-source.d.ts.map +1 -0
- package/dist/core/hosts/premiere/bridge-source.js +326 -0
- package/dist/core/hosts/premiere/bridge-source.js.map +1 -0
- package/dist/core/hosts/premiere/bridge-source.test.d.ts +2 -0
- package/dist/core/hosts/premiere/bridge-source.test.d.ts.map +1 -0
- package/dist/core/hosts/premiere/bridge-source.test.js +36 -0
- package/dist/core/hosts/premiere/bridge-source.test.js.map +1 -0
- package/dist/core/hosts/premiere/bridge.d.ts +38 -0
- package/dist/core/hosts/premiere/bridge.d.ts.map +1 -0
- package/dist/core/hosts/premiere/bridge.js +238 -0
- package/dist/core/hosts/premiere/bridge.js.map +1 -0
- package/dist/core/hosts/premiere/http-bridge.d.ts +47 -0
- package/dist/core/hosts/premiere/http-bridge.d.ts.map +1 -0
- package/dist/core/hosts/premiere/http-bridge.js +82 -0
- package/dist/core/hosts/premiere/http-bridge.js.map +1 -0
- package/dist/core/hosts/premiere/http-bridge.test.d.ts +2 -0
- package/dist/core/hosts/premiere/http-bridge.test.d.ts.map +1 -0
- package/dist/core/hosts/premiere/http-bridge.test.js +113 -0
- package/dist/core/hosts/premiere/http-bridge.test.js.map +1 -0
- package/dist/core/hosts/premiere/ws-bridge.d.ts +91 -0
- package/dist/core/hosts/premiere/ws-bridge.d.ts.map +1 -0
- package/dist/core/hosts/premiere/ws-bridge.js +303 -0
- package/dist/core/hosts/premiere/ws-bridge.js.map +1 -0
- package/dist/core/hosts/premiere/ws-bridge.test.d.ts +2 -0
- package/dist/core/hosts/premiere/ws-bridge.test.d.ts.map +1 -0
- package/dist/core/hosts/premiere/ws-bridge.test.js +146 -0
- package/dist/core/hosts/premiere/ws-bridge.test.js.map +1 -0
- package/dist/core/hosts/resolve/adapter.d.ts +99 -0
- package/dist/core/hosts/resolve/adapter.d.ts.map +1 -0
- package/dist/core/hosts/resolve/adapter.js +187 -0
- package/dist/core/hosts/resolve/adapter.js.map +1 -0
- package/dist/core/hosts/resolve/bridge-source.d.ts +17 -0
- package/dist/core/hosts/resolve/bridge-source.d.ts.map +1 -0
- package/dist/core/hosts/resolve/bridge-source.js +660 -0
- package/dist/core/hosts/resolve/bridge-source.js.map +1 -0
- package/dist/core/hosts/resolve/bridge.d.ts +51 -0
- package/dist/core/hosts/resolve/bridge.d.ts.map +1 -0
- package/dist/core/hosts/resolve/bridge.integration.test.d.ts +2 -0
- package/dist/core/hosts/resolve/bridge.integration.test.d.ts.map +1 -0
- package/dist/core/hosts/resolve/bridge.integration.test.js +472 -0
- package/dist/core/hosts/resolve/bridge.integration.test.js.map +1 -0
- package/dist/core/hosts/resolve/bridge.js +270 -0
- package/dist/core/hosts/resolve/bridge.js.map +1 -0
- package/dist/core/hosts/resolve/bridge.test.d.ts +2 -0
- package/dist/core/hosts/resolve/bridge.test.d.ts.map +1 -0
- package/dist/core/hosts/resolve/bridge.test.js +50 -0
- package/dist/core/hosts/resolve/bridge.test.js.map +1 -0
- package/dist/core/hosts/types.d.ts +167 -0
- package/dist/core/hosts/types.d.ts.map +1 -0
- package/dist/core/hosts/types.js +27 -0
- package/dist/core/hosts/types.js.map +1 -0
- package/dist/core/keyframes.d.ts +35 -0
- package/dist/core/keyframes.d.ts.map +1 -0
- package/dist/core/keyframes.js +90 -0
- package/dist/core/keyframes.js.map +1 -0
- package/dist/core/keyframes.test.d.ts +2 -0
- package/dist/core/keyframes.test.d.ts.map +1 -0
- package/dist/core/keyframes.test.js +73 -0
- package/dist/core/keyframes.test.js.map +1 -0
- package/dist/core/keyword-captions.d.ts +75 -0
- package/dist/core/keyword-captions.d.ts.map +1 -0
- package/dist/core/keyword-captions.js +285 -0
- package/dist/core/keyword-captions.js.map +1 -0
- package/dist/core/keyword-captions.test.d.ts +2 -0
- package/dist/core/keyword-captions.test.d.ts.map +1 -0
- package/dist/core/keyword-captions.test.js +90 -0
- package/dist/core/keyword-captions.test.js.map +1 -0
- package/dist/core/loudness.d.ts +52 -0
- package/dist/core/loudness.d.ts.map +1 -0
- package/dist/core/loudness.js +120 -0
- package/dist/core/loudness.js.map +1 -0
- package/dist/core/loudness.test.d.ts +2 -0
- package/dist/core/loudness.test.d.ts.map +1 -0
- package/dist/core/loudness.test.js +34 -0
- package/dist/core/loudness.test.js.map +1 -0
- package/dist/core/marker-colors.d.ts +39 -0
- package/dist/core/marker-colors.d.ts.map +1 -0
- package/dist/core/marker-colors.js +83 -0
- package/dist/core/marker-colors.js.map +1 -0
- package/dist/core/marker-colors.test.d.ts +2 -0
- package/dist/core/marker-colors.test.d.ts.map +1 -0
- package/dist/core/marker-colors.test.js +116 -0
- package/dist/core/marker-colors.test.js.map +1 -0
- package/dist/core/media/ffmpeg.d.ts +27 -0
- package/dist/core/media/ffmpeg.d.ts.map +1 -0
- package/dist/core/media/ffmpeg.js +53 -0
- package/dist/core/media/ffmpeg.js.map +1 -0
- package/dist/core/multicam.d.ts +40 -0
- package/dist/core/multicam.d.ts.map +1 -0
- package/dist/core/multicam.js +77 -0
- package/dist/core/multicam.js.map +1 -0
- package/dist/core/multicam.test.d.ts +2 -0
- package/dist/core/multicam.test.d.ts.map +1 -0
- package/dist/core/multicam.test.js +56 -0
- package/dist/core/multicam.test.js.map +1 -0
- package/dist/core/punch-in.d.ts +72 -0
- package/dist/core/punch-in.d.ts.map +1 -0
- package/dist/core/punch-in.js +133 -0
- package/dist/core/punch-in.js.map +1 -0
- package/dist/core/punch-in.test.d.ts +2 -0
- package/dist/core/punch-in.test.d.ts.map +1 -0
- package/dist/core/punch-in.test.js +118 -0
- package/dist/core/punch-in.test.js.map +1 -0
- package/dist/core/reformat.d.ts +26 -0
- package/dist/core/reformat.d.ts.map +1 -0
- package/dist/core/reformat.js +31 -0
- package/dist/core/reformat.js.map +1 -0
- package/dist/core/reformat.test.d.ts +2 -0
- package/dist/core/reformat.test.d.ts.map +1 -0
- package/dist/core/reformat.test.js +29 -0
- package/dist/core/reformat.test.js.map +1 -0
- package/dist/core/reorder.d.ts +42 -0
- package/dist/core/reorder.d.ts.map +1 -0
- package/dist/core/reorder.js +80 -0
- package/dist/core/reorder.js.map +1 -0
- package/dist/core/reorder.test.d.ts +2 -0
- package/dist/core/reorder.test.d.ts.map +1 -0
- package/dist/core/reorder.test.js +88 -0
- package/dist/core/reorder.test.js.map +1 -0
- package/dist/core/review.d.ts +38 -0
- package/dist/core/review.d.ts.map +1 -0
- package/dist/core/review.js +128 -0
- package/dist/core/review.js.map +1 -0
- package/dist/core/review.test.d.ts +2 -0
- package/dist/core/review.test.d.ts.map +1 -0
- package/dist/core/review.test.js +76 -0
- package/dist/core/review.test.js.map +1 -0
- package/dist/core/sessions.d.ts +40 -0
- package/dist/core/sessions.d.ts.map +1 -0
- package/dist/core/sessions.js +61 -0
- package/dist/core/sessions.js.map +1 -0
- package/dist/core/sfx-on-cuts.d.ts +60 -0
- package/dist/core/sfx-on-cuts.d.ts.map +1 -0
- package/dist/core/sfx-on-cuts.js +90 -0
- package/dist/core/sfx-on-cuts.js.map +1 -0
- package/dist/core/sfx-on-cuts.test.d.ts +2 -0
- package/dist/core/sfx-on-cuts.test.d.ts.map +1 -0
- package/dist/core/sfx-on-cuts.test.js +53 -0
- package/dist/core/sfx-on-cuts.test.js.map +1 -0
- package/dist/core/silence.d.ts +41 -0
- package/dist/core/silence.d.ts.map +1 -0
- package/dist/core/silence.js +104 -0
- package/dist/core/silence.js.map +1 -0
- package/dist/core/silence.test.d.ts +2 -0
- package/dist/core/silence.test.d.ts.map +1 -0
- package/dist/core/silence.test.js +143 -0
- package/dist/core/silence.test.js.map +1 -0
- package/dist/core/skills-loader.d.ts +34 -0
- package/dist/core/skills-loader.d.ts.map +1 -0
- package/dist/core/skills-loader.js +80 -0
- package/dist/core/skills-loader.js.map +1 -0
- package/dist/core/skills-loader.test.d.ts +2 -0
- package/dist/core/skills-loader.test.d.ts.map +1 -0
- package/dist/core/skills-loader.test.js +68 -0
- package/dist/core/skills-loader.test.js.map +1 -0
- package/dist/core/skin-grade.d.ts +62 -0
- package/dist/core/skin-grade.d.ts.map +1 -0
- package/dist/core/skin-grade.js +270 -0
- package/dist/core/skin-grade.js.map +1 -0
- package/dist/core/skin-grade.test.d.ts +2 -0
- package/dist/core/skin-grade.test.d.ts.map +1 -0
- package/dist/core/skin-grade.test.js +182 -0
- package/dist/core/skin-grade.test.js.map +1 -0
- package/dist/core/speaker-changes.d.ts +30 -0
- package/dist/core/speaker-changes.d.ts.map +1 -0
- package/dist/core/speaker-changes.js +19 -0
- package/dist/core/speaker-changes.js.map +1 -0
- package/dist/core/speaker-changes.test.d.ts +2 -0
- package/dist/core/speaker-changes.test.d.ts.map +1 -0
- package/dist/core/speaker-changes.test.js +46 -0
- package/dist/core/speaker-changes.test.js.map +1 -0
- package/dist/core/speed-ramp.d.ts +60 -0
- package/dist/core/speed-ramp.d.ts.map +1 -0
- package/dist/core/speed-ramp.js +113 -0
- package/dist/core/speed-ramp.js.map +1 -0
- package/dist/core/speed-ramp.test.d.ts +2 -0
- package/dist/core/speed-ramp.test.d.ts.map +1 -0
- package/dist/core/speed-ramp.test.js +74 -0
- package/dist/core/speed-ramp.test.js.map +1 -0
- package/dist/core/srt.d.ts +56 -0
- package/dist/core/srt.d.ts.map +1 -0
- package/dist/core/srt.js +90 -0
- package/dist/core/srt.js.map +1 -0
- package/dist/core/srt.test.d.ts +2 -0
- package/dist/core/srt.test.d.ts.map +1 -0
- package/dist/core/srt.test.js +107 -0
- package/dist/core/srt.test.js.map +1 -0
- package/dist/core/stabilize.d.ts +15 -0
- package/dist/core/stabilize.d.ts.map +1 -0
- package/dist/core/stabilize.js +69 -0
- package/dist/core/stabilize.js.map +1 -0
- package/dist/core/styles-loader.d.ts +33 -0
- package/dist/core/styles-loader.d.ts.map +1 -0
- package/dist/core/styles-loader.js +67 -0
- package/dist/core/styles-loader.js.map +1 -0
- package/dist/core/styles-loader.test.d.ts +2 -0
- package/dist/core/styles-loader.test.d.ts.map +1 -0
- package/dist/core/styles-loader.test.js +72 -0
- package/dist/core/styles-loader.test.js.map +1 -0
- package/dist/core/text-overlay.d.ts +76 -0
- package/dist/core/text-overlay.d.ts.map +1 -0
- package/dist/core/text-overlay.js +233 -0
- package/dist/core/text-overlay.js.map +1 -0
- package/dist/core/text-overlay.test.d.ts +2 -0
- package/dist/core/text-overlay.test.d.ts.map +1 -0
- package/dist/core/text-overlay.test.js +103 -0
- package/dist/core/text-overlay.test.js.map +1 -0
- package/dist/core/vision.d.ts +53 -0
- package/dist/core/vision.d.ts.map +1 -0
- package/dist/core/vision.js +150 -0
- package/dist/core/vision.js.map +1 -0
- package/dist/core/vision.test.d.ts +2 -0
- package/dist/core/vision.test.d.ts.map +1 -0
- package/dist/core/vision.test.js +76 -0
- package/dist/core/vision.test.js.map +1 -0
- package/dist/core/whisper.d.ts +188 -0
- package/dist/core/whisper.d.ts.map +1 -0
- package/dist/core/whisper.js +380 -0
- package/dist/core/whisper.js.map +1 -0
- package/dist/core/whisper.test.d.ts +2 -0
- package/dist/core/whisper.test.d.ts.map +1 -0
- package/dist/core/whisper.test.js +262 -0
- package/dist/core/whisper.test.js.map +1 -0
- package/dist/director/delegate-tool.d.ts +22 -0
- package/dist/director/delegate-tool.d.ts.map +1 -0
- package/dist/director/delegate-tool.js +62 -0
- package/dist/director/delegate-tool.js.map +1 -0
- package/dist/director/delegate-tool.test.d.ts +2 -0
- package/dist/director/delegate-tool.test.d.ts.map +1 -0
- package/dist/director/delegate-tool.test.js +38 -0
- package/dist/director/delegate-tool.test.js.map +1 -0
- package/dist/director/director-prompt.d.ts +7 -0
- package/dist/director/director-prompt.d.ts.map +1 -0
- package/dist/director/director-prompt.js +52 -0
- package/dist/director/director-prompt.js.map +1 -0
- package/dist/director/director.d.ts +16 -0
- package/dist/director/director.d.ts.map +1 -0
- package/dist/director/director.js +28 -0
- package/dist/director/director.js.map +1 -0
- package/dist/director/executor.d.ts +19 -0
- package/dist/director/executor.d.ts.map +1 -0
- package/dist/director/executor.js +93 -0
- package/dist/director/executor.js.map +1 -0
- package/dist/director/index.d.ts +6 -0
- package/dist/director/index.d.ts.map +1 -0
- package/dist/director/index.js +5 -0
- package/dist/director/index.js.map +1 -0
- package/dist/director/types.d.ts +38 -0
- package/dist/director/types.d.ts.map +1 -0
- package/dist/director/types.js +2 -0
- package/dist/director/types.js.map +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/skills.d.ts +18 -0
- package/dist/skills.d.ts.map +1 -0
- package/dist/skills.js +674 -0
- package/dist/skills.js.map +1 -0
- package/dist/system-prompt.d.ts +35 -0
- package/dist/system-prompt.d.ts.map +1 -0
- package/dist/system-prompt.js +478 -0
- package/dist/system-prompt.js.map +1 -0
- package/dist/system-prompt.test.d.ts +2 -0
- package/dist/system-prompt.test.d.ts.map +1 -0
- package/dist/system-prompt.test.js +87 -0
- package/dist/system-prompt.test.js.map +1 -0
- package/dist/tools/add-fades.d.ts +13 -0
- package/dist/tools/add-fades.d.ts.map +1 -0
- package/dist/tools/add-fades.js +88 -0
- package/dist/tools/add-fades.js.map +1 -0
- package/dist/tools/add-marker.d.ts +31 -0
- package/dist/tools/add-marker.d.ts.map +1 -0
- package/dist/tools/add-marker.js +56 -0
- package/dist/tools/add-marker.js.map +1 -0
- package/dist/tools/add-sfx-at-cuts.d.ts +24 -0
- package/dist/tools/add-sfx-at-cuts.d.ts.map +1 -0
- package/dist/tools/add-sfx-at-cuts.js +120 -0
- package/dist/tools/add-sfx-at-cuts.js.map +1 -0
- package/dist/tools/add-track.d.ts +13 -0
- package/dist/tools/add-track.d.ts.map +1 -0
- package/dist/tools/add-track.js +26 -0
- package/dist/tools/add-track.js.map +1 -0
- package/dist/tools/analyze-hook.d.ts +28 -0
- package/dist/tools/analyze-hook.d.ts.map +1 -0
- package/dist/tools/analyze-hook.js +126 -0
- package/dist/tools/analyze-hook.js.map +1 -0
- package/dist/tools/append-clip.d.ts +10 -0
- package/dist/tools/append-clip.d.ts.map +1 -0
- package/dist/tools/append-clip.js +27 -0
- package/dist/tools/append-clip.js.map +1 -0
- package/dist/tools/apply-lut.d.ts +11 -0
- package/dist/tools/apply-lut.d.ts.map +1 -0
- package/dist/tools/apply-lut.js +33 -0
- package/dist/tools/apply-lut.js.map +1 -0
- package/dist/tools/burn-subtitles.d.ts +28 -0
- package/dist/tools/burn-subtitles.d.ts.map +1 -0
- package/dist/tools/burn-subtitles.js +87 -0
- package/dist/tools/burn-subtitles.js.map +1 -0
- package/dist/tools/clean-audio.d.ts +18 -0
- package/dist/tools/clean-audio.d.ts.map +1 -0
- package/dist/tools/clean-audio.js +54 -0
- package/dist/tools/clean-audio.js.map +1 -0
- package/dist/tools/clone-timeline.d.ts +9 -0
- package/dist/tools/clone-timeline.d.ts.map +1 -0
- package/dist/tools/clone-timeline.js +28 -0
- package/dist/tools/clone-timeline.js.map +1 -0
- package/dist/tools/cluster-takes.d.ts +11 -0
- package/dist/tools/cluster-takes.d.ts.map +1 -0
- package/dist/tools/cluster-takes.js +71 -0
- package/dist/tools/cluster-takes.js.map +1 -0
- package/dist/tools/color-match.d.ts +16 -0
- package/dist/tools/color-match.d.ts.map +1 -0
- package/dist/tools/color-match.js +55 -0
- package/dist/tools/color-match.js.map +1 -0
- package/dist/tools/compose-layered.d.ts +47 -0
- package/dist/tools/compose-layered.d.ts.map +1 -0
- package/dist/tools/compose-layered.js +103 -0
- package/dist/tools/compose-layered.js.map +1 -0
- package/dist/tools/compose-thumbnail.d.ts +35 -0
- package/dist/tools/compose-thumbnail.d.ts.map +1 -0
- package/dist/tools/compose-thumbnail.js +130 -0
- package/dist/tools/compose-thumbnail.js.map +1 -0
- package/dist/tools/concat-videos.d.ts +18 -0
- package/dist/tools/concat-videos.d.ts.map +1 -0
- package/dist/tools/concat-videos.js +79 -0
- package/dist/tools/concat-videos.js.map +1 -0
- package/dist/tools/copy-grade.d.ts +10 -0
- package/dist/tools/copy-grade.d.ts.map +1 -0
- package/dist/tools/copy-grade.js +29 -0
- package/dist/tools/copy-grade.js.map +1 -0
- package/dist/tools/create-timeline.d.ts +12 -0
- package/dist/tools/create-timeline.d.ts.map +1 -0
- package/dist/tools/create-timeline.js +35 -0
- package/dist/tools/create-timeline.js.map +1 -0
- package/dist/tools/crossfade-videos.d.ts +49 -0
- package/dist/tools/crossfade-videos.d.ts.map +1 -0
- package/dist/tools/crossfade-videos.js +121 -0
- package/dist/tools/crossfade-videos.js.map +1 -0
- package/dist/tools/cut-at.d.ts +10 -0
- package/dist/tools/cut-at.d.ts.map +1 -0
- package/dist/tools/cut-at.js +24 -0
- package/dist/tools/cut-at.js.map +1 -0
- package/dist/tools/cut-filler-words.d.ts +27 -0
- package/dist/tools/cut-filler-words.d.ts.map +1 -0
- package/dist/tools/cut-filler-words.js +165 -0
- package/dist/tools/cut-filler-words.js.map +1 -0
- package/dist/tools/detect-silence.d.ts +13 -0
- package/dist/tools/detect-silence.d.ts.map +1 -0
- package/dist/tools/detect-silence.js +98 -0
- package/dist/tools/detect-silence.js.map +1 -0
- package/dist/tools/detect-speaker-changes.d.ts +9 -0
- package/dist/tools/detect-speaker-changes.d.ts.map +1 -0
- package/dist/tools/detect-speaker-changes.js +42 -0
- package/dist/tools/detect-speaker-changes.js.map +1 -0
- package/dist/tools/dry-run.d.ts +23 -0
- package/dist/tools/dry-run.d.ts.map +1 -0
- package/dist/tools/dry-run.js +66 -0
- package/dist/tools/dry-run.js.map +1 -0
- package/dist/tools/dry-run.test.d.ts +2 -0
- package/dist/tools/dry-run.test.d.ts.map +1 -0
- package/dist/tools/dry-run.test.js +66 -0
- package/dist/tools/dry-run.test.js.map +1 -0
- package/dist/tools/duck-audio.d.ts +16 -0
- package/dist/tools/duck-audio.d.ts.map +1 -0
- package/dist/tools/duck-audio.js +73 -0
- package/dist/tools/duck-audio.js.map +1 -0
- package/dist/tools/extract-audio.d.ts +10 -0
- package/dist/tools/extract-audio.d.ts.map +1 -0
- package/dist/tools/extract-audio.js +30 -0
- package/dist/tools/extract-audio.js.map +1 -0
- package/dist/tools/extract-frame.d.ts +12 -0
- package/dist/tools/extract-frame.d.ts.map +1 -0
- package/dist/tools/extract-frame.js +63 -0
- package/dist/tools/extract-frame.js.map +1 -0
- package/dist/tools/generate-gif.d.ts +13 -0
- package/dist/tools/generate-gif.d.ts.map +1 -0
- package/dist/tools/generate-gif.js +94 -0
- package/dist/tools/generate-gif.js.map +1 -0
- package/dist/tools/get-markers.d.ts +13 -0
- package/dist/tools/get-markers.d.ts.map +1 -0
- package/dist/tools/get-markers.js +71 -0
- package/dist/tools/get-markers.js.map +1 -0
- package/dist/tools/get-timeline.d.ts +9 -0
- package/dist/tools/get-timeline.d.ts.map +1 -0
- package/dist/tools/get-timeline.js +43 -0
- package/dist/tools/get-timeline.js.map +1 -0
- package/dist/tools/grade-skin-tones.d.ts +31 -0
- package/dist/tools/grade-skin-tones.d.ts.map +1 -0
- package/dist/tools/grade-skin-tones.js +92 -0
- package/dist/tools/grade-skin-tones.js.map +1 -0
- package/dist/tools/host-info.d.ts +7 -0
- package/dist/tools/host-info.d.ts.map +1 -0
- package/dist/tools/host-info.js +33 -0
- package/dist/tools/host-info.js.map +1 -0
- package/dist/tools/host-tools.test.d.ts +2 -0
- package/dist/tools/host-tools.test.d.ts.map +1 -0
- package/dist/tools/host-tools.test.js +83 -0
- package/dist/tools/host-tools.test.js.map +1 -0
- package/dist/tools/import-edl.d.ts +9 -0
- package/dist/tools/import-edl.d.ts.map +1 -0
- package/dist/tools/import-edl.js +25 -0
- package/dist/tools/import-edl.js.map +1 -0
- package/dist/tools/import-subtitles.d.ts +9 -0
- package/dist/tools/import-subtitles.d.ts.map +1 -0
- package/dist/tools/import-subtitles.js +31 -0
- package/dist/tools/import-subtitles.js.map +1 -0
- package/dist/tools/import-to-media-pool.d.ts +10 -0
- package/dist/tools/import-to-media-pool.d.ts.map +1 -0
- package/dist/tools/import-to-media-pool.js +27 -0
- package/dist/tools/import-to-media-pool.js.map +1 -0
- package/dist/tools/index.d.ts +94 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +242 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/index.test.d.ts +2 -0
- package/dist/tools/index.test.d.ts.map +1 -0
- package/dist/tools/index.test.js +128 -0
- package/dist/tools/index.test.js.map +1 -0
- package/dist/tools/insert-broll.d.ts +13 -0
- package/dist/tools/insert-broll.d.ts.map +1 -0
- package/dist/tools/insert-broll.js +56 -0
- package/dist/tools/insert-broll.js.map +1 -0
- package/dist/tools/ken-burns.d.ts +26 -0
- package/dist/tools/ken-burns.d.ts.map +1 -0
- package/dist/tools/ken-burns.js +125 -0
- package/dist/tools/ken-burns.js.map +1 -0
- package/dist/tools/list-render-presets.d.ts +7 -0
- package/dist/tools/list-render-presets.d.ts.map +1 -0
- package/dist/tools/list-render-presets.js +30 -0
- package/dist/tools/list-render-presets.js.map +1 -0
- package/dist/tools/match-clip-color.d.ts +29 -0
- package/dist/tools/match-clip-color.d.ts.map +1 -0
- package/dist/tools/match-clip-color.js +99 -0
- package/dist/tools/match-clip-color.js.map +1 -0
- package/dist/tools/measure-loudness.d.ts +8 -0
- package/dist/tools/measure-loudness.d.ts.map +1 -0
- package/dist/tools/measure-loudness.js +40 -0
- package/dist/tools/measure-loudness.js.map +1 -0
- package/dist/tools/mix-audio.d.ts +46 -0
- package/dist/tools/mix-audio.d.ts.map +1 -0
- package/dist/tools/mix-audio.js +101 -0
- package/dist/tools/mix-audio.js.map +1 -0
- package/dist/tools/multicam-sync.d.ts +14 -0
- package/dist/tools/multicam-sync.d.ts.map +1 -0
- package/dist/tools/multicam-sync.js +75 -0
- package/dist/tools/multicam-sync.js.map +1 -0
- package/dist/tools/new-tools.test.d.ts +2 -0
- package/dist/tools/new-tools.test.d.ts.map +1 -0
- package/dist/tools/new-tools.test.js +511 -0
- package/dist/tools/new-tools.test.js.map +1 -0
- package/dist/tools/normalize-loudness.d.ts +21 -0
- package/dist/tools/normalize-loudness.d.ts.map +1 -0
- package/dist/tools/normalize-loudness.js +94 -0
- package/dist/tools/normalize-loudness.js.map +1 -0
- package/dist/tools/open-page.d.ts +17 -0
- package/dist/tools/open-page.d.ts.map +1 -0
- package/dist/tools/open-page.js +27 -0
- package/dist/tools/open-page.js.map +1 -0
- package/dist/tools/overlay-watermark.d.ts +28 -0
- package/dist/tools/overlay-watermark.d.ts.map +1 -0
- package/dist/tools/overlay-watermark.js +98 -0
- package/dist/tools/overlay-watermark.js.map +1 -0
- package/dist/tools/pick-best-takes.d.ts +20 -0
- package/dist/tools/pick-best-takes.d.ts.map +1 -0
- package/dist/tools/pick-best-takes.js +147 -0
- package/dist/tools/pick-best-takes.js.map +1 -0
- package/dist/tools/post-tools.test.d.ts +2 -0
- package/dist/tools/post-tools.test.d.ts.map +1 -0
- package/dist/tools/post-tools.test.js +83 -0
- package/dist/tools/post-tools.test.js.map +1 -0
- package/dist/tools/pre-render-check.d.ts +23 -0
- package/dist/tools/pre-render-check.d.ts.map +1 -0
- package/dist/tools/pre-render-check.js +134 -0
- package/dist/tools/pre-render-check.js.map +1 -0
- package/dist/tools/probe-media.d.ts +8 -0
- package/dist/tools/probe-media.d.ts.map +1 -0
- package/dist/tools/probe-media.js +32 -0
- package/dist/tools/probe-media.js.map +1 -0
- package/dist/tools/punch-in.d.ts +30 -0
- package/dist/tools/punch-in.d.ts.map +1 -0
- package/dist/tools/punch-in.js +130 -0
- package/dist/tools/punch-in.js.map +1 -0
- package/dist/tools/read-skill.d.ts +9 -0
- package/dist/tools/read-skill.d.ts.map +1 -0
- package/dist/tools/read-skill.js +24 -0
- package/dist/tools/read-skill.js.map +1 -0
- package/dist/tools/read-transcript.d.ts +14 -0
- package/dist/tools/read-transcript.d.ts.map +1 -0
- package/dist/tools/read-transcript.js +85 -0
- package/dist/tools/read-transcript.js.map +1 -0
- package/dist/tools/read-transcript.test.d.ts +2 -0
- package/dist/tools/read-transcript.test.d.ts.map +1 -0
- package/dist/tools/read-transcript.test.js +136 -0
- package/dist/tools/read-transcript.test.js.map +1 -0
- package/dist/tools/reformat-timeline.d.ts +25 -0
- package/dist/tools/reformat-timeline.d.ts.map +1 -0
- package/dist/tools/reformat-timeline.js +60 -0
- package/dist/tools/reformat-timeline.js.map +1 -0
- package/dist/tools/render.d.ts +10 -0
- package/dist/tools/render.d.ts.map +1 -0
- package/dist/tools/render.js +26 -0
- package/dist/tools/render.js.map +1 -0
- package/dist/tools/reorder-timeline.d.ts +12 -0
- package/dist/tools/reorder-timeline.d.ts.map +1 -0
- package/dist/tools/reorder-timeline.js +65 -0
- package/dist/tools/reorder-timeline.js.map +1 -0
- package/dist/tools/replace-clip.d.ts +10 -0
- package/dist/tools/replace-clip.d.ts.map +1 -0
- package/dist/tools/replace-clip.js +28 -0
- package/dist/tools/replace-clip.js.map +1 -0
- package/dist/tools/review-edit.d.ts +23 -0
- package/dist/tools/review-edit.d.ts.map +1 -0
- package/dist/tools/review-edit.js +47 -0
- package/dist/tools/review-edit.js.map +1 -0
- package/dist/tools/ripple-delete.d.ts +11 -0
- package/dist/tools/ripple-delete.d.ts.map +1 -0
- package/dist/tools/ripple-delete.js +27 -0
- package/dist/tools/ripple-delete.js.map +1 -0
- package/dist/tools/save-project.d.ts +7 -0
- package/dist/tools/save-project.d.ts.map +1 -0
- package/dist/tools/save-project.js +22 -0
- package/dist/tools/save-project.js.map +1 -0
- package/dist/tools/score-shot.d.ts +18 -0
- package/dist/tools/score-shot.d.ts.map +1 -0
- package/dist/tools/score-shot.js +127 -0
- package/dist/tools/score-shot.js.map +1 -0
- package/dist/tools/set-clip-speed.d.ts +10 -0
- package/dist/tools/set-clip-speed.d.ts.map +1 -0
- package/dist/tools/set-clip-speed.js +28 -0
- package/dist/tools/set-clip-speed.js.map +1 -0
- package/dist/tools/set-clip-volume.d.ts +10 -0
- package/dist/tools/set-clip-volume.d.ts.map +1 -0
- package/dist/tools/set-clip-volume.js +33 -0
- package/dist/tools/set-clip-volume.js.map +1 -0
- package/dist/tools/set-primary-correction.d.ts +14 -0
- package/dist/tools/set-primary-correction.d.ts.map +1 -0
- package/dist/tools/set-primary-correction.js +45 -0
- package/dist/tools/set-primary-correction.js.map +1 -0
- package/dist/tools/smart-reframe.d.ts +22 -0
- package/dist/tools/smart-reframe.d.ts.map +1 -0
- package/dist/tools/smart-reframe.js +39 -0
- package/dist/tools/smart-reframe.js.map +1 -0
- package/dist/tools/speed-ramp.d.ts +14 -0
- package/dist/tools/speed-ramp.d.ts.map +1 -0
- package/dist/tools/speed-ramp.js +71 -0
- package/dist/tools/speed-ramp.js.map +1 -0
- package/dist/tools/stabilize-video.d.ts +12 -0
- package/dist/tools/stabilize-video.d.ts.map +1 -0
- package/dist/tools/stabilize-video.js +63 -0
- package/dist/tools/stabilize-video.js.map +1 -0
- package/dist/tools/transcribe.d.ts +29 -0
- package/dist/tools/transcribe.d.ts.map +1 -0
- package/dist/tools/transcribe.js +116 -0
- package/dist/tools/transcribe.js.map +1 -0
- package/dist/tools/transition-videos.d.ts +29 -0
- package/dist/tools/transition-videos.d.ts.map +1 -0
- package/dist/tools/transition-videos.js +129 -0
- package/dist/tools/transition-videos.js.map +1 -0
- package/dist/tools/write-ass.d.ts +34 -0
- package/dist/tools/write-ass.d.ts.map +1 -0
- package/dist/tools/write-ass.js +101 -0
- package/dist/tools/write-ass.js.map +1 -0
- package/dist/tools/write-edl.d.ts +24 -0
- package/dist/tools/write-edl.d.ts.map +1 -0
- package/dist/tools/write-edl.js +59 -0
- package/dist/tools/write-edl.js.map +1 -0
- package/dist/tools/write-fcpxml.d.ts +20 -0
- package/dist/tools/write-fcpxml.d.ts.map +1 -0
- package/dist/tools/write-fcpxml.js +52 -0
- package/dist/tools/write-fcpxml.js.map +1 -0
- package/dist/tools/write-keyword-captions.d.ts +36 -0
- package/dist/tools/write-keyword-captions.d.ts.map +1 -0
- package/dist/tools/write-keyword-captions.js +183 -0
- package/dist/tools/write-keyword-captions.js.map +1 -0
- package/dist/tools/write-lower-third.d.ts +34 -0
- package/dist/tools/write-lower-third.d.ts.map +1 -0
- package/dist/tools/write-lower-third.js +52 -0
- package/dist/tools/write-lower-third.js.map +1 -0
- package/dist/tools/write-srt.d.ts +20 -0
- package/dist/tools/write-srt.d.ts.map +1 -0
- package/dist/tools/write-srt.js +72 -0
- package/dist/tools/write-srt.js.map +1 -0
- package/dist/tools/write-title-card.d.ts +25 -0
- package/dist/tools/write-title-card.d.ts.map +1 -0
- package/dist/tools/write-title-card.js +57 -0
- package/dist/tools/write-title-card.js.map +1 -0
- package/dist/types.d.ts +83 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/ui/App.d.ts +44 -0
- package/dist/ui/App.d.ts.map +1 -0
- package/dist/ui/App.js +454 -0
- package/dist/ui/App.js.map +1 -0
- package/dist/ui/components/Banner.d.ts +13 -0
- package/dist/ui/components/Banner.d.ts.map +1 -0
- package/dist/ui/components/Banner.js +59 -0
- package/dist/ui/components/Banner.js.map +1 -0
- package/dist/ui/components/Footer.d.ts +19 -0
- package/dist/ui/components/Footer.d.ts.map +1 -0
- package/dist/ui/components/Footer.js +20 -0
- package/dist/ui/components/Footer.js.map +1 -0
- package/dist/ui/components/Header.d.ts +16 -0
- package/dist/ui/components/Header.d.ts.map +1 -0
- package/dist/ui/components/Header.js +12 -0
- package/dist/ui/components/Header.js.map +1 -0
- package/dist/ui/components/InputBox.d.ts +21 -0
- package/dist/ui/components/InputBox.d.ts.map +1 -0
- package/dist/ui/components/InputBox.js +81 -0
- package/dist/ui/components/InputBox.js.map +1 -0
- package/dist/ui/components/Message.d.ts +14 -0
- package/dist/ui/components/Message.d.ts.map +1 -0
- package/dist/ui/components/Message.js +24 -0
- package/dist/ui/components/Message.js.map +1 -0
- package/dist/ui/components/SlashMenu.d.ts +19 -0
- package/dist/ui/components/SlashMenu.d.ts.map +1 -0
- package/dist/ui/components/SlashMenu.js +33 -0
- package/dist/ui/components/SlashMenu.js.map +1 -0
- package/dist/ui/components/SlashMenu.test.d.ts +2 -0
- package/dist/ui/components/SlashMenu.test.d.ts.map +1 -0
- package/dist/ui/components/SlashMenu.test.js +23 -0
- package/dist/ui/components/SlashMenu.test.js.map +1 -0
- package/dist/ui/components/Spinner.d.ts +6 -0
- package/dist/ui/components/Spinner.d.ts.map +1 -0
- package/dist/ui/components/Spinner.js +16 -0
- package/dist/ui/components/Spinner.js.map +1 -0
- package/dist/ui/components/ToolCallLine.d.ts +16 -0
- package/dist/ui/components/ToolCallLine.d.ts.map +1 -0
- package/dist/ui/components/ToolCallLine.js +35 -0
- package/dist/ui/components/ToolCallLine.js.map +1 -0
- package/dist/ui/render.d.ts +9 -0
- package/dist/ui/render.d.ts.map +1 -0
- package/dist/ui/render.js +56 -0
- package/dist/ui/render.js.map +1 -0
- package/dist/ui/spinner-frames.d.ts +3 -0
- package/dist/ui/spinner-frames.d.ts.map +1 -0
- package/dist/ui/spinner-frames.js +16 -0
- package/dist/ui/spinner-frames.js.map +1 -0
- package/dist/ui/theme.d.ts +27 -0
- package/dist/ui/theme.d.ts.map +1 -0
- package/dist/ui/theme.js +26 -0
- package/dist/ui/theme.js.map +1 -0
- package/package.json +50 -0
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { HostUnreachableError, HostUnsupportedError } from "../types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Bypass adapter — no NLE attached.
|
|
4
|
+
*
|
|
5
|
+
* In this mode the agent does NOT manipulate a live host. Instead, it works
|
|
6
|
+
* entirely against media files on disk via ffmpeg and emits an EDL/FCPXML
|
|
7
|
+
* the user can import into any NLE later.
|
|
8
|
+
*
|
|
9
|
+
* All host ops throw HostUnsupportedError. The agent should rely on the
|
|
10
|
+
* stand-alone tools (extract_audio, transcribe, write_edl, render_ffmpeg).
|
|
11
|
+
*/
|
|
12
|
+
export class NoneAdapter {
|
|
13
|
+
name = "none";
|
|
14
|
+
displayName = "No NLE (file-only mode)";
|
|
15
|
+
async capabilities() {
|
|
16
|
+
return {
|
|
17
|
+
canMoveClips: false,
|
|
18
|
+
canScriptColor: false,
|
|
19
|
+
canScriptAudio: false,
|
|
20
|
+
canTriggerAI: false,
|
|
21
|
+
preferredImportFormat: "edl",
|
|
22
|
+
isAvailable: true,
|
|
23
|
+
unavailableReason: undefined,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
async getTimeline() {
|
|
27
|
+
throw new HostUnsupportedError("none", "getTimeline");
|
|
28
|
+
}
|
|
29
|
+
async addMarker(_marker) {
|
|
30
|
+
throw new HostUnsupportedError("none", "addMarker");
|
|
31
|
+
}
|
|
32
|
+
async cutAt(_track, _frame) {
|
|
33
|
+
throw new HostUnsupportedError("none", "cutAt");
|
|
34
|
+
}
|
|
35
|
+
async rippleDelete(_track, _range) {
|
|
36
|
+
throw new HostUnsupportedError("none", "rippleDelete");
|
|
37
|
+
}
|
|
38
|
+
async appendClip(_track, _mediaPath) {
|
|
39
|
+
throw new HostUnsupportedError("none", "appendClip");
|
|
40
|
+
}
|
|
41
|
+
async importTimeline(_filePath) {
|
|
42
|
+
throw new HostUnsupportedError("none", "importTimeline");
|
|
43
|
+
}
|
|
44
|
+
async render(_opts) {
|
|
45
|
+
throw new HostUnsupportedError("none", "render");
|
|
46
|
+
}
|
|
47
|
+
async getMarkers() {
|
|
48
|
+
throw new HostUnreachableError("none", "No NLE attached — cannot read markers.");
|
|
49
|
+
}
|
|
50
|
+
async createTimeline(_opts) {
|
|
51
|
+
throw new HostUnreachableError("none", "No NLE attached — cannot create timeline.");
|
|
52
|
+
}
|
|
53
|
+
async importToMediaPool(_paths, _bin) {
|
|
54
|
+
throw new HostUnreachableError("none", "No NLE attached — nothing to import into.");
|
|
55
|
+
}
|
|
56
|
+
async setClipSpeed(_clipId, _speed) {
|
|
57
|
+
throw new HostUnreachableError("none", "No NLE attached — cannot retime.");
|
|
58
|
+
}
|
|
59
|
+
async applyLut(_clipId, _lutPath, _nodeIndex) {
|
|
60
|
+
throw new HostUnreachableError("none", "No NLE attached — cannot apply LUT.");
|
|
61
|
+
}
|
|
62
|
+
async setPrimaryCorrection(_clipId, _cdl) {
|
|
63
|
+
throw new HostUnreachableError("none", "No NLE attached — cannot grade.");
|
|
64
|
+
}
|
|
65
|
+
async copyGrade(_sourceClipId, _targetClipIds) {
|
|
66
|
+
throw new HostUnreachableError("none", "No NLE attached — cannot copy grade.");
|
|
67
|
+
}
|
|
68
|
+
async listRenderPresets() {
|
|
69
|
+
return [];
|
|
70
|
+
}
|
|
71
|
+
async replaceClip(_clipId, _mediaPath) {
|
|
72
|
+
throw new HostUnreachableError("none", "No NLE attached — cannot replace clip.");
|
|
73
|
+
}
|
|
74
|
+
async cloneTimeline(_newName) {
|
|
75
|
+
throw new HostUnreachableError("none", "No NLE attached — cannot clone timeline.");
|
|
76
|
+
}
|
|
77
|
+
async saveProject() {
|
|
78
|
+
throw new HostUnreachableError("none", "No NLE attached — nothing to save.");
|
|
79
|
+
}
|
|
80
|
+
async addTrack(_kind) {
|
|
81
|
+
throw new HostUnreachableError("none", "No NLE attached — cannot add track.");
|
|
82
|
+
}
|
|
83
|
+
async setClipVolume(_clipId, _volumeDb) {
|
|
84
|
+
throw new HostUnreachableError("none", "No NLE attached — cannot set clip volume.");
|
|
85
|
+
}
|
|
86
|
+
async insertClipOnTrack(_opts) {
|
|
87
|
+
throw new HostUnreachableError("none", "No NLE attached — cannot insert clip.");
|
|
88
|
+
}
|
|
89
|
+
async smartReframe(_clipId, _opts) {
|
|
90
|
+
throw new HostUnreachableError("none", "No NLE attached — cannot Smart Reframe.");
|
|
91
|
+
}
|
|
92
|
+
async importSubtitles(_srtPath) {
|
|
93
|
+
throw new HostUnreachableError("none", "No NLE attached — cannot import subtitles.");
|
|
94
|
+
}
|
|
95
|
+
async openPage(_name) {
|
|
96
|
+
throw new HostUnreachableError("none", "No NLE attached — no page concept.");
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/core/hosts/none/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import type { ClipInfo, Frame, FrameRange, HostCapabilities, HostRuntime, MarkerInfo, TimelineState } from "../../../types.js";
|
|
2
|
+
import { type VideoHost } from "../types.js";
|
|
3
|
+
import { type PremiereTransportKind } from "./bridge.js";
|
|
4
|
+
/**
|
|
5
|
+
* Adobe Premiere Pro adapter.
|
|
6
|
+
*
|
|
7
|
+
* Drives Premiere via ExtendScript through `osascript` on macOS (see
|
|
8
|
+
* ./bridge.ts). Each call generates a self-contained JSX file and asks
|
|
9
|
+
* Premiere to evalFile it; the JSX writes a JSON result to a temp file.
|
|
10
|
+
*
|
|
11
|
+
* Requirements:
|
|
12
|
+
* - macOS (Windows path requires a CEP panel — deferred)
|
|
13
|
+
* - Premiere Pro running with a project + active sequence
|
|
14
|
+
*
|
|
15
|
+
* Capability map (verified against current Premiere Pro APIs):
|
|
16
|
+
* - canMoveClips: true (Premiere has direct timeline mutation)
|
|
17
|
+
* - canScriptColor: false (Lumetri preset application is limited)
|
|
18
|
+
* - canScriptAudio: true (track levels, mute, gain via TrackItem)
|
|
19
|
+
* - canTriggerAI: false (Speech-to-Text + Auto Reframe not exposed)
|
|
20
|
+
* - preferredImportFormat: xml (FCPXML)
|
|
21
|
+
*
|
|
22
|
+
* Unsupported via live API (use write_edl + import_timeline):
|
|
23
|
+
* - cut_at — QE DOM razor is undocumented and version-fragile
|
|
24
|
+
* - ripple_delete — same reason
|
|
25
|
+
* - render — requires Adobe Media Encoder integration; deferred
|
|
26
|
+
*/
|
|
27
|
+
export declare class PremiereAdapter implements VideoHost {
|
|
28
|
+
readonly name: "premiere";
|
|
29
|
+
readonly displayName = "Adobe Premiere Pro";
|
|
30
|
+
private cachedCapabilities?;
|
|
31
|
+
private bridge;
|
|
32
|
+
capabilities(): Promise<HostCapabilities>;
|
|
33
|
+
getTimeline(): Promise<TimelineState>;
|
|
34
|
+
addMarker(marker: MarkerInfo): Promise<void>;
|
|
35
|
+
cutAt(_track: number, _frame: Frame): Promise<void>;
|
|
36
|
+
rippleDelete(_track: number, _range: FrameRange): Promise<void>;
|
|
37
|
+
appendClip(track: number, mediaPath: string): Promise<ClipInfo>;
|
|
38
|
+
importTimeline(filePath: string): Promise<void>;
|
|
39
|
+
render(_opts: {
|
|
40
|
+
preset: string;
|
|
41
|
+
output: string;
|
|
42
|
+
}): Promise<void>;
|
|
43
|
+
getMarkers(): Promise<MarkerInfo[]>;
|
|
44
|
+
createTimeline(opts: {
|
|
45
|
+
name: string;
|
|
46
|
+
fps: number;
|
|
47
|
+
width?: number;
|
|
48
|
+
height?: number;
|
|
49
|
+
}): Promise<void>;
|
|
50
|
+
importToMediaPool(paths: string[], bin?: string): Promise<void>;
|
|
51
|
+
setClipSpeed(_clipId: string, _speed: number): Promise<void>;
|
|
52
|
+
applyLut(_clipId: string, _lutPath: string, _nodeIndex?: number): Promise<void>;
|
|
53
|
+
setPrimaryCorrection(_clipId: string, _cdl: {
|
|
54
|
+
slope?: [number, number, number];
|
|
55
|
+
offset?: [number, number, number];
|
|
56
|
+
power?: [number, number, number];
|
|
57
|
+
saturation?: number;
|
|
58
|
+
nodeIndex?: number;
|
|
59
|
+
}): Promise<void>;
|
|
60
|
+
copyGrade(_sourceClipId: string, _targetClipIds: string[]): Promise<void>;
|
|
61
|
+
listRenderPresets(): Promise<string[]>;
|
|
62
|
+
replaceClip(clipId: string, mediaPath: string): Promise<void>;
|
|
63
|
+
cloneTimeline(newName: string): Promise<{
|
|
64
|
+
name: string;
|
|
65
|
+
}>;
|
|
66
|
+
saveProject(): Promise<void>;
|
|
67
|
+
addTrack(_kind: "video" | "audio" | "subtitle"): Promise<{
|
|
68
|
+
track: number;
|
|
69
|
+
}>;
|
|
70
|
+
insertClipOnTrack(opts: {
|
|
71
|
+
mediaPath: string;
|
|
72
|
+
track: number;
|
|
73
|
+
recordFrame: number;
|
|
74
|
+
sourceInFrame?: number;
|
|
75
|
+
sourceOutFrame?: number;
|
|
76
|
+
}): Promise<ClipInfo>;
|
|
77
|
+
importSubtitles(srtPath: string): Promise<{
|
|
78
|
+
imported: boolean;
|
|
79
|
+
attached: boolean;
|
|
80
|
+
note?: string;
|
|
81
|
+
}>;
|
|
82
|
+
shutdown(): void;
|
|
83
|
+
static _snapColorToPremiereForTest(color: unknown): string;
|
|
84
|
+
static _mapTransportToRuntimeForTest(t: PremiereTransportKind): HostRuntime;
|
|
85
|
+
private checkReachable;
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../src/core/hosts/premiere/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
import { spawnSync } from "node:child_process";
|
|
2
|
+
import { platform } from "node:os";
|
|
3
|
+
import { PREMIERE_COLOR_INDEX, RESOLVE_TO_PREMIERE_INDEX } from "../../marker-colors.js";
|
|
4
|
+
import { HostUnsupportedError } from "../types.js";
|
|
5
|
+
import { PremiereBridge } from "./bridge.js";
|
|
6
|
+
/**
|
|
7
|
+
* Translate the bridge's internal transport kind to the runtime label exposed
|
|
8
|
+
* via HostCapabilities. Pure function — exported via the static helper for
|
|
9
|
+
* unit testing.
|
|
10
|
+
*/
|
|
11
|
+
function mapTransportToRuntime(t) {
|
|
12
|
+
switch (t) {
|
|
13
|
+
case "http-uxp":
|
|
14
|
+
return "uxp";
|
|
15
|
+
case "http-cep":
|
|
16
|
+
return "cep";
|
|
17
|
+
case "osascript-cep":
|
|
18
|
+
return "osascript";
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
/** Inverse of PREMIERE_COLOR_INDEX — numeric index back to color name. */
|
|
22
|
+
const PREMIERE_INDEX_TO_NAME = Object.fromEntries(Object.entries(PREMIERE_COLOR_INDEX).map(([name, idx]) => [idx, name]));
|
|
23
|
+
/**
|
|
24
|
+
* Adobe Premiere Pro adapter.
|
|
25
|
+
*
|
|
26
|
+
* Drives Premiere via ExtendScript through `osascript` on macOS (see
|
|
27
|
+
* ./bridge.ts). Each call generates a self-contained JSX file and asks
|
|
28
|
+
* Premiere to evalFile it; the JSX writes a JSON result to a temp file.
|
|
29
|
+
*
|
|
30
|
+
* Requirements:
|
|
31
|
+
* - macOS (Windows path requires a CEP panel — deferred)
|
|
32
|
+
* - Premiere Pro running with a project + active sequence
|
|
33
|
+
*
|
|
34
|
+
* Capability map (verified against current Premiere Pro APIs):
|
|
35
|
+
* - canMoveClips: true (Premiere has direct timeline mutation)
|
|
36
|
+
* - canScriptColor: false (Lumetri preset application is limited)
|
|
37
|
+
* - canScriptAudio: true (track levels, mute, gain via TrackItem)
|
|
38
|
+
* - canTriggerAI: false (Speech-to-Text + Auto Reframe not exposed)
|
|
39
|
+
* - preferredImportFormat: xml (FCPXML)
|
|
40
|
+
*
|
|
41
|
+
* Unsupported via live API (use write_edl + import_timeline):
|
|
42
|
+
* - cut_at — QE DOM razor is undocumented and version-fragile
|
|
43
|
+
* - ripple_delete — same reason
|
|
44
|
+
* - render — requires Adobe Media Encoder integration; deferred
|
|
45
|
+
*/
|
|
46
|
+
export class PremiereAdapter {
|
|
47
|
+
name = "premiere";
|
|
48
|
+
displayName = "Adobe Premiere Pro";
|
|
49
|
+
cachedCapabilities;
|
|
50
|
+
bridge = new PremiereBridge();
|
|
51
|
+
async capabilities() {
|
|
52
|
+
if (this.cachedCapabilities)
|
|
53
|
+
return this.cachedCapabilities;
|
|
54
|
+
const reachable = await this.checkReachable();
|
|
55
|
+
// Map our internal transport kind to a public runtime label, and attach a
|
|
56
|
+
// deprecation notice for anything on the CEP/ExtendScript sunset path.
|
|
57
|
+
const transport = this.bridge.getTransportKind();
|
|
58
|
+
const runtime = transport ? mapTransportToRuntime(transport) : undefined;
|
|
59
|
+
const deprecationNotice = runtime === "cep" || runtime === "osascript"
|
|
60
|
+
? "Adobe is removing CEP/ExtendScript support in September 2026. " +
|
|
61
|
+
"Install the UXP panel for Premiere 25.6+: " +
|
|
62
|
+
"`npx @kenkaiiii/gg-editor-premiere-panel install --uxp`."
|
|
63
|
+
: undefined;
|
|
64
|
+
this.cachedCapabilities = {
|
|
65
|
+
canMoveClips: true,
|
|
66
|
+
canScriptColor: false,
|
|
67
|
+
canScriptAudio: true,
|
|
68
|
+
canTriggerAI: false,
|
|
69
|
+
preferredImportFormat: "xml",
|
|
70
|
+
isAvailable: reachable.ok,
|
|
71
|
+
unavailableReason: reachable.ok ? undefined : reachable.reason,
|
|
72
|
+
...(runtime ? { runtime } : {}),
|
|
73
|
+
...(deprecationNotice ? { deprecationNotice } : {}),
|
|
74
|
+
};
|
|
75
|
+
return this.cachedCapabilities;
|
|
76
|
+
}
|
|
77
|
+
async getTimeline() {
|
|
78
|
+
return this.bridge.call("get_timeline");
|
|
79
|
+
}
|
|
80
|
+
async addMarker(marker) {
|
|
81
|
+
// Snap any agent-supplied color (incl. Resolve-only hues) to Premiere's
|
|
82
|
+
// native 8-name palette BEFORE sending to JSX. JSX's _markerColor only
|
|
83
|
+
// recognises 8 names — anything else fell back to blue. Now we send the
|
|
84
|
+
// hue-snapped equivalent (e.g. pink → red, mint → green) consistent
|
|
85
|
+
// with the snap table the rest of the codebase uses.
|
|
86
|
+
const color = snapColorToPremiere(marker.color);
|
|
87
|
+
await this.bridge.call("add_marker", {
|
|
88
|
+
frame: marker.frame,
|
|
89
|
+
note: marker.note,
|
|
90
|
+
color,
|
|
91
|
+
durationFrames: marker.durationFrames ?? 1,
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
async cutAt(_track, _frame) {
|
|
95
|
+
throw new HostUnsupportedError("premiere", "cutAt", "QE DOM razor exists but is undocumented and version-fragile. " +
|
|
96
|
+
"Use write_edl + import_timeline for reliable bulk cuts.");
|
|
97
|
+
}
|
|
98
|
+
async rippleDelete(_track, _range) {
|
|
99
|
+
throw new HostUnsupportedError("premiere", "rippleDelete", "Use write_edl + import_timeline for reliable bulk operations.");
|
|
100
|
+
}
|
|
101
|
+
async appendClip(track, mediaPath) {
|
|
102
|
+
return this.bridge.call("append_clip", { track, mediaPath });
|
|
103
|
+
}
|
|
104
|
+
async importTimeline(filePath) {
|
|
105
|
+
await this.bridge.call("import_timeline", { filePath });
|
|
106
|
+
}
|
|
107
|
+
async render(_opts) {
|
|
108
|
+
throw new HostUnsupportedError("premiere", "render", "Premiere render via ExtendScript requires Adobe Media Encoder integration. " +
|
|
109
|
+
"Use Premiere's File > Export menu manually for now.");
|
|
110
|
+
}
|
|
111
|
+
async getMarkers() {
|
|
112
|
+
return this.bridge.call("get_markers");
|
|
113
|
+
}
|
|
114
|
+
async createTimeline(opts) {
|
|
115
|
+
// Premiere's createNewSequence requires a .sqpreset file. We pass through
|
|
116
|
+
// the requested name; the JSX side falls back to cloning the active
|
|
117
|
+
// sequence if no preset path is provided. fps/width/height are advisory
|
|
118
|
+
// unless a matching preset exists on disk.
|
|
119
|
+
void opts.fps;
|
|
120
|
+
void opts.width;
|
|
121
|
+
void opts.height;
|
|
122
|
+
await this.bridge.call("create_timeline", { name: opts.name });
|
|
123
|
+
}
|
|
124
|
+
async importToMediaPool(paths, bin) {
|
|
125
|
+
await this.bridge.call("import_to_media_pool", { paths, bin });
|
|
126
|
+
}
|
|
127
|
+
async setClipSpeed(_clipId, _speed) {
|
|
128
|
+
throw new HostUnsupportedError("premiere", "setClipSpeed", "Premiere's TrackItem has no scriptable setSpeed (QE DOM is undocumented). " +
|
|
129
|
+
"Use write_fcpxml with explicit timeMap rates per clip, then import_edl.");
|
|
130
|
+
}
|
|
131
|
+
async applyLut(_clipId, _lutPath, _nodeIndex) {
|
|
132
|
+
throw new HostUnsupportedError("premiere", "applyLut", "Lumetri preset application via ExtendScript is limited; use Resolve for color or apply manually. apply_lut via Lumetri preset XML is deferred.");
|
|
133
|
+
}
|
|
134
|
+
async setPrimaryCorrection(_clipId, _cdl) {
|
|
135
|
+
throw new HostUnsupportedError("premiere", "setPrimaryCorrection", "Lumetri primary CDL is not exposed to ExtendScript; use Resolve for color or grade manually.");
|
|
136
|
+
}
|
|
137
|
+
async copyGrade(_sourceClipId, _targetClipIds) {
|
|
138
|
+
throw new HostUnsupportedError("premiere", "copyGrade", "Lumetri attribute copy is not scriptable; use Resolve for color or copy/paste attributes manually.");
|
|
139
|
+
}
|
|
140
|
+
async listRenderPresets() {
|
|
141
|
+
// Premiere render presets live in Adobe Media Encoder; not exposed to
|
|
142
|
+
// ExtendScript without launching AME. Return the empty list with no error
|
|
143
|
+
// so the agent gracefully falls back to common preset names.
|
|
144
|
+
return [];
|
|
145
|
+
}
|
|
146
|
+
async replaceClip(clipId, mediaPath) {
|
|
147
|
+
await this.bridge.call("replace_clip", { clipId, mediaPath });
|
|
148
|
+
}
|
|
149
|
+
async cloneTimeline(newName) {
|
|
150
|
+
return this.bridge.call("clone_timeline", { newName });
|
|
151
|
+
}
|
|
152
|
+
async saveProject() {
|
|
153
|
+
await this.bridge.call("save_project");
|
|
154
|
+
}
|
|
155
|
+
async addTrack(_kind) {
|
|
156
|
+
throw new HostUnsupportedError("premiere", "addTrack", "Premiere's TrackCollection.add is not exposed via ExtendScript on all versions. " +
|
|
157
|
+
"Use Sequence → Add Tracks manually, or rebuild via FCPXML with the desired track count.");
|
|
158
|
+
}
|
|
159
|
+
// setClipVolume intentionally NOT implemented — Lumetri Audio gain isn't
|
|
160
|
+
// reliably scriptable. Use Resolve for clip-level volume.
|
|
161
|
+
async insertClipOnTrack(opts) {
|
|
162
|
+
return this.bridge.call("insert_clip_on_track", opts);
|
|
163
|
+
}
|
|
164
|
+
// smartReframe is intentionally NOT implemented — Premiere uses Auto Reframe
|
|
165
|
+
// via the effects panel, not scriptable via ExtendScript.
|
|
166
|
+
async importSubtitles(srtPath) {
|
|
167
|
+
return this.bridge.call("import_subtitles", { srtPath });
|
|
168
|
+
}
|
|
169
|
+
// openPage is intentionally NOT implemented — Premiere has no page concept.
|
|
170
|
+
// The agent should consult host_info.caps before calling it.
|
|
171
|
+
shutdown() {
|
|
172
|
+
this.bridge.shutdown();
|
|
173
|
+
}
|
|
174
|
+
// Exposed for unit testing.
|
|
175
|
+
static _snapColorToPremiereForTest(color) {
|
|
176
|
+
return snapColorToPremiere(color);
|
|
177
|
+
}
|
|
178
|
+
// Exposed for unit testing.
|
|
179
|
+
static _mapTransportToRuntimeForTest(t) {
|
|
180
|
+
return mapTransportToRuntime(t);
|
|
181
|
+
}
|
|
182
|
+
// ── Private ────────────────────────────────────────────────
|
|
183
|
+
async checkReachable() {
|
|
184
|
+
const platformOk = await PremiereBridge.checkReachable();
|
|
185
|
+
if (!platformOk.ok)
|
|
186
|
+
return platformOk;
|
|
187
|
+
if (platform() === "darwin") {
|
|
188
|
+
// Even if the panel is reachable, sanity-check Premiere is running.
|
|
189
|
+
const r = spawnSync("osascript", [
|
|
190
|
+
"-e",
|
|
191
|
+
'tell application "System Events" to (name of processes) contains "Adobe Premiere Pro"',
|
|
192
|
+
], { encoding: "utf8" });
|
|
193
|
+
if (r.status === 0 && r.stdout.trim() === "true") {
|
|
194
|
+
return { ok: true, transport: platformOk.transport };
|
|
195
|
+
}
|
|
196
|
+
return { ok: false, reason: "Premiere Pro is not running." };
|
|
197
|
+
}
|
|
198
|
+
return { ok: true, transport: platformOk.transport };
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* Resolve any agent-supplied marker color (string name OR numeric Premiere
|
|
203
|
+
* index) to one of Premiere's 8 native color names that JSX `_markerColor`
|
|
204
|
+
* recognises. Resolve-only hues snap via `RESOLVE_TO_PREMIERE_INDEX`.
|
|
205
|
+
* Unknown / undefined inputs default to "blue".
|
|
206
|
+
*/
|
|
207
|
+
function snapColorToPremiere(input) {
|
|
208
|
+
if (typeof input === "number") {
|
|
209
|
+
return PREMIERE_INDEX_TO_NAME[input] ?? "blue";
|
|
210
|
+
}
|
|
211
|
+
if (typeof input !== "string" || !input.trim())
|
|
212
|
+
return "blue";
|
|
213
|
+
const idx = RESOLVE_TO_PREMIERE_INDEX[input.toLowerCase()];
|
|
214
|
+
if (idx === undefined)
|
|
215
|
+
return "blue";
|
|
216
|
+
return PREMIERE_INDEX_TO_NAME[idx] ?? "blue";
|
|
217
|
+
}
|
|
218
|
+
//# sourceMappingURL=adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/core/hosts/premiere/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ExtendScript runtime for the Premiere bridge.
|
|
3
|
+
*
|
|
4
|
+
* Design: per-call self-contained JSX file. Each invocation generates a
|
|
5
|
+
* complete script that:
|
|
6
|
+
* 1. Defines small helpers (frame conversion, file writer)
|
|
7
|
+
* 2. Reads command + params hard-coded into the file
|
|
8
|
+
* 3. Writes result JSON to a known output path
|
|
9
|
+
* 4. Always wraps work in try/catch so a Premiere-side exception still
|
|
10
|
+
* yields a parseable result file
|
|
11
|
+
*
|
|
12
|
+
* We keep JSX minimal — agent-facing logic lives in the TS adapter; JSX is
|
|
13
|
+
* only the thin glue that walks app.project.* and writes JSON.
|
|
14
|
+
*
|
|
15
|
+
* Modern Premiere (2018+) ships with full ECMAScript 5 JSON support. We
|
|
16
|
+
* don't polyfill; older versions get a clear error.
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* Generate a self-contained JSX script for one method invocation.
|
|
20
|
+
* @param method Method name (must match METHODS)
|
|
21
|
+
* @param params JSON-encoded params (will be JSON.parsed in JSX as `P`)
|
|
22
|
+
* @param outPath Absolute path where the result JSON is written
|
|
23
|
+
*/
|
|
24
|
+
export declare function buildJsxScript(method: string, params: Record<string, unknown>, outPath: string): string;
|
|
25
|
+
export declare const PREMIERE_METHODS: string[];
|
|
26
|
+
//# sourceMappingURL=bridge-source.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridge-source.d.ts","sourceRoot":"","sources":["../../../../src/core/hosts/premiere/bridge-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AA4SH;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,OAAO,EAAE,MAAM,GACd,MAAM,CAgBR;AAED,eAAO,MAAM,gBAAgB,UAAuB,CAAC"}
|