modern-canvas 0.12.8 → 0.12.10
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/index.cjs +36 -6
- package/dist/index.d.cts +9 -4
- package/dist/index.d.mts +9 -4
- package/dist/index.d.ts +9 -4
- package/dist/index.js +17 -17
- package/dist/index.mjs +36 -6
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -7152,7 +7152,7 @@ exports.Timeline = class Timeline extends exports.Node {
|
|
|
7152
7152
|
}
|
|
7153
7153
|
_process(delta) {
|
|
7154
7154
|
super._process(delta);
|
|
7155
|
-
if (!this.
|
|
7155
|
+
if (!this.paused) {
|
|
7156
7156
|
this.addTime(delta);
|
|
7157
7157
|
}
|
|
7158
7158
|
}
|
|
@@ -7171,7 +7171,7 @@ __decorateClass$H([
|
|
|
7171
7171
|
], exports.Timeline.prototype, "loop", 2);
|
|
7172
7172
|
__decorateClass$H([
|
|
7173
7173
|
modernIdoc.property({ fallback: false })
|
|
7174
|
-
], exports.Timeline.prototype, "
|
|
7174
|
+
], exports.Timeline.prototype, "paused", 2);
|
|
7175
7175
|
exports.Timeline = __decorateClass$H([
|
|
7176
7176
|
customNode("Timeline")
|
|
7177
7177
|
], exports.Timeline);
|
|
@@ -10335,7 +10335,7 @@ __decorateClass$f([
|
|
|
10335
10335
|
modernIdoc.property({ alias: "base.fonts" })
|
|
10336
10336
|
], BaseElement2DText.prototype, "fonts");
|
|
10337
10337
|
__decorateClass$f([
|
|
10338
|
-
modernIdoc.property({
|
|
10338
|
+
modernIdoc.property({ fallback: "auto" })
|
|
10339
10339
|
], BaseElement2DText.prototype, "drawMode");
|
|
10340
10340
|
|
|
10341
10341
|
var __getOwnPropDesc$c = Object.getOwnPropertyDescriptor;
|
|
@@ -14095,7 +14095,16 @@ async function start(sleep = 100) {
|
|
|
14095
14095
|
starting = false;
|
|
14096
14096
|
}
|
|
14097
14097
|
async function task(options) {
|
|
14098
|
-
const {
|
|
14098
|
+
const {
|
|
14099
|
+
debug = false,
|
|
14100
|
+
fonts,
|
|
14101
|
+
width,
|
|
14102
|
+
height,
|
|
14103
|
+
data,
|
|
14104
|
+
keyframes = [],
|
|
14105
|
+
onBefore,
|
|
14106
|
+
onFrame
|
|
14107
|
+
} = options;
|
|
14099
14108
|
engine ??= new Engine({
|
|
14100
14109
|
pixelRatio: 1,
|
|
14101
14110
|
width: 1,
|
|
@@ -14104,8 +14113,8 @@ async function task(options) {
|
|
|
14104
14113
|
});
|
|
14105
14114
|
engine.debug = debug;
|
|
14106
14115
|
engine.fonts = fonts;
|
|
14116
|
+
engine.timeline.currentTime = 0;
|
|
14107
14117
|
engine.root.removeChildren();
|
|
14108
|
-
engine.timeline.currentTime = time;
|
|
14109
14118
|
engine.resize(width, height, true);
|
|
14110
14119
|
(Array.isArray(data) ? data : [data]).forEach((v) => {
|
|
14111
14120
|
if (v instanceof exports.Node) {
|
|
@@ -14115,8 +14124,29 @@ async function task(options) {
|
|
|
14115
14124
|
engine.root.appendChild(exports.Node.parse(v));
|
|
14116
14125
|
}
|
|
14117
14126
|
});
|
|
14118
|
-
await
|
|
14127
|
+
await onBefore?.(engine);
|
|
14119
14128
|
await engine.waitAndRender();
|
|
14129
|
+
await new Promise((resolve) => {
|
|
14130
|
+
let i = 0;
|
|
14131
|
+
const len = keyframes.length;
|
|
14132
|
+
const last = keyframes[len - 1];
|
|
14133
|
+
async function handle() {
|
|
14134
|
+
if (i === len)
|
|
14135
|
+
return resolve();
|
|
14136
|
+
const currentTime = keyframes[i++];
|
|
14137
|
+
const next = keyframes[i] || currentTime;
|
|
14138
|
+
const duration = next - currentTime;
|
|
14139
|
+
engine.timeline.currentTime = currentTime;
|
|
14140
|
+
engine.render();
|
|
14141
|
+
await onFrame?.(engine.toPixels(), {
|
|
14142
|
+
currentTime,
|
|
14143
|
+
duration,
|
|
14144
|
+
progress: currentTime / last
|
|
14145
|
+
});
|
|
14146
|
+
requestAnimationFrame(handle);
|
|
14147
|
+
}
|
|
14148
|
+
handle();
|
|
14149
|
+
});
|
|
14120
14150
|
return engine.toCanvas2D();
|
|
14121
14151
|
}
|
|
14122
14152
|
async function render(options) {
|
package/dist/index.d.cts
CHANGED
|
@@ -1554,7 +1554,7 @@ interface TimelineProperties extends NodeProperties {
|
|
|
1554
1554
|
currentTime: number;
|
|
1555
1555
|
endTime: number;
|
|
1556
1556
|
loop: boolean;
|
|
1557
|
-
|
|
1557
|
+
paused: boolean;
|
|
1558
1558
|
}
|
|
1559
1559
|
interface Timeline {
|
|
1560
1560
|
on: <K extends keyof TimelineEvents & string>(event: K, listener: (...args: TimelineEvents[K]) => void) => this;
|
|
@@ -1567,7 +1567,7 @@ declare class Timeline extends Node {
|
|
|
1567
1567
|
currentTime: number;
|
|
1568
1568
|
endTime: number;
|
|
1569
1569
|
loop: boolean;
|
|
1570
|
-
|
|
1570
|
+
paused: boolean;
|
|
1571
1571
|
static from(range: number | number[], loop?: boolean): Timeline;
|
|
1572
1572
|
constructor(properties?: Partial<TimelineProperties>);
|
|
1573
1573
|
protected _updateProperty(key: string, value: any, oldValue: any): void;
|
|
@@ -3256,9 +3256,14 @@ interface RenderOptions {
|
|
|
3256
3256
|
width: number;
|
|
3257
3257
|
height: number;
|
|
3258
3258
|
debug?: boolean;
|
|
3259
|
-
time?: number;
|
|
3260
3259
|
fonts?: Fonts;
|
|
3261
|
-
|
|
3260
|
+
keyframes?: number[];
|
|
3261
|
+
onBefore?: (engine: Engine) => void | Promise<void>;
|
|
3262
|
+
onFrame?: (frame: Uint8ClampedArray, ctx: {
|
|
3263
|
+
currentTime: number;
|
|
3264
|
+
duration: number;
|
|
3265
|
+
progress: number;
|
|
3266
|
+
}) => Promise<void>;
|
|
3262
3267
|
}
|
|
3263
3268
|
declare function render(options: RenderOptions): Promise<HTMLCanvasElement>;
|
|
3264
3269
|
|
package/dist/index.d.mts
CHANGED
|
@@ -1554,7 +1554,7 @@ interface TimelineProperties extends NodeProperties {
|
|
|
1554
1554
|
currentTime: number;
|
|
1555
1555
|
endTime: number;
|
|
1556
1556
|
loop: boolean;
|
|
1557
|
-
|
|
1557
|
+
paused: boolean;
|
|
1558
1558
|
}
|
|
1559
1559
|
interface Timeline {
|
|
1560
1560
|
on: <K extends keyof TimelineEvents & string>(event: K, listener: (...args: TimelineEvents[K]) => void) => this;
|
|
@@ -1567,7 +1567,7 @@ declare class Timeline extends Node {
|
|
|
1567
1567
|
currentTime: number;
|
|
1568
1568
|
endTime: number;
|
|
1569
1569
|
loop: boolean;
|
|
1570
|
-
|
|
1570
|
+
paused: boolean;
|
|
1571
1571
|
static from(range: number | number[], loop?: boolean): Timeline;
|
|
1572
1572
|
constructor(properties?: Partial<TimelineProperties>);
|
|
1573
1573
|
protected _updateProperty(key: string, value: any, oldValue: any): void;
|
|
@@ -3256,9 +3256,14 @@ interface RenderOptions {
|
|
|
3256
3256
|
width: number;
|
|
3257
3257
|
height: number;
|
|
3258
3258
|
debug?: boolean;
|
|
3259
|
-
time?: number;
|
|
3260
3259
|
fonts?: Fonts;
|
|
3261
|
-
|
|
3260
|
+
keyframes?: number[];
|
|
3261
|
+
onBefore?: (engine: Engine) => void | Promise<void>;
|
|
3262
|
+
onFrame?: (frame: Uint8ClampedArray, ctx: {
|
|
3263
|
+
currentTime: number;
|
|
3264
|
+
duration: number;
|
|
3265
|
+
progress: number;
|
|
3266
|
+
}) => Promise<void>;
|
|
3262
3267
|
}
|
|
3263
3268
|
declare function render(options: RenderOptions): Promise<HTMLCanvasElement>;
|
|
3264
3269
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1554,7 +1554,7 @@ interface TimelineProperties extends NodeProperties {
|
|
|
1554
1554
|
currentTime: number;
|
|
1555
1555
|
endTime: number;
|
|
1556
1556
|
loop: boolean;
|
|
1557
|
-
|
|
1557
|
+
paused: boolean;
|
|
1558
1558
|
}
|
|
1559
1559
|
interface Timeline {
|
|
1560
1560
|
on: <K extends keyof TimelineEvents & string>(event: K, listener: (...args: TimelineEvents[K]) => void) => this;
|
|
@@ -1567,7 +1567,7 @@ declare class Timeline extends Node {
|
|
|
1567
1567
|
currentTime: number;
|
|
1568
1568
|
endTime: number;
|
|
1569
1569
|
loop: boolean;
|
|
1570
|
-
|
|
1570
|
+
paused: boolean;
|
|
1571
1571
|
static from(range: number | number[], loop?: boolean): Timeline;
|
|
1572
1572
|
constructor(properties?: Partial<TimelineProperties>);
|
|
1573
1573
|
protected _updateProperty(key: string, value: any, oldValue: any): void;
|
|
@@ -3256,9 +3256,14 @@ interface RenderOptions {
|
|
|
3256
3256
|
width: number;
|
|
3257
3257
|
height: number;
|
|
3258
3258
|
debug?: boolean;
|
|
3259
|
-
time?: number;
|
|
3260
3259
|
fonts?: Fonts;
|
|
3261
|
-
|
|
3260
|
+
keyframes?: number[];
|
|
3261
|
+
onBefore?: (engine: Engine) => void | Promise<void>;
|
|
3262
|
+
onFrame?: (frame: Uint8ClampedArray, ctx: {
|
|
3263
|
+
currentTime: number;
|
|
3264
|
+
duration: number;
|
|
3265
|
+
progress: number;
|
|
3266
|
+
}) => Promise<void>;
|
|
3262
3267
|
}
|
|
3263
3268
|
declare function render(options: RenderOptions): Promise<HTMLCanvasElement>;
|
|
3264
3269
|
|