@hyperframes/studio 0.8.93 → 0.8.95
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{hyperframes-player-CkV9KK6A.js → hyperframes-player-DJJKab4_.js} +1 -1
- package/dist/assets/{index-V3fzEfOD.js → index-C1dXTZvs.js} +1 -1
- package/dist/assets/{index-CYk0NwSv.js → index-Cc4by8r7.js} +183 -183
- package/dist/assets/{index-BlLFipOk.js → index-DE1dn3QB.js} +1 -1
- package/dist/index.d.ts +63 -46
- package/dist/index.html +1 -1
- package/dist/index.js +196 -111
- package/dist/index.js.map +1 -1
- package/package.json +8 -8
- package/src/components/TimelineToolbar.test.tsx +17 -0
- package/src/components/TimelineToolbar.tsx +3 -1
- package/src/components/editor/ConnectedDomEditOverlay.test.tsx +2 -0
- package/src/components/editor/ConnectedDomEditOverlay.tsx +3 -1
- package/src/components/editor/DomEditCropHandles.test.tsx +87 -1
- package/src/components/editor/DomEditCropHandles.tsx +64 -62
- package/src/components/editor/DomEditOverlay.test.ts +39 -0
- package/src/components/editor/DomEditOverlay.tsx +6 -1
- package/src/components/editor/DomEditSelectionChrome.test.tsx +114 -1
- package/src/components/editor/DomEditSelectionChrome.tsx +17 -10
- package/src/components/editor/PreviewOverlayProvider.test.tsx +19 -0
- package/src/components/editor/PreviewOverlayProvider.tsx +1 -1
- package/src/components/editor/SnapToolbar.tsx +1 -1
- package/src/components/editor/domEditOverlayGeometry.ts +2 -0
- package/src/components/editor/manualEditsSeekReapply.ts +5 -1
- package/src/components/nle/PreviewOverlays.tsx +3 -3
- package/src/hooks/gsapResizeIntercept.test.ts +40 -0
- package/src/hooks/gsapResizeIntercept.ts +8 -4
- package/src/index.ts +4 -0
- package/src/player/components/PlayerControls.tsx +2 -15
- package/src/player/components/ShortcutsPanel.test.tsx +33 -1
- package/src/player/components/ShortcutsPanel.tsx +26 -0
- package/src/player/components/Timeline.ghostLane.test.tsx +126 -0
- package/src/player/components/Timeline.rulerSeek.test.tsx +7 -0
- package/src/player/components/Timeline.test.ts +3 -3
- package/src/player/components/Timeline.trackPadding.test.tsx +157 -0
- package/src/player/components/TimelineCanvas.tsx +44 -19
- package/src/player/components/TimelineProvider.tsx +1 -0
- package/src/player/components/TimelineTypes.ts +2 -0
- package/src/player/components/timelineDragDrop.test.tsx +14 -12
- package/src/player/components/timelineLayout.test.ts +87 -11
- package/src/player/components/timelineLayout.ts +28 -21
- package/src/player/components/useTimelineProviderState.tsx +5 -1
- package/src/player/components/useTimelineTrackLayout.ts +11 -2
- package/src/player/components/useTimelineVirtualRows.test.tsx +32 -0
- package/src/player/components/useTimelineVirtualRows.ts +2 -2
- package/src/utils/gsapSoftReload.test.ts +51 -2
- package/src/utils/gsapSoftReload.ts +24 -10
- package/src/utils/gsapUndoRestore.test.ts +49 -0
- package/src/utils/gsapUndoRestore.ts +15 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as P}from"./index-
|
|
1
|
+
import{g as P}from"./index-Cc4by8r7.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};
|
package/dist/index.d.ts
CHANGED
|
@@ -1126,6 +1126,53 @@ interface TimelineTheme {
|
|
|
1126
1126
|
transitionBadgeInk: string;
|
|
1127
1127
|
}
|
|
1128
1128
|
|
|
1129
|
+
interface TimelineTimeRange {
|
|
1130
|
+
readonly start: number;
|
|
1131
|
+
readonly end: number;
|
|
1132
|
+
}
|
|
1133
|
+
interface TimelineClipInterval {
|
|
1134
|
+
readonly element: TimelineElement;
|
|
1135
|
+
readonly identity: string;
|
|
1136
|
+
readonly ordinal: number;
|
|
1137
|
+
readonly start: number;
|
|
1138
|
+
readonly end: number;
|
|
1139
|
+
}
|
|
1140
|
+
interface TimelineClipRowIndex {
|
|
1141
|
+
readonly byStart: readonly TimelineClipInterval[];
|
|
1142
|
+
readonly treeLeafCount: number;
|
|
1143
|
+
readonly maxPositiveEndTree: readonly number[];
|
|
1144
|
+
readonly maxPointStartTree: readonly number[];
|
|
1145
|
+
readonly byIdentity: ReadonlyMap<string, readonly TimelineClipInterval[]>;
|
|
1146
|
+
}
|
|
1147
|
+
interface TimelineClipIndex {
|
|
1148
|
+
readonly rows: ReadonlyMap<number, TimelineClipRowIndex>;
|
|
1149
|
+
}
|
|
1150
|
+
|
|
1151
|
+
declare const TRACK_H = 48;
|
|
1152
|
+
interface TimelineTrackPadding {
|
|
1153
|
+
top?: number;
|
|
1154
|
+
bottom?: number;
|
|
1155
|
+
}
|
|
1156
|
+
interface TimelineRowGeometry {
|
|
1157
|
+
readonly rowKeys: readonly number[];
|
|
1158
|
+
readonly rowHeights: readonly number[];
|
|
1159
|
+
/** Cumulative row boundaries, including the final bottom boundary. */
|
|
1160
|
+
readonly rowOffsets: readonly number[];
|
|
1161
|
+
readonly rowsHeight: number;
|
|
1162
|
+
readonly padding: Readonly<Required<TimelineTrackPadding>>;
|
|
1163
|
+
readonly canvasHeight: number;
|
|
1164
|
+
getRowIndex(rowKey: number): number;
|
|
1165
|
+
getRowHeight(row: number): number;
|
|
1166
|
+
getRowTop(row: number): number;
|
|
1167
|
+
getRowFromY(contentY: number): number;
|
|
1168
|
+
getRowPositionFromY(contentY: number): {
|
|
1169
|
+
rowFloat: number;
|
|
1170
|
+
row: number;
|
|
1171
|
+
fraction: number;
|
|
1172
|
+
rowHeight: number;
|
|
1173
|
+
};
|
|
1174
|
+
}
|
|
1175
|
+
|
|
1129
1176
|
type TimelineEditOverrides = Pick<TimelineEditCallbacks, "onMoveElement" | "onMoveElements" | "onResizeElement" | "onResizeElements" | "onBlockedEditAttempt" | "onSplitElement">;
|
|
1130
1177
|
|
|
1131
1178
|
/** With both set, a lane move restacks the preview's z-index to match the rows; each overrides Studio's own. */
|
|
@@ -1163,6 +1210,7 @@ interface TimelineProps extends TimelineDropCallbacks, TimelineEditOverrides, Ti
|
|
|
1163
1210
|
theme?: Partial<TimelineTheme>;
|
|
1164
1211
|
showAudioEffects?: boolean;
|
|
1165
1212
|
showKeyframes?: boolean;
|
|
1213
|
+
trackPadding?: TimelineTrackPadding;
|
|
1166
1214
|
}
|
|
1167
1215
|
|
|
1168
1216
|
interface TimelineEmptyStateProps {
|
|
@@ -1256,47 +1304,6 @@ interface BlockedClipState {
|
|
|
1256
1304
|
started: boolean;
|
|
1257
1305
|
}
|
|
1258
1306
|
|
|
1259
|
-
interface TimelineTimeRange {
|
|
1260
|
-
readonly start: number;
|
|
1261
|
-
readonly end: number;
|
|
1262
|
-
}
|
|
1263
|
-
interface TimelineClipInterval {
|
|
1264
|
-
readonly element: TimelineElement;
|
|
1265
|
-
readonly identity: string;
|
|
1266
|
-
readonly ordinal: number;
|
|
1267
|
-
readonly start: number;
|
|
1268
|
-
readonly end: number;
|
|
1269
|
-
}
|
|
1270
|
-
interface TimelineClipRowIndex {
|
|
1271
|
-
readonly byStart: readonly TimelineClipInterval[];
|
|
1272
|
-
readonly treeLeafCount: number;
|
|
1273
|
-
readonly maxPositiveEndTree: readonly number[];
|
|
1274
|
-
readonly maxPointStartTree: readonly number[];
|
|
1275
|
-
readonly byIdentity: ReadonlyMap<string, readonly TimelineClipInterval[]>;
|
|
1276
|
-
}
|
|
1277
|
-
interface TimelineClipIndex {
|
|
1278
|
-
readonly rows: ReadonlyMap<number, TimelineClipRowIndex>;
|
|
1279
|
-
}
|
|
1280
|
-
|
|
1281
|
-
interface TimelineRowGeometry {
|
|
1282
|
-
readonly rowKeys: readonly number[];
|
|
1283
|
-
readonly rowHeights: readonly number[];
|
|
1284
|
-
/** Cumulative row boundaries, including the final bottom boundary. */
|
|
1285
|
-
readonly rowOffsets: readonly number[];
|
|
1286
|
-
readonly rowsHeight: number;
|
|
1287
|
-
readonly canvasHeight: number;
|
|
1288
|
-
getRowIndex(rowKey: number): number;
|
|
1289
|
-
getRowHeight(row: number): number;
|
|
1290
|
-
getRowTop(row: number): number;
|
|
1291
|
-
getRowFromY(contentY: number): number;
|
|
1292
|
-
getRowPositionFromY(contentY: number): {
|
|
1293
|
-
rowFloat: number;
|
|
1294
|
-
row: number;
|
|
1295
|
-
fraction: number;
|
|
1296
|
-
rowHeight: number;
|
|
1297
|
-
};
|
|
1298
|
-
}
|
|
1299
|
-
|
|
1300
1307
|
type TrackVisualStyle = TimelineTrackStyle;
|
|
1301
1308
|
|
|
1302
1309
|
interface TimelineVirtualRow {
|
|
@@ -1524,6 +1531,7 @@ type TimelineCanvasState = Omit<TimelineLaneBaseProps, "setRangeSelection" | "se
|
|
|
1524
1531
|
playheadRef: React.RefObject<HTMLDivElement | null>;
|
|
1525
1532
|
laneGapStrips: TimelineLaneGapStrips[];
|
|
1526
1533
|
dropPreview: TimelineDropPlacement | null;
|
|
1534
|
+
acceptsMediaDrop: boolean;
|
|
1527
1535
|
setRangeSelection: (value: TimelineRangeSelection | null) => void;
|
|
1528
1536
|
setResizingClip: (value: ResizingClipState | null) => void;
|
|
1529
1537
|
setDraggedClip: (value: TimelineLaneBaseProps["draggedClip"]) => void;
|
|
@@ -1949,6 +1957,13 @@ interface NLEPreviewProps {
|
|
|
1949
1957
|
}
|
|
1950
1958
|
declare const NLEPreview: react.NamedExoticComponent<NLEPreviewProps>;
|
|
1951
1959
|
|
|
1960
|
+
interface ShortcutsButtonProps {
|
|
1961
|
+
sections?: readonly ShortcutSection[];
|
|
1962
|
+
disabled?: boolean;
|
|
1963
|
+
onSeek?: (time: number) => void;
|
|
1964
|
+
}
|
|
1965
|
+
declare function ShortcutsButton({ sections, disabled, onSeek }: ShortcutsButtonProps): react_jsx_runtime.JSX.Element;
|
|
1966
|
+
|
|
1952
1967
|
interface CompositionLevel {
|
|
1953
1968
|
/** Unique id — "master" or composition file path */
|
|
1954
1969
|
id: string;
|
|
@@ -2766,11 +2781,12 @@ interface TimelineToolbarProps {
|
|
|
2766
2781
|
domEditSession?: DomEditSessionSlice;
|
|
2767
2782
|
onSplitElement?: (element: TimelineElement, splitTime: number) => void;
|
|
2768
2783
|
history?: TimelineHistoryButtonsProps;
|
|
2784
|
+
showHistory?: boolean;
|
|
2769
2785
|
showAddBeat?: boolean;
|
|
2770
2786
|
/** Hides Add keyframe and auto-record, and turns off auto-record and the K shortcut with them. */
|
|
2771
2787
|
showKeyframes?: boolean;
|
|
2772
2788
|
}
|
|
2773
|
-
declare function TimelineToolbar({ domEditSession, onSplitElement, history, showAddBeat, showKeyframes, }: TimelineToolbarProps): react_jsx_runtime.JSX.Element;
|
|
2789
|
+
declare function TimelineToolbar({ domEditSession, onSplitElement, history, showHistory, showAddBeat, showKeyframes, }: TimelineToolbarProps): react_jsx_runtime.JSX.Element;
|
|
2774
2790
|
|
|
2775
2791
|
interface AudioMeterStripProps {
|
|
2776
2792
|
/** Pass a stable ref (useRef): a new object each render restarts the meter loop. */
|
|
@@ -3331,7 +3347,8 @@ interface DomEditOverlayProps {
|
|
|
3331
3347
|
groupSelections?: DomEditSelection[];
|
|
3332
3348
|
hoverSelection: DomEditSelection | null;
|
|
3333
3349
|
allowCanvasMovement?: boolean;
|
|
3334
|
-
|
|
3350
|
+
allowBodyDrag?: boolean;
|
|
3351
|
+
/** "host": no hover, marquee, box re-select, or body drag if allowBodyDrag is false; Enter still opens text. */
|
|
3335
3352
|
canvasInput?: "overlay" | "host";
|
|
3336
3353
|
onTextEditingChange?: (editing: boolean) => void;
|
|
3337
3354
|
/** A click on a single selection's box, in either mode; the event may be the pointerup. */
|
|
@@ -3388,7 +3405,7 @@ interface DomEditOverlayProps {
|
|
|
3388
3405
|
}
|
|
3389
3406
|
declare const DomEditOverlay: react.NamedExoticComponent<DomEditOverlayProps>;
|
|
3390
3407
|
|
|
3391
|
-
type HostInputProps = Pick<ComponentProps<typeof DomEditOverlay>, "canvasInput" | "onSelectionBoxClick">;
|
|
3408
|
+
type HostInputProps = Pick<ComponentProps<typeof DomEditOverlay>, "canvasInput" | "onSelectionBoxClick" | "allowBodyDrag">;
|
|
3392
3409
|
interface ConnectedDomEditOverlayProps extends HostInputProps {
|
|
3393
3410
|
activeCompositionPath: string | null;
|
|
3394
3411
|
showHoverSelection: boolean;
|
|
@@ -3397,7 +3414,7 @@ interface ConnectedDomEditOverlayProps extends HostInputProps {
|
|
|
3397
3414
|
/** True when an in-place text edit opens its caret, false when it ends or unmounts. */
|
|
3398
3415
|
onTextEditingChange?: (editing: boolean) => void;
|
|
3399
3416
|
}
|
|
3400
|
-
declare function ConnectedDomEditOverlay({ activeCompositionPath, showHoverSelection, shouldShowSelectedDomBounds, isGestureRecording, canvasInput, onTextEditingChange, onSelectionBoxClick, }: ConnectedDomEditOverlayProps): react_jsx_runtime.JSX.Element;
|
|
3417
|
+
declare function ConnectedDomEditOverlay({ activeCompositionPath, showHoverSelection, shouldShowSelectedDomBounds, isGestureRecording, canvasInput, allowBodyDrag, onTextEditingChange, onSelectionBoxClick, }: ConnectedDomEditOverlayProps): react_jsx_runtime.JSX.Element;
|
|
3401
3418
|
|
|
3402
3419
|
interface RecordEditInput {
|
|
3403
3420
|
label: string;
|
|
@@ -3501,4 +3518,4 @@ interface MarqueeOverlayProps {
|
|
|
3501
3518
|
*/
|
|
3502
3519
|
declare function MarqueeOverlay({ candidateRects, marqueeRect }: MarqueeOverlayProps): react_jsx_runtime.JSX.Element;
|
|
3503
3520
|
|
|
3504
|
-
export { type AgentModalAnchorPoint, type AgentPromptElementInfo, AskAgentModal, type AskAgentModalProps, AudioMeterStrip, type AudioMeterStripProps, AudioWaveform, type AudioWaveformProps, type BlockedTimelineEditIntent, type CanEditTimelineElement, CompositionBreadcrumb, type CompositionDimensions, type CompositionLevel, CompositionThumbnail, ConnectedDomEditOverlay, type ConnectedDomEditOverlayProps, DEFAULT_SHORTCUT_SECTIONS, type DomEditCapabilities, type DomEditCommitDeclineReason, type DomEditCommitOutcome, type DomEditGroupPathOffsetCommit, DomEditOverlay, type DomEditOverlayProps, DomEditProvider, type DomEditSelection, type DomGeometryCommits, type EditHistoryHandle, EditorShell, type EditorShellProps, type ExternalFileChangeBlockedState, type ExternalFileChangeCoordinatorHandle, ExternalFileConflictBanner, type FfmpegStatus, FileTree, GridOverlay, ImageThumbnail, type ImageThumbnailProps, type MarqueeGestures, type MarqueeGesturesDeps, MarqueeOverlay, type MarqueeOverlayProps, type Rect$1 as MarqueeRect, NLEPreview, type PatchOperation, type PersistedRenderSettings, type PickedElement, PlayerControls, type PlayerHandle, type PlayerHandleElement, type PlayerHandleListener, type PlayerHandleTimeListener, type DomEditCompositionRect as PreviewCompositionRect, PreviewGuides, PreviewOverlayProvider, type PreviewOverlayProviderProps, PreviewReadOnlyProvider, type PreviewSnapPreferences, PropertyPanel, type RenderJob, RenderQueue, type RenderQueueProps, type ResolutionPreset, SNAP_THRESHOLD_PX, type ShortcutHint, type ShortcutSection, type SnapContext, type SnapEdge, type SnapGuide, SnapGuideOverlay, type SnapGuideOverlayProps, type SnapGuidesState, type Rect as SnapRect, type SnapResult, type SnapTarget, SnapToolbar, SourceEditor, type SpacingGuide, type StartRenderOptions, StudioApp, StudioFileConflictError, type StudioPendingEditsDrainResult, type ThumbnailPriority, Timeline, TimelineClipMenu, type TimelineClipRenderContext, type TimelineEditCallbacks, type TimelineEditOutcome, type TimelineEditPermission, TimelineEditPopover, TimelineEditProvider, type TimelineElement, TimelineEmptyStatePart, TimelineFrame, TimelineGapMenu, TimelineHistoryButtons, type TimelineHistoryButtonsProps, TimelineKeyframeMenu, TimelineLanes, TimelineOverlays, TimelinePane, type TimelinePaneProps, TimelinePlayhead, TimelineProvider, TimelineRazorGuide, TimelineRuler, TimelineShortcutHint, type TimelineTheme, type TimelineTimeRange$1 as TimelineTimeRange, TimelineToolbar, type TimelineToolbarProps, type TimelineZIndexReorderCommit, type UseClipboardOptions, type UseDomEditSessionParams, type UseDomGeometryCommitOptions, type UseDomStyleCommitOptions, type UseEditHistoryActionsOptions, type UsePersistentEditHistoryOptions, type UsePreviewPersistenceParams, type UseProjectFileWriterOptions, type UseRenderClipContentOptions, type UseTimelineEditingOptions, VideoThumbnail, applyPatch, buildCompositionSnapTarget, buildGridSnapEdges, buildPickerAgentContextPreview, buildPickerAgentPrompt, collectSnapContext, extractSnapTargets, findElementBlock, flushStudioPendingEdits, formatTime, getPersistedRenderSettings, liveTime, mergeStyleIntoTag, parseStyleString, persistRenderSettings, resolveDomEditSelection, resolveEquidistanceGuides, resolveGuideLineRect, resolveIframe, resolveSnapAdjustment, resolveSourceFile, snapEngagedForTravel, useClipboard, useCompositionStack, useDomEditSelectionContext, useDomEditSession, useDomGeometryCommit, useDomStyleCommit, useEditHistoryActions, useElementPicker, useMarqueeGestures, usePersistentEditHistory, usePlayerHandle, usePlayerStore, usePreviewCompositionRect, usePreviewGuidesStore, usePreviewOverlayContext, usePreviewPersistence, useProjectFileWriter, useRenderClipContent, useRenderQueue, useTimelineContext, useTimelineEditing, useTimelinePlayer };
|
|
3521
|
+
export { type AgentModalAnchorPoint, type AgentPromptElementInfo, AskAgentModal, type AskAgentModalProps, AudioMeterStrip, type AudioMeterStripProps, AudioWaveform, type AudioWaveformProps, type BlockedTimelineEditIntent, type CanEditTimelineElement, CompositionBreadcrumb, type CompositionDimensions, type CompositionLevel, CompositionThumbnail, ConnectedDomEditOverlay, type ConnectedDomEditOverlayProps, DEFAULT_SHORTCUT_SECTIONS, type DomEditCapabilities, type DomEditCommitDeclineReason, type DomEditCommitOutcome, type DomEditGroupPathOffsetCommit, DomEditOverlay, type DomEditOverlayProps, DomEditProvider, type DomEditSelection, type DomGeometryCommits, type EditHistoryHandle, EditorShell, type EditorShellProps, type ExternalFileChangeBlockedState, type ExternalFileChangeCoordinatorHandle, ExternalFileConflictBanner, type FfmpegStatus, FileTree, GridOverlay, ImageThumbnail, type ImageThumbnailProps, type MarqueeGestures, type MarqueeGesturesDeps, MarqueeOverlay, type MarqueeOverlayProps, type Rect$1 as MarqueeRect, NLEPreview, type PatchOperation, type PersistedRenderSettings, type PickedElement, PlayerControls, type PlayerHandle, type PlayerHandleElement, type PlayerHandleListener, type PlayerHandleTimeListener, type DomEditCompositionRect as PreviewCompositionRect, PreviewGuides, PreviewOverlayProvider, type PreviewOverlayProviderProps, PreviewReadOnlyProvider, type PreviewSnapPreferences, PropertyPanel, type RenderJob, RenderQueue, type RenderQueueProps, type ResolutionPreset, SNAP_THRESHOLD_PX, type ShortcutHint, type ShortcutSection, ShortcutsButton, type ShortcutsButtonProps, type SnapContext, type SnapEdge, type SnapGuide, SnapGuideOverlay, type SnapGuideOverlayProps, type SnapGuidesState, type Rect as SnapRect, type SnapResult, type SnapTarget, SnapToolbar, SourceEditor, type SpacingGuide, type StartRenderOptions, StudioApp, StudioFileConflictError, type StudioPendingEditsDrainResult, TRACK_H, type ThumbnailPriority, Timeline, TimelineClipMenu, type TimelineClipRenderContext, type TimelineEditCallbacks, type TimelineEditOutcome, type TimelineEditPermission, TimelineEditPopover, TimelineEditProvider, type TimelineElement, TimelineEmptyStatePart, TimelineFrame, TimelineGapMenu, TimelineHistoryButtons, type TimelineHistoryButtonsProps, TimelineKeyframeMenu, TimelineLanes, TimelineOverlays, TimelinePane, type TimelinePaneProps, TimelinePlayhead, TimelineProvider, TimelineRazorGuide, TimelineRuler, TimelineShortcutHint, type TimelineTheme, type TimelineTimeRange$1 as TimelineTimeRange, TimelineToolbar, type TimelineToolbarProps, type TimelineTrackPadding, type TimelineZIndexReorderCommit, type UseClipboardOptions, type UseDomEditSessionParams, type UseDomGeometryCommitOptions, type UseDomStyleCommitOptions, type UseEditHistoryActionsOptions, type UsePersistentEditHistoryOptions, type UsePreviewPersistenceParams, type UseProjectFileWriterOptions, type UseRenderClipContentOptions, type UseTimelineEditingOptions, VideoThumbnail, applyPatch, buildCompositionSnapTarget, buildGridSnapEdges, buildPickerAgentContextPreview, buildPickerAgentPrompt, collectSnapContext, extractSnapTargets, findElementBlock, flushStudioPendingEdits, formatTime, getPersistedRenderSettings, liveTime, mergeStyleIntoTag, parseStyleString, persistRenderSettings, resolveDomEditSelection, resolveEquidistanceGuides, resolveGuideLineRect, resolveIframe, resolveSnapAdjustment, resolveSourceFile, snapEngagedForTravel, useClipboard, useCompositionStack, useDomEditSelectionContext, useDomEditSession, useDomGeometryCommit, useDomStyleCommit, useEditHistoryActions, useElementPicker, useMarqueeGestures, usePersistentEditHistory, usePlayerHandle, usePlayerStore, usePreviewCompositionRect, usePreviewGuidesStore, usePreviewOverlayContext, usePreviewPersistence, useProjectFileWriter, useRenderClipContent, useRenderQueue, useTimelineContext, useTimelineEditing, useTimelinePlayer };
|
package/dist/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-Cc4by8r7.js"></script>
|
|
9
9
|
<link rel="stylesheet" crossorigin href="/assets/index-Dx79V1Se.css">
|
|
10
10
|
</head>
|
|
11
11
|
<body>
|