@hyperframes/studio 0.7.92 → 0.7.93
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-9qOa08Tv.js → hyperframes-player-NSdcoOcK.js} +1 -1
- package/dist/assets/{index-CDTN2ZVa.js → index-CCGnc_0M.js} +1 -1
- package/dist/assets/index-D78KEjgB.css +1 -0
- package/dist/assets/index-Dp1zVb9X.js +428 -0
- package/dist/assets/{index-Bw4lNdtO.js → index-wS6f7F5q.js} +1 -1
- package/dist/index.d.ts +20 -20
- package/dist/index.html +2 -2
- package/dist/index.js +7055 -5321
- package/dist/index.js.map +1 -1
- package/package.json +8 -7
- package/src/App.tsx +14 -14
- package/src/components/DesignPanelPromoteProvider.tsx +1 -1
- package/src/components/ExternalFileConflictBanner.test.tsx +142 -0
- package/src/components/ExternalFileConflictBanner.tsx +255 -0
- package/src/components/editor/propertyPanel3dTransform.tsx +1 -1
- package/src/components/editor/propertyPanelCommitField.tsx +37 -2
- package/src/components/editor/propertyPanelFlatPrimitives.test.tsx +69 -0
- package/src/components/editor/propertyPanelFlatPrimitives.tsx +2 -2
- package/src/components/editor/propertyPanelPrimitives.tsx +2 -2
- package/src/components/editor/propertyPanelTransformCommit.test.ts +57 -0
- package/src/components/editor/propertyPanelTransformCommit.ts +14 -14
- package/src/components/editor/propertyPanelTypes.ts +9 -3
- package/src/components/editor/useInspectorGestureTransaction.test.tsx +65 -0
- package/src/components/editor/useInspectorGestureTransaction.ts +66 -10
- package/src/components/sidebar/AssetCard.tsx +4 -3
- package/src/components/sidebar/AudioRow.tsx +4 -3
- package/src/contexts/FileManagerContext.tsx +12 -0
- package/src/hooks/externalFileChangeOwnership.test.ts +17 -0
- package/src/hooks/externalFileReloadBus.test.ts +34 -0
- package/src/hooks/externalFileReloadBus.ts +18 -0
- package/src/hooks/gsapDragCommit.test.ts +39 -1
- package/src/hooks/gsapDragCommit.ts +12 -40
- package/src/hooks/gsapEditOutcome.ts +72 -0
- package/src/hooks/gsapResizeIntercept.test.ts +90 -2
- package/src/hooks/gsapResizeIntercept.ts +44 -16
- package/src/hooks/gsapRuntimeBridge.test.ts +195 -27
- package/src/hooks/gsapRuntimeBridge.ts +93 -28
- package/src/hooks/useAnimatedPropertyCommit.test.tsx +194 -24
- package/src/hooks/useAnimatedPropertyCommit.ts +101 -49
- package/src/hooks/useAppHotkeys.textEditing.test.tsx +215 -0
- package/src/hooks/useDomGeometryCommits.test.tsx +61 -0
- package/src/hooks/useDomGeometryCommits.ts +20 -0
- package/src/hooks/useEditorSave.test.tsx +131 -0
- package/src/hooks/useEditorSave.ts +113 -39
- package/src/hooks/useExternalFileChangeCoordinator.test.tsx +221 -0
- package/src/hooks/useExternalFileChangeCoordinator.ts +429 -0
- package/src/hooks/useFileManager.projectOwnership.test.tsx +139 -7
- package/src/hooks/useFileManager.ts +32 -3
- package/src/hooks/useGsapAnimationFetchFallback.ts +45 -24
- package/src/hooks/useGsapAwareEditing.test.tsx +125 -39
- package/src/hooks/useGsapAwareEditing.ts +88 -27
- package/src/hooks/useGsapInteractionFailureTelemetry.test.tsx +42 -0
- package/src/hooks/useGsapInteractionFailureTelemetry.ts +5 -1
- package/src/hooks/usePreviewPersistence.test.ts +23 -0
- package/src/hooks/usePreviewPersistence.ts +22 -58
- package/src/hooks/useSdkSession.ts +8 -52
- package/src/hooks/useStudioExternalFileChanges.ts +81 -0
- package/src/hooks/useStudioSdkSessions.ts +2 -7
- package/src/hooks/useStudioSessionStart.ts +15 -0
- package/src/hooks/useStudioTestHooks.test.tsx +11 -7
- package/src/player/components/LayerDisclosureRow.tsx +2 -0
- package/src/player/components/Timeline.test.ts +24 -5
- package/src/player/components/Timeline.tsx +40 -40
- package/src/player/components/Timeline.virtualization.test.tsx +54 -11
- package/src/player/components/TimelineClip.test.tsx +17 -2
- package/src/player/components/TimelineClip.tsx +15 -3
- package/src/player/components/TimelineClipDiamonds.test.tsx +95 -10
- package/src/player/components/TimelineClipDiamonds.tsx +53 -13
- package/src/player/components/TimelineCompactDiamonds.tsx +84 -0
- package/src/player/components/TimelineDiamondConnectors.tsx +31 -3
- package/src/player/components/TimelineLanes.test.tsx +64 -6
- package/src/player/components/TimelineLanes.tsx +81 -64
- package/src/player/components/TimelinePropertyLanes.test.tsx +9 -5
- package/src/player/components/TimelinePropertyLanes.tsx +9 -2
- package/src/player/components/TimelineTrackHeader.test.tsx +1 -0
- package/src/player/components/TimelineTrackHeader.tsx +16 -0
- package/src/player/components/TimelineTrackRow.tsx +58 -7
- package/src/player/components/timelineDiamondTypes.ts +14 -7
- package/src/player/components/timelineKeyboardNavigation.test.ts +303 -0
- package/src/player/components/timelineKeyboardNavigation.ts +337 -0
- package/src/player/components/timelineLaneProps.ts +3 -0
- package/src/player/components/timelineNavigationIdentity.ts +38 -0
- package/src/player/components/useTimelineClipRenderWindow.ts +4 -35
- package/src/player/components/useTimelineFocusCoordinator.test.tsx +174 -0
- package/src/player/components/useTimelineFocusCoordinator.ts +221 -0
- package/src/player/components/useTimelineKeyboardActor.test.tsx +267 -0
- package/src/player/components/useTimelineKeyboardActor.ts +147 -0
- package/src/player/components/useTimelineLogicalFocus.ts +80 -0
- package/src/player/components/useTimelineLogicalRows.test.tsx +57 -0
- package/src/player/components/useTimelineLogicalRows.ts +47 -0
- package/src/player/components/useTimelineRowVirtualization.ts +16 -26
- package/src/player/store/liveTime.ts +11 -0
- package/src/player/store/playerStore.test.ts +29 -22
- package/src/player/store/playerStore.ts +24 -29
- package/src/player/store/timelineFocusState.ts +15 -0
- package/src/utils/domEditSaveQueue.test.ts +37 -1
- package/src/utils/domEditSaveQueue.ts +22 -4
- package/src/utils/externalConflictStorage.test.ts +95 -0
- package/src/utils/externalConflictStorage.ts +172 -0
- package/src/utils/studioFileVersion.test.ts +28 -1
- package/src/utils/studioFileVersion.ts +30 -0
- package/src/utils/studioPendingEdits.test.ts +108 -1
- package/src/utils/studioPendingEdits.ts +39 -2
- package/src/utils/studioSaveDiagnostics.ts +5 -0
- package/dist/assets/index-BXkzp_OU.css +0 -1
- package/dist/assets/index-DIntkrQl.js +0 -428
- package/src/player/components/useTimelineRevealClip.test.tsx +0 -139
- package/src/player/components/useTimelineRevealClip.ts +0 -180
package/dist/index.d.ts
CHANGED
|
@@ -129,6 +129,19 @@ interface KeyframeSlice {
|
|
|
129
129
|
setKeyframeCache: (elementId: string, data: KeyframeCacheEntry | undefined) => void;
|
|
130
130
|
}
|
|
131
131
|
|
|
132
|
+
interface TimelineFocusRequest {
|
|
133
|
+
id: string;
|
|
134
|
+
projectId: string | null;
|
|
135
|
+
sessionEpoch: number;
|
|
136
|
+
nonce: number;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
type TimeListener = (time: number) => void;
|
|
140
|
+
declare const liveTime: {
|
|
141
|
+
notify: (time: number) => void;
|
|
142
|
+
subscribe: (listener: TimeListener) => () => boolean;
|
|
143
|
+
};
|
|
144
|
+
|
|
132
145
|
interface TimelineElement {
|
|
133
146
|
id: string;
|
|
134
147
|
label?: string;
|
|
@@ -303,18 +316,10 @@ interface PlayerState extends KeyframeSlice {
|
|
|
303
316
|
requestedSeekTime: number | null;
|
|
304
317
|
requestSeek: (time: number) => void;
|
|
305
318
|
clearSeekRequest: () => void;
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
* clip observable so a second click re-reveals after the user scrolls away.
|
|
311
|
-
*/
|
|
312
|
-
clipRevealRequest: {
|
|
313
|
-
elementId: string;
|
|
314
|
-
nonce: number;
|
|
315
|
-
} | null;
|
|
316
|
-
requestClipReveal: (elementId: string) => void;
|
|
317
|
-
clearClipRevealRequest: () => void;
|
|
319
|
+
timelineFocus: TimelineFocusRequest | null;
|
|
320
|
+
timelineFocusNonce: number;
|
|
321
|
+
requestTimelineFocus: (id: string) => void;
|
|
322
|
+
clearTimelineFocus: (nonce: number) => void;
|
|
318
323
|
lintFindingsByElement: Map<string, {
|
|
319
324
|
count: number;
|
|
320
325
|
messages: string[];
|
|
@@ -364,11 +369,6 @@ interface BeatHistoryEntry {
|
|
|
364
369
|
at: number;
|
|
365
370
|
label: string;
|
|
366
371
|
}
|
|
367
|
-
type TimeListener = (time: number) => void;
|
|
368
|
-
declare const liveTime: {
|
|
369
|
-
notify: (t: number) => void;
|
|
370
|
-
subscribe: (cb: TimeListener) => () => boolean;
|
|
371
|
-
};
|
|
372
372
|
declare const usePlayerStore: zustand.UseBoundStore<zustand.StoreApi<PlayerState>>;
|
|
373
373
|
|
|
374
374
|
/**
|
|
@@ -846,14 +846,14 @@ interface PropertyPanelProps {
|
|
|
846
846
|
onSetManualOffset: (element: DomEditSelection, next: {
|
|
847
847
|
x: number;
|
|
848
848
|
y: number;
|
|
849
|
-
}) => void
|
|
849
|
+
}) => void | Promise<void>;
|
|
850
850
|
onSetManualSize: (element: DomEditSelection, next: {
|
|
851
851
|
width: number;
|
|
852
852
|
height: number;
|
|
853
|
-
}) => void
|
|
853
|
+
}) => void | Promise<void>;
|
|
854
854
|
onSetManualRotation: (element: DomEditSelection, next: {
|
|
855
855
|
angle: number;
|
|
856
|
-
}) => void
|
|
856
|
+
}) => void | Promise<void>;
|
|
857
857
|
onSetText: (value: string, fieldKey?: string) => void;
|
|
858
858
|
onSetTextFieldStyle: (fieldKey: string, property: string, value: string) => void;
|
|
859
859
|
onPreviewTextFieldStyle?: (fieldKey: string, property: string, value: string) => void;
|
package/dist/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-Dp1zVb9X.js"></script>
|
|
9
|
+
<link rel="stylesheet" crossorigin href="/assets/index-D78KEjgB.css">
|
|
10
10
|
</head>
|
|
11
11
|
<body>
|
|
12
12
|
<div data-hf-id="hf-aph5" id="root"></div>
|