amis 1.7.0 → 1.8.0-beta.13
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/lib/Schema.d.ts +10 -2
- package/lib/Schema.js +0 -1
- package/lib/Schema.js.map +2 -2
- package/lib/SchemaRenderer.js +19 -3
- package/lib/SchemaRenderer.js.map +2 -2
- package/lib/WithRootStore.d.ts +18 -0
- package/lib/WithStore.js +2 -1
- package/lib/WithStore.js.map +2 -2
- package/lib/actions/CmptAction.js +26 -4
- package/lib/actions/CmptAction.js.map +2 -2
- package/lib/actions/PageAction.d.ts +32 -0
- package/lib/actions/PageAction.js +72 -0
- package/lib/actions/PageAction.js.map +13 -0
- package/lib/actions/index.d.ts +1 -0
- package/lib/actions/index.js +1 -0
- package/lib/actions/index.js.map +2 -2
- package/lib/components/Alert2.js +4 -2
- package/lib/components/Alert2.js.map +2 -2
- package/lib/components/AssociatedSelection.js +9 -2
- package/lib/components/AssociatedSelection.js.map +2 -2
- package/lib/components/Avatar.d.ts +20 -20
- package/lib/components/BarCode.js +1 -1
- package/lib/components/BarCode.js.map +2 -2
- package/lib/components/CalendarMobile.d.ts +84 -84
- package/lib/components/Card.d.ts +20 -20
- package/lib/components/Cascader.d.ts +2 -0
- package/lib/components/Cascader.js +28 -12
- package/lib/components/Cascader.js.map +2 -2
- package/lib/components/Checkbox.d.ts +24 -23
- package/lib/components/Checkbox.js +5 -1
- package/lib/components/Checkbox.js.map +2 -2
- package/lib/components/CityArea.js +3 -0
- package/lib/components/CityArea.js.map +2 -2
- package/lib/components/Collapse.d.ts +20 -20
- package/lib/components/DatePicker.d.ts +87 -84
- package/lib/components/DatePicker.js +48 -11
- package/lib/components/DatePicker.js.map +2 -2
- package/lib/components/DateRangePicker.d.ts +285 -171
- package/lib/components/DateRangePicker.js +471 -66
- package/lib/components/DateRangePicker.js.map +2 -2
- package/lib/components/Drawer.js +1 -1
- package/lib/components/Drawer.js.map +2 -2
- package/lib/components/ListGroup.d.ts +21 -21
- package/lib/components/Modal.js +1 -1
- package/lib/components/Modal.js.map +2 -2
- package/lib/components/MonthRangePicker.d.ts +84 -84
- package/lib/components/Overlay.d.ts +1 -0
- package/lib/components/Overlay.js +4 -3
- package/lib/components/Overlay.js.map +2 -2
- package/lib/components/Progress.d.ts +29 -24
- package/lib/components/Progress.js +52 -21
- package/lib/components/Progress.js.map +2 -2
- package/lib/components/PullRefresh.d.ts +86 -0
- package/lib/components/PullRefresh.js +135 -0
- package/lib/components/PullRefresh.js.map +13 -0
- package/lib/components/Radios.d.ts +22 -22
- package/lib/components/Radios.js +3 -5
- package/lib/components/Radios.js.map +2 -2
- package/lib/components/Range.d.ts +2 -2
- package/lib/components/Range.js +24 -11
- package/lib/components/Range.js.map +2 -2
- package/lib/components/Spinner.d.ts +200 -107
- package/lib/components/Spinner.js +30 -26
- package/lib/components/Spinner.js.map +2 -2
- package/lib/components/Steps.d.ts +6 -0
- package/lib/components/Steps.js +13 -9
- package/lib/components/Steps.js.map +2 -2
- package/lib/components/Tabs.d.ts +27 -23
- package/lib/components/Tabs.js +37 -22
- package/lib/components/Tabs.js.map +2 -2
- package/lib/components/Tooltip.d.ts +4 -0
- package/lib/components/Tooltip.js +6 -4
- package/lib/components/Tooltip.js.map +2 -2
- package/lib/components/TooltipWrapper.d.ts +87 -24
- package/lib/components/TooltipWrapper.js +40 -8
- package/lib/components/TooltipWrapper.js.map +2 -2
- package/lib/components/Transfer.d.ts +84 -84
- package/lib/components/TransferDropDown.d.ts +84 -84
- package/lib/components/Tree.d.ts +87 -85
- package/lib/components/Tree.js +13 -5
- package/lib/components/Tree.js.map +2 -2
- package/lib/components/TreeSelection.d.ts +84 -84
- package/lib/components/calendar/Calendar.js +3 -12
- package/lib/components/calendar/Calendar.js.map +2 -2
- package/lib/components/calendar/TimeView.d.ts +1 -0
- package/lib/components/calendar/TimeView.js +7 -0
- package/lib/components/calendar/TimeView.js.map +2 -2
- package/lib/components/calendar/YearsView.js +3 -3
- package/lib/components/calendar/YearsView.js.map +2 -2
- package/lib/components/condition-builder/Expression.d.ts +1 -0
- package/lib/components/condition-builder/Expression.js +4 -4
- package/lib/components/condition-builder/Expression.js.map +2 -2
- package/lib/components/condition-builder/Field.d.ts +1 -0
- package/lib/components/condition-builder/Field.js +3 -2
- package/lib/components/condition-builder/Field.js.map +2 -2
- package/lib/components/condition-builder/Group.d.ts +1 -0
- package/lib/components/condition-builder/Group.js +2 -2
- package/lib/components/condition-builder/Group.js.map +2 -2
- package/lib/components/condition-builder/GroupOrItem.d.ts +1 -0
- package/lib/components/condition-builder/GroupOrItem.js +2 -2
- package/lib/components/condition-builder/GroupOrItem.js.map +2 -2
- package/lib/components/condition-builder/InputSwitch.d.ts +2 -1
- package/lib/components/condition-builder/InputSwitch.js +2 -2
- package/lib/components/condition-builder/InputSwitch.js.map +2 -2
- package/lib/components/condition-builder/Item.d.ts +1 -0
- package/lib/components/condition-builder/Item.js +9 -8
- package/lib/components/condition-builder/Item.js.map +2 -2
- package/lib/components/condition-builder/Value.d.ts +1 -0
- package/lib/components/condition-builder/Value.js +5 -5
- package/lib/components/condition-builder/Value.js.map +2 -2
- package/lib/components/condition-builder/index.d.ts +1 -0
- package/lib/components/condition-builder/index.js +2 -2
- package/lib/components/condition-builder/index.js.map +2 -2
- package/lib/components/formula/Editor.d.ts +90 -86
- package/lib/components/formula/Editor.js +26 -4
- package/lib/components/formula/Editor.js.map +2 -2
- package/lib/components/formula/Picker.d.ts +5 -0
- package/lib/components/formula/Picker.js +21 -4
- package/lib/components/formula/Picker.js.map +2 -2
- package/lib/components/icons.js +2 -0
- package/lib/components/icons.js.map +2 -2
- package/lib/factory.d.ts +5 -0
- package/lib/factory.js +24 -3
- package/lib/factory.js.map +2 -2
- package/lib/icons/trash.js +10 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -1
- package/lib/index.js.map +2 -2
- package/lib/locale/de-DE.js +18 -1
- package/lib/locale/de-DE.js.map +2 -2
- package/lib/locale/en-US.js +18 -1
- package/lib/locale/en-US.js.map +2 -2
- package/lib/locale/zh-CN.js +18 -1
- package/lib/locale/zh-CN.js.map +2 -2
- package/lib/renderers/Action.d.ts +3 -1
- package/lib/renderers/Action.js +23 -5
- package/lib/renderers/Action.js.map +2 -2
- package/lib/renderers/App.d.ts +1 -0
- package/lib/renderers/App.js +3 -0
- package/lib/renderers/App.js.map +2 -2
- package/lib/renderers/ButtonGroup.d.ts +2 -2
- package/lib/renderers/ButtonGroup.js.map +1 -1
- package/lib/renderers/CRUD.d.ts +8 -0
- package/lib/renderers/CRUD.js +12 -5
- package/lib/renderers/CRUD.js.map +2 -2
- package/lib/renderers/Carousel.d.ts +1 -0
- package/lib/renderers/Carousel.js +13 -1
- package/lib/renderers/Carousel.js.map +2 -2
- package/lib/renderers/Chart.d.ts +1 -0
- package/lib/renderers/Chart.js +3 -0
- package/lib/renderers/Chart.js.map +2 -2
- package/lib/renderers/Dialog.d.ts +5 -0
- package/lib/renderers/Dialog.js +7 -3
- package/lib/renderers/Dialog.js.map +2 -2
- package/lib/renderers/Drawer.d.ts +1 -0
- package/lib/renderers/Drawer.js +6 -1
- package/lib/renderers/Drawer.js.map +2 -2
- package/lib/renderers/DropDownButton.d.ts +2 -0
- package/lib/renderers/DropDownButton.js +13 -4
- package/lib/renderers/DropDownButton.js.map +2 -2
- package/lib/renderers/Form/Checkbox.d.ts +5 -2
- package/lib/renderers/Form/Checkbox.js +2 -2
- package/lib/renderers/Form/Checkbox.js.map +2 -2
- package/lib/renderers/Form/Checkboxes.d.ts +7 -2
- package/lib/renderers/Form/Checkboxes.js +101 -12
- package/lib/renderers/Form/Checkboxes.js.map +2 -2
- package/lib/renderers/Form/Combo.d.ts +6 -4
- package/lib/renderers/Form/Combo.js +132 -45
- package/lib/renderers/Form/Combo.js.map +2 -2
- package/lib/renderers/Form/DiffEditor.d.ts +3 -2
- package/lib/renderers/Form/Editor.d.ts +2 -2
- package/lib/renderers/Form/InputCity.d.ts +87 -84
- package/lib/renderers/Form/InputCity.js +48 -3
- package/lib/renderers/Form/InputCity.js.map +2 -2
- package/lib/renderers/Form/InputDate.js +10 -3
- package/lib/renderers/Form/InputDate.js.map +2 -2
- package/lib/renderers/Form/InputDateRange.d.ts +5 -0
- package/lib/renderers/Form/InputDateRange.js +12 -3
- package/lib/renderers/Form/InputDateRange.js.map +2 -2
- package/lib/renderers/Form/InputFile.js +19 -8
- package/lib/renderers/Form/InputFile.js.map +2 -2
- package/lib/renderers/Form/InputFormula.d.ts +4 -0
- package/lib/renderers/Form/InputFormula.js +2 -2
- package/lib/renderers/Form/InputFormula.js.map +2 -2
- package/lib/renderers/Form/InputImage.js +18 -7
- package/lib/renderers/Form/InputImage.js.map +2 -2
- package/lib/renderers/Form/InputMonthRange.js +5 -1
- package/lib/renderers/Form/InputMonthRange.js.map +2 -2
- package/lib/renderers/Form/InputRange.d.ts +2 -2
- package/lib/renderers/Form/InputRange.js +13 -14
- package/lib/renderers/Form/InputRange.js.map +2 -2
- package/lib/renderers/Form/InputTable.js +4 -2
- package/lib/renderers/Form/InputTable.js.map +2 -2
- package/lib/renderers/Form/InputText.d.ts +1 -1
- package/lib/renderers/Form/InputText.js +8 -10
- package/lib/renderers/Form/InputText.js.map +2 -2
- package/lib/renderers/Form/InputTree.d.ts +5 -0
- package/lib/renderers/Form/InputTree.js +51 -2
- package/lib/renderers/Form/InputTree.js.map +2 -2
- package/lib/renderers/Form/Item.d.ts +79 -76
- package/lib/renderers/Form/Item.js +3 -1
- package/lib/renderers/Form/Item.js.map +2 -2
- package/lib/renderers/Form/NestedSelect.d.ts +4 -0
- package/lib/renderers/Form/NestedSelect.js +14 -5
- package/lib/renderers/Form/NestedSelect.js.map +2 -2
- package/lib/renderers/Form/Options.js +61 -27
- package/lib/renderers/Form/Options.js.map +2 -2
- package/lib/renderers/Form/Select.js +4 -2
- package/lib/renderers/Form/Select.js.map +2 -2
- package/lib/renderers/Form/Textarea.js +2 -1
- package/lib/renderers/Form/Textarea.js.map +2 -2
- package/lib/renderers/Form/TreeSelect.d.ts +11 -2
- package/lib/renderers/Form/TreeSelect.js +56 -10
- package/lib/renderers/Form/TreeSelect.js.map +2 -2
- package/lib/renderers/Form/index.d.ts +3 -0
- package/lib/renderers/Form/index.js +53 -16
- package/lib/renderers/Form/index.js.map +2 -2
- package/lib/renderers/Form/wrapControl.d.ts +10 -0
- package/lib/renderers/Form/wrapControl.js +41 -19
- package/lib/renderers/Form/wrapControl.js.map +2 -2
- package/lib/renderers/Nav.d.ts +82 -67
- package/lib/renderers/Nav.js +49 -13
- package/lib/renderers/Nav.js.map +2 -2
- package/lib/renderers/Page.d.ts +21 -0
- package/lib/renderers/Page.js +56 -17
- package/lib/renderers/Page.js.map +2 -2
- package/lib/renderers/Progress.d.ts +4 -7
- package/lib/renderers/Progress.js +3 -3
- package/lib/renderers/Progress.js.map +2 -2
- package/lib/renderers/Service.d.ts +3 -0
- package/lib/renderers/Service.js +55 -20
- package/lib/renderers/Service.js.map +2 -2
- package/lib/renderers/Spinner.d.ts +58 -2
- package/lib/renderers/Spinner.js +8 -1
- package/lib/renderers/Spinner.js.map +2 -2
- package/lib/renderers/Steps.d.ts +8 -0
- package/lib/renderers/Steps.js +2 -2
- package/lib/renderers/Steps.js.map +2 -2
- package/lib/renderers/Table/ColumnToggler.d.ts +4 -0
- package/lib/renderers/Table/ColumnToggler.js +11 -6
- package/lib/renderers/Table/ColumnToggler.js.map +2 -2
- package/lib/renderers/Table/TableCell.js +27 -1
- package/lib/renderers/Table/TableCell.js.map +2 -2
- package/lib/renderers/Table/TableRow.js +1 -1
- package/lib/renderers/Table/TableRow.js.map +2 -2
- package/lib/renderers/Table/index.d.ts +2 -0
- package/lib/renderers/Table/index.js +23 -10
- package/lib/renderers/Table/index.js.map +2 -2
- package/lib/renderers/Tabs.d.ts +14 -2
- package/lib/renderers/Tabs.js +24 -8
- package/lib/renderers/Tabs.js.map +2 -2
- package/lib/renderers/TooltipWrapper.d.ts +133 -0
- package/lib/renderers/TooltipWrapper.js +70 -0
- package/lib/renderers/TooltipWrapper.js.map +13 -0
- package/lib/renderers/Wizard.d.ts +7 -3
- package/lib/renderers/Wizard.js +269 -152
- package/lib/renderers/Wizard.js.map +2 -2
- package/lib/store/combo.d.ts +2 -2
- package/lib/store/crud.d.ts +1 -0
- package/lib/store/crud.js +55 -19
- package/lib/store/crud.js.map +2 -2
- package/lib/store/form.d.ts +1 -1
- package/lib/store/form.js +5 -1
- package/lib/store/form.js.map +2 -2
- package/lib/store/formItem.js +1 -1
- package/lib/store/formItem.js.map +2 -2
- package/lib/store/index.d.ts +5 -0
- package/lib/store/index.js +14 -0
- package/lib/store/index.js.map +2 -2
- package/lib/store/table.d.ts +2 -2
- package/lib/store/table.js +4 -4
- package/lib/store/table.js.map +2 -2
- package/lib/themes/ang-ie11.css +965 -210
- package/lib/themes/ang.css +955 -175
- package/lib/themes/ang.css.map +1 -1
- package/lib/themes/antd-ie11.css +1080 -325
- package/lib/themes/antd.css +956 -176
- package/lib/themes/antd.css.map +1 -1
- package/lib/themes/cxd-ie11.css +1048 -293
- package/lib/themes/cxd.css +961 -180
- package/lib/themes/cxd.css.map +1 -1
- package/lib/themes/dark-ie11.css +965 -210
- package/lib/themes/dark.css +955 -175
- package/lib/themes/dark.css.map +1 -1
- package/lib/themes/default-ie11.css +1048 -293
- package/lib/themes/default.css +961 -180
- package/lib/themes/default.css.map +1 -1
- package/lib/types.d.ts +3 -1
- package/lib/types.js.map +1 -1
- package/lib/utils/ColorScale.d.ts +19 -0
- package/lib/utils/ColorScale.js +104 -0
- package/lib/utils/ColorScale.js.map +13 -0
- package/lib/utils/api.js +20 -4
- package/lib/utils/api.js.map +2 -2
- package/lib/utils/columnsSplit.d.ts +1 -0
- package/lib/utils/columnsSplit.js +40 -0
- package/lib/utils/columnsSplit.js.map +13 -0
- package/lib/utils/debug.d.ts +1 -1
- package/lib/utils/debug.js +16 -22
- package/lib/utils/debug.js.map +2 -2
- package/lib/utils/dom.d.ts +1 -1
- package/lib/utils/dom.js +7 -5
- package/lib/utils/dom.js.map +2 -2
- package/lib/utils/position.js +0 -1
- package/lib/utils/position.js.map +2 -2
- package/lib/utils/scrollPosition.d.ts +6 -0
- package/lib/utils/scrollPosition.js +31 -0
- package/lib/utils/scrollPosition.js.map +13 -0
- package/package.json +3 -2
- package/schema.json +30213 -29222
- package/scss/_properties.scss +67 -25
- package/scss/components/_alert.scss +1 -1
- package/scss/components/_barcode.scss +1 -1
- package/scss/components/_button-group.scss +15 -0
- package/scss/components/_carousel.scss +1 -0
- package/scss/components/_column-toggler.scss +21 -11
- package/scss/components/_debug.scss +3 -3
- package/scss/components/_formula.scss +19 -1
- package/scss/components/_nav.scss +51 -6
- package/scss/components/_progress.scss +7 -14
- package/scss/components/_pull-refresh.scss +25 -0
- package/scss/components/_spinner.scss +134 -56
- package/scss/components/_steps.scss +199 -8
- package/scss/components/_tabs.scss +145 -13
- package/scss/components/_tooltip.scss +76 -9
- package/scss/components/form/_checks.scss +125 -2
- package/scss/components/form/_combo.scss +13 -1
- package/scss/components/form/_date-range.scss +27 -2
- package/scss/components/form/_date.scss +25 -0
- package/scss/components/form/_editor.scss +2 -1
- package/scss/components/form/_file.scss +4 -0
- package/scss/components/form/_form.scss +31 -8
- package/scss/components/form/_number.scss +5 -2
- package/scss/components/form/_select.scss +0 -1
- package/scss/components/form/_textarea.scss +1 -23
- package/scss/components/form/_transfer.scss +3 -2
- package/scss/themes/_antd-variables.scss +1 -1
- package/scss/themes/_common.scss +1 -0
- package/scss/themes/_cxd-variables.scss +6 -5
- package/sdk/ang-ie11.css +1059 -198
- package/sdk/ang.css +1050 -164
- package/sdk/antd-ie11.css +1167 -306
- package/sdk/antd.css +1051 -165
- package/sdk/barcode.js +51 -51
- package/sdk/charts.js +14 -14
- package/sdk/codemirror.js +7 -7
- package/sdk/color-picker.js +65 -65
- package/sdk/cropperjs.js +2 -2
- package/sdk/cxd-ie11.css +1145 -284
- package/sdk/cxd.css +1056 -169
- package/sdk/dark-ie11.css +1056 -195
- package/sdk/dark.css +1050 -164
- package/sdk/exceljs.js +1 -1
- package/sdk/locale/de-DE.js +18 -1
- package/sdk/markdown.js +69 -69
- package/sdk/papaparse.js +1 -1
- package/sdk/renderers/Form/CityDB.js +1 -1
- package/sdk/rest.js +17 -17
- package/sdk/rich-text.js +62 -62
- package/sdk/sdk-ie11.css +1145 -284
- package/sdk/sdk.css +1056 -169
- package/sdk/sdk.js +1321 -1273
- package/sdk/thirds/hls.js/hls.js +1 -1
- package/sdk/thirds/mpegts.js/mpegts.js +1 -1
- package/sdk/tinymce.js +57 -57
- package/src/Schema.ts +15 -2
- package/src/SchemaRenderer.tsx +32 -14
- package/src/WithStore.tsx +3 -1
- package/src/actions/CmptAction.ts +28 -0
- package/src/actions/PageAction.ts +62 -0
- package/src/actions/index.ts +1 -0
- package/src/components/Alert2.tsx +9 -3
- package/src/components/AssociatedSelection.tsx +9 -3
- package/src/components/BarCode.tsx +2 -2
- package/src/components/Cascader.tsx +37 -11
- package/src/components/Checkbox.tsx +11 -5
- package/src/components/CityArea.tsx +3 -0
- package/src/components/DatePicker.tsx +68 -22
- package/src/components/DateRangePicker.tsx +551 -88
- package/src/components/Drawer.tsx +1 -0
- package/src/components/Modal.tsx +1 -0
- package/src/components/Overlay.tsx +6 -3
- package/src/components/Progress.tsx +64 -33
- package/src/components/PullRefresh.tsx +197 -0
- package/src/components/Radios.tsx +6 -17
- package/src/components/Range.tsx +26 -12
- package/src/components/Spinner.tsx +77 -42
- package/src/components/Steps.tsx +28 -27
- package/src/components/Tabs.tsx +51 -21
- package/src/components/Tooltip.tsx +12 -3
- package/src/components/TooltipWrapper.tsx +140 -33
- package/src/components/Tree.tsx +19 -5
- package/src/components/calendar/Calendar.tsx +4 -13
- package/src/components/calendar/TimeView.tsx +12 -0
- package/src/components/calendar/YearsView.tsx +3 -4
- package/src/components/condition-builder/Expression.tsx +6 -1
- package/src/components/condition-builder/Field.tsx +5 -1
- package/src/components/condition-builder/Group.tsx +4 -1
- package/src/components/condition-builder/GroupOrItem.tsx +4 -1
- package/src/components/condition-builder/InputSwitch.tsx +4 -1
- package/src/components/condition-builder/Item.tsx +28 -4
- package/src/components/condition-builder/Value.tsx +7 -1
- package/src/components/condition-builder/index.tsx +4 -2
- package/src/components/formula/Editor.tsx +46 -10
- package/src/components/formula/Picker.tsx +32 -1
- package/src/components/icons.tsx +2 -0
- package/src/factory.tsx +31 -3
- package/src/icons/trash.svg +8 -0
- package/src/index.tsx +1 -0
- package/src/locale/de-DE.ts +18 -1
- package/src/locale/en-US.ts +18 -1
- package/src/locale/zh-CN.ts +18 -1
- package/src/renderers/Action.tsx +24 -2
- package/src/renderers/App.tsx +4 -0
- package/src/renderers/ButtonGroup.tsx +2 -2
- package/src/renderers/CRUD.tsx +23 -5
- package/src/renderers/Carousel.tsx +8 -0
- package/src/renderers/Chart.tsx +4 -0
- package/src/renderers/Dialog.tsx +21 -3
- package/src/renderers/Drawer.tsx +14 -2
- package/src/renderers/DropDownButton.tsx +14 -3
- package/src/renderers/Form/Checkbox.tsx +11 -2
- package/src/renderers/Form/Checkboxes.tsx +106 -23
- package/src/renderers/Form/Combo.tsx +179 -66
- package/src/renderers/Form/InputCity.tsx +46 -5
- package/src/renderers/Form/InputDate.tsx +18 -4
- package/src/renderers/Form/InputDateRange.tsx +27 -3
- package/src/renderers/Form/InputFile.tsx +23 -7
- package/src/renderers/Form/InputFormula.tsx +7 -0
- package/src/renderers/Form/InputImage.tsx +22 -6
- package/src/renderers/Form/InputMonthRange.tsx +7 -1
- package/src/renderers/Form/InputRange.tsx +20 -22
- package/src/renderers/Form/InputTable.tsx +6 -2
- package/src/renderers/Form/InputText.tsx +14 -4
- package/src/renderers/Form/InputTree.tsx +40 -2
- package/src/renderers/Form/Item.tsx +7 -0
- package/src/renderers/Form/NestedSelect.tsx +23 -4
- package/src/renderers/Form/Options.tsx +26 -7
- package/src/renderers/Form/Select.tsx +5 -3
- package/src/renderers/Form/Textarea.tsx +3 -1
- package/src/renderers/Form/TreeSelect.tsx +47 -9
- package/src/renderers/Form/index.tsx +56 -25
- package/src/renderers/Form/wrapControl.tsx +23 -12
- package/src/renderers/Nav.tsx +231 -33
- package/src/renderers/Page.tsx +97 -35
- package/src/renderers/Progress.tsx +9 -11
- package/src/renderers/Service.tsx +66 -27
- package/src/renderers/Spinner.tsx +85 -3
- package/src/renderers/Steps.tsx +14 -0
- package/src/renderers/Table/ColumnToggler.tsx +36 -11
- package/src/renderers/Table/TableCell.tsx +39 -1
- package/src/renderers/Table/TableRow.tsx +1 -1
- package/src/renderers/Table/index.tsx +43 -19
- package/src/renderers/Tabs.tsx +90 -31
- package/src/renderers/TooltipWrapper.tsx +262 -0
- package/src/renderers/Wizard.tsx +169 -93
- package/src/store/crud.ts +50 -5
- package/src/store/form.ts +8 -3
- package/src/store/formItem.ts +1 -2
- package/src/store/index.ts +20 -0
- package/src/store/table.ts +4 -4
- package/src/types.ts +8 -1
- package/src/utils/ColorScale.ts +138 -0
- package/src/utils/api.ts +26 -4
- package/src/utils/columnsSplit.tsx +57 -0
- package/src/utils/debug.tsx +17 -24
- package/src/utils/dom.tsx +7 -6
- package/src/utils/position.ts +0 -1
- package/src/utils/scrollPosition.ts +29 -0
@@ -65,15 +65,19 @@ var TreeSelectControl = /** @class */ (function (_super) {
|
|
65
65
|
inputValue: this.props.multiple ? this.state.inputValue : ''
|
66
66
|
}, function () { return _this.loadRemote(_this.state.inputValue); });
|
67
67
|
};
|
68
|
-
TreeSelectControl.prototype.handleFocus = function () {
|
68
|
+
TreeSelectControl.prototype.handleFocus = function (e) {
|
69
|
+
var dispatchEvent = this.props.dispatchEvent;
|
69
70
|
this.setState({
|
70
71
|
isFocused: true
|
71
72
|
});
|
73
|
+
dispatchEvent('focus', e);
|
72
74
|
};
|
73
|
-
TreeSelectControl.prototype.handleBlur = function () {
|
75
|
+
TreeSelectControl.prototype.handleBlur = function (e) {
|
76
|
+
var dispatchEvent = this.props.dispatchEvent;
|
74
77
|
this.setState({
|
75
78
|
isFocused: false
|
76
79
|
});
|
80
|
+
dispatchEvent('blur', e);
|
77
81
|
};
|
78
82
|
TreeSelectControl.prototype.handleKeyPress = function (e) {
|
79
83
|
if (e.key === ' ') {
|
@@ -113,15 +117,16 @@ var TreeSelectControl = /** @class */ (function (_super) {
|
|
113
117
|
onChange(value);
|
114
118
|
};
|
115
119
|
TreeSelectControl.prototype.handleChange = function (value) {
|
116
|
-
var
|
120
|
+
var _this = this;
|
121
|
+
var multiple = this.props.multiple;
|
117
122
|
if (!multiple) {
|
118
123
|
this.close();
|
119
124
|
}
|
120
125
|
multiple || !this.state.inputValue
|
121
|
-
?
|
126
|
+
? this.resultChangeEvent(value)
|
122
127
|
: this.setState({
|
123
128
|
inputValue: ''
|
124
|
-
}, function () { return
|
129
|
+
}, function () { return _this.resultChangeEvent(value); });
|
125
130
|
};
|
126
131
|
TreeSelectControl.prototype.handleInputChange = function (value) {
|
127
132
|
var _this = this;
|
@@ -229,10 +234,10 @@ var TreeSelectControl = /** @class */ (function (_super) {
|
|
229
234
|
});
|
230
235
|
};
|
231
236
|
TreeSelectControl.prototype.handleResultChange = function (value) {
|
232
|
-
var _a = this.props, joinValues = _a.joinValues, extractValue = _a.extractValue, delimiter = _a.delimiter, valueField = _a.valueField,
|
237
|
+
var _a = this.props, joinValues = _a.joinValues, extractValue = _a.extractValue, delimiter = _a.delimiter, valueField = _a.valueField, multiple = _a.multiple;
|
233
238
|
var newValue = Array.isArray(value) ? value.concat() : [];
|
234
239
|
if (!multiple && !newValue.length) {
|
235
|
-
|
240
|
+
this.resultChangeEvent('');
|
236
241
|
return;
|
237
242
|
}
|
238
243
|
if (joinValues || extractValue) {
|
@@ -241,7 +246,33 @@ var TreeSelectControl = /** @class */ (function (_super) {
|
|
241
246
|
if (joinValues) {
|
242
247
|
newValue = newValue.join(delimiter || ',');
|
243
248
|
}
|
244
|
-
|
249
|
+
this.resultChangeEvent(newValue);
|
250
|
+
};
|
251
|
+
TreeSelectControl.prototype.doAction = function (action, data, throwErrors) {
|
252
|
+
if (action.actionType && ['clear', 'reset'].includes(action.actionType)) {
|
253
|
+
this.clearValue();
|
254
|
+
}
|
255
|
+
};
|
256
|
+
TreeSelectControl.prototype.resultChangeEvent = function (value) {
|
257
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
258
|
+
var _a, onChange, dispatchEvent, data, rendererEvent;
|
259
|
+
return (0, tslib_1.__generator)(this, function (_b) {
|
260
|
+
switch (_b.label) {
|
261
|
+
case 0:
|
262
|
+
_a = this.props, onChange = _a.onChange, dispatchEvent = _a.dispatchEvent, data = _a.data;
|
263
|
+
return [4 /*yield*/, dispatchEvent('change', (0, helper_1.createObject)(data, {
|
264
|
+
value: value
|
265
|
+
}))];
|
266
|
+
case 1:
|
267
|
+
rendererEvent = _b.sent();
|
268
|
+
if (rendererEvent === null || rendererEvent === void 0 ? void 0 : rendererEvent.prevented) {
|
269
|
+
return [2 /*return*/];
|
270
|
+
}
|
271
|
+
onChange && onChange(value);
|
272
|
+
return [2 /*return*/];
|
273
|
+
}
|
274
|
+
});
|
275
|
+
});
|
245
276
|
};
|
246
277
|
TreeSelectControl.prototype.renderItem = function (item) {
|
247
278
|
var _a = this.props, labelField = _a.labelField, options = _a.options, hideNodePathLabel = _a.hideNodePathLabel;
|
@@ -254,12 +285,15 @@ var TreeSelectControl = /** @class */ (function (_super) {
|
|
254
285
|
? ancestors.map(function (item) { return "".concat(item[labelField || 'label']); }).join(' / ')
|
255
286
|
: item[labelField || 'label']);
|
256
287
|
};
|
288
|
+
TreeSelectControl.prototype.domRef = function (ref) {
|
289
|
+
this.treeRef = ref;
|
290
|
+
};
|
257
291
|
TreeSelectControl.prototype.renderOuter = function () {
|
258
|
-
var _a = this.props, value = _a.value, enableNodePath = _a.enableNodePath, _b = _a.pathSeparator, pathSeparator = _b === void 0 ? '/' : _b, disabled = _a.disabled, joinValues = _a.joinValues, extractValue = _a.extractValue, delimiter = _a.delimiter, placeholder = _a.placeholder, options = _a.options, multiple = _a.multiple, valueField = _a.valueField, initiallyOpen = _a.initiallyOpen, unfoldedLevel = _a.unfoldedLevel, withChildren = _a.withChildren, rootLabel = _a.rootLabel, cascade = _a.cascade, rootValue = _a.rootValue, showIcon = _a.showIcon, showRadio = _a.showRadio, popOverContainer = _a.popOverContainer, onlyChildren = _a.onlyChildren, ns = _a.classPrefix, optionsPlaceholder = _a.optionsPlaceholder, searchable = _a.searchable, autoComplete = _a.autoComplete, maxLength = _a.maxLength, minLength = _a.minLength, labelField = _a.labelField, nodePath = _a.nodePath, onAdd = _a.onAdd, creatable = _a.creatable, createTip = _a.createTip, addControls = _a.addControls, onEdit = _a.onEdit, editable = _a.editable, editTip = _a.editTip, editControls = _a.editControls, removable = _a.removable, removeTip = _a.removeTip, onDelete = _a.onDelete, rootCreatable = _a.rootCreatable, rootCreateTip = _a.rootCreateTip, __ = _a.translate, deferLoad = _a.deferLoad, expandTreeOptions = _a.expandTreeOptions;
|
292
|
+
var _a = this.props, value = _a.value, enableNodePath = _a.enableNodePath, _b = _a.pathSeparator, pathSeparator = _b === void 0 ? '/' : _b, disabled = _a.disabled, joinValues = _a.joinValues, extractValue = _a.extractValue, delimiter = _a.delimiter, placeholder = _a.placeholder, options = _a.options, multiple = _a.multiple, valueField = _a.valueField, initiallyOpen = _a.initiallyOpen, unfoldedLevel = _a.unfoldedLevel, withChildren = _a.withChildren, rootLabel = _a.rootLabel, cascade = _a.cascade, rootValue = _a.rootValue, showIcon = _a.showIcon, showRadio = _a.showRadio, popOverContainer = _a.popOverContainer, onlyChildren = _a.onlyChildren, onlyLeaf = _a.onlyLeaf, ns = _a.classPrefix, optionsPlaceholder = _a.optionsPlaceholder, searchable = _a.searchable, autoComplete = _a.autoComplete, maxLength = _a.maxLength, minLength = _a.minLength, labelField = _a.labelField, nodePath = _a.nodePath, onAdd = _a.onAdd, creatable = _a.creatable, createTip = _a.createTip, addControls = _a.addControls, onEdit = _a.onEdit, editable = _a.editable, editTip = _a.editTip, editControls = _a.editControls, removable = _a.removable, removeTip = _a.removeTip, onDelete = _a.onDelete, rootCreatable = _a.rootCreatable, rootCreateTip = _a.rootCreateTip, __ = _a.translate, deferLoad = _a.deferLoad, expandTreeOptions = _a.expandTreeOptions;
|
259
293
|
var filtedOptions = !(0, api_1.isEffectiveApi)(autoComplete) && searchable && this.state.inputValue
|
260
294
|
? this.filterOptions(options, this.state.inputValue)
|
261
295
|
: options;
|
262
|
-
return (react_1.default.createElement(Tree_1.default, { classPrefix: ns, onlyChildren: onlyChildren, labelField: labelField, valueField: valueField, disabled: disabled, onChange: this.handleChange, joinValues: joinValues, extractValue: extractValue, delimiter: delimiter, placeholder: __(optionsPlaceholder), options: filtedOptions, highlightTxt: this.state.inputValue, multiple: multiple, initiallyOpen: initiallyOpen, unfoldedLevel: unfoldedLevel, withChildren: withChildren, rootLabel: __(rootLabel), rootValue: rootValue, showIcon: showIcon, showRadio: showRadio, cascade: cascade, foldedField: "collapsed", hideRoot: true, value: value || '', nodePath: nodePath, enableNodePath: enableNodePath, pathSeparator: pathSeparator, maxLength: maxLength, minLength: minLength, onAdd: onAdd, creatable: creatable, createTip: createTip, rootCreatable: rootCreatable, rootCreateTip: rootCreateTip, onEdit: onEdit, editable: editable, editTip: editTip, removable: removable, removeTip: removeTip, onDelete: onDelete, bultinCUD: !addControls && !editControls, onDeferLoad: deferLoad, onExpandTree: expandTreeOptions }));
|
296
|
+
return (react_1.default.createElement(Tree_1.default, { classPrefix: ns, onRef: this.domRef, onlyChildren: onlyChildren, onlyLeaf: onlyLeaf, labelField: labelField, valueField: valueField, disabled: disabled, onChange: this.handleChange, joinValues: joinValues, extractValue: extractValue, delimiter: delimiter, placeholder: __(optionsPlaceholder), options: filtedOptions, highlightTxt: this.state.inputValue, multiple: multiple, initiallyOpen: initiallyOpen, unfoldedLevel: unfoldedLevel, withChildren: withChildren, rootLabel: __(rootLabel), rootValue: rootValue, showIcon: showIcon, showRadio: showRadio, cascade: cascade, foldedField: "collapsed", hideRoot: true, value: value || '', nodePath: nodePath, enableNodePath: enableNodePath, pathSeparator: pathSeparator, maxLength: maxLength, minLength: minLength, onAdd: onAdd, creatable: creatable, createTip: createTip, rootCreatable: rootCreatable, rootCreateTip: rootCreateTip, onEdit: onEdit, editable: editable, editTip: editTip, removable: removable, removeTip: removeTip, onDelete: onDelete, bultinCUD: !addControls && !editControls, onDeferLoad: deferLoad, onExpandTree: expandTreeOptions }));
|
263
297
|
};
|
264
298
|
TreeSelectControl.prototype.render = function () {
|
265
299
|
var _this = this;
|
@@ -315,12 +349,24 @@ var TreeSelectControl = /** @class */ (function (_super) {
|
|
315
349
|
(0, tslib_1.__metadata)("design:paramtypes", [typeof (_b = typeof Array !== "undefined" && Array) === "function" ? _b : Object]),
|
316
350
|
(0, tslib_1.__metadata)("design:returntype", void 0)
|
317
351
|
], TreeSelectControl.prototype, "handleResultChange", null);
|
352
|
+
(0, tslib_1.__decorate)([
|
353
|
+
helper_1.autobind,
|
354
|
+
(0, tslib_1.__metadata)("design:type", Function),
|
355
|
+
(0, tslib_1.__metadata)("design:paramtypes", [Object]),
|
356
|
+
(0, tslib_1.__metadata)("design:returntype", Promise)
|
357
|
+
], TreeSelectControl.prototype, "resultChangeEvent", null);
|
318
358
|
(0, tslib_1.__decorate)([
|
319
359
|
helper_1.autobind,
|
320
360
|
(0, tslib_1.__metadata)("design:type", Function),
|
321
361
|
(0, tslib_1.__metadata)("design:paramtypes", [typeof (_c = typeof Options_1.Option !== "undefined" && Options_1.Option) === "function" ? _c : Object]),
|
322
362
|
(0, tslib_1.__metadata)("design:returntype", void 0)
|
323
363
|
], TreeSelectControl.prototype, "renderItem", null);
|
364
|
+
(0, tslib_1.__decorate)([
|
365
|
+
helper_1.autobind,
|
366
|
+
(0, tslib_1.__metadata)("design:type", Function),
|
367
|
+
(0, tslib_1.__metadata)("design:paramtypes", [Object]),
|
368
|
+
(0, tslib_1.__metadata)("design:returntype", void 0)
|
369
|
+
], TreeSelectControl.prototype, "domRef", null);
|
324
370
|
return TreeSelectControl;
|
325
371
|
}(react_1.default.Component));
|
326
372
|
exports.default = TreeSelectControl;
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/renderers/Form/TreeSelect.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": "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",
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"import React from 'react';\nimport Overlay from '../../components/Overlay';\nimport PopOver from '../../components/PopOver';\nimport PopUp from '../../components/PopUp';\n\nimport {\n OptionsControl,\n OptionsControlProps,\n Option,\n FormOptionsControl\n} from './Options';\nimport {Icon} from '../../components/icons';\nimport TreeSelector from '../../components/Tree';\nimport {matchSorter} from 'match-sorter';\nimport debouce from 'lodash/debounce';\nimport find from 'lodash/find';\nimport {Api} from '../../types';\nimport {isEffectiveApi} from '../../utils/api';\nimport Spinner from '../../components/Spinner';\nimport ResultBox from '../../components/ResultBox';\nimport {autobind, getTreeAncestors, isMobile} from '../../utils/helper';\nimport {findDOMNode} from 'react-dom';\nimport {normalizeOptions} from '../../components/Select';\n\n/**\n * Tree 下拉选择框。\n * 文档:https://baidu.gitee.io/amis/docs/components/form/tree\n */\nexport interface TreeSelectControlSchema extends FormOptionsControl {\n type: 'tree-select';\n\n /**\n * 是否隐藏顶级\n */\n hideRoot?: boolean;\n\n /**\n * 顶级选项的名称\n */\n rootLabel?: string;\n\n /**\n * 顶级选项的值\n */\n rootValue?: any;\n\n /**\n * 显示图标\n */\n showIcon?: boolean;\n\n /**\n * 父子之间是否完全独立。\n */\n cascade?: boolean;\n\n /**\n * 选父级的时候是否把子节点的值也包含在内。\n */\n withChildren?: boolean;\n\n /**\n * 选父级的时候,是否只把子节点的值包含在内\n */\n onlyChildren?: boolean;\n\n /**\n * 顶级节点是否可以创建子节点\n */\n rootCreatable?: boolean;\n\n /**\n * 是否隐藏选择框中已选中节点的祖先节点的文本信息\n */\n hideNodePathLabel?: boolean;\n\n /**\n * 是否开启节点路径模式\n */\n enableNodePath?: boolean;\n\n /**\n * 开启节点路径模式后,节点路径的分隔符\n */\n pathSeparator?: string;\n}\n\nexport interface TreeSelectProps extends OptionsControlProps {\n placeholder?: any;\n autoComplete?: Api;\n hideNodePathLabel?: boolean;\n enableNodePath?: boolean;\n pathSeparator?: string;\n useMobileUI?: boolean;\n}\n\nexport interface TreeSelectState {\n isOpened: boolean;\n isFocused: boolean;\n inputValue: string;\n}\n\nexport default class TreeSelectControl extends React.Component<\n TreeSelectProps,\n TreeSelectState\n> {\n static defaultProps = {\n placeholder: 'Select.placeholder',\n optionsPlaceholder: 'placeholder.noData',\n multiple: false,\n clearable: true,\n rootLabel: '顶级',\n rootValue: '',\n showIcon: true,\n joinValues: true,\n extractValue: false,\n delimiter: ',',\n resetValue: '',\n hideNodePathLabel: false,\n enableNodePath: false,\n pathSeparator: '/'\n };\n\n container: React.RefObject<HTMLDivElement> = React.createRef();\n\n input: React.RefObject<any> = React.createRef();\n\n cache: {\n [propName: string]: any;\n } = {};\n\n target: HTMLElement | null;\n targetRef = (ref: any) =>\n (this.target = ref ? (findDOMNode(ref) as HTMLElement) : null);\n\n constructor(props: TreeSelectProps) {\n super(props);\n\n this.state = {\n inputValue: '',\n isOpened: false,\n isFocused: false\n };\n\n this.open = this.open.bind(this);\n this.close = this.close.bind(this);\n this.handleChange = this.handleChange.bind(this);\n this.clearValue = this.clearValue.bind(this);\n this.handleFocus = this.handleFocus.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n this.handleKeyPress = this.handleKeyPress.bind(this);\n this.handleInputChange = this.handleInputChange.bind(this);\n this.handleInputKeyDown = this.handleInputKeyDown.bind(this);\n\n this.loadRemote = debouce(this.loadRemote.bind(this), 250, {\n trailing: true,\n leading: false\n });\n }\n\n componentDidMount() {\n this.loadRemote('');\n }\n\n open(fn?: () => void) {\n if (this.props.disabled) {\n return;\n }\n\n this.setState(\n {\n isOpened: true\n },\n fn\n );\n }\n\n close() {\n this.setState(\n {\n isOpened: false,\n inputValue: this.props.multiple ? this.state.inputValue : ''\n },\n () => this.loadRemote(this.state.inputValue)\n );\n }\n\n handleFocus() {\n this.setState({\n isFocused: true\n });\n }\n\n handleBlur() {\n this.setState({\n isFocused: false\n });\n }\n\n handleKeyPress(e: React.KeyboardEvent) {\n if (e.key === ' ') {\n this.handleOutClick(e as any);\n e.preventDefault();\n }\n }\n\n validate(): any {\n const {value, minLength, maxLength, delimiter, translate: __} = this.props;\n\n let curValue = Array.isArray(value)\n ? value\n : (value ? String(value) : '').split(delimiter || ',');\n if (minLength && curValue.length < minLength) {\n return __(\n '已选择数量低于设定的最小个数${minLength},请选择更多的选项。',\n {minLength}\n );\n } else if (maxLength && curValue.length > maxLength) {\n return __(\n '已选择数量超出设定的最大个数{{maxLength}},请取消选择超出的选项。',\n {maxLength}\n );\n }\n }\n\n removeItem(index: number, e?: React.MouseEvent<HTMLElement>) {\n const {\n selectedOptions,\n joinValues,\n extractValue,\n delimiter,\n valueField,\n onChange,\n disabled\n } = this.props;\n\n e && e.stopPropagation();\n\n if (disabled) {\n return;\n }\n\n const items = selectedOptions.concat();\n items.splice(index, 1);\n\n let value: any = items;\n\n if (joinValues) {\n value = items\n .map((item: any) => item[valueField || 'value'])\n .join(delimiter || ',');\n } else if (extractValue) {\n value = items.map((item: any) => item[valueField || 'value']);\n }\n\n onChange(value);\n }\n\n handleChange(value: any) {\n const {onChange, multiple} = this.props;\n\n if (!multiple) {\n this.close();\n }\n\n multiple || !this.state.inputValue\n ? onChange(value)\n : this.setState(\n {\n inputValue: ''\n },\n () => onChange(value)\n );\n }\n\n handleInputChange(value: string) {\n const {autoComplete, data} = this.props;\n\n this.setState(\n {\n inputValue: value\n },\n isEffectiveApi(autoComplete, data)\n ? () => this.loadRemote(this.state.inputValue)\n : undefined\n );\n }\n\n handleInputKeyDown(event: React.KeyboardEvent) {\n const inputValue = this.state.inputValue;\n const {multiple, selectedOptions} = this.props;\n\n if (\n event.key === 'Backspace' &&\n !inputValue &&\n selectedOptions.length &&\n multiple\n ) {\n this.removeItem(selectedOptions.length - 1);\n }\n }\n\n clearValue() {\n const {onChange, resetValue} = this.props;\n\n onChange(typeof resetValue === 'undefined' ? '' : resetValue);\n }\n\n filterOptions(options: Array<Option>, keywords: string): Array<Option> {\n const {labelField, valueField} = this.props;\n\n return options.map(option => {\n option = {\n ...option\n };\n option.visible = !!matchSorter([option], keywords, {\n keys: [labelField || 'label', valueField || 'value']\n }).length;\n\n if (!option.visible && option.children) {\n option.children = this.filterOptions(option.children, keywords);\n const visibleCount = option.children.filter(\n item => item.visible\n ).length;\n option.visible = !!visibleCount;\n }\n\n option.visible && (option.collapsed = false);\n return option;\n });\n }\n\n async loadRemote(input: string) {\n const {autoComplete, env, data, setOptions, setLoading} = this.props;\n\n if (!isEffectiveApi(autoComplete, data)) {\n return;\n } else if (!env || !env.fetcher) {\n throw new Error('fetcher is required');\n }\n\n if (this.cache[input] || ~input.indexOf(\"'\") /*中文没输完 233*/) {\n let options = this.cache[input] || [];\n let combinedOptions = this.mergeOptions(options);\n setOptions(combinedOptions);\n\n return Promise.resolve({\n options: combinedOptions\n });\n }\n\n setLoading(true);\n\n try {\n const ret: any = await env.fetcher(autoComplete, {\n ...data,\n term: input,\n value: input\n });\n\n let options = (ret.data && (ret.data as any).options) || ret.data || [];\n this.cache[input] = options;\n let combinedOptions = this.mergeOptions(options);\n setOptions(combinedOptions);\n\n return {\n options: combinedOptions\n };\n } finally {\n setLoading(false);\n }\n }\n\n mergeOptions(options: Array<object>) {\n const {selectedOptions} = this.props;\n let combinedOptions = normalizeOptions(options).concat();\n\n if (Array.isArray(selectedOptions) && selectedOptions.length) {\n selectedOptions.forEach(option => {\n if (\n !find(combinedOptions, (item: Option) => item.value == option.value)\n ) {\n combinedOptions.push({\n ...option,\n visible: false\n });\n }\n });\n }\n return combinedOptions;\n }\n\n reload() {\n const reload = this.props.reloadOptions;\n reload && reload();\n }\n\n @autobind\n handleOutClick(e: React.MouseEvent<any>) {\n e.defaultPrevented ||\n this.setState({\n isOpened: true\n });\n }\n\n @autobind\n handleResultChange(value: Array<Option>) {\n const {\n joinValues,\n extractValue,\n delimiter,\n valueField,\n onChange,\n multiple\n } = this.props;\n\n let newValue: any = Array.isArray(value) ? value.concat() : [];\n\n if (!multiple && !newValue.length) {\n onChange('');\n return;\n }\n\n if (joinValues || extractValue) {\n newValue = value.map(item => item[valueField || 'value']);\n }\n\n if (joinValues) {\n newValue = newValue.join(delimiter || ',');\n }\n\n onChange(newValue);\n }\n\n @autobind\n renderItem(item: Option) {\n const {labelField, options, hideNodePathLabel} = this.props;\n\n if (hideNodePathLabel) {\n return item[labelField || 'label'];\n }\n\n // 将所有祖先节点也展现出来\n const ancestors = getTreeAncestors(options, item, true);\n return `${\n ancestors\n ? ancestors.map(item => `${item[labelField || 'label']}`).join(' / ')\n : item[labelField || 'label']\n }`;\n }\n\n renderOuter() {\n const {\n value,\n enableNodePath,\n pathSeparator = '/',\n disabled,\n joinValues,\n extractValue,\n delimiter,\n placeholder,\n options,\n multiple,\n valueField,\n initiallyOpen,\n unfoldedLevel,\n withChildren,\n rootLabel,\n cascade,\n rootValue,\n showIcon,\n showRadio,\n popOverContainer,\n onlyChildren,\n classPrefix: ns,\n optionsPlaceholder,\n searchable,\n autoComplete,\n maxLength,\n minLength,\n labelField,\n nodePath,\n onAdd,\n creatable,\n createTip,\n addControls,\n onEdit,\n editable,\n editTip,\n editControls,\n removable,\n removeTip,\n onDelete,\n rootCreatable,\n rootCreateTip,\n translate: __,\n deferLoad,\n expandTreeOptions\n } = this.props;\n\n let filtedOptions =\n !isEffectiveApi(autoComplete) && searchable && this.state.inputValue\n ? this.filterOptions(options, this.state.inputValue)\n : options;\n\n return (\n <TreeSelector\n classPrefix={ns}\n onlyChildren={onlyChildren}\n labelField={labelField}\n valueField={valueField}\n disabled={disabled}\n onChange={this.handleChange}\n joinValues={joinValues}\n extractValue={extractValue}\n delimiter={delimiter}\n placeholder={__(optionsPlaceholder)}\n options={filtedOptions}\n highlightTxt={this.state.inputValue}\n multiple={multiple}\n initiallyOpen={initiallyOpen}\n unfoldedLevel={unfoldedLevel}\n withChildren={withChildren}\n rootLabel={__(rootLabel)}\n rootValue={rootValue}\n showIcon={showIcon}\n showRadio={showRadio}\n cascade={cascade}\n foldedField=\"collapsed\"\n hideRoot\n value={value || ''}\n nodePath={nodePath}\n enableNodePath={enableNodePath}\n pathSeparator={pathSeparator}\n maxLength={maxLength}\n minLength={minLength}\n onAdd={onAdd}\n creatable={creatable}\n createTip={createTip}\n rootCreatable={rootCreatable}\n rootCreateTip={rootCreateTip}\n onEdit={onEdit}\n editable={editable}\n editTip={editTip}\n removable={removable}\n removeTip={removeTip}\n onDelete={onDelete}\n bultinCUD={!addControls && !editControls}\n onDeferLoad={deferLoad}\n onExpandTree={expandTreeOptions}\n />\n );\n }\n\n render() {\n const {\n className,\n disabled,\n inline,\n loading,\n multiple,\n value,\n clearable,\n classPrefix: ns,\n classnames: cx,\n searchable,\n autoComplete,\n selectedOptions,\n placeholder,\n popOverContainer,\n useMobileUI,\n translate: __,\n env\n } = this.props;\n\n const {isOpened} = this.state;\n const mobileUI = useMobileUI && isMobile();\n return (\n <div ref={this.container} className={cx(`TreeSelectControl`, className)}>\n <ResultBox\n disabled={disabled}\n ref={this.targetRef}\n placeholder={__(placeholder || '空')}\n className={cx(`TreeSelect`, {\n 'TreeSelect--inline': inline,\n 'TreeSelect--single': !multiple,\n 'TreeSelect--multi': multiple,\n 'TreeSelect--searchable':\n searchable || isEffectiveApi(autoComplete),\n 'is-opened': this.state.isOpened,\n 'is-focused': this.state.isFocused,\n 'is-disabled': disabled\n })}\n result={\n multiple\n ? selectedOptions\n : selectedOptions.length\n ? this.renderItem(selectedOptions[0])\n : ''\n }\n onResultClick={this.handleOutClick}\n value={this.state.inputValue}\n onChange={this.handleInputChange}\n onResultChange={this.handleResultChange}\n itemRender={this.renderItem}\n onKeyPress={this.handleKeyPress}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n onKeyDown={this.handleInputKeyDown}\n clearable={clearable}\n allowInput={searchable || isEffectiveApi(autoComplete)}\n inputPlaceholder={''}\n >\n {loading ? <Spinner size=\"sm\" /> : undefined}\n </ResultBox>\n {!mobileUI && isOpened ? (\n <Overlay\n container={popOverContainer || (() => this.container.current)}\n target={() => this.target}\n show\n >\n <PopOver\n classPrefix={ns}\n className={`${ns}TreeSelect-popover`}\n style={{\n minWidth: this.target ? this.target.offsetWidth : undefined\n }}\n onHide={this.close}\n overlay\n >\n {this.renderOuter()}\n </PopOver>\n </Overlay>\n ) : null}\n {mobileUI ? (\n <PopUp\n container={\n env && env.getModalContainer ? env.getModalContainer : undefined\n }\n className={cx(`${ns}TreeSelect-popup`)}\n isShow={isOpened}\n onHide={this.close}\n >\n {this.renderOuter()}\n </PopUp>\n ) : null}\n </div>\n );\n }\n}\n\n@OptionsControl({\n type: 'tree-select'\n})\nexport class TreeSelectControlRenderer extends TreeSelectControl {}\n"
|
11
|
+
"import React from 'react';\nimport Overlay from '../../components/Overlay';\nimport PopOver from '../../components/PopOver';\nimport PopUp from '../../components/PopUp';\n\nimport {\n OptionsControl,\n OptionsControlProps,\n Option,\n FormOptionsControl\n} from './Options';\nimport {Icon} from '../../components/icons';\nimport TreeSelector from '../../components/Tree';\nimport {matchSorter} from 'match-sorter';\nimport debouce from 'lodash/debounce';\nimport find from 'lodash/find';\nimport {Api} from '../../types';\nimport {isEffectiveApi} from '../../utils/api';\nimport Spinner from '../../components/Spinner';\nimport ResultBox from '../../components/ResultBox';\nimport {autobind, getTreeAncestors, isMobile, createObject} from '../../utils/helper';\nimport {findDOMNode} from 'react-dom';\nimport {normalizeOptions} from '../../components/Select';\nimport {Action} from '../../types';\n\n/**\n * Tree 下拉选择框。\n * 文档:https://baidu.gitee.io/amis/docs/components/form/tree\n */\nexport interface TreeSelectControlSchema extends FormOptionsControl {\n type: 'tree-select';\n\n /**\n * 是否隐藏顶级\n */\n hideRoot?: boolean;\n\n /**\n * 顶级选项的名称\n */\n rootLabel?: string;\n\n /**\n * 顶级选项的值\n */\n rootValue?: any;\n\n /**\n * 显示图标\n */\n showIcon?: boolean;\n\n /**\n * 父子之间是否完全独立。\n */\n cascade?: boolean;\n\n /**\n * 选父级的时候是否把子节点的值也包含在内。\n */\n withChildren?: boolean;\n\n /**\n * 选父级的时候,是否只把子节点的值包含在内\n */\n onlyChildren?: boolean;\n\n /**\n * 单选时,只运行选择叶子节点\n */\n onlyLeaf?: boolean;\n\n /**\n * 顶级节点是否可以创建子节点\n */\n rootCreatable?: boolean;\n\n /**\n * 是否隐藏选择框中已选中节点的祖先节点的文本信息\n */\n hideNodePathLabel?: boolean;\n\n /**\n * 是否开启节点路径模式\n */\n enableNodePath?: boolean;\n\n /**\n * 开启节点路径模式后,节点路径的分隔符\n */\n pathSeparator?: string;\n}\n\nexport interface TreeSelectProps extends OptionsControlProps {\n placeholder?: any;\n autoComplete?: Api;\n hideNodePathLabel?: boolean;\n enableNodePath?: boolean;\n pathSeparator?: string;\n useMobileUI?: boolean;\n}\n\nexport interface TreeSelectState {\n isOpened: boolean;\n isFocused: boolean;\n inputValue: string;\n}\n\nexport default class TreeSelectControl extends React.Component<\n TreeSelectProps,\n TreeSelectState\n> {\n static defaultProps = {\n placeholder: 'Select.placeholder',\n optionsPlaceholder: 'placeholder.noData',\n multiple: false,\n clearable: true,\n rootLabel: '顶级',\n rootValue: '',\n showIcon: true,\n joinValues: true,\n extractValue: false,\n delimiter: ',',\n resetValue: '',\n hideNodePathLabel: false,\n enableNodePath: false,\n pathSeparator: '/'\n };\n\n treeRef: any\n\n container: React.RefObject<HTMLDivElement> = React.createRef();\n\n input: React.RefObject<any> = React.createRef();\n\n cache: {\n [propName: string]: any;\n } = {};\n\n target: HTMLElement | null;\n targetRef = (ref: any) =>\n (this.target = ref ? (findDOMNode(ref) as HTMLElement) : null);\n\n constructor(props: TreeSelectProps) {\n super(props);\n\n this.state = {\n inputValue: '',\n isOpened: false,\n isFocused: false\n };\n\n this.open = this.open.bind(this);\n this.close = this.close.bind(this);\n this.handleChange = this.handleChange.bind(this);\n this.clearValue = this.clearValue.bind(this);\n this.handleFocus = this.handleFocus.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n this.handleKeyPress = this.handleKeyPress.bind(this);\n this.handleInputChange = this.handleInputChange.bind(this);\n this.handleInputKeyDown = this.handleInputKeyDown.bind(this);\n\n this.loadRemote = debouce(this.loadRemote.bind(this), 250, {\n trailing: true,\n leading: false\n });\n }\n\n componentDidMount() {\n this.loadRemote('');\n }\n\n open(fn?: () => void) {\n if (this.props.disabled) {\n return;\n }\n\n this.setState(\n {\n isOpened: true\n },\n fn\n );\n }\n\n close() {\n this.setState(\n {\n isOpened: false,\n inputValue: this.props.multiple ? this.state.inputValue : ''\n },\n () => this.loadRemote(this.state.inputValue)\n );\n }\n\n handleFocus(e: any) {\n const {dispatchEvent} = this.props;\n this.setState({\n isFocused: true\n });\n dispatchEvent('focus', e);\n }\n\n handleBlur(e: any) {\n const {dispatchEvent} = this.props;\n this.setState({\n isFocused: false\n });\n dispatchEvent('blur', e);\n }\n\n handleKeyPress(e: React.KeyboardEvent) {\n if (e.key === ' ') {\n this.handleOutClick(e as any);\n e.preventDefault();\n }\n }\n\n validate(): any {\n const {value, minLength, maxLength, delimiter, translate: __} = this.props;\n\n let curValue = Array.isArray(value)\n ? value\n : (value ? String(value) : '').split(delimiter || ',');\n if (minLength && curValue.length < minLength) {\n return __(\n '已选择数量低于设定的最小个数${minLength},请选择更多的选项。',\n {minLength}\n );\n } else if (maxLength && curValue.length > maxLength) {\n return __(\n '已选择数量超出设定的最大个数{{maxLength}},请取消选择超出的选项。',\n {maxLength}\n );\n }\n }\n\n removeItem(index: number, e?: React.MouseEvent<HTMLElement>) {\n const {\n selectedOptions,\n joinValues,\n extractValue,\n delimiter,\n valueField,\n onChange,\n disabled\n } = this.props;\n\n e && e.stopPropagation();\n\n if (disabled) {\n return;\n }\n\n const items = selectedOptions.concat();\n items.splice(index, 1);\n\n let value: any = items;\n\n if (joinValues) {\n value = items\n .map((item: any) => item[valueField || 'value'])\n .join(delimiter || ',');\n } else if (extractValue) {\n value = items.map((item: any) => item[valueField || 'value']);\n }\n\n onChange(value);\n }\n\n handleChange(value: any) {\n const {multiple} = this.props;\n\n if (!multiple) {\n this.close();\n }\n\n multiple || !this.state.inputValue\n ? this.resultChangeEvent(value)\n : this.setState(\n {\n inputValue: ''\n },\n () => this.resultChangeEvent(value)\n );\n }\n\n handleInputChange(value: string) {\n const {autoComplete, data} = this.props;\n\n this.setState(\n {\n inputValue: value\n },\n isEffectiveApi(autoComplete, data)\n ? () => this.loadRemote(this.state.inputValue)\n : undefined\n );\n }\n\n handleInputKeyDown(event: React.KeyboardEvent) {\n const inputValue = this.state.inputValue;\n const {multiple, selectedOptions} = this.props;\n\n if (\n event.key === 'Backspace' &&\n !inputValue &&\n selectedOptions.length &&\n multiple\n ) {\n this.removeItem(selectedOptions.length - 1);\n }\n }\n\n clearValue() {\n const {onChange, resetValue} = this.props;\n\n onChange(typeof resetValue === 'undefined' ? '' : resetValue);\n }\n\n filterOptions(options: Array<Option>, keywords: string): Array<Option> {\n const {labelField, valueField} = this.props;\n\n return options.map(option => {\n option = {\n ...option\n };\n option.visible = !!matchSorter([option], keywords, {\n keys: [labelField || 'label', valueField || 'value']\n }).length;\n\n if (!option.visible && option.children) {\n option.children = this.filterOptions(option.children, keywords);\n const visibleCount = option.children.filter(\n item => item.visible\n ).length;\n option.visible = !!visibleCount;\n }\n\n option.visible && (option.collapsed = false);\n return option;\n });\n }\n\n async loadRemote(input: string) {\n const {autoComplete, env, data, setOptions, setLoading} = this.props;\n\n if (!isEffectiveApi(autoComplete, data)) {\n return;\n } else if (!env || !env.fetcher) {\n throw new Error('fetcher is required');\n }\n\n if (this.cache[input] || ~input.indexOf(\"'\") /*中文没输完 233*/) {\n let options = this.cache[input] || [];\n let combinedOptions = this.mergeOptions(options);\n setOptions(combinedOptions);\n\n return Promise.resolve({\n options: combinedOptions\n });\n }\n\n setLoading(true);\n\n try {\n const ret: any = await env.fetcher(autoComplete, {\n ...data,\n term: input,\n value: input\n });\n\n let options = (ret.data && (ret.data as any).options) || ret.data || [];\n this.cache[input] = options;\n let combinedOptions = this.mergeOptions(options);\n setOptions(combinedOptions);\n\n return {\n options: combinedOptions\n };\n } finally {\n setLoading(false);\n }\n }\n\n mergeOptions(options: Array<object>) {\n const {selectedOptions} = this.props;\n let combinedOptions = normalizeOptions(options).concat();\n\n if (Array.isArray(selectedOptions) && selectedOptions.length) {\n selectedOptions.forEach(option => {\n if (\n !find(combinedOptions, (item: Option) => item.value == option.value)\n ) {\n combinedOptions.push({\n ...option,\n visible: false\n });\n }\n });\n }\n return combinedOptions;\n }\n\n reload() {\n const reload = this.props.reloadOptions;\n reload && reload();\n }\n\n @autobind\n handleOutClick(e: React.MouseEvent<any>) {\n e.defaultPrevented ||\n this.setState({\n isOpened: true\n });\n }\n\n @autobind\n handleResultChange(value: Array<Option>) {\n const {\n joinValues,\n extractValue,\n delimiter,\n valueField,\n multiple\n } = this.props;\n\n let newValue: any = Array.isArray(value) ? value.concat() : [];\n\n if (!multiple && !newValue.length) {\n this.resultChangeEvent('');\n return;\n }\n\n if (joinValues || extractValue) {\n newValue = value.map(item => item[valueField || 'value']);\n }\n\n if (joinValues) {\n newValue = newValue.join(delimiter || ',');\n }\n this.resultChangeEvent(newValue);\n }\n\n doAction(action: Action, data: any, throwErrors: boolean) {\n if (action.actionType && ['clear', 'reset'].includes(action.actionType)) {\n this.clearValue();\n }\n }\n\n @autobind\n async resultChangeEvent(value: any) {\n const {onChange, dispatchEvent, data} = this.props;\n\n const rendererEvent = await dispatchEvent('change', createObject(data, {\n value\n }));\n\n if (rendererEvent?.prevented) {\n return;\n }\n onChange && onChange(value);\n }\n\n @autobind\n renderItem(item: Option) {\n const {labelField, options, hideNodePathLabel} = this.props;\n\n if (hideNodePathLabel) {\n return item[labelField || 'label'];\n }\n\n // 将所有祖先节点也展现出来\n const ancestors = getTreeAncestors(options, item, true);\n return `${\n ancestors\n ? ancestors.map(item => `${item[labelField || 'label']}`).join(' / ')\n : item[labelField || 'label']\n }`;\n }\n\n @autobind\n domRef(ref: any) {\n this.treeRef = ref;\n }\n\n renderOuter() {\n const {\n value,\n enableNodePath,\n pathSeparator = '/',\n disabled,\n joinValues,\n extractValue,\n delimiter,\n placeholder,\n options,\n multiple,\n valueField,\n initiallyOpen,\n unfoldedLevel,\n withChildren,\n rootLabel,\n cascade,\n rootValue,\n showIcon,\n showRadio,\n popOverContainer,\n onlyChildren,\n onlyLeaf,\n classPrefix: ns,\n optionsPlaceholder,\n searchable,\n autoComplete,\n maxLength,\n minLength,\n labelField,\n nodePath,\n onAdd,\n creatable,\n createTip,\n addControls,\n onEdit,\n editable,\n editTip,\n editControls,\n removable,\n removeTip,\n onDelete,\n rootCreatable,\n rootCreateTip,\n translate: __,\n deferLoad,\n expandTreeOptions\n } = this.props;\n\n let filtedOptions =\n !isEffectiveApi(autoComplete) && searchable && this.state.inputValue\n ? this.filterOptions(options, this.state.inputValue)\n : options;\n\n return (\n <TreeSelector\n classPrefix={ns}\n onRef={this.domRef}\n onlyChildren={onlyChildren}\n onlyLeaf={onlyLeaf}\n labelField={labelField}\n valueField={valueField}\n disabled={disabled}\n onChange={this.handleChange}\n joinValues={joinValues}\n extractValue={extractValue}\n delimiter={delimiter}\n placeholder={__(optionsPlaceholder)}\n options={filtedOptions}\n highlightTxt={this.state.inputValue}\n multiple={multiple}\n initiallyOpen={initiallyOpen}\n unfoldedLevel={unfoldedLevel}\n withChildren={withChildren}\n rootLabel={__(rootLabel)}\n rootValue={rootValue}\n showIcon={showIcon}\n showRadio={showRadio}\n cascade={cascade}\n foldedField=\"collapsed\"\n hideRoot\n value={value || ''}\n nodePath={nodePath}\n enableNodePath={enableNodePath}\n pathSeparator={pathSeparator}\n maxLength={maxLength}\n minLength={minLength}\n onAdd={onAdd}\n creatable={creatable}\n createTip={createTip}\n rootCreatable={rootCreatable}\n rootCreateTip={rootCreateTip}\n onEdit={onEdit}\n editable={editable}\n editTip={editTip}\n removable={removable}\n removeTip={removeTip}\n onDelete={onDelete}\n bultinCUD={!addControls && !editControls}\n onDeferLoad={deferLoad}\n onExpandTree={expandTreeOptions}\n />\n );\n }\n\n render() {\n const {\n className,\n disabled,\n inline,\n loading,\n multiple,\n value,\n clearable,\n classPrefix: ns,\n classnames: cx,\n searchable,\n autoComplete,\n selectedOptions,\n placeholder,\n popOverContainer,\n useMobileUI,\n translate: __,\n env\n } = this.props;\n\n const {isOpened} = this.state;\n const mobileUI = useMobileUI && isMobile();\n return (\n <div ref={this.container} className={cx(`TreeSelectControl`, className)}>\n <ResultBox\n disabled={disabled}\n ref={this.targetRef}\n placeholder={__(placeholder || '空')}\n className={cx(`TreeSelect`, {\n 'TreeSelect--inline': inline,\n 'TreeSelect--single': !multiple,\n 'TreeSelect--multi': multiple,\n 'TreeSelect--searchable':\n searchable || isEffectiveApi(autoComplete),\n 'is-opened': this.state.isOpened,\n 'is-focused': this.state.isFocused,\n 'is-disabled': disabled\n })}\n result={\n multiple\n ? selectedOptions\n : selectedOptions.length\n ? this.renderItem(selectedOptions[0])\n : ''\n }\n onResultClick={this.handleOutClick}\n value={this.state.inputValue}\n onChange={this.handleInputChange}\n onResultChange={this.handleResultChange}\n itemRender={this.renderItem}\n onKeyPress={this.handleKeyPress}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n onKeyDown={this.handleInputKeyDown}\n clearable={clearable}\n allowInput={searchable || isEffectiveApi(autoComplete)}\n inputPlaceholder={''}\n >\n {loading ? <Spinner size=\"sm\" /> : undefined}\n </ResultBox>\n {!mobileUI && isOpened ? (\n <Overlay\n container={popOverContainer || (() => this.container.current)}\n target={() => this.target}\n show\n >\n <PopOver\n classPrefix={ns}\n className={`${ns}TreeSelect-popover`}\n style={{\n minWidth: this.target ? this.target.offsetWidth : undefined\n }}\n onHide={this.close}\n overlay\n >\n {this.renderOuter()}\n </PopOver>\n </Overlay>\n ) : null}\n {mobileUI ? (\n <PopUp\n container={\n env && env.getModalContainer ? env.getModalContainer : undefined\n }\n className={cx(`${ns}TreeSelect-popup`)}\n isShow={isOpened}\n onHide={this.close}\n >\n {this.renderOuter()}\n </PopUp>\n ) : null}\n </div>\n );\n }\n}\n\n@OptionsControl({\n type: 'tree-select'\n})\nexport class TreeSelectControlRenderer extends TreeSelectControl {}\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -11,6 +11,7 @@ export interface FormSchemaHorizontal {
|
|
11
11
|
left?: number;
|
12
12
|
right?: number;
|
13
13
|
leftFixed?: boolean | number | 'xs' | 'sm' | 'md' | 'lg';
|
14
|
+
justify?: boolean;
|
14
15
|
}
|
15
16
|
/**
|
16
17
|
* Form 表单渲染器。
|
@@ -300,6 +301,7 @@ export default class Form extends React.Component<FormProps, object> {
|
|
300
301
|
addHook(fn: () => any, type?: 'validate' | 'init' | 'flush'): () => void;
|
301
302
|
removeHook(fn: () => any, type?: string): void;
|
302
303
|
handleChange(value: any, name: string, submit: boolean, changePristine?: boolean): void;
|
304
|
+
formItemDispatchEvent(dispatchEvent: any): (type: string, data: any) => void;
|
303
305
|
emitChange(submit: boolean): void;
|
304
306
|
handleBulkChange(values: Object, submit: boolean): void;
|
305
307
|
handleFormSubmit(e: React.UIEvent<any>): any;
|
@@ -339,4 +341,5 @@ export declare class FormRenderer extends Form {
|
|
339
341
|
closeTarget(target: string): void;
|
340
342
|
reload(target?: string, query?: any, ctx?: any, silent?: boolean): void;
|
341
343
|
receive(values: object, name?: string): void;
|
344
|
+
setData(values: object): void;
|
342
345
|
}
|
@@ -179,11 +179,11 @@ var Form = /** @class */ (function (_super) {
|
|
179
179
|
};
|
180
180
|
Form.prototype.onInit = function () {
|
181
181
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
182
|
-
var _a, onInit, store, persistData, submitOnInit, data, initedAt, hooks;
|
182
|
+
var _a, onInit, store, persistData, submitOnInit, dispatchEvent, data, initedAt, hooks, dispatcher;
|
183
183
|
return (0, tslib_1.__generator)(this, function (_b) {
|
184
184
|
switch (_b.label) {
|
185
185
|
case 0:
|
186
|
-
_a = this.props, onInit = _a.onInit, store = _a.store, persistData = _a.persistData, submitOnInit = _a.submitOnInit;
|
186
|
+
_a = this.props, onInit = _a.onInit, store = _a.store, persistData = _a.persistData, submitOnInit = _a.submitOnInit, dispatchEvent = _a.dispatchEvent;
|
187
187
|
if (!(0, mobx_state_tree_1.isAlive)(store)) {
|
188
188
|
return [2 /*return*/];
|
189
189
|
}
|
@@ -205,7 +205,10 @@ var Form = /** @class */ (function (_super) {
|
|
205
205
|
data = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, data), store.data);
|
206
206
|
}
|
207
207
|
persistData && store.getLocalPersistData();
|
208
|
-
|
208
|
+
dispatcher = dispatchEvent('inited', (0, helper_1.createObject)(this.props.data, { formData: data }));
|
209
|
+
if (!(dispatcher === null || dispatcher === void 0 ? void 0 : dispatcher.prevented)) {
|
210
|
+
onInit && onInit(data, this.props);
|
211
|
+
}
|
209
212
|
submitOnInit &&
|
210
213
|
this.handleAction(undefined, {
|
211
214
|
type: 'submit'
|
@@ -269,9 +272,17 @@ var Form = /** @class */ (function (_super) {
|
|
269
272
|
return this.props.store.validated;
|
270
273
|
};
|
271
274
|
Form.prototype.validate = function (forceValidate) {
|
272
|
-
var
|
275
|
+
var _a = this.props, store = _a.store, dispatchEvent = _a.dispatchEvent, data = _a.data;
|
273
276
|
this.flush();
|
274
|
-
return store.validate(this.hooks['validate'] || [], forceValidate)
|
277
|
+
return store.validate(this.hooks['validate'] || [], forceValidate).then(function (result) {
|
278
|
+
if (result) {
|
279
|
+
dispatchEvent('validateSucc', data);
|
280
|
+
}
|
281
|
+
else {
|
282
|
+
dispatchEvent('validateFail', data);
|
283
|
+
}
|
284
|
+
return result;
|
285
|
+
});
|
275
286
|
};
|
276
287
|
Form.prototype.clearErrors = function () {
|
277
288
|
var store = this.props.store;
|
@@ -288,9 +299,12 @@ var Form = /** @class */ (function (_super) {
|
|
288
299
|
store.setValues(value);
|
289
300
|
};
|
290
301
|
Form.prototype.submit = function (fn) {
|
291
|
-
var _a = this.props, store = _a.store, messages = _a.messages, __ = _a.translate;
|
302
|
+
var _a = this.props, store = _a.store, messages = _a.messages, __ = _a.translate, dispatchEvent = _a.dispatchEvent, data = _a.data;
|
292
303
|
this.flush();
|
293
|
-
|
304
|
+
var validateErrCb = function () {
|
305
|
+
dispatchEvent('validateFail', data);
|
306
|
+
};
|
307
|
+
return store.submit(fn, this.hooks['validate'] || [], __(messages && messages.validateFailed), validateErrCb);
|
294
308
|
};
|
295
309
|
// 如果开启了 lazyChange,需要一个 flush 方法把队列中值应用上。
|
296
310
|
Form.prototype.flush = function () {
|
@@ -341,13 +355,20 @@ var Form = /** @class */ (function (_super) {
|
|
341
355
|
store.setLocalPersistData();
|
342
356
|
}
|
343
357
|
};
|
358
|
+
Form.prototype.formItemDispatchEvent = function (dispatchEvent) {
|
359
|
+
return function (type, data) {
|
360
|
+
dispatchEvent(type, data);
|
361
|
+
};
|
362
|
+
};
|
344
363
|
Form.prototype.emitChange = function (submit) {
|
345
|
-
var _a = this.props, onChange = _a.onChange, store = _a.store, submitOnChange = _a.submitOnChange;
|
364
|
+
var _a = this.props, onChange = _a.onChange, store = _a.store, submitOnChange = _a.submitOnChange, dispatchEvent = _a.dispatchEvent, data = _a.data;
|
346
365
|
if (!(0, mobx_state_tree_1.isAlive)(store)) {
|
347
366
|
return;
|
348
367
|
}
|
349
|
-
|
350
|
-
|
368
|
+
var dispatcher = dispatchEvent('change', (0, helper_1.createObject)(data, { formData: store.data }));
|
369
|
+
if (!(dispatcher === null || dispatcher === void 0 ? void 0 : dispatcher.prevented)) {
|
370
|
+
onChange && onChange(store.data, (0, helper_1.difference)(store.data, store.pristine), this.props);
|
371
|
+
}
|
351
372
|
store.clearRestError();
|
352
373
|
(submit || (submitOnChange && store.inited)) &&
|
353
374
|
this.handleAction(undefined, {
|
@@ -382,7 +403,7 @@ var Form = /** @class */ (function (_super) {
|
|
382
403
|
Form.prototype.handleAction = function (e, action, data, throwErrors, delegate) {
|
383
404
|
var _this = this;
|
384
405
|
if (throwErrors === void 0) { throwErrors = false; }
|
385
|
-
var _a = this.props, store = _a.store, onSubmit = _a.onSubmit, api = _a.api, asyncApi = _a.asyncApi, finishedField = _a.finishedField, checkInterval = _a.checkInterval, _b = _a.messages, saveSuccess = _b.saveSuccess, saveFailed = _b.saveFailed, resetAfterSubmit = _a.resetAfterSubmit, clearAfterSubmit = _a.clearAfterSubmit, onAction = _a.onAction, onSaved = _a.onSaved, onReset = _a.onReset, onFinished = _a.onFinished, onFailed = _a.onFailed, redirect = _a.redirect, reload = _a.reload, target = _a.target, env = _a.env, onChange = _a.onChange, clearPersistDataAfterSubmit = _a.clearPersistDataAfterSubmit, trimValues = _a.trimValues, __ = _a.translate;
|
406
|
+
var _a = this.props, store = _a.store, onSubmit = _a.onSubmit, api = _a.api, asyncApi = _a.asyncApi, finishedField = _a.finishedField, checkInterval = _a.checkInterval, _b = _a.messages, saveSuccess = _b.saveSuccess, saveFailed = _b.saveFailed, resetAfterSubmit = _a.resetAfterSubmit, clearAfterSubmit = _a.clearAfterSubmit, onAction = _a.onAction, onSaved = _a.onSaved, onReset = _a.onReset, onFinished = _a.onFinished, onFailed = _a.onFailed, redirect = _a.redirect, reload = _a.reload, target = _a.target, env = _a.env, onChange = _a.onChange, clearPersistDataAfterSubmit = _a.clearPersistDataAfterSubmit, trimValues = _a.trimValues, dispatchEvent = _a.dispatchEvent, __ = _a.translate;
|
386
407
|
// 做动作之前,先把数据同步一下。
|
387
408
|
this.flush();
|
388
409
|
if (trimValues) {
|
@@ -395,9 +416,11 @@ var Form = /** @class */ (function (_super) {
|
|
395
416
|
if (Array.isArray(action.required) && action.required.length) {
|
396
417
|
return store.validateFields(action.required).then(function (result) {
|
397
418
|
if (!result) {
|
419
|
+
dispatchEvent('validateError', _this.props.data);
|
398
420
|
env.notify('error', __('Form.validateFailed'));
|
399
421
|
}
|
400
422
|
else {
|
423
|
+
dispatchEvent('validateSucc', _this.props.data);
|
401
424
|
_this.handleAction(e, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, action), { required: undefined }), data, throwErrors, delegate);
|
402
425
|
}
|
403
426
|
});
|
@@ -419,6 +442,8 @@ var Form = /** @class */ (function (_super) {
|
|
419
442
|
if (onSubmit && onSubmit(values, action) === false) {
|
420
443
|
return Promise.resolve(false);
|
421
444
|
}
|
445
|
+
// 走到这里代表校验成功了
|
446
|
+
dispatchEvent('validateSucc', _this.props.data);
|
422
447
|
if (target) {
|
423
448
|
_this.submitToTarget(target, values);
|
424
449
|
}
|
@@ -441,12 +466,17 @@ var Form = /** @class */ (function (_super) {
|
|
441
466
|
.saveRemote(action.api || api, values, {
|
442
467
|
successMessage: saveSuccess,
|
443
468
|
errorMessage: saveFailed,
|
444
|
-
onSuccess: function () {
|
469
|
+
onSuccess: function (result) {
|
470
|
+
// result为提交接口返回的内容
|
471
|
+
dispatchEvent('submitSucc', (0, helper_1.createObject)(_this.props.data, { result: result }));
|
445
472
|
if (!(0, api_1.isEffectiveApi)(finnalAsyncApi_1, store.data) ||
|
446
473
|
store.data[finishedField || 'finished']) {
|
447
474
|
return;
|
448
475
|
}
|
449
476
|
return (0, helper_1.until)(function () { return store.checkRemote(finnalAsyncApi_1, store.data); }, function (ret) { return ret && ret[finishedField || 'finished']; }, function (cancel) { return (_this.asyncCancel = cancel); }, checkInterval);
|
477
|
+
},
|
478
|
+
onFailed: function (result) {
|
479
|
+
dispatchEvent('submitFail', (0, helper_1.createObject)(_this.props.data, { error: result }));
|
450
480
|
}
|
451
481
|
})
|
452
482
|
.then(function (response) { return (0, tslib_1.__awaiter)(_this, void 0, void 0, function () {
|
@@ -514,6 +544,10 @@ var Form = /** @class */ (function (_super) {
|
|
514
544
|
store.setCurrentAction(action);
|
515
545
|
store.clear(onReset);
|
516
546
|
}
|
547
|
+
else if (action.actionType === 'validate') {
|
548
|
+
store.setCurrentAction(action);
|
549
|
+
this.validate(true);
|
550
|
+
}
|
517
551
|
else if (action.actionType === 'dialog') {
|
518
552
|
store.setCurrentAction(action);
|
519
553
|
store.openDialog(data);
|
@@ -573,7 +607,6 @@ var Form = /** @class */ (function (_super) {
|
|
573
607
|
this.reloadTarget(action.target, data);
|
574
608
|
}
|
575
609
|
else {
|
576
|
-
// 刷自己
|
577
610
|
this.receive(data);
|
578
611
|
}
|
579
612
|
// action.target && this.reloadTarget(action.target, data);
|
@@ -737,7 +770,7 @@ var Form = /** @class */ (function (_super) {
|
|
737
770
|
}
|
738
771
|
var props = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, this.props), otherProps);
|
739
772
|
var form = this.props.store;
|
740
|
-
var render = props.render, mode = props.mode, horizontal = props.horizontal, store = props.store, disabled = props.disabled, controlWidth = props.controlWidth, resolveDefinitions = props.resolveDefinitions, lazyChange = props.lazyChange, formLazyChange = props.formLazyChange;
|
773
|
+
var render = props.render, mode = props.mode, horizontal = props.horizontal, store = props.store, disabled = props.disabled, controlWidth = props.controlWidth, resolveDefinitions = props.resolveDefinitions, lazyChange = props.lazyChange, formLazyChange = props.formLazyChange, dispatchEvent = props.dispatchEvent;
|
741
774
|
var subProps = {
|
742
775
|
formStore: form,
|
743
776
|
data: store.data,
|
@@ -748,7 +781,7 @@ var Form = /** @class */ (function (_super) {
|
|
748
781
|
formHorizontal: horizontal,
|
749
782
|
controlWidth: controlWidth,
|
750
783
|
disabled: disabled || control.disabled || form.loading,
|
751
|
-
btnDisabled: form.loading || form.validating,
|
784
|
+
btnDisabled: disabled || form.loading || form.validating,
|
752
785
|
onAction: this.handleAction,
|
753
786
|
onQuery: this.handleQuery,
|
754
787
|
onChange: this.handleChange,
|
@@ -756,6 +789,7 @@ var Form = /** @class */ (function (_super) {
|
|
756
789
|
addHook: this.addHook,
|
757
790
|
removeHook: this.removeHook,
|
758
791
|
renderFormItems: this.renderFormItems,
|
792
|
+
formItemDispatchEvent: this.formItemDispatchEvent(dispatchEvent),
|
759
793
|
formPristine: form.pristine
|
760
794
|
// value: (control as any)?.name
|
761
795
|
// ? getVariable(form.data, (control as any)?.name, canAccessSuperData)
|
@@ -927,11 +961,11 @@ var FormRenderer = /** @class */ (function (_super) {
|
|
927
961
|
return this.handleAction(undefined, action, data, throwErrors);
|
928
962
|
};
|
929
963
|
FormRenderer.prototype.handleAction = function (e, action, ctx, throwErrors, delegate) {
|
964
|
+
if (throwErrors === void 0) { throwErrors = false; }
|
930
965
|
// 禁用了不要做任何动作。@先注释掉,会引起其他问题
|
931
966
|
// if (this.props.disabled) {
|
932
967
|
// return;
|
933
968
|
// }
|
934
|
-
if (throwErrors === void 0) { throwErrors = false; }
|
935
969
|
if (action.target && action.actionType !== 'reload') {
|
936
970
|
var scoped_1 = this.context;
|
937
971
|
return Promise.all(action.target.split(',').map(function (name) {
|
@@ -1017,6 +1051,9 @@ var FormRenderer = /** @class */ (function (_super) {
|
|
1017
1051
|
}
|
1018
1052
|
return _super.prototype.receive.call(this, values);
|
1019
1053
|
};
|
1054
|
+
FormRenderer.prototype.setData = function (values) {
|
1055
|
+
return _super.prototype.setValues.call(this, values);
|
1056
|
+
};
|
1020
1057
|
var _a;
|
1021
1058
|
FormRenderer.contextType = Scoped_1.ScopedContext;
|
1022
1059
|
FormRenderer = (0, tslib_1.__decorate)([
|