@mathwiz/ui-components 0.1.29 → 0.1.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/components/AICopilot/AICopilot.css +237 -0
- package/dist/components/AICopilot/AICopilot.d.ts +10 -0
- package/dist/components/AICopilot/AICopilot.d.ts.map +1 -0
- package/dist/components/AICopilot/components/ChatContainer.d.ts +9 -0
- package/dist/components/AICopilot/components/ChatContainer.d.ts.map +1 -0
- package/dist/components/AICopilot/components/ChatInput.d.ts +9 -0
- package/dist/components/AICopilot/components/ChatInput.d.ts.map +1 -0
- package/dist/components/AICopilot/components/ChatMessage.d.ts +9 -0
- package/dist/components/AICopilot/components/ChatMessage.d.ts.map +1 -0
- package/dist/components/AICopilot/components/CollapsibleContextBar.d.ts +9 -0
- package/dist/components/AICopilot/components/CollapsibleContextBar.d.ts.map +1 -0
- package/dist/components/AICopilot/components/QuickActions.d.ts +9 -0
- package/dist/components/AICopilot/components/QuickActions.d.ts.map +1 -0
- package/dist/components/AICopilot/components/StreamMessage.d.ts +9 -0
- package/dist/components/AICopilot/components/StreamMessage.d.ts.map +1 -0
- package/dist/components/AICopilot/index.d.ts +12 -0
- package/dist/components/AICopilot/index.d.ts.map +1 -0
- package/dist/components/AICopilot/store.d.ts +30 -0
- package/dist/components/AICopilot/store.d.ts.map +1 -0
- package/dist/components/AICopilot/types.d.ts +219 -0
- package/dist/components/AICopilot/types.d.ts.map +1 -0
- package/dist/components/HundredChart/HundredChart.css +8 -0
- package/dist/components/HundredChart/HundredChart.d.ts.map +1 -1
- package/dist/components/HundredChart/HundredChart.types.d.ts +29 -0
- package/dist/components/HundredChart/HundredChart.types.d.ts.map +1 -1
- package/dist/components/HundredChart/HundredChart.utils.d.ts +13 -1
- package/dist/components/HundredChart/HundredChart.utils.d.ts.map +1 -1
- package/dist/components/HundredChart/index.d.ts +2 -2
- package/dist/components/HundredChart/index.d.ts.map +1 -1
- package/dist/components/MathCardV2/DecimalNumberRecognitionSessionStore.d.ts +2 -2
- package/dist/components/MathCardV2/DecimalNumberRecognitionSessionStore.d.ts.map +1 -1
- package/dist/components/MathCardV2/ExplanationStep.d.ts +9 -0
- package/dist/components/MathCardV2/ExplanationStep.d.ts.map +1 -1
- package/dist/components/MathCardV2/MathCardV2.css +11 -4
- package/dist/components/MathCardV2/MathCardV2.d.ts.map +1 -1
- package/dist/components/MathCardV2/MathCardV2.types.d.ts +70 -1
- package/dist/components/MathCardV2/MathCardV2.types.d.ts.map +1 -1
- package/dist/components/MathCardV2/MathPracticeSessionStore.d.ts +3 -3
- package/dist/components/MathCardV2/MathPracticeSessionStore.d.ts.map +1 -1
- package/dist/components/MathCardV2/MathPracticeSessionTypes.d.ts +38 -18
- package/dist/components/MathCardV2/MathPracticeSessionTypes.d.ts.map +1 -1
- package/dist/components/MathCardV2/MathPracticeStoreContext.d.ts +3 -9
- package/dist/components/MathCardV2/MathPracticeStoreContext.d.ts.map +1 -1
- package/dist/components/MathCardV2/MathPracticeStoreHooks.d.ts +3 -2
- package/dist/components/MathCardV2/MathPracticeStoreHooks.d.ts.map +1 -1
- package/dist/components/MathCardV2/components/content/MathContainerContent.d.ts +16 -0
- package/dist/components/MathCardV2/components/content/MathContainerContent.d.ts.map +1 -0
- package/dist/components/MathCardV2/components/content/OptionGroupContent.d.ts +10 -0
- package/dist/components/MathCardV2/components/content/OptionGroupContent.d.ts.map +1 -0
- package/dist/components/MathCardV2/components/renderers/ContentRenderer.d.ts.map +1 -1
- package/dist/components/MathCardV2/hooks/useDataAdapter.d.ts.map +1 -1
- package/dist/components/MathCardV2/hooks/useMeetingProblemAdapter.d.ts.map +1 -1
- package/dist/components/MathCardV2/modules/ReviewModule/ReviewModule.d.ts.map +1 -1
- package/dist/components/MathCardV2/scenes/ExplanationScene/ExplanationScene.d.ts.map +1 -1
- package/dist/components/MathCardV2/scenes/QuestionScene/QuestionScene.css +18 -18
- package/dist/components/MathCardV2/scenes/QuestionScene/QuestionScene.d.ts.map +1 -1
- package/dist/components/MathCell/MathCell.d.ts +35 -0
- package/dist/components/MathCell/MathCell.d.ts.map +1 -0
- package/dist/components/MathCell/MathCell.styles.d.ts +149 -0
- package/dist/components/MathCell/MathCell.styles.d.ts.map +1 -0
- package/dist/components/MathCell/MathCell.types.d.ts +76 -0
- package/dist/components/MathCell/MathCell.types.d.ts.map +1 -0
- package/dist/components/MathCell/index.d.ts +11 -0
- package/dist/components/MathCell/index.d.ts.map +1 -0
- package/dist/components/MathContainer/FactorTable/FactorTable.d.ts +17 -0
- package/dist/components/MathContainer/FactorTable/FactorTable.d.ts.map +1 -0
- package/dist/components/MathContainer/FactorTable/FactorTable.types.d.ts +55 -0
- package/dist/components/MathContainer/FactorTable/FactorTable.types.d.ts.map +1 -0
- package/dist/components/MathContainer/FactorTable/FactorTableView.d.ts +28 -0
- package/dist/components/MathContainer/FactorTable/FactorTableView.d.ts.map +1 -0
- package/dist/components/MathContainer/FactorTable/index.d.ts +7 -0
- package/dist/components/MathContainer/FactorTable/index.d.ts.map +1 -0
- package/dist/components/MathContainer/LongDivision/LongDivision.d.ts +12 -0
- package/dist/components/MathContainer/LongDivision/LongDivision.d.ts.map +1 -0
- package/dist/components/MathContainer/LongDivision/LongDivision.layout.d.ts +81 -0
- package/dist/components/MathContainer/LongDivision/LongDivision.layout.d.ts.map +1 -0
- package/dist/components/MathContainer/LongDivision/LongDivision.types.d.ts +37 -0
- package/dist/components/MathContainer/LongDivision/LongDivision.types.d.ts.map +1 -0
- package/dist/components/MathContainer/LongDivision/LongDivisionView.d.ts +37 -0
- package/dist/components/MathContainer/LongDivision/LongDivisionView.d.ts.map +1 -0
- package/dist/components/MathContainer/LongDivision/index.d.ts +7 -0
- package/dist/components/MathContainer/LongDivision/index.d.ts.map +1 -0
- package/dist/components/MathContainer/MathContainer.types.d.ts +151 -0
- package/dist/components/MathContainer/MathContainer.types.d.ts.map +1 -0
- package/dist/components/MathContainer/ShortDivision/ShortDivision.d.ts +15 -0
- package/dist/components/MathContainer/ShortDivision/ShortDivision.d.ts.map +1 -0
- package/dist/components/MathContainer/ShortDivision/ShortDivision.types.d.ts +67 -0
- package/dist/components/MathContainer/ShortDivision/ShortDivision.types.d.ts.map +1 -0
- package/dist/components/MathContainer/ShortDivision/ShortDivisionView.d.ts +16 -0
- package/dist/components/MathContainer/ShortDivision/ShortDivisionView.d.ts.map +1 -0
- package/dist/components/MathContainer/ShortDivision/index.d.ts +8 -0
- package/dist/components/MathContainer/ShortDivision/index.d.ts.map +1 -0
- package/dist/components/MathContainer/VerticalMultiplication/VerticalMultiplication.d.ts +16 -0
- package/dist/components/MathContainer/VerticalMultiplication/VerticalMultiplication.d.ts.map +1 -0
- package/dist/components/MathContainer/VerticalMultiplication/VerticalMultiplication.types.d.ts +42 -0
- package/dist/components/MathContainer/VerticalMultiplication/VerticalMultiplication.types.d.ts.map +1 -0
- package/dist/components/MathContainer/VerticalMultiplication/VerticalMultiplicationView.d.ts +22 -0
- package/dist/components/MathContainer/VerticalMultiplication/VerticalMultiplicationView.d.ts.map +1 -0
- package/dist/components/MathContainer/VerticalMultiplication/VerticalMultiplicationView.utils.d.ts +19 -0
- package/dist/components/MathContainer/VerticalMultiplication/VerticalMultiplicationView.utils.d.ts.map +1 -0
- package/dist/components/MathContainer/VerticalMultiplication/index.d.ts +9 -0
- package/dist/components/MathContainer/VerticalMultiplication/index.d.ts.map +1 -0
- package/dist/components/MathContainer/hooks/index.d.ts +15 -0
- package/dist/components/MathContainer/hooks/index.d.ts.map +1 -0
- package/dist/components/MathContainer/hooks/useFactorTable.d.ts +39 -0
- package/dist/components/MathContainer/hooks/useFactorTable.d.ts.map +1 -0
- package/dist/components/MathContainer/hooks/useLongDivision.d.ts +51 -0
- package/dist/components/MathContainer/hooks/useLongDivision.d.ts.map +1 -0
- package/dist/components/MathContainer/hooks/useLongDivision.utils.d.ts +15 -0
- package/dist/components/MathContainer/hooks/useLongDivision.utils.d.ts.map +1 -0
- package/dist/components/MathContainer/hooks/useShortDivision.d.ts +41 -0
- package/dist/components/MathContainer/hooks/useShortDivision.d.ts.map +1 -0
- package/dist/components/MathContainer/hooks/useVerticalMultiplication.d.ts +28 -0
- package/dist/components/MathContainer/hooks/useVerticalMultiplication.d.ts.map +1 -0
- package/dist/components/MathContainer/hooks/useVerticalMultiplication.utils.d.ts +30 -0
- package/dist/components/MathContainer/hooks/useVerticalMultiplication.utils.d.ts.map +1 -0
- package/dist/components/MathContainer/index.d.ts +17 -0
- package/dist/components/MathContainer/index.d.ts.map +1 -0
- package/dist/components/OptionGroup/OptionCard.d.ts +11 -0
- package/dist/components/OptionGroup/OptionCard.d.ts.map +1 -0
- package/dist/components/OptionGroup/OptionCard.styles.d.ts +87 -0
- package/dist/components/OptionGroup/OptionCard.styles.d.ts.map +1 -0
- package/dist/components/OptionGroup/OptionGroup.d.ts +11 -0
- package/dist/components/OptionGroup/OptionGroup.d.ts.map +1 -0
- package/dist/components/OptionGroup/OptionGroup.types.d.ts +71 -0
- package/dist/components/OptionGroup/OptionGroup.types.d.ts.map +1 -0
- package/dist/components/OptionGroup/index.d.ts +5 -0
- package/dist/components/OptionGroup/index.d.ts.map +1 -0
- package/dist/components/StatBlock/StatBlock.css +330 -330
- package/dist/components/dashboard/atoms/Badge/Badge.d.ts +32 -0
- package/dist/components/dashboard/atoms/Badge/Badge.d.ts.map +1 -0
- package/dist/components/dashboard/atoms/Badge/index.d.ts +4 -0
- package/dist/components/dashboard/atoms/Badge/index.d.ts.map +1 -0
- package/dist/data/GeometryProblemAdapterV4/geometry-types.d.ts +119 -4
- package/dist/data/GeometryProblemAdapterV4/geometry-types.d.ts.map +1 -1
- package/dist/data/GeometryProblemAdapterV4/jsondata/parallelogram-revised.json +721 -721
- package/dist/data/GeometryProblemAdapterV4/jsondata/right-triangle-v4.json +594 -594
- package/dist/data/GeometryProblemAdapterV4/jsondata/trapezoid-v4-final.json +469 -469
- package/dist/data/GeometryProblemAdapterV4/jsondata/triangle-v4-final.json +1 -1
- package/dist/data/GeometryProblemAdapterV4/types.d.ts +2 -0
- package/dist/data/GeometryProblemAdapterV4/types.d.ts.map +1 -1
- package/dist/data/TriangleAdapterV3/config/embeddedConfigs.d.ts +96 -18
- package/dist/data/TriangleAdapterV3/config/embeddedConfigs.d.ts.map +1 -1
- package/dist/data/TriangleAdapterV3/config/index.d.ts +64 -12
- package/dist/data/TriangleAdapterV3/config/index.d.ts.map +1 -1
- package/dist/data/TriangleAdapterV3/core/syncAdapter.d.ts +5 -0
- package/dist/data/TriangleAdapterV3/core/syncAdapter.d.ts.map +1 -1
- package/dist/data/TriangleAdapterV3/transformers/hundredChartTransformer.d.ts +58 -0
- package/dist/data/TriangleAdapterV3/transformers/hundredChartTransformer.d.ts.map +1 -0
- package/dist/data/TriangleAdapterV3/transformers/index.d.ts +2 -0
- package/dist/data/TriangleAdapterV3/transformers/index.d.ts.map +1 -1
- package/dist/data/TriangleAdapterV3/transformers/optionGroupTransformer.d.ts +29 -0
- package/dist/data/TriangleAdapterV3/transformers/optionGroupTransformer.d.ts.map +1 -0
- package/dist/data/TriangleAdapterV3/types.d.ts +3 -0
- package/dist/data/TriangleAdapterV3/types.d.ts.map +1 -1
- package/dist/data/config/style-presets.json +27 -3
- package/dist/data/dataSchema/OpenAPI/openapi.json +5777 -5777
- package/dist/data/problems/factorProblemV4-backup.json +427 -0
- package/dist/data/problems/factorProblemV4.json +462 -0
- package/dist/data/problems/factorProblemV4_backup_20260311.json +436 -0
- package/dist/index.cjs +131 -100
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +17 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +15093 -7136
- package/dist/index.mjs.map +1 -1
- package/dist/mathwiz-ui.css +1 -1
- package/dist/pages/AreaGeometrySessionPage/AreaGeometrySessionPageIXL.css +385 -0
- package/dist/pages/AreaGeometrySessionPage/AreaGeometrySessionPageIXL.d.ts +29 -0
- package/dist/pages/AreaGeometrySessionPage/AreaGeometrySessionPageIXL.d.ts.map +1 -0
- package/dist/pages/AreaGeometrySessionPage/components/LearningDashboardPlaceholder.css +219 -0
- package/dist/pages/AreaGeometrySessionPage/components/LearningDashboardPlaceholder.d.ts +15 -0
- package/dist/pages/AreaGeometrySessionPage/components/LearningDashboardPlaceholder.d.ts.map +1 -0
- package/dist/pages/AreaGeometrySessionPage/components/ReviewSectionPlaceholder.css +64 -0
- package/dist/pages/AreaGeometrySessionPage/components/ReviewSectionPlaceholder.d.ts +11 -0
- package/dist/pages/AreaGeometrySessionPage/components/ReviewSectionPlaceholder.d.ts.map +1 -0
- package/dist/pages/AreaGeometrySessionPage/components/ScaffoldingPlaceholder.css +59 -0
- package/dist/pages/AreaGeometrySessionPage/components/ScaffoldingPlaceholder.d.ts +14 -0
- package/dist/pages/AreaGeometrySessionPage/components/ScaffoldingPlaceholder.d.ts.map +1 -0
- package/dist/pages/AreaGeometrySessionPage/index.d.ts +3 -1
- package/dist/pages/AreaGeometrySessionPage/index.d.ts.map +1 -1
- package/dist/pages/AreaGeometrySessionPage/types.d.ts +25 -0
- package/dist/pages/AreaGeometrySessionPage/types.d.ts.map +1 -1
- package/dist/style.css +1 -1
- package/dist/styles/mathcard-tokens.css +47 -5
- package/package.json +1 -1
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* useLongDivision Hook 工具函数
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* 计算长除法步骤
|
|
6
|
+
* 返回每一步的被除数、商、余数、乘积
|
|
7
|
+
*/
|
|
8
|
+
export declare function calculateSteps(dividend: number, divisor: number): Array<{
|
|
9
|
+
index: number;
|
|
10
|
+
dividend: number;
|
|
11
|
+
quotient: number;
|
|
12
|
+
remainder: number;
|
|
13
|
+
product: number;
|
|
14
|
+
}>;
|
|
15
|
+
//# sourceMappingURL=useLongDivision.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useLongDivision.utils.d.ts","sourceRoot":"","sources":["../../../../src/components/MathContainer/hooks/useLongDivision.utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;GAGG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC;IACvE,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC,CAyCD"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* useShortDivision Hook
|
|
3
|
+
* 短除法逻辑层 - 管理状态、验证逻辑
|
|
4
|
+
*
|
|
5
|
+
* @description
|
|
6
|
+
* 使用 useRef 避免闭包问题,确保回调函数引用稳定。
|
|
7
|
+
* 短除法计算逻辑:每一步被除数 ÷ 除数 = 商 ... 余数
|
|
8
|
+
* 余数 × 10 + 下一位 = 新的被除数
|
|
9
|
+
*/
|
|
10
|
+
import type { ShortDivisionConfig, ContainerAnswers, AnswerStatus } from '../MathContainer.types';
|
|
11
|
+
export interface UseShortDivisionOptions {
|
|
12
|
+
/** 短除法配置 */
|
|
13
|
+
config: ShortDivisionConfig;
|
|
14
|
+
/** 初始答案 */
|
|
15
|
+
initialAnswers?: ContainerAnswers;
|
|
16
|
+
/** 答案变化回调 */
|
|
17
|
+
onAnswerChange?: (answers: ContainerAnswers) => void;
|
|
18
|
+
}
|
|
19
|
+
export interface UseShortDivisionReturn {
|
|
20
|
+
/** 当前所有答案 */
|
|
21
|
+
answers: ContainerAnswers;
|
|
22
|
+
/** 更新答案函数 */
|
|
23
|
+
updateAnswer: (cellId: string, value: number | null) => void;
|
|
24
|
+
/** 获取单元格状态 */
|
|
25
|
+
getCellStatus: (cellId: string) => AnswerStatus;
|
|
26
|
+
/** 每步计算结果 */
|
|
27
|
+
stepResults: Record<number, {
|
|
28
|
+
quotient: number;
|
|
29
|
+
remainder: number;
|
|
30
|
+
}>;
|
|
31
|
+
/** 是否完成 */
|
|
32
|
+
isComplete: boolean;
|
|
33
|
+
/** 重置函数 */
|
|
34
|
+
reset: () => void;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* 短除法 Hook
|
|
38
|
+
* 管理短除法的状态和验证逻辑
|
|
39
|
+
*/
|
|
40
|
+
export declare function useShortDivision(options: UseShortDivisionOptions): UseShortDivisionReturn;
|
|
41
|
+
//# sourceMappingURL=useShortDivision.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useShortDivision.d.ts","sourceRoot":"","sources":["../../../../src/components/MathContainer/hooks/useShortDivision.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EACV,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EAEb,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,uBAAuB;IACtC,YAAY;IACZ,MAAM,EAAE,mBAAmB,CAAC;IAC5B,WAAW;IACX,cAAc,CAAC,EAAE,gBAAgB,CAAC;IAClC,aAAa;IACb,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAC;CACtD;AAED,MAAM,WAAW,sBAAsB;IACrC,aAAa;IACb,OAAO,EAAE,gBAAgB,CAAC;IAC1B,aAAa;IACb,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC7D,cAAc;IACd,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,YAAY,CAAC;IAChD,aAAa;IACb,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrE,WAAW;IACX,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW;IACX,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,sBAAsB,CAiKzF"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* useVerticalMultiplication Hook
|
|
3
|
+
* 乘法竖式逻辑层 - 管理状态、验证逻辑
|
|
4
|
+
*/
|
|
5
|
+
import type { VerticalMultiplicationConfig, ContainerAnswers, AnswerStatus } from '../MathContainer.types';
|
|
6
|
+
export interface UseVerticalMultiplicationOptions {
|
|
7
|
+
config: VerticalMultiplicationConfig;
|
|
8
|
+
initialAnswers?: ContainerAnswers;
|
|
9
|
+
onAnswerChange?: (answers: ContainerAnswers) => void;
|
|
10
|
+
}
|
|
11
|
+
export interface UseVerticalMultiplicationReturn {
|
|
12
|
+
answers: ContainerAnswers;
|
|
13
|
+
updateAnswer: (cellId: string, value: number | null) => void;
|
|
14
|
+
getCellStatus: (cellId: string) => AnswerStatus;
|
|
15
|
+
partialProducts: Array<{
|
|
16
|
+
digit: number;
|
|
17
|
+
partial: number;
|
|
18
|
+
rowIndex: number;
|
|
19
|
+
}>;
|
|
20
|
+
correctProduct: number;
|
|
21
|
+
isComplete: boolean;
|
|
22
|
+
reset: () => void;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* 乘法竖式 Hook
|
|
26
|
+
*/
|
|
27
|
+
export declare function useVerticalMultiplication(options: UseVerticalMultiplicationOptions): UseVerticalMultiplicationReturn;
|
|
28
|
+
//# sourceMappingURL=useVerticalMultiplication.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useVerticalMultiplication.d.ts","sourceRoot":"","sources":["../../../../src/components/MathContainer/hooks/useVerticalMultiplication.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,4BAA4B,EAAE,gBAAgB,EAAE,YAAY,EAAc,MAAM,wBAAwB,CAAC;AAGvH,MAAM,WAAW,gCAAgC;IAC/C,MAAM,EAAE,4BAA4B,CAAC;IACrC,cAAc,CAAC,EAAE,gBAAgB,CAAC;IAClC,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAC;CACtD;AAED,MAAM,WAAW,+BAA+B;IAC9C,OAAO,EAAE,gBAAgB,CAAC;IAC1B,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC7D,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,YAAY,CAAC;IAChD,eAAe,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7E,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,gCAAgC,GAAG,+BAA+B,CAkCpH"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* useVerticalMultiplication Hook 工具函数
|
|
3
|
+
*/
|
|
4
|
+
import type { ContainerAnswers } from '../MathContainer.types';
|
|
5
|
+
/**
|
|
6
|
+
* 计算中间积
|
|
7
|
+
* 被乘数 × 乘数的每一位
|
|
8
|
+
*/
|
|
9
|
+
export declare function calculatePartialProducts(multiplicand: number, multiplier: number): Array<{
|
|
10
|
+
digit: number;
|
|
11
|
+
partial: number;
|
|
12
|
+
rowIndex: number;
|
|
13
|
+
}>;
|
|
14
|
+
/**
|
|
15
|
+
* 计算总单元格数
|
|
16
|
+
*/
|
|
17
|
+
export declare function calculateTotalCells(partialProducts: Array<{
|
|
18
|
+
partial: number;
|
|
19
|
+
}>, correctProduct: number): number;
|
|
20
|
+
/**
|
|
21
|
+
* 获取单元格的正确值
|
|
22
|
+
*/
|
|
23
|
+
export declare function getCorrectCellValue(cellId: string, partialProducts: Array<{
|
|
24
|
+
partial: number;
|
|
25
|
+
}>, correctProduct: number): number | null;
|
|
26
|
+
/**
|
|
27
|
+
* 检查是否完成
|
|
28
|
+
*/
|
|
29
|
+
export declare function checkComplete(answers: ContainerAnswers, totalCells: number): boolean;
|
|
30
|
+
//# sourceMappingURL=useVerticalMultiplication.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useVerticalMultiplication.utils.d.ts","sourceRoot":"","sources":["../../../../src/components/MathContainer/hooks/useVerticalMultiplication.utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACjB,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAO7D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,eAAe,EAAE,KAAK,CAAC;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,EAC3C,cAAc,EAAE,MAAM,GACrB,MAAM,CAMR;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,KAAK,CAAC;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,EAC3C,cAAc,EAAE,MAAM,GACrB,MAAM,GAAG,IAAI,CAyBf;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAGpF"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MathContainer 模块导出
|
|
3
|
+
* 业务容器组件体系
|
|
4
|
+
*/
|
|
5
|
+
export { MathContainerMode, AnswerStatus, MathContainerType, } from './MathContainer.types';
|
|
6
|
+
export type { CellAnswer, ContainerAnswers, BaseContainerConfig, FactorTableConfig, ShortDivisionConfig, VerticalMultiplicationConfig, LongDivisionConfig, ContainerConfig, UseContainerReturn, ContainerViewProps, MathContainerProps, MathContainerAnswer, } from './MathContainer.types';
|
|
7
|
+
export { useFactorTable, useShortDivision, useVerticalMultiplication, useLongDivision, } from './hooks';
|
|
8
|
+
export type { UseFactorTableOptions, UseFactorTableReturn, UseShortDivisionOptions, UseShortDivisionReturn, UseVerticalMultiplicationOptions, UseVerticalMultiplicationReturn, UseLongDivisionOptions, UseLongDivisionReturn, } from './hooks';
|
|
9
|
+
export { FactorTable, FactorTableView } from './FactorTable';
|
|
10
|
+
export type { FactorTableProps, FactorPair, FactorCellData, FactorValidationResult, } from './FactorTable/FactorTable.types';
|
|
11
|
+
export { ShortDivision, ShortDivisionView } from './ShortDivision';
|
|
12
|
+
export type { ShortDivisionProps, ShortDivisionViewProps, ShortDivisionStep, ShortDivisionCellData, } from './ShortDivision/ShortDivision.types';
|
|
13
|
+
export { VerticalMultiplication, VerticalMultiplicationView } from './VerticalMultiplication';
|
|
14
|
+
export type { VerticalMultiplicationProps, VerticalMultiplicationViewProps, } from './VerticalMultiplication/VerticalMultiplication.types';
|
|
15
|
+
export { LongDivision, LongDivisionView } from './LongDivision';
|
|
16
|
+
export type { LongDivisionProps, LongDivisionViewProps, } from './LongDivision/LongDivision.types';
|
|
17
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/MathContainer/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAE/B,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,4BAA4B,EAC5B,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,yBAAyB,EACzB,eAAe,GAChB,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,sBAAsB,EACtB,gCAAgC,EAChC,+BAA+B,EAC/B,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC7D,YAAY,EACV,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,sBAAsB,GACvB,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACnE,YAAY,EACV,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,qCAAqC,CAAC;AAG7C,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAC9F,YAAY,EACV,2BAA2B,EAC3B,+BAA+B,GAChC,MAAM,uDAAuD,CAAC;AAG/D,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAChE,YAAY,EACV,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,mCAAmC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { OptionCardProps } from './OptionGroup.types';
|
|
3
|
+
/**
|
|
4
|
+
* OptionCard 组件
|
|
5
|
+
*
|
|
6
|
+
* 单个选项卡片 UI,纯展示组件,无状态管理
|
|
7
|
+
* 支持状态:selected、disabled、correct、wrong
|
|
8
|
+
* 支持两种风格:default 和 ixl
|
|
9
|
+
*/
|
|
10
|
+
export declare const OptionCard: React.FC<OptionCardProps>;
|
|
11
|
+
//# sourceMappingURL=OptionCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OptionCard.d.ts","sourceRoot":"","sources":["../../../src/components/OptionGroup/OptionCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAG3D;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAsD/C,CAAC"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OptionCard Tailwind Variants
|
|
3
|
+
*/
|
|
4
|
+
export declare const optionCardStyles: import("tailwind-variants").TVReturnType<{
|
|
5
|
+
selected: {
|
|
6
|
+
true: string;
|
|
7
|
+
false: string;
|
|
8
|
+
};
|
|
9
|
+
disabled: {
|
|
10
|
+
true: string;
|
|
11
|
+
false: string;
|
|
12
|
+
};
|
|
13
|
+
correct: {
|
|
14
|
+
true: string;
|
|
15
|
+
false: string;
|
|
16
|
+
};
|
|
17
|
+
wrong: {
|
|
18
|
+
true: string;
|
|
19
|
+
false: string;
|
|
20
|
+
};
|
|
21
|
+
variant: {
|
|
22
|
+
default: string;
|
|
23
|
+
ixl: string;
|
|
24
|
+
};
|
|
25
|
+
}, undefined, string[], {
|
|
26
|
+
selected: {
|
|
27
|
+
true: string;
|
|
28
|
+
false: string;
|
|
29
|
+
};
|
|
30
|
+
disabled: {
|
|
31
|
+
true: string;
|
|
32
|
+
false: string;
|
|
33
|
+
};
|
|
34
|
+
correct: {
|
|
35
|
+
true: string;
|
|
36
|
+
false: string;
|
|
37
|
+
};
|
|
38
|
+
wrong: {
|
|
39
|
+
true: string;
|
|
40
|
+
false: string;
|
|
41
|
+
};
|
|
42
|
+
variant: {
|
|
43
|
+
default: string;
|
|
44
|
+
ixl: string;
|
|
45
|
+
};
|
|
46
|
+
}, undefined, import("tailwind-variants").TVReturnType<{
|
|
47
|
+
selected: {
|
|
48
|
+
true: string;
|
|
49
|
+
false: string;
|
|
50
|
+
};
|
|
51
|
+
disabled: {
|
|
52
|
+
true: string;
|
|
53
|
+
false: string;
|
|
54
|
+
};
|
|
55
|
+
correct: {
|
|
56
|
+
true: string;
|
|
57
|
+
false: string;
|
|
58
|
+
};
|
|
59
|
+
wrong: {
|
|
60
|
+
true: string;
|
|
61
|
+
false: string;
|
|
62
|
+
};
|
|
63
|
+
variant: {
|
|
64
|
+
default: string;
|
|
65
|
+
ixl: string;
|
|
66
|
+
};
|
|
67
|
+
}, undefined, string[], unknown, unknown, undefined>>;
|
|
68
|
+
/**
|
|
69
|
+
* OptionGroup Tailwind Variants
|
|
70
|
+
*/
|
|
71
|
+
export declare const optionGroupStyles: import("tailwind-variants").TVReturnType<{
|
|
72
|
+
layout: {
|
|
73
|
+
vertical: string;
|
|
74
|
+
horizontal: string;
|
|
75
|
+
};
|
|
76
|
+
}, undefined, "flex gap-3", {
|
|
77
|
+
layout: {
|
|
78
|
+
vertical: string;
|
|
79
|
+
horizontal: string;
|
|
80
|
+
};
|
|
81
|
+
}, undefined, import("tailwind-variants").TVReturnType<{
|
|
82
|
+
layout: {
|
|
83
|
+
vertical: string;
|
|
84
|
+
horizontal: string;
|
|
85
|
+
};
|
|
86
|
+
}, undefined, "flex gap-3", unknown, unknown, undefined>>;
|
|
87
|
+
//# sourceMappingURL=OptionCard.styles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OptionCard.styles.d.ts","sourceRoot":"","sources":["../../../src/components/OptionGroup/OptionCard.styles.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qDAuD3B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;yDAW5B,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { OptionGroupProps } from './OptionGroup.types';
|
|
3
|
+
/**
|
|
4
|
+
* OptionGroup 组件
|
|
5
|
+
*
|
|
6
|
+
* 选项组容器,管理单选/多选逻辑
|
|
7
|
+
* 接收选项列表,渲染 OptionCard 列表
|
|
8
|
+
* 处理点击事件,管理选中状态
|
|
9
|
+
*/
|
|
10
|
+
export declare const OptionGroup: React.FC<OptionGroupProps>;
|
|
11
|
+
//# sourceMappingURL=OptionGroup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OptionGroup.d.ts","sourceRoot":"","sources":["../../../src/components/OptionGroup/OptionGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqC,MAAM,OAAO,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAoB,MAAM,qBAAqB,CAAC;AAI9E;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAuFjD,CAAC"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import type React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* 选项答案项
|
|
4
|
+
*/
|
|
5
|
+
export interface OptionAnswerItem {
|
|
6
|
+
id: string;
|
|
7
|
+
content: string;
|
|
8
|
+
contentType?: 'text' | 'formula' | 'image' | 'graph';
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* 选项项定义
|
|
12
|
+
*/
|
|
13
|
+
export interface OptionItem {
|
|
14
|
+
id: string;
|
|
15
|
+
label: React.ReactNode;
|
|
16
|
+
rawContent: string;
|
|
17
|
+
contentType?: 'text' | 'formula' | 'image' | 'graph';
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* OptionCard 组件 Props
|
|
21
|
+
*/
|
|
22
|
+
export interface OptionCardProps {
|
|
23
|
+
/** 选项唯一标识 */
|
|
24
|
+
id: string;
|
|
25
|
+
/** 选项内容 */
|
|
26
|
+
children: React.ReactNode;
|
|
27
|
+
/** 是否选中 */
|
|
28
|
+
selected: boolean;
|
|
29
|
+
/** 是否禁用 */
|
|
30
|
+
disabled?: boolean;
|
|
31
|
+
/** 是否为正确答案 */
|
|
32
|
+
correct?: boolean;
|
|
33
|
+
/** 是否为错误答案 */
|
|
34
|
+
wrong?: boolean;
|
|
35
|
+
/** 变体风格 */
|
|
36
|
+
variant?: 'default' | 'ixl';
|
|
37
|
+
/** 点击回调 */
|
|
38
|
+
onClick: () => void;
|
|
39
|
+
/** 自定义类名 */
|
|
40
|
+
className?: string;
|
|
41
|
+
/** 自定义样式 */
|
|
42
|
+
style?: React.CSSProperties;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* OptionGroup 组件 Props
|
|
46
|
+
*/
|
|
47
|
+
export interface OptionGroupProps {
|
|
48
|
+
/** 选择类型:单选或多选 */
|
|
49
|
+
type: 'single' | 'multiple';
|
|
50
|
+
/** 选项列表 */
|
|
51
|
+
options: OptionItem[];
|
|
52
|
+
/** 当前选中的值 */
|
|
53
|
+
value: OptionAnswerItem[];
|
|
54
|
+
/** 值变化回调 */
|
|
55
|
+
onChange: (value: OptionAnswerItem[]) => void;
|
|
56
|
+
/** 是否禁用整个选项组 */
|
|
57
|
+
disabled?: boolean;
|
|
58
|
+
/** 是否显示结果状态 */
|
|
59
|
+
showResult?: boolean;
|
|
60
|
+
/** 正确答案 ID 列表 */
|
|
61
|
+
correctAnswers?: string[];
|
|
62
|
+
/** 布局方向 */
|
|
63
|
+
layout?: 'vertical' | 'horizontal';
|
|
64
|
+
/** 变体风格 */
|
|
65
|
+
variant?: 'default' | 'ixl';
|
|
66
|
+
/** 自定义类名 */
|
|
67
|
+
className?: string;
|
|
68
|
+
/** 自定义样式 */
|
|
69
|
+
style?: React.CSSProperties;
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=OptionGroup.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OptionGroup.types.d.ts","sourceRoot":"","sources":["../../../src/components/OptionGroup/OptionGroup.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;CACtD;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;CACtD;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,aAAa;IACb,EAAE,EAAE,MAAM,CAAC;IACX,WAAW;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,WAAW;IACX,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW;IACX,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW;IACX,OAAO,CAAC,EAAE,SAAS,GAAG,KAAK,CAAC;IAC5B,WAAW;IACX,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY;IACZ,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,iBAAiB;IACjB,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC5B,WAAW;IACX,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,aAAa;IACb,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,YAAY;IACZ,QAAQ,EAAE,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,IAAI,CAAC;IAC9C,gBAAgB;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iBAAiB;IACjB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,WAAW;IACX,MAAM,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACnC,WAAW;IACX,OAAO,CAAC,EAAE,SAAS,GAAG,KAAK,CAAC;IAC5B,YAAY;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY;IACZ,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { OptionCard } from './OptionCard';
|
|
2
|
+
export { OptionGroup } from './OptionGroup';
|
|
3
|
+
export type { OptionAnswerItem, OptionItem, OptionCardProps, OptionGroupProps, } from './OptionGroup.types';
|
|
4
|
+
export { optionCardStyles, optionGroupStyles } from './OptionCard.styles';
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/OptionGroup/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EACV,gBAAgB,EAChB,UAAU,EACV,eAAe,EACf,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"}
|