@jetbrains/ring-ui 5.0.155 → 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 (299) hide show
  1. package/components/checkbox/checkbox.css +1 -1
  2. package/components/global/variables_dark.css +2 -2
  3. package/components/radio/radio.css +1 -1
  4. package/dist/_helpers/_rollupPluginBabelHelpers.js +642 -1
  5. package/dist/_helpers/anchor.js +6 -7
  6. package/dist/_helpers/button__classes.js +16 -28
  7. package/dist/_helpers/card.js +107 -95
  8. package/dist/_helpers/dialog__body-scroll-preventer.js +20 -11
  9. package/dist/_helpers/footer.js +29 -34
  10. package/dist/_helpers/query-assist__suggestions.js +91 -74
  11. package/dist/_helpers/select__filter.js +71 -48
  12. package/dist/_helpers/services-link.js +41 -29
  13. package/dist/_helpers/sidebar.js +103 -99
  14. package/dist/_helpers/theme.js +42 -35
  15. package/dist/_helpers/title.js +71 -57
  16. package/dist/alert/alert.js +199 -158
  17. package/dist/alert/container.js +43 -32
  18. package/dist/alert-service/alert-service.js +172 -104
  19. package/dist/analytics/analytics.js +92 -68
  20. package/dist/analytics/analytics__custom-plugin.js +84 -60
  21. package/dist/analytics/analytics__fus-plugin.js +28 -15
  22. package/dist/analytics/analytics__ga-plugin.js +60 -43
  23. package/dist/analytics/analytics__plugin-utils.js +28 -22
  24. package/dist/auth/auth.js +36 -4
  25. package/dist/auth/auth__core.js +1458 -732
  26. package/dist/auth/background-flow.js +129 -87
  27. package/dist/auth/down-notification.js +75 -30
  28. package/dist/auth/iframe-flow.js +136 -75
  29. package/dist/auth/landing.js +90 -30
  30. package/dist/auth/request-builder.js +82 -46
  31. package/dist/auth/response-parser.js +119 -86
  32. package/dist/auth/storage.js +333 -171
  33. package/dist/auth/token-validator.js +244 -137
  34. package/dist/auth/window-flow.js +136 -92
  35. package/dist/auth-dialog/auth-dialog.js +176 -114
  36. package/dist/auth-dialog-service/auth-dialog-service.js +32 -7
  37. package/dist/auth-ng/auth-ng.js +70 -34
  38. package/dist/auth-ng/auth-ng.mock.js +6 -6
  39. package/dist/autofocus-ng/autofocus-ng.js +23 -8
  40. package/dist/avatar/avatar-example-datauri.js +1 -23
  41. package/dist/avatar/avatar.js +155 -119
  42. package/dist/avatar/fallback-avatar.js +41 -22
  43. package/dist/avatar-editor-ng/avatar-editor-ng.js +56 -23
  44. package/dist/avatar-editor-ng/avatar-editor-ng__template.js +1 -28
  45. package/dist/avatar-ng/avatar-ng.js +23 -1
  46. package/dist/badge/badge.js +43 -35
  47. package/dist/badge-ng/badge-ng.js +13 -1
  48. package/dist/breadcrumb-ng/breadcrumb-ng.js +15 -29
  49. package/dist/button/button.js +111 -87
  50. package/dist/button/button__classes.js +1 -0
  51. package/dist/button-group/button-group.js +35 -19
  52. package/dist/button-group/caption.js +22 -14
  53. package/dist/button-group-ng/button-group-ng.js +13 -7
  54. package/dist/button-ng/button-ng.js +154 -133
  55. package/dist/button-set/button-set.js +34 -20
  56. package/dist/button-set-ng/button-set-ng.js +2 -2
  57. package/dist/button-toolbar/button-toolbar.js +33 -19
  58. package/dist/button-toolbar-ng/button-toolbar-ng.js +5 -3
  59. package/dist/caret/caret.js +225 -188
  60. package/dist/checkbox/checkbox.js +104 -76
  61. package/dist/checkbox-ng/checkbox-ng.js +18 -27
  62. package/dist/clipboard/clipboard-fallback.js +10 -10
  63. package/dist/clipboard/clipboard.js +131 -34
  64. package/dist/code/code.js +168 -92
  65. package/dist/compiler-ng/compiler-ng.js +18 -15
  66. package/dist/confirm/confirm.js +108 -66
  67. package/dist/confirm-ng/confirm-ng.js +33 -4
  68. package/dist/confirm-service/confirm-service.js +66 -42
  69. package/dist/content-layout/content-layout.js +64 -43
  70. package/dist/content-layout/sidebar.js +1 -0
  71. package/dist/contenteditable/contenteditable.js +61 -50
  72. package/dist/control-label/control-label.js +11 -15
  73. package/dist/data-list/data-list.js +184 -128
  74. package/dist/data-list/data-list.mock.js +11 -2
  75. package/dist/data-list/item.js +174 -143
  76. package/dist/data-list/selection.js +139 -76
  77. package/dist/data-list/title.js +13 -1
  78. package/dist/data-list-ng/data-list-ng.js +31 -1
  79. package/dist/date-picker/consts.js +18 -15
  80. package/dist/date-picker/date-input.js +147 -115
  81. package/dist/date-picker/date-picker.js +285 -228
  82. package/dist/date-picker/date-popup.js +397 -356
  83. package/dist/date-picker/day.js +98 -84
  84. package/dist/date-picker/month-names.js +64 -43
  85. package/dist/date-picker/month-slider.js +74 -51
  86. package/dist/date-picker/month.js +21 -15
  87. package/dist/date-picker/months.js +48 -43
  88. package/dist/date-picker/weekdays.js +18 -12
  89. package/dist/date-picker/years.js +109 -84
  90. package/dist/dialog/dialog.js +189 -141
  91. package/dist/dialog/dialog__body-scroll-preventer.js +5 -0
  92. package/dist/dialog-ng/dialog-ng.js +401 -287
  93. package/dist/dialog-ng/dialog-ng__template.js +1 -70
  94. package/dist/docked-panel-ng/docked-panel-ng.js +33 -18
  95. package/dist/dropdown/anchor.js +10 -0
  96. package/dist/dropdown/dropdown.js +214 -182
  97. package/dist/dropdown-menu/dropdown-menu.js +102 -72
  98. package/dist/editable-heading/editable-heading.js +100 -58
  99. package/dist/error-bubble/error-bubble.js +64 -31
  100. package/dist/error-message/error-message.js +61 -38
  101. package/dist/error-message-ng/error-message-ng.js +11 -22
  102. package/dist/footer/footer.js +11 -1
  103. package/dist/footer-ng/footer-ng.js +64 -36
  104. package/dist/form-ng/form-ng.js +66 -56
  105. package/dist/global/angular-component-factory.js +76 -53
  106. package/dist/global/compose.js +10 -1
  107. package/dist/global/composeRefs.js +12 -7
  108. package/dist/global/controls-height.js +2 -2
  109. package/dist/global/create-stateful-context.js +19 -19
  110. package/dist/global/data-tests.js +15 -7
  111. package/dist/global/dom.js +95 -53
  112. package/dist/global/focus-sensor-hoc.js +134 -122
  113. package/dist/global/fuzzy-highlight.js +41 -27
  114. package/dist/global/get-event-key.js +8 -8
  115. package/dist/global/get-uid.js +8 -4
  116. package/dist/global/inject-styles.js +15 -10
  117. package/dist/global/linear-function.js +2 -2
  118. package/dist/global/listeners.js +53 -27
  119. package/dist/global/memoize.js +13 -6
  120. package/dist/global/normalize-indent.js +51 -19
  121. package/dist/global/promise-with-timeout.js +8 -6
  122. package/dist/global/prop-types.js +5 -3
  123. package/dist/global/react-dom-renderer.js +47 -28
  124. package/dist/global/react-render-adapter.js +19 -13
  125. package/dist/global/rerender-hoc.js +41 -16
  126. package/dist/global/ring-angular-component.js +20 -10
  127. package/dist/global/schedule-raf.js +6 -5
  128. package/dist/global/sniffer.js +1 -1
  129. package/dist/global/theme.js +24 -0
  130. package/dist/global/trivial-template-tag.js +10 -3
  131. package/dist/global/typescript-utils.js +6 -2
  132. package/dist/global/url.js +27 -21
  133. package/dist/global/use-event-callback.js +4 -6
  134. package/dist/grid/col.js +55 -35
  135. package/dist/grid/grid.js +36 -17
  136. package/dist/grid/row.js +48 -35
  137. package/dist/group/group.js +27 -17
  138. package/dist/group-ng/group-ng.js +2 -2
  139. package/dist/header/header.js +80 -33
  140. package/dist/header/logo.js +39 -20
  141. package/dist/header/profile.js +188 -150
  142. package/dist/header/services-link.js +9 -0
  143. package/dist/header/services.js +118 -73
  144. package/dist/header/smart-profile.js +207 -111
  145. package/dist/header/smart-services.js +115 -62
  146. package/dist/header/tray-icon.js +38 -21
  147. package/dist/header/tray.js +34 -21
  148. package/dist/heading/heading.js +25 -26
  149. package/dist/heading-ng/heading-ng.js +11 -1
  150. package/dist/http/http.js +368 -215
  151. package/dist/http/http.mock.js +104 -49
  152. package/dist/hub-source/hub-source.js +191 -83
  153. package/dist/hub-source/hub-source__user.js +45 -11
  154. package/dist/hub-source/hub-source__users-groups.js +67 -37
  155. package/dist/i18n/i18n-context.js +14 -10
  156. package/dist/i18n/i18n.js +11 -7
  157. package/dist/icon/icon.js +94 -76
  158. package/dist/icon/icon__svg.js +31 -24
  159. package/dist/icon/index.js +9 -0
  160. package/dist/icon-ng/icon-ng.js +27 -15
  161. package/dist/input/input.js +184 -145
  162. package/dist/input-ng/input-ng.js +96 -118
  163. package/dist/island/adaptive-island-hoc.js +45 -30
  164. package/dist/island/content.js +130 -115
  165. package/dist/island/header.js +69 -56
  166. package/dist/island/island.js +40 -28
  167. package/dist/island-legacy/content-legacy.js +27 -17
  168. package/dist/island-legacy/header-legacy.js +29 -19
  169. package/dist/island-legacy/island-legacy.js +27 -17
  170. package/dist/island-ng/island-content-ng.js +17 -26
  171. package/dist/island-ng/island-header-ng.js +9 -12
  172. package/dist/island-ng/island-ng-class-fixer.js +3 -0
  173. package/dist/island-ng/island-ng.js +6 -10
  174. package/dist/link/clickableLink.js +61 -44
  175. package/dist/link/link.js +85 -74
  176. package/dist/link-ng/link-ng.js +3 -5
  177. package/dist/list/consts.js +1 -1
  178. package/dist/list/list.js +696 -602
  179. package/dist/list/list__custom.js +61 -44
  180. package/dist/list/list__hint.js +21 -10
  181. package/dist/list/list__item.js +167 -129
  182. package/dist/list/list__link.js +54 -37
  183. package/dist/list/list__separator.js +24 -14
  184. package/dist/list/list__title.js +32 -22
  185. package/dist/list/list__users-groups-source.js +131 -54
  186. package/dist/loader/loader.js +78 -43
  187. package/dist/loader/loader__core.js +257 -189
  188. package/dist/loader-inline/loader-inline.js +37 -23
  189. package/dist/loader-inline-ng/loader-inline-ng.js +2 -2
  190. package/dist/loader-ng/loader-ng.js +46 -19
  191. package/dist/loader-screen/loader-screen.js +48 -25
  192. package/dist/loader-screen-ng/loader-screen-ng.js +46 -30
  193. package/dist/login-dialog/login-dialog.js +162 -111
  194. package/dist/login-dialog/service.js +35 -7
  195. package/dist/markdown/code.js +31 -9
  196. package/dist/markdown/heading.js +3 -5
  197. package/dist/markdown/link.js +13 -6
  198. package/dist/markdown/markdown.js +66 -33
  199. package/dist/message/message.js +157 -125
  200. package/dist/message-bundle-ng/message-bundle-ng.js +128 -44
  201. package/dist/old-browsers-message/old-browsers-message.js +19 -11
  202. package/dist/old-browsers-message/old-browsers-message__stop.js +8 -0
  203. package/dist/old-browsers-message/white-list.js +16 -9
  204. package/dist/pager/pager.js +275 -210
  205. package/dist/pager-ng/pager-ng.js +36 -1
  206. package/dist/panel/panel.js +27 -17
  207. package/dist/panel-ng/panel-ng.js +14 -1
  208. package/dist/permissions/permissions.js +173 -127
  209. package/dist/permissions/permissions__cache.js +225 -194
  210. package/dist/permissions-ng/permissions-ng.js +86 -35
  211. package/dist/place-under-ng/place-under-ng.js +68 -45
  212. package/dist/popup/popup.consts.js +1 -1
  213. package/dist/popup/popup.js +342 -280
  214. package/dist/popup/popup.target.js +8 -9
  215. package/dist/popup/position.js +153 -153
  216. package/dist/popup-menu/popup-menu.js +86 -44
  217. package/dist/progress-bar/progress-bar.js +97 -80
  218. package/dist/progress-bar-ng/progress-bar-ng.js +11 -1
  219. package/dist/promised-click-ng/promised-click-ng.js +92 -58
  220. package/dist/proxy-attrs/proxy-attrs.js +18 -9
  221. package/dist/query-assist/query-assist.js +903 -832
  222. package/dist/query-assist/query-assist__suggestions.js +33 -1
  223. package/dist/query-assist-ng/query-assist-ng.js +38 -1
  224. package/dist/radio/radio.js +36 -19
  225. package/dist/radio/radio__item.js +71 -52
  226. package/dist/radio-ng/radio-ng.js +14 -25
  227. package/dist/save-field-ng/save-field-ng.js +86 -52
  228. package/dist/save-field-ng/save-field-ng__template.js +1 -32
  229. package/dist/select/select.js +937 -835
  230. package/dist/select/select__filter.js +33 -0
  231. package/dist/select/select__popup.js +472 -359
  232. package/dist/select-ng/select-ng.js +125 -74
  233. package/dist/select-ng/select-ng__lazy.js +101 -50
  234. package/dist/select-ng/select-ng__options.js +107 -81
  235. package/dist/shortcuts/core.js +218 -166
  236. package/dist/shortcuts/shortcut-title.js +11 -6
  237. package/dist/shortcuts/shortcuts-hoc.js +47 -19
  238. package/dist/shortcuts/shortcuts.js +77 -50
  239. package/dist/shortcuts-hint-ng/shortcuts-hint-ng.js +104 -53
  240. package/dist/shortcuts-hint-ng/shortcuts-hint-ng__template.js +1 -48
  241. package/dist/shortcuts-ng/shortcuts-ng.js +86 -51
  242. package/dist/sidebar-ng/sidebar-ng.js +53 -22
  243. package/dist/sidebar-ng/sidebar-ng__button-template.js +1 -18
  244. package/dist/sidebar-ng/sidebar-ng__template.js +1 -10
  245. package/dist/storage/storage.js +35 -4
  246. package/dist/storage/storage__fallback.js +224 -149
  247. package/dist/storage/storage__local.js +156 -90
  248. package/dist/style.css +1 -1
  249. package/dist/tab-trap/tab-trap.js +157 -122
  250. package/dist/table/cell.js +28 -14
  251. package/dist/table/disable-hover-hoc.js +53 -33
  252. package/dist/table/header-cell.js +87 -64
  253. package/dist/table/header.js +126 -98
  254. package/dist/table/multitable.js +127 -107
  255. package/dist/table/row-with-focus-sensor.js +73 -25
  256. package/dist/table/row.js +208 -170
  257. package/dist/table/selection-adapter.js +3 -1
  258. package/dist/table/selection-shortcuts-hoc.js +184 -181
  259. package/dist/table/selection.js +228 -156
  260. package/dist/table/smart-table.js +93 -51
  261. package/dist/table/table.js +348 -281
  262. package/dist/table-legacy-ng/table-legacy-ng.js +117 -102
  263. package/dist/table-legacy-ng/table-legacy-ng__pager.js +42 -10
  264. package/dist/table-legacy-ng/table-legacy-ng__selection-navigate-actions.js +92 -69
  265. package/dist/table-legacy-ng/table-legacy-ng__selection.js +169 -119
  266. package/dist/table-legacy-ng/table-legacy-ng__toolbar.js +36 -21
  267. package/dist/table-ng/smart-table-ng.js +31 -1
  268. package/dist/table-ng/table-ng.js +31 -1
  269. package/dist/tabs/collapsible-more.js +87 -50
  270. package/dist/tabs/collapsible-tab.js +45 -38
  271. package/dist/tabs/collapsible-tabs.js +161 -94
  272. package/dist/tabs/custom-item.js +2 -4
  273. package/dist/tabs/dumb-tabs.js +122 -75
  274. package/dist/tabs/smart-tabs.js +75 -29
  275. package/dist/tabs/tab-link.js +29 -19
  276. package/dist/tabs/tab.js +33 -19
  277. package/dist/tabs/tabs.js +35 -0
  278. package/dist/tabs-ng/tabs-ng.js +38 -24
  279. package/dist/tabs-ng/tabs-ng__template.js +1 -38
  280. package/dist/tag/tag.js +170 -133
  281. package/dist/tags-input/tags-input.js +428 -327
  282. package/dist/tags-input-ng/tags-input-ng.js +37 -1
  283. package/dist/tags-list/tags-list.js +80 -56
  284. package/dist/template-ng/template-ng.js +50 -39
  285. package/dist/text/text.js +38 -28
  286. package/dist/title-ng/title-ng.js +28 -23
  287. package/dist/toggle/toggle.js +72 -56
  288. package/dist/toggle-ng/toggle-ng.js +14 -1
  289. package/dist/tooltip/tooltip.js +192 -146
  290. package/dist/tooltip-ng/tooltip-ng.js +51 -25
  291. package/dist/user-agreement/service.js +374 -227
  292. package/dist/user-agreement/toolbox.eula.js +1 -160
  293. package/dist/user-agreement/user-agreement.js +128 -86
  294. package/dist/user-card/card.js +32 -0
  295. package/dist/user-card/smart-user-card-tooltip.js +116 -51
  296. package/dist/user-card/tooltip.js +90 -48
  297. package/dist/user-card/user-card.js +32 -0
  298. package/dist/user-card-ng/user-card-ng.js +34 -2
  299. package/package.json +13 -13
