hyperframes 0.8.84 → 0.8.85
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/backgroundChecksWorker.js +1 -1
- package/dist/cli.js +1 -1
- package/dist/fontLocalizeCli.js +2 -2
- package/dist/hyperframes-player.global.js +1 -1
- package/dist/studio/assets/{hyperframes-player-Dd74fv7B.js → hyperframes-player-BK18SggX.js} +1 -1
- package/dist/studio/assets/{index-DFcIBFM8.js → index-Bus1BKtk.js} +1 -1
- package/dist/studio/assets/{index-D9dmtDap.js → index-CZxhjQpw.js} +1 -1
- package/dist/studio/assets/{index-gjbSm-vt.js → index-ClLdmgua.js} +80 -80
- package/dist/studio/assets/{index-BWJqxeaH.css → index-mzZCha_N.css} +1 -1
- package/dist/studio/index.d.ts +21 -1
- package/dist/studio/index.html +2 -2
- package/dist/studio/index.js +19 -11
- package/dist/studio/index.js.map +1 -1
- package/dist/studio/styles.css +1 -1
- package/package.json +1 -1
package/dist/studio/index.d.ts
CHANGED
|
@@ -1357,6 +1357,7 @@ interface TimelineLogicalItem {
|
|
|
1357
1357
|
elementId: string;
|
|
1358
1358
|
/** The item's time anchor. Clips use their midpoint; ease controls use the segment midpoint. */
|
|
1359
1359
|
time: number;
|
|
1360
|
+
element?: TimelineElement;
|
|
1360
1361
|
keyframeTarget?: TimelineKeyframeTarget;
|
|
1361
1362
|
}
|
|
1362
1363
|
interface TimelineLogicalRow {
|
|
@@ -1937,6 +1938,25 @@ interface CompositionBreadcrumbProps {
|
|
|
1937
1938
|
}
|
|
1938
1939
|
declare function CompositionBreadcrumb({ stack, onNavigate }: CompositionBreadcrumbProps): react_jsx_runtime.JSX.Element | null;
|
|
1939
1940
|
|
|
1941
|
+
interface UseCompositionStackOptions {
|
|
1942
|
+
projectId: string;
|
|
1943
|
+
activeCompositionPath?: string | null;
|
|
1944
|
+
onCompositionChange?: (compositionPath: string | null) => void;
|
|
1945
|
+
}
|
|
1946
|
+
interface UseCompositionStackResult {
|
|
1947
|
+
compositionStack: CompositionLevel[];
|
|
1948
|
+
updateCompositionStack: React.Dispatch<React.SetStateAction<CompositionLevel[]>>;
|
|
1949
|
+
handleNavigateComposition: (index: number) => void;
|
|
1950
|
+
handleDrillDown: (element: {
|
|
1951
|
+
id: string;
|
|
1952
|
+
compositionSrc?: string;
|
|
1953
|
+
}) => void;
|
|
1954
|
+
masterSeekRef: React.MutableRefObject<number>;
|
|
1955
|
+
compIdToSrc: Map<string, string>;
|
|
1956
|
+
setCompIdToSrc: React.Dispatch<React.SetStateAction<Map<string, string>>>;
|
|
1957
|
+
}
|
|
1958
|
+
declare function useCompositionStack({ projectId, activeCompositionPath, onCompositionChange, }: UseCompositionStackOptions): UseCompositionStackResult;
|
|
1959
|
+
|
|
1940
1960
|
interface AudioWaveformProps {
|
|
1941
1961
|
audioUrl: string;
|
|
1942
1962
|
waveformUrl?: string;
|
|
@@ -3394,4 +3414,4 @@ interface MarqueeOverlayProps {
|
|
|
3394
3414
|
*/
|
|
3395
3415
|
declare function MarqueeOverlay({ candidateRects, marqueeRect }: MarqueeOverlayProps): react_jsx_runtime.JSX.Element;
|
|
3396
3416
|
|
|
3397
|
-
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, DomEditProvider, type DomEditSelection, 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 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, resolveEquidistanceGuides, resolveGuideLineRect, resolveIframe, resolveSnapAdjustment, resolveSourceFile, snapEngagedForTravel, useClipboard, useDomEditSelectionContext, useDomEditSession, useEditHistoryActions, useElementPicker, useMarqueeGestures, usePersistentEditHistory, usePlayerHandle, usePlayerStore, usePreviewCompositionRect, usePreviewGuidesStore, usePreviewOverlayContext, usePreviewPersistence, useProjectFileWriter, useRenderClipContent, useRenderQueue, useTimelineContext, useTimelineEditing, useTimelinePlayer };
|
|
3417
|
+
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, DomEditProvider, type DomEditSelection, 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 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, resolveEquidistanceGuides, resolveGuideLineRect, resolveIframe, resolveSnapAdjustment, resolveSourceFile, snapEngagedForTravel, useClipboard, useCompositionStack, useDomEditSelectionContext, useDomEditSession, useEditHistoryActions, useElementPicker, useMarqueeGestures, usePersistentEditHistory, usePlayerHandle, usePlayerStore, usePreviewCompositionRect, usePreviewGuidesStore, usePreviewOverlayContext, usePreviewPersistence, useProjectFileWriter, useRenderClipContent, useRenderQueue, useTimelineContext, useTimelineEditing, useTimelinePlayer };
|
package/dist/studio/index.html
CHANGED
|
@@ -5,8 +5,8 @@
|
|
|
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-
|
|
9
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-ClLdmgua.js"></script>
|
|
9
|
+
<link rel="stylesheet" crossorigin href="/assets/index-mzZCha_N.css">
|
|
10
10
|
</head>
|
|
11
11
|
<body>
|
|
12
12
|
<div data-hf-id="hf-aph5" id="root"></div>
|
package/dist/studio/index.js
CHANGED
|
@@ -11914,7 +11914,8 @@ function clipItems(rowId, elements) {
|
|
|
11914
11914
|
kind: "clip",
|
|
11915
11915
|
rowId,
|
|
11916
11916
|
elementId: id,
|
|
11917
|
-
time: element.start + element.duration / 2
|
|
11917
|
+
time: element.start + element.duration / 2,
|
|
11918
|
+
element
|
|
11918
11919
|
};
|
|
11919
11920
|
});
|
|
11920
11921
|
}
|
|
@@ -20390,7 +20391,8 @@ function useTimelineKeyboardActor({
|
|
|
20390
20391
|
focusedTargetId,
|
|
20391
20392
|
rowGeometry,
|
|
20392
20393
|
scrollRef,
|
|
20393
|
-
onToggleRow
|
|
20394
|
+
onToggleRow,
|
|
20395
|
+
onDrillDown
|
|
20394
20396
|
}) {
|
|
20395
20397
|
const rovingTargetId = (focusedTargetId && locateTimelineLogicalTarget(logicalRows, focusedTargetId)?.target.id) ?? logicalRows[0]?.id ?? null;
|
|
20396
20398
|
const logicalRowCountByTrack = useMemo27(() => {
|
|
@@ -20441,13 +20443,19 @@ function useTimelineKeyboardActor({
|
|
|
20441
20443
|
openContextMenu(targetElement);
|
|
20442
20444
|
return;
|
|
20443
20445
|
}
|
|
20446
|
+
const composition = located.target.kind === "clip" && located.target.element;
|
|
20447
|
+
if (event.key === "Enter" && composition && composition.compositionSrc && onDrillDown) {
|
|
20448
|
+
event.preventDefault();
|
|
20449
|
+
onDrillDown(composition);
|
|
20450
|
+
return;
|
|
20451
|
+
}
|
|
20444
20452
|
if (event.key !== "Enter" && event.key !== " " || located.target.kind !== "row" || !located.target.expandable) {
|
|
20445
20453
|
return;
|
|
20446
20454
|
}
|
|
20447
20455
|
event.preventDefault();
|
|
20448
20456
|
onToggleRow(located.target);
|
|
20449
20457
|
},
|
|
20450
|
-
[logicalRowCountByTrack, logicalRows, onToggleRow, rowGeometry, scrollRef]
|
|
20458
|
+
[logicalRowCountByTrack, logicalRows, onDrillDown, onToggleRow, rowGeometry, scrollRef]
|
|
20451
20459
|
);
|
|
20452
20460
|
return { rovingTargetId, onFocus, onKeyDown };
|
|
20453
20461
|
}
|
|
@@ -20683,9 +20691,8 @@ function TimelineLanes({
|
|
|
20683
20691
|
focusedTargetId,
|
|
20684
20692
|
rowGeometry,
|
|
20685
20693
|
scrollRef,
|
|
20686
|
-
onToggleRow: (row) =>
|
|
20687
|
-
|
|
20688
|
-
}
|
|
20694
|
+
onToggleRow: (row) => row.elementId && toggleClipExpandedTracked(row.elementId),
|
|
20695
|
+
onDrillDown
|
|
20689
20696
|
});
|
|
20690
20697
|
return /* @__PURE__ */ jsx52(
|
|
20691
20698
|
"div",
|
|
@@ -27300,7 +27307,7 @@ function CompositionBreadcrumb({ stack, onNavigate }) {
|
|
|
27300
27307
|
"nav",
|
|
27301
27308
|
{
|
|
27302
27309
|
"aria-label": "Composition navigation",
|
|
27303
|
-
className: "flex items-center gap-1 px-2 h-8 border-b border-
|
|
27310
|
+
className: "flex items-center gap-1 px-2 h-8 border-b border-hairline bg-bg-1 shrink-0",
|
|
27304
27311
|
children: [
|
|
27305
27312
|
/* @__PURE__ */ jsx70(
|
|
27306
27313
|
"button",
|
|
@@ -27313,7 +27320,7 @@ function CompositionBreadcrumb({ stack, onNavigate }) {
|
|
|
27313
27320
|
});
|
|
27314
27321
|
onNavigate(stack.length - 2);
|
|
27315
27322
|
},
|
|
27316
|
-
className: "flex items-center gap-1 px-1.5 py-0.5 rounded-sm text-xs text-
|
|
27323
|
+
className: "flex items-center gap-1 px-1.5 py-0.5 rounded-sm text-xs text-text-3 hover:text-text-0 hover:bg-hover active:scale-[0.98] transition-colors",
|
|
27317
27324
|
title: "Back (Esc, or double-click empty timeline)",
|
|
27318
27325
|
"aria-label": "Back to parent composition",
|
|
27319
27326
|
children: /* @__PURE__ */ jsx70(ArrowLeft2, { size: 12, weight: "bold" })
|
|
@@ -27322,8 +27329,8 @@ function CompositionBreadcrumb({ stack, onNavigate }) {
|
|
|
27322
27329
|
stack.map((level, i) => {
|
|
27323
27330
|
const isLast = i === stack.length - 1;
|
|
27324
27331
|
return /* @__PURE__ */ jsxs48("span", { className: "flex items-center gap-1", children: [
|
|
27325
|
-
i > 0 && /* @__PURE__ */ jsx70(CaretRight2, { size: 10, className: "text-
|
|
27326
|
-
isLast ? /* @__PURE__ */ jsx70("span", { className: "text-xs text-
|
|
27332
|
+
i > 0 && /* @__PURE__ */ jsx70(CaretRight2, { size: 10, className: "text-text-4 shrink-0" }),
|
|
27333
|
+
isLast ? /* @__PURE__ */ jsx70("span", { className: "text-xs text-text-1 font-medium", children: level.label }) : /* @__PURE__ */ jsx70(
|
|
27327
27334
|
"button",
|
|
27328
27335
|
{
|
|
27329
27336
|
type: "button",
|
|
@@ -27331,7 +27338,7 @@ function CompositionBreadcrumb({ stack, onNavigate }) {
|
|
|
27331
27338
|
trackStudioEvent("navigation", { action: "breadcrumb", target: level.label });
|
|
27332
27339
|
onNavigate(i);
|
|
27333
27340
|
},
|
|
27334
|
-
className: "text-xs text-
|
|
27341
|
+
className: "text-xs text-text-3 hover:text-text-1 transition-colors",
|
|
27335
27342
|
children: level.label
|
|
27336
27343
|
}
|
|
27337
27344
|
)
|
|
@@ -91481,6 +91488,7 @@ export {
|
|
|
91481
91488
|
resolveSourceFile,
|
|
91482
91489
|
snapEngagedForTravel,
|
|
91483
91490
|
useClipboard,
|
|
91491
|
+
useCompositionStack,
|
|
91484
91492
|
useDomEditSelectionContext,
|
|
91485
91493
|
useDomEditSession,
|
|
91486
91494
|
useEditHistoryActions,
|