@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.
- package/README.md +481 -15
- package/dist/{ArrowLeftOutlined-CiSQq3bL.js → ArrowLeftOutlined-BxA84GXs.js} +1 -1
- package/dist/ArrowLeftOutlined-D785XjyB.js +12 -0
- package/dist/{AssessmentPlugin-Bx4VrBdV.js → AssessmentPlugin-D_iesmyg.js} +7 -7
- package/dist/AssessmentPlugin-zRr-IsdA.js +607 -0
- package/dist/CaseAnalysisPlugin-CXuQpkPd.js +2196 -0
- package/dist/CaseAnalysisPlugin-DytlXsRD.js +2196 -0
- package/dist/CaseDetailContent-DT5nCtRT.js +28613 -0
- package/dist/CaseDetailContent-Y7Q430MG.js +28595 -0
- package/dist/{CharacterDialoguePanel-Bvdab3qj.js → CharacterDialoguePanel-CdtUl-Sv.js} +178 -139
- package/dist/CharacterDialoguePanel-D_4YNFZv.js +815 -0
- package/dist/{CheckCircleFilled-Byo8CDfW.js → CheckCircleFilled-CnslIY7j.js} +1 -1
- package/dist/CheckCircleFilled-NvZaC2sk.js +12 -0
- package/dist/DecisionMakingPlugin-B_KQUFzW.js +1385 -0
- package/dist/DecisionMakingPlugin-ILLGek3S.js +1385 -0
- package/dist/{DecisionSelectPlugin-DtQ2KV34.js → DecisionSelectPlugin-BGQiHGBK.js} +20 -11
- package/dist/DecisionSelectPlugin-Bqmh6XGh.js +872 -0
- package/dist/{DecisionShared-Dh9oeQFT.js → DecisionShared-BHq1lEqt.js} +2 -2
- package/dist/DecisionShared-Be-zKZLT.js +65 -0
- package/dist/DeleteOutlined-BvMjU7m5.js +12 -0
- package/dist/DeleteOutlined-Dqy6M2LH.js +12 -0
- package/dist/{CustomLayoutRenderer--rnQrqQ2.js → DialogueFormPlugin-BpCeFadt.js} +22724 -21631
- package/dist/DialogueFormPlugin-CXlbxX-z.js +123617 -0
- package/dist/DialoguePlugin-CO7Nzv0K.js +596 -0
- package/dist/DialoguePlugin-DDNdsylz.js +596 -0
- package/dist/DocumentReviewPlugin-2CnKQwVG.js +1967 -0
- package/dist/DocumentReviewPlugin-qYYrnjvE.js +1967 -0
- package/dist/{EyeOutlined-XvOAKlLs.js → EyeOutlined-BrKCNjui.js} +1 -1
- package/dist/EyeOutlined-CW0tYV0f.js +12 -0
- package/dist/FormFillingPlugin-C3h8ySOZ.js +969 -0
- package/dist/FormFillingPlugin-CPmd76Qr.js +969 -0
- package/dist/HolderOutlined-CH0tShWu.js +12 -0
- package/dist/HolderOutlined-Dm6TBtqf.js +12 -0
- package/dist/ModelEditor-BjEbFloQ.js +11753 -0
- package/dist/ModelEditor-CwR67DFQ.js +11753 -0
- package/dist/{ProcessOperationPlugin-IijngDlX.js → ProcessOperationPlugin-1Lz431aC.js} +12 -12
- package/dist/ProcessOperationPlugin-BkmdG3ch.js +88 -0
- package/dist/QAPlugin-0C4kpq3J.js +172 -0
- package/dist/QAPlugin-UC8uywcg.js +172 -0
- package/dist/{ReloadOutlined-Daor2m11.js → ReloadOutlined-BZ92nlYF.js} +1 -1
- package/dist/ReloadOutlined-CYoPOwLl.js +12 -0
- package/dist/{SettingOutlined-CLEOgXB-.js → SettingOutlined-F466s0Ti.js} +33 -65
- package/dist/SettingOutlined-c2hikCfN.js +60 -0
- package/dist/StarFilled-Bilmj6UK.js +28 -0
- package/dist/StarFilled-CtH30fL0.js +28 -0
- package/dist/StrategyLabPlugin-CvO07sXV.js +12445 -0
- package/dist/StrategyLabPlugin-DUqZYctQ.js +12445 -0
- package/dist/ThunderboltOutlined-BpmoCKdV.js +28 -0
- package/dist/ThunderboltOutlined-DDQFi5Cv.js +28 -0
- package/dist/TrainingModelContainer-DqCsdC7C.js +11241 -0
- package/dist/TrainingModelContainer-yi8W6KFl.js +11241 -0
- package/dist/{UndoOutlined-ChUQYUul.js → UndoOutlined-6JZVzmdX.js} +26 -42
- package/dist/UndoOutlined-Dw6_9_OL.js +68 -0
- package/dist/{WarningFilled-1Rc4hr0C.js → WarningFilled-Cy1tvuQy.js} +1 -1
- package/dist/WarningFilled-lkr453eh.js +12 -0
- package/dist/{adapters-D1FFZFoA.js → adapters-BbCnXSYo.js} +2 -2
- package/dist/{analysisTools-CXyOvSZT.js → analysisTools-Cp5-3DaU.js} +59 -12
- package/dist/creator.js +4 -2
- package/dist/designTokens-walF_QkZ.js +23 -0
- package/dist/images/healthcare/bg.jpg +0 -0
- package/dist/{index-CYjdXPgc.js → index-C71iHgSs.js} +2640 -2722
- package/dist/{index-XuBVjlmu.js → index-CBvqcbIU.js} +7214 -7643
- package/dist/index-D94YNWTb.js +433 -0
- package/dist/index-DSYmOXnQ.js +6486 -0
- package/dist/index-fP97rKeQ.js +433 -0
- package/dist/index.js +8 -6
- package/dist/judgement-xTGXlDcn.js +29 -0
- package/dist/runtime.js +1 -1
- package/dist/sortable.esm-bm_c5vmI.js +3307 -0
- package/dist/types.js +1 -1
- package/dist/useDialogueLogic-D1lkUKUZ.js +576 -0
- package/dist/useDialogueLogic-vOJ9XRNP.js +576 -0
- package/dist-types/client/src/admin/CaseDataEditor.d.ts +20 -0
- package/dist-types/client/src/admin/CaseEditor.d.ts +19 -0
- package/dist-types/client/src/admin/DialogueFormCheckRulesEditor.d.ts +11 -0
- package/dist-types/client/src/admin/DialogueFormInitDataEditor.d.ts +31 -0
- package/dist-types/client/src/admin/InitDataEditors.d.ts +7 -0
- package/dist-types/client/src/admin/ModelEditor.d.ts +11 -0
- package/dist-types/client/src/admin/ModelPreview.d.ts +13 -0
- package/dist-types/client/src/admin/OptionSelector.d.ts +32 -0
- package/dist-types/client/src/admin/StageStepEditor.d.ts +20 -0
- package/dist-types/client/src/admin/StepAnswerKeyEditor.d.ts +19 -0
- package/dist-types/client/src/admin/StepByStepCreator.d.ts +27 -0
- package/dist-types/client/src/admin/components/AbilityMapEditor.d.ts +12 -0
- package/dist-types/client/src/admin/components/CasePreview.d.ts +8 -0
- package/dist-types/client/src/admin/components/StepAbilitySelector.d.ts +9 -0
- package/dist-types/client/src/admin/constants/creatorConstants.d.ts +39 -0
- package/dist-types/client/src/admin/editors/CaseAnalysisEditor.d.ts +11 -0
- package/dist-types/client/src/admin/editors/DecisionMakingEditor.d.ts +7 -0
- package/dist-types/client/src/admin/editors/DialogueEditor.d.ts +12 -0
- package/dist-types/client/src/admin/editors/DocumentReviewEditor.d.ts +7 -0
- package/dist-types/client/src/admin/editors/DocumentReviewRuntimeRulesEditor.d.ts +15 -0
- package/dist-types/client/src/admin/editors/FormFillingEditor.d.ts +33 -0
- package/dist-types/client/src/admin/editors/ModelUIConfigEditor.d.ts +5 -0
- package/dist-types/client/src/admin/editors/QAEditor.d.ts +6 -0
- package/dist-types/client/src/admin/editors/RouterEditors.d.ts +18 -0
- package/dist-types/client/src/admin/editors/StepBriefingEditor.d.ts +14 -0
- package/dist-types/client/src/admin/editors/StrategyLabEditor.d.ts +24 -0
- package/dist-types/client/src/admin/editors/decisionEditorParts.d.ts +18 -0
- package/dist-types/client/src/admin/editors/index.d.ts +8 -0
- package/dist-types/client/src/admin/editors/shared.d.ts +17 -0
- package/dist-types/client/src/admin/hooks/useStep1Intent.d.ts +16 -0
- package/dist-types/client/src/admin/hooks/useStep2Outline.d.ts +41 -0
- package/dist-types/client/src/admin/hooks/useStep3Details.d.ts +123 -0
- package/dist-types/client/src/admin/hooks/useStep4Cases.d.ts +48 -0
- package/dist-types/client/src/admin/hooks/useStep5Validation.d.ts +16 -0
- package/dist-types/client/src/admin/landingValidation.d.ts +74 -0
- package/dist-types/client/src/admin/schemaFieldUtils.d.ts +55 -0
- package/dist-types/client/src/admin/services.d.ts +461 -0
- package/dist-types/client/src/admin/shared-editors.d.ts +31 -0
- package/dist-types/client/src/admin/types/creatorArtifacts.d.ts +140 -0
- package/dist-types/client/src/components/AbilityMapView.d.ts +15 -0
- package/dist-types/client/src/components/CaseDetail/CaseDetailContent.d.ts +12 -0
- package/dist-types/client/src/components/ConversationalDataCollector/IntentConfirmPanel.d.ts +20 -0
- package/dist-types/client/src/components/ConversationalDataCollector/index.d.ts +7 -0
- package/dist-types/client/src/components/ConversationalDataCollector/intentState.d.ts +24 -0
- package/dist-types/client/src/components/ConversationalDataCollector/types.d.ts +95 -0
- package/dist-types/client/src/components/ConversationalDataCollector/utils.d.ts +62 -0
- package/dist-types/client/src/components/CustomLayoutRenderer.d.ts +8 -0
- package/dist-types/client/src/components/MarkdownRenderer.d.ts +15 -0
- package/dist-types/client/src/components/StrategyLabScene/VisualInputComponents.d.ts +85 -0
- package/dist-types/client/src/components/StrategyLabScene/components/AdversarialView.d.ts +18 -0
- package/dist-types/client/src/components/StrategyLabScene/components/BottomBar.d.ts +22 -0
- package/dist-types/client/src/components/StrategyLabScene/components/CharacterCard.d.ts +14 -0
- package/dist-types/client/src/components/StrategyLabScene/components/CharacterDialoguePanel.d.ts +32 -0
- package/dist-types/client/src/components/StrategyLabScene/components/CollaborativeView.d.ts +20 -0
- package/dist-types/client/src/components/StrategyLabScene/components/ComparisonView.d.ts +16 -0
- package/dist-types/client/src/components/StrategyLabScene/components/DecisionInput.d.ts +27 -0
- package/dist-types/client/src/components/StrategyLabScene/components/DecisionSwitcher.d.ts +14 -0
- package/dist-types/client/src/components/StrategyLabScene/components/EvaluationReport.d.ts +13 -0
- package/dist-types/client/src/components/StrategyLabScene/components/NodeChainPanels.d.ts +32 -0
- package/dist-types/client/src/components/StrategyLabScene/components/ProgressSteps.d.ts +15 -0
- package/dist-types/client/src/components/StrategyLabScene/components/SandboxView.d.ts +19 -0
- package/dist-types/client/src/components/StrategyLabScene/components/ScenarioPanel.d.ts +17 -0
- package/dist-types/client/src/components/StrategyLabScene/components/SimulationAnimation.d.ts +13 -0
- package/dist-types/client/src/components/StrategyLabScene/components/SimulationResult.d.ts +15 -0
- package/dist-types/client/src/components/StrategyLabScene/components/StressTestView.d.ts +22 -0
- package/dist-types/client/src/components/StrategyLabScene/themeMatching.d.ts +21 -0
- package/dist-types/client/src/components/StrategyLabScene/themes/education.d.ts +45 -0
- package/dist-types/client/src/components/StrategyLabScene/themes/healthcare.d.ts +7 -0
- package/dist-types/client/src/components/StrategyLabScene/themes/index.d.ts +22 -0
- package/dist-types/client/src/components/StrategyLabScene/themes/professional.d.ts +7 -0
- package/dist-types/client/src/components/StrategyLabScene/themes/technology.d.ts +7 -0
- package/dist-types/client/src/components/StrategyLabScene/types.d.ts +82 -0
- package/dist-types/client/src/components/StrategyLabScene/views/UnifiedStrategyLabView.d.ts +72 -0
- package/dist-types/client/src/components/TrainingEngine/BriefingQAChat.d.ts +19 -0
- package/dist-types/client/src/components/TrainingEngine/CaseInfoModal.d.ts +12 -0
- package/dist-types/client/src/components/TrainingEngine/CaseSelector.d.ts +15 -0
- package/dist-types/client/src/components/TrainingEngine/ClassicView.d.ts +7 -0
- package/dist-types/client/src/components/TrainingEngine/DashboardHomePage.d.ts +7 -0
- package/dist-types/client/src/components/TrainingEngine/EnhancedStudentProfilePanel.d.ts +9 -0
- package/dist-types/client/src/components/TrainingEngine/EvaluationPanel.d.ts +8 -0
- package/dist-types/client/src/components/TrainingEngine/GlobalQAPanel.d.ts +34 -0
- package/dist-types/client/src/components/TrainingEngine/GuidanceHistoryDrawer.d.ts +7 -0
- package/dist-types/client/src/components/TrainingEngine/GuidancePanel.d.ts +3 -0
- package/dist-types/client/src/components/TrainingEngine/ImmersiveGameView.d.ts +7 -0
- package/dist-types/client/src/components/TrainingEngine/PluginRenderer.d.ts +15 -0
- package/dist-types/client/src/components/TrainingEngine/ProgressTracker.d.ts +3 -0
- package/dist-types/client/src/components/TrainingEngine/StageAssessingOverlay.d.ts +17 -0
- package/dist-types/client/src/components/TrainingEngine/StageAssessmentPanel.d.ts +10 -0
- package/dist-types/client/src/components/TrainingEngine/StepExecutor.d.ts +20 -0
- package/dist-types/client/src/components/TrainingEngine/StepNodeMap.d.ts +15 -0
- package/dist-types/client/src/components/TrainingEngine/StudentProfilePanel.d.ts +6 -0
- package/dist-types/client/src/components/TrainingEngine/ThemeContext.d.ts +8 -0
- package/dist-types/client/src/components/TrainingEngine/TrainingMaterialsSidebar.d.ts +21 -0
- package/dist-types/client/src/components/TrainingEngine/TrainingModelContainer.d.ts +42 -0
- package/dist-types/client/src/components/TrainingEngine/ViewProps.d.ts +37 -0
- package/dist-types/client/src/components/TrainingEngine/profileDataSelectors.d.ts +23 -0
- package/dist-types/client/src/components/TrainingEngine/stepInitData.d.ts +42 -0
- package/dist-types/client/src/components/TrainingEngine/targetAbilityUtils.d.ts +11 -0
- package/dist-types/client/src/components/VisualizationRenderer/ChartRenderer.d.ts +12 -0
- package/dist-types/client/src/components/VisualizationRenderer/types.d.ts +41 -0
- package/dist-types/client/src/config/appConfig.d.ts +15 -0
- package/dist-types/client/src/configs/agentConfig.d.ts +66 -0
- package/dist-types/client/src/configs/intentDiscoveryConfig.d.ts +22 -0
- package/dist-types/client/src/data/mockTrainingModel.d.ts +10 -0
- package/dist-types/client/src/hooks/useAIService.d.ts +17 -0
- package/dist-types/client/src/hooks/useDialogueLogic.d.ts +53 -0
- package/dist-types/client/src/hooks/useFormFillingLogic.d.ts +26 -0
- package/dist-types/client/src/hooks/useFormRealtimeGuidance.d.ts +45 -0
- package/dist-types/client/src/hooks/useRealtimeGuidance.d.ts +66 -0
- package/dist-types/client/src/hooks/useStageAssessment.d.ts +8 -0
- package/dist-types/client/src/hooks/useStepExecution.d.ts +14 -0
- package/dist-types/client/src/hooks/useTrainingModel.d.ts +30 -0
- package/dist-types/client/src/lib/creator.d.ts +1 -0
- package/dist-types/client/src/lib/index.d.ts +1 -0
- package/dist-types/client/src/lib/types.d.ts +113 -22
- package/dist-types/client/src/plugins/AssessmentPlugin.d.ts +8 -0
- package/dist-types/client/src/plugins/CaseAnalysisPlugin.d.ts +9 -0
- package/dist-types/client/src/plugins/CaseAnalysisPluginView.d.ts +26 -0
- package/dist-types/client/src/plugins/DecisionSelectPlugin.d.ts +8 -0
- package/dist-types/client/src/plugins/DialogueFormPlugin.d.ts +9 -0
- package/dist-types/client/src/plugins/DialogueFormPluginView.d.ts +37 -0
- package/dist-types/client/src/plugins/DialoguePlugin.d.ts +8 -0
- package/dist-types/client/src/plugins/DialoguePluginView.d.ts +44 -0
- package/dist-types/client/src/plugins/DocumentReview/DocumentCard.d.ts +47 -0
- package/dist-types/client/src/plugins/DocumentReview/LayoutComponents.d.ts +47 -0
- package/dist-types/client/src/plugins/DocumentReview/MarkListPanel.d.ts +51 -0
- package/dist-types/client/src/plugins/DocumentReview/MarkModal.d.ts +37 -0
- package/dist-types/client/src/plugins/DocumentReview/ResultPanel.d.ts +32 -0
- package/dist-types/client/src/plugins/DocumentReview/Toolbar.d.ts +31 -0
- package/dist-types/client/src/plugins/DocumentReview/designTokens.d.ts +76 -0
- package/dist-types/client/src/plugins/DocumentReviewPlugin.d.ts +14 -0
- package/dist-types/client/src/plugins/ProcessOperationPlugin.d.ts +8 -0
- package/dist-types/client/src/plugins/QAPlugin.d.ts +9 -0
- package/dist-types/client/src/plugins/StrategyLabPlugin.d.ts +7 -0
- package/dist-types/client/src/plugins/decision-making/DecisionMakingPlugin.d.ts +4 -0
- package/dist-types/client/src/plugins/decision-making/DecisionWorkspace.d.ts +23 -0
- package/dist-types/client/src/plugins/decision-making/MaterialsPanel.d.ts +18 -0
- package/dist-types/client/src/plugins/decision-making/logic.d.ts +46 -0
- package/dist-types/client/src/plugins/decision-making/scoring.d.ts +79 -0
- package/dist-types/client/src/plugins/decision-making/styles.d.ts +743 -0
- package/dist-types/client/src/plugins/decision-making/types.d.ts +179 -0
- package/dist-types/client/src/plugins/form-filling/DocumentFormLayout.d.ts +22 -0
- package/dist-types/client/src/plugins/form-filling/FormAssistPanel.d.ts +20 -0
- package/dist-types/client/src/plugins/form-filling/FormFillingPlugin.d.ts +15 -0
- package/dist-types/client/src/plugins/form-filling/forms.d.ts +28 -0
- package/dist-types/client/src/plugins/form-filling/scoring.d.ts +86 -0
- package/dist-types/client/src/plugins/form-filling/useFormFilling.d.ts +42 -0
- package/dist-types/client/src/plugins/form-filling/validationRules.d.ts +26 -0
- package/dist-types/client/src/plugins/shared/DecisionShared.d.ts +54 -0
- package/dist-types/client/src/plugins/shared/FrameworkWidget.d.ts +19 -0
- package/dist-types/client/src/plugins/shared/PluginFooter.d.ts +4 -0
- package/dist-types/client/src/plugins/shared/PluginHeader.d.ts +4 -0
- package/dist-types/client/src/plugins/shared/analysisTools.d.ts +30 -0
- package/dist-types/client/src/plugins/shared/disturbanceUtils.d.ts +5 -0
- package/dist-types/client/src/plugins/shared/index.d.ts +5 -0
- package/dist-types/client/src/plugins/shared/jsonRepair.d.ts +39 -0
- package/dist-types/client/src/plugins/shared/judgement.d.ts +46 -0
- package/dist-types/client/src/plugins/shared/nodeChain.d.ts +15 -0
- package/dist-types/client/src/plugins/shared/renderFieldGrid.d.ts +16 -0
- package/dist-types/client/src/plugins/shared/reportBlocks.d.ts +33 -0
- package/dist-types/client/src/plugins/shared/reportEvaluation.d.ts +30 -0
- package/dist-types/client/src/plugins/shared/reportExport.d.ts +12 -0
- package/dist-types/client/src/plugins/shared/reportWorkbench/BlockPropertiesPanel.d.ts +9 -0
- package/dist-types/client/src/plugins/shared/reportWorkbench/BlockToolbox.d.ts +11 -0
- package/dist-types/client/src/plugins/shared/reportWorkbench/ReportWorkbench.d.ts +20 -0
- package/dist-types/client/src/plugins/shared/reportWorkbench/SortableBlock.d.ts +15 -0
- package/dist-types/client/src/plugins/shared/reportWorkbench/factory.d.ts +14 -0
- package/dist-types/client/src/plugins/shared/reportWorkbench/outlineDraft.d.ts +7 -0
- package/dist-types/client/src/plugins/shared/simulationEngine.d.ts +112 -0
- package/dist-types/client/src/plugins/shared/simulationModes.d.ts +21 -0
- package/dist-types/client/src/plugins/shared/themes.d.ts +5 -0
- package/dist-types/client/src/plugins/shared/types.d.ts +1247 -0
- package/dist-types/client/src/services/AICommandHandler.d.ts +68 -0
- package/dist-types/client/src/services/cozeApiClient.d.ts +44 -0
- package/dist-types/client/src/services/mockApi.d.ts +48 -0
- package/dist-types/client/src/services/storageService.d.ts +88 -0
- package/dist-types/client/src/stores/abilityStore.d.ts +33 -0
- package/dist-types/client/src/stores/dialogueStore.d.ts +30 -0
- package/dist-types/client/src/stores/formRegistryStore.d.ts +45 -0
- package/dist-types/client/src/stores/guidanceStore.d.ts +17 -0
- package/dist-types/client/src/stores/stepEvidenceStore.d.ts +14 -0
- package/dist-types/client/src/stores/strategyLabStore.d.ts +46 -0
- package/dist-types/client/src/stores/trainingStore.d.ts +84 -0
- package/dist-types/client/src/types/ai-commands.d.ts +144 -0
- package/dist-types/client/src/types.d.ts +17 -0
- package/dist-types/client/src/utils/abilityMapGenerator.d.ts +27 -0
- package/dist-types/client/src/utils/formUtils.d.ts +66 -0
- package/dist-types/client/src/utils/rule-engine.d.ts +36 -0
- package/dist-types/shared/types/index.d.ts +592 -0
- package/package.json +5 -3
- package/dist/CaseAnalysisPlugin-CQvF9_zr.js +0 -416
- package/dist/DialogueFormPlugin-C9ssnVMr.js +0 -959
- package/dist/DialoguePlugin-DU00QpmQ.js +0 -416
- package/dist/DocumentReviewPlugin-HNOZY1T4.js +0 -977
- package/dist/FormFillingPlugin-DURWsioi.js +0 -445
- package/dist/ModelEditor-BPJsPR0S.js +0 -8264
- package/dist/PluginHeader-B-GESJmT.js +0 -87
- package/dist/QAPlugin-Bh_UjK1N.js +0 -184
- package/dist/RadarChart-C5ZM0kWt.js +0 -24963
- package/dist/StrategyLabPlugin-DGeZsr_7.js +0 -14361
- package/dist/ThunderboltOutlined-nH_FO_4A.js +0 -44
- package/dist/ToolOutlined-DtuNJDB2.js +0 -28
- package/dist/TrainingModelContainer-DpW-uB8O.js +0 -11883
- package/dist/WarningOutlined-5g1d66hO.js +0 -164
- package/dist/judgement-D_9i7x9S.js +0 -20
- package/dist/useDialogueLogic-IHELcN3X.js +0 -368
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ThemeTokens } from '../../plugins/shared/types';
|
|
2
|
+
export declare const ThemeContext: import("react").Context<ThemeTokens>;
|
|
3
|
+
export declare const ThemeProvider: import("react").Provider<ThemeTokens>;
|
|
4
|
+
export declare function useShellTheme(): ThemeTokens;
|
|
5
|
+
/**
|
|
6
|
+
* 生成半透明背景色
|
|
7
|
+
*/
|
|
8
|
+
export declare function tint(hex: string, opacity: number): string;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { StepBriefing } from '@shared/types/index.js';
|
|
3
|
+
/**
|
|
4
|
+
* 实训资料栏(步骤运行弹窗左侧固定可折叠区)。
|
|
5
|
+
* 四分栏:场景背景 / 案情资料 / 参考依据 / AI答疑。由引擎统一渲染,与插件 initData 解耦。
|
|
6
|
+
* 见 docs/2026年6月4日/公共资料区StepBriefing契约草案.md(§4 运行时渲染)。
|
|
7
|
+
*/
|
|
8
|
+
interface TrainingMaterialsSidebarProps {
|
|
9
|
+
stepBriefing?: StepBriefing;
|
|
10
|
+
caseData?: any;
|
|
11
|
+
primaryColor?: string;
|
|
12
|
+
pluginType?: string;
|
|
13
|
+
stepName?: string;
|
|
14
|
+
botId?: string;
|
|
15
|
+
currentUser?: {
|
|
16
|
+
userId: string;
|
|
17
|
+
name: string;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
declare const TrainingMaterialsSidebar: React.FC<TrainingMaterialsSidebarProps>;
|
|
21
|
+
export default TrainingMaterialsSidebar;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { TrainingModel, EvaluationReport, StudentOperationResult, Case } from "@shared/types/index.js";
|
|
3
|
+
/**
|
|
4
|
+
* 训练结果
|
|
5
|
+
*/
|
|
6
|
+
export interface TrainingResult {
|
|
7
|
+
sessionId: string;
|
|
8
|
+
studentId: string;
|
|
9
|
+
modelId: string;
|
|
10
|
+
completedStages: number;
|
|
11
|
+
totalScore: number;
|
|
12
|
+
evaluationHistory: EvaluationReport[];
|
|
13
|
+
operationLog: any[];
|
|
14
|
+
startTime: Date;
|
|
15
|
+
endTime: Date;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* TrainingEngine组件Props
|
|
19
|
+
*/
|
|
20
|
+
export interface TrainingEngineProps {
|
|
21
|
+
trainingModel?: TrainingModel;
|
|
22
|
+
modelId?: string;
|
|
23
|
+
selectedCase?: Case;
|
|
24
|
+
studentId: string;
|
|
25
|
+
currentUser: {
|
|
26
|
+
userId: string;
|
|
27
|
+
name: string;
|
|
28
|
+
};
|
|
29
|
+
onComplete?: (result: TrainingResult) => void;
|
|
30
|
+
onStepComplete?: (stepResult: StudentOperationResult) => void;
|
|
31
|
+
onError?: (error: Error) => void;
|
|
32
|
+
}
|
|
33
|
+
interface TrainingModelContainerProps extends TrainingEngineProps {
|
|
34
|
+
botId?: string;
|
|
35
|
+
onSwitchCase?: (caseItem: Case) => void;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* 实训模型容器组件(纯逻辑层)
|
|
39
|
+
* 根据 appConfig.viewMode 委托给 ClassicView 或 ImmersiveGameView
|
|
40
|
+
*/
|
|
41
|
+
declare const TrainingModelContainer: React.FC<TrainingModelContainerProps>;
|
|
42
|
+
export default TrainingModelContainer;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { TrainingModel, Stage, Step, EvaluationReport, Case } from '@shared/types/index.js';
|
|
2
|
+
import type { ThemeTokens } from '../../plugins/shared/types';
|
|
3
|
+
/**
|
|
4
|
+
* 经典视图 / 沉浸视图 共享的 Props 接口
|
|
5
|
+
*/
|
|
6
|
+
export interface ViewProps {
|
|
7
|
+
model: TrainingModel;
|
|
8
|
+
currentStage: Stage;
|
|
9
|
+
currentStep: Step;
|
|
10
|
+
currentStageIndex: number;
|
|
11
|
+
currentStepIndex: number;
|
|
12
|
+
progress: {
|
|
13
|
+
completed: number;
|
|
14
|
+
total: number;
|
|
15
|
+
percentage: number;
|
|
16
|
+
};
|
|
17
|
+
currentEvaluation: EvaluationReport | null;
|
|
18
|
+
countdown: number;
|
|
19
|
+
currentUser: {
|
|
20
|
+
userId: string;
|
|
21
|
+
name: string;
|
|
22
|
+
};
|
|
23
|
+
studentId: string;
|
|
24
|
+
effectiveBotId?: string;
|
|
25
|
+
scenarioContext: string;
|
|
26
|
+
theme: ThemeTokens;
|
|
27
|
+
selectedCase?: Case;
|
|
28
|
+
nextStep: () => void;
|
|
29
|
+
previousStep: () => void;
|
|
30
|
+
isFirstStep: boolean;
|
|
31
|
+
isLastStep: boolean;
|
|
32
|
+
goToStep: (stageIndex: number, stepIndex: number) => void;
|
|
33
|
+
setCurrentEvaluation: (evaluation: EvaluationReport | null) => void;
|
|
34
|
+
onSwitchCase?: (caseItem: Case) => void;
|
|
35
|
+
/** 沉浸模式背景图片 */
|
|
36
|
+
backgroundImage?: string;
|
|
37
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { AbilityMap, AbilityCategory, AbilityGrowthRecord } from '@shared/types/index.js';
|
|
2
|
+
export interface RadarDataItem {
|
|
3
|
+
ability: string;
|
|
4
|
+
value: number;
|
|
5
|
+
fullMark: number;
|
|
6
|
+
}
|
|
7
|
+
export interface CategoryRadarData {
|
|
8
|
+
category: AbilityCategory;
|
|
9
|
+
label: string;
|
|
10
|
+
data: RadarDataItem[];
|
|
11
|
+
avgScore: number;
|
|
12
|
+
}
|
|
13
|
+
export declare function buildProfileRadarData(abilityMap: AbilityMap | null, abilityProfile: {
|
|
14
|
+
abilities?: Record<string, number>;
|
|
15
|
+
} | null, trainingProfile: {
|
|
16
|
+
abilities?: Record<string, number>;
|
|
17
|
+
} | null): RadarDataItem[];
|
|
18
|
+
/** 按 basic/core/comprehensive 分类构建 3 组雷达图数据 */
|
|
19
|
+
export declare function buildCategoryRadarData(abilityMap: AbilityMap | null, abilityProfile: {
|
|
20
|
+
abilities?: Record<string, number>;
|
|
21
|
+
} | null, trainingProfile: {
|
|
22
|
+
abilities?: Record<string, number>;
|
|
23
|
+
} | null, abilityGrowth?: AbilityGrowthRecord[]): CategoryRadarData[];
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
interface BuildStepInitDataParams {
|
|
2
|
+
stepId: string;
|
|
3
|
+
stepName: string;
|
|
4
|
+
botId?: string;
|
|
5
|
+
currentUser?: {
|
|
6
|
+
userId: string;
|
|
7
|
+
name: string;
|
|
8
|
+
};
|
|
9
|
+
roleConfig?: any;
|
|
10
|
+
caseData?: any;
|
|
11
|
+
previousEvidence?: any[];
|
|
12
|
+
stepEvaluationRules?: any;
|
|
13
|
+
stepBriefing?: any;
|
|
14
|
+
modelInfo?: {
|
|
15
|
+
modelName?: string;
|
|
16
|
+
domain?: string;
|
|
17
|
+
businessType?: string;
|
|
18
|
+
targetPosition?: string;
|
|
19
|
+
trainingLevel?: string;
|
|
20
|
+
trainingType?: string;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* 解析自带评估插件(case-analysis)的生效评估规则。
|
|
25
|
+
* 覆盖层模型:Step.evaluationRules 出基线 referenceAnswer/requiredPoints(案例无关的考点/参考方向),
|
|
26
|
+
* currentCase.stepAnswers[stepId] 若声明则逐案例覆盖。
|
|
27
|
+
* 注:referenceAnswer 为散文式参考方向,运行时不做模板解析(CaseAnalysisPlugin 按原文读取);
|
|
28
|
+
* 逐案例的具体参考答案由 step4b 产出并经 stepAnswers 覆盖,不靠表达式。
|
|
29
|
+
*/
|
|
30
|
+
export declare const resolveStepEvaluationRules: (stepRules: any, currentCase?: any, stepId?: string) => any;
|
|
31
|
+
/**
|
|
32
|
+
* 解析自带判分插件(document-review)的生效 runtimeRules。
|
|
33
|
+
* document-review 的答案键基线在 runtimeRules.referenceAnswers(非 evaluationRules),
|
|
34
|
+
* 故 per-case 覆盖在此完成:currentCase.stepAnswers[stepId].documentReferenceAnswers 存在则覆盖;
|
|
35
|
+
* 并对每条不符点的 displayValue/correctValue/explanation 内 {路径}/[表达式] 按案例数据求值。
|
|
36
|
+
* 其余插件无答案键,原样返回 runtimeRules。
|
|
37
|
+
*/
|
|
38
|
+
export declare function resolveStepRuntimeRules(step: any, currentCase?: any): any;
|
|
39
|
+
export declare function buildStepInitData(stepInitData: any, currentStage: {
|
|
40
|
+
description?: string;
|
|
41
|
+
} | undefined, mergedUIConfig: any, params: BuildStepInitDataParams): any;
|
|
42
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { AbilityMap, Step, AbilityGrowthRecord } from '@shared/types/index.js';
|
|
2
|
+
export interface TargetAbilityViewModel {
|
|
3
|
+
id: string;
|
|
4
|
+
name: string;
|
|
5
|
+
currentValue: number;
|
|
6
|
+
targetLevel: number;
|
|
7
|
+
weight: number;
|
|
8
|
+
gap: number;
|
|
9
|
+
hasBeenEvaluated: boolean;
|
|
10
|
+
}
|
|
11
|
+
export declare function buildTargetAbilities(step: Step | null | undefined, abilityMap: AbilityMap | null, getAbilityValue: (abilityId: string) => number, abilityGrowth?: AbilityGrowthRecord[]): TargetAbilityViewModel[];
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { ChartConfig } from './types';
|
|
3
|
+
interface ChartRendererProps {
|
|
4
|
+
config: ChartConfig;
|
|
5
|
+
height?: number;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* 图表渲染器
|
|
9
|
+
* 使用 ECharts 渲染各类图表
|
|
10
|
+
*/
|
|
11
|
+
declare const ChartRenderer: React.FC<ChartRendererProps>;
|
|
12
|
+
export default ChartRenderer;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 可视化渲染器类型定义
|
|
3
|
+
*/
|
|
4
|
+
export interface ChartConfig {
|
|
5
|
+
type: 'bar' | 'line' | 'pie' | 'radar' | 'sankey' | 'heatmap' | 'network' | 'gauge';
|
|
6
|
+
data: any;
|
|
7
|
+
options?: any;
|
|
8
|
+
animation?: AnimationConfig;
|
|
9
|
+
}
|
|
10
|
+
export interface CardData {
|
|
11
|
+
title: string;
|
|
12
|
+
value: string | number;
|
|
13
|
+
change?: {
|
|
14
|
+
value: number;
|
|
15
|
+
trend: 'up' | 'down' | 'stable';
|
|
16
|
+
};
|
|
17
|
+
icon?: string;
|
|
18
|
+
color?: string;
|
|
19
|
+
}
|
|
20
|
+
export interface TimelineData {
|
|
21
|
+
nodes: {
|
|
22
|
+
time: string;
|
|
23
|
+
label: string;
|
|
24
|
+
events: string[];
|
|
25
|
+
}[];
|
|
26
|
+
branches?: {
|
|
27
|
+
from: string;
|
|
28
|
+
to: string;
|
|
29
|
+
condition: string;
|
|
30
|
+
}[];
|
|
31
|
+
}
|
|
32
|
+
export interface AnimationConfig {
|
|
33
|
+
duration?: number;
|
|
34
|
+
easing?: string;
|
|
35
|
+
delay?: number;
|
|
36
|
+
}
|
|
37
|
+
export interface VisualizationData {
|
|
38
|
+
charts?: ChartConfig[];
|
|
39
|
+
cards?: CardData[];
|
|
40
|
+
timeline?: TimelineData;
|
|
41
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 全局应用配置
|
|
3
|
+
*/
|
|
4
|
+
export interface AppConfig {
|
|
5
|
+
/** 视图模式:classic 经典三列布局 | immersive 闯关游戏视图 | dashboard 仪表盘首页 */
|
|
6
|
+
viewMode: 'classic' | 'immersive' | 'dashboard';
|
|
7
|
+
/** 主题名称(对应 themes.ts 中的预设) */
|
|
8
|
+
theme: string;
|
|
9
|
+
/** 沉浸模式背景图片 URL */
|
|
10
|
+
backgroundImage?: string;
|
|
11
|
+
}
|
|
12
|
+
declare const appConfig: AppConfig;
|
|
13
|
+
export declare function getAppConfig(): AppConfig;
|
|
14
|
+
export declare function updateAppConfig(patch: Partial<AppConfig>): AppConfig;
|
|
15
|
+
export default appConfig;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 全局智能体配置中心
|
|
3
|
+
* 统一管理所有 Coze 智能体的 Bot ID 和相关配置
|
|
4
|
+
*/
|
|
5
|
+
export interface AgentConfig {
|
|
6
|
+
botId: string;
|
|
7
|
+
name: string;
|
|
8
|
+
description: string;
|
|
9
|
+
promptDocPath: string;
|
|
10
|
+
category: 'creation' | 'interaction' | 'generation' | 'evaluation';
|
|
11
|
+
capability?: 'actor' | 'evaluator' | 'coach' | 'tutor';
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* 智能体配置映射表
|
|
15
|
+
*/
|
|
16
|
+
export declare const AGENT_CONFIGS: Record<string, AgentConfig>;
|
|
17
|
+
/**
|
|
18
|
+
* 智能体类型枚举(用于类型安全)
|
|
19
|
+
*/
|
|
20
|
+
export type AgentType = keyof typeof AGENT_CONFIGS;
|
|
21
|
+
/**
|
|
22
|
+
* 获取智能体配置
|
|
23
|
+
* @param agentType 智能体类型
|
|
24
|
+
* @returns 智能体配置对象
|
|
25
|
+
*/
|
|
26
|
+
export declare const getAgentConfig: (agentType: AgentType) => AgentConfig;
|
|
27
|
+
/**
|
|
28
|
+
* 获取智能体 Bot ID
|
|
29
|
+
* @param agentType 智能体类型
|
|
30
|
+
* @returns Bot ID
|
|
31
|
+
*/
|
|
32
|
+
export declare const getAgentBotId: (agentType: AgentType) => string;
|
|
33
|
+
/**
|
|
34
|
+
* 按分类获取智能体列表
|
|
35
|
+
* @param category 智能体分类
|
|
36
|
+
* @returns 该分类下的所有智能体配置
|
|
37
|
+
*/
|
|
38
|
+
export declare const getAgentsByCategory: (category: AgentConfig["category"]) => Array<{
|
|
39
|
+
type: AgentType;
|
|
40
|
+
config: AgentConfig;
|
|
41
|
+
}>;
|
|
42
|
+
/**
|
|
43
|
+
* 获取所有智能体列表(用于管理后台展示)
|
|
44
|
+
*/
|
|
45
|
+
export declare const getAllAgents: () => Array<{
|
|
46
|
+
type: AgentType;
|
|
47
|
+
config: AgentConfig;
|
|
48
|
+
}>;
|
|
49
|
+
/**
|
|
50
|
+
* 验证 Bot ID 是否已配置
|
|
51
|
+
* @param botId Bot ID
|
|
52
|
+
* @returns 是否已配置
|
|
53
|
+
*/
|
|
54
|
+
export declare const isBotIdConfigured: (botId: string) => boolean;
|
|
55
|
+
/**
|
|
56
|
+
* 根据 Bot ID 查找智能体类型
|
|
57
|
+
* @param botId Bot ID
|
|
58
|
+
* @returns 智能体类型,未找到返回 null
|
|
59
|
+
*/
|
|
60
|
+
export declare const findAgentTypeByBotId: (botId: string) => AgentType | null;
|
|
61
|
+
/**
|
|
62
|
+
* 根据功能能力获取智能体
|
|
63
|
+
* @param capability 功能能力标识
|
|
64
|
+
* @returns 智能体配置,未找到返回 null
|
|
65
|
+
*/
|
|
66
|
+
export declare const getAgentByCapability: (capability: AgentConfig["capability"]) => AgentConfig | null;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 第一阶段意图挖掘配置
|
|
3
|
+
* 定义 IntentData 的字段结构和汇总页面展示
|
|
4
|
+
*/
|
|
5
|
+
import type { FieldSchema, SummaryTemplate } from '../components/ConversationalDataCollector/types';
|
|
6
|
+
export interface RequiredIntentData {
|
|
7
|
+
domain: string;
|
|
8
|
+
businessType: string;
|
|
9
|
+
targetPosition: string;
|
|
10
|
+
trainingGoal: string;
|
|
11
|
+
jobTasks: string[];
|
|
12
|
+
competencyGoals: string[];
|
|
13
|
+
objectTypes: string[];
|
|
14
|
+
riskScenarios: string[];
|
|
15
|
+
acceptanceCriteria: string[];
|
|
16
|
+
trainingLevel?: string;
|
|
17
|
+
}
|
|
18
|
+
export type IntentData = RequiredIntentData & Record<string, any>;
|
|
19
|
+
export declare const intentDataSchema: FieldSchema[];
|
|
20
|
+
export declare const intentExtraFieldSectionTitle = "\u6269\u5C55\u9700\u6C42";
|
|
21
|
+
export declare const intentSummaryTemplate: SummaryTemplate;
|
|
22
|
+
export declare const INTENT_DISCOVERY_AGENT_ID: string;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { TrainingModel } from '@shared/types/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* 银行柜台个人业务实训模型 - 模拟数据
|
|
4
|
+
*
|
|
5
|
+
* 注意:此 mock 数据已适配新的创建流程(4步向导 + CaseSchema)
|
|
6
|
+
* - 包含 caseSchema 字段定义
|
|
7
|
+
* - 包含 dialogue-form 插件类型示例
|
|
8
|
+
* - roleConfig 已从 Stage 移至 Case 7495601510752010259
|
|
9
|
+
*/
|
|
10
|
+
export declare const mockTrainingModel: TrainingModel;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AI服务Hook
|
|
3
|
+
* 封装扣子平台AI调用功能,每个 hook 实例独立管理会话
|
|
4
|
+
*/
|
|
5
|
+
export declare const useAIService: (botId: string, currentUser: {
|
|
6
|
+
userId: string;
|
|
7
|
+
name: string;
|
|
8
|
+
}, externalToken?: string) => {
|
|
9
|
+
token: string | null;
|
|
10
|
+
loading: boolean;
|
|
11
|
+
error: string | null;
|
|
12
|
+
ready: boolean;
|
|
13
|
+
callAI: (prompt: string, onStream: (content: string, isComplete: boolean) => void) => Promise<void>;
|
|
14
|
+
resetConversation: () => void;
|
|
15
|
+
setConversationId: (id: string | null) => void;
|
|
16
|
+
getConversationId: () => string | null;
|
|
17
|
+
};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { CommunicationResistanceConfig, DialoguePhase } from '@shared/types/index.js';
|
|
2
|
+
export interface PromptExtras {
|
|
3
|
+
disturbanceEvent?: string;
|
|
4
|
+
resistance?: CommunicationResistanceConfig;
|
|
5
|
+
resistanceFaded?: boolean;
|
|
6
|
+
branchDirective?: string;
|
|
7
|
+
}
|
|
8
|
+
export interface Message {
|
|
9
|
+
role: 'customer' | 'teller';
|
|
10
|
+
content: string;
|
|
11
|
+
timestamp: number;
|
|
12
|
+
emotion?: 'neutral' | 'happy' | 'confused' | 'angry';
|
|
13
|
+
feedback?: string;
|
|
14
|
+
talkQuality?: 'excellent' | 'good' | 'average' | 'poor';
|
|
15
|
+
}
|
|
16
|
+
export interface UseDialogueLogicOptions {
|
|
17
|
+
onRealtimeData?: (data: any) => void;
|
|
18
|
+
onMessageReceived?: (message: Message) => void;
|
|
19
|
+
buildPrompt?: (tellerMessage: string, messages: Message[], initData: any, extras?: PromptExtras) => string;
|
|
20
|
+
enableRealtimeGuidance?: boolean;
|
|
21
|
+
runtimeRules?: any;
|
|
22
|
+
dialogueGoals?: string[];
|
|
23
|
+
}
|
|
24
|
+
export interface UseDialogueLogicResult {
|
|
25
|
+
messages: Message[];
|
|
26
|
+
input: string;
|
|
27
|
+
dialogueLog: Message[];
|
|
28
|
+
aiResponding: boolean;
|
|
29
|
+
aiError: string | null;
|
|
30
|
+
ready: boolean;
|
|
31
|
+
setInput: (value: string) => void;
|
|
32
|
+
handleSend: () => void;
|
|
33
|
+
checkCompletion: (rules?: any) => {
|
|
34
|
+
canComplete: boolean;
|
|
35
|
+
reason?: string;
|
|
36
|
+
};
|
|
37
|
+
isConfirmed: () => boolean;
|
|
38
|
+
cleanup: () => void;
|
|
39
|
+
currentPhaseId: string | null;
|
|
40
|
+
phaseHistory: string[];
|
|
41
|
+
branchResults: Record<string, 'positive' | 'negative'>;
|
|
42
|
+
phases: DialoguePhase[] | undefined;
|
|
43
|
+
getBranchResultsSummary: () => string[];
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* 对话逻辑 Hook
|
|
47
|
+
* 从 DialoguePlugin 提取,可复用于所有对话相关插件
|
|
48
|
+
*/
|
|
49
|
+
export declare function useDialogueLogic(initData: any, options?: UseDialogueLogicOptions): UseDialogueLogicResult;
|
|
50
|
+
/**
|
|
51
|
+
* 构建默认对话提示词(V2:支持沟通阻力、阻力衰减、分支指令)
|
|
52
|
+
*/
|
|
53
|
+
export declare function buildDefaultDialoguePrompt(tellerMessage: string, messages: Message[], initData: any, tellerRoleName?: string, customerRoleName?: string, domain?: string, templateContext?: any, filledData?: Record<string, Record<string, any>>, extras?: PromptExtras): string;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { FormInstance } from 'antd';
|
|
2
|
+
export interface UseFormFillingLogicOptions {
|
|
3
|
+
onRealtimeData?: (data: any) => void;
|
|
4
|
+
onFieldChanged?: (field: string, value: any) => void;
|
|
5
|
+
isCustomLayout?: boolean;
|
|
6
|
+
}
|
|
7
|
+
export interface UseFormFillingLogicResult {
|
|
8
|
+
form: FormInstance;
|
|
9
|
+
formData: Record<string, any>;
|
|
10
|
+
validationErrors: Record<string, string>;
|
|
11
|
+
resolvedTemplate: any;
|
|
12
|
+
stableFormData: Record<string, any>;
|
|
13
|
+
stableOnValueChange: (field: string, value: any) => void;
|
|
14
|
+
stableOnSubmit: () => Promise<void>;
|
|
15
|
+
handleFieldChange: (fieldName: string, value: any) => void;
|
|
16
|
+
validateField: (fieldName: string, value: any) => void;
|
|
17
|
+
checkCompletion: (rules?: any) => {
|
|
18
|
+
canComplete: boolean;
|
|
19
|
+
reason?: string;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* 表单填写逻辑 Hook
|
|
24
|
+
* 从 FormFillingPlugin 提取,可复用于所有表单相关插件
|
|
25
|
+
*/
|
|
26
|
+
export declare function useFormFillingLogic(initData: any, options?: UseFormFillingLogicOptions): UseFormFillingLogicResult;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 表单填写——定时实时指导 Hook
|
|
3
|
+
*
|
|
4
|
+
* 复用对话端的 COACH_AGENT(实时指导智能体),但喂入"表单填写动态"而非对话话术。
|
|
5
|
+
* 触发由插件侧定时器编排(仅当有新填写动态才调用,见 FormFillingPlugin),本 hook 只负责:
|
|
6
|
+
* 组装 prompt(首轮完整 / 后续增量,复用 conversationId)→ 调 COACH → 解析 JSON → 命中写 guidanceStore(全局浮窗自动弹)。
|
|
7
|
+
*
|
|
8
|
+
* 安全:不喂答案键 correctValue(评估专用、学生不可见),仅喂场景/规则/已填动态/客观问题,做方向性提示。
|
|
9
|
+
* TODO(refactor): 与 useRealtimeGuidance 的 COACH 调用/会话/JSON 解析内核可抽 hooks/guidanceCore 复用。
|
|
10
|
+
*/
|
|
11
|
+
export interface FormGuidanceRequest {
|
|
12
|
+
modelName?: string;
|
|
13
|
+
domain?: string;
|
|
14
|
+
businessType?: string;
|
|
15
|
+
targetPosition?: string;
|
|
16
|
+
scenario?: string;
|
|
17
|
+
formName?: string;
|
|
18
|
+
/** 案例背景(客户信息 + 业务数据,学生本可见,安全) */
|
|
19
|
+
caseBackground?: string;
|
|
20
|
+
/** 已填字段快照(label:value,全量非空) */
|
|
21
|
+
filledSnapshot: Array<{
|
|
22
|
+
label: string;
|
|
23
|
+
value: string;
|
|
24
|
+
}>;
|
|
25
|
+
/** 自上次评估以来变化的字段 */
|
|
26
|
+
changedFields: Array<{
|
|
27
|
+
label: string;
|
|
28
|
+
value: string;
|
|
29
|
+
}>;
|
|
30
|
+
requiredTotal: number;
|
|
31
|
+
requiredFilled: number;
|
|
32
|
+
/** 前端确定性校验的客观问题(不含答案),供参考、避免重复提示格式/必填 */
|
|
33
|
+
deterministicFindings?: string[];
|
|
34
|
+
/** 业务规则(约束,非答案) */
|
|
35
|
+
businessRules?: string[];
|
|
36
|
+
}
|
|
37
|
+
export interface UseFormRealtimeGuidanceOptions {
|
|
38
|
+
domain?: string;
|
|
39
|
+
tellerRoleName?: string;
|
|
40
|
+
}
|
|
41
|
+
export declare const useFormRealtimeGuidance: (token: string | null, options?: UseFormRealtimeGuidanceOptions) => {
|
|
42
|
+
evaluateFormGuidance: (req: FormGuidanceRequest) => Promise<void>;
|
|
43
|
+
resetGuidance: () => void;
|
|
44
|
+
loading: boolean;
|
|
45
|
+
};
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 实时指导 Hook
|
|
3
|
+
* 用于在对话场景中,实时评估服务人员话术并给出指导建议
|
|
4
|
+
* 使用 COACH_AGENT(实时指导智能体)
|
|
5
|
+
*
|
|
6
|
+
* 会话管理:同步骤内复用 conversationId,步骤切换时重置
|
|
7
|
+
* 首轮发完整 prompt(场景 + 评估要求 + 考核检查),后续只发增量(当前轮对话 + 剩余考核项)
|
|
8
|
+
*/
|
|
9
|
+
export interface GuidanceInfo {
|
|
10
|
+
severity: 'info' | 'warning' | 'error';
|
|
11
|
+
message: string;
|
|
12
|
+
suggestion?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface GuidanceRequest {
|
|
15
|
+
tellerMessage: string;
|
|
16
|
+
customerMessage?: string;
|
|
17
|
+
dialogueHistory: string;
|
|
18
|
+
customerEmotion?: string;
|
|
19
|
+
modelName?: string;
|
|
20
|
+
businessType?: string;
|
|
21
|
+
targetPosition?: string;
|
|
22
|
+
dialogueGoals?: string[];
|
|
23
|
+
requiredTopics?: string[];
|
|
24
|
+
mustConfirm?: boolean;
|
|
25
|
+
pendingConditionDisturbances?: Array<{
|
|
26
|
+
id: string;
|
|
27
|
+
condition: string;
|
|
28
|
+
}>;
|
|
29
|
+
phases?: Array<{
|
|
30
|
+
id: string;
|
|
31
|
+
name: string;
|
|
32
|
+
transitionHint?: string;
|
|
33
|
+
}>;
|
|
34
|
+
branchRulesToEvaluate?: Array<{
|
|
35
|
+
id: string;
|
|
36
|
+
condition: string;
|
|
37
|
+
}>;
|
|
38
|
+
resistanceFadeCondition?: string;
|
|
39
|
+
}
|
|
40
|
+
export interface GuidanceEvalResult {
|
|
41
|
+
guidance: GuidanceInfo | null;
|
|
42
|
+
disturbanceConditionsMet?: string[];
|
|
43
|
+
currentPhaseId?: string | null;
|
|
44
|
+
branchEvaluations?: Array<{
|
|
45
|
+
id: string;
|
|
46
|
+
met: boolean;
|
|
47
|
+
confidence: number;
|
|
48
|
+
}>;
|
|
49
|
+
resistanceFaded?: boolean;
|
|
50
|
+
}
|
|
51
|
+
export interface UseRealtimeGuidanceOptions {
|
|
52
|
+
domain?: string;
|
|
53
|
+
tellerRoleName?: string;
|
|
54
|
+
customerRoleName?: string;
|
|
55
|
+
}
|
|
56
|
+
export declare const useRealtimeGuidance: (token: string | null, options?: UseRealtimeGuidanceOptions) => {
|
|
57
|
+
guidance: GuidanceInfo | null;
|
|
58
|
+
loading: boolean;
|
|
59
|
+
evaluateGuidance: (request: GuidanceRequest) => Promise<GuidanceEvalResult>;
|
|
60
|
+
clearGuidance: () => void;
|
|
61
|
+
getCoveredTopics: () => string[];
|
|
62
|
+
isConfirmed: () => boolean;
|
|
63
|
+
resetCheckState: () => void;
|
|
64
|
+
setGuidanceConversationId: (id: string | null) => void;
|
|
65
|
+
getGuidanceConversationId: () => string | null;
|
|
66
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { StageAssessmentReport } from '@shared/types/index.js';
|
|
2
|
+
export declare function useStageAssessment(getToken: () => Promise<string>): {
|
|
3
|
+
stageAssessing: boolean;
|
|
4
|
+
currentStageAssessment: StageAssessmentReport | null;
|
|
5
|
+
triggerStageAssessment: () => Promise<void>;
|
|
6
|
+
confirmAndProceed: () => void;
|
|
7
|
+
dismissAndContinue: () => void;
|
|
8
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { Step, StudentOperationResult } from '@shared/types/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* 步骤执行 Hook
|
|
4
|
+
* 管理步骤生命周期和评估流程
|
|
5
|
+
*/
|
|
6
|
+
export declare const useStepExecution: (step: Step | null, botId?: string, currentUser?: any) => {
|
|
7
|
+
evaluating: boolean;
|
|
8
|
+
evaluationError: string | null;
|
|
9
|
+
handleStepComplete: (result: StudentOperationResult) => Promise<void>;
|
|
10
|
+
evaluateStep: (studentData: any) => Promise<void>;
|
|
11
|
+
retryEvaluation: (studentData: any) => Promise<void>;
|
|
12
|
+
skipEvaluation: () => void;
|
|
13
|
+
validateField: (fieldName: string, fieldValue: any) => import("@shared/types/index.js").RuleCheckResult;
|
|
14
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { TrainingModel } from '@shared/types/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* 实训模型管理 Hook
|
|
4
|
+
* 提供模型加载和导航功能
|
|
5
|
+
*/
|
|
6
|
+
export declare const useTrainingModel: (modelIdOrModel?: string | TrainingModel) => {
|
|
7
|
+
model: TrainingModel | null;
|
|
8
|
+
loading: boolean;
|
|
9
|
+
error: string | null;
|
|
10
|
+
currentStageIndex: number;
|
|
11
|
+
currentStepIndex: number;
|
|
12
|
+
sessionId: string | null;
|
|
13
|
+
nextStep: () => void;
|
|
14
|
+
previousStep: () => void;
|
|
15
|
+
nextStage: () => void;
|
|
16
|
+
previousStage: () => void;
|
|
17
|
+
goToStep: (stageIndex: number, stepIndex: number) => void;
|
|
18
|
+
reset: () => void;
|
|
19
|
+
currentStage: import("@shared/types/index.js").Stage | null;
|
|
20
|
+
currentStep: import("@shared/types/index.js").Step | null;
|
|
21
|
+
isLastStep: boolean;
|
|
22
|
+
isLastStage: boolean;
|
|
23
|
+
isFirstStep: boolean;
|
|
24
|
+
isFirstStage: boolean;
|
|
25
|
+
progress: {
|
|
26
|
+
completed: number;
|
|
27
|
+
total: number;
|
|
28
|
+
percentage: number;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export { default as StepByStepCreator } from '../admin/StepByStepCreator';
|
|
2
2
|
export { default as ModelEditor } from '../admin/ModelEditor';
|
|
3
3
|
export type { StepByStepCreatorProps, ModelEditorProps } from './types';
|
|
4
|
+
export { setTokenInvalidHandler } from '../services/cozeApiClient';
|
|
@@ -3,3 +3,4 @@ export type { TrainingEngineProps, TrainingResult } from './runtime';
|
|
|
3
3
|
export { StepByStepCreator, ModelEditor } from './creator';
|
|
4
4
|
export type { StepByStepCreatorProps, ModelEditorProps, TrainingModel, Case, StudentOperationResult, EvaluationReport, PluginType, CreatorContext, CreatorNotifyAdapter, CreatorPersistenceAdapter, RuntimePersistenceAdapter, TokenProvider, } from './types';
|
|
5
5
|
export { createLocalStorageCreatorPersistence, resolveCreatorNotify, resolveTokenProvider, } from './adapters';
|
|
6
|
+
export { setTokenInvalidHandler } from '../services/cozeApiClient';
|