@splunk/react-ui 4.21.0 → 4.22.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 (92) hide show
  1. package/Accordion.js +425 -325
  2. package/Anchor.js +147 -117
  3. package/Animation.js +142 -94
  4. package/AnimationToggle.js +197 -193
  5. package/Box.js +145 -118
  6. package/Breadcrumbs.js +288 -206
  7. package/Button.js +488 -465
  8. package/ButtonGroup.js +160 -128
  9. package/ButtonSimple.js +543 -462
  10. package/CHANGELOG.md +24 -3
  11. package/Calendar.js +1111 -1001
  12. package/Card.js +771 -598
  13. package/CardLayout.js +205 -147
  14. package/Chip.js +509 -488
  15. package/Clickable.js +414 -352
  16. package/CloseButton.js +165 -142
  17. package/Code.js +1807 -2084
  18. package/CollapsiblePanel.js +586 -519
  19. package/Color.js +1068 -1068
  20. package/ColumnLayout.js +402 -363
  21. package/ComboBox.js +903 -794
  22. package/Concertina.js +997 -802
  23. package/ControlGroup.js +687 -594
  24. package/Date.js +567 -547
  25. package/DefinitionList.js +308 -234
  26. package/Divider.js +149 -118
  27. package/Dropdown.js +459 -416
  28. package/DualListbox.js +1479 -1541
  29. package/EventListener.js +94 -97
  30. package/File.js +1051 -969
  31. package/FormRows.js +883 -696
  32. package/Heading.js +216 -193
  33. package/Image.js +446 -402
  34. package/JSONTree.js +690 -551
  35. package/Layer.js +437 -410
  36. package/Link.js +336 -255
  37. package/List.js +213 -161
  38. package/Markdown.js +509 -487
  39. package/Menu.js +1104 -1056
  40. package/Message.js +475 -441
  41. package/MessageBar.js +387 -373
  42. package/Modal.js +810 -634
  43. package/ModalLayer.js +326 -243
  44. package/Monogram.js +308 -276
  45. package/Multiselect.js +3564 -3364
  46. package/Number.js +729 -687
  47. package/Paginator.js +510 -449
  48. package/Paragraph.js +145 -112
  49. package/Popover.js +1459 -1432
  50. package/Progress.js +301 -246
  51. package/RadioBar.js +634 -527
  52. package/RadioList.js +483 -444
  53. package/Resize.js +530 -489
  54. package/ResultsMenu.js +479 -455
  55. package/ScreenReaderContent.js +142 -111
  56. package/Scroll.js +595 -456
  57. package/ScrollContainerContext.js +197 -206
  58. package/Search.js +756 -650
  59. package/Select.js +2446 -2345
  60. package/SidePanel.js +390 -284
  61. package/Slider.js +680 -676
  62. package/SlidingPanels.js +639 -503
  63. package/SplitButton.js +464 -367
  64. package/StaticContent.js +161 -133
  65. package/StepBar.js +386 -358
  66. package/Switch.js +710 -640
  67. package/TabBar.js +741 -680
  68. package/TabLayout.js +406 -322
  69. package/Table.js +4974 -4616
  70. package/Text.js +1170 -1138
  71. package/TextArea.js +1102 -1090
  72. package/Tooltip.js +624 -581
  73. package/TransitionOpen.js +489 -422
  74. package/Typography.js +176 -153
  75. package/WaitSpinner.js +230 -206
  76. package/package.json +7 -7
  77. package/types/src/Color/Color.d.ts +0 -1
  78. package/types/src/JSONTree/JSONTreeContext.d.ts +7 -0
  79. package/types/src/JSONTree/TreeNode.d.ts +5 -0
  80. package/types/src/RadioBar/RadioBar.d.ts +1 -0
  81. package/types/src/ResultsMenu/ResultsMenu.d.ts +0 -2
  82. package/types/src/Select/docs/examples/Icons.d.ts +1 -9
  83. package/types/src/Slider/Slider.d.ts +1 -0
  84. package/types/src/TabBar/Tab.d.ts +10 -1
  85. package/types/src/TabBar/TabBar.d.ts +4 -2
  86. package/types/src/Table/Head.d.ts +7 -3
  87. package/types/src/Table/Table.d.ts +3 -2
  88. package/types/src/Table/TableContext.d.ts +2 -0
  89. package/useForceUpdate.js +112 -82
  90. package/useKeyPress.js +74 -71
  91. package/usePrevious.js +65 -65
  92. package/useRovingFocus.js +122 -138
