@splunk/react-ui 4.3.0 → 4.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 (138) hide show
  1. package/Accordion.js +37 -21
  2. package/Anchor.js +2 -2
  3. package/Animation.js +2 -2
  4. package/AnimationToggle.js +2 -2
  5. package/Box.js +2 -2
  6. package/Button.js +36 -12
  7. package/ButtonGroup.js +27 -6
  8. package/ButtonSimple.js +6 -6
  9. package/CHANGELOG.md +57 -0
  10. package/Calendar.js +14 -14
  11. package/Card.js +51 -25
  12. package/CardLayout.js +31 -10
  13. package/Chip.js +77 -53
  14. package/Clickable.js +6 -6
  15. package/CloseButton.js +6 -6
  16. package/Code.js +1279 -1120
  17. package/CollapsiblePanel.js +6 -6
  18. package/Color.js +180 -209
  19. package/ColumnLayout.js +4 -4
  20. package/ComboBox.js +22 -17
  21. package/Concertina.js +56 -51
  22. package/ControlGroup.js +121 -32
  23. package/Date.js +62 -25
  24. package/DefinitionList.js +2 -2
  25. package/Dropdown.js +12 -12
  26. package/EventListener.js +168 -0
  27. package/FetchOptions.js +8 -8
  28. package/File.js +122 -96
  29. package/FormRows.js +66 -58
  30. package/Heading.js +2 -2
  31. package/Image.js +14 -14
  32. package/JSONTree.js +5 -5
  33. package/Layer.js +32 -20
  34. package/Link.js +8 -8
  35. package/List.js +2 -2
  36. package/Markdown.js +250 -88
  37. package/Menu.js +70 -64
  38. package/Message.js +18 -18
  39. package/Modal.js +70 -16
  40. package/ModalLayer.js +4 -4
  41. package/Monogram.js +12 -11
  42. package/Multiselect.js +124 -80
  43. package/Number.js +44 -34
  44. package/Paginator.js +10 -10
  45. package/Paragraph.js +2 -2
  46. package/Popover.js +54 -40
  47. package/Progress.js +8 -8
  48. package/RadioBar.js +45 -38
  49. package/RadioList.js +2 -2
  50. package/Resize.js +19 -15
  51. package/ResultsMenu.js +6 -6
  52. package/ScreenReaderContent.js +2 -2
  53. package/Scroll.js +25 -23
  54. package/ScrollContainerContext.js +5 -5
  55. package/Search.d.ts +2 -0
  56. package/Search.js +797 -0
  57. package/Select.js +85 -45
  58. package/SidePanel.js +6 -6
  59. package/Slider.js +34 -30
  60. package/SlidingPanels.js +6 -6
  61. package/StaticContent.js +2 -2
  62. package/StepBar.js +56 -52
  63. package/Switch.js +8 -8
  64. package/TabBar.js +126 -85
  65. package/TabLayout.js +4 -5
  66. package/Table.js +266 -155
  67. package/Text.js +486 -401
  68. package/Tooltip.js +11 -11
  69. package/TransitionOpen.js +11 -11
  70. package/WaitSpinner.js +3 -4
  71. package/package.json +5 -6
  72. package/types/src/Accordion/AccordionContext.d.ts +10 -0
  73. package/types/src/Accordion/Panel.d.ts +0 -9
  74. package/types/src/Button/Button.d.ts +4 -2
  75. package/types/src/ButtonGroup/ButtonGroupContext.d.ts +7 -0
  76. package/types/src/ButtonSimple/ButtonSimple.d.ts +5 -5
  77. package/types/src/Card/Card.d.ts +2 -0
  78. package/types/src/CardLayout/CardLayoutContext.d.ts +8 -0
  79. package/types/src/Color/Color.d.ts +2 -2
  80. package/types/src/Color/Swatch.d.ts +4 -15
  81. package/types/src/ComboBox/ComboBox.d.ts +4 -3
  82. package/types/src/Concertina/ConcertinaContext.d.ts +8 -0
  83. package/types/src/Concertina/Panel.d.ts +2 -4
  84. package/types/src/ControlGroup/ControlGroup.d.ts +11 -1
  85. package/types/src/ControlGroup/ControlGroupContext.d.ts +15 -0
  86. package/types/src/Date/Date.d.ts +6 -4
  87. package/types/src/EventListener/EventListener.d.ts +18 -0
  88. package/types/src/EventListener/index.d.ts +2 -0
  89. package/types/src/File/File.d.ts +6 -4
  90. package/types/src/File/FileContext.d.ts +9 -0
  91. package/types/src/File/Item.d.ts +5 -10
  92. package/types/src/FormRows/FormRows.d.ts +2 -2
  93. package/types/src/FormRows/FormRowsContext.d.ts +10 -0
  94. package/types/src/FormRows/Row.d.ts +5 -16
  95. package/types/src/Markdown/Markdown.d.ts +2 -0
  96. package/types/src/Markdown/renderers/MarkdownBlockquote.d.ts +14 -0
  97. package/types/src/Markdown/renderers/MarkdownCode.d.ts +15 -0
  98. package/types/src/Markdown/renderers/MarkdownCodeBlock.d.ts +16 -0
  99. package/types/src/Markdown/renderers/MarkdownHeading.d.ts +15 -0
  100. package/types/src/Markdown/renderers/MarkdownImage.d.ts +18 -0
  101. package/types/src/Markdown/renderers/MarkdownItem.d.ts +14 -0
  102. package/types/src/Markdown/renderers/MarkdownLink.d.ts +18 -0
  103. package/types/src/Markdown/renderers/MarkdownList.d.ts +26 -0
  104. package/types/src/Markdown/renderers/MarkdownParagraph.d.ts +14 -0
  105. package/types/src/Markdown/renderers/index.d.ts +10 -0
  106. package/types/src/Modal/Modal.d.ts +15 -3
  107. package/types/src/Monogram/Monogram.d.ts +5 -1
  108. package/types/src/Multiselect/Compact.d.ts +12 -4
  109. package/types/src/Multiselect/Multiselect.d.ts +14 -4
  110. package/types/src/Multiselect/Normal.d.ts +7 -2
  111. package/types/src/Number/Number.d.ts +11 -7
  112. package/types/src/Popover/Popover.d.ts +2 -2
  113. package/types/src/RadioBar/Option.d.ts +1 -15
  114. package/types/src/RadioBar/RadioBar.d.ts +2 -2
  115. package/types/src/RadioBar/RadioBarContext.d.ts +9 -0
  116. package/types/src/Scroll/Inner.d.ts +2 -2
  117. package/types/src/ScrollContainerContext/ScrollContainerContext.d.ts +4 -4
  118. package/types/src/Search/Option.d.ts +60 -0
  119. package/types/src/Search/Search.d.ts +97 -0
  120. package/types/src/Search/index.d.ts +2 -0
  121. package/types/src/Select/Select.d.ts +6 -2
  122. package/types/src/Select/SelectBase.d.ts +12 -5
  123. package/types/src/Slider/Slider.d.ts +2 -2
  124. package/types/src/StepBar/Step.d.ts +1 -13
  125. package/types/src/StepBar/StepBarContext.d.ts +8 -0
  126. package/types/src/TabBar/Tab.d.ts +5 -13
  127. package/types/src/TabBar/TabBarContext.d.ts +14 -0
  128. package/types/src/Table/Body.d.ts +1 -1
  129. package/types/src/Table/Head.d.ts +3 -1
  130. package/types/src/Table/HeadCell.d.ts +1 -1
  131. package/types/src/Table/HeadInner.d.ts +3 -3
  132. package/types/src/Table/Row.d.ts +10 -3
  133. package/types/src/Table/Table.d.ts +10 -5
  134. package/types/src/Text/Text.d.ts +33 -12
  135. package/types/src/icons/Sort.d.ts +3 -0
  136. package/types/src/usePrevious/index.d.ts +2 -0
  137. package/types/src/usePrevious/usePrevious.d.ts +12 -0
  138. package/usePrevious.js +137 -0
