Añadido Borel-Maisonny a lectura etapa 1-7, Decroly a etapa 8-9, Montessori a numeros etapa 1-8. Ahora 65/65 archivos con método europeo.
100 lines
2.8 KiB
TypeScript
100 lines
2.8 KiB
TypeScript
import type { Stage } from '../types'
|
|
|
|
const exercises: any[] = []
|
|
|
|
// Count 6-10
|
|
for (let n = 6; n <= 10; n++) {
|
|
const emojis = '🟢'.repeat(n)
|
|
exercises.push({
|
|
id: `num2-contar-${n}`,
|
|
stage: 2,
|
|
skillCode: `contar-${n}`,
|
|
prerequisites: n === 6 ? ['num1-trazo-5'] : [`num2-contar-${n - 1}`],
|
|
type: 'sensibilizacion',
|
|
content: {
|
|
instruction: `¿Cuántos círculos verdes hay?`,
|
|
audioText: `Contá los círculos`,
|
|
emoji: emojis,
|
|
options: [
|
|
...Array.from({ length: 5 }, (_, i) => i + 6)
|
|
.filter(j => j !== n)
|
|
.slice(0, 2)
|
|
.map(j => ({ label: String(j), correct: false, id: String(j) })),
|
|
{ label: String(n), correct: true, id: String(n) },
|
|
].sort(() => Math.random() - 0.5),
|
|
},
|
|
functionalContext: `Contar hasta ${n} elementos.. Método Montessori.`,
|
|
errorType: 'discriminacion-auditiva',
|
|
})
|
|
}
|
|
|
|
// Recognize written digits 6-10
|
|
for (let n = 6; n <= 10; n++) {
|
|
exercises.push({
|
|
id: `num2-digito-${n}`,
|
|
stage: 2,
|
|
skillCode: `digito-${n}`,
|
|
type: 'eleccion',
|
|
prerequisites: [`num2-contar-${n}`],
|
|
content: {
|
|
instruction: `Señalá el número ${n}`,
|
|
audioText: `Buscá el ${n}`,
|
|
options: [
|
|
...Array.from({ length: 5 }, (_, i) => i + 6)
|
|
.filter(j => j !== n)
|
|
.slice(0, 2)
|
|
.map(j => ({ label: String(j), correct: false, id: String(j) })),
|
|
{ label: String(n), correct: true, id: String(n) },
|
|
].sort(() => Math.random() - 0.5),
|
|
emoji: String(n),
|
|
},
|
|
functionalContext: `Reconocer el dígito ${n}.. Método Montessori.`,
|
|
errorType: 'confusion-letra',
|
|
})
|
|
}
|
|
|
|
// Order sequence 1-10
|
|
exercises.push({
|
|
id: 'num2-secuencia-1-10',
|
|
stage: 2,
|
|
skillCode: 'secuencia-1-10',
|
|
type: 'secuencia',
|
|
prerequisites: ['num2-digito-10'],
|
|
content: {
|
|
instruction: 'Ordená los números del 1 al 10',
|
|
audioText: 'Ordená del 1 al 10',
|
|
sequence: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10'],
|
|
emoji: '🔢',
|
|
},
|
|
functionalContext: 'Conocer la secuencia numérica del 1 al 10.. Método Montessori.',
|
|
errorType: 'inversion-letra',
|
|
})
|
|
|
|
// Trace 6-10
|
|
for (let n = 6; n <= 10; n++) {
|
|
exercises.push({
|
|
id: `num2-trazo-${n}`,
|
|
stage: 2,
|
|
skillCode: `digito-${n}`,
|
|
type: 'trazo',
|
|
prerequisites: [`num2-digito-${n}`, ...(n > 6 ? [`num2-trazo-${n - 1}`] : [])],
|
|
content: {
|
|
instruction: `Trazá el número ${n} con tu dedo`,
|
|
text: String(n),
|
|
audioText: `Trazá el ${n}`,
|
|
emoji: '✍️',
|
|
},
|
|
functionalContext: `Aprender a trazar el número ${n}.. Método Montessori.`,
|
|
errorType: 'confusion-letra',
|
|
})
|
|
}
|
|
|
|
const stage: Stage = {
|
|
id: 2,
|
|
name: 'Conteo del 6 al 10',
|
|
description: 'Contar objetos, reconocer dígitos y trazar números del 6 al 10, y ordenar del 1 al 10.',
|
|
exercises,
|
|
}
|
|
|
|
export default stage
|