@visulima/pail 4.0.0-alpha.1 → 4.0.0-alpha.11

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.
Files changed (91) hide show
  1. package/CHANGELOG.md +204 -0
  2. package/LICENSE.md +434 -52
  3. package/README.md +323 -0
  4. package/dist/error.d.ts +104 -0
  5. package/dist/error.js +76 -0
  6. package/dist/index.browser.d.ts +3 -1
  7. package/dist/index.browser.js +1490 -3
  8. package/dist/index.server.d.ts +3 -5
  9. package/dist/index.server.js +2380 -110
  10. package/dist/middleware/elysia.d.ts +71 -0
  11. package/dist/middleware/elysia.js +70 -0
  12. package/dist/middleware/express.d.ts +86 -0
  13. package/dist/middleware/express.js +29 -0
  14. package/dist/middleware/fastify.d.ts +81 -0
  15. package/dist/middleware/fastify.js +46 -0
  16. package/dist/middleware/hono.d.ts +85 -0
  17. package/dist/middleware/hono.js +33 -0
  18. package/dist/middleware/next/handler.d.ts +36 -0
  19. package/dist/middleware/next/handler.js +53 -0
  20. package/dist/middleware/next/middleware.d.ts +59 -0
  21. package/dist/middleware/next/storage.d.ts +14 -0
  22. package/dist/middleware/shared/create-middleware-logger.d.ts +82 -0
  23. package/dist/middleware/shared/headers.d.ts +14 -0
  24. package/dist/middleware/shared/routes.d.ts +30 -0
  25. package/dist/middleware/shared/storage.d.ts +29 -0
  26. package/dist/middleware/sveltekit.d.ts +123 -0
  27. package/dist/middleware/sveltekit.js +43 -0
  28. package/dist/object-tree.d.ts +2 -2
  29. package/dist/object-tree.js +7 -7
  30. package/dist/packem_shared/{AbstractJsonReporter-BaZ33PlE.js → AbstractJsonReporter-BO8Calb4.js} +112 -32
  31. package/dist/packem_shared/AbstractJsonReporter-nOj0Ft1F.js +284 -0
  32. package/dist/packem_shared/{JsonReporter-BRw4skd5.js → JsonReporter-CCmj7oYL.js} +2 -2
  33. package/dist/packem_shared/{JsonReporter-VzgyLEYz.js → JsonReporter-Ck2PIAEw.js} +2 -2
  34. package/dist/packem_shared/PrettyReporter-BCvyNzXO.js +2720 -0
  35. package/dist/packem_shared/{PrettyReporter-DySIXBjQ.js → PrettyReporter-BtTr13Ha.js} +55 -11
  36. package/dist/packem_shared/abstract-pretty-reporter-CXAKYCb8.js +2635 -0
  37. package/dist/packem_shared/constants-B1RjD_ps.js +99 -0
  38. package/dist/packem_shared/createPailError-B_sgL0nF.js +76 -0
  39. package/dist/packem_shared/headers-BxHWM6KI.js +127 -0
  40. package/dist/packem_shared/{index-BomQ3E6J.js → index-Bx3-C0j9.js} +29 -21
  41. package/dist/packem_shared/pailMiddleware-Ci88geIF.js +24 -0
  42. package/dist/packem_shared/storage-D0vqz8OX.js +36 -0
  43. package/dist/packem_shared/{InteractiveStreamHook-DiSubbJ1.js → useLogger-D0rU3lcX.js} +13 -1
  44. package/dist/packem_shared/{write-console-log-based-on-level-DBmRYXpj.js → write-console-log-based-on-level-ree2lDPw.js} +5 -4
  45. package/dist/packem_shared/{write-stream-BG8fhcs3.js → write-stream-MDqyXmc_.js} +1 -1
  46. package/dist/pail.browser.d.ts +1 -1
  47. package/dist/pail.server.d.ts +1 -76
  48. package/dist/processor/caller/caller-processor.js +1 -1
  49. package/dist/processor/environment-processor.d.ts +124 -0
  50. package/dist/processor/environment-processor.js +89 -0
  51. package/dist/processor/message-formatter-processor.d.ts +2 -3
  52. package/dist/processor/message-formatter-processor.js +654 -5
  53. package/dist/processor/opentelemetry-processor.js +4 -4
  54. package/dist/processor/redact-processor.d.ts +1 -1
  55. package/dist/processor/redact-processor.js +2 -1
  56. package/dist/processor/sampling-processor.d.ts +111 -0
  57. package/dist/processor/sampling-processor.js +59 -0
  58. package/dist/reporter/file/json-file-reporter.js +1 -1
  59. package/dist/reporter/http/abstract-http-reporter.js +23 -26
  60. package/dist/reporter/http/http-reporter.edge-light.js +134 -57
  61. package/dist/reporter/json/abstract-json-reporter.d.ts +1 -1
  62. package/dist/reporter/json/index.browser.js +2 -2
  63. package/dist/reporter/json/index.js +2 -2
  64. package/dist/reporter/pretty/index.browser.js +1 -1
  65. package/dist/reporter/pretty/index.js +1 -1
  66. package/dist/reporter/pretty/pretty-reporter.server.d.ts +1 -1
  67. package/dist/reporter/raw/raw-reporter.server.d.ts +1 -1
  68. package/dist/reporter/simple/simple-reporter.server.d.ts +1 -1
  69. package/dist/reporter/simple/simple-reporter.server.js +8 -12
  70. package/dist/types.d.ts +4 -4
  71. package/dist/utils/write-console-log-based-on-level.d.ts +1 -1
  72. package/dist/wide-event.d.ts +300 -0
  73. package/dist/wide-event.js +284 -0
  74. package/package.json +73 -20
  75. package/dist/interactive/index.d.ts +0 -2
  76. package/dist/interactive/index.js +0 -2
  77. package/dist/interactive/interactive-manager.d.ts +0 -108
  78. package/dist/interactive/interactive-stream-hook.d.ts +0 -68
  79. package/dist/packem_shared/InteractiveManager-CZ85hGNW.js +0 -172
  80. package/dist/packem_shared/PrettyReporter-DgZB2eBG.js +0 -222
  81. package/dist/packem_shared/abstract-pretty-reporter-Di_sdm2r.js +0 -50
  82. package/dist/packem_shared/format-label-De49vNPd.js +0 -1193
  83. package/dist/packem_shared/get-longest-label-C9PWeyKq.js +0 -9
  84. package/dist/packem_shared/index-DqKWykfa.js +0 -1146
  85. package/dist/packem_shared/interactive-stream-hook-DG4BtN12.js +0 -141
  86. package/dist/packem_shared/pail.browser-u2CSR_af.js +0 -1427
  87. package/dist/progress-bar.d.ts +0 -136
  88. package/dist/progress-bar.js +0 -404
  89. package/dist/spinner.d.ts +0 -220
  90. package/dist/spinner.js +0 -2150
  91. package/dist/utils/ansi-escapes.d.ts +0 -4
