@splunk/react-ui 4.12.1 → 4.14.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 (122) hide show
  1. package/.storybook-visual/config/snapshotResolver.js +29 -0
  2. package/.storybook-visual/main.js +22 -0
  3. package/.storybook-visual/preview.jsx +31 -0
  4. package/.storybook-visual/scripts/test.sh +108 -0
  5. package/.storybook-visual/test-runner.js +108 -0
  6. package/Accordion.js +4 -4
  7. package/Anchor.js +2 -2
  8. package/Animation.js +6 -6
  9. package/AnimationToggle.js +2 -2
  10. package/Box.js +2 -2
  11. package/Button.js +23 -23
  12. package/ButtonGroup.js +2 -2
  13. package/ButtonSimple.js +7 -7
  14. package/CHANGELOG.md +33 -0
  15. package/Calendar.js +390 -95
  16. package/Card.js +25 -23
  17. package/CardLayout.js +2 -2
  18. package/Chip.js +17 -17
  19. package/Clickable.js +4 -4
  20. package/CloseButton.js +15 -15
  21. package/Code.js +4 -4
  22. package/CollapsiblePanel.js +15 -11
  23. package/Color.js +26 -26
  24. package/ColumnLayout.js +6 -6
  25. package/ComboBox.js +19 -19
  26. package/Concertina.js +6 -6
  27. package/ControlGroup.js +14 -13
  28. package/Date.js +118 -55
  29. package/DefinitionList.js +2 -2
  30. package/Divider.js +194 -0
  31. package/Dropdown.js +17 -13
  32. package/EventListener.js +4 -4
  33. package/File.js +23 -23
  34. package/FormRows.js +14 -14
  35. package/Heading.js +2 -2
  36. package/Image.js +19 -19
  37. package/JSONTree.js +2 -2
  38. package/Layer.js +85 -8
  39. package/Link.js +4 -4
  40. package/List.js +2 -2
  41. package/Markdown.js +18 -18
  42. package/Menu.js +51 -52
  43. package/Message.js +39 -39
  44. package/MessageBar.js +29 -29
  45. package/Modal.js +63 -37
  46. package/ModalLayer.js +11 -11
  47. package/Monogram.js +2 -2
  48. package/Multiselect.js +134 -125
  49. package/Number.js +8 -6
  50. package/Paginator.js +48 -48
  51. package/Paragraph.js +2 -2
  52. package/Popover.js +186 -19
  53. package/Progress.js +8 -8
  54. package/RadioBar.js +2 -2
  55. package/RadioList.js +4 -4
  56. package/Resize.js +4 -4
  57. package/ResultsMenu.js +20 -20
  58. package/ScreenReaderContent.js +2 -2
  59. package/Scroll.js +13 -13
  60. package/ScrollContainerContext.js +154 -3
  61. package/Search.js +25 -25
  62. package/Select.js +114 -105
  63. package/SidePanel.js +6 -6
  64. package/Slider.js +14 -14
  65. package/SlidingPanels.js +11 -11
  66. package/SplitButton.js +511 -0
  67. package/StaticContent.js +2 -2
  68. package/StepBar.js +10 -10
  69. package/Switch.js +8 -8
  70. package/TabBar.js +15 -15
  71. package/TabLayout.js +6 -6
  72. package/Table.js +275 -76
  73. package/Text.js +51 -42
  74. package/TextArea.js +41 -33
  75. package/Tooltip.js +17 -11
  76. package/TransitionOpen.js +39 -15
  77. package/Typography.js +4 -4
  78. package/WaitSpinner.js +4 -4
  79. package/package.json +12 -14
  80. package/test-runner-jest.config.js +18 -5
  81. package/types/src/Button/Button.d.ts +1 -1
  82. package/types/src/Calendar/Calendar.d.ts +15 -2
  83. package/types/src/Calendar/DateTable.d.ts +7 -3
  84. package/types/src/Calendar/Day.d.ts +14 -5
  85. package/types/src/CollapsiblePanel/CollapsiblePanel.d.ts +7 -3
  86. package/types/src/Date/Date.d.ts +17 -8
  87. package/types/src/Date/docs/examples/CustomDate.d.ts +2 -2
  88. package/types/src/Date/docs/examples/Disabled.d.ts +2 -2
  89. package/types/src/Date/docs/examples/prisma/WithoutCalendar.d.ts +2 -0
  90. package/types/src/Divider/Divider.d.ts +20 -0
  91. package/types/src/Divider/docs/examples/AriaHidden.d.ts +2 -0
  92. package/types/src/Divider/docs/examples/Basic.d.ts +2 -0
  93. package/types/src/Divider/docs/examples/CustomStyle.d.ts +2 -0
  94. package/types/src/Divider/docs/examples/Vertical.d.ts +2 -0
  95. package/types/src/Divider/index.d.ts +1 -0
  96. package/types/src/Dropdown/Dropdown.d.ts +11 -3
  97. package/types/src/Modal/Modal.d.ts +7 -3
  98. package/types/src/Modal/ModalContext.d.ts +1 -0
  99. package/types/src/Number/Number.d.ts +5 -1
  100. package/types/src/Popover/Popover.d.ts +5 -1
  101. package/types/src/Popover/getPlacement.d.ts +1 -1
  102. package/types/src/SplitButton/Item.d.ts +45 -0
  103. package/types/src/SplitButton/SplitButton.d.ts +41 -0
  104. package/types/src/SplitButton/docs/examples/Basic.d.ts +1 -0
  105. package/types/src/SplitButton/docs/examples/ChangeLabel.d.ts +1 -0
  106. package/types/src/SplitButton/docs/examples/Disabled.d.ts +1 -0
  107. package/types/src/SplitButton/docs/examples/prisma/Basic.d.ts +1 -0
  108. package/types/src/SplitButton/docs/examples/prisma/Disabled.d.ts +1 -0
  109. package/types/src/SplitButton/index.d.ts +2 -0
  110. package/types/src/Table/HeadCell.d.ts +4 -1
  111. package/types/src/Table/HeadDropdownCell.d.ts +10 -3
  112. package/types/src/Table/docs/examples/FilterColumnValues.d.ts +14 -0
  113. package/types/src/Text/Text.d.ts +5 -1
  114. package/types/src/TextArea/TextArea.d.ts +5 -1
  115. package/types/src/Tooltip/Tooltip.d.ts +10 -5
  116. package/types/src/TransitionOpen/TransitionOpen.d.ts +7 -3
  117. package/types/src/useForceUpdate/index.d.ts +2 -0
  118. package/types/src/useForceUpdate/useForceUpdate.d.ts +9 -0
  119. package/types/src/useKeyPress/index.d.ts +37 -0
  120. package/useForceUpdate.js +151 -0
  121. package/useKeyPress.js +160 -0
  122. package/usePrevious.js +2 -2
