import type { Stage } from '../types' const restas = [ { a: 2, b: 1, r: 1, emoji: '🍎-🍎' }, { a: 3, b: 1, r: 2, emoji: '🍎🍎-🍎' }, { a: 3, b: 2, r: 1, emoji: '🍎🍎-🍎🍎' }, { a: 4, b: 1, r: 3, emoji: 'πŸͺπŸͺπŸͺπŸͺ-πŸͺ' }, { a: 4, b: 2, r: 2, emoji: 'πŸͺπŸͺπŸͺπŸͺ-πŸͺπŸͺ' }, { a: 5, b: 1, r: 4, emoji: '⭐-⭐' }, { a: 5, b: 2, r: 3, emoji: '⭐⭐-⭐⭐' }, { a: 5, b: 3, r: 2, emoji: '⭐⭐⭐-⭐⭐⭐' }, { a: 5, b: 4, r: 1, emoji: '⭐⭐⭐⭐-⭐⭐⭐⭐' }, { a: 6, b: 1, r: 5, emoji: '🌸-🌸' }, { a: 6, b: 2, r: 4, emoji: '🌸🌸-🌸🌸' }, { a: 6, b: 3, r: 3, emoji: '🌸🌸🌸-🌸🌸🌸' }, { a: 7, b: 2, r: 5, emoji: '🌻🌻-🌻🌻' }, { a: 7, b: 3, r: 4, emoji: '🌻🌻🌻-🌻🌻🌻' }, { a: 8, b: 3, r: 5, emoji: 'πŸ„πŸ„πŸ„-πŸ„πŸ„πŸ„' }, { a: 8, b: 4, r: 4, emoji: 'πŸ„πŸ„πŸ„πŸ„-πŸ„πŸ„πŸ„πŸ„' }, { a: 9, b: 4, r: 5, emoji: 'πŸ‚πŸ‚πŸ‚πŸ‚-πŸ‚πŸ‚πŸ‚πŸ‚' }, { a: 9, b: 5, r: 4, emoji: 'πŸ‚πŸ‚πŸ‚πŸ‚πŸ‚-πŸ‚πŸ‚πŸ‚πŸ‚πŸ‚' }, { a: 10, b: 1, r: 9, emoji: 'πŸ’Ž-πŸ’Ž' }, { a: 10, b: 2, r: 8, emoji: 'πŸ’ŽπŸ’Ž-πŸ’ŽπŸ’Ž' }, { a: 10, b: 3, r: 7, emoji: 'πŸ’ŽπŸ’ŽπŸ’Ž-πŸ’ŽπŸ’ŽπŸ’Ž' }, { a: 10, b: 4, r: 6, emoji: 'πŸ’ŽπŸ’ŽπŸ’ŽπŸ’Ž-πŸ’ŽπŸ’ŽπŸ’ŽπŸ’Ž' }, { a: 10, b: 5, r: 5, emoji: 'πŸ’ŽπŸ’ŽπŸ’ŽπŸ’ŽπŸ’Ž-πŸ’ŽπŸ’ŽπŸ’ŽπŸ’ŽπŸ’Ž' }, { a: 8, b: 5, r: 3, emoji: 'πŸ€πŸ€πŸ€πŸ€πŸ€-πŸ€πŸ€πŸ€πŸ€πŸ€' }, { a: 7, b: 5, r: 2, emoji: '🌺🌺🌺🌺🌺-🌺🌺🌺🌺🌺' }, { a: 6, b: 5, r: 1, emoji: '🌷🌷🌷🌷🌷-🌷🌷🌷🌷🌷' }, ] const exercises: any[] = [] for (const { a, b, r, emoji } of restas) { exercises.push({ id: `num6-resta-${a}-${b}`, stage: 6, skillCode: 'resta', type: 'problema', prerequisites: a <= 5 ? ['num5-suma-visual-1-1'] : [`num6-resta-${a - 1}-${Math.max(1, b - 1)}` || 'num5-suma-10-1'], content: { instruction: `ΒΏCuΓ‘nto es ${a} - ${b}?`, text: `${a} - ${b} = ?`, audioText: `${a} menos ${b}`, emoji, options: [ ...Array.from({ length: 4 }, (_, i) => r - 2 + i + (i >= 2 ? 2 : 0)) .filter(j => j >= 0 && j <= 10 && j !== r) .slice(0, 2) .map(j => ({ label: String(j), correct: false, id: String(j) })), { label: String(r), correct: true, id: String(r) }, ].sort(() => Math.random() - 0.5), }, functionalContext: 'Restar nΓΊmeros pequeΓ±os.. MΓ©todo Montessori.', errorType: 'discriminacion-auditiva', }) } // Visual subtraction: take away const visuales = [ { a: 3, b: 1, r: 2 }, { a: 4, b: 2, r: 2 }, { a: 5, b: 3, r: 2 }, ] for (const { a, b, r } of visuales) { exercises.push({ id: `num6-resta-visual-${a}-${b}`, stage: 6, skillCode: 'resta-visual', type: 'conciencia', prerequisites: [`num6-resta-${a}-${b}`], content: { instruction: `${a} - ${b} = ? Sacamos ${b}`, text: `${'🟒'.repeat(a)}\nSacamos ${'πŸ”΄'.repeat(b)}\nQuedan...`, audioText: `Sacamos ${b}, quedan ${r}`, options: [ { label: '🟒'.repeat(r), correct: true, id: String(r) }, { label: '🟒'.repeat(r + 2), correct: false, id: String(r + 2) }, { label: '🟒'.repeat(Math.max(1, r + 1)), correct: false, id: String(r + 1) }, ], emoji: 'βž–', }, functionalContext: 'Visualizar la resta como quitar elementos.. MΓ©todo Montessori.', errorType: 'discriminacion-auditiva', }) } const stage: Stage = { id: 6, name: 'Restas simples (1-10)', description: 'Restar nΓΊmeros del 1 al 10 con ayudas visuales.', exercises, } export default stage