@corentinth/friendly-ids
Version:
A human friendly ID generator
1 lines • 18.3 kB
Source Map (JSON)
{"version":3,"file":"index.mjs","sources":["../src/data/adjectives.ts","../src/data/animals.ts","../src/generator.ts"],"sourcesContent":["export const adjectives: string[] = [\n 'adaptable',\n 'adventurous',\n 'affable',\n 'affectionate',\n 'afraid',\n 'aged',\n 'agreeable',\n 'all',\n 'ambitious',\n 'ambivalent',\n 'amiable',\n 'amicable',\n 'amusing',\n 'ancient',\n 'angry',\n 'angular',\n 'anonymous',\n 'arcane',\n 'arguable',\n 'armored',\n 'artistic',\n 'aspiring',\n 'astute',\n 'atmospheric',\n 'audacious',\n 'austere',\n 'authoritative',\n 'average',\n 'bad',\n 'baffling',\n 'bald',\n 'banal',\n 'bare',\n 'basic',\n 'beaming',\n 'beige',\n 'bewildering',\n 'big',\n 'bigoted',\n 'bitter',\n 'bittersweet',\n 'black',\n 'blissful',\n 'blue',\n 'blunt',\n 'boastful',\n 'bold',\n 'bony',\n 'bookish',\n 'bouncy',\n 'brash',\n 'brave',\n 'brazen',\n 'breezy',\n 'brief',\n 'bright',\n 'brooding',\n 'brown',\n 'bubbly',\n 'buckled',\n 'buff',\n 'bumpy',\n 'burdened',\n 'busy',\n 'cacophonous',\n 'calm',\n 'careful',\n 'cautious',\n 'celebratory',\n 'chaotic',\n 'charming',\n 'chatty',\n 'cheeky',\n 'chilly',\n 'chubby',\n 'clean',\n 'clear',\n 'clever',\n 'clumsy',\n 'coarse',\n 'cold',\n 'colossal',\n 'comical',\n 'common',\n 'communal',\n 'communicative',\n 'compassionate',\n 'complex',\n 'confident',\n 'conscientious',\n 'considerate',\n 'convivial',\n 'cool',\n 'courageous',\n 'courteous',\n 'cowardly',\n 'crazy',\n 'creative',\n 'cruel',\n 'cuddly',\n 'curly',\n 'curvy',\n 'cute',\n 'cyan',\n 'dangerous',\n 'dark',\n 'decisive',\n 'deep',\n 'delicate',\n 'determined',\n 'diligent',\n 'diplomatic',\n 'dirty',\n 'discreet',\n 'divine',\n 'dry',\n 'dull',\n 'dynamic',\n 'eager',\n 'early',\n 'easy',\n 'easygoing',\n 'emotional',\n 'empty',\n 'energetic',\n 'enthusiastic',\n 'every',\n 'evil',\n 'exuberant',\n 'fair',\n 'faithful',\n 'famous',\n 'fancy',\n 'fast',\n 'fat',\n 'fearless',\n 'few',\n 'fine',\n 'flat',\n 'floppy',\n 'floral',\n 'fluffy',\n 'foolish',\n 'forceful',\n 'frank',\n 'free',\n 'fresh',\n 'friendly',\n 'fruity',\n 'full',\n 'funny',\n 'fuzzy',\n 'generous',\n 'gentle',\n 'giant',\n 'gold',\n 'good',\n 'great',\n 'green',\n 'gregarious',\n 'grumpy',\n 'happy',\n 'hard',\n 'heavy',\n 'helpful',\n 'helpless',\n 'hidden',\n 'hip',\n 'holy',\n 'honest',\n 'horrible',\n 'hot',\n 'huge',\n 'humorous',\n 'hungry',\n 'icy',\n 'imaginative',\n 'impartial',\n 'independent',\n 'intellectual',\n 'intelligent',\n 'intuitive',\n 'inventive',\n 'itchy',\n 'jolly',\n 'khaki',\n 'kind',\n 'large',\n 'late',\n 'lazy',\n 'legal',\n 'lemon',\n 'light',\n 'little',\n 'lively',\n 'long',\n 'loose',\n 'loud',\n 'lovely',\n 'loving',\n 'loyal',\n 'lucky',\n 'major',\n 'many',\n 'massive',\n 'mean',\n 'metal',\n 'mighty',\n 'misty',\n 'modern',\n 'modest',\n 'moody',\n 'nameless',\n 'nasty',\n 'neat',\n 'nervous',\n 'new',\n 'nice',\n 'odd',\n 'old',\n 'olive',\n 'open',\n 'optimistic',\n 'orange',\n 'ordinary',\n 'passionate',\n 'patient',\n 'perfect',\n 'persistent',\n 'petite',\n 'philosophical',\n 'pink',\n 'pioneering',\n 'placid',\n 'plain',\n 'plastic',\n 'plenty',\n 'plucky',\n 'polished',\n 'polite',\n 'poor',\n 'popular',\n 'powerful',\n 'practical',\n 'pretty',\n 'proud',\n 'public',\n 'puny',\n 'purple',\n 'quick',\n 'quiet',\n 'rare',\n 'rational',\n 'ready',\n 'real',\n 'red',\n 'reliable',\n 'reserved',\n 'resourceful',\n 'restless',\n 'rich',\n 'ripe',\n 'romantic',\n 'rotten',\n 'rude',\n 'sad',\n 'salty',\n 'selfish',\n 'sensible',\n 'sensitive',\n 'serious',\n 'shaggy',\n 'shaky',\n 'sharp',\n 'shiny',\n 'short',\n 'shy',\n 'silent',\n 'silly',\n 'silver',\n 'sincere',\n 'slick',\n 'slimy',\n 'slippery',\n 'slow',\n 'small',\n 'smart',\n 'smooth',\n 'snowy',\n 'sociable',\n 'social',\n 'soft',\n 'solid',\n 'some',\n 'sour',\n 'spicy',\n 'splendid',\n 'spotty',\n 'stale',\n 'still',\n 'straightforward',\n 'strange',\n 'strong',\n 'stupid',\n 'sweet',\n 'swift',\n 'sympathetic',\n 'tall',\n 'tame',\n 'tangy',\n 'tasty',\n 'tender',\n 'terrible',\n 'thick',\n 'thin',\n 'thoughtful',\n 'tidy',\n 'tiny',\n 'tired',\n 'tough',\n 'tricky',\n 'true',\n 'ugly',\n 'unassuming',\n 'understanding',\n 'unlucky',\n 'upset',\n 'vast',\n 'versatile',\n 'violet',\n 'wandering',\n 'warm',\n 'warmhearted',\n 'weak',\n 'wet',\n 'white',\n 'whole',\n 'wicked',\n 'wide',\n 'wild',\n 'willing',\n 'wise',\n 'withered',\n 'witty',\n 'wonderful',\n 'yellow',\n 'young',\n 'yummy',\n];\n","export const animals: string[] = [\n 'albatross',\n 'alligator',\n 'alpaca',\n 'ant',\n 'anteater',\n 'antelope',\n 'ape',\n 'armadillo',\n 'axolotl',\n 'baboon',\n 'badger',\n 'barracuda',\n 'bat',\n 'bear',\n 'beaver',\n 'bee',\n 'beluga',\n 'bird',\n 'bison',\n 'boar',\n 'bobcat',\n 'bonobo',\n 'bulldog',\n 'bullfrog',\n 'butterfly',\n 'camel',\n 'capybara',\n 'caribou',\n 'cassowary',\n 'cat',\n 'caterpillar',\n 'catfish',\n 'cheetah',\n 'chicken',\n 'chimpanzee',\n 'chinchilla',\n 'chipmunk',\n 'cobra',\n 'cockroach',\n 'cormorant',\n 'cougar',\n 'cow',\n 'coyote',\n 'crab',\n 'crane',\n 'crocodile',\n 'deer',\n 'dingo',\n 'dodo',\n 'dog',\n 'dolphin',\n 'donkey',\n 'dormouse',\n 'dove',\n 'dragon',\n 'dragonfly',\n 'duck',\n 'dugong',\n 'eagle',\n 'earwig',\n 'eel',\n 'egret',\n 'elephant',\n 'elk',\n 'emu',\n 'falcon',\n 'ferret',\n 'finch',\n 'fireant',\n 'firefly',\n 'firefox',\n 'fish',\n 'flamingo',\n 'fly',\n 'fox',\n 'frog',\n 'gazelle',\n 'gecko',\n 'gibbon',\n 'giraffe',\n 'goat',\n 'goldfish',\n 'goose',\n 'gorilla',\n 'grasshopper',\n 'hamster',\n 'hare',\n 'hawk',\n 'hedgehog',\n 'heron',\n 'hippopotamus',\n 'horse',\n 'hound',\n 'hummingbird',\n 'husky',\n 'hyena',\n 'ibex',\n 'ibis',\n 'impala',\n 'insect',\n 'jackal',\n 'jaguar',\n 'jellyfish',\n 'junco',\n 'kangaroo',\n 'kingfisher',\n 'koala',\n 'kookaburra',\n 'ladybug',\n 'lamprey',\n 'lemur',\n 'leopard',\n 'liger',\n 'lion',\n 'lionfish',\n 'lizard',\n 'lobster',\n 'loon',\n 'lynx',\n 'macaw',\n 'magpie',\n 'manatee',\n 'mandrill',\n 'mayfly',\n 'meerkat',\n 'mink',\n 'mole',\n 'monkey',\n 'moose',\n 'mosquito',\n 'moth',\n 'mouse',\n 'mule',\n 'narwhal',\n 'nautilus',\n 'newt',\n 'nightingale',\n 'octopus',\n 'okapi',\n 'opossum',\n 'orangutan',\n 'orca',\n 'ostrich',\n 'otter',\n 'owl',\n 'panda',\n 'panther',\n 'parrot',\n 'peacock',\n 'pelican',\n 'penguin',\n 'pheasant',\n 'pig',\n 'pigeon',\n 'platypus',\n 'porcupine',\n 'porpoise',\n 'possum',\n 'puffin',\n 'pug',\n 'puma',\n 'python',\n 'quail',\n 'quokka',\n 'quoll',\n 'rabbit',\n 'raccoon',\n 'ram',\n 'rat',\n 'rattlesnake',\n 'raven',\n 'ray',\n 'reindeer',\n 'rhinoceros',\n 'roadrunner',\n 'robin',\n 'salamander',\n 'salmon',\n 'sandpiper',\n 'sardine',\n 'scorpion',\n 'seahorse',\n 'seal',\n 'shark',\n 'sheep',\n 'shrimp',\n 'skunk',\n 'sloth',\n 'snail',\n 'snake',\n 'sparrow',\n 'spider',\n 'squid',\n 'squirrel',\n 'starfish',\n 'stingray',\n 'swan',\n 'tapir',\n 'termite',\n 'tiger',\n 'toad',\n 'toucan',\n 'treefrog',\n 'tuna',\n 'turkey',\n 'turtle',\n 'umbrellabird',\n 'urchin',\n 'vampirebat',\n 'viper',\n 'vulture',\n 'wallaby',\n 'walrus',\n 'warthog',\n 'wasp',\n 'weasel',\n 'whale',\n 'wolf',\n 'wolverine',\n 'wombat',\n 'woodpecker',\n 'worm',\n 'yak',\n 'yellowjacket',\n 'zebra',\n 'zebu',\n];\n","import { adjectives } from './data/adjectives';\nimport { animals } from './data/animals';\n\nexport type RandomIntGenerator = ({ min, max }: { min: number; max: number }) => number;\nexport type RandomItemPicker = <T>(items: T[]) => T;\nexport type ChunkBuilder = (args: { getRandomInt: RandomIntGenerator; getRandomItem: RandomItemPicker }) => string | number;\n\nexport function createIdGenerator({\n getRandomInt = ({ min, max }) => Math.floor(Math.random() * (max - min)) + min,\n separator = '-',\n chunks = [\n ({ getRandomItem }) => getRandomItem(adjectives),\n ({ getRandomItem }) => getRandomItem(animals),\n ({ getRandomInt }) => getRandomInt({ min: 0, max: 1000 }),\n ],\n}: {\n getRandomInt?: RandomIntGenerator;\n separator?: string;\n chunks?: ChunkBuilder[];\n} = {}): () => string {\n const getRandomItem = <T>(items: T[]): T => items[getRandomInt({ min: 0, max: items.length })];\n\n return () => chunks.map(chunk => chunk({ getRandomInt, getRandomItem })).join(separator);\n}\n\nexport const generateId = createIdGenerator();\n"],"names":["getRandomInt"],"mappings":"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"}