@splunk/react-ui 4.22.1 → 4.24.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 (45) hide show
  1. package/Breadcrumbs.js +99 -124
  2. package/CHANGELOG.md +26 -0
  3. package/Color.js +289 -293
  4. package/ComboBox.js +49 -37
  5. package/DualListbox.js +2 -2
  6. package/File.js +15 -15
  7. package/JSONTree.js +268 -250
  8. package/MIGRATION.mdx +14 -0
  9. package/Menu.js +643 -472
  10. package/Modal.js +261 -222
  11. package/Multiselect.js +793 -779
  12. package/ResultsMenu.js +863 -148
  13. package/Search.js +3 -1
  14. package/Select.js +47 -36
  15. package/TabBar.js +2 -2
  16. package/Table.js +2 -2
  17. package/Tree.js +617 -0
  18. package/package.json +5 -4
  19. package/types/src/Breadcrumbs/Breadcrumbs.d.ts +7 -1
  20. package/types/src/Breadcrumbs/Item.d.ts +8 -2
  21. package/types/src/ComboBox/ComboBox.d.ts +6 -0
  22. package/types/src/Dropdown/Dropdown.d.ts +2 -2
  23. package/types/src/JSONTree/JSONTree.d.ts +23 -13
  24. package/types/src/JSONTree/TreeNode.d.ts +4 -3
  25. package/types/src/JSONTree/docs/examples/ExpandChildrenOnShiftKey.d.ts +1 -0
  26. package/types/src/Menu/Menu.d.ts +14 -1
  27. package/types/src/Modal/Modal.d.ts +6 -0
  28. package/types/src/Multiselect/Compact.d.ts +7 -1
  29. package/types/src/Multiselect/Multiselect.d.ts +8 -1
  30. package/types/src/ResultsMenu/ResultsMenu.d.ts +53 -1
  31. package/types/src/ResultsMenu/VirtualizedResultsMenu/VirtualizedItem.d.ts +9 -0
  32. package/types/src/ResultsMenu/VirtualizedResultsMenu/VirtualizedResultsMenu.d.ts +33 -0
  33. package/types/src/ResultsMenu/VirtualizedResultsMenu/groupChildren.d.ts +16 -0
  34. package/types/src/ResultsMenu/VirtualizedResultsMenu/index.d.ts +3 -0
  35. package/types/src/ResultsMenu/VirtualizedResultsMenu/injectVirtualizedItem.d.ts +21 -0
  36. package/types/src/ResultsMenu/index.d.ts +2 -1
  37. package/types/src/Select/Select.d.ts +2 -0
  38. package/types/src/Select/SelectBase.d.ts +7 -1
  39. package/types/src/Tree/Tree.d.ts +24 -0
  40. package/types/src/Tree/TreeContext.d.ts +13 -0
  41. package/types/src/Tree/TreeItem.d.ts +31 -0
  42. package/types/src/Tree/index.d.ts +3 -0
  43. package/types/src/Tree/treeUtils.d.ts +29 -0
  44. package/types/src/JSONTree/docs/examples/WithShiftModifier.d.ts +0 -1
  45. /package/types/src/Card/docs/examples/{prisma/Actions.d.ts → Actions.d.ts} +0 -0
package/Search.js CHANGED
@@ -683,7 +683,9 @@
683
683
  return e;
684
684
  }