package/Accordion.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 = 128);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 127);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -101,7 +101,7 @@ module.exports = require("prop-types");
101
101
 
102
102
  /***/ }),
103
103
 
104
- /***/ 128:
104
+ /***/ 127:
105
105
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
106
106
 
107
107
  "use strict";
@@ -124,12 +124,17 @@ var external_prop_types_default = /*#__PURE__*/__webpack_require__.n(external_pr
124
124
  var external_lodash_ = __webpack_require__(4);
125
125
 
126
126
  // EXTERNAL MODULE: external "@splunk/react-ui/CollapsiblePanel"
127
- var CollapsiblePanel_ = __webpack_require__(72);
127
+ var CollapsiblePanel_ = __webpack_require__(74);
128
128
  var CollapsiblePanel_default = /*#__PURE__*/__webpack_require__.n(CollapsiblePanel_);
129
129
 
130
130
  // EXTERNAL MODULE: external "@splunk/themes"
131
131
  var themes_ = __webpack_require__(0);
132
132
 
133
+ // CONCATENATED MODULE: ./src/Accordion/AccordionContext.tsx
134
+
135
+ var AccordionContext = /*#__PURE__*/Object(external_react_["createContext"])({});
136
+ AccordionContext.displayName = 'Accordion';
137
+ /* harmony default export */ var Accordion_AccordionContext = (AccordionContext);
133
138
  // CONCATENATED MODULE: ./src/Accordion/Panel.tsx
134
139
  function _extends() { _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 _extends.apply(this, arguments); }
135
140
 
@@ -141,6 +146,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
141
146
 
142
147
 
143
148
 
149
+
144
150
  var propTypes = {
145
151
  description: external_prop_types_default.a.string,
146
152
  elementRef: external_prop_types_default.a.oneOfType([external_prop_types_default.a.func, external_prop_types_default.a.object]),
@@ -168,8 +174,7 @@ var getPaddingValue = function getPaddingValue(family, density) {
168
174
  */
169
175
  function Panel(_ref) {
170
176
  var panelId = _ref.panelId,
171
- _ref$inset = _ref.inset,
172
- inset = _ref$inset === void 0 ? false : _ref$inset,
177
+ inset = _ref.inset,
173
178
  otherProps = _objectWithoutProperties(_ref, ["panelId", "inset"]);
174
179
 
175
180
  // @docs-props-type AccordionPanelPropsBase
@@ -177,16 +182,27 @@ function Panel(_ref) {
177
182
  family = _useSplunkTheme.family,
178
183
  density = _useSplunkTheme.density;
179
184
 
185
+ var _useContext = Object(external_react_["useContext"])(AccordionContext),
186
+ onRequestCloseContext = _useContext.onRequestClose,
187
+ onRequestOpenContext = _useContext.onRequestOpen,
188
+ openPanelIdContext = _useContext.openPanelId,
189
+ insetContext = _useContext.inset;
190
+
191
+ var open = openPanelIdContext === panelId;
192
+ var finalInset = inset !== undefined ? inset : insetContext;
180
193
  return /*#__PURE__*/external_react_default.a.createElement(CollapsiblePanel_default.a, _extends({
181
194
  panelId: panelId,
182
195
  "data-test": "panel",
183
- innerBodyStyles: inset ? {
196
+ innerBodyStyles: finalInset ? {
184
197
  padding: getPaddingValue(family, density)
185
198
  } : undefined,
186
199
  "data-test-panel-id": panelId,
187
200
  style: {
188
201
  flexShrink: 1
189
- }
202
+ },
203
+ onRequestClose: onRequestCloseContext,
204
+ onRequestOpen: onRequestOpenContext,
205
+ open: open
190
206
  }, otherProps));
191
207
  }
192
208
 
@@ -247,6 +263,9 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
247
263
 
248
264
 
249
265
 
266
+
267
+ /** @public */
268
+
250
269
  var Accordion_propTypes = {
251
270
  children: external_prop_types_default.a.node,
252
271
  defaultOpenPanelId: external_prop_types_default.a.any,
@@ -328,28 +347,25 @@ var Accordion_Accordion = /*#__PURE__*/function (_Component) {
328
347
  }, {
329
348
  key: "render",
330
349
  value: function render() {
331
- var _this2 = this;
332
-
333
350
  var _this$props3 = this.props,
334
351
  children = _this$props3.children,
335
352
  elementRef = _this$props3.elementRef,
336
353
  inset = _this$props3.inset;
337
354
  var openPanelId = this.isControlled() ? this.props.openPanelId : this.state.openPanelId;
338
- var childrenCleaned = external_react_["Children"].toArray(children).filter(external_react_["isValidElement"]) // remove false, null, 0, etc
339
- .map(function (unknownChild) {
340
- var child = unknownChild;
341
- return /*#__PURE__*/Object(external_react_["cloneElement"])(child, {
342
- onRequestOpen: _this2.handleRequestOpen,
343
- onRequestClose: _this2.handleRequestClose,
344
- open: openPanelId === child.props.panelId,
345
- inset: child.props.inset === undefined ? inset : child.props.inset
346
- });
347
- });
355
+ var childrenCleaned = external_react_["Children"].toArray(children).filter(external_react_["isValidElement"]); // remove false, null, 0, etc
356
+
348
357
  return /*#__PURE__*/external_react_default.a.createElement(StyledBox, Accordion_extends({
349
358
  "data-test": "accordion",
350
359
  "data-test-open-panel-id": openPanelId,
351
360
  elementRef: elementRef
352
- }, Object(external_lodash_["omit"])(this.props, Object(external_lodash_["keys"])(Accordion.propTypes))), childrenCleaned);
361
+ }, Object(external_lodash_["omit"])(this.props, Object(external_lodash_["keys"])(Accordion.propTypes))), /*#__PURE__*/external_react_default.a.createElement(Accordion_AccordionContext.Provider, {
362
+ value: {
363
+ onRequestOpen: this.handleRequestOpen,
364
+ onRequestClose: this.handleRequestClose,
365
+ openPanelId: openPanelId,
366
+ inset: inset
367
+ }
368
+ }, childrenCleaned));
353
369
  }
354
370
  }]);
