@splunk/react-ui 4.12.0 → 4.13.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 (99) hide show
  1. package/Accordion.js +4 -4
  2. package/Anchor.js +2 -2
  3. package/Animation.js +4 -4
  4. package/AnimationToggle.js +2 -2
  5. package/Box.js +2 -2
  6. package/Button.js +11 -11
  7. package/ButtonGroup.js +2 -2
  8. package/ButtonSimple.js +7 -7
  9. package/CHANGELOG.md +25 -0
  10. package/Calendar.js +33 -33
  11. package/Card.js +13 -13
  12. package/CardLayout.js +2 -2
  13. package/Chip.js +11 -11
  14. package/Clickable.js +7 -7
  15. package/CloseButton.js +11 -11
  16. package/Code.js +4 -4
  17. package/CollapsiblePanel.js +6 -6
  18. package/Color.js +21 -21
  19. package/ColumnLayout.js +4 -4
  20. package/ComboBox.js +4 -4
  21. package/Concertina.js +2 -2
  22. package/ControlGroup.js +4 -4
  23. package/Date.js +4 -4
  24. package/DefinitionList.js +2 -2
  25. package/Dropdown.js +6 -2
  26. package/EventListener.js +4 -4
  27. package/File.js +15 -15
  28. package/FormRows.js +4 -4
  29. package/Heading.js +3 -3
  30. package/Image.js +15 -15
  31. package/JSONTree.js +2 -2
  32. package/Layer.js +4 -4
  33. package/Link.js +9 -9
  34. package/List.js +2 -2
  35. package/Markdown.js +21 -21
  36. package/Menu.js +32 -33
  37. package/Message.js +22 -22
  38. package/MessageBar.js +15 -15
  39. package/Modal.js +4 -4
  40. package/ModalLayer.js +8 -8
  41. package/Monogram.js +2 -2
  42. package/Multiselect.js +112 -103
  43. package/Number.js +2 -2
  44. package/Paginator.js +41 -41
  45. package/Paragraph.js +2 -2
  46. package/Popover.js +18 -9
  47. package/Progress.js +4 -4
  48. package/RadioBar.js +2 -2
  49. package/RadioList.js +2 -2
  50. package/Resize.js +2 -2
  51. package/ResultsMenu.js +12 -12
  52. package/ScreenReaderContent.js +2 -2
  53. package/Scroll.js +6 -6
  54. package/ScrollContainerContext.js +2 -2
  55. package/Search.js +13 -13
  56. package/Select.js +109 -100
  57. package/SidePanel.js +4 -4
  58. package/Slider.js +4 -4
  59. package/SlidingPanels.js +6 -6
  60. package/SplitButton.js +511 -0
  61. package/StaticContent.js +2 -2
  62. package/StepBar.js +6 -6
  63. package/Switch.js +2 -2
  64. package/TabBar.js +2 -2
  65. package/TabLayout.js +4 -4
  66. package/Table.js +60 -43
  67. package/Text.js +105 -101
  68. package/TextArea.js +83 -72
  69. package/Tooltip.js +2 -2
  70. package/TransitionOpen.js +8 -8
  71. package/Typography.js +4 -4
  72. package/WaitSpinner.js +68 -2
  73. package/package.json +4 -3
  74. package/types/src/Button/Button.d.ts +1 -1
  75. package/types/src/Dropdown/Dropdown.d.ts +11 -3
  76. package/types/src/Popover/Popover.d.ts +5 -1
  77. package/types/src/Popover/getPlacement.d.ts +1 -1
  78. package/types/src/SplitButton/Item.d.ts +45 -0
  79. package/types/src/SplitButton/SplitButton.d.ts +41 -0
  80. package/types/src/SplitButton/docs/examples/Basic.d.ts +1 -0
  81. package/types/src/SplitButton/docs/examples/ChangeLabel.d.ts +1 -0
  82. package/types/src/SplitButton/docs/examples/Disabled.d.ts +1 -0
  83. package/types/src/SplitButton/docs/examples/prisma/Basic.d.ts +1 -0
  84. package/types/src/SplitButton/docs/examples/prisma/Disabled.d.ts +1 -0
  85. package/types/src/SplitButton/index.d.ts +2 -0
  86. package/types/src/Table/HeadCell.d.ts +4 -1
  87. package/types/src/Table/HeadDropdownCell.d.ts +10 -3
  88. package/types/src/Text/Text.d.ts +5 -1
  89. package/types/src/TextArea/TextArea.d.ts +5 -1
  90. package/types/src/WaitSpinner/WaitSpinner.d.ts +1 -1
  91. package/types/src/useForceUpdate/index.d.ts +2 -0
  92. package/types/src/useForceUpdate/useForceUpdate.d.ts +9 -0
  93. package/types/src/useIsSsr/index.d.ts +2 -0
  94. package/types/src/useIsSsr/useIsSsr.d.ts +8 -0
  95. package/useForceUpdate.js +151 -0
  96. package/useIsSsr.js +153 -0
  97. package/usePrevious.js +2 -2
  98. package/types/src/Text/docs/examples/prisma/Multiline.d.ts +0 -10
  99. package/types/src/Text/docs/examples/prisma/Search.d.ts +0 -10
