@splunk/react-ui 4.13.0 → 4.15.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 (144) hide show
  1. package/.dockerignore +2 -0
  2. package/Accordion.js +41 -16
  3. package/Anchor.js +9 -9
  4. package/Animation.js +6 -6
  5. package/AnimationToggle.js +2 -2
  6. package/Box.js +9 -9
  7. package/Button.js +47 -46
  8. package/ButtonGroup.js +9 -9
  9. package/ButtonSimple.js +14 -14
  10. package/CHANGELOG.md +46 -1
  11. package/Calendar.js +460 -147
  12. package/Card.js +85 -83
  13. package/CardLayout.js +9 -9
  14. package/Chip.js +23 -23
  15. package/Clickable.js +39 -15
  16. package/CloseButton.js +23 -23
  17. package/Code.js +484 -436
  18. package/CollapsiblePanel.js +64 -35
  19. package/Color.js +298 -188
  20. package/ColumnLayout.js +18 -17
  21. package/ComboBox.js +81 -32
  22. package/Concertina.js +89 -28
  23. package/ControlGroup.js +85 -27
  24. package/Date.js +134 -58
  25. package/DefinitionList.js +14 -8
  26. package/Divider.d.ts +2 -0
  27. package/Divider.js +194 -0
  28. package/Dockerfile.enterprise.storybook +7 -0
  29. package/Dockerfile.prisma.storybook +7 -0
  30. package/Dockerfile.visual +10 -0
  31. package/Dropdown.js +79 -19
  32. package/EventListener.js +17 -17
  33. package/File.js +96 -43
  34. package/FormRows.js +40 -39
  35. package/Heading.js +83 -55
  36. package/Image.js +67 -42
  37. package/JSONTree.js +106 -21
  38. package/Layer.js +130 -28
  39. package/Link.js +17 -17
  40. package/List.js +3 -3
  41. package/Markdown.js +71 -65
  42. package/Menu.js +155 -121
  43. package/Message.js +135 -135
  44. package/MessageBar.js +136 -136
  45. package/Modal.js +99 -48
  46. package/ModalLayer.js +15 -15
  47. package/Monogram.js +18 -17
  48. package/Multiselect.js +2788 -2310
  49. package/Number.js +76 -37
  50. package/Paginator.js +99 -86
  51. package/Paragraph.js +10 -10
  52. package/Popover.js +343 -48
  53. package/Progress.js +23 -22
  54. package/RadioBar.js +32 -14
  55. package/RadioList.js +17 -11
  56. package/Resize.js +34 -21
  57. package/ResultsMenu.js +44 -31
  58. package/ScreenReaderContent.js +9 -9
  59. package/Scroll.js +52 -27
  60. package/ScrollContainerContext.js +157 -6
  61. package/Search.js +71 -34
  62. package/Select.js +347 -69
  63. package/SidePanel.js +37 -24
  64. package/Slider.js +50 -20
  65. package/SlidingPanels.js +56 -18
  66. package/SplitButton.js +27 -26
  67. package/StaticContent.js +9 -9
  68. package/StepBar.js +22 -22
  69. package/Switch.js +18 -13
  70. package/TabBar.js +28 -28
  71. package/TabLayout.js +43 -18
  72. package/Table.js +549 -158
  73. package/Text.js +93 -50
  74. package/TextArea.d.ts +2 -0
  75. package/TextArea.js +134 -56
  76. package/Tooltip.js +246 -63
  77. package/TransitionOpen.js +63 -26
  78. package/Typography.d.ts +2 -0
  79. package/Typography.js +17 -16
  80. package/WaitSpinner.js +15 -81
  81. package/docker-compose.yml +42 -0
  82. package/package.json +20 -20
  83. package/test-runner-jest.config.js +23 -5
  84. package/types/src/Accordion/AccordionContext.d.ts +1 -0
  85. package/types/src/Button/docs/examples/Selected.d.ts +2 -2
  86. package/types/src/ButtonGroup/ButtonGroupContext.d.ts +1 -0
  87. package/types/src/Calendar/Calendar.d.ts +17 -2
  88. package/types/src/Calendar/DateTable.d.ts +7 -3
  89. package/types/src/Calendar/Day.d.ts +14 -5
  90. package/types/src/CardLayout/CardLayoutContext.d.ts +1 -0
  91. package/types/src/CollapsiblePanel/CollapsiblePanel.d.ts +7 -3
  92. package/types/src/Concertina/ConcertinaContext.d.ts +1 -0
  93. package/types/src/ControlGroup/ControlGroup.d.ts +15 -8
  94. package/types/src/ControlGroup/docs/examples/HelpWithErrorText.d.ts +2 -0
  95. package/types/src/ControlGroup/docs/examples/Required.d.ts +2 -0
  96. package/types/src/Date/Date.d.ts +17 -8
  97. package/types/src/Date/docs/examples/CustomDate.d.ts +2 -2
  98. package/types/src/Date/docs/examples/Disabled.d.ts +2 -2
  99. package/types/src/Date/docs/examples/prisma/WithoutCalendar.d.ts +2 -0
  100. package/types/src/Divider/Divider.d.ts +20 -0
  101. package/types/src/Divider/docs/examples/AriaHidden.d.ts +2 -0
  102. package/types/src/Divider/docs/examples/Basic.d.ts +2 -0
  103. package/types/src/Divider/docs/examples/CustomStyle.d.ts +2 -0
  104. package/types/src/Divider/docs/examples/Vertical.d.ts +2 -0
  105. package/types/src/Divider/index.d.ts +1 -0
  106. package/types/src/File/File.d.ts +4 -2
  107. package/types/src/File/FileContext.d.ts +1 -0
  108. package/types/src/FormRows/FormRowsContext.d.ts +1 -0
  109. package/types/src/Markdown/renderers/MarkdownLink.d.ts +1 -1
  110. package/types/src/Menu/MenuContext.d.ts +1 -0
  111. package/types/src/Modal/Modal.d.ts +7 -3
  112. package/types/src/Modal/ModalContext.d.ts +2 -0
  113. package/types/src/Multiselect/Compact.d.ts +10 -1
  114. package/types/src/Multiselect/Multiselect.d.ts +12 -1
  115. package/types/src/Multiselect/Normal.d.ts +2 -0
  116. package/types/src/Number/Number.d.ts +5 -1
  117. package/types/src/Popover/Popover.d.ts +25 -5
  118. package/types/src/Popover/PopoverContext.d.ts +1 -0
  119. package/types/src/RadioBar/RadioBar.d.ts +5 -3
  120. package/types/src/RadioBar/RadioBarContext.d.ts +1 -0
  121. package/types/src/RadioList/RadioList.d.ts +5 -1
  122. package/types/src/RadioList/RadioListContext.d.ts +1 -0
  123. package/types/src/Select/SelectBase.d.ts +2 -0
  124. package/types/src/Slider/Slider.d.ts +5 -3
  125. package/types/src/SplitButton/docs/examples/Disabled.d.ts +1 -1
  126. package/types/src/SplitButton/docs/examples/prisma/Disabled.d.ts +1 -1
  127. package/types/src/StepBar/StepBarContext.d.ts +1 -0
  128. package/types/src/Switch/Switch.d.ts +2 -0
  129. package/types/src/TabBar/TabBarContext.d.ts +1 -0
  130. package/types/src/Table/Head.d.ts +2 -0
  131. package/types/src/Table/TableContext.d.ts +1 -0
  132. package/types/src/Table/docs/examples/FilterColumnValues.d.ts +14 -0
  133. package/types/src/Text/Text.d.ts +5 -3
  134. package/types/src/TextArea/TextArea.d.ts +5 -3
  135. package/types/src/Tooltip/Tooltip.d.ts +26 -9
  136. package/types/src/TransitionOpen/TransitionOpen.d.ts +7 -3
  137. package/types/src/WaitSpinner/WaitSpinner.d.ts +1 -1
  138. package/types/src/useForceUpdate/useForceUpdate.d.ts +1 -0
  139. package/types/src/useKeyPress/index.d.ts +37 -0
  140. package/useForceUpdate.js +9 -9
  141. package/{useIsSsr.js → useKeyPress.js} +56 -49
  142. package/usePrevious.js +9 -9
  143. package/types/src/useIsSsr/index.d.ts +0 -2
  144. package/types/src/useIsSsr/useIsSsr.d.ts +0 -8