package/Markdown.js CHANGED
@@ -82,7 +82,7 @@ module.exports =
82
82
  /******/
83
83
  /******/
84
84
  /******/ // Load entry module and return exports
85
- /******/ return __webpack_require__(__webpack_require__.s = 111);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 116);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -101,7 +101,7 @@ module.exports = require("prop-types");
101
101
 
102
102
  /***/ }),
103
103
 
104
- /***/ 111:
104
+ /***/ 116:
105
105
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
106
106
 
107
107
  "use strict";
@@ -130,11 +130,11 @@ var external_prop_types_ = __webpack_require__(1);
130
130
  var external_prop_types_default = /*#__PURE__*/__webpack_require__.n(external_prop_types_);
131
131
 
132
132
  // EXTERNAL MODULE: external "commonmark-react-renderer"
133
- var external_commonmark_react_renderer_ = __webpack_require__(91);
133
+ var external_commonmark_react_renderer_ = __webpack_require__(94);
134
134
  var external_commonmark_react_renderer_default = /*#__PURE__*/__webpack_require__.n(external_commonmark_react_renderer_);
135
135
 
136
136
  // EXTERNAL MODULE: external "commonmark"
137
- var external_commonmark_ = __webpack_require__(92);
137
+ var external_commonmark_ = __webpack_require__(95);
138
138
  var external_commonmark_default = /*#__PURE__*/__webpack_require__.n(external_commonmark_);
