@splunk/react-ui 5.9.0 → 5.9.1

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 (53) hide show
  1. package/ButtonSimple.js +1 -1
  2. package/CHANGELOG.md +16 -0
  3. package/Code.js +177 -170
  4. package/ColumnLayout.js +69 -45
  5. package/Dropdown.js +74 -68
  6. package/LICENSE +1 -1
  7. package/MIGRATION.md +40 -0
  8. package/Markdown.js +331 -306
  9. package/Menu.js +2 -2
  10. package/Multiselect.js +59 -59
  11. package/Number.js +236 -242
  12. package/SimpleTable.d.ts +2 -0
  13. package/SimpleTable.js +433 -0
  14. package/SlidingPanels.js +224 -153
  15. package/SpotLight.d.ts +2 -0
  16. package/SpotLight.js +687 -0
  17. package/Table.js +1230 -1233
  18. package/docker-compose.yml +12 -18
  19. package/docs-llm/Avatar.md +2 -2
  20. package/docs-llm/Collapsible Panel.md +11 -57
  21. package/docs-llm/Column Layout.md +2 -2
  22. package/docs-llm/Divider.md +33 -0
  23. package/docs-llm/Message Bar.md +4 -1
  24. package/docs-llm/Multiselect.md +180 -159
  25. package/docs-llm/Table.md +7 -7
  26. package/docs-llm/Typography.md +1 -1
  27. package/docs-llm/llms.txt +1 -1
  28. package/package.json +9 -11
  29. package/test-runner-jest.config.js +4 -53
  30. package/types/src/CollapsiblePanel/docs/examples/Actions.d.ts +1 -1
  31. package/types/src/ColumnLayout/ColumnLayout.d.ts +2 -2
  32. package/types/src/Divider/docs/examples/VerticalWithAlignItems.d.ts +8 -0
  33. package/types/src/Markdown/Markdown.d.ts +14 -2
  34. package/types/src/Markdown/renderers/MarkdownTable.d.ts +2 -22
  35. package/types/src/Markdown/renderers/MarkdownWrapper.d.ts +11 -0
  36. package/types/src/Markdown/renderers/index.d.ts +3 -1
  37. package/types/src/Multiselect/Compact.d.ts +4 -0
  38. package/types/src/Multiselect/Multiselect.d.ts +4 -0
  39. package/types/src/Multiselect/docs/examples/LoadMoreWithSelectAll.d.ts +9 -0
  40. package/types/src/SelectBase/SelectBase.d.ts +4 -0
  41. package/types/src/SimpleTable/Body.d.ts +25 -0
  42. package/types/src/SimpleTable/Cell.d.ts +20 -0
  43. package/types/src/SimpleTable/Head.d.ts +20 -0
  44. package/types/src/SimpleTable/HeadCell.d.ts +20 -0
  45. package/types/src/SimpleTable/Row.d.ts +20 -0
  46. package/types/src/SimpleTable/SimpleTable.d.ts +37 -0
  47. package/types/src/SimpleTable/index.d.ts +3 -0
  48. package/types/src/SpotLight/SpotLight.d.ts +88 -0
  49. package/types/src/SpotLight/index.d.ts +2 -0
  50. package/types/src/Table/Row.d.ts +1 -1
  51. package/types/src/Table/Table.d.ts +1 -1
  52. package/types/src/Typography/Typography.d.ts +1 -1
  53. package/types/src/Multiselect/docs/examples/LoadMoreOnScrollBottom.d.ts +0 -7
package/Number.js CHANGED
@@ -61,7 +61,7 @@
61
61
  e.r(r);
62
62
  // EXPORTS
63
63
  e.d(r, {
64
- default: () => /* reexport */ ce
64
+ default: () => /* reexport */ le
65
65
  });
66
66
  // CONCATENATED MODULE: external "react"
67
67
  const n = require("react");
@@ -75,99 +75,96 @@
75
75
  // CONCATENATED MODULE: external "@splunk/react-ui/useControlled"
76
76
  const u = require("@splunk/react-ui/useControlled");
77
77
  var c = e.n(u);
78
- // CONCATENATED MODULE: external "@splunk/react-ui/usePrevious"
79
- const s = require("@splunk/react-ui/usePrevious");
80
- var d = e.n(s);
81
78
  // CONCATENATED MODULE: external "@splunk/ui-utils/i18n"
82
- const f = require("@splunk/ui-utils/i18n");
79
+ const d = require("@splunk/ui-utils/i18n");
83
80
  // CONCATENATED MODULE: external "@splunk/ui-utils/keyboard"
84
- const v = require("@splunk/ui-utils/keyboard");
81
+ const s = require("@splunk/ui-utils/keyboard");
85
82
  // CONCATENATED MODULE: external "styled-components"