package/TransitionOpen.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 = 176);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 229);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -101,7 +101,21 @@ module.exports = require("prop-types");
101
101
 
102
102
  /***/ }),
103
103
 
104
- /***/ 176:
104
+ /***/ 10:
105
+ /***/ (function(module, exports) {
106
+
107
+ module.exports = require("lodash/keys");
108
+
109
+ /***/ }),
110
+
111
+ /***/ 2:
112
+ /***/ (function(module, exports) {
113
+
114
+ module.exports = require("react");
115
+
116
+ /***/ }),
117
+
118
+ /***/ 229:
105
119
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
106
120
 
107
121
  "use strict";
@@ -119,20 +133,25 @@ var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_)
119
133
  var external_prop_types_ = __webpack_require__(1);
120
134
  var external_prop_types_default = /*#__PURE__*/__webpack_require__.n(external_prop_types_);
121
135
 
122
- // EXTERNAL MODULE: external "lodash"
123
- var external_lodash_ = __webpack_require__(4);
136
+ // EXTERNAL MODULE: external "lodash/keys"
137
+ var keys_ = __webpack_require__(10);
138
+ var keys_default = /*#__PURE__*/__webpack_require__.n(keys_);
139
+
140
+ // EXTERNAL MODULE: external "lodash/omit"
141
+ var omit_ = __webpack_require__(5);
142
+ var omit_default = /*#__PURE__*/__webpack_require__.n(omit_);
124
143
 
