@digital-ai/dot-components 1.1.0 → 1.1.1

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,8 +1,9 @@
1
1
  import * as React from 'react';
2
- import React__default, { useState, useEffect, Fragment, useRef, useContext, useMemo, createContext } from 'react';
3
- import { Icon, Typography, Accordion, AccordionSummary, Tooltip, AccordionDetails, Divider, AccordionActions, Toolbar, IconButton, Link, Avatar, StylesProvider, MuiThemeProvider, Popper, Grow, Paper, ClickAwayListener, MenuList, MenuItem, List, ListItem, ListSubheader, Collapse, ListItemIcon, Drawer, Chip, InputAdornment, TextField, Breadcrumbs, Button, darken as darken$1, Card, CardContent, CardHeader, FormControlLabel, Checkbox, FormControl, FormGroup, FormLabel, FormHelperText, Dialog, DialogTitle, DialogContent, DialogActions, useTheme, RadioGroup, CircularProgress, Radio, Snackbar, ButtonGroup, Switch, TableContainer, TableCell, TableRow, TableBody, TableHead, TableSortLabel, TablePagination, Table, Tabs, Tab } from '@material-ui/core';
2
+ import React__default, { useEffect, useState, Fragment, useRef, useContext, useMemo, createContext } from 'react';
3
+ import { Icon, Typography, Accordion, AccordionSummary, Tooltip, AccordionDetails, Divider, AccordionActions, Toolbar, IconButton, Link, Avatar, StylesProvider, MuiThemeProvider, Popper, Grow, Paper, ClickAwayListener, MenuList, MenuItem, List, ListItem, ListSubheader, Collapse, ListItemIcon, Drawer, Chip, InputAdornment, TextField, Button, darken, Badge, Breadcrumbs, Card, CardContent, CardHeader, FormControlLabel, Checkbox, FormControl, FormGroup, FormLabel, FormHelperText, Dialog, DialogTitle, DialogContent, DialogActions, useTheme, RadioGroup, CircularProgress, Radio, Snackbar, ButtonGroup, Switch, 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';
6
+ import { createTheme, alpha } from '@material-ui/core/styles';
6
7
 
7
8
  function useStylesWithRootClass(name, className) {
8
9
  for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
@@ -23,20 +24,28 @@ function _taggedTemplateLiteralLoose(strings, raw) {
23
24
  return strings;
24
25
  }
25
26
 
26
- var _templateObject$I;
27
- var rootClassName$E = 'dot-icon';
28
- var StyledIcon = styled(Icon)(_templateObject$I || (_templateObject$I = _taggedTemplateLiteralLoose(["\n &.", " {\n align-items: center;\n box-sizing: content-box;\n display: flex;\n float: left; // allows flex items to display inline\n font-size: 20px;\n justify-content: center;\n\n &.MuiIcon-fontSizeLarge {\n font-size: 28px;\n height: 35px;\n width: 35px;\n\n i {\n height: 28px\n }\n }\n &.MuiIcon-fontSizeSmall {\n font-size: 18px;\n\n i {\n height: 18px;\n }\n }\n\n i {\n height: 20px;\n\n &:before {\n font-family: 'dot' !important;\n font-style: normal;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n &.icon-user-security:before {\n content: \"\\e9d2\";\n }\n\n &.icon-rocket:before {\n content: \"\\e9d3\";\n }\n\n &.icon-merge:before {\n content: \"\\e9d1\";\n }\n\n &.icon-cpu:before {\n content: \"\\e9d0\";\n }\n\n &.icon-progeression:before {\n content: \"\\e9cf\";\n }\n\n &.icon-commit:before {\n content: \"\\e95f\";\n }\n &.icon-design:before {\n content: \"\\e960\";\n }\n &.icon-key:before {\n content: \"\\e981\";\n }\n &.icon-infrastructure:before {\n content: \"\\e989\";\n }\n &.icon-report:before {\n content: \"\\e9ce\";\n }\n &.icon-package:before {\n content: \"\\e9c9\";\n }\n &.icon-security-off:before {\n content: \"\\e9ca\";\n }\n &.icon-security-on:before {\n content: \"\\e9cb\";\n }\n &.icon-marker-check:before {\n content: \"\\e9cc\";\n }\n &.icon-restore:before {\n content: \"\\e9cd\";\n }\n &.icon-check-outlined:before {\n content: \"\\e9c7\";\n }\n &.icon-circle-half-full:before {\n content: \"\\e9c8\";\n }\n &.icon-host:before {\n content: '\\e9b9';\n }\n &.icon-cluster:before {\n content: '\\e9ba';\n }\n &.icon-environment:before {\n content: '\\e9bb';\n }\n &.icon-monitor-controls:before {\n content: '\\e9bc';\n }\n &.icon-flag:before {\n content: '\\e9bd';\n }\n &.icon-satelite:before {\n content: '\\e9be';\n }\n &.icon-satelite-group:before {\n content: '\\e9bf';\n }\n &.icon-monitor-gears:before {\n content: '\\e9c0';\n }\n &.icon-patch:before {\n content: '\\e9b6';\n }\n &.icon-branch:before {\n content: '\\e9b4';\n }\n &.icon-send-airplane:before {\n content: '\\e9b5';\n }\n &.icon-briefcase:before {\n content: '\\e9b7';\n }\n &.icon-cluster-dependencies:before {\n content: '\\e9b8';\n }\n &.icon-script:before {\n content: '\\e966';\n }\n &.icon-pattern-bundle:before {\n content: '\\e967';\n }\n &.icon-outline:before {\n content: '\\e968';\n }\n &.icon-apps:before {\n content: '\\e969';\n }\n &.icon-archive:before {\n content: '\\e96a';\n }\n &.icon-arrow-down:before {\n content: '\\e96b';\n }\n &.icon-arrow-right:before {\n content: '\\e96c';\n }\n &.icon-arrow-up:before {\n content: '\\e96d';\n }\n &.icon-attachment:before {\n content: '\\e96e';\n }\n &.icon-board:before {\n content: '\\e96f';\n }\n &.icon-calendar:before {\n content: '\\e970';\n }\n &.icon-change:before {\n content: '\\e971';\n }\n &.icon-chevron-right:before {\n content: '\\e972';\n }\n &.icon-circle-minus-outlines:before {\n content: '\\e973';\n }\n &.icon-circle-paused:before {\n content: '\\e974';\n }\n &.icon-column:before {\n content: '\\e975';\n }\n &.icon-comment:before {\n content: '\\e976';\n }\n &.icon-configuration-preferences:before {\n content: '\\e977';\n }\n &.icon-conversation-bubbles:before {\n content: '\\e978';\n }\n &.icon-dashboard:before {\n content: '\\e979';\n }\n &.icon-database:before {\n content: '\\e97a';\n }\n &.icon-delivery-eta-icon:before {\n content: '\\e97b';\n }\n &.icon-download:before {\n content: '\\e97c';\n }\n &.icon-drag:before {\n content: '\\e97d';\n }\n &.icon-duplicate:before {\n content: '\\e97e';\n }\n &.icon-exit:before {\n content: '\\e97f';\n }\n &.icon-expand-chevrons:before {\n content: '\\e980';\n }\n &.icon-expander:before {\n content: '\\e981';\n }\n &.icon-file-image:before {\n content: '\\e982';\n }\n &.icon-file-lines:before {\n content: '\\e983';\n }\n &.icon-file-warning:before {\n content: '\\e984';\n }\n &.icon-file:before {\n content: '\\e985';\n }\n &.icon-filter:before {\n content: '\\e986';\n }\n &.icon-flag-none:before {\n content: '\\e987';\n }\n &.icon-folder:before {\n content: '\\e988';\n }\n &.icon-full-screen:before {\n content: '\\e989';\n }\n &.icon-fullscreen-enter:before {\n content: '\\e98a';\n }\n &.icon-fullscreen-exit:before {\n content: '\\e98b';\n }\n &.icon-grid:before {\n content: '\\e98c';\n }\n &.icon-hard-drive:before {\n content: '\\e98d';\n }\n &.icon-help:before {\n content: '\\e98e';\n }\n &.icon-history:before {\n content: '\\e98f';\n }\n &.icon-inbox:before {\n content: '\\e990';\n }\n &.icon-link:before {\n content: '\\e991';\n }\n &.icon-list:before {\n content: '\\e992';\n }\n &.icon-lock:before {\n content: '\\e993';\n }\n &.icon-mail:before {\n content: '\\e994';\n }\n &.icon-menu:before {\n content: '\\e995';\n }\n &.icon-monitor-satellite:before {\n content: '\\e996';\n }\n &.icon-monitor:before {\n content: '\\e997';\n }\n &.icon-notification-bell:before {\n content: '\\e998';\n }\n &.icon-open-new-tab:before {\n content: '\\e999';\n }\n &.icon-options:before {\n content: '\\e99a';\n }\n &.icon-parallel:before {\n content: '\\e99b';\n }\n &.icon-pending-clock:before {\n content: '\\e99c';\n }\n &.icon-play:before {\n content: '\\e99d';\n }\n &.icon-redo:before {\n content: '\\e99e';\n }\n &.icon-refresh:before {\n content: '\\e99f';\n }\n &.icon-release:before {\n content: '\\e9a0';\n }\n &.icon-search:before {\n content: '\\e9a3';\n }\n &.icon-sequential:before {\n content: '\\e9a4';\n }\n &.icon-sort-asc:before {\n content: '\\e9a5';\n }\n &.icon-sort-desc:before {\n content: '\\e9a6';\n }\n &.icon-star-favorites-active:before {\n content: '\\e9a7';\n }\n &.icon-star-favorites-default:before {\n content: '\\e9a8';\n }\n &.icon-target:before {\n content: '\\e9a9';\n }\n &.icon-task:before {\n content: '\\e9aa';\n }\n &.icon-template:before {\n content: '\\e9ab';\n }\n &.icon-undo:before {\n content: '\\e9ac';\n }\n &.icon-unlock:before {\n content: '\\e9ad';\n }\n &.icon-variable:before {\n content: '\\e9ae';\n }\n &.icon-vault:before {\n content: '\\e9af';\n }\n &.icon-visibility-off:before {\n content: '\\e9b0';\n }\n &.icon-visibility-on:before {\n content: '\\e9b1';\n }\n &.icon-webhook:before {\n content: '\\e9b2';\n }\n &.icon-wrench:before {\n content: '\\e9b3';\n }\n &.icon-bright:before {\n content: '\\e961';\n }\n &.icon-rogue-commits:before {\n content: '\\e962';\n }\n &.icon-home:before {\n content: '\\e963';\n }\n &.icon-blocking-issues:before {\n content: '\\e964';\n }\n &.icon-print-link:before {\n content: '\\e965';\n }\n &.icon-logo-deploy:before {\n content: '\\e902';\n }\n &.icon-logo-experitest:before {\n content: '\\e903';\n }\n &.icon-logo-numerify:before {\n content: '\\e904';\n }\n &.icon-logo-arxan:before {\n content: '\\e905';\n }\n &.icon-logo-continuum:before {\n content: '\\e906';\n }\n &.icon-logo-versionone:before {\n content: '\\e907';\n }\n &.icon-logo-release:before {\n content: '\\e908';\n }\n &.icon-warning-solid:before {\n content: '\\e909';\n }\n &.icon-warning-outline:before {\n content: '\\e90a';\n }\n &.icon-info-solid:before {\n content: '\\e90b';\n }\n &.icon-minus-solid:before {\n content: '\\e90c';\n }\n &.icon-check-solid:before {\n content: '\\e90d';\n }\n &.icon-error-solid:before {\n content: '\\e90e';\n }\n &.icon-error-outlines:before {\n content: '\\e90f';\n }\n &.icon-add-outlined:before {\n content: '\\e910';\n }\n &.icon-add-solid:before {\n content: '\\e911';\n }\n &.icon-clear-solid:before {\n content: '\\e912';\n }\n &.icon-dark:before {\n content: '\\e913';\n }\n &.icon-location:before {\n content: '\\e914';\n }\n &.icon-roadmap:before {\n content: '\\e915';\n }\n &.icon-follow-solid:before {\n content: '\\e916';\n }\n &.icon-follow-outlined:before {\n content: '\\e917';\n }\n &.icon-video:before {\n content: '\\e918';\n }\n &.icon-thumbs-down:before {\n content: '\\e919';\n }\n &.icon-camera:before {\n content: '\\e91a';\n }\n &.icon-users:before {\n content: '\\e91b';\n }\n &.icon-user:before {\n content: '\\e91c';\n }\n &.icon-announcement:before {\n content: '\\e91d';\n }\n &.icon-not-allowed:before {\n content: '\\e91e';\n }\n &.icon-zoom-out:before {\n content: '\\e91f';\n }\n &.icon-zoom-in:before {\n content: '\\e920';\n }\n &.icon-triangle:before {\n content: '\\e921';\n }\n &.icon-delay:before {\n content: '\\e922';\n }\n &.icon-circle-outline:before {\n content: '\\e923';\n }\n &.icon-circle:before {\n content: '\\e924';\n }\n &.icon-add-from-list:before {\n content: '\\e925';\n }\n &.icon-sync:before {\n content: '\\e926';\n }\n &.icon-keyboard:before {\n content: '\\e927';\n }\n &.icon-planner:before {\n content: '\\e928';\n }\n &.icon-tag:before {\n content: '\\e929';\n }\n &.icon-progress:before {\n content: '\\e92a';\n }\n &.icon-timeline:before {\n content: '\\e92b';\n }\n &.icon-abort:before {\n content: '\\e92c';\n }\n &.icon-cancel:before {\n content: '\\e92d';\n }\n &.icon-power:before {\n content: '\\e92e';\n }\n &.icon-resize:before {\n content: '\\e92f';\n }\n &.icon-close:before {\n content: '\\e930';\n }\n &.icon-save:before {\n content: '\\e931';\n }\n &.icon-drag-vertical-up-down:before {\n content: '\\e932';\n }\n &.icon-add:before {\n content: '\\e933';\n }\n &.icon-minus:before {\n content: '\\e934';\n }\n &.icon-target-none:before {\n content: '\\e935';\n }\n &.icon-placeholder:before {\n content: '\\e936';\n }\n &.icon-server:before {\n content: '\\e937';\n }\n &.icon-square-wrench:before {\n content: '\\e938';\n }\n &.icon-square-wrench-check:before {\n content: '\\e939';\n }\n &.icon-square-settings:before {\n content: '\\e93a';\n }\n &.icon-trigger:before {\n content: '\\e93c';\n }\n &.icon-precondition:before {\n content: '\\e93d';\n }\n &.icon-composition:before {\n content: '\\e93e';\n }\n &.icon-block:before {\n content: '\\e93f';\n }\n &.icon-group:before {\n content: '\\e940';\n }\n &.icon-settings-admin-opaque:before {\n content: '\\e941';\n }\n &.icon-puzzle:before {\n content: '\\e942';\n }\n &.icon-alphabet-icon:before {\n content: '\\e943';\n }\n &.icon-crop:before {\n content: '\\e944';\n }\n &.icon-upload-file:before {\n content: '\\e945';\n }\n &.icon-container:before {\n content: '\\e946';\n }\n &.icon-flag-risk:before {\n content: '\\e947';\n }\n &.icon-learn:before {\n content: '\\e948';\n }\n &.icon-tree:before {\n content: '\\e949';\n }\n &.icon-process-template:before {\n content: '\\e94a';\n }\n &.icon-flag-attention:before {\n content: '\\e94b';\n }\n &.icon-collection:before {\n content: '\\e94c';\n }\n &.icon-table:before {\n content: '\\e94d';\n }\n &.icon-linkBrakeIt:before {\n content: '\\e94e';\n }\n &.icon-move-folder:before {\n content: '\\e94f';\n }\n &.icon-columns:before {\n content: '\\e950';\n }\n &.icon-file-word-doc:before {\n content: '\\e951';\n }\n &.icon-file-ppt:before {\n content: '\\e952';\n }\n &.icon-file-zip:before {\n content: '\\e953';\n }\n &.icon-file-xls:before {\n content: '\\e954';\n }\n &.icon-file-pdf:before {\n content: '\\e955';\n }\n &.icon-file-xml:before {\n content: '\\e956';\n }\n &.icon-dictionary-locked:before {\n content: '\\e957';\n }\n &.icon-dictionary:before {\n content: '\\e958';\n }\n &.icon-file-dotted:before {\n content: '\\e959';\n }\n &.icon-file-circle-check:before {\n content: '\\e95a';\n }\n &.icon-back:before {\n content: '\\e95b';\n }\n &.icon-chevron-left:before {\n content: '\\e95c';\n }\n &.icon-chevron-up:before {\n content: '\\e95d';\n }\n &.icon-chevron-down:before {\n content: '\\e95e';\n }\n &.icon-return-level-up:before {\n content: '\\e95f';\n }\n &.icon-return:before {\n content: '\\e960';\n }\n &.icon-edit:before {\n content: '\\e900';\n }\n &.icon-delete:before {\n content: '\\e901';\n }\n &.icon-settings:before {\n content: \"\\e93b\";\n }\n &.icon-network-drive:before {\n content: \"\\e9a1\";\n }\n &.icon-GitOps:before {\n content: \"\\e9a2\";\n }\n &.icon-rss:before {\n content: \"\\e9c1\";\n }\n &.icon-bug:before {\n content: \"\\e9c2\";\n }\n &.icon-cloud:before {\n content: \"\\e9c3\";\n }\n &.icon-more-horizontal:before {\n content: \"\\e9c4\";\n }\n &.icon-expand:before {\n content: \"\\e9c5\";\n }\n &.icon-collapse:before {\n content: \"\\e9c6\";\n }\n }\n }\n }"], ["\n &.", " {\n align-items: center;\n box-sizing: content-box;\n display: flex;\n float: left; // allows flex items to display inline\n font-size: 20px;\n justify-content: center;\n\n &.MuiIcon-fontSizeLarge {\n font-size: 28px;\n height: 35px;\n width: 35px;\n\n i {\n height: 28px\n }\n }\n &.MuiIcon-fontSizeSmall {\n font-size: 18px;\n\n i {\n height: 18px;\n }\n }\n\n i {\n height: 20px;\n\n &:before {\n font-family: 'dot' !important;\n font-style: normal;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n &.icon-user-security:before {\n content: \"\\\\e9d2\";\n }\n\n &.icon-rocket:before {\n content: \"\\\\e9d3\";\n }\n\n &.icon-merge:before {\n content: \"\\\\e9d1\";\n }\n\n &.icon-cpu:before {\n content: \"\\\\e9d0\";\n }\n\n &.icon-progeression:before {\n content: \"\\\\e9cf\";\n }\n\n &.icon-commit:before {\n content: \"\\\\e95f\";\n }\n &.icon-design:before {\n content: \"\\\\e960\";\n }\n &.icon-key:before {\n content: \"\\\\e981\";\n }\n &.icon-infrastructure:before {\n content: \"\\\\e989\";\n }\n &.icon-report:before {\n content: \"\\\\e9ce\";\n }\n &.icon-package:before {\n content: \"\\\\e9c9\";\n }\n &.icon-security-off:before {\n content: \"\\\\e9ca\";\n }\n &.icon-security-on:before {\n content: \"\\\\e9cb\";\n }\n &.icon-marker-check:before {\n content: \"\\\\e9cc\";\n }\n &.icon-restore:before {\n content: \"\\\\e9cd\";\n }\n &.icon-check-outlined:before {\n content: \"\\\\e9c7\";\n }\n &.icon-circle-half-full:before {\n content: \"\\\\e9c8\";\n }\n &.icon-host:before {\n content: '\\\\e9b9';\n }\n &.icon-cluster:before {\n content: '\\\\e9ba';\n }\n &.icon-environment:before {\n content: '\\\\e9bb';\n }\n &.icon-monitor-controls:before {\n content: '\\\\e9bc';\n }\n &.icon-flag:before {\n content: '\\\\e9bd';\n }\n &.icon-satelite:before {\n content: '\\\\e9be';\n }\n &.icon-satelite-group:before {\n content: '\\\\e9bf';\n }\n &.icon-monitor-gears:before {\n content: '\\\\e9c0';\n }\n &.icon-patch:before {\n content: '\\\\e9b6';\n }\n &.icon-branch:before {\n content: '\\\\e9b4';\n }\n &.icon-send-airplane:before {\n content: '\\\\e9b5';\n }\n &.icon-briefcase:before {\n content: '\\\\e9b7';\n }\n &.icon-cluster-dependencies:before {\n content: '\\\\e9b8';\n }\n &.icon-script:before {\n content: '\\\\e966';\n }\n &.icon-pattern-bundle:before {\n content: '\\\\e967';\n }\n &.icon-outline:before {\n content: '\\\\e968';\n }\n &.icon-apps:before {\n content: '\\\\e969';\n }\n &.icon-archive:before {\n content: '\\\\e96a';\n }\n &.icon-arrow-down:before {\n content: '\\\\e96b';\n }\n &.icon-arrow-right:before {\n content: '\\\\e96c';\n }\n &.icon-arrow-up:before {\n content: '\\\\e96d';\n }\n &.icon-attachment:before {\n content: '\\\\e96e';\n }\n &.icon-board:before {\n content: '\\\\e96f';\n }\n &.icon-calendar:before {\n content: '\\\\e970';\n }\n &.icon-change:before {\n content: '\\\\e971';\n }\n &.icon-chevron-right:before {\n content: '\\\\e972';\n }\n &.icon-circle-minus-outlines:before {\n content: '\\\\e973';\n }\n &.icon-circle-paused:before {\n content: '\\\\e974';\n }\n &.icon-column:before {\n content: '\\\\e975';\n }\n &.icon-comment:before {\n content: '\\\\e976';\n }\n &.icon-configuration-preferences:before {\n content: '\\\\e977';\n }\n &.icon-conversation-bubbles:before {\n content: '\\\\e978';\n }\n &.icon-dashboard:before {\n content: '\\\\e979';\n }\n &.icon-database:before {\n content: '\\\\e97a';\n }\n &.icon-delivery-eta-icon:before {\n content: '\\\\e97b';\n }\n &.icon-download:before {\n content: '\\\\e97c';\n }\n &.icon-drag:before {\n content: '\\\\e97d';\n }\n &.icon-duplicate:before {\n content: '\\\\e97e';\n }\n &.icon-exit:before {\n content: '\\\\e97f';\n }\n &.icon-expand-chevrons:before {\n content: '\\\\e980';\n }\n &.icon-expander:before {\n content: '\\\\e981';\n }\n &.icon-file-image:before {\n content: '\\\\e982';\n }\n &.icon-file-lines:before {\n content: '\\\\e983';\n }\n &.icon-file-warning:before {\n content: '\\\\e984';\n }\n &.icon-file:before {\n content: '\\\\e985';\n }\n &.icon-filter:before {\n content: '\\\\e986';\n }\n &.icon-flag-none:before {\n content: '\\\\e987';\n }\n &.icon-folder:before {\n content: '\\\\e988';\n }\n &.icon-full-screen:before {\n content: '\\\\e989';\n }\n &.icon-fullscreen-enter:before {\n content: '\\\\e98a';\n }\n &.icon-fullscreen-exit:before {\n content: '\\\\e98b';\n }\n &.icon-grid:before {\n content: '\\\\e98c';\n }\n &.icon-hard-drive:before {\n content: '\\\\e98d';\n }\n &.icon-help:before {\n content: '\\\\e98e';\n }\n &.icon-history:before {\n content: '\\\\e98f';\n }\n &.icon-inbox:before {\n content: '\\\\e990';\n }\n &.icon-link:before {\n content: '\\\\e991';\n }\n &.icon-list:before {\n content: '\\\\e992';\n }\n &.icon-lock:before {\n content: '\\\\e993';\n }\n &.icon-mail:before {\n content: '\\\\e994';\n }\n &.icon-menu:before {\n content: '\\\\e995';\n }\n &.icon-monitor-satellite:before {\n content: '\\\\e996';\n }\n &.icon-monitor:before {\n content: '\\\\e997';\n }\n &.icon-notification-bell:before {\n content: '\\\\e998';\n }\n &.icon-open-new-tab:before {\n content: '\\\\e999';\n }\n &.icon-options:before {\n content: '\\\\e99a';\n }\n &.icon-parallel:before {\n content: '\\\\e99b';\n }\n &.icon-pending-clock:before {\n content: '\\\\e99c';\n }\n &.icon-play:before {\n content: '\\\\e99d';\n }\n &.icon-redo:before {\n content: '\\\\e99e';\n }\n &.icon-refresh:before {\n content: '\\\\e99f';\n }\n &.icon-release:before {\n content: '\\\\e9a0';\n }\n &.icon-search:before {\n content: '\\\\e9a3';\n }\n &.icon-sequential:before {\n content: '\\\\e9a4';\n }\n &.icon-sort-asc:before {\n content: '\\\\e9a5';\n }\n &.icon-sort-desc:before {\n content: '\\\\e9a6';\n }\n &.icon-star-favorites-active:before {\n content: '\\\\e9a7';\n }\n &.icon-star-favorites-default:before {\n content: '\\\\e9a8';\n }\n &.icon-target:before {\n content: '\\\\e9a9';\n }\n &.icon-task:before {\n content: '\\\\e9aa';\n }\n &.icon-template:before {\n content: '\\\\e9ab';\n }\n &.icon-undo:before {\n content: '\\\\e9ac';\n }\n &.icon-unlock:before {\n content: '\\\\e9ad';\n }\n &.icon-variable:before {\n content: '\\\\e9ae';\n }\n &.icon-vault:before {\n content: '\\\\e9af';\n }\n &.icon-visibility-off:before {\n content: '\\\\e9b0';\n }\n &.icon-visibility-on:before {\n content: '\\\\e9b1';\n }\n &.icon-webhook:before {\n content: '\\\\e9b2';\n }\n &.icon-wrench:before {\n content: '\\\\e9b3';\n }\n &.icon-bright:before {\n content: '\\\\e961';\n }\n &.icon-rogue-commits:before {\n content: '\\\\e962';\n }\n &.icon-home:before {\n content: '\\\\e963';\n }\n &.icon-blocking-issues:before {\n content: '\\\\e964';\n }\n &.icon-print-link:before {\n content: '\\\\e965';\n }\n &.icon-logo-deploy:before {\n content: '\\\\e902';\n }\n &.icon-logo-experitest:before {\n content: '\\\\e903';\n }\n &.icon-logo-numerify:before {\n content: '\\\\e904';\n }\n &.icon-logo-arxan:before {\n content: '\\\\e905';\n }\n &.icon-logo-continuum:before {\n content: '\\\\e906';\n }\n &.icon-logo-versionone:before {\n content: '\\\\e907';\n }\n &.icon-logo-release:before {\n content: '\\\\e908';\n }\n &.icon-warning-solid:before {\n content: '\\\\e909';\n }\n &.icon-warning-outline:before {\n content: '\\\\e90a';\n }\n &.icon-info-solid:before {\n content: '\\\\e90b';\n }\n &.icon-minus-solid:before {\n content: '\\\\e90c';\n }\n &.icon-check-solid:before {\n content: '\\\\e90d';\n }\n &.icon-error-solid:before {\n content: '\\\\e90e';\n }\n &.icon-error-outlines:before {\n content: '\\\\e90f';\n }\n &.icon-add-outlined:before {\n content: '\\\\e910';\n }\n &.icon-add-solid:before {\n content: '\\\\e911';\n }\n &.icon-clear-solid:before {\n content: '\\\\e912';\n }\n &.icon-dark:before {\n content: '\\\\e913';\n }\n &.icon-location:before {\n content: '\\\\e914';\n }\n &.icon-roadmap:before {\n content: '\\\\e915';\n }\n &.icon-follow-solid:before {\n content: '\\\\e916';\n }\n &.icon-follow-outlined:before {\n content: '\\\\e917';\n }\n &.icon-video:before {\n content: '\\\\e918';\n }\n &.icon-thumbs-down:before {\n content: '\\\\e919';\n }\n &.icon-camera:before {\n content: '\\\\e91a';\n }\n &.icon-users:before {\n content: '\\\\e91b';\n }\n &.icon-user:before {\n content: '\\\\e91c';\n }\n &.icon-announcement:before {\n content: '\\\\e91d';\n }\n &.icon-not-allowed:before {\n content: '\\\\e91e';\n }\n &.icon-zoom-out:before {\n content: '\\\\e91f';\n }\n &.icon-zoom-in:before {\n content: '\\\\e920';\n }\n &.icon-triangle:before {\n content: '\\\\e921';\n }\n &.icon-delay:before {\n content: '\\\\e922';\n }\n &.icon-circle-outline:before {\n content: '\\\\e923';\n }\n &.icon-circle:before {\n content: '\\\\e924';\n }\n &.icon-add-from-list:before {\n content: '\\\\e925';\n }\n &.icon-sync:before {\n content: '\\\\e926';\n }\n &.icon-keyboard:before {\n content: '\\\\e927';\n }\n &.icon-planner:before {\n content: '\\\\e928';\n }\n &.icon-tag:before {\n content: '\\\\e929';\n }\n &.icon-progress:before {\n content: '\\\\e92a';\n }\n &.icon-timeline:before {\n content: '\\\\e92b';\n }\n &.icon-abort:before {\n content: '\\\\e92c';\n }\n &.icon-cancel:before {\n content: '\\\\e92d';\n }\n &.icon-power:before {\n content: '\\\\e92e';\n }\n &.icon-resize:before {\n content: '\\\\e92f';\n }\n &.icon-close:before {\n content: '\\\\e930';\n }\n &.icon-save:before {\n content: '\\\\e931';\n }\n &.icon-drag-vertical-up-down:before {\n content: '\\\\e932';\n }\n &.icon-add:before {\n content: '\\\\e933';\n }\n &.icon-minus:before {\n content: '\\\\e934';\n }\n &.icon-target-none:before {\n content: '\\\\e935';\n }\n &.icon-placeholder:before {\n content: '\\\\e936';\n }\n &.icon-server:before {\n content: '\\\\e937';\n }\n &.icon-square-wrench:before {\n content: '\\\\e938';\n }\n &.icon-square-wrench-check:before {\n content: '\\\\e939';\n }\n &.icon-square-settings:before {\n content: '\\\\e93a';\n }\n &.icon-trigger:before {\n content: '\\\\e93c';\n }\n &.icon-precondition:before {\n content: '\\\\e93d';\n }\n &.icon-composition:before {\n content: '\\\\e93e';\n }\n &.icon-block:before {\n content: '\\\\e93f';\n }\n &.icon-group:before {\n content: '\\\\e940';\n }\n &.icon-settings-admin-opaque:before {\n content: '\\\\e941';\n }\n &.icon-puzzle:before {\n content: '\\\\e942';\n }\n &.icon-alphabet-icon:before {\n content: '\\\\e943';\n }\n &.icon-crop:before {\n content: '\\\\e944';\n }\n &.icon-upload-file:before {\n content: '\\\\e945';\n }\n &.icon-container:before {\n content: '\\\\e946';\n }\n &.icon-flag-risk:before {\n content: '\\\\e947';\n }\n &.icon-learn:before {\n content: '\\\\e948';\n }\n &.icon-tree:before {\n content: '\\\\e949';\n }\n &.icon-process-template:before {\n content: '\\\\e94a';\n }\n &.icon-flag-attention:before {\n content: '\\\\e94b';\n }\n &.icon-collection:before {\n content: '\\\\e94c';\n }\n &.icon-table:before {\n content: '\\\\e94d';\n }\n &.icon-linkBrakeIt:before {\n content: '\\\\e94e';\n }\n &.icon-move-folder:before {\n content: '\\\\e94f';\n }\n &.icon-columns:before {\n content: '\\\\e950';\n }\n &.icon-file-word-doc:before {\n content: '\\\\e951';\n }\n &.icon-file-ppt:before {\n content: '\\\\e952';\n }\n &.icon-file-zip:before {\n content: '\\\\e953';\n }\n &.icon-file-xls:before {\n content: '\\\\e954';\n }\n &.icon-file-pdf:before {\n content: '\\\\e955';\n }\n &.icon-file-xml:before {\n content: '\\\\e956';\n }\n &.icon-dictionary-locked:before {\n content: '\\\\e957';\n }\n &.icon-dictionary:before {\n content: '\\\\e958';\n }\n &.icon-file-dotted:before {\n content: '\\\\e959';\n }\n &.icon-file-circle-check:before {\n content: '\\\\e95a';\n }\n &.icon-back:before {\n content: '\\\\e95b';\n }\n &.icon-chevron-left:before {\n content: '\\\\e95c';\n }\n &.icon-chevron-up:before {\n content: '\\\\e95d';\n }\n &.icon-chevron-down:before {\n content: '\\\\e95e';\n }\n &.icon-return-level-up:before {\n content: '\\\\e95f';\n }\n &.icon-return:before {\n content: '\\\\e960';\n }\n &.icon-edit:before {\n content: '\\\\e900';\n }\n &.icon-delete:before {\n content: '\\\\e901';\n }\n &.icon-settings:before {\n content: \"\\\\e93b\";\n }\n &.icon-network-drive:before {\n content: \"\\\\e9a1\";\n }\n &.icon-GitOps:before {\n content: \"\\\\e9a2\";\n }\n &.icon-rss:before {\n content: \"\\\\e9c1\";\n }\n &.icon-bug:before {\n content: \"\\\\e9c2\";\n }\n &.icon-cloud:before {\n content: \"\\\\e9c3\";\n }\n &.icon-more-horizontal:before {\n content: \"\\\\e9c4\";\n }\n &.icon-expand:before {\n content: \"\\\\e9c5\";\n }\n &.icon-collapse:before {\n content: \"\\\\e9c6\";\n }\n }\n }\n }"])), rootClassName$E);
27
+ var _templateObject$J;
28
+ var rootClassName$F = 'dot-icon';
29
+ var StyledIcon = styled(Icon)(_templateObject$J || (_templateObject$J = _taggedTemplateLiteralLoose(["\n &.", " {\n align-items: center;\n box-sizing: content-box;\n display: flex;\n float: left; // allows flex items to display inline\n font-size: 20px;\n justify-content: center;\n\n &.MuiIcon-fontSizeLarge {\n font-size: 28px;\n height: 35px;\n width: 35px;\n\n i {\n height: 28px\n }\n }\n &.MuiIcon-fontSizeSmall {\n font-size: 18px;\n\n i {\n height: 18px;\n }\n }\n\n i {\n height: 20px;\n\n &:before {\n font-family: 'dot' !important;\n font-style: normal;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n &.icon-user-security:before {\n content: \"\\e9d2\";\n }\n\n &.icon-rocket:before {\n content: \"\\e9d3\";\n }\n\n &.icon-merge:before {\n content: \"\\e9d1\";\n }\n\n &.icon-cpu:before {\n content: \"\\e9d0\";\n }\n\n &.icon-progeression:before {\n content: \"\\e9cf\";\n }\n\n &.icon-commit:before {\n content: \"\\e95f\";\n }\n &.icon-design:before {\n content: \"\\e960\";\n }\n &.icon-key:before {\n content: \"\\e981\";\n }\n &.icon-infrastructure:before {\n content: \"\\e989\";\n }\n &.icon-report:before {\n content: \"\\e9ce\";\n }\n &.icon-package:before {\n content: \"\\e9c9\";\n }\n &.icon-security-off:before {\n content: \"\\e9ca\";\n }\n &.icon-security-on:before {\n content: \"\\e9cb\";\n }\n &.icon-marker-check:before {\n content: \"\\e9cc\";\n }\n &.icon-restore:before {\n content: \"\\e9cd\";\n }\n &.icon-check-outlined:before {\n content: \"\\e9c7\";\n }\n &.icon-circle-half-full:before {\n content: \"\\e9c8\";\n }\n &.icon-host:before {\n content: '\\e9b9';\n }\n &.icon-cluster:before {\n content: '\\e9ba';\n }\n &.icon-environment:before {\n content: '\\e9bb';\n }\n &.icon-monitor-controls:before {\n content: '\\e9bc';\n }\n &.icon-flag:before {\n content: '\\e9bd';\n }\n &.icon-satelite:before {\n content: '\\e9be';\n }\n &.icon-satelite-group:before {\n content: '\\e9bf';\n }\n &.icon-monitor-gears:before {\n content: '\\e9c0';\n }\n &.icon-patch:before {\n content: '\\e9b6';\n }\n &.icon-branch:before {\n content: '\\e9b4';\n }\n &.icon-send-airplane:before {\n content: '\\e9b5';\n }\n &.icon-briefcase:before {\n content: '\\e9b7';\n }\n &.icon-cluster-dependencies:before {\n content: '\\e9b8';\n }\n &.icon-script:before {\n content: '\\e966';\n }\n &.icon-pattern-bundle:before {\n content: '\\e967';\n }\n &.icon-outline:before {\n content: '\\e968';\n }\n &.icon-apps:before {\n content: '\\e969';\n }\n &.icon-archive:before {\n content: '\\e96a';\n }\n &.icon-arrow-down:before {\n content: '\\e96b';\n }\n &.icon-arrow-right:before {\n content: '\\e96c';\n }\n &.icon-arrow-up:before {\n content: '\\e96d';\n }\n &.icon-attachment:before {\n content: '\\e96e';\n }\n &.icon-board:before {\n content: '\\e96f';\n }\n &.icon-calendar:before {\n content: '\\e970';\n }\n &.icon-change:before {\n content: '\\e971';\n }\n &.icon-chevron-right:before {\n content: '\\e972';\n }\n &.icon-circle-minus-outlines:before {\n content: '\\e973';\n }\n &.icon-circle-paused:before {\n content: '\\e974';\n }\n &.icon-column:before {\n content: '\\e975';\n }\n &.icon-comment:before {\n content: '\\e976';\n }\n &.icon-configuration-preferences:before {\n content: '\\e977';\n }\n &.icon-conversation-bubbles:before {\n content: '\\e978';\n }\n &.icon-dashboard:before {\n content: '\\e979';\n }\n &.icon-database:before {\n content: '\\e97a';\n }\n &.icon-delivery-eta-icon:before {\n content: '\\e97b';\n }\n &.icon-download:before {\n content: '\\e97c';\n }\n &.icon-drag:before {\n content: '\\e97d';\n }\n &.icon-duplicate:before {\n content: '\\e97e';\n }\n &.icon-exit:before {\n content: '\\e97f';\n }\n &.icon-expand-chevrons:before {\n content: '\\e980';\n }\n &.icon-expander:before {\n content: '\\e981';\n }\n &.icon-file-image:before {\n content: '\\e982';\n }\n &.icon-file-lines:before {\n content: '\\e983';\n }\n &.icon-file-warning:before {\n content: '\\e984';\n }\n &.icon-file:before {\n content: '\\e985';\n }\n &.icon-filter:before {\n content: '\\e986';\n }\n &.icon-flag-none:before {\n content: '\\e987';\n }\n &.icon-folder:before {\n content: '\\e988';\n }\n &.icon-full-screen:before {\n content: '\\e989';\n }\n &.icon-fullscreen-enter:before {\n content: '\\e98a';\n }\n &.icon-fullscreen-exit:before {\n content: '\\e98b';\n }\n &.icon-grid:before {\n content: '\\e98c';\n }\n &.icon-hard-drive:before {\n content: '\\e98d';\n }\n &.icon-help:before {\n content: '\\e98e';\n }\n &.icon-history:before {\n content: '\\e98f';\n }\n &.icon-inbox:before {\n content: '\\e990';\n }\n &.icon-link:before {\n content: '\\e991';\n }\n &.icon-list:before {\n content: '\\e992';\n }\n &.icon-lock:before {\n content: '\\e993';\n }\n &.icon-mail:before {\n content: '\\e994';\n }\n &.icon-menu:before {\n content: '\\e995';\n }\n &.icon-monitor-satellite:before {\n content: '\\e996';\n }\n &.icon-monitor:before {\n content: '\\e997';\n }\n &.icon-notification-bell:before {\n content: '\\e998';\n }\n &.icon-open-new-tab:before {\n content: '\\e999';\n }\n &.icon-options:before {\n content: '\\e99a';\n }\n &.icon-parallel:before {\n content: '\\e99b';\n }\n &.icon-pending-clock:before {\n content: '\\e99c';\n }\n &.icon-play:before {\n content: '\\e99d';\n }\n &.icon-redo:before {\n content: '\\e99e';\n }\n &.icon-refresh:before {\n content: '\\e99f';\n }\n &.icon-release:before {\n content: '\\e9a0';\n }\n &.icon-search:before {\n content: '\\e9a3';\n }\n &.icon-sequential:before {\n content: '\\e9a4';\n }\n &.icon-sort-asc:before {\n content: '\\e9a5';\n }\n &.icon-sort-desc:before {\n content: '\\e9a6';\n }\n &.icon-star-favorites-active:before {\n content: '\\e9a7';\n }\n &.icon-star-favorites-default:before {\n content: '\\e9a8';\n }\n &.icon-target:before {\n content: '\\e9a9';\n }\n &.icon-task:before {\n content: '\\e9aa';\n }\n &.icon-template:before {\n content: '\\e9ab';\n }\n &.icon-undo:before {\n content: '\\e9ac';\n }\n &.icon-unlock:before {\n content: '\\e9ad';\n }\n &.icon-variable:before {\n content: '\\e9ae';\n }\n &.icon-vault:before {\n content: '\\e9af';\n }\n &.icon-visibility-off:before {\n content: '\\e9b0';\n }\n &.icon-visibility-on:before {\n content: '\\e9b1';\n }\n &.icon-webhook:before {\n content: '\\e9b2';\n }\n &.icon-wrench:before {\n content: '\\e9b3';\n }\n &.icon-bright:before {\n content: '\\e961';\n }\n &.icon-rogue-commits:before {\n content: '\\e962';\n }\n &.icon-home:before {\n content: '\\e963';\n }\n &.icon-blocking-issues:before {\n content: '\\e964';\n }\n &.icon-print-link:before {\n content: '\\e965';\n }\n &.icon-logo-deploy:before {\n content: '\\e902';\n }\n &.icon-logo-experitest:before {\n content: '\\e903';\n }\n &.icon-logo-numerify:before {\n content: '\\e904';\n }\n &.icon-logo-arxan:before {\n content: '\\e905';\n }\n &.icon-logo-continuum:before {\n content: '\\e906';\n }\n &.icon-logo-versionone:before {\n content: '\\e907';\n }\n &.icon-logo-release:before {\n content: '\\e908';\n }\n &.icon-warning-solid:before {\n content: '\\e909';\n }\n &.icon-warning-outline:before {\n content: '\\e90a';\n }\n &.icon-info-solid:before {\n content: '\\e90b';\n }\n &.icon-minus-solid:before {\n content: '\\e90c';\n }\n &.icon-check-solid:before {\n content: '\\e90d';\n }\n &.icon-error-solid:before {\n content: '\\e90e';\n }\n &.icon-error-outlines:before {\n content: '\\e90f';\n }\n &.icon-add-outlined:before {\n content: '\\e910';\n }\n &.icon-add-solid:before {\n content: '\\e911';\n }\n &.icon-clear-solid:before {\n content: '\\e912';\n }\n &.icon-dark:before {\n content: '\\e913';\n }\n &.icon-location:before {\n content: '\\e914';\n }\n &.icon-roadmap:before {\n content: '\\e915';\n }\n &.icon-follow-solid:before {\n content: '\\e916';\n }\n &.icon-follow-outlined:before {\n content: '\\e917';\n }\n &.icon-video:before {\n content: '\\e918';\n }\n &.icon-thumbs-down:before {\n content: '\\e919';\n }\n &.icon-camera:before {\n content: '\\e91a';\n }\n &.icon-users:before {\n content: '\\e91b';\n }\n &.icon-user:before {\n content: '\\e91c';\n }\n &.icon-announcement:before {\n content: '\\e91d';\n }\n &.icon-not-allowed:before {\n content: '\\e91e';\n }\n &.icon-zoom-out:before {\n content: '\\e91f';\n }\n &.icon-zoom-in:before {\n content: '\\e920';\n }\n &.icon-triangle:before {\n content: '\\e921';\n }\n &.icon-delay:before {\n content: '\\e922';\n }\n &.icon-circle-outline:before {\n content: '\\e923';\n }\n &.icon-circle:before {\n content: '\\e924';\n }\n &.icon-add-from-list:before {\n content: '\\e925';\n }\n &.icon-sync:before {\n content: '\\e926';\n }\n &.icon-keyboard:before {\n content: '\\e927';\n }\n &.icon-planner:before {\n content: '\\e928';\n }\n &.icon-tag:before {\n content: '\\e929';\n }\n &.icon-progress:before {\n content: '\\e92a';\n }\n &.icon-timeline:before {\n content: '\\e92b';\n }\n &.icon-abort:before {\n content: '\\e92c';\n }\n &.icon-cancel:before {\n content: '\\e92d';\n }\n &.icon-power:before {\n content: '\\e92e';\n }\n &.icon-resize:before {\n content: '\\e92f';\n }\n &.icon-close:before {\n content: '\\e930';\n }\n &.icon-save:before {\n content: '\\e931';\n }\n &.icon-drag-vertical-up-down:before {\n content: '\\e932';\n }\n &.icon-add:before {\n content: '\\e933';\n }\n &.icon-minus:before {\n content: '\\e934';\n }\n &.icon-target-none:before {\n content: '\\e935';\n }\n &.icon-placeholder:before {\n content: '\\e936';\n }\n &.icon-server:before {\n content: '\\e937';\n }\n &.icon-square-wrench:before {\n content: '\\e938';\n }\n &.icon-square-wrench-check:before {\n content: '\\e939';\n }\n &.icon-square-settings:before {\n content: '\\e93a';\n }\n &.icon-trigger:before {\n content: '\\e93c';\n }\n &.icon-precondition:before {\n content: '\\e93d';\n }\n &.icon-composition:before {\n content: '\\e93e';\n }\n &.icon-block:before {\n content: '\\e93f';\n }\n &.icon-group:before {\n content: '\\e940';\n }\n &.icon-settings-admin-opaque:before {\n content: '\\e941';\n }\n &.icon-puzzle:before {\n content: '\\e942';\n }\n &.icon-alphabet-icon:before {\n content: '\\e943';\n }\n &.icon-crop:before {\n content: '\\e944';\n }\n &.icon-upload-file:before {\n content: '\\e945';\n }\n &.icon-container:before {\n content: '\\e946';\n }\n &.icon-flag-risk:before {\n content: '\\e947';\n }\n &.icon-learn:before {\n content: '\\e948';\n }\n &.icon-tree:before {\n content: '\\e949';\n }\n &.icon-process-template:before {\n content: '\\e94a';\n }\n &.icon-flag-attention:before {\n content: '\\e94b';\n }\n &.icon-collection:before {\n content: '\\e94c';\n }\n &.icon-table:before {\n content: '\\e94d';\n }\n &.icon-linkBrakeIt:before {\n content: '\\e94e';\n }\n &.icon-move-folder:before {\n content: '\\e94f';\n }\n &.icon-columns:before {\n content: '\\e950';\n }\n &.icon-file-word-doc:before {\n content: '\\e951';\n }\n &.icon-file-ppt:before {\n content: '\\e952';\n }\n &.icon-file-zip:before {\n content: '\\e953';\n }\n &.icon-file-xls:before {\n content: '\\e954';\n }\n &.icon-file-pdf:before {\n content: '\\e955';\n }\n &.icon-file-xml:before {\n content: '\\e956';\n }\n &.icon-dictionary-locked:before {\n content: '\\e957';\n }\n &.icon-dictionary:before {\n content: '\\e958';\n }\n &.icon-file-dotted:before {\n content: '\\e959';\n }\n &.icon-file-circle-check:before {\n content: '\\e95a';\n }\n &.icon-back:before {\n content: '\\e95b';\n }\n &.icon-chevron-left:before {\n content: '\\e95c';\n }\n &.icon-chevron-up:before {\n content: '\\e95d';\n }\n &.icon-chevron-down:before {\n content: '\\e95e';\n }\n &.icon-return-level-up:before {\n content: '\\e95f';\n }\n &.icon-return:before {\n content: '\\e960';\n }\n &.icon-edit:before {\n content: '\\e900';\n }\n &.icon-delete:before {\n content: '\\e901';\n }\n &.icon-settings:before {\n content: \"\\e93b\";\n }\n &.icon-network-drive:before {\n content: \"\\e9a1\";\n }\n &.icon-GitOps:before {\n content: \"\\e9a2\";\n }\n &.icon-rss:before {\n content: \"\\e9c1\";\n }\n &.icon-bug:before {\n content: \"\\e9c2\";\n }\n &.icon-cloud:before {\n content: \"\\e9c3\";\n }\n &.icon-more-horizontal:before {\n content: \"\\e9c4\";\n }\n &.icon-expand:before {\n content: \"\\e9c5\";\n }\n &.icon-collapse:before {\n content: \"\\e9c6\";\n }\n }\n }\n }"], ["\n &.", " {\n align-items: center;\n box-sizing: content-box;\n display: flex;\n float: left; // allows flex items to display inline\n font-size: 20px;\n justify-content: center;\n\n &.MuiIcon-fontSizeLarge {\n font-size: 28px;\n height: 35px;\n width: 35px;\n\n i {\n height: 28px\n }\n }\n &.MuiIcon-fontSizeSmall {\n font-size: 18px;\n\n i {\n height: 18px;\n }\n }\n\n i {\n height: 20px;\n\n &:before {\n font-family: 'dot' !important;\n font-style: normal;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n &.icon-user-security:before {\n content: \"\\\\e9d2\";\n }\n\n &.icon-rocket:before {\n content: \"\\\\e9d3\";\n }\n\n &.icon-merge:before {\n content: \"\\\\e9d1\";\n }\n\n &.icon-cpu:before {\n content: \"\\\\e9d0\";\n }\n\n &.icon-progeression:before {\n content: \"\\\\e9cf\";\n }\n\n &.icon-commit:before {\n content: \"\\\\e95f\";\n }\n &.icon-design:before {\n content: \"\\\\e960\";\n }\n &.icon-key:before {\n content: \"\\\\e981\";\n }\n &.icon-infrastructure:before {\n content: \"\\\\e989\";\n }\n &.icon-report:before {\n content: \"\\\\e9ce\";\n }\n &.icon-package:before {\n content: \"\\\\e9c9\";\n }\n &.icon-security-off:before {\n content: \"\\\\e9ca\";\n }\n &.icon-security-on:before {\n content: \"\\\\e9cb\";\n }\n &.icon-marker-check:before {\n content: \"\\\\e9cc\";\n }\n &.icon-restore:before {\n content: \"\\\\e9cd\";\n }\n &.icon-check-outlined:before {\n content: \"\\\\e9c7\";\n }\n &.icon-circle-half-full:before {\n content: \"\\\\e9c8\";\n }\n &.icon-host:before {\n content: '\\\\e9b9';\n }\n &.icon-cluster:before {\n content: '\\\\e9ba';\n }\n &.icon-environment:before {\n content: '\\\\e9bb';\n }\n &.icon-monitor-controls:before {\n content: '\\\\e9bc';\n }\n &.icon-flag:before {\n content: '\\\\e9bd';\n }\n &.icon-satelite:before {\n content: '\\\\e9be';\n }\n &.icon-satelite-group:before {\n content: '\\\\e9bf';\n }\n &.icon-monitor-gears:before {\n content: '\\\\e9c0';\n }\n &.icon-patch:before {\n content: '\\\\e9b6';\n }\n &.icon-branch:before {\n content: '\\\\e9b4';\n }\n &.icon-send-airplane:before {\n content: '\\\\e9b5';\n }\n &.icon-briefcase:before {\n content: '\\\\e9b7';\n }\n &.icon-cluster-dependencies:before {\n content: '\\\\e9b8';\n }\n &.icon-script:before {\n content: '\\\\e966';\n }\n &.icon-pattern-bundle:before {\n content: '\\\\e967';\n }\n &.icon-outline:before {\n content: '\\\\e968';\n }\n &.icon-apps:before {\n content: '\\\\e969';\n }\n &.icon-archive:before {\n content: '\\\\e96a';\n }\n &.icon-arrow-down:before {\n content: '\\\\e96b';\n }\n &.icon-arrow-right:before {\n content: '\\\\e96c';\n }\n &.icon-arrow-up:before {\n content: '\\\\e96d';\n }\n &.icon-attachment:before {\n content: '\\\\e96e';\n }\n &.icon-board:before {\n content: '\\\\e96f';\n }\n &.icon-calendar:before {\n content: '\\\\e970';\n }\n &.icon-change:before {\n content: '\\\\e971';\n }\n &.icon-chevron-right:before {\n content: '\\\\e972';\n }\n &.icon-circle-minus-outlines:before {\n content: '\\\\e973';\n }\n &.icon-circle-paused:before {\n content: '\\\\e974';\n }\n &.icon-column:before {\n content: '\\\\e975';\n }\n &.icon-comment:before {\n content: '\\\\e976';\n }\n &.icon-configuration-preferences:before {\n content: '\\\\e977';\n }\n &.icon-conversation-bubbles:before {\n content: '\\\\e978';\n }\n &.icon-dashboard:before {\n content: '\\\\e979';\n }\n &.icon-database:before {\n content: '\\\\e97a';\n }\n &.icon-delivery-eta-icon:before {\n content: '\\\\e97b';\n }\n &.icon-download:before {\n content: '\\\\e97c';\n }\n &.icon-drag:before {\n content: '\\\\e97d';\n }\n &.icon-duplicate:before {\n content: '\\\\e97e';\n }\n &.icon-exit:before {\n content: '\\\\e97f';\n }\n &.icon-expand-chevrons:before {\n content: '\\\\e980';\n }\n &.icon-expander:before {\n content: '\\\\e981';\n }\n &.icon-file-image:before {\n content: '\\\\e982';\n }\n &.icon-file-lines:before {\n content: '\\\\e983';\n }\n &.icon-file-warning:before {\n content: '\\\\e984';\n }\n &.icon-file:before {\n content: '\\\\e985';\n }\n &.icon-filter:before {\n content: '\\\\e986';\n }\n &.icon-flag-none:before {\n content: '\\\\e987';\n }\n &.icon-folder:before {\n content: '\\\\e988';\n }\n &.icon-full-screen:before {\n content: '\\\\e989';\n }\n &.icon-fullscreen-enter:before {\n content: '\\\\e98a';\n }\n &.icon-fullscreen-exit:before {\n content: '\\\\e98b';\n }\n &.icon-grid:before {\n content: '\\\\e98c';\n }\n &.icon-hard-drive:before {\n content: '\\\\e98d';\n }\n &.icon-help:before {\n content: '\\\\e98e';\n }\n &.icon-history:before {\n content: '\\\\e98f';\n }\n &.icon-inbox:before {\n content: '\\\\e990';\n }\n &.icon-link:before {\n content: '\\\\e991';\n }\n &.icon-list:before {\n content: '\\\\e992';\n }\n &.icon-lock:before {\n content: '\\\\e993';\n }\n &.icon-mail:before {\n content: '\\\\e994';\n }\n &.icon-menu:before {\n content: '\\\\e995';\n }\n &.icon-monitor-satellite:before {\n content: '\\\\e996';\n }\n &.icon-monitor:before {\n content: '\\\\e997';\n }\n &.icon-notification-bell:before {\n content: '\\\\e998';\n }\n &.icon-open-new-tab:before {\n content: '\\\\e999';\n }\n &.icon-options:before {\n content: '\\\\e99a';\n }\n &.icon-parallel:before {\n content: '\\\\e99b';\n }\n &.icon-pending-clock:before {\n content: '\\\\e99c';\n }\n &.icon-play:before {\n content: '\\\\e99d';\n }\n &.icon-redo:before {\n content: '\\\\e99e';\n }\n &.icon-refresh:before {\n content: '\\\\e99f';\n }\n &.icon-release:before {\n content: '\\\\e9a0';\n }\n &.icon-search:before {\n content: '\\\\e9a3';\n }\n &.icon-sequential:before {\n content: '\\\\e9a4';\n }\n &.icon-sort-asc:before {\n content: '\\\\e9a5';\n }\n &.icon-sort-desc:before {\n content: '\\\\e9a6';\n }\n &.icon-star-favorites-active:before {\n content: '\\\\e9a7';\n }\n &.icon-star-favorites-default:before {\n content: '\\\\e9a8';\n }\n &.icon-target:before {\n content: '\\\\e9a9';\n }\n &.icon-task:before {\n content: '\\\\e9aa';\n }\n &.icon-template:before {\n content: '\\\\e9ab';\n }\n &.icon-undo:before {\n content: '\\\\e9ac';\n }\n &.icon-unlock:before {\n content: '\\\\e9ad';\n }\n &.icon-variable:before {\n content: '\\\\e9ae';\n }\n &.icon-vault:before {\n content: '\\\\e9af';\n }\n &.icon-visibility-off:before {\n content: '\\\\e9b0';\n }\n &.icon-visibility-on:before {\n content: '\\\\e9b1';\n }\n &.icon-webhook:before {\n content: '\\\\e9b2';\n }\n &.icon-wrench:before {\n content: '\\\\e9b3';\n }\n &.icon-bright:before {\n content: '\\\\e961';\n }\n &.icon-rogue-commits:before {\n content: '\\\\e962';\n }\n &.icon-home:before {\n content: '\\\\e963';\n }\n &.icon-blocking-issues:before {\n content: '\\\\e964';\n }\n &.icon-print-link:before {\n content: '\\\\e965';\n }\n &.icon-logo-deploy:before {\n content: '\\\\e902';\n }\n &.icon-logo-experitest:before {\n content: '\\\\e903';\n }\n &.icon-logo-numerify:before {\n content: '\\\\e904';\n }\n &.icon-logo-arxan:before {\n content: '\\\\e905';\n }\n &.icon-logo-continuum:before {\n content: '\\\\e906';\n }\n &.icon-logo-versionone:before {\n content: '\\\\e907';\n }\n &.icon-logo-release:before {\n content: '\\\\e908';\n }\n &.icon-warning-solid:before {\n content: '\\\\e909';\n }\n &.icon-warning-outline:before {\n content: '\\\\e90a';\n }\n &.icon-info-solid:before {\n content: '\\\\e90b';\n }\n &.icon-minus-solid:before {\n content: '\\\\e90c';\n }\n &.icon-check-solid:before {\n content: '\\\\e90d';\n }\n &.icon-error-solid:before {\n content: '\\\\e90e';\n }\n &.icon-error-outlines:before {\n content: '\\\\e90f';\n }\n &.icon-add-outlined:before {\n content: '\\\\e910';\n }\n &.icon-add-solid:before {\n content: '\\\\e911';\n }\n &.icon-clear-solid:before {\n content: '\\\\e912';\n }\n &.icon-dark:before {\n content: '\\\\e913';\n }\n &.icon-location:before {\n content: '\\\\e914';\n }\n &.icon-roadmap:before {\n content: '\\\\e915';\n }\n &.icon-follow-solid:before {\n content: '\\\\e916';\n }\n &.icon-follow-outlined:before {\n content: '\\\\e917';\n }\n &.icon-video:before {\n content: '\\\\e918';\n }\n &.icon-thumbs-down:before {\n content: '\\\\e919';\n }\n &.icon-camera:before {\n content: '\\\\e91a';\n }\n &.icon-users:before {\n content: '\\\\e91b';\n }\n &.icon-user:before {\n content: '\\\\e91c';\n }\n &.icon-announcement:before {\n content: '\\\\e91d';\n }\n &.icon-not-allowed:before {\n content: '\\\\e91e';\n }\n &.icon-zoom-out:before {\n content: '\\\\e91f';\n }\n &.icon-zoom-in:before {\n content: '\\\\e920';\n }\n &.icon-triangle:before {\n content: '\\\\e921';\n }\n &.icon-delay:before {\n content: '\\\\e922';\n }\n &.icon-circle-outline:before {\n content: '\\\\e923';\n }\n &.icon-circle:before {\n content: '\\\\e924';\n }\n &.icon-add-from-list:before {\n content: '\\\\e925';\n }\n &.icon-sync:before {\n content: '\\\\e926';\n }\n &.icon-keyboard:before {\n content: '\\\\e927';\n }\n &.icon-planner:before {\n content: '\\\\e928';\n }\n &.icon-tag:before {\n content: '\\\\e929';\n }\n &.icon-progress:before {\n content: '\\\\e92a';\n }\n &.icon-timeline:before {\n content: '\\\\e92b';\n }\n &.icon-abort:before {\n content: '\\\\e92c';\n }\n &.icon-cancel:before {\n content: '\\\\e92d';\n }\n &.icon-power:before {\n content: '\\\\e92e';\n }\n &.icon-resize:before {\n content: '\\\\e92f';\n }\n &.icon-close:before {\n content: '\\\\e930';\n }\n &.icon-save:before {\n content: '\\\\e931';\n }\n &.icon-drag-vertical-up-down:before {\n content: '\\\\e932';\n }\n &.icon-add:before {\n content: '\\\\e933';\n }\n &.icon-minus:before {\n content: '\\\\e934';\n }\n &.icon-target-none:before {\n content: '\\\\e935';\n }\n &.icon-placeholder:before {\n content: '\\\\e936';\n }\n &.icon-server:before {\n content: '\\\\e937';\n }\n &.icon-square-wrench:before {\n content: '\\\\e938';\n }\n &.icon-square-wrench-check:before {\n content: '\\\\e939';\n }\n &.icon-square-settings:before {\n content: '\\\\e93a';\n }\n &.icon-trigger:before {\n content: '\\\\e93c';\n }\n &.icon-precondition:before {\n content: '\\\\e93d';\n }\n &.icon-composition:before {\n content: '\\\\e93e';\n }\n &.icon-block:before {\n content: '\\\\e93f';\n }\n &.icon-group:before {\n content: '\\\\e940';\n }\n &.icon-settings-admin-opaque:before {\n content: '\\\\e941';\n }\n &.icon-puzzle:before {\n content: '\\\\e942';\n }\n &.icon-alphabet-icon:before {\n content: '\\\\e943';\n }\n &.icon-crop:before {\n content: '\\\\e944';\n }\n &.icon-upload-file:before {\n content: '\\\\e945';\n }\n &.icon-container:before {\n content: '\\\\e946';\n }\n &.icon-flag-risk:before {\n content: '\\\\e947';\n }\n &.icon-learn:before {\n content: '\\\\e948';\n }\n &.icon-tree:before {\n content: '\\\\e949';\n }\n &.icon-process-template:before {\n content: '\\\\e94a';\n }\n &.icon-flag-attention:before {\n content: '\\\\e94b';\n }\n &.icon-collection:before {\n content: '\\\\e94c';\n }\n &.icon-table:before {\n content: '\\\\e94d';\n }\n &.icon-linkBrakeIt:before {\n content: '\\\\e94e';\n }\n &.icon-move-folder:before {\n content: '\\\\e94f';\n }\n &.icon-columns:before {\n content: '\\\\e950';\n }\n &.icon-file-word-doc:before {\n content: '\\\\e951';\n }\n &.icon-file-ppt:before {\n content: '\\\\e952';\n }\n &.icon-file-zip:before {\n content: '\\\\e953';\n }\n &.icon-file-xls:before {\n content: '\\\\e954';\n }\n &.icon-file-pdf:before {\n content: '\\\\e955';\n }\n &.icon-file-xml:before {\n content: '\\\\e956';\n }\n &.icon-dictionary-locked:before {\n content: '\\\\e957';\n }\n &.icon-dictionary:before {\n content: '\\\\e958';\n }\n &.icon-file-dotted:before {\n content: '\\\\e959';\n }\n &.icon-file-circle-check:before {\n content: '\\\\e95a';\n }\n &.icon-back:before {\n content: '\\\\e95b';\n }\n &.icon-chevron-left:before {\n content: '\\\\e95c';\n }\n &.icon-chevron-up:before {\n content: '\\\\e95d';\n }\n &.icon-chevron-down:before {\n content: '\\\\e95e';\n }\n &.icon-return-level-up:before {\n content: '\\\\e95f';\n }\n &.icon-return:before {\n content: '\\\\e960';\n }\n &.icon-edit:before {\n content: '\\\\e900';\n }\n &.icon-delete:before {\n content: '\\\\e901';\n }\n &.icon-settings:before {\n content: \"\\\\e93b\";\n }\n &.icon-network-drive:before {\n content: \"\\\\e9a1\";\n }\n &.icon-GitOps:before {\n content: \"\\\\e9a2\";\n }\n &.icon-rss:before {\n content: \"\\\\e9c1\";\n }\n &.icon-bug:before {\n content: \"\\\\e9c2\";\n }\n &.icon-cloud:before {\n content: \"\\\\e9c3\";\n }\n &.icon-more-horizontal:before {\n content: \"\\\\e9c4\";\n }\n &.icon-expand:before {\n content: \"\\\\e9c5\";\n }\n &.icon-collapse:before {\n content: \"\\\\e9c6\";\n }\n }\n }\n }"])), rootClassName$F);
29
30
 
30
31
  var DotIcon = function DotIcon(_ref) {
31
32
  var ariaLabel = _ref.ariaLabel,
32
33
  className = _ref.className,
33
34
  dataTestId = _ref['data-testid'],
34
35
  _ref$fontSize = _ref.fontSize,
35
- fontSize = _ref$fontSize === void 0 ? 'default' : _ref$fontSize,
36
+ fontSize = _ref$fontSize === void 0 ? 'medium' : _ref$fontSize,
36
37
  iconId = _ref.iconId,
37
38
  _ref$title = _ref.title,
38
39
  title = _ref$title === void 0 ? '' : _ref$title;
39
- var rootClasses = useStylesWithRootClass(rootClassName$E, className);
40
+ var rootClasses = useStylesWithRootClass(rootClassName$F, className); // deprecation warning(s)
41
+
42
+ useEffect(function () {
43
+ // 'inherit' causes the vertical alignment of the icon to be not be centered
44
+ // TO-DO: S-76846 MUI 5 change IconFontSize 'default' to 'medium'
45
+ if (fontSize === 'inherit' || fontSize === 'default') {
46
+ console.warn("The use of `fontSize: " + fontSize + "` on `DotIcon` is deprecated and will be removed in the next release. Please consider using `fontSize: medium` instead.");
47
+ }
48
+ }, []);
40
49
  return /*#__PURE__*/React__default.createElement(StyledIcon, {
41
50
  "aria-hidden": "false",
42
51
  "aria-label": ariaLabel,
@@ -44,7 +53,7 @@ var DotIcon = function DotIcon(_ref) {
44
53
  root: rootClasses
45
54
  },
46
55
  "data-testid": dataTestId,
47
- fontSize: fontSize === 'default' ? 'medium' : fontSize,
56
+ fontSize: fontSize === 'small' ? fontSize : 'medium',
48
57
  title: title
49
58
  }, /*#__PURE__*/React__default.createElement("i", {
50
59
  className: "icon-" + iconId + " dot-i"
@@ -70,2584 +79,254 @@ var DotTypography = function DotTypography(_ref) {
70
79
  noWrap: noWrap,
71
80
  variant: variant
72
81
  }, children);
73
- };
74
-
75
- var _templateObject$H;
76
- var rootClassName$D = 'dot-accordion';
77
- var summaryClassName = 'dot-accordion-summary';
78
- var detailClassName = 'dot-accordion-details';
79
- var StyledAccordion = styled(Accordion)(_templateObject$H || (_templateObject$H = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
80
- var theme = _ref.theme;
81
- return css(["&.", "{background:", ";.", "{align-items:center;display:flex;.MuiAccordionSummary-content{width:calc(100% - ", "px);}.MuiTypography-root{margin-bottom:0;}.dot-icon{margin-right:", "px;}.MuiTypography-body1{padding:2px 0;}}}"], rootClassName$D, theme.palette.product === 'agility' && theme.palette.layer.n50, summaryClassName, theme.spacing(5), theme.spacing(0.5));
82
- });
83
-
84
- var DotAccordion = function DotAccordion(_ref) {
85
- var actions = _ref.actions,
86
- ariaLabel = _ref.ariaLabel,
87
- children = _ref.children,
88
- className = _ref.className,
89
- _ref$dataTestid = _ref['data-testid'],
90
- dataTestId = _ref$dataTestid === void 0 ? 'dot-accordion' : _ref$dataTestid,
91
- _ref$defaultExpanded = _ref.defaultExpanded,
92
- defaultExpanded = _ref$defaultExpanded === void 0 ? false : _ref$defaultExpanded,
93
- _ref$disabled = _ref.disabled,
94
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
95
- _ref$hasElevation = _ref.hasElevation,
96
- hasElevation = _ref$hasElevation === void 0 ? false : _ref$hasElevation,
97
- _ref$square = _ref.square,
98
- square = _ref$square === void 0 ? false : _ref$square,
99
- startIcon = _ref.startIcon,
100
- summary = _ref.summary,
101
- _ref$noWrap = _ref.noWrap,
102
- noWrap = _ref$noWrap === void 0 ? true : _ref$noWrap;
103
- var rootClasses = useStylesWithRootClass(rootClassName$D, className);
104
-
105
- var _useState = useState(),
106
- elevation = _useState[0],
107
- setElevation = _useState[1];
108
-
109
- useEffect(function () {
110
- setElevation(hasElevation ? 1 : 0);
111
- }, [hasElevation]);
112
- return /*#__PURE__*/React__default.createElement(StyledAccordion, {
113
- "aria-label": ariaLabel,
114
- className: rootClasses,
115
- "data-testid": dataTestId,
116
- defaultExpanded: defaultExpanded,
117
- disabled: disabled,
118
- elevation: elevation,
119
- square: square
120
- }, /*#__PURE__*/React__default.createElement(AccordionSummary, {
121
- className: summaryClassName,
122
- "data-testid": dataTestId + "-summary",
123
- expandIcon: /*#__PURE__*/React__default.createElement(DotIcon, {
124
- iconId: "chevron-down"
125
- })
126
- }, startIcon, /*#__PURE__*/React__default.createElement(DotTypography, {
127
- variant: "body1",
128
- noWrap: noWrap
129
- }, /*#__PURE__*/React__default.createElement(Tooltip, {
130
- className: "dot-tooltip",
131
- placement: "top-start",
132
- title: noWrap ? summary : ''
133
- }, /*#__PURE__*/React__default.createElement("span", null, summary)))), /*#__PURE__*/React__default.createElement(AccordionDetails, {
134
- className: detailClassName,
135
- "data-testid": dataTestId + "-details"
136
- }, children), /*#__PURE__*/React__default.createElement(Divider, null), actions && /*#__PURE__*/React__default.createElement(AccordionActions, null, actions));
137
- };
138
-
139
- var _templateObject$G;
140
- var rootClassName$C = 'dot-action-toolbar';
141
- var StyledToolbar = styled(Toolbar)(_templateObject$G || (_templateObject$G = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
142
- var theme = _ref.theme;
143
- return css(["&.", "{border-bottom:1px solid ", ";}"], rootClassName$C, theme.palette.product === 'agility' ? theme.palette.layer.n100 : theme.palette.grey[100]);
144
- });
145
-
146
- var DotActionToolbar = function DotActionToolbar(_ref) {
147
- var ariaLabel = _ref.ariaLabel,
148
- children = _ref.children,
149
- className = _ref.className,
150
- dataTestId = _ref['data-testid'],
151
- _ref$variant = _ref.variant,
152
- variant = _ref$variant === void 0 ? 'dense' : _ref$variant;
153
- var rootClasses = useStylesWithRootClass(rootClassName$C, className);
154
- return /*#__PURE__*/React__default.createElement(StyledToolbar, {
155
- "aria-label": ariaLabel,
156
- className: rootClasses,
157
- "data-testid": dataTestId,
158
- variant: variant
159
- }, children);
160
- };
161
-
162
- var _templateObject$F;
163
- var rootClassName$B = 'dot-alert-banner';
164
- var StyledAlertBanner = styled(Alert)(_templateObject$F || (_templateObject$F = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
165
- var theme = _ref.theme;
166
- return css(["&.", "{padding:", ";.MuiAlert-message{padding:", ";}&.MuiAlert-standardSuccess{.MuiAlert-icon,.dot-typography{color:", ";}}&.MuiAlert-standardInfo{background-color:", ";.MuiAlert-icon,.dot-typography{color:", ";}}&.MuiAlert-standardWarning{background-color:", ";color:", ";.MuiAlert-icon,.dot-typography{color:", ";}}&.MuiAlert-standardError{.MuiAlert-icon,.dot-typography{color:", ";}}.MuiAlert-icon{padding:", ";}}"], rootClassName$B, theme.spacing(0, 2), theme.spacing(2, 0), theme.palette.success[700], theme.palette.primary[50], theme.palette.primary[500], theme.palette.warning[100], theme.palette.grey[700], theme.palette.grey[700], theme.palette.error[700], theme.spacing(1.75, 0));
167
- });
168
-
169
- var DotAlertBanner = function DotAlertBanner(_ref) {
170
- var action = _ref.action,
171
- ariaLabel = _ref.ariaLabel,
172
- children = _ref.children,
173
- className = _ref.className,
174
- dataTestId = _ref['data-testid'],
175
- _onClose = _ref.onClose,
176
- severity = _ref.severity;
177
-
178
- var AlertBannerIcon = function AlertBannerIcon(iconId) {
179
- return /*#__PURE__*/React__default.createElement(DotIcon, {
180
- iconId: iconId
181
- });
182
- };
183
-
184
- var AlertBannerIconMapping = {
185
- error: AlertBannerIcon('error-solid'),
186
- info: AlertBannerIcon('info-solid'),
187
- success: AlertBannerIcon('check-solid'),
188
- warning: AlertBannerIcon('warning-solid')
189
- };
190
- var rootClasses = useStylesWithRootClass(rootClassName$B, className);
191
- return /*#__PURE__*/React__default.createElement(StyledAlertBanner, {
192
- action: action,
193
- "aria-label": ariaLabel,
194
- classes: {
195
- root: rootClasses
196
- },
197
- "data-testid": dataTestId,
198
- iconMapping: AlertBannerIconMapping,
199
- onClose: function onClose(event) {
200
- return _onClose ? _onClose(event) : null;
201
- },
202
- severity: severity
203
- }, /*#__PURE__*/React__default.createElement(DotTypography, {
204
- variant: "subtitle2"
205
- }, children));
206
- };
207
-
208
- var _templateObject$E;
209
- var rootClassName$A = 'dot-icon-btn';
210
- var StyledIconButton = styled(IconButton)(_templateObject$E || (_templateObject$E = _taggedTemplateLiteralLoose(["\n ", "\n"])), function () {
211
- return css(["&.", "{padding:10px;&.MuiIconButton-root{font-size:inherit;.dot-icon.MuiIcon-fontSizeSmall{padding:1px;}}&.MuiIconButton-sizeSmall{padding:3px;}}"], rootClassName$A);
212
- });
213
-
214
- var DotIconButton = function DotIconButton(_ref) {
215
- var ariaLabel = _ref.ariaLabel,
216
- className = _ref.className,
217
- _ref$color = _ref.color,
218
- color = _ref$color === void 0 ? 'inherit' : _ref$color,
219
- dataTestId = _ref['data-testid'],
220
- _ref$disabled = _ref.disabled,
221
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
222
- iconId = _ref.iconId,
223
- _ref$iconSize = _ref.iconSize,
224
- iconSize = _ref$iconSize === void 0 ? 'small' : _ref$iconSize,
225
- _onClick = _ref.onClick,
226
- titleTooltip = _ref.titleTooltip,
227
- _ref$size = _ref.size,
228
- size = _ref$size === void 0 ? 'medium' : _ref$size;
229
- var rootClasses = useStylesWithRootClass(rootClassName$A, className);
230
- return /*#__PURE__*/React__default.createElement(StyledIconButton, {
231
- "aria-label": ariaLabel,
232
- classes: {
233
- root: rootClasses
234
- },
235
- color: color,
236
- "data-testid": dataTestId,
237
- disabled: disabled,
238
- onClick: function onClick(event) {
239
- return _onClick && _onClick(event);
240
- },
241
- size: size,
242
- title: titleTooltip
243
- }, /*#__PURE__*/React__default.createElement(DotIcon, {
244
- "data-testid": "button-icon",
245
- fontSize: iconSize,
246
- iconId: iconId,
247
- title: titleTooltip
248
- }));
249
- };
250
-
251
- var _templateObject$D;
252
- var rootClassName$z = 'dot-link';
253
- var StyledLink = styled(Link)(_templateObject$D || (_templateObject$D = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
254
- var theme = _ref.theme;
255
- return css(["&.", "{color:", ";cursor:pointer;&:hover:not(.MuiLink-underlineHover){text-decoration:none;}}"], rootClassName$z, theme.palette.product === 'agility' && theme.palette.layer.n700);
256
- });
257
-
258
- var DotLink = function DotLink(_ref) {
259
- var ariaLabel = _ref.ariaLabel,
260
- children = _ref.children,
261
- className = _ref.className,
262
- _ref$color = _ref.color,
263
- color = _ref$color === void 0 ? 'primary' : _ref$color,
264
- dataTestId = _ref['data-testid'],
265
- href = _ref.href,
266
- onClick = _ref.onClick,
267
- onMouseEnter = _ref.onMouseEnter,
268
- _ref$rel = _ref.rel,
269
- rel = _ref$rel === void 0 ? 'noreferrer' : _ref$rel,
270
- _ref$tabIndex = _ref.tabIndex,
271
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,
272
- target = _ref.target,
273
- title = _ref.title,
274
- _ref$underline = _ref.underline,
275
- underline = _ref$underline === void 0 ? 'always' : _ref$underline;
276
- var rootClasses = useStylesWithRootClass(rootClassName$z, className);
277
-
278
- var handleKeyPress = function handleKeyPress(event) {
279
- if (onClick && event.key === 'Enter') {
280
- event.preventDefault();
281
- onClick(event);
282
- }
283
- };
284
-
285
- return /*#__PURE__*/React__default.createElement(StyledLink, {
286
- "aria-label": ariaLabel,
287
- classes: {
288
- root: rootClasses
289
- },
290
- color: color,
291
- "data-testid": dataTestId,
292
- href: href,
293
- onClick: onClick,
294
- onMouseEnter: onMouseEnter,
295
- onKeyPress: handleKeyPress,
296
- rel: rel,
297
- tabIndex: tabIndex,
298
- target: target,
299
- title: title,
300
- underline: underline
301
- }, children);
302
- };
303
-
304
- var _templateObject$C;
305
- var rootClassName$y = 'dot-avatar';
306
- var avatarSpacing = {
307
- small: 3,
308
- medium: 5,
309
- large: 7
310
- };
311
- var StyledAvatar = styled(Avatar)(_templateObject$C || (_templateObject$C = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
312
- var theme = _ref.theme;
313
- return css(["&.MuiAvatar-root{background-color:", ";.dot-i,.dot-typography{color:", ";}&.small{height:", "px;width:", "px;}&.medium{height:", "px;width:", "px;}&.large{height:", "px;width:", "px;}}"], function (_ref2) {
314
- var color = _ref2.color;
315
- return theme.palette.product === 'agility' && color === 'default' ? theme.palette.layer.n0 : color && theme.palette.avatarColors[color] ? theme.palette.avatarColors[color].backgroundColor : theme.palette.avatarColors['default'].backgroundColor;
316
- }, function (_ref3) {
317
- var color = _ref3.color;
318
- return theme.palette.product === 'agility' && color === 'default' ? theme.palette.layer.n700 : color && theme.palette.avatarColors[color] ? theme.palette.avatarColors[color].color : theme.palette.avatarColors['default'].color;
319
- }, theme.spacing(avatarSpacing.small), theme.spacing(avatarSpacing.small), theme.spacing(avatarSpacing.medium), theme.spacing(avatarSpacing.medium), theme.spacing(avatarSpacing.large), theme.spacing(avatarSpacing.large));
320
- });
321
-
322
- function _extends$3() {
323
- _extends$3 = Object.assign || function (target) {
324
- for (var i = 1; i < arguments.length; i++) {
325
- var source = arguments[i];
326
-
327
- for (var key in source) {
328
- if (Object.prototype.hasOwnProperty.call(source, key)) {
329
- target[key] = source[key];
330
- }
331
- }
332
- }
333
-
334
- return target;
335
- };
336
-
337
- return _extends$3.apply(this, arguments);
338
- }
339
-
340
- function _typeof(obj) {
341
- "@babel/helpers - typeof";
342
-
343
- if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
344
- _typeof = function _typeof(obj) {
345
- return typeof obj;
346
- };
347
- } else {
348
- _typeof = function _typeof(obj) {
349
- return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
350
- };
351
- }
352
-
353
- return _typeof(obj);
354
- }
355
-
356
- function isPlainObject(item) {
357
- return item && _typeof(item) === 'object' && item.constructor === Object;
358
- }
359
- function deepmerge(target, source) {
360
- var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {
361
- clone: true
362
- };
363
- var output = options.clone ? _extends$3({}, target) : target;
364
-
365
- if (isPlainObject(target) && isPlainObject(source)) {
366
- Object.keys(source).forEach(function (key) {
367
- // Avoid prototype pollution
368
- if (key === '__proto__') {
369
- return;
370
- }
371
-
372
- if (isPlainObject(source[key]) && key in target) {
373
- output[key] = deepmerge(target[key], source[key], options);
374
- } else {
375
- output[key] = source[key];
376
- }
377
- });
378
- }
379
-
380
- return output;
381
- }
382
-
383
- var propTypes = {exports: {}};
384
-
385
- var reactIs = {exports: {}};
386
-
387
- var reactIs_production_min = {};
388
-
389
- /** @license React v16.13.1
390
- * react-is.production.min.js
391
- *
392
- * Copyright (c) Facebook, Inc. and its affiliates.
393
- *
394
- * This source code is licensed under the MIT license found in the
395
- * LICENSE file in the root directory of this source tree.
396
- */
397
- var b="function"===typeof Symbol&&Symbol.for,c=b?Symbol.for("react.element"):60103,d=b?Symbol.for("react.portal"):60106,e=b?Symbol.for("react.fragment"):60107,f=b?Symbol.for("react.strict_mode"):60108,g=b?Symbol.for("react.profiler"):60114,h=b?Symbol.for("react.provider"):60109,k=b?Symbol.for("react.context"):60110,l=b?Symbol.for("react.async_mode"):60111,m=b?Symbol.for("react.concurrent_mode"):60111,n=b?Symbol.for("react.forward_ref"):60112,p=b?Symbol.for("react.suspense"):60113,q=b?
398
- Symbol.for("react.suspense_list"):60120,r=b?Symbol.for("react.memo"):60115,t=b?Symbol.for("react.lazy"):60116,v=b?Symbol.for("react.block"):60121,w=b?Symbol.for("react.fundamental"):60117,x=b?Symbol.for("react.responder"):60118,y=b?Symbol.for("react.scope"):60119;
399
- function z(a){if("object"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}reactIs_production_min.AsyncMode=l;reactIs_production_min.ConcurrentMode=m;reactIs_production_min.ContextConsumer=k;reactIs_production_min.ContextProvider=h;reactIs_production_min.Element=c;reactIs_production_min.ForwardRef=n;reactIs_production_min.Fragment=e;reactIs_production_min.Lazy=t;reactIs_production_min.Memo=r;reactIs_production_min.Portal=d;
400
- reactIs_production_min.Profiler=g;reactIs_production_min.StrictMode=f;reactIs_production_min.Suspense=p;reactIs_production_min.isAsyncMode=function(a){return A(a)||z(a)===l};reactIs_production_min.isConcurrentMode=A;reactIs_production_min.isContextConsumer=function(a){return z(a)===k};reactIs_production_min.isContextProvider=function(a){return z(a)===h};reactIs_production_min.isElement=function(a){return "object"===typeof a&&null!==a&&a.$$typeof===c};reactIs_production_min.isForwardRef=function(a){return z(a)===n};reactIs_production_min.isFragment=function(a){return z(a)===e};reactIs_production_min.isLazy=function(a){return z(a)===t};
401
- reactIs_production_min.isMemo=function(a){return z(a)===r};reactIs_production_min.isPortal=function(a){return z(a)===d};reactIs_production_min.isProfiler=function(a){return z(a)===g};reactIs_production_min.isStrictMode=function(a){return z(a)===f};reactIs_production_min.isSuspense=function(a){return z(a)===p};
402
- reactIs_production_min.isValidElementType=function(a){return "string"===typeof a||"function"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||"object"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};reactIs_production_min.typeOf=z;
403
-
404
- var reactIs_development = {};
405
-
406
- /** @license React v16.13.1
407
- * react-is.development.js
408
- *
409
- * Copyright (c) Facebook, Inc. and its affiliates.
410
- *
411
- * This source code is licensed under the MIT license found in the
412
- * LICENSE file in the root directory of this source tree.
413
- */
414
-
415
-
416
-
417
- if (process.env.NODE_ENV !== "production") {
418
- (function() {
419
-
420
- // The Symbol used to tag the ReactElement-like types. If there is no native Symbol
421
- // nor polyfill, then a plain number is used for performance.
422
- var hasSymbol = typeof Symbol === 'function' && Symbol.for;
423
- var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
424
- var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
425
- var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
426
- var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
427
- var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
428
- var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
429
- var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
430
- // (unstable) APIs that have been removed. Can we remove the symbols?
431
-
432
- var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
433
- var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
434
- var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
435
- var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
436
- var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
437
- var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
438
- var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
439
- var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
440
- var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
441
- var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
442
- var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
443
-
444
- function isValidElementType(type) {
445
- return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
446
- type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);
447
- }
448
-
449
- function typeOf(object) {
450
- if (typeof object === 'object' && object !== null) {
451
- var $$typeof = object.$$typeof;
452
-
453
- switch ($$typeof) {
454
- case REACT_ELEMENT_TYPE:
455
- var type = object.type;
456
-
457
- switch (type) {
458
- case REACT_ASYNC_MODE_TYPE:
459
- case REACT_CONCURRENT_MODE_TYPE:
460
- case REACT_FRAGMENT_TYPE:
461
- case REACT_PROFILER_TYPE:
462
- case REACT_STRICT_MODE_TYPE:
463
- case REACT_SUSPENSE_TYPE:
464
- return type;
465
-
466
- default:
467
- var $$typeofType = type && type.$$typeof;
468
-
469
- switch ($$typeofType) {
470
- case REACT_CONTEXT_TYPE:
471
- case REACT_FORWARD_REF_TYPE:
472
- case REACT_LAZY_TYPE:
473
- case REACT_MEMO_TYPE:
474
- case REACT_PROVIDER_TYPE:
475
- return $$typeofType;
476
-
477
- default:
478
- return $$typeof;
479
- }
480
-
481
- }
482
-
483
- case REACT_PORTAL_TYPE:
484
- return $$typeof;
485
- }
486
- }
487
-
488
- return undefined;
489
- } // AsyncMode is deprecated along with isAsyncMode
490
-
491
- var AsyncMode = REACT_ASYNC_MODE_TYPE;
492
- var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
493
- var ContextConsumer = REACT_CONTEXT_TYPE;
494
- var ContextProvider = REACT_PROVIDER_TYPE;
495
- var Element = REACT_ELEMENT_TYPE;
496
- var ForwardRef = REACT_FORWARD_REF_TYPE;
497
- var Fragment = REACT_FRAGMENT_TYPE;
498
- var Lazy = REACT_LAZY_TYPE;
499
- var Memo = REACT_MEMO_TYPE;
500
- var Portal = REACT_PORTAL_TYPE;
501
- var Profiler = REACT_PROFILER_TYPE;
502
- var StrictMode = REACT_STRICT_MODE_TYPE;
503
- var Suspense = REACT_SUSPENSE_TYPE;
504
- var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
505
-
506
- function isAsyncMode(object) {
507
- {
508
- if (!hasWarnedAboutDeprecatedIsAsyncMode) {
509
- hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
510
-
511
- console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');
512
- }
513
- }
514
-
515
- return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
516
- }
517
- function isConcurrentMode(object) {
518
- return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
519
- }
520
- function isContextConsumer(object) {
521
- return typeOf(object) === REACT_CONTEXT_TYPE;
522
- }
523
- function isContextProvider(object) {
524
- return typeOf(object) === REACT_PROVIDER_TYPE;
525
- }
526
- function isElement(object) {
527
- return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
528
- }
529
- function isForwardRef(object) {
530
- return typeOf(object) === REACT_FORWARD_REF_TYPE;
531
- }
532
- function isFragment(object) {
533
- return typeOf(object) === REACT_FRAGMENT_TYPE;
534
- }
535
- function isLazy(object) {
536
- return typeOf(object) === REACT_LAZY_TYPE;
537
- }
538
- function isMemo(object) {
539
- return typeOf(object) === REACT_MEMO_TYPE;
540
- }
541
- function isPortal(object) {
542
- return typeOf(object) === REACT_PORTAL_TYPE;
543
- }
544
- function isProfiler(object) {
545
- return typeOf(object) === REACT_PROFILER_TYPE;
546
- }
547
- function isStrictMode(object) {
548
- return typeOf(object) === REACT_STRICT_MODE_TYPE;
549
- }
550
- function isSuspense(object) {
551
- return typeOf(object) === REACT_SUSPENSE_TYPE;
552
- }
553
-
554
- reactIs_development.AsyncMode = AsyncMode;
555
- reactIs_development.ConcurrentMode = ConcurrentMode;
556
- reactIs_development.ContextConsumer = ContextConsumer;
557
- reactIs_development.ContextProvider = ContextProvider;
558
- reactIs_development.Element = Element;
559
- reactIs_development.ForwardRef = ForwardRef;
560
- reactIs_development.Fragment = Fragment;
561
- reactIs_development.Lazy = Lazy;
562
- reactIs_development.Memo = Memo;
563
- reactIs_development.Portal = Portal;
564
- reactIs_development.Profiler = Profiler;
565
- reactIs_development.StrictMode = StrictMode;
566
- reactIs_development.Suspense = Suspense;
567
- reactIs_development.isAsyncMode = isAsyncMode;
568
- reactIs_development.isConcurrentMode = isConcurrentMode;
569
- reactIs_development.isContextConsumer = isContextConsumer;
570
- reactIs_development.isContextProvider = isContextProvider;
571
- reactIs_development.isElement = isElement;
572
- reactIs_development.isForwardRef = isForwardRef;
573
- reactIs_development.isFragment = isFragment;
574
- reactIs_development.isLazy = isLazy;
575
- reactIs_development.isMemo = isMemo;
576
- reactIs_development.isPortal = isPortal;
577
- reactIs_development.isProfiler = isProfiler;
578
- reactIs_development.isStrictMode = isStrictMode;
579
- reactIs_development.isSuspense = isSuspense;
580
- reactIs_development.isValidElementType = isValidElementType;
581
- reactIs_development.typeOf = typeOf;
582
- })();
583
- }
584
-
585
- if (process.env.NODE_ENV === 'production') {
586
- reactIs.exports = reactIs_production_min;
587
- } else {
588
- reactIs.exports = reactIs_development;
589
- }
590
-
591
- /*
592
- object-assign
593
- (c) Sindre Sorhus
594
- @license MIT
595
- */
596
- /* eslint-disable no-unused-vars */
597
- var getOwnPropertySymbols = Object.getOwnPropertySymbols;
598
- var hasOwnProperty = Object.prototype.hasOwnProperty;
599
- var propIsEnumerable = Object.prototype.propertyIsEnumerable;
600
-
601
- function toObject(val) {
602
- if (val === null || val === undefined) {
603
- throw new TypeError('Object.assign cannot be called with null or undefined');
604
- }
605
-
606
- return Object(val);
607
- }
608
-
609
- function shouldUseNative() {
610
- try {
611
- if (!Object.assign) {
612
- return false;
613
- }
614
-
615
- // Detect buggy property enumeration order in older V8 versions.
616
-
617
- // https://bugs.chromium.org/p/v8/issues/detail?id=4118
618
- var test1 = new String('abc'); // eslint-disable-line no-new-wrappers
619
- test1[5] = 'de';
620
- if (Object.getOwnPropertyNames(test1)[0] === '5') {
621
- return false;
622
- }
623
-
624
- // https://bugs.chromium.org/p/v8/issues/detail?id=3056
625
- var test2 = {};
626
- for (var i = 0; i < 10; i++) {
627
- test2['_' + String.fromCharCode(i)] = i;
628
- }
629
- var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
630
- return test2[n];
631
- });
632
- if (order2.join('') !== '0123456789') {
633
- return false;
634
- }
635
-
636
- // https://bugs.chromium.org/p/v8/issues/detail?id=3056
637
- var test3 = {};
638
- 'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
639
- test3[letter] = letter;
640
- });
641
- if (Object.keys(Object.assign({}, test3)).join('') !==
642
- 'abcdefghijklmnopqrst') {
643
- return false;
644
- }
645
-
646
- return true;
647
- } catch (err) {
648
- // We don't expect any of the above to throw, but better to be safe.
649
- return false;
650
- }
651
- }
652
-
653
- var objectAssign = shouldUseNative() ? Object.assign : function (target, source) {
654
- var from;
655
- var to = toObject(target);
656
- var symbols;
657
-
658
- for (var s = 1; s < arguments.length; s++) {
659
- from = Object(arguments[s]);
660
-
661
- for (var key in from) {
662
- if (hasOwnProperty.call(from, key)) {
663
- to[key] = from[key];
664
- }
665
- }
666
-
667
- if (getOwnPropertySymbols) {
668
- symbols = getOwnPropertySymbols(from);
669
- for (var i = 0; i < symbols.length; i++) {
670
- if (propIsEnumerable.call(from, symbols[i])) {
671
- to[symbols[i]] = from[symbols[i]];
672
- }
673
- }
674
- }
675
- }
676
-
677
- return to;
678
- };
679
-
680
- /**
681
- * Copyright (c) 2013-present, Facebook, Inc.
682
- *
683
- * This source code is licensed under the MIT license found in the
684
- * LICENSE file in the root directory of this source tree.
685
- */
686
-
687
- var ReactPropTypesSecret$3 = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
688
-
689
- var ReactPropTypesSecret_1 = ReactPropTypesSecret$3;
690
-
691
- /**
692
- * Copyright (c) 2013-present, Facebook, Inc.
693
- *
694
- * This source code is licensed under the MIT license found in the
695
- * LICENSE file in the root directory of this source tree.
696
- */
697
-
698
- var printWarning$1 = function() {};
699
-
700
- if (process.env.NODE_ENV !== 'production') {
701
- var ReactPropTypesSecret$2 = ReactPropTypesSecret_1;
702
- var loggedTypeFailures = {};
703
- var has$1 = Function.call.bind(Object.prototype.hasOwnProperty);
704
-
705
- printWarning$1 = function(text) {
706
- var message = 'Warning: ' + text;
707
- if (typeof console !== 'undefined') {
708
- console.error(message);
709
- }
710
- try {
711
- // --- Welcome to debugging React ---
712
- // This error was thrown as a convenience so that you can use this stack
713
- // to find the callsite that caused this warning to fire.
714
- throw new Error(message);
715
- } catch (x) {}
716
- };
717
- }
718
-
719
- /**
720
- * Assert that the values match with the type specs.
721
- * Error messages are memorized and will only be shown once.
722
- *
723
- * @param {object} typeSpecs Map of name to a ReactPropType
724
- * @param {object} values Runtime values that need to be type-checked
725
- * @param {string} location e.g. "prop", "context", "child context"
726
- * @param {string} componentName Name of the component for error messages.
727
- * @param {?Function} getStack Returns the component stack.
728
- * @private
729
- */
730
- function checkPropTypes$1(typeSpecs, values, location, componentName, getStack) {
731
- if (process.env.NODE_ENV !== 'production') {
732
- for (var typeSpecName in typeSpecs) {
733
- if (has$1(typeSpecs, typeSpecName)) {
734
- var error;
735
- // Prop type validation may throw. In case they do, we don't want to
736
- // fail the render phase where it didn't fail before. So we log it.
737
- // After these have been cleaned up, we'll let them throw.
738
- try {
739
- // This is intentionally an invariant that gets caught. It's the same
740
- // behavior as without this statement except with a better message.
741
- if (typeof typeSpecs[typeSpecName] !== 'function') {
742
- var err = Error(
743
- (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
744
- 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.'
745
- );
746
- err.name = 'Invariant Violation';
747
- throw err;
748
- }
749
- error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret$2);
750
- } catch (ex) {
751
- error = ex;
752
- }
753
- if (error && !(error instanceof Error)) {
754
- printWarning$1(
755
- (componentName || 'React class') + ': type specification of ' +
756
- location + ' `' + typeSpecName + '` is invalid; the type checker ' +
757
- 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
758
- 'You may have forgotten to pass an argument to the type checker ' +
759
- 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
760
- 'shape all require an argument).'
761
- );
762
- }
763
- if (error instanceof Error && !(error.message in loggedTypeFailures)) {
764
- // Only monitor this failure once because there tends to be a lot of the
765
- // same error.
766
- loggedTypeFailures[error.message] = true;
767
-
768
- var stack = getStack ? getStack() : '';
769
-
770
- printWarning$1(
771
- 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
772
- );
773
- }
774
- }
775
- }
776
- }
777
- }
778
-
779
- /**
780
- * Resets warning cache when testing.
781
- *
782
- * @private
783
- */
784
- checkPropTypes$1.resetWarningCache = function() {
785
- if (process.env.NODE_ENV !== 'production') {
786
- loggedTypeFailures = {};
787
- }
788
- };
789
-
790
- var checkPropTypes_1 = checkPropTypes$1;
791
-
792
- /**
793
- * Copyright (c) 2013-present, Facebook, Inc.
794
- *
795
- * This source code is licensed under the MIT license found in the
796
- * LICENSE file in the root directory of this source tree.
797
- */
798
-
799
- var ReactIs$1 = reactIs.exports;
800
- var assign = objectAssign;
801
-
802
- var ReactPropTypesSecret$1 = ReactPropTypesSecret_1;
803
- var checkPropTypes = checkPropTypes_1;
804
-
805
- var has = Function.call.bind(Object.prototype.hasOwnProperty);
806
- var printWarning = function() {};
807
-
808
- if (process.env.NODE_ENV !== 'production') {
809
- printWarning = function(text) {
810
- var message = 'Warning: ' + text;
811
- if (typeof console !== 'undefined') {
812
- console.error(message);
813
- }
814
- try {
815
- // --- Welcome to debugging React ---
816
- // This error was thrown as a convenience so that you can use this stack
817
- // to find the callsite that caused this warning to fire.
818
- throw new Error(message);
819
- } catch (x) {}
820
- };
821
- }
822
-
823
- function emptyFunctionThatReturnsNull() {
824
- return null;
825
- }
826
-
827
- var factoryWithTypeCheckers = function(isValidElement, throwOnDirectAccess) {
828
- /* global Symbol */
829
- var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
830
- var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.
831
-
832
- /**
833
- * Returns the iterator method function contained on the iterable object.
834
- *
835
- * Be sure to invoke the function with the iterable as context:
836
- *
837
- * var iteratorFn = getIteratorFn(myIterable);
838
- * if (iteratorFn) {
839
- * var iterator = iteratorFn.call(myIterable);
840
- * ...
841
- * }
842
- *
843
- * @param {?object} maybeIterable
844
- * @return {?function}
845
- */
846
- function getIteratorFn(maybeIterable) {
847
- var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
848
- if (typeof iteratorFn === 'function') {
849
- return iteratorFn;
850
- }
851
- }
852
-
853
- /**
854
- * Collection of methods that allow declaration and validation of props that are
855
- * supplied to React components. Example usage:
856
- *
857
- * var Props = require('ReactPropTypes');
858
- * var MyArticle = React.createClass({
859
- * propTypes: {
860
- * // An optional string prop named "description".
861
- * description: Props.string,
862
- *
863
- * // A required enum prop named "category".
864
- * category: Props.oneOf(['News','Photos']).isRequired,
865
- *
866
- * // A prop named "dialog" that requires an instance of Dialog.
867
- * dialog: Props.instanceOf(Dialog).isRequired
868
- * },
869
- * render: function() { ... }
870
- * });
871
- *
872
- * A more formal specification of how these methods are used:
873
- *
874
- * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
875
- * decl := ReactPropTypes.{type}(.isRequired)?
876
- *
877
- * Each and every declaration produces a function with the same signature. This
878
- * allows the creation of custom validation functions. For example:
879
- *
880
- * var MyLink = React.createClass({
881
- * propTypes: {
882
- * // An optional string or URI prop named "href".
883
- * href: function(props, propName, componentName) {
884
- * var propValue = props[propName];
885
- * if (propValue != null && typeof propValue !== 'string' &&
886
- * !(propValue instanceof URI)) {
887
- * return new Error(
888
- * 'Expected a string or an URI for ' + propName + ' in ' +
889
- * componentName
890
- * );
891
- * }
892
- * }
893
- * },
894
- * render: function() {...}
895
- * });
896
- *
897
- * @internal
898
- */
899
-
900
- var ANONYMOUS = '<<anonymous>>';
901
-
902
- // Important!
903
- // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
904
- var ReactPropTypes = {
905
- array: createPrimitiveTypeChecker('array'),
906
- bool: createPrimitiveTypeChecker('boolean'),
907
- func: createPrimitiveTypeChecker('function'),
908
- number: createPrimitiveTypeChecker('number'),
909
- object: createPrimitiveTypeChecker('object'),
910
- string: createPrimitiveTypeChecker('string'),
911
- symbol: createPrimitiveTypeChecker('symbol'),
912
-
913
- any: createAnyTypeChecker(),
914
- arrayOf: createArrayOfTypeChecker,
915
- element: createElementTypeChecker(),
916
- elementType: createElementTypeTypeChecker(),
917
- instanceOf: createInstanceTypeChecker,
918
- node: createNodeChecker(),
919
- objectOf: createObjectOfTypeChecker,
920
- oneOf: createEnumTypeChecker,
921
- oneOfType: createUnionTypeChecker,
922
- shape: createShapeTypeChecker,
923
- exact: createStrictShapeTypeChecker,
924
- };
925
-
926
- /**
927
- * inlined Object.is polyfill to avoid requiring consumers ship their own
928
- * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
929
- */
930
- /*eslint-disable no-self-compare*/
931
- function is(x, y) {
932
- // SameValue algorithm
933
- if (x === y) {
934
- // Steps 1-5, 7-10
935
- // Steps 6.b-6.e: +0 != -0
936
- return x !== 0 || 1 / x === 1 / y;
937
- } else {
938
- // Step 6.a: NaN == NaN
939
- return x !== x && y !== y;
940
- }
941
- }
942
- /*eslint-enable no-self-compare*/
943
-
944
- /**
945
- * We use an Error-like object for backward compatibility as people may call
946
- * PropTypes directly and inspect their output. However, we don't use real
947
- * Errors anymore. We don't inspect their stack anyway, and creating them
948
- * is prohibitively expensive if they are created too often, such as what
949
- * happens in oneOfType() for any type before the one that matched.
950
- */
951
- function PropTypeError(message) {
952
- this.message = message;
953
- this.stack = '';
954
- }
955
- // Make `instanceof Error` still work for returned errors.
956
- PropTypeError.prototype = Error.prototype;
957
-
958
- function createChainableTypeChecker(validate) {
959
- if (process.env.NODE_ENV !== 'production') {
960
- var manualPropTypeCallCache = {};
961
- var manualPropTypeWarningCount = 0;
962
- }
963
- function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
964
- componentName = componentName || ANONYMOUS;
965
- propFullName = propFullName || propName;
966
-
967
- if (secret !== ReactPropTypesSecret$1) {
968
- if (throwOnDirectAccess) {
969
- // New behavior only for users of `prop-types` package
970
- var err = new Error(
971
- 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
972
- 'Use `PropTypes.checkPropTypes()` to call them. ' +
973
- 'Read more at http://fb.me/use-check-prop-types'
974
- );
975
- err.name = 'Invariant Violation';
976
- throw err;
977
- } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {
978
- // Old behavior for people using React.PropTypes
979
- var cacheKey = componentName + ':' + propName;
980
- if (
981
- !manualPropTypeCallCache[cacheKey] &&
982
- // Avoid spamming the console because they are often not actionable except for lib authors
983
- manualPropTypeWarningCount < 3
984
- ) {
985
- printWarning(
986
- 'You are manually calling a React.PropTypes validation ' +
987
- 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +
988
- 'and will throw in the standalone `prop-types` package. ' +
989
- 'You may be seeing this warning due to a third-party PropTypes ' +
990
- 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'
991
- );
992
- manualPropTypeCallCache[cacheKey] = true;
993
- manualPropTypeWarningCount++;
994
- }
995
- }
996
- }
997
- if (props[propName] == null) {
998
- if (isRequired) {
999
- if (props[propName] === null) {
1000
- return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
1001
- }
1002
- return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
1003
- }
1004
- return null;
1005
- } else {
1006
- return validate(props, propName, componentName, location, propFullName);
1007
- }
1008
- }
1009
-
1010
- var chainedCheckType = checkType.bind(null, false);
1011
- chainedCheckType.isRequired = checkType.bind(null, true);
1012
-
1013
- return chainedCheckType;
1014
- }
1015
-
1016
- function createPrimitiveTypeChecker(expectedType) {
1017
- function validate(props, propName, componentName, location, propFullName, secret) {
1018
- var propValue = props[propName];
1019
- var propType = getPropType(propValue);
1020
- if (propType !== expectedType) {
1021
- // `propValue` being instance of, say, date/regexp, pass the 'object'
1022
- // check, but we can offer a more precise error message here rather than
1023
- // 'of type `object`'.
1024
- var preciseType = getPreciseType(propValue);
1025
-
1026
- return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));
1027
- }
1028
- return null;
1029
- }
1030
- return createChainableTypeChecker(validate);
1031
- }
1032
-
1033
- function createAnyTypeChecker() {
1034
- return createChainableTypeChecker(emptyFunctionThatReturnsNull);
1035
- }
1036
-
1037
- function createArrayOfTypeChecker(typeChecker) {
1038
- function validate(props, propName, componentName, location, propFullName) {
1039
- if (typeof typeChecker !== 'function') {
1040
- return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
1041
- }
1042
- var propValue = props[propName];
1043
- if (!Array.isArray(propValue)) {
1044
- var propType = getPropType(propValue);
1045
- return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
1046
- }
1047
- for (var i = 0; i < propValue.length; i++) {
1048
- var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret$1);
1049
- if (error instanceof Error) {
1050
- return error;
1051
- }
1052
- }
1053
- return null;
1054
- }
1055
- return createChainableTypeChecker(validate);
1056
- }
1057
-
1058
- function createElementTypeChecker() {
1059
- function validate(props, propName, componentName, location, propFullName) {
1060
- var propValue = props[propName];
1061
- if (!isValidElement(propValue)) {
1062
- var propType = getPropType(propValue);
1063
- return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
1064
- }
1065
- return null;
1066
- }
1067
- return createChainableTypeChecker(validate);
1068
- }
1069
-
1070
- function createElementTypeTypeChecker() {
1071
- function validate(props, propName, componentName, location, propFullName) {
1072
- var propValue = props[propName];
1073
- if (!ReactIs$1.isValidElementType(propValue)) {
1074
- var propType = getPropType(propValue);
1075
- return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));
1076
- }
1077
- return null;
1078
- }
1079
- return createChainableTypeChecker(validate);
1080
- }
1081
-
1082
- function createInstanceTypeChecker(expectedClass) {
1083
- function validate(props, propName, componentName, location, propFullName) {
1084
- if (!(props[propName] instanceof expectedClass)) {
1085
- var expectedClassName = expectedClass.name || ANONYMOUS;
1086
- var actualClassName = getClassName(props[propName]);
1087
- return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
1088
- }
1089
- return null;
1090
- }
1091
- return createChainableTypeChecker(validate);
1092
- }
1093
-
1094
- function createEnumTypeChecker(expectedValues) {
1095
- if (!Array.isArray(expectedValues)) {
1096
- if (process.env.NODE_ENV !== 'production') {
1097
- if (arguments.length > 1) {
1098
- printWarning(
1099
- 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +
1100
- 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'
1101
- );
1102
- } else {
1103
- printWarning('Invalid argument supplied to oneOf, expected an array.');
1104
- }
1105
- }
1106
- return emptyFunctionThatReturnsNull;
1107
- }
1108
-
1109
- function validate(props, propName, componentName, location, propFullName) {
1110
- var propValue = props[propName];
1111
- for (var i = 0; i < expectedValues.length; i++) {
1112
- if (is(propValue, expectedValues[i])) {
1113
- return null;
1114
- }
1115
- }
1116
-
1117
- var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
1118
- var type = getPreciseType(value);
1119
- if (type === 'symbol') {
1120
- return String(value);
1121
- }
1122
- return value;
1123
- });
1124
- return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
1125
- }
1126
- return createChainableTypeChecker(validate);
1127
- }
1128
-
1129
- function createObjectOfTypeChecker(typeChecker) {
1130
- function validate(props, propName, componentName, location, propFullName) {
1131
- if (typeof typeChecker !== 'function') {
1132
- return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
1133
- }
1134
- var propValue = props[propName];
1135
- var propType = getPropType(propValue);
1136
- if (propType !== 'object') {
1137
- return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
1138
- }
1139
- for (var key in propValue) {
1140
- if (has(propValue, key)) {
1141
- var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret$1);
1142
- if (error instanceof Error) {
1143
- return error;
1144
- }
1145
- }
1146
- }
1147
- return null;
1148
- }
1149
- return createChainableTypeChecker(validate);
1150
- }
1151
-
1152
- function createUnionTypeChecker(arrayOfTypeCheckers) {
1153
- if (!Array.isArray(arrayOfTypeCheckers)) {
1154
- process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;
1155
- return emptyFunctionThatReturnsNull;
1156
- }
1157
-
1158
- for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
1159
- var checker = arrayOfTypeCheckers[i];
1160
- if (typeof checker !== 'function') {
1161
- printWarning(
1162
- 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
1163
- 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'
1164
- );
1165
- return emptyFunctionThatReturnsNull;
1166
- }
1167
- }
1168
-
1169
- function validate(props, propName, componentName, location, propFullName) {
1170
- for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
1171
- var checker = arrayOfTypeCheckers[i];
1172
- if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret$1) == null) {
1173
- return null;
1174
- }
1175
- }
1176
-
1177
- return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));
1178
- }
1179
- return createChainableTypeChecker(validate);
1180
- }
1181
-
1182
- function createNodeChecker() {
1183
- function validate(props, propName, componentName, location, propFullName) {
1184
- if (!isNode(props[propName])) {
1185
- return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
1186
- }
1187
- return null;
1188
- }
1189
- return createChainableTypeChecker(validate);
1190
- }
1191
-
1192
- function createShapeTypeChecker(shapeTypes) {
1193
- function validate(props, propName, componentName, location, propFullName) {
1194
- var propValue = props[propName];
1195
- var propType = getPropType(propValue);
1196
- if (propType !== 'object') {
1197
- return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
1198
- }
1199
- for (var key in shapeTypes) {
1200
- var checker = shapeTypes[key];
1201
- if (!checker) {
1202
- continue;
1203
- }
1204
- var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret$1);
1205
- if (error) {
1206
- return error;
1207
- }
1208
- }
1209
- return null;
1210
- }
1211
- return createChainableTypeChecker(validate);
1212
- }
1213
-
1214
- function createStrictShapeTypeChecker(shapeTypes) {
1215
- function validate(props, propName, componentName, location, propFullName) {
1216
- var propValue = props[propName];
1217
- var propType = getPropType(propValue);
1218
- if (propType !== 'object') {
1219
- return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
1220
- }
1221
- // We need to check all keys in case some are required but missing from
1222
- // props.
1223
- var allKeys = assign({}, props[propName], shapeTypes);
1224
- for (var key in allKeys) {
1225
- var checker = shapeTypes[key];
1226
- if (!checker) {
1227
- return new PropTypeError(
1228
- 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
1229
- '\nBad object: ' + JSON.stringify(props[propName], null, ' ') +
1230
- '\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')
1231
- );
1232
- }
1233
- var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret$1);
1234
- if (error) {
1235
- return error;
1236
- }
1237
- }
1238
- return null;
1239
- }
1240
-
1241
- return createChainableTypeChecker(validate);
1242
- }
1243
-
1244
- function isNode(propValue) {
1245
- switch (typeof propValue) {
1246
- case 'number':
1247
- case 'string':
1248
- case 'undefined':
1249
- return true;
1250
- case 'boolean':
1251
- return !propValue;
1252
- case 'object':
1253
- if (Array.isArray(propValue)) {
1254
- return propValue.every(isNode);
1255
- }
1256
- if (propValue === null || isValidElement(propValue)) {
1257
- return true;
1258
- }
1259
-
1260
- var iteratorFn = getIteratorFn(propValue);
1261
- if (iteratorFn) {
1262
- var iterator = iteratorFn.call(propValue);
1263
- var step;
1264
- if (iteratorFn !== propValue.entries) {
1265
- while (!(step = iterator.next()).done) {
1266
- if (!isNode(step.value)) {
1267
- return false;
1268
- }
1269
- }
1270
- } else {
1271
- // Iterator will provide entry [k,v] tuples rather than values.
1272
- while (!(step = iterator.next()).done) {
1273
- var entry = step.value;
1274
- if (entry) {
1275
- if (!isNode(entry[1])) {
1276
- return false;
1277
- }
1278
- }
1279
- }
1280
- }
1281
- } else {
1282
- return false;
1283
- }
1284
-
1285
- return true;
1286
- default:
1287
- return false;
1288
- }
1289
- }
1290
-
1291
- function isSymbol(propType, propValue) {
1292
- // Native Symbol.
1293
- if (propType === 'symbol') {
1294
- return true;
1295
- }
1296
-
1297
- // falsy value can't be a Symbol
1298
- if (!propValue) {
1299
- return false;
1300
- }
1301
-
1302
- // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
1303
- if (propValue['@@toStringTag'] === 'Symbol') {
1304
- return true;
1305
- }
1306
-
1307
- // Fallback for non-spec compliant Symbols which are polyfilled.
1308
- if (typeof Symbol === 'function' && propValue instanceof Symbol) {
1309
- return true;
1310
- }
1311
-
1312
- return false;
1313
- }
1314
-
1315
- // Equivalent of `typeof` but with special handling for array and regexp.
1316
- function getPropType(propValue) {
1317
- var propType = typeof propValue;
1318
- if (Array.isArray(propValue)) {
1319
- return 'array';
1320
- }
1321
- if (propValue instanceof RegExp) {
1322
- // Old webkits (at least until Android 4.0) return 'function' rather than
1323
- // 'object' for typeof a RegExp. We'll normalize this here so that /bla/
1324
- // passes PropTypes.object.
1325
- return 'object';
1326
- }
1327
- if (isSymbol(propType, propValue)) {
1328
- return 'symbol';
1329
- }
1330
- return propType;
1331
- }
1332
-
1333
- // This handles more types than `getPropType`. Only used for error messages.
1334
- // See `createPrimitiveTypeChecker`.
1335
- function getPreciseType(propValue) {
1336
- if (typeof propValue === 'undefined' || propValue === null) {
1337
- return '' + propValue;
1338
- }
1339
- var propType = getPropType(propValue);
1340
- if (propType === 'object') {
1341
- if (propValue instanceof Date) {
1342
- return 'date';
1343
- } else if (propValue instanceof RegExp) {
1344
- return 'regexp';
1345
- }
1346
- }
1347
- return propType;
1348
- }
1349
-
1350
- // Returns a string that is postfixed to a warning about an invalid type.
1351
- // For example, "undefined" or "of type array"
1352
- function getPostfixForTypeWarning(value) {
1353
- var type = getPreciseType(value);
1354
- switch (type) {
1355
- case 'array':
1356
- case 'object':
1357
- return 'an ' + type;
1358
- case 'boolean':
1359
- case 'date':
1360
- case 'regexp':
1361
- return 'a ' + type;
1362
- default:
1363
- return type;
1364
- }
1365
- }
1366
-
1367
- // Returns class name of the object, if any.
1368
- function getClassName(propValue) {
1369
- if (!propValue.constructor || !propValue.constructor.name) {
1370
- return ANONYMOUS;
1371
- }
1372
- return propValue.constructor.name;
1373
- }
1374
-
1375
- ReactPropTypes.checkPropTypes = checkPropTypes;
1376
- ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
1377
- ReactPropTypes.PropTypes = ReactPropTypes;
1378
-
1379
- return ReactPropTypes;
1380
- };
1381
-
1382
- /**
1383
- * Copyright (c) 2013-present, Facebook, Inc.
1384
- *
1385
- * This source code is licensed under the MIT license found in the
1386
- * LICENSE file in the root directory of this source tree.
1387
- */
1388
-
1389
- var ReactPropTypesSecret = ReactPropTypesSecret_1;
1390
-
1391
- function emptyFunction() {}
1392
- function emptyFunctionWithReset() {}
1393
- emptyFunctionWithReset.resetWarningCache = emptyFunction;
1394
-
1395
- var factoryWithThrowingShims = function() {
1396
- function shim(props, propName, componentName, location, propFullName, secret) {
1397
- if (secret === ReactPropTypesSecret) {
1398
- // It is still safe when called from React.
1399
- return;
1400
- }
1401
- var err = new Error(
1402
- 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
1403
- 'Use PropTypes.checkPropTypes() to call them. ' +
1404
- 'Read more at http://fb.me/use-check-prop-types'
1405
- );
1406
- err.name = 'Invariant Violation';
1407
- throw err;
1408
- } shim.isRequired = shim;
1409
- function getShim() {
1410
- return shim;
1411
- } // Important!
1412
- // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.
1413
- var ReactPropTypes = {
1414
- array: shim,
1415
- bool: shim,
1416
- func: shim,
1417
- number: shim,
1418
- object: shim,
1419
- string: shim,
1420
- symbol: shim,
1421
-
1422
- any: shim,
1423
- arrayOf: getShim,
1424
- element: shim,
1425
- elementType: shim,
1426
- instanceOf: getShim,
1427
- node: shim,
1428
- objectOf: getShim,
1429
- oneOf: getShim,
1430
- oneOfType: getShim,
1431
- shape: getShim,
1432
- exact: getShim,
1433
-
1434
- checkPropTypes: emptyFunctionWithReset,
1435
- resetWarningCache: emptyFunction
1436
- };
1437
-
1438
- ReactPropTypes.PropTypes = ReactPropTypes;
1439
-
1440
- return ReactPropTypes;
1441
- };
1442
-
1443
- /**
1444
- * Copyright (c) 2013-present, Facebook, Inc.
1445
- *
1446
- * This source code is licensed under the MIT license found in the
1447
- * LICENSE file in the root directory of this source tree.
1448
- */
1449
-
1450
- if (process.env.NODE_ENV !== 'production') {
1451
- var ReactIs = reactIs.exports;
1452
-
1453
- // By explicitly using `prop-types` you are opting into new development behavior.
1454
- // http://fb.me/prop-types-in-prod
1455
- var throwOnDirectAccess = true;
1456
- propTypes.exports = factoryWithTypeCheckers(ReactIs.isElement, throwOnDirectAccess);
1457
- } else {
1458
- // By explicitly using `prop-types` you are opting into new production behavior.
1459
- // http://fb.me/prop-types-in-prod
1460
- propTypes.exports = factoryWithThrowingShims();
1461
- }
1462
-
1463
- var PropTypes = propTypes.exports;
1464
-
1465
- function _defineProperty(obj, key, value) {
1466
- if (key in obj) {
1467
- Object.defineProperty(obj, key, {
1468
- value: value,
1469
- enumerable: true,
1470
- configurable: true,
1471
- writable: true
1472
- });
1473
- } else {
1474
- obj[key] = value;
1475
- }
1476
-
1477
- return obj;
1478
- }
1479
-
1480
- /**
1481
- * WARNING: Don't import this directly.
1482
- * Use `MuiError` from `@material-ui/utils/macros/MuiError.macro` instead.
1483
- * @param {number} code
1484
- */
1485
- function formatMuiErrorMessage(code) {
1486
- // Apply babel-plugin-transform-template-literals in loose mode
1487
- // loose mode is safe iff we're concatenating primitives
1488
- // see https://babeljs.io/docs/en/babel-plugin-transform-template-literals#loose
1489
-
1490
- /* eslint-disable prefer-template */
1491
- var url = 'https://material-ui.com/production-error/?code=' + code;
1492
-
1493
- for (var i = 1; i < arguments.length; i += 1) {
1494
- // rest params over-transpile for this case
1495
- // eslint-disable-next-line prefer-rest-params
1496
- url += '&args[]=' + encodeURIComponent(arguments[i]);
1497
- }
1498
-
1499
- return 'Minified Material-UI error #' + code + '; visit ' + url + ' for the full message.';
1500
- /* eslint-enable prefer-template */
1501
- }
1502
-
1503
- /* eslint-disable no-use-before-define */
1504
-
1505
- /**
1506
- * Returns a number whose value is limited to the given range.
1507
- *
1508
- * @param {number} value The value to be clamped
1509
- * @param {number} min The lower boundary of the output range
1510
- * @param {number} max The upper boundary of the output range
1511
- * @returns {number} A number in the range [min, max]
1512
- */
1513
- function clamp(value) {
1514
- var min = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
1515
- var max = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
1516
-
1517
- if (process.env.NODE_ENV !== 'production') {
1518
- if (value < min || value > max) {
1519
- console.error("Material-UI: The value provided ".concat(value, " is out of range [").concat(min, ", ").concat(max, "]."));
1520
- }
1521
- }
1522
-
1523
- return Math.min(Math.max(min, value), max);
1524
- }
1525
- /**
1526
- * Converts a color from CSS hex format to CSS rgb format.
1527
- *
1528
- * @param {string} color - Hex color, i.e. #nnn or #nnnnnn
1529
- * @returns {string} A CSS rgb color string
1530
- */
1531
-
1532
-
1533
- function hexToRgb(color) {
1534
- color = color.substr(1);
1535
- var re = new RegExp(".{1,".concat(color.length >= 6 ? 2 : 1, "}"), 'g');
1536
- var colors = color.match(re);
1537
-
1538
- if (colors && colors[0].length === 1) {
1539
- colors = colors.map(function (n) {
1540
- return n + n;
1541
- });
1542
- }
1543
-
1544
- return colors ? "rgb".concat(colors.length === 4 ? 'a' : '', "(").concat(colors.map(function (n, index) {
1545
- return index < 3 ? parseInt(n, 16) : Math.round(parseInt(n, 16) / 255 * 1000) / 1000;
1546
- }).join(', '), ")") : '';
1547
- }
1548
- /**
1549
- * Converts a color from hsl format to rgb format.
1550
- *
1551
- * @param {string} color - HSL color values
1552
- * @returns {string} rgb color values
1553
- */
1554
-
1555
- function hslToRgb(color) {
1556
- color = decomposeColor(color);
1557
- var _color = color,
1558
- values = _color.values;
1559
- var h = values[0];
1560
- var s = values[1] / 100;
1561
- var l = values[2] / 100;
1562
- var a = s * Math.min(l, 1 - l);
1563
-
1564
- var f = function f(n) {
1565
- var k = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : (n + h / 30) % 12;
1566
- return l - a * Math.max(Math.min(k - 3, 9 - k, 1), -1);
1567
- };
1568
-
1569
- var type = 'rgb';
1570
- var rgb = [Math.round(f(0) * 255), Math.round(f(8) * 255), Math.round(f(4) * 255)];
1571
-
1572
- if (color.type === 'hsla') {
1573
- type += 'a';
1574
- rgb.push(values[3]);
1575
- }
1576
-
1577
- return recomposeColor({
1578
- type: type,
1579
- values: rgb
1580
- });
1581
- }
1582
- /**
1583
- * Returns an object with the type and values of a color.
1584
- *
1585
- * Note: Does not support rgb % values.
1586
- *
1587
- * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()
1588
- * @returns {object} - A MUI color object: {type: string, values: number[]}
1589
- */
1590
-
1591
- function decomposeColor(color) {
1592
- // Idempotent
1593
- if (color.type) {
1594
- return color;
1595
- }
1596
-
1597
- if (color.charAt(0) === '#') {
1598
- return decomposeColor(hexToRgb(color));
1599
- }
1600
-
1601
- var marker = color.indexOf('(');
1602
- var type = color.substring(0, marker);
1603
-
1604
- if (['rgb', 'rgba', 'hsl', 'hsla'].indexOf(type) === -1) {
1605
- throw new Error(process.env.NODE_ENV !== "production" ? "Material-UI: Unsupported `".concat(color, "` color.\nWe support the following formats: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla().") : formatMuiErrorMessage(3, color));
1606
- }
1607
-
1608
- var values = color.substring(marker + 1, color.length - 1).split(',');
1609
- values = values.map(function (value) {
1610
- return parseFloat(value);
1611
- });
1612
- return {
1613
- type: type,
1614
- values: values
1615
- };
1616
- }
1617
- /**
1618
- * Converts a color object with type and values to a string.
1619
- *
1620
- * @param {object} color - Decomposed color
1621
- * @param {string} color.type - One of: 'rgb', 'rgba', 'hsl', 'hsla'
1622
- * @param {array} color.values - [n,n,n] or [n,n,n,n]
1623
- * @returns {string} A CSS color string
1624
- */
1625
-
1626
- function recomposeColor(color) {
1627
- var type = color.type;
1628
- var values = color.values;
1629
-
1630
- if (type.indexOf('rgb') !== -1) {
1631
- // Only convert the first 3 values to int (i.e. not alpha)
1632
- values = values.map(function (n, i) {
1633
- return i < 3 ? parseInt(n, 10) : n;
1634
- });
1635
- } else if (type.indexOf('hsl') !== -1) {
1636
- values[1] = "".concat(values[1], "%");
1637
- values[2] = "".concat(values[2], "%");
1638
- }
1639
-
1640
- return "".concat(type, "(").concat(values.join(', '), ")");
1641
- }
1642
- /**
1643
- * Calculates the contrast ratio between two colors.
1644
- *
1645
- * Formula: https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests
1646
- *
1647
- * @param {string} foreground - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()
1648
- * @param {string} background - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()
1649
- * @returns {number} A contrast ratio value in the range 0 - 21.
1650
- */
1651
-
1652
- function getContrastRatio(foreground, background) {
1653
- var lumA = getLuminance(foreground);
1654
- var lumB = getLuminance(background);
1655
- return (Math.max(lumA, lumB) + 0.05) / (Math.min(lumA, lumB) + 0.05);
1656
- }
1657
- /**
1658
- * The relative brightness of any point in a color space,
1659
- * normalized to 0 for darkest black and 1 for lightest white.
1660
- *
1661
- * Formula: https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests
1662
- *
1663
- * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()
1664
- * @returns {number} The relative brightness of the color in the range 0 - 1
1665
- */
1666
-
1667
- function getLuminance(color) {
1668
- color = decomposeColor(color);
1669
- var rgb = color.type === 'hsl' ? decomposeColor(hslToRgb(color)).values : color.values;
1670
- rgb = rgb.map(function (val) {
1671
- val /= 255; // normalized
1672
-
1673
- return val <= 0.03928 ? val / 12.92 : Math.pow((val + 0.055) / 1.055, 2.4);
1674
- }); // Truncate at 3 digits
1675
-
1676
- return Number((0.2126 * rgb[0] + 0.7152 * rgb[1] + 0.0722 * rgb[2]).toFixed(3));
1677
- }
1678
- /**
1679
- * Set the absolute transparency of a color.
1680
- * Any existing alpha value is overwritten.
1681
- *
1682
- * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()
1683
- * @param {number} value - value to set the alpha channel to in the range 0-1
1684
- * @returns {string} A CSS color string. Hex input values are returned as rgb
1685
- */
1686
-
1687
- function alpha(color, value) {
1688
- color = decomposeColor(color);
1689
- value = clamp(value);
1690
-
1691
- if (color.type === 'rgb' || color.type === 'hsl') {
1692
- color.type += 'a';
1693
- }
1694
-
1695
- color.values[3] = value;
1696
- return recomposeColor(color);
1697
- }
1698
- /**
1699
- * Darkens a color.
1700
- *
1701
- * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()
1702
- * @param {number} coefficient - multiplier in the range 0 - 1
1703
- * @returns {string} A CSS color string. Hex input values are returned as rgb
1704
- */
1705
-
1706
- function darken(color, coefficient) {
1707
- color = decomposeColor(color);
1708
- coefficient = clamp(coefficient);
1709
-
1710
- if (color.type.indexOf('hsl') !== -1) {
1711
- color.values[2] *= 1 - coefficient;
1712
- } else if (color.type.indexOf('rgb') !== -1) {
1713
- for (var i = 0; i < 3; i += 1) {
1714
- color.values[i] *= 1 - coefficient;
1715
- }
1716
- }
1717
-
1718
- return recomposeColor(color);
1719
- }
1720
- /**
1721
- * Lightens a color.
1722
- *
1723
- * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()
1724
- * @param {number} coefficient - multiplier in the range 0 - 1
1725
- * @returns {string} A CSS color string. Hex input values are returned as rgb
1726
- */
1727
-
1728
- function lighten(color, coefficient) {
1729
- color = decomposeColor(color);
1730
- coefficient = clamp(coefficient);
1731
-
1732
- if (color.type.indexOf('hsl') !== -1) {
1733
- color.values[2] += (100 - color.values[2]) * coefficient;
1734
- } else if (color.type.indexOf('rgb') !== -1) {
1735
- for (var i = 0; i < 3; i += 1) {
1736
- color.values[i] += (255 - color.values[i]) * coefficient;
1737
- }
1738
- }
1739
-
1740
- return recomposeColor(color);
1741
- }
1742
-
1743
- function _objectWithoutPropertiesLoose$3(source, excluded) {
1744
- if (source == null) return {};
1745
- var target = {};
1746
- var sourceKeys = Object.keys(source);
1747
- var key, i;
1748
-
1749
- for (i = 0; i < sourceKeys.length; i++) {
1750
- key = sourceKeys[i];
1751
- if (excluded.indexOf(key) >= 0) continue;
1752
- target[key] = source[key];
1753
- }
1754
-
1755
- return target;
1756
- }
1757
-
1758
- function _objectWithoutProperties$3(source, excluded) {
1759
- if (source == null) return {};
1760
- var target = _objectWithoutPropertiesLoose$3(source, excluded);
1761
- var key, i;
1762
-
1763
- if (Object.getOwnPropertySymbols) {
1764
- var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
1765
-
1766
- for (i = 0; i < sourceSymbolKeys.length; i++) {
1767
- key = sourceSymbolKeys[i];
1768
- if (excluded.indexOf(key) >= 0) continue;
1769
- if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
1770
- target[key] = source[key];
1771
- }
1772
- }
1773
-
1774
- return target;
1775
- }
1776
-
1777
- // Sorted ASC by size. That's important.
1778
- // It can't be configured as it's used statically for propTypes.
1779
- var keys = ['xs', 'sm', 'md', 'lg', 'xl']; // Keep in mind that @media is inclusive by the CSS specification.
1780
-
1781
- function createBreakpoints(breakpoints) {
1782
- var _breakpoints$values = breakpoints.values,
1783
- values = _breakpoints$values === void 0 ? {
1784
- xs: 0,
1785
- sm: 600,
1786
- md: 960,
1787
- lg: 1280,
1788
- xl: 1920
1789
- } : _breakpoints$values,
1790
- _breakpoints$unit = breakpoints.unit,
1791
- unit = _breakpoints$unit === void 0 ? 'px' : _breakpoints$unit,
1792
- _breakpoints$step = breakpoints.step,
1793
- step = _breakpoints$step === void 0 ? 5 : _breakpoints$step,
1794
- other = _objectWithoutProperties$3(breakpoints, ["values", "unit", "step"]);
1795
-
1796
- function up(key) {
1797
- var value = typeof values[key] === 'number' ? values[key] : key;
1798
- return "@media (min-width:".concat(value).concat(unit, ")");
1799
- }
1800
-
1801
- function down(key) {
1802
- var endIndex = keys.indexOf(key) + 1;
1803
- var upperbound = values[keys[endIndex]];
1804
-
1805
- if (endIndex === keys.length) {
1806
- // xl down applies to all sizes
1807
- return up('xs');
1808
- }
1809
-
1810
- var value = typeof upperbound === 'number' && endIndex > 0 ? upperbound : key;
1811
- return "@media (max-width:".concat(value - step / 100).concat(unit, ")");
1812
- }
1813
-
1814
- function between(start, end) {
1815
- var endIndex = keys.indexOf(end);
1816
-
1817
- if (endIndex === keys.length - 1) {
1818
- return up(start);
1819
- }
1820
-
1821
- return "@media (min-width:".concat(typeof values[start] === 'number' ? values[start] : start).concat(unit, ") and ") + "(max-width:".concat((endIndex !== -1 && typeof values[keys[endIndex + 1]] === 'number' ? values[keys[endIndex + 1]] : end) - step / 100).concat(unit, ")");
1822
- }
1823
-
1824
- function only(key) {
1825
- return between(key, key);
1826
- }
1827
-
1828
- var warnedOnce = false;
1829
-
1830
- function width(key) {
1831
- if (process.env.NODE_ENV !== 'production') {
1832
- if (!warnedOnce) {
1833
- warnedOnce = true;
1834
- console.warn(["Material-UI: The `theme.breakpoints.width` utility is deprecated because it's redundant.", 'Use the `theme.breakpoints.values` instead.'].join('\n'));
1835
- }
1836
- }
1837
-
1838
- return values[key];
1839
- }
1840
-
1841
- return _extends$3({
1842
- keys: keys,
1843
- values: values,
1844
- up: up,
1845
- down: down,
1846
- between: between,
1847
- only: only,
1848
- width: width
1849
- }, other);
1850
- }
1851
-
1852
- function createMixins(breakpoints, spacing, mixins) {
1853
- var _toolbar;
1854
-
1855
- return _extends$3({
1856
- gutters: function gutters() {
1857
- var styles = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
1858
- console.warn(['Material-UI: theme.mixins.gutters() is deprecated.', 'You can use the source of the mixin directly:', "\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(2),\n [theme.breakpoints.up('sm')]: {\n paddingLeft: theme.spacing(3),\n paddingRight: theme.spacing(3),\n },\n "].join('\n'));
1859
- return _extends$3({
1860
- paddingLeft: spacing(2),
1861
- paddingRight: spacing(2)
1862
- }, styles, _defineProperty({}, breakpoints.up('sm'), _extends$3({
1863
- paddingLeft: spacing(3),
1864
- paddingRight: spacing(3)
1865
- }, styles[breakpoints.up('sm')])));
1866
- },
1867
- toolbar: (_toolbar = {
1868
- minHeight: 56
1869
- }, _defineProperty(_toolbar, "".concat(breakpoints.up('xs'), " and (orientation: landscape)"), {
1870
- minHeight: 48
1871
- }), _defineProperty(_toolbar, breakpoints.up('sm'), {
1872
- minHeight: 64
1873
- }), _toolbar)
1874
- }, mixins);
1875
- }
1876
-
1877
- var common = {
1878
- black: '#000',
1879
- white: '#fff'
1880
- };
1881
- var common$1 = common;
1882
-
1883
- var grey = {
1884
- 50: '#fafafa',
1885
- 100: '#f5f5f5',
1886
- 200: '#eeeeee',
1887
- 300: '#e0e0e0',
1888
- 400: '#bdbdbd',
1889
- 500: '#9e9e9e',
1890
- 600: '#757575',
1891
- 700: '#616161',
1892
- 800: '#424242',
1893
- 900: '#212121',
1894
- A100: '#d5d5d5',
1895
- A200: '#aaaaaa',
1896
- A400: '#303030',
1897
- A700: '#616161'
1898
- };
1899
- var grey$1 = grey;
1900
-
1901
- var indigo = {
1902
- 50: '#e8eaf6',
1903
- 100: '#c5cae9',
1904
- 200: '#9fa8da',
1905
- 300: '#7986cb',
1906
- 400: '#5c6bc0',
1907
- 500: '#3f51b5',
1908
- 600: '#3949ab',
1909
- 700: '#303f9f',
1910
- 800: '#283593',
1911
- 900: '#1a237e',
1912
- A100: '#8c9eff',
1913
- A200: '#536dfe',
1914
- A400: '#3d5afe',
1915
- A700: '#304ffe'
1916
- };
1917
- var indigo$1 = indigo;
1918
-
1919
- var pink = {
1920
- 50: '#fce4ec',
1921
- 100: '#f8bbd0',
1922
- 200: '#f48fb1',
1923
- 300: '#f06292',
1924
- 400: '#ec407a',
1925
- 500: '#e91e63',
1926
- 600: '#d81b60',
1927
- 700: '#c2185b',
1928
- 800: '#ad1457',
1929
- 900: '#880e4f',
1930
- A100: '#ff80ab',
1931
- A200: '#ff4081',
1932
- A400: '#f50057',
1933
- A700: '#c51162'
1934
- };
1935
- var pink$1 = pink;
1936
-
1937
- var red = {
1938
- 50: '#ffebee',
1939
- 100: '#ffcdd2',
1940
- 200: '#ef9a9a',
1941
- 300: '#e57373',
1942
- 400: '#ef5350',
1943
- 500: '#f44336',
1944
- 600: '#e53935',
1945
- 700: '#d32f2f',
1946
- 800: '#c62828',
1947
- 900: '#b71c1c',
1948
- A100: '#ff8a80',
1949
- A200: '#ff5252',
1950
- A400: '#ff1744',
1951
- A700: '#d50000'
1952
- };
1953
- var red$1 = red;
1954
-
1955
- var orange = {
1956
- 50: '#fff3e0',
1957
- 100: '#ffe0b2',
1958
- 200: '#ffcc80',
1959
- 300: '#ffb74d',
1960
- 400: '#ffa726',
1961
- 500: '#ff9800',
1962
- 600: '#fb8c00',
1963
- 700: '#f57c00',
1964
- 800: '#ef6c00',
1965
- 900: '#e65100',
1966
- A100: '#ffd180',
1967
- A200: '#ffab40',
1968
- A400: '#ff9100',
1969
- A700: '#ff6d00'
1970
- };
1971
- var orange$1 = orange;
1972
-
1973
- var blue = {
1974
- 50: '#e3f2fd',
1975
- 100: '#bbdefb',
1976
- 200: '#90caf9',
1977
- 300: '#64b5f6',
1978
- 400: '#42a5f5',
1979
- 500: '#2196f3',
1980
- 600: '#1e88e5',
1981
- 700: '#1976d2',
1982
- 800: '#1565c0',
1983
- 900: '#0d47a1',
1984
- A100: '#82b1ff',
1985
- A200: '#448aff',
1986
- A400: '#2979ff',
1987
- A700: '#2962ff'
1988
- };
1989
- var blue$1 = blue;
1990
-
1991
- var green = {
1992
- 50: '#e8f5e9',
1993
- 100: '#c8e6c9',
1994
- 200: '#a5d6a7',
1995
- 300: '#81c784',
1996
- 400: '#66bb6a',
1997
- 500: '#4caf50',
1998
- 600: '#43a047',
1999
- 700: '#388e3c',
2000
- 800: '#2e7d32',
2001
- 900: '#1b5e20',
2002
- A100: '#b9f6ca',
2003
- A200: '#69f0ae',
2004
- A400: '#00e676',
2005
- A700: '#00c853'
2006
- };
2007
- var green$1 = green;
2008
-
2009
- var light = {
2010
- // The colors used to style the text.
2011
- text: {
2012
- // The most important text.
2013
- primary: 'rgba(0, 0, 0, 0.87)',
2014
- // Secondary text.
2015
- secondary: 'rgba(0, 0, 0, 0.54)',
2016
- // Disabled text have even lower visual prominence.
2017
- disabled: 'rgba(0, 0, 0, 0.38)',
2018
- // Text hints.
2019
- hint: 'rgba(0, 0, 0, 0.38)'
2020
- },
2021
- // The color used to divide different elements.
2022
- divider: 'rgba(0, 0, 0, 0.12)',
2023
- // The background colors used to style the surfaces.
2024
- // Consistency between these values is important.
2025
- background: {
2026
- paper: common$1.white,
2027
- default: grey$1[50]
2028
- },
2029
- // The colors used to style the action elements.
2030
- action: {
2031
- // The color of an active action like an icon button.
2032
- active: 'rgba(0, 0, 0, 0.54)',
2033
- // The color of an hovered action.
2034
- hover: 'rgba(0, 0, 0, 0.04)',
2035
- hoverOpacity: 0.04,
2036
- // The color of a selected action.
2037
- selected: 'rgba(0, 0, 0, 0.08)',
2038
- selectedOpacity: 0.08,
2039
- // The color of a disabled action.
2040
- disabled: 'rgba(0, 0, 0, 0.26)',
2041
- // The background color of a disabled action.
2042
- disabledBackground: 'rgba(0, 0, 0, 0.12)',
2043
- disabledOpacity: 0.38,
2044
- focus: 'rgba(0, 0, 0, 0.12)',
2045
- focusOpacity: 0.12,
2046
- activatedOpacity: 0.12
2047
- }
2048
- };
2049
- var dark = {
2050
- text: {
2051
- primary: common$1.white,
2052
- secondary: 'rgba(255, 255, 255, 0.7)',
2053
- disabled: 'rgba(255, 255, 255, 0.5)',
2054
- hint: 'rgba(255, 255, 255, 0.5)',
2055
- icon: 'rgba(255, 255, 255, 0.5)'
2056
- },
2057
- divider: 'rgba(255, 255, 255, 0.12)',
2058
- background: {
2059
- paper: grey$1[800],
2060
- default: '#303030'
2061
- },
2062
- action: {
2063
- active: common$1.white,
2064
- hover: 'rgba(255, 255, 255, 0.08)',
2065
- hoverOpacity: 0.08,
2066
- selected: 'rgba(255, 255, 255, 0.16)',
2067
- selectedOpacity: 0.16,
2068
- disabled: 'rgba(255, 255, 255, 0.3)',
2069
- disabledBackground: 'rgba(255, 255, 255, 0.12)',
2070
- disabledOpacity: 0.38,
2071
- focus: 'rgba(255, 255, 255, 0.12)',
2072
- focusOpacity: 0.12,
2073
- activatedOpacity: 0.24
2074
- }
2075
- };
2076
-
2077
- function addLightOrDark(intent, direction, shade, tonalOffset) {
2078
- var tonalOffsetLight = tonalOffset.light || tonalOffset;
2079
- var tonalOffsetDark = tonalOffset.dark || tonalOffset * 1.5;
2080
-
2081
- if (!intent[direction]) {
2082
- if (intent.hasOwnProperty(shade)) {
2083
- intent[direction] = intent[shade];
2084
- } else if (direction === 'light') {
2085
- intent.light = lighten(intent.main, tonalOffsetLight);
2086
- } else if (direction === 'dark') {
2087
- intent.dark = darken(intent.main, tonalOffsetDark);
2088
- }
2089
- }
2090
- }
2091
-
2092
- function createPalette(palette) {
2093
- var _palette$primary = palette.primary,
2094
- primary = _palette$primary === void 0 ? {
2095
- light: indigo$1[300],
2096
- main: indigo$1[500],
2097
- dark: indigo$1[700]
2098
- } : _palette$primary,
2099
- _palette$secondary = palette.secondary,
2100
- secondary = _palette$secondary === void 0 ? {
2101
- light: pink$1.A200,
2102
- main: pink$1.A400,
2103
- dark: pink$1.A700
2104
- } : _palette$secondary,
2105
- _palette$error = palette.error,
2106
- error = _palette$error === void 0 ? {
2107
- light: red$1[300],
2108
- main: red$1[500],
2109
- dark: red$1[700]
2110
- } : _palette$error,
2111
- _palette$warning = palette.warning,
2112
- warning = _palette$warning === void 0 ? {
2113
- light: orange$1[300],
2114
- main: orange$1[500],
2115
- dark: orange$1[700]
2116
- } : _palette$warning,
2117
- _palette$info = palette.info,
2118
- info = _palette$info === void 0 ? {
2119
- light: blue$1[300],
2120
- main: blue$1[500],
2121
- dark: blue$1[700]
2122
- } : _palette$info,
2123
- _palette$success = palette.success,
2124
- success = _palette$success === void 0 ? {
2125
- light: green$1[300],
2126
- main: green$1[500],
2127
- dark: green$1[700]
2128
- } : _palette$success,
2129
- _palette$type = palette.type,
2130
- type = _palette$type === void 0 ? 'light' : _palette$type,
2131
- _palette$contrastThre = palette.contrastThreshold,
2132
- contrastThreshold = _palette$contrastThre === void 0 ? 3 : _palette$contrastThre,
2133
- _palette$tonalOffset = palette.tonalOffset,
2134
- tonalOffset = _palette$tonalOffset === void 0 ? 0.2 : _palette$tonalOffset,
2135
- other = _objectWithoutProperties$3(palette, ["primary", "secondary", "error", "warning", "info", "success", "type", "contrastThreshold", "tonalOffset"]); // Use the same logic as
2136
- // Bootstrap: https://github.com/twbs/bootstrap/blob/1d6e3710dd447de1a200f29e8fa521f8a0908f70/scss/_functions.scss#L59
2137
- // and material-components-web https://github.com/material-components/material-components-web/blob/ac46b8863c4dab9fc22c4c662dc6bd1b65dd652f/packages/mdc-theme/_functions.scss#L54
2138
-
2139
-
2140
- function getContrastText(background) {
2141
- var contrastText = getContrastRatio(background, dark.text.primary) >= contrastThreshold ? dark.text.primary : light.text.primary;
2142
-
2143
- if (process.env.NODE_ENV !== 'production') {
2144
- var contrast = getContrastRatio(background, contrastText);
2145
-
2146
- if (contrast < 3) {
2147
- console.error(["Material-UI: The contrast ratio of ".concat(contrast, ":1 for ").concat(contrastText, " on ").concat(background), 'falls below the WCAG recommended absolute minimum contrast ratio of 3:1.', 'https://www.w3.org/TR/2008/REC-WCAG20-20081211/#visual-audio-contrast-contrast'].join('\n'));
2148
- }
2149
- }
2150
-
2151
- return contrastText;
2152
- }
2153
-
2154
- var augmentColor = function augmentColor(color) {
2155
- var mainShade = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 500;
2156
- var lightShade = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 300;
2157
- var darkShade = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 700;
2158
- color = _extends$3({}, color);
2159
-
2160
- if (!color.main && color[mainShade]) {
2161
- color.main = color[mainShade];
2162
- }
2163
-
2164
- if (!color.main) {
2165
- throw new Error(process.env.NODE_ENV !== "production" ? "Material-UI: The color provided to augmentColor(color) is invalid.\nThe color object needs to have a `main` property or a `".concat(mainShade, "` property.") : formatMuiErrorMessage(4, mainShade));
2166
- }
2167
-
2168
- if (typeof color.main !== 'string') {
2169
- throw new Error(process.env.NODE_ENV !== "production" ? "Material-UI: The color provided to augmentColor(color) is invalid.\n`color.main` should be a string, but `".concat(JSON.stringify(color.main), "` was provided instead.\n\nDid you intend to use one of the following approaches?\n\nimport {\xA0green } from \"@material-ui/core/colors\";\n\nconst theme1 = createTheme({ palette: {\n primary: green,\n} });\n\nconst theme2 = createTheme({ palette: {\n primary: { main: green[500] },\n} });") : formatMuiErrorMessage(5, JSON.stringify(color.main)));
2170
- }
2171
-
2172
- addLightOrDark(color, 'light', lightShade, tonalOffset);
2173
- addLightOrDark(color, 'dark', darkShade, tonalOffset);
2174
-
2175
- if (!color.contrastText) {
2176
- color.contrastText = getContrastText(color.main);
2177
- }
2178
-
2179
- return color;
2180
- };
2181
-
2182
- var types = {
2183
- dark: dark,
2184
- light: light
2185
- };
2186
-
2187
- if (process.env.NODE_ENV !== 'production') {
2188
- if (!types[type]) {
2189
- console.error("Material-UI: The palette type `".concat(type, "` is not supported."));
2190
- }
2191
- }
2192
-
2193
- var paletteOutput = deepmerge(_extends$3({
2194
- // A collection of common colors.
2195
- common: common$1,
2196
- // The palette type, can be light or dark.
2197
- type: type,
2198
- // The colors used to represent primary interface elements for a user.
2199
- primary: augmentColor(primary),
2200
- // The colors used to represent secondary interface elements for a user.
2201
- secondary: augmentColor(secondary, 'A400', 'A200', 'A700'),
2202
- // The colors used to represent interface elements that the user should be made aware of.
2203
- error: augmentColor(error),
2204
- // The colors used to represent potentially dangerous actions or important messages.
2205
- warning: augmentColor(warning),
2206
- // The colors used to present information to the user that is neutral and not necessarily important.
2207
- info: augmentColor(info),
2208
- // The colors used to indicate the successful completion of an action that user triggered.
2209
- success: augmentColor(success),
2210
- // The grey colors.
2211
- grey: grey$1,
2212
- // Used by `getContrastText()` to maximize the contrast between
2213
- // the background and the text.
2214
- contrastThreshold: contrastThreshold,
2215
- // Takes a background color and returns the text color that maximizes the contrast.
2216
- getContrastText: getContrastText,
2217
- // Generate a rich color object.
2218
- augmentColor: augmentColor,
2219
- // Used by the functions below to shift a color's luminance by approximately
2220
- // two indexes within its tonal palette.
2221
- // E.g., shift from Red 500 to Red 300 or Red 700.
2222
- tonalOffset: tonalOffset
2223
- }, types[type]), other);
2224
- return paletteOutput;
2225
- }
2226
-
2227
- function round(value) {
2228
- return Math.round(value * 1e5) / 1e5;
2229
- }
2230
-
2231
- var warnedOnce = false;
2232
-
2233
- function roundWithDeprecationWarning(value) {
2234
- if (process.env.NODE_ENV !== 'production') {
2235
- if (!warnedOnce) {
2236
- console.warn(['Material-UI: The `theme.typography.round` helper is deprecated.', 'Head to https://material-ui.com/r/migration-v4/#theme for a migration path.'].join('\n'));
2237
- warnedOnce = true;
2238
- }
2239
- }
2240
-
2241
- return round(value);
2242
- }
2243
-
2244
- var caseAllCaps = {
2245
- textTransform: 'uppercase'
2246
- };
2247
- var defaultFontFamily = '"Roboto", "Helvetica", "Arial", sans-serif';
2248
- /**
2249
- * @see @link{https://material.io/design/typography/the-type-system.html}
2250
- * @see @link{https://material.io/design/typography/understanding-typography.html}
2251
- */
2252
-
2253
- function createTypography(palette, typography) {
2254
- var _ref = typeof typography === 'function' ? typography(palette) : typography,
2255
- _ref$fontFamily = _ref.fontFamily,
2256
- fontFamily = _ref$fontFamily === void 0 ? defaultFontFamily : _ref$fontFamily,
2257
- _ref$fontSize = _ref.fontSize,
2258
- fontSize = _ref$fontSize === void 0 ? 14 : _ref$fontSize,
2259
- _ref$fontWeightLight = _ref.fontWeightLight,
2260
- fontWeightLight = _ref$fontWeightLight === void 0 ? 300 : _ref$fontWeightLight,
2261
- _ref$fontWeightRegula = _ref.fontWeightRegular,
2262
- fontWeightRegular = _ref$fontWeightRegula === void 0 ? 400 : _ref$fontWeightRegula,
2263
- _ref$fontWeightMedium = _ref.fontWeightMedium,
2264
- fontWeightMedium = _ref$fontWeightMedium === void 0 ? 500 : _ref$fontWeightMedium,
2265
- _ref$fontWeightBold = _ref.fontWeightBold,
2266
- fontWeightBold = _ref$fontWeightBold === void 0 ? 700 : _ref$fontWeightBold,
2267
- _ref$htmlFontSize = _ref.htmlFontSize,
2268
- htmlFontSize = _ref$htmlFontSize === void 0 ? 16 : _ref$htmlFontSize,
2269
- allVariants = _ref.allVariants,
2270
- pxToRem2 = _ref.pxToRem,
2271
- other = _objectWithoutProperties$3(_ref, ["fontFamily", "fontSize", "fontWeightLight", "fontWeightRegular", "fontWeightMedium", "fontWeightBold", "htmlFontSize", "allVariants", "pxToRem"]);
2272
-
2273
- if (process.env.NODE_ENV !== 'production') {
2274
- if (typeof fontSize !== 'number') {
2275
- console.error('Material-UI: `fontSize` is required to be a number.');
2276
- }
2277
-
2278
- if (typeof htmlFontSize !== 'number') {
2279
- console.error('Material-UI: `htmlFontSize` is required to be a number.');
2280
- }
2281
- }
2282
-
2283
- var coef = fontSize / 14;
2284
-
2285
- var pxToRem = pxToRem2 || function (size) {
2286
- return "".concat(size / htmlFontSize * coef, "rem");
2287
- };
2288
-
2289
- var buildVariant = function buildVariant(fontWeight, size, lineHeight, letterSpacing, casing) {
2290
- return _extends$3({
2291
- fontFamily: fontFamily,
2292
- fontWeight: fontWeight,
2293
- fontSize: pxToRem(size),
2294
- // Unitless following https://meyerweb.com/eric/thoughts/2006/02/08/unitless-line-heights/
2295
- lineHeight: lineHeight
2296
- }, fontFamily === defaultFontFamily ? {
2297
- letterSpacing: "".concat(round(letterSpacing / size), "em")
2298
- } : {}, casing, allVariants);
2299
- };
2300
-
2301
- var variants = {
2302
- h1: buildVariant(fontWeightLight, 96, 1.167, -1.5),
2303
- h2: buildVariant(fontWeightLight, 60, 1.2, -0.5),
2304
- h3: buildVariant(fontWeightRegular, 48, 1.167, 0),
2305
- h4: buildVariant(fontWeightRegular, 34, 1.235, 0.25),
2306
- h5: buildVariant(fontWeightRegular, 24, 1.334, 0),
2307
- h6: buildVariant(fontWeightMedium, 20, 1.6, 0.15),
2308
- subtitle1: buildVariant(fontWeightRegular, 16, 1.75, 0.15),
2309
- subtitle2: buildVariant(fontWeightMedium, 14, 1.57, 0.1),
2310
- body1: buildVariant(fontWeightRegular, 16, 1.5, 0.15),
2311
- body2: buildVariant(fontWeightRegular, 14, 1.43, 0.15),
2312
- button: buildVariant(fontWeightMedium, 14, 1.75, 0.4, caseAllCaps),
2313
- caption: buildVariant(fontWeightRegular, 12, 1.66, 0.4),
2314
- overline: buildVariant(fontWeightRegular, 12, 2.66, 1, caseAllCaps)
2315
- };
2316
- return deepmerge(_extends$3({
2317
- htmlFontSize: htmlFontSize,
2318
- pxToRem: pxToRem,
2319
- round: roundWithDeprecationWarning,
2320
- // TODO v5: remove
2321
- fontFamily: fontFamily,
2322
- fontSize: fontSize,
2323
- fontWeightLight: fontWeightLight,
2324
- fontWeightRegular: fontWeightRegular,
2325
- fontWeightMedium: fontWeightMedium,
2326
- fontWeightBold: fontWeightBold
2327
- }, variants), other, {
2328
- clone: false // No need to clone deep
2329
-
2330
- });
2331
- }
2332
-
2333
- var shadowKeyUmbraOpacity = 0.2;
2334
- var shadowKeyPenumbraOpacity = 0.14;
2335
- var shadowAmbientShadowOpacity = 0.12;
2336
-
2337
- function createShadow() {
2338
- return ["".concat(arguments.length <= 0 ? undefined : arguments[0], "px ").concat(arguments.length <= 1 ? undefined : arguments[1], "px ").concat(arguments.length <= 2 ? undefined : arguments[2], "px ").concat(arguments.length <= 3 ? undefined : arguments[3], "px rgba(0,0,0,").concat(shadowKeyUmbraOpacity, ")"), "".concat(arguments.length <= 4 ? undefined : arguments[4], "px ").concat(arguments.length <= 5 ? undefined : arguments[5], "px ").concat(arguments.length <= 6 ? undefined : arguments[6], "px ").concat(arguments.length <= 7 ? undefined : arguments[7], "px rgba(0,0,0,").concat(shadowKeyPenumbraOpacity, ")"), "".concat(arguments.length <= 8 ? undefined : arguments[8], "px ").concat(arguments.length <= 9 ? undefined : arguments[9], "px ").concat(arguments.length <= 10 ? undefined : arguments[10], "px ").concat(arguments.length <= 11 ? undefined : arguments[11], "px rgba(0,0,0,").concat(shadowAmbientShadowOpacity, ")")].join(',');
2339
- } // Values from https://github.com/material-components/material-components-web/blob/be8747f94574669cb5e7add1a7c54fa41a89cec7/packages/mdc-elevation/_variables.scss
2340
-
2341
-
2342
- var shadows = ['none', createShadow(0, 2, 1, -1, 0, 1, 1, 0, 0, 1, 3, 0), createShadow(0, 3, 1, -2, 0, 2, 2, 0, 0, 1, 5, 0), createShadow(0, 3, 3, -2, 0, 3, 4, 0, 0, 1, 8, 0), createShadow(0, 2, 4, -1, 0, 4, 5, 0, 0, 1, 10, 0), createShadow(0, 3, 5, -1, 0, 5, 8, 0, 0, 1, 14, 0), createShadow(0, 3, 5, -1, 0, 6, 10, 0, 0, 1, 18, 0), createShadow(0, 4, 5, -2, 0, 7, 10, 1, 0, 2, 16, 1), createShadow(0, 5, 5, -3, 0, 8, 10, 1, 0, 3, 14, 2), createShadow(0, 5, 6, -3, 0, 9, 12, 1, 0, 3, 16, 2), createShadow(0, 6, 6, -3, 0, 10, 14, 1, 0, 4, 18, 3), createShadow(0, 6, 7, -4, 0, 11, 15, 1, 0, 4, 20, 3), createShadow(0, 7, 8, -4, 0, 12, 17, 2, 0, 5, 22, 4), createShadow(0, 7, 8, -4, 0, 13, 19, 2, 0, 5, 24, 4), createShadow(0, 7, 9, -4, 0, 14, 21, 2, 0, 5, 26, 4), createShadow(0, 8, 9, -5, 0, 15, 22, 2, 0, 6, 28, 5), createShadow(0, 8, 10, -5, 0, 16, 24, 2, 0, 6, 30, 5), createShadow(0, 8, 11, -5, 0, 17, 26, 2, 0, 6, 32, 5), createShadow(0, 9, 11, -5, 0, 18, 28, 2, 0, 7, 34, 6), createShadow(0, 9, 12, -6, 0, 19, 29, 2, 0, 7, 36, 6), createShadow(0, 10, 13, -6, 0, 20, 31, 3, 0, 8, 38, 7), createShadow(0, 10, 13, -6, 0, 21, 33, 3, 0, 8, 40, 7), createShadow(0, 10, 14, -6, 0, 22, 35, 3, 0, 8, 42, 7), createShadow(0, 11, 14, -7, 0, 23, 36, 3, 0, 9, 44, 8), createShadow(0, 11, 15, -7, 0, 24, 38, 3, 0, 9, 46, 8)];
2343
- var shadows$1 = shadows;
2344
-
2345
- var shape = {
2346
- borderRadius: 4
2347
- };
2348
- var shape$1 = shape;
2349
-
2350
- var responsivePropType = process.env.NODE_ENV !== 'production' ? PropTypes.oneOfType([PropTypes.number, PropTypes.string, PropTypes.object, PropTypes.array]) : {};
2351
- var responsivePropType$1 = responsivePropType;
2352
-
2353
- var spacingKeys = ['m', 'mt', 'mr', 'mb', 'ml', 'mx', 'my', 'p', 'pt', 'pr', 'pb', 'pl', 'px', 'py', 'margin', 'marginTop', 'marginRight', 'marginBottom', 'marginLeft', 'marginX', 'marginY', 'padding', 'paddingTop', 'paddingRight', 'paddingBottom', 'paddingLeft', 'paddingX', 'paddingY'];
2354
- function createUnarySpacing(theme) {
2355
- var themeSpacing = theme.spacing || 8;
2356
-
2357
- if (typeof themeSpacing === 'number') {
2358
- return function (abs) {
2359
- if (process.env.NODE_ENV !== 'production') {
2360
- if (typeof abs !== 'number') {
2361
- console.error("Material-UI: Expected spacing argument to be a number, got ".concat(abs, "."));
2362
- }
2363
- }
2364
-
2365
- return themeSpacing * abs;
2366
- };
2367
- }
2368
-
2369
- if (Array.isArray(themeSpacing)) {
2370
- return function (abs) {
2371
- if (process.env.NODE_ENV !== 'production') {
2372
- if (abs > themeSpacing.length - 1) {
2373
- console.error(["Material-UI: The value provided (".concat(abs, ") overflows."), "The supported values are: ".concat(JSON.stringify(themeSpacing), "."), "".concat(abs, " > ").concat(themeSpacing.length - 1, ", you need to add the missing values.")].join('\n'));
2374
- }
2375
- }
2376
-
2377
- return themeSpacing[abs];
2378
- };
2379
- }
2380
-
2381
- if (typeof themeSpacing === 'function') {
2382
- return themeSpacing;
2383
- }
2384
-
2385
- if (process.env.NODE_ENV !== 'production') {
2386
- console.error(["Material-UI: The `theme.spacing` value (".concat(themeSpacing, ") is invalid."), 'It should be a number, an array or a function.'].join('\n'));
2387
- }
2388
-
2389
- return function () {
2390
- return undefined;
2391
- };
2392
- }
2393
-
2394
- process.env.NODE_ENV !== 'production' ? spacingKeys.reduce(function (obj, key) {
2395
- obj[key] = responsivePropType$1;
2396
- return obj;
2397
- }, {}) : {};
2398
-
2399
- var warnOnce;
2400
- function createSpacing() {
2401
- var spacingInput = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 8;
2402
-
2403
- // Already transformed.
2404
- if (spacingInput.mui) {
2405
- return spacingInput;
2406
- } // Material Design layouts are visually balanced. Most measurements align to an 8dp grid applied, which aligns both spacing and the overall layout.
2407
- // Smaller components, such as icons and type, can align to a 4dp grid.
2408
- // https://material.io/design/layout/understanding-layout.html#usage
2409
-
2410
-
2411
- var transform = createUnarySpacing({
2412
- spacing: spacingInput
2413
- });
2414
-
2415
- var spacing = function spacing() {
2416
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
2417
- args[_key] = arguments[_key];
2418
- }
2419
-
2420
- if (process.env.NODE_ENV !== 'production') {
2421
- if (!(args.length <= 4)) {
2422
- console.error("Material-UI: Too many arguments provided, expected between 0 and 4, got ".concat(args.length));
2423
- }
2424
- }
2425
-
2426
- if (args.length === 0) {
2427
- return transform(1);
2428
- }
2429
-
2430
- if (args.length === 1) {
2431
- return transform(args[0]);
2432
- }
2433
-
2434
- return args.map(function (argument) {
2435
- if (typeof argument === 'string') {
2436
- return argument;
2437
- }
82
+ };
2438
83
 
2439
- var output = transform(argument);
2440
- return typeof output === 'number' ? "".concat(output, "px") : output;
2441
- }).join(' ');
2442
- }; // Backward compatibility, to remove in v5.
84
+ var _templateObject$I;
85
+ var rootClassName$E = 'dot-accordion';
86
+ var summaryClassName = 'dot-accordion-summary';
87
+ var detailClassName = 'dot-accordion-details';
88
+ var StyledAccordion = styled(Accordion)(_templateObject$I || (_templateObject$I = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
89
+ var theme = _ref.theme;
90
+ return css(["&.", "{background:", ";.", "{align-items:center;display:flex;.MuiAccordionSummary-content{width:calc(100% - ", "px);}.MuiTypography-root{margin-bottom:0;}.dot-icon{margin-right:", "px;}.MuiTypography-body1{padding:2px 0;}}}"], rootClassName$E, theme.palette.product === 'agility' && theme.palette.layer.n50, summaryClassName, theme.spacing(5), theme.spacing(0.5));
91
+ });
2443
92
 
