spanish-quizzer

An app to quiz you on Spanish vocabulary and verb conjugations
git clone https://git.ashermorgan.net/spanish-quizzer/
Log | Files | Refs | README

commit 11ed67f2696684e106c408c020849580c1ed0077
parent 2bde5c90fa53c28ad03672c2e2d2325b26a14dc4
Author: AsherMorgan <59518073+AsherMorgan@users.noreply.github.com>
Date:   Thu, 14 Jan 2021 08:29:49 -0800

Move vocab data into one csv file.

Diffstat:
MREADME.md | 56+++++++++++++++++++++++++++-----------------------------
Acss/data.css | 15+++++++++++++++
Dcss/vocab.css | 14--------------
Adata/index.html | 26++++++++++++++++++++++++++
Rvocab/Verbs.csv -> data/verbs.csv | 0
Adata/vocab.csv | 810+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mindex.html | 2+-
Mjs/app.js | 12++++++------
Mjs/filterInput.js | 18+++++++++---------
Mjs/filters.js | 63+++++++++++++++++++++++++++------------------------------------
Mjs/global.js | 15+++++----------
Mjs/reference.js | 27++++-----------------------
Mreference.html | 39+++++++--------------------------------
Mscripts/scraper.py | 6+++---
Mtests/test.filterInput.js | 38+++++++++++++++++++-------------------
Mtests/test.filters.js | 642+++++++++++++++++++++++++++++++++++++++----------------------------------------
Mtests/test.quizzer.js | 1-
Dvocab/Adjectives.csv | 36------------------------------------
Dvocab/Adverbs.csv | 10----------
Dvocab/Childhood.csv | 38--------------------------------------
Dvocab/Clothes.csv | 60------------------------------------------------------------
Dvocab/Colors.csv | 13-------------
Dvocab/Days.csv | 9---------
Dvocab/Family.csv | 37-------------------------------------
Dvocab/Food.csv | 42------------------------------------------
Dvocab/Health.csv | 65-----------------------------------------------------------------
Dvocab/House.csv | 90-------------------------------------------------------------------------------
Dvocab/Months.csv | 14--------------
Dvocab/Nature.csv | 107-------------------------------------------------------------------------------
Dvocab/Numbers.csv | 32--------------------------------
Dvocab/Prepositions.csv | 26--------------------------
Dvocab/Professions.csv | 42------------------------------------------
Dvocab/Questions.csv | 8--------
Dvocab/Transitions.csv | 42------------------------------------------
Dvocab/Vacation.csv | 61-------------------------------------------------------------
Dvocab/Weather.csv | 34----------------------------------
Dvocab/index.html | 56--------------------------------------------------------
37 files changed, 1272 insertions(+), 1334 deletions(-)

