@jetbrains/ring-ui-built 7.0.0-beta.1 → 7.0.0-beta.3

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 (241) hide show
  1. package/components/_helpers/_rollupPluginBabelHelpers.js +1 -504
  2. package/components/_helpers/anchor.js +7 -5
  3. package/components/_helpers/button__classes.js +15 -13
  4. package/components/_helpers/caption.js +11 -17
  5. package/components/_helpers/card.js +92 -96
  6. package/components/_helpers/dialog__body-scroll-preventer.js +10 -17
  7. package/components/_helpers/header.js +1 -1
  8. package/components/_helpers/icon__svg.js +27 -23
  9. package/components/_helpers/input.js +150 -171
  10. package/components/_helpers/query-assist__suggestions.js +78 -93
  11. package/components/_helpers/select__filter.js +56 -67
  12. package/components/_helpers/services-link.js +23 -29
  13. package/components/_helpers/sidebar.js +91 -93
  14. package/components/_helpers/tab-link.js +8 -6
  15. package/components/_helpers/theme.js +55 -51
  16. package/components/_helpers/title.js +59 -69
  17. package/components/alert/alert.js +112 -156
  18. package/components/alert/container.js +32 -39
  19. package/components/alert-service/alert-service.js +104 -161
  20. package/components/analytics/analytics.js +12 -20
  21. package/components/analytics/analytics__custom-plugin.js +52 -68
  22. package/components/auth/auth.js +2 -27
  23. package/components/auth/auth__core.d.ts +1 -1
  24. package/components/auth/auth__core.js +742 -1428
  25. package/components/auth/background-flow.js +84 -121
  26. package/components/auth/down-notification.js +31 -69
  27. package/components/auth/iframe-flow.js +70 -123
  28. package/components/auth/request-builder.js +46 -77
  29. package/components/auth/response-parser.js +84 -112
  30. package/components/auth/storage.js +160 -318
  31. package/components/auth/token-validator.js +132 -227
  32. package/components/auth/window-flow.js +84 -121
  33. package/components/auth-dialog/auth-dialog.js +99 -150
  34. package/components/auth-dialog-service/auth-dialog-service.js +6 -26
  35. package/components/avatar/avatar-example-datauri.js +1 -1
  36. package/components/avatar/avatar.js +94 -123
  37. package/components/avatar/fallback-avatar.js +20 -34
  38. package/components/badge/badge.js +32 -38
  39. package/components/breadcrumbs/breadcrumbs.js +13 -17
  40. package/components/button/button.js +67 -80
  41. package/components/button-group/button-group.js +27 -36
  42. package/components/button-set/button-set.js +19 -27
  43. package/components/button-toolbar/button-toolbar.js +17 -25
  44. package/components/caret/caret.js +184 -211
  45. package/components/checkbox/checkbox.js +69 -86
  46. package/components/clipboard/clipboard-fallback.js +7 -7
  47. package/components/clipboard/clipboard.js +36 -128
  48. package/components/code/code.js +83 -151
  49. package/components/collapse/collapse-content.js +42 -60
  50. package/components/collapse/collapse-context.js +2 -2
  51. package/components/collapse/collapse-control.js +12 -12
  52. package/components/collapse/collapse.js +12 -17
  53. package/components/collapse/consts.js +4 -4
  54. package/components/collapse/utils.js +1 -3
  55. package/components/confirm/confirm.js +57 -87
  56. package/components/confirm-service/confirm-service.js +23 -44
  57. package/components/content-layout/content-layout.js +41 -56
  58. package/components/content-layout/sidebar.js +1 -1
  59. package/components/contenteditable/contenteditable.js +38 -46
  60. package/components/control-help/control-help.js +5 -3
  61. package/components/control-label/control-label.js +9 -8
  62. package/components/data-list/data-list.js +113 -156
  63. package/components/data-list/data-list.mock.js +3 -5
  64. package/components/data-list/item.js +120 -140
  65. package/components/data-list/selection.js +77 -135
  66. package/components/data-list/title.js +2 -10
  67. package/components/date-picker/consts.js +16 -22
  68. package/components/date-picker/date-input.js +99 -124
  69. package/components/date-picker/date-picker.js +140 -184
  70. package/components/date-picker/date-popup.js +280 -327
  71. package/components/date-picker/day.js +71 -94
  72. package/components/date-picker/month-names.js +41 -59
  73. package/components/date-picker/month-slider.js +42 -61
  74. package/components/date-picker/month.js +17 -24
  75. package/components/date-picker/months.js +44 -49
  76. package/components/date-picker/weekdays.js +12 -21
  77. package/components/date-picker/years.js +77 -98
  78. package/components/dialog/dialog.js +151 -187
  79. package/components/dialog/dialog__body-scroll-preventer.js +0 -3
  80. package/components/dropdown/anchor.js +0 -6
  81. package/components/dropdown/dropdown.js +134 -154
  82. package/components/dropdown-menu/dropdown-menu.js +59 -87
  83. package/components/editable-heading/editable-heading.js +69 -116
  84. package/components/error-bubble/error-bubble.js +29 -54
  85. package/components/error-message/error-message.js +34 -49
  86. package/components/footer/footer.js +27 -28
  87. package/components/global/compose.js +1 -8
  88. package/components/global/composeRefs.d.ts +0 -3
  89. package/components/global/composeRefs.js +8 -15
  90. package/components/global/controls-height.js +2 -2
  91. package/components/global/create-stateful-context.js +14 -13
  92. package/components/global/data-tests.js +7 -12
  93. package/components/global/dom.js +49 -82
  94. package/components/global/focus-sensor-hoc.js +99 -106
  95. package/components/global/fuzzy-highlight.js +23 -34
  96. package/components/global/get-event-key.js +8 -8
  97. package/components/global/get-uid.js +3 -7
  98. package/components/global/inject-styles.js +7 -14
  99. package/components/global/listeners.js +28 -47
  100. package/components/global/memoize.js +6 -10
  101. package/components/global/normalize-indent.js +19 -46
  102. package/components/global/promise-with-timeout.js +6 -8
  103. package/components/global/prop-types.js +3 -5
  104. package/components/global/react-dom-renderer.js +29 -40
  105. package/components/global/rerender-hoc.js +16 -32
  106. package/components/global/schedule-raf.js +4 -4
  107. package/components/global/sniffer.js +1 -1
  108. package/components/global/theme.d.ts +3 -0
  109. package/components/global/theme.js +2 -19
  110. package/components/global/trivial-template-tag.js +4 -9
  111. package/components/global/typescript-utils.js +2 -6
  112. package/components/global/url.js +20 -23
  113. package/components/global/use-event-callback.js +7 -4
  114. package/components/grid/col.js +27 -39
  115. package/components/grid/grid.js +18 -27
  116. package/components/grid/row.js +23 -30
  117. package/components/group/group.js +16 -22
  118. package/components/header/header-icon.js +19 -31
  119. package/components/header/header.d.ts +0 -1
  120. package/components/header/header.js +30 -64
  121. package/components/header/links.d.ts +2 -0
  122. package/components/header/links.js +20 -0
  123. package/components/header/logo.js +15 -26
  124. package/components/header/profile.js +124 -150
  125. package/components/header/services-link.js +1 -3
  126. package/components/header/services.js +64 -97
  127. package/components/header/smart-profile.js +101 -178
  128. package/components/header/smart-services.js +55 -90
  129. package/components/header/tray.js +21 -30
  130. package/components/heading/heading.js +21 -20
  131. package/components/http/http.js +162 -319
  132. package/components/http/http.mock.js +50 -98
  133. package/components/hub-source/hub-source.js +77 -182
  134. package/components/hub-source/hub-source__user.js +9 -37
  135. package/components/hub-source/hub-source__users-groups.js +34 -60
  136. package/components/i18n/i18n-context.js +7 -8
  137. package/components/i18n/i18n.js +3 -6
  138. package/components/icon/icon.js +60 -74
  139. package/components/icon/icon__svg.js +0 -5
  140. package/components/icon/index.js +0 -5
  141. package/components/input/input.js +1 -11
  142. package/components/island/adaptive-island-hoc.js +29 -37
  143. package/components/island/content.js +100 -110
  144. package/components/island/header.js +56 -66
  145. package/components/island/island.js +25 -33
  146. package/components/island-legacy/content-legacy.js +16 -22
  147. package/components/island-legacy/header-legacy.js +19 -25
  148. package/components/island-legacy/island-legacy.js +16 -22
  149. package/components/link/clickableLink.js +33 -42
  150. package/components/link/link.js +47 -55
  151. package/components/list/consts.js +2 -2
  152. package/components/list/list.js +399 -486
  153. package/components/list/list__custom.js +51 -61
  154. package/components/list/list__hint.js +9 -17
  155. package/components/list/list__item.js +147 -178
  156. package/components/list/list__link.js +38 -47
  157. package/components/list/list__separator.js +15 -24
  158. package/components/list/list__title.js +25 -34
  159. package/components/list/list__users-groups-source.js +55 -121
  160. package/components/loader/loader.js +38 -60
  161. package/components/loader/loader__core.js +123 -184
  162. package/components/loader-inline/loader-inline.js +24 -32
  163. package/components/loader-screen/loader-screen.js +24 -40
  164. package/components/login-dialog/login-dialog.js +81 -121
  165. package/components/login-dialog/service.js +6 -29
  166. package/components/markdown/markdown.js +16 -24
  167. package/components/message/message.js +170 -201
  168. package/components/old-browsers-message/old-browsers-message.js +11 -14
  169. package/components/old-browsers-message/old-browsers-message__stop.js +1 -4
  170. package/components/old-browsers-message/white-list.js +8 -13
  171. package/components/pager/pager.js +212 -257
  172. package/components/panel/panel.js +16 -22
  173. package/components/permissions/permissions.js +118 -161
  174. package/components/permissions/permissions__cache.js +191 -218
  175. package/components/popup/popup.consts.js +1 -1
  176. package/components/popup/popup.js +237 -288
  177. package/components/popup/popup.target.js +9 -7
  178. package/components/popup/position.js +94 -101
  179. package/components/popup-menu/popup-menu.js +33 -67
  180. package/components/progress-bar/progress-bar.js +57 -68
  181. package/components/query-assist/query-assist.js +583 -652
  182. package/components/query-assist/query-assist__suggestions.js +2 -26
  183. package/components/radio/radio.js +15 -27
  184. package/components/radio/radio__item.js +52 -62
  185. package/components/scrollable-section/scrollable-section.js +53 -0
  186. package/components/select/select.js +701 -796
  187. package/components/select/select__filter.js +1 -26
  188. package/components/select/select__popup.js +316 -413
  189. package/components/shortcuts/core.js +147 -195
  190. package/components/shortcuts/shortcut-title.js +6 -10
  191. package/components/shortcuts/shortcuts-hoc.js +23 -41
  192. package/components/shortcuts/shortcuts.js +41 -64
  193. package/components/slider/slider.js +93 -112
  194. package/components/slider/slider.utils.js +16 -23
  195. package/components/storage/storage.js +3 -27
  196. package/components/storage/storage__fallback.js +137 -210
  197. package/components/storage/storage__local.js +89 -147
  198. package/components/style.css +1 -1
  199. package/components/tab-trap/tab-trap.js +35 -53
  200. package/components/table/cell.js +11 -21
  201. package/components/table/disable-hover-hoc.js +27 -42
  202. package/components/table/header-cell.js +59 -75
  203. package/components/table/header.js +89 -110
  204. package/components/table/multitable.js +83 -89
  205. package/components/table/row-with-focus-sensor.js +25 -57
  206. package/components/table/row.js +169 -200
  207. package/components/table/selection-adapter.js +2 -2
  208. package/components/table/selection-shortcuts-hoc.js +108 -113
  209. package/components/table/selection.js +150 -217
  210. package/components/table/simple-table.js +19 -55
  211. package/components/table/smart-table.js +42 -76
  212. package/components/table/table.js +267 -327
  213. package/components/tabs/collapsible-more.js +47 -73
  214. package/components/tabs/collapsible-tab.js +32 -36
  215. package/components/tabs/collapsible-tabs.js +89 -148
  216. package/components/tabs/custom-item.js +4 -2
  217. package/components/tabs/dumb-tabs.js +60 -92
  218. package/components/tabs/smart-tabs.js +29 -61
  219. package/components/tabs/tab-link.js +1 -3
  220. package/components/tabs/tab.js +15 -24
  221. package/components/tabs/tabs.js +1 -26
  222. package/components/tag/tag.d.ts +0 -2
  223. package/components/tag/tag.js +120 -162
  224. package/components/tags-input/tags-input.js +222 -304
  225. package/components/tags-list/tags-list.js +45 -61
  226. package/components/text/text.js +28 -37
  227. package/components/toggle/toggle.js +51 -61
  228. package/components/tooltip/tooltip.js +109 -141
  229. package/components/user-agreement/service.js +259 -400
  230. package/components/user-agreement/user-agreement.js +80 -108
  231. package/components/user-card/card.js +1 -25
  232. package/components/user-card/smart-user-card-tooltip.js +52 -103
  233. package/components/user-card/tooltip.js +35 -65
  234. package/components/user-card/user-card.js +1 -25
  235. package/package.json +1 -1
  236. package/components/global/react-render-adapter.d.ts +0 -1
  237. package/components/global/react-render-adapter.js +0 -6
  238. package/components/header/scrollable-section.js +0 -47
  239. package/components/header/tray-icon.d.ts +0 -1
  240. package/components/header/tray-icon.js +0 -26
  241. /package/components/{header → scrollable-section}/scrollable-section.d.ts +0 -0