125
144
  // EXTERNAL MODULE: external "@splunk/react-ui/Animation"
126
- var Animation_ = __webpack_require__(31);
145
+ var Animation_ = __webpack_require__(43);
127
146
 
128
147
  // EXTERNAL MODULE: external "@splunk/ui-utils/focus"
129
- var focus_ = __webpack_require__(26);
148
+ var focus_ = __webpack_require__(35);
130
149
 
131
150
  // EXTERNAL MODULE: external "@splunk/ui-utils/style"
132
- var style_ = __webpack_require__(32);
151
+ var style_ = __webpack_require__(40);
133
152
 
134
153
  // EXTERNAL MODULE: external "react-spring"
135
- var external_react_spring_ = __webpack_require__(19);
154
+ var external_react_spring_ = __webpack_require__(26);
136
155
 
137
156
  // EXTERNAL MODULE: external "styled-components"
138
157
  var external_styled_components_ = __webpack_require__(3);
@@ -195,6 +214,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
195
214
 
196
215
 
197
216
 
217
+
198
218
  var propTypes = {
199
219
  animation: external_prop_types_default.a.oneOf(['slideFromTop', 'slideFromRight', 'slideFromBottom', 'slideFromLeft', 'expandHeight', 'expandWidth', 'none']),
200
220
  animateOnMount: external_prop_types_default.a.bool,
@@ -208,6 +228,7 @@ var propTypes = {
208
228
  outerClassName: external_prop_types_default.a.string,
209
229
  outerId: external_prop_types_default.a.string,
210
230
  outerStyle: external_prop_types_default.a.object,
231
+ renderChildrenWhenCollapsed: external_prop_types_default.a.bool,
211
232
  retainFocus: external_prop_types_default.a.bool,
212
233
  takeFocus: external_prop_types_default.a.bool
213
234
  };
@@ -217,6 +238,7 @@ var defaultProps = {
217
238
  innerStyle: {},
218
239
  open: false,
219
240
  outerStyle: {},
241
+ renderChildrenWhenCollapsed: false,
220
242
  retainFocus: false,
221
243
  takeFocus: false
222
244
  };
@@ -307,7 +329,8 @@ var TransitionOpen_TransitionOpen = /*#__PURE__*/function (_Component) {
307
329
  open = _this$props2.open,
308
330
  outerClassName = _this$props2.outerClassName,
309
331
  outerId = _this$props2.outerId,
310
- outerStyle = _this$props2.outerStyle;
332
+ outerStyle = _this$props2.outerStyle,
333
+ renderChildrenWhenCollapsed = _this$props2.renderChildrenWhenCollapsed;
311
334
  var animating = _this.state.animating;
312
335
  var dimension;
313
336
 
@@ -330,6 +353,27 @@ var TransitionOpen_TransitionOpen = /*#__PURE__*/function (_Component) {
330
353
 
331
354
  }
332
355
  }
356
+
357
+ if (!open && !animating && renderChildrenWhenCollapsed) {
358
+ return /*#__PURE__*/external_react_default.a.createElement(Styled, {
359
+ $hideOverflow: false,
360
+ className: Object(style_["toClassName"])(className, outerClassName),
361
+ style: _objectSpread(_objectSpread({}, outerStyle), dimension && _defineProperty({}, dimension, value)),
362
+ id: outerId
363
+ }, /*#__PURE__*/external_react_default.a.createElement(StyledInner, _extends({
364
+ "data-test": "transition-open"
365
+ }, omit_default()(_this.props, keys_default()(TransitionOpen.propTypes)), {
366
+ ref: _this.handleMount,
367
+ tabIndex: -1,
368
+ className: innerClassName,
369
+ id: id,
370
+ onKeyDown: _this.props.retainFocus ? _this.handleTab : undefined,
371
+ style: _objectSpread(_objectSpread({}, innerStyle), {}, {
372
+ transform: transform,
373
+ display: 'none'
374
+ })
375
+ }), children));
376
+ }
333
377
  /* eslint-disable jsx-a11y/no-static-element-interactions */
334
378
 
335
379
 
@@ -340,7 +384,7 @@ var TransitionOpen_TransitionOpen = /*#__PURE__*/function (_Component) {
340
384
  id: outerId
341
385
  }, (open || animating) && /*#__PURE__*/external_react_default.a.createElement(StyledInner, _extends({
342
386
  "data-test": "transition-open"
343
- }, Object(external_lodash_["omit"])(_this.props, Object(external_lodash_["keys"])(TransitionOpen.propTypes)), {
387
+ }, omit_default()(_this.props, keys_default()(TransitionOpen.propTypes)), {
344
388
  ref: _this.handleMount,
345
389
  tabIndex: -1,
346
390
  className: innerClassName,
@@ -466,52 +510,45 @@ _defineProperty(TransitionOpen_TransitionOpen, "getDerivedStateFromProps", funct
466
510
 
467
511
  /***/ }),
468
512
 
469
- /***/ 19:
513
+ /***/ 26:
470
514
  /***/ (function(module, exports) {
471
515
 
472
516
  module.exports = require("react-spring");
473
517
 
474
518
  /***/ }),
475
519
 
476
- /***/ 2:
520
+ /***/ 3:
477
521
  /***/ (function(module, exports) {
478
522
 
479
- module.exports = require("react");
523
+ module.exports = require("styled-components");
480
524
 
481
525
  /***/ }),
482
526
 
483
- /***/ 26:
527
+ /***/ 35:
484
528
  /***/ (function(module, exports) {
485
529
 
486
530
  module.exports = require("@splunk/ui-utils/focus");
487
531
 
488
532
  /***/ }),
489
533
 
490
- /***/ 3:
534
+ /***/ 40:
491
535
  /***/ (function(module, exports) {
492
536
 
493
- module.exports = require("styled-components");
537
+ module.exports = require("@splunk/ui-utils/style");
494
538
 
495
539
  /***/ }),
496
540
 
497
- /***/ 31:
541
+ /***/ 43:
498
542
  /***/ (function(module, exports) {
499
543
 
500
544
  module.exports = require("@splunk/react-ui/Animation");
501
545
 
502
546
  /***/ }),
503
547
 
504
- /***/ 32:
505
- /***/ (function(module, exports) {
506
-
507
- module.exports = require("@splunk/ui-utils/style");
508
-
509
- /***/ }),
510
-
511
- /***/ 4:
548
+ /***/ 5:
512
549
  /***/ (function(module, exports) {
513
550
 
514
- module.exports = require("lodash");
551
+ module.exports = require("lodash/omit");
515
552
 
516
553
  /***/ })
517
554
 
@@ -0,0 +1,2 @@
1
+ export { default } from './types/src/Typography';
2
+ export * from './types/src/Typography';
package/Typography.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 = 182);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 235);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -94,7 +94,14 @@ module.exports = require("prop-types");
94
94
 
95
95
  /***/ }),
