spinners/utils/
spinners_data.rs

1use crate::utils::spinner_data::SpinnerData;
2use lazy_static::lazy_static;
3use maplit::{self, hashmap};
4use std::collections::HashMap;
5lazy_static! {
6    pub static ref SPINNERS: HashMap<String, SpinnerData> = {
7        hashmap! {
8              "Dots".into() => SpinnerData {frames: vec![
9          "⠋",
10          "⠙",
11          "⠹",
12          "⠸",
13          "⠼",
14          "⠴",
15          "⠦",
16          "⠧",
17          "⠇",
18          "⠏"
19        ], interval: 80},
20        "Dots2".into() => SpinnerData {frames: vec![
21          "⣾",
22          "⣽",
23          "⣻",
24          "⢿",
25          "⡿",
26          "⣟",
27          "⣯",
28          "⣷"
29        ], interval: 80},
30        "Dots3".into() => SpinnerData {frames: vec![
31          "⠋",
32          "⠙",
33          "⠚",
34          "⠞",
35          "⠖",
36          "⠦",
37          "⠴",
38          "⠲",
39          "⠳",
40          "⠓"
41        ], interval: 80},
42        "Dots4".into() => SpinnerData {frames: vec![
43          "⠄",
44          "⠆",
45          "⠇",
46          "⠋",
47          "⠙",
48          "⠸",
49          "⠰",
50          "⠠",
51          "⠰",
52          "⠸",
53          "⠙",
54          "⠋",
55          "⠇",
56          "⠆"
57        ], interval: 80},
58        "Dots5".into() => SpinnerData {frames: vec![
59          "⠋",
60          "⠙",
61          "⠚",
62          "⠒",
63          "⠂",
64          "⠂",
65          "⠒",
66          "⠲",
67          "⠴",
68          "⠦",
69          "⠖",
70          "⠒",
71          "⠐",
72          "⠐",
73          "⠒",
74          "⠓",
75          "⠋"
76        ], interval: 80},
77        "Dots6".into() => SpinnerData {frames: vec![
78          "⠁",
79          "⠉",
80          "⠙",
81          "⠚",
82          "⠒",
83          "⠂",
84          "⠂",
85          "⠒",
86          "⠲",
87          "⠴",
88          "⠤",
89          "⠄",
90          "⠄",
91          "⠤",
92          "⠴",
93          "⠲",
94          "⠒",
95          "⠂",
96          "⠂",
97          "⠒",
98          "⠚",
99          "⠙",
100          "⠉",
101          "⠁"
102        ], interval: 80},
103        "Dots7".into() => SpinnerData {frames: vec![
104          "⠈",
105          "⠉",
106          "⠋",
107          "⠓",
108          "⠒",
109          "⠐",
110          "⠐",
111          "⠒",
112          "⠖",
113          "⠦",
114          "⠤",
115          "⠠",
116          "⠠",
117          "⠤",
118          "⠦",
119          "⠖",
120          "⠒",
121          "⠐",
122          "⠐",
123          "⠒",
124          "⠓",
125          "⠋",
126          "⠉",
127          "⠈"
128        ], interval: 80},
129        "Dots8".into() => SpinnerData {frames: vec![
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        ], interval: 80},
160        "Dots9".into() => SpinnerData {frames: vec![
161          "⢹",
162          "⢺",
163          "⢼",
164          "⣸",
165          "⣇",
166          "⡧",
167          "⡗",
168          "⡏"
169        ], interval: 80},
170        "Dots10".into() => SpinnerData {frames: vec![
171          "⢄",
172          "⢂",
173          "⢁",
174          "⡁",
175          "⡈",
176          "⡐",
177          "⡠"
178        ], interval: 80},
179        "Dots11".into() => SpinnerData {frames: vec![
180          "⠁",
181          "⠂",
182          "⠄",
183          "⡀",
184          "⢀",
185          "⠠",
186          "⠐",
187          "⠈"
188        ], interval: 100},
189        "Dots12".into() => SpinnerData {frames: vec![
190          "⢀⠀",
191          "⡀⠀",
192          "⠄⠀",
193          "⢂⠀",
194          "⡂⠀",
195          "⠅⠀",
196          "⢃⠀",
197          "⡃⠀",
198          "⠍⠀",
199          "⢋⠀",
200          "⡋⠀",
201          "⠍⠁",
202          "⢋⠁",
203          "⡋⠁",
204          "⠍⠉",
205          "⠋⠉",
206          "⠋⠉",
207          "⠉⠙",
208          "⠉⠙",
209          "⠉⠩",
210          "⠈⢙",
211          "⠈⡙",
212          "⢈⠩",
213          "⡀⢙",
214          "⠄⡙",
215          "⢂⠩",
216          "⡂⢘",
217          "⠅⡘",
218          "⢃⠨",
219          "⡃⢐",
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        ], interval: 80},
247        "Dots8Bit".into() => SpinnerData {frames: vec![
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          "⡎",
279          "⡏",
280          "⠐",
281          "⠑",
282          "⠒",
283          "⠓",
284          "⠔",
285          "⠕",
286          "⠖",
287          "⠗",
288          "⡐",
289          "⡑",
290          "⡒",
291          "⡓",
292          "⡔",
293          "⡕",
294          "⡖",
295          "⡗",
296          "⠘",
297          "⠙",
298          "⠚",
299          "⠛",
300          "⠜",
301          "⠝",
302          "⠞",
303          "⠟",
304          "⡘",
305          "⡙",
306          "⡚",
307          "⡛",
308          "⡜",
309          "⡝",
310          "⡞",
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        ], interval: 80},
505        "Line".into() => SpinnerData {frames: vec![
506          "-",
507          "\\",
508          "|",
509          "/"
510        ], interval: 130},
511        "Line2".into() => SpinnerData {frames: vec![
512          "⠂",
513          "-",
514          "–",
515          "—",
516          "–",
517          "-"
518        ], interval: 100},
519        "Pipe".into() => SpinnerData {frames: vec![
520          "┤",
521          "┘",
522          "┴",
523          "└",
524          "├",
525          "┌",
526          "┬",
527          "┐"
528        ], interval: 100},
529        "SimpleDots".into() => SpinnerData {frames: vec![
530          ".  ",
531          ".. ",
532          "...",
533          "   "
534        ], interval: 400},
535        "SimpleDotsScrolling".into() => SpinnerData {frames: vec![
536          ".  ",
537          ".. ",
538          "...",
539          " ..",
540          "  .",
541          "   "
542        ], interval: 200},
543        "Star".into() => SpinnerData {frames: vec![
544          "✶",
545          "✸",
546          "✹",
547          "✺",
548          "✹",
549          "✷"
550        ], interval: 70},
551        "Star2".into() => SpinnerData {frames: vec![
552          "+",
553          "x",
554          "*"
555        ], interval: 80},
556        "Flip".into() => SpinnerData {frames: vec![
557          "_",
558          "_",
559          "_",
560          "-",
561          "`",
562          "`",
563          "'",
564          "´",
565          "-",
566          "_",
567          "_",
568          "_"
569        ], interval: 70},
570        "Hamburger".into() => SpinnerData {frames: vec![
571          "☱",
572          "☲",
573          "☴"
574        ], interval: 100},
575        "GrowVertical".into() => SpinnerData {frames: vec![
576          "▁",
577          "▃",
578          "▄",
579          "▅",
580          "▆",
581          "▇",
582          "▆",
583          "▅",
584          "▄",
585          "▃"
586        ], interval: 120},
587        "GrowHorizontal".into() => SpinnerData {frames: vec![
588          "▏",
589          "▎",
590          "▍",
591          "▌",
592          "▋",
593          "▊",
594          "▉",
595          "▊",
596          "▋",
597          "▌",
598          "▍",
599          "▎"
600        ], interval: 120},
601        "Balloon".into() => SpinnerData {frames: vec![
602          " ",
603          ".",
604          "o",
605          "O",
606          "@",
607          "*",
608          " "
609        ], interval: 140},
610        "Balloon2".into() => SpinnerData {frames: vec![
611          ".",
612          "o",
613          "O",
614          "°",
615          "O",
616          "o",
617          "."
618        ], interval: 120},
619        "Noise".into() => SpinnerData {frames: vec![
620          "▓",
621          "▒",
622          "░"
623        ], interval: 100},
624        "Bounce".into() => SpinnerData {frames: vec![
625          "⠁",
626          "⠂",
627          "⠄",
628          "⠂"
629        ], interval: 120},
630        "BoxBounce".into() => SpinnerData {frames: vec![
631          "▖",
632          "▘",
633          "▝",
634          "▗"
635        ], interval: 120},
636        "BoxBounce2".into() => SpinnerData {frames: vec![
637          "▌",
638          "▀",
639          "▐",
640          "▄"
641        ], interval: 100},
642        "Triangle".into() => SpinnerData {frames: vec![
643          "◢",
644          "◣",
645          "◤",
646          "◥"
647        ], interval: 50},
648        "Arc".into() => SpinnerData {frames: vec![
649          "◜",
650          "◠",
651          "◝",
652          "◞",
653          "◡",
654          "◟"
655        ], interval: 100},
656        "Circle".into() => SpinnerData {frames: vec![
657          "◡",
658          "⊙",
659          "◠"
660        ], interval: 120},
661        "SquareCorners".into() => SpinnerData {frames: vec![
662          "◰",
663          "◳",
664          "◲",
665          "◱"
666        ], interval: 180},
667        "CircleQuarters".into() => SpinnerData {frames: vec![
668          "◴",
669          "◷",
670          "◶",
671          "◵"
672        ], interval: 120},
673        "CircleHalves".into() => SpinnerData {frames: vec![
674          "◐",
675          "◓",
676          "◑",
677          "◒"
678        ], interval: 50},
679        "Squish".into() => SpinnerData {frames: vec![
680          "╫",
681          "╪"
682        ], interval: 100},
683        "Toggle".into() => SpinnerData {frames: vec![
684          "⊶",
685          "⊷"
686        ], interval: 250},
687        "Toggle2".into() => SpinnerData {frames: vec![
688          "▫",
689          "▪"
690        ], interval: 80},
691        "Toggle3".into() => SpinnerData {frames: vec![
692          "□",
693          "■"
694        ], interval: 120},
695        "Toggle4".into() => SpinnerData {frames: vec![
696          "■",
697          "□",
698          "▪",
699          "▫"
700        ], interval: 100},
701        "Toggle5".into() => SpinnerData {frames: vec![
702          "▮",
703          "▯"
704        ], interval: 100},
705        "Toggle6".into() => SpinnerData {frames: vec![
706          "ဝ",
707          "၀"
708        ], interval: 300},
709        "Toggle7".into() => SpinnerData {frames: vec![
710          "⦾",
711          "⦿"
712        ], interval: 80},
713        "Toggle8".into() => SpinnerData {frames: vec![
714          "◍",
715          "◌"
716        ], interval: 100},
717        "Toggle9".into() => SpinnerData {frames: vec![
718          "◉",
719          "◎"
720        ], interval: 100},
721        "Toggle10".into() => SpinnerData {frames: vec![
722          "㊂",
723          "㊀",
724          "㊁"
725        ], interval: 100},
726        "Toggle11".into() => SpinnerData {frames: vec![
727          "⧇",
728          "⧆"
729        ], interval: 50},
730        "Toggle12".into() => SpinnerData {frames: vec![
731          "☗",
732          "☖"
733        ], interval: 120},
734        "Toggle13".into() => SpinnerData {frames: vec![
735          "=",
736          "*",
737          "-"
738        ], interval: 80},
739        "Arrow".into() => SpinnerData {frames: vec![
740          "←",
741          "↖",
742          "↑",
743          "↗",
744          "→",
745          "↘",
746          "↓",
747          "↙"
748        ], interval: 100},
749        "Arrow2".into() => SpinnerData {frames: vec![
750          "⬆️ ",
751          "↗️ ",
752          "➡️ ",
753          "↘️ ",
754          "⬇️ ",
755          "↙️ ",
756          "⬅️ ",
757          "↖️ "
758        ], interval: 80},
759        "Arrow3".into() => SpinnerData {frames: vec![
760          "▹▹▹▹▹",
761          "▸▹▹▹▹",
762          "▹▸▹▹▹",
763          "▹▹▸▹▹",
764          "▹▹▹▸▹",
765          "▹▹▹▹▸"
766        ], interval: 120},
767        "BouncingBar".into() => SpinnerData {frames: vec![
768          "[    ]",
769          "[=   ]",
770          "[==  ]",
771          "[=== ]",
772          "[ ===]",
773          "[  ==]",
774          "[   =]",
775          "[    ]",
776          "[   =]",
777          "[  ==]",
778          "[ ===]",
779          "[====]",
780          "[=== ]",
781          "[==  ]",
782          "[=   ]"
783        ], interval: 80},
784        "BouncingBall".into() => SpinnerData {frames: vec![
785          "( ●    )",
786          "(  ●   )",
787          "(   ●  )",
788          "(    ● )",
789          "(     ●)",
790          "(    ● )",
791          "(   ●  )",
792          "(  ●   )",
793          "( ●    )",
794          "(●     )"
795        ], interval: 80},
796        "Smiley".into() => SpinnerData {frames: vec![
797          "😄 ",
798          "😝 "
799        ], interval: 200},
800        "Monkey".into() => SpinnerData {frames: vec![
801          "🙈 ",
802          "🙈 ",
803          "🙉 ",
804          "🙊 "
805        ], interval: 300},
806        "Hearts".into() => SpinnerData {frames: vec![
807          "💛 ",
808          "💙 ",
809          "💜 ",
810          "💚 ",
811          "❤️ "
812        ], interval: 100},
813        "Clock".into() => SpinnerData {frames: vec![
814          "🕛 ",
815          "🕐 ",
816          "🕑 ",
817          "🕒 ",
818          "🕓 ",
819          "🕔 ",
820          "🕕 ",
821          "🕖 ",
822          "🕗 ",
823          "🕘 ",
824          "🕙 ",
825          "🕚 "
826        ], interval: 100},
827        "Earth".into() => SpinnerData {frames: vec![
828          "🌍 ",
829          "🌎 ",
830          "🌏 "
831        ], interval: 180},
832        "Material".into() => SpinnerData {frames: vec![
833          "█▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
834          "██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
835          "███▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
836          "████▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
837          "██████▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
838          "██████▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
839          "███████▁▁▁▁▁▁▁▁▁▁▁▁▁",
840          "████████▁▁▁▁▁▁▁▁▁▁▁▁",
841          "█████████▁▁▁▁▁▁▁▁▁▁▁",
842          "█████████▁▁▁▁▁▁▁▁▁▁▁",
843          "██████████▁▁▁▁▁▁▁▁▁▁",
844          "███████████▁▁▁▁▁▁▁▁▁",
845          "█████████████▁▁▁▁▁▁▁",
846          "██████████████▁▁▁▁▁▁",
847          "██████████████▁▁▁▁▁▁",
848          "▁██████████████▁▁▁▁▁",
849          "▁██████████████▁▁▁▁▁",
850          "▁██████████████▁▁▁▁▁",
851          "▁▁██████████████▁▁▁▁",
852          "▁▁▁██████████████▁▁▁",
853          "▁▁▁▁█████████████▁▁▁",
854          "▁▁▁▁██████████████▁▁",
855          "▁▁▁▁██████████████▁▁",
856          "▁▁▁▁▁██████████████▁",
857          "▁▁▁▁▁██████████████▁",
858          "▁▁▁▁▁██████████████▁",
859          "▁▁▁▁▁▁██████████████",
860          "▁▁▁▁▁▁██████████████",
861          "▁▁▁▁▁▁▁█████████████",
862          "▁▁▁▁▁▁▁█████████████",
863          "▁▁▁▁▁▁▁▁████████████",
864          "▁▁▁▁▁▁▁▁████████████",
865          "▁▁▁▁▁▁▁▁▁███████████",
866          "▁▁▁▁▁▁▁▁▁███████████",
867          "▁▁▁▁▁▁▁▁▁▁██████████",
868          "▁▁▁▁▁▁▁▁▁▁██████████",
869          "▁▁▁▁▁▁▁▁▁▁▁▁████████",
870          "▁▁▁▁▁▁▁▁▁▁▁▁▁███████",
871          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁██████",
872          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████",
873          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████",
874          "█▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
875          "██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
876          "██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
877          "███▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
878          "████▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
879          "█████▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
880          "█████▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
881          "██████▁▁▁▁▁▁▁▁▁▁▁▁▁█",
882          "████████▁▁▁▁▁▁▁▁▁▁▁▁",
883          "█████████▁▁▁▁▁▁▁▁▁▁▁",
884          "█████████▁▁▁▁▁▁▁▁▁▁▁",
885          "█████████▁▁▁▁▁▁▁▁▁▁▁",
886          "█████████▁▁▁▁▁▁▁▁▁▁▁",
887          "███████████▁▁▁▁▁▁▁▁▁",
888          "████████████▁▁▁▁▁▁▁▁",
889          "████████████▁▁▁▁▁▁▁▁",
890          "██████████████▁▁▁▁▁▁",
891          "██████████████▁▁▁▁▁▁",
892          "▁██████████████▁▁▁▁▁",
893          "▁██████████████▁▁▁▁▁",
894          "▁▁▁█████████████▁▁▁▁",
895          "▁▁▁▁▁████████████▁▁▁",
896          "▁▁▁▁▁████████████▁▁▁",
897          "▁▁▁▁▁▁███████████▁▁▁",
898          "▁▁▁▁▁▁▁▁█████████▁▁▁",
899          "▁▁▁▁▁▁▁▁█████████▁▁▁",
900          "▁▁▁▁▁▁▁▁▁█████████▁▁",
901          "▁▁▁▁▁▁▁▁▁█████████▁▁",
902          "▁▁▁▁▁▁▁▁▁▁█████████▁",
903          "▁▁▁▁▁▁▁▁▁▁▁████████▁",
904          "▁▁▁▁▁▁▁▁▁▁▁████████▁",
905          "▁▁▁▁▁▁▁▁▁▁▁▁███████▁",
906          "▁▁▁▁▁▁▁▁▁▁▁▁███████▁",
907          "▁▁▁▁▁▁▁▁▁▁▁▁▁███████",
908          "▁▁▁▁▁▁▁▁▁▁▁▁▁███████",
909          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████",
910          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
911          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
912          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
913          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
914          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
915          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
916          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
917          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
918          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
919          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
920          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
921          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
922          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
923          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
924          "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁"
925        ], interval: 17},
926        "Moon".into() => SpinnerData {frames: vec![
927          "🌑 ",
928          "🌒 ",
929          "🌓 ",
930          "🌔 ",
931          "🌕 ",
932          "🌖 ",
933          "🌗 ",
934          "🌘 "
935        ], interval: 80},
936        "Runner".into() => SpinnerData {frames: vec![
937          "🚶 ",
938          "🏃 "
939        ], interval: 140},
940        "Pong".into() => SpinnerData {frames: vec![
941          "▐⠂       ▌",
942          "▐⠈       ▌",
943          "▐ ⠂      ▌",
944          "▐ ⠠      ▌",
945          "▐  ⡀     ▌",
946          "▐  ⠠     ▌",
947          "▐   ⠂    ▌",
948          "▐   ⠈    ▌",
949          "▐    ⠂   ▌",
950          "▐    ⠠   ▌",
951          "▐     ⡀  ▌",
952          "▐     ⠠  ▌",
953          "▐      ⠂ ▌",
954          "▐      ⠈ ▌",
955          "▐       ⠂▌",
956          "▐       ⠠▌",
957          "▐       ⡀▌",
958          "▐      ⠠ ▌",
959          "▐      ⠂ ▌",
960          "▐     ⠈  ▌",
961          "▐     ⠂  ▌",
962          "▐    ⠠   ▌",
963          "▐    ⡀   ▌",
964          "▐   ⠠    ▌",
965          "▐   ⠂    ▌",
966          "▐  ⠈     ▌",
967          "▐  ⠂     ▌",
968          "▐ ⠠      ▌",
969          "▐ ⡀      ▌",
970          "▐⠠       ▌"
971        ], interval: 80},
972        "Shark".into() => SpinnerData {frames: vec![
973          "▐|\\____________▌",
974          "▐_|\\___________▌",
975          "▐__|\\__________▌",
976          "▐___|\\_________▌",
977          "▐____|\\________▌",
978          "▐_____|\\_______▌",
979          "▐______|\\______▌",
980          "▐_______|\\_____▌",
981          "▐________|\\____▌",
982          "▐_________|\\___▌",
983          "▐__________|\\__▌",
984          "▐___________|\\_▌",
985          "▐____________|\\▌",
986          "▐____________/|▌",
987          "▐___________/|_▌",
988          "▐__________/|__▌",
989          "▐_________/|___▌",
990          "▐________/|____▌",
991          "▐_______/|_____▌",
992          "▐______/|______▌",
993          "▐_____/|_______▌",
994          "▐____/|________▌",
995          "▐___/|_________▌",
996          "▐__/|__________▌",
997          "▐_/|___________▌",
998          "▐/|____________▌"
999        ], interval: 120},
1000        "Dqpb".into() => SpinnerData {frames: vec![
1001          "d",
1002          "q",
1003          "p",
1004          "b"
1005        ], interval: 100},
1006        "Weather".into() => SpinnerData {frames: vec![
1007          "☀️ ",
1008          "☀️ ",
1009          "☀️ ",
1010          "🌤 ",
1011          "⛅️ ",
1012          "🌥 ",
1013          "☁️ ",
1014          "🌧 ",
1015          "🌨 ",
1016          "🌧 ",
1017          "🌨 ",
1018          "🌧 ",
1019          "🌨 ",
1020          "⛈ ",
1021          "🌨 ",
1022          "🌧 ",
1023          "🌨 ",
1024          "☁️ ",
1025          "🌥 ",
1026          "⛅️ ",
1027          "🌤 ",
1028          "☀️ ",
1029          "☀️ "
1030        ], interval: 100},
1031        "Christmas".into() => SpinnerData {frames: vec![
1032          "🌲",
1033          "🎄"
1034        ], interval: 400},
1035        "Grenade".into() => SpinnerData {frames: vec![
1036          "،  ",
1037          "′  ",
1038          " ´ ",
1039          " ‾ ",
1040          "  ⸌",
1041          "  ⸊",
1042          "  |",
1043          "  ⁎",
1044          "  ⁕",
1045          " ෴ ",
1046          "  ⁓",
1047          "   ",
1048          "   ",
1049          "   "
1050        ], interval: 80},
1051        "Point".into() => SpinnerData {frames: vec![
1052          "∙∙∙",
1053          "●∙∙",
1054          "∙●∙",
1055          "∙∙●",
1056          "∙∙∙"
1057        ], interval: 125},
1058        "Layer".into() => SpinnerData {frames: vec![
1059          "-",
1060          "=",
1061          "≡"
1062        ], interval: 150},
1063        "BetaWave".into() => SpinnerData {frames: vec![
1064          "ρββββββ",
1065          "βρβββββ",
1066          "ββρββββ",
1067          "βββρβββ",
1068          "ββββρββ",
1069          "βββββρβ",
1070          "ββββββρ"
1071        ], interval: 80},
1072        "FingerDance".into() => SpinnerData {frames: vec![
1073          "🤘 ",
1074          "🤟 ",
1075          "🖖 ",
1076          "✋ ",
1077          "🤚 ",
1078          "👆 "
1079        ], interval: 160},
1080        "FistBump".into() => SpinnerData {frames: vec![
1081          "🤜    🤛 ",
1082          "🤜    🤛 ",
1083          "🤜    🤛 ",
1084          " 🤜  🤛  ",
1085          "  🤜🤛   ",
1086          " 🤜✨🤛   ",
1087          "🤜 ✨ 🤛  "
1088        ], interval: 80},
1089        "SoccerHeader".into() => SpinnerData {frames: vec![
1090          " 🧑⚽️       🧑 ",
1091          "🧑  ⚽️      🧑 ",
1092          "🧑   ⚽️     🧑 ",
1093          "🧑    ⚽️    🧑 ",
1094          "🧑     ⚽️   🧑 ",
1095          "🧑      ⚽️  🧑 ",
1096          "🧑       ⚽️🧑  ",
1097          "🧑      ⚽️  🧑 ",
1098          "🧑     ⚽️   🧑 ",
1099          "🧑    ⚽️    🧑 ",
1100          "🧑   ⚽️     🧑 ",
1101          "🧑  ⚽️      🧑 "
1102        ], interval: 80},
1103        "Mindblown".into() => SpinnerData {frames: vec![
1104          "😐 ",
1105          "😐 ",
1106          "😮 ",
1107          "😮 ",
1108          "😦 ",
1109          "😦 ",
1110          "😧 ",
1111          "😧 ",
1112          "🤯 ",
1113          "💥 ",
1114          "✨ ",
1115          "  ",
1116          "  ",
1117          "  "
1118        ], interval: 160},
1119        "Speaker".into() => SpinnerData {frames: vec![
1120          "🔈 ",
1121          "🔉 ",
1122          "🔊 ",
1123          "🔉 "
1124        ], interval: 160},
1125        "OrangePulse".into() => SpinnerData {frames: vec![
1126          "🔸 ",
1127          "🔶 ",
1128          "🟠 ",
1129          "🟠 ",
1130          "🔶 "
1131        ], interval: 100},
1132        "BluePulse".into() => SpinnerData {frames: vec![
1133          "🔹 ",
1134          "🔷 ",
1135          "🔵 ",
1136          "🔵 ",
1137          "🔷 "
1138        ], interval: 100},
1139        "OrangeBluePulse".into() => SpinnerData {frames: vec![
1140          "🔸 ",
1141          "🔶 ",
1142          "🟠 ",
1143          "🟠 ",
1144          "🔶 ",
1145          "🔹 ",
1146          "🔷 ",
1147          "🔵 ",
1148          "🔵 ",
1149          "🔷 "
1150        ], interval: 100},
1151        "TimeTravel".into() => SpinnerData {frames: vec![
1152          "🕛 ",
1153          "🕚 ",
1154          "🕙 ",
1155          "🕘 ",
1156          "🕗 ",
1157          "🕖 ",
1158          "🕕 ",
1159          "🕔 ",
1160          "🕓 ",
1161          "🕒 ",
1162          "🕑 ",
1163          "🕐 "
1164        ], interval: 100},
1165        "Aesthetic".into() => SpinnerData {frames: vec![
1166          "▰▱▱▱▱▱▱",
1167          "▰▰▱▱▱▱▱",
1168          "▰▰▰▱▱▱▱",
1169          "▰▰▰▰▱▱▱",
1170          "▰▰▰▰▰▱▱",
1171          "▰▰▰▰▰▰▱",
1172          "▰▰▰▰▰▰▰",
1173          "▰▱▱▱▱▱▱"
1174        ], interval: 80}
1175            }
1176    };
1177}