@appquality/unguess-design-system 2.10.22 → 2.10.25

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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,44 @@
1
+ # v2.10.25 (Fri May 13 2022)
2
+
3
+ #### 🐛 Bug Fix
4
+
5
+ - refactor(workspace-dropdown): refactor component in order to use it o… [#54](https://github.com/AppQuality/unguess-design-system/pull/54) ([@cannarocks](https://github.com/cannarocks))
6
+
7
+ #### ⚠️ Pushed to `master`
8
+
9
+ - fix(page-loader): refactor types and fix build errors ([@cannarocks](https://github.com/cannarocks))
10
+ - fix(token-card): uI improvements on token card ([@cannarocks](https://github.com/cannarocks))
11
+
12
+ #### Authors: 1
13
+
14
+ - Luca Cannarozzo ([@cannarocks](https://github.com/cannarocks))
15
+
16
+ ---
17
+
18
+ # v2.10.24 (Thu May 12 2022)
19
+
20
+ #### ⚠️ Pushed to `master`
21
+
22
+ - fix(table): type error ([@cannarocks](https://github.com/cannarocks))
23
+
24
+ #### Authors: 1
25
+
26
+ - Luca Cannarozzo ([@cannarocks](https://github.com/cannarocks))
27
+
28
+ ---
29
+
30
+ # v2.10.23 (Thu May 12 2022)
31
+
32
+ #### ⚠️ Pushed to `master`
33
+
34
+ - feat(counter): update counter behaviour based on screen size ([@cannarocks](https://github.com/cannarocks))
35
+
36
+ #### Authors: 1
37
+
38
+ - Luca Cannarozzo ([@cannarocks](https://github.com/cannarocks))
39
+
40
+ ---
41
+
1
42
  # v2.10.22 (Thu May 12 2022)
2
43
 
3
44
  #### ⚠️ Pushed to `master`
package/build/index.js CHANGED
@@ -15,9 +15,9 @@ var reactTags = require('@zendeskgarden/react-tags');
15
15
  var reactForms = require('@zendeskgarden/react-forms');
16
16
  var React = require('react');
17
17
  var reactLoaders = require('@zendeskgarden/react-loaders');
18
+ var reactTypography = require('@zendeskgarden/react-typography');
18
19
  var reactModals = require('@zendeskgarden/react-modals');
19
20
  var reactDropdowns = require('@zendeskgarden/react-dropdowns');
20
- var reactTypography = require('@zendeskgarden/react-typography');
21
21
  var reactGrid = require('@zendeskgarden/react-grid');
22
22
  var reactChrome = require('@zendeskgarden/react-chrome');
23
23
  var formik = require('formik');
@@ -238,13 +238,13 @@ var gradients = {
238
238
  dark: "linear-gradient(90.81deg, ".concat(hex2rgba(palette.blue[800]), " 0%, ").concat(hex2rgba(palette.blue[600]), " 100%);"),
239
239
  };
240
240
 
241
- var _a, _b, _c, _d, _e, _f;
242
- var components = __assign(__assign({}, reactTheming.DEFAULT_THEME.components), { chrome: __assign(__assign({}, (_a = reactTheming.DEFAULT_THEME.components) === null || _a === void 0 ? void 0 : _a.chrome), { header: __assign(__assign({}, (_c = (_b = reactTheming.DEFAULT_THEME.components) === null || _b === void 0 ? void 0 : _b.chrome) === null || _c === void 0 ? void 0 : _c.header), { height: "64px" }) }), notification: __assign(__assign({}, (_d = reactTheming.DEFAULT_THEME.components) === null || _d === void 0 ? void 0 : _d.notification), { card: __assign(__assign({}, (_f = (_e = reactTheming.DEFAULT_THEME.components) === null || _e === void 0 ? void 0 : _e.notification) === null || _f === void 0 ? void 0 : _f.well), { padding: "16px" }) }) });
241
+ var _a, _b, _c, _d, _e, _f, _g$5, _h;
242
+ var components = __assign(__assign({}, reactTheming.DEFAULT_THEME.components), { chrome: __assign(__assign({}, (_a = reactTheming.DEFAULT_THEME.components) === null || _a === void 0 ? void 0 : _a.chrome), { header: __assign(__assign({}, (_c = (_b = reactTheming.DEFAULT_THEME.components) === null || _b === void 0 ? void 0 : _b.chrome) === null || _c === void 0 ? void 0 : _c.header), { height: "64px" }), nav: __assign(__assign({}, (_e = (_d = reactTheming.DEFAULT_THEME.components) === null || _d === void 0 ? void 0 : _d.chrome) === null || _e === void 0 ? void 0 : _e.nav), { openWidth: 240, closedWidth: 36, workspaceDropdownWidth: 192 }) }), notification: __assign(__assign({}, (_f = reactTheming.DEFAULT_THEME.components) === null || _f === void 0 ? void 0 : _f.notification), { card: __assign(__assign({}, (_h = (_g$5 = reactTheming.DEFAULT_THEME.components) === null || _g$5 === void 0 ? void 0 : _g$5.notification) === null || _h === void 0 ? void 0 : _h.well), { padding: "16px" }) }) });
243
243
 
244
244
  var theme = __assign(__assign({}, reactTheming.DEFAULT_THEME), { colors: __assign(__assign({}, reactTheming.DEFAULT_THEME.colors), { primaryHue: palette.blue[600], warningHue: palette.yellow[600], successHue: palette.teal["M600"], dangerHue: palette.red[400] }), palette: palette, fonts: __assign(__assign({}, reactTheming.DEFAULT_THEME.fonts), { system: '"Poppins",sans-serif,Helvetica,Arial,sans-serif' }), fontWeights: __assign(__assign({}, reactTheming.DEFAULT_THEME.fontWeights), { semibold: 500 }), gradients: gradients, borderRadii: __assign(__assign({}, reactTheming.DEFAULT_THEME.borderRadii), { lg: "8px", xl: "16px", xxl: "32px" }), components: components, shadows: __assign(__assign({}, reactTheming.DEFAULT_THEME.shadows), { boxShadow: boxShadow }) });
245
245
 
246
- var GlobalStyle = styled.createGlobalStyle(templateObject_1$V || (templateObject_1$V = __makeTemplateObject(["\n ::-webkit-scrollbar-track:hover {\n border-left: solid 1px ", ";\n border-right: solid 1px ", ";\n }\n\n ::-webkit-scrollbar {\n width: 10px;\n }\n\n ::-webkit-scrollbar-track {\n border: solid 2px transparent;\n }\n\n ::-webkit-scrollbar-thumb {\n box-shadow: inset 0 0 10px 10px ", ";\n border: solid 2px transparent;\n border-radius: 25px;\n }\n\n /* This stuff is for Firefox */\n * {\n scrollbar-color: ", " #FFFFFF;\n scrollbar-width: thin;\n }\n \n body {\n font-family: ", ";\n margin: 0;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n \n svg {\n max-height: 100%;\n }\n\n"], ["\n ::-webkit-scrollbar-track:hover {\n border-left: solid 1px ", ";\n border-right: solid 1px ", ";\n }\n\n ::-webkit-scrollbar {\n width: 10px;\n }\n\n ::-webkit-scrollbar-track {\n border: solid 2px transparent;\n }\n\n ::-webkit-scrollbar-thumb {\n box-shadow: inset 0 0 10px 10px ", ";\n border: solid 2px transparent;\n border-radius: 25px;\n }\n\n /* This stuff is for Firefox */\n * {\n scrollbar-color: ", " #FFFFFF;\n scrollbar-width: thin;\n }\n \n body {\n font-family: ", ";\n margin: 0;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n \n svg {\n max-height: 100%;\n }\n\n"])), theme.palette.grey["200"], theme.palette.grey["200"], theme.palette.blue["200"], theme.palette.blue["200"], theme.fonts.system);
247
- var templateObject_1$V;
246
+ var GlobalStyle = styled.createGlobalStyle(templateObject_1$X || (templateObject_1$X = __makeTemplateObject(["\n ::-webkit-scrollbar-track:hover {\n border-left: solid 1px ", ";\n border-right: solid 1px ", ";\n }\n\n ::-webkit-scrollbar {\n width: 10px;\n }\n\n ::-webkit-scrollbar-track {\n border: solid 2px transparent;\n }\n\n ::-webkit-scrollbar-thumb {\n box-shadow: inset 0 0 10px 10px ", ";\n border: solid 2px transparent;\n border-radius: 25px;\n }\n\n /* This stuff is for Firefox */\n * {\n scrollbar-color: ", " #FFFFFF;\n scrollbar-width: thin;\n }\n \n body {\n font-family: ", ";\n margin: 0;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n \n svg {\n max-height: 100%;\n }\n\n"], ["\n ::-webkit-scrollbar-track:hover {\n border-left: solid 1px ", ";\n border-right: solid 1px ", ";\n }\n\n ::-webkit-scrollbar {\n width: 10px;\n }\n\n ::-webkit-scrollbar-track {\n border: solid 2px transparent;\n }\n\n ::-webkit-scrollbar-thumb {\n box-shadow: inset 0 0 10px 10px ", ";\n border: solid 2px transparent;\n border-radius: 25px;\n }\n\n /* This stuff is for Firefox */\n * {\n scrollbar-color: ", " #FFFFFF;\n scrollbar-width: thin;\n }\n \n body {\n font-family: ", ";\n margin: 0;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n \n svg {\n max-height: 100%;\n }\n\n"])), theme.palette.grey["200"], theme.palette.grey["200"], theme.palette.blue["200"], theme.palette.blue["200"], theme.fonts.system);
247
+ var templateObject_1$X;
248
248
 
249
249
  /**
250
250
  * Accordions are headers that can be expanded to reveal content or collapsed to hide it.
@@ -259,7 +259,7 @@ Accordion.Header = reactAccordions.Accordion.Header;
259
259
  Accordion.Label = reactAccordions.Accordion.Label;
260
260
  Accordion.Panel = reactAccordions.Accordion.Panel;
261
261
 
262
- var UgAlert = styled__default["default"](reactNotifications.Alert)(templateObject_1$U || (templateObject_1$U = __makeTemplateObject(["\n background-color: white;\n color: ", ";\n border-width: 2px;\n"], ["\n background-color: white;\n color: ", ";\n border-width: 2px;\n"])), function (_a) {
262
+ var UgAlert = styled__default["default"](reactNotifications.Alert)(templateObject_1$W || (templateObject_1$W = __makeTemplateObject(["\n background-color: white;\n color: ", ";\n border-width: 2px;\n"], ["\n background-color: white;\n color: ", ";\n border-width: 2px;\n"])), function (_a) {
263
263
  var theme = _a.theme;
264
264
  return theme.palette.grey[700];
265
265
  });
@@ -273,10 +273,10 @@ var UgAlert = styled__default["default"](reactNotifications.Alert)(templateObjec
273
273
  var Alert = function (props) { return jsxRuntime.jsx(UgAlert, __assign({}, props)); };
274
274
  Alert.Title = reactNotifications.Title;
275
275
  Alert.Close = reactNotifications.Close;
276
- var templateObject_1$U;
276
+ var templateObject_1$W;
277
277
 
278
278
  // import useWindowSize from "../../hooks/useWindowSize";
279
- var UgAvatar = styled__default["default"](reactAvatars.Avatar)(templateObject_1$T || (templateObject_1$T = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), function (props) {
279
+ var UgAvatar = styled__default["default"](reactAvatars.Avatar)(templateObject_1$V || (templateObject_1$V = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), function (props) {
280
280
  return props.avatarType &&
281
281
  props.avatarType !== "image" &&
282
282
  "background: ".concat(props.backgroundColor || theme.gradients.dark, ";");
@@ -301,7 +301,7 @@ var Avatar = function (props) {
301
301
  return (jsxRuntime.jsx(UgAvatar, __assign({}, props, { badge: fixedBadge, children: wrapChildren(props.avatarType || "text"), size: props.size || "small" })));
302
302
  };
303
303
  Avatar.Text = UgAvatar.Text;
304
- var templateObject_1$T;
304
+ var templateObject_1$V;
305
305
 
306
306
  /**
307
307
  * Breadcrumbs mark and communicate a user’s location in the product.
@@ -322,7 +322,7 @@ var Breadcrumb = function (props) { return jsxRuntime.jsx(reactBreadcrumbs.Bread
322
322
  */
323
323
  var Anchor = function (props) { return jsxRuntime.jsx(reactButtons.Anchor, __assign({}, props)); };
324
324
 
325
- var UgButton = styled__default["default"](reactButtons.Button)(templateObject_1$S || (templateObject_1$S = __makeTemplateObject([""], [""])));
325
+ var UgButton = styled__default["default"](reactButtons.Button)(templateObject_1$U || (templateObject_1$U = __makeTemplateObject([""], [""])));
326
326
  /**
327
327
  * Buttons let users take action quickly.
328
328
  * Use a Button to enable actions or decisions that are important to a user’s workflow.
@@ -334,7 +334,7 @@ var UgButton = styled__default["default"](reactButtons.Button)(templateObject_1$
334
334
  var Button = function (props) { return jsxRuntime.jsx(UgButton, __assign({}, props)); };
335
335
  Button.StartIcon = UgButton.StartIcon;
336
336
  Button.EndIcon = UgButton.EndIcon;
337
- var templateObject_1$S;
337
+ var templateObject_1$U;
338
338
 
339
339
  /**
340
340
  A Button group lets users make a selection from a set of options.
@@ -364,7 +364,7 @@ Used for this:
364
364
  **/
365
365
  var SplitButton = function (props) { return (jsxRuntime.jsx(reactButtons.SplitButton, __assign({}, props))); };
366
366
 
367
- var ContentCard = styled__default["default"](reactNotifications.Well)(templateObject_1$R || (templateObject_1$R = __makeTemplateObject(["\n border-radius: ", ";\n padding: ", ";\n border: 1px solid ", ";\n ", "\n"], ["\n border-radius: ", ";\n padding: ", ";\n border: 1px solid ", ";\n ", "\n"])), function (_a) {
367
+ var ContentCard = styled__default["default"](reactNotifications.Well)(templateObject_1$T || (templateObject_1$T = __makeTemplateObject(["\n border-radius: ", ";\n padding: ", ";\n border: 1px solid ", ";\n ", "\n"], ["\n border-radius: ", ";\n padding: ", ";\n border: 1px solid ", ";\n ", "\n"])), function (_a) {
368
368
  var theme = _a.theme;
369
369
  return theme.borderRadii.lg;
370
370
  }, function (_a) {
@@ -385,11 +385,11 @@ var ContentCard = styled__default["default"](reactNotifications.Well)(templateOb
385
385
  - To group related content
386
386
  */
387
387
  var Card = function (props) { return jsxRuntime.jsx(ContentCard, __assign({}, props)); };
388
- var ContainerCard = styled__default["default"](Card)(templateObject_2$l || (templateObject_2$l = __makeTemplateObject(["\n border-radius: ", ";\n"], ["\n border-radius: ", ";\n"])), function (_a) {
388
+ var ContainerCard = styled__default["default"](Card)(templateObject_2$m || (templateObject_2$m = __makeTemplateObject(["\n border-radius: ", ";\n"], ["\n border-radius: ", ";\n"])), function (_a) {
389
389
  var theme = _a.theme;
390
390
  return theme.borderRadii.xl;
391
391
  });
392
- var templateObject_1$R, templateObject_2$l;
392
+ var templateObject_1$T, templateObject_2$m;
393
393
 
394
394
  /**
395
395
  * Tags let users categorize content using a keyword.
@@ -406,13 +406,13 @@ var Tag = function (props) { return jsxRuntime.jsx(reactTags.Tag, __assign({}, p
406
406
  Tag.Avatar = reactTags.Tag.Avatar;
407
407
  Tag.Close = reactTags.Tag.Close;
408
408
 
409
- var UgLabel$1 = styled__default["default"](reactForms.Label)(templateObject_1$Q || (templateObject_1$Q = __makeTemplateObject([""], [""])));
409
+ var UgLabel$1 = styled__default["default"](reactForms.Label)(templateObject_1$S || (templateObject_1$S = __makeTemplateObject([""], [""])));
410
410
  /**
411
411
  * A Label is used to specify a title for an input.
412
412
  * <hr>
413
413
  **/
414
414
  var Label = function (props) { return jsxRuntime.jsx(UgLabel$1, __assign({}, props)); };
415
- var templateObject_1$Q;
415
+ var templateObject_1$S;
416
416
 
417
417
  var _g$4, _path$p, _path2$7, _path3$6, _path4$4, _path5$3, _path6$3, _path7$3, _path8$3, _path9$3, _path10$3, _path11$2;
418
418
 
@@ -619,7 +619,7 @@ var SvgArrivalStatusRoundIcon = function SvgArrivalStatusRoundIcon(props) {
619
619
  })));
620
620
  };
621
621
 
622
- var UgSkeleton = styled__default["default"](reactLoaders.Skeleton)(templateObject_1$P || (templateObject_1$P = __makeTemplateObject(["\n background-color: ", ";\n border-radius: ", ";\n"], ["\n background-color: ", ";\n border-radius: ", ";\n"])), function (props) { return props.theme.palette.grey[500]; }, function (props) { return props.theme.borderRadii.xxl; });
622
+ var UgSkeleton = styled__default["default"](reactLoaders.Skeleton)(templateObject_1$R || (templateObject_1$R = __makeTemplateObject(["\n background-color: ", ";\n border-radius: ", ";\n"], ["\n background-color: ", ";\n border-radius: ", ";\n"])), function (props) { return props.theme.palette.grey[500]; }, function (props) { return props.theme.borderRadii.xxl; });
623
623
  /**
624
624
  * A Skeleton loader shows users a blank version of a page or section of a page into which content is gradually loaded. It provides a visual estimate of the space needed.
625
625
  * <hr>
@@ -634,15 +634,15 @@ var UgSkeleton = styled__default["default"](reactLoaders.Skeleton)(templateObjec
634
634
  - To communicate a typing status, use Inline instead
635
635
  */
636
636
  var Skeleton = function (props) { return jsxRuntime.jsx(UgSkeleton, __assign({}, props)); };
637
- var templateObject_1$P;
637
+ var templateObject_1$R;
638
638
 
639
639
  var CampaignCardSkeleton = function () {
640
640
  return (jsxRuntime.jsxs(Wrapper$1, { children: [jsxRuntime.jsx(CardHeader, { children: jsxRuntime.jsx(Skeleton, { width: "30%" }) }), jsxRuntime.jsxs(CardBody$1, { children: [jsxRuntime.jsx(Skeleton, { height: "18px", width: "50%" }), jsxRuntime.jsx("br", {}), jsxRuntime.jsx(Skeleton, { height: "26px", style: { backgroundColor: theme.palette.blue[400] } })] }), jsxRuntime.jsx(Divider$1, {}), jsxRuntime.jsxs(CardFooter$1, { children: [jsxRuntime.jsx(Skeleton, { height: "18px", width: "45%" }), " ", jsxRuntime.jsx(Skeleton, { width: "26px", height: "26px", style: { borderRadius: "100%" } })] })] }));
641
641
  };
642
642
 
643
- var flexCenter = styled.css(templateObject_1$O || (templateObject_1$O = __makeTemplateObject(["\n display: flex;\n align-items: center;\n"], ["\n display: flex;\n align-items: center;\n"])));
644
- var flexColumnCenter = styled.css(templateObject_2$k || (templateObject_2$k = __makeTemplateObject(["\n ", ";\n flex-direction: column;\n"], ["\n ", ";\n flex-direction: column;\n"])), flexCenter);
645
- var flexStart = styled.css(templateObject_3$d || (templateObject_3$d = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n align-items: ", ";\n"], ["\n display: flex;\n flex-direction: column;\n align-items: ", ";\n"])), function (_a) {
643
+ var flexCenter = styled.css(templateObject_1$Q || (templateObject_1$Q = __makeTemplateObject(["\n display: flex;\n align-items: center;\n"], ["\n display: flex;\n align-items: center;\n"])));
644
+ var flexColumnCenter = styled.css(templateObject_2$l || (templateObject_2$l = __makeTemplateObject(["\n ", ";\n flex-direction: column;\n"], ["\n ", ";\n flex-direction: column;\n"])), flexCenter);
645
+ var flexStart = styled.css(templateObject_3$e || (templateObject_3$e = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n align-items: ", ";\n"], ["\n display: flex;\n flex-direction: column;\n align-items: ", ";\n"])), function (_a) {
646
646
  var theme = _a.theme;
647
647
  return (theme.rtl ? "flex-end" : "flex-start");
648
648
  });
@@ -659,7 +659,7 @@ var cardStyle = styled.css(templateObject_4$b || (templateObject_4$b = __makeTem
659
659
  var theme = _a.theme;
660
660
  return theme.shadows.boxShadow(theme);
661
661
  });
662
- var templateObject_1$O, templateObject_2$k, templateObject_3$d, templateObject_4$b;
662
+ var templateObject_1$Q, templateObject_2$l, templateObject_3$e, templateObject_4$b;
663
663
 
664
664
  var getStatusIcon = function (status) {
665
665
  switch (status) {
@@ -683,12 +683,12 @@ var getTypeDataIcon = function (type) {
683
683
  return SvgFunctionalTestRoundIcon;
684
684
  }
685
685
  };
686
- var Wrapper$1 = styled__default["default"](Card)(templateObject_1$N || (templateObject_1$N = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), cardStyle);
687
- var StyledTag$1 = styled__default["default"](Tag)(templateObject_2$j || (templateObject_2$j = __makeTemplateObject(["\n color: ", ";\n max-width: 75%;\n cursor: pointer;\n"], ["\n color: ", ";\n max-width: 75%;\n cursor: pointer;\n"])), function (_a) {
686
+ var Wrapper$1 = styled__default["default"](Card)(templateObject_1$P || (templateObject_1$P = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), cardStyle);
687
+ var StyledTag$1 = styled__default["default"](Tag)(templateObject_2$k || (templateObject_2$k = __makeTemplateObject(["\n color: ", ";\n max-width: 75%;\n cursor: pointer;\n"], ["\n color: ", ";\n max-width: 75%;\n cursor: pointer;\n"])), function (_a) {
688
688
  var theme = _a.theme;
689
689
  return theme.palette.grey["700"];
690
690
  });
691
- var StyledTagNew$1 = styled__default["default"](Tag)(templateObject_3$c || (templateObject_3$c = __makeTemplateObject(["\n height: ", "px;\n padding: ", "px\n ", "px;\n color: ", ";\n"], ["\n height: ", "px;\n padding: ", "px\n ", "px;\n color: ", ";\n"])), function (_a) {
691
+ var StyledTagNew$1 = styled__default["default"](Tag)(templateObject_3$d || (templateObject_3$d = __makeTemplateObject(["\n height: ", "px;\n padding: ", "px\n ", "px;\n color: ", ";\n"], ["\n height: ", "px;\n padding: ", "px\n ", "px;\n color: ", ";\n"])), function (_a) {
692
692
  var theme = _a.theme;
693
693
  return theme.space.base * 6;
694
694
  }, function (_a) {
@@ -745,9 +745,9 @@ var CampaignCard = function (props) {
745
745
  }
746
746
  return props.isLoading ? (jsxRuntime.jsx(CampaignCardSkeleton, {})) : (jsxRuntime.jsxs(Wrapper$1, __assign({}, props, { children: [jsxRuntime.jsxs(CardHeader, { children: [jsxRuntime.jsx(StyledLabel$2, __assign({ isRegular: true }, { children: date })), isNew && (jsxRuntime.jsx(StyledTagNew$1, __assign({ hue: theme.palette.fuschia["600"], isPill: true, size: "medium", title: labelNew ? labelNew : "New!" }, { children: labelNew ? labelNew : "New!" })))] }), jsxRuntime.jsxs(CardBody$1, { children: [jsxRuntime.jsx(StyledLabel$2, __assign({ isRegular: true }, { children: projectTitleCut })), jsxRuntime.jsx(StyledTitleLabel$1, __assign({ isRegular: true }, { children: campaignTitleCut }))] }), jsxRuntime.jsx(Divider$1, {}), jsxRuntime.jsxs(CardFooter$1, { children: [props.pillText && (jsxRuntime.jsxs(StyledTag$1, __assign({ size: "large", isPill: true, isRegular: true, hue: theme.palette.grey[100] }, { children: [jsxRuntime.jsx(Tag.Avatar, { children: jsxRuntime.jsx(PillIcon, {}) }), props.pillText] }))), jsxRuntime.jsx(StatusIcon, {})] })] })));
747
747
  };
748
- var templateObject_1$N, templateObject_2$j, templateObject_3$c, templateObject_4$a, templateObject_5$5, templateObject_6$2, templateObject_7$1, templateObject_8$1, templateObject_9;
748
+ var templateObject_1$P, templateObject_2$k, templateObject_3$d, templateObject_4$a, templateObject_5$5, templateObject_6$2, templateObject_7$1, templateObject_8$1, templateObject_9;
749
749
 
750
- var Wrapper = styled__default["default"](Card)(templateObject_1$M || (templateObject_1$M = __makeTemplateObject(["\n border-radius: ", ";\n padding: ", ";\n border: 1px solid ", ";\n display: flex;\n flex-direction: column;\n\n &:hover {\n box-shadow: ", ";\n }\n"], ["\n border-radius: ", ";\n padding: ", ";\n border: 1px solid ", ";\n display: flex;\n flex-direction: column;\n\n &:hover {\n box-shadow: ", ";\n }\n"])), function (_a) {
750
+ var Wrapper = styled__default["default"](Card)(templateObject_1$O || (templateObject_1$O = __makeTemplateObject(["\n border-radius: ", ";\n padding: ", ";\n border: 1px solid ", ";\n display: flex;\n flex-direction: column;\n\n &:hover {\n box-shadow: ", ";\n }\n"], ["\n border-radius: ", ";\n padding: ", ";\n border: 1px solid ", ";\n display: flex;\n flex-direction: column;\n\n &:hover {\n box-shadow: ", ";\n }\n"])), function (_a) {
751
751
  var theme = _a.theme;
752
752
  return theme.borderRadii.lg;
753
753
  }, function (_a) {
@@ -760,7 +760,7 @@ var Wrapper = styled__default["default"](Card)(templateObject_1$M || (templateOb
760
760
  var theme = _a.theme;
761
761
  return theme.shadows.boxShadow(theme);
762
762
  });
763
- var StyledTagNew = styled__default["default"](Tag)(templateObject_2$i || (templateObject_2$i = __makeTemplateObject(["\n height: ", "px;\n padding: ", "px\n ", "px;\n color: ", ";\n position: absolute;\n right: 16px;\n top: 16px;\n"], ["\n height: ", "px;\n padding: ", "px\n ", "px;\n color: ", ";\n position: absolute;\n right: 16px;\n top: 16px;\n"])), function (_a) {
763
+ var StyledTagNew = styled__default["default"](Tag)(templateObject_2$j || (templateObject_2$j = __makeTemplateObject(["\n height: ", "px;\n padding: ", "px\n ", "px;\n color: ", ";\n position: absolute;\n right: 16px;\n top: 16px;\n"], ["\n height: ", "px;\n padding: ", "px\n ", "px;\n color: ", ";\n position: absolute;\n right: 16px;\n top: 16px;\n"])), function (_a) {
764
764
  var theme = _a.theme;
765
765
  return theme.space.base * 6;
766
766
  }, function (_a) {
@@ -773,7 +773,7 @@ var StyledTagNew = styled__default["default"](Tag)(templateObject_2$i || (templa
773
773
  var theme = _a.theme;
774
774
  return theme.palette.white;
775
775
  });
776
- var StyledLabel$1 = styled__default["default"](Label)(templateObject_3$b || (templateObject_3$b = __makeTemplateObject(["\n font-size: ", ";\n color: ", ";\n cursor: pointer;\n"], ["\n font-size: ", ";\n color: ", ";\n cursor: pointer;\n"])), function (_a) {
776
+ var StyledLabel$1 = styled__default["default"](Label)(templateObject_3$c || (templateObject_3$c = __makeTemplateObject(["\n font-size: ", ";\n color: ", ";\n cursor: pointer;\n"], ["\n font-size: ", ";\n color: ", ";\n cursor: pointer;\n"])), function (_a) {
777
777
  var theme = _a.theme;
778
778
  return theme.fontSizes.sm;
779
779
  }, function (_a) {
@@ -808,7 +808,7 @@ var ProductCard = function (props) {
808
808
  }
809
809
  return props.isLoading ? (jsxRuntime.jsx(CampaignCardSkeleton, {})) : (jsxRuntime.jsxs(Wrapper, __assign({}, props, { children: [jsxRuntime.jsxs(CardBody, __assign({ onClick: props.onCtaClick }, { children: [isNew && (jsxRuntime.jsx(StyledTagNew, __assign({ hue: theme.palette.fuschia["600"], isPill: true, size: "medium", title: labelNew ? labelNew : "New!" }, { children: labelNew ? labelNew : "New!" }))), props.icon && jsxRuntime.jsx(IconContainer$1, { children: props.icon }), props.preTitle && (jsxRuntime.jsx(StyledLabel$1, __assign({ isRegular: true }, { children: props.preTitle }))), jsxRuntime.jsx(StyledTitleLabel, __assign({ isRegular: true }, { children: productTitleCut }))] })), jsxRuntime.jsx(Divider, {}), jsxRuntime.jsx(CardFooter, { children: jsxRuntime.jsx(Button, __assign({ isPill: true, isPrimary: true, onClick: props.onCtaClick }, { children: props.ctaLabel })) })] })));
810
810
  };
811
- var templateObject_1$M, templateObject_2$i, templateObject_3$b, templateObject_4$9, templateObject_5$4, templateObject_6$1, templateObject_7, templateObject_8;
811
+ var templateObject_1$O, templateObject_2$j, templateObject_3$c, templateObject_4$9, templateObject_5$4, templateObject_6$1, templateObject_7, templateObject_8;
812
812
 
813
813
  /**
814
814
  * Title is a basic component used to display a title. Often used in card headers.
@@ -1014,7 +1014,46 @@ var SvgCampaignExperiential = function SvgCampaignExperiential(props) {
1014
1014
  })));
1015
1015
  };
1016
1016
 
1017
- var StyledTag = styled__default["default"](Tag)(templateObject_1$L || (templateObject_1$L = __makeTemplateObject(["\n background-color: transparent;\n pointer-events: none;\n font-weight: ", ";\n ", "\n svg {\n margin-right: ", " !important;\n }\n\n span {\n font-weight: ", ";\n margin-left: ", ";\n color: ", ";\n }\n"], ["\n background-color: transparent;\n pointer-events: none;\n font-weight: ", ";\n ", "\n svg {\n margin-right: ", " !important;\n }\n\n span {\n font-weight: ", ";\n margin-left: ", ";\n color: ", ";\n }\n"])), function (_a) {
1017
+ /**
1018
+ * Use Span to style and format inline text elements.
1019
+ * <hr>
1020
+ * Used for this:
1021
+ - To apply styles to short strings of text
1022
+ - To include icons inline with text
1023
+ * Not for this:
1024
+ - To style an entire block of text, use Paragraph instead
1025
+ */
1026
+ var Span = function (props) { return jsxRuntime.jsx(reactTypography.Span, __assign({}, props)); };
1027
+
1028
+ function debounce(callback, wait) {
1029
+ var timer;
1030
+ return function () {
1031
+ if (typeof timer !== "undefined")
1032
+ clearTimeout(timer);
1033
+ timer = setTimeout(function () {
1034
+ timer = undefined;
1035
+ callback();
1036
+ }, wait);
1037
+ };
1038
+ }
1039
+ function useWindowSize() {
1040
+ var _a = React.useState({
1041
+ width: window.innerWidth,
1042
+ height: window.innerHeight,
1043
+ }), size = _a[0], setSize = _a[1];
1044
+ React.useLayoutEffect(function () {
1045
+ var debounceUpdateSize = debounce(function () {
1046
+ setSize({ width: window.innerWidth, height: window.innerHeight });
1047
+ }, 300);
1048
+ window.addEventListener("resize", debounceUpdateSize);
1049
+ debounceUpdateSize();
1050
+ return function () { return window.removeEventListener("resize", debounceUpdateSize); };
1051
+ }, []);
1052
+ return size;
1053
+ }
1054
+
1055
+ var StyledSpan = styled__default["default"](Span)(templateObject_1$N || (templateObject_1$N = __makeTemplateObject([""], [""])));
1056
+ var StyledTag = styled__default["default"](Tag)(templateObject_2$i || (templateObject_2$i = __makeTemplateObject(["\n background-color: transparent;\n pointer-events: none;\n font-weight: ", ";\n ", "\n svg {\n margin-right: ", " !important;\n }\n\n ", " {\n font-weight: ", ";\n margin-left: ", ";\n color: ", ";\n }\n"], ["\n background-color: transparent;\n pointer-events: none;\n font-weight: ", ";\n ", "\n svg {\n margin-right: ", " !important;\n }\n\n ", " {\n font-weight: ", ";\n margin-left: ", ";\n color: ", ";\n }\n"])), function (_a) {
1018
1057
  var theme = _a.theme;
1019
1058
  return theme.fontWeights.regular;
1020
1059
  }, function (_a) {
@@ -1032,7 +1071,7 @@ var StyledTag = styled__default["default"](Tag)(templateObject_1$L || (templateO
1032
1071
  }, function (_a) {
1033
1072
  var theme = _a.theme;
1034
1073
  return theme.space.xxs;
1035
- }, function (_a) {
1074
+ }, StyledSpan, function (_a) {
1036
1075
  var theme = _a.theme;
1037
1076
  return theme.fontWeights.bold;
1038
1077
  }, function (_a) {
@@ -1046,11 +1085,12 @@ var StyledTag = styled__default["default"](Tag)(templateObject_1$L || (templateO
1046
1085
  * Counter let users categorize content using a keyword.
1047
1086
  */
1048
1087
  var Counter = function (props) {
1088
+ var width = useWindowSize().width;
1049
1089
  var status = props.status, counter = props.counter;
1050
- return (jsxRuntime.jsxs(StyledTag, __assign({}, props, { size: props.size || "large" }, { children: [jsxRuntime.jsx(StyledTag.Avatar, { children: jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [status === "completed" && jsxRuntime.jsx(SvgCampaignCompleted, {}), status === "progress" && jsxRuntime.jsx(SvgCampaignProgress, {}), status === "incoming" && jsxRuntime.jsx(SvgCampaignIncoming, {}), status === "functional" && jsxRuntime.jsx(SvgCampaignFunctional, {}), status === "experiential" && jsxRuntime.jsx(SvgCampaignExperiential, {})] }) }), props.children, counter !== undefined && jsxRuntime.jsx("span", { children: counter.toString() })] })));
1090
+ return (jsxRuntime.jsxs(StyledTag, __assign({}, props, { size: props.size || "large" }, { children: [jsxRuntime.jsx(StyledTag.Avatar, { children: jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [status === "completed" && jsxRuntime.jsx(SvgCampaignCompleted, {}), status === "progress" && jsxRuntime.jsx(SvgCampaignProgress, {}), status === "incoming" && jsxRuntime.jsx(SvgCampaignIncoming, {}), status === "functional" && jsxRuntime.jsx(SvgCampaignFunctional, {}), status === "experiential" && jsxRuntime.jsx(SvgCampaignExperiential, {})] }) }), width > parseInt(theme.breakpoints.sm) && props.children, counter !== undefined && jsxRuntime.jsx(StyledSpan, { children: counter.toString() })] })));
1051
1091
  };
1052
1092
  Counter.Avatar = StyledTag.Avatar;
1053
- var templateObject_1$L;
1093
+ var templateObject_1$N, templateObject_2$i;
1054
1094
 
1055
1095
  /**
1056
1096
  * A Drawer is a container for supplementary content that is anchored to the edge of a page.
@@ -1066,20 +1106,20 @@ Drawer.Footer = reactModals.DrawerModal.Footer;
1066
1106
  Drawer.FooterItem = reactModals.DrawerModal.FooterItem;
1067
1107
  Drawer.Close = reactModals.DrawerModal.Close;
1068
1108
 
1069
- var Field$1 = styled__default["default"](reactDropdowns.Field)(templateObject_1$K || (templateObject_1$K = __makeTemplateObject([""], [""])));
1070
- var templateObject_1$K;
1109
+ var Field$1 = styled__default["default"](reactDropdowns.Field)(templateObject_1$M || (templateObject_1$M = __makeTemplateObject([""], [""])));
1110
+ var templateObject_1$M;
1071
1111
 
1072
1112
  var index$1 = /*#__PURE__*/Object.freeze({
1073
1113
  __proto__: null,
1074
1114
  Field: Field$1
1075
1115
  });
1076
1116
 
1077
- var UgItem = styled__default["default"](reactDropdowns.Item)(templateObject_1$J || (templateObject_1$J = __makeTemplateObject(["\n &[disabled] svg {\n opacity: 0.5;\n }\n &:hover {\n background-color: ", ";\n }\n"], ["\n &[disabled] svg {\n opacity: 0.5;\n }\n &:hover {\n background-color: ", ";\n }\n"])), function (_a) {
1117
+ var UgItem = styled__default["default"](reactDropdowns.Item)(templateObject_1$L || (templateObject_1$L = __makeTemplateObject(["\n &[disabled] svg {\n opacity: 0.5;\n }\n &:hover {\n background-color: ", ";\n }\n"], ["\n &[disabled] svg {\n opacity: 0.5;\n }\n &:hover {\n background-color: ", ";\n }\n"])), function (_a) {
1078
1118
  var theme = _a.theme;
1079
1119
  return theme.palette.blue[100];
1080
1120
  });
1081
1121
  var Item = function (props) { return jsxRuntime.jsx(UgItem, __assign({}, props)); };
1082
- var templateObject_1$J;
1122
+ var templateObject_1$L;
1083
1123
 
1084
1124
  /**
1085
1125
  * A Menu is a wrapper for items elements
@@ -1103,7 +1143,7 @@ var MediaItem = function (props) { return jsxRuntime.jsx(reactDropdowns.MediaIte
1103
1143
  */
1104
1144
  var Multiselect = function (props) { return (jsxRuntime.jsx(reactDropdowns.Multiselect, __assign({}, props))); };
1105
1145
 
1106
- var UgSelect = styled__default["default"](reactDropdowns.Select)(templateObject_1$I || (templateObject_1$I = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), function (props) {
1146
+ var UgSelect = styled__default["default"](reactDropdowns.Select)(templateObject_1$K || (templateObject_1$K = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), function (props) {
1107
1147
  return props.isPrimary &&
1108
1148
  "\n background-color: ".concat(props.theme.palette.blue[600], ";\n color: white;\n & svg[data-garden-id=\"forms.media_figure\"] {\n color: white;\n }\n ");
1109
1149
  });
@@ -1120,7 +1160,7 @@ var UgSelect = styled__default["default"](reactDropdowns.Select)(templateObject_
1120
1160
  var Select = function (props) { return jsxRuntime.jsx(UgSelect, __assign({}, props)); };
1121
1161
  var Dropdown = function (props) { return (jsxRuntime.jsx(reactDropdowns.Dropdown, __assign({}, props))); };
1122
1162
  var Message = function (props) { return jsxRuntime.jsx(reactDropdowns.Message, __assign({}, props)); };
1123
- var templateObject_1$I;
1163
+ var templateObject_1$K;
1124
1164
 
1125
1165
  /**
1126
1166
  * Autocomplete is an input field that filters results as users type. This helps users find something quickly in a large list of options.
@@ -1135,7 +1175,7 @@ var Autocomplete = function (props) { return jsxRuntime.jsx(reactDropdowns.Autoc
1135
1175
 
1136
1176
  var MenuHeaderItem = function (props) { return (jsxRuntime.jsx(reactDropdowns.HeaderItem, __assign({}, props))); };
1137
1177
 
1138
- var UgCheckbox = styled__default["default"](reactForms.Checkbox)(templateObject_1$H || (templateObject_1$H = __makeTemplateObject([""], [""])));
1178
+ var UgCheckbox = styled__default["default"](reactForms.Checkbox)(templateObject_1$J || (templateObject_1$J = __makeTemplateObject([""], [""])));
1139
1179
  /**
1140
1180
  * A Checkbox lets users select and unselect options from a list.
1141
1181
  * <hr>
@@ -1147,9 +1187,9 @@ var UgCheckbox = styled__default["default"](reactForms.Checkbox)(templateObject_
1147
1187
  * - To let users activate an option that takes effect immediately, use a Toggle instead
1148
1188
  **/
1149
1189
  var Checkbox = function (props) { return jsxRuntime.jsx(UgCheckbox, __assign({}, props)); };
1150
- var templateObject_1$H;
1190
+ var templateObject_1$J;
1151
1191
 
1152
- var StyledCard$1 = styled__default["default"](Card)(templateObject_1$G || (templateObject_1$G = __makeTemplateObject(["\n ", "\n text-align: center;\n justify-content: center;\n align-items: center;\n\n &.card-active {\n border-color: ", ";\n }\n"], ["\n ", "\n text-align: center;\n justify-content: center;\n align-items: center;\n\n &.card-active {\n border-color: ", ";\n }\n"])), cardStyle, function (_a) {
1192
+ var StyledCard$1 = styled__default["default"](Card)(templateObject_1$I || (templateObject_1$I = __makeTemplateObject(["\n ", "\n text-align: center;\n justify-content: center;\n align-items: center;\n\n &.card-active {\n border-color: ", ";\n }\n"], ["\n ", "\n text-align: center;\n justify-content: center;\n align-items: center;\n\n &.card-active {\n border-color: ", ";\n }\n"])), cardStyle, function (_a) {
1153
1193
  var theme = _a.theme;
1154
1194
  return theme.palette.blue[300];
1155
1195
  });
@@ -1157,7 +1197,7 @@ var IconWrapper$1 = styled__default["default"].div(templateObject_2$h || (templa
1157
1197
  var theme = _a.theme;
1158
1198
  return theme.space.base;
1159
1199
  });
1160
- var LabelWrapper = styled__default["default"](Label)(templateObject_3$a || (templateObject_3$a = __makeTemplateObject(["\n margin: ", "px auto;\n color: ", ";\n user-select: none;\n\n &:focus {\n outline: 0;\n }\n"], ["\n margin: ", "px auto;\n color: ", ";\n user-select: none;\n\n &:focus {\n outline: 0;\n }\n"])), function (_a) {
1200
+ var LabelWrapper = styled__default["default"](Label)(templateObject_3$b || (templateObject_3$b = __makeTemplateObject(["\n margin: ", "px auto;\n color: ", ";\n user-select: none;\n\n &:focus {\n outline: 0;\n }\n"], ["\n margin: ", "px auto;\n color: ", ";\n user-select: none;\n\n &:focus {\n outline: 0;\n }\n"])), function (_a) {
1161
1201
  var theme = _a.theme;
1162
1202
  return theme.space.base;
1163
1203
  }, function (_a) {
@@ -1176,14 +1216,14 @@ var CheckboxCard = function (props) {
1176
1216
  };
1177
1217
  return (jsxRuntime.jsxs(StyledCard$1, __assign({}, props.card, props, props && !props.disabled && { onClick: handleToggle }, { className: checked ? "card-active" : "" }, { children: [jsxRuntime.jsx(IconWrapper$1, { children: (props.iconActive && checked) ? props.iconActive : props.icon }), jsxRuntime.jsx(LabelWrapper, { children: props.label }), jsxRuntime.jsx(Checkbox, __assign({}, props, { checked: checked, value: checked ? 1 : 0, onClick: function (e) { return e.stopPropagation(); } }, { children: jsxRuntime.jsx(StyledLabel, __assign({ hidden: true }, { children: props.label })) }))] })));
1178
1218
  };
1179
- var templateObject_1$G, templateObject_2$h, templateObject_3$a, templateObject_4$8;
1219
+ var templateObject_1$I, templateObject_2$h, templateObject_3$b, templateObject_4$8;
1180
1220
 
1181
- var UgField = styled__default["default"](reactForms.Field)(templateObject_1$F || (templateObject_1$F = __makeTemplateObject([""], [""])));
1221
+ var UgField = styled__default["default"](reactForms.Field)(templateObject_1$H || (templateObject_1$H = __makeTemplateObject([""], [""])));
1182
1222
  /**
1183
1223
  * A Field is a wrapper for input elements
1184
1224
  **/
1185
1225
  var Field = function (props) { return jsxRuntime.jsx(UgField, __assign({}, props)); };
1186
- var templateObject_1$F;
1226
+ var templateObject_1$H;
1187
1227
 
1188
1228
  var index = /*#__PURE__*/Object.freeze({
1189
1229
  __proto__: null,
@@ -1191,7 +1231,7 @@ var index = /*#__PURE__*/Object.freeze({
1191
1231
  Hint: reactForms.Hint
1192
1232
  });
1193
1233
 
1194
- var UgInput = styled__default["default"](reactForms.Input)(templateObject_1$E || (templateObject_1$E = __makeTemplateObject([""], [""])));
1234
+ var UgInput = styled__default["default"](reactForms.Input)(templateObject_1$G || (templateObject_1$G = __makeTemplateObject([""], [""])));
1195
1235
  var Hint = styled__default["default"](reactForms.Hint)(templateObject_2$g || (templateObject_2$g = __makeTemplateObject([""], [""])));
1196
1236
  /**
1197
1237
  * An Input lets users enter text into a field.
@@ -1201,9 +1241,9 @@ var Hint = styled__default["default"](reactForms.Hint)(templateObject_2$g || (te
1201
1241
  * - To enter multiline text, use a Textarea
1202
1242
  **/
1203
1243
  var Input = function (props) { return jsxRuntime.jsx(UgInput, __assign({}, props)); };
1204
- var templateObject_1$E, templateObject_2$g;
1244
+ var templateObject_1$G, templateObject_2$g;
1205
1245
 
1206
- var UgMediaInput = styled__default["default"](reactForms.MediaInput)(templateObject_1$D || (templateObject_1$D = __makeTemplateObject([""], [""])));
1246
+ var UgMediaInput = styled__default["default"](reactForms.MediaInput)(templateObject_1$F || (templateObject_1$F = __makeTemplateObject([""], [""])));
1207
1247
  /**
1208
1248
  * Media elements add even more context to an input.
1209
1249
  * <hr>
@@ -1212,9 +1252,9 @@ var UgMediaInput = styled__default["default"](reactForms.MediaInput)(templateObj
1212
1252
  * - To enter multiline text, use a Textarea
1213
1253
  **/
1214
1254
  var MediaInput = function (props) { return jsxRuntime.jsx(UgMediaInput, __assign({}, props)); };
1215
- var templateObject_1$D;
1255
+ var templateObject_1$F;
1216
1256
 
1217
- var UgRadio = styled__default["default"](reactForms.Radio)(templateObject_1$C || (templateObject_1$C = __makeTemplateObject([""], [""])));
1257
+ var UgRadio = styled__default["default"](reactForms.Radio)(templateObject_1$E || (templateObject_1$E = __makeTemplateObject([""], [""])));
1218
1258
  /**
1219
1259
  * Radio buttons let users choose a single option among two or more mutually exclusive options.
1220
1260
  * <hr>
@@ -1226,7 +1266,7 @@ var UgRadio = styled__default["default"](reactForms.Radio)(templateObject_1$C ||
1226
1266
  * - To select from a long list of options, use Select instead
1227
1267
  **/
1228
1268
  var Radio = function (props) { return jsxRuntime.jsx(UgRadio, __assign({}, props)); };
1229
- var templateObject_1$C;
1269
+ var templateObject_1$E;
1230
1270
 
1231
1271
  var _path$f;
1232
1272
 
@@ -1246,7 +1286,7 @@ var SvgCheckLg = function SvgCheckLg(props) {
1246
1286
  })));
1247
1287
  };
1248
1288
 
1249
- var StyledCard = styled__default["default"](Card)(templateObject_1$B || (templateObject_1$B = __makeTemplateObject(["\n ", "\n text-align: center;\n justify-content: center;\n align-items: center;\n\n &.card-active {\n border-color: ", ";\n }\n"], ["\n ", "\n text-align: center;\n justify-content: center;\n align-items: center;\n\n &.card-active {\n border-color: ", ";\n }\n"])), cardStyle, function (_a) {
1289
+ var StyledCard = styled__default["default"](Card)(templateObject_1$D || (templateObject_1$D = __makeTemplateObject(["\n ", "\n text-align: center;\n justify-content: center;\n align-items: center;\n\n &.card-active {\n border-color: ", ";\n }\n"], ["\n ", "\n text-align: center;\n justify-content: center;\n align-items: center;\n\n &.card-active {\n border-color: ", ";\n }\n"])), cardStyle, function (_a) {
1250
1290
  var theme = _a.theme;
1251
1291
  return theme.palette.blue[300];
1252
1292
  });
@@ -1254,7 +1294,7 @@ var IconWrapper = styled__default["default"].div(templateObject_2$f || (template
1254
1294
  var theme = _a.theme;
1255
1295
  return theme.space.base;
1256
1296
  });
1257
- var StyledText = styled__default["default"](reactTypography.LG)(templateObject_3$9 || (templateObject_3$9 = __makeTemplateObject(["\n margin: ", "px auto;\n color: ", ";\n font-weight: ", ";\n color: ", ";\n user-select: none;\n\n &:focus {\n outline: 0;\n }\n"], ["\n margin: ", "px auto;\n color: ", ";\n font-weight: ", ";\n color: ", ";\n user-select: none;\n\n &:focus {\n outline: 0;\n }\n"])), function (_a) {
1297
+ var StyledText = styled__default["default"](reactTypography.LG)(templateObject_3$a || (templateObject_3$a = __makeTemplateObject(["\n margin: ", "px auto;\n color: ", ";\n font-weight: ", ";\n color: ", ";\n user-select: none;\n\n &:focus {\n outline: 0;\n }\n"], ["\n margin: ", "px auto;\n color: ", ";\n font-weight: ", ";\n color: ", ";\n user-select: none;\n\n &:focus {\n outline: 0;\n }\n"])), function (_a) {
1258
1298
  var theme = _a.theme;
1259
1299
  return theme.space.base;
1260
1300
  }, function (_a) {
@@ -1295,9 +1335,9 @@ var RadioCard = function (_a) {
1295
1335
  var card = _a.card, icon = _a.icon, iconActive = _a.iconActive, props = __rest(_a, ["card", "icon", "iconActive"]);
1296
1336
  return (jsxRuntime.jsxs(StyledCard, __assign({}, card, props, { className: props.checked ? "card-active" : "", onClick: function () { props.onChecked && props.onChecked(props.value); } }, { children: [jsxRuntime.jsx(Circle, __assign({ checked: (_b = props.checked) !== null && _b !== void 0 ? _b : false }, { children: jsxRuntime.jsx(SvgCheckLg, { fill: "white" }) })), jsxRuntime.jsx(IconWrapper, { children: (iconActive && props.checked) ? iconActive : icon }), jsxRuntime.jsx("input", { hidden: true, type: "radio", value: props.value, name: props.name, checked: props.checked }), jsxRuntime.jsx(StyledDivider, {}), jsxRuntime.jsx(StyledText, { children: props.label })] })));
1297
1337
  };
1298
- var templateObject_1$B, templateObject_2$f, templateObject_3$9, templateObject_4$7, templateObject_5$3;
1338
+ var templateObject_1$D, templateObject_2$f, templateObject_3$a, templateObject_4$7, templateObject_5$3;
1299
1339
 
1300
- var UgTextarea = styled__default["default"](reactForms.Textarea)(templateObject_1$A || (templateObject_1$A = __makeTemplateObject([""], [""])));
1340
+ var UgTextarea = styled__default["default"](reactForms.Textarea)(templateObject_1$C || (templateObject_1$C = __makeTemplateObject([""], [""])));
1301
1341
  /**
1302
1342
  * A Textarea is a form control for multi-line text.
1303
1343
  * <hr>
@@ -1305,9 +1345,9 @@ var UgTextarea = styled__default["default"](reactForms.Textarea)(templateObject_
1305
1345
  * - To enter multi-line text
1306
1346
  **/
1307
1347
  var Textarea = function (props) { return jsxRuntime.jsx(UgTextarea, __assign({}, props)); };
1308
- var templateObject_1$A;
1348
+ var templateObject_1$C;
1309
1349
 
1310
- var UgToggle = styled__default["default"](reactForms.Toggle)(templateObject_1$z || (templateObject_1$z = __makeTemplateObject([""], [""])));
1350
+ var UgToggle = styled__default["default"](reactForms.Toggle)(templateObject_1$B || (templateObject_1$B = __makeTemplateObject([""], [""])));
1311
1351
  /**
1312
1352
  * A Toggle lets users turn something on and off like a light switch. Unlike a Checkbox, which is used for selection, a Toggle is used for activation.
1313
1353
  * <hr>
@@ -1318,7 +1358,7 @@ var UgToggle = styled__default["default"](reactForms.Toggle)(templateObject_1$z
1318
1358
  * - To let users select from a list of settings, use Checkboxes instead
1319
1359
  **/
1320
1360
  var Toggle = function (props) { return jsxRuntime.jsx(UgToggle, __assign({}, props)); };
1321
- var templateObject_1$z;
1361
+ var templateObject_1$B;
1322
1362
 
1323
1363
  var Col = function (props) { return jsxRuntime.jsx(reactGrid.Col, __assign({}, props)); };
1324
1364
 
@@ -1383,7 +1423,7 @@ var SvgUgTriangle = function SvgUgTriangle(props) {
1383
1423
  })));
1384
1424
  };
1385
1425
 
1386
- var StyledUgIcon$1 = styled__default["default"].span(templateObject_1$y || (templateObject_1$y = __makeTemplateObject([""], [""])));
1426
+ var StyledUgIcon$1 = styled__default["default"].span(templateObject_1$A || (templateObject_1$A = __makeTemplateObject([""], [""])));
1387
1427
  var Icon = function (props) {
1388
1428
  var children = function (type, size) {
1389
1429
  if (size === void 0) { size = 24; }
@@ -1396,9 +1436,9 @@ var Icon = function (props) {
1396
1436
  };
1397
1437
  return (jsxRuntime.jsx(StyledUgIcon$1, { children: children(props.type, props.size) }));
1398
1438
  };
1399
- var templateObject_1$y;
1439
+ var templateObject_1$A;
1400
1440
 
1401
- var UgProgress = styled__default["default"](reactLoaders.Progress)(templateObject_1$x || (templateObject_1$x = __makeTemplateObject([""], [""])));
1441
+ var UgProgress = styled__default["default"](reactLoaders.Progress)(templateObject_1$z || (templateObject_1$z = __makeTemplateObject([""], [""])));
1402
1442
  /**
1403
1443
  * A Progress loader communicates progress when downloading or uploading content.
1404
1444
  * <hr>
@@ -1410,9 +1450,9 @@ var UgProgress = styled__default["default"](reactLoaders.Progress)(templateObjec
1410
1450
  - When loading page content, use a Skeleton loader instead
1411
1451
  */
1412
1452
  var Progress = function (props) { return jsxRuntime.jsx(UgProgress, __assign({}, props)); };
1413
- var templateObject_1$x;
1453
+ var templateObject_1$z;
1414
1454
 
1415
- var UgSpinner = styled__default["default"](reactLoaders.Spinner)(templateObject_1$w || (templateObject_1$w = __makeTemplateObject([""], [""])));
1455
+ var UgSpinner = styled__default["default"](reactLoaders.Spinner)(templateObject_1$y || (templateObject_1$y = __makeTemplateObject([""], [""])));
1416
1456
  /**
1417
1457
  * Breadcrumbs mark and communicate a user’s location in the product.
1418
1458
  * <hr>
@@ -1421,9 +1461,9 @@ var UgSpinner = styled__default["default"](reactLoaders.Spinner)(templateObject_
1421
1461
  - To provide a quick way to navigate to ancestor pages
1422
1462
  */
1423
1463
  var Spinner = function (props) { return jsxRuntime.jsx(UgSpinner, __assign({}, props)); };
1424
- var templateObject_1$w;
1464
+ var templateObject_1$y;
1425
1465
 
1426
- var UgBody = styled__default["default"](reactChrome.Body)(templateObject_1$v || (templateObject_1$v = __makeTemplateObject(["\n background-color: ", ";\n"], ["\n background-color: ", ";\n"])), function (_a) {
1466
+ var UgBody = styled__default["default"](reactChrome.Body)(templateObject_1$x || (templateObject_1$x = __makeTemplateObject(["\n background-color: ", ";\n"], ["\n background-color: ", ";\n"])), function (_a) {
1427
1467
  var theme = _a.theme;
1428
1468
  return theme.palette.white;
1429
1469
  });
@@ -1431,7 +1471,7 @@ var UgBody = styled__default["default"](reactChrome.Body)(templateObject_1$v ||
1431
1471
  * A Body defines the main content of an HTML document which displays on the browser
1432
1472
  */
1433
1473
  var Body$1 = function (props) { return jsxRuntime.jsx(UgBody, __assign({}, props)); };
1434
- var templateObject_1$v;
1474
+ var templateObject_1$x;
1435
1475
 
1436
1476
  /**
1437
1477
  * A Content defines the main content of an HTML document which displays on the browser
@@ -1455,7 +1495,7 @@ var SvgChevronDownStroke = function SvgChevronDownStroke(props) {
1455
1495
  })));
1456
1496
  };
1457
1497
 
1458
- var UgHeaderItem = styled__default["default"](reactChrome.HeaderItem)(templateObject_1$u || (templateObject_1$u = __makeTemplateObject(["\n ", ";\n font-family: ", ";\n"], ["\n ", ";\n font-family: ", ";\n"])), function (props) { return props.hasLogo && "border-right: none"; }, function (_a) {
1498
+ var UgHeaderItem = styled__default["default"](reactChrome.HeaderItem)(templateObject_1$w || (templateObject_1$w = __makeTemplateObject(["\n ", ";\n font-family: ", ";\n"], ["\n ", ";\n font-family: ", ";\n"])), function (props) { return props.hasLogo && "border-right: none"; }, function (_a) {
1459
1499
  var theme = _a.theme;
1460
1500
  return theme.fonts.system;
1461
1501
  });
@@ -1464,14 +1504,14 @@ styled__default["default"](reactChrome.HeaderItemWrapper)(templateObject_2$e ||
1464
1504
  return theme.fonts.system;
1465
1505
  });
1466
1506
  var HeaderItem = function (props) { return jsxRuntime.jsx(UgHeaderItem, __assign({}, props)); };
1467
- var templateObject_1$u, templateObject_2$e;
1507
+ var templateObject_1$w, templateObject_2$e;
1468
1508
 
1469
- var UgHeaderItemText = styled__default["default"](reactChrome.HeaderItemText)(templateObject_1$t || (templateObject_1$t = __makeTemplateObject(["\n font-family: ", ";\n"], ["\n font-family: ", ";\n"])), function (_a) {
1509
+ var UgHeaderItemText = styled__default["default"](reactChrome.HeaderItemText)(templateObject_1$v || (templateObject_1$v = __makeTemplateObject(["\n font-family: ", ";\n"], ["\n font-family: ", ";\n"])), function (_a) {
1470
1510
  var theme = _a.theme;
1471
1511
  return theme.fonts.system;
1472
1512
  });
1473
1513
  var HeaderItemText = function (props) { return jsxRuntime.jsx(UgHeaderItemText, __assign({}, props)); };
1474
- var templateObject_1$t;
1514
+ var templateObject_1$v;
1475
1515
 
1476
1516
  var HeaderItemIcon = function (props) { return (jsxRuntime.jsx(reactChrome.HeaderItemIcon, __assign({}, props))); };
1477
1517
 
@@ -1530,7 +1570,30 @@ var XL = function (props) { return jsxRuntime.jsx(reactTypography.XL, __assign({
1530
1570
  var XXL = function (props) { return jsxRuntime.jsx(reactTypography.XXL, __assign({}, props)); };
1531
1571
  var XXXL = function (props) { return jsxRuntime.jsx(reactTypography.XXXL, __assign({}, props)); };
1532
1572
 
1533
- var LogoIconContainer = styled__default["default"](reactChrome.HeaderItem)(templateObject_1$s || (templateObject_1$s = __makeTemplateObject(["\n margin-right: 2px;\n border-right: none;\n @media (max-width: ", ") {\n right: 0;\n left: 0;\n margin-right: auto;\n margin-left: auto;\n position: absolute;\n }\n"], ["\n margin-right: 2px;\n border-right: none;\n @media (max-width: ", ") {\n right: 0;\n left: 0;\n margin-right: auto;\n margin-left: auto;\n position: absolute;\n }\n"])), function (_a) {
1573
+ /**
1574
+ * Use Ellipsis to automatically provide text content with a native title attribute and text-overflow styling.
1575
+ */
1576
+ var Ellipsis = function (props) { return jsxRuntime.jsx(reactTypography.Ellipsis, __assign({}, props)); };
1577
+
1578
+ var StyledEllipsis = styled__default["default"](Ellipsis)(templateObject_1$u || (templateObject_1$u = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), function (_a) {
1579
+ var theme = _a.theme, isCompact = _a.isCompact;
1580
+ return isCompact &&
1581
+ "\n width: ".concat(theme.components.chrome.nav.workspaceDropdownWidth, "px; \n ");
1582
+ });
1583
+ var WorkspacesDropdown = function (props) {
1584
+ var _a = React.useState(props.activeWorkspace), selectedWorkspace = _a[0], setSelectedWorkspace = _a[1];
1585
+ return (jsxRuntime.jsxs(Dropdown, __assign({ selectedItem: selectedWorkspace, onSelect: function (workspace) {
1586
+ setSelectedWorkspace(workspace);
1587
+ props.onWorkspaceChange && props.onWorkspaceChange(workspace);
1588
+ }, downshiftProps: {
1589
+ itemToString: function (item) { return item && item.company; },
1590
+ } }, { children: [jsxRuntime.jsx(reactDropdowns.Field, { children: jsxRuntime.jsx(Select, __assign({ style: { color: theme.colors.primaryHue } }, { children: jsxRuntime.jsx(StyledEllipsis, __assign({ isCompact: props.isCompact }, { children: selectedWorkspace
1591
+ ? selectedWorkspace.company + "'s workspace"
1592
+ : "Select workspace" })) })) }), jsxRuntime.jsxs(Menu, { children: [jsxRuntime.jsx(MenuHeaderItem, { children: jsxRuntime.jsx(MD, __assign({ isBold: true, style: { color: theme.palette.grey[800] } }, { children: props.workspacesLabel || "Workspaces" })) }), jsxRuntime.jsx(Separator, {}), props.workspaces && props.workspaces.map(function (item) { return (jsxRuntime.jsx(Item, __assign({ value: item }, { children: item.company }))); })] })] })));
1593
+ };
1594
+ var templateObject_1$u;
1595
+
1596
+ var LogoIconContainer = styled__default["default"](reactChrome.HeaderItem)(templateObject_1$t || (templateObject_1$t = __makeTemplateObject(["\n margin-right: 2px;\n border-right: none;\n @media (max-width: ", ") {\n right: 0;\n left: 0;\n margin-right: auto;\n margin-left: auto;\n position: absolute;\n }\n"], ["\n margin-right: 2px;\n border-right: none;\n @media (max-width: ", ") {\n right: 0;\n left: 0;\n margin-right: auto;\n margin-left: auto;\n position: absolute;\n }\n"])), function (_a) {
1534
1597
  var theme = _a.theme;
1535
1598
  return theme.breakpoints.sm;
1536
1599
  });
@@ -1544,7 +1607,7 @@ var BrandName = styled__default["default"](reactChrome.HeaderItem)(templateObjec
1544
1607
  var theme = _a.theme;
1545
1608
  return theme.breakpoints.sm;
1546
1609
  });
1547
- var DropdownItem = styled__default["default"](reactChrome.HeaderItem)(templateObject_3$8 || (templateObject_3$8 = __makeTemplateObject(["\n margin-right: auto;\n margin-left: -8px;\n color: ", ";\n font-family: ", ";\n z-index: 2;\n @media (max-width: ", ") {\n display: none;\n }\n"], ["\n margin-right: auto;\n margin-left: -8px;\n color: ", ";\n font-family: ", ";\n z-index: 2;\n @media (max-width: ", ") {\n display: none;\n }\n"])), function (_a) {
1610
+ var DropdownItem = styled__default["default"](reactChrome.HeaderItem)(templateObject_3$9 || (templateObject_3$9 = __makeTemplateObject(["\n margin-right: auto;\n margin-left: -8px;\n color: ", ";\n font-family: ", ";\n z-index: 2;\n @media (max-width: ", ") {\n display: none;\n }\n"], ["\n margin-right: auto;\n margin-left: -8px;\n color: ", ";\n font-family: ", ";\n z-index: 2;\n @media (max-width: ", ") {\n display: none;\n }\n"])), function (_a) {
1548
1611
  var theme = _a.theme;
1549
1612
  return theme.palette.blue["600"];
1550
1613
  }, function (_a) {
@@ -1562,19 +1625,11 @@ var MenuItem$1 = styled__default["default"](reactChrome.HeaderItem)(templateObje
1562
1625
  return theme.breakpoints.sm;
1563
1626
  });
1564
1627
  var BrandItem = function (props) {
1565
- var _a = React.useState(props.activeWorkspace), selectedWorkspace = _a[0], setSelectedWorkspace = _a[1];
1566
- return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs(MenuItem$1, __assign({}, props, { onClick: props.toggleMenu }, { children: [jsxRuntime.jsx(HeaderItemIcon, { children: jsxRuntime.jsx(SvgMenuStroke, {}) }), props.menuLabel && jsxRuntime.jsx(HeaderItemText, { children: props.menuLabel })] })), jsxRuntime.jsx(LogoIconContainer, __assign({}, props, { hasLogo: true }, { children: jsxRuntime.jsx(HeaderItemIcon, { children: jsxRuntime.jsx(Logo, { type: "icon", size: 150 }) }) })), props.workspaces && props.workspaces.length > 1 ? (jsxRuntime.jsx(DropdownItem, { children: jsxRuntime.jsxs(Dropdown, __assign({ selectedItem: selectedWorkspace, onSelect: function (workspace) {
1567
- setSelectedWorkspace(workspace);
1568
- props.onWorkspaceChange && props.onWorkspaceChange(workspace);
1569
- }, downshiftProps: {
1570
- itemToString: function (item) { return item && item.company; },
1571
- } }, { children: [jsxRuntime.jsx(reactDropdowns.Field, { children: jsxRuntime.jsx(Select, __assign({ style: { color: theme.colors.primaryHue } }, { children: selectedWorkspace
1572
- ? selectedWorkspace.company + "'s workspace"
1573
- : "Select workspace" })) }), jsxRuntime.jsxs(Menu, { children: [jsxRuntime.jsx(MenuHeaderItem, { children: jsxRuntime.jsx(MD, __assign({ isBold: true, style: { color: theme.palette.grey[800] } }, { children: props.workspacesLabel || "Workspaces" })) }), jsxRuntime.jsx(Separator, {}), props.workspaces.map(function (item) { return (jsxRuntime.jsx(Item, __assign({ value: item }, { children: item.company }))); })] })] })) })) : (jsxRuntime.jsx(jsxRuntime.Fragment, { children: props.brandName && (jsxRuntime.jsx(BrandName, __assign({}, props, { children: jsxRuntime.jsx(HeaderItemText, { children: props.brandName }) }))) }))] }));
1628
+ return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs(MenuItem$1, __assign({}, props, { onClick: props.toggleMenu }, { children: [jsxRuntime.jsx(HeaderItemIcon, { children: jsxRuntime.jsx(SvgMenuStroke, {}) }), props.menuLabel && jsxRuntime.jsx(HeaderItemText, { children: props.menuLabel })] })), jsxRuntime.jsx(LogoIconContainer, __assign({}, props, { hasLogo: true }, { children: jsxRuntime.jsx(HeaderItemIcon, { children: jsxRuntime.jsx(Logo, { type: "icon", size: 150 }) }) })), props.workspaces && props.workspaces.length > 1 ? (jsxRuntime.jsx(DropdownItem, { children: jsxRuntime.jsx(WorkspacesDropdown, { workspaces: props.workspaces, workspacesLabel: props.workspacesLabel, activeWorkspace: props.activeWorkspace, onWorkspaceChange: props.onWorkspaceChange }) })) : (jsxRuntime.jsx(jsxRuntime.Fragment, { children: props.brandName && (jsxRuntime.jsx(BrandName, __assign({}, props, { children: jsxRuntime.jsx(HeaderItemText, { children: props.brandName }) }))) }))] }));
1574
1629
  };
1575
- var templateObject_1$s, templateObject_2$d, templateObject_3$8, templateObject_4$6;
1630
+ var templateObject_1$t, templateObject_2$d, templateObject_3$9, templateObject_4$6;
1576
1631
 
1577
- var UgHeader = styled__default["default"](reactChrome.Header)(templateObject_1$r || (templateObject_1$r = __makeTemplateObject(["\n height: ", ";\n"], ["\n height: ", ";\n"])), theme.components.chrome.header.height);
1632
+ var UgHeader = styled__default["default"](reactChrome.Header)(templateObject_1$s || (templateObject_1$s = __makeTemplateObject(["\n height: ", ";\n"], ["\n height: ", ";\n"])), theme.components.chrome.header.height);
1578
1633
  /**
1579
1634
  * An Header is a visual way to display general information.
1580
1635
  * This can include navList Items, modal, profile settings.
@@ -1583,13 +1638,13 @@ var Header = function (props) { return jsxRuntime.jsx(UgHeader, __assign({}, pro
1583
1638
  Header.HeaderItem = HeaderItem;
1584
1639
  Header.HeaderItemText = HeaderItemText;
1585
1640
  Header.HeaderItemIcon = HeaderItemIcon;
1586
- var templateObject_1$r;
1641
+ var templateObject_1$s;
1587
1642
 
1588
1643
  var HeaderSkeleton = function () {
1589
- return (jsxRuntime.jsxs(Header, __assign({ isStandalone: true }, { children: [jsxRuntime.jsx(LogoIconContainer, __assign({ hasLogo: true }, { children: jsxRuntime.jsx(HeaderItemIcon, { children: jsxRuntime.jsx(Logo, { type: "icon", size: 150 }) }) })), jsxRuntime.jsx(HeaderItem, __assign({ style: { marginRight: "auto", marginLeft: "-4px" } }, { children: jsxRuntime.jsx(Skeleton, { width: "200px", height: theme.space.sm }) })), jsxRuntime.jsx(HeaderItem, __assign({ isRound: true }, { children: jsxRuntime.jsx(HeaderItemIcon, { children: jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsx(Skeleton, { width: "32px", height: "32px", style: { borderRadius: "100%" } }) }) }) }))] })));
1644
+ return (jsxRuntime.jsxs(Header, __assign({ isStandalone: true }, { children: [jsxRuntime.jsx(LogoIconContainer, __assign({ hasLogo: true }, { children: jsxRuntime.jsx(HeaderItemIcon, { children: jsxRuntime.jsx(Logo, { type: "icon", size: 150 }) }) })), jsxRuntime.jsx(HeaderItem, __assign({ style: { marginRight: "auto", marginLeft: "-4px" } }, { children: window.matchMedia("only screen and (min-width: 576px)").matches ? (jsxRuntime.jsx(Skeleton, { width: "200px", height: theme.space.sm })) : (jsxRuntime.jsx(Skeleton, { width: "80px", height: theme.space.sm, style: { marginLeft: theme.space.sm } })) })), jsxRuntime.jsx(HeaderItem, __assign({ isRound: true }, { children: jsxRuntime.jsx(HeaderItemIcon, { children: jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsx(Skeleton, { width: "32px", height: "32px", style: { borderRadius: "100%" } }) }) }) }))] })));
1590
1645
  };
1591
1646
 
1592
- var ChevronButton = styled__default["default"](IconButton)(templateObject_1$q || (templateObject_1$q = __makeTemplateObject(["\n @media (max-width: ", ") {\n display: none;\n }\n"], ["\n @media (max-width: ", ") {\n display: none;\n }\n"])), function (_a) {
1647
+ var ChevronButton = styled__default["default"](IconButton)(templateObject_1$r || (templateObject_1$r = __makeTemplateObject(["\n @media (max-width: ", ") {\n display: none;\n }\n"], ["\n @media (max-width: ", ") {\n display: none;\n }\n"])), function (_a) {
1593
1648
  var theme = _a.theme;
1594
1649
  return theme.breakpoints.sm;
1595
1650
  });
@@ -1601,19 +1656,24 @@ var AppHeader = function (_a) {
1601
1656
  var brand = _a.brand, avatar = _a.avatar, isLoading = _a.isLoading, args = __rest(_a, ["brand", "avatar", "isLoading"]);
1602
1657
  return isLoading ? jsxRuntime.jsx(HeaderSkeleton, {}) : (jsxRuntime.jsxs(Header, __assign({}, args, { children: [jsxRuntime.jsx(BrandItem, __assign({}, brand, { toggleMenu: args.onSidebarMenuToggle })), args.hasChangelog && args.changelogItem && (jsxRuntime.jsx(HeaderItem, __assign({ style: { marginRight: "-" + theme.space.xs } }, { children: jsxRuntime.jsx(HeaderItemIcon, { children: args.changelogItem }) }))), jsxRuntime.jsx(HeaderItem, __assign({ isRound: true, onClick: args.onProfileModalToggle }, { children: jsxRuntime.jsx(HeaderItemIcon, { children: jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(Avatar, __assign({}, avatar)), jsxRuntime.jsx(ChevronButton, __assign({ size: "small", isRotated: args.isProfileModalOpen }, { children: jsxRuntime.jsx(SvgChevronDownStroke, {}) }))] }) }) }))] })));
1603
1658
  };
1604
- var templateObject_1$q;
1659
+ var templateObject_1$r;
1605
1660
 
1606
- var UgNav = styled__default["default"](reactChrome.Nav)(templateObject_1$p || (templateObject_1$p = __makeTemplateObject(["\n border-right: ", ";\n border-color: ", ";\n ", "\n transition: width 0.25s ease-in-out;\n padding-top: ", ";\n padding-left: ", ";\n"], ["\n border-right: ", ";\n border-color: ", ";\n ", "\n transition: width 0.25s ease-in-out;\n padding-top: ", ";\n padding-left: ", ";\n"])), function (_a) {
1661
+ var UgNav = styled__default["default"](reactChrome.Nav)(templateObject_1$q || (templateObject_1$q = __makeTemplateObject(["\n border-right: ", ";\n border-color: ", ";\n ", "\n transition: width 0.25s ease-in-out;\n padding-top: ", ";\n @media (min-width: ", ") {\n padding-left: ", ";\n }\n"], ["\n border-right: ", ";\n border-color: ", ";\n ", "\n transition: width 0.25s ease-in-out;\n padding-top: ", ";\n @media (min-width: ", ") {\n padding-left: ", ";\n }\n"])), function (_a) {
1607
1662
  var theme = _a.theme;
1608
1663
  return theme.borders.sm;
1609
1664
  }, function (_a) {
1610
1665
  var theme = _a.theme;
1611
1666
  return reactTheming.getColor(theme.colors.neutralHue, 300);
1612
1667
  }, function (props) {
1613
- return "\n width: ".concat(props.isExpanded ? props.theme.space.base * 60 : props.theme.space.base * 9, "px;\n @media (max-width: ").concat(props.theme.breakpoints.sm, ") {\n width: ").concat(props.isExpanded ? "100%" : "0", ";\n border-right: none;\n }\n ");
1668
+ return "\n width: ".concat(props.isExpanded
1669
+ ? props.theme.components.chrome.nav.openWidth
1670
+ : props.theme.components.chrome.nav.closedWidth, "px;\n @media (max-width: ").concat(props.theme.breakpoints.sm, ") {\n width: ").concat(props.isExpanded ? "100%" : "0", ";\n border-right: none;\n }\n ");
1614
1671
  }, function (_a) {
1615
1672
  var theme = _a.theme;
1616
1673
  return theme.space.sm;
1674
+ }, function (_a) {
1675
+ var theme = _a.theme;
1676
+ return theme.breakpoints.sm;
1617
1677
  }, function (_a) {
1618
1678
  var theme = _a.theme;
1619
1679
  return theme.space.xs;
@@ -1625,9 +1685,9 @@ var UgNav = styled__default["default"](reactChrome.Nav)(templateObject_1$p || (t
1625
1685
  - To give a consistent dashboard and navigation experience
1626
1686
  */
1627
1687
  var Nav = function (props) { return jsxRuntime.jsx(UgNav, __assign({}, props)); };
1628
- var templateObject_1$p;
1688
+ var templateObject_1$q;
1629
1689
 
1630
- var SelectedItemStyle = styled.css(templateObject_1$o || (templateObject_1$o = __makeTemplateObject(["\n background-color: ", ";\n"], ["\n background-color: ", ";\n"])), function (props) { return props.theme.palette.kale["100"]; });
1690
+ var SelectedItemStyle = styled.css(templateObject_1$p || (templateObject_1$p = __makeTemplateObject(["\n background-color: ", ";\n"], ["\n background-color: ", ";\n"])), function (props) { return props.theme.palette.kale["100"]; });
1631
1691
  var UgNavItem$2 = styled__default["default"](reactChrome.NavItem)(templateObject_2$c || (templateObject_2$c = __makeTemplateObject(["\n border-top-left-radius: ", "px;\n border-bottom-left-radius: ", "px;\n font-family: ", ";\n ", "\n ", "\n &:hover, &:focus {\n ", "\n }\n opacity: 1;\n color: ", ";\n font-weight: ", ";\n ", "\n"], ["\n border-top-left-radius: ", "px;\n border-bottom-left-radius: ", "px;\n font-family: ", ";\n ", "\n ", "\n &:hover, &:focus {\n ", "\n }\n opacity: 1;\n color: ", ";\n font-weight: ", ";\n ", "\n"])), function (props) { return props.theme.space.base * 6; }, function (props) { return props.theme.space.base * 6; }, function (_a) {
1632
1692
  var theme = _a.theme;
1633
1693
  return theme.fonts.system;
@@ -1639,16 +1699,11 @@ var NavItem = function (props) {
1639
1699
  // const { isExpanded } = props;
1640
1700
  return jsxRuntime.jsx(UgNavItem$2, __assign({}, props));
1641
1701
  };
1642
- var templateObject_1$o, templateObject_2$c;
1702
+ var templateObject_1$p, templateObject_2$c;
1643
1703
 
1644
- var UgNavIcon = styled__default["default"](reactChrome.NavItemIcon)(templateObject_1$n || (templateObject_1$n = __makeTemplateObject([""], [""])));
1704
+ var UgNavIcon = styled__default["default"](reactChrome.NavItemIcon)(templateObject_1$o || (templateObject_1$o = __makeTemplateObject([""], [""])));
1645
1705
  var NavItemIcon = function (props) { return jsxRuntime.jsx(UgNavIcon, __assign({}, props)); };
1646
- var templateObject_1$n;
1647
-
1648
- /**
1649
- * Use Ellipsis to automatically provide text content with a native title attribute and text-overflow styling.
1650
- */
1651
- var Ellipsis = function (props) { return jsxRuntime.jsx(reactTypography.Ellipsis, __assign({}, props)); };
1706
+ var templateObject_1$o;
1652
1707
 
1653
1708
  var NavItemText = function (props) { return (jsxRuntime.jsx(reactChrome.NavItemText, __assign({}, props, { children: jsxRuntime.jsx(Ellipsis, __assign({ style: { width: "200px" } }, { children: props.children })) }))); };
1654
1709
 
@@ -1686,7 +1741,7 @@ var SvgChevronLeftStroke = function SvgChevronLeftStroke(props) {
1686
1741
  })));
1687
1742
  };
1688
1743
 
1689
- var StyledToggle = styled__default["default"](IconButton)(templateObject_1$m || (templateObject_1$m = __makeTemplateObject(["\n width: ", "px;\n height: ", "px;\n min-width: ", ";\n position: absolute;\n top: ", "px;\n right: -", "px;\n background: ", "};\n z-index: 1;\n @media (max-width: ", ") {\n display: none;\n }\n"], ["\n width: ", "px;\n height: ", "px;\n min-width: ", ";\n position: absolute;\n top: ", "px;\n right: -", "px;\n background: ", "};\n z-index: 1;\n @media (max-width: ", ") {\n display: none;\n }\n"])), function (_a) {
1744
+ var StyledToggle = styled__default["default"](IconButton)(templateObject_1$n || (templateObject_1$n = __makeTemplateObject(["\n width: ", "px;\n height: ", "px;\n min-width: ", ";\n position: absolute;\n top: ", "px;\n right: -", "px;\n background: ", "};\n z-index: 1;\n @media (max-width: ", ") {\n display: none;\n }\n"], ["\n width: ", "px;\n height: ", "px;\n min-width: ", ";\n position: absolute;\n top: ", "px;\n right: -", "px;\n background: ", "};\n z-index: 1;\n @media (max-width: ", ") {\n display: none;\n }\n"])), function (_a) {
1690
1745
  var theme = _a.theme;
1691
1746
  return theme.space.base * 6;
1692
1747
  }, function (_a) {
@@ -1711,18 +1766,18 @@ var StyledToggle = styled__default["default"](IconButton)(templateObject_1$m ||
1711
1766
  var NavToggle = function (props) {
1712
1767
  return (jsxRuntime.jsx(StyledToggle, __assign({}, props, { isPrimary: true, size: "small" }, { children: props.isExpanded ? (jsxRuntime.jsx(SvgChevronLeftStroke, { style: { width: "100%" } })) : (jsxRuntime.jsx(SvgChevronRightStroke, { style: { width: "100%" } })) })));
1713
1768
  };
1714
- var templateObject_1$m;
1769
+ var templateObject_1$n;
1715
1770
 
1716
- var UgNavItem$1 = styled__default["default"](reactChrome.NavItem)(templateObject_1$l || (templateObject_1$l = __makeTemplateObject(["\n width: 100%;\n min-height: ", ";\n opacity: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n padding-right: ", ";\n pointer-events: none;\n\n &:after {\n background: ", ";\n height: 1px;\n flex: 1;\n content: \"\";\n }\n\n span {\n background: #fff;\n margin: 0;\n margin-right: ", ";\n color: ", ";\n font-size: ", ";\n }\n ", "\n"], ["\n width: 100%;\n min-height: ", ";\n opacity: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n padding-right: ", ";\n pointer-events: none;\n\n &:after {\n background: ", ";\n height: 1px;\n flex: 1;\n content: \"\";\n }\n\n span {\n background: #fff;\n margin: 0;\n margin-right: ", ";\n color: ", ";\n font-size: ", ";\n }\n ", "\n"])), function (props) { return props.theme.space.lg; }, function (props) { return props.theme.space.sm; }, function (props) { return props.theme.palette.grey["200"]; }, function (props) { return props.theme.space.sm; }, function (props) { return props.theme.palette.grey["500"]; }, function (props) { return props.theme.fontSizes.sm; }, function (props) { return !props.isExpanded && "display: none;"; });
1771
+ var UgNavItem$1 = styled__default["default"](reactChrome.NavItem)(templateObject_1$m || (templateObject_1$m = __makeTemplateObject(["\n width: 100%;\n min-height: ", ";\n opacity: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n padding-right: ", ";\n pointer-events: none;\n\n &:after {\n background: ", ";\n height: 1px;\n flex: 1;\n content: \"\";\n }\n\n span {\n background: #fff;\n margin: 0;\n margin-right: ", ";\n color: ", ";\n font-size: ", ";\n }\n ", "\n"], ["\n width: 100%;\n min-height: ", ";\n opacity: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n padding-right: ", ";\n pointer-events: none;\n\n &:after {\n background: ", ";\n height: 1px;\n flex: 1;\n content: \"\";\n }\n\n span {\n background: #fff;\n margin: 0;\n margin-right: ", ";\n color: ", ";\n font-size: ", ";\n }\n ", "\n"])), function (props) { return props.theme.space.lg; }, function (props) { return props.theme.space.sm; }, function (props) { return props.theme.palette.grey["200"]; }, function (props) { return props.theme.space.sm; }, function (props) { return props.theme.palette.grey["500"]; }, function (props) { return props.theme.fontSizes.sm; }, function (props) { return !props.isExpanded && "display: none;"; });
1717
1772
  var NavDivider = function (props) { return (jsxRuntime.jsx(UgNavItem$1, __assign({}, props, { children: jsxRuntime.jsx("span", { children: props.children }) }))); };
1718
- var templateObject_1$l;
1773
+ var templateObject_1$m;
1719
1774
 
1720
- var UgProjectSubtitle = styled__default["default"](NavItemText)(templateObject_1$k || (templateObject_1$k = __makeTemplateObject(["\n color: ", ";\n font-size: ", ";\n"], ["\n color: ", ";\n font-size: ", ";\n"])), function (props) { return props.theme.palette.grey["500"]; }, function (props) { return props.theme.fontSizes.sm; });
1775
+ var UgProjectSubtitle = styled__default["default"](NavItemText)(templateObject_1$l || (templateObject_1$l = __makeTemplateObject(["\n color: ", ";\n font-size: ", ";\n"], ["\n color: ", ";\n font-size: ", ";\n"])), function (props) { return props.theme.palette.grey["500"]; }, function (props) { return props.theme.fontSizes.sm; });
1721
1776
  var UgNavItem = styled__default["default"](NavItem)(templateObject_2$b || (templateObject_2$b = __makeTemplateObject(["\n flex-flow: column;\n align-items: flex-start;\n"], ["\n flex-flow: column;\n align-items: flex-start;\n"])));
1722
1777
  var NavItemProject = function (props) { return jsxRuntime.jsx(UgNavItem, __assign({}, props)); };
1723
1778
  NavItemProject.Title = NavItemText;
1724
1779
  NavItemProject.SubTitle = UgProjectSubtitle;
1725
- var templateObject_1$k, templateObject_2$b;
1780
+ var templateObject_1$l, templateObject_2$b;
1726
1781
 
1727
1782
  var _path$7;
1728
1783
 
@@ -1809,24 +1864,23 @@ var SvgToken = function SvgToken(props) {
1809
1864
  })))));
1810
1865
  };
1811
1866
 
1812
- /**
1813
- * Use Span to style and format inline text elements.
1814
- * <hr>
1815
- * Used for this:
1816
- - To apply styles to short strings of text
1817
- - To include icons inline with text
1818
- * Not for this:
1819
- - To style an entire block of text, use Paragraph instead
1820
- */
1821
- var Span = function (props) { return jsxRuntime.jsx(reactTypography.Span, __assign({}, props)); };
1822
-
1823
- var LoadingSidebar = function () {
1824
- var isExpanded = true;
1825
- return (jsxRuntime.jsxs(Nav, __assign({ style: { width: "250px" } }, { children: [jsxRuntime.jsx(NavToggle, { isExpanded: isExpanded }), jsxRuntime.jsxs(NavItem, __assign({ isExpanded: isExpanded, isCurrent: true }, { children: [jsxRuntime.jsx(NavItemIcon, __assign({ isStyled: true }, { children: jsxRuntime.jsx(Skeleton, { width: "32px", height: "32px", style: { borderRadius: "100%" } }) })), jsxRuntime.jsx(Skeleton, { height: "12px", width: "60%" }), jsxRuntime.jsx(NavItemText, {})] })), jsxRuntime.jsx(NavDivider, { isExpanded: isExpanded }), jsxRuntime.jsxs(NavItemProject, __assign({ isExpanded: isExpanded, isCurrent: false }, { children: [jsxRuntime.jsx(Skeleton, { width: "60%", style: { marginBottom: "6px" } }), jsxRuntime.jsx(Skeleton, { height: "12px", width: "80%" })] }), 1), jsxRuntime.jsxs(NavItemProject, __assign({ isExpanded: isExpanded, isCurrent: false }, { children: [jsxRuntime.jsx(Skeleton, { width: "60%", style: { marginBottom: "6px" } }), jsxRuntime.jsx(Skeleton, { height: "12px", width: "80%" })] }), 2), jsxRuntime.jsxs(NavItemProject, __assign({ isExpanded: isExpanded, isCurrent: false }, { children: [jsxRuntime.jsx(Skeleton, { width: "60%", style: { marginBottom: "6px" } }), jsxRuntime.jsx(Skeleton, { height: "12px", width: "80%" })] }), 3), jsxRuntime.jsxs(NavItemProject, __assign({ isExpanded: isExpanded, isCurrent: false }, { children: [jsxRuntime.jsx(Skeleton, { width: "60%", style: { marginBottom: "6px" } }), jsxRuntime.jsx(Skeleton, { height: "12px", width: "80%" })] }), 3), jsxRuntime.jsxs(NavItem, __assign({ isExpanded: isExpanded, hasBrandmark: true, title: "Be smart from the start", style: { pointerEvents: "none" } }, { children: [jsxRuntime.jsx(NavItemIcon, { children: jsxRuntime.jsx(Skeleton, { width: "32px", height: "32px", style: { borderRadius: "100%" } }) }), jsxRuntime.jsx(NavItemText, { children: "UNGUESS" })] }))] })));
1826
- };
1867
+ var StyledNav = styled__default["default"](Nav)(templateObject_1$k || (templateObject_1$k = __makeTemplateObject(["\n ", ";\n"], ["\n ", ";\n"])), function (_a) {
1868
+ var isExpanded = _a.isExpanded, theme = _a.theme;
1869
+ return isExpanded && "width: ".concat(theme.components.chrome.nav.openWidth);
1870
+ });
1871
+ var LoadingSidebar = function (props) {
1872
+ var isExpanded = props.isExpanded;
1873
+ return (jsxRuntime.jsxs(StyledNav, __assign({}, props, { isExpanded: isExpanded }, { children: [jsxRuntime.jsx(NavToggle, { isExpanded: isExpanded }), jsxRuntime.jsxs(NavItem, __assign({ isExpanded: isExpanded, isCurrent: true }, { children: [jsxRuntime.jsx(NavItemIcon, __assign({ isStyled: true }, { children: jsxRuntime.jsx(Skeleton, { width: "32px", height: "32px", style: { borderRadius: "100%" } }) })), jsxRuntime.jsx(Skeleton, { height: "12px", width: "60%" }), jsxRuntime.jsx(NavItemText, {})] })), jsxRuntime.jsx(NavDivider, { isExpanded: isExpanded }), jsxRuntime.jsxs(NavItemProject, __assign({ isExpanded: isExpanded, isCurrent: false }, { children: [jsxRuntime.jsx(Skeleton, { width: "60%", style: { marginBottom: "6px" } }), jsxRuntime.jsx(Skeleton, { height: "12px", width: "80%" })] }), 1), jsxRuntime.jsxs(NavItemProject, __assign({ isExpanded: isExpanded, isCurrent: false }, { children: [jsxRuntime.jsx(Skeleton, { width: "60%", style: { marginBottom: "6px" } }), jsxRuntime.jsx(Skeleton, { height: "12px", width: "80%" })] }), 2), jsxRuntime.jsxs(NavItemProject, __assign({ isExpanded: isExpanded, isCurrent: false }, { children: [jsxRuntime.jsx(Skeleton, { width: "60%", style: { marginBottom: "6px" } }), jsxRuntime.jsx(Skeleton, { height: "12px", width: "80%" })] }), 3), jsxRuntime.jsxs(NavItemProject, __assign({ isExpanded: isExpanded, isCurrent: false }, { children: [jsxRuntime.jsx(Skeleton, { width: "60%", style: { marginBottom: "6px" } }), jsxRuntime.jsx(Skeleton, { height: "12px", width: "80%" })] }), 3), jsxRuntime.jsxs(NavItem, __assign({ isExpanded: isExpanded, hasBrandmark: true, title: "Be smart from the start", style: { pointerEvents: "none" } }, { children: [jsxRuntime.jsx(NavItemIcon, { children: jsxRuntime.jsx(Skeleton, { width: "32px", height: "32px", style: { borderRadius: "100%" } }) }), jsxRuntime.jsx(NavItemText, { children: "UNGUESS" })] }))] })));
1874
+ };
1875
+ var templateObject_1$k;
1827
1876
 
1828
1877
  var TokenContainer = styled__default["default"].div(templateObject_1$j || (templateObject_1$j = __makeTemplateObject(["\n display: flex;\n align-items: center;\n justify-content: center;\n"], ["\n display: flex;\n align-items: center;\n justify-content: center;\n"])));
1829
1878
  var ScrollingContainer = styled__default["default"].div(templateObject_2$a || (templateObject_2$a = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n order: 1;\n overflow-y: auto;\n height: 100%;\n"], ["\n display: flex;\n flex-direction: column;\n order: 1;\n overflow-y: auto;\n height: 100%;\n"])));
1879
+ var StyledNavItem = styled__default["default"](NavItem)(templateObject_3$8 || (templateObject_3$8 = __makeTemplateObject(["\n ", ";\n\n &:hover,\n &:focus {\n background-color: white;\n }\n"], ["\n ", ";\n\n &:hover,\n &:focus {\n background-color: white;\n }\n"])), function (_a) {
1880
+ var isExpanded = _a.isExpanded;
1881
+ return isExpanded &&
1882
+ "\n display: block;\n padding-right: ".concat(theme.space.md, ";\n ");
1883
+ });
1830
1884
  /**
1831
1885
  * The UNGUESS Sidebar component provides a high-level layout structure and sets a framework for navigating around projects.
1832
1886
  * <br>
@@ -1842,10 +1896,10 @@ var Sidebar = function (props) {
1842
1896
  props.onNavToggle && props.onNavToggle(route);
1843
1897
  setNav(route);
1844
1898
  };
1845
- return props.isLoading ? jsxRuntime.jsx(LoadingSidebar, {}) : (jsxRuntime.jsxs(Nav, __assign({}, props, { children: [jsxRuntime.jsx(NavToggle, { onClick: toggleNav, isExpanded: props.isExpanded }), props.tokens && (jsxRuntime.jsx(NavItem, __assign({ hasLogo: true, isExpanded: props.isExpanded, style: { pointerEvents: "none", paddingTop: 0 } }, { children: jsxRuntime.jsx(Card, __assign({ style: { padding: theme.space.sm, width: "70%" } }, { children: jsxRuntime.jsxs(TokenContainer, { children: [jsxRuntime.jsx(SvgToken, { width: 32 }), jsxRuntime.jsx(Span, __assign({ isBold: true, style: { marginLeft: theme.space.xs } }, { children: props.tokens + " " + (props.tokensLabel || "tokens") }))] }) })) }))), jsxRuntime.jsxs(NavItem, __assign({ isExpanded: props.isExpanded, isCurrent: nav === "home", onClick: function () { return navigate("home"); } }, { children: [jsxRuntime.jsx(NavItemIcon, __assign({ isStyled: true }, { children: nav === "home" ? jsxRuntime.jsx(SvgHomeFillStyled, {}) : jsxRuntime.jsx(SvgHomeFill, {}) })), jsxRuntime.jsx(NavItemText, { children: props.homeItemLabel || "My Campaigns" })] })), jsxRuntime.jsx(NavDivider, __assign({ isExpanded: props.isExpanded }, { children: props.dividerLabel || "" })), jsxRuntime.jsx(ScrollingContainer, { children: props.projects &&
1899
+ return props.isLoading ? (jsxRuntime.jsx(LoadingSidebar, __assign({}, props))) : (jsxRuntime.jsxs(Nav, __assign({}, props, { children: [jsxRuntime.jsx(NavToggle, { onClick: toggleNav, isExpanded: props.isExpanded }), props.workspaces && props.workspaces.length > 1 && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(StyledNavItem, __assign({ hasLogo: true, isExpanded: props.isExpanded, style: { paddingBottom: 0 } }, { children: jsxRuntime.jsx(WorkspacesDropdown, { workspaces: props.workspaces, workspacesLabel: props.workspacesLabel, activeWorkspace: props.activeWorkspace, onWorkspaceChange: props.onWorkspaceChange }) })), props.tokens && (jsxRuntime.jsx(NavDivider, { isExpanded: props.isExpanded, style: { order: 0 } }))] })), props.tokens && (jsxRuntime.jsx(StyledNavItem, __assign({ hasLogo: true, isExpanded: props.isExpanded, style: { pointerEvents: "none", paddingTop: 0 } }, { children: jsxRuntime.jsx(Card, __assign({ style: { padding: theme.space.sm } }, { children: jsxRuntime.jsxs(TokenContainer, { children: [jsxRuntime.jsx(SvgToken, { width: 32 }), jsxRuntime.jsx(Span, __assign({ isBold: true, style: { marginLeft: theme.space.xs, color: theme.palette.grey[800] } }, { children: props.tokens + " " + (props.tokensLabel || "tokens") }))] }) })) }))), jsxRuntime.jsxs(NavItem, __assign({ isExpanded: props.isExpanded, isCurrent: nav === "home", onClick: function () { return navigate("home"); } }, { children: [jsxRuntime.jsx(NavItemIcon, __assign({ isStyled: true }, { children: nav === "home" ? jsxRuntime.jsx(SvgHomeFillStyled, {}) : jsxRuntime.jsx(SvgHomeFill, {}) })), jsxRuntime.jsx(NavItemText, { children: props.homeItemLabel || "My Campaigns" })] })), jsxRuntime.jsx(NavDivider, __assign({ isExpanded: props.isExpanded }, { children: props.dividerLabel || "" })), jsxRuntime.jsx(ScrollingContainer, { children: props.projects &&
1846
1900
  props.projects.map(function (project) { return (jsxRuntime.jsxs(NavItemProject, __assign({ isExpanded: props.isExpanded, isCurrent: nav === project.id, onClick: function () { return navigate(project.id); } }, { children: [jsxRuntime.jsx(NavItemProject.Title, { title: project.title, children: project.title }), jsxRuntime.jsx(NavItemProject.SubTitle, { children: project.campaigns })] }), project.id)); }) }), jsxRuntime.jsxs(NavItem, __assign({ isExpanded: props.isExpanded, hasBrandmark: true, title: "Be smart from the start", style: { pointerEvents: "none", paddingBottom: theme.space.md } }, { children: [jsxRuntime.jsx(NavItemIcon, { children: jsxRuntime.jsx(Logo, { type: "icon", size: 150 }) }), jsxRuntime.jsx(NavItemText, { children: "UNGUESS" })] }))] })));
1847
1901
  };
1848
- var templateObject_1$j, templateObject_2$a;
1902
+ var templateObject_1$j, templateObject_2$a, templateObject_3$8;
1849
1903
 
1850
1904
  var UgMain = styled__default["default"](reactChrome.Main)(templateObject_1$i || (templateObject_1$i = __makeTemplateObject(["\n @media (min-width: ", ") {\n margin: ", "\n }\n \n /* hide scrollbar for IE, Edge and Firefox */\n -ms-overflow-style: none;\n scrollbar-width: none;\n\n ::-webkit-scrollbar {\n display: none;\n }\n \n"], ["\n @media (min-width: ", ") {\n margin: ", "\n }\n \n /* hide scrollbar for IE, Edge and Firefox */\n -ms-overflow-style: none;\n scrollbar-width: none;\n\n ::-webkit-scrollbar {\n display: none;\n }\n \n"])), function (_a) {
1851
1905
  var theme = _a.theme;
@@ -1862,7 +1916,8 @@ var templateObject_1$i;
1862
1916
 
1863
1917
  var StyledHr = styled__default["default"].hr(templateObject_1$h || (templateObject_1$h = __makeTemplateObject(["\n margin: ", "px 0 ", "px 0;\n border: none;\n border-top: 1px solid ", ";\n"], ["\n margin: ", "px 0 ", "px 0;\n border: none;\n border-top: 1px solid ", ";\n"])), theme.space.base * 6, theme.space.base * 8, theme.palette.grey[300]);
1864
1918
  var PageLoader = function () {
1865
- return (jsxRuntime.jsx(reactChrome.Chrome, __assign({ isFluid: true, hue: theme.palette.white }, { children: jsxRuntime.jsxs(Body$1, { children: [jsxRuntime.jsx(AppHeader, { isLoading: true }), jsxRuntime.jsxs(Content, { children: [jsxRuntime.jsx(Sidebar, { isLoading: true }), jsxRuntime.jsxs(Main, { children: [jsxRuntime.jsx(Skeleton, { width: "30%", height: "32px" }), jsxRuntime.jsx(StyledHr, { style: { margin: "24px 0" } }), jsxRuntime.jsxs(Row$1, { children: [jsxRuntime.jsx(Col, __assign({ size: 3 }, { children: jsxRuntime.jsx(CampaignCard, { isLoading: true, projectTitle: "", campaignTitle: "", date: "" }) })), jsxRuntime.jsx(Col, __assign({ size: 3 }, { children: jsxRuntime.jsx(CampaignCard, { isLoading: true, projectTitle: "", campaignTitle: "", date: "" }) })), jsxRuntime.jsx(Col, __assign({ size: 3 }, { children: jsxRuntime.jsx(CampaignCard, { isLoading: true, projectTitle: "", campaignTitle: "", date: "" }) })), jsxRuntime.jsx(Col, __assign({ size: 3 }, { children: jsxRuntime.jsx(CampaignCard, { isLoading: true, projectTitle: "", campaignTitle: "", date: "" }) }))] })] })] })] }) })));
1919
+ var isSidebarOpen = window.matchMedia("only screen and (min-width: 576px)").matches;
1920
+ return (jsxRuntime.jsx(reactChrome.Chrome, __assign({ isFluid: true, hue: theme.palette.white }, { children: jsxRuntime.jsxs(Body$1, { children: [jsxRuntime.jsx(AppHeader, { isLoading: true }), jsxRuntime.jsxs(Content, { children: [jsxRuntime.jsx(Sidebar, { isExpanded: isSidebarOpen, isLoading: true }), jsxRuntime.jsxs(Main, { children: [jsxRuntime.jsx(Skeleton, { width: "30%", height: "32px", style: { marginTop: theme.space.sm, marginLeft: theme.space.sm } }), jsxRuntime.jsx(StyledHr, { style: { margin: "24px 0" } }), jsxRuntime.jsxs(Row$1, { children: [jsxRuntime.jsx(Col, __assign({ xs: 12, md: 6, lg: 3 }, { children: jsxRuntime.jsx(CampaignCard, { isLoading: true, projectTitle: "", campaignTitle: "", date: "" }) })), jsxRuntime.jsx(Col, __assign({ xs: 12, md: 6, lg: 3 }, { children: jsxRuntime.jsx(CampaignCard, { isLoading: true, projectTitle: "", campaignTitle: "", date: "" }) })), jsxRuntime.jsx(Col, __assign({ xs: 12, md: 6, lg: 3 }, { children: jsxRuntime.jsx(CampaignCard, { isLoading: true, projectTitle: "", campaignTitle: "", date: "" }) })), jsxRuntime.jsx(Col, __assign({ xs: 12, md: 6, lg: 3 }, { children: jsxRuntime.jsx(CampaignCard, { isLoading: true, projectTitle: "", campaignTitle: "", date: "" }) }))] })] })] })] }) })));
1866
1921
  };
1867
1922
  var templateObject_1$h;
1868
1923
 
@@ -2227,33 +2282,6 @@ var UserMenu = function (props) {
2227
2282
  };
2228
2283
  var templateObject_1$6;
2229
2284
 
2230
- function debounce(callback, wait) {
2231
- var timer;
2232
- return function () {
2233
- if (typeof timer !== "undefined")
2234
- clearTimeout(timer);
2235
- timer = setTimeout(function () {
2236
- timer = undefined;
2237
- callback();
2238
- }, wait);
2239
- };
2240
- }
2241
- function useWindowSize() {
2242
- var _a = React.useState({
2243
- width: window.innerWidth,
2244
- height: window.innerHeight,
2245
- }), size = _a[0], setSize = _a[1];
2246
- React.useLayoutEffect(function () {
2247
- var debounceUpdateSize = debounce(function () {
2248
- setSize({ width: window.innerWidth, height: window.innerHeight });
2249
- }, 300);
2250
- window.addEventListener("resize", debounceUpdateSize);
2251
- debounceUpdateSize();
2252
- return function () { return window.removeEventListener("resize", debounceUpdateSize); };
2253
- }, []);
2254
- return size;
2255
- }
2256
-
2257
2285
  var StyledModal = styled__default["default"](Modal)(templateObject_1$5 || (templateObject_1$5 = __makeTemplateObject(["\n margin: 0;\n left: auto;\n right: auto;\n top: auto;\n bottom: auto;\n\n max-height: calc(100vh - ", ");\n\n @media (min-width: ", ") {\n margin-top: calc(\n ", "\n );\n margin-right: ", "px;\n }\n"], ["\n margin: 0;\n left: auto;\n right: auto;\n top: auto;\n bottom: auto;\n\n max-height: calc(100vh - ", ");\n\n @media (min-width: ", ") {\n margin-top: calc(\n ", "\n );\n margin-right: ", "px;\n }\n"])), function (_a) {
2258
2286
  var theme = _a.theme;
2259
2287
  return theme.space.xxl;
@@ -24,7 +24,14 @@ export interface HeaderItemArgs extends IHeaderItemProps {
24
24
  /** Applies header logo styles to the item */
25
25
  hasLogo?: boolean;
26
26
  }
27
- export interface BrandItemArgs extends ButtonHTMLAttributes<HTMLButtonElement> {
27
+ export interface WorkspaceDropdownArgs {
28
+ workspaces?: Workspace[];
29
+ activeWorkspace?: Workspace;
30
+ workspacesLabel?: string;
31
+ onWorkspaceChange?: (workspace: Workspace) => void;
32
+ isCompact?: boolean;
33
+ }
34
+ export interface BrandItemArgs extends ButtonHTMLAttributes<HTMLButtonElement>, WorkspaceDropdownArgs {
28
35
  /** Maximizes the width of a flex item in the header */
29
36
  maxX?: boolean;
30
37
  /** Maximizes the height of the item (i.e. contains a search input) */
@@ -35,10 +42,6 @@ export interface BrandItemArgs extends ButtonHTMLAttributes<HTMLButtonElement> {
35
42
  brandName?: string;
36
43
  /** Add a descriptive text to the menu item icon*/
37
44
  menuLabel?: string;
38
- workspacesLabel?: string;
39
- activeWorkspace?: Workspace;
40
- workspaces?: Workspace[];
41
- onWorkspaceChange?: (workspace: Workspace) => void;
42
45
  /** Triggered when the menu item is clicked */
43
46
  toggleMenu?: () => void;
44
47
  }
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { WorkspaceDropdownArgs } from "./_types";
3
+ export declare const WorkspacesDropdown: (props: WorkspaceDropdownArgs) => JSX.Element;
@@ -1,5 +1,6 @@
1
+ import { WorkspaceDropdownArgs } from "../header/header-item/_types";
1
2
  import { NavArgs } from "../nav/_types";
2
- export interface SidebarArgs extends NavArgs {
3
+ export interface SidebarArgs extends NavArgs, WorkspaceDropdownArgs {
3
4
  projects?: Array<ProjectItem>;
4
5
  currentRoute?: string;
5
6
  homeItemLabel?: string;
@@ -4,6 +4,8 @@ import { SidebarArgs } from "./_types";
4
4
  interface SidebarStoryArgs extends SidebarArgs {
5
5
  }
6
6
  export declare const Default: Story<SidebarStoryArgs>;
7
+ export declare const MultipleWorkspaces: Story<SidebarStoryArgs>;
7
8
  export declare const WithTokens: Story<SidebarStoryArgs>;
9
+ export declare const WithAll: Story<SidebarStoryArgs>;
8
10
  declare const _default: ComponentMeta<(props: SidebarArgs) => JSX.Element>;
9
11
  export default _default;
@@ -1,2 +1,3 @@
1
1
  /// <reference types="react" />
2
- export declare const LoadingSidebar: () => JSX.Element;
2
+ import { SidebarArgs } from "./_types";
3
+ export declare const LoadingSidebar: (props: SidebarArgs) => JSX.Element;
@@ -1,6 +1,6 @@
1
1
  import { ITableProps, IRowProps, ICellProps, IHeaderCellProps, ISortableCellProps } from "@zendeskgarden/react-tables";
2
- import { SIZE, SORT } from "@zendeskgarden/react-tables/dist/typings/styled";
3
2
  import { IconArgs } from "../icons/_types";
3
+ declare type SIZE = "small" | "medium" | "large";
4
4
  export interface TableProps extends ITableProps {
5
5
  /** Sets the table size */
6
6
  size?: SIZE;
@@ -63,8 +63,6 @@ export interface HeadArgs extends ICellProps {
63
63
  width?: string | number;
64
64
  }
65
65
  export interface SortableCellArgs extends ISortableCellProps {
66
- /** Sets the sort order */
67
- sort?: SORT;
68
66
  /** Sets the width of the cell */
69
67
  width?: string | number;
70
68
  /** Passes props to the cell */
@@ -81,3 +79,4 @@ export interface Group {
81
79
  groupIcon: IconArgs["type"];
82
80
  items: Array<IRow>;
83
81
  }
82
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@appquality/unguess-design-system",
3
- "version": "2.10.22",
3
+ "version": "2.10.25",
4
4
  "dependencies": {
5
5
  "@zendeskgarden/css-bedrock": "^9.0.0",
6
6
  "@zendeskgarden/react-accordions": "^8.49.0",