@oidoid/void 0.1.0-6 → 0.1.0-7
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/meta.json +1 -1
- package/dist/package.json +5 -5
- package/dist/public/favicon/favicon16.png +0 -0
- package/dist/public/favicon/favicon16.webp +0 -0
- package/dist/public/favicon/favicon192.png +0 -0
- package/dist/public/favicon/favicon192.webp +0 -0
- package/dist/public/favicon/favicon32.png +0 -0
- package/dist/public/favicon/favicon32.webp +0 -0
- package/dist/public/favicon/favicon48.png +0 -0
- package/dist/public/favicon/favicon48.webp +0 -0
- package/dist/public/favicon/favicon64.png +0 -0
- package/dist/public/favicon/favicon64.webp +0 -0
- package/dist/public/index.js +12 -3758
- package/dist/public/index.js.map +4 -4
- package/dist/public/preload-atlas.png +0 -0
- package/dist/public/preload-atlas.webp +0 -0
- package/dist/public/void-v0.1.0-6+20251020.7cdf98d.html +111 -0
- package/dist/public/void-v0.1.0-6+20251020.e4e9eef.html +111 -0
- package/dist/public/void-v0.1.0-7+20251021.7cdf98d.html +111 -0
- package/dist/schema/config-file.v0.json +1 -1
- package/dist/src/demo/assets/manifest.json +10 -15
- package/dist/src/demo/ents/clock-ent.d.ts +2 -1
- package/dist/src/demo/ents/clock-ent.js.map +1 -1
- package/dist/src/demo/ents/render-toggle-ent.d.ts +3 -1
- package/dist/src/demo/ents/render-toggle-ent.js +3 -0
- package/dist/src/demo/ents/render-toggle-ent.js.map +1 -1
- package/dist/src/demo/ents/work-counter-ent.d.ts +2 -2
- package/dist/src/demo/ents/work-counter-ent.js +1 -5
- package/dist/src/demo/ents/work-counter-ent.js.map +1 -1
- package/dist/src/demo/game.d.ts +1 -2
- package/dist/src/demo/game.js +14 -34
- package/dist/src/demo/game.js.map +1 -1
- package/dist/src/demo/void.json +1 -1
- package/dist/src/ents/button-ent.d.ts +2 -1
- package/dist/src/ents/button-ent.js +7 -3
- package/dist/src/ents/button-ent.js.map +1 -1
- package/dist/src/ents/cursor-ent.d.ts +2 -2
- package/dist/src/ents/cursor-ent.js +7 -2
- package/dist/src/ents/cursor-ent.js.map +1 -1
- package/dist/src/ents/ent.d.ts +3 -3
- package/dist/src/ents/follow-cam-ent.d.ts +1 -1
- package/dist/src/ents/nine-patch-ent.d.ts +1 -1
- package/dist/src/ents/text-ent.d.ts +1 -1
- package/dist/src/ents/zoo.d.ts +4 -3
- package/dist/src/ents/zoo.js +11 -4
- package/dist/src/ents/zoo.js.map +1 -1
- package/dist/src/graphics/cam.js +10 -1
- package/dist/src/graphics/cam.js.map +1 -1
- package/dist/src/graphics/renderer.d.ts +18 -4
- package/dist/src/graphics/renderer.js +20 -8
- package/dist/src/graphics/renderer.js.map +1 -1
- package/dist/src/graphics/sprite.d.ts +1 -1
- package/dist/src/graphics/sprite.js +4 -4
- package/dist/src/graphics/sprite.js.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/looper.d.ts +5 -3
- package/dist/src/looper.js +7 -4
- package/dist/src/looper.js.map +1 -1
- package/dist/src/types/void-version.d.ts +0 -2
- package/dist/src/types/void-version.js.map +1 -1
- package/dist/src/utils/canvas-util.js +2 -2
- package/dist/src/utils/canvas-util.js.map +1 -1
- package/dist/src/utils/debug.d.ts +4 -2
- package/dist/src/utils/debug.js +4 -3
- package/dist/src/utils/debug.js.map +1 -1
- package/dist/src/utils/delay-interval.d.ts +7 -0
- package/dist/src/utils/delay-interval.js +29 -0
- package/dist/src/utils/delay-interval.js.map +1 -0
- package/dist/src/utils/dom-util.d.ts +2 -2
- package/dist/src/utils/dom-util.js +15 -15
- package/dist/src/utils/dom-util.js.map +1 -1
- package/dist/src/void.d.ts +8 -3
- package/dist/src/void.js +22 -15
- package/dist/src/void.js.map +1 -1
- package/dist/tools/atlas-pack/atlas-pack.d.ts +1 -1
- package/dist/tools/atlas-pack/atlas-pack.js +10 -5
- package/dist/tools/atlas-pack/atlas-pack.js.map +1 -1
- package/dist/tools/bundle/bundle.js +4 -4
- package/dist/tools/bundle/bundle.js.map +1 -1
- package/dist/tools/bundle/html-plugin.js +6 -4
- package/dist/tools/bundle/html-plugin.js.map +1 -1
- package/dist/tools/tsconfig-base.json +4 -1
- package/dist/tools/tsconfig.json +1 -3
- package/dist/tools/types/config.d.ts +8 -1
- package/dist/tools/types/config.js +17 -8
- package/dist/tools/types/config.js.map +1 -1
- package/dist/tools/types/package-json.d.ts +4 -0
- package/dist/tools/types/package-json.js +2 -0
- package/dist/tools/types/package-json.js.map +1 -0
- package/dist/tools/void.d.ts +1 -3
- package/dist/tools/void.js +8 -7
- package/dist/tools/void.js.map +1 -1
- package/package.json +5 -5
- package/schema/config-file.test.ts +2 -2
- package/schema/config-file.v0.json +1 -1
- package/tools/atlas-pack/atlas-pack.ts +20 -7
- package/tools/bundle/bundle.ts +3 -4
- package/tools/bundle/html-plugin.ts +10 -10
- package/tools/types/config.ts +29 -7
- package/tools/types/package-json.ts +4 -0
- package/tools/void.ts +11 -10
- package/dist/public/favicon/favicon512.png +0 -0
- package/dist/public/index.html +0 -23
- package/dist/public/manifest.json +0 -1
- package/dist/public/void-v0.1.0-4.html +0 -111
- package/dist/public/void-v0.1.0-5.html +0 -111
- package/dist/public/void-v0.1.0-6.html +0 -111
- package/dist/src/pixel-ratio-observer.d.ts +0 -10
- package/dist/src/pixel-ratio-observer.js +0 -26
- package/dist/src/pixel-ratio-observer.js.map +0 -1
|
@@ -56,7 +56,7 @@ export async function downloadScreenshot(canvas, name) {
|
|
|
56
56
|
const env_1 = { stack: [], error: void 0, hasError: false };
|
|
57
57
|
try {
|
|
58
58
|
const img = __addDisposableResource(env_1, await screenshot(canvas), false);
|
|
59
|
-
download(img.uri, `${name}-screenshot-${dateToTimestamp(new Date())}.
|
|
59
|
+
download(img.uri, `${name}-screenshot-${dateToTimestamp(new Date())}.webp`);
|
|
60
60
|
}
|
|
61
61
|
catch (e_1) {
|
|
62
62
|
env_1.error = e_1;
|
|
@@ -122,7 +122,7 @@ export function screenshot(canvas) {
|
|
|
122
122
|
}
|
|
123
123
|
else
|
|
124
124
|
reject(Error('no blob'));
|
|
125
|
-
}, 'image/
|
|
125
|
+
}, 'image/webp');
|
|
126
126
|
});
|
|
127
127
|
}
|
|
128
128
|
//# sourceMappingURL=canvas-util.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canvas-util.js","sourceRoot":"","sources":["../../../src/utils/canvas-util.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAA;AAEtC,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAyB,EACzB,IAAY;;;QAEZ,MAAM,GAAG,kCAAG,MAAM,UAAU,CAAC,MAAM,CAAC,QAAA,CAAA;QACpC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,eAAe,eAAe,CAAC,IAAI,IAAI,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"canvas-util.js","sourceRoot":"","sources":["../../../src/utils/canvas-util.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* proxy for debug CSV query param with case-insensitive keys. when a key
|
|
3
|
-
* exists, the value is as specified or `'true'` if no value. void values
|
|
3
|
+
* exists, the value is as specified or `'true'` if no value. most void values
|
|
4
4
|
* default to `'true'` when the `debug` param is empty or `'void'` is set (eg,
|
|
5
5
|
* `localhost:1234?debug` or `localhost:1234?debug=void,foo=bar`). all values
|
|
6
6
|
* default to true when `'all'` is set. extend interface for additional types.
|
|
@@ -9,8 +9,10 @@
|
|
|
9
9
|
export interface Debug {
|
|
10
10
|
cam?: string;
|
|
11
11
|
input?: string;
|
|
12
|
+
/** debug render invalidations. */
|
|
13
|
+
invalid?: string;
|
|
12
14
|
mem?: string;
|
|
13
|
-
render?: string;
|
|
15
|
+
render?: 'always' | string;
|
|
14
16
|
}
|
|
15
17
|
export declare const debug: Readonly<Debug> | undefined;
|
|
16
18
|
/** @internal */
|
package/dist/src/utils/debug.js
CHANGED
|
@@ -25,9 +25,10 @@ export function Debug(url) {
|
|
|
25
25
|
if (typeof k !== 'string')
|
|
26
26
|
return target[k];
|
|
27
27
|
k = k.toLowerCase();
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
if (target[k])
|
|
29
|
+
return target[k];
|
|
30
|
+
if (!csv || 'all' in map || (k in voidKeyset && 'void' in map))
|
|
31
|
+
return 'true';
|
|
31
32
|
}
|
|
32
33
|
});
|
|
33
34
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"debug.js","sourceRoot":"","sources":["../../../src/utils/debug.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"debug.js","sourceRoot":"","sources":["../../../src/utils/debug.ts"],"names":[],"mappings":"AAiBA,MAAM,CAAC,MAAM,KAAK,GAAgC,KAAK,CACrD,UAAU,CAAC,QAAQ,EAAE,IAAI,CAC1B,CAAA;AAED,gBAAgB;AAChB,MAAM,UAAU,KAAK,CAAC,GAAuB;IAC3C,IAAI,CAAC,GAAG;QAAE,OAAM;IAChB,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,CAC7C,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,OAAO,CACrC,EAAE,CAAC,CAAC,CAAC,CAAA;IACN,IAAI,GAAG,IAAI,IAAI;QAAE,OAAM;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAC5B,GAAG;SACA,KAAK,CAAC,GAAG,CAAC,CAAC,kBAAkB;SAC7B,MAAM,CAAC,OAAO,CAAC,CAAC,gBAAgB;SAChC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,mBAAmB;KAChD,CAAA;IAED,MAAM,MAAM,GAA0B,EAAE,CAAA;IACxC,KAAK,MAAM,CAAC,IAAI,GAAG;QAAE,MAAM,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,CAAA;IAE/D,MAAM,UAAU,GAAuD;QACrE,GAAG,EAAE,SAAS;QACd,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,SAAS;QACd,MAAM,EAAE,SAAS;KAClB,CAAA;IAED,OAAO,IAAI,KAAK,CAAwB,MAAM,EAAE;QAC9C,GAAG,CAAC,MAAM,EAAE,CAAC;YACX,IAAI,OAAO,CAAC,KAAK,QAAQ;gBAAE,OAAO,MAAM,CAAC,CAAsB,CAAC,CAAA;YAChE,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;YACnB,IAAI,MAAM,CAAC,CAAC,CAAC;gBAAE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;YAC/B,IAAI,CAAC,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,CAAC,CAAC,IAAI,UAAU,IAAI,MAAM,IAAI,GAAG,CAAC;gBAC5D,OAAO,MAAM,CAAA;QACjB,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export class DelayInterval {
|
|
2
|
+
#delay;
|
|
3
|
+
#interval;
|
|
4
|
+
#intervalID = 0;
|
|
5
|
+
#onInterval;
|
|
6
|
+
#timerID = 0;
|
|
7
|
+
constructor(delay, interval, onInterval) {
|
|
8
|
+
this.#delay = delay;
|
|
9
|
+
this.#interval = interval;
|
|
10
|
+
this.#onInterval = onInterval;
|
|
11
|
+
}
|
|
12
|
+
register(op) {
|
|
13
|
+
if (op === 'add') {
|
|
14
|
+
this.#timerID = setTimeout(() => {
|
|
15
|
+
this.#onInterval();
|
|
16
|
+
this.#intervalID = setInterval(this.#onInterval, this.#interval);
|
|
17
|
+
}, this.#delay());
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
clearTimeout(this.#timerID);
|
|
21
|
+
clearInterval(this.#intervalID);
|
|
22
|
+
}
|
|
23
|
+
return this;
|
|
24
|
+
}
|
|
25
|
+
[Symbol.dispose]() {
|
|
26
|
+
this.register('remove');
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=delay-interval.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delay-interval.js","sourceRoot":"","sources":["../../../src/utils/delay-interval.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,aAAa;IACxB,MAAM,CAAc;IACpB,SAAS,CAAQ;IACjB,WAAW,GAAW,CAAC,CAAA;IACvB,WAAW,CAAY;IACvB,QAAQ,GAAW,CAAC,CAAA;IAEpB,YAAY,KAAmB,EAAE,QAAgB,EAAE,UAAsB;QACvE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAA;QACzB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAA;IAC/B,CAAC;IAED,QAAQ,CAAC,EAAoB;QAC3B,IAAI,EAAE,KAAK,KAAK,EAAE,CAAC;YACjB,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC9B,IAAI,CAAC,WAAW,EAAE,CAAA;gBAClB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;YAClE,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;QACnB,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC3B,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACjC,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED,CAAC,MAAM,CAAC,OAAO,CAAC;QACd,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACzB,CAAC;CACF"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export declare function initMetaViewport(): void;
|
|
2
|
-
export declare function initBody(canvas: Readonly<HTMLCanvasElement>, rgba: number): void;
|
|
3
1
|
export declare function download(uri: string, filename: string): void;
|
|
2
|
+
export declare function initBody(canvas: Readonly<HTMLCanvasElement>, rgba: number): void;
|
|
3
|
+
export declare function initMetaViewport(): void;
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import { rgbaHex } from "./color-util.js";
|
|
2
|
-
export function
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
meta.content =
|
|
9
|
-
'width=device-width, maximum-scale=1, minimum-scale=1, user-scalable=no';
|
|
10
|
-
document.head.appendChild(meta);
|
|
2
|
+
export function download(uri, filename) {
|
|
3
|
+
const a = document.createElement('a');
|
|
4
|
+
a.href = uri;
|
|
5
|
+
a.download = filename;
|
|
6
|
+
a.click();
|
|
7
|
+
a.remove();
|
|
11
8
|
}
|
|
12
9
|
export function initBody(canvas, rgba) {
|
|
13
10
|
if (canvas.parentNode !== document.body)
|
|
@@ -19,11 +16,14 @@ export function initBody(canvas, rgba) {
|
|
|
19
16
|
document.body.style.overflow = 'hidden';
|
|
20
17
|
document.body.style.background = rgbaHex(rgba);
|
|
21
18
|
}
|
|
22
|
-
export function
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
19
|
+
export function initMetaViewport() {
|
|
20
|
+
if (document.querySelector('meta[name="viewport"]'))
|
|
21
|
+
return;
|
|
22
|
+
const meta = document.createElement('meta');
|
|
23
|
+
meta.name = 'viewport';
|
|
24
|
+
// don't wait for double-tap scaling on mobile.
|
|
25
|
+
meta.content =
|
|
26
|
+
'width=device-width, maximum-scale=1, minimum-scale=1, user-scalable=no';
|
|
27
|
+
document.head.appendChild(meta);
|
|
28
28
|
}
|
|
29
29
|
//# sourceMappingURL=dom-util.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dom-util.js","sourceRoot":"","sources":["../../../src/utils/dom-util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,iBAAiB,CAAA;AAEvC,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"dom-util.js","sourceRoot":"","sources":["../../../src/utils/dom-util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,iBAAiB,CAAA;AAEvC,MAAM,UAAU,QAAQ,CAAC,GAAW,EAAE,QAAgB;IACpD,MAAM,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAA;IACZ,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAA;IACrB,CAAC,CAAC,KAAK,EAAE,CAAA;IACT,CAAC,CAAC,MAAM,EAAE,CAAA;AACZ,CAAC;AAED,MAAM,UAAU,QAAQ,CACtB,MAAmC,EACnC,IAAY;IAEZ,IAAI,MAAM,CAAC,UAAU,KAAK,QAAQ,CAAC,IAAI;QAAE,OAAM;IAC/C,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAA;IAChC,wCAAwC;IACxC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAA;IACpC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAA;IACrC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAA;IACvC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;AAChD,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,IAAI,QAAQ,CAAC,aAAa,CAAC,uBAAuB,CAAC;QAAE,OAAM;IAC3D,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;IAC3C,IAAI,CAAC,IAAI,GAAG,UAAU,CAAA;IACtB,+CAA+C;IAC/C,IAAI,CAAC,OAAO;QACV,wEAAwE,CAAA;IAC1E,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;AACjC,CAAC"}
|
package/dist/src/void.d.ts
CHANGED
|
@@ -18,26 +18,31 @@ export type VoidOpts<out Tag extends TagFormat> = {
|
|
|
18
18
|
minWH?: WH | undefined;
|
|
19
19
|
input?: 'Custom' | 'Default' | undefined;
|
|
20
20
|
mode?: 'Int' | 'Fraction' | undefined;
|
|
21
|
+
poll?: {
|
|
22
|
+
delay?: (() => Millis) | undefined;
|
|
23
|
+
period: Millis;
|
|
24
|
+
} | undefined;
|
|
21
25
|
sprites?: Partial<Omit<PoolOpts<Sprite<Tag>>, 'alloc' | 'allocBytes'>> | undefined;
|
|
22
26
|
};
|
|
23
27
|
export declare class Void<out Tag extends TagFormat, Button extends string = DefaultButton> {
|
|
24
28
|
#private;
|
|
25
29
|
readonly cam: Cam;
|
|
26
30
|
readonly canvas: HTMLCanvasElement;
|
|
27
|
-
readonly framer: Looper;
|
|
28
31
|
readonly input: Input<Button>;
|
|
29
32
|
readonly preload: Atlas;
|
|
30
33
|
readonly renderer: Renderer;
|
|
31
34
|
readonly sprites: Pool<Sprite<Tag>>;
|
|
32
35
|
readonly zoo: Zoo<Tag>;
|
|
36
|
+
readonly looper: Looper;
|
|
33
37
|
constructor(opts: Readonly<VoidOpts<Tag>>);
|
|
34
|
-
onAllocSprite(pool: Pool<Sprite<
|
|
38
|
+
onAllocSprite(pool: Pool<Sprite<Tag>>): Sprite<Tag>;
|
|
35
39
|
onEvent(): void;
|
|
36
40
|
/** update input, update canvas, update cam, update world, then render. */
|
|
37
41
|
onFrame(millis: Millis): void;
|
|
38
42
|
onLoop(millis: Millis): void;
|
|
43
|
+
onPoll(): void;
|
|
39
44
|
onResize(): void;
|
|
40
45
|
register(op: 'add' | 'remove'): Promise<void>;
|
|
41
|
-
requestFrame(): void;
|
|
46
|
+
requestFrame(force?: 'Force' | undefined): void;
|
|
42
47
|
[Symbol.asyncDispose](): Promise<void>;
|
|
43
48
|
}
|
package/dist/src/void.js
CHANGED
|
@@ -6,23 +6,26 @@ import { drawableBytes, Sprite } from "./graphics/sprite.js";
|
|
|
6
6
|
import { Input } from "./input/input.js";
|
|
7
7
|
import { Looper } from "./looper.js";
|
|
8
8
|
import { Pool } from "./mem/pool.js";
|
|
9
|
-
import { PixelRatioObserver } from "./pixel-ratio-observer.js";
|
|
10
9
|
import { initCanvas } from "./utils/canvas-util.js";
|
|
10
|
+
import { DelayInterval } from "./utils/delay-interval.js";
|
|
11
11
|
import { initBody, initMetaViewport } from "./utils/dom-util.js";
|
|
12
12
|
import { loadImage } from "./utils/fetch-util.js";
|
|
13
13
|
export class Void {
|
|
14
14
|
cam = new Cam();
|
|
15
15
|
canvas;
|
|
16
|
-
framer = new Looper();
|
|
17
16
|
input;
|
|
18
17
|
preload;
|
|
19
18
|
renderer;
|
|
20
19
|
sprites;
|
|
21
20
|
zoo = new Zoo();
|
|
22
|
-
|
|
21
|
+
looper = new Looper();
|
|
22
|
+
#poll;
|
|
23
23
|
#preloadAtlasImage;
|
|
24
|
+
// may trigger an initial force update.
|
|
24
25
|
#resizeObserver = new ResizeObserver(() => this.onResize());
|
|
25
26
|
constructor(opts) {
|
|
27
|
+
if (opts.poll != null)
|
|
28
|
+
this.#poll = new DelayInterval(opts.poll.delay ?? (() => 0), opts.poll.period, () => this.onPoll());
|
|
26
29
|
initMetaViewport();
|
|
27
30
|
this.canvas = initCanvas(opts.canvas, opts.mode ?? 'Int');
|
|
28
31
|
initBody(this.canvas, opts.backgroundRGBA ?? 0x000000ff);
|
|
@@ -34,59 +37,63 @@ export class Void {
|
|
|
34
37
|
if (opts.input !== 'Custom')
|
|
35
38
|
this.input.mapDefault();
|
|
36
39
|
this.input.onEvent = () => this.onEvent();
|
|
37
|
-
this.#pixelRatioObserver.onChange = () => this.onResize();
|
|
38
40
|
if (opts.preloadAtlas)
|
|
39
41
|
this.#preloadAtlasImage = opts.preloadAtlas.image;
|
|
40
42
|
this.preload = opts.preloadAtlas
|
|
41
43
|
? parseAtlas(opts.preloadAtlas.json)
|
|
42
44
|
: { anim: {}, celXYWH: [], tags: [] };
|
|
43
|
-
this.renderer = new Renderer(this.preload ?? {}, this.canvas);
|
|
45
|
+
this.renderer = new Renderer(this.preload ?? {}, this.canvas, this.looper);
|
|
44
46
|
this.sprites = new Pool({
|
|
45
47
|
alloc: pool => this.onAllocSprite(pool),
|
|
46
48
|
allocBytes: drawableBytes,
|
|
47
49
|
minPages: opts.sprites?.minPages ?? 3,
|
|
48
50
|
pageBlocks: opts.sprites?.pageBlocks ?? 1000
|
|
49
51
|
});
|
|
50
|
-
this.
|
|
52
|
+
this.looper.onFrame = millis => this.onFrame(millis);
|
|
51
53
|
}
|
|
52
54
|
onAllocSprite(pool) {
|
|
53
|
-
return new Sprite(pool, 0, this.preload, this.
|
|
55
|
+
return new Sprite(pool, 0, this.preload, this.looper);
|
|
54
56
|
}
|
|
55
57
|
onEvent() {
|
|
56
|
-
this.
|
|
58
|
+
this.requestFrame('Force');
|
|
57
59
|
}
|
|
58
60
|
/** update input, update canvas, update cam, update world, then render. */
|
|
59
61
|
onFrame(millis) {
|
|
60
62
|
if (document.hidden)
|
|
61
63
|
return;
|
|
62
64
|
this.input.update(millis);
|
|
65
|
+
this.requestFrame(); // request frame before in case loop cancels.
|
|
63
66
|
this.onLoop(millis);
|
|
64
67
|
this.cam.postupdate();
|
|
65
68
|
}
|
|
66
69
|
// biome-ignore lint/correctness/noUnusedFunctionParameters:;
|
|
67
70
|
onLoop(millis) { }
|
|
71
|
+
onPoll() {
|
|
72
|
+
this.requestFrame('Force');
|
|
73
|
+
}
|
|
68
74
|
onResize() {
|
|
69
|
-
this.
|
|
75
|
+
this.requestFrame('Force'); // force cam reeval.
|
|
70
76
|
}
|
|
71
77
|
async register(op) {
|
|
72
78
|
this.input.register(op);
|
|
73
79
|
this.renderer.register(op);
|
|
74
|
-
this.
|
|
80
|
+
this.looper.register(op);
|
|
75
81
|
if (!this.canvas.parentElement)
|
|
76
82
|
throw Error('no canvas parent');
|
|
77
83
|
if (op === 'add')
|
|
78
84
|
this.#resizeObserver.observe(this.canvas.parentElement);
|
|
79
85
|
else
|
|
80
86
|
this.#resizeObserver.unobserve(this.canvas.parentElement);
|
|
81
|
-
|
|
82
|
-
|
|
87
|
+
if (op === 'add')
|
|
88
|
+
this.looper.requestFrame();
|
|
89
|
+
this.#poll?.register(op);
|
|
83
90
|
if (this.#preloadAtlasImage)
|
|
84
91
|
await loadImage(this.#preloadAtlasImage);
|
|
85
92
|
this.renderer.load(this.#preloadAtlasImage);
|
|
86
93
|
}
|
|
87
|
-
requestFrame() {
|
|
88
|
-
if (this.renderer.always || this.input.anyOn || this.input.gamepad)
|
|
89
|
-
this.
|
|
94
|
+
requestFrame(force) {
|
|
95
|
+
if (force || this.renderer.always || this.input.anyOn || this.input.gamepad)
|
|
96
|
+
this.looper.requestFrame();
|
|
90
97
|
}
|
|
91
98
|
async [Symbol.asyncDispose]() {
|
|
92
99
|
await this.register('remove');
|
package/dist/src/void.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"void.js","sourceRoot":"","sources":["../../src/void.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,eAAe,CAAA;AAEjC,OAAO,EAAC,UAAU,EAAC,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAC,GAAG,EAAC,MAAM,mBAAmB,CAAA;AACrC,OAAO,EAAC,QAAQ,EAAC,MAAM,wBAAwB,CAAA;AAC/C,OAAO,EAAC,aAAa,EAAE,MAAM,EAAC,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAqB,KAAK,EAAC,MAAM,kBAAkB,CAAA;AAC1D,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAA;AAClC,OAAO,EAAC,IAAI,EAAgB,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"void.js","sourceRoot":"","sources":["../../src/void.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import type { AtlasConfig } from '../../schema/config-file.ts';
|
|
2
|
-
export declare function packAtlas(config: Readonly<AtlasConfig
|
|
2
|
+
export declare function packAtlas(config: Readonly<AtlasConfig>): Promise<void>;
|
|
@@ -4,14 +4,19 @@ import { exec } from "../utils/exec.js";
|
|
|
4
4
|
import { globAll } from "../utils/file-util.js";
|
|
5
5
|
import { parseAtlasJSON } from "./atlas-json-parser.js";
|
|
6
6
|
// to-do: separate executable?
|
|
7
|
-
export async function packAtlas(config
|
|
7
|
+
export async function packAtlas(config) {
|
|
8
8
|
const filenames = await globAll(path.join(config.dir, '**.aseprite'));
|
|
9
9
|
if (!filenames.length)
|
|
10
10
|
return;
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
const webp = config.image.endsWith('.webp');
|
|
12
|
+
const sheet = webp ? config.image.replace('.webp', '.png') : config.image;
|
|
13
|
+
const json = await exec('aseprite', '--batch', '--color-mode=indexed', '--filename-format={title}--{tag}--{frame}', '--list-slices', '--list-tags', '--merge-duplicates', `--sheet=${sheet}`, '--sheet-pack', '--tagname-format={title}--{tag}', ...filenames);
|
|
14
|
+
if (webp)
|
|
15
|
+
await exec('cwebp', '-exact', '-lossless', '-mt', '-quiet', '-z', '9', sheet, '-o', config.image);
|
|
14
16
|
await fs.writeFile(config.json, JSON.stringify(parseAtlasJSON(JSON.parse(json))));
|
|
15
|
-
|
|
17
|
+
try {
|
|
18
|
+
await exec('biome', 'check', '--fix', config.json);
|
|
19
|
+
}
|
|
20
|
+
catch { }
|
|
16
21
|
}
|
|
17
22
|
//# sourceMappingURL=atlas-pack.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atlas-pack.js","sourceRoot":"","sources":["../../../tools/atlas-pack/atlas-pack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACjC,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAA;AACrC,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAA;AAC7C,OAAO,EAAC,cAAc,EAAC,MAAM,wBAAwB,CAAA;AAErD,8BAA8B;AAC9B,MAAM,CAAC,KAAK,UAAU,SAAS,
|
|
1
|
+
{"version":3,"file":"atlas-pack.js","sourceRoot":"","sources":["../../../tools/atlas-pack/atlas-pack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACjC,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAA;AACrC,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAA;AAC7C,OAAO,EAAC,cAAc,EAAC,MAAM,wBAAwB,CAAA;AAErD,8BAA8B;AAC9B,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,MAA6B;IAC3D,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAA;IACrE,IAAI,CAAC,SAAS,CAAC,MAAM;QAAE,OAAM;IAE7B,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAA;IACzE,MAAM,IAAI,GAAG,MAAM,IAAI,CACrB,UAAU,EACV,SAAS,EACT,sBAAsB,EACtB,2CAA2C,EAC3C,eAAe,EACf,aAAa,EACb,oBAAoB,EACpB,WAAW,KAAK,EAAE,EAClB,cAAc,EACd,iCAAiC,EACjC,GAAG,SAAS,CACb,CAAA;IAED,IAAI,IAAI;QACN,MAAM,IAAI,CACR,OAAO,EACP,QAAQ,EACR,WAAW,EACX,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,GAAG,EACH,KAAK,EACL,IAAI,EACJ,MAAM,CAAC,KAAK,CACb,CAAA;IAEH,MAAM,EAAE,CAAC,SAAS,CAChB,MAAM,CAAC,IAAI,EACX,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CACjD,CAAA;IAED,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;IACpD,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;AACZ,CAAC"}
|
|
@@ -26,9 +26,9 @@ export async function bundle(config, srcFilenames, voidVersion) {
|
|
|
26
26
|
target: 'es2024' // https://esbuild.github.io/content-types/#tsconfig-json
|
|
27
27
|
};
|
|
28
28
|
if (config.preloadAtlas)
|
|
29
|
-
await packAtlas(config.preloadAtlas
|
|
29
|
+
await packAtlas(config.preloadAtlas);
|
|
30
30
|
if (config.preloadAtlas && config.watch) {
|
|
31
|
-
fs.watch(config.preloadAtlas.dir, { recursive: true }, (ev, type) => onWatch(config.preloadAtlas,
|
|
31
|
+
fs.watch(config.preloadAtlas.dir, { recursive: true }, (ev, type) => onWatch(config.preloadAtlas, ev, type));
|
|
32
32
|
const ctx = await esbuild.context(opts);
|
|
33
33
|
await Promise.all([
|
|
34
34
|
ctx.watch(),
|
|
@@ -41,8 +41,8 @@ export async function bundle(config, srcFilenames, voidVersion) {
|
|
|
41
41
|
await fs.promises.writeFile(config.meta, JSON.stringify(build.metafile));
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
-
const onWatch = V.debounce(async (config,
|
|
44
|
+
const onWatch = V.debounce(async (config, ev, file) => {
|
|
45
45
|
console.log(`asset ${file} ${ev}.`);
|
|
46
|
-
await packAtlas(config
|
|
46
|
+
await packAtlas(config);
|
|
47
47
|
}, 500);
|
|
48
48
|
//# sourceMappingURL=bundle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../../tools/bundle/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,OAAO,MAAM,SAAS,CAAA;AAE7B,OAAO,KAAK,CAAC,MAAM,oBAAoB,CAAA;AAEvC,OAAO,EAAC,SAAS,EAAC,MAAM,6BAA6B,CAAA;AAErD,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAA;AAE3C,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,MAAwB,EACxB,YAA+B,EAC/B,WAAkC;IAElC,MAAM,IAAI,GAAyB;QACjC,MAAM,EAAE,MAAM,CAAC,KAAK;YAClB,CAAC,CAAC;gBACE,EAAE,EAAE,kFAAkF;aACvF;YACH,CAAC,CAAC,EAAE;QACN,MAAM,EAAE,IAAI;QACZ,MAAM,EAAE;YACN,8DAA8D;YAC9D,wBAAwB,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;SACtD;QACD,WAAW,EAAE,CAAC,GAAG,YAAY,CAAC;QAC9B,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE,MAAM,EAAE,yCAAyC;QAC3D,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG;QACtB,OAAO,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7B,SAAS,EAAE,QAAQ;QACnB,MAAM,EAAE,QAAQ,CAAC,yDAAyD;KAC3E,CAAA;IAED,IAAI,MAAM,CAAC,YAAY;QAAE,MAAM,SAAS,CAAC,MAAM,CAAC,YAAY,
|
|
1
|
+
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../../tools/bundle/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,OAAO,MAAM,SAAS,CAAA;AAE7B,OAAO,KAAK,CAAC,MAAM,oBAAoB,CAAA;AAEvC,OAAO,EAAC,SAAS,EAAC,MAAM,6BAA6B,CAAA;AAErD,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAA;AAE3C,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,MAAwB,EACxB,YAA+B,EAC/B,WAAkC;IAElC,MAAM,IAAI,GAAyB;QACjC,MAAM,EAAE,MAAM,CAAC,KAAK;YAClB,CAAC,CAAC;gBACE,EAAE,EAAE,kFAAkF;aACvF;YACH,CAAC,CAAC,EAAE;QACN,MAAM,EAAE,IAAI;QACZ,MAAM,EAAE;YACN,8DAA8D;YAC9D,wBAAwB,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;SACtD;QACD,WAAW,EAAE,CAAC,GAAG,YAAY,CAAC;QAC9B,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE,MAAM,EAAE,yCAAyC;QAC3D,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG;QACtB,OAAO,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7B,SAAS,EAAE,QAAQ;QACnB,MAAM,EAAE,QAAQ,CAAC,yDAAyD;KAC3E,CAAA;IAED,IAAI,MAAM,CAAC,YAAY;QAAE,MAAM,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;IAC7D,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACxC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAChE,OAAO,CAAC,MAAM,CAAC,YAAa,EAAE,EAAE,EAAE,IAAI,CAAC,CACxC,CAAA;QACD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACvC,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,GAAG,CAAC,KAAK,EAAE;YACX,GAAG,CAAC,KAAK,CAAC,EAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAC,CAAC;SAClD,CAAC,CAAA;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACvC,IAAI,MAAM,CAAC,IAAI;YACb,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAA;IAC5E,CAAC;AACH,CAAC;AAED,MAAM,OAAO,GAAG,CAAC,CAAC,QAAQ,CACxB,KAAK,EACH,MAA6B,EAC7B,EAAqB,EACrB,IAAmB,EACnB,EAAE;IACF,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,IAAI,EAAE,GAAG,CAAC,CAAA;IACnC,MAAM,SAAS,CAAC,MAAM,CAAC,CAAA;AACzB,CAAC,EACD,GAAe,CAChB,CAAA"}
|
|
@@ -37,8 +37,8 @@ export function HTMLPlugin(config) {
|
|
|
37
37
|
if (manifestEl) {
|
|
38
38
|
const manifestFilename = path.resolve(path.dirname(config.entry), manifestEl.getAttribute('href'));
|
|
39
39
|
const manifest = JSON.parse(await fs.readFile(manifestFilename, 'utf8'));
|
|
40
|
-
if (
|
|
41
|
-
manifest.version =
|
|
40
|
+
if (config.version)
|
|
41
|
+
manifest.version = config.version;
|
|
42
42
|
for (const icon of manifest.icons ?? []) {
|
|
43
43
|
if (!icon.src || !icon.type)
|
|
44
44
|
continue;
|
|
@@ -75,9 +75,11 @@ export function HTMLPlugin(config) {
|
|
|
75
75
|
removeComments: true,
|
|
76
76
|
removeEmptyAttributes: true
|
|
77
77
|
});
|
|
78
|
-
// to-do: what biome config does this use outside of the repo?
|
|
79
78
|
else
|
|
80
|
-
|
|
79
|
+
try {
|
|
80
|
+
html = await exec('biome', 'check', '--fix', `--stdin-file-path=${config.entry}`, { stdin: html });
|
|
81
|
+
}
|
|
82
|
+
catch { }
|
|
81
83
|
// to-do: test.
|
|
82
84
|
const outHTMLFilename = path.join(config.out.dir, config.out.filename);
|
|
83
85
|
await fs.writeFile(outHTMLFilename, html);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html-plugin.js","sourceRoot":"","sources":["../../../tools/bundle/html-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACjC,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAC,MAAM,EAAC,MAAM,oBAAoB,CAAA;AAEzC,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAA;AACrC,OAAO,EAAC,SAAS,EAAC,MAAM,yBAAyB,CAAA;AAcjD,MAAM,UAAU,UAAU,CAAC,MAAwB;IACjD,OAAO;QACL,IAAI,EAAE,YAAY;QAClB,KAAK,CAAC,KAAK;YACT,KAAK,CAAC,KAAK,CAAC,KAAK,EAAC,OAAO,EAAC,EAAE;gBAC1B,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;gBAEzC,MAAM,OAAO,GAAG,GAAG,CAAC,gBAAgB,CAClC,mCAAmC,CACpC,CAAA;gBACD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;oBAC7B,eAAe;oBACf,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAC5B,MAAM,CAAC,YAAY,CAAC,KAAK,CAAE,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CACpD,CAAA;oBACD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACnB,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;wBAC7B,MAAM,CAAC,WAAW,GAAG,MAAM,EAAE,CAAC,QAAQ,CACpC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,EACnC,EAAC,QAAQ,EAAE,MAAM,EAAC,CACnB,CAAA;oBACH,CAAC;;wBAAM,MAAM,CAAC,GAAG,GAAG,QAAQ,CAAA;gBAC9B,CAAC;gBAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,MAAM,IAAI,GAAG,GAAG,CAAC,gBAAgB,CAAmB,UAAU,CAAC,CAAA;oBAC/D,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;wBACvB,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC,KAAK,CAAE,CAAA;wBACzC,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE;4BACjE,QAAQ,EAAE,QAAQ;yBACnB,CAAC,CAAA;wBACF,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;wBAC7C,IAAI,CAAC,GAAG;4BAAE,MAAM,KAAK,CAAC,oBAAoB,CAAC,CAAA;wBAC3C,GAAG,CAAC,GAAG,GAAG,cAAc,GAAG,WAAW,GAAG,EAAE,CAAA;oBAC7C,CAAC;gBACH,CAAC;gBAED,MAAM,UAAU,GAAG,GAAG,CAAC,aAAa,CAClC,4BAA4B,CAC7B,CAAA;gBACD,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CACnC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAC1B,UAAU,CAAC,YAAY,CAAC,MAAM,CAAE,CACjC,CAAA;oBACD,MAAM,QAAQ,GAAa,IAAI,CAAC,KAAK,CACnC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAC5C,CAAA;oBACD,IAAI,
|
|
1
|
+
{"version":3,"file":"html-plugin.js","sourceRoot":"","sources":["../../../tools/bundle/html-plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,16 +30,19 @@
|
|
|
30
30
|
"module": "ESNext",
|
|
31
31
|
"moduleResolution": "Bundler",
|
|
32
32
|
"rewriteRelativeImportExtensions": true, // rewrite .ts imports to .js.
|
|
33
|
+
// all subprojects output to dist/ relative the project root.
|
|
34
|
+
"outDir": "../dist",
|
|
33
35
|
"rootDir": "..",
|
|
34
36
|
// assume library types are checked and compatible.
|
|
35
37
|
"skipLibCheck": true,
|
|
36
38
|
"skipDefaultLibCheck": true,
|
|
37
39
|
"sourceMap": true,
|
|
38
40
|
"target": "ES2024",
|
|
39
|
-
"outDir": "../dist",
|
|
40
41
|
// don't transform type-only imports.
|
|
41
42
|
"verbatimModuleSyntax": true
|
|
42
43
|
},
|
|
44
|
+
// include all sources and JSON.
|
|
43
45
|
"include": ["${configDir}/", "${configDir}/**/*.json"],
|
|
46
|
+
// exclude colocated tests and test utils.
|
|
44
47
|
"exclude": ["${configDir}/**/*.test.*", "${configDir}/**/test/"]
|
|
45
48
|
}
|
package/dist/tools/tsconfig.json
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { AtlasConfig, ConfigFile } from '../../schema/config-file.ts';
|
|
2
2
|
import type { Argv } from '../utils/argv.ts';
|
|
3
|
+
import type { PackageJSON } from './package-json.ts';
|
|
3
4
|
export type Config = {
|
|
4
5
|
$schema: string;
|
|
5
6
|
entry: string;
|
|
@@ -16,5 +17,11 @@ export type Config = {
|
|
|
16
17
|
minify: boolean;
|
|
17
18
|
oneFile: boolean;
|
|
18
19
|
watch: boolean;
|
|
20
|
+
/** package publish date. */
|
|
21
|
+
published: string | undefined;
|
|
22
|
+
/** package version. */
|
|
23
|
+
version: string | undefined;
|
|
24
|
+
/** Git short hash. */
|
|
25
|
+
hash: string;
|
|
19
26
|
};
|
|
20
|
-
export declare function Config(configFile: Readonly<ConfigFile>, argv: Readonly<Argv>,
|
|
27
|
+
export declare function Config(configFile: Readonly<ConfigFile>, argv: Readonly<Argv>, packageJSON: Readonly<PackageJSON>, hash: string): Config;
|
|
@@ -1,22 +1,31 @@
|
|
|
1
1
|
import path from 'node:path';
|
|
2
|
-
export function Config(configFile, argv,
|
|
3
|
-
let
|
|
2
|
+
export function Config(configFile, argv, packageJSON, hash) {
|
|
3
|
+
let fileStem = path.basename(configFile.entry).replace(/\.[^.]+$/, '');
|
|
4
4
|
if (configFile.out.name && !argv.opts['--watch'])
|
|
5
|
-
|
|
6
|
-
let
|
|
7
|
-
if (
|
|
8
|
-
|
|
5
|
+
fileStem = configFile.out.name;
|
|
6
|
+
let fileSuffix = '.html';
|
|
7
|
+
if (!argv.opts['--watch']) {
|
|
8
|
+
const version = packageJSON.version ? `v${packageJSON.version}` : '';
|
|
9
|
+
const published = packageJSON.version && packageJSON.published
|
|
10
|
+
? `+${packageJSON.published}`
|
|
11
|
+
: '';
|
|
12
|
+
const hashStr = packageJSON.version && hash ? `.${hash}` : '';
|
|
13
|
+
fileSuffix = `-${version}${published}${hashStr}.html`;
|
|
14
|
+
}
|
|
9
15
|
return {
|
|
10
16
|
$schema: configFile.$schema,
|
|
11
17
|
entry: configFile.entry,
|
|
12
18
|
meta: configFile.meta,
|
|
13
|
-
out: { dir: configFile.out.dir, filename: `${
|
|
19
|
+
out: { dir: configFile.out.dir, filename: `${fileStem}${fileSuffix}` },
|
|
14
20
|
preloadAtlas: configFile.preloadAtlas,
|
|
15
21
|
dirname: configFile.dirname,
|
|
16
22
|
filename: configFile.filename,
|
|
17
23
|
minify: argv.opts['--minify'] ?? false,
|
|
18
24
|
oneFile: argv.opts['--one-file'] ?? false,
|
|
19
|
-
watch: argv.opts['--watch'] ?? false
|
|
25
|
+
watch: argv.opts['--watch'] ?? false,
|
|
26
|
+
published: packageJSON.published,
|
|
27
|
+
version: packageJSON.version,
|
|
28
|
+
hash
|
|
20
29
|
};
|
|
21
30
|
}
|
|
22
31
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../tools/types/config.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../tools/types/config.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAA;AA8B5B,MAAM,UAAU,MAAM,CACpB,UAAgC,EAChC,IAAoB,EACpB,WAAkC,EAClC,IAAY;IAEZ,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAA;IACtE,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;QAC9C,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAA;IAChC,IAAI,UAAU,GAAG,OAAO,CAAA;IACxB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACpE,MAAM,SAAS,GACb,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,SAAS;YAC1C,CAAC,CAAC,IAAI,WAAW,CAAC,SAAS,EAAE;YAC7B,CAAC,CAAC,EAAE,CAAA;QACR,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QAC7D,UAAU,GAAG,IAAI,OAAO,GAAG,SAAS,GAAG,OAAO,OAAO,CAAA;IACvD,CAAC;IACD,OAAO;QACL,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,GAAG,EAAE,EAAC,GAAG,EAAE,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,QAAQ,GAAG,UAAU,EAAE,EAAC;QACpE,YAAY,EAAE,UAAU,CAAC,YAAY;QACrC,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,QAAQ,EAAE,UAAU,CAAC,QAAQ;QAC7B,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK;QACtC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK;QACzC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK;QACpC,SAAS,EAAE,WAAW,CAAC,SAAS;QAChC,OAAO,EAAE,WAAW,CAAC,OAAO;QAC5B,IAAI;KACL,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-json.js","sourceRoot":"","sources":["../../../tools/types/package-json.ts"],"names":[],"mappings":""}
|
package/dist/tools/void.d.ts
CHANGED
|
@@ -12,6 +12,4 @@ declare module './utils/argv.ts' {
|
|
|
12
12
|
'--watch'?: true;
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
|
-
export declare function build(args: readonly string[]
|
|
16
|
-
readonly [name: string]: string | undefined;
|
|
17
|
-
}): Promise<void>;
|
|
15
|
+
export declare function build(args: readonly string[]): Promise<void>;
|