139
139
 
140
140
  // EXTERNAL MODULE: external "@splunk/react-ui/Box"
@@ -223,7 +223,7 @@ function MarkdownCode(_ref) {
223
223
  MarkdownCode.propTypes = MarkdownCode_propTypes;
224
224
  /* harmony default export */ var renderers_MarkdownCode = (MarkdownCode);
225
225
  // EXTERNAL MODULE: external "@splunk/react-ui/Code"
226
- var Code_ = __webpack_require__(93);
226
+ var Code_ = __webpack_require__(96);
227
227
  var Code_default = /*#__PURE__*/__webpack_require__.n(Code_);
228
228
 
229
229
  // EXTERNAL MODULE: external "@splunk/ui-utils/i18n"
@@ -257,7 +257,7 @@ function MarkdownCodeBlock(_ref) {
257
257
  MarkdownCodeBlock.propTypes = MarkdownCodeBlock_propTypes;
258
258
  /* harmony default export */ var renderers_MarkdownCodeBlock = (MarkdownCodeBlock);
259
259
  // EXTERNAL MODULE: external "@splunk/react-ui/Heading"
260
- var Heading_ = __webpack_require__(55);
260
+ var Heading_ = __webpack_require__(58);
261
261
  var Heading_default = /*#__PURE__*/__webpack_require__.n(Heading_);
262
262
 
263
263
  // CONCATENATED MODULE: ./src/Markdown/renderers/MarkdownHeading.tsx
@@ -279,7 +279,7 @@ function MarkdownHeading(_ref) {
279
279
  MarkdownHeading.propTypes = MarkdownHeading_propTypes;
280
280
  /* harmony default export */ var renderers_MarkdownHeading = (MarkdownHeading);
281
281
  // EXTERNAL MODULE: external "@splunk/react-ui/Anchor"
282
- var Anchor_ = __webpack_require__(61);
282
+ var Anchor_ = __webpack_require__(64);
283
283
  var Anchor_default = /*#__PURE__*/__webpack_require__.n(Anchor_);
284
284
 
285
285
  // CONCATENATED MODULE: ./src/Markdown/renderers/MarkdownAnchorHeading.tsx
@@ -328,7 +328,7 @@ function MarkdownImage(_ref) {
328
328
  MarkdownImage.propTypes = MarkdownImage_propTypes;
329
329
  /* harmony default export */ var renderers_MarkdownImage = (MarkdownImage);
330
330
  // EXTERNAL MODULE: external "@splunk/react-ui/Link"
331
- var Link_ = __webpack_require__(30);
331
+ var Link_ = __webpack_require__(33);
332
332
  var Link_default = /*#__PURE__*/__webpack_require__.n(Link_);
333
333
 
334
334
  // CONCATENATED MODULE: ./src/Markdown/renderers/MarkdownLink.tsx
@@ -354,7 +354,7 @@ function MarkdownLink(_ref) {
354
354
  MarkdownLink.propTypes = MarkdownLink_propTypes;
355
355
  /* harmony default export */ var renderers_MarkdownLink = (MarkdownLink);
356
356
  // EXTERNAL MODULE: external "@splunk/react-ui/List"
357
- var List_ = __webpack_require__(80);
357
+ var List_ = __webpack_require__(82);
358
358
  var List_default = /*#__PURE__*/__webpack_require__.n(List_);
359
359
 
360
360
  // CONCATENATED MODULE: ./src/Markdown/renderers/MarkdownList.tsx
@@ -392,7 +392,7 @@ function MarkdownItem(_ref) {
392
392
  MarkdownItem.propTypes = MarkdownItem_propTypes;
393
393
  /* harmony default export */ var renderers_MarkdownItem = (MarkdownItem);
394
394
  // EXTERNAL MODULE: external "@splunk/react-ui/Paragraph"
395
- var Paragraph_ = __webpack_require__(94);
395
+ var Paragraph_ = __webpack_require__(97);
396
396
  var Paragraph_default = /*#__PURE__*/__webpack_require__.n(Paragraph_);
397
397
 
398
398
  // CONCATENATED MODULE: ./src/Markdown/renderers/MarkdownParagraph.tsx
@@ -534,7 +534,7 @@ module.exports = require("styled-components");
534
534
 
535
535
  /***/ }),
536
536
 
537
- /***/ 30:
537
+ /***/ 33:
538
538
  /***/ (function(module, exports) {
539
539
 
540
540
  module.exports = require("@splunk/react-ui/Link");
@@ -548,14 +548,14 @@ module.exports = require("@splunk/ui-utils/i18n");
548
548
 
549
549
  /***/ }),
550
550
 
551
- /***/ 55:
551
+ /***/ 58:
552
552
  /***/ (function(module, exports) {
553
553
 
554
554
  module.exports = require("@splunk/react-ui/Heading");
555
555
 
556
556
  /***/ }),
557
557
 
558
- /***/ 61:
558
+ /***/ 64:
559
559
  /***/ (function(module, exports) {
560
560
 
561
561
  module.exports = require("@splunk/react-ui/Anchor");
@@ -569,35 +569,35 @@ module.exports = require("@splunk/react-ui/Box");
569
569
 
570
570
  /***/ }),
571
571
 
572
- /***/ 80:
572
+ /***/ 82:
573
573
  /***/ (function(module, exports) {
574
574
 
575
575
  module.exports = require("@splunk/react-ui/List");
576
576
 
577
577
  /***/ }),
578
578
 
579
- /***/ 91:
579
+ /***/ 94:
580
580
  /***/ (function(module, exports) {
581
581
 
582
582
  module.exports = require("commonmark-react-renderer");
583
583
 
584
584
  /***/ }),
585
585
 
586
- /***/ 92:
586
+ /***/ 95:
587
587
  /***/ (function(module, exports) {
588
588
 
589
589
  module.exports = require("commonmark");
590
590
 
591
591
  /***/ }),
592
592
 
593
- /***/ 93:
593
+ /***/ 96:
594
594
  /***/ (function(module, exports) {
595
595
 
596
596
  module.exports = require("@splunk/react-ui/Code");
597
597
 
598
598
  /***/ }),
599
599
 
600
- /***/ 94:
600
+ /***/ 97:
601
601
  /***/ (function(module, exports) {
602
602
 
603
603
  module.exports = require("@splunk/react-ui/Paragraph");
package/Menu.js CHANGED
@@ -82,7 +82,7 @@ module.exports =
82
82
  /******/
83
83
  /******/
84
84
  /******/ // Load entry module and return exports
85
- /******/ return __webpack_require__(__webpack_require__.s = 112);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 117);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -101,7 +101,7 @@ module.exports = require("prop-types");
101
101
 
102
102
  /***/ }),
103
103
 
104
- /***/ 11:
104
+ /***/ 10:
105
105
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
106
106
 
107
107
  "use strict";
@@ -128,7 +128,7 @@ function updateReactRef(ref, current) {
128
128
 
129
129
  /***/ }),
130
130
 
131
- /***/ 112:
131
+ /***/ 117:
132
132
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
133
133
 
134
134
  "use strict";
@@ -151,18 +151,22 @@ var external_prop_types_ = __webpack_require__(1);
151
151
  var external_prop_types_default = /*#__PURE__*/__webpack_require__.n(external_prop_types_);
152
152
 
153
153
  // EXTERNAL MODULE: external "lodash/omit"
154
- var omit_ = __webpack_require__(45);
154
+ var omit_ = __webpack_require__(47);
155
155
  var omit_default = /*#__PURE__*/__webpack_require__.n(omit_);
156
156
 
157
157
  // EXTERNAL MODULE: external "@splunk/react-ui/Popover"
158
- var Popover_ = __webpack_require__(17);
158
+ var Popover_ = __webpack_require__(18);
159
159
 
160
160
  // EXTERNAL MODULE: external "@splunk/ui-utils/focus"
161
- var focus_ = __webpack_require__(26);
161
+ var focus_ = __webpack_require__(28);
162
162
 
163
163
  // EXTERNAL MODULE: external "@splunk/ui-utils/keyboard"
164
164
  var keyboard_ = __webpack_require__(9);
165
165
 
166
+ // EXTERNAL MODULE: external "@splunk/react-ui/useForceUpdate"
167
+ var useForceUpdate_ = __webpack_require__(98);
168
+ var useForceUpdate_default = /*#__PURE__*/__webpack_require__.n(useForceUpdate_);
169
+
166
170
  // EXTERNAL MODULE: external "styled-components"
167
171
  var external_styled_components_ = __webpack_require__(3);
168
172
  var external_styled_components_default = /*#__PURE__*/__webpack_require__.n(external_styled_components_);
@@ -233,11 +237,11 @@ Divider.filterConsecutive = true;
233
237
  Divider.filterLast = true;
234
238
  /* harmony default export */ var Menu_Divider = (Divider);
235
239
  // EXTERNAL MODULE: external "@splunk/react-ui/Heading"
236
- var Heading_ = __webpack_require__(55);
240
+ var Heading_ = __webpack_require__(58);
237
241
  var Heading_default = /*#__PURE__*/__webpack_require__.n(Heading_);
238
242
 
239
243
  // EXTERNAL MODULE: external "@splunk/themes/useSplunkTheme"
240
- var useSplunkTheme_ = __webpack_require__(40);
244
+ var useSplunkTheme_ = __webpack_require__(42);
241
245
  var useSplunkTheme_default = /*#__PURE__*/__webpack_require__.n(useSplunkTheme_);
242
246
 
243
247
  // CONCATENATED MODULE: ./src/Menu/HeadingStyles.ts
@@ -337,10 +341,10 @@ Heading.filterLast = true;
337
341
  var external_lodash_ = __webpack_require__(4);
338
342
 
339
343
  // EXTERNAL MODULE: ./src/icons/Check.tsx
340
- var Check = __webpack_require__(53);
344
+ var Check = __webpack_require__(56);
341
345
 
342
346
  // EXTERNAL MODULE: external "@splunk/react-icons/TriangleRightSmall"
343
- var TriangleRightSmall_ = __webpack_require__(95);
347
+ var TriangleRightSmall_ = __webpack_require__(99);
344
348
  var TriangleRightSmall_default = /*#__PURE__*/__webpack_require__.n(TriangleRightSmall_);
345
349
 
346
350
  // EXTERNAL MODULE: ./src/icons/ThemedIcon.tsx
@@ -375,14 +379,14 @@ function CaretRight(props) {
375
379
  }, props));
