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
@@ -5,6 +5,7 @@ var tslib_1 = require("tslib");
|
|
5
5
|
var react_1 = tslib_1.__importStar(require("react"));
|
6
6
|
var classnames_1 = (0, tslib_1.__importDefault)(require("classnames"));
|
7
7
|
var Item_1 = require("./Item");
|
8
|
+
var helper_1 = require("../../utils/helper");
|
8
9
|
exports.ColorPicker = react_1.default.lazy(function () { return Promise.resolve().then(function () { return new Promise(function(resolve){require(['../../components/ColorPicker'], function(ret) {resolve(tslib_1.__importStar(ret));})}); }); });
|
9
10
|
var ColorControl = /** @class */ (function (_super) {
|
10
11
|
(0, tslib_1.__extends)(ColorControl, _super);
|
@@ -16,10 +17,13 @@ var ColorControl = /** @class */ (function (_super) {
|
|
16
17
|
return _this;
|
17
18
|
}
|
18
19
|
ColorControl.prototype.render = function () {
|
19
|
-
var _a = this.props, className = _a.className, ns = _a.classPrefix, value = _a.value, env = _a.env, rest = (0, tslib_1.__rest)(_a, ["className", "classPrefix", "value", "env"]);
|
20
|
+
var _a = this.props, className = _a.className, ns = _a.classPrefix, value = _a.value, env = _a.env, useMobileUI = _a.useMobileUI, rest = (0, tslib_1.__rest)(_a, ["className", "classPrefix", "value", "env", "useMobileUI"]);
|
21
|
+
var mobileUI = useMobileUI && (0, helper_1.isMobile)();
|
20
22
|
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(ns + "ColorControl", className) },
|
21
23
|
react_1.default.createElement(react_1.Suspense, { fallback: react_1.default.createElement("div", null, "...") },
|
22
|
-
react_1.default.createElement(exports.ColorPicker, (0, tslib_1.__assign)({ classPrefix: ns }, rest, {
|
24
|
+
react_1.default.createElement(exports.ColorPicker, (0, tslib_1.__assign)({ classPrefix: ns }, rest, { useMobileUI: useMobileUI, popOverContainer: mobileUI && env && env.getModalContainer
|
25
|
+
? env.getModalContainer
|
26
|
+
: undefined, value: value || '' })))));
|
23
27
|
};
|
24
28
|
ColorControl.defaultProps = {
|
25
29
|
format: 'hex',
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/renderers/Form/InputColor.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";;;;AAAA,0DAAsC;AACtC,uEAA4B;AAE5B,+BAAmE;
|
9
|
+
"mappings": ";;;;AAAA,0DAAsC;AACtC,uEAA4B;AAE5B,+BAAmE;AAEnE,6CAA4C;AAE/B,QAAA,WAAW,GAAG,eAAK,CAAC,IAAI,CACnC,cAAM,qFAAO,8BAA8B,QAArC,CAAsC,CAC7C,CAAC;AAiDF;IAA0C,6CAGzC;IAHD;QAAA,qEAwCC;QAhCC,WAAK,GAAsB;YACzB,IAAI,EAAE,KAAK;SACZ,CAAC;;IA8BJ,CAAC;IA5BC,6BAAM,GAAN;QACE,IAAM,KAOF,IAAI,CAAC,KAAK,EANZ,SAAS,eAAA,EACI,EAAE,iBAAA,EACf,KAAK,WAAA,EACL,GAAG,SAAA,EACH,WAAW,iBAAA,EACR,IAAI,2BANH,2DAOL,CAAa,CAAC;QACf,IAAM,QAAQ,GAAG,WAAW,IAAI,IAAA,iBAAQ,GAAE,CAAC;QAC3C,OAAO,CACL,uCAAK,SAAS,EAAE,IAAA,oBAAE,EAAI,EAAE,iBAAc,EAAE,SAAS,CAAC;YAChD,8BAAC,gBAAQ,IAAC,QAAQ,EAAE,iDAAc;gBAChC,8BAAC,mBAAW,0BACV,WAAW,EAAE,EAAE,IACX,IAAI,IACR,WAAW,EAAE,WAAW,EACxB,gBAAgB,EACd,QAAQ,IAAI,GAAG,IAAI,GAAG,CAAC,iBAAiB;wBACtC,CAAC,CAAC,GAAG,CAAC,iBAAiB;wBACvB,CAAC,CAAC,SAAS,EAEf,KAAK,EAAE,KAAK,IAAI,EAAE,IAClB,CACO,CACP,CACP,CAAC;IACJ,CAAC;IAnCM,yBAAY,GAAwB;QACzC,MAAM,EAAE,KAAK;QACb,SAAS,EAAE,IAAI;KAChB,CAAC;IAiCJ,mBAAC;CAAA,AAxCD,CAA0C,eAAK,CAAC,aAAa,GAwC5D;kBAxCoB,YAAY;AA6CjC;IAA0C,qDAAY;IAAtD;;IAAwD,CAAC;IAA5C,oBAAoB;QAHhC,IAAA,eAAQ,EAAC;YACR,IAAI,EAAE,aAAa;SACpB,CAAC;OACW,oBAAoB,CAAwB;IAAD,2BAAC;CAAA,AAAzD,CAA0C,YAAY,GAAG;AAA5C,oDAAoB",
|
10
10
|
"sourcesContent": [
|
11
|
-
"import React, {Suspense} from 'react';\nimport cx from 'classnames';\n\nimport {FormItem, FormControlProps, FormBaseControl} from './Item';\nimport type {PresetColor} from '../../components/ColorPicker';\n\nexport const ColorPicker = React.lazy(\n () => import('../../components/ColorPicker')\n);\n\n/**\n * Color 颜色选择框\n * 文档:https://baidu.gitee.io/amis/docs/components/form/color\n */\nexport interface InputColorControlSchema extends FormBaseControl {\n /**\n * 指定为颜色选择框\n */\n type: 'input-color';\n\n /**\n * 是否显示清除按钮\n */\n clearable?: boolean;\n\n /**\n * 颜色格式\n */\n format?: 'hex' | 'rgb' | 'rgba' | 'hsl';\n\n /**\n * 选中颜色后是否关闭弹出层。\n */\n closeOnSelect?: boolean;\n\n /**\n * 预设颜色,用户可以直接从预设中选。\n */\n presetColors?: Array<PresetColor>;\n\n /**\n * 是否允许用户输入颜色。\n */\n allowCustomColor?: boolean;\n}\n\nexport interface ColorProps\n extends FormControlProps,\n Omit<\n InputColorControlSchema,\n 'type' | 'className' | 'descriptionClassName' | 'inputClassName'\n > {}\n\nexport interface ColorControlState {\n open: boolean;\n}\n\nexport default class ColorControl extends React.PureComponent<\n ColorProps,\n ColorControlState\n> {\n static defaultProps: Partial<ColorProps> = {\n format: 'hex',\n clearable: true\n };\n state: ColorControlState = {\n open: false\n };\n\n render() {\n const {className
|
11
|
+
"import React, {Suspense} from 'react';\nimport cx from 'classnames';\n\nimport {FormItem, FormControlProps, FormBaseControl} from './Item';\nimport type {PresetColor} from '../../components/ColorPicker';\nimport {isMobile} from '../../utils/helper';\n\nexport const ColorPicker = React.lazy(\n () => import('../../components/ColorPicker')\n);\n\n/**\n * Color 颜色选择框\n * 文档:https://baidu.gitee.io/amis/docs/components/form/color\n */\nexport interface InputColorControlSchema extends FormBaseControl {\n /**\n * 指定为颜色选择框\n */\n type: 'input-color';\n\n /**\n * 是否显示清除按钮\n */\n clearable?: boolean;\n\n /**\n * 颜色格式\n */\n format?: 'hex' | 'rgb' | 'rgba' | 'hsl';\n\n /**\n * 选中颜色后是否关闭弹出层。\n */\n closeOnSelect?: boolean;\n\n /**\n * 预设颜色,用户可以直接从预设中选。\n */\n presetColors?: Array<PresetColor>;\n\n /**\n * 是否允许用户输入颜色。\n */\n allowCustomColor?: boolean;\n}\n\nexport interface ColorProps\n extends FormControlProps,\n Omit<\n InputColorControlSchema,\n 'type' | 'className' | 'descriptionClassName' | 'inputClassName'\n > {}\n\nexport interface ColorControlState {\n open: boolean;\n}\n\nexport default class ColorControl extends React.PureComponent<\n ColorProps,\n ColorControlState\n> {\n static defaultProps: Partial<ColorProps> = {\n format: 'hex',\n clearable: true\n };\n state: ColorControlState = {\n open: false\n };\n\n render() {\n const {\n className,\n classPrefix: ns,\n value,\n env,\n useMobileUI,\n ...rest\n } = this.props;\n const mobileUI = useMobileUI && isMobile();\n return (\n <div className={cx(`${ns}ColorControl`, className)}>\n <Suspense fallback={<div>...</div>}>\n <ColorPicker\n classPrefix={ns}\n {...rest}\n useMobileUI={useMobileUI}\n popOverContainer={\n mobileUI && env && env.getModalContainer\n ? env.getModalContainer\n : undefined\n }\n value={value || ''}\n />\n </Suspense>\n </div>\n );\n }\n}\n\n@FormItem({\n type: 'input-color'\n})\nexport class ColorControlRenderer extends ColorControl {}\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -50,8 +50,9 @@ var DateControl = /** @class */ (function (_super) {
|
|
50
50
|
: undefined
|
51
51
|
});
|
52
52
|
}
|
53
|
-
if ((0, helper_1.anyChanged)(['schedules', 'data'], prevProps, props)
|
54
|
-
|
53
|
+
if ((0, helper_1.anyChanged)(['schedules', 'data'], prevProps, props) &&
|
54
|
+
typeof props.schedules === 'string' &&
|
55
|
+
(0, tpl_builtin_1.isPureVariable)(props.schedules)) {
|
55
56
|
var schedulesData = (0, tpl_builtin_1.resolveVariableAndFilter)(props.schedules, props.data, '| raw');
|
56
57
|
var preSchedulesData = (0, tpl_builtin_1.resolveVariableAndFilter)(prevProps.schedules, prevProps.data, '| raw');
|
57
58
|
if (Array.isArray(schedulesData) && preSchedulesData !== schedulesData) {
|
@@ -85,15 +86,19 @@ var DateControl = /** @class */ (function (_super) {
|
|
85
86
|
}
|
86
87
|
}
|
87
88
|
};
|
88
|
-
onAction &&
|
89
|
+
onAction &&
|
90
|
+
onAction(null, scheduleAction || defaultscheduleAction, (0, helper_1.createObject)(data, scheduleData));
|
89
91
|
};
|
90
92
|
DateControl.prototype.render = function () {
|
91
|
-
var _a = this.props, className = _a.className, defaultValue = _a.defaultValue, defaultData = _a.defaultData, cx = _a.classnames, minDate = _a.minDate, maxDate = _a.maxDate, type = _a.type, format = _a.format, timeFormat = _a.timeFormat, valueFormat = _a.valueFormat, env = _a.env, largeMode = _a.largeMode, render = _a.render, rest = (0, tslib_1.__rest)(_a, ["className", "defaultValue", "defaultData", "classnames", "minDate", "maxDate", "type", "format", "timeFormat", "valueFormat", "env", "largeMode", "render"]);
|
93
|
+
var _a = this.props, className = _a.className, defaultValue = _a.defaultValue, defaultData = _a.defaultData, cx = _a.classnames, minDate = _a.minDate, maxDate = _a.maxDate, type = _a.type, format = _a.format, timeFormat = _a.timeFormat, valueFormat = _a.valueFormat, env = _a.env, largeMode = _a.largeMode, render = _a.render, useMobileUI = _a.useMobileUI, rest = (0, tslib_1.__rest)(_a, ["className", "defaultValue", "defaultData", "classnames", "minDate", "maxDate", "type", "format", "timeFormat", "valueFormat", "env", "largeMode", "render", "useMobileUI"]);
|
92
94
|
if (type === 'time' && timeFormat) {
|
93
95
|
format = timeFormat;
|
94
96
|
}
|
97
|
+
var mobileUI = useMobileUI && (0, helper_1.isMobile)();
|
95
98
|
return (react_1.default.createElement("div", { className: cx("DateControl", className) },
|
96
|
-
react_1.default.createElement(DatePicker_1.default, (0, tslib_1.__assign)({}, rest, {
|
99
|
+
react_1.default.createElement(DatePicker_1.default, (0, tslib_1.__assign)({}, rest, { useMobileUI: useMobileUI, popOverContainer: mobileUI && env && env.getModalContainer
|
100
|
+
? env.getModalContainer
|
101
|
+
: undefined, timeFormat: timeFormat, format: valueFormat || format }, this.state, { classnames: cx, schedules: this.state.schedules, largeMode: largeMode, onScheduleClick: this.onScheduleClick.bind(this) }))));
|
97
102
|
};
|
98
103
|
DateControl.defaultProps = {
|
99
104
|
format: 'X',
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/renderers/Form/InputDate.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";;;;AAAA,6DAA0B;AAC1B,+BAAmE;AAEnE,
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"import React from 'react';\nimport {FormItem, FormControlProps, FormBaseControl} from './Item';\nimport cx from 'classnames';\nimport {filterDate, isPureVariable, resolveVariableAndFilter} from '../../utils/tpl-builtin';\nimport moment from 'moment';\nimport 'moment/locale/zh-cn';\nimport DatePicker from '../../components/DatePicker';\nimport {SchemaObject} from '../../Schema';\nimport {createObject, anyChanged} from '../../utils/helper';\n\nexport interface InputDateBaseControlSchema extends FormBaseControl {\n /**\n * 指定为日期选择控件\n */\n type:\n | 'input-date'\n | 'input-datetime'\n | 'input-time'\n | 'input-month'\n | 'input-quarter'\n | 'input-year';\n\n /**\n * 是否显示清除按钮\n */\n clearable?: boolean;\n\n /**\n * 日期存储格式\n */\n format?: string;\n\n /**\n * 日期展示格式\n */\n inputFormat?: string;\n\n /**\n * 设定是否存储 utc 时间。\n */\n utc?: boolean;\n\n /**\n * 是否为内联模式?\n */\n emebed?: boolean;\n\n /**\n * 边框模式,全边框,还是半边框,或者没边框。\n */\n borderMode?: 'full' | 'half' | 'none';\n}\n\n/**\n * Date日期选择控件\n * 文档:https://baidu.gitee.io/amis/docs/components/form/date\n */\nexport interface DateControlSchema extends InputDateBaseControlSchema {\n /**\n * 指定为日期选择控件\n */\n type: 'input-date';\n\n /**\n * 日期存储格式\n * @default X\n */\n format?: string;\n\n /**\n * 日期展示格式\n * @default YYYY-MM-DD\n */\n inputFormat?: string;\n\n /**\n * 点选日期后是否关闭弹窗\n */\n closeOnSelect?: boolean;\n\n /**\n * 限制最小日期\n */\n minDate?: string;\n\n /**\n * 限制最大日期\n */\n maxDate?: string;\n\n /**\n * 日程\n */\n schedules?: Array<{\n startTime: Date,\n endTime: Date,\n content: any,\n className?: string\n }> | string;\n /**\n * 日程显示颜色自定义\n */\n scheduleClassNames?: Array<string>;\n /**\n * 日程点击展示\n */\n scheduleAction?: SchemaObject;\n}\n\n/**\n * Datetime日期时间选择控件\n * 文档:https://baidu.gitee.io/amis/docs/components/form/datetime\n */\nexport interface DateTimeControlSchema extends InputDateBaseControlSchema {\n /**\n * 指定为日期时间选择控件\n */\n type: 'input-datetime';\n\n /**\n * 日期存储格式\n * @default X\n */\n format?: string;\n\n /**\n * 日期展示格式\n * @default YYYY-MM-DD HH:mm\n */\n inputFormat?: string;\n\n /**\n * 时间的格式。\n *\n * @default HH:mm\n */\n timeFormat?: string;\n\n /**\n * 限制最小日期\n */\n minDate?: string;\n\n /**\n * 限制最大日期\n */\n maxDate?: string;\n\n /**\n * 不记得了\n */\n timeConstraints?: any;\n}\n\n/**\n * Time 时间选择控件\n * 文档:https://baidu.gitee.io/amis/docs/components/form/time\n */\nexport interface TimeControlSchema extends InputDateBaseControlSchema {\n /**\n * 指定为日期时间选择控件\n */\n type: 'input-time';\n\n /**\n * 日期存储格式\n * @default X\n */\n format?: string;\n\n /**\n * 日期展示格式\n * @default YYYY-MM-DD HH:mm\n */\n inputFormat?: string;\n\n /**\n * 时间的格式。\n *\n * @default HH:mm\n */\n timeFormat?: string;\n\n /**\n * 不记得了\n */\n timeConstraints?: any;\n}\n\n/**\n * Month 月份选择控件\n * 文档:https://baidu.gitee.io/amis/docs/components/form/Month\n */\nexport interface MonthControlSchema extends InputDateBaseControlSchema {\n /**\n * 指定为月份时间选择控件\n */\n type: 'input-month';\n\n /**\n * 月份存储格式\n * @default X\n */\n format?: string;\n\n /**\n * 月份展示格式\n * @default YYYY-MM\n */\n inputFormat?: string;\n}\n\n/**\n * 季度选择控件\n */\nexport interface QuarterControlSchema extends InputDateBaseControlSchema {\n /**\n * 指定为月份时间选择控件\n */\n type: 'input-quarter';\n\n /**\n * 月份存储格式\n * @default X\n */\n format?: string;\n\n /**\n * 月份展示格式\n * @default YYYY-MM\n */\n inputFormat?: string;\n}\n\n/**\n * 年份选择控件\n */\nexport interface YearControlSchema extends InputDateBaseControlSchema {\n /**\n * 指定为月份时间选择控件\n */\n type: 'input-year';\n\n /**\n * 月份存储格式\n * @default X\n */\n format?: string;\n\n /**\n * 月份展示格式\n * @default YYYY-MM\n */\n inputFormat?: string;\n}\n\nexport interface DateProps extends FormControlProps {\n inputFormat?: string;\n timeFormat?: string;\n format?: string;\n valueFormat?: string;\n timeConstraints?: {\n hours?: {\n min: number;\n max: number;\n step: number;\n };\n minutes?: {\n min: number;\n max: number;\n step: number;\n };\n seconds: {\n min: number;\n max: number;\n step: number;\n };\n };\n closeOnSelect?: boolean;\n disabled: boolean;\n iconClassName?: string;\n utc?: boolean; // 设定是否存储 utc 时间。\n minDate?: string;\n maxDate?: string;\n}\n\ninterface DateControlState {\n minDate?: moment.Moment;\n maxDate?: moment.Moment;\n schedules?: Array<{\n startTime: Date,\n endTime: Date,\n content: any,\n className?: string\n }>;\n}\n\nexport default class DateControl extends React.PureComponent<\n DateProps,\n DateControlState\n> {\n static defaultProps = {\n format: 'X',\n viewMode: 'days',\n inputFormat: 'YYYY-MM-DD',\n timeConstraints: {\n minutes: {\n step: 1\n }\n },\n clearable: true\n };\n\n constructor(props: DateProps) {\n super(props);\n\n const {\n minDate,\n maxDate,\n value,\n defaultValue,\n setPrinstineValue,\n data,\n format,\n utc\n } = props;\n\n if (defaultValue && value === defaultValue) {\n const date = filterDate(defaultValue, data, format);\n setPrinstineValue((utc ? moment.utc(date) : date).format(format));\n }\n\n let schedulesData = props.schedules;\n if (typeof schedulesData === 'string') {\n const resolved = resolveVariableAndFilter(schedulesData, data, '| raw');\n if (Array.isArray(resolved)) {\n schedulesData = resolved;\n }\n }\n\n this.state = {\n minDate: minDate ? filterDate(minDate, data, format) : undefined,\n maxDate: maxDate ? filterDate(maxDate, data, format) : undefined,\n schedules: schedulesData\n };\n }\n\n componentDidUpdate(prevProps: DateProps) {\n const props = this.props;\n\n if (prevProps.defaultValue !== props.defaultValue) {\n const date = filterDate(props.defaultValue, props.data, props.format);\n props.setPrinstineValue(\n (props.utc ? moment.utc(date) : date).format(props.format)\n );\n }\n\n if (\n prevProps.minDate !== props.minDate ||\n prevProps.maxDate !== props.maxDate ||\n prevProps.data !== props.data\n ) {\n this.setState({\n minDate: props.minDate\n ? filterDate(props.minDate, props.data, this.props.format)\n : undefined,\n maxDate: props.maxDate\n ? filterDate(props.maxDate, props.data, this.props.format)\n : undefined\n });\n }\n\n if (anyChanged(['schedules', 'data'], prevProps, props)\n && (typeof props.schedules === 'string' && isPureVariable(props.schedules))\n ) {\n const schedulesData = resolveVariableAndFilter(props.schedules, props.data, '| raw');\n const preSchedulesData = resolveVariableAndFilter(prevProps.schedules, prevProps.data, '| raw');\n if (Array.isArray(schedulesData) && preSchedulesData !== schedulesData) {\n this.setState({\n schedules: schedulesData\n })\n }\n }\n }\n\n // 日程点击事件\n onScheduleClick(scheduleData: any) {\n const {scheduleAction, onAction, data, translate: __} = this.props;\n const defaultscheduleAction = {\n actionType: 'dialog',\n dialog: {\n title: __('Schedule'),\n actions: [],\n body: {\n type: 'table',\n columns: [\n {\n name: 'time',\n label: __('Time')\n },\n {\n name: 'content',\n label: __('Content')\n }\n ],\n data: '${scheduleData}'\n }\n }\n };\n\n onAction && onAction(null, scheduleAction || defaultscheduleAction, createObject(data, scheduleData));\n\n }\n\n render() {\n let {\n className,\n defaultValue,\n defaultData,\n classnames: cx,\n minDate,\n maxDate,\n type,\n format,\n timeFormat,\n valueFormat,\n env,\n largeMode,\n render,\n ...rest\n } = this.props;\n\n if (type === 'time' && timeFormat) {\n format = timeFormat;\n }\n\n return (\n <div className={cx(`DateControl`, className)}>\n <DatePicker\n {...rest}\n timeFormat={timeFormat}\n format={valueFormat || format}\n {...this.state}\n classnames={cx}\n useMobileUI={env.useMobileUI}\n schedules={this.state.schedules}\n largeMode={largeMode}\n onScheduleClick={this.onScheduleClick.bind(this)}\n />\n </div>\n );\n }\n}\n\n@FormItem({\n type: 'input-date',\n weight: -150\n})\nexport class DateControlRenderer extends DateControl {\n static defaultProps = {\n ...DateControl.defaultProps,\n placeholder: 'Date.placeholder',\n dateFormat: 'YYYY-MM-DD',\n timeFormat: '',\n strictMode: false\n };\n}\n\n@FormItem({\n type: 'input-datetime'\n})\nexport class DatetimeControlRenderer extends DateControl {\n static defaultProps = {\n ...DateControl.defaultProps,\n placeholder: 'DateTime.placeholder',\n inputFormat: 'YYYY-MM-DD HH:mm:ss',\n dateFormat: 'LL',\n timeFormat: 'HH:mm:ss',\n closeOnSelect: false,\n strictMode: false\n };\n}\n\n@FormItem({\n type: 'input-time'\n})\nexport class TimeControlRenderer extends DateControl {\n static defaultProps = {\n ...DateControl.defaultProps,\n placeholder: 'Time.placeholder',\n inputFormat: 'HH:mm',\n dateFormat: '',\n timeFormat: 'HH:mm',\n viewMode: 'time',\n closeOnSelect: false\n };\n}\n\n@FormItem({\n type: 'input-month'\n})\nexport class MonthControlRenderer extends DateControl {\n static defaultProps = {\n ...DateControl.defaultProps,\n placeholder: 'Month.placeholder',\n inputFormat: 'YYYY-MM',\n dateFormat: 'MM',\n timeFormat: '',\n viewMode: 'months',\n closeOnSelect: true\n };\n}\n\n@FormItem({\n type: 'input-quarter'\n})\nexport class QuarterControlRenderer extends DateControl {\n static defaultProps = {\n ...DateControl.defaultProps,\n placeholder: 'Quarter.placeholder',\n inputFormat: 'YYYY [Q]Q',\n dateFormat: 'YYYY [Q]Q',\n timeFormat: '',\n viewMode: 'quarters',\n closeOnSelect: true\n };\n}\n\n@FormItem({\n type: 'input-year'\n})\nexport class YearControlRenderer extends DateControl {\n static defaultProps = {\n ...DateControl.defaultProps,\n placeholder: 'Year.placeholder',\n inputFormat: 'YYYY',\n dateFormat: 'YYYY',\n timeFormat: '',\n viewMode: 'years',\n closeOnSelect: true\n };\n}\n"
|
11
|
+
"import React from 'react';\nimport {FormItem, FormControlProps, FormBaseControl} from './Item';\nimport cx from 'classnames';\nimport {\n filterDate,\n isPureVariable,\n resolveVariableAndFilter\n} from '../../utils/tpl-builtin';\nimport moment from 'moment';\nimport 'moment/locale/zh-cn';\nimport DatePicker from '../../components/DatePicker';\nimport {SchemaObject} from '../../Schema';\nimport {createObject, anyChanged, isMobile} from '../../utils/helper';\n\nexport interface InputDateBaseControlSchema extends FormBaseControl {\n /**\n * 指定为日期选择控件\n */\n type:\n | 'input-date'\n | 'input-datetime'\n | 'input-time'\n | 'input-month'\n | 'input-quarter'\n | 'input-year';\n\n /**\n * 是否显示清除按钮\n */\n clearable?: boolean;\n\n /**\n * 日期存储格式\n */\n format?: string;\n\n /**\n * 日期展示格式\n */\n inputFormat?: string;\n\n /**\n * 设定是否存储 utc 时间。\n */\n utc?: boolean;\n\n /**\n * 是否为内联模式?\n */\n emebed?: boolean;\n\n /**\n * 边框模式,全边框,还是半边框,或者没边框。\n */\n borderMode?: 'full' | 'half' | 'none';\n}\n\n/**\n * Date日期选择控件\n * 文档:https://baidu.gitee.io/amis/docs/components/form/date\n */\nexport interface DateControlSchema extends InputDateBaseControlSchema {\n /**\n * 指定为日期选择控件\n */\n type: 'input-date';\n\n /**\n * 日期存储格式\n * @default X\n */\n format?: string;\n\n /**\n * 日期展示格式\n * @default YYYY-MM-DD\n */\n inputFormat?: string;\n\n /**\n * 点选日期后是否关闭弹窗\n */\n closeOnSelect?: boolean;\n\n /**\n * 限制最小日期\n */\n minDate?: string;\n\n /**\n * 限制最大日期\n */\n maxDate?: string;\n\n /**\n * 日程\n */\n schedules?:\n | Array<{\n startTime: Date;\n endTime: Date;\n content: any;\n className?: string;\n }>\n | string;\n /**\n * 日程显示颜色自定义\n */\n scheduleClassNames?: Array<string>;\n /**\n * 日程点击展示\n */\n scheduleAction?: SchemaObject;\n}\n\n/**\n * Datetime日期时间选择控件\n * 文档:https://baidu.gitee.io/amis/docs/components/form/datetime\n */\nexport interface DateTimeControlSchema extends InputDateBaseControlSchema {\n /**\n * 指定为日期时间选择控件\n */\n type: 'input-datetime';\n\n /**\n * 日期存储格式\n * @default X\n */\n format?: string;\n\n /**\n * 日期展示格式\n * @default YYYY-MM-DD HH:mm\n */\n inputFormat?: string;\n\n /**\n * 时间的格式。\n *\n * @default HH:mm\n */\n timeFormat?: string;\n\n /**\n * 限制最小日期\n */\n minDate?: string;\n\n /**\n * 限制最大日期\n */\n maxDate?: string;\n\n /**\n * 不记得了\n */\n timeConstraints?: any;\n}\n\n/**\n * Time 时间选择控件\n * 文档:https://baidu.gitee.io/amis/docs/components/form/time\n */\nexport interface TimeControlSchema extends InputDateBaseControlSchema {\n /**\n * 指定为日期时间选择控件\n */\n type: 'input-time';\n\n /**\n * 日期存储格式\n * @default X\n */\n format?: string;\n\n /**\n * 日期展示格式\n * @default YYYY-MM-DD HH:mm\n */\n inputFormat?: string;\n\n /**\n * 时间的格式。\n *\n * @default HH:mm\n */\n timeFormat?: string;\n\n /**\n * 不记得了\n */\n timeConstraints?: any;\n}\n\n/**\n * Month 月份选择控件\n * 文档:https://baidu.gitee.io/amis/docs/components/form/Month\n */\nexport interface MonthControlSchema extends InputDateBaseControlSchema {\n /**\n * 指定为月份时间选择控件\n */\n type: 'input-month';\n\n /**\n * 月份存储格式\n * @default X\n */\n format?: string;\n\n /**\n * 月份展示格式\n * @default YYYY-MM\n */\n inputFormat?: string;\n}\n\n/**\n * 季度选择控件\n */\nexport interface QuarterControlSchema extends InputDateBaseControlSchema {\n /**\n * 指定为月份时间选择控件\n */\n type: 'input-quarter';\n\n /**\n * 月份存储格式\n * @default X\n */\n format?: string;\n\n /**\n * 月份展示格式\n * @default YYYY-MM\n */\n inputFormat?: string;\n}\n\n/**\n * 年份选择控件\n */\nexport interface YearControlSchema extends InputDateBaseControlSchema {\n /**\n * 指定为月份时间选择控件\n */\n type: 'input-year';\n\n /**\n * 月份存储格式\n * @default X\n */\n format?: string;\n\n /**\n * 月份展示格式\n * @default YYYY-MM\n */\n inputFormat?: string;\n}\n\nexport interface DateProps extends FormControlProps {\n inputFormat?: string;\n timeFormat?: string;\n format?: string;\n valueFormat?: string;\n timeConstraints?: {\n hours?: {\n min: number;\n max: number;\n step: number;\n };\n minutes?: {\n min: number;\n max: number;\n step: number;\n };\n seconds: {\n min: number;\n max: number;\n step: number;\n };\n };\n closeOnSelect?: boolean;\n disabled: boolean;\n iconClassName?: string;\n utc?: boolean; // 设定是否存储 utc 时间。\n minDate?: string;\n maxDate?: string;\n}\n\ninterface DateControlState {\n minDate?: moment.Moment;\n maxDate?: moment.Moment;\n schedules?: Array<{\n startTime: Date;\n endTime: Date;\n content: any;\n className?: string;\n }>;\n}\n\nexport default class DateControl extends React.PureComponent<\n DateProps,\n DateControlState\n> {\n static defaultProps = {\n format: 'X',\n viewMode: 'days',\n inputFormat: 'YYYY-MM-DD',\n timeConstraints: {\n minutes: {\n step: 1\n }\n },\n clearable: true\n };\n\n constructor(props: DateProps) {\n super(props);\n\n const {\n minDate,\n maxDate,\n value,\n defaultValue,\n setPrinstineValue,\n data,\n format,\n utc\n } = props;\n\n if (defaultValue && value === defaultValue) {\n const date = filterDate(defaultValue, data, format);\n setPrinstineValue((utc ? moment.utc(date) : date).format(format));\n }\n\n let schedulesData = props.schedules;\n if (typeof schedulesData === 'string') {\n const resolved = resolveVariableAndFilter(schedulesData, data, '| raw');\n if (Array.isArray(resolved)) {\n schedulesData = resolved;\n }\n }\n\n this.state = {\n minDate: minDate ? filterDate(minDate, data, format) : undefined,\n maxDate: maxDate ? filterDate(maxDate, data, format) : undefined,\n schedules: schedulesData\n };\n }\n\n componentDidUpdate(prevProps: DateProps) {\n const props = this.props;\n\n if (prevProps.defaultValue !== props.defaultValue) {\n const date = filterDate(props.defaultValue, props.data, props.format);\n props.setPrinstineValue(\n (props.utc ? moment.utc(date) : date).format(props.format)\n );\n }\n\n if (\n prevProps.minDate !== props.minDate ||\n prevProps.maxDate !== props.maxDate ||\n prevProps.data !== props.data\n ) {\n this.setState({\n minDate: props.minDate\n ? filterDate(props.minDate, props.data, this.props.format)\n : undefined,\n maxDate: props.maxDate\n ? filterDate(props.maxDate, props.data, this.props.format)\n : undefined\n });\n }\n\n if (\n anyChanged(['schedules', 'data'], prevProps, props) &&\n typeof props.schedules === 'string' &&\n isPureVariable(props.schedules)\n ) {\n const schedulesData = resolveVariableAndFilter(\n props.schedules,\n props.data,\n '| raw'\n );\n const preSchedulesData = resolveVariableAndFilter(\n prevProps.schedules,\n prevProps.data,\n '| raw'\n );\n if (Array.isArray(schedulesData) && preSchedulesData !== schedulesData) {\n this.setState({\n schedules: schedulesData\n });\n }\n }\n }\n\n // 日程点击事件\n onScheduleClick(scheduleData: any) {\n const {scheduleAction, onAction, data, translate: __} = this.props;\n const defaultscheduleAction = {\n actionType: 'dialog',\n dialog: {\n title: __('Schedule'),\n actions: [],\n body: {\n type: 'table',\n columns: [\n {\n name: 'time',\n label: __('Time')\n },\n {\n name: 'content',\n label: __('Content')\n }\n ],\n data: '${scheduleData}'\n }\n }\n };\n\n onAction &&\n onAction(\n null,\n scheduleAction || defaultscheduleAction,\n createObject(data, scheduleData)\n );\n }\n\n render() {\n let {\n className,\n defaultValue,\n defaultData,\n classnames: cx,\n minDate,\n maxDate,\n type,\n format,\n timeFormat,\n valueFormat,\n env,\n largeMode,\n render,\n useMobileUI,\n ...rest\n } = this.props;\n\n if (type === 'time' && timeFormat) {\n format = timeFormat;\n }\n\n const mobileUI = useMobileUI && isMobile();\n\n return (\n <div className={cx(`DateControl`, className)}>\n <DatePicker\n {...rest}\n useMobileUI={useMobileUI}\n popOverContainer={\n mobileUI && env && env.getModalContainer\n ? env.getModalContainer\n : undefined\n }\n timeFormat={timeFormat}\n format={valueFormat || format}\n {...this.state}\n classnames={cx}\n schedules={this.state.schedules}\n largeMode={largeMode}\n onScheduleClick={this.onScheduleClick.bind(this)}\n />\n </div>\n );\n }\n}\n\n@FormItem({\n type: 'input-date',\n weight: -150\n})\nexport class DateControlRenderer extends DateControl {\n static defaultProps = {\n ...DateControl.defaultProps,\n placeholder: 'Date.placeholder',\n dateFormat: 'YYYY-MM-DD',\n timeFormat: '',\n strictMode: false\n };\n}\n\n@FormItem({\n type: 'input-datetime'\n})\nexport class DatetimeControlRenderer extends DateControl {\n static defaultProps = {\n ...DateControl.defaultProps,\n placeholder: 'DateTime.placeholder',\n inputFormat: 'YYYY-MM-DD HH:mm:ss',\n dateFormat: 'LL',\n timeFormat: 'HH:mm:ss',\n closeOnSelect: false,\n strictMode: false\n };\n}\n\n@FormItem({\n type: 'input-time'\n})\nexport class TimeControlRenderer extends DateControl {\n static defaultProps = {\n ...DateControl.defaultProps,\n placeholder: 'Time.placeholder',\n inputFormat: 'HH:mm',\n dateFormat: '',\n timeFormat: 'HH:mm',\n viewMode: 'time',\n closeOnSelect: false\n };\n}\n\n@FormItem({\n type: 'input-month'\n})\nexport class MonthControlRenderer extends DateControl {\n static defaultProps = {\n ...DateControl.defaultProps,\n placeholder: 'Month.placeholder',\n inputFormat: 'YYYY-MM',\n dateFormat: 'MM',\n timeFormat: '',\n viewMode: 'months',\n closeOnSelect: true\n };\n}\n\n@FormItem({\n type: 'input-quarter'\n})\nexport class QuarterControlRenderer extends DateControl {\n static defaultProps = {\n ...DateControl.defaultProps,\n placeholder: 'Quarter.placeholder',\n inputFormat: 'YYYY [Q]Q',\n dateFormat: 'YYYY [Q]Q',\n timeFormat: '',\n viewMode: 'quarters',\n closeOnSelect: true\n };\n}\n\n@FormItem({\n type: 'input-year'\n})\nexport class YearControlRenderer extends DateControl {\n static defaultProps = {\n ...DateControl.defaultProps,\n placeholder: 'Year.placeholder',\n inputFormat: 'YYYY',\n dateFormat: 'YYYY',\n timeFormat: '',\n viewMode: 'years',\n closeOnSelect: true\n };\n}\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -8,6 +8,7 @@ var classnames_1 = (0, tslib_1.__importDefault)(require("classnames"));
|
|
8
8
|
var tpl_builtin_1 = require("../../utils/tpl-builtin");
|
9
9
|
require("moment/locale/zh-cn");
|
10
10
|
var DateRangePicker_1 = tslib_1.__importStar(require("../../components/DateRangePicker"));
|
11
|
+
var helper_1 = require("../../utils/helper");
|
11
12
|
var DateRangeControl = /** @class */ (function (_super) {
|
12
13
|
(0, tslib_1.__extends)(DateRangeControl, _super);
|
13
14
|
function DateRangeControl(props) {
|
@@ -39,9 +40,12 @@ var DateRangeControl = /** @class */ (function (_super) {
|
|
39
40
|
}
|
40
41
|
};
|
41
42
|
DateRangeControl.prototype.render = function () {
|
42
|
-
var _a = this.props, className = _a.className, ns = _a.classPrefix, defaultValue = _a.defaultValue, defaultData = _a.defaultData, minDate = _a.minDate, maxDate = _a.maxDate, minDuration = _a.minDuration, maxDuration = _a.maxDuration, data = _a.data, format = _a.format, env = _a.env, rest = (0, tslib_1.__rest)(_a, ["className", "classPrefix", "defaultValue", "defaultData", "minDate", "maxDate", "minDuration", "maxDuration", "data", "format", "env"]);
|
43
|
+
var _a = this.props, className = _a.className, ns = _a.classPrefix, defaultValue = _a.defaultValue, defaultData = _a.defaultData, minDate = _a.minDate, maxDate = _a.maxDate, minDuration = _a.minDuration, maxDuration = _a.maxDuration, data = _a.data, format = _a.format, env = _a.env, useMobileUI = _a.useMobileUI, rest = (0, tslib_1.__rest)(_a, ["className", "classPrefix", "defaultValue", "defaultData", "minDate", "maxDate", "minDuration", "maxDuration", "data", "format", "env", "useMobileUI"]);
|
44
|
+
var mobileUI = useMobileUI && (0, helper_1.isMobile)();
|
43
45
|
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(ns + "DateRangeControl", className) },
|
44
|
-
react_1.default.createElement(DateRangePicker_1.default, (0, tslib_1.__assign)({}, rest, {
|
46
|
+
react_1.default.createElement(DateRangePicker_1.default, (0, tslib_1.__assign)({}, rest, { useMobileUI: useMobileUI, classPrefix: ns, popOverContainer: mobileUI && env && env.getModalContainer
|
47
|
+
? env.getModalContainer
|
48
|
+
: undefined, data: data, format: format, minDate: minDate ? (0, tpl_builtin_1.filterDate)(minDate, data, format) : undefined, maxDate: maxDate ? (0, tpl_builtin_1.filterDate)(maxDate, data, format) : undefined, minDuration: minDuration ? (0, tpl_builtin_1.parseDuration)(minDuration) : undefined, maxDuration: maxDuration ? (0, tpl_builtin_1.parseDuration)(maxDuration) : undefined }))));
|
45
49
|
};
|
46
50
|
DateRangeControl.defaultProps = {
|
47
51
|
format: 'X',
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/renderers/Form/InputDateRange.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";;;;AAAA,6DAA0B;AAC1B,+BAAmE;AACnE,uEAA4B;AAC5B,uDAAkE;AAClE,+BAA6B;AAC7B,+FAE0C;
|
9
|
+
"mappings": "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",
|
10
10
|
"sourcesContent": [
|
11
|
-
"import React from 'react';\nimport {FormItem, FormControlProps, FormBaseControl} from './Item';\nimport cx from 'classnames';\nimport {filterDate, parseDuration} from '../../utils/tpl-builtin';\nimport 'moment/locale/zh-cn';\nimport DateRangePicker, {\n DateRangePicker as BaseDateRangePicker\n} from '../../components/DateRangePicker';\n\n/**\n * DateRange 日期范围控件\n * 文档:https://baidu.gitee.io/amis/docs/components/form/date-range\n */\nexport interface DateRangeControlSchema extends FormBaseControl {\n /**\n * 指定为日期范围控件\n */\n type: 'input-date-range' | 'input-datetime-range' | 'input-time-range';\n\n /**\n * 分割符, 因为有两个值,开始时间和结束时间,所以要有连接符。默认为英文逗号。\n *\n */\n delimiter?: string;\n\n /**\n * 默认 `X` 即时间戳格式,用来提交的时间格式。更多格式类型请参考 moment.\n */\n format?: string;\n\n /**\n * 默认 `YYYY-MM-DD` 用来配置显示的时间格式。\n */\n inputFormat?: string;\n\n /**\n * 开启后将选中的选项 value 的值用连接符拼接起来,作为当前表单项的值。如: `value1,value2` 否则为 `[value1, value2]`\n */\n joinValues?: boolean;\n\n /**\n * 最大日期限制,支持变量 $xxx 来取值,或者用相对值如:* `-2mins` 2分钟前\\n * `+2days` 2天后\\n* `-10week` 十周前\\n可用单位: `min`、`hour`、`day`、`week`、`month`、`year`。所有单位支持复数形式。\n */\n maxDate?: string;\n\n /**\n * 最小日期限制,支持变量 $xxx 来取值,或者用相对值如:* `-2mins` 2分钟前\\n * `+2days` 2天后\\n* `-10week` 十周前\\n可用单位: `min`、`hour`、`day`、`week`、`month`、`year`。所有单位支持复数形式。\n */\n minDate?: string;\n\n /**\n * 最大跨度,比如 2days\n */\n maxDuration?: string;\n\n /**\n * 最小跨度,比如 2days\n */\n minDuration?: string;\n\n /**\n * 这里面 value 需要特殊说明一下,因为支持相对值。* `-2mins` 2分钟前\\n * `+2days` 2天后\\n* `-10week` 十周前\\n可用单位: `min`、`hour`、`day`、`week`、`month`、`year`。所有单位支持复数形式。\n */\n value?: any;\n\n /**\n * 边框模式,全边框,还是半边框,或者没边框。\n */\n borderMode?: 'full' | 'half' | 'none';\n\n /**\n * 开启后变成非弹出模式,即内联模式。\n */\n embed?: boolean;\n}\n\nexport interface DateRangeProps\n extends FormControlProps,\n Omit<\n DateRangeControlSchema,\n 'type' | 'className' | 'descriptionClassName' | 'inputClassName'\n > {\n delimiter: string;\n format: string;\n joinValues: boolean;\n}\n\nexport default class DateRangeControl extends React.Component<DateRangeProps> {\n static defaultProps = {\n format: 'X',\n joinValues: true,\n delimiter: ','\n };\n\n constructor(props: DateRangeProps) {\n super(props);\n\n const {\n defaultValue,\n setPrinstineValue,\n delimiter,\n format,\n data,\n value,\n joinValues,\n utc\n } = props;\n\n if (defaultValue && value === defaultValue) {\n let arr =\n typeof defaultValue === 'string'\n ? defaultValue.split(delimiter)\n : defaultValue;\n setPrinstineValue(\n BaseDateRangePicker.formatValue(\n {\n startDate: filterDate(arr[0], data, format),\n endDate: filterDate(arr[1], data, format)\n },\n format,\n joinValues,\n delimiter,\n utc\n )\n );\n }\n }\n\n componentDidUpdate(prevProps: DateRangeProps) {\n const {\n defaultValue,\n delimiter,\n joinValues,\n setPrinstineValue,\n data,\n utc,\n format\n } = this.props;\n\n if (prevProps.defaultValue !== defaultValue) {\n let arr =\n typeof defaultValue === 'string'\n ? defaultValue.split(delimiter)\n : defaultValue;\n\n setPrinstineValue(\n arr\n ? BaseDateRangePicker.formatValue(\n {\n startDate: filterDate(arr[0], data, format),\n endDate: filterDate(arr[1], data, format)\n },\n format,\n joinValues,\n delimiter,\n utc\n )\n : undefined\n );\n }\n }\n\n render() {\n const {\n className,\n classPrefix: ns,\n defaultValue,\n defaultData,\n minDate,\n maxDate,\n minDuration,\n maxDuration,\n data,\n format,\n env,\n ...rest\n } = this.props;\n
|
11
|
+
"import React from 'react';\nimport {FormItem, FormControlProps, FormBaseControl} from './Item';\nimport cx from 'classnames';\nimport {filterDate, parseDuration} from '../../utils/tpl-builtin';\nimport 'moment/locale/zh-cn';\nimport DateRangePicker, {\n DateRangePicker as BaseDateRangePicker\n} from '../../components/DateRangePicker';\nimport {isMobile} from '../../utils/helper';\n\n/**\n * DateRange 日期范围控件\n * 文档:https://baidu.gitee.io/amis/docs/components/form/date-range\n */\nexport interface DateRangeControlSchema extends FormBaseControl {\n /**\n * 指定为日期范围控件\n */\n type: 'input-date-range' | 'input-datetime-range' | 'input-time-range';\n\n /**\n * 分割符, 因为有两个值,开始时间和结束时间,所以要有连接符。默认为英文逗号。\n *\n */\n delimiter?: string;\n\n /**\n * 默认 `X` 即时间戳格式,用来提交的时间格式。更多格式类型请参考 moment.\n */\n format?: string;\n\n /**\n * 默认 `YYYY-MM-DD` 用来配置显示的时间格式。\n */\n inputFormat?: string;\n\n /**\n * 开启后将选中的选项 value 的值用连接符拼接起来,作为当前表单项的值。如: `value1,value2` 否则为 `[value1, value2]`\n */\n joinValues?: boolean;\n\n /**\n * 最大日期限制,支持变量 $xxx 来取值,或者用相对值如:* `-2mins` 2分钟前\\n * `+2days` 2天后\\n* `-10week` 十周前\\n可用单位: `min`、`hour`、`day`、`week`、`month`、`year`。所有单位支持复数形式。\n */\n maxDate?: string;\n\n /**\n * 最小日期限制,支持变量 $xxx 来取值,或者用相对值如:* `-2mins` 2分钟前\\n * `+2days` 2天后\\n* `-10week` 十周前\\n可用单位: `min`、`hour`、`day`、`week`、`month`、`year`。所有单位支持复数形式。\n */\n minDate?: string;\n\n /**\n * 最大跨度,比如 2days\n */\n maxDuration?: string;\n\n /**\n * 最小跨度,比如 2days\n */\n minDuration?: string;\n\n /**\n * 这里面 value 需要特殊说明一下,因为支持相对值。* `-2mins` 2分钟前\\n * `+2days` 2天后\\n* `-10week` 十周前\\n可用单位: `min`、`hour`、`day`、`week`、`month`、`year`。所有单位支持复数形式。\n */\n value?: any;\n\n /**\n * 边框模式,全边框,还是半边框,或者没边框。\n */\n borderMode?: 'full' | 'half' | 'none';\n\n /**\n * 开启后变成非弹出模式,即内联模式。\n */\n embed?: boolean;\n}\n\nexport interface DateRangeProps\n extends FormControlProps,\n Omit<\n DateRangeControlSchema,\n 'type' | 'className' | 'descriptionClassName' | 'inputClassName'\n > {\n delimiter: string;\n format: string;\n joinValues: boolean;\n}\n\nexport default class DateRangeControl extends React.Component<DateRangeProps> {\n static defaultProps = {\n format: 'X',\n joinValues: true,\n delimiter: ','\n };\n\n constructor(props: DateRangeProps) {\n super(props);\n\n const {\n defaultValue,\n setPrinstineValue,\n delimiter,\n format,\n data,\n value,\n joinValues,\n utc\n } = props;\n\n if (defaultValue && value === defaultValue) {\n let arr =\n typeof defaultValue === 'string'\n ? defaultValue.split(delimiter)\n : defaultValue;\n setPrinstineValue(\n BaseDateRangePicker.formatValue(\n {\n startDate: filterDate(arr[0], data, format),\n endDate: filterDate(arr[1], data, format)\n },\n format,\n joinValues,\n delimiter,\n utc\n )\n );\n }\n }\n\n componentDidUpdate(prevProps: DateRangeProps) {\n const {\n defaultValue,\n delimiter,\n joinValues,\n setPrinstineValue,\n data,\n utc,\n format\n } = this.props;\n\n if (prevProps.defaultValue !== defaultValue) {\n let arr =\n typeof defaultValue === 'string'\n ? defaultValue.split(delimiter)\n : defaultValue;\n\n setPrinstineValue(\n arr\n ? BaseDateRangePicker.formatValue(\n {\n startDate: filterDate(arr[0], data, format),\n endDate: filterDate(arr[1], data, format)\n },\n format,\n joinValues,\n delimiter,\n utc\n )\n : undefined\n );\n }\n }\n\n render() {\n const {\n className,\n classPrefix: ns,\n defaultValue,\n defaultData,\n minDate,\n maxDate,\n minDuration,\n maxDuration,\n data,\n format,\n env,\n useMobileUI,\n ...rest\n } = this.props;\n const mobileUI = useMobileUI && isMobile();\n return (\n <div className={cx(`${ns}DateRangeControl`, className)}>\n <DateRangePicker\n {...rest}\n useMobileUI={useMobileUI}\n classPrefix={ns}\n popOverContainer={\n mobileUI && env && env.getModalContainer\n ? env.getModalContainer\n : undefined\n }\n data={data}\n format={format}\n minDate={minDate ? filterDate(minDate, data, format) : undefined}\n maxDate={maxDate ? filterDate(maxDate, data, format) : undefined}\n minDuration={minDuration ? parseDuration(minDuration) : undefined}\n maxDuration={maxDuration ? parseDuration(maxDuration) : undefined}\n />\n </div>\n );\n }\n}\n\n@FormItem({\n type: 'input-date-range'\n})\nexport class DateRangeControlRenderer extends DateRangeControl {\n static defaultProps = {\n ...DateRangeControl.defaultProps,\n timeFormat: ''\n };\n}\n\n@FormItem({\n type: 'input-datetime-range',\n sizeMutable: false\n})\nexport class DateTimeRangeControlRenderer extends DateRangeControl {\n static defaultProps = {\n ...DateRangeControl.defaultProps,\n timeFormat: 'HH:mm',\n inputFormat: 'YYYY-MM-DD HH:mm'\n };\n}\n\n@FormItem({\n type: 'input-time-range',\n sizeMutable: false\n})\nexport class TimeRangeControlRenderer extends DateRangeControl {\n static defaultProps = {\n ...DateRangeControl.defaultProps,\n format: 'HH:mm',\n timeFormat: 'HH:mm',\n inputFormat: 'HH:mm',\n viewMode: 'time',\n ranges: ''\n };\n}\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -3,7 +3,7 @@ import { FormBaseControl, FormControlProps } from './Item';
|
|
3
3
|
import type { FuncGroup, VariableItem } from '../../components/formula/Editor';
|
4
4
|
/**
|
5
5
|
* InputFormula 公式编辑器
|
6
|
-
* 文档:https://baidu.gitee.io/amis/
|
6
|
+
* 文档:https://baidu.gitee.io/amis/zh-CN/components/form/input-formula
|
7
7
|
*/
|
8
8
|
export interface InputFormulaControlSchema extends FormBaseControl {
|
9
9
|
type: 'input-formula';
|
@@ -17,6 +17,9 @@ export interface InputFormulaControlSchema extends FormBaseControl {
|
|
17
17
|
* 用于提示的变量集合,默认为空
|
18
18
|
*/
|
19
19
|
variables: Array<VariableItem>;
|
20
|
+
/**
|
21
|
+
* 变量展现模式,可选值:'tabs' | 'tree'
|
22
|
+
*/
|
20
23
|
variableMode?: 'tabs' | 'tree';
|
21
24
|
/**
|
22
25
|
* 函数集合,默认不需要传,即 amis-formula 里面那个函数
|
@@ -11,8 +11,8 @@ var InputFormulaRenderer = /** @class */ (function (_super) {
|
|
11
11
|
return _super !== null && _super.apply(this, arguments) || this;
|
12
12
|
}
|
13
13
|
InputFormulaRenderer.prototype.render = function () {
|
14
|
-
var _a = this.props, selectedOptions = _a.selectedOptions, disabled = _a.disabled, onChange = _a.onChange, evalMode = _a.evalMode, variables = _a.variables, variableMode = _a.variableMode, functions = _a.functions, header = _a.header;
|
15
|
-
return (react_1.default.createElement(Picker_1.default, { value:
|
14
|
+
var _a = this.props, selectedOptions = _a.selectedOptions, disabled = _a.disabled, onChange = _a.onChange, evalMode = _a.evalMode, variables = _a.variables, variableMode = _a.variableMode, functions = _a.functions, header = _a.header, label = _a.label, value = _a.value;
|
15
|
+
return (react_1.default.createElement(Picker_1.default, { value: value, disabled: disabled, onChange: onChange, evalMode: evalMode, variables: variables, variableMode: variableMode, functions: functions, header: header || label || '' }));
|
16
16
|
};
|
17
17
|
InputFormulaRenderer = (0, tslib_1.__decorate)([
|
18
18
|
(0, Item_1.default)({
|
@@ -6,8 +6,8 @@
|
|
6
6
|
"/src/renderers/Form/InputFormula.tsx"
|
7
7
|
],
|
8
8
|
"names": [],
|
9
|
-
"mappings": ";;;;AAAA,6DAA0B;AAC1B,6DAAmE;AACnE,wFAA4D;
|
9
|
+
"mappings": ";;;;AAAA,6DAA0B;AAC1B,6DAAmE;AACnE,wFAA4D;AAiD5D;IAA0C,qDAAkC;IAA5E;;IA4BA,CAAC;IA3BC,qCAAM,GAAN;QACQ,IAAA,KAWF,IAAI,CAAC,KAAK,EAVZ,eAAe,qBAAA,EACf,QAAQ,cAAA,EACR,QAAQ,cAAA,EACR,QAAQ,cAAA,EACR,SAAS,eAAA,EACT,YAAY,kBAAA,EACZ,SAAS,eAAA,EACT,MAAM,YAAA,EACN,KAAK,WAAA,EACL,KAAK,WACO,CAAC;QAEf,OAAO,CACL,8BAAC,gBAAa,IACZ,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,IAAI,KAAK,IAAI,EAAE,GAC7B,CACH,CAAC;IACJ,CAAC;IA3BU,oBAAoB;QAHhC,IAAA,cAAQ,EAAC;YACR,IAAI,EAAE,eAAe;SACtB,CAAC;OACW,oBAAoB,CA4BhC;IAAD,2BAAC;CAAA,AA5BD,CAA0C,eAAK,CAAC,SAAS,GA4BxD;AA5BY,oDAAoB",
|
10
10
|
"sourcesContent": [
|
11
|
-
"import React from 'react';\nimport FormItem, {FormBaseControl, FormControlProps} from './Item';\nimport FormulaPicker from '../../components/formula/Picker';\nimport type {FuncGroup, VariableItem} from '../../components/formula/Editor';\n\n/**\n * InputFormula 公式编辑器\n * 文档:https://baidu.gitee.io/amis/
|
11
|
+
"import React from 'react';\nimport FormItem, {FormBaseControl, FormControlProps} from './Item';\nimport FormulaPicker from '../../components/formula/Picker';\nimport type {FuncGroup, VariableItem} from '../../components/formula/Editor';\n\n/**\n * InputFormula 公式编辑器\n * 文档:https://baidu.gitee.io/amis/zh-CN/components/form/input-formula\n */\nexport interface InputFormulaControlSchema extends FormBaseControl {\n type: 'input-formula';\n\n /**\n * evalMode 即直接就是表达式,否则\n * 需要 ${这里面才是表达式}\n * 默认为 true\n */\n evalMode?: boolean;\n\n /**\n * 用于提示的变量集合,默认为空\n */\n variables: Array<VariableItem>;\n\n /**\n * 变量展现模式,可选值:'tabs' | 'tree'\n */\n variableMode?: 'tabs' | 'tree';\n\n /**\n * 函数集合,默认不需要传,即 amis-formula 里面那个函数\n * 如果有扩充,则需要传。\n */\n functions: Array<FuncGroup>;\n\n /**\n * 顶部标题,默认为表达式\n */\n header: string;\n}\n\nexport interface InputFormulaProps\n extends FormControlProps,\n Omit<\n InputFormulaControlSchema,\n 'options' | 'inputClassName' | 'className' | 'descriptionClassName'\n > {}\n\n@FormItem({\n type: 'input-formula'\n})\nexport class InputFormulaRenderer extends React.Component<InputFormulaProps> {\n render() {\n const {\n selectedOptions,\n disabled,\n onChange,\n evalMode,\n variables,\n variableMode,\n functions,\n header,\n label,\n value\n } = this.props;\n\n return (\n <FormulaPicker\n value={value}\n disabled={disabled}\n onChange={onChange}\n evalMode={evalMode}\n variables={variables}\n variableMode={variableMode}\n functions={functions}\n header={header || label || ''}\n />\n );\n }\n}\n"
|
12
12
|
]
|
13
13
|
}
|
@@ -241,7 +241,7 @@ var ImageControl = /** @class */ (function (_super) {
|
|
241
241
|
env.notify('error', error || __('File.errorRetry'));
|
242
242
|
}
|
243
243
|
else {
|
244
|
-
newFile = (0, tslib_1.__assign)((0, tslib_1.__assign)({ name: file.name }, obj), { preview: file.preview });
|
244
|
+
newFile = (0, tslib_1.__assign)((0, tslib_1.__assign)({ name: file.name || _this_1.state.cropFileName }, obj), { preview: file.preview });
|
245
245
|
}
|
246
246
|
files.splice(idx, 1, newFile);
|
247
247
|
_this_1.current = null;
|
@@ -311,8 +311,10 @@ var ImageControl = /** @class */ (function (_super) {
|
|
311
311
|
this.setState({
|
312
312
|
cropFile: {
|
313
313
|
preview: files[index].preview || files[index].url,
|
314
|
+
name: files[index].name,
|
314
315
|
state: 'init'
|
315
|
-
}
|
316
|
+
},
|
317
|
+
cropFileName: files[index].name
|
316
318
|
});
|
317
319
|
};
|
318
320
|
ImageControl.prototype.onChange = function (changeImmediately) {
|
@@ -380,7 +382,8 @@ var ImageControl = /** @class */ (function (_super) {
|
|
380
382
|
file.preview = window.URL.createObjectURL(file);
|
381
383
|
}
|
382
384
|
return this.setState({
|
383
|
-
cropFile: file
|
385
|
+
cropFile: file,
|
386
|
+
cropFileName: file.name
|
384
387
|
});
|
385
388
|
}
|
386
389
|
this.addFiles(files);
|
@@ -417,6 +420,7 @@ var ImageControl = /** @class */ (function (_super) {
|
|
417
420
|
ImageControl.prototype.cancelCrop = function () {
|
418
421
|
this.setState({
|
419
422
|
cropFile: undefined,
|
423
|
+
cropFileName: undefined,
|
420
424
|
locked: false,
|
421
425
|
lockedReason: ''
|
422
426
|
}, this.onChange);
|
@@ -559,7 +563,7 @@ var ImageControl = /** @class */ (function (_super) {
|
|
559
563
|
});
|
560
564
|
}
|
561
565
|
// Note: File类型字段放在后面,可以支持第三方云存储鉴权
|
562
|
-
fd.append(fileField, file, file.name);
|
566
|
+
fd.append(fileField, file, file.name || this.state.cropFileName);
|
563
567
|
env = this.props.env;
|
564
568
|
if (!env || !env.fetcher) {
|
565
569
|
throw new Error('fetcher is required');
|