86
- const p = require("styled-components");
87
- var m = e.n(p);
83
+ const f = require("styled-components");
84
+ var v = e.n(f);
88
85
  // CONCATENATED MODULE: external "@splunk/react-icons/ChevronDown"
89
- const b = require("@splunk/react-icons/ChevronDown");
90
- var y = e.n(b);
86
+ const p = require("@splunk/react-icons/ChevronDown");
87
+ var m = e.n(p);
91
88
  // CONCATENATED MODULE: external "@splunk/react-icons/ChevronUp"
92
- const h = require("@splunk/react-icons/ChevronUp");
93
- var g = e.n(h);
89
+ const b = require("@splunk/react-icons/ChevronUp");
90
+ var y = e.n(b);
94
91
  // CONCATENATED MODULE: external "@splunk/react-ui/Clickable"
95
- const S = require("@splunk/react-ui/Clickable");
96
- var C = e.n(S);
92
+ const h = require("@splunk/react-ui/Clickable");
93
+ var g = e.n(h);
97
94
  // CONCATENATED MODULE: external "@splunk/react-ui/Divider"
98
- const w = require("@splunk/react-ui/Divider");
99
- var O = e.n(w);
95
+ const S = require("@splunk/react-ui/Divider");
96
+ var C = e.n(S);
100
97
  // CONCATENATED MODULE: external "@splunk/react-ui/Text"
101
- const k = require("@splunk/react-ui/Text");
102
- var j = e.n(k);
98
+ const w = require("@splunk/react-ui/Text");
99
+ var O = e.n(w);
103
100
  // CONCATENATED MODULE: external "@splunk/themes"
104
- const x = require("@splunk/themes");
101
+ const k = require("@splunk/themes");
105
102
  // CONCATENATED MODULE: ./src/Number/NumberStyles.ts
