@digital-ai/dot-components 4.1.1 → 4.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.esm.js +337 -144
- package/package.json +1 -1
- package/src/lib/components/analytics/dashboard-actions/DashboardActions.d.ts +2 -1
- package/src/lib/components/analytics/dashboard-actions/DashboardOptionsMenu.d.ts +2 -1
- package/src/lib/components/analytics/dashboard-dialog/DashboardDialog.d.ts +8 -1
- package/src/lib/components/analytics/dashboard-header/DashboardHeader.d.ts +1 -1
- package/src/lib/components/analytics/metadata-api/MetadataApiProvider.d.ts +1 -0
- package/src/lib/components/avatar-with-details/AvatarWithDetails.d.ts +20 -0
- package/src/lib/components/avatar-with-details/AvatarWithDetails.styles.d.ts +7 -0
- package/src/lib/components/index.d.ts +2 -0
package/index.esm.js
CHANGED
|
@@ -175,7 +175,7 @@ const readOnlyStyles = theme => css`
|
|
|
175
175
|
}
|
|
176
176
|
`;
|
|
177
177
|
|
|
178
|
-
const rootClassName$
|
|
178
|
+
const rootClassName$1l = 'dot-text-field';
|
|
179
179
|
const rootSelectClassName = 'dot-select-field';
|
|
180
180
|
const wrapperClassName$2 = 'dot-label-wrapper';
|
|
181
181
|
const labelClassName = 'dot-input-label';
|
|
@@ -228,7 +228,7 @@ const StyledTextField = styled(TextField)`
|
|
|
228
228
|
$maxRows,
|
|
229
229
|
$minRows
|
|
230
230
|
}) => css`
|
|
231
|
-
&.${rootClassName$
|
|
231
|
+
&.${rootClassName$1l} {
|
|
232
232
|
.MuiInputBase-root {
|
|
233
233
|
margin-bottom: 0;
|
|
234
234
|
}
|
|
@@ -290,7 +290,7 @@ const StyledTextField = styled(TextField)`
|
|
|
290
290
|
margin-right: ${theme.spacing(2)};
|
|
291
291
|
}
|
|
292
292
|
|
|
293
|
-
&.${rootSelectClassName}, &.${rootClassName$
|
|
293
|
+
&.${rootSelectClassName}, &.${rootClassName$1l} {
|
|
294
294
|
.${adornmentIconClassName} {
|
|
295
295
|
color: ${theme.palette.figma.icon.black};
|
|
296
296
|
p {
|
|
@@ -381,12 +381,12 @@ const StyledTextField = styled(TextField)`
|
|
|
381
381
|
`}
|
|
382
382
|
`;
|
|
383
383
|
|
|
384
|
-
const rootClassName$
|
|
384
|
+
const rootClassName$1k = 'dot-icon';
|
|
385
385
|
const StyledIcon = styled(Icon)`
|
|
386
386
|
${({
|
|
387
387
|
theme
|
|
388
388
|
}) => css`
|
|
389
|
-
&.${rootClassName$
|
|
389
|
+
&.${rootClassName$1k} {
|
|
390
390
|
color: ${theme.palette.figma.icon.black};
|
|
391
391
|
font-size: 20px;
|
|
392
392
|
|
|
@@ -427,7 +427,7 @@ const DotIcon = ({
|
|
|
427
427
|
iconId,
|
|
428
428
|
tooltip
|
|
429
429
|
}) => {
|
|
430
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
430
|
+
const rootClasses = useStylesWithRootClass(rootClassName$1k, className);
|
|
431
431
|
return jsx(DotTooltip, {
|
|
432
432
|
title: tooltip,
|
|
433
433
|
children: jsx(StyledIcon, {
|
|
@@ -488,7 +488,7 @@ const DotTypography = ({
|
|
|
488
488
|
});
|
|
489
489
|
};
|
|
490
490
|
|
|
491
|
-
const rootClassName$
|
|
491
|
+
const rootClassName$1j = 'dot-accordion';
|
|
492
492
|
const summaryClassName = 'dot-accordion-summary';
|
|
493
493
|
const detailClassName = 'dot-accordion-details';
|
|
494
494
|
const StyledAccordion = styled(Accordion)`
|
|
@@ -499,7 +499,7 @@ const StyledAccordion = styled(Accordion)`
|
|
|
499
499
|
background: ${theme.palette.figma.background.level1.white};
|
|
500
500
|
}
|
|
501
501
|
|
|
502
|
-
&.${rootClassName$
|
|
502
|
+
&.${rootClassName$1j} .${summaryClassName} {
|
|
503
503
|
align-items: center;
|
|
504
504
|
background: ${theme.palette.figma.background.level1.white};
|
|
505
505
|
color: ${theme.palette.figma.typography.black};
|
|
@@ -544,7 +544,7 @@ const DotAccordion = ({
|
|
|
544
544
|
ariaLabel,
|
|
545
545
|
children,
|
|
546
546
|
className,
|
|
547
|
-
'data-pendoid': dataPendoId = rootClassName$
|
|
547
|
+
'data-pendoid': dataPendoId = rootClassName$1j,
|
|
548
548
|
'data-testid': dataTestId = 'dot-accordion',
|
|
549
549
|
disabled = false,
|
|
550
550
|
expanded,
|
|
@@ -555,7 +555,7 @@ const DotAccordion = ({
|
|
|
555
555
|
summary,
|
|
556
556
|
noWrap = true
|
|
557
557
|
}) => {
|
|
558
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
558
|
+
const rootClasses = useStylesWithRootClass(rootClassName$1j, className);
|
|
559
559
|
const [elevation, setElevation] = useState();
|
|
560
560
|
useEffect(() => {
|
|
561
561
|
if (onChange && expanded === undefined) {
|
|
@@ -606,15 +606,15 @@ const DotAccordion = ({
|
|
|
606
606
|
});
|
|
607
607
|
};
|
|
608
608
|
|
|
609
|
-
const rootClassName$
|
|
609
|
+
const rootClassName$1i = 'dot-action-toolbar';
|
|
610
610
|
const StyledToolbar = styled(Toolbar)`
|
|
611
611
|
${({
|
|
612
612
|
theme
|
|
613
613
|
}) => css`
|
|
614
|
-
&.${rootClassName$
|
|
614
|
+
&.${rootClassName$1i} {
|
|
615
615
|
border-bottom: 1px solid ${theme.palette.figma.border.default};
|
|
616
616
|
|
|
617
|
-
.${rootClassName$
|
|
617
|
+
.${rootClassName$1l} .MuiInputBase-root {
|
|
618
618
|
margin-bottom: 0;
|
|
619
619
|
}
|
|
620
620
|
}
|
|
@@ -628,7 +628,7 @@ const DotActionToolbar = ({
|
|
|
628
628
|
'data-testid': dataTestId,
|
|
629
629
|
variant = 'dense'
|
|
630
630
|
}) => {
|
|
631
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
631
|
+
const rootClasses = useStylesWithRootClass(rootClassName$1i, className);
|
|
632
632
|
return jsx(StyledToolbar, {
|
|
633
633
|
"aria-label": ariaLabel,
|
|
634
634
|
className: rootClasses,
|
|
@@ -1698,12 +1698,12 @@ const renderNodeOrTypography = (content, typographyVariant = 'body1') => {
|
|
|
1698
1698
|
const checkIfArrowUpPressed = event => event.key === 'ArrowUp';
|
|
1699
1699
|
const checkIfArrowDownPressed = event => event.key === 'ArrowDown';
|
|
1700
1700
|
|
|
1701
|
-
const rootClassName$
|
|
1701
|
+
const rootClassName$1h = 'dot-alert-banner';
|
|
1702
1702
|
const StyledAlertBanner = styled(Alert)`
|
|
1703
1703
|
${({
|
|
1704
1704
|
theme
|
|
1705
1705
|
}) => css`
|
|
1706
|
-
&.${rootClassName$
|
|
1706
|
+
&.${rootClassName$1h} {
|
|
1707
1707
|
align-items: center;
|
|
1708
1708
|
box-sizing: border-box;
|
|
1709
1709
|
min-height: 48px;
|
|
@@ -1738,7 +1738,7 @@ const DotAlertBanner = ({
|
|
|
1738
1738
|
ariaLabel,
|
|
1739
1739
|
children,
|
|
1740
1740
|
className,
|
|
1741
|
-
'data-pendoid': dataPendoId = rootClassName$
|
|
1741
|
+
'data-pendoid': dataPendoId = rootClassName$1h,
|
|
1742
1742
|
'data-testid': dataTestId,
|
|
1743
1743
|
onClose,
|
|
1744
1744
|
roundedCorners = true,
|
|
@@ -1746,7 +1746,7 @@ const DotAlertBanner = ({
|
|
|
1746
1746
|
textVariant = 'body1',
|
|
1747
1747
|
width
|
|
1748
1748
|
}) => {
|
|
1749
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
1749
|
+
const rootClasses = useStylesWithRootClass(rootClassName$1h, severity, className);
|
|
1750
1750
|
/* For simple string use default component, for everything else use 'div' */
|
|
1751
1751
|
const typographyComponent = isString$2(children) ? undefined : 'div';
|
|
1752
1752
|
return jsx(StyledAlertBanner, {
|
|
@@ -2424,7 +2424,7 @@ const useDotCoreApiContext = () => {
|
|
|
2424
2424
|
return useContext(DotCoreApiContext);
|
|
2425
2425
|
};
|
|
2426
2426
|
|
|
2427
|
-
const rootClassName$
|
|
2427
|
+
const rootClassName$1g = 'dot-avatar';
|
|
2428
2428
|
const avatarSpacing = {
|
|
2429
2429
|
small: 3,
|
|
2430
2430
|
medium: 5,
|
|
@@ -2434,7 +2434,7 @@ const StyledAvatar = styled(Avatar)`
|
|
|
2434
2434
|
${({
|
|
2435
2435
|
theme
|
|
2436
2436
|
}) => css`
|
|
2437
|
-
&.${rootClassName$
|
|
2437
|
+
&.${rootClassName$1g} {
|
|
2438
2438
|
display: inline-flex;
|
|
2439
2439
|
background-color: ${({
|
|
2440
2440
|
color
|
|
@@ -2546,7 +2546,7 @@ const DotAvatar = ({
|
|
|
2546
2546
|
variant = 'circular',
|
|
2547
2547
|
style
|
|
2548
2548
|
}) => {
|
|
2549
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
2549
|
+
const rootClasses = useStylesWithRootClass(rootClassName$1g, className);
|
|
2550
2550
|
const getAvatarColor = () => {
|
|
2551
2551
|
if ((style === null || style === void 0 ? void 0 : style.color) !== undefined) return 'inherit';
|
|
2552
2552
|
if (color) return color;
|
|
@@ -2585,12 +2585,12 @@ const DotAvatar = ({
|
|
|
2585
2585
|
});
|
|
2586
2586
|
};
|
|
2587
2587
|
|
|
2588
|
-
const rootClassName$
|
|
2588
|
+
const rootClassName$1f = 'dot-button';
|
|
2589
2589
|
const StyledButton = styled(Button)`
|
|
2590
2590
|
${({
|
|
2591
2591
|
theme
|
|
2592
2592
|
}) => css`
|
|
2593
|
-
&.${rootClassName$
|
|
2593
|
+
&.${rootClassName$1f} {
|
|
2594
2594
|
background-color: ${theme.palette.figma.primary.normal};
|
|
2595
2595
|
margin: ${theme.spacing(0.5)};
|
|
2596
2596
|
padding: ${theme.spacing(0.75, 2)};
|
|
@@ -2674,7 +2674,7 @@ const DotButton = forwardRef(({
|
|
|
2674
2674
|
autoFocus = false,
|
|
2675
2675
|
children,
|
|
2676
2676
|
className,
|
|
2677
|
-
'data-pendoid': dataPendoId = rootClassName$
|
|
2677
|
+
'data-pendoid': dataPendoId = rootClassName$1f,
|
|
2678
2678
|
'data-testid': dataTestId,
|
|
2679
2679
|
disabled = false,
|
|
2680
2680
|
disableRipple = false,
|
|
@@ -2690,7 +2690,7 @@ const DotButton = forwardRef(({
|
|
|
2690
2690
|
tooltipPlacement,
|
|
2691
2691
|
type = 'primary'
|
|
2692
2692
|
}, ref) => {
|
|
2693
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
2693
|
+
const rootClasses = useStylesWithRootClass(rootClassName$1f, className);
|
|
2694
2694
|
let color;
|
|
2695
2695
|
let variant;
|
|
2696
2696
|
switch (type) {
|
|
@@ -2714,7 +2714,7 @@ const DotButton = forwardRef(({
|
|
|
2714
2714
|
return jsx(DotTooltip, {
|
|
2715
2715
|
placement: tooltipPlacement,
|
|
2716
2716
|
title: tooltip,
|
|
2717
|
-
"data-testid": `${dataTestId || rootClassName$
|
|
2717
|
+
"data-testid": `${dataTestId || rootClassName$1f}-tooltip`,
|
|
2718
2718
|
children: jsx(StyledButton, {
|
|
2719
2719
|
"aria-label": ariaLabel,
|
|
2720
2720
|
autoFocus: autoFocus,
|
|
@@ -2723,7 +2723,7 @@ const DotButton = forwardRef(({
|
|
|
2723
2723
|
},
|
|
2724
2724
|
color: color,
|
|
2725
2725
|
"data-pendoid": dataPendoId,
|
|
2726
|
-
"data-testid": dataTestId || rootClassName$
|
|
2726
|
+
"data-testid": dataTestId || rootClassName$1f,
|
|
2727
2727
|
disableRipple: disableRipple,
|
|
2728
2728
|
disabled: disabled,
|
|
2729
2729
|
endIcon: endIcon,
|
|
@@ -2742,10 +2742,10 @@ const DotButton = forwardRef(({
|
|
|
2742
2742
|
});
|
|
2743
2743
|
});
|
|
2744
2744
|
|
|
2745
|
-
const rootClassName$
|
|
2745
|
+
const rootClassName$1e = 'dot-link';
|
|
2746
2746
|
const StyledLink = styled(Link)`
|
|
2747
2747
|
${() => css`
|
|
2748
|
-
&.${rootClassName$
|
|
2748
|
+
&.${rootClassName$1e} {
|
|
2749
2749
|
cursor: pointer;
|
|
2750
2750
|
|
|
2751
2751
|
&:hover.MuiLink-underlineHover {
|
|
@@ -2761,7 +2761,7 @@ const DotLink = ({
|
|
|
2761
2761
|
children,
|
|
2762
2762
|
className,
|
|
2763
2763
|
color = 'primary',
|
|
2764
|
-
'data-pendoid': dataPendoId = rootClassName$
|
|
2764
|
+
'data-pendoid': dataPendoId = rootClassName$1e,
|
|
2765
2765
|
'data-testid': dataTestId,
|
|
2766
2766
|
href,
|
|
2767
2767
|
onClick,
|
|
@@ -2774,7 +2774,7 @@ const DotLink = ({
|
|
|
2774
2774
|
underline = 'always',
|
|
2775
2775
|
variant = 'body1'
|
|
2776
2776
|
}) => {
|
|
2777
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
2777
|
+
const rootClasses = useStylesWithRootClass(rootClassName$1e, className);
|
|
2778
2778
|
useEffect(() => {
|
|
2779
2779
|
// Include a console warning if the link is not a string and no ariaLabel is provided
|
|
2780
2780
|
if (!isString$2(children) && !ariaLabel) {
|
|
@@ -2825,7 +2825,7 @@ const CreateUUID = () => {
|
|
|
2825
2825
|
});
|
|
2826
2826
|
};
|
|
2827
2827
|
|
|
2828
|
-
const rootClassName$
|
|
2828
|
+
const rootClassName$1d = 'dot-list';
|
|
2829
2829
|
const listItemRootClass = 'dot-list-item';
|
|
2830
2830
|
const nestedListClassName = 'dot-nested-list';
|
|
2831
2831
|
const nestedDrawerClassName = 'dot-nested-drawer';
|
|
@@ -2833,7 +2833,7 @@ const StyledList = styled(List)`
|
|
|
2833
2833
|
${({
|
|
2834
2834
|
theme
|
|
2835
2835
|
}) => css`
|
|
2836
|
-
&.${rootClassName$
|
|
2836
|
+
&.${rootClassName$1d} {
|
|
2837
2837
|
background: ${theme.palette.figma.background.level0.componentsBackground};
|
|
2838
2838
|
|
|
2839
2839
|
.dot-icon {
|
|
@@ -2926,12 +2926,12 @@ const DotListDivider = ({
|
|
|
2926
2926
|
});
|
|
2927
2927
|
};
|
|
2928
2928
|
|
|
2929
|
-
const rootClassName$
|
|
2929
|
+
const rootClassName$1c = 'dot-progress';
|
|
2930
2930
|
const StyledProgress = styled.div`
|
|
2931
2931
|
${({
|
|
2932
2932
|
theme
|
|
2933
2933
|
}) => css`
|
|
2934
|
-
&.${rootClassName$
|
|
2934
|
+
&.${rootClassName$1c} {
|
|
2935
2935
|
line-height: 0;
|
|
2936
2936
|
|
|
2937
2937
|
.dot-progress-with-label-wrapper {
|
|
@@ -2982,7 +2982,7 @@ const DotProgress = ({
|
|
|
2982
2982
|
value,
|
|
2983
2983
|
variant = 'indeterminate'
|
|
2984
2984
|
}) => {
|
|
2985
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
2985
|
+
const rootClasses = useStylesWithRootClass(rootClassName$1c, className);
|
|
2986
2986
|
useEffect(() => {
|
|
2987
2987
|
if (!ariaLabel) {
|
|
2988
2988
|
console.warn('a11y: DotProgress must have an ariaLabel to describe the progress component');
|
|
@@ -3048,13 +3048,13 @@ var variables = /*#__PURE__*/Object.freeze({
|
|
|
3048
3048
|
levelTop: levelTop
|
|
3049
3049
|
});
|
|
3050
3050
|
|
|
3051
|
-
const rootClassName$
|
|
3051
|
+
const rootClassName$1b = 'dot-popper';
|
|
3052
3052
|
const arrowClassName = 'MuiPopper-arrow';
|
|
3053
3053
|
const StyledPopper$1 = styled(Popper)`
|
|
3054
3054
|
${({
|
|
3055
3055
|
theme
|
|
3056
3056
|
}) => css`
|
|
3057
|
-
&.${rootClassName$
|
|
3057
|
+
&.${rootClassName$1b} {
|
|
3058
3058
|
font-family: ${theme.typography.fontFamily};
|
|
3059
3059
|
font-size: ${theme.typography.body1.fontSize}px;
|
|
3060
3060
|
|
|
@@ -3113,7 +3113,7 @@ const StyledPopper$1 = styled(Popper)`
|
|
|
3113
3113
|
}
|
|
3114
3114
|
}
|
|
3115
3115
|
|
|
3116
|
-
&.${rootClassName$
|
|
3116
|
+
&.${rootClassName$1b}, &.${rootClassName$1b} > .dot-popper-paper {
|
|
3117
3117
|
background-color: ${theme.palette.figma.background.level1.white};
|
|
3118
3118
|
}
|
|
3119
3119
|
`}
|
|
@@ -3143,12 +3143,12 @@ const StyledArrow = styled('span')`
|
|
|
3143
3143
|
`;
|
|
3144
3144
|
|
|
3145
3145
|
const flyoutMenuClassName = 'dot-flyout-menu';
|
|
3146
|
-
const rootClassName$
|
|
3146
|
+
const rootClassName$1a = 'dot-menu';
|
|
3147
3147
|
const StyledPopper = styled(Popper)`
|
|
3148
3148
|
${({
|
|
3149
3149
|
theme
|
|
3150
3150
|
}) => css`
|
|
3151
|
-
&.${rootClassName$
|
|
3151
|
+
&.${rootClassName$1b} {
|
|
3152
3152
|
font-family: ${theme.typography.fontFamily};
|
|
3153
3153
|
font-size: ${theme.typography.body1.fontSize}px;
|
|
3154
3154
|
|
|
@@ -3158,7 +3158,7 @@ const StyledPopper = styled(Popper)`
|
|
|
3158
3158
|
}) => $zIndex === undefined ? `z-index: ${levelSecond};` : `z-index: ${$zIndex};`}
|
|
3159
3159
|
}
|
|
3160
3160
|
}
|
|
3161
|
-
&.${rootClassName$
|
|
3161
|
+
&.${rootClassName$1a}, &.${rootClassName$1b} {
|
|
3162
3162
|
.MuiPaper-root:not(:empty) {
|
|
3163
3163
|
border: 1px solid ${theme.palette.layer.n100};
|
|
3164
3164
|
}
|
|
@@ -3238,14 +3238,14 @@ const MENU_ITEM_HEIGHT_NORMAL = 48;
|
|
|
3238
3238
|
const MENU_ITEM_HEIGHT_DENSE = 36;
|
|
3239
3239
|
const DEFAULT_MAX_VISIBLE_ITEMS = 7;
|
|
3240
3240
|
|
|
3241
|
-
const rootClassName$
|
|
3241
|
+
const rootClassName$19 = 'dot-ul';
|
|
3242
3242
|
const listItemClassName$1 = 'dot-li';
|
|
3243
3243
|
const listItemWithSubmenuClassName = 'dot-li-with-submenu';
|
|
3244
3244
|
const StyledMenuList = styled(MenuList)`
|
|
3245
3245
|
${({
|
|
3246
3246
|
theme
|
|
3247
3247
|
}) => css`
|
|
3248
|
-
&.${rootClassName$
|
|
3248
|
+
&.${rootClassName$19} {
|
|
3249
3249
|
background: ${theme.palette.figma.background.level1.white};
|
|
3250
3250
|
|
|
3251
3251
|
.dot-li {
|
|
@@ -3341,7 +3341,7 @@ const DotMenuList = forwardRef(({
|
|
|
3341
3341
|
onSubMenuCreate,
|
|
3342
3342
|
selectedKey
|
|
3343
3343
|
}, ref) => {
|
|
3344
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
3344
|
+
const rootClasses = useStylesWithRootClass(rootClassName$19, className);
|
|
3345
3345
|
const [activeSubmenu, setActiveSubmenu] = useState(null);
|
|
3346
3346
|
const [subItemAnchorEl, setSubItemAnchorEl] = useState(null);
|
|
3347
3347
|
const openSubmenu = (target, itemKey) => {
|
|
@@ -3452,7 +3452,7 @@ const DotMenu = ({
|
|
|
3452
3452
|
open = false,
|
|
3453
3453
|
selectedKey
|
|
3454
3454
|
}) => {
|
|
3455
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
3455
|
+
const rootClasses = useStylesWithRootClass(rootClassName$1a, className, loading ? 'loading' : '');
|
|
3456
3456
|
const isSubmenu = checkIfSubmenu(anchorEl);
|
|
3457
3457
|
const hasSubItems = checkForSubItems(menuItems);
|
|
3458
3458
|
// Timeout object is customizable when Menu component is either submenu
|
|
@@ -3540,12 +3540,12 @@ const DotMenu = ({
|
|
|
3540
3540
|
});
|
|
3541
3541
|
};
|
|
3542
3542
|
|
|
3543
|
-
const rootClassName$
|
|
3543
|
+
const rootClassName$18 = 'dot-drawer';
|
|
3544
3544
|
const StyledDrawer = styled(Drawer)`
|
|
3545
3545
|
${({
|
|
3546
3546
|
theme
|
|
3547
3547
|
}) => css`
|
|
3548
|
-
&.${rootClassName$
|
|
3548
|
+
&.${rootClassName$18} .MuiBackdrop-root {
|
|
3549
3549
|
background-color: ${theme.palette.figma.overlay.default};
|
|
3550
3550
|
}
|
|
3551
3551
|
|
|
@@ -3564,12 +3564,12 @@ const StyledDrawer = styled(Drawer)`
|
|
|
3564
3564
|
`}
|
|
3565
3565
|
`;
|
|
3566
3566
|
|
|
3567
|
-
const rootClassName$
|
|
3567
|
+
const rootClassName$17 = 'dot-drawer-header';
|
|
3568
3568
|
const StyleDrawerHeader = styled.div`
|
|
3569
3569
|
${({
|
|
3570
3570
|
theme
|
|
3571
3571
|
}) => css`
|
|
3572
|
-
&.${rootClassName$
|
|
3572
|
+
&.${rootClassName$17} {
|
|
3573
3573
|
padding: ${theme.spacing(0, 0, 2)};
|
|
3574
3574
|
display: flex;
|
|
3575
3575
|
align-items: center;
|
|
@@ -3580,13 +3580,13 @@ const StyleDrawerHeader = styled.div`
|
|
|
3580
3580
|
`}
|
|
3581
3581
|
`;
|
|
3582
3582
|
|
|
3583
|
-
const rootClassName$
|
|
3583
|
+
const rootClassName$16 = 'dot-icon-btn';
|
|
3584
3584
|
const StyledIconButton = styled(IconButton)`
|
|
3585
3585
|
${({
|
|
3586
3586
|
theme,
|
|
3587
3587
|
color
|
|
3588
3588
|
}) => css`
|
|
3589
|
-
&.${rootClassName$
|
|
3589
|
+
&.${rootClassName$16} {
|
|
3590
3590
|
${color === 'inherit' ? css`
|
|
3591
3591
|
color: inherit;
|
|
3592
3592
|
` : ''}
|
|
@@ -3645,7 +3645,7 @@ const DotIconButton = ({
|
|
|
3645
3645
|
ariaRole = 'button',
|
|
3646
3646
|
className,
|
|
3647
3647
|
color = 'inherit',
|
|
3648
|
-
'data-pendoid': dataPendoId = rootClassName$
|
|
3648
|
+
'data-pendoid': dataPendoId = rootClassName$16,
|
|
3649
3649
|
'data-testid': dataTestId,
|
|
3650
3650
|
disableRipple = false,
|
|
3651
3651
|
disabled = false,
|
|
@@ -3658,7 +3658,7 @@ const DotIconButton = ({
|
|
|
3658
3658
|
tooltipPlacement
|
|
3659
3659
|
}) => {
|
|
3660
3660
|
const rippleClassName = disableRipple ? 'ripple-disabled' : '';
|
|
3661
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
3661
|
+
const rootClasses = useStylesWithRootClass(rootClassName$16, rippleClassName, `shape-${shape}`, className);
|
|
3662
3662
|
return jsx(DotTooltip, {
|
|
3663
3663
|
"data-testid": "icon-button-tooltip",
|
|
3664
3664
|
placement: tooltipPlacement,
|
|
@@ -3693,7 +3693,7 @@ const DotDrawerHeader = ({
|
|
|
3693
3693
|
onClose,
|
|
3694
3694
|
variant
|
|
3695
3695
|
}) => {
|
|
3696
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
3696
|
+
const rootClasses = useStylesWithRootClass(rootClassName$17, className);
|
|
3697
3697
|
return jsxs(StyleDrawerHeader, {
|
|
3698
3698
|
"aria-label": ariaLabel,
|
|
3699
3699
|
"aria-level": 2,
|
|
@@ -3710,10 +3710,10 @@ const DotDrawerHeader = ({
|
|
|
3710
3710
|
});
|
|
3711
3711
|
};
|
|
3712
3712
|
|
|
3713
|
-
const rootClassName$
|
|
3713
|
+
const rootClassName$15 = 'dot-drawer-body';
|
|
3714
3714
|
const StyleDrawerBody = styled.div`
|
|
3715
3715
|
${() => css`
|
|
3716
|
-
&.${rootClassName$
|
|
3716
|
+
&.${rootClassName$15} {
|
|
3717
3717
|
display: flex;
|
|
3718
3718
|
.dot-drawer-close-button {
|
|
3719
3719
|
align-self: self-start;
|
|
@@ -3734,7 +3734,7 @@ const DotDrawerBody = ({
|
|
|
3734
3734
|
onClose,
|
|
3735
3735
|
variant
|
|
3736
3736
|
}) => {
|
|
3737
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
3737
|
+
const rootClasses = useStylesWithRootClass(rootClassName$15, className);
|
|
3738
3738
|
return jsxs(StyleDrawerBody, {
|
|
3739
3739
|
"aria-label": ariaLabel,
|
|
3740
3740
|
className: rootClasses,
|
|
@@ -3749,12 +3749,12 @@ const DotDrawerBody = ({
|
|
|
3749
3749
|
});
|
|
3750
3750
|
};
|
|
3751
3751
|
|
|
3752
|
-
const rootClassName$
|
|
3752
|
+
const rootClassName$14 = 'dot-drawer-footer';
|
|
3753
3753
|
const StyleDrawerFooter = styled.div`
|
|
3754
3754
|
${({
|
|
3755
3755
|
theme
|
|
3756
3756
|
}) => css`
|
|
3757
|
-
&.${rootClassName$
|
|
3757
|
+
&.${rootClassName$14} {
|
|
3758
3758
|
padding: ${theme.spacing(2, 0, 0)};
|
|
3759
3759
|
}
|
|
3760
3760
|
`}
|
|
@@ -3767,7 +3767,7 @@ const DotDrawerFooter = ({
|
|
|
3767
3767
|
className,
|
|
3768
3768
|
'data-testid': dataTestId
|
|
3769
3769
|
}) => {
|
|
3770
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
3770
|
+
const rootClasses = useStylesWithRootClass(rootClassName$14, className);
|
|
3771
3771
|
return jsx(StyleDrawerFooter, {
|
|
3772
3772
|
"aria-label": ariaLabel,
|
|
3773
3773
|
className: rootClasses,
|
|
@@ -3783,7 +3783,7 @@ const DotDrawer = ({
|
|
|
3783
3783
|
ariaRole = 'dialog',
|
|
3784
3784
|
className,
|
|
3785
3785
|
children,
|
|
3786
|
-
'data-pendoid': dataPendoId = rootClassName$
|
|
3786
|
+
'data-pendoid': dataPendoId = rootClassName$18,
|
|
3787
3787
|
'data-testid': dataTestId,
|
|
3788
3788
|
drawerBodyProps,
|
|
3789
3789
|
drawerFooterProps,
|
|
@@ -3806,7 +3806,7 @@ const DotDrawer = ({
|
|
|
3806
3806
|
onClose(event);
|
|
3807
3807
|
}
|
|
3808
3808
|
};
|
|
3809
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
3809
|
+
const rootClasses = useStylesWithRootClass(rootClassName$18, className);
|
|
3810
3810
|
const backdropEnabled = variant === 'temporary' && !(ModalProps === null || ModalProps === void 0 ? void 0 : ModalProps.hideBackdrop);
|
|
3811
3811
|
const headerExists = !!drawerHeaderProps;
|
|
3812
3812
|
const bodyPendoId = drawerBodyProps ? drawerBodyProps['data-pendoid'] : 'drawer-body';
|
|
@@ -4264,7 +4264,7 @@ const DotList = ({
|
|
|
4264
4264
|
nestedListType = 'expandable',
|
|
4265
4265
|
width = 240
|
|
4266
4266
|
}) => {
|
|
4267
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
4267
|
+
const rootClasses = useStylesWithRootClass(rootClassName$1d, className);
|
|
4268
4268
|
const listWidth = typeof width === 'number' ? `${width}px` : width;
|
|
4269
4269
|
const listRef = useRef();
|
|
4270
4270
|
const disableCloseOnClickAway = !nestedListCloseOnClickAway && nestedListType === 'expandable';
|
|
@@ -4362,12 +4362,12 @@ const DotList = ({
|
|
|
4362
4362
|
});
|
|
4363
4363
|
};
|
|
4364
4364
|
|
|
4365
|
-
const rootClassName$
|
|
4365
|
+
const rootClassName$13 = 'dot-copy-button';
|
|
4366
4366
|
const StyledCopyButton = styled.span`
|
|
4367
4367
|
${({
|
|
4368
4368
|
theme
|
|
4369
4369
|
}) => css`
|
|
4370
|
-
&.${rootClassName$
|
|
4370
|
+
&.${rootClassName$13} .copied-to-clipboard {
|
|
4371
4371
|
color: ${theme.palette.figma.success.normal};
|
|
4372
4372
|
|
|
4373
4373
|
&.MuiIcon-fontSizeSmall.button-size-small {
|
|
@@ -4393,7 +4393,7 @@ const DotCopyButton = ({
|
|
|
4393
4393
|
color = 'inherit',
|
|
4394
4394
|
copiedTooltip = 'Copied!',
|
|
4395
4395
|
copyTooltip = 'Copy to clipboard',
|
|
4396
|
-
'data-pendoid': dataPendoId = rootClassName$
|
|
4396
|
+
'data-pendoid': dataPendoId = rootClassName$13,
|
|
4397
4397
|
'data-testid': dataTestId = 'dot-copy-button',
|
|
4398
4398
|
disabled = false,
|
|
4399
4399
|
disableRipple = false,
|
|
@@ -4441,7 +4441,7 @@ const DotCopyButton = ({
|
|
|
4441
4441
|
return false;
|
|
4442
4442
|
}, [value, showCopiedIcon, disabled, onClick]);
|
|
4443
4443
|
return jsxs(StyledCopyButton, {
|
|
4444
|
-
className: rootClassName$
|
|
4444
|
+
className: rootClassName$13,
|
|
4445
4445
|
"data-testid": dataTestId,
|
|
4446
4446
|
children: [!timedShowCopiedIcon && jsx(DotIconButton, {
|
|
4447
4447
|
ariaLabel: ariaLabel,
|
|
@@ -4545,7 +4545,7 @@ const DotInputText = ({
|
|
|
4545
4545
|
autoFocus,
|
|
4546
4546
|
className,
|
|
4547
4547
|
defaultValue,
|
|
4548
|
-
'data-pendoid': dataPendoId = rootClassName$
|
|
4548
|
+
'data-pendoid': dataPendoId = rootClassName$1l,
|
|
4549
4549
|
'data-testid': dataTestId,
|
|
4550
4550
|
disabled = false,
|
|
4551
4551
|
error = false,
|
|
@@ -4593,7 +4593,7 @@ const DotInputText = ({
|
|
|
4593
4593
|
const internalInputRef = useRef(null);
|
|
4594
4594
|
const textFieldInputRef = inputRef || internalInputRef;
|
|
4595
4595
|
const [inputTextState, setInputTextState] = useState(getInitialState(value));
|
|
4596
|
-
const rootStyles = useStylesWithRootClass(rootClassName$
|
|
4596
|
+
const rootStyles = useStylesWithRootClass(rootClassName$1l, hasError, hasWarning, hasSuccess, readOnly && readOnlyClassName$1);
|
|
4597
4597
|
useEffect(() => {
|
|
4598
4598
|
if (value !== inputTextState.inputValue) {
|
|
4599
4599
|
setInputTextState(getInitialState(value, defaultValue));
|
|
@@ -4735,10 +4735,10 @@ const DotInputText = ({
|
|
|
4735
4735
|
});
|
|
4736
4736
|
};
|
|
4737
4737
|
|
|
4738
|
-
const rootClassName$
|
|
4738
|
+
const rootClassName$12 = 'dot-search-input';
|
|
4739
4739
|
const StyledSearchInput = styled.span`
|
|
4740
4740
|
${() => css`
|
|
4741
|
-
&.${rootClassName$
|
|
4741
|
+
&.${rootClassName$12} {
|
|
4742
4742
|
}
|
|
4743
4743
|
`}
|
|
4744
4744
|
`;
|
|
@@ -4755,7 +4755,7 @@ function SearchInput({
|
|
|
4755
4755
|
tooltip = null,
|
|
4756
4756
|
value
|
|
4757
4757
|
}) {
|
|
4758
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
4758
|
+
const rootClasses = useStylesWithRootClass(rootClassName$12, className);
|
|
4759
4759
|
const [searchText, setSearchText] = useState(value);
|
|
4760
4760
|
let previousSearchText = '';
|
|
4761
4761
|
const handleChange = useCallback(event => {
|
|
@@ -5011,12 +5011,12 @@ const recentAppInstancesSetter = (latestInstance, maxRecentItems
|
|
|
5011
5011
|
};
|
|
5012
5012
|
};
|
|
5013
5013
|
|
|
5014
|
-
const rootClassName$
|
|
5014
|
+
const rootClassName$11 = 'dot-app-switcher';
|
|
5015
5015
|
const StyledAppSwitcher = styled(DotDrawer)`
|
|
5016
5016
|
${({
|
|
5017
5017
|
theme
|
|
5018
5018
|
}) => css`
|
|
5019
|
-
&.${rootClassName$
|
|
5019
|
+
&.${rootClassName$11} {
|
|
5020
5020
|
.dot-drawer-paper {
|
|
5021
5021
|
padding: 0;
|
|
5022
5022
|
width: 382px;
|
|
@@ -5126,7 +5126,7 @@ const DotAppSwitcherView = ({
|
|
|
5126
5126
|
if (dotCoreApiContext !== null) {
|
|
5127
5127
|
setSelectedAppType = dotCoreApiContext.setSelectedAppSwitcherAppType;
|
|
5128
5128
|
}
|
|
5129
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
5129
|
+
const rootClasses = useStylesWithRootClass(rootClassName$11, className);
|
|
5130
5130
|
const [appTypeMap, setAppTypeMap] = useState();
|
|
5131
5131
|
const [appTypeLabels, setAppTypeLabels] = useState();
|
|
5132
5132
|
const [appTypeMenuItems, setAppTypeMenuItems] = useState();
|
|
@@ -5504,12 +5504,12 @@ var SvgLogoDigitalAiWhite = function SvgLogoDigitalAiWhite(_ref, ref) {
|
|
|
5504
5504
|
};
|
|
5505
5505
|
var ForwardRef = /*#__PURE__*/forwardRef(SvgLogoDigitalAiWhite);
|
|
5506
5506
|
|
|
5507
|
-
const rootClassName
|
|
5507
|
+
const rootClassName$10 = 'dot-sidebar';
|
|
5508
5508
|
const StyledSidebar = styled.aside`
|
|
5509
5509
|
${({
|
|
5510
5510
|
theme
|
|
5511
5511
|
}) => css`
|
|
5512
|
-
&.${rootClassName
|
|
5512
|
+
&.${rootClassName$10} {
|
|
5513
5513
|
align-items: stretch;
|
|
5514
5514
|
background: ${theme.palette.figma.background.level1.white};
|
|
5515
5515
|
border-width: 0 1px;
|
|
@@ -5803,10 +5803,10 @@ const StyledSidebar = styled.aside`
|
|
|
5803
5803
|
`}
|
|
5804
5804
|
`;
|
|
5805
5805
|
|
|
5806
|
-
const rootClassName
|
|
5806
|
+
const rootClassName$$ = 'dot-truncate-with-tooltip';
|
|
5807
5807
|
const StyledTruncateWithTooltip = styled(Tooltip)`
|
|
5808
5808
|
${() => css`
|
|
5809
|
-
&.${rootClassName
|
|
5809
|
+
&.${rootClassName$$} {
|
|
5810
5810
|
display: block;
|
|
5811
5811
|
overflow: hidden;
|
|
5812
5812
|
white-space: nowrap;
|
|
@@ -5837,7 +5837,7 @@ const DotTruncateWithTooltip = ({
|
|
|
5837
5837
|
label,
|
|
5838
5838
|
width
|
|
5839
5839
|
}) => {
|
|
5840
|
-
const rootClasses = useStylesWithRootClass(rootClassName
|
|
5840
|
+
const rootClasses = useStylesWithRootClass(rootClassName$$, className, charactersLimit ? 'dot-characters-limit' : '');
|
|
5841
5841
|
return jsx(StyledTruncateWithTooltip, {
|
|
5842
5842
|
"aria-label": ariaLabel,
|
|
5843
5843
|
arrow: arrow,
|
|
@@ -5949,7 +5949,7 @@ const DotSidebar = ({
|
|
|
5949
5949
|
};
|
|
5950
5950
|
useKeyPress(collapsable && collapseKey, toggleNavCollapseState, [isOpen, collapsable]);
|
|
5951
5951
|
const sidebarClasses = useStylesWithRootClass('side-nav', openClass);
|
|
5952
|
-
const rootClasses = useStylesWithRootClass(rootClassName
|
|
5952
|
+
const rootClasses = useStylesWithRootClass(rootClassName$10, openClass, className);
|
|
5953
5953
|
return jsxs(StyledSidebar, {
|
|
5954
5954
|
"aria-label": ariaLabel,
|
|
5955
5955
|
className: rootClasses,
|
|
@@ -6018,12 +6018,12 @@ const DotSidebar = ({
|
|
|
6018
6018
|
});
|
|
6019
6019
|
};
|
|
6020
6020
|
|
|
6021
|
-
const rootClassName$
|
|
6021
|
+
const rootClassName$_ = 'dot-badge';
|
|
6022
6022
|
const StyledBadge = styled(Badge)`
|
|
6023
6023
|
${({
|
|
6024
6024
|
theme
|
|
6025
6025
|
}) => css`
|
|
6026
|
-
&.${rootClassName$
|
|
6026
|
+
&.${rootClassName$_} {
|
|
6027
6027
|
color: ${theme.palette.figma.typography.black};
|
|
6028
6028
|
word-break: normal;
|
|
6029
6029
|
|
|
@@ -6058,7 +6058,7 @@ const DotBadge = ({
|
|
|
6058
6058
|
overlap,
|
|
6059
6059
|
variant = 'dot'
|
|
6060
6060
|
}) => {
|
|
6061
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
6061
|
+
const rootClasses = useStylesWithRootClass(rootClassName$_, className);
|
|
6062
6062
|
return jsx(StyledBadge, {
|
|
6063
6063
|
"$badgeColor": badgeColor,
|
|
6064
6064
|
anchorOrigin: {
|
|
@@ -6080,7 +6080,7 @@ const DotBadge = ({
|
|
|
6080
6080
|
});
|
|
6081
6081
|
};
|
|
6082
6082
|
|
|
6083
|
-
const rootClassName$
|
|
6083
|
+
const rootClassName$Z = 'dot-app-toolbar';
|
|
6084
6084
|
const denseClassName = 'dense';
|
|
6085
6085
|
const StyledMainMenu = styled(DotDrawer)`
|
|
6086
6086
|
${({
|
|
@@ -6120,7 +6120,7 @@ const StyledAppToolbar = styled.header`
|
|
|
6120
6120
|
${({
|
|
6121
6121
|
theme
|
|
6122
6122
|
}) => css`
|
|
6123
|
-
&.${rootClassName$
|
|
6123
|
+
&.${rootClassName$Z} {
|
|
6124
6124
|
align-items: center;
|
|
6125
6125
|
background: ${theme.palette.figma.appToolbar.background};
|
|
6126
6126
|
border-bottom: 4px solid ${theme.palette.figma.border.default};
|
|
@@ -6242,7 +6242,7 @@ const DotAppToolbar = ({
|
|
|
6242
6242
|
const displayAppLogo = appLogo || appLogoSmall;
|
|
6243
6243
|
const mainMenuRef = useRef(null);
|
|
6244
6244
|
const denseClass = dense ? denseClassName : '';
|
|
6245
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
6245
|
+
const rootClasses = useStylesWithRootClass(rootClassName$Z, className, denseClass, showMainMenu ? '' : 'without-menu-icon');
|
|
6246
6246
|
const mainMenuClasses = useStylesWithRootClass('dot-main-menu', denseClass, menuOpen ? 'open' : '');
|
|
6247
6247
|
const targetBreakpoint = useMediaQuery(theme => theme.breakpoints.up('lg'));
|
|
6248
6248
|
useEffect(() => {
|
|
@@ -6372,14 +6372,14 @@ const DotAppToolbar = ({
|
|
|
6372
6372
|
}) : appToolbar;
|
|
6373
6373
|
};
|
|
6374
6374
|
|
|
6375
|
-
const rootClassName$
|
|
6375
|
+
const rootClassName$Y = 'dot-autocomplete';
|
|
6376
6376
|
const inputRootClassName = 'dot-input-root';
|
|
6377
6377
|
const inputMediumClassName = 'dot-input-medium';
|
|
6378
6378
|
const StyledAutocomplete = styled(Autocomplete)`
|
|
6379
6379
|
${({
|
|
6380
6380
|
theme
|
|
6381
6381
|
}) => css`
|
|
6382
|
-
&.${rootClassName$
|
|
6382
|
+
&.${rootClassName$Y} {
|
|
6383
6383
|
&.${inputMediumClassName} .dot-text-field .${inputRootClassName} {
|
|
6384
6384
|
height: 56px;
|
|
6385
6385
|
padding-left: ${theme.spacing(2)};
|
|
@@ -6416,12 +6416,12 @@ const StyledAutocomplete = styled(Autocomplete)`
|
|
|
6416
6416
|
`}
|
|
6417
6417
|
`;
|
|
6418
6418
|
|
|
6419
|
-
const rootClassName$
|
|
6419
|
+
const rootClassName$X = 'dot-chip';
|
|
6420
6420
|
const StyledChip = styled(Chip)`
|
|
6421
6421
|
${({
|
|
6422
6422
|
theme
|
|
6423
6423
|
}) => css`
|
|
6424
|
-
&.${rootClassName$
|
|
6424
|
+
&.${rootClassName$X} {
|
|
6425
6425
|
background: ${theme.palette.figma.neutral.normal};
|
|
6426
6426
|
border-color: ${theme.palette.figma.border.darker};
|
|
6427
6427
|
color: ${theme.palette.figma.typography.black};
|
|
@@ -6527,7 +6527,7 @@ const DotChip = ({
|
|
|
6527
6527
|
charactersLimit = DEFAULT_CHARACTERS_LIMIT,
|
|
6528
6528
|
children,
|
|
6529
6529
|
className,
|
|
6530
|
-
'data-pendoid': dataPendoId = rootClassName$
|
|
6530
|
+
'data-pendoid': dataPendoId = rootClassName$X,
|
|
6531
6531
|
'data-testid': dataTestId,
|
|
6532
6532
|
disabled = false,
|
|
6533
6533
|
error = false,
|
|
@@ -6540,7 +6540,7 @@ const DotChip = ({
|
|
|
6540
6540
|
tabIndex
|
|
6541
6541
|
}) => {
|
|
6542
6542
|
const errorClass = error ? 'Mui-error' : '';
|
|
6543
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
6543
|
+
const rootClasses = useStylesWithRootClass(rootClassName$X, className, errorClass);
|
|
6544
6544
|
const getChipLabel = () => {
|
|
6545
6545
|
if (charactersLimit <= 0 || children.length < charactersLimit) return children;
|
|
6546
6546
|
const label = `${children.substring(0, charactersLimit)}...`;
|
|
@@ -6640,7 +6640,7 @@ const DotAutoComplete = ({
|
|
|
6640
6640
|
autoFocus,
|
|
6641
6641
|
autoHighlight,
|
|
6642
6642
|
className,
|
|
6643
|
-
'data-pendoid': dataPendoId = rootClassName$
|
|
6643
|
+
'data-pendoid': dataPendoId = rootClassName$Y,
|
|
6644
6644
|
'data-testid': dataTestId,
|
|
6645
6645
|
defaultValue,
|
|
6646
6646
|
dense = true,
|
|
@@ -6696,10 +6696,10 @@ const DotAutoComplete = ({
|
|
|
6696
6696
|
const popperOpen = !readOnly && (open || isOpened);
|
|
6697
6697
|
const preventDuplicateInsertion = actionItem === null || actionItem === void 0 ? void 0 : actionItem.preventDuplicateInsertion;
|
|
6698
6698
|
const textFieldWarningClassName = !error && warning && warningClassName;
|
|
6699
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
6700
|
-
const textFieldRootClasses = useStylesWithRootClass(rootClassName$
|
|
6699
|
+
const rootClasses = useStylesWithRootClass(rootClassName$Y, size === 'medium' && inputMediumClassName, className);
|
|
6700
|
+
const textFieldRootClasses = useStylesWithRootClass(rootClassName$1l, readOnly && readOnlyClassName$1, textFieldWarningClassName);
|
|
6701
6701
|
const inputRootClasses = useStylesWithRootClass(inputRootClassName, !dense && inputMediumClassName);
|
|
6702
|
-
const popperClasses = useStylesWithRootClass(rootClassName$
|
|
6702
|
+
const popperClasses = useStylesWithRootClass(rootClassName$1b, popperClassName);
|
|
6703
6703
|
let highlightedOption = null;
|
|
6704
6704
|
let textFieldInput;
|
|
6705
6705
|
const textFieldRef = element => {
|
|
@@ -6982,10 +6982,10 @@ const DotAutoComplete = ({
|
|
|
6982
6982
|
});
|
|
6983
6983
|
};
|
|
6984
6984
|
|
|
6985
|
-
const rootClassName$
|
|
6985
|
+
const rootClassName$W = 'dot-avatar-group';
|
|
6986
6986
|
const StyledAvatarGroup = styled(AvatarGroup)`
|
|
6987
6987
|
${() => css`
|
|
6988
|
-
&.${rootClassName$
|
|
6988
|
+
&.${rootClassName$W} {
|
|
6989
6989
|
justify-content: flex-end;
|
|
6990
6990
|
|
|
6991
6991
|
.MuiAvatar-root {
|
|
@@ -7004,7 +7004,7 @@ const DotAvatarGroup = ({
|
|
|
7004
7004
|
max = 3,
|
|
7005
7005
|
spacing = 'medium'
|
|
7006
7006
|
}) => {
|
|
7007
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
7007
|
+
const rootClasses = useStylesWithRootClass(rootClassName$W, className);
|
|
7008
7008
|
return jsx(StyledAvatarGroup, {
|
|
7009
7009
|
"aria-label": ariaLabel,
|
|
7010
7010
|
classes: {
|
|
@@ -7019,6 +7019,89 @@ const DotAvatarGroup = ({
|
|
|
7019
7019
|
});
|
|
7020
7020
|
};
|
|
7021
7021
|
|
|
7022
|
+
const rootClassName$V = 'dot-avatar-with-details';
|
|
7023
|
+
const StyledAvatarWithDetails = styled.div`
|
|
7024
|
+
${({
|
|
7025
|
+
theme,
|
|
7026
|
+
$maxSubtitleLines,
|
|
7027
|
+
$maxTitleLines
|
|
7028
|
+
}) => css`
|
|
7029
|
+
&.${rootClassName$V} {
|
|
7030
|
+
gap: ${theme.spacing(2)};
|
|
7031
|
+
display: flex;
|
|
7032
|
+
align-items: center;
|
|
7033
|
+
width: 100%;
|
|
7034
|
+
|
|
7035
|
+
.dot-avatar-with-details-title-and-subtitle {
|
|
7036
|
+
overflow-x: hidden;
|
|
7037
|
+
width: 100%;
|
|
7038
|
+
|
|
7039
|
+
.dot-avatar-with-details-title,
|
|
7040
|
+
.dot-avatar-with-details-subtitle {
|
|
7041
|
+
overflow-wrap: break-word;
|
|
7042
|
+
|
|
7043
|
+
&.max-lines-clamp {
|
|
7044
|
+
display: -webkit-box;
|
|
7045
|
+
-webkit-box-orient: vertical;
|
|
7046
|
+
white-space: normal;
|
|
7047
|
+
overflow: hidden;
|
|
7048
|
+
}
|
|
7049
|
+
}
|
|
7050
|
+
.dot-avatar-with-details-title.max-lines-clamp {
|
|
7051
|
+
-webkit-line-clamp: ${$maxTitleLines};
|
|
7052
|
+
}
|
|
7053
|
+
.dot-avatar-with-details-subtitle.max-lines-clamp {
|
|
7054
|
+
-webkit-line-clamp: ${$maxSubtitleLines};
|
|
7055
|
+
}
|
|
7056
|
+
}
|
|
7057
|
+
}
|
|
7058
|
+
`}
|
|
7059
|
+
`;
|
|
7060
|
+
|
|
7061
|
+
const DotAvatarWithDetails = ({
|
|
7062
|
+
ariaLabel,
|
|
7063
|
+
avatar,
|
|
7064
|
+
className,
|
|
7065
|
+
'data-pendoid': dataPendoId = rootClassName$V,
|
|
7066
|
+
'data-testid': dataTestId,
|
|
7067
|
+
subtitle,
|
|
7068
|
+
title
|
|
7069
|
+
}) => {
|
|
7070
|
+
const rootClasses = useStylesWithRootClass(rootClassName$V, className);
|
|
7071
|
+
const titleClasses = useStylesWithRootClass('dot-avatar-with-details-title', title.maxLines ? 'max-lines-clamp' : '');
|
|
7072
|
+
const subtitleClasses = useStylesWithRootClass('dot-avatar-with-details-subtitle', (subtitle === null || subtitle === void 0 ? void 0 : subtitle.maxLines) ? 'max-lines-clamp' : '');
|
|
7073
|
+
return jsxs(StyledAvatarWithDetails, {
|
|
7074
|
+
"aria-label": ariaLabel,
|
|
7075
|
+
className: rootClasses,
|
|
7076
|
+
"data-pendoid": dataPendoId,
|
|
7077
|
+
"data-testid": dataTestId,
|
|
7078
|
+
"$maxSubtitleLines": subtitle === null || subtitle === void 0 ? void 0 : subtitle.maxLines,
|
|
7079
|
+
"$maxTitleLines": title.maxLines,
|
|
7080
|
+
children: [jsx(DotAvatar, Object.assign({}, avatar)), jsxs("div", {
|
|
7081
|
+
className: "dot-avatar-with-details-title-and-subtitle",
|
|
7082
|
+
children: [jsx(DotTooltip, {
|
|
7083
|
+
hoverVisibility: "overflow",
|
|
7084
|
+
title: title.text,
|
|
7085
|
+
children: jsx(DotTypography, {
|
|
7086
|
+
className: titleClasses,
|
|
7087
|
+
"data-testid": "avatar-title",
|
|
7088
|
+
variant: title.typographyVariant || 'subtitle1',
|
|
7089
|
+
children: title.text
|
|
7090
|
+
})
|
|
7091
|
+
}), (subtitle === null || subtitle === void 0 ? void 0 : subtitle.text) && jsx(DotTooltip, {
|
|
7092
|
+
hoverVisibility: "overflow",
|
|
7093
|
+
title: subtitle.text,
|
|
7094
|
+
children: jsx(DotTypography, {
|
|
7095
|
+
className: subtitleClasses,
|
|
7096
|
+
"data-testid": "avatar-subtitle",
|
|
7097
|
+
variant: subtitle.typographyVariant || 'body2',
|
|
7098
|
+
children: subtitle.text
|
|
7099
|
+
})
|
|
7100
|
+
})]
|
|
7101
|
+
})]
|
|
7102
|
+
});
|
|
7103
|
+
};
|
|
7104
|
+
|
|
7022
7105
|
const rootClassName$U = 'dot-breadcrumbs';
|
|
7023
7106
|
const breadcrumbsWrapperClass = 'dot-breadcrumbs-wrapper';
|
|
7024
7107
|
const StyledBreadcrumbsWrapper = styled.div`
|
|
@@ -9832,7 +9915,7 @@ const categorySort = (a, b) => a.localeCompare(b);
|
|
|
9832
9915
|
const metadataKey = isPublishedOnly => isPublishedOnly ? 'published' : 'all';
|
|
9833
9916
|
const handleUpdateDashboard = (dashboards, updatedDashboard) => {
|
|
9834
9917
|
updateItemInArray(dashboards, updatedDashboard, ID);
|
|
9835
|
-
return dashboards;
|
|
9918
|
+
return dashboards ? [...dashboards] : dashboards;
|
|
9836
9919
|
};
|
|
9837
9920
|
const DotMetadataApiContext = createContext(null);
|
|
9838
9921
|
const accountHeaderKey = 'X-Digitalai-Account-ID';
|
|
@@ -9860,6 +9943,7 @@ const DotMetadataApiProvider = ({
|
|
|
9860
9943
|
const [accountId, setAccountId] = useState(accountOverrideId);
|
|
9861
9944
|
const [dashboards, setDashboards] = useState();
|
|
9862
9945
|
const [dashboardsLoading, setDashboardsLoading] = useState(true);
|
|
9946
|
+
const [dashboardSearchLoading, setDashboardSearchLoading] = useState(false);
|
|
9863
9947
|
const [metadata, setMetadata] = useState(null);
|
|
9864
9948
|
const [metadataLoading, setMetadataLoading] = useState(true);
|
|
9865
9949
|
const [helpContentLoading, setHelpContentLoading] = useState(true);
|
|
@@ -9892,6 +9976,7 @@ const DotMetadataApiProvider = ({
|
|
|
9892
9976
|
metadataLoading,
|
|
9893
9977
|
dashboardsError,
|
|
9894
9978
|
dashboardsLoading,
|
|
9979
|
+
dashboardSearchLoading,
|
|
9895
9980
|
helpContentLoading,
|
|
9896
9981
|
openedDashboardDetails,
|
|
9897
9982
|
platformConsoleUrl,
|
|
@@ -9921,14 +10006,16 @@ const DotMetadataApiProvider = ({
|
|
|
9921
10006
|
favorite,
|
|
9922
10007
|
returnErrors = false
|
|
9923
10008
|
}) => {
|
|
10009
|
+
if (OpenAPI.BASE === MOCK_API_URL) {
|
|
10010
|
+
setDashboardsError(null);
|
|
10011
|
+
return Promise.resolve([]);
|
|
10012
|
+
}
|
|
9924
10013
|
setAccountIdHeader(accountId);
|
|
9925
|
-
|
|
10014
|
+
setDashboardSearchLoading(true);
|
|
9926
10015
|
return cancelablePromise(DashboardsService.getDashboardsService(start, count, sort, filter, favorite, q, authorFullname, authorId, biType, description, id, isOotbDashboard, lifecycleState, name, targetApp)).then(response => {
|
|
9927
10016
|
setDashboardsError(null);
|
|
9928
|
-
setDashboardsLoading(false);
|
|
9929
10017
|
return response.results;
|
|
9930
10018
|
}).catch(error => {
|
|
9931
|
-
setDashboardsLoading(false);
|
|
9932
10019
|
if (returnErrors) {
|
|
9933
10020
|
return {
|
|
9934
10021
|
error: error.message
|
|
@@ -9937,7 +10024,7 @@ const DotMetadataApiProvider = ({
|
|
|
9937
10024
|
setDashboardsError(error);
|
|
9938
10025
|
return null;
|
|
9939
10026
|
}
|
|
9940
|
-
});
|
|
10027
|
+
}).finally(() => setDashboardSearchLoading(false));
|
|
9941
10028
|
},
|
|
9942
10029
|
deleteDashboard: dashboardId => {
|
|
9943
10030
|
setAccountIdHeader(accountId);
|
|
@@ -10015,6 +10102,12 @@ const DotMetadataApiProvider = ({
|
|
|
10015
10102
|
}
|
|
10016
10103
|
},
|
|
10017
10104
|
updateDashboard: (dashboardId, dashboard, isSync = false) => __awaiter(void 0, void 0, void 0, function* () {
|
|
10105
|
+
if (OpenAPI.BASE === MOCK_API_URL) {
|
|
10106
|
+
setDashboardsError(null);
|
|
10107
|
+
return Promise.resolve(Object.assign(Object.assign({}, dashboard), {
|
|
10108
|
+
id: dashboardId
|
|
10109
|
+
}));
|
|
10110
|
+
}
|
|
10018
10111
|
setAccountIdHeader(accountId);
|
|
10019
10112
|
return cancelablePromise(DashboardsService.patchDashboardsService(dashboardId, dashboard, isSync)).then(response => {
|
|
10020
10113
|
setDashboardsError(null);
|
|
@@ -10029,6 +10122,7 @@ const DotMetadataApiProvider = ({
|
|
|
10029
10122
|
const appTypeMetadata = metadata[appType];
|
|
10030
10123
|
if (key in appTypeMetadata) {
|
|
10031
10124
|
appTypeMetadata[key]['authors'].sort(authorSort);
|
|
10125
|
+
setMetadataLoading(false);
|
|
10032
10126
|
return Promise.resolve(appTypeMetadata[key]['authors']);
|
|
10033
10127
|
}
|
|
10034
10128
|
} else if (OpenAPI.BASE === MOCK_API_URL) {
|
|
@@ -10047,6 +10141,7 @@ const DotMetadataApiProvider = ({
|
|
|
10047
10141
|
const appTypeMetadata = metadata[appType];
|
|
10048
10142
|
if (key in appTypeMetadata) {
|
|
10049
10143
|
appTypeMetadata[key]['categories'].sort(categorySort);
|
|
10144
|
+
setMetadataLoading(false);
|
|
10050
10145
|
return Promise.resolve(appTypeMetadata[key]['categories']);
|
|
10051
10146
|
}
|
|
10052
10147
|
} else if (OpenAPI.BASE === MOCK_API_URL) {
|
|
@@ -10077,7 +10172,7 @@ const DotMetadataApiProvider = ({
|
|
|
10077
10172
|
});
|
|
10078
10173
|
}
|
|
10079
10174
|
})
|
|
10080
|
-
}), [accountId, metadata, metadataLoading, dashboardsError, dashboardsLoading, openedDashboardDetails, platformConsoleUrl, retrieveMetadata]);
|
|
10175
|
+
}), [accountId, metadata, metadataLoading, dashboardsError, dashboardsLoading, dashboardSearchLoading, openedDashboardDetails, platformConsoleUrl, retrieveMetadata]);
|
|
10081
10176
|
if (apiUrl && OpenAPI.BASE !== apiUrl) {
|
|
10082
10177
|
OpenAPI.BASE = apiUrl;
|
|
10083
10178
|
}
|
|
@@ -10138,7 +10233,7 @@ const StyledSnackbar = styled(Snackbar)`
|
|
|
10138
10233
|
.MuiAlert-message {
|
|
10139
10234
|
word-break: break-word;
|
|
10140
10235
|
}
|
|
10141
|
-
.${rootClassName$
|
|
10236
|
+
.${rootClassName$1h} {
|
|
10142
10237
|
align-items: flex-start;
|
|
10143
10238
|
}
|
|
10144
10239
|
&.MuiSnackbar-anchorOriginTopLeft,
|
|
@@ -10864,6 +10959,9 @@ const StyledDashboardDialog = styled(DotDialog)`
|
|
|
10864
10959
|
.dot-input-select {
|
|
10865
10960
|
margin-bottom: ${theme.spacing(2)};
|
|
10866
10961
|
}
|
|
10962
|
+
.disabled-fields-banner {
|
|
10963
|
+
margin-bottom: ${theme.spacing(2)};
|
|
10964
|
+
}
|
|
10867
10965
|
`}
|
|
10868
10966
|
`;
|
|
10869
10967
|
const StyledDialogActions = styled(DialogActions)`
|
|
@@ -10905,6 +11003,10 @@ function DotDashboardDialog({
|
|
|
10905
11003
|
availableCategories,
|
|
10906
11004
|
copyDashboard,
|
|
10907
11005
|
editDashboard,
|
|
11006
|
+
fieldConfig = {
|
|
11007
|
+
apptype: 'disabled'
|
|
11008
|
+
},
|
|
11009
|
+
messages,
|
|
10908
11010
|
open,
|
|
10909
11011
|
onClose,
|
|
10910
11012
|
onSubmit,
|
|
@@ -10921,11 +11023,28 @@ function DotDashboardDialog({
|
|
|
10921
11023
|
name
|
|
10922
11024
|
} = formValues;
|
|
10923
11025
|
const {
|
|
11026
|
+
dashboardSearchLoading,
|
|
10924
11027
|
searchDashboards
|
|
10925
11028
|
} = useDotMetadataApiContext();
|
|
10926
11029
|
const {
|
|
10927
11030
|
cancelablePromise
|
|
10928
11031
|
} = useCancelablePromise();
|
|
11032
|
+
const fieldConfigWithDefault = useMemo(() => {
|
|
11033
|
+
let config = fieldConfig;
|
|
11034
|
+
if (!config) {
|
|
11035
|
+
config = {
|
|
11036
|
+
apptype: 'disabled'
|
|
11037
|
+
};
|
|
11038
|
+
} else if (!('apptype' in config)) {
|
|
11039
|
+
config = Object.assign(Object.assign({}, config), {
|
|
11040
|
+
apptype: 'disabled'
|
|
11041
|
+
});
|
|
11042
|
+
}
|
|
11043
|
+
return config;
|
|
11044
|
+
}, [fieldConfig]);
|
|
11045
|
+
const isDisabled = useCallback((key, b = true) => {
|
|
11046
|
+
return b && key in fieldConfigWithDefault && fieldConfigWithDefault[key] === 'disabled';
|
|
11047
|
+
}, [fieldConfigWithDefault]);
|
|
10929
11048
|
useEffect(() => {
|
|
10930
11049
|
if (copyDashboard) {
|
|
10931
11050
|
setFormValues(orig => Object.assign(Object.assign({}, orig), {
|
|
@@ -10945,30 +11064,23 @@ function DotDashboardDialog({
|
|
|
10945
11064
|
onClose(false);
|
|
10946
11065
|
};
|
|
10947
11066
|
}, []);
|
|
10948
|
-
const handleSubmit = useCallback(
|
|
11067
|
+
const handleSubmit = useCallback(isDone => __awaiter(this, void 0, void 0, function* () {
|
|
10949
11068
|
setIsLoadingSubmit(true);
|
|
10950
11069
|
const useFormValues = Object.assign(Object.assign({}, formValues), {
|
|
10951
11070
|
id: editDashboard === null || editDashboard === void 0 ? void 0 : editDashboard.id
|
|
10952
11071
|
});
|
|
10953
11072
|
const validName = yield validateName(useFormValues.name);
|
|
10954
11073
|
if (validName) {
|
|
10955
|
-
yield onSubmit(useFormValues,
|
|
11074
|
+
yield onSubmit(useFormValues, isDone);
|
|
10956
11075
|
}
|
|
10957
11076
|
setIsLoadingSubmit(false);
|
|
10958
11077
|
}), [formValues, editDashboard]);
|
|
10959
11078
|
const handleSubmitCreate = useCallback(() => {
|
|
10960
|
-
handleSubmit(false);
|
|
10961
|
-
}, [handleSubmit]);
|
|
10962
|
-
const handleSubmitEditExit = useCallback(() => {
|
|
10963
11079
|
handleSubmit(true);
|
|
10964
11080
|
}, [handleSubmit]);
|
|
10965
|
-
const
|
|
10966
|
-
|
|
10967
|
-
|
|
10968
|
-
} else {
|
|
10969
|
-
onContinue();
|
|
10970
|
-
}
|
|
10971
|
-
}, [isDirty, handleSubmit, onContinue]);
|
|
11081
|
+
const handleSubmitEdit = useCallback(() => {
|
|
11082
|
+
handleSubmit(false);
|
|
11083
|
+
}, [handleSubmit]);
|
|
10972
11084
|
const handleChange = useCallback(event => {
|
|
10973
11085
|
const targetName = event.target.name;
|
|
10974
11086
|
const value = event.target.value;
|
|
@@ -11030,12 +11142,10 @@ function DotDashboardDialog({
|
|
|
11030
11142
|
validateName(newName);
|
|
11031
11143
|
}
|
|
11032
11144
|
}, [validateName]);
|
|
11033
|
-
const
|
|
11034
|
-
|
|
11035
|
-
|
|
11036
|
-
|
|
11037
|
-
return true;
|
|
11038
|
-
};
|
|
11145
|
+
const isDescriptionError = description.length > DASHBOARD_DESCRIPTION_MAX_LENGTH;
|
|
11146
|
+
const validateFields = useCallback(() => {
|
|
11147
|
+
return !!formValues.name && !nameError && !isDescriptionError;
|
|
11148
|
+
}, [formValues.name, nameError, isDescriptionError]);
|
|
11039
11149
|
return jsxs(StyledDashboardDialog, {
|
|
11040
11150
|
cancelButtonProps: {
|
|
11041
11151
|
'data-testid': 'cancel-create-dashboard-button'
|
|
@@ -11053,7 +11163,14 @@ function DotDashboardDialog({
|
|
|
11053
11163
|
label: 'Continue'
|
|
11054
11164
|
},
|
|
11055
11165
|
title: title || 'Create dashboard',
|
|
11056
|
-
children: [jsx(
|
|
11166
|
+
children: [messages === null || messages === void 0 ? void 0 : messages.map(message => jsx(DotAlertBanner, {
|
|
11167
|
+
severity: "info",
|
|
11168
|
+
className: "disabled-fields-banner",
|
|
11169
|
+
"data-testid": "disabled-fields-banner",
|
|
11170
|
+
children: jsx(DotTypography, {
|
|
11171
|
+
children: message
|
|
11172
|
+
})
|
|
11173
|
+
}, message)), jsx(DotInputText, {
|
|
11057
11174
|
autoFocus: true,
|
|
11058
11175
|
"data-testid": "dashboard-dialog-name-input",
|
|
11059
11176
|
error: nameError || name.length > DASHBOARD_NAME_MAX_LENGTH,
|
|
@@ -11061,20 +11178,22 @@ function DotDashboardDialog({
|
|
|
11061
11178
|
id: "name",
|
|
11062
11179
|
label: "Dashboard name",
|
|
11063
11180
|
name: "name",
|
|
11181
|
+
disabled: isDisabled('name'),
|
|
11064
11182
|
onBlur: handleNameBlur,
|
|
11065
11183
|
onChange: handleChange,
|
|
11066
11184
|
required: true,
|
|
11067
11185
|
value: name
|
|
11068
11186
|
}), jsx(DotInputText, {
|
|
11069
11187
|
"data-testid": "dashboard-dialog-description-input",
|
|
11070
|
-
error:
|
|
11071
|
-
helperText:
|
|
11188
|
+
error: isDescriptionError,
|
|
11189
|
+
helperText: isDescriptionError && `Description must be ${DASHBOARD_DESCRIPTION_MAX_LENGTH} characters or less`,
|
|
11072
11190
|
id: "description",
|
|
11073
11191
|
label: "Description",
|
|
11074
11192
|
multiline: true,
|
|
11075
11193
|
minRows: 4,
|
|
11076
11194
|
maxRows: 4,
|
|
11077
11195
|
name: "description",
|
|
11196
|
+
disabled: isDisabled('description'),
|
|
11078
11197
|
onChange: handleChange,
|
|
11079
11198
|
value: description
|
|
11080
11199
|
}), editDashboard && jsxs(Fragment, {
|
|
@@ -11087,7 +11206,7 @@ function DotDashboardDialog({
|
|
|
11087
11206
|
id: "dashboard-apptype-select",
|
|
11088
11207
|
"data-testid": "dashboard-dialog-apptype-input",
|
|
11089
11208
|
name: "Select application",
|
|
11090
|
-
disabled:
|
|
11209
|
+
disabled: isDisabled('apptype'),
|
|
11091
11210
|
value: editDashboard.target_apps[0]
|
|
11092
11211
|
})]
|
|
11093
11212
|
}), jsx(DotTypography, {
|
|
@@ -11106,6 +11225,7 @@ function DotDashboardDialog({
|
|
|
11106
11225
|
placeholder: "Select categories",
|
|
11107
11226
|
label: "Category",
|
|
11108
11227
|
required: editDashboard && editDashboard.lifecycle_state === DashboardView.lifecycle_state.PUBLISHED,
|
|
11228
|
+
disabled: isDisabled('categories'),
|
|
11109
11229
|
value: getCategoryValues()
|
|
11110
11230
|
}), editDashboard && jsx(Fragment, {
|
|
11111
11231
|
children: jsxs(StyledDialogActions, {
|
|
@@ -11117,16 +11237,10 @@ function DotDashboardDialog({
|
|
|
11117
11237
|
children: "Cancel"
|
|
11118
11238
|
}), jsx(DotButton, {
|
|
11119
11239
|
"data-testid": "save-edit-exit-dashboard-button",
|
|
11120
|
-
disabled: isLoadingSubmit || !isDirty || !
|
|
11121
|
-
onClick:
|
|
11122
|
-
type: "outlined",
|
|
11123
|
-
children: "Save and exit"
|
|
11124
|
-
}), jsx(DotButton, {
|
|
11125
|
-
"data-testid": "save-edit-continue-dashboard-button",
|
|
11126
|
-
disabled: isLoadingSubmit || !validateRequiredFields(),
|
|
11127
|
-
onClick: handleSubmitEditContinue,
|
|
11240
|
+
disabled: dashboardSearchLoading || isLoadingSubmit || !isDirty || !validateFields(),
|
|
11241
|
+
onClick: handleSubmitEdit,
|
|
11128
11242
|
type: "primary",
|
|
11129
|
-
children:
|
|
11243
|
+
children: "Save"
|
|
11130
11244
|
})]
|
|
11131
11245
|
})
|
|
11132
11246
|
})]
|
|
@@ -11752,6 +11866,8 @@ const StyledDotMenu = styled(DotMenu)`
|
|
|
11752
11866
|
`}
|
|
11753
11867
|
`;
|
|
11754
11868
|
|
|
11869
|
+
const disabledFieldsMessage = 'Dashboard name and description cannot be modified while the dashboard editor is active. Please save your changes and close the editor, if you need to make a name or description change.';
|
|
11870
|
+
const inProgressEditMessage = 'This is a published dashboard; changes will not be visible to other users until you publish the updated dashboard.';
|
|
11755
11871
|
function DotDashboardOptionsMenu({
|
|
11756
11872
|
dashboard,
|
|
11757
11873
|
currentUser,
|
|
@@ -11761,12 +11877,19 @@ function DotDashboardOptionsMenu({
|
|
|
11761
11877
|
onStartDuplicate,
|
|
11762
11878
|
onStartStatusChange,
|
|
11763
11879
|
onStartRevert,
|
|
11880
|
+
onUpdatedProperties,
|
|
11764
11881
|
onViewOriginal,
|
|
11765
11882
|
onViewMode,
|
|
11766
11883
|
onDetails
|
|
11767
11884
|
}) {
|
|
11768
11885
|
const [anchorEl, setAnchorEl] = useState(null);
|
|
11769
11886
|
const [open, setOpen] = useState(false);
|
|
11887
|
+
const [isEditPropertiesDialogOpen, setIsEditPropertiesDialogOpen] = useState(false);
|
|
11888
|
+
const [categoryOptions, setCategoryOptions] = useState();
|
|
11889
|
+
const {
|
|
11890
|
+
getCategories,
|
|
11891
|
+
updateDashboard
|
|
11892
|
+
} = useDotMetadataApiContext();
|
|
11770
11893
|
const handleMenuClick = useCallback(event => {
|
|
11771
11894
|
setAnchorEl(event.currentTarget);
|
|
11772
11895
|
setOpen(orig => !orig);
|
|
@@ -11779,6 +11902,34 @@ function DotDashboardOptionsMenu({
|
|
|
11779
11902
|
handleMenuClose();
|
|
11780
11903
|
onViewMode(dashboard, 'edit');
|
|
11781
11904
|
}, [dashboard, onViewMode]);
|
|
11905
|
+
const handleEditPropertiesClick = useCallback(() => {
|
|
11906
|
+
var _a;
|
|
11907
|
+
handleMenuClose();
|
|
11908
|
+
setIsEditPropertiesDialogOpen(true);
|
|
11909
|
+
if (((_a = dashboard === null || dashboard === void 0 ? void 0 : dashboard.target_apps) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
11910
|
+
getCategories(dashboard.target_apps[0]).then(retrievedCategories => {
|
|
11911
|
+
// group categories for all app types associated with this dashboard
|
|
11912
|
+
const categoryOptionSet = new Set();
|
|
11913
|
+
retrievedCategories.forEach(categoryOptionSet.add, categoryOptionSet);
|
|
11914
|
+
setCategoryOptions(Array.from(categoryOptionSet));
|
|
11915
|
+
});
|
|
11916
|
+
} else {
|
|
11917
|
+
setCategoryOptions([]);
|
|
11918
|
+
}
|
|
11919
|
+
}, [dashboard]);
|
|
11920
|
+
const handleSubmitEditProperties = useCallback((data, isDone) => __awaiter(this, void 0, void 0, function* () {
|
|
11921
|
+
return updateDashboard(dashboard.id, {
|
|
11922
|
+
name: data.name,
|
|
11923
|
+
description: data.description,
|
|
11924
|
+
categories: data.categories,
|
|
11925
|
+
target_apps: data.target_apps
|
|
11926
|
+
}).then(result => {
|
|
11927
|
+
if (result && 'id' in result) {
|
|
11928
|
+
setIsEditPropertiesDialogOpen(false);
|
|
11929
|
+
onUpdatedProperties(result, isDone);
|
|
11930
|
+
}
|
|
11931
|
+
});
|
|
11932
|
+
}), [dashboard]);
|
|
11782
11933
|
const isDraft = dashboard.lifecycle_state === DashboardView.lifecycle_state.DRAFT;
|
|
11783
11934
|
const isPublished = dashboard.lifecycle_state === DashboardView.lifecycle_state.PUBLISHED;
|
|
11784
11935
|
const dashboardLocked = isPublished && currentUser && dashboard.is_being_modified && dashboard.modified_author_id !== currentUser.id;
|
|
@@ -11796,6 +11947,19 @@ function DotDashboardOptionsMenu({
|
|
|
11796
11947
|
key: 'edit'
|
|
11797
11948
|
});
|
|
11798
11949
|
}
|
|
11950
|
+
if (onUpdatedProperties && !dashboard.is_ootb_dashboard) {
|
|
11951
|
+
menuItems.push({
|
|
11952
|
+
children: jsx(DotButton, {
|
|
11953
|
+
ariaLabel: "Edit dashboard properties",
|
|
11954
|
+
type: "text",
|
|
11955
|
+
startIcon: jsx(DotIcon, {
|
|
11956
|
+
iconId: "edit"
|
|
11957
|
+
}),
|
|
11958
|
+
children: "Edit properties"
|
|
11959
|
+
}),
|
|
11960
|
+
key: 'edit-props'
|
|
11961
|
+
});
|
|
11962
|
+
}
|
|
11799
11963
|
if (onStartStatusChange && !dashboard.is_ootb_dashboard && isDraft) {
|
|
11800
11964
|
menuItems.push({
|
|
11801
11965
|
key: 'publish',
|
|
@@ -11911,6 +12075,9 @@ function DotDashboardOptionsMenu({
|
|
|
11911
12075
|
case 'edit':
|
|
11912
12076
|
handleEditClick();
|
|
11913
12077
|
break;
|
|
12078
|
+
case 'edit-props':
|
|
12079
|
+
handleEditPropertiesClick();
|
|
12080
|
+
break;
|
|
11914
12081
|
case 'duplicate':
|
|
11915
12082
|
onStartDuplicate(dashboard);
|
|
11916
12083
|
break;
|
|
@@ -11933,8 +12100,30 @@ function DotDashboardOptionsMenu({
|
|
|
11933
12100
|
}
|
|
11934
12101
|
handleMenuClose();
|
|
11935
12102
|
}, [menuItems, handleMenuClose]);
|
|
12103
|
+
const handleCloseEditProperties = useCallback(_isDone => {
|
|
12104
|
+
setIsEditPropertiesDialogOpen(false);
|
|
12105
|
+
}, []);
|
|
12106
|
+
const messages = [];
|
|
12107
|
+
if (dashboard.is_being_modified || dashboard.lifecycle_state === DashboardView.lifecycle_state.PUBLISHED) {
|
|
12108
|
+
messages.push(inProgressEditMessage);
|
|
12109
|
+
}
|
|
12110
|
+
if (isEdit) {
|
|
12111
|
+
messages.push(disabledFieldsMessage);
|
|
12112
|
+
}
|
|
11936
12113
|
return menuItems.length > 0 ? jsxs(Fragment, {
|
|
11937
|
-
children: [jsx(
|
|
12114
|
+
children: [jsx(DotDashboardDialog, {
|
|
12115
|
+
title: "Edit dashboard properties",
|
|
12116
|
+
availableCategories: categoryOptions,
|
|
12117
|
+
fieldConfig: isEdit ? {
|
|
12118
|
+
name: 'disabled',
|
|
12119
|
+
description: 'disabled'
|
|
12120
|
+
} : undefined,
|
|
12121
|
+
messages: messages,
|
|
12122
|
+
open: isEditPropertiesDialogOpen,
|
|
12123
|
+
onClose: handleCloseEditProperties,
|
|
12124
|
+
onSubmit: handleSubmitEditProperties,
|
|
12125
|
+
editDashboard: dashboard
|
|
12126
|
+
}), jsx(DotIconButton, {
|
|
11938
12127
|
className: "expand-button",
|
|
11939
12128
|
"data-testid": "card-header-action-button",
|
|
11940
12129
|
iconId: "options",
|
|
@@ -12064,6 +12253,7 @@ function DotDashboardActions({
|
|
|
12064
12253
|
onDeleted,
|
|
12065
12254
|
onDuplicated,
|
|
12066
12255
|
onToggleFullscreen,
|
|
12256
|
+
onUpdatedProperties,
|
|
12067
12257
|
onViewMode,
|
|
12068
12258
|
onViewOriginal,
|
|
12069
12259
|
onRevertChanges,
|
|
@@ -12215,6 +12405,7 @@ function DotDashboardActions({
|
|
|
12215
12405
|
onStartDuplicate: handleStartDuplicateIfConfig,
|
|
12216
12406
|
onStartDelete: handleStartDeleteIfConfig,
|
|
12217
12407
|
onStartRevert: handleRevertChangesIfConfig,
|
|
12408
|
+
onUpdatedProperties: onUpdatedProperties,
|
|
12218
12409
|
onDetails: () => setOpenedDashboardDetails(dashboard),
|
|
12219
12410
|
currentUser: currentUser ? currentUser : null
|
|
12220
12411
|
}), onToggleFullscreen && jsx(FullscreenButton, {
|
|
@@ -12339,6 +12530,7 @@ function DotDashboardHeader({
|
|
|
12339
12530
|
onRevertChanges,
|
|
12340
12531
|
onViewOriginal,
|
|
12341
12532
|
onToggleFullscreen,
|
|
12533
|
+
onUpdatedProperties,
|
|
12342
12534
|
onViewMode,
|
|
12343
12535
|
showStatus = false,
|
|
12344
12536
|
modifiedAuthorUser = null
|
|
@@ -12412,6 +12604,7 @@ function DotDashboardHeader({
|
|
|
12412
12604
|
onDeleted: onDeleted,
|
|
12413
12605
|
onDuplicated: onDuplicated,
|
|
12414
12606
|
onToggleFullscreen: onToggleFullscreen,
|
|
12607
|
+
onUpdatedProperties: onUpdatedProperties,
|
|
12415
12608
|
onViewMode: onViewMode,
|
|
12416
12609
|
onViewOriginal: onViewOriginal,
|
|
12417
12610
|
currentUser: currentUser ? currentUser : null
|
|
@@ -12751,7 +12944,7 @@ const StyledFormContainer = styled.div`
|
|
|
12751
12944
|
|
|
12752
12945
|
.${rootClassName$N},
|
|
12753
12946
|
.${rootClassName$P},
|
|
12754
|
-
.${rootClassName$
|
|
12947
|
+
.${rootClassName$1l},
|
|
12755
12948
|
.${rootSelectClassName},
|
|
12756
12949
|
.${rootClassName$A},
|
|
12757
12950
|
.${rootClassName$z} {
|
|
@@ -12759,7 +12952,7 @@ const StyledFormContainer = styled.div`
|
|
|
12759
12952
|
}
|
|
12760
12953
|
|
|
12761
12954
|
.${wrapperClassName$2} {
|
|
12762
|
-
+ .${rootClassName$
|
|
12955
|
+
+ .${rootClassName$1l},
|
|
12763
12956
|
.${wrapperClassName$2}
|
|
12764
12957
|
+ .${rootSelectClassName},
|
|
12765
12958
|
.${wrapperClassName$2}
|
|
@@ -17336,7 +17529,7 @@ const DotPopper = ({
|
|
|
17336
17529
|
placement
|
|
17337
17530
|
}) => {
|
|
17338
17531
|
const [arrowRef, setArrowRef] = useState(null);
|
|
17339
|
-
const rootClasses = useStylesWithRootClass(rootClassName$
|
|
17532
|
+
const rootClasses = useStylesWithRootClass(rootClassName$1b, className);
|
|
17340
17533
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
17341
17534
|
const handleClickAway = event => {
|
|
17342
17535
|
if (onClickAway && (!anchorEl || !anchorEl.contains(event.currentTarget))) {
|
|
@@ -18979,4 +19172,4 @@ const BoardColumnSummary = ({
|
|
|
18979
19172
|
});
|
|
18980
19173
|
};
|
|
18981
19174
|
|
|
18982
|
-
export { ApiError$1 as ApiError, BoardStatusProvider, Cell, ColumnStatusProvider, CreateUUID, CssCell, CssGrid, CssGridDebug, DashboardAppTypeOptions, DashboardView, DatePickerKeydownContext, Daytime, DotAccordion, DotActionToolbar, DotAlertBanner, DotAppLogo, DotAppSwitcher, DotAppToolbar, DotAutoComplete, DotAvatar, DotAvatarGroup, DotBadge, Board as DotBoard, BoardColumn as DotBoardColumn, BoardColumnActionBar as DotBoardColumnActionBar, BoardColumnCollapse as DotBoardColumnCollapse, BoardColumnExpand as DotBoardColumnExpand, BoardColumnHeader as DotBoardColumnHeader, BoardColumnItems as DotBoardColumnItems, BoardColumnSummary as DotBoardColumnSummary, DotBreadcrumbs, DotButton, DotButtonToggle, DotCard, DotCardContent, DotCardFooter, DotCardHeader, DotCarousel, DotCheckbox, DotCheckboxGroup, DotChip, DotChipList, DotClickAwayListener, DotConfirmationDialog, DotCopyButton, DotCoreApiProvider, DotDashboardActions, DotDashboardDetails, DotDashboardDialog, DotDashboardHeader, DotDashboardOptionsMenu, DotDashboardPublishConfirm, DotDashboardStatusPill, DotDatePicker, DotDialog, DotDivider, DotDraggableList, DotDrawer, DotDynamicForm, DotEmptyFilterState, DotEmptyState, DotFileListItem, DotFileUpload, DotForm, DotFormGroup, DotHeaderRow, DotIcon, DotIconButton, DotIllustration, DotImpactDialog, DotInlineEdit, DotInputLabel, DotInputSelect, DotInputText, DotLinearProgress, DotLink, DotList, DotMenu, DotMetadataApiProvider, 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, useBoardStatus, useColumnStatus, useDotCoreApiContext, useDotMetadataApiContext, useDotSnackbarContext, useEnqueueErrorMessage };
|
|
19175
|
+
export { ApiError$1 as ApiError, BoardStatusProvider, Cell, ColumnStatusProvider, CreateUUID, CssCell, CssGrid, CssGridDebug, DashboardAppTypeOptions, DashboardView, DatePickerKeydownContext, Daytime, DotAccordion, DotActionToolbar, DotAlertBanner, DotAppLogo, DotAppSwitcher, DotAppToolbar, DotAutoComplete, DotAvatar, DotAvatarGroup, DotAvatarWithDetails, DotBadge, Board as DotBoard, BoardColumn as DotBoardColumn, BoardColumnActionBar as DotBoardColumnActionBar, BoardColumnCollapse as DotBoardColumnCollapse, BoardColumnExpand as DotBoardColumnExpand, BoardColumnHeader as DotBoardColumnHeader, BoardColumnItems as DotBoardColumnItems, BoardColumnSummary as DotBoardColumnSummary, DotBreadcrumbs, DotButton, DotButtonToggle, DotCard, DotCardContent, DotCardFooter, DotCardHeader, DotCarousel, DotCheckbox, DotCheckboxGroup, DotChip, DotChipList, DotClickAwayListener, DotConfirmationDialog, DotCopyButton, DotCoreApiProvider, DotDashboardActions, DotDashboardDetails, DotDashboardDialog, DotDashboardHeader, DotDashboardOptionsMenu, DotDashboardPublishConfirm, DotDashboardStatusPill, DotDatePicker, DotDialog, DotDivider, DotDraggableList, DotDrawer, DotDynamicForm, DotEmptyFilterState, DotEmptyState, DotFileListItem, DotFileUpload, DotForm, DotFormGroup, DotHeaderRow, DotIcon, DotIconButton, DotIllustration, DotImpactDialog, DotInlineEdit, DotInputLabel, DotInputSelect, DotInputText, DotLinearProgress, DotLink, DotList, DotMenu, DotMetadataApiProvider, 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, useBoardStatus, useColumnStatus, useDotCoreApiContext, useDotMetadataApiContext, useDotSnackbarContext, useEnqueueErrorMessage };
|