96
96
 
97
- /***/ 182:
97
+ /***/ 2:
98
+ /***/ (function(module, exports) {
99
+
100
+ module.exports = require("react");
101
+
102
+ /***/ }),
103
+
104
+ /***/ 235:
98
105
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
99
106
 
100
107
  "use strict";
@@ -113,11 +120,12 @@ var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_)
113
120
  var external_prop_types_ = __webpack_require__(1);
114
121
  var external_prop_types_default = /*#__PURE__*/__webpack_require__.n(external_prop_types_);
115
122
 
116
- // EXTERNAL MODULE: external "lodash"
117
- var external_lodash_ = __webpack_require__(4);
123
+ // EXTERNAL MODULE: external "lodash/pick"
124
+ var pick_ = __webpack_require__(34);
125
+ var pick_default = /*#__PURE__*/__webpack_require__.n(pick_);
118
126
 
119
127
  // EXTERNAL MODULE: external "@splunk/themes/mixins"
120
- var mixins_ = __webpack_require__(57);
128
+ var mixins_ = __webpack_require__(80);
121
129
  var mixins_default = /*#__PURE__*/__webpack_require__.n(mixins_);
122
130
 
123
131
  // EXTERNAL MODULE: external "styled-components"
@@ -177,7 +185,7 @@ function Typography(_ref2) {
177
185
 
178
186
  // @docs-props-type TypographyPropsBase
179
187
  var variant = otherProps.variant;
180
- var typographyParams = Object(external_lodash_["pick"])(otherProps, keys);
188
+ var typographyParams = pick_default()(otherProps, keys);
181
189
  return /*#__PURE__*/external_react_default.a.createElement(StyledTypography, _extends({
182
190
  as: as,
183
191
  ref: elementRef,
@@ -192,13 +200,6 @@ Typography.propTypes = propTypes;
192
200
 
193
201
 
194
202
 
195
- /***/ }),
196
-
197
- /***/ 2:
198
- /***/ (function(module, exports) {
199
-
200
- module.exports = require("react");
201
-
202
203
  /***/ }),
203
204
 
204
205
  /***/ 3:
@@ -208,14 +209,14 @@ module.exports = require("styled-components");
208
209
 
209
210
  /***/ }),
210
211
 
211
- /***/ 4:
212
+ /***/ 34:
212
213
  /***/ (function(module, exports) {
213
214
 
214
- module.exports = require("lodash");
215
+ module.exports = require("lodash/pick");
215
216
 
216
217
  /***/ }),