376
380
  }
377
381
  // EXTERNAL MODULE: ./src/icons/ChevronRight.tsx
378
- var ChevronRight = __webpack_require__(27);
382
+ var ChevronRight = __webpack_require__(29);
379
383
 
380
384
  // EXTERNAL MODULE: external "@splunk/react-ui/Clickable"
381
385
  var Clickable_ = __webpack_require__(12);
382
386
  var Clickable_default = /*#__PURE__*/__webpack_require__.n(Clickable_);
383
387
 
384
388
  // EXTERNAL MODULE: external "@splunk/react-ui/Switch"
385
- var Switch_ = __webpack_require__(70);
389
+ var Switch_ = __webpack_require__(72);
386
390
  var Switch_default = /*#__PURE__*/__webpack_require__.n(Switch_);
387
391
 
388
392
  // CONCATENATED MODULE: ./src/Menu/ItemStyles.ts
@@ -560,7 +564,7 @@ var StyledSubmenu = external_styled_components_default.a.span.withConfig({
560
564
  }));
561
565
 
562
566
  // EXTERNAL MODULE: ./src/utils/updateReactRef.ts
563
- var updateReactRef = __webpack_require__(11);
567
+ var updateReactRef = __webpack_require__(10);
564
568
 
565
569
  // CONCATENATED MODULE: ./src/Menu/Item.tsx
