amis 1.4.2-beta.1 → 1.4.2-beta.15
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 +11 -3
- package/lib/Schema.js.map +1 -1
- 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.js +2 -2
- package/lib/components/Badge.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 +20 -20
- package/lib/components/Collapse.d.ts +51 -23
- package/lib/components/Collapse.js +69 -11
- package/lib/components/Collapse.js.map +2 -2
- package/lib/components/CollapseGroup.d.ts +88 -0
- package/lib/components/CollapseGroup.js +81 -0
- package/lib/components/CollapseGroup.js.map +13 -0
- package/lib/components/ColorPicker.d.ts +84 -84
- package/lib/components/DatePicker.d.ts +84 -84
- package/lib/components/DateRangePicker.d.ts +84 -84
- package/lib/components/Editor.d.ts +84 -84
- package/lib/components/GridNav.d.ts +52 -0
- package/lib/components/GridNav.js +123 -0
- package/lib/components/GridNav.js.map +13 -0
- 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.d.ts +22 -21
- package/lib/components/InputBox.js +10 -2
- package/lib/components/InputBox.js.map +2 -2
- package/lib/components/Link.d.ts +29 -36
- package/lib/components/Link.js +14 -15
- package/lib/components/Link.js.map +2 -2
- package/lib/components/ListGroup.d.ts +21 -21
- 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/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/ResultBox.js +10 -2
- package/lib/components/ResultBox.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 +245 -237
- package/lib/components/Select.js +25 -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/{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.d.ts +86 -85
- package/lib/components/Toast.js +6 -3
- 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 +488 -0
- package/lib/components/TransferDropDown.js +59 -0
- package/lib/components/TransferDropDown.js.map +13 -0
- package/lib/components/TransferPicker.d.ts +493 -0
- package/lib/components/TransferPicker.js +60 -0
- package/lib/components/TransferPicker.js.map +13 -0
- package/lib/components/Tree.d.ts +115 -84
- package/lib/components/Tree.js +183 -30
- 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.js +1 -1
- package/lib/components/WithRemoteConfig.js.map +2 -2
- package/lib/components/condition-builder/Field.js +5 -2
- 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/icons.js +2 -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.d.ts +1 -1
- package/lib/envOverwrite.js +24 -9
- package/lib/envOverwrite.js.map +2 -2
- package/lib/factory.d.ts +15 -1
- package/lib/factory.js +35 -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/download.js +7 -0
- package/lib/icons/drag-bar.js +10 -3
- package/lib/index.d.ts +5 -0
- package/lib/index.js +6 -1
- package/lib/index.js.map +2 -2
- package/lib/locale/de-DE.js +2 -0
- package/lib/locale/de-DE.js.map +2 -2
- package/lib/locale/en-US.js +3 -0
- package/lib/locale/en-US.js.map +2 -2
- package/lib/locale/zh-CN.js +5 -2
- package/lib/locale/zh-CN.js.map +2 -2
- package/lib/renderers/Action.d.ts +4 -3
- package/lib/renderers/Action.js +17 -4
- 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 +24 -4
- 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 +25 -20
- package/lib/renderers/Collapse.js +10 -72
- package/lib/renderers/Collapse.js.map +2 -2
- package/lib/renderers/CollapseGroup.d.ts +42 -0
- package/lib/renderers/CollapseGroup.js +33 -0
- package/lib/renderers/CollapseGroup.js.map +13 -0
- package/lib/renderers/DropDownButton.js +1 -1
- package/lib/renderers/DropDownButton.js.map +2 -2
- package/lib/renderers/Form/DiffEditor.d.ts +4 -3
- package/lib/renderers/Form/Editor.d.ts +3 -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/InputFile.d.ts +6 -0
- package/lib/renderers/Form/InputFile.js +28 -8
- package/lib/renderers/Form/InputFile.js.map +2 -2
- package/lib/renderers/Form/InputImage.js +11 -4
- package/lib/renderers/Form/InputImage.js.map +2 -2
- package/lib/renderers/Form/Item.d.ts +1 -1
- package/lib/renderers/Form/Item.js +2 -1
- package/lib/renderers/Form/Item.js.map +2 -2
- package/lib/renderers/Form/Options.js +13 -3
- package/lib/renderers/Form/Options.js.map +2 -2
- package/lib/renderers/Form/Select.d.ts +42 -4
- package/lib/renderers/Form/Select.js +37 -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 +18 -3
- package/lib/renderers/Form/Transfer.js.map +2 -2
- package/lib/renderers/Form/TransferPicker.d.ts +52 -0
- package/lib/renderers/Form/TransferPicker.js +43 -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.d.ts +5 -0
- package/lib/renderers/Form/index.js +5 -3
- package/lib/renderers/Form/index.js.map +2 -2
- package/lib/renderers/Form/wrapControl.js +13 -1
- package/lib/renderers/Form/wrapControl.js.map +2 -2
- package/lib/renderers/GridNav.d.ts +99 -0
- package/lib/renderers/GridNav.js +82 -0
- package/lib/renderers/GridNav.js.map +13 -0
- package/lib/renderers/IFrame.js +1 -3
- package/lib/renderers/IFrame.js.map +2 -2
- package/lib/renderers/Json.d.ts +4 -0
- package/lib/renderers/Json.js +4 -13
- package/lib/renderers/Json.js.map +2 -2
- package/lib/renderers/Link.d.ts +4 -2
- package/lib/renderers/Link.js +15 -6
- 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/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 +21 -21
- package/lib/renderers/Nav.js +39 -21
- package/lib/renderers/Nav.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/Table/TableContent.d.ts +4 -1
- package/lib/renderers/Table/TableContent.js +21 -1
- package/lib/renderers/Table/TableContent.js.map +2 -2
- package/lib/renderers/Table/index.d.ts +5 -1
- package/lib/renderers/Table/index.js +65 -30
- 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/combo.d.ts +2 -16
- package/lib/store/crud.js +3 -7
- package/lib/store/crud.js.map +2 -2
- package/lib/store/form.d.ts +1 -1
- package/lib/store/form.js +5 -6
- package/lib/store/form.js.map +2 -2
- package/lib/store/formItem.js +44 -4
- package/lib/store/formItem.js.map +2 -2
- package/lib/store/service.js +5 -4
- package/lib/store/service.js.map +2 -2
- package/lib/store/table.d.ts +3 -2
- package/lib/store/table.js +35 -12
- package/lib/store/table.js.map +2 -2
- package/lib/themes/ang-ie11.css +689 -175
- package/lib/themes/ang.css +689 -175
- package/lib/themes/ang.css.map +1 -1
- package/lib/themes/antd-ie11.css +689 -175
- package/lib/themes/antd.css +689 -175
- package/lib/themes/antd.css.map +1 -1
- package/lib/themes/cxd-ie11.css +728 -213
- package/lib/themes/cxd.css +728 -213
- package/lib/themes/cxd.css.map +1 -1
- package/lib/themes/dark-ie11.css +689 -175
- package/lib/themes/dark.css +689 -175
- package/lib/themes/dark.css.map +1 -1
- package/lib/themes/default.css +728 -213
- package/lib/themes/default.css.map +1 -1
- package/lib/types.d.ts +38 -1
- package/lib/types.js +0 -5
- package/lib/types.js.map +2 -2
- package/lib/utils/api.d.ts +4 -2
- package/lib/utils/api.js +104 -17
- package/lib/utils/api.js.map +2 -2
- 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/helper.d.ts +8 -0
- package/lib/utils/helper.js +28 -2
- package/lib/utils/helper.js.map +2 -2
- package/lib/utils/icon.js +3 -0
- package/lib/utils/icon.js.map +2 -2
- package/package.json +1 -1
- package/schema.json +3326 -836
- package/scss/_mixins.scss +1 -3
- package/scss/_properties.scss +25 -1
- package/scss/base/_common.scss +3 -0
- package/scss/base/_normalize.scss +2 -0
- package/scss/components/_anchor-nav.scss +89 -29
- package/scss/components/_card.scss +8 -14
- package/scss/components/_collapse-group.scss +11 -0
- package/scss/components/_collapse.scss +48 -22
- package/scss/components/_grid-nav.scss +128 -0
- package/scss/components/_input-box.scss +1 -0
- package/scss/components/_mapping.scss +6 -0
- package/scss/components/_nav.scss +2 -2
- package/scss/components/_picker-columns.scss +124 -0
- package/scss/components/_popover.scss +13 -0
- package/scss/components/_portlet.scss +51 -0
- package/scss/components/_result-box.scss +1 -0
- package/scss/components/_spinner.scss +5 -4
- package/scss/components/_status.scss +1 -1
- package/scss/components/_table.scss +32 -0
- package/scss/components/form/_checks.scss +0 -351
- package/scss/components/form/_combo.scss +4 -0
- package/scss/components/form/_fieldset.scss +5 -1
- package/scss/components/form/_file.scss +11 -0
- package/scss/components/form/_form.scss +48 -0
- package/scss/components/form/_selection.scss +354 -0
- package/scss/components/form/_transfer.scss +75 -18
- package/scss/components/form/_tree.scss +42 -0
- package/scss/themes/_common.scss +7 -0
- package/scss/themes/_cxd-variables.scss +8 -6
- package/scss/themes/cxd.scss +17 -12
- package/sdk/ang-ie11.css +786 -196
- package/sdk/ang.css +820 -213
- package/sdk/antd-ie11.css +786 -196
- package/sdk/antd.css +820 -213
- package/sdk/charts.js +13 -13
- package/sdk/color-picker.js +65 -69
- package/sdk/cropperjs.js +2 -2
- package/sdk/cxd-ie11.css +825 -236
- package/sdk/cxd.css +862 -254
- package/sdk/dark-ie11.css +787 -197
- package/sdk/dark.css +820 -213
- package/sdk/exceljs.js +1 -1
- package/sdk/helper.css.map +1 -1
- package/sdk/iconfont.svg +2513 -0
- package/sdk/iconfont.ttf +0 -0
- package/sdk/iconfont.woff +0 -0
- package/sdk/locale/de-DE.js +2 -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 -28
- package/sdk/rich-text.js +62 -62
- package/sdk/sdk-ie11.css +825 -236
- package/sdk/sdk.css +862 -254
- package/sdk/sdk.js +1243 -1175
- 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 +19 -1
- package/src/components/AnchorNav.tsx +15 -4
- package/src/components/{AssociatedCheckboxes.tsx → AssociatedSelection.tsx} +43 -37
- package/src/components/Badge.tsx +3 -3
- package/src/components/{ChainedCheckboxes.tsx → ChainedSelection.tsx} +57 -40
- package/src/components/Collapse.tsx +144 -20
- package/src/components/CollapseGroup.tsx +130 -0
- package/src/components/GridNav.tsx +233 -0
- package/src/components/{ListCheckboxes.tsx → GroupedSelection.tsx} +26 -21
- package/src/components/InputBox.tsx +10 -9
- package/src/components/Link.tsx +28 -37
- package/src/components/ModalManager.ts +1 -1
- package/src/components/PickerColumn.tsx +429 -0
- package/src/components/PickerContainer.tsx +128 -0
- package/src/components/Radios.tsx +3 -8
- package/src/components/ResultBox.tsx +9 -9
- package/src/components/SearchBox.tsx +4 -5
- package/src/components/Select.tsx +57 -5
- package/src/components/{Checkboxes.tsx → Selection.tsx} +75 -21
- 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 +23 -16
- package/src/components/Transfer.tsx +71 -50
- package/src/components/TransferDropDown.tsx +120 -0
- package/src/components/TransferPicker.tsx +91 -0
- package/src/components/Tree.tsx +194 -8
- package/src/components/{TreeCheckboxes.tsx → TreeSelection.tsx} +33 -26
- package/src/components/WithRemoteConfig.tsx +7 -2
- package/src/components/condition-builder/Field.tsx +5 -5
- 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/icons.tsx +2 -0
- package/src/components/index.tsx +13 -13
- package/src/envOverwrite.ts +20 -8
- package/src/factory.tsx +70 -9
- 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/download.svg +4 -0
- package/src/icons/drag-bar.svg +12 -6
- package/src/index.tsx +5 -0
- package/src/locale/de-DE.ts +2 -0
- package/src/locale/en-US.ts +3 -0
- package/src/locale/zh-CN.ts +5 -2
- package/src/renderers/Action.tsx +28 -2
- 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 +33 -3
- package/src/renderers/Card.tsx +63 -34
- package/src/renderers/Chart.tsx +6 -2
- package/src/renderers/Collapse.tsx +70 -115
- package/src/renderers/CollapseGroup.tsx +80 -0
- package/src/renderers/DropDownButton.tsx +1 -1
- package/src/renderers/Form/InputCity.tsx +4 -8
- package/src/renderers/Form/InputFile.tsx +65 -24
- package/src/renderers/Form/InputImage.tsx +11 -3
- package/src/renderers/Form/Item.tsx +3 -2
- package/src/renderers/Form/Options.tsx +16 -2
- package/src/renderers/Form/Select.tsx +162 -21
- package/src/renderers/Form/TabsTransferPicker.tsx +123 -0
- package/src/renderers/Form/Transfer.tsx +19 -4
- package/src/renderers/Form/TransferPicker.tsx +145 -0
- package/src/renderers/Form/TreeSelect.tsx +25 -0
- package/src/renderers/Form/index.tsx +15 -2
- package/src/renderers/Form/wrapControl.tsx +26 -1
- package/src/renderers/GridNav.tsx +204 -0
- package/src/renderers/IFrame.tsx +2 -4
- package/src/renderers/Json.tsx +9 -9
- package/src/renderers/Link.tsx +27 -13
- package/src/renderers/List.tsx +1 -1
- package/src/renderers/Mapping.tsx +27 -11
- package/src/renderers/Nav.tsx +108 -60
- package/src/renderers/Portlet.tsx +423 -0
- package/src/renderers/Property.tsx +3 -2
- package/src/renderers/SearchBox.tsx +23 -4
- package/src/renderers/Table/TableContent.tsx +40 -2
- package/src/renderers/Table/index.tsx +88 -43
- 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/formItem.ts +94 -2
- package/src/store/service.ts +5 -4
- package/src/store/table.ts +55 -14
- package/src/types.ts +58 -1
- package/src/utils/api.ts +133 -26
- package/src/utils/dom.tsx +12 -0
- package/src/utils/helper.ts +27 -0
- package/src/utils/icon.tsx +4 -0
- package/tsconfig-for-declaration.json +1 -1
- 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/envOverwrite.ts
CHANGED
@@ -4,19 +4,31 @@
|
|
4
4
|
|
5
5
|
import {SchemaNode, Schema} from './types';
|
6
6
|
import {RendererProps, RendererConfig, addSchemaFilter} from './factory';
|
7
|
-
|
7
|
+
import {findObjectsWithKey} from './utils/helper';
|
8
8
|
const isMobile = (window as any).matchMedia?.('(max-width: 768px)').matches
|
9
9
|
? true
|
10
10
|
: false;
|
11
11
|
|
12
|
-
|
13
|
-
|
14
|
-
|
12
|
+
// 这里不能用 addSchemaFilter 是因为还需要更深层的替换,比如 select 里的 options
|
13
|
+
export const envOverwrite = (schema: any, locale?: string) => {
|
14
|
+
if (schema.mobile && isMobile) {
|
15
|
+
Object.assign(schema, schema.mobile);
|
16
|
+
delete schema.mobile;
|
15
17
|
}
|
16
18
|
|
17
|
-
if (
|
18
|
-
|
19
|
+
if (locale) {
|
20
|
+
let schemaNodes = findObjectsWithKey(schema, locale);
|
21
|
+
for (let schemaNode of schemaNodes) {
|
22
|
+
Object.assign(schemaNode, schemaNode[locale]);
|
23
|
+
delete schemaNode[locale];
|
24
|
+
}
|
19
25
|
}
|
20
26
|
|
21
|
-
|
22
|
-
|
27
|
+
if (isMobile) {
|
28
|
+
let schemaNodes = findObjectsWithKey(schema, 'mobile');
|
29
|
+
for (let schemaNode of schemaNodes) {
|
30
|
+
Object.assign(schemaNode, schemaNode['mobile']);
|
31
|
+
delete schemaNode['mobile'];
|
32
|
+
}
|
33
|
+
}
|
34
|
+
};
|
package/src/factory.tsx
CHANGED
@@ -3,8 +3,24 @@ import {RendererStore, IRendererStore, IIRendererStore} from './store/index';
|
|
3
3
|
import {getEnv, destroy} from 'mobx-state-tree';
|
4
4
|
import {wrapFetcher} from './utils/api';
|
5
5
|
import {normalizeLink} from './utils/normalizeLink';
|
6
|
-
import {
|
7
|
-
|
6
|
+
import {
|
7
|
+
findIndex,
|
8
|
+
isObject,
|
9
|
+
JSONTraverse,
|
10
|
+
promisify,
|
11
|
+
qsparse,
|
12
|
+
string2regExp
|
13
|
+
} from './utils/helper';
|
14
|
+
import {
|
15
|
+
Api,
|
16
|
+
fetcherResult,
|
17
|
+
Payload,
|
18
|
+
SchemaNode,
|
19
|
+
Schema,
|
20
|
+
Action,
|
21
|
+
EventTrack,
|
22
|
+
PlainObject
|
23
|
+
} from './types';
|
8
24
|
import {observer} from 'mobx-react';
|
9
25
|
import Scoped from './Scoped';
|
10
26
|
import {getTheme, ThemeInstance, ThemeProps} from './theme';
|
@@ -16,6 +32,7 @@ import {getDefaultLocale, makeTranslator, LocaleProps} from './locale';
|
|
16
32
|
import ScopedRootRenderer, {RootRenderProps} from './Root';
|
17
33
|
import {HocStoreFactory} from './WithStore';
|
18
34
|
import {EnvContext, RendererEnv} from './env';
|
35
|
+
import {envOverwrite} from './envOverwrite';
|
19
36
|
|
20
37
|
export interface TestFunc {
|
21
38
|
(
|
@@ -58,6 +75,10 @@ export interface RendererProps extends ThemeProps, LocaleProps {
|
|
58
75
|
};
|
59
76
|
defaultData?: object;
|
60
77
|
className?: any;
|
78
|
+
/**
|
79
|
+
* 是否使用移动端交互
|
80
|
+
*/
|
81
|
+
useMobileUI?: boolean;
|
61
82
|
[propName: string]: any;
|
62
83
|
}
|
63
84
|
|
@@ -114,12 +135,20 @@ export interface RenderOptions {
|
|
114
135
|
affixOffsetTop?: number;
|
115
136
|
affixOffsetBottom?: number;
|
116
137
|
richTextToken?: string;
|
138
|
+
/**
|
139
|
+
* 替换文本,用于实现 URL 替换、语言替换等
|
140
|
+
*/
|
141
|
+
replaceText?: {[propName: string]: any};
|
142
|
+
/**
|
143
|
+
* 文本替换的黑名单,因为属性太多了所以改成黑名单的 fangs
|
144
|
+
*/
|
145
|
+
replaceTextIgnoreKeys?: String[];
|
117
146
|
[propName: string]: any;
|
118
147
|
}
|
119
148
|
|
120
149
|
export interface fetcherConfig {
|
121
150
|
url: string;
|
122
|
-
method?: 'get' | 'post' | 'put' | 'patch' | 'delete';
|
151
|
+
method?: 'get' | 'post' | 'put' | 'patch' | 'delete' | 'jsonp';
|
123
152
|
data?: any;
|
124
153
|
config?: any;
|
125
154
|
}
|
@@ -262,19 +291,19 @@ const defaultOptions: RenderOptions = {
|
|
262
291
|
},
|
263
292
|
isCancel() {
|
264
293
|
console.error(
|
265
|
-
'Please
|
294
|
+
'Please implement isCancel. see https://baidu.gitee.io/amis/docs/start/getting-started#%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97'
|
266
295
|
);
|
267
296
|
return false;
|
268
297
|
},
|
269
298
|
updateLocation() {
|
270
299
|
console.error(
|
271
|
-
'Please
|
300
|
+
'Please implement updateLocation. see https://baidu.gitee.io/amis/docs/start/getting-started#%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97'
|
272
301
|
);
|
273
302
|
},
|
274
303
|
alert,
|
275
304
|
confirm,
|
276
305
|
notify: (type, msg, conf) =>
|
277
|
-
toast[type] ? toast[type](msg) : console.warn('[Notify]', type, msg),
|
306
|
+
toast[type] ? toast[type](msg, conf) : console.warn('[Notify]', type, msg),
|
278
307
|
|
279
308
|
jumpTo: (to: string, action?: any) => {
|
280
309
|
if (to === 'goBack') {
|
@@ -320,7 +349,17 @@ const defaultOptions: RenderOptions = {
|
|
320
349
|
copy(contents: string) {
|
321
350
|
console.error('copy contents', contents);
|
322
351
|
},
|
323
|
-
|
352
|
+
// 用于跟踪用户在界面中的各种操作
|
353
|
+
tracker(eventTrack: EventTrack, props: PlainObject) {},
|
354
|
+
rendererResolver: resolveRenderer,
|
355
|
+
replaceTextIgnoreKeys: [
|
356
|
+
'type',
|
357
|
+
'name',
|
358
|
+
'mode',
|
359
|
+
'target',
|
360
|
+
'reload',
|
361
|
+
'persistData'
|
362
|
+
]
|
324
363
|
};
|
325
364
|
let stores: {
|
326
365
|
[propName: string]: IRendererStore;
|
@@ -340,12 +379,15 @@ export function render(
|
|
340
379
|
const translate = props.translate || makeTranslator(locale);
|
341
380
|
let store = stores[options.session || 'global'];
|
342
381
|
|
382
|
+
// 根据环境覆盖 schema,这个要在最前面做,不然就无法覆盖 validations
|
383
|
+
envOverwrite(schema, locale);
|
384
|
+
|
343
385
|
if (!store) {
|
344
386
|
options = {
|
345
387
|
...defaultOptions,
|
346
388
|
...options,
|
347
389
|
fetcher: options.fetcher
|
348
|
-
? wrapFetcher(options.fetcher)
|
390
|
+
? wrapFetcher(options.fetcher, options.tracker)
|
349
391
|
: defaultOptions.fetcher,
|
350
392
|
confirm: promisify(
|
351
393
|
options.confirm || defaultOptions.confirm || window.confirm
|
@@ -372,6 +414,25 @@ export function render(
|
|
372
414
|
env.locale = locale;
|
373
415
|
}
|
374
416
|
|
417
|
+
// 进行文本替换
|
418
|
+
if (env.replaceText && isObject(env.replaceText)) {
|
419
|
+
const replaceKeys = Object.keys(env.replaceText);
|
420
|
+
replaceKeys.sort().reverse(); // 避免用户将短的放前面
|
421
|
+
const replaceTextIgnoreKeys = new Set(env.replaceTextIgnoreKeys || []);
|
422
|
+
JSONTraverse(schema, (value: any, key: string, object: any) => {
|
423
|
+
if (typeof value === 'string' && !replaceTextIgnoreKeys.has(key)) {
|
424
|
+
for (const replaceKey of replaceKeys) {
|
425
|
+
if (~value.indexOf(replaceKey)) {
|
426
|
+
object[key] = value.replaceAll(
|
427
|
+
replaceKey,
|
428
|
+
env.replaceText[replaceKey]
|
429
|
+
);
|
430
|
+
}
|
431
|
+
}
|
432
|
+
}
|
433
|
+
});
|
434
|
+
}
|
435
|
+
|
375
436
|
return (
|
376
437
|
<EnvContext.Provider value={env}>
|
377
438
|
<ScopedRootRenderer
|
@@ -416,7 +477,7 @@ export function updateEnv(options: Partial<RenderOptions>, session = 'global') {
|
|
416
477
|
};
|
417
478
|
|
418
479
|
if (options.fetcher) {
|
419
|
-
options.fetcher = wrapFetcher(options.fetcher) as any;
|
480
|
+
options.fetcher = wrapFetcher(options.fetcher, options.tracker) as any;
|
420
481
|
}
|
421
482
|
|
422
483
|
if (options.confirm) {
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import {useCallback, useState} from 'react';
|
2
|
+
import isFunction from 'lodash/isFunction';
|
3
|
+
|
4
|
+
const useSetState = <T extends object>(
|
5
|
+
initialState: T = {} as T
|
6
|
+
): [T, (patch: Partial<T> | ((prevState: T) => Partial<T>)) => void] => {
|
7
|
+
const [state, setState] = useState<T>(initialState);
|
8
|
+
|
9
|
+
const setMergeState = useCallback(patch => {
|
10
|
+
setState(prevState => ({
|
11
|
+
...prevState,
|
12
|
+
...(isFunction(patch) ? patch(prevState) : patch)
|
13
|
+
}));
|
14
|
+
}, []);
|
15
|
+
|
16
|
+
return [state, setMergeState];
|
17
|
+
};
|
18
|
+
|
19
|
+
export default useSetState;
|
@@ -0,0 +1,100 @@
|
|
1
|
+
import {useCallback, useRef} from 'react';
|
2
|
+
|
3
|
+
const MIN_DISTANCE = 10;
|
4
|
+
|
5
|
+
type Direction = '' | 'vertical' | 'horizontal';
|
6
|
+
|
7
|
+
function getDirection(x: number, y: number) {
|
8
|
+
if (x > y && x > MIN_DISTANCE) {
|
9
|
+
return 'horizontal';
|
10
|
+
}
|
11
|
+
if (y > x && y > MIN_DISTANCE) {
|
12
|
+
return 'vertical';
|
13
|
+
}
|
14
|
+
return '';
|
15
|
+
}
|
16
|
+
|
17
|
+
const INITIAL_STATE = {
|
18
|
+
startX: 0,
|
19
|
+
startY: 0,
|
20
|
+
deltaX: 0,
|
21
|
+
deltaY: 0,
|
22
|
+
offsetX: 0,
|
23
|
+
offsetY: 0,
|
24
|
+
direction: '' as Direction
|
25
|
+
};
|
26
|
+
|
27
|
+
type StateType = Partial<typeof INITIAL_STATE>;
|
28
|
+
type StateFunctionType = (value: StateType) => typeof INITIAL_STATE;
|
29
|
+
|
30
|
+
const useTouch = () => {
|
31
|
+
const refState = useRef(INITIAL_STATE);
|
32
|
+
const innerState = refState.current;
|
33
|
+
|
34
|
+
const update = (value: StateType | StateFunctionType) => {
|
35
|
+
if (typeof value === 'function') {
|
36
|
+
value = value(refState.current);
|
37
|
+
}
|
38
|
+
Object.entries(value).forEach(([k, v]) => {
|
39
|
+
//@ts-ignore
|
40
|
+
refState.current[k] = v;
|
41
|
+
});
|
42
|
+
};
|
43
|
+
|
44
|
+
const isVertical = useCallback(
|
45
|
+
() => innerState.direction === 'vertical',
|
46
|
+
[innerState.direction]
|
47
|
+
);
|
48
|
+
const isHorizontal = useCallback(
|
49
|
+
() => innerState.direction === 'horizontal',
|
50
|
+
[innerState.direction]
|
51
|
+
);
|
52
|
+
|
53
|
+
const reset = () => {
|
54
|
+
update({
|
55
|
+
deltaX: 0,
|
56
|
+
deltaY: 0,
|
57
|
+
offsetX: 0,
|
58
|
+
offsetY: 0,
|
59
|
+
direction: ''
|
60
|
+
});
|
61
|
+
};
|
62
|
+
|
63
|
+
const start = ((event: TouchEvent) => {
|
64
|
+
reset();
|
65
|
+
update({
|
66
|
+
startX: event.touches[0].clientX,
|
67
|
+
startY: event.touches[0].clientY
|
68
|
+
});
|
69
|
+
}) as EventListener;
|
70
|
+
|
71
|
+
const move = ((event: TouchEvent) => {
|
72
|
+
const touch = event.touches[0];
|
73
|
+
|
74
|
+
update(value => {
|
75
|
+
// Fix: Safari back will set clientX to negative number
|
76
|
+
const newState = {...value} as typeof innerState;
|
77
|
+
|
78
|
+
newState.deltaX = touch.clientX < 0 ? 0 : touch.clientX - newState.startX;
|
79
|
+
newState.deltaY = touch.clientY - newState.startY;
|
80
|
+
newState.offsetX = Math.abs(newState.deltaX);
|
81
|
+
newState.offsetY = Math.abs(newState.deltaY);
|
82
|
+
|
83
|
+
if (!newState.direction) {
|
84
|
+
newState.direction = getDirection(newState.offsetX, newState.offsetY);
|
85
|
+
}
|
86
|
+
return newState;
|
87
|
+
});
|
88
|
+
}) as EventListener;
|
89
|
+
|
90
|
+
return {
|
91
|
+
...innerState,
|
92
|
+
move,
|
93
|
+
start,
|
94
|
+
reset,
|
95
|
+
isVertical,
|
96
|
+
isHorizontal
|
97
|
+
};
|
98
|
+
};
|
99
|
+
|
100
|
+
export default useTouch;
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import {useEffect, useRef} from 'react';
|
2
|
+
|
3
|
+
const useUpdateEffect: typeof useEffect = (effect, deps) => {
|
4
|
+
const isMounted = useRef(false);
|
5
|
+
|
6
|
+
useEffect(() => {
|
7
|
+
if (!isMounted.current) {
|
8
|
+
isMounted.current = true;
|
9
|
+
} else {
|
10
|
+
return effect();
|
11
|
+
}
|
12
|
+
return undefined;
|
13
|
+
}, deps);
|
14
|
+
};
|
15
|
+
|
16
|
+
export default useUpdateEffect;
|
@@ -0,0 +1,4 @@
|
|
1
|
+
<svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="download" class="svg-inline--fa fa-download fa-w-16" role="img"
|
2
|
+
xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
|
3
|
+
<path fill="currentColor" d="M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"></path>
|
4
|
+
</svg>
|
package/src/icons/drag-bar.svg
CHANGED
@@ -1,7 +1,13 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
<
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<svg width="16px" height="16px" viewBox="0 0 16 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
3
|
+
<g transform="translate(5.000000, 1.000000)" stroke-width="1" stroke="currentColor">
|
4
|
+
<circle cx="1" cy="1" r="1"></circle>
|
5
|
+
<circle cx="5" cy="1" r="1"></circle>
|
6
|
+
<circle cx="1" cy="5" r="1"></circle>
|
7
|
+
<circle cx="5" cy="5" r="1"></circle>
|
8
|
+
<circle cx="1" cy="9" r="1"></circle>
|
9
|
+
<circle cx="5" cy="9" r="1"></circle>
|
10
|
+
<circle cx="1" cy="13" r="1"></circle>
|
11
|
+
<circle cx="5" cy="13" r="1"></circle>
|
6
12
|
</g>
|
7
|
-
</svg>
|
13
|
+
</svg>
|
package/src/index.tsx
CHANGED
@@ -56,6 +56,7 @@ import './renderers/Form/ButtonToolbar';
|
|
56
56
|
import './renderers/Breadcrumb';
|
57
57
|
import './renderers/DropDownButton';
|
58
58
|
import './renderers/Collapse';
|
59
|
+
import './renderers/CollapseGroup';
|
59
60
|
import './renderers/Color';
|
60
61
|
import './renderers/CRUD';
|
61
62
|
import './renderers/Pagination';
|
@@ -111,12 +112,14 @@ import './renderers/Form/InputColor';
|
|
111
112
|
import './renderers/Form/ChainedSelect';
|
112
113
|
import './renderers/Form/NestedSelect';
|
113
114
|
import './renderers/Form/Transfer';
|
115
|
+
import './renderers/Form/TransferPicker';
|
114
116
|
import './renderers/Form/InputTable';
|
115
117
|
import './renderers/Form/Picker';
|
116
118
|
import './renderers/Form/IconPicker';
|
117
119
|
import './renderers/Form/Formula';
|
118
120
|
import './renderers/Form/FieldSet';
|
119
121
|
import './renderers/Form/TabsTransfer';
|
122
|
+
import './renderers/Form/TabsTransferPicker';
|
120
123
|
import './renderers/Form/Group';
|
121
124
|
import './renderers/Form/InputGroup';
|
122
125
|
import './renderers/Grid';
|
@@ -133,6 +136,7 @@ import './renderers/PaginationWrapper';
|
|
133
136
|
import './renderers/Panel';
|
134
137
|
import './renderers/Plain';
|
135
138
|
import './renderers/Property';
|
139
|
+
import './renderers/Portlet';
|
136
140
|
import './renderers/Spinner';
|
137
141
|
import './renderers/Table/index';
|
138
142
|
import './renderers/Tabs';
|
@@ -164,6 +168,7 @@ import './renderers/Markdown';
|
|
164
168
|
import './renderers/TableView';
|
165
169
|
import './renderers/Code';
|
166
170
|
import './renderers/WebComponent';
|
171
|
+
import './renderers/GridNav';
|
167
172
|
|
168
173
|
import Scoped, {ScopedContext} from './Scoped';
|
169
174
|
|
package/src/locale/de-DE.ts
CHANGED
@@ -181,6 +181,7 @@ register('de-DE', {
|
|
181
181
|
'Transfer.configError': 'Konfigurationsfehler',
|
182
182
|
'Transfer.refreshIcon': 'Zum Aktualisieren klicken',
|
183
183
|
'Transfer.searchKeyword': 'Stichwörter eingeben',
|
184
|
+
'Transfer.available': 'Verfügbar',
|
184
185
|
'Transfer.selectd': 'Ausgewählt',
|
185
186
|
'Transfer.selectFromLeft': 'Von links auswählen',
|
186
187
|
'Tree.addChild': 'Untergeordnetes Element hinzufügen',
|
@@ -222,6 +223,7 @@ register('de-DE', {
|
|
222
223
|
'Wizard.saveAndNext': 'Speichern & Weiter',
|
223
224
|
'year-to-year': '{{from}} - {{to}}',
|
224
225
|
'Year.placeholder': 'Wählen Sie ein Jahr',
|
226
|
+
'reload': 'Neu laden',
|
225
227
|
'rotate': 'Drehen',
|
226
228
|
'Editor.fullscreen': 'Schirmfüllend Modus',
|
227
229
|
'Editor.exitFullscreen': 'Zurücktreten Schirmfüllend Modus',
|
package/src/locale/en-US.ts
CHANGED
@@ -85,6 +85,7 @@ register('en-US', {
|
|
85
85
|
'Excel.placeholder': `Drag 'n' drop excel here, or click to select`,
|
86
86
|
'fetchFailed': 'Fetch api failed',
|
87
87
|
'File.continueAdd': 'Continue add',
|
88
|
+
'File.downloadTpl': 'Download template',
|
88
89
|
'File.dragDrop': `Drag 'n' drop some files here`,
|
89
90
|
'File.errorRetry': 'File upload failed, please try again',
|
90
91
|
'File.failed': 'Failed files.',
|
@@ -182,6 +183,7 @@ register('en-US', {
|
|
182
183
|
'Transfer.configError': 'Config error',
|
183
184
|
'Transfer.refreshIcon': 'Click to refresh',
|
184
185
|
'Transfer.searchKeyword': 'Enter keywords',
|
186
|
+
'Transfer.available': 'Available',
|
185
187
|
'Transfer.selectd': 'Selected',
|
186
188
|
'Transfer.selectFromLeft': 'Select from the left',
|
187
189
|
'Tree.addChild': 'Add child',
|
@@ -223,6 +225,7 @@ register('en-US', {
|
|
223
225
|
'Wizard.saveAndNext': 'Save & Next',
|
224
226
|
'year-to-year': '{{from}} - {{to}}',
|
225
227
|
'Year.placeholder': 'Select a Year',
|
228
|
+
'reload': 'Reload',
|
226
229
|
'rotate': 'Rotate',
|
227
230
|
'Editor.fullscreen': 'full screen',
|
228
231
|
'Editor.exitFullscreen': 'exit fullscreen mode',
|
package/src/locale/zh-CN.ts
CHANGED
@@ -87,6 +87,7 @@ register('zh-CN', {
|
|
87
87
|
'Excel.placeholder': '拖拽 Excel 到这,或点击上传',
|
88
88
|
'fetchFailed': '初始化失败',
|
89
89
|
'File.continueAdd': '继续添加',
|
90
|
+
'File.downloadTpl': '下载模板',
|
90
91
|
'File.dragDrop': '将文件拖拽到此处',
|
91
92
|
'File.errorRetry': '文件上传失败请重试',
|
92
93
|
'File.failed': '失败文件',
|
@@ -186,8 +187,9 @@ register('zh-CN', {
|
|
186
187
|
'Transfer.configError': '配置错误,选项无法与左侧选项对应',
|
187
188
|
'Transfer.refreshIcon': '点击刷新重新加载',
|
188
189
|
'Transfer.searchKeyword': '请输入关键字',
|
189
|
-
'Transfer.
|
190
|
-
'Transfer.
|
190
|
+
'Transfer.available': '可选项',
|
191
|
+
'Transfer.selectd': '已选项',
|
192
|
+
'Transfer.selectFromLeft': '请选择左侧数据',
|
191
193
|
'Tree.addChild': '添加子节点',
|
192
194
|
'Tree.addRoot': '添加一级节点',
|
193
195
|
'Tree.editNode': '编辑该节点',
|
@@ -227,6 +229,7 @@ register('zh-CN', {
|
|
227
229
|
'Wizard.saveAndNext': '保存并下一步',
|
228
230
|
'year-to-year': '{{from}} 年 - {{to}} 年',
|
229
231
|
'Year.placeholder': '请选择年',
|
232
|
+
'reload': '刷新',
|
230
233
|
'rotate': '旋转',
|
231
234
|
'Editor.fullscreen': '全屏',
|
232
235
|
'Editor.exitFullscreen': '退出全屏',
|
package/src/renderers/Action.tsx
CHANGED
@@ -4,8 +4,14 @@ import {Renderer, RendererProps} from '../factory';
|
|
4
4
|
import {filter} from '../utils/tpl';
|
5
5
|
import Button from '../components/Button';
|
6
6
|
import pick from 'lodash/pick';
|
7
|
+
import omit from 'lodash/omit';
|
7
8
|
|
8
9
|
export interface ButtonSchema extends BaseSchema {
|
10
|
+
/**
|
11
|
+
* 主要用于用户行为跟踪里区分是哪个按钮
|
12
|
+
*/
|
13
|
+
id?: string;
|
14
|
+
|
9
15
|
/**
|
10
16
|
* 是否为块状展示,默认为内联。
|
11
17
|
*/
|
@@ -332,6 +338,7 @@ export type ActionSchema =
|
|
332
338
|
| VanillaAction;
|
333
339
|
|
334
340
|
const ActionProps = [
|
341
|
+
'id',
|
335
342
|
'dialog',
|
336
343
|
'drawer',
|
337
344
|
'url',
|
@@ -570,7 +577,8 @@ export class Action extends React.Component<ActionProps, ActionState> {
|
|
570
577
|
|
571
578
|
@autobind
|
572
579
|
async handleAction(e: React.MouseEvent<any>) {
|
573
|
-
const {onAction, disabled, countDown} = this.props;
|
580
|
+
const {onAction, disabled, countDown, env} = this.props;
|
581
|
+
|
574
582
|
// https://reactjs.org/docs/legacy-event-pooling.html
|
575
583
|
e.persist();
|
576
584
|
let onClick = this.props.onClick;
|
@@ -592,9 +600,26 @@ export class Action extends React.Component<ActionProps, ActionState> {
|
|
592
600
|
|
593
601
|
e.preventDefault();
|
594
602
|
const action = pick(this.props, ActionProps) as ActionSchema;
|
603
|
+
const actionType = action.actionType;
|
604
|
+
|
605
|
+
// ajax 会在 wrapFetcher 里记录,这里再处理就重复了,因此去掉
|
606
|
+
// add 一般是 input-table 之类的,会触发 formItemChange,为了避免重复也去掉
|
607
|
+
if (
|
608
|
+
actionType !== 'ajax' &&
|
609
|
+
actionType !== 'download' &&
|
610
|
+
actionType !== 'add'
|
611
|
+
) {
|
612
|
+
env?.tracker(
|
613
|
+
{
|
614
|
+
eventType: actionType || this.props.type || 'click',
|
615
|
+
eventData: omit(action, ['type', 'actionType', 'tooltipPlacement'])
|
616
|
+
},
|
617
|
+
this.props
|
618
|
+
);
|
619
|
+
}
|
595
620
|
|
596
621
|
// download 是一种 ajax 的简写
|
597
|
-
if (
|
622
|
+
if (actionType === 'download') {
|
598
623
|
action.actionType = 'ajax';
|
599
624
|
const api = normalizeApi((action as AjaxActionSchema).api);
|
600
625
|
api.responseType = 'blob';
|
@@ -798,6 +823,7 @@ export class ActionRenderer extends React.Component<
|
|
798
823
|
return (
|
799
824
|
<Action
|
800
825
|
{...(rest as any)}
|
826
|
+
env={env}
|
801
827
|
disabled={disabled || btnDisabled}
|
802
828
|
onAction={this.handleAction}
|
803
829
|
loading={loading}
|
@@ -65,6 +65,8 @@ export interface AnchorNavSchema extends BaseSchema {
|
|
65
65
|
* 楼层样式名
|
66
66
|
*/
|
67
67
|
sectionClassName?: SchemaClassName;
|
68
|
+
|
69
|
+
direction?: 'vertical' | 'horizontal';
|
68
70
|
}
|
69
71
|
|
70
72
|
export interface AnchorNavProps
|
@@ -148,6 +150,7 @@ export default class AnchorNav extends React.Component<
|
|
148
150
|
className,
|
149
151
|
linkClassName,
|
150
152
|
sectionClassName,
|
153
|
+
direction,
|
151
154
|
sectionRender,
|
152
155
|
render,
|
153
156
|
data
|
@@ -187,6 +190,7 @@ export default class AnchorNav extends React.Component<
|
|
187
190
|
sectionClassName={sectionClassName}
|
188
191
|
onSelect={this.handleSelect}
|
189
192
|
active={this.state.active}
|
193
|
+
direction={direction}
|
190
194
|
>
|
191
195
|
{children}
|
192
196
|
</CAnchorNav>
|
package/src/renderers/Avatar.tsx
CHANGED
@@ -10,7 +10,11 @@ import {
|
|
10
10
|
SchemaUrlPath
|
11
11
|
} from '../Schema';
|
12
12
|
import {BadgeSchema, withBadge} from '../components/Badge';
|
13
|
-
import {
|
13
|
+
import {
|
14
|
+
isPureVariable,
|
15
|
+
resolveVariable,
|
16
|
+
resolveVariableAndFilter
|
17
|
+
} from '../utils/tpl-builtin';
|
14
18
|
|
15
19
|
/**
|
16
20
|
* Avatar 用户头像显示
|
@@ -102,15 +106,15 @@ export class AvatarField extends React.Component<AvatarProps, object> {
|
|
102
106
|
};
|
103
107
|
|
104
108
|
if (isPureVariable(text)) {
|
105
|
-
text =
|
109
|
+
text = resolveVariableAndFilter(text, data);
|
106
110
|
}
|
107
111
|
|
108
112
|
if (isPureVariable(src)) {
|
109
|
-
src =
|
113
|
+
src = resolveVariableAndFilter(src, data, '| raw');
|
110
114
|
}
|
111
115
|
|
112
116
|
if (isPureVariable(icon)) {
|
113
|
-
icon =
|
117
|
+
icon = resolveVariableAndFilter(icon, data);
|
114
118
|
}
|
115
119
|
|
116
120
|
let avatar = <i className={icon} />;
|
@@ -77,7 +77,11 @@ export class BreadcrumbField extends React.Component<BreadcrumbProps, object> {
|
|
77
77
|
|
78
78
|
const crumbItems = items
|
79
79
|
? items
|
80
|
-
: (
|
80
|
+
: (resolveVariableAndFilter(
|
81
|
+
source,
|
82
|
+
data,
|
83
|
+
'| raw'
|
84
|
+
) as Array<BreadcrumbItemSchema>);
|
81
85
|
|
82
86
|
const crumbs = crumbItems
|
83
87
|
.map<React.ReactNode>((item, index) => (
|