@digital-ai/dot-components 3.0.0 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.esm.js CHANGED
@@ -6,6 +6,7 @@ import '@digital-ai/dot-icons';
6
6
  import styled, { css, createGlobalStyle, ThemeProvider as ThemeProvider$1, keyframes } from 'styled-components';
7
7
  import { createTheme, ThemeProvider, useTheme } from '@mui/material/styles';
8
8
  import jwt_decode from 'jwt-decode';
9
+ import '@digital-ai/dot-illustrations';
9
10
  import { useDropzone } from 'react-dropzone';
10
11
  import GridLayout, { WidthProvider } from 'react-grid-layout';
11
12
  import dayjs from 'dayjs';
@@ -101,12 +102,12 @@ const DotTooltip = ({
101
102
  }) : children;
102
103
  };
103
104
 
104
- const rootClassName$18 = 'dot-icon';
105
+ const rootClassName$19 = 'dot-icon';
105
106
  const StyledIcon = styled(Icon)`
106
107
  ${({
107
108
  theme
108
109
  }) => css`
109
- &.${rootClassName$18} {
110
+ &.${rootClassName$19} {
110
111
  color: ${theme.palette.figma.icon.black};
111
112
  font-size: 20px;
112
113
 
@@ -143,7 +144,7 @@ const DotIcon = ({
143
144
  iconId,
144
145
  tooltip
145
146
  }) => {
146
- const rootClasses = useStylesWithRootClass(rootClassName$18, className);
147
+ const rootClasses = useStylesWithRootClass(rootClassName$19, className);
147
148
  return jsx(DotTooltip, {
148
149
  title: tooltip,
149
150
  children: jsx(StyledIcon, {
@@ -204,7 +205,7 @@ const DotTypography = ({
204
205
  });
205
206
  };
206
207
 
207
- const rootClassName$17 = 'dot-accordion';
208
+ const rootClassName$18 = 'dot-accordion';
208
209
  const summaryClassName = 'dot-accordion-summary';
209
210
  const detailClassName = 'dot-accordion-details';
210
211
  const StyledAccordion = styled(Accordion)`
@@ -215,7 +216,7 @@ const StyledAccordion = styled(Accordion)`
215
216
  background: ${theme.palette.figma.background.level1.white};
216
217
  }
217
218
 
218
- &.${rootClassName$17} .${summaryClassName} {
219
+ &.${rootClassName$18} .${summaryClassName} {
219
220
  align-items: center;
220
221
  background: ${theme.palette.figma.background.level1.white};
221
222
  color: ${theme.palette.figma.typography.black};
@@ -260,7 +261,7 @@ const DotAccordion = ({
260
261
  ariaLabel,
261
262
  children,
262
263
  className,
263
- 'data-pendoid': dataPendoId = rootClassName$17,
264
+ 'data-pendoid': dataPendoId = rootClassName$18,
264
265
  'data-testid': dataTestId = 'dot-accordion',
265
266
  disabled = false,
266
267
  expanded,
@@ -271,7 +272,7 @@ const DotAccordion = ({
271
272
  summary,
272
273
  noWrap = true
273
274
  }) => {
274
- const rootClasses = useStylesWithRootClass(rootClassName$17, className);
275
+ const rootClasses = useStylesWithRootClass(rootClassName$18, className);
275
276
  const [elevation, setElevation] = useState();
276
277
  useEffect(() => {
277
278
  if (onChange && expanded === undefined) {
@@ -387,7 +388,7 @@ const readOnlyStyles = theme => css`
387
388
  }
388
389
  `;
389
390
 
390
- const rootClassName$16 = 'dot-text-field';
391
+ const rootClassName$17 = 'dot-text-field';
391
392
  const rootSelectClassName = 'dot-select-field';
392
393
  const labelClassName = 'dot-input-label';
393
394
  const errorClassName = 'dot-error';
@@ -435,7 +436,7 @@ const StyledTextField = styled(TextField)`
435
436
  theme,
436
437
  InputProps
437
438
  }) => css`
438
- &.${rootClassName$16} {
439
+ &.${rootClassName$17} {
439
440
  .MuiInputBase-root {
440
441
  margin-bottom: 0;
441
442
  }
@@ -479,7 +480,7 @@ const StyledTextField = styled(TextField)`
479
480
  margin-right: ${theme.spacing(2)};
480
481
  }
481
482
 
482
- &.${rootSelectClassName}, &.${rootClassName$16} {
483
+ &.${rootSelectClassName}, &.${rootClassName$17} {
483
484
  .${adornmentIconClassName} {
484
485
  color: ${theme.palette.figma.icon.black};
485
486
  p {
@@ -570,15 +571,15 @@ const StyledTextField = styled(TextField)`
570
571
  `}
571
572
  `;
572
573
 
573
- const rootClassName$15 = 'dot-action-toolbar';
574
+ const rootClassName$16 = 'dot-action-toolbar';
574
575
  const StyledToolbar = styled(Toolbar)`
575
576
  ${({
576
577
  theme
577
578
  }) => css`
578
- &.${rootClassName$15} {
579
+ &.${rootClassName$16} {
579
580
  border-bottom: 1px solid ${theme.palette.figma.border.default};
580
581
 
581
- .${rootClassName$16} .MuiInputBase-root {
582
+ .${rootClassName$17} .MuiInputBase-root {
582
583
  margin-bottom: 0;
583
584
  }
584
585
  }
@@ -592,7 +593,7 @@ const DotActionToolbar = ({
592
593
  'data-testid': dataTestId,
593
594
  variant = 'dense'
594
595
  }) => {
595
- const rootClasses = useStylesWithRootClass(rootClassName$15, className);
596
+ const rootClasses = useStylesWithRootClass(rootClassName$16, className);
596
597
  return jsx(StyledToolbar, {
597
598
  "aria-label": ariaLabel,
598
599
  className: rootClasses,
@@ -1660,12 +1661,12 @@ const renderNodeOrTypography = (content, typographyVariant = 'body1') => {
1660
1661
  const checkIfArrowUpPressed = event => event.key === 'ArrowUp';
1661
1662
  const checkIfArrowDownPressed = event => event.key === 'ArrowDown';
1662
1663
 
1663
- const rootClassName$14 = 'dot-alert-banner';
1664
+ const rootClassName$15 = 'dot-alert-banner';
1664
1665
  const StyledAlertBanner = styled(Alert)`
1665
1666
  ${({
1666
1667
  theme
1667
1668
  }) => css`
1668
- &.${rootClassName$14} {
1669
+ &.${rootClassName$15} {
1669
1670
  box-sizing: border-box;
1670
1671
  min-height: 48px;
1671
1672
  overflow: hidden;
@@ -1694,7 +1695,7 @@ const DotAlertBanner = ({
1694
1695
  ariaLabel,
1695
1696
  children,
1696
1697
  className,
1697
- 'data-pendoid': dataPendoId = rootClassName$14,
1698
+ 'data-pendoid': dataPendoId = rootClassName$15,
1698
1699
  'data-testid': dataTestId,
1699
1700
  onClose,
1700
1701
  roundedCorners = true,
@@ -1702,7 +1703,7 @@ const DotAlertBanner = ({
1702
1703
  textVariant = 'body1',
1703
1704
  width
1704
1705
  }) => {
1705
- const rootClasses = useStylesWithRootClass(rootClassName$14, severity, className);
1706
+ const rootClasses = useStylesWithRootClass(rootClassName$15, severity, className);
1706
1707
  /* For simple string use default component, for everything else use 'div' */
1707
1708
  const typographyComponent = isString$1(children) ? undefined : 'div';
1708
1709
  return jsx(StyledAlertBanner, {
@@ -2351,7 +2352,7 @@ const useDotCoreApiContext = () => {
2351
2352
  return useContext(DotCoreApiContext);
2352
2353
  };
2353
2354
 
2354
- const rootClassName$13 = 'dot-avatar';
2355
+ const rootClassName$14 = 'dot-avatar';
2355
2356
  const avatarSpacing = {
2356
2357
  small: 3,
2357
2358
  medium: 5,
@@ -2361,7 +2362,7 @@ const StyledAvatar = styled(Avatar)`
2361
2362
  ${({
2362
2363
  theme
2363
2364
  }) => css`
2364
- &.${rootClassName$13} {
2365
+ &.${rootClassName$14} {
2365
2366
  display: inline-flex;
2366
2367
  background-color: ${({
2367
2368
  color
@@ -2473,7 +2474,7 @@ const DotAvatar = ({
2473
2474
  variant = 'circular',
2474
2475
  style
2475
2476
  }) => {
2476
- const rootClasses = useStylesWithRootClass(rootClassName$13, className);
2477
+ const rootClasses = useStylesWithRootClass(rootClassName$14, className);
2477
2478
  const getAvatarColor = () => {
2478
2479
  if ((style === null || style === void 0 ? void 0 : style.color) !== undefined) return 'inherit';
2479
2480
  if (color) return color;
@@ -2512,12 +2513,12 @@ const DotAvatar = ({
2512
2513
  });
2513
2514
  };
2514
2515
 
2515
- const rootClassName$12 = 'dot-button';
2516
+ const rootClassName$13 = 'dot-button';
2516
2517
  const StyledButton = styled(Button)`
2517
2518
  ${({
2518
2519
  theme
2519
2520
  }) => css`
2520
- &.${rootClassName$12} {
2521
+ &.${rootClassName$13} {
2521
2522
  background-color: ${theme.palette.figma.primary.normal};
2522
2523
  margin: ${theme.spacing(0.5)};
2523
2524
  padding: ${theme.spacing(0.75, 2)};
@@ -2601,7 +2602,7 @@ const DotButton = forwardRef(({
2601
2602
  autoFocus = false,
2602
2603
  children,
2603
2604
  className,
2604
- 'data-pendoid': dataPendoId = rootClassName$12,
2605
+ 'data-pendoid': dataPendoId = rootClassName$13,
2605
2606
  'data-testid': dataTestId,
2606
2607
  disabled = false,
2607
2608
  disableRipple = false,
@@ -2617,7 +2618,7 @@ const DotButton = forwardRef(({
2617
2618
  tooltipPlacement,
2618
2619
  type = 'primary'
2619
2620
  }, ref) => {
2620
- const rootClasses = useStylesWithRootClass(rootClassName$12, className);
2621
+ const rootClasses = useStylesWithRootClass(rootClassName$13, className);
2621
2622
  let color;
2622
2623
  let variant;
2623
2624
  switch (type) {
@@ -2641,6 +2642,7 @@ const DotButton = forwardRef(({
2641
2642
  return jsx(DotTooltip, {
2642
2643
  placement: tooltipPlacement,
2643
2644
  title: tooltip,
2645
+ "data-testid": `${dataTestId || rootClassName$13}-tooltip`,
2644
2646
  children: jsx(StyledButton, {
2645
2647
  "aria-label": ariaLabel,
2646
2648
  autoFocus: autoFocus,
@@ -2649,7 +2651,7 @@ const DotButton = forwardRef(({
2649
2651
  },
2650
2652
  color: color,
2651
2653
  "data-pendoid": dataPendoId,
2652
- "data-testid": dataTestId,
2654
+ "data-testid": dataTestId || rootClassName$13,
2653
2655
  disableRipple: disableRipple,
2654
2656
  disabled: disabled,
2655
2657
  endIcon: endIcon,
@@ -2668,10 +2670,10 @@ const DotButton = forwardRef(({
2668
2670
  });
2669
2671
  });
2670
2672
 
2671
- const rootClassName$11 = 'dot-link';
2673
+ const rootClassName$12 = 'dot-link';
2672
2674
  const StyledLink = styled(Link)`
2673
2675
  ${() => css`
2674
- &.${rootClassName$11} {
2676
+ &.${rootClassName$12} {
2675
2677
  cursor: pointer;
2676
2678
 
2677
2679
  &:hover.MuiLink-underlineHover {
@@ -2687,7 +2689,7 @@ const DotLink = ({
2687
2689
  children,
2688
2690
  className,
2689
2691
  color = 'primary',
2690
- 'data-pendoid': dataPendoId = rootClassName$11,
2692
+ 'data-pendoid': dataPendoId = rootClassName$12,
2691
2693
  'data-testid': dataTestId,
2692
2694
  href,
2693
2695
  onClick,
@@ -2699,7 +2701,7 @@ const DotLink = ({
2699
2701
  tooltip,
2700
2702
  underline = 'always'
2701
2703
  }) => {
2702
- const rootClasses = useStylesWithRootClass(rootClassName$11, className);
2704
+ const rootClasses = useStylesWithRootClass(rootClassName$12, className);
2703
2705
  useEffect(() => {
2704
2706
  // Include a console warning if the link is not a string and no ariaLabel is provided
2705
2707
  if (!isString$1(children) && !ariaLabel) {
@@ -2749,7 +2751,7 @@ const CreateUUID = () => {
2749
2751
  });
2750
2752
  };
2751
2753
 
2752
- const rootClassName$10 = 'dot-list';
2754
+ const rootClassName$11 = 'dot-list';
2753
2755
  const listItemRootClass = 'dot-list-item';
2754
2756
  const nestedListClassName = 'dot-nested-list';
2755
2757
  const nestedDrawerClassName = 'dot-nested-drawer';
@@ -2757,7 +2759,7 @@ const StyledList = styled(List)`
2757
2759
  ${({
2758
2760
  theme
2759
2761
  }) => css`
2760
- &.${rootClassName$10} {
2762
+ &.${rootClassName$11} {
2761
2763
  background: ${theme.palette.figma.background.level0.componentsBackground};
2762
2764
 
2763
2765
  .dot-icon {
@@ -2840,12 +2842,12 @@ const DotListDivider = ({
2840
2842
  });
2841
2843
  };
2842
2844
 
2843
- const rootClassName$$ = 'dot-progress';
2845
+ const rootClassName$10 = 'dot-progress';
2844
2846
  const StyledCircularProgress = styled(CircularProgress)`
2845
2847
  ${({
2846
2848
  theme
2847
2849
  }) => css`
2848
- &.${rootClassName$$} {
2850
+ &.${rootClassName$10} {
2849
2851
  &.MuiCircularProgress-colorPrimary {
2850
2852
  color: ${theme.palette.figma.inProgress.normal};
2851
2853
  }
@@ -2867,7 +2869,7 @@ const DotProgress = ({
2867
2869
  value,
2868
2870
  variant = 'indeterminate'
2869
2871
  }) => {
2870
- const rootClasses = useStylesWithRootClass(rootClassName$$, className);
2872
+ const rootClasses = useStylesWithRootClass(rootClassName$10, className);
2871
2873
  useEffect(() => {
2872
2874
  if (!ariaLabel) {
2873
2875
  console.warn('a11y: DotProgress must have an ariaLabel to describe the progress component');
@@ -2908,35 +2910,35 @@ var variables = /*#__PURE__*/Object.freeze({
2908
2910
  levelTop: levelTop
2909
2911
  });
2910
2912
 
2911
- const rootClassName$_ = 'dot-popper';
2913
+ const rootClassName$$ = 'dot-popper';
2912
2914
  const StyledPopper$1 = styled(Popper)`
2913
2915
  ${({
2914
2916
  theme
2915
2917
  }) => css`
2916
- &.${rootClassName$_} {
2918
+ &.${rootClassName$$} {
2917
2919
  font-family: ${theme.typography.fontFamily};
2918
2920
  font-size: ${theme.typography.body1.fontSize}px;
2919
2921
  }
2920
2922
 
2921
- &.${rootClassName$_}, &.${rootClassName$_} > .dot-popper-paper {
2923
+ &.${rootClassName$$}, &.${rootClassName$$} > .dot-popper-paper {
2922
2924
  background-color: ${theme.palette.figma.background.level1.white};
2923
2925
  }
2924
2926
  `}
2925
2927
  `;
2926
2928
 
2927
2929
  const flyoutMenuClassName = 'dot-flyout-menu';
2928
- const rootClassName$Z = 'dot-menu';
2930
+ const rootClassName$_ = 'dot-menu';
2929
2931
  const getListMaxHeight = maxHeight => isString$1(maxHeight) ? maxHeight : `${maxHeight}px`;
2930
2932
  const StyledPopper = styled(Popper)`
2931
2933
  ${({
2932
2934
  theme
2933
2935
  }) => css`
2934
- &.${rootClassName$_} {
2936
+ &.${rootClassName$$} {
2935
2937
  font-family: ${theme.typography.fontFamily};
2936
2938
  font-size: ${theme.typography.body1.fontSize}px;
2937
2939
  z-index: ${levelSecond};
2938
2940
  }
2939
- &.${rootClassName$Z}, &.${rootClassName$_} {
2941
+ &.${rootClassName$_}, &.${rootClassName$$} {
2940
2942
  &.loading .MuiPaper-root {
2941
2943
  align-items: center;
2942
2944
  display: flex;
@@ -3011,14 +3013,14 @@ const MENU_ITEM_HEIGHT_NORMAL = 48;
3011
3013
  const MENU_ITEM_HEIGHT_DENSE = 36;
3012
3014
  const DEFAULT_MAX_VISIBLE_ITEMS = 7;
3013
3015
 
3014
- const rootClassName$Y = 'dot-ul';
3016
+ const rootClassName$Z = 'dot-ul';
3015
3017
  const listItemClassName$1 = 'dot-li';
3016
3018
  const listItemWithSubmenuClassName = 'dot-li-with-submenu';
3017
3019
  const StyledMenuList = styled(MenuList)`
3018
3020
  ${({
3019
3021
  theme
3020
3022
  }) => css`
3021
- &.${rootClassName$Y} {
3023
+ &.${rootClassName$Z} {
3022
3024
  background: ${theme.palette.figma.background.level1.white};
3023
3025
 
3024
3026
  .dot-li {
@@ -3114,7 +3116,7 @@ const DotMenuList = forwardRef(({
3114
3116
  onSubMenuCreate,
3115
3117
  selectedKey
3116
3118
  }, ref) => {
3117
- const rootClasses = useStylesWithRootClass(rootClassName$Y, className);
3119
+ const rootClasses = useStylesWithRootClass(rootClassName$Z, className);
3118
3120
  const [activeSubmenu, setActiveSubmenu] = useState(null);
3119
3121
  const [subItemAnchorEl, setSubItemAnchorEl] = useState(null);
3120
3122
  const openSubmenu = (target, itemKey) => {
@@ -3225,7 +3227,7 @@ const DotMenu = ({
3225
3227
  open = false,
3226
3228
  selectedKey
3227
3229
  }) => {
3228
- const rootClasses = useStylesWithRootClass(rootClassName$Z, className, loading ? 'loading' : '');
3230
+ const rootClasses = useStylesWithRootClass(rootClassName$_, className, loading ? 'loading' : '');
3229
3231
  const isSubmenu = checkIfSubmenu(anchorEl);
3230
3232
  const hasSubItems = checkForSubItems(menuItems);
3231
3233
  // Timeout object is customizable when Menu component is either submenu
@@ -3313,12 +3315,12 @@ const DotMenu = ({
3313
3315
  });
3314
3316
  };
3315
3317
 
3316
- const rootClassName$X = 'dot-drawer';
3318
+ const rootClassName$Y = 'dot-drawer';
3317
3319
  const StyledDrawer = styled(Drawer)`
3318
3320
  ${({
3319
3321
  theme
3320
3322
  }) => css`
3321
- &.${rootClassName$X} .MuiBackdrop-root {
3323
+ &.${rootClassName$Y} .MuiBackdrop-root {
3322
3324
  background-color: ${theme.palette.figma.overlay.default};
3323
3325
  }
3324
3326
 
@@ -3337,12 +3339,12 @@ const StyledDrawer = styled(Drawer)`
3337
3339
  `}
3338
3340
  `;
3339
3341
 
3340
- const rootClassName$W = 'dot-drawer-header';
3342
+ const rootClassName$X = 'dot-drawer-header';
3341
3343
  const StyleDrawerHeader = styled.div`
3342
3344
  ${({
3343
3345
  theme
3344
3346
  }) => css`
3345
- &.${rootClassName$W} {
3347
+ &.${rootClassName$X} {
3346
3348
  padding: ${theme.spacing(0, 0, 2)};
3347
3349
  display: flex;
3348
3350
  align-items: center;
@@ -3353,13 +3355,13 @@ const StyleDrawerHeader = styled.div`
3353
3355
  `}
3354
3356
  `;
3355
3357
 
3356
- const rootClassName$V = 'dot-icon-btn';
3358
+ const rootClassName$W = 'dot-icon-btn';
3357
3359
  const StyledIconButton = styled(IconButton)`
3358
3360
  ${({
3359
3361
  theme,
3360
3362
  color
3361
3363
  }) => css`
3362
- &.${rootClassName$V} {
3364
+ &.${rootClassName$W} {
3363
3365
  ${color === 'inherit' ? css`
3364
3366
  color: inherit;
3365
3367
  ` : ''}
@@ -3418,7 +3420,7 @@ const DotIconButton = ({
3418
3420
  ariaRole = 'button',
3419
3421
  className,
3420
3422
  color = 'inherit',
3421
- 'data-pendoid': dataPendoId = rootClassName$V,
3423
+ 'data-pendoid': dataPendoId = rootClassName$W,
3422
3424
  'data-testid': dataTestId,
3423
3425
  disableRipple = false,
3424
3426
  disabled = false,
@@ -3431,7 +3433,7 @@ const DotIconButton = ({
3431
3433
  tooltipPlacement
3432
3434
  }) => {
3433
3435
  const rippleClassName = disableRipple ? 'ripple-disabled' : '';
3434
- const rootClasses = useStylesWithRootClass(rootClassName$V, rippleClassName, `shape-${shape}`, className);
3436
+ const rootClasses = useStylesWithRootClass(rootClassName$W, rippleClassName, `shape-${shape}`, className);
3435
3437
  return jsx(DotTooltip, {
3436
3438
  "data-testid": "icon-button-tooltip",
3437
3439
  placement: tooltipPlacement,
@@ -3466,7 +3468,7 @@ const DotDrawerHeader = ({
3466
3468
  onClose,
3467
3469
  variant
3468
3470
  }) => {
3469
- const rootClasses = useStylesWithRootClass(rootClassName$W, className);
3471
+ const rootClasses = useStylesWithRootClass(rootClassName$X, className);
3470
3472
  return jsxs(StyleDrawerHeader, {
3471
3473
  "aria-label": ariaLabel,
3472
3474
  "aria-level": 2,
@@ -3483,10 +3485,10 @@ const DotDrawerHeader = ({
3483
3485
  });
3484
3486
  };
3485
3487
 
3486
- const rootClassName$U = 'dot-drawer-body';
3488
+ const rootClassName$V = 'dot-drawer-body';
3487
3489
  const StyleDrawerBody = styled.div`
3488
3490
  ${() => css`
3489
- &.${rootClassName$U} {
3491
+ &.${rootClassName$V} {
3490
3492
  display: flex;
3491
3493
  .dot-drawer-close-button {
3492
3494
  align-self: self-start;
@@ -3507,7 +3509,7 @@ const DotDrawerBody = ({
3507
3509
  onClose,
3508
3510
  variant
3509
3511
  }) => {
3510
- const rootClasses = useStylesWithRootClass(rootClassName$U, className);
3512
+ const rootClasses = useStylesWithRootClass(rootClassName$V, className);
3511
3513
  return jsxs(StyleDrawerBody, {
3512
3514
  "aria-label": ariaLabel,
3513
3515
  className: rootClasses,
@@ -3522,12 +3524,12 @@ const DotDrawerBody = ({
3522
3524
  });
3523
3525
  };
3524
3526
 
3525
- const rootClassName$T = 'dot-drawer-footer';
3527
+ const rootClassName$U = 'dot-drawer-footer';
3526
3528
  const StyleDrawerFooter = styled.div`
3527
3529
  ${({
3528
3530
  theme
3529
3531
  }) => css`
3530
- &.${rootClassName$T} {
3532
+ &.${rootClassName$U} {
3531
3533
  padding: ${theme.spacing(2, 0, 0)};
3532
3534
  }
3533
3535
  `}
@@ -3540,7 +3542,7 @@ const DotDrawerFooter = ({
3540
3542
  className,
3541
3543
  'data-testid': dataTestId
3542
3544
  }) => {
3543
- const rootClasses = useStylesWithRootClass(rootClassName$T, className);
3545
+ const rootClasses = useStylesWithRootClass(rootClassName$U, className);
3544
3546
  return jsx(StyleDrawerFooter, {
3545
3547
  "aria-label": ariaLabel,
3546
3548
  className: rootClasses,
@@ -3556,7 +3558,7 @@ const DotDrawer = ({
3556
3558
  ariaRole = 'dialog',
3557
3559
  className,
3558
3560
  children,
3559
- 'data-pendoid': dataPendoId = rootClassName$X,
3561
+ 'data-pendoid': dataPendoId = rootClassName$Y,
3560
3562
  'data-testid': dataTestId,
3561
3563
  drawerBodyProps,
3562
3564
  drawerFooterProps,
@@ -3579,7 +3581,7 @@ const DotDrawer = ({
3579
3581
  onClose(event);
3580
3582
  }
3581
3583
  };
3582
- const rootClasses = useStylesWithRootClass(rootClassName$X, className);
3584
+ const rootClasses = useStylesWithRootClass(rootClassName$Y, className);
3583
3585
  const backdropEnabled = variant === 'temporary' && !(ModalProps === null || ModalProps === void 0 ? void 0 : ModalProps.hideBackdrop);
3584
3586
  const headerExists = !!drawerHeaderProps;
3585
3587
  const bodyPendoId = drawerBodyProps ? drawerBodyProps['data-pendoid'] : 'drawer-body';
@@ -3963,7 +3965,7 @@ const DotList = ({
3963
3965
  nestedListType = 'expandable',
3964
3966
  width = 240
3965
3967
  }) => {
3966
- const rootClasses = useStylesWithRootClass(rootClassName$10, className);
3968
+ const rootClasses = useStylesWithRootClass(rootClassName$11, className);
3967
3969
  const listWidth = typeof width === 'number' ? `${width}px` : width;
3968
3970
  const listRef = useRef();
3969
3971
  const [listItemIndex, setListItemIndex] = useState(null);
@@ -4001,7 +4003,7 @@ const DotList = ({
4001
4003
  updateSelectedListItem(index);
4002
4004
  }
4003
4005
  };
4004
- const determineOnClick = item.href && !item.onClick ? null : handleListItemClick;
4006
+ const determineOnClick = item.onClick || item.items ? handleListItemClick : null;
4005
4007
  const handleMenuLeave = event => {
4006
4008
  // TODO: Need to apply animation to open/close
4007
4009
  var _a, _b;
@@ -4052,12 +4054,12 @@ const DotList = ({
4052
4054
  });
4053
4055
  };
4054
4056
 
4055
- const rootClassName$S = 'dot-copy-button';
4057
+ const rootClassName$T = 'dot-copy-button';
4056
4058
  const StyledCopyButton = styled.span`
4057
4059
  ${({
4058
4060
  theme
4059
4061
  }) => css`
4060
- &.${rootClassName$S} .copied-to-clipboard {
4062
+ &.${rootClassName$T} .copied-to-clipboard {
4061
4063
  color: ${theme.palette.figma.success.normal};
4062
4064
 
4063
4065
  &.MuiIcon-fontSizeSmall.button-size-small {
@@ -4083,7 +4085,7 @@ const DotCopyButton = ({
4083
4085
  color = 'inherit',
4084
4086
  copiedTooltip = 'Copied!',
4085
4087
  copyTooltip = 'Copy to clipboard',
4086
- 'data-pendoid': dataPendoId = rootClassName$S,
4088
+ 'data-pendoid': dataPendoId = rootClassName$T,
4087
4089
  'data-testid': dataTestId = 'dot-copy-button',
4088
4090
  disabled = false,
4089
4091
  disableRipple = false,
@@ -4131,7 +4133,7 @@ const DotCopyButton = ({
4131
4133
  return false;
4132
4134
  }, [value, showCopiedIcon, disabled, onClick]);
4133
4135
  return jsxs(StyledCopyButton, {
4134
- className: rootClassName$S,
4136
+ className: rootClassName$T,
4135
4137
  "data-testid": dataTestId,
4136
4138
  children: [!timedShowCopiedIcon && jsx(DotIconButton, {
4137
4139
  ariaLabel: ariaLabel,
@@ -4220,7 +4222,7 @@ const DotInputText = ({
4220
4222
  autoFocus,
4221
4223
  className,
4222
4224
  defaultValue,
4223
- 'data-pendoid': dataPendoId = rootClassName$16,
4225
+ 'data-pendoid': dataPendoId = rootClassName$17,
4224
4226
  'data-testid': dataTestId,
4225
4227
  disabled = false,
4226
4228
  error = false,
@@ -4266,7 +4268,7 @@ const DotInputText = ({
4266
4268
  const internalInputRef = useRef(null);
4267
4269
  const textFieldInputRef = inputRef || internalInputRef;
4268
4270
  const [inputTextState, setInputTextState] = useState(getInitialState(value));
4269
- const rootStyles = useStylesWithRootClass(rootClassName$16, hasError, hasWarning, hasSuccess, readOnly && readOnlyClassName$1);
4271
+ const rootStyles = useStylesWithRootClass(rootClassName$17, hasError, hasWarning, hasSuccess, readOnly && readOnlyClassName$1);
4270
4272
  useEffect(() => {
4271
4273
  if (value !== inputTextState.inputValue) {
4272
4274
  setInputTextState(getInitialState(value, defaultValue));
@@ -4402,10 +4404,10 @@ const DotInputText = ({
4402
4404
  });
4403
4405
  };
4404
4406
 
4405
- const rootClassName$R = 'dot-search-input';
4407
+ const rootClassName$S = 'dot-search-input';
4406
4408
  const StyledSearchInput = styled.span`
4407
4409
  ${() => css`
4408
- &.${rootClassName$R} {
4410
+ &.${rootClassName$S} {
4409
4411
  }
4410
4412
  `}
4411
4413
  `;
@@ -4422,7 +4424,7 @@ function SearchInput({
4422
4424
  tooltip = null,
4423
4425
  value
4424
4426
  }) {
4425
- const rootClasses = useStylesWithRootClass(rootClassName$R, className);
4427
+ const rootClasses = useStylesWithRootClass(rootClassName$S, className);
4426
4428
  const [searchText, setSearchText] = useState(value);
4427
4429
  let previousSearchText = '';
4428
4430
  const handleChange = useCallback(event => {
@@ -4678,12 +4680,12 @@ const recentAppInstancesSetter = (latestInstance, maxRecentItems
4678
4680
  };
4679
4681
  };
4680
4682
 
4681
- const rootClassName$Q = 'dot-app-switcher';
4683
+ const rootClassName$R = 'dot-app-switcher';
4682
4684
  const StyledAppSwitcher = styled(DotDrawer)`
4683
4685
  ${({
4684
4686
  theme
4685
4687
  }) => css`
4686
- &.${rootClassName$Q} {
4688
+ &.${rootClassName$R} {
4687
4689
  .dot-drawer-paper {
4688
4690
  padding: 0;
4689
4691
  width: 382px;
@@ -4793,7 +4795,7 @@ const DotAppSwitcherView = ({
4793
4795
  if (dotCoreApiContext !== null) {
4794
4796
  setSelectedAppType = dotCoreApiContext.setSelectedAppSwitcherAppType;
4795
4797
  }
4796
- const rootClasses = useStylesWithRootClass(rootClassName$Q, className);
4798
+ const rootClasses = useStylesWithRootClass(rootClassName$R, className);
4797
4799
  const [appTypeMap, setAppTypeMap] = useState();
4798
4800
  const [appTypeLabels, setAppTypeLabels] = useState();
4799
4801
  const [appTypeMenuItems, setAppTypeMenuItems] = useState();
@@ -5171,12 +5173,12 @@ var SvgLogoDigitalAiWhite = function SvgLogoDigitalAiWhite(_ref, ref) {
5171
5173
  };
5172
5174
  var ForwardRef = /*#__PURE__*/forwardRef(SvgLogoDigitalAiWhite);
5173
5175
 
5174
- const rootClassName$P = 'dot-sidebar';
5176
+ const rootClassName$Q = 'dot-sidebar';
5175
5177
  const StyledSidebar = styled.aside`
5176
5178
  ${({
5177
5179
  theme
5178
5180
  }) => css`
5179
- &.${rootClassName$P} {
5181
+ &.${rootClassName$Q} {
5180
5182
  align-items: stretch;
5181
5183
  background: ${theme.palette.figma.background.level1.white};
5182
5184
  border-width: 0 1px;
@@ -5452,10 +5454,10 @@ const StyledSidebar = styled.aside`
5452
5454
  `}
5453
5455
  `;
5454
5456
 
5455
- const rootClassName$O = 'dot-truncate-with-tooltip';
5457
+ const rootClassName$P = 'dot-truncate-with-tooltip';
5456
5458
  const StyledTruncateWithTooltip = styled(Tooltip)`
5457
5459
  ${() => css`
5458
- &.${rootClassName$O} {
5460
+ &.${rootClassName$P} {
5459
5461
  display: block;
5460
5462
  overflow: hidden;
5461
5463
  white-space: nowrap;
@@ -5486,7 +5488,7 @@ const DotTruncateWithTooltip = ({
5486
5488
  label,
5487
5489
  width
5488
5490
  }) => {
5489
- const rootClasses = useStylesWithRootClass(rootClassName$O, className, charactersLimit ? 'dot-characters-limit' : '');
5491
+ const rootClasses = useStylesWithRootClass(rootClassName$P, className, charactersLimit ? 'dot-characters-limit' : '');
5490
5492
  return jsx(StyledTruncateWithTooltip, {
5491
5493
  "aria-label": ariaLabel,
5492
5494
  arrow: arrow,
@@ -5596,7 +5598,7 @@ const DotSidebar = ({
5596
5598
  setIsOpen(!isOpen);
5597
5599
  };
5598
5600
  const sidebarClasses = useStylesWithRootClass('side-nav', openClass);
5599
- const rootClasses = useStylesWithRootClass(rootClassName$P, openClass, className);
5601
+ const rootClasses = useStylesWithRootClass(rootClassName$Q, openClass, className);
5600
5602
  return jsxs(StyledSidebar, {
5601
5603
  "aria-label": ariaLabel,
5602
5604
  className: rootClasses,
@@ -5663,12 +5665,12 @@ const DotSidebar = ({
5663
5665
  });
5664
5666
  };
5665
5667
 
5666
- const rootClassName$N = 'dot-badge';
5668
+ const rootClassName$O = 'dot-badge';
5667
5669
  const StyledBadge = styled(Badge)`
5668
5670
  ${({
5669
5671
  theme
5670
5672
  }) => css`
5671
- &.${rootClassName$N} {
5673
+ &.${rootClassName$O} {
5672
5674
  color: ${theme.palette.figma.typography.black};
5673
5675
  word-break: normal;
5674
5676
 
@@ -5703,7 +5705,7 @@ const DotBadge = ({
5703
5705
  overlap,
5704
5706
  variant = 'dot'
5705
5707
  }) => {
5706
- const rootClasses = useStylesWithRootClass(rootClassName$N, className);
5708
+ const rootClasses = useStylesWithRootClass(rootClassName$O, className);
5707
5709
  return jsx(StyledBadge, {
5708
5710
  "$badgeColor": badgeColor,
5709
5711
  anchorOrigin: {
@@ -5725,7 +5727,7 @@ const DotBadge = ({
5725
5727
  });
5726
5728
  };
5727
5729
 
5728
- const rootClassName$M = 'dot-app-toolbar';
5730
+ const rootClassName$N = 'dot-app-toolbar';
5729
5731
  const denseClassName = 'dense';
5730
5732
  const StyledMainMenu = styled(DotDrawer)`
5731
5733
  ${({
@@ -5765,7 +5767,7 @@ const StyledAppToolbar = styled.header`
5765
5767
  ${({
5766
5768
  theme
5767
5769
  }) => css`
5768
- &.${rootClassName$M} {
5770
+ &.${rootClassName$N} {
5769
5771
  align-items: center;
5770
5772
  background: ${theme.palette.figma.appToolbar.background};
5771
5773
  border-bottom: 4px solid ${theme.palette.figma.border.default};
@@ -5887,7 +5889,7 @@ const DotAppToolbar = ({
5887
5889
  const displayAppLogo = appLogo || appLogoSmall;
5888
5890
  const mainMenuRef = useRef(null);
5889
5891
  const denseClass = dense ? denseClassName : '';
5890
- const rootClasses = useStylesWithRootClass(rootClassName$M, className, denseClass, showMainMenu ? '' : 'without-menu-icon');
5892
+ const rootClasses = useStylesWithRootClass(rootClassName$N, className, denseClass, showMainMenu ? '' : 'without-menu-icon');
5891
5893
  const mainMenuClasses = useStylesWithRootClass('dot-main-menu', denseClass, menuOpen ? 'open' : '');
5892
5894
  const targetBreakpoint = useMediaQuery(theme => theme.breakpoints.up('lg'));
5893
5895
  useEffect(() => {
@@ -6017,14 +6019,14 @@ const DotAppToolbar = ({
6017
6019
  }) : appToolbar;
6018
6020
  };
6019
6021
 
6020
- const rootClassName$L = 'dot-autocomplete';
6022
+ const rootClassName$M = 'dot-autocomplete';
6021
6023
  const inputRootClassName = 'dot-input-root';
6022
6024
  const inputMediumClassName = 'dot-input-medium';
6023
6025
  const StyledAutocomplete = styled(Autocomplete)`
6024
6026
  ${({
6025
6027
  theme
6026
6028
  }) => css`
6027
- &.${rootClassName$L} {
6029
+ &.${rootClassName$M} {
6028
6030
  &.${inputMediumClassName} .dot-text-field .${inputRootClassName} {
6029
6031
  height: 56px;
6030
6032
  padding-left: ${theme.spacing(2)};
@@ -6061,12 +6063,12 @@ const StyledAutocomplete = styled(Autocomplete)`
6061
6063
  `}
6062
6064
  `;
6063
6065
 
6064
- const rootClassName$K = 'dot-chip';
6066
+ const rootClassName$L = 'dot-chip';
6065
6067
  const StyledChip = styled(Chip)`
6066
6068
  ${({
6067
6069
  theme
6068
6070
  }) => css`
6069
- &.${rootClassName$K} {
6071
+ &.${rootClassName$L} {
6070
6072
  background: ${theme.palette.figma.neutral.normal};
6071
6073
  border-color: ${theme.palette.figma.border.darker};
6072
6074
  color: ${theme.palette.figma.typography.black};
@@ -6172,7 +6174,7 @@ const DotChip = ({
6172
6174
  charactersLimit = DEFAULT_CHARACTERS_LIMIT,
6173
6175
  children,
6174
6176
  className,
6175
- 'data-pendoid': dataPendoId = rootClassName$K,
6177
+ 'data-pendoid': dataPendoId = rootClassName$L,
6176
6178
  'data-testid': dataTestId,
6177
6179
  disabled = false,
6178
6180
  error = false,
@@ -6184,7 +6186,7 @@ const DotChip = ({
6184
6186
  startIcon
6185
6187
  }) => {
6186
6188
  const errorClass = error ? 'Mui-error' : '';
6187
- const rootClasses = useStylesWithRootClass(rootClassName$K, className, errorClass);
6189
+ const rootClasses = useStylesWithRootClass(rootClassName$L, className, errorClass);
6188
6190
  const getChipLabel = () => {
6189
6191
  if (charactersLimit <= 0 || children.length < charactersLimit) return children;
6190
6192
  const label = `${children.substring(0, charactersLimit)}...`;
@@ -6282,7 +6284,7 @@ const DotAutoComplete = ({
6282
6284
  ariaLabel,
6283
6285
  autoFocus,
6284
6286
  className,
6285
- 'data-pendoid': dataPendoId = rootClassName$L,
6287
+ 'data-pendoid': dataPendoId = rootClassName$M,
6286
6288
  'data-testid': dataTestId,
6287
6289
  defaultValue,
6288
6290
  dense = true,
@@ -6333,8 +6335,8 @@ const DotAutoComplete = ({
6333
6335
  const popperOpen = !readOnly && (open || isOpened);
6334
6336
  const preventDuplicateInsertion = actionItem === null || actionItem === void 0 ? void 0 : actionItem.preventDuplicateInsertion;
6335
6337
  const textFieldWarningClassName = !error && warning && warningClassName;
6336
- const rootClasses = useStylesWithRootClass(rootClassName$L, size === 'medium' && inputMediumClassName, className);
6337
- const textFieldRootClasses = useStylesWithRootClass(rootClassName$16, readOnly && readOnlyClassName$1, textFieldWarningClassName);
6338
+ const rootClasses = useStylesWithRootClass(rootClassName$M, size === 'medium' && inputMediumClassName, className);
6339
+ const textFieldRootClasses = useStylesWithRootClass(rootClassName$17, readOnly && readOnlyClassName$1, textFieldWarningClassName);
6338
6340
  const inputRootClasses = useStylesWithRootClass(inputRootClassName, !dense && inputMediumClassName);
6339
6341
  let highlightedOption = null;
6340
6342
  let textFieldInput;
@@ -6379,7 +6381,7 @@ const DotAutoComplete = ({
6379
6381
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
6380
6382
  const DotPopper = props => {
6381
6383
  if (!isActionItemDefined) return jsx(StyledPopper, Object.assign({}, props, {
6382
- className: rootClassName$_,
6384
+ className: rootClassName$$,
6383
6385
  disablePortal: disablePortal,
6384
6386
  "$maxHeight": maxHeight
6385
6387
  }));
@@ -6401,7 +6403,7 @@ const DotAutoComplete = ({
6401
6403
  const paperProps = props.children.props;
6402
6404
  const paperChildren = paperProps.children;
6403
6405
  return jsx(StyledPopper, Object.assign({}, props, {
6404
- className: rootClassName$_,
6406
+ className: rootClassName$$,
6405
6407
  disablePortal: disablePortal,
6406
6408
  "$maxHeight": maxHeight,
6407
6409
  children: jsxs(Paper, Object.assign({}, paperProps, {
@@ -6610,10 +6612,10 @@ const DotAutoComplete = ({
6610
6612
  });
6611
6613
  };
6612
6614
 
6613
- const rootClassName$J = 'dot-avatar-group';
6615
+ const rootClassName$K = 'dot-avatar-group';
6614
6616
  const StyledAvatarGroup = styled(AvatarGroup)`
6615
6617
  ${() => css`
6616
- &.${rootClassName$J} {
6618
+ &.${rootClassName$K} {
6617
6619
  justify-content: flex-end;
6618
6620
 
6619
6621
  .MuiAvatar-root {
@@ -6632,7 +6634,7 @@ const DotAvatarGroup = ({
6632
6634
  max = 3,
6633
6635
  spacing = 'medium'
6634
6636
  }) => {
6635
- const rootClasses = useStylesWithRootClass(rootClassName$J, className);
6637
+ const rootClasses = useStylesWithRootClass(rootClassName$K, className);
6636
6638
  return jsx(StyledAvatarGroup, {
6637
6639
  "aria-label": ariaLabel,
6638
6640
  classes: {
@@ -6647,13 +6649,13 @@ const DotAvatarGroup = ({
6647
6649
  });
6648
6650
  };
6649
6651
 
6650
- const rootClassName$I = 'dot-breadcrumbs';
6652
+ const rootClassName$J = 'dot-breadcrumbs';
6651
6653
  const breadcrumbsWrapperClass = 'dot-breadcrumbs-wrapper';
6652
6654
  const StyledBreadcrumbsWrapper = styled.div`
6653
6655
  ${({
6654
6656
  theme
6655
6657
  }) => css`
6656
- &.${rootClassName$I} {
6658
+ &.${rootClassName$J} {
6657
6659
  overflow: hidden;
6658
6660
 
6659
6661
  .dot-breadcrumbs-menu {
@@ -6673,7 +6675,7 @@ const StyledBreadcrumbs = styled(Breadcrumbs)`
6673
6675
  ${({
6674
6676
  theme
6675
6677
  }) => css`
6676
- &.${rootClassName$I} {
6678
+ &.${rootClassName$J} {
6677
6679
  margin-bottom: 0;
6678
6680
 
6679
6681
  .MuiBreadcrumbs-ol {
@@ -7001,7 +7003,7 @@ const DotBreadcrumbs = ({
7001
7003
  children: [jsx(StyledBreadcrumbs, {
7002
7004
  "aria-label": "breadcrumb",
7003
7005
  classes: {
7004
- root: rootClassName$I,
7006
+ root: rootClassName$J,
7005
7007
  ol: 'dot-ol',
7006
7008
  li: 'dot-li'
7007
7009
  },
@@ -7032,14 +7034,14 @@ const DotBreadcrumbs = ({
7032
7034
  });
7033
7035
  };
7034
7036
 
7035
- const rootClassName$H = 'dot-button-toggle';
7037
+ const rootClassName$I = 'dot-button-toggle';
7036
7038
  // TODO: need to update ripple color
7037
7039
  // https://github.com/mui/material-ui/issues/28543
7038
7040
  const StyledToggleButtonGroup = styled(ToggleButtonGroup)`
7039
7041
  ${({
7040
7042
  theme
7041
7043
  }) => css`
7042
- &.${rootClassName$H} {
7044
+ &.${rootClassName$I} {
7043
7045
  button:not(.MuiToggleButton-sizeLarge):not(.MuiToggleButton-sizeSmall) {
7044
7046
  /* Override height for medium size */
7045
7047
  height: ${theme.spacing(5)};
@@ -7155,7 +7157,7 @@ const DotButtonToggle = ({
7155
7157
  buttonOptions,
7156
7158
  className,
7157
7159
  color,
7158
- 'data-pendoid': dataPendoId = rootClassName$H,
7160
+ 'data-pendoid': dataPendoId = rootClassName$I,
7159
7161
  'data-testid': dataTestId = 'dot-toggle',
7160
7162
  disableFocusRipple = false,
7161
7163
  disableRipple = false,
@@ -7165,7 +7167,7 @@ const DotButtonToggle = ({
7165
7167
  size = 'medium',
7166
7168
  value
7167
7169
  }) => {
7168
- const rootClasses = useStylesWithRootClass(rootClassName$H, className);
7170
+ const rootClasses = useStylesWithRootClass(rootClassName$I, className);
7169
7171
  const renderToggleButton = ({
7170
7172
  ariaLabel: optionAriaLabel,
7171
7173
  badgeContent: optionBadgeContent,
@@ -7248,12 +7250,12 @@ const TooltipToggleButton = forwardRef((_a, ref) => {
7248
7250
  }));
7249
7251
  });
7250
7252
 
7251
- const rootClassName$G = 'dot-card';
7253
+ const rootClassName$H = 'dot-card';
7252
7254
  const StyledCard = styled(Card)`
7253
7255
  ${({
7254
7256
  theme
7255
7257
  }) => css`
7256
- &.${rootClassName$G} {
7258
+ &.${rootClassName$H} {
7257
7259
  background-color: ${theme.palette.figma.background.level1.white};
7258
7260
  }
7259
7261
  `}
@@ -7265,7 +7267,7 @@ const DotCard = ({
7265
7267
  className,
7266
7268
  'data-testid': dataTestId
7267
7269
  }) => {
7268
- const rootClasses = useStylesWithRootClass(rootClassName$G, className);
7270
+ const rootClasses = useStylesWithRootClass(rootClassName$H, className);
7269
7271
  return jsx(StyledCard, {
7270
7272
  "aria-label": ariaLabel,
7271
7273
  classes: {
@@ -7294,12 +7296,12 @@ const DotCardContent = ({
7294
7296
  });
7295
7297
  };
7296
7298
 
7297
- const rootClassName$F = 'dot-card-footer';
7299
+ const rootClassName$G = 'dot-card-footer';
7298
7300
  const StyledDiv = styled.div`
7299
7301
  ${({
7300
7302
  theme
7301
7303
  }) => css`
7302
- &.${rootClassName$F} {
7304
+ &.${rootClassName$G} {
7303
7305
  padding: ${theme.spacing(2)};
7304
7306
  }
7305
7307
  `}
@@ -7311,7 +7313,7 @@ const DotCardFooter = ({
7311
7313
  className,
7312
7314
  'data-testid': dataTestId
7313
7315
  }) => {
7314
- const rootClasses = useStylesWithRootClass(rootClassName$F, className);
7316
+ const rootClasses = useStylesWithRootClass(rootClassName$G, className);
7315
7317
  return jsx(StyledDiv, {
7316
7318
  "aria-label": ariaLabel,
7317
7319
  className: rootClasses,
@@ -7355,9 +7357,9 @@ const DotCardHeader = ({
7355
7357
  });
7356
7358
  };
7357
7359
 
7358
- const rootClassName$E = 'dot-form-control-label';
7360
+ const rootClassName$F = 'dot-form-control-label';
7359
7361
  const StyledFormControlLabel = styled(FormControlLabel)`
7360
- &.${rootClassName$E} {
7362
+ &.${rootClassName$F} {
7361
7363
  .MuiFormControlLabel-label {
7362
7364
  margin-bottom: 0;
7363
7365
  padding: 0 0 0 4px;
@@ -7380,12 +7382,12 @@ const StyledFormControlLabel = styled(FormControlLabel)`
7380
7382
  }
7381
7383
  `;
7382
7384
 
7383
- const rootClassName$D = 'dot-checkbox';
7385
+ const rootClassName$E = 'dot-checkbox';
7384
7386
  const StyledCheckbox = styled(Checkbox)`
7385
7387
  ${({
7386
7388
  theme
7387
7389
  }) => css`
7388
- &.${rootClassName$D} {
7390
+ &.${rootClassName$E} {
7389
7391
  padding: ${theme.spacing(1)};
7390
7392
 
7391
7393
  &.MuiCheckbox-indeterminate {
@@ -7404,7 +7406,7 @@ function DotCheckbox({
7404
7406
  ariaLabelledby,
7405
7407
  checked,
7406
7408
  className,
7407
- 'data-pendoid': dataPendoId = rootClassName$E,
7409
+ 'data-pendoid': dataPendoId = rootClassName$F,
7408
7410
  'data-testid': dataTestId,
7409
7411
  disabled,
7410
7412
  disableRipple,
@@ -7419,14 +7421,14 @@ function DotCheckbox({
7419
7421
  size = 'medium',
7420
7422
  value
7421
7423
  }) {
7422
- const rootClasses = useStylesWithRootClass(rootClassName$E, className);
7424
+ const rootClasses = useStylesWithRootClass(rootClassName$F, className);
7423
7425
  const handleChange = event => {
7424
7426
  onChange && onChange(event, event.target.value);
7425
7427
  };
7426
7428
  const checkboxControl = jsx(StyledCheckbox, {
7427
7429
  checked: checked,
7428
7430
  classes: {
7429
- root: rootClassName$D
7431
+ root: rootClassName$E
7430
7432
  },
7431
7433
  color: "primary",
7432
7434
  "data-pendoid": dataPendoId,
@@ -7455,13 +7457,13 @@ function DotCheckbox({
7455
7457
  });
7456
7458
  }
7457
7459
 
7458
- const rootClassName$C = 'dot-form-group';
7460
+ const rootClassName$D = 'dot-form-group';
7459
7461
  const groupLabelClassName = 'dot-form-group-label';
7460
7462
  const startAdornmentClassName = 'dot-start-adornment';
7461
7463
  const endAdornmentClassName = 'dot-end-adornment';
7462
7464
  const placementClassName = 'dot-';
7463
7465
  const StyledFormControl = styled(FormControl)`
7464
- &.${rootClassName$C} {
7466
+ &.${rootClassName$D} {
7465
7467
  .MuiFormLabel-root {
7466
7468
  width: 100%;
7467
7469
  line-height: 24px;
@@ -7492,7 +7494,7 @@ const StyledFormControl = styled(FormControl)`
7492
7494
  }
7493
7495
  `;
7494
7496
 
7495
- const rootClassName$B = 'dot-checkbox-group';
7497
+ const rootClassName$C = 'dot-checkbox-group';
7496
7498
  const wrapperClassName$1 = 'dot-checkbox-group-wrapper';
7497
7499
  const checkboxListClassName = 'dot-checkbox-list';
7498
7500
  const checkboxListItemClassName = 'dot-checkbox-list-item';
@@ -7501,7 +7503,7 @@ const StyledCheckboxGroup = styled.div`
7501
7503
  theme
7502
7504
  }) => css`{
7503
7505
  &.${wrapperClassName$1} {
7504
- .${rootClassName$B} {
7506
+ .${rootClassName$C} {
7505
7507
  width: 100%;
7506
7508
  }
7507
7509
 
@@ -7524,7 +7526,7 @@ const StyledCheckboxGroup = styled.div`
7524
7526
  margin-top: 0;
7525
7527
  padding-left: ${theme.spacing(2.5)};
7526
7528
 
7527
- .${rootClassName$E} {
7529
+ .${rootClassName$F} {
7528
7530
  margin: 0;
7529
7531
  }
7530
7532
  }
@@ -7532,13 +7534,13 @@ const StyledCheckboxGroup = styled.div`
7532
7534
  `}
7533
7535
  `;
7534
7536
 
7535
- const rootClassName$A = 'dot-form-group';
7537
+ const rootClassName$B = 'dot-form-group';
7536
7538
  const StyledFormGroup = styled(FormGroup)`
7537
7539
  ${({
7538
7540
  theme,
7539
7541
  row
7540
7542
  }) => css`
7541
- &.${rootClassName$A} > * {
7543
+ &.${rootClassName$B} > * {
7542
7544
  margin: ${row ? `${theme.spacing(0.5)}` : 0};
7543
7545
  }
7544
7546
  `}
@@ -7551,7 +7553,7 @@ function DotFormGroup({
7551
7553
  'data-testid': dataTestId,
7552
7554
  row
7553
7555
  }) {
7554
- const rootClasses = useStylesWithRootClass(rootClassName$C, className);
7556
+ const rootClasses = useStylesWithRootClass(rootClassName$D, className);
7555
7557
  return jsx(StyledFormGroup, {
7556
7558
  "aria-label": ariaLabel,
7557
7559
  classes: {
@@ -7590,7 +7592,7 @@ function DotCheckboxGroup({
7590
7592
  size = 'medium'
7591
7593
  }) {
7592
7594
  const placement = `${placementClassName}${labelPlacement}`;
7593
- const rootClasses = useStylesWithRootClass(rootClassName$C, rootClassName$B, className, placement);
7595
+ const rootClasses = useStylesWithRootClass(rootClassName$D, rootClassName$C, className, placement);
7594
7596
  const [selectedOptions, setSelectedOptions] = useState(defaultValues);
7595
7597
  const [allChecked, setAllChecked] = useState(false);
7596
7598
  /* This will ensure that state can be updated from the outside */
@@ -7675,12 +7677,12 @@ function DotCheckboxGroup({
7675
7677
  });
7676
7678
  }
7677
7679
 
7678
- const rootClassName$z = 'dot-dialog';
7680
+ const rootClassName$A = 'dot-dialog';
7679
7681
  const StyledDialog = styled(Dialog)`
7680
7682
  ${({
7681
7683
  theme
7682
7684
  }) => css`
7683
- &.${rootClassName$z} {
7685
+ &.${rootClassName$A} {
7684
7686
  .MuiDialog-paper {
7685
7687
  background: ${theme.palette.figma.background.level1.white};
7686
7688
  color: ${theme.palette.figma.typography.black};
@@ -7726,7 +7728,7 @@ const DotDialog = ({
7726
7728
  cancelButtonProps,
7727
7729
  cancelButtonVisible = true,
7728
7730
  className,
7729
- 'data-pendoid': dataPendoId = rootClassName$z,
7731
+ 'data-pendoid': dataPendoId = rootClassName$A,
7730
7732
  'data-testid': dataTestId,
7731
7733
  children,
7732
7734
  closeIconVisible,
@@ -7739,7 +7741,7 @@ const DotDialog = ({
7739
7741
  submitButtonProps,
7740
7742
  title
7741
7743
  }) => {
7742
- const rootClasses = useStylesWithRootClass(rootClassName$z, className);
7744
+ const rootClasses = useStylesWithRootClass(rootClassName$A, className);
7743
7745
  const cancelClasses = useStylesWithRootClass(cancelButtonProps === null || cancelButtonProps === void 0 ? void 0 : cancelButtonProps.className, 'cancel-button');
7744
7746
  const [isOpen, setIsOpen] = useState(open);
7745
7747
  useEffect(() => {
@@ -7857,7 +7859,7 @@ const DotConfirmationDialog = ({
7857
7859
  });
7858
7860
  };
7859
7861
 
7860
- const rootClassName$y = 'dot-grid';
7862
+ const rootClassName$z = 'dot-grid';
7861
7863
  const frGetter = value => typeof value === 'number' ? `repeat(${value}, 1fr)` : value;
7862
7864
  const breakpointsGetter$1 = (theme, columnsBreakpoints, columnGap, rowGap) => `${theme.breakpoints.up('xs')} {
7863
7865
  column-gap: ${`${columnGap.xs}px`};
@@ -7909,7 +7911,7 @@ const Grid = ({
7909
7911
  className,
7910
7912
  children
7911
7913
  }) => {
7912
- const rootClasses = useStylesWithRootClass(rootClassName$y, className);
7914
+ const rootClasses = useStylesWithRootClass(rootClassName$z, className);
7913
7915
  return jsx("div", {
7914
7916
  className: rootClasses,
7915
7917
  children: children
@@ -7928,7 +7930,7 @@ const StyledGrid = styled(Grid)`
7928
7930
  theme,
7929
7931
  width
7930
7932
  }) => css`
7931
- &.${rootClassName$y} {
7933
+ &.${rootClassName$z} {
7932
7934
  display: grid;
7933
7935
  grid-template-rows: ${frGetter(rows)};
7934
7936
  ${columns ? `${columns && `grid-template-columns: ${frGetter(columns)}`};` : breakpointsGetter$1(theme, columnsBreakpoints, columnGap, rowGap)}
@@ -8134,7 +8136,7 @@ const CssGridDebug = ({
8134
8136
  });
8135
8137
  };
8136
8138
 
8137
- const rootClassName$x = 'dot-empty-state';
8139
+ const rootClassName$y = 'dot-empty-state';
8138
8140
  const StyledEmptyState = styled.div`
8139
8141
  ${({
8140
8142
  theme
@@ -8144,6 +8146,11 @@ const StyledEmptyState = styled.div`
8144
8146
  max-width: 600px;
8145
8147
  text-align: center;
8146
8148
 
8149
+ .empty-state-image-container {
8150
+ display: flex;
8151
+ justify-content: center;
8152
+ }
8153
+
8147
8154
  .empty-state-image {
8148
8155
  min-height: 239px;
8149
8156
  margin-bottom: ${theme.spacing(5)};
@@ -8164,26 +8171,77 @@ const StyledEmptyState = styled.div`
8164
8171
  `}
8165
8172
  `;
8166
8173
 
8174
+ const rootClassName$x = 'dot-illustration';
8175
+ const StyledIllustration = styled.span`
8176
+ &.${rootClassName$x} {
8177
+ display: inline-block;
8178
+ }
8179
+ `;
8180
+
8181
+ const DotIllustration = ({
8182
+ alt,
8183
+ ariaLabel,
8184
+ ariaRole = 'img',
8185
+ className,
8186
+ 'data-testid': dataTestId,
8187
+ illustrationId,
8188
+ theme = 'light',
8189
+ title,
8190
+ tooltip,
8191
+ tooltipPlacement = 'right-end'
8192
+ }) => {
8193
+ const rootClasses = useStylesWithRootClass(rootClassName$x, className);
8194
+ return jsx(DotTooltip, {
8195
+ title: tooltip,
8196
+ placement: tooltipPlacement,
8197
+ "data-testid": `${dataTestId || rootClassName$x}-tooltip`,
8198
+ children: jsx(StyledIllustration, {
8199
+ "aria-hidden": "false",
8200
+ "aria-label": ariaLabel || title || 'Illustration',
8201
+ className: rootClasses,
8202
+ "data-testid": dataTestId || rootClassName$x,
8203
+ role: ariaRole,
8204
+ children: jsx("img", {
8205
+ alt: alt || 'Illustration',
8206
+ "aria-label": ariaLabel || title || 'Illustration',
8207
+ className: `illustration-${illustrationId} dot-img ${theme}-theme`,
8208
+ "data-testid": dataTestId && `${dataTestId}-img`,
8209
+ role: ariaRole,
8210
+ title: title || 'Illustration'
8211
+ })
8212
+ })
8213
+ });
8214
+ };
8215
+
8167
8216
  const DotEmptyState = ({
8168
8217
  ariaLabel,
8169
8218
  buttonProps,
8170
8219
  className,
8171
8220
  'data-testid': dataTestId,
8221
+ illustrationId,
8172
8222
  imageAltText,
8173
8223
  imageSrc,
8174
8224
  subtitle,
8175
8225
  title
8176
8226
  }) => {
8177
- const rootClasses = useStylesWithRootClass(rootClassName$x, className);
8227
+ const rootClasses = useStylesWithRootClass(rootClassName$y, className);
8178
8228
  return jsxs(StyledEmptyState, {
8179
8229
  "aria-label": ariaLabel,
8180
8230
  className: rootClasses,
8181
8231
  "data-testid": dataTestId,
8182
- children: [imageSrc && jsx("img", {
8183
- alt: imageAltText || title,
8184
- className: "empty-state-image",
8185
- src: imageSrc,
8186
- title: imageAltText || title
8232
+ children: [jsxs("div", {
8233
+ className: "empty-state-image-container",
8234
+ children: [illustrationId && jsx(DotIllustration, {
8235
+ alt: imageAltText || title,
8236
+ className: "empty-state-image",
8237
+ illustrationId: illustrationId,
8238
+ title: imageAltText || title
8239
+ }), !illustrationId && imageSrc && jsx("img", {
8240
+ alt: imageAltText || title,
8241
+ className: "empty-state-image",
8242
+ src: imageSrc,
8243
+ title: imageAltText || title
8244
+ })]
8187
8245
  }), jsx(DotTypography, {
8188
8246
  variant: "h2",
8189
8247
  children: title
@@ -8248,7 +8306,7 @@ const StyledRadioGroup = styled(RadioGroup)`
8248
8306
  &.${groupClassName} {
8249
8307
  padding-left: ${theme.spacing(2.5)};
8250
8308
 
8251
- .${rootClassName$E} {
8309
+ .${rootClassName$F} {
8252
8310
  margin: 0;
8253
8311
  }
8254
8312
  }
@@ -8263,15 +8321,15 @@ const StyledFormContainer = styled.div`
8263
8321
  &.${rootClassName$w} {
8264
8322
  margin: ${theme.spacing(3, 0)};
8265
8323
 
8266
- .${rootClassName$C},
8267
- .${rootClassName$E},
8268
- .${rootClassName$16},
8324
+ .${rootClassName$D},
8325
+ .${rootClassName$F},
8326
+ .${rootClassName$17},
8269
8327
  .${rootSelectClassName} {
8270
8328
  margin: ${theme.spacing(1, 0)};
8271
8329
  }
8272
8330
 
8273
- .${rootClassName$B}, .${groupClassName} {
8274
- .${rootClassName$E} {
8331
+ .${rootClassName$C}, .${groupClassName} {
8332
+ .${rootClassName$F} {
8275
8333
  margin: 0;
8276
8334
  }
8277
8335
  }
@@ -8687,7 +8745,7 @@ function DotRadioButton({
8687
8745
  ariaLabel,
8688
8746
  checked,
8689
8747
  className,
8690
- 'data-pendoid': dataPendoId = rootClassName$E,
8748
+ 'data-pendoid': dataPendoId = rootClassName$F,
8691
8749
  'data-testid': dataTestId,
8692
8750
  disabled,
8693
8751
  id,
@@ -8700,7 +8758,7 @@ function DotRadioButton({
8700
8758
  size = 'medium',
8701
8759
  value
8702
8760
  }) {
8703
- const rootClasses = useStylesWithRootClass(rootClassName$E, className);
8761
+ const rootClasses = useStylesWithRootClass(rootClassName$F, className);
8704
8762
  const handleChange = event => {
8705
8763
  onChange && onChange(event, event.target.value);
8706
8764
  };
@@ -8754,7 +8812,7 @@ const DotRadioGroup = ({
8754
8812
  size = 'medium'
8755
8813
  }) => {
8756
8814
  const placement = `${placementClassName}${labelPlacement}`;
8757
- const rootClasses = useStylesWithRootClass(rootClassName$C, className, placement);
8815
+ const rootClasses = useStylesWithRootClass(rootClassName$D, className, placement);
8758
8816
  const radioValue = value || defaultValue;
8759
8817
  const [selectedValue, setSelectedValue] = useState(radioValue);
8760
8818
  /* This will ensure that value can be updated from the outside */
@@ -8888,7 +8946,7 @@ const DotSwitch = ({
8888
8946
  tabIndex: 0
8889
8947
  });
8890
8948
  return jsx(StyledFormControlLabel, {
8891
- className: rootClassName$E,
8949
+ className: rootClassName$F,
8892
8950
  control: switchControl,
8893
8951
  label: label,
8894
8952
  labelPlacement: labelPlacement
@@ -13134,7 +13192,7 @@ const DotPopper = ({
13134
13192
  open,
13135
13193
  placement
13136
13194
  }) => {
13137
- const rootClasses = useStylesWithRootClass(rootClassName$_, className);
13195
+ const rootClasses = useStylesWithRootClass(rootClassName$$, className);
13138
13196
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
13139
13197
  const handleClickAway = event => {
13140
13198
  if (onClickAway && (!anchorEl || !anchorEl.contains(event.currentTarget))) {
@@ -14414,4 +14472,4 @@ const DotStickyWithBorder = ({
14414
14472
  });
14415
14473
  };
14416
14474
 
14417
- export { ApiError, Cell, CreateUUID, CssCell, CssGrid, CssGridDebug, DatePickerKeydownContext, Daytime, DotAccordion, DotActionToolbar, DotAlertBanner, DotAppLogo, DotAppSwitcher, DotAppToolbar, DotAutoComplete, DotAvatar, DotAvatarGroup, DotBadge, DotBreadcrumbs, DotButton, DotButtonToggle, DotCard, DotCardContent, DotCardFooter, DotCardHeader, DotCarousel, DotCheckbox, DotCheckboxGroup, DotChip, DotClickAwayListener, DotConfirmationDialog, DotCopyButton, DotCoreApiProvider, DotDatePicker, DotDialog, DotDivider, DotDraggableList, DotDrawer, DotDynamicForm, DotEmptyFilterState, DotEmptyState, DotFileListItem, DotFileUpload, DotForm, DotFormGroup, DotHeaderRow, DotIcon, DotIconButton, DotInlineEdit, DotInputSelect, DotInputText, DotLinearProgress, DotLink, DotList, DotMenu, DotNavigationRail, DotPill, DotPopper, DotProgress, DotProgressButton, DotRadioButton, DotRadioGroup, DotSidebar, DotSkeleton, DotSnackbar, DotSnackbarContainer, DotSnackbarProvider, DotSplitButton, DotStepper, DotStickyWithBorder, DotSwitch, DotTable, DotTableAction, DotTableActions, DotTablePagination, DotTabs, DotThemeProvider, DotTimePicker, DotTooltip, DotTruncateWithTooltip, DotTypography, avatarColors, breakpointOptions, checkIfValidDate, darkFigmaColors, lightThemeColors as lightColors, lightFigmaColors, mockScrollIntoView, parseAutoCompleteValue, variables as themeVariables, typographyOptions, useDotCoreApiContext, useDotSnackbarContext };
14475
+ export { ApiError, Cell, CreateUUID, CssCell, CssGrid, CssGridDebug, DatePickerKeydownContext, Daytime, DotAccordion, DotActionToolbar, DotAlertBanner, DotAppLogo, DotAppSwitcher, DotAppToolbar, DotAutoComplete, DotAvatar, DotAvatarGroup, DotBadge, DotBreadcrumbs, DotButton, DotButtonToggle, DotCard, DotCardContent, DotCardFooter, DotCardHeader, DotCarousel, DotCheckbox, DotCheckboxGroup, DotChip, DotClickAwayListener, DotConfirmationDialog, DotCopyButton, DotCoreApiProvider, DotDatePicker, DotDialog, DotDivider, DotDraggableList, DotDrawer, DotDynamicForm, DotEmptyFilterState, DotEmptyState, DotFileListItem, DotFileUpload, DotForm, DotFormGroup, DotHeaderRow, DotIcon, DotIconButton, DotIllustration, DotInlineEdit, DotInputSelect, DotInputText, DotLinearProgress, DotLink, DotList, DotMenu, DotNavigationRail, DotPill, DotPopper, DotProgress, DotProgressButton, DotRadioButton, DotRadioGroup, DotSidebar, DotSkeleton, DotSnackbar, DotSnackbarContainer, DotSnackbarProvider, DotSplitButton, DotStepper, DotStickyWithBorder, DotSwitch, DotTable, DotTableAction, DotTableActions, DotTablePagination, DotTabs, DotThemeProvider, DotTimePicker, DotTooltip, DotTruncateWithTooltip, DotTypography, avatarColors, breakpointOptions, checkIfValidDate, darkFigmaColors, lightThemeColors as lightColors, lightFigmaColors, mockScrollIntoView, parseAutoCompleteValue, variables as themeVariables, typographyOptions, useDotCoreApiContext, useDotSnackbarContext };