106
- var A = "24px";
107
- var B = m()(j()).withConfig({
103
+ var j = "24px";
104
+ var x = v()(O()).withConfig({
108
105
  displayName: "NumberStyles__StyledText",
109
106
  componentId: "sc-2ekj9s-0"
110
107
  })([ "&[data-inline]{width:180px;}", "" ], (function(e) {
111
108
  var r = e.$startAdornment;
112
- return r ? (0, p.css)([ "padding-inline-start:0;" ]) : (0, p.css)([ "padding-inline-end:0;" ]);
109
+ return r ? (0, f.css)([ "padding-inline-start:0;" ]) : (0, f.css)([ "padding-inline-end:0;" ]);
113
110
  }));
114
- var D = m().div.withConfig({
111
+ var A = v().div.withConfig({
115
112
  displayName: "NumberStyles__StyledControls",
116
113
  componentId: "sc-2ekj9s-1"
117
- })([ "width:", ";height:100%;", "" ], A, (function(e) {
114
+ })([ "width:", ";height:100%;", "" ], j, (function(e) {
118
115
  var r = e.$isAppend, n = e.$disabled, t = e.$error;
119
116
  var o;
120
117
  if (n) {
121
- o = x.variables.interactiveColorBorderDisabled;
118
+ o = k.variables.interactiveColorBorderDisabled;
122
119
  } else if (t) {
123
- o = x.variables.interactiveColorAccentError;
120
+ o = k.variables.interactiveColorAccentError;
124
121
  } else {
125
- o = x.variables.interactiveColorBorder;
122
+ o = k.variables.interactiveColorBorder;
126
123
  }
127
- return (0, p.css)([ "", "" ], r ? (0, p.css)([ "border-inline-end:", " solid ", ";" ], x.variables.inputBorderWidth, o) : (0,
128
- p.css)([ "border-inline-start:", " solid ", ";" ], x.variables.inputBorderWidth, o));
124
+ return (0, f.css)([ "", "" ], r ? (0, f.css)([ "border-inline-end:", " solid ", ";" ], k.variables.inputBorderWidth, o) : (0,
125
+ f.css)([ "border-inline-start:", " solid ", ";" ], k.variables.inputBorderWidth, o));
129
126
  }));
130
- var N = (0, p.css)([ "height:12px;width:12px;" ]);
131
- var P = m()(y()).withConfig({
127
+ var B = (0, f.css)([ "height:12px;width:12px;" ]);
128
+ var D = v()(m()).withConfig({
132
129
  displayName: "NumberStyles__StyledChevronDown",
133
130
  componentId: "sc-2ekj9s-2"
134
- })([ "", ";" ], N);
135
- var T = m()(g()).withConfig({
131
+ })([ "", ";" ], B);
132
+ var N = v()(y()).withConfig({
136
133
  displayName: "NumberStyles__StyledChevronUp",
137
134
  componentId: "sc-2ekj9s-3"
138
- })([ "", ";" ], N);
139
- var _ = (0, p.css)([ "display:flex;align-items:center;justify-content:center;font-size:inherit;min-width:0;min-height:0;color:", ";height:calc(50% - 0.5px);width:100%;&:hover:not([disabled]){background-color:", ";}&:active:not([disabled]){background-color:", ";box-shadow:", ";}" ], x.variables.contentColorActive, x.variables.actionColorBackgroundSecondaryHover, x.variables.actionColorBackgroundSecondary, x.variables.focusShadowInset);
140
- var E = m()(C()).withConfig({
135
+ })([ "", ";" ], B);
136
+ var T = (0, f.css)([ "display:flex;align-items:center;justify-content:center;font-size:inherit;min-width:0;min-height:0;color:", ";height:calc(50% - 0.5px);width:100%;&:hover:not([disabled]){background-color:", ";}&:active:not([disabled]){background-color:", ";box-shadow:", ";}" ], k.variables.contentColorActive, k.variables.actionColorBackgroundSecondaryHover, k.variables.actionColorBackgroundSecondary, k.variables.focusShadowInset);
137
+ var _ = v()(g()).withConfig({
141
138
  displayName: "NumberStyles__StyledDecrementButton",
142
139
  componentId: "sc-2ekj9s-4"
143
- })([ "", ";border-top-left-radius:0;border-top-right-radius:0;" ], _);
144
- var I = m()(C()).withConfig({
140
+ })([ "", ";border-top-left-radius:0;border-top-right-radius:0;" ], T);
141
+ var P = v()(g()).withConfig({
145
142
  displayName: "NumberStyles__StyledIncrementButton",
146
143
  componentId: "sc-2ekj9s-5"
147
- })([ "", ";border-bottom-left-radius:0;border-bottom-right-radius:0;" ], _);
148
- var q = m()(O()).withConfig({
144
+ })([ "", ";border-bottom-left-radius:0;border-bottom-right-radius:0;" ], T);
145
+ var E = v()(C()).withConfig({
149
146
  displayName: "NumberStyles__StyledDivider",
150
147
  componentId: "sc-2ekj9s-6"
151
148
  })([ "border-color:", ";" ], (function(e) {
152
149
  var r = e.$disabled, n = e.$error;
153
150
  if (r) {
154
- return x.variables.interactiveColorBorderDisabled;
151
+ return k.variables.interactiveColorBorderDisabled;
155
152
  }
156
153
  if (n) {
157
- return x.variables.interactiveColorAccentError;
154
+ return k.variables.interactiveColorAccentError;
158
155
  }
159
- return x.variables.interactiveColorBorder;
156
+ return k.variables.interactiveColorBorder;
160
157
  }));
161
158
  // CONCATENATED MODULE: external "lodash/isString"
162
- const $ = require("lodash/isString");
163
- var K = e.n($);
159
+ const I = require("lodash/isString");
160
+ var q = e.n(I);
164
161
  // CONCATENATED MODULE: ./src/Number/utils.ts
165
- var M = function e(r) {
162
+ var $ = function e(r) {
166
163
  // A more robust and expandable solution would be to use formatToParts() once IE requirements are dropped.
167
164
  var n = new Intl.NumberFormat(r.replace("_", "-")).format(1.2);
168
165
  return n.indexOf(",") > -1 ? "," : ".";
169
166
  };
170
- var R = function e(r) {
167
+ var K = function e(r) {
171
168
  var n = r.val, t = r.min, o = r.max, i = r.roundTo;
172
169
  var l = n;
173
170
  if (!a()(n)) {
@@ -182,20 +179,20 @@
182
179
  var u = Math.pow(10, i);
183
180
  return Math.round(l * u) / u;
184
181
  };
185
- var U = function e(r) {
182
+ var M = function e(r) {
186
183
  var n = r.str, t = r.locale, o = r.min, i = r.max, l = r.roundTo;
187
184
  var u = n;
188
- if (!K()(u) || u === "") {
185
+ if (!q()(u) || u === "") {
189
186
  return undefined;
190
187
  }
191
- if (M(t) === ".") {
188
+ if ($(t) === ".") {
192
189
  // remove leading non-numeric characters.
193
190
  u = u.replace(/^[^\d.-]/, "");
194
191
  } else {
195
192
  // remove leading non-numeric characters and replace comma with period
196
193
  u = u.replace(/^[^\d,-]/, "").replace(",", ".");
197
194
  }
198
- var c = R({
195
+ var c = K({
199
196
  val: parseFloat(u),
200
197
  min: o,
201
198
  max: i,
@@ -206,21 +203,21 @@
206
203
  }
207
204
  return undefined;
208
205
  };
209
- var F = function e(r, n) {
206
+ var R = function e(r, n) {
210
207
  if (r === undefined || !a()(r)) {
211
208
  return "";
212
209
  }
213
- if (M(n) === ".") {
210
+ if ($(n) === ".") {
214
211
  return r.toString();
215
212
  }
216
213
  // comma separated case
217
214
  return r.toString().replace(".", ",");
218
215
  };
219
- var V = function e(r) {
216
+ var U = function e(r) {
220
217
  var n = r.value, t = r.max;
221
218
  return n !== undefined && a()(n) && t !== undefined && a()(t) && n >= t;
222
219
  };
223
- var z = function e(r) {
220
+ var F = function e(r) {
224
221
  var n = r.value, t = r.min;
225
222
  return n !== undefined && a()(n) && t !== undefined && a()(t) && n <= t;
226
223
  };
@@ -231,7 +228,7 @@
231
228
  * @param ref - The React callback or object ref. Can be `null` or `undefined`.
232
229
  * @param current - The new value of the ref.
233
230
  */
234
- function W(e, r) {
231
+ function V(e, r) {
235
232
  if (e) {
236
233
  if (typeof e === "function") {
237
234
  e(r);
@@ -244,16 +241,16 @@
244
241
  }
245
242
  }
246
243
  // CONCATENATED MODULE: ./src/Number/Number.tsx
247
- function H(e) {
244
+ function z(e) {
248
245
  "@babel/helpers - typeof";
249
- return H = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) {
246
+ return z = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) {
250
247
  return typeof e;
251
248
  } : function(e) {
252
249
  return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e;
253
- }, H(e);
250
+ }, z(e);
254
251
  }
255
- function G() {
256
- return G = Object.assign ? Object.assign.bind() : function(e) {
252
+ function W() {
253
+ return W = Object.assign ? Object.assign.bind() : function(e) {
257
254
  for (var r = 1; r < arguments.length; r++) {
258
255
  var n = arguments[r];
259
256
  for (var t in n) {
@@ -261,9 +258,9 @@
261
258
  }
262
259
  }
263
260
  return e;
264
- }, G.apply(null, arguments);
261
+ }, W.apply(null, arguments);
265
262
  }
266
- function J(e, r) {
263
+ function H(e, r) {
267
264
  var n = Object.keys(e);
268
265
  if (Object.getOwnPropertySymbols) {
269
266
  var t = Object.getOwnPropertySymbols(e);
@@ -276,57 +273,57 @@
276
273
  function L(e) {
277
274
  for (var r = 1; r < arguments.length; r++) {
278
275
  var n = null != arguments[r] ? arguments[r] : {};
279
- r % 2 ? J(Object(n), !0).forEach((function(r) {
280
- Q(e, r, n[r]);
281
- })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : J(Object(n)).forEach((function(r) {
276
+ r % 2 ? H(Object(n), !0).forEach((function(r) {
277
+ G(e, r, n[r]);
278
+ })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : H(Object(n)).forEach((function(r) {
282
279
  Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(n, r));
283
280
  }));
284
281
  }
285
282
  return e;
286
283
  }
287
- function Q(e, r, n) {
288
- return (r = X(r)) in e ? Object.defineProperty(e, r, {
284
+ function G(e, r, n) {
285
+ return (r = J(r)) in e ? Object.defineProperty(e, r, {
289
286
  value: n,
290
287
  enumerable: !0,
291
288
  configurable: !0,
292
289
  writable: !0
293
290
  }) : e[r] = n, e;
294
291
  }
295
- function X(e) {
296
- var r = Y(e, "string");
297
- return "symbol" == H(r) ? r : r + "";
292
+ function J(e) {
293
+ var r = Q(e, "string");
294
+ return "symbol" == z(r) ? r : r + "";
298
295
  }
299
- function Y(e, r) {
300
- if ("object" != H(e) || !e) return e;
296
+ function Q(e, r) {
297
+ if ("object" != z(e) || !e) return e;
301
298
  var n = e[Symbol.toPrimitive];
302
299
  if (void 0 !== n) {
303
300
  var t = n.call(e, r || "default");
304
- if ("object" != H(t)) return t;
301
+ if ("object" != z(t)) return t;
305
302
  throw new TypeError("@@toPrimitive must return a primitive value.");
306
303
  }
307
304
  return ("string" === r ? String : Number)(e);
308
305
  }
309
- function Z(e, r) {
310
- return oe(e) || te(e, r) || re(e, r) || ee();
306
+ function X(e, r) {
307
+ return ne(e) || re(e, r) || Z(e, r) || Y();
311
308
  }
312
- function ee() {
309
+ function Y() {
313
310
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
314
311
  }
315
- function re(e, r) {
312
+ function Z(e, r) {
316
313
  if (e) {
317
- if ("string" == typeof e) return ne(e, r);
314
+ if ("string" == typeof e) return ee(e, r);
318
315
  var n = {}.toString.call(e).slice(8, -1);
319
- return "Object" === n && e.constructor && (n = e.constructor.name), "Map" === n || "Set" === n ? Array.from(e) : "Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? ne(e, r) : void 0;
316
+ return "Object" === n && e.constructor && (n = e.constructor.name), "Map" === n || "Set" === n ? Array.from(e) : "Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? ee(e, r) : void 0;
320
317
  }
321
318
  }
322
- function ne(e, r) {
319
+ function ee(e, r) {
323
320
  (null == r || r > e.length) && (r = e.length);
324
321
  for (var n = 0, t = Array(r); n < r; n++) {
325
322
  t[n] = e[n];
326
323
  }
327
324
  return t;
328
325
  }
329
- function te(e, r) {
326
+ function re(e, r) {
330
327
  var n = null == e ? null : "undefined" != typeof Symbol && e[Symbol.iterator] || e["@@iterator"];
331
328
  if (null != n) {
332
329
  var t, o, a, i, l = [], u = !0, c = !1;
@@ -348,12 +345,12 @@
348
345
  return l;
349
346
  }
350
347
  }
351
- function oe(e) {
348
+ function ne(e) {
352
349
  if (Array.isArray(e)) return e;
353
350
  }
354
- function ae(e, r) {
351
+ function te(e, r) {
355
352
  if (null == e) return {};
356
- var n, t, o = ie(e, r);
353
+ var n, t, o = oe(e, r);
357
354
  if (Object.getOwnPropertySymbols) {
358
355
  var a = Object.getOwnPropertySymbols(e);
359
356
  for (t = 0; t < a.length; t++) {
@@ -362,7 +359,7 @@
362
359
  }
363
360
  return o;
364
361
  }
365
- function ie(e, r) {
362
+ function oe(e, r) {
366
363
  if (null == e) return {};
367
364
  var n = {};
368
365
  for (var t in e) {
@@ -375,7 +372,7 @@
375
372
  }
376
373
  /** @public */
377
374
  /** @public */
378
- /** @public */ var le = {
375
+ /** @public */ var ae = {
379
376
  append: l().bool,
380
377
  children: l().node,
381
378
  defaultValue: l().number,
@@ -406,44 +403,43 @@
406
403
  step: l().number,
407
404
  value: l().number
408
405
  };
409
- function ue(e) {
410
- var r = e.append, o = e.defaultValue, i = e.describedBy, l = e.disabled, u = e.elementRef, s = e.error, p = e.hideStepButtons, m = e.inline, b = e.inputRef, y = e.locale, h = y === void 0 ? "en-US" : y, g = e.max, S = e.min, C = e.name, w = e.onBlur, O = e.onChange, k = e.onKeyDown, j = e.onKeyUp, x = e.prepend, A = e.roundTo, N = A === void 0 ? 5 : A, _ = e.step, $ = _ === void 0 ? 1 : _, K = e.endAdornment, H = e.startAdornment, J = e.value, Q = ae(e, [ "append", "defaultValue", "describedBy", "disabled", "elementRef", "error", "hideStepButtons", "inline", "inputRef", "locale", "max", "min", "name", "onBlur", "onChange", "onKeyDown", "onKeyUp", "prepend", "roundTo", "step", "endAdornment", "startAdornment", "value" ]);
406
+ function ie(e) {
407
+ var r = e.append, o = e.defaultValue, i = e.describedBy, l = e.disabled, u = e.elementRef, f = e.error, v = e.hideStepButtons, p = e.inline, m = e.inputRef, b = e.locale, y = b === void 0 ? "en-US" : b, h = e.max, g = e.min, S = e.name, C = e.onBlur, w = e.onChange, O = e.onKeyDown, k = e.onKeyUp, j = e.prepend, B = e.roundTo, T = B === void 0 ? 5 : B, I = e.step, q = I === void 0 ? 1 : I, z = e.endAdornment, H = e.startAdornment, G = e.value, J = te(e, [ "append", "defaultValue", "describedBy", "disabled", "elementRef", "error", "hideStepButtons", "inline", "inputRef", "locale", "max", "min", "name", "onBlur", "onChange", "onKeyDown", "onKeyUp", "prepend", "roundTo", "step", "endAdornment", "startAdornment", "value" ]);
411
408
  // @docs-props-type NumberPropsBase
412
- var X = c()({
409
+ var Q = c()({
413
410
  componentName: "Number",
414
411
  /* eslint-disable-next-line prefer-rest-params */
415
412
  componentProps: arguments[0]
416
413
  });
417
- var Y = X ? J : o;
414
+ var Y = Q ? G : o;
418
415
  // stringValue stores the current contents of the input text box - it might be out of range, invalid, ...
419
- var ee = (0, n.useState)(F(Y, h)), re = Z(ee, 2), ne = re[0], te = re[1];
420
- var oe = (0, n.useState)(Y), ie = Z(oe, 2), le = ie[0], ue = ie[1];
421
- var ce = d()(J);
422
- var se = (0, n.useRef)(null);
423
- var de = (0, n.useCallback)((function(e) {
424
- W(se, e);
425
- W(b, e);
426
- }), [ b ]);
427
- var fe = (0, n.useCallback)((function(e, r) {
428
- if (r !== le || !X) {
429
- O === null || O === void 0 ? void 0 : O(e, {
416
+ var Z = (0, n.useState)(R(Y, y)), ee = X(Z, 2), re = ee[0], ne = ee[1];
417
+ var oe = (0, n.useState)(Y), ae = X(oe, 2), ie = ae[0], le = ae[1];
418
+ var ue = (0, n.useRef)(null);
419
+ var ce = (0, n.useCallback)((function(e) {
420
+ V(ue, e);
421
+ V(m, e);
422
+ }), [ m ]);
423
+ var de = (0, n.useCallback)((function(e, r) {
424
+ if (r !== ie || !Q) {
425
+ w === null || w === void 0 ? void 0 : w(e, {
430
426
  value: r,
431
- name: C,
427
+ name: S,
432
428
  reason: "stepButton"
433
429
  });
434
430
  }
435
- if (!X) {
436
- ue(r);
437
- te(F(r, h));
431
+ if (!Q) {
432
+ le(r);
433
+ ne(R(r, y));
438
434
  }
439
- }), [ X, h, C, O, le ]);
440
- var ve = (0, n.useCallback)((function(e, r) {
441
- var n = U({
442
- str: ne,
443
- locale: h,
444
- min: S,
445
- max: g,
446
- roundTo: N
435
+ }), [ Q, y, S, w, ie ]);
436
+ var se = (0, n.useCallback)((function(e, r) {
437
+ var n = M({
438
+ str: re,
439
+ locale: y,
440
+ min: g,
441
+ max: h,
442
+ roundTo: T
447
443
  });
448
444
  var t;
449
445
  // increment appropriate number
@@ -455,206 +451,204 @@
455
451
  t = o + r;
456
452
  } else if (r > 0) {
457
453
  // increment up to max or step value
458
- t = g || $;
454
+ t = h || q;
459
455
  } else {
460
456
  // increment down to min or 0
461
- t = S || 0;
457
+ t = g || 0;
462
458
  // set to min or 0
463
459
  }
464
- fe(e, R({
460
+ de(e, K({
465
461
  val: t,
466
- min: S,
467
- max: g,
468
- roundTo: N
462
+ min: g,
463
+ max: h,
464
+ roundTo: T
469
465
  }));
470
- }), [ o, fe, h, g, S, N, $, ne ]);
471
- var pe = (0, n.useCallback)((function(e, r) {
472
- var n = R({
466
+ }), [ o, de, y, h, g, T, q, re ]);
467
+ var fe = (0, n.useCallback)((function(e, r) {
468
+ var n = K({
473
469
  val: parseFloat(r.value),
474
- min: S,
475
- max: g,
476
- roundTo: N
470
+ min: g,
471
+ max: h,
472
+ roundTo: T
477
473
  });
478
- var t = F(n, h);
479
- te(t);
480
- w === null || w === void 0 ? void 0 : w(e, L(L({}, r), {}, {
474
+ var t = R(n, y);
475
+ ne(t);
476
+ C === null || C === void 0 ? void 0 : C(e, L(L({}, r), {}, {
481
477
  value: t
482
478
  }));
483
- }), [ h, g, S, w, N ]);
484
- var me = (0, n.useCallback)((function(e, r) {
479
+ }), [ y, h, g, C, T ]);
480
+ var ve = (0, n.useCallback)((function(e, r) {
485
481
  var n = r.value;
486
- var t = U({
482
+ var t = M({
487
483
  str: n,
488
- locale: h,
489
- min: S,
490
- max: g,
491
- roundTo: N
484
+ locale: y,
485
+ min: g,
486
+ max: h,
487
+ roundTo: T
492
488
  });
493
- if (le !== t || !X) {
494
- O === null || O === void 0 ? void 0 : O(e, {
489
+ if (ie !== t || !Q) {
490
+ w === null || w === void 0 ? void 0 : w(e, {
495
491
  value: t,
496
- name: C,
492
+ name: S,
497
493
  reason: "input"
498
494
  });
499
495
  }
500
- te(n);
501
- if (!X) {
502
- ue(t);
496
+ ne(n);
497
+ if (!Q) {
498
+ le(t);
503
499
  }
504
- }), [ X, h, g, S, C, O, N, le ]);
505
- var be = (0, n.useCallback)((function(e) {
500
+ }), [ Q, y, h, g, S, w, T, ie ]);
501
+ var pe = (0, n.useCallback)((function(e) {
506
502
  var r = e.altKey, n = e.ctrlKey, t = e.key, o = e.nativeEvent, i = e.metaKey;
507
- if (!i && !n && !r && (0, v.addsCharacter)(o) !== false) {
503
+ if (!i && !n && !r && (0, s.addsCharacter)(o) !== false) {
508
504
  // only allow numbers, negative and decimals
509
- if (!(0, v.isNumeric)(o, {
510
- locale: h
505
+ if (!(0, s.isNumeric)(o, {
506
+ locale: y
511
507
  })) {
512
508
  e.preventDefault();
513
509
  }
514
- var l = S !== undefined && a()(S) && S >= 0;
510
+ var l = g !== undefined && a()(g) && g >= 0;
515
511
  // if minus is not allowed or there is already one, prevent input
516
- if ((0, v.isMinus)(o) && (l || ne.indexOf("-") >= 0)) {
512
+ if ((0, s.isMinus)(o) && (l || re.indexOf("-") >= 0)) {
517
513
  e.preventDefault();
518
514
  }
519
515
  // if decimal is not allowed or there is already one, prevent input
520
- if ((0, v.isDecimal)(o, {
521
- locale: h
522
- }) && (N <= 0 || ne.indexOf(M(h)) >= 0)) {
516
+ if ((0, s.isDecimal)(o, {
517
+ locale: y
518
+ }) && (T <= 0 || re.indexOf($(y)) >= 0)) {
523
519
  e.preventDefault();
524
520
  }
525
521
  }
526
522
  // Arrow up and down will increment
527
523
  if (t === "ArrowUp") {
528
- ve(e, $);
524
+ se(e, q);
529
525
  e.preventDefault();
530
526
  } else if (t === "ArrowDown") {
531
- ve(e, -$);
527
+ se(e, -q);
532
528
  e.preventDefault();
533
529
  }
534
- k === null || k === void 0 ? void 0 : k(e);
535
- }), [ ve, h, S, k, N, $, ne ]);
536
- var ye = (0, n.useCallback)((function(e) {
530
+ O === null || O === void 0 ? void 0 : O(e);
531
+ }), [ se, y, g, O, T, q, re ]);
532
+ var me = (0, n.useCallback)((function(e) {
537
533
  var r;
538
- if (e.key === "Enter" && (se === null || se === void 0 ? void 0 : (r = se.current) === null || r === void 0 ? void 0 : r.value)) {
539
- var n = se.current.value;
540
- var t = R({
534
+ if (e.key === "Enter" && (ue === null || ue === void 0 ? void 0 : (r = ue.current) === null || r === void 0 ? void 0 : r.value)) {
535
+ var n = ue.current.value;
536
+ var t = K({
541
537
  val: parseFloat(n),
542
- min: S,
543
- max: g,
544
- roundTo: N
538
+ min: g,
539
+ max: h,
540
+ roundTo: T
545
541
  });
546
- te(F(t, h));
542
+ ne(R(t, y));
547
543
  }
548
- j === null || j === void 0 ? void 0 : j(e);
549
- }), [ h, g, S, j, N ]);
550
- var he = (0, n.useCallback)((function(e) {
551
- ve(e, $);
552
- }), [ ve, $ ]);
553
- var ge = (0, n.useCallback)((function(e) {
554
- ve(e, -$);
555
- }), [ ve, $ ]);
544
+ k === null || k === void 0 ? void 0 : k(e);
545
+ }), [ y, h, g, k, T ]);
546
+ var be = (0, n.useCallback)((function(e) {
547
+ se(e, q);
548
+ }), [ se, q ]);
549
+ var ye = (0, n.useCallback)((function(e) {
550
+ se(e, -q);
551
+ }), [ se, q ]);
556
552
  (0, n.useEffect)((function() {
557
553
  if (false) {}
558
- }), [ r, x ]);
554
+ }), [ r, j ]);
559
555
  (0, n.useEffect)((function() {
560
556
  // if isControlled (value prop passed), keep local valueNumeric up to date with value prop
561
- if (X) {
562
- ue(J);
557
+ if (Q) {
558
+ le(G);
563
559
  }
564
- }), [ X, J ]);
565
- (0, n.useEffect)((function() {
566
- // This useEffect has multiple dependencies, but we only want to run this code if the `value` prop has changed.
567
- if (J !== ce) {
568
- // on value (number) prop change compare the new value to the number version of stringValue (state)
569
- // This is because we pass in the number version of stringValue to the onChange handler
570
- // Thus if these values match we want to ignore the update as that is the current value based on stringValue
571
- var e = U({
572
- str: ne,
573
- locale: h,
574
- min: S,
575
- max: g,
576
- roundTo: N
577
- });
578
- if (e !== J && X) {
579
- te(F(J, h));
580
- }
560
+ }), [ Q, G ]);
561
+ (0, n.useLayoutEffect)((function() {
562
+ if (Q) {
563
+ // When the controlled value changes, keep the rendered text in sync unless the
564
+ // current text already represents that same numeric value.
565
+ ne((function(e) {
566
+ var r = M({
567
+ str: e,
568
+ locale: y,
569
+ min: g,
570
+ max: h,
571
+ roundTo: T
572
+ });
573
+ return r !== G ? R(G, y) : e;
574
+ }));
581
575
  }
582
- }), [ X, h, g, S, ce, N, J, ne ]);
583
- var Se = {
576
+ }), [ Q, y, h, g, T, G ]);
577
+ var he = {
584
578
  append: r,
585
579
  prepend: !r,
586
- error: s,
580
+ error: f,
587
581
  inline: false,
588
582
  tabIndex: -1
589
583
  };
590
- var Ce = V({
591
- value: le,
592
- max: g
584
+ var ge = U({
585
+ value: ie,
586
+ max: h
593
587
  });
594
- var we = z({
595
- value: le,
596
- min: S
588
+ var Se = F({
589
+ value: ie,
590
+ min: g
597
591
  });
598
- var Oe = r && !x;
599
- var ke = t().createElement(D, {
600
- $isAppend: Oe,
592
+ var Ce = r && !j;
593
+ var we = t().createElement(A, {
594
+ $isAppend: Ce,
601
595
  $disabled: l,
602
- $error: s
603
- }, t().createElement(I, G({
604
- "aria-label": (0, f._)("Increment"),
596
+ $error: f
597
+ }, t().createElement(P, W({
598
+ "aria-label": (0, d._)("Increment"),
605
599
  "data-test": "increment",
606
- disabled: l || Ce,
607
- onClick: he
608
- }, Se), t().createElement(T, null)), t().createElement(q, {
600
+ disabled: l || ge,
601
+ onClick: be
602
+ }, he), t().createElement(N, null)), t().createElement(E, {
609
603
  $disabled: l,
610
- $error: s,
604
+ $error: f,
611
605
  decorative: true
612
- }), t().createElement(E, G({
613
- "aria-label": (0, f._)("Decrement"),
606
+ }), t().createElement(_, W({
607
+ "aria-label": (0, d._)("Decrement"),
614
608
  "data-test": "decrement",
615
- disabled: l || we,
616
- onClick: ge
617
- }, Se), t().createElement(P, null)));
618
- var je = Oe && !p && ke;
619
- var xe = !Oe && !p && ke;
620
- var Ae = H || je;
609
+ disabled: l || Se,
610
+ onClick: ye
611
+ }, he), t().createElement(D, null)));
612
+ var Oe = Ce && !v && we;
613
+ var ke = !Ce && !v && we;
614
+ var je = H || Oe;
621
615
 
622
- return t().createElement(B, G({
616
+ return t().createElement(x, W({
623
617
  autoCapitalize: "off",
624
618
  autoComplete: "off",
625
619
  autoCorrect: "off",
626
620
  "data-test": "number",
627
621
  elementRef: u,
628
- inputRef: de,
622
+ inputRef: ce,
629
623
  disabled: l,
630
- name: C,
624
+ name: S,
631
625
  describedBy: i,
632
626
  append: r,
633
- prepend: x
634
- }, Q, {
627
+ prepend: j
628
+ }, J, {
635
629
  spellCheck: false,
636
- inline: m,
637
- onBlur: pe,
638
- onChange: me,
639
- onKeyDown: be,
640
- onKeyUp: ye,
641
- value: ne,
630
+ inline: p,
631
+ onBlur: fe,
632
+ onChange: ve,
633
+ onKeyDown: pe,
634
+ onKeyUp: me,
635
+ value: re,
642
636
  "aria-describedby": i,
643
- error: s,
644
- "data-test-value": le,
645
- startAdornment: Ae,
646
- endAdornment: K || xe,
647
- $startAdornment: !!Ae,
637
+ error: f,
638
+ "data-test-value": ie,
639
+ startAdornment: je,
640
+ endAdornment: z || ke,
641
+ $startAdornment: !!je,
648
642
  role: "spinbutton",
649
- "aria-valuenow": le,
650
- "aria-valuemin": S,
651
- "aria-valuemax": g,
652
- "aria-invalid": s
643
+ "aria-valuenow": ie,
644
+ "aria-valuemin": g,
645
+ "aria-valuemax": h,
646
+ "aria-invalid": f
653
647
  }));
654
648
  }
655
- ue.displayName = "Number";
656
- ue.propTypes = le;
657
- /* harmony default export */ const ce = ue;
649
+ ie.displayName = "Number";
650
+ ie.propTypes = ae;
651
+ /* harmony default export */ const le = ie;
658
652
  // only for styled components using Number
659
653
  // CONCATENATED MODULE: ./src/Number/index.ts
660
654
  module.exports = r;