amis 1.8.0-beta.1 → 1.8.0-beta.2
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/Root.js +2 -2
- package/lib/Root.js.map +1 -1
- package/lib/RootRenderer.js +1 -1
- package/lib/RootRenderer.js.map +1 -1
- package/lib/SchemaRenderer.js +21 -5
- package/lib/SchemaRenderer.js.map +2 -2
- package/lib/Scoped.js +1 -1
- package/lib/Scoped.js.map +1 -1
- package/lib/WithRootStore.d.ts +18 -0
- package/lib/WithRootStore.js +1 -1
- package/lib/WithRootStore.js.map +1 -1
- package/lib/WithStore.js +3 -2
- package/lib/WithStore.js.map +2 -2
- package/lib/actions/AjaxAction.js +1 -1
- package/lib/actions/AjaxAction.js.map +1 -1
- package/lib/actions/CmptAction.js +14 -3
- package/lib/actions/CmptAction.js.map +2 -2
- package/lib/actions/Decorators.js +1 -1
- package/lib/actions/Decorators.js.map +1 -1
- package/lib/actions/EmailAction.js +1 -1
- package/lib/actions/EmailAction.js.map +1 -1
- package/lib/actions/LoopAction.js +2 -2
- package/lib/actions/LoopAction.js.map +1 -1
- package/lib/compat.js +1 -1
- package/lib/compat.js.map +1 -1
- package/lib/components/Alert2.js +2 -2
- package/lib/components/Alert2.js.map +1 -1
- package/lib/components/AnchorNav.js +1 -1
- package/lib/components/AnchorNav.js.map +1 -1
- package/lib/components/ArrayInput.js +2 -2
- package/lib/components/ArrayInput.js.map +1 -1
- package/lib/components/AsideNav.js +4 -4
- package/lib/components/AsideNav.js.map +1 -1
- package/lib/components/Avatar.js +3 -3
- package/lib/components/Avatar.js.map +1 -1
- package/lib/components/Badge.js +10 -10
- package/lib/components/Badge.js.map +1 -1
- package/lib/components/BaiduMapPicker.js +1 -1
- package/lib/components/BaiduMapPicker.js.map +1 -1
- package/lib/components/Breadcrumb.js +1 -1
- package/lib/components/Breadcrumb.js.map +1 -1
- package/lib/components/Button.js +3 -3
- package/lib/components/Button.js.map +1 -1
- package/lib/components/CalendarMobile.js +2 -2
- package/lib/components/CalendarMobile.js.map +1 -1
- package/lib/components/Card.js +1 -1
- package/lib/components/Card.js.map +1 -1
- package/lib/components/ChainedSelection.js +1 -1
- package/lib/components/ChainedSelection.js.map +1 -1
- package/lib/components/Checkbox.js +2 -2
- package/lib/components/Checkbox.js.map +1 -1
- package/lib/components/Collapse.js +3 -3
- package/lib/components/Collapse.js.map +1 -1
- package/lib/components/ColorPicker.js +5 -5
- package/lib/components/ColorPicker.js.map +1 -1
- package/lib/components/ContextMenu.js +3 -3
- package/lib/components/ContextMenu.js.map +1 -1
- package/lib/components/DatePicker.js +3 -3
- package/lib/components/DatePicker.js.map +1 -1
- package/lib/components/DateRangePicker.js +15 -15
- package/lib/components/DateRangePicker.js.map +1 -1
- package/lib/components/Drawer.js +10 -10
- package/lib/components/Drawer.js.map +1 -1
- package/lib/components/Editor.js +3 -3
- package/lib/components/Editor.js.map +1 -1
- package/lib/components/GridNav.js +11 -11
- package/lib/components/GridNav.js.map +1 -1
- package/lib/components/InputBox.js +1 -1
- package/lib/components/InputBox.js.map +1 -1
- package/lib/components/Layout.js +1 -1
- package/lib/components/Layout.js.map +1 -1
- package/lib/components/ListGroup.js +1 -1
- package/lib/components/ListGroup.js.map +1 -1
- package/lib/components/Modal.js +4 -4
- package/lib/components/Modal.js.map +1 -1
- package/lib/components/MonthRangePicker.js +13 -13
- package/lib/components/MonthRangePicker.js.map +1 -1
- package/lib/components/NumberInput.js +2 -2
- package/lib/components/NumberInput.js.map +1 -1
- package/lib/components/Picker.js +4 -4
- package/lib/components/Picker.js.map +1 -1
- package/lib/components/PickerColumn.js +4 -4
- package/lib/components/PickerColumn.js.map +1 -1
- package/lib/components/PopOver.js +2 -2
- package/lib/components/PopOver.js.map +1 -1
- package/lib/components/PopUp.js +10 -10
- package/lib/components/PopUp.js.map +1 -1
- package/lib/components/Progress.js +5 -5
- package/lib/components/Progress.js.map +1 -1
- package/lib/components/Radios.js +3 -3
- package/lib/components/Radios.js.map +1 -1
- package/lib/components/Range.js +1 -1
- package/lib/components/Range.js.map +1 -1
- package/lib/components/Rating.js +1 -1
- package/lib/components/Rating.js.map +1 -1
- package/lib/components/ResultBox.js +2 -2
- package/lib/components/ResultBox.js.map +1 -1
- package/lib/components/ResultList.js +5 -5
- package/lib/components/ResultList.js.map +1 -1
- package/lib/components/Select.js +7 -7
- package/lib/components/Select.js.map +1 -1
- package/lib/components/SparkLine.js +3 -3
- package/lib/components/SparkLine.js.map +1 -1
- package/lib/components/Spinner.js +2 -2
- package/lib/components/Spinner.js.map +1 -1
- package/lib/components/Steps.js +2 -2
- package/lib/components/Steps.js.map +1 -1
- package/lib/components/Switch.js +2 -2
- package/lib/components/Switch.js.map +1 -1
- package/lib/components/Tabs.js +5 -5
- package/lib/components/Tabs.js.map +1 -1
- package/lib/components/Timeline.js +1 -1
- package/lib/components/Timeline.js.map +1 -1
- package/lib/components/TimelineItem.js +3 -3
- package/lib/components/TimelineItem.js.map +1 -1
- package/lib/components/Toast.js +3 -3
- package/lib/components/Toast.js.map +1 -1
- package/lib/components/Tooltip.js +1 -1
- package/lib/components/Tooltip.js.map +1 -1
- package/lib/components/Tree.js +5 -5
- package/lib/components/Tree.js.map +1 -1
- package/lib/components/TreeSelection.js +2 -2
- package/lib/components/TreeSelection.js.map +1 -1
- package/lib/components/WithRemoteConfig.js +1 -1
- package/lib/components/WithRemoteConfig.js.map +1 -1
- package/lib/components/WithStore.js +1 -1
- package/lib/components/WithStore.js.map +1 -1
- package/lib/components/calendar/DaysView.js +1 -1
- package/lib/components/calendar/DaysView.js.map +1 -1
- package/lib/components/calendar/QuartersView.js +1 -1
- package/lib/components/calendar/QuartersView.js.map +1 -1
- package/lib/components/calendar/TimeView.js +1 -1
- package/lib/components/calendar/TimeView.js.map +1 -1
- package/lib/components/condition-builder/Group.js +2 -2
- package/lib/components/condition-builder/Group.js.map +1 -1
- package/lib/components/condition-builder/GroupOrItem.js +1 -1
- package/lib/components/condition-builder/GroupOrItem.js.map +1 -1
- package/lib/components/formula/Editor.js +3 -3
- package/lib/components/formula/Editor.js.map +1 -1
- package/lib/components/formula/VariableList.js +5 -5
- package/lib/components/formula/VariableList.js.map +1 -1
- package/lib/components/formula/plugin.js +1 -1
- package/lib/components/formula/plugin.js.map +1 -1
- package/lib/components/icons.js +1 -1
- package/lib/components/icons.js.map +1 -1
- package/lib/components/virtual-list/SizeAndPositionManager.js +4 -4
- package/lib/components/virtual-list/SizeAndPositionManager.js.map +1 -1
- package/lib/env.js +1 -1
- package/lib/env.js.map +1 -1
- package/lib/factory.js +3 -3
- package/lib/factory.js.map +1 -1
- package/lib/index.js +1 -1
- package/lib/locale.js +1 -1
- package/lib/locale.js.map +1 -1
- package/lib/renderers/Action.d.ts +2 -0
- package/lib/renderers/Action.js +23 -5
- package/lib/renderers/Action.js.map +2 -2
- package/lib/renderers/AnchorNav.js +1 -1
- package/lib/renderers/AnchorNav.js.map +1 -1
- package/lib/renderers/App.js +2 -2
- package/lib/renderers/App.js.map +1 -1
- package/lib/renderers/Audio.js +2 -2
- package/lib/renderers/Audio.js.map +1 -1
- package/lib/renderers/CRUD.js +8 -8
- package/lib/renderers/CRUD.js.map +1 -1
- package/lib/renderers/Card.js +6 -6
- package/lib/renderers/Card.js.map +1 -1
- package/lib/renderers/Cards.js +10 -10
- package/lib/renderers/Cards.js.map +1 -1
- package/lib/renderers/Carousel.js +2 -2
- package/lib/renderers/Carousel.js.map +1 -1
- package/lib/renderers/Chart.js +2 -2
- package/lib/renderers/Chart.js.map +1 -1
- package/lib/renderers/Dialog.js +5 -5
- package/lib/renderers/Dialog.js.map +1 -1
- package/lib/renderers/Divider.js +1 -1
- package/lib/renderers/Divider.js.map +1 -1
- package/lib/renderers/Drawer.js +6 -6
- package/lib/renderers/Drawer.js.map +1 -1
- package/lib/renderers/DropDownButton.js +5 -5
- package/lib/renderers/DropDownButton.js.map +1 -1
- package/lib/renderers/Each.js +1 -1
- package/lib/renderers/Each.js.map +1 -1
- package/lib/renderers/Flex.js +2 -2
- package/lib/renderers/Flex.js.map +1 -1
- package/lib/renderers/Form/ButtonGroupSelect.js +4 -4
- package/lib/renderers/Form/ButtonGroupSelect.js.map +1 -1
- package/lib/renderers/Form/ButtonToolbar.js +1 -1
- package/lib/renderers/Form/ButtonToolbar.js.map +1 -1
- package/lib/renderers/Form/ChainedSelect.js +2 -2
- package/lib/renderers/Form/ChainedSelect.js.map +1 -1
- package/lib/renderers/Form/ChartRadios.js +1 -1
- package/lib/renderers/Form/ChartRadios.js.map +1 -1
- package/lib/renderers/Form/Checkbox.js +1 -1
- package/lib/renderers/Form/Checkbox.js.map +1 -1
- package/lib/renderers/Form/Checkboxes.js +1 -1
- package/lib/renderers/Form/Checkboxes.js.map +1 -1
- package/lib/renderers/Form/Combo.js +10 -9
- package/lib/renderers/Form/Combo.js.map +2 -2
- package/lib/renderers/Form/DiffEditor.js +2 -2
- package/lib/renderers/Form/DiffEditor.js.map +1 -1
- package/lib/renderers/Form/Editor.js +4 -4
- package/lib/renderers/Form/Editor.js.map +1 -1
- package/lib/renderers/Form/FieldSet.js +1 -1
- package/lib/renderers/Form/FieldSet.js.map +1 -1
- package/lib/renderers/Form/Group.js +4 -4
- package/lib/renderers/Form/Group.js.map +1 -1
- package/lib/renderers/Form/IconPicker.js +2 -2
- package/lib/renderers/Form/IconPicker.js.map +1 -1
- package/lib/renderers/Form/InputColor.js +1 -1
- package/lib/renderers/Form/InputColor.js.map +1 -1
- package/lib/renderers/Form/InputDateRange.js +1 -1
- package/lib/renderers/Form/InputDateRange.js.map +1 -1
- package/lib/renderers/Form/InputFile.js +5 -5
- package/lib/renderers/Form/InputFile.js.map +1 -1
- package/lib/renderers/Form/InputGroup.js +1 -1
- package/lib/renderers/Form/InputGroup.js.map +1 -1
- package/lib/renderers/Form/InputImage.js +2 -2
- package/lib/renderers/Form/InputImage.js.map +1 -1
- package/lib/renderers/Form/InputMonthRange.js +1 -1
- package/lib/renderers/Form/InputMonthRange.js.map +1 -1
- package/lib/renderers/Form/InputNumber.js +2 -2
- package/lib/renderers/Form/InputNumber.js.map +1 -1
- package/lib/renderers/Form/InputQuarterRange.js +1 -1
- package/lib/renderers/Form/InputQuarterRange.js.map +1 -1
- package/lib/renderers/Form/InputRange.js +2 -2
- package/lib/renderers/Form/InputRange.js.map +1 -1
- package/lib/renderers/Form/InputRepeat.js +2 -2
- package/lib/renderers/Form/InputRepeat.js.map +1 -1
- package/lib/renderers/Form/InputRichText.js +2 -2
- package/lib/renderers/Form/InputRichText.js.map +1 -1
- package/lib/renderers/Form/InputSubForm.js +5 -5
- package/lib/renderers/Form/InputSubForm.js.map +1 -1
- package/lib/renderers/Form/InputTable.js +2 -2
- package/lib/renderers/Form/InputTable.js.map +1 -1
- package/lib/renderers/Form/InputTag.js +1 -1
- package/lib/renderers/Form/InputTag.js.map +1 -1
- package/lib/renderers/Form/InputText.js +9 -9
- package/lib/renderers/Form/InputText.js.map +1 -1
- package/lib/renderers/Form/InputTree.js +1 -1
- package/lib/renderers/Form/InputTree.js.map +1 -1
- package/lib/renderers/Form/InputYearRange.js +1 -1
- package/lib/renderers/Form/InputYearRange.js.map +1 -1
- package/lib/renderers/Form/Item.d.ts +11 -6
- package/lib/renderers/Form/Item.js +7 -7
- package/lib/renderers/Form/Item.js.map +1 -1
- package/lib/renderers/Form/ListSelect.js +2 -2
- package/lib/renderers/Form/ListSelect.js.map +1 -1
- package/lib/renderers/Form/NestedSelect.js +1 -1
- package/lib/renderers/Form/NestedSelect.js.map +1 -1
- package/lib/renderers/Form/Options.js +2 -2
- package/lib/renderers/Form/Options.js.map +1 -1
- package/lib/renderers/Form/Picker.js +3 -3
- package/lib/renderers/Form/Picker.js.map +1 -1
- package/lib/renderers/Form/Radios.js +1 -1
- package/lib/renderers/Form/Radios.js.map +1 -1
- package/lib/renderers/Form/Select.js +2 -2
- package/lib/renderers/Form/Select.js.map +1 -1
- package/lib/renderers/Form/Static.js +1 -1
- package/lib/renderers/Form/Static.js.map +1 -1
- package/lib/renderers/Form/TabsTransfer.js +1 -1
- package/lib/renderers/Form/TabsTransfer.js.map +1 -1
- package/lib/renderers/Form/TabsTransferPicker.js +1 -1
- package/lib/renderers/Form/TabsTransferPicker.js.map +1 -1
- package/lib/renderers/Form/Textarea.js +2 -2
- package/lib/renderers/Form/Textarea.js.map +1 -1
- package/lib/renderers/Form/Transfer.js +3 -3
- package/lib/renderers/Form/Transfer.js.map +1 -1
- package/lib/renderers/Form/TreeSelect.js +4 -4
- package/lib/renderers/Form/TreeSelect.js.map +1 -1
- package/lib/renderers/Form/index.js +7 -7
- package/lib/renderers/Form/index.js.map +2 -2
- package/lib/renderers/Form/wrapControl.d.ts +9 -0
- package/lib/renderers/Form/wrapControl.js +1 -1
- package/lib/renderers/Form/wrapControl.js.map +2 -2
- package/lib/renderers/Grid.js +7 -7
- package/lib/renderers/Grid.js.map +1 -1
- package/lib/renderers/Grid2D.js +1 -1
- package/lib/renderers/Grid2D.js.map +1 -1
- package/lib/renderers/HBox.js +5 -5
- package/lib/renderers/HBox.js.map +1 -1
- package/lib/renderers/IFrame.js +1 -1
- package/lib/renderers/IFrame.js.map +1 -1
- package/lib/renderers/Icon.js +2 -2
- package/lib/renderers/Icon.js.map +1 -1
- package/lib/renderers/Image.js +3 -3
- package/lib/renderers/Image.js.map +1 -1
- package/lib/renderers/List.js +14 -14
- package/lib/renderers/List.js.map +1 -1
- package/lib/renderers/Mapping.js +1 -1
- package/lib/renderers/Mapping.js.map +1 -1
- package/lib/renderers/Operation.js +1 -1
- package/lib/renderers/Operation.js.map +1 -1
- package/lib/renderers/Page.js +6 -6
- package/lib/renderers/Page.js.map +1 -1
- package/lib/renderers/Panel.js +2 -2
- package/lib/renderers/Panel.js.map +1 -1
- package/lib/renderers/PopOver.js +2 -2
- package/lib/renderers/PopOver.js.map +1 -1
- package/lib/renderers/Portlet.js +10 -10
- package/lib/renderers/Portlet.js.map +1 -1
- package/lib/renderers/Property.js +3 -3
- package/lib/renderers/Property.js.map +1 -1
- package/lib/renderers/QRCode.js +1 -1
- package/lib/renderers/QRCode.js.map +1 -1
- package/lib/renderers/QuickEdit.js +11 -11
- package/lib/renderers/QuickEdit.js.map +1 -1
- package/lib/renderers/Service.js +2 -2
- package/lib/renderers/Service.js.map +1 -1
- package/lib/renderers/Status.js +1 -1
- package/lib/renderers/Status.js.map +1 -1
- package/lib/renderers/Table/ColumnToggler.js +5 -5
- package/lib/renderers/Table/ColumnToggler.js.map +1 -1
- package/lib/renderers/Table/HeadCellFilterDropdown.js +2 -2
- package/lib/renderers/Table/HeadCellFilterDropdown.js.map +1 -1
- package/lib/renderers/Table/HeadCellSearchDropdown.js +2 -2
- package/lib/renderers/Table/HeadCellSearchDropdown.js.map +1 -1
- package/lib/renderers/Table/ItemActionsWrapper.js +2 -2
- package/lib/renderers/Table/ItemActionsWrapper.js.map +1 -1
- package/lib/renderers/Table/TableBody.js +3 -3
- package/lib/renderers/Table/TableBody.js.map +1 -1
- package/lib/renderers/Table/TableContent.js +1 -1
- package/lib/renderers/Table/TableContent.js.map +1 -1
- package/lib/renderers/Table/TableRow.js +4 -4
- package/lib/renderers/Table/TableRow.js.map +1 -1
- package/lib/renderers/Table/index.js +28 -28
- package/lib/renderers/Table/index.js.map +1 -1
- package/lib/renderers/TableView.js +4 -4
- package/lib/renderers/TableView.js.map +1 -1
- package/lib/renderers/Tabs.d.ts +4 -0
- package/lib/renderers/Tabs.js +26 -10
- package/lib/renderers/Tabs.js.map +2 -2
- package/lib/renderers/Tasks.js +1 -1
- package/lib/renderers/Tasks.js.map +1 -1
- package/lib/renderers/Tpl.js +1 -1
- package/lib/renderers/Tpl.js.map +1 -1
- package/lib/renderers/VBox.js +2 -2
- package/lib/renderers/VBox.js.map +1 -1
- package/lib/renderers/Video.js +4 -4
- package/lib/renderers/Video.js.map +1 -1
- package/lib/renderers/Wizard.d.ts +6 -3
- package/lib/renderers/Wizard.js +264 -159
- package/lib/renderers/Wizard.js.map +2 -2
- package/lib/renderers/Wrapper.js +1 -1
- package/lib/renderers/Wrapper.js.map +1 -1
- package/lib/store/app.js +3 -3
- package/lib/store/app.js.map +1 -1
- package/lib/store/crud.js +1 -1
- package/lib/store/crud.js.map +1 -1
- package/lib/store/form.js +2 -2
- package/lib/store/form.js.map +1 -1
- package/lib/store/formItem.js +3 -3
- package/lib/store/formItem.js.map +1 -1
- package/lib/store/index.d.ts +5 -0
- package/lib/store/index.js +14 -0
- package/lib/store/index.js.map +2 -2
- package/lib/store/node.js +2 -2
- package/lib/store/node.js.map +1 -1
- package/lib/store/table.js +6 -6
- package/lib/store/table.js.map +1 -1
- package/lib/theme.js +1 -1
- package/lib/theme.js.map +1 -1
- package/lib/themes/ang-ie11.css +0 -1
- package/lib/themes/ang.css +0 -1
- package/lib/themes/ang.css.map +1 -1
- package/lib/themes/antd-ie11.css +0 -1
- package/lib/themes/antd.css +0 -1
- package/lib/themes/antd.css.map +1 -1
- package/lib/themes/cxd-ie11.css +0 -1
- package/lib/themes/cxd.css +0 -1
- package/lib/themes/cxd.css.map +1 -1
- package/lib/themes/dark-ie11.css +0 -1
- package/lib/themes/dark.css +0 -1
- package/lib/themes/dark.css.map +1 -1
- package/lib/themes/default-ie11.css +0 -1
- package/lib/themes/default.css +0 -1
- package/lib/themes/default.css.map +1 -1
- package/lib/types.d.ts +1 -1
- package/lib/types.js.map +1 -1
- package/lib/utils/api.js +5 -5
- package/lib/utils/api.js.map +1 -1
- package/lib/utils/autobind.js +2 -2
- package/lib/utils/autobind.js.map +1 -1
- package/lib/utils/debug.js +13 -13
- package/lib/utils/debug.js.map +1 -1
- package/lib/utils/dom.js +1 -1
- package/lib/utils/dom.js.map +1 -1
- package/lib/utils/filter-schema.js +1 -1
- package/lib/utils/filter-schema.js.map +1 -1
- package/lib/utils/helper.js +6 -6
- package/lib/utils/helper.js.map +1 -1
- package/lib/utils/resize-sensor.js +1 -1
- package/lib/utils/resize-sensor.js.map +1 -1
- package/lib/utils/style.js +1 -1
- package/lib/utils/style.js.map +1 -1
- package/lib/utils/tpl-builtin.js +1 -1
- package/lib/utils/tpl-builtin.js.map +1 -1
- package/lib/utils/tpl-lodash.js +1 -1
- package/lib/utils/tpl-lodash.js.map +1 -1
- package/lib/utils/tpl.js +2 -2
- package/lib/utils/tpl.js.map +1 -1
- package/lib/utils/validations.js +2 -2
- package/lib/utils/validations.js.map +1 -1
- package/package.json +1 -1
- package/schema.json +210 -360
- package/sdk/ang-ie11.css +0 -1
- package/sdk/ang.css +0 -1
- package/sdk/antd-ie11.css +0 -1
- package/sdk/antd.css +0 -1
- package/sdk/barcode.js +51 -51
- package/sdk/charts.js +17 -17
- package/sdk/codemirror.js +7 -7
- package/sdk/color-picker.js +65 -65
- package/sdk/cropperjs.js +3 -3
- package/sdk/cxd-ie11.css +0 -1
- package/sdk/cxd.css +0 -1
- package/sdk/dark-ie11.css +0 -1
- package/sdk/dark.css +0 -1
- package/sdk/exceljs.js +1 -1
- package/sdk/markdown.js +69 -69
- package/sdk/papaparse.js +3 -3
- package/sdk/renderers/Form/CityDB.js +1 -1
- package/sdk/rest.js +17 -17
- package/sdk/rich-text.js +62 -62
- package/sdk/sdk-ie11.css +0 -1
- package/sdk/sdk.css +0 -1
- package/sdk/sdk.js +1265 -1361
- package/sdk/thirds/hls.js/hls.js +19 -19
- package/sdk/thirds/mpegts.js/mpegts.js +2 -2
- package/sdk/tinymce.js +57 -57
- package/src/SchemaRenderer.tsx +30 -12
- package/src/WithStore.tsx +3 -1
- package/src/actions/CmptAction.ts +18 -0
- package/src/renderers/Action.tsx +22 -1
- package/src/renderers/Form/Combo.tsx +2 -3
- package/src/renderers/Form/index.tsx +1 -1
- package/src/renderers/Form/wrapControl.tsx +1 -1
- package/src/renderers/Tabs.tsx +75 -28
- package/src/renderers/Wizard.tsx +154 -93
- package/src/store/index.ts +20 -0
- package/src/types.ts +3 -1
package/lib/Root.js
CHANGED
@@ -50,7 +50,7 @@ exports.Root = Root;
|
|
50
50
|
function renderChildren(prefix, node, props) {
|
51
51
|
if (Array.isArray(node)) {
|
52
52
|
return node.map(function (node, index) {
|
53
|
-
return renderChild(
|
53
|
+
return renderChild(prefix + "/" + index, node, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, props), { key: "" + (props.key ? props.key + "-" : '') + index }));
|
54
54
|
});
|
55
55
|
}
|
56
56
|
return renderChild(prefix, node, props);
|
@@ -73,7 +73,7 @@ function renderChild(prefix, node, props) {
|
|
73
73
|
delete props.propsTransform;
|
74
74
|
props = transform(props);
|
75
75
|
}
|
76
|
-
return (react_1.default.createElement(SchemaRenderer_1.SchemaRenderer, (0, tslib_1.__assign)({}, props, { schema: schema, propKey: schema.key, "$path": ""
|
76
|
+
return (react_1.default.createElement(SchemaRenderer_1.SchemaRenderer, (0, tslib_1.__assign)({}, props, { schema: schema, propKey: schema.key, "$path": "" + (prefix ? prefix + "/" : '') + ((schema && schema.type) || '') })));
|
77
77
|
}
|
78
78
|
exports.renderChild = renderChild;
|
79
79
|
exports.default = (0, Scoped_1.default)(Root);
|
package/lib/Root.js.map
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
"/src/Root.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";;;;AAAA,oFAAiD;AACjD,6DAA0B;AAE1B,wFAAqD;AAGrD,mCAAoD;AACpD,+CAA4C;AAC5C,mDAAgD;AAChD,iEAA8B;AAE9B,iCAAqC;AAGrC,yCAA+D;AAC/D,iDAAiD;AAmBjD;IAA0B,qCAA0B;IAApD;;IA6DA,CAAC;IA3DC,iCAAkB,GAAlB,UAAmB,IAAY;QAC7B,IAAM,WAAW,GAAI,IAAI,CAAC,KAAK,CAAC,MAAiB,CAAC,WAAW,CAAC;QAC9D,IAAI,CAAC,IAAI,IAAI,IAAA,gBAAO,EAAC,WAAW,CAAC,EAAE;YACjC,OAAO,EAAE,CAAC;SACX;QACD,OAAO,WAAW,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED,qBAAM,GAAN;QACE,IAAM,KAUF,IAAI,CAAC,KAAK,EATZ,MAAM,YAAA,EACN,SAAS,eAAA,EACT,GAAG,SAAA,EACH,UAAU,gBAAA,EACV,QAAQ,cAAA,EACR,IAAI,UAAA,EACJ,MAAM,YAAA,EACN,SAAS,eAAA,EACN,IAAI,2BATH,uFAUL,CAAa,CAAC;QAEf,IAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;QACxB,IAAI,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC;QAC1C,IAAI,SAAS,KAAK,SAAS,EAAE;YAC3B,SAAS,GAAG,KAAK,CAAC;SACnB;QAED,OAAO,CACL,8BAAC,gCAAgB,CAAC,QAAQ,IAAC,KAAK,EAAE,SAAS;YACzC,8BAAC,oBAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,SAAS;gBACrC,8BAAC,sBAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAO;oBAC/C,8BAAC,sBAAY,IAAC,cAAc,EAAE,GAAG,CAAC,iBAAiB;wBACjD,8BAAC,2BAAY,0BACX,UAAU,EAAE,UAAU,IAAI,EAAE,EAC5B,MAAM,EACJ,IAAA,uBAAa,EAAC,MAAM,CAAC;gCACnB,CAAC,yBACG,IAAI,EAAE,MAAM,IACR,MAAc,EAEtB,CAAC,CAAC,MAAM,IAER,IAAI,IACR,SAAS,EAAE,SAAS,EACpB,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,EAC3C,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,GAAG,EACR,UAAU,EAAE,KAAK,CAAC,UAAU,EAC5B,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,IACpB,CACW,CACQ,CACH,CACE,CAC7B,CAAC;IACJ,CAAC;IA1DD;QADC,iBAAQ;;;;kDAOR;IAqDH,WAAC;CAAA,AA7DD,CAA0B,eAAK,CAAC,SAAS,GA6DxC;AA7DY,oBAAI;AAoEjB,SAAgB,cAAc,CAC5B,MAAc,EACd,IAAgB,EAChB,KAAuB;IAEvB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACvB,OAAO,IAAI,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,KAAK;YAC1B,OAAA,WAAW,
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
11
|
"import isPlainObject from 'lodash/isPlainObject';\nimport React from 'react';\nimport Alert from './components/Alert2';\nimport ImageGallery from './components/ImageGallery';\nimport {RendererEnv} from './env';\nimport {RendererProps} from './factory';\nimport {LocaleContext, TranslateFn} from './locale';\nimport {RootRenderer} from './RootRenderer';\nimport {SchemaRenderer} from './SchemaRenderer';\nimport Scoped from './Scoped';\nimport {IRendererStore} from './store';\nimport {ThemeContext} from './theme';\nimport {Schema, SchemaNode} from './types';\nimport getExprProperties from './utils/filter-schema';\nimport {autobind, createObject, isEmpty} from './utils/helper';\nimport {RootStoreContext} from './WithRootStore';\n\nexport interface RootRenderProps {\n location?: Location;\n theme?: string;\n [propName: string]: any;\n}\n\nexport interface RootProps {\n schema: SchemaNode;\n rootStore: IRendererStore;\n env: RendererEnv;\n theme: string;\n pathPrefix?: string;\n locale?: string;\n translate?: TranslateFn;\n [propName: string]: any;\n}\n\nexport class Root extends React.Component<RootProps> {\n @autobind\n resolveDefinitions(name: string) {\n const definitions = (this.props.schema as Schema).definitions;\n if (!name || isEmpty(definitions)) {\n return {};\n }\n return definitions && definitions[name];\n }\n\n render() {\n const {\n schema,\n rootStore,\n env,\n pathPrefix,\n location,\n data,\n locale,\n translate,\n ...rest\n } = this.props;\n\n const theme = env.theme;\n let themeName = this.props.theme || 'cxd';\n if (themeName === 'default') {\n themeName = 'cxd';\n }\n\n return (\n <RootStoreContext.Provider value={rootStore}>\n <ThemeContext.Provider value={themeName}>\n <LocaleContext.Provider value={this.props.locale!}>\n <ImageGallery modalContainer={env.getModalContainer}>\n <RootRenderer\n pathPrefix={pathPrefix || ''}\n schema={\n isPlainObject(schema)\n ? {\n type: 'page',\n ...(schema as any)\n }\n : schema\n }\n {...rest}\n rootStore={rootStore}\n resolveDefinitions={this.resolveDefinitions}\n location={location}\n data={data}\n env={env}\n classnames={theme.classnames}\n classPrefix={theme.classPrefix}\n locale={locale}\n translate={translate}\n />\n </ImageGallery>\n </LocaleContext.Provider>\n </ThemeContext.Provider>\n </RootStoreContext.Provider>\n );\n }\n}\n\nexport interface renderChildProps extends Partial<RendererProps> {\n env: RendererEnv;\n}\nexport type ReactElement = React.ReactNode[] | JSX.Element | null | false;\n\nexport function renderChildren(\n prefix: string,\n node: SchemaNode,\n props: renderChildProps\n): ReactElement {\n if (Array.isArray(node)) {\n return node.map((node, index) =>\n renderChild(`${prefix}/${index}`, node, {\n ...props,\n key: `${props.key ? `${props.key}-` : ''}${index}`\n })\n );\n }\n\n return renderChild(prefix, node, props);\n}\n\nexport function renderChild(\n prefix: string,\n node: SchemaNode,\n props: renderChildProps\n): ReactElement {\n if (Array.isArray(node)) {\n return renderChildren(prefix, node, props);\n }\n\n const typeofnode = typeof node;\n\n if (typeofnode === 'undefined' || node === null) {\n return null;\n }\n\n let schema: Schema =\n typeofnode === 'string' || typeofnode === 'number'\n ? {type: 'tpl', tpl: String(node)}\n : (node as Schema);\n\n const transform = props.propsTransform;\n\n if (transform) {\n props = {...props};\n delete props.propsTransform;\n\n props = transform(props);\n }\n\n return (\n <SchemaRenderer\n {...props}\n schema={schema}\n propKey={schema.key}\n $path={`${prefix ? `${prefix}/` : ''}${(schema && schema.type) || ''}`}\n />\n );\n}\n\nexport default Scoped(Root);\n"
|
12
12
|
]
|
package/lib/RootRenderer.js
CHANGED
@@ -102,7 +102,7 @@ var RootRenderer = /** @class */ (function (_super) {
|
|
102
102
|
var mailTo = (0, tpl_1.filter)(action.to, ctx);
|
103
103
|
var mailInfo = (0, mapValues_1.default)((0, pick_1.default)(action, 'to', 'cc', 'bcc', 'subject', 'body'), function (val) { return (0, tpl_1.filter)(val, ctx); });
|
104
104
|
var mailStr = qs_1.default.stringify(mailInfo);
|
105
|
-
var mailto = "mailto:"
|
105
|
+
var mailto = "mailto:" + mailTo + "?" + mailStr;
|
106
106
|
window.open(mailto);
|
107
107
|
}
|
108
108
|
else if (action.actionType === 'dialog') {
|
package/lib/RootRenderer.js.map
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
"/src/RootRenderer.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";;;;AAAA,yCAAoC;AAEpC,6DAA0B;AAC1B,4EAAwC;AACxC,8EAA2C;AAC3C,+BAA8C;AAC9C,mCAAuD;AACvD,qCAAmD;AAEnD,yCAAkE;AAClE,mCAAmC;AACnC,uDAAoB;AACpB,kEAA+B;AAC/B,4EAAyC;AAOzC;IAAkC,6CAAkC;IAIlE,sBAAY,KAAwB;QAApC,YACE,kBAAM,KAAK,CAAC,SAoBb;QAlBC,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC;YACpC,EAAE,EAAE,IAAA,aAAI,GAAE;YACV,IAAI,EAAE,KAAI,CAAC,KAAK,CAAC,KAAK;YACtB,SAAS,EAAE,gBAAS,CAAC,IAAI;YACzB,QAAQ,EAAE,EAAE;SACb,CAAe,CAAC;QAEjB,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChC,KAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE1C,IAAA,0BAAiB,EAAuC,KAAI,EAAE;YAC5D,cAAc;YACd,qBAAqB;YACrB,mBAAmB;YACnB,qBAAqB;YACrB,mBAAmB;YACnB,4BAA4B;SAC7B,CAAC,CAAC;;IACL,CAAC;IAED,wCAAiB,GAAjB;QACE,QAAQ,CAAC,gBAAgB,CACvB,kBAAkB,EAClB,IAAI,CAAC,0BAA0B,CAChC,CAAC;IACJ,CAAC;IAED,yCAAkB,GAAlB,UAAmB,SAA4B;QAC7C,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAEzB,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,EAAE;YACjC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SACjC;QAED,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,QAAQ,EAAE;YACzC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;SAC3C;IACH,CAAC;IAED,wCAAiB,GAAjB,UAAkB,KAAU,EAAE,SAAc;QAC1C,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC/C,CAAC;IAED,2CAAoB,GAApB;QACE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7C,QAAQ,CAAC,mBAAmB,CAC1B,kBAAkB,EAClB,IAAI,CAAC,0BAA0B,CAChC,CAAC;IACJ,CAAC;IAED,iDAA0B,GAA1B;QACE,IAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QAC3B,IAAI,QAAQ,CAAC,eAAe,KAAK,QAAQ,EAAE;YACzC,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,CAAC;gBACX,SAAS,EAAE,YAAY;aACxB,CAAC,CAAC;SACJ;aAAM,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE;YACjD,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,CAAC;gBACX,SAAS,EAAE,aAAa;aACzB,CAAC,CAAC;SACJ;IACH,CAAC;IAED,mCAAY,GAAZ,UACE,CAA4B,EAC5B,MAAc,EACd,GAAW,EACX,WAA4B,EAC5B,QAAyB;QAL3B,iBAsHC;;QAlHC,4BAAA,EAAA,mBAA4B;QAGtB,IAAA,KAA4B,IAAI,CAAC,KAAK,EAArC,GAAG,SAAA,EAAE,QAAQ,cAAA,EAAE,QAAQ,cAAc,CAAC;QAC7C,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAEzB,IACE,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC;YACjE,KAAK,EACL;YACA,OAAO;SACR;QAED,IAAM,MAAM,GAAG,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC;QACxC,IAAI,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE;YAClC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;SACpD;aAAM,IAAI,MAAM,CAAC,MAAM,EAAE;YACxB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAA,IAAI;gBACnC,IAAI,MAAM,GAAG,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBAC7C,MAAM;oBACJ,MAAM,CAAC,QAAQ;oBACf,MAAM,CAAC,QAAQ,iDAER,MAAM,KACT,MAAM,EAAE,SAAS,KAEnB,GAAG,CACJ,CAAC;YACN,CAAC,CAAC,CAAC;SACJ;aAAM,IACL,MAAM,CAAC,UAAU,KAAK,KAAK;YAC3B,MAAM,CAAC,UAAU,KAAK,MAAM;YAC5B,MAAM,CAAC,UAAU,KAAK,MAAM,EAC5B;YACA,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;gBACvB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;aAC5C;YAED,GAAG,CAAC,MAAM,CACR,IAAA,YAAM,EACJ,CAAC,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,IAAI,CAAW,EAClD,GAAG,EACH,OAAO,CACR,EACD,MAAM,EACN,GAAG,CACJ,CAAC;SACH;aAAM,IAAI,MAAM,CAAC,UAAU,KAAK,OAAO,EAAE;YACxC,IAAM,MAAM,GAAG,IAAA,YAAM,EAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YACtC,IAAM,QAAQ,GAAG,IAAA,mBAAS,EACxB,IAAA,cAAI,EAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,EAClD,UAAA,GAAG,IAAI,OAAA,IAAA,YAAM,EAAC,GAAG,EAAE,GAAG,CAAC,EAAhB,CAAgB,CACxB,CAAC;YACF,IAAM,OAAO,GAAG,YAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACvC,IAAM,MAAM,GAAG,
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
11
|
"import {observer} from 'mobx-react';\nimport {getEnv} from 'mobx-state-tree';\nimport React from 'react';\nimport Alert from './components/Alert2';\nimport Spinner from './components/Spinner';\nimport {renderChild, RootProps} from './Root';\nimport {IScopedContext, ScopedContext} from './Scoped';\nimport {IRootStore, RootStore} from './store/root';\nimport {Action} from './types';\nimport {bulkBindFunctions, guid, isVisible} from './utils/helper';\nimport {filter} from './utils/tpl';\nimport qs from 'qs';\nimport pick from 'lodash/pick';\nimport mapValues from 'lodash/mapValues';\n\nexport interface RootRendererProps extends RootProps {\n location?: any;\n}\n\n@observer\nexport class RootRenderer extends React.Component<RootRendererProps> {\n store: IRootStore;\n static contextType = ScopedContext;\n\n constructor(props: RootRendererProps) {\n super(props);\n\n this.store = props.rootStore.addStore({\n id: guid(),\n path: this.props.$path,\n storeType: RootStore.name,\n parentId: ''\n }) as IRootStore;\n\n this.store.initData(props.data);\n this.store.updateLocation(props.location);\n\n bulkBindFunctions<RootRenderer /*为毛 this 的类型自动识别不出来?*/>(this, [\n 'handleAction',\n 'handleDialogConfirm',\n 'handleDialogClose',\n 'handleDrawerConfirm',\n 'handleDrawerClose',\n 'handlePageVisibilityChange'\n ]);\n }\n\n componentDidMount() {\n document.addEventListener(\n 'visibilitychange',\n this.handlePageVisibilityChange\n );\n }\n\n componentDidUpdate(prevProps: RootRendererProps) {\n const props = this.props;\n\n if (props.data !== prevProps.data) {\n this.store.initData(props.data);\n }\n\n if (props.location !== prevProps.location) {\n this.store.updateLocation(props.location);\n }\n }\n\n componentDidCatch(error: any, errorInfo: any) {\n this.store.setRuntimeError(error, errorInfo);\n }\n\n componentWillUnmount() {\n this.props.rootStore.removeStore(this.store);\n document.removeEventListener(\n 'visibilitychange',\n this.handlePageVisibilityChange\n );\n }\n\n handlePageVisibilityChange() {\n const env = this.props.env;\n if (document.visibilityState === 'hidden') {\n env?.tracker({\n eventType: 'pageHidden'\n });\n } else if (document.visibilityState === 'visible') {\n env?.tracker({\n eventType: 'pageVisible'\n });\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 ) {\n const {env, messages, onAction} = this.props;\n const store = this.store;\n\n if (\n onAction?.(e, action, ctx, throwErrors, delegate || this.context) ===\n false\n ) {\n return;\n }\n\n const scoped = delegate || this.context;\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 if (\n action.actionType === 'url' ||\n action.actionType === 'link' ||\n action.actionType === 'jump'\n ) {\n if (!env || !env.jumpTo) {\n throw new Error('env.jumpTo is required!');\n }\n\n env.jumpTo(\n filter(\n (action.to || action.url || action.link) as string,\n ctx,\n '| raw'\n ),\n action,\n ctx\n );\n } else if (action.actionType === 'email') {\n const mailTo = filter(action.to, ctx);\n const mailInfo = mapValues(\n pick(action, 'to', 'cc', 'bcc', 'subject', 'body'),\n val => filter(val, ctx)\n );\n const mailStr = qs.stringify(mailInfo);\n const mailto = `mailto:${mailTo}?${mailStr}`;\n\n window.open(mailto);\n } else 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 === 'toast') {\n action.toast?.items?.forEach((item:any) => {\n env.notify(item.level || 'info', item.body ? renderChild('body', item.body, {\n ...this.props,\n data: ctx\n }) : '', {\n ...action.toast,\n ...item,\n title: item.title ? renderChild('title', item.title, {\n ...this.props,\n data: ctx\n }) : null,\n useMobileUI: env.useMobileUI\n })\n })\n } else if (action.actionType === 'ajax') {\n store.setCurrentAction(action);\n 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 &&\n this.reloadTarget(\n delegate || this.context,\n action.reload,\n store.data\n );\n })\n .catch(() => {});\n } else if (\n action.actionType === 'copy' &&\n (action.content || action.copy)\n ) {\n env.copy &&\n env.copy(filter(action.content || action.copy, ctx, '| raw'), {\n format: action.copyFormat\n });\n }\n }\n\n handleDialogConfirm(values: object[], action: Action, ...args: Array<any>) {\n const store = this.store;\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(true);\n }\n\n handleDialogClose(confirmed = false) {\n const store = this.store;\n store.closeDialog(confirmed);\n }\n\n handleDrawerConfirm(values: object[], action: Action, ...args: Array<any>) {\n const store = this.store;\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.store;\n store.closeDrawer();\n }\n\n openFeedback(dialog: any, ctx: any) {\n return new Promise(resolve => {\n const store = this.store;\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 reloadTarget(scoped: IScopedContext, target: string, data?: any) {\n scoped.reload(target, data);\n }\n\n render() {\n const {pathPrefix, schema, ...rest} = this.props;\n const store = this.store;\n\n if (store.runtimeError) {\n return (\n <Alert level=\"danger\">\n <h3>{this.store.runtimeError?.toString()}</h3>\n <pre>\n <code>{this.store.runtimeErrorStack.componentStack}</code>\n </pre>\n </Alert>\n );\n }\n\n return (\n <>\n {\n renderChild(pathPrefix!, schema, {\n ...rest,\n data: this.store.downStream,\n onAction: this.handleAction\n }) as JSX.Element\n }\n\n <Spinner size=\"lg\" overlay key=\"info\" show={store.loading} />\n\n {store.error ? (\n <Alert level=\"danger\" showCloseButton onClose={store.clearMessage}>\n {store.msg}\n </Alert>\n ) : null}\n\n {renderChild(\n 'dialog',\n {\n ...((store.action as Action) &&\n ((store.action as Action).dialog as object)),\n type: 'dialog'\n },\n {\n ...rest,\n key: 'dialog',\n data: store.dialogData,\n onConfirm: this.handleDialogConfirm,\n onClose: this.handleDialogClose,\n show: store.dialogOpen,\n onAction: this.handleAction\n }\n )}\n\n {renderChild(\n 'drawer',\n {\n ...((store.action as Action) &&\n ((store.action as Action).drawer as object)),\n type: 'drawer'\n },\n {\n ...rest,\n key: 'drawer',\n data: store.drawerData,\n onConfirm: this.handleDrawerConfirm,\n onClose: this.handleDrawerClose,\n show: store.drawerOpen,\n onAction: this.handleAction\n }\n )}\n </>\n );\n }\n}\n"
|
12
12
|
]
|
package/lib/SchemaRenderer.js
CHANGED
@@ -14,6 +14,8 @@ var debug_1 = require("./utils/debug");
|
|
14
14
|
var filter_schema_1 = (0, tslib_1.__importDefault)(require("./utils/filter-schema"));
|
15
15
|
var helper_1 = require("./utils/helper");
|
16
16
|
var SimpleMap_1 = require("./utils/SimpleMap");
|
17
|
+
var mobx_react_1 = require("mobx-react");
|
18
|
+
var mobx_state_tree_1 = require("mobx-state-tree");
|
17
19
|
var defaultOmitList = [
|
18
20
|
'type',
|
19
21
|
'name',
|
@@ -76,11 +78,21 @@ var BroadcastCmpt = /** @class */ (function (_super) {
|
|
76
78
|
};
|
77
79
|
BroadcastCmpt.prototype.render = function () {
|
78
80
|
var _a;
|
79
|
-
var _b = this.props, Component = _b.component, rest = (0, tslib_1.__rest)(_b, ["component"]);
|
81
|
+
var _b = this.props, Component = _b.component, rootStore = _b.rootStore, rest = (0, tslib_1.__rest)(_b, ["component", "rootStore"]);
|
82
|
+
var visible = (0, mobx_state_tree_1.isAlive)(rootStore)
|
83
|
+
? rootStore.visibleState[rest.$schema.id || rest.$path]
|
84
|
+
: true;
|
85
|
+
var disable = (0, mobx_state_tree_1.isAlive)(rootStore)
|
86
|
+
? rootStore.disableState[rest.$schema.id || rest.$path]
|
87
|
+
: false;
|
80
88
|
var isClassComponent = (_a = Component.prototype) === null || _a === void 0 ? void 0 : _a.isReactComponent;
|
89
|
+
if (disable) {
|
90
|
+
rest.disabled = true;
|
91
|
+
}
|
81
92
|
// 函数组件不支持 ref https://reactjs.org/docs/refs-and-the-dom.html#refs-and-function-components
|
82
|
-
return isClassComponent ? (react_1.default.createElement(Component, (0, tslib_1.__assign)({ ref: this.childRef }, rest, { dispatchEvent: this.dispatchEvent }))) : (react_1.default.createElement(Component, (0, tslib_1.__assign)({}, rest, { dispatchEvent: this.dispatchEvent })));
|
93
|
+
return visible !== false ? (isClassComponent ? (react_1.default.createElement(Component, (0, tslib_1.__assign)({ ref: this.childRef }, rest, { rootStore: rootStore, dispatchEvent: this.dispatchEvent }))) : (react_1.default.createElement(Component, (0, tslib_1.__assign)({}, rest, { rootStore: rootStore, dispatchEvent: this.dispatchEvent })))) : null;
|
83
94
|
};
|
95
|
+
var _a;
|
84
96
|
BroadcastCmpt.contextType = Scoped_1.ScopedContext;
|
85
97
|
(0, tslib_1.__decorate)([
|
86
98
|
helper_1.autobind,
|
@@ -88,6 +100,10 @@ var BroadcastCmpt = /** @class */ (function (_super) {
|
|
88
100
|
(0, tslib_1.__metadata)("design:paramtypes", [Object]),
|
89
101
|
(0, tslib_1.__metadata)("design:returntype", void 0)
|
90
102
|
], BroadcastCmpt.prototype, "childRef", null);
|
103
|
+
BroadcastCmpt = (0, tslib_1.__decorate)([
|
104
|
+
mobx_react_1.observer,
|
105
|
+
(0, tslib_1.__metadata)("design:paramtypes", [Object, typeof (_a = typeof Scoped_1.IScopedContext !== "undefined" && Scoped_1.IScopedContext) === "function" ? _a : Object])
|
106
|
+
], BroadcastCmpt);
|
91
107
|
return BroadcastCmpt;
|
92
108
|
}(react_1.default.Component));
|
93
109
|
var SchemaRenderer = /** @class */ (function (_super) {
|
@@ -133,10 +149,10 @@ var SchemaRenderer = /** @class */ (function (_super) {
|
|
133
149
|
if ((schema === null || schema === void 0 ? void 0 : schema.type) &&
|
134
150
|
(force ||
|
135
151
|
!this.renderer ||
|
136
|
-
this.rendererKey !==
|
152
|
+
this.rendererKey !== schema.type + "-" + schema.$$id)) {
|
137
153
|
var rendererResolver = props.env.rendererResolver || factory_1.resolveRenderer;
|
138
154
|
this.renderer = rendererResolver(path, schema, props);
|
139
|
-
this.rendererKey =
|
155
|
+
this.rendererKey = schema.type + "-" + schema.$$id;
|
140
156
|
}
|
141
157
|
else {
|
142
158
|
// 自定义组件如果在节点设置了 label name 什么的,就用 formItem 包一层
|
@@ -179,7 +195,7 @@ var SchemaRenderer = /** @class */ (function (_super) {
|
|
179
195
|
Component.propsList &&
|
180
196
|
omitList.push.apply(omitList, Component.propsList);
|
181
197
|
}
|
182
|
-
return (0, Root_1.renderChild)(""
|
198
|
+
return (0, Root_1.renderChild)("" + $path + (region ? "/" + region : ''), node || '', (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, (0, omit_1.default)(rest, omitList)), subProps), { data: subProps.data || rest.data, env: env }));
|
183
199
|
};
|
184
200
|
SchemaRenderer.prototype.reRender = function () {
|
185
201
|
this.resolveRenderer(this.props, true);
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/SchemaRenderer.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": "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",
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"import difference from 'lodash/difference';\nimport omit from 'lodash/omit';\nimport React from 'react';\nimport LazyComponent from './components/LazyComponent';\nimport {\n filterSchema,\n loadRenderer,\n RendererComponent,\n RendererConfig,\n RendererEnv,\n RendererProps,\n resolveRenderer\n} from './factory';\nimport {asFormItem} from './renderers/Form/Item';\nimport {renderChild, renderChildren} from './Root';\nimport {IScopedContext, ScopedContext} from './Scoped';\nimport {Schema, SchemaNode} from './types';\nimport {DebugWrapper, enableAMISDebug} from './utils/debug';\nimport getExprProperties from './utils/filter-schema';\nimport {anyChanged, chainEvents, autobind} from './utils/helper';\nimport {SimpleMap} from './utils/SimpleMap';\n\nimport type {RendererEvent} from './utils/renderer-event';\n\ninterface SchemaRendererProps extends Partial<RendererProps> {\n schema: Schema;\n $path: string;\n env: RendererEnv;\n}\n\ninterface BroadcastCmptProps extends RendererProps {\n component: RendererComponent;\n}\n\nconst defaultOmitList = [\n 'type',\n 'name',\n '$ref',\n 'className',\n 'data',\n 'children',\n 'ref',\n 'visible',\n 'visibleOn',\n 'hidden',\n 'hiddenOn',\n 'disabled',\n 'disabledOn',\n 'component',\n 'detectField',\n 'defaultValue',\n 'defaultData',\n 'required',\n 'requiredOn',\n 'syncSuperStore',\n 'mode',\n 'body'\n];\n\nconst componentCache: SimpleMap = new SimpleMap();\n\nclass BroadcastCmpt extends React.Component<BroadcastCmptProps> {\n ref: any;\n unbindEvent: (() => void) | undefined = undefined;\n static contextType = ScopedContext;\n\n constructor(props: BroadcastCmptProps, context: IScopedContext) {\n super(props);\n this.dispatchEvent = this.dispatchEvent.bind(this);\n }\n\n componentDidMount() {\n const {env} = this.props;\n this.unbindEvent = env.bindEvent(this.ref);\n }\n\n componentWillUnmount() {\n this.unbindEvent?.();\n }\n\n getWrappedInstance() {\n return this.ref;\n }\n\n async dispatchEvent(\n e: React.MouseEvent<any>,\n data: any\n ): Promise<RendererEvent<any> | undefined> {\n return await this.props.env.dispatchEvent(e, this.ref, this.context, data);\n }\n\n @autobind\n childRef(ref: any) {\n while (ref && ref.getWrappedInstance) {\n ref = ref.getWrappedInstance();\n }\n\n this.ref = ref;\n }\n\n render() {\n const {component: Component, ...rest} = this.props;\n\n const isClassComponent = Component.prototype?.isReactComponent;\n\n // 函数组件不支持 ref https://reactjs.org/docs/refs-and-the-dom.html#refs-and-function-components\n\n return isClassComponent ? (\n <Component\n ref={this.childRef}\n {...rest}\n dispatchEvent={this.dispatchEvent}\n />\n ) : (\n <Component {...rest} dispatchEvent={this.dispatchEvent} />\n );\n }\n}\n\nexport class SchemaRenderer extends React.Component<SchemaRendererProps, any> {\n static displayName: string = 'Renderer';\n\n rendererKey = '';\n renderer: RendererConfig | null;\n ref: any;\n\n schema: any;\n path: string;\n\n constructor(props: SchemaRendererProps) {\n super(props);\n this.refFn = this.refFn.bind(this);\n this.renderChild = this.renderChild.bind(this);\n this.reRender = this.reRender.bind(this);\n this.resolveRenderer(this.props);\n }\n\n // 限制:只有 schema 除外的 props 变化,或者 schema 里面的某个成员值发生变化才更新。\n shouldComponentUpdate(nextProps: SchemaRendererProps) {\n const props = this.props;\n const list: Array<string> = difference(Object.keys(nextProps), [\n 'schema',\n 'scope'\n ]);\n\n if (\n difference(Object.keys(props), ['schema', 'scope']).length !==\n list.length ||\n anyChanged(list, this.props, nextProps)\n ) {\n return true;\n } else {\n const list: Array<string> = Object.keys(nextProps.schema);\n\n if (\n Object.keys(props.schema).length !== list.length ||\n anyChanged(list, props.schema, nextProps.schema)\n ) {\n return true;\n }\n }\n\n return false;\n }\n\n resolveRenderer(props: SchemaRendererProps, force = false): any {\n let schema = props.schema;\n let path = props.$path;\n\n if (schema && schema.$ref) {\n schema = {\n ...props.resolveDefinitions(schema.$ref),\n ...schema\n };\n\n path = path.replace(/(?!.*\\/).*/, schema.type);\n }\n\n if (\n schema?.type &&\n (force ||\n !this.renderer ||\n this.rendererKey !== `${schema.type}-${schema.$$id}`)\n ) {\n const rendererResolver = props.env.rendererResolver || resolveRenderer;\n this.renderer = rendererResolver(path, schema, props);\n this.rendererKey = `${schema.type}-${schema.$$id}`;\n } else {\n // 自定义组件如果在节点设置了 label name 什么的,就用 formItem 包一层\n // 至少自动支持了 valdiations, label, description 等逻辑。\n if (schema.children && !schema.component && schema.asFormItem) {\n schema.component = PlaceholderComponent;\n schema.renderChildren = schema.children;\n delete schema.children;\n }\n\n if (\n schema.component &&\n !schema.component.wrapedAsFormItem &&\n schema.asFormItem\n ) {\n const cache = componentCache.get(schema.component);\n\n if (cache) {\n schema.component = cache;\n } else {\n const cache = asFormItem({\n strictMode: false,\n ...schema.asFormItem\n })(schema.component);\n componentCache.set(schema.component, cache);\n cache.wrapedAsFormItem = true;\n schema.component = cache;\n }\n }\n }\n\n return {path, schema};\n }\n\n getWrappedInstance() {\n return this.ref;\n }\n\n refFn(ref: any) {\n this.ref = ref;\n }\n\n renderChild(\n region: string,\n node?: SchemaNode,\n subProps: {\n data?: object;\n [propName: string]: any;\n } = {}\n ) {\n let {schema: _, $path: __, env, ...rest} = this.props;\n let {path: $path} = this.resolveRenderer(this.props);\n\n const omitList = defaultOmitList.concat();\n if (this.renderer) {\n const Component = this.renderer.component;\n Component.propsList &&\n omitList.push.apply(omitList, Component.propsList as Array<string>);\n }\n\n return renderChild(`${$path}${region ? `/${region}` : ''}`, node || '', {\n ...omit(rest, omitList),\n ...subProps,\n data: subProps.data || rest.data,\n env: env\n });\n }\n\n reRender() {\n this.resolveRenderer(this.props, true);\n this.forceUpdate();\n }\n\n render(): JSX.Element | null {\n let {$path: _, schema: __, ...rest} = this.props;\n\n if (__ == null) {\n return null;\n }\n\n let {path: $path, schema} = this.resolveRenderer(this.props);\n const theme = this.props.env.theme;\n\n if (Array.isArray(schema)) {\n return renderChildren($path, schema as any, rest) as JSX.Element;\n }\n\n const detectData =\n schema &&\n (schema.detectField === '&' ? rest : rest[schema.detectField || 'data']);\n const exprProps: any = detectData\n ? getExprProperties(schema, detectData, undefined, rest)\n : {};\n\n if (\n exprProps &&\n (exprProps.hidden ||\n exprProps.visible === false ||\n schema.hidden ||\n schema.visible === false ||\n rest.hidden ||\n rest.visible === false)\n ) {\n (rest as any).invisible = true;\n }\n\n if (schema.children) {\n return rest.invisible\n ? null\n : React.isValidElement(schema.children)\n ? schema.children\n : (schema.children as Function)({\n ...rest,\n ...exprProps,\n $path: $path,\n $schema: schema,\n render: this.renderChild,\n forwardedRef: this.refFn\n });\n } else if (typeof schema.component === 'function') {\n const isSFC = !(schema.component.prototype instanceof React.Component);\n const {\n data: defaultData,\n value: defaultValue,\n activeKey: defaultActiveKey,\n key: propKey,\n ...restSchema\n } = schema;\n return rest.invisible\n ? null\n : React.createElement(schema.component as any, {\n ...rest,\n ...restSchema,\n ...exprProps,\n defaultData,\n defaultValue,\n defaultActiveKey,\n propKey,\n $path: $path,\n $schema: schema,\n ref: isSFC ? undefined : this.refFn,\n forwardedRef: isSFC ? this.refFn : undefined,\n render: this.renderChild\n });\n } else if (Object.keys(schema).length === 0) {\n return null;\n } else if (!this.renderer) {\n return rest.invisible ? null : (\n <LazyComponent\n {...rest}\n {...exprProps}\n getComponent={async () => {\n const result = await rest.env.loadRenderer(\n schema,\n $path,\n this.reRender\n );\n if (result && typeof result === 'function') {\n return result;\n } else if (result && React.isValidElement(result)) {\n return () => result;\n }\n\n this.reRender();\n return () => loadRenderer(schema, $path);\n }}\n $path={$path}\n $schema={schema}\n retry={this.reRender}\n />\n );\n }\n\n const renderer = this.renderer as RendererConfig;\n schema = filterSchema(schema, renderer, rest);\n const {\n data: defaultData,\n value: defaultValue,\n key: propKey,\n activeKey: defaultActiveKey,\n ...restSchema\n } = schema;\n const Component = renderer.component;\n // 原来表单项的 visible: false 和 hidden: true 表单项的值和验证是有效的\n // 而 visibleOn 和 hiddenOn 是无效的,\n // 这个本来就是个bug,但是已经被广泛使用了\n // 我只能继续实现这个bug了\n if (\n rest.invisible &&\n (exprProps.hidden ||\n exprProps.visible === false ||\n !renderer.isFormItem ||\n (schema.visible !== false && !schema.hidden))\n ) {\n return null;\n }\n\n const component = (\n <BroadcastCmpt\n {...theme.getRendererConfig(renderer.name)}\n {...restSchema}\n {...chainEvents(rest, restSchema)}\n {...exprProps}\n defaultData={restSchema.defaultData ?? defaultData}\n defaultValue={restSchema.defaultValue ?? defaultValue}\n defaultActiveKey={defaultActiveKey}\n propKey={propKey}\n $path={$path}\n $schema={{...schema, ...exprProps}}\n ref={this.refFn}\n render={this.renderChild}\n component={Component}\n />\n );\n\n return enableAMISDebug ? (\n <DebugWrapper renderer={renderer}>{component}</DebugWrapper>\n ) : (\n component\n );\n }\n}\n\nclass PlaceholderComponent extends React.Component {\n render() {\n const {renderChildren, ...rest} = this.props as any;\n\n if (typeof renderChildren === 'function') {\n return renderChildren(rest);\n }\n\n return null;\n }\n}\n"
|
11
|
+
"import difference from 'lodash/difference';\nimport omit from 'lodash/omit';\nimport React from 'react';\nimport LazyComponent from './components/LazyComponent';\nimport {\n filterSchema,\n loadRenderer,\n RendererComponent,\n RendererConfig,\n RendererEnv,\n RendererProps,\n resolveRenderer\n} from './factory';\nimport {asFormItem} from './renderers/Form/Item';\nimport {renderChild, renderChildren} from './Root';\nimport {IScopedContext, ScopedContext} from './Scoped';\nimport {Schema, SchemaNode} from './types';\nimport {DebugWrapper, enableAMISDebug} from './utils/debug';\nimport getExprProperties from './utils/filter-schema';\nimport {anyChanged, chainEvents, autobind} from './utils/helper';\nimport {SimpleMap} from './utils/SimpleMap';\n\nimport type {RendererEvent} from './utils/renderer-event';\nimport {observer} from 'mobx-react';\nimport {isAlive} from 'mobx-state-tree';\n\ninterface SchemaRendererProps extends Partial<RendererProps> {\n schema: Schema;\n $path: string;\n env: RendererEnv;\n}\n\ninterface BroadcastCmptProps extends RendererProps {\n component: RendererComponent;\n}\n\nconst defaultOmitList = [\n 'type',\n 'name',\n '$ref',\n 'className',\n 'data',\n 'children',\n 'ref',\n 'visible',\n 'visibleOn',\n 'hidden',\n 'hiddenOn',\n 'disabled',\n 'disabledOn',\n 'component',\n 'detectField',\n 'defaultValue',\n 'defaultData',\n 'required',\n 'requiredOn',\n 'syncSuperStore',\n 'mode',\n 'body'\n];\n\nconst componentCache: SimpleMap = new SimpleMap();\n\n@observer\nclass BroadcastCmpt extends React.Component<BroadcastCmptProps> {\n ref: any;\n unbindEvent: (() => void) | undefined = undefined;\n static contextType = ScopedContext;\n\n constructor(props: BroadcastCmptProps, context: IScopedContext) {\n super(props);\n this.dispatchEvent = this.dispatchEvent.bind(this);\n }\n\n componentDidMount() {\n const {env} = this.props;\n this.unbindEvent = env.bindEvent(this.ref);\n }\n\n componentWillUnmount() {\n this.unbindEvent?.();\n }\n\n getWrappedInstance() {\n return this.ref;\n }\n\n async dispatchEvent(\n e: React.MouseEvent<any>,\n data: any\n ): Promise<RendererEvent<any> | undefined> {\n return await this.props.env.dispatchEvent(e, this.ref, this.context, data);\n }\n\n @autobind\n childRef(ref: any) {\n while (ref && ref.getWrappedInstance) {\n ref = ref.getWrappedInstance();\n }\n\n this.ref = ref;\n }\n\n render() {\n const {component: Component, rootStore, ...rest} = this.props;\n const visible = isAlive(rootStore)\n ? rootStore.visibleState[rest.$schema.id || rest.$path]\n : true;\n const disable = isAlive(rootStore)\n ? rootStore.disableState[rest.$schema.id || rest.$path]\n : false;\n const isClassComponent = Component.prototype?.isReactComponent;\n\n if (disable) {\n (rest as any).disabled = true;\n }\n\n // 函数组件不支持 ref https://reactjs.org/docs/refs-and-the-dom.html#refs-and-function-components\n return visible !== false ? (\n isClassComponent ? (\n <Component\n ref={this.childRef}\n {...rest}\n rootStore={rootStore}\n dispatchEvent={this.dispatchEvent}\n />\n ) : (\n <Component\n {...rest}\n rootStore={rootStore}\n dispatchEvent={this.dispatchEvent}\n />\n )\n ) : null;\n }\n}\n\nexport class SchemaRenderer extends React.Component<SchemaRendererProps, any> {\n static displayName: string = 'Renderer';\n\n rendererKey = '';\n renderer: RendererConfig | null;\n ref: any;\n\n schema: any;\n path: string;\n\n constructor(props: SchemaRendererProps) {\n super(props);\n this.refFn = this.refFn.bind(this);\n this.renderChild = this.renderChild.bind(this);\n this.reRender = this.reRender.bind(this);\n this.resolveRenderer(this.props);\n }\n\n // 限制:只有 schema 除外的 props 变化,或者 schema 里面的某个成员值发生变化才更新。\n shouldComponentUpdate(nextProps: SchemaRendererProps) {\n const props = this.props;\n const list: Array<string> = difference(Object.keys(nextProps), [\n 'schema',\n 'scope'\n ]);\n\n if (\n difference(Object.keys(props), ['schema', 'scope']).length !==\n list.length ||\n anyChanged(list, this.props, nextProps)\n ) {\n return true;\n } else {\n const list: Array<string> = Object.keys(nextProps.schema);\n\n if (\n Object.keys(props.schema).length !== list.length ||\n anyChanged(list, props.schema, nextProps.schema)\n ) {\n return true;\n }\n }\n\n return false;\n }\n\n resolveRenderer(props: SchemaRendererProps, force = false): any {\n let schema = props.schema;\n let path = props.$path;\n\n if (schema && schema.$ref) {\n schema = {\n ...props.resolveDefinitions(schema.$ref),\n ...schema\n };\n\n path = path.replace(/(?!.*\\/).*/, schema.type);\n }\n\n if (\n schema?.type &&\n (force ||\n !this.renderer ||\n this.rendererKey !== `${schema.type}-${schema.$$id}`)\n ) {\n const rendererResolver = props.env.rendererResolver || resolveRenderer;\n this.renderer = rendererResolver(path, schema, props);\n this.rendererKey = `${schema.type}-${schema.$$id}`;\n } else {\n // 自定义组件如果在节点设置了 label name 什么的,就用 formItem 包一层\n // 至少自动支持了 valdiations, label, description 等逻辑。\n if (schema.children && !schema.component && schema.asFormItem) {\n schema.component = PlaceholderComponent;\n schema.renderChildren = schema.children;\n delete schema.children;\n }\n\n if (\n schema.component &&\n !schema.component.wrapedAsFormItem &&\n schema.asFormItem\n ) {\n const cache = componentCache.get(schema.component);\n\n if (cache) {\n schema.component = cache;\n } else {\n const cache = asFormItem({\n strictMode: false,\n ...schema.asFormItem\n })(schema.component);\n componentCache.set(schema.component, cache);\n cache.wrapedAsFormItem = true;\n schema.component = cache;\n }\n }\n }\n\n return {path, schema};\n }\n\n getWrappedInstance() {\n return this.ref;\n }\n\n refFn(ref: any) {\n this.ref = ref;\n }\n\n renderChild(\n region: string,\n node?: SchemaNode,\n subProps: {\n data?: object;\n [propName: string]: any;\n } = {}\n ) {\n let {schema: _, $path: __, env, ...rest} = this.props;\n let {path: $path} = this.resolveRenderer(this.props);\n\n const omitList = defaultOmitList.concat();\n if (this.renderer) {\n const Component = this.renderer.component;\n Component.propsList &&\n omitList.push.apply(omitList, Component.propsList as Array<string>);\n }\n\n return renderChild(`${$path}${region ? `/${region}` : ''}`, node || '', {\n ...omit(rest, omitList),\n ...subProps,\n data: subProps.data || rest.data,\n env: env\n });\n }\n\n reRender() {\n this.resolveRenderer(this.props, true);\n this.forceUpdate();\n }\n\n render(): JSX.Element | null {\n let {$path: _, schema: __, ...rest} = this.props;\n\n if (__ == null) {\n return null;\n }\n\n let {path: $path, schema} = this.resolveRenderer(this.props);\n const theme = this.props.env.theme;\n\n if (Array.isArray(schema)) {\n return renderChildren($path, schema as any, rest) as JSX.Element;\n }\n\n const detectData =\n schema &&\n (schema.detectField === '&' ? rest : rest[schema.detectField || 'data']);\n const exprProps: any = detectData\n ? getExprProperties(schema, detectData, undefined, rest)\n : {};\n\n if (\n exprProps &&\n (exprProps.hidden ||\n exprProps.visible === false ||\n schema.hidden ||\n schema.visible === false ||\n rest.hidden ||\n rest.visible === false)\n ) {\n (rest as any).invisible = true;\n }\n\n if (schema.children) {\n return rest.invisible\n ? null\n : React.isValidElement(schema.children)\n ? schema.children\n : (schema.children as Function)({\n ...rest,\n ...exprProps,\n $path: $path,\n $schema: schema,\n render: this.renderChild,\n forwardedRef: this.refFn\n });\n } else if (typeof schema.component === 'function') {\n const isSFC = !(schema.component.prototype instanceof React.Component);\n const {\n data: defaultData,\n value: defaultValue,\n activeKey: defaultActiveKey,\n key: propKey,\n ...restSchema\n } = schema;\n return rest.invisible\n ? null\n : React.createElement(schema.component as any, {\n ...rest,\n ...restSchema,\n ...exprProps,\n defaultData,\n defaultValue,\n defaultActiveKey,\n propKey,\n $path: $path,\n $schema: schema,\n ref: isSFC ? undefined : this.refFn,\n forwardedRef: isSFC ? this.refFn : undefined,\n render: this.renderChild\n });\n } else if (Object.keys(schema).length === 0) {\n return null;\n } else if (!this.renderer) {\n return rest.invisible ? null : (\n <LazyComponent\n {...rest}\n {...exprProps}\n getComponent={async () => {\n const result = await rest.env.loadRenderer(\n schema,\n $path,\n this.reRender\n );\n if (result && typeof result === 'function') {\n return result;\n } else if (result && React.isValidElement(result)) {\n return () => result;\n }\n\n this.reRender();\n return () => loadRenderer(schema, $path);\n }}\n $path={$path}\n $schema={schema}\n retry={this.reRender}\n />\n );\n }\n\n const renderer = this.renderer as RendererConfig;\n schema = filterSchema(schema, renderer, rest);\n const {\n data: defaultData,\n value: defaultValue,\n key: propKey,\n activeKey: defaultActiveKey,\n ...restSchema\n } = schema;\n const Component = renderer.component;\n // 原来表单项的 visible: false 和 hidden: true 表单项的值和验证是有效的\n // 而 visibleOn 和 hiddenOn 是无效的,\n // 这个本来就是个bug,但是已经被广泛使用了\n // 我只能继续实现这个bug了\n if (\n rest.invisible &&\n (exprProps.hidden ||\n exprProps.visible === false ||\n !renderer.isFormItem ||\n (schema.visible !== false && !schema.hidden))\n ) {\n return null;\n }\n\n const component = (\n <BroadcastCmpt\n {...theme.getRendererConfig(renderer.name)}\n {...restSchema}\n {...chainEvents(rest, restSchema)}\n {...exprProps}\n defaultData={restSchema.defaultData ?? defaultData}\n defaultValue={restSchema.defaultValue ?? defaultValue}\n defaultActiveKey={defaultActiveKey}\n propKey={propKey}\n $path={$path}\n $schema={{...schema, ...exprProps}}\n ref={this.refFn}\n render={this.renderChild}\n component={Component}\n />\n );\n\n return enableAMISDebug ? (\n <DebugWrapper renderer={renderer}>{component}</DebugWrapper>\n ) : (\n component\n );\n }\n}\n\nclass PlaceholderComponent extends React.Component {\n render() {\n const {renderChildren, ...rest} = this.props as any;\n\n if (typeof renderChildren === 'function') {\n return renderChildren(rest);\n }\n\n return null;\n }\n}\n"
|
12
12
|
]
|
13
13
|
}
|
package/lib/Scoped.js
CHANGED
@@ -215,7 +215,7 @@ function HocScoped(ComposedComponent) {
|
|
215
215
|
return (react_1.default.createElement(exports.ScopedContext.Provider, { value: this.scoped },
|
216
216
|
react_1.default.createElement(ComposedComponent, (0, tslib_1.__assign)({}, rest /* todo */, { ref: this.childRef }))));
|
217
217
|
};
|
218
|
-
ScopedComponent.displayName = "Scoped("
|
218
|
+
ScopedComponent.displayName = "Scoped(" + (ComposedComponent.displayName || ComposedComponent.name) + ")";
|
219
219
|
ScopedComponent.contextType = exports.ScopedContext;
|
220
220
|
ScopedComponent.ComposedComponent = ComposedComponent;
|
221
221
|
(0, tslib_1.__decorate)([
|
package/lib/Scoped.js.map
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
"/src/Scoped.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": "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
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
11
|
"/**\n * @file 用来创建一个域,在这个域里面会把里面的运行时实例注册进来,方便组件之间的通信。\n * @author fex\n */\n\nimport React from 'react';\nimport find from 'lodash/find';\nimport hoistNonReactStatic from 'hoist-non-react-statics';\nimport {dataMapping} from './utils/tpl-builtin';\nimport {RendererEnv, RendererProps} from './factory';\nimport {\n noop,\n autobind,\n qsstringify,\n qsparse,\n createObject,\n findTree,\n TreeItem\n} from './utils/helper';\nimport {RendererData, Action} from './types';\n\nexport interface ScopedComponentType extends React.Component<RendererProps> {\n focus?: () => void;\n doAction?: (\n action: Action,\n data: RendererData,\n throwErrors?: boolean\n ) => void;\n receive?: (values: RendererData, subPath?: string) => void;\n reload?: (\n subPath?: string,\n query?: RendererData | null,\n ctx?: RendererData\n ) => void;\n context: any;\n}\n\nexport interface IScopedContext {\n parent?: AliasIScopedContext;\n children?: AliasIScopedContext[];\n registerComponent: (component: ScopedComponentType) => void;\n unRegisterComponent: (component: ScopedComponentType) => void;\n getComponentByName: (name: string) => ScopedComponentType;\n getComponentById: (id: string) => ScopedComponentType | undefined;\n getComponents: () => Array<ScopedComponentType>;\n reload: (target: string, ctx: RendererData) => void;\n send: (target: string, ctx: RendererData) => void;\n close: (target: string) => void;\n closeById: (target: string) => void;\n}\ntype AliasIScopedContext = IScopedContext;\nexport const ScopedContext = React.createContext(createScopedTools(''));\n\nfunction createScopedTools(\n path?: string,\n parent?: AliasIScopedContext,\n env?: RendererEnv\n): IScopedContext {\n const components: Array<ScopedComponentType> = [];\n const self = {\n parent,\n registerComponent(component: ScopedComponentType) {\n // 不要把自己注册在自己的 Scoped 上,自己的 Scoped 是给子节点们注册的。\n if (component.props.$path === path && parent) {\n return parent.registerComponent(component);\n }\n\n if (!~components.indexOf(component)) {\n components.push(component);\n }\n },\n\n unRegisterComponent(component: ScopedComponentType) {\n // 自己本身实际上注册在父级 Scoped 上。\n if (component.props.$path === path && parent) {\n return parent.unRegisterComponent(component);\n }\n\n const idx = components.indexOf(component);\n\n if (~idx) {\n components.splice(idx, 1);\n }\n },\n\n getComponentByName(name: string) {\n if (~name.indexOf('.')) {\n const paths = name.split('.');\n const len = paths.length;\n\n return paths.reduce((scope, name, idx) => {\n if (scope && scope.getComponentByName) {\n const result: ScopedComponentType = scope.getComponentByName(name);\n return result && idx < len - 1 ? result.context : result;\n }\n\n return null;\n }, this);\n }\n\n const resolved = find(\n components,\n component =>\n component.props.name === name || component.props.id === name\n );\n return resolved || (parent && parent.getComponentByName(name));\n },\n\n getComponentById(id: string) {\n let root: AliasIScopedContext = this;\n // 找到顶端scoped\n while (root.parent) {\n root = root.parent;\n }\n\n // 向下查找\n let component = undefined;\n findTree([root], (item: TreeItem) =>\n item.getComponents().find((cmpt: ScopedComponentType) => {\n if (cmpt.props.id === id) {\n component = cmpt;\n return true;\n }\n return false;\n })\n ) as ScopedComponentType | undefined;\n return component;\n },\n\n getComponents() {\n return components.concat();\n },\n\n reload(target: string | Array<string>, ctx: any) {\n const scoped = this;\n\n let targets =\n typeof target === 'string' ? target.split(/\\s*,\\s*/) : target;\n targets.forEach(name => {\n const idx2 = name.indexOf('?');\n let query = null;\n\n if (~idx2) {\n const queryObj = qsparse(\n name\n .substring(idx2 + 1)\n .replace(\n /\\$\\{(.*?)\\}/,\n (_, match) => '${' + encodeURIComponent(match) + '}'\n )\n );\n query = dataMapping(queryObj, ctx);\n name = name.substring(0, idx2);\n }\n\n const idx = name.indexOf('.');\n let subPath = '';\n\n if (~idx) {\n subPath = name.substring(1 + idx);\n name = name.substring(0, idx);\n }\n\n if (name === 'window') {\n if (query) {\n const link = location.pathname + '?' + qsstringify(query);\n env ? env.updateLocation(link, true) : location.replace(link);\n } else {\n location.reload();\n }\n } else {\n const component = scoped.getComponentByName(name);\n component &&\n component.reload &&\n component.reload(subPath, query, ctx);\n }\n });\n },\n\n send(receive: string | Array<string>, values: object) {\n const scoped = this;\n let receives =\n typeof receive === 'string' ? receive.split(/\\s*,\\s*/) : receive;\n\n // todo 没找到做提示!\n receives.forEach(name => {\n const askIdx = name.indexOf('?');\n if (~askIdx) {\n const query = name.substring(askIdx + 1);\n const queryObj = qsparse(\n query.replace(\n /\\$\\{(.*?)\\}/,\n (_, match) => '${' + encodeURIComponent(match) + '}'\n )\n );\n\n name = name.substring(0, askIdx);\n values = dataMapping(queryObj, values);\n }\n\n const idx = name.indexOf('.');\n let subPath = '';\n\n if (~idx) {\n subPath = name.substring(1 + idx);\n name = name.substring(0, idx);\n }\n\n const component = scoped.getComponentByName(name);\n\n if (component && component.receive) {\n component.receive(values, subPath);\n } else if (name === 'window' && env && env.updateLocation) {\n const query = {\n ...(location.search ? qsparse(location.search.substring(1)) : {}),\n ...values\n };\n const link = location.pathname + '?' + qsstringify(query);\n env.updateLocation(link, true);\n }\n });\n },\n\n /**\n * 主要是用来关闭指定弹框的\n *\n * @param target 目标 name\n */\n close(target: string | boolean) {\n const scoped = this;\n\n if (typeof target === 'string') {\n // 过滤已经关掉的,当用户 close 配置多个弹框 name 时会出现这种情况\n target\n .split(/\\s*,\\s*/)\n .map(name => scoped.getComponentByName(name))\n .filter(component => component && component.props.show)\n .forEach(closeDialog);\n }\n },\n\n /**\n * 关闭指定id的弹窗\n * @param id\n */\n closeById(id: string) {\n const scoped = this;\n const component: any = scoped.getComponentById(id);\n if (component && component.props.show) {\n closeDialog(component);\n }\n }\n };\n\n if (!parent) {\n return self;\n }\n\n !parent.children && (parent.children = []);\n\n // 把孩子带上\n parent.children!.push(self);\n\n return self;\n}\n\nfunction closeDialog(component: ScopedComponentType) {\n (component.context as IScopedContext)\n .getComponents()\n .filter(\n item =>\n item &&\n (item.props.type === 'dialog' || item.props.type === 'drawer') &&\n item.props.show\n )\n .forEach(closeDialog);\n component.props.onClose && component.props.onClose();\n}\n\nexport function HocScoped<\n T extends {\n $path?: string;\n env: RendererEnv;\n }\n>(\n ComposedComponent: React.ComponentType<T>\n): React.ComponentType<\n T & {\n scopeRef?: (ref: any) => void;\n }\n> & {\n ComposedComponent: React.ComponentType<T>;\n} {\n type ScopedProps = T & {\n scopeRef?: (ref: any) => void;\n };\n class ScopedComponent extends React.Component<ScopedProps> {\n static displayName = `Scoped(${\n ComposedComponent.displayName || ComposedComponent.name\n })`;\n static contextType = ScopedContext;\n static ComposedComponent = ComposedComponent;\n ref: any;\n scoped?: IScopedContext;\n\n constructor(props: ScopedProps, context: IScopedContext) {\n super(props);\n\n this.scoped = createScopedTools(\n this.props.$path,\n context,\n this.props.env\n );\n\n const scopeRef = props.scopeRef;\n scopeRef && scopeRef(this.scoped);\n }\n\n getWrappedInstance() {\n return this.ref;\n }\n\n @autobind\n childRef(ref: any) {\n while (ref && ref.getWrappedInstance) {\n ref = ref.getWrappedInstance();\n }\n\n this.ref = ref;\n }\n\n componentWillUnmount() {\n const scopeRef = this.props.scopeRef;\n scopeRef && scopeRef(null);\n delete this.scoped;\n }\n\n render() {\n const {scopeRef, ...rest} = this.props;\n\n return (\n <ScopedContext.Provider value={this.scoped!}>\n <ComposedComponent\n {\n ...(rest as any) /* todo */\n }\n ref={this.childRef}\n />\n </ScopedContext.Provider>\n );\n }\n }\n\n hoistNonReactStatic(ScopedComponent, ComposedComponent);\n return ScopedComponent;\n}\n\nexport default HocScoped;\n"
|
12
12
|
]
|
package/lib/WithRootStore.d.ts
CHANGED
@@ -3,6 +3,8 @@ import { IRendererStore } from './store';
|
|
3
3
|
import hoistNonReactStatic from 'hoist-non-react-statics';
|
4
4
|
export declare const RootStoreContext: React.Context<{
|
5
5
|
storeType: string;
|
6
|
+
visibleState: any;
|
7
|
+
disableState: any;
|
6
8
|
} & import("mobx-state-tree/dist/internal").NonEmptyObject & {
|
7
9
|
readonly fetcher: any;
|
8
10
|
readonly notify: any;
|
@@ -165,8 +167,13 @@ export declare const RootStoreContext: React.Context<{
|
|
165
167
|
addChildId: (id: string) => void;
|
166
168
|
removeChildId: (id: string) => void;
|
167
169
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>): void;
|
170
|
+
setVisible(id: string, value: boolean): void;
|
171
|
+
setDisable(id: string, value: boolean): void;
|
168
172
|
} & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
|
169
173
|
storeType: import("mobx-state-tree").IType<string | undefined, string, string>;
|
174
|
+
} & {
|
175
|
+
visibleState: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
|
176
|
+
disableState: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
|
170
177
|
}, {
|
171
178
|
readonly fetcher: any;
|
172
179
|
readonly notify: any;
|
@@ -329,6 +336,8 @@ export declare const RootStoreContext: React.Context<{
|
|
329
336
|
addChildId: (id: string) => void;
|
330
337
|
removeChildId: (id: string) => void;
|
331
338
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>): void;
|
339
|
+
setVisible(id: string, value: boolean): void;
|
340
|
+
setDisable(id: string, value: boolean): void;
|
332
341
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>>;
|
333
342
|
export declare function withRootStore<T extends React.ComponentType<React.ComponentProps<T> & {
|
334
343
|
rootStore: IRendererStore;
|
@@ -386,6 +395,8 @@ export declare function withRootStore<T extends React.ComponentType<React.Compon
|
|
386
395
|
displayName: string;
|
387
396
|
contextType: React.Context<{
|
388
397
|
storeType: string;
|
398
|
+
visibleState: any;
|
399
|
+
disableState: any;
|
389
400
|
} & import("mobx-state-tree/dist/internal").NonEmptyObject & {
|
390
401
|
readonly fetcher: any;
|
391
402
|
readonly notify: any;
|
@@ -548,8 +559,13 @@ export declare function withRootStore<T extends React.ComponentType<React.Compon
|
|
548
559
|
addChildId: (id: string) => void;
|
549
560
|
removeChildId: (id: string) => void;
|
550
561
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>): void;
|
562
|
+
setVisible(id: string, value: boolean): void;
|
563
|
+
setDisable(id: string, value: boolean): void;
|
551
564
|
} & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
|
552
565
|
storeType: import("mobx-state-tree").IType<string | undefined, string, string>;
|
566
|
+
} & {
|
567
|
+
visibleState: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
|
568
|
+
disableState: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
|
553
569
|
}, {
|
554
570
|
readonly fetcher: any;
|
555
571
|
readonly notify: any;
|
@@ -712,6 +728,8 @@ export declare function withRootStore<T extends React.ComponentType<React.Compon
|
|
712
728
|
addChildId: (id: string) => void;
|
713
729
|
removeChildId: (id: string) => void;
|
714
730
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>): void;
|
731
|
+
setVisible(id: string, value: boolean): void;
|
732
|
+
setDisable(id: string, value: boolean): void;
|
715
733
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>>;
|
716
734
|
ComposedComponent: React.ComponentType<T>;
|
717
735
|
} & hoistNonReactStatic.NonReactStatics<T, {}> & {
|
package/lib/WithRootStore.js
CHANGED
@@ -21,7 +21,7 @@ function withRootStore(ComposedComponent) {
|
|
21
21
|
};
|
22
22
|
return class_1;
|
23
23
|
}(react_1.default.Component)),
|
24
|
-
_a.displayName = "WithRootStore("
|
24
|
+
_a.displayName = "WithRootStore(" + (ComposedComponent.displayName || ComposedComponent.name) + ")",
|
25
25
|
_a.contextType = exports.RootStoreContext,
|
26
26
|
_a.ComposedComponent = ComposedComponent,
|
27
27
|
_a), ComposedComponent);
|
package/lib/WithRootStore.js.map
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
"/src/WithRootStore.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";;;;AAAA,6DAA0B;AAE1B,iGAA0D;AAE7C,QAAA,gBAAgB,GAAG,eAAK,CAAC,aAAa,CACjD,SAAgB,CACjB,CAAC;AAEF,SAAgB,aAAa,CAM3B,iBAAoB;;IAMpB,IAAM,MAAM,GAAG,IAAA,iCAAmB;YAClB,wCAA2B;YAAzC;;YAyBA,CAAC;YAlBC,wBAAM,GAAN;gBACE,IAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC;gBAC/B,IAAM,aAAa,GAEf;oBACF,SAAS,WAAA;iBACV,CAAC;gBAEF,OAAO,CACL,8BAAC,iBAAiB,4BACX,IAAI,CAAC,KAGR,EACE,aAAa,EACjB,CACH,CAAC;YACJ,CAAC;YACH,cAAC;QAAD,CAAC,AAzBD,CAAc,eAAK,CAAC,SAAS;QACpB,cAAW,GAAG,
|
9
|
+
"mappings": ";;;;AAAA,6DAA0B;AAE1B,iGAA0D;AAE7C,QAAA,gBAAgB,GAAG,eAAK,CAAC,aAAa,CACjD,SAAgB,CACjB,CAAC;AAEF,SAAgB,aAAa,CAM3B,iBAAoB;;IAMpB,IAAM,MAAM,GAAG,IAAA,iCAAmB;YAClB,wCAA2B;YAAzC;;YAyBA,CAAC;YAlBC,wBAAM,GAAN;gBACE,IAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC;gBAC/B,IAAM,aAAa,GAEf;oBACF,SAAS,WAAA;iBACV,CAAC;gBAEF,OAAO,CACL,8BAAC,iBAAiB,4BACX,IAAI,CAAC,KAGR,EACE,aAAa,EACjB,CACH,CAAC;YACJ,CAAC;YACH,cAAC;QAAD,CAAC,AAzBD,CAAc,eAAK,CAAC,SAAS;QACpB,cAAW,GAAG,oBACnB,iBAAiB,CAAC,WAAW,IAAI,iBAAiB,CAAC,IAAI,OACrD;QACG,cAAW,GAAG,wBAAiB;QAC/B,oBAAiB,GAAG,iBAA4C;aAqBzE,iBAAiB,CAClB,CAAC;IAEF,OAAO,MAEN,CAAC;AACJ,CAAC;AA7CD,sCA6CC",
|
10
10
|
"sourcesContent": [
|
11
11
|
"import React from 'react';\nimport {IRendererStore} from './store';\nimport hoistNonReactStatic from 'hoist-non-react-statics';\n\nexport const RootStoreContext = React.createContext<IRendererStore>(\n undefined as any\n);\n\nexport function withRootStore<\n T extends React.ComponentType<\n React.ComponentProps<T> & {\n rootStore: IRendererStore;\n }\n >\n>(ComposedComponent: T) {\n type OuterProps = JSX.LibraryManagedAttributes<\n T,\n Omit<React.ComponentProps<T>, 'rootStore'>\n >;\n\n const result = hoistNonReactStatic(\n class extends React.Component<OuterProps> {\n static displayName = `WithRootStore(${\n ComposedComponent.displayName || ComposedComponent.name\n })`;\n static contextType = RootStoreContext;\n static ComposedComponent = ComposedComponent as React.ComponentType<T>;\n\n render() {\n const rootStore = this.context;\n const injectedProps: {\n rootStore: IRendererStore;\n } = {\n rootStore\n };\n\n return (\n <ComposedComponent\n {...(this.props as JSX.LibraryManagedAttributes<\n T,\n React.ComponentProps<T>\n >)}\n {...injectedProps}\n />\n );\n }\n },\n ComposedComponent\n );\n\n return result as typeof result & {\n ComposedComponent: T;\n };\n}\n"
|
12
12
|
]
|
package/lib/WithStore.js
CHANGED
@@ -4,6 +4,7 @@ exports.HocStoreFactory = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
5
5
|
var hoist_non_react_statics_1 = (0, tslib_1.__importDefault)(require("hoist-non-react-statics"));
|
6
6
|
var mobx_react_1 = require("mobx-react");
|
7
|
+
var mobx_state_tree_1 = require("mobx-state-tree");
|
7
8
|
var react_1 = (0, tslib_1.__importDefault)(require("react"));
|
8
9
|
var filter_schema_1 = (0, tslib_1.__importDefault)(require("./utils/filter-schema"));
|
9
10
|
var helper_1 = require("./utils/helper");
|
@@ -125,7 +126,7 @@ function HocStoreFactory(renderer) {
|
|
125
126
|
StoreFactory.prototype.componentWillUnmount = function () {
|
126
127
|
var rootStore = this.context;
|
127
128
|
var store = this.store;
|
128
|
-
rootStore.removeStore(store);
|
129
|
+
(0, mobx_state_tree_1.isAlive)(store) && rootStore.removeStore(store);
|
129
130
|
// @ts-ignore
|
130
131
|
delete this.store;
|
131
132
|
};
|
@@ -146,7 +147,7 @@ function HocStoreFactory(renderer) {
|
|
146
147
|
return (react_1.default.createElement(Component, (0, tslib_1.__assign)({}, rest /* todo */, exprProps, { ref: this.refFn, data: this.store.data, dataUpdatedAt: this.store.updatedAt, store: this.store, scope: this.store.data, render: this.renderChild })));
|
147
148
|
};
|
148
149
|
var _a;
|
149
|
-
StoreFactory.displayName = "WithStore("
|
150
|
+
StoreFactory.displayName = "WithStore(" + (Component.displayName || Component.name) + ")";
|
150
151
|
StoreFactory.ComposedComponent = Component;
|
151
152
|
StoreFactory.contextType = WithRootStore_1.RootStoreContext;
|
152
153
|
StoreFactory = (0, tslib_1.__decorate)([
|
package/lib/WithStore.js.map
CHANGED
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/WithStore.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": "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
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"import hoistNonReactStatic from 'hoist-non-react-statics';\nimport {observer} from 'mobx-react';\nimport React from 'react';\nimport {RendererProps} from './factory';\nimport {IIRendererStore, IRendererStore} from './store';\nimport {RendererData, SchemaNode} from './types';\nimport getExprProperties from './utils/filter-schema';\nimport {\n createObject,\n extendObject,\n guid,\n isObjectShallowModified,\n syncDataFromSuper,\n isSuperDataModified\n} from './utils/helper';\nimport {dataMapping} from './utils/tpl-builtin';\nimport {RootStoreContext} from './WithRootStore';\n\nexport function HocStoreFactory(renderer: {\n storeType: string;\n extendsData?: boolean | ((props: any) => boolean);\n shouldSyncSuperStore?: (\n store: any,\n props: any,\n prevProps: any\n ) => boolean | undefined;\n}): any {\n return function <T extends React.ComponentType<RendererProps>>(Component: T) {\n type Props = Omit<\n RendererProps,\n 'store' | 'data' | 'dataUpdatedAt' | 'scope'\n > & {\n store?: IIRendererStore;\n data?: RendererData;\n scope?: RendererData;\n };\n\n @observer\n class StoreFactory extends React.Component<Props> {\n static displayName = `WithStore(${\n Component.displayName || Component.name\n })`;\n static ComposedComponent = Component;\n static contextType = RootStoreContext;\n store: IIRendererStore;\n context!: React.ContextType<typeof RootStoreContext>;\n ref: any;\n\n constructor(\n props: Props,\n context: React.ContextType<typeof RootStoreContext>\n ) {\n super(props);\n\n const rootStore = context;\n this.renderChild = this.renderChild.bind(this);\n this.refFn = this.refFn.bind(this);\n\n const store = rootStore.addStore({\n id: guid(),\n path: this.props.$path,\n storeType: renderer.storeType,\n parentId: this.props.store ? this.props.store.id : ''\n }) as IIRendererStore;\n this.store = store;\n\n const extendsData =\n typeof renderer.extendsData === 'function'\n ? renderer.extendsData(props)\n : renderer.extendsData;\n\n if (extendsData === false) {\n store.initData(\n createObject(\n (this.props.data as any)\n ? (this.props.data as any).__super\n : null,\n {\n ...this.formatData(\n dataMapping(this.props.defaultData, this.props.data)\n ),\n ...this.formatData(this.props.data)\n }\n )\n );\n } else if (\n this.props.scope ||\n (this.props.data && (this.props.data as any).__super)\n ) {\n if (this.props.store && this.props.data === this.props.store.data) {\n store.initData(\n createObject(this.props.store.data, {\n ...this.formatData(\n dataMapping(this.props.defaultData, this.props.data)\n )\n })\n );\n } else {\n store.initData(\n createObject(\n (this.props.data as any).__super || this.props.scope,\n {\n ...this.formatData(\n dataMapping(this.props.defaultData, this.props.data)\n ),\n ...this.formatData(this.props.data)\n }\n )\n );\n }\n } else {\n store.initData({\n ...this.formatData(\n dataMapping(this.props.defaultData, this.props.data)\n ),\n ...this.formatData(this.props.data)\n });\n }\n }\n\n getWrappedInstance() {\n return this.ref;\n }\n\n refFn(ref: any) {\n this.ref = ref;\n }\n\n formatData(data: any): object {\n if (Array.isArray(data)) {\n return {\n items: data\n };\n }\n\n return data as object;\n }\n\n componentDidUpdate(prevProps: RendererProps) {\n const props = this.props;\n const store = this.store;\n const shouldSync = renderer.shouldSyncSuperStore?.(\n store,\n props,\n prevProps\n );\n\n if (shouldSync === false) {\n return;\n }\n\n const extendsData =\n typeof renderer.extendsData === 'function'\n ? renderer.extendsData(props)\n : renderer.extendsData;\n if (extendsData === false) {\n if (\n shouldSync === true ||\n prevProps.defaultData !== props.defaultData ||\n isObjectShallowModified(prevProps.data, props.data) ||\n //\n // 特殊处理 CRUD。\n // CRUD 中 toolbar 里面的 data 是空对象,但是 __super 会不一样\n (props.data &&\n prevProps.data &&\n props.data.__super !== prevProps.data.__super)\n ) {\n store.initData(\n extendObject(props.data, {\n ...(store.hasRemoteData ? store.data : null), // todo 只保留 remote 数据\n ...this.formatData(props.defaultData),\n ...this.formatData(props.data)\n })\n );\n }\n } else if (\n shouldSync === true ||\n isObjectShallowModified(prevProps.data, props.data) ||\n (props.syncSuperStore !== false &&\n isSuperDataModified(props.data, prevProps.data, store))\n ) {\n if (props.store && props.store.data === props.data) {\n store.initData(\n createObject(\n props.store.data,\n props.syncSuperStore === false\n ? {\n ...store.data\n }\n : syncDataFromSuper(\n store.data,\n props.store.data,\n prevProps.scope,\n store,\n props.syncSuperStore === true\n )\n )\n );\n } else if (props.data && (props.data as any).__super) {\n store.initData(\n extendObject(\n props.data,\n store.hasRemoteData\n ? {\n ...store.data,\n ...props.data\n }\n : undefined\n )\n );\n } else {\n store.initData(createObject(props.scope, props.data));\n }\n } else if (\n (shouldSync === true ||\n !props.store ||\n props.data !== props.store.data) &&\n props.data &&\n props.data.__super\n ) {\n // 这个用法很少,当 data.__super 值发生变化时,更新 store.data\n if (\n !prevProps.data ||\n isObjectShallowModified(\n props.data.__super,\n prevProps.data.__super,\n false\n )\n ) {\n store.initData(\n createObject(props.data.__super, {\n ...props.data,\n ...store.data\n }),\n\n store.storeType === 'FormStore' &&\n prevProps.store?.storeType === 'CRUDStore'\n );\n }\n // nextProps.data.__super !== props.data.__super) &&\n } else if (\n props.scope &&\n props.data === props.store!.data &&\n (shouldSync === true || prevProps.data !== props.data)\n ) {\n // 只有父级数据变动的时候才应该进来,\n // 目前看来这个 case 很少有情况下能进来\n store.initData(\n createObject(props.scope, {\n // ...nextProps.data,\n ...store.data\n })\n );\n }\n }\n\n componentWillUnmount() {\n const rootStore = this.context as IRendererStore;\n const store = this.store;\n rootStore.removeStore(store);\n\n // @ts-ignore\n delete this.store;\n }\n\n renderChild(\n region: string,\n node: SchemaNode,\n subProps: {\n data?: object;\n [propName: string]: any;\n } = {}\n ) {\n let {render} = this.props;\n\n return render(region, node, {\n data: this.store.data,\n dataUpdatedAt: this.store.updatedAt,\n ...subProps,\n scope: this.store.data,\n store: this.store\n });\n }\n\n render() {\n const {detectField, ...rest} = this.props;\n\n let exprProps: any = {};\n if (!detectField || detectField === 'data') {\n exprProps = getExprProperties(rest, this.store.data, undefined, rest);\n\n if (exprProps.hidden || exprProps.visible === false) {\n return null;\n }\n }\n\n return (\n <Component\n {\n ...(rest as any) /* todo */\n }\n {...exprProps}\n ref={this.refFn}\n data={this.store.data}\n dataUpdatedAt={this.store.updatedAt}\n store={this.store}\n scope={this.store.data}\n render={this.renderChild}\n />\n );\n }\n }\n hoistNonReactStatic(StoreFactory, Component);\n\n return StoreFactory;\n };\n}\n"
|
11
|
+
"import hoistNonReactStatic from 'hoist-non-react-statics';\nimport {observer} from 'mobx-react';\nimport {isAlive} from 'mobx-state-tree';\nimport React from 'react';\nimport {RendererProps} from './factory';\nimport {IIRendererStore, IRendererStore} from './store';\nimport {RendererData, SchemaNode} from './types';\nimport getExprProperties from './utils/filter-schema';\nimport {\n createObject,\n extendObject,\n guid,\n isObjectShallowModified,\n syncDataFromSuper,\n isSuperDataModified\n} from './utils/helper';\nimport {dataMapping} from './utils/tpl-builtin';\nimport {RootStoreContext} from './WithRootStore';\n\nexport function HocStoreFactory(renderer: {\n storeType: string;\n extendsData?: boolean | ((props: any) => boolean);\n shouldSyncSuperStore?: (\n store: any,\n props: any,\n prevProps: any\n ) => boolean | undefined;\n}): any {\n return function <T extends React.ComponentType<RendererProps>>(Component: T) {\n type Props = Omit<\n RendererProps,\n 'store' | 'data' | 'dataUpdatedAt' | 'scope'\n > & {\n store?: IIRendererStore;\n data?: RendererData;\n scope?: RendererData;\n };\n\n @observer\n class StoreFactory extends React.Component<Props> {\n static displayName = `WithStore(${\n Component.displayName || Component.name\n })`;\n static ComposedComponent = Component;\n static contextType = RootStoreContext;\n store: IIRendererStore;\n context!: React.ContextType<typeof RootStoreContext>;\n ref: any;\n\n constructor(\n props: Props,\n context: React.ContextType<typeof RootStoreContext>\n ) {\n super(props);\n\n const rootStore = context;\n this.renderChild = this.renderChild.bind(this);\n this.refFn = this.refFn.bind(this);\n\n const store = rootStore.addStore({\n id: guid(),\n path: this.props.$path,\n storeType: renderer.storeType,\n parentId: this.props.store ? this.props.store.id : ''\n }) as IIRendererStore;\n this.store = store;\n\n const extendsData =\n typeof renderer.extendsData === 'function'\n ? renderer.extendsData(props)\n : renderer.extendsData;\n\n if (extendsData === false) {\n store.initData(\n createObject(\n (this.props.data as any)\n ? (this.props.data as any).__super\n : null,\n {\n ...this.formatData(\n dataMapping(this.props.defaultData, this.props.data)\n ),\n ...this.formatData(this.props.data)\n }\n )\n );\n } else if (\n this.props.scope ||\n (this.props.data && (this.props.data as any).__super)\n ) {\n if (this.props.store && this.props.data === this.props.store.data) {\n store.initData(\n createObject(this.props.store.data, {\n ...this.formatData(\n dataMapping(this.props.defaultData, this.props.data)\n )\n })\n );\n } else {\n store.initData(\n createObject(\n (this.props.data as any).__super || this.props.scope,\n {\n ...this.formatData(\n dataMapping(this.props.defaultData, this.props.data)\n ),\n ...this.formatData(this.props.data)\n }\n )\n );\n }\n } else {\n store.initData({\n ...this.formatData(\n dataMapping(this.props.defaultData, this.props.data)\n ),\n ...this.formatData(this.props.data)\n });\n }\n }\n\n getWrappedInstance() {\n return this.ref;\n }\n\n refFn(ref: any) {\n this.ref = ref;\n }\n\n formatData(data: any): object {\n if (Array.isArray(data)) {\n return {\n items: data\n };\n }\n\n return data as object;\n }\n\n componentDidUpdate(prevProps: RendererProps) {\n const props = this.props;\n const store = this.store;\n const shouldSync = renderer.shouldSyncSuperStore?.(\n store,\n props,\n prevProps\n );\n\n if (shouldSync === false) {\n return;\n }\n\n const extendsData =\n typeof renderer.extendsData === 'function'\n ? renderer.extendsData(props)\n : renderer.extendsData;\n if (extendsData === false) {\n if (\n shouldSync === true ||\n prevProps.defaultData !== props.defaultData ||\n isObjectShallowModified(prevProps.data, props.data) ||\n //\n // 特殊处理 CRUD。\n // CRUD 中 toolbar 里面的 data 是空对象,但是 __super 会不一样\n (props.data &&\n prevProps.data &&\n props.data.__super !== prevProps.data.__super)\n ) {\n store.initData(\n extendObject(props.data, {\n ...(store.hasRemoteData ? store.data : null), // todo 只保留 remote 数据\n ...this.formatData(props.defaultData),\n ...this.formatData(props.data)\n })\n );\n }\n } else if (\n shouldSync === true ||\n isObjectShallowModified(prevProps.data, props.data) ||\n (props.syncSuperStore !== false &&\n isSuperDataModified(props.data, prevProps.data, store))\n ) {\n if (props.store && props.store.data === props.data) {\n store.initData(\n createObject(\n props.store.data,\n props.syncSuperStore === false\n ? {\n ...store.data\n }\n : syncDataFromSuper(\n store.data,\n props.store.data,\n prevProps.scope,\n store,\n props.syncSuperStore === true\n )\n )\n );\n } else if (props.data && (props.data as any).__super) {\n store.initData(\n extendObject(\n props.data,\n store.hasRemoteData\n ? {\n ...store.data,\n ...props.data\n }\n : undefined\n )\n );\n } else {\n store.initData(createObject(props.scope, props.data));\n }\n } else if (\n (shouldSync === true ||\n !props.store ||\n props.data !== props.store.data) &&\n props.data &&\n props.data.__super\n ) {\n // 这个用法很少,当 data.__super 值发生变化时,更新 store.data\n if (\n !prevProps.data ||\n isObjectShallowModified(\n props.data.__super,\n prevProps.data.__super,\n false\n )\n ) {\n store.initData(\n createObject(props.data.__super, {\n ...props.data,\n ...store.data\n }),\n\n store.storeType === 'FormStore' &&\n prevProps.store?.storeType === 'CRUDStore'\n );\n }\n // nextProps.data.__super !== props.data.__super) &&\n } else if (\n props.scope &&\n props.data === props.store!.data &&\n (shouldSync === true || prevProps.data !== props.data)\n ) {\n // 只有父级数据变动的时候才应该进来,\n // 目前看来这个 case 很少有情况下能进来\n store.initData(\n createObject(props.scope, {\n // ...nextProps.data,\n ...store.data\n })\n );\n }\n }\n\n componentWillUnmount() {\n const rootStore = this.context as IRendererStore;\n const store = this.store;\n\n isAlive(store) && rootStore.removeStore(store);\n\n // @ts-ignore\n delete this.store;\n }\n\n renderChild(\n region: string,\n node: SchemaNode,\n subProps: {\n data?: object;\n [propName: string]: any;\n } = {}\n ) {\n let {render} = this.props;\n\n return render(region, node, {\n data: this.store.data,\n dataUpdatedAt: this.store.updatedAt,\n ...subProps,\n scope: this.store.data,\n store: this.store\n });\n }\n\n render() {\n const {detectField, ...rest} = this.props;\n\n let exprProps: any = {};\n if (!detectField || detectField === 'data') {\n exprProps = getExprProperties(rest, this.store.data, undefined, rest);\n\n if (exprProps.hidden || exprProps.visible === false) {\n return null;\n }\n }\n\n return (\n <Component\n {\n ...(rest as any) /* todo */\n }\n {...exprProps}\n ref={this.refFn}\n data={this.store.data}\n dataUpdatedAt={this.store.updatedAt}\n store={this.store}\n scope={this.store.data}\n render={this.renderChild}\n />\n );\n }\n }\n hoistNonReactStatic(StoreFactory, Component);\n\n return StoreFactory;\n };\n}\n"
|
12
12
|
]
|
13
13
|
}
|