amis 1.3.5-beta.7 → 1.4.2-beta.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/lib/Schema.d.ts +26 -2
- package/lib/Schema.js.map +1 -1
- package/lib/components/Alert.js +3 -1
- package/lib/components/Alert.js.map +2 -2
- package/lib/components/AnchorNav.d.ts +22 -21
- package/lib/components/AnchorNav.js +7 -3
- package/lib/components/AnchorNav.js.map +2 -2
- package/lib/components/ArrayInput.d.ts +84 -84
- package/lib/components/AssociatedSelection.d.ts +930 -0
- package/lib/components/AssociatedSelection.js +89 -0
- package/lib/components/AssociatedSelection.js.map +13 -0
- package/lib/components/Badge.d.ts +16 -3
- package/lib/components/Badge.js +54 -5
- package/lib/components/Badge.js.map +2 -2
- package/lib/components/Button.d.ts +24 -22
- package/lib/components/Button.js +13 -7
- package/lib/components/Button.js.map +2 -2
- package/lib/components/{ChainedCheckboxes.d.ts → ChainedSelection.d.ts} +267 -98
- package/lib/components/{ChainedCheckboxes.js → ChainedSelection.js} +30 -24
- package/lib/components/ChainedSelection.js.map +13 -0
- package/lib/components/Checkbox.d.ts +1 -1
- package/lib/components/Checkbox.js +1 -1
- package/lib/components/Checkbox.js.map +2 -2
- package/lib/components/Collapse.js +1 -1
- package/lib/components/Collapse.js.map +2 -2
- package/lib/components/ColorPicker.d.ts +84 -84
- package/lib/components/DatePicker.d.ts +84 -84
- package/lib/components/DatePicker.js +1 -1
- package/lib/components/DatePicker.js.map +2 -2
- package/lib/components/DateRangePicker.d.ts +84 -84
- package/lib/components/DateRangePicker.js +1 -1
- 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/Editor.d.ts +84 -84
- package/lib/components/GroupedSelection.d.ts +907 -0
- package/lib/components/GroupedSelection.js +48 -0
- package/lib/components/GroupedSelection.js.map +13 -0
- package/lib/components/InputBox.js +1 -1
- package/lib/components/InputBox.js.map +2 -2
- package/lib/components/Link.d.ts +84 -0
- package/lib/components/Link.js +43 -0
- package/lib/components/Link.js.map +13 -0
- 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/ModalManager.js +1 -1
- package/lib/components/ModalManager.js.map +2 -2
- package/lib/components/MonthRangePicker.d.ts +84 -84
- package/lib/components/MonthRangePicker.js +1 -1
- package/lib/components/MonthRangePicker.js.map +2 -2
- package/lib/components/NumberInput.d.ts +20 -20
- package/lib/components/PickerColumn.d.ts +514 -0
- package/lib/components/PickerColumn.js +279 -0
- package/lib/components/PickerColumn.js.map +13 -0
- package/lib/components/PickerContainer.d.ts +513 -0
- package/lib/components/PickerContainer.js +96 -0
- package/lib/components/PickerContainer.js.map +13 -0
- package/lib/components/Radios.d.ts +22 -21
- package/lib/components/Radios.js +1 -0
- package/lib/components/Radios.js.map +2 -2
- package/lib/components/Rating.d.ts +21 -21
- package/lib/components/ResultBox.d.ts +84 -84
- package/lib/components/RichText.d.ts +6 -1
- package/lib/components/RichText.js +207 -8
- package/lib/components/RichText.js.map +2 -2
- package/lib/components/SearchBox.d.ts +84 -84
- package/lib/components/SearchBox.js +4 -4
- package/lib/components/SearchBox.js.map +2 -2
- package/lib/components/Select.d.ts +252 -237
- package/lib/components/Select.js +28 -4
- package/lib/components/Select.js.map +2 -2
- package/lib/components/{Checkboxes.d.ts → Selection.d.ts} +273 -98
- package/lib/components/Selection.js +134 -0
- package/lib/components/Selection.js.map +13 -0
- package/lib/components/SparkLine.d.ts +85 -84
- package/lib/components/SparkLine.js +2 -2
- package/lib/components/SparkLine.js.map +2 -2
- package/lib/components/Steps.d.ts +3 -3
- package/lib/components/Steps.js.map +1 -1
- package/lib/components/{TableCheckboxes.d.ts → TableSelection.d.ts} +266 -96
- package/lib/components/{TableCheckboxes.js → TableSelection.js} +30 -30
- package/lib/components/TableSelection.js.map +13 -0
- package/lib/components/Tabs.d.ts +20 -20
- package/lib/components/TabsTransfer.d.ts +84 -84
- package/lib/components/TabsTransfer.js +9 -9
- package/lib/components/TabsTransfer.js.map +2 -2
- package/lib/components/TabsTransferPicker.d.ts +489 -0
- package/lib/components/TabsTransferPicker.js +60 -0
- package/lib/components/TabsTransferPicker.js.map +13 -0
- package/lib/components/Toast.js +2 -2
- package/lib/components/Toast.js.map +2 -2
- package/lib/components/Transfer.d.ts +908 -274
- package/lib/components/Transfer.js +31 -24
- package/lib/components/Transfer.js.map +2 -2
- package/lib/components/TransferDropDown.d.ts +487 -0
- package/lib/components/TransferDropDown.js +59 -0
- package/lib/components/TransferDropDown.js.map +13 -0
- package/lib/components/TransferPicker.d.ts +489 -0
- package/lib/components/TransferPicker.js +60 -0
- package/lib/components/TransferPicker.js.map +13 -0
- package/lib/components/Tree.d.ts +84 -84
- package/lib/components/Tree.js +5 -3
- package/lib/components/Tree.js.map +2 -2
- package/lib/components/{TreeCheckboxes.d.ts → TreeSelection.d.ts} +269 -99
- package/lib/components/{TreeCheckboxes.js → TreeSelection.js} +36 -32
- package/lib/components/TreeSelection.js.map +13 -0
- package/lib/components/WithRemoteConfig.d.ts +8 -0
- package/lib/components/WithRemoteConfig.js +29 -3
- package/lib/components/WithRemoteConfig.js.map +2 -2
- package/lib/components/calendar/DaysView.js +2 -2
- package/lib/components/calendar/DaysView.js.map +2 -2
- package/lib/components/condition-builder/Field.js +5 -3
- package/lib/components/condition-builder/Field.js.map +2 -2
- package/lib/components/condition-builder/Func.js +2 -2
- package/lib/components/condition-builder/Func.js.map +2 -2
- 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.js +3 -3
- package/lib/components/condition-builder/Item.js.map +2 -2
- package/lib/components/condition-builder/Value.js +2 -1
- package/lib/components/condition-builder/Value.js.map +2 -2
- package/lib/components/condition-builder/types.d.ts +5 -0
- package/lib/components/condition-builder/types.js.map +1 -1
- package/lib/components/icons.js +14 -0
- package/lib/components/icons.js.map +2 -2
- package/lib/components/index.d.ts +8 -8
- package/lib/components/index.js +16 -16
- package/lib/components/index.js.map +2 -2
- package/lib/envOverwrite.js.map +2 -2
- package/lib/factory.d.ts +9 -1
- package/lib/factory.js +13 -6
- package/lib/factory.js.map +2 -2
- package/lib/helper.css.map +1 -1
- package/lib/hooks/index.d.ts +5 -0
- package/lib/hooks/index.js +14 -0
- package/lib/hooks/index.js.map +13 -0
- package/lib/hooks/use-set-state.d.ts +2 -0
- package/lib/hooks/use-set-state.js +15 -0
- package/lib/hooks/use-set-state.js.map +13 -0
- package/lib/hooks/use-touch.d.ts +16 -0
- package/lib/hooks/use-touch.js +73 -0
- package/lib/hooks/use-touch.js.map +13 -0
- package/lib/hooks/use-update-effect.d.ts +3 -0
- package/lib/hooks/use-update-effect.js +17 -0
- package/lib/hooks/use-update-effect.js.map +13 -0
- package/lib/icons/clock.js +10 -0
- package/lib/icons/loading-outline.js +7 -0
- package/lib/icons/status-close.js +11 -0
- package/lib/icons/status-fail.js +11 -0
- package/lib/icons/status-info.js +10 -0
- package/lib/icons/status-success.js +11 -0
- package/lib/icons/status-warning.js +10 -0
- package/lib/index.d.ts +3 -0
- package/lib/index.js +4 -1
- package/lib/index.js.map +2 -2
- package/lib/locale/de-DE.js +5 -0
- package/lib/locale/de-DE.js.map +2 -2
- package/lib/locale/en-US.js +6 -1
- package/lib/locale/en-US.js.map +2 -2
- package/lib/locale/zh-CN.js +9 -4
- package/lib/locale/zh-CN.js.map +2 -2
- package/lib/renderers/Action.d.ts +17 -1
- package/lib/renderers/Action.js +21 -8
- package/lib/renderers/Action.js.map +2 -2
- package/lib/renderers/AnchorNav.d.ts +1 -0
- package/lib/renderers/AnchorNav.js +2 -2
- package/lib/renderers/AnchorNav.js.map +2 -2
- package/lib/renderers/Avatar.js +3 -3
- package/lib/renderers/Avatar.js.map +2 -2
- package/lib/renderers/Breadcrumb.js +1 -1
- package/lib/renderers/Breadcrumb.js.map +2 -2
- package/lib/renderers/CRUD.d.ts +9 -0
- package/lib/renderers/CRUD.js +48 -23
- package/lib/renderers/CRUD.js.map +2 -2
- package/lib/renderers/Card.d.ts +4 -0
- package/lib/renderers/Card.js +29 -23
- package/lib/renderers/Card.js.map +2 -2
- package/lib/renderers/Chart.js +1 -1
- package/lib/renderers/Chart.js.map +2 -2
- package/lib/renderers/Collapse.d.ts +1 -1
- package/lib/renderers/Collapse.js +8 -3
- package/lib/renderers/Collapse.js.map +2 -2
- package/lib/renderers/Dialog.d.ts +0 -252
- package/lib/renderers/Dialog.js +1 -4
- package/lib/renderers/Dialog.js.map +2 -2
- package/lib/renderers/Drawer.js +0 -3
- package/lib/renderers/Drawer.js.map +2 -2
- package/lib/renderers/DropDownButton.d.ts +13 -1
- package/lib/renderers/DropDownButton.js +9 -5
- package/lib/renderers/DropDownButton.js.map +2 -2
- package/lib/renderers/Form/Checkbox.d.ts +5 -0
- package/lib/renderers/Form/Checkbox.js +4 -0
- package/lib/renderers/Form/Checkbox.js.map +2 -2
- package/lib/renderers/Form/Combo.js +2 -2
- package/lib/renderers/Form/Combo.js.map +2 -2
- package/lib/renderers/Form/DiffEditor.d.ts +4 -5
- package/lib/renderers/Form/Editor.d.ts +3 -4
- package/lib/renderers/Form/Editor.js +1 -1
- package/lib/renderers/Form/Editor.js.map +2 -2
- package/lib/renderers/Form/InputCity.d.ts +84 -84
- package/lib/renderers/Form/InputCity.js +7 -6
- package/lib/renderers/Form/InputCity.js.map +2 -2
- package/lib/renderers/Form/InputColor.d.ts +84 -84
- package/lib/renderers/Form/InputExcel.d.ts +5 -0
- package/lib/renderers/Form/InputExcel.js +24 -3
- package/lib/renderers/Form/InputExcel.js.map +2 -2
- package/lib/renderers/Form/InputFile.js +12 -6
- package/lib/renderers/Form/InputFile.js.map +2 -2
- package/lib/renderers/Form/InputImage.d.ts +8 -0
- package/lib/renderers/Form/InputImage.js +18 -8
- package/lib/renderers/Form/InputImage.js.map +2 -2
- package/lib/renderers/Form/InputTable.d.ts +23 -5
- package/lib/renderers/Form/InputTable.js +32 -3
- package/lib/renderers/Form/InputTable.js.map +2 -2
- package/lib/renderers/Form/Item.d.ts +1 -1
- package/lib/renderers/Form/Item.js.map +1 -1
- package/lib/renderers/Form/Options.js +19 -6
- package/lib/renderers/Form/Options.js.map +2 -2
- package/lib/renderers/Form/Picker.js +2 -2
- package/lib/renderers/Form/Picker.js.map +2 -2
- package/lib/renderers/Form/Select.d.ts +41 -4
- package/lib/renderers/Form/Select.js +23 -3
- package/lib/renderers/Form/Select.js.map +2 -2
- package/lib/renderers/Form/TabsTransferPicker.d.ts +48 -0
- package/lib/renderers/Form/TabsTransferPicker.js +29 -0
- package/lib/renderers/Form/TabsTransferPicker.js.map +13 -0
- package/lib/renderers/Form/Transfer.js +3 -2
- package/lib/renderers/Form/Transfer.js.map +2 -2
- package/lib/renderers/Form/TransferPicker.d.ts +48 -0
- package/lib/renderers/Form/TransferPicker.js +29 -0
- package/lib/renderers/Form/TransferPicker.js.map +13 -0
- package/lib/renderers/Form/TreeSelect.js +2 -2
- package/lib/renderers/Form/TreeSelect.js.map +2 -2
- package/lib/renderers/Form/index.js +1 -1
- package/lib/renderers/Form/index.js.map +2 -2
- package/lib/renderers/Form/wrapControl.js +15 -3
- package/lib/renderers/Form/wrapControl.js.map +2 -2
- package/lib/renderers/IFrame.js +3 -5
- package/lib/renderers/IFrame.js.map +2 -2
- package/lib/renderers/Image.d.ts +1 -0
- package/lib/renderers/Image.js +15 -1
- package/lib/renderers/Image.js.map +2 -2
- package/lib/renderers/Json.d.ts +4 -0
- package/lib/renderers/Json.js +7 -12
- package/lib/renderers/Json.js.map +2 -2
- package/lib/renderers/Link.d.ts +18 -3
- package/lib/renderers/Link.js +27 -15
- package/lib/renderers/Link.js.map +2 -2
- package/lib/renderers/List.js +1 -1
- package/lib/renderers/List.js.map +2 -2
- package/lib/renderers/Log.d.ts +2 -2
- package/lib/renderers/Log.js +7 -1
- package/lib/renderers/Log.js.map +2 -2
- package/lib/renderers/Mapping.d.ts +9 -2
- package/lib/renderers/Mapping.js +18 -6
- package/lib/renderers/Mapping.js.map +2 -2
- package/lib/renderers/Nav.d.ts +81 -25
- package/lib/renderers/Nav.js +292 -31
- package/lib/renderers/Nav.js.map +2 -2
- package/lib/renderers/Page.js +4 -1
- package/lib/renderers/Page.js.map +2 -2
- package/lib/renderers/Portlet.d.ts +125 -0
- package/lib/renderers/Portlet.js +156 -0
- package/lib/renderers/Portlet.js.map +13 -0
- package/lib/renderers/Property.js +2 -1
- package/lib/renderers/Property.js.map +2 -2
- package/lib/renderers/SearchBox.d.ts +6 -1
- package/lib/renderers/SearchBox.js +19 -5
- package/lib/renderers/SearchBox.js.map +2 -2
- package/lib/renderers/Service.d.ts +10 -1
- package/lib/renderers/Service.js +85 -3
- package/lib/renderers/Service.js.map +2 -2
- package/lib/renderers/SparkLine.d.ts +4 -0
- package/lib/renderers/SparkLine.js.map +2 -2
- package/lib/renderers/Steps.d.ts +4 -4
- package/lib/renderers/Steps.js +5 -2
- package/lib/renderers/Steps.js.map +2 -2
- package/lib/renderers/Table/ColumnToggler.d.ts +113 -0
- package/lib/renderers/Table/ColumnToggler.js +216 -0
- package/lib/renderers/Table/ColumnToggler.js.map +13 -0
- package/lib/renderers/Table/ItemActionsWrapper.d.ts +11 -0
- package/lib/renderers/Table/ItemActionsWrapper.js +31 -0
- package/lib/renderers/Table/ItemActionsWrapper.js.map +13 -0
- package/lib/renderers/Table/TableBody.d.ts +5 -1
- package/lib/renderers/Table/TableBody.js.map +1 -1
- package/lib/renderers/Table/TableCell.js +3 -1
- package/lib/renderers/Table/TableCell.js.map +2 -2
- package/lib/renderers/Table/TableContent.d.ts +5 -2
- package/lib/renderers/Table/TableContent.js +21 -1
- package/lib/renderers/Table/TableContent.js.map +2 -2
- package/lib/renderers/Table/index.d.ts +27 -5
- package/lib/renderers/Table/index.js +251 -101
- package/lib/renderers/Table/index.js.map +2 -2
- package/lib/renderers/Tabs.js +9 -1
- package/lib/renderers/Tabs.js.map +2 -2
- package/lib/renderers/WebComponent.js +1 -1
- package/lib/renderers/WebComponent.js.map +2 -2
- package/lib/store/app.d.ts +0 -1
- package/lib/store/combo.d.ts +2 -18
- package/lib/store/crud.d.ts +0 -1
- package/lib/store/crud.js +3 -7
- package/lib/store/crud.js.map +2 -2
- package/lib/store/form.d.ts +1 -2
- package/lib/store/form.js +5 -6
- package/lib/store/form.js.map +2 -2
- package/lib/store/modal.d.ts +1 -1
- package/lib/store/modal.js +4 -0
- package/lib/store/modal.js.map +2 -2
- package/lib/store/root.d.ts +0 -1
- package/lib/store/service.d.ts +0 -1
- package/lib/store/service.js +5 -17
- package/lib/store/service.js.map +2 -2
- package/lib/store/table.d.ts +260 -5
- package/lib/store/table.js +83 -7
- package/lib/store/table.js.map +2 -2
- package/lib/themes/ang-ie11.css +1360 -244
- package/lib/themes/ang.css +1360 -244
- package/lib/themes/ang.css.map +1 -1
- package/lib/themes/antd-ie11.css +1360 -244
- package/lib/themes/antd.css +1360 -244
- package/lib/themes/antd.css.map +1 -1
- package/lib/themes/cxd-ie11.css +1960 -517
- package/lib/themes/cxd.css +1960 -517
- package/lib/themes/cxd.css.map +1 -1
- package/lib/themes/dark-ie11.css +1360 -244
- package/lib/themes/dark.css +1360 -244
- package/lib/themes/dark.css.map +1 -1
- package/lib/themes/default.css +1960 -517
- package/lib/themes/default.css.map +1 -1
- package/lib/types.d.ts +37 -0
- package/lib/types.js +0 -5
- package/lib/types.js.map +2 -2
- package/lib/utils/api.d.ts +3 -2
- package/lib/utils/api.js +43 -15
- package/lib/utils/api.js.map +2 -2
- package/lib/utils/attachmentAdpator.d.ts +7 -0
- package/lib/utils/attachmentAdpator.js +82 -0
- package/lib/utils/attachmentAdpator.js.map +13 -0
- package/lib/utils/dom.d.ts +4 -0
- package/lib/utils/dom.js +11 -1
- package/lib/utils/dom.js.map +2 -2
- package/lib/utils/handleAction.d.ts +7 -0
- package/lib/utils/handleAction.js +30 -0
- package/lib/utils/handleAction.js.map +13 -0
- package/lib/utils/helper.d.ts +3 -1
- package/lib/utils/helper.js +14 -5
- package/lib/utils/helper.js.map +2 -2
- package/lib/utils/icon.js +3 -0
- package/lib/utils/icon.js.map +2 -2
- package/lib/utils/tpl-builtin.d.ts +1 -1
- package/lib/utils/tpl-builtin.js +25 -15
- package/lib/utils/tpl-builtin.js.map +2 -2
- package/lib/utils/validations.js +62 -5
- package/lib/utils/validations.js.map +2 -2
- package/package.json +1 -2
- package/schema.json +3638 -1030
- package/scss/_mixins.scss +27 -0
- package/scss/_properties.scss +88 -13
- package/scss/_utilities.scss +4 -0
- package/scss/base/_normalize.scss +2 -0
- package/scss/components/_anchor-nav.scss +88 -29
- package/scss/components/_badge.scss +67 -2
- package/scss/components/_button.scss +34 -3
- package/scss/components/_card.scss +8 -14
- package/scss/components/_collapse.scss +41 -8
- package/scss/components/_column-toggler.scss +234 -0
- package/scss/components/_dropdown.scss +2 -1
- package/scss/components/_image-gallery.scss +1 -1
- package/scss/components/_images.scss +2 -1
- package/scss/components/_link.scss +6 -0
- package/scss/components/_mapping.scss +6 -0
- package/scss/components/_markdown.scss +266 -0
- package/scss/components/_nav.scss +236 -154
- package/scss/components/_page.scss +5 -4
- package/scss/components/_picker-columns.scss +123 -0
- package/scss/components/_popover.scss +17 -0
- package/scss/components/_portlet.scss +51 -0
- package/scss/components/_progress.scss +2 -0
- package/scss/components/_spinner.scss +6 -2
- package/scss/components/_status.scss +1 -1
- package/scss/components/_steps.scss +1 -1
- package/scss/components/_table.scss +51 -1
- package/scss/components/form/_checks.scss +0 -351
- package/scss/components/form/_color.scss +1 -0
- package/scss/components/form/_date-range.scss +2 -0
- package/scss/components/form/_date.scss +2 -0
- package/scss/components/form/_fieldset.scss +6 -3
- package/scss/components/form/_file.scss +5 -4
- package/scss/components/form/_group.scss +4 -0
- package/scss/components/form/_image.scss +7 -2
- package/scss/components/form/_list.scss +1 -0
- package/scss/components/form/_location.scss +1 -1
- package/scss/components/form/_selection.scss +354 -0
- package/scss/components/form/_text.scss +13 -0
- package/scss/components/form/_textarea.scss +10 -0
- package/scss/components/form/_transfer.scss +77 -18
- package/scss/themes/_common.scss +7 -0
- package/scss/themes/_cxd-colors.scss +56 -0
- package/scss/themes/_cxd-variables.scss +219 -91
- package/scss/themes/cxd.scss +370 -0
- package/sdk/ang-ie11.css +1752 -431
- package/sdk/ang.css +1706 -323
- package/sdk/antd-ie11.css +1739 -420
- package/sdk/antd.css +1706 -323
- package/sdk/charts.js +13 -13
- package/sdk/color-picker.js +65 -69
- package/sdk/cropperjs.js +2 -2
- package/sdk/cxd-ie11.css +3015 -1397
- package/sdk/cxd.css +2402 -651
- package/sdk/dark-ie11.css +1750 -429
- package/sdk/dark.css +1706 -323
- package/sdk/exceljs.js +1 -1
- package/sdk/helper.css.map +1 -1
- package/sdk/ie11-patch.css +1 -0
- package/sdk/locale/de-DE.js +5 -0
- package/sdk/markdown.js +69 -69
- package/sdk/papaparse.js +1 -1
- package/sdk/renderers/Form/CityDB.js +1 -1
- package/sdk/rest.js +20 -30
- package/sdk/rich-text.js +62 -64
- package/sdk/sdk-ie11.css +3015 -1397
- package/sdk/sdk.css +2402 -651
- package/sdk/sdk.js +1278 -1220
- 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 +32 -0
- package/src/components/Alert.tsx +3 -1
- package/src/components/AnchorNav.tsx +15 -4
- package/src/components/{AssociatedCheckboxes.tsx → AssociatedSelection.tsx} +41 -37
- package/src/components/Badge.tsx +126 -23
- package/src/components/Button.tsx +23 -7
- package/src/components/{ChainedCheckboxes.tsx → ChainedSelection.tsx} +57 -40
- package/src/components/Checkbox.tsx +5 -2
- package/src/components/Collapse.tsx +14 -9
- package/src/components/DatePicker.tsx +1 -1
- package/src/components/DateRangePicker.tsx +23 -11
- package/src/components/Drawer.tsx +3 -2
- package/src/components/{ListCheckboxes.tsx → GroupedSelection.tsx} +26 -21
- package/src/components/InputBox.tsx +1 -1
- package/src/components/Link.tsx +85 -0
- package/src/components/Modal.tsx +3 -2
- package/src/components/ModalManager.ts +1 -1
- package/src/components/MonthRangePicker.tsx +10 -2
- package/src/components/PickerColumn.tsx +429 -0
- package/src/components/PickerContainer.tsx +128 -0
- package/src/components/Radios.tsx +3 -8
- package/src/components/RichText.tsx +244 -3
- package/src/components/SearchBox.tsx +4 -5
- package/src/components/Select.tsx +61 -5
- package/src/components/{Checkboxes.tsx → Selection.tsx} +75 -21
- package/src/components/SparkLine.tsx +4 -1
- package/src/components/Steps.tsx +3 -3
- package/src/components/{TableCheckboxes.tsx → TableSelection.tsx} +46 -25
- package/src/components/TabsTransfer.tsx +13 -7
- package/src/components/TabsTransferPicker.tsx +85 -0
- package/src/components/Toast.tsx +5 -5
- package/src/components/Transfer.tsx +71 -50
- package/src/components/TransferDropDown.tsx +117 -0
- package/src/components/TransferPicker.tsx +84 -0
- package/src/components/Tree.tsx +6 -8
- package/src/components/{TreeCheckboxes.tsx → TreeSelection.tsx} +33 -26
- package/src/components/WithRemoteConfig.tsx +44 -4
- package/src/components/calendar/DaysView.tsx +2 -2
- package/src/components/condition-builder/Field.tsx +6 -7
- package/src/components/condition-builder/Func.tsx +3 -3
- package/src/components/condition-builder/InputSwitch.tsx +3 -3
- package/src/components/condition-builder/Item.tsx +5 -12
- package/src/components/condition-builder/Value.tsx +3 -0
- package/src/components/condition-builder/types.ts +6 -0
- package/src/components/icons.tsx +15 -0
- package/src/components/index.tsx +13 -13
- package/src/envOverwrite.ts +0 -1
- package/src/factory.tsx +31 -6
- package/src/hooks/index.ts +5 -0
- package/src/hooks/use-set-state.ts +19 -0
- package/src/hooks/use-touch.ts +100 -0
- package/src/hooks/use-update-effect.ts +16 -0
- package/src/icons/clock.svg +1 -0
- package/src/icons/loading-outline.svg +4 -0
- package/src/icons/status-close.svg +10 -0
- package/src/icons/status-fail.svg +10 -0
- package/src/icons/status-info.svg +8 -0
- package/src/icons/status-success.svg +10 -0
- package/src/icons/status-warning.svg +8 -0
- package/src/index.tsx +3 -0
- package/src/locale/de-DE.ts +5 -0
- package/src/locale/en-US.ts +6 -1
- package/src/locale/zh-CN.ts +9 -4
- package/src/renderers/Action.tsx +99 -15
- package/src/renderers/AnchorNav.tsx +4 -0
- package/src/renderers/Avatar.tsx +8 -4
- package/src/renderers/Breadcrumb.tsx +5 -1
- package/src/renderers/CRUD.tsx +70 -56
- package/src/renderers/Card.tsx +63 -34
- package/src/renderers/Chart.tsx +6 -2
- package/src/renderers/Collapse.tsx +9 -3
- package/src/renderers/Dialog.tsx +1 -5
- package/src/renderers/Drawer.tsx +0 -4
- package/src/renderers/DropDownButton.tsx +34 -12
- package/src/renderers/Form/Checkbox.tsx +8 -0
- package/src/renderers/Form/Combo.tsx +2 -3
- package/src/renderers/Form/Editor.tsx +19 -20
- package/src/renderers/Form/InputCity.tsx +4 -8
- package/src/renderers/Form/InputExcel.tsx +28 -3
- package/src/renderers/Form/InputFile.tsx +30 -20
- package/src/renderers/Form/InputImage.tsx +39 -13
- package/src/renderers/Form/InputTable.tsx +88 -9
- package/src/renderers/Form/Item.tsx +1 -1
- package/src/renderers/Form/Options.tsx +32 -7
- package/src/renderers/Form/Picker.tsx +3 -2
- package/src/renderers/Form/Select.tsx +144 -21
- package/src/renderers/Form/TabsTransferPicker.tsx +123 -0
- package/src/renderers/Form/Transfer.tsx +3 -2
- package/src/renderers/Form/TransferPicker.tsx +123 -0
- package/src/renderers/Form/TreeSelect.tsx +25 -0
- package/src/renderers/Form/index.tsx +1 -1
- package/src/renderers/Form/wrapControl.tsx +28 -3
- package/src/renderers/IFrame.tsx +4 -5
- package/src/renderers/Image.tsx +10 -0
- package/src/renderers/Json.tsx +19 -10
- package/src/renderers/Link.tsx +53 -14
- package/src/renderers/List.tsx +1 -1
- package/src/renderers/Log.tsx +16 -3
- package/src/renderers/Mapping.tsx +27 -11
- package/src/renderers/Nav.tsx +392 -60
- package/src/renderers/Page.tsx +3 -1
- package/src/renderers/Portlet.tsx +423 -0
- package/src/renderers/Property.tsx +3 -2
- package/src/renderers/SearchBox.tsx +23 -4
- package/src/renderers/Service.tsx +101 -3
- package/src/renderers/SparkLine.tsx +5 -0
- package/src/renderers/Steps.tsx +12 -9
- package/src/renderers/Table/ColumnToggler.tsx +544 -0
- package/src/renderers/Table/ItemActionsWrapper.tsx +44 -0
- package/src/renderers/Table/TableBody.tsx +1 -1
- package/src/renderers/Table/TableCell.tsx +16 -1
- package/src/renderers/Table/TableContent.tsx +41 -3
- package/src/renderers/Table/index.tsx +318 -92
- package/src/renderers/Tabs.tsx +9 -1
- package/src/renderers/WebComponent.tsx +2 -2
- package/src/store/crud.ts +3 -8
- package/src/store/form.ts +5 -10
- package/src/store/modal.ts +4 -0
- package/src/store/service.ts +5 -23
- package/src/store/table.ts +103 -4
- package/src/types.ts +57 -0
- package/src/utils/api.ts +63 -23
- package/src/utils/attachmentAdpator.ts +90 -0
- package/src/utils/dom.tsx +12 -0
- package/src/utils/handleAction.ts +41 -0
- package/src/utils/helper.ts +12 -3
- package/src/utils/icon.tsx +4 -0
- package/src/utils/tpl-builtin.ts +48 -17
- package/src/utils/validations.ts +80 -12
- package/dump.rdb +0 -0
- package/lib/components/AssociatedCheckboxes.d.ts +0 -762
- package/lib/components/AssociatedCheckboxes.js +0 -90
- package/lib/components/AssociatedCheckboxes.js.map +0 -13
- package/lib/components/ChainedCheckboxes.js.map +0 -13
- package/lib/components/Checkboxes.js +0 -101
- package/lib/components/Checkboxes.js.map +0 -13
- package/lib/components/ListCheckboxes.d.ts +0 -739
- package/lib/components/ListCheckboxes.js +0 -48
- package/lib/components/ListCheckboxes.js.map +0 -13
- package/lib/components/ListRadios.d.ts +0 -763
- package/lib/components/ListRadios.js +0 -86
- package/lib/components/ListRadios.js.map +0 -13
- package/lib/components/TableCheckboxes.js.map +0 -13
- package/lib/components/TreeCheckboxes.js.map +0 -13
- package/lib/components/TreeRadios.d.ts +0 -838
- package/lib/components/TreeRadios.js +0 -116
- package/lib/components/TreeRadios.js.map +0 -13
- package/src/components/ListRadios.tsx +0 -159
- package/src/components/TreeRadios.tsx +0 -202
package/src/renderers/Card.tsx
CHANGED
@@ -166,6 +166,11 @@ export interface CardSchema extends BaseSchema {
|
|
166
166
|
* 底部按钮集合。
|
167
167
|
*/
|
168
168
|
actions?: Array<ActionSchema>;
|
169
|
+
|
170
|
+
/**
|
171
|
+
* 工具栏按钮
|
172
|
+
*/
|
173
|
+
toolbar?: Array<ActionSchema>;
|
169
174
|
}
|
170
175
|
|
171
176
|
export interface CardProps
|
@@ -273,30 +278,47 @@ export class Card extends React.Component<CardProps> {
|
|
273
278
|
multiple,
|
274
279
|
hideCheckToggler,
|
275
280
|
classnames: cx,
|
276
|
-
classPrefix: ns
|
281
|
+
classPrefix: ns,
|
282
|
+
toolbar,
|
283
|
+
render
|
277
284
|
} = this.props;
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
285
|
+
const toolbars: Array<JSX.Element> = [];
|
286
|
+
|
287
|
+
if (selectable && !hideCheckToggler) {
|
288
|
+
toolbars.push(
|
289
|
+
<Checkbox
|
290
|
+
key="check"
|
291
|
+
className={cx('Card-checkbox')}
|
292
|
+
type={multiple ? 'checkbox' : 'radio'}
|
293
|
+
disabled={!checkable}
|
294
|
+
checked={selected}
|
295
|
+
onChange={checkOnItemClick ? noop : this.handleCheck}
|
296
|
+
/>
|
284
297
|
);
|
285
|
-
}
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
298
|
+
}
|
299
|
+
|
300
|
+
if (Array.isArray(toolbar)) {
|
301
|
+
toolbar.forEach((action, index) =>
|
302
|
+
toolbars.push(
|
303
|
+
render(
|
304
|
+
`toolbar/${index}`,
|
305
|
+
{
|
306
|
+
type: 'button',
|
307
|
+
level: 'link',
|
308
|
+
size: 'sm',
|
309
|
+
...(action as any)
|
310
|
+
},
|
311
|
+
{
|
312
|
+
key: index
|
313
|
+
}
|
314
|
+
)
|
315
|
+
)
|
296
316
|
);
|
297
317
|
}
|
298
318
|
|
299
|
-
return
|
319
|
+
return toolbars.length ? (
|
320
|
+
<div className={cx('Card-toolbar')}>{toolbars}</div>
|
321
|
+
) : null;
|
300
322
|
}
|
301
323
|
|
302
324
|
renderActions() {
|
@@ -451,12 +473,14 @@ export class Card extends React.Component<CardProps> {
|
|
451
473
|
imageClassName,
|
452
474
|
avatarTextClassName,
|
453
475
|
href,
|
454
|
-
itemAction
|
476
|
+
itemAction,
|
477
|
+
dragging
|
455
478
|
} = this.props;
|
456
479
|
|
480
|
+
const toolbar = this.renderToolbar();
|
457
481
|
let heading = null;
|
458
482
|
|
459
|
-
if (header) {
|
483
|
+
if (header || toolbar) {
|
460
484
|
const {
|
461
485
|
highlight: highlightTpl,
|
462
486
|
avatar: avatarTpl,
|
@@ -465,31 +489,31 @@ export class Card extends React.Component<CardProps> {
|
|
465
489
|
subTitle: subTitleTpl,
|
466
490
|
subTitlePlaceholder,
|
467
491
|
desc: descTpl
|
468
|
-
} = header;
|
492
|
+
} = header || {};
|
469
493
|
|
470
494
|
const descPlaceholder =
|
471
|
-
header
|
495
|
+
header?.descriptionPlaceholder || header?.descPlaceholder;
|
472
496
|
|
473
497
|
const highlight = !!evalExpression(highlightTpl!, data as object);
|
474
498
|
const avatar = filter(avatarTpl, data, '| raw');
|
475
499
|
const avatarText = filter(avatarTextTpl, data);
|
476
500
|
const title = filter(titleTpl, data);
|
477
501
|
const subTitle = filter(subTitleTpl, data);
|
478
|
-
const desc = filter(header
|
502
|
+
const desc = filter(header?.description || descTpl, data);
|
479
503
|
|
480
504
|
heading = (
|
481
|
-
<div className={cx('Card-heading', header
|
505
|
+
<div className={cx('Card-heading', header?.className)}>
|
482
506
|
{avatar ? (
|
483
507
|
<span
|
484
508
|
className={cx(
|
485
509
|
'Card-avtar',
|
486
|
-
header
|
510
|
+
header?.avatarClassName || avatarClassName
|
487
511
|
)}
|
488
512
|
>
|
489
513
|
<img
|
490
514
|
className={cx(
|
491
515
|
'Card-img',
|
492
|
-
header
|
516
|
+
header?.imageClassName || imageClassName
|
493
517
|
)}
|
494
518
|
src={avatar}
|
495
519
|
/>
|
@@ -498,7 +522,7 @@ export class Card extends React.Component<CardProps> {
|
|
498
522
|
<span
|
499
523
|
className={cx(
|
500
524
|
'Card-avtarText',
|
501
|
-
header
|
525
|
+
header?.avatarTextClassName || avatarTextClassName
|
502
526
|
)}
|
503
527
|
>
|
504
528
|
{avatarText}
|
@@ -509,7 +533,7 @@ export class Card extends React.Component<CardProps> {
|
|
509
533
|
<i
|
510
534
|
className={cx(
|
511
535
|
'Card-highlight',
|
512
|
-
header
|
536
|
+
header?.highlightClassName || highlightClassName
|
513
537
|
)}
|
514
538
|
/>
|
515
539
|
) : null}
|
@@ -518,7 +542,7 @@ export class Card extends React.Component<CardProps> {
|
|
518
542
|
<div
|
519
543
|
className={cx(
|
520
544
|
'Card-title',
|
521
|
-
header
|
545
|
+
header?.titleClassName || titleClassName
|
522
546
|
)}
|
523
547
|
>
|
524
548
|
{render('title', title)}
|
@@ -529,7 +553,7 @@ export class Card extends React.Component<CardProps> {
|
|
529
553
|
<div
|
530
554
|
className={cx(
|
531
555
|
'Card-subTitle',
|
532
|
-
header
|
556
|
+
header?.subTitleClassName || subTitleClassName
|
533
557
|
)}
|
534
558
|
>
|
535
559
|
{render('sub-title', subTitle || subTitlePlaceholder!, {
|
@@ -542,8 +566,8 @@ export class Card extends React.Component<CardProps> {
|
|
542
566
|
<div
|
543
567
|
className={cx(
|
544
568
|
'Card-desc',
|
545
|
-
header
|
546
|
-
header
|
569
|
+
header?.descriptionClassName ||
|
570
|
+
header?.descClassName ||
|
547
571
|
descClassName
|
548
572
|
)}
|
549
573
|
>
|
@@ -553,6 +577,7 @@ export class Card extends React.Component<CardProps> {
|
|
553
577
|
</div>
|
554
578
|
) : null}
|
555
579
|
</div>
|
580
|
+
{toolbar}
|
556
581
|
</div>
|
557
582
|
);
|
558
583
|
}
|
@@ -570,7 +595,11 @@ export class Card extends React.Component<CardProps> {
|
|
570
595
|
'Card--link': href || itemAction
|
571
596
|
})}
|
572
597
|
>
|
573
|
-
{
|
598
|
+
{dragging ? (
|
599
|
+
<div className={cx('Card-dragBtn')}>
|
600
|
+
<Icon icon="drag-bar" className="icon" />
|
601
|
+
</div>
|
602
|
+
) : null}
|
574
603
|
{heading}
|
575
604
|
{body ? (
|
576
605
|
<div className={cx('Card-body', bodyClassName)}>{body}</div>
|
package/src/renderers/Chart.tsx
CHANGED
@@ -12,7 +12,11 @@ import {
|
|
12
12
|
isPureVariable,
|
13
13
|
dataMapping
|
14
14
|
} from '../utils/tpl-builtin';
|
15
|
-
import {
|
15
|
+
import {
|
16
|
+
isApiOutdated,
|
17
|
+
isEffectiveApi,
|
18
|
+
normalizeApiResponseData
|
19
|
+
} from '../utils/api';
|
16
20
|
import {ScopedContext, IScopedContext} from '../Scoped';
|
17
21
|
import {createObject, findObjectsWithKey} from '../utils/helper';
|
18
22
|
import Spinner from '../components/Spinner';
|
@@ -342,7 +346,7 @@ export class Chart extends React.Component<ChartProps> {
|
|
342
346
|
}
|
343
347
|
delete this.reloadCancel;
|
344
348
|
|
345
|
-
const data = result.data
|
349
|
+
const data = normalizeApiResponseData(result.data);
|
346
350
|
// 说明返回的是数据接口。
|
347
351
|
if (!data.series && this.props.config) {
|
348
352
|
const ctx = createObject(this.props.data, data);
|
@@ -7,6 +7,7 @@ import {
|
|
7
7
|
SchemaCollection,
|
8
8
|
SchemaTpl
|
9
9
|
} from '../Schema';
|
10
|
+
import {isClickOnInput} from '../utils/helper';
|
10
11
|
|
11
12
|
/**
|
12
13
|
* Collapse 折叠渲染器,格式说明。
|
@@ -134,7 +135,10 @@ export default class Collapse extends React.Component<
|
|
134
135
|
}
|
135
136
|
}
|
136
137
|
|
137
|
-
toggleCollapsed() {
|
138
|
+
toggleCollapsed(e: React.MouseEvent<HTMLElement>) {
|
139
|
+
if (isClickOnInput(e)) {
|
140
|
+
return;
|
141
|
+
}
|
138
142
|
this.props.collapsable !== false &&
|
139
143
|
this.setState({
|
140
144
|
collapsed: !this.state.collapsed
|
@@ -172,8 +176,10 @@ export default class Collapse extends React.Component<
|
|
172
176
|
onClick={this.toggleCollapsed}
|
173
177
|
className={cx(`Collapse-header`, headingClassName)}
|
174
178
|
>
|
175
|
-
{
|
176
|
-
|
179
|
+
<div className={cx('Collapse-header-wrapper')}>
|
180
|
+
{render('heading', finalTitle, {className: 'Collapse-header-tpl'})}
|
181
|
+
{collapsable && <span className={cx('Collapse-arrow')} />}
|
182
|
+
</div>
|
177
183
|
</HeadingComponent>
|
178
184
|
) : null,
|
179
185
|
|
package/src/renderers/Dialog.tsx
CHANGED
@@ -318,7 +318,7 @@ export default class Dialog extends React.Component<DialogProps> {
|
|
318
318
|
handleExited() {
|
319
319
|
const {lazySchema, store} = this.props;
|
320
320
|
if (isAlive(store)) {
|
321
|
-
store.
|
321
|
+
store.reset();
|
322
322
|
store.setEntered(false);
|
323
323
|
if (typeof lazySchema === 'function') {
|
324
324
|
store.setSchema('');
|
@@ -629,10 +629,6 @@ export class DialogRenderer extends Dialog {
|
|
629
629
|
tryChildrenToHandle(action: Action, ctx: object, rawAction?: Action) {
|
630
630
|
const scoped = this.context as IScopedContext;
|
631
631
|
|
632
|
-
if (action.fromDialog) {
|
633
|
-
return false;
|
634
|
-
}
|
635
|
-
|
636
632
|
const targets: Array<any> = [];
|
637
633
|
const {onConfirm, store} = this.props;
|
638
634
|
|
package/src/renderers/Drawer.tsx
CHANGED
@@ -687,10 +687,6 @@ export class DrawerRenderer extends Drawer {
|
|
687
687
|
tryChildrenToHandle(action: Action, ctx: object, rawAction?: Action) {
|
688
688
|
const scoped = this.context as IScopedContext;
|
689
689
|
|
690
|
-
if (action.fromDialog) {
|
691
|
-
return false;
|
692
|
-
}
|
693
|
-
|
694
690
|
const targets: Array<any> = [];
|
695
691
|
const {onConfirm, store} = this.props;
|
696
692
|
|
@@ -7,10 +7,11 @@ import type {TooltipObject, Trigger} from '../components/TooltipWrapper';
|
|
7
7
|
import {isDisabled, isVisible, noop} from '../utils/helper';
|
8
8
|
import {filter} from '../utils/tpl';
|
9
9
|
import {Icon} from '../components/icons';
|
10
|
-
import {BaseSchema, SchemaClassName} from '../Schema';
|
10
|
+
import {BaseSchema, SchemaClassName, SchemaIcon} from '../Schema';
|
11
11
|
import {ActionSchema} from './Action';
|
12
12
|
import {DividerSchema} from './Divider';
|
13
13
|
import {RootClose} from '../utils/RootClose';
|
14
|
+
import {generateIcon} from '../utils/icon';
|
14
15
|
|
15
16
|
/**
|
16
17
|
* 下拉按钮渲染器。
|
@@ -76,6 +77,21 @@ export interface DropdownButtonSchema extends BaseSchema {
|
|
76
77
|
* 是否只显示图标。
|
77
78
|
*/
|
78
79
|
iconOnly?: boolean;
|
80
|
+
|
81
|
+
/**
|
82
|
+
* 右侧图标
|
83
|
+
*/
|
84
|
+
rightIcon?: SchemaIcon;
|
85
|
+
|
86
|
+
/**
|
87
|
+
* 触发条件,默认是 click
|
88
|
+
*/
|
89
|
+
trigger?: 'click' | 'hover';
|
90
|
+
|
91
|
+
/**
|
92
|
+
* 是否显示下拉按钮
|
93
|
+
*/
|
94
|
+
hideCaret?: boolean;
|
79
95
|
}
|
80
96
|
|
81
97
|
export interface DropDownButtonProps
|
@@ -265,10 +281,17 @@ export default class DropDownButton extends React.Component<
|
|
265
281
|
align,
|
266
282
|
iconOnly,
|
267
283
|
icon,
|
284
|
+
rightIcon,
|
268
285
|
isActived,
|
269
|
-
|
286
|
+
trigger,
|
287
|
+
data,
|
288
|
+
hideCaret
|
270
289
|
} = this.props;
|
271
290
|
|
291
|
+
const iconElement = generateIcon(cx, icon, 'm-r-xs');
|
292
|
+
|
293
|
+
const rightIconElement = generateIcon(cx, rightIcon, 'm-l-xs');
|
294
|
+
|
272
295
|
return (
|
273
296
|
<div
|
274
297
|
className={cx(
|
@@ -281,6 +304,8 @@ export default class DropDownButton extends React.Component<
|
|
281
304
|
},
|
282
305
|
className
|
283
306
|
)}
|
307
|
+
onMouseEnter={trigger === 'hover' ? this.open : () => {}}
|
308
|
+
onMouseLeave={trigger === 'hover' ? this.close : () => {}}
|
284
309
|
ref={this.domRef}
|
285
310
|
>
|
286
311
|
<TooltipWrapper
|
@@ -309,17 +334,14 @@ export default class DropDownButton extends React.Component<
|
|
309
334
|
size ? `Button--${size}` : ''
|
310
335
|
)}
|
311
336
|
>
|
312
|
-
{
|
313
|
-
typeof icon === 'string' ? (
|
314
|
-
<i className={cx(icon, 'm-r-xs')} />
|
315
|
-
) : (
|
316
|
-
icon
|
317
|
-
)
|
318
|
-
) : null}
|
337
|
+
{iconElement}
|
319
338
|
{typeof label === 'string' ? filter(label, data) : label}
|
320
|
-
|
321
|
-
|
322
|
-
|
339
|
+
{rightIconElement}
|
340
|
+
{!hideCaret ? (
|
341
|
+
<span className={cx('DropDown-caret')}>
|
342
|
+
<Icon icon="caret" className="icon" />
|
343
|
+
</span>
|
344
|
+
) : null}
|
323
345
|
</button>
|
324
346
|
</TooltipWrapper>
|
325
347
|
{this.state.isOpened ? this.renderOuter() : null}
|
@@ -2,6 +2,7 @@ import React from 'react';
|
|
2
2
|
import {FormItem, FormControlProps, FormBaseControl} from './Item';
|
3
3
|
import cx from 'classnames';
|
4
4
|
import Checkbox from '../../components/Checkbox';
|
5
|
+
import {withBadge, BadgeSchema} from '../../components/Badge';
|
5
6
|
|
6
7
|
/**
|
7
8
|
* Checkbox 勾选框。
|
@@ -27,6 +28,11 @@ export interface CheckboxControlSchema extends FormBaseControl {
|
|
27
28
|
* 选项说明
|
28
29
|
*/
|
29
30
|
option?: string;
|
31
|
+
|
32
|
+
/**
|
33
|
+
* 角标
|
34
|
+
*/
|
35
|
+
badge?: BadgeSchema;
|
30
36
|
}
|
31
37
|
|
32
38
|
export interface CheckboxProps
|
@@ -78,4 +84,6 @@ export default class CheckboxControl extends React.Component<
|
|
78
84
|
type: 'checkbox',
|
79
85
|
sizeMutable: false
|
80
86
|
})
|
87
|
+
// @ts-ignore
|
88
|
+
@withBadge
|
81
89
|
export class CheckboxControlRenderer extends CheckboxControl {}
|
@@ -251,7 +251,6 @@ export interface ComboControlSchema extends FormBaseControl {
|
|
251
251
|
/**
|
252
252
|
* 最大值验证错误提示
|
253
253
|
*/
|
254
|
-
|
255
254
|
maxLengthValidateFailed?: string;
|
256
255
|
};
|
257
256
|
}
|
@@ -1010,7 +1009,7 @@ export default class ComboControl extends React.Component<ComboProps> {
|
|
1010
1009
|
{deleteIcon ? (
|
1011
1010
|
<i className={deleteIcon} />
|
1012
1011
|
) : (
|
1013
|
-
<Icon icon="close" className="icon" />
|
1012
|
+
<Icon icon="status-close" className="icon" />
|
1014
1013
|
)}
|
1015
1014
|
</div>
|
1016
1015
|
);
|
@@ -1189,7 +1188,7 @@ export default class ComboControl extends React.Component<ComboProps> {
|
|
1189
1188
|
{deleteIcon ? (
|
1190
1189
|
<i className={deleteIcon} />
|
1191
1190
|
) : (
|
1192
|
-
<Icon icon="close" className="icon" />
|
1191
|
+
<Icon icon="status-close" className="icon" />
|
1193
1192
|
)}
|
1194
1193
|
</a>
|
1195
1194
|
);
|
@@ -118,7 +118,7 @@ export default class EditorControl extends React.Component<EditorProps, any> {
|
|
118
118
|
static defaultProps: Partial<EditorProps> = {
|
119
119
|
language: 'javascript',
|
120
120
|
editorTheme: 'vs',
|
121
|
-
allowFullscreen:
|
121
|
+
allowFullscreen: true,
|
122
122
|
options: {
|
123
123
|
automaticLayout: true,
|
124
124
|
selectOnLineNumbers: true,
|
@@ -294,26 +294,25 @@ export const availableLanguages = [
|
|
294
294
|
'yaml'
|
295
295
|
];
|
296
296
|
|
297
|
-
export const EditorControls: Array<
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
312
|
-
}
|
313
|
-
}
|
297
|
+
export const EditorControls: Array<typeof EditorControl> =
|
298
|
+
availableLanguages.map((lang: string) => {
|
299
|
+
@FormItem({
|
300
|
+
type: `${lang}-editor`,
|
301
|
+
sizeMutable: false
|
302
|
+
})
|
303
|
+
class EditorControlRenderer extends EditorControl {
|
304
|
+
static lang = lang;
|
305
|
+
static displayName = `${lang[0].toUpperCase()}${lang.substring(
|
306
|
+
1
|
307
|
+
)}EditorControlRenderer`;
|
308
|
+
static defaultProps = {
|
309
|
+
...EditorControl.defaultProps,
|
310
|
+
language: lang
|
311
|
+
};
|
312
|
+
}
|
314
313
|
|
315
|
-
|
316
|
-
});
|
314
|
+
return EditorControlRenderer;
|
315
|
+
});
|
317
316
|
|
318
317
|
@FormItem({
|
319
318
|
type: 'js-editor',
|
@@ -1,7 +1,8 @@
|
|
1
1
|
import React from 'react';
|
2
2
|
import {FormItem, FormControlProps, FormBaseControl} from './Item';
|
3
3
|
import {ClassNamesFn, themeable, ThemeProps} from '../../theme';
|
4
|
-
import
|
4
|
+
import Spinner from '../../components/Spinner';
|
5
|
+
import Select from '../../components/Select';
|
5
6
|
import {autobind} from '../../utils/helper';
|
6
7
|
import {Option} from './Options';
|
7
8
|
import {localeable, LocaleProps} from '../../locale';
|
@@ -293,13 +294,8 @@ export class CityPicker extends React.Component<
|
|
293
294
|
|
294
295
|
@autobind
|
295
296
|
syncOut() {
|
296
|
-
const {
|
297
|
-
|
298
|
-
allowStreet,
|
299
|
-
joinValues,
|
300
|
-
extractValue,
|
301
|
-
delimiter
|
302
|
-
} = this.props;
|
297
|
+
const {onChange, allowStreet, joinValues, extractValue, delimiter} =
|
298
|
+
this.props;
|
303
299
|
|
304
300
|
const {code, province, city, district, street} = this.state;
|
305
301
|
|
@@ -28,6 +28,11 @@ export interface InputExcelControlSchema extends FormBaseControl {
|
|
28
28
|
* 是否包含空内容,主要用于二维数组模式
|
29
29
|
*/
|
30
30
|
includeEmpty: boolean;
|
31
|
+
|
32
|
+
/**
|
33
|
+
* 纯文本模式
|
34
|
+
*/
|
35
|
+
plainText: boolean;
|
31
36
|
}
|
32
37
|
|
33
38
|
export interface ExcelProps
|
@@ -48,12 +53,15 @@ export default class ExcelControl extends React.PureComponent<
|
|
48
53
|
static defaultProps: Partial<ExcelProps> = {
|
49
54
|
allSheets: false,
|
50
55
|
parseMode: 'object',
|
51
|
-
includeEmpty: true
|
56
|
+
includeEmpty: true,
|
57
|
+
plainText: true
|
52
58
|
};
|
53
59
|
state: ExcelControlState = {
|
54
60
|
open: false
|
55
61
|
};
|
56
62
|
|
63
|
+
ExcelJS: any;
|
64
|
+
|
57
65
|
@autobind
|
58
66
|
handleDrop(files: File[]) {
|
59
67
|
const {allSheets, onChange} = this.props;
|
@@ -63,6 +71,7 @@ export default class ExcelControl extends React.PureComponent<
|
|
63
71
|
reader.onload = async () => {
|
64
72
|
if (reader.result) {
|
65
73
|
import('exceljs').then(async (ExcelJS: any) => {
|
74
|
+
this.ExcelJS = ExcelJS;
|
66
75
|
const workbook = new ExcelJS.Workbook();
|
67
76
|
await workbook.xlsx.load(reader.result);
|
68
77
|
if (allSheets) {
|
@@ -88,7 +97,7 @@ export default class ExcelControl extends React.PureComponent<
|
|
88
97
|
*/
|
89
98
|
readWorksheet(worksheet: any) {
|
90
99
|
const result: any[] = [];
|
91
|
-
const {parseMode} = this.props;
|
100
|
+
const {parseMode, plainText} = this.props;
|
92
101
|
|
93
102
|
if (parseMode === 'array') {
|
94
103
|
worksheet.eachRow((row: any, rowNumber: number) => {
|
@@ -107,7 +116,23 @@ export default class ExcelControl extends React.PureComponent<
|
|
107
116
|
const data: any = {};
|
108
117
|
row.eachCell((cell: any, colNumber: any) => {
|
109
118
|
if (firstRowValues[colNumber]) {
|
110
|
-
|
119
|
+
let value = cell.value;
|
120
|
+
if (plainText) {
|
121
|
+
const ExcelValueType = this.ExcelJS.ValueType;
|
122
|
+
if (cell.type === ExcelValueType.Hyperlink) {
|
123
|
+
value = cell.value.hyperlink;
|
124
|
+
} else if (cell.type === ExcelValueType.Formula) {
|
125
|
+
value = cell.value.result;
|
126
|
+
} else if (cell.type === ExcelValueType.RichText) {
|
127
|
+
value = cell.value.richText
|
128
|
+
.map((item: any) => item.text)
|
129
|
+
.join('');
|
130
|
+
} else if (cell.type === ExcelValueType.Error) {
|
131
|
+
value = '';
|
132
|
+
}
|
133
|
+
}
|
134
|
+
|
135
|
+
data[firstRowValues[colNumber]] = value;
|
111
136
|
}
|
112
137
|
});
|
113
138
|
result.push(data);
|
@@ -20,6 +20,7 @@ import {
|
|
20
20
|
SchemaClassName,
|
21
21
|
SchemaTokenizeableString
|
22
22
|
} from '../../Schema';
|
23
|
+
import merge from 'lodash/merge';
|
23
24
|
|
24
25
|
/**
|
25
26
|
* File 文件上传控件
|
@@ -356,11 +357,12 @@ export default class FileControl extends React.Component<FileProps, FileState> {
|
|
356
357
|
if (value && value instanceof Blob) {
|
357
358
|
files = [value as any];
|
358
359
|
} else if (value) {
|
359
|
-
files = (
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
360
|
+
files = (
|
361
|
+
Array.isArray(value)
|
362
|
+
? value
|
363
|
+
: joinValues
|
364
|
+
? `${(value as any)[valueField] || value}`.split(delimiter)
|
365
|
+
: [value as any]
|
364
366
|
)
|
365
367
|
.map(item => FileControl.valueToFile(item, props) as FileValue)
|
366
368
|
.filter(item => item);
|
@@ -402,11 +404,12 @@ export default class FileControl extends React.Component<FileProps, FileState> {
|
|
402
404
|
let files: Array<FileValue> = [];
|
403
405
|
|
404
406
|
if (value) {
|
405
|
-
files = (
|
406
|
-
|
407
|
-
|
408
|
-
|
409
|
-
|
407
|
+
files = (
|
408
|
+
Array.isArray(value)
|
409
|
+
? value
|
410
|
+
: joinValues && typeof value === 'string'
|
411
|
+
? value.split(delimiter)
|
412
|
+
: [value as any]
|
410
413
|
)
|
411
414
|
.map(item => {
|
412
415
|
let obj = FileControl.valueToFile(
|
@@ -851,8 +854,8 @@ export default class FileControl extends React.Component<FileProps, FileState> {
|
|
851
854
|
}
|
852
855
|
|
853
856
|
syncAutoFill() {
|
854
|
-
const {autoFill, multiple, onBulkChange} = this.props;
|
855
|
-
if (!isEmpty(autoFill)) {
|
857
|
+
const {autoFill, multiple, onBulkChange, data} = this.props;
|
858
|
+
if (!isEmpty(autoFill) && onBulkChange) {
|
856
859
|
const files = this.state.files.filter(
|
857
860
|
file => ~['uploaded', 'init', 'ready'].indexOf(file.state as string)
|
858
861
|
);
|
@@ -864,7 +867,12 @@ export default class FileControl extends React.Component<FileProps, FileState> {
|
|
864
867
|
}
|
865
868
|
: files[0]
|
866
869
|
);
|
867
|
-
|
870
|
+
Object.keys(toSync).forEach(key => {
|
871
|
+
if (isPlainObject(toSync[key]) && isPlainObject(data[key])) {
|
872
|
+
toSync[key] = merge({}, data[key], toSync[key]);
|
873
|
+
}
|
874
|
+
});
|
875
|
+
onBulkChange(toSync);
|
868
876
|
}
|
869
877
|
}
|
870
878
|
|
@@ -1223,13 +1231,15 @@ export default class FileControl extends React.Component<FileProps, FileState> {
|
|
1223
1231
|
onClick={this.handleSelect}
|
1224
1232
|
>
|
1225
1233
|
<Icon icon="upload" className="icon" />
|
1226
|
-
|
1227
|
-
|
1228
|
-
|
1229
|
-
|
1230
|
-
|
1231
|
-
|
1232
|
-
|
1234
|
+
<span>
|
1235
|
+
{!multiple && files.length
|
1236
|
+
? __('File.repick')
|
1237
|
+
: multiple && files.length
|
1238
|
+
? __('File.continueAdd')
|
1239
|
+
: btnLabel
|
1240
|
+
? btnLabel
|
1241
|
+
: __('File.upload')}
|
1242
|
+
</span>
|
1233
1243
|
</Button>
|
1234
1244
|
) : null}
|
1235
1245
|
|