566
570
  function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
@@ -855,7 +859,7 @@ var ItemWithTheme = Object(themes_["withSplunkTheme"])(Item_Item);
855
859
  ItemWithTheme.propTypes = Item_Item.propTypes;
856
860
  /* harmony default export */ var Menu_Item = (ItemWithTheme);
857
861
  // EXTERNAL MODULE: external "@splunk/react-ui/Scroll"
858
- var Scroll_ = __webpack_require__(66);
862
+ var Scroll_ = __webpack_require__(68);
859
863
  var Scroll_default = /*#__PURE__*/__webpack_require__.n(Scroll_);
860
864
 
861
865
  // CONCATENATED MODULE: ./src/Menu/MenuStyles.ts
@@ -887,23 +891,11 @@ MenuStyles_Styled,
887
891
  MenuStyles_Styled, adjacentSiblingStyles);
888
892
 
889
893
  // EXTERNAL MODULE: ./src/utils/navigateList.ts
890
- var navigateList = __webpack_require__(42);
894
+ var navigateList = __webpack_require__(44);
891
895
 
892
896
  // CONCATENATED MODULE: ./src/Menu/Menu.tsx
893
897
  function Menu_extends() { Menu_extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return Menu_extends.apply(this, arguments); }
894
898
 
895
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
896
-
897
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
898
-
899
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
900
-
901
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
902
-
903
- function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
904
-
905
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
906
-
907
899
  function Menu_objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = Menu_objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
