@jetbrains/ring-ui 5.0.156 → 5.0.157

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 (295) hide show
  1. package/dist/_helpers/_rollupPluginBabelHelpers.js +642 -1
  2. package/dist/_helpers/anchor.js +6 -7
  3. package/dist/_helpers/button__classes.js +16 -28
  4. package/dist/_helpers/card.js +107 -95
  5. package/dist/_helpers/dialog__body-scroll-preventer.js +20 -11
  6. package/dist/_helpers/footer.js +29 -34
  7. package/dist/_helpers/query-assist__suggestions.js +91 -74
  8. package/dist/_helpers/select__filter.js +71 -48
  9. package/dist/_helpers/services-link.js +41 -29
  10. package/dist/_helpers/sidebar.js +103 -99
  11. package/dist/_helpers/theme.js +42 -35
  12. package/dist/_helpers/title.js +71 -57
  13. package/dist/alert/alert.js +199 -158
  14. package/dist/alert/container.js +43 -32
  15. package/dist/alert-service/alert-service.js +172 -104
  16. package/dist/analytics/analytics.js +92 -68
  17. package/dist/analytics/analytics__custom-plugin.js +84 -60
  18. package/dist/analytics/analytics__fus-plugin.js +28 -15
  19. package/dist/analytics/analytics__ga-plugin.js +60 -43
  20. package/dist/analytics/analytics__plugin-utils.js +28 -22
  21. package/dist/auth/auth.js +36 -4
  22. package/dist/auth/auth__core.js +1458 -732
  23. package/dist/auth/background-flow.js +129 -87
  24. package/dist/auth/down-notification.js +75 -30
  25. package/dist/auth/iframe-flow.js +136 -75
  26. package/dist/auth/landing.js +90 -30
  27. package/dist/auth/request-builder.js +82 -46
  28. package/dist/auth/response-parser.js +119 -86
  29. package/dist/auth/storage.js +333 -171
  30. package/dist/auth/token-validator.js +244 -137
  31. package/dist/auth/window-flow.js +136 -92
  32. package/dist/auth-dialog/auth-dialog.js +176 -114
  33. package/dist/auth-dialog-service/auth-dialog-service.js +32 -7
  34. package/dist/auth-ng/auth-ng.js +70 -34
  35. package/dist/auth-ng/auth-ng.mock.js +6 -6
  36. package/dist/autofocus-ng/autofocus-ng.js +23 -8
  37. package/dist/avatar/avatar-example-datauri.js +1 -23
  38. package/dist/avatar/avatar.js +155 -119
  39. package/dist/avatar/fallback-avatar.js +41 -22
  40. package/dist/avatar-editor-ng/avatar-editor-ng.js +56 -23
  41. package/dist/avatar-editor-ng/avatar-editor-ng__template.js +1 -28
  42. package/dist/avatar-ng/avatar-ng.js +23 -1
  43. package/dist/badge/badge.js +43 -35
  44. package/dist/badge-ng/badge-ng.js +13 -1
  45. package/dist/breadcrumb-ng/breadcrumb-ng.js +15 -29
  46. package/dist/button/button.js +111 -87
  47. package/dist/button/button__classes.js +1 -0
  48. package/dist/button-group/button-group.js +35 -19
  49. package/dist/button-group/caption.js +22 -14
  50. package/dist/button-group-ng/button-group-ng.js +13 -7
  51. package/dist/button-ng/button-ng.js +154 -133
  52. package/dist/button-set/button-set.js +34 -20
  53. package/dist/button-set-ng/button-set-ng.js +2 -2
  54. package/dist/button-toolbar/button-toolbar.js +33 -19
  55. package/dist/button-toolbar-ng/button-toolbar-ng.js +5 -3
  56. package/dist/caret/caret.js +225 -188
  57. package/dist/checkbox/checkbox.js +104 -76
  58. package/dist/checkbox-ng/checkbox-ng.js +18 -27
  59. package/dist/clipboard/clipboard-fallback.js +10 -10
  60. package/dist/clipboard/clipboard.js +131 -34
  61. package/dist/code/code.js +168 -92
  62. package/dist/compiler-ng/compiler-ng.js +18 -15
  63. package/dist/confirm/confirm.js +108 -66
  64. package/dist/confirm-ng/confirm-ng.js +33 -4
  65. package/dist/confirm-service/confirm-service.js +66 -42
  66. package/dist/content-layout/content-layout.js +64 -43
  67. package/dist/content-layout/sidebar.js +1 -0
  68. package/dist/contenteditable/contenteditable.js +61 -50
  69. package/dist/control-label/control-label.js +11 -15
  70. package/dist/data-list/data-list.js +184 -128
  71. package/dist/data-list/data-list.mock.js +11 -2
  72. package/dist/data-list/item.js +174 -143
  73. package/dist/data-list/selection.js +139 -76
  74. package/dist/data-list/title.js +13 -1
  75. package/dist/data-list-ng/data-list-ng.js +31 -1
  76. package/dist/date-picker/consts.js +18 -15
  77. package/dist/date-picker/date-input.js +147 -115
  78. package/dist/date-picker/date-picker.js +285 -228
  79. package/dist/date-picker/date-popup.js +397 -356
  80. package/dist/date-picker/day.js +98 -84
  81. package/dist/date-picker/month-names.js +64 -43
  82. package/dist/date-picker/month-slider.js +74 -51
  83. package/dist/date-picker/month.js +21 -15
  84. package/dist/date-picker/months.js +48 -43
  85. package/dist/date-picker/weekdays.js +18 -12
  86. package/dist/date-picker/years.js +109 -84
  87. package/dist/dialog/dialog.js +189 -141
  88. package/dist/dialog/dialog__body-scroll-preventer.js +5 -0
  89. package/dist/dialog-ng/dialog-ng.js +401 -287
  90. package/dist/dialog-ng/dialog-ng__template.js +1 -70
  91. package/dist/docked-panel-ng/docked-panel-ng.js +33 -18
  92. package/dist/dropdown/anchor.js +10 -0
  93. package/dist/dropdown/dropdown.js +214 -182
  94. package/dist/dropdown-menu/dropdown-menu.js +102 -72
  95. package/dist/editable-heading/editable-heading.js +100 -58
  96. package/dist/error-bubble/error-bubble.js +64 -31
  97. package/dist/error-message/error-message.js +61 -38
  98. package/dist/error-message-ng/error-message-ng.js +11 -22
  99. package/dist/footer/footer.js +11 -1
  100. package/dist/footer-ng/footer-ng.js +64 -36
  101. package/dist/form-ng/form-ng.js +66 -56
  102. package/dist/global/angular-component-factory.js +76 -53
  103. package/dist/global/compose.js +10 -1
  104. package/dist/global/composeRefs.js +12 -7
  105. package/dist/global/controls-height.js +2 -2
  106. package/dist/global/create-stateful-context.js +19 -19
  107. package/dist/global/data-tests.js +15 -7
  108. package/dist/global/dom.js +95 -53
  109. package/dist/global/focus-sensor-hoc.js +134 -122
  110. package/dist/global/fuzzy-highlight.js +41 -27
  111. package/dist/global/get-event-key.js +8 -8
  112. package/dist/global/get-uid.js +8 -4
  113. package/dist/global/inject-styles.js +15 -10
  114. package/dist/global/linear-function.js +2 -2
  115. package/dist/global/listeners.js +53 -27
  116. package/dist/global/memoize.js +13 -6
  117. package/dist/global/normalize-indent.js +51 -19
  118. package/dist/global/promise-with-timeout.js +8 -6
  119. package/dist/global/prop-types.js +5 -3
  120. package/dist/global/react-dom-renderer.js +47 -28
  121. package/dist/global/react-render-adapter.js +19 -13
  122. package/dist/global/rerender-hoc.js +41 -16
  123. package/dist/global/ring-angular-component.js +20 -10
  124. package/dist/global/schedule-raf.js +6 -5
  125. package/dist/global/sniffer.js +1 -1
  126. package/dist/global/theme.js +24 -0
  127. package/dist/global/trivial-template-tag.js +10 -3
  128. package/dist/global/typescript-utils.js +6 -2
  129. package/dist/global/url.js +27 -21
  130. package/dist/global/use-event-callback.js +4 -6
  131. package/dist/grid/col.js +55 -35
  132. package/dist/grid/grid.js +36 -17
  133. package/dist/grid/row.js +48 -35
  134. package/dist/group/group.js +27 -17
  135. package/dist/group-ng/group-ng.js +2 -2
  136. package/dist/header/header.js +80 -33
  137. package/dist/header/logo.js +39 -20
  138. package/dist/header/profile.js +188 -150
  139. package/dist/header/services-link.js +9 -0
  140. package/dist/header/services.js +118 -73
  141. package/dist/header/smart-profile.js +207 -111
  142. package/dist/header/smart-services.js +115 -62
  143. package/dist/header/tray-icon.js +38 -21
  144. package/dist/header/tray.js +34 -21
  145. package/dist/heading/heading.js +25 -26
  146. package/dist/heading-ng/heading-ng.js +11 -1
  147. package/dist/http/http.js +368 -215
  148. package/dist/http/http.mock.js +104 -49
  149. package/dist/hub-source/hub-source.js +191 -83
  150. package/dist/hub-source/hub-source__user.js +45 -11
  151. package/dist/hub-source/hub-source__users-groups.js +67 -37
  152. package/dist/i18n/i18n-context.js +14 -10
  153. package/dist/i18n/i18n.js +11 -7
  154. package/dist/icon/icon.js +94 -76
  155. package/dist/icon/icon__svg.js +31 -24
  156. package/dist/icon/index.js +9 -0
  157. package/dist/icon-ng/icon-ng.js +27 -15
  158. package/dist/input/input.js +184 -145
  159. package/dist/input-ng/input-ng.js +96 -118
  160. package/dist/island/adaptive-island-hoc.js +45 -30
  161. package/dist/island/content.js +130 -115
  162. package/dist/island/header.js +69 -56
  163. package/dist/island/island.js +40 -28
  164. package/dist/island-legacy/content-legacy.js +27 -17
  165. package/dist/island-legacy/header-legacy.js +29 -19
  166. package/dist/island-legacy/island-legacy.js +27 -17
  167. package/dist/island-ng/island-content-ng.js +17 -26
  168. package/dist/island-ng/island-header-ng.js +9 -12
  169. package/dist/island-ng/island-ng-class-fixer.js +3 -0
  170. package/dist/island-ng/island-ng.js +6 -10
  171. package/dist/link/clickableLink.js +61 -44
  172. package/dist/link/link.js +85 -74
  173. package/dist/link-ng/link-ng.js +3 -5
  174. package/dist/list/consts.js +1 -1
  175. package/dist/list/list.js +696 -602
  176. package/dist/list/list__custom.js +61 -44
  177. package/dist/list/list__hint.js +21 -10
  178. package/dist/list/list__item.js +167 -129
  179. package/dist/list/list__link.js +54 -37
  180. package/dist/list/list__separator.js +24 -14
  181. package/dist/list/list__title.js +32 -22
  182. package/dist/list/list__users-groups-source.js +131 -54
  183. package/dist/loader/loader.js +78 -43
  184. package/dist/loader/loader__core.js +257 -189
  185. package/dist/loader-inline/loader-inline.js +37 -23
  186. package/dist/loader-inline-ng/loader-inline-ng.js +2 -2
  187. package/dist/loader-ng/loader-ng.js +46 -19
  188. package/dist/loader-screen/loader-screen.js +48 -25
  189. package/dist/loader-screen-ng/loader-screen-ng.js +46 -30
  190. package/dist/login-dialog/login-dialog.js +162 -111
  191. package/dist/login-dialog/service.js +35 -7
  192. package/dist/markdown/code.js +31 -9
  193. package/dist/markdown/heading.js +3 -5
  194. package/dist/markdown/link.js +13 -6
  195. package/dist/markdown/markdown.js +66 -33
  196. package/dist/message/message.js +157 -125
  197. package/dist/message-bundle-ng/message-bundle-ng.js +128 -44
  198. package/dist/old-browsers-message/old-browsers-message.js +19 -11
  199. package/dist/old-browsers-message/old-browsers-message__stop.js +8 -0
  200. package/dist/old-browsers-message/white-list.js +16 -9
  201. package/dist/pager/pager.js +275 -210
  202. package/dist/pager-ng/pager-ng.js +36 -1
  203. package/dist/panel/panel.js +27 -17
  204. package/dist/panel-ng/panel-ng.js +14 -1
  205. package/dist/permissions/permissions.js +173 -127
  206. package/dist/permissions/permissions__cache.js +225 -194
  207. package/dist/permissions-ng/permissions-ng.js +86 -35
  208. package/dist/place-under-ng/place-under-ng.js +68 -45
  209. package/dist/popup/popup.consts.js +1 -1
  210. package/dist/popup/popup.js +342 -280
  211. package/dist/popup/popup.target.js +8 -9
  212. package/dist/popup/position.js +153 -153
  213. package/dist/popup-menu/popup-menu.js +86 -44
  214. package/dist/progress-bar/progress-bar.js +97 -80
  215. package/dist/progress-bar-ng/progress-bar-ng.js +11 -1
  216. package/dist/promised-click-ng/promised-click-ng.js +92 -58
  217. package/dist/proxy-attrs/proxy-attrs.js +18 -9
  218. package/dist/query-assist/query-assist.js +903 -832
  219. package/dist/query-assist/query-assist__suggestions.js +33 -1
  220. package/dist/query-assist-ng/query-assist-ng.js +38 -1
  221. package/dist/radio/radio.js +36 -19
  222. package/dist/radio/radio__item.js +71 -52
  223. package/dist/radio-ng/radio-ng.js +14 -25
  224. package/dist/save-field-ng/save-field-ng.js +86 -52
  225. package/dist/save-field-ng/save-field-ng__template.js +1 -32
  226. package/dist/select/select.js +937 -835
  227. package/dist/select/select__filter.js +33 -0
  228. package/dist/select/select__popup.js +472 -359
  229. package/dist/select-ng/select-ng.js +125 -74
  230. package/dist/select-ng/select-ng__lazy.js +101 -50
  231. package/dist/select-ng/select-ng__options.js +107 -81
  232. package/dist/shortcuts/core.js +218 -166
  233. package/dist/shortcuts/shortcut-title.js +11 -6
  234. package/dist/shortcuts/shortcuts-hoc.js +47 -19
  235. package/dist/shortcuts/shortcuts.js +77 -50
  236. package/dist/shortcuts-hint-ng/shortcuts-hint-ng.js +104 -53
  237. package/dist/shortcuts-hint-ng/shortcuts-hint-ng__template.js +1 -48
  238. package/dist/shortcuts-ng/shortcuts-ng.js +86 -51
  239. package/dist/sidebar-ng/sidebar-ng.js +53 -22
  240. package/dist/sidebar-ng/sidebar-ng__button-template.js +1 -18
  241. package/dist/sidebar-ng/sidebar-ng__template.js +1 -10
  242. package/dist/storage/storage.js +35 -4
  243. package/dist/storage/storage__fallback.js +224 -149
  244. package/dist/storage/storage__local.js +156 -90
  245. package/dist/tab-trap/tab-trap.js +157 -122
  246. package/dist/table/cell.js +28 -14
  247. package/dist/table/disable-hover-hoc.js +53 -33
  248. package/dist/table/header-cell.js +87 -64
  249. package/dist/table/header.js +126 -98
  250. package/dist/table/multitable.js +127 -107
  251. package/dist/table/row-with-focus-sensor.js +73 -25
  252. package/dist/table/row.js +208 -170
  253. package/dist/table/selection-adapter.js +3 -1
  254. package/dist/table/selection-shortcuts-hoc.js +184 -181
  255. package/dist/table/selection.js +228 -156
  256. package/dist/table/smart-table.js +93 -51
  257. package/dist/table/table.js +348 -281
  258. package/dist/table-legacy-ng/table-legacy-ng.js +117 -102
  259. package/dist/table-legacy-ng/table-legacy-ng__pager.js +42 -10
  260. package/dist/table-legacy-ng/table-legacy-ng__selection-navigate-actions.js +92 -69
  261. package/dist/table-legacy-ng/table-legacy-ng__selection.js +169 -119
  262. package/dist/table-legacy-ng/table-legacy-ng__toolbar.js +36 -21
  263. package/dist/table-ng/smart-table-ng.js +31 -1
  264. package/dist/table-ng/table-ng.js +31 -1
  265. package/dist/tabs/collapsible-more.js +87 -50
  266. package/dist/tabs/collapsible-tab.js +45 -38
  267. package/dist/tabs/collapsible-tabs.js +161 -94
  268. package/dist/tabs/custom-item.js +2 -4
  269. package/dist/tabs/dumb-tabs.js +122 -75
  270. package/dist/tabs/smart-tabs.js +75 -29
  271. package/dist/tabs/tab-link.js +29 -19
  272. package/dist/tabs/tab.js +33 -19
  273. package/dist/tabs/tabs.js +35 -0
  274. package/dist/tabs-ng/tabs-ng.js +38 -24
  275. package/dist/tabs-ng/tabs-ng__template.js +1 -38
  276. package/dist/tag/tag.js +170 -133
  277. package/dist/tags-input/tags-input.js +428 -327
  278. package/dist/tags-input-ng/tags-input-ng.js +37 -1
  279. package/dist/tags-list/tags-list.js +80 -56
  280. package/dist/template-ng/template-ng.js +50 -39
  281. package/dist/text/text.js +38 -28
  282. package/dist/title-ng/title-ng.js +28 -23
  283. package/dist/toggle/toggle.js +72 -56
  284. package/dist/toggle-ng/toggle-ng.js +14 -1
  285. package/dist/tooltip/tooltip.js +192 -146
  286. package/dist/tooltip-ng/tooltip-ng.js +51 -25
  287. package/dist/user-agreement/service.js +374 -227
  288. package/dist/user-agreement/toolbox.eula.js +1 -160
  289. package/dist/user-agreement/user-agreement.js +128 -86
  290. package/dist/user-card/card.js +32 -0
  291. package/dist/user-card/smart-user-card-tooltip.js +116 -51
  292. package/dist/user-card/tooltip.js +90 -48
  293. package/dist/user-card/user-card.js +32 -0
  294. package/dist/user-card-ng/user-card-ng.js +34 -2
  295. package/package.json +2 -2
