@smoove/core 0.3.2 → 0.3.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/engine/composition.d.ts +10 -1
- package/dist/engine/composition.d.ts.map +1 -1
- package/dist/engine/composition.js +38 -7
- package/dist/engine/composition.js.map +1 -1
- package/dist/engine/marker.d.ts +53 -4
- package/dist/engine/marker.d.ts.map +1 -1
- package/dist/engine/marker.js +93 -6
- package/dist/engine/marker.js.map +1 -1
- package/dist/engine/sequence.d.ts +21 -0
- package/dist/engine/sequence.d.ts.map +1 -1
- package/dist/engine/sequence.js +39 -11
- package/dist/engine/sequence.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -2,12 +2,18 @@ import Konva from "konva";
|
|
|
2
2
|
import type { AudioAsset } from "../media/audio/asset.js";
|
|
3
3
|
import { AudioMixer } from "../media/audio/mixer.js";
|
|
4
4
|
import { type Environment, type EnvironmentMode } from "./environment.js";
|
|
5
|
+
import { type FrameAnchor } from "./marker.js";
|
|
5
6
|
import { type SequenceProvider } from "./sequence.js";
|
|
6
7
|
import { type ReadonlySignal } from "./signal.js";
|
|
7
8
|
export type CompositionOptions<P extends Record<string, unknown> = Record<string, unknown>> = Konva.StageConfig & {
|
|
8
9
|
id: string;
|
|
9
10
|
fps: number;
|
|
10
|
-
|
|
11
|
+
/**
|
|
12
|
+
* Total frames, or a `Marker`/`MarkerPoint` (e.g. `outro.end`) resolved
|
|
13
|
+
* lazily on first read — so a comp can end where its last planned beat
|
|
14
|
+
* ends, and retiming the plan retimes the comp.
|
|
15
|
+
*/
|
|
16
|
+
durationInFrames: FrameAnchor;
|
|
11
17
|
loop?: boolean;
|
|
12
18
|
/** Initial props handed to the scene. Read live with `comp.props.get()` in
|
|
13
19
|
updaters; pushed to with `comp.setProps()` by a player or the studio. */
|
|
@@ -60,6 +66,7 @@ export declare class Composition<P extends Record<string, unknown> = Record<stri
|
|
|
60
66
|
private readonly _playbackRate;
|
|
61
67
|
private readonly _buffer;
|
|
62
68
|
private readonly _emitter;
|
|
69
|
+
private _durationAnchor;
|
|
63
70
|
private _rafId;
|
|
64
71
|
private _startWallMs;
|
|
65
72
|
private _startFrame;
|
|
@@ -73,6 +80,8 @@ export declare class Composition<P extends Record<string, unknown> = Record<stri
|
|
|
73
80
|
private _audioAssets;
|
|
74
81
|
private _captureCanvas;
|
|
75
82
|
constructor(opts: CompositionOptions<P>);
|
|
83
|
+
/** Resolve an anchor-valued duration into the signal, once. */
|
|
84
|
+
private _ensureDurationResolved;
|
|
76
85
|
on(evtStr: any, handler: any): any;
|
|
77
86
|
off(evtStr?: any, handler?: any): any;
|
|
78
87
|
add(first: Konva.Layer | SequenceProvider, ...rest: (Konva.Layer | SequenceProvider)[]): this;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composition.d.ts","sourceRoot":"","sources":["../../src/engine/composition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAqB,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAExE,OAAO,EAAqB,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC7F,OAAO,EAAY,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAyB,KAAK,cAAc,EAAe,MAAM,aAAa,CAAC;AAOtF,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IACxF,KAAK,CAAC,WAAW,GAAG;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"composition.d.ts","sourceRoot":"","sources":["../../src/engine/composition.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ import { FONT_MARK, MEDIA_MARK } from "../markers.js";
|
|
|
3
3
|
import { AudioMixer } from "../media/audio/mixer.js";
|
|
4
4
|
import { createEmitter } from "./emitter.js";
|
|
5
5
|
import { detectEnvironment } from "./environment.js";
|
|
6
|
+
import { resolveFrameAnchor } from "./marker.js";
|
|
6
7
|
import { Sequence } from "./sequence.js";
|
|
7
8
|
import { createSignal, derived } from "./signal.js";
|
|
8
9
|
/** A SequenceProvider duck-types on a `sequences()` method (Konva layers lack one). */
|
|
@@ -49,6 +50,9 @@ export class Composition extends Konva.Stage {
|
|
|
49
50
|
_playbackRate;
|
|
50
51
|
_buffer;
|
|
51
52
|
_emitter;
|
|
53
|
+
// Anchor-valued duration pending lazy resolution on first read (see the
|
|
54
|
+
// durationInFrames wiring in the constructor). Null once resolved.
|
|
55
|
+
_durationAnchor = null;
|
|
52
56
|
_rafId = null;
|
|
53
57
|
_startWallMs = 0;
|
|
54
58
|
_startFrame = 0;
|
|
@@ -77,7 +81,8 @@ export class Composition extends Konva.Stage {
|
|
|
77
81
|
if (!Number.isFinite(opts.fps) || opts.fps <= 0) {
|
|
78
82
|
throw new Error("Composition: fps must be a positive number");
|
|
79
83
|
}
|
|
80
|
-
if (
|
|
84
|
+
if (typeof opts.durationInFrames === "number" &&
|
|
85
|
+
(!Number.isInteger(opts.durationInFrames) || opts.durationInFrames <= 0)) {
|
|
81
86
|
throw new Error("Composition: durationInFrames must be a positive integer");
|
|
82
87
|
}
|
|
83
88
|
const { fps, durationInFrames, loop = false, props, mode, ...stageOpts } = opts;
|
|
@@ -99,14 +104,29 @@ export class Composition extends Konva.Stage {
|
|
|
99
104
|
this.environment = detectEnvironment(mode);
|
|
100
105
|
this._frame = createSignal(0);
|
|
101
106
|
this._isPlaying = createSignal(false);
|
|
102
|
-
|
|
107
|
+
if (typeof durationInFrames === "number") {
|
|
108
|
+
this._durationInFrames = createSignal(durationInFrames);
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
// Resolved lazily on first read: the anchor may depend on a Series added
|
|
112
|
+
// after construction. Markers are immutable, so the first resolution is
|
|
113
|
+
// cached into the signal and never re-run.
|
|
114
|
+
this._durationInFrames = createSignal(0);
|
|
115
|
+
this._durationAnchor = durationInFrames;
|
|
116
|
+
}
|
|
103
117
|
this._loop = createSignal(loop);
|
|
104
118
|
this._playbackRate = createSignal(1);
|
|
105
119
|
this._props = createSignal(props ?? {});
|
|
106
120
|
this._buffer = createSignal("idle");
|
|
107
121
|
this.frame = this._frame;
|
|
108
122
|
this.isPlaying = this._isPlaying;
|
|
109
|
-
this.durationInFrames =
|
|
123
|
+
this.durationInFrames = {
|
|
124
|
+
get: () => {
|
|
125
|
+
this._ensureDurationResolved();
|
|
126
|
+
return this._durationInFrames.get();
|
|
127
|
+
},
|
|
128
|
+
subscribe: (listener) => this._durationInFrames.subscribe(listener),
|
|
129
|
+
};
|
|
110
130
|
this.loop = this._loop;
|
|
111
131
|
this.playbackRate = this._playbackRate;
|
|
112
132
|
this.props = this._props;
|
|
@@ -116,6 +136,17 @@ export class Composition extends Konva.Stage {
|
|
|
116
136
|
this.isPaused = derived([this._isPlaying, this._frame], () => !this._isPlaying.get() && this._frame.get() > 0);
|
|
117
137
|
this._emitter = createEmitter();
|
|
118
138
|
}
|
|
139
|
+
/** Resolve an anchor-valued duration into the signal, once. */
|
|
140
|
+
_ensureDurationResolved() {
|
|
141
|
+
if (this._durationAnchor === null)
|
|
142
|
+
return;
|
|
143
|
+
const resolved = resolveFrameAnchor(this._durationAnchor);
|
|
144
|
+
if (!Number.isInteger(resolved) || resolved <= 0) {
|
|
145
|
+
throw new Error(`Composition: durationInFrames anchor resolved to ${resolved} — must be a positive integer`);
|
|
146
|
+
}
|
|
147
|
+
this._durationAnchor = null;
|
|
148
|
+
this._durationInFrames.set(resolved);
|
|
149
|
+
}
|
|
119
150
|
// biome-ignore lint/suspicious/noExplicitAny: bridges Konva's typed event API with our composition events.
|
|
120
151
|
on(evtStr, handler) {
|
|
121
152
|
if (typeof evtStr === "string" && isCompositionEvent(evtStr)) {
|
|
@@ -281,7 +312,7 @@ export class Composition extends Konva.Stage {
|
|
|
281
312
|
}
|
|
282
313
|
}
|
|
283
314
|
setFrame(target) {
|
|
284
|
-
const clamped = Math.max(0, Math.min(this.
|
|
315
|
+
const clamped = Math.max(0, Math.min(this.durationInFrames.get() - 1, Math.floor(target)));
|
|
285
316
|
if (clamped === this._frame.get())
|
|
286
317
|
return;
|
|
287
318
|
this._frame.set(clamped);
|
|
@@ -392,7 +423,7 @@ export class Composition extends Konva.Stage {
|
|
|
392
423
|
* entrypoint — e.g. `for (f) { await comp.renderFrame(f); capture(); }`.
|
|
393
424
|
*/
|
|
394
425
|
async renderFrame(target) {
|
|
395
|
-
const clamped = Math.max(0, Math.min(this.
|
|
426
|
+
const clamped = Math.max(0, Math.min(this.durationInFrames.get() - 1, Math.floor(target)));
|
|
396
427
|
this._frame.set(clamped);
|
|
397
428
|
// force: offline render must apply every frame, even a re-rendered duplicate.
|
|
398
429
|
this._applyFrame(clamped, true, true);
|
|
@@ -457,7 +488,7 @@ export class Composition extends Konva.Stage {
|
|
|
457
488
|
_event() {
|
|
458
489
|
return {
|
|
459
490
|
frame: this._frame.get(),
|
|
460
|
-
durationInFrames: this.
|
|
491
|
+
durationInFrames: this.durationInFrames.get(),
|
|
461
492
|
};
|
|
462
493
|
}
|
|
463
494
|
_applyFrame(frame, emit, force = false) {
|
|
@@ -499,7 +530,7 @@ export class Composition extends Konva.Stage {
|
|
|
499
530
|
const elapsedMs = now - this._startWallMs;
|
|
500
531
|
// round (not floor) so small negative advances still register frame-by-frame.
|
|
501
532
|
const advance = Math.round((elapsedMs / 1000) * this.fps * rate);
|
|
502
|
-
const lastFrame = this.
|
|
533
|
+
const lastFrame = this.durationInFrames.get() - 1;
|
|
503
534
|
const target = Math.max(0, Math.min(lastFrame, this._startFrame + advance));
|
|
504
535
|
if (target !== this._frame.get()) {
|
|
505
536
|
this._frame.set(target);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composition.js","sourceRoot":"","sources":["../../src/engine/composition.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"composition.js","sourceRoot":"","sources":["../../src/engine/composition.ts"],"names":[],"mappings":"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"}
|
package/dist/engine/marker.d.ts
CHANGED
|
@@ -31,6 +31,15 @@ export type MarkerSource = {
|
|
|
31
31
|
_kmResolveMarker(name: string | undefined): ScenePlacement;
|
|
32
32
|
};
|
|
33
33
|
export type MarkerKind = "start" | "end" | "settled";
|
|
34
|
+
/** Options for a directly declared marker: a named time range planned up front. */
|
|
35
|
+
export type MarkerOptions = {
|
|
36
|
+
/** Where the range opens. Default `0`. A bare `Marker` means its `.start`. */
|
|
37
|
+
start?: FrameAnchor;
|
|
38
|
+
/** Length in frames (positive integer). Mutually exclusive with {@link until}. */
|
|
39
|
+
durationInFrames?: number;
|
|
40
|
+
/** Where the range closes. Mutually exclusive with {@link durationInFrames}. */
|
|
41
|
+
until?: FrameAnchor;
|
|
42
|
+
};
|
|
34
43
|
/**
|
|
35
44
|
* One anchorable point of a marked scene (`start`, `end`, or `settled`),
|
|
36
45
|
* optionally shifted by an integer frame delta. Immutable: `add()` returns a
|
|
@@ -53,14 +62,23 @@ export declare class MarkerPoint {
|
|
|
53
62
|
resolve(): number;
|
|
54
63
|
}
|
|
55
64
|
/**
|
|
56
|
-
* Handle onto a marked scene
|
|
57
|
-
* bare `Marker` as a {@link FrameAnchor}
|
|
65
|
+
* Handle onto a marked scene, or a directly declared time range. Exposes the
|
|
66
|
+
* three anchorable points; using the bare `Marker` as a {@link FrameAnchor}
|
|
67
|
+
* means its `.start`.
|
|
58
68
|
*/
|
|
59
69
|
export declare class Marker {
|
|
60
70
|
private readonly _source;
|
|
61
71
|
private readonly _name?;
|
|
62
|
-
/**
|
|
63
|
-
|
|
72
|
+
/**
|
|
73
|
+
* Declare a marker directly: `new Marker({ start, durationInFrames })` — a
|
|
74
|
+
* planned time range whose points anchor sequences, other markers, and the
|
|
75
|
+
* composition's duration. `start` accepts any anchor, so markers chain
|
|
76
|
+
* (`start: intro.end`). Derived markers still come from
|
|
77
|
+
* `series.marker(name)` / `sequence.marker()`.
|
|
78
|
+
*/
|
|
79
|
+
constructor(options: MarkerOptions);
|
|
80
|
+
/** @internal — the derived-marker form used by `series.marker(name)` / `sequence.marker()`. */
|
|
81
|
+
constructor(source: MarkerSource, name?: string);
|
|
64
82
|
/** The scene's window-open frame (under a transition: the transition begins). */
|
|
65
83
|
get start(): MarkerPoint;
|
|
66
84
|
/** The scene's window-close frame. */
|
|
@@ -70,6 +88,37 @@ export declare class Marker {
|
|
|
70
88
|
/** Sugar for `this.start.resolve()`. */
|
|
71
89
|
resolve(): number;
|
|
72
90
|
}
|
|
91
|
+
/** One beat in a {@link plan}: a length plus an optional shift off the previous beat's end. */
|
|
92
|
+
export type PlanStep = {
|
|
93
|
+
/** Length in frames (positive integer). */
|
|
94
|
+
durationInFrames: number;
|
|
95
|
+
/**
|
|
96
|
+
* Frames between the previous beat's end and this beat's start: `0`
|
|
97
|
+
* back-to-back (default), negative overlaps, positive leaves a gap. Same
|
|
98
|
+
* semantics as `Series`.
|
|
99
|
+
*/
|
|
100
|
+
offset?: number;
|
|
101
|
+
};
|
|
102
|
+
/**
|
|
103
|
+
* Lay out named beats back to back and return a `Marker` per key, in insertion
|
|
104
|
+
* order. Sugar over chained `new Marker({...})`: the first beat starts at
|
|
105
|
+
* `opts.from` (default `0`, any anchor), each next beat at the previous end
|
|
106
|
+
* shifted by its `offset`. With a negative `offset` the beat's `settled` is
|
|
107
|
+
* `start + |offset|`, mirroring `Series`.
|
|
108
|
+
*
|
|
109
|
+
* ```ts
|
|
110
|
+
* const { intro, hero } = plan({
|
|
111
|
+
* intro: { durationInFrames: 5 * fps },
|
|
112
|
+
* hero: { durationInFrames: 10 * fps, offset: -10 },
|
|
113
|
+
* });
|
|
114
|
+
* new Sequence({ span: hero });
|
|
115
|
+
* ```
|
|
116
|
+
*/
|
|
117
|
+
export declare function plan<T extends Record<string, PlanStep>>(steps: T, opts?: {
|
|
118
|
+
from?: FrameAnchor;
|
|
119
|
+
}): {
|
|
120
|
+
[K in keyof T]: Marker;
|
|
121
|
+
};
|
|
73
122
|
/** A timeline position: an absolute frame, a `Marker` (its `.start`), or a `MarkerPoint`. */
|
|
74
123
|
export type FrameAnchor = number | Marker | MarkerPoint;
|
|
75
124
|
/** Resolve a {@link FrameAnchor} to a frame number. @internal */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"marker.d.ts","sourceRoot":"","sources":["../../src/engine/marker.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,iFAAiF;AACjF,MAAM,MAAM,cAAc,GAAG;IAC3B,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,GAAG,EAAE,MAAM,CAAC;IACZ;;;;;OAKG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,cAAc,CAAC;CAC5D,CAAC;AAuBF,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,KAAK,GAAG,SAAS,CAAC;AAErD;;;;GAIG;AACH,qBAAa,WAAW;IAGpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,QAAQ,CAAC,IAAI,EAAE,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM;IALxB,oEAAoE;gBAEjD,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,MAAM,GAAG,SAAS,EACjC,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM;IAGxB,sEAAsE;IACtE,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,WAAW;IAO3B;;;;OAIG;IACH,OAAO,IAAI,MAAM;CAqBlB;AAED
|
|
1
|
+
{"version":3,"file":"marker.d.ts","sourceRoot":"","sources":["../../src/engine/marker.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,iFAAiF;AACjF,MAAM,MAAM,cAAc,GAAG;IAC3B,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,GAAG,EAAE,MAAM,CAAC;IACZ;;;;;OAKG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,cAAc,CAAC;CAC5D,CAAC;AAuBF,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,KAAK,GAAG,SAAS,CAAC;AAErD,mFAAmF;AACnF,MAAM,MAAM,aAAa,GAAG;IAC1B,8EAA8E;IAC9E,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,kFAAkF;IAClF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gFAAgF;IAChF,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB,CAAC;AA6CF;;;;GAIG;AACH,qBAAa,WAAW;IAGpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,QAAQ,CAAC,IAAI,EAAE,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM;IALxB,oEAAoE;gBAEjD,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,MAAM,GAAG,SAAS,EACjC,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM;IAGxB,sEAAsE;IACtE,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,WAAW;IAO3B;;;;OAIG;IACH,OAAO,IAAI,MAAM;CAqBlB;AAED;;;;GAIG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAS;IAEhC;;;;;;OAMG;gBACS,OAAO,EAAE,aAAa;IAClC,+FAA+F;gBACnF,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,MAAM;IAW/C,iFAAiF;IACjF,IAAI,KAAK,IAAI,WAAW,CAEvB;IAED,sCAAsC;IACtC,IAAI,GAAG,IAAI,WAAW,CAErB;IAED,wEAAwE;IACxE,IAAI,OAAO,IAAI,WAAW,CAEzB;IAED,wCAAwC;IACxC,OAAO,IAAI,MAAM;CAGlB;AAED,+FAA+F;AAC/F,MAAM,MAAM,QAAQ,GAAG;IACrB,2CAA2C;IAC3C,gBAAgB,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAUF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACrD,KAAK,EAAE,CAAC,EACR,IAAI,GAAE;IAAE,IAAI,CAAC,EAAE,WAAW,CAAA;CAAO,GAChC;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM;CAAE,CAuB5B;AAED,6FAA6F;AAC7F,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,WAAW,CAAC;AAExD,iEAAiE;AACjE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAE9D"}
|
package/dist/engine/marker.js
CHANGED
|
@@ -25,6 +25,44 @@ function resolvePlacement(source, name) {
|
|
|
25
25
|
resolutionStack.pop();
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
|
+
function isMarkerSource(x) {
|
|
29
|
+
return typeof x._kmResolveMarker === "function";
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Source for a declared marker. `overlap` is the incoming overlap absorbed
|
|
33
|
+
* into `settled` — only `plan()` sets it; the public constructor path leaves
|
|
34
|
+
* it `0` so `settled === start`.
|
|
35
|
+
*/
|
|
36
|
+
function makeDeclaredSource(opts, overlap = 0) {
|
|
37
|
+
const { start = 0, durationInFrames } = opts;
|
|
38
|
+
// Presence check via `in`, not a read: `until` may be a getter onto a
|
|
39
|
+
// not-yet-constructed marker — it is only read lazily inside
|
|
40
|
+
// `_kmResolveMarker`, which is what lets declared markers chain in any
|
|
41
|
+
// construction order (and lets the circularity guard fire on real cycles).
|
|
42
|
+
const hasUntil = "until" in opts;
|
|
43
|
+
if ((durationInFrames === undefined) === !hasUntil) {
|
|
44
|
+
throw new Error("Marker: provide exactly one of durationInFrames or until");
|
|
45
|
+
}
|
|
46
|
+
if (durationInFrames !== undefined &&
|
|
47
|
+
(!Number.isInteger(durationInFrames) || durationInFrames <= 0)) {
|
|
48
|
+
throw new Error("Marker: durationInFrames must be a positive integer");
|
|
49
|
+
}
|
|
50
|
+
if (typeof start === "number" && (!Number.isInteger(start) || start < 0)) {
|
|
51
|
+
throw new Error("Marker: start must be a non-negative integer");
|
|
52
|
+
}
|
|
53
|
+
return {
|
|
54
|
+
_kmResolveMarker() {
|
|
55
|
+
const from = resolveFrameAnchor(start);
|
|
56
|
+
const end = durationInFrames !== undefined
|
|
57
|
+
? from + durationInFrames
|
|
58
|
+
: resolveFrameAnchor(opts.until);
|
|
59
|
+
if (end <= from) {
|
|
60
|
+
throw new Error(`Marker: until (${end}) must be after start (${from})`);
|
|
61
|
+
}
|
|
62
|
+
return { from, end, settled: from + overlap };
|
|
63
|
+
},
|
|
64
|
+
};
|
|
65
|
+
}
|
|
28
66
|
/**
|
|
29
67
|
* One anchorable point of a marked scene (`start`, `end`, or `settled`),
|
|
30
68
|
* optionally shifted by an integer frame delta. Immutable: `add()` returns a
|
|
@@ -72,16 +110,22 @@ export class MarkerPoint {
|
|
|
72
110
|
}
|
|
73
111
|
}
|
|
74
112
|
/**
|
|
75
|
-
* Handle onto a marked scene
|
|
76
|
-
* bare `Marker` as a {@link FrameAnchor}
|
|
113
|
+
* Handle onto a marked scene, or a directly declared time range. Exposes the
|
|
114
|
+
* three anchorable points; using the bare `Marker` as a {@link FrameAnchor}
|
|
115
|
+
* means its `.start`.
|
|
77
116
|
*/
|
|
78
117
|
export class Marker {
|
|
79
118
|
_source;
|
|
80
119
|
_name;
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
120
|
+
constructor(sourceOrOptions, name) {
|
|
121
|
+
if (isMarkerSource(sourceOrOptions)) {
|
|
122
|
+
this._source = sourceOrOptions;
|
|
123
|
+
this._name = name;
|
|
124
|
+
}
|
|
125
|
+
else {
|
|
126
|
+
this._source = makeDeclaredSource(sourceOrOptions);
|
|
127
|
+
this._name = undefined;
|
|
128
|
+
}
|
|
85
129
|
}
|
|
86
130
|
/** The scene's window-open frame (under a transition: the transition begins). */
|
|
87
131
|
get start() {
|
|
@@ -100,6 +144,49 @@ export class Marker {
|
|
|
100
144
|
return this.start.resolve();
|
|
101
145
|
}
|
|
102
146
|
}
|
|
147
|
+
/** Shift a {@link FrameAnchor} by `n` frames without resolving it. */
|
|
148
|
+
function shiftAnchor(anchor, n) {
|
|
149
|
+
if (n === 0)
|
|
150
|
+
return anchor;
|
|
151
|
+
if (typeof anchor === "number")
|
|
152
|
+
return anchor + n;
|
|
153
|
+
const point = anchor instanceof Marker ? anchor.start : anchor;
|
|
154
|
+
return point.add(n);
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Lay out named beats back to back and return a `Marker` per key, in insertion
|
|
158
|
+
* order. Sugar over chained `new Marker({...})`: the first beat starts at
|
|
159
|
+
* `opts.from` (default `0`, any anchor), each next beat at the previous end
|
|
160
|
+
* shifted by its `offset`. With a negative `offset` the beat's `settled` is
|
|
161
|
+
* `start + |offset|`, mirroring `Series`.
|
|
162
|
+
*
|
|
163
|
+
* ```ts
|
|
164
|
+
* const { intro, hero } = plan({
|
|
165
|
+
* intro: { durationInFrames: 5 * fps },
|
|
166
|
+
* hero: { durationInFrames: 10 * fps, offset: -10 },
|
|
167
|
+
* });
|
|
168
|
+
* new Sequence({ span: hero });
|
|
169
|
+
* ```
|
|
170
|
+
*/
|
|
171
|
+
export function plan(steps, opts = {}) {
|
|
172
|
+
const names = Object.keys(steps);
|
|
173
|
+
if (names.length === 0) {
|
|
174
|
+
throw new Error("plan: at least one step is required");
|
|
175
|
+
}
|
|
176
|
+
const out = {};
|
|
177
|
+
let prevEnd = opts.from ?? 0;
|
|
178
|
+
for (const name of names) {
|
|
179
|
+
const step = steps[name];
|
|
180
|
+
const offset = step.offset ?? 0;
|
|
181
|
+
if (!Number.isInteger(offset)) {
|
|
182
|
+
throw new Error(`plan: "${name}" offset must be an integer (got ${offset})`);
|
|
183
|
+
}
|
|
184
|
+
const marker = new Marker(makeDeclaredSource({ start: shiftAnchor(prevEnd, offset), durationInFrames: step.durationInFrames }, Math.max(0, -offset)));
|
|
185
|
+
out[name] = marker;
|
|
186
|
+
prevEnd = marker.end;
|
|
187
|
+
}
|
|
188
|
+
return out;
|
|
189
|
+
}
|
|
103
190
|
/** Resolve a {@link FrameAnchor} to a frame number. @internal */
|
|
104
191
|
export function resolveFrameAnchor(anchor) {
|
|
105
192
|
return typeof anchor === "number" ? anchor : anchor.resolve();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"marker.js","sourceRoot":"","sources":["../../src/engine/marker.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA2BH,yEAAyE;AACzE,iEAAiE;AACjE,4DAA4D;AAC5D,MAAM,eAAe,GAA8D,EAAE,CAAC;AAEtF,SAAS,gBAAgB,CAAC,MAAoB,EAAE,IAAwB;IACtE,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;QACpC,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CACb,+CAA+C,IAAI,IAAI,YAAY,6CAA6C,CACjH,CAAC;QACJ,CAAC;IACH,CAAC;IACD,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;YAAS,CAAC;QACT,eAAe,CAAC,GAAG,EAAE,CAAC;IACxB,CAAC;AACH,CAAC;
|
|
1
|
+
{"version":3,"file":"marker.js","sourceRoot":"","sources":["../../src/engine/marker.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,12 @@ export type SequenceOptions = Konva.LayerConfig & {
|
|
|
20
20
|
* {@link durationInFrames}.
|
|
21
21
|
*/
|
|
22
22
|
until?: FrameAnchor;
|
|
23
|
+
/**
|
|
24
|
+
* Span exactly this marker's range — sugar for
|
|
25
|
+
* `{ from: marker.start, until: marker.end }`. Mutually exclusive with
|
|
26
|
+
* `from`, `durationInFrames`, and `until`.
|
|
27
|
+
*/
|
|
28
|
+
span?: Marker;
|
|
23
29
|
};
|
|
24
30
|
export type Updater = (localFrame: number) => void;
|
|
25
31
|
/**
|
|
@@ -39,8 +45,23 @@ export declare class Sequence extends Konva.Layer implements MarkerSource {
|
|
|
39
45
|
private readonly _updaters;
|
|
40
46
|
private _active;
|
|
41
47
|
private _media;
|
|
48
|
+
private _mediaDirty;
|
|
42
49
|
private _lastLocal;
|
|
43
50
|
constructor(opts?: SequenceOptions);
|
|
51
|
+
/**
|
|
52
|
+
* Konva's `add`, plus a tickable-cache invalidation: media/text-ticker nodes
|
|
53
|
+
* added to an already-active Sequence (the usual `comp.add(seq)` then
|
|
54
|
+
* `seq.add(video)` order) must still join the frame loop. Direct adds cover
|
|
55
|
+
* the common case; nodes buried inside a subtree that is itself added here are
|
|
56
|
+
* caught too, because {@link _tickables} re-`find()`s the whole subtree.
|
|
57
|
+
*/
|
|
58
|
+
add(...children: (Konva.Group | Konva.Shape)[]): this;
|
|
59
|
+
/**
|
|
60
|
+
* The cached media/text-ticker descendants, rebuilt only when the subtree
|
|
61
|
+
* changed since the last walk. Includes media (`MEDIA_MARK`) plus non-media
|
|
62
|
+
* tickers (`TICK_MARK`, e.g. a Text typewriter).
|
|
63
|
+
*/
|
|
64
|
+
private _tickables;
|
|
44
65
|
/**
|
|
45
66
|
* Composition frame this sequence starts on. Marker-valued `from` resolves
|
|
46
67
|
* on every read (live, like {@link durationInFrames}), so retiming the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sequence.d.ts","sourceRoot":"","sources":["../../src/engine/sequence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EACL,KAAK,WAAW,EAChB,MAAM,EACN,KAAK,YAAY,EAEjB,KAAK,cAAc,EACpB,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,GAAG;IAChD;;;;OAIG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"sequence.d.ts","sourceRoot":"","sources":["../../src/engine/sequence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EACL,KAAK,WAAW,EAChB,MAAM,EACN,KAAK,YAAY,EAEjB,KAAK,cAAc,EACpB,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,GAAG;IAChD;;;;OAIG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;AAEnD;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAAE,SAAS,IAAI,QAAQ,EAAE,CAAA;CAAE,CAAC;AAQ3D,qBAAa,QAAS,SAAQ,KAAK,CAAC,KAAM,YAAW,YAAY;IAC/D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;IACpC,oFAAoF;IACpF,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAS;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsB;IAChD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAmB;IAOjC,OAAO,CAAC,WAAW,CAAQ;IAI3B,OAAO,CAAC,UAAU,CAAM;gBAEZ,IAAI,GAAE,eAAoB;IA+BtC;;;;;;OAMG;IACM,GAAG,CAAC,GAAG,QAAQ,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI;IAM9D;;;;OAIG;IACH,OAAO,CAAC,UAAU;IAUlB;;;;OAIG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;;;;;OAQG;IACH,IAAI,gBAAgB,IAAI,MAAM,CAc7B;IAED;;;;OAIG;IACH,MAAM,IAAI,MAAM;IAIhB,8EAA8E;IAC9E,gBAAgB,IAAI,cAAc;IAKlC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,IAAI;IAOtC;;;;;;;;;OASG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,IAAI;IA0B1C;;;;;;;;OAQG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI;IAiBpD;;;OAGG;IACH,YAAY,IAAI,MAAM,GAAG,IAAI;IAI7B;;;;;OAKG;IACH,OAAO,IAAI,IAAI;CAOhB"}
|
package/dist/engine/sequence.js
CHANGED
|
@@ -11,12 +11,23 @@ export class Sequence extends Konva.Layer {
|
|
|
11
11
|
_updaters = new Set();
|
|
12
12
|
_active = false;
|
|
13
13
|
_media = [];
|
|
14
|
+
// Tickable cache is rebuilt lazily: `_apply` caches the media/tick subtree once
|
|
15
|
+
// per activation to avoid a `find()` every frame, but the subtree can still
|
|
16
|
+
// change *after* activation — a Composition activates a Sequence the moment it
|
|
17
|
+
// is added (to paint frame 0), and `comp.add(seq)` is commonly followed by
|
|
18
|
+
// `seq.add(video)`. Marking the cache dirty on every `add` keeps late-added
|
|
19
|
+
// media (and text tickers) from being silently dropped from the frame loop.
|
|
20
|
+
_mediaDirty = true;
|
|
14
21
|
// Last local frame applied while active — used to skip redundant re-applies
|
|
15
22
|
// (updaters + layout + draw) when nothing about the playhead changed. `-1` is
|
|
16
23
|
// a sentinel that never equals a real local frame, so the first apply always runs.
|
|
17
24
|
_lastLocal = -1;
|
|
18
25
|
constructor(opts = {}) {
|
|
19
|
-
const { from = 0, durationInFrames, until, ...layerOpts } = opts;
|
|
26
|
+
const { from = 0, durationInFrames, until, span, ...layerOpts } = opts;
|
|
27
|
+
if (span !== undefined &&
|
|
28
|
+
("from" in opts || durationInFrames !== undefined || until !== undefined)) {
|
|
29
|
+
throw new Error("Sequence: span is mutually exclusive with from/durationInFrames/until");
|
|
30
|
+
}
|
|
20
31
|
if (typeof from === "number" && (!Number.isInteger(from) || from < 0)) {
|
|
21
32
|
throw new Error("Sequence: from must be a non-negative integer");
|
|
22
33
|
}
|
|
@@ -33,9 +44,33 @@ export class Sequence extends Konva.Layer {
|
|
|
33
44
|
throw new Error("Sequence: until must be a positive integer frame");
|
|
34
45
|
}
|
|
35
46
|
super({ ...layerOpts, visible: false });
|
|
36
|
-
this._from = from;
|
|
47
|
+
this._from = span !== undefined ? span.start : from;
|
|
37
48
|
this._durationInFrames = durationInFrames;
|
|
38
|
-
this._until = until;
|
|
49
|
+
this._until = span !== undefined ? span.end : until;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Konva's `add`, plus a tickable-cache invalidation: media/text-ticker nodes
|
|
53
|
+
* added to an already-active Sequence (the usual `comp.add(seq)` then
|
|
54
|
+
* `seq.add(video)` order) must still join the frame loop. Direct adds cover
|
|
55
|
+
* the common case; nodes buried inside a subtree that is itself added here are
|
|
56
|
+
* caught too, because {@link _tickables} re-`find()`s the whole subtree.
|
|
57
|
+
*/
|
|
58
|
+
add(...children) {
|
|
59
|
+
super.add(...children);
|
|
60
|
+
this._mediaDirty = true;
|
|
61
|
+
return this;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* The cached media/text-ticker descendants, rebuilt only when the subtree
|
|
65
|
+
* changed since the last walk. Includes media (`MEDIA_MARK`) plus non-media
|
|
66
|
+
* tickers (`TICK_MARK`, e.g. a Text typewriter).
|
|
67
|
+
*/
|
|
68
|
+
_tickables() {
|
|
69
|
+
if (this._mediaDirty) {
|
|
70
|
+
this._media = this.find((n) => n.getAttr(MEDIA_MARK) === true || n.getAttr(TICK_MARK) === true);
|
|
71
|
+
this._mediaDirty = false;
|
|
72
|
+
}
|
|
73
|
+
return this._media;
|
|
39
74
|
}
|
|
40
75
|
/**
|
|
41
76
|
* Composition frame this sequence starts on. Marker-valued `from` resolves
|
|
@@ -106,9 +141,6 @@ export class Sequence extends Konva.Layer {
|
|
|
106
141
|
if (becameActive) {
|
|
107
142
|
this.visible(true);
|
|
108
143
|
this._active = true;
|
|
109
|
-
// Cache tickable nodes once per activation — avoids a subtree walk every
|
|
110
|
-
// frame. Includes media (video/audio) plus non-media tickers (Text typewriter).
|
|
111
|
-
this._media = this.find((n) => n.getAttr(MEDIA_MARK) === true || n.getAttr(TICK_MARK) === true);
|
|
112
144
|
}
|
|
113
145
|
const local = frame - this.from;
|
|
114
146
|
// Skip redundant work: same playhead, already active, and not forced.
|
|
@@ -142,11 +174,7 @@ export class Sequence extends Konva.Layer {
|
|
|
142
174
|
* seeks.
|
|
143
175
|
*/
|
|
144
176
|
_kmRunFrame(local, tickMedia) {
|
|
145
|
-
|
|
146
|
-
// activation), so collect on demand.
|
|
147
|
-
const tickables = this._active
|
|
148
|
-
? this._media
|
|
149
|
-
: this.find((n) => n.getAttr(MEDIA_MARK) === true || n.getAttr(TICK_MARK) === true);
|
|
177
|
+
const tickables = this._tickables();
|
|
150
178
|
for (const u of this._updaters)
|
|
151
179
|
u(local);
|
|
152
180
|
// Tick BEFORE layout: a ticked node may change its measured size (e.g. a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sequence.js","sourceRoot":"","sources":["../../src/engine/sequence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAEL,MAAM,EAEN,kBAAkB,GAEnB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"sequence.js","sourceRoot":"","sources":["../../src/engine/sequence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAEL,MAAM,EAEN,kBAAkB,GAEnB,MAAM,aAAa,CAAC;AA8CrB,MAAM,OAAO,QAAS,SAAQ,KAAK,CAAC,KAAK;IACtB,KAAK,CAAc;IACpC,oFAAoF;IACnE,iBAAiB,CAAU;IAC3B,MAAM,CAAe;IACrB,SAAS,GAAG,IAAI,GAAG,EAAW,CAAC;IACxC,OAAO,GAAG,KAAK,CAAC;IAChB,MAAM,GAAgB,EAAE,CAAC;IACjC,gFAAgF;IAChF,4EAA4E;IAC5E,+EAA+E;IAC/E,2EAA2E;IAC3E,4EAA4E;IAC5E,4EAA4E;IACpE,WAAW,GAAG,IAAI,CAAC;IAC3B,4EAA4E;IAC5E,8EAA8E;IAC9E,mFAAmF;IAC3E,UAAU,GAAG,CAAC,CAAC,CAAC;IAExB,YAAY,OAAwB,EAAE;QACpC,MAAM,EAAE,IAAI,GAAG,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,GAAG,IAAI,CAAC;QACvE,IACE,IAAI,KAAK,SAAS;YAClB,CAAC,MAAM,IAAI,IAAI,IAAI,gBAAgB,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,CAAC,EACzE,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;QAC3F,CAAC;QACD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC;YACtE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,gBAAgB,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC1D,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;QAC/F,CAAC;QACD,4EAA4E;QAC5E,yEAAyE;QACzE,IACE,gBAAgB,KAAK,SAAS;YAC9B,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,gBAAgB,IAAI,CAAC,CAAC,EAC9D,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC;YAC1E,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QACD,KAAK,CAAC,EAAE,GAAG,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QACpD,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;QAC1C,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;IACtD,CAAC;IAED;;;;;;OAMG;IACM,GAAG,CAAC,GAAG,QAAuC;QACrD,KAAK,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACK,UAAU;QAChB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CACrB,CAAC,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,IAAI,CACpE,CAAC;YACjB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAC3B,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,IAAI,IAAI;QACN,OAAO,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;;OAQG;IACH,IAAI,gBAAgB;QAClB,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACvB,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9C,MAAM,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,oBAAoB,KAAK,yBAAyB,IAAI,GAAG,CAAC,CAAC;YAC7E,CAAC;YACD,OAAO,CAAC,CAAC;QACX,CAAC;QACD,IAAI,IAAI,CAAC,iBAAiB,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,iBAAiB,CAAC;QACxE,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,KAAK,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC;IACvE,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,8EAA8E;IAC9E,gBAAgB;QACd,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,GAAG,IAAI,CAAC,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACpE,CAAC;IAED,QAAQ,CAAC,OAAgB;QACvB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5B,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACH,MAAM,CAAC,KAAa,EAAE,KAAK,GAAG,KAAK;QACjC,MAAM,OAAO,GAAG,KAAK,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAChF,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;YACnC,IAAI,YAAY,EAAE,CAAC;gBACjB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACnB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACtB,CAAC;YACD,MAAM,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;YAChC,sEAAsE;YACtE,IAAI,CAAC,YAAY,IAAI,CAAC,KAAK,IAAI,KAAK,KAAK,IAAI,CAAC,UAAU;gBAAE,OAAO;YACjE,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAC9B,0EAA0E;YAC1E,uEAAuE;YACvE,qEAAqE;YACrE,IAAI,YAAY;gBAAE,IAAI,CAAC,IAAI,EAAE,CAAC;;gBACzB,IAAI,CAAC,SAAS,EAAE,CAAC;QACxB,CAAC;aAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACpB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;YACrB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM;gBAAE,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC;QACnD,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,WAAW,CAAC,KAAa,EAAE,SAAkB;QAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACpC,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS;YAAE,CAAC,CAAC,KAAK,CAAC,CAAC;QACzC,yEAAyE;QACzE,0EAA0E;QAC1E,6DAA6D;QAC7D,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC;gBAClF,SAAS;YACX,CAAC;YACD,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACnC,IAAI,cAAc,CAAC,CAAC,CAAC;gBAAE,CAAC,CAAC,gBAAgB,EAAE,CAAC;QAC9C,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/C,CAAC;IAED;;;;;OAKG;IACH,OAAO;QACL,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YAAE,OAAO;QAC7C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;QACrB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM;YAAE,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC;IACnD,CAAC;CACF"}
|
package/dist/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ export { type ExtrapolateType, type InterpolateOptions, interpolate, } from "./a
|
|
|
3
3
|
export { interpolateColors } from "./animation/interpolate-colors.js";
|
|
4
4
|
export { type BufferState, Composition, type CompositionEvent, type CompositionEventMap, type CompositionEventName, type CompositionOptions, getComposition, } from "./engine/composition.js";
|
|
5
5
|
export { detectEnvironment, type Environment, type EnvironmentMode, getEnvironment, } from "./engine/environment.js";
|
|
6
|
-
export { type FrameAnchor, Marker, type MarkerKind, MarkerPoint, type MarkerSource, resolveFrameAnchor, type ScenePlacement, } from "./engine/marker.js";
|
|
6
|
+
export { type FrameAnchor, Marker, type MarkerKind, type MarkerOptions, MarkerPoint, type MarkerSource, type PlanStep, plan, resolveFrameAnchor, type ScenePlacement, } from "./engine/marker.js";
|
|
7
7
|
export { type ComputeOffsetsResult, computeOffsets, type OffsetScene, type PlacedScene, } from "./engine/offsets.js";
|
|
8
8
|
export { type FontFaceDescriptor, type FontLoader, getDefaultAudioSourceFactory, getDefaultFontLoader, getDefaultImageLoader, getDefaultVideoSourceFactory, type ImageLoader, type LoadedImage, loadFontFace, setDefaultAudioSourceFactory, setDefaultFontLoader, setDefaultImageLoader, setDefaultVideoSourceFactory, } from "./engine/runtime-defaults.js";
|
|
9
9
|
export { Sequence, type SequenceOptions, type SequenceProvider, type Updater, } from "./engine/sequence.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,WAAW,GACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EACL,KAAK,WAAW,EAChB,WAAW,EACX,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,cAAc,GACf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,iBAAiB,EACjB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,cAAc,GACf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,KAAK,WAAW,EAChB,MAAM,EACN,KAAK,UAAU,EACf,WAAW,EACX,KAAK,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ export { interpolate, } from "./animation/interpolate.js";
|
|
|
3
3
|
export { interpolateColors } from "./animation/interpolate-colors.js";
|
|
4
4
|
export { Composition, getComposition, } from "./engine/composition.js";
|
|
5
5
|
export { detectEnvironment, getEnvironment, } from "./engine/environment.js";
|
|
6
|
-
export { Marker, MarkerPoint,
|
|
6
|
+
export { Marker, MarkerPoint, plan,
|
|
7
7
|
// @internal — anchor resolution reused by @smoove/transitions.
|
|
8
8
|
resolveFrameAnchor, } from "./engine/marker.js";
|
|
9
9
|
export {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAGL,WAAW,GACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAEL,WAAW,EAKX,cAAc,GACf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,iBAAiB,EAGjB,cAAc,GACf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAGL,WAAW,GACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAEL,WAAW,EAKX,cAAc,GACf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,iBAAiB,EAGjB,cAAc,GACf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,MAAM,EAGN,WAAW,EAGX,IAAI;AACJ,+DAA+D;AAC/D,kBAAkB,GAEnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO;AAEL,2DAA2D;AAC3D,cAAc,GAGf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAGL,4BAA4B,EAC5B,oBAAoB,EACpB,qBAAqB,EACrB,4BAA4B,EAG5B,YAAY,EACZ,4BAA4B,EAC5B,oBAAoB,EACpB,qBAAqB,EACrB,4BAA4B,GAC7B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,QAAQ,GAIT,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,MAAM,GAGP,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAoC,MAAM,oBAAoB,CAAC;AACpF,OAAO,EAEL,KAAK,GAMN,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,cAAc,EACd,cAAc,GAKf,MAAM,sBAAsB,CAAC;AAC9B,OAAO;AACL,wEAAwE;AACxE,SAAS,EAET,SAAS,GACV,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAmB,MAAM,wBAAwB,CAAC;AAYpE,+EAA+E;AAC/E,8EAA8E;AAC9E,iFAAiF;AACjF,OAAO,EAAE,KAAK,EAAoB,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EACL,KAAK,GAIN,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAKL,OAAO,GACR,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,GAAG,EAEH,KAAK,EAEL,MAAM,EAEN,OAAO,EAEP,IAAI,EAEJ,IAAI,EAEJ,IAAI,EAEJ,cAAc,EAEd,IAAI,EAEJ,MAAM,EAEN,IAAI,EAEJ,QAAQ,EAER,KAAK,GAEN,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,IAAI,GAKL,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAQ7C,OAAO,EACL,UAAU,EACV,SAAS,EACT,UAAU,EACV,WAAW,EACX,WAAW,EACX,UAAU,EACV,SAAS,EACT,UAAU,GACX,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAqB,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAoB,MAAM,uBAAuB,CAAC"}
|
package/package.json
CHANGED