amis 1.5.7 → 1.6.1
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/.husky/pre-commit +1 -1
- package/README.md +1 -0
- package/lib/RootRenderer.d.ts +2 -0
- package/lib/RootRenderer.js +19 -1
- package/lib/RootRenderer.js.map +2 -2
- package/lib/Schema.d.ts +3 -2
- package/lib/Schema.js.map +1 -1
- package/lib/SchemaRenderer.js +52 -1
- package/lib/SchemaRenderer.js.map +2 -2
- package/lib/Scoped.d.ts +2 -0
- package/lib/Scoped.js +27 -1
- package/lib/Scoped.js.map +2 -2
- package/lib/actions/Action.d.ts +33 -0
- package/lib/actions/Action.js +100 -0
- package/lib/actions/Action.js.map +13 -0
- package/lib/actions/AjaxAction.d.ts +14 -0
- package/lib/actions/AjaxAction.js +68 -0
- package/lib/actions/AjaxAction.js.map +13 -0
- package/lib/actions/BreakAction.d.ts +12 -0
- package/lib/actions/BreakAction.js +28 -0
- package/lib/actions/BreakAction.js.map +13 -0
- package/lib/actions/BroadcastAction.d.ts +12 -0
- package/lib/actions/BroadcastAction.js +40 -0
- package/lib/actions/BroadcastAction.js.map +13 -0
- package/lib/actions/CmptAction.d.ts +12 -0
- package/lib/actions/CmptAction.js +40 -0
- package/lib/actions/CmptAction.js.map +13 -0
- package/lib/actions/ContinueAction.d.ts +12 -0
- package/lib/actions/ContinueAction.js +28 -0
- package/lib/actions/ContinueAction.js.map +13 -0
- package/lib/actions/CopyAction.d.ts +12 -0
- package/lib/actions/CopyAction.js +35 -0
- package/lib/actions/CopyAction.js.map +13 -0
- package/lib/actions/CustomAction.d.ts +12 -0
- package/lib/actions/CustomAction.js +43 -0
- package/lib/actions/CustomAction.js.map +13 -0
- package/lib/actions/DialogAction.d.ts +12 -0
- package/lib/actions/DialogAction.js +31 -0
- package/lib/actions/DialogAction.js.map +13 -0
- package/lib/actions/DrawerAction.d.ts +12 -0
- package/lib/actions/DrawerAction.js +31 -0
- package/lib/actions/DrawerAction.js.map +13 -0
- package/lib/actions/EmailAction.d.ts +12 -0
- package/lib/actions/EmailAction.js +37 -0
- package/lib/actions/EmailAction.js.map +13 -0
- package/lib/actions/LoopAction.d.ts +12 -0
- package/lib/actions/LoopAction.js +93 -0
- package/lib/actions/LoopAction.js.map +13 -0
- package/lib/actions/OpenPageAction.d.ts +12 -0
- package/lib/actions/OpenPageAction.js +33 -0
- package/lib/actions/OpenPageAction.js.map +13 -0
- package/lib/actions/ParallelAction.d.ts +5 -0
- package/lib/actions/ParallelAction.js +33 -0
- package/lib/actions/ParallelAction.js.map +13 -0
- package/lib/actions/SwitchAction.d.ts +8 -0
- package/lib/actions/SwitchAction.js +45 -0
- package/lib/actions/SwitchAction.js.map +13 -0
- package/lib/actions/index.d.ts +18 -0
- package/lib/actions/index.js +22 -0
- package/lib/actions/index.js.map +13 -0
- package/lib/components/AnchorNav.d.ts +20 -20
- package/lib/components/AssociatedSelection.d.ts +84 -84
- package/lib/components/AssociatedSelection.js +2 -2
- package/lib/components/AssociatedSelection.js.map +2 -2
- package/lib/components/Avatar.d.ts +135 -0
- package/lib/components/Avatar.js +120 -0
- package/lib/components/Avatar.js.map +13 -0
- package/lib/components/BaiduMapPicker.js.map +2 -2
- package/lib/components/Button.d.ts +20 -20
- package/lib/components/CalendarMobile.d.ts +573 -0
- package/lib/components/CalendarMobile.js +486 -0
- package/lib/components/CalendarMobile.js.map +13 -0
- package/lib/components/Cascader.d.ts +123 -0
- package/lib/components/Cascader.js +487 -0
- package/lib/components/Cascader.js.map +13 -0
- package/lib/components/ChainedSelection.d.ts +84 -84
- package/lib/components/ChainedSelection.js +15 -3
- package/lib/components/ChainedSelection.js.map +2 -2
- package/lib/components/CityArea.d.ts +527 -0
- package/lib/components/CityArea.js +177 -0
- package/lib/components/CityArea.js.map +13 -0
- package/lib/components/Collapse.d.ts +20 -20
- package/lib/components/ColorPicker.d.ts +84 -84
- package/lib/components/ColorPicker.js +4 -3
- package/lib/components/ColorPicker.js.map +2 -2
- package/lib/components/DatePicker.d.ts +85 -84
- package/lib/components/DatePicker.js +21 -8
- package/lib/components/DatePicker.js.map +2 -2
- package/lib/components/DateRangePicker.d.ts +85 -84
- package/lib/components/DateRangePicker.js +19 -6
- package/lib/components/DateRangePicker.js.map +2 -2
- package/lib/components/GroupedSelection.d.ts +84 -84
- package/lib/components/GroupedSelection.js +14 -2
- package/lib/components/GroupedSelection.js.map +2 -2
- package/lib/components/InputBox.d.ts +21 -21
- package/lib/components/ListGroup.d.ts +21 -21
- package/lib/components/ListMenu.d.ts +84 -84
- package/lib/components/MonthRangePicker.d.ts +85 -84
- package/lib/components/MonthRangePicker.js +18 -7
- package/lib/components/MonthRangePicker.js.map +2 -2
- package/lib/components/Overlay.d.ts +1 -1
- package/lib/components/Overlay.js.map +1 -1
- package/lib/components/Picker.d.ts +1 -0
- package/lib/components/Picker.js +16 -7
- package/lib/components/Picker.js.map +2 -2
- package/lib/components/PickerColumn.d.ts +1 -0
- package/lib/components/PickerColumn.js +21 -18
- package/lib/components/PickerColumn.js.map +2 -2
- package/lib/components/PickerContainer.d.ts +3 -0
- package/lib/components/PickerContainer.js +12 -5
- package/lib/components/PickerContainer.js.map +2 -2
- package/lib/components/PopOverContainer.d.ts +1 -0
- package/lib/components/PopOverContainer.js +5 -3
- package/lib/components/PopOverContainer.js.map +2 -2
- package/lib/components/PopUp.d.ts +1041 -28
- package/lib/components/PopUp.js +32 -8
- package/lib/components/PopUp.js.map +2 -2
- package/lib/components/Radios.d.ts +21 -21
- package/lib/components/Rating.d.ts +21 -21
- package/lib/components/ResultBox.d.ts +85 -84
- package/lib/components/ResultBox.js +9 -4
- package/lib/components/ResultBox.js.map +2 -2
- package/lib/components/ResultList.d.ts +9 -2
- package/lib/components/ResultList.js +22 -2
- package/lib/components/ResultList.js.map +2 -2
- package/lib/components/Select.d.ts +238 -238
- package/lib/components/Select.js +13 -9
- package/lib/components/Select.js.map +2 -2
- package/lib/components/Selection.d.ts +94 -86
- package/lib/components/Selection.js +11 -2
- package/lib/components/Selection.js.map +2 -2
- package/lib/components/Steps.js.map +2 -2
- package/lib/components/TableSelection.d.ts +85 -85
- package/lib/components/TableSelection.js +1 -9
- package/lib/components/TableSelection.js.map +2 -2
- package/lib/components/Tabs.js +31 -33
- package/lib/components/Tabs.js.map +2 -2
- package/lib/components/TabsTransfer.d.ts +87 -256
- package/lib/components/TabsTransfer.js +52 -9
- package/lib/components/TabsTransfer.js.map +2 -2
- package/lib/components/TabsTransferPicker.d.ts +1 -1
- package/lib/components/TabsTransferPicker.js +20 -18
- package/lib/components/TabsTransferPicker.js.map +2 -2
- package/lib/components/Timeline.d.ts +69 -0
- package/lib/components/Timeline.js +16 -0
- package/lib/components/Timeline.js.map +13 -0
- package/lib/components/TimelineItem.d.ts +517 -0
- package/lib/components/TimelineItem.js +40 -0
- package/lib/components/TimelineItem.js.map +13 -0
- package/lib/components/Transfer.d.ts +100 -98
- package/lib/components/Transfer.js +2 -3
- package/lib/components/Transfer.js.map +2 -2
- package/lib/components/TransferDropDown.d.ts +85 -84
- package/lib/components/TransferDropDown.js +9 -10
- package/lib/components/TransferDropDown.js.map +2 -2
- package/lib/components/TransferPicker.d.ts +1 -0
- package/lib/components/TransferPicker.js +19 -4
- package/lib/components/TransferPicker.js.map +2 -2
- package/lib/components/Tree.d.ts +84 -84
- package/lib/components/TreeSelection.d.ts +85 -85
- package/lib/components/TreeSelection.js +7 -1
- package/lib/components/TreeSelection.js.map +2 -2
- package/lib/components/calendar/Calendar.d.ts +19 -0
- package/lib/components/calendar/Calendar.js +71 -1
- package/lib/components/calendar/Calendar.js.map +2 -2
- package/lib/components/calendar/DaysView.d.ts +21 -0
- package/lib/components/calendar/DaysView.js +76 -17
- package/lib/components/calendar/DaysView.js.map +2 -2
- package/lib/components/calendar/MonthsView.d.ts +34 -0
- package/lib/components/calendar/MonthsView.js +68 -3
- package/lib/components/calendar/MonthsView.js.map +2 -2
- package/lib/components/calendar/QuartersView.d.ts +1 -0
- package/lib/components/calendar/QuartersView.js +2 -2
- package/lib/components/calendar/QuartersView.js.map +2 -2
- package/lib/components/calendar/TimeView.d.ts +30 -18
- package/lib/components/calendar/TimeView.js +47 -8
- package/lib/components/calendar/TimeView.js.map +2 -2
- package/lib/components/calendar/YearsView.d.ts +6 -0
- package/lib/components/calendar/YearsView.js +21 -10
- package/lib/components/calendar/YearsView.js.map +2 -2
- package/lib/components/condition-builder/Field.js +1 -4
- package/lib/components/condition-builder/Field.js.map +2 -2
- package/lib/components/condition-builder/Func.js +1 -1
- package/lib/components/condition-builder/Func.js.map +2 -2
- package/lib/components/formula/Editor.d.ts +3 -0
- package/lib/components/formula/Editor.js +3 -2
- package/lib/components/formula/Editor.js.map +2 -2
- package/lib/components/formula/FuncList.js +2 -1
- package/lib/components/formula/FuncList.js.map +2 -2
- package/lib/components/formula/Picker.js +1 -1
- package/lib/components/formula/Picker.js.map +2 -2
- package/lib/components/formula/plugin.js +0 -1
- package/lib/components/formula/plugin.js.map +2 -2
- package/lib/components/icons.js +2 -0
- package/lib/components/icons.js.map +2 -2
- package/lib/components/index.d.ts +2 -1
- package/lib/components/index.js +4 -2
- package/lib/components/index.js.map +2 -2
- package/lib/components/virtual-list/SizeAndPositionManager.js.map +2 -2
- package/lib/components/virtual-list/index.js +1 -2
- package/lib/components/virtual-list/index.js.map +2 -2
- package/lib/env.d.ts +4 -0
- package/lib/env.js.map +2 -2
- package/lib/factory.d.ts +2 -1
- package/lib/factory.js +83 -0
- package/lib/factory.js.map +2 -2
- package/lib/helper.css.map +1 -1
- package/lib/icons/tree-down.js +7 -0
- package/lib/index.d.ts +3 -0
- package/lib/index.js +4 -1
- package/lib/index.js.map +2 -2
- package/lib/locale/de-DE.js +17 -2
- package/lib/locale/de-DE.js.map +2 -2
- package/lib/locale/en-US.js +17 -2
- package/lib/locale/en-US.js.map +2 -2
- package/lib/locale/zh-CN.js +16 -1
- package/lib/locale/zh-CN.js.map +2 -2
- package/lib/renderers/Action.d.ts +1 -1
- package/lib/renderers/Action.js +26 -10
- package/lib/renderers/Action.js.map +2 -2
- package/lib/renderers/Avatar.d.ts +35 -26
- package/lib/renderers/Avatar.js +14 -19
- package/lib/renderers/Avatar.js.map +2 -2
- package/lib/renderers/Card.js +6 -5
- package/lib/renderers/Card.js.map +2 -2
- package/lib/renderers/Custom.d.ts +1 -1
- package/lib/renderers/Custom.js +1 -1
- package/lib/renderers/Custom.js.map +2 -2
- package/lib/renderers/DropDownButton.d.ts +11 -2
- package/lib/renderers/DropDownButton.js +30 -12
- package/lib/renderers/DropDownButton.js.map +2 -2
- package/lib/renderers/Each.js +5 -2
- package/lib/renderers/Each.js.map +2 -2
- package/lib/renderers/Flex.js +1 -5
- package/lib/renderers/Flex.js.map +2 -2
- package/lib/renderers/Form/ChartRadios.js.map +2 -2
- package/lib/renderers/Form/Checkboxes.js.map +2 -2
- package/lib/renderers/Form/CityDB.js +526 -2
- package/lib/renderers/Form/CityDB.js.map +2 -2
- package/lib/renderers/Form/DiffEditor.d.ts +6 -0
- package/lib/renderers/Form/DiffEditor.js +2 -1
- package/lib/renderers/Form/DiffEditor.js.map +2 -2
- package/lib/renderers/Form/Editor.d.ts +6 -0
- package/lib/renderers/Form/InputCity.d.ts +85 -84
- package/lib/renderers/Form/InputCity.js +4 -2
- package/lib/renderers/Form/InputCity.js.map +2 -2
- package/lib/renderers/Form/InputColor.d.ts +84 -84
- package/lib/renderers/Form/InputColor.js +6 -2
- package/lib/renderers/Form/InputColor.js.map +2 -2
- package/lib/renderers/Form/InputDate.js +10 -5
- package/lib/renderers/Form/InputDate.js.map +2 -2
- package/lib/renderers/Form/InputDateRange.js +6 -2
- package/lib/renderers/Form/InputDateRange.js.map +2 -2
- package/lib/renderers/Form/InputFormula.d.ts +4 -1
- package/lib/renderers/Form/InputFormula.js +2 -2
- package/lib/renderers/Form/InputFormula.js.map +2 -2
- package/lib/renderers/Form/InputImage.d.ts +1 -0
- package/lib/renderers/Form/InputImage.js +8 -4
- package/lib/renderers/Form/InputImage.js.map +2 -2
- package/lib/renderers/Form/InputMonthRange.js +1 -1
- package/lib/renderers/Form/InputMonthRange.js.map +2 -2
- package/lib/renderers/Form/InputQuarterRange.js +1 -1
- package/lib/renderers/Form/InputQuarterRange.js.map +2 -2
- package/lib/renderers/Form/InputRichText.d.ts +4 -0
- package/lib/renderers/Form/InputRichText.js +2 -1
- package/lib/renderers/Form/InputRichText.js.map +2 -2
- package/lib/renderers/Form/InputYearRange.js +1 -1
- package/lib/renderers/Form/InputYearRange.js.map +2 -2
- package/lib/renderers/Form/Item.d.ts +10 -14
- package/lib/renderers/Form/Item.js +18 -9
- package/lib/renderers/Form/Item.js.map +2 -2
- package/lib/renderers/Form/NestedSelect.d.ts +1 -0
- package/lib/renderers/Form/NestedSelect.js +8 -4
- package/lib/renderers/Form/NestedSelect.js.map +2 -2
- package/lib/renderers/Form/Options.js +9 -7
- package/lib/renderers/Form/Options.js.map +2 -2
- package/lib/renderers/Form/Select.d.ts +2 -0
- package/lib/renderers/Form/Select.js +9 -6
- package/lib/renderers/Form/Select.js.map +2 -2
- package/lib/renderers/Form/TabsTransfer.d.ts +5 -32
- package/lib/renderers/Form/TabsTransfer.js +20 -1
- package/lib/renderers/Form/TabsTransfer.js.map +2 -2
- package/lib/renderers/Form/TabsTransferPicker.d.ts +5 -35
- package/lib/renderers/Form/TabsTransferPicker.js +21 -2
- package/lib/renderers/Form/TabsTransferPicker.js.map +2 -2
- package/lib/renderers/Form/Transfer.d.ts +15 -4
- package/lib/renderers/Form/Transfer.js +55 -18
- package/lib/renderers/Form/Transfer.js.map +2 -2
- package/lib/renderers/Form/TransferPicker.d.ts +3 -32
- package/lib/renderers/Form/TransferPicker.js +1 -1
- package/lib/renderers/Form/TransferPicker.js.map +2 -2
- package/lib/renderers/Form/TreeSelect.js +4 -4
- package/lib/renderers/Form/TreeSelect.js.map +2 -2
- package/lib/renderers/Form/index.js +8 -1
- package/lib/renderers/Form/index.js.map +2 -2
- package/lib/renderers/IFrame.js +0 -2
- package/lib/renderers/IFrame.js.map +2 -2
- package/lib/renderers/Link.d.ts +1 -1
- package/lib/renderers/Link.js +27 -6
- package/lib/renderers/Link.js.map +2 -2
- package/lib/renderers/Log.js +15 -10
- package/lib/renderers/Log.js.map +2 -2
- package/lib/renderers/Nav.d.ts +21 -21
- package/lib/renderers/Remark.d.ts +5 -1
- package/lib/renderers/Remark.js +39 -7
- package/lib/renderers/Remark.js.map +2 -2
- package/lib/renderers/Steps.js +5 -5
- package/lib/renderers/Steps.js.map +2 -2
- package/lib/renderers/Table/index.js +4 -1
- package/lib/renderers/Table/index.js.map +2 -2
- package/lib/renderers/Tabs.js +1 -1
- package/lib/renderers/Tabs.js.map +2 -2
- package/lib/renderers/Timeline.d.ts +65 -0
- package/lib/renderers/Timeline.js +54 -0
- package/lib/renderers/Timeline.js.map +13 -0
- package/lib/renderers/Video.js.map +2 -2
- package/lib/schemaExtend.js +23 -9
- package/lib/schemaExtend.js.map +2 -2
- package/lib/store/combo.js.map +2 -2
- package/lib/store/formItem.js +1 -1
- package/lib/store/formItem.js.map +2 -2
- package/lib/themes/ang-ie11.css +1149 -53
- package/lib/themes/ang.css +1149 -53
- package/lib/themes/ang.css.map +1 -1
- package/lib/themes/antd-ie11.css +1187 -53
- package/lib/themes/antd.css +1187 -53
- package/lib/themes/antd.css.map +1 -1
- package/lib/themes/cxd-ie11.css +1189 -70
- package/lib/themes/cxd.css +1189 -70
- package/lib/themes/cxd.css.map +1 -1
- package/lib/themes/dark-ie11.css +1152 -53
- package/lib/themes/dark.css +1152 -53
- package/lib/themes/dark.css.map +1 -1
- package/lib/themes/default.css +1189 -70
- package/lib/themes/default.css.map +1 -1
- package/lib/utils/RootClose.js +3 -1
- package/lib/utils/RootClose.js.map +2 -2
- package/lib/utils/api.js +14 -3
- package/lib/utils/api.js.map +2 -2
- package/lib/utils/debug.d.ts +26 -0
- package/lib/utils/debug.js +351 -0
- package/lib/utils/debug.js.map +13 -0
- package/lib/utils/helper.d.ts +1 -6
- package/lib/utils/helper.js +6 -17
- package/lib/utils/helper.js.map +2 -2
- package/lib/utils/renderer-event.d.ts +38 -0
- package/lib/utils/renderer-event.js +28 -0
- package/lib/utils/renderer-event.js.map +13 -0
- package/package.json +12 -6
- package/schema.json +3516 -839
- package/scss/_properties.scss +20 -6
- package/scss/_variables.scss +1 -0
- package/scss/components/_avatar.scss +27 -9
- package/scss/components/_calendar.scss +291 -0
- package/scss/components/_card.scss +1 -1
- package/scss/components/_cascader.scss +102 -0
- package/scss/components/_city-area.scss +27 -0
- package/scss/components/_collapse-group.scss +1 -3
- package/scss/components/_debug.scss +167 -0
- package/scss/components/_dropdown.scss +39 -9
- package/scss/components/_formula.scss +30 -6
- package/scss/components/_modal.scss +18 -0
- package/scss/components/_panel.scss +45 -0
- package/scss/components/_picker-columns.scss +15 -5
- package/scss/components/_popup.scss +43 -16
- package/scss/components/_result-box.scss +31 -0
- package/scss/components/_timeline.scss +198 -0
- package/scss/components/form/_checks.scss +2 -0
- package/scss/components/form/_color.scss +2 -2
- package/scss/components/form/_date-range.scss +34 -1
- package/scss/components/form/_date.scss +46 -1
- package/scss/components/form/_form.scss +170 -0
- package/scss/components/form/_nested-select.scss +3 -0
- package/scss/components/form/_result-list.scss +2 -0
- package/scss/components/form/_select.scss +32 -3
- package/scss/components/form/_selection.scss +5 -4
- package/scss/components/form/_transfer.scss +3 -0
- package/scss/components/form/_tree-select.scss +1 -1
- package/scss/themes/_antd-variables.scss +45 -0
- package/scss/themes/_common.scss +5 -0
- package/scss/themes/_cxd-variables.scss +50 -1
- package/scss/themes/_dark-variables.scss +4 -0
- package/scss/themes/cxd.scss +0 -19
- package/sdk/ang-ie11.css +1450 -142
- package/sdk/ang.css +1473 -159
- package/sdk/antd-ie11.css +1451 -142
- package/sdk/antd.css +1511 -159
- package/sdk/charts.js +15 -15
- package/sdk/codemirror.js +7 -7
- package/sdk/color-picker.js +65 -65
- package/sdk/cropperjs.js +2 -2
- package/sdk/cxd-ie11.css +1448 -158
- package/sdk/cxd.css +1513 -178
- package/sdk/dark-ie11.css +1450 -142
- package/sdk/dark.css +1476 -159
- package/sdk/exceljs.js +1 -1
- package/sdk/helper.css.map +1 -1
- package/sdk/locale/de-DE.js +17 -2
- package/sdk/markdown.js +69 -69
- package/sdk/papaparse.js +1 -1
- package/sdk/renderers/Form/CityDB.js +1 -1
- package/sdk/rest.js +18 -18
- package/sdk/rich-text.js +62 -62
- package/sdk/sdk-ie11.css +1448 -158
- package/sdk/sdk.css +1513 -178
- package/sdk/sdk.js +1309 -1251
- package/sdk/thirds/hls.js/hls.js +1 -1
- package/sdk/thirds/mpegts.js/mpegts.js +1 -1
- package/sdk/tinymce.js +57 -57
- package/src/RootRenderer.tsx +27 -1
- package/src/Schema.ts +3 -0
- package/src/SchemaRenderer.tsx +70 -4
- package/src/Scoped.tsx +46 -4
- package/src/actions/Action.ts +138 -0
- package/src/actions/AjaxAction.ts +58 -0
- package/src/actions/BreakAction.ts +27 -0
- package/src/actions/BroadcastAction.ts +41 -0
- package/src/actions/CmptAction.ts +36 -0
- package/src/actions/ContinueAction.ts +27 -0
- package/src/actions/CopyAction.ts +41 -0
- package/src/actions/CustomAction.ts +46 -0
- package/src/actions/DialogAction.ts +28 -0
- package/src/actions/DrawerAction.ts +28 -0
- package/src/actions/EmailAction.ts +38 -0
- package/src/actions/LoopAction.ts +77 -0
- package/src/actions/OpenPageAction.ts +39 -0
- package/src/actions/ParallelAction.ts +26 -0
- package/src/actions/SwitchAction.ts +35 -0
- package/src/actions/index.ts +20 -0
- package/src/components/AssociatedSelection.tsx +5 -1
- package/src/components/Avatar.tsx +253 -0
- package/src/components/BaiduMapPicker.tsx +19 -14
- package/src/components/CalendarMobile.tsx +658 -0
- package/src/components/Cascader.tsx +564 -0
- package/src/components/ChainedSelection.tsx +16 -3
- package/src/components/CityArea.tsx +315 -0
- package/src/components/ColorPicker.tsx +41 -40
- package/src/components/DatePicker.tsx +80 -34
- package/src/components/DateRangePicker.tsx +85 -30
- package/src/components/GroupedSelection.tsx +14 -2
- package/src/components/MonthRangePicker.tsx +78 -31
- package/src/components/Overlay.tsx +1 -1
- package/src/components/Picker.tsx +55 -35
- package/src/components/PickerColumn.tsx +43 -36
- package/src/components/PickerContainer.tsx +13 -1
- package/src/components/PopOverContainer.tsx +31 -17
- package/src/components/PopUp.tsx +84 -57
- package/src/components/ResultBox.tsx +14 -2
- package/src/components/ResultList.tsx +36 -6
- package/src/components/Select.tsx +24 -26
- package/src/components/Selection.tsx +21 -3
- package/src/components/Steps.tsx +23 -10
- package/src/components/TableSelection.tsx +1 -44
- package/src/components/Tabs.tsx +65 -54
- package/src/components/TabsTransfer.tsx +78 -9
- package/src/components/TabsTransferPicker.tsx +25 -13
- package/src/components/Timeline.tsx +36 -0
- package/src/components/TimelineItem.tsx +140 -0
- package/src/components/Transfer.tsx +11 -8
- package/src/components/TransferDropDown.tsx +20 -12
- package/src/components/TransferPicker.tsx +25 -4
- package/src/components/TreeSelection.tsx +7 -1
- package/src/components/calendar/Calendar.tsx +101 -4
- package/src/components/calendar/DaysView.tsx +165 -33
- package/src/components/calendar/MonthsView.tsx +108 -1
- package/src/components/calendar/QuartersView.tsx +3 -2
- package/src/components/calendar/TimeView.tsx +104 -41
- package/src/components/calendar/YearsView.tsx +34 -17
- package/src/components/condition-builder/Field.tsx +1 -3
- package/src/components/condition-builder/Func.tsx +1 -1
- package/src/components/formula/Editor.tsx +16 -11
- package/src/components/formula/FuncList.tsx +3 -1
- package/src/components/formula/Picker.tsx +2 -1
- package/src/components/formula/plugin.ts +0 -2
- package/src/components/icons.tsx +2 -0
- package/src/components/index.tsx +2 -0
- package/src/components/virtual-list/SizeAndPositionManager.ts +6 -3
- package/src/components/virtual-list/index.tsx +4 -6
- package/src/env.tsx +22 -0
- package/src/factory.tsx +93 -1
- package/src/icons/tree-down.svg +5 -0
- package/src/index.tsx +5 -0
- package/src/locale/de-DE.ts +17 -2
- package/src/locale/en-US.ts +17 -2
- package/src/locale/zh-CN.ts +16 -1
- package/src/renderers/Action.tsx +11 -2
- package/src/renderers/Avatar.tsx +83 -74
- package/src/renderers/Card.tsx +10 -6
- package/src/renderers/Custom.tsx +7 -4
- package/src/renderers/DropDownButton.tsx +69 -35
- package/src/renderers/Each.tsx +4 -4
- package/src/renderers/Flex.tsx +3 -7
- package/src/renderers/Form/ChartRadios.tsx +2 -7
- package/src/renderers/Form/Checkboxes.tsx +1 -1
- package/src/renderers/Form/CityDB.ts +526 -2
- package/src/renderers/Form/DiffEditor.tsx +2 -3
- package/src/renderers/Form/InputCity.tsx +23 -3
- package/src/renderers/Form/InputColor.tsx +21 -2
- package/src/renderers/Form/InputDate.tsx +48 -20
- package/src/renderers/Form/InputDateRange.tsx +9 -2
- package/src/renderers/Form/InputFormula.tsx +9 -4
- package/src/renderers/Form/InputImage.tsx +9 -4
- package/src/renderers/Form/InputMonthRange.tsx +0 -1
- package/src/renderers/Form/InputQuarterRange.tsx +0 -1
- package/src/renderers/Form/InputRichText.tsx +11 -1
- package/src/renderers/Form/InputYearRange.tsx +0 -1
- package/src/renderers/Form/Item.tsx +29 -8
- package/src/renderers/Form/NestedSelect.tsx +32 -4
- package/src/renderers/Form/Options.tsx +15 -7
- package/src/renderers/Form/Select.tsx +21 -5
- package/src/renderers/Form/TabsTransfer.tsx +28 -38
- package/src/renderers/Form/TabsTransferPicker.tsx +28 -46
- package/src/renderers/Form/Transfer.tsx +75 -24
- package/src/renderers/Form/TransferPicker.tsx +6 -38
- package/src/renderers/Form/TreeSelect.tsx +18 -16
- package/src/renderers/Form/index.tsx +7 -1
- package/src/renderers/IFrame.tsx +0 -2
- package/src/renderers/Link.tsx +18 -3
- package/src/renderers/Log.tsx +5 -1
- package/src/renderers/Remark.tsx +68 -18
- package/src/renderers/Steps.tsx +11 -13
- package/src/renderers/Table/index.tsx +7 -1
- package/src/renderers/Tabs.tsx +6 -2
- package/src/renderers/Timeline.tsx +141 -0
- package/src/renderers/Video.tsx +4 -20
- package/src/schemaExtend.ts +22 -10
- package/src/store/combo.ts +1 -3
- package/src/store/formItem.ts +1 -1
- package/src/utils/RootClose.ts +5 -1
- package/src/utils/api.ts +15 -2
- package/src/utils/debug.tsx +438 -0
- package/src/utils/helper.ts +6 -16
- package/src/utils/renderer-event.ts +75 -0
@@ -4,7 +4,7 @@ import moment from 'moment';
|
|
4
4
|
import React from 'react';
|
5
5
|
import {LocaleProps, localeable} from '../../locale';
|
6
6
|
import Picker from '../Picker';
|
7
|
-
import {
|
7
|
+
import {getRange, isMobile} from '../../utils/helper';
|
8
8
|
|
9
9
|
export class CustomYearsView extends YearsView {
|
10
10
|
props: {
|
@@ -28,6 +28,8 @@ export class CustomYearsView extends YearsView {
|
|
28
28
|
onConfirm?: (value: number[], types: string[]) => void;
|
29
29
|
useMobileUI: boolean;
|
30
30
|
} & LocaleProps;
|
31
|
+
state: {pickerValue: number[]};
|
32
|
+
setState: (arg0: any) => () => any;
|
31
33
|
renderYears: (year: number) => JSX.Element;
|
32
34
|
renderYear = (props: any, year: number) => {
|
33
35
|
return (
|
@@ -37,29 +39,49 @@ export class CustomYearsView extends YearsView {
|
|
37
39
|
);
|
38
40
|
};
|
39
41
|
|
42
|
+
constructor(props: any) {
|
43
|
+
super(props);
|
44
|
+
|
45
|
+
const {selectedDate, viewDate} = props;
|
46
|
+
const currentDate = (selectedDate || viewDate || moment());
|
47
|
+
|
48
|
+
this.state = {
|
49
|
+
pickerValue: currentDate.toObject().years
|
50
|
+
}
|
51
|
+
}
|
52
|
+
|
40
53
|
onConfirm = (value: number[]) => {
|
41
|
-
this.props.onConfirm && this.props.onConfirm(value, [
|
54
|
+
this.props.onConfirm && this.props.onConfirm(value, ['year']);
|
55
|
+
};
|
56
|
+
|
57
|
+
onPickerChange = (value: number[]) => {
|
58
|
+
this.setState({pickerValue: value[0]});
|
42
59
|
}
|
43
60
|
|
44
61
|
renderYearPicker = () => {
|
45
|
-
const {minDate, maxDate, selectedDate, viewDate} =
|
62
|
+
const {translate: __, minDate, maxDate, selectedDate, viewDate} = this.props;
|
46
63
|
const year = (selectedDate || viewDate || moment()).year();
|
47
|
-
const maxYear = maxDate ?
|
48
|
-
const minYear = minDate ?
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
64
|
+
const maxYear = maxDate ? maxDate.toObject().years : year + 100;
|
65
|
+
const minYear = minDate ? minDate.toObject().years : year - 100;
|
66
|
+
const title = __('Date.titleYear');
|
67
|
+
|
68
|
+
const columns = [
|
69
|
+
{
|
70
|
+
options: getRange(minYear, maxYear, 1)
|
71
|
+
}
|
72
|
+
];
|
53
73
|
|
54
74
|
return (
|
55
75
|
<Picker
|
56
76
|
translate={this.props.translate}
|
57
77
|
locale={this.props.locale}
|
78
|
+
title={title}
|
58
79
|
columns={columns}
|
59
|
-
value={
|
80
|
+
value={this.state.pickerValue}
|
60
81
|
onConfirm={this.onConfirm}
|
82
|
+
onChange={this.onPickerChange}
|
61
83
|
onClose={this.props.onClose}
|
62
|
-
|
84
|
+
/>
|
63
85
|
);
|
64
86
|
};
|
65
87
|
|
@@ -67,13 +89,8 @@ export class CustomYearsView extends YearsView {
|
|
67
89
|
let year = this.props.viewDate.year();
|
68
90
|
year = year - (year % 10);
|
69
91
|
const __ = this.props.translate;
|
70
|
-
|
71
92
|
if (isMobile() && this.props.useMobileUI) {
|
72
|
-
return (
|
73
|
-
<div className="rdtYears">
|
74
|
-
{this.renderYearPicker()}
|
75
|
-
</div>
|
76
|
-
);
|
93
|
+
return <div className="rdtYears">{this.renderYearPicker()}</div>;
|
77
94
|
}
|
78
95
|
return (
|
79
96
|
<div className="rdtYears">
|
@@ -114,9 +114,7 @@ export class ConditionField extends React.Component<
|
|
114
114
|
ref={ref}
|
115
115
|
allowInput={false}
|
116
116
|
result={
|
117
|
-
value
|
118
|
-
? findTree(options, item => item.name === value)?.label
|
119
|
-
: ''
|
117
|
+
value ? findTree(options, item => item.name === value) : ''
|
120
118
|
}
|
121
119
|
onResultChange={noop}
|
122
120
|
onResultClick={onClick}
|
@@ -45,6 +45,9 @@ export interface FormulaEditorProps extends ThemeProps, LocaleProps {
|
|
45
45
|
*/
|
46
46
|
variables: Array<VariableItem>;
|
47
47
|
|
48
|
+
/**
|
49
|
+
* 变量展现模式,可选值:'tabs' | 'tree'
|
50
|
+
*/
|
48
51
|
variableMode?: 'tabs' | 'tree';
|
49
52
|
|
50
53
|
/**
|
@@ -216,17 +219,19 @@ export class FormulaEditor extends React.Component<
|
|
216
219
|
'is-focused': focused
|
217
220
|
})}
|
218
221
|
>
|
219
|
-
<div className={cx(`FormulaEditor-
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
222
|
+
<div className={cx(`FormulaEditor-content`)}>
|
223
|
+
<div className={cx(`FormulaEditor-header`)}>{header ?? '表达式'}</div>
|
224
|
+
|
225
|
+
<CodeMirrorEditor
|
226
|
+
className={cx('FormulaEditor-editor')}
|
227
|
+
value={value}
|
228
|
+
onChange={this.handleOnChange}
|
229
|
+
editorFactory={this.editorFactory}
|
230
|
+
editorDidMount={this.handleEditorMounted}
|
231
|
+
onFocus={this.handleFocus}
|
232
|
+
onBlur={this.handleBlur}
|
233
|
+
></CodeMirrorEditor>
|
234
|
+
</div>
|
230
235
|
|
231
236
|
<div className={cx('FormulaEditor-settings')}>
|
232
237
|
{Array.isArray(functions) && functions.length ? (
|
@@ -69,7 +69,9 @@ export function FuncList(props: FuncListProps) {
|
|
69
69
|
<div className={cx('FormulaFuncList-column')}>
|
70
70
|
{activeFunc ? (
|
71
71
|
<div className={cx('FormulaFuncList-funcDetail')}>
|
72
|
-
<
|
72
|
+
<pre>
|
73
|
+
<code>{activeFunc.example}</code>
|
74
|
+
</pre>
|
73
75
|
<div>{activeFunc.description}</div>
|
74
76
|
</div>
|
75
77
|
) : null}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import {uncontrollable} from 'uncontrollable';
|
2
2
|
import React from 'react';
|
3
3
|
import {FormulaEditor, FormulaEditorProps} from './Editor';
|
4
|
-
import {autobind} from '../../utils/helper';
|
4
|
+
import {autobind, noop} from '../../utils/helper';
|
5
5
|
import PickerContainer from '../PickerContainer';
|
6
6
|
import Editor from './Editor';
|
7
7
|
import ResultBox from '../ResultBox';
|
@@ -63,6 +63,7 @@ export class FormulaPicker extends React.Component<FormulaPickerProps> {
|
|
63
63
|
rest.variables,
|
64
64
|
rest.functions
|
65
65
|
)}
|
66
|
+
onResultChange={noop}
|
66
67
|
onResultClick={onClick}
|
67
68
|
disabled={disabled}
|
68
69
|
borderMode={borderMode}
|
package/src/components/icons.tsx
CHANGED
@@ -43,6 +43,7 @@ import ExchangeIcon from '../icons/exchange.svg';
|
|
43
43
|
import ColmunsIcon from '../icons/columns.svg';
|
44
44
|
import CalendarIcon from '../icons/calendar.svg';
|
45
45
|
import ClockIcon from '../icons/clock.svg';
|
46
|
+
import TreeDownIcon from '../icons/tree-down.svg';
|
46
47
|
|
47
48
|
import CopyIcon from '../icons/copy.svg';
|
48
49
|
import FilterIcon from '../icons/filter.svg';
|
@@ -176,6 +177,7 @@ registerIcon('alert-success', AlertSuccess);
|
|
176
177
|
registerIcon('alert-info', AlertInfo);
|
177
178
|
registerIcon('alert-warning', AlertWarning);
|
178
179
|
registerIcon('alert-danger', AlertDanger);
|
180
|
+
registerIcon('tree-down', TreeDownIcon);
|
179
181
|
|
180
182
|
export function Icon({
|
181
183
|
icon,
|
package/src/components/index.tsx
CHANGED
@@ -8,6 +8,7 @@ import NotFound from './404';
|
|
8
8
|
import {default as Alert, alert, confirm, prompt} from './Alert';
|
9
9
|
import {default as ContextMenu, openContextMenus} from './ContextMenu';
|
10
10
|
import AsideNav from './AsideNav';
|
11
|
+
import Avatar from './Avatar';
|
11
12
|
import Button from './Button';
|
12
13
|
import Checkbox from './Checkbox';
|
13
14
|
import Checkboxes from './Selection';
|
@@ -60,6 +61,7 @@ export {
|
|
60
61
|
NotFound,
|
61
62
|
Alert as AlertComponent,
|
62
63
|
alert,
|
64
|
+
Avatar,
|
63
65
|
confirm,
|
64
66
|
prompt,
|
65
67
|
ContextMenu,
|
@@ -72,7 +72,8 @@ export default class SizeAndPositionManager {
|
|
72
72
|
}
|
73
73
|
|
74
74
|
if (index > this.lastMeasuredIndex) {
|
75
|
-
const lastMeasuredSizeAndPosition =
|
75
|
+
const lastMeasuredSizeAndPosition =
|
76
|
+
this.getSizeAndPositionOfLastMeasuredItem();
|
76
77
|
let offset =
|
77
78
|
lastMeasuredSizeAndPosition.offset + lastMeasuredSizeAndPosition.size;
|
78
79
|
|
@@ -109,7 +110,8 @@ export default class SizeAndPositionManager {
|
|
109
110
|
* As items as measured the estimate will be updated.
|
110
111
|
*/
|
111
112
|
getTotalSize(): number {
|
112
|
-
const lastMeasuredSizeAndPosition =
|
113
|
+
const lastMeasuredSizeAndPosition =
|
114
|
+
this.getSizeAndPositionOfLastMeasuredItem();
|
113
115
|
|
114
116
|
return (
|
115
117
|
lastMeasuredSizeAndPosition.offset +
|
@@ -232,7 +234,8 @@ export default class SizeAndPositionManager {
|
|
232
234
|
// So make sure the offset is at least 0 or no match will be found.
|
233
235
|
offset = Math.max(0, offset);
|
234
236
|
|
235
|
-
const lastMeasuredSizeAndPosition =
|
237
|
+
const lastMeasuredSizeAndPosition =
|
238
|
+
this.getSizeAndPositionOfLastMeasuredItem();
|
236
239
|
const lastMeasuredIndex = Math.max(0, this.lastMeasuredIndex);
|
237
240
|
|
238
241
|
if (lastMeasuredSizeAndPosition.offset >= offset) {
|
@@ -181,8 +181,8 @@ export default class VirtualList extends React.PureComponent<Props, State> {
|
|
181
181
|
const itemsDom = this.rootNode.children[0].children;
|
182
182
|
const scrollbarWidth =
|
183
183
|
window.innerWidth - document.documentElement.clientWidth || 15;
|
184
|
-
const containerWidth =
|
185
|
-
.width;
|
184
|
+
const containerWidth =
|
185
|
+
this.rootNode.parentElement!.getBoundingClientRect().width;
|
186
186
|
let maxItemWidth = 0;
|
187
187
|
for (let i = 0; i < itemsDom.length; i++) {
|
188
188
|
let itemWidth = itemsDom[i].getBoundingClientRect().width;
|
@@ -427,10 +427,8 @@ export default class VirtualList extends React.PureComponent<Props, State> {
|
|
427
427
|
}
|
428
428
|
|
429
429
|
const {scrollDirection = DIRECTION.VERTICAL} = this.props;
|
430
|
-
const {
|
431
|
-
|
432
|
-
offset
|
433
|
-
} = this.sizeAndPositionManager.getSizeAndPositionForIndex(index);
|
430
|
+
const {size, offset} =
|
431
|
+
this.sizeAndPositionManager.getSizeAndPositionForIndex(index);
|
434
432
|
|
435
433
|
return (this.styleCache[index] = sticky
|
436
434
|
? {
|
package/src/env.tsx
CHANGED
@@ -6,6 +6,11 @@ import {RendererConfig} from './factory';
|
|
6
6
|
import {ThemeInstance} from './theme';
|
7
7
|
import {Action, Api, Payload, Schema} from './types';
|
8
8
|
import hoistNonReactStatic from 'hoist-non-react-statics';
|
9
|
+
import {
|
10
|
+
RendererEvent,
|
11
|
+
RendererEventListener,
|
12
|
+
EventListeners
|
13
|
+
} from './utils/renderer-event';
|
9
14
|
|
10
15
|
export interface RendererEnv {
|
11
16
|
fetcher: (api: Api, data?: any, options?: object) => Promise<Payload>;
|
@@ -54,6 +59,23 @@ export interface RendererEnv {
|
|
54
59
|
) => Promise<React.ReactType> | React.ReactType | JSX.Element | void;
|
55
60
|
loadChartExtends?: () => void | Promise<void>;
|
56
61
|
useMobileUI?: boolean;
|
62
|
+
bindEvent: (context: any) => (() => void) | undefined;
|
63
|
+
dispatchEvent: (
|
64
|
+
e:
|
65
|
+
| string
|
66
|
+
| React.ClipboardEvent<any>
|
67
|
+
| React.DragEvent<any>
|
68
|
+
| React.ChangeEvent<any>
|
69
|
+
| React.KeyboardEvent<any>
|
70
|
+
| React.TouchEvent<any>
|
71
|
+
| React.WheelEvent<any>
|
72
|
+
| React.AnimationEvent<any>
|
73
|
+
| React.TransitionEvent<any>
|
74
|
+
| React.MouseEvent<any>,
|
75
|
+
context: any,
|
76
|
+
data: any
|
77
|
+
) => Promise<RendererEvent<any> | undefined>;
|
78
|
+
rendererEventListeners: RendererEventListener[];
|
57
79
|
[propName: string]: any;
|
58
80
|
}
|
59
81
|
|
package/src/factory.tsx
CHANGED
@@ -4,6 +4,7 @@ import {getEnv, destroy} from 'mobx-state-tree';
|
|
4
4
|
import {wrapFetcher} from './utils/api';
|
5
5
|
import {normalizeLink} from './utils/normalizeLink';
|
6
6
|
import {
|
7
|
+
createObject,
|
7
8
|
findIndex,
|
8
9
|
isObject,
|
9
10
|
JSONTraverse,
|
@@ -33,6 +34,14 @@ import ScopedRootRenderer, {RootRenderProps} from './Root';
|
|
33
34
|
import {HocStoreFactory} from './WithStore';
|
34
35
|
import {EnvContext, RendererEnv} from './env';
|
35
36
|
import {envOverwrite} from './envOverwrite';
|
37
|
+
import {
|
38
|
+
EventListeners,
|
39
|
+
createRendererEvent,
|
40
|
+
RendererEventListener,
|
41
|
+
OnEventProps,
|
42
|
+
RendererEvent
|
43
|
+
} from './utils/renderer-event';
|
44
|
+
import {runActions} from './actions/Action';
|
36
45
|
|
37
46
|
export interface TestFunc {
|
38
47
|
(
|
@@ -63,7 +72,7 @@ export interface RendererBasicConfig {
|
|
63
72
|
// [propName:string]:any;
|
64
73
|
}
|
65
74
|
|
66
|
-
export interface RendererProps extends ThemeProps, LocaleProps {
|
75
|
+
export interface RendererProps extends ThemeProps, LocaleProps, OnEventProps {
|
67
76
|
render: (region: string, node: SchemaNode, props?: any) => JSX.Element;
|
68
77
|
env: RendererEnv;
|
69
78
|
$path: string; // 当前组件所在的层级信息
|
@@ -257,7 +266,9 @@ const defaultOptions: RenderOptions = {
|
|
257
266
|
affixOffsetTop: 0,
|
258
267
|
affixOffsetBottom: 0,
|
259
268
|
richTextToken: '',
|
269
|
+
useMobileUI: true, // 是否启用移动端原生 UI
|
260
270
|
loadRenderer,
|
271
|
+
rendererEventListeners: [],
|
261
272
|
fetcher() {
|
262
273
|
return Promise.reject('fetcher is required');
|
263
274
|
},
|
@@ -347,6 +358,82 @@ const defaultOptions: RenderOptions = {
|
|
347
358
|
},
|
348
359
|
// 用于跟踪用户在界面中的各种操作
|
349
360
|
tracker(eventTrack: EventTrack, props: PlainObject) {},
|
361
|
+
// 返回解绑函数
|
362
|
+
bindEvent(renderer: any) {
|
363
|
+
const listeners: EventListeners = renderer.props.$schema.onEvent;
|
364
|
+
if (listeners) {
|
365
|
+
// 暂存
|
366
|
+
for (let key of Object.keys(listeners)) {
|
367
|
+
this.rendererEventListeners.push({
|
368
|
+
renderer,
|
369
|
+
type: key,
|
370
|
+
weight: listeners[key].weight || 0,
|
371
|
+
actions: listeners[key].actions
|
372
|
+
});
|
373
|
+
}
|
374
|
+
|
375
|
+
return () => {
|
376
|
+
this.rendererEventListeners = this.rendererEventListeners.filter(
|
377
|
+
(item: RendererEventListener) => item.renderer === renderer
|
378
|
+
);
|
379
|
+
};
|
380
|
+
}
|
381
|
+
|
382
|
+
return undefined;
|
383
|
+
},
|
384
|
+
async dispatchEvent(
|
385
|
+
e: string | React.MouseEvent<any>,
|
386
|
+
renderer: React.Component<RendererProps>,
|
387
|
+
data: any,
|
388
|
+
broadcast: RendererEvent<any>
|
389
|
+
) {
|
390
|
+
const eventName = typeof e === 'string' ? e : e.type;
|
391
|
+
if (!broadcast) {
|
392
|
+
const eventConfig = renderer?.props?.onEvent?.[eventName];
|
393
|
+
|
394
|
+
if (!eventConfig) {
|
395
|
+
// 没命中也没关系
|
396
|
+
return Promise.resolve(undefined);
|
397
|
+
}
|
398
|
+
}
|
399
|
+
|
400
|
+
// 没有可处理的监听
|
401
|
+
if (!this.rendererEventListeners.length) {
|
402
|
+
return Promise.resolve();
|
403
|
+
}
|
404
|
+
|
405
|
+
// 如果是广播动作,就直接复用
|
406
|
+
const rendererEvent =
|
407
|
+
broadcast ||
|
408
|
+
createRendererEvent(eventName, {
|
409
|
+
env: this,
|
410
|
+
nativeEvent: e,
|
411
|
+
data
|
412
|
+
});
|
413
|
+
|
414
|
+
// 过滤&排序
|
415
|
+
const listeners = this.rendererEventListeners
|
416
|
+
.filter(
|
417
|
+
(item: RendererEventListener) =>
|
418
|
+
item.type === eventName &&
|
419
|
+
(broadcast ? true : item.renderer === renderer)
|
420
|
+
)
|
421
|
+
.sort(
|
422
|
+
(prev: RendererEventListener, next: RendererEventListener) =>
|
423
|
+
next.weight - prev.weight
|
424
|
+
);
|
425
|
+
|
426
|
+
for (let listener of listeners) {
|
427
|
+
await runActions(listener.actions, listener.renderer, rendererEvent);
|
428
|
+
|
429
|
+
// 停止后续监听器执行
|
430
|
+
if (rendererEvent.stoped) {
|
431
|
+
break;
|
432
|
+
}
|
433
|
+
}
|
434
|
+
|
435
|
+
return rendererEvent;
|
436
|
+
},
|
350
437
|
rendererResolver: resolveRenderer,
|
351
438
|
replaceTextIgnoreKeys: [
|
352
439
|
'type',
|
@@ -410,6 +497,11 @@ export function render(
|
|
410
497
|
env.locale = locale;
|
411
498
|
}
|
412
499
|
|
500
|
+
// 默认将开启移动端原生 UI
|
501
|
+
if (typeof options.useMobileUI) {
|
502
|
+
props.useMobileUI = true;
|
503
|
+
}
|
504
|
+
|
413
505
|
// 进行文本替换
|
414
506
|
if (env.replaceText && isObject(env.replaceText)) {
|
415
507
|
const replaceKeys = Object.keys(env.replaceText);
|
package/src/index.tsx
CHANGED
@@ -41,6 +41,8 @@ import {
|
|
41
41
|
|
42
42
|
import './locale/zh-CN';
|
43
43
|
|
44
|
+
import './utils/debug';
|
45
|
+
|
44
46
|
import animation from './utils/Animation';
|
45
47
|
|
46
48
|
export * from './Schema';
|
@@ -165,6 +167,7 @@ import './renderers/Icon';
|
|
165
167
|
import './renderers/Carousel';
|
166
168
|
import './renderers/AnchorNav';
|
167
169
|
import './renderers/Steps';
|
170
|
+
import './renderers/Timeline';
|
168
171
|
import './renderers/Markdown';
|
169
172
|
import './renderers/TableView';
|
170
173
|
import './renderers/Code';
|
@@ -211,6 +214,8 @@ import {
|
|
211
214
|
} from './theme';
|
212
215
|
const classPrefix = getClassPrefix();
|
213
216
|
|
217
|
+
import './actions';
|
218
|
+
|
214
219
|
export * from './components/index';
|
215
220
|
|
216
221
|
export {
|
package/src/locale/de-DE.ts
CHANGED
@@ -6,6 +6,15 @@ register('de-DE', {
|
|
6
6
|
'asc': 'Aufsteigend',
|
7
7
|
'App.home': 'Startseite',
|
8
8
|
'App.navigation': 'Navigation',
|
9
|
+
'Calendar.datepicker': 'Auswahl des Datums',
|
10
|
+
'Calendar.yearmonth': 'YYYY MM',
|
11
|
+
'Calendar.year': 'YYYY',
|
12
|
+
'Calendar.begin': 'beginnt',
|
13
|
+
'Calendar.end': 'ende',
|
14
|
+
'Calendar.beginAndEnd': 'b/e',
|
15
|
+
'Calendar.toast': 'Außerhalb des Datumsbereichs',
|
16
|
+
'Calendar.startPick': 'Wählen Sie Startzeit',
|
17
|
+
'Calendar.endPick': 'Wählen Sie Endzeit',
|
9
18
|
'cancel': 'Abbrechen',
|
10
19
|
'Card.dragTip': 'Obere Schaltfläche zum Sortieren ziehen',
|
11
20
|
'Card.toggleDrag': 'Zum Sortieren umschalten',
|
@@ -34,6 +43,10 @@ register('de-DE', {
|
|
34
43
|
'CRUD.paginationGoText': 'Wechseln zu',
|
35
44
|
'CRUD.paginationPageText': 'Seite',
|
36
45
|
'PaginationWrapper.placeholder': 'Textkörper konfigurieren',
|
46
|
+
'Date.titleYear': '',
|
47
|
+
'Date.titleMonth': '',
|
48
|
+
'Date.titleDate': '',
|
49
|
+
'Date.titleTime': '',
|
37
50
|
'Date.daysago': 'Vor {{days}} Tag(en)',
|
38
51
|
'Date.dayslater': '{{days}} Tag(e) später',
|
39
52
|
'Date.endOfMonth': 'Letzter Tag des Monats',
|
@@ -215,7 +228,7 @@ register('de-DE', {
|
|
215
228
|
'validate.minimum': 'Der Eingabewert ist kleiner als der Mindestwert von $1.',
|
216
229
|
'validate.minLength': 'Geben Sie weitere Zeichen ein, mindestens $1.',
|
217
230
|
'validate.notEmptyString': 'Geben Sie nicht nur Leerzeichen ein.',
|
218
|
-
'validateFailed': 'Fehler bei der Überprüfung
|
231
|
+
'validateFailed': 'Fehler bei der Überprüfung',
|
219
232
|
'Wizard.configError': 'Konfigurationsfehler',
|
220
233
|
'Wizard.finish': 'Ende',
|
221
234
|
'Wizard.next': 'Weiter',
|
@@ -254,5 +267,7 @@ register('de-DE', {
|
|
254
267
|
'Condition.cond_placeholder': 'Bedingung auswählen',
|
255
268
|
'Condition.field_placeholder': 'Feld auswählen',
|
256
269
|
'Condition.blank': 'leer',
|
257
|
-
'InputTable.uniqueError': 'Column `{{label}}` unique validate failed'
|
270
|
+
'InputTable.uniqueError': 'Column `{{label}}` unique validate failed',
|
271
|
+
'Timeline.collapseText': 'Entfalten',
|
272
|
+
'Timeline.expandText': 'Falten'
|
258
273
|
});
|
package/src/locale/en-US.ts
CHANGED
@@ -6,6 +6,15 @@ register('en-US', {
|
|
6
6
|
'App.home': 'Home',
|
7
7
|
'App.navigation': 'Navigation',
|
8
8
|
'asc': 'Asc',
|
9
|
+
'Calendar.datepicker': 'Date Picker',
|
10
|
+
'Calendar.yearmonth': 'YYYY MM',
|
11
|
+
'Calendar.year': 'YYYY',
|
12
|
+
'Calendar.begin': 'begin',
|
13
|
+
'Calendar.end': 'end',
|
14
|
+
'Calendar.beginAndEnd': 'b/e',
|
15
|
+
'Calendar.toast': 'Out of date range',
|
16
|
+
'Calendar.startPick': 'Select start time',
|
17
|
+
'Calendar.endPick': 'Select end time',
|
9
18
|
'cancel': 'Cancel',
|
10
19
|
'Card.dragTip': 'Drag top button to sort',
|
11
20
|
'Card.toggleDrag': 'Toggle drag to sort',
|
@@ -34,6 +43,10 @@ register('en-US', {
|
|
34
43
|
'CRUD.paginationGoText': 'Go to',
|
35
44
|
'CRUD.paginationPageText': 'page',
|
36
45
|
'PaginationWrapper.placeholder': 'please config body',
|
46
|
+
'Date.titleYear': 'select year',
|
47
|
+
'Date.titleMonth': 'select month and year',
|
48
|
+
'Date.titleDate': 'select month, year and day',
|
49
|
+
'Date.titleTime': 'select time',
|
37
50
|
'Date.daysago': '{{days}} day(s) ago',
|
38
51
|
'Date.dayslater': '{{days}} day(s) later',
|
39
52
|
'Date.endOfMonth': 'last day of the month',
|
@@ -217,7 +230,7 @@ register('en-US', {
|
|
217
230
|
'validate.minimum': 'The input value is lower than the minimum value of $1',
|
218
231
|
'validate.minLength': 'Please enter more, at least $1 characters.',
|
219
232
|
'validate.notEmptyString': 'Please do not enter all blank characters',
|
220
|
-
'validateFailed': 'Validate failed
|
233
|
+
'validateFailed': 'Validate failed',
|
221
234
|
'Wizard.configError': 'Config error',
|
222
235
|
'Wizard.finish': 'Finish',
|
223
236
|
'Wizard.next': 'Next',
|
@@ -256,5 +269,7 @@ register('en-US', {
|
|
256
269
|
'Condition.cond_placeholder': 'select condition',
|
257
270
|
'Condition.field_placeholder': 'select field',
|
258
271
|
'Condition.blank': 'blank',
|
259
|
-
'InputTable.uniqueError': 'Column `{{label}}` unique validate failed'
|
272
|
+
'InputTable.uniqueError': 'Column `{{label}}` unique validate failed',
|
273
|
+
'Timeline.collapseText': 'Unfold',
|
274
|
+
'Timeline.expandText': 'Fold'
|
260
275
|
});
|
package/src/locale/zh-CN.ts
CHANGED
@@ -6,6 +6,15 @@ register('zh-CN', {
|
|
6
6
|
'App.home': '首页',
|
7
7
|
'App.navigation': '导航',
|
8
8
|
'asc': '正序',
|
9
|
+
'Calendar.datepicker': '日期选择',
|
10
|
+
'Calendar.yearmonth': 'YYYY年MM月',
|
11
|
+
'Calendar.year': 'YYYY年',
|
12
|
+
'Calendar.begin': '开始',
|
13
|
+
'Calendar.end': '结束',
|
14
|
+
'Calendar.beginAndEnd': '始/终',
|
15
|
+
'Calendar.toast': '超出日期范围',
|
16
|
+
'Calendar.startPick': '选择开始时间',
|
17
|
+
'Calendar.endPick': '选择结束时间',
|
9
18
|
'cancel': '取消',
|
10
19
|
'Card.dragTip': '请拖动顶部的按钮进行排序',
|
11
20
|
'Card.toggleDrag': '对卡片进行排序操作',
|
@@ -34,6 +43,10 @@ register('zh-CN', {
|
|
34
43
|
'CRUD.paginationGoText': '前往',
|
35
44
|
'CRUD.paginationPageText': '页',
|
36
45
|
'PaginationWrapper.placeholder': '请配置内容',
|
46
|
+
'Date.titleYear': '选择年',
|
47
|
+
'Date.titleMonth': '选择年月',
|
48
|
+
'Date.titleDate': '选择年月日',
|
49
|
+
'Date.titleTime': '选择时间',
|
37
50
|
'Date.daysago': '{{days}}天前',
|
38
51
|
'Date.dayslater': '{{days}}天后',
|
39
52
|
'Date.endOfMonth': '本月最后一天',
|
@@ -260,5 +273,7 @@ register('zh-CN', {
|
|
260
273
|
'Condition.cond_placeholder': '请选择操作',
|
261
274
|
'Condition.field_placeholder': '请选择字段',
|
262
275
|
'Condition.blank': '空',
|
263
|
-
'InputTable.uniqueError': '列`{{label}}`没有通过唯一验证'
|
276
|
+
'InputTable.uniqueError': '列`{{label}}`没有通过唯一验证',
|
277
|
+
'Timeline.collapseText': '展开',
|
278
|
+
'Timeline.expandText': '折叠'
|
264
279
|
});
|
package/src/renderers/Action.tsx
CHANGED
@@ -405,6 +405,7 @@ import {generateIcon} from '../utils/icon';
|
|
405
405
|
import {BadgeSchema, withBadge} from '../components/Badge';
|
406
406
|
import {normalizeApi, str2AsyncFunction} from '../utils/api';
|
407
407
|
import {TooltipWrapper} from '../components/TooltipWrapper';
|
408
|
+
import handleAction from '../utils/handleAction';
|
408
409
|
|
409
410
|
// 构造一个假的 React 事件避免可能的报错,主要用于快捷键功能
|
410
411
|
// 来自 https://stackoverflow.com/questions/27062455/reactjs-can-i-create-my-own-syntheticevent
|
@@ -828,8 +829,16 @@ export class ActionRenderer extends React.Component<
|
|
828
829
|
}
|
829
830
|
> {
|
830
831
|
@autobind
|
831
|
-
handleAction(e: React.MouseEvent<any> | void | null, action: any) {
|
832
|
-
const {env, onAction, data, ignoreConfirm} = this.props;
|
832
|
+
async handleAction(e: React.MouseEvent<any> | void | null, action: any) {
|
833
|
+
const {env, onAction, data, ignoreConfirm, dispatchEvent} = this.props;
|
834
|
+
|
835
|
+
// 触发渲染器事件
|
836
|
+
const rendererEvent = await dispatchEvent(e as React.MouseEvent<any>, data);
|
837
|
+
|
838
|
+
// 阻止原有动作执行
|
839
|
+
if (rendererEvent?.prevented) {
|
840
|
+
return;
|
841
|
+
}
|
833
842
|
|
834
843
|
if (!ignoreConfirm && action.confirmText && env.confirm) {
|
835
844
|
env
|