daily-video-editor 0.0.2 → 0.0.4
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/clip-track/components/index.vue.d.ts +12 -2
- package/dist/clip-track/index.d.ts +1 -1
- package/dist/clip-track/stores/tracks.d.ts +15 -6
- package/dist/editor/VideoComposeEditor.vue.d.ts +80 -39
- package/dist/editor/asset-panel/VideoComposeAssetPanel.vue.d.ts +0 -2
- package/dist/editor/asset-panel/VideoComposeClipCatalog.vue.d.ts +16 -3
- package/dist/editor/asset-panel/VideoComposeTextTemplateCatalog.vue.d.ts +16 -1
- package/dist/editor/index.d.ts +1 -1
- package/dist/editor/session/createComposeEditorState.d.ts +13 -3
- package/dist/editor/session/useComposeCatalog.d.ts +0 -1
- package/dist/editor/session/useComposeEditorSession.d.ts +163 -134
- package/dist/editor/session/videoComposeEditorExpose.d.ts +7 -1
- package/dist/editor/timeline/VideoComposeTimeline.vue.d.ts +24 -12
- package/dist/index.d.ts +1 -1
- package/dist/index.js +9471 -9405
- package/dist/style.css +1 -1
- package/dist/types/videoCompose.d.ts +13 -10
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ComposeExportPayload, VideoClipItem, VideoComposeEditorModel } from '../../types/videoCompose';
|
|
1
|
+
import { ComposeClip, ComposeExportPayload, VideoClipItem, VideoComposeEditorModel } from '../../types/videoCompose';
|
|
2
2
|
/**
|
|
3
3
|
* `VideoComposeEditor` 通过组件 ref 暴露的方法。
|
|
4
4
|
* 换稿必须调用 `reload`;只改 `v-model` 引用不会回灌时间轴。
|
|
@@ -16,4 +16,10 @@ export interface VideoComposeEditorExpose {
|
|
|
16
16
|
getMainVideoClips: () => VideoClipItem[];
|
|
17
17
|
/** 触发上传视频:`onRequestUploadClip`,否则走内置上传 */
|
|
18
18
|
requestUploadClip: () => void;
|
|
19
|
+
/**
|
|
20
|
+
* 右栏 inspector 当前类型对应的那条选中 clip;无选中或无 inspector 时为 null
|
|
21
|
+
*/
|
|
22
|
+
getEditingClip: () => ComposeClip | null;
|
|
23
|
+
/** 当前时间轴多选解析后的 clip 列表 */
|
|
24
|
+
getSelectedClips: () => ComposeClip[];
|
|
19
25
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { nextTick } from 'vue';
|
|
2
|
-
import { Track, ThemeConfig, OperationButton, ClipContextMenuConfig, TrackContextMenuConfig, Clip, ClipTypeConfig } from '../../clip-track';
|
|
2
|
+
import { Track, ThemeConfig, OperationButton, ClipContextMenuConfig, TrackContextMenuConfig, Clip, ClipTypeConfig, TrackTypeConfig } from '../../clip-track';
|
|
3
3
|
import { ComposeTrack, VideoClipItem, BgmItem, ComposeSegmentClipAssets, ComposeSubtitleAsset, ComposeTextTemplateDrag, ComposeFrameAspect } from '../../types/videoCompose';
|
|
4
4
|
/** 可批量改属性的 clip 类型 */
|
|
5
5
|
export type PatchableClipType = "video" | "audio" | "subtitle" | "text";
|
|
@@ -18,6 +18,11 @@ export interface VideoComposeTimelineProps {
|
|
|
18
18
|
readonly?: boolean;
|
|
19
19
|
/** 工程持久化的时间轴倍率;缺省 1 */
|
|
20
20
|
scale?: number;
|
|
21
|
+
/**
|
|
22
|
+
* 各轨道类型数量上限;未传则使用 clip-track 组件默认。
|
|
23
|
+
* 某类型未出现在配置中视为不限制。
|
|
24
|
+
*/
|
|
25
|
+
trackTypes?: TrackTypeConfig;
|
|
21
26
|
}
|
|
22
27
|
/** exportData → ComposeTrack[] */
|
|
23
28
|
declare function exportTracks(): ComposeTrack[];
|
|
@@ -92,15 +97,22 @@ declare function addClipToMain(item: {
|
|
|
92
97
|
* 向音频轨追加 clip(可多次,对应音频1…N)。
|
|
93
98
|
*/
|
|
94
99
|
declare function addAudioClip(bgm: BgmItem, startTime?: number): string;
|
|
100
|
+
/** 插入字幕 clip 的可选文案、时间与样式(样式缺省走 normalizeSubtitleClipStyle) */
|
|
101
|
+
type AddSubtitleClipOptions = {
|
|
102
|
+
text?: string;
|
|
103
|
+
startTime?: number;
|
|
104
|
+
durationSec?: number;
|
|
105
|
+
fontFamily?: string;
|
|
106
|
+
fontSize?: number;
|
|
107
|
+
color?: string;
|
|
108
|
+
bold?: boolean;
|
|
109
|
+
italic?: boolean;
|
|
110
|
+
};
|
|
95
111
|
/**
|
|
96
112
|
* 在字幕轨 playhead(或指定时间)插入字幕 clip。
|
|
97
113
|
* 游标落在已有字幕上时插到该 clip 之后,且不与同轨其他字幕重叠。
|
|
98
114
|
*/
|
|
99
|
-
declare function addSubtitleClip(options?:
|
|
100
|
-
text?: string;
|
|
101
|
-
startTime?: number;
|
|
102
|
-
durationSec?: number;
|
|
103
|
-
}): string;
|
|
115
|
+
declare function addSubtitleClip(options?: AddSubtitleClipOptions): string;
|
|
104
116
|
/** 清空字幕轨全部 clip 后写入全局时间轴字幕 */
|
|
105
117
|
declare function replaceSubtitleClips(items: Array<{
|
|
106
118
|
start: number;
|
|
@@ -243,7 +255,7 @@ declare const _default: import('vue').DefineComponent<VideoComposeTimelineProps,
|
|
|
243
255
|
$props: {
|
|
244
256
|
readonly operationButtons?: OperationButton[] | undefined;
|
|
245
257
|
readonly scaleConfigButtons?: import('../../clip-track/types').ScaleConfigButton[] | undefined;
|
|
246
|
-
readonly trackTypes?:
|
|
258
|
+
readonly trackTypes?: TrackTypeConfig | undefined;
|
|
247
259
|
readonly clipConfigs?: ClipTypeConfig | undefined;
|
|
248
260
|
readonly showToolsBar?: boolean | undefined;
|
|
249
261
|
readonly showPlayback?: boolean | undefined;
|
|
@@ -445,7 +457,8 @@ declare const _default: import('vue').DefineComponent<VideoComposeTimelineProps,
|
|
|
445
457
|
}) => void;
|
|
446
458
|
exportAsJSON: () => string;
|
|
447
459
|
importFromJSON: (json: string) => boolean;
|
|
448
|
-
|
|
460
|
+
canAddTrack: (type: Track["type"]) => boolean;
|
|
461
|
+
addTrack: (track: Track) => boolean;
|
|
449
462
|
removeTrack: (trackId: string) => void;
|
|
450
463
|
updateTrack: (trackId: string, updates: Partial<Track>) => void;
|
|
451
464
|
getTracks: () => {
|
|
@@ -1737,7 +1750,6 @@ declare const _default: import('vue').DefineComponent<VideoComposeTimelineProps,
|
|
|
1737
1750
|
playbackRates: number[];
|
|
1738
1751
|
trackControlWidth: number;
|
|
1739
1752
|
trackContextMenu: TrackContextMenuConfig;
|
|
1740
|
-
trackTypes: import('../../clip-track/types').TrackTypeConfig;
|
|
1741
1753
|
clipConfigs: ClipTypeConfig;
|
|
1742
1754
|
showToolsBar: boolean;
|
|
1743
1755
|
enableMainTrackMode: boolean;
|
|
@@ -1780,7 +1792,6 @@ declare const _default: import('vue').DefineComponent<VideoComposeTimelineProps,
|
|
|
1780
1792
|
playbackRates: number[];
|
|
1781
1793
|
trackControlWidth: number;
|
|
1782
1794
|
trackContextMenu: TrackContextMenuConfig;
|
|
1783
|
-
trackTypes: import('../../clip-track/types').TrackTypeConfig;
|
|
1784
1795
|
clipConfigs: ClipTypeConfig;
|
|
1785
1796
|
showToolsBar: boolean;
|
|
1786
1797
|
enableMainTrackMode: boolean;
|
|
@@ -1830,7 +1841,7 @@ declare const _default: import('vue').DefineComponent<VideoComposeTimelineProps,
|
|
|
1830
1841
|
onTrackContextMenuSelect?: ((key: string, track: Track, time: number) => any) | undefined;
|
|
1831
1842
|
onClipContextMenuSelect?: ((key: string, clip: any) => any) | undefined;
|
|
1832
1843
|
"onData:changed"?: (() => any) | undefined;
|
|
1833
|
-
}>, "zoomIn" | "zoomOut" | "reset" | "undo" | "redo" | "addTrack" | "removeTrack" | "updateTrack" | "addClip" | "removeClip" | "updateClip" | "selectClip" | "clearSelection" | "setClipPlaybackRate" | "getClipDurationAtRate" | "checkPlaybackRateCollision" | "isPlaying" | "play" | "pause" | "togglePlay" | "seekTo" | "setPlaybackRate" | "setScale" | "setScrollLeft" | "getCurrentTime" | ("minScale" | "maxScale" | "pixelsPerSecond" | "snapThreshold" | "operationButtons" | "scaleConfigButtons" | "locale" | "showPlayback" | "showScaleControl" | "playbackRates" | "trackControlWidth" | "trackContextMenu" | "
|
|
1844
|
+
}>, "zoomIn" | "zoomOut" | "reset" | "undo" | "redo" | "canAddTrack" | "addTrack" | "removeTrack" | "updateTrack" | "addClip" | "removeClip" | "updateClip" | "selectClip" | "clearSelection" | "setClipPlaybackRate" | "getClipDurationAtRate" | "checkPlaybackRateCollision" | "isPlaying" | "play" | "pause" | "togglePlay" | "seekTo" | "setPlaybackRate" | "setScale" | "setScrollLeft" | "getCurrentTime" | ("minScale" | "maxScale" | "pixelsPerSecond" | "snapThreshold" | "operationButtons" | "scaleConfigButtons" | "locale" | "showPlayback" | "showScaleControl" | "playbackRates" | "trackControlWidth" | "trackContextMenu" | "clipConfigs" | "showToolsBar" | "enableMainTrackMode" | "enableCrossTrackDrag" | "fps" | "defaultScale" | "enableSnap" | "clipContextMenu" | "theme") | "registerClipType" | "emitTransitionAdded" | "exportData" | "importData" | "exportAsJSON" | "importFromJSON" | "getTracks" | "getSortedTracks" | "getTrackById" | "getMainTrack" | "getClipById" | "moveClip" | "selectClips" | "getSelectedClips" | "getSelectedClipIds" | "getPlaybackRate" | "getDuration" | "getScale" | "getViewportWidth" | "getScrollLeft" | "disableSnap" | "isSnapEnabled" | "getHistoryState"> & {
|
|
1834
1845
|
reset: () => void;
|
|
1835
1846
|
registerClipType: (type: string, config: any) => void;
|
|
1836
1847
|
emitTransitionAdded: (transitionClip: any, beforeClipId: string, afterClipId: string) => void;
|
|
@@ -1850,7 +1861,8 @@ declare const _default: import('vue').DefineComponent<VideoComposeTimelineProps,
|
|
|
1850
1861
|
}) => void;
|
|
1851
1862
|
exportAsJSON: () => string;
|
|
1852
1863
|
importFromJSON: (json: string) => boolean;
|
|
1853
|
-
|
|
1864
|
+
canAddTrack: (type: Track["type"]) => boolean;
|
|
1865
|
+
addTrack: (track: Track) => boolean;
|
|
1854
1866
|
removeTrack: (trackId: string) => void;
|
|
1855
1867
|
updateTrack: (trackId: string, updates: Partial<Track>) => void;
|
|
1856
1868
|
getTracks: () => {
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { VideoComposeEditor, createDefaultVideoComposeEditorModel } from './editor';
|
|
2
|
-
export type { BgmItem, ComposeBgmUploadResult, ComposeCatalogUploadPayload, ComposeClip, ComposeEditorProps, ComposeExportPayload, ComposeSegmentClipAssets, ComposeTrack, ComposeUploadAdapter, MediaBizType, MediaClip, MediaRef, SubtitleClip, TextClip, TextTemplateItem, TrackType, VideoClipItem, VideoComposeEditorExpose, VideoComposeEditorModel, } from './editor';
|
|
2
|
+
export type { BgmItem, ComposeBgmUploadResult, ComposeCatalogUploadPayload, ComposeClip, ComposeEditorProps, ComposeExportPayload, ComposeSegmentClipAssets, ComposeTrack, ComposeUploadAdapter, MediaBizType, MediaClip, MediaRef, SubtitleClip, TextClip, TextTemplateItem, TrackType, TrackTypeConfig, VideoClipItem, VideoComposeEditorExpose, VideoComposeEditorModel, } from './editor';
|
|
3
3
|
export { createComposeMediaResolver, isPassthroughMediaUrl, mediaCorsMessage, type ComposeMediaResolver, type ResolveMediaUrl, } from './service/resolveComposeMediaUrl';
|