685
685
  if (r === $) {
686
- Se.current = e.props.value;
686
+ if (!e.props.disabled) {
687
+ Se.current = e.props.value;
688
+ }
687
689
 
688
690
  return (0, t.cloneElement)(e, {
689
691
  ref: Ve,
package/Select.js CHANGED
@@ -134,14 +134,14 @@
134
134
  const $ = require("@splunk/react-icons/CaretSmallDown");
135
135
  var H = e.n($);
136
136
  // CONCATENATED MODULE: external "@splunk/react-icons/enterprise/Caret"
137
- const W = require("@splunk/react-icons/enterprise/Caret");
138
- var z = e.n(W);
137
+ const z = require("@splunk/react-icons/enterprise/Caret");
138
+ var W = e.n(z);
139
139
  // CONCATENATED MODULE: external "@splunk/themes"
140
140
  const U = require("@splunk/themes");
141
141
  // CONCATENATED MODULE: ./src/Select/icons/CaretSmallDown.tsx
142
142
  var G = function e() {
143
143
  var t = (0, U.useSplunkTheme)(), n = t.isEnterprise;
144
- var o = n ? r().createElement(z(), {
144
+ var o = n ? r().createElement(W(), {
145
145
  screenReaderText: null,
146
146
  hideDefaultTooltip: true,
147
147
  size: .5
@@ -629,7 +629,7 @@
629
629
  };
630
630
  var Fe = r().forwardRef((function(e, t) {
631
631
  var n = e.active, o = e.id, i = e.onClick, a = e.selectAllLabel, l = e.totalCount, s = e.changedToggle, u = e.selected;
632
- // When toggle is changed the total count is not displayed anymore so the count is now shown in the Select All menu item
632
+ // When toggle is changed the total count is not displayed anymore so the count is now shown in the Select all menu item
633
633
  var p = s ? " (".concat(l === null || l === void 0 ? void 0 : l.toString(), ")") : "";
634
634
 
635
635
  return r().createElement(Be, {
@@ -667,9 +667,9 @@
667
667
  /* harmony default export */ const $e = Fe;
668
668
  // CONCATENATED MODULE: external "@splunk/react-ui/Button"
669
669
  const He = require("@splunk/react-ui/Button");
670
- var We = e.n(He);
670
+ var ze = e.n(He);
671
671
  // CONCATENATED MODULE: ./src/Select/SelectBaseStyles.ts
672
- var ze = we()(We()).withConfig({
672
+ var We = we()(ze()).withConfig({
673
673
  displayName: "SelectBaseStyles__StyledButton",
674
674
  componentId: "sc-16cj7sk-0"
675
675
  })([ "&[data-inline]{width:", ";}", "" ], (function(e) {
@@ -1146,7 +1146,9 @@
1146
1146
  showSelectedValuesFirst: i().oneOf([ "nextOpen", "immediately", "never" ]),
1147
1147
  suffixLabel: i().string,
1148
1148
  tabConfirmsNewValue: i().bool,
1149
- values: i().array
1149
+ values: i().array,
1150
+ /** @private. */
1151
+ virtualization: i().number
1150
1152
  };
1151
1153
  var Tt = {
1152
1154
  allowKeyMatching: true,
@@ -1552,7 +1554,7 @@
1552
1554
  }), !!C && r().createElement(Ue, null, C), _ || g, r().createElement(Ge, null, r().createElement(J, null)));
1553
1555
  }
1554
1556
 
1555
- return r().createElement(ze, at({}, T, {
1557
+ return r().createElement(We, at({}, T, {
1556
1558
  $multiple: y,
1557
1559
  appearance: l,
1558
1560
  label: _,
@@ -1921,12 +1923,12 @@
1921
1923
  "aria-label": f,
1922
1924
  onClick: this.handleSelectAll,
1923
1925
  "data-test": "select-all"
1924
- }, i ? (0, c._)("Select All Matches") : (0, c._)("Select All")), r().createElement(Ye, {
1926
+ }, i ? (0, c._)("Select all Matches") : (0, c._)("Select all")), r().createElement(Ye, {
1925
1927
  $disabled: this.optionSelection === "none",
1926
1928
  "aria-label": d,
1927
1929
  onClick: this.handleClearAll,
1928
1930
  "data-test": "clear-all"
1929
- }, i ? (0, c._)("Clear All Matches") : (0, c._)("Clear All")));
1931
+ }, i ? (0, c._)("Clear all Matches") : (0, c._)("Clear all")));
1930
1932
  return this.hasFilter() && r().createElement("div", {
1931
1933
  key: "controls"
1932
1934
  }, r().createElement(Je, {
@@ -1957,19 +1959,19 @@
1957
1959
  key: "render",
1958
1960
  value: function e() {
1959
1961
  var t, o = this;
1960
- var i = this.props, a = i.children, l = i.defaultPlacement, c = i.inputId, s = i.multiple, u = i.repositionMode;
1961
- var p = this.hasFilter();
1962
- var d = (t = this.getCurrentValues()) !== null && t !== void 0 ? t : [];
1963
- var v = n.Children.toArray(a);
1964
- var h = d.some((function(e) {
1965
- var t = f()(v, (function(t) {
1962
+ var i = this.props, a = i.children, l = i.defaultPlacement, c = i.inputId, s = i.multiple, u = i.repositionMode, p = i.virtualization;
1963
+ var d = this.hasFilter();
1964
+ var v = (t = this.getCurrentValues()) !== null && t !== void 0 ? t : [];
1965
+ var h = n.Children.toArray(a);
1966
+ var b = v.some((function(e) {
1967
+ var t = f()(h, (function(t) {
1966
1968
  return Dt(t) && t.props.value === e;
1967
1969
  }));
1968
1970
  return t && !t.props.disabled;
1969
1971
  }));
1970
- var b = this.createChildren();
1971
- var m = this.createToggle();
1972
- var y = function e(t) {
1972
+ var m = this.createChildren();
1973
+ var y = this.createToggle();
1974
+ var g = function e(t) {
1973
1975
  var n = t.anchorWidth, i = t.maxHeight, a = t.placement;
1974
1976
  var l = Vt({
1975
1977
  anchorWidth: n,
@@ -1977,13 +1979,12 @@
1977
1979
  maxHeight: i,
1978
1980
  menuStyle: o.props.menuStyle
1979
1981
  });
1980
- var c = d.length > 0 && !h && !o.hasFilter() ? 0 : undefined;
1981
-
1982
- return r().createElement(B(), at({
1982
+ var c = v.length > 0 && !b && !o.hasFilter() ? 0 : undefined;
1983
+ var u = jt(jt({
1983
1984
  "aria-multiselectable": s || undefined,
1984
1985
  childrenStart: o.renderControls({
1985
1986
  placement: a,
1986
- hasChildren: !!b.length
1987
+ hasChildren: !!m.length
1987
1988
  }),
1988
1989
  controlledExternally: o.hasFilter(),
1989
1990
  placement: a !== null && a !== void 0 ? a : undefined,
@@ -1991,27 +1992,35 @@
1991
1992
  "data-test": "results-menu",
1992
1993
  isLoading: o.props.isLoadingOptions,
1993
1994
  id: o.menuId
1994
- }, I()(o.props, "noOptionsMessage", "footerMessage", "animateLoading", "loadingMessage", "onScroll"), {
1995
+ }, I()(o.props, "noOptionsMessage", "footerMessage", "animateLoading", "loadingMessage", "onScroll")), {}, {
1995
1996
  style: l,
1996
1997
  tabIndex: c
1997
- }), b);
1998
+ });
1999
+ if (p) {
2000
+
2001
+ return r().createElement(N.VirtualizedResultsMenu, at({
2002
+ virtualization: p
2003
+ }, u), m);
2004
+ }
2005
+
2006
+ return r().createElement(B(), u, m);
1998
2007
  };
1999
2008
 
2000
2009
  return r().createElement(V(), {
2001
2010
  closeReasons: Rt,
2002
2011
  inputId: c,
2003
- toggle: m,
2012
+ toggle: y,
2004
2013
  onRequestOpen: this.handleRequestOpen,
2005
2014
  onRequestClose: this.handleRequestClose,
2006
2015
  open: this.state.open,
2007
2016
  openWithArrowKeys: true,
2008
2017
  repositionMode: u,
2009
- defaultPlacement: p ? l : undefined,
2018
+ defaultPlacement: d ? l : undefined,
2010
2019
  canCoverAnchor: it().innerHeight < 500,
2011
2020
  ref: this.handleDropdownMount,
2012
2021
  retainFocus: false,
2013
- takeFocus: d.length === 0 || d.length > 0 && !h || !!p
2014
- }, y);
2022
+ takeFocus: v.length === 0 || v.length > 0 && !b || !!d
2023
+ }, g);
2015
2024
  }
2016
2025
  } ]);
2017
2026
  return o;
@@ -2070,7 +2079,7 @@
2070
2079
  if (n) $t(e, n);
2071
2080
  return e;
2072
2081
  }
2073
- function Wt(e, t) {
2082
+ function zt(e, t) {
2074
2083
  if (typeof t !== "function" && t !== null) {
2075
2084
  throw new TypeError("Super expression must either be null or a function");
2076
2085
  }
@@ -2081,14 +2090,14 @@
2081
2090
  configurable: true
2082
2091
  }
2083
2092
  });
2084
- if (t) zt(e, t);
2093
+ if (t) Wt(e, t);
2085
2094
  }
2086
- function zt(e, t) {
2087
- zt = Object.setPrototypeOf || function e(t, n) {
2095
+ function Wt(e, t) {
2096
+ Wt = Object.setPrototypeOf || function e(t, n) {
2088
2097
  t.__proto__ = n;
2089
2098
  return t;
2090
2099
  };
2091
- return zt(e, t);
2100
+ return Wt(e, t);
2092
2101
  }
2093
2102
  function Ut(e) {
2094
2103
  var t = Qt();
@@ -2179,7 +2188,7 @@
2179
2188
  * [PureComponent](https://reactjs.org/docs/react-api.html#reactpurecomponent)
2180
2189
  * so any elements passed to it must also be pure.
2181
2190
  */ var tn = function(e) {
2182
- Wt(n, e);
2191
+ zt(n, e);
2183
2192
  var t = Ut(n);
2184
2193
  function n() {
2185
2194
  var e;
@@ -2407,7 +2416,9 @@
2407
2416
  prefixLabel: i().string,
2408
2417
  prepend: i().bool,
2409
2418
  suffixLabel: i().string,
2410
- value: i().oneOfType([ i().string, i().number, i().bool ])
2419
+ value: i().oneOfType([ i().string, i().number, i().bool ]),
2420
+ /** @private. */
2421
+ virtualization: i().number
2411
2422
  };
2412
2423
  var On = {
2413
2424
  allowKeyMatching: true,
package/TabBar.js CHANGED
@@ -110,7 +110,7 @@
110
110
  var m = c()(y()).withConfig({
111
111
  displayName: "TabStyles__StyledClickable",
112
112
  componentId: "sc-1ry8mzj-0"
113
- })([ "flex:0 1 auto;display:block;position:relative;line-height:", ";text-align:center;white-space:nowrap;color:", ";&::after{display:block;content:attr(title);font-weight:", ";height:0;color:transparent;overflow:hidden;visibility:hidden;}", ";&[aria-selected='true']{cursor:default;", "}&[aria-selected='false']{box-shadow:none;font-weight:", ";&:hover:not([disabled]){", "}}&:focus{box-shadow:", ";", "}" ], (0,
113
+ })([ "flex:0 1 auto;display:block;position:relative;line-height:", ";text-align:center;white-space:nowrap;color:", ";&::after{display:block;content:attr(data-title);font-weight:", ";height:0;color:transparent;overflow:hidden;visibility:hidden;}", ";&[aria-selected='true']{cursor:default;", "}&[aria-selected='false']{box-shadow:none;font-weight:", ";&:hover:not([disabled]){", "}}&:focus{box-shadow:", ";", "}" ], (0,
114
114
  s.pick)({
115
115
  enterprise: "24px",
116
116
  prisma: "20px"
@@ -549,7 +549,7 @@
549
549
  onMouseLeave: this.handleTooltipClose,
550
550
  role: "tab",
551
551
  tabIndex: r ? undefined : -1,
552
- title: W,
552
+ "data-title": W,
553
553
  to: f
554
554
  }), n().createElement(k, {
555
555
  "data-test": "label",
package/Table.js CHANGED
@@ -816,8 +816,8 @@
816
816
  }
817
817
  }), (0, P.pickVariant)("$appearance", {
818
818
  rowLink: {
819
- enterprise: (0, j.css)([ "color:", ";*:hover > &{cursor:pointer;}" ], P.variables.linkColor),
820
- prisma: (0, j.css)([ "color:", ";*:hover > &{cursor:pointer;}" ], P.variables.contentColorDefault)
819
+ enterprise: (0, j.css)([ "color:", ";*:hover > &&{cursor:pointer;}" ], P.variables.linkColor),
820
+ prisma: (0, j.css)([ "color:", ";*:hover > &&{cursor:pointer;}" ], P.variables.contentColorDefault)
821
821
  },
822
822
  link: {
823
823
  enterprise: (0, j.css)([ "color:", ";&:hover{cursor:pointer;color:{dark:variables.accentColorL20,light:variables.linkColor,};box-shadow:", ";}&:focus{color:{dark:variables.accentColorL20,light:variables.focusColor,};box-shadow:", ";}" ], P.variables.linkColor, P.variables.focusShadowInset, P.variables.focusShadowInset)