93
+ var DotAccordion = function DotAccordion(_ref) {
94
+ var actions = _ref.actions,
95
+ ariaLabel = _ref.ariaLabel,
96
+ children = _ref.children,
97
+ className = _ref.className,
98
+ _ref$dataTestid = _ref['data-testid'],
99
+ dataTestId = _ref$dataTestid === void 0 ? 'dot-accordion' : _ref$dataTestid,
100
+ _ref$defaultExpanded = _ref.defaultExpanded,
101
+ defaultExpanded = _ref$defaultExpanded === void 0 ? false : _ref$defaultExpanded,
102
+ _ref$disabled = _ref.disabled,
103
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
104
+ _ref$hasElevation = _ref.hasElevation,
105
+ hasElevation = _ref$hasElevation === void 0 ? false : _ref$hasElevation,
106
+ _ref$square = _ref.square,
107
+ square = _ref$square === void 0 ? false : _ref$square,
108
+ startIcon = _ref.startIcon,
109
+ summary = _ref.summary,
110
+ _ref$noWrap = _ref.noWrap,
111
+ noWrap = _ref$noWrap === void 0 ? true : _ref$noWrap;
112
+ var rootClasses = useStylesWithRootClass(rootClassName$E, className);
2444
113
 
2445
- Object.defineProperty(spacing, 'unit', {
2446
- get: function get() {
2447
- if (process.env.NODE_ENV !== 'production') {
2448
- if (!warnOnce || process.env.NODE_ENV === 'test') {
2449
- console.error(['Material-UI: theme.spacing.unit usage has been deprecated.', 'It will be removed in v5.', 'You can replace `theme.spacing.unit * y` with `theme.spacing(y)`.', '', 'You can use the `https://github.com/mui-org/material-ui/tree/master/packages/material-ui-codemod/README.md#theme-spacing-api` migration helper to make the process smoother.'].join('\n'));
2450
- }
114
+ var _useState = useState(),
115
+ elevation = _useState[0],
116
+ setElevation = _useState[1];
2451
117
 
2452
- warnOnce = true;
2453
- }
118
+ useEffect(function () {
119
+ setElevation(hasElevation ? 1 : 0);
120
+ }, [hasElevation]);
121
+ return /*#__PURE__*/React__default.createElement(StyledAccordion, {
122
+ "aria-label": ariaLabel,
123
+ className: rootClasses,
124
+ "data-testid": dataTestId,
125
+ defaultExpanded: defaultExpanded,
126
+ disabled: disabled,
127
+ elevation: elevation,
128
+ square: square
129
+ }, /*#__PURE__*/React__default.createElement(AccordionSummary, {
130
+ className: summaryClassName,
131
+ "data-testid": dataTestId + "-summary",
132
+ expandIcon: /*#__PURE__*/React__default.createElement(DotIcon, {
133
+ iconId: "chevron-down"
134
+ })
135
+ }, startIcon, /*#__PURE__*/React__default.createElement(DotTypography, {
136
+ variant: "body1",
137
+ noWrap: noWrap
138
+ }, /*#__PURE__*/React__default.createElement(Tooltip, {
139
+ className: "dot-tooltip",
140
+ placement: "top-start",
141
+ title: noWrap ? summary : ''
142
+ }, /*#__PURE__*/React__default.createElement("span", null, summary)))), /*#__PURE__*/React__default.createElement(AccordionDetails, {
143
+ className: detailClassName,
144
+ "data-testid": dataTestId + "-details"
145
+ }, children), /*#__PURE__*/React__default.createElement(Divider, null), actions && /*#__PURE__*/React__default.createElement(AccordionActions, null, actions));
146
+ };
2454
147
 
2455
- return spacingInput;
2456
- }
2457
- });
2458
- spacing.mui = true;
2459
- return spacing;
2460
- }
148
+ var _templateObject$H;
149
+ var rootClassName$D = 'dot-action-toolbar';
150
+ var StyledToolbar = styled(Toolbar)(_templateObject$H || (_templateObject$H = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
151
+ var theme = _ref.theme;
152
+ return css(["&.", "{border-bottom:1px solid ", ";}"], rootClassName$D, theme.palette.product === 'agility' ? theme.palette.layer.n100 : theme.palette.grey[100]);
153
+ });
2461
154
 