355
371
 
@@ -391,7 +407,7 @@ module.exports = require("lodash");
391
407
 
392
408
  /***/ }),
393
409
 
394
- /***/ 72:
410
+ /***/ 74:
395
411
  /***/ (function(module, exports) {
396
412
 
397
413
  module.exports = require("@splunk/react-ui/CollapsiblePanel");
package/Anchor.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 = 141);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 144);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -101,7 +101,7 @@ module.exports = require("prop-types");
101
101
 
102
102
  /***/ }),
103
103
 
104
- /***/ 141:
104
+ /***/ 144:
105
105
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
106
106
 
107
107
  "use strict";
package/Animation.js CHANGED
@@ -99,7 +99,7 @@ __webpack_require__.d(__webpack_exports__, "Spring", function() { return /* reex
99
99
  __webpack_require__.d(__webpack_exports__, "Transition", function() { return /* reexport */ Transition; });
100
100
 
101
101
  // EXTERNAL MODULE: external "react-spring"
102
- var external_react_spring_ = __webpack_require__(19);
102
+ var external_react_spring_ = __webpack_require__(18);
103
103
 
104
104
  // EXTERNAL MODULE: external "@splunk/react-ui/AnimationToggle"
105
105
  var AnimationToggle_ = __webpack_require__(34);
