@automattic/vip-design-system 2.1.0 → 2.3.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 (101) hide show
  1. package/.eslintrc.js +3 -0
  2. package/build/system/Accordion/Accordion.test.d.ts +0 -1
  3. package/build/system/Accordion/Accordion.test.js +23 -12
  4. package/build/system/Avatar/Avatar.d.ts +0 -1
  5. package/build/system/Avatar/Avatar.js +9 -17
  6. package/build/system/Avatar/Avatar.stories.d.ts +2 -1
  7. package/build/system/Avatar/Avatar.stories.js +19 -2
  8. package/build/system/Button/Button.d.ts +2 -0
  9. package/build/system/Button/Button.js +6 -15
  10. package/build/system/Button/Button.stories.js +86 -67
  11. package/build/system/Card/Card.js +1 -2
  12. package/build/system/Drawer/Drawer.d.ts +12 -3
  13. package/build/system/Drawer/Drawer.js +8 -9
  14. package/build/system/Drawer/Drawer.stories.d.ts +0 -1
  15. package/build/system/Drawer/Drawer.stories.js +19 -225
  16. package/build/system/Drawer/styles.d.ts +2 -2
  17. package/build/system/Drawer/styles.js +13 -9
  18. package/build/system/Form/Checkbox/Checkbox.js +0 -3
  19. package/build/system/Form/Checkbox/Checkbox.stories.js +2 -2
  20. package/build/system/Form/Checkbox/styles.js +16 -11
  21. package/build/system/Form/Radio/Radio.stories.js +1 -1
  22. package/build/system/Form/Toggle.d.ts +14 -2
  23. package/build/system/Form/Toggle.js +68 -69
  24. package/build/system/Form/Toggle.stories.d.ts +29 -18
  25. package/build/system/Form/Toggle.stories.js +99 -0
  26. package/build/system/Form/Toggle.test.js +36 -19
  27. package/build/system/Link/Link.d.ts +1 -1
  28. package/build/system/Link/Link.js +5 -20
  29. package/build/system/Link/Link.stories.d.ts +3 -1
  30. package/build/system/Link/Link.stories.js +18 -1
  31. package/build/system/MobileMenu/MobileMenu.d.ts +16 -0
  32. package/build/system/MobileMenu/MobileMenu.js +112 -0
  33. package/build/system/MobileMenu/MobileMenu.stories.d.ts +19 -0
  34. package/build/system/MobileMenu/MobileMenu.stories.js +173 -0
  35. package/build/system/MobileMenu/MobileMenu.test.d.ts +1 -0
  36. package/build/system/MobileMenu/MobileMenu.test.js +81 -0
  37. package/build/system/Nav/NavItem.js +4 -5
  38. package/build/system/Nav/NavItemGroup.d.ts +3 -0
  39. package/build/system/Nav/NavItemGroup.js +18 -6
  40. package/build/system/Nav/styles/variants/menu.js +15 -9
  41. package/build/system/Nav/styles/variants/menugroup.js +9 -5
  42. package/build/system/Nav/styles/variants/toolbar.js +1 -2
  43. package/build/system/Nav/styles.js +1 -0
  44. package/build/system/NewDialog/DialogClose.d.ts +7 -2
  45. package/build/system/NewDialog/DialogClose.js +25 -15
  46. package/build/system/NewDialog/index.d.ts +2 -1
  47. package/build/system/NewDialog/index.js +2 -1
  48. package/build/system/NewForm/FormAutocomplete.css +1 -3
  49. package/build/system/Table/Table.js +1 -0
  50. package/build/system/Toolbar/Toolbar.js +1 -1
  51. package/build/system/Toolbar/Toolbar.stories.d.ts +3 -0
  52. package/build/system/Toolbar/Toolbar.stories.js +62 -6
  53. package/build/system/Toolbar/ToolbarUtilNav.d.ts +3 -0
  54. package/build/system/Toolbar/ToolbarUtilNav.js +21 -3
  55. package/build/system/Toolbar/index.d.ts +3 -0
  56. package/build/system/Toolbar/index.js +2 -1
  57. package/build/system/index.d.ts +4 -1
  58. package/build/system/index.js +4 -0
  59. package/build/system/theme/index.d.ts +70 -35
  60. package/build/system/theme/index.js +47 -18
  61. package/package.json +2 -1
  62. package/src/system/Accordion/Accordion.test.tsx +15 -8
  63. package/src/system/Avatar/Avatar.stories.tsx +15 -1
  64. package/src/system/Avatar/Avatar.tsx +8 -12
  65. package/src/system/Button/Button.stories.tsx +40 -31
  66. package/src/system/Button/Button.tsx +6 -15
  67. package/src/system/Card/Card.tsx +0 -1
  68. package/src/system/Drawer/Drawer.stories.tsx +28 -197
  69. package/src/system/Drawer/Drawer.tsx +31 -18
  70. package/src/system/Drawer/styles.ts +15 -5
  71. package/src/system/Form/Checkbox/Checkbox.stories.tsx +2 -2
  72. package/src/system/Form/Checkbox/Checkbox.tsx +0 -3
  73. package/src/system/Form/Checkbox/styles.ts +57 -46
  74. package/src/system/Form/Radio/Radio.stories.tsx +1 -1
  75. package/src/system/Form/Toggle.stories.tsx +122 -0
  76. package/src/system/Form/{Toggle.test.js → Toggle.test.tsx} +1 -1
  77. package/src/system/Form/Toggle.tsx +77 -0
  78. package/src/system/Link/Link.stories.tsx +21 -0
  79. package/src/system/Link/Link.tsx +10 -17
  80. package/src/system/MobileMenu/MobileMenu.stories.tsx +171 -0
  81. package/src/system/MobileMenu/MobileMenu.test.tsx +50 -0
  82. package/src/system/MobileMenu/MobileMenu.tsx +116 -0
  83. package/src/system/Nav/NavItem.tsx +3 -3
  84. package/src/system/Nav/NavItemGroup.tsx +18 -2
  85. package/src/system/Nav/styles/variants/menu.ts +15 -9
  86. package/src/system/Nav/styles/variants/menugroup.ts +7 -3
  87. package/src/system/Nav/styles/variants/toolbar.ts +1 -2
  88. package/src/system/Nav/styles.ts +1 -0
  89. package/src/system/NewDialog/DialogClose.tsx +36 -23
  90. package/src/system/NewDialog/index.ts +3 -2
  91. package/src/system/NewForm/FormAutocomplete.css +1 -3
  92. package/src/system/Table/Table.tsx +1 -1
  93. package/src/system/Toolbar/Toolbar.stories.tsx +50 -3
  94. package/src/system/Toolbar/Toolbar.tsx +1 -1
  95. package/src/system/Toolbar/ToolbarUtilNav.tsx +19 -2
  96. package/src/system/Toolbar/index.tsx +6 -1
  97. package/src/system/index.js +4 -0
  98. package/src/system/theme/index.js +47 -18
  99. package/build/system/Form/Toggle.stories.jsx +0 -96
  100. package/src/system/Form/Toggle.js +0 -74
  101. package/src/system/Form/Toggle.stories.jsx +0 -96
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+
3
+ var _react = require("@testing-library/react");
4
+ var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
5
+ var _jestAxe = require("jest-axe");
6
+ var _themeUi = require("theme-ui");
7
+ var _MobileMenu = require("./MobileMenu.stories");
8
+ var _ = require("../");
9
+ var _jsxRuntime = require("theme-ui/jsx-runtime");
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
11
+ function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == typeof h && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(typeof e + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
12
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
13
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } /* eslint-disable @typescript-eslint/ban-ts-comment */ // @ts-nocheck
14
+ /** @jsxImportSource theme-ui */
15
+ var renderWithTheme = function renderWithTheme(children) {
16
+ return (0, _react.render)((0, _jsxRuntime.jsx)(_themeUi.ThemeUIProvider, {
17
+ theme: _.theme,
18
+ children: children
19
+ }));
20
+ };
21
+ var renderComponent = function renderComponent() {
22
+ return renderWithTheme((0, _jsxRuntime.jsx)(_MobileMenu.MobileMenuExample, {}));
23
+ };
24
+ function getMenuTrigger() {
25
+ return _react.screen.getByRole('button', {
26
+ name: 'Menu'
27
+ });
28
+ }
29
+ describe('<MobileMenu />', function () {
30
+ it('renders the MobileMenu trigger', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
31
+ var _renderComponent, container;
32
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
33
+ while (1) switch (_context.prev = _context.next) {
34
+ case 0:
35
+ _renderComponent = renderComponent(), container = _renderComponent.container; // Should find the trigger
36
+ expect(getMenuTrigger()).toBeInTheDocument();
37
+ expect(getMenuTrigger()).toHaveAttribute('data-state', 'closed');
38
+
39
+ // Check for accessibility issues
40
+ _context.t0 = expect;
41
+ _context.next = 6;
42
+ return (0, _jestAxe.axe)(container);
43
+ case 6:
44
+ _context.t1 = _context.sent;
45
+ (0, _context.t0)(_context.t1).toHaveNoViolations();
46
+ case 8:
47
+ case "end":
48
+ return _context.stop();
49
+ }
50
+ }, _callee);
51
+ })));
52
+ it('opens MobileMenu and check for items', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
53
+ var user, _renderComponent2, container;
54
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
55
+ while (1) switch (_context2.prev = _context2.next) {
56
+ case 0:
57
+ user = _userEvent["default"].setup();
58
+ _renderComponent2 = renderComponent(), container = _renderComponent2.container;
59
+ _context2.next = 4;
60
+ return user.click(getMenuTrigger());
61
+ case 4:
62
+ // Should find the open content
63
+ expect(_react.screen.getByText('My Applications')).toBeVisible(); // First menu
64
+ expect(_react.screen.getByText('My Organizations')).toBeVisible();
65
+ expect(_react.screen.getByText('Performance')).toBeVisible();
66
+ expect(_react.screen.getByText('Features')).toBeVisible(); // Last Menu
67
+
68
+ // Check for accessibility issues
69
+ _context2.t0 = expect;
70
+ _context2.next = 11;
71
+ return (0, _jestAxe.axe)(container);
72
+ case 11:
73
+ _context2.t1 = _context2.sent;
74
+ (0, _context2.t0)(_context2.t1).toHaveNoViolations();
75
+ case 13:
76
+ case "end":
77
+ return _context2.stop();
78
+ }
79
+ }, _callee2);
80
+ })));
81
+ });
@@ -70,10 +70,7 @@ var NavLink = /*#__PURE__*/(0, _react.forwardRef)(function (_ref3, ref) {
70
70
  var children = _ref3.children,
71
71
  _ref3$as = _ref3.as,
72
72
  LinkComponent = _ref3$as === void 0 ? NavRawLink : _ref3$as,
73
- _ref3$renderIcon = _ref3.renderIcon,
74
- renderIcon = _ref3$renderIcon === void 0 ? function () {
75
- return null;
76
- } : _ref3$renderIcon,
73
+ renderIcon = _ref3.renderIcon,
77
74
  href = _ref3.href,
78
75
  active = _ref3.active,
79
76
  disabled = _ref3.disabled,
@@ -93,7 +90,9 @@ var NavLink = /*#__PURE__*/(0, _react.forwardRef)(function (_ref3, ref) {
93
90
  asChild: true
94
91
  }, rest, {
95
92
  children: (0, _jsxRuntime.jsxs)(LinkComponent, {
96
- children: [renderIcon(NAV_ITEM_ICON_SIZE), children]
93
+ children: [renderIcon ? (0, _jsxRuntime.jsx)(_NavItemGroup.IconContainer, {
94
+ children: renderIcon(NAV_ITEM_ICON_SIZE)
95
+ }) : null, children]
97
96
  })
98
97
  }));
99
98
  });
