@linker-design-plus/timeline-track 2.0.14 → 2.0.15

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/README.md CHANGED
@@ -89,6 +89,7 @@ timeline.on('history_change', (_event, data) => {
89
89
  - `updateClip(clipId, updates)` / `removeClip(clipId)`
90
90
  - `selectClip(clipId)` / `clearSelection()` / `getSelectedClip()`
91
91
  - `splitCurrentClip()` / `removeClipGaps()`
92
+ - `getRenderedHeight()`
92
93
  - `undo()` / `redo()` / `clearHistory()`
93
94
  - `attachPreview(containerOrConfig)` / `detachPreview()`
94
95
  - `exportTimeline()` / `loadDraft(data)`
@@ -94,8 +94,6 @@ export declare class ClipConfigPanel {
94
94
  private syncVoiceStateForClip;
95
95
  private syncActiveTab;
96
96
  private supportsVoicePanel;
97
- private resolveDefaultVoiceFilterTag;
98
- private getVisibleVoiceOptions;
99
97
  private ensureVoiceFilters;
100
98
  private handleVoiceFilterChange;
101
99
  private handleVoiceSelect;
@@ -79,6 +79,7 @@ export declare class ClipConfigPanelRenderer extends LitDomRenderer<ClipConfigPa
79
79
  private renderVoiceLoadingOverlay;
80
80
  private renderEmptyState;
81
81
  private renderPanel;
82
+ private renderTabPanel;
82
83
  private renderTabBar;
83
84
  private renderActionBar;
84
85
  private renderVoiceActionBar;
@@ -19,6 +19,7 @@ export interface TimelinePreviewBackendCallbacks {
19
19
  onSyncProcessed?: (syncRequestId?: number) => void;
20
20
  onRuntimeStateChange?: (state: PreviewRuntimeState) => void;
21
21
  onAspectRatioChange?: (aspectRatio: PreviewAspectRatio) => void;
22
+ onPreviewClipSelect?: (clipId: string) => void;
22
23
  onVisualTransformCommit?: (clipId: string, visualTransform: ClipVisualTransform) => void;
23
24
  onPendingPreviewRetry?: () => void;
24
25
  onRuntimeError?: (error: unknown) => void;
@@ -3,6 +3,7 @@ import type { DomRenderer } from '../renderers/domRenderer';
3
3
  export interface PreviewPendingOverlayViewModel {
4
4
  pendingState: PreviewPendingState | null;
5
5
  runtimeState: PreviewRuntimeState;
6
+ isBuffering: boolean;
6
7
  }
7
8
  export declare class PreviewPendingOverlayRenderer implements DomRenderer<PreviewPendingOverlayViewModel> {
8
9
  private container;
@@ -17,6 +17,7 @@ export interface ClipSelectPlan {
17
17
  export declare function applyClipMutationEffects(handlers: ClipMutationEffectHandlers): void;
18
18
  export declare function applyClipUpdateEffects(handlers: ClipUpdateMutationEffectHandlers): void;
19
19
  export declare function shouldReloadClipThumbnails(clip: Clip, originalClip?: Clip, hasThumbnailProvider?: boolean): boolean;
20
+ export declare function calculatePlaybackEndTime(clips: Pick<Clip, 'endTime'>[]): number;
20
21
  export declare function calculateCanPlayState(clips: Pick<Clip, 'endTime'>[], currentTime: number): boolean;
21
22
  interface SyncCanPlayStateOptions {
22
23
  currentCanPlay: boolean;
@@ -8,6 +8,7 @@ interface TimelinePreviewSessionCallbacks {
8
8
  onSyncProcessed?: (syncRequestId?: number) => void;
9
9
  onRuntimeStateChange?: (state: PreviewRuntimeState) => void;
10
10
  onAspectRatioChange?: (aspectRatio: PreviewAspectRatio) => void;
11
+ onPreviewClipSelect?: (clipId: string) => void;
11
12
  onVisualTransformCommit?: (clipId: string, visualTransform: ClipVisualTransform) => void;
12
13
  onPendingPreviewRetry?: () => void;
13
14
  }
@@ -151,6 +151,7 @@ export declare class TimelineManager {
151
151
  private getTracksSortedByOrder;
152
152
  private getPlaybackTracksSnapshot;
153
153
  private buildPlaybackPlan;
154
+ private hasTimelineVideoClip;
154
155
  private getPreviewAutoAspectRatioClipOrderMap;
155
156
  private getNextPreviewAutoAspectRatioOrder;
156
157
  private getAutoAspectRatioClip;
@@ -160,6 +161,7 @@ export declare class TimelineManager {
160
161
  private beginPendingPreview;
161
162
  updatePendingPreviewState(): void;
162
163
  private buildPreviewPendingState;
164
+ private buildPreviewIndicatorState;
163
165
  private clearPendingPreviewState;
164
166
  private resetPreviewRuntimeState;
165
167
  private destroyPreviewSession;
@@ -375,6 +377,13 @@ export declare class TimelineManager {
375
377
  getPlayState(): PlayState;
376
378
  setDuration(duration: TimeMs): void;
377
379
  getDuration(): TimeMs;
380
+ /**
381
+ * 获取当前时间轴内容完整渲染高度。
382
+ *
383
+ * 该高度包含顶部时间刻度、所有轨道内容和底部横向滚动条,可供外部容器
384
+ * 在需要贴合内容时作为高度参考。
385
+ */
386
+ getRenderedHeight(): number;
378
387
  /**
379
388
  * 调整时间轴大小以适配容器
380
389
  * @param width 新的宽度
@@ -479,6 +488,7 @@ export declare class TimelineManager {
479
488
  removeSelectedClips(): boolean;
480
489
  canSeparateClipAudio(clipId: string): boolean;
481
490
  canRestoreClipAudio(clipId: string): boolean;
491
+ private pausePlaybackForAudioSeparation;
482
492
  private resolvePreferredSeparatedAudioTrackId;
483
493
  separateClipAudio(clipId: string): Promise<string | null>;
484
494
  restoreClipAudio(clipId: string): boolean;
@@ -543,6 +553,7 @@ export declare class TimelineManager {
543
553
  private handleBoxSelectEnd;
544
554
  private isPointOnClip;
545
555
  private getClipsIntersectingBox;
556
+ private resolveTrackRenderHeight;
546
557
  private addClipToTrack;
547
558
  private cloneTrackSnapshot;
548
559
  private ensureTrackFromHistorySnapshot;
@@ -22,7 +22,6 @@ export interface TextClipStyle {
22
22
  rotation: number;
23
23
  strokeColor: string;
24
24
  strokeWidth: number;
25
- lineHeight: number;
26
25
  paddingX: number;
27
26
  }
28
27
  export declare const DEFAULT_TEXT_CLIP_STYLE: TextClipStyle;