use crate::utils::spinner_data::SpinnerData;
use lazy_static::lazy_static;
use maplit::{self, hashmap};
use std::collections::HashMap;
lazy_static! {
pub static ref SPINNERS: HashMap<String, SpinnerData> = {
hashmap! {
"Dots".into() => SpinnerData {frames: vec![
"â ",
"â ",
"â š",
"â ¸",
"â ź",
"â ´",
"â Ś",
"â §",
"â ",
"â "
], interval: 80},
"Dots2".into() => SpinnerData {frames: vec![
"⣞",
"⣽",
"⣝",
"⢿",
"⥿",
"âŁ",
"⣯",
"⣡"
], interval: 80},
"Dots3".into() => SpinnerData {frames: vec![
"â ",
"â ",
"â ",
"â ",
"â ",
"â Ś",
"â ´",
"â ˛",
"â ł",
"â "
], interval: 80},
"Dots4".into() => SpinnerData {frames: vec![
"â ",
"â ",
"â ",
"â ",
"â ",
"â ¸",
"â °",
"â ",
"â °",
"â ¸",
"â ",
"â ",
"â ",
"â "
], interval: 80},
"Dots5".into() => SpinnerData {frames: vec![
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ˛",
"â ´",
"â Ś",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â "
], interval: 80},
"Dots6".into() => SpinnerData {frames: vec![
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ˛",
"â ´",
"â ¤",
"â ",
"â ",
"â ¤",
"â ´",
"â ˛",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â "
], interval: 80},
"Dots7".into() => SpinnerData {frames: vec![
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â Ś",
"â ¤",
"â ",
"â ",
"â ¤",
"â Ś",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â "
], interval: 80},
"Dots8".into() => SpinnerData {frames: vec![
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ˛",
"â ´",
"â ¤",
"â ",
"â ",
"â ¤",
"â ",
"â ",
"â ¤",
"â Ś",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â "
], interval: 80},
"Dots9".into() => SpinnerData {frames: vec![
"⢚",
"⢺",
"⢟",
"⣸",
"âŁ",
"⥧",
"âĄ",
"âĄ"
], interval: 80},
"Dots10".into() => SpinnerData {frames: vec![
"â˘",
"â˘",
"â˘",
"âĄ",
"âĄ",
"âĄ",
"⥠"
], interval: 80},
"Dots11".into() => SpinnerData {frames: vec![
"â ",
"â ",
"â ",
"âĄ",
"â˘",
"â ",
"â ",
"â "
], interval: 100},
"Dots12".into() => SpinnerData {frames: vec![
"â˘â ",
"âĄâ ",
"â â ",
"â˘â ",
"âĄâ ",
"â
â ",
"â˘â ",
"âĄâ ",
"â â ",
"â˘â ",
"âĄâ ",
"â â ",
"â˘â ",
"âĄâ ",
"â â ",
"â â ",
"â â ",
"â â ",
"â â ",
"â â Š",
"â â˘",
"â âĄ",
"â˘â Š",
"âĄâ˘",
"â âĄ",
"â˘â Š",
"âĄâ˘",
"â
âĄ",
"â˘â ¨",
"âĄâ˘",
"â âĄ",
"â˘â ",
"âĄâ˘",
"â âĄ",
"â˘â ",
"âĄâ ",
"â â ",
"â â ",
"â â ",
"â â ",
"â â ",
"â â Š",
"â â˘",
"â âĄ",
"â â Š",
"â â˘",
"â âĄ",
"â â Š",
"â â˘",
"â âĄ",
"â â ¨",
"â â˘",
"â âĄ",
"â â ",
"â â˘",
"â âĄ"
], interval: 80},
"Dots8Bit".into() => SpinnerData {frames: vec![
"â ",
"â ",
"â ",
"â ",
"â ",
"â
",
"â ",
"â ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"âĄ
",
"âĄ",
"âĄ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"â ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"âĄ",
"â ",
"â Ą",
"â ˘",
"â Ł",
"â ¤",
"â Ľ",
"â Ś",
"â §",
"⥠",
"⥥",
"⥢",
"⥣",
"⥤",
"⥼",
"⥌",
"⥧",
"â ¨",
"â Š",
"â Ş",
"â Ť",
"â Ź",
"â ",
"â Ž",
"â Ż",
"⥨",
"⥊",
"⥪",
"⥍",
"⥏",
"âĄ",
"⥎",
"⥯",
"â °",
"â ą",
"â ˛",
"â ł",
"â ´",
"â ľ",
"â ś",
"â ˇ",
"⥰",
"⥹",
"⥲",
"⥳",
"⥴",
"⥾",
"⥜",
"⥡",
"â ¸",
"â š",
"â ş",
"â ť",
"â ź",
"â ˝",
"â ž",
"â ż",
"⥸",
"⥚",
"⥺",
"⥝",
"⥟",
"⥽",
"⥞",
"⥿",
"â˘",
"â˘",
"â˘",
"â˘",
"â˘",
"â˘
",
"â˘",
"â˘",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"âŁ
",
"âŁ",
"âŁ",
"â˘",
"â˘",
"â˘",
"â˘",
"â˘",
"â˘",
"â˘",
"â˘",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"â˘",
"â˘",
"â˘",
"â˘",
"â˘",
"â˘",
"â˘",
"â˘",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"â˘",
"â˘",
"â˘",
"â˘",
"â˘",
"â˘",
"â˘",
"â˘",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"âŁ",
"⢠",
"⢥",
"⢢",
"⢣",
"⢤",
"⢼",
"⢌",
"⢧",
"⣠",
"⣥",
"⣢",
"⣣",
"⣤",
"⣼",
"⣌",
"⣧",
"⢨",
"⢊",
"⢪",
"⢍",
"⢏",
"â˘",
"⢎",
"⢯",
"⣨",
"⣊",
"⣪",
"⣍",
"⣏",
"âŁ",
"⣎",
"⣯",
"⢰",
"⢹",
"⢲",
"⢳",
"⢴",
"⢾",
"⢜",
"⢡",
"⣰",
"⣹",
"⣲",
"⣳",
"⣴",
"⣾",
"⣜",
"⣡",
"⢸",
"⢚",
"⢺",
"⢝",
"⢟",
"⢽",
"⢞",
"⢿",
"⣸",
"⣚",
"⣺",
"⣝",
"⣟",
"⣽",
"⣞",
"⣿"
], interval: 80},
"Line".into() => SpinnerData {frames: vec![
"-",
"\\",
"|",
"/"
], interval: 130},
"Line2".into() => SpinnerData {frames: vec![
"â ",
"-",
"â",
"â",
"â",
"-"
], interval: 100},
"Pipe".into() => SpinnerData {frames: vec![
"â¤",
"â",
"â´",
"â",
"â",
"â",
"âŹ",
"â"
], interval: 100},
"SimpleDots".into() => SpinnerData {frames: vec![
". ",
".. ",
"...",
" "
], interval: 400},
"SimpleDotsScrolling".into() => SpinnerData {frames: vec![
". ",
".. ",
"...",
" ..",
" .",
" "
], interval: 200},
"Star".into() => SpinnerData {frames: vec![
"âś",
"â¸",
"âš",
"âş",
"âš",
"âˇ"
], interval: 70},
"Star2".into() => SpinnerData {frames: vec![
"+",
"x",
"*"
], interval: 80},
"Flip".into() => SpinnerData {frames: vec![
"_",
"_",
"_",
"-",
"`",
"`",
"'",
"´",
"-",
"_",
"_",
"_"
], interval: 70},
"Hamburger".into() => SpinnerData {frames: vec![
"âą",
"â˛",
"â´"
], interval: 100},
"GrowVertical".into() => SpinnerData {frames: vec![
"â",
"â",
"â",
"â
",
"â",
"â",
"â",
"â
",
"â",
"â"
], interval: 120},
"GrowHorizontal".into() => SpinnerData {frames: vec![
"â",
"â",
"â",
"â",
"â",
"â",
"â",
"â",
"â",
"â",
"â",
"â"
], interval: 120},
"Balloon".into() => SpinnerData {frames: vec![
" ",
".",
"o",
"O",
"@",
"*",
" "
], interval: 140},
"Balloon2".into() => SpinnerData {frames: vec![
".",
"o",
"O",
"°",
"O",
"o",
"."
], interval: 120},
"Noise".into() => SpinnerData {frames: vec![
"â",
"â",
"â"
], interval: 100},
"Bounce".into() => SpinnerData {frames: vec![
"â ",
"â ",
"â ",
"â "
], interval: 120},
"BoxBounce".into() => SpinnerData {frames: vec![
"â",
"â",
"â",
"â"
], interval: 120},
"BoxBounce2".into() => SpinnerData {frames: vec![
"â",
"â",
"â",
"â"
], interval: 100},
"Triangle".into() => SpinnerData {frames: vec![
"â˘",
"âŁ",
"â¤",
"âĽ"
], interval: 50},
"Arc".into() => SpinnerData {frames: vec![
"â",
"â ",
"â",
"â",
"âĄ",
"â"
], interval: 100},
"Circle".into() => SpinnerData {frames: vec![
"âĄ",
"â",
"â "
], interval: 120},
"SquareCorners".into() => SpinnerData {frames: vec![
"â°",
"âł",
"â˛",
"âą"
], interval: 180},
"CircleQuarters".into() => SpinnerData {frames: vec![
"â´",
"âˇ",
"âś",
"âľ"
], interval: 120},
"CircleHalves".into() => SpinnerData {frames: vec![
"â",
"â",
"â",
"â"
], interval: 50},
"Squish".into() => SpinnerData {frames: vec![
"âŤ",
"âŞ"
], interval: 100},
"Toggle".into() => SpinnerData {frames: vec![
"âś",
"âˇ"
], interval: 250},
"Toggle2".into() => SpinnerData {frames: vec![
"âŤ",
"âŞ"
], interval: 80},
"Toggle3".into() => SpinnerData {frames: vec![
"âĄ",
"â "
], interval: 120},
"Toggle4".into() => SpinnerData {frames: vec![
"â ",
"âĄ",
"âŞ",
"âŤ"
], interval: 100},
"Toggle5".into() => SpinnerData {frames: vec![
"âŽ",
"âŻ"
], interval: 100},
"Toggle6".into() => SpinnerData {frames: vec![
"á",
"á"
], interval: 300},
"Toggle7".into() => SpinnerData {frames: vec![
"⌞",
"⌿"
], interval: 80},
"Toggle8".into() => SpinnerData {frames: vec![
"â",
"â"
], interval: 100},
"Toggle9".into() => SpinnerData {frames: vec![
"â",
"â"
], interval: 100},
"Toggle10".into() => SpinnerData {frames: vec![
"ă",
"ă",
"ă"
], interval: 100},
"Toggle11".into() => SpinnerData {frames: vec![
"â§",
"â§"
], interval: 50},
"Toggle12".into() => SpinnerData {frames: vec![
"â",
"â"
], interval: 120},
"Toggle13".into() => SpinnerData {frames: vec![
"=",
"*",
"-"
], interval: 80},
"Arrow".into() => SpinnerData {frames: vec![
"â",
"â",
"â",
"â",
"â",
"â",
"â",
"â"
], interval: 100},
"Arrow2".into() => SpinnerData {frames: vec![
"âŹď¸ ",
"âď¸ ",
"âĄď¸ ",
"âď¸ ",
"âŹď¸ ",
"âď¸ ",
"âŹ
ď¸ ",
"âď¸ "
], interval: 80},
"Arrow3".into() => SpinnerData {frames: vec![
"âšâšâšâšâš",
"â¸âšâšâšâš",
"âšâ¸âšâšâš",
"âšâšâ¸âšâš",
"âšâšâšâ¸âš",
"âšâšâšâšâ¸"
], interval: 120},
"BouncingBar".into() => SpinnerData {frames: vec![
"[ ]",
"[= ]",
"[== ]",
"[=== ]",
"[ ===]",
"[ ==]",
"[ =]",
"[ ]",
"[ =]",
"[ ==]",
"[ ===]",
"[====]",
"[=== ]",
"[== ]",
"[= ]"
], interval: 80},
"BouncingBall".into() => SpinnerData {frames: vec![
"( â )",
"( â )",
"( â )",
"( â )",
"( â)",
"( â )",
"( â )",
"( â )",
"( â )",
"(â )"
], interval: 80},
"Smiley".into() => SpinnerData {frames: vec![
"đ ",
"đ "
], interval: 200},
"Monkey".into() => SpinnerData {frames: vec![
"đ ",
"đ ",
"đ ",
"đ "
], interval: 300},
"Hearts".into() => SpinnerData {frames: vec![
"đ ",
"đ ",
"đ ",
"đ ",
"â¤ď¸ "
], interval: 100},
"Clock".into() => SpinnerData {frames: vec![
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ "
], interval: 100},
"Earth".into() => SpinnerData {frames: vec![
"đ ",
"đ ",
"đ "
], interval: 180},
"Material".into() => SpinnerData {frames: vec![
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ",
"ââââââââââââââââââââ"
], interval: 17},
"Moon".into() => SpinnerData {frames: vec![
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ "
], interval: 80},
"Runner".into() => SpinnerData {frames: vec![
"đś ",
"đ "
], interval: 140},
"Pong".into() => SpinnerData {frames: vec![
"ââ â",
"ââ â",
"â â â",
"â â â",
"â ⥠â",
"â â â",
"â â â",
"â â â",
"â â â",
"â â â",
"â ⥠â",
"â â â",
"â â â",
"â â â",
"â â â",
"â â â",
"â âĄâ",
"â â â",
"â â â",
"â â â",
"â â â",
"â â â",
"â ⥠â",
"â â â",
"â â â",
"â â â",
"â â â",
"â â â",
"â ⥠â",
"ââ â"
], interval: 80},
"Shark".into() => SpinnerData {frames: vec![
"â|\\____________â",
"â_|\\___________â",
"â__|\\__________â",
"â___|\\_________â",
"â____|\\________â",
"â_____|\\_______â",
"â______|\\______â",
"â_______|\\_____â",
"â________|\\____â",
"â_________|\\___â",
"â__________|\\__â",
"â___________|\\_â",
"â____________|\\â",
"â____________/|â",
"â___________/|_â",
"â__________/|__â",
"â_________/|___â",
"â________/|____â",
"â_______/|_____â",
"â______/|______â",
"â_____/|_______â",
"â____/|________â",
"â___/|_________â",
"â__/|__________â",
"â_/|___________â",
"â/|____________â"
], interval: 120},
"Dqpb".into() => SpinnerData {frames: vec![
"d",
"q",
"p",
"b"
], interval: 100},
"Weather".into() => SpinnerData {frames: vec![
"âď¸ ",
"âď¸ ",
"âď¸ ",
"đ¤ ",
"â
ď¸ ",
"đĽ ",
"âď¸ ",
"đ§ ",
"đ¨ ",
"đ§ ",
"đ¨ ",
"đ§ ",
"đ¨ ",
"â ",
"đ¨ ",
"đ§ ",
"đ¨ ",
"âď¸ ",
"đĽ ",
"â
ď¸ ",
"đ¤ ",
"âď¸ ",
"âď¸ "
], interval: 100},
"Christmas".into() => SpinnerData {frames: vec![
"đ˛",
"đ"
], interval: 400},
"Grenade".into() => SpinnerData {frames: vec![
"Ř ",
"Ⲡ",
" ´ ",
" âž ",
" â¸",
" â¸",
" |",
" â",
" â",
" ࡴ ",
" â",
" ",
" ",
" "
], interval: 80},
"Point".into() => SpinnerData {frames: vec![
"âââ",
"âââ",
"âââ",
"âââ",
"âââ"
], interval: 125},
"Layer".into() => SpinnerData {frames: vec![
"-",
"=",
"âĄ"
], interval: 150},
"BetaWave".into() => SpinnerData {frames: vec![
"Ďββββββ",
"βĎβββββ",
"ββĎββββ",
"βββĎβββ",
"ββββĎββ",
"βββββĎβ",
"ββββββĎ"
], interval: 80},
"FingerDance".into() => SpinnerData {frames: vec![
"đ¤ ",
"đ¤ ",
"đ ",
"â ",
"đ¤ ",
"đ "
], interval: 160},
"FistBump".into() => SpinnerData {frames: vec![
"đ¤ăăăăđ¤ ",
"đ¤ăăăăđ¤ ",
"đ¤ăăăăđ¤ ",
"ăđ¤ăăđ¤ă ",
"ăăđ¤đ¤ăă ",
"ăđ¤â¨đ¤ăă ",
"đ¤ăâ¨ăđ¤ă "
], interval: 80},
"SoccerHeader".into() => SpinnerData {frames: vec![
" đ§â˝ď¸ đ§ ",
"đ§ â˝ď¸ đ§ ",
"đ§ â˝ď¸ đ§ ",
"đ§ â˝ď¸ đ§ ",
"đ§ â˝ď¸ đ§ ",
"đ§ â˝ď¸ đ§ ",
"đ§ â˝ď¸đ§ ",
"đ§ â˝ď¸ đ§ ",
"đ§ â˝ď¸ đ§ ",
"đ§ â˝ď¸ đ§ ",
"đ§ â˝ď¸ đ§ ",
"đ§ â˝ď¸ đ§ "
], interval: 80},
"Mindblown".into() => SpinnerData {frames: vec![
"đ ",
"đ ",
"đŽ ",
"đŽ ",
"đŚ ",
"đŚ ",
"đ§ ",
"đ§ ",
"𤯠",
"đĽ ",
"⨠",
"ă ",
"ă ",
"ă "
], interval: 160},
"Speaker".into() => SpinnerData {frames: vec![
"đ ",
"đ ",
"đ ",
"đ "
], interval: 160},
"OrangePulse".into() => SpinnerData {frames: vec![
"đ¸ ",
"đś ",
"đ ",
"đ ",
"đś "
], interval: 100},
"BluePulse".into() => SpinnerData {frames: vec![
"đš ",
"đˇ ",
"đľ ",
"đľ ",
"đˇ "
], interval: 100},
"OrangeBluePulse".into() => SpinnerData {frames: vec![
"đ¸ ",
"đś ",
"đ ",
"đ ",
"đś ",
"đš ",
"đˇ ",
"đľ ",
"đľ ",
"đˇ "
], interval: 100},
"TimeTravel".into() => SpinnerData {frames: vec![
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ ",
"đ "
], interval: 100},
"Aesthetic".into() => SpinnerData {frames: vec![
"â°âąâąâąâąâąâą",
"â°â°âąâąâąâąâą",
"â°â°â°âąâąâąâą",
"â°â°â°â°âąâąâą",
"â°â°â°â°â°âąâą",
"â°â°â°â°â°â°âą",
"â°â°â°â°â°â°â°",
"â°âąâąâąâąâąâą"
], interval: 80}
}
};
}