amis 1.5.8-beta.2 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (187) hide show
  1. package/lib/components/CalendarMobile.js +5 -5
  2. package/lib/components/CalendarMobile.js.map +2 -2
  3. package/lib/components/Card.d.ts +20 -20
  4. package/lib/components/Cascader.d.ts +123 -0
  5. package/lib/components/Cascader.js +487 -0
  6. package/lib/components/Cascader.js.map +13 -0
  7. package/lib/components/CityArea.d.ts +527 -0
  8. package/lib/components/CityArea.js +177 -0
  9. package/lib/components/CityArea.js.map +13 -0
  10. package/lib/components/ColorPicker.js +4 -3
  11. package/lib/components/ColorPicker.js.map +2 -2
  12. package/lib/components/DatePicker.d.ts +85 -84
  13. package/lib/components/DatePicker.js +7 -6
  14. package/lib/components/DatePicker.js.map +2 -2
  15. package/lib/components/DateRangePicker.js +8 -11
  16. package/lib/components/DateRangePicker.js.map +2 -2
  17. package/lib/components/MonthRangePicker.js +5 -8
  18. package/lib/components/MonthRangePicker.js.map +2 -2
  19. package/lib/components/Picker.d.ts +1 -0
  20. package/lib/components/Picker.js +10 -6
  21. package/lib/components/Picker.js.map +2 -2
  22. package/lib/components/PickerColumn.d.ts +1 -0
  23. package/lib/components/PickerColumn.js +21 -17
  24. package/lib/components/PickerColumn.js.map +2 -2
  25. package/lib/components/PopOverContainer.d.ts +1 -0
  26. package/lib/components/PopOverContainer.js +5 -3
  27. package/lib/components/PopOverContainer.js.map +2 -2
  28. package/lib/components/PopUp.d.ts +1040 -28
  29. package/lib/components/PopUp.js +32 -8
  30. package/lib/components/PopUp.js.map +2 -2
  31. package/lib/components/ResultBox.d.ts +85 -84
  32. package/lib/components/ResultBox.js +7 -3
  33. package/lib/components/ResultBox.js.map +2 -2
  34. package/lib/components/Select.js +9 -6
  35. package/lib/components/Select.js.map +2 -2
  36. package/lib/components/TransferDropDown.d.ts +85 -84
  37. package/lib/components/TransferDropDown.js +9 -6
  38. package/lib/components/TransferDropDown.js.map +2 -2
  39. package/lib/components/calendar/Calendar.d.ts +14 -0
  40. package/lib/components/calendar/Calendar.js +62 -5
  41. package/lib/components/calendar/Calendar.js.map +2 -2
  42. package/lib/components/calendar/DaysView.d.ts +20 -0
  43. package/lib/components/calendar/DaysView.js +51 -4
  44. package/lib/components/calendar/DaysView.js.map +2 -2
  45. package/lib/components/calendar/MonthsView.d.ts +7 -1
  46. package/lib/components/calendar/MonthsView.js +41 -52
  47. package/lib/components/calendar/MonthsView.js.map +2 -2
  48. package/lib/components/calendar/TimeView.d.ts +27 -20
  49. package/lib/components/calendar/TimeView.js +40 -4
  50. package/lib/components/calendar/TimeView.js.map +2 -2
  51. package/lib/components/calendar/YearsView.d.ts +6 -0
  52. package/lib/components/calendar/YearsView.js +15 -6
  53. package/lib/components/calendar/YearsView.js.map +2 -2
  54. package/lib/index.js +1 -1
  55. package/lib/locale/de-DE.js +4 -0
  56. package/lib/locale/de-DE.js.map +2 -2
  57. package/lib/locale/en-US.js +4 -0
  58. package/lib/locale/en-US.js.map +2 -2
  59. package/lib/locale/zh-CN.js +4 -0
  60. package/lib/locale/zh-CN.js.map +2 -2
  61. package/lib/renderers/DropDownButton.d.ts +11 -2
  62. package/lib/renderers/DropDownButton.js +30 -12
  63. package/lib/renderers/DropDownButton.js.map +2 -2
  64. package/lib/renderers/Form/CityDB.js +526 -2
  65. package/lib/renderers/Form/CityDB.js.map +2 -2
  66. package/lib/renderers/Form/InputCity.d.ts +85 -84
  67. package/lib/renderers/Form/InputCity.js +4 -2
  68. package/lib/renderers/Form/InputCity.js.map +2 -2
  69. package/lib/renderers/Form/InputColor.js +6 -2
  70. package/lib/renderers/Form/InputColor.js.map +2 -2
  71. package/lib/renderers/Form/InputDate.js +5 -2
  72. package/lib/renderers/Form/InputDate.js.map +2 -2
  73. package/lib/renderers/Form/InputDateRange.js +6 -2
  74. package/lib/renderers/Form/InputDateRange.js.map +2 -2
  75. package/lib/renderers/Form/Item.d.ts +10 -14
  76. package/lib/renderers/Form/Item.js +7 -5
  77. package/lib/renderers/Form/Item.js.map +2 -2
  78. package/lib/renderers/Form/NestedSelect.d.ts +1 -0
  79. package/lib/renderers/Form/NestedSelect.js +7 -3
  80. package/lib/renderers/Form/NestedSelect.js.map +2 -2
  81. package/lib/renderers/Form/Select.d.ts +2 -0
  82. package/lib/renderers/Form/Select.js +7 -4
  83. package/lib/renderers/Form/Select.js.map +2 -2
  84. package/lib/renderers/Form/TreeSelect.js +4 -4
  85. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  86. package/lib/renderers/Remark.js +2 -1
  87. package/lib/renderers/Remark.js.map +2 -2
  88. package/lib/schemaExtend.js +23 -9
  89. package/lib/schemaExtend.js.map +2 -2
  90. package/lib/themes/ang-ie11.css +312 -29
  91. package/lib/themes/ang.css +312 -29
  92. package/lib/themes/ang.css.map +1 -1
  93. package/lib/themes/antd-ie11.css +312 -29
  94. package/lib/themes/antd.css +312 -29
  95. package/lib/themes/antd.css.map +1 -1
  96. package/lib/themes/cxd-ie11.css +315 -41
  97. package/lib/themes/cxd.css +315 -41
  98. package/lib/themes/cxd.css.map +1 -1
  99. package/lib/themes/dark-ie11.css +312 -29
  100. package/lib/themes/dark.css +312 -29
  101. package/lib/themes/dark.css.map +1 -1
  102. package/lib/themes/default.css +315 -41
  103. package/lib/themes/default.css.map +1 -1
  104. package/lib/utils/helper.d.ts +1 -6
  105. package/lib/utils/helper.js +6 -17
  106. package/lib/utils/helper.js.map +2 -2
  107. package/package.json +1 -2
  108. package/schema.json +2192 -20
  109. package/scss/_properties.scss +10 -6
  110. package/scss/components/_calendar.scss +9 -2
  111. package/scss/components/_cascader.scss +102 -0
  112. package/scss/components/_city-area.scss +27 -0
  113. package/scss/components/_dropdown.scss +39 -9
  114. package/scss/components/_picker-columns.scss +15 -5
  115. package/scss/components/_popup.scss +35 -12
  116. package/scss/components/_result-box.scss +31 -0
  117. package/scss/components/form/_checks.scss +2 -0
  118. package/scss/components/form/_color.scss +2 -2
  119. package/scss/components/form/_date-range.scss +1 -1
  120. package/scss/components/form/_date.scss +46 -1
  121. package/scss/components/form/_nested-select.scss +3 -0
  122. package/scss/components/form/_select.scss +32 -3
  123. package/scss/components/form/_transfer.scss +3 -0
  124. package/scss/components/form/_tree-select.scss +1 -1
  125. package/scss/themes/_common.scss +2 -0
  126. package/scss/themes/_cxd-variables.scss +3 -3
  127. package/scss/themes/cxd.scss +0 -12
  128. package/sdk/ang-ie11.css +368 -29
  129. package/sdk/ang.css +367 -30
  130. package/sdk/antd-ie11.css +368 -29
  131. package/sdk/antd.css +367 -30
  132. package/sdk/charts.js +18 -18
  133. package/sdk/codemirror.js +7 -7
  134. package/sdk/color-picker.js +65 -65
  135. package/sdk/cropperjs.js +3 -3
  136. package/sdk/cxd-ie11.css +370 -42
  137. package/sdk/cxd.css +370 -44
  138. package/sdk/dark-ie11.css +368 -29
  139. package/sdk/dark.css +367 -30
  140. package/sdk/exceljs.js +1 -1
  141. package/sdk/locale/de-DE.js +4 -0
  142. package/sdk/markdown.js +69 -69
  143. package/sdk/papaparse.js +1 -1
  144. package/sdk/renderers/Form/CityDB.js +1 -1
  145. package/sdk/rest.js +18 -18
  146. package/sdk/rich-text.js +62 -62
  147. package/sdk/sdk-ie11.css +370 -42
  148. package/sdk/sdk.css +370 -44
  149. package/sdk/sdk.js +1309 -1227
  150. package/sdk/thirds/hls.js/hls.js +18 -18
  151. package/sdk/thirds/mpegts.js/mpegts.js +2 -2
  152. package/sdk/tinymce.js +57 -57
  153. package/src/components/CalendarMobile.tsx +5 -5
  154. package/src/components/Cascader.tsx +564 -0
  155. package/src/components/CityArea.tsx +315 -0
  156. package/src/components/ColorPicker.tsx +5 -2
  157. package/src/components/DatePicker.tsx +15 -5
  158. package/src/components/DateRangePicker.tsx +52 -43
  159. package/src/components/MonthRangePicker.tsx +44 -38
  160. package/src/components/Picker.tsx +27 -12
  161. package/src/components/PickerColumn.tsx +28 -18
  162. package/src/components/PopOverContainer.tsx +31 -17
  163. package/src/components/PopUp.tsx +55 -13
  164. package/src/components/ResultBox.tsx +10 -1
  165. package/src/components/Select.tsx +20 -23
  166. package/src/components/TransferDropDown.tsx +19 -5
  167. package/src/components/calendar/Calendar.tsx +86 -9
  168. package/src/components/calendar/DaysView.tsx +86 -2
  169. package/src/components/calendar/MonthsView.tsx +56 -63
  170. package/src/components/calendar/TimeView.tsx +82 -29
  171. package/src/components/calendar/YearsView.tsx +25 -6
  172. package/src/locale/de-DE.ts +4 -0
  173. package/src/locale/en-US.ts +4 -0
  174. package/src/locale/zh-CN.ts +4 -0
  175. package/src/renderers/DropDownButton.tsx +69 -35
  176. package/src/renderers/Form/CityDB.ts +526 -2
  177. package/src/renderers/Form/InputCity.tsx +23 -3
  178. package/src/renderers/Form/InputColor.tsx +21 -2
  179. package/src/renderers/Form/InputDate.tsx +10 -1
  180. package/src/renderers/Form/InputDateRange.tsx +9 -1
  181. package/src/renderers/Form/Item.tsx +14 -4
  182. package/src/renderers/Form/NestedSelect.tsx +31 -3
  183. package/src/renderers/Form/Select.tsx +15 -2
  184. package/src/renderers/Form/TreeSelect.tsx +10 -6
  185. package/src/renderers/Remark.tsx +2 -1
  186. package/src/schemaExtend.ts +22 -10
  187. package/src/utils/helper.ts +6 -16
@@ -378,7 +378,7 @@ var DatePicker = /** @class */ (function (_super) {
378
378
  };
379
379
  DatePicker.prototype.render = function () {
380
380
  var _a;
381
- var _b = this.props, ns = _b.classPrefix, cx = _b.classnames, className = _b.className, popoverClassName = _b.popoverClassName, value = _b.value, placeholder = _b.placeholder, disabled = _b.disabled, inputFormat = _b.inputFormat, dateFormat = _b.dateFormat, timeFormat = _b.timeFormat, viewMode = _b.viewMode, timeConstraints = _b.timeConstraints, popOverContainer = _b.popOverContainer, clearable = _b.clearable, shortcuts = _b.shortcuts, utc = _b.utc, overlayPlacement = _b.overlayPlacement, locale = _b.locale, format = _b.format, borderMode = _b.borderMode, embed = _b.embed, minDate = _b.minDate, useMobileUI = _b.useMobileUI, maxDate = _b.maxDate, schedules = _b.schedules, largeMode = _b.largeMode, scheduleClassNames = _b.scheduleClassNames, onScheduleClick = _b.onScheduleClick;
381
+ var _b = this.props, ns = _b.classPrefix, cx = _b.classnames, className = _b.className, popoverClassName = _b.popoverClassName, value = _b.value, placeholder = _b.placeholder, disabled = _b.disabled, inputFormat = _b.inputFormat, dateFormat = _b.dateFormat, timeFormat = _b.timeFormat, viewMode = _b.viewMode, timeConstraints = _b.timeConstraints, popOverContainer = _b.popOverContainer, clearable = _b.clearable, shortcuts = _b.shortcuts, utc = _b.utc, overlayPlacement = _b.overlayPlacement, locale = _b.locale, format = _b.format, borderMode = _b.borderMode, embed = _b.embed, minDate = _b.minDate, useMobileUI = _b.useMobileUI, maxDate = _b.maxDate, schedules = _b.schedules, largeMode = _b.largeMode, scheduleClassNames = _b.scheduleClassNames, onScheduleClick = _b.onScheduleClick, mobileCalendarMode = _b.mobileCalendarMode;
382
382
  var __ = this.props.translate;
383
383
  var isOpened = this.state.isOpened;
384
384
  var date = this.state.value;
@@ -406,13 +406,14 @@ var DatePicker = /** @class */ (function (_super) {
406
406
  }, className) },
407
407
  react_1.default.createElement(Calendar_1.default, { value: date, onChange: this.handleChange, requiredConfirm: false, dateFormat: dateFormat, timeFormat: timeFormat, isValidDate: this.checkIsValidDate, viewMode: viewMode, timeConstraints: timeConstraints, input: false, onClose: this.close, locale: locale, minDate: minDate, maxDate: maxDate,
408
408
  // utc={utc}
409
- schedules: schedulesData, largeMode: largeMode, onScheduleClick: onScheduleClick })));
409
+ schedules: schedulesData, largeMode: largeMode, onScheduleClick: onScheduleClick, embed: embed, useMobileUI: useMobileUI })));
410
410
  }