diff --git a/README.md b/README.md @@ -4,38 +4,36 @@ Try it out [here](https://ashermorgan.github.io/Spanish-Quizzer/). ## Features - Supports practice for all four language skills: reading, listening, writing, and speaking. -- Lots of vocab sets and filters. +- Lots of filters for both vocabulary and verb conjugations. - Easily type special characters (``` a` ``` → `á`, `n~` → `ñ`, `u~` → `ü`) -- Spanish vocabulary reference tables (available [here](https://ashermorgan.github.io/Spanish-Quizzer/reference.html)) - -## Vocabulary Sets -Spanish-Quizzer comes with many vocabulary sets that can be filtered by word type, tense, direction, and more. Those vocabulary sets are: -- Common Words: - - Common Adjectives - - Common Adverbs - - Common Prepositions - - Common Transitions - - Common Verbs -- Basic Words: - - Colors (Los Colores) - - Days (Los Días) - - Months (Los Meses) - - Numbers (Los Números) - - Questions (Las Preguntas) -- Advanced Words: - - Childhood (La Niñez) - - Clothes (La Ropa) - - Family (La Familia) - - Food (La Comida) - - Health (La Salud) - - House (La Casa) - - Nature (La Naturaleza) - - Professions (Las Profesiones) - - Vacations (Las Vacaciones) - - Weather (La Clima) +- Spanish reference tables (available [here](https://ashermorgan.github.io/Spanish-Quizzer/reference.html)) ## Vocabulary Filters -The following filters can be used on vocabulary sets: +The following filters can be used on vocabulary: +- Category filters + - Common Words + - Common Adjectives + - Common Adverbs + - Common Prepositions + - Common Transitions + - Common Verbs + - Basic Words + - Colors (Los Colores) + - Days (Los Días) + - Months (Los Meses) + - Numbers (Los Números) + - Questions (Las Preguntas) + - Advanced Words + - Childhood (La Niñez) + - Clothes (La Ropa) + - Family (La Familia) + - Food (La Comida) + - Health (La Salud) + - House (La Casa) + - Nature (La Naturaleza) + - Professions (Las Profesiones) + - Vacations (Las Vacaciones) + - Weather (La Clima) - Language filters - Enlish to and from Spanish - English to Spanish diff --git a/css/data.css b/css/data.css @@ -0,0 +1,15 @@ +main { + max-width: max-content; + margin: auto; + padding: 10px; + text-align: left; +} + +h2 { + margin-top: 15px; +} + +li { + margin-left: 30px; + margin-top: 5px; +} diff --git a/css/vocab.css b/css/vocab.css @@ -1,14 +0,0 @@ -main { - max-width: 500px; - margin: auto; - padding: 10px; - text-align: left; -} - -h2 { - margin-top: 15px; -} - -li { - margin-left: 30px; -} diff --git a/data/index.html b/data/index.html @@ -0,0 +1,26 @@ +<!DOCTYPE html> +<html lang="en"> + <head> + <meta charset="utf-8"/> + <title>Data - Spanish-Quizzer</title> + <meta name="description" content="Quiz yourself on Spanish vocabulary and conjugations through a free and highly customizable web interface."> + <meta name="viewport" content="width=device-width, user-scalable=no"/> + <link rel="icon" type="image/png" href="../images/favicon-32.png"> + <link rel="apple-touch-icon" sizes="180x180" href="../images/apple-touch-icon.png"> + <link rel="stylesheet" href="../css/global.css"> + <link rel="stylesheet" href="../css/data.css"> + <script src="../js/global.js"></script> + </head> + + <body onload="SetTheme();"> + <header onclick="window.location = '../';">Spanish-Quizzer</header> + + <main> + <h1>Spanish-Quizzer Data</h1> + <ul> + <li><a href="vocab.csv">Vocabulary Data</a></li> + <li><a href="verbs.csv">Verb Conjugation Data</a></li> + </ul> + </main> + </body> +</html> diff --git a/vocab/Verbs.csv b/data/verbs.csv diff --git a/data/vocab.csv b/data/vocab.csv @@ -0,0 +1,809 @@ +English,Spanish,Type,Category +"About, Over",Sobre,Preposition,Prepositions +According to,Según,Preposition,Prepositions +Additionally,Adicionalmente,Other,Transitions +After,"Tras, Después de",Preposition,Prepositions +Afterwards,Más tarde,Other,Transitions +Against,Contra,Preposition,Prepositions +AIDS,El SIDA,Noun,Health +Alarm Clock,El despertador,Noun,House +Allergy,La alergia,Noun,Health +Almost always,Casi siempre,Adverb,Adverbs +Almost never,Casi nunca,Adverb,Adverbs +"Although, Even if",Aunque,Other,Transitions +Always,Siempre,Adverb,Adverbs +Ambulance,La ambulancia,Noun,Health +Amusement park,El parque de diversiones,Noun,Childhood +Apartment,El apartamento,Noun,House +Apendicitis,El apendicitis,Noun,Health +Appointment,La consulta,Noun,Health +April,Abril,Noun,Months +Architect,El arquitecto,Noun,Professions +Armchair,El sillón,Noun,House +Art,El arte,Noun,House +Artist,El artista,Noun,Professions +Artistic,Artístico,Adjective,Adjectives +As,"Como, Ya que",Other,Transitions +As long as,Siempre que,Other,Transitions +As soon as,Apenas,Other,Transitions +At first,Al principio,Other,Transitions +At last,Al final,Other,Transitions +"At, By means of, To",A,Preposition,Prepositions +Athletic,Atlético,Adjective,Adjectives +August,Agosto,Noun,Months +Aunt,La tía,Noun,Family +Backpack,La mochila,Noun,Nature +Bad,Malo,Adjective,Adjectives +Bad Weather,El mal tiempo,Noun,Weather +Bag,La bolsa,Noun,Clothes +Bakery,La panadería,Noun,Vacation +Balcony,El balcón,Noun,House +Barbeque,La Barbacoa,Noun,Nature +Basement,El sótano,Noun,House +Bat,El murciélago,Noun,Nature +Bathing Suit,El traje de baño,Noun,Clothes +Bathrobe,La bata,Noun,Clothes +Bathroom,El baño,Noun,House +Bathtub,La bañera,Noun,House +Beach,La playa,Noun,Nature +Beanie,La gorra,Noun,Clothes +Bear,El oso,Noun,Nature +Beautiful,Bello,Adjective,Nature +"Beautiful, Nice",Bello,Adjective,Vacation +Because of,A causa de,Other,Transitions +Bed,La cama,Noun,House +Bedroom,La habitación,Noun,House +Before,Antes de,Preposition,Prepositions +Behind,"Tras, Detrás de",Preposition,Prepositions +Belt,El cinturón,Noun,Clothes +Better,Mejor,Adjective,Nature +Between,Entre,Preposition,Prepositions +Big,Grande,Adjective,Adjectives +Big,Grande,Adjective,House +Bill,La cuenta,Noun,Food +Biodiversity,La biodiversidad,Noun,Nature +Bird,"El ave, El pájaro",Noun,Nature +Bitter,Amargo,Adjective,Food +Black,Negro,Adjective,Colors +Blonde hair,Pelo rubio,Adjective,Adjectives +Blood,La sangre,Noun,Health +Blouse,La blusa,Noun,Clothes +Blue,Azúl,Adjective,Colors +Bonfire,La fogata,Noun,Nature +Boots,Las botas,Noun,Clothes +Bowl,El plato hondo,Noun,Food +Boyfriend,El novio,Noun,Family +Bracelet,La pulsera,Noun,Clothes +Branch,La rama,Noun,Nature +Bratty,Malcriado,Adjective,Childhood +Bricks,Los ladrillos,Noun,House +Broker,El agente de bolsa,Noun,Professions +Brown,Marrón,Adjective,Colors +Brown hair,Pelo castaño,Adjective,Adjectives +Bus stop,La parada de autobus,Noun,Vacation +Businessman,El hombre de negocios,Noun,Professions +But,Pero,Other,Transitions +Butcher,La carnicería,Noun,Vacation +Buttons,Los botones,Noun,Clothes +By,Por,Preposition,Prepositions +Cafeteria,La cafetería,Noun,Vacation +Calendar,El calendario,Noun,House +Calm,Tranquilo,Adjective,Childhood +Calm,Tranquilo,Adjective,Nature +Camp,El campamento,Noun,Nature +Camper,El campisto,Noun,Nature +Camper van,La autocaravana,Noun,Nature +Cancer,El cáncer,Noun,Health +Candy store,La dulcería,Noun,Vacation +Career,La carrera,Noun,Professions +"Carpet, Rug",La alfombra,Noun,House +Carpinter,El carpintero,Noun,Professions +Cash,El dinero en efectivo,Noun,Vacation +"Cast, Plaster",El yeso,Noun,Health +Cat,El gato,Noun,Nature +Ceiling,El techo,Noun,House +Chair,La silla,Noun,House +Chandelier,La araña de luces,Noun,House +Chicken pox,La varicela,Noun,Health +Child,El hijo,Noun,Family +Circus,El circo,Noun,Childhood +Clean,Limpio,Adjective,Food +Clinic,La clínica,Noun,Health +Clock,El reloj,Noun,House +Closed,Cerrado,Adjective,Food +Closet,El armario,Noun,House +Clothes,La ropa,Noun,House +Clothing store,La tienda de ropa,Noun,Vacation +Cloud,La nube,Noun,Weather +Cold,El resfriado,Noun,Health +Comic strips,Las tiras cómicas,Noun,Childhood +Company,La compañía,Noun,Professions +Compass,La brújula,Noun,Nature +Computer,La computadora,Noun,House +Condominium,El condominio,Noun,House +Cotton,El algodón,Noun,Clothes +Cough,La tos,Noun,Health +Cousin,El primo,Noun,Family +Cover Up,La playera,Noun,Clothes +Cow,La vaca,Noun,Nature +Credit card,La tarjeta de crédito,Noun,Vacation +Crutches,Las muletas,Noun,Health +Cup,"La taza,El vaso",Noun,Food +Curtains,Las cortinas,Noun,House +Cutlery,Los cubiertos,Noun,Food +Dad,El papi,Noun,Family +Dangerous,Peligroso,Adjective,Nature +Dark,Oscuro,Adjective,House +Daughter in law,La nuera,Noun,Family +December,Diciembre,Noun,Months +Delicious,Delicioso,Adjective,Food +Dense,Denso,Adjective,Nature +Dentist,El dentista,Noun,Professions +Desert,El desierto,Noun,Nature +Designer,El diseñador,Noun,Professions +Desk,El escritorio,Noun,House +Despite,A pesar de,Other,Transitions +Dessert,El postre,Noun,Food +Detective,El detective,Noun,Professions +Diarrhea,La diarrea,Noun,Health +Dining room,El comedor,Noun,House +Dirty,Sucio,Adjective,Food +Dishes,Los platos,Noun,House +Dishwasher,El lavaplatos,Noun,House +Disorganized,Desorganizado,Adjective,Adjectives +Doctor,El médico,Noun,Health +Doctor,El doctor,Noun,Professions +Doctor's office,La oficina del médico,Noun,Health +Dog,El perro,Noun,Nature +Doll,La muñeca,Noun,Childhood +Donkey,El burro,Noun,Nature +Double room,La habitación doble,Noun,Vacation +Downpour,El aguacero,Noun,Weather +Dress,El vestido,Noun,Clothes +Dresser,La cómoda,Noun,House +Drink,La bebida,Noun,Food +Duck,El pato,Noun,Nature +During,Durante,Other,Transitions +Earring,El arete,Noun,Clothes +Earthquake,El terremoto,Noun,Weather +Eight,Ocho,Noun,Numbers +Eighteen,Dieciocho,Noun,Numbers +Eighty,Ochenta,Noun,Numbers +Electric train,El tren eléctrico,Noun,Childhood +Elephant,El elefante,Noun,Nature +Elevator,El ascensor,Noun,Vacation +Eleven,Once,Noun,Numbers +Engineer,El ingeniero,Noun,Professions +Enterprise,La empresa,Noun,Professions +Entry way,"La entrada, El recibidor",Noun,House +Environment,El medioambiente,Noun,Nature +Equipment,El equipo,Noun,Nature +Executive,El ejecutivo,Noun,Professions +Expensive,Caro,Adjective,Vacation +Fantastic,Fantástico,Adjective,Adjectives +Father,El padre,Noun,Family +Fauna,La fauna,Noun,Nature +February,Febrero,Noun,Months +Fierce,Feroz,Adjective,Nature +Fifteen,Quince,Noun,Numbers +Fifty,Cincuenta,Noun,Numbers +Finally,"Finalmente, Por último",Other,Transitions +Fireman,El bombero,Noun,Professions +First,Primero,Other,Transitions +First and foremost,Ante todo,Other,Transitions +Fish,El pez,Noun,Nature +Fish store,La pescadería,Noun,Vacation +Fishing pole,La caña de pescar,Noun,Nature +Five,Cinco,Noun,Numbers +Flavor,El sabor,Noun,Food +Flip Flops,Las chanclas,Noun,Clothes +Flood,El diluvio,Noun,Weather +Floor,El piso,Noun,House +Flora,La flora,Noun,Nature +Florist,La florería,Noun,Vacation +Flu,La gripe,Noun,Health +Fly,La mosca,Noun,Nature +Food,La comida,Noun,Food +For,"Por, Para",Preposition,Prepositions +For example,Por ejemplo,Other,Transitions +Forecast,El pronóstico,Noun,Weather +Forest,El bosque,Noun,Nature +Fork,El tenedor,Noun,Food +Four,Cuatro,Noun,Numbers +Fourteen,Catorce,Noun,Numbers +Fourty,Cuarenta,Noun,Numbers +Fox,El zorro,Noun,Nature +Free time,El tiempo libre,Noun,Vacation +Freezer,El congelador,Noun,House +Friday,Viernes,Noun,Days +"Friendly, Kind",Amable,Adjective,Adjectives +Frog,La rana,Noun,Nature +From time to time,De vez en cuando,Adverb,Adverbs +"From, Since",Desde,Preposition,Prepositions +Frost,La escarcha,Noun,Weather +Fruit store,La frutería,Noun,Vacation +Full,Lleno,Adjective,Food +Full time,Todo tiempo,Noun,Professions +Funeral parlor,La funeraría,Noun,Vacation +Funny,Cómico,Adjective,Adjectives +Fur,El pelaje,Noun,Nature +Furniture,Los muebles,Noun,House +Furniture store,La mueblería,Noun,Vacation +Furthermore,Además,Other,Transitions +Garage,El garaje,Noun,House +Garbage can,El basurero,Noun,House +Geography,La geografía,Noun,Nature +Girlfriend,La novia,Noun,Family +Glasses,Los anteojos,Noun,Clothes +Gloves,Los guantes,Noun,Clothes +Gloves,Los guantes,Noun,Health +Goat,La cabra,Noun,Nature +God father,El padrino,Noun,Family +God mother,La madrina,Noun,Family +Good,Bueno,Adjective,Adjectives +Good natured,Afable,Adjective,Adjectives +Good Weather,El buen tiempo,Noun,Weather +Goose,El ganso,Noun,Nature +Grandchild,El nieto,Noun,Family +Grandparent,El abuelo,Noun,Family +Gray,Gris,Adjective,Colors +Great grandchild,El bisnieto,Noun,Family +Great grandparent,El bisabuelo,Noun,Family +Green,Verde,Adjective,Colors +Grocery store,La abarrotería,Noun,Vacation +Hair salon,La peluquería,Noun,Vacation +Hairy,Peludo,Adjective,Nature +Half time,Medio tiempo,Noun,Professions +Handicrafts,Las artesanías,Noun,Vacation +Handsome,Guapo,Adjective,Adjectives +Happy,Alegre,Adjective,Adjectives +Hard working,Trabajador,Adjective,Adjectives +Hardware store,La ferretería,Noun,Vacation +Hat,El sombrero,Noun,Clothes +Headache,El dolor de cabeza,Noun,Health +Healthy,"Sano, Saludable",Adjective,Health +Heart Attack,"El infarto, El ataque de corazón",Noun,Health +Heavy,Pesado,Adjective,Health +Hen,La gallina,Noun,Nature +High Heels,Los tacones,Noun,Clothes +Home,El hogar,Noun,House +Horse,El caballo,Noun,Nature +Hospital,El hospital,Noun,Health +Hotel,El hotel,Noun,Vacation +Hotel room,La habitación,Noun,Vacation +How,Cómo,Other,Questions +However,Sin embargo,Other,Transitions +Hundred,Cien,Noun,Numbers +Hunger,El hambre,Noun,Food +Husband,El marido,Noun,Family +Ice cream store,La heladería,Noun,Vacation +If,Si,Other,Transitions +Imaginary,Imaginario,Adjective,Childhood +In a word,En pocas palabras,Other,Transitions +In case,En caso de que,Other,Transitions +In front of,"Delante de, Enfrente de",Preposition,Prepositions +In laws,Los suegros,Noun,Family +In order to,Para,Preposition,Prepositions +In other words,En otras palabras,Other,Transitions +In that case,En ese caso,Other,Transitions +In this way,De esta manera,Other,Transitions +"In, On",En,Preposition,Prepositions +Infection,La infección,Noun,Health +Injection,La inyección,Noun,Health +Inn,El hostal,Noun,Vacation +Inside of,Dentro de,Preposition,Prepositions +Intelligent,Inteligente,Adjective,Adjectives +Interesting,Interesante,Adjective,Adjectives +Island,La isla,Noun,Nature +Jacket,La chaqueta,Noun,Clothes +January,Enero,Noun,Months +Jealous,Celoso,Adjective,Childhood +Jewelry,Las joyas,Noun,Vacation +Jewelry store,La joyería,Noun,Vacation +Job,"El empleo, El trabajo, El oficio",Noun,Professions +July,Julio,Noun,Months +June,Junio,Noun,Months +Jungle,La selva,Noun,Nature +Key,La llave,Noun,Vacation +Kitchen,La cocina,Noun,House +Knife,El cuchillo,Noun,Food +Knit Scarf,La bufanda,Noun,Clothes +Lake,El lago,Noun,Nature +Lamp,La lámpara,Noun,House +Landscape,El paisaje,Noun,Nature +Lawyer,El abogado,Noun,Professions +Lazy,Perezoso,Adjective,Adjectives +Leather,El cuero,Noun,Clothes +Library,La librería,Noun,Vacation +Light,La luz,Noun,House +Lightning,El relámpago,Noun,Weather +Living Room,La sala,Noun,House +Lodging,El alojamiento,Noun,Vacation +Long Sleeve,La manga larga,Noun,Clothes +Loose,Flojo,Adjective,Clothes +Loving,Cariñoso,Adjective,Adjectives +Luminous,Luminoso,Adjective,House +Luxurious,Lujoso,Adjective,House +Magazines,Las revistas,Noun,House +Main dish,La entrada,Noun,Food +Main Door,La puerta principal,Noun,House +Map,El mapa,Noun,Nature +March,Marzo,Noun,Months +Mask,La mascarilla,Noun,Health +May,Mayo,Noun,Months +Meanwhile,Mientras tanto,Other,Transitions +Measels,El sarampión,Noun,Health +Meeting,La reunión,Noun,Professions +Menu,"El menú, La carta",Noun,Food +Microwave,El microondas,Noun,House +Million,Millón,Noun,Numbers +Mirror,El espejo,Noun,House +Mischief,La travesura,Noun,Childhood +Mist,La neblina,Noun,Weather +Modest,Modesto,Adjective,House +Mom,La mami,Noun,Family +Monday,Lunes,Noun,Days +Monkey,El mono,Noun,Nature +Mother,La madre,Noun,Family +Mountains,Las montañas,Noun,Nature +Mouse,El ratón,Noun,Nature +Mumps,Las paperas,Noun,Health +Napkin,La servilleta,Noun,Food +Naughty,Travieso,Adjective,Childhood +Near,Cerca de,Preposition,Prepositions +Necklace,El collar,Noun,Clothes +Needle,La aguja,Noun,Health +Neighborhood,El vecindario,Noun,House +Neighbors,Los vecinos,Noun,House +Nephew,El sobrino,Noun,Family +Never,Nunca,Adverb,Adverbs +New,Nuevo,Adjective,House +Newlyweds,Los novios,Noun,Family +Nice,Simpático,Adjective,Adjectives +Niece,La sobrina,Noun,Family +Nine,Nueve,Noun,Numbers +Nineteen,Diecinueve,Noun,Numbers +Ninety,Noventa,Noun,Numbers +Noisy,Ruidoso,Adjective,House +November,Noviembre,Noun,Months +Now,Ahora,Other,Transitions +Now that,Ahora que,Other,Transitions +Nurse,La enfermera,Noun,Health +Nurse,El enfermero,Noun,Professions +Obedient,Obediente,Adjective,Childhood +Ocean,El océano,Noun,Nature +October,Octubre,Noun,Months +Of,De,Preposition,Prepositions +Office,La oficina,Noun,House +Old,Viejo,Adjective,Adjectives +Old,Viejo,Adjective,House +Older,Mayor,Adjective,Family +On the other hand,Por otro lado,Other,Transitions +On top of,Encima de,Preposition,Prepositions +One,Uno,Noun,Numbers +Only child,El único hijo,Noun,Family +Open,Abierto,Adjective,Food +Open-air market,El mercado al aire libre,Noun,Vacation +Orange,Anaranjado,Adjective,Colors +Organized,Organizado,Adjective,Adjectives +Outside of,Fuera de,Preposition,Prepositions +Oven,El horno,Noun,House +Overcoat,El abrigo,Noun,Clothes +Paintings,Las pinturas,Noun,House +Pajamas,La pijama,Noun,Clothes +Pants,Los pantalones,Noun,Clothes +Paper clip,Los sujetapapeles,Noun,House +Paper store,La papelería,Noun,Vacation +Parent in Law,El suegro,Noun,Family +Partner,La pareja,Noun,Family +Path,El sendero,Noun,Nature +Pepper,La pimienta,Noun,Food +Pet store,La tienda de mascotas,Noun,Vacation +Pharmacy,La farmacía,Noun,Vacation +Phone,El teléfono,Noun,House +Photographs,Las fotografías,Noun,House +Pig,El cerdo,Noun,Nature +Pillow,La almohada,Noun,House +Pills,Las pastillas,Noun,Health +Pilot,El piloto,Noun,Professions +Pink,Rosado,Adjective,Colors +Plaid,De cuadra,Adjective,Clothes +"Plate, Dish, Meal",El plato,Noun,Food +Pleasant,Agradable,Adjective,Adjectives +Pneumonia,La pulmonía,Noun,Health +Policeman,El policía,Noun,Professions +Politician,El político,Noun,Professions +Polka Dot,De manchas,Adjective,Clothes +Poorly,Mal,Adverb,Adverbs +Postcard,La tarjeta postal,Noun,Vacation +Postman,El cartero,Noun,Professions +Pots,Las ollas,Noun,House +Precious,Precioso,Adjective,Childhood +Precipitation,La precipitación,Noun,Weather +Precocious,Precoz,Adjective,Childhood +Prescription,La receta,Noun,Health +Pressure,La presión,Noun,Weather +Pretty,Bonito,Adjective,Adjectives +Primary school,La primaria,Noun,Childhood +Profound,Profundo,Adjective,Nature +Programmer,El programador,Noun,Professions +Promotion,El ascenso,Noun,Professions +Purple,Morada,Adjective,Colors +Quiet,Tranquilo,Adjective,House +Rabbit,El conejo,Noun,Nature +Rain,La lluvia,Noun,Weather +Raise,El aumento de sueldo,Noun,Professions +Rat,La rata,Noun,Nature +Reception desk,La recepción,Noun,Vacation +Red,Rojo,Adjective,Colors +Red haired,Pelirrojo,Adjective,Adjectives +Refreshment,El refresco,Noun,Food +Refrigerator,La refrigeradora,Noun,House +Repeating Design,De diseño,Adjective,Clothes +Reservation,La reserva,Noun,Food +Reservation,La reservación,Noun,Vacation +Restraunt,El restaurante,Noun,Food +Rich,Rico,Adjective,Food +Ring,El anillo,Noun,Clothes +River,El río,Noun,Nature +Salt,La sal,Noun,Food +Salty,Salado,Adjective,Food +Sand,La arena,Noun,Nature +Sand box,La cancha de arena,Noun,Childhood +Satisfied,Satisfecho,Adjective,Food +Saturday,Sábado,Noun,Days +Saucer,El platillo,Noun,Food +Scar,La cicatriz,Noun,Health +Scientist,El científico,Noun,Professions +Sea,El mar,Noun,Nature +Sea food,Los mariscos,Noun,Food +Seal,La foca,Noun,Nature +Second,Segundo,Other,Transitions +Secondary school,La secundaria,Noun,Childhood +September,Septiembre,Noun,Months +Serious,Serio,Adjective,Adjectives +Seven,Siete,Noun,Numbers +Seventeen,Diecisiete,Noun,Numbers +Seventy,Setenta,Noun,Numbers +Sheep,La oveja,Noun,Nature +Sheets,Las sábanas,Noun,House +Shelf,El estante,Noun,House +Shirt,La camisa,Noun,Clothes +Shoe store,La zapatería,Noun,Vacation +Shoes,Los zapatos,Noun,Clothes +Shore,La orilla,Noun,Nature +Short,Bajo,Adjective,Adjectives +Short Sleeve,La manga corta,Noun,Clothes +Shorts,"Los chorts, Los pantalones cortos",Noun,Clothes +Shower,La ducha,Noun,House +Showers,Los chubascos,Noun,Weather +Sibling,El hermano,Noun,Family +Sibling in law,El cuñado,Noun,Family +Sick,Enfermo,Adjective,Health +Silk,La seda,Noun,Clothes +Since,"Como, Desde, Ya que",Other,Transitions +Single room,La habitación individual,Noun,Vacation +Sink,El lavabo,Noun,House +Six,Seis,Noun,Numbers +Sixteen,Dieciséis,Noun,Numbers +Sixty,Sesenta,Noun,Numbers +Skirt,La falda,Noun,Clothes +Skunk,La mofeta,Noun,Nature +Sky,El cielo,Noun,Weather +Sleeping bag,El saco de dormir,Noun,Nature +Sleeve,La manga,Noun,Clothes +Sleeveless,Sin mangas,Adjective,Clothes +Sloth,El perezoso,Noun,Nature +Small,Pequeño,Adjective,Adjectives +Small,Pequeño,Adjective,House +Smallpox,La viruela,Noun,Health +Snake,"La serpiente, La culebra",Noun,Nature +Snow,La nieve,Noun,Weather +So,Entonces,Other,Transitions +Soap,El jabón,Noun,House +Socks,Los calcetines,Noun,Clothes +Sofa,El sofá,Noun,House +Sometimes,A menudo,Adverb,Adverbs +Son in law,El yerno,Noun,Family +Sore throat,El dolor de garganta,Noun,Health +Sour,Agrio,Adjective,Food +Souvenir,El recuerdo,Noun,Vacation +Spacious,Espacioso,Adjective,House +Spandex,La licra,Noun,Clothes +Special,Especial,Adjective,Adjectives +Spider,La araña,Noun,Nature +Spoiled,Mimado,Adjective,Childhood +Spoon,La cuchara,Noun,Food +Squirrel,La ardilla,Noun,Nature +Stapler,La grapadora,Noun,House +Stars,Las estrellas,Noun,Nature +Step father,El padrastro,Noun,Family +Step mother,La madrastra,Noun,Family +Step sibling,El hermanastro,Noun,Family +Stomach ache,El dolor de estómago,Noun,Health +Stone,La losa,Noun,House +Storm,La tormenta,Noun,Weather +Stove,"La estufa, La cocina",Noun,House +Striped,De rayas,Adjective,Clothes +Studious,Estudioso,Adjective,Adjectives +Stuffed animal,El muñeco de peluche,Noun,Childhood +Suit,El traje,Noun,Clothes +Sunday,Domingo,Noun,Days +Sunglasses,Las gafas,Noun,Clothes +Supermarket,El supermercado,Noun,Vacation +Surgery,La cirugía,Noun,Health +Sweater,El suéter,Noun,Clothes +Sweatshirt,La sudadera,Noun,Clothes +Sweet,Dulce,Adjective,Adjectives +Sweet,Dulce,Adjective,Food +Table,La mesa,Noun,Food +Table,La mesa,Noun,House +Tablecloth,El mantel,Noun,House +Tall,Alto,Adjective,Adjectives +Teacher,El profesor,Noun,Professions +Television,"El televisor, La televisión",Noun,House +Temperature,La temperatura,Noun,Weather +"Temperature, Fever","La fiebre, La temperatura",Noun,Health +Ten,Diez,Noun,Numbers +Tender,Tierno,Adjective,Childhood +Tennis Shoes,Los tenís,Noun,Clothes +Tent,La carpa,Noun,Nature +Thanks to,Gracias a,Other,Transitions +That's why,Por eso,Other,Transitions +Then,"Entonces, Luego",Other,Transitions +Therefore,Por lo tanto,Other,Transitions +Thermometer,El termómetro,Noun,Weather +Thirst,La sed,Noun,Food +Thirteen,Trece,Noun,Numbers +Thirty,Treinta,Noun,Numbers +Thousand,Mil,Noun,Numbers +Three,Tres,Noun,Numbers +Thunder,El trueno,Noun,Weather +Thursday,Jueves,Noun,Days +Thus,Así,Other,Transitions +Tie,La corbata,Noun,Clothes +Tight,Apretado,Adjective,Clothes +Tights,Las medias,Noun,Clothes +Tip,La propina,Noun,Food +Tire store,La llantería,Noun,Vacation +To adore,Adorar,Verb,Nature +To arrive,Llegar,Verb,Verbs +To ask a question,Preguntar,Verb,Verbs +To ask for,Pedir,Verb,Verbs +To attack,Atacar,Verb,Nature +To attend,Asistir,Verb,Verbs +To bargain,Regatear,Verb,Vacation +To be,Estar,Verb,Verbs +To be,Ser,Verb,Verbs +To be able to,Poder,Verb,Verbs +To be born,Nacer,Verb,Verbs +To be clear,Estar claro,Verb,Weather +To be cloudy,Estar nublado,Verb,Weather +To be cold,Hacer frío,Verb,Weather +To be cool,Hacer fresco,Verb,Weather +To be hot,Hacer calor,Verb,Weather +To be on vacation,Estar de vacaciones,Verb,Vacation +To be overcast,Estar despejado,Verb,Weather +To be pleasing,Gustar,Verb,Verbs +To be raining,Hacer lluvia,Verb,Weather +To be snowing,Hacer nieve,Verb,Weather +To be sunny,Hacer sol,Verb,Weather +To be windy,Hacer viento,Verb,Weather +To begin,Para empezar,Other,Transitions +To begin,Comenzar,Verb,Verbs +To bite,Morder,Verb,Nature +To bother,Molestar,Verb,Nature +To break,Romper,Verb,Childhood +To bring,Traer,Verb,Nature +To bring,Traer,Verb,Verbs +To brush,Cepillar,Verb,Nature +To buy,Comprar,Verb,Verbs +To call,Llamar,Verb,Verbs +To camp,Acampar,Verb,Nature +To Camp,Acampar,Verb,Vacation +To change,Cambiar,Verb,Nature +To clean,Limpiar,Verb,Verbs +To climb,"Escalar, Trepar",Verb,Nature +To climb trees,Treparse los árboles,Verb,Childhood +To close,Cerrar,Verb,Nature +To color,Colorear,Verb,Childhood +To come,Venir,Verb,Verbs +To conclude,Para concluir,Other,Transitions +To construct,Construir,Verb,Childhood +To cook,Cocinar,Verb,Food +To cough,Toser,Verb,Health +To count,Contar,Verb,Nature +To cure,Curar,Verb,Health +To dance,Bailar,Verb,Verbs +To die,Morir,Verb,Health +To die,Morir,Verb,Verbs +To disobey,Desobedecer,Verb,Childhood +"To do, To make",Hacer,Verb,Verbs +To draw,Dibujar,Verb,Verbs +To dress up,Disfrazarse,Verb,Childhood +To drink,Beber,Verb,Verbs +To eat,Comer,Verb,Verbs +To eat breakfast,Desayunar,Verb,Verbs +To eat dinner,Cenar,Verb,Verbs +To eat lunch,Almorzar,Verb,Verbs +To employ,Emplear,Verb,Professions +To enjoy oneself,Divertirse,Verb,Verbs +To examine,"Examinar, Revisar",Verb,Health +To faint,Desmayarse,Verb,Health +To fall,Caerse,Verb,Health +To feel,Sentirse,Verb,Health +To feel,Sentirse,Verb,Verbs +To fight,Pelearse,Verb,Childhood +"To find, To meet",Encontrar,Verb,Verbs +To fish,Pescar,Verb,Vacation +To fix,Arreglar,Verb,Nature +To fracture,Fracturarse,Verb,Health +To get burned,Quemarse,Verb,Health +To get cut,Cortarse,Verb,Health +To get fired,Despedir,Verb,Professions +To get hit,Golpearse,Verb,Health +To get mad,Enojar,Verb,Nature +To get motion sickness,Merearse,Verb,Health +To get sick,Enfermarse,Verb,Health +To get up,Levantarse,Verb,Verbs +To give,Dar,Verb,Verbs +To go,Ir,Verb,Verbs +To go on a day trip,Hacer una excursion,Verb,Vacation +To go sightseeing,Ver las atracciones,Verb,Vacation +To go to bed,Acostarse,Verb,Verbs +"To happen, To spend time",Pasar,Verb,Verbs +To have,Tener,Verb,Verbs +To help,Ayudar,Verb,Nature +To hide,Esconder,Verb,Childhood +To hike,Dar una caminata,Verb,Vacation +To hit,Pegar,Verb,Nature +To hug,Abrazar,Verb,Nature +To hurt,Doler,Verb,Health +To ignore,Ignorar,Verb,Nature +To invert,Invertir,Verb,Professions +To iron,Planchar,Verb,House +To jump,Saltar,Verb,Childhood +To know,Saber,Verb,Verbs +To know,Conocer,Verb,Verbs +To lead,Dirigir,Verb,Nature +To learn,Aprender,Verb,Verbs +To leave,Dejar,Verb,Professions +To leave,Salir,Verb,Verbs +To light the fire,Prender fuego,Verb,Nature +To listen,Escuchar,Verb,Verbs +To live,Vivir,Verb,Verbs +To look for,Buscar,Verb,Verbs +"To look, To watch",Mirar,Verb,Verbs +To lose,Perder,Verb,Verbs +To make the bed,Hacer la cama,Verb,House +"To mount, To ride",Montar,Verb,Verbs +To mow the lawn,Cortar el césped,Verb,House +To navigate,Navegar,Verb,Nature +To need,Necesitar,Verb,Verbs +To not litter,No tirar basura,Verb,Nature +To obey,Obedecer,Verb,Childhood +To observe,Observar,Verb,Nature +To organize,Organizar,Verb,Verbs +To ought to,Deber,Verb,Verbs +To pass away,Fallecer,Verb,Health +To pay,Pagar,Verb,Verbs +To play,Jugar,Verb,Verbs +To play hide and seek,Jugar al escondite,Verb,Childhood +To play hopscotch,Jugar a la rayuela,Verb,Childhood +To play with dolls,Jugar con muñecas,Verb,Childhood +To practice,Practicar,Verb,Verbs +To prepare,Preparar,Verb,Verbs +To put,Poner,Verb,Verbs +To put out a fire,Apagar fuego,Verb,Nature +To read,Leer,Verb,Verbs +To receive,Recibir,Verb,Verbs +To recover,Recuperarse,Verb,Health +To recycle,Reciciar,Verb,Nature +To relax,Descansar,Verb,Verbs +To resign,Renunciar,Verb,Professions +To respect,Respetar,Verb,Nature +To retire,Jubilarse,Verb,Professions +To return,Regresar,Verb,Verbs +To ride a horse,Montar a caballo,Verb,Vacation +To ride a tricycle,Andar en triciclo,Verb,Childhood +To run,Correr,Verb,Verbs +"To say, To tell",Decir,Verb,Verbs +To see,Ver,Verb,Verbs +To send postcards,Mandar tarjetas postales,Verb,Vacation +To set the table,Poner la mesa,Verb,House +To show,Mostrar,Verb,Verbs +To sing,Cantar,Verb,Verbs +To sleep,Dormir,Verb,Verbs +To sneeze,Estornudar,Verb,Health +To speak,Hablar,Verb,Verbs +To stay,Quedar,Verb,Nature +To study,Estudiar,Verb,Verbs +To succeed,Tener éxito,Verb,Professions +To suffer,Sufrir,Verb,Health +To sweat,Sudar,Verb,Health +To swell,Hincharse,Verb,Health +To swim,Nadar,Verb,Verbs +To take,Tomar,Verb,Verbs +To take care of,Cuidar,Verb,Verbs +To take care of the dog,Cuidar al perro,Verb,House +To take out,Sacar,Verb,Verbs +To take photos,Tomar fotos,Verb,Vacation +"To take, To wear",Llevar,Verb,Verbs +To teach,Enseñar,Verb,Verbs +To think,Pensar,Verb,Verbs +To throw up,Vomitar,Verb,Health +To touch,Tocar,Verb,Verbs +To travel,Viajar,Verb,Verbs +To understand,Entender,Verb,Verbs +To vaccum,Pasar la aspiradora,Verb,House +To visit a museum,Visitar un museo,Verb,Vacation +To wake up,Despertarse,Verb,Verbs +To walk,Caminar,Verb,Verbs +To want,Querer,Verb,Verbs +To wash,Lavar,Verb,Verbs +To win,Ganar,Verb,Verbs +To work,Trabajar,Verb,Verbs +To write,Escribir,Verb,Verbs +Toad,El soap,Noun,Nature +Toilet,El inodoro,Noun,House +"Too high, Too much",Demasiado,Adjective,Vacation +Tourist,El turista,Noun,Vacation +Tourist office,La oficina de turismo,Noun,Vacation +Towards,Hacia,Preposition,Prepositions +Towels,Las toallas,Noun,House +Toy store,La juguetería,Noun,Vacation +Train station,La estación de tren,Noun,Vacation +Trees,Los árboles,Noun,Nature +T-Shirt,La camiseta,Noun,Clothes +Tuesday,Martes,Noun,Days +Turkey,El pavo,Noun,Nature +Twelve,Doce,Noun,Numbers +Twenty,Veinte,Noun,Numbers +Twin,El gemelo,Noun,Family +Two,Dos,Noun,Numbers +Uncle,El tío,Noun,Family +Under,Bajo,Preposition,Prepositions +Underwear,La ropa interior,Noun,Clothes +Unless,A menos que,Other,Transitions +Until,Hasta,Preposition,Prepositions +Vaccine,La vacuna,Noun,Health +Velvet,El terciopelo,Noun,Clothes +Vest,El chaleco,Noun,Clothes +Veterinarian,El veterinario,Noun,Professions +Video conference,La videoconferencia,Noun,Professions +Video games,Los videojuegos,Noun,Childhood +View,La vista,Noun,Nature +Wage,El sueldo,Noun,Professions +Waiter,El camarero,Noun,Food +Wall,La pared,Noun,House +Wallet,La cartera,Noun,Clothes +Watch,El reloj,Noun,Clothes +Wave,La ola,Noun,Nature +Weather,El tiempo,Noun,Weather +Wednesday,Miércoles,Noun,Days +Well,Bien,Adverb,Adverbs +What,Qué,Other,Questions +When,Cuando,Other,Questions +Where,Dónde,Other,Questions +While,Mientras,Other,Transitions +White,Blanco,Adjective,Colors +Who,Quien,Other,Questions +Why,Por qué,Other,Questions +Wife,La mujer,Noun,Family +Wild,Salvaje,Adjective,Nature +Wind,El viento,Noun,Weather +Window,La ventana,Noun,House +With,Con,Preposition,Prepositions +Without,Sin,Preposition,Prepositions +Witty,Ingenioso,Adjective,Adjectives +Wolf,El lobo,Noun,Nature +Wood,La madera,Noun,House +Wool,La lana,Noun,Clothes +Worst,Peor,Adjective,Nature +X-ray,"Los rayos X, La radiografía",Noun,Health +Yard,El jardín,Noun,House +Yellow,Amarillo,Adjective,Colors +Young,Joven,Adjective,Adjectives +Younger,Menor,Adjective,Family +Zipper,El cierre,Noun,Clothes +Zoo,El zoológico,Noun,Childhood +\ No newline at end of file diff --git a/index.html b/index.html @@ -34,7 +34,7 @@ <div id="jsError"> <h1>You must have JavaScript enabled to run Spanish-Quizzer.</h1> <p>Spanish-Quizzer uses JavaScript to load vocab, apply filters, and check your answers.</p> - <p>You can still view the <a href="vocab/">vocab sets</a>, but you can't use the Quizzer or the Reference Tables.</p> + <p>You can still view the <a href="data/">data sets</a>, but you can't use the Quizzer or the Reference Tables.</p> </div> </noscript> diff --git a/js/app.js b/js/app.js @@ -1,5 +1,5 @@ // Declare global variables -let Sets; // List of parsed sets +let Data; let app; @@ -58,11 +58,11 @@ function loadVue() { CreateSession: function() { // Get prompts if (this.category === "vocab") { - this.prompts = Shuffle(ApplyFilters(Sets, GetVocabFilters(this.filters), this.settings.multiplePrompts)); + this.prompts = Shuffle(ApplyFilters(Data.vocab, GetVocabFilters(this.filters), this.settings.multiplePrompts)); } else if (this.category === "verbs") { // Get prompts - this.prompts = Shuffle(ApplyFilters(Sets, GetVerbFilters(this.filters), this.settings.multiplePrompts)); + this.prompts = Shuffle(ApplyFilters(Data.verbs, GetVerbFilters(this.filters), this.settings.multiplePrompts)); } // Set progress @@ -103,7 +103,7 @@ function loadVue() { return; } else if (this.prompts.length === 0) { - alert("Your custom vocabulary set must contain at least one term."); + alert("You must have at least one filter."); return; } else if (isNaN(this.promptIndex) || this.promptIndex < 0 || this.promptIndex >= this.prompts.length) { @@ -154,8 +154,8 @@ async function Load() { // Add event Listeners document.addEventListener("keydown", KeyDown); - // Load vocab - Sets = await loadVocab(); + // Load Spanish-Quizzer data + Data = await loadData(); } diff --git a/js/filterInput.js b/js/filterInput.js @@ -42,7 +42,7 @@ let filterInput = Vue.component("filterInput", { this.verbFilters.push({tense:"All Tenses", type:"All Types", subject:"All Subjects", direction:"Eng. → Conj."}); } else if (this.category === "vocab") { - this.vocabFilters.push({set:"All Sets", type:"All Types", direction:"Eng. ↔ Esp."}); + this.vocabFilters.push({category:"All Categories", type:"All Types", direction:"Eng. ↔ Esp."}); } }, @@ -132,14 +132,14 @@ let filterInput = Vue.component("filterInput", { }, /** - * Get the filters available for a vocab Set. + * Get the filters available for a vocab category. * @param {Number} index - The index of the vocab filter. * @returns {Array} - An array containing available filters. */ - getSetFilters: function(index) { + getCategoryFilters: function(index) { // Get filter options let filters = {"All Types":true, "Adjectives":true, "Nouns":true, "Verbs":true} - switch(this.vocabFilters[index].set) + switch(this.vocabFilters[index].category) { case "Verbs": filters["Adjectives"] = false; @@ -248,13 +248,13 @@ let filterInput = Vue.component("filterInput", { <h1>Choose your settings and then click start.</h1> <h2> - Vocabulary Sets - <button @click="AddFilter();">Add set</button> + Vocabulary Filters + <button @click="AddFilter();">Add Filter</button> </h2> <div v-for="(filter, index) in vocabFilters" class="filter"> - <select class="vocabSetName" v-model="filter.set"> - <option>All Sets</option> + <select class="vocabSetName" v-model="filter.category"> + <option>All Categories</option> <optgroup label="Common Words"> <option>Adjectives</option> <option>Adverbs</option> @@ -283,7 +283,7 @@ let filterInput = Vue.component("filterInput", { </optgroup> </select> <select v-model="filter.type"> - <option v-for="(available, type) in getSetFilters(index)" :disabled="!available">{{ type }}</option> + <option v-for="(available, type) in getCategoryFilters(index)" :disabled="!available">{{ type }}</option> </select> <select v-model="filter.direction"> <option>Eng. ↔ Esp.</option> diff --git a/js/filters.js b/js/filters.js @@ -4,39 +4,22 @@ * @returns {Array} The io-filters. */ function GetVocabFilters(rawFilters) { - // Expand "All Sets" filters - let filters = []; // Format: [{set:"vocab set name", tense:"specific tense", subject:"specific subject", type:"regex"}] + // Expand "All directions" filters + let filters = []; for (let filter of rawFilters) { - if (filter.set === "All Sets") { - filters.push({set:"Verbs", type: filter.type, direction:filter.direction}); - filters.push({set:"Adjectives", type: filter.type, direction:filter.direction}); - filters.push({set:"Adverbs", type: filter.type, direction:filter.direction}); - filters.push({set:"Prepositions", type: filter.type, direction:filter.direction}); - filters.push({set:"Transitions", type: filter.type, direction:filter.direction}); - filters.push({set:"Colors", type: filter.type, direction:filter.direction}); - filters.push({set:"Days", type: filter.type, direction:filter.direction}); - filters.push({set:"Months", type: filter.type, direction:filter.direction}); - filters.push({set:"Questions", type: filter.type, direction:filter.direction}); - filters.push({set:"Weather", type: filter.type, direction:filter.direction}); - filters.push({set:"Family", type: filter.type, direction:filter.direction}); - filters.push({set:"Clothes", type: filter.type, direction:filter.direction}); - filters.push({set:"Nature", type: filter.type, direction:filter.direction}); - filters.push({set:"House", type: filter.type, direction:filter.direction}); - filters.push({set:"Vacation", type: filter.type, direction:filter.direction}); - filters.push({set:"Childhood", type: filter.type, direction:filter.direction}); - filters.push({set:"Professions", type: filter.type, direction:filter.direction}); - filters.push({set:"Health", type: filter.type, direction:filter.direction}); + if (filter.direction === "Eng. ↔ Esp.") { + filters.push({category:filter.category, type: filter.type, direction:"Eng. → Esp."}); + filters.push({category:filter.category, type: filter.type, direction:"Esp. → Eng."}); } else { - filters.push({set:filter.set, type: filter.type, direction:filter.direction}); + filters.push({category:filter.category, type: filter.type, direction:filter.direction}); } } - // Expand "All directions" filters + // Get category regex filter for (let filter of filters) { - if (filter.direction === "Eng. ↔ Esp.") { - filter.direction = "Eng. → Esp."; - filters.push({set:filter.set, type: filter.type, direction:"Esp. → Eng."}); + if (filter.category === "All Categories") { + filter.category = ".*"; } } @@ -61,14 +44,14 @@ function GetVocabFilters(rawFilters) { } // Create io-filters - let ioFilters = []; // Format: [{set:"vocab set name", outputIndex:0, inputIndex:0, filterIndex:0, filterValue:"regex"}] + let ioFilters = []; // Format: [{outputIndex:0, inputIndex:0, filters:[{index:0, value:"regex"}]}] for (let filter of filters) { // Create filter if (filter.direction.toLowerCase().startsWith("eng")) { - ioFilters.push({set:filter.set, outputIndex:0, inputIndex:1, filterIndex:2, filterValue:filter.type}); + ioFilters.push({outputIndex:0, inputIndex:1, filters:[{index:2, value:filter.type}, {index:3, value:filter.category}]}); } else { - ioFilters.push({set:filter.set, outputIndex:1, inputIndex:0, filterIndex:2, filterValue:filter.type}); + ioFilters.push({outputIndex:1, inputIndex:0, filters:[{index:2, value:filter.type}, {index:3, value:filter.category}]}); } } @@ -85,7 +68,7 @@ function GetVocabFilters(rawFilters) { */ function GetVerbFilters(rawFilters) { // Expand "All Tenses" filters - let filters = []; // Format: [{set:"Verbs", tense:"specific tense", subject:"specific subject", type:"regex"}] + let filters = []; // Format: [{tense:"specific tense", subject:"specific subject", type:"regex"}] for (let filter of rawFilters) { if (filter.tense.toLowerCase() === "all tenses") { filters.push({ tense: "present participles", type: filter.type, subject: filter.subject, direction: filter.direction }); @@ -144,7 +127,7 @@ function GetVerbFilters(rawFilters) { } // Create io-filters - let ioFilters = []; // Format: [{set:"Verbs", outputIndex:0, inputIndex:0, filterIndex:0, filterValue:"regex"}] + let ioFilters = []; // Format: [{outputIndex:0, inputIndex:0, filters:[{index:0, value:"regex"}]}] for (let filter of filters) { // Get output index let outputIndex; @@ -289,10 +272,10 @@ function GetVerbFilters(rawFilters) { // Create filter if (filter.direction.toLowerCase().startsWith("conj")) { // Swap input and output - ioFilters.push({set:"Verbs", outputIndex:inputIndex, inputIndex:outputIndex, filterIndex:filterIndex, filterValue:filter.type}) + ioFilters.push({outputIndex:inputIndex, inputIndex:outputIndex, filters:[{index:filterIndex, value:filter.type}]}) } else { - ioFilters.push({set:"Verbs", outputIndex:outputIndex, inputIndex:inputIndex, filterIndex:filterIndex, filterValue:filter.type}) + ioFilters.push({outputIndex:outputIndex, inputIndex:inputIndex, filters:[{index:filterIndex, value:filter.type}]}) } } @@ -313,10 +296,18 @@ function ApplyFilters(terms, filters, multiplePrompts="Show together") { let results = []; // Format: [[<output label>, <output>, <input label>, <input>]] for (let filter of filters) { // Iterate over terms (minus headers) - for (let term of terms[filter.set].slice(1)) { + for (let term of terms.slice(1)) { // Check against filters - if (term[filter.filterIndex].match(filter.filterValue)) { - results.push([terms[filter.set][0][filter.outputIndex], term[filter.outputIndex], terms[filter.set][0][filter.inputIndex], term[filter.inputIndex]]); + let matchesFilter = true; + for (let filterFilter of filter.filters) { + if (!term[filterFilter.index].match(filterFilter.value)) { + matchesFilter = false; + } + } + + // Add prompt + if (matchesFilter) { + results.push([terms[0][filter.outputIndex], term[filter.outputIndex], terms[0][filter.inputIndex], term[filter.inputIndex]]); } } } diff --git a/js/global.js b/js/global.js @@ -126,23 +126,18 @@ function setSettings(value) { /** - * Loads the vocab sets. - * @param {Function} callback A callback function with two parameters: name (String) and data (Array). + * Loads Spanish-Quizzer data. */ -function loadVocab() { +function loadData() { return new Promise(function(resolve, reject) { // Initialize variables - let setNames = [ - "Adjectives", "Adverbs", "Prepositions", "Transitions", "Verbs", // Common words - "Colors", "Days", "Months", "Numbers", "Questions", // Basic words - "Childhood", "Clothes", "Family", "Food", "Health", "House", "Nature", "Professions", "Vacation", "Weather", // Advanced words - ]; + let setNames = ["verbs", "vocab"]; let progress = 0; let sets = {}; - // Load vocab + // Load data for (let setName of setNames) { - Papa.parse(`vocab/${setName}.csv`, { + Papa.parse(`data/${setName}.csv`, { download: true, complete: function(results) { sets[setName] = results.data; diff --git a/js/reference.js b/js/reference.js @@ -11,8 +11,8 @@ function loadVue() { el: "#app", // Mount to app div data: { - set: "Choose a vocab set", - sets: {"Choose a vocab set":[], "All Sets":[["English", "Spanish", "Type"]]}, + category: "Choose a category", + data: {"Choose a category":[]}, query: "" } }); @@ -39,27 +39,8 @@ async function Load() { // Set table height setTableHeight(); - // Load vocab - app.sets = {...app.sets, ...await loadVocab()}; - - // Add data to "All Sets" - for (let set in app.sets) { - if (set === "Verbs") { - for (let row of app.sets[set].slice(1)) { - app.sets["All Sets"].push([row[0], row[1], "Verb"]); - } - } - else { - app.sets["All Sets"].push(...app.sets[set].slice(1)); - } - } - - // Sort "All Sets" - app.sets["All Sets"].sort(function(a, b) { - if (a[0] === "English") return false; // Header row should be at the top - else if (b[0] === "English") return true; // Header row should be at the top - else return a[0] > b[0]; // Sort other rows by 1st item - }) + // Load Spanish-Quizzer data + app.data = {...app.data, ...await loadData()}; } diff --git a/reference.html b/reference.html @@ -27,42 +27,17 @@ <div id="jsError"> <h1>You must have JavaScript enabled to run Spanish-Quizzer.</h1> <p>Spanish-Quizzer uses JavaScript to load vocab, apply filters, and check your answers.</p> - <p>You can still view the <a href="vocab/">vocab sets</a>, but you can't use the Quizzer or the Reference Tables.</p> + <p>You can still view the <a href="data/">data sets</a>, but you can't use the Quizzer or the Reference Tables.</p> </div> </noscript> <h1 hidden>Reference Tables</h1> <div id="controls" hidden> - <select aria-label="Vocab Set" v-model="set"> - <option>Choose a vocab set</option> - <option>All Sets</option> - <optgroup label="Common Words"> - <option>Adjectives</option> - <option>Adverbs</option> - <option>Prepositions</option> - <option>Transitions</option> - <option>Verbs</option> - </optgroup> - <optgroup label="Basic Words"> - <option>Colors</option> - <option>Days</option> - <option>Months</option> - <option>Numbers</option> - <option>Questions</option> - </optgroup> - <optgroup label="Advanced Words"> - <option>Childhood</option> - <option>Clothes</option> - <option>Family</option> - <option>Food</option> - <option>Health</option> - <option>House</option> - <option>Nature</option> - <option>Professions</option> - <option>Vacation</option> - <option>Weather</option> - </optgroup> + <select aria-label="Vocab Set" v-model="category"> + <option>Choose a category</option> + <option value="verbs">Conjugations</option> + <option value="vocab">Vocab</option> </select> <input type="text" aria-label="Search" v-model="query" placeholder="Search" autocomplete="off" autocorrect="off"> @@ -70,9 +45,9 @@ <div id="referenceTable" hidden> <table> - <tr v-for="(row, rowIndex) in sets[set]" v-show="rowIndex === 0 || row.join(',').toLowerCase().includes(query.toLowerCase())"> + <tr v-for="(row, rowIndex) in data[category]" v-show="rowIndex === 0 || row.join(',').toLowerCase().includes(query.toLowerCase())"> <th v-if="rowIndex === 0" v-for="column in row">{{ column }}</th> - <td v-if="rowIndex !== 0" v-for="(column, columnIndex) in row" @click="Read(column, sets[set][0][columnIndex])" :lang="getLang(sets[set][0][columnIndex])">{{ column }}</td> + <td v-if="rowIndex !== 0" v-for="(column, columnIndex) in row" @click="Read(column, data[category][0][columnIndex])" :lang="getLang(data[category][0][columnIndex])">{{ column }}</td> </tr> </table> </div> diff --git a/scripts/scraper.py b/scripts/scraper.py @@ -23,9 +23,9 @@ def getConjugations(verb): # Get Indicative conjugations conjugations = [] - rows = soup.find("table", class_="_2qmJM3i9").find_all('tr') + rows = soup.find("table", class_="_2qmJM3i9").find_all("tr") for row in rows: - cols = row.find_all('td') + cols = row.find_all("td") conjugations += [[col.text for col in cols]] # Return verb info @@ -74,4 +74,4 @@ def correctConjugations(filepath): # Correct conjugations in Verbs.csv if (__name__ == "__main__"): - correctConjugations("../vocab/Verbs.csv") + correctConjugations("../data/verbs.csv") diff --git a/tests/test.filterInput.js b/tests/test.filterInput.js @@ -93,7 +93,7 @@ describe("FilterInput", function() { // Assert filter added expect(FilterInput.vocabFilters).to.have.deep.members([ - {set:"All Sets", type:"All Types", direction:"Eng. ↔ Esp."}, + {category:"All Categories", type:"All Types", direction:"Eng. ↔ Esp."}, ]); expect(FilterInput.verbFilters).to.have.deep.members([]); }); @@ -153,7 +153,7 @@ describe("FilterInput", function() { it("Should be correct for All Tenses", function() { // Initialize filters FilterInput.verbFilters = [ - {"tense":"All Types", "type":"All Types"} + {tense:"All Types", type:"All Types"} ] // Get filters @@ -172,7 +172,7 @@ describe("FilterInput", function() { it("Should be correct for Present Tense", function() { // Initialize filters FilterInput.verbFilters = [ - {"tense":"Present Tense", "type":"All Types"} + {tense:"Present Tense", type:"All Types"} ] // Get filters @@ -191,7 +191,7 @@ describe("FilterInput", function() { it("Should change selection if not available", function() { // Initialize filters FilterInput.verbFilters = [ - {"tense":"Present Tense", "type":"Orthographic"} + {tense:"Present Tense", type:"Orthographic"} ] // Get filters @@ -213,7 +213,7 @@ describe("FilterInput", function() { it("Should not change selection if available", function() { // Initialize filters FilterInput.verbFilters = [ - {"tense":"Preterite Tense", "type":"Orthographic"} + {tense:"Preterite Tense", type:"Orthographic"} ] // Get filters @@ -237,7 +237,7 @@ describe("FilterInput", function() { it("Should be correct for All Tenses", function() { // Initialize filters FilterInput.verbFilters = [ - {"tense":"All Types", "type":"All Types"} + {tense:"All Types", type:"All Types"} ] // Get filters @@ -255,7 +255,7 @@ describe("FilterInput", function() { it("Should be correct for Present Participles", function() { // Initialize filters FilterInput.verbFilters = [ - {"tense":"Present Participles", "subject":"All Subjects", "type":"All Types"} + {tense:"Present Participles", subject:"All Subjects", type:"All Types"} ] // Get filters @@ -273,7 +273,7 @@ describe("FilterInput", function() { it("Should change selection if not available", function() { // Initialize filters FilterInput.verbFilters = [ - {"tense":"Present Participles", "subject":"Yo", "type":"All Types"} + {tense:"Present Participles", subject:"Yo", type:"All Types"} ] // Get filters @@ -294,8 +294,8 @@ describe("FilterInput", function() { it("Should not change selection if available", function() { // Initialize filters FilterInput.verbFilters = [ - {"tense":"Present Participles", "subject":"Type", "type":"All Types"}, - {"tense":"Preterite Tense", "subject":"Yo", "type":"All Types"}, + {tense:"Present Participles", subject:"Type", type:"All Types"}, + {tense:"Preterite Tense", subject:"Yo", type:"All Types"}, ] // Get filters @@ -308,15 +308,15 @@ describe("FilterInput", function() { }); }); - describe("GetSetFilters method", function() { + describe("GetCategoryFilters method", function() { it("Should be correct for Verbs", function() { // Initialize filters FilterInput.vocabFilters = [ - {"set":"Verbs", "type":"All Definitions"} + {category:"Verbs", type:"All Definitions"} ] // Get filters - let filters = FilterInput.getSetFilters(0); + let filters = FilterInput.getCategoryFilters(0); // Assert filters are correct expect(filters["All Types"]).to.equal(true); @@ -328,11 +328,11 @@ describe("FilterInput", function() { it("Should be correct for sets with 1 type", function() { // Initialize filters FilterInput.vocabFilters = [ - {"set":"Colors", "type":"All Definitions"} + {category:"Colors", type:"All Definitions"} ] // Get filters - let filters = FilterInput.getSetFilters(0); + let filters = FilterInput.getCategoryFilters(0); // Assert filters are correct expect(filters["All Types"]).to.equal(true); @@ -344,11 +344,11 @@ describe("FilterInput", function() { it("Should change selection if not available", function() { // Initialize filters FilterInput.vocabFilters = [ - {"set":"Colors", "type":"Verbs"} + {category:"Colors", type:"Verbs"} ] // Get filters - let filters = FilterInput.getSetFilters(0); + let filters = FilterInput.getCategoryFilters(0); // Assert selection changed expect(filters["All Types"]).to.equal(true); @@ -361,11 +361,11 @@ describe("FilterInput", function() { it("Should not change selection if available", function() { // Initialize filters FilterInput.vocabFilters = [ - {"set":"Professions", "type":"Verbs"} + {category:"Professions", type:"Verbs"} ] // Get filters - let filters = FilterInput.getSetFilters(0); + let filters = FilterInput.getCategoryFilters(0); // Assert selection not changed expect(filters["All Types"]).to.equal(true); diff --git a/tests/test.filters.js b/tests/test.filters.js @@ -3,12 +3,12 @@ describe("Filters", function() { it("Should correctly filter vocab for All Definitions", function() { // Initialize expected let expected = [ - {set:"Colors", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:".*"}, - {set:"Colors", outputIndex:1, inputIndex:0, filterIndex:2, filterValue:".*"}, + {outputIndex:0, inputIndex:1, filters:[{index:2, value:".*"}, {index:3, value:"Colors"}]}, + {outputIndex:1, inputIndex:0, filters:[{index:2, value:".*"}, {index:3, value:"Colors"}]}, ]; // Filter vocab - let actual = GetVocabFilters([{set:"Colors", type:"All Types", direction:"Eng. ↔ Esp."}]); + let actual = GetVocabFilters([{category:"Colors", type:"All Types", direction:"Eng. ↔ Esp."}]); // Assert filtered vocab is correct expect(actual).to.have.deep.members(expected); @@ -17,15 +17,15 @@ describe("Filters", function() { it("Should correctly filter vocab for multiple filters", function() { // Initialize expected let expected = [ - {set:"Colors", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:".*"}, - {set:"Colors", outputIndex:1, inputIndex:0, filterIndex:2, filterValue:".*"}, - {set:"Months", outputIndex:1, inputIndex:0, filterIndex:2, filterValue:"Verb"}, + {outputIndex:0, inputIndex:1, filters:[{index:2, value:".*"}, {index:3, value:"Colors"}]}, + {outputIndex:1, inputIndex:0, filters:[{index:2, value:".*"}, {index:3, value:"Colors"}]}, + {outputIndex:1, inputIndex:0, filters:[{index:2, value:"Verb"}, {index:3, value:"Months"}]}, ]; // Filter vocab let actual = GetVocabFilters([ - {set:"Colors", type:"All Types", direction:"Eng. ↔ Esp."}, - {set:"Months", type:"Verbs", direction:"Esp. → Eng."}, + {category:"Colors", type:"All Types", direction:"Eng. ↔ Esp."}, + {category:"Months", type:"Verbs", direction:"Esp. → Eng."}, ]); // Assert filtered vocab is correct @@ -36,11 +36,11 @@ describe("Filters", function() { it("Should correctly filter vocab for English to Spanish", function() { // Initialize expected let expected = [ - {set:"Colors", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:".*"}, + {outputIndex:0, inputIndex:1, filters:[{index:2, value:".*"}, {index:3, value:"Colors"}]}, ]; // Filter vocab - let actual = GetVocabFilters([{set:"Colors", type:"All Types", direction:"Eng. → Esp."}]); + let actual = GetVocabFilters([{category:"Colors", type:"All Types", direction:"Eng. → Esp."}]); // Assert filtered vocab is correct expect(actual).to.have.deep.members(expected); @@ -49,11 +49,11 @@ describe("Filters", function() { it("Should correctly filter vocab for Spanish to English", function() { // Initialize expected let expected = [ - {set:"Colors", outputIndex:1, inputIndex:0, filterIndex:2, filterValue:".*"}, + {outputIndex:1, inputIndex:0, filters:[{index:2, value:".*"}, {index:3, value:"Colors"}]}, ]; // Filter vocab - let actual = GetVocabFilters([{set:"Colors", type:"All Types", direction:"Esp. → Eng."}]); + let actual = GetVocabFilters([{category:"Colors", type:"All Types", direction:"Esp. → Eng."}]); // Assert filtered vocab is correct expect(actual).to.have.deep.members(expected); @@ -64,12 +64,12 @@ describe("Filters", function() { it("Should correctly filter vocab for Nouns", function() { // Initialize expected let expected = [ - {set:"Colors", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:"Noun"}, - {set:"Colors", outputIndex:1, inputIndex:0, filterIndex:2, filterValue:"Noun"}, + {outputIndex:0, inputIndex:1, filters:[{index:2, value:"Noun"}, {index:3, value:"Colors"}]}, + {outputIndex:1, inputIndex:0, filters:[{index:2, value:"Noun"}, {index:3, value:"Colors"}]}, ]; // Filter vocab - let actual = GetVocabFilters([{set:"Colors", type:"Nouns", direction:"Eng. ↔ Esp."}]); + let actual = GetVocabFilters([{category:"Colors", type:"Nouns", direction:"Eng. ↔ Esp."}]); // Assert filtered vocab is correct expect(actual).to.have.deep.members(expected); @@ -78,12 +78,12 @@ describe("Filters", function() { it("Should correctly filter vocab for Adjectives", function() { // Initialize expected let expected = [ - {set:"Colors", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:"Adjective"}, - {set:"Colors", outputIndex:1, inputIndex:0, filterIndex:2, filterValue:"Adjective"}, + {outputIndex:0, inputIndex:1, filters:[{index:2, value:"Adjective"}, {index:3, value:"Colors"}]}, + {outputIndex:1, inputIndex:0, filters:[{index:2, value:"Adjective"}, {index:3, value:"Colors"}]}, ]; // Filter vocab - let actual = GetVocabFilters([{set:"Colors", type:"Adjectives", direction:"Eng. ↔ Esp."}]); + let actual = GetVocabFilters([{category:"Colors", type:"Adjectives", direction:"Eng. ↔ Esp."}]); // Assert filtered vocab is correct expect(actual).to.have.deep.members(expected); @@ -92,22 +92,22 @@ describe("Filters", function() { it("Should correctly filter vocab for Verbs", function() { // Initialize expected let expected = [ - {set:"Colors", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:"Verb"}, - {set:"Colors", outputIndex:1, inputIndex:0, filterIndex:2, filterValue:"Verb"}, + {outputIndex:0, inputIndex:1, filters:[{index:2, value:"Verb"}, {index:3, value:"Colors"}]}, + {outputIndex:1, inputIndex:0, filters:[{index:2, value:"Verb"}, {index:3, value:"Colors"}]}, ]; // Filter vocab - let actual = GetVocabFilters([{set:"Colors", type:"Verbs", direction:"Eng. ↔ Esp."}]); + let actual = GetVocabFilters([{category:"Colors", type:"Verbs", direction:"Eng. ↔ Esp."}]); // Assert filtered vocab is correct expect(actual).to.have.deep.members(expected); }); it("Should throw error for unknown word type", function() { - expect(() => GetVocabFilters([{set:"Colors", type:"test", direction:"Eng. ↔ Esp."}])).to.throw() - expect(() => GetVocabFilters([{set:"Colors", type:"", direction:"Eng. ↔ Esp."}])).to.throw() - expect(() => GetVocabFilters([{set:"Colors", type:1, direction:"Eng. ↔ Esp."}])).to.throw() - expect(() => GetVocabFilters([{set:"Colors", type:null, direction:"Eng. ↔ Esp."}])).to.throw() + expect(() => GetVocabFilters([{category:"Colors", type:"test", direction:"Eng. ↔ Esp."}])).to.throw() + expect(() => GetVocabFilters([{category:"Colors", type:"", direction:"Eng. ↔ Esp."}])).to.throw() + expect(() => GetVocabFilters([{category:"Colors", type:1, direction:"Eng. ↔ Esp."}])).to.throw() + expect(() => GetVocabFilters([{category:"Colors", type:null, direction:"Eng. ↔ Esp."}])).to.throw() }); }); }); @@ -116,28 +116,28 @@ describe("Filters", function() { it("Should correctly filter verbs for All Conjugations", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:03, filterIndex:02, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:05, filterIndex:04, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:07, filterIndex:06, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:08, filterIndex:06, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:09, filterIndex:06, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:10, filterIndex:06, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:11, filterIndex:06, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:13, filterIndex:12, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:14, filterIndex:12, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:15, filterIndex:12, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:16, filterIndex:12, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:17, filterIndex:12, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:19, filterIndex:18, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:20, filterIndex:18, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:21, filterIndex:18, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:22, filterIndex:18, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:23, filterIndex:18, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:25, filterIndex:24, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:26, filterIndex:24, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:27, filterIndex:24, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:28, filterIndex:24, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:29, filterIndex:24, filterValue:".*"}, + {outputIndex:0, inputIndex:03, filters:[{index:02, value:".*"}]}, + {outputIndex:0, inputIndex:05, filters:[{index:04, value:".*"}]}, + {outputIndex:0, inputIndex:07, filters:[{index:06, value:".*"}]}, + {outputIndex:0, inputIndex:08, filters:[{index:06, value:".*"}]}, + {outputIndex:0, inputIndex:09, filters:[{index:06, value:".*"}]}, + {outputIndex:0, inputIndex:10, filters:[{index:06, value:".*"}]}, + {outputIndex:0, inputIndex:11, filters:[{index:06, value:".*"}]}, + {outputIndex:0, inputIndex:13, filters:[{index:12, value:".*"}]}, + {outputIndex:0, inputIndex:14, filters:[{index:12, value:".*"}]}, + {outputIndex:0, inputIndex:15, filters:[{index:12, value:".*"}]}, + {outputIndex:0, inputIndex:16, filters:[{index:12, value:".*"}]}, + {outputIndex:0, inputIndex:17, filters:[{index:12, value:".*"}]}, + {outputIndex:0, inputIndex:19, filters:[{index:18, value:".*"}]}, + {outputIndex:0, inputIndex:20, filters:[{index:18, value:".*"}]}, + {outputIndex:0, inputIndex:21, filters:[{index:18, value:".*"}]}, + {outputIndex:0, inputIndex:22, filters:[{index:18, value:".*"}]}, + {outputIndex:0, inputIndex:23, filters:[{index:18, value:".*"}]}, + {outputIndex:0, inputIndex:25, filters:[{index:24, value:".*"}]}, + {outputIndex:0, inputIndex:26, filters:[{index:24, value:".*"}]}, + {outputIndex:0, inputIndex:27, filters:[{index:24, value:".*"}]}, + {outputIndex:0, inputIndex:28, filters:[{index:24, value:".*"}]}, + {outputIndex:0, inputIndex:29, filters:[{index:24, value:".*"}]}, ]; // Filter verbs @@ -150,41 +150,41 @@ describe("Filters", function() { it("Should correctly filter verbs for multiple filters", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:03, filterIndex:02, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:05, filterIndex:04, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:07, filterIndex:06, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:08, filterIndex:06, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:09, filterIndex:06, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:10, filterIndex:06, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:11, filterIndex:06, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:13, filterIndex:12, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:14, filterIndex:12, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:15, filterIndex:12, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:16, filterIndex:12, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:17, filterIndex:12, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:19, filterIndex:18, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:20, filterIndex:18, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:21, filterIndex:18, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:22, filterIndex:18, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:23, filterIndex:18, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:25, filterIndex:24, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:26, filterIndex:24, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:27, filterIndex:24, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:28, filterIndex:24, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:29, filterIndex:24, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - - {set:"Verbs", outputIndex:0, inputIndex:07, filterIndex:06, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:08, filterIndex:06, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:09, filterIndex:06, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:10, filterIndex:06, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:11, filterIndex:06, filterValue:".*"}, - - {set:"Verbs", outputIndex:03, inputIndex:1, filterIndex:02, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:05, inputIndex:1, filterIndex:04, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:10, inputIndex:1, filterIndex:06, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:16, inputIndex:1, filterIndex:12, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:22, inputIndex:1, filterIndex:18, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:28, inputIndex:1, filterIndex:24, filterValue:"Stem.?Changing"}, + {outputIndex:0, inputIndex:03, filters:[{index:02, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:05, filters:[{index:04, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:07, filters:[{index:06, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:08, filters:[{index:06, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:09, filters:[{index:06, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:10, filters:[{index:06, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:11, filters:[{index:06, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:13, filters:[{index:12, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:14, filters:[{index:12, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:15, filters:[{index:12, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:16, filters:[{index:12, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:17, filters:[{index:12, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:19, filters:[{index:18, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:20, filters:[{index:18, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:21, filters:[{index:18, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:22, filters:[{index:18, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:23, filters:[{index:18, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:25, filters:[{index:24, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:26, filters:[{index:24, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:27, filters:[{index:24, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:28, filters:[{index:24, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:29, filters:[{index:24, value:"Irregular|Stem.?Changing|Orthographic"}]}, + + {outputIndex:0, inputIndex:07, filters:[{index:06, value:".*"}]}, + {outputIndex:0, inputIndex:08, filters:[{index:06, value:".*"}]}, + {outputIndex:0, inputIndex:09, filters:[{index:06, value:".*"}]}, + {outputIndex:0, inputIndex:10, filters:[{index:06, value:".*"}]}, + {outputIndex:0, inputIndex:11, filters:[{index:06, value:".*"}]}, + + {outputIndex:03, inputIndex:1, filters:[{index:02, value:"Stem.?Changing"}]}, + {outputIndex:05, inputIndex:1, filters:[{index:04, value:"Stem.?Changing"}]}, + {outputIndex:10, inputIndex:1, filters:[{index:06, value:"Stem.?Changing"}]}, + {outputIndex:16, inputIndex:1, filters:[{index:12, value:"Stem.?Changing"}]}, + {outputIndex:22, inputIndex:1, filters:[{index:18, value:"Stem.?Changing"}]}, + {outputIndex:28, inputIndex:1, filters:[{index:24, value:"Stem.?Changing"}]}, ]; // Filter verbs @@ -202,7 +202,7 @@ describe("Filters", function() { it("Should correctly filter verbs for Present Participles", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:3, filterIndex:2, filterValue:".*"}, + {outputIndex:0, inputIndex:3, filters:[{index:2, value:".*"}]}, ]; // Filter verbs @@ -215,7 +215,7 @@ describe("Filters", function() { it("Should correctly filter verbs for Past Participles", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:5, filterIndex:4, filterValue:".*"}, + {outputIndex:0, inputIndex:5, filters:[{index:4, value:".*"}]}, ]; // Filter verbs @@ -228,11 +228,11 @@ describe("Filters", function() { it("Should correctly filter verbs for Present Tense", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:07, filterIndex:6, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:08, filterIndex:6, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:09, filterIndex:6, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:10, filterIndex:6, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:11, filterIndex:6, filterValue:".*"}, + {outputIndex:0, inputIndex:07, filters:[{index:6, value:".*"}]}, + {outputIndex:0, inputIndex:08, filters:[{index:6, value:".*"}]}, + {outputIndex:0, inputIndex:09, filters:[{index:6, value:".*"}]}, + {outputIndex:0, inputIndex:10, filters:[{index:6, value:".*"}]}, + {outputIndex:0, inputIndex:11, filters:[{index:6, value:".*"}]}, ]; // Filter verbs @@ -245,11 +245,11 @@ describe("Filters", function() { it("Should correctly filter verbs for Preterite Tense", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:13, filterIndex:12, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:14, filterIndex:12, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:15, filterIndex:12, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:16, filterIndex:12, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:17, filterIndex:12, filterValue:".*"}, + {outputIndex:0, inputIndex:13, filters:[{index:12, value:".*"}]}, + {outputIndex:0, inputIndex:14, filters:[{index:12, value:".*"}]}, + {outputIndex:0, inputIndex:15, filters:[{index:12, value:".*"}]}, + {outputIndex:0, inputIndex:16, filters:[{index:12, value:".*"}]}, + {outputIndex:0, inputIndex:17, filters:[{index:12, value:".*"}]}, ]; // Filter verbs @@ -262,11 +262,11 @@ describe("Filters", function() { it("Should correctly filter verbs for Imperfect Tense", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:19, filterIndex:18, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:20, filterIndex:18, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:21, filterIndex:18, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:22, filterIndex:18, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:23, filterIndex:18, filterValue:".*"}, + {outputIndex:0, inputIndex:19, filters:[{index:18, value:".*"}]}, + {outputIndex:0, inputIndex:20, filters:[{index:18, value:".*"}]}, + {outputIndex:0, inputIndex:21, filters:[{index:18, value:".*"}]}, + {outputIndex:0, inputIndex:22, filters:[{index:18, value:".*"}]}, + {outputIndex:0, inputIndex:23, filters:[{index:18, value:".*"}]}, ]; // Filter verbs @@ -279,11 +279,11 @@ describe("Filters", function() { it("Should correctly filter verbs for Simple Future Tense", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:25, filterIndex:24, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:26, filterIndex:24, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:27, filterIndex:24, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:28, filterIndex:24, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:29, filterIndex:24, filterValue:".*"}, + {outputIndex:0, inputIndex:25, filters:[{index:24, value:".*"}]}, + {outputIndex:0, inputIndex:26, filters:[{index:24, value:".*"}]}, + {outputIndex:0, inputIndex:27, filters:[{index:24, value:".*"}]}, + {outputIndex:0, inputIndex:28, filters:[{index:24, value:".*"}]}, + {outputIndex:0, inputIndex:29, filters:[{index:24, value:".*"}]}, ]; // Filter verbs @@ -298,28 +298,28 @@ describe("Filters", function() { it("Should correctly filter regular verbs", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:03, filterIndex:02, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:05, filterIndex:04, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:07, filterIndex:06, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:08, filterIndex:06, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:09, filterIndex:06, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:10, filterIndex:06, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:11, filterIndex:06, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:13, filterIndex:12, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:14, filterIndex:12, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:15, filterIndex:12, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:16, filterIndex:12, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:17, filterIndex:12, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:19, filterIndex:18, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:20, filterIndex:18, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:21, filterIndex:18, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:22, filterIndex:18, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:23, filterIndex:18, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:25, filterIndex:24, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:26, filterIndex:24, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:27, filterIndex:24, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:28, filterIndex:24, filterValue:"Regular"}, - {set:"Verbs", outputIndex:0, inputIndex:29, filterIndex:24, filterValue:"Regular"}, + {outputIndex:0, inputIndex:03, filters:[{index:02, value:"Regular"}]}, + {outputIndex:0, inputIndex:05, filters:[{index:04, value:"Regular"}]}, + {outputIndex:0, inputIndex:07, filters:[{index:06, value:"Regular"}]}, + {outputIndex:0, inputIndex:08, filters:[{index:06, value:"Regular"}]}, + {outputIndex:0, inputIndex:09, filters:[{index:06, value:"Regular"}]}, + {outputIndex:0, inputIndex:10, filters:[{index:06, value:"Regular"}]}, + {outputIndex:0, inputIndex:11, filters:[{index:06, value:"Regular"}]}, + {outputIndex:0, inputIndex:13, filters:[{index:12, value:"Regular"}]}, + {outputIndex:0, inputIndex:14, filters:[{index:12, value:"Regular"}]}, + {outputIndex:0, inputIndex:15, filters:[{index:12, value:"Regular"}]}, + {outputIndex:0, inputIndex:16, filters:[{index:12, value:"Regular"}]}, + {outputIndex:0, inputIndex:17, filters:[{index:12, value:"Regular"}]}, + {outputIndex:0, inputIndex:19, filters:[{index:18, value:"Regular"}]}, + {outputIndex:0, inputIndex:20, filters:[{index:18, value:"Regular"}]}, + {outputIndex:0, inputIndex:21, filters:[{index:18, value:"Regular"}]}, + {outputIndex:0, inputIndex:22, filters:[{index:18, value:"Regular"}]}, + {outputIndex:0, inputIndex:23, filters:[{index:18, value:"Regular"}]}, + {outputIndex:0, inputIndex:25, filters:[{index:24, value:"Regular"}]}, + {outputIndex:0, inputIndex:26, filters:[{index:24, value:"Regular"}]}, + {outputIndex:0, inputIndex:27, filters:[{index:24, value:"Regular"}]}, + {outputIndex:0, inputIndex:28, filters:[{index:24, value:"Regular"}]}, + {outputIndex:0, inputIndex:29, filters:[{index:24, value:"Regular"}]}, ]; // Filter verbs @@ -332,28 +332,28 @@ describe("Filters", function() { it("Should correctly filter reflexive verbs", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:03, filterIndex:02, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:05, filterIndex:04, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:07, filterIndex:06, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:08, filterIndex:06, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:09, filterIndex:06, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:10, filterIndex:06, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:11, filterIndex:06, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:13, filterIndex:12, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:14, filterIndex:12, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:15, filterIndex:12, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:16, filterIndex:12, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:17, filterIndex:12, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:19, filterIndex:18, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:20, filterIndex:18, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:21, filterIndex:18, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:22, filterIndex:18, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:23, filterIndex:18, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:25, filterIndex:24, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:26, filterIndex:24, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:27, filterIndex:24, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:28, filterIndex:24, filterValue:"Reflexive"}, - {set:"Verbs", outputIndex:0, inputIndex:29, filterIndex:24, filterValue:"Reflexive"}, + {outputIndex:0, inputIndex:03, filters:[{index:02, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:05, filters:[{index:04, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:07, filters:[{index:06, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:08, filters:[{index:06, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:09, filters:[{index:06, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:10, filters:[{index:06, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:11, filters:[{index:06, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:13, filters:[{index:12, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:14, filters:[{index:12, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:15, filters:[{index:12, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:16, filters:[{index:12, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:17, filters:[{index:12, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:19, filters:[{index:18, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:20, filters:[{index:18, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:21, filters:[{index:18, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:22, filters:[{index:18, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:23, filters:[{index:18, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:25, filters:[{index:24, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:26, filters:[{index:24, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:27, filters:[{index:24, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:28, filters:[{index:24, value:"Reflexive"}]}, + {outputIndex:0, inputIndex:29, filters:[{index:24, value:"Reflexive"}]}, ]; // Filter verbs @@ -366,28 +366,28 @@ describe("Filters", function() { it("Should correctly filter stem changing verbs", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:03, filterIndex:02, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:05, filterIndex:04, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:07, filterIndex:06, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:08, filterIndex:06, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:09, filterIndex:06, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:10, filterIndex:06, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:11, filterIndex:06, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:13, filterIndex:12, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:14, filterIndex:12, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:15, filterIndex:12, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:16, filterIndex:12, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:17, filterIndex:12, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:19, filterIndex:18, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:20, filterIndex:18, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:21, filterIndex:18, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:22, filterIndex:18, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:23, filterIndex:18, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:25, filterIndex:24, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:26, filterIndex:24, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:27, filterIndex:24, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:28, filterIndex:24, filterValue:"Stem.?Changing"}, - {set:"Verbs", outputIndex:0, inputIndex:29, filterIndex:24, filterValue:"Stem.?Changing"}, + {outputIndex:0, inputIndex:03, filters:[{index:02, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:05, filters:[{index:04, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:07, filters:[{index:06, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:08, filters:[{index:06, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:09, filters:[{index:06, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:10, filters:[{index:06, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:11, filters:[{index:06, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:13, filters:[{index:12, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:14, filters:[{index:12, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:15, filters:[{index:12, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:16, filters:[{index:12, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:17, filters:[{index:12, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:19, filters:[{index:18, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:20, filters:[{index:18, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:21, filters:[{index:18, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:22, filters:[{index:18, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:23, filters:[{index:18, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:25, filters:[{index:24, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:26, filters:[{index:24, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:27, filters:[{index:24, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:28, filters:[{index:24, value:"Stem.?Changing"}]}, + {outputIndex:0, inputIndex:29, filters:[{index:24, value:"Stem.?Changing"}]}, ]; // Filter verbs @@ -400,28 +400,28 @@ describe("Filters", function() { it("Should correctly filter orthographic verbs", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:03, filterIndex:02, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:05, filterIndex:04, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:07, filterIndex:06, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:08, filterIndex:06, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:09, filterIndex:06, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:10, filterIndex:06, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:11, filterIndex:06, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:13, filterIndex:12, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:14, filterIndex:12, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:15, filterIndex:12, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:16, filterIndex:12, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:17, filterIndex:12, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:19, filterIndex:18, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:20, filterIndex:18, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:21, filterIndex:18, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:22, filterIndex:18, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:23, filterIndex:18, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:25, filterIndex:24, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:26, filterIndex:24, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:27, filterIndex:24, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:28, filterIndex:24, filterValue:"Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:29, filterIndex:24, filterValue:"Orthographic"}, + {outputIndex:0, inputIndex:03, filters:[{index:02, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:05, filters:[{index:04, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:07, filters:[{index:06, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:08, filters:[{index:06, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:09, filters:[{index:06, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:10, filters:[{index:06, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:11, filters:[{index:06, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:13, filters:[{index:12, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:14, filters:[{index:12, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:15, filters:[{index:12, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:16, filters:[{index:12, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:17, filters:[{index:12, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:19, filters:[{index:18, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:20, filters:[{index:18, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:21, filters:[{index:18, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:22, filters:[{index:18, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:23, filters:[{index:18, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:25, filters:[{index:24, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:26, filters:[{index:24, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:27, filters:[{index:24, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:28, filters:[{index:24, value:"Orthographic"}]}, + {outputIndex:0, inputIndex:29, filters:[{index:24, value:"Orthographic"}]}, ]; // Filter verbs @@ -434,28 +434,28 @@ describe("Filters", function() { it("Should correctly filter irregular verbs", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:03, filterIndex:02, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:05, filterIndex:04, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:07, filterIndex:06, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:08, filterIndex:06, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:09, filterIndex:06, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:10, filterIndex:06, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:11, filterIndex:06, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:13, filterIndex:12, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:14, filterIndex:12, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:15, filterIndex:12, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:16, filterIndex:12, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:17, filterIndex:12, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:19, filterIndex:18, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:20, filterIndex:18, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:21, filterIndex:18, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:22, filterIndex:18, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:23, filterIndex:18, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:25, filterIndex:24, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:26, filterIndex:24, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:27, filterIndex:24, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:28, filterIndex:24, filterValue:"Irregular"}, - {set:"Verbs", outputIndex:0, inputIndex:29, filterIndex:24, filterValue:"Irregular"}, + {outputIndex:0, inputIndex:03, filters:[{index:02, value:"Irregular"}]}, + {outputIndex:0, inputIndex:05, filters:[{index:04, value:"Irregular"}]}, + {outputIndex:0, inputIndex:07, filters:[{index:06, value:"Irregular"}]}, + {outputIndex:0, inputIndex:08, filters:[{index:06, value:"Irregular"}]}, + {outputIndex:0, inputIndex:09, filters:[{index:06, value:"Irregular"}]}, + {outputIndex:0, inputIndex:10, filters:[{index:06, value:"Irregular"}]}, + {outputIndex:0, inputIndex:11, filters:[{index:06, value:"Irregular"}]}, + {outputIndex:0, inputIndex:13, filters:[{index:12, value:"Irregular"}]}, + {outputIndex:0, inputIndex:14, filters:[{index:12, value:"Irregular"}]}, + {outputIndex:0, inputIndex:15, filters:[{index:12, value:"Irregular"}]}, + {outputIndex:0, inputIndex:16, filters:[{index:12, value:"Irregular"}]}, + {outputIndex:0, inputIndex:17, filters:[{index:12, value:"Irregular"}]}, + {outputIndex:0, inputIndex:19, filters:[{index:18, value:"Irregular"}]}, + {outputIndex:0, inputIndex:20, filters:[{index:18, value:"Irregular"}]}, + {outputIndex:0, inputIndex:21, filters:[{index:18, value:"Irregular"}]}, + {outputIndex:0, inputIndex:22, filters:[{index:18, value:"Irregular"}]}, + {outputIndex:0, inputIndex:23, filters:[{index:18, value:"Irregular"}]}, + {outputIndex:0, inputIndex:25, filters:[{index:24, value:"Irregular"}]}, + {outputIndex:0, inputIndex:26, filters:[{index:24, value:"Irregular"}]}, + {outputIndex:0, inputIndex:27, filters:[{index:24, value:"Irregular"}]}, + {outputIndex:0, inputIndex:28, filters:[{index:24, value:"Irregular"}]}, + {outputIndex:0, inputIndex:29, filters:[{index:24, value:"Irregular"}]}, ]; // Filter verbs @@ -468,28 +468,28 @@ describe("Filters", function() { it("Should correctly filter nonregular verbs", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:03, filterIndex:02, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:05, filterIndex:04, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:07, filterIndex:06, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:08, filterIndex:06, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:09, filterIndex:06, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:10, filterIndex:06, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:11, filterIndex:06, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:13, filterIndex:12, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:14, filterIndex:12, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:15, filterIndex:12, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:16, filterIndex:12, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:17, filterIndex:12, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:19, filterIndex:18, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:20, filterIndex:18, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:21, filterIndex:18, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:22, filterIndex:18, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:23, filterIndex:18, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:25, filterIndex:24, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:26, filterIndex:24, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:27, filterIndex:24, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:28, filterIndex:24, filterValue:"Irregular|Stem.?Changing|Orthographic"}, - {set:"Verbs", outputIndex:0, inputIndex:29, filterIndex:24, filterValue:"Irregular|Stem.?Changing|Orthographic"}, + {outputIndex:0, inputIndex:03, filters:[{index:02, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:05, filters:[{index:04, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:07, filters:[{index:06, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:08, filters:[{index:06, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:09, filters:[{index:06, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:10, filters:[{index:06, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:11, filters:[{index:06, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:13, filters:[{index:12, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:14, filters:[{index:12, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:15, filters:[{index:12, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:16, filters:[{index:12, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:17, filters:[{index:12, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:19, filters:[{index:18, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:20, filters:[{index:18, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:21, filters:[{index:18, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:22, filters:[{index:18, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:23, filters:[{index:18, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:25, filters:[{index:24, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:26, filters:[{index:24, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:27, filters:[{index:24, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:28, filters:[{index:24, value:"Irregular|Stem.?Changing|Orthographic"}]}, + {outputIndex:0, inputIndex:29, filters:[{index:24, value:"Irregular|Stem.?Changing|Orthographic"}]}, ]; // Filter verbs @@ -504,12 +504,12 @@ describe("Filters", function() { it("Should correctly filter type subjects", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:02, filterIndex:02, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:04, filterIndex:04, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:06, filterIndex:06, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:12, filterIndex:12, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:18, filterIndex:18, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:24, filterIndex:24, filterValue:".*"}, + {outputIndex:0, inputIndex:02, filters:[{index:02, value:".*"}]}, + {outputIndex:0, inputIndex:04, filters:[{index:04, value:".*"}]}, + {outputIndex:0, inputIndex:06, filters:[{index:06, value:".*"}]}, + {outputIndex:0, inputIndex:12, filters:[{index:12, value:".*"}]}, + {outputIndex:0, inputIndex:18, filters:[{index:18, value:".*"}]}, + {outputIndex:0, inputIndex:24, filters:[{index:24, value:".*"}]}, ]; // Filter verbs @@ -522,12 +522,12 @@ describe("Filters", function() { it("Should correctly filter yo subjects", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:03, filterIndex:02, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:05, filterIndex:04, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:07, filterIndex:06, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:13, filterIndex:12, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:19, filterIndex:18, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:25, filterIndex:24, filterValue:".*"}, + {outputIndex:0, inputIndex:03, filters:[{index:02, value:".*"}]}, + {outputIndex:0, inputIndex:05, filters:[{index:04, value:".*"}]}, + {outputIndex:0, inputIndex:07, filters:[{index:06, value:".*"}]}, + {outputIndex:0, inputIndex:13, filters:[{index:12, value:".*"}]}, + {outputIndex:0, inputIndex:19, filters:[{index:18, value:".*"}]}, + {outputIndex:0, inputIndex:25, filters:[{index:24, value:".*"}]}, ]; // Filter verbs @@ -540,12 +540,12 @@ describe("Filters", function() { it("Should correctly filter tú subjects", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:03, filterIndex:02, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:05, filterIndex:04, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:08, filterIndex:06, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:14, filterIndex:12, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:20, filterIndex:18, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:26, filterIndex:24, filterValue:".*"}, + {outputIndex:0, inputIndex:03, filters:[{index:02, value:".*"}]}, + {outputIndex:0, inputIndex:05, filters:[{index:04, value:".*"}]}, + {outputIndex:0, inputIndex:08, filters:[{index:06, value:".*"}]}, + {outputIndex:0, inputIndex:14, filters:[{index:12, value:".*"}]}, + {outputIndex:0, inputIndex:20, filters:[{index:18, value:".*"}]}, + {outputIndex:0, inputIndex:26, filters:[{index:24, value:".*"}]}, ]; // Filter verbs @@ -558,12 +558,12 @@ describe("Filters", function() { it("Should correctly filter él subjects", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:03, filterIndex:02, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:05, filterIndex:04, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:09, filterIndex:06, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:15, filterIndex:12, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:21, filterIndex:18, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:27, filterIndex:24, filterValue:".*"}, + {outputIndex:0, inputIndex:03, filters:[{index:02, value:".*"}]}, + {outputIndex:0, inputIndex:05, filters:[{index:04, value:".*"}]}, + {outputIndex:0, inputIndex:09, filters:[{index:06, value:".*"}]}, + {outputIndex:0, inputIndex:15, filters:[{index:12, value:".*"}]}, + {outputIndex:0, inputIndex:21, filters:[{index:18, value:".*"}]}, + {outputIndex:0, inputIndex:27, filters:[{index:24, value:".*"}]}, ]; // Filter verbs @@ -576,12 +576,12 @@ describe("Filters", function() { it("Should correctly filter nosotros subjects", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:03, filterIndex:02, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:05, filterIndex:04, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:10, filterIndex:06, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:16, filterIndex:12, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:22, filterIndex:18, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:28, filterIndex:24, filterValue:".*"}, + {outputIndex:0, inputIndex:03, filters:[{index:02, value:".*"}]}, + {outputIndex:0, inputIndex:05, filters:[{index:04, value:".*"}]}, + {outputIndex:0, inputIndex:10, filters:[{index:06, value:".*"}]}, + {outputIndex:0, inputIndex:16, filters:[{index:12, value:".*"}]}, + {outputIndex:0, inputIndex:22, filters:[{index:18, value:".*"}]}, + {outputIndex:0, inputIndex:28, filters:[{index:24, value:".*"}]}, ]; // Filter verbs @@ -594,12 +594,12 @@ describe("Filters", function() { it("Should correctly filter ellos subjects", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:03, filterIndex:02, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:05, filterIndex:04, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:11, filterIndex:06, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:17, filterIndex:12, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:23, filterIndex:18, filterValue:".*"}, - {set:"Verbs", outputIndex:0, inputIndex:29, filterIndex:24, filterValue:".*"}, + {outputIndex:0, inputIndex:03, filters:[{index:02, value:".*"}]}, + {outputIndex:0, inputIndex:05, filters:[{index:04, value:".*"}]}, + {outputIndex:0, inputIndex:11, filters:[{index:06, value:".*"}]}, + {outputIndex:0, inputIndex:17, filters:[{index:12, value:".*"}]}, + {outputIndex:0, inputIndex:23, filters:[{index:18, value:".*"}]}, + {outputIndex:0, inputIndex:29, filters:[{index:24, value:".*"}]}, ]; // Filter verbs @@ -614,7 +614,7 @@ describe("Filters", function() { it("Should correctly filter English to Conjugations", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:0, inputIndex:3, filterIndex:2, filterValue:".*"}, + {outputIndex:0, inputIndex:3, filters:[{index:2, value:".*"}]}, ]; // Filter verbs @@ -627,7 +627,7 @@ describe("Filters", function() { it("Should correctly filter Spanish to Conjugations", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:1, inputIndex:3, filterIndex:2, filterValue:".*"}, + {outputIndex:1, inputIndex:3, filters:[{index:2, value:".*"}]}, ]; // Filter verbs @@ -640,7 +640,7 @@ describe("Filters", function() { it("Should correctly filter Conjugations to English", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:3, inputIndex:0, filterIndex:2, filterValue:".*"}, + {outputIndex:3, inputIndex:0, filters:[{index:2, value:".*"}]}, ]; // Filter verbs @@ -653,7 +653,7 @@ describe("Filters", function() { it("Should correctly filter Conjugations to Spanish", function() { // Initialize expected let expected = [ - {set:"Verbs", outputIndex:3, inputIndex:1, filterIndex:2, filterValue:".*"}, + {outputIndex:3, inputIndex:1, filters:[{index:2, value:".*"}]}, ]; // Filter verbs @@ -667,95 +667,81 @@ describe("Filters", function() { describe("ApplyFilters method", function() { // Initialize vocab - let vocab = { - "set1": [ - ["Upper", "Lower", "Type1", "Type2"], - ["A", "a", "Noun", "Vowel"], - ["B", "b", "Adjective", "Consonant"], - ["C", "c", "Verb", "Consonant"], - ], - "set2": [ - ["Upper", "Lower", "Type1", "Type2"], - ["Z", "z", "Noun", "Consonant"], - ["Y", "y", "Adjective", "Vowel,Consonant"], - ["X", "x", "Verb", "Consonant"], - ], - }; - - it("Should correctly filter different vocab sets", function() { + let vocab = [ + ["Upper", "Lower", "Type1", "Type2"], + ["A", "a", "Noun", "Vowel"], + ["B", "b", "Adjective", "Consonant"], + ["C", "c", "Verb", "Consonant"], + ]; + + it("Should correctly filter different outputIndexes", function() { // Initialize expected let expected = [ ["Upper", "A", "Lower", "a"], ["Upper", "B", "Lower", "b"], ["Upper", "C", "Lower", "c"], - ["Upper", "X", "Lower", "x"], - ["Upper", "Y", "Lower", "y"], - ["Upper", "Z", "Lower", "z"], + ["Type2", "Vowel", "Lower", "a"], + ["Type2", "Consonant", "Lower", "b"], + ["Type2", "Consonant", "Lower", "c"], ]; // Call ApplyFilters let actual = ApplyFilters(vocab, [ - {set:"set1", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:".*"}, - {set:"set2", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:".*"}, + {outputIndex:0, inputIndex:1, filters:[{index:2, value:".*"}]}, + {outputIndex:3, inputIndex:1, filters:[{index:2, value:".*"}]}, ]); // Assert filtered vocab is correct expect(actual).to.have.deep.members(expected); }); - it("Should correctly filter different outputIndexes", function() { + it("Should correctly filter different inputIndexes", function() { // Initialize expected let expected = [ ["Upper", "A", "Lower", "a"], ["Upper", "B", "Lower", "b"], ["Upper", "C", "Lower", "c"], - ["Type2", "Vowel", "Lower", "a"], - ["Type2", "Consonant", "Lower", "b"], - ["Type2", "Consonant", "Lower", "c"], + ["Upper", "A", "Type2", "Vowel"], + ["Upper", "B", "Type2", "Consonant"], + ["Upper", "C", "Type2", "Consonant"], ]; // Call ApplyFilters let actual = ApplyFilters(vocab, [ - {set:"set1", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:".*"}, - {set:"set1", outputIndex:3, inputIndex:1, filterIndex:2, filterValue:".*"}, + {outputIndex:0, inputIndex:1, filters:[{index:2, value:".*"}]}, + {outputIndex:0, inputIndex:3, filters:[{index:2, value:".*"}]}, ]); // Assert filtered vocab is correct expect(actual).to.have.deep.members(expected); }); - it("Should correctly filter different inputIndexes", function() { + it("Should correctly filter different filterIndexes and filtervalues", function() { // Initialize expected let expected = [ - ["Upper", "A", "Lower", "a"], - ["Upper", "B", "Lower", "b"], ["Upper", "C", "Lower", "c"], - ["Upper", "A", "Type2", "Vowel"], - ["Upper", "B", "Type2", "Consonant"], - ["Upper", "C", "Type2", "Consonant"], + ["Upper", "A", "Lower", "a"], ]; // Call ApplyFilters let actual = ApplyFilters(vocab, [ - {set:"set1", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:".*"}, - {set:"set1", outputIndex:0, inputIndex:3, filterIndex:2, filterValue:".*"}, + {outputIndex:0, inputIndex:1, filters:[{index:2, value:"Verb"}]}, + {outputIndex:0, inputIndex:1, filters:[{index:3, value:"Vowel"}]}, ]); // Assert filtered vocab is correct expect(actual).to.have.deep.members(expected); }); - it("Should correctly filter different filterIndexes and filtervalues", function() { + it("Should correctly filter multiple filters", function() { // Initialize expected let expected = [ ["Upper", "C", "Lower", "c"], - ["Upper", "A", "Lower", "a"], ]; // Call ApplyFilters let actual = ApplyFilters(vocab, [ - {set:"set1", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:"Verb"}, - {set:"set1", outputIndex:0, inputIndex:1, filterIndex:3, filterValue:"Vowel"}, + {outputIndex:0, inputIndex:1, filters:[{index:2, value:"Noun|Verb"}, {index:3, value:"Consonant"}]}, ]); // Assert filtered vocab is correct @@ -764,14 +750,12 @@ describe("Filters", function() { describe("multiplePrompts setting", function() { // Initialize vocab2 - let vocab2 = { - "set1": [ - ["Upper", "Lower", "Type1"], - ["A1, A2 , A3", "a", "Noun"], - ["B1, B2", "b", "Adjective"], - ["C", "c", "Verb"], - ], - }; + let vocab2 = [ + ["Upper", "Lower", "Type1"], + ["A1, A2 , A3", "a", "Noun"], + ["B1, B2", "b", "Adjective"], + ["C", "c", "Verb"], + ]; it("Shouldn't effect single prompts", function() { // Initialize expected @@ -780,7 +764,7 @@ describe("Filters", function() { ]; // Call ApplyFilters - let actual = ApplyFilters(vocab2, [{set:"set1", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:"Verb"}], "Show separately"); + let actual = ApplyFilters(vocab2, [{outputIndex:0, inputIndex:1, filters:[{index:2, value:"Verb"}]}], "Show separately"); // Assert filtered vocab is correct expect(actual).to.have.deep.members(expected); @@ -794,7 +778,7 @@ describe("Filters", function() { ]; // Call ApplyFilters - let actual = ApplyFilters(vocab2, [{set:"set1", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:"Noun|Adjective"}], "Show together"); + let actual = ApplyFilters(vocab2, [{outputIndex:0, inputIndex:1, filters:[{index:2, value:"Noun|Adjective"}]}], "Show together"); // Assert filtered vocab is correct expect(actual).to.have.deep.members(expected); @@ -811,7 +795,7 @@ describe("Filters", function() { ]; // Call ApplyFilters - let actual = ApplyFilters(vocab2, [{set:"set1", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:"Noun|Adjective"}], "Show separately"); + let actual = ApplyFilters(vocab2, [{outputIndex:0, inputIndex:1, filters:[{index:2, value:"Noun|Adjective"}]}], "Show separately"); // Assert filtered vocab is correct expect(actual).to.have.deep.members(expected); @@ -834,7 +818,7 @@ describe("Filters", function() { } // Call ApplyFilters - let actual = ApplyFilters(vocab2, [{set:"set1", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:"Noun|Adjective"}], "Show one"); + let actual = ApplyFilters(vocab2, [{outputIndex:0, inputIndex:1, filters:[{index:2, value:"Noun|Adjective"}]}], "Show one"); // Assert filtered vocab is correct expect(actual).to.have.deep.members(expected); @@ -862,7 +846,7 @@ describe("Filters", function() { } // Call ApplyFilters - let actual = ApplyFilters(vocab2, [{set:"set1", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:"Noun|Adjective"}], "Show one"); + let actual = ApplyFilters(vocab2, [{outputIndex:0, inputIndex:1, filters:[{index:2, value:"Noun|Adjective"}]}], "Show one"); // Assert filtered vocab is correct expect(actual).to.have.deep.members(expected); @@ -890,7 +874,7 @@ describe("Filters", function() { } // Call ApplyFilters - let actual = ApplyFilters(vocab2, [{set:"set1", outputIndex:0, inputIndex:1, filterIndex:2, filterValue:"Noun|Adjective"}], "Show one"); + let actual = ApplyFilters(vocab2, [{outputIndex:0, inputIndex:1, filters:[{index:2, value:"Noun|Adjective"}]}], "Show one"); // Assert filtered vocab is correct expect(actual).to.have.deep.members(expected); diff --git a/tests/test.quizzer.js b/tests/test.quizzer.js @@ -427,7 +427,6 @@ describe("Quizzer", function() { Quizzer.Continue(); // Assert prompts not changed - console.info(Quizzer.prompts); expect(Quizzer.prompts[00]).to.have.members(["B1", "B2", "B3", "B4"]); expect(Quizzer.prompts[01]).to.have.members(["C1", "C2", "C3", "C4"]); expect(Quizzer.prompts[02]).to.have.members(["D1", "D2", "D3", "D4"]); diff --git a/vocab/Adjectives.csv b/vocab/Adjectives.csv @@ -1,35 +0,0 @@ -English,Spanish,Type -Artistic,Artístico,Adjective -Athletic,Atlético,Adjective -Bad,Malo,Adjective -Big,Grande,Adjective -Blonde hair,Pelo rubio,Adjective -Brown hair,Pelo castaño,Adjective -Disorganized,Desorganizado,Adjective -Fantastic,Fantástico,Adjective -"Friendly, Kind",Amable,Adjective -Funny,Cómico,Adjective -Good,Bueno,Adjective -Good natured,Afable,Adjective -Handsome,Guapo,Adjective -Happy,Alegre,Adjective -Hard working,Trabajador,Adjective -Intelligent,Inteligente,Adjective -Interesting,Interesante,Adjective -Lazy,Perezoso,Adjective -Loving,Cariñoso,Adjective -Nice,Simpático,Adjective -Old,Viejo,Adjective -Organized,Organizado,Adjective -Pleasant,Agradable,Adjective -Pretty,Bonito,Adjective -Red haired,Pelirrojo,Adjective -Serious,Serio,Adjective -Short,Bajo,Adjective -Small,Pequeño,Adjective -Special,Especial,Adjective -Studious,Estudioso,Adjective -Sweet,Dulce,Adjective -Tall,Alto,Adjective -Witty,Ingenioso,Adjective -Young,Joven,Adjective -\ No newline at end of file diff --git a/vocab/Adverbs.csv b/vocab/Adverbs.csv @@ -1,9 +0,0 @@ -English,Spanish,Type -Almost always,Casi siempre,Adverb -Almost never,Casi nunca,Adverb -Always,Siempre,Adverb -From time to time,De vez en cuando,Adverb -Never,Nunca,Adverb -Poorly,Mal,Adverb -Sometimes,A menudo,Adverb -Well,Bien,Adverb -\ No newline at end of file diff --git a/vocab/Childhood.csv b/vocab/Childhood.csv @@ -1,37 +0,0 @@ -English,Spanish,Type -Amusement park,El parque de diversiones,Noun -Precious,Precioso,Adjective -Bratty,Malcriado,Adjective -Calm,Tranquilo,Adjective -Circus,El circo,Noun -Comic strips,Las tiras cómicas,Noun -Doll,La muñeca,Noun -Electric train,El tren eléctrico,Noun -Imaginary,Imaginario,Adjective -Jealous,Celoso,Adjective -Mischief,La travesura,Noun -Naughty,Travieso,Adjective -Obedient,Obediente,Adjective -Precocious,Precoz,Adjective -Primary school,La primaria,Noun -Sand box,La cancha de arena,Noun -Secondary school,La secundaria,Noun -Spoiled,Mimado,Adjective -Stuffed animal,El muñeco de peluche,Noun -Tender,Tierno,Adjective -To break,Romper,Verb -To climb trees,Treparse los árboles,Verb -To color,Colorear,Verb -To construct,Construir,Verb -To disobey,Desobedecer,Verb -To dress up,Disfrazarse,Verb -To fight,Pelearse,Verb -To hide,Esconder,Verb -To jump,Saltar,Verb -To obey,Obedecer,Verb -To play hide and seek,Jugar al escondite,Verb -To play hopscotch,Jugar a la rayuela,Verb -To play with dolls,Jugar con muñecas,Verb -To ride a tricycle,Andar en triciclo,Verb -Video games,Los videojuegos,Noun -Zoo,El zoológico,Noun -\ No newline at end of file diff --git a/vocab/Clothes.csv b/vocab/Clothes.csv @@ -1,59 +0,0 @@ -English,Spanish,Type -Bag,La bolsa,Noun -Bathing Suit,El traje de baño,Noun -Bathrobe,La bata,Noun -Beanie,La gorra,Noun -Belt,El cinturón,Noun -Blouse,La blusa,Noun -Boots,Las botas,Noun -Bracelet,La pulsera,Noun -Buttons,Los botones,Noun -Cotton,El algodón,Noun -Cover Up,La playera,Noun -Dress,El vestido,Noun -Earring,El arete,Noun -Flip Flops,Las chanclas,Noun -Glasses,Los anteojos,Noun -Gloves,Los guantes,Noun -Hat,El sombrero,Noun -High Heels,Los tacones,Noun -Jacket,La chaqueta,Noun -Knit Scarf,La bufanda,Noun -Leather,El cuero,Noun -Long Sleeve,La manga larga,Noun -Loose,Flojo,Adjective -Necklace,El collar,Noun -Overcoat,El abrigo,Noun -Pajamas,La pijama,Noun -Pants,Los pantalones,Noun -Plaid,De cuadra,Adjective -Polka Dot,De manchas,Adjective -Repeating Design,De diseño,Adjective -Ring,El anillo,Noun -Shirt,La camisa,Noun -Shoes,Los zapatos,Noun -Short Sleeve,La manga corta,Noun -Shorts,"Los chorts, Los pantalones cortos",Noun -Silk,La seda,Noun -Skirt,La falda,Noun -Sleeve,La manga,Noun -Sleeveless,Sin mangas,Adjective -Socks,Los calcetines,Noun -Spandex,La licra,Noun -Striped,De rayas,Adjective -Suit,El traje,Noun -Sunglasses,Las gafas,Noun -Sweater,El suéter,Noun -Sweatshirt,La sudadera,Noun -T-Shirt,La camiseta,Noun -Tennis Shoes,Los tenís,Noun -Tie,La corbata,Noun -Tight,Apretado,Adjective -Tights,Las medias,Noun -Underwear,La ropa interior,Noun -Velvet,El terciopelo,Noun -Vest,El chaleco,Noun -Wallet,La cartera,Noun -Watch,El reloj,Noun -Wool,La lana,Noun -Zipper,El cierre,Noun -\ No newline at end of file diff --git a/vocab/Colors.csv b/vocab/Colors.csv @@ -1,12 +0,0 @@ -English,Spanish,Type -Black,Negro,Adjective -Blue,Azúl,Adjective -Brown,Marrón,Adjective -Gray,Gris,Adjective -Green,Verde,Adjective -Orange,Anaranjado,Adjective -Pink,Rosado,Adjective -Purple,Morada,Adjective -Red,Rojo,Adjective -White,Blanco,Adjective -Yellow,Amarillo,Adjective -\ No newline at end of file diff --git a/vocab/Days.csv b/vocab/Days.csv @@ -1,8 +0,0 @@ -English,Spanish,Type -Friday,Viernes,Noun -Monday,Lunes,Noun -Saturday,Sábado,Noun -Sunday,Domingo,Noun -Thursday,Jueves,Noun -Tuesday,Martes,Noun -Wednesday,Miércoles,Noun -\ No newline at end of file diff --git a/vocab/Family.csv b/vocab/Family.csv @@ -1,36 +0,0 @@ -English,Spanish,Type -Aunt,La tía,Noun -Boyfriend,El novio,Noun -Child,El hijo,Noun -Cousin,El primo,Noun -Dad,El papi,Noun -Daughter in law,La nuera,Noun -Father,El padre,Noun -Girlfriend,La novia,Noun -God father,El padrino,Noun -God mother,La madrina,Noun -Grandchild,El nieto,Noun -Grandparent,El abuelo,Noun -Great grandchild,El bisnieto,Noun -Great grandparent,El bisabuelo,Noun -Husband,El marido,Noun -In laws,Los suegros,Noun -Mom,La mami,Noun -Mother,La madre,Noun -Nephew,El sobrino,Noun -Newlyweds,Los novios,Noun -Niece,La sobrina,Noun -Older,Mayor,Adjective -Only child,El único hijo,Noun -Parent in Law,El suegro,Noun -Partner,La pareja,Noun -Sibling in law,El cuñado,Noun -Sibling,El hermano,Noun -Son in law,El yerno,Noun -Step father,El padrastro,Noun -Step mother,La madrastra,Noun -Step sibling,El hermanastro,Noun -Twin,El gemelo,Noun -Uncle,El tío,Noun -Wife,La mujer,Noun -Younger,Menor,Adjective -\ No newline at end of file diff --git a/vocab/Food.csv b/vocab/Food.csv @@ -1,41 +0,0 @@ -English,Spanish,Type -Bill,La cuenta,Noun -Bitter,Amargo,Adjective -Bowl,El plato hondo,Noun -Clean,Limpio,Adjective -Closed,Cerrado,Adjective -Cup,"La taza,El vaso",Noun -Cutlery,Los cubiertos,Noun -Delicious,Delicioso,Adjective -Dessert,El postre,Noun -Dirty,Sucio,Adjective -Drink,La bebida,Noun -Flavor,El sabor,Noun -Food,La comida,Noun -Fork,El tenedor,Noun -Full,Lleno,Adjective -Hunger,El hambre,Noun -Knife,El cuchillo,Noun -Main dish,La entrada,Noun -Menu,"El menú, La carta",Noun -Napkin,La servilleta,Noun -Open,Abierto,Adjective -Pepper,La pimienta,Noun -"Plate, Dish, Meal",El plato,Noun -Refreshment,El refresco,Noun -Reservation,La reserva,Noun -Restraunt,El restaurante,Noun -Rich,Rico,Adjective -Salt,La sal,Noun -Salty,Salado,Adjective -Satisfied,Satisfecho,Adjective -Saucer,El platillo,Noun -Sea food,Los mariscos,Noun -Sour,Agrio,Adjective -Spoon,La cuchara,Noun -Sweet,Dulce,Adjective -Table,La mesa,Noun -Thirst,La sed,Noun -Tip,La propina,Noun -To cook,Cocinar,Verb -Waiter,El camarero,Noun -\ No newline at end of file diff --git a/vocab/Health.csv b/vocab/Health.csv @@ -1,64 +0,0 @@ -English,Spanish,Type -AIDS,El SIDA,Noun -Allergy,La alergia,Noun -Ambulance,La ambulancia,Noun -Apendicitis,El apendicitis,Noun -Appointment,La consulta,Noun -Blood,La sangre,Noun -Cancer,El cáncer,Noun -"Cast, Plaster",El yeso,Noun -Chicken pox,La varicela,Noun -Clinic,La clínica,Noun -Cold,El resfriado,Noun -Cough,La tos,Noun -Crutches,Las muletas,Noun -Diarrhea,La diarrea,Noun -Doctor,El médico,Noun -Doctor's office,La oficina del médico,Noun -Flu,La gripe,Noun -Gloves,Los guantes,Noun -Headache,El dolor de cabeza,Noun -Healthy,"Sano, Saludable",Adjective -Heart Attack,"El infarto, El ataque de corazón",Noun -Heavy,Pesado,Adjective -Hospital,El hospital,Noun -Infection,La infección,Noun -Injection,La inyección,Noun -Mask,La mascarilla,Noun -Measels,El sarampión,Noun -Mumps,Las paperas,Noun -Needle,La aguja,Noun -Nurse,La enfermera,Noun -Pills,Las pastillas,Noun -Pneumonia,La pulmonía,Noun -Prescription,La receta,Noun -Scar,La cicatriz,Noun -Sick,Enfermo,Adjective -Smallpox,La viruela,Noun -Sore throat,El dolor de garganta,Noun -Stomach ache,El dolor de estómago,Noun -Surgery,La cirugía,Noun -"Temperature, Fever","La fiebre, La temperatura",Noun -To cough,Toser,Verb -To cure,Curar,Verb -To die,Morir,Verb -To examine,"Examinar, Revisar",Verb -To faint,Desmayarse,Verb -To fall,Caerse,Verb -To feel,Sentirse,Verb -To fracture,Fracturarse,Verb -To get burned,Quemarse,Verb -To get cut,Cortarse,Verb -To get hit,Golpearse,Verb -To get motion sickness,Merearse,Verb -To get sick,Enfermarse,Verb -To hurt,Doler,Verb -To pass away,Fallecer,Verb -To recover,Recuperarse,Verb -To sneeze,Estornudar,Verb -To suffer,Sufrir,Verb -To sweat,Sudar,Verb -To swell,Hincharse,Verb -To throw up,Vomitar,Verb -Vaccine,La vacuna,Noun -X-ray,"Los rayos X, La radiografía",Noun -\ No newline at end of file diff --git a/vocab/House.csv b/vocab/House.csv @@ -1,89 +0,0 @@ -English,Spanish,Type -Alarm Clock,El despertador,Noun -Apartment,El apartamento,Noun -Armchair,El sillón,Noun -Art,El arte,Noun -Balcony,El balcón,Noun -Basement,El sótano,Noun -Bathroom,El baño,Noun -Bathtub,La bañera,Noun -Bed,La cama,Noun -Bedroom,La habitación,Noun -Big,Grande,Adjective -Bricks,Los ladrillos,Noun -Calendar,El calendario,Noun -"Carpet, Rug",La alfombra,Noun -Ceiling,El techo,Noun -Chair,La silla,Noun -Chandelier,La araña de luces,Noun -Clock,El reloj,Noun -Closet,El armario,Noun -Clothes,La ropa,Noun -Computer,La computadora,Noun -Condominium,El condominio,Noun -Curtains,Las cortinas,Noun -Dark,Oscuro,Adjective -Desk,El escritorio,Noun -Dining room,El comedor,Noun -Dishes,Los platos,Noun -Dishwasher,El lavaplatos,Noun -Dresser,La cómoda,Noun -Entry way,"La entrada, El recibidor",Noun -Floor,El piso,Noun -Freezer,El congelador,Noun -Furniture,Los muebles,Noun -Garage,El garaje,Noun -Garbage can,El basurero,Noun -Home,El hogar,Noun -Kitchen,La cocina,Noun -Lamp,La lámpara,Noun -Light,La luz,Noun -Living Room,La sala,Noun -Luminous,Luminoso,Adjective -Luxurious,Lujoso,Adjective -Magazines,Las revistas,Noun -Main Door,La puerta principal,Noun -Microwave,El microondas,Noun -Mirror,El espejo,Noun -Modest,Modesto,Adjective -Neighborhood,El vecindario,Noun -Neighbors,Los vecinos,Noun -New,Nuevo,Adjective -Noisy,Ruidoso,Adjective -Office,La oficina,Noun -Old,Viejo,Adjective -Oven,El horno,Noun -Paintings,Las pinturas,Noun -Paper clip,Los sujetapapeles,Noun -Phone,El teléfono,Noun -Photographs,Las fotografías,Noun -Pillow,La almohada,Noun -Pots,Las ollas,Noun -Quiet,Tranquilo,Adjective -Refrigerator,La refrigeradora,Noun -Sheets,Las sábanas,Noun -Shelf,El estante,Noun -Shower,La ducha,Noun -Sink,El lavabo,Noun -Small,Pequeño,Adjective -Soap,El jabón,Noun -Sofa,El sofá,Noun -Spacious,Espacioso,Adjective -Stapler,La grapadora,Noun -Stone,La losa,Noun -Stove,"La estufa, La cocina",Noun -Table,La mesa,Noun -Tablecloth,El mantel,Noun -Television,"El televisor, La televisión",Noun -To iron,Planchar,Verb -To make the bed,Hacer la cama,Verb -To mow the lawn,Cortar el césped,Verb -To set the table,Poner la mesa,Verb -To take care of the dog,Cuidar al perro,Verb -To vaccum,Pasar la aspiradora,Verb -Toilet,El inodoro,Noun -Towels,Las toallas,Noun -Wall,La pared,Noun -Window,La ventana,Noun -Wood,La madera,Noun -Yard,El jardín,Noun -\ No newline at end of file diff --git a/vocab/Months.csv b/vocab/Months.csv @@ -1,13 +0,0 @@ -English,Spanish,Type -April,Abril,Noun -August,Agosto,Noun -December,Diciembre,Noun -February,Febrero,Noun -January,Enero,Noun -July,Julio,Noun -June,Junio,Noun -March,Marzo,Noun -May,Mayo,Noun -November,Noviembre,Noun -October,Octubre,Noun -September,Septiembre,Noun -\ No newline at end of file diff --git a/vocab/Nature.csv b/vocab/Nature.csv @@ -1,106 +0,0 @@ -English,Spanish,Type -Backpack,La mochila,Noun -Barbeque,La Barbacoa,Noun -Bat,El murciélago,Noun -Beach,La playa,Noun -Bear,El oso,Noun -Beautiful,Bello,Adjective -Better,Mejor,Adjective -Biodiversity,La biodiversidad,Noun -Bird,"El ave, El pájaro",Noun -Bonfire,La fogata,Noun -Branch,La rama,Noun -Calm,Tranquilo,Adjective -Camp,El campamento,Noun -Camper van,La autocaravana,Noun -Camper,El campisto,Noun -Cat,El gato,Noun -Compass,La brújula,Noun -Cow,La vaca,Noun -Dangerous,Peligroso,Adjective -Dense,Denso,Adjective -Desert,El desierto,Noun -Dog,El perro,Noun -Donkey,El burro,Noun -Duck,El pato,Noun -Elephant,El elefante,Noun -Environment,El medioambiente,Noun -Equipment,El equipo,Noun -Fauna,La fauna,Noun -Fierce,Feroz,Adjective -Fish,El pez,Noun -Fishing pole,La caña de pescar,Noun -Flora,La flora,Noun -Fly,La mosca,Noun -Forest,El bosque,Noun -Fox,El zorro,Noun -Frog,La rana,Noun -Fur,El pelaje,Noun -Geography,La geografía,Noun -Goat,La cabra,Noun -Goose,El ganso,Noun -Hairy,Peludo,Adjective -Hen,La gallina,Noun -Horse,El caballo,Noun -Island,La isla,Noun -Jungle,La selva,Noun -Lake,El lago,Noun -Landscape,El paisaje,Noun -Map,El mapa,Noun -Monkey,El mono,Noun -Mountains,Las montañas,Noun -Mouse,El ratón,Noun -Ocean,El océano,Noun -Path,El sendero,Noun -Pig,El cerdo,Noun -Profound,Profundo,Adjective -Rabbit,El conejo,Noun -Rat,La rata,Noun -River,El río,Noun -Sand,La arena,Noun -Sea,El mar,Noun -Seal,La foca,Noun -Sheep,La oveja,Noun -Shore,La orilla,Noun -Skunk,La mofeta,Noun -Sleeping bag,El saco de dormir,Noun -Sloth,El perezoso,Noun -Snake,"La serpiente, La culebra",Noun -Spider,La araña,Noun -Squirrel,La ardilla,Noun -Stars,Las estrellas,Noun -Tent,La carpa,Noun -To adore,Adorar,Verb -To attack,Atacar,Verb -To bite,Morder,Verb -To bother,Molestar,Verb -To bring,Traer,Verb -To brush,Cepillar,Verb -To camp,Acampar,Verb -To change,Cambiar,Verb -To climb,"Escalar, Trepar",Verb -To close,Cerrar,Verb -To count,Contar,Verb -To fix,Arreglar,Verb -To get mad,Enojar,Verb -To help,Ayudar,Verb -To hit,Pegar,Verb -To hug,Abrazar,Verb -To ignore,Ignorar,Verb -To lead,Dirigir,Verb -To light the fire,Prender fuego,Verb -To navigate,Navegar,Verb -To not litter,No tirar basura,Verb -To observe,Observar,Verb -To put out a fire,Apagar fuego,Verb -To recycle,Reciciar,Verb -To respect,Respetar,Verb -To stay,Quedar,Verb -Toad,El soap,Noun -Trees,Los árboles,Noun -Turkey,El pavo,Noun -View,La vista,Noun -Wave,La ola,Noun -Wild,Salvaje,Adjective -Wolf,El lobo,Noun -Worst,Peor,Adjective -\ No newline at end of file diff --git a/vocab/Numbers.csv b/vocab/Numbers.csv @@ -1,31 +0,0 @@ -English,Spanish,Type -One,Uno,Noun -Two,Dos,Noun -Three,Tres,Noun -Four,Cuatro,Noun -Five,Cinco,Noun -Six,Seis,Noun -Seven,Siete,Noun -Eight,Ocho,Noun -Nine,Nueve,Noun -Ten,Diez,Noun -Eleven,Once,Noun -Twelve,Doce,Noun -Thirteen,Trece,Noun -Fourteen,Catorce,Noun -Fifteen,Quince,Noun -Sixteen,Dieciséis,Noun -Seventeen,Diecisiete,Noun -Eighteen,Dieciocho,Noun -Nineteen,Diecinueve,Noun -Twenty,Veinte,Noun -Thirty,Treinta,Noun -Fourty,Cuarenta,Noun -Fifty,Cincuenta,Noun -Sixty,Sesenta,Noun -Seventy,Setenta,Noun -Eighty,Ochenta,Noun -Ninety,Noventa,Noun -Hundred,Cien,Noun -Thousand,Mil,Noun -Million,Millón,Noun -\ No newline at end of file diff --git a/vocab/Prepositions.csv b/vocab/Prepositions.csv @@ -1,25 +0,0 @@ -English,Spanish,Type -"About, Over",Sobre,Preposition -According to,Según,Preposition -After,"Tras, Después de",Preposition -Against,Contra,Preposition -"At, By means of, To",A,Preposition -Before,Antes de,Preposition -Behind,"Tras, Detrás de",Preposition -Between,Entre,Preposition -By,Por,Preposition -For,"Por, Para",Preposition -"From, Since",Desde,Preposition -"In, On",En,Preposition -In front of,"Delante de, Enfrente de",Preposition -In order to,Para,Preposition -Inside of,Dentro de,Preposition -Near,Cerca de,Preposition -Of,De,Preposition -On top of,Encima de,Preposition -Outside of,Fuera de,Preposition -Towards,Hacia,Preposition -Under,Bajo,Preposition -Until,Hasta,Preposition -With,Con,Preposition -Without,Sin,Preposition -\ No newline at end of file diff --git a/vocab/Professions.csv b/vocab/Professions.csv @@ -1,41 +0,0 @@ -English,Spanish,Type -Architect,El arquitecto,Noun -Artist,El artista,Noun -Broker,El agente de bolsa,Noun -Businessman,El hombre de negocios,Noun -Career,La carrera,Noun -Carpinter,El carpintero,Noun -Company,La compañía,Noun -Dentist,El dentista,Noun -Designer,El diseñador,Noun -Detective,El detective,Noun -Doctor,El doctor,Noun -Engineer,El ingeniero,Noun -Enterprise,La empresa,Noun -Executive,El ejecutivo,Noun -Fireman,El bombero,Noun -Full time,Todo tiempo,Noun -Half time,Medio tiempo,Noun -Job,"El empleo, El trabajo, El oficio",Noun -Lawyer,El abogado,Noun -Meeting,La reunión,Noun -Nurse,El enfermero,Noun -Pilot,El piloto,Noun -Policeman,El policía,Noun -Politician,El político,Noun -Postman,El cartero,Noun -Programmer,El programador,Noun -Promotion,El ascenso,Noun -Raise,El aumento de sueldo,Noun -Scientist,El científico,Noun -Teacher,El profesor,Noun -To employ,Emplear,Verb -To get fired,Despedir,Verb -To invert,Invertir,Verb -To leave,Dejar,Verb -To resign,Renunciar,Verb -To retire,Jubilarse,Verb -To succeed,Tener éxito,Verb -Veterinarian,El veterinario,Noun -Video conference,La videoconferencia,Noun -Wage,El sueldo,Noun -\ No newline at end of file diff --git a/vocab/Questions.csv b/vocab/Questions.csv @@ -1,7 +0,0 @@ -English,Spanish,Type -How,Cómo,Other -What,Qué,Other -When,Cuando,Other -Where,Dónde,Other -Who,Quien,Other -Why,Por qué,Other -\ No newline at end of file diff --git a/vocab/Transitions.csv b/vocab/Transitions.csv @@ -1,41 +0,0 @@ -English,Spanish,Type -Additionally,Adicionalmente,Other -Afterwards,Más tarde,Other -"Although, Even if",Aunque,Other -As long as,Siempre que,Other -As soon as,Apenas,Other -As,"Como, Ya que",Other -At first,Al principio,Other -At last,Al final,Other -Because of,A causa de,Other -But,Pero,Other -Despite,A pesar de,Other -During,Durante,Other -Finally,"Finalmente, Por último",Other -First and foremost,Ante todo,Other -First,Primero,Other -For example,Por ejemplo,Other -Furthermore,Además,Other -However,Sin embargo,Other -If,Si,Other -In a word,En pocas palabras,Other -In case,En caso de que,Other -In other words,En otras palabras,Other -In that case,En ese caso,Other -In this way,De esta manera,Other -Meanwhile,Mientras tanto,Other -Now that,Ahora que,Other -Now,Ahora,Other -On the other hand,Por otro lado,Other -Second,Segundo,Other -Since,"Como, Desde, Ya que",Other -So,Entonces,Other -Thanks to,Gracias a,Other -That's why,Por eso,Other -Then,"Entonces, Luego",Other -Therefore,Por lo tanto,Other -Thus,Así,Other -To begin,Para empezar,Other -To conclude,Para concluir,Other -Unless,A menos que,Other -While,Mientras,Other -\ No newline at end of file diff --git a/vocab/Vacation.csv b/vocab/Vacation.csv @@ -1,60 +0,0 @@ -English,Spanish,Type -Bakery,La panadería,Noun -"Beautiful, Nice",Bello,Adjective -Bus stop,La parada de autobus,Noun -Butcher,La carnicería,Noun -Cafeteria,La cafetería,Noun -Candy store,La dulcería,Noun -Cash,El dinero en efectivo,Noun -Clothing store,La tienda de ropa,Noun -Credit card,La tarjeta de crédito,Noun -Double room,La habitación doble,Noun -Elevator,El ascensor,Noun -Expensive,Caro,Adjective -Fish store,La pescadería,Noun -Florist,La florería,Noun -Free time,El tiempo libre,Noun -Fruit store,La frutería,Noun -Funeral parlor,La funeraría,Noun -Furniture store,La mueblería,Noun -Grocery store,La abarrotería,Noun -Hair salon,La peluquería,Noun -Handicrafts,Las artesanías,Noun -Hardware store,La ferretería,Noun -Hotel room,La habitación,Noun -Hotel,El hotel,Noun -Ice cream store,La heladería,Noun -Inn,El hostal,Noun -Jewelry store,La joyería,Noun -Jewelry,Las joyas,Noun -Key,La llave,Noun -Library,La librería,Noun -Lodging,El alojamiento,Noun -Open-air market,El mercado al aire libre,Noun -Paper store,La papelería,Noun -Pet store,La tienda de mascotas,Noun -Pharmacy,La farmacía,Noun -Postcard,La tarjeta postal,Noun -Reception desk,La recepción,Noun -Reservation,La reservación,Noun -Shoe store,La zapatería,Noun -Single room,La habitación individual,Noun -Souvenir,El recuerdo,Noun -Supermarket,El supermercado,Noun -Tire store,La llantería,Noun -To bargain,Regatear,Verb -To be on vacation,Estar de vacaciones,Verb -To Camp,Acampar,Verb -To fish,Pescar,Verb -To go on a day trip,Hacer una excursion,Verb -To go sightseeing,Ver las atracciones,Verb -To hike,Dar una caminata,Verb -To ride a horse,Montar a caballo,Verb -To send postcards,Mandar tarjetas postales,Verb -To take photos,Tomar fotos,Verb -To visit a museum,Visitar un museo,Verb -"Too high, Too much",Demasiado,Adjective -Tourist office,La oficina de turismo,Noun -Tourist,El turista,Noun -Toy store,La juguetería,Noun -Train station,La estación de tren,Noun -\ No newline at end of file diff --git a/vocab/Weather.csv b/vocab/Weather.csv @@ -1,33 +0,0 @@ -English,Spanish,Type -Bad Weather,El mal tiempo,Noun -Cloud,La nube,Noun -Downpour,El aguacero,Noun -Earthquake,El terremoto,Noun -Flood,El diluvio,Noun -Forecast,El pronóstico,Noun -Frost,La escarcha,Noun -Good Weather,El buen tiempo,Noun -Lightning,El relámpago,Noun -Mist,La neblina,Noun -Precipitation,La precipitación,Noun -Pressure,La presión,Noun -Rain,La lluvia,Noun -Showers,Los chubascos,Noun -Sky,El cielo,Noun -Snow,La nieve,Noun -Storm,La tormenta,Noun -Temperature,La temperatura,Noun -Thermometer,El termómetro,Noun -Thunder,El trueno,Noun -To be clear,Estar claro,Verb -To be cloudy,Estar nublado,Verb -To be cold,Hacer frío,Verb -To be cool,Hacer fresco,Verb -To be hot,Hacer calor,Verb -To be overcast,Estar despejado,Verb -To be raining,Hacer lluvia,Verb -To be snowing,Hacer nieve,Verb -To be sunny,Hacer sol,Verb -To be windy,Hacer viento,Verb -Weather,El tiempo,Noun -Wind,El viento,Noun -\ No newline at end of file diff --git a/vocab/index.html b/vocab/index.html @@ -1,55 +0,0 @@ -<!DOCTYPE html> -<html lang="en"> - <head> - <meta charset="utf-8"/> - <title>Vocab Sets - Spanish-Quizzer</title> - <meta name="description" content="Quiz yourself on Spanish vocabulary and conjugations through a free and highly customizable web interface."> - <meta name="viewport" content="width=device-width, user-scalable=no"/> - <link rel="icon" type="image/png" href="../images/favicon-32.png"> - <link rel="apple-touch-icon" sizes="180x180" href="../images/apple-touch-icon.png"> - <link rel="stylesheet" href="../css/global.css"> - <link rel="stylesheet" href="../css/vocab.css"> - <script src="../js/global.js"></script> - </head> - - <body onload="SetTheme();"> - <header onclick="window.location = '../';">Spanish-Quizzer</header> - - <main> - <h1>Spanish-Quizzer Vocab Sets</h1> - <p> - This page contains links to the vocabulary sets that Spanish-Quizzer uses. - </p> - - <h2>Common Words</h2> - <ul> - <li><a href="Adjectives.csv">Common Adjectives</a></li> - <li><a href="Adverbs.csv">Common Adverbs</a></li> - <li><a href="Prepositions.csv">Common Prepositions</a></li> - <li><a href="Transitions.csv">Common Transitions</a></li> - <li><a href="Verbs.csv">Common Verbs</a> (contains infinitives and conjugations)</li> - </ul> - - <h2>Basic Words</h2> - <ul> - <li><a href="Colors.csv">Colors</a> (Los Colores)</li> - <li><a href="Days.csv">Days</a> (Las Días)</li> - <li><a href="Months.csv">Months</a> (Los Meses)</li> - <li><a href="Questions.csv">Questions</a> (Las Preguntas)</li> - </ul> - - <h2>Advanced Words</h2> - <ul> - <li><a href="Childhood.csv">Childhood</a> (La Niñez)</li> - <li><a href="Clothes.csv">Clothes</a> (La Ropa)</li> - <li><a href="Family.csv">Family</a> (La Familia)</li> - <li><a href="Health.csv">Health</a> (La Salud)</li> - <li><a href="House.csv">House</a> (La Casa)</li> - <li><a href="Nature.csv">Nature</a> (La Naturaleza)</li> - <li><a href="Professions.csv">Professions</a> (Las Profesiones)</li> - <li><a href="Vacation.csv">Vacation</a> (Las Vacaciones)</li> - <li><a href="Weather.csv">Weather</a> (La Clima)</li> - </ul> - </main> - </body> -</html> -\ No newline at end of file