@@ -151,7 +151,7 @@ function Transition(_ref2) {
151
151
 
152
152
  /***/ }),
153
153
 
154
- /***/ 19:
154
+ /***/ 18:
155
155
  /***/ (function(module, exports) {
156
156
 
157
157
  module.exports = require("react-spring");
@@ -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 = 124);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 128);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -94,7 +94,7 @@ module.exports = require("prop-types");
94
94
 
95
95
  /***/ }),
96
96
 
97
- /***/ 124:
97
+ /***/ 128:
98
98
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
99
99
 
100
100
  "use strict";
package/Box.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 = 142);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 145);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -101,7 +101,7 @@ module.exports = require("prop-types");
101
101
 
102
102
  /***/ }),
103
103
 
104
- /***/ 142:
104
+ /***/ 145:
105
105
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
106
106
 
107
107
  "use strict";
package/Button.js CHANGED
@@ -126,16 +126,16 @@ var external_lodash_ = __webpack_require__(4);
126
126
  var i18n_ = __webpack_require__(5);
127
127
 
128
128
  // EXTERNAL MODULE: external "@splunk/react-ui/Dropdown"
129
- var Dropdown_ = __webpack_require__(18);
129
+ var Dropdown_ = __webpack_require__(19);
130
130
 
131
131
  // EXTERNAL MODULE: external "@splunk/ui-utils/style"
132
- var style_ = __webpack_require__(40);
132
+ var style_ = __webpack_require__(39);
133
133
 
134
134
  // EXTERNAL MODULE: ./src/icons/CaretDown.tsx
135
135
  var CaretDown = __webpack_require__(36);
136
136
 
137
137
  // EXTERNAL MODULE: external "@splunk/react-icons/External"
138
- var External_ = __webpack_require__(51);
138
+ var External_ = __webpack_require__(52);
139
139
  var External_default = /*#__PURE__*/__webpack_require__.n(External_);
140
140
 
141
141
  // EXTERNAL MODULE: ./src/icons/ThemedIcon.tsx
@@ -169,6 +169,9 @@ function External(props) {
169
169
  Prisma24: Prisma24
170
170
  }, props));
171
171
  }
172
+ // EXTERNAL MODULE: ./src/ButtonGroup/ButtonGroupContext.tsx
173
+ var ButtonGroupContext = __webpack_require__(53);
174
+
172
175
  // EXTERNAL MODULE: external "styled-components"
173
176
  var external_styled_components_ = __webpack_require__(3);
174
177
  var external_styled_components_default = /*#__PURE__*/__webpack_require__.n(external_styled_components_);
@@ -336,6 +339,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
336
339
 
337
340
 
338
341
 
