@para-ui/core 5.0.0-beta.9 → 5.0.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/AGENTS.md +315 -0
- package/AlignBox/component.json +89 -0
- package/Anchor/component.json +130 -0
- package/Argv/component.json +216 -0
- package/AutoBox/component.json +133 -0
- package/AutoButton/component.json +109 -0
- package/AutoTips/component.json +121 -0
- package/Badge/component.json +92 -0
- package/Breadcrumbs/component.json +142 -0
- package/Button/component.json +168 -0
- package/ButtonGroup/component.json +132 -0
- package/Card/component.json +162 -0
- package/Carousel/component.json +142 -0
- package/Cascader/component.json +196 -0
- package/Checkbox/component.json +138 -0
- package/CheckboxGroup/component.json +152 -0
- package/CodeEditor/component.json +189 -0
- package/Collapse/component.json +166 -0
- package/CollapseBox/component.json +84 -0
- package/CollapseLayout/component.json +155 -0
- package/ColorPicker/component.json +142 -0
- package/ComboSelect/component.json +181 -0
- package/Container/component.json +111 -0
- package/ContentBox/component.json +81 -0
- package/CopyText/component.json +118 -0
- package/CycleSelector/component.json +98 -0
- package/DatePicker/component.json +192 -0
- package/Descriptions/component.json +142 -0
- package/Desktop/component.json +171 -0
- package/DragVerify/component.json +114 -0
- package/Drawer/component.json +200 -0
- package/Dropdown/component.json +147 -0
- package/DynamicMultiBox/component.json +278 -0
- package/Empty/component.json +123 -0
- package/ExpressionInput/component.json +79 -0
- package/FieldForm/component.json +196 -0
- package/Form/component.json +161 -0
- package/FormItem/component.json +171 -0
- package/FunctionModal/component.json +197 -0
- package/Help/component.json +118 -0
- package/HelperText/component.json +126 -0
- package/Image/component.json +165 -0
- package/InputCode/component.json +191 -0
- package/InputLang/component.json +205 -0
- package/InputNumber/component.json +162 -0
- package/Label/component.json +126 -0
- package/Loading/component.json +91 -0
- package/Menu/component.json +180 -0
- package/Message/component.json +246 -0
- package/Modal/component.json +277 -0
- package/MultiBox/component.json +216 -0
- package/Notification/component.json +184 -0
- package/OperateBtn/component.json +134 -0
- package/PageHeader/component.json +112 -0
- package/Pagination/component.json +181 -0
- package/PasswordRules/component.json +105 -0
- package/PopConfirm/component.json +227 -0
- package/PopMenu/component.json +131 -0
- package/Popover/component.json +165 -0
- package/Progress/component.json +161 -0
- package/Prompt/component.json +144 -0
- package/Querying/component.json +96 -0
- package/QuickReply/component.json +129 -0
- package/Radio/component.json +136 -0
- package/RadioGroup/component.json +149 -0
- package/RangeInput/component.json +198 -0
- package/Result/component.json +104 -0
- package/ScrollBar/component.json +115 -0
- package/Search/component.json +177 -0
- package/Select/component.json +244 -0
- package/SelectInput/component.json +184 -0
- package/Selector/component.json +203 -0
- package/SelectorPicker/component.json +179 -0
- package/SingleBox/component.json +151 -0
- package/Slider/component.json +181 -0
- package/SortBox/component.json +108 -0
- package/Status/component.json +104 -0
- package/Stepper/component.json +129 -0
- package/Switch/component.json +207 -0
- package/Table/component.json +547 -0
- package/Tabs/component.json +227 -0
- package/Tag/component.json +221 -0
- package/TextEditor/component.json +186 -0
- package/TextField/component.json +290 -0
- package/TimePicker/component.json +176 -0
- package/Timeline/component.json +110 -0
- package/Title/component.json +156 -0
- package/ToggleButton/component.json +153 -0
- package/Tooltip/component.json +176 -0
- package/Transfer/component.json +157 -0
- package/Tree/component.json +512 -0
- package/Upload/component.json +450 -0
- package/ai-workflows/01-crud-list-multi-drawer.md +278 -0
- package/ai-workflows/02-rbac-operation-buttons.md +290 -0
- package/ai-workflows/03-complex-form-async-cascade.md +350 -0
- package/ai-workflows/04-array-field-form.md +281 -0
- package/ai-workflows/05-popconfirm-async-message-queue.md +333 -0
- package/ai-workflows/06-modal-drawer-form-workflow.md +385 -0
- package/ai-workflows/07-search-filter-table-trio.md +387 -0
- package/ai-workflows/08-table-advanced-features.md +365 -0
- package/ai-workflows/09-batch-operation-export-progress.md +367 -0
- package/ai-workflows/10-cross-component-state-coordination.md +412 -0
- package/es/AlignBox/component.json +89 -0
- package/es/AlignBox/index.css +1 -1
- package/es/AlignBox/index.d.ts +6 -2
- package/es/AlignBox/index.js +1 -1
- package/es/AlignBox/style/index.css +1 -1
- package/es/Anchor/anchorMenu/index.d.ts +2 -1
- package/es/Anchor/anchorMenu/index.js +36 -33
- package/es/Anchor/component.json +130 -0
- package/es/Anchor/index.js +52 -49
- package/es/Anchor/type.d.ts +8 -4
- package/es/Argv/batchEdit/index.js +1 -1
- package/es/Argv/component.json +216 -0
- package/es/Argv/dataGenerator/index.js +1 -1
- package/es/Argv/index.d.ts +5 -6
- package/es/Argv/index.js +1 -1
- package/es/AutoBox/component.json +133 -0
- package/es/AutoBox/index.d.ts +3 -3
- package/es/AutoBox/index.js +1 -1
- package/es/AutoBox/protal.d.ts +2 -2
- package/es/AutoBox/protal.js +33 -30
- package/es/AutoButton/component.json +109 -0
- package/es/AutoButton/index.js +1 -1
- package/es/AutoTips/autoTipsMultiline/index.d.ts +1 -1
- package/es/AutoTips/autoTipsMultiline/index.js +1 -1
- package/es/AutoTips/component.json +121 -0
- package/es/AutoTips/index.js +1 -1
- package/es/Badge/component.json +92 -0
- package/es/Breadcrumbs/component.json +142 -0
- package/es/Breadcrumbs/index.js +1 -1
- package/es/Button/SplitButton.d.ts +2 -2
- package/es/Button/component.json +168 -0
- package/es/Button/index.js +44 -44
- package/es/ButtonGroup/component.json +132 -0
- package/es/ButtonGroup/index.d.ts +1 -1
- package/es/Card/component.json +162 -0
- package/es/Card/index.d.ts +2 -2
- package/es/Card/index.js +2 -2
- package/es/Carousel/component.json +142 -0
- package/es/Carousel/index.d.ts +1 -1
- package/es/Cascader/Cascader.js +1 -1
- package/es/Cascader/OptionList/Column.js +1 -1
- package/es/Cascader/OptionList/index.js +1 -1
- package/es/Cascader/component.json +196 -0
- package/es/Cascader/hooks/useEntities.js +7 -7
- package/es/Cascader/interface.d.ts +1 -0
- package/es/Cascader/utils/commonUtil.d.ts +1 -1
- package/es/Cascader/utils/commonUtil.js +16 -16
- package/es/Cascader/utils/treeUtil.d.ts +14 -5
- package/es/Cascader/utils/treeUtil.js +1 -1
- package/es/Checkbox/component.json +138 -0
- package/es/CheckboxGroup/component.json +152 -0
- package/es/CheckboxGroup/index.js +1 -1
- package/es/CodeEditor/component.json +189 -0
- package/es/CodeEditor/index.d.ts +11 -10
- package/es/CodeEditor/index.js +25 -25
- package/es/Collapse/component.json +166 -0
- package/es/Collapse/index.d.ts +1 -1
- package/es/Collapse/index.js +23 -22
- package/es/CollapseBox/component.json +84 -0
- package/es/CollapseLayout/component.json +155 -0
- package/es/ColorPicker/component.json +142 -0
- package/es/ComboSelect/component.json +181 -0
- package/es/ComboSelect/index.js +115 -109
- package/es/ComboSelect/interface.d.ts +2 -2
- package/es/ComboSelect/utils.d.ts +3 -3
- package/es/ComboSelect/utils.js +1 -1
- package/es/Container/component.json +111 -0
- package/es/ContentBox/component.json +81 -0
- package/es/CopyText/component.json +118 -0
- package/es/CycleSelector/component.json +98 -0
- package/es/CycleSelector/index.js +14 -13
- package/es/DatePicker/component.json +192 -0
- package/es/DatePicker/generatePicker/generateRangePicker.js +11 -11
- package/es/DatePicker/generatePicker/generateSinglePicker.js +2 -2
- package/es/Descriptions/component.json +142 -0
- package/es/Descriptions/index.d.ts +1 -1
- package/es/Desktop/component.json +171 -0
- package/es/Desktop/index.js +1 -1
- package/es/DragVerify/component.json +114 -0
- package/es/DragVerify/index.js +19 -19
- package/es/Drawer/component.json +200 -0
- package/es/Drawer/index.js +86 -86
- package/es/Drawer/interface.d.ts +1 -1
- package/es/Drawer/util.d.ts +1 -6
- package/es/Drawer/util.js +9 -6
- package/es/Dropdown/component.json +147 -0
- package/es/Dropdown/index.js +1 -1
- package/es/DynamicMultiBox/component.json +278 -0
- package/es/DynamicMultiBox/formItem.d.ts +1 -1
- package/es/DynamicMultiBox/index.js +1 -1
- package/es/DynamicMultiBox/rowForm.d.ts +2 -2
- package/es/Empty/component.json +123 -0
- package/es/Empty/index.css +1 -1
- package/es/Empty/index.d.ts +2 -2
- package/es/Empty/index.js +27 -26
- package/es/Empty/style/index.css +1 -1
- package/es/ExpressionInput/HighlightOverlay.d.ts +8 -0
- package/es/ExpressionInput/HighlightOverlay.js +27 -0
- package/es/ExpressionInput/Popup.d.ts +19 -0
- package/es/ExpressionInput/Popup.js +93 -0
- package/es/ExpressionInput/component.json +79 -0
- package/es/ExpressionInput/detectChainAtCursor.d.ts +17 -0
- package/es/ExpressionInput/detectChainAtCursor.js +31 -0
- package/es/ExpressionInput/filterCandidatesByPartial.d.ts +2 -0
- package/es/ExpressionInput/filterCandidatesByPartial.js +15 -0
- package/es/ExpressionInput/highlightSegments.d.ts +9 -0
- package/es/ExpressionInput/highlightSegments.js +14 -0
- package/es/ExpressionInput/index.css +1 -0
- package/es/ExpressionInput/index.d.ts +5 -0
- package/es/ExpressionInput/index.js +178 -0
- package/es/ExpressionInput/interface.d.ts +52 -0
- package/es/ExpressionInput/isExpressionValue.d.ts +5 -0
- package/es/ExpressionInput/isExpressionValue.js +18 -0
- package/es/ExpressionInput/lang/en_US.d.ts +4 -0
- package/es/ExpressionInput/lang/en_US.js +7 -0
- package/es/ExpressionInput/lang/index.d.ts +9 -0
- package/es/ExpressionInput/lang/index.js +10 -0
- package/es/ExpressionInput/lang/zh_CN.d.ts +4 -0
- package/es/ExpressionInput/lang/zh_CN.js +7 -0
- package/es/ExpressionInput/style/css.js +1 -0
- package/es/ExpressionInput/style/index.css +1 -0
- package/es/ExpressionInput/style/index.js +1 -0
- package/es/ExpressionInput/useExpressionInput.d.ts +26 -0
- package/es/ExpressionInput/useExpressionInput.js +59 -0
- package/es/FieldForm/FieldFormItem/ItemHolder.js +1 -1
- package/es/FieldForm/FieldFormItem/MemoInput.d.ts +2 -2
- package/es/FieldForm/FieldFormItem/StatusProvider.js +1 -1
- package/es/FieldForm/FieldFormItem/index.d.ts +6 -6
- package/es/FieldForm/Form.d.ts +2 -2
- package/es/FieldForm/Form.js +1 -1
- package/es/FieldForm/FormItemInput.js +1 -1
- package/es/FieldForm/FormItemLabel.js +1 -1
- package/es/FieldForm/FormList.d.ts +2 -2
- package/es/FieldForm/component.json +196 -0
- package/es/FieldForm/context.d.ts +5 -1
- package/es/FieldForm/context.js +2 -2
- package/es/FieldForm/hooks/useForm.d.ts +4 -3
- package/es/FieldForm/hooks/useFormInstance.d.ts +1 -1
- package/es/FieldForm/hooks/useFormItemStatus.d.ts +9 -5
- package/es/FieldForm/hooks/useFormItemStatus.js +2 -2
- package/es/FieldForm/hooks/useItemRef.d.ts +1 -1
- package/es/FieldForm/hooks/useItemRef.js +6 -6
- package/es/Form/component.json +161 -0
- package/es/Form/index.d.ts +52 -49
- package/es/Form/index.js +1 -1
- package/es/FormItem/compoments/defaultCompoments/index.d.ts +5 -5
- package/es/FormItem/compoments/defaultCompoments/index.js +12 -11
- package/es/FormItem/compoments/formCheckboxGroup/index.d.ts +2 -2
- package/es/FormItem/compoments/formFile/index.js +8 -8
- package/es/FormItem/compoments/formRadioGroup/index.d.ts +1 -1
- package/es/FormItem/compoments/formSelect/index.d.ts +1 -1
- package/es/FormItem/component.json +171 -0
- package/es/FormItem/index.d.ts +5 -5
- package/es/FormItem/index.js +23 -23
- package/es/FormItem/itemType.js +1 -1
- package/es/FunctionModal/component.json +197 -0
- package/es/FunctionModal/dialog.d.ts +1 -1
- package/es/FunctionModal/modalContext.d.ts +4 -1
- package/es/GlobalContext/confirmLocale.js +1 -1
- package/es/GlobalContext/index.js +1 -1
- package/es/Help/component.json +118 -0
- package/es/HelperText/component.json +126 -0
- package/es/Image/PreviewGroup.js +1 -1
- package/es/Image/component.json +165 -0
- package/es/Image/index.js +1 -1
- package/es/InputCode/component.json +191 -0
- package/es/InputCode/index.d.ts +2 -2
- package/es/InputCode/index.js +1 -1
- package/es/InputLang/component.json +205 -0
- package/es/InputLang/index.js +2 -2
- package/es/InputNumber/component.json +162 -0
- package/es/InputNumber/index.d.ts +13 -7
- package/es/InputNumber/index.js +152 -144
- package/es/Label/component.json +126 -0
- package/es/Label/index.d.ts +2 -2
- package/es/Loading/component.json +91 -0
- package/es/Menu/component.json +180 -0
- package/es/Menu/verticalMenuList.js +1 -1
- package/es/Message/component.json +246 -0
- package/es/Message/index.d.ts +2 -2
- package/es/Message/index.js +19 -19
- package/es/Modal/Confirm/index.d.ts +1 -1
- package/es/Modal/Confirm/index.js +1 -1
- package/es/Modal/component.json +277 -0
- package/es/Modal/index.d.ts +85 -5
- package/es/Modal/index.js +159 -122
- package/es/Modal/interface.d.ts +1 -0
- package/es/MultiBox/component.json +216 -0
- package/es/MultiBox/index.js +19 -14
- package/es/Notification/component.json +184 -0
- package/es/OperateBtn/component.json +134 -0
- package/es/OperateBtn/index.d.ts +3 -3
- package/es/PageHeader/component.json +112 -0
- package/es/PageHeader/horizontalMeun.js +1 -1
- package/es/PageHeader/horizontalMeunRight.js +1 -1
- package/es/Pagination/component.json +181 -0
- package/es/Pagination/index.js +15 -15
- package/es/ParauiProvider/index.js +1 -1
- package/es/PasswordRules/component.json +105 -0
- package/es/PasswordRules/index.d.ts +4 -4
- package/es/PopConfirm/component.json +227 -0
- package/es/PopConfirm/index.d.ts +1 -1
- package/es/PopConfirm/index.js +1 -1
- package/es/PopMenu/component.json +131 -0
- package/es/PopMenu/hooks.d.ts +1 -1
- package/es/PopMenu/index.js +8 -8
- package/es/Popover/component.json +165 -0
- package/es/Popover/index.js +1 -1
- package/es/Progress/component.json +161 -0
- package/es/Prompt/component.json +144 -0
- package/es/Querying/component.json +96 -0
- package/es/Querying/index.css +1 -1
- package/es/Querying/index.d.ts +2 -2
- package/es/Querying/index.js +20 -19
- package/es/Querying/style/index.css +1 -1
- package/es/QuickReply/QuickReplyCode/index.js +1 -1
- package/es/QuickReply/component.json +129 -0
- package/es/QuickReply/index.d.ts +1 -1
- package/es/Radio/component.json +136 -0
- package/es/RadioGroup/component.json +149 -0
- package/es/RangeInput/component.json +198 -0
- package/es/RangeInput/index.d.ts +15 -7
- package/es/RangeInput/index.js +120 -103
- package/es/Result/component.json +104 -0
- package/es/ScrollBar/component.json +115 -0
- package/es/Search/component.json +177 -0
- package/es/Search/index.d.ts +1 -1
- package/es/Select/component.json +244 -0
- package/es/Select/index.d.ts +11 -8
- package/es/Select/index.js +441 -438
- package/es/SelectInput/component.json +184 -0
- package/es/SelectInput/index.d.ts +4 -4
- package/es/SelectInput/index.js +8 -8
- package/es/Selector/component.json +203 -0
- package/es/Selector/index.js +56 -50
- package/es/Selector/interface.d.ts +2 -2
- package/es/Selector/selectorData/index.js +1 -1
- package/es/Selector/selectorMain/index.js +3 -3
- package/es/Selector/selectorNode/index.js +1 -1
- package/es/Selector/util.d.ts +3 -3
- package/es/Selector/util.js +6 -12
- package/es/SelectorPicker/component.json +179 -0
- package/es/SelectorPicker/index.d.ts +5 -5
- package/es/SelectorPicker/index.js +15 -15
- package/es/SingleBox/component.json +151 -0
- package/es/SingleBox/index.d.ts +2 -2
- package/es/Slider/component.json +181 -0
- package/es/SortBox/component.json +108 -0
- package/es/Status/component.json +104 -0
- package/es/Stepper/component.json +129 -0
- package/es/Stepper/index.d.ts +2 -2
- package/es/Switch/component.json +207 -0
- package/es/Switch/index.css +1 -1
- package/es/Switch/index.d.ts +3 -2
- package/es/Switch/index.js +60 -59
- package/es/Switch/style/index.css +1 -1
- package/es/Table/component.json +547 -0
- package/es/Table/index.d.ts +2 -2
- package/es/Table/index.js +385 -382
- package/es/Table/interface.d.ts +30 -0
- package/es/Table/tableHead.js +1 -1
- package/es/Table/util.d.ts +1 -1
- package/es/Table/util.js +3 -12
- package/es/Tabs/component.json +227 -0
- package/es/Tag/component.json +221 -0
- package/es/Tag/index.css +1 -1
- package/es/Tag/index.d.ts +1 -1
- package/es/Tag/index.js +20 -20
- package/es/Tag/style/index.css +1 -1
- package/es/TextEditor/component.json +186 -0
- package/es/TextEditor/index.d.ts +5 -5
- package/es/TextEditor/index.js +1 -1
- package/es/TextField/component.json +290 -0
- package/es/TextField/index.d.ts +2 -2
- package/es/TextField/index.js +1 -1
- package/es/TimePicker/component.json +176 -0
- package/es/Timeline/component.json +110 -0
- package/es/Title/component.json +156 -0
- package/es/ToggleButton/component.json +153 -0
- package/es/ToggleButton/index.js +1 -1
- package/es/Tooltip/component.json +176 -0
- package/es/Tooltip/index.js +58 -53
- package/es/Tooltip/interface.d.ts +14 -1
- package/es/Tooltip/utils.js +6 -6
- package/es/Transfer/component.json +157 -0
- package/es/Tree/OperateBar/index.js +1 -1
- package/es/Tree/Tree.js +3 -3
- package/es/Tree/component.json +512 -0
- package/es/Tree/interface.d.ts +1 -1
- package/es/Upload/component.json +450 -0
- package/es/Upload/util.js +1 -1
- package/es/Utils/snack-kit-shims.d.ts +18 -0
- package/es/Utils/snack-kit-shims.js +19 -0
- package/es/Utils/type.d.ts +0 -6
- package/es/_virtual/index.js +5 -3
- package/es/_virtual/index2.js +2 -5
- package/es/index.d.ts +4 -0
- package/es/index.js +152 -150
- package/es/locale/en-US.d.ts +3 -0
- package/es/locale/en-US.js +3 -0
- package/es/locale/en_US.d.ts +361 -0
- package/es/locale/en_US.js +364 -0
- package/es/locale/index.d.ts +1 -723
- package/es/locale/index2.js +10 -0
- package/es/locale/zh-CN.d.ts +3 -0
- package/es/locale/zh-CN.js +3 -0
- package/es/locale/zh_CN.d.ts +361 -0
- package/es/locale/zh_CN.js +364 -0
- package/es/node_modules/classnames/index.js +1 -1
- package/lib/AlignBox/component.json +89 -0
- package/lib/AlignBox/index.css +1 -1
- package/lib/AlignBox/index.d.ts +6 -2
- package/lib/AlignBox/index.js +1 -1
- package/lib/AlignBox/style/index.css +1 -1
- package/lib/Anchor/anchorMenu/index.d.ts +2 -1
- package/lib/Anchor/anchorMenu/index.js +1 -1
- package/lib/Anchor/component.json +130 -0
- package/lib/Anchor/index.js +1 -1
- package/lib/Anchor/type.d.ts +8 -4
- package/lib/Argv/component.json +216 -0
- package/lib/Argv/dataGenerator/index.js +1 -1
- package/lib/Argv/index.d.ts +5 -6
- package/lib/Argv/index.js +1 -1
- package/lib/AutoBox/component.json +133 -0
- package/lib/AutoBox/index.d.ts +3 -3
- package/lib/AutoBox/index.js +1 -1
- package/lib/AutoBox/protal.d.ts +2 -2
- package/lib/AutoBox/protal.js +1 -1
- package/lib/AutoButton/component.json +109 -0
- package/lib/AutoButton/index.js +1 -1
- package/lib/AutoTips/autoTipsMultiline/index.d.ts +1 -1
- package/lib/AutoTips/autoTipsMultiline/index.js +1 -1
- package/lib/AutoTips/component.json +121 -0
- package/lib/AutoTips/index.js +1 -1
- package/lib/Badge/component.json +92 -0
- package/lib/Breadcrumbs/component.json +142 -0
- package/lib/Breadcrumbs/index.js +1 -1
- package/lib/Button/SplitButton.d.ts +2 -2
- package/lib/Button/component.json +168 -0
- package/lib/Button/index.js +1 -1
- package/lib/ButtonGroup/component.json +132 -0
- package/lib/ButtonGroup/index.d.ts +1 -1
- package/lib/Card/component.json +162 -0
- package/lib/Card/index.d.ts +2 -2
- package/lib/Card/index.js +1 -1
- package/lib/Carousel/component.json +142 -0
- package/lib/Carousel/index.d.ts +1 -1
- package/lib/Cascader/Cascader.js +1 -1
- package/lib/Cascader/OptionList/Column.js +1 -1
- package/lib/Cascader/OptionList/index.js +1 -1
- package/lib/Cascader/component.json +196 -0
- package/lib/Cascader/hooks/useEntities.js +1 -1
- package/lib/Cascader/interface.d.ts +1 -0
- package/lib/Cascader/utils/commonUtil.d.ts +1 -1
- package/lib/Cascader/utils/commonUtil.js +1 -1
- package/lib/Cascader/utils/treeUtil.d.ts +14 -5
- package/lib/Cascader/utils/treeUtil.js +1 -1
- package/lib/Checkbox/component.json +138 -0
- package/lib/CheckboxGroup/component.json +152 -0
- package/lib/CheckboxGroup/index.js +1 -1
- package/lib/CodeEditor/component.json +189 -0
- package/lib/CodeEditor/index.d.ts +11 -10
- package/lib/CodeEditor/index.js +1 -1
- package/lib/Collapse/component.json +166 -0
- package/lib/Collapse/index.d.ts +1 -1
- package/lib/Collapse/index.js +1 -1
- package/lib/CollapseBox/component.json +84 -0
- package/lib/CollapseLayout/component.json +155 -0
- package/lib/ColorPicker/component.json +142 -0
- package/lib/ComboSelect/component.json +181 -0
- package/lib/ComboSelect/index.js +1 -1
- package/lib/ComboSelect/interface.d.ts +2 -2
- package/lib/ComboSelect/utils.d.ts +3 -3
- package/lib/ComboSelect/utils.js +1 -1
- package/lib/Container/component.json +111 -0
- package/lib/ContentBox/component.json +81 -0
- package/lib/CopyText/component.json +118 -0
- package/lib/CycleSelector/component.json +98 -0
- package/lib/CycleSelector/index.js +1 -1
- package/lib/DatePicker/component.json +192 -0
- package/lib/DatePicker/generatePicker/generateRangePicker.js +1 -1
- package/lib/DatePicker/generatePicker/generateSinglePicker.js +1 -1
- package/lib/Descriptions/component.json +142 -0
- package/lib/Descriptions/index.d.ts +1 -1
- package/lib/Desktop/component.json +171 -0
- package/lib/Desktop/index.js +1 -1
- package/lib/DragVerify/component.json +114 -0
- package/lib/DragVerify/index.js +1 -1
- package/lib/Drawer/component.json +200 -0
- package/lib/Drawer/index.js +1 -1
- package/lib/Drawer/interface.d.ts +1 -1
- package/lib/Drawer/util.d.ts +1 -6
- package/lib/Drawer/util.js +1 -1
- package/lib/Dropdown/component.json +147 -0
- package/lib/Dropdown/index.js +1 -1
- package/lib/DynamicMultiBox/component.json +278 -0
- package/lib/DynamicMultiBox/formItem.d.ts +1 -1
- package/lib/DynamicMultiBox/index.js +1 -1
- package/lib/DynamicMultiBox/rowForm.d.ts +2 -2
- package/lib/Empty/component.json +123 -0
- package/lib/Empty/index.css +1 -1
- package/lib/Empty/index.d.ts +2 -2
- package/lib/Empty/index.js +1 -1
- package/lib/Empty/style/index.css +1 -1
- package/lib/ExpressionInput/HighlightOverlay.d.ts +8 -0
- package/lib/ExpressionInput/HighlightOverlay.js +2 -0
- package/lib/ExpressionInput/Popup.d.ts +19 -0
- package/lib/ExpressionInput/Popup.js +2 -0
- package/lib/ExpressionInput/component.json +79 -0
- package/lib/ExpressionInput/detectChainAtCursor.d.ts +17 -0
- package/lib/ExpressionInput/detectChainAtCursor.js +2 -0
- package/lib/ExpressionInput/filterCandidatesByPartial.d.ts +2 -0
- package/lib/ExpressionInput/filterCandidatesByPartial.js +2 -0
- package/lib/ExpressionInput/highlightSegments.d.ts +9 -0
- package/lib/ExpressionInput/highlightSegments.js +2 -0
- package/lib/ExpressionInput/index.css +1 -0
- package/lib/ExpressionInput/index.d.ts +5 -0
- package/lib/ExpressionInput/index.js +2 -0
- package/lib/ExpressionInput/interface.d.ts +52 -0
- package/lib/ExpressionInput/isExpressionValue.d.ts +5 -0
- package/lib/ExpressionInput/isExpressionValue.js +2 -0
- package/lib/ExpressionInput/lang/en_US.d.ts +4 -0
- package/lib/ExpressionInput/lang/en_US.js +2 -0
- package/lib/ExpressionInput/lang/index.d.ts +9 -0
- package/lib/ExpressionInput/lang/index.js +2 -0
- package/lib/ExpressionInput/lang/zh_CN.d.ts +4 -0
- package/lib/ExpressionInput/lang/zh_CN.js +2 -0
- package/lib/ExpressionInput/style/css.js +1 -0
- package/lib/ExpressionInput/style/index.css +1 -0
- package/lib/ExpressionInput/style/index.js +1 -0
- package/lib/ExpressionInput/useExpressionInput.d.ts +26 -0
- package/lib/ExpressionInput/useExpressionInput.js +2 -0
- package/lib/FieldForm/FieldFormItem/ItemHolder.js +1 -1
- package/lib/FieldForm/FieldFormItem/MemoInput.d.ts +2 -2
- package/lib/FieldForm/FieldFormItem/StatusProvider.js +1 -1
- package/lib/FieldForm/FieldFormItem/index.d.ts +6 -6
- package/lib/FieldForm/Form.d.ts +2 -2
- package/lib/FieldForm/Form.js +1 -1
- package/lib/FieldForm/FormItemInput.js +1 -1
- package/lib/FieldForm/FormItemLabel.js +1 -1
- package/lib/FieldForm/FormList.d.ts +2 -2
- package/lib/FieldForm/component.json +196 -0
- package/lib/FieldForm/context.d.ts +5 -1
- package/lib/FieldForm/context.js +1 -1
- package/lib/FieldForm/hooks/useForm.d.ts +4 -3
- package/lib/FieldForm/hooks/useFormInstance.d.ts +1 -1
- package/lib/FieldForm/hooks/useFormItemStatus.d.ts +9 -5
- package/lib/FieldForm/hooks/useFormItemStatus.js +1 -1
- package/lib/FieldForm/hooks/useItemRef.d.ts +1 -1
- package/lib/FieldForm/hooks/useItemRef.js +1 -1
- package/lib/Form/component.json +161 -0
- package/lib/Form/index.d.ts +52 -49
- package/lib/Form/index.js +1 -1
- package/lib/FormItem/compoments/defaultCompoments/index.d.ts +5 -5
- package/lib/FormItem/compoments/defaultCompoments/index.js +1 -1
- package/lib/FormItem/compoments/formCheckboxGroup/index.d.ts +2 -2
- package/lib/FormItem/compoments/formFile/index.js +1 -1
- package/lib/FormItem/compoments/formRadioGroup/index.d.ts +1 -1
- package/lib/FormItem/compoments/formSelect/index.d.ts +1 -1
- package/lib/FormItem/component.json +171 -0
- package/lib/FormItem/index.d.ts +5 -5
- package/lib/FormItem/index.js +1 -1
- package/lib/FormItem/itemType.js +1 -1
- package/lib/FunctionModal/component.json +197 -0
- package/lib/FunctionModal/dialog.d.ts +1 -1
- package/lib/FunctionModal/modalContext.d.ts +4 -1
- package/lib/GlobalContext/confirmLocale.js +1 -1
- package/lib/GlobalContext/index.js +1 -1
- package/lib/Help/component.json +118 -0
- package/lib/HelperText/component.json +126 -0
- package/lib/Image/PreviewGroup.js +1 -1
- package/lib/Image/component.json +165 -0
- package/lib/Image/index.js +1 -1
- package/lib/InputCode/component.json +191 -0
- package/lib/InputCode/index.d.ts +2 -2
- package/lib/InputLang/component.json +205 -0
- package/lib/InputLang/index.js +1 -1
- package/lib/InputNumber/component.json +162 -0
- package/lib/InputNumber/index.d.ts +13 -7
- package/lib/InputNumber/index.js +1 -1
- package/lib/Label/component.json +126 -0
- package/lib/Label/index.d.ts +2 -2
- package/lib/Loading/component.json +91 -0
- package/lib/Menu/component.json +180 -0
- package/lib/Menu/verticalMenuList.js +1 -1
- package/lib/Message/component.json +246 -0
- package/lib/Message/index.d.ts +2 -2
- package/lib/Message/index.js +1 -1
- package/lib/Modal/Confirm/index.d.ts +1 -1
- package/lib/Modal/Confirm/index.js +1 -1
- package/lib/Modal/component.json +277 -0
- package/lib/Modal/index.d.ts +85 -5
- package/lib/Modal/index.js +1 -1
- package/lib/Modal/interface.d.ts +1 -0
- package/lib/MultiBox/component.json +216 -0
- package/lib/MultiBox/index.js +1 -1
- package/lib/Notification/component.json +184 -0
- package/lib/OperateBtn/component.json +134 -0
- package/lib/OperateBtn/index.d.ts +3 -3
- package/lib/PageHeader/component.json +112 -0
- package/lib/PageHeader/horizontalMeun.js +1 -1
- package/lib/PageHeader/horizontalMeunRight.js +1 -1
- package/lib/Pagination/component.json +181 -0
- package/lib/Pagination/index.js +1 -1
- package/lib/ParauiProvider/index.js +1 -1
- package/lib/PasswordRules/component.json +105 -0
- package/lib/PasswordRules/index.d.ts +4 -4
- package/lib/PopConfirm/component.json +227 -0
- package/lib/PopConfirm/index.d.ts +1 -1
- package/lib/PopConfirm/index.js +1 -1
- package/lib/PopMenu/component.json +131 -0
- package/lib/PopMenu/hooks.d.ts +1 -1
- package/lib/PopMenu/index.js +1 -1
- package/lib/Popover/component.json +165 -0
- package/lib/Popover/index.js +1 -1
- package/lib/Progress/component.json +161 -0
- package/lib/Prompt/component.json +144 -0
- package/lib/Querying/component.json +96 -0
- package/lib/Querying/index.css +1 -1
- package/lib/Querying/index.d.ts +2 -2
- package/lib/Querying/index.js +1 -1
- package/lib/Querying/style/index.css +1 -1
- package/lib/QuickReply/QuickReplyCode/index.js +1 -1
- package/lib/QuickReply/component.json +129 -0
- package/lib/QuickReply/index.d.ts +1 -1
- package/lib/Radio/component.json +136 -0
- package/lib/RadioGroup/component.json +149 -0
- package/lib/RangeInput/component.json +198 -0
- package/lib/RangeInput/index.d.ts +15 -7
- package/lib/RangeInput/index.js +1 -1
- package/lib/Result/component.json +104 -0
- package/lib/ScrollBar/component.json +115 -0
- package/lib/Search/component.json +177 -0
- package/lib/Search/index.d.ts +1 -1
- package/lib/Select/component.json +244 -0
- package/lib/Select/index.d.ts +11 -8
- package/lib/Select/index.js +1 -1
- package/lib/SelectInput/component.json +184 -0
- package/lib/SelectInput/index.d.ts +4 -4
- package/lib/SelectInput/index.js +1 -1
- package/lib/Selector/component.json +203 -0
- package/lib/Selector/index.js +1 -1
- package/lib/Selector/interface.d.ts +2 -2
- package/lib/Selector/selectorData/index.js +1 -1
- package/lib/Selector/selectorMain/index.js +1 -1
- package/lib/Selector/selectorNode/index.js +1 -1
- package/lib/Selector/util.d.ts +3 -3
- package/lib/Selector/util.js +1 -1
- package/lib/SelectorPicker/component.json +179 -0
- package/lib/SelectorPicker/index.d.ts +5 -5
- package/lib/SelectorPicker/index.js +1 -1
- package/lib/SingleBox/component.json +151 -0
- package/lib/SingleBox/index.d.ts +2 -2
- package/lib/Slider/component.json +181 -0
- package/lib/SortBox/component.json +108 -0
- package/lib/Status/component.json +104 -0
- package/lib/Stepper/component.json +129 -0
- package/lib/Stepper/index.d.ts +2 -2
- package/lib/Switch/component.json +207 -0
- package/lib/Switch/index.css +1 -1
- package/lib/Switch/index.d.ts +3 -2
- package/lib/Switch/index.js +1 -1
- package/lib/Switch/style/index.css +1 -1
- package/lib/Table/component.json +547 -0
- package/lib/Table/index.d.ts +2 -2
- package/lib/Table/index.js +1 -1
- package/lib/Table/interface.d.ts +30 -0
- package/lib/Table/tableHead.js +1 -1
- package/lib/Table/util.d.ts +1 -1
- package/lib/Table/util.js +1 -1
- package/lib/Tabs/component.json +227 -0
- package/lib/Tag/component.json +221 -0
- package/lib/Tag/index.css +1 -1
- package/lib/Tag/index.d.ts +1 -1
- package/lib/Tag/index.js +1 -1
- package/lib/Tag/style/index.css +1 -1
- package/lib/TextEditor/component.json +186 -0
- package/lib/TextEditor/index.d.ts +5 -5
- package/lib/TextEditor/index.js +1 -1
- package/lib/TextField/component.json +290 -0
- package/lib/TextField/index.d.ts +2 -2
- package/lib/TextField/index.js +1 -1
- package/lib/TimePicker/component.json +176 -0
- package/lib/Timeline/component.json +110 -0
- package/lib/Title/component.json +156 -0
- package/lib/ToggleButton/component.json +153 -0
- package/lib/ToggleButton/index.js +1 -1
- package/lib/Tooltip/component.json +176 -0
- package/lib/Tooltip/index.js +1 -1
- package/lib/Tooltip/interface.d.ts +14 -1
- package/lib/Tooltip/utils.js +1 -1
- package/lib/Transfer/component.json +157 -0
- package/lib/Tree/OperateBar/index.js +2 -2
- package/lib/Tree/Tree.js +1 -1
- package/lib/Tree/component.json +512 -0
- package/lib/Tree/interface.d.ts +1 -1
- package/lib/Upload/component.json +450 -0
- package/lib/Upload/util.js +1 -1
- package/lib/Utils/snack-kit-shims.d.ts +18 -0
- package/lib/Utils/snack-kit-shims.js +2 -0
- package/lib/Utils/type.d.ts +0 -6
- package/lib/_virtual/index.js +1 -1
- package/lib/_virtual/index2.js +1 -1
- package/lib/index.d.ts +4 -0
- package/lib/index.js +1 -1
- package/lib/locale/en-US.d.ts +3 -0
- package/lib/locale/en-US.js +1 -1
- package/lib/locale/en_US.d.ts +361 -0
- package/lib/locale/en_US.js +2 -0
- package/lib/locale/index.d.ts +1 -723
- package/lib/locale/index2.js +2 -0
- package/lib/locale/zh-CN.d.ts +3 -0
- package/lib/locale/zh-CN.js +1 -1
- package/lib/locale/zh_CN.d.ts +361 -0
- package/lib/locale/zh_CN.js +2 -0
- package/lib/node_modules/classnames/index.js +1 -1
- package/package.json +24 -4
- package/es/_virtual/index3.js +0 -5
- package/es/_virtual/index4.js +0 -5
- package/es/node_modules/@para-snack/core/dist/index.js +0 -5231
- package/lib/_virtual/index3.js +0 -2
- package/lib/_virtual/index4.js +0 -2
- package/lib/node_modules/@para-snack/core/dist/index.js +0 -20
- /package/es/{InputCode → CodeEditor}/index.css +0 -0
- /package/es/{Utils/Hooks → Hooks}/useResizeObserver.d.ts +0 -0
- /package/es/{Utils/Hooks → Hooks}/useResizeObserver.js +0 -0
- /package/lib/{Utils/Hooks → Hooks}/useResizeObserver.d.ts +0 -0
- /package/lib/{Utils/Hooks → Hooks}/useResizeObserver.js +0 -0
package/es/Modal/index.js
CHANGED
|
@@ -1,70 +1,107 @@
|
|
|
1
1
|
import { j as t } from "../_virtual/jsx-runtime.js";
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import { Button as
|
|
5
|
-
import { Close as
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import { Confirm as
|
|
9
|
-
import
|
|
10
|
-
import { $prefixCls as
|
|
11
|
-
import
|
|
2
|
+
import s from "react";
|
|
3
|
+
import Me from "rc-dialog";
|
|
4
|
+
import { Button as C } from "../Button/index.js";
|
|
5
|
+
import { Close as Ae } from "../node_modules/@para-ui/icons/Close/index.js";
|
|
6
|
+
import $e from "../GlobalContext/useFormatMessage.js";
|
|
7
|
+
import Re from "./lang/index.js";
|
|
8
|
+
import { Confirm as qe } from "./Confirm/index.js";
|
|
9
|
+
import H from "clsx";
|
|
10
|
+
import { $prefixCls as F } from "../GlobalContext/constant.js";
|
|
11
|
+
import je from "../AutoTips/index.js";
|
|
12
12
|
import './index.css';/* empty css */
|
|
13
|
-
let
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
x:
|
|
17
|
-
y:
|
|
13
|
+
let h;
|
|
14
|
+
const ze = (e) => {
|
|
15
|
+
h = {
|
|
16
|
+
x: e.pageX,
|
|
17
|
+
y: e.pageY
|
|
18
18
|
}, setTimeout(() => {
|
|
19
|
-
|
|
19
|
+
h = null;
|
|
20
20
|
}, 100);
|
|
21
21
|
};
|
|
22
|
-
window.document.documentElement && document.documentElement.addEventListener("click",
|
|
23
|
-
const
|
|
22
|
+
window.document.documentElement && document.documentElement.addEventListener("click", ze, !0);
|
|
23
|
+
const Le = (e) => {
|
|
24
24
|
const {
|
|
25
|
-
open:
|
|
26
|
-
visible:
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
},
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
25
|
+
open: u,
|
|
26
|
+
visible: f,
|
|
27
|
+
defaultOpen: k,
|
|
28
|
+
closeIcon: G,
|
|
29
|
+
centered: I = !0,
|
|
30
|
+
focusTriggerAfterClose: T = !0,
|
|
31
|
+
title: _,
|
|
32
|
+
footer: V,
|
|
33
|
+
showActions: K = !0,
|
|
34
|
+
actions: P,
|
|
35
|
+
header: p,
|
|
36
|
+
hideHeader: W = !1,
|
|
37
|
+
showCancel: X = !0,
|
|
38
|
+
maskClosable: L = !1,
|
|
39
|
+
disableBackdropClick: J = !0,
|
|
40
|
+
closeOnBackdrop: x,
|
|
41
|
+
keyboard: Y = !1,
|
|
42
|
+
disableEscapeKeyDown: q = !0,
|
|
43
|
+
closeOnEsc: v,
|
|
44
|
+
restoreFocusOnClose: g,
|
|
45
|
+
fullScreen: Q,
|
|
46
|
+
customizeSize: U,
|
|
47
|
+
style: Z,
|
|
48
|
+
bodyStyle: ee,
|
|
49
|
+
contentWidth: oe,
|
|
50
|
+
contentHeight: E,
|
|
51
|
+
contentStyle: N,
|
|
52
|
+
size: r = "md",
|
|
53
|
+
children: ne,
|
|
54
|
+
closable: te = !0,
|
|
55
|
+
mask: O = !0,
|
|
56
|
+
...se
|
|
57
|
+
} = e, w = $e("Modal", Re), S = e.onClose !== void 0, b = s.useRef(!1);
|
|
58
|
+
s.useEffect(() => {
|
|
59
|
+
process.env.NODE_ENV !== "production" && S && !b.current && (b.current = !0, console.warn(
|
|
60
|
+
"[Modal] onClose 已在 v5.x.next 标记为 @deprecated,将在 v6.0 移除。请迁移到 onDismiss(处理 X/ESC/mask 关闭)+ onOk(确定按钮)+ onCancel(取消按钮)三回调模式。详见 BREAKING-CHANGES §B-Modal-props-rework。"
|
|
61
|
+
));
|
|
62
|
+
}, [S]);
|
|
63
|
+
const y = f !== void 0, B = s.useRef(!1);
|
|
64
|
+
s.useEffect(() => {
|
|
65
|
+
process.env.NODE_ENV !== "production" && y && !B.current && (B.current = !0, console.warn(
|
|
66
|
+
"[Modal] visible 已在 v5.x.next 标记为 @deprecated,将在 v6.0 移除。请改用 open prop。详见 BREAKING-CHANGES §B-Modal-props-rework 子条 #3-A"
|
|
67
|
+
));
|
|
68
|
+
}, [y]);
|
|
69
|
+
const M = e.onOk !== void 0, A = e.onSubmit !== void 0, $ = s.useRef(!1);
|
|
70
|
+
s.useEffect(() => {
|
|
71
|
+
process.env.NODE_ENV !== "production" && M && !A && !$.current && ($.current = !0, console.warn(
|
|
72
|
+
"[Modal] onOk 已在 v5.x.next 标记为 @deprecated,将在 v6.0 移除。请改用 onSubmit prop(语义更清晰)。详见 BREAKING-CHANGES §B-Modal-props-rework"
|
|
73
|
+
));
|
|
74
|
+
}, [M, A]);
|
|
75
|
+
const l = u !== void 0 || f !== void 0, [le, i] = s.useState(k ?? !1), re = l ? u ?? f ?? !1 : le, R = k !== void 0, j = u !== void 0;
|
|
76
|
+
s.useEffect(() => {
|
|
77
|
+
process.env.NODE_ENV !== "production" && j && R && console.warn(
|
|
78
|
+
"[Modal] 同时传 open + defaultOpen,defaultOpen 被忽略(open 优先,受控模式)。详见 BREAKING-CHANGES §B-Modal-props-rework 子条 #2"
|
|
79
|
+
);
|
|
80
|
+
}, [j, R]);
|
|
81
|
+
const z = s.useRef(l);
|
|
82
|
+
s.useEffect(() => {
|
|
83
|
+
z.current !== l && (process.env.NODE_ENV !== "production" && console.warn("[Modal] open 受控/非受控状态运行时切换,React 不支持此模式,请保持一致。"), z.current = l);
|
|
84
|
+
}, [l]);
|
|
85
|
+
const ae = Q || r === "fullScreen", n = `${F}-modal`, ce = v !== void 0 ? v : !q, ie = x !== void 0 ? x : !J, de = g !== void 0 ? g : T, ue = (o) => {
|
|
86
|
+
e.onCancel?.(o), e.onClose?.("cancel"), l || i(!1);
|
|
87
|
+
}, fe = (o) => {
|
|
88
|
+
e.onClose !== void 0 ? (e.onCancel?.(o), e.onClose("x")) : e.onDismiss?.("x"), l || i(!1);
|
|
89
|
+
}, me = (o) => {
|
|
90
|
+
const a = o && o.type === "keydown" ? "esc" : "mask";
|
|
91
|
+
e.onClose !== void 0 ? (e.onCancel?.(o), e.onClose(a)) : e.onDismiss?.(a), l || i(!1);
|
|
92
|
+
}, Ce = (o) => {
|
|
93
|
+
e.onSubmit ? e.onSubmit(o) : e.onOk?.(o), e.onClose?.("ok"), l || i(!1);
|
|
94
|
+
}, he = () => {
|
|
95
|
+
const o = {
|
|
96
|
+
sm: `${n}-sm`,
|
|
97
|
+
md: `${n}-md`,
|
|
98
|
+
lg: `${n}-lg`,
|
|
99
|
+
auto: `${n}-auto`,
|
|
100
|
+
fullScreen: `${n}-fullscreen`
|
|
64
101
|
};
|
|
65
|
-
if (!
|
|
66
|
-
return
|
|
67
|
-
},
|
|
102
|
+
if (!N)
|
|
103
|
+
return ae ? o.fullScreen : o[r];
|
|
104
|
+
}, ke = () => !r || r === "fullScreen" || r === "auto" ? void 0 : {
|
|
68
105
|
sm: {
|
|
69
106
|
width: 430,
|
|
70
107
|
maxHeight: 118
|
|
@@ -77,94 +114,94 @@ const we = (o) => {
|
|
|
77
114
|
width: 948,
|
|
78
115
|
maxHeight: 478
|
|
79
116
|
}
|
|
80
|
-
}[
|
|
81
|
-
const { maxHeight:
|
|
117
|
+
}[r], pe = () => O ? `${n}-with-mask` : `${n}-without-mask`, xe = () => ({ ...U, ...Z }), ve = () => {
|
|
118
|
+
const { maxHeight: o, width: a } = ke() || {};
|
|
82
119
|
return {
|
|
83
120
|
// contentWidth 和 contentHeight 优先级总是最高
|
|
84
|
-
maxHeight:
|
|
85
|
-
width:
|
|
86
|
-
height:
|
|
121
|
+
maxHeight: E || o || "calc(100vh - 142px)",
|
|
122
|
+
width: oe || a,
|
|
123
|
+
height: E,
|
|
87
124
|
// minHeight: contentHeight || 118,
|
|
88
|
-
...
|
|
89
|
-
...
|
|
125
|
+
...ee,
|
|
126
|
+
...N
|
|
90
127
|
};
|
|
91
|
-
},
|
|
92
|
-
if (
|
|
93
|
-
if (
|
|
94
|
-
const
|
|
95
|
-
|
|
128
|
+
}, ge = () => {
|
|
129
|
+
if (W) return null;
|
|
130
|
+
if (p) return p;
|
|
131
|
+
const o = te && /* @__PURE__ */ t.jsx(
|
|
132
|
+
C.IconButton,
|
|
96
133
|
{
|
|
97
|
-
onClick:
|
|
98
|
-
className: `${
|
|
134
|
+
onClick: fe,
|
|
135
|
+
className: `${n}-close`,
|
|
99
136
|
variant: "outlined",
|
|
100
137
|
size: "small",
|
|
101
|
-
children:
|
|
138
|
+
children: G || /* @__PURE__ */ t.jsx(Ae, { className: `${n}-close-icon` })
|
|
102
139
|
}
|
|
103
140
|
);
|
|
104
141
|
return /* @__PURE__ */ t.jsxs(t.Fragment, { children: [
|
|
105
|
-
/* @__PURE__ */ t.jsx(
|
|
106
|
-
|
|
142
|
+
/* @__PURE__ */ t.jsx(je, { className: `${n}-title-text`, children: _ }),
|
|
143
|
+
o
|
|
107
144
|
] });
|
|
108
|
-
},
|
|
109
|
-
if (!
|
|
110
|
-
const { okText:
|
|
111
|
-
|
|
145
|
+
}, Ee = () => {
|
|
146
|
+
if (!K) return null;
|
|
147
|
+
const { okText: o, cancelText: a, okButtonProps: we, cancelButtonProps: Se, confirmLoading: be = !1 } = e, ye = /* @__PURE__ */ t.jsx(
|
|
148
|
+
C,
|
|
112
149
|
{
|
|
113
150
|
variant: "contained",
|
|
114
151
|
size: "large",
|
|
115
|
-
loading:
|
|
116
|
-
onClick:
|
|
117
|
-
...
|
|
118
|
-
children:
|
|
152
|
+
loading: be,
|
|
153
|
+
onClick: Ce,
|
|
154
|
+
...we,
|
|
155
|
+
children: o ?? w({ id: "ok" })
|
|
119
156
|
}
|
|
120
|
-
),
|
|
121
|
-
|
|
157
|
+
), D = [X && /* @__PURE__ */ t.jsx(
|
|
158
|
+
C,
|
|
122
159
|
{
|
|
123
160
|
variant: "outlined",
|
|
124
161
|
size: "large",
|
|
125
|
-
onClick:
|
|
126
|
-
...
|
|
127
|
-
children:
|
|
162
|
+
onClick: ue,
|
|
163
|
+
...Se,
|
|
164
|
+
children: a ?? w({ id: "cancel" })
|
|
128
165
|
}
|
|
129
|
-
),
|
|
130
|
-
if (typeof
|
|
131
|
-
const
|
|
132
|
-
return /* @__PURE__ */ t.jsx(t.Fragment, { children: Array.isArray(
|
|
133
|
-
} else if (
|
|
134
|
-
return
|
|
135
|
-
return /* @__PURE__ */ t.jsx(t.Fragment, { children:
|
|
136
|
-
},
|
|
137
|
-
[`${
|
|
138
|
-
}),
|
|
166
|
+
), ye], d = P ?? V;
|
|
167
|
+
if (typeof d == "function") {
|
|
168
|
+
const c = d(D);
|
|
169
|
+
return /* @__PURE__ */ t.jsx(t.Fragment, { children: Array.isArray(c) ? c.map((m, Be) => /* @__PURE__ */ t.jsx(s.Fragment, { children: m }, Be)) : c });
|
|
170
|
+
} else if (d)
|
|
171
|
+
return d;
|
|
172
|
+
return /* @__PURE__ */ t.jsx(t.Fragment, { children: D.map((c, m) => /* @__PURE__ */ t.jsx(s.Fragment, { children: c }, m)) });
|
|
173
|
+
}, Ne = H(e.wrapClassName, {
|
|
174
|
+
[`${n}-centered`]: I
|
|
175
|
+
}), Oe = H(e.className, `${F}-scrollbar-small`, he(), pe());
|
|
139
176
|
return /* @__PURE__ */ t.jsx(
|
|
140
|
-
|
|
177
|
+
Me,
|
|
141
178
|
{
|
|
142
|
-
...
|
|
143
|
-
mask:
|
|
144
|
-
visible:
|
|
145
|
-
title:
|
|
146
|
-
footer:
|
|
147
|
-
style:
|
|
148
|
-
bodyStyle:
|
|
149
|
-
prefixCls:
|
|
150
|
-
className:
|
|
151
|
-
wrapClassName:
|
|
152
|
-
mousePosition:
|
|
153
|
-
onClose:
|
|
179
|
+
...se,
|
|
180
|
+
mask: O,
|
|
181
|
+
visible: re,
|
|
182
|
+
title: ge(),
|
|
183
|
+
footer: Ee(),
|
|
184
|
+
style: xe(),
|
|
185
|
+
bodyStyle: ve(),
|
|
186
|
+
prefixCls: n,
|
|
187
|
+
className: Oe,
|
|
188
|
+
wrapClassName: Ne,
|
|
189
|
+
mousePosition: h,
|
|
190
|
+
onClose: me,
|
|
154
191
|
closable: !1,
|
|
155
192
|
closeIcon: null,
|
|
156
|
-
maskClosable:
|
|
157
|
-
keyboard:
|
|
158
|
-
focusTriggerAfterClose:
|
|
159
|
-
transitionName: `${
|
|
160
|
-
maskTransitionName: `${
|
|
161
|
-
children:
|
|
193
|
+
maskClosable: ie || L,
|
|
194
|
+
keyboard: ce || Y,
|
|
195
|
+
focusTriggerAfterClose: de,
|
|
196
|
+
transitionName: `${n}-zoom`,
|
|
197
|
+
maskTransitionName: `${n}-fade`,
|
|
198
|
+
children: ne
|
|
162
199
|
}
|
|
163
200
|
);
|
|
164
201
|
};
|
|
165
202
|
export {
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
203
|
+
qe as Confirm,
|
|
204
|
+
Le as Modal,
|
|
205
|
+
Le as default
|
|
169
206
|
};
|
|
170
207
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type ModalDismissReason = 'esc' | 'mask' | 'x';
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "MultiBox",
|
|
3
|
+
"category": "Data Entry",
|
|
4
|
+
"description": "键值对列表输入组件(支持增删行、补全、行级禁用)。内部用 Record<string,string>[] 作为受控值类型,默认字段名为 label/value,可通过 replaceFields 改成业务字段名",
|
|
5
|
+
"semantic": {
|
|
6
|
+
"intent": [
|
|
7
|
+
"键值录入",
|
|
8
|
+
"参数配置",
|
|
9
|
+
"可增删行的键值对编辑"
|
|
10
|
+
],
|
|
11
|
+
"useCases": [
|
|
12
|
+
"HTTP Headers 编辑器",
|
|
13
|
+
"环境变量 / 配置项",
|
|
14
|
+
"URL Query 参数",
|
|
15
|
+
"Dictionary / Map 类型业务数据录入"
|
|
16
|
+
],
|
|
17
|
+
"riskLevel": "normal"
|
|
18
|
+
},
|
|
19
|
+
"protocolSummary": "**核心:value 类型是 Record<string, string>[],默认字段名 label / value**。业务类型(如 `{key, value}[]` 或 `{name, val}[]`)通过 replaceFields 映射进来。**replaceFields 是 partial override**(L115 实证),只写 `{key: 'k'}` 会保留默认的 `value: 'value'` 映射。onChange 回调返回的字段名跟随 replaceFields(双向联动)",
|
|
20
|
+
"typeCastingGuide": {
|
|
21
|
+
"issue": "R23 通过率 2/5 fail 根因:业务类型如 `{key: string; value: string}[]` 想透传给 MultiBox.value(类型为 `Record<string,string>[]`),sub-agent 写 `value as Record<string,string>[]` —— **TS 5.x nominal 类型严格,即使结构兼容也拒绝直接 as cast** (TS2352 'may be a mistake because neither type sufficiently overlaps')",
|
|
22
|
+
"wrongPattern": "// ❌ 错误:TS 5.x 拒绝\nconst value = headers as Record<string, string>[];\nconst handleChange = (val: Record<string, string>[]) => setHeaders(val as HeaderPair[]);",
|
|
23
|
+
"correctPatternA": "**推荐:不要 cast,直接用 Record<string, string>[] 业务类型**\n```ts\ninterface HttpEditor {\n headers: Record<string, string>[]; // 业务类型直接用 MultiBox 期望类型\n onHeadersChange: (next: Record<string, string>[]) => void;\n}\n<MultiBox value={headers} onChange={onHeadersChange} replaceFields={{ key: 'key', value: 'value' }} />\n```\n业务接口字段名是 `key`/`value` 时,Record<string,string>[] 本来就能容纳,无需自定义业务类型",
|
|
24
|
+
"correctPatternB": "**如必须保留自定义业务类型 + 双向 cast:用 unknown 中转**\n```ts\ninterface HeaderPair { key: string; value: string; }\nconst handleChange = (val: Record<string, string>[]) => {\n onHeadersChange(val as unknown as HeaderPair[]);\n};\n<MultiBox\n value={headers as unknown as Record<string, string>[]}\n onChange={handleChange}\n replaceFields={{ key: 'key', value: 'value' }}\n/>\n```\n**注意 unknown 中转是逃避 TS 严格 cast 校验,业务有责任保证字段名真的兼容**",
|
|
25
|
+
"correctPatternC": "**改 replaceFields 适配业务字段名**(最干净):\n```ts\n// 业务数据是 {name, val}[],不是 {key, value}[]\nconst data: {name: string; val: string}[] = [...];\n<MultiBox\n value={data as unknown as Record<string, string>[]}\n onChange={(v) => setData(v as unknown as {name:string;val:string}[])}\n replaceFields={{ key: 'name', value: 'val' }} // ← 让 src 按 'name'/'val' 解析\n/>\n```"
|
|
26
|
+
},
|
|
27
|
+
"replaceFieldsBehavior": {
|
|
28
|
+
"default": "{ key: 'label', value: 'value' }",
|
|
29
|
+
"mergeSemantics": "**partial override(浅合并)**:src 内部 `{ ...defaultReplaceFields, ...userReplaceFields }`。只写一个字段会保留另一个默认。例如 `replaceFields={{ key: 'name' }}` 等价于 `{ key: 'name', value: 'value' }`",
|
|
30
|
+
"outputBinding": "onChange 回调返回的 val 数组中每项字段名**跟随 replaceFields 设置**(双向联动)。即:`replaceFields={{ key: 'name' }}` 时 onChange 收到的 val 是 `{ name: string; value: string }[]` 形态",
|
|
31
|
+
"warning": "改 replaceFields 后必须同步改 value/defaultValue 元素的字段名,单改一侧(只改 replaceFields 没改 value 数据)会导致 src 找不到字段,显示空内容"
|
|
32
|
+
},
|
|
33
|
+
"variants": {
|
|
34
|
+
"default": {
|
|
35
|
+
"meaning": "默认样式"
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
"states": [
|
|
39
|
+
"default",
|
|
40
|
+
"disabled",
|
|
41
|
+
"error"
|
|
42
|
+
],
|
|
43
|
+
"idealProps": {
|
|
44
|
+
"size": {
|
|
45
|
+
"type": "enum",
|
|
46
|
+
"values": [
|
|
47
|
+
"small",
|
|
48
|
+
"medium",
|
|
49
|
+
"large"
|
|
50
|
+
],
|
|
51
|
+
"default": "large",
|
|
52
|
+
"description": "控件大小(影响 TextField 行高 + padding,具体像素由 SCSS 变量决定)"
|
|
53
|
+
},
|
|
54
|
+
"label": {
|
|
55
|
+
"type": "ReactNode",
|
|
56
|
+
"description": "标题"
|
|
57
|
+
},
|
|
58
|
+
"labelTooltip": {
|
|
59
|
+
"type": "LabelTooltipProps",
|
|
60
|
+
"description": "标题旁帮助提示"
|
|
61
|
+
},
|
|
62
|
+
"labelSign": {
|
|
63
|
+
"type": "ReactNode",
|
|
64
|
+
"description": "标题旁次级提示(短文本/标签)"
|
|
65
|
+
},
|
|
66
|
+
"placeholderKey": {
|
|
67
|
+
"type": "ReactNode",
|
|
68
|
+
"description": "键侧提示语"
|
|
69
|
+
},
|
|
70
|
+
"placeholderValue": {
|
|
71
|
+
"type": "ReactNode",
|
|
72
|
+
"description": "值侧提示语"
|
|
73
|
+
},
|
|
74
|
+
"separator": {
|
|
75
|
+
"type": "ReactNode",
|
|
76
|
+
"default": "':'",
|
|
77
|
+
"description": "键/值之间的分隔符 UI"
|
|
78
|
+
},
|
|
79
|
+
"value": {
|
|
80
|
+
"type": "Record<string, string>[]",
|
|
81
|
+
"description": "**受控值**。每项是一行键/值对象,默认按 'label'/'value' 字段名解析,可通过 replaceFields 改字段名。**业务类型如 `{key, value}[]` 与 Record<string,string>[] 的 TS cast 处理见 typeCastingGuide**"
|
|
82
|
+
},
|
|
83
|
+
"defaultValue": {
|
|
84
|
+
"type": "Record<string, string>[]",
|
|
85
|
+
"description": "**非受控初始值**;形态同 value。仅 mount + 引用变化时灌入"
|
|
86
|
+
},
|
|
87
|
+
"onChange": {
|
|
88
|
+
"type": "(val: Record<string, string>[]) => void",
|
|
89
|
+
"description": "值变化回调;val 是**完整对象数组**(不是 string[]),字段名跟随 replaceFields 设置"
|
|
90
|
+
},
|
|
91
|
+
"replaceFields": {
|
|
92
|
+
"type": "{ key?: string; value?: string }",
|
|
93
|
+
"default": "{ key: 'label', value: 'value' }",
|
|
94
|
+
"description": "**partial override**(浅合并默认值,见 replaceFieldsBehavior.mergeSemantics)。改后:1) value/defaultValue 元素字段名必须同步改 2) onChange 回调返回的字段名也跟随改(双向联动)。**单改一侧 src 找不到字段,显示空内容**"
|
|
95
|
+
},
|
|
96
|
+
"required": {
|
|
97
|
+
"type": "boolean",
|
|
98
|
+
"default": "false",
|
|
99
|
+
"description": "是否必填(影响 label 后是否显示红星 * 等视觉)"
|
|
100
|
+
},
|
|
101
|
+
"disabled": {
|
|
102
|
+
"type": "boolean | { [name: string]: boolean }[]",
|
|
103
|
+
"default": "false",
|
|
104
|
+
"description": "**两种形态**:1) `true` 整体禁用所有行所有字段;2) `{ [name: string]: boolean }[]` **行级 + 字段级禁用**——数组每项对应一行,对象 key 对应 replaceFields 的字段名(默认 'label'/'value'),value 为 true 时禁用该行该字段。例如 `[{label: true, value: false}, {label: false, value: true}]` 禁用第 1 行的 key 列 + 第 2 行的 value 列"
|
|
105
|
+
},
|
|
106
|
+
"disabledTooltip": {
|
|
107
|
+
"type": "TooltipProps",
|
|
108
|
+
"description": "禁用态 hover 提示"
|
|
109
|
+
},
|
|
110
|
+
"helperText": {
|
|
111
|
+
"type": "ReactNode | Record<string, ReactNode>[]",
|
|
112
|
+
"description": "**两种形态**:① ReactNode/string = 整体错误提示文字(typeof === 'string' 时激活 error 视觉,所有行都标红);② Record<string, ReactNode>[] = **row-level + 字段级错误**,数组每项对应一行,对象 key 对应 replaceFields 字段名,value 为错误文本"
|
|
113
|
+
},
|
|
114
|
+
"hideErrorDom": {
|
|
115
|
+
"type": "boolean | null",
|
|
116
|
+
"description": "见 HelperText 同名 prop:true=无错误不渲染,false=都渲染(布局稳定),null=永不渲染"
|
|
117
|
+
},
|
|
118
|
+
"fetchSuggestionsKey": {
|
|
119
|
+
"type": "(val: string, cb: (data: Record<string, unknown>[]) => void) => void",
|
|
120
|
+
"description": "**键侧补全数据源**(用户输入 key 时调用)。**cb 接受 Record<string, unknown>[]** 不是 string[]。每项至少要有 label 字段(显示在下拉),value 字段(选中后填回)。例:`cb([{label: 'Content-Type', value: 'Content-Type'}, ...])`。**通常与 fetchSuggestionsValue 成对使用**"
|
|
121
|
+
},
|
|
122
|
+
"fetchSuggestionsValue": {
|
|
123
|
+
"type": "(val: string, cb: (data: Record<string, unknown>[]) => void) => void",
|
|
124
|
+
"description": "**值侧补全数据源**;cb 形态同 fetchSuggestionsKey"
|
|
125
|
+
},
|
|
126
|
+
"keyOtherProps": {
|
|
127
|
+
"type": "(index: number, val: string) => TextFieldProps",
|
|
128
|
+
"description": "键侧 TextField 的额外 props(按 index 区分行,可实现某行只读 / 加 prefix 等)"
|
|
129
|
+
},
|
|
130
|
+
"valueOtherProps": {
|
|
131
|
+
"type": "(index: number, val: string) => TextFieldProps",
|
|
132
|
+
"description": "值侧 TextField 的额外 props"
|
|
133
|
+
}
|
|
134
|
+
},
|
|
135
|
+
"commonMisconceptions": {
|
|
136
|
+
"M1": {
|
|
137
|
+
"wrong": "用 `as Record<string, string>[]` 把业务类型 `HeaderPair[]` / `EnvVar[]` 强制转给 MultiBox.value",
|
|
138
|
+
"result": "**TS 5.x 报错 TS2352** 'Conversion may be a mistake because neither type sufficiently overlaps' —— TS nominal 类型严格,即使结构兼容也拒绝。R23 MultiBox-001/002/003 fail 都是这个",
|
|
139
|
+
"fix": "**3 种方案**(详见 typeCastingGuide):A) 业务直接用 Record<string,string>[] 类型(最干净);B) 用 `as unknown as` 中转(逃避 TS 严格 cast);C) 改 replaceFields 适配业务字段名 + unknown 中转"
|
|
140
|
+
},
|
|
141
|
+
"M2": {
|
|
142
|
+
"wrong": "改 replaceFields 字段名但忘记同步改 value 数据: `replaceFields={{ key: 'name' }} value={[{label: 'x', value: 'y'}]}`(value 仍按默认 label/value 字段名)",
|
|
143
|
+
"result": "src 按 replaceFieldsCom.key='name' 在 value 元素里找 `.name` 字段,**找不到 → 显示空内容**",
|
|
144
|
+
"fix": "改 replaceFields 时必须同步改 value 元素字段名:`replaceFields={{ key: 'name' }} value={[{name: 'x', value: 'y'}]}`(注意 value 字段也要保留或同时改 replaceFields.value)"
|
|
145
|
+
},
|
|
146
|
+
"M3": {
|
|
147
|
+
"wrong": "假设 replaceFields 是完全替换语义: `replaceFields={{ key: 'k' }}` 期望 value 字段名也是 'k'",
|
|
148
|
+
"result": "**replaceFields 是 partial override**(浅合并),只写 key 会保留默认 value:'value'。所以 `value={[{k: 'x', val: 'y'}]}` 不工作,需写成 `[{k: 'x', value: 'y'}]`",
|
|
149
|
+
"fix": "1) 单字段改:确保 value 用对应字段名 + 默认 value:'value';2) 双字段都改:`replaceFields={{ key: 'k', value: 'v' }}` 双向同步"
|
|
150
|
+
},
|
|
151
|
+
"M4": {
|
|
152
|
+
"wrong": "假设 disabled 只是 boolean: `disabled={ rowIndex === 0 }`",
|
|
153
|
+
"result": "整体禁用整个 MultiBox,而非'第 1 行禁用'。**disabled 支持 `{ [name]: boolean }[]` 形态做行级 + 字段级禁用**",
|
|
154
|
+
"fix": "用对象数组形态:`disabled={[{label: true, value: false}, {label: false, value: false}]}`(第 1 行 key 列禁用,其他全开)"
|
|
155
|
+
},
|
|
156
|
+
"M5": {
|
|
157
|
+
"wrong": "用 helperText: string 期望某行某列单独红框",
|
|
158
|
+
"result": "**string 形态的 helperText 激活整体错误视觉**(所有行标红),不是 row-level",
|
|
159
|
+
"fix": "row-level + 字段级错误:用 `Record<string, ReactNode>[]` 形态: `helperText={[{label: 'key 重复'}, {}, {value: '格式错误'}]}`(第 1 行 key 列报错 + 第 3 行 value 列报错)"
|
|
160
|
+
}
|
|
161
|
+
},
|
|
162
|
+
"do": [
|
|
163
|
+
"**优先用 Record<string, string>[] 作为业务类型**,避免 TS cast(M1 patternA)",
|
|
164
|
+
"**必须自定义业务类型**:用 `as unknown as` 中转(M1 patternB)",
|
|
165
|
+
"**业务字段名不叫 label/value**:同时改 replaceFields **和** value/defaultValue 数据字段名(M2/M3)",
|
|
166
|
+
"行级禁用:用 `disabled={[{label/value: boolean}]}` 对象数组形态(M4)",
|
|
167
|
+
"行级错误:用 `helperText={[{label/value: errorMsg}]}` 对象数组形态(M5)",
|
|
168
|
+
"自动补全:fetchSuggestionsKey 和 fetchSuggestionsValue 通常成对使用,cb 接受 `{label, value}` 对象数组(不是 string[])"
|
|
169
|
+
],
|
|
170
|
+
"dont": [
|
|
171
|
+
"**不要**直接 `as Record<string, string>[]` 强制 cast 业务类型——TS5 严格拒绝(M1)",
|
|
172
|
+
"**不要**单改 replaceFields 而不改 value 字段名——src 找不到字段(M2)",
|
|
173
|
+
"**不要**假设 replaceFields 完全替换——是 partial override(M3)",
|
|
174
|
+
"**不要**假设 disabled 只能 boolean——对象数组形态做行级禁用(M4)",
|
|
175
|
+
"**不要**用 string helperText 期望 row-level 错误——整体激活(M5)",
|
|
176
|
+
"键或值过长时不做截断/省略——TextField 自身样式",
|
|
177
|
+
"复杂嵌套对象录入——MultiBox 仅 2 层(key + value),换 FieldForm + dynamicFields"
|
|
178
|
+
],
|
|
179
|
+
"events": {
|
|
180
|
+
"onChange": {
|
|
181
|
+
"signature": "(val: Record<string, string>[]) => void",
|
|
182
|
+
"asyncSupported": false,
|
|
183
|
+
"examples": [
|
|
184
|
+
"onChange={(val) => setHeaders(val)} — val 是完整对象数组,字段名跟随 replaceFields 设置(默认 label/value)",
|
|
185
|
+
"增/删行也触发 onChange,val 是操作后完整的新数组(不是 diff)",
|
|
186
|
+
"行内 TextField 值变化实时触发 onChange(不是 onBlur)"
|
|
187
|
+
],
|
|
188
|
+
"commonMistakes": [
|
|
189
|
+
"期望 onChange 返回 string[]——实际返回 Record<string, string>[](对象数组),需取对应字段:val.map(v => v.value)",
|
|
190
|
+
"用 as Record<string, string>[] 把业务类型传给 onChange setter——TS 5.x 拒绝结构兼容 cast,需用 as unknown as 中转",
|
|
191
|
+
"只处理 onChange 不处理新增/删除——增删操作也走同一 onChange,val 是全量数组,不是操作了哪一行"
|
|
192
|
+
]
|
|
193
|
+
}
|
|
194
|
+
},
|
|
195
|
+
"typescriptPitfalls": [
|
|
196
|
+
{
|
|
197
|
+
"issue": "业务类型 `{key: string; value: string}[]` 与 `Record<string, string>[]` 在 TS 5.x 不能直接 as cast",
|
|
198
|
+
"wrong": "const headers: {key: string; value: string}[] = []; <MultiBox value={headers as Record<string, string>[]} /> // TS2352 拒绝",
|
|
199
|
+
"right": "<MultiBox value={headers as unknown as Record<string, string>[]} replaceFields={{ key: 'key', value: 'value' }} /> // unknown 中转"
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
"issue": "改 replaceFields.key 但不改 value 数据字段名,src 找不到字段显示空",
|
|
203
|
+
"wrong": "replaceFields={{ key: 'name' }} value={[{label: 'x', value: 'y'}]} // src 按 'name' 读,label 字段被忽略",
|
|
204
|
+
"right": "replaceFields={{ key: 'name' }} value={[{name: 'x', value: 'y'}]} // replaceFields 和数据字段名必须同步"
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
"issue": "disabled 只传 boolean 期望行级禁用——boolean true 是整体禁用,行级需用对象数组",
|
|
208
|
+
"wrong": "disabled={rowIndex === 0} // 期望第一行禁用,实际 disabled=true 时整体禁用所有行",
|
|
209
|
+
"right": "disabled={[{label: true, value: false}, {label: false, value: false}]} // 对象数组:第一行 key 列禁用"
|
|
210
|
+
}
|
|
211
|
+
],
|
|
212
|
+
"mapping": {
|
|
213
|
+
"realComponent": "MultiBox",
|
|
214
|
+
"adapter": null
|
|
215
|
+
}
|
|
216
|
+
}
|
package/es/MultiBox/index.js
CHANGED
|
@@ -10,7 +10,7 @@ import ae from "../GlobalContext/useFormatMessage.js";
|
|
|
10
10
|
import ie from "./lang/index.js";
|
|
11
11
|
import { Tooltip as ne } from "../Tooltip/index.js";
|
|
12
12
|
import './index.css';/* empty css */
|
|
13
|
-
const ye = (
|
|
13
|
+
const ye = (u) => {
|
|
14
14
|
const {
|
|
15
15
|
className: C,
|
|
16
16
|
style: D,
|
|
@@ -29,14 +29,14 @@ const ye = (n) => {
|
|
|
29
29
|
helperText: d = "",
|
|
30
30
|
value: x,
|
|
31
31
|
replaceFields: v,
|
|
32
|
-
onChange:
|
|
32
|
+
onChange: n,
|
|
33
33
|
fetchSuggestionsKey: j,
|
|
34
34
|
fetchSuggestionsValue: g,
|
|
35
35
|
keyOtherProps: k,
|
|
36
36
|
valueOtherProps: T
|
|
37
|
-
} =
|
|
37
|
+
} = u, S = !!(d && typeof d == "string"), J = d instanceof Array, w = ae("MultiBox", ie), [o, c] = M([]), [a, G] = M({ key: "label", value: "value" });
|
|
38
38
|
y(() => {
|
|
39
|
-
|
|
39
|
+
u.defaultValue !== void 0 && c([...u.defaultValue]);
|
|
40
40
|
}, []), y(() => {
|
|
41
41
|
x !== void 0 && c([...x]);
|
|
42
42
|
}, [x]), y(() => {
|
|
@@ -48,19 +48,19 @@ const ye = (n) => {
|
|
|
48
48
|
const $ = (t, e) => {
|
|
49
49
|
let l = { error: !1, helperText: "" };
|
|
50
50
|
if (J) {
|
|
51
|
-
const
|
|
52
|
-
|
|
51
|
+
const i = d[t];
|
|
52
|
+
i && i[e] && (l = {
|
|
53
53
|
error: !0,
|
|
54
|
-
helperText:
|
|
54
|
+
helperText: i[e]
|
|
55
55
|
});
|
|
56
56
|
}
|
|
57
57
|
return l;
|
|
58
58
|
}, Q = () => {
|
|
59
|
-
s !== !0 && (o.push({}),
|
|
59
|
+
s !== !0 && (o.push({}), u.value === void 0 && c([...o]), n && n(o));
|
|
60
60
|
}, U = (t) => () => {
|
|
61
|
-
s !== !0 && (o.splice(t, 1),
|
|
61
|
+
s !== !0 && (o.splice(t, 1), u.value === void 0 && c([...o]), n && n(o));
|
|
62
62
|
}, A = (t, e) => (l) => {
|
|
63
|
-
o[e][t] = l.target.value,
|
|
63
|
+
o[e][t] = l.target.value, u.value === void 0 && c([...o]), n && n(o);
|
|
64
64
|
}, W = () => {
|
|
65
65
|
if (!N && !V) return null;
|
|
66
66
|
const t = () => {
|
|
@@ -78,7 +78,7 @@ const ye = (n) => {
|
|
|
78
78
|
}
|
|
79
79
|
);
|
|
80
80
|
}, X = (t, e) => {
|
|
81
|
-
const l = t[a.key || ""] || "",
|
|
81
|
+
const l = t[a.key || ""] || "", i = t[a.value || ""] || "", ee = s instanceof Array ? s[e]?.[l] : s, te = s instanceof Array ? s[e]?.[i] : s, K = $(e, a.key || ""), O = $(e, a.value || "");
|
|
82
82
|
let L = "multi-box-content-item-input";
|
|
83
83
|
return (K.error || O.error) && (L += " multi-box-content-item-input-error"), /* @__PURE__ */ r.jsxs("div", { className: L, children: [
|
|
84
84
|
/* @__PURE__ */ r.jsx(
|
|
@@ -104,12 +104,12 @@ const ye = (n) => {
|
|
|
104
104
|
size: f,
|
|
105
105
|
disabled: te,
|
|
106
106
|
placeholder: R,
|
|
107
|
-
value:
|
|
107
|
+
value: i,
|
|
108
108
|
...O,
|
|
109
109
|
onChange: A(a.value || "", e),
|
|
110
110
|
fetchSuggestions: g ? E("value") : void 0,
|
|
111
111
|
onSelect: F(a.value || "", e),
|
|
112
|
-
...T && T(e,
|
|
112
|
+
...T && T(e, i)
|
|
113
113
|
}
|
|
114
114
|
)
|
|
115
115
|
] });
|
|
@@ -133,7 +133,12 @@ const ye = (n) => {
|
|
|
133
133
|
)) }), E = (t) => (e, l) => {
|
|
134
134
|
t === "key" ? j && j(e, l) : g && g(e, l);
|
|
135
135
|
}, F = (t, e) => (l) => {
|
|
136
|
-
typeof l == "object" && l !== null
|
|
136
|
+
if (typeof l == "object" && l !== null) {
|
|
137
|
+
const i = l.value;
|
|
138
|
+
o[e][t] = i;
|
|
139
|
+
} else
|
|
140
|
+
o[e][t] = l;
|
|
141
|
+
u.value === void 0 && c([...o]), n && n(o);
|
|
137
142
|
}, Z = () => {
|
|
138
143
|
let t = `${m}-multi-box multi-box`;
|
|
139
144
|
return C && (t += ` ${C}`), f && (t += ` ${m}-multi-box-${f}`), z && (t += ` ${m}-multi-box-error`), s === !0 && (t += ` ${m}-multi-box-disabled`), b && (t += ` ${m}-multi-box-separator`), t;
|