@@ -5,4 +5,7 @@ export interface NavItemGroupProps extends NavItemBaseProps {
5
5
  renderIcon?: NavItemRenderIconProp;
6
6
  label: string;
7
7
  }
8
+ export declare const IconContainer: ({ children }: {
9
+ children: React.ReactNode;
10
+ }) => import("react").JSX.Element;
8
11
  export declare const ItemGroupMenu: import("react").ForwardRefExoticComponent<NavItemGroupProps & import("react").RefAttributes<HTMLLIElement>>;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.ItemGroupMenu = void 0;
4
+ exports.ItemGroupMenu = exports.IconContainer = void 0;
5
5
  var Collapsible = _interopRequireWildcard(require("@radix-ui/react-collapsible"));
6
6
  var NavigationMenu = _interopRequireWildcard(require("@radix-ui/react-navigation-menu"));
7
7
  var _classnames = _interopRequireDefault(require("classnames"));
@@ -23,10 +23,7 @@ var NavItemGroupBase = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref)
23
23
  orientation = _ref.orientation,
24
24
  className = _ref.className,
25
25
  active = _ref.active,
26
- _ref$renderIcon = _ref.renderIcon,
27
- renderIcon = _ref$renderIcon === void 0 ? function () {
28
- return null;
29
- } : _ref$renderIcon,
26
+ renderIcon = _ref.renderIcon,
30
27
  children = _ref.children,