package/JSONTree.js CHANGED
@@ -1,563 +1,702 @@
1
- /******/ (() => { // webpackBootstrap
2
- /******/ "use strict";
3
- /******/ // The require scope
4
- /******/ var __webpack_require__ = {};
5
- /******/
6
- /************************************************************************/
7
- /******/ /* webpack/runtime/compat get default export */
8
- /******/ (() => {
9
- /******/ // getDefaultExport function for compatibility with non-harmony modules
10
- /******/ __webpack_require__.n = (module) => {
11
- /******/ var getter = module && module.__esModule ?
12
- /******/ () => (module['default']) :
13
- /******/ () => (module);
14
- /******/ __webpack_require__.d(getter, { a: getter });
15
- /******/ return getter;
16
- /******/ };
17
- /******/ })();
18
- /******/
19
- /******/ /* webpack/runtime/define property getters */
20
- /******/ (() => {
21
- /******/ // define getter functions for harmony exports
22
- /******/ __webpack_require__.d = (exports, definition) => {
23
- /******/ for(var key in definition) {
24
- /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
25
- /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
26
- /******/ }
27
- /******/ }
28
- /******/ };
29
- /******/ })();
30
- /******/
31
- /******/ /* webpack/runtime/hasOwnProperty shorthand */
32
- /******/ (() => {
33
- /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
34
- /******/ })();
35
- /******/
36
- /******/ /* webpack/runtime/make namespace object */
37
- /******/ (() => {
38
- /******/ // define __esModule on exports
39
- /******/ __webpack_require__.r = (exports) => {
40
- /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
41
- /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
42
- /******/ }
43
- /******/ Object.defineProperty(exports, '__esModule', { value: true });
44
- /******/ };
45
- /******/ })();
46
- /******/
47
- /************************************************************************/
48
- var __webpack_exports__ = {};
49
- // ESM COMPAT FLAG
50
- __webpack_require__.r(__webpack_exports__);
51
-
52
- // EXPORTS
53
- __webpack_require__.d(__webpack_exports__, {
54
- "default": () => (/* reexport */ JSONTree_JSONTree)
55
- });
56
-
57
- ;// CONCATENATED MODULE: external "react"
58
- const external_react_namespaceObject = require("react");
59
- var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_namespaceObject);
60
- ;// CONCATENATED MODULE: external "prop-types"
61
- const external_prop_types_namespaceObject = require("prop-types");
62
- var external_prop_types_default = /*#__PURE__*/__webpack_require__.n(external_prop_types_namespaceObject);
63
- ;// CONCATENATED MODULE: external "lodash/isString"
64
- const isString_namespaceObject = require("lodash/isString");
65
- var isString_default = /*#__PURE__*/__webpack_require__.n(isString_namespaceObject);
66
- ;// CONCATENATED MODULE: external "lodash/fill"
67
- const fill_namespaceObject = require("lodash/fill");
68
- var fill_default = /*#__PURE__*/__webpack_require__.n(fill_namespaceObject);
69
- ;// CONCATENATED MODULE: external "lodash/isArray"
70
- const isArray_namespaceObject = require("lodash/isArray");
71
- var isArray_default = /*#__PURE__*/__webpack_require__.n(isArray_namespaceObject);
72
- ;// CONCATENATED MODULE: external "lodash/isEmpty"
73
- const isEmpty_namespaceObject = require("lodash/isEmpty");
74
- var isEmpty_default = /*#__PURE__*/__webpack_require__.n(isEmpty_namespaceObject);
75
- ;// CONCATENATED MODULE: external "lodash/isNumber"
76
- const isNumber_namespaceObject = require("lodash/isNumber");
77
- var isNumber_default = /*#__PURE__*/__webpack_require__.n(isNumber_namespaceObject);
78
- ;// CONCATENATED MODULE: external "lodash/isObject"
79
- const isObject_namespaceObject = require("lodash/isObject");
80
- var isObject_default = /*#__PURE__*/__webpack_require__.n(isObject_namespaceObject);
81
- ;// CONCATENATED MODULE: external "lodash/keys"
82
- const keys_namespaceObject = require("lodash/keys");
83
- var keys_default = /*#__PURE__*/__webpack_require__.n(keys_namespaceObject);
84
- ;// CONCATENATED MODULE: external "lodash/repeat"
85
- const repeat_namespaceObject = require("lodash/repeat");
86
- var repeat_default = /*#__PURE__*/__webpack_require__.n(repeat_namespaceObject);
87
- ;// CONCATENATED MODULE: external "styled-components"
88
- const external_styled_components_namespaceObject = require("styled-components");
89
- var external_styled_components_default = /*#__PURE__*/__webpack_require__.n(external_styled_components_namespaceObject);
90
- ;// CONCATENATED MODULE: external "@splunk/react-ui/Clickable"
91
- const Clickable_namespaceObject = require("@splunk/react-ui/Clickable");
92
- var Clickable_default = /*#__PURE__*/__webpack_require__.n(Clickable_namespaceObject);
93
- ;// CONCATENATED MODULE: external "@splunk/themes"
94
- const themes_namespaceObject = require("@splunk/themes");
95
- ;// CONCATENATED MODULE: ./src/JSONTree/TreeNodeStyles.ts
96
-
97
-
98
-
99
- var typeColor = {
100
- string: (0,themes_namespaceObject.pick)({
101
- enterprise: {
102
- dark: '#00b0b3',
103
- light: '#00787A'
104
- },
105
- prisma: themes_namespaceObject.variables.syntaxTeal
106
- }),
107
- number: (0,themes_namespaceObject.pick)({
108
- enterprise: {
109
- dark: '#8bacfd',
110
- light: '#1f5df9'
111
- },
112
- prisma: themes_namespaceObject.variables.syntaxBlue
113
- }),
114
- "boolean": (0,themes_namespaceObject.pick)({
115
- enterprise: {
116
- dark: '#af8aff',
117
- light: themes_namespaceObject.variables.syntaxPurple
118
- },
119
- prisma: themes_namespaceObject.variables.syntaxPurple
120
- }),
121
- "null": (0,themes_namespaceObject.pick)({
122
- enterprise: {
123
- dark: '#f0b375',
124
- light: '#ad5700'
125
- },
126
- prisma: themes_namespaceObject.variables.syntaxBrown
127
- }),
128
- object: themes_namespaceObject.variables.contentColorDefault
129
- };
130
- var wrap = (0,external_styled_components_namespaceObject.css)(["word-break:break-word;word-wrap:break-word;"]);
131
- var TreeNodeStyles_scroll = (0,external_styled_components_namespaceObject.css)(["white-space:nowrap;"]);
132
- var StyledValue = external_styled_components_default().span.withConfig({
133
- displayName: "TreeNodeStyles__StyledValue",
134
- componentId: "sc-1rdul18-0"
135
- })(["color:", ";", ";"], function (_ref) {
136
- var valueType = _ref.valueType;
137
- return typeColor[valueType];
138
- }, function (_ref2) {
139
- var overflowType = _ref2.overflowType;
140
- return overflowType === 'wrap' ? wrap : TreeNodeStyles_scroll;
141
- });
142
- var StyledValueInteractiveClickable = external_styled_components_default()(StyledValue.withComponent((Clickable_default()))).withConfig({
143
- displayName: "TreeNodeStyles__StyledValueInteractiveClickable",
144
- componentId: "sc-1rdul18-1"
145
- })(["font-family:inherit;&:focus{box-shadow:0 0 1px 3px ", ";outline:0;&:active{box-shadow:none;}}&:hover{background-color:", ";}"], themes_namespaceObject.variables.focusColor, (0,themes_namespaceObject.pick)({
146
- enterprise: themes_namespaceObject.variables.backgroundColorHover,
147
- prisma: themes_namespaceObject.variables.interactiveColorOverlayHover
148
- }));
149
- var StyledProperty = external_styled_components_default().span.withConfig({
150
- displayName: "TreeNodeStyles__StyledProperty",
151
- componentId: "sc-1rdul18-2"
152
- })(["font-weight:bold;color:", ";"], (0,themes_namespaceObject.pick)({
153
- enterprise: {
154
- dark: '#ec9f98',
155
- light: themes_namespaceObject.variables.syntaxRed
156
- },
157
- prisma: themes_namespaceObject.variables.syntaxRed
158
- }));
159
- var StyledPropertyInteractiveClickable = external_styled_components_default()(StyledProperty.withComponent((Clickable_default()))).withConfig({
160
- displayName: "TreeNodeStyles__StyledPropertyInteractiveClickable",
161
- componentId: "sc-1rdul18-3"
162
- })(["font-family:inherit;&:focus{box-shadow:0 0 1px 3px ", ";outline:0;&:active{box-shadow:none;}}&:hover{background-color:", ";}"], themes_namespaceObject.variables.focusColor, (0,themes_namespaceObject.pick)({
163
- enterprise: themes_namespaceObject.variables.backgroundColorHover,
164
- prisma: themes_namespaceObject.variables.interactiveColorOverlayHover
165
- }));
166
- var StyledExpandLinkClickable = external_styled_components_default()((Clickable_default())).withConfig({
167
- displayName: "TreeNodeStyles__StyledExpandLinkClickable",
168
- componentId: "sc-1rdul18-4"
169
- })(["cursor:pointer;color:", ";font-family:inherit;&:hover{background-color:", ";text-decoration:none;}&:focus{box-shadow:", ";&:active{box-shadow:none;}}", ""], (0,themes_namespaceObject.pick)({
170
- enterprise: {
171
- dark: themes_namespaceObject.variables.accentColorL20,
172
- light: themes_namespaceObject.variables.accentColorD20
173
- },
174
- prisma: themes_namespaceObject.variables.interactiveColorPrimary
175
- }), (0,themes_namespaceObject.pick)({
176
- enterprise: themes_namespaceObject.variables.backgroundColorHover,
177
- prisma: themes_namespaceObject.variables.interactiveColorOverlayHover
178
- }), themes_namespaceObject.variables.focusShadowInset, (0,themes_namespaceObject.pick)({
179
- prisma: (0,external_styled_components_namespaceObject.css)(["border-radius:", ";"], themes_namespaceObject.variables.borderRadius)
180
- }));
181
-
182
- ;// CONCATENATED MODULE: ./src/JSONTree/TreeNode.tsx
183
- 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); }
184
-
185
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
186
-
187
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
188
-
189
- 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); }
190
-
191
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
192
-
193
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
194
-
195
- 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; }
196
-
197
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
198
-
199
- 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); } }
200
-
201
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
202
-
203
- 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); }
204
-
205
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
206
-
207
- 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); }; }
208
-
209
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
210
-
211
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
212
-
213
- 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; } }
214
-
215
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
216
-
217
- 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; }
218
-
219
-
220
-
221
-
222
-
223
-
224
-
225
-
226
-
227
-
228
-
229
-
230
- var propTypes = {
231
- path: external_prop_types_default().arrayOf(external_prop_types_default().oneOfType([(external_prop_types_default()).number, (external_prop_types_default()).string])),
232
- defaultOpen: (external_prop_types_default()).bool,
233
- expandChildren: external_prop_types_default().oneOfType([(external_prop_types_default()).bool, external_prop_types_default().oneOf(['withShiftModifier'])]),
234
- indent: (external_prop_types_default()).number,
235
- indentLevel: (external_prop_types_default()).number,
236
- obj: external_prop_types_default().oneOfType([(external_prop_types_default()).object, (external_prop_types_default()).array, (external_prop_types_default()).number, (external_prop_types_default()).string, (external_prop_types_default()).bool]).isRequired,
237
- onClickKey: (external_prop_types_default()).func,
238
- onClickValue: (external_prop_types_default()).func,
239
- overflow: external_prop_types_default().oneOf(['wrap', 'scroll'])
240
- };
241
- var defaultProps = {
242
- path: [],
243
- defaultOpen: false,
244
- expandChildren: false,
245
- indent: 4,
246
- indentLevel: 1,
247
- overflow: 'scroll'
248
- };
249
- var shift;
250
- /**
251
- * An internal container class for expandable tree nodes (objects and arrays).
252
- */
253
-
254
- var JSONTreeNode = /*#__PURE__*/function (_Component) {
255
- _inherits(JSONTreeNode, _Component);
256
-
257
- var _super = _createSuper(JSONTreeNode);
258
-
259
- function JSONTreeNode(props) {
260
- var _this;
261
-
262
- _classCallCheck(this, JSONTreeNode);
263
-
264
- _this = _super.call(this, props);
265
-
266
- _defineProperty(_assertThisInitialized(_this), "regularIndent", void 0);
267
-
268
- _defineProperty(_assertThisInitialized(_this), "closingIndent", void 0);
269
-
270
- _defineProperty(_assertThisInitialized(_this), "handleExpandClick", function (e) {
271
- if (_this.props.expandChildren === 'withShiftModifier') {
272
- shift = e.shiftKey;
273
- }
274
-
275
- _this.setState(function (state) {
276
- return {
277
- open: !state.open
278
- };
279
- });
280
- });
281
-
282
- _defineProperty(_assertThisInitialized(_this), "handleClickKey", function (e, key) {
283
- var _this$props$onClickKe, _this$props;
284
-
285
- var path = _this.props.path; // When rendering a single value key is not present, here we prevent `[undefined]` in path
286
-
287
- var keyPath = key !== undefined ? [].concat(_toConsumableArray(path), [key]) : _toConsumableArray(path);
288
- var keyPathString = ".".concat(keyPath.join('.'));
289
- (_this$props$onClickKe = (_this$props = _this.props).onClickKey) === null || _this$props$onClickKe === void 0 ? void 0 : _this$props$onClickKe.call(_this$props, e, {
290
- key: keyPathString,
291
- keyPath: keyPath
292
- });
293
- });
294
-
295
- _defineProperty(_assertThisInitialized(_this), "handleClickValue", function (e, key) {
296
- var _this$props$onClickVa, _this$props2;
297
-
298
- var path = _this.props.path; // When rendering a single value key is not present, here we prevent `[undefined]` in path
299
-
300
- var keyPath = key !== undefined ? [].concat(_toConsumableArray(path), [key]) : _toConsumableArray(path);
301
- var keyPathString = ".".concat(keyPath.join('.'));
302
- (_this$props$onClickVa = (_this$props2 = _this.props).onClickValue) === null || _this$props$onClickVa === void 0 ? void 0 : _this$props$onClickVa.call(_this$props2, e, {
303
- key: keyPathString,
304
- keyPath: keyPath,
305
- value: e.target.textContent // TS: cannot be null in this component, see textContent docs
306
-
307
- });
1
+ /******/ (() => {
2
+ // webpackBootstrap
3
+ /******/ "use strict";
4
+ /******/ // The require scope
5
+ /******/ var e = {};
6
+ /******/
7
+ /************************************************************************/
8
+ /******/ /* webpack/runtime/compat get default export */
9
+ /******/ (() => {
10
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
11
+ /******/ e.n = r => {
12
+ /******/ var t = r && r.__esModule ?
13
+ /******/ () => r["default"]
14
+ /******/ : () => r
15
+ /******/;
16
+ e.d(t, {
17
+ a: t
18
+ });
19
+ /******/ return t;
20
+ /******/ };
21
+ /******/ })();
22
+ /******/
23
+ /******/ /* webpack/runtime/define property getters */
24
+ /******/ (() => {
25
+ /******/ // define getter functions for harmony exports
26
+ /******/ e.d = (r, t) => {
27
+ /******/ for (var n in t) {
28
+ /******/ if (e.o(t, n) && !e.o(r, n)) {
29
+ /******/ Object.defineProperty(r, n, {
30
+ enumerable: true,
31
+ get: t[n]
32
+ });
33
+ /******/ }
34
+ /******/ }
35
+ /******/ };
36
+ /******/ })();
37
+ /******/
38
+ /******/ /* webpack/runtime/hasOwnProperty shorthand */
39
+ /******/ (() => {
40
+ /******/ e.o = (e, r) => Object.prototype.hasOwnProperty.call(e, r)
41
+ /******/;
42
+ })();
43
+ /******/
44
+ /******/ /* webpack/runtime/make namespace object */
45
+ /******/ (() => {
46
+ /******/ // define __esModule on exports
47
+ /******/ e.r = e => {
48
+ /******/ if (typeof Symbol !== "undefined" && Symbol.toStringTag) {
49
+ /******/ Object.defineProperty(e, Symbol.toStringTag, {
50
+ value: "Module"
51
+ });
52
+ /******/ }
53
+ /******/ Object.defineProperty(e, "__esModule", {
54
+ value: true
55
+ });
56
+ /******/ };
57
+ /******/ })();
58
+ /******/
59
+ /************************************************************************/ var r = {};
60
+ // ESM COMPAT FLAG
61
+ e.r(r);
62
+ // EXPORTS
63
+ e.d(r, {
64
+ default: () => /* reexport */ ke
308
65
  });
309
-
310
- if (_this.props.expandChildren === 'withShiftModifier' && shift !== undefined) {
311
- _this.state = shift ? {
312
- open: true
313
- } : {
314
- open: false
315
- };
316
- } else {
317
- _this.state = {
318
- open: props.defaultOpen
319
- };
320
- }
321
-
322
- _this.regularIndent = fill_default()(Array(props.indentLevel), repeat_default()("\xA0", props.indent));
323
- _this.closingIndent = fill_default()(Array(props.indentLevel - 1), repeat_default()("\xA0", props.indent));
324
- return _this;
325
- }
326
-
327
- _createClass(JSONTreeNode, [{
328
- key: "renderExpandLink",
329
- value: function renderExpandLink() {
330
- var _this2 = this;
331
-
332
- return /*#__PURE__*/external_react_default().createElement(StyledExpandLinkClickable, {
333
- onClick: function onClick(e) {
334
- _this2.handleExpandClick(e);
66
+ // CONCATENATED MODULE: external "react"
67
+ const t = require("react");
68
+ var n = e.n(t);
69
+ // CONCATENATED MODULE: external "prop-types"
70
+ const o = require("prop-types");
71
+ var a = e.n(o);
72
+ // CONCATENATED MODULE: external "lodash/isString"
73
+ const i = require("lodash/isString");
74
+ var l = e.n(i);
75
+ // CONCATENATED MODULE: ./src/JSONTree/JSONTreeContext.ts
76
+ var u = (0, t.createContext)({});
77
+ u.displayName = "JSONTree";
78
+ /* harmony default export */ const c = u;
79
+ // CONCATENATED MODULE: external "lodash/fill"
80
+ const s = require("lodash/fill");
81
+ var f = e.n(s);
82
+ // CONCATENATED MODULE: external "lodash/isArray"
83
+ const p = require("lodash/isArray");
84
+ var d = e.n(p);
85
+ // CONCATENATED MODULE: external "lodash/isEmpty"
86
+ const v = require("lodash/isEmpty");
87
+ var y = e.n(v);
88
+ // CONCATENATED MODULE: external "lodash/isNumber"
89
+ const b = require("lodash/isNumber");
90
+ var h = e.n(b);
91
+ // CONCATENATED MODULE: external "lodash/isObject"
92
+ const m = require("lodash/isObject");
93
+ var k = e.n(m);
94
+ // CONCATENATED MODULE: external "lodash/keys"
95
+ const g = require("lodash/keys");
96
+ var w = e.n(g);
97
+ // CONCATENATED MODULE: external "lodash/repeat"
98
+ const C = require("lodash/repeat");
99
+ var S = e.n(C);
100
+ // CONCATENATED MODULE: external "styled-components"
101
+ const O = require("styled-components");
102
+ var x = e.n(O);
103
+ // CONCATENATED MODULE: external "@splunk/react-ui/Clickable"
104
+ const j = require("@splunk/react-ui/Clickable");
105
+ var T = e.n(j);
106
+ // CONCATENATED MODULE: external "@splunk/themes"
107
+ const E = require("@splunk/themes");
108
+ // CONCATENATED MODULE: ./src/JSONTree/TreeNodeStyles.ts
109
+ var _ = {
110
+ string: (0, E.pick)({
111
+ enterprise: {
112
+ dark: "#00b0b3",
113
+ light: "#00787A"
114
+ },
115
+ prisma: E.variables.syntaxTeal
116
+ }),
117
+ number: (0, E.pick)({
118
+ enterprise: {
119
+ dark: "#8bacfd",
120
+ light: "#1f5df9"
121
+ },
122
+ prisma: E.variables.syntaxBlue
123
+ }),
124
+ boolean: (0, E.pick)({
125
+ enterprise: {
126
+ dark: "#af8aff",
127
+ light: E.variables.syntaxPurple
128
+ },
129
+ prisma: E.variables.syntaxPurple
130
+ }),
131
+ null: (0, E.pick)({
132
+ enterprise: {
133
+ dark: "#f0b375",
134
+ light: "#ad5700"
135
+ },
136
+ prisma: E.variables.syntaxBrown
137
+ }),
138
+ object: E.variables.contentColorDefault
139
+ };
140
+ var I = (0, O.css)([ "word-break:break-word;word-wrap:break-word;" ]);
141
+ var P = (0, O.css)([ "white-space:nowrap;" ]);
142
+ var N = x().span.withConfig({
143
+ displayName: "TreeNodeStyles__StyledValue",
144
+ componentId: "sc-1rdul18-0"
145
+ })([ "color:", ";", ";" ], (function(e) {
146
+ var r = e.valueType;
147
+ return _[r];
148
+ }), (function(e) {
149
+ var r = e.overflowType;
150
+ return r === "wrap" ? I : P;
151
+ }));
152
+ var A = x()(N.withComponent(T())).withConfig({
153
+ displayName: "TreeNodeStyles__StyledValueInteractiveClickable",
154
+ componentId: "sc-1rdul18-1"
155
+ })([ "font-family:inherit;&:focus{box-shadow:0 0 1px 3px ", ";outline:0;&:active{box-shadow:none;}}&:hover{background-color:", ";}" ], E.variables.focusColor, (0,
156
+ E.pick)({
157
+ enterprise: E.variables.backgroundColorHover,
158
+ prisma: E.variables.interactiveColorOverlayHover
159
+ }));
160
+ var q = x().span.withConfig({
161
+ displayName: "TreeNodeStyles__StyledProperty",
162
+ componentId: "sc-1rdul18-2"
163
+ })([ "font-weight:bold;color:", ";" ], (0, E.pick)({
164
+ enterprise: {
165
+ dark: "#ec9f98",
166
+ light: E.variables.syntaxRed
335
167
  },
336
- "aria-expanded": this.state.open,
337
- "data-test": "toggle"
338
- }, "\xA0", this.state.open ? '[-]' : '[+]', "\xA0");
339
- }
340
- }, {
341
- key: "renderValue",
342
- value: function renderValue(_ref) {
343
- var _this3 = this;
344
-
345
- var value = _ref.value,
346
- key = _ref.key;
347
- var _this$props3 = this.props,
348
- indent = _this$props3.indent,
349
- indentLevel = _this$props3.indentLevel,
350
- onClickKey = _this$props3.onClickKey,
351
- onClickValue = _this$props3.onClickValue,
352
- expandChildren = _this$props3.expandChildren,
353
- overflow = _this$props3.overflow,
354
- path = _this$props3.path;
355
- var representation = null; // determine if value should be represented as a simple string
356
- // or as a child node
357
-
358
- if (!isObject_default()(value)) {
359
- // isObject is true for arrays
360
- if (typeof value === 'string') {
361
- representation = "\"".concat(value, "\"");
362
- } else if (typeof value === 'boolean') {
363
- representation = value.toString();
364
- } else if (value === null) {
365
- representation = 'null';
168
+ prisma: E.variables.syntaxRed
169
+ }));
170
+ var K = x()(q.withComponent(T())).withConfig({
171
+ displayName: "TreeNodeStyles__StyledPropertyInteractiveClickable",
172
+ componentId: "sc-1rdul18-3"
173
+ })([ "font-family:inherit;&:focus{box-shadow:0 0 1px 3px ", ";outline:0;&:active{box-shadow:none;}}&:hover{background-color:", ";}" ], E.variables.focusColor, (0,
174
+ E.pick)({
175
+ enterprise: E.variables.backgroundColorHover,
176
+ prisma: E.variables.interactiveColorOverlayHover
177
+ }));
178
+ var V = x()(T()).withConfig({
179
+ displayName: "TreeNodeStyles__StyledExpandLinkClickable",
180
+ componentId: "sc-1rdul18-4"
181
+ })([ "cursor:pointer;color:", ";font-family:inherit;&:hover{background-color:", ";text-decoration:none;}&:focus{box-shadow:", ";&:active{box-shadow:none;}}", "" ], (0,
182
+ E.pick)({
183
+ enterprise: {
184
+ dark: E.variables.accentColorL20,
185
+ light: E.variables.accentColorD20
186
+ },
187
+ prisma: E.variables.interactiveColorPrimary
188
+ }), (0, E.pick)({
189
+ enterprise: E.variables.backgroundColorHover,
190
+ prisma: E.variables.interactiveColorOverlayHover
191
+ }), E.variables.focusShadowInset, (0, E.pick)({
192
+ prisma: (0, O.css)([ "border-radius:", ";" ], E.variables.borderRadius)
193
+ }));
194
+ // CONCATENATED MODULE: ./src/JSONTree/TreeNode.tsx
195
+ function R(e) {
196
+ "@babel/helpers - typeof";
197
+ if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
198
+ R = function e(r) {
199
+ return typeof r;
200
+ };
366
201
  } else {
367
- representation = value;
202
+ R = function e(r) {
203
+ return r && typeof Symbol === "function" && r.constructor === Symbol && r !== Symbol.prototype ? "symbol" : typeof r;
204
+ };
205
+ }
206
+ return R(e);
207
+ }
208
+ function L(e) {
209
+ return J(e) || D(e) || H(e) || M();
210
+ }
211
+ function M() {
212
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
213
+ }
214
+ function H(e, r) {
215
+ if (!e) return;
216
+ if (typeof e === "string") return B(e, r);
217
+ var t = Object.prototype.toString.call(e).slice(8, -1);
218
+ if (t === "Object" && e.constructor) t = e.constructor.name;
219
+ if (t === "Map" || t === "Set") return Array.from(e);
220
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return B(e, r);
221
+ }
222
+ function D(e) {
223
+ if (typeof Symbol !== "undefined" && Symbol.iterator in Object(e)) return Array.from(e);
224
+ }
225
+ function J(e) {
226
+ if (Array.isArray(e)) return B(e);
227
+ }
228
+ function B(e, r) {
229
+ if (r == null || r > e.length) r = e.length;
230
+ for (var t = 0, n = new Array(r); t < r; t++) {
231
+ n[t] = e[t];
232
+ }
233
+ return n;
234
+ }
235
+ function F(e, r) {
236
+ if (!(e instanceof r)) {
237
+ throw new TypeError("Cannot call a class as a function");
368
238
  }
369
- } else if (isEmpty_default()(value)) {
370
- // isObject is true for arrays
371
- representation = isArray_default()(value) ? '[]' : '{}';
372
- } else {
373
- representation = /*#__PURE__*/external_react_default().createElement(JSONTreeNode, {
374
- obj: value,
375
- path: key !== undefined ? [].concat(_toConsumableArray(path), [key]) : _toConsumableArray(path) // Prevent undefined from being added to path for single value edge-case
376
- ,
377
- defaultOpen: expandChildren === true,
378
- expandChildren: expandChildren,
379
- onClickKey: onClickKey,
380
- onClickValue: onClickValue,
381
- indent: indent,
382
- indentLevel: indentLevel + 1,
383
- overflow: overflow
239
+ }
240
+ function U(e, r) {
241
+ for (var t = 0; t < r.length; t++) {
242
+ var n = r[t];
243
+ n.enumerable = n.enumerable || false;
244
+ n.configurable = true;
245
+ if ("value" in n) n.writable = true;
246
+ Object.defineProperty(e, n.key, n);
247
+ }
248
+ }
249
+ function $(e, r, t) {
250
+ if (r) U(e.prototype, r);
251
+ if (t) U(e, t);
252
+ return e;
253
+ }
254
+ function W(e, r) {
255
+ if (typeof r !== "function" && r !== null) {
256
+ throw new TypeError("Super expression must either be null or a function");
257
+ }
258
+ e.prototype = Object.create(r && r.prototype, {
259
+ constructor: {
260
+ value: e,
261
+ writable: true,
262
+ configurable: true
263
+ }
384
264
  });
385
- } // for string or number representations, apply styles and optional interactivity
386
-
387
-
388
- if (isString_default()(representation) || isNumber_default()(representation)) {
389
- var valueType = value === null ? 'null' : // TS: bigint, function, symbol are prevented by JSONElement type
390
- _typeof(value);
391
-
392
- if (onClickValue) {
393
- return /*#__PURE__*/external_react_default().createElement(StyledValueInteractiveClickable, {
394
- valueType: valueType,
395
- overflowType: overflow,
396
- onClick: function onClick(e) {
397
- _this3.handleClickValue(e, key);
265
+ if (r) z(e, r);
266
+ }
267
+ function z(e, r) {
268
+ z = Object.setPrototypeOf || function e(r, t) {
269
+ r.__proto__ = t;
270
+ return r;
271
+ };
272
+ return z(e, r);
273
+ }
274
+ function G(e) {
275
+ var r = Y();
276
+ return function t() {
277
+ var n = Z(e), o;
278
+ if (r) {
279
+ var a = Z(this).constructor;
280
+ o = Reflect.construct(n, arguments, a);
281
+ } else {
282
+ o = n.apply(this, arguments);
398
283
  }
399
- }, representation);
284
+ return Q(this, o);
285
+ };
286
+ }
287
+ function Q(e, r) {
288
+ if (r && (R(r) === "object" || typeof r === "function")) {
289
+ return r;
400
290
  }
401
-
402
- return /*#__PURE__*/external_react_default().createElement(StyledValue, {
403
- valueType: valueType,
404
- overflowType: overflow
405
- }, representation);
406
- }
407
-
408
- return representation;
291
+ return X(e);
409
292
  }
410
- }, {
411
- key: "renderKey",
412
- value: function renderKey(key) {
413
- var _this4 = this;
414
-
415
- var onClickKey = this.props.onClickKey;
416
-
417
- if (onClickKey) {
418
- return /*#__PURE__*/external_react_default().createElement("span", null, /*#__PURE__*/external_react_default().createElement(StyledPropertyInteractiveClickable, {
419
- onClick: function onClick(e) {
420
- _this4.handleClickKey(e, key);
421
- }
422
- }, key), ":", ' ');
423
- }
424
-
425
- return /*#__PURE__*/external_react_default().createElement("span", null, /*#__PURE__*/external_react_default().createElement(StyledProperty, null, key), ":", ' ');
293
+ function X(e) {
294
+ if (e === void 0) {
295
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
296
+ }
297
+ return e;
426
298
  }
427
- }, {
428
- key: "renderObject",
429
- value: function renderObject() {
430
- var _this5 = this;
431
-
432
- var _this$props4 = this.props,
433
- obj = _this$props4.obj,
434
- path = _this$props4.path;
435
-
436
- if (isObject_default()(obj) || isArray_default()(obj)) {
437
- return keys_default()(obj).map(function (mapKey, index, properties) {
438
- var value = obj[mapKey]; // TS: should be safe based on (recursive) JSONElement type
439
-
440
- var key = isArray_default()(obj) ? parseInt(mapKey, 10) : mapKey;
441
- var propertyDataPath = path.length === 0 ? ".".concat(key) : ".".concat(path.join('.'), ".").concat(key);
442
-
443
- var representation = _this5.renderValue({
444
- key: key,
445
- value: value
446
- });
447
-
448
- var propertyElement = !isArray_default()(obj) ? _this5.renderKey(key) : undefined;
449
- return /*#__PURE__*/external_react_default().createElement("div", {
450
- key: propertyDataPath,
451
- role: "treeitem",
452
- "data-test-path": propertyDataPath
453
- }, _this5.regularIndent, propertyElement, representation, index + 1 < properties.length ? ',' : null);
454
- });
455
- } // edge case: a single number/string/boolean being rendered (still valid JSON)
456
-
457
-
458
- return /*#__PURE__*/external_react_default().createElement("div", {
459
- role: "treeitem",
460
- "data-test-path": "."
461
- }, this.renderValue({
462
- value: obj
463
- }));
299
+ function Y() {
300
+ if (typeof Reflect === "undefined" || !Reflect.construct) return false;
301
+ if (Reflect.construct.sham) return false;
302
+ if (typeof Proxy === "function") return true;
303
+ try {
304
+ Date.prototype.toString.call(Reflect.construct(Date, [], (function() {})));
305
+ return true;
306
+ } catch (e) {
307
+ return false;
308
+ }
464
309
  }
465
- }, {
466
- key: "render",
467
- value: function render() {
468
- var open = this.state.open;
469
- var obj = this.props.obj;
470
- var isExpandable = isObject_default()(obj) && !isEmpty_default()(obj) || isArray_default()(obj) && obj.length > 0;
471
- return /*#__PURE__*/external_react_default().createElement("span", {
472
- "data-test": isExpandable ? 'node' : null,
473
- "data-test-expanded": isExpandable ? this.state.open : null
474
- }, isExpandable && (isArray_default()(obj) ? '[' : '{'), isExpandable && this.renderExpandLink(), !isExpandable || open ? this.renderObject() : null, !isExpandable || open ? this.closingIndent : null, isExpandable && (isArray_default()(obj) ? ']' : '}'));
310
+ function Z(e) {
311
+ Z = Object.setPrototypeOf ? Object.getPrototypeOf : function e(r) {
312
+ return r.__proto__ || Object.getPrototypeOf(r);
313
+ };
314
+ return Z(e);
475
315
  }
476
- }]);
477
-
478
- return JSONTreeNode;
479
- }(external_react_namespaceObject.Component);
480
-
481
- _defineProperty(JSONTreeNode, "propTypes", propTypes);
482
-
483
- _defineProperty(JSONTreeNode, "defaultProps", defaultProps);
484
-
485
- /* harmony default export */ const TreeNode = (JSONTreeNode);
486
- ;// CONCATENATED MODULE: ./src/JSONTree/JSONTreeStyles.ts
487
-
488
-
489
- var base = (0,external_styled_components_namespaceObject.css)(["", ";font-family:", ";"], themes_namespaceObject.mixins.reset('block'), themes_namespaceObject.variables.monoFontFamily);
490
- var StyledScrollCode = external_styled_components_default().code.withConfig({
491
- displayName: "JSONTreeStyles__StyledScrollCode",
492
- componentId: "vrdt21-0"
493
- })(["", ";overflow-x:auto;white-space:nowrap;"], base);
494
- var StyledWrapCode = external_styled_components_default().code.withConfig({
495
- displayName: "JSONTreeStyles__StyledWrapCode",
496
- componentId: "vrdt21-1"
497
- })(["", ";white-space:pre-wrap;"], base);
498
-
499
- ;// CONCATENATED MODULE: ./src/JSONTree/JSONTree.tsx
500
- 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); }
501
-
502
- 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; }
503
-
504
- 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; }
505
-
506
-
507
-
508
-
509
-
510
-
511
- var JSONTree_propTypes = {
512
- elementRef: external_prop_types_default().oneOfType([(external_prop_types_default()).func, (external_prop_types_default()).object]),
513
- json: external_prop_types_default().oneOfType([(external_prop_types_default()).string, (external_prop_types_default()).object, (external_prop_types_default()).array, (external_prop_types_default()).number, (external_prop_types_default()).bool]).isRequired,
514
- indent: (external_prop_types_default()).number,
515
- onClickKey: (external_prop_types_default()).func,
516
- onClickValue: (external_prop_types_default()).func,
517
- expandChildren: external_prop_types_default().oneOfType([(external_prop_types_default()).bool, external_prop_types_default().oneOf(['withShiftModifier'])]),
518
- overflow: external_prop_types_default().oneOf(['wrap', 'scroll'])
519
- };
520
-
521
- /**
316
+ function ee(e, r, t) {
317
+ if (r in e) {
318
+ Object.defineProperty(e, r, {
319
+ value: t,
320
+ enumerable: true,
321
+ configurable: true,
322
+ writable: true
323
+ });
324
+ } else {
325
+ e[r] = t;
326
+ }
327
+ return e;
328
+ }
329
+ var re = {
330
+ path: a().arrayOf(a().oneOfType([ a().number, a().string ])),
331
+ defaultOpen: a().bool,
332
+ expandChildren: a().oneOfType([ a().bool, a().oneOf([ "withShiftModifier" ]) ]),
333
+ indent: a().number,
334
+ indentLevel: a().number,
335
+ obj: a().oneOfType([ a().object, a().array, a().number, a().string, a().bool ]).isRequired,
336
+ onClickKey: a().func,
337
+ onClickValue: a().func,
338
+ overflow: a().oneOf([ "wrap", "scroll" ]),
339
+ shift: a().bool
340
+ };
341
+ var te = {
342
+ path: [],
343
+ defaultOpen: false,
344
+ expandChildren: false,
345
+ indent: 4,
346
+ indentLevel: 1,
347
+ overflow: "scroll"
348
+ };
349
+ /**
350
+ * An internal container class for expandable tree nodes (objects and arrays).
351
+ */ var ne = function(e) {
352
+ W(t, e);
353
+ var r = G(t);
354
+ function t(e) {
355
+ var n;
356
+ F(this, t);
357
+ n = r.call(this, e);
358
+ ee(X(n), "regularIndent", void 0);
359
+ ee(X(n), "closingIndent", void 0);
360
+ ee(X(n), "mutableShift", void 0);
361
+ ee(X(n), "handleExpandClick", (function(e) {
362
+ if (n.props.expandChildren === "withShiftModifier") {
363
+ var r = n.context.updateShift;
364
+ if (r != null) {
365
+ n.mutableShift = e.shiftKey;
366
+ r(e.shiftKey);
367
+ }
368
+ }
369
+ n.setState((function(e) {
370
+ return {
371
+ open: !e.open
372
+ };
373
+ }));
374
+ }));
375
+ ee(X(n), "handleClickKey", (function(e, r) {
376
+ var t, o;
377
+ var a = n.props.path;
378
+ // When rendering a single value key is not present, here we prevent `[undefined]` in path
379
+ var i = r !== undefined ? [].concat(L(a), [ r ]) : L(a);
380
+ var l = ".".concat(i.join("."));
381
+ (t = (o = n.props).onClickKey) === null || t === void 0 ? void 0 : t.call(o, e, {
382
+ key: l,
383
+ keyPath: i
384
+ });
385
+ }));
386
+ ee(X(n), "handleClickValue", (function(e, r) {
387
+ var t, o;
388
+ var a = n.props.path;
389
+ // When rendering a single value key is not present, here we prevent `[undefined]` in path
390
+ var i = r !== undefined ? [].concat(L(a), [ r ]) : L(a);
391
+ var l = ".".concat(i.join("."));
392
+ (t = (o = n.props).onClickValue) === null || t === void 0 ? void 0 : t.call(o, e, {
393
+ key: l,
394
+ keyPath: i,
395
+ value: e.target.textContent
396
+ });
397
+ }));
398
+ var o = n.props.shift;
399
+ n.mutableShift = o;
400
+ if (n.props.expandChildren === "withShiftModifier" && n.mutableShift != null) {
401
+ n.state = n.mutableShift ? {
402
+ open: true
403
+ } : {
404
+ open: false
405
+ };
406
+ } else {
407
+ n.state = {
408
+ open: e.defaultOpen
409
+ };
410
+ }
411
+ n.regularIndent = f()(Array(e.indentLevel), S()(" ", e.indent));
412
+ n.closingIndent = f()(Array(e.indentLevel - 1), S()(" ", e.indent));
413
+ return n;
414
+ }
415
+ $(t, [ {
416
+ key: "renderExpandLink",
417
+ value: function e() {
418
+ var r = this;
419
+
420
+ return n().createElement(V, {
421
+ onClick: function e(t) {
422
+ r.handleExpandClick(t);
423
+ },
424
+ "aria-expanded": this.state.open,
425
+ "data-test": "toggle"
426
+ }, " ", this.state.open ? "[-]" : "[+]", " ");
427
+ }
428
+ }, {
429
+ key: "renderValue",
430
+ value: function e(r) {
431
+ var o = this;
432
+ var a = r.value, i = r.key;
433
+ var u = this.props, c = u.expandChildren, s = u.indent, f = u.indentLevel, p = u.onClickKey, v = u.onClickValue, b = u.overflow, m = u.path, g = u.shift;
434
+ var w = null;
435
+ // determine if value should be represented as a simple string
436
+ // or as a child node
437
+ if (!k()(a)) {
438
+ // isObject is true for arrays
439
+ if (typeof a === "string") {
440
+ w = '"'.concat(a, '"');
441
+ } else if (typeof a === "boolean") {
442
+ w = a.toString();
443
+ } else if (a === null) {
444
+ w = "null";
445
+ } else {
446
+ w = a;
447
+ }
448
+ } else if (y()(a)) {
449
+ // isObject is true for arrays
450
+ w = d()(a) ? "[]" : "{}";
451
+ } else {
452
+ w = n().createElement(t, {
453
+ obj: a,
454
+ path: i !== undefined ? [].concat(L(m), [ i ]) : L(m),
455
+ defaultOpen: c === true,
456
+ expandChildren: c,
457
+ onClickKey: p,
458
+ onClickValue: v,
459
+ indent: s,
460
+ indentLevel: f + 1,
461
+ overflow: b,
462
+ shift: g
463
+ });
464
+ }
465
+ // for string or number representations, apply styles and optional interactivity
466
+ if (l()(w) || h()(w)) {
467
+ var C = a === null ? "null" : // TS: bigint, function, symbol are prevented by JSONElement type
468
+ R(a);
469
+ if (v) {
470
+
471
+ return n().createElement(A, {
472
+ valueType: C,
473
+ overflowType: b,
474
+ onClick: function e(r) {
475
+ o.handleClickValue(r, i);
476
+ }
477
+ }, w);
478
+ }
479
+
480
+ return n().createElement(N, {
481
+ valueType: C,
482
+ overflowType: b
483
+ }, w);
484
+ }
485
+ return w;
486
+ }
487
+ }, {
488
+ key: "renderKey",
489
+ value: function e(r) {
490
+ var t = this;
491
+ var o = this.props.onClickKey;
492
+ if (o) {
493
+
494
+ return n().createElement("span", null, n().createElement(K, {
495
+ onClick: function e(n) {
496
+ t.handleClickKey(n, r);
497
+ }
498
+ }, r), ":", " ");
499
+ }
500
+
501
+ return n().createElement("span", null, n().createElement(q, null, r), ":", " ");
502
+ }
503
+ }, {
504
+ key: "renderObject",
505
+ value: function e() {
506
+ var r = this;
507
+ var t = this.props, o = t.obj, a = t.path;
508
+ if (k()(o) || d()(o)) {
509
+ return w()(o).map((function(e, t, i) {
510
+ var l = o[e];
511
+ // TS: should be safe based on (recursive) JSONElement type
512
+ var u = d()(o) ? parseInt(e, 10) : e;
513
+ var c = a.length === 0 ? ".".concat(u) : ".".concat(a.join("."), ".").concat(u);
514
+ var s = r.renderValue({
515
+ key: u,
516
+ value: l
517
+ });
518
+ var f = !d()(o) ? r.renderKey(u) : undefined;
519
+
520
+ return n().createElement("div", {
521
+ key: c,
522
+ role: "treeitem",
523
+ "data-test-path": c
524
+ }, r.regularIndent, f, s, t + 1 < i.length ? "," : null);
525
+ }));
526
+ }
527
+ // edge case: a single number/string/boolean being rendered (still valid JSON)
528
+
529
+ return n().createElement("div", {
530
+ role: "treeitem",
531
+ "data-test-path": "."
532
+ }, this.renderValue({
533
+ value: o
534
+ }));
535
+ }
536
+ }, {
537
+ key: "render",
538
+ value: function e() {
539
+ var r = this.state.open;
540
+ var t = this.props.obj;
541
+ var o = k()(t) && !y()(t) || d()(t) && t.length > 0;
542
+
543
+ return n().createElement("span", {
544
+ "data-test": o ? "node" : null,
545
+ "data-test-expanded": o ? this.state.open : null
546
+ }, o && (d()(t) ? "[" : "{"), o && this.renderExpandLink(), !o || r ? this.renderObject() : null, !o || r ? this.closingIndent : null, o && (d()(t) ? "]" : "}"));
547
+ }
548
+ } ]);
549
+ return t;
550
+ }(t.Component);
551
+ ee(ne, "contextType", c);
552
+ ee(ne, "propTypes", re);
553
+ ee(ne, "defaultProps", te);
554
+ /* harmony default export */ const oe = ne;
555
+ // CONCATENATED MODULE: ./src/JSONTree/JSONTreeStyles.ts
556
+ var ae = (0, O.css)([ "", ";font-family:", ";" ], E.mixins.reset("block"), E.variables.monoFontFamily);
557
+ var ie = x().code.withConfig({
558
+ displayName: "JSONTreeStyles__StyledScrollCode",
559
+ componentId: "vrdt21-0"
560
+ })([ "", ";overflow-x:auto;white-space:nowrap;" ], ae);
561
+ var le = x().code.withConfig({
562
+ displayName: "JSONTreeStyles__StyledWrapCode",
563
+ componentId: "vrdt21-1"
564
+ })([ "", ";white-space:pre-wrap;" ], ae);
565
+ // CONCATENATED MODULE: ./src/JSONTree/JSONTree.tsx
566
+ function ue() {
567
+ ue = Object.assign || function(e) {
568
+ for (var r = 1; r < arguments.length; r++) {
569
+ var t = arguments[r];
570
+ for (var n in t) {
571
+ if (Object.prototype.hasOwnProperty.call(t, n)) {
572
+ e[n] = t[n];
573
+ }
574
+ }
575
+ }
576
+ return e;
577
+ };
578
+ return ue.apply(this, arguments);
579
+ }
580
+ function ce(e, r) {
581
+ return ve(e) || de(e, r) || fe(e, r) || se();
582
+ }
583
+ function se() {
584
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
585
+ }
586
+ function fe(e, r) {
587
+ if (!e) return;
588
+ if (typeof e === "string") return pe(e, r);
589
+ var t = Object.prototype.toString.call(e).slice(8, -1);
590
+ if (t === "Object" && e.constructor) t = e.constructor.name;
591
+ if (t === "Map" || t === "Set") return Array.from(e);
592
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return pe(e, r);
593
+ }
594
+ function pe(e, r) {
595
+ if (r == null || r > e.length) r = e.length;
596
+ for (var t = 0, n = new Array(r); t < r; t++) {
597
+ n[t] = e[t];
598
+ }
599
+ return n;
600
+ }
601
+ function de(e, r) {
602
+ if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(e))) return;
603
+ var t = [];
604
+ var n = true;
605
+ var o = false;
606
+ var a = undefined;
607
+ try {
608
+ for (var i = e[Symbol.iterator](), l; !(n = (l = i.next()).done); n = true) {
609
+ t.push(l.value);
610
+ if (r && t.length === r) break;
611
+ }
612
+ } catch (e) {
613
+ o = true;
614
+ a = e;
615
+ } finally {
616
+ try {
617
+ if (!n && i["return"] != null) i["return"]();
618
+ } finally {
619
+ if (o) throw a;
620
+ }
621
+ }
622
+ return t;
623
+ }
624
+ function ve(e) {
625
+ if (Array.isArray(e)) return e;
626
+ }
627
+ function ye(e, r) {
628
+ if (e == null) return {};
629
+ var t = be(e, r);
630
+ var n, o;
631
+ if (Object.getOwnPropertySymbols) {
632
+ var a = Object.getOwnPropertySymbols(e);
633
+ for (o = 0; o < a.length; o++) {
634
+ n = a[o];
635
+ if (r.indexOf(n) >= 0) continue;
636
+ if (!Object.prototype.propertyIsEnumerable.call(e, n)) continue;
637
+ t[n] = e[n];
638
+ }
639
+ }
640
+ return t;
641
+ }
642
+ function be(e, r) {
643
+ if (e == null) return {};
644
+ var t = {};
645
+ var n = Object.keys(e);
646
+ var o, a;
647
+ for (a = 0; a < n.length; a++) {
648
+ o = n[a];
649
+ if (r.indexOf(o) >= 0) continue;
650
+ t[o] = e[o];
651
+ }
652
+ return t;
653
+ }
654
+ var he = {
655
+ elementRef: a().oneOfType([ a().func, a().object ]),
656
+ json: a().oneOfType([ a().string, a().object, a().array, a().number, a().bool ]).isRequired,
657
+ indent: a().number,
658
+ onClickKey: a().func,
659
+ onClickValue: a().func,
660
+ expandChildren: a().oneOfType([ a().bool, a().oneOf([ "withShiftModifier" ]) ]),
661
+ overflow: a().oneOf([ "wrap", "scroll" ])
662
+ };
663
+ /**
522
664
  * Used to visualize a JSON string.
523
- */
524
- function JSONTree(_ref) {
525
- var elementRef = _ref.elementRef,
526
- _ref$expandChildren = _ref.expandChildren,
527
- expandChildren = _ref$expandChildren === void 0 ? false : _ref$expandChildren,
528
- _ref$indent = _ref.indent,
529
- indent = _ref$indent === void 0 ? 4 : _ref$indent,
530
- json = _ref.json,
531
- onClickKey = _ref.onClickKey,
532
- onClickValue = _ref.onClickValue,
533
- _ref$overflow = _ref.overflow,
534
- overflow = _ref$overflow === void 0 ? 'scroll' : _ref$overflow,
535
- otherProps = _objectWithoutProperties(_ref, ["elementRef", "expandChildren", "indent", "json", "onClickKey", "onClickValue", "overflow"]);
536
-
537
- // @docs-props-type JSONTreePropsBase
538
- var obj = isString_default()(json) ? JSON.parse(json) : json;
539
- var StyledCode = overflow === 'wrap' ? StyledWrapCode : StyledScrollCode;
540
- return /*#__PURE__*/external_react_default().createElement(StyledCode, _extends({
541
- "data-language": "language-json",
542
- "data-test": "json-tree",
543
- ref: elementRef,
544
- role: "tree"
545
- }, otherProps), /*#__PURE__*/external_react_default().createElement(TreeNode, {
546
- defaultOpen: true,
547
- expandChildren: expandChildren,
548
- indent: indent,
549
- obj: obj,
550
- onClickKey: onClickKey,
551
- onClickValue: onClickValue,
552
- overflow: overflow
553
- }));
554
- }
555
-
556
- JSONTree.propTypes = JSONTree_propTypes;
557
- /* harmony default export */ const JSONTree_JSONTree = (JSONTree);
558
- ;// CONCATENATED MODULE: ./src/JSONTree/index.ts
559
-
560
-
561
- module.exports = __webpack_exports__;
562
- /******/ })()
563
- ;
665
+ */ function me(e) {
666
+ var r = e.elementRef, o = e.expandChildren, a = o === void 0 ? false : o, i = e.indent, u = i === void 0 ? 4 : i, s = e.json, f = e.onClickKey, p = e.onClickValue, d = e.overflow, v = d === void 0 ? "scroll" : d, y = ye(e, [ "elementRef", "expandChildren", "indent", "json", "onClickKey", "onClickValue", "overflow" ]);
667
+ // @docs-props-type JSONTreePropsBase
668
+ var b = l()(s) ? JSON.parse(s) : s;
669
+ var h = v === "wrap" ? le : ie;
670
+ var m = (0, t.useState)(undefined), k = ce(m, 2), g = k[0], w = k[1];
671
+ var C = function e(r) {
672
+ w(r);
673
+ };
674
+ // eslint-disable-next-line react-perf/jsx-no-new-object-as-prop
675
+ var S = {
676
+ shift: g,
677
+ updateShift: C
678
+ };
679
+
680
+ return n().createElement(h, ue({
681
+ "data-language": "language-json",
682
+ "data-test": "json-tree",
683
+ ref: r,
684
+ role: "tree"
685
+ }, y), n().createElement(c.Provider, {
686
+ value: S
687
+ }, n().createElement(oe, {
688
+ defaultOpen: true,
689
+ expandChildren: a,
690
+ indent: u,
691
+ obj: b,
692
+ onClickKey: f,
693
+ onClickValue: p,
694
+ overflow: v,
695
+ shift: g
696
+ })));
697
+ }
698
+ me.propTypes = he;
699
+ /* harmony default export */ const ke = me;
700
+ // CONCATENATED MODULE: ./src/JSONTree/index.ts
701
+ module.exports = r;
702
+ /******/})();