@splunk/react-ui 4.37.0 → 4.39.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 (142) hide show
  1. package/Accordion.js +131 -153
  2. package/Anchor.js +50 -58
  3. package/Animation.js +64 -59
  4. package/AnimationToggle.js +59 -61
  5. package/Box.js +59 -67
  6. package/Breadcrumbs.js +113 -127
  7. package/Button.js +208 -219
  8. package/ButtonGroup.js +41 -49
  9. package/ButtonSimple.js +264 -295
  10. package/CHANGELOG.md +50 -1
  11. package/Calendar.js +353 -414
  12. package/Card.js +183 -243
  13. package/CardLayout.js +86 -83
  14. package/Chip.js +104 -122
  15. package/Clickable.js +180 -198
  16. package/CloseButton.js +52 -60
  17. package/Code.js +24 -31
  18. package/CollapsiblePanel.js +172 -202
  19. package/Color.js +1107 -980
  20. package/ColumnLayout.js +72 -96
  21. package/ComboBox.js +267 -305
  22. package/Concertina.js +406 -454
  23. package/ControlGroup.js +165 -194
  24. package/Date.js +116 -131
  25. package/DefinitionList.js +125 -149
  26. package/Divider.js +81 -79
  27. package/Dropdown.js +226 -237
  28. package/DualListbox.js +150 -186
  29. package/EventListener.js +4 -1
  30. package/File.js +1032 -955
  31. package/FormRows.js +281 -334
  32. package/Heading.js +27 -35
  33. package/Image.js +101 -116
  34. package/JSONTree.js +301 -344
  35. package/Layer.js +118 -126
  36. package/Link.js +141 -159
  37. package/List.js +61 -77
  38. package/MIGRATION.mdx +92 -38
  39. package/Markdown.js +288 -347
  40. package/Menu.js +512 -530
  41. package/Message.js +173 -196
  42. package/MessageBar.js +58 -66
  43. package/Modal.js +241 -290
  44. package/ModalLayer.js +130 -148
  45. package/Monogram.js +138 -138
  46. package/Multiselect.js +1600 -1923
  47. package/Number.js +159 -178
  48. package/Paginator.js +296 -335
  49. package/Paragraph.js +24 -32
  50. package/Popover.js +448 -441
  51. package/Progress.js +65 -75
  52. package/RadioBar.js +301 -303
  53. package/RadioList.js +77 -119
  54. package/Resize.js +105 -127
  55. package/ResultsMenu.js +373 -385
  56. package/ScreenReaderContent.js +130 -94
  57. package/Scroll.js +209 -244
  58. package/Search.js +375 -384
  59. package/Select.js +1076 -1354
  60. package/SidePanel.js +122 -142
  61. package/Slider.js +192 -222
  62. package/SlidingPanels.js +238 -270
  63. package/SplitButton.js +222 -245
  64. package/StaticContent.js +68 -76
  65. package/StepBar.js +206 -205
  66. package/Switch.js +211 -236
  67. package/TabBar.js +222 -258
  68. package/TabLayout.js +114 -139
  69. package/Table.js +2017 -2180
  70. package/Text.js +401 -512
  71. package/TextArea.js +411 -441
  72. package/Tooltip.js +116 -132
  73. package/TransitionOpen.js +160 -178
  74. package/Tree.js +268 -287
  75. package/Typography.js +48 -52
  76. package/WaitSpinner.js +60 -68
  77. package/cypress/support/commands.ts +9 -0
  78. package/cypress/support/index.d.ts +6 -0
  79. package/cypress/tsconfig.cypress.json +1 -0
  80. package/docker-compose.yml +0 -1
  81. package/package.json +17 -17
  82. package/types/src/Button/Button.d.ts +20 -6
  83. package/types/src/ButtonSimple/ButtonSimple.d.ts +2 -2
  84. package/types/src/CollapsiblePanel/CollapsiblePanel.d.ts +1 -1
  85. package/types/src/Color/Color.d.ts +5 -2
  86. package/types/src/Color/Palette.d.ts +6 -2
  87. package/types/src/ComboBox/Option.d.ts +1 -1
  88. package/types/src/ControlGroup/ControlGroup.d.ts +1 -2
  89. package/types/src/Date/Date.d.ts +2 -3
  90. package/types/src/File/File.d.ts +2 -3
  91. package/types/src/File/Retry.d.ts +1 -2
  92. package/types/src/Link/Link.d.ts +3 -4
  93. package/types/src/Menu/Item.d.ts +24 -8
  94. package/types/src/Menu/Menu.d.ts +3 -3
  95. package/types/src/Menu/docs/examples/Adornments.d.ts +2 -0
  96. package/types/src/Menu/docs/examples/SelectableWithAdornments.d.ts +2 -0
  97. package/types/src/ModalLayer/ModalLayer.d.ts +1 -1
  98. package/types/src/Multiselect/Option.d.ts +2 -0
  99. package/types/src/Number/Number.d.ts +3 -3
  100. package/types/src/Popover/Popover.d.ts +3 -4
  101. package/types/src/RadioBar/RadioBar.d.ts +2 -2
  102. package/types/src/ResultsMenu/VirtualizedResultsMenu/VirtualizedResultsMenu.d.ts +1 -1
  103. package/types/src/ScrollContainerContext/ScrollContainerContext.d.ts +2 -2
  104. package/types/src/Search/Option.d.ts +16 -3
  105. package/types/src/Select/Option.d.ts +3 -1
  106. package/types/src/Select/OptionBase.d.ts +7 -5
  107. package/types/src/Select/Select.d.ts +2 -2
  108. package/types/src/Select/SelectAllOption.d.ts +4 -4
  109. package/types/src/Select/SelectBase.d.ts +0 -1
  110. package/types/src/SidePanel/SidePanel.d.ts +1 -1
  111. package/types/src/Slider/Slider.d.ts +2 -3
  112. package/types/src/Slider/docs/examples/Error.d.ts +2 -0
  113. package/types/src/SlidingPanels/SlidingPanels.d.ts +1 -1
  114. package/types/src/StepBar/Step.d.ts +1 -2
  115. package/types/src/TabBar/Tab.d.ts +1 -1
  116. package/types/src/TabBar/TabBar.d.ts +3 -1
  117. package/types/src/TabLayout/TabLayout.d.ts +2 -0
  118. package/types/src/Table/HeadDropdownCell.d.ts +2 -0
  119. package/types/src/Table/Table.d.ts +0 -1
  120. package/types/src/Table/docs/examples/StripeRows.d.ts +2 -0
  121. package/types/src/Text/IconOutlinedHide.d.ts +1 -2
  122. package/types/src/Text/IconOutlinedView.d.ts +1 -2
  123. package/types/src/Text/Text.d.ts +6 -4
  124. package/types/src/Text/docs/examples/Dimmed.d.ts +2 -0
  125. package/types/src/TextArea/TextArea.d.ts +2 -2
  126. package/types/src/Tooltip/Tooltip.d.ts +4 -4
  127. package/types/src/TransitionOpen/TransitionOpen.d.ts +1 -1
  128. package/useForceUpdate.js +30 -32
  129. package/useKeyPress.js +1 -1
  130. package/types/src/Button/docs/examples/Selected.d.ts +0 -2
  131. package/types/src/ButtonGroup/docs/examples/prisma/Basic.d.ts +0 -1
  132. package/types/src/File/docs/examples/prisma/Error.d.ts +0 -1
  133. package/types/src/Menu/docs/examples/Icons.d.ts +0 -2
  134. package/types/src/Menu/docs/examples/SelectableWithIcons.d.ts +0 -2
  135. package/types/src/Slider/docs/examples/prisma/Error.d.ts +0 -2
  136. package/types/src/TabBar/docs/examples/prisma/Context.d.ts +0 -2
  137. package/types/src/TabLayout/docs/examples/prisma/Context.d.ts +0 -2
  138. package/types/src/Table/docs/examples/prisma/Basic.d.ts +0 -2
  139. /package/types/src/Date/docs/examples/{prisma/WithoutCalendar.d.ts → WithoutCalendar.d.ts} +0 -0
  140. /package/types/src/Message/docs/examples/{prisma/Title.d.ts → Title.d.ts} +0 -0
  141. /package/types/src/StepBar/docs/examples/{prisma/Error.d.ts → Error.d.ts} +0 -0
  142. /package/types/src/TabBar/docs/examples/{prisma/Disabled.d.ts → Disabled.d.ts} +0 -0