2462
- // Follow https://material.google.com/motion/duration-easing.html#duration-easing-natural-easing-curves
2463
- // to learn the context in which each easing should be used.
2464
- var easing = {
2465
- // This is the most common easing curve.
2466
- easeInOut: 'cubic-bezier(0.4, 0, 0.2, 1)',
2467
- // Objects enter the screen at full velocity from off-screen and
2468
- // slowly decelerate to a resting point.
2469
- easeOut: 'cubic-bezier(0.0, 0, 0.2, 1)',
2470
- // Objects leave the screen at full velocity. They do not decelerate when off-screen.
2471
- easeIn: 'cubic-bezier(0.4, 0, 1, 1)',
2472
- // The sharp curve is used by objects that may return to the screen at any time.
2473
- sharp: 'cubic-bezier(0.4, 0, 0.6, 1)'
2474
- }; // Follow https://material.io/guidelines/motion/duration-easing.html#duration-easing-common-durations
2475
- // to learn when use what timing
2476
-
2477
- var duration = {
2478
- shortest: 150,
2479
- shorter: 200,
2480
- short: 250,
2481
- // most basic recommended timing
2482
- standard: 300,
2483
- // this is to be used in complex animations
2484
- complex: 375,
2485
- // recommended when something is entering screen
2486
- enteringScreen: 225,
2487
- // recommended when something is leaving screen
2488
- leavingScreen: 195
155
+ var DotActionToolbar = function DotActionToolbar(_ref) {
156
+ var ariaLabel = _ref.ariaLabel,
157
+ children = _ref.children,
158
+ className = _ref.className,
159
+ dataTestId = _ref['data-testid'],
160
+ _ref$variant = _ref.variant,
161
+ variant = _ref$variant === void 0 ? 'dense' : _ref$variant;
162
+ var rootClasses = useStylesWithRootClass(rootClassName$D, className);
163
+ return /*#__PURE__*/React__default.createElement(StyledToolbar, {
164
+ "aria-label": ariaLabel,
165
+ className: rootClasses,
166
+ "data-testid": dataTestId,
167
+ variant: variant
168
+ }, children);
2489
169
  };
2490
170
 
2491
- function formatMs(milliseconds) {
2492
- return "".concat(Math.round(milliseconds), "ms");
2493
- }
2494
- /**
2495
- * @param {string|Array} props
2496
- * @param {object} param
2497
- * @param {string} param.prop
2498
- * @param {number} param.duration
2499
- * @param {string} param.easing
2500
- * @param {number} param.delay
2501
- */
2502
-
171
+ var _templateObject$G;
172
+ var rootClassName$C = 'dot-alert-banner';
173
+ var StyledAlertBanner = styled(Alert)(_templateObject$G || (_templateObject$G = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
174
+ var theme = _ref.theme;
175
+ return css(["&.", "{padding:", ";.MuiAlert-message{padding:", ";}&.MuiAlert-standardSuccess{.MuiAlert-icon,.dot-typography{color:", ";}}&.MuiAlert-standardInfo{background-color:", ";.MuiAlert-icon,.dot-typography{color:", ";}}&.MuiAlert-standardWarning{background-color:", ";color:", ";.MuiAlert-icon,.dot-typography{color:", ";}}&.MuiAlert-standardError{.MuiAlert-icon,.dot-typography{color:", ";}}.MuiAlert-icon{padding:", ";}}"], rootClassName$C, theme.spacing(0, 2), theme.spacing(2, 0), theme.palette.success[700], theme.palette.primary[50], theme.palette.primary[500], theme.palette.warning[100], theme.palette.grey[700], theme.palette.grey[700], theme.palette.error[700], theme.spacing(1.75, 0));
176
+ });
2503
177
 
2504
- var transitions = {
2505
- easing: easing,
2506
- duration: duration,
2507
- create: function create() {
2508
- var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['all'];
2509
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
2510
-
2511
- var _options$duration = options.duration,
2512
- durationOption = _options$duration === void 0 ? duration.standard : _options$duration,
2513
- _options$easing = options.easing,
2514
- easingOption = _options$easing === void 0 ? easing.easeInOut : _options$easing,
2515
- _options$delay = options.delay,
2516
- delay = _options$delay === void 0 ? 0 : _options$delay,
2517
- other = _objectWithoutProperties$3(options, ["duration", "easing", "delay"]);
2518
-
2519
- if (process.env.NODE_ENV !== 'production') {
2520
- var isString = function isString(value) {
2521
- return typeof value === 'string';
2522
- };
178
+ var DotAlertBanner = function DotAlertBanner(_ref) {
179
+ var action = _ref.action,
180
+ ariaLabel = _ref.ariaLabel,
181
+ children = _ref.children,
182
+ className = _ref.className,
183
+ dataTestId = _ref['data-testid'],
184
+ _onClose = _ref.onClose,
185
+ severity = _ref.severity;
2523
186
 
2524
- var isNumber = function isNumber(value) {
2525
- return !isNaN(parseFloat(value));
2526
- };
187
+ var AlertBannerIcon = function AlertBannerIcon(iconId) {
188
+ return /*#__PURE__*/React__default.createElement(DotIcon, {
189
+ iconId: iconId
190
+ });
191
+ };
2527
192
 
2528
- if (!isString(props) && !Array.isArray(props)) {
2529
- console.error('Material-UI: Argument "props" must be a string or Array.');
2530
- }
193
+ var AlertBannerIconMapping = {
194
+ error: AlertBannerIcon('error-solid'),
195
+ info: AlertBannerIcon('info-solid'),
196
+ success: AlertBannerIcon('check-solid'),
197
+ warning: AlertBannerIcon('warning-solid')
198
+ };
199
+ var rootClasses = useStylesWithRootClass(rootClassName$C, className);
200
+ return /*#__PURE__*/React__default.createElement(StyledAlertBanner, {
201
+ action: action,
202
+ "aria-label": ariaLabel,
203
+ classes: {
204
+ root: rootClasses
205
+ },
206
+ "data-testid": dataTestId,
207
+ iconMapping: AlertBannerIconMapping,
208
+ onClose: function onClose(event) {
209
+ return _onClose ? _onClose(event) : null;
210
+ },
211
+ severity: severity
212
+ }, /*#__PURE__*/React__default.createElement(DotTypography, {
213
+ variant: "subtitle2"
214
+ }, children));
215
+ };
2531
216
 
2532
- if (!isNumber(durationOption) && !isString(durationOption)) {
2533
- console.error("Material-UI: Argument \"duration\" must be a number or a string but found ".concat(durationOption, "."));
2534
- }
217
+ var _templateObject$F;
218
+ var rootClassName$B = 'dot-icon-btn';
219
+ var StyledIconButton = styled(IconButton)(_templateObject$F || (_templateObject$F = _taggedTemplateLiteralLoose(["\n ", "\n"])), function () {
220
+ return css(["&.", "{padding:10px;&.MuiIconButton-root{font-size:inherit;.dot-icon.MuiIcon-fontSizeSmall{padding:1px;}}&.MuiIconButton-sizeSmall{padding:3px;}}"], rootClassName$B);
221
+ });
2535
222
 
2536
- if (!isString(easingOption)) {
2537
- console.error('Material-UI: Argument "easing" must be a string.');
2538
- }
223
+ var DotIconButton = function DotIconButton(_ref) {
224
+ var ariaLabel = _ref.ariaLabel,
225
+ className = _ref.className,
226
+ _ref$color = _ref.color,
227
+ color = _ref$color === void 0 ? 'inherit' : _ref$color,
228
+ dataTestId = _ref['data-testid'],
229
+ _ref$disabled = _ref.disabled,
230
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
231
+ iconId = _ref.iconId,
232
+ _ref$iconSize = _ref.iconSize,
233
+ iconSize = _ref$iconSize === void 0 ? 'small' : _ref$iconSize,
234
+ _onClick = _ref.onClick,
235
+ titleTooltip = _ref.titleTooltip,
236
+ _ref$size = _ref.size,
237
+ size = _ref$size === void 0 ? 'medium' : _ref$size;
238
+ var rootClasses = useStylesWithRootClass(rootClassName$B, className);
239
+ return /*#__PURE__*/React__default.createElement(StyledIconButton, {
240
+ "aria-label": ariaLabel,
241
+ classes: {
242
+ root: rootClasses
243
+ },
244
+ color: color,
245
+ "data-testid": dataTestId,
246
+ disabled: disabled,
247
+ onClick: function onClick(event) {
248
+ return _onClick && _onClick(event);
249
+ },
250
+ size: size,
251
+ title: titleTooltip
252
+ }, /*#__PURE__*/React__default.createElement(DotIcon, {
253
+ "data-testid": "button-icon",
254
+ fontSize: iconSize,
255
+ iconId: iconId,
256
+ title: titleTooltip
257
+ }));
258
+ };
2539
259
 
2540
- if (!isNumber(delay) && !isString(delay)) {
2541
- console.error('Material-UI: Argument "delay" must be a number or a string.');
2542
- }
260
+ var _templateObject$E;
261
+ var rootClassName$A = 'dot-link';
262
+ var StyledLink = styled(Link)(_templateObject$E || (_templateObject$E = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
263
+ var theme = _ref.theme;
264
+ return css(["&.", "{color:", ";cursor:pointer;&:hover:not(.MuiLink-underlineHover){text-decoration:none;}}"], rootClassName$A, theme.palette.product === 'agility' && theme.palette.layer.n700);
265
+ });
2543
266
 
2544
- if (Object.keys(other).length !== 0) {
2545
- console.error("Material-UI: Unrecognized argument(s) [".concat(Object.keys(other).join(','), "]."));
2546
- }
2547
- }
267
+ var DotLink = function DotLink(_ref) {
268
+ var ariaLabel = _ref.ariaLabel,
269
+ children = _ref.children,
270
+ className = _ref.className,
271
+ _ref$color = _ref.color,
272
+ color = _ref$color === void 0 ? 'primary' : _ref$color,
273
+ dataTestId = _ref['data-testid'],
274
+ href = _ref.href,
275
+ onClick = _ref.onClick,
276
+ onMouseEnter = _ref.onMouseEnter,
277
+ _ref$rel = _ref.rel,
278
+ rel = _ref$rel === void 0 ? 'noreferrer' : _ref$rel,
279
+ _ref$tabIndex = _ref.tabIndex,
280
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,
281
+ target = _ref.target,
282
+ title = _ref.title,
283
+ _ref$underline = _ref.underline,
284
+ underline = _ref$underline === void 0 ? 'always' : _ref$underline;
285
+ var rootClasses = useStylesWithRootClass(rootClassName$A, className);
2548
286
 
2549
- return (Array.isArray(props) ? props : [props]).map(function (animatedProp) {
2550
- return "".concat(animatedProp, " ").concat(typeof durationOption === 'string' ? durationOption : formatMs(durationOption), " ").concat(easingOption, " ").concat(typeof delay === 'string' ? delay : formatMs(delay));
2551
- }).join(',');
2552
- },
2553
- getAutoHeightDuration: function getAutoHeightDuration(height) {
2554
- if (!height) {
2555
- return 0;
287
+ var handleKeyPress = function handleKeyPress(event) {
288
+ if (onClick && event.key === 'Enter') {
289
+ event.preventDefault();
290
+ onClick(event);
2556
291
  }
292
+ };
2557
293
 
2558
- var constant = height / 36; // https://www.wolframalpha.com/input/?i=(4+%2B+15+*+(x+%2F+36+)+**+0.25+%2B+(x+%2F+36)+%2F+5)+*+10
2559
-
2560
- return Math.round((4 + 15 * Math.pow(constant, 0.25) + constant / 5) * 10);
2561
- }
294
+ return /*#__PURE__*/React__default.createElement(StyledLink, {
295
+ "aria-label": ariaLabel,
296
+ classes: {
297
+ root: rootClasses
298
+ },
299
+ color: color,
300
+ "data-testid": dataTestId,
301
+ href: href,
302
+ onClick: onClick,
303
+ onMouseEnter: onMouseEnter,
304
+ onKeyPress: handleKeyPress,
305
+ rel: rel,
306
+ tabIndex: tabIndex,
307
+ target: target,
308
+ title: title,
309
+ underline: underline
310
+ }, children);
2562
311
  };
2563
312
 
2564
- // We need to centralize the zIndex definitions as they work
2565
- // like global values in the browser.
2566
- var zIndex = {
2567
- mobileStepper: 1000,
2568
- speedDial: 1050,
2569
- appBar: 1100,
2570
- drawer: 1200,
2571
- modal: 1300,
2572
- snackbar: 1400,
2573
- tooltip: 1500
313
+ var _templateObject$D;
314
+ var rootClassName$z = 'dot-avatar';
315
+ var avatarSpacing = {
316
+ small: 3,
317
+ medium: 5,
318
+ large: 7
2574
319
  };
2575
- var zIndex$1 = zIndex;
2576
-
2577
- function createTheme() {
2578
- var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2579
-
2580
- var _options$breakpoints = options.breakpoints,
2581
- breakpointsInput = _options$breakpoints === void 0 ? {} : _options$breakpoints,
2582
- _options$mixins = options.mixins,
2583
- mixinsInput = _options$mixins === void 0 ? {} : _options$mixins,
2584
- _options$palette = options.palette,
2585
- paletteInput = _options$palette === void 0 ? {} : _options$palette,
2586
- spacingInput = options.spacing,
2587
- _options$typography = options.typography,
2588
- typographyInput = _options$typography === void 0 ? {} : _options$typography,
2589
- other = _objectWithoutProperties$3(options, ["breakpoints", "mixins", "palette", "spacing", "typography"]);
2590
-
2591
- var palette = createPalette(paletteInput);
2592
- var breakpoints = createBreakpoints(breakpointsInput);
2593
- var spacing = createSpacing(spacingInput);
2594
- var muiTheme = deepmerge({
2595
- breakpoints: breakpoints,
2596
- direction: 'ltr',
2597
- mixins: createMixins(breakpoints, spacing, mixinsInput),
2598
- overrides: {},
2599
- // Inject custom styles
2600
- palette: palette,
2601
- props: {},
2602
- // Provide default props
2603
- shadows: shadows$1,
2604
- typography: createTypography(palette, typographyInput),
2605
- spacing: spacing,
2606
- shape: shape$1,
2607
- transitions: transitions,
2608
- zIndex: zIndex$1
2609
- }, other);
2610
-
2611
- for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
2612
- args[_key - 1] = arguments[_key];
2613
- }
2614
-
2615
- muiTheme = args.reduce(function (acc, argument) {
2616
- return deepmerge(acc, argument);
2617
- }, muiTheme);
2618
-
2619
- if (process.env.NODE_ENV !== 'production') {
2620
- var pseudoClasses = ['checked', 'disabled', 'error', 'focused', 'focusVisible', 'required', 'expanded', 'selected'];
2621
-
2622
- var traverse = function traverse(node, parentKey) {
2623
- var depth = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
2624
- var key; // eslint-disable-next-line guard-for-in, no-restricted-syntax
2625
-
2626
- for (key in node) {
2627
- var child = node[key];
2628
-
2629
- if (depth === 1) {
2630
- if (key.indexOf('Mui') === 0 && child) {
2631
- traverse(child, key, depth + 1);
2632
- }
2633
- } else if (pseudoClasses.indexOf(key) !== -1 && Object.keys(child).length > 0) {
2634
- if (process.env.NODE_ENV !== 'production') {
2635
- console.error(["Material-UI: The `".concat(parentKey, "` component increases ") + "the CSS specificity of the `".concat(key, "` internal state."), 'You can not override it like this: ', JSON.stringify(node, null, 2), '', 'Instead, you need to use the $ruleName syntax:', JSON.stringify({
2636
- root: _defineProperty({}, "&$".concat(key), child)
2637
- }, null, 2), '', 'https://material-ui.com/r/pseudo-classes-guide'].join('\n'));
2638
- } // Remove the style to prevent global conflicts.
2639
-
2640
-
2641
- node[key] = {};
2642
- }
2643
- }
2644
- };
2645
-
2646
- traverse(muiTheme.overrides);
2647
- }
2648
-
2649
- return muiTheme;
2650
- }
320
+ var StyledAvatar = styled(Avatar)(_templateObject$D || (_templateObject$D = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
321
+ var theme = _ref.theme;
322
+ return css(["&.MuiAvatar-root{background-color:", ";.dot-i,.dot-typography{color:", ";}&.small{height:", "px;width:", "px;}&.medium{height:", "px;width:", "px;}&.large{height:", "px;width:", "px;}}"], function (_ref2) {
323
+ var color = _ref2.color;
324
+ return theme.palette.product === 'agility' && color === 'default' ? theme.palette.layer.n0 : color && theme.palette.avatarColors[color] ? theme.palette.avatarColors[color].backgroundColor : theme.palette.avatarColors['default'].backgroundColor;
325
+ }, function (_ref3) {
326
+ var color = _ref3.color;
327
+ return theme.palette.product === 'agility' && color === 'default' ? theme.palette.layer.n700 : color && theme.palette.avatarColors[color] ? theme.palette.avatarColors[color].color : theme.palette.avatarColors['default'].color;
328
+ }, theme.spacing(avatarSpacing.small), theme.spacing(avatarSpacing.small), theme.spacing(avatarSpacing.medium), theme.spacing(avatarSpacing.medium), theme.spacing(avatarSpacing.large), theme.spacing(avatarSpacing.large));
329
+ });
2651
330
 
2652
331
  var LatoRegular = "data:font/woff;base64,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";
2653
332
 
@@ -2655,8 +334,8 @@ var LatoBold = "data:font/woff;base64,d09GRgABAAAAAI+4ABIAAAABJ8AAAQBoAAAAAAAAAA
2655
334
 
2656
335
  var Dot = "data:font/woff;base64,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";
2657
336
 
2658
- var _templateObject$B;
2659
- var GlobalFonts = createGlobalStyle(_templateObject$B || (_templateObject$B = _taggedTemplateLiteralLoose(["\n @font-face {\n font-family: 'Lato';\n font-weight: 400;\n src: url(", ") format('woff');\n }\n\n @font-face {\n font-family: 'LatoBold';\n font-weight: 700;\n src: url(", ") format('woff');\n }\n\n @font-face {\n font-display: block;\n font-family: 'dot';\n src: url(", ") format('woff');\n }\n"])), LatoRegular, LatoBold, Dot);
337
+ var _templateObject$C;
338
+ var GlobalFonts = createGlobalStyle(_templateObject$C || (_templateObject$C = _taggedTemplateLiteralLoose(["\n @font-face {\n font-family: 'Lato';\n font-weight: 400;\n src: url(", ") format('woff');\n }\n\n @font-face {\n font-family: 'LatoBold';\n font-weight: 700;\n src: url(", ") format('woff');\n }\n\n @font-face {\n font-display: block;\n font-family: 'dot';\n src: url(", ") format('woff');\n }\n"])), LatoRegular, LatoBold, Dot);
2660
339
 
2661
340
  //Primary blue
2662
341
  //https://zeroheight.com/4a9ac476a/p/22005a-color/t/6288e9
@@ -3375,7 +1054,7 @@ var DotAvatar = function DotAvatar(_ref) {
3375
1054
  _ref$variant = _ref.variant,
3376
1055
  variant = _ref$variant === void 0 ? 'circular' : _ref$variant,
3377
1056
  style = _ref.style;
3378
- var rootClasses = useStylesWithRootClass(rootClassName$y, className);
1057
+ var rootClasses = useStylesWithRootClass(rootClassName$z, className);
3379
1058
 
3380
1059
  var getAvatarColor = function getAvatarColor() {
3381
1060
  if (color) return color;
@@ -3428,20 +1107,27 @@ var DotAvatar = function DotAvatar(_ref) {
3428
1107
  }, parsedText()) : null);
3429
1108
  };
3430
1109
 
3431
- var _templateObject$A;
3432
- var rootClassName$x = 'dot-menu';
3433
- var StyledPopper = styled(Popper)(_templateObject$A || (_templateObject$A = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
1110
+ var _templateObject$B;
1111
+ var rootClassName$y = 'dot-menu';
1112
+ var StyledPopper = styled(Popper)(_templateObject$B || (_templateObject$B = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
3434
1113
  var theme = _ref.theme;
3435
- return css(["ul{background:", ";min-width:112px;max-height:calc(100vh - 24px);overflow:auto;.dot-li{&:hover{background:", ";&:active,&:focus{background:", ";}}.dot-link{color:", ";}}"], theme.palette.product === 'agility' && theme.palette.agilityInterface.menuBg, theme.palette.product === 'agility' && theme.palette.agilityInterface.fixedCol, theme.palette.product === 'agility' && theme.palette.agilityInterface.activeCardBg, theme.palette.product === 'agility' && theme.palette.layer.n700);
1114
+ return css(["ul,.dot-action-item{background:", ";}ul{min-width:112px;max-height:calc(100vh - 24px);overflow:auto;.dot-li{&:hover{background:", ";}&:active,&:focus{background:", ";}}.dot-link{color:", ";}}.dot-action-item{height:", "px;border-top:1px solid ", ";line-height:inherit;button{border-radius:", ";justify-content:flex-start;height:100%;margin:0;&:focus-visible{background-color:", ";}.MuiButton-label{gap:", "px;.MuiButton-startIcon{margin-left:0;.dot-icon{flex-shrink:0;}}}}"], theme.palette.product === 'agility' && theme.palette.agilityInterface.menuBg, theme.palette.product === 'agility' && theme.palette.agilityInterface.fixedCol, theme.palette.product === 'agility' && theme.palette.agilityInterface.activeCardBg, theme.palette.product === 'agility' && theme.palette.layer.n700, theme.spacing(7), theme.palette.grey[100], theme.spacing(0, 0, 0.5, 0.5), theme.palette.product === 'agility' && theme.palette.type === 'dark' ? theme.palette.layer.n200 : theme.palette.layer.n100, theme.spacing(3));
3436
1115
  });
3437
1116
 
1117
+ var MENU_ITEM_HEIGHT_NORMAL = 36;
1118
+ var MENU_ITEM_HEIGHT_DENSE = 31;
1119
+ var DEFAULT_MAX_VISIBLE_ITEMS = 7;
3438
1120
  var DotMenu = function DotMenu(_ref) {
3439
1121
  var anchorEl = _ref.anchorEl,
3440
1122
  ariaLabel = _ref.ariaLabel,
3441
1123
  className = _ref.className,
3442
1124
  dataTestId = _ref['data-testid'],
1125
+ _ref$dense = _ref.dense,
1126
+ dense = _ref$dense === void 0 ? true : _ref$dense,
3443
1127
  disablePortal = _ref.disablePortal,
3444
1128
  id = _ref.id,
1129
+ _ref$maxVisibleItems = _ref.maxVisibleItems,
1130
+ maxVisibleItems = _ref$maxVisibleItems === void 0 ? DEFAULT_MAX_VISIBLE_ITEMS : _ref$maxVisibleItems,
3445
1131
  _ref$menuItems = _ref.menuItems,
3446
1132
  menuItems = _ref$menuItems === void 0 ? [] : _ref$menuItems,
3447
1133
  _ref$menuPlacement = _ref.menuPlacement,
@@ -3450,7 +1136,7 @@ var DotMenu = function DotMenu(_ref) {
3450
1136
  onSelect = _ref.onSelect,
3451
1137
  _ref$open = _ref.open,
3452
1138
  open = _ref$open === void 0 ? false : _ref$open;
3453
- var rootClasses = useStylesWithRootClass(rootClassName$x, className);
1139
+ var rootClasses = useStylesWithRootClass(rootClassName$y, className);
3454
1140
 
3455
1141
  var handleSelect = function handleSelect(event, itemKey) {
3456
1142
  onLeave && onLeave(event);
@@ -3470,6 +1156,21 @@ var DotMenu = function DotMenu(_ref) {
3470
1156
  }
3471
1157
  };
3472
1158
 
1159
+ var calculateMaxHeight = function calculateMaxHeight() {
1160
+ var visibleItems = maxVisibleItems;
1161
+ var menuItemHeight = dense ? MENU_ITEM_HEIGHT_DENSE : MENU_ITEM_HEIGHT_NORMAL;
1162
+
1163
+ if (!maxVisibleItems || maxVisibleItems <= 0) {
1164
+ return DEFAULT_MAX_VISIBLE_ITEMS * menuItemHeight;
1165
+ }
1166
+
1167
+ if (maxVisibleItems > menuItems.length) {
1168
+ visibleItems = menuItems.length;
1169
+ }
1170
+
1171
+ return visibleItems * menuItemHeight;
1172
+ };
1173
+
3473
1174
  return /*#__PURE__*/React__default.createElement(StyledPopper, {
3474
1175
  anchorEl: anchorEl,
3475
1176
  "aria-label": ariaLabel,
@@ -3492,9 +1193,12 @@ var DotMenu = function DotMenu(_ref) {
3492
1193
  }, /*#__PURE__*/React__default.createElement(MenuList, {
3493
1194
  autoFocusItem: open,
3494
1195
  className: "dot-ul",
3495
- dense: true,
1196
+ dense: dense,
3496
1197
  id: id,
3497
- onKeyDown: handleListKeyDown
1198
+ onKeyDown: handleListKeyDown,
1199
+ style: {
1200
+ height: calculateMaxHeight()
1201
+ }
3498
1202
  }, menuItems.map(function (item, index) {
3499
1203
  return /*#__PURE__*/React__default.createElement(MenuItem, {
3500
1204
  "aria-label": item.ariaLabel,
@@ -3508,16 +1212,16 @@ var DotMenu = function DotMenu(_ref) {
3508
1212
  });
3509
1213
  };
3510
1214
 
3511
- var _templateObject$z, _templateObject2$6;
3512
- var rootClassName$w = 'dot-list';
1215
+ var _templateObject$A, _templateObject2$6;
1216
+ var rootClassName$x = 'dot-list';
3513
1217
  var listItemRootClass = 'dot-list-item';
3514
1218
  var nestedListClassName = 'dot-nested-list';
3515
1219
  var flyoutListItemClassName = 'dot-flyout-list-item';
3516
1220
  var flyoutItemLinkClassName = 'dot-flyout-item-link';
3517
1221
  var listItemLinkClassName = 'dot-list-item-link';
3518
- var StyledList = styled(List)(_templateObject$z || (_templateObject$z = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
1222
+ var StyledList = styled(List)(_templateObject$A || (_templateObject$A = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
3519
1223
  var theme = _ref.theme;
3520
- return css(["&.", "{&.", " .", "{padding-left:", "px;}.MuiListSubheader-root{padding:0;border-bottom:1px solid ", ";.MuiTypography-root{padding:", "px;}}}"], rootClassName$w, nestedListClassName, listItemRootClass, theme.spacing(4), theme.palette.grey[100], theme.spacing(1));
1224
+ return css(["&.", "{&.", " .", "{padding-left:", "px;}.MuiListSubheader-root{padding:0;border-bottom:1px solid ", ";.MuiTypography-root{padding:", "px;}}}"], rootClassName$x, nestedListClassName, listItemRootClass, theme.spacing(4), theme.palette.grey[100], theme.spacing(1));
3521
1225
  });
3522
1226
  var StyledListItem = styled(ListItem)(_templateObject2$6 || (_templateObject2$6 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref2) {
3523
1227
  var theme = _ref2.theme;
@@ -3612,7 +1316,7 @@ var DotList = function DotList(_ref2) {
3612
1316
  menuPlacement = _ref2$menuPlacement === void 0 ? 'right-start' : _ref2$menuPlacement,
3613
1317
  _ref2$nestedListType = _ref2.nestedListType,
3614
1318
  nestedListType = _ref2$nestedListType === void 0 ? 'expandable' : _ref2$nestedListType;
3615
- var rootClasses = useStylesWithRootClass(rootClassName$w, className);
1319
+ var rootClasses = useStylesWithRootClass(rootClassName$x, className);
3616
1320
  return /*#__PURE__*/React__default.createElement(StyledList, {
3617
1321
  "aria-label": ariaLabel,
3618
1322
  classes: {
@@ -3840,9 +1544,9 @@ function SvgLogoDigitalAi(_ref, svgRef) {
3840
1544
 
3841
1545
  var ForwardRef$1 = /*#__PURE__*/React.forwardRef(SvgLogoDigitalAi);
3842
1546
 
3843
- var _templateObject$y;
3844
- var rootClassName$v = 'dot-sidebar';
3845
- var StyledSidebar = styled.aside(_templateObject$y || (_templateObject$y = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
1547
+ var _templateObject$z;
1548
+ var rootClassName$w = 'dot-sidebar';
1549
+ var StyledSidebar = styled.aside(_templateObject$z || (_templateObject$z = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
3846
1550
  var theme = _ref.theme;
3847
1551
  return css(["&.dot-sidebar{align-items:stretch;background:", ";border-right:1px solid ", ";color:", ";display:flex;height:100%;flex-direction:column;justify-content:space-between;letter-spacing:0.01em;padding-top:", "px;width:240px;-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 ", ";display:flex;flex-shrink:0;overflow:hidden;padding:", ";white-space:nowrap;.dot-avatar{margin-right:", "px;}}.go-back{align-items:center;border-bottom:1px solid ", ";display:flex;padding-top:6px;padding-bottom:6px;.dot-icon{margin-right:", "px;padding:12px;}&:hover{background-color:", ";}}hr.MuiDivider-root{background-color:", ";margin:", ";}ul.side-nav{flex-grow:2;overflow-x:hidden;overflow-y:auto;.dot-list-item{height:44px;}li.dot-list-item .dot-typography{white-space:nowrap;}}.toggle-nav{border-top:1px solid ", ";padding:", ";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 ", ";color:", ";display:flex;flex-direction:column;flex-shrink:0;font-size:12px;margin:", "px;overflow:hidden;padding:", "px;p.desc{white-space:nowrap;}.company-name{margin-top:", "px;}.d-icon{display:none;}}&.collapsed{width:56px;-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{padding:", "px;}.go-back .MuiTypography-root{display:none;}ul.side-nav li.MuiListSubheader-root .MuiTypography-root{opacity:0;}.toggle-nav{align-self:center;.dot-icon{transform:rotate(180deg);-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{align-items:center;.company-name,p.desc{display:none;}.d-icon{display:block;}}}}"], theme.palette.grey[50], theme.palette.grey[100], theme.palette.grey[700], theme.spacing(0.5), theme.palette.grey[100], theme.spacing(1, 2), theme.spacing(1), theme.palette.grey[100], theme.spacing(1), theme.palette.grey[100], theme.palette.grey[100], theme.spacing(1, 0), theme.palette.grey[100], theme.spacing(1, 0.75, 0), theme.palette.grey[100], theme.palette.grey[400], theme.spacing(1), theme.spacing(1), theme.spacing(1), theme.spacing(1));
3848
1552
  });
@@ -3876,7 +1580,7 @@ var DotSidebar = function DotSidebar(_ref) {
3876
1580
  useEffect(function () {
3877
1581
  setIsOpen(open);
3878
1582
  }, [open]);
3879
- var rootClasses = useStylesWithRootClass(rootClassName$v, (!isOpen ? 'collapsed' : 'expanded') + " " + className);
1583
+ var rootClasses = useStylesWithRootClass(rootClassName$w, (!isOpen ? 'collapsed' : 'expanded') + " " + className);
3880
1584
  return /*#__PURE__*/React__default.createElement(StyledSidebar, {
3881
1585
  "aria-label": ariaLabel,
3882
1586
  className: rootClasses,
@@ -3978,9 +1682,9 @@ var variables = /*#__PURE__*/Object.freeze({
3978
1682
  levelTop: levelTop
3979
1683
  });
3980
1684
 
3981
- var _templateObject$x;
3982
- var rootClassName$u = 'dot-drawer';
3983
- var StyledDrawer = styled(Drawer)(_templateObject$x || (_templateObject$x = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
1685
+ var _templateObject$y;
1686
+ var rootClassName$v = 'dot-drawer';
1687
+ var StyledDrawer = styled(Drawer)(_templateObject$y || (_templateObject$y = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
3984
1688
  var theme = _ref.theme;
3985
1689
  return css(["&.dot-drawer .MuiBackdrop-root{background-color:", ";}.dot-drawer-paper{background-color:", ";height:", ";padding:", "px;width:", ";}"], alpha(theme.palette.grey[900], 0.7), theme.palette.product === 'agility' && theme.palette.layer.n50, function (_ref2) {
3986
1690
  var height = _ref2.height,
@@ -4010,7 +1714,7 @@ var DotDrawer = function DotDrawer(_ref) {
4010
1714
  variant = _ref$variant === void 0 ? 'temporary' : _ref$variant,
4011
1715
  _ref$width = _ref.width,
4012
1716
  width = _ref$width === void 0 ? '256px' : _ref$width;
4013
- var rootClasses = useStylesWithRootClass(rootClassName$u, className);
1717
+ var rootClasses = useStylesWithRootClass(rootClassName$v, className);
4014
1718
  return /*#__PURE__*/React__default.createElement(StyledDrawer, {
4015
1719
  "aria-label": ariaLabel,
4016
1720
  "data-testid": dataTestId,
@@ -4031,14 +1735,14 @@ var DotDrawer = function DotDrawer(_ref) {
4031
1735
  }, children);
4032
1736
  };
4033
1737
 
4034
- var _templateObject$w, _templateObject2$5;
4035
- var rootClassName$t = 'dot-app-toolbar';
4036
- var StyledMainMenu = styled(DotDrawer)(_templateObject$w || (_templateObject$w = _taggedTemplateLiteralLoose(["\n ", "\n"])), function () {
1738
+ var _templateObject$x, _templateObject2$5;
1739
+ var rootClassName$u = 'dot-app-toolbar';
1740
+ var StyledMainMenu = styled(DotDrawer)(_templateObject$x || (_templateObject$x = _taggedTemplateLiteralLoose(["\n ", "\n"])), function () {
4037
1741
  return css(["&.dot-main-menu .dot-drawer-paper{top:64px;padding:0;.dot-sidebar{height:calc(100vh - 64px);}}"]);
4038
1742
  });
4039
1743
  var StyledAppToolbar = styled.header(_templateObject2$5 || (_templateObject2$5 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
4040
1744
  var theme = _ref.theme;
4041
- return css(["&.", "{align-items:center;background:", ";border-bottom:4px solid ", ";box-sizing:border-box;color:", ";display:flex;height:64px;padding:13px 16px 13px 0;position:fixed;width:100%;z-index:", ";top:0;left:0;right:0;.divider{height:34px;width:1px;background:", ";}.dot-icon-btn{color:", ";}.dot-main-menu-btn{padding:", ";text-align:center;}.dot-branding{align-items:center;display:flex;padding:", ";.primary-logo,.app-logo{margin-right:10px;}a{line-height:0;}.dot-product-name{color:", ";font-size:18px;margin:", ";}.divider{margin-left:6px;}}div.dot-right-side{display:flex;flex-grow:2;justify-content:flex-end;}.avatar-wrapper{display:flex;align-items:center;justify-content:center;width:40px;}}"], rootClassName$t, theme.palette.product === 'agility' ? theme.palette.agilityInterface.headerBg : theme.palette.grey[700], theme.palette.grey[100], theme.palette.grey[0], levelFourth, n400, theme.palette.grey[100], theme.spacing(0, 1), theme.spacing(0, 2), theme.palette.grey[100], theme.spacing(0, 1.5));
1745
+ return css(["&.", "{align-items:center;background:", ";border-bottom:4px solid ", ";box-sizing:border-box;color:", ";display:flex;height:64px;padding:", ";position:fixed;width:100%;z-index:", ";top:0;left:0;right:0;.divider{height:36px;width:1px;background:", ";}.dot-icon-btn{color:", ";}.dot-main-menu-btn{padding:", ";text-align:center;}.dot-branding{align-items:center;display:flex;padding:", ";.primary-logo,.app-logo{margin-right:10px;}a{line-height:0;}.dot-product-name{color:", ";font-size:18px;margin:", ";}.divider{margin-left:6px;}}div.dot-right-side{display:flex;flex-grow:2;justify-content:flex-end;}.avatar-wrapper{display:flex;align-items:center;justify-content:center;width:40px;}}"], rootClassName$u, theme.palette.product === 'agility' ? theme.palette.agilityInterface.headerBg : theme.palette.grey[700], theme.palette.grey[100], theme.palette.grey[0], theme.spacing(1.5, 2, 1.5, 0), levelFourth, n400, theme.palette.grey[100], theme.spacing(0, 1), theme.spacing(0, 2), theme.palette.grey[100], theme.spacing(0, 1.5));
4042
1746
  });
4043
1747
 
4044
1748
  var DotAppToolbar = function DotAppToolbar(_ref) {
@@ -4064,7 +1768,7 @@ var DotAppToolbar = function DotAppToolbar(_ref) {
4064
1768
 
4065
1769
  var showMainMenu = mainMenu || mainMenuItems;
4066
1770
  var mainMenuRef = useRef(null);
4067
- var rootClasses = useStylesWithRootClass(rootClassName$t, "" + className);
1771
+ var rootClasses = useStylesWithRootClass(rootClassName$u, "" + className);
4068
1772
  var mainMenuClasses = useStylesWithRootClass('dot-main-menu', menuOpen ? 'open' : '');
4069
1773
  useEffect(function () {
4070
1774
  var handleInsideMenuClick = function handleInsideMenuClick(event) {
@@ -4161,18 +1865,18 @@ var DotAppToolbar = function DotAppToolbar(_ref) {
4161
1865
  }, avatar)));
4162
1866
  };
4163
1867
 
4164
- var _templateObject$v;
4165
- var rootClassName$s = 'dot-autocomplete';
4166
- var StyledAutocomplete = styled(Autocomplete)(_templateObject$v || (_templateObject$v = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
1868
+ var _templateObject$w;
1869
+ var rootClassName$t = 'dot-autocomplete';
1870
+ var StyledAutocomplete = styled(Autocomplete)(_templateObject$w || (_templateObject$w = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
4167
1871
  _ref.theme;
4168
- return css(["&.", "{}"], rootClassName$s);
1872
+ return css(["&.", "{}"], rootClassName$t);
4169
1873
  });
4170
1874
 
4171
- var _templateObject$u;
4172
- var rootClassName$r = 'dot-chip';
4173
- var StyledChip = styled(Chip)(_templateObject$u || (_templateObject$u = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
1875
+ var _templateObject$v;
1876
+ var rootClassName$s = 'dot-chip';
1877
+ var StyledChip = styled(Chip)(_templateObject$v || (_templateObject$v = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
4174
1878
  var theme = _ref.theme;
4175
- return css(["&.", "{border-color:", ";.dot-icon i{height:auto;}&.MuiChip-sizeSmall{.dot-icon,.dot-avatar{width:18px;height:18px;}}&.Mui-error{background-color:", ";border-color:", ";.MuiChip-deleteIcon{color:", ";}}&:not(.Mui-error){&:hover{background-color:", ";}.MuiChip-deleteIcon{&:hover{color:", ";}}}.MuiChip-deleteIcon{width:18px;height:18px;color:", ";}}"], rootClassName$r, theme.palette.grey[300], theme.palette.error[50], theme.palette.error.main, theme.palette.error.main, theme.palette.grey[50], theme.palette.grey[400], theme.palette.grey[300]);
1879
+ return css(["&.", "{border-color:", ";.dot-icon i{height:auto;}&.MuiChip-sizeSmall{.dot-icon,.dot-avatar{width:18px;height:18px;}}&.Mui-error{background-color:", ";border-color:", ";.MuiChip-deleteIcon{color:", ";}}&:not(.Mui-error){&:hover{background-color:", ";}.MuiChip-deleteIcon{&:hover{color:", ";}}}.MuiChip-deleteIcon{width:18px;height:18px;color:", ";}}"], rootClassName$s, theme.palette.grey[300], theme.palette.error[50], theme.palette.error.main, theme.palette.error.main, theme.palette.grey[50], theme.palette.grey[400], theme.palette.grey[300]);
4176
1880
  });
4177
1881
 
4178
1882
  var DotChip = function DotChip(_ref) {
@@ -4195,7 +1899,7 @@ var DotChip = function DotChip(_ref) {
4195
1899
  size = _ref$size === void 0 ? 'medium' : _ref$size,
4196
1900
  startIcon = _ref.startIcon;
4197
1901
  var errorClass = error ? 'Mui-error' : '';
4198
- var rootClasses = useStylesWithRootClass(rootClassName$r, className, errorClass);
1902
+ var rootClasses = useStylesWithRootClass(rootClassName$s, className, errorClass);
4199
1903
  return /*#__PURE__*/React__default.createElement(StyledChip, {
4200
1904
  "aria-label": ariaLabel,
4201
1905
  avatar: avatar,
@@ -4219,16 +1923,98 @@ var DotChip = function DotChip(_ref) {
4219
1923
  });
4220
1924
  };
4221
1925
 
4222
- var _templateObject$t, _templateObject2$4;
4223
- var rootClassName$q = 'dot-text-field';
1926
+ var _templateObject$u, _templateObject2$4;
1927
+ var rootClassName$r = 'dot-text-field';
4224
1928
  var rootSelectClassName = 'dot-select-field';
4225
1929
  var warningClassName = 'dot-warning';
4226
1930
  var adornmentIconClassName = 'dot-adornment-icon';
4227
- var StyledAdornment = styled(InputAdornment)(_templateObject$t || (_templateObject$t = _taggedTemplateLiteralLoose(["\n .dot-icon {\n font-size: 24px;\n height: 24px;\n padding: 0;\n width: 24px;\n }\n"])));
1931
+ var StyledAdornment = styled(InputAdornment)(_templateObject$u || (_templateObject$u = _taggedTemplateLiteralLoose(["\n .dot-icon {\n font-size: 24px;\n height: 24px;\n padding: 0;\n width: 24px;\n }\n"])));
4228
1932
  var StyledTextField = styled(TextField)(_templateObject2$4 || (_templateObject2$4 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
4229
1933
  var theme = _ref.theme,
4230
1934
  InputProps = _ref.InputProps;
4231
- return css(["&.", "{.MuiInputBase-root{background:", "}.MuiOutlinedInput-notchedOutline{border-color:", "}.MuiOutlinedInput-input{padding:", ";}.MuiOutlinedInput-inputMarginDense{padding-top:10.5px;padding-bottom:10.5px;}.MuiOutlinedInput-inputMultiline{padding:0;}}&.", ",&.", "{.MuiFormLabel-root.Mui-focused{color:", "}select.dot-select{background:", ";}.MuiSelect-select:focus{background-color:transparent;}.Mui-error .", "{color:", ";}.MuiSelect-icon{right:", ";}&.", "{.MuiOutlinedInput-notchedOutline{border-color:", ";}.MuiInputLabel-outlined.MuiInputLabel-shrink{color:", ";}.", "{color:", ";}}.MuiOutlinedInput-adornedStart{padding-left:12px;}.MuiOutlinedInput-adornedEnd{padding-right:12px;}.MuiFormHelperText-root{font-size:", "px;margin:", ";display:flex;align-items:flex-end;&:not(.Mui-error){color:", ";}}.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:", ";}"], rootClassName$q, theme.palette.product === 'agility' && theme.palette.layer.n0, theme.palette.product === 'agility' && theme.palette.layer.n100, InputProps.startAdornment ? "18px 12px 18px 0px" : "18px 12px", rootSelectClassName, rootClassName$q, theme.palette.product === 'agility' && theme.palette.layer.n700, theme.palette.product === 'agility' && theme.palette.layer.n0, adornmentIconClassName, theme.palette.error[500], InputProps.endAdornment ? "44px" : "12px", warningClassName, theme.palette.warning[500], theme.palette.grey[700], adornmentIconClassName, theme.palette.warning[500], theme.typography.body2.fontSize, theme.spacing(0, 0, 0, 2), theme.palette.grey[700], theme.palette.product === 'agility' && agilityGreen);
1935
+ return css(["&.", "{.MuiInputBase-root{background:", "}.MuiOutlinedInput-notchedOutline{border-color:", "}.MuiOutlinedInput-input{padding:", ";}.MuiOutlinedInput-inputMarginDense{padding-top:10.5px;padding-bottom:10.5px;}.MuiOutlinedInput-inputMultiline{padding:0;}}&.", ",&.", "{.MuiFormLabel-root.Mui-focused{color:", "}select.dot-select{background:", ";}.MuiSelect-select:focus{background-color:transparent;}.Mui-error .", "{color:", ";}.MuiSelect-icon{right:", ";}&.", "{.MuiOutlinedInput-notchedOutline{border-color:", ";}.MuiInputLabel-outlined.MuiInputLabel-shrink{color:", ";}.", "{color:", ";}}.MuiOutlinedInput-adornedStart{padding-left:12px;}.MuiOutlinedInput-adornedEnd{padding-right:12px;}.MuiFormHelperText-root{font-size:", "px;margin:", ";display:flex;align-items:flex-end;&:not(.Mui-error){color:", ";}}.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:", ";}"], rootClassName$r, theme.palette.product === 'agility' && theme.palette.layer.n0, theme.palette.product === 'agility' && theme.palette.layer.n100, InputProps.startAdornment ? "18px 12px 18px 0px" : "18px 12px", rootSelectClassName, rootClassName$r, theme.palette.product === 'agility' && theme.palette.layer.n700, theme.palette.product === 'agility' && theme.palette.layer.n0, adornmentIconClassName, theme.palette.error[500], InputProps.endAdornment ? "44px" : "12px", warningClassName, theme.palette.warning[500], theme.palette.grey[700], adornmentIconClassName, theme.palette.warning[500], theme.typography.body2.fontSize, theme.spacing(0, 0, 0, 2), theme.palette.grey[700], theme.palette.product === 'agility' && agilityGreen);
1936
+ });
1937
+
1938
+ var _templateObject$t;
1939
+ var rootClassName$q = 'dot-button';
1940
+ var StyledButton = styled(Button)(_templateObject$t || (_templateObject$t = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
1941
+ var theme = _ref.theme;
1942
+ return css(["&.", "{margin:", "px;min-width:auto;white-space:nowrap;&.MuiButton-containedPrimary{background-color:", ";}&.MuiButton-containedSecondary{background-color:", ";&:hover,&:active{background-color:", ";}}&.MuiButton-text{padding:6px 16px;}span.dot-icon{padding:0;i{height:auto;}}}"], rootClassName$q, theme.spacing(0.5), theme.palette.product === 'agility' && agilityGreen, theme.palette.error.main, darken(theme.palette.error.main, 0.2));
1943
+ });
1944
+
1945
+ /** This component wraps the Button component from @material-ui. */
1946
+
1947
+ var DotButton = /*#__PURE__*/React__default.forwardRef(function (_ref, ref) {
1948
+ var ariaLabel = _ref.ariaLabel,
1949
+ _ref$autoFocus = _ref.autoFocus,
1950
+ autoFocus = _ref$autoFocus === void 0 ? false : _ref$autoFocus,
1951
+ children = _ref.children,
1952
+ className = _ref.className,
1953
+ dataTestId = _ref['data-testid'],
1954
+ _ref$disabled = _ref.disabled,
1955
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
1956
+ _ref$disableRipple = _ref.disableRipple,
1957
+ disableRipple = _ref$disableRipple === void 0 ? false : _ref$disableRipple,
1958
+ endIcon = _ref.endIcon,
1959
+ _ref$fullWidth = _ref.fullWidth,
1960
+ fullWidth = _ref$fullWidth === void 0 ? false : _ref$fullWidth,
1961
+ _ref$isSubmit = _ref.isSubmit,
1962
+ isSubmit = _ref$isSubmit === void 0 ? false : _ref$isSubmit,
1963
+ _onClick = _ref.onClick,
1964
+ _ref$size = _ref.size,
1965
+ size = _ref$size === void 0 ? 'medium' : _ref$size,
1966
+ startIcon = _ref.startIcon,
1967
+ titleTooltip = _ref.titleTooltip,
1968
+ _ref$type = _ref.type,
1969
+ type = _ref$type === void 0 ? 'primary' : _ref$type;
1970
+ var rootClasses = useStylesWithRootClass(rootClassName$q, className);
1971
+ var color;
1972
+ var variant;
1973
+
1974
+ switch (type) {
1975
+ case 'destructive':
1976
+ color = disabled ? 'default' : 'secondary';
1977
+ variant = 'contained';
1978
+ break;
1979
+
1980
+ case 'primary':
1981
+ color = 'primary';
1982
+ variant = 'contained';
1983
+ break;
1984
+
1985
+ case 'outlined':
1986
+ color = 'default';
1987
+ variant = 'outlined';
1988
+ break;
1989
+
1990
+ case 'text':
1991
+ color = 'default';
1992
+ variant = 'text';
1993
+ break;
1994
+ }
1995
+
1996
+ return /*#__PURE__*/React__default.createElement(StyledButton, {
1997
+ "aria-label": ariaLabel,
1998
+ autoFocus: autoFocus,
1999
+ classes: {
2000
+ root: rootClasses
2001
+ },
2002
+ color: color,
2003
+ "data-testid": dataTestId,
2004
+ disabled: disabled,
2005
+ disableRipple: disableRipple,
2006
+ endIcon: endIcon,
2007
+ fullWidth: fullWidth,
2008
+ onClick: function onClick(event) {
2009
+ return _onClick && _onClick(event);
2010
+ },
2011
+ ref: ref,
2012
+ title: titleTooltip,
2013
+ variant: variant,
2014
+ size: size,
2015
+ startIcon: startIcon,
2016
+ type: isSubmit ? 'submit' : 'button'
2017
+ }, children);
4232
2018
  });
4233
2019
 
4234
2020
  // parses value and returns a string which is saved to state
@@ -4257,7 +2043,8 @@ var parseAutoCompleteValue = function parseAutoCompleteValue(value) {
4257
2043
  return '';
4258
2044
  };
4259
2045
  var DotAutoComplete = function DotAutoComplete(_ref) {
4260
- var ariaLabel = _ref.ariaLabel,
2046
+ var actionItem = _ref.actionItem,
2047
+ ariaLabel = _ref.ariaLabel,
4261
2048
  autoFocus = _ref.autoFocus,
4262
2049
  className = _ref.className,
4263
2050
  dataTestId = _ref['data-testid'],
@@ -4287,8 +2074,30 @@ var DotAutoComplete = function DotAutoComplete(_ref) {
4287
2074
  showPlaceholder = _useState[0],
4288
2075
  setShowPlaceholder = _useState[1];
4289
2076
 
4290
- var rootClasses = useStylesWithRootClass(rootClassName$s, className);
4291
- var textFieldRootClasses = useStylesWithRootClass(rootClassName$q, className);
2077
+ var _useState2 = useState(false),
2078
+ isOpened = _useState2[0],
2079
+ setIsOpened = _useState2[1];
2080
+
2081
+ var rootClasses = useStylesWithRootClass(rootClassName$t, className);
2082
+ var textFieldRootClasses = useStylesWithRootClass(rootClassName$r, className);
2083
+ var textFieldInput; // Used for focus management while popper is opened
2084
+
2085
+ var actionItemRef = useRef();
2086
+
2087
+ var textFieldRef = function textFieldRef(element) {
2088
+ // We want to use this element in callback function
2089
+ textFieldInput = element; // Check if ref is defined via props
2090
+
2091
+ if (inputRef) {
2092
+ // Check if callback ref
2093
+ if (typeof inputRef === 'function') {
2094
+ inputRef(element);
2095
+ } else {
2096
+ // We are dealing with mutable ref object
2097
+ inputRef.current = element;
2098
+ }
2099
+ }
2100
+ };
4292
2101
 
4293
2102
  var getChips = function getChips(values, getTagProps) {
4294
2103
  return values.map(function (option, index) {
@@ -4307,10 +2116,10 @@ var DotAutoComplete = function DotAutoComplete(_ref) {
4307
2116
  };
4308
2117
 
4309
2118
  var valuesChanged = function valuesChanged(_ref2) {
4310
- var _event = _ref2._event,
2119
+ var event = _ref2.event,
4311
2120
  val = _ref2.val,
4312
2121
  reason = _ref2.reason;
4313
- onChange && onChange(_event, val, reason);
2122
+ onChange && onChange(event, val, reason);
4314
2123
  setShowPlaceholder(parseAutoCompleteValue(val) === '');
4315
2124
  };
4316
2125
 
@@ -4320,11 +2129,55 @@ var DotAutoComplete = function DotAutoComplete(_ref) {
4320
2129
  var bGroup = b.group ? b.group : '';
4321
2130
  return -bGroup.localeCompare(aGroup);
4322
2131
  }) : options;
2132
+ };
2133
+
2134
+ var handleBlur = function handleBlur(event) {
2135
+ return event.relatedTarget !== actionItemRef.current && setIsOpened(false);
4323
2136
  }; // eslint-disable-next-line @typescript-eslint/no-explicit-any
4324
2137
 
4325
2138
 
4326
2139
  var DotPopper = function DotPopper(props) {
4327
- return /*#__PURE__*/React__default.createElement(StyledPopper, Object.assign({}, props));
2140
+ if (!actionItem || Object.keys(actionItem).length === 0) return /*#__PURE__*/React__default.createElement(StyledPopper, Object.assign({}, props));
2141
+ var iconId = actionItem.iconId,
2142
+ text = actionItem.text,
2143
+ onClick = actionItem.onClick;
2144
+ var paperProps = props.children.props;
2145
+ var paperChildren = paperProps.children;
2146
+
2147
+ var onActionButtonClick = function onActionButtonClick() {
2148
+ setIsOpened(false);
2149
+ textFieldInput.focus();
2150
+ onClick();
2151
+ };
2152
+
2153
+ return /*#__PURE__*/React__default.createElement(StyledPopper, Object.assign({}, props), /*#__PURE__*/React__default.createElement(Paper, Object.assign({}, paperProps), paperChildren, /*#__PURE__*/React__default.createElement("div", {
2154
+ className: "dot-action-item",
2155
+
2156
+ /* Add this to short circuit blur event (otherwise button click will not work):
2157
+ * https://github.com/mui-org/material-ui/issues/19038 */
2158
+ onMouseDown: function onMouseDown(e) {
2159
+ e.preventDefault();
2160
+ },
2161
+ onKeyDown: function onKeyDown(event) {
2162
+ if (event.key === 'Tab' && textFieldInput) {
2163
+ event.preventDefault();
2164
+ textFieldInput.focus();
2165
+ }
2166
+ },
2167
+ // We want to close the popper each time focus is shifted from action item
2168
+ onBlur: handleBlur
2169
+ }, /*#__PURE__*/React__default.createElement(DotButton, {
2170
+ "data-testid": "dot-action-item-btn",
2171
+ disableRipple: true,
2172
+ fullWidth: true,
2173
+ onClick: onActionButtonClick,
2174
+ ref: actionItemRef,
2175
+ startIcon: /*#__PURE__*/React__default.createElement(DotIcon, {
2176
+ fontSize: "small",
2177
+ iconId: iconId
2178
+ }),
2179
+ type: "text"
2180
+ }, text))));
4328
2181
  };
4329
2182
 
4330
2183
  return /*#__PURE__*/React__default.createElement(StyledAutocomplete, {
@@ -4344,15 +2197,28 @@ var DotAutoComplete = function DotAutoComplete(_ref) {
4344
2197
  return option.group;
4345
2198
  } : undefined,
4346
2199
  multiple: multiple,
4347
- onChange: function onChange(_event, val, reason) {
4348
- return valuesChanged({
4349
- _event: _event,
2200
+ onChange: function onChange(event, val, reason) {
2201
+ valuesChanged({
2202
+ event: event,
4350
2203
  val: val,
4351
2204
  reason: reason
4352
2205
  });
2206
+ setIsOpened(false);
4353
2207
  },
2208
+ open: isOpened,
4354
2209
  options: sortOptions(),
4355
2210
  PopperComponent: DotPopper,
2211
+ // We want to close the popper each time focus is shifted from the autocomplete
2212
+ onBlur: handleBlur,
2213
+ onClose: function onClose(event) {
2214
+ // We want to close popper in each occasion where focus isn't set to action item
2215
+ if (!('relatedTarget' in event) || event.relatedTarget !== actionItemRef.current) {
2216
+ setIsOpened(false);
2217
+ }
2218
+ },
2219
+ onOpen: function onOpen() {
2220
+ return setIsOpened(true);
2221
+ },
4356
2222
  renderInput: function renderInput(params) {
4357
2223
  return (
4358
2224
  /*#__PURE__*/
@@ -4373,12 +2239,21 @@ var DotAutoComplete = function DotAutoComplete(_ref) {
4373
2239
  error: error,
4374
2240
  helperText: helperText,
4375
2241
  id: inputId,
4376
- inputRef: inputRef,
2242
+ inputRef: textFieldRef,
4377
2243
  label: label,
4378
2244
  name: label,
4379
2245
  placeholder: showPlaceholder ? placeholder : undefined,
4380
2246
  required: false,
4381
- variant: "outlined"
2247
+ variant: "outlined",
2248
+ onKeyDown: function onKeyDown(event) {
2249
+ var _a; // Intercept 'tab' key press while action item element exists
2250
+
2251
+
2252
+ if (event.key === 'Tab' && actionItemRef.current) {
2253
+ event.preventDefault();
2254
+ (_a = actionItemRef === null || actionItemRef === void 0 ? void 0 : actionItemRef.current) === null || _a === void 0 ? void 0 : _a.focus();
2255
+ }
2256
+ }
4382
2257
  }))
4383
2258
  );
4384
2259
  },
@@ -4416,10 +2291,46 @@ var DotAvatarGroup = function DotAvatarGroup(_ref) {
4416
2291
  };
4417
2292
 
4418
2293
  var _templateObject$s;
4419
- var rootClassName$p = 'dot-breadcrumbs';
4420
- var StyledBreadcrumbs = styled(Breadcrumbs)(_templateObject$s || (_templateObject$s = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
2294
+ var rootClassName$p = 'dot-badge';
2295
+ var StyledBadge = styled(Badge)(_templateObject$s || (_templateObject$s = _taggedTemplateLiteralLoose(["\n ", "\n"])), function () {
2296
+ return css(["&.", "{.MuiBadge-badge{background-color:", ";}}"], rootClassName$p, function (_ref) {
2297
+ var badgeColor = _ref.badgeColor;
2298
+ return badgeColor;
2299
+ });
2300
+ });
2301
+
2302
+ var DotBadge = function DotBadge(_ref) {
2303
+ var ariaLabel = _ref.ariaLabel,
2304
+ badgeColor = _ref.badgeColor,
2305
+ children = _ref.children,
2306
+ className = _ref.className,
2307
+ dataTestId = _ref['data-testid'],
2308
+ invisible = _ref.invisible,
2309
+ overlap = _ref.overlap;
2310
+ var rootClasses = useStylesWithRootClass(rootClassName$p, className);
2311
+ return /*#__PURE__*/React__default.createElement(StyledBadge, {
2312
+ anchorOrigin: {
2313
+ vertical: 'top',
2314
+ horizontal: 'right'
2315
+ },
2316
+ "aria-label": ariaLabel,
2317
+ badgeColor: badgeColor,
2318
+ classes: {
2319
+ root: rootClasses
2320
+ },
2321
+ color: "primary",
2322
+ "data-testid": dataTestId,
2323
+ invisible: invisible,
2324
+ overlap: overlap,
2325
+ variant: "dot"
2326
+ }, children);
2327
+ };
2328
+
2329
+ var _templateObject$r;
2330
+ var rootClassName$o = 'dot-breadcrumbs';
2331
+ var StyledBreadcrumbs = styled(Breadcrumbs)(_templateObject$r || (_templateObject$r = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
4421
2332
  var theme = _ref.theme;
4422
- return css(["&.", "{.MuiBreadcrumbs-ol{flex-wrap:nowrap;}.MuiBreadcrumbs-li,.separator{color:", ";margin:0;white-space:nowrap;}.separator{font-size:12px;width:20px;height:20px;padding:0;}.MuiBreadcrumbs-separator{margin:0;}.MuiLink-underlineHover{cursor:pointer;}}.breadcrumb{padding:", ";}.current-page{color:", ";cursor:default;}"], rootClassName$p, theme.palette.grey[300], theme.spacing(0.5, 2), theme.palette.grey[700]);
2333
+ return css(["&.", "{.MuiBreadcrumbs-ol{flex-wrap:nowrap;}.MuiBreadcrumbs-li,.separator{color:", ";margin:0;white-space:nowrap;}.separator{font-size:12px;width:20px;height:20px;padding:0;}.MuiBreadcrumbs-separator{margin:0;}.MuiLink-underlineHover{cursor:pointer;}}.breadcrumb{padding:", ";}.current-page{color:", ";cursor:default;}"], rootClassName$o, theme.palette.grey[300], theme.spacing(0.5, 2), theme.palette.grey[700]);
4423
2334
  });
4424
2335
 
4425
2336
  var compareWidth = function compareWidth(parentEl, childEl) {
@@ -4435,7 +2346,7 @@ var DotBreadcrumbs = function DotBreadcrumbs(_ref) {
4435
2346
  _ref$maxItems = _ref.maxItems,
4436
2347
  maxItems = _ref$maxItems === void 0 ? 3 : _ref$maxItems,
4437
2348
  minWidth = _ref.minWidth;
4438
- var rootClasses = useStylesWithRootClass(rootClassName$p, className);
2349
+ var rootClasses = useStylesWithRootClass(rootClassName$o, className);
4439
2350
  var breadcrumbRef = useRef();
4440
2351
  var wrapperRef = useRef();
4441
2352
 
@@ -4564,87 +2475,6 @@ var DotBreadcrumbs = function DotBreadcrumbs(_ref) {
4564
2475
  }));
4565
2476
  };
4566
2477
 
4567
- var _templateObject$r;
4568
- var rootClassName$o = 'dot-button';
4569
- var StyledButton = styled(Button)(_templateObject$r || (_templateObject$r = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
4570
- var theme = _ref.theme;
4571
- return css(["&.", "{margin:", "px;min-width:auto;white-space:nowrap;&.MuiButton-containedPrimary{background-color:", ";}&.MuiButton-containedSecondary{background-color:", ";&:hover,&:active{background-color:", ";}}&.MuiButton-text{padding:6px 16px;}span.dot-icon{padding:0;i{height:auto;}}}"], rootClassName$o, theme.spacing(0.5), theme.palette.product === 'agility' && agilityGreen, theme.palette.error.main, darken$1(theme.palette.error.main, 0.2));
4572
- });
4573
-
4574
- /** This component wraps the Button component from @material-ui. */
4575
-
4576
- var DotButton = function DotButton(_ref) {
4577
- var ariaLabel = _ref.ariaLabel,
4578
- _ref$autoFocus = _ref.autoFocus,
4579
- autoFocus = _ref$autoFocus === void 0 ? false : _ref$autoFocus,
4580
- children = _ref.children,
4581
- className = _ref.className,
4582
- dataTestId = _ref['data-testid'],
4583
- _ref$disabled = _ref.disabled,
4584
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
4585
- _ref$disableRipple = _ref.disableRipple,
4586
- disableRipple = _ref$disableRipple === void 0 ? false : _ref$disableRipple,
4587
- endIcon = _ref.endIcon,
4588
- _ref$fullWidth = _ref.fullWidth,
4589
- fullWidth = _ref$fullWidth === void 0 ? false : _ref$fullWidth,
4590
- _ref$isSubmit = _ref.isSubmit,
4591
- isSubmit = _ref$isSubmit === void 0 ? false : _ref$isSubmit,
4592
- _onClick = _ref.onClick,
4593
- _ref$size = _ref.size,
4594
- size = _ref$size === void 0 ? 'medium' : _ref$size,
4595
- startIcon = _ref.startIcon,
4596
- titleTooltip = _ref.titleTooltip,
4597
- _ref$type = _ref.type,
4598
- type = _ref$type === void 0 ? 'primary' : _ref$type;
4599
- var rootClasses = useStylesWithRootClass(rootClassName$o, className);
4600
- var color;
4601
- var variant;
4602
-
4603
- switch (type) {
4604
- case 'destructive':
4605
- color = disabled ? 'default' : 'secondary';
4606
- variant = 'contained';
4607
- break;
4608
-
4609
- case 'primary':
4610
- color = 'primary';
4611
- variant = 'contained';
4612
- break;
4613
-
4614
- case 'outlined':
4615
- color = 'default';
4616
- variant = 'outlined';
4617
- break;
4618
-
4619
- case 'text':
4620
- color = 'default';
4621
- variant = 'text';
4622
- break;
4623
- }
4624
-
4625
- return /*#__PURE__*/React__default.createElement(StyledButton, {
4626
- "aria-label": ariaLabel,
4627
- autoFocus: autoFocus,
4628
- classes: {
4629
- root: rootClasses
4630
- },
4631
- color: color,
4632
- "data-testid": dataTestId,
4633
- disabled: disabled,
4634
- disableRipple: disableRipple,
4635
- endIcon: endIcon,
4636
- fullWidth: fullWidth,
4637
- onClick: function onClick(event) {
4638
- return _onClick && _onClick(event);
4639
- },
4640
- title: titleTooltip,
4641
- variant: variant,
4642
- size: size,
4643
- startIcon: startIcon,
4644
- type: isSubmit ? 'submit' : 'button'
4645
- }, children);
4646
- };
4647
-
4648
2478
  var _templateObject$q;
4649
2479
  var rootClassName$n = 'dot-button-toggle';
4650
2480
  var StyledToggleButtonGroup = styled(ToggleButtonGroup)(_templateObject$q || (_templateObject$q = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
@@ -5235,7 +3065,7 @@ var CssCell = styled(Cell)(_templateObject$h || (_templateObject$h = _taggedTemp
5235
3065
  return css(["height:", ";min-width:0;box-sizing:border-box;", ";", ";", ";", ";grid-row-end:", ";", ";", ";", " ", " ", " ", " ", " ", " grid-column:", ";}"], height ? height : '100%', top && "grid-row-start: " + top, center && "text-align: center", !start && "grid-column-start: " + start, !width && "grid-column-end: span " + width, height && "span " + height, area && "grid-area: " + area, middle && "\n display: inline-flex;\n flex-flow: column wrap;\n justify-content: " + justifyContent + ";\n align-items: " + alignItems + ";\n justify-self: stretch;\n ", xs && breakpointsGetter(xs, theme, 'xs'), sm && breakpointsGetter(sm, theme, 'sm'), md && breakpointsGetter(md, theme, 'md'), lg && breakpointsGetter(lg, theme, 'lg'), lg && breakpointsGetter(lg, theme, 'lg'), xl && breakpointsGetter(lg, theme, 'xl'), gridColumn);
5236
3066
  });
5237
3067
 
5238
- var _templateObject$g, _templateObject2$3, _templateObject3;
3068
+ var _templateObject$g, _templateObject2$3, _templateObject3$1;
5239
3069
  var gridClassName = 'debug-grid';
5240
3070
  var gridClassContainer = 'debug-grid-container';
5241
3071
  var cellClassName = 'debug-cell';
@@ -5243,7 +3073,7 @@ var StyledGridOverlay = styled(CssGrid)(_templateObject$g || (_templateObject$g
5243
3073
  return css(["&.", "{position:absolute;z-index:", ";width:100%;.", "{background:rgba(255,192,203,0.4);height:100vh;}}"], gridClassName, levelBottom, cellClassName);
5244
3074
  });
5245
3075
  var StyledInfo = styled.div(_templateObject2$3 || (_templateObject2$3 = _taggedTemplateLiteralLoose(["\n &.breakpoint-info {\n border-radius: 4px 0 0 4px;\n padding: 8px;\n position: fixed;\n background: rgba(255, 255, 255, 0.8);\n right: -1px;\n bottom: 10px;\n box-shadow: 2px 2px 2px #9c9c9c;\n font-family: sans-serif;\n font-size: 11px;\n width: 100px;\n border: 1px solid red;\n ul {\n list-style: none;\n padding-left: 4px;\n margin: 0;\n }\n .list {\n padding-top: 4px;\n }\n .header {\n font-weight: bold;\n }\n .message {\n padding-top: 8px;\n color: red;\n }\n }\n"])));
5246
- var StyledDivContainer = styled.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteralLoose(["\n &.", " {\n position: relative;\n }\n"])), gridClassContainer);
3076
+ var StyledDivContainer = styled.div(_templateObject3$1 || (_templateObject3$1 = _taggedTemplateLiteralLoose(["\n &.", " {\n position: relative;\n }\n"])), gridClassContainer);
5247
3077
  var CssGridDebug = function CssGridDebug(_ref) {
5248
3078
  var _ref$showInfo = _ref.showInfo,
5249
3079
  showInfo = _ref$showInfo === void 0 ? false : _ref$showInfo;
@@ -5375,7 +3205,7 @@ var _templateObject$d;
5375
3205
  var rootClassName$d = 'dot-form';
5376
3206
  var StyledForm = styled.form(_templateObject$d || (_templateObject$d = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
5377
3207
  var theme = _ref.theme;
5378
- return css(["&.", "{margin:", ";.", ",.", ",.", ",.", "{margin:", ";}.", ",.", "{.", "{margin:0;}}}"], rootClassName$d, theme.spacing(3, 0), rootClassName$j, rootClassName$l, rootClassName$q, rootSelectClassName, theme.spacing(1, 0), rootClassName$i, groupClassName, rootClassName$l);
3208
+ return css(["&.", "{margin:", ";.", ",.", ",.", ",.", "{margin:", ";}.", ",.", "{.", "{margin:0;}}}"], rootClassName$d, theme.spacing(3, 0), rootClassName$j, rootClassName$l, rootClassName$r, rootSelectClassName, theme.spacing(1, 0), rootClassName$i, groupClassName, rootClassName$l);
5379
3209
  });
5380
3210
 
5381
3211
  var DotForm = function DotForm(_ref) {
@@ -5643,7 +3473,7 @@ var DotInputText = function DotInputText(_ref) {
5643
3473
  _ref$warning = _ref.warning,
5644
3474
  warning = _ref$warning === void 0 ? false : _ref$warning;
5645
3475
  var hasWarning = !error && warning ? warningClassName : '';
5646
- var rootStyles = useStylesWithRootClass(rootClassName$q, className, hasWarning);
3476
+ var rootStyles = useStylesWithRootClass(rootClassName$r, className, hasWarning);
5647
3477
  var endAdornmentIcon = endIcon || error && /*#__PURE__*/React__default.createElement(DotIcon, {
5648
3478
  "data-testid": dataTestId && dataTestId + "-error-icon",
5649
3479
  iconId: "error-solid"
@@ -6228,7 +4058,7 @@ var StyledSplitButtonGroup = styled(ButtonGroup)(_templateObject$4 || (_template
6228
4058
  var theme = _ref.theme;
6229
4059
  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']);
6230
4060
  });
6231
- var StyledMenu = styled(DotMenu)(_templateObject2$1 || (_templateObject2$1 = _taggedTemplateLiteralLoose(["\n &.dot-menu {\n z-index: ", ";\n }\n"])), levelTop);
4061
+ var StyledMenu$1 = styled(DotMenu)(_templateObject2$1 || (_templateObject2$1 = _taggedTemplateLiteralLoose(["\n &.dot-menu {\n z-index: ", ";\n }\n"])), levelTop);
6232
4062
 
6233
4063
  var DotSplitButton = function DotSplitButton(_ref) {
6234
4064
  var _ref$autoFocus = _ref.autoFocus,
@@ -6309,7 +4139,7 @@ var DotSplitButton = function DotSplitButton(_ref) {
6309
4139
  fontSize: "small",
6310
4140
  iconId: "arrow-down",
6311
4141
  title: titleTooltip
6312
- }))), /*#__PURE__*/React__default.createElement(StyledMenu, {
4142
+ }))), /*#__PURE__*/React__default.createElement(StyledMenu$1, {
6313
4143
  anchorEl: anchorRef.current,
6314
4144
  disablePortal: disablePortal,
6315
4145
  id: "dot-menu-id",
@@ -6376,7 +4206,7 @@ var DotSwitch = function DotSwitch(_ref) {
6376
4206
  });
6377
4207
  };
6378
4208
 
6379
- var _templateObject$2, _templateObject2;
4209
+ var _templateObject$2, _templateObject2, _templateObject3;
6380
4210
  var rootClassName$2 = 'dot-table';
6381
4211
  var StyledPaper = styled(Paper)(_templateObject$2 || (_templateObject$2 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref) {
6382
4212
  var theme = _ref.theme;
@@ -6384,8 +4214,9 @@ var StyledPaper = styled(Paper)(_templateObject$2 || (_templateObject$2 = _tagge
6384
4214
  });
6385
4215
  var StyledTableContainer = styled(TableContainer)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n ", "\n"])), function (_ref2) {
6386
4216
  var theme = _ref2.theme;
6387
- return css(["&.dot-table-container{border-radius:4px;align-items:stretch;flex-direction:column;justify-content:center;tr:hover{background-color:", ";}tr:last-child td{border-bottom:none;}table{width:100%;thead,th{font-weight:700;&.MuiTableCell-alignCenter > span.MuiTableSortLabel-root{padding-left:26px;}}tbody > tr > td.noWrap{max-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.empty-row td{text-align:center;}.Mui-selected:not(:hover){background-color:", ";}.MuiTableRow-head{height:56px;}.MuiTableCell-root{border-bottom:1px solid ", ";&.MuiTableCell-stickyHeader{background:", ";}}.MuiTableRow-root{height:52px;}.MuiTableCell-body{padding-top:0;padding-bottom:0;}}}"], theme.palette.product === 'agility' ? theme.palette.agilityInterface.fixedCol : theme.palette.grey[50], theme.palette.product === 'agility' ? theme.palette.agilityInterface.fixedCol : theme.palette.grey[200], theme.palette.product === 'agility' ? theme.palette.layer.n100 : theme.palette.grey[200], theme.palette.product === 'agility' && theme.palette.layer.n50);
4217
+ return css(["&.dot-table-container{border-radius:4px;align-items:stretch;flex-direction:column;justify-content:center;tr:hover{background-color:", ";}tr:last-child td{border-bottom:none;}table{width:100%;thead,th{font-weight:700;&.MuiTableCell-alignCenter > span.MuiTableSortLabel-root{padding-left:26px;}}thead > tr > th:last-child{text-align:right;}tbody > tr > td.noWrap,tbody > tr > td.actionItems{max-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}tbody > tr > td.actionItems{text-overflow:clip;text-align:right;}.empty-row td{text-align:center;}.Mui-selected:not(:hover){background-color:", ";}.MuiTableRow-head{height:56px;}.MuiTableCell-root{border-bottom:1px solid ", ";&.MuiTableCell-stickyHeader{background:", ";}}.MuiTableRow-root{height:52px;}.MuiTableCell-body{padding-top:0;padding-bottom:0;}.action-cell-wrapper{width:100%;}}}"], theme.palette.product === 'agility' ? theme.palette.agilityInterface.fixedCol : theme.palette.grey[50], theme.palette.product === 'agility' ? theme.palette.agilityInterface.fixedCol : theme.palette.grey[200], theme.palette.product === 'agility' ? theme.palette.layer.n100 : theme.palette.grey[200], theme.palette.product === 'agility' && theme.palette.layer.n50);
6388
4218
  });
4219
+ var StyledMenu = styled(DotMenu)(_templateObject3 || (_templateObject3 = _taggedTemplateLiteralLoose(["\n .dot-ul > li {\n padding: 0;\n > button {\n width: 100%;\n margin: 0;\n }\n }\n"])));
6389
4220
 
6390
4221
  /**
6391
4222
  * A wrapper component around the TableCell component from @material-ui.
@@ -6397,10 +4228,15 @@ var DotBodyCell = function DotBodyCell(_ref) {
6397
4228
  className = _ref.className,
6398
4229
  colspan = _ref.colspan,
6399
4230
  dataTestId = _ref['data-testid'],
6400
- _ref$id = _ref.id,
6401
- id = _ref$id === void 0 ? CreateUUID() : _ref$id,
6402
4231
  noWrap = _ref.noWrap,
6403
- value = _ref.value;
4232
+ value = _ref.value,
4233
+ onActionMenuTrigger = _ref.onActionMenuTrigger;
4234
+
4235
+ var _useState = useState(false),
4236
+ showMenu = _useState[0],
4237
+ setShowMenu = _useState[1];
4238
+
4239
+ var wrapperRef = useRef(null);
6404
4240
  useEffect(function () {
6405
4241
  var noWrapTableCell = document.getElementsByClassName('noWrap');
6406
4242
  Array.from(noWrapTableCell).forEach(function (truncatedText) {
@@ -6409,9 +4245,57 @@ var DotBodyCell = function DotBodyCell(_ref) {
6409
4245
  if (isOverflowing) {
6410
4246
  truncatedText.setAttribute('title', truncatedText.innerText);
6411
4247
  }
6412
- });
6413
- });
6414
- var rootClasses = useStylesWithRootClass('dot-td', className, noWrap ? 'noWrap' : '');
4248
+ }); // on window resize, set action column to menu or icon button
4249
+
4250
+ if (Array.isArray(value)) {
4251
+ getActionColumn();
4252
+ window.addEventListener('resize', getActionColumn);
4253
+ return function () {
4254
+ window.removeEventListener('resize', Array.isArray(value) && getActionColumn);
4255
+ };
4256
+ }
4257
+ }, []); // Logic to determine action column as menu or icon button
4258
+
4259
+ var getActionColumn = function getActionColumn() {
4260
+ var iconBtnWidth = document.getElementsByClassName('dot-table-action-icon');
4261
+ var getTotalActionItem = Array.isArray(value) && value[0].actions.length;
4262
+ var actionTableCellWidth = getTotalActionItem * (iconBtnWidth.length > 0 && iconBtnWidth[0].clientWidth);
4263
+ var isOverflowing = actionTableCellWidth > (wrapperRef === null || wrapperRef === void 0 ? void 0 : wrapperRef.current.clientWidth);
4264
+ setShowMenu(isOverflowing);
4265
+ };
4266
+
4267
+ var rootClasses = useStylesWithRootClass('dot-td', className, noWrap && 'noWrap', Array.isArray(value) && 'actionItems');
4268
+
4269
+ var getTableCellValue = function getTableCellValue() {
4270
+ if (Array.isArray(value)) {
4271
+ return /*#__PURE__*/React__default.createElement("div", {
4272
+ ref: wrapperRef,
4273
+ className: "action-cell-wrapper"
4274
+ }, showMenu ? /*#__PURE__*/React__default.createElement(DotIconButton, {
4275
+ className: "dot-table-action-icon",
4276
+ iconId: "options",
4277
+ iconSize: "small",
4278
+ onClick: function onClick() {
4279
+ return onActionMenuTrigger(wrapperRef.current, value[0].actions);
4280
+ },
4281
+ size: "small"
4282
+ }) : value.map(function (item) {
4283
+ return item.actions.map(function (icons, index) {
4284
+ return /*#__PURE__*/React__default.createElement(DotIconButton, {
4285
+ className: "dot-table-action-icon",
4286
+ iconId: icons.key,
4287
+ iconSize: "small",
4288
+ key: index,
4289
+ onClick: icons.onclick,
4290
+ size: "small"
4291
+ });
4292
+ });
4293
+ }));
4294
+ }
4295
+
4296
+ return value;
4297
+ };
4298
+
6415
4299
  return /*#__PURE__*/React__default.createElement(TableCell, {
6416
4300
  "aria-label": ariaLabel,
6417
4301
  align: align,
@@ -6419,9 +4303,8 @@ var DotBodyCell = function DotBodyCell(_ref) {
6419
4303
  root: rootClasses
6420
4304
  },
6421
4305
  colSpan: colspan,
6422
- "data-testid": dataTestId,
6423
- key: id
6424
- }, value);
4306
+ "data-testid": dataTestId
4307
+ }, getTableCellValue());
6425
4308
  };
6426
4309
 
6427
4310
  /**
@@ -6432,6 +4315,7 @@ var DotBodyCell = function DotBodyCell(_ref) {
6432
4315
  var DotTableRow = function DotTableRow(_ref) {
6433
4316
  var columns = _ref.columns,
6434
4317
  data = _ref.data,
4318
+ _onActionMenuTrigger = _ref.onActionMenuTrigger,
6435
4319
  onClick = _ref.onClick,
6436
4320
  selected = _ref.selected;
6437
4321
  var id = data.id;
@@ -6445,14 +4329,16 @@ var DotTableRow = function DotTableRow(_ref) {
6445
4329
  classes: {
6446
4330
  root: 'dot-tr'
6447
4331
  },
6448
- key: CreateUUID(),
6449
4332
  onClick: handleOnClick,
6450
4333
  selected: selected
6451
- }, columns.map(function (column) {
4334
+ }, columns.map(function (column, index) {
6452
4335
  return /*#__PURE__*/React__default.createElement(DotBodyCell, {
6453
4336
  align: column.align,
6454
- key: CreateUUID(),
4337
+ key: index,
6455
4338
  noWrap: column.truncate,
4339
+ onActionMenuTrigger: function onActionMenuTrigger(menuRef, menuItem) {
4340
+ return _onActionMenuTrigger(menuRef, menuItem);
4341
+ },
6456
4342
  value: rowData[column.id]
6457
4343
  });
6458
4344
  }));
@@ -6481,6 +4367,30 @@ var DotTableBody = function DotTableBody(_ref) {
6481
4367
  emptyMessage = _ref.emptyMessage,
6482
4368
  onRowClick = _ref.onRowClick;
6483
4369
 
4370
+ var _useState = useState(null),
4371
+ anchorEl = _useState[0],
4372
+ setAnchorEl = _useState[1];
4373
+
4374
+ var _useState2 = useState([]),
4375
+ menuProps = _useState2[0],
4376
+ setMenuProps = _useState2[1];
4377
+
4378
+ var _useState3 = useState(false),
4379
+ open = _useState3[0],
4380
+ setOpen = _useState3[1];
4381
+
4382
+ var handleActionMenuTrigger = function handleActionMenuTrigger(el, menuItem) {
4383
+ setAnchorEl(el);
4384
+ setMenuProps(menuItem);
4385
+ setOpen(!open);
4386
+ };
4387
+
4388
+ var menuId = CreateUUID();
4389
+
4390
+ var onLeave = function onLeave() {
4391
+ setOpen(false);
4392
+ };
4393
+
6484
4394
  if (data.length === 0) {
6485
4395
  return /*#__PURE__*/React__default.createElement(TableBody, null, /*#__PURE__*/React__default.createElement(EmptyDotRow, {
6486
4396
  cols: columns.length,
@@ -6488,18 +4398,25 @@ var DotTableBody = function DotTableBody(_ref) {
6488
4398
  }));
6489
4399
  }
6490
4400
 
6491
- return /*#__PURE__*/React__default.createElement(TableBody, {
4401
+ return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(TableBody, {
6492
4402
  classes: {
6493
4403
  root: 'dot-tbody'
6494
4404
  }
6495
- }, data.map(function (row) {
4405
+ }, data.map(function (row, index) {
6496
4406
  return /*#__PURE__*/React__default.createElement(DotTableRow, {
6497
4407
  columns: columns,
6498
4408
  data: row,
6499
- key: CreateUUID(),
4409
+ key: index,
4410
+ onActionMenuTrigger: handleActionMenuTrigger,
6500
4411
  onClick: onRowClick,
6501
4412
  selected: row.selected
6502
4413
  });
4414
+ })), /*#__PURE__*/React__default.createElement(StyledMenu, {
4415
+ anchorEl: anchorEl,
4416
+ id: menuId,
4417
+ menuItems: menuProps,
4418
+ onLeave: onLeave,
4419
+ open: open
6503
4420
  }));
6504
4421
  };
6505
4422
 
@@ -6909,4 +4826,4 @@ var DotTabs = function DotTabs(_ref) {
6909
4826
  }, tabArray);
6910
4827
  };
6911
4828
 
6912
- export { Cell, CssCell, CssGrid, CssGridDebug, DotAccordion, DotActionToolbar, DotAlertBanner, DotAppToolbar, DotAutoComplete, DotAvatar, DotAvatarGroup, DotBreadcrumbs, DotButton, DotButtonToggle, DotCard, DotCardContent, DotCardFooter, DotCardHeader, DotCheckbox, DotCheckboxGroup, DotChip, DotConfirmationDialog, DotDialog, DotDrawer, DotEmptyState, DotForm, DotFormGroup, DotHeaderRow, DotIcon, DotIconButton, DotInlineEdit, DotInputSelect, DotInputText, DotLink, DotList, DotMenu, DotNavigationRail, DotPill, DotProgress, DotRadioButton, DotRadioGroup, DotSidebar, DotSkeleton, DotSnackbar, DotSnackbarContainer, DotSnackbarProvider, DotSplitButton, DotSwitch, DotTable, DotTablePagination, DotTabs, DotThemeProvider, DotTypography, lightThemeColors as lightColors, parseAutoCompleteValue, variables as themeVariables, useDotSnackbarContext };
4829
+ export { Cell, CssCell, CssGrid, CssGridDebug, DotAccordion, DotActionToolbar, DotAlertBanner, DotAppToolbar, DotAutoComplete, DotAvatar, DotAvatarGroup, DotBadge, DotBreadcrumbs, DotButton, DotButtonToggle, DotCard, DotCardContent, DotCardFooter, DotCardHeader, DotCheckbox, DotCheckboxGroup, DotChip, DotConfirmationDialog, DotDialog, DotDrawer, DotEmptyState, DotForm, DotFormGroup, DotHeaderRow, DotIcon, DotIconButton, DotInlineEdit, DotInputSelect, DotInputText, DotLink, DotList, DotMenu, DotNavigationRail, DotPill, DotProgress, DotRadioButton, DotRadioGroup, DotSidebar, DotSkeleton, DotSnackbar, DotSnackbarContainer, DotSnackbarProvider, DotSplitButton, DotSwitch, DotTable, DotTablePagination, DotTabs, DotThemeProvider, DotTypography, lightThemeColors as lightColors, parseAutoCompleteValue, variables as themeVariables, useDotSnackbarContext };