@@ -1,5 +1,4 @@
1
- import { d as _objectSpread2 } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import 'core-js/modules/es.array.map.js';
1
+ import { b as _objectSpread2 } from '../_helpers/_rollupPluginBabelHelpers.js';
3
2
  import { useMemo, useRef, useEffect, createElement } from 'react';
4
3
  import PropTypes from 'prop-types';
5
4
  import { addMonths } from 'date-fns/addMonths';
@@ -16,15 +15,11 @@ import MonthNames from './month-names.js';
16
15
  import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
17
16
  import units, { dateType, DOUBLE, HALF, WEEK, weekdays } from './consts.js';
18
17
  import { jsxs, jsx } from 'react/jsx-runtime';
19
- import 'core-js/modules/es.object.values.js';
18
+ import 'core-js/modules/web.dom-collections.iterator.js';
20
19
  import 'date-fns/addDays';
21
20
  import 'date-fns/format';
22
21
  import 'date-fns/setDay';
23
22
  import './day.js';
24
- import 'core-js/modules/es.array.concat.js';
25
- import 'core-js/modules/es.array.includes.js';
26
- import 'core-js/modules/es.object.to-string.js';
27
- import 'core-js/modules/es.string.includes.js';
28
23
  import 'classnames';
29
24
  import 'date-fns/getDate';
