@splunk/react-ui 5.3.0 → 5.5.0

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 (114) hide show
  1. package/Accordion.js +31 -31
  2. package/Avatar.js +13 -13
  3. package/Badge.js +154 -0
  4. package/Breadcrumbs.js +66 -63
  5. package/ButtonSimple.js +52 -52
  6. package/CHANGELOG.md +43 -0
  7. package/CardLayout.js +39 -36
  8. package/Clickable.js +5 -6
  9. package/Code.js +917 -424
  10. package/CollapsiblePanel.js +1 -1
  11. package/Color.js +904 -1025
  12. package/ComboBox.js +6 -5
  13. package/DefinitionList.js +1 -1
  14. package/FormRows.js +13 -11
  15. package/JSONTree.js +682 -1408
  16. package/Link.js +74 -44
  17. package/MIGRATION.md +32 -1
  18. package/Markdown.js +9 -5
  19. package/Menu.js +100 -97
  20. package/Multiselect.js +1223 -2858
  21. package/Number.js +3 -3
  22. package/PhoneNumber.d.ts +2 -0
  23. package/PhoneNumber.js +769 -0
  24. package/Popover.js +235 -232
  25. package/RadioList.js +166 -151
  26. package/Resize.js +11 -8
  27. package/ResultsMenu.js +911 -1030
  28. package/ScreenReaderContent.js +86 -130
  29. package/Scroll.js +366 -425
  30. package/Select.js +267 -1947
  31. package/SelectBase.d.ts +2 -0
  32. package/SelectBase.js +1681 -0
  33. package/Slider.js +202 -199
  34. package/SlidingPanels.js +170 -175
  35. package/StepBar.js +123 -97
  36. package/Switch.js +137 -118
  37. package/TabBar.js +296 -295
  38. package/TabLayout.js +14 -14
  39. package/Table.js +1562 -1516
  40. package/TextArea.js +596 -684
  41. package/TransitionOpen.js +82 -74
  42. package/Tree.js +638 -682
  43. package/docker-compose.yml +99 -52
  44. package/package.json +16 -12
  45. package/stubs-splunkui.d.ts +0 -86
  46. package/test-runner-jest.config.js +1 -0
  47. package/types/src/Badge/Badge.d.ts +29 -0
  48. package/types/src/Badge/docs/examples/Basic.d.ts +5 -0
  49. package/types/src/Badge/docs/examples/Count.d.ts +6 -0
  50. package/types/src/Badge/docs/examples/CustomColors.d.ts +8 -0
  51. package/types/src/Badge/docs/examples/Icon.d.ts +6 -0
  52. package/types/src/Badge/index.d.ts +2 -0
  53. package/types/src/Breadcrumbs/Breadcrumbs.d.ts +1 -5
  54. package/types/src/Breadcrumbs/BreadcrumbsContext.d.ts +7 -0
  55. package/types/src/Breadcrumbs/Item.d.ts +1 -1
  56. package/types/src/ButtonSimple/mixin.d.ts +1 -1
  57. package/types/src/Code/Code.d.ts +4 -3
  58. package/types/src/Code/index.d.ts +1 -0
  59. package/types/src/JSONTree/JSONTreeItem.d.ts +1 -1
  60. package/types/src/JSONTree/renderTreeItems.d.ts +1 -1
  61. package/types/src/Link/Link.d.ts +4 -0
  62. package/types/src/Link/LinkContext.d.ts +14 -0
  63. package/types/src/Link/docs/examples/Visited.d.ts +7 -0
  64. package/types/src/Link/index.d.ts +1 -0
  65. package/types/src/Modal/ModalContext.d.ts +1 -1
  66. package/types/src/Multiselect/Compact.d.ts +3 -3
  67. package/types/src/Multiselect/Multiselect.d.ts +1 -1
  68. package/types/src/Multiselect/Normal.d.ts +2 -2
  69. package/types/src/Number/utils.d.ts +1 -1
  70. package/types/src/PhoneNumber/PhoneNumber.d.ts +139 -0
  71. package/types/src/PhoneNumber/docs/examples/Controlled.d.ts +7 -0
  72. package/types/src/PhoneNumber/docs/examples/DefaultCountry.d.ts +7 -0
  73. package/types/src/PhoneNumber/docs/examples/Disabled.d.ts +6 -0
  74. package/types/src/PhoneNumber/docs/examples/Error.d.ts +6 -0
  75. package/types/src/PhoneNumber/docs/examples/Inline.d.ts +7 -0
  76. package/types/src/PhoneNumber/docs/examples/Uncontrolled.d.ts +7 -0
  77. package/types/src/PhoneNumber/index.d.ts +2 -0
  78. package/types/src/PhoneNumber/utils.d.ts +47 -0
  79. package/types/src/Popover/getPlacement.d.ts +1 -1
  80. package/types/src/RadioList/Option.d.ts +7 -2
  81. package/types/src/RadioList/RadioListContext.d.ts +1 -1
  82. package/types/src/RadioList/docs/examples/Description.d.ts +6 -0
  83. package/types/src/Select/Option.d.ts +8 -3
  84. package/types/src/Select/Select.d.ts +1 -1
  85. package/types/src/{Select → SelectBase}/OptionBase.d.ts +8 -2
  86. package/types/src/{Select → SelectBase}/SelectBase.d.ts +3 -1
  87. package/types/src/SelectBase/index.d.ts +2 -0
  88. package/types/src/StepBar/StepBar.d.ts +4 -1
  89. package/types/src/StepBar/StepBarContext.d.ts +1 -0
  90. package/types/src/StepBar/docs/examples/Vertical.d.ts +6 -0
  91. package/types/src/Switch/Switch.d.ts +10 -1
  92. package/types/src/TabBar/Tab.d.ts +3 -1
  93. package/types/src/TabBar/docs/examples/Icons.d.ts +4 -0
  94. package/types/src/TabBar/docs/examples/Tooltips.d.ts +3 -0
  95. package/types/src/TabLayout/Panel.d.ts +2 -0
  96. package/types/src/Table/Body.d.ts +6 -1
  97. package/types/src/Table/Cell.d.ts +5 -1
  98. package/types/src/Table/Head.d.ts +6 -2
  99. package/types/src/Table/HeadCell.d.ts +5 -1
  100. package/types/src/Table/Row.d.ts +5 -1
  101. package/types/src/Table/Table.d.ts +21 -1
  102. package/types/src/Table/TableContext.d.ts +1 -0
  103. package/types/src/Table/docs/examples/HorizontalOverflowScroll.d.ts +8 -0
  104. package/types/src/Table/docs/examples/PinActionColumn.d.ts +7 -0
  105. package/types/src/TransitionOpen/TransitionOpen.d.ts +3 -1
  106. package/types/src/Tree/TreeContext.d.ts +1 -1
  107. package/types/src/useResizeObserver/useResizeObserver.d.ts +2 -0
  108. package/types/src/useRovingFocus/useRovingFocus.d.ts +8 -1
  109. package/useControlled.js +61 -97
  110. package/usePrevious.d.ts +2 -0
  111. package/usePrevious.js +30 -62
  112. package/useResizeObserver.js +71 -136
  113. package/useRovingFocus.js +96 -41
  114. /package/types/src/{Select → SelectBase}/SelectAllOption.d.ts +0 -0
