@digital-ai/dot-components 1.3.4 → 1.3.5

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.
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import React__default, { useEffect, useState, useRef, Fragment, useContext, useMemo, createContext } from 'react';
2
+ import React__default, { useEffect, useState, useRef, useMemo, Fragment, useContext, createContext } from 'react';
3
3
  import { Tooltip, Icon, Typography, Accordion, AccordionSummary, AccordionDetails, Divider, AccordionActions, Toolbar, IconButton, Link, Avatar, StylesProvider, MuiThemeProvider, Drawer, CircularProgress, Popper, Grow, Paper, ClickAwayListener, MenuList, MenuItem, List, ListItem, ListSubheader, Collapse, ListItemIcon, useMediaQuery, Chip, InputAdornment, TextField, Button, darken, Badge, Breadcrumbs, Card, CardContent, CardHeader, FormControlLabel, Checkbox, FormControl, FormGroup, FormLabel, FormHelperText, Dialog, DialogTitle, DialogContent, DialogActions, useTheme, RadioGroup, Radio, Switch, Snackbar, ButtonGroup, TableContainer, TableCell, TableRow, TableBody, TableHead, TableSortLabel, TablePagination, Table, Tabs, Tab } from '@material-ui/core';
4
4
  import styled, { css, createGlobalStyle, ThemeProvider } from 'styled-components';
5
5
  import { Alert, Autocomplete, AvatarGroup, ToggleButtonGroup, ToggleButton, Skeleton } from '@material-ui/lab';
@@ -1900,7 +1900,7 @@ var _templateObject$z;
1900
1900
  var rootClassName$w = 'dot-sidebar';
1901
1901
  var StyledSidebar = styled.aside(_templateObject$z || (_templateObject$z = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
1902
1902
  var theme = _ref.theme;
1903
- return css(["&.", "{align-items:stretch;background:", ";border-width:0 1px;border-style:solid;border-color:", ";box-shadow:", ";box-sizing:border-box;color:", ";display:flex;height:100%;flex-direction:column;justify-content:space-between;letter-spacing:0.01em;padding:", ";-o-transition:width cubic-bezier(0.4,0,0.6,1) 0.3s;-moz-transition:width cubic-bezier(0.4,0,0.6,1) 0.3s;-webkit-transition:width cubic-bezier(0.4,0,0.6,1) 0.3s;transition:width cubic-bezier(0.4,0,0.6,1) 0.3s;header{align-items:center;border-bottom:1px solid;border-bottom-color:", ";display:flex;height:40px;flex-shrink:0;overflow:hidden;margin-bottom:", ";padding:", ";white-space:nowrap;&.app-logo{box-sizing:border-box;.dot-app-logo{svg,img{max-width:100%;}}}.dot-avatar{margin-right:", "px;}}.go-back{align-items:center;border-bottom:1px solid;border-bottom-color:", ";display:flex;.dot-icon{margin-right:", "px;width:40px;height:40px;}&:hover{background-color:", ";}}hr.MuiDivider-root{background-color:", ";margin:", ";}.MuiTypography-subtitle2{border-bottom:1px solid;border-bottom-color:", ";margin:", ";}ul.side-nav{background:transparent;flex-grow:2;overflow-x:hidden;overflow-y:auto;padding:0;width:auto;.dot-nested-list{background:transparent;}.", "{.dot-drawer-paper{border-right:1px solid ", ";box-shadow:0 0 5px 0 rgba(0,0,0,0.15);padding-top:", ";}.MuiTypography-root.MuiTypography-subtitle2{border:", ";color:", ";font-size:", ";line-height:40px;margin:", ";padding:", ";}.", "{margin:0;padding-left:", "px;}}.dot-list-item{height:", ";padding:0;margin-bottom:", ";&.MuiListItem-root.Mui-selected,&.MuiListItem-root.Mui-selected:hover,&:hover{background-color:", ";}&:hover,&:active,&:focus{.dot-typography,.dot-icon i.dot-i:before{color:", ";}}&.open{background-color:", ";border:", ";border-radius:", ";&:hover{background-color:", ";}}.MuiTouchRipple-root{display:", ";}.dot-list-item-link .dot-icon{margin-right:", "px;}.dot-icon{border-radius:50%;height:40px;width:40px;}&.Mui-focusVisible{box-shadow:inset 0 0 0 2px ", ";border:2px solid ", ";}}li.dot-list-item .dot-typography{white-space:nowrap;}}.toggle-nav{border-top:1px solid;border-top-color:", ";padding:", "px;text-align:right;.dot-icon{transform:rotate(0deg);-o-transition:all cubic-bezier(0.4,0,0.2,1) 0.3s;-moz-transition:all cubic-bezier(0.4,0,0.2,1) 0.3s;-webkit-transition:all cubic-bezier(0.4,0,0.2,1) 0.3s;transition:all cubic-bezier(0.4,0,0.2,1) 0.3s;}}.powered-by{border-top:1px solid;border-top-color:", ";color:", ";display:flex;flex-direction:column;flex-shrink:0;font-size:12px;overflow:hidden;margin:", ";padding:", "px;p.desc{white-space:nowrap;}.company-name{margin-top:", "px;}.d-icon{display:none;}}&.collapsed{overflow:hidden;padding:", ";width:58px;-o-transition:all cubic-bezier(0.4,0,0.6,1) 0.3s;-moz-transition:all cubic-bezier(0.4,0,0.6,1) 0.3s;-webkit-transition:all cubic-bezier(0.4,0,0.6,1) 0.3s;transition:all cubic-bezier(0.4,0,0.6,1) 0.3s;header .dot-app-logo{text-align:center;}ul.side-nav{width:56px;li.MuiListSubheader-root .MuiTypography-root{opacity:0;}.dot-list-item{margin-left:0;.dot-icon{margin-left:", "px;}}.toggle-nav{align-self:center;}}.go-back .MuiTypography-root,.MuiListItem-divider .dot-list-item-link,.dot-drawer{display:none;}.powered-by{align-items:center;.company-name,p.desc{display:none;}.d-icon{display:block;}}}}"], rootClassName$w, theme.palette.product === 'agility' ? theme.palette.layer.n50 : theme.palette.grey[50], theme.palette.product === 'agility' ? theme.palette.agilityInterface.sideNavBorder : theme.palette.grey[100], theme.palette.product === 'agility' && '0 0 5px rgba(0, 0, 0, 0.15)', theme.palette.product === 'agility' ? theme.palette.layer.n700 : theme.palette.grey[700], theme.palette.product === 'agility' && theme.spacing(2) + "px", theme.palette.product === 'agility' ? theme.palette.agilityInterface.sideNavBorder : theme.palette.grey[100], theme.palette.product === 'agility' && theme.spacing(1) + "px", theme.palette.product === 'agililty' ? theme.spacing(0, 0, 1) : theme.spacing(1, 2), theme.spacing(1), theme.palette.product === 'agility' ? theme.palette.agilityInterface.sideNavBorder : theme.palette.grey[100], theme.spacing(1), theme.palette.grey[100], theme.palette.product === 'agility' ? theme.palette.agilityInterface.sideNavBorder : theme.palette.grey[100], theme.palette.product === 'agility' ? theme.spacing(2, 0) : theme.spacing(1, 0), theme.palette.product === 'agility' ? theme.palette.agilityInterface.sideNavBorder : theme.palette.grey[100], theme.spacing(0, 0, 1), nestedDrawerClassName, theme.palette.product === 'agility' ? theme.palette.agilityInterface.sideNavBorder : theme.palette.grey[100], theme.palette.product === 'agility' && '10px', theme.palette.product === 'agility' && 'none', theme.palette.product === 'agility' && theme.palette.agilityInterface.sideNavSubHeaderText, theme.palette.product === 'agility' && '11px', theme.palette.product === 'agility' && '10px 0 0', theme.palette.product === 'agility' && '0 8px', listItemRootClass, theme.spacing(2), theme.palette.product === 'agility' ? '40px' : '44px', theme.palette.product === 'agility' && theme.spacing(1) + "px", theme.palette.product === 'agility' && 'transparent', theme.palette.product === 'agility' && theme.palette.agilityInterface.sideNavHoverText, theme.palette.product === 'agility' && theme.palette.agilityInterface.sideNavHoverBg, theme.palette.product === 'agility' ? "1px solid " + theme.palette.agilityInterface.sideNavHoverBorder : 'none', theme.palette.product === 'agility' && '4px', theme.palette.product === 'agility' && theme.palette.agilityInterface.sideNavHoverBg, theme.palette.product === 'agility' && 'none', theme.spacing(1), theme.palette.layer.n0, theme.palette.layer.n900, theme.palette.product === 'agility' ? theme.palette.agilityInterface.sideNavBorder : theme.palette.grey[100], theme.spacing(1), theme.palette.product === 'agility' ? theme.palette.agilityInterface.sideNavBorder : theme.palette.grey[100], theme.palette.grey[400], theme.palette.product !== 'agility' && theme.spacing(0, 1), theme.spacing(1), theme.spacing(1), theme.palette.product === 'agility' && theme.spacing(2, 0), theme.spacing(1));
1903
+ return css(["&.", "{align-items:stretch;background:", ";border-width:0 1px;border-style:solid;border-color:", ";box-shadow:", ";box-sizing:border-box;color:", ";display:flex;height:100%;flex-direction:column;justify-content:space-between;letter-spacing:0.01em;padding:", ";-o-transition:width cubic-bezier(0.4,0,0.6,1) 0.3s;-moz-transition:width cubic-bezier(0.4,0,0.6,1) 0.3s;-webkit-transition:width cubic-bezier(0.4,0,0.6,1) 0.3s;transition:width cubic-bezier(0.4,0,0.6,1) 0.3s;header{align-items:center;border-bottom:1px solid;border-bottom-color:", ";display:flex;height:40px;flex-shrink:0;overflow:hidden;margin-bottom:", ";padding:", ";white-space:nowrap;&.app-logo{box-sizing:border-box;.dot-app-logo{svg,img{max-width:100%;}}}.dot-avatar{margin-right:", "px;}}.go-back{align-items:center;border-bottom:1px solid;border-bottom-color:", ";display:flex;.dot-icon{margin-right:", "px;width:40px;height:40px;}&:hover{background-color:", ";}}hr.MuiDivider-root{background-color:", ";margin:", ";}.MuiTypography-subtitle2{border-bottom:1px solid;border-bottom-color:", ";margin:", ";}ul.side-nav{background:transparent;flex-grow:2;overflow-x:hidden;overflow-y:auto;padding:0;width:auto;.dot-nested-list{background:transparent;}.", "{.dot-drawer-paper{border-right:1px solid ", ";box-shadow:0 0 5px 0 rgba(0,0,0,0.15);padding-top:", ";}.MuiTypography-root.MuiTypography-subtitle2{border:", ";color:", ";font-size:", ";line-height:40px;margin:", ";padding:", ";}.", "{margin:0;padding-left:", "px;}}.dot-list-item{height:", ";padding:0;margin-bottom:", ";&.MuiListItem-root.Mui-selected,&.MuiListItem-root.Mui-selected:hover,&:hover{background-color:", ";}&:hover,&:active,&:focus{.dot-typography,.dot-icon i.dot-i:before{color:", ";}}&.open{background-color:", ";border:", ";border-radius:", ";&:hover{background-color:", ";}}.MuiTouchRipple-root{display:", ";}.dot-list-item-link .dot-icon{margin-right:", "px;}.dot-icon{border-radius:50%;height:40px;width:40px;}&.Mui-focusVisible{box-shadow:inset 0 0 0 2px ", ";border:2px solid ", ";}}li.dot-list-item .dot-typography{white-space:nowrap;}}.toggle-nav{border-top:1px solid;border-top-color:", ";padding:", "px;text-align:right;.dot-icon{transform:rotate(0deg);-o-transition:all cubic-bezier(0.4,0,0.2,1) 0.3s;-moz-transition:all cubic-bezier(0.4,0,0.2,1) 0.3s;-webkit-transition:all cubic-bezier(0.4,0,0.2,1) 0.3s;transition:all cubic-bezier(0.4,0,0.2,1) 0.3s;}}.powered-by{border-top:1px solid;border-top-color:", ";color:", ";display:flex;flex-direction:column;flex-shrink:0;font-size:12px;overflow:hidden;margin:", ";padding:", "px;p.desc{white-space:nowrap;}.company-name{margin-top:", "px;}.d-icon{display:none;}}&.collapsed{overflow:hidden;padding:", ";width:58px;-o-transition:all cubic-bezier(0.4,0,0.6,1) 0.3s;-moz-transition:all cubic-bezier(0.4,0,0.6,1) 0.3s;-webkit-transition:all cubic-bezier(0.4,0,0.6,1) 0.3s;transition:all cubic-bezier(0.4,0,0.6,1) 0.3s;header .dot-app-logo{text-align:center;}ul.side-nav{width:56px;li.MuiListSubheader-root .MuiTypography-root{opacity:0;}.dot-list-item{margin-left:0;.dot-icon{margin-left:", "px;}}.toggle-nav{align-self:center;}}.go-back .dot-icon{margin:", ";}.go-back .MuiTypography-root,.MuiListItem-divider .dot-list-item-link,.dot-drawer{display:none;}.powered-by{align-items:center;.company-name,p.desc{display:none;}.d-icon{display:block;}}}}"], rootClassName$w, theme.palette.product === 'agility' ? theme.palette.layer.n50 : theme.palette.grey[50], theme.palette.product === 'agility' ? theme.palette.agilityInterface.sideNavBorder : theme.palette.grey[100], theme.palette.product === 'agility' && '0 0 5px rgba(0, 0, 0, 0.15)', theme.palette.product === 'agility' ? theme.palette.layer.n700 : theme.palette.grey[700], theme.palette.product === 'agility' && theme.spacing(2) + "px", theme.palette.product === 'agility' ? theme.palette.agilityInterface.sideNavBorder : theme.palette.grey[100], theme.palette.product === 'agility' && theme.spacing(1) + "px", theme.palette.product === 'agililty' ? theme.spacing(0, 0, 1) : theme.spacing(1, 2), theme.spacing(1), theme.palette.product === 'agility' ? theme.palette.agilityInterface.sideNavBorder : theme.palette.grey[100], theme.spacing(2), theme.palette.grey[100], theme.palette.product === 'agility' ? theme.palette.agilityInterface.sideNavBorder : theme.palette.grey[100], theme.palette.product === 'agility' ? theme.spacing(2, 0) : theme.spacing(1, 0), theme.palette.product === 'agility' ? theme.palette.agilityInterface.sideNavBorder : theme.palette.grey[100], theme.spacing(0, 0, 1), nestedDrawerClassName, theme.palette.product === 'agility' ? theme.palette.agilityInterface.sideNavBorder : theme.palette.grey[100], theme.palette.product === 'agility' && '10px', theme.palette.product === 'agility' && 'none', theme.palette.product === 'agility' && theme.palette.agilityInterface.sideNavSubHeaderText, theme.palette.product === 'agility' && '11px', theme.palette.product === 'agility' && '10px 0 0', theme.palette.product === 'agility' && '0 8px', listItemRootClass, theme.spacing(2), theme.palette.product === 'agility' ? '40px' : '44px', theme.palette.product === 'agility' && theme.spacing(1) + "px", theme.palette.product === 'agility' && 'transparent', theme.palette.product === 'agility' && theme.palette.agilityInterface.sideNavHoverText, theme.palette.product === 'agility' && theme.palette.agilityInterface.sideNavHoverBg, theme.palette.product === 'agility' ? "1px solid " + theme.palette.agilityInterface.sideNavHoverBorder : 'none', theme.palette.product === 'agility' && '4px', theme.palette.product === 'agility' && theme.palette.agilityInterface.sideNavHoverBg, theme.palette.product === 'agility' && 'none', theme.spacing(1), theme.palette.layer.n0, theme.palette.layer.n900, theme.palette.product === 'agility' ? theme.palette.agilityInterface.sideNavBorder : theme.palette.grey[100], theme.spacing(1), theme.palette.product === 'agility' ? theme.palette.agilityInterface.sideNavBorder : theme.palette.grey[100], theme.palette.grey[400], theme.palette.product !== 'agility' && theme.spacing(0, 1), theme.spacing(1), theme.spacing(1), theme.palette.product === 'agility' && theme.spacing(2, 0), theme.spacing(1), theme.spacing(0, 1));
1904
1904
  });