411
411
  return (react_1.default.createElement("div", { tabIndex: 0, onKeyPress: this.handleKeyPress, onFocus: this.handleFocus, onBlur: this.handleBlur, className: cx("DatePicker", (_a = {
412
412
  'is-disabled': disabled,
413
413
  'is-focused': this.state.isFocused
414
414
  },
415
415
  _a["DatePicker--border" + (0, helper_1.ucFirst)(borderMode)] = borderMode,
416
+ _a['is-mobile'] = useMobileUI && (0, helper_1.isMobile)(),
416
417
  _a), className), ref: this.domRef, onClick: this.handleClick },
417
418
  date ? (react_1.default.createElement("span", { className: cx("DatePicker-value") }, date.format(inputFormat))) : (react_1.default.createElement("span", { className: cx("DatePicker-placeholder") }, __(placeholder))),
418
419
  clearable && !disabled && normalizeValue(value, format) ? (react_1.default.createElement("a", { className: cx("DatePicker-clear"), onClick: this.clearValue },
@@ -422,10 +423,10 @@ var DatePicker = /** @class */ (function (_super) {
422
423
  !(useMobileUI && (0, helper_1.isMobile)()) && isOpened ? (react_1.default.createElement(Overlay_1.default, { target: this.getTarget, container: popOverContainer || this.getParent, rootClose: false, placement: overlayPlacement, show: true },
423
424
  react_1.default.createElement(PopOver_1.default, { classPrefix: ns, className: cx("DatePicker-popover", popoverClassName), onHide: this.close, overlay: true, onClick: this.handlePopOverClick },
424
425
  this.renderShortCuts(shortcuts),
425
- react_1.default.createElement(Calendar_1.default, { value: date, onChange: this.handleChange, requiredConfirm: !!(dateFormat && timeFormat), dateFormat: dateFormat, inputFormat: inputFormat, timeFormat: timeFormat, isValidDate: this.checkIsValidDate, viewMode: viewMode, timeConstraints: timeConstraints, input: false, onClose: this.close, locale: locale, minDate: minDate, maxDate: maxDate })))) : null,
426
- useMobileUI && (0, helper_1.isMobile)() ? (react_1.default.createElement(PopUp_1.default, { className: cx(ns + "DatePicker-popup"), isShow: isOpened, onHide: this.handleClick },
427
- this.renderShortCuts(shortcuts),
428
- react_1.default.createElement(Calendar_1.default, { value: date, onChange: this.handleChange, requiredConfirm: !!(dateFormat && timeFormat), dateFormat: dateFormat, inputFormat: inputFormat, timeFormat: timeFormat, isValidDate: this.checkIsValidDate, viewMode: viewMode, timeConstraints: timeConstraints, input: false, onClose: this.close, locale: locale, minDate: minDate }))) : null));
426
+ react_1.default.createElement(Calendar_1.default, { value: date, onChange: this.handleChange, requiredConfirm: !!(dateFormat && timeFormat), dateFormat: dateFormat, inputFormat: inputFormat, timeFormat: timeFormat, isValidDate: this.checkIsValidDate, viewMode: viewMode, timeConstraints: timeConstraints, input: false, onClose: this.close, locale: locale, minDate: minDate, maxDate: maxDate, useMobileUI: useMobileUI })))) : null,
427
+ useMobileUI && (0, helper_1.isMobile)() ? (react_1.default.createElement(PopUp_1.default, { className: cx(ns + "DatePicker-popup DatePicker-mobile"), container: popOverContainer, isShow: isOpened, showClose: false, onHide: this.handleClick },
428
+ mobileCalendarMode === 'calendar' && this.renderShortCuts(shortcuts),
429
+ react_1.default.createElement(Calendar_1.default, { value: date, onChange: this.handleChange, requiredConfirm: !!(dateFormat && timeFormat), dateFormat: dateFormat, inputFormat: inputFormat, timeFormat: timeFormat, isValidDate: this.checkIsValidDate, viewMode: viewMode, timeConstraints: timeConstraints, input: false, onClose: this.close, locale: locale, minDate: minDate, maxDate: maxDate, useMobileUI: useMobileUI }))) : null));
429
430
  };
