@tolokoban/tgd 2.0.136 → 2.0.138

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -20,6 +20,20 @@ npm start
20
20
 
21
21
  ## Release notes
22
22
 
23
+ ### v2.0.138
24
+
25
+ - Fix a bug in TgdContext related to `isDeleted`.
26
+
27
+ ### v2.0.137
28
+
29
+ - **TgdContext verbose defaults to `false`**: The `verbose` option now defaults to `false` instead of `true`, reducing console noise in production.
30
+ - **TgdContext deletion safety**: `actualPaint` now guards against painting after the context has been deleted; `delete()` cancels any pending animation frame.
31
+ - **TgdContext.isDeleted**: New getter to check whether the context has been deleted.
32
+ - **TgdPainter unique IDs**: Painter IDs are now human-readable strings (`[#0]`, `[#1]`, …) generated by the new `nextId()` utility; constructor accepts an optional `name` parameter; added `nameUniq` getter for guaranteed-unique display names.
33
+ - **TgdPainterGroup name forwarding**: Constructor now passes the `name` option to the parent `TgdPainter` constructor.
34
+ - **New utility `TgdValueWaitable<T>`**: Async-friendly value holder — call `waitUntilDefined()` to get a `Promise<T>` that resolves as soon as the value is set.
35
+ - **New utility `nextId()`**: Centralized incremental ID generator exported from `utils/id`.
36
+
23
37
  ### v2.0.136
24
38
 
25
39
  - **New TgdGeometry.join()**: Static method and standalone `tgdGeometryJoin()` function to merge multiple geometries into a single one, combining positions, normals, UVs, and elements with proper index offsetting.
@@ -6,9 +6,9 @@ import { TgdEvent } from "../event";
6
6
  import { TgdPainterGroup } from "../painter/group";
7
7
  import type { TgdAnimation } from "../types/animation";
8
8
  import { Console } from "./console";
9
+ import { TgdExtensions } from "./extensions";
9
10
  import { UniformBufferObjectsManager } from "./ubo-manager";
10
11
  import { WebglParams } from "./webgl-params";
11
- import { TgdExtensions } from "./extensions";
12
12
  /**
13
13
  * You can pass all the attributes of the [WebGL2ContextAttributes](https://developer.mozilla.org/en-US/docs/Web/API/WebGL2RenderingContext)
14
14
  * object.
@@ -150,11 +150,13 @@ export declare class TgdContext extends TgdPainterGroup {
150
150
  private readonly readPixelColor;
151
151
  private readonly initialize?;
152
152
  private readonly oneTimePainters;
153
+ /** When the context has been deleted, this is `true` and you can read it with `context.isDeleted`. */
153
154
  /**
154
155
  * @param canvas The canvas to which attach a WebGL2 context.
155
156
  * @see {@link TgdContextOptions}
156
157
  */
157
158
  constructor(canvas: HTMLCanvasElement | OffscreenCanvas, options?: Readonly<TgdContextOptions>);
