Files
doodle-mini/miniprogram/pages/age/age.config.ts
T
2026-05-28 16:46:30 +08:00

564 lines
21 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import type { AgeBandKey } from '../../core/data/difficulty';
export type AbilityItem = {
icon: string;
title: string;
desc: string;
};
/** 每周练习项:与云 / page-config 中 worksheet 字段对齐,便于跳转 */
export type WeekExercise = {
/** 与云数据库 worksheets._id、page-config category.items[].id 一致 */
_id: string;
title: string;
subtitle: string;
/** 小程序内路径,可含 query,如 /mathPages/mathDraw/mathDraw?id=xxx */
path: string;
};
export type WeekPlan = {
week: number;
theme: string;
exercises: WeekExercise[];
};
export const AGE_TAB_SUB: Record<AgeBandKey, string> = {
'3-4': '启蒙认知',
'4-5': '基础练习',
'5-6': '能力提升',
'6-7': '幼小衔接',
'7-8': '知识拓展',
};
/** 各年龄段能力目标(由 update-age-config Skill 基于 cache/page-config.json 生成) */
export const AGE_ABILITIES: Record<AgeBandKey, AbilityItem[]> = {
'3-4': [
{ icon: '🔢', title: '数感', desc: '找数字涂色、数物对应' },
{ icon: '✏️', title: '书写', desc: '识字涂色、字母描红' },
{ icon: '🧩', title: '思维', desc: '线条识别、图形配对' },
],
'4-5': [
{ icon: '🔢', title: '数感', desc: '比大小、数字排序' },
{ icon: '✏️', title: '书写', desc: '拼音描红、字母入门' },
{ icon: '🧩', title: '思维', desc: '方位涂色、连线专注' },
],
'5-6': [
{ icon: '🔢', title: '数感', desc: '凑十法、数的分合' },
{ icon: '✏️', title: '书写', desc: '拼音描默、识字涂色' },
{ icon: '🧩', title: '思维', desc: '方格推理、译码连线' },
],
'6-7': [
{ icon: '🔢', title: '数感', desc: '凑十分解、数字排序' },
{ icon: '✏️', title: '书写', desc: '拼音默写、字母书写' },
{ icon: '🧩', title: '思维', desc: '方格推理、方位专注' },
],
'7-8': [
{ icon: '🔢', title: '数感', desc: '凑十法、数的分合' },
{ icon: '✏️', title: '书写', desc: '拼音默写、每日打卡' },
{ icon: '🧩', title: '思维', desc: '译码连线、综合推理' },
],
};
/**
* 4 周路线:每项含 _id / subtitle / path,与 cache/page-config.json 一致。
* AI Skill 生成时应从 cache/page-config.json 的 home.sections[].items[] 复制 id→_id、title、subtitle、path。
*/
export const AGE_WEEK_PLANS: Record<AgeBandKey, WeekPlan[]> = {
'3-4': [
{
week: 1,
theme: '数感启蒙',
exercises: [
{
_id: 'number-find',
title: '找数字,涂一涂',
subtitle: '找出目标数字并涂色',
path: '/mathPages/mathDraw/mathDraw?id=number-find',
},
{
_id: 'counting-matching',
title: '数一数,连一连',
subtitle: '连线配对数字和数量',
path: '/mathPages/mathDraw/mathDraw?id=counting-matching',
},
{
_id: 'number-coloring',
title: '按数字,涂颜色',
subtitle: '按指定数字涂色',
path: '/mathPages/mathDraw/mathDraw?id=number-coloring',
},
],
},
{
week: 2,
theme: '线条与形状',
exercises: [
{
_id: 'line-recognition',
title: '线条识别',
subtitle: '认识不同线条,画对应线条',
path: '/focusPages/focusDraw/focusDraw?id=line-recognition',
},
{
_id: 'dot-connect',
title: '数字点连线',
subtitle: '按数字顺序连点成图',
path: '/focusPages/focusDraw/focusDraw?id=dot-connect',
},
{
_id: 'shape-symbol',
title: '图形符号配对',
subtitle: '根据图形画对应符号',
path: '/focusPages/focusDraw/focusDraw?id=shape-symbol',
},
],
},
{
week: 3,
theme: '识字涂色',
exercises: [
{
_id: 'word-coloring-grid',
title: '网格涂色',
subtitle: '田字格涂色识字练习',
path: '/chinesePages/wordColoring/wordColoring?id=word-coloring-grid',
},
{
_id: 'word-coloring-find',
title: '找字涂色',
subtitle: '在字海中找到目标字并涂色',
path: '/chinesePages/wordColoring/wordColoring?id=word-coloring-find',
},
{
_id: 'position-coloring',
title: '方位涂涂乐',
subtitle: '观察位置,在方格中涂色',
path: '/focusPages/focusDraw/focusDraw?id=position-coloring',
},
],
},
{
week: 4,
theme: '综合练习',
exercises: [
{
_id: 'number-sort',
title: '数字排序',
subtitle: '写出正确的数字顺序',
path: '/mathPages/mathDraw/mathDraw?id=number-sort',
},
{
_id: 'hanzi-sheet',
title: '自定义练字帖',
subtitle: '自定义田字格练字帖',
path: '/chinesePages/handwritingSheet/handwritingSheet?id=hanzi-sheet',
},
{
_id: 'pen-control-mix',
title: '控笔组合练习',
subtitle: '36 种图形,每种占两行',
path: '/chinesePages/penControlSheet/penControlSheet?id=pen-control-mix',
},
{
_id: 'letter-tracing-single',
title: '默认字帖',
subtitle: '配图、例句与描红',
path: '/englishPages/letterTracing/letterTracing?id=letter-tracing-single',
},
],
},
],
'4-5': [
{
week: 1,
theme: '数感入门',
exercises: [
{
_id: 'number-coloring',
title: '按数字,涂颜色',
subtitle: '按指定数字涂色',
path: '/mathPages/mathDraw/mathDraw?id=number-coloring',
},
{
_id: 'counting-matching',
title: '数一数,连一连',
subtitle: '连线配对数字和数量',
path: '/mathPages/mathDraw/mathDraw?id=counting-matching',
},
{
_id: 'number-find',
title: '找数字,涂一涂',
subtitle: '找出目标数字并涂色',
path: '/mathPages/mathDraw/mathDraw?id=number-find',
},
],
},
{
week: 2,
theme: '排序与连线',
exercises: [
{
_id: 'number-sort',
title: '数字排序',
subtitle: '写出正确的数字顺序',
path: '/mathPages/mathDraw/mathDraw?id=number-sort',
},
{
_id: 'dot-connect',
title: '数字点连线',
subtitle: '按数字顺序连点成图',
path: '/focusPages/focusDraw/focusDraw?id=dot-connect',
},
{
_id: 'shape-symbol',
title: '图形符号配对',
subtitle: '根据图形画对应符号',
path: '/focusPages/focusDraw/focusDraw?id=shape-symbol',
},
],
},
{
week: 3,
theme: '观察与专注',
exercises: [
{
_id: 'line-recognition',
title: '线条识别',
subtitle: '认识不同线条,画对应线条',
path: '/focusPages/focusDraw/focusDraw?id=line-recognition',
},
{
_id: 'position-coloring',
title: '方位涂涂乐',
subtitle: '观察位置,在方格中涂色',
path: '/focusPages/focusDraw/focusDraw?id=position-coloring',
},
{
_id: 'word-coloring-grid',
title: '网格涂色',
subtitle: '田字格涂色识字练习',
path: '/chinesePages/wordColoring/wordColoring?id=word-coloring-grid',
},
],
},
{
week: 4,
theme: '书写启蒙',
exercises: [
{
_id: 'pinyin-tracing',
title: '拼音描红练习',
subtitle: '跟着描红学拼音字母',
path: '/pinyinPages/pinyinDictation/pinyinDictation?id=pinyin-tracing',
},
{
_id: 'letter-tracing-single',
title: '默认字帖',
subtitle: '配图、例句与描红',
path: '/englishPages/letterTracing/letterTracing?id=letter-tracing-single',
},
{
_id: 'hanzi-sheet',
title: '自定义练字帖',
subtitle: '自定义田字格练字帖',
path: '/chinesePages/handwritingSheet/handwritingSheet?id=hanzi-sheet',
},
],
},
],
'5-6': [
{
week: 1,
theme: '数感巩固',
exercises: [
{
_id: 'number-sort',
title: '数字排序',
subtitle: '写出正确的数字顺序',
path: '/mathPages/mathDraw/mathDraw?id=number-sort',
},
{
_id: 'counting-matching',
title: '数一数,连一连',
subtitle: '连线配对数字和数量',
path: '/mathPages/mathDraw/mathDraw?id=counting-matching',
},
{
_id: 'number-coloring',
title: '按数字,涂颜色',
subtitle: '按指定数字涂色',
path: '/mathPages/mathDraw/mathDraw?id=number-coloring',
},
],
},
{
week: 2,
theme: '凑十与分解',
exercises: [
{
_id: 'make-ten',
title: '凑十法练习',
subtitle: '20以内进位加法',
path: '/mathPages/mathDraw/mathDraw?id=make-ten',
},
{
_id: 'number-decompose',
title: '10以内数的分与合',
subtitle: '把数字分一分,合一合',
path: '/mathPages/mathDraw/mathDraw?id=number-decompose',
},
{
_id: 'grid-reasoning',
title: '方格推理',
subtitle: '推理出合并方格并连线',
path: '/focusPages/focusDraw/focusDraw?id=grid-reasoning',
},
],
},
{
week: 3,
theme: '拼音与识字',
exercises: [
{
_id: 'pinyin-tracing',
title: '拼音描红练习',
subtitle: '跟着描红学拼音字母',
path: '/pinyinPages/pinyinDictation/pinyinDictation?id=pinyin-tracing',
},
{
_id: 'pinyin-tracing-v2',
title: '拼音描红 8 列',
subtitle: '跟写描红,声韵分块',
path: '/pinyinPages/pinyinDictation/pinyinDictation?id=pinyin-tracing-v2',
},
{
_id: 'word-coloring-find',
title: '找字涂色',
subtitle: '在字海中找到目标字并涂色',
path: '/chinesePages/wordColoring/wordColoring?id=word-coloring-find',
},
],
},
{
week: 4,
theme: '综合提升',
exercises: [
{
_id: 'pinyin-dictation',
title: '拼音默写练习',
subtitle: '空白格子默写拼音字母',
path: '/pinyinPages/pinyinDictation/pinyinDictation?id=pinyin-dictation',
},
{
_id: 'letter-tracing-case-pairing',
title: '大小写对照',
subtitle: '半组字母左大写右小写',
path: '/englishPages/letterTracing/letterTracing?id=letter-tracing-case-pairing',
},
{
_id: 'code-connect',
title: '译码连线',
subtitle: '按数字顺序连线',
path: '/focusPages/focusDraw/focusDraw?id=code-connect',
},
],
},
],
'6-7': [
{
week: 1,
theme: '运算进阶',
exercises: [
{
_id: 'make-ten',
title: '凑十法练习',
subtitle: '20以内进位加法',
path: '/mathPages/mathDraw/mathDraw?id=make-ten',
},
{
_id: 'number-decompose',
title: '10以内数的分与合',
subtitle: '把数字分一分,合一合',
path: '/mathPages/mathDraw/mathDraw?id=number-decompose',
},
{
_id: 'number-sort',
title: '数字排序',
subtitle: '写出正确的数字顺序',
path: '/mathPages/mathDraw/mathDraw?id=number-sort',
},
],
},
{
week: 2,
theme: '拼音书写',
exercises: [
{
_id: 'pinyin-tracing-v2',
title: '拼音描红 8 列',
subtitle: '跟写描红,声韵分块',
path: '/pinyinPages/pinyinDictation/pinyinDictation?id=pinyin-tracing-v2',
},
{
_id: 'pinyin-dictation',
title: '拼音默写练习',
subtitle: '空白格子默写拼音字母',
path: '/pinyinPages/pinyinDictation/pinyinDictation?id=pinyin-dictation',
},
{
_id: 'hanzi-sheet',
title: '自定义练字帖',
subtitle: '自定义田字格练字帖',
path: '/chinesePages/handwritingSheet/handwritingSheet?id=hanzi-sheet',
},
],
},
{
week: 3,
theme: '逻辑专注',
exercises: [
{
_id: 'grid-reasoning',
title: '方格推理',
subtitle: '推理出合并方格并连线',
path: '/focusPages/focusDraw/focusDraw?id=grid-reasoning',
},
{
_id: 'code-connect',
title: '译码连线',
subtitle: '按数字顺序连线',
path: '/focusPages/focusDraw/focusDraw?id=code-connect',
},
{
_id: 'position-coloring',
title: '方位涂涂乐',
subtitle: '观察位置,在方格中涂色',
path: '/focusPages/focusDraw/focusDraw?id=position-coloring',
},
],
},
{
week: 4,
theme: '综合衔接',
exercises: [
{
_id: 'pinyin-daily',
title: '拼音每日打卡',
subtitle: '四宫格每日打卡练习',
path: '/pinyinPages/pinyinDictation/pinyinDictation?id=pinyin-daily',
},
{
_id: 'letter-tracing-half',
title: '13字母半表',
subtitle: '每行一个字母,13 字母半表',
path: '/englishPages/letterTracing/letterTracing?id=letter-tracing-half',
},
{
_id: 'letter-tracing-two-column',
title: '两列描红',
subtitle: '左 AM、右 NZ 配对描红',
path: '/englishPages/letterTracing/letterTracing?id=letter-tracing-two-column',
},
],
},
],
'7-8': [
{
week: 1,
theme: '巧算思维',
exercises: [
{
_id: 'make-ten',
title: '凑十法练习',
subtitle: '20以内进位加法',
path: '/mathPages/mathDraw/mathDraw?id=make-ten',
},
{
_id: 'number-decompose',
title: '10以内数的分与合',
subtitle: '把数字分一分,合一合',
path: '/mathPages/mathDraw/mathDraw?id=number-decompose',
},
{
_id: 'grid-reasoning',
title: '方格推理',
subtitle: '推理出合并方格并连线',
path: '/focusPages/focusDraw/focusDraw?id=grid-reasoning',
},
],
},
{
week: 2,
theme: '拼音精进',
exercises: [
{
_id: 'pinyin-dictation-v2',
title: '拼音默写 8 列',
subtitle: '空白默写,声韵分块',
path: '/pinyinPages/pinyinDictation/pinyinDictation?id=pinyin-dictation-v2',
},
{
_id: 'pinyin-dictation',
title: '拼音默写练习',
subtitle: '空白格子默写拼音字母',
path: '/pinyinPages/pinyinDictation/pinyinDictation?id=pinyin-dictation',
},
{
_id: 'pinyin-tracing',
title: '拼音描红练习',
subtitle: '跟着描红学拼音字母',
path: '/pinyinPages/pinyinDictation/pinyinDictation?id=pinyin-tracing',
},
],
},
{
week: 3,
theme: '译码与字母',
exercises: [
{
_id: 'code-connect',
title: '译码连线',
subtitle: '按数字顺序连线',
path: '/focusPages/focusDraw/focusDraw?id=code-connect',
},
{
_id: 'letter-tracing-case-pairing',
title: '大小写对照',
subtitle: '半组字母左大写右小写',
path: '/englishPages/letterTracing/letterTracing?id=letter-tracing-case-pairing',
},
{
_id: 'letter-tracing-half',
title: '13字母半表',
subtitle: '每行一个字母,13 字母半表',
path: '/englishPages/letterTracing/letterTracing?id=letter-tracing-half',
},
],
},
{
week: 4,
theme: '综合拓展',
exercises: [
{
_id: 'pinyin-daily',
title: '拼音每日打卡',
subtitle: '四宫格每日打卡练习',
path: '/pinyinPages/pinyinDictation/pinyinDictation?id=pinyin-daily',
},
{
_id: 'letter-tracing-daily-checkin',
title: '每日打卡',
subtitle: '四宫格每日字母打卡练习',
path: '/englishPages/letterTracing/letterTracing?id=letter-tracing-daily-checkin',
},
{
_id: 'hanzi-sheet',
title: '自定义练字帖',
subtitle: '自定义田字格练字帖',
path: '/chinesePages/handwritingSheet/handwritingSheet?id=hanzi-sheet',
},
],
},
],
};