package/dist/spinner.js DELETED
@@ -1,2150 +0,0 @@
1
- import colorize from '@visulima/colorize';
2
-
3
- var dots = {
4
- interval: 80,
5
- frames: [
6
- "⠋",
7
- "⠙",
8
- "⠹",
9
- "⠸",
10
- "⠼",
11
- "⠴",
12
- "⠦",
13
- "⠧",
14
- "⠇",
15
- "⠏"
16
- ]
17
- };
18
- var dots2 = {
19
- interval: 80,
20
- frames: [
21
- "⣾",
22
- "⣽",
23
- "⣻",
24
- "⢿",
25
- "⡿",
26
- "⣟",
27
- "⣯",
28
- "⣷"
29
- ]
30
- };
31
- var dots3 = {
32
- interval: 80,
33
- frames: [
34
- "⠋",
35
- "⠙",
36
- "⠚",
37
- "⠞",
38
- "⠖",
39
- "⠦",
40
- "⠴",
41
- "⠲",
42
- "⠳",
43
- "⠓"
44
- ]
45
- };
46
- var dots4 = {
47
- interval: 80,
48
- frames: [
49
- "⠄",
50
- "⠆",
51
- "⠇",
52
- "⠋",
53
- "⠙",
54
- "⠸",
55
- "⠰",
56
- "⠠",
57
- "⠰",
58
- "⠸",
59
- "⠙",
60
- "⠋",
61
- "⠇",
62
- "⠆"
63
- ]
64
- };
65
- var dots5 = {
66
- interval: 80,
67
- frames: [
68
- "⠋",
69
- "⠙",
70
- "⠚",
71
- "⠒",
72
- "⠂",
73
- "⠂",
74
- "⠒",
75
- "⠲",
76
- "⠴",
77
- "⠦",
78
- "⠖",
79
- "⠒",
80
- "⠐",
81
- "⠐",
82
- "⠒",
83
- "⠓",
84
- "⠋"
85
- ]
86
- };
87
- var dots6 = {
88
- interval: 80,
89
- frames: [
90
- "⠁",
91
- "⠉",
92
- "⠙",
93
- "⠚",
94
- "⠒",
95
- "⠂",
96
- "⠂",
97
- "⠒",
98
- "⠲",
99
- "⠴",
100
- "⠤",
101
- "⠄",
102
- "⠄",
103
- "⠤",
104
- "⠴",
105
- "⠲",
106
- "⠒",
107
- "⠂",
108
- "⠂",
109
- "⠒",
110
- "⠚",
111
- "⠙",
112
- "⠉",
113
- "⠁"
114
- ]
115
- };
116
- var dots7 = {
117
- interval: 80,
118
- frames: [
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
- var dots8 = {
146
- interval: 80,
147
- frames: [
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
- "⠉",
175
- "⠈",
176
- "⠈"
177
- ]
178
- };
179
- var dots9 = {
180
- interval: 80,
181
- frames: [
182
- "⢹",
183
- "⢺",
184
- "⢼",
185
- "⣸",
186
- "⣇",
187
- "⡧",
188
- "⡗",
189
- "⡏"
190
- ]
191
- };
192
- var dots10 = {
193
- interval: 80,
194
- frames: [
195
- "⢄",
196
- "⢂",
197
- "⢁",
198
- "⡁",
199
- "⡈",
200
- "⡐",
201
- "⡠"
202
- ]
203
- };
204
- var dots11 = {
205
- interval: 100,
206
- frames: [
207
- "⠁",
208
- "⠂",
209
- "⠄",
210
- "⡀",
211
- "⢀",
212
- "⠠",
213
- "⠐",
214
- "⠈"
215
- ]
216
- };
217
- var dots12 = {
218
- interval: 80,
219
- frames: [
220
- "⢀⠀",
221
- "⡀⠀",
222
- "⠄⠀",
223
- "⢂⠀",
224
- "⡂⠀",
225
- "⠅⠀",
226
- "⢃⠀",
227
- "⡃⠀",
228
- "⠍⠀",
229
- "⢋⠀",
230
- "⡋⠀",
231
- "⠍⠁",
232
- "⢋⠁",
233
- "⡋⠁",
234
- "⠍⠉",
235
- "⠋⠉",
236
- "⠋⠉",
237
- "⠉⠙",
238
- "⠉⠙",
239
- "⠉⠩",
240
- "⠈⢙",
241
- "⠈⡙",
242
- "⢈⠩",
243
- "⡀⢙",
244
- "⠄⡙",
245
- "⢂⠩",
246
- "⡂⢘",
247
- "⠅⡘",
248
- "⢃⠨",
249
- "⡃⢐",
250
- "⠍⡐",
251
- "⢋⠠",
252
- "⡋⢀",
253
- "⠍⡁",
254
- "⢋⠁",
255
- "⡋⠁",
256
- "⠍⠉",
257
- "⠋⠉",
258
- "⠋⠉",
259
- "⠉⠙",
260
- "⠉⠙",
261
- "⠉⠩",
262
- "⠈⢙",
263
- "⠈⡙",
264
- "⠈⠩",
265
- "⠀⢙",
266
- "⠀⡙",
267
- "⠀⠩",
268
- "⠀⢘",
269
- "⠀⡘",
270
- "⠀⠨",
271
- "⠀⢐",
272
- "⠀⡐",
273
- "⠀⠠",
274
- "⠀⢀",
275
- "⠀⡀"
276
- ]
277
- };
278
- var dots13 = {
279
- interval: 80,
280
- frames: [
281
- "⣼",
282
- "⣹",
283
- "⢻",
284
- "⠿",
285
- "⡟",
286
- "⣏",
287
- "⣧",
288
- "⣶"
289
- ]
290
- };
291
- var dots14 = {
292
- interval: 80,
293
- frames: [
294
- "⠉⠉",
295
- "⠈⠙",
296
- "⠀⠹",
297
- "⠀⢸",
298
- "⠀⣰",
299
- "⢀⣠",
300
- "⣀⣀",
301
- "⣄⡀",
302
- "⣆⠀",
303
- "⡇⠀",
304
- "⠏⠀",
305
- "⠋⠁"
306
- ]
307
- };
308
- var dots8Bit = {
309
- interval: 80,
310
- frames: [
311
- "⠀",
312
- "⠁",
313
- "⠂",
314
- "⠃",
315
- "⠄",
316
- "⠅",
317
- "⠆",
318
- "⠇",
319
- "⡀",
320
- "⡁",
321
- "⡂",
322
- "⡃",
323
- "⡄",
324
- "⡅",
325
- "⡆",
326
- "⡇",
327
- "⠈",
328
- "⠉",
329
- "⠊",
330
- "⠋",
331
- "⠌",
332
- "⠍",
333
- "⠎",
334
- "⠏",
335
- "⡈",
336
- "⡉",
337
- "⡊",
338
- "⡋",
339
- "⡌",
340
- "⡍",
341
- "⡎",
342
- "⡏",
343
- "⠐",
344
- "⠑",
345
- "⠒",
346
- "⠓",
347
- "⠔",
348
- "⠕",
349
- "⠖",
350
- "⠗",
351
- "⡐",
352
- "⡑",
353
- "⡒",
354
- "⡓",
355
- "⡔",
356
- "⡕",
357
- "⡖",
358
- "⡗",
359
- "⠘",
360
- "⠙",
361
- "⠚",
362
- "⠛",
363
- "⠜",
364
- "⠝",
365
- "⠞",
366
- "⠟",
367
- "⡘",
368
- "⡙",
369
- "⡚",
370
- "⡛",
371
- "⡜",
372
- "⡝",
373
- "⡞",
374
- "⡟",
375
- "⠠",
376
- "⠡",
377
- "⠢",
378
- "⠣",
379
- "⠤",
380
- "⠥",
381
- "⠦",
382
- "⠧",
383
- "⡠",
384
- "⡡",
385
- "⡢",
386
- "⡣",
387
- "⡤",
388
- "⡥",
389
- "⡦",
390
- "⡧",
391
- "⠨",
392
- "⠩",
393
- "⠪",
394
- "⠫",
395
- "⠬",
396
- "⠭",
397
- "⠮",
398
- "⠯",
399
- "⡨",
400
- "⡩",
401
- "⡪",
402
- "⡫",
403
- "⡬",
404
- "⡭",
405
- "⡮",
406
- "⡯",
407
- "⠰",
408
- "⠱",
409
- "⠲",
410
- "⠳",
411
- "⠴",
412
- "⠵",
413
- "⠶",
414
- "⠷",
415
- "⡰",
416
- "⡱",
417
- "⡲",
418
- "⡳",
419
- "⡴",
420
- "⡵",
421
- "⡶",
422
- "⡷",
423
- "⠸",
424
- "⠹",
425
- "⠺",
426
- "⠻",
427
- "⠼",
428
- "⠽",
429
- "⠾",
430
- "⠿",
431
- "⡸",
432
- "⡹",
433
- "⡺",
434
- "⡻",
435
- "⡼",
436
- "⡽",
437
- "⡾",
438
- "⡿",
439
- "⢀",
440
- "⢁",
441
- "⢂",
442
- "⢃",
443
- "⢄",
444
- "⢅",
445
- "⢆",
446
- "⢇",
447
- "⣀",
448
- "⣁",
449
- "⣂",
450
- "⣃",
451
- "⣄",
452
- "⣅",
453
- "⣆",
454
- "⣇",
455
- "⢈",
456
- "⢉",
457
- "⢊",
458
- "⢋",
459
- "⢌",
460
- "⢍",
461
- "⢎",
462
- "⢏",
463
- "⣈",
464
- "⣉",
465
- "⣊",
466
- "⣋",
467
- "⣌",
468
- "⣍",
469
- "⣎",
470
- "⣏",
471
- "⢐",
472
- "⢑",
473
- "⢒",
474
- "⢓",
475
- "⢔",
476
- "⢕",
477
- "⢖",
478
- "⢗",
479
- "⣐",
480
- "⣑",
481
- "⣒",
482
- "⣓",
483
- "⣔",
484
- "⣕",
485
- "⣖",
486
- "⣗",
487
- "⢘",
488
- "⢙",
489
- "⢚",
490
- "⢛",
491
- "⢜",
492
- "⢝",
493
- "⢞",
494
- "⢟",
495
- "⣘",
496
- "⣙",
497
- "⣚",
498
- "⣛",
499
- "⣜",
500
- "⣝",
501
- "⣞",
502
- "⣟",
503
- "⢠",
504
- "⢡",
505
- "⢢",
506
- "⢣",
507
- "⢤",
508
- "⢥",
509
- "⢦",
510
- "⢧",
511
- "⣠",
512
- "⣡",
513
- "⣢",
514
- "⣣",
515
- "⣤",
516
- "⣥",
517
- "⣦",
518
- "⣧",
519
- "⢨",
520
- "⢩",
521
- "⢪",
522
- "⢫",
523
- "⢬",
524
- "⢭",
525
- "⢮",
526
- "⢯",
527
- "⣨",
528
- "⣩",
529
- "⣪",
530
- "⣫",
531
- "⣬",
532
- "⣭",
533
- "⣮",
534
- "⣯",
535
- "⢰",
536
- "⢱",
537
- "⢲",
538
- "⢳",
539
- "⢴",
540
- "⢵",
541
- "⢶",
542
- "⢷",
543
- "⣰",
544
- "⣱",
545
- "⣲",
546
- "⣳",
547
- "⣴",
548
- "⣵",
549
- "⣶",
550
- "⣷",
551
- "⢸",
552
- "⢹",
553
- "⢺",
554
- "⢻",
555
- "⢼",
556
- "⢽",
557
- "⢾",
558
- "⢿",
559
- "⣸",
560
- "⣹",
561
- "⣺",
562
- "⣻",
563
- "⣼",
564
- "⣽",
565
- "⣾",
566
- "⣿"
567
- ]
568
- };
569
- var dotsCircle = {
570
- interval: 80,
571
- frames: [
572
- "⢎ ",
573
- "⠎⠁",
574
- "⠊⠑",
575
- "⠈⠱",
576
- " ⡱",
577
- "⢀⡰",
578
- "⢄⡠",
579
- "⢆⡀"
580
- ]
581
- };
582
- var sand = {
583
- interval: 80,
584
- frames: [
585
- "⠁",
586
- "⠂",
587
- "⠄",
588
- "⡀",
589
- "⡈",
590
- "⡐",
591
- "⡠",
592
- "⣀",
593
- "⣁",
594
- "⣂",
595
- "⣄",
596
- "⣌",
597
- "⣔",
598
- "⣤",
599
- "⣥",
600
- "⣦",
601
- "⣮",
602
- "⣶",
603
- "⣷",
604
- "⣿",
605
- "⡿",
606
- "⠿",
607
- "⢟",
608
- "⠟",
609
- "⡛",
610
- "⠛",
611
- "⠫",
612
- "⢋",
613
- "⠋",
614
- "⠍",
615
- "⡉",
616
- "⠉",
617
- "⠑",
618
- "⠡",
619
- "⢁"
620
- ]
621
- };
622
- var line = {
623
- interval: 130,
624
- frames: [
625
- "-",
626
- "\\",
627
- "|",
628
- "/"
629
- ]
630
- };
631
- var line2 = {
632
- interval: 100,
633
- frames: [
634
- "⠂",
635
- "-",
636
- "–",
637
- "—",
638
- "–",
639
- "-"
640
- ]
641
- };
642
- var rollingLine = {
643
- interval: 80,
644
- frames: [
645
- "/ ",
646
- " - ",
647
- " \\ ",
648
- " |",
649
- " |",
650
- " \\ ",
651
- " - ",
652
- "/ "
653
- ]
654
- };
655
- var pipe = {
656
- interval: 100,
657
- frames: [
658
- "┤",
659
- "┘",
660
- "┴",
661
- "└",
662
- "├",
663
- "┌",
664
- "┬",
665
- "┐"
666
- ]
667
- };
668
- var simpleDots = {
669
- interval: 400,
670
- frames: [
671
- ". ",
672
- ".. ",
673
- "...",
674
- " "
675
- ]
676
- };
677
- var simpleDotsScrolling = {
678
- interval: 200,
679
- frames: [
680
- ". ",
681
- ".. ",
682
- "...",
683
- " ..",
684
- " .",
685
- " "
686
- ]
687
- };
688
- var star = {
689
- interval: 70,
690
- frames: [
691
- "✶",
692
- "✸",
693
- "✹",
694
- "✺",
695
- "✹",
696
- "✷"
697
- ]
698
- };
699
- var star2 = {
700
- interval: 80,
701
- frames: [
702
- "+",
703
- "x",
704
- "*"
705
- ]
706
- };
707
- var flip = {
708
- interval: 70,
709
- frames: [
710
- "_",
711
- "_",
712
- "_",
713
- "-",
714
- "`",
715
- "`",
716
- "'",
717
- "´",
718
- "-",
719
- "_",
720
- "_",
721
- "_"
722
- ]
723
- };
724
- var hamburger = {
725
- interval: 100,
726
- frames: [
727
- "☱",
728
- "☲",
729
- "☴"
730
- ]
731
- };
732
- var growVertical = {
733
- interval: 120,
734
- frames: [
735
- "▁",
736
- "▃",
737
- "▄",
738
- "▅",
739
- "▆",
740
- "▇",
741
- "▆",
742
- "▅",
743
- "▄",
744
- "▃"
745
- ]
746
- };
747
- var growHorizontal = {
748
- interval: 120,
749
- frames: [
750
- "▏",
751
- "▎",
752
- "▍",
753
- "▌",
754
- "▋",
755
- "▊",
756
- "▉",
757
- "▊",
758
- "▋",
759
- "▌",
760
- "▍",
761
- "▎"
762
- ]
763
- };
764
- var balloon = {
765
- interval: 140,
766
- frames: [
767
- " ",
768
- ".",
769
- "o",
770
- "O",
771
- "@",
772
- "*",
773
- " "
774
- ]
775
- };
776
- var balloon2 = {
777
- interval: 120,
778
- frames: [
779
- ".",
780
- "o",
781
- "O",
782
- "°",
783
- "O",
784
- "o",
785
- "."
786
- ]
787
- };
788
- var noise = {
789
- interval: 100,
790
- frames: [
791
- "▓",
792
- "▒",
793
- "░"
794
- ]
795
- };
796
- var bounce = {
797
- interval: 120,
798
- frames: [
799
- "⠁",
800
- "⠂",
801
- "⠄",
802
- "⠂"
803
- ]
804
- };
805
- var boxBounce = {
806
- interval: 120,
807
- frames: [
808
- "▖",
809
- "▘",
810
- "▝",
811
- "▗"
812
- ]
813
- };
814
- var boxBounce2 = {
815
- interval: 100,
816
- frames: [
817
- "▌",
818
- "▀",
819
- "▐",
820
- "▄"
821
- ]
822
- };
823
- var triangle = {
824
- interval: 50,
825
- frames: [
826
- "◢",
827
- "◣",
828
- "◤",
829
- "◥"
830
- ]
831
- };
832
- var binary = {
833
- interval: 80,
834
- frames: [
835
- "010010",
836
- "001100",
837
- "100101",
838
- "111010",
839
- "111101",
840
- "010111",
841
- "101011",
842
- "111000",
843
- "110011",
844
- "110101"
845
- ]
846
- };
847
- var arc = {
848
- interval: 100,
849
- frames: [
850
- "◜",
851
- "◠",
852
- "◝",
853
- "◞",
854
- "◡",
855
- "◟"
856
- ]
857
- };
858
- var circle = {
859
- interval: 120,
860
- frames: [
861
- "◡",
862
- "⊙",
863
- "◠"
864
- ]
865
- };
866
- var squareCorners = {
867
- interval: 180,
868
- frames: [
869
- "◰",
870
- "◳",
871
- "◲",
872
- "◱"
873
- ]
874
- };
875
- var circleQuarters = {
876
- interval: 120,
877
- frames: [
878
- "◴",
879
- "◷",
880
- "◶",
881
- "◵"
882
- ]
883
- };
884
- var circleHalves = {
885
- interval: 50,
886
- frames: [
887
- "◐",
888
- "◓",
889
- "◑",
890
- "◒"
891
- ]
892
- };
893
- var squish = {
894
- interval: 100,
895
- frames: [
896
- "╫",
897
- "╪"
898
- ]
899
- };
900
- var toggle = {
901
- interval: 250,
902
- frames: [
903
- "⊶",
904
- "⊷"
905
- ]
906
- };
907
- var toggle2 = {
908
- interval: 80,
909
- frames: [
910
- "▫",
911
- "▪"
912
- ]
913
- };
914
- var toggle3 = {
915
- interval: 120,
916
- frames: [
917
- "□",
918
- "■"
919
- ]
920
- };
921
- var toggle4 = {
922
- interval: 100,
923
- frames: [
924
- "■",
925
- "□",
926
- "▪",
927
- "▫"
928
- ]
929
- };
930
- var toggle5 = {
931
- interval: 100,
932
- frames: [
933
- "▮",
934
- "▯"
935
- ]
936
- };
937
- var toggle6 = {
938
- interval: 300,
939
- frames: [
940
- "ဝ",
941
- "၀"
942
- ]
943
- };
944
- var toggle7 = {
945
- interval: 80,
946
- frames: [
947
- "⦾",
948
- "⦿"
949
- ]
950
- };
951
- var toggle8 = {
952
- interval: 100,
953
- frames: [
954
- "◍",
955
- "◌"
956
- ]
957
- };
958
- var toggle9 = {
959
- interval: 100,
960
- frames: [
961
- "◉",
962
- "◎"
963
- ]
964
- };
965
- var toggle10 = {
966
- interval: 100,
967
- frames: [
968
- "㊂",
969
- "㊀",
970
- "㊁"
971
- ]
972
- };
973
- var toggle11 = {
974
- interval: 50,
975
- frames: [
976
- "⧇",
977
- "⧆"
978
- ]
979
- };
980
- var toggle12 = {
981
- interval: 120,
982
- frames: [
983
- "☗",
984
- "☖"
985
- ]
986
- };
987
- var toggle13 = {
988
- interval: 80,
989
- frames: [
990
- "=",
991
- "*",
992
- "-"
993
- ]
994
- };
995
- var arrow = {
996
- interval: 100,
997
- frames: [
998
- "←",
999
- "↖",
1000
- "↑",
1001
- "↗",
1002
- "→",
1003
- "↘",
1004
- "↓",
1005
- "↙"
1006
- ]
1007
- };
1008
- var arrow2 = {
1009
- interval: 80,
1010
- frames: [
1011
- "⬆️ ",
1012
- "↗️ ",
1013
- "➡️ ",
1014
- "↘️ ",
1015
- "⬇️ ",
1016
- "↙️ ",
1017
- "⬅️ ",
1018
- "↖️ "
1019
- ]
1020
- };
1021
- var arrow3 = {
1022
- interval: 120,
1023
- frames: [
1024
- "▹▹▹▹▹",
1025
- "▸▹▹▹▹",
1026
- "▹▸▹▹▹",
1027
- "▹▹▸▹▹",
1028
- "▹▹▹▸▹",
1029
- "▹▹▹▹▸"
1030
- ]
1031
- };
1032
- var bouncingBar = {
1033
- interval: 80,
1034
- frames: [
1035
- "[ ]",
1036
- "[= ]",
1037
- "[== ]",
1038
- "[=== ]",
1039
- "[====]",
1040
- "[ ===]",
1041
- "[ ==]",
1042
- "[ =]",
1043
- "[ ]",
1044
- "[ =]",
1045
- "[ ==]",
1046
- "[ ===]",
1047
- "[====]",
1048
- "[=== ]",
1049
- "[== ]",
1050
- "[= ]"
1051
- ]
1052
- };
1053
- var bouncingBall = {
1054
- interval: 80,
1055
- frames: [
1056
- "( ● )",
1057
- "( ● )",
1058
- "( ● )",
1059
- "( ● )",
1060
- "( ●)",
1061
- "( ● )",
1062
- "( ● )",
1063
- "( ● )",
1064
- "( ● )",
1065
- "(● )"
1066
- ]
1067
- };
1068
- var smiley = {
1069
- interval: 200,
1070
- frames: [
1071
- "😄 ",
1072
- "😝 "
1073
- ]
1074
- };
1075
- var monkey = {
1076
- interval: 300,
1077
- frames: [
1078
- "🙈 ",
1079
- "🙈 ",
1080
- "🙉 ",
1081
- "🙊 "
1082
- ]
1083
- };
1084
- var hearts = {
1085
- interval: 100,
1086
- frames: [
1087
- "💛 ",
1088
- "💙 ",
1089
- "💜 ",
1090
- "💚 ",
1091
- "💗 "
1092
- ]
1093
- };
1094
- var clock = {
1095
- interval: 100,
1096
- frames: [
1097
- "🕛 ",
1098
- "🕐 ",
1099
- "🕑 ",
1100
- "🕒 ",
1101
- "🕓 ",
1102
- "🕔 ",
1103
- "🕕 ",
1104
- "🕖 ",
1105
- "🕗 ",
1106
- "🕘 ",
1107
- "🕙 ",
1108
- "🕚 "
1109
- ]
1110
- };
1111
- var earth = {
1112
- interval: 180,
1113
- frames: [
1114
- "🌍 ",
1115
- "🌎 ",
1116
- "🌏 "
1117
- ]
1118
- };
1119
- var material = {
1120
- interval: 17,
1121
- frames: [
1122
- "█▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1123
- "██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1124
- "███▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1125
- "████▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1126
- "██████▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1127
- "██████▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1128
- "███████▁▁▁▁▁▁▁▁▁▁▁▁▁",
1129
- "████████▁▁▁▁▁▁▁▁▁▁▁▁",
1130
- "█████████▁▁▁▁▁▁▁▁▁▁▁",
1131
- "█████████▁▁▁▁▁▁▁▁▁▁▁",
1132
- "██████████▁▁▁▁▁▁▁▁▁▁",
1133
- "███████████▁▁▁▁▁▁▁▁▁",
1134
- "█████████████▁▁▁▁▁▁▁",
1135
- "██████████████▁▁▁▁▁▁",
1136
- "██████████████▁▁▁▁▁▁",
1137
- "▁██████████████▁▁▁▁▁",
1138
- "▁██████████████▁▁▁▁▁",
1139
- "▁██████████████▁▁▁▁▁",
1140
- "▁▁██████████████▁▁▁▁",
1141
- "▁▁▁██████████████▁▁▁",
1142
- "▁▁▁▁█████████████▁▁▁",
1143
- "▁▁▁▁██████████████▁▁",
1144
- "▁▁▁▁██████████████▁▁",
1145
- "▁▁▁▁▁██████████████▁",
1146
- "▁▁▁▁▁██████████████▁",
1147
- "▁▁▁▁▁██████████████▁",
1148
- "▁▁▁▁▁▁██████████████",
1149
- "▁▁▁▁▁▁██████████████",
1150
- "▁▁▁▁▁▁▁█████████████",
1151
- "▁▁▁▁▁▁▁█████████████",
1152
- "▁▁▁▁▁▁▁▁████████████",
1153
- "▁▁▁▁▁▁▁▁████████████",
1154
- "▁▁▁▁▁▁▁▁▁███████████",
1155
- "▁▁▁▁▁▁▁▁▁███████████",
1156
- "▁▁▁▁▁▁▁▁▁▁██████████",
1157
- "▁▁▁▁▁▁▁▁▁▁██████████",
1158
- "▁▁▁▁▁▁▁▁▁▁▁▁████████",
1159
- "▁▁▁▁▁▁▁▁▁▁▁▁▁███████",
1160
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁██████",
1161
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████",
1162
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████",
1163
- "█▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
1164
- "██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
1165
- "██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
1166
- "███▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
1167
- "████▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
1168
- "█████▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
1169
- "█████▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
1170
- "██████▁▁▁▁▁▁▁▁▁▁▁▁▁█",
1171
- "████████▁▁▁▁▁▁▁▁▁▁▁▁",
1172
- "█████████▁▁▁▁▁▁▁▁▁▁▁",
1173
- "█████████▁▁▁▁▁▁▁▁▁▁▁",
1174
- "█████████▁▁▁▁▁▁▁▁▁▁▁",
1175
- "█████████▁▁▁▁▁▁▁▁▁▁▁",
1176
- "███████████▁▁▁▁▁▁▁▁▁",
1177
- "████████████▁▁▁▁▁▁▁▁",
1178
- "████████████▁▁▁▁▁▁▁▁",
1179
- "██████████████▁▁▁▁▁▁",
1180
- "██████████████▁▁▁▁▁▁",
1181
- "▁██████████████▁▁▁▁▁",
1182
- "▁██████████████▁▁▁▁▁",
1183
- "▁▁▁█████████████▁▁▁▁",
1184
- "▁▁▁▁▁████████████▁▁▁",
1185
- "▁▁▁▁▁████████████▁▁▁",
1186
- "▁▁▁▁▁▁███████████▁▁▁",
1187
- "▁▁▁▁▁▁▁▁█████████▁▁▁",
1188
- "▁▁▁▁▁▁▁▁█████████▁▁▁",
1189
- "▁▁▁▁▁▁▁▁▁█████████▁▁",
1190
- "▁▁▁▁▁▁▁▁▁█████████▁▁",
1191
- "▁▁▁▁▁▁▁▁▁▁█████████▁",
1192
- "▁▁▁▁▁▁▁▁▁▁▁████████▁",
1193
- "▁▁▁▁▁▁▁▁▁▁▁████████▁",
1194
- "▁▁▁▁▁▁▁▁▁▁▁▁███████▁",
1195
- "▁▁▁▁▁▁▁▁▁▁▁▁███████▁",
1196
- "▁▁▁▁▁▁▁▁▁▁▁▁▁███████",
1197
- "▁▁▁▁▁▁▁▁▁▁▁▁▁███████",
1198
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████",
1199
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
1200
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
1201
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
1202
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
1203
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
1204
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
1205
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
1206
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
1207
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
1208
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
1209
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
1210
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1211
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1212
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1213
- "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁"
1214
- ]
1215
- };
1216
- var moon = {
1217
- interval: 80,
1218
- frames: [
1219
- "🌑 ",
1220
- "🌒 ",
1221
- "🌓 ",
1222
- "🌔 ",
1223
- "🌕 ",
1224
- "🌖 ",
1225
- "🌗 ",
1226
- "🌘 "
1227
- ]
1228
- };
1229
- var runner = {
1230
- interval: 140,
1231
- frames: [
1232
- "🚶 ",
1233
- "🏃 "
1234
- ]
1235
- };
1236
- var pong = {
1237
- interval: 80,
1238
- frames: [
1239
- "▐⠂ ▌",
1240
- "▐⠈ ▌",
1241
- "▐ ⠂ ▌",
1242
- "▐ ⠠ ▌",
1243
- "▐ ⡀ ▌",
1244
- "▐ ⠠ ▌",
1245
- "▐ ⠂ ▌",
1246
- "▐ ⠈ ▌",
1247
- "▐ ⠂ ▌",
1248
- "▐ ⠠ ▌",
1249
- "▐ ⡀ ▌",
1250
- "▐ ⠠ ▌",
1251
- "▐ ⠂ ▌",
1252
- "▐ ⠈ ▌",
1253
- "▐ ⠂▌",
1254
- "▐ ⠠▌",
1255
- "▐ ⡀▌",
1256
- "▐ ⠠ ▌",
1257
- "▐ ⠂ ▌",
1258
- "▐ ⠈ ▌",
1259
- "▐ ⠂ ▌",
1260
- "▐ ⠠ ▌",
1261
- "▐ ⡀ ▌",
1262
- "▐ ⠠ ▌",
1263
- "▐ ⠂ ▌",
1264
- "▐ ⠈ ▌",
1265
- "▐ ⠂ ▌",
1266
- "▐ ⠠ ▌",
1267
- "▐ ⡀ ▌",
1268
- "▐⠠ ▌"
1269
- ]
1270
- };
1271
- var shark = {
1272
- interval: 120,
1273
- frames: [
1274
- "▐|\\____________▌",
1275
- "▐_|\\___________▌",
1276
- "▐__|\\__________▌",
1277
- "▐___|\\_________▌",
1278
- "▐____|\\________▌",
1279
- "▐_____|\\_______▌",
1280
- "▐______|\\______▌",
1281
- "▐_______|\\_____▌",
1282
- "▐________|\\____▌",
1283
- "▐_________|\\___▌",
1284
- "▐__________|\\__▌",
1285
- "▐___________|\\_▌",
1286
- "▐____________|\\▌",
1287
- "▐____________/|▌",
1288
- "▐___________/|_▌",
1289
- "▐__________/|__▌",
1290
- "▐_________/|___▌",
1291
- "▐________/|____▌",
1292
- "▐_______/|_____▌",
1293
- "▐______/|______▌",
1294
- "▐_____/|_______▌",
1295
- "▐____/|________▌",
1296
- "▐___/|_________▌",
1297
- "▐__/|__________▌",
1298
- "▐_/|___________▌",
1299
- "▐/|____________▌"
1300
- ]
1301
- };
1302
- var dqpb = {
1303
- interval: 100,
1304
- frames: [
1305
- "d",
1306
- "q",
1307
- "p",
1308
- "b"
1309
- ]
1310
- };
1311
- var weather = {
1312
- interval: 100,
1313
- frames: [
1314
- "☀️ ",
1315
- "☀️ ",
1316
- "☀️ ",
1317
- "🌤 ",
1318
- "⛅️ ",
1319
- "🌥 ",
1320
- "☁️ ",
1321
- "🌧 ",
1322
- "🌨 ",
1323
- "🌧 ",
1324
- "🌨 ",
1325
- "🌧 ",
1326
- "🌨 ",
1327
- "⛈ ",
1328
- "🌨 ",
1329
- "🌧 ",
1330
- "🌨 ",
1331
- "☁️ ",
1332
- "🌥 ",
1333
- "⛅️ ",
1334
- "🌤 ",
1335
- "☀️ ",
1336
- "☀️ "
1337
- ]
1338
- };
1339
- var christmas = {
1340
- interval: 400,
1341
- frames: [
1342
- "🌲",
1343
- "🎄"
1344
- ]
1345
- };
1346
- var grenade = {
1347
- interval: 80,
1348
- frames: [
1349
- "، ",
1350
- "′ ",
1351
- " ´ ",
1352
- " ‾ ",
1353
- " ⸌",
1354
- " ⸊",
1355
- " |",
1356
- " ⁎",
1357
- " ⁕",
1358
- " ෴ ",
1359
- " ⁓",
1360
- " ",
1361
- " ",
1362
- " "
1363
- ]
1364
- };
1365
- var point = {
1366
- interval: 125,
1367
- frames: [
1368
- "∙∙∙",
1369
- "●∙∙",
1370
- "∙●∙",
1371
- "∙∙●",
1372
- "∙∙∙"
1373
- ]
1374
- };
1375
- var layer = {
1376
- interval: 150,
1377
- frames: [
1378
- "-",
1379
- "=",
1380
- "≡"
1381
- ]
1382
- };
1383
- var betaWave = {
1384
- interval: 80,
1385
- frames: [
1386
- "ρββββββ",
1387
- "βρβββββ",
1388
- "ββρββββ",
1389
- "βββρβββ",
1390
- "ββββρββ",
1391
- "βββββρβ",
1392
- "ββββββρ"
1393
- ]
1394
- };
1395
- var fingerDance = {
1396
- interval: 160,
1397
- frames: [
1398
- "🤘 ",
1399
- "🤟 ",
1400
- "🖖 ",
1401
- "✋ ",
1402
- "🤚 ",
1403
- "👆 "
1404
- ]
1405
- };
1406
- var fistBump = {
1407
- interval: 80,
1408
- frames: [
1409
- "🤜    🤛 ",
1410
- "🤜    🤛 ",
1411
- "🤜    🤛 ",
1412
- " 🤜  🤛  ",
1413
- "  🤜🤛   ",
1414
- " 🤜✨🤛   ",
1415
- "🤜 ✨ 🤛  "
1416
- ]
1417
- };
1418
- var soccerHeader = {
1419
- interval: 80,
1420
- frames: [
1421
- " 🧑⚽️ 🧑 ",
1422
- "🧑 ⚽️ 🧑 ",
1423
- "🧑 ⚽️ 🧑 ",
1424
- "🧑 ⚽️ 🧑 ",
1425
- "🧑 ⚽️ 🧑 ",
1426
- "🧑 ⚽️ 🧑 ",
1427
- "🧑 ⚽️🧑 ",
1428
- "🧑 ⚽️ 🧑 ",
1429
- "🧑 ⚽️ 🧑 ",
1430
- "🧑 ⚽️ 🧑 ",
1431
- "🧑 ⚽️ 🧑 ",
1432
- "🧑 ⚽️ 🧑 "
1433
- ]
1434
- };
1435
- var mindblown = {
1436
- interval: 160,
1437
- frames: [
1438
- "😐 ",
1439
- "😐 ",
1440
- "😮 ",
1441
- "😮 ",
1442
- "😦 ",
1443
- "😦 ",
1444
- "😧 ",
1445
- "😧 ",
1446
- "🤯 ",
1447
- "💥 ",
1448
- "✨ ",
1449
- "  ",
1450
- "  ",
1451
- "  "
1452
- ]
1453
- };
1454
- var speaker = {
1455
- interval: 160,
1456
- frames: [
1457
- "🔈 ",
1458
- "🔉 ",
1459
- "🔊 ",
1460
- "🔉 "
1461
- ]
1462
- };
1463
- var orangePulse = {
1464
- interval: 100,
1465
- frames: [
1466
- "🔸 ",
1467
- "🔶 ",
1468
- "🟠 ",
1469
- "🟠 ",
1470
- "🔶 "
1471
- ]
1472
- };
1473
- var bluePulse = {
1474
- interval: 100,
1475
- frames: [
1476
- "🔹 ",
1477
- "🔷 ",
1478
- "🔵 ",
1479
- "🔵 ",
1480
- "🔷 "
1481
- ]
1482
- };
1483
- var orangeBluePulse = {
1484
- interval: 100,
1485
- frames: [
1486
- "🔸 ",
1487
- "🔶 ",
1488
- "🟠 ",
1489
- "🟠 ",
1490
- "🔶 ",
1491
- "🔹 ",
1492
- "🔷 ",
1493
- "🔵 ",
1494
- "🔵 ",
1495
- "🔷 "
1496
- ]
1497
- };
1498
- var timeTravel = {
1499
- interval: 100,
1500
- frames: [
1501
- "🕛 ",
1502
- "🕚 ",
1503
- "🕙 ",
1504
- "🕘 ",
1505
- "🕗 ",
1506
- "🕖 ",
1507
- "🕕 ",
1508
- "🕔 ",
1509
- "🕓 ",
1510
- "🕒 ",
1511
- "🕑 ",
1512
- "🕐 "
1513
- ]
1514
- };
1515
- var aesthetic = {
1516
- interval: 80,
1517
- frames: [
1518
- "▰▱▱▱▱▱▱",
1519
- "▰▰▱▱▱▱▱",
1520
- "▰▰▰▱▱▱▱",
1521
- "▰▰▰▰▱▱▱",
1522
- "▰▰▰▰▰▱▱",
1523
- "▰▰▰▰▰▰▱",
1524
- "▰▰▰▰▰▰▰",
1525
- "▰▱▱▱▱▱▱"
1526
- ]
1527
- };
1528
- var dwarfFortress = {
1529
- interval: 80,
1530
- frames: [
1531
- " ██████£££ ",
1532
- "☺██████£££ ",
1533
- "☺██████£££ ",
1534
- "☺▓█████£££ ",
1535
- "☺▓█████£££ ",
1536
- "☺▒█████£££ ",
1537
- "☺▒█████£££ ",
1538
- "☺░█████£££ ",
1539
- "☺░█████£££ ",
1540
- "☺ █████£££ ",
1541
- " ☺█████£££ ",
1542
- " ☺█████£££ ",
1543
- " ☺▓████£££ ",
1544
- " ☺▓████£££ ",
1545
- " ☺▒████£££ ",
1546
- " ☺▒████£££ ",
1547
- " ☺░████£££ ",
1548
- " ☺░████£££ ",
1549
- " ☺ ████£££ ",
1550
- " ☺████£££ ",
1551
- " ☺████£££ ",
1552
- " ☺▓███£££ ",
1553
- " ☺▓███£££ ",
1554
- " ☺▒███£££ ",
1555
- " ☺▒███£££ ",
1556
- " ☺░███£££ ",
1557
- " ☺░███£££ ",
1558
- " ☺ ███£££ ",
1559
- " ☺███£££ ",
1560
- " ☺███£££ ",
1561
- " ☺▓██£££ ",
1562
- " ☺▓██£££ ",
1563
- " ☺▒██£££ ",
1564
- " ☺▒██£££ ",
1565
- " ☺░██£££ ",
1566
- " ☺░██£££ ",
1567
- " ☺ ██£££ ",
1568
- " ☺██£££ ",
1569
- " ☺██£££ ",
1570
- " ☺▓█£££ ",
1571
- " ☺▓█£££ ",
1572
- " ☺▒█£££ ",
1573
- " ☺▒█£££ ",
1574
- " ☺░█£££ ",
1575
- " ☺░█£££ ",
1576
- " ☺ █£££ ",
1577
- " ☺█£££ ",
1578
- " ☺█£££ ",
1579
- " ☺▓£££ ",
1580
- " ☺▓£££ ",
1581
- " ☺▒£££ ",
1582
- " ☺▒£££ ",
1583
- " ☺░£££ ",
1584
- " ☺░£££ ",
1585
- " ☺ £££ ",
1586
- " ☺£££ ",
1587
- " ☺£££ ",
1588
- " ☺▓££ ",
1589
- " ☺▓££ ",
1590
- " ☺▒££ ",
1591
- " ☺▒££ ",
1592
- " ☺░££ ",
1593
- " ☺░££ ",
1594
- " ☺ ££ ",
1595
- " ☺££ ",
1596
- " ☺££ ",
1597
- " ☺▓£ ",
1598
- " ☺▓£ ",
1599
- " ☺▒£ ",
1600
- " ☺▒£ ",
1601
- " ☺░£ ",
1602
- " ☺░£ ",
1603
- " ☺ £ ",
1604
- " ☺£ ",
1605
- " ☺£ ",
1606
- " ☺▓ ",
1607
- " ☺▓ ",
1608
- " ☺▒ ",
1609
- " ☺▒ ",
1610
- " ☺░ ",
1611
- " ☺░ ",
1612
- " ☺ ",
1613
- " ☺ &",
1614
- " ☺ ☼&",
1615
- " ☺ ☼ &",
1616
- " ☺☼ &",
1617
- " ☺☼ & ",
1618
- " ‼ & ",
1619
- " ☺ & ",
1620
- " ‼ & ",
1621
- " ☺ & ",
1622
- " ‼ & ",
1623
- " ☺ & ",
1624
- "‼ & ",
1625
- " & ",
1626
- " & ",
1627
- " & ░ ",
1628
- " & ▒ ",
1629
- " & ▓ ",
1630
- " & £ ",
1631
- " & ░£ ",
1632
- " & ▒£ ",
1633
- " & ▓£ ",
1634
- " & ££ ",
1635
- " & ░££ ",
1636
- " & ▒££ ",
1637
- "& ▓££ ",
1638
- "& £££ ",
1639
- " ░£££ ",
1640
- " ▒£££ ",
1641
- " ▓£££ ",
1642
- " █£££ ",
1643
- " ░█£££ ",
1644
- " ▒█£££ ",
1645
- " ▓█£££ ",
1646
- " ██£££ ",
1647
- " ░██£££ ",
1648
- " ▒██£££ ",
1649
- " ▓██£££ ",
1650
- " ███£££ ",
1651
- " ░███£££ ",
1652
- " ▒███£££ ",
1653
- " ▓███£££ ",
1654
- " ████£££ ",
1655
- " ░████£££ ",
1656
- " ▒████£££ ",
1657
- " ▓████£££ ",
1658
- " █████£££ ",
1659
- " ░█████£££ ",
1660
- " ▒█████£££ ",
1661
- " ▓█████£££ ",
1662
- " ██████£££ ",
1663
- " ██████£££ "
1664
- ]
1665
- };
1666
- const spinners = {
1667
- dots: dots,
1668
- dots2: dots2,
1669
- dots3: dots3,
1670
- dots4: dots4,
1671
- dots5: dots5,
1672
- dots6: dots6,
1673
- dots7: dots7,
1674
- dots8: dots8,
1675
- dots9: dots9,
1676
- dots10: dots10,
1677
- dots11: dots11,
1678
- dots12: dots12,
1679
- dots13: dots13,
1680
- dots14: dots14,
1681
- dots8Bit: dots8Bit,
1682
- dotsCircle: dotsCircle,
1683
- sand: sand,
1684
- line: line,
1685
- line2: line2,
1686
- rollingLine: rollingLine,
1687
- pipe: pipe,
1688
- simpleDots: simpleDots,
1689
- simpleDotsScrolling: simpleDotsScrolling,
1690
- star: star,
1691
- star2: star2,
1692
- flip: flip,
1693
- hamburger: hamburger,
1694
- growVertical: growVertical,
1695
- growHorizontal: growHorizontal,
1696
- balloon: balloon,
1697
- balloon2: balloon2,
1698
- noise: noise,
1699
- bounce: bounce,
1700
- boxBounce: boxBounce,
1701
- boxBounce2: boxBounce2,
1702
- triangle: triangle,
1703
- binary: binary,
1704
- arc: arc,
1705
- circle: circle,
1706
- squareCorners: squareCorners,
1707
- circleQuarters: circleQuarters,
1708
- circleHalves: circleHalves,
1709
- squish: squish,
1710
- toggle: toggle,
1711
- toggle2: toggle2,
1712
- toggle3: toggle3,
1713
- toggle4: toggle4,
1714
- toggle5: toggle5,
1715
- toggle6: toggle6,
1716
- toggle7: toggle7,
1717
- toggle8: toggle8,
1718
- toggle9: toggle9,
1719
- toggle10: toggle10,
1720
- toggle11: toggle11,
1721
- toggle12: toggle12,
1722
- toggle13: toggle13,
1723
- arrow: arrow,
1724
- arrow2: arrow2,
1725
- arrow3: arrow3,
1726
- bouncingBar: bouncingBar,
1727
- bouncingBall: bouncingBall,
1728
- smiley: smiley,
1729
- monkey: monkey,
1730
- hearts: hearts,
1731
- clock: clock,
1732
- earth: earth,
1733
- material: material,
1734
- moon: moon,
1735
- runner: runner,
1736
- pong: pong,
1737
- shark: shark,
1738
- dqpb: dqpb,
1739
- weather: weather,
1740
- christmas: christmas,
1741
- grenade: grenade,
1742
- point: point,
1743
- layer: layer,
1744
- betaWave: betaWave,
1745
- fingerDance: fingerDance,
1746
- fistBump: fistBump,
1747
- soccerHeader: soccerHeader,
1748
- mindblown: mindblown,
1749
- speaker: speaker,
1750
- orangePulse: orangePulse,
1751
- bluePulse: bluePulse,
1752
- orangeBluePulse: orangeBluePulse,
1753
- timeTravel: timeTravel,
1754
- aesthetic: aesthetic,
1755
- dwarfFortress: dwarfFortress
1756
- };
1757
-
1758
- const DEFAULT_ICONS = {
1759
- error: "✖",
1760
- info: "ℹ",
1761
- success: "✓",
1762
- warning: "⚠"
1763
- };
1764
- const applyStyle = (text, style) => {
1765
- if (!style) {
1766
- return text;
1767
- }
1768
- let styled = colorize;
1769
- if (style.bold)
1770
- styled = styled.bold;
1771
- if (style.dim)
1772
- styled = styled.dim;
1773
- if (style.italic)
1774
- styled = styled.italic;
1775
- if (style.underline)
1776
- styled = styled.underline;
1777
- if (style.strikethrough)
1778
- styled = styled.strikethrough;
1779
- if (style.inverse)
1780
- styled = styled.inverse;
1781
- if (style.overline)
1782
- styled = styled.overline;
1783
- if (style.color) {
1784
- styled = styled[style.color];
1785
- } else if (style.hex) {
1786
- styled = styled.hex(style.hex);
1787
- } else if (style.rgb) {
1788
- styled = styled.rgb(...style.rgb);
1789
- }
1790
- if (style.bgColor) {
1791
- styled = styled[style.bgColor];
1792
- } else if (style.bgHex) {
1793
- styled = styled.bgHex(style.bgHex);
1794
- } else if (style.bgRgb) {
1795
- styled = styled.bgRgb(...style.bgRgb);
1796
- }
1797
- return styled(text);
1798
- };
1799
- class Spinner {
1800
- #frame = 0;
1801
- #frameInterval;
1802
- #isActive = false;
1803
- #prefixText = "";
1804
- #text = "";
1805
- #startTime = 0;
1806
- #interactiveManager;
1807
- #multiSpinner;
1808
- #finalOutput = "";
1809
- #spinnerName;
1810
- #verbose;
1811
- #style;
1812
- #icons;
1813
- /**
1814
- * Creates a new Spinner instance.
1815
- * @param options Configuration options for the spinner
1816
- * @param interactiveManager Optional interactive manager for terminal control
1817
- */
1818
- constructor(options = {}, interactiveManager) {
1819
- this.#spinnerName = options.name ?? "dots";
1820
- this.#verbose = options.verbose !== false;
1821
- this.#style = options.style;
1822
- this.#prefixText = options.prefixText ?? "";
1823
- this.#interactiveManager = interactiveManager;
1824
- this.#icons = { ...DEFAULT_ICONS, ...options.icons };
1825
- }
1826
- /**
1827
- * Current elapsed time in milliseconds.
1828
- */
1829
- get elapsedTime() {
1830
- return Date.now() - this.#startTime;
1831
- }
1832
- /**
1833
- * Get or set the spinner text.
1834
- */
1835
- get getText() {
1836
- return this.#text;
1837
- }
1838
- set text(value) {
1839
- this.#text = value;
1840
- if (this.#isActive) {
1841
- if (this.#multiSpinner) {
1842
- this.#multiSpinner.renderAll();
1843
- } else if (this.#interactiveManager) {
1844
- this.#render();
1845
- }
1846
- }
1847
- }
1848
- /**
1849
- * Get or set the prefix text.
1850
- */
1851
- get getPrefixText() {
1852
- return this.#prefixText;
1853
- }
1854
- set prefixText(value) {
1855
- this.#prefixText = value;
1856
- if (this.#isActive) {
1857
- if (this.#multiSpinner) {
1858
- this.#multiSpinner.renderAll();
1859
- } else if (this.#interactiveManager) {
1860
- this.#render();
1861
- }
1862
- }
1863
- }
1864
- /**
1865
- * Whether the spinner is currently active.
1866
- */
1867
- get isRunning() {
1868
- return this.#isActive;
1869
- }
1870
- /**
1871
- * Set the interactive manager for interactive mode.
1872
- * @internal
1873
- */
1874
- setInteractiveManager(manager) {
1875
- this.#interactiveManager = manager;
1876
- }
1877
- /**
1878
- * Set the multi spinner reference.
1879
- * @internal
1880
- */
1881
- setMultiSpinner(multiSpinner) {
1882
- this.#multiSpinner = multiSpinner;
1883
- }
1884
- /**
1885
- * Start the spinner with optional text.
1886
- * @param text Optional text to display
1887
- * @param options
1888
- * @param options.prefixText Optional prefix text to display
1889
- * @returns The spinner instance for chaining
1890
- */
1891
- start(text, options) {
1892
- if (this.#isActive) {
1893
- return this;
1894
- }
1895
- if (!this.#verbose) {
1896
- return this;
1897
- }
1898
- this.#isActive = true;
1899
- this.#startTime = Date.now();
1900
- this.#frame = 0;
1901
- if (text) {
1902
- this.#text = text;
1903
- }
1904
- if (options?.prefixText) {
1905
- this.#prefixText = options.prefixText;
1906
- }
1907
- const manager = this.#multiSpinner || this.#interactiveManager;
1908
- if (manager) {
1909
- if (this.#multiSpinner) {
1910
- manager.renderAll();
1911
- } else {
1912
- manager.hook();
1913
- this.#render();
1914
- }
1915
- }
1916
- const spinner = spinners[this.#spinnerName];
1917
- this.#frameInterval = setInterval(() => {
1918
- if (this.#isActive) {
1919
- this.#frame = (this.#frame + 1) % spinner.frames.length;
1920
- if (this.#multiSpinner) {
1921
- this.#multiSpinner.renderAll();
1922
- } else if (this.#interactiveManager) {
1923
- this.#render();
1924
- }
1925
- }
1926
- }, spinner.interval);
1927
- return this;
1928
- }
1929
- /**
1930
- * Stop the spinner with a success message.
1931
- * @param text Optional success text
1932
- */
1933
- succeed(text) {
1934
- this.#stop("success", text);
1935
- }
1936
- /**
1937
- * Stop the spinner with a failure message.
1938
- * @param text Optional failure text
1939
- */
1940
- failed(text) {
1941
- this.#stop("error", text);
1942
- }
1943
- /**
1944
- * Stop the spinner with a warning message.
1945
- * @param text Optional warning text
1946
- */
1947
- warn(text) {
1948
- this.#stop("warning", text);
1949
- }
1950
- /**
1951
- * Stop the spinner with an info message.
1952
- * @param text Optional info text
1953
- */
1954
- info(text) {
1955
- this.#stop("info", text);
1956
- }
1957
- /**
1958
- * Pause the spinner without stopping it.
1959
- */
1960
- pause() {
1961
- if (this.#frameInterval) {
1962
- clearInterval(this.#frameInterval);
1963
- this.#frameInterval = void 0;
1964
- }
1965
- }
1966
- /**
1967
- * Resume the spinner if it was paused.
1968
- */
1969
- resume() {
1970
- if (!this.#isActive) {
1971
- return;
1972
- }
1973
- if (this.#frameInterval) {
1974
- clearInterval(this.#frameInterval);
1975
- }
1976
- const spinner = spinners[this.#spinnerName];
1977
- this.#frameInterval = setInterval(() => {
1978
- if (this.#isActive) {
1979
- this.#frame = (this.#frame + 1) % spinner.frames.length;
1980
- if (this.#multiSpinner) {
1981
- this.#multiSpinner.renderAll();
1982
- } else if (this.#interactiveManager) {
1983
- this.#render();
1984
- }
1985
- }
1986
- }, spinner.interval);
1987
- }
1988
- /**
1989
- * Get current frame output.
1990
- * @internal
1991
- */
1992
- getFrameOutput() {
1993
- if (!this.#isActive && this.#finalOutput) {
1994
- return this.#finalOutput;
1995
- }
1996
- const spinner = spinners[this.#spinnerName];
1997
- const frame = spinner.frames[this.#frame];
1998
- let output = applyStyle(frame, this.#style);
1999
- if (this.#prefixText) {
2000
- output = `${this.#prefixText} ${output}`;
2001
- }
2002
- if (this.#text) {
2003
- output = `${output} ${this.#text}`;
2004
- }
2005
- return output;
2006
- }
2007
- /**
2008
- * Render the current spinner frame.
2009
- */
2010
- #render() {
2011
- if (this.#interactiveManager) {
2012
- this.#interactiveManager.update("stdout", [this.getFrameOutput()]);
2013
- }
2014
- }
2015
- /**
2016
- * Stop the spinner with a given status.
2017
- * @param status The status type (success, error, warning, info)
2018
- * @param text Optional text to display
2019
- */
2020
- #stop(status, text) {
2021
- if (!this.#isActive) {
2022
- return;
2023
- }
2024
- if (this.#frameInterval) {
2025
- clearInterval(this.#frameInterval);
2026
- this.#frameInterval = void 0;
2027
- }
2028
- this.#isActive = false;
2029
- if (!this.#verbose) {
2030
- return;
2031
- }
2032
- let output = "";
2033
- const icon = this.#icons[status];
2034
- if (icon) {
2035
- output = applyStyle(icon, this.#style);
2036
- }
2037
- if (this.#prefixText) {
2038
- output = `${this.#prefixText} ${output}`;
2039
- }
2040
- if (text) {
2041
- output = `${output} ${text}`;
2042
- }
2043
- this.#finalOutput = output;
2044
- const manager = this.#multiSpinner || this.#interactiveManager;
2045
- if (manager) {
2046
- if (this.#multiSpinner) {
2047
- this.#multiSpinner.renderAll();
2048
- } else if (this.#interactiveManager) {
2049
- this.#interactiveManager.update("stdout", [output]);
2050
- this.#interactiveManager.unhook(false);
2051
- }
2052
- }
2053
- }
2054
- }
2055
- class MultiSpinner {
2056
- #spinners = /* @__PURE__ */ new Map();
2057
- #nextSpinnerId = 0;
2058
- #interactiveManager;
2059
- #isActive = false;
2060
- #options;
2061
- constructor(options = {}, interactiveManager) {
2062
- this.#options = options;
2063
- this.#interactiveManager = interactiveManager;
2064
- }
2065
- /**
2066
- * Set the interactive manager for interactive mode.
2067
- * @internal
2068
- */
2069
- setInteractiveManager(manager) {
2070
- this.#interactiveManager = manager;
2071
- }
2072
- /**
2073
- * Create a new spinner instance.
2074
- * @param text Initial text for the spinner
2075
- * @param options
2076
- * @param options.prefixText Optional prefix text to display
2077
- * @param options.style Optional style for the spinner
2078
- * @param options.verbose Whether to output spinner (default: true)
2079
- * @returns A new Spinner instance
2080
- */
2081
- create(text, options = {}) {
2082
- const id = `spinner_${this.#nextSpinnerId++}`;
2083
- const spinner = new Spinner({ ...this.#options, ...options });
2084
- spinner.setMultiSpinner(this);
2085
- this.#spinners.set(id, spinner);
2086
- if (text) {
2087
- spinner.text = text;
2088
- }
2089
- return spinner;
2090
- }
2091
- /**
2092
- * Remove a spinner from the multi-spinner manager.
2093
- * @param spinner The spinner to remove
2094
- * @returns True if the spinner was removed, false otherwise
2095
- */
2096
- remove(spinner) {
2097
- for (const [id, s] of this.#spinners.entries()) {
2098
- if (s === spinner) {
2099
- this.#spinners.delete(id);
2100
- this.renderAll();
2101
- return true;
2102
- }
2103
- }
2104
- return false;
2105
- }
2106
- /**
2107
- * Stop all spinners.
2108
- */
2109
- stop() {
2110
- for (const spinner of this.#spinners.values()) {
2111
- spinner.succeed();
2112
- }
2113
- this.#spinners.clear();
2114
- this.#isActive = false;
2115
- if (this.#interactiveManager) {
2116
- this.#interactiveManager.unhook(false);
2117
- }
2118
- }
2119
- /**
2120
- * Clear all spinners without stopping them.
2121
- */
2122
- clear() {
2123
- for (const spinner of this.#spinners.values()) {
2124
- spinner.succeed();
2125
- }
2126
- this.#spinners.clear();
2127
- }
2128
- /**
2129
- * Render all spinners.
2130
- * @internal
2131
- */
2132
- renderAll() {
2133
- if (!this.#interactiveManager) {
2134
- return;
2135
- }
2136
- if (!this.#isActive) {
2137
- this.#isActive = true;
2138
- this.#interactiveManager.hook();
2139
- }
2140
- const lines = [];
2141
- for (const spinner of this.#spinners.values()) {
2142
- lines.push(spinner.getFrameOutput());
2143
- }
2144
- if (lines.length > 0) {
2145
- this.#interactiveManager.update("stdout", lines);
2146
- }
2147
- }
2148
- }
2149
-
2150
- export { MultiSpinner, Spinner };