159
+ get isDeleted(): boolean;
158
160
  viewportExec(action: () => void, viewport: Partial<{
159
161
  x: number;
160
162
  y: number;
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/context/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/context/context.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,9 @@ import { TgdPainterGroup } from "../painter/group.js";
7
7
  import { webglLookup } from "../utils/index.js";
8
8
  import { TgdManagerAnimation } from "./animation/animation-manager.js";
9
9
  import { Console } from "./console.js";
10
+ import { TgdExtensions } from "./extensions.js";
10
11
  import { UniformBufferObjectsManager } from "./ubo-manager.js";
11
12
  import { WebglParams } from "./webgl-params.js";
12
- import { TgdExtensions } from "./extensions.js";
13
13
  /**
14
14
  * This class gives you a [WebGL2RenderingContext](https://developer.mozilla.org/en-US/docs/Web/API/WebGL2RenderingContext) for a given canvas,
15
15
  * through its public readonly attribute `gl`.
@@ -37,12 +37,13 @@ export class TgdContext extends TgdPainterGroup {
37
37
  static get devicePixelRatio() {
38
38
  return globalThis.devicePixelRatio ?? 1;
39
39
  }
40
+ /** When the context has been deleted, this is `true` and you can read it with `context.isDeleted`. */
40
41
  /**
41
42
  * @param canvas The canvas to which attach a WebGL2 context.
42
43
  * @see {@link TgdContextOptions}
43
44
  */
44
45
  constructor(canvas, options = {}) {
45
- super();
46
+ super({ name: options.name });
46
47
  this.canvas = canvas;
47
48
  this.options = options;
48
49
  /**
@@ -159,7 +160,9 @@ export class TgdContext extends TgdPainterGroup {
159
160
  }
160
161
  this.oneTimePainters.clear();
161
162
  super.paint(timeInSec, delayInSec);
162
- if (this.animationManager.paint(timeInSec) || this.paintingIsQueued || this.isPlaying) {
163
+ if (this.animationManager.paint(timeInSec) ||
164
+ this.paintingIsQueued ||
165
+ this.isPlaying) {
163
166
  this.paintingIsOngoing = false;
164
167
  this.paint();
165
168
  }
@@ -201,7 +204,7 @@ export class TgdContext extends TgdPainterGroup {
201
204
  this.stateReset();
202
205
  return gl;
203
206
  };
204
- this.verbose = options.verbose ?? true;
207
+ this.verbose = options.verbose ?? false;
205
208
  const gl = this.createWebGLContext();
206
209
  this.extensions = new TgdExtensions(gl);
207
210
  this.initialize = options.initialize;
@@ -238,8 +241,12 @@ export class TgdContext extends TgdPainterGroup {
238
241
  this.implementationColorReadType = gl.getParameter(gl.IMPLEMENTATION_COLOR_READ_TYPE);
239
242
  this._gl = gl;
240
243
  this.observer = new ResizeObserver(() => {
241
- const width = isOffscreen(canvas) ? canvas.width : canvas.clientWidth * this.resolution;
242
- const height = isOffscreen(canvas) ? canvas.width : canvas.clientHeight * this.resolution;
244
+ const width = isOffscreen(canvas)
245
+ ? canvas.width
246
+ : canvas.clientWidth * this.resolution;
247
+ const height = isOffscreen(canvas)
248
+ ? canvas.width
249
+ : canvas.clientHeight * this.resolution;
243
250
  const { onResize } = options;
244
251
  if (onResize) {
245
252
  if (!isOffscreen(canvas)) {
@@ -270,6 +277,9 @@ export class TgdContext extends TgdPainterGroup {
270
277
  this.virtualTime = new TgdTime();
271
278
  this.console.debug(`[TgdContext/${this.name}] New:`, options);
272
279
  }
280
+ get isDeleted() {
281
+ return !!this._gl;
282
+ }
273
283
  viewportExec(action, viewport) {
274
284
  const { webglParams, camera } = this;
275
285
  const savedWidth = this.width;
@@ -539,6 +549,7 @@ export class TgdContext extends TgdPainterGroup {
539
549
  super.delete();
540
550
  this._gl = null;
541
551
  this.console.debug(`[TgdContext/${this.name}] Delete`);
552
+ globalThis.cancelAnimationFrame(this.requestAnimationFrame);
542
553
  }
543
554
  stateReset() {
544
555
  const { gl } = this;
@@ -601,4 +612,4 @@ TgdContext.incrementalId = 1;
601
612
  function isOffscreen(canvas) {
602
613
  return canvas instanceof OffscreenCanvas;
603
614
  }
604
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0L2NvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFrQixvQkFBb0IsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUNsRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDdEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUVuQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ25DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUVsRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ3RDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQ25FLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFDbkMsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzNELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBaUQ1Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFDSCxNQUFNLE9BQU8sVUFBVyxTQUFRLGVBQWU7SUFFM0M7Ozs7T0FJRztJQUNJLE1BQU0sS0FBSyxnQkFBZ0I7UUFDOUIsT0FBTyxVQUFVLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxDQUFBO0lBQzNDLENBQUM7SUE4RUQ7OztPQUdHO0lBQ0gsWUFDb0IsTUFBMkMsRUFDM0MsVUFBdUMsRUFBRTtRQUV6RCxLQUFLLEVBQUUsQ0FBQTtRQUhTLFdBQU0sR0FBTixNQUFNLENBQXFDO1FBQzNDLFlBQU8sR0FBUCxPQUFPLENBQWtDO1FBaEY3RDs7O1dB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
615
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0L2NvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFrQixvQkFBb0IsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUNsRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDdEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUduQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ25DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUVsRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ3RDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQ25FLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFDbkMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDM0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBc0Q1Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFDSCxNQUFNLE9BQU8sVUFBVyxTQUFRLGVBQWU7SUFFOUM7Ozs7T0FJRztJQUNJLE1BQU0sS0FBSyxnQkFBZ0I7UUFDakMsT0FBTyxVQUFVLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxDQUFBO0lBQ3hDLENBQUM7SUFnRkQsc0dBQXNHO0lBRXRHOzs7T0FHRztJQUNILFlBQ2lCLE1BQTJDLEVBQzNDLFVBQXVDLEVBQUU7UUFFekQsS0FBSyxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFBO1FBSGIsV0FBTSxH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
@@ -1,5 +1,5 @@
1
+ import type { TgdTexture2D } from "../texture";
1
2
  import { TgdMaterial } from "./material";
2
- import { TgdTexture2D } from "../texture";
3
3
  export type TgdMaterialFlatTextureOptions = {
4
4
  texture: TgdTexture2D;
5
5
  };
@@ -1 +1 @@
1
- {"version":3,"file":"flat-texture.d.ts","sourceRoot":"","sources":["../../src/material/flat-texture.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAG3C,MAAM,MAAM,6BAA6B,GAAG;IACxC,OAAO,EAAE,YAAY,CAAA;CACxB,CAAA;AAED,qBAAa,sBAAuB,SAAQ,WAAW;IACnD,OAAO,CAAC,QAAQ,CAA4B;gBAEhC,OAAO,EAAE,6BAA6B;IAyBlD,IAAI,OAAO,IAIU,YAAY,GAAG,IAAI,CAFvC;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,EAIvC;CACJ"}
1
+ {"version":3,"file":"flat-texture.d.ts","sourceRoot":"","sources":["../../src/material/flat-texture.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAEhD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAExC,MAAM,MAAM,6BAA6B,GAAG;IACxC,OAAO,EAAE,YAAY,CAAA;CACxB,CAAA;AAED,qBAAa,sBAAuB,SAAQ,WAAW;IACnD,OAAO,CAAC,QAAQ,CAA4B;gBAEhC,OAAO,EAAE,6BAA6B;IAyBlD,IAAI,OAAO,IAIU,YAAY,GAAG,IAAI,CAFvC;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,EAIvC;CACJ"}
@@ -33,4 +33,4 @@ export class TgdMaterialFlatTexture extends TgdMaterial {
33
33
  this._texture = texture;
34
34
  }
35
35
  }
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxhdC10ZXh0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21hdGVyaWFsL2ZsYXQtdGV4dHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBU3hDLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxXQUFXO0lBR25ELFlBQVksT0FBc0M7UUFDOUMsTUFBTSxRQUFRLEdBQXlDO1lBQ25ELFVBQVUsRUFBRSxXQUFXO1NBQzFCLENBQUE7UUFDRCxNQUFNLGtCQUFrQixHQUFnQixDQUFDLG9DQUFvQyxDQUFDLENBQUE7UUFDOUUsTUFBTSxRQUFRLEdBQTJDO1lBQ3JELEtBQUssRUFBRSxNQUFNO1NBQ2hCLENBQUE7UUFDRCxNQUFNLGdCQUFnQixHQUFHLEdBQUcsRUFBRTtZQUMxQixNQUFNLElBQUksR0FBZ0IsQ0FBQyxXQUFXLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFBO1lBQ3BELE9BQU8sSUFBSSxDQUFBO1FBQ2YsQ0FBQyxDQUFBO1FBRUQsS0FBSyxDQUFDO1lBQ0YsUUFBUTtZQUNSLFFBQVE7WUFDUixnQkFBZ0I7WUFDaEIsa0JBQWtCO1lBQ2xCLFdBQVcsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUEyQixFQUFRLEVBQUU7Z0JBQ3hELElBQUksQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUE7WUFDckQsQ0FBQztTQUNKLENBQUMsQ0FBQTtRQXZCRSxhQUFRLEdBQXdCLElBQUksQ0FBQTtRQXdCeEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFBO0lBQ25DLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDUCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUE7SUFDeEIsQ0FBQztJQUVELElBQUksT0FBTyxDQUFDLE9BQTRCO1FBQ3BDLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxPQUFPO1lBQUUsT0FBTTtRQUVyQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQTtJQUMzQixDQUFDO0NBQ0oifQ==
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxhdC10ZXh0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21hdGVyaWFsL2ZsYXQtdGV4dHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBTXhDLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxXQUFXO0lBR25ELFlBQVksT0FBc0M7UUFDOUMsTUFBTSxRQUFRLEdBQXlDO1lBQ25ELFVBQVUsRUFBRSxXQUFXO1NBQzFCLENBQUE7UUFDRCxNQUFNLGtCQUFrQixHQUFnQixDQUFDLG9DQUFvQyxDQUFDLENBQUE7UUFDOUUsTUFBTSxRQUFRLEdBQTJDO1lBQ3JELEtBQUssRUFBRSxNQUFNO1NBQ2hCLENBQUE7UUFDRCxNQUFNLGdCQUFnQixHQUFHLEdBQUcsRUFBRTtZQUMxQixNQUFNLElBQUksR0FBZ0IsQ0FBQyxXQUFXLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFBO1lBQ3BELE9BQU8sSUFBSSxDQUFBO1FBQ2YsQ0FBQyxDQUFBO1FBRUQsS0FBSyxDQUFDO1lBQ0YsUUFBUTtZQUNSLFFBQVE7WUFDUixnQkFBZ0I7WUFDaEIsa0JBQWtCO1lBQ2xCLFdBQVcsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUEyQixFQUFRLEVBQUU7Z0JBQ3hELElBQUksQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUE7WUFDckQsQ0FBQztTQUNKLENBQUMsQ0FBQTtRQXZCRSxhQUFRLEdBQXdCLElBQUksQ0FBQTtRQXdCeEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFBO0lBQ25DLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDUCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUE7SUFDeEIsQ0FBQztJQUVELElBQUksT0FBTyxDQUFDLE9BQTRCO1FBQ3BDLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxPQUFPO1lBQUUsT0FBTTtRQUVyQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQTtJQUMzQixDQUFDO0NBQ0oifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../src/painter/group.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAEvC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,KAAK,wBAAwB,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAGrE,MAAM,MAAM,sBAAsB,GAAG;IACjC,OAAO,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3C,MAAM,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,CAAC,UAAU,GAAG,kBAAkB,CAAC,EAAE,CAAA;CACjD,CAAA;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,UAAU;IAC3C;;OAEG;IACH,SAAgB,KAAK,WAAiB;IAC/B,MAAM,UAAO;IACb,OAAO,EAAE,kBAAkB,GAAG,SAAS,CAAA;IACvC,MAAM,EAAE,kBAAkB,GAAG,SAAS,CAAA;IAC7C,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAA;IAEzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmD;;gBAG9D,QAAQ,CAAC,EAAE,CAAC,UAAU,GAAG,kBAAkB,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,sBAAsB;gBAChF,OAAO,CAAC,EAAE,sBAAsB;IA4B5C,YAAY,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI;IAIjE,GAAG,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO;IAIjC,GAAG,CAAC,GAAG,QAAQ,EAAE,CAAC,UAAU,GAAG,kBAAkB,CAAC,EAAE;IAUpD,QAAQ,CAAC,GAAG,QAAQ,EAAE,UAAU,EAAE;IAOlC,MAAM,CAAC,GAAG,QAAQ,EAAE,UAAU,EAAE;IAUhC,qBAAqB,CAAC,GAAG,QAAQ,EAAE,UAAU,EAAE;IAS/C;;;;;;OAMG;IACH,SAAS,CAAC,qBAAqB,UAAO;IAStC,MAAM,IAAI,IAAI;IAKd,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAgBxC,IAAI,SAAS,IAAI,wBAAwB,CAIxC;IAED,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM;IAS/B,OAAO,CAAC,cAAc;CASzB"}
1
+ {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../src/painter/group.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAEvC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAE5D,OAAO,EAAE,KAAK,wBAAwB,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAErE,MAAM,MAAM,sBAAsB,GAAG;IACjC,OAAO,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3C,MAAM,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,CAAC,UAAU,GAAG,kBAAkB,CAAC,EAAE,CAAA;CACjD,CAAA;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,UAAU;IAC3C;;OAEG;IACH,SAAgB,KAAK,WAAiB;IAC/B,MAAM,UAAO;IACb,OAAO,EAAE,kBAAkB,GAAG,SAAS,CAAA;IACvC,MAAM,EAAE,kBAAkB,GAAG,SAAS,CAAA;IAC7C,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAA;IAEzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmD;;gBAG9D,QAAQ,CAAC,EAAE,CAAC,UAAU,GAAG,kBAAkB,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,sBAAsB;gBAChF,OAAO,CAAC,EAAE,sBAAsB;IA4B5C,YAAY,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI;IAIjE,GAAG,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO;IAIjC,GAAG,CAAC,GAAG,QAAQ,EAAE,CAAC,UAAU,GAAG,kBAAkB,CAAC,EAAE;IAUpD,QAAQ,CAAC,GAAG,QAAQ,EAAE,UAAU,EAAE;IAOlC,MAAM,CAAC,GAAG,QAAQ,EAAE,UAAU,EAAE;IAUhC,qBAAqB,CAAC,GAAG,QAAQ,EAAE,UAAU,EAAE;IAS/C;;;;;;OAMG;IACH,SAAS,CAAC,qBAAqB,UAAO;IAStC,MAAM,IAAI,IAAI;IAKd,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAgBxC,IAAI,SAAS,IAAI,wBAAwB,CAIxC;IAED,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM;IAS/B,OAAO,CAAC,cAAc;CASzB"}
@@ -1,13 +1,13 @@
1
1
  import { TgdLogic } from "./../context/index.js";
2
2
  import { TgdConsole } from "./../debug/index.js";
3
- import { TgdPainter } from "./painter.js";
4
3
  import { TgdPainterLogic } from "./logic.js";
4
+ import { TgdPainter } from "./painter.js";
5
5
  /**
6
6
  * Group several painters together.
7
7
  */
8
8
  export class TgdPainterGroup extends TgdPainter {
9
9
  constructor(arg1, arg2) {
10
- super();
10
+ super(extractName(arg1, arg2));
11
11
  /**
12
12
  * the logic will be executed at the beginning of `paint()`.
13
13
  */
@@ -122,7 +122,7 @@ export class TgdPainterGroup extends TgdPainter {
122
122
  }
123
123
  debugHierarchy(caption) {
124
124
  const cons = new TgdConsole({
125
- text: caption ?? this.name,
125
+ text: caption ?? this.nameUniq,
126
126
  bold: true,
127
127
  }).add();
128
128
  this.recursiveDebug(cons, this.hierarchy);
@@ -139,4 +139,11 @@ export class TgdPainterGroup extends TgdPainter {
139
139
  }
140
140
  }
141
141
  }
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGFpbnRlci9ncm91cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFFdkMsT0FBTyxFQUFpQyxVQUFVLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQVN6Qzs7R0FFRztBQUNILE1BQU0sT0FBTyxlQUFnQixTQUFRLFVBQVU7SUFlM0MsWUFBWSxJQUFtRSxFQUFFLElBQTZCO1FBQzFHLEtBQUssRUFBRSxDQUFBO1FBZlg7O1dBRUc7UUFDYSxVQUFLLEdBQUcsSUFBSSxRQUFRLEVBQUUsQ0FBQTtRQUMvQixXQUFNLEdBQUcsSUFBSSxDQUFBO1FBS0gsV0FBTSxHQUFpRCxFQUFFLENBQUE7UUFPdEUsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUE7UUFDbEIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDdEIsS0FBSyxNQUFNLE9BQU8sSUFBSSxJQUFJO2dCQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDakQsQ0FBQzthQUFNLElBQUksSUFBSSxFQUFFLENBQUM7WUFDZCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUE7WUFDM0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFBO1lBQ3pCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksSUFBSSxTQUFTLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQTtZQUM3QyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDaEIsS0FBSyxNQUFNLE9BQU8sSUFBSSxJQUFJLENBQUMs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
142
+ function extractName(arg1, arg2) {
143
+ if (!Array.isArray(arg1))
144
+ return arg1?.name;
145
+ if (!Array.isArray(arg2))
146
+ return arg2?.name;
147
+ return undefined;
148
+ }
149
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGFpbnRlci9ncm91cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFFdkMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUN6QyxPQUFPLEVBQWlDLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQVNyRTs7R0FFRztBQUNILE1BQU0sT0FBTyxlQUFnQixTQUFRLFVBQVU7SUFlM0MsWUFBWSxJQUFtRSxFQUFFLElBQTZCO1FBQzFHLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUE7UUFmbEM7O1dBRUc7UUFDYSxVQUFLLEdBQUcsSUFBSSxRQUFRLEVBQUUsQ0FBQTtRQUMvQixXQUFNLEdBQUcsSUFBSSxDQUFBO1FBS0gsV0FBTSxHQUFpRCxFQUFFLENBQUE7UUFPdEUsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUE7UUFDbEIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDdEIsS0FBSyxNQUFNLE9BQU8sSUFBSSxJQUFJO2dCQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDakQsQ0FBQzthQUFNLElBQUksSUFBSSxFQUFFLENBQUM7WUFDZCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUE7WUFDM0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFBO1lBQ3pCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksSUFBSSxTQUFTLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQTtZQUM3QyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztn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
@@ -2,14 +2,15 @@ import { TgdLogger } from "../log";
2
2
  export type TgdDebugPainterHierarchy = Record<string, TgdDebugPainterHierarchy[] | null>;
3
3
  export declare abstract class TgdPainter {
4
4
  static readonly log: TgdLogger;
5
- protected static counter: number;
6
- readonly id: number;
5
+ readonly id: string;
7
6
  /**
8
7
  * This attribute has no other purpose than debugging.
9
8
  * Its value is not used by Tgd.
10
9
  */
11
10
  name: string;
12
11
  active: boolean;
12
+ constructor(name?: string);
13
+ get nameUniq(): string;
13
14
  abstract delete(): void;
14
15
  abstract paint(time: number, delta: number): void;
15
16
  get hierarchy(): TgdDebugPainterHierarchy;
@@ -1 +1 @@
1
- {"version":3,"file":"painter.d.ts","sourceRoot":"","sources":["../../src/painter/painter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,wBAAwB,EAAE,GAAG,IAAI,CAAC,CAAA;AAExF,8BAAsB,UAAU;IAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG,YAAkB;IAErC,SAAS,CAAC,MAAM,CAAC,OAAO,SAAI;IAE5B,SAAgB,EAAE,SAAuB;IAEzC;;;OAGG;IACI,IAAI,SAAuB;IAE3B,MAAM,UAAO;IAEpB,QAAQ,CAAC,MAAM,IAAI,IAAI;IAEvB,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAEjD,IAAI,SAAS,IAAI,wBAAwB,CAIxC;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM;CAGzB"}
1
+ {"version":3,"file":"painter.d.ts","sourceRoot":"","sources":["../../src/painter/painter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAGpC,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,wBAAwB,EAAE,GAAG,IAAI,CAAC,CAAA;AAExF,8BAAsB,UAAU;IAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG,YAAkB;IAErC,SAAgB,EAAE,SAAW;IAE7B;;;OAGG;IACI,IAAI,SAAuB;IAE3B,MAAM,UAAO;gBAER,IAAI,CAAC,EAAE,MAAM;IAIzB,IAAI,QAAQ,WAIX;IAED,QAAQ,CAAC,MAAM,IAAI,IAAI;IAEvB,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAEjD,IAAI,SAAS,IAAI,wBAAwB,CAIxC;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM;CAGzB"}
@@ -1,13 +1,22 @@
1
1
  import { TgdLogger } from "./../log.js";
2
+ import { nextId } from "./../utils/id.js";
2
3
  export class TgdPainter {
3
- constructor() {
4
- this.id = TgdPainter.counter++;
4
+ constructor(name) {
5
+ this.id = nextId();
5
6
  /**
6
7
  * This attribute has no other purpose than debugging.
7
8
  * Its value is not used by Tgd.
8
9
  */
9
- this.name = `Painter/${this.id}`;
10
+ this.name = `${this.id} Painter`;
10
11
  this.active = true;
12
+ if (name)
13
+ this.name = `${this.id} ${name}`;
14
+ }
15
+ get nameUniq() {
16
+ const { name, id } = this;
17
+ if (name.startsWith(id))
18
+ return name;
19
+ return `${id} ${name}`;
11
20
  }
12
21
  get hierarchy() {
13
22
  return {
@@ -19,5 +28,4 @@ export class TgdPainter {
19
28
  }
20
29
  }
21
30
  TgdPainter.log = new TgdLogger();
22
- TgdPainter.counter = 0;
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFpbnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wYWludGVyL3BhaW50ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUlwQyxNQUFNLE9BQWdCLFVBQVU7SUFBaEM7UUFLb0IsT0FBRSxHQUFHLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUV6Qzs7O1dBR0c7UUFDSSxTQUFJLEdBQUcsV0FBVyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUE7UUFFM0IsV0FBTSxHQUFHLElBQUksQ0FBQTtJQWV4QixDQUFDO0lBVEcsSUFBSSxTQUFTO1FBQ1QsT0FBTztZQUNILENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxhQUFhLENBQUMsRUFBRSxJQUFJO1NBQzlELENBQUE7SUFDTCxDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQWdCO1FBQ2xCLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksVUFBVSxJQUFJLENBQUMsRUFBRSxhQUFhLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFBO0lBQ3RGLENBQUM7O0FBMUJlLGNBQUcsR0FBRyxJQUFJLFNBQVMsRUFBRSxBQUFsQixDQUFrQjtBQUVwQixrQkFBTyxHQUFHLENBQUMsQUFBSixDQUFJIn0=
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFpbnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wYWludGVyL3BhaW50ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUNwQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBSXRDLE1BQU0sT0FBZ0IsVUFBVTtJQWE1QixZQUFZLElBQWE7UUFWVCxPQUFFLEdBQUcsTUFBTSxFQUFFLENBQUE7UUFFN0I7OztXQUdHO1FBQ0ksU0FBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLEVBQUUsVUFBVSxDQUFBO1FBRTNCLFdBQU0sR0FBRyxJQUFJLENBQUE7UUFHaEIsSUFBSSxJQUFJO1lBQUUsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUE7SUFDOUMsQ0FBQztJQUVELElBQUksUUFBUTtRQUNSLE1BQU0sRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFBO1FBQ3pCLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFBRSxPQUFPLElBQUksQ0FBQTtRQUNwQyxPQUFPLEdBQUcsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFBO0lBQzFCLENBQUM7SUFNRCxJQUFJLFNBQVM7UUFDVCxPQUFPO1lBQ0gsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLGFBQWEsQ0FBQyxFQUFFLElBQUk7U0FDOUQsQ0FBQTtJQUNMLENBQUM7SUFFRCxLQUFLLENBQUMsT0FBZ0I7UUFDbEIsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxVQUFVLElBQUksQ0FBQyxFQUFFLGFBQWEsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUE7SUFDdEYsQ0FBQzs7QUFsQ2UsY0FBRyxHQUFHLElBQUksU0FBUyxFQUFFLEFBQWxCLENBQWtCIn0=
@@ -0,0 +1,2 @@
1
+ export declare function nextId(): string;
2
+ //# sourceMappingURL=id.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"id.d.ts","sourceRoot":"","sources":["../../src/utils/id.ts"],"names":[],"mappings":"AAEA,wBAAgB,MAAM,WAErB"}
@@ -0,0 +1,5 @@
1
+ let id = 0;
2
+ export function nextId() {
3
+ return `[#${id++}]`;
4
+ }
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFBO0FBRVYsTUFBTSxVQUFVLE1BQU07SUFDbEIsT0FBTyxLQUFLLEVBQUUsRUFBRSxHQUFHLENBQUE7QUFDdkIsQ0FBQyJ9
@@ -1,16 +1,18 @@
1
1
  export * from "./action";
2
2
  export * from "./animation";
3
- export * from "./ensure";
4
- export * from "./error";
5
3
  export * from "./assert";
6
4
  export * from "./bbox";
7
5
  export * from "./canvas";
8
6
  export * from "./cyclic-buffer";
9
7
  export * from "./easing-function";
8
+ export * from "./ensure";
9
+ export * from "./error";
10
10
  export * from "./framebuffer";
11
11
  export * from "./fullscreen";
12
+ export * from "./id";
12
13
  export * from "./pbo";
13
14
  export * from "./state";
14
15
  export * from "./texture";
16
+ export * from "./value";
15
17
  export * from "./webgl";
16
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,OAAO,CAAA;AACrB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,MAAM,CAAA;AACpB,cAAc,OAAO,CAAA;AACrB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA"}
@@ -1,16 +1,18 @@
1
1
  export * from "./action/index.js";
2
2
  export * from "./animation/index.js";
3
- export * from "./ensure.js";
4
- export * from "./error.js";
5
3
  export * from "./assert.js";
6
4
  export * from "./bbox.js";
7
5
  export * from "./canvas.js";
8
6
  export * from "./cyclic-buffer.js";
9
7
  export * from "./easing-function/index.js";
8
+ export * from "./ensure.js";
9
+ export * from "./error.js";
10
10
  export * from "./framebuffer.js";
11
11
  export * from "./fullscreen.js";
12
+ export * from "./id.js";
12
13
  export * from "./pbo.js";
13
14
  export * from "./state/index.js";
14
15
  export * from "./texture.js";
16
+ export * from "./value.js";
15
17
  export * from "./webgl.js";
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUE7QUFDeEIsY0FBYyxhQUFhLENBQUE7QUFDM0IsY0FBYyxVQUFVLENBQUE7QUFDeEIsY0FBYyxTQUFTLENBQUE7QUFDdkIsY0FBYyxVQUFVLENBQUE7QUFDeEIsY0FBYyxRQUFRLENBQUE7QUFDdEIsY0FBYyxVQUFVLENBQUE7QUFDeEIsY0FBYyxpQkFBaUIsQ0FBQTtBQUMvQixjQUFjLG1CQUFtQixDQUFBO0FBQ2pDLGNBQWMsZUFBZSxDQUFBO0FBQzdCLGNBQWMsY0FBYyxDQUFBO0FBQzVCLGNBQWMsT0FBTyxDQUFBO0FBQ3JCLGNBQWMsU0FBUyxDQUFBO0FBQ3ZCLGNBQWMsV0FBVyxDQUFBO0FBQ3pCLGNBQWMsU0FBUyxDQUFBIn0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUE7QUFDeEIsY0FBYyxhQUFhLENBQUE7QUFDM0IsY0FBYyxVQUFVLENBQUE7QUFDeEIsY0FBYyxRQUFRLENBQUE7QUFDdEIsY0FBYyxVQUFVLENBQUE7QUFDeEIsY0FBYyxpQkFBaUIsQ0FBQTtBQUMvQixjQUFjLG1CQUFtQixDQUFBO0FBQ2pDLGNBQWMsVUFBVSxDQUFBO0FBQ3hCLGNBQWMsU0FBUyxDQUFBO0FBQ3ZCLGNBQWMsZUFBZSxDQUFBO0FBQzdCLGNBQWMsY0FBYyxDQUFBO0FBQzVCLGNBQWMsTUFBTSxDQUFBO0FBQ3BCLGNBQWMsT0FBTyxDQUFBO0FBQ3JCLGNBQWMsU0FBUyxDQUFBO0FBQ3ZCLGNBQWMsV0FBVyxDQUFBO0FBQ3pCLGNBQWMsU0FBUyxDQUFBO0FBQ3ZCLGNBQWMsU0FBUyxDQUFBIn0=
@@ -0,0 +1,12 @@
1
+ /**
2
+ * In some asynchronous scenarios, we don't know if a value has been initialized when we need it.
3
+ * This class allows you to wait for the value to be defined.
4
+ */
5
+ export declare class TgdValueWaitable<T> {
6
+ private _value;
7
+ private resolvers;
8
+ get value(): T | undefined;
9
+ set value(v: T | undefined);
10
+ waitUntiDefined(): Promise<T>;
11
+ }
12
+ //# sourceMappingURL=value.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"value.d.ts","sourceRoot":"","sources":["../../src/utils/value.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,gBAAgB,CAAC,CAAC;IAC9B,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,SAAS,CAA6B;IAE9C,IAAW,KAAK,IAII,CAAC,GAAG,SAAS,CAFhC;IAED,IAAW,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,EAMhC;IAEM,eAAe,IAAI,OAAO,CAAC,CAAC,CAAC;CAUpC"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * In some asynchronous scenarios, we don't know if a value has been initialized when we need it.
3
+ * This class allows you to wait for the value to be defined.
4
+ */
5
+ export class TgdValueWaitable {
6
+ constructor() {
7
+ this._value = undefined;
8
+ this.resolvers = [];
9
+ }
10
+ get value() {
11
+ return this._value;
12
+ }
13
+ set value(v) {
14
+ this._value = v;
15
+ if (v !== undefined) {
16
+ this.resolvers.forEach((resolve) => resolve(v));
17
+ this.resolvers = [];
18
+ }
19
+ }
20
+ waitUntiDefined() {
21
+ return new Promise((resolve) => {
22
+ const { value } = this;
23
+ if (value !== undefined) {
24
+ resolve(value);
25
+ return;
26
+ }
27
+ this.resolvers.push(resolve);
28
+ });
29
+ }
30
+ }
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvdmFsdWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGdCQUFnQjtJQUE3QjtRQUNTLFdBQU0sR0FBa0IsU0FBUyxDQUFBO1FBQ2pDLGNBQVMsR0FBMkIsRUFBRSxDQUFBO0lBd0IvQyxDQUFDO0lBdEJBLElBQVcsS0FBSztRQUNmLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQTtJQUNuQixDQUFDO0lBRUQsSUFBVyxLQUFLLENBQUMsQ0FBZ0I7UUFDaEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUE7UUFDZixJQUFJLENBQUMsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDL0MsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUE7UUFDcEIsQ0FBQztJQUNGLENBQUM7SUFFTSxlQUFlO1FBQ3JCLE9BQU8sSUFBSSxPQUFPLENBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNqQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFBO1lBQ3RCLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUN6QixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7Z0JBQ2QsT0FBTTtZQUNQLENBQUM7WUFDRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUM3QixDQUFDLENBQUMsQ0FBQTtJQUNILENBQUM7Q0FDRCJ9
@@ -1,2 +1,2 @@
1
- export declare const version = "2.0.136";
1
+ export declare const version = "2.0.138";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1,2 +1,2 @@
1
- export const version = "2.0.136";
1
+ export const version = "2.0.138";
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy92ZXJzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUEifQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tolokoban/tgd",
3
- "version": "2.0.136",
3
+ "version": "2.0.138",
4
4
  "description": "ToloGameDev library for WebGL2",
5
5
  "homepage": "https://tolokoban.github.io/tgd2",
6
6
  "main": "./lib/dist/index.js",