@sim-design/training 1.0.0 → 1.1.0

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.
Files changed (278) hide show
  1. package/README.md +481 -15
  2. package/dist/{ArrowLeftOutlined-CiSQq3bL.js → ArrowLeftOutlined-BxA84GXs.js} +1 -1
  3. package/dist/ArrowLeftOutlined-D785XjyB.js +12 -0
  4. package/dist/{AssessmentPlugin-Bx4VrBdV.js → AssessmentPlugin-D_iesmyg.js} +7 -7
  5. package/dist/AssessmentPlugin-zRr-IsdA.js +607 -0
  6. package/dist/CaseAnalysisPlugin-CXuQpkPd.js +2196 -0
  7. package/dist/CaseAnalysisPlugin-DytlXsRD.js +2196 -0
  8. package/dist/CaseDetailContent-DT5nCtRT.js +28613 -0
  9. package/dist/CaseDetailContent-Y7Q430MG.js +28595 -0
  10. package/dist/{CharacterDialoguePanel-Bvdab3qj.js → CharacterDialoguePanel-CdtUl-Sv.js} +178 -139
  11. package/dist/CharacterDialoguePanel-D_4YNFZv.js +815 -0
  12. package/dist/{CheckCircleFilled-Byo8CDfW.js → CheckCircleFilled-CnslIY7j.js} +1 -1
  13. package/dist/CheckCircleFilled-NvZaC2sk.js +12 -0
  14. package/dist/DecisionMakingPlugin-B_KQUFzW.js +1385 -0
  15. package/dist/DecisionMakingPlugin-ILLGek3S.js +1385 -0
  16. package/dist/{DecisionSelectPlugin-DtQ2KV34.js → DecisionSelectPlugin-BGQiHGBK.js} +20 -11
  17. package/dist/DecisionSelectPlugin-Bqmh6XGh.js +872 -0
  18. package/dist/{DecisionShared-Dh9oeQFT.js → DecisionShared-BHq1lEqt.js} +2 -2
  19. package/dist/DecisionShared-Be-zKZLT.js +65 -0
  20. package/dist/DeleteOutlined-BvMjU7m5.js +12 -0
  21. package/dist/DeleteOutlined-Dqy6M2LH.js +12 -0
  22. package/dist/{CustomLayoutRenderer--rnQrqQ2.js → DialogueFormPlugin-BpCeFadt.js} +22724 -21631
  23. package/dist/DialogueFormPlugin-CXlbxX-z.js +123617 -0
  24. package/dist/DialoguePlugin-CO7Nzv0K.js +596 -0
  25. package/dist/DialoguePlugin-DDNdsylz.js +596 -0
  26. package/dist/DocumentReviewPlugin-2CnKQwVG.js +1967 -0
  27. package/dist/DocumentReviewPlugin-qYYrnjvE.js +1967 -0
  28. package/dist/{EyeOutlined-XvOAKlLs.js → EyeOutlined-BrKCNjui.js} +1 -1
  29. package/dist/EyeOutlined-CW0tYV0f.js +12 -0
  30. package/dist/FormFillingPlugin-C3h8ySOZ.js +969 -0
  31. package/dist/FormFillingPlugin-CPmd76Qr.js +969 -0
  32. package/dist/HolderOutlined-CH0tShWu.js +12 -0
  33. package/dist/HolderOutlined-Dm6TBtqf.js +12 -0
  34. package/dist/ModelEditor-BjEbFloQ.js +11753 -0
  35. package/dist/ModelEditor-CwR67DFQ.js +11753 -0
  36. package/dist/{ProcessOperationPlugin-IijngDlX.js → ProcessOperationPlugin-1Lz431aC.js} +12 -12
  37. package/dist/ProcessOperationPlugin-BkmdG3ch.js +88 -0
  38. package/dist/QAPlugin-0C4kpq3J.js +172 -0
  39. package/dist/QAPlugin-UC8uywcg.js +172 -0
  40. package/dist/{ReloadOutlined-Daor2m11.js → ReloadOutlined-BZ92nlYF.js} +1 -1
  41. package/dist/ReloadOutlined-CYoPOwLl.js +12 -0
  42. package/dist/{SettingOutlined-CLEOgXB-.js → SettingOutlined-F466s0Ti.js} +33 -65
  43. package/dist/SettingOutlined-c2hikCfN.js +60 -0
  44. package/dist/StarFilled-Bilmj6UK.js +28 -0
  45. package/dist/StarFilled-CtH30fL0.js +28 -0
  46. package/dist/StrategyLabPlugin-CvO07sXV.js +12445 -0
  47. package/dist/StrategyLabPlugin-DUqZYctQ.js +12445 -0
  48. package/dist/ThunderboltOutlined-BpmoCKdV.js +28 -0
  49. package/dist/ThunderboltOutlined-DDQFi5Cv.js +28 -0
  50. package/dist/TrainingModelContainer-DqCsdC7C.js +11241 -0
  51. package/dist/TrainingModelContainer-yi8W6KFl.js +11241 -0
  52. package/dist/{UndoOutlined-ChUQYUul.js → UndoOutlined-6JZVzmdX.js} +26 -42
  53. package/dist/UndoOutlined-Dw6_9_OL.js +68 -0
  54. package/dist/{WarningFilled-1Rc4hr0C.js → WarningFilled-Cy1tvuQy.js} +1 -1
  55. package/dist/WarningFilled-lkr453eh.js +12 -0
  56. package/dist/{adapters-D1FFZFoA.js → adapters-BbCnXSYo.js} +2 -2
  57. package/dist/{analysisTools-CXyOvSZT.js → analysisTools-Cp5-3DaU.js} +59 -12
  58. package/dist/creator.js +4 -2
  59. package/dist/designTokens-walF_QkZ.js +23 -0
  60. package/dist/images/healthcare/bg.jpg +0 -0
  61. package/dist/{index-CYjdXPgc.js → index-C71iHgSs.js} +2640 -2722
  62. package/dist/{index-XuBVjlmu.js → index-CBvqcbIU.js} +7214 -7643
  63. package/dist/index-D94YNWTb.js +433 -0
  64. package/dist/index-DSYmOXnQ.js +6486 -0
  65. package/dist/index-fP97rKeQ.js +433 -0
  66. package/dist/index.js +8 -6
  67. package/dist/judgement-xTGXlDcn.js +29 -0
  68. package/dist/runtime.js +1 -1
  69. package/dist/sortable.esm-bm_c5vmI.js +3307 -0
  70. package/dist/types.js +1 -1
  71. package/dist/useDialogueLogic-D1lkUKUZ.js +576 -0
  72. package/dist/useDialogueLogic-vOJ9XRNP.js +576 -0
  73. package/dist-types/client/src/admin/CaseDataEditor.d.ts +20 -0
  74. package/dist-types/client/src/admin/CaseEditor.d.ts +19 -0
  75. package/dist-types/client/src/admin/DialogueFormCheckRulesEditor.d.ts +11 -0
  76. package/dist-types/client/src/admin/DialogueFormInitDataEditor.d.ts +31 -0
  77. package/dist-types/client/src/admin/InitDataEditors.d.ts +7 -0
  78. package/dist-types/client/src/admin/ModelEditor.d.ts +11 -0
  79. package/dist-types/client/src/admin/ModelPreview.d.ts +13 -0
  80. package/dist-types/client/src/admin/OptionSelector.d.ts +32 -0
  81. package/dist-types/client/src/admin/StageStepEditor.d.ts +20 -0
  82. package/dist-types/client/src/admin/StepAnswerKeyEditor.d.ts +19 -0
  83. package/dist-types/client/src/admin/StepByStepCreator.d.ts +27 -0
  84. package/dist-types/client/src/admin/components/AbilityMapEditor.d.ts +12 -0
  85. package/dist-types/client/src/admin/components/CasePreview.d.ts +8 -0
  86. package/dist-types/client/src/admin/components/StepAbilitySelector.d.ts +9 -0
  87. package/dist-types/client/src/admin/constants/creatorConstants.d.ts +39 -0
  88. package/dist-types/client/src/admin/editors/CaseAnalysisEditor.d.ts +11 -0
  89. package/dist-types/client/src/admin/editors/DecisionMakingEditor.d.ts +7 -0
  90. package/dist-types/client/src/admin/editors/DialogueEditor.d.ts +12 -0
  91. package/dist-types/client/src/admin/editors/DocumentReviewEditor.d.ts +7 -0
  92. package/dist-types/client/src/admin/editors/DocumentReviewRuntimeRulesEditor.d.ts +15 -0
  93. package/dist-types/client/src/admin/editors/FormFillingEditor.d.ts +33 -0
  94. package/dist-types/client/src/admin/editors/ModelUIConfigEditor.d.ts +5 -0
  95. package/dist-types/client/src/admin/editors/QAEditor.d.ts +6 -0
  96. package/dist-types/client/src/admin/editors/RouterEditors.d.ts +18 -0
  97. package/dist-types/client/src/admin/editors/StepBriefingEditor.d.ts +14 -0
  98. package/dist-types/client/src/admin/editors/StrategyLabEditor.d.ts +24 -0
  99. package/dist-types/client/src/admin/editors/decisionEditorParts.d.ts +18 -0
  100. package/dist-types/client/src/admin/editors/index.d.ts +8 -0
  101. package/dist-types/client/src/admin/editors/shared.d.ts +17 -0
  102. package/dist-types/client/src/admin/hooks/useStep1Intent.d.ts +16 -0
  103. package/dist-types/client/src/admin/hooks/useStep2Outline.d.ts +41 -0
  104. package/dist-types/client/src/admin/hooks/useStep3Details.d.ts +123 -0
  105. package/dist-types/client/src/admin/hooks/useStep4Cases.d.ts +48 -0
  106. package/dist-types/client/src/admin/hooks/useStep5Validation.d.ts +16 -0
  107. package/dist-types/client/src/admin/landingValidation.d.ts +74 -0
  108. package/dist-types/client/src/admin/schemaFieldUtils.d.ts +55 -0
  109. package/dist-types/client/src/admin/services.d.ts +461 -0
  110. package/dist-types/client/src/admin/shared-editors.d.ts +31 -0
  111. package/dist-types/client/src/admin/types/creatorArtifacts.d.ts +140 -0
  112. package/dist-types/client/src/components/AbilityMapView.d.ts +15 -0
  113. package/dist-types/client/src/components/CaseDetail/CaseDetailContent.d.ts +12 -0
  114. package/dist-types/client/src/components/ConversationalDataCollector/IntentConfirmPanel.d.ts +20 -0
  115. package/dist-types/client/src/components/ConversationalDataCollector/index.d.ts +7 -0
  116. package/dist-types/client/src/components/ConversationalDataCollector/intentState.d.ts +24 -0
  117. package/dist-types/client/src/components/ConversationalDataCollector/types.d.ts +95 -0
  118. package/dist-types/client/src/components/ConversationalDataCollector/utils.d.ts +62 -0
  119. package/dist-types/client/src/components/CustomLayoutRenderer.d.ts +8 -0
  120. package/dist-types/client/src/components/MarkdownRenderer.d.ts +15 -0
  121. package/dist-types/client/src/components/StrategyLabScene/VisualInputComponents.d.ts +85 -0
  122. package/dist-types/client/src/components/StrategyLabScene/components/AdversarialView.d.ts +18 -0
  123. package/dist-types/client/src/components/StrategyLabScene/components/BottomBar.d.ts +22 -0
  124. package/dist-types/client/src/components/StrategyLabScene/components/CharacterCard.d.ts +14 -0
  125. package/dist-types/client/src/components/StrategyLabScene/components/CharacterDialoguePanel.d.ts +32 -0
  126. package/dist-types/client/src/components/StrategyLabScene/components/CollaborativeView.d.ts +20 -0
  127. package/dist-types/client/src/components/StrategyLabScene/components/ComparisonView.d.ts +16 -0
  128. package/dist-types/client/src/components/StrategyLabScene/components/DecisionInput.d.ts +27 -0
  129. package/dist-types/client/src/components/StrategyLabScene/components/DecisionSwitcher.d.ts +14 -0
  130. package/dist-types/client/src/components/StrategyLabScene/components/EvaluationReport.d.ts +13 -0
  131. package/dist-types/client/src/components/StrategyLabScene/components/NodeChainPanels.d.ts +32 -0
  132. package/dist-types/client/src/components/StrategyLabScene/components/ProgressSteps.d.ts +15 -0
  133. package/dist-types/client/src/components/StrategyLabScene/components/SandboxView.d.ts +19 -0
  134. package/dist-types/client/src/components/StrategyLabScene/components/ScenarioPanel.d.ts +17 -0
  135. package/dist-types/client/src/components/StrategyLabScene/components/SimulationAnimation.d.ts +13 -0
  136. package/dist-types/client/src/components/StrategyLabScene/components/SimulationResult.d.ts +15 -0
  137. package/dist-types/client/src/components/StrategyLabScene/components/StressTestView.d.ts +22 -0
  138. package/dist-types/client/src/components/StrategyLabScene/themeMatching.d.ts +21 -0
  139. package/dist-types/client/src/components/StrategyLabScene/themes/education.d.ts +45 -0
  140. package/dist-types/client/src/components/StrategyLabScene/themes/healthcare.d.ts +7 -0
  141. package/dist-types/client/src/components/StrategyLabScene/themes/index.d.ts +22 -0
  142. package/dist-types/client/src/components/StrategyLabScene/themes/professional.d.ts +7 -0
  143. package/dist-types/client/src/components/StrategyLabScene/themes/technology.d.ts +7 -0
  144. package/dist-types/client/src/components/StrategyLabScene/types.d.ts +82 -0
  145. package/dist-types/client/src/components/StrategyLabScene/views/UnifiedStrategyLabView.d.ts +72 -0
  146. package/dist-types/client/src/components/TrainingEngine/BriefingQAChat.d.ts +19 -0
  147. package/dist-types/client/src/components/TrainingEngine/CaseInfoModal.d.ts +12 -0
  148. package/dist-types/client/src/components/TrainingEngine/CaseSelector.d.ts +15 -0
  149. package/dist-types/client/src/components/TrainingEngine/ClassicView.d.ts +7 -0
  150. package/dist-types/client/src/components/TrainingEngine/DashboardHomePage.d.ts +7 -0
  151. package/dist-types/client/src/components/TrainingEngine/EnhancedStudentProfilePanel.d.ts +9 -0
  152. package/dist-types/client/src/components/TrainingEngine/EvaluationPanel.d.ts +8 -0
  153. package/dist-types/client/src/components/TrainingEngine/GlobalQAPanel.d.ts +34 -0
  154. package/dist-types/client/src/components/TrainingEngine/GuidanceHistoryDrawer.d.ts +7 -0
  155. package/dist-types/client/src/components/TrainingEngine/GuidancePanel.d.ts +3 -0
  156. package/dist-types/client/src/components/TrainingEngine/ImmersiveGameView.d.ts +7 -0
  157. package/dist-types/client/src/components/TrainingEngine/PluginRenderer.d.ts +15 -0
  158. package/dist-types/client/src/components/TrainingEngine/ProgressTracker.d.ts +3 -0
  159. package/dist-types/client/src/components/TrainingEngine/StageAssessingOverlay.d.ts +17 -0
  160. package/dist-types/client/src/components/TrainingEngine/StageAssessmentPanel.d.ts +10 -0
  161. package/dist-types/client/src/components/TrainingEngine/StepExecutor.d.ts +20 -0
  162. package/dist-types/client/src/components/TrainingEngine/StepNodeMap.d.ts +15 -0
  163. package/dist-types/client/src/components/TrainingEngine/StudentProfilePanel.d.ts +6 -0
  164. package/dist-types/client/src/components/TrainingEngine/ThemeContext.d.ts +8 -0
  165. package/dist-types/client/src/components/TrainingEngine/TrainingMaterialsSidebar.d.ts +21 -0
  166. package/dist-types/client/src/components/TrainingEngine/TrainingModelContainer.d.ts +42 -0
  167. package/dist-types/client/src/components/TrainingEngine/ViewProps.d.ts +37 -0
  168. package/dist-types/client/src/components/TrainingEngine/profileDataSelectors.d.ts +23 -0
  169. package/dist-types/client/src/components/TrainingEngine/stepInitData.d.ts +42 -0
  170. package/dist-types/client/src/components/TrainingEngine/targetAbilityUtils.d.ts +11 -0
  171. package/dist-types/client/src/components/VisualizationRenderer/ChartRenderer.d.ts +12 -0
  172. package/dist-types/client/src/components/VisualizationRenderer/types.d.ts +41 -0
  173. package/dist-types/client/src/config/appConfig.d.ts +15 -0
  174. package/dist-types/client/src/configs/agentConfig.d.ts +66 -0
  175. package/dist-types/client/src/configs/intentDiscoveryConfig.d.ts +22 -0
  176. package/dist-types/client/src/data/mockTrainingModel.d.ts +10 -0
  177. package/dist-types/client/src/hooks/useAIService.d.ts +17 -0
  178. package/dist-types/client/src/hooks/useDialogueLogic.d.ts +53 -0
  179. package/dist-types/client/src/hooks/useFormFillingLogic.d.ts +26 -0
  180. package/dist-types/client/src/hooks/useFormRealtimeGuidance.d.ts +45 -0
  181. package/dist-types/client/src/hooks/useRealtimeGuidance.d.ts +66 -0
  182. package/dist-types/client/src/hooks/useStageAssessment.d.ts +8 -0
  183. package/dist-types/client/src/hooks/useStepExecution.d.ts +14 -0
  184. package/dist-types/client/src/hooks/useTrainingModel.d.ts +30 -0
  185. package/dist-types/client/src/lib/creator.d.ts +1 -0
  186. package/dist-types/client/src/lib/index.d.ts +1 -0
  187. package/dist-types/client/src/lib/types.d.ts +113 -22
  188. package/dist-types/client/src/plugins/AssessmentPlugin.d.ts +8 -0
  189. package/dist-types/client/src/plugins/CaseAnalysisPlugin.d.ts +9 -0
  190. package/dist-types/client/src/plugins/CaseAnalysisPluginView.d.ts +26 -0
  191. package/dist-types/client/src/plugins/DecisionSelectPlugin.d.ts +8 -0
  192. package/dist-types/client/src/plugins/DialogueFormPlugin.d.ts +9 -0
  193. package/dist-types/client/src/plugins/DialogueFormPluginView.d.ts +37 -0
  194. package/dist-types/client/src/plugins/DialoguePlugin.d.ts +8 -0
  195. package/dist-types/client/src/plugins/DialoguePluginView.d.ts +44 -0
  196. package/dist-types/client/src/plugins/DocumentReview/DocumentCard.d.ts +47 -0
  197. package/dist-types/client/src/plugins/DocumentReview/LayoutComponents.d.ts +47 -0
  198. package/dist-types/client/src/plugins/DocumentReview/MarkListPanel.d.ts +51 -0
  199. package/dist-types/client/src/plugins/DocumentReview/MarkModal.d.ts +37 -0
  200. package/dist-types/client/src/plugins/DocumentReview/ResultPanel.d.ts +32 -0
  201. package/dist-types/client/src/plugins/DocumentReview/Toolbar.d.ts +31 -0
  202. package/dist-types/client/src/plugins/DocumentReview/designTokens.d.ts +76 -0
  203. package/dist-types/client/src/plugins/DocumentReviewPlugin.d.ts +14 -0
  204. package/dist-types/client/src/plugins/ProcessOperationPlugin.d.ts +8 -0
  205. package/dist-types/client/src/plugins/QAPlugin.d.ts +9 -0
  206. package/dist-types/client/src/plugins/StrategyLabPlugin.d.ts +7 -0
  207. package/dist-types/client/src/plugins/decision-making/DecisionMakingPlugin.d.ts +4 -0
  208. package/dist-types/client/src/plugins/decision-making/DecisionWorkspace.d.ts +23 -0
  209. package/dist-types/client/src/plugins/decision-making/MaterialsPanel.d.ts +18 -0
  210. package/dist-types/client/src/plugins/decision-making/logic.d.ts +46 -0
  211. package/dist-types/client/src/plugins/decision-making/scoring.d.ts +79 -0
  212. package/dist-types/client/src/plugins/decision-making/styles.d.ts +743 -0
  213. package/dist-types/client/src/plugins/decision-making/types.d.ts +179 -0
  214. package/dist-types/client/src/plugins/form-filling/DocumentFormLayout.d.ts +22 -0
  215. package/dist-types/client/src/plugins/form-filling/FormAssistPanel.d.ts +20 -0
  216. package/dist-types/client/src/plugins/form-filling/FormFillingPlugin.d.ts +15 -0
  217. package/dist-types/client/src/plugins/form-filling/forms.d.ts +28 -0
  218. package/dist-types/client/src/plugins/form-filling/scoring.d.ts +86 -0
  219. package/dist-types/client/src/plugins/form-filling/useFormFilling.d.ts +42 -0
  220. package/dist-types/client/src/plugins/form-filling/validationRules.d.ts +26 -0
  221. package/dist-types/client/src/plugins/shared/DecisionShared.d.ts +54 -0
  222. package/dist-types/client/src/plugins/shared/FrameworkWidget.d.ts +19 -0
  223. package/dist-types/client/src/plugins/shared/PluginFooter.d.ts +4 -0
  224. package/dist-types/client/src/plugins/shared/PluginHeader.d.ts +4 -0
  225. package/dist-types/client/src/plugins/shared/analysisTools.d.ts +30 -0
  226. package/dist-types/client/src/plugins/shared/disturbanceUtils.d.ts +5 -0
  227. package/dist-types/client/src/plugins/shared/index.d.ts +5 -0
  228. package/dist-types/client/src/plugins/shared/jsonRepair.d.ts +39 -0
  229. package/dist-types/client/src/plugins/shared/judgement.d.ts +46 -0
  230. package/dist-types/client/src/plugins/shared/nodeChain.d.ts +15 -0
  231. package/dist-types/client/src/plugins/shared/renderFieldGrid.d.ts +16 -0
  232. package/dist-types/client/src/plugins/shared/reportBlocks.d.ts +33 -0
  233. package/dist-types/client/src/plugins/shared/reportEvaluation.d.ts +30 -0
  234. package/dist-types/client/src/plugins/shared/reportExport.d.ts +12 -0
  235. package/dist-types/client/src/plugins/shared/reportWorkbench/BlockPropertiesPanel.d.ts +9 -0
  236. package/dist-types/client/src/plugins/shared/reportWorkbench/BlockToolbox.d.ts +11 -0
  237. package/dist-types/client/src/plugins/shared/reportWorkbench/ReportWorkbench.d.ts +20 -0
  238. package/dist-types/client/src/plugins/shared/reportWorkbench/SortableBlock.d.ts +15 -0
  239. package/dist-types/client/src/plugins/shared/reportWorkbench/factory.d.ts +14 -0
  240. package/dist-types/client/src/plugins/shared/reportWorkbench/outlineDraft.d.ts +7 -0
  241. package/dist-types/client/src/plugins/shared/simulationEngine.d.ts +112 -0
  242. package/dist-types/client/src/plugins/shared/simulationModes.d.ts +21 -0
  243. package/dist-types/client/src/plugins/shared/themes.d.ts +5 -0
  244. package/dist-types/client/src/plugins/shared/types.d.ts +1247 -0
  245. package/dist-types/client/src/services/AICommandHandler.d.ts +68 -0
  246. package/dist-types/client/src/services/cozeApiClient.d.ts +44 -0
  247. package/dist-types/client/src/services/mockApi.d.ts +48 -0
  248. package/dist-types/client/src/services/storageService.d.ts +88 -0
  249. package/dist-types/client/src/stores/abilityStore.d.ts +33 -0
  250. package/dist-types/client/src/stores/dialogueStore.d.ts +30 -0
  251. package/dist-types/client/src/stores/formRegistryStore.d.ts +45 -0
  252. package/dist-types/client/src/stores/guidanceStore.d.ts +17 -0
  253. package/dist-types/client/src/stores/stepEvidenceStore.d.ts +14 -0
  254. package/dist-types/client/src/stores/strategyLabStore.d.ts +46 -0
  255. package/dist-types/client/src/stores/trainingStore.d.ts +84 -0
  256. package/dist-types/client/src/types/ai-commands.d.ts +144 -0
  257. package/dist-types/client/src/types.d.ts +17 -0
  258. package/dist-types/client/src/utils/abilityMapGenerator.d.ts +27 -0
  259. package/dist-types/client/src/utils/formUtils.d.ts +66 -0
  260. package/dist-types/client/src/utils/rule-engine.d.ts +36 -0
  261. package/dist-types/shared/types/index.d.ts +592 -0
  262. package/package.json +5 -3
  263. package/dist/CaseAnalysisPlugin-CQvF9_zr.js +0 -416
  264. package/dist/DialogueFormPlugin-C9ssnVMr.js +0 -959
  265. package/dist/DialoguePlugin-DU00QpmQ.js +0 -416
  266. package/dist/DocumentReviewPlugin-HNOZY1T4.js +0 -977
  267. package/dist/FormFillingPlugin-DURWsioi.js +0 -445
  268. package/dist/ModelEditor-BPJsPR0S.js +0 -8264
  269. package/dist/PluginHeader-B-GESJmT.js +0 -87
  270. package/dist/QAPlugin-Bh_UjK1N.js +0 -184
  271. package/dist/RadarChart-C5ZM0kWt.js +0 -24963
  272. package/dist/StrategyLabPlugin-DGeZsr_7.js +0 -14361
  273. package/dist/ThunderboltOutlined-nH_FO_4A.js +0 -44
  274. package/dist/ToolOutlined-DtuNJDB2.js +0 -28
  275. package/dist/TrainingModelContainer-DpW-uB8O.js +0 -11883
  276. package/dist/WarningOutlined-5g1d66hO.js +0 -164
  277. package/dist/judgement-D_9i7x9S.js +0 -20
  278. package/dist/useDialogueLogic-IHELcN3X.js +0 -368