342
+
339
343
  var propTypes = {
340
344
  action: external_prop_types_default.a.string,
341
345
  appearance: external_prop_types_default.a.oneOf(['default', 'secondary', 'primary', 'destructive', 'pill', 'toggle', 'flat']),
@@ -440,6 +444,9 @@ var Button_Button = /*#__PURE__*/function (_Component) {
440
444
  prepend = _this$props2.prepend,
441
445
  to = _this$props2.to,
442
446
  value = _this$props2.value;
447
+ var _this$context = this.context,
448
+ inlineContext = _this$context.inline,
449
+ roleContext = _this$context.role;
443
450
  var _this$props3 = this.props,
444
451
  children = _this$props3.children,
445
452
  label = _this$props3.label;
@@ -458,15 +465,16 @@ var Button_Button = /*#__PURE__*/function (_Component) {
458
465
  }, this.props, {
459
466
  className: Object(style_["toClassName"])(className, classNamePrivate),
460
467
  "data-action": action,
461
- "data-inline": inline || null,
468
+ "data-inline": inlineContext || inline || null,
462
469
  disabled: disabled,
463
470
  append: append,
464
471
  prepend: prepend,
465
- $inline: inline,
472
+ $inline: inlineContext || inline,
466
473
  $hasPrismaIcon: hasPrismaIcon,
467
474
  $isIconOnly: isIconOnly,
468
475
  $isMenu: isMenu,
469
- status: error ? 'error' : 'normal' // @ts-expect-error - this is problematic for two reasons:
476
+ status: error ? 'error' : 'normal',
477
+ role: roleContext || undefined // @ts-expect-error - this is problematic for two reasons:
470
478
  // * value is only a valid attribute on button (not on a)
471
479
  // * this component's value prop is of type any, which can result
472
480
  // in "[object Object]" attribute values
@@ -506,6 +514,8 @@ _defineProperty(Button_Button, "propTypes", propTypes);
506
514
 
507
515
  _defineProperty(Button_Button, "defaultProps", defaultProps);
508
516
 
517
+ _defineProperty(Button_Button, "contextType", ButtonGroupContext["a" /* ButtonGroupContext */]);
518
+
509
519
  _defineProperty(Button_Button, Dropdown_["legacyRefMode"], true);
510
520
 
511
521
  /* harmony default export */ var src_Button_Button = (Button_Button);
@@ -515,7 +525,7 @@ _defineProperty(Button_Button, Dropdown_["legacyRefMode"], true);
515
525
 
516
526
  /***/ }),
517
527
 
518
- /***/ 18:
528
+ /***/ 19:
519
529
  /***/ (function(module, exports) {
520
530
 
521
531
  module.exports = require("@splunk/react-ui/Dropdown");
@@ -581,17 +591,17 @@ module.exports = require("@splunk/react-icons/Caret");
581
591
 
582
592
  /***/ }),
583
593
 
584
- /***/ 4:
594
+ /***/ 39:
585
595
  /***/ (function(module, exports) {
586
596
 
587
- module.exports = require("lodash");
597
+ module.exports = require("@splunk/ui-utils/style");
588
598
 
589
599
  /***/ }),
590
600
 
591
- /***/ 40:
601
+ /***/ 4:
592
602
  /***/ (function(module, exports) {
593
603
 
594
- module.exports = require("@splunk/ui-utils/style");
604
+ module.exports = require("lodash");
595
605
 
596
606
  /***/ }),
597
607
 
@@ -609,13 +619,27 @@ module.exports = require("@splunk/ui-utils/i18n");
609
619
 
610
620
  /***/ }),
611
621
 
612
- /***/ 51:
622
+ /***/ 52:
613
623
  /***/ (function(module, exports) {
614
624
 
615
625
  module.exports = require("@splunk/react-icons/External");
616
626
 
617
627
  /***/ }),
618
628
 
629
+ /***/ 53:
630
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
631
+
632
+ "use strict";
633
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ButtonGroupContext; });
634
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
635
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
636
+
637
+ var ButtonGroupContext = /*#__PURE__*/Object(react__WEBPACK_IMPORTED_MODULE_0__["createContext"])({});
638
+ ButtonGroupContext.displayName = 'ButtonGroup';
639
+ /* harmony default export */ __webpack_exports__["b"] = (ButtonGroupContext);
640
+
641
+ /***/ }),
642
+
619
643
  /***/ 6:
620
644
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
621
645
 
package/ButtonGroup.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 = 153);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 146);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -101,7 +101,7 @@ module.exports = require("prop-types");
101
101
 
102
102
  /***/ }),
103
103
 
104
- /***/ 153:
104
+ /***/ 146:
105
105
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
106
106
 
107
107
  "use strict";
@@ -142,6 +142,9 @@ var StyledBox = external_styled_components_default()(Box_default.a).withConfig({
142
142
  prisma: themes_["variables"].spacingSmall
143
143
  }));
144
144
 
145
+ // EXTERNAL MODULE: ./src/ButtonGroup/ButtonGroupContext.tsx
146
+ var ButtonGroupContext = __webpack_require__(53);
147
+
145
148
  // CONCATENATED MODULE: ./src/ButtonGroup/ButtonGroup.tsx
146
149
  function _extends() { _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 _extends.apply(this, arguments); }
147
150
 