908
900
 
909
901
  function Menu_objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
@@ -921,6 +913,7 @@ function Menu_objectWithoutPropertiesLoose(source, excluded) { if (source == nul
921
913
 
922
914
 
923
915
 
916
+
924
917
  var Menu_propTypes = {
925
918
  children: external_prop_types_default.a.node,
926
919
 
@@ -950,6 +943,7 @@ function Menu(_ref) {
950
943
  var _useContext2 = Object(external_react_["useContext"])(Popover_["PopoverContext"]),
951
944
  retainFocusFromContext = _useContext2.retainFocus;
952
945
 
946
+ var forceUpdate = useForceUpdate_default()();
953
947
  var retainFocus = true;
954
948
 
955
949
  if (retainFocusProp != null) {
@@ -958,11 +952,7 @@ function Menu(_ref) {
958
952
  retainFocus = retainFocusFromContext;
959
953
  }
960
954
 
961
- var _useState = Object(external_react_["useState"])(0),
962
- _useState2 = _slicedToArray(_useState, 2),
963
- focusedItemKey = _useState2[0],
964
- setFocusedItemKey = _useState2[1];
965
-
955
+ var focusedItemKeyRef = external_react_default.a.useRef(0);
966
956
  var itemRefs = [];
967
957
  var itemKeyCounter = 0;
968
958
  var firstEnabledItemKey;
@@ -976,6 +966,7 @@ function Menu(_ref) {
976
966
  // can still set focus on the Menu items and this avoids the
977
967
  // whole page scrolling when that happens
978
968
  var key = Object(keyboard_["keycode"])(e.nativeEvent);
969
+ var focusedItemKey = focusedItemKeyRef.current;
979
970
  var itemToFocusRef; // the "retainFocus" checks here mimic the prior tab key functionality
980
971
 
981
972
  if (key === 'down' || retainFocus && Object(focus_["isTabKey"])(e)) {
@@ -1030,7 +1021,7 @@ function Menu(_ref) {
1030
1021
  var itemKey = data.itemKey;
1031
1022
 
1032
1023
  if (itemKey != null) {
1033
- setFocusedItemKey(itemKey);
1024
+ focusedItemKeyRef.current = itemKey;
1034
1025
  }
1035
1026
  };
1036
1027
 
@@ -1038,7 +1029,7 @@ function Menu(_ref) {
1038
1029
  firstEnabledItemKey = itemKeyCounter;
1039
1030
  }
1040
1031
 
1041
- if (focusedItemKey === itemKeyCounter && 'disabled' in item.props && item.props.disabled) {
1032
+ if (focusedItemKeyRef.current === itemKeyCounter && 'disabled' in item.props && item.props.disabled) {
1042
1033
  focusedItemKeyIsDisabled = true;
1043
1034
  }
1044
1035
 
@@ -1050,7 +1041,7 @@ function Menu(_ref) {
1050
1041
  }
1051
1042
  }
1052
1043
 
1053
- var tabIndex = !controlledExternally && focusedItemKey === itemKeyCounter ? undefined : -1;
1044
+ var tabIndex = !controlledExternally && focusedItemKeyRef.current === itemKeyCounter ? undefined : -1;
1054
1045
  acc.push( /*#__PURE__*/external_react_default.a.cloneElement(item, {
1055
1046
  itemKey: itemKeyCounter,
1056
1047
  onFocus: itemOnFocus,
@@ -1069,8 +1060,9 @@ function Menu(_ref) {
1069
1060
  return acc;
1070
1061
  }, []);
1071
1062
 
1072
- if (firstEnabledItemKey !== focusedItemKey && (!hasSelectedItems || hasSelectedEnabledItems) && focusedItemKeyIsDisabled && firstEnabledItemKey != null) {
1073
- setFocusedItemKey(firstEnabledItemKey);
1063
+ if (firstEnabledItemKey !== focusedItemKeyRef.current && (!hasSelectedItems || hasSelectedEnabledItems) && focusedItemKeyIsDisabled && firstEnabledItemKey != null) {
1064
+ focusedItemKeyRef.current = firstEnabledItemKey;
1065
+ forceUpdate();
1074
1066
  }
1075
1067
 
1076
1068
  var sharedProps = {
@@ -1108,7 +1100,7 @@ module.exports = require("@splunk/react-ui/Clickable");
1108
1100
 
1109
1101
  /***/ }),
1110
1102
 
1111
- /***/ 17:
1103
+ /***/ 18:
1112
1104
  /***/ (function(module, exports) {
1113
1105
 
1114
1106
  module.exports = require("@splunk/react-ui/Popover");
@@ -1122,21 +1114,21 @@ module.exports = require("react");
1122
1114
 
1123
1115
  /***/ }),
1124
1116
 
1125
- /***/ 26:
1117
+ /***/ 28:
1126
1118
  /***/ (function(module, exports) {
1127
1119
 
1128
1120
  module.exports = require("@splunk/ui-utils/focus");
1129
1121
 
1130
1122
  /***/ }),
1131
1123
 
1132
- /***/ 27:
1124
+ /***/ 29:
1133
1125
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1134
1126
 
1135
1127
  "use strict";
1136
1128
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ChevronRight; });
1137
1129
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
1138
1130
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1139
- /* harmony import */ var _splunk_react_icons_ChevronRight__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(33);
1131
+ /* harmony import */ var _splunk_react_icons_ChevronRight__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(35);
1140
1132
  /* harmony import */ var _splunk_react_icons_ChevronRight__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_splunk_react_icons_ChevronRight__WEBPACK_IMPORTED_MODULE_1__);
1141
1133
  /* harmony import */ var _ThemedIcon__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7);
1142
1134
  /* harmony import */ var _SVG__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6);
@@ -1186,7 +1178,7 @@ module.exports = require("styled-components");
1186
1178
 
1187
1179
  /***/ }),
1188
1180
 
1189
- /***/ 33:
1181
+ /***/ 35:
1190
1182
  /***/ (function(module, exports) {
1191
1183
 
1192
1184
  module.exports = require("@splunk/react-icons/ChevronRight");
@@ -1200,14 +1192,14 @@ module.exports = require("lodash");
1200
1192
 
1201
1193
  /***/ }),
1202
1194
 
1203
- /***/ 40:
1195
+ /***/ 42:
1204
1196
  /***/ (function(module, exports) {
1205
1197
 
1206
1198
  module.exports = require("@splunk/themes/useSplunkTheme");
1207
1199
 
1208
1200
  /***/ }),
1209
1201
 
1210
- /***/ 42:
1202
+ /***/ 44:
1211
1203
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1212
1204
 
1213
1205
  "use strict";
@@ -1246,28 +1238,28 @@ function getPrevListItem(refs, currentIndex, prevIndex) {
1246
1238
 
1247
1239
  /***/ }),
1248
1240
 
1249
- /***/ 45:
1241
+ /***/ 47:
1250
1242
  /***/ (function(module, exports) {
1251
1243
 
1252
1244
  module.exports = require("lodash/omit");
1253
1245
 
1254
1246
  /***/ }),
1255
1247
 
1256
- /***/ 48:
1248
+ /***/ 50:
1257
1249
  /***/ (function(module, exports) {
1258
1250
 
1259
1251
  module.exports = require("@splunk/react-icons/Check");
1260
1252
 
1261
1253
  /***/ }),
1262
1254
 
1263
- /***/ 53:
1255
+ /***/ 56:
1264
1256
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1265
1257
 
1266
1258
  "use strict";
1267
1259
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Check; });
1268
1260
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
1269
1261
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1270
- /* harmony import */ var _splunk_react_icons_Check__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(48);
1262
+ /* harmony import */ var _splunk_react_icons_Check__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(50);
1271
1263
  /* harmony import */ var _splunk_react_icons_Check__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_splunk_react_icons_Check__WEBPACK_IMPORTED_MODULE_1__);