31
28
  sx = _ref.sx;
32
29
  var _useState = (0, _react.useState)(active),
@@ -51,7 +48,9 @@ var NavItemGroupBase = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref)
51
48
  "data-active": active || undefined,
52
49
  "data-open": isExpanded || undefined,
53
50
  sx: _extends({}, (0, _styles.navItemLinkVariantStyles)(variant), _menugroup.navItemGroupTriggerStyles),
54
- children: [renderIcon(_NavItem.NAV_ITEM_ICON_SIZE), label, (0, _jsxRuntime.jsx)(_bi.BiChevronDown, {
51
+ children: [renderIcon ? (0, _jsxRuntime.jsx)(IconContainer, {
52
+ children: renderIcon(_NavItem.NAV_ITEM_ICON_SIZE)
53
+ }) : null, label, (0, _jsxRuntime.jsx)(_bi.BiChevronDown, {
55
54
  "data-arrow-indicator": true,
56
55
  "aria-hidden": "true",
57
56
  size: _NavItem.NAV_ITEM_ICON_SIZE,
@@ -70,6 +69,19 @@ var NavItemGroupBase = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref)
70
69
  })
71
70
  });
72
71
  });
72
+ var IconContainer = exports.IconContainer = function IconContainer(_ref2) {
73
+ var children = _ref2.children;
74
+ return (0, _jsxRuntime.jsx)("div", {
75
+ sx: {
76
+ width: 28,
77
+ height: 30,
78
+ alignItems: 'center',
79
+ justifyContent: 'center',
80
+ display: 'inline-flex'
81
+ },
82
+ children: children
83
+ });
84
+ };
73
85
  var ItemGroupMenu = exports.ItemGroupMenu = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