1905
1905
 
1906
1906
  var Brand = function Brand(_ref) {
@@ -2673,8 +2673,8 @@ var _templateObject$t;
2673
2673
  var rootClassName$q = 'dot-badge';
2674
2674
  var StyledBadge = styled(Badge)(_templateObject$t || (_templateObject$t = _taggedTemplateLiteralLoose(["\n ", "\n"])), function () {
2675
2675
  return css(["&.", "{.MuiBadge-badge{background-color:", ";}}"], rootClassName$q, function (_ref) {
2676
- var badgeColor = _ref.badgeColor;
2677
- return badgeColor;
2676
+ var $badgeColor = _ref.$badgeColor;
2677
+ return $badgeColor;
2678
2678
  });
2679
2679
  });
2680
2680
 
@@ -2688,12 +2688,12 @@ var DotBadge = function DotBadge(_ref) {
2688
2688
  overlap = _ref.overlap;
2689
2689
  var rootClasses = useStylesWithRootClass(rootClassName$q, className);
2690
2690
  return /*#__PURE__*/React__default.createElement(StyledBadge, {
2691
+ "$badgeColor": badgeColor,
2691
2692
  anchorOrigin: {
2692
2693
  vertical: 'top',
2693
2694
  horizontal: 'right'
2694
2695
  },
2695
2696
  "aria-label": ariaLabel,
2696
- badgeColor: badgeColor,
2697
2697
  classes: {
2698
2698
  root: rootClasses
2699
2699
  },
@@ -3621,9 +3621,8 @@ var DotForm = function DotForm(_ref) {
3621
3621
 
3622
3622
  var _templateObject$d;
3623
3623
  var rootClassName$d = 'dot-dynamic-form';
3624
- var StyledDynamicForm = styled.div(_templateObject$d || (_templateObject$d = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
3625
- var theme = _ref.theme;
3626
- return css(["&.", "{margin:", "px;}"], rootClassName$d, theme.spacing(2));
3624
+ var StyledDynamicForm = styled(DotForm)(_templateObject$d || (_templateObject$d = _taggedTemplateLiteralLoose(["\n ", "\n"])), function () {
3625
+ return css(["&.", "{}"], rootClassName$d);
3627
3626
  });
3628
3627
 
3629
3628
  var DATA_CONTROLS = ['dot-autocomplete', 'dot-checkbox', 'dot-checkbox-group', 'dot-input-select', 'dot-input-text', 'dot-radio-group', 'dot-switch'];
@@ -3659,15 +3658,45 @@ var checkIfHiddenControl = function checkIfHiddenControl(hidden, formValues) {
3659
3658
  return false;
3660
3659
  }
3661
3660
  };
3661
+ var checkIfDisabledControl = function checkIfDisabledControl(disabled, formValues, isFormValid) {
3662
+ if (!disabled) return false;
3663
+ if (typeof disabled === 'boolean') return disabled;
3664
+
3665
+ try {
3666
+ return disabled(formValues, isFormValid);
3667
+ } catch (e) {
3668
+ return false;
3669
+ }
3670
+ };
3671
+
3672
+ var getInitialValueFromControl = function getInitialValueFromControl(_ref) {
3673
+ var controlType = _ref.controlType,
3674
+ initialValue = _ref.initialValue;
3675
+ // Skip non-data controls (ignore buttons and other non-relevant elements)
3676
+ // or hidden elements
3677
+ if (!DATA_CONTROLS.includes(controlType)) return;
3678
+ return initialValue ? initialValue : undefined;
3679
+ };
3680
+
3662
3681
  var getFormDataFromInitialValues = function getFormDataFromInitialValues(config) {
3663
3682
  var formValues = {};
3664
- config.controls.forEach(function (_ref) {
3665
- var controlName = _ref.controlName,
3666
- initialValue = _ref.initialValue,
3667
- controlType = _ref.controlType;
3668
- // Skip non-data controls (ignore buttons and other non-relevant elements)
3669
- // or hidden elements
3683
+ config.controls.forEach(function (control) {
3684
+ var controlName = control.controlName,
3685
+ formSection = control.formSection,
3686
+ controlType = control.controlType; // Check if there are section controls and grab initial values from those
3687
+
3688
+ if (formSection && formSection.sectionControls) {
3689
+ formSection.sectionControls.forEach(function (formSectionControl) {
3690
+ var sectionControlName = formSectionControl.controlName,
3691
+ sectionControlType = formSectionControl.controlType;
3692
+ if (!DATA_CONTROLS.includes(sectionControlType)) return;
3693
+ var sectionControlInitialValue = getInitialValueFromControl(formSectionControl);
3694
+ formValues[sectionControlName] = sectionControlInitialValue ? sectionControlInitialValue : undefined;
3695
+ });
3696
+ }
3697
+
3670
3698
  if (!DATA_CONTROLS.includes(controlType)) return;
3699
+ var initialValue = getInitialValueFromControl(control);
3671
3700
  formValues[controlName] = initialValue ? initialValue : undefined;
3672
3701
  });
3673
3702
  return formValues;
@@ -3838,7 +3867,9 @@ var DotInputText = function DotInputText(_ref) {
3838
3867
  _ref$multiline = _ref.multiline,
3839
3868
  multiline = _ref$multiline === void 0 ? false : _ref$multiline,
3840
3869
  name = _ref.name,
3870
+ onBlur = _ref.onBlur,
3841
3871
  onChange = _ref.onChange,
3872
+ onFocus = _ref.onFocus,
3842
3873
  placeholder = _ref.placeholder,
3843
3874
  _ref$readOnly = _ref.readOnly,
3844
3875
  readOnly = _ref$readOnly === void 0 ? false : _ref$readOnly,
@@ -3935,7 +3966,9 @@ var DotInputText = function DotInputText(_ref) {
3935
3966
  label: label,
3936
3967
  multiline: multiline,
3937
3968
  name: name,
3969
+ onBlur: onBlur,
3938
3970
  onChange: hasDebounce ? handleChange : onChange,
3971
+ onFocus: onFocus,
3939
3972
  placeholder: placeholder,
3940
3973
  required: required,
3941
3974
  rows: multiline ? rows : null,
@@ -3965,7 +3998,9 @@ var DotInputSelect = function DotInputSelect(_ref) {
3965
3998
  inputRef = _ref.inputRef,
3966
3999
  label = _ref.label,
3967
4000
  name = _ref.name,
4001
+ onBlur = _ref.onBlur,
3968
4002
  onChange = _ref.onChange,
4003
+ onFocus = _ref.onFocus,
3969
4004
  _ref$options = _ref.options,
3970
4005
  options = _ref$options === void 0 ? [] : _ref$options,
3971
4006
  required = _ref.required,
@@ -4006,7 +4041,9 @@ var DotInputSelect = function DotInputSelect(_ref) {
4006
4041
  label: label,
4007
4042
  multiline: false,
4008
4043
  name: name,
4044
+ onBlur: onBlur,
4009
4045
  onChange: onChange,
4046
+ onFocus: onFocus,
4010
4047
  required: required,
4011
4048
  select: true,
4012
4049
  SelectProps: {
@@ -4024,10 +4061,64 @@ var DotInputSelect = function DotInputSelect(_ref) {
4024
4061
  };
4025
4062
 
4026
4063
  var _templateObject$c;
4027
- var rootClassName$c = 'dot-radio';
4028
- var StyledRadioButton = styled(Radio)(_templateObject$c || (_templateObject$c = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
4064
+ var rootClassName$c = 'dot-progress-button';
4065
+ var StyledProgressButton = styled(DotButton)(_templateObject$c || (_templateObject$c = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
4066
+ var theme = _ref.theme;
4067
+ return css(["&.", "{.hidden{visibility:hidden;}.progress-circle{color:", ";position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;}}"], rootClassName$c, theme.palette.layer.n300);
4068
+ });
4069
+
4070
+ var SPINNER_DEFAULT_SIZE = 20;
4071
+ var SPINNER_LARGE_SIZE = 24;
4072
+ var DotProgressButton = function DotProgressButton(_ref) {
4073
+ var ariaLabel = _ref.ariaLabel,
4074
+ children = _ref.children,
4075
+ className = _ref.className,
4076
+ dataTestId = _ref['data-testid'],
4077
+ _ref$disabled = _ref.disabled,
4078
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
4079
+ _ref$disableRipple = _ref.disableRipple,
4080
+ disableRipple = _ref$disableRipple === void 0 ? false : _ref$disableRipple,
4081
+ _ref$fullWidth = _ref.fullWidth,
4082
+ fullWidth = _ref$fullWidth === void 0 ? false : _ref$fullWidth,
4083
+ _ref$isLoading = _ref.isLoading,
4084
+ isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
4085
+ _ref$isSubmit = _ref.isSubmit,
4086
+ isSubmit = _ref$isSubmit === void 0 ? false : _ref$isSubmit,
4087
+ onClick = _ref.onClick,
4088
+ _ref$size = _ref.size,
4089
+ size = _ref$size === void 0 ? 'medium' : _ref$size,
4090
+ tooltip = _ref.tooltip,
4091
+ _ref$type = _ref.type,
4092
+ type = _ref$type === void 0 ? 'primary' : _ref$type;
4093
+ var rootClasses = useStylesWithRootClass(rootClassName$c, className);
4094
+ var isButtonDisabled = disabled || isLoading;
4095
+ var titleClasses = useStylesWithRootClass(isLoading ? 'hidden' : '');
4096
+ var progressCircleSize = size === 'large' ? SPINNER_LARGE_SIZE : SPINNER_DEFAULT_SIZE;
4097
+ return /*#__PURE__*/React__default.createElement(StyledProgressButton, {
4098
+ ariaLabel: ariaLabel,
4099
+ className: rootClasses,
4100
+ "data-testid": dataTestId,
4101
+ disableRipple: disableRipple,
4102
+ disabled: isButtonDisabled,
4103
+ fullWidth: fullWidth,
4104
+ isSubmit: isSubmit,
4105
+ onClick: onClick,
4106
+ size: size,
4107
+ tooltip: tooltip,
4108
+ type: type
4109
+ }, /*#__PURE__*/React__default.createElement("div", {
4110
+ className: titleClasses
4111
+ }, children), isLoading && /*#__PURE__*/React__default.createElement(DotProgress, {
4112
+ className: "progress-circle",
4113
+ size: progressCircleSize
4114
+ }));
4115
+ };
4116
+
4117
+ var _templateObject$b;
4118
+ var rootClassName$b = 'dot-radio';
4119
+ var StyledRadioButton = styled(Radio)(_templateObject$b || (_templateObject$b = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
4029
4120
  _ref.theme;
4030
- return css(["{&.", "{padding:8px;}"], rootClassName$c);
4121
+ return css(["{&.", "{padding:8px;}"], rootClassName$b);
4031
4122
  });
4032
4123
 
4033
4124
  function DotRadioButton(_ref) {
@@ -4060,7 +4151,7 @@ function DotRadioButton(_ref) {
4060
4151
  control: /*#__PURE__*/React__default.createElement(StyledRadioButton, {
4061
4152
  "aria-label": ariaLabel,
4062
4153
  classes: {
4063
- root: rootClassName$c
4154
+ root: rootClassName$b
4064
4155
  },
4065
4156
  checked: checked,
4066
4157
  color: "primary",
@@ -4160,9 +4251,9 @@ var DotRadioGroup = function DotRadioGroup(_ref) {
4160
4251
  }, renderOptions), helperText && /*#__PURE__*/React__default.createElement(FormHelperText, null, helperText)));
4161
4252
  };
4162
4253
 
4163
- var _templateObject$b;
4164
- var rootClassName$b = 'dot-switch';
4165
- var StyledSwitch = styled(Switch)(_templateObject$b || (_templateObject$b = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
4254
+ var _templateObject$a;
4255
+ var rootClassName$a = 'dot-switch';
4256
+ var StyledSwitch = styled(Switch)(_templateObject$a || (_templateObject$a = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
4166
4257
  var theme = _ref.theme;
4167
4258
  return css(["{&.dot-switch{span.Mui-disabled{color:", ";}.MuiSwitch-switchBase:not(.Mui-checked):not(.Mui-disabled){color:", ";}}"], theme.palette.grey[200], theme.palette.background["default"]);
4168
4259
  });
@@ -4184,7 +4275,7 @@ var DotSwitch = function DotSwitch(_ref) {
4184
4275
  onChange = _ref.onChange,
4185
4276
  _ref$size = _ref.size,
4186
4277
  size = _ref$size === void 0 ? 'medium' : _ref$size;
4187
- var rootClasses = useStylesWithRootClass(rootClassName$b, className);
4278
+ var rootClasses = useStylesWithRootClass(rootClassName$a, className);
4188
4279
 
4189
4280
  var handleChange = function handleChange(event) {
4190
4281
  onChange && onChange(event);
@@ -4213,50 +4304,74 @@ var DotSwitch = function DotSwitch(_ref) {
4213
4304
  });
4214
4305
  };
4215
4306
 
4307
+ var getInitialStateFromControl = function getInitialStateFromControl(_ref, liveValidation, formValues) {
4308
+ var hidden = _ref.hidden,
4309
+ initialValue = _ref.initialValue,
4310
+ controlType = _ref.controlType,
4311
+ validation = _ref.validation;
4312
+ _ref.formSection;
4313
+ // Skip non-data controls (ignore buttons and other non-relevant elements)
4314
+ // or hidden elements
4315
+ if (!DATA_CONTROLS.includes(controlType)) return;
4316
+ var formStateItem = Object.assign({}, INITIAL_STATE_ITEM);
4317
+ if (hidden) formStateItem.hidden = hidden;
4318
+
4319
+ if (initialValue) {
4320
+ formStateItem.value = initialValue;
4321
+
4322
+ if (liveValidation) {
4323
+ var isHidden = checkIfHiddenControl(hidden, formValues);
4324
+ formStateItem.isTouched = true; // Since it is hidden field we will mark valid field to true so that is doesn't
4325
+ // prevent form submission
4326
+
4327
+ if (isHidden) {
4328
+ formStateItem.isValid = true;
4329
+ } else {
4330
+ var fieldValidation = getFieldValidation(initialValue, validation, formValues);
4331
+ formStateItem.isValid = fieldValidation.isValid;
4332
+ formStateItem.errorMessage = fieldValidation.errorMessage;
4333
+ }
4334
+ }
4335
+ } // If no validation always set valid to true
4336
+
4337
+
4338
+ if (!validation || DATA_CONTROLS_WITHOUT_VALIDATION.includes(controlType)) {
4339
+ // Set always to valid for now
4340
+ formStateItem.isValid = true;
4341
+ }
4342
+
4343
+ return formStateItem;
4344
+ };
4216
4345
  var getInitialFormState = function getInitialFormState(config, liveValidation) {
4217
4346
  var formValues = getFormDataFromInitialValues(config);
4218
4347
  var initialState = {
4219
4348
  data: {},
4220
4349
  isValid: false
4221
4350
  };
4222
- config.controls.forEach(function (_ref) {
4223
- var controlName = _ref.controlName,
4224
- hidden = _ref.hidden,
4225
- initialValue = _ref.initialValue,
4226
- controlType = _ref.controlType,
4227
- validation = _ref.validation;
4228
- // Skip non-data controls (ignore buttons and other non-relevant elements)
4229
- // or hidden elements
4230
- if (!DATA_CONTROLS.includes(controlType)) return;
4231
- initialState.data[controlName] = Object.assign({}, INITIAL_STATE_ITEM);
4232
- if (hidden) initialState.data[controlName].hidden = hidden;
4233
-
4234
- if (initialValue) {
4235
- initialState.data[controlName].value = initialValue;
4236
-
4237
- if (liveValidation) {
4238
- var isHidden = checkIfHiddenControl(hidden, formValues);
4239
- initialState.data[controlName].isTouched = true; // Since it is hidden field we will mark valid field to true so that is doesn't
4240
- // prevent form submission
4241
-
4242
- if (isHidden) {
4243
- initialState.data[controlName].isValid = true;
4244
- } else {
4245
- var fieldValidation = getFieldValidation(initialValue, validation, formValues);
4246
- initialState.data[controlName].isValid = fieldValidation.isValid;
4247
- initialState.data[controlName].errorMessage = fieldValidation.errorMessage;
4248
- }
4249
- }
4250
- } // If no validation always set valid to true
4251
-
4252
-
4253
- if (!validation || DATA_CONTROLS_WITHOUT_VALIDATION.includes(controlType)) {
4254
- // Set always to valid for now
4255
- initialState.data[controlName].isValid = true;
4351
+ config.controls.forEach(function (control) {
4352
+ var formSection = control.formSection; // Check if there are form section controls and grab initial state from those
4353
+
4354
+ if (formSection && formSection.sectionControls) {
4355
+ formSection.sectionControls.forEach(function (formSectionControl) {
4356
+ var formSectionControlName = formSectionControl.controlName;
4357
+ var sectionFormStateItem = getInitialStateFromControl(formSectionControl, liveValidation, formValues);
4358
+ if (!sectionFormStateItem) return;
4359
+ initialState.data[formSectionControlName] = sectionFormStateItem;
4360
+ });
4256
4361
  }
4362
+
4363
+ var controlName = control.controlName;
4364
+ var formStateItem = getInitialStateFromControl(control, liveValidation, formValues);
4365
+ if (!formStateItem) return;
4366
+ initialState.data[controlName] = formStateItem;
4257
4367
  });
4258
4368
  return initialState;
4259
4369
  };
4370
+ var getControlClickHandler = function getControlClickHandler(formValues, onControlClick) {
4371
+ return onControlClick ? function () {
4372
+ return onControlClick(formValues);
4373
+ } : undefined;
4374
+ };
4260
4375
  var buildInputTextControl = function buildInputTextControl(_ref2) {
4261
4376
  var controlName = _ref2.controlName,
4262
4377
  controlProps = _ref2.controlProps,
@@ -4401,19 +4516,48 @@ var buildSwitchControl = function buildSwitchControl(_ref8) {
4401
4516
  var buildButtonControl = function buildButtonControl(_ref9) {
4402
4517
  var controlProps = _ref9.controlProps,
4403
4518
  disabled = _ref9.disabled,
4404
- index = _ref9.index;
4519
+ index = _ref9.index,
4520
+ handleClick = _ref9.handleClick;
4405
4521
  var props = controlProps;
4522
+ var onClick = props.onClick;
4523
+ var handleButtonClick = onClick || handleClick ? function (e) {
4524
+ var _a;
4525
+
4526
+ (_a = props.onClick) === null || _a === void 0 ? void 0 : _a.call(props, e);
4527
+ handleClick === null || handleClick === void 0 ? void 0 : handleClick();
4528
+ } : undefined;
4406
4529
  return /*#__PURE__*/React__default.createElement(DotButton, Object.assign({
4407
4530
  key: index
4408
4531
  }, props, {
4409
- disabled: disabled
4532
+ disabled: disabled,
4533
+ onClick: handleButtonClick
4410
4534
  }), props.children);
4411
4535
  };
4412
- var buildResetControl = function buildResetControl(_ref10) {
4536
+ var buildProgressButtonControl = function buildProgressButtonControl(_ref10) {
4413
4537
  var controlProps = _ref10.controlProps,
4414
4538
  disabled = _ref10.disabled,
4415
- handleClick = _ref10.handleClick,
4416
- index = _ref10.index;
4539
+ index = _ref10.index,
4540
+ handleClick = _ref10.handleClick;
4541
+ var props = controlProps;
4542
+ var onClick = props.onClick;
4543
+ var handleButtonClick = onClick || handleClick ? function (e) {
4544
+ var _a;
4545
+
4546
+ (_a = props.onClick) === null || _a === void 0 ? void 0 : _a.call(props, e);
4547
+ handleClick === null || handleClick === void 0 ? void 0 : handleClick();
4548
+ } : undefined;
4549
+ return /*#__PURE__*/React__default.createElement(DotProgressButton, Object.assign({
4550
+ key: index
4551
+ }, props, {
4552
+ disabled: disabled,
4553
+ onClick: handleButtonClick
4554
+ }));
4555
+ };
4556
+ var buildResetControl = function buildResetControl(_ref11) {
4557
+ var controlProps = _ref11.controlProps,
4558
+ disabled = _ref11.disabled,
4559
+ handleClick = _ref11.handleClick,
4560
+ index = _ref11.index;
4417
4561
  var props = controlProps;
4418
4562
  return /*#__PURE__*/React__default.createElement(DotButton, Object.assign({
4419
4563
  key: index
@@ -4427,12 +4571,12 @@ var buildResetControl = function buildResetControl(_ref10) {
4427
4571
  }
4428
4572
  }), props.children);
4429
4573
  };
4430
- var buildSubmitControl = function buildSubmitControl(_ref11) {
4431
- var controlProps = _ref11.controlProps,
4432
- disabled = _ref11.disabled,
4433
- formState = _ref11.formState,
4434
- index = _ref11.index,
4435
- liveValidation = _ref11.liveValidation;
4574
+ var buildSubmitControl = function buildSubmitControl(_ref12) {
4575
+ var controlProps = _ref12.controlProps,
4576
+ disabled = _ref12.disabled,
4577
+ formState = _ref12.formState,
4578
+ index = _ref12.index,
4579
+ liveValidation = _ref12.liveValidation;
4436
4580
  var props = controlProps;
4437
4581
  var isDisabled = disabled || liveValidation && !formState.isValid;
4438
4582
  return /*#__PURE__*/React__default.createElement(DotButton, Object.assign({
@@ -4442,19 +4586,38 @@ var buildSubmitControl = function buildSubmitControl(_ref11) {
4442
4586
  isSubmit: true
4443
4587
  }), props.children);
4444
4588
  };
4589
+ var buildProgressSubmitControl = function buildProgressSubmitControl(_ref13) {
4590
+ var controlProps = _ref13.controlProps,
4591
+ disabled = _ref13.disabled,
4592
+ formState = _ref13.formState,
4593
+ index = _ref13.index,
4594
+ liveValidation = _ref13.liveValidation;
4595
+ var props = controlProps;
4596
+ var isDisabled = disabled || liveValidation && !formState.isValid;
4597
+ return /*#__PURE__*/React__default.createElement(DotProgressButton, Object.assign({
4598
+ key: index
4599
+ }, props, {
4600
+ disabled: isDisabled,
4601
+ isSubmit: true
4602
+ }));
4603
+ };
4445
4604
 
4446
4605
  var DotDynamicForm = function DotDynamicForm(_ref) {
4447
4606
  var ariaLabel = _ref.ariaLabel,
4448
4607
  className = _ref.className,
4449
4608
  dataTestId = _ref['data-testid'],
4450
4609
  config = _ref.config,
4451
- disabled = _ref.disabled,
4610
+ isFormDisabled = _ref.disabled,
4452
4611
  _ref$liveValidation = _ref.liveValidation,
4453
4612
  liveValidation = _ref$liveValidation === void 0 ? true : _ref$liveValidation,
4454
4613
  onChange = _ref.onChange,
4455
4614
  onSubmit = _ref.onSubmit;
4456
- var rootClasses = useStylesWithRootClass(rootClassName$d, className);
4457
- var initialFormState = getInitialFormState(config, liveValidation);
4615
+ var rootClasses = useStylesWithRootClass(rootClassName$d, className); // Memoize this operation so that is doesn't get executed each time this
4616
+ // component re-renders
4617
+
4618
+ var initialFormState = useMemo(function () {
4619
+ return getInitialFormState(config, liveValidation);
4620
+ }, [config, liveValidation, getInitialFormState]);
4458
4621
 
4459
4622
  var _useState = useState(initialFormState),
4460
4623
  formState = _useState[0],
@@ -4599,22 +4762,34 @@ var DotDynamicForm = function DotDynamicForm(_ref) {
4599
4762
  return setFormState(initialFormState);
4600
4763
  };
4601
4764
 
4602
- var buildFormControls = function buildFormControls() {
4603
- return config.controls.map(function (_ref3, index) {
4765
+ var buildFormControls = function buildFormControls(controls, startIndex) {
4766
+ if (startIndex === void 0) {
4767
+ startIndex = 0;
4768
+ }
4769
+
4770
+ if (!controls || !controls.length) return;
4771
+ return controls.map(function (_ref3, index) {
4604
4772
  var controlName = _ref3.controlName,
4605
4773
  controlType = _ref3.controlType,
4606
4774
  _ref3$controlProps = _ref3.controlProps,
4607
4775
  controlProps = _ref3$controlProps === void 0 ? {} : _ref3$controlProps,
4608
4776
  customElement = _ref3.customElement,
4777
+ disabled = _ref3.disabled,
4609
4778
  hidden = _ref3.hidden;
4610
4779
  _ref3.initialValue;
4611
- var inputControlName = controlName || "control-" + index;
4780
+ var formSection = _ref3.formSection,
4781
+ onControlClick = _ref3.onControlClick;
4782
+ var elementIndex = startIndex + index;
4783
+ var inputControlName = controlName || "control-" + elementIndex;
4612
4784
  var formValues = getOutputFormData(formState);
4613
- if (checkIfHiddenControl(hidden, formValues)) return '';
4785
+ if (checkIfHiddenControl(hidden, formValues)) return ''; // Control can be disabled when: 1) whole form is disabled, 2.) control is disabled via config prop
4786
+ // 3.) control is disabled via its own `disable` control prop
4787
+
4788
+ var isDisabled = isFormDisabled || checkIfDisabledControl(disabled, formValues, formState.isValid) || 'disabled' in controlProps && controlProps.disabled;
4614
4789
  var control = {
4615
4790
  controlProps: controlProps,
4616
- disabled: disabled,
4617
- index: index,
4791
+ disabled: isDisabled,
4792
+ index: elementIndex,
4618
4793
  liveValidation: liveValidation
4619
4794
  };
4620
4795
  var commonControlledInputArgs = Object.assign(Object.assign({}, control), {
@@ -4674,7 +4849,19 @@ var DotDynamicForm = function DotDynamicForm(_ref) {
4674
4849
 
4675
4850
  case 'dot-button':
4676
4851
  {
4677
- return buildButtonControl(Object.assign({}, control));
4852
+ var handleClick = getControlClickHandler(formValues, onControlClick);
4853
+ return buildButtonControl(Object.assign(Object.assign({}, control), {
4854
+ handleClick: handleClick
4855
+ }));
4856
+ }
4857
+
4858
+ case 'dot-progress-button':
4859
+ {
4860
+ var _handleClick = getControlClickHandler(formValues, onControlClick);
4861
+
4862
+ return buildProgressButtonControl(Object.assign(Object.assign({}, control), {
4863
+ handleClick: _handleClick
4864
+ }));
4678
4865
  }
4679
4866
 
4680
4867
  case 'dot-reset':
@@ -4691,13 +4878,31 @@ var DotDynamicForm = function DotDynamicForm(_ref) {
4691
4878
  }));
4692
4879
  }
4693
4880
 
4881
+ case 'dot-progress-submit':
4882
+ {
4883
+ return buildProgressSubmitControl(Object.assign(Object.assign({}, control), {
4884
+ formState: formState
4885
+ }));
4886
+ }
4887
+
4694
4888
  case 'custom-element':
4695
4889
  {
4696
4890
  return /*#__PURE__*/React__default.createElement(Fragment, {
4697
- key: index
4891
+ key: elementIndex
4698
4892
  }, customElement);
4699
4893
  }
4700
4894
 
4895
+ case 'dot-form-section':
4896
+ {
4897
+ var FormSectionComponent = formSection.FormSectionComponent,
4898
+ sectionControls = formSection.sectionControls;
4899
+ var sectionStartIndex = elementIndex + 1;
4900
+ return /*#__PURE__*/React__default.createElement(FormSectionComponent, {
4901
+ key: elementIndex,
4902
+ sectionControls: buildFormControls(sectionControls, sectionStartIndex)
4903
+ });
4904
+ }
4905
+
4701
4906
  default:
4702
4907
  {
4703
4908
  return '';
@@ -4707,12 +4912,11 @@ var DotDynamicForm = function DotDynamicForm(_ref) {
4707
4912
  };
4708
4913
 
4709
4914
  return /*#__PURE__*/React__default.createElement(StyledDynamicForm, {
4710
- className: rootClasses,
4711
- "data-testid": dataTestId
4712
- }, /*#__PURE__*/React__default.createElement(DotForm, {
4713
4915
  ariaLabel: ariaLabel,
4916
+ className: rootClasses,
4917
+ "data-testid": dataTestId,
4714
4918
  onSubmit: handleFormSubmit
4715
- }, buildFormControls()));
4919
+ }, buildFormControls(config.controls));
4716
4920
  };
4717
4921
 
4718
4922
  /*! *****************************************************************************
@@ -4740,9 +4944,9 @@ function __awaiter(thisArg, _arguments, P, generator) {
4740
4944
  });
4741
4945
  }
4742
4946
 
4743
- var _templateObject$a;
4744
- var rootClassName$a = 'dot-inline-edit';
4745
- var StyledInlineEdit = styled.div(_templateObject$a || (_templateObject$a = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
4947
+ var _templateObject$9;
4948
+ var rootClassName$9 = 'dot-inline-edit';
4949
+ var StyledInlineEdit = styled.div(_templateObject$9 || (_templateObject$9 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
4746
4950
  var theme = _ref.theme;
4747
4951
  return css(["&.dot-inline-edit{color:", ";&:not(.disabled):not(.editing){&:hover,&:focus{.MuiInputAdornment-root{display:flex;}}}.MuiInputAdornment-root{display:none;}.editing-actions{display:flex;justify-content:flex-end;margin-top:", "px;.dot-icon-btn{background:", ";border:1px solid ", ";color:", ";margin-left:", "px;padding:", "px;&:hover{background:", ";}}}.inline-edit{&:hover,&:focus,&:active{cursor:pointer;}}.MuiOutlinedInput-adornedEnd{padding-right:0;margin-left:0;.dot-icon{height:auto;width:auto;}}}"], theme.palette.grey[700], theme.spacing(0.5), theme.palette.grey[0], theme.palette.grey[300], theme.palette.grey[700], theme.spacing(1), theme.spacing(0.25), theme.palette.grey[50]);
4748
4952
  });
@@ -4776,7 +4980,7 @@ var DotInlineEdit = function DotInlineEdit(_ref) {
4776
4980
  size = _ref$size === void 0 ? 'small' : _ref$size,
4777
4981
  _ref$value = _ref.value,
4778
4982
  value = _ref$value === void 0 ? '' : _ref$value;
4779
- var rootClasses = useStylesWithRootClass(rootClassName$a, className);
4983
+ var rootClasses = useStylesWithRootClass(rootClassName$9, className);
4780
4984
 
4781
4985
  var _useState = useState(false),
4782
4986
  editing = _useState[0],
@@ -4928,12 +5132,12 @@ var DotInlineEdit = function DotInlineEdit(_ref) {
4928
5132
  })));
4929
5133
  };
4930
5134
 
4931
- var _templateObject$9;
4932
- var rootClassName$9 = 'dot-navigation-rail';
4933
- var StyledNavigationRail = styled.div(_templateObject$9 || (_templateObject$9 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
5135
+ var _templateObject$8;
5136
+ var rootClassName$8 = 'dot-navigation-rail';
5137
+ var StyledNavigationRail = styled.div(_templateObject$8 || (_templateObject$8 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
4934
5138
  var theme = _ref.theme,
4935
5139
  railItemPosition = _ref.railItemPosition;
4936
- return css(["&.", "{background-color:", ";border-left:1px solid ", ";display:flex;flex-direction:column;justify-content:", ";padding:", ";width:72px;.rail-item-button{flex-basis:72px;border-radius:0;margin:0;padding:0;width:100%;white-space:normal;&.selected{background-color:", ";}&:focus-visible{background-color:", ";}.MuiButton-label{display:flex;flex-direction:column;word-break:break-word;}}}"], rootClassName$9, theme.palette.layer.n50, theme.palette.layer.n100, railItemPosition, theme.spacing(1, 0, 0), theme.palette.layer.n0, theme.palette.layer.n100);
5140
+ return css(["&.", "{background-color:", ";border-left:1px solid ", ";display:flex;flex-direction:column;justify-content:", ";padding:", ";width:72px;.rail-item-button{flex-basis:72px;border-radius:0;margin:0;padding:0;width:100%;white-space:normal;&.selected{background-color:", ";}&:focus-visible{background-color:", ";}.MuiButton-label{display:flex;flex-direction:column;word-break:break-word;}}}"], rootClassName$8, theme.palette.layer.n50, theme.palette.layer.n100, railItemPosition, theme.spacing(1, 0, 0), theme.palette.layer.n0, theme.palette.layer.n100);
4937
5141
  });
4938
5142
 
4939
5143
  var MAX_ALLOWED_ITEMS = 7;
@@ -4947,7 +5151,7 @@ var DotNavigationRail = function DotNavigationRail(_ref) {
4947
5151
  railItems = _ref.railItems,
4948
5152
  _ref$selectedIndex = _ref.selectedIndex,
4949
5153
  selectedIndex = _ref$selectedIndex === void 0 ? 0 : _ref$selectedIndex;
4950
- var rootClasses = useStylesWithRootClass(rootClassName$9, className);
5154
+ var rootClasses = useStylesWithRootClass(rootClassName$8, className);
4951
5155
 
4952
5156
  var _useState = useState(selectedIndex),
4953
5157
  selectedItemIndex = _useState[0],
@@ -4994,11 +5198,11 @@ var DotNavigationRail = function DotNavigationRail(_ref) {
4994
5198
  }, railItems && renderRailItems());
4995
5199
  };
4996
5200
 
4997
- var _templateObject$8;
4998
- var rootClassName$8 = 'dot-pill';
4999
- var StyledPill = styled(Chip)(_templateObject$8 || (_templateObject$8 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
5201
+ var _templateObject$7;
5202
+ var rootClassName$7 = 'dot-pill';
5203
+ var StyledPill = styled(Chip)(_templateObject$7 || (_templateObject$7 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
5000
5204
  var theme = _ref.theme;
5001
- return css(["&.", "{background-color:", ";color:", ";&.error{background-color:", ";color:", ";}&.success{background-color:", ";color:", ";}&.warning{background-color:", ";color:", ";}&.in-progress{background-color:", ";color:", ";}"], rootClassName$8, function (_ref2) {
5205
+ return css(["&.", "{background-color:", ";color:", ";&.error{background-color:", ";color:", ";}&.success{background-color:", ";color:", ";}&.warning{background-color:", ";color:", ";}&.in-progress{background-color:", ";color:", ";}"], rootClassName$7, function (_ref2) {
5002
5206
  var backgroundcolor = _ref2.backgroundcolor;
5003
5207
  return backgroundcolor ? backgroundcolor : theme.palette.product === 'agility' ? theme.palette.layer.n100 : theme.palette.grey[200];
5004
5208
  }, function (_ref3) {
@@ -5018,7 +5222,7 @@ var DotPill = function DotPill(_ref) {
5018
5222
  size = _ref$size === void 0 ? 'medium' : _ref$size,
5019
5223
  _ref$status = _ref.status,
5020
5224
  status = _ref$status === void 0 ? 'default' : _ref$status;
5021
- var rootClasses = useStylesWithRootClass(rootClassName$8, className, status);
5225
+ var rootClasses = useStylesWithRootClass(rootClassName$7, className, status);
5022
5226
  return /*#__PURE__*/React__default.createElement(StyledPill, {
5023
5227
  "aria-label": ariaLabel,
5024
5228
  backgroundcolor: backgroundcolor,
@@ -5033,11 +5237,11 @@ var DotPill = function DotPill(_ref) {
5033
5237
  });
5034
5238
  };
5035
5239
 
5036
- var _templateObject$7;
5037
- var rootClassName$7 = 'dot-skeleton';
5038
- var StyledSkeleton = styled(Skeleton)(_templateObject$7 || (_templateObject$7 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
5240
+ var _templateObject$6;
5241
+ var rootClassName$6 = 'dot-skeleton';
5242
+ var StyledSkeleton = styled(Skeleton)(_templateObject$6 || (_templateObject$6 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
5039
5243
  var theme = _ref.theme;
5040
- return css(["&.", "{background-color:", ";}"], rootClassName$7, theme.palette.grey[100]);
5244
+ return css(["&.", "{background-color:", ";}"], rootClassName$6, theme.palette.grey[100]);
5041
5245
  });
5042
5246
 
5043
5247
  var DotSkeleton = function DotSkeleton(_ref) {
@@ -5048,7 +5252,7 @@ var DotSkeleton = function DotSkeleton(_ref) {
5048
5252
  height = _ref.height,
5049
5253
  width = _ref.width,
5050
5254
  variant = _ref.variant;
5051
- var rootClasses = useStylesWithRootClass(rootClassName$7, className); // When we upgrade to Material UI v5 this must be removed!
5255
+ var rootClasses = useStylesWithRootClass(rootClassName$6, className); // When we upgrade to Material UI v5 this must be removed!
5052
5256
 
5053
5257
  var skeletonVariant = variant === 'circular' ? 'circle' : variant === 'rectangular' ? 'rect' : variant;
5054
5258
  return /*#__PURE__*/React__default.createElement(StyledSkeleton, {
@@ -5064,11 +5268,11 @@ var DotSkeleton = function DotSkeleton(_ref) {
5064
5268
  }, children);
5065
5269
  };
5066
5270
 
5067
- var _templateObject$6;
5068
- var rootClassName$6 = 'dot-snackbar';
5069
- var StyledSnackbar = styled(Snackbar)(_templateObject$6 || (_templateObject$6 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
5271
+ var _templateObject$5;
5272
+ var rootClassName$5 = 'dot-snackbar';
5273
+ var StyledSnackbar = styled(Snackbar)(_templateObject$5 || (_templateObject$5 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
5070
5274
  var theme = _ref.theme;
5071
- return css(["&.", "{.MuiSvgIcon-root{color:", ";}.MuiAlert-icon{padding:11px 0px;}.MuiAlert-message{padding:13px 0px;word-break:break-all;}&.MuiSnackbar-anchorOriginTopRight{top:0px;z-index:", ";}.MuiAlert-root{&.MuiAlert-standardInfo{background-color:", ";}&.MuiAlert-standardWarning{color:", ";.MuiSvgIcon-root{color:", ";}}max-width:500px;min-width:344px;color:", ";z-index:", ";position:relative;margin-top:108px;background-color:", ";@media (min-width:720px){.MuiAlert-root{top:112px;position:relative;}}}"], rootClassName$6, theme.palette.layer.n0, levelFourth, theme.palette.primary[500], theme.palette.grey[900], theme.palette.grey[900], theme.palette.layer.n0, levelFourth, function (props) {
5275
+ return css(["&.", "{.MuiSvgIcon-root{color:", ";}.MuiAlert-icon{padding:11px 0px;}.MuiAlert-message{padding:13px 0px;word-break:break-all;}&.MuiSnackbar-anchorOriginTopRight{top:0px;z-index:", ";}.MuiAlert-root{&.MuiAlert-standardInfo{background-color:", ";}&.MuiAlert-standardWarning{color:", ";.MuiSvgIcon-root{color:", ";}}max-width:500px;min-width:344px;color:", ";z-index:", ";position:relative;margin-top:108px;background-color:", ";@media (min-width:720px){.MuiAlert-root{top:112px;position:relative;}}}"], rootClassName$5, theme.palette.layer.n0, levelFourth, theme.palette.primary[500], theme.palette.grey[900], theme.palette.grey[900], theme.palette.layer.n0, levelFourth, function (props) {
5072
5276
  return theme.palette[props.severity].main;
5073
5277
  });
5074
5278
  });
@@ -5101,7 +5305,7 @@ var DotSnackbar = function DotSnackbar(_ref2) {
5101
5305
  onClose: onClose,
5102
5306
  action: action
5103
5307
  });
5104
- var rootClasses = useStylesWithRootClass(rootClassName$6, className);
5308
+ var rootClasses = useStylesWithRootClass(rootClassName$5, className);
5105
5309
  return /*#__PURE__*/React__default.createElement(StyledSnackbar, {
5106
5310
  anchorOrigin: {
5107
5311
  vertical: 'top',
@@ -5128,10 +5332,10 @@ var DotSnackbar = function DotSnackbar(_ref2) {
5128
5332
  }, children)));
5129
5333
  };
5130
5334
 
5131
- var _templateObject$5;
5132
- var rootClassName$5 = 'dot-snackbar-container';
5133
- var StyledSnackbarContainer = styled.div(_templateObject$5 || (_templateObject$5 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function () {
5134
- return css(["&.", "{position:absolute;top:0;width:250px;height:auto;right:0;& > div{position:relative;}}"], rootClassName$5);
5335
+ var _templateObject$4;
5336
+ var rootClassName$4 = 'dot-snackbar-container';
5337
+ var StyledSnackbarContainer = styled.div(_templateObject$4 || (_templateObject$4 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function () {
5338
+ return css(["&.", "{position:absolute;top:0;width:250px;height:auto;right:0;& > div{position:relative;}}"], rootClassName$4);
5135
5339
  });
5136
5340
 
5137
5341
  var DotSnackbarContext = /*#__PURE__*/createContext({
@@ -5155,10 +5359,10 @@ var DotSnackbarContainer = function DotSnackbarContainer() {
5155
5359
  }
5156
5360
 
5157
5361
  return /*#__PURE__*/React__default.createElement(StyledSnackbarContainer, {
5158
- className: rootClassName$5
5362
+ className: rootClassName$4
5159
5363
  }, /*#__PURE__*/React__default.createElement("div", {
5160
- "data-testid": rootClassName$5,
5161
- className: rootClassName$5
5364
+ "data-testid": rootClassName$4,
5365
+ className: rootClassName$4
5162
5366
  }, alerts.slice().reverse().map(function (alert) {
5163
5367
  return /*#__PURE__*/React__default.createElement(DotSnackbar, {
5164
5368
  key: alert.id,
@@ -5214,11 +5418,11 @@ var useDotSnackbarContext = function useDotSnackbarContext() {
5214
5418
  return useContext(DotSnackbarContext);
5215
5419
  };
5216
5420
 
5217
- var _templateObject$4, _templateObject2$1;
5218
- var rootClassName$4 = 'dot-split-button-group';
5219
- var StyledSplitButtonGroup = styled(ButtonGroup)(_templateObject$4 || (_templateObject$4 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
5421
+ var _templateObject$3, _templateObject2$1;
5422
+ var rootClassName$3 = 'dot-split-button-group';
5423
+ var StyledSplitButtonGroup = styled(ButtonGroup)(_templateObject$3 || (_templateObject$3 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
5220
5424
  var theme = _ref.theme;
5221
- return css(["&.", "{box-shadow:0px 3px 1px -2px rgb(0 0 0 / 20%),0px 2px 2px 0px rgb(0 0 0 / 14%),0px 1px 5px 0px rgb(0 0 0 / 12%);&.disabled{box-shadow:none;.dot-button{background:", ";border:1px solid ", ";}}&.outlined,&.text{box-shadow:none;.expand-button{border-left:none;}}&.outlined .dot-button{border-color:", ";}&.destructive .expand-button{border-left-color:", ";}.dot-button{box-shadow:none;margin:0;padding:", ";}.expand-button{border-left:1px solid ", ";&.Mui-disabled{border-left:0;}.MuiButton-label,.dot-icon{width:14px;height:14px;}}}"], rootClassName$4, theme.palette.grey['50'], theme.palette.grey['200'], theme.palette.grey['300'], theme.palette.error['800'], theme.spacing(0.75, 1.5), theme.palette.primary['800']);
5425
+ return css(["&.", "{box-shadow:0px 3px 1px -2px rgb(0 0 0 / 20%),0px 2px 2px 0px rgb(0 0 0 / 14%),0px 1px 5px 0px rgb(0 0 0 / 12%);&.disabled{box-shadow:none;.dot-button{background:", ";border:1px solid ", ";}}&.outlined,&.text{box-shadow:none;.expand-button{border-left:none;}}&.outlined .dot-button{border-color:", ";}&.destructive .expand-button{border-left-color:", ";}.dot-button{box-shadow:none;margin:0;padding:", ";}.expand-button{border-left:1px solid ", ";&.Mui-disabled{border-left:0;}.MuiButton-label,.dot-icon{width:14px;height:14px;}}}"], rootClassName$3, theme.palette.grey['50'], theme.palette.grey['200'], theme.palette.grey['300'], theme.palette.error['800'], theme.spacing(0.75, 1.5), theme.palette.primary['800']);
5222
5426
  });
5223
5427
  var StyledMenu$1 = styled(DotMenu)(_templateObject2$1 || (_templateObject2$1 = _taggedTemplateLiteralLoose(["\n &.dot-menu {\n z-index: ", ";\n }\n"])), levelTop);
5224
5428
 
@@ -5248,7 +5452,7 @@ var DotSplitButton = function DotSplitButton(_ref) {
5248
5452
  tooltip = _ref.tooltip,
5249
5453
  _ref$type = _ref.type,
5250
5454
  type = _ref$type === void 0 ? 'primary' : _ref$type;
5251
- var rootClasses = useStylesWithRootClass(rootClassName$4, className, type, disabled ? 'disabled' : '');
5455
+ var rootClasses = useStylesWithRootClass(rootClassName$3, className, type, disabled ? 'disabled' : '');
5252
5456
 
5253
5457
  var _useState = useState(false),
5254
5458
  open = _useState[0],
@@ -5322,11 +5526,11 @@ var DotSplitButton = function DotSplitButton(_ref) {
5322
5526
  }));
5323
5527
  };
5324
5528
 
5325
- var _templateObject$3, _templateObject2, _templateObject3;
5326
- var rootClassName$3 = 'dot-table';
5327
- var StyledPaper = styled(Paper)(_templateObject$3 || (_templateObject$3 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
5529
+ var _templateObject$2, _templateObject2, _templateObject3;
5530
+ var rootClassName$2 = 'dot-table';
5531
+ var StyledPaper = styled(Paper)(_templateObject$2 || (_templateObject$2 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
5328
5532
  var theme = _ref.theme;
5329
- return css(["&.", "{background:", ";border:1px solid ", ";&.loading{opacity:0.4;pointer-events:none;.dot-table-pagination{display:none;}}}"], rootClassName$3, theme.palette.product === 'agility' && theme.palette.layer.n50, theme.palette.product === 'agility' ? theme.palette.layer.n100 : theme.palette.grey[200]);
5533
+ return css(["&.", "{background:", ";border:1px solid ", ";&.loading{opacity:0.4;pointer-events:none;.dot-table-pagination{display:none;}}}"], rootClassName$2, theme.palette.product === 'agility' && theme.palette.layer.n50, theme.palette.product === 'agility' ? theme.palette.layer.n100 : theme.palette.grey[200]);
5330
5534
  });
5331
5535
  var StyledTableContainer = styled(TableContainer)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref2) {
5332
5536
  var theme = _ref2.theme;
@@ -5639,11 +5843,11 @@ var DotHeaderCell = function DotHeaderCell(_ref2) {
5639
5843
  }, value);
5640
5844
  };
5641
5845
 
5642
- var _templateObject$2;
5643
- var rootClassName$2 = 'dot-table-pagination';
5644
- var StyledTablePagination = styled(TablePagination)(_templateObject$2 || (_templateObject$2 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
5846
+ var _templateObject$1;
5847
+ var rootClassName$1 = 'dot-table-pagination';
5848
+ var StyledTablePagination = styled(TablePagination)(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
5645
5849
  var theme = _ref.theme;
5646
- return css(["&.", "{border-top:1px solid ", ";}"], rootClassName$2, theme.palette.product === 'agility' ? theme.palette.layer.n100 : theme.palette.grey[200]);
5850
+ return css(["&.", "{border-top:1px solid ", ";}"], rootClassName$1, theme.palette.product === 'agility' ? theme.palette.layer.n100 : theme.palette.grey[200]);
5647
5851
  });
5648
5852
 
5649
5853
  var rowsPerPageOptions = [10, 25, 50, 100, 150, 200];
@@ -5660,7 +5864,7 @@ var DotTablePagination = function DotTablePagination(_ref) {
5660
5864
  page = _ref$page === void 0 ? 0 : _ref$page,
5661
5865
  _ref$rowsPerPage = _ref.rowsPerPage,
5662
5866
  rowsPerPage = _ref$rowsPerPage === void 0 ? 10 : _ref$rowsPerPage;
5663
- var rootClasses = useStylesWithRootClass(rootClassName$2, className);
5867
+ var rootClasses = useStylesWithRootClass(rootClassName$1, className);
5664
5868
 
5665
5869
  var handlePageChange = function handlePageChange(event, newPage) {
5666
5870
  onChangePage && onChangePage(newPage);
@@ -5776,7 +5980,7 @@ var DotTable = function DotTable(_ref) {
5776
5980
  pageData = _useState5[0],
5777
5981
  setPageData = _useState5[1];
5778
5982
 
5779
- var rootClasses = useStylesWithRootClass(rootClassName$3, className, loading ? 'loading' : '');
5983
+ var rootClasses = useStylesWithRootClass(rootClassName$2, className, loading ? 'loading' : '');
5780
5984
 
5781
5985
  var updateData = function updateData(newOrder, newOrderBy, newPage, newRowsPerPage) {
5782
5986
  var newData = stableSort(data, getComparator(newOrder, newOrderBy));
@@ -5881,11 +6085,11 @@ var DotTable = function DotTable(_ref) {
5881
6085
  }));
5882
6086
  };
5883
6087
 
5884
- var _templateObject$1;
5885
- var rootClassName$1 = 'dot-tabs';
5886
- var StyledTabs = styled(Tabs)(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
6088
+ var _templateObject;
6089
+ var rootClassName = 'dot-tabs';
6090
+ var StyledTabs = styled(Tabs)(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
5887
6091
  var theme = _ref.theme;
5888
- return css(["&.", "{&.MuiTabs-root{width:100%;}.dot-tab-label-container{display:flex;.dot-tab-label{padding-top:", "px;}}.MuiTab-root{color:", ";max-width:360px;min-width:0;&:hover{background-color:", ";color:", ";}&.Mui-selected{color:", ";}&.Mui-disabled{color:", ";}&.MuiTab-textColorPrimary:hover{background-color:", ";}&.MuiTab-textColorSecondary:hover{background-color:", ";}}.MuiIcon-root{display:inline;padding-right:", "px;}.MuiTabs-indicator{background-color:", ";}}"], rootClassName$1, theme.spacing(0.5), theme.palette.product === 'agility' && theme.palette.layer.n700, theme.palette.product === 'agility' && theme.palette.agilityInterface.activeCardBg, theme.palette.product === 'agility' && agilityGreen, theme.palette.product === 'agility' && agilityGreen, theme.palette.product === 'agility' && theme.palette.agilityInterface.disabledText, theme.palette.product !== 'agility' && alpha(theme.palette.primary.main, 0.12), theme.palette.product !== 'agility' && alpha(theme.palette.secondary.main, 0.12), theme.spacing(0.5), theme.palette.product === 'agility' && agilityGreen);
6092
+ return css(["&.", "{&.MuiTabs-root{width:100%;}.dot-tab-label-container{display:flex;.dot-tab-label{padding-top:", "px;}}.MuiTab-root{color:", ";max-width:360px;min-width:0;&:hover{background-color:", ";color:", ";}&.Mui-selected{color:", ";}&.Mui-disabled{color:", ";}&.MuiTab-textColorPrimary:hover{background-color:", ";}&.MuiTab-textColorSecondary:hover{background-color:", ";}}.MuiIcon-root{display:inline;padding-right:", "px;}.MuiTabs-indicator{background-color:", ";}}"], rootClassName, theme.spacing(0.5), theme.palette.product === 'agility' && theme.palette.layer.n700, theme.palette.product === 'agility' && theme.palette.agilityInterface.activeCardBg, theme.palette.product === 'agility' && agilityGreen, theme.palette.product === 'agility' && agilityGreen, theme.palette.product === 'agility' && theme.palette.agilityInterface.disabledText, theme.palette.product !== 'agility' && alpha(theme.palette.primary.main, 0.12), theme.palette.product !== 'agility' && alpha(theme.palette.secondary.main, 0.12), theme.spacing(0.5), theme.palette.product === 'agility' && agilityGreen);
5889
6093
  });
5890
6094
 
5891
6095
  var DotTabs = function DotTabs(_ref) {
@@ -5908,7 +6112,7 @@ var DotTabs = function DotTabs(_ref) {
5908
6112
  value = _useState[0],
5909
6113
  setValue = _useState[1];
5910
6114
 
5911
- var rootClasses = useStylesWithRootClass(rootClassName$1, className); // eslint-disable-next-line @typescript-eslint/no-explicit-any
6115
+ var rootClasses = useStylesWithRootClass(rootClassName, className); // eslint-disable-next-line @typescript-eslint/no-explicit-any
5912
6116
 
5913
6117
  var handleChange = function handleChange(_event, val) {
5914
6118
  setValue(val);
@@ -5952,58 +6156,4 @@ var DotTabs = function DotTabs(_ref) {
5952
6156
  }, tabArray);
5953
6157
  };
5954
6158
 
5955
- var _templateObject;
5956
- var rootClassName = 'dot-progress-button';
5957
- var StyledProgressButton = styled(DotButton)(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
5958
- var theme = _ref.theme;
5959
- return css(["&.", "{.hidden{visibility:hidden;}.progress-circle{color:", ";position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;}}"], rootClassName, theme.palette.layer.n300);
5960
- });
5961
-
5962
- var SPINNER_DEFAULT_SIZE = 20;
5963
- var SPINNER_LARGE_SIZE = 24;
5964
- var DotProgressButton = function DotProgressButton(_ref) {
5965
- var ariaLabel = _ref.ariaLabel,
5966
- children = _ref.children,
5967
- className = _ref.className,
5968
- dataTestId = _ref['data-testid'],
5969
- _ref$disabled = _ref.disabled,
5970
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
5971
- _ref$disableRipple = _ref.disableRipple,
5972
- disableRipple = _ref$disableRipple === void 0 ? false : _ref$disableRipple,
5973
- _ref$fullWidth = _ref.fullWidth,
5974
- fullWidth = _ref$fullWidth === void 0 ? false : _ref$fullWidth,
5975
- _ref$isLoading = _ref.isLoading,
5976
- isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
5977
- _ref$isSubmit = _ref.isSubmit,
5978
- isSubmit = _ref$isSubmit === void 0 ? false : _ref$isSubmit,
5979
- onClick = _ref.onClick,
5980
- _ref$size = _ref.size,
5981
- size = _ref$size === void 0 ? 'medium' : _ref$size,
5982
- tooltip = _ref.tooltip,
5983
- _ref$type = _ref.type,
5984
- type = _ref$type === void 0 ? 'primary' : _ref$type;
5985
- var rootClasses = useStylesWithRootClass(rootClassName, className);
5986
- var isButtonDisabled = disabled || isLoading;
5987
- var titleClasses = useStylesWithRootClass(isLoading ? 'hidden' : '');
5988
- var progressCircleSize = size === 'large' ? SPINNER_LARGE_SIZE : SPINNER_DEFAULT_SIZE;
5989
- return /*#__PURE__*/React__default.createElement(StyledProgressButton, {
5990
- ariaLabel: ariaLabel,
5991
- className: rootClasses,
5992
- "data-testid": dataTestId,
5993
- disableRipple: disableRipple,
5994
- disabled: isButtonDisabled,
5995
- fullWidth: fullWidth,
5996
- isSubmit: isSubmit,
5997
- onClick: onClick,
5998
- size: size,
5999
- tooltip: tooltip,
6000
- type: type
6001
- }, /*#__PURE__*/React__default.createElement("div", {
6002
- className: titleClasses
6003
- }, children), isLoading && /*#__PURE__*/React__default.createElement(DotProgress, {
6004
- className: "progress-circle",
6005
- size: progressCircleSize
6006
- }));
6007
- };
6008
-
6009
6159
  export { Cell, CssCell, CssGrid, CssGridDebug, DotAccordion, DotActionToolbar, DotAlertBanner, DotAppLogo, DotAppToolbar, DotAutoComplete, DotAvatar, DotAvatarGroup, DotBadge, DotBreadcrumbs, DotButton, DotButtonToggle, DotCard, DotCardContent, DotCardFooter, DotCardHeader, DotCheckbox, DotCheckboxGroup, DotChip, DotConfirmationDialog, DotDialog, DotDrawer, DotDynamicForm, DotEmptyState, DotForm, DotFormGroup, DotHeaderRow, DotIcon, DotIconButton, DotInlineEdit, DotInputSelect, DotInputText, DotLink, DotList, DotMenu, DotNavigationRail, DotPill, DotProgress, DotProgressButton, DotRadioButton, DotRadioGroup, DotSidebar, DotSkeleton, DotSnackbar, DotSnackbarContainer, DotSnackbarProvider, DotSplitButton, DotSwitch, DotTable, DotTablePagination, DotTabs, DotThemeProvider, DotTooltip, DotTypography, avatarColors, lightThemeColors as lightColors, parseAutoCompleteValue, variables as themeVariables, typographyOptions, useDotSnackbarContext };