30
25
  import 'date-fns/isAfter';
@@ -38,57 +33,59 @@ import 'date-fns/startOfYear';
38
33
  import './month-slider.js';
39
34
  import 'date-fns/addYears';
40
35
  import 'date-fns/subYears';
41
- import 'core-js/modules/es.array.index-of.js';
42
- import 'core-js/modules/es.array.slice.js';
43
36
  import 'core-js/modules/es.regexp.exec.js';
44
37
  import 'date-fns/add';
45
38
 
46
- var unit = units.unit,
47
- cellSize = units.cellSize,
48
- calHeight = units.calHeight;
49
- var FridayToSunday = WEEK + weekdays.SU - weekdays.FR;
50
- var FIVELINES = 31;
51
- var TALLMONTH = 6;
52
- var SHORTMONTH = 5;
53
- var PADDING = 2;
54
- var MONTHSBACK = 2;
39
+ const {
40
+ unit,
41
+ cellSize,
42
+ calHeight
43
+ } = units;
44
+ const FridayToSunday = WEEK + weekdays.SU - weekdays.FR;
45
+ const FIVELINES = 31;
46
+ const TALLMONTH = 6;
47
+ const SHORTMONTH = 5;
48
+ const PADDING = 2;
49
+ const MONTHSBACK = 2;
55
50
  function monthHeight(date) {
56
- var monthStart = startOfMonth(date);
57
- var daysSinceLastFriday = (getDay(monthStart) + FridayToSunday) % WEEK;
58
- var monthLines = daysSinceLastFriday + getDaysInMonth(monthStart) > FIVELINES ? TALLMONTH : SHORTMONTH;
51
+ const monthStart = startOfMonth(date);
52
+ const daysSinceLastFriday = (getDay(monthStart) + FridayToSunday) % WEEK;
53
+ const monthLines = daysSinceLastFriday + getDaysInMonth(monthStart) > FIVELINES ? TALLMONTH : SHORTMONTH;
59
54
  return monthLines * cellSize + unit * PADDING;
60
55
  }
