@jetbrains/ring-ui-built 6.0.30 → 6.0.32

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 (226) hide show
  1. package/components/_helpers/_rollupPluginBabelHelpers.js +7 -629
  2. package/components/_helpers/anchor.js +7 -6
  3. package/components/_helpers/button__classes.js +16 -14
  4. package/components/_helpers/caption.js +14 -20
  5. package/components/_helpers/card.js +95 -105
  6. package/components/_helpers/dialog__body-scroll-preventer.js +11 -19
  7. package/components/_helpers/icon__svg.js +22 -25
  8. package/components/_helpers/input.js +146 -177
  9. package/components/_helpers/query-assist__suggestions.js +74 -90
  10. package/components/_helpers/select__filter.js +48 -69
  11. package/components/_helpers/services-link.js +29 -37
  12. package/components/_helpers/sidebar.js +99 -107
  13. package/components/_helpers/tab-link.js +7 -7
  14. package/components/_helpers/theme.js +31 -40
  15. package/components/_helpers/title.js +57 -72
  16. package/components/alert/alert.js +150 -202
  17. package/components/alert/container.js +32 -41
  18. package/components/alert-service/alert-service.js +105 -170
  19. package/components/analytics/analytics.js +12 -22
  20. package/components/analytics/analytics__custom-plugin.js +54 -75
  21. package/components/auth/auth.js +4 -36
  22. package/components/auth/auth__core.js +746 -1471
  23. package/components/auth/background-flow.js +87 -127
  24. package/components/auth/down-notification.js +30 -73
  25. package/components/auth/iframe-flow.js +75 -133
  26. package/components/auth/request-builder.js +46 -82
  27. package/components/auth/response-parser.js +86 -116
  28. package/components/auth/storage.js +171 -334
  29. package/components/auth/token-validator.js +137 -242
  30. package/components/auth/window-flow.js +92 -134
  31. package/components/auth-dialog/auth-dialog.js +114 -172
  32. package/components/auth-dialog-service/auth-dialog-service.js +8 -31
  33. package/components/avatar/avatar-example-datauri.js +23 -1
  34. package/components/avatar/avatar.js +119 -152
  35. package/components/avatar/fallback-avatar.js +22 -38
  36. package/components/badge/badge.js +35 -45
  37. package/components/button/button.js +86 -107
  38. package/components/button-group/button-group.js +19 -33
  39. package/components/button-set/button-set.js +20 -32
  40. package/components/button-toolbar/button-toolbar.js +19 -31
  41. package/components/caret/caret.js +186 -220
  42. package/components/checkbox/checkbox.js +76 -101
  43. package/components/clipboard/clipboard-fallback.js +10 -10
  44. package/components/clipboard/clipboard.js +35 -132
  45. package/components/code/code.js +92 -166
  46. package/components/collapse/collapse-content.js +42 -64
  47. package/components/collapse/collapse-context.js +2 -2
  48. package/components/collapse/collapse-control.js +12 -14
  49. package/components/collapse/collapse.js +11 -17
  50. package/components/collapse/consts.js +4 -4
  51. package/components/collapse/utils.js +1 -3
  52. package/components/confirm/confirm.js +66 -104
  53. package/components/confirm-service/confirm-service.js +37 -59
  54. package/components/content-layout/content-layout.js +43 -64
  55. package/components/content-layout/sidebar.js +0 -1
  56. package/components/contenteditable/contenteditable.js +50 -59
  57. package/components/control-label/control-label.js +9 -9
  58. package/components/data-list/data-list.js +129 -182
  59. package/components/data-list/data-list.mock.js +2 -6
  60. package/components/data-list/item.js +143 -170
  61. package/components/data-list/selection.js +76 -136
  62. package/components/data-list/title.js +1 -12
  63. package/components/date-picker/consts.js +19 -26
  64. package/components/date-picker/date-input.js +113 -144
  65. package/components/date-picker/date-picker.js +227 -282
  66. package/components/date-picker/date-popup.js +350 -395
  67. package/components/date-picker/day.js +87 -116
  68. package/components/date-picker/month-names.js +43 -66
  69. package/components/date-picker/month-slider.js +51 -76
  70. package/components/date-picker/month.js +16 -25
  71. package/components/date-picker/months.js +43 -50
  72. package/components/date-picker/weekdays.js +12 -22
  73. package/components/date-picker/years.js +83 -110
  74. package/components/dialog/dialog.js +142 -190
  75. package/components/dialog/dialog__body-scroll-preventer.js +0 -4
  76. package/components/dropdown/anchor.js +0 -9
  77. package/components/dropdown/dropdown.js +182 -213
  78. package/components/dropdown-menu/dropdown-menu.js +71 -97
  79. package/components/editable-heading/editable-heading.js +75 -127
  80. package/components/error-bubble/error-bubble.js +31 -60
  81. package/components/error-message/error-message.js +39 -59
  82. package/components/footer/footer.js +27 -30
  83. package/components/global/compose.js +1 -10
  84. package/components/global/composeRefs.js +7 -12
  85. package/components/global/controls-height.js +2 -2
  86. package/components/global/create-stateful-context.js +15 -15
  87. package/components/global/data-tests.js +6 -14
  88. package/components/global/dom.js +47 -86
  89. package/components/global/focus-sensor-hoc.js +122 -132
  90. package/components/global/fuzzy-highlight.js +22 -36
  91. package/components/global/get-event-key.js +8 -8
  92. package/components/global/get-uid.js +4 -8
  93. package/components/global/inject-styles.js +10 -15
  94. package/components/global/listeners.js +27 -51
  95. package/components/global/memoize.js +6 -12
  96. package/components/global/normalize-indent.js +19 -50
  97. package/components/global/promise-with-timeout.js +6 -8
  98. package/components/global/prop-types.js +3 -5
  99. package/components/global/react-dom-renderer.js +28 -44
  100. package/components/global/react-render-adapter.js +1 -1
  101. package/components/global/rerender-hoc.js +12 -30
  102. package/components/global/schedule-raf.js +5 -6
  103. package/components/global/sniffer.js +1 -1
  104. package/components/global/theme.js +0 -22
  105. package/components/global/trivial-template-tag.js +3 -10
  106. package/components/global/typescript-utils.js +2 -6
  107. package/components/global/url.js +20 -26
  108. package/components/global/use-event-callback.js +6 -4
  109. package/components/grid/col.js +35 -52
  110. package/components/grid/grid.js +17 -31
  111. package/components/grid/row.js +35 -47
  112. package/components/group/group.js +17 -25
  113. package/components/header/header.js +33 -78
  114. package/components/header/logo.js +20 -36
  115. package/components/header/profile.js +166 -199
  116. package/components/header/services-link.js +0 -4
  117. package/components/header/services.js +73 -116
  118. package/components/header/smart-profile.js +111 -203
  119. package/components/header/smart-services.js +62 -113
  120. package/components/header/tray-icon.js +21 -37
  121. package/components/header/tray.js +21 -32
  122. package/components/heading/heading.js +24 -25
  123. package/components/http/http.d.ts +1 -3
  124. package/components/http/http.js +203 -353
  125. package/components/http/http.mock.js +49 -101
  126. package/components/hub-source/hub-source.js +83 -190
  127. package/components/hub-source/hub-source__user.js +11 -44
  128. package/components/hub-source/hub-source__users-groups.js +37 -65
  129. package/components/i18n/i18n-context.js +7 -10
  130. package/components/i18n/i18n.js +7 -10
  131. package/components/icon/icon.js +76 -93
  132. package/components/icon/icon__svg.js +0 -8
  133. package/components/icon/index.js +0 -8
  134. package/components/input/input.js +0 -13
  135. package/components/island/adaptive-island-hoc.js +30 -43
  136. package/components/island/content.js +115 -132
  137. package/components/island/header.js +57 -70
  138. package/components/island/island.js +28 -40
  139. package/components/island-legacy/content-legacy.js +17 -25
  140. package/components/island-legacy/header-legacy.js +19 -27
  141. package/components/island-legacy/island-legacy.js +17 -25
  142. package/components/link/clickableLink.js +44 -59
  143. package/components/link/link.js +57 -68
  144. package/components/list/consts.js +2 -2
  145. package/components/list/list.js +611 -698
  146. package/components/list/list__custom.js +44 -62
  147. package/components/list/list__hint.js +10 -19
  148. package/components/list/list__item.js +133 -174
  149. package/components/list/list__link.js +37 -50
  150. package/components/list/list__separator.js +14 -24
  151. package/components/list/list__title.js +22 -32
  152. package/components/list/list__users-groups-source.js +54 -126
  153. package/components/loader/loader.js +43 -74
  154. package/components/loader/loader__core.js +198 -263
  155. package/components/loader-inline/loader-inline.js +23 -35
  156. package/components/loader-screen/loader-screen.js +25 -46
  157. package/components/login-dialog/login-dialog.js +111 -158
  158. package/components/login-dialog/service.js +8 -34
  159. package/components/markdown/markdown.js +15 -23
  160. package/components/message/message.js +161 -203
  161. package/components/old-browsers-message/old-browsers-message.js +11 -18
  162. package/components/old-browsers-message/old-browsers-message__stop.js +0 -7
  163. package/components/old-browsers-message/white-list.js +8 -16
  164. package/components/pager/pager.js +212 -271
  165. package/components/panel/panel.js +17 -25
  166. package/components/permissions/permissions.js +127 -172
  167. package/components/permissions/permissions__cache.js +194 -224
  168. package/components/popup/popup.consts.js +1 -1
  169. package/components/popup/popup.js +284 -343
  170. package/components/popup/popup.target.js +9 -8
  171. package/components/popup/position.js +96 -106
  172. package/components/popup-menu/popup-menu.js +44 -80
  173. package/components/progress-bar/progress-bar.js +87 -104
  174. package/components/query-assist/query-assist.js +838 -916
  175. package/components/query-assist/query-assist__suggestions.js +1 -30
  176. package/components/radio/radio.js +19 -34
  177. package/components/radio/radio__item.js +52 -69
  178. package/components/select/select.js +852 -957
  179. package/components/select/select__filter.js +0 -30
  180. package/components/select/select__popup.js +373 -487
  181. package/components/shortcuts/core.js +166 -217
  182. package/components/shortcuts/shortcut-title.js +6 -11
  183. package/components/shortcuts/shortcuts-hoc.js +19 -45
  184. package/components/shortcuts/shortcuts.js +50 -75
  185. package/components/slider/slider.js +99 -122
  186. package/components/slider/slider.utils.js +14 -24
  187. package/components/storage/storage.js +4 -33
  188. package/components/storage/storage__fallback.js +149 -224
  189. package/components/storage/storage__local.js +90 -153
  190. package/components/style.css +1 -1
  191. package/components/tab-trap/tab-trap.js +122 -153
  192. package/components/table/cell.js +14 -26
  193. package/components/table/disable-hover-hoc.js +33 -51
  194. package/components/table/header-cell.js +64 -89
  195. package/components/table/header.js +104 -132
  196. package/components/table/multitable.js +107 -125
  197. package/components/table/row-with-focus-sensor.js +25 -69
  198. package/components/table/row.js +175 -216
  199. package/components/table/selection-adapter.js +1 -3
  200. package/components/table/selection-shortcuts-hoc.js +180 -181
  201. package/components/table/selection.js +156 -226
  202. package/components/table/smart-table.js +50 -88
  203. package/components/table/table.js +289 -358
  204. package/components/tabs/collapsible-more.js +46 -79
  205. package/components/tabs/collapsible-tab.js +31 -38
  206. package/components/tabs/collapsible-tabs.js +88 -153
  207. package/components/tabs/custom-item.js +4 -2
  208. package/components/tabs/dumb-tabs.js +74 -117
  209. package/components/tabs/smart-tabs.js +29 -69
  210. package/components/tabs/tab-link.js +1 -5
  211. package/components/tabs/tab.js +19 -31
  212. package/components/tabs/tabs.js +0 -31
  213. package/components/tag/tag.js +133 -173
  214. package/components/tags-input/tags-input.js +329 -427
  215. package/components/tags-list/tags-list.js +57 -78
  216. package/components/text/text.js +28 -39
  217. package/components/toggle/toggle.js +56 -70
  218. package/components/tooltip/tooltip.js +146 -190
  219. package/components/user-agreement/service.js +228 -371
  220. package/components/user-agreement/toolbox.eula.js +160 -1
  221. package/components/user-agreement/user-agreement.js +85 -120
  222. package/components/user-card/card.js +0 -29
  223. package/components/user-card/smart-user-card-tooltip.js +51 -111
  224. package/components/user-card/tooltip.js +47 -84
  225. package/components/user-card/user-card.js +0 -29
  226. package/package.json +1 -1