217
218
 
218
- /***/ 57:
219
+ /***/ 80:
219
220
  /***/ (function(module, exports) {
220
221
 
221
222
  module.exports = require("@splunk/themes/mixins");
package/WaitSpinner.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 = 177);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 230);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -101,7 +101,14 @@ module.exports = require("prop-types");
101
101
 
102
102
  /***/ }),
103
103
 
104
- /***/ 177:
104
+ /***/ 2:
105
+ /***/ (function(module, exports) {
106
+
107
+ module.exports = require("react");
108
+
109
+ /***/ }),
110
+
111
+ /***/ 230:
105
112
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
106
113
 
107
114
  "use strict";
@@ -120,13 +127,13 @@ var external_prop_types_ = __webpack_require__(1);
120
127
  var external_prop_types_default = /*#__PURE__*/__webpack_require__.n(external_prop_types_);
121
128
 
122
129
  // EXTERNAL MODULE: external "@splunk/react-ui/AnimationToggle"
123
- var AnimationToggle_ = __webpack_require__(36);
130
+ var AnimationToggle_ = __webpack_require__(47);
124
131
 
125
132
  // EXTERNAL MODULE: external "@splunk/themes"
126
133
  var themes_ = __webpack_require__(0);
127
134
 
128
135
  // EXTERNAL MODULE: external "@splunk/ui-utils/i18n"
129
- var i18n_ = __webpack_require__(5);
136
+ var i18n_ = __webpack_require__(4);
130
137
 
131
138
  // EXTERNAL MODULE: external "styled-components"
132
139
  var external_styled_components_ = __webpack_require__(3);
@@ -198,9 +205,6 @@ var StyledEnterpriseCircle = external_styled_components_default.a.circle.withCon
198
205
  enterprise: Object(external_styled_components_["css"])(["stroke-dasharray:34 19;"])
199
206
  }));
200
207
 
201
- // EXTERNAL MODULE: ./src/useIsSsr/index.ts + 1 modules
202
- var useIsSsr = __webpack_require__(80);
203
-
204
208
  // CONCATENATED MODULE: ./src/WaitSpinner/WaitSpinner.tsx
205
209
  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); }
206
210
 
@@ -214,7 +218,6 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
214
218
 
215
219
 
216
220
 
217
-
218
221
  var propTypes = {
219
222
  elementRef: external_prop_types_default.a.oneOfType([external_prop_types_default.a.func, external_prop_types_default.a.object]),
220
223
  screenReaderText: external_prop_types_default.a.string,
@@ -236,12 +239,6 @@ function WaitSpinner(_ref) {
236
239
  isPrisma = _useSplunkTheme.isPrisma;
237
240
 
238
241
  var viewBox = isPrisma ? '0 0 40 40' : '0 0 19 19';
239
- var isSsr = Object(useIsSsr["default"])();
240
-
241
- if (isSsr) {
242
- return null;
243
- }
244
-
245
242
  return /*#__PURE__*/external_react_default.a.createElement(Styled, _extends({
246
243
  "data-test": "wait-spinner"
247
244
  }, otherProps), /*#__PURE__*/external_react_default.a.createElement(StyledSvg, {
@@ -275,13 +272,6 @@ WaitSpinner.propTypes = propTypes;
275
272
  // CONCATENATED MODULE: ./src/WaitSpinner/index.ts
276
273
 
277
274
 
278
- /***/ }),
279
-
280
- /***/ 2:
281
- /***/ (function(module, exports) {
282
-
283
- module.exports = require("react");
284
-
285
275
  /***/ }),
286
276
 
287
277
  /***/ 3:
@@ -291,73 +281,17 @@ module.exports = require("styled-components");
291
281
 
292
282
  /***/ }),
293
283
 
294
- /***/ 36:
295
- /***/ (function(module, exports) {
296
-
297
- module.exports = require("@splunk/react-ui/AnimationToggle");
298
-
299
- /***/ }),
300
-
301
- /***/ 5:
284
+ /***/ 4:
302
285
  /***/ (function(module, exports) {
303
286
 
304
287
  module.exports = require("@splunk/ui-utils/i18n");
305
288
 
306
289
  /***/ }),
307
290
 
308
- /***/ 80:
309
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
310
-
311
- "use strict";
312
- // ESM COMPAT FLAG
313
- __webpack_require__.r(__webpack_exports__);
314
-
315
- // EXPORTS
316
- __webpack_require__.d(__webpack_exports__, "default", function() { return /* reexport */ src_useIsSsr_useIsSsr; });
317
-
318
- // EXTERNAL MODULE: external "react"
319
- var external_react_ = __webpack_require__(2);
320
-
321
- // CONCATENATED MODULE: ./src/useIsSsr/useIsSsr.tsx
322
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
323
-
324
- 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."); }
325
-
326
- 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); }
327
-
328
- 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; }
329
-
330
- 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; }
331
-
332
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
333
-
334
-
335
- /**
336
- * This is a private component not intended for use outside @splunk/react-ui
337
- *
338
- * Checks if the application is server side rendered and returns boolean
339
- * to be used in components that utilize "window" or "document" objects.
340
- */
341
-
342
- var useIsSsr_useIsSsr = function useIsSsr() {
343
- // we always start off in "SSR mode", to ensure our initial browser render
344
- var _useState = Object(external_react_["useState"])(true),
345
- _useState2 = _slicedToArray(_useState, 2),
346
- isSsr = _useState2[0],
347
- setIsSsr = _useState2[1];
348
-
349
- Object(external_react_["useEffect"])(function () {
350
- // `useEffect` never runs on the server, so we must be on the client if
351
- // we hit this block
352
- setIsSsr(false);
353
- }, []);
354
- return isSsr;
355
- };
356
-
357
- /* harmony default export */ var src_useIsSsr_useIsSsr = (useIsSsr_useIsSsr);
358
- // CONCATENATED MODULE: ./src/useIsSsr/index.ts
359
-
291
+ /***/ 47:
292
+ /***/ (function(module, exports) {
360
293
 
294
+ module.exports = require("@splunk/react-ui/AnimationToggle");
361
295
 
362
296
  /***/ })
