zx-kit 0.28.0 → 0.29.0
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 +53 -1
- package/dist/cache.d.ts +68 -0
- package/dist/cache.d.ts.map +1 -0
- package/dist/cache.js +84 -0
- package/dist/cache.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> **A Speccy-flavoured fantasy toolkit for tiny TypeScript browser games.**
|
|
4
4
|
> Inspired by the ZX Spectrum — not an emulator, not a hardware clone.
|
|
5
5
|
|
|
6
|
-
Spectrum-palette canvas rendering. ROM bitmap font. AY-3-8912 three-channel audio. Beeper SFX. Tile maps. Free-roaming sprites. Collision detection. Saves. Camera. Scene manager. Particle pool. Dithered lighting. Zero dependencies. TypeScript-first.
|
|
6
|
+
Spectrum-palette canvas rendering. ROM bitmap font. AY-3-8912 three-channel audio. Beeper SFX. Tile maps. Free-roaming sprites. Collision detection. Saves. Camera. Scene manager. Particle pool. Dithered lighting. Offscreen layer cache. Zero dependencies. TypeScript-first.
|
|
7
7
|
|
|
8
8
|
[](https://www.npmjs.com/package/zx-kit)
|
|
9
9
|
[](LICENSE)
|
|
@@ -27,6 +27,7 @@ zx-kit captures that aesthetic in TypeScript. You get the Spectrum's palette, RO
|
|
|
27
27
|
- **Authentic 15-color palette** — normal and bright variants, palette-enforced at compile time via the `SpectrumColor` type
|
|
28
28
|
- **Canvas renderer** — pixel-perfect scaled rendering, sprite flipping, text drawing, CRT scanline overlay, animated border flashing
|
|
29
29
|
- **Tile map engine** — scrollable maps, O(1) id-index, smart seasonal background swapping, solid-tile collision queries
|
|
30
|
+
- **Offscreen layer cache** — render a static or rarely-changing layer (tile map, CRT overlay) once to an offscreen canvas and blit it each frame; `dirty`-flag invalidation turns thousands of per-pixel `fillRect`s into a single `drawImage`
|
|
30
31
|
- **Free-roaming sprites** — position, velocity, gravity, `flipX` caching, transparent or opaque background
|
|
31
32
|
- **Three-tier collision** — AABB overlap tests, generic rect-vs-tile wall resolution (any sprite size), and pixel-precise mask overlap with O(pixels) sorted-merge intersection — no allocations per frame
|
|
32
33
|
- **Keyboard and gamepad input** — configurable key-repeat, transparent gamepad polling, single-consume action flags, instant state reset on phase transitions
|
|
@@ -589,6 +590,7 @@ requestAnimationFrame(loop)
|
|
|
589
590
|
| [`font.ts`](#fontts--rom-bitmap-font) | 96-character ROM font, raw bitmap access |
|
|
590
591
|
| [`i18n.ts`](#i18nts--runtime-locale-selection) | Type-safe runtime locale selection for translated string packs |
|
|
591
592
|
| [`lighting.ts`](#lightingts--dithered-cave-darkness) | Dithered cave darkness: pre-baked level tiles + dirty-cell buffer, one blit/frame (no per-frame putImageData) |
|
|
593
|
+
| [`cache.ts`](#cachets--offscreen-layer-cache) | Offscreen layer cache: render a static layer once, blit each frame, `dirty`-flag invalidation |
|
|
592
594
|
| [`music.ts`](#musicts--note-name-ay-music) | Write AY music by note name (`A5`, `C#4`) and loop it for background tracks |
|
|
593
595
|
|
|
594
596
|
---
|
|
@@ -2740,6 +2742,56 @@ track.stop()
|
|
|
2740
2742
|
|
|
2741
2743
|
---
|
|
2742
2744
|
|
|
2745
|
+
## `cache.ts` — Offscreen Layer Cache
|
|
2746
|
+
|
|
2747
|
+
`drawBitmap`, `drawSprite` and `drawTileMapAt` paint **one `fillRect` per lit
|
|
2748
|
+
pixel** — perfect for a moving sprite, but lethal for a full-screen layer redrawn
|
|
2749
|
+
every frame (a scrolling tile map can be thousands of `fillRect`s per frame). The
|
|
2750
|
+
cure is to render that layer **once** to an offscreen canvas, then blit it with a
|
|
2751
|
+
single `drawImage`.
|
|
2752
|
+
|
|
2753
|
+
A `LayerCache` is an offscreen canvas plus a `dirty` flag. `refreshLayer` re-runs
|
|
2754
|
+
your draw callback **only while the cache is dirty**, then clears the flag; call
|
|
2755
|
+
`invalidateLayer` whenever the layer's contents change (a tile edited, a level
|
|
2756
|
+
reset) to force exactly one re-render. Headless-safe: with no `document` the
|
|
2757
|
+
canvas is `null`, the draw is skipped, and nothing throws.
|
|
2758
|
+
|
|
2759
|
+
### `createLayerCache(width, height): LayerCache`
|
|
2760
|
+
|
|
2761
|
+
Creates an offscreen cache of the given pixel size, starting `dirty`. Image
|
|
2762
|
+
smoothing is disabled for crisp ZX output. Create once; reuse across frames.
|
|
2763
|
+
Throws if `width`/`height` is not a positive number.
|
|
2764
|
+
|
|
2765
|
+
### `invalidateLayer(layer): void`
|
|
2766
|
+
|
|
2767
|
+
Marks the cache stale so the next `refreshLayer` re-renders it.
|
|
2768
|
+
|
|
2769
|
+
### `refreshLayer(layer, render): HTMLCanvasElement | null`
|
|
2770
|
+
|
|
2771
|
+
Runs `render(offscreenCtx)` only if the cache is dirty (the context is cleared
|
|
2772
|
+
first), then clears the flag and returns the offscreen canvas to blit (or `null`
|
|
2773
|
+
when headless). Blitting is yours: a `drawImage` source window for a scrolling
|
|
2774
|
+
camera, or `drawImage(canvas, 0, 0)` for a static overlay.
|
|
2775
|
+
|
|
2776
|
+
```ts
|
|
2777
|
+
// Cache a whole tile map; blit a moving camera window each frame.
|
|
2778
|
+
const world = tileMapWorldSize(map)
|
|
2779
|
+
const tiles = createLayerCache(world.width, world.height) // once
|
|
2780
|
+
|
|
2781
|
+
// game loop:
|
|
2782
|
+
refreshLayer(tiles, (lctx) => drawTileMapAt(lctx, map, 0, 0, world.width, world.height))
|
|
2783
|
+
if (tiles.canvas) ctx.drawImage(tiles.canvas, camX, camY, 256, 192, 0, 0, 256, 192)
|
|
2784
|
+
|
|
2785
|
+
// when a tile changes (a platform crumbles, the level resets):
|
|
2786
|
+
invalidateLayer(tiles)
|
|
2787
|
+
```
|
|
2788
|
+
|
|
2789
|
+
> Pairs naturally with `tilescroll` / `tilemap`: cache the static geometry and
|
|
2790
|
+
> invalidate only on the rare tile change. The same primitive caches any static
|
|
2791
|
+
> overlay — e.g. `refreshLayer(overlay, (c) => drawScanlines(c))`.
|
|
2792
|
+
|
|
2793
|
+
---
|
|
2794
|
+
|
|
2743
2795
|
## Architecture
|
|
2744
2796
|
|
|
2745
2797
|
### Module structure
|
package/dist/cache.d.ts
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module cache
|
|
3
|
+
*
|
|
4
|
+
* **Offscreen layer cache** — render a static (or rarely-changing) layer to an
|
|
5
|
+
* offscreen canvas **once**, then blit it every frame with a single `drawImage`
|
|
6
|
+
* instead of re-rasterising it. This is the antidote to the per-pixel `fillRect`
|
|
7
|
+
* cost of {@link "renderer" | drawBitmap} / {@link "tilescroll" | drawTileMapAt}
|
|
8
|
+
* when they are used for a full-screen layer on every frame.
|
|
9
|
+
*
|
|
10
|
+
* The cache is **dirty-driven**: {@link refreshLayer} re-runs your draw callback
|
|
11
|
+
* only while the cache is `dirty`, then clears the flag. Call
|
|
12
|
+
* {@link invalidateLayer} whenever the layer's contents change (a tile edited, a
|
|
13
|
+
* palette swap, a level reset) to force exactly one re-render next frame.
|
|
14
|
+
*
|
|
15
|
+
* Headless-safe: with no `document` (Node / SSR / tests) the canvas is `null`,
|
|
16
|
+
* `refreshLayer` skips the draw and returns `null`, and nothing throws — mirrors
|
|
17
|
+
* the {@link "lighting" | lighting} module's degrade-gracefully behaviour.
|
|
18
|
+
*
|
|
19
|
+
* @example Cache a whole tile map, blit a moving camera window each frame
|
|
20
|
+
* ```ts
|
|
21
|
+
* const world = tileMapWorldSize(map)
|
|
22
|
+
* const tiles = createLayerCache(world.width, world.height) // once
|
|
23
|
+
* // game loop:
|
|
24
|
+
* refreshLayer(tiles, (lctx) => drawTileMapAt(lctx, map, 0, 0, world.width, world.height))
|
|
25
|
+
* if (tiles.canvas) ctx.drawImage(tiles.canvas, camX, camY, viewW, viewH, 0, 0, viewW, viewH)
|
|
26
|
+
* // when a tile changes (e.g. a platform crumbles or the level resets):
|
|
27
|
+
* invalidateLayer(tiles)
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* @example Cache a static overlay — drawn once, blitted forever
|
|
31
|
+
* ```ts
|
|
32
|
+
* const overlay = createLayerCache(canvas.width, canvas.height)
|
|
33
|
+
* refreshLayer(overlay, (lctx) => drawScanlines(lctx))
|
|
34
|
+
* if (overlay.canvas) ctx.drawImage(overlay.canvas, 0, 0)
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
/** An offscreen canvas plus a dirty flag. `canvas` is `null` when headless. */
|
|
38
|
+
export interface LayerCache {
|
|
39
|
+
/** Width of the cached layer in pixels. */
|
|
40
|
+
readonly width: number;
|
|
41
|
+
/** Height of the cached layer in pixels. */
|
|
42
|
+
readonly height: number;
|
|
43
|
+
/** The offscreen canvas to blit, or `null` with no `document` (headless). */
|
|
44
|
+
readonly canvas: HTMLCanvasElement | null;
|
|
45
|
+
/** When `true`, the next {@link refreshLayer} re-runs the draw callback. */
|
|
46
|
+
dirty: boolean;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Creates an offscreen layer cache of the given pixel size. Starts `dirty`, so
|
|
50
|
+
* the first {@link refreshLayer} renders it. Image smoothing is disabled on the
|
|
51
|
+
* offscreen context for crisp ZX output. Create once and reuse across frames.
|
|
52
|
+
*
|
|
53
|
+
* @throws if `width` or `height` is not a positive finite number.
|
|
54
|
+
*/
|
|
55
|
+
export declare function createLayerCache(width: number, height: number): LayerCache;
|
|
56
|
+
/** Marks the cache stale so the next {@link refreshLayer} re-renders it. */
|
|
57
|
+
export declare function invalidateLayer(layer: LayerCache): void;
|
|
58
|
+
/**
|
|
59
|
+
* Re-renders the cache via `render` **only if it is dirty**, then clears the
|
|
60
|
+
* dirty flag. `render` receives the offscreen 2D context (already cleared) and
|
|
61
|
+
* should draw the whole layer in layer-local coordinates (top-left = `0,0`).
|
|
62
|
+
* Returns the offscreen canvas to blit (or `null` when headless).
|
|
63
|
+
*
|
|
64
|
+
* Blitting is the caller's job: use a `drawImage` source window for a scrolling
|
|
65
|
+
* camera, or `drawImage(canvas, 0, 0)` for a static overlay.
|
|
66
|
+
*/
|
|
67
|
+
export declare function refreshLayer(layer: LayerCache, render: (ctx: CanvasRenderingContext2D) => void): HTMLCanvasElement | null;
|
|
68
|
+
//# sourceMappingURL=cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,+EAA+E;AAC/E,MAAM,WAAW,UAAU;IACzB,2CAA2C;IAC3C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,4CAA4C;IAC5C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAAA;IACzC,4EAA4E;IAC5E,KAAK,EAAE,OAAO,CAAA;CACf;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,UAAU,CAa1E;AAED,4EAA4E;AAC5E,wBAAgB,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAEvD;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,CAAC,GAAG,EAAE,wBAAwB,KAAK,IAAI,GAC9C,iBAAiB,GAAG,IAAI,CAW1B"}
|
package/dist/cache.js
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module cache
|
|
3
|
+
*
|
|
4
|
+
* **Offscreen layer cache** — render a static (or rarely-changing) layer to an
|
|
5
|
+
* offscreen canvas **once**, then blit it every frame with a single `drawImage`
|
|
6
|
+
* instead of re-rasterising it. This is the antidote to the per-pixel `fillRect`
|
|
7
|
+
* cost of {@link "renderer" | drawBitmap} / {@link "tilescroll" | drawTileMapAt}
|
|
8
|
+
* when they are used for a full-screen layer on every frame.
|
|
9
|
+
*
|
|
10
|
+
* The cache is **dirty-driven**: {@link refreshLayer} re-runs your draw callback
|
|
11
|
+
* only while the cache is `dirty`, then clears the flag. Call
|
|
12
|
+
* {@link invalidateLayer} whenever the layer's contents change (a tile edited, a
|
|
13
|
+
* palette swap, a level reset) to force exactly one re-render next frame.
|
|
14
|
+
*
|
|
15
|
+
* Headless-safe: with no `document` (Node / SSR / tests) the canvas is `null`,
|
|
16
|
+
* `refreshLayer` skips the draw and returns `null`, and nothing throws — mirrors
|
|
17
|
+
* the {@link "lighting" | lighting} module's degrade-gracefully behaviour.
|
|
18
|
+
*
|
|
19
|
+
* @example Cache a whole tile map, blit a moving camera window each frame
|
|
20
|
+
* ```ts
|
|
21
|
+
* const world = tileMapWorldSize(map)
|
|
22
|
+
* const tiles = createLayerCache(world.width, world.height) // once
|
|
23
|
+
* // game loop:
|
|
24
|
+
* refreshLayer(tiles, (lctx) => drawTileMapAt(lctx, map, 0, 0, world.width, world.height))
|
|
25
|
+
* if (tiles.canvas) ctx.drawImage(tiles.canvas, camX, camY, viewW, viewH, 0, 0, viewW, viewH)
|
|
26
|
+
* // when a tile changes (e.g. a platform crumbles or the level resets):
|
|
27
|
+
* invalidateLayer(tiles)
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* @example Cache a static overlay — drawn once, blitted forever
|
|
31
|
+
* ```ts
|
|
32
|
+
* const overlay = createLayerCache(canvas.width, canvas.height)
|
|
33
|
+
* refreshLayer(overlay, (lctx) => drawScanlines(lctx))
|
|
34
|
+
* if (overlay.canvas) ctx.drawImage(overlay.canvas, 0, 0)
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
/**
|
|
38
|
+
* Creates an offscreen layer cache of the given pixel size. Starts `dirty`, so
|
|
39
|
+
* the first {@link refreshLayer} renders it. Image smoothing is disabled on the
|
|
40
|
+
* offscreen context for crisp ZX output. Create once and reuse across frames.
|
|
41
|
+
*
|
|
42
|
+
* @throws if `width` or `height` is not a positive finite number.
|
|
43
|
+
*/
|
|
44
|
+
export function createLayerCache(width, height) {
|
|
45
|
+
if (!Number.isFinite(width) || width <= 0 || !Number.isFinite(height) || height <= 0) {
|
|
46
|
+
throw new Error(`createLayerCache: width and height must be positive, got ${width}×${height}`);
|
|
47
|
+
}
|
|
48
|
+
let canvas = null;
|
|
49
|
+
if (typeof document !== 'undefined') {
|
|
50
|
+
canvas = document.createElement('canvas');
|
|
51
|
+
canvas.width = width;
|
|
52
|
+
canvas.height = height;
|
|
53
|
+
const ctx = canvas.getContext('2d');
|
|
54
|
+
if (ctx)
|
|
55
|
+
ctx.imageSmoothingEnabled = false;
|
|
56
|
+
}
|
|
57
|
+
return { width, height, canvas, dirty: true };
|
|
58
|
+
}
|
|
59
|
+
/** Marks the cache stale so the next {@link refreshLayer} re-renders it. */
|
|
60
|
+
export function invalidateLayer(layer) {
|
|
61
|
+
layer.dirty = true;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Re-renders the cache via `render` **only if it is dirty**, then clears the
|
|
65
|
+
* dirty flag. `render` receives the offscreen 2D context (already cleared) and
|
|
66
|
+
* should draw the whole layer in layer-local coordinates (top-left = `0,0`).
|
|
67
|
+
* Returns the offscreen canvas to blit (or `null` when headless).
|
|
68
|
+
*
|
|
69
|
+
* Blitting is the caller's job: use a `drawImage` source window for a scrolling
|
|
70
|
+
* camera, or `drawImage(canvas, 0, 0)` for a static overlay.
|
|
71
|
+
*/
|
|
72
|
+
export function refreshLayer(layer, render) {
|
|
73
|
+
if (layer.dirty) {
|
|
74
|
+
layer.dirty = false;
|
|
75
|
+
const ctx = layer.canvas ? layer.canvas.getContext('2d') : null;
|
|
76
|
+
if (ctx) {
|
|
77
|
+
ctx.clearRect(0, 0, layer.width, layer.height);
|
|
78
|
+
ctx.imageSmoothingEnabled = false;
|
|
79
|
+
render(ctx);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return layer.canvas;
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=cache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAcH;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,MAAc;IAC5D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QACrF,MAAM,IAAI,KAAK,CAAC,4DAA4D,KAAK,IAAI,MAAM,EAAE,CAAC,CAAA;IAChG,CAAC;IACD,IAAI,MAAM,GAA6B,IAAI,CAAA;IAC3C,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;QACpC,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;QACzC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAA;QACpB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAA;QACtB,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACnC,IAAI,GAAG;YAAE,GAAG,CAAC,qBAAqB,GAAG,KAAK,CAAA;IAC5C,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;AAC/C,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,eAAe,CAAC,KAAiB;IAC/C,KAAK,CAAC,KAAK,GAAG,IAAI,CAAA;AACpB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAC1B,KAAiB,EACjB,MAA+C;IAE/C,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,KAAK,CAAC,KAAK,GAAG,KAAK,CAAA;QACnB,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAC/D,IAAI,GAAG,EAAE,CAAC;YACR,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;YAC9C,GAAG,CAAC,qBAAqB,GAAG,KAAK,CAAA;YACjC,MAAM,CAAC,GAAG,CAAC,CAAA;QACb,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,CAAA;AACrB,CAAC"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,UAAU,CAAA;AACxB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,UAAU,CAAA;AACxB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,UAAU,CAAA;AACxB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,UAAU,CAAA;AACxB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA"}
|