430
431
  DatePicker.defaultProps = {
431
432
  viewMode: 'days',
@@ -6,8 +6,8 @@
6
6
  "/src/components/DatePicker.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "/**\n * @file DatePicker\n * @description 时间选择器组件\n * @author fex\n */\n\nimport React from 'react';\nimport moment from 'moment';\nimport 'moment/locale/zh-cn';\nimport {Icon} from './icons';\nimport PopOver from './PopOver';\nimport PopUp from './PopUp';\nimport Overlay from './Overlay';\nimport {ClassNamesFn, themeable, ThemeProps} from '../theme';\nimport {PlainObject} from '../types';\nimport Calendar from './calendar/Calendar';\nimport 'react-datetime/css/react-datetime.css';\nimport {localeable, LocaleProps, TranslateFn} from '../locale';\nimport {isMobile, ucFirst} from '../utils/helper';\n\nconst availableShortcuts: {[propName: string]: any} = {\n now: {\n label: 'Date.now',\n date: (now: moment.Moment) => {\n return now;\n }\n },\n today: {\n label: 'Date.today',\n date: (now: moment.Moment) => {\n return now.startOf('day');\n }\n },\n\n yesterday: {\n label: 'Date.yesterday',\n date: (now: moment.Moment) => {\n return now.add(-1, 'days').startOf('day');\n }\n },\n\n thisweek: {\n label: 'Date.monday',\n date: (now: moment.Moment) => {\n return now.startOf('week').startOf('day');\n }\n },\n\n thismonth: {\n label: 'Date.startOfMonth',\n date: (now: moment.Moment) => {\n return now.startOf('month');\n }\n },\n\n prevmonth: {\n label: 'Date.startOfLastMonth',\n date: (now: moment.Moment) => {\n return now.startOf('month').add(-1, 'month');\n }\n },\n\n prevquarter: {\n label: 'Date.startOfLastQuarter',\n date: (now: moment.Moment) => {\n return now.startOf('quarter').add(-1, 'quarter');\n }\n },\n\n thisquarter: {\n label: 'Date.startOfQuarter',\n date: (now: moment.Moment) => {\n return now.startOf('quarter');\n }\n },\n\n tomorrow: {\n label: 'Date.tomorrow',\n date: (now: moment.Moment) => {\n return now.add(1, 'days').startOf('day');\n }\n },\n\n endofthisweek: {\n label: 'Date.endOfWeek',\n date: (now: moment.Moment) => {\n return now.endOf('week');\n }\n },\n\n endofthismonth: {\n label: 'Date.endOfMonth',\n date: (now: moment.Moment) => {\n return now.endOf('month');\n }\n },\n\n endoflastmonth: {\n label: 'Date.endOfLastMonth',\n date: (now: moment.Moment) => {\n return now.add(-1, 'month').endOf('month');\n }\n }\n};\n\nconst advancedShortcuts = [\n {\n regexp: /^(\\d+)hoursago$/,\n resolve: (__: TranslateFn, _: string, hours: string) => {\n return {\n label: __('Date.hoursago', {hours}),\n date: (now: moment.Moment) => {\n return now.subtract(hours, 'hours');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)hourslater$/,\n resolve: (__: TranslateFn, _: string, hours: string) => {\n return {\n label: __('Date.hourslater', {hours}),\n date: (now: moment.Moment) => {\n return now.add(hours, 'hours');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)daysago$/,\n resolve: (__: TranslateFn, _: string, days: string) => {\n return {\n label: __('Date.daysago', {days}),\n date: (now: moment.Moment) => {\n return now.subtract(days, 'days');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)dayslater$/,\n resolve: (__: TranslateFn, _: string, days: string) => {\n return {\n label: __('Date.dayslater', {days}),\n date: (now: moment.Moment) => {\n return now.add(days, 'days');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)weeksago$/,\n resolve: (__: TranslateFn, _: string, weeks: string) => {\n return {\n label: __('Date.weeksago', {weeks}),\n date: (now: moment.Moment) => {\n return now.subtract(weeks, 'weeks');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)weekslater$/,\n resolve: (__: TranslateFn, _: string, weeks: string) => {\n return {\n label: __('Date.weekslater', {weeks}),\n date: (now: moment.Moment) => {\n return now.add(weeks, 'weeks');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)monthsago$/,\n resolve: (__: TranslateFn, _: string, months: string) => {\n return {\n label: __('Date.monthsago', {months}),\n date: (now: moment.Moment) => {\n return now.subtract(months, 'months');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)monthslater$/,\n resolve: (__: TranslateFn, _: string, months: string) => {\n return {\n label: __('Date.monthslater', {months}),\n date: (now: moment.Moment) => {\n return now.add(months, 'months');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)quartersago$/,\n resolve: (__: TranslateFn, _: string, quarters: string) => {\n return {\n label: __('Date.quartersago', {quarters}),\n date: (now: moment.Moment) => {\n return now.subtract(quarters, 'quarters');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)quarterslater$/,\n resolve: (__: TranslateFn, _: string, quarters: string) => {\n return {\n label: __('Date.quarterslater', {quarters}),\n date: (now: moment.Moment) => {\n return now.add(quarters, 'quarters');\n }\n };\n }\n }\n];\n\nexport type ShortCutDate = {\n label: string;\n date: moment.Moment;\n};\n\nexport type ShortCutDateRange = {\n label: string;\n startDate?: moment.Moment;\n endDate?: moment.Moment;\n};\n\nexport type ShortCuts =\n | {\n label: string;\n value: string;\n }\n | ShortCutDate\n | ShortCutDateRange;\n\nexport interface DateProps extends LocaleProps, ThemeProps {\n viewMode: 'years' | 'months' | 'days' | 'time' | 'quarters';\n className?: string;\n popoverClassName?: string;\n placeholder?: string;\n inputFormat?: string;\n timeFormat?: string;\n format?: string;\n closeOnSelect: boolean;\n disabled?: boolean;\n minDate?: moment.Moment;\n maxDate?: moment.Moment;\n clearable?: boolean;\n defaultValue?: any;\n utc?: boolean;\n onChange: (value: any) => void;\n value?: any;\n shortcuts: string | Array<ShortCuts>;\n overlayPlacement: string;\n // minTime?: moment.Moment;\n // maxTime?: moment.Moment;\n dateFormat?: 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 popOverContainer?: any;\n\n borderMode?: 'full' | 'half' | 'none';\n // 是否为内嵌模式,如果开启就不是 picker 了,直接页面点选。\n embed?: boolean;\n schedules?: Array<{\n startTime: Date;\n endTime: Date;\n content: any;\n className?: string;\n }>;\n scheduleClassNames?: Array<string>;\n largeMode?: boolean;\n onScheduleClick?: (scheduleData: any) => void;\n\n useMobileUI?: boolean;\n\n // 下面那个千万不要写,写了就会导致 keyof DateProps 得到的结果是 string | number;\n // [propName: string]: any;\n}\n\nexport interface DatePickerState {\n isOpened: boolean;\n isFocused: boolean;\n value: moment.Moment | undefined;\n}\n\nfunction normalizeValue(value: any, format?: string) {\n if (!value || value === '0') {\n return undefined;\n }\n const v = moment(value, format, true);\n return v.isValid() ? v : undefined;\n}\n\nexport class DatePicker extends React.Component<DateProps, DatePickerState> {\n static defaultProps = {\n viewMode: 'days' as 'years' | 'months' | 'days' | 'time',\n shortcuts: '',\n closeOnSelect: true,\n overlayPlacement: 'auto',\n scheduleClassNames: [\n 'bg-warning',\n 'bg-danger',\n 'bg-success',\n 'bg-info',\n 'bg-secondary'\n ]\n };\n state: DatePickerState = {\n isOpened: false,\n isFocused: false,\n value: normalizeValue(this.props.value, this.props.format)\n };\n constructor(props: DateProps) {\n super(props);\n\n this.handleChange = this.handleChange.bind(this);\n this.selectRannge = this.selectRannge.bind(this);\n this.checkIsValidDate = this.checkIsValidDate.bind(this);\n this.open = this.open.bind(this);\n this.close = this.close.bind(this);\n this.handleFocus = this.handleFocus.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n this.clearValue = this.clearValue.bind(this);\n this.handleClick = this.handleClick.bind(this);\n this.handleKeyPress = this.handleKeyPress.bind(this);\n this.getParent = this.getParent.bind(this);\n this.getTarget = this.getTarget.bind(this);\n this.handlePopOverClick = this.handlePopOverClick.bind(this);\n this.renderShortCuts = this.renderShortCuts.bind(this);\n }\n\n dom: HTMLDivElement;\n\n componentDidUpdate(prevProps: DateProps) {\n const props = this.props;\n\n if (prevProps.value !== props.value) {\n this.setState({\n value: normalizeValue(props.value, props.format)\n });\n }\n }\n\n focus() {\n if (!this.dom) {\n return;\n }\n\n this.dom.focus();\n }\n\n handleFocus() {\n this.setState({\n isFocused: true\n });\n }\n\n handleBlur() {\n this.setState({\n isFocused: false\n });\n }\n\n handleKeyPress(e: React.KeyboardEvent) {\n if (e.key === ' ') {\n this.handleClick();\n e.preventDefault();\n }\n }\n\n handleClick() {\n this.state.isOpened ? this.close() : this.open();\n }\n\n handlePopOverClick(e: React.MouseEvent<any>) {\n e.stopPropagation();\n e.preventDefault();\n }\n\n open(fn?: () => void) {\n this.props.disabled ||\n this.setState(\n {\n isOpened: true\n },\n fn\n );\n }\n\n close() {\n this.setState({\n isOpened: false\n });\n }\n\n clearValue(e: React.MouseEvent<any>) {\n e.preventDefault();\n e.stopPropagation();\n const onChange = this.props.onChange;\n onChange('');\n }\n\n handleChange(value: moment.Moment) {\n const {\n onChange,\n format,\n minDate,\n maxDate,\n dateFormat,\n timeFormat,\n closeOnSelect,\n utc,\n viewMode\n } = this.props;\n\n if (!moment.isMoment(value)) {\n return;\n }\n\n if (minDate && value && value.isBefore(minDate, 'second')) {\n value = minDate;\n } else if (maxDate && value && value.isAfter(maxDate, 'second')) {\n value = maxDate;\n }\n\n onChange(utc ? moment.utc(value).format(format) : value.format(format));\n\n if (closeOnSelect && dateFormat && !timeFormat) {\n this.close();\n }\n }\n\n selectRannge(item: any) {\n const {closeOnSelect} = this.props;\n const now = moment();\n this.handleChange(item.date(now));\n\n closeOnSelect && this.close();\n }\n\n checkIsValidDate(currentDate: moment.Moment) {\n const {minDate, maxDate} = this.props;\n\n if (minDate && currentDate.isBefore(minDate, 'day')) {\n return false;\n } else if (maxDate && currentDate.isAfter(maxDate, 'day')) {\n return false;\n }\n\n return true;\n }\n\n getTarget() {\n return this.dom;\n }\n\n getParent() {\n return this.dom;\n }\n\n domRef = (ref: HTMLDivElement) => {\n this.dom = ref;\n };\n\n getAvailableShortcuts(key: string) {\n if (availableShortcuts[key]) {\n return availableShortcuts[key];\n }\n\n const __ = this.props.translate;\n\n for (let i = 0, len = advancedShortcuts.length; i < len; i++) {\n let item = advancedShortcuts[i];\n const m = item.regexp.exec(key);\n\n if (m) {\n return item.resolve.apply(item, [__, ...m]);\n }\n }\n\n return null;\n }\n\n renderShortCuts(shortcuts: string | Array<ShortCuts>) {\n if (!shortcuts) {\n return null;\n }\n const {classPrefix: ns, classnames: cx} = this.props;\n let shortcutArr: Array<string | ShortCuts>;\n if (typeof shortcuts === 'string') {\n shortcutArr = shortcuts.split(',');\n } else {\n shortcutArr = shortcuts;\n }\n\n const __ = this.props.translate;\n return (\n <ul className={cx(`DatePicker-shortcuts`)}>\n {shortcutArr.map(item => {\n if (!item) {\n return null;\n }\n let shortcut: PlainObject = {};\n if (typeof item === 'string') {\n shortcut = this.getAvailableShortcuts(item);\n shortcut.key = item;\n } else if ((item as ShortCutDate).date) {\n shortcut = {\n ...item,\n date: () => (item as ShortCutDate).date\n };\n }\n return (\n <li\n className={cx(`DatePicker-shortcut`)}\n onClick={() => this.selectRannge(shortcut)}\n key={shortcut.key || shortcut.label}\n >\n <a>{__(shortcut.label)}</a>\n </li>\n );\n })}\n </ul>\n );\n }\n\n render() {\n const {\n classPrefix: ns,\n classnames: cx,\n className,\n popoverClassName,\n value,\n placeholder,\n disabled,\n inputFormat,\n dateFormat,\n timeFormat,\n viewMode,\n timeConstraints,\n popOverContainer,\n clearable,\n shortcuts,\n utc,\n overlayPlacement,\n locale,\n format,\n borderMode,\n embed,\n minDate,\n useMobileUI,\n maxDate,\n schedules,\n largeMode,\n scheduleClassNames,\n onScheduleClick\n } = this.props;\n\n const __ = this.props.translate;\n const isOpened = this.state.isOpened;\n let date: moment.Moment | undefined = this.state.value;\n\n if (embed) {\n let schedulesData: DateProps['schedules'] = undefined;\n if (schedules && Array.isArray(schedules)) {\n // 设置日程颜色\n let index = 0;\n schedulesData = schedules.map((schedule: any) => {\n let className = schedule.className;\n if (!className && scheduleClassNames) {\n className = scheduleClassNames[index];\n index++;\n if (index >= scheduleClassNames.length) {\n index = 0;\n }\n }\n return {\n ...schedule,\n className\n };\n });\n }\n return (\n <div\n className={cx(\n `DateCalendar`,\n {\n 'is-disabled': disabled,\n 'ScheduleCalendar': schedulesData,\n 'ScheduleCalendar-large': largeMode\n },\n className\n )}\n >\n <Calendar\n value={date}\n onChange={this.handleChange}\n requiredConfirm={false}\n dateFormat={dateFormat}\n timeFormat={timeFormat}\n isValidDate={this.checkIsValidDate}\n viewMode={viewMode}\n timeConstraints={timeConstraints}\n input={false}\n onClose={this.close}\n locale={locale}\n minDate={minDate}\n maxDate={maxDate}\n // utc={utc}\n schedules={schedulesData}\n largeMode={largeMode}\n onScheduleClick={onScheduleClick}\n />\n </div>\n );\n }\n\n return (\n <div\n tabIndex={0}\n onKeyPress={this.handleKeyPress}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n className={cx(\n `DatePicker`,\n {\n 'is-disabled': disabled,\n 'is-focused': this.state.isFocused,\n [`DatePicker--border${ucFirst(borderMode)}`]: borderMode\n },\n className\n )}\n ref={this.domRef}\n onClick={this.handleClick}\n >\n {date ? (\n <span className={cx(`DatePicker-value`)}>\n {date.format(inputFormat)}\n </span>\n ) : (\n <span className={cx(`DatePicker-placeholder`)}>\n {__(placeholder)}\n </span>\n )}\n\n {clearable && !disabled && normalizeValue(value, format) ? (\n <a className={cx(`DatePicker-clear`)} onClick={this.clearValue}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n\n <a className={cx(`DatePicker-toggler`)}>\n <Icon icon=\"clock\" className=\"icon\" />\n </a>\n\n {!(useMobileUI && isMobile()) && isOpened ? (\n <Overlay\n target={this.getTarget}\n container={popOverContainer || this.getParent}\n rootClose={false}\n placement={overlayPlacement}\n show\n >\n <PopOver\n classPrefix={ns}\n className={cx(`DatePicker-popover`, popoverClassName)}\n onHide={this.close}\n overlay\n onClick={this.handlePopOverClick}\n >\n {this.renderShortCuts(shortcuts)}\n\n <Calendar\n value={date}\n onChange={this.handleChange}\n requiredConfirm={!!(dateFormat && timeFormat)}\n dateFormat={dateFormat}\n inputFormat={inputFormat}\n timeFormat={timeFormat}\n isValidDate={this.checkIsValidDate}\n viewMode={viewMode}\n timeConstraints={timeConstraints}\n input={false}\n onClose={this.close}\n locale={locale}\n minDate={minDate}\n maxDate={maxDate}\n // utc={utc}\n />\n </PopOver>\n </Overlay>\n ) : null}\n {useMobileUI && isMobile() ? (\n <PopUp\n className={cx(`${ns}DatePicker-popup`)}\n isShow={isOpened}\n onHide={this.handleClick}\n >\n {this.renderShortCuts(shortcuts)}\n\n <Calendar\n value={date}\n onChange={this.handleChange}\n requiredConfirm={!!(dateFormat && timeFormat)}\n dateFormat={dateFormat}\n inputFormat={inputFormat}\n timeFormat={timeFormat}\n isValidDate={this.checkIsValidDate}\n viewMode={viewMode}\n timeConstraints={timeConstraints}\n input={false}\n onClose={this.close}\n locale={locale}\n minDate={minDate}\n // utc={utc}\n />\n </PopUp>\n ) : null}\n </div>\n );\n }\n}\n\nexport default themeable(localeable(DatePicker));\n"
11
+ "/**\n * @file DatePicker\n * @description 时间选择器组件\n * @author fex\n */\n\nimport React from 'react';\nimport moment from 'moment';\nimport 'moment/locale/zh-cn';\nimport {Icon} from './icons';\nimport PopOver from './PopOver';\nimport PopUp from './PopUp';\nimport Overlay from './Overlay';\nimport {ClassNamesFn, themeable, ThemeProps} from '../theme';\nimport {PlainObject} from '../types';\nimport Calendar from './calendar/Calendar';\nimport 'react-datetime/css/react-datetime.css';\nimport {localeable, LocaleProps, TranslateFn} from '../locale';\nimport {isMobile, ucFirst} from '../utils/helper';\n\nconst availableShortcuts: {[propName: string]: any} = {\n now: {\n label: 'Date.now',\n date: (now: moment.Moment) => {\n return now;\n }\n },\n today: {\n label: 'Date.today',\n date: (now: moment.Moment) => {\n return now.startOf('day');\n }\n },\n\n yesterday: {\n label: 'Date.yesterday',\n date: (now: moment.Moment) => {\n return now.add(-1, 'days').startOf('day');\n }\n },\n\n thisweek: {\n label: 'Date.monday',\n date: (now: moment.Moment) => {\n return now.startOf('week').startOf('day');\n }\n },\n\n thismonth: {\n label: 'Date.startOfMonth',\n date: (now: moment.Moment) => {\n return now.startOf('month');\n }\n },\n\n prevmonth: {\n label: 'Date.startOfLastMonth',\n date: (now: moment.Moment) => {\n return now.startOf('month').add(-1, 'month');\n }\n },\n\n prevquarter: {\n label: 'Date.startOfLastQuarter',\n date: (now: moment.Moment) => {\n return now.startOf('quarter').add(-1, 'quarter');\n }\n },\n\n thisquarter: {\n label: 'Date.startOfQuarter',\n date: (now: moment.Moment) => {\n return now.startOf('quarter');\n }\n },\n\n tomorrow: {\n label: 'Date.tomorrow',\n date: (now: moment.Moment) => {\n return now.add(1, 'days').startOf('day');\n }\n },\n\n endofthisweek: {\n label: 'Date.endOfWeek',\n date: (now: moment.Moment) => {\n return now.endOf('week');\n }\n },\n\n endofthismonth: {\n label: 'Date.endOfMonth',\n date: (now: moment.Moment) => {\n return now.endOf('month');\n }\n },\n\n endoflastmonth: {\n label: 'Date.endOfLastMonth',\n date: (now: moment.Moment) => {\n return now.add(-1, 'month').endOf('month');\n }\n }\n};\n\nconst advancedShortcuts = [\n {\n regexp: /^(\\d+)hoursago$/,\n resolve: (__: TranslateFn, _: string, hours: string) => {\n return {\n label: __('Date.hoursago', {hours}),\n date: (now: moment.Moment) => {\n return now.subtract(hours, 'hours');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)hourslater$/,\n resolve: (__: TranslateFn, _: string, hours: string) => {\n return {\n label: __('Date.hourslater', {hours}),\n date: (now: moment.Moment) => {\n return now.add(hours, 'hours');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)daysago$/,\n resolve: (__: TranslateFn, _: string, days: string) => {\n return {\n label: __('Date.daysago', {days}),\n date: (now: moment.Moment) => {\n return now.subtract(days, 'days');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)dayslater$/,\n resolve: (__: TranslateFn, _: string, days: string) => {\n return {\n label: __('Date.dayslater', {days}),\n date: (now: moment.Moment) => {\n return now.add(days, 'days');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)weeksago$/,\n resolve: (__: TranslateFn, _: string, weeks: string) => {\n return {\n label: __('Date.weeksago', {weeks}),\n date: (now: moment.Moment) => {\n return now.subtract(weeks, 'weeks');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)weekslater$/,\n resolve: (__: TranslateFn, _: string, weeks: string) => {\n return {\n label: __('Date.weekslater', {weeks}),\n date: (now: moment.Moment) => {\n return now.add(weeks, 'weeks');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)monthsago$/,\n resolve: (__: TranslateFn, _: string, months: string) => {\n return {\n label: __('Date.monthsago', {months}),\n date: (now: moment.Moment) => {\n return now.subtract(months, 'months');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)monthslater$/,\n resolve: (__: TranslateFn, _: string, months: string) => {\n return {\n label: __('Date.monthslater', {months}),\n date: (now: moment.Moment) => {\n return now.add(months, 'months');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)quartersago$/,\n resolve: (__: TranslateFn, _: string, quarters: string) => {\n return {\n label: __('Date.quartersago', {quarters}),\n date: (now: moment.Moment) => {\n return now.subtract(quarters, 'quarters');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)quarterslater$/,\n resolve: (__: TranslateFn, _: string, quarters: string) => {\n return {\n label: __('Date.quarterslater', {quarters}),\n date: (now: moment.Moment) => {\n return now.add(quarters, 'quarters');\n }\n };\n }\n }\n];\n\nexport type ShortCutDate = {\n label: string;\n date: moment.Moment;\n};\n\nexport type ShortCutDateRange = {\n label: string;\n startDate?: moment.Moment;\n endDate?: moment.Moment;\n};\n\nexport type ShortCuts =\n | {\n label: string;\n value: string;\n }\n | ShortCutDate\n | ShortCutDateRange;\n\nexport interface DateProps extends LocaleProps, ThemeProps {\n viewMode: 'years' | 'months' | 'days' | 'time' | 'quarters';\n className?: string;\n popoverClassName?: string;\n placeholder?: string;\n inputFormat?: string;\n timeFormat?: string;\n format?: string;\n closeOnSelect: boolean;\n disabled?: boolean;\n minDate?: moment.Moment;\n maxDate?: moment.Moment;\n clearable?: boolean;\n defaultValue?: any;\n utc?: boolean;\n onChange: (value: any) => void;\n value?: any;\n shortcuts: string | Array<ShortCuts>;\n overlayPlacement: string;\n // minTime?: moment.Moment;\n // maxTime?: moment.Moment;\n dateFormat?: 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 popOverContainer?: any;\n\n borderMode?: 'full' | 'half' | 'none';\n // 是否为内嵌模式,如果开启就不是 picker 了,直接页面点选。\n embed?: boolean;\n schedules?: Array<{\n startTime: Date;\n endTime: Date;\n content: any;\n className?: string;\n }>;\n scheduleClassNames?: Array<string>;\n largeMode?: boolean;\n onScheduleClick?: (scheduleData: any) => void;\n useMobileUI?: boolean;\n // 在移动端日期展示有多种形式,一种是picker 滑动选择,一种是日历展开选择,mobileCalendarMode为calendar表示日历展开选择\n mobileCalendarMode?: 'picker' | 'calendar';\n\n // 下面那个千万不要写,写了就会导致 keyof DateProps 得到的结果是 string | number;\n // [propName: string]: any;\n}\n\nexport interface DatePickerState {\n isOpened: boolean;\n isFocused: boolean;\n value: moment.Moment | undefined;\n}\n\nfunction normalizeValue(value: any, format?: string) {\n if (!value || value === '0') {\n return undefined;\n }\n const v = moment(value, format, true);\n return v.isValid() ? v : undefined;\n}\n\nexport class DatePicker extends React.Component<DateProps, DatePickerState> {\n static defaultProps = {\n viewMode: 'days' as 'years' | 'months' | 'days' | 'time',\n shortcuts: '',\n closeOnSelect: true,\n overlayPlacement: 'auto',\n scheduleClassNames: [\n 'bg-warning',\n 'bg-danger',\n 'bg-success',\n 'bg-info',\n 'bg-secondary'\n ]\n };\n state: DatePickerState = {\n isOpened: false,\n isFocused: false,\n value: normalizeValue(this.props.value, this.props.format)\n };\n constructor(props: DateProps) {\n super(props);\n\n this.handleChange = this.handleChange.bind(this);\n this.selectRannge = this.selectRannge.bind(this);\n this.checkIsValidDate = this.checkIsValidDate.bind(this);\n this.open = this.open.bind(this);\n this.close = this.close.bind(this);\n this.handleFocus = this.handleFocus.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n this.clearValue = this.clearValue.bind(this);\n this.handleClick = this.handleClick.bind(this);\n this.handleKeyPress = this.handleKeyPress.bind(this);\n this.getParent = this.getParent.bind(this);\n this.getTarget = this.getTarget.bind(this);\n this.handlePopOverClick = this.handlePopOverClick.bind(this);\n this.renderShortCuts = this.renderShortCuts.bind(this);\n }\n\n dom: HTMLDivElement;\n\n componentDidUpdate(prevProps: DateProps) {\n const props = this.props;\n\n if (prevProps.value !== props.value) {\n this.setState({\n value: normalizeValue(props.value, props.format)\n });\n }\n }\n\n focus() {\n if (!this.dom) {\n return;\n }\n\n this.dom.focus();\n }\n\n handleFocus() {\n this.setState({\n isFocused: true\n });\n }\n\n handleBlur() {\n this.setState({\n isFocused: false\n });\n }\n\n handleKeyPress(e: React.KeyboardEvent) {\n if (e.key === ' ') {\n this.handleClick();\n e.preventDefault();\n }\n }\n\n handleClick() {\n this.state.isOpened ? this.close() : this.open();\n }\n\n handlePopOverClick(e: React.MouseEvent<any>) {\n e.stopPropagation();\n e.preventDefault();\n }\n\n open(fn?: () => void) {\n this.props.disabled ||\n this.setState(\n {\n isOpened: true\n },\n fn\n );\n }\n\n close() {\n this.setState({\n isOpened: false\n });\n }\n\n clearValue(e: React.MouseEvent<any>) {\n e.preventDefault();\n e.stopPropagation();\n const onChange = this.props.onChange;\n onChange('');\n }\n\n handleChange(value: moment.Moment) {\n const {\n onChange,\n format,\n minDate,\n maxDate,\n dateFormat,\n timeFormat,\n closeOnSelect,\n utc,\n viewMode\n } = this.props;\n\n if (!moment.isMoment(value)) {\n return;\n }\n\n if (minDate && value && value.isBefore(minDate, 'second')) {\n value = minDate;\n } else if (maxDate && value && value.isAfter(maxDate, 'second')) {\n value = maxDate;\n }\n\n onChange(utc ? moment.utc(value).format(format) : value.format(format));\n\n if (closeOnSelect && dateFormat && !timeFormat) {\n this.close();\n }\n }\n\n selectRannge(item: any) {\n const {closeOnSelect} = this.props;\n const now = moment();\n this.handleChange(item.date(now));\n\n closeOnSelect && this.close();\n }\n\n checkIsValidDate(currentDate: moment.Moment) {\n const {minDate, maxDate} = this.props;\n\n if (minDate && currentDate.isBefore(minDate, 'day')) {\n return false;\n } else if (maxDate && currentDate.isAfter(maxDate, 'day')) {\n return false;\n }\n\n return true;\n }\n\n getTarget() {\n return this.dom;\n }\n\n getParent() {\n return this.dom;\n }\n\n domRef = (ref: HTMLDivElement) => {\n this.dom = ref;\n };\n\n getAvailableShortcuts(key: string) {\n if (availableShortcuts[key]) {\n return availableShortcuts[key];\n }\n\n const __ = this.props.translate;\n\n for (let i = 0, len = advancedShortcuts.length; i < len; i++) {\n let item = advancedShortcuts[i];\n const m = item.regexp.exec(key);\n\n if (m) {\n return item.resolve.apply(item, [__, ...m]);\n }\n }\n\n return null;\n }\n\n renderShortCuts(shortcuts: string | Array<ShortCuts>) {\n if (!shortcuts) {\n return null;\n }\n const {classPrefix: ns, classnames: cx} = this.props;\n let shortcutArr: Array<string | ShortCuts>;\n if (typeof shortcuts === 'string') {\n shortcutArr = shortcuts.split(',');\n } else {\n shortcutArr = shortcuts;\n }\n\n const __ = this.props.translate;\n return (\n <ul className={cx(`DatePicker-shortcuts`)}>\n {shortcutArr.map(item => {\n if (!item) {\n return null;\n }\n let shortcut: PlainObject = {};\n if (typeof item === 'string') {\n shortcut = this.getAvailableShortcuts(item);\n shortcut.key = item;\n } else if ((item as ShortCutDate).date) {\n shortcut = {\n ...item,\n date: () => (item as ShortCutDate).date\n };\n }\n return (\n <li\n className={cx(`DatePicker-shortcut`)}\n onClick={() => this.selectRannge(shortcut)}\n key={shortcut.key || shortcut.label}\n >\n <a>{__(shortcut.label)}</a>\n </li>\n );\n })}\n </ul>\n );\n }\n\n render() {\n const {\n classPrefix: ns,\n classnames: cx,\n className,\n popoverClassName,\n value,\n placeholder,\n disabled,\n inputFormat,\n dateFormat,\n timeFormat,\n viewMode,\n timeConstraints,\n popOverContainer,\n clearable,\n shortcuts,\n utc,\n overlayPlacement,\n locale,\n format,\n borderMode,\n embed,\n minDate,\n useMobileUI,\n maxDate,\n schedules,\n largeMode,\n scheduleClassNames,\n onScheduleClick,\n mobileCalendarMode\n } = this.props;\n\n const __ = this.props.translate;\n const isOpened = this.state.isOpened;\n let date: moment.Moment | undefined = this.state.value;\n\n if (embed) {\n let schedulesData: DateProps['schedules'] = undefined;\n if (schedules && Array.isArray(schedules)) {\n // 设置日程颜色\n let index = 0;\n schedulesData = schedules.map((schedule: any) => {\n let className = schedule.className;\n if (!className && scheduleClassNames) {\n className = scheduleClassNames[index];\n index++;\n if (index >= scheduleClassNames.length) {\n index = 0;\n }\n }\n return {\n ...schedule,\n className\n };\n });\n }\n return (\n <div\n className={cx(\n `DateCalendar`,\n {\n 'is-disabled': disabled,\n 'ScheduleCalendar': schedulesData,\n 'ScheduleCalendar-large': largeMode\n },\n className\n )}\n >\n <Calendar\n value={date}\n onChange={this.handleChange}\n requiredConfirm={false}\n dateFormat={dateFormat}\n timeFormat={timeFormat}\n isValidDate={this.checkIsValidDate}\n viewMode={viewMode}\n timeConstraints={timeConstraints}\n input={false}\n onClose={this.close}\n locale={locale}\n minDate={minDate}\n maxDate={maxDate}\n // utc={utc}\n schedules={schedulesData}\n largeMode={largeMode}\n onScheduleClick={onScheduleClick}\n embed={embed}\n useMobileUI={useMobileUI}\n />\n </div>\n );\n }\n\n return (\n <div\n tabIndex={0}\n onKeyPress={this.handleKeyPress}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n className={cx(\n `DatePicker`,\n {\n 'is-disabled': disabled,\n 'is-focused': this.state.isFocused,\n [`DatePicker--border${ucFirst(borderMode)}`]: borderMode,\n 'is-mobile': useMobileUI && isMobile()\n },\n className\n )}\n ref={this.domRef}\n onClick={this.handleClick}\n >\n {date ? (\n <span className={cx(`DatePicker-value`)}>\n {date.format(inputFormat)}\n </span>\n ) : (\n <span className={cx(`DatePicker-placeholder`)}>\n {__(placeholder)}\n </span>\n )}\n\n {clearable && !disabled && normalizeValue(value, format) ? (\n <a className={cx(`DatePicker-clear`)} onClick={this.clearValue}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n\n <a className={cx(`DatePicker-toggler`)}>\n <Icon icon=\"clock\" className=\"icon\" />\n </a>\n\n {!(useMobileUI && isMobile()) && isOpened ? (\n <Overlay\n target={this.getTarget}\n container={popOverContainer || this.getParent}\n rootClose={false}\n placement={overlayPlacement}\n show\n >\n <PopOver\n classPrefix={ns}\n className={cx(`DatePicker-popover`, popoverClassName)}\n onHide={this.close}\n overlay\n onClick={this.handlePopOverClick}\n >\n {this.renderShortCuts(shortcuts)}\n\n <Calendar\n value={date}\n onChange={this.handleChange}\n requiredConfirm={!!(dateFormat && timeFormat)}\n dateFormat={dateFormat}\n inputFormat={inputFormat}\n timeFormat={timeFormat}\n isValidDate={this.checkIsValidDate}\n viewMode={viewMode}\n timeConstraints={timeConstraints}\n input={false}\n onClose={this.close}\n locale={locale}\n minDate={minDate}\n maxDate={maxDate}\n useMobileUI={useMobileUI}\n // utc={utc}\n />\n </PopOver>\n </Overlay>\n ) : null}\n {useMobileUI && isMobile() ? (\n <PopUp\n className={cx(`${ns}DatePicker-popup DatePicker-mobile`)}\n container={popOverContainer}\n isShow={isOpened}\n showClose={false}\n onHide={this.handleClick}\n >\n {mobileCalendarMode === 'calendar' && this.renderShortCuts(shortcuts)}\n\n <Calendar\n value={date}\n onChange={this.handleChange}\n requiredConfirm={!!(dateFormat && timeFormat)}\n dateFormat={dateFormat}\n inputFormat={inputFormat}\n timeFormat={timeFormat}\n isValidDate={this.checkIsValidDate}\n viewMode={viewMode}\n timeConstraints={timeConstraints}\n input={false}\n onClose={this.close}\n locale={locale}\n minDate={minDate}\n maxDate={maxDate}\n useMobileUI={useMobileUI}\n // utc={utc}\n />\n </PopUp>\n ) : null}\n </div>\n );\n }\n}\n\nexport default themeable(localeable(DatePicker));\n"
12
12
  ]
13
13
  }
@@ -494,7 +494,9 @@ var DateRangePicker = /** @class */ (function (_super) {
494
494
  var _a;
495
495
  var _this = this;
496
496
  var _b = this.props, className = _b.className, popoverClassName = _b.popoverClassName, ns = _b.classPrefix, value = _b.value, placeholder = _b.placeholder, popOverContainer = _b.popOverContainer, inputFormat = _b.inputFormat, format = _b.format, joinValues = _b.joinValues, delimiter = _b.delimiter, clearable = _b.clearable, disabled = _b.disabled, embed = _b.embed, overlayPlacement = _b.overlayPlacement, borderMode = _b.borderMode, useMobileUI = _b.useMobileUI, timeFormat = _b.timeFormat, minDate = _b.minDate, maxDate = _b.maxDate, minDuration = _b.minDuration, maxDuration = _b.maxDuration, dateFormat = _b.dateFormat, _c = _b.viewMode, viewMode = _c === void 0 ? 'days' : _c, ranges = _b.ranges;
497
- var useCalendarMobile = useMobileUI && (0, helper_1.isMobile)() && ['days', 'months', 'quarters'].indexOf(viewMode) > -1;
497
+ var useCalendarMobile = useMobileUI &&
498
+ (0, helper_1.isMobile)() &&
499
+ ['days', 'months', 'quarters'].indexOf(viewMode) > -1;
498
500
  var _d = this.state, isOpened = _d.isOpened, isFocused = _d.isFocused, startDate = _d.startDate, endDate = _d.endDate;
499
501
  var selectedDate = DateRangePicker.unFormatValue(value, format, joinValues, delimiter);
500
502
  var startViewValue = selectedDate.startDate
@@ -507,15 +509,13 @@ var DateRangePicker = /** @class */ (function (_super) {
507
509
  startViewValue && arr.push(startViewValue);
508
510
  endViewValue && arr.push(endViewValue);
509
511
  var __ = this.props.translate;
510
- var calendarMobile = react_1.default.createElement(CalendarMobile_1.default, { timeFormat: timeFormat, inputFormat: inputFormat, startDate: startDate, endDate: endDate, minDate: minDate, maxDate: maxDate, minDuration: minDuration, maxDuration: maxDuration, dateFormat: dateFormat, embed: embed, viewMode: viewMode, close: this.close, confirm: this.confirm, onChange: this.handleMobileChange, footerExtra: this.renderRanges(ranges), showViewMode: viewMode === 'quarters' || viewMode === 'months' ? 'years' : 'months' });
512
+ var calendarMobile = (react_1.default.createElement(CalendarMobile_1.default, { timeFormat: timeFormat, inputFormat: inputFormat, startDate: startDate, endDate: endDate, minDate: minDate, maxDate: maxDate, minDuration: minDuration, maxDuration: maxDuration, dateFormat: dateFormat, embed: embed, viewMode: viewMode, close: this.close, confirm: this.confirm, onChange: this.handleMobileChange, footerExtra: this.renderRanges(ranges), showViewMode: viewMode === 'quarters' || viewMode === 'months' ? 'years' : 'months' }));
511
513
  if (embed) {
512
514
  return (react_1.default.createElement("div", { className: (0, classnames_1.default)(ns + "DateRangeCalendar", {
513
515
  'is-disabled': disabled
514
- }, className) }, useCalendarMobile
515
- ? calendarMobile
516
- : this.renderCalendar()));
516
+ }, className) }, useCalendarMobile ? calendarMobile : this.renderCalendar()));
517
517
  }
518
- var CalendarMobileTitle = react_1.default.createElement("div", { className: ns + "CalendarMobile-title" }, __('Calendar.datepicker'));
518
+ var CalendarMobileTitle = (react_1.default.createElement("div", { className: ns + "CalendarMobile-title" }, __('Calendar.datepicker')));
519
519
  return (react_1.default.createElement("div", { tabIndex: 0, onKeyPress: this.handleKeyPress, onFocus: this.handleFocus, onBlur: this.handleBlur, className: (0, classnames_1.default)(ns + "DateRangePicker", (_a = {
520
520
  'is-disabled': disabled,
521
521
  'is-focused': isFocused
@@ -527,11 +527,8 @@ var DateRangePicker = /** @class */ (function (_super) {
527
527
  react_1.default.createElement(icons_1.Icon, { icon: "close", className: "icon" }))) : null,
528
528
  react_1.default.createElement("a", { className: ns + "DateRangePicker-toggler" },
529
529
  react_1.default.createElement(icons_1.Icon, { icon: "clock", className: "icon" })),
530
- isOpened ? (useMobileUI && (0, helper_1.isMobile)() ? (react_1.default.createElement(PopUp_1.default, { isShow: isOpened, className: (0, classnames_1.default)(ns + "CalendarMobile-pop"), onHide: this.close, header: CalendarMobileTitle }, useCalendarMobile
531
- ? calendarMobile
532
- : this.renderCalendar()))
533
- : react_1.default.createElement(Overlay_1.default, { target: function () { return _this.dom.current; }, onHide: this.close, container: popOverContainer || (function () { return (0, react_dom_1.findDOMNode)(_this); }), rootClose: false, placement: overlayPlacement, show: true },
534
- react_1.default.createElement(PopOver_1.default, { classPrefix: ns, className: (0, classnames_1.default)(ns + "DateRangePicker-popover", popoverClassName), onHide: this.close, onClick: this.handlePopOverClick, overlay: true }, this.renderCalendar()))) : null));
530
+ isOpened ? (useMobileUI && (0, helper_1.isMobile)() ? (react_1.default.createElement(PopUp_1.default, { isShow: isOpened, container: popOverContainer, className: (0, classnames_1.default)(ns + "CalendarMobile-pop"), onHide: this.close, header: CalendarMobileTitle }, useCalendarMobile ? calendarMobile : this.renderCalendar())) : (react_1.default.createElement(Overlay_1.default, { target: function () { return _this.dom.current; }, onHide: this.close, container: popOverContainer || (function () { return (0, react_dom_1.findDOMNode)(_this); }), rootClose: false, placement: overlayPlacement, show: true },
531
+ react_1.default.createElement(PopOver_1.default, { classPrefix: ns, className: (0, classnames_1.default)(ns + "DateRangePicker-popover", popoverClassName), onHide: this.close, onClick: this.handlePopOverClick, overlay: true }, this.renderCalendar())))) : null));
535
532
  };
536
533
  DateRangePicker.defaultProps = {
537
534
  placeholder: 'DateRange.placeholder',
@@ -6,8 +6,8 @@
6
6
  "/src/components/DateRangePicker.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "/**\n * @file DateRangePicker\n * @description 自定义日期范围时间选择器组件\n * @author fex\n */\n\nimport React from 'react';\nimport moment from 'moment';\nimport {findDOMNode} from 'react-dom';\nimport cx from 'classnames';\nimport {Icon} from './icons';\nimport Overlay from './Overlay';\nimport {ShortCuts, ShortCutDateRange} from './DatePicker';\nimport Calendar from './calendar/Calendar';\nimport PopOver from './PopOver';\nimport PopUp from './PopUp';\nimport {ClassNamesFn, themeable, ThemeProps} from '../theme';\nimport {PlainObject} from '../types';\nimport {isMobile, noop, ucFirst} from '../utils/helper';\nimport {LocaleProps, localeable} from '../locale';\nimport CalendarMobile from './CalendarMobile';\n\nexport interface DateRangePickerProps extends ThemeProps, LocaleProps {\n className?: string;\n popoverClassName?: string;\n placeholder?: string;\n theme?: any;\n format: string;\n utc?: boolean;\n inputFormat?: string;\n ranges?: string | Array<ShortCuts>;\n clearable?: boolean;\n minDate?: moment.Moment;\n maxDate?: moment.Moment;\n minDuration?: moment.Duration;\n maxDuration?: moment.Duration;\n joinValues: boolean;\n delimiter: string;\n value?: any;\n onChange: (value: any) => void;\n data?: any;\n disabled?: boolean;\n closeOnSelect?: boolean;\n overlayPlacement: string;\n timeFormat?: string;\n resetValue?: any;\n popOverContainer?: any;\n dateFormat?: string;\n embed?: boolean;\n viewMode?: 'days' | 'months' | 'years' | 'time' | 'quarters';\n borderMode?: 'full' | 'half' | 'none';\n useMobileUI?: boolean;\n}\n\nexport interface DateRangePickerState {\n isOpened: boolean;\n isFocused: boolean;\n startDate?: moment.Moment;\n endDate?: moment.Moment;\n}\n\nexport const availableRanges: {[propName: string]: any} = {\n 'today': {\n label: 'Date.today',\n startDate: (now: moment.Moment) => {\n return now.startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now;\n }\n },\n\n 'yesterday': {\n label: 'Date.yesterday',\n startDate: (now: moment.Moment) => {\n return now.add(-1, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n },\n\n '1dayago': {\n label: 'DateRange.1dayago',\n startDate: (now: moment.Moment) => {\n return now.add(-1, 'days');\n },\n endDate: (now: moment.Moment) => {\n return now;\n }\n },\n\n '7daysago': {\n label: 'DateRange.7daysago',\n startDate: (now: moment.Moment) => {\n return now.add(-7, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n },\n\n '30daysago': {\n label: 'DateRange.30daysago',\n startDate: (now: moment.Moment) => {\n return now.add(-30, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n },\n\n '90daysago': {\n label: 'DateRange.90daysago',\n startDate: (now: moment.Moment) => {\n return now.add(-90, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n },\n\n 'prevweek': {\n label: 'DateRange.lastWeek',\n startDate: (now: moment.Moment) => {\n return now.startOf('week').add(-1, 'weeks');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('week').add(-1, 'days').endOf('day');\n }\n },\n\n 'thisweek': {\n label: 'DateRange.thisWeek',\n startDate: (now: moment.Moment) => {\n return now.startOf('week');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('week');\n }\n },\n\n 'thismonth': {\n label: 'DateRange.thisMonth',\n startDate: (now: moment.Moment) => {\n return now.startOf('month');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('month');\n }\n },\n\n 'thisquarter': {\n label: 'DateRange.thisQuarter',\n startDate: (now: moment.Moment) => {\n return now.startOf('quarter');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('quarter');\n }\n },\n\n 'prevmonth': {\n label: 'DateRange.lastMonth',\n startDate: (now: moment.Moment) => {\n return now.startOf('month').add(-1, 'month');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('month').add(-1, 'day').endOf('day');\n }\n },\n\n 'prevquarter': {\n label: 'DateRange.lastQuarter',\n startDate: (now: moment.Moment) => {\n return now.startOf('quarter').add(-1, 'quarter');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('quarter').add(-1, 'day').endOf('day');\n }\n },\n\n 'thisyear': {\n label: 'DateRange.thisYear',\n startDate: (now: moment.Moment) => {\n return now.startOf('year');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('year');\n }\n },\n\n 'lastYear': {\n label: 'DateRange.lastYear',\n startDate: (now: moment.Moment) => {\n return now.startOf('year').add(-1, 'year');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('year').add(-1, 'year').endOf('day');\n }\n }\n};\n\nexport class DateRangePicker extends React.Component<\n DateRangePickerProps,\n DateRangePickerState\n> {\n static defaultProps = {\n placeholder: 'DateRange.placeholder',\n format: 'X',\n inputFormat: 'YYYY-MM-DD',\n joinValues: true,\n clearable: true,\n delimiter: ',',\n ranges: 'yesterday,7daysago,prevweek,thismonth,prevmonth,prevquarter',\n resetValue: '',\n closeOnSelect: true,\n overlayPlacement: 'auto'\n };\n\n innerDom: any;\n popover: any;\n input?: HTMLInputElement;\n\n static formatValue(\n newValue: any,\n format: string,\n joinValues: boolean,\n delimiter: string,\n utc = false\n ) {\n newValue = [\n (utc ? moment.utc(newValue.startDate) : newValue.startDate).format(\n format\n ),\n (utc ? moment.utc(newValue.endDate) : newValue.endDate).format(format)\n ];\n\n if (joinValues) {\n newValue = newValue.join(delimiter);\n }\n\n return newValue;\n }\n\n static unFormatValue(\n value: any,\n format: string,\n joinValues: boolean,\n delimiter: string\n ) {\n if (!value) {\n return {\n startDate: undefined,\n endDate: undefined\n };\n }\n\n if (joinValues && typeof value === 'string') {\n value = value.split(delimiter);\n }\n\n return {\n startDate: value[0] ? moment(value[0], format) : undefined,\n endDate: value[1] ? moment(value[1], format) : undefined\n };\n }\n\n dom: React.RefObject<HTMLDivElement>;\n nextMonth = moment().add(1, 'months');\n\n constructor(props: DateRangePickerProps) {\n super(props);\n\n this.open = this.open.bind(this);\n this.close = this.close.bind(this);\n this.handleStartChange = this.handleStartChange.bind(this);\n this.handleEndChange = this.handleEndChange.bind(this);\n this.handleFocus = this.handleFocus.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n this.checkStartIsValidDate = this.checkStartIsValidDate.bind(this);\n this.checkEndIsValidDate = this.checkEndIsValidDate.bind(this);\n this.confirm = this.confirm.bind(this);\n this.clearValue = this.clearValue.bind(this);\n this.dom = React.createRef();\n this.handleClick = this.handleClick.bind(this);\n this.handleKeyPress = this.handleKeyPress.bind(this);\n this.handlePopOverClick = this.handlePopOverClick.bind(this);\n this.renderDay = this.renderDay.bind(this);\n this.renderQuarter = this.renderQuarter.bind(this);\n this.handleMobileChange = this.handleMobileChange.bind(this);\n const {format, joinValues, delimiter, value} = this.props;\n\n this.state = {\n isOpened: false,\n isFocused: false,\n ...DateRangePicker.unFormatValue(value, format, joinValues, delimiter)\n };\n }\n\n componentDidUpdate(prevProps: DateRangePickerProps) {\n const props = this.props;\n const {value, format, joinValues, delimiter} = props;\n\n if (prevProps.value !== value) {\n this.setState({\n ...DateRangePicker.unFormatValue(value, format, joinValues, delimiter)\n });\n }\n }\n\n focus() {\n if (!this.dom.current || this.props.disabled) {\n return;\n }\n\n this.dom.current.focus();\n }\n\n blur() {\n if (!this.dom.current || this.props.disabled) {\n return;\n }\n\n this.dom.current.blur();\n }\n\n handleFocus() {\n this.setState({\n isFocused: true\n });\n }\n\n handleBlur() {\n this.setState({\n isFocused: false\n });\n }\n\n open() {\n if (this.props.disabled) {\n return;\n }\n\n this.setState({\n isOpened: true\n });\n }\n\n close() {\n this.setState(\n {\n isOpened: false\n },\n this.blur\n );\n }\n\n handleClick() {\n this.state.isOpened ? this.close() : this.open();\n }\n\n handlePopOverClick(e: React.MouseEvent<any>) {\n e.stopPropagation();\n e.preventDefault();\n }\n\n handleKeyPress(e: React.KeyboardEvent) {\n if (e.key === ' ') {\n this.handleClick();\n e.preventDefault();\n }\n }\n\n confirm() {\n if (!this.state.startDate || !this.state.endDate) {\n return;\n } else if (this.state.startDate.isAfter(this.state.endDate)) {\n return;\n }\n\n this.props.onChange(\n DateRangePicker.formatValue(\n {\n startDate: this.state.startDate,\n endDate: this.state.endDate\n },\n this.props.format,\n this.props.joinValues,\n this.props.delimiter,\n this.props.utc\n )\n );\n this.close();\n }\n\n filterDate(\n date: moment.Moment,\n originValue?: moment.Moment,\n timeFormat?: string,\n type: 'start' | 'end' = 'start'\n ): moment.Moment {\n let value = date.clone();\n\n // 没有初始值\n if (!originValue) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('day');\n } else if (typeof timeFormat === 'string' && /ss/.test(timeFormat)) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('second');\n } else if (typeof timeFormat === 'string' && /mm/.test(timeFormat)) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('minute');\n } else if (typeof timeFormat === 'string' && /HH/i.test(timeFormat)) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('hour');\n } else if (typeof timeFormat === 'string' && /Q/i.test(timeFormat)) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('quarter');\n } else {\n value = value[type === 'start' ? 'startOf' : 'endOf']('day');\n }\n\n return value;\n }\n\n handleStartChange(newValue: moment.Moment) {\n const {embed, timeFormat, minDuration, maxDuration, minDate} = this.props;\n const {startDate, endDate} = this.state;\n\n if (\n startDate &&\n !endDate &&\n newValue.isSameOrAfter(startDate) &&\n (!minDuration || newValue.isAfter(startDate.clone().add(minDuration))) &&\n (!maxDuration || newValue.isBefore(startDate.clone().add(maxDuration)))\n ) {\n return this.setState(\n {\n endDate: this.filterDate(newValue, endDate, timeFormat, 'end')\n },\n () => {\n embed && this.confirm();\n }\n );\n }\n\n if (minDate && newValue && newValue.isBefore(minDate, 'second')) {\n newValue = minDate;\n }\n\n this.setState(\n {\n startDate: this.filterDate(\n newValue,\n startDate || minDate,\n timeFormat,\n 'start'\n )\n },\n () => {\n embed && this.confirm();\n }\n );\n }\n\n handleEndChange(newValue: moment.Moment) {\n const {embed, timeFormat, minDuration, maxDuration, maxDate} = this.props;\n const {startDate, endDate} = this.state;\n\n if (\n endDate &&\n !startDate &&\n newValue.isSameOrBefore(endDate) &&\n (!minDuration ||\n newValue.isBefore(endDate.clone().subtract(minDuration))) &&\n (!maxDuration || newValue.isAfter(endDate.clone().subtract(maxDuration)))\n ) {\n return this.setState(\n {\n startDate: this.filterDate(newValue, startDate, timeFormat, 'start')\n },\n () => {\n embed && this.confirm();\n }\n );\n }\n\n if (maxDate && newValue && newValue.isAfter(maxDate, 'second')) {\n newValue = maxDate;\n }\n\n this.setState(\n {\n endDate: this.filterDate(\n newValue,\n endDate || maxDate,\n timeFormat,\n 'end'\n )\n },\n () => {\n embed && this.confirm();\n }\n );\n }\n\n handleMobileChange(data: any, callback?: () => void) {\n this.setState(\n {\n startDate: data.startDate,\n endDate: data.endDate\n },\n callback\n );\n }\n\n selectRannge(range: PlainObject) {\n const {closeOnSelect, minDate, maxDate} = this.props;\n const now = moment();\n this.setState(\n {\n startDate:\n minDate && minDate.isValid()\n ? moment.max(range.startDate(now.clone()), minDate)\n : range.startDate(now.clone()),\n endDate:\n maxDate && maxDate.isValid()\n ? moment.min(maxDate, range.endDate(now.clone()))\n : range.endDate(now.clone())\n },\n closeOnSelect ? this.confirm : noop\n );\n }\n\n renderRanges(ranges: string | Array<ShortCuts> | undefined) {\n if (!ranges) {\n return null;\n }\n const {classPrefix: ns} = this.props;\n let rangeArr: Array<string | ShortCuts>;\n if (typeof ranges === 'string') {\n rangeArr = ranges.split(',');\n } else {\n rangeArr = ranges;\n }\n const __ = this.props.translate;\n\n return (\n <ul className={`${ns}DateRangePicker-rangers`}>\n {rangeArr.map(item => {\n if (!item) {\n return null;\n }\n let range: PlainObject = {};\n if (typeof item === 'string') {\n range = availableRanges[item];\n range.key = item;\n } else if (\n (item as ShortCutDateRange).startDate &&\n (item as ShortCutDateRange).endDate\n ) {\n range = {\n ...item,\n startDate: () => (item as ShortCutDateRange).startDate,\n endDate: () => (item as ShortCutDateRange).endDate\n };\n }\n return (\n <li\n className={`${ns}DateRangePicker-ranger`}\n onClick={() => this.selectRannge(range)}\n key={range.key || range.label}\n >\n <a>{__(range.label)}</a>\n </li>\n );\n })}\n </ul>\n );\n }\n\n clearValue(e: React.MouseEvent<any>) {\n e.preventDefault();\n e.stopPropagation();\n const {resetValue, onChange} = this.props;\n\n onChange(resetValue);\n }\n\n checkStartIsValidDate(currentDate: moment.Moment) {\n let {endDate, startDate} = this.state;\n let {minDate, maxDate, minDuration, maxDuration, viewMode} = this.props;\n const precision = viewMode === 'time' ? 'hours' : viewMode || 'day';\n\n maxDate =\n maxDate && endDate\n ? maxDate.isBefore(endDate)\n ? maxDate\n : endDate\n : maxDate || endDate;\n\n if (minDate && currentDate.isBefore(minDate, precision)) {\n return false;\n } else if (maxDate && currentDate.isAfter(maxDate, precision)) {\n return false;\n } else if (\n // 如果配置了 minDuration 那么 EndDate - minDuration 之后的天数也不能选\n endDate &&\n minDuration &&\n currentDate.isAfter(endDate.clone().subtract(minDuration))\n ) {\n return false;\n } else if (\n endDate &&\n maxDuration &&\n currentDate.isBefore(endDate.clone().subtract(maxDuration))\n ) {\n return false;\n }\n\n return true;\n }\n\n checkEndIsValidDate(currentDate: moment.Moment) {\n let {startDate} = this.state;\n let {minDate, maxDate, minDuration, maxDuration, viewMode} = this.props;\n const precision = viewMode === 'time' ? 'hours' : viewMode || 'day';\n\n minDate =\n minDate && startDate\n ? minDate.isAfter(startDate)\n ? minDate\n : startDate\n : minDate || startDate;\n\n if (minDate && currentDate.isBefore(minDate, precision)) {\n return false;\n } else if (maxDate && currentDate.isAfter(maxDate, precision)) {\n return false;\n } else if (\n startDate &&\n minDuration &&\n currentDate.isBefore(startDate.clone().add(minDuration))\n ) {\n return false;\n } else if (\n startDate &&\n maxDuration &&\n currentDate.isAfter(startDate.clone().add(maxDuration))\n ) {\n return false;\n }\n\n return true;\n }\n\n renderDay(props: any, currentDate: moment.Moment) {\n let {startDate, endDate} = this.state;\n\n if (\n startDate &&\n endDate &&\n currentDate.isBetween(startDate, endDate, 'day', '[]')\n ) {\n props.className += ' rdtBetween';\n }\n\n return <td {...props}>{currentDate.date()}</td>;\n }\n\n renderQuarter(props: any, quarter: number, year: number) {\n const currentDate = moment().year(year).quarter(quarter);\n const {startDate, endDate} = this.state;\n\n if (\n startDate &&\n endDate &&\n currentDate.isBetween(startDate, endDate, 'quarter', '[]')\n ) {\n props.className += ' rdtBetween';\n }\n\n return (\n <td {...props}>\n <span>Q{quarter}</span>\n </td>\n );\n }\n\n renderCalendar() {\n const {\n classPrefix: ns,\n classnames: cx,\n dateFormat,\n timeFormat,\n inputFormat,\n ranges,\n locale,\n embed,\n viewMode = 'days'\n } = this.props;\n const __ = this.props.translate;\n\n const {startDate, endDate} = this.state;\n return (\n <div className={`${ns}DateRangePicker-wrap`}>\n {this.renderRanges(ranges)}\n\n <Calendar\n className={`${ns}DateRangePicker-start`}\n value={startDate}\n onChange={this.handleStartChange}\n requiredConfirm={false}\n dateFormat={dateFormat}\n inputFormat={inputFormat}\n timeFormat={timeFormat}\n isValidDate={this.checkStartIsValidDate}\n viewMode={viewMode}\n input={false}\n onClose={this.close}\n renderDay={this.renderDay}\n renderQuarter={this.renderQuarter}\n locale={locale}\n />\n\n <Calendar\n className={`${ns}DateRangePicker-end`}\n value={endDate}\n onChange={this.handleEndChange}\n requiredConfirm={false}\n dateFormat={dateFormat}\n inputFormat={inputFormat}\n timeFormat={timeFormat}\n viewDate={this.nextMonth}\n isEndDate\n isValidDate={this.checkEndIsValidDate}\n viewMode={viewMode}\n input={false}\n onClose={this.close}\n renderDay={this.renderDay}\n renderQuarter={this.renderQuarter}\n locale={locale}\n />\n\n {embed ? null : (\n <div key=\"button\" className={`${ns}DateRangePicker-actions`}>\n <a className={cx('Button', 'Button--default')} onClick={this.close}>\n {__('cancel')}\n </a>\n <a\n className={cx('Button', 'Button--primary', 'm-l-sm', {\n 'is-disabled': !this.state.startDate || !this.state.endDate\n })}\n onClick={this.confirm}\n >\n {__('confirm')}\n </a>\n </div>\n )}\n </div>\n );\n }\n\n render() {\n const {\n className,\n popoverClassName,\n classPrefix: ns,\n value,\n placeholder,\n popOverContainer,\n inputFormat,\n format,\n joinValues,\n delimiter,\n clearable,\n disabled,\n embed,\n overlayPlacement,\n borderMode,\n useMobileUI,\n timeFormat,\n minDate,\n maxDate,\n minDuration,\n maxDuration,\n dateFormat,\n viewMode = 'days',\n ranges\n } = this.props;\n const useCalendarMobile = useMobileUI && isMobile() && ['days', 'months', 'quarters'].indexOf(viewMode) > -1;\n\n const {isOpened, isFocused, startDate, endDate} = this.state;\n\n const selectedDate = DateRangePicker.unFormatValue(\n value,\n format,\n joinValues,\n delimiter\n );\n const startViewValue = selectedDate.startDate\n ? selectedDate.startDate.format(inputFormat)\n : '';\n const endViewValue = selectedDate.endDate\n ? selectedDate.endDate.format(inputFormat)\n : '';\n const arr = [];\n startViewValue && arr.push(startViewValue);\n endViewValue && arr.push(endViewValue);\n const __ = this.props.translate;\n\n const calendarMobile = <CalendarMobile\n timeFormat={timeFormat}\n inputFormat={inputFormat}\n startDate={startDate}\n endDate={endDate}\n minDate={minDate}\n maxDate={maxDate}\n minDuration={minDuration}\n maxDuration={maxDuration}\n dateFormat={dateFormat}\n embed={embed}\n viewMode={viewMode}\n close={this.close}\n confirm={this.confirm}\n onChange={this.handleMobileChange}\n footerExtra={this.renderRanges(ranges)}\n showViewMode={viewMode === 'quarters' || viewMode === 'months' ? 'years' : 'months'}\n />;\n\n if (embed) {\n return (\n <div\n className={cx(\n `${ns}DateRangeCalendar`,\n {\n 'is-disabled': disabled\n },\n className\n )}\n >\n {useCalendarMobile\n ? calendarMobile\n : this.renderCalendar()}\n </div>\n );\n }\n\n const CalendarMobileTitle = <div className={`${ns}CalendarMobile-title`}>{__('Calendar.datepicker')}</div>;\n\n return (\n <div\n tabIndex={0}\n onKeyPress={this.handleKeyPress}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n className={cx(\n `${ns}DateRangePicker`,\n {\n 'is-disabled': disabled,\n 'is-focused': isFocused,\n [`${ns}DateRangePicker--border${ucFirst(borderMode)}`]: borderMode\n },\n className\n )}\n ref={this.dom}\n onClick={this.handleClick}\n >\n {arr.length ? (\n <span className={`${ns}DateRangePicker-value`}>\n {arr.join(__('DateRange.valueConcat'))}\n </span>\n ) : (\n <span className={`${ns}DateRangePicker-placeholder`}>\n {__(placeholder)}\n </span>\n )}\n\n {clearable && !disabled && value ? (\n <a className={`${ns}DateRangePicker-clear`} onClick={this.clearValue}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n\n <a className={`${ns}DateRangePicker-toggler`}>\n <Icon icon=\"clock\" className=\"icon\" />\n </a>\n\n {isOpened ? (\n useMobileUI && isMobile() ? (\n <PopUp\n isShow={isOpened}\n className={cx(`${ns}CalendarMobile-pop`)}\n onHide={this.close}\n header={CalendarMobileTitle}\n >\n {useCalendarMobile\n ? calendarMobile\n : this.renderCalendar()}\n </PopUp>\n )\n : <Overlay\n target={() => this.dom.current}\n onHide={this.close}\n container={popOverContainer || (() => findDOMNode(this))}\n rootClose={false}\n placement={overlayPlacement}\n show\n >\n <PopOver\n classPrefix={ns}\n className={cx(`${ns}DateRangePicker-popover`, popoverClassName)}\n onHide={this.close}\n onClick={this.handlePopOverClick}\n overlay\n >\n {this.renderCalendar()}\n </PopOver>\n </Overlay>\n ) : null}\n </div>\n );\n }\n}\n\nexport default themeable(localeable(DateRangePicker));\n"
11
+ "/**\n * @file DateRangePicker\n * @description 自定义日期范围时间选择器组件\n * @author fex\n */\n\nimport React from 'react';\nimport moment from 'moment';\nimport {findDOMNode} from 'react-dom';\nimport cx from 'classnames';\nimport {Icon} from './icons';\nimport Overlay from './Overlay';\nimport {ShortCuts, ShortCutDateRange} from './DatePicker';\nimport Calendar from './calendar/Calendar';\nimport PopOver from './PopOver';\nimport PopUp from './PopUp';\nimport {ClassNamesFn, themeable, ThemeProps} from '../theme';\nimport {PlainObject} from '../types';\nimport {isMobile, noop, ucFirst} from '../utils/helper';\nimport {LocaleProps, localeable} from '../locale';\nimport CalendarMobile from './CalendarMobile';\n\nexport interface DateRangePickerProps extends ThemeProps, LocaleProps {\n className?: string;\n popoverClassName?: string;\n placeholder?: string;\n theme?: any;\n format: string;\n utc?: boolean;\n inputFormat?: string;\n ranges?: string | Array<ShortCuts>;\n clearable?: boolean;\n minDate?: moment.Moment;\n maxDate?: moment.Moment;\n minDuration?: moment.Duration;\n maxDuration?: moment.Duration;\n joinValues: boolean;\n delimiter: string;\n value?: any;\n onChange: (value: any) => void;\n data?: any;\n disabled?: boolean;\n closeOnSelect?: boolean;\n overlayPlacement: string;\n timeFormat?: string;\n resetValue?: any;\n popOverContainer?: any;\n dateFormat?: string;\n embed?: boolean;\n viewMode?: 'days' | 'months' | 'years' | 'time' | 'quarters';\n borderMode?: 'full' | 'half' | 'none';\n useMobileUI?: boolean;\n}\n\nexport interface DateRangePickerState {\n isOpened: boolean;\n isFocused: boolean;\n startDate?: moment.Moment;\n endDate?: moment.Moment;\n}\n\nexport const availableRanges: {[propName: string]: any} = {\n 'today': {\n label: 'Date.today',\n startDate: (now: moment.Moment) => {\n return now.startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now;\n }\n },\n\n 'yesterday': {\n label: 'Date.yesterday',\n startDate: (now: moment.Moment) => {\n return now.add(-1, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n },\n\n '1dayago': {\n label: 'DateRange.1dayago',\n startDate: (now: moment.Moment) => {\n return now.add(-1, 'days');\n },\n endDate: (now: moment.Moment) => {\n return now;\n }\n },\n\n '7daysago': {\n label: 'DateRange.7daysago',\n startDate: (now: moment.Moment) => {\n return now.add(-7, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n },\n\n '30daysago': {\n label: 'DateRange.30daysago',\n startDate: (now: moment.Moment) => {\n return now.add(-30, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n },\n\n '90daysago': {\n label: 'DateRange.90daysago',\n startDate: (now: moment.Moment) => {\n return now.add(-90, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n },\n\n 'prevweek': {\n label: 'DateRange.lastWeek',\n startDate: (now: moment.Moment) => {\n return now.startOf('week').add(-1, 'weeks');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('week').add(-1, 'days').endOf('day');\n }\n },\n\n 'thisweek': {\n label: 'DateRange.thisWeek',\n startDate: (now: moment.Moment) => {\n return now.startOf('week');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('week');\n }\n },\n\n 'thismonth': {\n label: 'DateRange.thisMonth',\n startDate: (now: moment.Moment) => {\n return now.startOf('month');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('month');\n }\n },\n\n 'thisquarter': {\n label: 'DateRange.thisQuarter',\n startDate: (now: moment.Moment) => {\n return now.startOf('quarter');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('quarter');\n }\n },\n\n 'prevmonth': {\n label: 'DateRange.lastMonth',\n startDate: (now: moment.Moment) => {\n return now.startOf('month').add(-1, 'month');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('month').add(-1, 'day').endOf('day');\n }\n },\n\n 'prevquarter': {\n label: 'DateRange.lastQuarter',\n startDate: (now: moment.Moment) => {\n return now.startOf('quarter').add(-1, 'quarter');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('quarter').add(-1, 'day').endOf('day');\n }\n },\n\n 'thisyear': {\n label: 'DateRange.thisYear',\n startDate: (now: moment.Moment) => {\n return now.startOf('year');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('year');\n }\n },\n\n 'lastYear': {\n label: 'DateRange.lastYear',\n startDate: (now: moment.Moment) => {\n return now.startOf('year').add(-1, 'year');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('year').add(-1, 'year').endOf('day');\n }\n }\n};\n\nexport class DateRangePicker extends React.Component<\n DateRangePickerProps,\n DateRangePickerState\n> {\n static defaultProps = {\n placeholder: 'DateRange.placeholder',\n format: 'X',\n inputFormat: 'YYYY-MM-DD',\n joinValues: true,\n clearable: true,\n delimiter: ',',\n ranges: 'yesterday,7daysago,prevweek,thismonth,prevmonth,prevquarter',\n resetValue: '',\n closeOnSelect: true,\n overlayPlacement: 'auto'\n };\n\n innerDom: any;\n popover: any;\n input?: HTMLInputElement;\n\n static formatValue(\n newValue: any,\n format: string,\n joinValues: boolean,\n delimiter: string,\n utc = false\n ) {\n newValue = [\n (utc ? moment.utc(newValue.startDate) : newValue.startDate).format(\n format\n ),\n (utc ? moment.utc(newValue.endDate) : newValue.endDate).format(format)\n ];\n\n if (joinValues) {\n newValue = newValue.join(delimiter);\n }\n\n return newValue;\n }\n\n static unFormatValue(\n value: any,\n format: string,\n joinValues: boolean,\n delimiter: string\n ) {\n if (!value) {\n return {\n startDate: undefined,\n endDate: undefined\n };\n }\n\n if (joinValues && typeof value === 'string') {\n value = value.split(delimiter);\n }\n\n return {\n startDate: value[0] ? moment(value[0], format) : undefined,\n endDate: value[1] ? moment(value[1], format) : undefined\n };\n }\n\n dom: React.RefObject<HTMLDivElement>;\n nextMonth = moment().add(1, 'months');\n\n constructor(props: DateRangePickerProps) {\n super(props);\n\n this.open = this.open.bind(this);\n this.close = this.close.bind(this);\n this.handleStartChange = this.handleStartChange.bind(this);\n this.handleEndChange = this.handleEndChange.bind(this);\n this.handleFocus = this.handleFocus.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n this.checkStartIsValidDate = this.checkStartIsValidDate.bind(this);\n this.checkEndIsValidDate = this.checkEndIsValidDate.bind(this);\n this.confirm = this.confirm.bind(this);\n this.clearValue = this.clearValue.bind(this);\n this.dom = React.createRef();\n this.handleClick = this.handleClick.bind(this);\n this.handleKeyPress = this.handleKeyPress.bind(this);\n this.handlePopOverClick = this.handlePopOverClick.bind(this);\n this.renderDay = this.renderDay.bind(this);\n this.renderQuarter = this.renderQuarter.bind(this);\n this.handleMobileChange = this.handleMobileChange.bind(this);\n const {format, joinValues, delimiter, value} = this.props;\n\n this.state = {\n isOpened: false,\n isFocused: false,\n ...DateRangePicker.unFormatValue(value, format, joinValues, delimiter)\n };\n }\n\n componentDidUpdate(prevProps: DateRangePickerProps) {\n const props = this.props;\n const {value, format, joinValues, delimiter} = props;\n\n if (prevProps.value !== value) {\n this.setState({\n ...DateRangePicker.unFormatValue(value, format, joinValues, delimiter)\n });\n }\n }\n\n focus() {\n if (!this.dom.current || this.props.disabled) {\n return;\n }\n\n this.dom.current.focus();\n }\n\n blur() {\n if (!this.dom.current || this.props.disabled) {\n return;\n }\n\n this.dom.current.blur();\n }\n\n handleFocus() {\n this.setState({\n isFocused: true\n });\n }\n\n handleBlur() {\n this.setState({\n isFocused: false\n });\n }\n\n open() {\n if (this.props.disabled) {\n return;\n }\n\n this.setState({\n isOpened: true\n });\n }\n\n close() {\n this.setState(\n {\n isOpened: false\n },\n this.blur\n );\n }\n\n handleClick() {\n this.state.isOpened ? this.close() : this.open();\n }\n\n handlePopOverClick(e: React.MouseEvent<any>) {\n e.stopPropagation();\n e.preventDefault();\n }\n\n handleKeyPress(e: React.KeyboardEvent) {\n if (e.key === ' ') {\n this.handleClick();\n e.preventDefault();\n }\n }\n\n confirm() {\n if (!this.state.startDate || !this.state.endDate) {\n return;\n } else if (this.state.startDate.isAfter(this.state.endDate)) {\n return;\n }\n\n this.props.onChange(\n DateRangePicker.formatValue(\n {\n startDate: this.state.startDate,\n endDate: this.state.endDate\n },\n this.props.format,\n this.props.joinValues,\n this.props.delimiter,\n this.props.utc\n )\n );\n this.close();\n }\n\n filterDate(\n date: moment.Moment,\n originValue?: moment.Moment,\n timeFormat?: string,\n type: 'start' | 'end' = 'start'\n ): moment.Moment {\n let value = date.clone();\n\n // 没有初始值\n if (!originValue) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('day');\n } else if (typeof timeFormat === 'string' && /ss/.test(timeFormat)) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('second');\n } else if (typeof timeFormat === 'string' && /mm/.test(timeFormat)) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('minute');\n } else if (typeof timeFormat === 'string' && /HH/i.test(timeFormat)) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('hour');\n } else if (typeof timeFormat === 'string' && /Q/i.test(timeFormat)) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('quarter');\n } else {\n value = value[type === 'start' ? 'startOf' : 'endOf']('day');\n }\n\n return value;\n }\n\n handleStartChange(newValue: moment.Moment) {\n const {embed, timeFormat, minDuration, maxDuration, minDate} = this.props;\n const {startDate, endDate} = this.state;\n\n if (\n startDate &&\n !endDate &&\n newValue.isSameOrAfter(startDate) &&\n (!minDuration || newValue.isAfter(startDate.clone().add(minDuration))) &&\n (!maxDuration || newValue.isBefore(startDate.clone().add(maxDuration)))\n ) {\n return this.setState(\n {\n endDate: this.filterDate(newValue, endDate, timeFormat, 'end')\n },\n () => {\n embed && this.confirm();\n }\n );\n }\n\n if (minDate && newValue && newValue.isBefore(minDate, 'second')) {\n newValue = minDate;\n }\n\n this.setState(\n {\n startDate: this.filterDate(\n newValue,\n startDate || minDate,\n timeFormat,\n 'start'\n )\n },\n () => {\n embed && this.confirm();\n }\n );\n }\n\n handleEndChange(newValue: moment.Moment) {\n const {embed, timeFormat, minDuration, maxDuration, maxDate} = this.props;\n const {startDate, endDate} = this.state;\n\n if (\n endDate &&\n !startDate &&\n newValue.isSameOrBefore(endDate) &&\n (!minDuration ||\n newValue.isBefore(endDate.clone().subtract(minDuration))) &&\n (!maxDuration || newValue.isAfter(endDate.clone().subtract(maxDuration)))\n ) {\n return this.setState(\n {\n startDate: this.filterDate(newValue, startDate, timeFormat, 'start')\n },\n () => {\n embed && this.confirm();\n }\n );\n }\n\n if (maxDate && newValue && newValue.isAfter(maxDate, 'second')) {\n newValue = maxDate;\n }\n\n this.setState(\n {\n endDate: this.filterDate(\n newValue,\n endDate || maxDate,\n timeFormat,\n 'end'\n )\n },\n () => {\n embed && this.confirm();\n }\n );\n }\n\n handleMobileChange(data: any, callback?: () => void) {\n this.setState(\n {\n startDate: data.startDate,\n endDate: data.endDate\n },\n callback\n );\n }\n\n selectRannge(range: PlainObject) {\n const {closeOnSelect, minDate, maxDate} = this.props;\n const now = moment();\n this.setState(\n {\n startDate:\n minDate && minDate.isValid()\n ? moment.max(range.startDate(now.clone()), minDate)\n : range.startDate(now.clone()),\n endDate:\n maxDate && maxDate.isValid()\n ? moment.min(maxDate, range.endDate(now.clone()))\n : range.endDate(now.clone())\n },\n closeOnSelect ? this.confirm : noop\n );\n }\n\n renderRanges(ranges: string | Array<ShortCuts> | undefined) {\n if (!ranges) {\n return null;\n }\n const {classPrefix: ns} = this.props;\n let rangeArr: Array<string | ShortCuts>;\n if (typeof ranges === 'string') {\n rangeArr = ranges.split(',');\n } else {\n rangeArr = ranges;\n }\n const __ = this.props.translate;\n\n return (\n <ul className={`${ns}DateRangePicker-rangers`}>\n {rangeArr.map(item => {\n if (!item) {\n return null;\n }\n let range: PlainObject = {};\n if (typeof item === 'string') {\n range = availableRanges[item];\n range.key = item;\n } else if (\n (item as ShortCutDateRange).startDate &&\n (item as ShortCutDateRange).endDate\n ) {\n range = {\n ...item,\n startDate: () => (item as ShortCutDateRange).startDate,\n endDate: () => (item as ShortCutDateRange).endDate\n };\n }\n return (\n <li\n className={`${ns}DateRangePicker-ranger`}\n onClick={() => this.selectRannge(range)}\n key={range.key || range.label}\n >\n <a>{__(range.label)}</a>\n </li>\n );\n })}\n </ul>\n );\n }\n\n clearValue(e: React.MouseEvent<any>) {\n e.preventDefault();\n e.stopPropagation();\n const {resetValue, onChange} = this.props;\n\n onChange(resetValue);\n }\n\n checkStartIsValidDate(currentDate: moment.Moment) {\n let {endDate, startDate} = this.state;\n let {minDate, maxDate, minDuration, maxDuration, viewMode} = this.props;\n const precision = viewMode === 'time' ? 'hours' : viewMode || 'day';\n\n maxDate =\n maxDate && endDate\n ? maxDate.isBefore(endDate)\n ? maxDate\n : endDate\n : maxDate || endDate;\n\n if (minDate && currentDate.isBefore(minDate, precision)) {\n return false;\n } else if (maxDate && currentDate.isAfter(maxDate, precision)) {\n return false;\n } else if (\n // 如果配置了 minDuration 那么 EndDate - minDuration 之后的天数也不能选\n endDate &&\n minDuration &&\n currentDate.isAfter(endDate.clone().subtract(minDuration))\n ) {\n return false;\n } else if (\n endDate &&\n maxDuration &&\n currentDate.isBefore(endDate.clone().subtract(maxDuration))\n ) {\n return false;\n }\n\n return true;\n }\n\n checkEndIsValidDate(currentDate: moment.Moment) {\n let {startDate} = this.state;\n let {minDate, maxDate, minDuration, maxDuration, viewMode} = this.props;\n const precision = viewMode === 'time' ? 'hours' : viewMode || 'day';\n\n minDate =\n minDate && startDate\n ? minDate.isAfter(startDate)\n ? minDate\n : startDate\n : minDate || startDate;\n\n if (minDate && currentDate.isBefore(minDate, precision)) {\n return false;\n } else if (maxDate && currentDate.isAfter(maxDate, precision)) {\n return false;\n } else if (\n startDate &&\n minDuration &&\n currentDate.isBefore(startDate.clone().add(minDuration))\n ) {\n return false;\n } else if (\n startDate &&\n maxDuration &&\n currentDate.isAfter(startDate.clone().add(maxDuration))\n ) {\n return false;\n }\n\n return true;\n }\n\n renderDay(props: any, currentDate: moment.Moment) {\n let {startDate, endDate} = this.state;\n\n if (\n startDate &&\n endDate &&\n currentDate.isBetween(startDate, endDate, 'day', '[]')\n ) {\n props.className += ' rdtBetween';\n }\n\n return <td {...props}>{currentDate.date()}</td>;\n }\n\n renderQuarter(props: any, quarter: number, year: number) {\n const currentDate = moment().year(year).quarter(quarter);\n const {startDate, endDate} = this.state;\n\n if (\n startDate &&\n endDate &&\n currentDate.isBetween(startDate, endDate, 'quarter', '[]')\n ) {\n props.className += ' rdtBetween';\n }\n\n return (\n <td {...props}>\n <span>Q{quarter}</span>\n </td>\n );\n }\n\n renderCalendar() {\n const {\n classPrefix: ns,\n classnames: cx,\n dateFormat,\n timeFormat,\n inputFormat,\n ranges,\n locale,\n embed,\n viewMode = 'days'\n } = this.props;\n const __ = this.props.translate;\n\n const {startDate, endDate} = this.state;\n return (\n <div className={`${ns}DateRangePicker-wrap`}>\n {this.renderRanges(ranges)}\n\n <Calendar\n className={`${ns}DateRangePicker-start`}\n value={startDate}\n onChange={this.handleStartChange}\n requiredConfirm={false}\n dateFormat={dateFormat}\n inputFormat={inputFormat}\n timeFormat={timeFormat}\n isValidDate={this.checkStartIsValidDate}\n viewMode={viewMode}\n input={false}\n onClose={this.close}\n renderDay={this.renderDay}\n renderQuarter={this.renderQuarter}\n locale={locale}\n />\n\n <Calendar\n className={`${ns}DateRangePicker-end`}\n value={endDate}\n onChange={this.handleEndChange}\n requiredConfirm={false}\n dateFormat={dateFormat}\n inputFormat={inputFormat}\n timeFormat={timeFormat}\n viewDate={this.nextMonth}\n isEndDate\n isValidDate={this.checkEndIsValidDate}\n viewMode={viewMode}\n input={false}\n onClose={this.close}\n renderDay={this.renderDay}\n renderQuarter={this.renderQuarter}\n locale={locale}\n />\n\n {embed ? null : (\n <div key=\"button\" className={`${ns}DateRangePicker-actions`}>\n <a className={cx('Button', 'Button--default')} onClick={this.close}>\n {__('cancel')}\n </a>\n <a\n className={cx('Button', 'Button--primary', 'm-l-sm', {\n 'is-disabled': !this.state.startDate || !this.state.endDate\n })}\n onClick={this.confirm}\n >\n {__('confirm')}\n </a>\n </div>\n )}\n </div>\n );\n }\n\n render() {\n const {\n className,\n popoverClassName,\n classPrefix: ns,\n value,\n placeholder,\n popOverContainer,\n inputFormat,\n format,\n joinValues,\n delimiter,\n clearable,\n disabled,\n embed,\n overlayPlacement,\n borderMode,\n useMobileUI,\n timeFormat,\n minDate,\n maxDate,\n minDuration,\n maxDuration,\n dateFormat,\n viewMode = 'days',\n ranges\n } = this.props;\n const useCalendarMobile =\n useMobileUI &&\n isMobile() &&\n ['days', 'months', 'quarters'].indexOf(viewMode) > -1;\n\n const {isOpened, isFocused, startDate, endDate} = this.state;\n\n const selectedDate = DateRangePicker.unFormatValue(\n value,\n format,\n joinValues,\n delimiter\n );\n const startViewValue = selectedDate.startDate\n ? selectedDate.startDate.format(inputFormat)\n : '';\n const endViewValue = selectedDate.endDate\n ? selectedDate.endDate.format(inputFormat)\n : '';\n const arr = [];\n startViewValue && arr.push(startViewValue);\n endViewValue && arr.push(endViewValue);\n const __ = this.props.translate;\n\n const calendarMobile = (\n <CalendarMobile\n timeFormat={timeFormat}\n inputFormat={inputFormat}\n startDate={startDate}\n endDate={endDate}\n minDate={minDate}\n maxDate={maxDate}\n minDuration={minDuration}\n maxDuration={maxDuration}\n dateFormat={dateFormat}\n embed={embed}\n viewMode={viewMode}\n close={this.close}\n confirm={this.confirm}\n onChange={this.handleMobileChange}\n footerExtra={this.renderRanges(ranges)}\n showViewMode={\n viewMode === 'quarters' || viewMode === 'months' ? 'years' : 'months'\n }\n />\n );\n\n if (embed) {\n return (\n <div\n className={cx(\n `${ns}DateRangeCalendar`,\n {\n 'is-disabled': disabled\n },\n className\n )}\n >\n {useCalendarMobile ? calendarMobile : this.renderCalendar()}\n </div>\n );\n }\n\n const CalendarMobileTitle = (\n <div className={`${ns}CalendarMobile-title`}>\n {__('Calendar.datepicker')}\n </div>\n );\n\n return (\n <div\n tabIndex={0}\n onKeyPress={this.handleKeyPress}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n className={cx(\n `${ns}DateRangePicker`,\n {\n 'is-disabled': disabled,\n 'is-focused': isFocused,\n [`${ns}DateRangePicker--border${ucFirst(borderMode)}`]: borderMode\n },\n className\n )}\n ref={this.dom}\n onClick={this.handleClick}\n >\n {arr.length ? (\n <span className={`${ns}DateRangePicker-value`}>\n {arr.join(__('DateRange.valueConcat'))}\n </span>\n ) : (\n <span className={`${ns}DateRangePicker-placeholder`}>\n {__(placeholder)}\n </span>\n )}\n\n {clearable && !disabled && value ? (\n <a className={`${ns}DateRangePicker-clear`} onClick={this.clearValue}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n\n <a className={`${ns}DateRangePicker-toggler`}>\n <Icon icon=\"clock\" className=\"icon\" />\n </a>\n\n {isOpened ? (\n useMobileUI && isMobile() ? (\n <PopUp\n isShow={isOpened}\n container={popOverContainer}\n className={cx(`${ns}CalendarMobile-pop`)}\n onHide={this.close}\n header={CalendarMobileTitle}\n >\n {useCalendarMobile ? calendarMobile : this.renderCalendar()}\n </PopUp>\n ) : (\n <Overlay\n target={() => this.dom.current}\n onHide={this.close}\n container={popOverContainer || (() => findDOMNode(this))}\n rootClose={false}\n placement={overlayPlacement}\n show\n >\n <PopOver\n classPrefix={ns}\n className={cx(`${ns}DateRangePicker-popover`, popoverClassName)}\n onHide={this.close}\n onClick={this.handlePopOverClick}\n overlay\n >\n {this.renderCalendar()}\n </PopOver>\n </Overlay>\n )\n ) : null}\n </div>\n );\n }\n}\n\nexport default themeable(localeable(DateRangePicker));\n"
12
12
  ]
13
13
  }
@@ -325,15 +325,13 @@ var MonthRangePicker = /** @class */ (function (_super) {
325
325
  startViewValue && arr.push(startViewValue);
326
326
  endViewValue && arr.push(endViewValue);
327
327
  var __ = this.props.translate;
328
- var calendarMobile = react_1.default.createElement(CalendarMobile_1.default, { timeFormat: timeFormat, inputFormat: inputFormat, startDate: startDate, endDate: endDate, minDate: minDate, maxDate: maxDate, minDuration: minDuration, maxDuration: maxDuration, embed: embed, viewMode: "months", close: this.close, confirm: this.confirm, onChange: this.handleMobileChange, footerExtra: this.renderRanges(ranges), showViewMode: "years" });
328
+ var calendarMobile = (react_1.default.createElement(CalendarMobile_1.default, { timeFormat: timeFormat, inputFormat: inputFormat, startDate: startDate, endDate: endDate, minDate: minDate, maxDate: maxDate, minDuration: minDuration, maxDuration: maxDuration, embed: embed, viewMode: "months", close: this.close, confirm: this.confirm, onChange: this.handleMobileChange, footerExtra: this.renderRanges(ranges), showViewMode: "years" }));
329
329
  if (embed) {
330
330
  return (react_1.default.createElement("div", { className: (0, classnames_1.default)(ns + "DateRangeCalendar", {
331
331
  'is-disabled': disabled
332
- }, className) }, mobileUI
333
- ? calendarMobile
334
- : this.renderCalendar()));
332
+ }, className) }, mobileUI ? calendarMobile : this.renderCalendar()));
335
333
  }
336
- var CalendarMobileTitle = react_1.default.createElement("div", { className: ns + "CalendarMobile-title" }, __('Calendar.datepicker'));
334
+ var CalendarMobileTitle = (react_1.default.createElement("div", { className: ns + "CalendarMobile-title" }, __('Calendar.datepicker')));
337
335
  return (react_1.default.createElement("div", { tabIndex: 0, onKeyPress: this.handleKeyPress, onFocus: this.handleFocus, onBlur: this.handleBlur, className: (0, classnames_1.default)(ns + "DateRangePicker", {
338
336
  'is-disabled': disabled,
339
337
  'is-focused': isFocused
@@ -343,9 +341,8 @@ var MonthRangePicker = /** @class */ (function (_super) {
343
341
  react_1.default.createElement(icons_1.Icon, { icon: "close", className: "icon" }))) : null,
344
342
  react_1.default.createElement("a", { className: ns + "DateRangePicker-toggler" },
345
343
  react_1.default.createElement(icons_1.Icon, { icon: "clock", className: "icon" })),
346
- isOpened ? (mobileUI ? (react_1.default.createElement(PopUp_1.default, { isShow: isOpened, className: (0, classnames_1.default)(ns + "CalendarMobile-pop"), onHide: this.close, header: CalendarMobileTitle }, calendarMobile))
347
- : react_1.default.createElement(Overlay_1.default, { target: function () { return _this.dom.current; }, onHide: this.close, container: popOverContainer || (function () { return (0, react_dom_1.findDOMNode)(_this); }), rootClose: false, placement: overlayPlacement, show: true },
348
- react_1.default.createElement(PopOver_1.default, { classPrefix: ns, className: (0, classnames_1.default)(ns + "DateRangePicker-popover", popoverClassName), onHide: this.close, onClick: this.handlePopOverClick, overlay: true }, this.renderCalendar()))) : null));
344
+ isOpened ? (mobileUI ? (react_1.default.createElement(PopUp_1.default, { isShow: isOpened, container: popOverContainer, className: (0, classnames_1.default)(ns + "CalendarMobile-pop"), onHide: this.close, header: CalendarMobileTitle }, calendarMobile)) : (react_1.default.createElement(Overlay_1.default, { target: function () { return _this.dom.current; }, onHide: this.close, container: popOverContainer || (function () { return (0, react_dom_1.findDOMNode)(_this); }), rootClose: false, placement: overlayPlacement, show: true },
345
+ react_1.default.createElement(PopOver_1.default, { classPrefix: ns, className: (0, classnames_1.default)(ns + "DateRangePicker-popover", popoverClassName), onHide: this.close, onClick: this.handlePopOverClick, overlay: true }, this.renderCalendar())))) : null));
349
346
  };
350
347
  MonthRangePicker.defaultProps = {
351
348
  placeholder: 'MonthRange.placeholder',