363
297
 
@@ -0,0 +1,42 @@
1
+ version: "3.9"
2
+ services:
3
+ prisma-storybook:
4
+ build:
5
+ context: .
6
+ dockerfile: Dockerfile.prisma.storybook
7
+ command: npx http-server storybook-static-visual --port 6007
8
+ ports:
9
+ - "6007:6007"
10
+ enterprise-storybook:
11
+ build:
12
+ context: .
13
+ dockerfile: Dockerfile.enterprise.storybook
14
+ command: npx http-server storybook-static-visual-enterprise --port 6008
15
+ ports:
16
+ - "6008:6008"
17
+ prisma-visual-test:
18
+ build:
19
+ context: .
20
+ dockerfile: Dockerfile.visual
21
+ env_file:
22
+ - ./.storybook-visual/config/.env.visual
23
+ working_dir: /react-ui
24
+ volumes:
25
+ - "./src:/react-ui/src"
26
+ - "./test-reports:/react-ui/test-reports"
27
+ depends_on:
28
+ - prisma-storybook
29
+ command: /bin/sh -c "npx wait-on http://prisma-storybook:6007 && yarn cache clean && yarn test-storybook -c .storybook-visual --browsers $${STORYBOOK_BROWSER} $${STORYBOOK_UPDATE_SNAPSHOT} --url http://prisma-storybook:6007 --no-index-json"
30
+ enterprise-visual-test:
31
+ build:
32
+ context: .
33
+ dockerfile: Dockerfile.visual
34
+ env_file:
35
+ - ./.storybook-visual/config/.env.visual
36
+ working_dir: /react-ui
37
+ volumes:
38
+ - "./src:/react-ui/src"
39
+ - "./test-reports:/react-ui/test-reports"
40
+ depends_on:
41
+ - enterprise-storybook
42
+ command: /bin/sh -c "npx wait-on http://enterprise-storybook:6008 && yarn cache clean && yarn test-storybook -c .storybook-visual --browsers $${STORYBOOK_BROWSER} $${STORYBOOK_UPDATE_SNAPSHOT} --url http://enterprise-storybook:6008 --no-index-json"
package/package.json CHANGED
@@ -1,15 +1,16 @@
1
1
  {
2
2
  "name": "@splunk/react-ui",
3
- "version": "4.13.0",
3
+ "version": "4.15.0",
4
4
  "description": "Library of React components that implement the Splunk design language",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Splunk Inc.",
7
7
  "scripts": {
8
- "build": "cross-env NODE_ENV=production webpack && yarn types:build && yarn build-storybook",
8
+ "build": "cross-env NODE_ENV=production webpack && yarn types:build",
9
9
  "docs": "NODE_ENV=production webpack --config docs.gen.webpack.config.js",
10
10
  "docs:publish": "cicd-publish-docs docs --force",
11
11
  "docs:publish:external": "cicd-publish-docs docs-external --force --suffix=public",
12
- "docs:start": "webpack serve --config docs.gen.webpack.config.js",
12
+ "docs:start": "INTERNAL=true webpack serve --config docs.gen.webpack.config.js",
13
+ "docs:start:external": "webpack serve --config docs.gen.webpack.config.js",
13
14
  "eslint": "eslint src .storybook --ext \".ts,.tsx,.js,.jsx\"",
14
15
  "eslint:fix": "yarn run eslint --fix",
15
16
  "eslint:ci": "yarn run eslint -f junit -o test-reports/lint-results.xml",
@@ -17,20 +18,17 @@
17
18
  "lint:ci": "yarn run eslint:ci && yarn run stylelint",
18
19
  "start": "cross-env NODE_ENV=development webpack --watch",
19
20
  "storybook": "start-storybook -p 6006",
20
- "storybook:test": "./.storybook/scripts/test.sh",
21
- "storybook:test:all": "./.storybook/scripts/test.sh --all",
22
- "storybook:build": "./.storybook/scripts/build.sh",
21
+ "storybook:test": "./.storybook-visual/scripts/test.sh",
22
+ "storybook:test:all": "./.storybook-visual/scripts/test.sh --all",
23
+ "storybook:a11y": "./.storybook-visual/scripts/test.sh --a11y",
24
+ "storybook:a11y:all": "./.storybook-visual/scripts/test.sh --a11y --all",
25
+ "storybook:build": "yarn build-storybook",
23
26
  "stylelint": "stylelint \"src/**/*.{ts,tsx,js,jsx}\" --config stylelint.config.js",
24
27
  "test": "jest",
25
28
  "test:ci": "JEST_JUNIT_OUTPUT_DIR=./test-reports JEST_JUNIT_OUTPUT_NAME=unit-results.xml JEST_JUNIT_CLASSNAME=unit yarn run test --ci --reporters=default jest-junit --coverage --coverageDirectory=coverage_report/coverage_maps_unit --coverageReporters=cobertura",
26
29
  "test:watch": "jest --watch",
27
- "test:functional": "splunk-wdio-functional-test-runner functional.local.conf.js",
28
- "test:functional:coverage": "cross-env NODE_ENV=test-coverage splunk-wdio-functional-test-runner functional.local.conf.js --coverage",
29
- "test:functional:ci": "cross-env NODE_ENV=test-coverage splunk-wdio-functional-test-runner functional.ci.conf.js --coverage-maps",
30
- "test:functional:cloud": "splunk-wdio-functional-test-runner functional.cloud.conf.js",
31
30
  "test:cypress": "yarn cypress open-ct",
32
31
  "test:cypress:ci": "yarn cypress run-ct",
33
- "test:visual:cloud": "splunk-wdio-functional-test-runner functional.visual.conf.js",
34
32
  "types:build": "tsc --emitDeclarationOnly --declaration --declarationDir ./types && node ./scripts/pruneTypes.js",
35
33
  "types:start": "yarn types:build --watch"
36
34
  },
@@ -40,9 +38,9 @@
40
38
  "styled-components": "5.1.1"
41
39
  },