@@ -1,4 +1,8 @@
1
- import { _ as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
1
+ import { c as _defineProperty, j as _inherits, k as _createSuper, b as _classCallCheck, m as _assertThisInitialized, a as _objectSpread2, _ as _createClass, h as _objectWithoutProperties, i as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/es.number.constructor.js';
3
+ import 'core-js/modules/es.array.reduce.js';
4
+ import 'core-js/modules/es.object.to-string.js';
5
+ import 'core-js/modules/es.array.map.js';
2
6
  import React, { Component } from 'react';
3
7
  import PropTypes from 'prop-types';
4
8
  import isAfter from 'date-fns/isAfter';
@@ -13,8 +17,18 @@ import Years from './years.js';
13
17
  import Weekdays from './weekdays.js';
14
18
  import { dateType, parseTime } from './consts.js';
15
19
  import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
20
+ import 'core-js/modules/es.array.iterator.js';
21
+ import 'core-js/modules/es.map.js';
22
+ import 'core-js/modules/es.string.iterator.js';
23
+ import 'core-js/modules/web.dom-collections.iterator.js';
24
+ import 'core-js/modules/es.weak-map.js';
25
+ import 'core-js/modules/es.array.concat.js';
26
+ import 'core-js/modules/es.regexp.exec.js';
27
+ import 'core-js/modules/es.string.replace.js';
28
+ import 'core-js/modules/es.array.filter.js';
16
29
  import 'classnames';
17
30
  import '../input/input.js';
31
+ import 'core-js/modules/es.object.values.js';
18
32
  import '@jetbrains/icons/close-12px';
19
33
  import '../global/prop-types.js';
20
34
  import '../button/button.js';
@@ -24,13 +38,17 @@ import 'util-deprecate';
24
38
  import '../icon/icon__constants.js';
25
39
  import '../_helpers/icon.js';
26
40
  import '../icon/icon__svg.js';
41
+ import 'core-js/modules/es.string.starts-with.js';
27
42
  import '../link/clickableLink.js';
28
43
  import '../global/controls-height.js';
29
44
  import '../_helpers/button__classes.js';
30
45
  import '../global/get-uid.js';
46
+ import 'core-js/modules/es.regexp.to-string.js';
31
47
  import '../i18n/i18n-context.js';
32
48
  import '../i18n/i18n.js';
49
+ import 'core-js/modules/es.set.js';
33
50
  import '../global/composeRefs.js';
51
+ import 'core-js/modules/web.dom-collections.for-each.js';
34
52
  import '../control-label/control-label.js';
35
53
  import '../_helpers/control-label.js';
36
54
  import '../_helpers/input.js';
@@ -49,6 +67,8 @@ import 'date-fns/addDays';
49
67
  import 'date-fns/format';
50
68
  import 'date-fns/setDay';
51
69
  import './day.js';
70
+ import 'core-js/modules/es.array.includes.js';
71
+ import 'core-js/modules/es.string.includes.js';
52
72
  import 'date-fns/getDate';
53
73
  import 'date-fns/isToday';
54
74
  import './month-names.js';
@@ -63,388 +83,409 @@ import 'date-fns/isSameYear';
63
83
  import 'date-fns/isThisYear';
64
84
  import 'date-fns/setYear';
65
85
 
66
- const scrollExpDelay = 10;
67
- class DatePopup extends Component {
68
- static sameDay(next, prev) {
69
- if (next && prev) {
70
- return isSameDay(next, prev);
71
- }
72
- return next === prev;
73
- }
74
- static propTypes = {
75
- className: PropTypes.string,
76
- date: dateType,
77
- range: PropTypes.bool,
78
- withTime: PropTypes.bool,
79
- time: PropTypes.string,
80
- from: dateType,
81
- to: dateType,
82
- renderAfterCalendar: PropTypes.func,
83
- displayFormat: PropTypes.func,
84
- parseDateInput: PropTypes.func,
85
- onChange: PropTypes.func,
86
- onComplete: PropTypes.func,
87
- onClear: PropTypes.func,
88
- minDate: dateType,
89
- maxDate: dateType,
90
- hidden: PropTypes.bool,
91
- fromPlaceholder: PropTypes.string,
92
- toPlaceholder: PropTypes.string,
93
- timePlaceholder: PropTypes.string,
94
- locale: PropTypes.object
95
- };
96
- static defaultProps = {
97
- onChange() {}
98
- };
99
- constructor(props) {
100
- super(props);
101
- const defaultState = {
86
+ var _excluded = ["from", "to", "date", "time"];
87
+ var scrollExpDelay = 10;
88
+ var DatePopup = /*#__PURE__*/function (_Component) {
89
+ _inherits(DatePopup, _Component);
90
+ var _super = _createSuper(DatePopup);
91
+ function DatePopup(props) {
92
+ var _this;
93
+ _classCallCheck(this, DatePopup);
94
+ _this = _super.call(this, props);
95
+ _defineProperty(_assertThisInitialized(_this), "_scrollDate", void 0);
96
+ _defineProperty(_assertThisInitialized(_this), "_scrollTS", void 0);
97
+ _defineProperty(_assertThisInitialized(_this), "isInTimeMode", function () {
98
+ return !_this.props.range && _this.props.withTime || false;
99
+ });
100
+ _defineProperty(_assertThisInitialized(_this), "componentRef", /*#__PURE__*/React.createRef());
101
+ _defineProperty(_assertThisInitialized(_this), "handleWheel", function (e) {
102
+ if (e.cancelable) {
103
+ e.preventDefault();
104
+ }
105
+ });
106
+ _defineProperty(_assertThisInitialized(_this), "isValidDate", function (parsedText) {
107
+ var minDate = _this.parse(_this.props.minDate, 'date');
108
+ var maxDate = _this.parse(_this.props.maxDate, 'date');
109
+ if (parsedText) {
110
+ return !(minDate && isBefore(parsedText, minDate) || maxDate && isAfter(parsedText, maxDate));
111
+ }
112
+ return false;
113
+ });
114
+ _defineProperty(_assertThisInitialized(_this), "scheduleScroll", function () {
115
+ var current = _this.state.scrollDate && _this.parse(_this.state.scrollDate, 'date') || _this.parse(_this.props[_this.state.active], 'date') || new Date();
116
+ var goal = _this._scrollDate;
117
+ if (!current || !goal || DatePopup.sameDay(goal, current)) {
118
+ _this._scrollDate = null;
119
+ _this._scrollTS = null;
120
+ return;
121
+ }
122
+ if (_this._scrollTS) {
123
+ var diff = goal - Number(current);
124
+ var dt = Date.now() - _this._scrollTS;
125
+ var next = goal - diff * Math.pow(Math.E, -dt / scrollExpDelay);
126
+ _this.setState({
127
+ scrollDate: next
128
+ });
129
+ }
130
+ _this._scrollTS = Date.now();
131
+ window.requestAnimationFrame(_this.scheduleScroll);
132
+ });
133
+ _defineProperty(_assertThisInitialized(_this), "scrollTo", function (scrollDate) {
134
+ _this._scrollDate = scrollDate;
135
+ if (!_this._scrollTS) {
136
+ _this.scheduleScroll();
137
+ }
138
+ });
139
+ _defineProperty(_assertThisInitialized(_this), "hoverHandler", function (hoverDate) {
140
+ return _this.setState({
141
+ hoverDate: hoverDate
142
+ });
143
+ });
144
+ _defineProperty(_assertThisInitialized(_this), "handleActivate", memoize(function (name) {
145
+ return function () {
146
+ return _this.setState({
147
+ active: name
148
+ });
149
+ };
150
+ }));
151
+ _defineProperty(_assertThisInitialized(_this), "handleInput", function (text, name) {
152
+ if (name !== 'time') {
153
+ var parsed = _this.parse(text, name);
154
+ if (_this.isValidDate(parsed)) {
155
+ _this.scrollTo(Number(parsed));
156
+ }
157
+ }
158
+ _this.setState({
159
+ text: text,
160
+ hoverDate: null
161
+ });
162
+ });
163
+ _defineProperty(_assertThisInitialized(_this), "handleConfirm", memoize(function (name) {
164
+ return function () {
165
+ return _this.confirm(name);
166
+ };
167
+ }));
168
+ _defineProperty(_assertThisInitialized(_this), "selectHandler", function (date) {
169
+ if (_this.isInTimeMode()) {
170
+ _this.setState({
171
+ active: 'time'
172
+ }, function () {
173
+ return _this.select({
174
+ date: date
175
+ });
176
+ });
177
+ } else {
178
+ _this.select(_defineProperty({}, _this.state.active, date));
179
+ }
180
+ });
181
+ _defineProperty(_assertThisInitialized(_this), "handleScroll", function (scrollDate) {
182
+ return _this.setState({
183
+ scrollDate: scrollDate
184
+ });
185
+ });
186
+ _defineProperty(_assertThisInitialized(_this), "onClear", function (e) {
187
+ var _this$props$onClear, _this$props, _this$componentRef$cu, _this$componentRef$cu2;
188
+ var changes;
189
+ if (_this.props.range) {
190
+ changes = {
191
+ from: null,
192
+ to: null
193
+ };
194
+ } else {
195
+ changes = {
196
+ date: null
197
+ };
198
+ }
199
+ _this.select(changes);
200
+ (_this$props$onClear = (_this$props = _this.props).onClear) === null || _this$props$onClear === void 0 ? void 0 : _this$props$onClear.call(_this$props, e);
201
+ (_this$componentRef$cu = _this.componentRef.current) === null || _this$componentRef$cu === void 0 ? void 0 : (_this$componentRef$cu2 = _this$componentRef$cu.querySelector('input')) === null || _this$componentRef$cu2 === void 0 ? void 0 : _this$componentRef$cu2.focus();
202
+ });
203
+ var defaultState = {
102
204
  text: null,
103
205
  hoverDate: null,
104
206
  scrollDate: null
105
207
  };
106
- const {
107
- range,
108
- withTime
109
- } = props;
208
+ var range = props.range,
209
+ withTime = props.withTime;
110
210
  if (!range) {
111
- const parsedDate = this.parse(props.date, 'date');
112
- const active = withTime && parsedDate && !props.time ? 'time' : 'date';
113
- this.state = {
114
- ...defaultState,
115
- active
116
- };
211
+ var parsedDate = _this.parse(props.date, 'date');
212
+ var active = withTime && parsedDate && !props.time ? 'time' : 'date';
213
+ _this.state = _objectSpread2(_objectSpread2({}, defaultState), {}, {
214
+ active: active
215
+ });
117
216
  } else if (props.from && !props.to) {
118
- this.state = {
119
- ...defaultState,
217
+ _this.state = _objectSpread2(_objectSpread2({}, defaultState), {}, {
120
218
  active: 'to'
121
- };
219
+ });
122
220
  } else {
123
- this.state = {
124
- ...defaultState,
221
+ _this.state = _objectSpread2(_objectSpread2({}, defaultState), {}, {
125
222
  active: 'from'
126
- };
127
- }
128
- }
129
- componentDidMount() {
130
- if (this.componentRef.current) {
131
- this.componentRef.current.addEventListener('wheel', this.handleWheel);
223
+ });
132
224
  }
225
+ return _this;
133
226
  }
134
- componentDidUpdate(prevProps, prevState) {
135
- if (this.state.active !== prevState.active) {
136
- if (this.state.text && prevState.active) {
137
- this.confirm(prevState.active);
227
+ _createClass(DatePopup, [{
228
+ key: "componentDidMount",
229
+ value: function componentDidMount() {
230
+ if (this.componentRef.current) {
231
+ this.componentRef.current.addEventListener('wheel', this.handleWheel);
138
232
  }
139
- this.setState({
140
- text: null
141
- });
142
233
  }
143
- }
144
- componentWillUnmount() {
145
- if (this.componentRef.current) {
146
- this.componentRef.current.removeEventListener('wheel', this.handleWheel);
234
+ }, {
235
+ key: "componentDidUpdate",
236
+ value: function componentDidUpdate(prevProps, prevState) {
237
+ if (this.state.active !== prevState.active) {
238
+ if (this.state.text && prevState.active) {
239
+ this.confirm(prevState.active);
240
+ }
241
+ this.setState({
242
+ text: null
243
+ });
244
+ }
147
245
  }
148
- }
149
- _scrollDate;
150
- _scrollTS;
151
- isInTimeMode = () => !this.props.range && this.props.withTime || false;
152
- componentRef = /*#__PURE__*/React.createRef();
153
- handleWheel = e => {
154
- if (e.cancelable) {
155
- e.preventDefault();
246
+ }, {
247
+ key: "componentWillUnmount",
248
+ value: function componentWillUnmount() {
249
+ if (this.componentRef.current) {
250
+ this.componentRef.current.removeEventListener('wheel', this.handleWheel);
251
+ }
156
252
  }
157
- };
158
- parse(text, type) {
159
- if (type === 'time') {
160
- return parseTime(String(text));
253
+ }, {
254
+ key: "parse",
255
+ value: function parse(text, type) {
256
+ if (type === 'time') {
257
+ return parseTime(String(text));
258
+ }
259
+ return this.props.parseDateInput(text);
161
260
  }
162
- return this.props.parseDateInput(text);
163
- }
164
- select(changes) {
165
- const {
166
- range,
167
- withTime
168
- } = this.props;
169
- const prevActive = this.state.active;
170
- if (!range && !withTime) {
171
- this.setState({
172
- text: null,
173
- scrollDate: null
174
- });
175
- const adjustedDate = changes.date && set(new Date(), {
176
- year: changes.date.getFullYear(),
177
- month: changes.date.getMonth(),
178
- date: changes.date.getDate()
179
- });
180
- this.props.onChange(adjustedDate);
181
- this.props.onComplete();
182
- } else if (!range && withTime) {
183
- const date = this.parse(this.props.date, 'date');
184
- const time = this.parse(this.props.time, 'time');
185
- const changeToSubmit = {
186
- date: changes.date || date,
187
- time: changes.time || time
188
- };
189
- this.setState({
190
- active: changes.date ? 'time' : 'date',
191
- text: null,
192
- scrollDate: null
193
- });
194
- this.props.onChange(changeToSubmit);
195
- if (!changes.date && prevActive === 'time' && changeToSubmit.date && changeToSubmit.time) {
261
+ }, {
262
+ key: "select",
263
+ value: function select(changes) {
264
+ var _this$props2 = this.props,
265
+ range = _this$props2.range,
266
+ withTime = _this$props2.withTime;
267
+ var prevActive = this.state.active;
268
+ if (!range && !withTime) {
269
+ this.setState({
270
+ text: null,
271
+ scrollDate: null
272
+ });
273
+ var adjustedDate = changes.date && set(new Date(), {
274
+ year: changes.date.getFullYear(),
275
+ month: changes.date.getMonth(),
276
+ date: changes.date.getDate()
277
+ });
278
+ this.props.onChange(adjustedDate);
196
279
  this.props.onComplete();
197
- }
198
- } else {
199
- let {
200
- from,
201
- to
202
- } = {
203
- ...this.props,
204
- ...changes
205
- };
206
- from = this.parse(from, 'from');
207
- to = this.parse(to, 'to');
208
- // proceed to setting the end by default
209
- let active = 'to';
210
- let complete = false;
211
- // end is before beginning
212
- if (from && to && isAfter(startOfDay(from), startOfDay(to))) {
213
- // ignore the old end when beginning is changed
214
- if (changes.from) {
215
- to = null;
216
- // treat range as reverse when end is changed
280
+ } else if (!range && withTime) {
281
+ var date = this.parse(this.props.date, 'date');
282
+ var time = this.parse(this.props.time, 'time');
283
+ var changeToSubmit = {
284
+ date: changes.date || date,
285
+ time: changes.time || time
286
+ };
287
+ this.setState({
288
+ active: changes.date ? 'time' : 'date',
289
+ text: null,
290
+ scrollDate: null
291
+ });
292
+ this.props.onChange(changeToSubmit);
293
+ if (!changes.date && prevActive === 'time' && changeToSubmit.date && changeToSubmit.time) {
294
+ this.props.onComplete();
295
+ }
296
+ } else {
297
+ var _this$props$changes = _objectSpread2(_objectSpread2({}, this.props), changes),
298
+ from = _this$props$changes.from,
299
+ to = _this$props$changes.to;
300
+ from = this.parse(from, 'from');
301
+ to = this.parse(to, 'to');
302
+ // proceed to setting the end by default
303
+ var active = 'to';
304
+ var complete = false;
305
+ // end is before beginning
306
+ if (from && to && isAfter(startOfDay(from), startOfDay(to))) {
307
+ // ignore the old end when beginning is changed
308
+ if (changes.from) {
309
+ to = null;
310
+ // treat range as reverse when end is changed
311
+ } else if (changes.to) {
312
+ to = from;
313
+ from = changes.to;
314
+ }
217
315
  } else if (changes.to) {
218
- to = from;
219
- from = changes.to;
316
+ active = 'from';
317
+ complete = !!from;
318
+ }
319
+ this.setState({
320
+ active: active,
321
+ hoverDate: null,
322
+ text: null
323
+ });
324
+ this.props.onChange({
325
+ from: from,
326
+ to: to
327
+ });
328
+ if (complete) {
329
+ this.props.onComplete();
220
330
  }
221
- } else if (changes.to) {
222
- active = 'from';
223
- complete = !!from;
224
- }
225
- this.setState({
226
- active,
227
- hoverDate: null,
228
- text: null
229
- });
230
- this.props.onChange({
231
- from,
232
- to
233
- });
234
- if (complete) {
235
- this.props.onComplete();
236
- }
237
- }
238
- }
239
- confirm(name) {
240
- const text = this.state.text;
241
- let result;
242
- if (name === 'time') {
243
- result = this.parse(text, name);
244
- const time = this.parse('time' in this.props ? this.props.time : '', 'time');
245
- const emptyCase = this.state.active === 'time' ? '00:00' : null;
246
- result = result || time || emptyCase;
247
- } else {
248
- result = this.parse(text, name);
249
- if (!this.isValidDate(result)) {
250
- result = this.parse(name in this.props ? this.props[name] : '', name);
251
331
  }
252
332
  }
253
- this.select({
254
- [name]: result
255
- });
256
- }
257
- isValidDate = parsedText => {
258
- const minDate = this.parse(this.props.minDate, 'date');
259
- const maxDate = this.parse(this.props.maxDate, 'date');
260
- if (parsedText) {
261
- return !(minDate && isBefore(parsedText, minDate) || maxDate && isAfter(parsedText, maxDate));
262
- }
263
- return false;
264
- };
265
- scheduleScroll = () => {
266
- const current = this.state.scrollDate && this.parse(this.state.scrollDate, 'date') || this.parse(this.props[this.state.active], 'date') || new Date();
267
- const goal = this._scrollDate;
268
- if (!current || !goal || DatePopup.sameDay(goal, current)) {
269
- this._scrollDate = null;
270
- this._scrollTS = null;
271
- return;
272
- }
273
- if (this._scrollTS) {
274
- const diff = goal - Number(current);
275
- const dt = Date.now() - this._scrollTS;
276
- const next = goal - diff * Math.E ** (-dt / scrollExpDelay);
277
- this.setState({
278
- scrollDate: next
279
- });
280
- }
281
- this._scrollTS = Date.now();
282
- window.requestAnimationFrame(this.scheduleScroll);
283
- };
284
- scrollTo = scrollDate => {
285
- this._scrollDate = scrollDate;
286
- if (!this._scrollTS) {
287
- this.scheduleScroll();
288
- }
289
- };
290
- hoverHandler = hoverDate => this.setState({
291
- hoverDate
292
- });
293
- handleActivate = memoize(name => () => this.setState({
294
- active: name
295
- }));
296
- handleInput = (text, name) => {
297
- if (name !== 'time') {
298
- const parsed = this.parse(text, name);
299
- if (this.isValidDate(parsed)) {
300
- this.scrollTo(Number(parsed));
333
+ }, {
334
+ key: "confirm",
335
+ value: function confirm(name) {
336
+ var text = this.state.text;
337
+ var result;
338
+ if (name === 'time') {
339
+ result = this.parse(text, name);
340
+ var time = this.parse('time' in this.props ? this.props.time : '', 'time');
341
+ var emptyCase = this.state.active === 'time' ? '00:00' : null;
342
+ result = result || time || emptyCase;
343
+ } else {
344
+ result = this.parse(text, name);
345
+ if (!this.isValidDate(result)) {
346
+ result = this.parse(name in this.props ? this.props[name] : '', name);
347
+ }
301
348
  }
349
+ this.select(_defineProperty({}, name, result));
302
350
  }
303
- this.setState({
304
- text,
305
- hoverDate: null
306
- });
307
- };
308
- handleConfirm = memoize(name => () => this.confirm(name));
309
- selectHandler = date => {
310
- if (this.isInTimeMode()) {
311
- this.setState({
312
- active: 'time'
313
- }, () => this.select({
314
- date
315
- }));
316
- } else {
317
- this.select({
318
- [this.state.active]: date
319
- });
320
- }
321
- };
322
- handleScroll = scrollDate => this.setState({
323
- scrollDate
324
- });
325
- onClear = e => {
326
- let changes;
327
- if (this.props.range) {
328
- changes = {
329
- from: null,
330
- to: null
331
- };
332
- } else {
333
- changes = {
334
- date: null
335
- };
336
- }
337
- this.select(changes);
338
- this.props.onClear?.(e);
339
- this.componentRef.current?.querySelector('input')?.focus();
340
- };
341
- render() {
342
- const {
343
- range,
344
- hidden,
345
- withTime,
346
- locale
347
- } = this.props;
348
- const {
349
- from,
350
- to,
351
- date,
352
- time,
353
- ...restProps
354
- } = this.props;
355
- const parsedDate = this.parse(this.props.date, 'date');
356
- const parsedTo = this.parse(this.props.to, 'to');
357
- const names = range ? ['from', 'to'] : ['date'];
358
- const dates = names.reduce((obj, key) => {
359
- const value = this.props[key];
360
- return {
361
- ...obj,
362
- [key]: this.parse(value, key)
363
- };
364
- }, {});
365
- const activeDate = this.state.active !== 'time' ? this.state.hoverDate || (this.state.text != null ? this.parse(this.state.text, 'date') : null) : this.state.hoverDate || null;
366
- const currentRange = range && dates.from && dates.to && [dates.from, dates.to] || null;
367
- let activeRange = null;
368
- if (range && activeDate) {
369
- switch (this.state.active) {
370
- case 'from':
371
- if (dates.to && isAfter(startOfDay(activeDate), startOfDay(dates.to))) {
372
- activeRange = [activeDate, dates.to];
373
- }
374
- break;
375
- case 'to':
376
- if (!dates.from) {
351
+ }, {
352
+ key: "render",
353
+ value: function render() {
354
+ var _this2 = this;
355
+ var _this$props3 = this.props,
356
+ range = _this$props3.range,
357
+ hidden = _this$props3.hidden,
358
+ withTime = _this$props3.withTime,
359
+ locale = _this$props3.locale;
360
+ var _this$props4 = this.props;
361
+ _this$props4.from;
362
+ _this$props4.to;
363
+ _this$props4.date;
364
+ var time = _this$props4.time,
365
+ restProps = _objectWithoutProperties(_this$props4, _excluded);
366
+ var parsedDate = this.parse(this.props.date, 'date');
367
+ var parsedTo = this.parse(this.props.to, 'to');
368
+ var names = range ? ['from', 'to'] : ['date'];
369
+ var dates = names.reduce(function (obj, key) {
370
+ var value = _this2.props[key];
371
+ return _objectSpread2(_objectSpread2({}, obj), {}, _defineProperty({}, key, _this2.parse(value, key)));
372
+ }, {});
373
+ var activeDate = this.state.active !== 'time' ? this.state.hoverDate || (this.state.text != null ? this.parse(this.state.text, 'date') : null) : this.state.hoverDate || null;
374
+ var currentRange = range && dates.from && dates.to && [dates.from, dates.to] || null;
375
+ var activeRange = null;
376
+ if (range && activeDate) {
377
+ switch (this.state.active) {
378
+ case 'from':
379
+ if (dates.to && isAfter(startOfDay(activeDate), startOfDay(dates.to))) {
380
+ activeRange = [activeDate, dates.to];
381
+ }
377
382
  break;
378
- }
379
- if (isBefore(startOfDay(activeDate), startOfDay(dates.from))) {
380
- activeRange = [activeDate, dates.from];
381
- } else {
382
- activeRange = [dates.from, activeDate];
383
- }
384
- break;
385
- }
386
- }
387
- const scrollDate = withTime && !range ? this.state.scrollDate || dates.date || new Date() : this.state.scrollDate || dates[this.state.active] || new Date();
388
- const calendarProps = {
389
- ...restProps,
390
- ...dates,
391
- scrollDate,
392
- activeDate,
393
- currentRange,
394
- activeRange,
395
- onScroll: this.handleScroll,
396
- onScrollChange: this.scrollTo
397
- };
398
- const clearable = Boolean(this.props.onClear);
399
- return /*#__PURE__*/React.createElement("div", {
400
- className: modules_0c7b7d96.datePopup,
401
- "data-test": "ring-date-popup",
402
- ref: this.componentRef
403
- }, /*#__PURE__*/React.createElement("div", {
404
- className: modules_0c7b7d96.filterWrapper
405
- }, names.map(name => {
406
- let onClear;
407
- if (clearable && name !== 'from' && !this.isInTimeMode()) {
408
- onClear = this.onClear.bind(this);
383
+ case 'to':
384
+ if (!dates.from) {
385
+ break;
386
+ }
387
+ if (isBefore(startOfDay(activeDate), startOfDay(dates.from))) {
388
+ activeRange = [activeDate, dates.from];
389
+ } else {
390
+ activeRange = [dates.from, activeDate];
391
+ }
392
+ break;
393
+ }
409
394
  }
410
- return /*#__PURE__*/React.createElement(DateInput, _extends({}, this.props, this.state, {
411
- divider: name === 'from' && (dates[name] != null || parsedTo != null),
412
- name: name,
413
- key: name,
414
- date: dates[name],
415
- active: this.state.active === name,
395
+ var scrollDate = withTime && !range ? this.state.scrollDate || dates.date || new Date() : this.state.scrollDate || dates[this.state.active] || new Date();
396
+ var calendarProps = _objectSpread2(_objectSpread2(_objectSpread2({}, restProps), dates), {}, {
397
+ scrollDate: scrollDate,
398
+ activeDate: activeDate,
399
+ currentRange: currentRange,
400
+ activeRange: activeRange,
401
+ onScroll: this.handleScroll,
402
+ onScrollChange: this.scrollTo
403
+ });
404
+ var clearable = Boolean(this.props.onClear);
405
+ return /*#__PURE__*/React.createElement("div", {
406
+ className: modules_0c7b7d96.datePopup,
407
+ "data-test": "ring-date-popup",
408
+ ref: this.componentRef
409
+ }, /*#__PURE__*/React.createElement("div", {
410
+ className: modules_0c7b7d96.filterWrapper
411
+ }, names.map(function (name) {
412
+ var onClear;
413
+ if (clearable && name !== 'from' && !_this2.isInTimeMode()) {
414
+ onClear = _this2.onClear.bind(_this2);
415
+ }
416
+ return /*#__PURE__*/React.createElement(DateInput, _extends({}, _this2.props, _this2.state, {
417
+ divider: name === 'from' && (dates[name] != null || parsedTo != null),
418
+ name: name,
419
+ key: name,
420
+ date: dates[name],
421
+ active: _this2.state.active === name,
422
+ hidden: hidden,
423
+ onActivate: _this2.handleActivate(name),
424
+ onInput: _this2.handleInput,
425
+ onConfirm: _this2.handleConfirm(name),
426
+ onClear: onClear,
427
+ locale: locale
428
+ }));
429
+ }), this.isInTimeMode() ? /*#__PURE__*/React.createElement(DateInput, _extends({}, this.props, {
430
+ text: this.state.text,
431
+ divider: !!parsedDate,
432
+ hoverDate: null,
433
+ name: 'time',
434
+ key: 'time',
435
+ date: null,
436
+ time: time,
437
+ active: this.state.active === 'time',
416
438
  hidden: hidden,
417
- onActivate: this.handleActivate(name),
439
+ onActivate: this.handleActivate('time'),
418
440
  onInput: this.handleInput,
419
- onConfirm: this.handleConfirm(name),
420
- onClear: onClear,
441
+ onConfirm: this.handleConfirm('time'),
442
+ onClear: clearable && this.onClear || undefined,
421
443
  locale: locale
422
- }));
423
- }), this.isInTimeMode() ? /*#__PURE__*/React.createElement(DateInput, _extends({}, this.props, {
424
- text: this.state.text,
425
- divider: !!parsedDate,
426
- hoverDate: null,
427
- name: 'time',
428
- key: 'time',
429
- date: null,
430
- time: time,
431
- active: this.state.active === 'time',
432
- hidden: hidden,
433
- onActivate: this.handleActivate('time'),
434
- onInput: this.handleInput,
435
- onConfirm: this.handleConfirm('time'),
436
- onClear: clearable && this.onClear || undefined,
437
- locale: locale
438
- })) : ''), /*#__PURE__*/React.createElement(Weekdays, {
439
- locale: locale
440
- }), /*#__PURE__*/React.createElement("div", {
441
- className: modules_0c7b7d96.calendar
442
- }, /*#__PURE__*/React.createElement(Months, _extends({}, calendarProps, {
443
- onHover: this.hoverHandler,
444
- onSelect: this.selectHandler,
445
- locale: locale
446
- })), /*#__PURE__*/React.createElement(Years, calendarProps)), this.props.renderAfterCalendar && this.props.renderAfterCalendar(this.state));
447
- }
448
- }
444
+ })) : ''), /*#__PURE__*/React.createElement(Weekdays, {
445
+ locale: locale
446
+ }), /*#__PURE__*/React.createElement("div", {
447
+ className: modules_0c7b7d96.calendar
448
+ }, /*#__PURE__*/React.createElement(Months, _extends({}, calendarProps, {
449
+ onHover: this.hoverHandler,
450
+ onSelect: this.selectHandler,
451
+ locale: locale
452
+ })), /*#__PURE__*/React.createElement(Years, calendarProps)), this.props.renderAfterCalendar && this.props.renderAfterCalendar(this.state));
453
+ }
454
+ }], [{
455
+ key: "sameDay",
456
+ value: function sameDay(next, prev) {
457
+ if (next && prev) {
458
+ return isSameDay(next, prev);
459
+ }
460
+ return next === prev;
461
+ }
462
+ }]);
463
+ return DatePopup;
464
+ }(Component);
465
+ _defineProperty(DatePopup, "propTypes", {
466
+ className: PropTypes.string,
467
+ date: dateType,
468
+ range: PropTypes.bool,
469
+ withTime: PropTypes.bool,
470
+ time: PropTypes.string,
471
+ from: dateType,
472
+ to: dateType,
473
+ renderAfterCalendar: PropTypes.func,
474
+ displayFormat: PropTypes.func,
475
+ parseDateInput: PropTypes.func,
476
+ onChange: PropTypes.func,
477
+ onComplete: PropTypes.func,
478
+ onClear: PropTypes.func,
479
+ minDate: dateType,
480
+ maxDate: dateType,
481
+ hidden: PropTypes.bool,
482
+ fromPlaceholder: PropTypes.string,
483
+ toPlaceholder: PropTypes.string,
484
+ timePlaceholder: PropTypes.string,
485
+ locale: PropTypes.object
486
+ });
487
+ _defineProperty(DatePopup, "defaultProps", {
488
+ onChange: function onChange() {}
489
+ });
449
490
 
450
491
  export { DatePopup as default };