@digitalsee-ai/rcs 0.0.14
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 +237 -0
- package/dist/components/digitalsee/JsonRenderer/index.d.ts +22 -0
- package/dist/components/digitalsee/JsonRenderer/locales/en.d.ts +7 -0
- package/dist/components/digitalsee/JsonRenderer/locales/zh.d.ts +7 -0
- package/dist/components/digitalsee/index.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Canvas/FastOperationButtons.d.ts +44 -0
- package/dist/components/digitalsee/workflow/Canvas/FullscreenLoading.d.ts +3 -0
- package/dist/components/digitalsee/workflow/Canvas/GlobalSvg.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Canvas/HelperLines.d.ts +8 -0
- package/dist/components/digitalsee/workflow/Canvas/MiniMap.d.ts +3 -0
- package/dist/components/digitalsee/workflow/Canvas/WorkflowCanvas.d.ts +15 -0
- package/dist/components/digitalsee/workflow/Canvas/WorkflowCanvasHeader.d.ts +15 -0
- package/dist/components/digitalsee/workflow/Canvas/WorkflowDebugPanel.d.ts +28 -0
- package/dist/components/digitalsee/workflow/Canvas/color.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Canvas/utils.d.ts +8 -0
- package/dist/components/digitalsee/workflow/Edges/BaseEdge.d.ts +30 -0
- package/dist/components/digitalsee/workflow/Handles/CustomHandle.d.ts +30 -0
- package/dist/components/digitalsee/workflow/Handles/HandleFactory.d.ts +35 -0
- package/dist/components/digitalsee/workflow/Handles/InputHandle.d.ts +12 -0
- package/dist/components/digitalsee/workflow/Handles/OutputHandle.d.ts +12 -0
- package/dist/components/digitalsee/workflow/Handles/OutputHandleWithButton.d.ts +15 -0
- package/dist/components/digitalsee/workflow/Nodes/AISubNode.d.ts +9 -0
- package/dist/components/digitalsee/workflow/Nodes/ActionNode.d.ts +13 -0
- package/dist/components/digitalsee/workflow/Nodes/AgentNode.d.ts +10 -0
- package/dist/components/digitalsee/workflow/Nodes/BrowserNode.d.ts +10 -0
- package/dist/components/digitalsee/workflow/Nodes/BuiltinMCPNode.d.ts +9 -0
- package/dist/components/digitalsee/workflow/Nodes/ConditionNode.d.ts +13 -0
- package/dist/components/digitalsee/workflow/Nodes/CustomNode.d.ts +15 -0
- package/dist/components/digitalsee/workflow/Nodes/LoopNode.d.ts +4 -0
- package/dist/components/digitalsee/workflow/Nodes/MCPServerNode.d.ts +9 -0
- package/dist/components/digitalsee/workflow/Nodes/MCPToolNode.d.ts +9 -0
- package/dist/components/digitalsee/workflow/Nodes/NodeFactory.d.ts +33 -0
- package/dist/components/digitalsee/workflow/Nodes/NodeStatusDemo.d.ts +7 -0
- package/dist/components/digitalsee/workflow/Nodes/SelfLoopNode.d.ts +4 -0
- package/dist/components/digitalsee/workflow/Nodes/StartNode.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Nodes/StickyNoteNode.d.ts +33 -0
- package/dist/components/digitalsee/workflow/Nodes/SuperBaseNode.d.ts +45 -0
- package/dist/components/digitalsee/workflow/Nodes/SwitchNode.d.ts +13 -0
- package/dist/components/digitalsee/workflow/Nodes/TriggerNode.d.ts +9 -0
- package/dist/components/digitalsee/workflow/Nodes/components/NodeDescription.d.ts +17 -0
- package/dist/components/digitalsee/workflow/Nodes/components/NodeDescriptionExample.d.ts +0 -0
- package/dist/components/digitalsee/workflow/Nodes/components/NodeOperations.d.ts +14 -0
- package/dist/components/digitalsee/workflow/Nodes/components/UnlinkThunder/index.d.ts +4 -0
- package/dist/components/digitalsee/workflow/NodesConfig/ActionNodeConfig/index.d.ts +1 -0
- package/dist/components/digitalsee/workflow/NodesConfig/ConditionNodeConfig/index.d.ts +6 -0
- package/dist/components/digitalsee/workflow/NodesConfig/ErrorHandler.d.ts +8 -0
- package/dist/components/digitalsee/workflow/NodesConfig/LoopNodeConfig/index.d.ts +8 -0
- package/dist/components/digitalsee/workflow/NodesConfig/McpToolNodeConfig/index.d.ts +1 -0
- package/dist/components/digitalsee/workflow/NodesConfig/SwitchNodeConfig/index.d.ts +13 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/CreateAccountModal/index.d.ts +13 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/DynamicAccountForm/fields/DateField/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/DynamicAccountForm/fields/DateTimeField/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/DynamicAccountForm/fields/ExtendObjectField/index.d.ts +10 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/DynamicAccountForm/fields/FixedObjectField/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/DynamicAccountForm/fields/HiddenField/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/DynamicAccountForm/fields/JsonField/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/DynamicAccountForm/fields/LabelField/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/DynamicAccountForm/fields/PasswordField/index.d.ts +4 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/DynamicAccountForm/fields/SelectField/index.d.ts +10 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/DynamicAccountForm/fields/TextAreaField/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/DynamicAccountForm/fields/TextField/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/DynamicAccountForm/fields/TimeField/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/DynamicAccountForm/fields/super.d.ts +6 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/DynamicAccountForm/index.d.ts +13 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/DynamicAccountForm/middlewares/extend-obj.d.ts +10 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/components/ModifyAccountModal/index.d.ts +14 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/AccountSelect/index.d.ts +12 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/EditInOnlineIDE/index.d.ts +11 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/components/AIFormField.d.ts +8 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/ApiSelectField/index.d.ts +9 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/DateField/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/DateTimeField/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/DynamicSelectListField/index.d.ts +11 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/ExtendObjectField/index.d.ts +11 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/FixedObjectField/index.d.ts +11 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/HiddenField/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/HourMiniuteField/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JavscriptTagEditorField/common-placeholder-theme.d.ts +57 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JavscriptTagEditorField/editor.d.ts +1 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JavscriptTagEditorField/extensions.d.ts +11 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JavscriptTagEditorField/index.d.ts +3 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JavscriptTagEditorField/interface.d.ts +29 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JavscriptTagEditorField/plugin/base-theme.d.ts +1 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JavscriptTagEditorField/plugin/custom-completions.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JavscriptTagEditorField/plugin/functions.d.ts +3 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JavscriptTagEditorField/plugin/hint.d.ts +11 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JavscriptTagEditorField/plugin/keywords.d.ts +2 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JavscriptTagEditorField/plugin/placeholders.d.ts +3 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JsonField/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JsonTagField/common-placeholder-theme.d.ts +57 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JsonTagField/editor.d.ts +1 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JsonTagField/extensions.d.ts +11 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JsonTagField/index.d.ts +3 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JsonTagField/interface.d.ts +29 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JsonTagField/plugin/base-theme.d.ts +1 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JsonTagField/plugin/custom-completions.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JsonTagField/plugin/functions.d.ts +3 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JsonTagField/plugin/hint.d.ts +11 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JsonTagField/plugin/keywords.d.ts +2 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/JsonTagField/plugin/placeholders.d.ts +3 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/LabelField/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/MutilRowAIExtractConfigField/index.d.ts +13 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/PasswordField/index.d.ts +6 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/RichTagInput/help.d.ts +3 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/RichTagInput/index.d.ts +4 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/SelectField/index.d.ts +10 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/TextAreaField/index.d.ts +6 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/TextField/index.d.ts +14 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/TimeField/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/WebhookLabelField/index.d.ts +15 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/super.d.ts +6 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/index.d.ts +21 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/middlewares/extend-obj.d.ts +10 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/NodeTest.d.ts +6 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/ProxyGroupSelect/index.d.ts +5 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/RShow/index.d.ts +7 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/VariableModal/index.d.ts +7 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/VariableModal/tree-help.d.ts +49 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/online-ide/components/IDEVariableModal/index.d.ts +7 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/online-ide/components/IDEVariableModal/tree-help.d.ts +49 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/online-ide/components/sider/index.d.ts +10 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/online-ide/components/title/index.d.ts +1 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/online-ide/components/toolbar/index.d.ts +6 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/online-ide/helper/matchVar.d.ts +7 -0
- package/dist/components/digitalsee/workflow/NodesConfig/components/online-ide/index.d.ts +9 -0
- package/dist/components/digitalsee/workflow/NodesConfig/define/actions.d.ts +51 -0
- package/dist/components/digitalsee/workflow/NodesConfig/define/condition.d.ts +78 -0
- package/dist/components/digitalsee/workflow/NodesConfig/define/config-form-item.d.ts +34 -0
- package/dist/components/digitalsee/workflow/NodesConfig/define/flow.d.ts +26 -0
- package/dist/components/digitalsee/workflow/NodesConfig/define/links.d.ts +17 -0
- package/dist/components/digitalsee/workflow/NodesConfig/index.d.ts +16 -0
- package/dist/components/digitalsee/workflow/Panels/CanvasConfigDebugger.d.ts +37 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/ActionItem.d.ts +14 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/ActionList.d.ts +15 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/CategoryContent.d.ts +17 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/CategoryItem.d.ts +13 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/CategoryList.d.ts +14 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/CategoryTabs.d.ts +15 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/NodeCard.d.ts +19 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/NodeItem.d.ts +13 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/PanelHeader.d.ts +19 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/SearchResults.d.ts +14 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/defaultData.d.ts +3 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/hooks/useActions.d.ts +16 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/hooks/useCategories.d.ts +14 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/hooks/useNavigation.d.ts +30 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/hooks/useSearch.d.ts +24 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/index.d.ts +9 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/types.d.ts +144 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/dataTransformers.d.ts +11 -0
- package/dist/components/digitalsee/workflow/api/index.d.ts +123 -0
- package/dist/components/digitalsee/workflow/config/defaultCanvasEngineConfig.d.ts +26 -0
- package/dist/components/digitalsee/workflow/config/globalConfig.d.ts +35 -0
- package/dist/components/digitalsee/workflow/config/themeConfig.d.ts +172 -0
- package/dist/components/digitalsee/workflow/context/canvasApiContext.d.ts +48 -0
- package/dist/components/digitalsee/workflow/context/canvasConfig.d.ts +3 -0
- package/dist/components/digitalsee/workflow/de.d.ts +1 -0
- package/dist/components/digitalsee/workflow/events/eventBus.d.ts +22 -0
- package/dist/components/digitalsee/workflow/examples/global-config-example.d.ts +12 -0
- package/dist/components/digitalsee/workflow/hooks/state.hooks.d.ts +2 -0
- package/dist/components/digitalsee/workflow/hooks/use-before-unload.d.ts +4 -0
- package/dist/components/digitalsee/workflow/hooks/use-edges-interaction.d.ts +9 -0
- package/dist/components/digitalsee/workflow/hooks/use-flow-data-operation.d.ts +7 -0
- package/dist/components/digitalsee/workflow/hooks/use-node-data-update.d.ts +9 -0
- package/dist/components/digitalsee/workflow/hooks/use-nodes-interaction.d.ts +9 -0
- package/dist/components/digitalsee/workflow/hooks/use-wokflow-id.d.ts +1 -0
- package/dist/components/digitalsee/workflow/hooks/useCanvasLayout.d.ts +6 -0
- package/dist/components/digitalsee/workflow/hooks/useHandleConnections.d.ts +5 -0
- package/dist/components/digitalsee/workflow/hooks/useUndo.d.ts +13 -0
- package/dist/components/digitalsee/workflow/hooks/useWorkflow.d.ts +34 -0
- package/dist/components/digitalsee/workflow/index.d.ts +107 -0
- package/dist/components/digitalsee/workflow/migration/umi.d.ts +7 -0
- package/dist/components/digitalsee/workflow/store/panelSlice.d.ts +89 -0
- package/dist/components/digitalsee/workflow/store/types.d.ts +11 -0
- package/dist/components/digitalsee/workflow/types/Edge.d.ts +20 -0
- package/dist/components/digitalsee/workflow/types/Handle.d.ts +44 -0
- package/dist/components/digitalsee/workflow/types/Node.d.ts +102 -0
- package/dist/components/digitalsee/workflow/types/NodeProtocol.d.ts +12 -0
- package/dist/components/digitalsee/workflow/types/SaveStatus.d.ts +1 -0
- package/dist/components/digitalsee/workflow/types/Workflow.d.ts +58 -0
- package/dist/components/digitalsee/workflow/types/engine.d.ts +244 -0
- package/dist/components/digitalsee/workflow/utils/calculateNodePosition.d.ts +10 -0
- package/dist/components/digitalsee/workflow/utils/common.d.ts +87 -0
- package/dist/components/digitalsee/workflow/utils/edgeConverters.d.ts +30 -0
- package/dist/components/digitalsee/workflow/utils/flowDataAdapter.d.ts +72 -0
- package/dist/components/digitalsee/workflow/utils/glob.d.ts +15 -0
- package/dist/components/digitalsee/workflow/utils/layoutUtils.d.ts +43 -0
- package/dist/components/digitalsee/workflow/utils/mergeConfig.d.ts +22 -0
- package/dist/components/digitalsee/workflow/utils/nodeDataFormatter.d.ts +32 -0
- package/dist/components/digitalsee/workflow/utils/optionValues.d.ts +13 -0
- package/dist/components/digitalsee/workflow/utils/time.d.ts +1 -0
- package/dist/components/digitalsee/workflow/utils/uuid.d.ts +2 -0
- package/dist/components/dynamic-form/AntdProvider.d.ts +13 -0
- package/dist/components/dynamic-form/DynamicForm.d.ts +52 -0
- package/dist/components/dynamic-form/DynamicFormContext.d.ts +22 -0
- package/dist/components/dynamic-form/FieldRenderer.d.ts +45 -0
- package/dist/components/dynamic-form/components/AIFieldWrapper/index.d.ts +11 -0
- package/dist/components/dynamic-form/components/SelectWithExpression/index.d.ts +25 -0
- package/dist/components/dynamic-form/components/ValueModeWrapper/index.d.ts +44 -0
- package/dist/components/dynamic-form/components/VariableInput/index.d.ts +24 -0
- package/dist/components/dynamic-form/components/VariableInput/utils.d.ts +38 -0
- package/dist/components/dynamic-form/components/VariableTextarea/index.d.ts +10 -0
- package/dist/components/dynamic-form/context/EventEngineContext.d.ts +42 -0
- package/dist/components/dynamic-form/context/VariableSelectorContext.d.ts +67 -0
- package/dist/components/dynamic-form/core/ActionExecutor.d.ts +9 -0
- package/dist/components/dynamic-form/core/EventEngine.d.ts +30 -0
- package/dist/components/dynamic-form/fields/base/NumberField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/base/PasswordField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/base/TextField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/base/TextareaField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/base/index.d.ts +4 -0
- package/dist/components/dynamic-form/fields/complex/ArrayField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/complex/ArrayObjectField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/complex/KeyValueField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/complex/ObjectField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/complex/index.d.ts +4 -0
- package/dist/components/dynamic-form/fields/datetime/DateField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/datetime/DateRangeField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/datetime/DateTimeField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/datetime/TimeField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/datetime/TimeRangeField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/datetime/index.d.ts +5 -0
- package/dist/components/dynamic-form/fields/display/DividerField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/display/HiddenField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/display/InfoCardField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/display/JsonField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/display/LabelField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/display/index.d.ts +5 -0
- package/dist/components/dynamic-form/fields/select/CascaderField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/select/CheckboxField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/select/CheckboxGroupField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/select/RadioField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/select/SelectField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/select/SwitchField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/select/TreeSelectField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/select/index.d.ts +7 -0
- package/dist/components/dynamic-form/fields/special/AutoCompleteField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/special/ColorPickerField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/special/MentionsField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/special/RateField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/special/SliderField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/special/UploadField.d.ts +1 -0
- package/dist/components/dynamic-form/fields/special/index.d.ts +6 -0
- package/dist/components/dynamic-form/index.d.ts +21 -0
- package/dist/components/dynamic-form/registry/FieldRegistry.d.ts +26 -0
- package/dist/components/dynamic-form/registry/FieldRegistryContext.d.ts +53 -0
- package/dist/components/dynamic-form/registry/createFieldComponent.d.ts +56 -0
- package/dist/components/dynamic-form/registry/index.d.ts +3 -0
- package/dist/components/dynamic-form/types/data-loader.d.ts +144 -0
- package/dist/components/dynamic-form/types/events.d.ts +203 -0
- package/dist/components/dynamic-form/types/field-component.d.ts +156 -0
- package/dist/components/dynamic-form/types/form-schema.d.ts +297 -0
- package/dist/components/dynamic-form/types/index.d.ts +4 -0
- package/dist/components/dynamic-form/types/validation.d.ts +53 -0
- package/dist/components/dynamic-form/utils/__tests__/path-get.test.d.ts +1 -0
- package/dist/components/dynamic-form/utils/conditions.d.ts +4 -0
- package/dist/components/dynamic-form/utils/generateEvents.d.ts +84 -0
- package/dist/components/dynamic-form/utils/path-get.d.ts +21 -0
- package/dist/components/dynamic-form/utils/useDataLoader.d.ts +47 -0
- package/dist/components/dynamic-form/utils/validation.d.ts +7 -0
- package/dist/components/dynamic-form/utils/visible.d.ts +7 -0
- package/dist/components/index.d.ts +3 -0
- package/dist/components/ui/index.d.ts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/locales/en-US/common.d.ts +571 -0
- package/dist/locales/en-US/link/component.d.ts +76 -0
- package/dist/locales/en-US/link/flow.d.ts +152 -0
- package/dist/locales/en-US/link/log.d.ts +40 -0
- package/dist/locales/en-US/link/template.d.ts +6 -0
- package/dist/locales/en-US.d.ts +720 -0
- package/dist/locales/index.d.ts +722 -0
- package/dist/locales/zh-CN/common.d.ts +571 -0
- package/dist/locales/zh-CN/link/component.d.ts +77 -0
- package/dist/locales/zh-CN/link/flow.d.ts +152 -0
- package/dist/locales/zh-CN/link/log.d.ts +41 -0
- package/dist/locales/zh-CN/link/template.d.ts +6 -0
- package/dist/locales/zh-CN.d.ts +720 -0
- package/dist/locales/zh-TW/common.d.ts +567 -0
- package/dist/locales/zh-TW/link/component.d.ts +76 -0
- package/dist/locales/zh-TW/link/flow.d.ts +151 -0
- package/dist/locales/zh-TW/link/log.d.ts +37 -0
- package/dist/locales/zh-TW/link/template.d.ts +6 -0
- package/dist/locales/zh-TW.d.ts +715 -0
- package/dist/rcs.css +1 -0
- package/dist/rcs.es.js +49858 -0
- package/dist/rcs.umd.js +98 -0
- package/dist/storybook-utils.d.ts +4 -0
- package/dist/utils.d.ts +2 -0
- package/package.json +147 -0
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
import { FormInstance } from 'antd';
|
|
2
|
+
import { ConditionNode } from './form-schema';
|
|
3
|
+
/**
|
|
4
|
+
* 事件类型
|
|
5
|
+
*/
|
|
6
|
+
export type EventType = 'fieldChange' | 'fieldBlur' | 'fieldFocus' | 'formMount' | 'custom';
|
|
7
|
+
/**
|
|
8
|
+
* 事件触发器配置
|
|
9
|
+
*/
|
|
10
|
+
export type EventTrigger = {
|
|
11
|
+
type: 'fieldChange' | 'fieldBlur' | 'fieldFocus';
|
|
12
|
+
field: string;
|
|
13
|
+
} | {
|
|
14
|
+
type: 'formMount';
|
|
15
|
+
} | {
|
|
16
|
+
type: 'custom';
|
|
17
|
+
eventName: string;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* 动作定义 - 清空字段
|
|
21
|
+
*/
|
|
22
|
+
export interface ClearFieldsAction {
|
|
23
|
+
type: 'clearFields';
|
|
24
|
+
/** 要清空的字段名列表 */
|
|
25
|
+
targets: string[];
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* 动作定义 - 设置字段值
|
|
29
|
+
*/
|
|
30
|
+
export interface SetFieldValueAction {
|
|
31
|
+
type: 'setFieldValue';
|
|
32
|
+
/** 目标字段名 */
|
|
33
|
+
target: string;
|
|
34
|
+
/** 静态值(直接设置) */
|
|
35
|
+
value?: unknown;
|
|
36
|
+
/** 动态值路径(从 payload 或 formValues 中提取)
|
|
37
|
+
* 例如:'payload.data.userName' 或 'formValues.department'
|
|
38
|
+
*/
|
|
39
|
+
valueFrom?: string;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* 动作定义 - 设置字段禁用状态
|
|
43
|
+
*/
|
|
44
|
+
export interface SetFieldDisabledAction {
|
|
45
|
+
type: 'setFieldDisabled';
|
|
46
|
+
/** 目标字段名 */
|
|
47
|
+
target: string;
|
|
48
|
+
/** 是否禁用 */
|
|
49
|
+
disabled: boolean;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* 动作定义 - 触发字段验证
|
|
53
|
+
*/
|
|
54
|
+
export interface TriggerValidationAction {
|
|
55
|
+
type: 'triggerValidation';
|
|
56
|
+
/** 要验证的字段名列表,为空则验证所有字段 */
|
|
57
|
+
targets?: string[];
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* 动作定义 - 调用数据加载器
|
|
61
|
+
* 用于自定义组件场景:调用接口获取数据后设置给其他字段
|
|
62
|
+
*/
|
|
63
|
+
export interface CallDataLoaderAction {
|
|
64
|
+
type: 'callDataLoader';
|
|
65
|
+
/** 数据加载器的 action 名称 */
|
|
66
|
+
action: string;
|
|
67
|
+
/** 传递给数据加载器的参数 */
|
|
68
|
+
params?: Record<string, unknown>;
|
|
69
|
+
/** 将结果设置到哪个字段(可选) */
|
|
70
|
+
resultTo?: string;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* 动作定义 - 自定义动作
|
|
74
|
+
* 通过自定义处理函数实现复杂逻辑
|
|
75
|
+
*/
|
|
76
|
+
export interface CustomAction {
|
|
77
|
+
type: 'custom';
|
|
78
|
+
/** 自定义处理函数的标识符 */
|
|
79
|
+
handler: string;
|
|
80
|
+
/** 传递给处理函数的参数 */
|
|
81
|
+
params?: Record<string, unknown>;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* 动作联合类型
|
|
85
|
+
*/
|
|
86
|
+
export type Action = ClearFieldsAction | SetFieldValueAction | SetFieldDisabledAction | TriggerValidationAction | CallDataLoaderAction | CustomAction;
|
|
87
|
+
/**
|
|
88
|
+
* 事件配置
|
|
89
|
+
*/
|
|
90
|
+
export interface EventConfig {
|
|
91
|
+
/** 事件 ID(可选,用于调试和日志) */
|
|
92
|
+
id?: string;
|
|
93
|
+
/** 事件触发器 */
|
|
94
|
+
trigger: EventTrigger;
|
|
95
|
+
/** 触发条件(可选,复用现有条件系统) */
|
|
96
|
+
conditions?: ConditionNode;
|
|
97
|
+
/** 要执行的动作列表 */
|
|
98
|
+
actions: Action[];
|
|
99
|
+
/** 防抖时间(毫秒,可选) */
|
|
100
|
+
debounce?: number;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* 事件载荷
|
|
104
|
+
* 包含事件触发时的上下文信息
|
|
105
|
+
*/
|
|
106
|
+
export interface EventPayload {
|
|
107
|
+
/** 事件类型 */
|
|
108
|
+
type: EventType;
|
|
109
|
+
/** 触发事件的字段名(fieldChange/fieldBlur/fieldFocus) */
|
|
110
|
+
field?: string;
|
|
111
|
+
/** 自定义事件名(custom 类型) */
|
|
112
|
+
eventName?: string;
|
|
113
|
+
/** 字段的旧值(fieldChange) */
|
|
114
|
+
oldValue?: unknown;
|
|
115
|
+
/** 字段的新值(fieldChange) */
|
|
116
|
+
newValue?: unknown;
|
|
117
|
+
/** 自定义数据(custom 类型) */
|
|
118
|
+
payload?: Record<string, unknown>;
|
|
119
|
+
/** 触发时间戳 */
|
|
120
|
+
timestamp: number;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* 动作执行上下文
|
|
124
|
+
* 提供给动作执行器的上下文信息
|
|
125
|
+
*/
|
|
126
|
+
export interface ActionContext {
|
|
127
|
+
/** Ant Design Form 实例 */
|
|
128
|
+
form: FormInstance;
|
|
129
|
+
/** 当前表单所有值 */
|
|
130
|
+
formValues: Record<string, unknown>;
|
|
131
|
+
/** 触发事件的载荷 */
|
|
132
|
+
eventPayload: EventPayload;
|
|
133
|
+
/** 数据加载器(可选) */
|
|
134
|
+
optionsLoader?: (action: string, params: Record<string, unknown>, ctx: unknown) => Promise<unknown>;
|
|
135
|
+
/** 自定义动作处理器映射表(可选) */
|
|
136
|
+
customHandlers?: Record<string, (context: ActionContext, params?: Record<string, unknown>) => void | Promise<void>>;
|
|
137
|
+
/** 执行深度(用于防止无限循环) */
|
|
138
|
+
executionDepth?: number;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* 事件分发函数类型
|
|
142
|
+
* 供自定义组件调用以触发自定义事件
|
|
143
|
+
*/
|
|
144
|
+
export type DispatchEventFn = (eventName: string, payload?: Record<string, unknown>) => void;
|
|
145
|
+
/**
|
|
146
|
+
* EventEngine 配置
|
|
147
|
+
*/
|
|
148
|
+
export interface EventEngineConfig {
|
|
149
|
+
/** 事件配置列表 */
|
|
150
|
+
events: EventConfig[];
|
|
151
|
+
/** 最大执行深度(防止无限循环,默认 10) */
|
|
152
|
+
maxExecutionDepth?: number;
|
|
153
|
+
/** 是否启用调试日志(默认 false) */
|
|
154
|
+
debug?: boolean;
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* 字段事件处理器接口
|
|
158
|
+
* 提供给字段组件的统一事件触发接口
|
|
159
|
+
*
|
|
160
|
+
* 设计目的:
|
|
161
|
+
* - 将所有字段级别的事件触发函数聚合到一个对象中
|
|
162
|
+
* - 便于扩展新的事件类型,无需修改多处传参代码
|
|
163
|
+
* - 字段组件通过 context.eventHandlers 访问
|
|
164
|
+
*
|
|
165
|
+
* @example
|
|
166
|
+
* // 在字段组件中使用
|
|
167
|
+
* const handleBlur = () => {
|
|
168
|
+
* context.eventHandlers?.onBlur(field.name)
|
|
169
|
+
* }
|
|
170
|
+
*/
|
|
171
|
+
export interface FieldEventHandlers {
|
|
172
|
+
/**
|
|
173
|
+
* 字段失焦事件
|
|
174
|
+
* @param fieldPath - 字段路径
|
|
175
|
+
*/
|
|
176
|
+
onBlur: (fieldPath: string) => void;
|
|
177
|
+
/**
|
|
178
|
+
* 字段聚焦事件
|
|
179
|
+
* @param fieldPath - 字段路径
|
|
180
|
+
*/
|
|
181
|
+
onFocus: (fieldPath: string) => void;
|
|
182
|
+
/**
|
|
183
|
+
* 自定义事件分发
|
|
184
|
+
* @param eventName - 事件名称
|
|
185
|
+
* @param payload - 事件载荷
|
|
186
|
+
*/
|
|
187
|
+
dispatch: DispatchEventFn;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* EventEngine Hook 返回值类型
|
|
191
|
+
*/
|
|
192
|
+
export interface EventEngineReturn {
|
|
193
|
+
/**
|
|
194
|
+
* 触发字段值变化事件
|
|
195
|
+
* 由 DynamicForm 在 onValuesChange 中调用
|
|
196
|
+
*/
|
|
197
|
+
triggerFieldChange: (fieldPath: string, newValue: unknown, oldValue?: unknown) => void;
|
|
198
|
+
/**
|
|
199
|
+
* 字段事件处理器
|
|
200
|
+
* 传递给字段组件使用
|
|
201
|
+
*/
|
|
202
|
+
fieldEventHandlers: FieldEventHandlers;
|
|
203
|
+
}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { DynamicFormField, FieldDef, Option } from './form-schema';
|
|
2
|
+
import { FieldEventHandlers } from './events';
|
|
3
|
+
import type * as React from 'react';
|
|
4
|
+
/**
|
|
5
|
+
* Options 加载器函数类型
|
|
6
|
+
* 用于动态加载 Select/Cascader 等组件的选项
|
|
7
|
+
*/
|
|
8
|
+
export type OptionsLoader = (action: string, params: Record<string, unknown>, ctx: {
|
|
9
|
+
values: Record<string, unknown>;
|
|
10
|
+
}) => Promise<Option[]>;
|
|
11
|
+
/**
|
|
12
|
+
* 变量信息类型
|
|
13
|
+
*/
|
|
14
|
+
export interface VariableInfo {
|
|
15
|
+
path: string;
|
|
16
|
+
label?: string;
|
|
17
|
+
type?: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* 字段渲染上下文
|
|
21
|
+
* 提供字段渲染所需的所有外部信息
|
|
22
|
+
*/
|
|
23
|
+
export interface FieldRenderContext {
|
|
24
|
+
/** 表单当前值(用于条件判断) */
|
|
25
|
+
values: Record<string, unknown>;
|
|
26
|
+
/** 动态 Options 加载器 */
|
|
27
|
+
optionsLoader?: OptionsLoader;
|
|
28
|
+
/** 变量验证函数 */
|
|
29
|
+
validateVariable?: (variable: string) => boolean | Promise<boolean>;
|
|
30
|
+
/** 节点 ID(workflow 场景) */
|
|
31
|
+
nodeId?: string;
|
|
32
|
+
/** MCP 模式(启用 AI 填充) */
|
|
33
|
+
mcpMode?: boolean;
|
|
34
|
+
/** 可用变量列表 */
|
|
35
|
+
availableVariables?: VariableInfo[];
|
|
36
|
+
/** 字段事件处理器(统一的事件触发接口) */
|
|
37
|
+
eventHandlers?: FieldEventHandlers;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* 字段组件 Props
|
|
41
|
+
* 所有字段组件都接收这个统一的 Props 接口
|
|
42
|
+
*
|
|
43
|
+
* 注意:这些组件会被 Form.Item 包裹,Form.Item 会通过 cloneElement 注入以下 props:
|
|
44
|
+
* - value: 表单字段的当前值
|
|
45
|
+
* - onChange: 值变化回调
|
|
46
|
+
* - id: 字段 ID
|
|
47
|
+
*
|
|
48
|
+
* 字段组件必须接收这些 props 并转发给内部的 Ant Design 组件
|
|
49
|
+
*/
|
|
50
|
+
export interface FieldComponentProps<T extends FieldDef = FieldDef> {
|
|
51
|
+
/** 字段定义 */
|
|
52
|
+
field: T;
|
|
53
|
+
/** 是否禁用 */
|
|
54
|
+
disabled: boolean;
|
|
55
|
+
/** 是否只读 */
|
|
56
|
+
readOnly: boolean;
|
|
57
|
+
/** 渲染上下文 */
|
|
58
|
+
context: FieldRenderContext;
|
|
59
|
+
/** 表单字段值(由 Form.Item 注入) */
|
|
60
|
+
value?: unknown;
|
|
61
|
+
/** 值变化回调(由 Form.Item 注入) */
|
|
62
|
+
onChange?: (value: unknown) => void;
|
|
63
|
+
/** 字段 ID(由 Form.Item 注入) */
|
|
64
|
+
id?: string;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* 字段组件元数据
|
|
68
|
+
* 描述组件的能力和特性,用于 FieldRenderer 决定如何包装组件
|
|
69
|
+
*/
|
|
70
|
+
export interface FieldComponentMeta {
|
|
71
|
+
/**
|
|
72
|
+
* 组件内部是否已处理 variableInsert 特性
|
|
73
|
+
* 如果为 true,FieldRenderer 不会额外包装 ValueModeWrapper
|
|
74
|
+
*/
|
|
75
|
+
supportsVariableInsert?: boolean;
|
|
76
|
+
/**
|
|
77
|
+
* 组件内部是否已处理 aiFillable 特性
|
|
78
|
+
* 如果为 true,FieldRenderer 不会额外包装 AIFieldWrapper
|
|
79
|
+
*/
|
|
80
|
+
supportsAiFillable?: boolean;
|
|
81
|
+
/**
|
|
82
|
+
* 是否需要 Form.Item 的 name 属性绑定
|
|
83
|
+
* 默认为 true
|
|
84
|
+
* 复杂字段(如 ARRAY)内部自行处理 name,外层 Form.Item 不需要 name
|
|
85
|
+
*/
|
|
86
|
+
needsFormItemName?: boolean;
|
|
87
|
+
/**
|
|
88
|
+
* 自定义 valuePropName
|
|
89
|
+
* 例如 CHECKBOX/SWITCH 使用 "checked"
|
|
90
|
+
*/
|
|
91
|
+
valuePropName?: string;
|
|
92
|
+
/**
|
|
93
|
+
* 是否为复杂字段
|
|
94
|
+
* 复杂字段(ARRAY/OBJECT/KEY_VALUE/ARRAY_OBJECT)的外层 Form.Item 仅用于 label 显示
|
|
95
|
+
*/
|
|
96
|
+
isComplexField?: boolean;
|
|
97
|
+
/**
|
|
98
|
+
* 是否为纯展示字段
|
|
99
|
+
* 展示字段(DIVIDER/INFO_CARD)不需要 Form.Item 包装
|
|
100
|
+
*/
|
|
101
|
+
isDisplayOnly?: boolean;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* 字段组件定义
|
|
105
|
+
* 组合组件和元数据
|
|
106
|
+
*/
|
|
107
|
+
export interface FieldComponentDefinition<T extends FieldDef = FieldDef> {
|
|
108
|
+
/** React 组件 */
|
|
109
|
+
component: React.ComponentType<FieldComponentProps<T>>;
|
|
110
|
+
/** 组件元数据 */
|
|
111
|
+
meta: FieldComponentMeta;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* 字段注册选项
|
|
115
|
+
*/
|
|
116
|
+
export interface RegisterFieldOptions {
|
|
117
|
+
/** 是否覆盖已存在的注册 */
|
|
118
|
+
override?: boolean;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* 字段注册表接口
|
|
122
|
+
*/
|
|
123
|
+
export interface IFieldRegistry {
|
|
124
|
+
/**
|
|
125
|
+
* 注册字段组件
|
|
126
|
+
* @param type - 字段类型标识
|
|
127
|
+
* @param definition - 组件定义(包含组件和元数据)
|
|
128
|
+
* @param options - 注册选项
|
|
129
|
+
*/
|
|
130
|
+
register(type: DynamicFormField | string, definition: FieldComponentDefinition, options?: RegisterFieldOptions): void;
|
|
131
|
+
/**
|
|
132
|
+
* 注销字段组件
|
|
133
|
+
* @param type - 要注销的字段类型
|
|
134
|
+
*/
|
|
135
|
+
unregister(type: DynamicFormField | string): void;
|
|
136
|
+
/**
|
|
137
|
+
* 获取已注册的字段组件
|
|
138
|
+
* @param type - 字段类型
|
|
139
|
+
* @returns 组件定义或 undefined
|
|
140
|
+
*/
|
|
141
|
+
get(type: DynamicFormField | string): FieldComponentDefinition | undefined;
|
|
142
|
+
/**
|
|
143
|
+
* 检查字段类型是否已注册
|
|
144
|
+
* @param type - 字段类型
|
|
145
|
+
*/
|
|
146
|
+
has(type: DynamicFormField | string): boolean;
|
|
147
|
+
/**
|
|
148
|
+
* 获取所有已注册的字段类型
|
|
149
|
+
*/
|
|
150
|
+
getRegisteredTypes(): Array<DynamicFormField | string>;
|
|
151
|
+
/**
|
|
152
|
+
* 克隆注册表
|
|
153
|
+
* 用于创建作用域隔离的注册表实例
|
|
154
|
+
*/
|
|
155
|
+
clone(): IFieldRegistry;
|
|
156
|
+
}
|
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
import { ValidationRule } from './validation';
|
|
2
|
+
import { EventConfig } from './events';
|
|
3
|
+
export type Option = {
|
|
4
|
+
label: string;
|
|
5
|
+
value: string | number;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
children?: Option[];
|
|
8
|
+
};
|
|
9
|
+
export type ValueMode = 'string' | 'jsExpr' | 'code' | 'variable';
|
|
10
|
+
export type OptionsSource = {
|
|
11
|
+
kind: 'static';
|
|
12
|
+
items: Option[];
|
|
13
|
+
} | {
|
|
14
|
+
kind: 'dynamic' | 'async';
|
|
15
|
+
deps?: string[];
|
|
16
|
+
action: string;
|
|
17
|
+
params?: Record<string, unknown>;
|
|
18
|
+
fallbackOptions?: Option[];
|
|
19
|
+
};
|
|
20
|
+
export type OperatorType = 'EQ' | 'NOT' | 'GT' | 'LT' | 'GE' | 'LE' | 'ISEVEN' | 'ISODD' | 'IC' | 'NIC' | 'IN' | 'NIN' | 'EXISTS' | 'EMPTY' | 'NOT_EMPTY';
|
|
21
|
+
export type ConditionNode = {
|
|
22
|
+
AND?: ConditionNode[];
|
|
23
|
+
OR?: ConditionNode[];
|
|
24
|
+
key?: string;
|
|
25
|
+
keyword?: OperatorType;
|
|
26
|
+
value?: unknown;
|
|
27
|
+
} | undefined;
|
|
28
|
+
export type HideStrategy = 'unregister' | 'keepValue';
|
|
29
|
+
export type VisibleWhen = {
|
|
30
|
+
deps?: string[];
|
|
31
|
+
conditions?: ConditionNode;
|
|
32
|
+
clearOnHide?: boolean;
|
|
33
|
+
hideStrategy?: HideStrategy;
|
|
34
|
+
} | undefined;
|
|
35
|
+
export declare enum DynamicFormField {
|
|
36
|
+
TEXT = "TEXT",// antd Input
|
|
37
|
+
TEXTAREA = "TEXTAREA",// antd Input.TextArea
|
|
38
|
+
NUMBER = "NUMBER",// antd InputNumber
|
|
39
|
+
PASSWORD = "PASSWORD",// antd Input.Password
|
|
40
|
+
SELECT = "SELECT",// antd Select
|
|
41
|
+
MULTI_SELECT = "MULTI_SELECT",// antd Select mode="multiple"
|
|
42
|
+
RADIO = "RADIO",// antd Radio.Group
|
|
43
|
+
CHECKBOX = "CHECKBOX",// antd Checkbox
|
|
44
|
+
CHECKBOX_GROUP = "CHECKBOX_GROUP",// antd Checkbox.Group
|
|
45
|
+
SWITCH = "SWITCH",// antd Switch
|
|
46
|
+
CASCADER = "CASCADER",// antd Cascader
|
|
47
|
+
TREE_SELECT = "TREE_SELECT",// antd TreeSelect
|
|
48
|
+
DATE = "DATE",// antd DatePicker
|
|
49
|
+
DATE_RANGE = "DATE_RANGE",// antd DatePicker.RangePicker
|
|
50
|
+
TIME = "TIME",// antd TimePicker
|
|
51
|
+
TIME_RANGE = "TIME_RANGE",// antd TimePicker.RangePicker
|
|
52
|
+
DATETIME = "DATETIME",// antd DatePicker showTime
|
|
53
|
+
UPLOAD = "UPLOAD",// antd Upload
|
|
54
|
+
RATE = "RATE",// antd Rate
|
|
55
|
+
SLIDER = "SLIDER",// antd Slider
|
|
56
|
+
COLOR_PICKER = "COLOR_PICKER",// antd ColorPicker
|
|
57
|
+
MENTIONS = "MENTIONS",// antd Mentions
|
|
58
|
+
AUTO_COMPLETE = "AUTO_COMPLETE",// antd AutoComplete
|
|
59
|
+
LABEL = "LABEL",// 纯文本展示
|
|
60
|
+
HIDDEN = "HIDDEN",// 隐藏字段
|
|
61
|
+
JSON = "JSON",// JSON 编辑器
|
|
62
|
+
DIVIDER = "DIVIDER",// 分割线
|
|
63
|
+
INFO_CARD = "INFO_CARD",// 展示卡片
|
|
64
|
+
ARRAY = "ARRAY",// 简单数组
|
|
65
|
+
OBJECT = "OBJECT",// 对象编辑器
|
|
66
|
+
KEY_VALUE = "KEY_VALUE",// 键值对编辑器
|
|
67
|
+
ARRAY_OBJECT = "ARRAY_OBJECT"
|
|
68
|
+
}
|
|
69
|
+
/** 基础字段定义 */
|
|
70
|
+
export type BaseField = {
|
|
71
|
+
type: DynamicFormField;
|
|
72
|
+
name: string;
|
|
73
|
+
label?: string;
|
|
74
|
+
description?: string;
|
|
75
|
+
placeholder?: string;
|
|
76
|
+
defaultValue?: unknown;
|
|
77
|
+
valueMode?: ValueMode;
|
|
78
|
+
helpText?: string;
|
|
79
|
+
readOnly?: boolean | ConditionNode;
|
|
80
|
+
aiFillable?: boolean;
|
|
81
|
+
variableInsert?: boolean;
|
|
82
|
+
disabled?: boolean | ConditionNode;
|
|
83
|
+
required?: boolean | ConditionNode;
|
|
84
|
+
visibleWhen?: VisibleWhen;
|
|
85
|
+
rules?: ValidationRule[];
|
|
86
|
+
validateTrigger?: 'onChange' | 'onBlur' | 'onSubmit' | Array<'onChange' | 'onBlur' | 'onSubmit'>;
|
|
87
|
+
tooltip?: string;
|
|
88
|
+
extra?: string;
|
|
89
|
+
colon?: boolean;
|
|
90
|
+
labelCol?: {
|
|
91
|
+
span?: number;
|
|
92
|
+
offset?: number;
|
|
93
|
+
};
|
|
94
|
+
wrapperCol?: {
|
|
95
|
+
span?: number;
|
|
96
|
+
offset?: number;
|
|
97
|
+
};
|
|
98
|
+
};
|
|
99
|
+
/** Textarea 字段扩展 */
|
|
100
|
+
export type TextareaField = BaseField & {
|
|
101
|
+
type: DynamicFormField.TEXTAREA;
|
|
102
|
+
minRows?: number;
|
|
103
|
+
maxRows?: number;
|
|
104
|
+
autoSize?: boolean | {
|
|
105
|
+
minRows?: number;
|
|
106
|
+
maxRows?: number;
|
|
107
|
+
};
|
|
108
|
+
showCount?: boolean;
|
|
109
|
+
maxLength?: number;
|
|
110
|
+
};
|
|
111
|
+
/** Select 字段扩展 */
|
|
112
|
+
export type SelectField = BaseField & {
|
|
113
|
+
type: DynamicFormField.SELECT | DynamicFormField.MULTI_SELECT;
|
|
114
|
+
options?: Option[];
|
|
115
|
+
optionsSource?: OptionsSource;
|
|
116
|
+
showSearch?: boolean;
|
|
117
|
+
allowClear?: boolean;
|
|
118
|
+
mode?: 'multiple' | 'tags';
|
|
119
|
+
remoteSearch?: boolean;
|
|
120
|
+
searchDebounce?: number;
|
|
121
|
+
maxTagCount?: number;
|
|
122
|
+
};
|
|
123
|
+
/** Radio 字段扩展 */
|
|
124
|
+
export type RadioField = BaseField & {
|
|
125
|
+
type: DynamicFormField.RADIO;
|
|
126
|
+
options: Option[];
|
|
127
|
+
optionType?: 'default' | 'button';
|
|
128
|
+
buttonStyle?: 'outline' | 'solid';
|
|
129
|
+
};
|
|
130
|
+
/** Checkbox Group 字段扩展 */
|
|
131
|
+
export type CheckboxGroupField = BaseField & {
|
|
132
|
+
type: DynamicFormField.CHECKBOX_GROUP;
|
|
133
|
+
options: Option[];
|
|
134
|
+
};
|
|
135
|
+
/** Date 字段扩展 */
|
|
136
|
+
export type DateField = BaseField & {
|
|
137
|
+
type: DynamicFormField.DATE | DynamicFormField.DATETIME;
|
|
138
|
+
picker?: 'date' | 'week' | 'month' | 'quarter' | 'year';
|
|
139
|
+
showTime?: boolean | object;
|
|
140
|
+
format?: string;
|
|
141
|
+
outputFormat?: 'timestamp' | 'string';
|
|
142
|
+
disabledDate?: string;
|
|
143
|
+
presets?: Array<{
|
|
144
|
+
label: string;
|
|
145
|
+
value: string;
|
|
146
|
+
}>;
|
|
147
|
+
};
|
|
148
|
+
/** DateRange 字段扩展 */
|
|
149
|
+
export type DateRangeField = BaseField & {
|
|
150
|
+
type: DynamicFormField.DATE_RANGE;
|
|
151
|
+
picker?: 'date' | 'week' | 'month' | 'quarter' | 'year';
|
|
152
|
+
showTime?: boolean | object;
|
|
153
|
+
format?: string;
|
|
154
|
+
};
|
|
155
|
+
/** Time 字段扩展 */
|
|
156
|
+
export type TimeField = BaseField & {
|
|
157
|
+
type: DynamicFormField.TIME;
|
|
158
|
+
format?: string;
|
|
159
|
+
};
|
|
160
|
+
/** Switch 字段扩展 */
|
|
161
|
+
export type SwitchField = BaseField & {
|
|
162
|
+
type: DynamicFormField.SWITCH;
|
|
163
|
+
checkedChildren?: string;
|
|
164
|
+
unCheckedChildren?: string;
|
|
165
|
+
checkedValue?: unknown;
|
|
166
|
+
uncheckedValue?: unknown;
|
|
167
|
+
};
|
|
168
|
+
/** TimeRange 字段扩展 */
|
|
169
|
+
export type TimeRangeField = BaseField & {
|
|
170
|
+
type: DynamicFormField.TIME_RANGE;
|
|
171
|
+
format?: string;
|
|
172
|
+
};
|
|
173
|
+
/** Number 字段扩展 */
|
|
174
|
+
export type NumberField = BaseField & {
|
|
175
|
+
type: DynamicFormField.NUMBER;
|
|
176
|
+
min?: number;
|
|
177
|
+
max?: number;
|
|
178
|
+
step?: number;
|
|
179
|
+
precision?: number;
|
|
180
|
+
addonBefore?: string;
|
|
181
|
+
addonAfter?: string;
|
|
182
|
+
showThousandsSeparator?: boolean;
|
|
183
|
+
controls?: boolean;
|
|
184
|
+
};
|
|
185
|
+
/** Upload 字段扩展 */
|
|
186
|
+
export type UploadField = BaseField & {
|
|
187
|
+
type: DynamicFormField.UPLOAD;
|
|
188
|
+
accept?: string;
|
|
189
|
+
maxCount?: number;
|
|
190
|
+
maxSize?: number;
|
|
191
|
+
listType?: 'text' | 'picture' | 'picture-card' | 'picture-circle';
|
|
192
|
+
action?: string;
|
|
193
|
+
multiple?: boolean;
|
|
194
|
+
};
|
|
195
|
+
/** Slider 字段扩展 */
|
|
196
|
+
export type SliderField = BaseField & {
|
|
197
|
+
type: DynamicFormField.SLIDER;
|
|
198
|
+
min?: number;
|
|
199
|
+
max?: number;
|
|
200
|
+
step?: number;
|
|
201
|
+
marks?: Record<number, string>;
|
|
202
|
+
range?: boolean;
|
|
203
|
+
};
|
|
204
|
+
/** Rate 字段扩展 */
|
|
205
|
+
export type RateField = BaseField & {
|
|
206
|
+
type: DynamicFormField.RATE;
|
|
207
|
+
count?: number;
|
|
208
|
+
allowHalf?: boolean;
|
|
209
|
+
};
|
|
210
|
+
/** Cascader 字段扩展 */
|
|
211
|
+
export type CascaderField = BaseField & {
|
|
212
|
+
type: DynamicFormField.CASCADER;
|
|
213
|
+
options: Option[];
|
|
214
|
+
changeOnSelect?: boolean;
|
|
215
|
+
multiple?: boolean;
|
|
216
|
+
showSearch?: boolean;
|
|
217
|
+
};
|
|
218
|
+
/** TreeSelect 字段扩展 */
|
|
219
|
+
export type TreeSelectField = BaseField & {
|
|
220
|
+
type: DynamicFormField.TREE_SELECT;
|
|
221
|
+
options: Option[];
|
|
222
|
+
multiple?: boolean;
|
|
223
|
+
showSearch?: boolean;
|
|
224
|
+
allowClear?: boolean;
|
|
225
|
+
treeCheckable?: boolean;
|
|
226
|
+
};
|
|
227
|
+
/** AutoComplete 字段扩展 */
|
|
228
|
+
export type AutoCompleteField = BaseField & {
|
|
229
|
+
type: DynamicFormField.AUTO_COMPLETE;
|
|
230
|
+
options: Option[];
|
|
231
|
+
allowClear?: boolean;
|
|
232
|
+
};
|
|
233
|
+
/** 展示卡片 */
|
|
234
|
+
export type InfoCardField = BaseField & {
|
|
235
|
+
type: DynamicFormField.INFO_CARD;
|
|
236
|
+
status?: 'info' | 'success' | 'warning' | 'error';
|
|
237
|
+
closable?: boolean;
|
|
238
|
+
showIcon?: boolean;
|
|
239
|
+
};
|
|
240
|
+
/** 数组字段定义 */
|
|
241
|
+
export type ArrayField = BaseField & {
|
|
242
|
+
type: DynamicFormField.ARRAY;
|
|
243
|
+
itemSchema: FieldDef;
|
|
244
|
+
minItems?: number;
|
|
245
|
+
maxItems?: number;
|
|
246
|
+
allowCopy?: boolean;
|
|
247
|
+
itemLabel?: string;
|
|
248
|
+
};
|
|
249
|
+
/** 对象字段定义 */
|
|
250
|
+
export type ObjectField = BaseField & {
|
|
251
|
+
type: DynamicFormField.OBJECT;
|
|
252
|
+
properties: Record<string, FieldDef>;
|
|
253
|
+
collapsible?: boolean;
|
|
254
|
+
defaultCollapsed?: boolean;
|
|
255
|
+
};
|
|
256
|
+
/** 键值对字段定义 */
|
|
257
|
+
export type KeyValueField = BaseField & {
|
|
258
|
+
type: DynamicFormField.KEY_VALUE;
|
|
259
|
+
keyPlaceholder?: string;
|
|
260
|
+
valuePlaceholder?: string;
|
|
261
|
+
maxDepth?: number;
|
|
262
|
+
minItems?: number;
|
|
263
|
+
maxItems?: number;
|
|
264
|
+
};
|
|
265
|
+
/** 对象数组字段定义 */
|
|
266
|
+
export type ArrayObjectField = BaseField & {
|
|
267
|
+
type: DynamicFormField.ARRAY_OBJECT;
|
|
268
|
+
columns: FieldDef[];
|
|
269
|
+
rowCollapsible?: boolean;
|
|
270
|
+
allowCopy?: boolean;
|
|
271
|
+
minItems?: number;
|
|
272
|
+
maxItems?: number;
|
|
273
|
+
};
|
|
274
|
+
/** 字段定义联合类型 */
|
|
275
|
+
export type FieldDef = BaseField | TextareaField | SelectField | RadioField | CheckboxGroupField | DateField | DateRangeField | TimeField | TimeRangeField | NumberField | UploadField | SliderField | RateField | CascaderField | TreeSelectField | AutoCompleteField | SwitchField | InfoCardField | ArrayField | ObjectField | KeyValueField | ArrayObjectField;
|
|
276
|
+
/** 表单 Schema */
|
|
277
|
+
export type FormSchema = {
|
|
278
|
+
fields: FieldDef[];
|
|
279
|
+
layout?: 'horizontal' | 'vertical' | 'inline';
|
|
280
|
+
labelCol?: {
|
|
281
|
+
span?: number;
|
|
282
|
+
offset?: number;
|
|
283
|
+
};
|
|
284
|
+
wrapperCol?: {
|
|
285
|
+
span?: number;
|
|
286
|
+
offset?: number;
|
|
287
|
+
};
|
|
288
|
+
colon?: boolean;
|
|
289
|
+
size?: 'small' | 'middle' | 'large';
|
|
290
|
+
pruneInvisibleOnSubmit?: boolean;
|
|
291
|
+
/** 事件配置列表 */
|
|
292
|
+
events?: EventConfig[];
|
|
293
|
+
/** 是否启用自动事件生成(默认 true)
|
|
294
|
+
* 当设置为 true 时,会根据字段的 optionsSource.deps 自动生成 clearFields 事件
|
|
295
|
+
*/
|
|
296
|
+
enableAutoEvents?: boolean;
|
|
297
|
+
};
|