@@ -0,0 +1,27 @@
1
+ import type { AbilityMap } from '@shared/types/index.js';
2
+ /**
3
+ * IntentData 接口(从 intentDataSchema 提取)
4
+ */
5
+ interface IntentData {
6
+ targetPosition: string;
7
+ basicSkills?: string[];
8
+ coreSkills?: string[];
9
+ comprehensiveSkills?: string[];
10
+ [key: string]: any;
11
+ }
12
+ /**
13
+ * 从意图数据生成能力图谱
14
+ */
15
+ export declare function generateAbilityMapFromIntent(intentData: IntentData): AbilityMap;
16
+ /**
17
+ * 验证能力图谱的完整性
18
+ */
19
+ export declare function validateAbilityMap(abilityMap: AbilityMap): {
20
+ valid: boolean;
21
+ errors: string[];
22
+ };
23
+ /**
24
+ * 规范化能力图谱(修正权重)
25
+ */
26
+ export declare function normalizeAbilityMap(abilityMap: AbilityMap): AbilityMap;
27
+ export {};
@@ -0,0 +1,66 @@
1
+ import { TrainingModel, FormField, FormTemplate } from '../types';
2
+ /**
3
+ * 在模型中查找指定表单名的字段定义
4
+ * @param model 训练模型
5
+ * @param formName 表单名称
6
+ * @param beforeStepIndex 只查找此索引之前的步骤(可选)
7
+ * @returns 找到的字段和来源步骤信息,未找到返回 null
8
+ */
9
+ export declare function findFormFieldsInModel(model: TrainingModel, formName: string, beforeStepIndex?: number): {
10
+ fields: FormField[];
11
+ sourceStep: {
12
+ stageIndex: number;
13
+ stepIndex: number;
14
+ stepName: string;
15
+ };
16
+ customLayoutCode?: string;
17
+ } | null;
18
+ /**
19
+ * 计算步骤在模型中的全局索引
20
+ * @param model 训练模型
21
+ * @param targetStageIndex 目标阶段索引
22
+ * @param targetStepIndex 目标步骤索引
23
+ * @returns 全局索引
24
+ */
25
+ export declare function getStepGlobalIndex(model: TrainingModel, targetStageIndex: number, targetStepIndex: number): number;
26
+ /**
27
+ * 获取有效的表单字段列表
28
+ * - 如果当前步骤有字段定义,直接使用
29
+ * - 如果是 create 模式且无字段,返回错误
30
+ * - 如果是 edit 模式且无字段,向前查找同名表单的字段定义
31
+ *
32
+ * @param formTemplate 表单模板
33
+ * @param model 训练模型
34
+ * @param currentStageIndex 当前阶段索引
35
+ * @param currentStepIndex 当前步骤索引
36
+ * @returns 字段列表、来源信息和错误状态
37
+ */
38
+ export declare function getEffectiveFormFields(formTemplate: FormTemplate, model: TrainingModel, currentStageIndex: number, currentStepIndex: number): {
39
+ fields: FormField[];
40
+ isFromCurrentStep: boolean;
41
+ sourceStep: null;
42
+ error: null;
43
+ customLayoutCode: undefined;
44
+ } | {
45
+ fields: FormField[];
46
+ isFromCurrentStep: boolean;
47
+ sourceStep: null;
48
+ error: "create-mode-empty";
49
+ customLayoutCode: undefined;
50
+ } | {
51
+ fields: FormField[];
52
+ isFromCurrentStep: boolean;
53
+ sourceStep: {
54
+ stageIndex: number;
55
+ stepIndex: number;
56
+ stepName: string;
57
+ };
58
+ error: null;
59
+ customLayoutCode: string | undefined;
60
+ } | {
61
+ fields: FormField[];
62
+ isFromCurrentStep: boolean;
63
+ sourceStep: null;
64
+ error: "edit-mode-not-found";
65
+ customLayoutCode: undefined;
66
+ };
@@ -0,0 +1,36 @@
1
+ /**
2
+ * 前端规则引擎工具
3
+ * 用于客户端快速校验,减少服务器请求
4
+ */
5
+ import type { RuleCheckResult } from '@shared/types/index.js';
6
+ /**
7
+ * 格式校验规则
8
+ */
9
+ export declare const formatRules: {
10
+ idNumber: (value: string) => RuleCheckResult;
11
+ phoneNumber: (value: string) => RuleCheckResult;
12
+ email: (value: string) => RuleCheckResult;
13
+ amount: (value: number, min?: number, max?: number) => RuleCheckResult;
14
+ required: (value: any, fieldName: string) => RuleCheckResult;
15
+ };
16
+ /**
17
+ * 规则检查器
18
+ */
19
+ export declare class RuleChecker {
20
+ /**
21
+ * 批量检查多个字段
22
+ */
23
+ static checkFields(fields: Array<{
24
+ name: string;
25
+ value: any;
26
+ rules: Array<(value: any) => RuleCheckResult>;
27
+ }>): RuleCheckResult[];
28
+ /**
29
+ * 检查是否所有规则都通过
30
+ */
31
+ static allValid(results: RuleCheckResult[]): boolean;
32
+ /**
33
+ * 获取第一个错误
34
+ */
35
+ static getFirstError(results: RuleCheckResult[]): RuleCheckResult | null;
36
+ }
@@ -0,0 +1,592 @@
1
+ /**
2
+ * 共享类型定义
3
+ * 前后端通用的核心数据结构
4
+ */
5
+ /**
6
+ * 专业领域类型
7
+ */
8
+ export type Domain = 'banking' | 'insurance' | 'trade';
9
+ /**
10
+ * 难度等级
11
+ */
12
+ export type Difficulty = 'easy' | 'medium' | 'hard';
13
+ /**
14
+ * 实训层次
15
+ */
16
+ export type TrainingLevel = 'undergraduate' | 'vocational' | 'technical';
17
+ /**
18
+ * 插件类型
19
+ */
20
+ export declare enum PluginType {
21
+ FORM_FILLING = "form-filling",// 表单填写(单据、合同)
22
+ DIALOGUE = "dialogue",// 对话交互(客户沟通)
23
+ DIALOGUE_FORM = "dialogue-form",// 对话式表单(边聊天边填表)
24
+ PROCESS_OPERATION = "process-operation",// 流程操作(业务办理)
25
+ DOCUMENT_REVIEW = "document-review",// 单据审核
26
+ DECISION_MAKING = "decision-making",// 决策判断(风险评估)
27
+ CASE_ANALYSIS = "case-analysis",// 案例分析
28
+ STRATEGY_LAB = "strategy-lab",// 策略实验室(决策模拟+推演)
29
+ KNOWLEDGE_LEARNING = "knowledge-learning"
30
+ }
31
+ /**
32
+ * 评估维度
33
+ */
34
+ export interface EvaluationDimension {
35
+ name: string;
36
+ weight: number;
37
+ checkPoints?: string[];
38
+ requiredFields?: string[];
39
+ }
40
+ /**
41
+ * 全局规则
42
+ */
43
+ export interface GlobalRules {
44
+ stagePassScore: number;
45
+ stepPassScore: number;
46
+ timeout: number;
47
+ }
48
+ /**
49
+ * AI角色配置(角色池)
50
+ */
51
+ export interface RoleConfig {
52
+ 角色编号: string;
53
+ 角色名称: string;
54
+ 角色类型: string;
55
+ [key: string]: any;
56
+ }
57
+ /**
58
+ * 表单填写逐字段参考值(value 准确性评估基准)。
59
+ * correctValue 可用 {路径} 引用案例数据(运行时按案例/前序表单数据解析);
60
+ * 判断式字段写判定口径(如"应为 R3 及以上")。纯对话采集且无确定答案的字段可不列。
61
+ */
62
+ export interface FieldReference {
63
+ fieldName: string;
64
+ correctValue: string;
65
+ explanation?: string;
66
+ }
67
+ /**
68
+ * 决策判断逐题组参考答案(decision-making 判定基准,评估专用,学员不可见)。
69
+ * - single/multi:用 correctOptions 给正确选项的 value(驱动确定性命中/遗漏/多余判分);
70
+ * - freeform:用 referenceConclusion 给参考结论方向(无确定答案,交评估器判读)。
71
+ */
72
+ export interface DecisionReference {
73
+ groupId: string;
74
+ kind: 'single' | 'multi' | 'freeform';
75
+ correctOptions?: string[];
76
+ referenceConclusion?: string;
77
+ explanation?: string;
78
+ }
79
+ /**
80
+ * 单据审核逐不符点参考答案(document-review 判定基准,评估专用,学员不可见)。
81
+ * 与 client 插件层 ReferenceDiscrepancy 结构一致(后者 import 本类型以保单一数据源)。
82
+ * 每条声明「某字段存在某类错误」,运行时由插件 computeDocumentReviewScore 比对学员标记判分。
83
+ */
84
+ export interface DocumentDiscrepancy {
85
+ fieldName: string;
86
+ typeId: string;
87
+ displayValue?: string;
88
+ correctValue?: string;
89
+ explanation: string;
90
+ weight?: number;
91
+ }
92
+ /**
93
+ * 评估规则
94
+ */
95
+ export interface EvaluationRules {
96
+ dimensions: EvaluationDimension[];
97
+ businessRules: string[];
98
+ referenceAnswer?: string;
99
+ requiredPoints?: string[];
100
+ fieldReferences?: FieldReference[];
101
+ decisionReferences?: DecisionReference[];
102
+ }
103
+ /**
104
+ * 逐案例答案键(per-case 判定基准,评估专用,学员不可见)。
105
+ * Step 出"考卷 + 评分标准"(题面/选项/维度,案例无关),Case 出"答案键"(该案例的正确答案,案例特定)。
106
+ * 运行时按 stepId 取 Case.stepAnswers[stepId],存在则覆盖 Step 同名基线;不存在则用基线。
107
+ * 覆盖目标依插件而定:
108
+ * - decision-making → Step.evaluationRules.decisionReferences
109
+ * - form-filling → Step.evaluationRules.fieldReferences
110
+ * - case-analysis → Step.evaluationRules.referenceAnswer / requiredPoints
111
+ * - document-review → Step.runtimeRules.referenceAnswers(自带判分,基线在 runtimeRules)
112
+ * 答案键字符串字段(correctValue / referenceAnswer / referenceConclusion 等)支持 {路径}/[表达式],
113
+ * 运行时按当前案例数据解析;答案是案例数据清晰函数时,可只在 Step 基线写表达式、免逐案例存。
114
+ */
115
+ export interface StepAnswerKey {
116
+ decisionReferences?: DecisionReference[];
117
+ fieldReferences?: FieldReference[];
118
+ referenceAnswer?: string;
119
+ requiredPoints?: string[];
120
+ documentReferenceAnswers?: DocumentDiscrepancy[];
121
+ }
122
+ /**
123
+ * 步骤
124
+ */
125
+ export type EntryAnimationType = 'time-skip' | 'scene-change' | 'event-intro' | 'result-summary';
126
+ export interface EntryAnimation {
127
+ type: EntryAnimationType;
128
+ narration: string;
129
+ }
130
+ export interface Step {
131
+ stepId: string;
132
+ stepName: string;
133
+ description?: string;
134
+ learningObjectives?: string[];
135
+ pluginId: string;
136
+ pluginType: PluginType;
137
+ initData: any;
138
+ runtimeRules: any;
139
+ evaluationRules?: EvaluationRules;
140
+ stepBriefing?: StepBriefing;
141
+ jumpRules?: any;
142
+ entryAnimation?: EntryAnimation;
143
+ order: number;
144
+ targetAbilities?: StepTargetAbility[];
145
+ }
146
+ /**
147
+ * 步骤资料区——学员理解本步任务所需的全部信息(独立于插件 initData)。
148
+ * initData 管"插件怎么操作/判分",stepBriefing 管"学员看什么背景"。
149
+ * 见 docs/2026年6月4日/公共资料区StepBriefing契约草案.md
150
+ */
151
+ export interface StepBriefing {
152
+ /** 场景背景:叙事文本,交代背景 + 实训任务。可含 {字段路径} 引用案例数据,运行时解析。 */
153
+ scenario?: string;
154
+ /** 案情资料:本步骤需展示的案例字段引用,运行时按 path 从案例数据取值渲染。 */
155
+ caseFacts?: CaseFactRef[];
156
+ /** 参考依据:判断依据库(规则/法规/要点),静态内容,供查阅;给依据不泄答案。 */
157
+ referenceDocs?: ReferenceDoc[];
158
+ /** 资料区呈现配置(整体折叠 + 各分栏默认折叠态)。 */
159
+ display?: BriefingDisplayConfig;
160
+ }
161
+ /** 案情资料的单条字段引用。path 引用案例数据路径,label/type 自带(落地时从 CaseSchema 复制)。 */
162
+ export interface CaseFactRef {
163
+ path: string;
164
+ label: string;
165
+ type?: CaseSchemaField['type'];
166
+ group?: string;
167
+ emphasis?: boolean;
168
+ }
169
+ /** 参考文档(判断依据库)。原 client/src/plugins/shared 的 ReferenceDoc 上提至此复用。 */
170
+ export interface ReferenceDoc {
171
+ id: string;
172
+ category: string;
173
+ title: string;
174
+ summary?: string;
175
+ content: string;
176
+ }
177
+ /** 资料区呈现配置。 */
178
+ export interface BriefingDisplayConfig {
179
+ /** 整个「实训资料」侧栏默认折叠:沉浸式插件(dialogue/strategy-lab)设 true,其余默认展开。 */
180
+ defaultCollapsed?: boolean;
181
+ /** 各分栏默认展开态。缺省:场景背景/案情资料展开,参考依据/AI答疑折叠。 */
182
+ sections?: {
183
+ scenario?: boolean;
184
+ caseFacts?: boolean;
185
+ referenceDocs?: boolean;
186
+ aiQA?: boolean;
187
+ };
188
+ }
189
+ /**
190
+ * 阶段评估配置(运行时消费,创建端语义层产出)
191
+ */
192
+ export interface StageAssessment {
193
+ consistencyChecks: Array<{
194
+ name: string;
195
+ description: string;
196
+ relatedSteps: string[];
197
+ }>;
198
+ deliverableChecks: Array<{
199
+ deliverable: string;
200
+ criteria: string[];
201
+ }>;
202
+ goalCriteria: string[];
203
+ passPolicy: {
204
+ stepWeights: Record<string, number>;
205
+ passScore?: number;
206
+ };
207
+ }
208
+ /**
209
+ * 阶段
210
+ */
211
+ export interface Stage {
212
+ stageId: string;
213
+ stageName: string;
214
+ description: string;
215
+ businessType: string;
216
+ learningObjectives?: string[];
217
+ stageGoal?: string;
218
+ deliverables?: string[];
219
+ entryCriteria?: string[];
220
+ completionCriteria?: string[];
221
+ commonMistakes?: string[];
222
+ stageAssessment?: StageAssessment;
223
+ steps: Step[];
224
+ order: number;
225
+ ValidateMsg?: string;
226
+ }
227
+ /**
228
+ * 案例
229
+ */
230
+ export interface Case {
231
+ caseId: string;
232
+ name: string;
233
+ description: string;
234
+ difficulty: 'easy' | 'medium' | 'hard';
235
+ scenario: string;
236
+ customerInfo: any;
237
+ businessData: any;
238
+ stepAnswers?: Record<string, StepAnswerKey>;
239
+ riskPoints?: string[];
240
+ 角色池: Record<string, RoleConfig>;
241
+ }
242
+ export type FieldUsage = 'display' | 'evaluation';
243
+ /**
244
+ * CaseSchema 字段定义
245
+ */
246
+ export interface CaseSchemaField {
247
+ path: string;
248
+ type: 'string' | 'number' | 'boolean' | 'enum' | 'date' | 'object' | 'array';
249
+ label: string;
250
+ purpose: string;
251
+ usage: FieldUsage[];
252
+ rule?: string;
253
+ enumValues?: string[];
254
+ maxLength?: number;
255
+ children?: CaseSchemaField[];
256
+ }
257
+ /**
258
+ * CaseSchema 字段间约束
259
+ */
260
+ export interface CaseSchemaConstraint {
261
+ type: 'derived' | 'consistent' | 'conditional';
262
+ fields?: string[];
263
+ description?: string;
264
+ rule?: string;
265
+ conditionField?: string;
266
+ conditionValue?: string[];
267
+ sourceField?: string;
268
+ targetField?: string;
269
+ }
270
+ /**
271
+ * CaseSchema - 案例数据结构定义
272
+ * 在创建流程中由 AI 根据大纲推断,用于指导案例生成
273
+ */
274
+ export interface CaseSchema {
275
+ fields: CaseSchemaField[];
276
+ constraints: CaseSchemaConstraint[];
277
+ }
278
+ /**
279
+ * 实训模型
280
+ */
281
+ export interface TrainingModel {
282
+ modelId: string;
283
+ name: string;
284
+ domain: Domain;
285
+ businessType?: string;
286
+ targetPosition?: string;
287
+ description: string;
288
+ learningObjectives?: string;
289
+ trainingLevel?: TrainingLevel;
290
+ trainingType?: string;
291
+ ideologicalElements?: string;
292
+ ideologicalRatio?: number;
293
+ botId?: string;
294
+ uiConfig?: any;
295
+ globalRules: GlobalRules;
296
+ caseSchema?: CaseSchema;
297
+ cases?: Case[];
298
+ defaultCaseId?: string;
299
+ abilityMap?: AbilityMap;
300
+ stages: Stage[];
301
+ ValidateMsg?: string;
302
+ createdAt?: Date;
303
+ updatedAt?: Date;
304
+ }
305
+ /**
306
+ * 学生操作结果
307
+ */
308
+ export interface EvidenceSummary {
309
+ sourceStepId: string;
310
+ sourceStepName?: string;
311
+ sourceType: string;
312
+ title: string;
313
+ summary: string;
314
+ keyFacts: Array<{
315
+ label: string;
316
+ value: string;
317
+ }>;
318
+ riskFlags?: string[];
319
+ conclusion?: string;
320
+ rawRef?: string;
321
+ }
322
+ export interface StudentOperationResult {
323
+ stepId: string;
324
+ operationType: string;
325
+ operationData: any;
326
+ operationLog: any[];
327
+ timestamp: number;
328
+ evidenceSummary?: EvidenceSummary;
329
+ preComputedEvaluation?: EvaluationReport;
330
+ }
331
+ /**
332
+ * 插件Props标准接口
333
+ */
334
+ export interface PluginProps {
335
+ initData: any;
336
+ runtimeRules: any;
337
+ onFinish: (result: StudentOperationResult) => void;
338
+ onRealtimeData?: (data: any) => void;
339
+ }
340
+ /** 扰动触发条件(V2:round / condition / phase 三类可辨识联合) */
341
+ export type DisturbanceTrigger = {
342
+ type: 'round';
343
+ round: number;
344
+ } | {
345
+ type: 'condition';
346
+ condition: string;
347
+ deadline?: number;
348
+ } | {
349
+ type: 'phase';
350
+ phaseId: string;
351
+ timing: 'enter' | 'exit';
352
+ };
353
+ /** 剧本预设的扰动事件:dialogue 落地 bot 产出,运行时注入 AI 客户角色演出 */
354
+ export interface Disturbance {
355
+ id: string;
356
+ trigger: DisturbanceTrigger;
357
+ event: string;
358
+ }
359
+ /** 对话阶段(V2):将对话进程结构化为可感知的阶段,驱动进度可视化与阶段性评估 */
360
+ export interface DialoguePhase {
361
+ id: string;
362
+ name: string;
363
+ goals: string[];
364
+ requiredTopics?: string[];
365
+ transitionHint?: string;
366
+ estimatedRounds?: number;
367
+ }
368
+ /** 分支结果动作(V2):分支判定命中后的行为指令 */
369
+ export interface BranchOutcome {
370
+ directive: string;
371
+ emotion?: string;
372
+ unlockPhase?: string;
373
+ triggerDisturbance?: string;
374
+ }
375
+ /** 双向分支规则(V2):根据学员表现走向不同结局 */
376
+ export interface BranchRule {
377
+ id: string;
378
+ condition: string;
379
+ outcomes: {
380
+ positive: BranchOutcome;
381
+ negative: BranchOutcome;
382
+ };
383
+ evaluateAfterRound?: number;
384
+ }
385
+ /** 沟通阻力配置(V2):持续性客户沟通障碍,与离散扰动事件互补 */
386
+ export interface CommunicationResistanceConfig {
387
+ patterns: string[];
388
+ intensity: 'low' | 'medium' | 'high';
389
+ fadeCondition?: string;
390
+ }
391
+ /**
392
+ * 插件元数据
393
+ */
394
+ export interface PluginMetadata {
395
+ pluginId: string;
396
+ name: string;
397
+ type: PluginType;
398
+ description: string;
399
+ code: string;
400
+ version: string;
401
+ createdAt?: Date;
402
+ updatedAt?: Date;
403
+ }
404
+ /**
405
+ * AI请求动作类型
406
+ */
407
+ export type AIAction = 'initSession' | 'enterStep' | 'dialogue' | 'realtimeCheck' | 'evaluateStep' | 'askQuestion';
408
+ /**
409
+ * AI请求
410
+ */
411
+ export interface AIRequest {
412
+ action: AIAction;
413
+ sessionId?: string;
414
+ data: any;
415
+ }
416
+ /**
417
+ * AI响应
418
+ */
419
+ export interface AIResponse<T = any> {
420
+ success: boolean;
421
+ data: T;
422
+ error?: string;
423
+ sessionId?: string;
424
+ }
425
+ /**
426
+ * 评估维度结果
427
+ */
428
+ export interface DimensionResult {
429
+ name: string;
430
+ score: number;
431
+ feedback: string;
432
+ errors?: string[];
433
+ suggestions?: string[];
434
+ }
435
+ /**
436
+ * 评估报告
437
+ */
438
+ export interface EvaluationReport {
439
+ stepId?: string;
440
+ totalScore: number;
441
+ dimensions: DimensionResult[];
442
+ highlights: string[];
443
+ improvements: string[];
444
+ nextStepAdvice: string;
445
+ pass: boolean;
446
+ }
447
+ /**
448
+ * 阶段评估报告(运行时产出)
449
+ */
450
+ export interface StageAssessmentReport {
451
+ stageId: string;
452
+ totalScore: number;
453
+ pass: boolean;
454
+ stepBreakdown: Array<{
455
+ stepId: string;
456
+ stepName: string;
457
+ score: number;
458
+ weight: number;
459
+ }>;
460
+ consistencyIssues: Array<{
461
+ description: string;
462
+ relatedSteps: string[];
463
+ severity: 'info' | 'warning' | 'error';
464
+ }>;
465
+ deliverableResults: Array<{
466
+ deliverable: string;
467
+ achieved: boolean;
468
+ comment: string;
469
+ }>;
470
+ goalAchievement: {
471
+ score: number;
472
+ comment: string;
473
+ };
474
+ highlights: string[];
475
+ improvements: string[];
476
+ }
477
+ /**
478
+ * 实训案例
479
+ */
480
+ export interface TrainingCase {
481
+ caseId: string;
482
+ caseType: string;
483
+ difficulty: Difficulty;
484
+ scenario: string;
485
+ customerInfo: any;
486
+ businessData: any;
487
+ riskPoints?: string[];
488
+ createdAt?: Date;
489
+ }
490
+ /**
491
+ * 学生会话
492
+ */
493
+ export interface StudentSession {
494
+ sessionId: string;
495
+ studentId: string;
496
+ modelId: string;
497
+ currentStageId: string;
498
+ currentStepId: string;
499
+ startTime: Date;
500
+ endTime?: Date;
501
+ status: 'active' | 'completed' | 'timeout';
502
+ context: any;
503
+ }
504
+ /**
505
+ * 学生能力画像
506
+ */
507
+ export interface StudentProfile {
508
+ studentId: string;
509
+ domain: Domain;
510
+ abilities: {
511
+ [key: string]: number;
512
+ };
513
+ weakPoints: string[];
514
+ strengths: string[];
515
+ totalTrainingCount: number;
516
+ lastUpdated: Date;
517
+ }
518
+ /**
519
+ * 规则类型
520
+ */
521
+ export type RuleType = 'format' | 'business' | 'process';
522
+ /**
523
+ * 规则定义
524
+ */
525
+ export interface Rule {
526
+ ruleId: string;
527
+ name: string;
528
+ type: RuleType;
529
+ condition: any;
530
+ action: any;
531
+ priority: number;
532
+ enabled: boolean;
533
+ }
534
+ /**
535
+ * 规则检查结果
536
+ */
537
+ export interface RuleCheckResult {
538
+ valid: boolean;
539
+ ruleId?: string;
540
+ message?: string;
541
+ severity?: 'info' | 'warning' | 'error';
542
+ suggestion?: string;
543
+ }
544
+ /**
545
+ * 能力分类
546
+ */
547
+ export type AbilityCategory = 'basic' | 'core' | 'comprehensive';
548
+ /**
549
+ * 能力节点(三层结构:基础/核心/综合)
550
+ */
551
+ export interface AbilityNode {
552
+ id: string;
553
+ name: string;
554
+ category: AbilityCategory;
555
+ description?: string;
556
+ weight: number;
557
+ children?: AbilityNode[];
558
+ relatedSteps?: string[];
559
+ }
560
+ /**
561
+ * 岗位能力图谱
562
+ */
563
+ export interface AbilityMap {
564
+ targetPosition: string;
565
+ version: string;
566
+ abilities: AbilityNode[];
567
+ totalWeight: number;
568
+ createdAt?: Date;
569
+ updatedAt?: Date;
570
+ }
571
+ /**
572
+ * 步骤目标能力
573
+ */
574
+ export interface StepTargetAbility {
575
+ abilityId: string;
576
+ targetLevel: number;
577
+ weight: number;
578
+ }
579
+ /**
580
+ * 能力成长记录
581
+ */
582
+ export interface AbilityGrowthRecord {
583
+ timestamp: number;
584
+ stepId: string;
585
+ stepName: string;
586
+ abilityId: string;
587
+ abilityName: string;
588
+ oldValue: number;
589
+ newValue: number;
590
+ delta: number;
591
+ reason: string;
592
+ }