1272
1264
  /* harmony import */ var _ThemedIcon__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7);
1273
1265
  /* harmony import */ var _SVG__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6);
@@ -1310,7 +1302,7 @@ function Check(props) {
1310
1302
 
1311
1303
  /***/ }),
1312
1304
 
1313
- /***/ 55:
1305
+ /***/ 58:
1314
1306
  /***/ (function(module, exports) {
1315
1307
 
1316
1308
  module.exports = require("@splunk/react-ui/Heading");
@@ -1342,7 +1334,7 @@ function SVG(props) {
1342
1334
 
1343
1335
  /***/ }),
1344
1336
 
1345
- /***/ 66:
1337
+ /***/ 68:
1346
1338
  /***/ (function(module, exports) {
1347
1339
 
1348
1340
  module.exports = require("@splunk/react-ui/Scroll");
@@ -1467,7 +1459,7 @@ Icon.defaultProps = defaultProps;
1467
1459
 
1468
1460
  /***/ }),
1469
1461
 
1470
- /***/ 70:
1462
+ /***/ 72:
1471
1463
  /***/ (function(module, exports) {
1472
1464
 
1473
1465
  module.exports = require("@splunk/react-ui/Switch");
@@ -1481,7 +1473,14 @@ module.exports = require("@splunk/ui-utils/keyboard");
1481
1473
 
1482
1474
  /***/ }),
1483
1475
 
1484
- /***/ 95:
1476
+ /***/ 98:
1477
+ /***/ (function(module, exports) {
1478
+
1479
+ module.exports = require("@splunk/react-ui/useForceUpdate");
1480
+
1481
+ /***/ }),
1482
+
1483
+ /***/ 99:
1485
1484
  /***/ (function(module, exports) {
1486
1485
 
1487
1486
  module.exports = require("@splunk/react-icons/TriangleRightSmall");