@jetbrains/ring-ui 4.2.4 → 4.2.7

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 (320) hide show
  1. package/components/dialog/dialog.js +4 -2
  2. package/components/list/list.js +20 -11
  3. package/components/table/row.js +12 -7
  4. package/components/table/table.examples.js +1 -0
  5. package/components/table/table.js +3 -1
  6. package/package.json +2 -2
  7. package/dist/_helpers/_rollupPluginBabelHelpers.js +0 -34
  8. package/dist/_helpers/anchor.js +0 -33
  9. package/dist/_helpers/badge.js +0 -3
  10. package/dist/_helpers/button-group.js +0 -3
  11. package/dist/_helpers/button-set.js +0 -3
  12. package/dist/_helpers/button-toolbar.js +0 -3
  13. package/dist/_helpers/button__classes.js +0 -39
  14. package/dist/_helpers/card.js +0 -75
  15. package/dist/_helpers/checkbox.js +0 -3
  16. package/dist/_helpers/date-picker.js +0 -3
  17. package/dist/_helpers/dialog__body-scroll-preventer.js +0 -58
  18. package/dist/_helpers/error-message.js +0 -3
  19. package/dist/_helpers/footer.js +0 -121
  20. package/dist/_helpers/grid.js +0 -3
  21. package/dist/_helpers/group.js +0 -3
  22. package/dist/_helpers/header.js +0 -3
  23. package/dist/_helpers/icon.js +0 -3
  24. package/dist/_helpers/inject-styles.js +0 -22
  25. package/dist/_helpers/input.js +0 -3
  26. package/dist/_helpers/island.js +0 -3
  27. package/dist/_helpers/link.js +0 -3
  28. package/dist/_helpers/list.js +0 -3
  29. package/dist/_helpers/loader-screen.js +0 -3
  30. package/dist/_helpers/panel.js +0 -3
  31. package/dist/_helpers/query-assist__suggestions.js +0 -95
  32. package/dist/_helpers/radio.js +0 -3
  33. package/dist/_helpers/select__filter.js +0 -77
  34. package/dist/_helpers/services-link.js +0 -40
  35. package/dist/_helpers/sidebar.js +0 -126
  36. package/dist/_helpers/table.js +0 -3
  37. package/dist/_helpers/tabs.js +0 -3
  38. package/dist/_helpers/title.js +0 -100
  39. package/dist/alert/alert.js +0 -262
  40. package/dist/alert/container.js +0 -48
  41. package/dist/alert-service/alert-service.js +0 -173
  42. package/dist/analytics/analytics.js +0 -118
  43. package/dist/analytics/analytics__custom-plugin.js +0 -128
  44. package/dist/analytics/analytics__fus-plugin.js +0 -102
  45. package/dist/analytics/analytics__ga-plugin.js +0 -75
  46. package/dist/analytics/analytics__plugin-utils.js +0 -80
  47. package/dist/analytics-ng/analytics-ng.js +0 -95
  48. package/dist/auth/auth.js +0 -96
  49. package/dist/auth/auth__core.js +0 -1059
  50. package/dist/auth/background-flow.js +0 -123
  51. package/dist/auth/down-notification.js +0 -117
  52. package/dist/auth/iframe-flow.js +0 -153
  53. package/dist/auth/landing-entry.js +0 -5
  54. package/dist/auth/landing.js +0 -90
  55. package/dist/auth/request-builder.js +0 -76
  56. package/dist/auth/response-parser.js +0 -118
  57. package/dist/auth/storage.js +0 -283
  58. package/dist/auth/token-validator.js +0 -178
  59. package/dist/auth/window-flow.js +0 -134
  60. package/dist/auth-dialog/auth-dialog.js +0 -180
  61. package/dist/auth-dialog-service/auth-dialog-service.js +0 -71
  62. package/dist/auth-ng/auth-ng.js +0 -206
  63. package/dist/auth-ng/auth-ng.mock.js +0 -33
  64. package/dist/autofocus-ng/autofocus-ng.js +0 -51
  65. package/dist/avatar/avatar-example-datauri.js +0 -4
  66. package/dist/avatar/avatar.js +0 -163
  67. package/dist/avatar/fallback-avatar.js +0 -142
  68. package/dist/avatar-editor-ng/avatar-editor-ng.js +0 -167
  69. package/dist/avatar-editor-ng/avatar-editor-ng__template.js +0 -3
  70. package/dist/avatar-ng/avatar-ng.js +0 -21
  71. package/dist/badge/badge.js +0 -51
  72. package/dist/badge-ng/badge-ng.js +0 -18
  73. package/dist/breadcrumb-ng/breadcrumb-ng.js +0 -37
  74. package/dist/button/button.js +0 -125
  75. package/dist/button/button__classes.js +0 -5
  76. package/dist/button-group/button-group.js +0 -30
  77. package/dist/button-group/caption.js +0 -24
  78. package/dist/button-group-ng/button-group-ng.js +0 -39
  79. package/dist/button-ng/button-ng.js +0 -217
  80. package/dist/button-set/button-set.js +0 -26
  81. package/dist/button-set-ng/button-set-ng.js +0 -19
  82. package/dist/button-toolbar/button-toolbar.js +0 -29
  83. package/dist/button-toolbar-ng/button-toolbar-ng.js +0 -24
  84. package/dist/caret/caret.js +0 -266
  85. package/dist/checkbox/checkbox.js +0 -110
  86. package/dist/checkbox-ng/checkbox-ng.js +0 -38
  87. package/dist/code/code.js +0 -137
  88. package/dist/compiler-ng/compiler-ng.js +0 -53
  89. package/dist/confirm/confirm.js +0 -127
  90. package/dist/confirm-ng/confirm-ng.js +0 -69
  91. package/dist/confirm-service/confirm-service.js +0 -117
  92. package/dist/content-layout/content-layout.js +0 -66
  93. package/dist/content-layout/sidebar.js +0 -7
  94. package/dist/contenteditable/contenteditable.js +0 -78
  95. package/dist/data-list/data-list.js +0 -208
  96. package/dist/data-list/data-list.mock.js +0 -191
  97. package/dist/data-list/item.js +0 -229
  98. package/dist/data-list/selection.js +0 -102
  99. package/dist/data-list/title.js +0 -20
  100. package/dist/data-list-ng/data-list-ng.js +0 -62
  101. package/dist/date-picker/consts.js +0 -69
  102. package/dist/date-picker/date-input.js +0 -175
  103. package/dist/date-picker/date-picker.js +0 -367
  104. package/dist/date-picker/date-popup.js +0 -483
  105. package/dist/date-picker/day.js +0 -120
  106. package/dist/date-picker/formats.js +0 -3
  107. package/dist/date-picker/month-names.js +0 -100
  108. package/dist/date-picker/month-slider.js +0 -84
  109. package/dist/date-picker/month.js +0 -55
  110. package/dist/date-picker/months.js +0 -122
  111. package/dist/date-picker/weekdays.js +0 -32
  112. package/dist/date-picker/years.js +0 -110
  113. package/dist/dialog/dialog.js +0 -202
  114. package/dist/dialog/dialog__body-scroll-preventer.js +0 -3
  115. package/dist/dialog-ng/dialog-ng.js +0 -604
  116. package/dist/dialog-ng/dialog-ng__template.js +0 -3
  117. package/dist/docked-panel-ng/docked-panel-ng.js +0 -171
  118. package/dist/dropdown/anchor.js +0 -19
  119. package/dist/dropdown/dropdown.js +0 -236
  120. package/dist/dropdown-menu/dropdown-menu.js +0 -177
  121. package/dist/error-bubble/error-bubble.js +0 -59
  122. package/dist/error-message/error-message.js +0 -57
  123. package/dist/error-message-ng/error-message-ng.js +0 -35
  124. package/dist/footer/footer.js +0 -12
  125. package/dist/footer-ng/footer-ng.js +0 -64
  126. package/dist/form-ng/form-ng.js +0 -167
  127. package/dist/global/angular-component-factory.js +0 -84
  128. package/dist/global/compose.js +0 -9
  129. package/dist/global/composeRefs.js +0 -15
  130. package/dist/global/conic-gradient.js +0 -35
  131. package/dist/global/create-stateful-context.js +0 -55
  132. package/dist/global/data-tests.js +0 -24
  133. package/dist/global/dom.js +0 -125
  134. package/dist/global/focus-sensor-hoc.js +0 -146
  135. package/dist/global/fuzzy-highlight.js +0 -67
  136. package/dist/global/get-event-key.js +0 -111
  137. package/dist/global/get-uid.js +0 -15
  138. package/dist/global/inject-styles.js +0 -15
  139. package/dist/global/linear-function.js +0 -17
  140. package/dist/global/listeners.js +0 -44
  141. package/dist/global/memoize.js +0 -20
  142. package/dist/global/normalize-indent.js +0 -30
  143. package/dist/global/promise-with-timeout.js +0 -17
  144. package/dist/global/radial-gradient-mask.js +0 -38
  145. package/dist/global/react-dom-renderer.js +0 -46
  146. package/dist/global/react-render-adapter.js +0 -41
  147. package/dist/global/rerender-hoc.js +0 -55
  148. package/dist/global/ring-angular-component.js +0 -24
  149. package/dist/global/schedule-raf.js +0 -31
  150. package/dist/global/sniffer.js +0 -6
  151. package/dist/global/supports-css.js +0 -22
  152. package/dist/global/theme.js +0 -54
  153. package/dist/global/trivial-template-tag.js +0 -17
  154. package/dist/global/url.js +0 -165
  155. package/dist/global/variables_dark.js +0 -57
  156. package/dist/grid/col.js +0 -60
  157. package/dist/grid/grid.js +0 -33
  158. package/dist/grid/row.js +0 -64
  159. package/dist/group/group.js +0 -31
  160. package/dist/group-ng/group-ng.js +0 -11
  161. package/dist/header/header.js +0 -150
  162. package/dist/header/logo.js +0 -40
  163. package/dist/header/profile.js +0 -219
  164. package/dist/header/services-link.js +0 -12
  165. package/dist/header/services.js +0 -138
  166. package/dist/header/smart-profile.js +0 -233
  167. package/dist/header/smart-services.js +0 -163
  168. package/dist/header/tray-icon.js +0 -47
  169. package/dist/header/tray.js +0 -31
  170. package/dist/heading/heading.js +0 -73
  171. package/dist/http/http.js +0 -218
  172. package/dist/http/http.mock.js +0 -67
  173. package/dist/hub-source/hub-source.js +0 -130
  174. package/dist/hub-source/hub-source__user.js +0 -30
  175. package/dist/hub-source/hub-source__users-groups.js +0 -63
  176. package/dist/icon/icon.js +0 -105
  177. package/dist/icon/icon__constants.js +0 -33
  178. package/dist/icon/icon__svg.js +0 -83
  179. package/dist/icon/index.js +0 -12
  180. package/dist/icon-ng/icon-ng.js +0 -91
  181. package/dist/input/input.js +0 -230
  182. package/dist/input-ng/input-ng.js +0 -111
  183. package/dist/island/adaptive-island-hoc.js +0 -48
  184. package/dist/island/content.js +0 -160
  185. package/dist/island/header.js +0 -84
  186. package/dist/island/island.js +0 -51
  187. package/dist/island-legacy/content-legacy.js +0 -26
  188. package/dist/island-legacy/header-legacy.js +0 -28
  189. package/dist/island-legacy/island-legacy.js +0 -28
  190. package/dist/island-ng/island-content-ng.js +0 -42
  191. package/dist/island-ng/island-header-ng.js +0 -26
  192. package/dist/island-ng/island-ng-class-fixer.js +0 -11
  193. package/dist/island-ng/island-ng.js +0 -25
  194. package/dist/link/clickableLink.js +0 -64
  195. package/dist/link/link.js +0 -115
  196. package/dist/link-ng/link-ng.js +0 -22
  197. package/dist/list/consts.js +0 -26
  198. package/dist/list/list.js +0 -818
  199. package/dist/list/list__custom.js +0 -86
  200. package/dist/list/list__hint.js +0 -26
  201. package/dist/list/list__item.js +0 -206
  202. package/dist/list/list__link.js +0 -65
  203. package/dist/list/list__separator.js +0 -30
  204. package/dist/list/list__title.js +0 -39
  205. package/dist/list/list__users-groups-source.js +0 -130
  206. package/dist/loader/loader.js +0 -71
  207. package/dist/loader/loader__core.js +0 -273
  208. package/dist/loader-inline/inject-styles.js +0 -13
  209. package/dist/loader-inline/loader-inline.js +0 -58
  210. package/dist/loader-inline-ng/loader-inline-ng.js +0 -44
  211. package/dist/loader-ng/loader-ng.js +0 -44
  212. package/dist/loader-screen/loader-screen.js +0 -44
  213. package/dist/loader-screen-ng/loader-screen-ng.js +0 -95
  214. package/dist/login-dialog/login-dialog.js +0 -188
  215. package/dist/login-dialog/service.js +0 -72
  216. package/dist/markdown/code.js +0 -31
  217. package/dist/markdown/heading.js +0 -23
  218. package/dist/markdown/link.js +0 -31
  219. package/dist/markdown/markdown.js +0 -74
  220. package/dist/message/message.js +0 -235
  221. package/dist/message-bundle-ng/message-bundle-ng.js +0 -111
  222. package/dist/old-browsers-message/old-browsers-message.js +0 -101
  223. package/dist/old-browsers-message/old-browsers-message__stop.js +0 -5
  224. package/dist/old-browsers-message/white-list.js +0 -34
  225. package/dist/pager/pager.js +0 -365
  226. package/dist/pager-ng/pager-ng.js +0 -100
  227. package/dist/panel/panel.js +0 -31
  228. package/dist/panel-ng/panel-ng.js +0 -17
  229. package/dist/permissions/permissions.js +0 -200
  230. package/dist/permissions/permissions__cache.js +0 -272
  231. package/dist/permissions-ng/permissions-ng.js +0 -277
  232. package/dist/place-under-ng/place-under-ng.js +0 -158
  233. package/dist/popup/popup.consts.js +0 -41
  234. package/dist/popup/popup.js +0 -396
  235. package/dist/popup/popup.target.js +0 -26
  236. package/dist/popup/position.js +0 -280
  237. package/dist/popup-menu/popup-menu.js +0 -117
  238. package/dist/progress-bar/progress-bar.js +0 -114
  239. package/dist/progress-bar-ng/progress-bar-ng.js +0 -17
  240. package/dist/promised-click-ng/promised-click-ng.js +0 -128
  241. package/dist/proxy-attrs/proxy-attrs.js +0 -21
  242. package/dist/query-assist/query-assist.js +0 -1096
  243. package/dist/query-assist/query-assist__suggestions.js +0 -49
  244. package/dist/query-assist-ng/query-assist-ng.js +0 -86
  245. package/dist/radio/radio.js +0 -42
  246. package/dist/radio/radio__item.js +0 -78
  247. package/dist/radio-ng/radio-ng.js +0 -47
  248. package/dist/save-field-ng/save-field-ng.js +0 -337
  249. package/dist/save-field-ng/save-field-ng__template.js +0 -3
  250. package/dist/select/select.js +0 -1357
  251. package/dist/select/select__filter.js +0 -56
  252. package/dist/select/select__popup.js +0 -553
  253. package/dist/select-ng/select-ng.js +0 -637
  254. package/dist/select-ng/select-ng__lazy.js +0 -169
  255. package/dist/select-ng/select-ng__options.js +0 -145
  256. package/dist/shortcuts/core.js +0 -245
  257. package/dist/shortcuts/shortcut-title.js +0 -51
  258. package/dist/shortcuts/shortcuts-hoc.js +0 -42
  259. package/dist/shortcuts/shortcuts.js +0 -72
  260. package/dist/shortcuts-hint-ng/shortcuts-hint-ng.js +0 -123
  261. package/dist/shortcuts-hint-ng/shortcuts-hint-ng__template.js +0 -3
  262. package/dist/shortcuts-ng/shortcuts-ng.js +0 -262
  263. package/dist/sidebar-ng/sidebar-ng.js +0 -113
  264. package/dist/sidebar-ng/sidebar-ng__button-template.js +0 -3
  265. package/dist/sidebar-ng/sidebar-ng__template.js +0 -3
  266. package/dist/storage/storage.js +0 -59
  267. package/dist/storage/storage__fallback.js +0 -215
  268. package/dist/storage/storage__local.js +0 -154
  269. package/dist/style.css +0 -1
  270. package/dist/tab-trap/tab-trap.js +0 -177
  271. package/dist/table/cell.js +0 -26
  272. package/dist/table/disable-hover-hoc.js +0 -54
  273. package/dist/table/header-cell.js +0 -92
  274. package/dist/table/header.js +0 -193
  275. package/dist/table/multitable.js +0 -141
  276. package/dist/table/row-with-focus-sensor.js +0 -83
  277. package/dist/table/row.js +0 -273
  278. package/dist/table/selection-adapter.js +0 -16
  279. package/dist/table/selection-shortcuts-hoc.js +0 -215
  280. package/dist/table/selection.js +0 -223
  281. package/dist/table/smart-table.js +0 -125
  282. package/dist/table/table.js +0 -406
  283. package/dist/table-legacy-ng/table-legacy-ng.js +0 -468
  284. package/dist/table-legacy-ng/table-legacy-ng__pager.js +0 -120
  285. package/dist/table-legacy-ng/table-legacy-ng__selection-navigate-actions.js +0 -123
  286. package/dist/table-legacy-ng/table-legacy-ng__selection.js +0 -179
  287. package/dist/table-legacy-ng/table-legacy-ng__toolbar.js +0 -57
  288. package/dist/table-ng/smart-table-ng.js +0 -68
  289. package/dist/table-ng/table-ng.js +0 -67
  290. package/dist/tabs/collapsible-more.js +0 -198
  291. package/dist/tabs/collapsible-tab.js +0 -91
  292. package/dist/tabs/collapsible-tabs.js +0 -362
  293. package/dist/tabs/custom-item.js +0 -13
  294. package/dist/tabs/dumb-tabs.js +0 -164
  295. package/dist/tabs/smart-tabs.js +0 -106
  296. package/dist/tabs/tab-link.js +0 -42
  297. package/dist/tabs/tab.js +0 -33
  298. package/dist/tabs/tabs.js +0 -71
  299. package/dist/tabs-ng/tabs-ng.js +0 -194
  300. package/dist/tabs-ng/tabs-ng__template.js +0 -3
  301. package/dist/tag/tag.js +0 -197
  302. package/dist/tags-input/tags-input.js +0 -482
  303. package/dist/tags-input-ng/tags-input-ng.js +0 -93
  304. package/dist/tags-list/tags-list.js +0 -95
  305. package/dist/template-ng/template-ng.js +0 -71
  306. package/dist/text/text.js +0 -36
  307. package/dist/theme-ng/theme-ng.js +0 -45
  308. package/dist/title-ng/title-ng.js +0 -114
  309. package/dist/toggle/toggle.js +0 -78
  310. package/dist/toggle-ng/toggle-ng.js +0 -18
  311. package/dist/tooltip/tooltip.js +0 -209
  312. package/dist/tooltip-ng/tooltip-ng.js +0 -104
  313. package/dist/user-agreement/service.js +0 -412
  314. package/dist/user-agreement/toolbox.eula.js +0 -3
  315. package/dist/user-agreement/user-agreement.js +0 -169
  316. package/dist/user-card/card.js +0 -19
  317. package/dist/user-card/smart-user-card-tooltip.js +0 -114
  318. package/dist/user-card/tooltip.js +0 -95
  319. package/dist/user-card/user-card.js +0 -51
  320. package/dist/user-card-ng/user-card-ng.js +0 -62