@@ -152,6 +155,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
152
155
 
153
156
 
154
157
 
158
+
155
159
  var propTypes = {
156
160
  children: external_prop_types_default.a.node,
157
161
  elementRef: external_prop_types_default.a.oneOfType([external_prop_types_default.a.func, external_prop_types_default.a.object]),
@@ -169,9 +173,7 @@ function ButtonGroup(_ref) {
169
173
  var length = _ref2.length;
170
174
  return /*#__PURE__*/Object(external_react_["cloneElement"])(item, {
171
175
  prepend: i > 0,
172
- append: i < length - 1,
173
- inline: false,
174
- role: item.props && item.props.role || 'menuitem'
176
+ append: i < length - 1
175
177
  });
176
178
  });
177
179
  return /*#__PURE__*/external_react_default.a.createElement(StyledBox, _extends({
@@ -179,7 +181,12 @@ function ButtonGroup(_ref) {
179
181
  flex: true,
180
182
  "data-test": "button-group",
181
183
  role: "menubar"
182
- }, otherProps), childrenCleaned);
184
+ }, otherProps), /*#__PURE__*/external_react_default.a.createElement(ButtonGroupContext["b" /* default */].Provider, {
185
+ value: {
186
+ inline: false,
187
+ role: 'menuitem'
188
+ }
189
+ }, childrenCleaned));
183
190
  }
184
191
 
185
192
  ButtonGroup.propTypes = propTypes;
@@ -203,6 +210,20 @@ module.exports = require("styled-components");
203
210
 
204
211
  /***/ }),
205
212
 
213
+ /***/ 53:
214
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
215
+
216
+ "use strict";
217
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ButtonGroupContext; });
218
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
219
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
220
+
221
+ var ButtonGroupContext = /*#__PURE__*/Object(react__WEBPACK_IMPORTED_MODULE_0__["createContext"])({});
222
+ ButtonGroupContext.displayName = 'ButtonGroup';
223
+ /* harmony default export */ __webpack_exports__["b"] = (ButtonGroupContext);
224
+
225
+ /***/ }),
226
+
206
227
  /***/ 8:
207
228
  /***/ (function(module, exports) {
208
229
 
package/ButtonSimple.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 = 125);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 129);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -101,14 +101,14 @@ module.exports = require("prop-types");
101
101
 
102
102
  /***/ }),
103
103
 
104
- /***/ 11:
104
+ /***/ 12:
105
105
  /***/ (function(module, exports) {
106
106
 
107
107
  module.exports = require("@splunk/react-ui/Clickable");
108
108
 
109
109
  /***/ }),
110
110
 
111
- /***/ 125:
111
+ /***/ 129:
112
112
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
113
113
 
114
114
  "use strict";
@@ -133,7 +133,7 @@ var i18n_ = __webpack_require__(5);
133
133
  var themes_ = __webpack_require__(0);
134
134
 
135
135
  // EXTERNAL MODULE: external "@splunk/react-ui/ScreenReaderContent"
136
- var ScreenReaderContent_ = __webpack_require__(14);
136
+ var ScreenReaderContent_ = __webpack_require__(15);
137
137
  var ScreenReaderContent_default = /*#__PURE__*/__webpack_require__.n(ScreenReaderContent_);
138
138
 
139
139
  // EXTERNAL MODULE: external "styled-components"
@@ -141,7 +141,7 @@ var external_styled_components_ = __webpack_require__(3);
141
141
  var external_styled_components_default = /*#__PURE__*/__webpack_require__.n(external_styled_components_);
142
142
 
143
143
  // EXTERNAL MODULE: external "@splunk/react-ui/Clickable"
144
- var Clickable_ = __webpack_require__(11);
144
+ var Clickable_ = __webpack_require__(12);
145
145
  var Clickable_default = /*#__PURE__*/__webpack_require__.n(Clickable_);
146
146
 
147
147
  // CONCATENATED MODULE: ./src/ButtonSimple/prismaStyles.ts
@@ -530,7 +530,7 @@ ButtonSimpleWithTheme.propTypes = ButtonSimple_ButtonSimple.propTypes;
530
530
 
531
531
  /***/ }),
532
532
 
