@cleocode/animations 2026.5.29
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/LICENSE +22 -0
- package/dist/src/braille.d.ts +28 -0
- package/dist/src/braille.d.ts.map +1 -0
- package/dist/src/braille.js +463 -0
- package/dist/src/braille.js.map +1 -0
- package/dist/src/index.d.ts +12 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +12 -0
- package/dist/src/index.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -0
- package/package.json +64 -0
- package/scripts/demo.cjs +119 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2024 Gunnar Gray (original `unicode-animations` project)
|
|
4
|
+
Copyright (c) 2026 CLEO Code (`@cleocode/animations` fork)
|
|
5
|
+
|
|
6
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
7
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
8
|
+
in the Software without restriction, including without limitation the rights
|
|
9
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
10
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
11
|
+
furnished to do so, subject to the following conditions:
|
|
12
|
+
|
|
13
|
+
The above copyright notice and this permission notice shall be included in all
|
|
14
|
+
copies or substantial portions of the Software.
|
|
15
|
+
|
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
17
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
18
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
19
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
20
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
21
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
22
|
+
SOFTWARE.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unicode Braille Spinners
|
|
3
|
+
*
|
|
4
|
+
* A collection of animated unicode spinners built on braille characters (U+2800 block).
|
|
5
|
+
* Each braille char is a 2×4 dot grid — these generators compose them into
|
|
6
|
+
* multi-character animated frames for use as loading indicators.
|
|
7
|
+
*
|
|
8
|
+
* @remarks
|
|
9
|
+
* Forked from gunnargray-dev/unicode-animations (MIT). The CLEO fork adds
|
|
10
|
+
* canon-themed spinners over time and integrates with the CLEO terminal runtime
|
|
11
|
+
* (TTY detection, --quiet, NO_COLOR) via the AnimationContext layer (added later).
|
|
12
|
+
*/
|
|
13
|
+
export interface Spinner {
|
|
14
|
+
readonly frames: readonly string[];
|
|
15
|
+
readonly interval: number;
|
|
16
|
+
}
|
|
17
|
+
export type BrailleSpinnerName = 'braille' | 'braillewave' | 'dna' | 'scan' | 'rain' | 'scanline' | 'pulse' | 'snake' | 'sparkle' | 'cascade' | 'columns' | 'orbit' | 'breathe' | 'waverows' | 'checkerboard' | 'helix' | 'fillsweep' | 'diagswipe';
|
|
18
|
+
/**
|
|
19
|
+
* Convert a 2D boolean grid into a braille string.
|
|
20
|
+
* grid[row][col] = true means dot is raised.
|
|
21
|
+
* Width must be even (2 dot-columns per braille char).
|
|
22
|
+
*/
|
|
23
|
+
export declare function gridToBraille(grid: boolean[][]): string;
|
|
24
|
+
/** Create an empty grid of given dimensions */
|
|
25
|
+
export declare function makeGrid(rows: number, cols: number): boolean[][];
|
|
26
|
+
export declare const spinners: Record<BrailleSpinnerName, Spinner>;
|
|
27
|
+
export default spinners;
|
|
28
|
+
//# sourceMappingURL=braille.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"braille.d.ts","sourceRoot":"","sources":["../../src/braille.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,MAAM,kBAAkB,GAC1B,SAAS,GACT,aAAa,GACb,KAAK,GACL,MAAM,GACN,MAAM,GACN,UAAU,GACV,OAAO,GACP,OAAO,GACP,SAAS,GACT,SAAS,GACT,SAAS,GACT,OAAO,GACP,SAAS,GACT,UAAU,GACV,cAAc,GACd,OAAO,GACP,WAAW,GACX,WAAW,CAAC;AAqBhB;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG,MAAM,CAkBvD;AAED,+CAA+C;AAC/C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,EAAE,EAAE,CAGhE;AA8XD,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,kBAAkB,EAAE,OAAO,CA4CxD,CAAC;AAEF,eAAe,QAAQ,CAAC"}
|
|
@@ -0,0 +1,463 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unicode Braille Spinners
|
|
3
|
+
*
|
|
4
|
+
* A collection of animated unicode spinners built on braille characters (U+2800 block).
|
|
5
|
+
* Each braille char is a 2×4 dot grid — these generators compose them into
|
|
6
|
+
* multi-character animated frames for use as loading indicators.
|
|
7
|
+
*
|
|
8
|
+
* @remarks
|
|
9
|
+
* Forked from gunnargray-dev/unicode-animations (MIT). The CLEO fork adds
|
|
10
|
+
* canon-themed spinners over time and integrates with the CLEO terminal runtime
|
|
11
|
+
* (TTY detection, --quiet, NO_COLOR) via the AnimationContext layer (added later).
|
|
12
|
+
*/
|
|
13
|
+
/* -------------------------------------------
|
|
14
|
+
Braille Grid Utility
|
|
15
|
+
|
|
16
|
+
Each braille char is a 2-col × 4-row dot grid.
|
|
17
|
+
Dot numbering & bit values:
|
|
18
|
+
Row 0: dot1 (0x01) dot4 (0x08)
|
|
19
|
+
Row 1: dot2 (0x02) dot5 (0x10)
|
|
20
|
+
Row 2: dot3 (0x04) dot6 (0x20)
|
|
21
|
+
Row 3: dot7 (0x40) dot8 (0x80)
|
|
22
|
+
|
|
23
|
+
Base codepoint: U+2800
|
|
24
|
+
------------------------------------------- */
|
|
25
|
+
const BRAILLE_DOT_MAP = [
|
|
26
|
+
[0x01, 0x08], // row 0
|
|
27
|
+
[0x02, 0x10], // row 1
|
|
28
|
+
[0x04, 0x20], // row 2
|
|
29
|
+
[0x40, 0x80], // row 3
|
|
30
|
+
];
|
|
31
|
+
/**
|
|
32
|
+
* Convert a 2D boolean grid into a braille string.
|
|
33
|
+
* grid[row][col] = true means dot is raised.
|
|
34
|
+
* Width must be even (2 dot-columns per braille char).
|
|
35
|
+
*/
|
|
36
|
+
export function gridToBraille(grid) {
|
|
37
|
+
const rows = grid.length;
|
|
38
|
+
const cols = grid[0] ? grid[0].length : 0;
|
|
39
|
+
const charCount = Math.ceil(cols / 2);
|
|
40
|
+
let result = '';
|
|
41
|
+
for (let c = 0; c < charCount; c++) {
|
|
42
|
+
let code = 0x2800;
|
|
43
|
+
for (let r = 0; r < 4 && r < rows; r++) {
|
|
44
|
+
for (let d = 0; d < 2; d++) {
|
|
45
|
+
const col = c * 2 + d;
|
|
46
|
+
if (col < cols && grid[r] && grid[r][col]) {
|
|
47
|
+
code |= BRAILLE_DOT_MAP[r][d];
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
result += String.fromCodePoint(code);
|
|
52
|
+
}
|
|
53
|
+
return result;
|
|
54
|
+
}
|
|
55
|
+
/** Create an empty grid of given dimensions */
|
|
56
|
+
export function makeGrid(rows, cols) {
|
|
57
|
+
if (rows <= 0 || cols <= 0)
|
|
58
|
+
return [];
|
|
59
|
+
return Array.from({ length: rows }, () => Array(cols).fill(false));
|
|
60
|
+
}
|
|
61
|
+
/* -------------------------------------------
|
|
62
|
+
Frame Generators
|
|
63
|
+
------------------------------------------- */
|
|
64
|
+
function genScan() {
|
|
65
|
+
const W = 8, H = 4, frames = [];
|
|
66
|
+
for (let pos = -1; pos < W + 1; pos++) {
|
|
67
|
+
const g = makeGrid(H, W);
|
|
68
|
+
for (let r = 0; r < H; r++) {
|
|
69
|
+
for (let c = 0; c < W; c++) {
|
|
70
|
+
if (c === pos || c === pos - 1)
|
|
71
|
+
g[r][c] = true;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
frames.push(gridToBraille(g));
|
|
75
|
+
}
|
|
76
|
+
return frames;
|
|
77
|
+
}
|
|
78
|
+
function genRain() {
|
|
79
|
+
const W = 8, H = 4, totalFrames = 12, frames = [];
|
|
80
|
+
const offsets = [0, 3, 1, 5, 2, 7, 4, 6];
|
|
81
|
+
for (let f = 0; f < totalFrames; f++) {
|
|
82
|
+
const g = makeGrid(H, W);
|
|
83
|
+
for (let c = 0; c < W; c++) {
|
|
84
|
+
const row = (f + offsets[c]) % (H + 2);
|
|
85
|
+
if (row < H)
|
|
86
|
+
g[row][c] = true;
|
|
87
|
+
}
|
|
88
|
+
frames.push(gridToBraille(g));
|
|
89
|
+
}
|
|
90
|
+
return frames;
|
|
91
|
+
}
|
|
92
|
+
function genScanLine() {
|
|
93
|
+
const W = 6, H = 4, frames = [];
|
|
94
|
+
const positions = [0, 1, 2, 3, 2, 1];
|
|
95
|
+
for (const row of positions) {
|
|
96
|
+
const g = makeGrid(H, W);
|
|
97
|
+
for (let c = 0; c < W; c++) {
|
|
98
|
+
g[row][c] = true;
|
|
99
|
+
if (row > 0)
|
|
100
|
+
g[row - 1][c] = c % 2 === 0;
|
|
101
|
+
}
|
|
102
|
+
frames.push(gridToBraille(g));
|
|
103
|
+
}
|
|
104
|
+
return frames;
|
|
105
|
+
}
|
|
106
|
+
function genPulse() {
|
|
107
|
+
const W = 6, H = 4, frames = [];
|
|
108
|
+
const cx = W / 2 - 0.5, cy = H / 2 - 0.5;
|
|
109
|
+
const radii = [0.5, 1.2, 2, 3, 3.5];
|
|
110
|
+
for (const r of radii) {
|
|
111
|
+
const g = makeGrid(H, W);
|
|
112
|
+
for (let row = 0; row < H; row++) {
|
|
113
|
+
for (let col = 0; col < W; col++) {
|
|
114
|
+
const dist = Math.sqrt((col - cx) ** 2 + (row - cy) ** 2);
|
|
115
|
+
if (Math.abs(dist - r) < 0.9)
|
|
116
|
+
g[row][col] = true;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
frames.push(gridToBraille(g));
|
|
120
|
+
}
|
|
121
|
+
return frames;
|
|
122
|
+
}
|
|
123
|
+
function genSnake() {
|
|
124
|
+
const W = 4, H = 4;
|
|
125
|
+
const path = [];
|
|
126
|
+
for (let r = 0; r < H; r++) {
|
|
127
|
+
if (r % 2 === 0) {
|
|
128
|
+
for (let c = 0; c < W; c++)
|
|
129
|
+
path.push([r, c]);
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
for (let c = W - 1; c >= 0; c--)
|
|
133
|
+
path.push([r, c]);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
const frames = [];
|
|
137
|
+
for (let i = 0; i < path.length; i++) {
|
|
138
|
+
const g = makeGrid(H, W);
|
|
139
|
+
for (let t = 0; t < 4; t++) {
|
|
140
|
+
const idx = (i - t + path.length) % path.length;
|
|
141
|
+
g[path[idx][0]][path[idx][1]] = true;
|
|
142
|
+
}
|
|
143
|
+
frames.push(gridToBraille(g));
|
|
144
|
+
}
|
|
145
|
+
return frames;
|
|
146
|
+
}
|
|
147
|
+
function genSparkle() {
|
|
148
|
+
const patterns = [
|
|
149
|
+
[
|
|
150
|
+
1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0,
|
|
151
|
+
0,
|
|
152
|
+
],
|
|
153
|
+
[
|
|
154
|
+
0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 1,
|
|
155
|
+
0,
|
|
156
|
+
],
|
|
157
|
+
[
|
|
158
|
+
0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0,
|
|
159
|
+
1,
|
|
160
|
+
],
|
|
161
|
+
[
|
|
162
|
+
1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1,
|
|
163
|
+
0,
|
|
164
|
+
],
|
|
165
|
+
[
|
|
166
|
+
0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0,
|
|
167
|
+
1,
|
|
168
|
+
],
|
|
169
|
+
[
|
|
170
|
+
0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0,
|
|
171
|
+
0,
|
|
172
|
+
],
|
|
173
|
+
];
|
|
174
|
+
const W = 8, H = 4, frames = [];
|
|
175
|
+
for (const pat of patterns) {
|
|
176
|
+
const g = makeGrid(H, W);
|
|
177
|
+
for (let r = 0; r < H; r++) {
|
|
178
|
+
for (let c = 0; c < W; c++) {
|
|
179
|
+
g[r][c] = !!pat[r * W + c];
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
frames.push(gridToBraille(g));
|
|
183
|
+
}
|
|
184
|
+
return frames;
|
|
185
|
+
}
|
|
186
|
+
function genCascade() {
|
|
187
|
+
const W = 8, H = 4, frames = [];
|
|
188
|
+
for (let offset = -2; offset < W + H; offset++) {
|
|
189
|
+
const g = makeGrid(H, W);
|
|
190
|
+
for (let r = 0; r < H; r++) {
|
|
191
|
+
for (let c = 0; c < W; c++) {
|
|
192
|
+
const diag = c + r;
|
|
193
|
+
if (diag === offset || diag === offset - 1)
|
|
194
|
+
g[r][c] = true;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
frames.push(gridToBraille(g));
|
|
198
|
+
}
|
|
199
|
+
return frames;
|
|
200
|
+
}
|
|
201
|
+
function genColumns() {
|
|
202
|
+
const W = 6, H = 4, frames = [];
|
|
203
|
+
for (let col = 0; col < W; col++) {
|
|
204
|
+
for (let fillTo = H - 1; fillTo >= 0; fillTo--) {
|
|
205
|
+
const g = makeGrid(H, W);
|
|
206
|
+
for (let pc = 0; pc < col; pc++) {
|
|
207
|
+
for (let r = 0; r < H; r++)
|
|
208
|
+
g[r][pc] = true;
|
|
209
|
+
}
|
|
210
|
+
for (let r = fillTo; r < H; r++)
|
|
211
|
+
g[r][col] = true;
|
|
212
|
+
frames.push(gridToBraille(g));
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
const full = makeGrid(H, W);
|
|
216
|
+
for (let r = 0; r < H; r++)
|
|
217
|
+
for (let c = 0; c < W; c++)
|
|
218
|
+
full[r][c] = true;
|
|
219
|
+
frames.push(gridToBraille(full));
|
|
220
|
+
frames.push(gridToBraille(makeGrid(H, W)));
|
|
221
|
+
return frames;
|
|
222
|
+
}
|
|
223
|
+
function genOrbit() {
|
|
224
|
+
const W = 2, H = 4;
|
|
225
|
+
const path = [
|
|
226
|
+
[0, 0],
|
|
227
|
+
[0, 1],
|
|
228
|
+
[1, 1],
|
|
229
|
+
[2, 1],
|
|
230
|
+
[3, 1],
|
|
231
|
+
[3, 0],
|
|
232
|
+
[2, 0],
|
|
233
|
+
[1, 0],
|
|
234
|
+
];
|
|
235
|
+
const frames = [];
|
|
236
|
+
for (let i = 0; i < path.length; i++) {
|
|
237
|
+
const g = makeGrid(H, W);
|
|
238
|
+
g[path[i][0]][path[i][1]] = true;
|
|
239
|
+
const t1 = (i - 1 + path.length) % path.length;
|
|
240
|
+
g[path[t1][0]][path[t1][1]] = true;
|
|
241
|
+
frames.push(gridToBraille(g));
|
|
242
|
+
}
|
|
243
|
+
return frames;
|
|
244
|
+
}
|
|
245
|
+
function genBreathe() {
|
|
246
|
+
const stages = [
|
|
247
|
+
[],
|
|
248
|
+
[[1, 0]],
|
|
249
|
+
[
|
|
250
|
+
[0, 1],
|
|
251
|
+
[2, 0],
|
|
252
|
+
],
|
|
253
|
+
[
|
|
254
|
+
[0, 0],
|
|
255
|
+
[1, 1],
|
|
256
|
+
[3, 0],
|
|
257
|
+
],
|
|
258
|
+
[
|
|
259
|
+
[0, 0],
|
|
260
|
+
[1, 1],
|
|
261
|
+
[2, 0],
|
|
262
|
+
[3, 1],
|
|
263
|
+
],
|
|
264
|
+
[
|
|
265
|
+
[0, 0],
|
|
266
|
+
[0, 1],
|
|
267
|
+
[1, 1],
|
|
268
|
+
[2, 0],
|
|
269
|
+
[3, 1],
|
|
270
|
+
],
|
|
271
|
+
[
|
|
272
|
+
[0, 0],
|
|
273
|
+
[0, 1],
|
|
274
|
+
[1, 0],
|
|
275
|
+
[2, 1],
|
|
276
|
+
[3, 0],
|
|
277
|
+
[3, 1],
|
|
278
|
+
],
|
|
279
|
+
[
|
|
280
|
+
[0, 0],
|
|
281
|
+
[0, 1],
|
|
282
|
+
[1, 0],
|
|
283
|
+
[1, 1],
|
|
284
|
+
[2, 0],
|
|
285
|
+
[3, 0],
|
|
286
|
+
[3, 1],
|
|
287
|
+
],
|
|
288
|
+
[
|
|
289
|
+
[0, 0],
|
|
290
|
+
[0, 1],
|
|
291
|
+
[1, 0],
|
|
292
|
+
[1, 1],
|
|
293
|
+
[2, 0],
|
|
294
|
+
[2, 1],
|
|
295
|
+
[3, 0],
|
|
296
|
+
[3, 1],
|
|
297
|
+
],
|
|
298
|
+
];
|
|
299
|
+
const frames = [];
|
|
300
|
+
const sequence = [...stages, ...stages.slice().reverse().slice(1)];
|
|
301
|
+
for (const dots of sequence) {
|
|
302
|
+
const g = makeGrid(4, 2);
|
|
303
|
+
for (const [r, c] of dots)
|
|
304
|
+
g[r][c] = true;
|
|
305
|
+
frames.push(gridToBraille(g));
|
|
306
|
+
}
|
|
307
|
+
return frames;
|
|
308
|
+
}
|
|
309
|
+
function genWaveRows() {
|
|
310
|
+
const W = 8, H = 4, totalFrames = 16, frames = [];
|
|
311
|
+
for (let f = 0; f < totalFrames; f++) {
|
|
312
|
+
const g = makeGrid(H, W);
|
|
313
|
+
for (let c = 0; c < W; c++) {
|
|
314
|
+
const phase = f - c * 0.5;
|
|
315
|
+
const row = Math.round(((Math.sin(phase * 0.8) + 1) / 2) * (H - 1));
|
|
316
|
+
g[row][c] = true;
|
|
317
|
+
if (row > 0)
|
|
318
|
+
g[row - 1][c] = (f + c) % 3 === 0;
|
|
319
|
+
}
|
|
320
|
+
frames.push(gridToBraille(g));
|
|
321
|
+
}
|
|
322
|
+
return frames;
|
|
323
|
+
}
|
|
324
|
+
function genCheckerboard() {
|
|
325
|
+
const W = 6, H = 4, frames = [];
|
|
326
|
+
for (let phase = 0; phase < 4; phase++) {
|
|
327
|
+
const g = makeGrid(H, W);
|
|
328
|
+
for (let r = 0; r < H; r++) {
|
|
329
|
+
for (let c = 0; c < W; c++) {
|
|
330
|
+
if (phase < 2) {
|
|
331
|
+
g[r][c] = (r + c + phase) % 2 === 0;
|
|
332
|
+
}
|
|
333
|
+
else {
|
|
334
|
+
g[r][c] = (r + c + phase) % 3 === 0;
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
frames.push(gridToBraille(g));
|
|
339
|
+
}
|
|
340
|
+
return frames;
|
|
341
|
+
}
|
|
342
|
+
function genHelix() {
|
|
343
|
+
const W = 8, H = 4, totalFrames = 16, frames = [];
|
|
344
|
+
for (let f = 0; f < totalFrames; f++) {
|
|
345
|
+
const g = makeGrid(H, W);
|
|
346
|
+
for (let c = 0; c < W; c++) {
|
|
347
|
+
const phase = (f + c) * (Math.PI / 4);
|
|
348
|
+
const y1 = Math.round(((Math.sin(phase) + 1) / 2) * (H - 1));
|
|
349
|
+
const y2 = Math.round(((Math.sin(phase + Math.PI) + 1) / 2) * (H - 1));
|
|
350
|
+
g[y1][c] = true;
|
|
351
|
+
g[y2][c] = true;
|
|
352
|
+
}
|
|
353
|
+
frames.push(gridToBraille(g));
|
|
354
|
+
}
|
|
355
|
+
return frames;
|
|
356
|
+
}
|
|
357
|
+
function genFillSweep() {
|
|
358
|
+
const W = 4, H = 4, frames = [];
|
|
359
|
+
for (let row = H - 1; row >= 0; row--) {
|
|
360
|
+
const g = makeGrid(H, W);
|
|
361
|
+
for (let r = row; r < H; r++) {
|
|
362
|
+
for (let c = 0; c < W; c++)
|
|
363
|
+
g[r][c] = true;
|
|
364
|
+
}
|
|
365
|
+
frames.push(gridToBraille(g));
|
|
366
|
+
}
|
|
367
|
+
const full = makeGrid(H, W);
|
|
368
|
+
for (let r = 0; r < H; r++)
|
|
369
|
+
for (let c = 0; c < W; c++)
|
|
370
|
+
full[r][c] = true;
|
|
371
|
+
frames.push(gridToBraille(full));
|
|
372
|
+
frames.push(gridToBraille(full));
|
|
373
|
+
for (let row = 0; row < H; row++) {
|
|
374
|
+
const g = makeGrid(H, W);
|
|
375
|
+
for (let r = row + 1; r < H; r++) {
|
|
376
|
+
for (let c = 0; c < W; c++)
|
|
377
|
+
g[r][c] = true;
|
|
378
|
+
}
|
|
379
|
+
frames.push(gridToBraille(g));
|
|
380
|
+
}
|
|
381
|
+
frames.push(gridToBraille(makeGrid(H, W)));
|
|
382
|
+
return frames;
|
|
383
|
+
}
|
|
384
|
+
function genDiagonalSwipe() {
|
|
385
|
+
const W = 4, H = 4, frames = [];
|
|
386
|
+
const maxDiag = W + H - 2;
|
|
387
|
+
for (let d = 0; d <= maxDiag; d++) {
|
|
388
|
+
const g = makeGrid(H, W);
|
|
389
|
+
for (let r = 0; r < H; r++) {
|
|
390
|
+
for (let c = 0; c < W; c++) {
|
|
391
|
+
if (r + c <= d)
|
|
392
|
+
g[r][c] = true;
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
frames.push(gridToBraille(g));
|
|
396
|
+
}
|
|
397
|
+
const full = makeGrid(H, W);
|
|
398
|
+
for (let r = 0; r < H; r++)
|
|
399
|
+
for (let c = 0; c < W; c++)
|
|
400
|
+
full[r][c] = true;
|
|
401
|
+
frames.push(gridToBraille(full));
|
|
402
|
+
for (let d = 0; d <= maxDiag; d++) {
|
|
403
|
+
const g = makeGrid(H, W);
|
|
404
|
+
for (let r = 0; r < H; r++) {
|
|
405
|
+
for (let c = 0; c < W; c++) {
|
|
406
|
+
if (r + c > d)
|
|
407
|
+
g[r][c] = true;
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
frames.push(gridToBraille(g));
|
|
411
|
+
}
|
|
412
|
+
frames.push(gridToBraille(makeGrid(H, W)));
|
|
413
|
+
return frames;
|
|
414
|
+
}
|
|
415
|
+
/* -------------------------------------------
|
|
416
|
+
Spinner Registry
|
|
417
|
+
------------------------------------------- */
|
|
418
|
+
export const spinners = {
|
|
419
|
+
// === Classic braille single-char ===
|
|
420
|
+
braille: {
|
|
421
|
+
frames: ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'],
|
|
422
|
+
interval: 80,
|
|
423
|
+
},
|
|
424
|
+
braillewave: {
|
|
425
|
+
frames: ['⠁⠂⠄⡀', '⠂⠄⡀⢀', '⠄⡀⢀⠠', '⡀⢀⠠⠐', '⢀⠠⠐⠈', '⠠⠐⠈⠁', '⠐⠈⠁⠂', '⠈⠁⠂⠄'],
|
|
426
|
+
interval: 100,
|
|
427
|
+
},
|
|
428
|
+
dna: {
|
|
429
|
+
frames: [
|
|
430
|
+
'⠋⠉⠙⠚',
|
|
431
|
+
'⠉⠙⠚⠒',
|
|
432
|
+
'⠙⠚⠒⠂',
|
|
433
|
+
'⠚⠒⠂⠂',
|
|
434
|
+
'⠒⠂⠂⠒',
|
|
435
|
+
'⠂⠂⠒⠲',
|
|
436
|
+
'⠂⠒⠲⠴',
|
|
437
|
+
'⠒⠲⠴⠤',
|
|
438
|
+
'⠲⠴⠤⠄',
|
|
439
|
+
'⠴⠤⠄⠋',
|
|
440
|
+
'⠤⠄⠋⠉',
|
|
441
|
+
'⠄⠋⠉⠙',
|
|
442
|
+
],
|
|
443
|
+
interval: 80,
|
|
444
|
+
},
|
|
445
|
+
// === Generated braille grid animations ===
|
|
446
|
+
scan: { frames: genScan(), interval: 70 },
|
|
447
|
+
rain: { frames: genRain(), interval: 100 },
|
|
448
|
+
scanline: { frames: genScanLine(), interval: 120 },
|
|
449
|
+
pulse: { frames: genPulse(), interval: 180 },
|
|
450
|
+
snake: { frames: genSnake(), interval: 80 },
|
|
451
|
+
sparkle: { frames: genSparkle(), interval: 150 },
|
|
452
|
+
cascade: { frames: genCascade(), interval: 60 },
|
|
453
|
+
columns: { frames: genColumns(), interval: 60 },
|
|
454
|
+
orbit: { frames: genOrbit(), interval: 100 },
|
|
455
|
+
breathe: { frames: genBreathe(), interval: 100 },
|
|
456
|
+
waverows: { frames: genWaveRows(), interval: 90 },
|
|
457
|
+
checkerboard: { frames: genCheckerboard(), interval: 250 },
|
|
458
|
+
helix: { frames: genHelix(), interval: 80 },
|
|
459
|
+
fillsweep: { frames: genFillSweep(), interval: 100 },
|
|
460
|
+
diagswipe: { frames: genDiagonalSwipe(), interval: 60 },
|
|
461
|
+
};
|
|
462
|
+
export default spinners;
|
|
463
|
+
//# sourceMappingURL=braille.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"braille.js","sourceRoot":"","sources":["../../src/braille.ts"],"names":[],"mappings":"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,EAAE,CAAC;YAC3F,CAAC;SACF;QACD;YACE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;YAC3F,CAAC;SACF;QACD;YACE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;YAC3F,CAAC;SACF;QACD;YACE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;YAC3F,CAAC;SACF;QACD;YACE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @cleocode/animations — terminal animation primitives for the cleo CLI and CleoOS.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* Forked from gunnargray-dev/unicode-animations (MIT). Currently re-exports the
|
|
6
|
+
* upstream braille spinner registry verbatim. Future passes add canon-themed
|
|
7
|
+
* spinner aliases (looming, weaving, heartbeat, awakening, sweeping, watching),
|
|
8
|
+
* progress-bar primitives, spark animations, and an AnimationContext that ties
|
|
9
|
+
* rendering to the LAFS FlagResolution (TTY, --quiet, NO_COLOR).
|
|
10
|
+
*/
|
|
11
|
+
export { type BrailleSpinnerName, default, gridToBraille, makeGrid, type Spinner, spinners, } from './braille.js';
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,KAAK,kBAAkB,EACvB,OAAO,EACP,aAAa,EACb,QAAQ,EACR,KAAK,OAAO,EACZ,QAAQ,GACT,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @cleocode/animations — terminal animation primitives for the cleo CLI and CleoOS.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* Forked from gunnargray-dev/unicode-animations (MIT). Currently re-exports the
|
|
6
|
+
* upstream braille spinner registry verbatim. Future passes add canon-themed
|
|
7
|
+
* spinner aliases (looming, weaving, heartbeat, awakening, sweeping, watching),
|
|
8
|
+
* progress-bar primitives, spark animations, and an AnimationContext that ties
|
|
9
|
+
* rendering to the LAFS FlagResolution (TTY, --quiet, NO_COLOR).
|
|
10
|
+
*/
|
|
11
|
+
export { default, gridToBraille, makeGrid, spinners, } from './braille.js';
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAEL,OAAO,EACP,aAAa,EACb,QAAQ,EAER,QAAQ,GACT,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"fileNames":["../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.scripthost.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2025.float16.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/.pnpm/typescript@6.0.2/node_modules/typescript/lib/lib.es2022.full.d.ts","../src/braille.ts","../src/index.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/compatibility/iterators.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/globals.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/web-globals/abortcontroller.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/web-globals/crypto.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/web-globals/domexception.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/web-globals/events.d.ts","../../../node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/index.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/utility.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/header.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/readable.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/fetch.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/formdata.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/connector.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/client-stats.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/client.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/errors.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/global-origin.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/pool-stats.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/pool.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/handlers.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/h2c-client.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/agent.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/mock-call-history.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/mock-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/mock-client.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/mock-pool.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/snapshot-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/mock-errors.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/retry-handler.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/retry-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/api.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/cache-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/interceptors.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/util.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/cookies.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/patch.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/websocket.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/eventsource.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/content-type.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/cache.d.ts","../../../node_modules/.pnpm/undici-types@7.16.0/node_modules/undici-types/index.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/web-globals/fetch.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/web-globals/navigator.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/web-globals/storage.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/web-globals/streams.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/assert.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/assert/strict.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/async_hooks.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/buffer.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/child_process.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/cluster.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/console.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/constants.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/crypto.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/dgram.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/dns.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/dns/promises.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/domain.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/events.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/fs.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/fs/promises.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/http.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/http2.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/https.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/inspector.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/inspector.generated.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/module.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/net.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/os.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/path.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/process.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/punycode.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/querystring.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/readline.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/readline/promises.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/repl.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/sea.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/sqlite.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/stream.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/stream/promises.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/stream/web.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/string_decoder.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/test.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/timers.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/timers/promises.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/tls.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/trace_events.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/tty.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/url.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/util.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/v8.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/vm.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/wasi.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/worker_threads.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/zlib.d.ts","../../../node_modules/.pnpm/@types+node@24.12.0/node_modules/@types/node/index.d.ts","../../../node_modules/.pnpm/@vitest+pretty-format@4.1.4/node_modules/@vitest/pretty-format/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.4/node_modules/@vitest/utils/dist/display.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.4/node_modules/@vitest/utils/dist/types.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.4/node_modules/@vitest/utils/dist/helpers.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.4/node_modules/@vitest/utils/dist/timers.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.4/node_modules/@vitest/utils/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.4/node_modules/@vitest/utils/dist/types.d-BCElaP-c.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.4/node_modules/@vitest/utils/dist/diff.d.ts","../../../node_modules/.pnpm/@vitest+runner@4.1.4/node_modules/@vitest/runner/dist/tasks.d-Bh0IjN67.d.ts","../../../node_modules/.pnpm/@vitest+runner@4.1.4/node_modules/@vitest/runner/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.4_@opentelemetry+api@1.9.0_@types+node@24.12.0_@vitest+coverage-v8@4.1.4_vit_5f40cf3539bbcd2acaf64480baf72397/node_modules/vitest/dist/chunks/traces.d.402V_yFI.d.ts","../../../node_modules/.pnpm/vite@8.0.8_@types+node@24.12.0_esbuild@0.28.0_jiti@2.6.1_tsx@4.21.0_yaml@2.8.3/node_modules/vite/types/hmrPayload.d.ts","../../../node_modules/.pnpm/vite@8.0.8_@types+node@24.12.0_esbuild@0.28.0_jiti@2.6.1_tsx@4.21.0_yaml@2.8.3/node_modules/vite/dist/node/chunks/moduleRunnerTransport.d.ts","../../../node_modules/.pnpm/vite@8.0.8_@types+node@24.12.0_esbuild@0.28.0_jiti@2.6.1_tsx@4.21.0_yaml@2.8.3/node_modules/vite/types/customEvent.d.ts","../../../node_modules/.pnpm/vite@8.0.8_@types+node@24.12.0_esbuild@0.28.0_jiti@2.6.1_tsx@4.21.0_yaml@2.8.3/node_modules/vite/types/hot.d.ts","../../../node_modules/.pnpm/vite@8.0.8_@types+node@24.12.0_esbuild@0.28.0_jiti@2.6.1_tsx@4.21.0_yaml@2.8.3/node_modules/vite/dist/node/module-runner.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@4.1.4/node_modules/@vitest/snapshot/dist/environment.d-DOJxxZV9.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@4.1.4/node_modules/@vitest/snapshot/dist/rawSnapshot.d-D_X3-62x.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@4.1.4/node_modules/@vitest/snapshot/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.4_@opentelemetry+api@1.9.0_@types+node@24.12.0_@vitest+coverage-v8@4.1.4_vit_5f40cf3539bbcd2acaf64480baf72397/node_modules/vitest/dist/chunks/config.d.ChUh6-ad.d.ts","../../../node_modules/.pnpm/vitest@4.1.4_@opentelemetry+api@1.9.0_@types+node@24.12.0_@vitest+coverage-v8@4.1.4_vit_5f40cf3539bbcd2acaf64480baf72397/node_modules/vitest/dist/chunks/environment.d.CrsxCzP1.d.ts","../../../node_modules/.pnpm/vitest@4.1.4_@opentelemetry+api@1.9.0_@types+node@24.12.0_@vitest+coverage-v8@4.1.4_vit_5f40cf3539bbcd2acaf64480baf72397/node_modules/vitest/dist/chunks/rpc.d.BFMWpdph.d.ts","../../../node_modules/.pnpm/vitest@4.1.4_@opentelemetry+api@1.9.0_@types+node@24.12.0_@vitest+coverage-v8@4.1.4_vit_5f40cf3539bbcd2acaf64480baf72397/node_modules/vitest/dist/chunks/worker.d.CckNUvI5.d.ts","../../../node_modules/.pnpm/vitest@4.1.4_@opentelemetry+api@1.9.0_@types+node@24.12.0_@vitest+coverage-v8@4.1.4_vit_5f40cf3539bbcd2acaf64480baf72397/node_modules/vitest/dist/chunks/browser.d.C0zGu1u9.d.ts","../../../node_modules/.pnpm/@vitest+spy@4.1.4/node_modules/@vitest/spy/optional-types.d.ts","../../../node_modules/.pnpm/@vitest+spy@4.1.4/node_modules/@vitest/spy/dist/index.d.ts","../../../node_modules/.pnpm/tinyrainbow@3.1.0/node_modules/tinyrainbow/dist/index.d.ts","../../../node_modules/.pnpm/@standard-schema+spec@1.1.0/node_modules/@standard-schema/spec/dist/index.d.ts","../../../node_modules/.pnpm/@types+deep-eql@4.0.2/node_modules/@types/deep-eql/index.d.ts","../../../node_modules/.pnpm/assertion-error@2.0.1/node_modules/assertion-error/index.d.ts","../../../node_modules/.pnpm/@types+chai@5.2.3/node_modules/@types/chai/index.d.ts","../../../node_modules/.pnpm/@vitest+expect@4.1.4/node_modules/@vitest/expect/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+runner@4.1.4/node_modules/@vitest/runner/dist/utils.d.ts","../../../node_modules/.pnpm/tinybench@2.9.0/node_modules/tinybench/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.4_@opentelemetry+api@1.9.0_@types+node@24.12.0_@vitest+coverage-v8@4.1.4_vit_5f40cf3539bbcd2acaf64480baf72397/node_modules/vitest/dist/chunks/benchmark.d.DAaHLpsq.d.ts","../../../node_modules/.pnpm/vitest@4.1.4_@opentelemetry+api@1.9.0_@types+node@24.12.0_@vitest+coverage-v8@4.1.4_vit_5f40cf3539bbcd2acaf64480baf72397/node_modules/vitest/dist/chunks/global.d.D74z04P1.d.ts","../../../node_modules/.pnpm/vitest@4.1.4_@opentelemetry+api@1.9.0_@types+node@24.12.0_@vitest+coverage-v8@4.1.4_vit_5f40cf3539bbcd2acaf64480baf72397/node_modules/vitest/optional-runtime-types.d.ts","../../../node_modules/.pnpm/@vitest+mocker@4.1.4_vite@8.0.8_@types+node@24.12.0_esbuild@0.28.0_jiti@2.6.1_tsx@4.21.0_yaml@2.8.3_/node_modules/@vitest/mocker/dist/types.d-BjI5eAwu.d.ts","../../../node_modules/.pnpm/@vitest+mocker@4.1.4_vite@8.0.8_@types+node@24.12.0_esbuild@0.28.0_jiti@2.6.1_tsx@4.21.0_yaml@2.8.3_/node_modules/@vitest/mocker/dist/index.d-B41z0AuW.d.ts","../../../node_modules/.pnpm/@vitest+mocker@4.1.4_vite@8.0.8_@types+node@24.12.0_esbuild@0.28.0_jiti@2.6.1_tsx@4.21.0_yaml@2.8.3_/node_modules/@vitest/mocker/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.4_@opentelemetry+api@1.9.0_@types+node@24.12.0_@vitest+coverage-v8@4.1.4_vit_5f40cf3539bbcd2acaf64480baf72397/node_modules/vitest/dist/chunks/suite.d.udJtyAgw.d.ts","../../../node_modules/.pnpm/vitest@4.1.4_@opentelemetry+api@1.9.0_@types+node@24.12.0_@vitest+coverage-v8@4.1.4_vit_5f40cf3539bbcd2acaf64480baf72397/node_modules/vitest/dist/chunks/evaluatedModules.d.BxJ5omdx.d.ts","../../../node_modules/.pnpm/vitest@4.1.4_@opentelemetry+api@1.9.0_@types+node@24.12.0_@vitest+coverage-v8@4.1.4_vit_5f40cf3539bbcd2acaf64480baf72397/node_modules/vitest/dist/runners.d.ts","../../../node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/utils.d.ts","../../../node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/overloads.d.ts","../../../node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/branding.d.ts","../../../node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/messages.d.ts","../../../node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.4_@opentelemetry+api@1.9.0_@types+node@24.12.0_@vitest+coverage-v8@4.1.4_vit_5f40cf3539bbcd2acaf64480baf72397/node_modules/vitest/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.4_@opentelemetry+api@1.9.0_@types+node@24.12.0_@vitest+coverage-v8@4.1.4_vit_5f40cf3539bbcd2acaf64480baf72397/node_modules/vitest/globals.d.ts"],"fileIdsList":[[70,125,142,143],[70,125,142,143,204,205],[70,122,123,125,142,143],[70,124,125,142,143],[125,142,143],[70,125,130,142,143,160],[70,125,126,131,136,142,143,145,157,168],[70,125,126,127,136,142,143,145],[70,125,128,142,143,169],[70,125,129,130,137,142,143,146],[70,125,130,142,143,157,165],[70,125,131,133,136,142,143,145],[70,124,125,132,142,143],[70,125,133,134,142,143],[70,125,135,136,142,143],[70,124,125,136,142,143],[70,125,136,137,138,142,143,157,168],[70,125,136,137,138,142,143,152,157,160],[70,117,125,133,136,139,142,143,145,157,168],[70,125,136,137,139,140,142,143,145,157,165,168],[70,125,139,141,142,143,157,165,168],[68,69,70,71,72,73,74,75,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174],[70,125,136,142,143],[70,125,142,143,144,168],[70,125,133,136,142,143,145,157],[70,125,142,143,146],[70,125,142,143,147],[70,124,125,142,143,148],[70,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174],[70,125,142,143,150],[70,125,142,143,151],[70,125,136,142,143,152,153],[70,125,142,143,152,154,169,171],[70,125,137,142,143],[70,125,136,142,143,157,158,160],[70,125,142,143,159,160],[70,125,142,143,157,158],[70,125,142,143,160],[70,125,142,143,161],[70,122,125,142,143,157,162,168],[70,125,136,142,143,163,164],[70,125,142,143,163,164],[70,125,130,142,143,145,157,165],[70,125,142,143,166],[70,125,142,143,145,167],[70,125,139,142,143,151,168],[70,125,130,142,143,169],[70,125,142,143,157,170],[70,125,142,143,144,171],[70,125,142,143,172],[70,125,130,142,143],[70,117,125,142,143],[70,125,142,143,173],[70,117,125,136,138,142,143,148,157,160,168,170,171,173],[70,125,142,143,157,174],[70,125,142,143,177,183,201,202,203,206],[70,125,142,143,213],[70,125,142,143,213,214],[70,125,142,143,181,183,184],[70,125,142,143,181,183],[70,125,142,143,181],[70,125,142,143,176,181,192,193],[70,125,142,143,176,181,192],[70,125,142,143,200],[70,125,142,143,176,182],[70,125,142,143,176],[70,125,142,143,178],[70,125,142,143,176,177,178,179,180],[70,125,142,143,219,220],[70,125,142,143,219,220,221,222],[70,125,142,143,219,221],[70,125,142,143,219],[70,83,86,89,90,125,142,143,168],[70,86,125,142,143,157,168],[70,86,90,125,142,143,168],[70,125,142,143,157],[70,80,125,142,143],[70,84,125,142,143],[70,82,83,86,125,142,143,168],[70,125,142,143,145,165],[70,125,142,143,175],[70,80,125,142,143,175],[70,82,86,125,142,143,145,168],[70,77,78,79,81,85,125,136,142,143,157,168],[70,86,94,102,125,142,143],[70,78,84,125,142,143],[70,86,111,112,125,142,143],[70,78,81,86,125,142,143,160,168,175],[70,86,125,142,143],[70,82,86,125,142,143,168],[70,77,125,142,143],[70,80,81,82,84,85,86,87,88,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,112,113,114,115,116,125,142,143],[70,86,104,107,125,133,142,143],[70,86,94,95,96,125,142,143],[70,84,86,95,97,125,142,143],[70,85,125,142,143],[70,78,80,86,125,142,143],[70,86,90,95,97,125,142,143],[70,90,125,142,143],[70,84,86,89,125,142,143,168],[70,78,82,86,94,125,142,143],[70,86,104,125,142,143],[70,97,125,142,143],[70,80,86,111,125,142,143,160,173,175],[70,125,142,143,187],[70,125,142,143,187,188,189,190],[70,125,142,143,189],[70,125,142,143,185,208,209,211],[70,125,142,143,185,186,198,211],[70,125,142,143,176,183,185,194,211],[70,125,142,143,191],[70,125,142,143,176,185,194,197,207,210,211],[70,125,142,143,185,186,191,194,211],[70,125,142,143,185,208,209,210,211],[70,125,142,143,185,191,195,196,197,211],[70,125,142,143,176,181,183,185,186,191,194,195,196,197,198,199,201,207,208,209,210,211,212,215,216,217,218,223],[70,125,142,143,176,183,185,186,194,195,208,209,210,211,216],[70,125,142,143,224],[66,70,125,142,143]],"fileInfos":[{"version":"bcd24271a113971ba9eb71ff8cb01bc6b0f872a85c23fdbe5d93065b375933cd","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f88bedbeb09c6f5a6645cb24c7c55f1aa22d19ae96c8e6959cbd8b85a707bc6","impliedFormat":1},{"version":"7fe93b39b810eadd916be8db880dd7f0f7012a5cc6ffb62de8f62a2117fa6f1f","impliedFormat":1},{"version":"bb0074cc08b84a2374af33d8bf044b80851ccc9e719a5e202eacf40db2c31600","impliedFormat":1},{"version":"1a7daebe4f45fb03d9ec53d60008fbf9ac45a697fdc89e4ce218bc94b94f94d6","impliedFormat":1},{"version":"f94b133a3cb14a288803be545ac2683e0d0ff6661bcd37e31aaaec54fc382aed","impliedFormat":1},{"version":"f59d0650799f8782fd74cf73c19223730c6d1b9198671b1c5b3a38e1188b5953","impliedFormat":1},{"version":"8a15b4607d9a499e2dbeed9ec0d3c0d7372c850b2d5f1fb259e8f6d41d468a84","impliedFormat":1},{"version":"26e0fe14baee4e127f4365d1ae0b276f400562e45e19e35fd2d4c296684715e6","impliedFormat":1},{"version":"d6b1eba8496bdd0eed6fc8a685768fe01b2da4a0388b5fe7df558290bffcf32f","affectsGlobalScope":true,"impliedFormat":1},{"version":"7f57fc4404ff020bc45b9c620aff2b40f700b95fe31164024c453a5e3c163c54","impliedFormat":1},{"version":"7f57fc4404ff020bc45b9c620aff2b40f700b95fe31164024c453a5e3c163c54","impliedFormat":1},{"version":"2a2de5b9459b3fc44decd9ce6100b72f1b002ef523126c1d3d8b2a4a63d74d78","affectsGlobalScope":true,"impliedFormat":1},{"version":"f13f4b465c99041e912db5c44129a94588e1aafee35a50eab51044833f50b4ee","affectsGlobalScope":true,"impliedFormat":1},{"version":"eadcffda2aa84802c73938e589b9e58248d74c59cb7fcbca6474e3435ac15504","affectsGlobalScope":true,"impliedFormat":1},{"version":"105ba8ff7ba746404fe1a2e189d1d3d2e0eb29a08c18dded791af02f29fb4711","affectsGlobalScope":true,"impliedFormat":1},{"version":"00343ca5b2e3d48fa5df1db6e32ea2a59afab09590274a6cccb1dbae82e60c7c","affectsGlobalScope":true,"impliedFormat":1},{"version":"ebd9f816d4002697cb2864bea1f0b70a103124e18a8cd9645eeccc09bdf80ab4","affectsGlobalScope":true,"impliedFormat":1},{"version":"2c1afac30a01772cd2a9a298a7ce7706b5892e447bb46bdbeef720f7b5da77ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"7b0225f483e4fa685625ebe43dd584bb7973bbd84e66a6ba7bbe175ee1048b4f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c0a4b8ac6ce74679c1da2b3795296f5896e31c38e888469a8e0f99dc3305de60","affectsGlobalScope":true,"impliedFormat":1},{"version":"3084a7b5f569088e0146533a00830e206565de65cae2239509168b11434cd84f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5079c53f0f141a0698faa903e76cb41cd664e3efb01cc17a5c46ec2eb0bef42","affectsGlobalScope":true,"impliedFormat":1},{"version":"32cafbc484dea6b0ab62cf8473182bbcb23020d70845b406f80b7526f38ae862","affectsGlobalScope":true,"impliedFormat":1},{"version":"fca4cdcb6d6c5ef18a869003d02c9f0fd95df8cfaf6eb431cd3376bc034cad36","affectsGlobalScope":true,"impliedFormat":1},{"version":"b93ec88115de9a9dc1b602291b85baf825c85666bf25985cc5f698073892b467","affectsGlobalScope":true,"impliedFormat":1},{"version":"f5c06dcc3fe849fcb297c247865a161f995cc29de7aa823afdd75aaaddc1419b","affectsGlobalScope":true,"impliedFormat":1},{"version":"b77e16112127a4b169ef0b8c3a4d730edf459c5f25fe52d5e436a6919206c4d7","affectsGlobalScope":true,"impliedFormat":1},{"version":"fbffd9337146eff822c7c00acbb78b01ea7ea23987f6c961eba689349e744f8c","affectsGlobalScope":true,"impliedFormat":1},{"version":"a995c0e49b721312f74fdfb89e4ba29bd9824c770bbb4021d74d2bf560e4c6bd","affectsGlobalScope":true,"impliedFormat":1},{"version":"c7b3542146734342e440a84b213384bfa188835537ddbda50d30766f0593aff9","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce6180fa19b1cccd07ee7f7dbb9a367ac19c0ed160573e4686425060b6df7f57","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f02e2476bccb9dbe21280d6090f0df17d2f66b74711489415a8aa4df73c9675","affectsGlobalScope":true,"impliedFormat":1},{"version":"45e3ab34c1c013c8ab2dc1ba4c80c780744b13b5676800ae2e3be27ae862c40c","affectsGlobalScope":true,"impliedFormat":1},{"version":"805c86f6cca8d7702a62a844856dbaa2a3fd2abef0536e65d48732441dde5b5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"e42e397f1a5a77994f0185fd1466520691456c772d06bf843e5084ceb879a0ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"f4c2b41f90c95b1c532ecc874bd3c111865793b23aebcc1c3cbbabcd5d76ffb0","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab26191cfad5b66afa11b8bf935ef1cd88fabfcb28d30b2dfa6fad877d050332","affectsGlobalScope":true,"impliedFormat":1},{"version":"2088bc26531e38fb05eedac2951480db5309f6be3fa4a08d2221abb0f5b4200d","affectsGlobalScope":true,"impliedFormat":1},{"version":"cb9d366c425fea79716a8fb3af0d78e6b22ebbab3bd64d25063b42dc9f531c1e","affectsGlobalScope":true,"impliedFormat":1},{"version":"500934a8089c26d57ebdb688fc9757389bb6207a3c8f0674d68efa900d2abb34","affectsGlobalScope":true,"impliedFormat":1},{"version":"689da16f46e647cef0d64b0def88910e818a5877ca5379ede156ca3afb780ac3","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc21cc8b6fee4f4c2440d08035b7ea3c06b3511314c8bab6bef7a92de58a2593","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ca53d13d2957003abb47922a71866ba7cb2068f8d154877c596d63c359fed25","affectsGlobalScope":true,"impliedFormat":1},{"version":"54725f8c4df3d900cb4dac84b64689ce29548da0b4e9b7c2de61d41c79293611","affectsGlobalScope":true,"impliedFormat":1},{"version":"e5594bc3076ac29e6c1ebda77939bc4c8833de72f654b6e376862c0473199323","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f3eb332c2d73e729f3364fcc0c2b375e72a121e8157d25a82d67a138c83a95c","affectsGlobalScope":true,"impliedFormat":1},{"version":"6f4427f9642ce8d500970e4e69d1397f64072ab73b97e476b4002a646ac743b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"48915f327cd1dea4d7bd358d9dc7732f58f9e1626a29cc0c05c8c692419d9bb7","affectsGlobalScope":true,"impliedFormat":1},{"version":"b7bf9377723203b5a6a4b920164df22d56a43f593269ba6ae1fdc97774b68855","affectsGlobalScope":true,"impliedFormat":1},{"version":"db9709688f82c9e5f65a119c64d835f906efe5f559d08b11642d56eb85b79357","affectsGlobalScope":true,"impliedFormat":1},{"version":"4b25b8c874acd1a4cf8444c3617e037d444d19080ac9f634b405583fd10ce1f7","affectsGlobalScope":true,"impliedFormat":1},{"version":"37be57d7c90cf1f8112ee2636a068d8fd181289f82b744160ec56a7dc158a9f5","affectsGlobalScope":true,"impliedFormat":1},{"version":"a917a49ac94cd26b754ab84e113369a75d1a47a710661d7cd25e961cc797065f","affectsGlobalScope":true,"impliedFormat":1},{"version":"6d3261badeb7843d157ef3e6f5d1427d0eeb0af0cf9df84a62cfd29fd47ac86e","affectsGlobalScope":true,"impliedFormat":1},{"version":"195daca651dde22f2167ac0d0a05e215308119a3100f5e6268e8317d05a92526","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b11e4285cd2bb164a4dc09248bdec69e9842517db4ca47c1ba913011e44ff2f","affectsGlobalScope":true,"impliedFormat":1},{"version":"0508571a52475e245b02bc50fa1394065a0a3d05277fbf5120c3784b85651799","affectsGlobalScope":true,"impliedFormat":1},{"version":"8f9af488f510c3015af3cc8c267a9e9d96c4dd38a1fdff0e11dc5a544711415b","affectsGlobalScope":true,"impliedFormat":1},{"version":"fc611fea8d30ea72c6bbfb599c9b4d393ce22e2f5bfef2172534781e7d138104","affectsGlobalScope":true,"impliedFormat":1},{"version":"f128dae7c44d8f35ee42e0a437000a57c9f06cc04f8b4fb42eebf44954d53dc8","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ecb8e347cb6b2a8927c09b86263663289418df375f5e68e11a0ae683776978f","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ce14b81c5cc821994aa8ec1d42b220dd41b27fcc06373bce3958af7421b77d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"b3a048b3e9302ef9a34ef4ebb9aecfb28b66abb3bce577206a79fee559c230da","affectsGlobalScope":true,"impliedFormat":1},{"version":"01a30f9e8582b369075c0808df71121e6855cb06fd8d3d39511d9ebb66405205","impliedFormat":1},{"version":"e780c85695bb96506796c16a15a8efd37d86229b884323b46cc7205b8348f796","signature":"da40d526de558ff0f6b32c8bc466921a6d30c36cf7a5f6b0fca59fbe5bb50e05","impliedFormat":99},{"version":"e1802ad13e78421d158278fc1d6909d9a8c3395f3fc3dce2f18ce7d3a939eeab","signature":"09e27bece63cb44b9c11b941f3173fb9957b16e30fcde58dce82e57a48283068","impliedFormat":99},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"378281aa35786c27d5811af7e6bcaa492eebd0c7013d48137c35bbc69a2b9751","affectsGlobalScope":true,"impliedFormat":1},{"version":"3af97acf03cc97de58a3a4bc91f8f616408099bc4233f6d0852e72a8ffb91ac9","affectsGlobalScope":true,"impliedFormat":1},{"version":"1b2dd1cbeb0cc6ae20795958ba5950395ebb2849b7c8326853dd15530c77ab0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"387a023d363f755eb63450a66c28b14cdd7bc30a104565e2dbf0a8988bb4a56c","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"4967529644e391115ca5592184d4b63980569adf60ee685f968fd59ab1557188","impliedFormat":1},{"version":"cdcf9ea426ad970f96ac930cd176d5c69c6c24eebd9fc580e1572d6c6a88f62c","impliedFormat":1},{"version":"23cd712e2ce083d68afe69224587438e5914b457b8acf87073c22494d706a3d0","impliedFormat":1},{"version":"487b694c3de27ddf4ad107d4007ad304d29effccf9800c8ae23c2093638d906a","impliedFormat":1},{"version":"3a80bc85f38526ca3b08007ee80712e7bb0601df178b23fbf0bf87036fce40ce","impliedFormat":1},{"version":"ccf4552357ce3c159ef75f0f0114e80401702228f1898bdc9402214c9499e8c0","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"68834d631c8838c715f225509cfc3927913b9cc7a4870460b5b60c8dbdb99baf","impliedFormat":1},{"version":"2931540c47ee0ff8a62860e61782eb17b155615db61e36986e54645ec67f67c2","impliedFormat":1},{"version":"ccab02f3920fc75c01174c47fcf67882a11daf16baf9e81701d0a94636e94556","impliedFormat":1},{"version":"f6faf5f74e4c4cc309a6c6a6c4da02dbb840be5d3e92905a23dcd7b2b0bd1986","impliedFormat":1},{"version":"ea6bc8de8b59f90a7a3960005fd01988f98fd0784e14bc6922dde2e93305ec7d","impliedFormat":1},{"version":"36107995674b29284a115e21a0618c4c2751b32a8766dd4cb3ba740308b16d59","impliedFormat":1},{"version":"914a0ae30d96d71915fc519ccb4efbf2b62c0ddfb3a3fc6129151076bc01dc60","impliedFormat":1},{"version":"33e981bf6376e939f99bd7f89abec757c64897d33c005036b9a10d9587d80187","impliedFormat":1},{"version":"7fd1b31fd35876b0aa650811c25ec2c97a3c6387e5473eb18004bed86cdd76b6","impliedFormat":1},{"version":"b41767d372275c154c7ea6c9d5449d9a741b8ce080f640155cc88ba1763e35b3","impliedFormat":1},{"version":"3bacf516d686d08682751a3bd2519ea3b8041a164bfb4f1d35728993e70a2426","impliedFormat":1},{"version":"7fb266686238369442bd1719bc0d7edd0199da4fb8540354e1ff7f16669b4323","impliedFormat":1},{"version":"0a60a292b89ca7218b8616f78e5bbd1c96b87e048849469cccb4355e98af959a","impliedFormat":1},{"version":"0b6e25234b4eec6ed96ab138d96eb70b135690d7dd01f3dd8a8ab291c35a683a","impliedFormat":1},{"version":"9666f2f84b985b62400d2e5ab0adae9ff44de9b2a34803c2c5bd3c8325b17dc0","impliedFormat":1},{"version":"40cd35c95e9cf22cfa5bd84e96408b6fcbca55295f4ff822390abb11afbc3dca","impliedFormat":1},{"version":"b1616b8959bf557feb16369c6124a97a0e74ed6f49d1df73bb4b9ddf68acf3f3","impliedFormat":1},{"version":"5b03a034c72146b61573aab280f295b015b9168470f2df05f6080a2122f9b4df","impliedFormat":1},{"version":"40b463c6766ca1b689bfcc46d26b5e295954f32ad43e37ee6953c0a677e4ae2b","impliedFormat":1},{"version":"249b9cab7f5d628b71308c7d9bb0a808b50b091e640ba3ed6e2d0516f4a8d91d","impliedFormat":1},{"version":"80aae6afc67faa5ac0b32b5b8bc8cc9f7fa299cff15cf09cc2e11fd28c6ae29e","impliedFormat":1},{"version":"f473cd2288991ff3221165dcf73cd5d24da30391f87e85b3dd4d0450c787a391","impliedFormat":1},{"version":"499e5b055a5aba1e1998f7311a6c441a369831c70905cc565ceac93c28083d53","impliedFormat":1},{"version":"54c3e2371e3d016469ad959697fd257e5621e16296fa67082c2575d0bf8eced0","impliedFormat":1},{"version":"beb8233b2c220cfa0feea31fbe9218d89fa02faa81ef744be8dce5acb89bb1fd","impliedFormat":1},{"version":"c183b931b68ad184bc8e8372bf663f3d33304772fb482f29fb91b3c391031f3e","impliedFormat":1},{"version":"5d0375ca7310efb77e3ef18d068d53784faf62705e0ad04569597ae0e755c401","impliedFormat":1},{"version":"59af37caec41ecf7b2e76059c9672a49e682c1a2aa6f9d7dc78878f53aa284d6","impliedFormat":1},{"version":"addf417b9eb3f938fddf8d81e96393a165e4be0d4a8b6402292f9c634b1cb00d","impliedFormat":1},{"version":"48cc3ec153b50985fb95153258a710782b25975b10dd4ac8a4f3920632d10790","impliedFormat":1},{"version":"adf27937dba6af9f08a68c5b1d3fce0ca7d4b960c57e6d6c844e7d1a8e53adae","impliedFormat":1},{"version":"e1528ca65ac90f6fa0e4a247eb656b4263c470bb22d9033e466463e13395e599","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"866078923a56d026e39243b4392e282c1c63159723996fa89243140e1388a98d","impliedFormat":1},{"version":"f724236417941ea77ec8d38c6b7021f5fb7f8521c7f8c1538e87661f2c6a0774","affectsGlobalScope":true,"impliedFormat":1},{"version":"1cf059eaf468efcc649f8cf6075d3cb98e9a35a0fe9c44419ec3d2f5428d7123","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d97fb21da858fb18b8ae72c314e9743fd52f73ebe2764e12af1db32fc03f853f","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ea15fd99b2e34cb25fe8346c955000bb70c8b423ae4377a972ef46bfb37f595","impliedFormat":1},{"version":"7cf69dd5502c41644c9e5106210b5da7144800670cbe861f66726fa209e231c4","impliedFormat":1},{"version":"72c1f5e0a28e473026074817561d1bc9647909cf253c8d56c41d1df8d95b85f7","impliedFormat":1},{"version":"f9b4137a0d285bd77dba2e6e895530112264310ae47e07bf311feae428fb8b61","affectsGlobalScope":true,"impliedFormat":1},{"version":"c06b2652ffeb89afd0f1c52c165ced77032f9cd09bc481153fbd6b5504c69494","impliedFormat":1},{"version":"51aecd2df90a3cffea1eb4696b33b2d78594ea2aa2138e6b9471ec4841c6c2ee","impliedFormat":1},{"version":"9d8f9e63e29a3396285620908e7f14d874d066caea747dc4b2c378f0599166b4","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"612422d5ba6b4a5c4537f423e9199645468ad80a689801da63ab7edb43f7b835","impliedFormat":1},{"version":"db9ada976f9e52e13f7ae8b9a320f4b67b87685938c5879187d8864b2fbe97f3","impliedFormat":1},{"version":"9f39e70a354d0fba29ac3cdf6eca00b7f9e96f64b2b2780c432e8ea27f133743","impliedFormat":1},{"version":"0dace96cc0f7bc6d0ee2044921bdf19fe42d16284dbcc8ae200800d1c9579335","impliedFormat":1},{"version":"a2e2bbde231b65c53c764c12313897ffdfb6c49183dd31823ee2405f2f7b5378","impliedFormat":1},{"version":"ad1cc0ed328f3f708771272021be61ab146b32ecf2b78f3224959ff1e2cd2a5c","impliedFormat":1},{"version":"c64e1888baaa3253ca4405b455e4bf44f76357868a1bd0a52998ade9a092ad78","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc8c6f5322961b56d9906601b20798725df60baeab45ec014fba9f795d5596fd","impliedFormat":1},{"version":"0904660ae854e6d41f6ff25356db1d654436c6305b0f0aa89d1532df0253486e","impliedFormat":1},{"version":"060d305fe4494d8cb2b99d620928d369d1ee55c1645f5e729a2aca07d0f108cb","impliedFormat":1},{"version":"230bdc111d7578276e4a3bb9d075d85c78c6b68f428c3a9935e2eaa10f4ae1f5","impliedFormat":1},{"version":"0c50296ee73dae94efc3f0da4936b1146ca6ce2217acfabb44c19c9a33fa30e5","impliedFormat":1},{"version":"bbf42f98a5819f4f06e18c8b669a994afe9a17fe520ae3454a195e6eabf7700d","impliedFormat":1},{"version":"0e5974dfff7a97181c7c376545f126b20acf2f1341db7d3fccea4977bf3ce19c","impliedFormat":1},{"version":"c7f977ea78a1b060a30554c1c4ec0e2269c6e305a349ca2ada14931ac27ecc0b","affectsGlobalScope":true,"impliedFormat":1},{"version":"145dcf25fd4967c610c53d93d7bc4dce8fbb1b6dd7935362472d4ae49363c7ba","impliedFormat":1},{"version":"ff65b8a8bd380c6d129becc35de02f7c29ad7ce03300331ca91311fb4044d1a9","impliedFormat":1},{"version":"04bf1aa481d1adfb16d93d76e44ce71c51c8ef68039d849926551199489637f6","impliedFormat":1},{"version":"2c9adcc85574b002c9a6311ff2141055769e0071856ec979d92ff989042b1f1b","affectsGlobalScope":true,"impliedFormat":1},{"version":"b8bf3fe89ec8baa335f6370b9fa36308e1bc7a72e2eb2dad1e94f31e27fa28b5","affectsGlobalScope":true,"impliedFormat":1},{"version":"a58a15da4c5ba3df60c910a043281256fa52d36a0fcdef9b9100c646282e88dd","impliedFormat":1},{"version":"b36beffbf8acdc3ebc58c8bb4b75574b31a2169869c70fc03f82895b93950a12","impliedFormat":1},{"version":"de263f0089aefbfd73c89562fb7254a7468b1f33b61839aafc3f035d60766cb4","impliedFormat":1},{"version":"77fbe5eecb6fac4b6242bbf6eebfc43e98ce5ccba8fa44e0ef6a95c945ff4d98","impliedFormat":1},{"version":"8c81fd4a110490c43d7c578e8c6f69b3af01717189196899a6a44f93daa57a3a","impliedFormat":1},{"version":"5fb39858b2459864b139950a09adae4f38dad87c25bf572ce414f10e4bd7baab","impliedFormat":1},{"version":"35390d6fa94bdb432c5d0bcb6547bdd11406c2692a6b90b9e47be2105ea19bd6","impliedFormat":1},{"version":"b33b74b97952d9bf4fbd2951dcfbb5136656ddb310ce1c84518aaa77dbca9992","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"8d117798e5228c7fdff887f44851d07320739c5cc0d511afae8f250c51809a36","affectsGlobalScope":true,"impliedFormat":1},{"version":"c119835edf36415081dfd9ed15fc0cd37aaa28d232be029ad073f15f3d88c323","impliedFormat":1},{"version":"8e7c3bed5f19ade8f911677ddc83052e2283e25b0a8654cd89db9079d4b323c7","impliedFormat":1},{"version":"9705cd157ffbb91c5cab48bdd2de5a437a372e63f870f8a8472e72ff634d47c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"ae86f30d5d10e4f75ce8dcb6e1bd3a12ecec3d071a21e8f462c5c85c678efb41","impliedFormat":1},{"version":"ccf3afaeebbeee4ca9092101e99fd6abd681116b6e5ec23e381bbb1e1f32262c","impliedFormat":1},{"version":"e03460fe72b259f6d25ad029f085e4bedc3f90477da4401d8fbc1efa9793230e","impliedFormat":1},{"version":"4286a3a6619514fca656089aee160bb6f2e77f4dd53dc5a96b26a0b4fc778055","impliedFormat":1},{"version":"ab7818a9d57a9297b90e456fc68b77f84d74395a9210a3cfa9d87db33aff8b14","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb08062718a5470cd864c1fae0eb5b3a3adc5bcd05dcf87608d6f60b65eca3f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"3a815b7d1aebc0646b91548eab2fc19dada09ff255d04c71ced00bbd3058c8eb","impliedFormat":1},{"version":"255d948f87f24ffd57bcb2fdf95792fd418a2e1f712a98cf2cce88744d75085c","impliedFormat":1},{"version":"0d5b085f36e6dc55bc6332ecb9c733be3a534958c238fb8d8d18d4a2b6f2a15a","impliedFormat":1},{"version":"836b36913830645ac3b28fe33731aac3fdb3524ee8adbb4cdab9a5c189f41943","affectsGlobalScope":true,"impliedFormat":1},{"version":"bfd3b3c21a56104693183942e221c1896ee23bcb8f8d91ab0b941f7b32985411","impliedFormat":1},{"version":"d7e9ab1b0996639047c61c1e62f85c620e4382206b3abb430d9a21fb7bc23c77","impliedFormat":1},{"version":"3a582c6e8906f5b094ccf0de6cc6f4f8a54b05a34f52517aba5c9c7f704f6b28","impliedFormat":99},{"version":"0528f6d21f7a02d4092895090d2dd86104bd5a3e79eced96d5a1a7dd90943d17","impliedFormat":99},{"version":"b5ce343886d23392be9c8280e9f24a87f1d7d3667f6672c2fe4aa61fa4ece7d4","impliedFormat":99},{"version":"72ce5b734c05da85c85a6f6dc05823b051d6aa41acaedeeb1d17c72f3b4efa72","impliedFormat":99},{"version":"b0857bb28fd5236ace84280f79a25093f919fd0eff13e47cc26ea03de60a7294","impliedFormat":99},{"version":"5e43e0824f10cd8c48e7a8c5c673638488925a12c31f0f9e0957965c290eb14c","impliedFormat":99},{"version":"ef13c73d6157a32933c612d476c1524dd674cf5b9a88571d7d6a0d147544d529","impliedFormat":99},{"version":"3b0a56d056d81a011e484b9c05d5e430711aaecd561a788bad1d0498aad782c7","impliedFormat":99},{"version":"9443967db823b66d1682be7fc66392be7c7924e10c3e54900f456341e94591a6","impliedFormat":99},{"version":"424f71d1fae96ac2e878af92345bb87bea1d29f757228fbc190133b305643f2c","impliedFormat":99},{"version":"ac3d263474022e9a14c43f588f485d549641d839b159ecc971978b90f34bdf6b","impliedFormat":99},{"version":"3b89216a7e38a454985ad17bb2ff85792837dc812f2a89fa5f60ad0a2e216fa7","impliedFormat":99},{"version":"16fe60bb544cfedfd2b5bb2f7d0b3957be7978706d57d9f06edc9c0c8dbdba23","impliedFormat":99},{"version":"82179358c2d9d7347f1602dc9300039a2250e483137b38ebf31d4d2e5519c181","impliedFormat":99},{"version":"4e003c868b0d8f8ad200b96cbc653e18e513fa23e1c19c4fe3cc25d4394efc47","impliedFormat":99},{"version":"091546ac9077cddcd7b9479cc2e0c677238bf13e39eab4b13e75046c3328df93","impliedFormat":99},{"version":"42a12f2faa483c9b48195ed794d22698162274e755f6e07219c2351c4f08d732","impliedFormat":99},{"version":"ec0c42bb0f465e4993f2bc68a6ce9df9a2dcbc7b83e21748f82f1b69561938e3","impliedFormat":99},{"version":"f50ff37a9cbbe74475f426474d9827083c7c2c138a954d28f1690df338f69291","impliedFormat":99},{"version":"6bb6d57454370324434bcf355942dee45b0e0d8ab0fa3e98bafe8a30718273b4","impliedFormat":99},{"version":"bcbd3becd08b4515225880abea0dbfbbf0d1181ce3af8f18f72f61edbe4febfb","impliedFormat":99},{"version":"a86701e56b10a6d1ef9b2ecaeedbab94ed7b957a646cd71fd09d02b323c6d3d7","impliedFormat":99},{"version":"976932e3807786cdae46ed5dfcd02c44f3fa25c157a0e8392f5a2dabb9a14a4e","impliedFormat":99},{"version":"59b7a8ec1781284f6602af48487b68fc3baadf34cb4cbcbb31f213b6712fac34","impliedFormat":99},{"version":"c76c02846ba7d40b9b3488f0e8d75d02cbdee2f0bc5fcd55dd3bd2e1457646ea","impliedFormat":99},{"version":"4ead13a482c539b77394b2a97e3b877b809eac596390371cea490286f53b996a","impliedFormat":99},{"version":"06db2f8ba1d1dfacf04529cb731081ab23f133f29c7608ebdfbcab356996827c","impliedFormat":99},{"version":"bdd14f07b4eca0b4b5203b85b8dbc4d084c749fa590bee5ea613e1641dcd3b29","impliedFormat":99},{"version":"427fe2004642504828c1476d0af4270e6ad4db6de78c0b5da3e4c5ca95052a99","impliedFormat":1},{"version":"2eeffcee5c1661ddca53353929558037b8cf305ffb86a803512982f99bcab50d","impliedFormat":99},{"version":"9afb4cb864d297e4092a79ee2871b5d3143ea14153f62ef0bb04ede25f432030","affectsGlobalScope":true,"impliedFormat":99},{"version":"5c935b7fc4ddc1410ea1cd7cd4e35ed106a6e4920dd27a9480a40fd224359dc3","affectsGlobalScope":true,"impliedFormat":99},{"version":"ed9bb55ddcbebd5cb3eee991f57ff21438546ee40ee1c310281bd12a6c7cf65b","impliedFormat":99},{"version":"69bf2422313487956e4dacf049f30cb91b34968912058d244cb19e4baa24da97","impliedFormat":99},{"version":"6987dfb4b0c4e02112cc4e548e7a77b3d9ddfeffa8c8a2db13ceac361a4567d9","impliedFormat":99},{"version":"4c3d12ac5744ff4ba2e1ce97ec307f09d726b4cfcfd5eff3315ccc080d620fb9","impliedFormat":99},{"version":"c76c02846ba7d40b9b3488f0e8d75d02cbdee2f0bc5fcd55dd3bd2e1457646ea","impliedFormat":99},{"version":"5e2ba3d18d78aebbde1f34bde356e41e9c76eeaeaeee56a37036596a9eff4211","impliedFormat":99},{"version":"8280ae8ccc0493b32d1742d585357ab9f0a508ea050af25a5a20d64010d0a5cf","impliedFormat":99},{"version":"7adfd9f9056ecd4ae6c65fde2a98654960c662714c73f048478959d04c09e144","impliedFormat":99},{"version":"32b35cf0dc3a1b1a7118b61c34ce2ad1a29695851679f9ec34e0776f2ece2a69","impliedFormat":99},{"version":"b413fbc6658fe2774f8bf9a15cf4c53e586fc38a2d5256b3b9647da242c14389","impliedFormat":99},{"version":"abdaf8c2f20089a6b23a6287007ed16f9cf76d0045ce2973a5f8508c87286d21","impliedFormat":99},{"version":"c30a41267fc04c6518b17e55dcb2b810f267af4314b0b6d7df1c33a76ce1b330","impliedFormat":1},{"version":"72422d0bac4076912385d0c10911b82e4694fc106e2d70added091f88f0824ba","impliedFormat":1},{"version":"da251b82c25bee1d93f9fd80c5a61d945da4f708ca21285541d7aff83ecb8200","impliedFormat":1},{"version":"64db14db2bf37ac089766fdb3c7e1160fabc10e9929bc2deeede7237e4419fc8","impliedFormat":1},{"version":"98b94085c9f78eba36d3d2314affe973e8994f99864b8708122750788825c771","impliedFormat":1},{"version":"8c9917efcdf61e9b9a73ac1e289c612f12db33519ca1445cca41865f7887c737","impliedFormat":99},{"version":"8d7cbeea0454e05a3cdf3370c5df267072c4f1dc6c48a45a9ad750d7890443d7","affectsGlobalScope":true,"impliedFormat":99}],"root":[66,67],"options":{"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"module":199,"noImplicitAny":true,"noUncheckedIndexedAccess":false,"outDir":"./","rootDir":"..","skipLibCheck":true,"sourceMap":true,"strict":true,"strictNullChecks":true,"target":9},"referencedMap":[[203,1],[206,2],[204,1],[122,3],[123,3],[124,4],[70,5],[125,6],[126,7],[127,8],[68,1],[128,9],[129,10],[130,11],[131,12],[132,13],[133,14],[134,14],[135,15],[136,16],[137,17],[138,18],[71,1],[69,1],[139,19],[140,20],[141,21],[175,22],[142,23],[143,1],[144,24],[145,25],[146,26],[147,27],[148,28],[149,29],[150,30],[151,31],[152,32],[153,32],[154,33],[155,1],[156,34],[157,35],[159,36],[158,37],[160,38],[161,39],[162,40],[163,41],[164,42],[165,43],[166,44],[167,45],[168,46],[169,47],[170,48],[171,49],[172,50],[72,1],[73,51],[74,1],[75,1],[118,52],[119,53],[120,1],[121,38],[173,54],[174,55],[207,56],[214,57],[215,58],[213,1],[176,1],[185,59],[184,60],[208,59],[192,61],[194,62],[193,63],[201,64],[200,1],[183,65],[177,66],[179,67],[181,68],[180,1],[182,66],[178,1],[205,1],[76,1],[221,69],[223,70],[222,71],[220,72],[219,1],[209,1],[202,1],[63,1],[64,1],[12,1],[10,1],[11,1],[16,1],[15,1],[2,1],[17,1],[18,1],[19,1],[20,1],[21,1],[22,1],[23,1],[24,1],[3,1],[25,1],[26,1],[4,1],[27,1],[31,1],[28,1],[29,1],[30,1],[32,1],[33,1],[34,1],[5,1],[35,1],[36,1],[37,1],[38,1],[6,1],[42,1],[39,1],[40,1],[41,1],[43,1],[7,1],[44,1],[49,1],[50,1],[45,1],[46,1],[47,1],[48,1],[8,1],[54,1],[51,1],[52,1],[53,1],[55,1],[9,1],[56,1],[65,1],[57,1],[58,1],[60,1],[59,1],[61,1],[1,1],[62,1],[14,1],[13,1],[94,73],[106,74],[92,75],[107,76],[116,77],[83,78],[84,79],[82,80],[115,81],[110,82],[114,83],[86,84],[103,85],[85,86],[113,87],[80,88],[81,82],[87,89],[88,1],[93,90],[91,89],[78,91],[117,92],[108,93],[97,94],[96,89],[98,95],[101,96],[95,97],[99,98],[111,81],[89,99],[90,100],[102,101],[79,76],[105,102],[104,89],[100,103],[109,1],[77,1],[112,104],[188,105],[191,106],[189,105],[187,1],[190,107],[210,108],[199,109],[195,110],[196,61],[217,111],[211,112],[197,113],[216,114],[186,1],[198,115],[224,116],[218,117],[225,118],[212,1],[66,1],[67,119]],"latestChangedDtsFile":"./src/index.d.ts","version":"6.0.2"}
|
package/package.json
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@cleocode/animations",
|
|
3
|
+
"version": "2026.5.29",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"description": "CLEO terminal animations — braille spinners, progress bars, and sparks for the cleo CLI and CleoOS. Forked from gunnargray-dev/unicode-animations (MIT).",
|
|
6
|
+
"publishConfig": {
|
|
7
|
+
"access": "public"
|
|
8
|
+
},
|
|
9
|
+
"homepage": "https://github.com/kryptobaseddev/cleo/tree/main/packages/animations",
|
|
10
|
+
"bugs": {
|
|
11
|
+
"url": "https://github.com/kryptobaseddev/cleo/issues"
|
|
12
|
+
},
|
|
13
|
+
"main": "./dist/src/index.js",
|
|
14
|
+
"types": "./dist/src/index.d.ts",
|
|
15
|
+
"exports": {
|
|
16
|
+
".": {
|
|
17
|
+
"types": "./dist/src/index.d.ts",
|
|
18
|
+
"import": "./dist/src/index.js"
|
|
19
|
+
},
|
|
20
|
+
"./braille": {
|
|
21
|
+
"types": "./dist/src/braille.d.ts",
|
|
22
|
+
"import": "./dist/src/braille.js"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"files": [
|
|
26
|
+
"dist",
|
|
27
|
+
"scripts",
|
|
28
|
+
"README.md",
|
|
29
|
+
"LICENSE"
|
|
30
|
+
],
|
|
31
|
+
"sideEffects": false,
|
|
32
|
+
"bin": {
|
|
33
|
+
"cleocode-animations": "./scripts/demo.cjs"
|
|
34
|
+
},
|
|
35
|
+
"repository": {
|
|
36
|
+
"type": "git",
|
|
37
|
+
"url": "git+https://github.com/kryptobaseddev/cleo.git",
|
|
38
|
+
"directory": "packages/animations"
|
|
39
|
+
},
|
|
40
|
+
"keywords": [
|
|
41
|
+
"cleo",
|
|
42
|
+
"animations",
|
|
43
|
+
"braille",
|
|
44
|
+
"spinner",
|
|
45
|
+
"unicode",
|
|
46
|
+
"terminal",
|
|
47
|
+
"cli"
|
|
48
|
+
],
|
|
49
|
+
"author": "CLEO Code <hello@cleocode.dev> (https://cleocode.dev)",
|
|
50
|
+
"license": "MIT",
|
|
51
|
+
"engines": {
|
|
52
|
+
"node": ">=22.0.0"
|
|
53
|
+
},
|
|
54
|
+
"devDependencies": {
|
|
55
|
+
"@types/node": "^24.3.0",
|
|
56
|
+
"typescript": "^6.0.2",
|
|
57
|
+
"vitest": "^4.1.4"
|
|
58
|
+
},
|
|
59
|
+
"scripts": {
|
|
60
|
+
"build": "rm -rf dist && tsc -p tsconfig.build.json",
|
|
61
|
+
"typecheck": "tsc --noEmit",
|
|
62
|
+
"test": "cd ../.. && vitest run packages/animations/src"
|
|
63
|
+
}
|
|
64
|
+
}
|
package/scripts/demo.cjs
ADDED
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* @cleocode/animations demo CLI.
|
|
4
|
+
*
|
|
5
|
+
* Cycles through every registered spinner in the terminal. CommonJS so that the
|
|
6
|
+
* shebang works without `--experimental-loader` flags on older Node runtimes.
|
|
7
|
+
*
|
|
8
|
+
* Usage:
|
|
9
|
+
* cleocode-animations cycle through all spinners
|
|
10
|
+
* cleocode-animations <name> preview one spinner
|
|
11
|
+
* cleocode-animations --list list all spinners
|
|
12
|
+
*
|
|
13
|
+
* Forked from gunnargray-dev/unicode-animations (MIT).
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
const path = require('path');
|
|
17
|
+
const fs = require('fs');
|
|
18
|
+
const tty = require('tty');
|
|
19
|
+
|
|
20
|
+
let registry;
|
|
21
|
+
try {
|
|
22
|
+
// The ESM build is loaded via dynamic import below so that this CJS shim
|
|
23
|
+
// does not need a CJS build artifact. We resolve the dist path eagerly to
|
|
24
|
+
// surface a clear error if the package was never built.
|
|
25
|
+
const distPath = path.join(__dirname, '..', 'dist', 'src', 'braille.js');
|
|
26
|
+
if (!fs.existsSync(distPath)) {
|
|
27
|
+
console.error('@cleocode/animations: run `pnpm --filter @cleocode/animations build` first.');
|
|
28
|
+
process.exit(1);
|
|
29
|
+
}
|
|
30
|
+
// eslint-disable-next-line no-undef
|
|
31
|
+
registry = import(distPath);
|
|
32
|
+
} catch (err) {
|
|
33
|
+
console.error('@cleocode/animations: failed to load the built module.', err);
|
|
34
|
+
process.exit(1);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
(async () => {
|
|
38
|
+
const mod = await registry;
|
|
39
|
+
const S = mod.spinners || mod.default;
|
|
40
|
+
const names = Object.keys(S);
|
|
41
|
+
const args = process.argv.slice(2);
|
|
42
|
+
|
|
43
|
+
let out = process.stdout;
|
|
44
|
+
if (!out.isTTY) {
|
|
45
|
+
try {
|
|
46
|
+
const fd = fs.openSync('/dev/tty', 'w');
|
|
47
|
+
out = new tty.WriteStream(fd);
|
|
48
|
+
} catch {
|
|
49
|
+
console.log(`${names.length} spinners: ${names.join(', ')}`);
|
|
50
|
+
process.exit(0);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
const hide = '\x1B[?25l';
|
|
55
|
+
const show = '\x1B[?25h';
|
|
56
|
+
const bold = '\x1B[1m';
|
|
57
|
+
const dim = '\x1B[2m';
|
|
58
|
+
const magenta = '\x1B[35m';
|
|
59
|
+
const reset = '\x1B[0m';
|
|
60
|
+
|
|
61
|
+
out.write(hide);
|
|
62
|
+
const cleanup = () => { try { out.write(show); } catch {} };
|
|
63
|
+
process.on('SIGINT', () => { cleanup(); out.write('\n'); process.exit(0); });
|
|
64
|
+
process.on('exit', cleanup);
|
|
65
|
+
|
|
66
|
+
if (process.stdin.isTTY) {
|
|
67
|
+
process.stdin.setRawMode(true);
|
|
68
|
+
process.stdin.resume();
|
|
69
|
+
process.stdin.on('data', (key) => {
|
|
70
|
+
if (key[0] === 0x71 || key[0] === 0x03 || key[0] === 0x1B) {
|
|
71
|
+
cleanup();
|
|
72
|
+
out.write('\n');
|
|
73
|
+
process.exit(0);
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
if (args[0] === '--list' || args[0] === '-l') {
|
|
79
|
+
cleanup();
|
|
80
|
+
out.write(`\n${bold}${names.length} spinners available:${reset}\n\n`);
|
|
81
|
+
for (const name of names) {
|
|
82
|
+
const s = S[name];
|
|
83
|
+
out.write(` ${magenta}${s.frames[0]}${reset} ${name} ${dim}(${s.frames.length} frames, ${s.interval}ms)${reset}\n`);
|
|
84
|
+
}
|
|
85
|
+
out.write('\n');
|
|
86
|
+
process.exit(0);
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
if (args[0] && !names.includes(args[0])) {
|
|
90
|
+
cleanup();
|
|
91
|
+
out.write(`Unknown spinner: "${args[0]}"\nRun with --list to see all spinners.\n`);
|
|
92
|
+
process.exit(1);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
let current = args[0] ? names.indexOf(args[0]) : 0;
|
|
96
|
+
const single = !!args[0];
|
|
97
|
+
let i = 0;
|
|
98
|
+
let ticksOnCurrent = 0;
|
|
99
|
+
|
|
100
|
+
const TICKS_PER_SPINNER = 40;
|
|
101
|
+
|
|
102
|
+
setInterval(() => {
|
|
103
|
+
const name = names[current];
|
|
104
|
+
const s = S[name];
|
|
105
|
+
const frame = s.frames[i % s.frames.length];
|
|
106
|
+
const count = single ? '' : `${dim}[${current + 1}/${names.length}]${reset}`;
|
|
107
|
+
|
|
108
|
+
out.write(`\r\x1B[2K ${magenta}${frame}${reset} ${bold}${name}${reset} ${dim}${s.interval}ms${reset} ${count}`);
|
|
109
|
+
|
|
110
|
+
i++;
|
|
111
|
+
ticksOnCurrent++;
|
|
112
|
+
|
|
113
|
+
if (!single && ticksOnCurrent >= TICKS_PER_SPINNER) {
|
|
114
|
+
ticksOnCurrent = 0;
|
|
115
|
+
i = 0;
|
|
116
|
+
current = (current + 1) % names.length;
|
|
117
|
+
}
|
|
118
|
+
}, 80);
|
|
119
|
+
})();
|