✨ (feature) init feature game
This commit is contained in:
10
src/feature.fixture.test.ts
Normal file
10
src/feature.fixture.test.ts
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
import { faker } from '@faker-js/faker'
|
||||||
|
import { describe, it } from 'vitest'
|
||||||
|
|
||||||
|
describe('feature fixture', () => {
|
||||||
|
it('creates lots of animals', () => {
|
||||||
|
for (let i = 0; i < 200; i++) {
|
||||||
|
console.log(`"${faker.animal.dog()}", `)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
207
src/feature.fixture.ts
Normal file
207
src/feature.fixture.ts
Normal file
@@ -0,0 +1,207 @@
|
|||||||
|
const featureNames = [
|
||||||
|
'Dachshund',
|
||||||
|
'Jagdterrier',
|
||||||
|
'Chesapeake Bay Retriever',
|
||||||
|
'Cretan Hound',
|
||||||
|
'Bulldog',
|
||||||
|
'Lapponian Herder',
|
||||||
|
'Vizsla',
|
||||||
|
'Norwegian Elkhound',
|
||||||
|
'Rat Terrier',
|
||||||
|
'Kangal Shepherd Dog',
|
||||||
|
'English Foxhound',
|
||||||
|
'Kanni',
|
||||||
|
'Finnish Spitz',
|
||||||
|
'Bloodhound',
|
||||||
|
'Siberian Husky',
|
||||||
|
'Paisley Terrier',
|
||||||
|
'Cairn Terrier',
|
||||||
|
'Chortai',
|
||||||
|
'Bucovina Shepherd Dog',
|
||||||
|
'German Longhaired Pointer',
|
||||||
|
'Portuguese Water Dog',
|
||||||
|
'Aidi',
|
||||||
|
'Dunker',
|
||||||
|
'Slovenský Kopov',
|
||||||
|
'Kokoni',
|
||||||
|
'Pembroke Welsh Corgi',
|
||||||
|
'English Mastiff',
|
||||||
|
'Papillon',
|
||||||
|
'Blue Picardy Spaniel',
|
||||||
|
'Cursinu',
|
||||||
|
'Coton de Tulear',
|
||||||
|
'Akita',
|
||||||
|
'King Charles Spaniel',
|
||||||
|
'Mudhol Hound',
|
||||||
|
'Serrano Bulldog',
|
||||||
|
'Telomian',
|
||||||
|
'Komondor',
|
||||||
|
'Chinese Crested Dog',
|
||||||
|
'Banjara Hound',
|
||||||
|
'Jagdterrier',
|
||||||
|
'Australian Cattle Dog',
|
||||||
|
'Afghan Hound',
|
||||||
|
'King Shepherd',
|
||||||
|
'Boykin Spaniel',
|
||||||
|
'Hamiltonstövare',
|
||||||
|
'Bull Arab',
|
||||||
|
'Basque Shepherd Dog',
|
||||||
|
'East Siberian Laika',
|
||||||
|
'Australian Cattle Dog',
|
||||||
|
'German Hound',
|
||||||
|
'Scottish Terrier',
|
||||||
|
'Volpino Italiano',
|
||||||
|
'Sussex Spaniel',
|
||||||
|
'Kanni',
|
||||||
|
'Otterhound',
|
||||||
|
'Kintamani',
|
||||||
|
'Mudi',
|
||||||
|
'Pastore della Lessinia e del Lagorai',
|
||||||
|
'Danish-Swedish Farmdog',
|
||||||
|
'Basset Hound',
|
||||||
|
'McNab dog',
|
||||||
|
'Pungsan Dog',
|
||||||
|
'Bouvier des Flandres',
|
||||||
|
'Westphalian Dachsbracke',
|
||||||
|
'Slovenský Cuvac',
|
||||||
|
'Portuguese Water Dog',
|
||||||
|
'American English Coonhound',
|
||||||
|
'Old Croatian Sighthound',
|
||||||
|
'Affenpinscher',
|
||||||
|
'Karakachan dog',
|
||||||
|
'Hierran Wolfdog',
|
||||||
|
'Samoyed',
|
||||||
|
'Magyar agár',
|
||||||
|
'Sarabi dog',
|
||||||
|
'Cane Corso',
|
||||||
|
"Braque d'Auvergne",
|
||||||
|
'Volpino Italiano',
|
||||||
|
'Newfoundland',
|
||||||
|
'Chow Chow',
|
||||||
|
'East Siberian Laika',
|
||||||
|
'Shih Tzu',
|
||||||
|
'English Springer Spaniel',
|
||||||
|
'Ratonero Bodeguero Andaluz',
|
||||||
|
'Australian Kelpie',
|
||||||
|
'New Zealand Heading Dog',
|
||||||
|
'Burgos Pointer',
|
||||||
|
'German Wirehaired Pointer',
|
||||||
|
'Serrano Bulldog',
|
||||||
|
'King Shepherd',
|
||||||
|
'Norwegian Lundehund',
|
||||||
|
'Lagotto Romagnolo',
|
||||||
|
'Basset Bleu de Gascogne',
|
||||||
|
'Vikhan',
|
||||||
|
'Clumber Spaniel',
|
||||||
|
'Field Spaniel',
|
||||||
|
'Greater Swiss Mountain Dog',
|
||||||
|
'Boerboel',
|
||||||
|
'Basenji',
|
||||||
|
'Thai Ridgeback',
|
||||||
|
'Rottweiler',
|
||||||
|
'Slovakian Wirehaired Pointer',
|
||||||
|
'Brittany',
|
||||||
|
'Welsh Sheepdog',
|
||||||
|
'Tosa',
|
||||||
|
'Olde English Bulldogge',
|
||||||
|
'Galgo Español',
|
||||||
|
'Mudi',
|
||||||
|
'Smooth Fox Terrier',
|
||||||
|
'Bedlington Terrier',
|
||||||
|
'Picardy Spaniel',
|
||||||
|
'Chien Français Blanc et Orange',
|
||||||
|
'Kokoni',
|
||||||
|
'Gull Terrier',
|
||||||
|
'Redbone Coonhound',
|
||||||
|
'Rajapalayam',
|
||||||
|
'Perro de Presa Canario',
|
||||||
|
'Austrian Pinscher',
|
||||||
|
'Saluki',
|
||||||
|
'Kintamani',
|
||||||
|
'Galician Shepherd Dog',
|
||||||
|
'Standard Schnauzer',
|
||||||
|
'Cão de Gado Transmontano',
|
||||||
|
'American Staffordshire Terrier',
|
||||||
|
'Wirehaired Pointing Griffon',
|
||||||
|
'Galician Shepherd Dog',
|
||||||
|
'Transylvanian Hound',
|
||||||
|
'Chien Français Blanc et Noir',
|
||||||
|
'Taigan',
|
||||||
|
'Kombai',
|
||||||
|
'Saint Hubert Jura Hound',
|
||||||
|
'Swedish Vallhund',
|
||||||
|
'Dogo Sardesco',
|
||||||
|
'German Shorthaired Pointer',
|
||||||
|
'Pražský Krysařík',
|
||||||
|
'Airedale Terrier',
|
||||||
|
'Chortai',
|
||||||
|
'Bernese Mountain Dog',
|
||||||
|
'Drever',
|
||||||
|
'Estonian Hound',
|
||||||
|
'Dutch Smoushond',
|
||||||
|
'Wire Fox Terrier',
|
||||||
|
'Neapolitan Mastiff',
|
||||||
|
'Bearded Collie',
|
||||||
|
'Telomian',
|
||||||
|
'English Cocker Spaniel',
|
||||||
|
'Airedale Terrier',
|
||||||
|
'Mountain Feist',
|
||||||
|
'Treeing Tennessee Brindle',
|
||||||
|
'Garafian Shepherd',
|
||||||
|
'Grand Griffon Vendéen',
|
||||||
|
'Gull Terrier',
|
||||||
|
'Villano de Las Encartaciones',
|
||||||
|
'Russian Spaniel',
|
||||||
|
'Yakutian Laika',
|
||||||
|
'Curly-Coated Retriever',
|
||||||
|
'Rajapalayam',
|
||||||
|
'Sabueso Español',
|
||||||
|
'Hovawart',
|
||||||
|
'Peruvian Inca Orchid',
|
||||||
|
'Pekingese',
|
||||||
|
'Icelandic Sheepdog',
|
||||||
|
'Cairn Terrier',
|
||||||
|
'Glen of Imaal Terrier',
|
||||||
|
'Australian Shepherd',
|
||||||
|
'Dunker',
|
||||||
|
'Briquet Griffon Vendéen',
|
||||||
|
'Scottish Deerhound',
|
||||||
|
'Mudhol Hound',
|
||||||
|
'Danish-Swedish Farmdog',
|
||||||
|
'Australian Terrier',
|
||||||
|
'Chinese Chongqing Dog',
|
||||||
|
'Irish Red and White Setter',
|
||||||
|
'Podenco Valenciano',
|
||||||
|
"Cirneco dell'Etna",
|
||||||
|
'German Shepherd Dog',
|
||||||
|
'Levriero Sardo',
|
||||||
|
'Romanian Mioritic Shepherd Dog',
|
||||||
|
'Finnish Hound',
|
||||||
|
'Segugio Maremmano',
|
||||||
|
'Andalusian Hound',
|
||||||
|
'Swedish White Elkhound',
|
||||||
|
'Tenterfield Terrier',
|
||||||
|
'Wirehaired Pointing Griffon',
|
||||||
|
'Cão Fila de São Miguel',
|
||||||
|
'Italian Greyhound',
|
||||||
|
'Jindo',
|
||||||
|
'Pyrenean Mountain Dog',
|
||||||
|
'Field Spaniel',
|
||||||
|
'Alaskan Klee Kai',
|
||||||
|
'Lupo Italiano',
|
||||||
|
'Silken Windhound',
|
||||||
|
'Cavalier King Charles Spaniel',
|
||||||
|
'Spanish Mastiff',
|
||||||
|
'Sinhala Hound',
|
||||||
|
'Grand Griffon Vendéen',
|
||||||
|
'Shiloh Shepherd',
|
||||||
|
'Sarabi dog',
|
||||||
|
'Cane Corso',
|
||||||
|
'Japanese Spitz',
|
||||||
|
'Dogue de Bordeaux'
|
||||||
|
]
|
||||||
|
|
||||||
|
export const features: Feature[] = featureNames.map((name) => ({
|
||||||
|
name,
|
||||||
|
complexity: Math.floor(Math.random() * 5)
|
||||||
|
}))
|
||||||
4
src/feature.ts
Normal file
4
src/feature.ts
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
type Feature = {
|
||||||
|
name: string
|
||||||
|
complexity: number
|
||||||
|
}
|
||||||
12
src/utils.ts
Normal file
12
src/utils.ts
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
export const shuffleArray = <T>(array: T[]) => {
|
||||||
|
const arrayCopy = [...array]
|
||||||
|
|
||||||
|
for (let i = array.length - 1; i > 0; i--) {
|
||||||
|
const j = Math.floor(Math.random() * (i + 1))
|
||||||
|
const temp = array[i]
|
||||||
|
array[i] = array[j]
|
||||||
|
array[j] = temp
|
||||||
|
}
|
||||||
|
|
||||||
|
return arrayCopy
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user