package/SplitButton.js ADDED
@@ -0,0 +1,511 @@
1
+ module.exports =
2
+ /******/ (function(modules) { // webpackBootstrap
3
+ /******/ // The module cache
4
+ /******/ var installedModules = {};
5
+ /******/
6
+ /******/ // The require function
7
+ /******/ function __webpack_require__(moduleId) {
8
+ /******/
9
+ /******/ // Check if module is in cache
10
+ /******/ if(installedModules[moduleId]) {
11
+ /******/ return installedModules[moduleId].exports;
12
+ /******/ }
13
+ /******/ // Create a new module (and put it into the cache)
14
+ /******/ var module = installedModules[moduleId] = {
15
+ /******/ i: moduleId,
16
+ /******/ l: false,
17
+ /******/ exports: {}
18
+ /******/ };
19
+ /******/
20
+ /******/ // Execute the module function
21
+ /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
22
+ /******/
23
+ /******/ // Flag the module as loaded
24
+ /******/ module.l = true;
25
+ /******/
26
+ /******/ // Return the exports of the module
27
+ /******/ return module.exports;
28
+ /******/ }
29
+ /******/
30
+ /******/
31
+ /******/ // expose the modules object (__webpack_modules__)
32
+ /******/ __webpack_require__.m = modules;
33
+ /******/
34
+ /******/ // expose the module cache
35
+ /******/ __webpack_require__.c = installedModules;
36
+ /******/
37
+ /******/ // define getter function for harmony exports
38
+ /******/ __webpack_require__.d = function(exports, name, getter) {
39
+ /******/ if(!__webpack_require__.o(exports, name)) {
40
+ /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
41
+ /******/ }
42
+ /******/ };
43
+ /******/
44
+ /******/ // define __esModule on exports
45
+ /******/ __webpack_require__.r = function(exports) {
46
+ /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
47
+ /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
48
+ /******/ }
49
+ /******/ Object.defineProperty(exports, '__esModule', { value: true });
50
+ /******/ };
51
+ /******/
52
+ /******/ // create a fake namespace object
53
+ /******/ // mode & 1: value is a module id, require it
54
+ /******/ // mode & 2: merge all properties of value into the ns
55
+ /******/ // mode & 4: return value when already ns object
56
+ /******/ // mode & 8|1: behave like require
57
+ /******/ __webpack_require__.t = function(value, mode) {
58
+ /******/ if(mode & 1) value = __webpack_require__(value);
59
+ /******/ if(mode & 8) return value;
60
+ /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
61
+ /******/ var ns = Object.create(null);
62
+ /******/ __webpack_require__.r(ns);
63
+ /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
64
+ /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
65
+ /******/ return ns;
66
+ /******/ };
67
+ /******/
68
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
69
+ /******/ __webpack_require__.n = function(module) {
70
+ /******/ var getter = module && module.__esModule ?
71
+ /******/ function getDefault() { return module['default']; } :
72
+ /******/ function getModuleExports() { return module; };
73
+ /******/ __webpack_require__.d(getter, 'a', getter);
74
+ /******/ return getter;
75
+ /******/ };
76
+ /******/
77
+ /******/ // Object.prototype.hasOwnProperty.call
78
+ /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
79
+ /******/
80
+ /******/ // __webpack_public_path__
81
+ /******/ __webpack_require__.p = "";
82
+ /******/
83
+ /******/
84
+ /******/ // Load entry module and return exports
85
+ /******/ return __webpack_require__(__webpack_require__.s = 145);
86
+ /******/ })
87
+ /************************************************************************/
88
+ /******/ ({
89
+
90
+ /***/ 0:
91
+ /***/ (function(module, exports) {
92
+
93
+ module.exports = require("@splunk/themes");
94
+
95
+ /***/ }),
96
+
97
+ /***/ 1:
98
+ /***/ (function(module, exports) {
99
+
100
+ module.exports = require("prop-types");
101
+
102
+ /***/ }),
103
+
104
+ /***/ 13:
105
+ /***/ (function(module, exports) {
106
+
107
+ module.exports = require("@splunk/react-ui/Menu");
108
+
109
+ /***/ }),
110
+
111
+ /***/ 145:
112
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
113
+
114
+ "use strict";
115
+ // ESM COMPAT FLAG
116
+ __webpack_require__.r(__webpack_exports__);
117
+
118
+ // EXPORTS
119
+ __webpack_require__.d(__webpack_exports__, "default", function() { return /* reexport */ SplitButton_SplitButton; });
120
+ __webpack_require__.d(__webpack_exports__, "Item", function() { return /* reexport */ SplitButton_Item; });
121
+
122
+ // EXTERNAL MODULE: external "react"
123
+ var external_react_ = __webpack_require__(2);
124
+ var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
125
+
126
+ // EXTERNAL MODULE: external "prop-types"
127
+ var external_prop_types_ = __webpack_require__(1);
128
+ var external_prop_types_default = /*#__PURE__*/__webpack_require__.n(external_prop_types_);
129
+
130
+ // EXTERNAL MODULE: external "@splunk/react-icons/ChevronDown"
131
+ var ChevronDown_ = __webpack_require__(49);
132
+ var ChevronDown_default = /*#__PURE__*/__webpack_require__.n(ChevronDown_);
133
+
134
+ // EXTERNAL MODULE: external "@splunk/react-ui/Dropdown"
135
+ var Dropdown_ = __webpack_require__(18);
136
+ var Dropdown_default = /*#__PURE__*/__webpack_require__.n(Dropdown_);
137
+
138
+ // EXTERNAL MODULE: external "@splunk/react-ui/Menu"
139
+ var Menu_ = __webpack_require__(13);
140
+ var Menu_default = /*#__PURE__*/__webpack_require__.n(Menu_);
141
+
142
+ // EXTERNAL MODULE: external "@splunk/themes"
143
+ var themes_ = __webpack_require__(0);
144
+
145
+ // EXTERNAL MODULE: external "@splunk/ui-utils/i18n"
146
+ var i18n_ = __webpack_require__(5);
147
+
148
+ // EXTERNAL MODULE: external "styled-components"
149
+ var external_styled_components_ = __webpack_require__(3);
150
+ var external_styled_components_default = /*#__PURE__*/__webpack_require__.n(external_styled_components_);
151
+
152
+ // EXTERNAL MODULE: external "@splunk/react-ui/Button"
153
+ var Button_ = __webpack_require__(16);
154
+ var Button_default = /*#__PURE__*/__webpack_require__.n(Button_);
155
+
156
+ // EXTERNAL MODULE: external "@splunk/react-ui/Box"
157
+ var Box_ = __webpack_require__(8);
158
+ var Box_default = /*#__PURE__*/__webpack_require__.n(Box_);
159
+
160
+ // CONCATENATED MODULE: ./src/SplitButton/SplitButtonStyles.ts
161
+
162
+
163
+
164
+
165
+ var StyledButton = external_styled_components_default()(Button_default.a).withConfig({
166
+ displayName: "SplitButtonStyles__StyledButton",
167
+ componentId: "sc-9igsyh-0"
168
+ })(["", ""], Object(themes_["pick"])({
169
+ prisma: function prisma(_ref) {
170
+ var appearance = _ref.appearance;
171
+ return appearance === 'default' && Object(external_styled_components_["css"])(["&:first-child{border-right:1px solid ", ";}"], themes_["variables"].interactiveColorBorder);
172
+ }
173
+ })); // `shouldRenderSeparator` prevents this component from receiving an $apperance prop of default
174
+ // TS doesn't agree so adding styles below to style 'default' for completeness
175
+
176
+ var StyledSeparator = external_styled_components_default()(Box_default.a).withConfig({
177
+ displayName: "SplitButtonStyles__StyledSeparator",
178
+ componentId: "sc-9igsyh-1"
179
+ })(["width:", ";height:", ";background-color:", ";"], Object(themes_["pick"])({
180
+ prisma: Object(themes_["pickVariant"])('$appearance', {
181
+ primary: '2px',
182
+ destructive: '2px',
183
+ "default": '0px'
184
+ }),
185
+ enterprise: '1px'
186
+ }), themes_["variables"].inputHeight, Object(themes_["pickVariant"])('$appearance', {
187
+ primary: {
188
+ enterprise: themes_["variables"].white,
189
+ prisma: {
190
+ light: themes_["variables"].white,
191
+ dark: themes_["variables"].black
192
+ }
193
+ },
194
+ destructive: {
195
+ enterprise: {
196
+ light: themes_["variables"].white,
197
+ dark: themes_["variables"].black
198
+ },
199
+ prisma: {
200
+ light: themes_["variables"].white,
201
+ dark: themes_["variables"].black
202
+ }
203
+ },
204
+ "default": 'transparent'
205
+ }));
206
+ var StyledBox = external_styled_components_default()(Box_default.a).withConfig({
207
+ displayName: "SplitButtonStyles__StyledBox",
208
+ componentId: "sc-9igsyh-2"
209
+ })(["[data-inline] + &{margin-left:", ";}"], Object(themes_["pick"])({
210
+ enterprise: themes_["variables"].spacingHalf,
211
+ prisma: themes_["variables"].spacingSmall
212
+ }));
213
+
214
+ // EXTERNAL MODULE: external "lodash"
215
+ var external_lodash_ = __webpack_require__(4);
216
+
217
+ // CONCATENATED MODULE: ./src/SplitButton/Item.tsx
218
+ 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); }
219
+
220
+ 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); }
221
+
222
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _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; }
223
+
224
+ function _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; }
225
+
226
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
227
+
228
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
229
+
230
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
231
+
232
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
233
+
234
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
235
+
236
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
237
+
238
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
239
+
240
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
241
+
242
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
243
+
244
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
245
+
246
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
247
+
248
+
249
+
250
+
251
+
252
+
253
+ var propTypes = {
254
+ appearance: external_prop_types_default.a.oneOf(['default', 'primary', 'destructive']),
255
+ children: external_prop_types_default.a.node,
256
+ disabled: external_prop_types_default.a.bool,
257
+ isMain: external_prop_types_default.a.bool,
258
+ onClick: external_prop_types_default.a.func
259
+ };
260
+ var defaultProps = {
261
+ appearance: 'default'
262
+ };
263
+
264
+ /**
265
+ * An item within a `SplitButton`. This inherits from
266
+ * [PureComponent](https://reactjs.org/docs/react-api.html#reactpurecomponent)
267
+ * so any elements passed to it must also be pure.
268
+ */
269
+ var Item_Item = /*#__PURE__*/function (_PureComponent) {
270
+ _inherits(Item, _PureComponent);
271
+
272
+ var _super = _createSuper(Item);
273
+
274
+ function Item() {
275
+ var _this;
276
+
277
+ _classCallCheck(this, Item);
278
+
279
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
280
+ args[_key] = arguments[_key];
281
+ }
282
+
283
+ _this = _super.call.apply(_super, [this].concat(args));
284
+
285
+ _defineProperty(_assertThisInitialized(_this), "item", null);
286
+
287
+ _defineProperty(_assertThisInitialized(_this), "handleClick", function (e) {
288
+ var _this$props = _this.props,
289
+ disabled = _this$props.disabled,
290
+ onClick = _this$props.onClick;
291
+
292
+ if (!disabled) {
293
+ onClick === null || onClick === void 0 ? void 0 : onClick(e);
294
+ }
295
+ });
296
+
297
+ return _this;
298
+ }
299
+
300
+ _createClass(Item, [{
301
+ key: "scrollIntoViewIfNeeded",
302
+ value: function scrollIntoViewIfNeeded() {
303
+ var _this$item;
304
+
305
+ (_this$item = this.item) === null || _this$item === void 0 ? void 0 : _this$item.scrollIntoViewIfNeeded();
306
+ }
307
+ /**
308
+ * Place focus on the item.
309
+ */
310
+
311
+ }, {
312
+ key: "focus",
313
+ value: function focus() {
314
+ var _this$item2;
315
+
316
+ (_this$item2 = this.item) === null || _this$item2 === void 0 ? void 0 : _this$item2.focus();
317
+ }
318
+ }, {
319
+ key: "render",
320
+ value: function render() {
321
+ var _this2 = this;
322
+
323
+ var _this$props2 = this.props,
324
+ disabled = _this$props2.disabled,
325
+ isMain = _this$props2.isMain,
326
+ children = _this$props2.children,
327
+ appearance = _this$props2.appearance,
328
+ otherProps = _objectWithoutProperties(_this$props2, ["disabled", "isMain", "children", "appearance"]);
329
+
330
+ if (isMain) {
331
+ return /*#__PURE__*/external_react_default.a.createElement(StyledButton, _extends({
332
+ onClick: this.handleClick,
333
+ disabled: disabled,
334
+ append: true,
335
+ appearance: appearance
336
+ }, otherProps), children);
337
+ }
338
+
339
+ return /*#__PURE__*/external_react_default.a.createElement(Menu_default.a.Item, _extends({
340
+ ref: function ref(c) {
341
+ _this2.item = c;
342
+ },
343
+ onClick: this.handleClick,
344
+ disabled: disabled
345
+ }, Object(external_lodash_["omit"])(otherProps, ['role'])), children);
346
+ }
347
+ }]);
348
+
349
+ return Item;
350
+ }(external_react_["PureComponent"]);
351
+
352
+ _defineProperty(Item_Item, "propTypes", propTypes);
353
+
354
+ _defineProperty(Item_Item, "defaultProps", defaultProps);
355
+
356
+ /* harmony default export */ var SplitButton_Item = (Item_Item);
357
+ // CONCATENATED MODULE: ./src/SplitButton/SplitButton.tsx
358
+ function SplitButton_extends() { SplitButton_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 SplitButton_extends.apply(this, arguments); }
359
+
360
+ function SplitButton_objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = SplitButton_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; }
361
+
362
+ function SplitButton_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; }
363
+
364
+
365
+
366
+
367
+
368
+
369
+
370
+
371
+
372
+
373
+ var SplitButton_propTypes = {
374
+ appearance: external_prop_types_default.a.oneOf(['default', 'primary', 'destructive']),
375
+ children: external_prop_types_default.a.node,
376
+ disabled: external_prop_types_default.a.bool,
377
+ elementRef: external_prop_types_default.a.oneOfType([external_prop_types_default.a.func, external_prop_types_default.a.object]),
378
+ onClick: external_prop_types_default.a.func
379
+ };
380
+
381
+ function SplitButton(_ref) {
382
+ var _ref$appearance = _ref.appearance,
383
+ appearance = _ref$appearance === void 0 ? 'default' : _ref$appearance,
384
+ children = _ref.children,
385
+ disabled = _ref.disabled,
386
+ elementRef = _ref.elementRef,
387
+ onClick = _ref.onClick,
388
+ otherProps = SplitButton_objectWithoutProperties(_ref, ["appearance", "children", "disabled", "elementRef", "onClick"]);
389
+
390
+ // @docs-props-type SplitButtonPropsBase
391
+ var _useSplunkTheme = Object(themes_["useSplunkTheme"])(),
392
+ isPrisma = _useSplunkTheme.isPrisma,
393
+ isEnterprise = _useSplunkTheme.isEnterprise;
394
+
395
+ var filteredChildren = external_react_["Children"].toArray(children).filter(external_react_["isValidElement"]);
396
+ var indexOfMain = filteredChildren.findIndex(function (item) {
397
+ return item.props.isMain;
398
+ });
399
+
400
+ if (indexOfMain === -1) {
401
+ // didn't find it, so use first element
402
+ indexOfMain = 0;
403
+ }
404
+
405
+ var mainButton = /*#__PURE__*/Object(external_react_["cloneElement"])(filteredChildren[indexOfMain], {
406
+ isMain: true,
407
+ appearance: appearance,
408
+ disabled: disabled || filteredChildren[indexOfMain].props.disabled
409
+ }); // Remove mainButton from array of dropdown items
410
+
411
+ filteredChildren.splice(indexOfMain, 1);
412
+ var numDisabledItems = 0;
413
+ filteredChildren.forEach(function (item) {
414
+ if (item.props.disabled) {
415
+ numDisabledItems += 1;
416
+ }
417
+ });
418
+ var items = filteredChildren;
419
+ var toggle = /*#__PURE__*/external_react_default.a.createElement(StyledButton, {
420
+ prepend: true // disable toggle if all items within dropdown are disabled
421
+ ,
422
+ disabled: disabled || numDisabledItems === items.length,
423
+ appearance: appearance,
424
+ "data-test": "split-button-toggle",
425
+ "aria-label": Object(i18n_["_"])('Open more options'),
426
+ icon: /*#__PURE__*/external_react_default.a.createElement(ChevronDown_default.a, null)
427
+ });
428
+ var shouldRenderSeparator = isPrisma && appearance !== 'default' || isEnterprise && appearance === 'primary';
429
+ return /*#__PURE__*/external_react_default.a.createElement(StyledBox, SplitButton_extends({
430
+ "aria-label": Object(i18n_["_"])('Split button'),
431
+ "data-test": "split-button-container",
432
+ elementRef: elementRef,
433
+ inline: true,
434
+ flex: true,
435
+ role: "group",
436
+ onClick: disabled ? undefined : onClick
437
+ }, otherProps), mainButton, shouldRenderSeparator && /*#__PURE__*/external_react_default.a.createElement(StyledSeparator, {
438
+ inline: true,
439
+ $appearance: appearance
440
+ }), /*#__PURE__*/external_react_default.a.createElement(Dropdown_default.a, {
441
+ toggle: toggle
442
+ }, /*#__PURE__*/external_react_default.a.createElement(Menu_default.a, null, items)));
443
+ }
444
+
445
+ SplitButton.propTypes = SplitButton_propTypes;
446
+ SplitButton.Item = SplitButton_Item;
447
+ /* harmony default export */ var SplitButton_SplitButton = (SplitButton);
448
+
449
+ // CONCATENATED MODULE: ./src/SplitButton/index.ts
450
+
451
+
452
+
453
+ /***/ }),
454
+
455
+ /***/ 16:
456
+ /***/ (function(module, exports) {
457
+
458
+ module.exports = require("@splunk/react-ui/Button");
459
+
460
+ /***/ }),
461
+
462
+ /***/ 18:
463
+ /***/ (function(module, exports) {
464
+
465
+ module.exports = require("@splunk/react-ui/Dropdown");
466
+
467
+ /***/ }),
468
+
469
+ /***/ 2:
470
+ /***/ (function(module, exports) {
471
+
472
+ module.exports = require("react");
473
+
474
+ /***/ }),
475
+
476
+ /***/ 3:
477
+ /***/ (function(module, exports) {
478
+
479
+ module.exports = require("styled-components");
480
+
481
+ /***/ }),
482
+
483
+ /***/ 4:
484
+ /***/ (function(module, exports) {
485
+
486
+ module.exports = require("lodash");
487
+
488
+ /***/ }),
489
+
490
+ /***/ 49:
491
+ /***/ (function(module, exports) {
492
+
493
+ module.exports = require("@splunk/react-icons/ChevronDown");
494
+
495
+ /***/ }),
496
+
497
+ /***/ 5:
498
+ /***/ (function(module, exports) {
499
+
500
+ module.exports = require("@splunk/ui-utils/i18n");
501
+
502
+ /***/ }),
503
+
504
+ /***/ 8:
505
+ /***/ (function(module, exports) {
506
+
507
+ module.exports = require("@splunk/react-ui/Box");
508
+
509
+ /***/ })
510
+
511
+ /******/ });
package/StaticContent.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 = 172);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 175);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -101,7 +101,7 @@ module.exports = require("prop-types");
101
101
 
