@sigx/terminal-zero 0.5.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.
@@ -0,0 +1,732 @@
1
+ import { signal as e } from "@sigx/reactivity";
2
+ import { charWidth as t, charWidth as n, dispatchKey as r, displayWidth as i, focus as a, focusNext as o, focusPrev as s, focusState as c, getColorDepth as l, getOutputTarget as u, getOutputTarget as d, getTerminalSize as f, hexToSGR as p, onKey as m, printStatic as h, registerFocusable as g, renderTerminal as _, resolveBg as v, resolveFg as y, setScreenBackground as b, setScreenForeground as x, syncTerminalSize as S, truncateToWidth as C, unregisterFocusable as w, writeStatic as T } from "@sigx/runtime-terminal";
3
+ import { Buffer as ee } from "node:buffer";
4
+ //#region src/shared/colorMath.ts
5
+ function E(e) {
6
+ let t = e.trim().replace(/^#/, "");
7
+ return /^[0-9a-f]{6}$/i.test(t) ? [
8
+ parseInt(t.slice(0, 2), 16),
9
+ parseInt(t.slice(2, 4), 16),
10
+ parseInt(t.slice(4, 6), 16)
11
+ ] : /^[0-9a-f]{3}$/i.test(t) ? [
12
+ parseInt(t[0] + t[0], 16),
13
+ parseInt(t[1] + t[1], 16),
14
+ parseInt(t[2] + t[2], 16)
15
+ ] : null;
16
+ }
17
+ function D(e, t, n) {
18
+ let r = (e) => Math.max(0, Math.min(255, Math.round(e))).toString(16).padStart(2, "0");
19
+ return `#${r(e)}${r(t)}${r(n)}`;
20
+ }
21
+ function O(e, t, n) {
22
+ let r = E(e) ?? [
23
+ 255,
24
+ 255,
25
+ 255
26
+ ], i = E(t) ?? [
27
+ 255,
28
+ 255,
29
+ 255
30
+ ], a = Math.max(0, Math.min(1, n));
31
+ return D(r[0] + (i[0] - r[0]) * a, r[1] + (i[1] - r[1]) * a, r[2] + (i[2] - r[2]) * a);
32
+ }
33
+ function te(e, t) {
34
+ if (t <= 0) return [];
35
+ if (e.length === 0) return Array(t).fill("#ffffff");
36
+ if (e.length === 1) return Array(t).fill(e[0]);
37
+ let n = [];
38
+ for (let r = 0; r < t; r++) {
39
+ let i = (t === 1 ? 0 : r / (t - 1)) * (e.length - 1), a = Math.min(Math.floor(i), e.length - 2);
40
+ n.push(O(e[a], e[a + 1], i - a));
41
+ }
42
+ return n;
43
+ }
44
+ function ne(e, t, n) {
45
+ e /= 255, t /= 255, n /= 255;
46
+ let r = Math.max(e, t, n), i = Math.min(e, t, n), a = (r + i) / 2;
47
+ if (r === i) return [
48
+ 0,
49
+ 0,
50
+ a
51
+ ];
52
+ let o = r - i, s = a > .5 ? o / (2 - r - i) : o / (r + i), c;
53
+ return c = r === e ? ((t - n) / o + (t < n ? 6 : 0)) / 6 : r === t ? ((n - e) / o + 2) / 6 : ((e - t) / o + 4) / 6, [
54
+ c,
55
+ s,
56
+ a
57
+ ];
58
+ }
59
+ function re(e, t, n) {
60
+ if (t === 0) {
61
+ let e = n * 255;
62
+ return [
63
+ e,
64
+ e,
65
+ e
66
+ ];
67
+ }
68
+ let r = n < .5 ? n * (1 + t) : n + t - n * t, i = 2 * n - r, a = (e) => (e < 0 && (e += 1), e > 1 && --e, e < 1 / 6 ? i + (r - i) * 6 * e : e < 1 / 2 ? r : e < 2 / 3 ? i + (r - i) * (2 / 3 - e) * 6 : i);
69
+ return [
70
+ a(e + 1 / 3) * 255,
71
+ a(e) * 255,
72
+ a(e - 1 / 3) * 255
73
+ ];
74
+ }
75
+ function ie(e, t) {
76
+ let n = E(e) ?? [
77
+ 255,
78
+ 255,
79
+ 255
80
+ ], [r, i, a] = ne(n[0], n[1], n[2]), [o, s, c] = re(((r + t / 360) % 1 + 1) % 1, i, a);
81
+ return D(o, s, c);
82
+ }
83
+ //#endregion
84
+ //#region src/shared/ticker.ts
85
+ var ae = 80, k = e({ t: 0 }), A = null, j = 0;
86
+ function oe() {
87
+ return k.t;
88
+ }
89
+ function se() {
90
+ if (!u().isTTY) return () => {};
91
+ j++, A ||= setInterval(() => {
92
+ k.t++;
93
+ }, 80);
94
+ let e = !0;
95
+ return () => {
96
+ e && (e = !1, j--, j === 0 && A && (clearInterval(A), A = null));
97
+ };
98
+ }
99
+ //#endregion
100
+ //#region src/shared/textBuffer.ts
101
+ var M = (e) => [...e];
102
+ function N(e, n) {
103
+ let r = Math.max(1, n), i = M(e), a = [], o = 0, s = 0, c = -1, l = (e, t, n) => {
104
+ a.push({
105
+ text: i.slice(o, e).join(""),
106
+ start: o,
107
+ end: e,
108
+ hard: t
109
+ }), o = n, c = -1;
110
+ }, u = 0;
111
+ for (; u < i.length;) {
112
+ let e = i[u];
113
+ if (e === "\n") {
114
+ l(u, !0, u + 1), s = 0, u++;
115
+ continue;
116
+ }
117
+ let n = t(e.codePointAt(0) ?? 0);
118
+ if (s + n > r && u > o) {
119
+ if (e === " ") {
120
+ l(u, !1, u + 1), s = 0, u++;
121
+ continue;
122
+ }
123
+ c > o ? l(c, !1, c + 1) : l(u, !1, u), s = 0;
124
+ for (let e = o; e < u; e++) s += t(i[e].codePointAt(0) ?? 0);
125
+ continue;
126
+ }
127
+ e === " " && (c = u), s += n, u++;
128
+ }
129
+ return a.push({
130
+ text: i.slice(o).join(""),
131
+ start: o,
132
+ end: i.length,
133
+ hard: !0
134
+ }), {
135
+ rows: a,
136
+ width: r
137
+ };
138
+ }
139
+ function P(e, n) {
140
+ let r = e.rows;
141
+ for (let e = 0; e < r.length; e++) {
142
+ let i = r[e], a = e === r.length - 1, o = r[e + 1];
143
+ if (!(n >= i.start && (n < i.end || n === i.end && (a || o.start !== i.end) || a && n >= i.end))) continue;
144
+ let s = 0, c = M(i.text), l = Math.min(n - i.start, c.length);
145
+ for (let e = 0; e < l; e++) s += t(c[e].codePointAt(0) ?? 0);
146
+ return {
147
+ row: e,
148
+ col: s
149
+ };
150
+ }
151
+ let i = r.length - 1;
152
+ return {
153
+ row: i,
154
+ col: M(r[i].text).reduce((e, n) => e + t(n.codePointAt(0) ?? 0), 0)
155
+ };
156
+ }
157
+ function F(e, n, r) {
158
+ let i = e.rows[Math.max(0, Math.min(n, e.rows.length - 1))], a = M(i.text), o = 0;
159
+ for (let e = 0; e < a.length; e++) {
160
+ let n = t(a[e].codePointAt(0) ?? 0);
161
+ if (o + n > r) return i.start + e;
162
+ o += n;
163
+ }
164
+ return i.end;
165
+ }
166
+ function ce(e, t) {
167
+ let n = M(e.text), r = Math.max(0, Math.min(e.cursor, n.length));
168
+ return {
169
+ text: n.slice(0, r).join("") + t + n.slice(r).join(""),
170
+ cursor: r + M(t).length
171
+ };
172
+ }
173
+ function le(e) {
174
+ let t = M(e.text), n = Math.max(0, Math.min(e.cursor, t.length));
175
+ return n === 0 ? e : {
176
+ text: t.slice(0, n - 1).join("") + t.slice(n).join(""),
177
+ cursor: n - 1
178
+ };
179
+ }
180
+ function ue(e) {
181
+ let t = M(e.text), n = Math.max(0, Math.min(e.cursor, t.length));
182
+ return n >= t.length ? e : {
183
+ text: t.slice(0, n).join("") + t.slice(n + 1).join(""),
184
+ cursor: n
185
+ };
186
+ }
187
+ function de(e) {
188
+ return {
189
+ ...e,
190
+ cursor: Math.max(0, e.cursor - 1)
191
+ };
192
+ }
193
+ function I(e) {
194
+ return {
195
+ ...e,
196
+ cursor: Math.min(M(e.text).length, e.cursor + 1)
197
+ };
198
+ }
199
+ function L(e, t, n, r) {
200
+ let i = N(e.text, t), { row: a, col: o } = P(i, e.cursor), s = r !== void 0 && r >= 0 ? r : o, c = a + n;
201
+ return c < 0 || c >= i.rows.length ? {
202
+ state: e,
203
+ goalCol: s
204
+ } : {
205
+ state: {
206
+ ...e,
207
+ cursor: F(i, c, s)
208
+ },
209
+ goalCol: s
210
+ };
211
+ }
212
+ function R(e, t) {
213
+ let n = N(e.text, t), { row: r } = P(n, e.cursor);
214
+ return {
215
+ ...e,
216
+ cursor: n.rows[r].start
217
+ };
218
+ }
219
+ function z(e, t) {
220
+ let n = N(e.text, t), { row: r } = P(n, e.cursor);
221
+ return {
222
+ ...e,
223
+ cursor: n.rows[r].end
224
+ };
225
+ }
226
+ //#endregion
227
+ //#region src/shared/viewStack.ts
228
+ function B(t) {
229
+ let n = e({ stack: [t] });
230
+ return {
231
+ push(e) {
232
+ n.stack = [...n.stack, e];
233
+ },
234
+ pop() {
235
+ return n.stack.length <= 1 ? !1 : (n.stack = n.stack.slice(0, -1), !0);
236
+ },
237
+ replace(e) {
238
+ n.stack = [...n.stack.slice(0, -1), e];
239
+ },
240
+ current() {
241
+ return n.stack[n.stack.length - 1];
242
+ },
243
+ depth() {
244
+ return n.stack.length;
245
+ }
246
+ };
247
+ }
248
+ //#endregion
249
+ //#region src/shared/qr.ts
250
+ var V = 4, H = [
251
+ 0,
252
+ 17,
253
+ 32,
254
+ 53,
255
+ 78,
256
+ 106,
257
+ 134,
258
+ 154,
259
+ 192,
260
+ 230,
261
+ 271,
262
+ 321,
263
+ 367,
264
+ 425,
265
+ 458,
266
+ 520,
267
+ 586,
268
+ 644,
269
+ 718,
270
+ 792,
271
+ 858
272
+ ], fe = [
273
+ 0,
274
+ 7,
275
+ 10,
276
+ 15,
277
+ 20,
278
+ 26,
279
+ 18,
280
+ 20,
281
+ 24,
282
+ 30,
283
+ 18,
284
+ 20,
285
+ 24,
286
+ 26,
287
+ 30,
288
+ 22,
289
+ 24,
290
+ 28,
291
+ 30,
292
+ 28,
293
+ 28
294
+ ], pe = [
295
+ 0,
296
+ 1,
297
+ 1,
298
+ 1,
299
+ 1,
300
+ 1,
301
+ 2,
302
+ 2,
303
+ 2,
304
+ 2,
305
+ 4,
306
+ 4,
307
+ 4,
308
+ 4,
309
+ 4,
310
+ 6,
311
+ 6,
312
+ 6,
313
+ 6,
314
+ 7,
315
+ 8
316
+ ], U = [
317
+ 0,
318
+ 26,
319
+ 44,
320
+ 70,
321
+ 100,
322
+ 134,
323
+ 172,
324
+ 196,
325
+ 242,
326
+ 292,
327
+ 346,
328
+ 404,
329
+ 466,
330
+ 532,
331
+ 581,
332
+ 655,
333
+ 733,
334
+ 815,
335
+ 901,
336
+ 991,
337
+ 1085
338
+ ], me = [
339
+ [],
340
+ [],
341
+ [6, 18],
342
+ [6, 22],
343
+ [6, 26],
344
+ [6, 30],
345
+ [6, 34],
346
+ [
347
+ 6,
348
+ 22,
349
+ 38
350
+ ],
351
+ [
352
+ 6,
353
+ 24,
354
+ 42
355
+ ],
356
+ [
357
+ 6,
358
+ 26,
359
+ 46
360
+ ],
361
+ [
362
+ 6,
363
+ 28,
364
+ 50
365
+ ],
366
+ [
367
+ 6,
368
+ 30,
369
+ 54
370
+ ],
371
+ [
372
+ 6,
373
+ 32,
374
+ 58
375
+ ],
376
+ [
377
+ 6,
378
+ 34,
379
+ 62
380
+ ],
381
+ [
382
+ 6,
383
+ 26,
384
+ 46,
385
+ 66
386
+ ],
387
+ [
388
+ 6,
389
+ 26,
390
+ 48,
391
+ 70
392
+ ],
393
+ [
394
+ 6,
395
+ 26,
396
+ 50,
397
+ 74
398
+ ],
399
+ [
400
+ 6,
401
+ 30,
402
+ 54,
403
+ 78
404
+ ],
405
+ [
406
+ 6,
407
+ 30,
408
+ 56,
409
+ 82
410
+ ],
411
+ [
412
+ 6,
413
+ 30,
414
+ 58,
415
+ 86
416
+ ],
417
+ [
418
+ 6,
419
+ 34,
420
+ 62,
421
+ 90
422
+ ]
423
+ ], he = [
424
+ 30660,
425
+ 29427,
426
+ 32170,
427
+ 30877,
428
+ 26159,
429
+ 25368,
430
+ 27713,
431
+ 26998
432
+ ], ge = [
433
+ 0,
434
+ 0,
435
+ 0,
436
+ 0,
437
+ 0,
438
+ 0,
439
+ 0,
440
+ 31892,
441
+ 34236,
442
+ 39577,
443
+ 42195,
444
+ 48118,
445
+ 51042,
446
+ 55367,
447
+ 58893,
448
+ 63784,
449
+ 68472,
450
+ 70749,
451
+ 76311,
452
+ 79154,
453
+ 84390
454
+ ], _e = class {
455
+ buffer = [];
456
+ length = 0;
457
+ put(e, t) {
458
+ for (let n = t - 1; n >= 0; n--) this.buffer.push(e >> n & 1), this.length++;
459
+ }
460
+ getBit(e) {
461
+ return this.buffer[e];
462
+ }
463
+ getLength() {
464
+ return this.length;
465
+ }
466
+ getBuffer() {
467
+ return this.buffer;
468
+ }
469
+ }, W = new Uint8Array(512), G = new Uint8Array(256);
470
+ (function() {
471
+ let e = 1;
472
+ for (let t = 0; t < 255; t++) W[t] = e, G[e] = t, e <<= 1, e >= 256 && (e ^= 285);
473
+ for (let e = 255; e < 512; e++) W[e] = W[e - 255];
474
+ })();
475
+ function K(e, t) {
476
+ return e === 0 || t === 0 ? 0 : W[G[e] + G[t]];
477
+ }
478
+ function ve(e, t) {
479
+ let n = new Uint8Array(t + 1);
480
+ n[0] = 1;
481
+ for (let e = 0; e < t; e++) for (let r = t; r >= 1; r--) n[r] = n[r] ^ K(n[r - 1], W[e]);
482
+ let r = new Uint8Array(e.length + t);
483
+ for (let t = 0; t < e.length; t++) r[t] = e[t];
484
+ for (let i = 0; i < e.length; i++) {
485
+ let e = r[i];
486
+ if (e !== 0) for (let a = 1; a <= t; a++) r[i + a] ^= K(n[a], e);
487
+ }
488
+ return Array.from(r.slice(e.length));
489
+ }
490
+ function ye(e) {
491
+ for (let t = 1; t <= 20; t++) if (H[t] >= e) return t;
492
+ throw Error("Data too long for QR code (max ~850 bytes)");
493
+ }
494
+ function be(e) {
495
+ return 17 + e * 4;
496
+ }
497
+ function q(e) {
498
+ return Array.from({ length: e }, () => Array(e).fill(null));
499
+ }
500
+ function xe(e, t, n, r) {
501
+ t >= 0 && t < e.length && n >= 0 && n < e.length && (e[t][n] = r);
502
+ }
503
+ function J(e, t, n) {
504
+ for (let r = -1; r <= 7; r++) for (let i = -1; i <= 7; i++) {
505
+ let a = r >= 0 && r <= 6 && i >= 0 && i <= 6 && (r === 0 || r === 6 || i === 0 || i === 6 || r >= 2 && r <= 4 && i >= 2 && i <= 4);
506
+ xe(e, t + r, n + i, a);
507
+ }
508
+ }
509
+ function Se(e, t, n) {
510
+ for (let r = -2; r <= 2; r++) for (let i = -2; i <= 2; i++) {
511
+ let a = Math.abs(r) === 2 || Math.abs(i) === 2 || r === 0 && i === 0;
512
+ e[t + r][n + i] === null && (e[t + r][n + i] = a);
513
+ }
514
+ }
515
+ function Y(e) {
516
+ let t = e.length;
517
+ for (let n = 8; n < t - 8; n++) {
518
+ let t = n % 2 == 0;
519
+ e[6][n] === null && (e[6][n] = t), e[n][6] === null && (e[n][6] = t);
520
+ }
521
+ }
522
+ function Ce(e) {
523
+ let t = e.length;
524
+ for (let t = 0; t <= 8; t++) e[8][t] === null && (e[8][t] = !1), e[t][8] === null && (e[t][8] = !1);
525
+ for (let n = 0; n <= 7; n++) e[8][t - 1 - n] === null && (e[8][t - 1 - n] = !1);
526
+ for (let n = 0; n <= 7; n++) e[t - 1 - n][8] === null && (e[t - 1 - n][8] = !1);
527
+ e[t - 8][8] = !0;
528
+ }
529
+ function X(e, t) {
530
+ let n = e.length, r = he[t];
531
+ for (let t = 0; t <= 5; t++) e[8][t] = !!(r >> 14 - t & 1);
532
+ e[8][7] = !!(r >> 8 & 1), e[8][8] = !!(r >> 7 & 1), e[7][8] = !!(r >> 6 & 1);
533
+ for (let t = 0; t <= 5; t++) e[5 - t][8] = !!(r >> t & 1);
534
+ for (let t = 0; t <= 7; t++) e[8][n - 1 - t] = !!(r >> t & 1);
535
+ for (let t = 0; t <= 6; t++) e[n - 1 - t][8] = !!(r >> 14 - t & 1);
536
+ }
537
+ function Z(e, t) {
538
+ if (t < 7) return;
539
+ let n = e.length, r = ge[t];
540
+ for (let t = 0; t < 18; t++) {
541
+ let i = !!(r >> t & 1), a = Math.floor(t / 3), o = t % 3;
542
+ e[5 - a][n - 9 - o] = i, e[n - 9 - o][5 - a] = i;
543
+ }
544
+ }
545
+ var we = [
546
+ (e, t) => (e + t) % 2 == 0,
547
+ (e, t) => e % 2 == 0,
548
+ (e, t) => t % 3 == 0,
549
+ (e, t) => (e + t) % 3 == 0,
550
+ (e, t) => (Math.floor(e / 2) + Math.floor(t / 3)) % 2 == 0,
551
+ (e, t) => e * t % 2 + e * t % 3 == 0,
552
+ (e, t) => (e * t % 2 + e * t % 3) % 2 == 0,
553
+ (e, t) => ((e + t) % 2 + e * t % 3) % 2 == 0
554
+ ];
555
+ function Te(e, t) {
556
+ let n = e.length, r = 0, i = !0;
557
+ for (let a = n - 1; a >= 1; a -= 2) {
558
+ a === 6 && (a = 5);
559
+ let o = i ? Array.from({ length: n }, (e, t) => n - 1 - t) : Array.from({ length: n }, (e, t) => t);
560
+ for (let n of o) for (let i of [a, a - 1]) e[n][i] === null && (e[n][i] = r < t.length ? !!t[r] : !1, r++);
561
+ i = !i;
562
+ }
563
+ }
564
+ function Q(e, t, n) {
565
+ let r = e.length, i = Array.from({ length: r }, (t, n) => Array.from({ length: r }, (t, r) => !!e[n][r])), a = we[n];
566
+ for (let e = 0; e < r; e++) for (let n = 0; n < r; n++) t[e][n] === null && a(e, n) && (i[e][n] = !i[e][n]);
567
+ return i;
568
+ }
569
+ function Ee(e) {
570
+ let t = e.length, n = 0;
571
+ for (let r = 0; r < t; r++) {
572
+ let i = 1;
573
+ for (let a = 1; a < t; a++) e[r][a] === e[r][a - 1] ? (i++, i === 5 ? n += 3 : i > 5 && n++) : i = 1;
574
+ }
575
+ for (let r = 0; r < t; r++) {
576
+ let i = 1;
577
+ for (let a = 1; a < t; a++) e[a][r] === e[a - 1][r] ? (i++, i === 5 ? n += 3 : i > 5 && n++) : i = 1;
578
+ }
579
+ for (let r = 0; r < t - 1; r++) for (let i = 0; i < t - 1; i++) {
580
+ let t = e[r][i];
581
+ t === e[r][i + 1] && t === e[r + 1][i] && t === e[r + 1][i + 1] && (n += 3);
582
+ }
583
+ return n;
584
+ }
585
+ function De(e) {
586
+ let t = ee.from(e, "utf-8"), n = ye(t.length), r = be(n), i = fe[n], a = pe[n], o = U[n], s = new _e();
587
+ s.put(V, 4), s.put(t.length, n <= 9 ? 8 : 16);
588
+ for (let e = 0; e < t.length; e++) s.put(t[e], 8);
589
+ let c = o - i * a, l = c * 8;
590
+ for (s.getLength() < l && s.put(0, Math.min(4, l - s.getLength())); s.getLength() % 8 != 0;) s.put(0, 1);
591
+ let u = [236, 17], d = 0;
592
+ for (; s.getLength() < l;) s.put(u[d % 2], 8), d++;
593
+ let f = [], p = s.getBuffer();
594
+ for (let e = 0; e < c; e++) {
595
+ let t = 0;
596
+ for (let n = 0; n < 8; n++) t = t << 1 | (p[e * 8 + n] || 0);
597
+ f.push(t);
598
+ }
599
+ let m = Math.floor(c / a), h = c % a, g = [], _ = [], v = 0;
600
+ for (let e = 0; e < a; e++) {
601
+ let t = m + +(e >= a - h), n = f.slice(v, v + t);
602
+ g.push(n), _.push(ve(n, i)), v += t;
603
+ }
604
+ let y = [], b = Math.max(...g.map((e) => e.length));
605
+ for (let e = 0; e < b; e++) for (let t of g) if (e < t.length) for (let n = 7; n >= 0; n--) y.push(t[e] >> n & 1);
606
+ for (let e = 0; e < i; e++) for (let t of _) if (e < t.length) for (let n = 7; n >= 0; n--) y.push(t[e] >> n & 1);
607
+ let x = q(r);
608
+ J(x, 0, 0), J(x, 0, r - 7), J(x, r - 7, 0), Y(x), Ce(x);
609
+ let S = me[n] || [];
610
+ for (let e = 0; e < S.length; e++) for (let t = 0; t < S.length; t++) {
611
+ let n = S[e], r = S[t];
612
+ x[n]?.[r] === null && Se(x, n, r);
613
+ }
614
+ let C = x.map((e) => [...e]);
615
+ Te(C, y);
616
+ let w = 0, T = Infinity;
617
+ for (let e = 0; e < 8; e++) {
618
+ let t = Ee(Q(C, x, e));
619
+ t < T && (T = t, w = e);
620
+ }
621
+ let E = Q(C, x, w), D = q(r);
622
+ J(D, 0, 0), J(D, 0, r - 7), J(D, r - 7, 0), Y(D), X(D, w), Z(D, n);
623
+ for (let e = 0; e < r; e++) for (let t = 0; t < r; t++) x[e][t] !== null && (E[e][t] = !!D[e][t]);
624
+ return X(E, w), n >= 7 && Z(E, n), E;
625
+ }
626
+ function Oe(e, t) {
627
+ let n = t?.quiet ?? 4, r = t?.invert ?? !1, i;
628
+ try {
629
+ i = De(e);
630
+ } catch {
631
+ return ` [QR: ${e}]`;
632
+ }
633
+ let a = i.length, o = a + n * 2, s = (e, t) => {
634
+ let r = e - n, o = t - n;
635
+ return r < 0 || r >= a || o < 0 || o >= a ? !1 : i[r][o];
636
+ }, c = [], l = !r;
637
+ for (let e = 0; e < o; e += 2) {
638
+ let t = "";
639
+ for (let n = 0; n < o; n++) {
640
+ let r = s(e, n), i = e + 1 < o ? s(e + 1, n) : !1;
641
+ r === l && i === l ? t += "█" : r === l && i !== l ? t += "▀" : r !== l && i === l ? t += "▄" : t += " ";
642
+ }
643
+ c.push(t);
644
+ }
645
+ return c.join("\n");
646
+ }
647
+ //#endregion
648
+ //#region src/shared/index.ts
649
+ var $ = {
650
+ checkboxOn: "◉",
651
+ checkboxOff: "◯",
652
+ radioOn: "●",
653
+ radioOff: "○",
654
+ cursor: "❯",
655
+ focusBar: "▌",
656
+ shadowCell: "▒",
657
+ barFull: "█",
658
+ barEmpty: "░",
659
+ barEighths: [
660
+ "▏",
661
+ "▎",
662
+ "▍",
663
+ "▌",
664
+ "▋",
665
+ "▊",
666
+ "▉"
667
+ ],
668
+ check: "✔",
669
+ cross: "✖",
670
+ warn: "⚠",
671
+ info: "ℹ",
672
+ spinner: [
673
+ "⠋",
674
+ "⠙",
675
+ "⠹",
676
+ "⠸",
677
+ "⠼",
678
+ "⠴",
679
+ "⠦",
680
+ "⠧",
681
+ "⠇",
682
+ "⠏"
683
+ ]
684
+ }, ke = {
685
+ dots: $.spinner,
686
+ line: [
687
+ "—",
688
+ "\\",
689
+ "|",
690
+ "/"
691
+ ],
692
+ arc: [
693
+ "◜",
694
+ "◠",
695
+ "◝",
696
+ "◞",
697
+ "◡",
698
+ "◟"
699
+ ],
700
+ circle: [
701
+ "◐",
702
+ "◓",
703
+ "◑",
704
+ "◒"
705
+ ],
706
+ bounce: [
707
+ "▁",
708
+ "▃",
709
+ "▄",
710
+ "▅",
711
+ "▆",
712
+ "▇",
713
+ "▆",
714
+ "▅",
715
+ "▄",
716
+ "▃"
717
+ ],
718
+ moon: [
719
+ "🌑",
720
+ "🌒",
721
+ "🌓",
722
+ "🌔",
723
+ "🌕",
724
+ "🌖",
725
+ "🌗",
726
+ "🌘"
727
+ ]
728
+ }, Ae = 120, je = 50;
729
+ //#endregion
730
+ export { P as A, F as B, x as C, T as D, w as E, de as F, ie as G, oe as H, z as I, D as J, O as K, R as L, le as M, ce as N, Oe as O, N as P, I as R, b as S, C as T, se as U, ae as V, te as W, h as _, n as a, v as b, a as c, c as d, l as f, m as g, p as h, ke as i, ue as j, B as k, o as l, f as m, Ae as n, r as o, d as p, E as q, je as r, i as s, $ as t, s as u, g as v, S as w, y as x, _ as y, L as z };
731
+
732
+ //# sourceMappingURL=shared-h5p-EcZV.js.map