amis 1.5.7 → 1.5.8-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.husky/pre-commit +1 -1
- package/lib/Schema.d.ts +3 -2
- package/lib/Schema.js.map +1 -1
- 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/CalendarMobile.d.ts +547 -0
- package/lib/components/CalendarMobile.js +432 -0
- package/lib/components/CalendarMobile.js.map +13 -0
- package/lib/components/Card.d.ts +20 -20
- 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/ColorPicker.d.ts +84 -84
- package/lib/components/ColorPicker.js.map +2 -2
- package/lib/components/DatePicker.d.ts +84 -84
- package/lib/components/DatePicker.js +10 -4
- package/lib/components/DatePicker.js.map +2 -2
- package/lib/components/DateRangePicker.d.ts +85 -84
- package/lib/components/DateRangePicker.js +21 -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/MonthRangePicker.d.ts +85 -84
- package/lib/components/MonthRangePicker.js +19 -6
- 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.js +9 -4
- package/lib/components/Picker.js.map +2 -2
- package/lib/components/PickerColumn.js +0 -1
- 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/PopUp.d.ts +1 -0
- package/lib/components/PopUp.js +5 -5
- package/lib/components/PopUp.js.map +2 -2
- package/lib/components/ResultBox.js +2 -1
- 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 +237 -237
- package/lib/components/Select.js +1 -1
- package/lib/components/Select.js.map +1 -1
- 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 +516 -0
- package/lib/components/TimelineItem.js +41 -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 +84 -84
- package/lib/components/TransferDropDown.js +1 -5
- 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/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 +5 -0
- package/lib/components/calendar/Calendar.js +15 -2
- package/lib/components/calendar/Calendar.js.map +2 -2
- package/lib/components/calendar/DaysView.d.ts +1 -0
- package/lib/components/calendar/DaysView.js +25 -13
- package/lib/components/calendar/DaysView.js.map +2 -2
- package/lib/components/calendar/MonthsView.d.ts +28 -0
- package/lib/components/calendar/MonthsView.js +79 -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 +5 -0
- package/lib/components/calendar/TimeView.js +8 -5
- package/lib/components/calendar/TimeView.js.map +2 -2
- package/lib/components/calendar/YearsView.js +6 -4
- 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/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/factory.js +5 -0
- package/lib/factory.js.map +2 -2
- package/lib/icons/tree-down.js +7 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -1
- package/lib/index.js.map +2 -2
- package/lib/locale/de-DE.js +13 -2
- package/lib/locale/de-DE.js.map +2 -2
- package/lib/locale/en-US.js +13 -2
- package/lib/locale/en-US.js.map +2 -2
- package/lib/locale/zh-CN.js +12 -1
- package/lib/locale/zh-CN.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.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/DiffEditor.js +2 -1
- package/lib/renderers/Form/DiffEditor.js.map +2 -2
- package/lib/renderers/Form/InputCity.d.ts +84 -84
- package/lib/renderers/Form/InputColor.d.ts +84 -84
- package/lib/renderers/Form/InputColor.js +1 -1
- package/lib/renderers/Form/InputColor.js.map +2 -2
- package/lib/renderers/Form/InputDate.js +6 -4
- package/lib/renderers/Form/InputDate.js.map +2 -2
- package/lib/renderers/Form/InputDateRange.js +1 -1
- 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/InputYearRange.js +1 -1
- package/lib/renderers/Form/InputYearRange.js.map +2 -2
- package/lib/renderers/Form/Item.js +11 -4
- package/lib/renderers/Form/Item.js.map +2 -2
- package/lib/renderers/Form/NestedSelect.js +1 -1
- package/lib/renderers/Form/NestedSelect.js.map +2 -2
- package/lib/renderers/Form/Select.js +1 -1
- 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.map +2 -2
- package/lib/renderers/IFrame.js +0 -2
- package/lib/renderers/IFrame.js.map +2 -2
- package/lib/renderers/Remark.d.ts +4 -0
- package/lib/renderers/Remark.js +38 -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/store/combo.js.map +2 -2
- package/lib/themes/ang-ie11.css +659 -25
- package/lib/themes/ang.css +659 -25
- package/lib/themes/ang.css.map +1 -1
- package/lib/themes/antd-ie11.css +694 -25
- package/lib/themes/antd.css +694 -25
- package/lib/themes/antd.css.map +1 -1
- package/lib/themes/cxd-ie11.css +696 -25
- package/lib/themes/cxd.css +696 -25
- package/lib/themes/cxd.css.map +1 -1
- package/lib/themes/dark-ie11.css +660 -25
- package/lib/themes/dark.css +660 -25
- package/lib/themes/dark.css.map +1 -1
- package/lib/themes/default.css +696 -25
- 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/helper.d.ts +1 -1
- package/lib/utils/helper.js +1 -1
- package/lib/utils/helper.js.map +2 -2
- package/package.json +13 -6
- package/schema.json +1042 -541
- package/scss/_properties.scss +8 -0
- package/scss/components/_avatar.scss +27 -9
- package/scss/components/_calendar.scss +280 -0
- package/scss/components/_card.scss +1 -1
- package/scss/components/_collapse-group.scss +1 -3
- package/scss/components/_formula.scss +30 -6
- package/scss/components/_modal.scss +18 -0
- package/scss/components/_panel.scss +45 -0
- package/scss/components/_popup.scss +10 -6
- package/scss/components/_timeline.scss +198 -0
- package/scss/components/form/_form.scss +168 -0
- package/scss/components/form/_result-list.scss +2 -0
- package/scss/components/form/_selection.scss +5 -4
- package/scss/themes/_antd-variables.scss +42 -0
- package/scss/themes/_common.scss +1 -0
- package/scss/themes/_cxd-variables.scss +47 -0
- package/scss/themes/_dark-variables.scss +1 -0
- package/sdk/ang-ie11.css +782 -23
- package/sdk/ang.css +791 -26
- package/sdk/antd-ie11.css +782 -23
- package/sdk/antd.css +826 -26
- package/sdk/charts.js +17 -17
- package/sdk/codemirror.js +7 -7
- package/sdk/color-picker.js +65 -65
- package/sdk/cropperjs.js +3 -3
- package/sdk/cxd-ie11.css +782 -23
- package/sdk/cxd.css +828 -26
- package/sdk/dark-ie11.css +783 -24
- package/sdk/dark.css +792 -26
- package/sdk/exceljs.js +1 -1
- package/sdk/locale/de-DE.js +13 -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 +782 -23
- package/sdk/sdk.css +828 -26
- package/sdk/sdk.js +1225 -1285
- package/sdk/thirds/hls.js/hls.js +18 -18
- package/sdk/thirds/mpegts.js/mpegts.js +2 -2
- package/sdk/tinymce.js +57 -57
- package/src/Schema.ts +3 -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 +563 -0
- package/src/components/ChainedSelection.tsx +16 -3
- package/src/components/ColorPicker.tsx +37 -39
- package/src/components/DatePicker.tsx +41 -35
- package/src/components/DateRangePicker.tsx +61 -16
- package/src/components/GroupedSelection.tsx +14 -2
- package/src/components/MonthRangePicker.tsx +57 -17
- package/src/components/Overlay.tsx +1 -1
- package/src/components/Picker.tsx +41 -36
- package/src/components/PickerColumn.tsx +22 -25
- package/src/components/PickerContainer.tsx +13 -1
- package/src/components/PopUp.tsx +34 -49
- package/src/components/ResultBox.tsx +4 -1
- package/src/components/ResultList.tsx +36 -6
- package/src/components/Select.tsx +1 -1
- 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 +31 -0
- package/src/components/TimelineItem.tsx +107 -0
- package/src/components/Transfer.tsx +11 -8
- package/src/components/TransferDropDown.tsx +1 -7
- package/src/components/TransferPicker.tsx +25 -4
- package/src/components/TreeSelection.tsx +7 -1
- package/src/components/calendar/Calendar.tsx +26 -6
- package/src/components/calendar/DaysView.tsx +79 -31
- package/src/components/calendar/MonthsView.tsx +116 -2
- package/src/components/calendar/QuartersView.tsx +3 -2
- package/src/components/calendar/TimeView.tsx +26 -16
- package/src/components/calendar/YearsView.tsx +14 -16
- 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/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/factory.tsx +6 -0
- package/src/icons/tree-down.svg +5 -0
- package/src/index.tsx +1 -0
- package/src/locale/de-DE.ts +13 -2
- package/src/locale/en-US.ts +13 -2
- package/src/locale/zh-CN.ts +12 -1
- package/src/renderers/Avatar.tsx +83 -74
- package/src/renderers/Card.tsx +10 -6
- package/src/renderers/Custom.tsx +6 -3
- 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/DiffEditor.tsx +2 -3
- package/src/renderers/Form/InputColor.tsx +1 -1
- package/src/renderers/Form/InputDate.tsx +38 -19
- package/src/renderers/Form/InputDateRange.tsx +0 -1
- 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/InputYearRange.tsx +0 -1
- package/src/renderers/Form/Item.tsx +15 -4
- package/src/renderers/Form/NestedSelect.tsx +1 -1
- package/src/renderers/Form/Select.tsx +0 -1
- 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 +12 -14
- package/src/renderers/IFrame.tsx +0 -2
- package/src/renderers/Remark.tsx +67 -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/store/combo.ts +1 -3
- package/src/utils/RootClose.ts +5 -1
- package/src/utils/helper.ts +1 -1
@@ -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/factory.tsx
CHANGED
@@ -257,6 +257,7 @@ const defaultOptions: RenderOptions = {
|
|
257
257
|
affixOffsetTop: 0,
|
258
258
|
affixOffsetBottom: 0,
|
259
259
|
richTextToken: '',
|
260
|
+
useMobileUI: true, // 是否启用移动端原生 UI
|
260
261
|
loadRenderer,
|
261
262
|
fetcher() {
|
262
263
|
return Promise.reject('fetcher is required');
|
@@ -410,6 +411,11 @@ export function render(
|
|
410
411
|
env.locale = locale;
|
411
412
|
}
|
412
413
|
|
414
|
+
// 默认将开启移动端原生 UI
|
415
|
+
if (typeof options.useMobileUI) {
|
416
|
+
props.useMobileUI = true;
|
417
|
+
}
|
418
|
+
|
413
419
|
// 进行文本替换
|
414
420
|
if (env.replaceText && isObject(env.replaceText)) {
|
415
421
|
const replaceKeys = Object.keys(env.replaceText);
|
package/src/index.tsx
CHANGED
@@ -165,6 +165,7 @@ import './renderers/Icon';
|
|
165
165
|
import './renderers/Carousel';
|
166
166
|
import './renderers/AnchorNav';
|
167
167
|
import './renderers/Steps';
|
168
|
+
import './renderers/Timeline';
|
168
169
|
import './renderers/Markdown';
|
169
170
|
import './renderers/TableView';
|
170
171
|
import './renderers/Code';
|
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',
|
@@ -215,7 +224,7 @@ register('de-DE', {
|
|
215
224
|
'validate.minimum': 'Der Eingabewert ist kleiner als der Mindestwert von $1.',
|
216
225
|
'validate.minLength': 'Geben Sie weitere Zeichen ein, mindestens $1.',
|
217
226
|
'validate.notEmptyString': 'Geben Sie nicht nur Leerzeichen ein.',
|
218
|
-
'validateFailed': 'Fehler bei der Überprüfung
|
227
|
+
'validateFailed': 'Fehler bei der Überprüfung',
|
219
228
|
'Wizard.configError': 'Konfigurationsfehler',
|
220
229
|
'Wizard.finish': 'Ende',
|
221
230
|
'Wizard.next': 'Weiter',
|
@@ -254,5 +263,7 @@ register('de-DE', {
|
|
254
263
|
'Condition.cond_placeholder': 'Bedingung auswählen',
|
255
264
|
'Condition.field_placeholder': 'Feld auswählen',
|
256
265
|
'Condition.blank': 'leer',
|
257
|
-
'InputTable.uniqueError': 'Column `{{label}}` unique validate failed'
|
266
|
+
'InputTable.uniqueError': 'Column `{{label}}` unique validate failed',
|
267
|
+
'Timeline.collapseText': 'Entfalten',
|
268
|
+
'Timeline.expandText': 'Falten'
|
258
269
|
});
|
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',
|
@@ -217,7 +226,7 @@ register('en-US', {
|
|
217
226
|
'validate.minimum': 'The input value is lower than the minimum value of $1',
|
218
227
|
'validate.minLength': 'Please enter more, at least $1 characters.',
|
219
228
|
'validate.notEmptyString': 'Please do not enter all blank characters',
|
220
|
-
'validateFailed': 'Validate failed
|
229
|
+
'validateFailed': 'Validate failed',
|
221
230
|
'Wizard.configError': 'Config error',
|
222
231
|
'Wizard.finish': 'Finish',
|
223
232
|
'Wizard.next': 'Next',
|
@@ -256,5 +265,7 @@ register('en-US', {
|
|
256
265
|
'Condition.cond_placeholder': 'select condition',
|
257
266
|
'Condition.field_placeholder': 'select field',
|
258
267
|
'Condition.blank': 'blank',
|
259
|
-
'InputTable.uniqueError': 'Column `{{label}}` unique validate failed'
|
268
|
+
'InputTable.uniqueError': 'Column `{{label}}` unique validate failed',
|
269
|
+
'Timeline.collapseText': 'Unfold',
|
270
|
+
'Timeline.expandText': 'Fold'
|
260
271
|
});
|
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': '对卡片进行排序操作',
|
@@ -260,5 +269,7 @@ register('zh-CN', {
|
|
260
269
|
'Condition.cond_placeholder': '请选择操作',
|
261
270
|
'Condition.field_placeholder': '请选择字段',
|
262
271
|
'Condition.blank': '空',
|
263
|
-
'InputTable.uniqueError': '列`{{label}}`没有通过唯一验证'
|
272
|
+
'InputTable.uniqueError': '列`{{label}}`没有通过唯一验证',
|
273
|
+
'Timeline.collapseText': '展开',
|
274
|
+
'Timeline.expandText': '折叠'
|
264
275
|
});
|
package/src/renderers/Avatar.tsx
CHANGED
@@ -3,38 +3,36 @@
|
|
3
3
|
*/
|
4
4
|
import React from 'react';
|
5
5
|
import {Renderer, RendererProps} from '../factory';
|
6
|
-
import
|
7
|
-
BaseSchema,
|
8
|
-
SchemaClassName,
|
9
|
-
SchemaIcon,
|
10
|
-
SchemaUrlPath
|
11
|
-
} from '../Schema';
|
6
|
+
import Avatar from '../components/Avatar';
|
12
7
|
import {BadgeSchema, withBadge} from '../components/Badge';
|
13
|
-
import {
|
14
|
-
|
15
|
-
resolveVariable,
|
16
|
-
resolveVariableAndFilter
|
17
|
-
} from '../utils/tpl-builtin';
|
8
|
+
import {BaseSchema, SchemaClassName} from '../Schema';
|
9
|
+
import {isPureVariable, resolveVariableAndFilter} from '../utils/tpl-builtin';
|
18
10
|
|
19
|
-
/**
|
20
|
-
* Avatar 用户头像显示
|
21
|
-
* 文档:https://baidu.gitee.io/amis/docs/components/avatar
|
22
|
-
*/
|
23
11
|
export interface AvatarSchema extends BaseSchema {
|
12
|
+
// 指定类型
|
13
|
+
type: 'avatar';
|
14
|
+
|
24
15
|
/**
|
25
|
-
*
|
16
|
+
* 类名
|
26
17
|
*/
|
27
|
-
|
18
|
+
className?: SchemaClassName;
|
28
19
|
|
29
20
|
/**
|
30
|
-
*
|
21
|
+
* 自定义样式
|
31
22
|
*/
|
32
|
-
|
23
|
+
style?: {
|
24
|
+
[propName: string]: any;
|
25
|
+
};
|
33
26
|
|
34
27
|
/**
|
35
|
-
*
|
28
|
+
* 角标
|
29
|
+
*/
|
30
|
+
badge?: BadgeSchema;
|
31
|
+
|
32
|
+
/**
|
33
|
+
* 图片地址
|
36
34
|
*/
|
37
|
-
|
35
|
+
src?: string;
|
38
36
|
|
39
37
|
/**
|
40
38
|
* 图标
|
@@ -42,19 +40,29 @@ export interface AvatarSchema extends BaseSchema {
|
|
42
40
|
icon?: string;
|
43
41
|
|
44
42
|
/**
|
45
|
-
*
|
43
|
+
* 图片相对于容器的缩放方式
|
46
44
|
*/
|
47
|
-
|
45
|
+
fit?: 'fill' | 'contain' | 'cover' | 'none' | 'scale-down';
|
48
46
|
|
49
47
|
/**
|
50
|
-
*
|
48
|
+
* 形状
|
51
49
|
*/
|
52
|
-
|
50
|
+
shape?: 'circle' | 'square' | 'rounded';
|
53
51
|
|
54
52
|
/**
|
55
|
-
*
|
53
|
+
* 大小
|
56
54
|
*/
|
57
|
-
|
55
|
+
size?: number | 'small' | 'default' | 'large';
|
56
|
+
|
57
|
+
/**
|
58
|
+
* 文本
|
59
|
+
*/
|
60
|
+
text?: string;
|
61
|
+
|
62
|
+
/**
|
63
|
+
* 字符类型距离左右两侧边界单位像素
|
64
|
+
*/
|
65
|
+
gap?: number;
|
58
66
|
|
59
67
|
/**
|
60
68
|
* 图片无法显示时的替换文字地址
|
@@ -62,82 +70,83 @@ export interface AvatarSchema extends BaseSchema {
|
|
62
70
|
alt?: string;
|
63
71
|
|
64
72
|
/**
|
65
|
-
*
|
73
|
+
* 图片是否允许拖动
|
66
74
|
*/
|
67
|
-
|
75
|
+
draggable?: boolean;
|
68
76
|
|
69
77
|
/**
|
70
|
-
*
|
78
|
+
* 图片CORS属性
|
71
79
|
*/
|
72
|
-
|
73
|
-
[propName: string]: any;
|
74
|
-
};
|
80
|
+
crossOrigin: 'anonymous' | 'use-credentials' | '';
|
75
81
|
|
76
82
|
/**
|
77
|
-
*
|
83
|
+
* 图片加载失败的是否默认处理,字符串函数
|
78
84
|
*/
|
79
|
-
|
85
|
+
onError?: string
|
80
86
|
}
|
81
87
|
|
82
|
-
export interface AvatarProps
|
83
|
-
|
84
|
-
|
88
|
+
export interface AvatarProps extends RendererProps, Omit<AvatarSchema, 'type' | 'className'> {}
|
89
|
+
|
90
|
+
export class AvatarField extends React.Component<AvatarProps> {
|
85
91
|
|
86
|
-
export class AvatarField extends React.Component<AvatarProps, object> {
|
87
92
|
render() {
|
88
93
|
let {
|
94
|
+
style = {},
|
89
95
|
className,
|
96
|
+
classnames: cx,
|
97
|
+
src,
|
90
98
|
icon = 'fa fa-user',
|
99
|
+
fit,
|
100
|
+
shape,
|
101
|
+
size,
|
91
102
|
text,
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
classnames: cx,
|
99
|
-
props
|
103
|
+
gap,
|
104
|
+
alt,
|
105
|
+
draggable,
|
106
|
+
crossOrigin,
|
107
|
+
onError,
|
108
|
+
data
|
100
109
|
} = this.props;
|
101
110
|
|
102
|
-
let
|
103
|
-
height: size,
|
104
|
-
width: size,
|
105
|
-
lineHeight: size + 'px'
|
106
|
-
};
|
111
|
+
let errHandler = () => false;
|
107
112
|
|
108
|
-
if (
|
109
|
-
|
113
|
+
if (typeof onError === 'string') {
|
114
|
+
try {
|
115
|
+
errHandler = new Function('event', onError) as () => boolean;
|
116
|
+
} catch (e) {
|
117
|
+
console.warn(onError, e);
|
118
|
+
}
|
110
119
|
}
|
111
120
|
|
112
121
|
if (isPureVariable(src)) {
|
113
122
|
src = resolveVariableAndFilter(src, data, '| raw');
|
114
123
|
}
|
115
124
|
|
116
|
-
if (isPureVariable(
|
117
|
-
|
118
|
-
}
|
119
|
-
|
120
|
-
let avatar = <i className={icon} />;
|
121
|
-
|
122
|
-
if (text) {
|
123
|
-
if (text.length > 2) {
|
124
|
-
text = text.substring(0, 2).toUpperCase();
|
125
|
-
}
|
126
|
-
avatar = <span>{text}</span>;
|
125
|
+
if (isPureVariable(text)) {
|
126
|
+
text = resolveVariableAndFilter(text, data);
|
127
127
|
}
|
128
128
|
|
129
|
-
if (
|
130
|
-
|
129
|
+
if (isPureVariable(icon)) {
|
130
|
+
icon = resolveVariableAndFilter(icon, data);
|
131
131
|
}
|
132
132
|
|
133
133
|
return (
|
134
|
-
<
|
135
|
-
|
136
|
-
|
137
|
-
{
|
138
|
-
|
139
|
-
{
|
140
|
-
|
134
|
+
<Avatar
|
135
|
+
style={style}
|
136
|
+
className={className}
|
137
|
+
classnames={cx}
|
138
|
+
src={src}
|
139
|
+
icon={icon}
|
140
|
+
fit={fit}
|
141
|
+
shape={shape}
|
142
|
+
size={size}
|
143
|
+
text={text}
|
144
|
+
gap={gap}
|
145
|
+
alt={alt}
|
146
|
+
draggable={draggable}
|
147
|
+
crossOrigin={crossOrigin}
|
148
|
+
onError={errHandler}
|
149
|
+
/>
|
141
150
|
);
|
142
151
|
}
|
143
152
|
}
|
package/src/renderers/Card.tsx
CHANGED
@@ -4,7 +4,7 @@ import {SchemaNode, Schema, Action, PlainObject} from '../types';
|
|
4
4
|
import {filter, evalExpression} from '../utils/tpl';
|
5
5
|
import Checkbox from '../components/Checkbox';
|
6
6
|
import {padArr, isVisible, isDisabled, noop, hashCode} from '../utils/helper';
|
7
|
-
import {resolveVariable} from '../utils/tpl-builtin';
|
7
|
+
import {resolveVariable, resolveVariableAndFilter} from '../utils/tpl-builtin';
|
8
8
|
import QuickEdit, {SchemaQuickEdit} from './QuickEdit';
|
9
9
|
import PopOver, {SchemaPopOver} from './PopOver';
|
10
10
|
import {TableCell} from './Table';
|
@@ -644,15 +644,19 @@ export class CardRenderer extends React.Component<CardProps> {
|
|
644
644
|
}
|
645
645
|
|
646
646
|
renderMedia() {
|
647
|
-
const {media, classnames: cx, render, region} = this.props;
|
647
|
+
const {media, classnames: cx, render, region, data} = this.props;
|
648
648
|
if (media) {
|
649
649
|
const {type, url, className, autoPlay, isLive, poster} = media;
|
650
|
+
const mediaUrl = resolveVariableAndFilter(url, data, '| raw');
|
650
651
|
|
651
|
-
if (type === 'image' &&
|
652
|
+
if (type === 'image' && mediaUrl) {
|
652
653
|
return (
|
653
|
-
<img
|
654
|
+
<img
|
655
|
+
className={cx('Card-multiMedia-img', className)}
|
656
|
+
src={mediaUrl}
|
657
|
+
/>
|
654
658
|
);
|
655
|
-
} else if (type === 'video' &&
|
659
|
+
} else if (type === 'video' && mediaUrl) {
|
656
660
|
return (
|
657
661
|
<div className={cx('Card-multiMedia-video', className)}>
|
658
662
|
{
|
@@ -660,7 +664,7 @@ export class CardRenderer extends React.Component<CardProps> {
|
|
660
664
|
type: type,
|
661
665
|
autoPlay: autoPlay,
|
662
666
|
poster: poster,
|
663
|
-
src:
|
667
|
+
src: mediaUrl,
|
664
668
|
isLive: isLive
|
665
669
|
}) as JSX.Element
|
666
670
|
}
|
package/src/renderers/Custom.tsx
CHANGED
@@ -33,9 +33,12 @@ export interface CustomProps extends FormControlProps, CustomSchema {
|
|
33
33
|
|
34
34
|
// 添加resolver,指定所有参数的联合字符串为key。因为最后一个参数为函数体
|
35
35
|
// 缓存一下,避免在 crud 中的自定义组件被大量执行
|
36
|
-
const getFunction = memoize(
|
37
|
-
|
38
|
-
|
36
|
+
const getFunction = memoize(
|
37
|
+
(...args) => {
|
38
|
+
return new Function(...args);
|
39
|
+
},
|
40
|
+
(...args) => JSON.stringify(args)
|
41
|
+
);
|
39
42
|
|
40
43
|
export class Custom extends React.Component<CustomProps, object> {
|
41
44
|
static defaultProps: Partial<CustomProps> = {
|
package/src/renderers/Each.tsx
CHANGED
@@ -54,10 +54,10 @@ export default class Each extends React.Component<EachProps> {
|
|
54
54
|
translate: __
|
55
55
|
} = this.props;
|
56
56
|
|
57
|
-
const value = getPropValue(
|
58
|
-
|
59
|
-
|
60
|
-
|
57
|
+
const value = getPropValue(this.props, props =>
|
58
|
+
props.source && !props.name
|
59
|
+
? resolveVariableAndFilter(props.source, props.data, '| raw')
|
60
|
+
: undefined
|
61
61
|
);
|
62
62
|
|
63
63
|
const arr = isObject(value)
|
package/src/renderers/Flex.tsx
CHANGED
@@ -112,13 +112,9 @@ export default class Flex extends React.Component<FlexProps, object> {
|
|
112
112
|
|
113
113
|
return (
|
114
114
|
<div style={flexStyle} className={className}>
|
115
|
-
{(Array.isArray(items)
|
116
|
-
|
117
|
-
|
118
|
-
? [items]
|
119
|
-
: []
|
120
|
-
).map((item, key) =>
|
121
|
-
render(`flexItem/${key}`, item, {key: `flexItem/${key}`})
|
115
|
+
{(Array.isArray(items) ? items : items ? [items] : []).map(
|
116
|
+
(item, key) =>
|
117
|
+
render(`flexItem/${key}`, item, {key: `flexItem/${key}`})
|
122
118
|
)}
|
123
119
|
</div>
|
124
120
|
);
|
@@ -98,13 +98,8 @@ export default class ChartRadiosControl extends React.Component<
|
|
98
98
|
}
|
99
99
|
|
100
100
|
render() {
|
101
|
-
const {
|
102
|
-
|
103
|
-
labelField,
|
104
|
-
chartValueField,
|
105
|
-
valueField,
|
106
|
-
render
|
107
|
-
} = this.props;
|
101
|
+
const {options, labelField, chartValueField, valueField, render} =
|
102
|
+
this.props;
|
108
103
|
const config = {
|
109
104
|
legend: {
|
110
105
|
top: 10
|
@@ -98,9 +98,8 @@ export class DiffEditor extends React.Component<DiffEditorProps, any> {
|
|
98
98
|
this.handleBlur = this.handleBlur.bind(this);
|
99
99
|
this.editorFactory = this.editorFactory.bind(this);
|
100
100
|
this.handleEditorMounted = this.handleEditorMounted.bind(this);
|
101
|
-
this.handleModifiedEditorChange =
|
102
|
-
this
|
103
|
-
);
|
101
|
+
this.handleModifiedEditorChange =
|
102
|
+
this.handleModifiedEditorChange.bind(this);
|
104
103
|
}
|
105
104
|
|
106
105
|
componentWillUnmount() {
|
@@ -72,7 +72,7 @@ export default class ColorControl extends React.PureComponent<
|
|
72
72
|
return (
|
73
73
|
<div className={cx(`${ns}ColorControl`, className)}>
|
74
74
|
<Suspense fallback={<div>...</div>}>
|
75
|
-
<ColorPicker classPrefix={ns} {...rest} value={value || ''}
|
75
|
+
<ColorPicker classPrefix={ns} {...rest} value={value || ''} />
|
76
76
|
</Suspense>
|
77
77
|
</div>
|
78
78
|
);
|
@@ -1,7 +1,11 @@
|
|
1
1
|
import React from 'react';
|
2
2
|
import {FormItem, FormControlProps, FormBaseControl} from './Item';
|
3
3
|
import cx from 'classnames';
|
4
|
-
import {
|
4
|
+
import {
|
5
|
+
filterDate,
|
6
|
+
isPureVariable,
|
7
|
+
resolveVariableAndFilter
|
8
|
+
} from '../../utils/tpl-builtin';
|
5
9
|
import moment from 'moment';
|
6
10
|
import 'moment/locale/zh-cn';
|
7
11
|
import DatePicker from '../../components/DatePicker';
|
@@ -91,12 +95,14 @@ export interface DateControlSchema extends InputDateBaseControlSchema {
|
|
91
95
|
/**
|
92
96
|
* 日程
|
93
97
|
*/
|
94
|
-
schedules?:
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
98
|
+
schedules?:
|
99
|
+
| Array<{
|
100
|
+
startTime: Date;
|
101
|
+
endTime: Date;
|
102
|
+
content: any;
|
103
|
+
className?: string;
|
104
|
+
}>
|
105
|
+
| string;
|
100
106
|
/**
|
101
107
|
* 日程显示颜色自定义
|
102
108
|
*/
|
@@ -288,10 +294,10 @@ interface DateControlState {
|
|
288
294
|
minDate?: moment.Moment;
|
289
295
|
maxDate?: moment.Moment;
|
290
296
|
schedules?: Array<{
|
291
|
-
startTime: Date
|
292
|
-
endTime: Date
|
293
|
-
content: any
|
294
|
-
className?: string
|
297
|
+
startTime: Date;
|
298
|
+
endTime: Date;
|
299
|
+
content: any;
|
300
|
+
className?: string;
|
295
301
|
}>;
|
296
302
|
}
|
297
303
|
|
@@ -370,15 +376,25 @@ export default class DateControl extends React.PureComponent<
|
|
370
376
|
});
|
371
377
|
}
|
372
378
|
|
373
|
-
if (
|
374
|
-
|
379
|
+
if (
|
380
|
+
anyChanged(['schedules', 'data'], prevProps, props) &&
|
381
|
+
typeof props.schedules === 'string' &&
|
382
|
+
isPureVariable(props.schedules)
|
375
383
|
) {
|
376
|
-
const schedulesData = resolveVariableAndFilter(
|
377
|
-
|
384
|
+
const schedulesData = resolveVariableAndFilter(
|
385
|
+
props.schedules,
|
386
|
+
props.data,
|
387
|
+
'| raw'
|
388
|
+
);
|
389
|
+
const preSchedulesData = resolveVariableAndFilter(
|
390
|
+
prevProps.schedules,
|
391
|
+
prevProps.data,
|
392
|
+
'| raw'
|
393
|
+
);
|
378
394
|
if (Array.isArray(schedulesData) && preSchedulesData !== schedulesData) {
|
379
395
|
this.setState({
|
380
396
|
schedules: schedulesData
|
381
|
-
})
|
397
|
+
});
|
382
398
|
}
|
383
399
|
}
|
384
400
|
}
|
@@ -408,8 +424,12 @@ export default class DateControl extends React.PureComponent<
|
|
408
424
|
}
|
409
425
|
};
|
410
426
|
|
411
|
-
onAction &&
|
412
|
-
|
427
|
+
onAction &&
|
428
|
+
onAction(
|
429
|
+
null,
|
430
|
+
scheduleAction || defaultscheduleAction,
|
431
|
+
createObject(data, scheduleData)
|
432
|
+
);
|
413
433
|
}
|
414
434
|
|
415
435
|
render() {
|
@@ -442,7 +462,6 @@ export default class DateControl extends React.PureComponent<
|
|
442
462
|
format={valueFormat || format}
|
443
463
|
{...this.state}
|
444
464
|
classnames={cx}
|
445
|
-
useMobileUI={env.useMobileUI}
|
446
465
|
schedules={this.state.schedules}
|
447
466
|
largeMode={largeMode}
|
448
467
|
onScheduleClick={this.onScheduleClick.bind(this)}
|
@@ -187,7 +187,6 @@ export default class DateRangeControl extends React.Component<DateRangeProps> {
|
|
187
187
|
maxDate={maxDate ? filterDate(maxDate, data, format) : undefined}
|
188
188
|
minDuration={minDuration ? parseDuration(minDuration) : undefined}
|
189
189
|
maxDuration={maxDuration ? parseDuration(maxDuration) : undefined}
|
190
|
-
useMobileUI={env.useMobileUI}
|
191
190
|
/>
|
192
191
|
</div>
|
193
192
|
);
|