102
102
  /***/ }),
103
103
 
104
- /***/ 172:
104
+ /***/ 175:
105
105
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
106
106
 
107
107
  "use strict";
package/StepBar.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 = 118);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 120);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -108,7 +108,7 @@ module.exports = require("@splunk/ui-utils/id");
108
108
 
109
109
  /***/ }),
110
110
 
111
- /***/ 118:
111
+ /***/ 120:
112
112
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
113
113
 
114
114
  "use strict";
@@ -142,7 +142,7 @@ var external_styled_components_default = /*#__PURE__*/__webpack_require__.n(exte
142
142
  var themes_ = __webpack_require__(0);
143
143
 
144
144
  // EXTERNAL MODULE: external "@splunk/react-icons/Error"
145
- var Error_ = __webpack_require__(50);
145
+ var Error_ = __webpack_require__(51);
146
146
  var Error_default = /*#__PURE__*/__webpack_require__.n(Error_);
147
147
 
148
148
  // EXTERNAL MODULE: ./src/icons/ThemedIcon.tsx
@@ -179,7 +179,7 @@ function AlertFilled(props) {
179
179
  }, props));
180
180
  }
181
181
  // EXTERNAL MODULE: external "@splunk/react-icons/Success"
182
- var Success_ = __webpack_require__(51);
182
+ var Success_ = __webpack_require__(52);
183
183
  var Success_default = /*#__PURE__*/__webpack_require__.n(Success_);
