1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
// Usernames the web signup page fills in by default: an animal from
// unique-names-generator plus a number 10-99 (coinos-ui src/lib/random.ts).
// Real users rarely keep one (~8/day); signup farms always do.
const animals = new Set([
"aardvark", "aardwolf", "albatross", "alligator", "alpaca", "amphibian",
"anaconda", "angelfish", "anglerfish", "ant", "anteater", "antelope",
"antlion", "ape", "aphid", "armadillo", "asp", "baboon", "badger",
"bandicoot", "barnacle", "barracuda", "basilisk", "bass", "bat", "bear",
"beaver", "bedbug", "bee", "beetle", "bird", "bison", "blackbird", "boa",
"boar", "bobcat", "bobolink", "bonobo", "booby", "bovid", "bug",
"butterfly", "buzzard", "camel", "canid", "canidae", "capybara",
"cardinal", "caribou", "carp", "cat", "caterpillar", "catfish", "catshark",
"cattle", "centipede", "cephalopod", "chameleon", "cheetah", "chickadee",
"chicken", "chimpanzee", "chinchilla", "chipmunk", "cicada", "clam",
"clownfish", "cobra", "cockroach", "cod", "condor", "constrictor", "coral",
"cougar", "cow", "coyote", "crab", "crane", "crawdad", "crayfish",
"cricket", "crocodile", "crow", "cuckoo", "damselfly", "deer", "dingo",
"dinosaur", "dog", "dolphin", "donkey", "dormouse", "dove", "dragon",
"dragonfly", "duck", "eagle", "earthworm", "earwig", "echidna", "eel",
"egret", "elephant", "elk", "emu", "ermine", "falcon", "felidae", "ferret",
"finch", "firefly", "fish", "flamingo", "flea", "fly", "flyingfish",
"fowl", "fox", "frog", "galliform", "gamefowl", "gayal", "gazelle",
"gecko", "gerbil", "gibbon", "giraffe", "goat", "goldfish", "goose",
"gopher", "gorilla", "grasshopper", "grouse", "guan", "guanaco",
"guineafowl", "gull", "guppy", "haddock", "halibut", "hamster", "hare",
"harrier", "hawk", "hedgehog", "heron", "herring", "hippopotamus",
"hookworm", "hornet", "horse", "hoverfly", "hummingbird", "hyena",
"iguana", "impala", "jackal", "jaguar", "jay", "jellyfish", "junglefowl",
"kangaroo", "kingfisher", "kite", "kiwi", "koala", "koi", "krill",
"ladybug", "lamprey", "landfowl", "lark", "leech", "lemming", "lemur",
"leopard", "leopon", "limpet", "lion", "lizard", "llama", "lobster",
"locust", "loon", "louse", "lungfish", "lynx", "macaw", "mackerel",
"magpie", "mammal", "manatee", "mandrill", "marlin", "marmoset", "marmot",
"marsupial", "marten", "mastodon", "meadowlark", "meerkat", "mink",
"minnow", "mite", "mockingbird", "mole", "mollusk", "mongoose", "monkey",
"moose", "mosquito", "moth", "mouse", "mule", "muskox", "narwhal", "newt",
"nightingale", "ocelot", "octopus", "opossum", "orangutan", "orca",
"ostrich", "otter", "owl", "ox", "panda", "panther", "parakeet", "parrot",
"parrotfish", "partridge", "peacock", "peafowl", "pelican", "penguin",
"perch", "pheasant", "pig", "pigeon", "pike", "pinniped", "piranha",
"planarian", "platypus", "pony", "porcupine", "porpoise", "possum",
"prawn", "primate", "ptarmigan", "puffin", "puma", "python", "quail",
"quelea", "quokka", "rabbit", "raccoon", "rat", "rattlesnake", "raven",
"reindeer", "reptile", "rhinoceros", "roadrunner", "rodent", "rook",
"rooster", "roundworm", "sailfish", "salamander", "salmon", "sawfish",
"scallop", "scorpion", "seahorse", "shark", "sheep", "shrew", "shrimp",
"silkworm", "silverfish", "skink", "skunk", "sloth", "slug", "smelt",
"snail", "snake", "snipe", "sole", "sparrow", "spider", "spoonbill",
"squid", "squirrel", "starfish", "stingray", "stoat", "stork", "sturgeon",
"swallow", "swan", "swift", "swordfish", "swordtail", "tahr", "takin",
"tapir", "tarantula", "tarsier", "termite", "tern", "thrush", "tick",
"tiger", "tiglon", "toad", "tortoise", "toucan", "trout", "tuna", "turkey",
"turtle", "tyrannosaurus", "unicorn", "urial", "vicuna", "viper", "vole",
"vulture", "wallaby", "walrus", "warbler", "wasp", "weasel", "whale",
"whippet", "whitefish", "wildcat", "wildebeest", "wildfowl", "wolf",
"wolverine", "wombat", "woodpecker", "worm", "wren", "xerinae", "yak",
"zebra",
]);
export const isDefaultName = (username: string) => {
const m = /^([a-z]+)\d\d$/.exec(String(username || "").toLowerCase());
return !!m && animals.has(m[1]);
};
|