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
@@ -11,6 +11,7 @@ var ResultBox_1 = (0, tslib_1.__importDefault)(require("./ResultBox"));
11
11
  var icons_1 = require("./icons");
12
12
  var InputBox_1 = (0, tslib_1.__importDefault)(require("./InputBox"));
13
13
  var PopOverContainer_1 = (0, tslib_1.__importDefault)(require("./PopOverContainer"));
14
+ var helper_1 = require("../utils/helper");
14
15
  var TransferDropDown = /** @class */ (function (_super) {
15
16
  (0, tslib_1.__extends)(TransferDropDown, _super);
16
17
  function TransferDropDown() {
@@ -18,11 +19,14 @@ var TransferDropDown = /** @class */ (function (_super) {
18
19
  }
19
20
  TransferDropDown.prototype.render = function () {
20
21
  var _this = this;
21
- var _a = this.props, cx = _a.classnames, value = _a.value, __ = _a.translate, disabled = _a.disabled, className = _a.className, onChange = _a.onChange, onSearch = _a.onSearch, multiple = _a.multiple, borderMode = _a.borderMode;
22
+ var _a = this.props, cx = _a.classnames, value = _a.value, __ = _a.translate, disabled = _a.disabled, className = _a.className, onChange = _a.onChange, onSearch = _a.onSearch, multiple = _a.multiple, borderMode = _a.borderMode, useMobileUI = _a.useMobileUI;
22
23
  var _b = this.state, inputValue = _b.inputValue, searchResult = _b.searchResult;
23
- return (react_1.default.createElement(PopOverContainer_1.default, { popOverClassName: cx('TransferDropDown-popover'), popOverRender: function (_a) {
24
+ var mobileUI = useMobileUI && (0, helper_1.isMobile)();
25
+ return (react_1.default.createElement(PopOverContainer_1.default, { useMobileUI: useMobileUI, popOverClassName: cx('TransferDropDown-popover'), popOverRender: function (_a) {
24
26
  var onClose = _a.onClose;
25
- return (react_1.default.createElement("div", { className: cx('TransferDropDown-content') },
27
+ return (react_1.default.createElement("div", { className: cx('TransferDropDown-content', {
28
+ 'is-mobile': mobileUI
29
+ }) },
26
30
  onSearch ? (react_1.default.createElement("div", { className: cx('Transfer-search') },
27
31
  react_1.default.createElement(InputBox_1.default, { value: inputValue, onChange: _this.handleSearch, placeholder: __('Transfer.searchKeyword'), clearable: false, onKeyDown: _this.handleSearchKeyDown }, searchResult !== null ? (react_1.default.createElement("a", { onClick: _this.handleSeachCancel },
28
32
  react_1.default.createElement(icons_1.Icon, { icon: "close", className: "icon" }))) : (react_1.default.createElement(icons_1.Icon, { icon: "search", className: "icon" }))))) : null,
@@ -41,9 +45,8 @@ var TransferDropDown = /** @class */ (function (_super) {
41
45
  }, multiple: multiple }))));
42
46
  } }, function (_a) {
43
47
  var onClick = _a.onClick, isOpened = _a.isOpened, ref = _a.ref;
44
- return (react_1.default.createElement(ResultBox_1.default, { className: cx('TransferDropDown', className, isOpened ? 'is-active' : ''), borderMode: borderMode, allowInput: false, result: multiple ? value : (value === null || value === void 0 ? void 0 : value[0]) ? value === null || value === void 0 ? void 0 : value[0] : null, onResultChange: onChange, onResultClick: onClick, placeholder: __('Select.placeholder'), disabled: disabled, ref: ref },
45
- react_1.default.createElement("span", { className: cx('TransferDropDown-icon') },
46
- react_1.default.createElement(icons_1.Icon, { icon: "caret", className: "icon" }))));
48
+ return (react_1.default.createElement(ResultBox_1.default, { className: cx('TransferDropDown', className, isOpened ? 'is-active' : ''), borderMode: borderMode, allowInput: false, result: multiple ? value : (value === null || value === void 0 ? void 0 : value[0]) ? value === null || value === void 0 ? void 0 : value[0] : null, onResultChange: onChange, onResultClick: onClick, placeholder: __('Select.placeholder'), disabled: disabled, ref: ref, useMobileUI: useMobileUI }, !mobileUI ? (react_1.default.createElement("span", { className: cx('TransferDropDown-icon') },
49
+ react_1.default.createElement(icons_1.Icon, { icon: "caret", className: "icon" }))) : (react_1.default.createElement(react_1.default.Fragment, null))));
47
50
  }));
48
51
  };
49
52
  return TransferDropDown;
@@ -6,8 +6,8 @@
6
6
  "/src/components/TransferDropDown.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import {localeable} from '../locale';\nimport {themeable} from '../theme';\nimport {Transfer, TransferProps} from './Transfer';\nimport {uncontrollable} from 'uncontrollable';\nimport React from 'react';\nimport ResultBox from './ResultBox';\nimport {Icon} from './icons';\nimport InputBox from './InputBox';\nimport PopOverContainer from './PopOverContainer';\n\nexport interface TransferDropDownProps extends TransferProps {\n // 新的属性?\n multiple?: boolean;\n borderMode?: 'full' | 'half' | 'none';\n}\n\nexport class TransferDropDown extends Transfer<TransferDropDownProps> {\n render() {\n const {\n classnames: cx,\n value,\n translate: __,\n disabled,\n className,\n onChange,\n onSearch,\n multiple,\n borderMode\n } = this.props;\n const {inputValue, searchResult} = this.state;\n\n return (\n <PopOverContainer\n popOverClassName={cx('TransferDropDown-popover')}\n popOverRender={({onClose}) => (\n <div className={cx('TransferDropDown-content')}>\n {onSearch ? (\n <div className={cx('Transfer-search')}>\n <InputBox\n value={inputValue}\n onChange={this.handleSearch}\n placeholder={__('Transfer.searchKeyword')}\n clearable={false}\n onKeyDown={this.handleSearchKeyDown}\n >\n {searchResult !== null ? (\n <a onClick={this.handleSeachCancel}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : (\n <Icon icon=\"search\" className=\"icon\" />\n )}\n </InputBox>\n </div>\n ) : null}\n {searchResult !== null\n ? this.renderSearchResult({\n ...this.props,\n value,\n onChange: multiple\n ? onChange\n : (value: any) => {\n onClose();\n onChange?.(value);\n },\n multiple\n })\n : this.renderOptions({\n ...this.props,\n value,\n onChange: multiple\n ? onChange\n : (value: any) => {\n onClose();\n onChange?.(value);\n },\n multiple\n })}\n </div>\n )}\n >\n {({onClick, isOpened, ref}) => (\n <ResultBox\n className={cx(\n 'TransferDropDown',\n className,\n isOpened ? 'is-active' : ''\n )}\n borderMode={borderMode}\n allowInput={false}\n result={multiple ? value : value?.[0] ? value?.[0] : null}\n onResultChange={onChange}\n onResultClick={onClick}\n placeholder={__('Select.placeholder')}\n disabled={disabled}\n ref={ref}\n >\n <span className={cx('TransferDropDown-icon')}>\n <Icon icon=\"caret\" className=\"icon\" />\n </span>\n </ResultBox>\n )}\n </PopOverContainer>\n );\n }\n}\n\nexport default themeable(\n localeable(\n uncontrollable(TransferDropDown, {\n value: 'onChange'\n })\n )\n);\n"
11
+ "import {localeable} from '../locale';\nimport {themeable} from '../theme';\nimport {Transfer, TransferProps} from './Transfer';\nimport {uncontrollable} from 'uncontrollable';\nimport React from 'react';\nimport ResultBox from './ResultBox';\nimport {Icon} from './icons';\nimport InputBox from './InputBox';\nimport PopOverContainer from './PopOverContainer';\nimport {isMobile} from '../utils/helper';\n\nexport interface TransferDropDownProps extends TransferProps {\n // 新的属性?\n multiple?: boolean;\n borderMode?: 'full' | 'half' | 'none';\n useMobileUI?: boolean;\n}\n\nexport class TransferDropDown extends Transfer<TransferDropDownProps> {\n render() {\n const {\n classnames: cx,\n value,\n translate: __,\n disabled,\n className,\n onChange,\n onSearch,\n multiple,\n borderMode,\n useMobileUI\n } = this.props;\n const {inputValue, searchResult} = this.state;\n\n const mobileUI = useMobileUI && isMobile();\n return (\n <PopOverContainer\n useMobileUI={useMobileUI}\n popOverClassName={cx('TransferDropDown-popover')}\n popOverRender={({onClose}) => (\n <div\n className={cx('TransferDropDown-content', {\n 'is-mobile': mobileUI\n })}\n >\n {onSearch ? (\n <div className={cx('Transfer-search')}>\n <InputBox\n value={inputValue}\n onChange={this.handleSearch}\n placeholder={__('Transfer.searchKeyword')}\n clearable={false}\n onKeyDown={this.handleSearchKeyDown}\n >\n {searchResult !== null ? (\n <a onClick={this.handleSeachCancel}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : (\n <Icon icon=\"search\" className=\"icon\" />\n )}\n </InputBox>\n </div>\n ) : null}\n {searchResult !== null\n ? this.renderSearchResult({\n ...this.props,\n value,\n onChange: multiple\n ? onChange\n : (value: any) => {\n onClose();\n onChange?.(value);\n },\n multiple\n })\n : this.renderOptions({\n ...this.props,\n value,\n onChange: multiple\n ? onChange\n : (value: any) => {\n onClose();\n onChange?.(value);\n },\n multiple\n })}\n </div>\n )}\n >\n {({onClick, isOpened, ref}) => (\n <ResultBox\n className={cx(\n 'TransferDropDown',\n className,\n isOpened ? 'is-active' : ''\n )}\n borderMode={borderMode}\n allowInput={false}\n result={multiple ? value : value?.[0] ? value?.[0] : null}\n onResultChange={onChange}\n onResultClick={onClick}\n placeholder={__('Select.placeholder')}\n disabled={disabled}\n ref={ref}\n useMobileUI={useMobileUI}\n >\n {!mobileUI ? (\n <span className={cx('TransferDropDown-icon')}>\n <Icon icon=\"caret\" className=\"icon\" />\n </span>\n ) : (\n <></>\n )}\n </ResultBox>\n )}\n </PopOverContainer>\n );\n }\n}\n\nexport default themeable(\n localeable(\n uncontrollable(TransferDropDown, {\n value: 'onChange'\n })\n )\n);\n"
12
12
  ]
13
13
  }
@@ -4,6 +4,19 @@
4
4
  import ReactDatePicker from 'react-datetime';
5
5
  import React from 'react';
6
6
  import moment from 'moment';
7
+ export declare type DateType = 'year' | 'month' | 'date' | 'hours' | 'minutes' | 'seconds';
8
+ export interface BoundaryObject {
9
+ max: number;
10
+ min: number;
11
+ }
12
+ export interface DateBoundary {
13
+ year: BoundaryObject;
14
+ month: BoundaryObject;
15
+ date: BoundaryObject;
16
+ hours: BoundaryObject;
17
+ minutes: BoundaryObject;
18
+ seconds: BoundaryObject;
19
+ }
7
20
  interface BaseDatePickerProps extends Omit<ReactDatePicker.DatetimepickerProps, 'viewMode'> {
8
21
  viewMode?: 'years' | 'months' | 'days' | 'time' | 'quarters';
9
22
  inputFormat?: string;
@@ -26,6 +39,7 @@ interface BaseDatePickerProps extends Omit<ReactDatePicker.DatetimepickerProps,
26
39
  hideHeader?: boolean;
27
40
  updateOn?: string;
28
41
  useMobileUI?: boolean;
42
+ embed?: boolean;
29
43
  showToolbar?: boolean;
30
44
  }
31
45
  declare const _default: React.ComponentType<BaseDatePickerProps>;
@@ -15,6 +15,15 @@ var BaseDatePicker = /** @class */ (function (_super) {
15
15
  (0, tslib_1.__extends)(BaseDatePicker, _super);
16
16
  function BaseDatePicker(props) {
17
17
  var _this = _super.call(this, props) || this;
18
+ _this.timeCellLength = {
19
+ year: 4,
20
+ month: 2,
21
+ date: 2,
22
+ hours: 2,
23
+ minutes: 2,
24
+ seconds: 2,
25
+ milliseconds: 3
26
+ };
18
27
  _this.getUpdateOn = function (formats) {
19
28
  if (formats.date.match(/[lLD]/)) {
20
29
  return 'days';
@@ -52,7 +61,9 @@ var BaseDatePicker = /** @class */ (function (_super) {
52
61
  'hideHeader',
53
62
  'updateOn',
54
63
  'useMobileUI',
55
- 'showToolbar'
64
+ 'showToolbar',
65
+ 'embed',
66
+ 'onScheduleClick'
56
67
  ].forEach(function (key) { return (props[key] = _this.props[key]); });
57
68
  return props;
58
69
  };
@@ -137,11 +148,54 @@ var BaseDatePicker = /** @class */ (function (_super) {
137
148
  }
138
149
  that.props.onChange(date);
139
150
  };
151
+ _this.getDateBoundary = function (currentDate) {
152
+ var _a, _b;
153
+ var _c = currentDate.toObject(), years = _c.years, months = _c.months;
154
+ var maxDateObject = (_a = _this.props.maxDate) === null || _a === void 0 ? void 0 : _a.toObject();
155
+ var minDateObject = (_b = _this.props.minDate) === null || _b === void 0 ? void 0 : _b.toObject();
156
+ var yearBoundary = {
157
+ max: maxDateObject ? maxDateObject.years : years + 100,
158
+ min: minDateObject ? minDateObject.years : years - 100,
159
+ };
160
+ var monthBoundary = {
161
+ max: years === (maxDateObject === null || maxDateObject === void 0 ? void 0 : maxDateObject.years) ? maxDateObject.months : 11,
162
+ min: years === (minDateObject === null || minDateObject === void 0 ? void 0 : minDateObject.years) ? minDateObject.months : 0
163
+ };
164
+ var dateBoundary = {
165
+ max: years === (maxDateObject === null || maxDateObject === void 0 ? void 0 : maxDateObject.years) && months === (maxDateObject === null || maxDateObject === void 0 ? void 0 : maxDateObject.months) ? maxDateObject.date : currentDate.daysInMonth(),
166
+ min: years === (minDateObject === null || minDateObject === void 0 ? void 0 : minDateObject.years) && months === (minDateObject === null || minDateObject === void 0 ? void 0 : minDateObject.months) ? minDateObject.date : 1
167
+ };
168
+ return {
169
+ year: yearBoundary,
170
+ month: monthBoundary,
171
+ date: dateBoundary,
172
+ hours: { max: 23, min: 0 },
173
+ minutes: { max: 59, min: 0 },
174
+ seconds: { max: 59, min: 0 }
175
+ };
176
+ };
177
+ _this.timeCell = function (value, type) {
178
+ var str = value + '';
179
+ while (str.length < _this.timeCellLength[type])
180
+ str = '0' + str;
181
+ return str;
182
+ };
183
+ _this.getColumns = function (types, dateBoundary) {
184
+ var columns = [];
185
+ types.map(function (type) {
186
+ var options = (0, helper_1.getRange)(dateBoundary[type].min, dateBoundary[type].max, 1).map(function (item) {
187
+ return {
188
+ text: type === 'month' ? _this.timeCell(item + 1, type) : _this.timeCell(item, type),
189
+ value: item
190
+ };
191
+ });
192
+ columns.push({ options: options });
193
+ });
194
+ return columns;
195
+ };
140
196
  _this.onConfirm = function (value, types) {
141
- var currentDate = (_this.state.selectedDate ||
142
- _this.state.viewDate ||
143
- (0, moment_1.default)()).clone();
144
- var date = (0, helper_1.convertDateArrayToDate)(value, types, currentDate);
197
+ var currentDate = (_this.state.selectedDate || _this.state.viewDate || (0, moment_1.default)()).clone();
198
+ var date = (0, helper_1.convertArrayValueToMoment)(value, types, currentDate);
145
199
  if (!_this.props.value) {
146
200
  _this.setState({
147
201
  selectedDate: date,
@@ -178,6 +232,9 @@ var BaseDatePicker = /** @class */ (function (_super) {
178
232
  viewProps.updateOn = 'months';
179
233
  }
180
234
  viewProps.onConfirm = this.onConfirm;
235
+ viewProps.getDateBoundary = this.getDateBoundary;
236
+ viewProps.getColumns = this.getColumns;
237
+ viewProps.timeCell = this.timeCell;
181
238
  return (react_1.default.createElement("div", { className: (0, classnames_1.default)('rdt rdtStatic rdtOpen', this.props.className) },
182
239
  react_1.default.createElement("div", { key: "dt", className: "rdtPicker" },
183
240
  react_1.default.createElement(Component, { view: this.state.currentView, viewProps: viewProps }))));
@@ -6,8 +6,8 @@
6
6
  "/src/components/calendar/Calendar.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "/**\n * @file 基于 react-datetime 改造。\n */\nimport ReactDatePicker from 'react-datetime';\nimport React from 'react';\nimport CustomCalendarContainer from './CalendarContainer';\nimport cx from 'classnames';\nimport moment from 'moment';\nimport {themeable, ThemeOutterProps, ThemeProps} from '../../theme';\nimport {convertDateArrayToDate} from '../../utils/helper';\n\ninterface BaseDatePickerProps\n extends Omit<ReactDatePicker.DatetimepickerProps, 'viewMode'> {\n viewMode?: 'years' | 'months' | 'days' | 'time' | 'quarters';\n inputFormat?: string;\n onViewModeChange?: (type: string) => void;\n requiredConfirm?: boolean;\n onClose?: () => void;\n isEndDate?: boolean;\n minDate?: moment.Moment;\n maxDate?: moment.Moment;\n renderDay?: (\n props: any,\n currentDate: moment.Moment,\n selectedDate: moment.Moment\n ) => JSX.Element;\n renderQuarter?: (\n props: any,\n quartar: number,\n year?: number,\n date?: moment.Moment\n ) => JSX.Element;\n schedules?: Array<{\n startTime: Date;\n endTime: Date;\n content: string | React.ReactElement;\n color?: string;\n }>;\n largeMode?: boolean;\n onScheduleClick?: (scheduleData: any) => void;\n hideHeader?: boolean;\n updateOn?: string;\n useMobileUI?: boolean;\n showToolbar?: boolean;\n}\n\nclass BaseDatePicker extends ReactDatePicker {\n state: any;\n props: any;\n setState: (state: any) => void;\n getStateFromProps: any;\n\n constructor(props: any) {\n super(props);\n const state = this.getStateFromProps(this.props);\n\n if (state.open === undefined) {\n state.open = !this.props.input;\n }\n\n state.currentView = this.props.dateFormat\n ? this.props.viewMode || state.updateOn || 'days'\n : 'time';\n\n this.state = state;\n }\n\n static propTypes = {};\n\n getUpdateOn = (formats: any) => {\n if (formats.date.match(/[lLD]/)) {\n return 'days';\n } else if (formats.date.indexOf('M') !== -1) {\n return 'months';\n } else if (formats.date.indexOf('Q') !== -1) {\n return 'quarters';\n } else if (formats.date.indexOf('Y') !== -1) {\n return 'years';\n }\n\n return 'days';\n };\n\n getComponentProps = ((origin: Function) => {\n return () => {\n const props = origin.call(this);\n props.setDateTimeState = this.setState.bind(this);\n\n [\n 'inputFormat',\n 'onChange',\n 'onClose',\n 'requiredConfirm',\n 'classPrefix',\n 'prevIcon',\n 'nextIcon',\n 'isEndDate',\n 'classnames',\n 'minDate',\n 'maxDate',\n 'schedules',\n 'largeMode',\n 'onScheduleClick',\n 'hideHeader',\n 'updateOn',\n 'useMobileUI',\n 'showToolbar'\n ].forEach(key => (props[key] = (this.props as any)[key]));\n\n return props;\n };\n })((this as any).getComponentProps);\n\n setDate = (type: 'month' | 'year' | 'quarters') => {\n // todo 没看懂这个是啥意思,好像没啥用\n const currentShould =\n this.props.viewMode === 'months' &&\n !/^mm$/i.test(this.props.inputFormat || '');\n const nextViews = {\n month: currentShould ? 'months' : 'days',\n year: currentShould ? 'months' : 'days',\n quarters: ''\n };\n\n if ((this.props.viewMode as any) === 'quarters') {\n nextViews.year = 'quarters';\n }\n\n return (e: any) => {\n this.setState({\n viewDate: this.state.viewDate\n .clone()\n [type](\n parseInt(e.target.closest('td').getAttribute('data-value'), 10)\n )\n .startOf(type),\n currentView: nextViews[type]\n });\n this.props.onViewModeChange?.(nextViews[type]);\n };\n };\n\n updateSelectedDate = (e: React.MouseEvent, close?: boolean) => {\n const that: any = this;\n let target = e.currentTarget,\n modifier = 0,\n viewDate = this.state.viewDate,\n currentDate = this.state.selectedDate || viewDate,\n date;\n\n if (target.className.indexOf('rdtDay') !== -1) {\n if (target.className.indexOf('rdtNew') !== -1) modifier = 1;\n else if (target.className.indexOf('rdtOld') !== -1) modifier = -1;\n\n date = viewDate\n .clone()\n .month(viewDate.month() + modifier)\n .date(parseInt(target.getAttribute('data-value')!, 10));\n } else if (target.className.indexOf('rdtMonth') !== -1) {\n date = viewDate\n .clone()\n .month(parseInt(target.getAttribute('data-value')!, 10))\n .date(currentDate.date());\n } else if (target.className.indexOf('rdtQuarter') !== -1) {\n date = viewDate\n .clone()\n .quarter(parseInt(target.getAttribute('data-value')!, 10))\n .startOf('quarter')\n .date(currentDate.date());\n } else if (target.className.indexOf('rdtYear') !== -1) {\n date = viewDate\n .clone()\n .month(currentDate.month())\n .date(currentDate.date())\n .year(parseInt(target.getAttribute('data-value')!, 10));\n }\n\n date\n .hours(currentDate.hours())\n .minutes(currentDate.minutes())\n .seconds(currentDate.seconds())\n .milliseconds(currentDate.milliseconds());\n\n if (!this.props.value) {\n var open = !(this.props.closeOnSelect && close);\n if (!open) {\n that.props.onBlur(date);\n }\n\n this.setState({\n selectedDate: date,\n viewDate: date.clone().startOf('month'),\n inputValue: date.format(this.state.inputFormat),\n open: open\n });\n } else {\n if (this.props.closeOnSelect && close) {\n that.closeCalendar();\n }\n }\n\n that.props.onChange(date);\n };\n\n onConfirm = (value: number[], types: string[]) => {\n const currentDate = (\n this.state.selectedDate ||\n this.state.viewDate ||\n moment()\n ).clone();\n\n const date = convertDateArrayToDate(value, types, currentDate);\n\n if (!this.props.value) {\n this.setState({\n selectedDate: date,\n inputValue: date!.format(this.state.inputFormat)\n });\n }\n this.props.onChange && this.props.onChange(date);\n this.props.onClose && this.props.onClose();\n };\n\n render() {\n const Component = CustomCalendarContainer as any;\n const viewProps = this.getComponentProps();\n\n if (this.props.viewMode === 'quarters') {\n [viewProps.updateOn, viewProps.renderQuarter] = [\n 'quarters',\n this.props.renderQuarter\n ];\n }\n else if (this.props.viewMode === 'years') {\n viewProps.updateOn = 'years';\n }\n else if (this.props.viewMode === 'months') {\n viewProps.updateOn = 'months';\n }\n\n viewProps.onConfirm = this.onConfirm;\n\n return (\n <div className={cx('rdt rdtStatic rdtOpen', this.props.className)}>\n <div key=\"dt\" className=\"rdtPicker\">\n <Component view={this.state.currentView} viewProps={viewProps} />\n </div>\n </div>\n );\n }\n}\n\nconst Calendar: any = themeable(BaseDatePicker as any);\nexport default Calendar as React.ComponentType<BaseDatePickerProps>;\n"
11
+ "/**\n * @file 基于 react-datetime 改造。\n */\nimport ReactDatePicker from 'react-datetime';\nimport React from 'react';\nimport CustomCalendarContainer from './CalendarContainer';\nimport cx from 'classnames';\nimport moment from 'moment';\nimport {themeable, ThemeOutterProps, ThemeProps} from '../../theme';\nimport {convertArrayValueToMoment, getRange} from \"../../utils/helper\";\nimport {PickerOption} from '../PickerColumn';\n\nexport type DateType = 'year' | 'month' | 'date' | 'hours' | 'minutes' | 'seconds';\nexport interface BoundaryObject {\n max: number;\n min: number;\n}\n\nexport interface DateBoundary {\n year: BoundaryObject;\n month: BoundaryObject;\n date: BoundaryObject;\n hours: BoundaryObject;\n minutes: BoundaryObject;\n seconds: BoundaryObject;\n}\n\ninterface BaseDatePickerProps\n extends Omit<ReactDatePicker.DatetimepickerProps, 'viewMode'> {\n viewMode?: 'years' | 'months' | 'days' | 'time' | 'quarters';\n inputFormat?: string;\n onViewModeChange?: (type: string) => void;\n requiredConfirm?: boolean;\n onClose?: () => void;\n isEndDate?: boolean;\n minDate?: moment.Moment;\n maxDate?: moment.Moment;\n renderDay?: (\n props: any,\n currentDate: moment.Moment,\n selectedDate: moment.Moment\n ) => JSX.Element;\n renderQuarter?: (\n props: any,\n quartar: number,\n year?: number,\n date?: moment.Moment\n ) => JSX.Element;\n schedules?: Array<{\n startTime: Date;\n endTime: Date;\n content: string | React.ReactElement;\n color?: string;\n }>;\n largeMode?: boolean;\n onScheduleClick?: (scheduleData: any) => void;\n hideHeader?: boolean;\n updateOn?: string;\n useMobileUI?: boolean;\n embed?: boolean;\n showToolbar?: boolean;\n}\n\nclass BaseDatePicker extends ReactDatePicker {\n state: any;\n props: any;\n setState: (state: any) => void;\n getStateFromProps: any;\n\n timeCellLength = {\n year: 4,\n month: 2,\n date: 2,\n hours: 2,\n minutes: 2,\n seconds: 2,\n milliseconds: 3\n };\n\n constructor(props: any) {\n super(props);\n const state = this.getStateFromProps(this.props);\n\n if (state.open === undefined) {\n state.open = !this.props.input;\n }\n\n state.currentView = this.props.dateFormat\n ? this.props.viewMode || state.updateOn || 'days'\n : 'time';\n\n this.state = state;\n }\n\n static propTypes = {};\n\n getUpdateOn = (formats: any) => {\n if (formats.date.match(/[lLD]/)) {\n return 'days';\n } else if (formats.date.indexOf('M') !== -1) {\n return 'months';\n } else if (formats.date.indexOf('Q') !== -1) {\n return 'quarters';\n } else if (formats.date.indexOf('Y') !== -1) {\n return 'years';\n }\n\n return 'days';\n };\n\n getComponentProps = ((origin: Function) => {\n return () => {\n const props = origin.call(this);\n props.setDateTimeState = this.setState.bind(this);\n\n [\n 'inputFormat',\n 'onChange',\n 'onClose',\n 'requiredConfirm',\n 'classPrefix',\n 'prevIcon',\n 'nextIcon',\n 'isEndDate',\n 'classnames',\n 'minDate',\n 'maxDate',\n 'schedules',\n 'largeMode',\n 'onScheduleClick',\n 'hideHeader',\n 'updateOn',\n 'useMobileUI',\n 'showToolbar',\n 'embed',\n 'onScheduleClick'\n ].forEach(key => (props[key] = (this.props as any)[key]));\n\n return props;\n };\n })((this as any).getComponentProps);\n\n setDate = (type: 'month' | 'year' | 'quarters') => {\n // todo 没看懂这个是啥意思,好像没啥用\n const currentShould =\n this.props.viewMode === 'months' &&\n !/^mm$/i.test(this.props.inputFormat || '');\n const nextViews = {\n month: currentShould ? 'months' : 'days',\n year: currentShould ? 'months' : 'days',\n quarters: ''\n };\n\n if ((this.props.viewMode as any) === 'quarters') {\n nextViews.year = 'quarters';\n }\n\n return (e: any) => {\n this.setState({\n viewDate: this.state.viewDate\n .clone()\n [type](\n parseInt(e.target.closest('td').getAttribute('data-value'), 10)\n )\n .startOf(type),\n currentView: nextViews[type]\n });\n this.props.onViewModeChange?.(nextViews[type]);\n };\n };\n\n updateSelectedDate = (e: React.MouseEvent, close?: boolean) => {\n const that: any = this;\n let target = e.currentTarget,\n modifier = 0,\n viewDate = this.state.viewDate,\n currentDate = this.state.selectedDate || viewDate,\n date;\n\n if (target.className.indexOf('rdtDay') !== -1) {\n if (target.className.indexOf('rdtNew') !== -1) modifier = 1;\n else if (target.className.indexOf('rdtOld') !== -1) modifier = -1;\n\n date = viewDate\n .clone()\n .month(viewDate.month() + modifier)\n .date(parseInt(target.getAttribute('data-value')!, 10));\n } else if (target.className.indexOf('rdtMonth') !== -1) {\n date = viewDate\n .clone()\n .month(parseInt(target.getAttribute('data-value')!, 10))\n .date(currentDate.date());\n } else if (target.className.indexOf('rdtQuarter') !== -1) {\n date = viewDate\n .clone()\n .quarter(parseInt(target.getAttribute('data-value')!, 10))\n .startOf('quarter')\n .date(currentDate.date());\n } else if (target.className.indexOf('rdtYear') !== -1) {\n date = viewDate\n .clone()\n .month(currentDate.month())\n .date(currentDate.date())\n .year(parseInt(target.getAttribute('data-value')!, 10));\n }\n\n date\n .hours(currentDate.hours())\n .minutes(currentDate.minutes())\n .seconds(currentDate.seconds())\n .milliseconds(currentDate.milliseconds());\n\n if (!this.props.value) {\n var open = !(this.props.closeOnSelect && close);\n if (!open) {\n that.props.onBlur(date);\n }\n\n this.setState({\n selectedDate: date,\n viewDate: date.clone().startOf('month'),\n inputValue: date.format(this.state.inputFormat),\n open: open\n });\n } else {\n if (this.props.closeOnSelect && close) {\n that.closeCalendar();\n }\n }\n\n that.props.onChange(date);\n };\n\n getDateBoundary = (currentDate: moment.Moment) => {\n const {years, months} = currentDate.toObject();\n const maxDateObject = this.props.maxDate?.toObject();\n const minDateObject = this.props.minDate?.toObject();\n\n const yearBoundary = {\n max: maxDateObject ? maxDateObject.years : years + 100,\n min: minDateObject ? minDateObject.years : years - 100,\n };\n const monthBoundary = {\n max: years === maxDateObject?.years ? maxDateObject.months : 11,\n min: years === minDateObject?.years ? minDateObject.months : 0\n };\n const dateBoundary = {\n max: years === maxDateObject?.years && months === maxDateObject?.months ? maxDateObject.date : currentDate.daysInMonth(),\n min: years === minDateObject?.years && months === minDateObject?.months ? minDateObject.date : 1\n }\n return {\n year: yearBoundary,\n month: monthBoundary,\n date: dateBoundary,\n hours: {max: 23, min: 0},\n minutes: {max: 59, min: 0},\n seconds: {max: 59, min: 0}\n };\n };\n\n timeCell = (value: number, type: DateType) => {\n\t\tlet str = value + '';\n\t\twhile (str.length < this.timeCellLength[type])\n\t\t\tstr = '0' + str;\n\t\treturn str;\n\t};\n\n getColumns = (types: DateType[], dateBoundary: DateBoundary) => {\n const columns: { options: PickerOption[] }[] = [];\n types.map((type: DateType) => {\n const options = getRange(dateBoundary[type].min, dateBoundary[type].max, 1).map(item => {\n\n return {\n text: type === 'month' ? this.timeCell(item+1, type) : this.timeCell(item, type),\n value: item\n };\n });\n columns.push({options})\n });\n return columns;\n };\n\n onConfirm = (value: number[], types: string[]) => {\n const currentDate = (this.state.selectedDate || this.state.viewDate || moment()).clone();\n const date = convertArrayValueToMoment(value, types, currentDate);\n\n if (!this.props.value) {\n this.setState({\n selectedDate: date,\n inputValue: date!.format(this.state.inputFormat)\n });\n }\n this.props.onChange && this.props.onChange(date);\n this.props.onClose && this.props.onClose();\n };\n\n \n render() {\n const Component = CustomCalendarContainer as any;\n const viewProps = this.getComponentProps();\n\n if (this.props.viewMode === 'quarters') {\n [viewProps.updateOn, viewProps.renderQuarter] = [\n 'quarters',\n this.props.renderQuarter\n ];\n }\n else if (this.props.viewMode === 'years') {\n viewProps.updateOn = 'years';\n }\n else if (this.props.viewMode === 'months') {\n viewProps.updateOn = 'months';\n }\n\n viewProps.onConfirm = this.onConfirm;\n viewProps.getDateBoundary = this.getDateBoundary;\n viewProps.getColumns = this.getColumns;\n viewProps.timeCell = this.timeCell;\n\n return (\n <div className={cx('rdt rdtStatic rdtOpen', this.props.className)}>\n <div key=\"dt\" className=\"rdtPicker\">\n <Component view={this.state.currentView} viewProps={viewProps} />\n </div>\n </div>\n );\n }\n}\n\nconst Calendar: any = themeable(BaseDatePicker as any);\nexport default Calendar as React.ComponentType<BaseDatePickerProps>;\n"
12
12
  ]
13
13
  }
@@ -4,6 +4,8 @@ import DaysView from 'react-datetime/src/DaysView';
4
4
  import React from 'react';
5
5
  import { LocaleProps } from '../../locale';
6
6
  import { ClassNamesFn } from '../../theme';
7
+ import { PickerOption } from '../PickerColumn';
8
+ import { DateType } from './Calendar';
7
9
  interface CustomDaysViewProps extends LocaleProps {
8
10
  classPrefix?: string;
9
11
  prevIcon?: string;
@@ -11,12 +13,16 @@ interface CustomDaysViewProps extends LocaleProps {
11
13
  viewDate: moment.Moment;
12
14
  selectedDate: moment.Moment;
13
15
  minDate: moment.Moment;
16
+ maxDate: moment.Moment;
17
+ useMobileUI: boolean;
18
+ embed: boolean;
14
19
  timeFormat: string;
15
20
  requiredConfirm?: boolean;
16
21
  isEndDate?: boolean;
17
22
  renderDay?: Function;
18
23
  onClose?: () => void;
19
24
  onChange: (value: moment.Moment) => void;
25
+ onConfirm?: (value: number[], types: DateType[]) => void;
20
26
  setDateTimeState: (state: any) => void;
21
27
  setTime: (type: string, amount: number) => void;
22
28
  subtractTime: (amount: number, type: string, toSelected?: moment.Moment) => () => void;
@@ -35,11 +41,22 @@ interface CustomDaysViewProps extends LocaleProps {
35
41
  largeMode?: boolean;
36
42
  onScheduleClick?: (scheduleData: any) => void;
37
43
  hideHeader?: boolean;
44
+ getColumns: (types: DateType[], dateBoundary: void) => any;
45
+ getDateBoundary: (currentDate: moment.Moment) => any;
38
46
  }
39
47
  export declare class CustomDaysView extends DaysView {
40
48
  props: CustomDaysViewProps;
49
+ state: {
50
+ columns: {
51
+ options: PickerOption[];
52
+ }[];
53
+ types: DateType[];
54
+ pickerValue: number[];
55
+ };
56
+ setState: (arg0: any) => () => any;
41
57
  getDaysOfWeek: (locale: any) => any;
42
58
  renderDays: () => JSX.Element;
59
+ constructor(props: any);
43
60
  updateSelectedDate: (event: React.MouseEvent<any>) => void;
44
61
  setTime: (type: 'hours' | 'minutes' | 'seconds' | 'milliseconds', value: number) => void;
45
62
  confirm: () => void;
@@ -51,6 +68,9 @@ export declare class CustomDaysView extends DaysView {
51
68
  }[];
52
69
  renderTimes: () => JSX.Element;
53
70
  renderFooter: () => JSX.Element | null;
71
+ onPickerConfirm: (value: number[]) => void;
72
+ onPickerChange: (value: number[], index: number) => void;
73
+ renderPicker: () => JSX.Element;
54
74
  render(): JSX.Element;
55
75
  }
56
76
  declare const _default: {
@@ -7,12 +7,14 @@ var moment_1 = (0, tslib_1.__importDefault)(require("moment"));
7
7
  var DaysView_1 = (0, tslib_1.__importDefault)(require("react-datetime/src/DaysView"));
8
8
  var react_1 = (0, tslib_1.__importDefault)(require("react"));
9
9
  var downshift_1 = (0, tslib_1.__importDefault)(require("downshift"));
10
- var locale_1 = require("../../locale");
11
10
  var find_1 = (0, tslib_1.__importDefault)(require("lodash/find"));
11
+ var locale_1 = require("../../locale");
12
+ var helper_1 = require("../../utils/helper");
13
+ var Picker_1 = (0, tslib_1.__importDefault)(require("../Picker"));
12
14
  var CustomDaysView = /** @class */ (function (_super) {
13
15
  (0, tslib_1.__extends)(CustomDaysView, _super);
14
- function CustomDaysView() {
15
- var _this = _super !== null && _super.apply(this, arguments) || this;
16
+ function CustomDaysView(props) {
17
+ var _this = _super.call(this, props) || this;
16
18
  _this.updateSelectedDate = function (event) {
17
19
  // need confirm
18
20
  if (_this.props.requiredConfirm) {
@@ -213,6 +215,48 @@ var CustomDaysView = /** @class */ (function (_super) {
213
215
  react_1.default.createElement("a", { className: cx('Button', 'Button--default'), onClick: _this.cancel }, __('cancel')),
214
216
  react_1.default.createElement("a", { className: cx('Button', 'Button--primary', 'm-l-sm'), onClick: _this.confirm }, __('confirm')))) : null))));
215
217
  };
218
+ _this.onPickerConfirm = function (value) {
219
+ _this.props.onConfirm && _this.props.onConfirm(value, _this.state.types);
220
+ };
221
+ _this.onPickerChange = function (value, index) {
222
+ var _a = _this.props, selectedDate = _a.selectedDate, viewDate = _a.viewDate;
223
+ // 变更年份、月份的时候,需要更新columns
224
+ if (index === 1 || index === 0) {
225
+ var currentDate = (selectedDate || viewDate || (0, moment_1.default)()).clone();
226
+ // 只需计算year 、month
227
+ var selectDate = (0, helper_1.convertArrayValueToMoment)(value, ['year', 'month'], currentDate);
228
+ var dateBoundary = _this.props.getDateBoundary(selectDate);
229
+ _this.setState({
230
+ columns: _this.props.getColumns(_this.state.types, dateBoundary),
231
+ pickerValue: value
232
+ });
233
+ }
234
+ };
235
+ _this.renderPicker = function () {
236
+ var __ = _this.props.translate;
237
+ var title = _this.state.types.length > 3 ? __('Date.titleTime') : __('Date.titleDate');
238
+ return (react_1.default.createElement(Picker_1.default, { translate: _this.props.translate, locale: _this.props.locale, title: title, columns: _this.state.columns, value: _this.state.pickerValue, onChange: _this.onPickerChange, onConfirm: _this.onPickerConfirm, onClose: _this.cancel }));
239
+ };
240
+ var selectedDate = props.selectedDate, viewDate = props.viewDate, timeFormat = props.timeFormat;
241
+ var currentDate = (selectedDate || viewDate || (0, moment_1.default)());
242
+ var types = ['year', 'month', 'date'];
243
+ timeFormat.split(':').forEach(function (format) {
244
+ var type = /h/i.test(format)
245
+ ? 'hours'
246
+ : /m/.test(format)
247
+ ? 'minutes'
248
+ : /s/.test(format)
249
+ ? 'seconds'
250
+ : '';
251
+ type && types.push(type);
252
+ });
253
+ var dateBoundary = _this.props.getDateBoundary(currentDate);
254
+ var columns = _this.props.getColumns(types, dateBoundary);
255
+ _this.state = {
256
+ columns: columns,
257
+ types: types,
258
+ pickerValue: currentDate.toArray()
259
+ };
216
260
  return _this;
217
261
  }
218
262
  CustomDaysView.prototype.computedTimeOptions = function (total) {
@@ -224,10 +268,13 @@ var CustomDaysView = /** @class */ (function (_super) {
224
268
  return times;
225
269
  };
226
270
  CustomDaysView.prototype.render = function () {
271
+ var _a = this.props, date = _a.viewDate, useMobileUI = _a.useMobileUI, embed = _a.embed;
227
272
  var footer = this.renderFooter();
228
- var date = this.props.viewDate;
229
273
  var locale = date.localeData();
230
274
  var __ = this.props.translate;
275
+ if ((0, helper_1.isMobile)() && useMobileUI && !embed) {
276
+ return (react_1.default.createElement("div", { className: "rdtYears" }, this.renderPicker()));
277
+ }
231
278
  var tableChildren = [
232
279
  this.props.hideHeader ? null : react_1.default.createElement("thead", { key: "th" },
233
280
  react_1.default.createElement("tr", null,
@@ -6,8 +6,8 @@
6
6
  "/src/components/calendar/DaysView.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import moment from 'moment';\n// @ts-ignore\nimport DaysView from 'react-datetime/src/DaysView';\nimport React from 'react';\nimport Downshift from 'downshift';\nimport {LocaleProps, localeable} from '../../locale';\nimport {ClassNamesFn} from '../../theme';\nimport find from 'lodash/find';\n\ninterface CustomDaysViewProps extends LocaleProps {\n classPrefix?: string;\n prevIcon?: string;\n nextIcon?: string;\n viewDate: moment.Moment;\n selectedDate: moment.Moment;\n minDate: moment.Moment;\n timeFormat: string;\n requiredConfirm?: boolean;\n isEndDate?: boolean;\n renderDay?: Function;\n onClose?: () => void;\n onChange: (value: moment.Moment) => void;\n setDateTimeState: (state: any) => void;\n setTime: (type: string, amount: number) => void;\n subtractTime: (\n amount: number,\n type: string,\n toSelected?: moment.Moment\n ) => () => void;\n addTime: (\n amount: number,\n type: string,\n toSelected?: moment.Moment\n ) => () => void;\n isValidDate?: (\n currentDate: moment.Moment,\n selected?: moment.Moment\n ) => boolean;\n showView: (view: string) => () => void;\n updateSelectedDate: (event: React.MouseEvent<any>, close?: boolean) => void;\n handleClickOutside: () => void;\n classnames: ClassNamesFn;\n schedules?: Array<{\n startTime: Date;\n endTime: Date;\n content: any;\n className?: string;\n }>;\n largeMode?: boolean;\n onScheduleClick?: (scheduleData: any) => void;\n hideHeader?: boolean;\n}\n\nexport class CustomDaysView extends DaysView {\n props: CustomDaysViewProps;\n getDaysOfWeek: (locale: any) => any;\n renderDays: () => JSX.Element;\n\n updateSelectedDate = (event: React.MouseEvent<any>) => {\n // need confirm\n if (this.props.requiredConfirm) {\n const viewDate = this.props.viewDate.clone();\n const currentDate = this.props.selectedDate || viewDate;\n\n const target = event.target as HTMLElement;\n let modifier = 0;\n\n if (~target.className.indexOf('rdtNew')) {\n modifier = 1;\n }\n if (~target.className.indexOf('rdtOld')) {\n modifier = -1;\n }\n\n viewDate\n .month(viewDate.month() + modifier)\n .date(parseInt(target.getAttribute('data-value') as string, 10))\n .hours(currentDate.hours())\n .minutes(currentDate.minutes())\n .seconds(currentDate.seconds())\n .milliseconds(currentDate.milliseconds());\n\n this.props.setDateTimeState({\n viewDate,\n selectedDate: viewDate.clone()\n });\n return;\n }\n\n this.props.updateSelectedDate(event, true);\n };\n\n setTime = (\n type: 'hours' | 'minutes' | 'seconds' | 'milliseconds',\n value: number\n ) => {\n const date = (this.props.selectedDate || this.props.viewDate).clone();\n date[type](value);\n\n this.props.setDateTimeState({\n viewDate: date.clone(),\n selectedDate: date.clone()\n });\n\n if (!this.props.requiredConfirm) {\n this.props.onChange(date);\n }\n };\n\n confirm = () => {\n let date = (this.props.selectedDate || this.props.viewDate).clone();\n\n // 如果 minDate 是可用的,且比当前日期晚,则用 minDate\n if (this.props.minDate?.isValid() && this.props.minDate?.isAfter(date)) {\n date = this.props.minDate.clone();\n }\n\n this.props.setDateTimeState({\n selectedDate: date\n });\n this.props.onChange(date);\n this.props.onClose && this.props.onClose();\n };\n\n cancel = () => {\n this.props.onClose && this.props.onClose();\n };\n\n renderDay = (props: any, currentDate: moment.Moment) => {\n if (this.props.schedules) {\n let schedule: any[] = [];\n this.props.schedules.forEach((item: any) => {\n if (\n currentDate.isSameOrAfter(\n moment(item.startTime).subtract(1, 'days')\n ) &&\n currentDate.isSameOrBefore(item.endTime)\n ) {\n schedule.push(item);\n }\n });\n if (schedule.length > 0) {\n const cx = this.props.classnames;\n const __ = this.props.translate;\n // 日程数据\n const scheduleData = {\n scheduleData: schedule.map((item: any) => {\n return {\n ...item,\n time:\n moment(item.startTime).format('YYYY-MM-DD HH:mm:ss') +\n ' - ' +\n moment(item.endTime).format('YYYY-MM-DD HH:mm:ss')\n };\n }),\n currentDate\n };\n\n // 放大模式\n if (this.props.largeMode) {\n let showSchedule: any[] = [];\n for (let i = 0; i < schedule.length; i++) {\n if (showSchedule.length > 3) {\n break;\n }\n if (moment(schedule[i].startTime).isSame(currentDate, 'day')) {\n showSchedule.push(schedule[i]);\n } else if (currentDate.weekday() === 0) {\n // 周一重新设置日程\n showSchedule.push({\n ...schedule[i],\n width: moment(schedule[i].endTime).date() - currentDate.date()\n });\n }\n }\n [0, 1, 2].forEach((i: number) => {\n const findSchedule = find(\n schedule,\n (item: any) => item.height === i\n );\n if (\n findSchedule &&\n findSchedule !== showSchedule[i] &&\n currentDate.weekday() !== 0\n ) {\n // 生成一个空白格占位\n showSchedule.splice(i, 0, {\n width: 1,\n className: 'bg-transparent',\n content: ''\n });\n } else {\n showSchedule[i] && (showSchedule[i].height = i);\n }\n });\n // 最多展示3个\n showSchedule = showSchedule.slice(0, 3);\n const scheduleDiv = showSchedule.map((item: any, index: number) => {\n const width =\n item.width ||\n Math.min(\n moment(item.endTime).diff(moment(item.startTime), 'days') + 1,\n 7 - moment(item.startTime).weekday()\n );\n return (\n <div\n key={props.key + 'content' + index}\n className={cx(\n 'ScheduleCalendar-large-schedule-content',\n item.className\n )}\n style={{width: width + '00%'}}\n onClick={() =>\n this.props.onScheduleClick &&\n this.props.onScheduleClick(scheduleData)\n }\n >\n <div className={cx('ScheduleCalendar-text-overflow')}>\n {item.content}\n </div>\n </div>\n );\n });\n return (\n <td {...props}>\n <div className={cx('ScheduleCalendar-large-day-wrap')}>\n <div className={cx('ScheduleCalendar-large-schedule-header')}>\n {currentDate.date()}\n </div>\n {scheduleDiv}\n {schedule.length > 3 && (\n <div className={cx('ScheduleCalendar-large-schedule-footer')}>\n {schedule.length - 3} {__('more')}\n </div>\n )}\n </div>\n </td>\n );\n }\n\n // 正常模式\n const ScheduleIcon = (\n <span\n className={cx('ScheduleCalendar-icon', schedule[0].className)}\n onClick={() =>\n this.props.onScheduleClick &&\n this.props.onScheduleClick(scheduleData)\n }\n ></span>\n );\n return (\n <td {...props}>\n {currentDate.date()}\n {ScheduleIcon}\n </td>\n );\n }\n }\n return <td {...props}>{currentDate.date()}</td>;\n };\n\n computedTimeOptions(total: number) {\n const times: {label: string; value: string}[] = [];\n\n for (let t = 0; t < total; t++) {\n const label = t < 10 ? `0${t}` : `${t}`;\n times.push({label, value: label});\n }\n\n return times;\n }\n\n renderTimes = () => {\n const {\n timeFormat,\n selectedDate,\n viewDate,\n isEndDate,\n classnames: cx\n } = this.props;\n\n const date = selectedDate || (isEndDate ? viewDate.endOf('day') : viewDate);\n const inputs: Array<React.ReactNode> = [];\n\n timeFormat.split(':').forEach((format, i) => {\n const type = /h/i.test(format)\n ? 'hours'\n : /m/.test(format)\n ? 'minutes'\n : /s/.test(format)\n ? 'seconds'\n : '';\n if (type) {\n const min = 0;\n const max = type === 'hours' ? 23 : 59;\n const hours = this.computedTimeOptions(24);\n const times = this.computedTimeOptions(60);\n const options = type === 'hours' ? hours : times;\n const formatMap = {\n hours: 'HH',\n minutes: 'mm',\n seconds: 'ss'\n };\n\n inputs.push(\n <Downshift\n key={i + 'input'}\n inputValue={date.format(formatMap[type])}\n >\n {({isOpen, getInputProps, openMenu, closeMenu}) => {\n const inputProps = getInputProps({\n onFocus: () => openMenu(),\n onChange: (e: any) =>\n this.setTime(\n type,\n Math.max(\n min,\n Math.min(\n parseInt(\n e.currentTarget.value.replace(/\\D/g, ''),\n 10\n ) || 0,\n max\n )\n )\n )\n });\n return (\n <div className={cx('CalendarInputWrapper')}>\n <input\n type=\"text\"\n value={date.format(formatMap[type])}\n className={cx('CalendarInput')}\n min={min}\n max={max}\n {...inputProps}\n />\n {isOpen ? (\n <div className={cx('CalendarInput-sugs')}>\n {options.map(option => {\n return (\n <div\n key={option.value}\n className={cx('CalendarInput-sugsItem', {\n 'is-highlight':\n option.value === date.format(formatMap[type])\n })}\n onClick={() => {\n this.setTime(type, parseInt(option.value, 10));\n closeMenu();\n }}\n >\n {option.value}\n </div>\n );\n })}\n </div>\n ) : null}\n </div>\n );\n }}\n </Downshift>\n );\n\n inputs.push(<span key={i + 'divider'}>:</span>);\n }\n });\n\n inputs.length && inputs.pop();\n\n return <div>{inputs}</div>;\n };\n\n renderFooter = () => {\n if (!this.props.timeFormat && !this.props.requiredConfirm) {\n return null;\n }\n\n const {translate: __, classnames: cx} = this.props;\n\n return (\n <tfoot key=\"tf\">\n <tr>\n <td colSpan={7}>\n {this.props.timeFormat ? this.renderTimes() : null}\n {this.props.requiredConfirm ? (\n <div key=\"button\" className=\"rdtActions\">\n <a\n className={cx('Button', 'Button--default')}\n onClick={this.cancel}\n >\n {__('cancel')}\n </a>\n <a\n className={cx('Button', 'Button--primary', 'm-l-sm')}\n onClick={this.confirm}\n >\n {__('confirm')}\n </a>\n </div>\n ) : null}\n </td>\n </tr>\n </tfoot>\n );\n };\n\n render() {\n const footer = this.renderFooter();\n const date = this.props.viewDate;\n const locale = date.localeData();\n const __ = this.props.translate;\n\n const tableChildren = [\n this.props.hideHeader ? null : <thead key=\"th\">\n <tr>\n <th colSpan={7}>\n <div className=\"rdtHeader\">\n <a\n className=\"rdtPrev\"\n onClick={this.props.subtractTime(1, 'years')}\n >\n &laquo;\n </a>\n <a\n className=\"rdtPrev\"\n onClick={this.props.subtractTime(1, 'months')}\n >\n &lsaquo;\n </a>\n\n <div className=\"rdtCenter\">\n <a className=\"rdtSwitch\" onClick={this.props.showView('years')}>\n {date.format(__('dateformat.year'))}\n </a>\n <a\n className=\"rdtSwitch\"\n onClick={this.props.showView('months')}\n >\n {date.format(__('MMM'))}\n </a>\n </div>\n\n <a className=\"rdtNext\" onClick={this.props.addTime(1, 'months')}>\n &rsaquo;\n </a>\n <a className=\"rdtNext\" onClick={this.props.addTime(1, 'years')}>\n &raquo;\n </a>\n </div>\n </th>\n </tr>\n <tr>\n {this.getDaysOfWeek(locale).map((day: number, index: number) => (\n <th key={day + index} className=\"dow\">\n {day}\n </th>\n ))}\n </tr>\n </thead>,\n\n <tbody key=\"tb\">{this.renderDays()}</tbody>\n ];\n\n footer && tableChildren.push(footer);\n\n return (\n <div className=\"rdtDays\">\n <table>{tableChildren}</table>\n </div>\n );\n }\n}\n\nexport default localeable(\n CustomDaysView as any as React.ComponentClass<CustomDaysViewProps>\n);\n"
11
+ "import moment from 'moment';\n// @ts-ignore\nimport DaysView from 'react-datetime/src/DaysView';\nimport React from 'react';\nimport Downshift from 'downshift';\nimport find from 'lodash/find';\nimport {LocaleProps, localeable} from '../../locale';\nimport {ClassNamesFn} from '../../theme';\nimport {isMobile, convertArrayValueToMoment} from \"../../utils/helper\";\nimport Picker from '../Picker';\nimport {PickerOption} from '../PickerColumn';\nimport {DateType} from './Calendar';\n\ninterface CustomDaysViewProps extends LocaleProps {\n classPrefix?: string;\n prevIcon?: string;\n nextIcon?: string;\n viewDate: moment.Moment;\n selectedDate: moment.Moment;\n minDate: moment.Moment;\n maxDate: moment.Moment;\n useMobileUI: boolean;\n embed: boolean;\n timeFormat: string;\n requiredConfirm?: boolean;\n isEndDate?: boolean;\n renderDay?: Function;\n onClose?: () => void;\n onChange: (value: moment.Moment) => void;\n onConfirm?: (value: number[], types: DateType[]) => void;\n setDateTimeState: (state: any) => void;\n setTime: (type: string, amount: number) => void;\n subtractTime: (\n amount: number,\n type: string,\n toSelected?: moment.Moment\n ) => () => void;\n addTime: (\n amount: number,\n type: string,\n toSelected?: moment.Moment\n ) => () => void;\n isValidDate?: (\n currentDate: moment.Moment,\n selected?: moment.Moment\n ) => boolean;\n showView: (view: string) => () => void;\n updateSelectedDate: (event: React.MouseEvent<any>, close?: boolean) => void;\n handleClickOutside: () => void;\n classnames: ClassNamesFn;\n schedules?: Array<{\n startTime: Date;\n endTime: Date;\n content: any;\n className?: string;\n }>;\n largeMode?: boolean;\n onScheduleClick?: (scheduleData: any) => void;\n hideHeader?: boolean;\n getColumns: (types: DateType[], dateBoundary: void) => any;\n getDateBoundary: (currentDate: moment.Moment) => any;\n}\n\nexport class CustomDaysView extends DaysView {\n props: CustomDaysViewProps;\n state: { columns: { options: PickerOption[] }[]; types: DateType[]; pickerValue: number[]};\n setState: (arg0: any) => () => any;\n getDaysOfWeek: (locale: any) => any;\n renderDays: () => JSX.Element;\n\n constructor(props: any) {\n super(props);\n\n const {selectedDate, viewDate, timeFormat} = props;\n const currentDate = (selectedDate || viewDate || moment());\n\n const types: DateType[] = ['year', 'month', 'date'];\n timeFormat.split(':').forEach((format: string) => {\n const type: DateType | '' = /h/i.test(format)\n ? 'hours'\n : /m/.test(format)\n ? 'minutes'\n : /s/.test(format)\n ? 'seconds'\n : '';\n type && types.push(type)\n });\n\n const dateBoundary = this.props.getDateBoundary(currentDate);\n const columns = this.props.getColumns(types, dateBoundary);\n this.state = {\n columns,\n types,\n pickerValue: currentDate.toArray()\n }\n }\n\n updateSelectedDate = (event: React.MouseEvent<any>) => {\n // need confirm\n if (this.props.requiredConfirm) {\n const viewDate = this.props.viewDate.clone();\n const currentDate = this.props.selectedDate || viewDate;\n\n const target = event.target as HTMLElement;\n let modifier = 0;\n\n if (~target.className.indexOf('rdtNew')) {\n modifier = 1;\n }\n if (~target.className.indexOf('rdtOld')) {\n modifier = -1;\n }\n\n viewDate\n .month(viewDate.month() + modifier)\n .date(parseInt(target.getAttribute('data-value') as string, 10))\n .hours(currentDate.hours())\n .minutes(currentDate.minutes())\n .seconds(currentDate.seconds())\n .milliseconds(currentDate.milliseconds());\n\n this.props.setDateTimeState({\n viewDate,\n selectedDate: viewDate.clone()\n });\n return;\n }\n\n this.props.updateSelectedDate(event, true);\n };\n\n setTime = (\n type: 'hours' | 'minutes' | 'seconds' | 'milliseconds',\n value: number\n ) => {\n const date = (this.props.selectedDate || this.props.viewDate).clone();\n date[type](value);\n\n this.props.setDateTimeState({\n viewDate: date.clone(),\n selectedDate: date.clone()\n });\n\n if (!this.props.requiredConfirm) {\n this.props.onChange(date);\n }\n };\n\n confirm = () => {\n let date = (this.props.selectedDate || this.props.viewDate).clone();\n\n // 如果 minDate 是可用的,且比当前日期晚,则用 minDate\n if (this.props.minDate?.isValid() && this.props.minDate?.isAfter(date)) {\n date = this.props.minDate.clone();\n }\n\n this.props.setDateTimeState({\n selectedDate: date\n });\n this.props.onChange(date);\n this.props.onClose && this.props.onClose();\n };\n\n cancel = () => {\n this.props.onClose && this.props.onClose();\n };\n\n renderDay = (props: any, currentDate: moment.Moment) => {\n if (this.props.schedules) {\n let schedule: any[] = [];\n this.props.schedules.forEach((item: any) => {\n if (\n currentDate.isSameOrAfter(\n moment(item.startTime).subtract(1, 'days')\n ) &&\n currentDate.isSameOrBefore(item.endTime)\n ) {\n schedule.push(item);\n }\n });\n if (schedule.length > 0) {\n const cx = this.props.classnames;\n const __ = this.props.translate;\n // 日程数据\n const scheduleData = {\n scheduleData: schedule.map((item: any) => {\n return {\n ...item,\n time:\n moment(item.startTime).format('YYYY-MM-DD HH:mm:ss') +\n ' - ' +\n moment(item.endTime).format('YYYY-MM-DD HH:mm:ss')\n };\n }),\n currentDate\n };\n\n // 放大模式\n if (this.props.largeMode) {\n let showSchedule: any[] = [];\n for (let i = 0; i < schedule.length; i++) {\n if (showSchedule.length > 3) {\n break;\n }\n if (moment(schedule[i].startTime).isSame(currentDate, 'day')) {\n showSchedule.push(schedule[i]);\n } else if (currentDate.weekday() === 0) {\n // 周一重新设置日程\n showSchedule.push({\n ...schedule[i],\n width: moment(schedule[i].endTime).date() - currentDate.date()\n });\n }\n }\n [0, 1, 2].forEach((i: number) => {\n const findSchedule = find(\n schedule,\n (item: any) => item.height === i\n );\n if (\n findSchedule &&\n findSchedule !== showSchedule[i] &&\n currentDate.weekday() !== 0\n ) {\n // 生成一个空白格占位\n showSchedule.splice(i, 0, {\n width: 1,\n className: 'bg-transparent',\n content: ''\n });\n } else {\n showSchedule[i] && (showSchedule[i].height = i);\n }\n });\n // 最多展示3个\n showSchedule = showSchedule.slice(0, 3);\n const scheduleDiv = showSchedule.map((item: any, index: number) => {\n const width =\n item.width ||\n Math.min(\n moment(item.endTime).diff(moment(item.startTime), 'days') + 1,\n 7 - moment(item.startTime).weekday()\n );\n return (\n <div\n key={props.key + 'content' + index}\n className={cx(\n 'ScheduleCalendar-large-schedule-content',\n item.className\n )}\n style={{width: width + '00%'}}\n onClick={() =>\n this.props.onScheduleClick &&\n this.props.onScheduleClick(scheduleData)\n }\n >\n <div className={cx('ScheduleCalendar-text-overflow')}>\n {item.content}\n </div>\n </div>\n );\n });\n return (\n <td {...props}>\n <div className={cx('ScheduleCalendar-large-day-wrap')}>\n <div className={cx('ScheduleCalendar-large-schedule-header')}>\n {currentDate.date()}\n </div>\n {scheduleDiv}\n {schedule.length > 3 && (\n <div className={cx('ScheduleCalendar-large-schedule-footer')}>\n {schedule.length - 3} {__('more')}\n </div>\n )}\n </div>\n </td>\n );\n }\n\n // 正常模式\n const ScheduleIcon = (\n <span\n className={cx('ScheduleCalendar-icon', schedule[0].className)}\n onClick={() =>\n this.props.onScheduleClick &&\n this.props.onScheduleClick(scheduleData)\n }\n ></span>\n );\n return (\n <td {...props}>\n {currentDate.date()}\n {ScheduleIcon}\n </td>\n );\n }\n }\n return <td {...props}>{currentDate.date()}</td>;\n };\n\n computedTimeOptions(total: number) {\n const times: {label: string; value: string}[] = [];\n\n for (let t = 0; t < total; t++) {\n const label = t < 10 ? `0${t}` : `${t}`;\n times.push({label, value: label});\n }\n\n return times;\n }\n\n renderTimes = () => {\n const {\n timeFormat,\n selectedDate,\n viewDate,\n isEndDate,\n classnames: cx\n } = this.props;\n\n const date = selectedDate || (isEndDate ? viewDate.endOf('day') : viewDate);\n const inputs: Array<React.ReactNode> = [];\n\n timeFormat.split(':').forEach((format, i) => {\n const type = /h/i.test(format)\n ? 'hours'\n : /m/.test(format)\n ? 'minutes'\n : /s/.test(format)\n ? 'seconds'\n : '';\n if (type) {\n const min = 0;\n const max = type === 'hours' ? 23 : 59;\n const hours = this.computedTimeOptions(24);\n const times = this.computedTimeOptions(60);\n const options = type === 'hours' ? hours : times;\n const formatMap = {\n hours: 'HH',\n minutes: 'mm',\n seconds: 'ss'\n };\n\n inputs.push(\n <Downshift\n key={i + 'input'}\n inputValue={date.format(formatMap[type])}\n >\n {({isOpen, getInputProps, openMenu, closeMenu}) => {\n const inputProps = getInputProps({\n onFocus: () => openMenu(),\n onChange: (e: any) =>\n this.setTime(\n type,\n Math.max(\n min,\n Math.min(\n parseInt(\n e.currentTarget.value.replace(/\\D/g, ''),\n 10\n ) || 0,\n max\n )\n )\n )\n });\n return (\n <div className={cx('CalendarInputWrapper')}>\n <input\n type=\"text\"\n value={date.format(formatMap[type])}\n className={cx('CalendarInput')}\n min={min}\n max={max}\n {...inputProps}\n />\n {isOpen ? (\n <div className={cx('CalendarInput-sugs')}>\n {options.map(option => {\n return (\n <div\n key={option.value}\n className={cx('CalendarInput-sugsItem', {\n 'is-highlight':\n option.value === date.format(formatMap[type])\n })}\n onClick={() => {\n this.setTime(type, parseInt(option.value, 10));\n closeMenu();\n }}\n >\n {option.value}\n </div>\n );\n })}\n </div>\n ) : null}\n </div>\n );\n }}\n </Downshift>\n );\n\n inputs.push(<span key={i + 'divider'}>:</span>);\n }\n });\n\n inputs.length && inputs.pop();\n\n return <div>{inputs}</div>;\n };\n\n renderFooter = () => {\n if (!this.props.timeFormat && !this.props.requiredConfirm) {\n return null;\n }\n\n const {translate: __, classnames: cx} = this.props;\n\n return (\n <tfoot key=\"tf\">\n <tr>\n <td colSpan={7}>\n {this.props.timeFormat ? this.renderTimes() : null}\n {this.props.requiredConfirm ? (\n <div key=\"button\" className=\"rdtActions\">\n <a\n className={cx('Button', 'Button--default')}\n onClick={this.cancel}\n >\n {__('cancel')}\n </a>\n <a\n className={cx('Button', 'Button--primary', 'm-l-sm')}\n onClick={this.confirm}\n >\n {__('confirm')}\n </a>\n </div>\n ) : null}\n </td>\n </tr>\n </tfoot>\n );\n };\n\n onPickerConfirm = (value: number[]) => {\n this.props.onConfirm && this.props.onConfirm(value, this.state.types);\n }\n\n onPickerChange = (value: number[], index: number) => {\n const {selectedDate, viewDate} = this.props;\n\n // 变更年份、月份的时候,需要更新columns\n if (index === 1 || index === 0) {\n const currentDate = (selectedDate || viewDate || moment()).clone();\n \n // 只需计算year 、month\n const selectDate = convertArrayValueToMoment(value, ['year', 'month'], currentDate);\n const dateBoundary = this.props.getDateBoundary(selectDate);\n this.setState({\n columns: this.props.getColumns(this.state.types, dateBoundary),\n pickerValue: value\n });\n }\n }\n\n renderPicker = () => {\n const {translate: __} = this.props;\n const title = this.state.types.length > 3 ? __('Date.titleTime') : __('Date.titleDate');\n return (\n <Picker\n translate={this.props.translate}\n locale={this.props.locale}\n title={title}\n columns={this.state.columns}\n value={this.state.pickerValue}\n onChange={this.onPickerChange}\n onConfirm={this.onPickerConfirm}\n onClose={this.cancel}\n />\n );\n };\n\n render() {\n const {viewDate: date, useMobileUI, embed} = this.props;\n const footer = this.renderFooter();\n const locale = date.localeData();\n const __ = this.props.translate;\n if (isMobile() && useMobileUI && !embed) {\n return (\n <div className=\"rdtYears\">\n {this.renderPicker()}\n </div>\n );\n }\n\n const tableChildren = [\n this.props.hideHeader ? null : <thead key=\"th\">\n <tr>\n <th colSpan={7}>\n <div className=\"rdtHeader\">\n <a\n className=\"rdtPrev\"\n onClick={this.props.subtractTime(1, 'years')}\n >\n &laquo;\n </a>\n <a\n className=\"rdtPrev\"\n onClick={this.props.subtractTime(1, 'months')}\n >\n &lsaquo;\n </a>\n\n <div className=\"rdtCenter\">\n <a className=\"rdtSwitch\" onClick={this.props.showView('years')}>\n {date.format(__('dateformat.year'))}\n </a>\n <a\n className=\"rdtSwitch\"\n onClick={this.props.showView('months')}\n >\n {date.format(__('MMM'))}\n </a>\n </div>\n\n <a className=\"rdtNext\" onClick={this.props.addTime(1, 'months')}>\n &rsaquo;\n </a>\n <a className=\"rdtNext\" onClick={this.props.addTime(1, 'years')}>\n &raquo;\n </a>\n </div>\n </th>\n </tr>\n <tr>\n {this.getDaysOfWeek(locale).map((day: number, index: number) => (\n <th key={day + index} className=\"dow\">\n {day}\n </th>\n ))}\n </tr>\n </thead>,\n\n <tbody key=\"tb\">{this.renderDays()}</tbody>\n ];\n\n footer && tableChildren.push(footer);\n\n return (\n <div className=\"rdtDays\">\n <table>{tableChildren}</table>\n </div>\n );\n }\n}\n\nexport default localeable(\n CustomDaysView as any as React.ComponentClass<CustomDaysViewProps>\n);\n"
12
12
  ]
13
13
  }
@@ -3,6 +3,8 @@ import MonthsView from 'react-datetime/src/MonthsView';
3
3
  import moment from 'moment';
4
4
  import React from 'react';
5
5
  import { LocaleProps } from '../../locale';
6
+ import { PickerOption } from '../PickerColumn';
7
+ import { DateType } from './Calendar';
6
8
  export interface OtherProps {
7
9
  inputFormat?: string;
8
10
  hideHeader?: boolean;
@@ -19,6 +21,9 @@ export declare class CustomMonthsView extends MonthsView {
19
21
  onChange?: () => void;
20
22
  onClose?: () => void;
21
23
  onConfirm?: (value: number[], types: string[]) => void;
24
+ getColumns: (types: DateType[], dateBoundary: void) => any;
25
+ timeCell: (value: number, type: DateType) => string;
26
+ getDateBoundary: (currentDate: moment.Moment) => any;
22
27
  useMobileUI: boolean;
23
28
  } & LocaleProps & OtherProps;
24
29
  maxDateObject: {
@@ -33,8 +38,9 @@ export declare class CustomMonthsView extends MonthsView {
33
38
  };
34
39
  state: {
35
40
  columns: {
36
- options: number[];
41
+ options: PickerOption[];
37
42
  }[];
43
+ pickerValue: number[];
38
44
  };
39
45
  setState: (arg0: any) => () => any;
40
46
  renderMonths: () => JSX.Element;