74
86
  return (0, _jsxRuntime.jsx)(NavItemGroupBase, _extends({}, props, {
75
87
  orientation: "vertical",
@@ -12,7 +12,7 @@ var menuItemStyles = exports.menuItemStyles = function menuItemStyles(orientatio
12
12
  border: 'none',
13
13
  height: 38,
14
14
  width: '100%',
15
- mb: 1
15
+ justifyContent: 'space-between'
16
16
  });
17
17
  };
18
18
 
@@ -29,7 +29,7 @@ var menuInverseItemStyles = exports.menuInverseItemStyles = function menuInverse
29
29
  // Menu Item Link <a>
30
30
 
31
31
  var visitedLink = '&:visited';
32
- var activeAfter = '&[data-active]::after';
32
+ var activeAfter = '&[data-active]::before';
33
33
  var active = '&[data-active]';
34
34
  var focusNotActiveHoverNotActive = '&:focus:not(&[data-active]), &:hover:not(&[data-active])';
35
35
  var notHover = ':not(&:hover)';
@@ -42,15 +42,19 @@ var menuItemLinkStyles = exports.menuItemLinkStyles = (_menuItemLinkStyles = {
42
42
  borderRadius: 1,
43
43
  color: 'text',
44
44
  display: 'inline-flex',
45
- fontSize: 'inherit',
45
+ fontSize: '0.875rem',
46
46
  fontWeight: 'body',
47
- gap: 3,
48
47
  height: 38,
49
48
  mx: 0,
50
49
  mb: 0,
50
+ pt: 3,
51
+ pr: 4,
52
+ pb: 3,
51
53
  pl: 5,
52
- pr: 3,
53
- py: 2,
54
+ ':has(div > svg)': {
55
+ pl: 4
56
+ },
57
+ gap: 1,
54
58
  textDecoration: 'none',
55
59
  width: '100%'
56
60
  }, _menuItemLinkStyles[visitedLink] = {
@@ -64,10 +68,10 @@ var menuItemLinkStyles = exports.menuItemLinkStyles = (_menuItemLinkStyles = {
64
68
  borderRadius: '90px',
65
69
  height: 26,
66
70
  top: '6px',
67
- left: 3
71
+ left: 2
68
72
  }, _menuItemLinkStyles[active] = {
69
73
  color: 'heading',
70
- backgroundColor: 'layer.2',
74
+ backgroundColor: 'backgrounds.primary',
71
75
  textDecoration: 'none',
72
76
  cursor: 'default',
73
77
  svg: {
@@ -85,6 +89,8 @@ var menuItemLinkStyles = exports.menuItemLinkStyles = (_menuItemLinkStyles = {
85
89
  }, _menuItemLinkStyles[svgIcon] = {
86
90
  color: 'icon.secondary',
87
91
  fill: 'icon.secondary',
92
+ width: 20,
93
+ height: 20,
88
94
  display: 'block'
89
95
  }, _menuItemLinkStyles);
90
96
 
@@ -96,7 +102,7 @@ var menuInverseItemLinkStyles = exports.menuInverseItemLinkStyles = _extends({},
96
102
  color: 'toolbar.text.default'
97
103
  }) : {}, _extends2[active] = typeof menuItemLinkStyles[active] === 'object' ? _extends({}, menuItemLinkStyles[active], {
98
104
  color: 'toolbar.text.default',
99
- backgroundColor: 'tool`bar.background'
105
+ backgroundColor: 'toolbar.background'
100
106
  }) : {}, _extends2[focusNotActiveHoverNotActive] = typeof menuItemLinkStyles[focusNotActiveHoverNotActive] === 'object' ? _extends({}, menuItemLinkStyles[focusNotActiveHoverNotActive], {
101
107
  color: 'toolbar.text.hover',
102
108
  backgroundColor: 'toolbar.background',
@@ -6,8 +6,12 @@ var _react = require("@emotion/react");
6
6
  function _extends() { _extends = Object.assign ? Object.assign.bind() : 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); }
7
7
  var navItemGroupStyles = exports.navItemGroupStyles = function navItemGroupStyles(orientation, variant) {
8
8
  var defaultStyle = {
9
- '&:last-of-type': {
10
- mr: orientation === 'horizontal' ? 0 : undefined
9
+ li: {
10
+ mb: 1
11
+ },
12
+ 'li:last-of-type': {
13
+ mr: orientation === 'horizontal' ? 0 : undefined,
14
+ mb: orientation === 'vertical' ? 0 : undefined
11
15
  }
12
16
  };
13
17
  switch (variant) {
@@ -25,7 +29,6 @@ var navItemGroupStyles = exports.navItemGroupStyles = function navItemGroupStyle
25
29
  }
26
30
  };
27
31
  var navItemGroupTriggerStyles = exports.navItemGroupTriggerStyles = {
28
- mb: 1,
29
32
  'svg[data-arrow-indicator]': {
30
33
  position: 'absolute',
31
34
  right: 3,
@@ -48,8 +51,9 @@ var navItemGroupTriggerStyles = exports.navItemGroupTriggerStyles = {
48
51
  var navItemGroupContentUlStyles = exports.navItemGroupContentUlStyles = {
49
52
  m: 0,
50
53
  p: 0,
51
- pl: 3,
52
- listStyle: 'none'
54
+ pl: 5,
55
+ listStyle: 'none',
56
+ pt: 1
53
57
  };
54
58
  var slideDown = (0, _react.keyframes)({
55
59
  from: {
@@ -9,6 +9,7 @@ var toolbarRootStyles = exports.toolbarRootStyles = _extends({}, _primary.defaul
9
9
  display: ['none', 'none', 'flex'],
10
10
  height: '100%',
11
11
  ml: 0,
12
+ gap: 6,
12
13
  width: 'max-content'
13
14
  });
14
15
 
@@ -28,8 +29,6 @@ var defaultToolbarLinkStyle = exports.defaultToolbarLinkStyle = {
28
29
  // Toolbar Link <a>
29
30
  var toolbarItemLinkStyles = exports.toolbarItemLinkStyles = _extends({}, _primary.defaultItemLinkStyles, {
30
31
  position: 'relative',
31
- ml: 3,
32
- mr: 3,
33
32
  height: '100%'
34
33
  }, defaultToolbarLinkStyle, {
35
34
  '&[data-active], &[aria-current="page"]': {
@@ -122,6 +122,7 @@ var navMenuListStyles = exports.navMenuListStyles = function navMenuListStyles(o
122
122
  justifyContent: 'flex-start',
123
123
  m: 0,
124
124
  height: '100%',
125
+ gap: 1,
125
126
  px: 0,
126
127
  flexDirection: orientation === 'horizontal' ? 'row' : 'column'
127
128
  };
@@ -1,7 +1,12 @@
1
1
  /** @jsxImportSource theme-ui */
2
2
  import React from 'react';
3
+ import { ThemeUIStyleObject } from 'theme-ui';
3
4
  export interface DialogCloseProps {
4
- children: React.ReactNode;
5
+ children?: React.ReactNode;
5
6
  }
6
7
  export declare const DialogClose: React.ForwardRefExoticComponent<DialogCloseProps & React.RefAttributes<HTMLButtonElement>>;
7
- export declare const DialogCloseDefault: React.ForwardRefExoticComponent<React.RefAttributes<HTMLButtonElement>>;
8
+ export interface DialogCloseDefaultProps {
9
+ variant?: 'primary' | 'inverse';
10
+ }
11
+ export declare const defaultCloseStyles: (variant?: string) => ThemeUIStyleObject;
12
+ export declare const DialogCloseDefault: React.ForwardRefExoticComponent<DialogCloseDefaultProps & React.RefAttributes<HTMLButtonElement>>;
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.DialogCloseDefault = exports.DialogClose = void 0;
4
+ exports.defaultCloseStyles = exports.DialogCloseDefault = exports.DialogClose = void 0;
5
5
  var DialogPrimitive = _interopRequireWildcard(require("@radix-ui/react-dialog"));
6
6
  var _react = _interopRequireWildcard(require("react"));
7
7
  var _io = require("react-icons/io5");
8
- var _2 = require("..");
8
+ var _ = require("..");
9
9
  var _jsxRuntime = require("theme-ui/jsx-runtime");
10
10
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
11
11
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
@@ -19,23 +19,33 @@ var DialogClose = exports.DialogClose = /*#__PURE__*/(0, _react.forwardRef)(func
19
19
  }));
20
20
  });
21
21
  DialogClose.displayName = 'DialogClose';
22
- var DialogCloseDefault = exports.DialogCloseDefault = /*#__PURE__*/(0, _react.forwardRef)(function (_, forwardedRef) {
22
+ var defaultCloseStyles = exports.defaultCloseStyles = function defaultCloseStyles(variant) {
23
+ if (variant === void 0) {
24
+ variant = 'primary';
25
+ }
26
+ return {
27
+ position: 'absolute',
28
+ top: 3,
29
+ right: 3,
30
+ minWidth: 38,
31
+ minHeight: 38,
32
+ color: variant === 'primary' ? 'icon.primary' : 'icon.inverse',
33
+ svg: {
34
+ '&:hover': {
35
+ fill: 'inherit'
36
+ }
37
+ }
38
+ };
39
+ };
40
+ var DialogCloseDefault = exports.DialogCloseDefault = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, forwardedRef) {
41
+ var _ref$variant = _ref.variant,
42
+ variant = _ref$variant === void 0 ? 'primary' : _ref$variant;
23
43
  return (0, _jsxRuntime.jsx)(DialogClose, {
24
- children: (0, _jsxRuntime.jsx)(_2.Button, {
44
+ children: (0, _jsxRuntime.jsx)(_.Button, {
25
45
  ref: forwardedRef,
26
46
  "aria-label": "Close",
27
47
  variant: "tertiary",
28
- sx: {
29
- position: 'absolute',
30
- top: 4,
31
- right: 4,
32
- color: 'icon.inverse',
33
- svg: {
34
- '&:hover': {
35
- fill: 'inherit'
36
- }
37
- }
38
- },
48
+ sx: defaultCloseStyles(variant),
39
49
  children: (0, _jsxRuntime.jsx)(_io.IoClose, {
40
50
  "aria-hidden": "true"
41
51
  })
@@ -5,5 +5,6 @@
5
5
  import { NewDialog } from './NewDialog';
6
6
  declare const Root: import("react").FC<import("./NewDialog").NewDialogProps>;
7
7
  declare const Close: import("react").ForwardRefExoticComponent<import("./DialogClose").DialogCloseProps & import("react").RefAttributes<HTMLButtonElement>>;
8
- export { NewDialog, Root, Close };
8
+ declare const CloseDefault: import("react").ForwardRefExoticComponent<import("./DialogClose").DialogCloseDefaultProps & import("react").RefAttributes<HTMLButtonElement>>;
9
+ export { NewDialog, Root, Close, CloseDefault };
9
10
  export default NewDialog;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports["default"] = exports.Root = exports.Close = void 0;
4
+ exports["default"] = exports.Root = exports.CloseDefault = exports.Close = void 0;
5
5
  var _DialogClose = require("./DialogClose");
6
6
  var _NewDialog = require("./NewDialog");
7
7
  exports.NewDialog = _NewDialog.NewDialog;
@@ -11,4 +11,5 @@ exports.NewDialog = _NewDialog.NewDialog;
11
11
 
12
12
  var Root = exports.Root = _NewDialog.NewDialog;
13
13
  var Close = exports.Close = _DialogClose.DialogClose;
14
+ var CloseDefault = exports.CloseDefault = _DialogClose.DialogCloseDefault;
14
15
  var _default = exports["default"] = _NewDialog.NewDialog;
@@ -4,12 +4,10 @@
4
4
 
5
5
  .autocomplete__hint,
6
6
  .autocomplete__input {
7
- -webkit-appearance: none;
7
+ appearance: none;
8
8
  border: 2px solid #0b0c0c;
9
9
  border-radius: 0; /* Safari 10 on iOS adds implicit border rounding. */
10
10
  box-sizing: border-box;
11
- -moz-box-sizing: border-box;
12
- -webkit-box-sizing: border-box;
13
11
  margin-bottom: 0; /* BUG: Safari 10 on macOS seems to add an implicit margin. */
14
12
  width: 100%;
15
13
  }
@@ -37,6 +37,7 @@ var Table = exports.Table = /*#__PURE__*/(0, _react.forwardRef)(function (_ref,
37
37
  className: (0, _classnames["default"])('vip-table-component', className),
38
38
  sx: {
39
39
  width: '100%',
40
+ maxWidth: '100vw',
40
41
  overflowX: 'auto'
41
42
  },
42
43
  role: "region",
@@ -21,7 +21,7 @@ var Toolbar = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
21
21
  role: "banner",
22
22
  sx: {
23
23
  display: 'flex',
24
- height: [56, null, null, 64],
24
+ height: 64,
25
25
  backgroundColor: 'toolbar.background',
26
26
  flexDirection: 'row',
27
27
  alignItems: 'center',
@@ -8,6 +8,9 @@ declare const _default: {
8
8
  Primary: import("react").ForwardRefExoticComponent<import("./Toolbar").ToolbarProps & import("react").RefAttributes<HTMLElement>>;
9
9
  Separator: () => import("react").JSX.Element;
10
10
  UtilNav: import("react").ForwardRefExoticComponent<import("./ToolbarUtilNav").ToolbarUtilNavProps & import("react").RefAttributes<HTMLElement>>;
11
+ IconHolder: ({ children }: {
12
+ children: any;
13
+ }) => import("react").JSX.Element;
11
14
  };
12
15
  parameters: {
13
16
  docs: {
@@ -2,12 +2,14 @@
2
2
 
3
3
  exports.__esModule = true;
4
4
  exports["default"] = exports.VIPDashboardLike = exports.RawBar = exports.Default = void 0;
5
+ var _bi = require("react-icons/bi");
5
6
  var _ = require(".");
6
7
  var _system = require("../../system");
7
8
  var _ScreenReaderText = _interopRequireDefault(require("../ScreenReaderText"));
8
9
  var _CustomLink = require("../utils/stories/CustomLink");
9
10
  var _jsxRuntime = require("theme-ui/jsx-runtime");
10
11
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
12
+ /** @jsxImportSource theme-ui */
11
13
  var _default = exports["default"] = {
12
14
  title: 'Navigation/Toolbar',
13
15
  component: _.Toolbar,
@@ -35,14 +37,16 @@ var Default = exports.Default = {
35
37
  href: "https://google.com",
36
38
  children: "My Organization"
37
39
  })]
38
- }), (0, _jsxRuntime.jsx)(_.Toolbar.UtilNav, {
39
- children: (0, _jsxRuntime.jsx)(_system.Text, {
40
+ }), (0, _jsxRuntime.jsxs)(_.Toolbar.UtilNav, {
41
+ children: [(0, _jsxRuntime.jsx)(_system.Text, {
40
42
  sx: {
41
43
  color: 'toolbar.text.default',
42
44
  mb: 0
43
45
  },
44
46
  children: "Utility Item"
45
- })
47
+ }), (0, _jsxRuntime.jsx)(_.Toolbar.IconHolder, {
48
+ children: (0, _jsxRuntime.jsx)(_bi.BiSolidBell, {})
49
+ })]
46
50
  })]
47
51
  })
48
52
  });
@@ -76,13 +80,65 @@ var VIPDashboardLike = exports.VIPDashboardLike = {
76
80
  active: true,
77
81
  href: "https://google.com",
78
82
  as: _CustomLink.CustomLink,
79
- children: "Custom Link"
83
+ children: "My Organizations"
80
84
  })]
81
85
  }), (0, _jsxRuntime.jsxs)(_.Toolbar.UtilNav, {
82
- children: [(0, _jsxRuntime.jsx)(_.Toolbar.Separator, {}), (0, _jsxRuntime.jsxs)("a", {
86
+ children: [(0, _jsxRuntime.jsxs)(_system.Flex, {
87
+ sx: {
88
+ gap: 2,
89
+ minHeight: 64,
90
+ alignItems: 'center'
91
+ },
92
+ children: [(0, _jsxRuntime.jsxs)(_system.Flex, {
93
+ sx: {
94
+ alignItems: 'center'
95
+ },
96
+ children: [(0, _jsxRuntime.jsx)(_system.Toggle, {
97
+ checked: true,
98
+ onChange: function onChange() {},
99
+ name: "viptogglefeaure",
100
+ id: "viptogglefeaure",
101
+ variant: "warning",
102
+ "aria-label": "Vip features toggle"
103
+ }), (0, _jsxRuntime.jsx)(_system.Label, {
104
+ htmlFor: "viptogglefeaure",
105
+ sx: {
106
+ color: 'toolbar.text.default',
107
+ mb: 0,
108
+ ml: 2
109
+ },
110
+ children: "VIP"
111
+ })]
112
+ }), (0, _jsxRuntime.jsx)("a", {
113
+ href: "/",
114
+ sx: {
115
+ color: 'icon.inverse',
116
+ width: 38,
117
+ justifyContent: 'center',
118
+ display: 'flex'
119
+ },
120
+ "aria-label": "Help center",
121
+ children: (0, _jsxRuntime.jsx)(_bi.BiSolidHelpCircle, {
122
+ width: 16,
123
+ height: 16
124
+ })
125
+ }), (0, _jsxRuntime.jsx)("a", {
126
+ href: "/",
127
+ sx: {
128
+ color: 'icon.inverse',
129
+ width: 38,
130
+ justifyContent: 'center',
131
+ display: 'flex'
132
+ },
133
+ "aria-label": "Help center",
134
+ children: (0, _jsxRuntime.jsx)(_bi.BiSolidBell, {
135
+ width: 16,
136
+ height: 16
137
+ })
138
+ })]
139
+ }), (0, _jsxRuntime.jsx)(_.Toolbar.Separator, {}), (0, _jsxRuntime.jsxs)("a", {
83
140
  href: "/",
84
141
  children: [(0, _jsxRuntime.jsx)(_system.Avatar, {
85
- isVIP: true,
86
142
  name: "John Doe",
87
143
  src: "https://i.pravatar.cc/80"
88
144
  }), (0, _jsxRuntime.jsx)(_ScreenReaderText["default"], {
@@ -5,4 +5,7 @@ export type ToolbarUtilNavProps = {
5
5
  label?: string;
6
6
  };
7
7
  export declare const ToolbarUtilNav: React.ForwardRefExoticComponent<ToolbarUtilNavProps & React.RefAttributes<HTMLElement>>;
8
+ export declare const ToolbarIconHolder: ({ children }: {
9
+ children: any;
10
+ }) => React.JSX.Element;
8
11
  export declare const ToolbarUtilNavSeparator: () => React.JSX.Element;
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.ToolbarUtilNavSeparator = exports.ToolbarUtilNav = void 0;
4
+ exports.ToolbarUtilNavSeparator = exports.ToolbarUtilNav = exports.ToolbarIconHolder = void 0;
5
5
  var _react = _interopRequireWildcard(require("react"));
6
+ var _ = require("..");
6
7
  var _jsxRuntime = require("theme-ui/jsx-runtime");
7
8
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
8
9
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
@@ -19,15 +20,33 @@ var ToolbarUtilNav = exports.ToolbarUtilNav = /*#__PURE__*/(0, _react.forwardRef
19
20
  marginLeft: 'auto',
20
21
  alignItems: 'center',
21
22
  flexDirection: 'row',
22
- display: 'flex'
23
+ display: 'flex',
24
+ gap: 4
23
25
  },
24
26
  children: children
25
27
  });
26
28
  });
29
+ var ToolbarIconHolder = exports.ToolbarIconHolder = function ToolbarIconHolder(_ref2) {
30
+ var children = _ref2.children;
31
+ return (0, _jsxRuntime.jsx)(_.Flex, {
32
+ sx: {
33
+ width: 38,
34
+ height: 38,
35
+ alignItems: 'center',
36
+ justifyContent: 'center',
37
+ color: 'icon.inverse',
38
+ '&:hover': {
39
+ color: 'icon.primary'
40
+ }
41
+ },
42
+ children: children
43
+ });
44
+ };
27
45
  var ToolbarUtilNavSeparator = exports.ToolbarUtilNavSeparator = function ToolbarUtilNavSeparator() {
28
46
  return (0, _jsxRuntime.jsx)("span", {
29
47
  "aria-hidden": "true",
30
48
  sx: {
49
+ display: ['block', 'none', 'none', 'block', 'block'],
31
50
  '&:after': {
32
51
  display: 'block',
33
52
  backgroundColor: 'borders.inverse',
@@ -36,7 +55,6 @@ var ToolbarUtilNavSeparator = exports.ToolbarUtilNavSeparator = function Toolbar
36
55
  overflow: 'hidden',
37
56
  content: '""'
38
57
  },
39
- mx: 3,
40
58
  position: 'relative'
41
59
  }
42
60
  });
@@ -5,4 +5,7 @@ export declare const Toolbar: {
5
5
  Primary: import("react").ForwardRefExoticComponent<import("./Toolbar").ToolbarProps & import("react").RefAttributes<HTMLElement>>;
6
6
  Separator: () => import("react").JSX.Element;
7
7
  UtilNav: import("react").ForwardRefExoticComponent<import("./ToolbarUtilNav").ToolbarUtilNavProps & import("react").RefAttributes<HTMLElement>>;
8
+ IconHolder: ({ children }: {
9
+ children: any;
10
+ }) => import("react").JSX.Element;
8
11
  };
@@ -14,5 +14,6 @@ var Toolbar = exports.Toolbar = {
14
14
  Logo: _Logo.Logo,
15
15
  Primary: _Toolbar.ToolbarPrimary,
16
16
  Separator: _ToolbarUtilNav.ToolbarUtilNavSeparator,
17
- UtilNav: _ToolbarUtilNav.ToolbarUtilNav
17
+ UtilNav: _ToolbarUtilNav.ToolbarUtilNav,
18
+ IconHolder: _ToolbarUtilNav.ToolbarIconHolder
18
19
  };