533
- /***/ 14:
533
+ /***/ 15:
534
534
  /***/ (function(module, exports) {
535
535
 
536
536
  module.exports = require("@splunk/react-ui/ScreenReaderContent");
package/CHANGELOG.md CHANGED
@@ -1,6 +1,63 @@
1
1
  Change Log
2
2
  ============
3
3
 
4
+ 4.5.0 - February 23, 2022
5
+ ----------
6
+ New Features:
7
+ * `FormRows` can now be rendered without the Add/Remove buttons by omitting the `onRequestAdd` and `FormRows.Row`'s `onRequestRemove` props.
8
+ * `File` supports customizing the supports message via a new `supportsMessage` prop.
9
+ * `File`'s `help` prop is now supported in enterprise themes and when `fullscreen` is disabled.
10
+ * A new `Search` component has been added. This component behaves like `Text` with `appearance="search"`, but supports an options dropdown.
11
+ * `Modal` has a new `initialFocus` prop to customize where focus is placed when the modal opens: `first` (first focusable element in the modal), `container` (focus the modal itself), or a ref (SUI-2814).
12
+ * `ControlGroup`'s cloned props `id` and `inputId` are now cached when not provided (SUI-2817).
13
+ * `Color`'s `defaultPalette` is now extrapolated from 8 base colors by `tinycolor2` to form the rest of the palette (SUI-2466).
14
+ * Redundant `Table.HeadCell` indicators for sortable columns in Prisma themes have been replaced with the icons that matches the existing sort arrows. Note: column widths may be affected by this change (SUI-2547).
15
+ * `Table` now supports `rowExpansion="controlled"` to allow for customization of expanded row state (SUI-2649).
16
+
17
+ Bug Fixes:
18
+ * Updated `Chip` styles to grid to fix misalignment (SUI-2706).
19
+ * `Multiselect.Compact` now supports the `showSelectedValuesFirst` property to control if selected items are moved to the top of the list on `nextOpen` (default), `immediately`, or `never`.
20
+ * `TreeNode` would not render `:` separating key/value pairs in some cases, this has been fixed.
21
+ * `TabBar` no longer shifts upon selection in Prisma themes (SUI-2821).
22
+ * `Color` no longer throws warning when selecting a `null` value (SUI-2437).
23
+ * `Popover` no longer ignores the `pointTo` prop in Prisma themes (SUI-2750).
24
+ * `RadioBar` no longer has uneven padding when it is icon only (SUI-2782).
25
+ * `Message` Banner appearance info status is now white instead of grey (SUI-2811).
26
+ * `TabBar` keyboard navigation has been fixed to circle through tabs, skipping the disabled tab (SUI-2774).
27
+ * `Table.Row`'s `onClick` prop will no longer trigger when clicking on the row expansion button, the primary action button, or the secondary action button (SUI-2631).
28
+ * `Multiselect` now supports the `repositionMode` property to determine if and how the `Popover` repositions itself using `flip` (default) or `none` (SUI-1716).
29
+ * Disabled `Text` no longer has `[data-test="disabled-textbox"]` and should instead be selected as `[data-test="textbox"][disabled]` (SUI-2447).
30
+ * Updated `Select.Option` to fix check icon vertical alignment (SUI-2803).
31
+ * `Select` should now pass the correct value to `onFilterChange` when opened rather than an empty string (SUI-3234).
32
+ * `Multiselect` should now correctly clear the filter on open when `compact` is set (SUI-3234).
33
+ * `Combobox`, `Multiselect`, `Search` and `Select` will no longer lose reset their scroll position when new items are added (SUI-3233).
34
+ * `Color`'s text entry box will no longer overflow its container in the Prisma theme (SUI-3253).
35
+
36
+ Type Changes:
37
+ * `ScrollContainerContext`'s type replaced `"window"`with `window`, `Element` with `HTMLElement` and the default value changed to `window` (SUI-2839).
38
+
39
+ Deprecations:
40
+ * The `useSyntheticPlaceholder` prop in the `Text` & `Number` components has been deprecated (SUI-2583) and will be removed in the next major release (SUI-2820).
41
+ * The `xlarge` option in the `size` prop of the `Monogram` component has been deprecated (SUI-3221) and will be removed in the next major release (SUI-3222).
42
+
43
+ 4.4.1 - October 19, 2021
44
+ ----------
45
+ Bug Fixes:
46
+ * Select will start controlled if `value` is `undefined`, maintaining previous 4.x behavior (SUI-2772).
47
+
48
+ 4.4.0 - October 4, 2021
49
+ ----------
50
+ New Features:
51
+ * `Table` can fill its container and support resizable, auto-sized columns with the new `resizableFillLayout` in enterprise themes (SUI-2546).
52
+ * `Text` now supports `startAdornment` and `endAdornment` to allow for customization with icons and actions (SUI-2682).
53
+ * `Text` has an improved label with better context for its "Clear" button (SUI-2696).
54
+
55
+ Bug Fixes:
56
+ * Updated `prismjs` dependency to address vulnerability (SUI-2757).
57
+ * `Scroll` no longer requests undeclared dependency `@react-spring`.
58
+ * `Text` no longer loses focus after clearing text using the Clear button (SUI-2761).
59
+ * Updated `Chip` styles to grid to fix misalignment (SUI-2706).
60
+
4
61
  4.3.0 - September 8, 2021
5
62
  ----------
6
63
  New Features:
package/Calendar.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 = 109);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 113);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -108,7 +108,7 @@ module.exports = require("@splunk/ui-utils/id");
108
108
 