package/Typography.js CHANGED
@@ -61,15 +61,15 @@
61
61
  e.r(r);
62
62
  // EXPORTS
63
63
  e.d(r, {
64
- Typography: () => /* reexport */ v,
65
- default: () => /* reexport */ g
64
+ Typography: () => /* reexport */ g,
65
+ default: () => /* reexport */ m
66
66
  });
67
67
  // CONCATENATED MODULE: external "react"
68
68
  const t = require("react");
69
69
  var n = e.n(t);
70
70
  // CONCATENATED MODULE: external "prop-types"
71
- const o = require("prop-types");
72
- var a = e.n(o);
71
+ const a = require("prop-types");
72
+ var o = e.n(a);
73
73
  // CONCATENATED MODULE: external "@splunk/themes/mixins"
74
74
  const i = require("@splunk/themes/mixins");
75
75
  var l = e.n(i);
@@ -77,58 +77,54 @@
77
77
  const s = require("styled-components");
78
78
  var p = e.n(s);
79
79
  // CONCATENATED MODULE: ./src/Typography/Typography.tsx
80
- function y() {
81
- y = Object.assign || function(e) {
80
+ function u() {
81
+ return u = Object.assign ? Object.assign.bind() : function(e) {
82
82
  for (var r = 1; r < arguments.length; r++) {
83
83
  var t = arguments[r];
84
84
  for (var n in t) {
85
- if (Object.prototype.hasOwnProperty.call(t, n)) {
86
- e[n] = t[n];
87
- }
85
+ ({}).hasOwnProperty.call(t, n) && (e[n] = t[n]);
88
86
  }
89
87
  }
90
88
  return e;
91
- };
92
- return y.apply(this, arguments);
89
+ }, u.apply(null, arguments);
93
90
  }
94
- function f(e, r) {
95
- if (e == null) return {};
96
- var t = u(e, r);
97
- var n, o;
91
+ function y(e, r) {
92
+ if (null == e) return {};
93
+ var t, n, a = f(e, r);
98
94
  if (Object.getOwnPropertySymbols) {
99
- var a = Object.getOwnPropertySymbols(e);
100
- for (o = 0; o < a.length; o++) {
101
- n = a[o];
102
- if (r.indexOf(n) >= 0) continue;
103
- if (!Object.prototype.propertyIsEnumerable.call(e, n)) continue;
104
- t[n] = e[n];
95
+ var o = Object.getOwnPropertySymbols(e);
96
+ for (n = 0; n < o.length; n++) {
97
+ t = o[n], r.includes(t) || {}.propertyIsEnumerable.call(e, t) && (a[t] = e[t]);
105
98
  }
106
99
  }
107
- return t;
100
+ return a;
108
101
  }
109
- function u(e, r) {
110
- if (e == null) return {};
102
+ function f(e, r) {
103
+ if (null == e) return {};
111
104
  var t = {};
112
- var n = Object.keys(e);
113
- var o, a;
114
- for (a = 0; a < n.length; a++) {
115
- o = n[a];
116
- if (r.indexOf(o) >= 0) continue;
117
- t[o] = e[o];
105
+ for (var n in e) {
106
+ if ({}.hasOwnProperty.call(e, n)) {
107
+ if (r.includes(n)) continue;
108
+ t[n] = e[n];
109
+ }
118
110
  }
119
111
  return t;
120
112
  }
121
- var c = {
122
- children: a().node.isRequired,
123
- as: a().string.isRequired,
124
- elementRef: a().oneOfType([ a().func, a().object ]),
125
- family: a().oneOf([ "sansSerif", "monospace" ]),
126
- variant: a().oneOf(i.typographyVariants),
127
- size: a().number,
128
- lineHeight: a().number,
129
- color: a().oneOf([ "active", "default", "disabled", "inverted", "muted", "inherit" ]),
130
- weight: a().oneOf([ 300, 400, 500, 600, 700, 800, 900, "light", "normal", "semiBold", "bold", "extraBold", "heavy" ]),
131
- withReset: a().bool
113
+ // TODO: Remove in next major version (SUI-5350)
114
+ // TODO: TypographyPropsBase should extend from TypographyParams (SUI-5343)
115
+ // Weight is omitted because the types conflict since weight no longer supports number values in the mixin
116
+ // but they are supported in the component to avoid a breaking change
117
+ var c = {
118
+ children: o().node.isRequired,
119
+ as: o().string.isRequired,
120
+ elementRef: o().oneOfType([ o().func, o().object ]),
121
+ family: o().oneOf([ "sansSerif", "monospace" ]),
122
+ variant: o().oneOf(i.typographyVariants),
123
+ size: o().number,
124
+ lineHeight: o().number,
125
+ color: o().oneOf([ "active", "default", "disabled", "inverted", "muted", "inherit" ]),
126
+ weight: o().oneOf([ 300, 400, 500, 600, 700, 800, 900, "light", "normal", "semiBold", "bold", "extraBold", "heavy" ]),
127
+ withReset: o().bool
132
128
  };
133
129
  var d = p().p.withConfig({
134
130
  displayName: "Typography__StyledTypography",
@@ -148,30 +144,30 @@
148
144
  };
149
145
  /**
150
146
  * Typography renders text content with styling based on the Splunk Design System.
151
- */ function v(e) {
152
- var r = e.children, t = e.as, o = e.elementRef, a = e.variant, i = e.family, l = e.size, s = e.lineHeight, p = e.color, u = e.weight, c = e.withReset, v = f(e, [ "children", "as", "elementRef", "variant", "family", "size", "lineHeight", "color", "weight", "withReset" ]);
147
+ */ function g(e) {
148
+ var r = e.children, t = e.as, a = e.elementRef, o = e.variant, i = e.family, l = e.size, s = e.lineHeight, p = e.color, f = e.weight, c = e.withReset, g = y(e, [ "children", "as", "elementRef", "variant", "family", "size", "lineHeight", "color", "weight", "withReset" ]);
153
149
  // @docs-props-type TypographyPropsBase
154
150
  // TODO: Remove in next major version (SUI-5350)
155
151
  if (false) {}
156
- var g = {
152
+ var m = {
157
153
  family: i,
158
154
  size: l,
159
155
  lineHeight: s,
160
156
  color: p,
161
157
  withReset: c,
162
- weight: typeof u === "number" ? h[u] : u
158
+ weight: typeof f === "number" ? h[f] : f
163
159
  };
164
160
 
165
- return n().createElement(d, y({
161
+ return n().createElement(d, u({
166
162
  as: t,
167
- ref: o,
163
+ ref: a,
168
164
  "data-test": "typography",
169
- $variant: a,
170
- $typographyParams: g
171
- }, v), r);
165
+ $variant: o,
166
+ $typographyParams: m
167
+ }, g), r);
172
168
  }
173
- v.propTypes = c;
174
- /* harmony default export */ const g = v;
169
+ g.propTypes = c;
170
+ /* harmony default export */ const m = g;
175
171
  // CONCATENATED MODULE: ./src/Typography/index.ts
176
172
  module.exports = r;
177
173
  /******/})();
package/WaitSpinner.js CHANGED
@@ -8,27 +8,27 @@
8
8
  /******/ /* webpack/runtime/compat get default export */
9
9
  /******/ (() => {
10
10
  /******/ // getDefaultExport function for compatibility with non-harmony modules
11
- /******/ e.n = t => {
12
- /******/ var r = t && t.__esModule ?
13
- /******/ () => t["default"]
14
- /******/ : () => t
11
+ /******/ e.n = r => {
12
+ /******/ var t = r && r.__esModule ?
13
+ /******/ () => r["default"]
14
+ /******/ : () => r
15
15
  /******/;
16
- e.d(r, {
17
- a: r
16
+ e.d(t, {
17
+ a: t
18
18
  });
19
- /******/ return r;
19
+ /******/ return t;
20
20
  /******/ };
21
21
  /******/ })();
22
22
  /******/
23
23
  /******/ /* webpack/runtime/define property getters */
24
24
  /******/ (() => {
25
25
  /******/ // define getter functions for harmony exports
26
- /******/ e.d = (t, r) => {
27
- /******/ for (var i in r) {
28
- /******/ if (e.o(r, i) && !e.o(t, i)) {
29
- /******/ Object.defineProperty(t, i, {
26
+ /******/ e.d = (r, t) => {
27
+ /******/ for (var i in t) {
28
+ /******/ if (e.o(t, i) && !e.o(r, i)) {
29
+ /******/ Object.defineProperty(r, i, {
30
30
  enumerable: true,
31
- get: r[i]
31
+ get: t[i]
32
32
  });
33
33
  /******/ }
34
34
  /******/ }
@@ -37,7 +37,7 @@
37
37
  /******/
38
38
  /******/ /* webpack/runtime/hasOwnProperty shorthand */
39
39
  /******/ (() => {
40
- /******/ e.o = (e, t) => Object.prototype.hasOwnProperty.call(e, t)
40
+ /******/ e.o = (e, r) => Object.prototype.hasOwnProperty.call(e, r)
41
41
  /******/;
42
42
  })();
43
43
  /******/
@@ -56,16 +56,16 @@
56
56
  /******/ };
57
57
  /******/ })();
58
58
  /******/
59
- /************************************************************************/ var t = {};
59
+ /************************************************************************/ var r = {};
60
60
  // ESM COMPAT FLAG
61
- e.r(t);
61
+ e.r(r);
62
62
  // EXPORTS
63
- e.d(t, {
63
+ e.d(r, {
64
64
  default: () => /* reexport */ _
65
65
  });
66
66
  // CONCATENATED MODULE: external "react"
67
- const r = require("react");
68
- var i = e.n(r);
67
+ const t = require("react");
68
+ var i = e.n(t);
69
69
  // CONCATENATED MODULE: external "prop-types"
70
70
  const n = require("prop-types");
71
71
  var a = e.n(n);
@@ -77,16 +77,16 @@
77
77
  const l = require("@splunk/ui-utils/i18n");
78
78
  // CONCATENATED MODULE: external "styled-components"
79
79
  const c = require("styled-components");
80
- var f = e.n(c);
80
+ var m = e.n(c);
81
81
  // CONCATENATED MODULE: ./src/WaitSpinner/WaitSpinnerStyles.ts
82
- var m = f().div.withConfig({
82
+ var f = m().div.withConfig({
83
83
  displayName: "WaitSpinnerStyles__Styled",
84
84
  componentId: "sc-1nu971z-0"
85
85
  })([ "", ";align-items:center;" ], o.mixins.reset("inline-flex"));
86
86
  var p = (0, c.keyframes)([ "100%{transform:rotate(360deg);}" ]);
87
87
  var d = (0, c.keyframes)([ "0%{transform:scale(0);opacity:0;}100%{transform:scale(1);opacity:1;}" ]);
88
88
  var u = "2.07s";
89
- var y = f().svg.withConfig({
89
+ var y = m().svg.withConfig({
90
90
  displayName: "WaitSpinnerStyles__StyledSvg",
91
91
  componentId: "sc-1nu971z-1"
92
92
  })([ "", " ", "" ], (0, o.pickVariant)("$size", {
@@ -103,22 +103,22 @@
103
103
  prisma: (0, c.css)([ "width:40px;height:40px;" ])
104
104
  }
105
105
  }), (function(e) {
106
- var t = e.$animated;
107
- return t && (0, o.pick)({
106
+ var r = e.$animated;
107
+ return r && (0, o.pick)({
108
108
  enterprise: (0, c.css)([ "transform-origin:center;animation:", " 1.2s steps(64) infinite;" ], p),
109
109
  prisma: (0, c.css)([ "animation:", " ", " infinite linear,", " 500ms cubic-bezier(0.01,0,0,1);" ], p, u, d)
110
110
  });
111
111
  }));
112
112
  var h = (0, c.keyframes)([ "0%{stroke-dasharray:110 10;stroke-dashoffset:-5.5;animation-timing-function:cubic-bezier(0.8,0,0.83,1);}50%{stroke-dasharray:26 94;stroke-dashoffset:-152;}100%{stroke-dasharray:110 10;stroke-dashoffset:-246.5;animation-timing-function:cubic-bezier(0.33,0,0.67,1);}" ]);
113
113
  var v = (0, c.keyframes)([ "0%{stroke-dasharray:7 113;stroke-dashoffset:3;animation-timing-function:cubic-bezier(0.8,0,0.83,1);}50%{stroke-dasharray:90 30;stroke-dashoffset:-60;}100%{stroke-dasharray:7 113;stroke-dashoffset:-238;animation-timing-function:cubic-bezier(0.33,0,0.67,1);}" ]);
114
- var g = f().circle.withConfig({
114
+ var g = m().circle.withConfig({
115
115
  displayName: "WaitSpinnerStyles__StyledPrismaBasePath",
116
116
  componentId: "sc-1nu971z-2"
117
117
  })([ "stroke:", ";stroke-width:2;fill:transparent;", " stroke-dasharray:110 10;stroke-dashoffset:-5.5;" ], o.variables.contentColorDisabled, (function(e) {
118
- var t = e.$animated;
119
- return t && (0, c.css)([ "animation:", " ", " infinite;animation-fill-mode:backwards;" ], h, u);
118
+ var r = e.$animated;
119
+ return r && (0, c.css)([ "animation:", " ", " infinite;animation-fill-mode:backwards;" ], h, u);
120
120
  }));
121
- var k = f().circle.withConfig({
121
+ var k = m().circle.withConfig({
122
122
  displayName: "WaitSpinnerStyles__StyledPrismaFillPath",
123
123
  componentId: "sc-1nu971z-3"
124
124
  })([ "fill:transparent;stroke-width:2;stroke:", ";stroke-dasharray:7 113;stroke-dashoffset:3;", "" ], (0,
@@ -127,10 +127,10 @@
127
127
  medium: o.variables.contentColorDefault,
128
128
  large: o.variables.interactiveColorPrimary
129
129
  }), (function(e) {
130
- var t = e.$animated;
131
- return t && (0, c.css)([ "animation:", " ", " infinite;" ], v, u);
130
+ var r = e.$animated;
131
+ return r && (0, c.css)([ "animation:", " ", " infinite;" ], v, u);
132
132
  }));
133
- var b = f().circle.withConfig({
133
+ var b = m().circle.withConfig({
134
134
  displayName: "WaitSpinnerStyles__StyledEnterpriseCircle",
135
135
  componentId: "sc-1nu971z-4"
136
136
  })([ "fill:transparent;stroke:", ";stroke-width:2px;", "" ], (0, o.pick)({
@@ -144,66 +144,58 @@
144
144
  }));
145
145
  // CONCATENATED MODULE: ./src/WaitSpinner/WaitSpinner.tsx
146
146
  function w() {
147
- w = Object.assign || function(e) {
148
- for (var t = 1; t < arguments.length; t++) {
149
- var r = arguments[t];
150
- for (var i in r) {
151
- if (Object.prototype.hasOwnProperty.call(r, i)) {
152
- e[i] = r[i];
153
- }
147
+ return w = Object.assign ? Object.assign.bind() : function(e) {
148
+ for (var r = 1; r < arguments.length; r++) {
149
+ var t = arguments[r];
150
+ for (var i in t) {
151
+ ({}).hasOwnProperty.call(t, i) && (e[i] = t[i]);
154
152
  }
155
153
  }
156
154
  return e;
157
- };
158
- return w.apply(this, arguments);
155
+ }, w.apply(null, arguments);
159
156
  }
160
- function x(e, t) {
161
- if (e == null) return {};
162
- var r = S(e, t);
163
- var i, n;
157
+ function x(e, r) {
158
+ if (null == e) return {};
159
+ var t, i, n = S(e, r);
164
160
  if (Object.getOwnPropertySymbols) {
165
161
  var a = Object.getOwnPropertySymbols(e);
166
- for (n = 0; n < a.length; n++) {
167
- i = a[n];
168
- if (t.indexOf(i) >= 0) continue;
169
- if (!Object.prototype.propertyIsEnumerable.call(e, i)) continue;
170
- r[i] = e[i];
162
+ for (i = 0; i < a.length; i++) {
163
+ t = a[i], r.includes(t) || {}.propertyIsEnumerable.call(e, t) && (n[t] = e[t]);
171
164
  }
172
165
  }
173
- return r;
166
+ return n;
174
167
  }
175
- function S(e, t) {
176
- if (e == null) return {};
177
- var r = {};
178
- var i = Object.keys(e);
179
- var n, a;
180
- for (a = 0; a < i.length; a++) {
181
- n = i[a];
182
- if (t.indexOf(n) >= 0) continue;
183
- r[n] = e[n];
168
+ function S(e, r) {
169
+ if (null == e) return {};
170
+ var t = {};
171
+ for (var i in e) {
172
+ if ({}.hasOwnProperty.call(e, i)) {
173
+ if (r.includes(i)) continue;
174
+ t[i] = e[i];
175
+ }
184
176
  }
185
- return r;
177
+ return t;
186
178
  }
187
- var O = {
179
+ var z = {
188
180
  elementRef: a().oneOfType([ a().func, a().object ]),
189
181
  screenReaderText: a().oneOfType([ a().string, a().oneOf([ "null" ]) ]),
190
182
  size: a().oneOf([ "small", "medium", "large" ])
191
183
  };
192
- function z(e) {
193
- var t = e.elementRef, r = e.screenReaderText, n = r === void 0 ? (0, l._)("Waiting") : r, a = e.size, c = a === void 0 ? "small" : a, f = x(e, [ "elementRef", "screenReaderText", "size" ]);
184
+ function O(e) {
185
+ var r = e.elementRef, t = e.screenReaderText, n = t === void 0 ? (0, l._)("Waiting") : t, a = e.size, c = a === void 0 ? "small" : a, m = x(e, [ "elementRef", "screenReaderText", "size" ]);
194
186
  // @docs-props-type WaitSpinnerPropsBase
195
187
  if (false) {}
196
188
  var p = (0, s.useAnimationToggle)() === "on";
197
189
  var d = (0, o.useSplunkTheme)(), u = d.isPrisma;
198
190
  var h = u ? "0 0 40 40" : "0 0 19 19";
199
191
 
200
- return i().createElement(m, w({
192
+ return i().createElement(f, w({
201
193
  "data-test": "wait-spinner"
202
- }, f), i().createElement(y, {
194
+ }, m), i().createElement(y, {
203
195
  viewBox: h,
204
196
  version: "1.1",
205
197
  xmlns: "http://www.w3.org/2000/svg",
206
- ref: t,
198
+ ref: r,
207
199
  $animated: p,
208
200
  $size: c
209
201
  }, n && i().createElement("title", null, n), i().createElement("g", null, u ? i().createElement(i().Fragment, null, i().createElement(g, {
@@ -224,8 +216,8 @@
224
216
  r: "8.5"
225
217
  }))));
226
218
  }
227
- z.propTypes = O;
228
- /* harmony default export */ const _ = z;
219
+ O.propTypes = z;
220
+ /* harmony default export */ const _ = O;
229
221
  // CONCATENATED MODULE: ./src/WaitSpinner/index.ts
230
- module.exports = t;
222
+ module.exports = r;
231
223
  /******/})();
@@ -1,2 +1,11 @@
1
1
  import '@testing-library/cypress/add-commands';
2
2
  import 'cypress-real-events';
3
+
4
+ // https://docs.cypress.io/api/commands/hover
5
+ Cypress.Commands.add('hover', (selector: string) => {
6
+ if (Cypress.browser.name !== 'firefox') {
7
+ cy.get(selector).realHover();
8
+ } else {
9
+ cy.get(selector).trigger('mouseover', { force: true });
10
+ }
11
+ });
@@ -0,0 +1,6 @@
1
+ /* eslint-disable @typescript-eslint/no-namespace */
2
+ declare namespace Cypress {
3
+ interface Chainable {
4
+ hover(selector: string): void; // to support hover custom command
5
+ }
6
+ }
@@ -4,6 +4,7 @@
4
4
  "compilerOptions": {
5
5
  "noEmit": true,
6
6
  "types": [
7
+ "./support",
7
8
  "../../../node_modules/@testing-library/cypress",
8
9
  "../../../node_modules/cypress",
9
10
  "../../../node_modules/cypress-real-events"
@@ -1,4 +1,3 @@
1
- version: "3.9"
2
1
  services:
3
2
  prisma-storybook:
4
3
  build:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@splunk/react-ui",
3
- "version": "4.37.0",
3
+ "version": "4.39.0",
4
4
  "description": "Library of React components that implement the Splunk design language",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Splunk Inc.",
@@ -44,8 +44,8 @@
44
44
  "@dnd-kit/modifiers": "^7.0.0",
45
45
  "@dnd-kit/sortable": "^8.0.0",
46
46
  "@dnd-kit/utilities": "^3.2.2",
47
- "@splunk/react-icons": "^4.7.0",
48
- "@splunk/themes": "^0.21.0",
47
+ "@splunk/react-icons": "^4.8.0",
48
+ "@splunk/themes": "^0.22.0",
49
49
  "@splunk/ui-utils": "^1.7.1",
50
50
  "commonmark": "^0.30.0",
51
51
  "commonmark-react-renderer": "^4.3.2",
@@ -63,8 +63,8 @@
63
63
  "@babel/plugin-transform-runtime": "^7.18.6",
64
64
  "@splunk/babel-preset": "^4.0.0",
65
65
  "@splunk/docs-gen": "1.0.0-beta.13",
66
- "@splunk/eslint-config": "^4.0.0",
67
- "@splunk/react-docs": "1.0.0-beta.18",
66
+ "@splunk/eslint-config": "^5.0.0",
67
+ "@splunk/react-docs": "1.0.0-beta.19",
68
68
  "@splunk/stylelint-config": "^5.0.0",
69
69
  "@splunk/test-runner-utils": "^0.4.1",
70
70
  "@splunk/webpack-configs": "^7.0.2",
@@ -106,19 +106,19 @@
106
106
  "cross-env": "^6.0.3",
107
107
  "cypress": "^12.17.1",
108
108
  "cypress-real-events": "^1.9.1",
109
- "eslint": "^7.14.0",
110
- "eslint-config-airbnb": "^18.2.1",
111
- "eslint-config-prettier": "^6.15.0",
109
+ "eslint": "^8.57.1",
110
+ "eslint-config-airbnb": "^19.0.4",
111
+ "eslint-config-prettier": "^9.1.0",
112
112
  "eslint-import-resolver-webpack": "^0.13.4",
113
- "eslint-plugin-cypress": "^2.12.1",
114
- "eslint-plugin-import": "^2.22.1",
115
- "eslint-plugin-jest": "27.9.0",
116
- "eslint-plugin-jest-dom": "^5.1.0",
117
- "eslint-plugin-jsx-a11y": "^6.4.1",
118
- "eslint-plugin-react": "^7.21.5",
119
- "eslint-plugin-react-hooks": "^4.2.0",
120
- "eslint-plugin-react-perf": "^3.3.1",
121
- "eslint-plugin-testing-library": "6.2.0",
113
+ "eslint-plugin-cypress": "^3.5.0",
114
+ "eslint-plugin-import": "^2.30.1",
115
+ "eslint-plugin-jest": "^28.8.3",
116
+ "eslint-plugin-jest-dom": "^5.4.0",
117
+ "eslint-plugin-jsx-a11y": "^6.10.0",
118
+ "eslint-plugin-react": "^7.36.1",
119
+ "eslint-plugin-react-hooks": "^4.6.2",
120
+ "eslint-plugin-react-perf": "^3.3.2",
121
+ "eslint-plugin-testing-library": "^6.3.0",
122
122
  "fs-extra": "^10.1.0",
123
123
  "fs-readdir-recursive": "^1.0.0",
124
124
  "glob": "^7.1.6",
@@ -34,7 +34,6 @@ interface ButtonPropsBase {
34
34
  * Turns the button red. If you use this prop, apply other error
35
35
  * indicators, such as an error message, to meet accessibility
36
36
  * requirements.
37
- *
38
37
  * */
39
38
  error?: boolean;
40
39
  /** Applies the text that displays on the button. */
@@ -47,17 +46,32 @@ interface ButtonPropsBase {
47
46
  * remove the right margin and stretch the button to the full width of
48
47
  * its container. */
49
48
  inline?: boolean;
50
- /** Displays the chevron-down icon to indicate that the button behaves
51
- * as a menu. */
49
+ /**
50
+ * Displays the chevron-down icon to indicate that the button behaves as a menu.
51
+ *
52
+ * To meet accessibility requirements, this prop should be used together with the `Dropdown` component.
53
+ *
54
+ * If `Dropdown` is not used, this prop should be used together with `aria-controls` and `aria-expanded`.
55
+ */
52
56
  isMenu?: boolean;
53
57
  /** Prevents callback when the button is disabled. */
54
58
  onClick?: ButtonClickHandler;
55
- /** Opens the 'to' link in a new browser tab. */
56
- openInNewContext?: boolean;
59
+ /**
60
+ * Open the "to" link in a new context, which is usually a new tab or window based on browser settings.
61
+ *
62
+ * An icon and a screen reader message is added to indicate this behavior to users.
63
+ * The default message is "(Opens new window)"; this can be customized by passing
64
+ * a string instead of boolean to `openInNewContext`.
65
+ */
66
+ openInNewContext?: boolean | string;
57
67
  /** Removes the left border and border-radius of the button so you can
58
68
  * prepend elements to it. */
59
69
  prepend?: boolean;
60
- /** Adds the style to make the button appear selected. */
70
+ /**
71
+ * @deprecated This prop is deprecated and will be removed in the next major version.
72
+ *
73
+ * Adds the style to make the button appear selected.
74
+ */
61
75
  selected?: boolean;
62
76
  /** Identifies the URL for a link. If set, Splunk UI applies an <a> tag
63
77
  * instead of a <button> tag. */