42
40
  "dependencies": {
43
- "@splunk/react-icons": "^3.2.0",
44
- "@splunk/themes": "^0.13.0",
45
- "@splunk/ui-utils": "^1.5.1",
41
+ "@splunk/react-icons": "^3.3.1",
42
+ "@splunk/themes": "^0.13.1",
43
+ "@splunk/ui-utils": "^1.5.2",
46
44
  "@types/commonmark": "^0.27.0",
47
45
  "@types/lodash": "^4.14.156",
48
46
  "@types/react": "^16.9.38",
@@ -55,11 +53,11 @@
55
53
  "commonmark-react-renderer": "^4.3.2",
56
54
  "decimal.js-light": "^2.2.3",
57
55
  "lodash": "^4.17.14",
58
- "moment": "^2.22.2",
56
+ "moment": "^2.29.4",
59
57
  "prop-types": "^15.6.2",
60
58
  "react-resize-detector": "^3.2.1",
61
59
  "react-sortable-hoc": "^1.11.0",
62
- "react-spring": "^9.2.4",
60
+ "react-spring": "9.2.4",
63
61
  "tinycolor2": "^1.4.1",
64
62
  "use-typed-event-listener": "^3.0.0"
65
63
  },
@@ -70,19 +68,19 @@
70
68
  "@cypress/webpack-dev-server": "^1.8.2",
71
69
  "@splunk/babel-preset": "^3.0.0",
72
70
  "@splunk/cicd-tools": "^0.5.0",
73
- "@splunk/docs-gen": "^0.11.2",
71
+ "@splunk/docs-gen": "1.0.0-beta.1",
74
72
  "@splunk/eslint-config": "^4.0.0",
75
- "@splunk/react-docs": "^0.11.0",
73
+ "@splunk/react-docs": "1.0.0-beta.1",
76
74
  "@splunk/stylelint-config": "^4.0.0",
77
75
  "@splunk/test-runner-utils": "^0.4.0",
78
76
  "@splunk/wdio-functional-test-runner": "^10.1.0",
79
- "@splunk/webpack-configs": "^5.0.0",
77
+ "@splunk/webpack-configs": "^6.0.0",
80
78
  "@storybook/addon-a11y": "^6.5.9",
81
79
  "@storybook/addon-essentials": "^6.5.9",