109
109
  /***/ }),
110
110
 
111
- /***/ 109:
111
+ /***/ 113:
112
112
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
113
113
 
114
114
  "use strict";
@@ -392,18 +392,18 @@ function DateTable(_ref2) {
392
392
  DateTable.propTypes = DateTable_propTypes;
393
393
  /* harmony default export */ var Calendar_DateTable = (DateTable);
394
394
  // EXTERNAL MODULE: external "lodash/omit"
395
- var omit_ = __webpack_require__(32);
395
+ var omit_ = __webpack_require__(42);
396
396
  var omit_default = /*#__PURE__*/__webpack_require__.n(omit_);
397
397
 
398
398
  // EXTERNAL MODULE: external "@splunk/react-ui/Button"
399
- var Button_ = __webpack_require__(16);
399
+ var Button_ = __webpack_require__(17);
400
400
  var Button_default = /*#__PURE__*/__webpack_require__.n(Button_);
401
401
 
402
402
  // EXTERNAL MODULE: external "@splunk/ui-utils/i18n"
403
403
  var i18n_ = __webpack_require__(5);
404
404
 
405
405
  // EXTERNAL MODULE: ./src/icons/ChevronLeft.tsx
406
- var ChevronLeft = __webpack_require__(52);
406
+ var ChevronLeft = __webpack_require__(54);
407
407
 
408
408
  // EXTERNAL MODULE: ./src/icons/ChevronRight.tsx
409
409
  var ChevronRight = __webpack_require__(27);
@@ -524,7 +524,7 @@ var MonthHeader_MonthHeader = /*#__PURE__*/function (_Component) {
524
524
  splunkTheme = _this$props2.splunkTheme,
525
525
  otherProps = MonthHeader_objectWithoutProperties(_this$props2, ["headingId", "locale", "value", "splunkTheme"]);
526
526
 
527
- var isPrisma = splunkTheme.family === 'prisma';
527
+ var isPrisma = splunkTheme.isPrisma;
528
528
  var date = external_moment_default()(value, 'YYYY-MM-DD', locale);
529
529
  var monthYear = date.format(MonthHeader.getMonthYearFormat(locale, isPrisma));
530
530
  var buttonStyles = {
@@ -786,7 +786,7 @@ Calendar_defineProperty(Calendar_Calendar, "defaultProps", Calendar_defaultProps
786
786
 
787
787
  /***/ }),
788
788
 
789
- /***/ 16:
789
+ /***/ 17:
790
790
  /***/ (function(module, exports) {
791
791
 
792
792
  module.exports = require("@splunk/react-ui/Button");
@@ -871,17 +871,17 @@ module.exports = require("@splunk/react-icons/ChevronRight");
871
871
 
872
872
  /***/ }),
873
873
 
874
- /***/ 32:
874
+ /***/ 4:
875
875
  /***/ (function(module, exports) {
876
876
 
877
- module.exports = require("lodash/omit");
877
+ module.exports = require("lodash");
878
878
 
879
879
  /***/ }),
880
880
 
881
- /***/ 4:
881
+ /***/ 42:
882
882
  /***/ (function(module, exports) {
883
883
 
884
- module.exports = require("lodash");
884
+ module.exports = require("lodash/omit");
885
885
 
886
886
  /***/ }),
887
887
 
@@ -892,14 +892,14 @@ module.exports = require("@splunk/ui-utils/i18n");
892
892
 
893
893
  /***/ }),
894
894
 
895
- /***/ 52:
895
+ /***/ 54:
896
896
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
897
897
 
898
898
  "use strict";
899
899
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ChevronLeft; });
900
900
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
901
901
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
902
- /* harmony import */ var _splunk_react_icons_ChevronLeft__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(53);
902
+ /* harmony import */ var _splunk_react_icons_ChevronLeft__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(55);
903
903
  /* harmony import */ var _splunk_react_icons_ChevronLeft__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_splunk_react_icons_ChevronLeft__WEBPACK_IMPORTED_MODULE_1__);
904
904
  /* harmony import */ var _ThemedIcon__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7);
905
905
  /* harmony import */ var _SVG__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6);
@@ -942,7 +942,7 @@ function ChevronLeft(props) {
942
942
 
943
943
  /***/ }),
944
944
 
945
- /***/ 53:
945
+ /***/ 55:
946
946
  /***/ (function(module, exports) {
947
947
 
948
948
  module.exports = require("@splunk/react-icons/ChevronLeft");