184
184
 
185
185
  // CONCATENATED MODULE: ./src/icons/Success.tsx
@@ -511,14 +511,14 @@ module.exports = require("@splunk/themes/useSplunkTheme");
511
511
 
512
512
  /***/ }),
513
513
 
514
- /***/ 50:
514
+ /***/ 51:
515
515
  /***/ (function(module, exports) {
516
516
 
517
517
  module.exports = require("@splunk/react-icons/Error");
518
518
 
519
519
  /***/ }),
520
520
 
521
- /***/ 51:
521
+ /***/ 52:
522
522
  /***/ (function(module, exports) {
523
523
 
524
524
  module.exports = require("@splunk/react-icons/Success");
package/Switch.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 = 143);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 146);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -122,7 +122,7 @@ module.exports = require("@splunk/react-ui/ScreenReaderContent");
122
122
 
123
123
  /***/ }),
124
124
 
125
- /***/ 143:
125
+ /***/ 146:
126
126
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
127
127
 
128
128
  "use strict";
package/TabBar.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 = 127);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 129);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -142,7 +142,7 @@ module.exports = require("@splunk/react-ui/Clickable");
142
142
 
143
143
  /***/ }),
144
144
 
145
- /***/ 127:
145
+ /***/ 129:
146
146
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
147
147
 
148
148
  "use strict";
package/TabLayout.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 = 144);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 147);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -108,7 +108,7 @@ module.exports = require("@splunk/ui-utils/id");
108
108
 
109
109
  /***/ }),
110
110
 
111
- /***/ 144:
111
+ /***/ 147:
112
112
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
113
113
 
114
114
  "use strict";
@@ -134,7 +134,7 @@ var external_lodash_ = __webpack_require__(4);
134
134
  var id_ = __webpack_require__(10);
135
135
 
136
136
  // EXTERNAL MODULE: external "@splunk/react-ui/TabBar"
137
- var TabBar_ = __webpack_require__(82);
137
+ var TabBar_ = __webpack_require__(83);
138
138
  var TabBar_default = /*#__PURE__*/__webpack_require__.n(TabBar_);
139
139
 
140
140
  // EXTERNAL MODULE: external "styled-components"
@@ -405,7 +405,7 @@ module.exports = require("lodash");
405
405
 
406
406
  /***/ }),
407
407
 
408
- /***/ 82:
408
+ /***/ 83:
409
409
  /***/ (function(module, exports) {
410
410
 
411
411
  module.exports = require("@splunk/react-ui/TabBar");