@@ -1,100 +0,0 @@
1
- import { a as _extends, _ as _defineProperty } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import 'core-js/modules/web.dom-collections.iterator.js';
3
- import React, { PureComponent } from 'react';
4
- import PropTypes from 'prop-types';
5
- import classNames from 'classnames';
6
- import endOfMonth from 'date-fns/endOfMonth';
7
- import format from 'date-fns/format';
8
- import isThisMonth from 'date-fns/isThisMonth';
9
- import set from 'date-fns/set';
10
- import startOfDay from 'date-fns/startOfDay';
11
- import startOfYear from 'date-fns/startOfYear';
12
- import linearFunction from '../global/linear-function.js';
13
- import MonthSlider from './month-slider.js';
14
- import { dateType, YEAR, MIDDLE_DAY, yearScrollSpeed, HALF } from './consts.js';
15
- import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
16
- import 'date-fns/addYears';
17
- import 'date-fns/subYears';
18
- import 'date-fns/add';
19
-
20
- class MonthName extends PureComponent {
21
- constructor() {
22
- super(...arguments);
23
-
24
- _defineProperty(this, "handleClick", () => {
25
- const end = endOfMonth(this.props.month);
26
- this.props.onScrollChange((+this.props.month + +end) * HALF);
27
- });
28
- }
29
-
30
- render() {
31
- const {
32
- month,
33
- locale
34
- } = this.props;
35
- return /*#__PURE__*/React.createElement("button", {
36
- type: "button",
37
- className: classNames(modules_0c7b7d96.monthName, {
38
- [modules_0c7b7d96.today]: isThisMonth(month)
39
- }),
40
- onClick: this.handleClick
41
- }, format(month, 'LLL', {
42
- locale
43
- }));
44
- }
45
-
46
- }
47
-
48
- MonthName.propTypes = {
49
- month: dateType,
50
- onScrollChange: PropTypes.func,
51
- locale: PropTypes.string
52
- };
53
- function MonthNames(props) {
54
- const {
55
- scrollDate,
56
- locale
57
- } = props;
58
- const months = [];
59
-
60
- for (let i = 0; i < YEAR; i++) {
61
- const middleDay = set(scrollDate, {
62
- month: i,
63
- date: MIDDLE_DAY
64
- });
65
- months.push(startOfDay(middleDay));
66
- }
67
-
68
- const pxToDate = linearFunction(0, startOfYear(scrollDate), yearScrollSpeed);
69
- let top = 0;
70
- let bottom = 0;
71
-
72
- if (props.currentRange) {
73
- [top, bottom] = props.currentRange.map(date => Math.floor(pxToDate.x(date)));
74
- }
75
-
76
- return /*#__PURE__*/React.createElement("div", {
77
- className: modules_0c7b7d96.monthNames
78
- }, months.map(month => /*#__PURE__*/React.createElement(MonthName, {
79
- key: +month,
80
- month: month,
81
- onScrollChange: props.onScrollChange,
82
- locale: locale
83
- })), props.currentRange && /*#__PURE__*/React.createElement("div", {
84
- className: modules_0c7b7d96.range,
85
- style: {
86
- top: top - 1,
87
- height: bottom + 1 - (top - 1)
88
- }
89
- }), /*#__PURE__*/React.createElement(MonthSlider, _extends({}, props, {
90
- pxToDate: pxToDate
91
- })));
92
- }
93
- MonthNames.propTypes = {
94
- scrollDate: dateType,
95
- onScrollChange: PropTypes.func,
96
- currentRange: PropTypes.arrayOf(dateType),
97
- locale: PropTypes.string
98
- };
99
-
100
- export { MonthNames as default };
@@ -1,84 +0,0 @@
1
- import { _ as _defineProperty } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import 'core-js/modules/web.dom-collections.iterator.js';
3
- import React, { PureComponent } from 'react';
4
- import PropTypes from 'prop-types';
5
- import classNames from 'classnames';
6
- import addYears from 'date-fns/addYears';
7
- import startOfDay from 'date-fns/startOfDay';
8
- import subYears from 'date-fns/subYears';
9
- import linearFunction from '../global/linear-function.js';
10
- import units, { dateType, yearScrollSpeed } from './consts.js';
11
- import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
12
- import 'date-fns/add';
13
-
14
- const COVERYEARS = 3;
15
- class MonthSlider extends PureComponent {
16
- constructor() {
17
- super(...arguments);
18
-
19
- _defineProperty(this, "state", {
20
- dragging: false
21
- });
22
-
23
- _defineProperty(this, "onMouseDown", () => {
24
- this.setState({
25
- dragging: true
26
- });
27
- });
28
-
29
- _defineProperty(this, "onMouseUp", () => {
30
- this.setState({
31
- dragging: false
32
- });
33
- });
34
-
35
- _defineProperty(this, "onMouseMove", e => {
36
- this.props.onScroll(linearFunction(0, this.props.scrollDate, yearScrollSpeed).y(e.movementY));
37
- });
38
- }
39
-
40
- componentDidUpdate(prevProps, prevState) {
41
- if (this.state.dragging && !prevState.dragging) {
42
- window.addEventListener('mousemove', this.onMouseMove);
43
- window.addEventListener('mouseup', this.onMouseUp);
44
- } else if (!this.state.dragging && prevState.dragging) {
45
- window.removeEventListener('mousemove', this.onMouseMove);
46
- window.removeEventListener('mouseup', this.onMouseUp);
47
- }
48
- }
49
-
50
- render() {
51
- let year = subYears(startOfDay(this.props.scrollDate), 1);
52
- const years = [year];
53
-
54
- for (let i = 0; i <= COVERYEARS; i++) {
55
- year = addYears(year, 1);
56
- years.push(year);
57
- }
58
-
59
- const classes = classNames(modules_0c7b7d96.monthSlider, {
60
- [modules_0c7b7d96.dragging]: this.state.dragging
61
- });
62
- return /*#__PURE__*/React.createElement("div", null, years.map(date => /*#__PURE__*/React.createElement("button", {
63
- type: "button",
64
- key: +date,
65
- className: classes,
66
- style: {
67
- top: Math.floor(this.props.pxToDate.x(date) - units.cellSize)
68
- },
69
- onMouseDown: this.onMouseDown
70
- })));
71
- }
72
-
73
- }
74
-
75
- _defineProperty(MonthSlider, "propTypes", {
76
- scrollDate: dateType,
77
- onScroll: PropTypes.func,
78
- pxToDate: PropTypes.shape({
79
- x: PropTypes.func,
80
- y: PropTypes.func
81
- })
82
- });
83
-
84
- export { MonthSlider as default };
@@ -1,55 +0,0 @@
1
- import { a as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import React from 'react';
3
- import addDays from 'date-fns/addDays';
4
- import endOfMonth from 'date-fns/endOfMonth';
5
- import format from 'date-fns/format';
6
- import getDay from 'date-fns/getDay';
7
- import setDay from 'date-fns/setDay';
8
- import PropTypes from 'prop-types';
9
- import Day from './day.js';
10
- import { dateType, weekdays, WEEK } from './consts.js';
11
- import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
12
- import 'core-js/modules/web.dom-collections.iterator.js';
13
- import 'classnames';
14
- import 'date-fns/getDate';
15
- import 'date-fns/isAfter';
16
- import 'date-fns/isBefore';
17
- import 'date-fns/isSameDay';
18
- import 'date-fns/isToday';
19
- import 'date-fns/startOfDay';
20
- import 'date-fns/add';
21
-
22
- function Month(props) {
23
- const start = props.month;
24
- const end = endOfMonth(start);
25
- const {
26
- locale
27
- } = props; // pad with empty cells starting from last friday
28
-
29
- const weekday = getDay(start);
30
- let day = setDay(start, weekday >= weekdays.FR ? weekdays.FR : weekdays.FR - WEEK);
31
- const days = [];
32
-
33
- while (day < end) {
34
- days.push(day);
35
- day = addDays(day, 1);
36
- }
37
-
38
- return /*#__PURE__*/React.createElement("div", {
39
- className: modules_0c7b7d96.month
40
- }, /*#__PURE__*/React.createElement("span", {
41
- className: modules_0c7b7d96.monthTitle
42
- }, format(props.month, 'LLLL', {
43
- locale
44
- })), days.map(date => /*#__PURE__*/React.createElement(Day, _extends({}, props, {
45
- day: date,
46
- empty: date < start,
47
- key: +date
48
- }))));
49
- }
50
- Month.propTypes = {
51
- month: dateType,
52
- locale: PropTypes.string
53
- };
54
-
55
- export { Month as default };
@@ -1,122 +0,0 @@
1
- import { a as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import React from 'react';
3
- import PropTypes from 'prop-types';
4
- import addMonths from 'date-fns/addMonths';
5
- import getDay from 'date-fns/getDay';
6
- import getDaysInMonth from 'date-fns/getDaysInMonth';
7
- import set from 'date-fns/set';
8
- import startOfHour from 'date-fns/startOfHour';
9
- import startOfMonth from 'date-fns/startOfMonth';
10
- import subMonths from 'date-fns/subMonths';
11
- import endOfMonth from 'date-fns/endOfMonth';
12
- import scheduleRAF from '../global/schedule-raf.js';
13
- import linearFunction from '../global/linear-function.js';
14
- import Month from './month.js';
15
- import MonthNames from './month-names.js';
16
- import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
17
- import units, { dateType, DOUBLE, HALF, WEEK, weekdays } from './consts.js';
18
- import 'date-fns/addDays';
19
- import 'date-fns/format';
20
- import 'date-fns/setDay';
21
- import './day.js';
22
- import 'core-js/modules/web.dom-collections.iterator.js';
23
- import 'classnames';
24
- import 'date-fns/getDate';
25
- import 'date-fns/isAfter';
26
- import 'date-fns/isBefore';
27
- import 'date-fns/isSameDay';
28
- import 'date-fns/isToday';
29
- import 'date-fns/startOfDay';
30
- import 'date-fns/isThisMonth';
31
- import 'date-fns/startOfYear';
32
- import './month-slider.js';
33
- import 'date-fns/addYears';
34
- import 'date-fns/subYears';
35
- import 'date-fns/add';
36
-
37
- const {
38
- unit,
39
- cellSize,
40
- calHeight
41
- } = units;
42
- const FridayToSunday = WEEK + weekdays.SU - weekdays.FR;
43
- const FIVELINES = 31;
44
- const TALLMONTH = 6;
45
- const SHORTMONTH = 5;
46
- const PADDING = 2;
47
- const MONTHSBACK = 2;
48
-
49
- function monthHeight(date) {
50
- const monthStart = startOfMonth(date);
51
- const daysSinceLastFriday = (getDay(monthStart) + FridayToSunday) % WEEK;
52
- const monthLines = daysSinceLastFriday + getDaysInMonth(monthStart) > FIVELINES ? TALLMONTH : SHORTMONTH;
53
- return monthLines * cellSize + unit * PADDING;
54
- } // in milliseconds per pixel
55
-
56
-
57
- function scrollSpeed(date) {
58
- const monthStart = startOfMonth(date);
59
- const monthEnd = endOfMonth(date);
60
- return (monthEnd - monthStart) / monthHeight(monthStart);
61
- }
62
-
63
- const scrollSchedule = scheduleRAF();
64
- let dy = 0;
65
- function Months(props) {
66
- const {
67
- scrollDate
68
- } = props; // prevent switching from april to march because of daylight saving time
69
-
70
- const monthStart = startOfHour(set(scrollDate, {
71
- date: 1,
72
- hours: 1
73
- }));
74
- let month = subMonths(monthStart, MONTHSBACK);
75
- const months = [month];
76
-
77
- for (let i = 0; i < MONTHSBACK * DOUBLE; i++) {
78
- month = addMonths(month, 1);
79
- months.push(month);
80
- }
81
-
82
- const currentSpeed = scrollSpeed(scrollDate);
83
- const pxToDate = linearFunction(0, scrollDate, currentSpeed);
84
- const offset = pxToDate.x(monthStart); // is a negative number
85
-
86
- const bottomOffset = monthHeight(scrollDate) + offset;
87
- return /*#__PURE__*/React.createElement("div", {
88
- className: modules_0c7b7d96.months,
89
- onWheel: function handleWheel(e) {
90
- e.preventDefault();
91
- dy += e.deltaY;
92
- scrollSchedule(() => {
93
- let date; // adjust scroll speed to prevent glitches
94
-
95
- if (dy < offset) {
96
- date = pxToDate.y(offset) + (dy - offset) * scrollSpeed(months[1]);
97
- } else if (dy > bottomOffset) {
98
- date = pxToDate.y(bottomOffset) + (dy - bottomOffset) * scrollSpeed(months[MONTHSBACK + 1]);
99
- } else {
100
- date = pxToDate.y(dy);
101
- }
102
-
103
- props.onScroll(date);
104
- dy = 0;
105
- });
106
- }
107
- }, /*#__PURE__*/React.createElement("div", {
108
- style: {
109
- top: Math.floor(calHeight * HALF - monthHeight(months[0]) - monthHeight(months[1]) + offset)
110
- },
111
- className: modules_0c7b7d96.days
112
- }, months.map(date => /*#__PURE__*/React.createElement(Month, _extends({}, props, {
113
- month: date,
114
- key: +date
115
- })))), /*#__PURE__*/React.createElement(MonthNames, props));
116
- }
117
- Months.propTypes = {
118
- onScroll: PropTypes.func,
119
- scrollDate: dateType
120
- };
121
-
122
- export { Months as default };
@@ -1,32 +0,0 @@
1
- import React from 'react';
2
- import classNames from 'classnames';
3
- import getDay from 'date-fns/getDay';
4
- import format from 'date-fns/format';
5
- import setDay from 'date-fns/setDay';
6
- import startOfDay from 'date-fns/startOfDay';
7
- import PropTypes from 'prop-types';
8
- import { weekdays } from './consts.js';
9
- import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
10
- import 'date-fns/add';
11
-
12
- function Weekdays(props) {
13
- const days = Object.keys(weekdays).map(key => startOfDay(setDay(new Date(), weekdays[key])));
14
- const {
15
- locale
16
- } = props;
17
- return /*#__PURE__*/React.createElement("div", {
18
- className: modules_0c7b7d96.weekdays
19
- }, days.map(day => /*#__PURE__*/React.createElement("span", {
20
- className: classNames(modules_0c7b7d96.weekday, {
21
- [modules_0c7b7d96.weekend]: [weekdays.SA, weekdays.SU].includes(getDay(day))
22
- }),
23
- key: +day
24
- }, format(day, 'EEEEEE', {
25
- locale
26
- }))));
27
- }
28
- Weekdays.propTypes = {
29
- locale: PropTypes.string
30
- };
31
-
32
- export { Weekdays as default };
@@ -1,110 +0,0 @@
1
- import { _ as _defineProperty } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import 'core-js/modules/web.dom-collections.iterator.js';
3
- import React, { PureComponent } from 'react';
4
- import PropTypes from 'prop-types';
5
- import classNames from 'classnames';
6
- import addYears from 'date-fns/addYears';
7
- import getYear from 'date-fns/getYear';
8
- import format from 'date-fns/format';
9
- import isSameYear from 'date-fns/isSameYear';
10
- import isThisYear from 'date-fns/isThisYear';
11
- import setYear from 'date-fns/setYear';
12
- import startOfYear from 'date-fns/startOfYear';
13
- import subYears from 'date-fns/subYears';
14
- import linearFunction from '../global/linear-function.js';
15
- import { m as modules_0c7b7d96 } from '../_helpers/date-picker.js';
16
- import units, { dateType, DOUBLE, HALF, yearDuration } from './consts.js';
17
- import 'date-fns/add';
18
-
19
- const {
20
- yearHeight,
21
- calHeight
22
- } = units;
23
- let scrollTO;
24
- const YEARSBACK = 5;
25
- const scrollDelay = 100;
26
- class Years extends PureComponent {
27
- constructor() {
28
- super(...arguments);
29
-
30
- _defineProperty(this, "state", {
31
- scrollDate: null
32
- });
33
- }
34
-
35
- componentDidUpdate(prevProps, prevState) {
36
- this.stoppedScrolling = prevState.scrollDate && !this.state.scrollDate;
37
- }
38
-
39
- setYear(date) {
40
- if (scrollTO) {
41
- window.clearTimeout(scrollTO);
42
- scrollTO = null;
43
- }
44
-
45
- this.setState({
46
- scrollDate: null
47
- });
48
- this.props.onScroll(setYear(this.props.scrollDate, getYear(date)));
49
- }
50
-
51
- render() {
52
- const {
53
- onScrollChange,
54
- scrollDate
55
- } = this.props;
56
- const date = this.state.scrollDate || scrollDate;
57
- const yearStart = startOfYear(date);
58
- let year = subYears(yearStart, YEARSBACK);
59
- const years = [year];
60
-
61
- for (let i = 0; i < YEARSBACK * DOUBLE; i++) {
62
- year = addYears(year, 1);
63
- years.push(year);
64
- }
65
-
66
- const pxToDate = linearFunction(0, years[0], yearDuration / yearHeight);
67
-
68
- const handleWheel = e => {
69
- e.preventDefault();
70
- const newScrollDate = linearFunction(0, date, yearDuration / yearHeight).y(e.deltaY);
71
- this.setState({
72
- scrollDate: newScrollDate
73
- });
74
-
75
- if (scrollTO) {
76
- window.clearTimeout(scrollTO);
77
- }
78
-
79
- scrollTO = window.setTimeout(() => this.setYear(newScrollDate), scrollDelay);
80
- };
81
-
82
- return /*#__PURE__*/React.createElement("div", {
83
- className: modules_0c7b7d96.years,
84
- onWheel: handleWheel,
85
- style: {
86
- transition: this.stoppedScrolling ? 'top .2s ease-out 0s' : 'none',
87
- top: Math.floor(calHeight * HALF - pxToDate.x(date))
88
- }
89
- }, years.map(item => /*#__PURE__*/React.createElement("button", {
90
- type: "button",
91
- key: +item,
92
- className: classNames(modules_0c7b7d96.year, {
93
- [modules_0c7b7d96.currentYear]: isSameYear(item, date),
94
- [modules_0c7b7d96.today]: isThisYear(item)
95
- }),
96
- onClick: function handleClick() {
97
- onScrollChange(setYear(scrollDate, getYear(item)));
98
- }
99
- }, format(item, 'yyyy'))));
100
- }
101
-
102
- }
103
-
104
- _defineProperty(Years, "propTypes", {
105
- scrollDate: dateType,
106
- onScroll: PropTypes.func,
107
- onScrollChange: PropTypes.func
108
- });
109
-
110
- export { Years as default };