package/Switch.js CHANGED
@@ -90,42 +90,42 @@
90
90
  var m = e.n(g);
91
91
  // CONCATENATED MODULE: external "@splunk/react-ui/Clickable"
92
92
  const h = require("@splunk/react-ui/Clickable");
93
- var k = e.n(h);
93
+ var y = e.n(h);
94
94
  // CONCATENATED MODULE: external "@splunk/themes"
95
- const y = require("@splunk/themes");
95
+ const k = require("@splunk/themes");
96
96
  // CONCATENATED MODULE: ./src/Switch/SwitchStyles.ts
97
97
  var C = "20px";
98
98
  var S = "12px";
99
- var x = "4px";
99
+ var w = "4px";
100
100
  // diameter - toggleIndicatorDiameter / 2
101
- var w = u()(m()).withConfig({
101
+ var x = u()(m()).withConfig({
102
102
  displayName: "SwitchStyles__StyledBox",
103
103
  componentId: "sc-844ieu-0"
104
- })([ "display:inline;position:relative;flex-shrink:0;gap:", ";min-height:", ";align-items:center;color:", ";", "" ], y.variables.spacingSmall, y.variables.inputHeight, y.variables.contentColorActive, (function(e) {
104
+ })([ "display:inline;position:relative;flex-shrink:0;gap:", ";min-height:", ";align-items:center;color:", ";", "" ], k.variables.spacingSmall, k.variables.inputHeight, k.variables.contentColorActive, (function(e) {
105
105
  var r = e.$disabled;
106
- return r && (0, s.css)([ "color:", ";" ], y.variables.contentColorDisabled);
106
+ return r && (0, s.css)([ "color:", ";" ], k.variables.contentColorDisabled);
107
107
  }));
108
- var B = (0, s.css)([ "", " position:relative;width:", ";height:", ";line-height:", ";border-radius:", ";border:", " solid ", ";background-color:", ";cursor:pointer;flex:0 0 auto;&:not([disabled]){&:focus{box-shadow:", ";}color:", ";", "}&[disabled]{border-color:", ";background-color:", ";", ";}" ], y.mixins.reset("inline"), C, C, C, y.variables.borderRadius, y.variables.inputBorderWidth, y.variables.interactiveColorBorder, y.variables.interactiveColorBackground, y.variables.focusShadow, (0,
109
- y.pick)({
110
- light: y.variables.white,
111
- dark: y.variables.black
108
+ var B = (0, s.css)([ "", " position:relative;width:", ";height:", ";line-height:", ";border-radius:", ";border:", " solid ", ";background-color:", ";cursor:pointer;flex:0 0 auto;&:not([disabled]){&:focus{box-shadow:", ";}color:", ";", "}&[disabled]{border-color:", ";background-color:", ";", ";}" ], k.mixins.reset("inline"), C, C, C, k.variables.borderRadius, k.variables.inputBorderWidth, k.variables.interactiveColorBorder, k.variables.interactiveColorBackground, k.variables.focusShadow, (0,
109
+ k.pick)({
110
+ light: k.variables.white,
111
+ dark: k.variables.black
112
112
  }), (function(e) {
113
113
  var r = e.$error, a = e.$selected;
114
114
  if (a && !r) {
115
- return (0, s.css)([ "background-color:", ";border:none;" ], y.variables.interactiveColorAccent);
115
+ return (0, s.css)([ "background-color:", ";border:none;" ], k.variables.interactiveColorAccent);
116
116
  }
117
117
  if (!a && r) {
118
- return (0, s.css)([ "border-color:", ";&:hover{border-color:", ";background-color:", ";}" ], y.variables.interactiveColorAccentError, y.mixins.overlayColors(y.variables.interactiveColorAccentError, y.variables.interactiveColorBorderHover), y.mixins.overlayColors(y.variables.interactiveColorBackground, y.variables.interactiveColorOverlayHover));
118
+ return (0, s.css)([ "border-color:", ";&:hover{border-color:", ";background-color:", ";}" ], k.variables.interactiveColorAccentError, k.mixins.overlayColors(k.variables.interactiveColorAccentError, k.variables.interactiveColorBorderHover), k.mixins.overlayColors(k.variables.interactiveColorBackground, k.variables.interactiveColorOverlayHover));
119
119
  }
120
120
  if (a && r) {
121
- return (0, s.css)([ "background-color:", ";border:none;" ], y.variables.interactiveColorAccentError);
121
+ return (0, s.css)([ "background-color:", ";border:none;" ], k.variables.interactiveColorAccentError);
122
122
  }
123
- return (0, s.css)([ "&:hover{border-color:", ";background-color:", ";}" ], y.variables.interactiveColorBorderHover, y.mixins.overlayColors(y.variables.interactiveColorBackground, y.variables.interactiveColorOverlayHover));
124
- }), y.variables.interactiveColorBorderDisabled, y.variables.interactiveColorBackgroundDisabled, (function(e) {
123
+ return (0, s.css)([ "&:hover{border-color:", ";background-color:", ";}" ], k.variables.interactiveColorBorderHover, k.mixins.overlayColors(k.variables.interactiveColorBackground, k.variables.interactiveColorOverlayHover));
124
+ }), k.variables.interactiveColorBorderDisabled, k.variables.interactiveColorBackgroundDisabled, (function(e) {
125
125
  var r = e.$selected;
126
- return r && (0, s.css)([ "border:none;background-color:", ";" ], y.variables.neutral100);
126
+ return r && (0, s.css)([ "border:none;background-color:", ";" ], k.variables.neutral100);
127
127
  }));
128
- var O = u()(k()).withConfig({
128
+ var O = u()(y()).withConfig({
129
129
  displayName: "SwitchStyles__StyledCheckboxClickable",
130
130
  componentId: "sc-844ieu-1"
131
131
  })([ "", "" ], B);
@@ -134,53 +134,53 @@
134
134
  displayName: "SwitchStyles__StyledCheck",
135
135
  componentId: "sc-844ieu-2"
136
136
  })([ "", "" ], $);
137
- var q = u()(p()).withConfig({
137
+ var N = u()(p()).withConfig({
138
138
  displayName: "SwitchStyles__StyledSome",
139
139
  componentId: "sc-844ieu-3"
140
140
  })([ "", "" ], $);
141
- var E = u().div.withConfig({
141
+ var q = u().div.withConfig({
142
142
  displayName: "SwitchStyles__StyledToggleIndicator",
143
143
  componentId: "sc-844ieu-4"
144
- })([ "--toggle-indicator-margin:calc(", " - ", ");background-color:", ";border-radius:50%;box-sizing:border-box;width:", ";height:", ";position:absolute;left:var(--toggle-indicator-margin);top:var(--toggle-indicator-margin);", ";", " ", " ", ";" ], x, y.variables.inputBorderWidth, (0,
145
- y.pick)({
146
- light: y.variables.black,
147
- dark: y.variables.white
144
+ })([ "--toggle-indicator-margin:calc( ", " - ", " );background-color:", ";border-radius:50%;box-sizing:border-box;width:", ";height:", ";position:absolute;left:var(--toggle-indicator-margin);top:var(--toggle-indicator-margin);", ";", " ", " ", ";" ], w, k.variables.inputBorderWidth, (0,
145
+ k.pick)({
146
+ light: k.variables.black,
147
+ dark: k.variables.white
148
148
  }), S, S, (function(e) {
149
149
  var r = e.$delay;
150
150
  return r && (0, s.css)([ "transition:left ", ";" ], r);
151
- }), (0, y.pick)({
152
- prisma: (0, s.css)([ "box-shadow:", ";" ], y.variables.embossShadow)
151
+ }), (0, k.pick)({
152
+ prisma: (0, s.css)([ "box-shadow:", ";" ], k.variables.embossShadow)
153
153
  }), (function(e) {
154
154
  var r = e.$selected, a = e.$disabled;
155
155
  return (0, s.css)([ "", " ", "" ], r && (0, s.css)([ "left:calc(100% - (", " + var(--toggle-indicator-margin)));" ], S), !a && r && (0,
156
- s.css)([ "background-color:", ";" ], (0, y.pick)({
157
- light: y.variables.white,
158
- dark: y.variables.black
156
+ s.css)([ "background-color:", ";" ], (0, k.pick)({
157
+ light: k.variables.white,
158
+ dark: k.variables.black
159
159
  })));
160
160
  }), (function(e) {
161
161
  var r = e.$disabled;
162
- return r && (0, s.css)([ "background-color:", ";" ], y.variables.neutral400);
162
+ return r && (0, s.css)([ "background-color:", ";" ], k.variables.neutral400);
163
163
  }));
164
- var _ = (0, s.css)([ "position:relative;width:calc(", " * 2);height:", ";background-color:", ";transition:background-color ", ";flex:0 0 auto;border-radius:calc(", " / 2);border:", " solid ", ";&:not([disabled]){&:focus{box-shadow:", ";}", "}&[disabled]{border:", " solid ", ";background-color:", ";", "}" ], C, C, y.variables.interactiveColorBackground, (function(e) {
164
+ var E = (0, s.css)([ "position:relative;width:calc(", " * 2);height:", ";background-color:", ";transition:background-color ", ";flex:0 0 auto;border-radius:calc(", " / 2);border:", " solid ", ";&:not([disabled]){&:focus{box-shadow:", ";}", "}&[disabled]{border:", " solid ", ";background-color:", ";", "}" ], C, C, k.variables.interactiveColorBackground, (function(e) {
165
165
  return e.$delay;
166
- }), C, y.variables.inputBorderWidth, y.variables.interactiveColorBorder, y.variables.focusShadow, (function(e) {
166
+ }), C, k.variables.inputBorderWidth, k.variables.interactiveColorBorder, k.variables.focusShadow, (function(e) {
167
167
  var r = e.$selected;
168
168
  if (!r) {
169
- return (0, s.css)([ "&:hover{border-color:", ";background-color:", ";}" ], y.variables.interactiveColorBorderHover, y.mixins.overlayColors(y.variables.interactiveColorBackground, y.variables.interactiveColorOverlayHover));
169
+ return (0, s.css)([ "&:hover{border-color:", ";background-color:", ";}" ], k.variables.interactiveColorBorderHover, k.mixins.overlayColors(k.variables.interactiveColorBackground, k.variables.interactiveColorOverlayHover));
170
170
  }
171
- return (0, s.css)([ "border-color:transparent;background-color:", ";" ], y.variables.interactiveColorAccent);
172
- }), y.variables.inputBorderWidth, y.variables.interactiveColorBorderDisabled, y.variables.interactiveColorBackgroundDisabled, (function(e) {
171
+ return (0, s.css)([ "border-color:transparent;background-color:", ";" ], k.variables.interactiveColorAccent);
172
+ }), k.variables.inputBorderWidth, k.variables.interactiveColorBorderDisabled, k.variables.interactiveColorBackgroundDisabled, (function(e) {
173
173
  var r = e.$selected;
174
- return r && (0, s.css)([ "background-color:", ";" ], y.variables.neutral100);
174
+ return r && (0, s.css)([ "background-color:", ";" ], k.variables.neutral100);
175
175
  }));
176
- var R = u()(k()).withConfig({
176
+ var _ = u()(y()).withConfig({
177
177
  displayName: "SwitchStyles__StyledToggleClickable",
178
178
  componentId: "sc-844ieu-5"
179
- })([ "", "" ], _);
180
- var N = u().label.withConfig({
179
+ })([ "", "" ], E);
180
+ var R = u().label.withConfig({
181
181
  displayName: "SwitchStyles__StyledLabel",
182
182
  componentId: "sc-844ieu-6"
183
- })([ "", " flex:1 1 auto;color:inherit;line-height:", ";", ";" ], y.mixins.reset("inline-block"), y.variables.lineHeight, (function(e) {
183
+ })([ "", " flex:1 1 auto;color:inherit;line-height:", ";", ";" ], k.mixins.reset("inline-block"), k.variables.lineHeight, (function(e) {
184
184
  var r = e.$disabled;
185
185
  return !r && (0, s.css)([ "cursor:pointer;" ]);
186
186
  }));
@@ -212,10 +212,10 @@
212
212
  }), [ i, o ]);
213
213
  };
214
214
  var P = function e(r) {
215
- var a = r.additionalMessage, i = a === void 0 ? "" : a, o = r.componentName, t = r.propName, l = r.propValue;
216
- useEffect((function() {
215
+ var i = r.additionalMessage, o = i === void 0 ? "" : i, t = r.componentName, l = r.propName, n = r.propValue;
216
+ (0, a.useEffect)((function() {
217
217
  if (false) {}
218
- }), [ i, o, t, l ]);
218
+ }), [ o, t, l, n ]);
219
219
  };
220
220
  var D = function e(r) {
221
221
  var i = r.additionalMessage, o = i === void 0 ? "" : i, t = r.componentName, l = r.deprecatedPropValue, n = r.propName, c = r.propValue;
@@ -261,6 +261,7 @@
261
261
  /** @public */ var V = {
262
262
  appearance: t().oneOf([ "checkbox", "toggle" ]),
263
263
  children: t().node,
264
+ describedBy: t().string,
264
265
  disabled: t().bool,
265
266
  elementRef: t().oneOfType([ t().func, t().object ]),
266
267
  error: t().bool,
@@ -280,65 +281,67 @@
280
281
  // eslint-disable-next-line docs-props-type-match
281
282
  // eslint-disable-next-line docs-props-type-match
282
283
  var W = function e(r) {
283
- var a = r.ariaChecked, o = r.ariaInvalid, t = r.ariaLabelledBy, n = r.ariaRequired, c = r.dataTest, d = r.dataSelected, s = r.disabled, u = r.elementRef, b = r.id, v = r.onClick, f = r.selected;
284
- var p = s === true ? "disabled" : undefined;
285
- var g = (0, l.useAnimationToggle)();
286
- var m = g === "on" ? "200ms" : undefined;
287
- var h = i().createElement(E, {
288
- $delay: m,
289
- $disabled: !!p,
290
- $selected: f
284
+ var a = r.ariaChecked, o = r.ariaInvalid, t = r.ariaLabelledBy, n = r.ariaRequired, c = r.dataTest, d = r.dataSelected, s = r.describedBy, u = r.disabled, b = r.elementRef, v = r.id, f = r.onClick, p = r.selected;
285
+ var g = u === true ? "disabled" : undefined;
286
+ var m = (0, l.useAnimationToggle)();
287
+ var h = m === "on" ? "200ms" : undefined;
288
+ var y = i().createElement(q, {
289
+ $delay: h,
290
+ $disabled: !!g,
291
+ $selected: p
291
292
  });
292
293
 
293
- return i().createElement(R, {
294
+ return i().createElement(_, {
294
295
  role: "switch",
295
296
  "aria-checked": a,
297
+ "aria-describedby": s,
296
298
  "aria-invalid": o,
297
299
  "aria-labelledby": t,
298
300
  "aria-required": n,
299
301
  "data-selected": d,
300
302
  "data-test": c,
301
- disabled: p,
302
- elementRef: u,
303
- id: b,
304
- onClick: v,
305
- $delay: m,
306
- $selected: f || false
307
- }, h);
303
+ disabled: g,
304
+ elementRef: b,
305
+ id: v,
306
+ onClick: f,
307
+ $delay: h,
308
+ $selected: p || false
309
+ }, y);
308
310
  };
309
311
  var F = function e(r) {
310
- var a = r.ariaChecked, o = r.ariaInvalid, t = r.ariaLabelledBy, l = r.ariaRequired, n = r.dataTest, c = r.dataSelected, d = r.disabled, s = r.error, u = r.id, b = r.elementRef, v = r.onClick, f = r.role, p = r.selected, g = r.tabIndex;
312
+ var a = r.ariaChecked, o = r.ariaInvalid, t = r.ariaLabelledBy, l = r.ariaRequired, n = r.dataTest, c = r.dataSelected, d = r.describedBy, s = r.disabled, u = r.error, b = r.id, v = r.elementRef, f = r.onClick, p = r.role, g = r.selected, m = r.tabIndex;
311
313
  /* Setting viewbox to rescale the icons to appear larger. Cannot directly adjust svg
312
314
  * width and height without the svg being larger than the checkbox and box-model.
313
- */ var m = "4 4 16 16";
314
- var h = i().createElement(i().Fragment, null, p === true && i().createElement(I, {
315
- viewBox: m
316
- }), p === "some" && i().createElement(q, {
317
- viewBox: m
315
+ */ var h = "4 4 16 16";
316
+ var y = i().createElement(i().Fragment, null, g === true && i().createElement(I, {
317
+ viewBox: h
318
+ }), g === "some" && i().createElement(N, {
319
+ viewBox: h
318
320
  }));
319
- var k = d === true ? "disabled" : undefined;
321
+ var k = s === true ? "disabled" : undefined;
320
322
 
321
323
  return i().createElement(O, {
322
324
  "aria-checked": a,
325
+ "aria-describedby": d,
323
326
  "aria-invalid": o,
324
327
  "aria-labelledby": t,
325
328
  "aria-required": l,
326
329
  "data-selected": c,
327
330
  "data-test": n,
328
331
  disabled: k,
329
- elementRef: b,
330
- id: u,
331
- onClick: v,
332
- role: f || "checkbox",
333
- tabIndex: g,
334
- $error: s || false,
335
- $selected: p === "some" || p || false
336
- }, h);
332
+ elementRef: v,
333
+ id: b,
334
+ onClick: f,
335
+ role: p || "checkbox",
336
+ tabIndex: m,
337
+ $error: u || false,
338
+ $selected: g === "some" || g || false
339
+ }, y);
337
340
  };
338
341
  /**
339
342
  * `Switch` is a basic form control with an on/off state.
340
343
  */ function z(e) {
341
- var r = e.appearance, o = r === void 0 ? "checkbox" : r, t = e.children, l = e.disabled, n = e.elementRef, s = e.error, u = e.id, b = e.inline, v = e.labelledBy, f = e.onClick, p = e.required, g = e.selected, m = e.selectedLabel, h = e.someSelectedLabel, k = e.role, y = e.tabIndex, C = e.toggleRef, S = e.unselectedLabel, x = e.value, B = H(e, [ "appearance", "children", "disabled", "elementRef", "error", "id", "inline", "labelledBy", "onClick", "required", "selected", "selectedLabel", "someSelectedLabel", "role", "tabIndex", "toggleRef", "unselectedLabel", "value" ]);
344
+ var r = e.appearance, o = r === void 0 ? "checkbox" : r, t = e.children, l = e.describedBy, n = e.disabled, s = e.elementRef, u = e.error, b = e.id, v = e.inline, f = e.labelledBy, p = e.onClick, g = e.required, m = e.selected, h = e.selectedLabel, y = e.someSelectedLabel, k = e.role, C = e.tabIndex, S = e.toggleRef, w = e.unselectedLabel, B = e.value, O = H(e, [ "appearance", "children", "describedBy", "disabled", "elementRef", "error", "id", "inline", "labelledBy", "onClick", "required", "selected", "selectedLabel", "someSelectedLabel", "role", "tabIndex", "toggleRef", "unselectedLabel", "value" ]);
342
345
  // @docs-props-type SwitchPropsBase
343
346
  D({
344
347
  componentName: "Switch",
@@ -346,69 +349,85 @@
346
349
  propName: "appearance",
347
350
  propValue: o
348
351
  });
352
+ P({
353
+ componentName: "Switch",
354
+ propName: "selectedLabel",
355
+ propValue: h
356
+ });
357
+ P({
358
+ componentName: "Switch",
359
+ propName: "someSelectedLabel",
360
+ propValue: y
361
+ });
362
+ P({
363
+ componentName: "Switch",
364
+ propName: "unselectedLabel",
365
+ propValue: w
366
+ });
349
367
  /* If has internal label defined with children, must have an id and must use generated labelId.
350
368
  * Otherwise, use customer defined id and external label.
351
- */ var O = t && u == null ? (0, d.createDOMID)("clickable") : u;
352
- var $ = t ? (0, d.createDOMID)("label") : v;
369
+ */ var $ = t && b == null ? (0, d.createDOMID)("clickable") : b;
370
+ var I = t ? (0, d.createDOMID)("label") : f;
353
371
  (0, a.useEffect)((function() {
354
372
  if (false) {}
355
373
  if (false) {}
356
- }), [ g, o, s ]);
357
- var I = (0, a.useCallback)((function(e) {
358
- f === null || f === void 0 ? void 0 : f(e, {
359
- value: x,
374
+ }), [ m, o, u ]);
375
+ var N = (0, a.useCallback)((function(e) {
376
+ p === null || p === void 0 ? void 0 : p(e, {
377
+ value: B,
360
378
  // @ts-expect-error - safe due to individual prop interfaces
361
- selected: g
379
+ selected: m
362
380
  });
363
- }), [ f, x, g ]);
381
+ }), [ p, B, m ]);
364
382
  var q = (0, a.useCallback)((function(e) {
365
- L(C, e);
366
- }), [ C ]);
367
- var E = g === "some" ? "mixed" : g;
383
+ L(S, e);
384
+ }), [ S ]);
385
+ var E = m === "some" ? "mixed" : m;
368
386
  var _ = {
369
- true: m,
370
- false: S,
371
- some: h
387
+ true: h,
388
+ false: w,
389
+ some: y
372
390
  };
373
- var R = {
374
- id: O,
375
- onClick: l ? undefined : I,
391
+ var T = {
392
+ id: $,
393
+ onClick: n ? undefined : N,
376
394
  elementRef: q,
377
- ariaLabelledBy: $,
395
+ ariaLabelledBy: I,
378
396
  ariaChecked: E,
379
- ariaInvalid: s ? true : undefined,
380
- ariaRequired: p,
397
+ ariaInvalid: u ? true : undefined,
398
+ ariaRequired: g,
381
399
  dataTest: "toggle",
382
- dataSelected: g,
400
+ dataSelected: m,
401
+ describedBy: l,
383
402
  role: k,
384
- tabIndex: y
403
+ tabIndex: C
385
404
  };
386
- var T = !!m || !!h || !!S;
405
+ var j = !!h || !!y || !!w;
387
406
 
388
- return i().createElement(w, A({
407
+ return i().createElement(x, A({
389
408
  flex: true,
390
- inline: b,
409
+ inline: v,
391
410
  "data-test": "switch",
392
- "data-test-selected": g,
393
- "data-test-value": x,
394
- "data-test-error": s ? true : undefined,
395
- "data-error": s ? true : undefined,
396
- "data-test-disabled": l ? "disabled" : undefined,
397
- elementRef: n,
398
- $disabled: l || false
399
- }, B), o === "toggle" ? i().createElement(W, A({
400
- disabled: l || false,
401
- selected: !!g
402
- }, R)) : i().createElement(F, A({
403
- error: s || false,
404
- disabled: l || false,
405
- selected: g
406
- }, R)), T && i().createElement(c(), null, _["".concat(g)]), t && i().createElement(N, {
407
- $disabled: l || false,
411
+ "data-test-selected": m,
412
+ "data-test-value": B,
413
+ "data-test-error": u ? true : undefined,
414
+ "data-error": u ? true : undefined,
415
+ "data-test-disabled": n ? "disabled" : undefined,
416
+ elementRef: s,
417
+ $disabled: n || false
418
+ }, O), o === "toggle" ? i().createElement(W, A({
419
+ disabled: n || false,
420
+ selected: !!m
421
+ }, T)) : i().createElement(F, A({
422
+ error: u || false,
423
+ disabled: n || false,
424
+ selected: m
425
+ }, T)), j && i().createElement(c(), null, _["".concat(m)]), t && i().createElement(R, {
426
+ $disabled: n || false,
408
427
  "data-test": "label",
409
- id: $,
410
- htmlFor: O,
411
- "data-disabled": l || null
428
+ id: I,
429
+ htmlFor: $,
430
+ "data-disabled": n || null
412
431
  }, t));
413
432
  }
414
433
  z.propTypes = V;