61
56
  // in milliseconds per pixel
62
57
  function scrollSpeed(date) {
63
- var monthStart = startOfMonth(date);
64
- var monthEnd = endOfMonth(date);
58
+ const monthStart = startOfMonth(date);
59
+ const monthEnd = endOfMonth(date);
65
60
  return (Number(monthEnd) - Number(monthStart)) / monthHeight(monthStart);
66
61
  }
67
- var scrollSchedule = scheduleRAF();
68
- var dy = 0;
62
+ const scrollSchedule = scheduleRAF();
63
+ let dy = 0;
69
64
  function Months(props) {
70
- var scrollDate = props.scrollDate;
71
- var monthDate = scrollDate instanceof Date ? scrollDate : new Date(scrollDate);
72
- var monthStart = startOfMonth(monthDate);
73
- var months = useMemo(function () {
74
- var month = subMonths(monthStart, MONTHSBACK);
75
- var result = [month];
76
- for (var i = 0; i < MONTHSBACK * DOUBLE; i++) {
65
+ const {
66
+ scrollDate
67
+ } = props;
68
+ const monthDate = scrollDate instanceof Date ? scrollDate : new Date(scrollDate);
69
+ const monthStart = startOfMonth(monthDate);
70
+ const months = useMemo(() => {
71
+ let month = subMonths(monthStart, MONTHSBACK);
72
+ const result = [month];
73
+ for (let i = 0; i < MONTHSBACK * DOUBLE; i++) {
77
74
  month = addMonths(month, 1);
78
75
  result.push(month);
79
76
  }
80
77
  return result;
81
78
  }, [monthStart]);
82
- var currentSpeed = scrollSpeed(scrollDate);
83
- var pxToDate = linearFunction(0, Number(scrollDate), currentSpeed);
84
- var offset = pxToDate.x(Number(monthStart)); // is a negative number
85
- var bottomOffset = monthHeight(scrollDate) + offset;
86
- var componentRef = useRef(null);
87
- var handleWheel = useEventCallback(function (e) {
79
+ const currentSpeed = scrollSpeed(scrollDate);
80
+ const pxToDate = linearFunction(0, Number(scrollDate), currentSpeed);
81
+ const offset = pxToDate.x(Number(monthStart)); // is a negative number
82
+ const bottomOffset = monthHeight(scrollDate) + offset;
83
+ const componentRef = useRef(null);
84
+ const handleWheel = useEventCallback(e => {
88
85
  e.preventDefault();
89
86
  dy += e.deltaY;
90
- scrollSchedule(function () {
91
- var date;
87
+ scrollSchedule(() => {
88
+ let date;
92
89
  // adjust scroll speed to prevent glitches
93
90
  if (dy < offset) {
94
91
  date = pxToDate.y(offset) + (dy - offset) * scrollSpeed(months[1]);
@@ -101,14 +98,14 @@ function Months(props) {
101
98
  dy = 0;
102
99
  });
103
100
  });
104
- useEffect(function () {
105
- var current = componentRef.current;
101
+ useEffect(() => {
102
+ const current = componentRef.current;
106
103
  if (current !== null) {
107
104
  current.addEventListener('wheel', handleWheel, {
108
105
  passive: false
109
106
  });
110
107
  }
111
- return function () {
108
+ return () => {
112
109
  if (current !== null) {
113
110
  current.removeEventListener('wheel', handleWheel);
114
111
  }
@@ -122,12 +119,10 @@ function Months(props) {
122
119
  top: Math.floor(calHeight * HALF - monthHeight(months[0]) - monthHeight(months[1]) + offset)
123
120
  },
124
121
  className: modules_0c7b7d96.days,
125
- children: months.map(function (date) {
126
- return /*#__PURE__*/createElement(Month, _objectSpread2(_objectSpread2({}, props), {}, {
127
- month: date,
128
- key: +date
129
- }));
130
- })
122
+ children: months.map(date => /*#__PURE__*/createElement(Month, _objectSpread2(_objectSpread2({}, props), {}, {
123
+ month: date,
124
+ key: +date
125
+ })))
131
126
  }), /*#__PURE__*/jsx(MonthNames, _objectSpread2({}, props))]
132
127
  });
133
128
  }
@@ -1,7 +1,3 @@
1
- import 'core-js/modules/es.array.includes.js';
2
- import 'core-js/modules/es.array.map.js';
3
- import 'core-js/modules/es.object.values.js';
4
- import 'core-js/modules/es.string.includes.js';
5
1
  import classNames from 'classnames';
6
2
  import { getDay } from 'date-fns/getDay';
7
3
  import { format } from 'date-fns/format';
@@ -11,29 +7,24 @@ import PropTypes from 'prop-types';
11
7
  import { shiftWeekArray, getWeekStartsOn, weekdays } from './consts.js';
12
8
  import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
13
9
  import { jsx } from 'react/jsx-runtime';
14
- import 'core-js/modules/es.array.concat.js';
15
- import 'core-js/modules/es.array.index-of.js';
16
- import 'core-js/modules/es.array.slice.js';
17
10
  import 'core-js/modules/es.regexp.exec.js';
18
11
  import 'date-fns/add';
19
12
 
20
13
  function Weekdays(props) {
21
- var days = shiftWeekArray(Object.values(weekdays), getWeekStartsOn(props.locale)).map(function (value) {
22
- return startOfDay(setDay(new Date(), value));
23
- });
24
- var locale = props.locale;
14
+ const days = shiftWeekArray(Object.values(weekdays), getWeekStartsOn(props.locale)).map(value => startOfDay(setDay(new Date(), value)));
15
+ const {
16
+ locale
17
+ } = props;
25
18
  return /*#__PURE__*/jsx("div", {
26
19
  className: modules_0c7b7d96.weekdays,
27
- children: days.map(function (day) {
28
- return /*#__PURE__*/jsx("span", {
29
- className: classNames(modules_0c7b7d96.weekday, {
30
- [modules_0c7b7d96.weekend]: [weekdays.SA, weekdays.SU].includes(getDay(day))
31
- }),
32
- children: format(day, 'EEEEEE', {
33
- locale
34
- })
35
- }, +day);
36
- })
20
+ children: days.map(day => /*#__PURE__*/jsx("span", {
21
+ className: classNames(modules_0c7b7d96.weekday, {
22
+ [modules_0c7b7d96.weekend]: [weekdays.SA, weekdays.SU].includes(getDay(day))
23
+ }),
24
+ children: format(day, 'EEEEEE', {
25
+ locale
26
+ })
27
+ }, +day))
37
28
  });
38
29
  }
39
30
  Weekdays.propTypes = {
@@ -1,6 +1,5 @@
1
- import { _ as _defineProperty, a as _inherits, b as _createClass, e as _classCallCheck, f as _callSuper } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import 'core-js/modules/es.array.concat.js';
3
- import 'core-js/modules/es.array.map.js';
1
+ import { _ as _defineProperty } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/web.dom-collections.iterator.js';
4
3
  import { PureComponent, createRef } from 'react';
5
4
  import PropTypes from 'prop-types';
6
5
  import classNames from 'classnames';
@@ -14,120 +13,100 @@ import { startOfYear } from 'date-fns/startOfYear';
14
13
  import { subYears } from 'date-fns/subYears';
15
14
  import linearFunction from '../global/linear-function.js';
16
15
  import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
17
- import units, { dateType, DOUBLE, HALF, yearDuration } from './consts.js';
16
+ import units, { dateType, yearDuration, DOUBLE, HALF } from './consts.js';
18
17
  import { jsx } from 'react/jsx-runtime';
19
- import 'core-js/modules/es.array.index-of.js';
20
- import 'core-js/modules/es.array.slice.js';
21
- import 'core-js/modules/es.object.values.js';
22
18
  import 'core-js/modules/es.regexp.exec.js';
23
19
  import 'date-fns/add';
24
20
 
25
- var yearHeight = units.yearHeight,
26
- calHeight = units.calHeight;
27
- var scrollTO;
28
- var YEARSBACK = 5;
29
- var scrollDelay = 100;
30
- var Years = /*#__PURE__*/function (_PureComponent) {
31
- function Years() {
32
- var _this;
33
- _classCallCheck(this, Years);
34
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
35
- args[_key] = arguments[_key];
36
- }
37
- _this = _callSuper(this, Years, [].concat(args));
38
- _defineProperty(_this, "state", {
21
+ const {
22
+ yearHeight,
23
+ calHeight
24
+ } = units;
25
+ let scrollTO;
26
+ const YEARSBACK = 5;
27
+ const scrollDelay = 100;
28
+ class Years extends PureComponent {
29
+ constructor() {
30
+ super(...arguments);
31
+ _defineProperty(this, "state", {
39
32
  scrollDate: null
40
33
  });
41
- _defineProperty(_this, "stoppedScrolling", void 0);
42
- _defineProperty(_this, "componentRef", /*#__PURE__*/createRef());
43
- _defineProperty(_this, "handleWheel", function (e) {
44
- var scrollDate = _this.props.scrollDate;
45
- var date = _this.state.scrollDate || scrollDate;
34
+ _defineProperty(this, "stoppedScrolling", void 0);
35
+ _defineProperty(this, "componentRef", /*#__PURE__*/createRef());
36
+ _defineProperty(this, "handleWheel", e => {
37
+ const {
38
+ scrollDate
39
+ } = this.props;
40
+ const date = this.state.scrollDate || scrollDate;
46
41
  e.preventDefault();
47
- var newScrollDate = linearFunction(0, Number(date), yearDuration / yearHeight).y(e.deltaY);
48
- _this.setState({
42
+ const newScrollDate = linearFunction(0, Number(date), yearDuration / yearHeight).y(e.deltaY);
43
+ this.setState({
49
44
  scrollDate: newScrollDate
50
45
  });
51
46
  if (scrollTO) {
52
47
  window.clearTimeout(scrollTO);
53
48
  }
54
- scrollTO = window.setTimeout(function () {
55
- return _this.setYear(newScrollDate);
56
- }, scrollDelay);
49
+ scrollTO = window.setTimeout(() => this.setYear(newScrollDate), scrollDelay);
57
50
  });
58
- return _this;
59
51
  }
60
- _inherits(Years, _PureComponent);
61
- return _createClass(Years, [{
62
- key: "componentDidMount",
63
- value: function componentDidMount() {
64
- if (this.componentRef.current) {
65
- this.componentRef.current.addEventListener('wheel', this.handleWheel);
66
- }
52
+ componentDidMount() {
53
+ if (this.componentRef.current) {
54
+ this.componentRef.current.addEventListener('wheel', this.handleWheel);
67
55
  }
68
- }, {
69
- key: "componentDidUpdate",
70
- value: function componentDidUpdate(prevProps, prevState) {
71
- this.stoppedScrolling = prevState.scrollDate != null && !this.state.scrollDate;
56
+ }
57
+ componentDidUpdate(prevProps, prevState) {
58
+ this.stoppedScrolling = prevState.scrollDate != null && !this.state.scrollDate;
59
+ }
60
+ componentWillUnmount() {
61
+ if (this.componentRef.current) {
62
+ this.componentRef.current.removeEventListener('wheel', this.handleWheel);
72
63
  }
73
- }, {
74
- key: "componentWillUnmount",
75
- value: function componentWillUnmount() {
76
- if (this.componentRef.current) {
77
- this.componentRef.current.removeEventListener('wheel', this.handleWheel);
78
- }
64
+ }
65
+ setYear(date) {
66
+ if (scrollTO) {
67
+ window.clearTimeout(scrollTO);
68
+ scrollTO = null;
79
69
  }
80
- }, {
81
- key: "setYear",
82
- value: function setYear$1(date) {
83
- if (scrollTO) {
84
- window.clearTimeout(scrollTO);
85
- scrollTO = null;
86
- }
87
- this.setState({
88
- scrollDate: null
89
- });
90
- this.props.onScroll(Number(setYear(this.props.scrollDate, getYear(date))));
70
+ this.setState({
71
+ scrollDate: null
72
+ });
73
+ this.props.onScroll(Number(setYear(this.props.scrollDate, getYear(date))));
74
+ }
75
+ render() {
76
+ const {
77
+ onScrollChange,
78
+ scrollDate
79
+ } = this.props;
80
+ const date = this.state.scrollDate || scrollDate;
81
+ const yearStart = startOfYear(date);
82
+ let year = subYears(yearStart, YEARSBACK);
83
+ const years = [year];
84
+ for (let i = 0; i < YEARSBACK * DOUBLE; i++) {
85
+ year = addYears(year, 1);
86
+ years.push(year);
91
87
  }
92
- }, {
93
- key: "render",
94
- value: function render() {
95
- var _this$props = this.props,
96
- onScrollChange = _this$props.onScrollChange,
97
- scrollDate = _this$props.scrollDate;
98
- var date = this.state.scrollDate || scrollDate;
99
- var yearStart = startOfYear(date);
100
- var year = subYears(yearStart, YEARSBACK);
101
- var years = [year];
102
- for (var i = 0; i < YEARSBACK * DOUBLE; i++) {
103
- year = addYears(year, 1);
104
- years.push(year);
105
- }
106
- var pxToDate = linearFunction(0, Number(years[0]), yearDuration / yearHeight);
107
- return /*#__PURE__*/jsx("div", {
108
- className: modules_0c7b7d96.years,
109
- ref: this.componentRef,
110
- style: {
111
- transition: this.stoppedScrolling ? 'top .2s ease-out 0s' : 'none',
112
- top: Math.floor(calHeight * HALF - pxToDate.x(Number(date)))
88
+ const pxToDate = linearFunction(0, Number(years[0]), yearDuration / yearHeight);
89
+ return /*#__PURE__*/jsx("div", {
90
+ className: modules_0c7b7d96.years,
91
+ ref: this.componentRef,
92
+ style: {
93
+ transition: this.stoppedScrolling ? 'top .2s ease-out 0s' : 'none',
94
+ top: Math.floor(calHeight * HALF - pxToDate.x(Number(date)))
95
+ },
96
+ children: years.map(item => /*#__PURE__*/jsx("button", {
97
+ type: "button",
98
+ className: classNames(modules_0c7b7d96.year, {
99
+ [modules_0c7b7d96.currentYear]: isSameYear(item, date),
100
+ [modules_0c7b7d96.today]: isThisYear(item)
101
+ }),
102
+ onClick: function handleClick() {
103
+ onScrollChange(Number(setYear(scrollDate, getYear(item))));
113
104
  },
114
- children: years.map(function (item) {
115
- return /*#__PURE__*/jsx("button", {
116
- type: "button",
117
- className: classNames(modules_0c7b7d96.year, {
118
- [modules_0c7b7d96.currentYear]: isSameYear(item, date),
119
- [modules_0c7b7d96.today]: isThisYear(item)
120
- }),
121
- onClick: function handleClick() {
122
- onScrollChange(Number(setYear(scrollDate, getYear(item))));
123
- },
124
- children: format(item, 'yyyy')
125
- }, +item);
126
- })
127
- });
128
- }
129
- }]);
130
- }(PureComponent);
105
+ children: format(item, 'yyyy')
106
+ }, +item))
107
+ });
108
+ }
109
+ }
131
110
  _defineProperty(Years, "propTypes", {
132
111
  scrollDate: dateType,
133
112
  onScroll: PropTypes.func,