amis 1.4.2-beta.6 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/Schema.d.ts +11 -3
- package/lib/Schema.js.map +1 -1
- package/lib/components/Alert2.d.ts +26 -21
- package/lib/components/Alert2.js +11 -4
- package/lib/components/Alert2.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.js +2 -2
- package/lib/components/Badge.js.map +2 -2
- package/lib/components/Button.js +1 -1
- 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 +20 -20
- package/lib/components/Collapse.d.ts +51 -23
- package/lib/components/Collapse.js +70 -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 +89 -85
- package/lib/components/ColorPicker.js +17 -4
- package/lib/components/ColorPicker.js.map +2 -2
- package/lib/components/DatePicker.d.ts +84 -84
- package/lib/components/DateRangePicker.d.ts +84 -84
- package/lib/components/Drawer.js +2 -2
- package/lib/components/Drawer.js.map +2 -2
- 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/Overlay.js +5 -0
- package/lib/components/Overlay.js.map +2 -2
- 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/PopOver.d.ts +1 -0
- package/lib/components/PopOver.js +12 -1
- package/lib/components/PopOver.js.map +2 -2
- package/lib/components/Progress.d.ts +85 -0
- package/lib/components/Progress.js +81 -0
- package/lib/components/Progress.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/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 +90 -87
- package/lib/components/Toast.js +15 -5
- 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/condition-builder/Field.js +4 -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 +10 -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/alert-danger.js +7 -0
- package/lib/icons/alert-info.js +7 -0
- package/lib/icons/alert-success.js +7 -0
- package/lib/icons/alert-warning.js +7 -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 +10 -5
- package/lib/renderers/Action.js +23 -5
- package/lib/renderers/Action.js.map +2 -2
- package/lib/renderers/Alert.d.ts +21 -1
- package/lib/renderers/Alert.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 +5 -0
- package/lib/renderers/CRUD.js +25 -4
- package/lib/renderers/CRUD.js.map +2 -2
- package/lib/renderers/Card.d.ts +5 -0
- package/lib/renderers/Card.js +34 -23
- package/lib/renderers/Card.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/Form/ConditionBuilder.js +2 -2
- package/lib/renderers/Form/ConditionBuilder.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 +86 -85
- package/lib/renderers/Form/InputColor.js +1 -1
- package/lib/renderers/Form/InputColor.js.map +2 -2
- 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 +25 -4
- 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/Image.js +7 -5
- package/lib/renderers/Image.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 -8
- 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/Nav.d.ts +21 -21
- package/lib/renderers/Nav.js +37 -19
- package/lib/renderers/Nav.js.map +2 -2
- package/lib/renderers/Page.d.ts +18 -0
- package/lib/renderers/Page.js +53 -9
- 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/Progress.d.ts +23 -3
- package/lib/renderers/Progress.js +15 -19
- package/lib/renderers/Progress.js.map +2 -2
- package/lib/renderers/Property.js +1 -1
- package/lib/renderers/Property.js.map +2 -2
- package/lib/renderers/Table/ColumnToggler.js +1 -1
- package/lib/renderers/Table/ColumnToggler.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 -2
- package/lib/store/form.d.ts +1 -1
- package/lib/store/form.js +3 -5
- 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/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 +934 -222
- package/lib/themes/ang.css +934 -222
- package/lib/themes/ang.css.map +1 -1
- package/lib/themes/antd-ie11.css +934 -222
- package/lib/themes/antd.css +934 -222
- package/lib/themes/antd.css.map +1 -1
- package/lib/themes/cxd-ie11.css +970 -260
- package/lib/themes/cxd.css +970 -260
- package/lib/themes/cxd.css.map +1 -1
- package/lib/themes/dark-ie11.css +934 -222
- package/lib/themes/dark.css +934 -222
- package/lib/themes/dark.css.map +1 -1
- package/lib/themes/default.css +970 -260
- 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 +3 -2
- package/lib/utils/api.js +90 -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 +12 -23
- package/lib/utils/helper.js +62 -166
- package/lib/utils/helper.js.map +2 -2
- package/lib/utils/tpl-builtin.d.ts +2 -20
- package/lib/utils/tpl-builtin.js +25 -743
- package/lib/utils/tpl-builtin.js.map +2 -2
- package/lib/utils/tpl.js +24 -0
- package/lib/utils/tpl.js.map +2 -2
- package/package.json +5 -2
- package/schema.json +3966 -1263
- package/scss/_mixins.scss +1 -3
- package/scss/_properties.scss +42 -13
- package/scss/base/_common.scss +3 -0
- package/scss/base/_normalize.scss +2 -0
- package/scss/components/_alert.scss +28 -5
- package/scss/components/_anchor-nav.scss +89 -29
- package/scss/components/_button.scss +12 -0
- package/scss/components/_card.scss +9 -15
- package/scss/components/_collapse-group.scss +15 -0
- package/scss/components/_collapse.scss +48 -23
- package/scss/components/_grid-nav.scss +128 -0
- package/scss/components/_images.scss +1 -0
- package/scss/components/_input-box.scss +1 -0
- package/scss/components/_nav.scss +2 -7
- package/scss/components/_page.scss +35 -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/_progress.scss +141 -33
- 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/_toast.scss +41 -11
- package/scss/components/form/_checks.scss +0 -351
- package/scss/components/form/_color.scss +32 -3
- package/scss/components/form/_combo.scss +4 -0
- package/scss/components/form/_fieldset.scss +6 -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 +76 -18
- package/scss/components/form/_tree.scss +42 -0
- package/scss/themes/_common.scss +6 -0
- package/scss/themes/_cxd-variables.scss +13 -6
- package/scss/themes/cxd.scss +19 -20
- package/sdk/ang-ie11.css +1065 -246
- package/sdk/ang.css +1069 -230
- package/sdk/antd-ie11.css +1068 -249
- package/sdk/antd.css +1069 -230
- package/sdk/charts.js +17 -17
- package/sdk/color-picker.js +65 -69
- package/sdk/cropperjs.js +3 -3
- package/sdk/cxd-ie11.css +1081 -268
- package/sdk/cxd.css +1116 -279
- package/sdk/dark-ie11.css +1069 -250
- package/sdk/dark.css +1069 -230
- 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 +1081 -268
- package/sdk/sdk.css +1116 -279
- package/sdk/sdk.js +1371 -1189
- package/sdk/thirds/hls.js/hls.js +18 -18
- package/sdk/thirds/mpegts.js/mpegts.js +2 -2
- package/sdk/tinymce.js +57 -57
- package/src/Schema.ts +19 -1
- package/src/components/Alert2.tsx +32 -4
- 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/Button.tsx +1 -0
- package/src/components/{ChainedCheckboxes.tsx → ChainedSelection.tsx} +57 -40
- package/src/components/Collapse.tsx +139 -20
- package/src/components/CollapseGroup.tsx +130 -0
- package/src/components/ColorPicker.tsx +32 -10
- package/src/components/Drawer.tsx +8 -6
- 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/Overlay.tsx +6 -0
- package/src/components/PickerColumn.tsx +429 -0
- package/src/components/PickerContainer.tsx +128 -0
- package/src/components/PopOver.tsx +15 -1
- package/src/components/Progress.tsx +140 -0
- package/src/components/Radios.tsx +3 -8
- package/src/components/ResultBox.tsx +9 -9
- 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 +48 -21
- 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/condition-builder/Field.tsx +7 -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 +10 -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/alert-danger.svg +1 -0
- package/src/icons/alert-info.svg +1 -0
- package/src/icons/alert-success.svg +1 -0
- package/src/icons/alert-warning.svg +1 -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 +58 -3
- package/src/renderers/Alert.tsx +31 -1
- 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 +29 -3
- package/src/renderers/Card.tsx +76 -36
- package/src/renderers/Collapse.tsx +70 -115
- package/src/renderers/CollapseGroup.tsx +80 -0
- package/src/renderers/Form/ConditionBuilder.tsx +2 -2
- package/src/renderers/Form/InputCity.tsx +4 -8
- package/src/renderers/Form/InputColor.tsx +4 -2
- 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 +29 -3
- 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/Image.tsx +19 -15
- package/src/renderers/Json.tsx +9 -9
- package/src/renderers/Link.tsx +29 -16
- package/src/renderers/List.tsx +1 -1
- package/src/renderers/Nav.tsx +105 -56
- package/src/renderers/Page.tsx +62 -1
- package/src/renderers/Portlet.tsx +423 -0
- package/src/renderers/Progress.tsx +56 -38
- package/src/renderers/Property.tsx +6 -4
- package/src/renderers/Table/ColumnToggler.tsx +1 -1
- 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/form.ts +3 -9
- package/src/store/formItem.ts +94 -2
- package/src/store/table.ts +55 -14
- package/src/types.ts +58 -1
- package/src/utils/api.ts +120 -26
- package/src/utils/dom.tsx +12 -0
- package/src/utils/helper.ts +55 -185
- package/src/utils/tpl-builtin.ts +40 -866
- package/src/utils/tpl.ts +33 -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/lib/renderers/Page.js
CHANGED
@@ -248,6 +248,29 @@ var Page = /** @class */ (function (_super) {
|
|
248
248
|
e.preventDefault();
|
249
249
|
}
|
250
250
|
};
|
251
|
+
Page.prototype.handleResizeMouseDown = function (e) {
|
252
|
+
// todo 可能 ie 不正确
|
253
|
+
var isRightMB = e.nativeEvent.which == 3;
|
254
|
+
if (isRightMB) {
|
255
|
+
return;
|
256
|
+
}
|
257
|
+
this.codeWrap = e.currentTarget.parentElement;
|
258
|
+
document.addEventListener('mousemove', this.handleResizeMouseMove);
|
259
|
+
document.addEventListener('mouseup', this.handleResizeMouseUp);
|
260
|
+
this.startX = e.clientX;
|
261
|
+
this.startWidth = this.codeWrap.offsetWidth;
|
262
|
+
};
|
263
|
+
Page.prototype.handleResizeMouseMove = function (e) {
|
264
|
+
var _a = this.props, _b = _a.asideMinWidth, asideMinWidth = _b === void 0 ? 160 : _b, _c = _a.asideMaxWidth, asideMaxWidth = _c === void 0 ? 350 : _c;
|
265
|
+
var dx = e.clientX - this.startX;
|
266
|
+
var mx = this.startWidth + dx;
|
267
|
+
var width = Math.min(Math.max(mx, asideMinWidth), asideMaxWidth);
|
268
|
+
this.codeWrap.style.cssText += "width: " + width + "px";
|
269
|
+
};
|
270
|
+
Page.prototype.handleResizeMouseUp = function () {
|
271
|
+
document.removeEventListener('mousemove', this.handleResizeMouseMove);
|
272
|
+
document.removeEventListener('mouseup', this.handleResizeMouseUp);
|
273
|
+
};
|
251
274
|
Page.prototype.openFeedback = function (dialog, ctx) {
|
252
275
|
var _this = this;
|
253
276
|
return new Promise(function (resolve) {
|
@@ -332,7 +355,7 @@ var Page = /** @class */ (function (_super) {
|
|
332
355
|
return header || right;
|
333
356
|
};
|
334
357
|
Page.prototype.render = function () {
|
335
|
-
var _a = this.props, className = _a.className, store = _a.store, body = _a.body, bodyClassName = _a.bodyClassName, render = _a.render, aside = _a.aside, asideClassName = _a.asideClassName, cx = _a.classnames, header = _a.header, showErrorMsg = _a.showErrorMsg, initApi = _a.initApi, regions = _a.regions, style = _a.style, data = _a.data, __ = _a.translate;
|
358
|
+
var _a = this.props, className = _a.className, store = _a.store, body = _a.body, bodyClassName = _a.bodyClassName, render = _a.render, aside = _a.aside, asideClassName = _a.asideClassName, cx = _a.classnames, header = _a.header, showErrorMsg = _a.showErrorMsg, initApi = _a.initApi, regions = _a.regions, style = _a.style, data = _a.data, asideResizor = _a.asideResizor, __ = _a.translate;
|
336
359
|
var subProps = {
|
337
360
|
onAction: this.handleAction,
|
338
361
|
onQuery: initApi ? this.handleQuery : undefined,
|
@@ -346,12 +369,14 @@ var Page = /** @class */ (function (_super) {
|
|
346
369
|
? (0, tpl_builtin_1.resolveVariable)(style, data) || {}
|
347
370
|
: (0, mapValues_1.default)(style, function (s) { return (0, tpl_builtin_1.resolveVariable)(s, data) || s; });
|
348
371
|
return (react_1.default.createElement("div", { className: cx("Page", hasAside ? "Page--withSidebar" : '', className), onClick: this.handleClick, style: styleVar },
|
349
|
-
hasAside ? (react_1.default.createElement("div", { className: cx("Page-aside",
|
350
|
-
|
351
|
-
|
352
|
-
|
353
|
-
|
354
|
-
|
372
|
+
hasAside ? (react_1.default.createElement("div", { className: cx("Page-aside", asideResizor ? 'relative' : 'Page-aside--withWidth', asideClassName) },
|
373
|
+
render('aside', aside || '', (0, tslib_1.__assign)((0, tslib_1.__assign)({}, subProps), (typeof aside === 'string'
|
374
|
+
? {
|
375
|
+
inline: false,
|
376
|
+
className: "Page-asideTplWrapper"
|
377
|
+
}
|
378
|
+
: null))),
|
379
|
+
asideResizor ? (react_1.default.createElement("div", { onMouseDown: this.handleResizeMouseDown, className: cx("Page-asideResizor") })) : null)) : null,
|
355
380
|
react_1.default.createElement("div", { className: cx('Page-content') },
|
356
381
|
react_1.default.createElement("div", { className: cx('Page-main') },
|
357
382
|
this.renderHeader(),
|
@@ -382,6 +407,7 @@ var Page = /** @class */ (function (_super) {
|
|
382
407
|
onQuery: initApi ? this.handleQuery : undefined
|
383
408
|
})));
|
384
409
|
};
|
410
|
+
var _a, _b;
|
385
411
|
Page.defaultProps = {
|
386
412
|
asideClassName: '',
|
387
413
|
bodyClassName: '',
|
@@ -408,6 +434,24 @@ var Page = /** @class */ (function (_super) {
|
|
408
434
|
'style',
|
409
435
|
'showErrorMsg'
|
410
436
|
];
|
437
|
+
(0, tslib_1.__decorate)([
|
438
|
+
helper_1.autobind,
|
439
|
+
(0, tslib_1.__metadata)("design:type", Function),
|
440
|
+
(0, tslib_1.__metadata)("design:paramtypes", [typeof (_a = typeof react_1.default !== "undefined" && react_1.default.MouseEvent) === "function" ? _a : Object]),
|
441
|
+
(0, tslib_1.__metadata)("design:returntype", void 0)
|
442
|
+
], Page.prototype, "handleResizeMouseDown", null);
|
443
|
+
(0, tslib_1.__decorate)([
|
444
|
+
helper_1.autobind,
|
445
|
+
(0, tslib_1.__metadata)("design:type", Function),
|
446
|
+
(0, tslib_1.__metadata)("design:paramtypes", [typeof (_b = typeof MouseEvent !== "undefined" && MouseEvent) === "function" ? _b : Object]),
|
447
|
+
(0, tslib_1.__metadata)("design:returntype", void 0)
|
448
|
+
], Page.prototype, "handleResizeMouseMove", null);
|
449
|
+
(0, tslib_1.__decorate)([
|
450
|
+
helper_1.autobind,
|
451
|
+
(0, tslib_1.__metadata)("design:type", Function),
|
452
|
+
(0, tslib_1.__metadata)("design:paramtypes", []),
|
453
|
+
(0, tslib_1.__metadata)("design:returntype", void 0)
|
454
|
+
], Page.prototype, "handleResizeMouseUp", null);
|
411
455
|
return Page;
|
412
456
|
}(react_1.default.Component));
|
413
457
|
exports.default = Page;
|
@@ -498,7 +542,7 @@ var PageRenderer = /** @class */ (function (_super) {
|
|
498
542
|
}
|
499
543
|
}, 300);
|
500
544
|
};
|
501
|
-
var
|
545
|
+
var _c;
|
502
546
|
PageRenderer.contextType = Scoped_1.ScopedContext;
|
503
547
|
PageRenderer = (0, tslib_1.__decorate)([
|
504
548
|
(0, factory_1.Renderer)({
|
@@ -506,7 +550,7 @@ var PageRenderer = /** @class */ (function (_super) {
|
|
506
550
|
storeType: service_1.ServiceStore.name,
|
507
551
|
isolateScope: true
|
508
552
|
}),
|
509
|
-
(0, tslib_1.__metadata)("design:paramtypes", [Object, typeof (
|
553
|
+
(0, tslib_1.__metadata)("design:paramtypes", [Object, typeof (_c = typeof Scoped_1.IScopedContext !== "undefined" && Scoped_1.IScopedContext) === "function" ? _c : Object])
|
510
554
|
], PageRenderer);
|
511
555
|
return PageRenderer;
|
512
556
|
}(Page));
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/renderers/Page.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 PropTypes from 'prop-types';\nimport {Renderer, RendererProps} from '../factory';\nimport {observer} from 'mobx-react';\nimport {ServiceStore, IServiceStore} from '../store/service';\nimport {\n Api,\n SchemaNode,\n Action,\n Location,\n ApiObject,\n FunctionPropertyNames\n} from '../types';\nimport {filter, evalExpression} from '../utils/tpl';\nimport {isVisible, autobind, bulkBindFunctions} from '../utils/helper';\nimport {ScopedContext, IScopedContext} from '../Scoped';\nimport Alert from '../components/Alert2';\nimport {isApiOutdated, isEffectiveApi} from '../utils/api';\nimport {Spinner} from '../components';\nimport {\n BaseSchema,\n SchemaCollection,\n SchemaClassName,\n SchemaDefaultData,\n SchemaApi,\n SchemaExpression,\n SchemaName,\n SchemaMessage\n} from '../Schema';\nimport {SchemaRemark} from './Remark';\nimport {onAction} from 'mobx-state-tree';\nimport mapValues from 'lodash/mapValues';\nimport {resolveVariable} from '../utils/tpl-builtin';\n\n/**\n * 样式属性名及值\n */\ninterface Declaration {\n [property: string]: string;\n}\n\n/**\n * css 定义\n */\ninterface CSSRule {\n [selector: string]: Declaration; // 定义\n}\n\n/**\n * amis Page 渲染器。详情请见:https://baidu.gitee.io/amis/docs/components/page\n */\nexport interface PageSchema extends BaseSchema {\n /**\n * 指定为 page 渲染器。\n */\n type: 'page';\n\n /**\n * 页面标题\n */\n title?: string;\n\n /**\n * 页面副标题\n */\n subTitle?: string;\n\n /**\n * 页面描述, 标题旁边会出现个小图标,放上去会显示这个属性配置的内容。\n */\n remark?: SchemaRemark;\n\n /**\n * 内容区域\n */\n body?: SchemaCollection;\n\n /**\n * 内容区 css 类名\n */\n bodyClassName?: SchemaClassName;\n\n /**\n * 边栏区域\n */\n aside?: SchemaCollection;\n\n /**\n * 边栏区 css 类名\n */\n asideClassName?: SchemaClassName;\n\n /**\n * 配置容器 className\n */\n className?: SchemaClassName;\n\n /**\n * 自定义页面级别样式表\n */\n css?: CSSRule;\n\n /**\n * 移动端下的样式表\n */\n mobileCSS?: CSSRule;\n\n /**\n * 页面级别的初始数据\n */\n data?: SchemaDefaultData;\n\n /**\n * 配置 header 容器 className\n */\n headerClassName?: SchemaClassName;\n\n /**\n * 页面初始化的时候,可以设置一个 API 让其取拉取,发送数据会携带当前 data 数据(包含地址栏参数),获取得数据会合并到 data 中,供组件内使用。\n */\n initApi?: SchemaApi;\n\n /**\n * 是否默认就拉取?\n */\n initFetch?: boolean;\n\n /**\n * 是否默认就拉取表达式\n */\n initFetchOn?: SchemaExpression;\n\n messages?: SchemaMessage;\n\n name?: SchemaName;\n\n /**\n * 页面顶部区域,当存在 title 时在右上角显示。\n */\n toolbar?: SchemaCollection;\n\n /**\n * 配置 toolbar 容器 className\n */\n toolbarClassName?: SchemaClassName;\n\n definitions?: any; // todo\n\n /**\n * 配置轮询间隔,配置后 initApi 将轮询加载。\n */\n interval?: number;\n\n /**\n * 是否要静默加载,也就是说不显示进度\n */\n silentPolling?: boolean;\n\n /**\n * 配置停止轮询的条件。\n */\n stopAutoRefreshWhen?: SchemaExpression;\n // primaryField?: string, // 指定主键的字段名,默认为 `id`\n\n /**\n * 是否显示错误信息,默认是显示的。\n */\n showErrorMsg?: boolean;\n\n /**\n * css 变量\n */\n cssVars?: any;\n\n /**\n * 默认不设置自动感觉内容来决定要不要展示这些区域\n * 如果配置了,以配置为主。\n */\n regions?: Array<'aside' | 'body' | 'toolbar' | 'header'>;\n\n /**\n * 自定义样式\n */\n style?: {\n [propName: string]: any;\n };\n}\n\nexport interface PageProps\n extends RendererProps,\n Omit<PageSchema, 'type' | 'className'> {\n data: any;\n store: IServiceStore;\n location?: Location;\n}\n\nexport default class Page extends React.Component<PageProps> {\n timer: ReturnType<typeof setTimeout>;\n mounted: boolean;\n style: HTMLStyleElement;\n varStyle: HTMLStyleElement;\n\n static defaultProps = {\n asideClassName: '',\n bodyClassName: '',\n headerClassName: '',\n initFetch: true,\n // primaryField: 'id',\n toolbarClassName: '',\n messages: {}\n };\n\n static propsList: Array<keyof PageProps> = [\n 'title',\n 'subTitle',\n 'initApi',\n 'initFetchOn',\n 'initFetch',\n 'headerClassName',\n 'bodyClassName',\n 'asideClassName',\n 'toolbarClassName',\n 'toolbar',\n 'body',\n 'aside',\n 'messages',\n 'style',\n 'showErrorMsg'\n ];\n\n constructor(props: PageProps) {\n super(props);\n\n // autobind 会让继承里面的 super 指向有问题,所以先这样!\n bulkBindFunctions<Page /*为毛 this 的类型自动识别不出来?*/>(this, [\n 'handleAction',\n 'handleChange',\n 'handleQuery',\n 'handleDialogConfirm',\n 'handleDialogClose',\n 'handleDrawerConfirm',\n 'handleDrawerClose',\n 'handleClick',\n 'reload',\n 'silentReload',\n 'initInterval'\n ]);\n\n this.style = document.createElement('style');\n this.style.setAttribute('data-page', '');\n document.getElementsByTagName('head')[0].appendChild(this.style);\n this.updateStyle();\n\n this.varStyle = document.createElement('style');\n this.style.setAttribute('data-vars', '');\n document.getElementsByTagName('head')[0].appendChild(this.varStyle);\n this.updateVarStyle();\n }\n\n /**\n * 构建 css\n */\n updateStyle() {\n if (this.props.css || this.props.mobileCSS) {\n this.style.innerHTML = `\n ${this.buildCSS(this.props.css)}\n\n @media (max-width: 768px) {\n ${this.buildCSS(this.props.mobileCSS)}\n }\n `;\n } else {\n this.style.innerHTML = '';\n }\n }\n\n buildCSS(cssRules?: CSSRule) {\n if (!cssRules) {\n return '';\n }\n let css = '';\n\n for (const selector in cssRules) {\n const declaration = cssRules[selector];\n let declarationStr = '';\n for (const property in declaration) {\n declarationStr += ` ${property}: ${declaration[property]};\\n`;\n }\n\n css += `\n ${selector} {\n ${declarationStr}\n }\n `;\n }\n return css;\n }\n\n /**\n * 构建用于 css 变量的内联样式\n */\n updateVarStyle() {\n const cssVars = this.props.cssVars;\n let cssVarsContent = '';\n if (cssVars) {\n for (const key in cssVars) {\n if (key.startsWith('--')) {\n if (key.indexOf(':') !== -1) {\n continue;\n }\n const value = cssVars[key];\n // 这是为了防止 xss,可能还有别的\n if (\n typeof value === 'string' &&\n (value.indexOf('expression(') !== -1 || value.indexOf(';') !== -1)\n ) {\n continue;\n }\n cssVarsContent += `${key}: ${value}; \\n`;\n }\n }\n this.varStyle.innerHTML = `\n :root {\n ${cssVarsContent}\n }\n `;\n }\n }\n\n componentDidMount() {\n const {initApi, initFetch, initFetchOn, store, messages} = this.props;\n\n this.mounted = true;\n\n if (isEffectiveApi(initApi, store.data, initFetch, initFetchOn)) {\n store\n .fetchInitData(initApi, store.data, {\n successMessage: messages && messages.fetchSuccess,\n errorMessage: messages && messages.fetchFailed\n })\n .then(this.initInterval);\n }\n }\n\n componentDidUpdate(prevProps: PageProps) {\n const props = this.props;\n const store = props.store;\n const initApi = props.initApi;\n\n if (\n // 前一次不构成条件,这次更新构成了条件,则需要重新拉取\n (props.initFetchOn && props.initFetch && !prevProps.initFetch) ||\n // 构成了条件,同时 url 里面有变量,且上次和这次还不一样,则需要重新拉取。\n (props.initFetch !== false &&\n isApiOutdated(prevProps.initApi, initApi, prevProps.data, props.data))\n ) {\n const messages = props.messages;\n isEffectiveApi(initApi, store.data) &&\n store\n .fetchData(initApi as Api, store.data, {\n successMessage: messages && messages.fetchSuccess,\n errorMessage: messages && messages.fetchFailed\n })\n .then(this.initInterval);\n } else if (\n JSON.stringify(props.css) !== JSON.stringify(prevProps.css) ||\n JSON.stringify(props.mobileCSS) !== JSON.stringify(prevProps.mobileCSS)\n ) {\n this.updateStyle();\n } else if (\n JSON.stringify(props.cssVars) !== JSON.stringify(prevProps.cssVars)\n ) {\n this.updateVarStyle();\n } else if (props.defaultData !== prevProps.defaultData) {\n store.reInitData(props.defaultData);\n }\n }\n\n componentWillUnmount() {\n this.mounted = false;\n clearTimeout(this.timer);\n if (this.style) {\n this.style.remove();\n }\n if (this.varStyle) {\n this.varStyle.remove();\n }\n }\n\n reloadTarget(target: string, data?: any) {\n // 会被覆写\n }\n\n handleAction(\n e: React.UIEvent<any> | void,\n action: Action,\n ctx: object,\n throwErrors: boolean = false,\n delegate?: IScopedContext\n ): any {\n const {env, store, messages, onAction} = this.props;\n\n if (action.actionType === 'dialog') {\n store.setCurrentAction(action);\n store.openDialog(ctx);\n } else if (action.actionType === 'drawer') {\n store.setCurrentAction(action);\n store.openDrawer(ctx);\n } else if (action.actionType === 'ajax') {\n store.setCurrentAction(action);\n return store\n .saveRemote(action.api as string, ctx, {\n successMessage:\n (action.messages && action.messages.success) ||\n (messages && messages.saveSuccess),\n errorMessage:\n (action.messages && action.messages.failed) ||\n (messages && messages.saveSuccess)\n })\n .then(async () => {\n if (action.feedback && isVisible(action.feedback, store.data)) {\n await this.openFeedback(action.feedback, store.data);\n }\n\n const redirect =\n action.redirect && filter(action.redirect, store.data);\n redirect && env.jumpTo(redirect, action);\n action.reload && this.reloadTarget(action.reload, store.data);\n })\n .catch(() => {});\n } else {\n return onAction(e, action, ctx, throwErrors, delegate || this.context);\n }\n }\n\n handleQuery(query: any) {\n this.receive(query);\n }\n\n handleDialogConfirm(values: object[], action: Action, ...args: Array<any>) {\n const {store} = this.props;\n\n if (action.mergeData && values.length === 1 && values[0]) {\n store.updateData(values[0]);\n }\n\n const dialog = store.action.dialog as any;\n if (\n dialog &&\n dialog.onConfirm &&\n dialog.onConfirm(values, action, ...args) === false\n ) {\n return;\n }\n\n store.closeDialog();\n }\n\n handleDialogClose() {\n const {store} = this.props;\n store.closeDialog();\n }\n\n handleDrawerConfirm(values: object[], action: Action, ...args: Array<any>) {\n const {store} = this.props;\n\n if (action.mergeData && values.length === 1 && values[0]) {\n store.updateData(values[0]);\n }\n\n const dialog = store.action.dialog as any;\n if (\n dialog &&\n dialog.onConfirm &&\n dialog.onConfirm(values, action, ...args) === false\n ) {\n return;\n }\n\n store.closeDrawer();\n }\n\n handleDrawerClose() {\n const {store} = this.props;\n store.closeDrawer();\n }\n\n handleClick(e: any) {\n const target: HTMLElement = e.target as HTMLElement;\n const {env} = this.props;\n const link =\n target.tagName === 'A' && target.hasAttribute('data-link')\n ? target.getAttribute('data-link')\n : target.closest('a[data-link]')?.getAttribute('data-link');\n\n if (env && link) {\n env.jumpTo(link);\n e.preventDefault();\n }\n }\n\n openFeedback(dialog: any, ctx: any) {\n return new Promise(resolve => {\n const {store} = this.props;\n store.setCurrentAction({\n type: 'button',\n actionType: 'dialog',\n dialog: dialog\n });\n store.openDialog(ctx, undefined, confirmed => {\n resolve(confirmed);\n });\n });\n }\n\n reload(subpath?: any, query?: any, ctx?: any, silent?: boolean) {\n if (query) {\n return this.receive(query);\n }\n\n const {store, initApi} = this.props;\n\n clearTimeout(this.timer);\n isEffectiveApi(initApi, store.data) &&\n store\n .fetchData(initApi, store.data, {\n silent\n })\n .then(this.initInterval);\n }\n\n receive(values: object) {\n const {store} = this.props;\n\n store.updateData(values);\n this.reload();\n }\n\n silentReload(target?: string, query?: any) {\n this.reload(query, undefined, undefined, true);\n }\n\n initInterval(value: any) {\n const {interval, silentPolling, stopAutoRefreshWhen, data} = this.props;\n\n interval &&\n this.mounted &&\n (!stopAutoRefreshWhen || !evalExpression(stopAutoRefreshWhen, data)) &&\n (this.timer = setTimeout(\n silentPolling ? this.silentReload : this.reload,\n Math.max(interval, 1000)\n ));\n return value;\n }\n\n handleChange(\n value: any,\n name: string,\n submit?: boolean,\n changePristine?: boolean\n ) {\n const {store, onChange} = this.props;\n\n if (typeof name === 'string' && name) {\n store.changeValue(name, value, changePristine);\n }\n\n onChange?.apply(null, arguments);\n }\n\n renderHeader() {\n const {\n title,\n subTitle,\n remark,\n remarkPlacement,\n headerClassName,\n toolbarClassName,\n toolbar,\n render,\n store,\n initApi,\n env,\n classnames: cx,\n regions,\n translate: __\n } = this.props;\n\n const subProps = {\n onAction: this.handleAction,\n onQuery: initApi ? this.handleQuery : undefined\n };\n let header, right;\n\n if (\n Array.isArray(regions) ? ~regions.indexOf('header') : title || subTitle\n ) {\n header = (\n <div className={cx(`Page-header`, headerClassName)}>\n {title ? (\n <h2 className={cx('Page-title')}>\n {render('title', title, subProps)}\n {remark\n ? render('remark', {\n type: 'remark',\n tooltip: remark,\n placement: remarkPlacement || 'bottom',\n container:\n env && env.getModalContainer\n ? env.getModalContainer\n : undefined\n })\n : null}\n </h2>\n ) : null}\n {subTitle && (\n <small className={cx('Page-subTitle')}>\n {render('subTitle', subTitle, subProps)}\n </small>\n )}\n </div>\n );\n }\n\n if (Array.isArray(regions) ? ~regions.indexOf('toolbar') : toolbar) {\n right = (\n <div className={cx(`Page-toolbar`, toolbarClassName)}>\n {render('toolbar', toolbar || '', subProps)}\n </div>\n );\n }\n\n if (header && right) {\n return (\n <div className={cx('Page-headerRow')}>\n {header}\n {right}\n </div>\n );\n }\n\n return header || right;\n }\n\n render() {\n const {\n className,\n store,\n body,\n bodyClassName,\n render,\n aside,\n asideClassName,\n classnames: cx,\n header,\n showErrorMsg,\n initApi,\n regions,\n style,\n data,\n translate: __\n } = this.props;\n\n const subProps = {\n onAction: this.handleAction,\n onQuery: initApi ? this.handleQuery : undefined,\n onChange: this.handleChange,\n pageLoading: store.loading\n };\n\n const hasAside = Array.isArray(regions)\n ? ~regions.indexOf('aside')\n : aside && (!Array.isArray(aside) || aside.length);\n\n let styleVar =\n typeof style === 'string'\n ? resolveVariable(style, data) || {}\n : mapValues(style, s => resolveVariable(s, data) || s);\n\n return (\n <div\n className={cx(`Page`, hasAside ? `Page--withSidebar` : '', className)}\n onClick={this.handleClick}\n style={styleVar}\n >\n {hasAside ? (\n <div className={cx(`Page-aside`, asideClassName)}>\n {render('aside', aside || '', {\n ...subProps,\n ...(typeof aside === 'string'\n ? {\n inline: false,\n className: `Page-asideTplWrapper`\n }\n : null)\n })}\n </div>\n ) : null}\n\n <div className={cx('Page-content')}>\n <div className={cx('Page-main')}>\n {this.renderHeader()}\n <div className={cx(`Page-body`, bodyClassName)}>\n <Spinner size=\"lg\" overlay key=\"info\" show={store.loading} />\n\n {store.error && showErrorMsg !== false ? (\n <Alert\n level=\"danger\"\n showCloseButton\n onClose={store.clearMessage}\n >\n {store.msg}\n </Alert>\n ) : null}\n\n {(Array.isArray(regions) ? ~regions.indexOf('body') : body)\n ? render('body', body || '', subProps)\n : null}\n </div>\n </div>\n </div>\n\n {render(\n 'dialog',\n {\n ...((store.action as Action) &&\n ((store.action as Action).dialog as object)),\n type: 'dialog'\n },\n {\n key: 'dialog',\n data: store.dialogData,\n onConfirm: this.handleDialogConfirm,\n onClose: this.handleDialogClose,\n show: store.dialogOpen,\n onAction: this.handleAction,\n onQuery: initApi ? this.handleQuery : undefined\n }\n )}\n\n {render(\n 'drawer',\n {\n ...((store.action as Action) &&\n ((store.action as Action).drawer as object)),\n type: 'drawer'\n },\n {\n key: 'drawer',\n data: store.drawerData,\n onConfirm: this.handleDrawerConfirm,\n onClose: this.handleDrawerClose,\n show: store.drawerOpen,\n onAction: this.handleAction,\n onQuery: initApi ? this.handleQuery : undefined\n }\n )}\n </div>\n );\n }\n}\n\n@Renderer({\n type: 'page',\n storeType: ServiceStore.name,\n isolateScope: true\n})\nexport class PageRenderer extends Page {\n static contextType = ScopedContext;\n\n constructor(props: PageProps, context: IScopedContext) {\n super(props);\n\n const scoped = context;\n scoped.registerComponent(this);\n }\n\n componentWillUnmount() {\n const scoped = this.context as IScopedContext;\n scoped.unRegisterComponent(this);\n super.componentWillUnmount();\n }\n\n reloadTarget(target: string, data?: any) {\n const scoped = this.context as IScopedContext;\n scoped.reload(target, data);\n }\n\n handleAction(\n e: React.UIEvent<any>,\n action: Action,\n ctx: object,\n throwErrors: boolean = false,\n delegate?: IScopedContext\n ) {\n const scoped = this.context as IScopedContext;\n\n if (action.actionType === 'reload') {\n action.target && scoped.reload(action.target, ctx);\n } else if (action.target) {\n action.target.split(',').forEach(name => {\n let target = scoped.getComponentByName(name);\n target &&\n target.doAction &&\n target.doAction(\n {\n ...action,\n target: undefined\n },\n ctx\n );\n });\n } else {\n super.handleAction(e, action, ctx, throwErrors, delegate);\n\n if (\n action.reload &&\n ~['url', 'link', 'jump'].indexOf(action.actionType!)\n ) {\n const scoped = delegate || (this.context as IScopedContext);\n scoped.reload(action.reload, ctx);\n }\n }\n }\n\n handleDialogConfirm(values: object[], action: Action, ...rest: Array<any>) {\n super.handleDialogConfirm(values, action, ...rest);\n const scoped = this.context;\n const store = this.props.store;\n const dialogAction = store.action as Action;\n const reload = action.reload ?? dialogAction.reload;\n\n if (reload) {\n scoped.reload(reload, store.data);\n } else {\n // 没有设置,则自动让页面中 crud 刷新。\n scoped\n .getComponents()\n .filter((item: any) => item.props.type === 'crud')\n .forEach((item: any) => item.reload && item.reload());\n }\n }\n\n handleDrawerConfirm(values: object[], action: Action, ...rest: Array<any>) {\n super.handleDrawerConfirm(values, action);\n const scoped = this.context as IScopedContext;\n const store = this.props.store;\n const drawerAction = store.action as Action;\n const reload = action.reload ?? drawerAction.reload;\n\n // 稍等会,等动画结束。\n setTimeout(() => {\n if (reload) {\n scoped.reload(reload, store.data);\n } else {\n // 没有设置,则自动让页面中 crud 刷新。\n scoped\n .getComponents()\n .filter((item: any) => item.props.type === 'crud')\n .forEach((item: any) => item.reload && item.reload());\n }\n }, 300);\n }\n}\n"
|
11
|
+
"import React from 'react';\nimport PropTypes from 'prop-types';\nimport {Renderer, RendererProps} from '../factory';\nimport {observer} from 'mobx-react';\nimport {ServiceStore, IServiceStore} from '../store/service';\nimport {\n Api,\n SchemaNode,\n Action,\n Location,\n ApiObject,\n FunctionPropertyNames\n} from '../types';\nimport {filter, evalExpression} from '../utils/tpl';\nimport {isVisible, autobind, bulkBindFunctions} from '../utils/helper';\nimport {ScopedContext, IScopedContext} from '../Scoped';\nimport Alert from '../components/Alert2';\nimport {isApiOutdated, isEffectiveApi} from '../utils/api';\nimport {Spinner} from '../components';\nimport {\n BaseSchema,\n SchemaCollection,\n SchemaClassName,\n SchemaDefaultData,\n SchemaApi,\n SchemaExpression,\n SchemaName,\n SchemaMessage\n} from '../Schema';\nimport {SchemaRemark} from './Remark';\nimport {onAction} from 'mobx-state-tree';\nimport mapValues from 'lodash/mapValues';\nimport {resolveVariable} from '../utils/tpl-builtin';\n\n/**\n * 样式属性名及值\n */\ninterface Declaration {\n [property: string]: string;\n}\n\n/**\n * css 定义\n */\ninterface CSSRule {\n [selector: string]: Declaration; // 定义\n}\n\n/**\n * amis Page 渲染器。详情请见:https://baidu.gitee.io/amis/docs/components/page\n */\nexport interface PageSchema extends BaseSchema {\n /**\n * 指定为 page 渲染器。\n */\n type: 'page';\n\n /**\n * 页面标题\n */\n title?: string;\n\n /**\n * 页面副标题\n */\n subTitle?: string;\n\n /**\n * 页面描述, 标题旁边会出现个小图标,放上去会显示这个属性配置的内容。\n */\n remark?: SchemaRemark;\n\n /**\n * 内容区域\n */\n body?: SchemaCollection;\n\n /**\n * 内容区 css 类名\n */\n bodyClassName?: SchemaClassName;\n\n /**\n * 边栏区域\n */\n aside?: SchemaCollection;\n\n /**\n * 边栏是否允许拖动\n */\n asideResizor?: boolean;\n\n /**\n * 边栏最小宽度\n */\n asideMinWidth?: number;\n\n /**\n * 边栏最小宽度\n */\n asideMaxWidth?: number;\n\n /**\n * 边栏区 css 类名\n */\n asideClassName?: SchemaClassName;\n\n /**\n * 配置容器 className\n */\n className?: SchemaClassName;\n\n /**\n * 自定义页面级别样式表\n */\n css?: CSSRule;\n\n /**\n * 移动端下的样式表\n */\n mobileCSS?: CSSRule;\n\n /**\n * 页面级别的初始数据\n */\n data?: SchemaDefaultData;\n\n /**\n * 配置 header 容器 className\n */\n headerClassName?: SchemaClassName;\n\n /**\n * 页面初始化的时候,可以设置一个 API 让其取拉取,发送数据会携带当前 data 数据(包含地址栏参数),获取得数据会合并到 data 中,供组件内使用。\n */\n initApi?: SchemaApi;\n\n /**\n * 是否默认就拉取?\n */\n initFetch?: boolean;\n\n /**\n * 是否默认就拉取表达式\n */\n initFetchOn?: SchemaExpression;\n\n messages?: SchemaMessage;\n\n name?: SchemaName;\n\n /**\n * 页面顶部区域,当存在 title 时在右上角显示。\n */\n toolbar?: SchemaCollection;\n\n /**\n * 配置 toolbar 容器 className\n */\n toolbarClassName?: SchemaClassName;\n\n definitions?: any; // todo\n\n /**\n * 配置轮询间隔,配置后 initApi 将轮询加载。\n */\n interval?: number;\n\n /**\n * 是否要静默加载,也就是说不显示进度\n */\n silentPolling?: boolean;\n\n /**\n * 配置停止轮询的条件。\n */\n stopAutoRefreshWhen?: SchemaExpression;\n // primaryField?: string, // 指定主键的字段名,默认为 `id`\n\n /**\n * 是否显示错误信息,默认是显示的。\n */\n showErrorMsg?: boolean;\n\n /**\n * css 变量\n */\n cssVars?: any;\n\n /**\n * 默认不设置自动感觉内容来决定要不要展示这些区域\n * 如果配置了,以配置为主。\n */\n regions?: Array<'aside' | 'body' | 'toolbar' | 'header'>;\n\n /**\n * 自定义样式\n */\n style?: {\n [propName: string]: any;\n };\n}\n\nexport interface PageProps\n extends RendererProps,\n Omit<PageSchema, 'type' | 'className'> {\n data: any;\n store: IServiceStore;\n location?: Location;\n}\n\nexport default class Page extends React.Component<PageProps> {\n timer: ReturnType<typeof setTimeout>;\n mounted: boolean;\n style: HTMLStyleElement;\n varStyle: HTMLStyleElement;\n startX: number;\n startWidth: number;\n codeWrap: HTMLElement;\n\n static defaultProps = {\n asideClassName: '',\n bodyClassName: '',\n headerClassName: '',\n initFetch: true,\n // primaryField: 'id',\n toolbarClassName: '',\n messages: {}\n };\n\n static propsList: Array<keyof PageProps> = [\n 'title',\n 'subTitle',\n 'initApi',\n 'initFetchOn',\n 'initFetch',\n 'headerClassName',\n 'bodyClassName',\n 'asideClassName',\n 'toolbarClassName',\n 'toolbar',\n 'body',\n 'aside',\n 'messages',\n 'style',\n 'showErrorMsg'\n ];\n\n constructor(props: PageProps) {\n super(props);\n\n // autobind 会让继承里面的 super 指向有问题,所以先这样!\n bulkBindFunctions<Page /*为毛 this 的类型自动识别不出来?*/>(this, [\n 'handleAction',\n 'handleChange',\n 'handleQuery',\n 'handleDialogConfirm',\n 'handleDialogClose',\n 'handleDrawerConfirm',\n 'handleDrawerClose',\n 'handleClick',\n 'reload',\n 'silentReload',\n 'initInterval'\n ]);\n\n this.style = document.createElement('style');\n this.style.setAttribute('data-page', '');\n document.getElementsByTagName('head')[0].appendChild(this.style);\n this.updateStyle();\n\n this.varStyle = document.createElement('style');\n this.style.setAttribute('data-vars', '');\n document.getElementsByTagName('head')[0].appendChild(this.varStyle);\n this.updateVarStyle();\n }\n\n /**\n * 构建 css\n */\n updateStyle() {\n if (this.props.css || this.props.mobileCSS) {\n this.style.innerHTML = `\n ${this.buildCSS(this.props.css)}\n\n @media (max-width: 768px) {\n ${this.buildCSS(this.props.mobileCSS)}\n }\n `;\n } else {\n this.style.innerHTML = '';\n }\n }\n\n buildCSS(cssRules?: CSSRule) {\n if (!cssRules) {\n return '';\n }\n let css = '';\n\n for (const selector in cssRules) {\n const declaration = cssRules[selector];\n let declarationStr = '';\n for (const property in declaration) {\n declarationStr += ` ${property}: ${declaration[property]};\\n`;\n }\n\n css += `\n ${selector} {\n ${declarationStr}\n }\n `;\n }\n return css;\n }\n\n /**\n * 构建用于 css 变量的内联样式\n */\n updateVarStyle() {\n const cssVars = this.props.cssVars;\n let cssVarsContent = '';\n if (cssVars) {\n for (const key in cssVars) {\n if (key.startsWith('--')) {\n if (key.indexOf(':') !== -1) {\n continue;\n }\n const value = cssVars[key];\n // 这是为了防止 xss,可能还有别的\n if (\n typeof value === 'string' &&\n (value.indexOf('expression(') !== -1 || value.indexOf(';') !== -1)\n ) {\n continue;\n }\n cssVarsContent += `${key}: ${value}; \\n`;\n }\n }\n this.varStyle.innerHTML = `\n :root {\n ${cssVarsContent}\n }\n `;\n }\n }\n\n componentDidMount() {\n const {initApi, initFetch, initFetchOn, store, messages} = this.props;\n\n this.mounted = true;\n\n if (isEffectiveApi(initApi, store.data, initFetch, initFetchOn)) {\n store\n .fetchInitData(initApi, store.data, {\n successMessage: messages && messages.fetchSuccess,\n errorMessage: messages && messages.fetchFailed\n })\n .then(this.initInterval);\n }\n }\n\n componentDidUpdate(prevProps: PageProps) {\n const props = this.props;\n const store = props.store;\n const initApi = props.initApi;\n\n if (\n // 前一次不构成条件,这次更新构成了条件,则需要重新拉取\n (props.initFetchOn && props.initFetch && !prevProps.initFetch) ||\n // 构成了条件,同时 url 里面有变量,且上次和这次还不一样,则需要重新拉取。\n (props.initFetch !== false &&\n isApiOutdated(prevProps.initApi, initApi, prevProps.data, props.data))\n ) {\n const messages = props.messages;\n isEffectiveApi(initApi, store.data) &&\n store\n .fetchData(initApi as Api, store.data, {\n successMessage: messages && messages.fetchSuccess,\n errorMessage: messages && messages.fetchFailed\n })\n .then(this.initInterval);\n } else if (\n JSON.stringify(props.css) !== JSON.stringify(prevProps.css) ||\n JSON.stringify(props.mobileCSS) !== JSON.stringify(prevProps.mobileCSS)\n ) {\n this.updateStyle();\n } else if (\n JSON.stringify(props.cssVars) !== JSON.stringify(prevProps.cssVars)\n ) {\n this.updateVarStyle();\n } else if (props.defaultData !== prevProps.defaultData) {\n store.reInitData(props.defaultData);\n }\n }\n\n componentWillUnmount() {\n this.mounted = false;\n clearTimeout(this.timer);\n if (this.style) {\n this.style.remove();\n }\n if (this.varStyle) {\n this.varStyle.remove();\n }\n }\n\n reloadTarget(target: string, data?: any) {\n // 会被覆写\n }\n\n handleAction(\n e: React.UIEvent<any> | void,\n action: Action,\n ctx: object,\n throwErrors: boolean = false,\n delegate?: IScopedContext\n ): any {\n const {env, store, messages, onAction} = this.props;\n\n if (action.actionType === 'dialog') {\n store.setCurrentAction(action);\n store.openDialog(ctx);\n } else if (action.actionType === 'drawer') {\n store.setCurrentAction(action);\n store.openDrawer(ctx);\n } else if (action.actionType === 'ajax') {\n store.setCurrentAction(action);\n return store\n .saveRemote(action.api as string, ctx, {\n successMessage:\n (action.messages && action.messages.success) ||\n (messages && messages.saveSuccess),\n errorMessage:\n (action.messages && action.messages.failed) ||\n (messages && messages.saveSuccess)\n })\n .then(async () => {\n if (action.feedback && isVisible(action.feedback, store.data)) {\n await this.openFeedback(action.feedback, store.data);\n }\n\n const redirect =\n action.redirect && filter(action.redirect, store.data);\n redirect && env.jumpTo(redirect, action);\n action.reload && this.reloadTarget(action.reload, store.data);\n })\n .catch(() => {});\n } else {\n return onAction(e, action, ctx, throwErrors, delegate || this.context);\n }\n }\n\n handleQuery(query: any) {\n this.receive(query);\n }\n\n handleDialogConfirm(values: object[], action: Action, ...args: Array<any>) {\n const {store} = this.props;\n\n if (action.mergeData && values.length === 1 && values[0]) {\n store.updateData(values[0]);\n }\n\n const dialog = store.action.dialog as any;\n if (\n dialog &&\n dialog.onConfirm &&\n dialog.onConfirm(values, action, ...args) === false\n ) {\n return;\n }\n\n store.closeDialog();\n }\n\n handleDialogClose() {\n const {store} = this.props;\n store.closeDialog();\n }\n\n handleDrawerConfirm(values: object[], action: Action, ...args: Array<any>) {\n const {store} = this.props;\n\n if (action.mergeData && values.length === 1 && values[0]) {\n store.updateData(values[0]);\n }\n\n const dialog = store.action.dialog as any;\n if (\n dialog &&\n dialog.onConfirm &&\n dialog.onConfirm(values, action, ...args) === false\n ) {\n return;\n }\n\n store.closeDrawer();\n }\n\n handleDrawerClose() {\n const {store} = this.props;\n store.closeDrawer();\n }\n\n handleClick(e: any) {\n const target: HTMLElement = e.target as HTMLElement;\n const {env} = this.props;\n const link =\n target.tagName === 'A' && target.hasAttribute('data-link')\n ? target.getAttribute('data-link')\n : target.closest('a[data-link]')?.getAttribute('data-link');\n\n if (env && link) {\n env.jumpTo(link);\n e.preventDefault();\n }\n }\n\n @autobind\n handleResizeMouseDown(e: React.MouseEvent) {\n // todo 可能 ie 不正确\n let isRightMB = e.nativeEvent.which == 3;\n\n if (isRightMB) {\n return;\n }\n\n this.codeWrap = e.currentTarget.parentElement as HTMLElement;\n document.addEventListener('mousemove', this.handleResizeMouseMove);\n document.addEventListener('mouseup', this.handleResizeMouseUp);\n this.startX = e.clientX;\n this.startWidth = this.codeWrap.offsetWidth;\n }\n\n @autobind\n handleResizeMouseMove(e: MouseEvent) {\n const {asideMinWidth = 160, asideMaxWidth = 350} = this.props;\n const dx = e.clientX - this.startX;\n const mx = this.startWidth + dx;\n const width = Math.min(Math.max(mx, asideMinWidth), asideMaxWidth);\n this.codeWrap.style.cssText += `width: ${width}px`;\n }\n\n @autobind\n handleResizeMouseUp() {\n document.removeEventListener('mousemove', this.handleResizeMouseMove);\n document.removeEventListener('mouseup', this.handleResizeMouseUp);\n }\n\n openFeedback(dialog: any, ctx: any) {\n return new Promise(resolve => {\n const {store} = this.props;\n store.setCurrentAction({\n type: 'button',\n actionType: 'dialog',\n dialog: dialog\n });\n store.openDialog(ctx, undefined, confirmed => {\n resolve(confirmed);\n });\n });\n }\n\n reload(subpath?: any, query?: any, ctx?: any, silent?: boolean) {\n if (query) {\n return this.receive(query);\n }\n\n const {store, initApi} = this.props;\n\n clearTimeout(this.timer);\n isEffectiveApi(initApi, store.data) &&\n store\n .fetchData(initApi, store.data, {\n silent\n })\n .then(this.initInterval);\n }\n\n receive(values: object) {\n const {store} = this.props;\n\n store.updateData(values);\n this.reload();\n }\n\n silentReload(target?: string, query?: any) {\n this.reload(query, undefined, undefined, true);\n }\n\n initInterval(value: any) {\n const {interval, silentPolling, stopAutoRefreshWhen, data} = this.props;\n\n interval &&\n this.mounted &&\n (!stopAutoRefreshWhen || !evalExpression(stopAutoRefreshWhen, data)) &&\n (this.timer = setTimeout(\n silentPolling ? this.silentReload : this.reload,\n Math.max(interval, 1000)\n ));\n return value;\n }\n\n handleChange(\n value: any,\n name: string,\n submit?: boolean,\n changePristine?: boolean\n ) {\n const {store, onChange} = this.props;\n\n if (typeof name === 'string' && name) {\n store.changeValue(name, value, changePristine);\n }\n\n onChange?.apply(null, arguments);\n }\n\n renderHeader() {\n const {\n title,\n subTitle,\n remark,\n remarkPlacement,\n headerClassName,\n toolbarClassName,\n toolbar,\n render,\n store,\n initApi,\n env,\n classnames: cx,\n regions,\n translate: __\n } = this.props;\n\n const subProps = {\n onAction: this.handleAction,\n onQuery: initApi ? this.handleQuery : undefined\n };\n let header, right;\n\n if (\n Array.isArray(regions) ? ~regions.indexOf('header') : title || subTitle\n ) {\n header = (\n <div className={cx(`Page-header`, headerClassName)}>\n {title ? (\n <h2 className={cx('Page-title')}>\n {render('title', title, subProps)}\n {remark\n ? render('remark', {\n type: 'remark',\n tooltip: remark,\n placement: remarkPlacement || 'bottom',\n container:\n env && env.getModalContainer\n ? env.getModalContainer\n : undefined\n })\n : null}\n </h2>\n ) : null}\n {subTitle && (\n <small className={cx('Page-subTitle')}>\n {render('subTitle', subTitle, subProps)}\n </small>\n )}\n </div>\n );\n }\n\n if (Array.isArray(regions) ? ~regions.indexOf('toolbar') : toolbar) {\n right = (\n <div className={cx(`Page-toolbar`, toolbarClassName)}>\n {render('toolbar', toolbar || '', subProps)}\n </div>\n );\n }\n\n if (header && right) {\n return (\n <div className={cx('Page-headerRow')}>\n {header}\n {right}\n </div>\n );\n }\n\n return header || right;\n }\n\n render() {\n const {\n className,\n store,\n body,\n bodyClassName,\n render,\n aside,\n asideClassName,\n classnames: cx,\n header,\n showErrorMsg,\n initApi,\n regions,\n style,\n data,\n asideResizor,\n translate: __\n } = this.props;\n\n const subProps = {\n onAction: this.handleAction,\n onQuery: initApi ? this.handleQuery : undefined,\n onChange: this.handleChange,\n pageLoading: store.loading\n };\n\n const hasAside = Array.isArray(regions)\n ? ~regions.indexOf('aside')\n : aside && (!Array.isArray(aside) || aside.length);\n\n let styleVar =\n typeof style === 'string'\n ? resolveVariable(style, data) || {}\n : mapValues(style, s => resolveVariable(s, data) || s);\n\n return (\n <div\n className={cx(`Page`, hasAside ? `Page--withSidebar` : '', className)}\n onClick={this.handleClick}\n style={styleVar}\n >\n {hasAside ? (\n <div className={cx(\n `Page-aside`,\n asideResizor ? 'relative' : 'Page-aside--withWidth',\n asideClassName\n )}>\n {render('aside', aside || '', {\n ...subProps,\n ...(typeof aside === 'string'\n ? {\n inline: false,\n className: `Page-asideTplWrapper`\n }\n : null)\n })}\n {asideResizor ? (\n <div\n onMouseDown={this.handleResizeMouseDown}\n className={cx(`Page-asideResizor`)}\n ></div>\n ) : null}\n \n </div>\n ) : null}\n\n <div className={cx('Page-content')}>\n <div className={cx('Page-main')}>\n {this.renderHeader()}\n <div className={cx(`Page-body`, bodyClassName)}>\n <Spinner size=\"lg\" overlay key=\"info\" show={store.loading} />\n\n {store.error && showErrorMsg !== false ? (\n <Alert\n level=\"danger\"\n showCloseButton\n onClose={store.clearMessage}\n >\n {store.msg}\n </Alert>\n ) : null}\n\n {(Array.isArray(regions) ? ~regions.indexOf('body') : body)\n ? render('body', body || '', subProps)\n : null}\n </div>\n </div>\n </div>\n\n {render(\n 'dialog',\n {\n ...((store.action as Action) &&\n ((store.action as Action).dialog as object)),\n type: 'dialog'\n },\n {\n key: 'dialog',\n data: store.dialogData,\n onConfirm: this.handleDialogConfirm,\n onClose: this.handleDialogClose,\n show: store.dialogOpen,\n onAction: this.handleAction,\n onQuery: initApi ? this.handleQuery : undefined\n }\n )}\n\n {render(\n 'drawer',\n {\n ...((store.action as Action) &&\n ((store.action as Action).drawer as object)),\n type: 'drawer'\n },\n {\n key: 'drawer',\n data: store.drawerData,\n onConfirm: this.handleDrawerConfirm,\n onClose: this.handleDrawerClose,\n show: store.drawerOpen,\n onAction: this.handleAction,\n onQuery: initApi ? this.handleQuery : undefined\n }\n )}\n </div>\n );\n }\n}\n\n@Renderer({\n type: 'page',\n storeType: ServiceStore.name,\n isolateScope: true\n})\nexport class PageRenderer extends Page {\n static contextType = ScopedContext;\n\n constructor(props: PageProps, context: IScopedContext) {\n super(props);\n\n const scoped = context;\n scoped.registerComponent(this);\n }\n\n componentWillUnmount() {\n const scoped = this.context as IScopedContext;\n scoped.unRegisterComponent(this);\n super.componentWillUnmount();\n }\n\n reloadTarget(target: string, data?: any) {\n const scoped = this.context as IScopedContext;\n scoped.reload(target, data);\n }\n\n handleAction(\n e: React.UIEvent<any>,\n action: Action,\n ctx: object,\n throwErrors: boolean = false,\n delegate?: IScopedContext\n ) {\n const scoped = this.context as IScopedContext;\n\n if (action.actionType === 'reload') {\n action.target && scoped.reload(action.target, ctx);\n } else if (action.target) {\n action.target.split(',').forEach(name => {\n let target = scoped.getComponentByName(name);\n target &&\n target.doAction &&\n target.doAction(\n {\n ...action,\n target: undefined\n },\n ctx\n );\n });\n } else {\n super.handleAction(e, action, ctx, throwErrors, delegate);\n\n if (\n action.reload &&\n ~['url', 'link', 'jump'].indexOf(action.actionType!)\n ) {\n const scoped = delegate || (this.context as IScopedContext);\n scoped.reload(action.reload, ctx);\n }\n }\n }\n\n handleDialogConfirm(values: object[], action: Action, ...rest: Array<any>) {\n super.handleDialogConfirm(values, action, ...rest);\n const scoped = this.context;\n const store = this.props.store;\n const dialogAction = store.action as Action;\n const reload = action.reload ?? dialogAction.reload;\n\n if (reload) {\n scoped.reload(reload, store.data);\n } else {\n // 没有设置,则自动让页面中 crud 刷新。\n scoped\n .getComponents()\n .filter((item: any) => item.props.type === 'crud')\n .forEach((item: any) => item.reload && item.reload());\n }\n }\n\n handleDrawerConfirm(values: object[], action: Action, ...rest: Array<any>) {\n super.handleDrawerConfirm(values, action);\n const scoped = this.context as IScopedContext;\n const store = this.props.store;\n const drawerAction = store.action as Action;\n const reload = action.reload ?? drawerAction.reload;\n\n // 稍等会,等动画结束。\n setTimeout(() => {\n if (reload) {\n scoped.reload(reload, store.data);\n } else {\n // 没有设置,则自动让页面中 crud 刷新。\n scoped\n .getComponents()\n .filter((item: any) => item.props.type === 'crud')\n .forEach((item: any) => item.reload && item.reload());\n }\n }, 300);\n }\n}\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -0,0 +1,125 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { RendererProps } from '../factory';
|
3
|
+
import { SchemaTpl, SchemaClassName, BaseSchema, SchemaCollection, SchemaIcon } from '../Schema';
|
4
|
+
import { ActionSchema } from './Action';
|
5
|
+
/**
|
6
|
+
* 栏目容器渲染器。
|
7
|
+
* 文档:https://baidu.gitee.io/amis/docs/components/portlet
|
8
|
+
*/
|
9
|
+
export interface PortletTabSchema extends Omit<BaseSchema, 'type'> {
|
10
|
+
/**
|
11
|
+
* Tab 标题
|
12
|
+
*/
|
13
|
+
title?: string;
|
14
|
+
/**
|
15
|
+
* 内容
|
16
|
+
* @deprecated 用 body 属性
|
17
|
+
*/
|
18
|
+
tab?: SchemaCollection;
|
19
|
+
/**
|
20
|
+
* 可以在右侧配置点其他功能按钮,随着tab切换而切换
|
21
|
+
*/
|
22
|
+
toolbar?: Array<ActionSchema>;
|
23
|
+
/**
|
24
|
+
* 内容
|
25
|
+
*/
|
26
|
+
body?: SchemaCollection;
|
27
|
+
/**
|
28
|
+
* 按钮图标
|
29
|
+
*/
|
30
|
+
icon?: SchemaIcon;
|
31
|
+
iconPosition?: 'left' | 'right';
|
32
|
+
/**
|
33
|
+
* 设置以后内容每次都会重新渲染
|
34
|
+
*/
|
35
|
+
reload?: boolean;
|
36
|
+
/**
|
37
|
+
* 点开时才加载卡片内容
|
38
|
+
*/
|
39
|
+
mountOnEnter?: boolean;
|
40
|
+
/**
|
41
|
+
* 卡片隐藏就销毁卡片节点。
|
42
|
+
*/
|
43
|
+
unmountOnExit?: boolean;
|
44
|
+
}
|
45
|
+
export interface PortletSchema extends Omit<BaseSchema, 'type'> {
|
46
|
+
/**
|
47
|
+
* 指定为 portlet 类型
|
48
|
+
*/
|
49
|
+
type: 'portlet';
|
50
|
+
tabs: Array<PortletTabSchema>;
|
51
|
+
/**
|
52
|
+
* 关联已有数据,选项卡直接根据目标数据重复。
|
53
|
+
*/
|
54
|
+
source?: string;
|
55
|
+
/**
|
56
|
+
* 类名
|
57
|
+
*/
|
58
|
+
tabsClassName?: SchemaClassName;
|
59
|
+
/**
|
60
|
+
* 展示形式
|
61
|
+
*/
|
62
|
+
tabsMode?: '' | 'line' | 'card' | 'radio' | 'vertical' | 'tiled';
|
63
|
+
/**
|
64
|
+
* 内容类名
|
65
|
+
*/
|
66
|
+
contentClassName?: SchemaClassName;
|
67
|
+
/**
|
68
|
+
* 链接外层类名
|
69
|
+
*/
|
70
|
+
linksClassName?: SchemaClassName;
|
71
|
+
/**
|
72
|
+
* 卡片是否只有在点开的时候加载?
|
73
|
+
*/
|
74
|
+
mountOnEnter?: boolean;
|
75
|
+
/**
|
76
|
+
* 卡片隐藏的时候是否销毁卡片内容
|
77
|
+
*/
|
78
|
+
unmountOnExit?: boolean;
|
79
|
+
/**
|
80
|
+
* 可以在右侧配置点其他功能按钮。不会随着tab切换
|
81
|
+
*/
|
82
|
+
toolbar?: Array<ActionSchema>;
|
83
|
+
/**
|
84
|
+
* 是否支持溢出滚动
|
85
|
+
*/
|
86
|
+
scrollable?: boolean;
|
87
|
+
/**
|
88
|
+
* header和内容是否展示分割线
|
89
|
+
*/
|
90
|
+
divider?: boolean;
|
91
|
+
/**
|
92
|
+
* 标题右侧的描述
|
93
|
+
*/
|
94
|
+
description?: SchemaTpl;
|
95
|
+
/**
|
96
|
+
* 隐藏头部
|
97
|
+
*/
|
98
|
+
hideHeader?: boolean;
|
99
|
+
/**
|
100
|
+
* 自定义样式
|
101
|
+
*/
|
102
|
+
style?: string | {
|
103
|
+
[propName: string]: any;
|
104
|
+
};
|
105
|
+
}
|
106
|
+
export interface PortletProps extends RendererProps, Omit<PortletSchema, 'className' | 'contentClassName'> {
|
107
|
+
activeKey?: number;
|
108
|
+
tabRender?: (tab: PortletTabSchema, props: PortletProps, index: number) => JSX.Element;
|
109
|
+
}
|
110
|
+
export interface PortletState {
|
111
|
+
activeKey?: number;
|
112
|
+
}
|
113
|
+
export declare class Portlet extends React.Component<PortletProps, PortletState> {
|
114
|
+
static defaultProps: Partial<PortletProps>;
|
115
|
+
renderTab?: (tab: PortletTabSchema, props: PortletProps, index: number) => JSX.Element;
|
116
|
+
constructor(props: PortletProps);
|
117
|
+
handleSelect(key: number): void;
|
118
|
+
renderToolbarItem(toolbar: Array<ActionSchema>): JSX.Element[];
|
119
|
+
renderToolbar(): JSX.Element | null;
|
120
|
+
renderDesc(): JSX.Element | null;
|
121
|
+
renderTabs(): JSX.Element | null;
|
122
|
+
render(): JSX.Element;
|
123
|
+
}
|
124
|
+
export declare class PortletRenderer extends Portlet {
|
125
|
+
}
|
@@ -0,0 +1,156 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.PortletRenderer = exports.Portlet = void 0;
|
4
|
+
var tslib_1 = require("tslib");
|
5
|
+
var react_1 = (0, tslib_1.__importDefault)(require("react"));
|
6
|
+
var mapValues_1 = (0, tslib_1.__importDefault)(require("lodash/mapValues"));
|
7
|
+
var Tabs_1 = require("../components/Tabs");
|
8
|
+
var factory_1 = require("../factory");
|
9
|
+
var tpl_builtin_1 = require("../utils/tpl-builtin");
|
10
|
+
var api_1 = require("../utils/api");
|
11
|
+
var helper_1 = require("../utils/helper");
|
12
|
+
var tpl_1 = require("../utils/tpl");
|
13
|
+
var Portlet = /** @class */ (function (_super) {
|
14
|
+
(0, tslib_1.__extends)(Portlet, _super);
|
15
|
+
function Portlet(props) {
|
16
|
+
var _this = _super.call(this, props) || this;
|
17
|
+
var activeKey = props.activeKey || 0;
|
18
|
+
_this.state = {
|
19
|
+
activeKey: activeKey
|
20
|
+
};
|
21
|
+
return _this;
|
22
|
+
}
|
23
|
+
Portlet.prototype.handleSelect = function (key) {
|
24
|
+
var _a = this.props, onSelect = _a.onSelect, tabs = _a.tabs;
|
25
|
+
if (typeof key === 'number' && key < tabs.length) {
|
26
|
+
this.setState({
|
27
|
+
activeKey: key
|
28
|
+
});
|
29
|
+
}
|
30
|
+
if (typeof onSelect === 'string') {
|
31
|
+
var selectFunc = (0, api_1.str2AsyncFunction)(onSelect, 'key', 'props');
|
32
|
+
selectFunc && selectFunc(key, this.props);
|
33
|
+
}
|
34
|
+
else if (typeof onSelect === 'function') {
|
35
|
+
onSelect(key, this.props);
|
36
|
+
}
|
37
|
+
};
|
38
|
+
Portlet.prototype.renderToolbarItem = function (toolbar) {
|
39
|
+
var render = this.props.render;
|
40
|
+
var actions = [];
|
41
|
+
if (Array.isArray(toolbar)) {
|
42
|
+
toolbar.forEach(function (action, index) {
|
43
|
+
return actions.push(render("toolbar/" + index, (0, tslib_1.__assign)({ type: 'button', level: 'link', size: 'sm' }, action), {
|
44
|
+
key: index
|
45
|
+
}));
|
46
|
+
});
|
47
|
+
}
|
48
|
+
return actions;
|
49
|
+
};
|
50
|
+
Portlet.prototype.renderToolbar = function () {
|
51
|
+
var _a = this.props, toolbar = _a.toolbar, cx = _a.classnames, ns = _a.classPrefix, tabs = _a.tabs;
|
52
|
+
var activeKey = this.state.activeKey;
|
53
|
+
var tabToolbar = null;
|
54
|
+
var tabToolbarTpl = null;
|
55
|
+
// tabs里的toolbar
|
56
|
+
var toolbarTpl = toolbar ? (react_1.default.createElement("div", { className: cx(ns + "toolbar") }, this.renderToolbarItem(toolbar))) : null;
|
57
|
+
// tab里的toolbar
|
58
|
+
if (typeof activeKey !== 'undefined') {
|
59
|
+
tabToolbar = tabs[activeKey].toolbar;
|
60
|
+
tabToolbarTpl = tabToolbar ? (react_1.default.createElement("div", { className: cx(ns + "tab-toolbar") }, this.renderToolbarItem(tabToolbar))) : null;
|
61
|
+
}
|
62
|
+
return toolbarTpl || tabToolbarTpl ? (react_1.default.createElement("div", { className: cx(ns + "Portlet-toolbar") },
|
63
|
+
toolbarTpl,
|
64
|
+
tabToolbarTpl)) : null;
|
65
|
+
};
|
66
|
+
Portlet.prototype.renderDesc = function () {
|
67
|
+
var _a = this.props, descTpl = _a.description, render = _a.render, cx = _a.classnames, ns = _a.classPrefix, data = _a.data;
|
68
|
+
var desc = (0, tpl_1.filter)(descTpl, data);
|
69
|
+
return desc ? (react_1.default.createElement("span", { className: cx(ns + "Portlet-header-desc") }, desc)) : null;
|
70
|
+
};
|
71
|
+
Portlet.prototype.renderTabs = function () {
|
72
|
+
var _a;
|
73
|
+
var _this = this;
|
74
|
+
var _b = this.props, cx = _b.classnames, ns = _b.classPrefix, tabsClassName = _b.tabsClassName, contentClassName = _b.contentClassName, linksClassName = _b.linksClassName, tabRender = _b.tabRender, render = _b.render, data = _b.data, dMode = _b.mode, tabsMode = _b.tabsMode, unmountOnExit = _b.unmountOnExit, source = _b.source, mountOnEnter = _b.mountOnEnter, scrollable = _b.scrollable, divider = _b.divider;
|
75
|
+
var mode = tabsMode || dMode;
|
76
|
+
var arr = (0, tpl_builtin_1.resolveVariable)(source, data);
|
77
|
+
var tabs = this.props.tabs;
|
78
|
+
if (!tabs) {
|
79
|
+
return null;
|
80
|
+
}
|
81
|
+
tabs = Array.isArray(tabs) ? tabs : [tabs];
|
82
|
+
var children = [];
|
83
|
+
var tabClassname = cx(ns + "Portlet-tab", tabsClassName, (_a = {},
|
84
|
+
_a['unactive-select'] = tabs.length <= 1,
|
85
|
+
_a['no-divider'] = !divider,
|
86
|
+
_a));
|
87
|
+
if (Array.isArray(arr)) {
|
88
|
+
arr.forEach(function (value, index) {
|
89
|
+
var ctx = (0, helper_1.createObject)(data, (0, helper_1.isObject)(value) ? (0, tslib_1.__assign)({ index: index }, value) : { item: value, index: index });
|
90
|
+
children.push.apply(children, tabs.map(function (tab, tabIndex) {
|
91
|
+
var _a;
|
92
|
+
return (0, helper_1.isVisible)(tab, ctx) ? (react_1.default.createElement(Tabs_1.Tab, (0, tslib_1.__assign)({}, tab, { title: (0, tpl_1.filter)(tab.title, ctx), disabled: (0, helper_1.isDisabled)(tab, ctx), key: "" + (index * 1000 + tabIndex), eventKey: index * 1000 + tabIndex, mountOnEnter: mountOnEnter, unmountOnExit: typeof tab.reload === 'boolean'
|
93
|
+
? tab.reload
|
94
|
+
: typeof tab.unmountOnExit === 'boolean'
|
95
|
+
? tab.unmountOnExit
|
96
|
+
: unmountOnExit }), render("item/" + index + "/" + tabIndex, ((_a = tab) === null || _a === void 0 ? void 0 : _a.type) ? tab : tab.tab || tab.body, {
|
97
|
+
data: ctx
|
98
|
+
}))) : null;
|
99
|
+
}));
|
100
|
+
});
|
101
|
+
}
|
102
|
+
else {
|
103
|
+
children = tabs.map(function (tab, index) {
|
104
|
+
var _a;
|
105
|
+
return (0, helper_1.isVisible)(tab, data) ? (react_1.default.createElement(Tabs_1.Tab, (0, tslib_1.__assign)({}, tab, { title: (0, tpl_1.filter)(tab.title, data), disabled: (0, helper_1.isDisabled)(tab, data), key: index, eventKey: index, mountOnEnter: mountOnEnter, unmountOnExit: typeof tab.reload === 'boolean'
|
106
|
+
? tab.reload
|
107
|
+
: typeof tab.unmountOnExit === 'boolean'
|
108
|
+
? tab.unmountOnExit
|
109
|
+
: unmountOnExit }), _this.renderTab
|
110
|
+
? _this.renderTab(tab, _this.props, index)
|
111
|
+
: tabRender
|
112
|
+
? tabRender(tab, _this.props, index)
|
113
|
+
: render("tab/" + index, ((_a = tab) === null || _a === void 0 ? void 0 : _a.type) ? tab : tab.tab || tab.body))) : null;
|
114
|
+
});
|
115
|
+
}
|
116
|
+
return (react_1.default.createElement(Tabs_1.Tabs, { classPrefix: ns, classnames: cx, mode: mode, className: tabClassname, contentClassName: contentClassName, linksClassName: linksClassName, activeKey: this.state.activeKey, onSelect: this.handleSelect, toolbar: this.renderToolbar(), additionBtns: this.renderDesc(), scrollable: scrollable }, children));
|
117
|
+
};
|
118
|
+
Portlet.prototype.render = function () {
|
119
|
+
var _a;
|
120
|
+
var _b = this.props, className = _b.className, data = _b.data, cx = _b.classnames, ns = _b.classPrefix, style = _b.style, hideHeader = _b.hideHeader;
|
121
|
+
var portletClassname = cx(ns + "Portlet", className, (_a = {},
|
122
|
+
_a['no-header'] = hideHeader,
|
123
|
+
_a));
|
124
|
+
var styleVar = typeof style === 'string'
|
125
|
+
? (0, tpl_builtin_1.resolveVariable)(style, data) || {}
|
126
|
+
: (0, mapValues_1.default)(style, function (s) { return (0, tpl_builtin_1.resolveVariable)(s, data) || s; });
|
127
|
+
return (react_1.default.createElement("div", { className: portletClassname, style: styleVar }, this.renderTabs()));
|
128
|
+
};
|
129
|
+
Portlet.defaultProps = {
|
130
|
+
className: '',
|
131
|
+
mode: 'line',
|
132
|
+
divider: true
|
133
|
+
};
|
134
|
+
(0, tslib_1.__decorate)([
|
135
|
+
helper_1.autobind,
|
136
|
+
(0, tslib_1.__metadata)("design:type", Function),
|
137
|
+
(0, tslib_1.__metadata)("design:paramtypes", [Number]),
|
138
|
+
(0, tslib_1.__metadata)("design:returntype", void 0)
|
139
|
+
], Portlet.prototype, "handleSelect", null);
|
140
|
+
return Portlet;
|
141
|
+
}(react_1.default.Component));
|
142
|
+
exports.Portlet = Portlet;
|
143
|
+
var PortletRenderer = /** @class */ (function (_super) {
|
144
|
+
(0, tslib_1.__extends)(PortletRenderer, _super);
|
145
|
+
function PortletRenderer() {
|
146
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
147
|
+
}
|
148
|
+
PortletRenderer = (0, tslib_1.__decorate)([
|
149
|
+
(0, factory_1.Renderer)({
|
150
|
+
type: 'portlet'
|
151
|
+
})
|
152
|
+
], PortletRenderer);
|
153
|
+
return PortletRenderer;
|
154
|
+
}(Portlet));
|
155
|
+
exports.PortletRenderer = PortletRenderer;
|
156
|
+
//# sourceMappingURL=./renderers/Portlet.js.map
|