@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,38 +1,53 @@
1
- import React, { Component, createContext } from 'react';
1
+ import { c as _defineProperty, j as _inherits, k as _createSuper, b as _classCallCheck, m as _assertThisInitialized, _ as _createClass } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/es.array.concat.js';
3
+ import React, { createContext, Component } from 'react';
2
4
  import { interpolateLinear } from '../global/linear-function.js';
3
5
 
4
- const TITLE_RESIZE_END = 20;
5
- const TITLE_RESIZE_THRESHOLD = 36;
6
- const PhaseContext = /*#__PURE__*/createContext(null);
7
- const ScrollHandlerContext = /*#__PURE__*/createContext(null);
6
+ var TITLE_RESIZE_END = 20;
7
+ var TITLE_RESIZE_THRESHOLD = 36;
8
+ var PhaseContext = /*#__PURE__*/createContext(null);
9
+ var ScrollHandlerContext = /*#__PURE__*/createContext(null);
8
10
  function adaptiveIslandHOC(ComposedComponent) {
9
- return class AdaptiveIsland extends Component {
10
- static propTypes = ComposedComponent.propTypes;
11
- state = {
12
- phase: null
13
- };
14
- onContentScroll = _ref => {
15
- var _this$state$phase;
16
- let {
17
- scrollTop,
18
- scrollHeight,
19
- clientHeight
20
- } = _ref;
21
- if (scrollHeight - clientHeight >= interpolateLinear(TITLE_RESIZE_THRESHOLD, TITLE_RESIZE_END, (_this$state$phase = this.state.phase) !== null && _this$state$phase !== void 0 ? _this$state$phase : 0)) {
22
- const phase = Math.min(1, scrollTop / TITLE_RESIZE_END);
23
- this.setState({
24
- phase
25
- });
11
+ var _class;
12
+ return _class = /*#__PURE__*/function (_Component) {
13
+ _inherits(AdaptiveIsland, _Component);
14
+ var _super = _createSuper(AdaptiveIsland);
15
+ function AdaptiveIsland() {
16
+ var _this;
17
+ _classCallCheck(this, AdaptiveIsland);
18
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
19
+ args[_key] = arguments[_key];
26
20
  }
27
- };
28
- render() {
29
- return /*#__PURE__*/React.createElement(PhaseContext.Provider, {
30
- value: this.state.phase
31
- }, /*#__PURE__*/React.createElement(ScrollHandlerContext.Provider, {
32
- value: this.onContentScroll
33
- }, /*#__PURE__*/React.createElement(ComposedComponent, this.props)));
21
+ _this = _super.call.apply(_super, [this].concat(args));
22
+ _defineProperty(_assertThisInitialized(_this), "state", {
23
+ phase: null
24
+ });
25
+ _defineProperty(_assertThisInitialized(_this), "onContentScroll", function (_ref) {
26
+ var _this$state$phase;
27
+ var scrollTop = _ref.scrollTop,
28
+ scrollHeight = _ref.scrollHeight,
29
+ clientHeight = _ref.clientHeight;
30
+ if (scrollHeight - clientHeight >= interpolateLinear(TITLE_RESIZE_THRESHOLD, TITLE_RESIZE_END, (_this$state$phase = _this.state.phase) !== null && _this$state$phase !== void 0 ? _this$state$phase : 0)) {
31
+ var phase = Math.min(1, scrollTop / TITLE_RESIZE_END);
32
+ _this.setState({
33
+ phase: phase
34
+ });
35
+ }
36
+ });
37
+ return _this;
34
38
  }
35
- };
39
+ _createClass(AdaptiveIsland, [{
40
+ key: "render",
41
+ value: function render() {
42
+ return /*#__PURE__*/React.createElement(PhaseContext.Provider, {
43
+ value: this.state.phase
44
+ }, /*#__PURE__*/React.createElement(ScrollHandlerContext.Provider, {
45
+ value: this.onContentScroll
46
+ }, /*#__PURE__*/React.createElement(ComposedComponent, this.props)));
47
+ }
48
+ }]);
49
+ return AdaptiveIsland;
50
+ }(Component), _defineProperty(_class, "propTypes", ComposedComponent.propTypes), _class;
36
51
  }
37
52
 
38
53
  export { PhaseContext, ScrollHandlerContext, adaptiveIslandHOC as default };
@@ -1,4 +1,5 @@
1
- import { _ as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
1
+ import { c as _defineProperty, j as _inherits, k as _createSuper, b as _classCallCheck, m as _assertThisInitialized, _ as _createClass, h as _objectWithoutProperties, i as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/es.array.concat.js';
2
3
  import React, { Component, forwardRef } from 'react';
3
4
  import PropTypes from 'prop-types';
4
5
  import classNames from 'classnames';
@@ -8,125 +9,139 @@ import { m as modules_e6a056e1 } from '../_helpers/island.js';
8
9
  import { ScrollHandlerContext } from './adaptive-island-hoc.js';
9
10
  import '../global/linear-function.js';
10
11
 
11
- const scheduleScrollAction = scheduleRAF();
12
- const noop = () => {};
13
- const END_DISTANCE = 16;
14
- class Content extends Component {
15
- static propTypes = {
16
- children: PropTypes.node,
17
- className: PropTypes.string,
18
- scrollableWrapperClassName: PropTypes.string,
19
- fade: PropTypes.bool,
20
- bottomBorder: PropTypes.bool,
21
- onScroll: PropTypes.func,
22
- onScrollToBottom: PropTypes.func
23
- };
24
- static defaultProps = {
25
- fade: true,
26
- bottomBorder: false,
27
- onScroll: noop,
28
- onScrollToBottom: noop
29
- };
30
- state = {
31
- scrolledToTop: true,
32
- scrolledToBottom: false
33
- };
34
- componentWillUnmount() {
35
- this.scrollableNode = null;
36
- if (!this.wrapperNode) {
37
- return;
12
+ var _excluded = ["children", "className", "bottomBorder", "scrollableWrapperClassName", "onScroll", "onScrollToBottom", "fade"];
13
+ var scheduleScrollAction = scheduleRAF();
14
+ var noop = function noop() {};
15
+ var END_DISTANCE = 16;
16
+ var Content = /*#__PURE__*/function (_Component) {
17
+ _inherits(Content, _Component);
18
+ var _super = _createSuper(Content);
19
+ function Content() {
20
+ var _this;
21
+ _classCallCheck(this, Content);
22
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
23
+ args[_key] = arguments[_key];
38
24
  }
39
- this.resizeDetector.removeAllListeners(this.wrapperNode);
25
+ _this = _super.call.apply(_super, [this].concat(args));
26
+ _defineProperty(_assertThisInitialized(_this), "state", {
27
+ scrolledToTop: true,
28
+ scrolledToBottom: false
29
+ });
30
+ _defineProperty(_assertThisInitialized(_this), "resizeDetector", createResizeDetector({
31
+ strategy: 'scroll'
32
+ }));
33
+ _defineProperty(_assertThisInitialized(_this), "wrapperNode", void 0);
34
+ _defineProperty(_assertThisInitialized(_this), "setWrapper", function (node) {
35
+ if (!node) {
36
+ return;
37
+ }
38
+ _this.wrapperNode = node;
39
+ _this.resizeDetector.listenTo(node, _this.calculateScrollPosition);
40
+ });
41
+ _defineProperty(_assertThisInitialized(_this), "calculateScrollPosition", function () {
42
+ return scheduleScrollAction(function () {
43
+ var _assertThisInitialize = _assertThisInitialized(_this),
44
+ scrollableNode = _assertThisInitialize.scrollableNode;
45
+ if (!scrollableNode) {
46
+ return;
47
+ }
48
+ _this.props.onScroll(scrollableNode);
49
+ var scrollTop = scrollableNode.scrollTop,
50
+ scrollHeight = scrollableNode.scrollHeight,
51
+ offsetHeight = scrollableNode.offsetHeight;
52
+ var scrolledToTop = scrollTop === 0;
53
+ var scrolledToBottom = offsetHeight + scrollTop >= scrollHeight - END_DISTANCE;
54
+ if (scrolledToBottom) {
55
+ var _this$props$onScrollT, _this$props;
56
+ (_this$props$onScrollT = (_this$props = _this.props).onScrollToBottom) === null || _this$props$onScrollT === void 0 ? void 0 : _this$props$onScrollT.call(_this$props);
57
+ }
58
+ _this.setState({
59
+ scrolledToTop: scrolledToTop,
60
+ scrolledToBottom: scrolledToBottom
61
+ });
62
+ });
63
+ });
64
+ _defineProperty(_assertThisInitialized(_this), "scrollableNode", void 0);
65
+ _defineProperty(_assertThisInitialized(_this), "setScrollableNodeAndCalculatePosition", function (node) {
66
+ if (!node) {
67
+ return;
68
+ }
69
+ _this.scrollableNode = node;
70
+ _this.calculateScrollPosition();
71
+ });
72
+ return _this;
40
73
  }
41
- resizeDetector = createResizeDetector({
42
- strategy: 'scroll'
43
- });
44
- wrapperNode;
45
- setWrapper = node => {
46
- if (!node) {
47
- return;
74
+ _createClass(Content, [{
75
+ key: "componentWillUnmount",
76
+ value: function componentWillUnmount() {
77
+ this.scrollableNode = null;
78
+ if (!this.wrapperNode) {
79
+ return;
80
+ }
81
+ this.resizeDetector.removeAllListeners(this.wrapperNode);
48
82
  }
49
- this.wrapperNode = node;
50
- this.resizeDetector.listenTo(node, this.calculateScrollPosition);
51
- };
52
- calculateScrollPosition = () => scheduleScrollAction(() => {
53
- const {
54
- scrollableNode
55
- } = this;
56
- if (!scrollableNode) {
57
- return;
83
+ }, {
84
+ key: "render",
85
+ value: function render() {
86
+ var _classNames;
87
+ var _this$props2 = this.props,
88
+ children = _this$props2.children,
89
+ className = _this$props2.className,
90
+ bottomBorder = _this$props2.bottomBorder,
91
+ scrollableWrapperClassName = _this$props2.scrollableWrapperClassName;
92
+ _this$props2.onScroll;
93
+ _this$props2.onScrollToBottom;
94
+ var fade = _this$props2.fade,
95
+ restProps = _objectWithoutProperties(_this$props2, _excluded);
96
+ var _this$state = this.state,
97
+ scrolledToTop = _this$state.scrolledToTop,
98
+ scrolledToBottom = _this$state.scrolledToBottom;
99
+ var classes = classNames(modules_e6a056e1.content, className, (_classNames = {}, _defineProperty(_classNames, modules_e6a056e1.contentWithTopFade, fade && !scrolledToTop), _defineProperty(_classNames, modules_e6a056e1.contentWithBottomFade, fade && !scrolledToBottom), _defineProperty(_classNames, modules_e6a056e1.withTransparentBottomBorder, bottomBorder), _defineProperty(_classNames, modules_e6a056e1.withBottomBorder, bottomBorder && !scrolledToBottom), _classNames));
100
+ var scrollableWrapperClasses = classNames(modules_e6a056e1.scrollableWrapper, scrollableWrapperClassName);
101
+ return /*#__PURE__*/React.createElement("div", _extends({}, restProps, {
102
+ "data-test": "ring-island-content",
103
+ className: classes
104
+ }), /*#__PURE__*/React.createElement("div", {
105
+ // it has to be focusable because it can be scrollable
106
+ // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex
107
+ tabIndex: 0,
108
+ "data-scrollable-container": true,
109
+ className: scrollableWrapperClasses,
110
+ ref: this.setScrollableNodeAndCalculatePosition,
111
+ onScroll: fade ? this.calculateScrollPosition : noop
112
+ }, fade && /*#__PURE__*/React.createElement("div", {
113
+ ref: this.setWrapper
114
+ }, children), !fade && children));
58
115
  }
59
- this.props.onScroll(scrollableNode);
60
- const {
61
- scrollTop,
62
- scrollHeight,
63
- offsetHeight
64
- } = scrollableNode;
65
- const scrolledToTop = scrollTop === 0;
66
- const scrolledToBottom = offsetHeight + scrollTop >= scrollHeight - END_DISTANCE;
67
- if (scrolledToBottom) {
68
- this.props.onScrollToBottom?.();
69
- }
70
- this.setState({
71
- scrolledToTop,
72
- scrolledToBottom
73
- });
116
+ }]);
117
+ return Content;
118
+ }(Component);
119
+ _defineProperty(Content, "propTypes", {
120
+ children: PropTypes.node,
121
+ className: PropTypes.string,
122
+ scrollableWrapperClassName: PropTypes.string,
123
+ fade: PropTypes.bool,
124
+ bottomBorder: PropTypes.bool,
125
+ onScroll: PropTypes.func,
126
+ onScrollToBottom: PropTypes.func
127
+ });
128
+ _defineProperty(Content, "defaultProps", {
129
+ fade: true,
130
+ bottomBorder: false,
131
+ onScroll: noop,
132
+ onScrollToBottom: noop
133
+ });
134
+ var ContentWrapper = /*#__PURE__*/forwardRef(function (props, ref) {
135
+ return /*#__PURE__*/React.createElement(ScrollHandlerContext.Consumer, null, function (onScroll) {
136
+ var addProps = onScroll != null ? {
137
+ onScroll: onScroll,
138
+ bottomBorder: true
139
+ } : {};
140
+ return /*#__PURE__*/React.createElement(Content, _extends({}, props, addProps, {
141
+ ref: ref
142
+ }));
74
143
  });
75
- scrollableNode;
76
- setScrollableNodeAndCalculatePosition = node => {
77
- if (!node) {
78
- return;
79
- }
80
- this.scrollableNode = node;
81
- this.calculateScrollPosition();
82
- };
83
- render() {
84
- const {
85
- children,
86
- className,
87
- bottomBorder,
88
- scrollableWrapperClassName,
89
- onScroll,
90
- onScrollToBottom,
91
- fade,
92
- ...restProps
93
- } = this.props;
94
- const {
95
- scrolledToTop,
96
- scrolledToBottom
97
- } = this.state;
98
- const classes = classNames(modules_e6a056e1.content, className, {
99
- [modules_e6a056e1.contentWithTopFade]: fade && !scrolledToTop,
100
- [modules_e6a056e1.contentWithBottomFade]: fade && !scrolledToBottom,
101
- [modules_e6a056e1.withTransparentBottomBorder]: bottomBorder,
102
- [modules_e6a056e1.withBottomBorder]: bottomBorder && !scrolledToBottom
103
- });
104
- const scrollableWrapperClasses = classNames(modules_e6a056e1.scrollableWrapper, scrollableWrapperClassName);
105
- return /*#__PURE__*/React.createElement("div", _extends({}, restProps, {
106
- "data-test": "ring-island-content",
107
- className: classes
108
- }), /*#__PURE__*/React.createElement("div", {
109
- // it has to be focusable because it can be scrollable
110
- // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex
111
- tabIndex: 0,
112
- "data-scrollable-container": true,
113
- className: scrollableWrapperClasses,
114
- ref: this.setScrollableNodeAndCalculatePosition,
115
- onScroll: fade ? this.calculateScrollPosition : noop
116
- }, fade && /*#__PURE__*/React.createElement("div", {
117
- ref: this.setWrapper
118
- }, children), !fade && children));
119
- }
120
- }
121
- const ContentWrapper = /*#__PURE__*/forwardRef((props, ref) => /*#__PURE__*/React.createElement(ScrollHandlerContext.Consumer, null, onScroll => {
122
- const addProps = onScroll != null ? {
123
- onScroll,
124
- bottomBorder: true
125
- } : {};
126
- return /*#__PURE__*/React.createElement(Content, _extends({}, props, addProps, {
127
- ref: ref
128
- }));
129
- }));
144
+ });
130
145
  ContentWrapper.displayName = 'ContentWrapper';
131
146
 
132
147
  export { ContentWrapper as default };
@@ -1,4 +1,5 @@
1
- import { _ as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
1
+ import { c as _defineProperty, j as _inherits, k as _createSuper, b as _classCallCheck, _ as _createClass, h as _objectWithoutProperties, i as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/es.array.concat.js';
2
3
  import React, { Component } from 'react';
3
4
  import PropTypes from 'prop-types';
4
5
  import classNames from 'classnames';
@@ -6,7 +7,8 @@ import { interpolateLinear } from '../global/linear-function.js';
6
7
  import { m as modules_e6a056e1 } from '../_helpers/island.js';
7
8
  import { PhaseContext } from './adaptive-island-hoc.js';
8
9
 
9
- const Start = {
10
+ var _excluded = ["children", "className", "wrapWithTitle", "border", "phase"];
11
+ var Start = {
10
12
  FONT_SIZE: 24,
11
13
  LINE_HEIGHT: 28,
12
14
  PADDING_TOP: 24,
@@ -15,7 +17,7 @@ const Start = {
15
17
  Y: 0,
16
18
  SPACING: 0
17
19
  };
18
- const End = {
20
+ var End = {
19
21
  FONT_SIZE: 13,
20
22
  LINE_HEIGHT: 20,
21
23
  PADDING_TOP: 16,
@@ -25,60 +27,71 @@ const End = {
25
27
  Y: 0.1,
26
28
  SPACING: 1.09
27
29
  };
28
- const BORDER_APPEAR_PHASE = 0.5;
29
- class Header extends Component {
30
- static propTypes = {
31
- children: PropTypes.node,
32
- className: PropTypes.string,
33
- border: PropTypes.bool,
34
- wrapWithTitle: PropTypes.bool,
35
- phase: PropTypes.number
36
- };
37
- static defaultProps = {
38
- wrapWithTitle: true
39
- };
40
- style(name) {
41
- var _this$props$phase;
42
- return interpolateLinear(Start[name], End[name], (_this$props$phase = this.props.phase) !== null && _this$props$phase !== void 0 ? _this$props$phase : 0);
30
+ var BORDER_APPEAR_PHASE = 0.5;
31
+ var Header = /*#__PURE__*/function (_Component) {
32
+ _inherits(Header, _Component);
33
+ var _super = _createSuper(Header);
34
+ function Header() {
35
+ _classCallCheck(this, Header);
36
+ return _super.apply(this, arguments);
43
37
  }
44
- render() {
45
- const {
46
- children,
47
- className,
48
- wrapWithTitle,
49
- border,
50
- phase,
51
- ...restProps
52
- } = this.props;
53
- const classes = classNames(modules_e6a056e1.header, className, {
54
- [modules_e6a056e1.withBottomBorder]: border || phase != null && phase >= BORDER_APPEAR_PHASE
55
- });
56
- const headerStyle = phase != null ? {
57
- lineHeight: `${this.style('LINE_HEIGHT')}px`,
58
- paddingTop: this.style('PADDING_TOP'),
59
- paddingBottom: this.style('PADDING_BOTTOM')
60
- } : undefined;
61
- const scaleFont = phase != null && this.style('FONT_SIZE') / Start.FONT_SIZE;
62
- const titleStyle = phase != null && phase < 1 ? {
63
- fontSize: Start.FONT_SIZE,
64
- transform: `translate(${this.style('X')}px, ${this.style('Y')}px) scale(${scaleFont})`,
65
- letterSpacing: this.style('SPACING')
66
- } : undefined;
67
- return /*#__PURE__*/React.createElement("div", _extends({}, restProps, {
68
- "data-test": "ring-island-header",
69
- className: classes,
70
- style: headerStyle
71
- }), wrapWithTitle && /*#__PURE__*/React.createElement("h2", {
72
- className: modules_e6a056e1.title,
73
- style: titleStyle
74
- }, children), !wrapWithTitle && children);
75
- }
76
- }
77
- const HeaderWrapper = props => /*#__PURE__*/React.createElement(PhaseContext.Consumer, null, phase => {
78
- const addProps = phase != null ? {
79
- phase
80
- } : {};
81
- return /*#__PURE__*/React.createElement(Header, _extends({}, props, addProps));
38
+ _createClass(Header, [{
39
+ key: "style",
40
+ value: function style(name) {
41
+ var _this$props$phase;
42
+ return interpolateLinear(Start[name], End[name], (_this$props$phase = this.props.phase) !== null && _this$props$phase !== void 0 ? _this$props$phase : 0);
43
+ }
44
+ }, {
45
+ key: "render",
46
+ value: function render() {
47
+ var _this$props = this.props,
48
+ children = _this$props.children,
49
+ className = _this$props.className,
50
+ wrapWithTitle = _this$props.wrapWithTitle,
51
+ border = _this$props.border,
52
+ phase = _this$props.phase,
53
+ restProps = _objectWithoutProperties(_this$props, _excluded);
54
+ var classes = classNames(modules_e6a056e1.header, className, _defineProperty({}, modules_e6a056e1.withBottomBorder, border || phase != null && phase >= BORDER_APPEAR_PHASE));
55
+ var headerStyle = phase != null ? {
56
+ lineHeight: "".concat(this.style('LINE_HEIGHT'), "px"),
57
+ paddingTop: this.style('PADDING_TOP'),
58
+ paddingBottom: this.style('PADDING_BOTTOM')
59
+ } : undefined;
60
+ var scaleFont = phase != null && this.style('FONT_SIZE') / Start.FONT_SIZE;
61
+ var titleStyle = phase != null && phase < 1 ? {
62
+ fontSize: Start.FONT_SIZE,
63
+ transform: "translate(".concat(this.style('X'), "px, ").concat(this.style('Y'), "px) scale(").concat(scaleFont, ")"),
64
+ letterSpacing: this.style('SPACING')
65
+ } : undefined;
66
+ return /*#__PURE__*/React.createElement("div", _extends({}, restProps, {
67
+ "data-test": "ring-island-header",
68
+ className: classes,
69
+ style: headerStyle
70
+ }), wrapWithTitle && /*#__PURE__*/React.createElement("h2", {
71
+ className: modules_e6a056e1.title,
72
+ style: titleStyle
73
+ }, children), !wrapWithTitle && children);
74
+ }
75
+ }]);
76
+ return Header;
77
+ }(Component);
78
+ _defineProperty(Header, "propTypes", {
79
+ children: PropTypes.node,
80
+ className: PropTypes.string,
81
+ border: PropTypes.bool,
82
+ wrapWithTitle: PropTypes.bool,
83
+ phase: PropTypes.number
84
+ });
85
+ _defineProperty(Header, "defaultProps", {
86
+ wrapWithTitle: true
82
87
  });
88
+ var HeaderWrapper = function HeaderWrapper(props) {
89
+ return /*#__PURE__*/React.createElement(PhaseContext.Consumer, null, function (phase) {
90
+ var addProps = phase != null ? {
91
+ phase: phase
92
+ } : {};
93
+ return /*#__PURE__*/React.createElement(Header, _extends({}, props, addProps));
94
+ });
95
+ };
83
96
 
84
97
  export { HeaderWrapper as default };
@@ -1,4 +1,4 @@
1
- import { _ as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
1
+ import { c as _defineProperty, j as _inherits, k as _createSuper, b as _classCallCheck, _ as _createClass, h as _objectWithoutProperties, i as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
2
2
  import React, { Component } from 'react';
3
3
  import PropTypes from 'prop-types';
4
4
  import classNames from 'classnames';
@@ -7,40 +7,52 @@ import adaptiveIslandHOC from './adaptive-island-hoc.js';
7
7
  import { m as modules_e6a056e1 } from '../_helpers/island.js';
8
8
  export { default as Header } from './header.js';
9
9
  export { default as Content } from './content.js';
10
+ import 'core-js/modules/es.array.reduce.js';
11
+ import 'core-js/modules/es.object.to-string.js';
12
+ import 'core-js/modules/es.object.entries.js';
13
+ import 'core-js/modules/es.array.concat.js';
10
14
  import '../global/linear-function.js';
11
15
  import 'element-resize-detector';
12
16
  import '../global/schedule-raf.js';
13
17
 
18
+ var _excluded = ["children", "className", "narrow", "withoutPaddings", "data-test"];
14
19
  /**
15
20
  * @name Island
16
21
  */
17
- class Island extends Component {
18
- static propTypes = {
19
- children: PropTypes.node,
20
- className: PropTypes.string,
21
- narrow: PropTypes.bool,
22
- withoutPaddings: PropTypes.bool,
23
- 'data-test': PropTypes.string
24
- };
25
- render() {
26
- const {
27
- children,
28
- className,
29
- narrow,
30
- withoutPaddings,
31
- 'data-test': dataTest,
32
- ...restProps
33
- } = this.props;
34
- const classes = classNames(modules_e6a056e1.island, className, {
35
- [modules_e6a056e1.narrowIsland]: narrow,
36
- [modules_e6a056e1.withoutPaddings]: withoutPaddings
37
- });
38
- return /*#__PURE__*/React.createElement("div", _extends({}, restProps, {
39
- className: classes,
40
- "data-test": joinDataTestAttributes('ring-island', dataTest)
41
- }), children);
22
+ var Island = /*#__PURE__*/function (_Component) {
23
+ _inherits(Island, _Component);
24
+ var _super = _createSuper(Island);
25
+ function Island() {
26
+ _classCallCheck(this, Island);
27
+ return _super.apply(this, arguments);
42
28
  }
43
- }
44
- const AdaptiveIsland = adaptiveIslandHOC(Island);
29
+ _createClass(Island, [{
30
+ key: "render",
31
+ value: function render() {
32
+ var _classNames;
33
+ var _this$props = this.props,
34
+ children = _this$props.children,
35
+ className = _this$props.className,
36
+ narrow = _this$props.narrow,
37
+ withoutPaddings = _this$props.withoutPaddings,
38
+ dataTest = _this$props['data-test'],
39
+ restProps = _objectWithoutProperties(_this$props, _excluded);
40
+ var classes = classNames(modules_e6a056e1.island, className, (_classNames = {}, _defineProperty(_classNames, modules_e6a056e1.narrowIsland, narrow), _defineProperty(_classNames, modules_e6a056e1.withoutPaddings, withoutPaddings), _classNames));
41
+ return /*#__PURE__*/React.createElement("div", _extends({}, restProps, {
42
+ className: classes,
43
+ "data-test": joinDataTestAttributes('ring-island', dataTest)
44
+ }), children);
45
+ }
46
+ }]);
47
+ return Island;
48
+ }(Component);
49
+ _defineProperty(Island, "propTypes", {
50
+ children: PropTypes.node,
51
+ className: PropTypes.string,
52
+ narrow: PropTypes.bool,
53
+ withoutPaddings: PropTypes.bool,
54
+ 'data-test': PropTypes.string
55
+ });
56
+ var AdaptiveIsland = adaptiveIslandHOC(Island);
45
57
 
46
58
  export { AdaptiveIsland, Island as default };
@@ -1,24 +1,34 @@
1
- import { _ as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
1
+ import { c as _defineProperty, j as _inherits, k as _createSuper, b as _classCallCheck, _ as _createClass, h as _objectWithoutProperties, i as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
2
2
  import React, { PureComponent } from 'react';
3
3
  import PropTypes from 'prop-types';
4
4
  import classNames from 'classnames';
5
5
 
6
- class Content extends PureComponent {
7
- static propTypes = {
8
- className: PropTypes.string,
9
- children: PropTypes.node
10
- };
11
- render() {
12
- const {
13
- children,
14
- className,
15
- ...restProps
16
- } = this.props;
17
- const classes = classNames('ring-island__content', className);
18
- return /*#__PURE__*/React.createElement("div", _extends({}, restProps, {
19
- className: classes
20
- }), children);
6
+ var _excluded = ["children", "className"];
7
+ var Content = /*#__PURE__*/function (_PureComponent) {
8
+ _inherits(Content, _PureComponent);
9
+ var _super = _createSuper(Content);
10
+ function Content() {
11
+ _classCallCheck(this, Content);
12
+ return _super.apply(this, arguments);
21
13
  }
22
- }
14
+ _createClass(Content, [{
15
+ key: "render",
16
+ value: function render() {
17
+ var _this$props = this.props,
18
+ children = _this$props.children,
19
+ className = _this$props.className,
20
+ restProps = _objectWithoutProperties(_this$props, _excluded);
21
+ var classes = classNames('ring-island__content', className);
22
+ return /*#__PURE__*/React.createElement("div", _extends({}, restProps, {
23
+ className: classes
24
+ }), children);
25
+ }
26
+ }]);
27
+ return Content;
28
+ }(PureComponent);
29
+ _defineProperty(Content, "propTypes", {
30
+ className: PropTypes.string,
31
+ children: PropTypes.node
32
+ });
23
33
 
24
34
  export { Content as default };