hyperframes 0.8.78 → 0.8.80
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.js +2958 -1893
- package/dist/fontLocalizeCli.js +160 -54
- package/dist/hyperframe-runtime.js +57 -57
- package/dist/hyperframe.manifest.json +1 -1
- package/dist/hyperframe.runtime.iife.js +57 -57
- package/dist/hyperframes-player.global.js +3 -3
- package/dist/registry/localSemantic.js +6 -25
- package/dist/skills/media-use/audio/references/remove-background.md +1 -1
- package/dist/skills/media-use/registry/localSemantic.js +6 -25
- package/dist/skills/media-use/scripts/compatibility.test.mjs +2 -0
- package/dist/skills/media-use/scripts/lib/cache.mjs +6 -8
- package/dist/skills/media-use/scripts/lib/candidates.test.mjs +2 -2
- package/dist/skills/media-use/scripts/lib/config-lock.d.mts +3 -0
- package/dist/skills/media-use/scripts/lib/config-lock.mjs +45 -0
- package/dist/skills/media-use/scripts/lib/config-lock.test.mjs +79 -0
- package/dist/skills/media-use/scripts/lib/manifest.test.mjs +2 -0
- package/dist/skills/media-use/scripts/lib/media-home.mjs +20 -0
- package/dist/skills/media-use/scripts/lib/media-home.test.mjs +61 -0
- package/dist/skills/media-use/scripts/lib/misses.mjs +6 -6
- package/dist/skills/media-use/scripts/lib/misses.test.mjs +12 -1
- package/dist/skills/media-use/scripts/lib/prefs-store.mjs +2 -2
- package/dist/skills/media-use/scripts/lib/prefs-store.test.mjs +1 -1
- package/dist/skills/media-use/scripts/lib/recipe-store.mjs +2 -2
- package/dist/skills/media-use/scripts/lib/recipe-store.test.mjs +1 -1
- package/dist/skills/media-use/scripts/lib/stats.test.mjs +1 -1
- package/dist/skills/media-use/scripts/lib/telemetry.mjs +26 -9
- package/dist/skills/media-use/scripts/lib/telemetry.test.mjs +64 -0
- package/dist/skills/registry/localSemantic.js +6 -25
- package/dist/studio/assets/hyperframes-player-CgnoxDoD.js +464 -0
- package/dist/studio/assets/{index-CX_4MYbk.js → index-CsG24Jub.js} +190 -187
- package/dist/studio/assets/{index-C_n__Uh3.js → index-DZGVvqDT.js} +1 -1
- package/dist/studio/assets/{index-DdpuHaGN.js → index-J9HXe7mU.js} +1 -1
- package/dist/studio/{chunk-5VANA2TG.js → chunk-I7XNAIOF.js} +2 -1
- package/dist/studio/{domEditingLayers-IGPLTI5E.js → domEditingLayers-MHFDKAQ7.js} +2 -2
- package/dist/studio/index.d.ts +40 -16
- package/dist/studio/index.html +1 -1
- package/dist/studio/index.js +1918 -1408
- package/dist/studio/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/studio/assets/hyperframes-player-BdnQGwG5.js +0 -464
- /package/dist/studio/{chunk-5VANA2TG.js.map → chunk-I7XNAIOF.js.map} +0 -0
- /package/dist/studio/{domEditingLayers-IGPLTI5E.js.map → domEditingLayers-MHFDKAQ7.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as P}from"./index-
|
|
1
|
+
import{g as P}from"./index-CsG24Jub.js";function j(c,d){for(var s=0;s<d.length;s++){const a=d[s];if(typeof a!="string"&&!Array.isArray(a)){for(const i in a)if(i!=="default"&&!(i in c)){const l=Object.getOwnPropertyDescriptor(a,i);l&&Object.defineProperty(c,i,l.get?l:{enumerable:!0,get:()=>a[i]})}}}return Object.freeze(Object.defineProperty(c,Symbol.toStringTag,{value:"Module"}))}var v={},w;function k(){if(w)return v;w=1,Object.defineProperty(v,"__esModule",{value:!0}),v.default=d;var c=window.OfflineAudioContext||window.webkitOfflineAudioContext;function d(e){var r=a(e);return r.start(0),[i,y,O(e.sampleRate),s].reduce(function(t,o){return o(t)},r.buffer.getChannelData(0))}function s(e){return e.sort(function(r,t){return t.count-r.count}).splice(0,5)[0].tempo}function a(e){var r=e.length,t=e.numberOfChannels,o=e.sampleRate,n=new c(t,r,o),u=n.createBufferSource();u.buffer=e;var f=n.createBiquadFilter();return f.type="lowpass",u.connect(f),f.connect(n.destination),u}function i(e){for(var r=[],t=.9,o=.3,n=15;r.length<n&&t>=o;)r=l(e,t),t-=.05;if(r.length<n)throw new Error("Could not find enough samples for a reliable detection.");return r}function l(e,r){for(var t=[],o=0,n=e.length;o<n;o+=1)e[o]>r&&(t.push(o),o+=1e4);return t}function y(e){var r=[];return e.forEach(function(t,o){for(var n=function(x){var g=e[o+x]-t,_=r.some(function(h){if(h.interval===g)return h.count+=1});_||r.push({interval:g,count:1})},u=0;u<10;u+=1)n(u)}),r}function O(e){return function(r){var t=[];return r.forEach(function(o){if(o.interval!==0){for(var n=60/(o.interval/e);n<90;)n*=2;for(;n>180;)n/=2;n=Math.round(n);var u=t.some(function(f){if(f.tempo===n)return f.count+=o.count});u||t.push({tempo:n,count:o.count})}}),t}}return v}var p,b;function q(){return b||(b=1,p=k().default),p}var m=q();const A=P(m),D=j({__proto__:null,default:A},[m]);export{D as i};
|
|
@@ -1115,6 +1115,7 @@ export {
|
|
|
1115
1115
|
isHtmlElement,
|
|
1116
1116
|
isElementVisibleThroughAncestors,
|
|
1117
1117
|
setCompositionSourceMap,
|
|
1118
|
+
getSourceFileForElement,
|
|
1118
1119
|
escapeCssString,
|
|
1119
1120
|
buildStableSelector,
|
|
1120
1121
|
getSelectorIndex,
|
|
@@ -1149,4 +1150,4 @@ export {
|
|
|
1149
1150
|
readHfId,
|
|
1150
1151
|
buildDomEditPatchTarget
|
|
1151
1152
|
};
|
|
1152
|
-
//# sourceMappingURL=chunk-
|
|
1153
|
+
//# sourceMappingURL=chunk-I7XNAIOF.js.map
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
resolveDomEditCapabilities,
|
|
21
21
|
resolveDomEditSelection,
|
|
22
22
|
serializeDomEditTextFields
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-I7XNAIOF.js";
|
|
24
24
|
import "./chunk-PZ5AY32C.js";
|
|
25
25
|
export {
|
|
26
26
|
buildDefaultDomEditTextField,
|
|
@@ -45,4 +45,4 @@ export {
|
|
|
45
45
|
resolveDomEditSelection,
|
|
46
46
|
serializeDomEditTextFields
|
|
47
47
|
};
|
|
48
|
-
//# sourceMappingURL=domEditingLayers-
|
|
48
|
+
//# sourceMappingURL=domEditingLayers-MHFDKAQ7.js.map
|
package/dist/studio/index.d.ts
CHANGED
|
@@ -1094,13 +1094,6 @@ interface DomEditPatchBatchesResult {
|
|
|
1094
1094
|
changed: boolean;
|
|
1095
1095
|
}
|
|
1096
1096
|
|
|
1097
|
-
/** A host's verdict on one element: editable, or blocked with a reason to show. */
|
|
1098
|
-
type TimelineEditPermission = true | {
|
|
1099
|
-
blocked: true;
|
|
1100
|
-
reason: string;
|
|
1101
|
-
};
|
|
1102
|
-
type CanEditTimelineElement = (element: TimelineElement) => TimelineEditPermission;
|
|
1103
|
-
|
|
1104
1097
|
interface RecordEditInput$1 {
|
|
1105
1098
|
label: string;
|
|
1106
1099
|
coalesceKey?: string;
|
|
@@ -1253,8 +1246,9 @@ interface TimelineEditCallbacks {
|
|
|
1253
1246
|
onToggleTrackHidden?: (track: number, hidden: boolean, displayNumber?: number | null) => Promise<void> | void;
|
|
1254
1247
|
/** B7's bus strip: live-write the group's own attribute while dragging. */
|
|
1255
1248
|
onSetAudioGroupAttributeLive?: (groupId: string, attr: string, value: string | null) => void;
|
|
1249
|
+
onRevertAudioGroupAttributeLive?: (groupId: string, attr: string) => void;
|
|
1256
1250
|
/** ...and persist one undo entry on release. */
|
|
1257
|
-
onSetAudioGroupAttributeQuiet?: (groupId: string, attr: string, value: string | null, label: string) => Promise<void>;
|
|
1251
|
+
onSetAudioGroupAttributeQuiet?: (groupId: string, attr: string, value: string | null, label: string) => Promise<TimelineEditOutcome | void>;
|
|
1258
1252
|
/** C1's ungrouped-track FX pointer: "Group these clips" — write
|
|
1259
1253
|
* `data-audio-group` on every one of them, atomically. Same shape B6's
|
|
1260
1254
|
* carve auto-grouping uses. */
|
|
@@ -1262,7 +1256,8 @@ interface TimelineEditCallbacks {
|
|
|
1262
1256
|
/** C1's single-clip FX write: addressed by the clip itself rather than the
|
|
1263
1257
|
* current selection, mirroring `onSetAudioGroupAttributeLive/Quiet`. */
|
|
1264
1258
|
onSetElementAttributeLive?: (element: TimelineElement, attr: string, value: string | null) => void;
|
|
1265
|
-
|
|
1259
|
+
onRevertElementAttributeLive?: (element: TimelineElement, attr: string) => void;
|
|
1260
|
+
onSetElementAttributeQuiet?: (element: TimelineElement, attr: string, value: string | null, label: string) => Promise<TimelineEditOutcome | void>;
|
|
1266
1261
|
onBlockedEditAttempt?: (element: TimelineElement, intent: BlockedTimelineEditIntent) => void;
|
|
1267
1262
|
onSplitElement?: (element: TimelineElement, splitTime: number) => Promise<void> | void;
|
|
1268
1263
|
onRazorSplit?: (element: TimelineElement, splitTime: number) => Promise<void> | void;
|
|
@@ -2009,6 +2004,20 @@ declare function usePlayerHandle(): PlayerHandle;
|
|
|
2009
2004
|
|
|
2010
2005
|
declare function formatTime(time: number): string;
|
|
2011
2006
|
|
|
2007
|
+
/** A host's verdict on one element: editable, or blocked with a reason to show. */
|
|
2008
|
+
type TimelineEditPermission = true | {
|
|
2009
|
+
blocked: true;
|
|
2010
|
+
reason: string;
|
|
2011
|
+
};
|
|
2012
|
+
type CanEditTimelineElement = (element: TimelineElement) => TimelineEditPermission;
|
|
2013
|
+
/** What an effect save did: landed, refused before writing, or failed while writing. */
|
|
2014
|
+
type TimelineEditOutcome = {
|
|
2015
|
+
status: "saved";
|
|
2016
|
+
} | {
|
|
2017
|
+
status: "refused" | "failed";
|
|
2018
|
+
reason: string;
|
|
2019
|
+
};
|
|
2020
|
+
|
|
2012
2021
|
interface TimelineEditCallbackDeps {
|
|
2013
2022
|
handleTimelineElementMove: (element: TimelineElement, updates: Pick<TimelineElement, "start" | "track">) => Promise<void> | void;
|
|
2014
2023
|
handleTimelineElementsMove: (edits: Array<{
|
|
@@ -2020,7 +2029,8 @@ interface TimelineEditCallbackDeps {
|
|
|
2020
2029
|
handleToggleTrackHidden: (track: number, hidden: boolean) => Promise<void> | void;
|
|
2021
2030
|
setAudioGroupAttribute: {
|
|
2022
2031
|
setLive: (groupId: string, attr: string, value: string | null) => void;
|
|
2023
|
-
|
|
2032
|
+
revertLive?: (groupId: string, attr: string) => void;
|
|
2033
|
+
setQuiet: (groupId: string, attr: string, value: string | null, label: string) => Promise<TimelineEditOutcome | void>;
|
|
2024
2034
|
};
|
|
2025
2035
|
handleBlockedTimelineEdit: (element: TimelineElement, intent: BlockedTimelineEditIntent) => void;
|
|
2026
2036
|
handleTimelineElementSplit: (element: TimelineElement, splitTime: number) => Promise<void> | void;
|
|
@@ -2031,7 +2041,8 @@ interface TimelineEditCallbackDeps {
|
|
|
2031
2041
|
/** C1's single-clip FX write, addressed by the clip itself. */
|
|
2032
2042
|
setElementFxAttribute?: {
|
|
2033
2043
|
setLive: (element: TimelineElement, attr: string, value: string | null) => void;
|
|
2034
|
-
|
|
2044
|
+
revertLive?: (element: TimelineElement, attr: string) => void;
|
|
2045
|
+
setQuiet: (element: TimelineElement, attr: string, value: string | null, label: string) => Promise<TimelineEditOutcome | void>;
|
|
2035
2046
|
};
|
|
2036
2047
|
}
|
|
2037
2048
|
|
|
@@ -2666,7 +2677,7 @@ interface ApplyResult {
|
|
|
2666
2677
|
paths?: string[];
|
|
2667
2678
|
files?: Record<string, ApplyRestoredFile>;
|
|
2668
2679
|
}
|
|
2669
|
-
/** Studio's undo over the server's project history: an edit claims what it wrote; Cmd+Z steps
|
|
2680
|
+
/** Studio's undo over the server's project history: an edit claims what it wrote; Cmd+Z steps the person's. */
|
|
2670
2681
|
declare function usePersistentEditHistory({ projectId }: UsePersistentEditHistoryOptions): {
|
|
2671
2682
|
loaded: boolean;
|
|
2672
2683
|
canUndo: boolean;
|
|
@@ -2688,6 +2699,14 @@ declare function usePersistentEditHistory({ projectId }: UsePersistentEditHistor
|
|
|
2688
2699
|
redo: (callbacks: ApplyCallbacks) => Promise<ApplyResult>;
|
|
2689
2700
|
};
|
|
2690
2701
|
|
|
2702
|
+
/** The files an undo or redo rewrote. */
|
|
2703
|
+
interface LiveLaneRestore {
|
|
2704
|
+
paths?: string[];
|
|
2705
|
+
files?: Record<string, {
|
|
2706
|
+
restored: string;
|
|
2707
|
+
}>;
|
|
2708
|
+
}
|
|
2709
|
+
|
|
2691
2710
|
declare function useTimelineEditing({ projectId, activeCompPath, timelineElements, showToast, writeProjectFile, observeProjectFileVersion, recordEdit, reloadPreview, previewIframeRef, pendingTimelineEditPathRef, uploadProjectFiles, isRecordingRef, sdkSession, publishSdkSession, forceReloadSdkSession, invalidateGsapCache, handleDomZIndexReorderCommitRef, canEdit, }: UseTimelineEditingOptions): {
|
|
2692
2711
|
handleTimelineElementMove: (element: TimelineElement, updates: TimelineMoveUpdates) => Promise<void>;
|
|
2693
2712
|
handleTimelineElementResize: (element: TimelineElement, updates: Pick<TimelineElement, "start" | "duration" | "playbackStart">) => Promise<void>;
|
|
@@ -2695,12 +2714,16 @@ declare function useTimelineEditing({ projectId, activeCompPath, timelineElement
|
|
|
2695
2714
|
handleToggleElementHidden: (elementKey: string | readonly string[], hidden: boolean) => Promise<void>;
|
|
2696
2715
|
handleAutoGroupCarveSources: (clipIds: readonly string[], groupId: string, groupLabel?: string | undefined) => Promise<void>;
|
|
2697
2716
|
setAudioGroupAttribute: {
|
|
2698
|
-
setQuiet: (groupId: string, attr: string, value: string | null, label: string) => Promise<
|
|
2717
|
+
setQuiet: (groupId: string, attr: string, value: string | null, label: string) => Promise<TimelineEditOutcome>;
|
|
2699
2718
|
setLive: (groupId: string, attr: string, value: string | null) => void;
|
|
2719
|
+
revertLive: (groupId: string, attr: string) => void;
|
|
2720
|
+
restoreLive: (restore: LiveLaneRestore) => void;
|
|
2700
2721
|
};
|
|
2701
2722
|
setElementFxAttribute: {
|
|
2702
|
-
setQuiet: (element: TimelineElement, attr: string, value: string | null, label: string) => Promise<
|
|
2723
|
+
setQuiet: (element: TimelineElement, attr: string, value: string | null, label: string) => Promise<TimelineEditOutcome>;
|
|
2703
2724
|
setLive: (element: TimelineElement, attr: string, value: string | null) => void;
|
|
2725
|
+
revertLive: (element: TimelineElement, attr: string) => void;
|
|
2726
|
+
restoreLive: (restore: LiveLaneRestore) => void;
|
|
2704
2727
|
};
|
|
2705
2728
|
handleTimelineElementDelete: (element: TimelineElement) => Promise<void>;
|
|
2706
2729
|
handleTimelineElementsDelete: (selection: TimelineElement[]) => Promise<void>;
|
|
@@ -2713,6 +2736,7 @@ declare function useTimelineEditing({ projectId, activeCompPath, timelineElement
|
|
|
2713
2736
|
handleBlockedTimelineEdit: (element: TimelineElement) => void;
|
|
2714
2737
|
handleTimelineGroupMove: (changes: TimelineGroupMoveChange[], options?: TimelineGroupCommitOptions | undefined) => Promise<void>;
|
|
2715
2738
|
handleTimelineGroupResize: (changes: TimelineGroupResizeChange[], options?: TimelineGroupCommitOptions | undefined) => Promise<void>;
|
|
2739
|
+
restoreLiveLanes: (restore: Parameters<(restore: LiveLaneRestore) => void>[0]) => void;
|
|
2716
2740
|
};
|
|
2717
2741
|
|
|
2718
2742
|
declare class StudioSaveHttpError extends Error {
|
|
@@ -2783,7 +2807,7 @@ interface UseEditHistoryActionsOptions {
|
|
|
2783
2807
|
showToast: (message: string, tone?: "error" | "info") => void;
|
|
2784
2808
|
syncHistoryPreviewAfterApply: (restore: Pick<HistoryResult, "paths" | "files">) => Promise<void>;
|
|
2785
2809
|
waitForPendingDomEditSaves: () => Promise<void>;
|
|
2786
|
-
onAfterUndoRedo?: () => void;
|
|
2810
|
+
onAfterUndoRedo?: (restore: Pick<HistoryResult, "paths" | "files">) => void;
|
|
2787
2811
|
/** Active composition path — decides whether undo/redo must resync the SDK session. */
|
|
2788
2812
|
activeCompPath?: string | null;
|
|
2789
2813
|
/** Reloads the SDK session after a revert of the active comp, past the self-write suppress window. */
|
|
@@ -2866,4 +2890,4 @@ declare function TimelineEditProvider({ value, children, }: {
|
|
|
2866
2890
|
children: ReactNode;
|
|
2867
2891
|
}): react_jsx_runtime.JSX.Element;
|
|
2868
2892
|
|
|
2869
|
-
export { type AgentModalAnchorPoint, type AgentPromptElementInfo, AskAgentModal, type AskAgentModalProps, AudioWaveform, type AudioWaveformProps, type BlockedTimelineEditIntent, Button, type ButtonSize, type ButtonVariant, type CanEditTimelineElement, CompositionBreadcrumb, type CompositionDimensions, type CompositionLevel, CompositionThumbnail, ContextMenu, DEFAULT_SHORTCUT_SECTIONS, type EditHistoryHandle, EditorShell, type EditorShellProps, type ExternalFileChangeBlockedState, type ExternalFileChangeCoordinatorHandle, ExternalFileConflictBanner, type FfmpegStatus, FileTree, GridOverlay, HyperframesLoader, type HyperframesLoaderProps, HyperframesLogo, IconButton, ImageThumbnail, type ImageThumbnailProps, Input, type InputProps, Menu, MenuItem, type MenuItemTone, MenuRadioGroup, MenuRadioItem, MenuSeparator, MenuShortcut, NLEPreview, NumberField, type NumberFieldProps, type PatchOperation, type PersistedRenderSettings, type PickedElement, Player, PlayerControls, type PlayerHandle, type PlayerHandleElement, type PlayerHandleListener, type PlayerHandleTimeListener, Popover, type PopupPreviewState, type DomEditCompositionRect as PreviewCompositionRect, PreviewGuides, PreviewOverlayProvider, type PreviewOverlayProviderProps, type PreviewSnapPreferences, type PreviewState, PropertyPanel, type RenderJob, RenderQueue, type RenderQueueProps, type ResolutionPreset, Select, type SelectOption, type SelectProps, type ShortcutHint, type ShortcutSection, Slider, type SliderProps, SnapToolbar, SourceEditor, type StartRenderOptions, StudioApp, StudioFileConflictError, type StudioPendingEditsDrainResult, Tab, TabPanel, Tabs, TabsList, type ThumbnailPriority, Timeline, TimelineClipMenu, type TimelineClipRenderContext, type TimelineEditCallbacks, type TimelineEditPermission, TimelineEditPopover, TimelineEditProvider, type TimelineElement, TimelineEmptyStatePart, TimelineFrame, TimelineGapMenu, TimelineKeyframeMenu, TimelineLanes, TimelineOverlays, TimelinePane, type TimelinePaneProps, TimelinePlayhead, TimelineProvider, TimelineRazorGuide, TimelineRuler, TimelineShortcutHint, type TimelineTheme, type TimelineTimeRange$1 as TimelineTimeRange, Toggle, type ToggleProps, Tooltip, type UseEditHistoryActionsOptions, type UsePersistentEditHistoryOptions, type UseProjectFileWriterOptions, type UseRenderClipContentOptions, type UseTimelineEditingOptions, VideoThumbnail, applyPatch, buildPickerAgentContextPreview, buildPickerAgentPrompt, buttonBase, buttonSizes, buttonVariants, cn, fieldBase, fieldText, findElementBlock, flushStudioPendingEdits, formatTime, getPersistedRenderSettings, liveTime, mergeStyleIntoTag, parseStyleString, persistRenderSettings, popupSurface, resolveIframe, resolveSourceFile, useEditHistoryActions, useElementPicker, usePersistentEditHistory, usePlayerHandle, usePlayerStore, usePreviewCompositionRect, usePreviewGuidesStore, usePreviewOverlayContext, useProjectFileWriter, useRenderClipContent, useRenderQueue, useTimelineContext, useTimelineEditing, useTimelinePlayer };
|
|
2893
|
+
export { type AgentModalAnchorPoint, type AgentPromptElementInfo, AskAgentModal, type AskAgentModalProps, AudioWaveform, type AudioWaveformProps, type BlockedTimelineEditIntent, Button, type ButtonSize, type ButtonVariant, type CanEditTimelineElement, CompositionBreadcrumb, type CompositionDimensions, type CompositionLevel, CompositionThumbnail, ContextMenu, DEFAULT_SHORTCUT_SECTIONS, type EditHistoryHandle, EditorShell, type EditorShellProps, type ExternalFileChangeBlockedState, type ExternalFileChangeCoordinatorHandle, ExternalFileConflictBanner, type FfmpegStatus, FileTree, GridOverlay, HyperframesLoader, type HyperframesLoaderProps, HyperframesLogo, IconButton, ImageThumbnail, type ImageThumbnailProps, Input, type InputProps, Menu, MenuItem, type MenuItemTone, MenuRadioGroup, MenuRadioItem, MenuSeparator, MenuShortcut, NLEPreview, NumberField, type NumberFieldProps, type PatchOperation, type PersistedRenderSettings, type PickedElement, Player, PlayerControls, type PlayerHandle, type PlayerHandleElement, type PlayerHandleListener, type PlayerHandleTimeListener, Popover, type PopupPreviewState, type DomEditCompositionRect as PreviewCompositionRect, PreviewGuides, PreviewOverlayProvider, type PreviewOverlayProviderProps, type PreviewSnapPreferences, type PreviewState, PropertyPanel, type RenderJob, RenderQueue, type RenderQueueProps, type ResolutionPreset, Select, type SelectOption, type SelectProps, type ShortcutHint, type ShortcutSection, Slider, type SliderProps, SnapToolbar, SourceEditor, type StartRenderOptions, StudioApp, StudioFileConflictError, type StudioPendingEditsDrainResult, Tab, TabPanel, Tabs, TabsList, type ThumbnailPriority, Timeline, TimelineClipMenu, type TimelineClipRenderContext, type TimelineEditCallbacks, type TimelineEditOutcome, type TimelineEditPermission, TimelineEditPopover, TimelineEditProvider, type TimelineElement, TimelineEmptyStatePart, TimelineFrame, TimelineGapMenu, TimelineKeyframeMenu, TimelineLanes, TimelineOverlays, TimelinePane, type TimelinePaneProps, TimelinePlayhead, TimelineProvider, TimelineRazorGuide, TimelineRuler, TimelineShortcutHint, type TimelineTheme, type TimelineTimeRange$1 as TimelineTimeRange, Toggle, type ToggleProps, Tooltip, type UseEditHistoryActionsOptions, type UsePersistentEditHistoryOptions, type UseProjectFileWriterOptions, type UseRenderClipContentOptions, type UseTimelineEditingOptions, VideoThumbnail, applyPatch, buildPickerAgentContextPreview, buildPickerAgentPrompt, buttonBase, buttonSizes, buttonVariants, cn, fieldBase, fieldText, findElementBlock, flushStudioPendingEdits, formatTime, getPersistedRenderSettings, liveTime, mergeStyleIntoTag, parseStyleString, persistRenderSettings, popupSurface, resolveIframe, resolveSourceFile, useEditHistoryActions, useElementPicker, usePersistentEditHistory, usePlayerHandle, usePlayerStore, usePreviewCompositionRect, usePreviewGuidesStore, usePreviewOverlayContext, useProjectFileWriter, useRenderClipContent, useRenderQueue, useTimelineContext, useTimelineEditing, useTimelinePlayer };
|
package/dist/studio/index.html
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
|
6
6
|
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
|
7
7
|
<title>HyperFrames Studio</title>
|
|
8
|
-
<script type="module" crossorigin src="/assets/index-
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-CsG24Jub.js"></script>
|
|
9
9
|
<link rel="stylesheet" crossorigin href="/assets/index-BWJqxeaH.css">
|
|
10
10
|
</head>
|
|
11
11
|
<body>
|