@@ -1,34 +1,22 @@
1
- import { _ as _defineProperty, b as _createClass, f as _classCallCheck } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import 'core-js/modules/es.array.concat.js';
3
- import 'core-js/modules/es.array.fill.js';
4
- import 'core-js/modules/es.array.filter.js';
5
- import 'core-js/modules/es.object.assign.js';
6
- import 'core-js/modules/es.object.to-string.js';
7
- import 'core-js/modules/es.regexp.exec.js';
8
- import 'core-js/modules/web.dom-collections.for-each.js';
9
1
  import { getPixelRatio } from '../global/dom.js';
10
- import 'core-js/modules/es.array.iterator.js';
11
- import 'core-js/modules/es.object.entries.js';
12
- import 'core-js/modules/es.set.js';
13
- import 'core-js/modules/es.string.split.js';
14
- import 'core-js/modules/web.dom-collections.iterator.js';
15
2
 
16
3
  var modules_00b5ad26 = {"light":"light_rui_2ac4","canvas":"canvas_rui_eff2","animate":"animate_rui_eff2","rotation-keyframes":"rotation-keyframes_rui_eff2","text":"text_rui_eff2"};
17
4
 
18
- var INITIAL_TICKS = 100;
19
- var Particle = /*#__PURE__*/function () {
20
- function Particle(_ref) {
21
- var x = _ref.x,
22
- y = _ref.y,
23
- radius = _ref.radius,
24
- color = _ref.color;
25
- _classCallCheck(this, Particle);
26
- _defineProperty(this, "radius", void 0);
27
- _defineProperty(this, "x", void 0);
28
- _defineProperty(this, "y", void 0);
29
- _defineProperty(this, "color", void 0);
30
- _defineProperty(this, "decay", void 0);
31
- _defineProperty(this, "life", void 0);
5
+ const INITIAL_TICKS = 100;
6
+ class Particle {
7
+ radius;
8
+ x;
9
+ y;
10
+ color;
11
+ decay;
12
+ life;
13
+ constructor(_ref) {
14
+ let {
15
+ x,
16
+ y,
17
+ radius,
18
+ color
19
+ } = _ref;
32
20
  this.radius = radius;
33
21
  this.x = x;
34
22
  this.y = y;
@@ -36,55 +24,101 @@ var Particle = /*#__PURE__*/function () {
36
24
  this.decay = 0.01;
37
25
  this.life = 1;
38
26
  }
39
- return _createClass(Particle, [{
40
- key: "step",
41
- value: function step() {
42
- this.life -= this.decay;
43
- }
44
- }, {
45
- key: "isAlive",
46
- value: function isAlive() {
47
- return this.life >= 0;
48
- }
49
- }, {
50
- key: "draw",
51
- value: function draw(ctx) {
52
- var alpha = this.life >= 0 ? this.life : 0;
53
- ctx.fillStyle = "rgba(".concat(this.color.r, ", ").concat(this.color.g, ", ").concat(this.color.b, ", ").concat(alpha, ")");
54
- ctx.beginPath();
55
- ctx.arc(this.x + this.radius, this.y + this.radius, this.radius, 0, Math.PI * 2);
56
- ctx.fill();
57
- }
58
- }]);
59
- }();
60
- var DETERMINISTIC_VALUE = 0.5;
27
+ step() {
28
+ this.life -= this.decay;
29
+ }
30
+ isAlive() {
31
+ return this.life >= 0;
32
+ }
33
+ draw(ctx) {
34
+ const alpha = this.life >= 0 ? this.life : 0;
35
+ ctx.fillStyle = `rgba(${this.color.r}, ${this.color.g}, ${this.color.b}, ${alpha})`;
36
+ ctx.beginPath();
37
+ ctx.arc(this.x + this.radius, this.y + this.radius, this.radius, 0, Math.PI * 2);
38
+ ctx.fill();
39
+ }
40
+ }
41
+ const DETERMINISTIC_VALUE = 0.5;
61
42
  function deterministic() {
62
43
  return DETERMINISTIC_VALUE;
63
44
  }
64
- var LoaderCore = /*#__PURE__*/function () {
65
- function LoaderCore(containerNode, props) {
66
- var _this$ctx;
67
- _classCallCheck(this, LoaderCore);
68
- _defineProperty(this, "props", void 0);
69
- _defineProperty(this, "canvas", void 0);
70
- _defineProperty(this, "textNode", void 0);
71
- _defineProperty(this, "ctx", void 0);
72
- _defineProperty(this, "height", void 0);
73
- _defineProperty(this, "width", void 0);
74
- _defineProperty(this, "particles", void 0);
75
- _defineProperty(this, "baseSpeed", void 0);
76
- _defineProperty(this, "colorIndex", void 0);
77
- _defineProperty(this, "maxRadius", void 0);
78
- _defineProperty(this, "minRadius", void 0);
79
- _defineProperty(this, "colorChangeTick", void 0);
80
- _defineProperty(this, "x", void 0);
81
- _defineProperty(this, "y", void 0);
82
- _defineProperty(this, "radius", void 0);
83
- _defineProperty(this, "hSpeed", void 0);
84
- _defineProperty(this, "vSpeed", void 0);
85
- _defineProperty(this, "radiusSpeed", void 0);
86
- _defineProperty(this, "tick", void 0);
87
- _defineProperty(this, "isRunning", void 0);
45
+ class LoaderCore {
46
+ static defaultProps = {
47
+ size: 64,
48
+ stop: false,
49
+ deterministic: false,
50
+ colors: [{
51
+ r: 215,
52
+ g: 60,
53
+ b: 234
54
+ },
55
+ //#D73CEA
56
+ {
57
+ r: 145,
58
+ g: 53,
59
+ b: 224
60
+ },
61
+ //#9135E0
62
+ {
63
+ r: 88,
64
+ g: 72,
65
+ b: 224
66
+ },
67
+ //#5848F4
68
+ {
69
+ r: 37,
70
+ g: 183,
71
+ b: 255
72
+ },
73
+ //#25B7FF
74
+ {
75
+ r: 89,
76
+ g: 189,
77
+ b: 0
78
+ },
79
+ //#59BD00
80
+ {
81
+ r: 251,
82
+ g: 172,
83
+ b: 2
84
+ },
85
+ //#FBAC02
86
+ {
87
+ r: 227,
88
+ g: 37,
89
+ b: 129
90
+ } //#E32581
91
+ ]
92
+ };
93
+ static calculateGradient(startColor, stopColor, position) {
94
+ const calculateChannelValue = (a, b) => a + Math.round((b - a) * position);
95
+ return {
96
+ r: calculateChannelValue(startColor.r, stopColor.r),
97
+ g: calculateChannelValue(startColor.g, stopColor.g),
98
+ b: calculateChannelValue(startColor.b, stopColor.b)
99
+ };
100
+ }
101
+ props;
102
+ canvas;
103
+ textNode;
104
+ ctx;
105
+ height;
106
+ width;
107
+ particles;
108
+ baseSpeed;
109
+ colorIndex;
110
+ maxRadius;
111
+ minRadius;
112
+ colorChangeTick;
113
+ x;
114
+ y;
115
+ radius;
116
+ hSpeed;
117
+ vSpeed;
118
+ radiusSpeed;
119
+ tick;
120
+ isRunning;
121
+ constructor(containerNode, props) {
88
122
  this.props = Object.assign({}, LoaderCore.defaultProps, props);
89
123
  this.canvas = document.createElement('canvas');
90
124
  this.canvas.dataset.test = 'ring-loader';
@@ -95,15 +129,15 @@ var LoaderCore = /*#__PURE__*/function () {
95
129
  this.textNode.textContent = this.props.message ? this.props.message : '';
96
130
  containerNode.appendChild(this.canvas);
97
131
  containerNode.appendChild(this.textNode);
98
- var pixelRatio = LoaderCore.getPixelRatio();
99
- var canvasSize = this.props.size * pixelRatio;
132
+ const pixelRatio = LoaderCore.getPixelRatio();
133
+ const canvasSize = this.props.size * pixelRatio;
100
134
  this.canvas.width = canvasSize;
101
135
  this.canvas.height = canvasSize;
102
136
  //Fixate canvas physical size to avoid real size scaling
103
- this.canvas.style.width = "".concat(this.props.size, "px");
104
- this.canvas.style.height = "".concat(this.props.size, "px");
137
+ this.canvas.style.width = `${this.props.size}px`;
138
+ this.canvas.style.height = `${this.props.size}px`;
105
139
  this.ctx = this.canvas.getContext('2d');
106
- (_this$ctx = this.ctx) === null || _this$ctx === void 0 || _this$ctx.scale(pixelRatio, pixelRatio);
140
+ this.ctx?.scale(pixelRatio, pixelRatio);
107
141
  this.height = this.props.size;
108
142
  this.width = this.props.size;
109
143
  this.particles = [];
@@ -129,197 +163,98 @@ var LoaderCore = /*#__PURE__*/function () {
129
163
  this.draw();
130
164
  }
131
165
  }
132
- return _createClass(LoaderCore, [{
133
- key: "prepareInitialState",
134
- value: function prepareInitialState(ticks) {
135
- for (var i = 0; i < ticks; i++) {
136
- this.step();
137
- }
138
- }
139
- }, {
140
- key: "handleLimits",
141
- value: function handleLimits(coord, radius, speed, limit) {
142
- var randomFunc = this.props.deterministic ? deterministic : Math.random;
143
- var randomizedSpeedChange = randomFunc() - this.baseSpeed / 2;
144
- if (coord + radius * 2 + this.baseSpeed >= limit) {
145
- return -(this.baseSpeed + randomizedSpeedChange);
146
- } else if (coord <= this.baseSpeed) {
147
- return this.baseSpeed + randomizedSpeedChange;
148
- }
149
- return speed;
150
- }
151
- }, {
152
- key: "calculateNextCoordinates",
153
- value: function calculateNextCoordinates() {
154
- this.x += this.hSpeed;
155
- this.y += this.vSpeed;
156
- this.hSpeed = this.handleLimits(this.x, this.radius, this.hSpeed, this.width);
157
- this.vSpeed = this.handleLimits(this.y, this.radius, this.vSpeed, this.height);
158
- }
159
- }, {
160
- key: "calculateNextRadius",
161
- value: function calculateNextRadius() {
162
- this.radius += this.radiusSpeed;
163
- if (this.radius > this.maxRadius || this.radius < this.minRadius) {
164
- this.radiusSpeed = -this.radiusSpeed;
165
- }
166
- }
167
- }, {
168
- key: "getNextColor",
169
- value: function getNextColor() {
170
- var colors = this.props.colors;
171
- var currentColor = colors[this.colorIndex];
172
- var nextColor = colors[this.colorIndex + 1] || colors[0];
173
- return LoaderCore.calculateGradient(currentColor, nextColor, this.tick / this.colorChangeTick);
174
- }
175
- }, {
176
- key: "nextTick",
177
- value: function nextTick() {
178
- this.tick++;
179
- if (this.tick > this.colorChangeTick) {
180
- this.tick = 0;
181
- this.colorIndex++;
182
- if (this.colorIndex > this.props.colors.length - 1) {
183
- this.colorIndex = 0;
184
- }
185
- }
186
- }
187
- }, {
188
- key: "step",
189
- value: function step() {
190
- this.nextTick();
191
- this.calculateNextCoordinates();
192
- this.calculateNextRadius();
193
- this.particles.forEach(function (particle) {
194
- return particle.step();
195
- });
196
- this.particles.push(new Particle({
197
- x: this.x,
198
- y: this.y,
199
- radius: this.radius,
200
- color: this.getNextColor()
201
- }));
202
- }
203
- }, {
204
- key: "removeDeadParticles",
205
- value: function removeDeadParticles() {
206
- this.particles = this.particles.filter(function (it) {
207
- return it.isAlive();
208
- });
209
- }
210
- }, {
211
- key: "draw",
212
- value: function draw() {
213
- var ctx = this.ctx;
214
- if (ctx == null) {
215
- return;
216
- }
217
- ctx.clearRect(0, 0, this.width, this.height);
218
- this.removeDeadParticles();
219
- this.particles.forEach(function (particle) {
220
- return particle.draw(ctx);
221
- });
222
- }
223
- }, {
224
- key: "loop",
225
- value: function loop() {
226
- var _this = this;
166
+ static getPixelRatio() {
167
+ return getPixelRatio();
168
+ }
169
+ prepareInitialState(ticks) {
170
+ for (let i = 0; i < ticks; i++) {
227
171
  this.step();
228
- this.draw();
229
- if (this.isRunning) {
230
- window.requestAnimationFrame(function () {
231
- return _this.loop();
232
- });
233
- }
234
172
  }
235
- }, {
236
- key: "updateMessage",
237
- value: function updateMessage(text) {
238
- this.textNode.textContent = text || '';
239
- }
240
- }, {
241
- key: "stopAnimation",
242
- value: function stopAnimation() {
243
- this.isRunning = false;
244
- this.canvas.classList.remove(modules_00b5ad26.animate);
173
+ }
174
+ handleLimits(coord, radius, speed, limit) {
175
+ const randomFunc = this.props.deterministic ? deterministic : Math.random;
176
+ const randomizedSpeedChange = randomFunc() - this.baseSpeed / 2;
177
+ if (coord + radius * 2 + this.baseSpeed >= limit) {
178
+ return -(this.baseSpeed + randomizedSpeedChange);
179
+ } else if (coord <= this.baseSpeed) {
180
+ return this.baseSpeed + randomizedSpeedChange;
245
181
  }
246
- }, {
247
- key: "startAnimation",
248
- value: function startAnimation() {
249
- this.isRunning = true;
250
- this.canvas.classList.add(modules_00b5ad26.animate);
251
- this.loop();
182
+ return speed;
183
+ }
184
+ calculateNextCoordinates() {
185
+ this.x += this.hSpeed;
186
+ this.y += this.vSpeed;
187
+ this.hSpeed = this.handleLimits(this.x, this.radius, this.hSpeed, this.width);
188
+ this.vSpeed = this.handleLimits(this.y, this.radius, this.vSpeed, this.height);
189
+ }
190
+ calculateNextRadius() {
191
+ this.radius += this.radiusSpeed;
192
+ if (this.radius > this.maxRadius || this.radius < this.minRadius) {
193
+ this.radiusSpeed = -this.radiusSpeed;
252
194
  }
253
- }, {
254
- key: "destroy",
255
- value: function destroy() {
256
- this.isRunning = false;
195
+ }
196
+ getNextColor() {
197
+ const colors = this.props.colors;
198
+ const currentColor = colors[this.colorIndex];
199
+ const nextColor = colors[this.colorIndex + 1] || colors[0];
200
+ return LoaderCore.calculateGradient(currentColor, nextColor, this.tick / this.colorChangeTick);
201
+ }
202
+ nextTick() {
203
+ this.tick++;
204
+ if (this.tick > this.colorChangeTick) {
205
+ this.tick = 0;
206
+ this.colorIndex++;
207
+ if (this.colorIndex > this.props.colors.length - 1) {
208
+ this.colorIndex = 0;
209
+ }
257
210
  }
258
- }], [{
259
- key: "calculateGradient",
260
- value: function calculateGradient(startColor, stopColor, position) {
261
- var calculateChannelValue = function calculateChannelValue(a, b) {
262
- return a + Math.round((b - a) * position);
263
- };
264
- return {
265
- r: calculateChannelValue(startColor.r, stopColor.r),
266
- g: calculateChannelValue(startColor.g, stopColor.g),
267
- b: calculateChannelValue(startColor.b, stopColor.b)
268
- };
211
+ }
212
+ step() {
213
+ this.nextTick();
214
+ this.calculateNextCoordinates();
215
+ this.calculateNextRadius();
216
+ this.particles.forEach(particle => particle.step());
217
+ this.particles.push(new Particle({
218
+ x: this.x,
219
+ y: this.y,
220
+ radius: this.radius,
221
+ color: this.getNextColor()
222
+ }));
223
+ }
224
+ removeDeadParticles() {
225
+ this.particles = this.particles.filter(it => it.isAlive());
226
+ }
227
+ draw() {
228
+ const ctx = this.ctx;
229
+ if (ctx == null) {
230
+ return;
269
231
  }
270
- }, {
271
- key: "getPixelRatio",
272
- value: function getPixelRatio$1() {
273
- return getPixelRatio();
232
+ ctx.clearRect(0, 0, this.width, this.height);
233
+ this.removeDeadParticles();
234
+ this.particles.forEach(particle => particle.draw(ctx));
235
+ }
236
+ loop() {
237
+ this.step();
238
+ this.draw();
239
+ if (this.isRunning) {
240
+ window.requestAnimationFrame(() => this.loop());
274
241
  }
275
- }]);
276
- }();
277
- _defineProperty(LoaderCore, "defaultProps", {
278
- size: 64,
279
- stop: false,
280
- deterministic: false,
281
- colors: [{
282
- r: 215,
283
- g: 60,
284
- b: 234
285
- },
286
- //#D73CEA
287
- {
288
- r: 145,
289
- g: 53,
290
- b: 224
291
- },
292
- //#9135E0
293
- {
294
- r: 88,
295
- g: 72,
296
- b: 224
297
- },
298
- //#5848F4
299
- {
300
- r: 37,
301
- g: 183,
302
- b: 255
303
- },
304
- //#25B7FF
305
- {
306
- r: 89,
307
- g: 189,
308
- b: 0
309
- },
310
- //#59BD00
311
- {
312
- r: 251,
313
- g: 172,
314
- b: 2
315
- },
316
- //#FBAC02
317
- {
318
- r: 227,
319
- g: 37,
320
- b: 129
321
- } //#E32581
322
- ]
323
- });
242
+ }
243
+ updateMessage(text) {
244
+ this.textNode.textContent = text || '';
245
+ }
246
+ stopAnimation() {
247
+ this.isRunning = false;
248
+ this.canvas.classList.remove(modules_00b5ad26.animate);
249
+ }
250
+ startAnimation() {
251
+ this.isRunning = true;
252
+ this.canvas.classList.add(modules_00b5ad26.animate);
253
+ this.loop();
254
+ }
255
+ destroy() {
256
+ this.isRunning = false;
257
+ }
258
+ }
324
259
 
325
260
  export { LoaderCore as default };
@@ -1,48 +1,36 @@
1
- import { _ as _defineProperty, a as _inherits, b as _createClass, c as _objectWithoutProperties, e as _extends, f as _classCallCheck, g as _callSuper } from '../_helpers/_rollupPluginBabelHelpers.js';
1
+ import { _ as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
2
2
  import React, { PureComponent } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import PropTypes from 'prop-types';
5
5
  import joinDataTestAttributes from '../global/data-tests.js';
6
- import 'core-js/modules/es.array.concat.js';
7
- import 'core-js/modules/es.array.reduce.js';
8
- import 'core-js/modules/es.object.entries.js';
9
- import 'core-js/modules/es.object.to-string.js';
10
6
 
11
7
  var modules_e49a3529 = {"dark":"dark_rui_f090","light":"light_rui_2ac4","loader":"loader_rui_092a","spin":"spin_rui_092a","pulse":"pulse_rui_092a","children":"children_rui_092a"};
12
8
 
13
- var _excluded = ["className", "data-test", "children"];
14
9
  /**
15
10
  * @name Loader Inline
16
11
  */
17
- var LoaderInline = /*#__PURE__*/function (_PureComponent) {
18
- function LoaderInline() {
19
- _classCallCheck(this, LoaderInline);
20
- return _callSuper(this, LoaderInline, arguments);
12
+ class LoaderInline extends PureComponent {
13
+ static propTypes = {
14
+ className: PropTypes.string,
15
+ 'data-test': PropTypes.string,
16
+ children: PropTypes.node
17
+ };
18
+ render() {
19
+ const {
20
+ className,
21
+ 'data-test': dataTest,
22
+ children,
23
+ ...restProps
24
+ } = this.props;
25
+ const classes = classNames(modules_e49a3529.loader, className);
26
+ const loader = /*#__PURE__*/React.createElement("div", _extends({}, restProps, {
27
+ "data-test": joinDataTestAttributes('ring-loader-inline', dataTest),
28
+ className: classes
29
+ }));
30
+ return children ? /*#__PURE__*/React.createElement(React.Fragment, null, loader, /*#__PURE__*/React.createElement("span", {
31
+ className: modules_e49a3529.children
32
+ }, children)) : loader;
21
33
  }
22
- _inherits(LoaderInline, _PureComponent);
23
- return _createClass(LoaderInline, [{
24
- key: "render",
25
- value: function render() {
26
- var _this$props = this.props,
27
- className = _this$props.className,
28
- dataTest = _this$props['data-test'],
29
- children = _this$props.children,
30
- restProps = _objectWithoutProperties(_this$props, _excluded);
31
- var classes = classNames(modules_e49a3529.loader, className);
32
- var loader = /*#__PURE__*/React.createElement("div", _extends({}, restProps, {
33
- "data-test": joinDataTestAttributes('ring-loader-inline', dataTest),
34
- className: classes
35
- }));
36
- return children ? /*#__PURE__*/React.createElement(React.Fragment, null, loader, /*#__PURE__*/React.createElement("span", {
37
- className: modules_e49a3529.children
38
- }, children)) : loader;
39
- }
40
- }]);
41
- }(PureComponent);
42
- _defineProperty(LoaderInline, "propTypes", {
43
- className: PropTypes.string,
44
- 'data-test': PropTypes.string,
45
- children: PropTypes.node
46
- });
34
+ }
47
35
 
48
36
  export { LoaderInline as default };
@@ -1,62 +1,41 @@
1
- import { _ as _defineProperty, a as _inherits, b as _createClass, c as _objectWithoutProperties, e as _extends, f as _classCallCheck, g as _callSuper } from '../_helpers/_rollupPluginBabelHelpers.js';
1
+ import { _ as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
2
2
  import React, { PureComponent } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import PropTypes from 'prop-types';
5
5
  import Loader from '../loader/loader.js';
6
- import 'core-js/modules/es.array.concat.js';
7
6
  import '../global/data-tests.js';
8
- import 'core-js/modules/es.array.reduce.js';
9
- import 'core-js/modules/es.object.entries.js';
10
- import 'core-js/modules/es.object.to-string.js';
11
7
  import '../loader/loader__core.js';
12
- import 'core-js/modules/es.array.fill.js';
13
- import 'core-js/modules/es.array.filter.js';
14
- import 'core-js/modules/es.object.assign.js';
15
- import 'core-js/modules/es.regexp.exec.js';
16
- import 'core-js/modules/web.dom-collections.for-each.js';
17
8
  import '../global/dom.js';
18
- import 'core-js/modules/es.array.iterator.js';
19
- import 'core-js/modules/es.set.js';
20
- import 'core-js/modules/es.string.split.js';
21
- import 'core-js/modules/web.dom-collections.iterator.js';
22
9
 
23
10
  var modules_122a82e9 = {"light":"light_rui_2ac4","loaderScreen":"loaderScreen_rui_90dd","loader":"loader_rui_90dd","loaderWithoutSpacing":"loaderWithoutSpacing_rui_90dd"};
24
11
 
25
- var _excluded = ["message", "className", "containerClassName"];
26
12
  /**
27
13
  * @name Loader Screen
28
14
  */
29
- var LoaderScreen = /*#__PURE__*/function (_PureComponent) {
30
- function LoaderScreen() {
31
- _classCallCheck(this, LoaderScreen);
32
- return _callSuper(this, LoaderScreen, arguments);
15
+ class LoaderScreen extends PureComponent {
16
+ static propTypes = {
17
+ className: PropTypes.string,
18
+ containerClassName: PropTypes.string,
19
+ message: PropTypes.string
20
+ };
21
+ render() {
22
+ const {
23
+ message,
24
+ className,
25
+ containerClassName,
26
+ ...restProps
27
+ } = this.props;
28
+ const containerClasses = classNames(containerClassName, modules_122a82e9.loaderScreen);
29
+ const loaderClasses = classNames(className, modules_122a82e9.loader, {
30
+ [modules_122a82e9.loaderWithoutSpacing]: !message
31
+ });
32
+ return /*#__PURE__*/React.createElement("div", {
33
+ className: containerClasses
34
+ }, /*#__PURE__*/React.createElement(Loader, _extends({}, restProps, {
35
+ message: message,
36
+ className: loaderClasses
37
+ })));
33
38
  }
34
- _inherits(LoaderScreen, _PureComponent);
35
- return _createClass(LoaderScreen, [{
36
- key: "render",
37
- value: function render() {
38
- var _this$props = this.props,
39
- message = _this$props.message,
40
- className = _this$props.className,
41
- containerClassName = _this$props.containerClassName,
42
- restProps = _objectWithoutProperties(_this$props, _excluded);
43
- var containerClasses = classNames(containerClassName, modules_122a82e9.loaderScreen);
44
- var loaderClasses = classNames(className, modules_122a82e9.loader, {
45
- [modules_122a82e9.loaderWithoutSpacing]: !message
46
- });
47
- return /*#__PURE__*/React.createElement("div", {
48
- className: containerClasses
49
- }, /*#__PURE__*/React.createElement(Loader, _extends({}, restProps, {
50
- message: message,
51
- className: loaderClasses
52
- })));
53
- }
54
- }]);
55
- }(PureComponent);
56
- _defineProperty(LoaderScreen, "propTypes", {
57
- className: PropTypes.string,
58
- containerClassName: PropTypes.string,
59
- message: PropTypes.string
60
- });
39
+ }
61
40
 
62
41
  export { LoaderScreen as default };