82
80
  "@storybook/addon-interactions": "^6.5.9",
83
81
  "@storybook/csf": "^0.0.1",
84
82
  "@storybook/react": "^6.5.9",
85
- "@storybook/test-runner": "^0.4.0",
83
+ "@storybook/test-runner": "^0.9.0",
86
84
  "@storybook/testing-react": "^1.3.0",
87
85
  "@testing-library/cypress": "^8.0.2",
88
86
  "@testing-library/jest-dom": "^5.16.1",
@@ -103,6 +101,7 @@
103
101
  "babel-loader": "^8.0.4",
104
102
  "babel-plugin-istanbul": "^5.1.0",
105
103
  "babel-plugin-styled-components": "^1.10.7",
104
+ "babel-plugin-transform-imports": "^2.0.0",
106
105
  "babel-plugin-transform-require-context": "^0.1.1",
107
106
  "chai": "^3.5.0",
108
107
  "core-js": "^3.6.4",
@@ -125,6 +124,7 @@
125
124
  "fs-readdir-recursive": "^1.0.0",
126
125
  "glob": "^7.1.6",
127
126
  "html-webpack-plugin": "^3.2.0",
127
+ "http-server": "^14.1.1",
128
128
  "jest": "^25.1.0",
129
129
  "jest-image-snapshot": "^5.1.0",
130
130
  "jest-junit": "^10.0.0",
@@ -1,4 +1,5 @@
1
1
  /* eslint-disable no-undef */
2
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
2
3
  const { getJestConfig } = require('@storybook/test-runner');
3
4
 
4
5
  // if component is passed to storybook:test then test will run for only that component
@@ -18,17 +19,34 @@ module.exports = {
18
19
  '^.+\\.examples\\.[jt]sx?$': '@storybook/test-runner/playwright/transform',
19
20
  '^.+\\.tsx?$': 'babel-jest',
20
21
  },
21
- snapshotResolver: '<rootDir>/.storybook/config/snapshotResolver.js',
22
+ // used for a11y DOM snapshots, currently disabled
23
+ // snapshotResolver: '<rootDir>/.storybook-visual/config/snapshotResolver.js',
22
24
  reporters: [
23
25
  'default',
26
+ 'jest-junit',
24
27
  [
25
28
  'jest-stare',
26
29
  {
27
- resultDir: `./test-reports/${process.env.STORYBOOK_TEST_BROWSER}-${process.env.STORYBOOK_THEME_FAMILY}`,
28
- reportTitle: `Visual A11y Test Report - ${process.env.STORYBOOK_TEST_BROWSER} ${process.env.STORYBOOK_THEME_FAMILY}`,
29
- reportHeadline: `Visual A11y Test Report - ${process.env.STORYBOOK_TEST_BROWSER} ${process.env.STORYBOOK_THEME_FAMILY}`,
30
+ resultDir: `./test-reports/${
31
+ process.env.STORYBOOK_TEST_A11Y === 'false' ? 'visual' : 'a11y'
32
+ }/${process.env.STORYBOOK_THEME_FAMILY}${
33
+ process.env.JOB_BROWSER ? `-${process.env.JOB_BROWSER}` : ''
34
+ }`,
35
+ reportTitle: `${
36
+ process.env.STORYBOOK_TEST_A11Y === 'false' ? 'Visual' : 'A11y'
37
+ } Test Report - ${process.env.STORYBOOK_THEME_FAMILY}${
38
+ process.env.JOB_BROWSER ? `-${process.env.JOB_BROWSER}` : ''
39
+ }`,
40
+ reportHeadline: `${
41
+ process.env.STORYBOOK_TEST_A11Y === 'false' ? 'Visual' : 'A11y'
42
+ } Test Report - ${process.env.STORYBOOK_THEME_FAMILY}${
43
+ process.env.JOB_BROWSER ? `-${process.env.JOB_BROWSER}` : ''
44
+ }`,
30
45
  hidePending: true,
31
- resultHtml: `visual-report.html`,
46
+ resultHtml:
47
+ process.env.STORYBOOK_TEST_A11Y === 'false'
48
+ ? 'visual-report.html'
49
+ : 'a11y-report.html',
32
50
  },
33
51
  ],
34
52
  ],
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { CollapsiblePanelRequestCloseHandler, CollapsiblePanelRequestOpenHandler } from '@splunk/react-ui/CollapsiblePanel';
2
3
  export interface AccordionContext {
3
4
  onRequestClose?: CollapsiblePanelRequestCloseHandler;
@@ -1,2 +1,2 @@
1
- declare function Buttons(): JSX.Element;
2
- export default Buttons;
1
+ declare function Selected(): JSX.Element;
2
+ export default Selected;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  export interface ButtonGroupContext {
2
3
  inline?: boolean;
3
4
  role?: string;