@@ -1,4 +1,8 @@
1
- import { _ as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
1
+ import { c as _defineProperty, l as _slicedToArray, n as _createForOfIteratorHelper, j as _inherits, k as _createSuper, b as _classCallCheck, m as _assertThisInitialized, _ as _createClass, h as _objectWithoutProperties, i as _extends, a as _objectSpread2 } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/es.array.concat.js';
3
+ import 'core-js/modules/es.object.values.js';
4
+ import 'core-js/modules/es.array.map.js';
5
+ import 'core-js/modules/es.number.constructor.js';
2
6
  import React, { PureComponent } from 'react';
3
7
  import PropTypes from 'prop-types';
4
8
  import classNames from 'classnames';
@@ -23,18 +27,42 @@ import DatePopup from './date-popup.js';
23
27
  import { dateType } from './consts.js';
24
28
  import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
25
29
  import formats from './formats.js';
30
+ import 'core-js/modules/es.array.iterator.js';
31
+ import 'core-js/modules/es.map.js';
32
+ import 'core-js/modules/es.object.to-string.js';
33
+ import 'core-js/modules/es.string.iterator.js';
34
+ import 'core-js/modules/web.dom-collections.iterator.js';
35
+ import 'core-js/modules/es.weak-map.js';
36
+ import 'core-js/modules/web.dom-collections.for-each.js';
37
+ import 'core-js/modules/es.object.entries.js';
38
+ import 'core-js/modules/es.regexp.to-string.js';
39
+ import 'core-js/modules/es.regexp.exec.js';
40
+ import 'core-js/modules/es.string.replace.js';
26
41
  import 'react-dom';
27
42
  import '../global/get-uid.js';
28
43
  import '../global/schedule-raf.js';
29
44
  import '../global/dom.js';
45
+ import 'core-js/modules/es.object.assign.js';
46
+ import 'core-js/modules/es.array.filter.js';
47
+ import 'core-js/modules/es.string.split.js';
48
+ import 'core-js/modules/es.object.keys.js';
49
+ import 'core-js/modules/es.set.js';
30
50
  import '../shortcuts/shortcuts.js';
31
51
  import '../shortcuts/core.js';
52
+ import 'core-js/modules/es.array.includes.js';
53
+ import 'core-js/modules/es.string.includes.js';
54
+ import 'core-js/modules/es.array.slice.js';
55
+ import 'core-js/modules/es.array.splice.js';
56
+ import 'core-js/modules/es.string.match.js';
57
+ import 'core-js/modules/es.array.find-index.js';
32
58
  import 'combokeys';
33
59
  import '../global/sniffer.js';
34
60
  import 'sniffr';
35
61
  import '../global/data-tests.js';
62
+ import 'core-js/modules/es.array.reduce.js';
36
63
  import '../tab-trap/tab-trap.js';
37
64
  import '../popup/position.js';
65
+ import 'core-js/modules/es.array.sort.js';
38
66
  import '../popup/popup.consts.js';
39
67
  import '../popup/popup.target.js';
40
68
  import '../global/typescript-utils.js';
@@ -44,6 +72,7 @@ import 'util-deprecate';
44
72
  import '../icon/icon__constants.js';
45
73
  import '../_helpers/icon.js';
46
74
  import '../icon/icon__svg.js';
75
+ import 'core-js/modules/es.string.starts-with.js';
47
76
  import '../link/clickableLink.js';
48
77
  import '../global/controls-height.js';
49
78
  import '../_helpers/button__classes.js';
@@ -88,16 +117,17 @@ import 'date-fns/isThisYear';
88
117
  import 'date-fns/setYear';
89
118
  import './weekdays.js';
90
119
 
91
- const PopupComponent = _ref => {
92
- let {
93
- hidden = false,
94
- className,
95
- popupRef,
96
- onClear,
97
- datePopupProps,
98
- onComplete,
99
- ...restProps
100
- } = _ref;
120
+ var _excluded = ["hidden", "className", "popupRef", "onClear", "datePopupProps", "onComplete"],
121
+ _excluded2 = ["className", "popupClassName", "clear", "inline", "dropdownProps", "translations"];
122
+ var PopupComponent = function PopupComponent(_ref) {
123
+ var _ref$hidden = _ref.hidden,
124
+ hidden = _ref$hidden === void 0 ? false : _ref$hidden,
125
+ className = _ref.className,
126
+ popupRef = _ref.popupRef,
127
+ onClear = _ref.onClear,
128
+ datePopupProps = _ref.datePopupProps,
129
+ onComplete = _ref.onComplete,
130
+ restProps = _objectWithoutProperties(_ref, _excluded);
101
131
  return /*#__PURE__*/React.createElement(Popup, _extends({
102
132
  hidden: hidden,
103
133
  keepMounted: true,
@@ -122,232 +152,259 @@ PopupComponent.propTypes = {
122
152
  /**
123
153
  * @name Date Picker
124
154
  */
125
- class DatePicker extends PureComponent {
126
- static propTypes = {
127
- className: PropTypes.string,
128
- popupClassName: PropTypes.string,
129
- date: dateType,
130
- withTime: PropTypes.bool,
131
- range: PropTypes.bool,
132
- from: dateType,
133
- to: dateType,
134
- clear: PropTypes.bool,
135
- inline: PropTypes.bool,
136
- displayFormat: PropTypes.func,
137
- displayMonthFormat: PropTypes.func,
138
- displayDayFormat: PropTypes.func,
139
- displayTimeFormat: PropTypes.func,
140
- parseDateInput: PropTypes.func,
141
- applyTimeInput: PropTypes.func,
142
- datePlaceholder: PropTypes.string,
143
- dateTimePlaceholder: PropTypes.string,
144
- rangePlaceholder: PropTypes.string,
145
- onChange: PropTypes.func,
146
- dropdownProps: PropTypes.object,
147
- disabled: PropTypes.bool,
148
- minDate: dateType,
149
- maxDate: dateType,
150
- translations: PropTypes.object,
151
- locale: PropTypes.object,
152
- size: PropTypes.oneOf(Object.values(Size))
153
- };
154
- static defaultProps = {
155
- className: '',
156
- date: null,
157
- withTime: false,
158
- range: false,
159
- from: null,
160
- to: null,
161
- clear: false,
162
- inline: false,
163
- size: Size.M,
164
- displayFormat: (date, locale) => date ? format(date, 'd MMM yyyy', {
165
- locale
166
- }) : '',
167
- displayMonthFormat: (date, locale) => date ? format(date, 'd MMM', {
168
- locale
169
- }) : '',
170
- displayDayFormat: (date, locale) => date ? format(date, 'd', {
171
- locale
172
- }) : '',
173
- displayTimeFormat: (date, locale) => date ? format(date, 'HH:mm', {
174
- locale
175
- }) : '',
176
- minDate: null,
177
- maxDate: null,
178
- onChange() {},
179
- applyTimeInput(date, timeString) {
180
- var _timeString$split$map;
181
- const [hours, minutes] = (_timeString$split$map = timeString?.split(':').map(Number)) !== null && _timeString$split$map !== void 0 ? _timeString$split$map : [];
182
- return minutes != null ? set(date, {
183
- hours,
184
- minutes
185
- }) : date;
186
- },
187
- parseDateInput(string) {
188
- if (!string) {
189
- return null;
155
+ var DatePicker = /*#__PURE__*/function (_PureComponent) {
156
+ _inherits(DatePicker, _PureComponent);
157
+ var _super = _createSuper(DatePicker);
158
+ function DatePicker() {
159
+ var _this;
160
+ _classCallCheck(this, DatePicker);
161
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
162
+ args[_key] = arguments[_key];
163
+ }
164
+ _this = _super.call.apply(_super, [this].concat(args));
165
+ _defineProperty(_assertThisInitialized(_this), "handleChange", function (change) {
166
+ var _this$props = _this.props,
167
+ onChange = _this$props.onChange,
168
+ withTime = _this$props.withTime,
169
+ applyTimeInput = _this$props.applyTimeInput;
170
+ var adjustedChange = withTime && !(change instanceof Date) && (change === null || change === void 0 ? void 0 : change.date) != null ? applyTimeInput(change.date, change.time) : change;
171
+ onChange(adjustedChange);
172
+ });
173
+ _defineProperty(_assertThisInitialized(_this), "clear", function () {
174
+ var change = null;
175
+ if (_this.props.range) {
176
+ change = {
177
+ from: null,
178
+ to: null
179
+ };
190
180
  }
191
- const today = new Date();
192
- for (const format of formats) {
193
- const date = parse(string, format, today);
194
- if (isValid(date)) {
195
- return date;
181
+ _this.handleChange(change);
182
+ });
183
+ _defineProperty(_assertThisInitialized(_this), "popup", void 0);
184
+ _defineProperty(_assertThisInitialized(_this), "popupRef", function (el) {
185
+ _this.popup = el;
186
+ });
187
+ _defineProperty(_assertThisInitialized(_this), "closePopup", function () {
188
+ var _this$popup;
189
+ (_this$popup = _this.popup) === null || _this$popup === void 0 ? void 0 : _this$popup._onCloseAttempt();
190
+ });
191
+ _defineProperty(_assertThisInitialized(_this), "parse", memoize(function (date) {
192
+ var parseDateInput = _this.props.parseDateInput;
193
+ if (date instanceof Date) {
194
+ return date;
195
+ }
196
+ if (typeof date === 'number') {
197
+ return new Date(date);
198
+ }
199
+ return parseDateInput(date);
200
+ }));
201
+ _defineProperty(_assertThisInitialized(_this), "getAnchorText", function () {
202
+ var _this$props2 = _this.props,
203
+ range = _this$props2.range,
204
+ datePlaceholder = _this$props2.datePlaceholder,
205
+ dateTimePlaceholder = _this$props2.dateTimePlaceholder,
206
+ rangePlaceholder = _this$props2.rangePlaceholder,
207
+ withTime = _this$props2.withTime,
208
+ displayFormat = _this$props2.displayFormat,
209
+ displayMonthFormat = _this$props2.displayMonthFormat,
210
+ displayDayFormat = _this$props2.displayDayFormat,
211
+ translations = _this$props2.translations,
212
+ locale = _this$props2.locale;
213
+ var translate = _this.context.translate;
214
+ var date = _this.parse(_this.props.date);
215
+ var from = _this.parse(_this.props.from);
216
+ var to = _this.parse(_this.props.to);
217
+ var time = _this.formatTime();
218
+ if (!range && !withTime) {
219
+ var _ref2;
220
+ return date ? displayFormat(date, locale) : (_ref2 = datePlaceholder !== null && datePlaceholder !== void 0 ? datePlaceholder : translations === null || translations === void 0 ? void 0 : translations.setDate) !== null && _ref2 !== void 0 ? _ref2 : translate('setDate');
221
+ } else if (!range && withTime) {
222
+ if (!date && !time) {
223
+ var _ref3;
224
+ return (_ref3 = dateTimePlaceholder !== null && dateTimePlaceholder !== void 0 ? dateTimePlaceholder : translations === null || translations === void 0 ? void 0 : translations.setDateTime) !== null && _ref3 !== void 0 ? _ref3 : translate('setDateTime');
225
+ } else {
226
+ return "".concat(date && displayFormat(date, locale) || '—', ", ").concat(time || '—');
196
227
  }
228
+ } else if (from && to) {
229
+ if (!isSameYear(from, to)) {
230
+ return "".concat(displayFormat(from, locale), " \u2014 ").concat(displayFormat(to, locale));
231
+ } else if (!isSameMonth(from, to)) {
232
+ return "".concat(displayMonthFormat(from, locale), " \u2014 ").concat(displayFormat(to, locale));
233
+ } else if (!isSameDay(from, to)) {
234
+ return "".concat(displayDayFormat(from, locale), " \u2014 ").concat(displayFormat(to, locale));
235
+ } else {
236
+ return "".concat(displayFormat(to, locale));
237
+ }
238
+ } else if (from) {
239
+ return "".concat(displayFormat(from, locale), " \u2014");
240
+ } else if (to) {
241
+ return "\u2014 ".concat(displayFormat(to, locale));
242
+ } else {
243
+ var _ref4;
244
+ return (_ref4 = rangePlaceholder !== null && rangePlaceholder !== void 0 ? rangePlaceholder : translations === null || translations === void 0 ? void 0 : translations.setPeriod) !== null && _ref4 !== void 0 ? _ref4 : translate('setPeriod');
245
+ }
246
+ });
247
+ return _this;
248
+ }
249
+ _createClass(DatePicker, [{
250
+ key: "formatTime",
251
+ value: function formatTime() {
252
+ var _this$props3 = this.props,
253
+ displayTimeFormat = _this$props3.displayTimeFormat,
254
+ locale = _this$props3.locale;
255
+ var date = this.parse(this.props.date);
256
+ if (date != null) {
257
+ return displayTimeFormat(date, locale);
197
258
  }
198
259
  return null;
199
260
  }
200
- };
201
- static contextType = I18nContext;
202
- handleChange = change => {
203
- const {
204
- onChange,
205
- withTime,
206
- applyTimeInput
207
- } = this.props;
208
- const adjustedChange = withTime && !(change instanceof Date) && change?.date != null ? applyTimeInput(change.date, change.time) : change;
209
- onChange(adjustedChange);
210
- };
211
- clear = () => {
212
- let change = null;
213
- if (this.props.range) {
214
- change = {
215
- from: null,
216
- to: null
217
- };
218
- }
219
- this.handleChange(change);
220
- };
221
- popup;
222
- popupRef = el => {
223
- this.popup = el;
224
- };
225
- closePopup = () => {
226
- this.popup?._onCloseAttempt();
227
- };
228
- parse = memoize(date => {
229
- const {
230
- parseDateInput
231
- } = this.props;
232
- if (date instanceof Date) {
233
- return date;
261
+ }, {
262
+ key: "render",
263
+ value: function render() {
264
+ var _this$props$disabled, _this$props$disabled2;
265
+ var anchorContent = /*#__PURE__*/React.createElement("div", {
266
+ className: modules_0c7b7d96.anchorContent
267
+ }, /*#__PURE__*/React.createElement(Icon, {
268
+ glyph: calendarIcon,
269
+ className: modules_0c7b7d96.calendarIcon
270
+ }), this.getAnchorText(), /*#__PURE__*/React.createElement(Icon, {
271
+ glyph: chevronDownIcon,
272
+ className: modules_0c7b7d96.chevronDownIcon
273
+ }));
274
+ var _this$props4 = this.props,
275
+ className = _this$props4.className,
276
+ popupClassName = _this$props4.popupClassName,
277
+ clear = _this$props4.clear,
278
+ inline = _this$props4.inline,
279
+ dropdownProps = _this$props4.dropdownProps,
280
+ translations = _this$props4.translations,
281
+ datePopupProps = _objectWithoutProperties(_this$props4, _excluded2);
282
+ var classes = classNames(modules_0c7b7d96.datePicker, className, modules_0c7b7d96["size".concat(this.props.size)], _defineProperty({}, modules_0c7b7d96.inline, inline));
283
+ return /*#__PURE__*/React.createElement(Dropdown, _extends({
284
+ className: classes,
285
+ disabled: this.props.disabled,
286
+ anchor: inline ? /*#__PURE__*/React.createElement(Link, {
287
+ "data-test-ring-dropdown-anchor": true,
288
+ className: modules_0c7b7d96.anchor,
289
+ disabled: (_this$props$disabled = this.props.disabled) !== null && _this$props$disabled !== void 0 ? _this$props$disabled : false,
290
+ pseudo: true
291
+ }, this.getAnchorText()) : /*#__PURE__*/React.createElement(Button, {
292
+ "data-test-ring-dropdown-anchor": true,
293
+ className: modules_0c7b7d96.anchor,
294
+ text: false,
295
+ disabled: (_this$props$disabled2 = this.props.disabled) !== null && _this$props$disabled2 !== void 0 ? _this$props$disabled2 : false
296
+ }, anchorContent)
297
+ }, dropdownProps), /*#__PURE__*/React.createElement(PopupComponent, {
298
+ className: popupClassName,
299
+ popupRef: this.popupRef,
300
+ onClear: clear ? this.clear : null,
301
+ datePopupProps: _objectSpread2(_objectSpread2({}, datePopupProps), {}, {
302
+ translations: translations,
303
+ onChange: this.handleChange,
304
+ parseDateInput: this.parse,
305
+ time: this.formatTime()
306
+ }),
307
+ onComplete: this.closePopup
308
+ }));
234
309
  }
235
- if (typeof date === 'number') {
236
- return new Date(date);
237
- }
238
- return parseDateInput(date);
239
- });
240
- formatTime() {
241
- const {
242
- displayTimeFormat,
243
- locale
244
- } = this.props;
245
- const date = this.parse(this.props.date);
246
- if (date != null) {
247
- return displayTimeFormat(date, locale);
310
+ }]);
311
+ return DatePicker;
312
+ }(PureComponent);
313
+ _defineProperty(DatePicker, "propTypes", {
314
+ className: PropTypes.string,
315
+ popupClassName: PropTypes.string,
316
+ date: dateType,
317
+ withTime: PropTypes.bool,
318
+ range: PropTypes.bool,
319
+ from: dateType,
320
+ to: dateType,
321
+ clear: PropTypes.bool,
322
+ inline: PropTypes.bool,
323
+ displayFormat: PropTypes.func,
324
+ displayMonthFormat: PropTypes.func,
325
+ displayDayFormat: PropTypes.func,
326
+ displayTimeFormat: PropTypes.func,
327
+ parseDateInput: PropTypes.func,
328
+ applyTimeInput: PropTypes.func,
329
+ datePlaceholder: PropTypes.string,
330
+ dateTimePlaceholder: PropTypes.string,
331
+ rangePlaceholder: PropTypes.string,
332
+ onChange: PropTypes.func,
333
+ dropdownProps: PropTypes.object,
334
+ disabled: PropTypes.bool,
335
+ minDate: dateType,
336
+ maxDate: dateType,
337
+ translations: PropTypes.object,
338
+ locale: PropTypes.object,
339
+ size: PropTypes.oneOf(Object.values(Size))
340
+ });
341
+ _defineProperty(DatePicker, "defaultProps", {
342
+ className: '',
343
+ date: null,
344
+ withTime: false,
345
+ range: false,
346
+ from: null,
347
+ to: null,
348
+ clear: false,
349
+ inline: false,
350
+ size: Size.M,
351
+ displayFormat: function displayFormat(date, locale) {
352
+ return date ? format(date, 'd MMM yyyy', {
353
+ locale: locale
354
+ }) : '';
355
+ },
356
+ displayMonthFormat: function displayMonthFormat(date, locale) {
357
+ return date ? format(date, 'd MMM', {
358
+ locale: locale
359
+ }) : '';
360
+ },
361
+ displayDayFormat: function displayDayFormat(date, locale) {
362
+ return date ? format(date, 'd', {
363
+ locale: locale
364
+ }) : '';
365
+ },
366
+ displayTimeFormat: function displayTimeFormat(date, locale) {
367
+ return date ? format(date, 'HH:mm', {
368
+ locale: locale
369
+ }) : '';
370
+ },
371
+ minDate: null,
372
+ maxDate: null,
373
+ onChange: function onChange() {},
374
+ applyTimeInput: function applyTimeInput(date, timeString) {
375
+ var _timeString$split$map;
376
+ var _ref5 = (_timeString$split$map = timeString === null || timeString === void 0 ? void 0 : timeString.split(':').map(Number)) !== null && _timeString$split$map !== void 0 ? _timeString$split$map : [],
377
+ _ref6 = _slicedToArray(_ref5, 2),
378
+ hours = _ref6[0],
379
+ minutes = _ref6[1];
380
+ return minutes != null ? set(date, {
381
+ hours: hours,
382
+ minutes: minutes
383
+ }) : date;
384
+ },
385
+ parseDateInput: function parseDateInput(string) {
386
+ if (!string) {
387
+ return null;
248
388
  }
249
- return null;
250
- }
251
- getAnchorText = () => {
252
- const {
253
- range,
254
- datePlaceholder,
255
- dateTimePlaceholder,
256
- rangePlaceholder,
257
- withTime,
258
- displayFormat,
259
- displayMonthFormat,
260
- displayDayFormat,
261
- translations,
262
- locale
263
- } = this.props;
264
- const {
265
- translate
266
- } = this.context;
267
- const date = this.parse(this.props.date);
268
- const from = this.parse(this.props.from);
269
- const to = this.parse(this.props.to);
270
- const time = this.formatTime();
271
- if (!range && !withTime) {
272
- var _ref2;
273
- return date ? displayFormat(date, locale) : (_ref2 = datePlaceholder !== null && datePlaceholder !== void 0 ? datePlaceholder : translations?.setDate) !== null && _ref2 !== void 0 ? _ref2 : translate('setDate');
274
- } else if (!range && withTime) {
275
- if (!date && !time) {
276
- var _ref3;
277
- return (_ref3 = dateTimePlaceholder !== null && dateTimePlaceholder !== void 0 ? dateTimePlaceholder : translations?.setDateTime) !== null && _ref3 !== void 0 ? _ref3 : translate('setDateTime');
278
- } else {
279
- return `${date && displayFormat(date, locale) || '—'}, ${time || '—'}`;
280
- }
281
- } else if (from && to) {
282
- if (!isSameYear(from, to)) {
283
- return `${displayFormat(from, locale)} — ${displayFormat(to, locale)}`;
284
- } else if (!isSameMonth(from, to)) {
285
- return `${displayMonthFormat(from, locale)} — ${displayFormat(to, locale)}`;
286
- } else if (!isSameDay(from, to)) {
287
- return `${displayDayFormat(from, locale)} — ${displayFormat(to, locale)}`;
288
- } else {
289
- return `${displayFormat(to, locale)}`;
389
+ var today = new Date();
390
+ var _iterator = _createForOfIteratorHelper(formats),
391
+ _step;
392
+ try {
393
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
394
+ var format = _step.value;
395
+ var date = parse(string, format, today);
396
+ if (isValid(date)) {
397
+ return date;
398
+ }
290
399
  }
291
- } else if (from) {
292
- return `${displayFormat(from, locale)} —`;
293
- } else if (to) {
294
- return `— ${displayFormat(to, locale)}`;
295
- } else {
296
- var _ref4;
297
- return (_ref4 = rangePlaceholder !== null && rangePlaceholder !== void 0 ? rangePlaceholder : translations?.setPeriod) !== null && _ref4 !== void 0 ? _ref4 : translate('setPeriod');
400
+ } catch (err) {
401
+ _iterator.e(err);
402
+ } finally {
403
+ _iterator.f();
298
404
  }
299
- };
300
- render() {
301
- var _this$props$disabled, _this$props$disabled2;
302
- const anchorContent = /*#__PURE__*/React.createElement("div", {
303
- className: modules_0c7b7d96.anchorContent
304
- }, /*#__PURE__*/React.createElement(Icon, {
305
- glyph: calendarIcon,
306
- className: modules_0c7b7d96.calendarIcon
307
- }), this.getAnchorText(), /*#__PURE__*/React.createElement(Icon, {
308
- glyph: chevronDownIcon,
309
- className: modules_0c7b7d96.chevronDownIcon
310
- }));
311
- const {
312
- className,
313
- popupClassName,
314
- clear,
315
- inline,
316
- dropdownProps,
317
- translations,
318
- ...datePopupProps
319
- } = this.props;
320
- const classes = classNames(modules_0c7b7d96.datePicker, className, modules_0c7b7d96[`size${this.props.size}`], {
321
- [modules_0c7b7d96.inline]: inline
322
- });
323
- return /*#__PURE__*/React.createElement(Dropdown, _extends({
324
- className: classes,
325
- disabled: this.props.disabled,
326
- anchor: inline ? /*#__PURE__*/React.createElement(Link, {
327
- "data-test-ring-dropdown-anchor": true,
328
- className: modules_0c7b7d96.anchor,
329
- disabled: (_this$props$disabled = this.props.disabled) !== null && _this$props$disabled !== void 0 ? _this$props$disabled : false,
330
- pseudo: true
331
- }, this.getAnchorText()) : /*#__PURE__*/React.createElement(Button, {
332
- "data-test-ring-dropdown-anchor": true,
333
- className: modules_0c7b7d96.anchor,
334
- text: false,
335
- disabled: (_this$props$disabled2 = this.props.disabled) !== null && _this$props$disabled2 !== void 0 ? _this$props$disabled2 : false
336
- }, anchorContent)
337
- }, dropdownProps), /*#__PURE__*/React.createElement(PopupComponent, {
338
- className: popupClassName,
339
- popupRef: this.popupRef,
340
- onClear: clear ? this.clear : null,
341
- datePopupProps: {
342
- ...datePopupProps,
343
- translations,
344
- onChange: this.handleChange,
345
- parseDateInput: this.parse,
346
- time: this.formatTime()
347
- },
348
- onComplete: this.closePopup
349
- }));
405
+ return null;
350
406
  }
351
- }
407
+ });
408
+ _defineProperty(DatePicker, "contextType", I18nContext);
352
409
 
353
410
  export { DatePicker as default };