@sinco/react 1.0.10-rc.9 → 1.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.js CHANGED
@@ -5458,10 +5458,10 @@ if (!isBrowser$2) {
5458
5458
  };
5459
5459
  }
5460
5460
 
5461
- var ThemeContext = /* #__PURE__ */React.createContext({});
5461
+ var ThemeContext$2 = /* #__PURE__ */React.createContext({});
5462
5462
 
5463
5463
  if (process.env.NODE_ENV !== 'production') {
5464
- ThemeContext.displayName = 'EmotionThemeContext';
5464
+ ThemeContext$2.displayName = 'EmotionThemeContext';
5465
5465
  }
5466
5466
 
5467
5467
  var typePropName = '__EMOTION_TYPE_PLEASE_DO_NOT_USE__';
@@ -5514,7 +5514,7 @@ var Emotion = /* #__PURE__ */withEmotionCache(function (props, cache, ref) {
5514
5514
  className = props.className + " ";
5515
5515
  }
5516
5516
 
5517
- var serialized = serializeStyles(registeredStyles, undefined, React.useContext(ThemeContext));
5517
+ var serialized = serializeStyles(registeredStyles, undefined, React.useContext(ThemeContext$2));
5518
5518
 
5519
5519
  if (process.env.NODE_ENV !== 'production' && serialized.name.indexOf('-') === -1) {
5520
5520
  var labelFromStack = props[labelPropName];
@@ -5693,7 +5693,7 @@ var Global = /* #__PURE__ */withEmotionCache(function (props, cache) {
5693
5693
  }
5694
5694
 
5695
5695
  var styles = props.styles;
5696
- var serialized = serializeStyles([styles], undefined, React.useContext(ThemeContext));
5696
+ var serialized = serializeStyles([styles], undefined, React.useContext(ThemeContext$2));
5697
5697
 
5698
5698
  if (!isBrowser$2) {
5699
5699
  var _ref;
@@ -5939,7 +5939,7 @@ var ClassNames = /* #__PURE__ */withEmotionCache(function (props, cache) {
5939
5939
  var content = {
5940
5940
  css: css,
5941
5941
  cx: cx,
5942
- theme: React.useContext(ThemeContext)
5942
+ theme: React.useContext(ThemeContext$2)
5943
5943
  };
5944
5944
  var ele = props.children(content);
5945
5945
  hasRendered = true;
@@ -6095,7 +6095,7 @@ var createStyled$1 = function createStyled(tag, options) {
6095
6095
  mergedProps[key] = props[key];
6096
6096
  }
6097
6097
 
6098
- mergedProps.theme = React.useContext(ThemeContext);
6098
+ mergedProps.theme = React.useContext(ThemeContext$2);
6099
6099
  }
6100
6100
 
6101
6101
  if (typeof props.className === 'string') {
@@ -6199,7 +6199,7 @@ const internal_processStyles = (tag, processor) => {
6199
6199
  }
6200
6200
  };
6201
6201
 
6202
- const _excluded$p = ["values", "unit", "step"];
6202
+ const _excluded$w = ["values", "unit", "step"];
6203
6203
  const sortBreakpointsValues = values => {
6204
6204
  const breakpointsAsArray = Object.keys(values).map(key => ({
6205
6205
  key,
@@ -6234,7 +6234,7 @@ function createBreakpoints(breakpoints) {
6234
6234
  unit = 'px',
6235
6235
  step = 5
6236
6236
  } = breakpoints,
6237
- other = _objectWithoutPropertiesLoose(breakpoints, _excluded$p);
6237
+ other = _objectWithoutPropertiesLoose(breakpoints, _excluded$w);
6238
6238
  const sortedValues = sortBreakpointsValues(values);
6239
6239
  const keys = Object.keys(sortedValues);
6240
6240
  function up(key) {
@@ -7318,7 +7318,7 @@ const styleFunctionSx = unstable_createStyleFunctionSx();
7318
7318
  styleFunctionSx.filterProps = ['sx'];
7319
7319
  var styleFunctionSx$1 = styleFunctionSx;
7320
7320
 
7321
- const _excluded$o = ["breakpoints", "palette", "spacing", "shape"];
7321
+ const _excluded$v = ["breakpoints", "palette", "spacing", "shape"];
7322
7322
  function createTheme$1(options = {}, ...args) {
7323
7323
  const {
7324
7324
  breakpoints: breakpointsInput = {},
@@ -7326,7 +7326,7 @@ function createTheme$1(options = {}, ...args) {
7326
7326
  spacing: spacingInput,
7327
7327
  shape: shapeInput = {}
7328
7328
  } = options,
7329
- other = _objectWithoutPropertiesLoose(options, _excluded$o);
7329
+ other = _objectWithoutPropertiesLoose(options, _excluded$v);
7330
7330
  const breakpoints = createBreakpoints(breakpointsInput);
7331
7331
  const spacing = createSpacing(spacingInput);
7332
7332
  let muiTheme = deepmerge({
@@ -7354,17 +7354,17 @@ function createTheme$1(options = {}, ...args) {
7354
7354
  function isObjectEmpty(obj) {
7355
7355
  return Object.keys(obj).length === 0;
7356
7356
  }
7357
- function useTheme$2(defaultTheme = null) {
7358
- const contextTheme = React.useContext(ThemeContext);
7357
+ function useTheme$3(defaultTheme = null) {
7358
+ const contextTheme = React.useContext(ThemeContext$2);
7359
7359
  return !contextTheme || isObjectEmpty(contextTheme) ? defaultTheme : contextTheme;
7360
7360
  }
7361
7361
 
7362
7362
  const systemDefaultTheme$1 = createTheme$1();
7363
- function useTheme$1(defaultTheme = systemDefaultTheme$1) {
7364
- return useTheme$2(defaultTheme);
7363
+ function useTheme$2(defaultTheme = systemDefaultTheme$1) {
7364
+ return useTheme$3(defaultTheme);
7365
7365
  }
7366
7366
 
7367
- const _excluded$n = ["sx"];
7367
+ const _excluded$u = ["sx"];
7368
7368
  const splitProps = props => {
7369
7369
  var _props$theme$unstable, _props$theme;
7370
7370
  const result = {
@@ -7385,7 +7385,7 @@ function extendSxProp(props) {
7385
7385
  const {
7386
7386
  sx: inSx
7387
7387
  } = props,
7388
- other = _objectWithoutPropertiesLoose(props, _excluded$n);
7388
+ other = _objectWithoutPropertiesLoose(props, _excluded$u);
7389
7389
  const {
7390
7390
  systemProps,
7391
7391
  otherProps
@@ -7411,7 +7411,7 @@ function extendSxProp(props) {
7411
7411
 
7412
7412
  function r(e){var t,f,n="";if("string"==typeof e||"number"==typeof e)n+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=" "),n+=f);else for(t in e)e[t]&&(n&&(n+=" "),n+=t);return n}function clsx(){for(var e,t,f=0,n="";f<arguments.length;)(e=arguments[f++])&&(t=r(e))&&(n&&(n+=" "),n+=t);return n}
7413
7413
 
7414
- const _excluded$m = ["className", "component"];
7414
+ const _excluded$t = ["className", "component"];
7415
7415
  function createBox(options = {}) {
7416
7416
  const {
7417
7417
  themeId,
@@ -7423,13 +7423,13 @@ function createBox(options = {}) {
7423
7423
  shouldForwardProp: prop => prop !== 'theme' && prop !== 'sx' && prop !== 'as'
7424
7424
  })(styleFunctionSx$1);
7425
7425
  const Box = /*#__PURE__*/React.forwardRef(function Box(inProps, ref) {
7426
- const theme = useTheme$1(defaultTheme);
7426
+ const theme = useTheme$2(defaultTheme);
7427
7427
  const _extendSxProp = extendSxProp(inProps),
7428
7428
  {
7429
7429
  className,
7430
7430
  component = 'div'
7431
7431
  } = _extendSxProp,
7432
- other = _objectWithoutPropertiesLoose(_extendSxProp, _excluded$m);
7432
+ other = _objectWithoutPropertiesLoose(_extendSxProp, _excluded$t);
7433
7433
  return /*#__PURE__*/jsx(BoxRoot, _extends({
7434
7434
  as: component,
7435
7435
  ref: ref,
@@ -7440,7 +7440,7 @@ function createBox(options = {}) {
7440
7440
  return Box;
7441
7441
  }
7442
7442
 
7443
- const _excluded$l = ["variant"];
7443
+ const _excluded$s = ["variant"];
7444
7444
  function isEmpty$1(string) {
7445
7445
  return string.length === 0;
7446
7446
  }
@@ -7454,7 +7454,7 @@ function propsToClassKey(props) {
7454
7454
  const {
7455
7455
  variant
7456
7456
  } = props,
7457
- other = _objectWithoutPropertiesLoose(props, _excluded$l);
7457
+ other = _objectWithoutPropertiesLoose(props, _excluded$s);
7458
7458
  let classKey = variant || '';
7459
7459
  Object.keys(other).sort().forEach(key => {
7460
7460
  if (key === 'color') {
@@ -7466,7 +7466,7 @@ function propsToClassKey(props) {
7466
7466
  return classKey;
7467
7467
  }
7468
7468
 
7469
- const _excluded$k = ["name", "slot", "skipVariantsResolver", "skipSx", "overridesResolver"];
7469
+ const _excluded$r = ["name", "slot", "skipVariantsResolver", "skipSx", "overridesResolver"];
7470
7470
  function isEmpty(obj) {
7471
7471
  return Object.keys(obj).length === 0;
7472
7472
  }
@@ -7561,7 +7561,7 @@ function createStyled(input = {}) {
7561
7561
  skipSx: inputSkipSx,
7562
7562
  overridesResolver
7563
7563
  } = inputOptions,
7564
- options = _objectWithoutPropertiesLoose(inputOptions, _excluded$k);
7564
+ options = _objectWithoutPropertiesLoose(inputOptions, _excluded$r);
7565
7565
 
7566
7566
  // if skipVariantsResolver option is defined, take the value, otherwise, true for root and false for other slots.
7567
7567
  const skipVariantsResolver = inputSkipVariantsResolver !== undefined ? inputSkipVariantsResolver : componentSlot && componentSlot !== 'Root' || false;
@@ -7695,7 +7695,7 @@ function useThemeProps$1({
7695
7695
  defaultTheme,
7696
7696
  themeId
7697
7697
  }) {
7698
- let theme = useTheme$1(defaultTheme);
7698
+ let theme = useTheme$2(defaultTheme);
7699
7699
  if (themeId) {
7700
7700
  theme = theme[themeId] || theme;
7701
7701
  }
@@ -7941,7 +7941,168 @@ function lighten(color, coefficient) {
7941
7941
  return recomposeColor(color);
7942
7942
  }
7943
7943
 
7944
- const _excluded$j = ["component", "direction", "spacing", "divider", "children", "className", "useFlexGap"];
7944
+ /**
7945
+ * Darken or lighten a color, depending on its luminance.
7946
+ * Light colors are darkened, dark colors are lightened.
7947
+ * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color()
7948
+ * @param {number} coefficient=0.15 - multiplier in the range 0 - 1
7949
+ * @returns {string} A CSS color string. Hex input values are returned as rgb
7950
+ */
7951
+ function emphasize(color, coefficient = 0.15) {
7952
+ return getLuminance(color) > 0.5 ? darken(color, coefficient) : lighten(color, coefficient);
7953
+ }
7954
+
7955
+ const ThemeContext = /*#__PURE__*/React.createContext(null);
7956
+ if (process.env.NODE_ENV !== 'production') {
7957
+ ThemeContext.displayName = 'ThemeContext';
7958
+ }
7959
+ var ThemeContext$1 = ThemeContext;
7960
+
7961
+ function useTheme$1() {
7962
+ const theme = React.useContext(ThemeContext$1);
7963
+ if (process.env.NODE_ENV !== 'production') {
7964
+ // eslint-disable-next-line react-hooks/rules-of-hooks
7965
+ React.useDebugValue(theme);
7966
+ }
7967
+ return theme;
7968
+ }
7969
+
7970
+ const hasSymbol = typeof Symbol === 'function' && Symbol.for;
7971
+ var nested = hasSymbol ? Symbol.for('mui.nested') : '__THEME_NESTED__';
7972
+
7973
+ function mergeOuterLocalTheme(outerTheme, localTheme) {
7974
+ if (typeof localTheme === 'function') {
7975
+ const mergedTheme = localTheme(outerTheme);
7976
+ if (process.env.NODE_ENV !== 'production') {
7977
+ if (!mergedTheme) {
7978
+ console.error(['MUI: You should return an object from your theme function, i.e.', '<ThemeProvider theme={() => ({})} />'].join('\n'));
7979
+ }
7980
+ }
7981
+ return mergedTheme;
7982
+ }
7983
+ return {
7984
+ ...outerTheme,
7985
+ ...localTheme
7986
+ };
7987
+ }
7988
+
7989
+ /**
7990
+ * This component takes a `theme` prop.
7991
+ * It makes the `theme` available down the React tree thanks to React context.
7992
+ * This component should preferably be used at **the root of your component tree**.
7993
+ */
7994
+ function ThemeProvider$2(props) {
7995
+ const {
7996
+ children,
7997
+ theme: localTheme
7998
+ } = props;
7999
+ const outerTheme = useTheme$1();
8000
+ if (process.env.NODE_ENV !== 'production') {
8001
+ if (outerTheme === null && typeof localTheme === 'function') {
8002
+ console.error(['MUI: You are providing a theme function prop to the ThemeProvider component:', '<ThemeProvider theme={outerTheme => outerTheme} />', '', 'However, no outer theme is present.', 'Make sure a theme is already injected higher in the React tree ' + 'or provide a theme object.'].join('\n'));
8003
+ }
8004
+ }
8005
+ const theme = React.useMemo(() => {
8006
+ const output = outerTheme === null ? localTheme : mergeOuterLocalTheme(outerTheme, localTheme);
8007
+ if (output != null) {
8008
+ output[nested] = outerTheme !== null;
8009
+ }
8010
+ return output;
8011
+ }, [localTheme, outerTheme]);
8012
+ return /*#__PURE__*/jsx(ThemeContext$1.Provider, {
8013
+ value: theme,
8014
+ children: children
8015
+ });
8016
+ }
8017
+ process.env.NODE_ENV !== "production" ? ThemeProvider$2.propTypes = {
8018
+ /**
8019
+ * Your component tree.
8020
+ */
8021
+ children: PropTypes.node,
8022
+ /**
8023
+ * A theme object. You can provide a function to extend the outer theme.
8024
+ */
8025
+ theme: PropTypes.oneOfType([PropTypes.object, PropTypes.func]).isRequired
8026
+ } : void 0;
8027
+ if (process.env.NODE_ENV !== 'production') {
8028
+ process.env.NODE_ENV !== "production" ? ThemeProvider$2.propTypes = exactProp(ThemeProvider$2.propTypes) : void 0;
8029
+ }
8030
+
8031
+ const EMPTY_THEME = {};
8032
+ function useThemeScoping(themeId, upperTheme, localTheme, isPrivate = false) {
8033
+ return React.useMemo(() => {
8034
+ const resolvedTheme = themeId ? upperTheme[themeId] || upperTheme : upperTheme;
8035
+ if (typeof localTheme === 'function') {
8036
+ const mergedTheme = localTheme(resolvedTheme);
8037
+ const result = themeId ? _extends({}, upperTheme, {
8038
+ [themeId]: mergedTheme
8039
+ }) : mergedTheme;
8040
+ // must return a function for the private theme to NOT merge with the upper theme.
8041
+ // see the test case "use provided theme from a callback" in ThemeProvider.test.js
8042
+ if (isPrivate) {
8043
+ return () => result;
8044
+ }
8045
+ return result;
8046
+ }
8047
+ return themeId ? _extends({}, upperTheme, {
8048
+ [themeId]: localTheme
8049
+ }) : _extends({}, upperTheme, localTheme);
8050
+ }, [themeId, upperTheme, localTheme, isPrivate]);
8051
+ }
8052
+
8053
+ /**
8054
+ * This component makes the `theme` available down the React tree.
8055
+ * It should preferably be used at **the root of your component tree**.
8056
+ *
8057
+ * <ThemeProvider theme={theme}> // existing use case
8058
+ * <ThemeProvider theme={{ id: theme }}> // theme scoping
8059
+ */
8060
+ function ThemeProvider$1(props) {
8061
+ const {
8062
+ children,
8063
+ theme: localTheme,
8064
+ themeId
8065
+ } = props;
8066
+ const upperTheme = useTheme$3(EMPTY_THEME);
8067
+ const upperPrivateTheme = useTheme$1() || EMPTY_THEME;
8068
+ if (process.env.NODE_ENV !== 'production') {
8069
+ if (upperTheme === null && typeof localTheme === 'function' || themeId && upperTheme && !upperTheme[themeId] && typeof localTheme === 'function') {
8070
+ console.error(['MUI: You are providing a theme function prop to the ThemeProvider component:', '<ThemeProvider theme={outerTheme => outerTheme} />', '', 'However, no outer theme is present.', 'Make sure a theme is already injected higher in the React tree ' + 'or provide a theme object.'].join('\n'));
8071
+ }
8072
+ }
8073
+ const engineTheme = useThemeScoping(themeId, upperTheme, localTheme);
8074
+ const privateTheme = useThemeScoping(themeId, upperPrivateTheme, localTheme, true);
8075
+ return /*#__PURE__*/jsx(ThemeProvider$2, {
8076
+ theme: privateTheme,
8077
+ children: /*#__PURE__*/jsx(ThemeContext$2.Provider, {
8078
+ value: engineTheme,
8079
+ children: children
8080
+ })
8081
+ });
8082
+ }
8083
+ process.env.NODE_ENV !== "production" ? ThemeProvider$1.propTypes /* remove-proptypes */ = {
8084
+ // ----------------------------- Warning --------------------------------
8085
+ // | These PropTypes are generated from the TypeScript type definitions |
8086
+ // | To update them edit the d.ts file and run "yarn proptypes" |
8087
+ // ----------------------------------------------------------------------
8088
+ /**
8089
+ * Your component tree.
8090
+ */
8091
+ children: PropTypes.node,
8092
+ /**
8093
+ * A theme object. You can provide a function to extend the outer theme.
8094
+ */
8095
+ theme: PropTypes.oneOfType([PropTypes.func, PropTypes.object]).isRequired,
8096
+ /**
8097
+ * The design system's unique id for getting the corresponded theme when there are multiple design systems.
8098
+ */
8099
+ themeId: PropTypes.string
8100
+ } : void 0;
8101
+ if (process.env.NODE_ENV !== 'production') {
8102
+ process.env.NODE_ENV !== "production" ? ThemeProvider$1.propTypes = exactProp(ThemeProvider$1.propTypes) : void 0;
8103
+ }
8104
+
8105
+ const _excluded$q = ["component", "direction", "spacing", "divider", "children", "className", "useFlexGap"];
7945
8106
  const defaultTheme$3 = createTheme$1();
7946
8107
  // widening Theme to any so that the consumer can own the theme structure.
7947
8108
  const defaultCreateStyledComponent = systemStyled('div', {
@@ -8070,7 +8231,7 @@ function createStack(options = {}) {
8070
8231
  className,
8071
8232
  useFlexGap = false
8072
8233
  } = props,
8073
- other = _objectWithoutPropertiesLoose(props, _excluded$j);
8234
+ other = _objectWithoutPropertiesLoose(props, _excluded$q);
8074
8235
  const ownerState = {
8075
8236
  direction,
8076
8237
  spacing,
@@ -8244,7 +8405,7 @@ const green = {
8244
8405
  };
8245
8406
  var green$1 = green;
8246
8407
 
8247
- const _excluded$i = ["mode", "contrastThreshold", "tonalOffset"];
8408
+ const _excluded$p = ["mode", "contrastThreshold", "tonalOffset"];
8248
8409
  const light = {
8249
8410
  // The colors used to style the text.
8250
8411
  text: {
@@ -8413,7 +8574,7 @@ function createPalette(palette) {
8413
8574
  contrastThreshold = 3,
8414
8575
  tonalOffset = 0.2
8415
8576
  } = palette,
8416
- other = _objectWithoutPropertiesLoose(palette, _excluded$i);
8577
+ other = _objectWithoutPropertiesLoose(palette, _excluded$p);
8417
8578
  const primary = palette.primary || getDefaultPrimary(mode);
8418
8579
  const secondary = palette.secondary || getDefaultSecondary(mode);
8419
8580
  const error = palette.error || getDefaultError(mode);
@@ -8537,7 +8698,7 @@ const theme2 = createTheme({ palette: {
8537
8698
  return paletteOutput;
8538
8699
  }
8539
8700
 
8540
- const _excluded$h = ["fontFamily", "fontSize", "fontWeightLight", "fontWeightRegular", "fontWeightMedium", "fontWeightBold", "htmlFontSize", "allVariants", "pxToRem"];
8701
+ const _excluded$o = ["fontFamily", "fontSize", "fontWeightLight", "fontWeightRegular", "fontWeightMedium", "fontWeightBold", "htmlFontSize", "allVariants", "pxToRem"];
8541
8702
  function round(value) {
8542
8703
  return Math.round(value * 1e5) / 1e5;
8543
8704
  }
@@ -8568,7 +8729,7 @@ function createTypography(palette, typography) {
8568
8729
  allVariants,
8569
8730
  pxToRem: pxToRem2
8570
8731
  } = _ref,
8571
- other = _objectWithoutPropertiesLoose(_ref, _excluded$h);
8732
+ other = _objectWithoutPropertiesLoose(_ref, _excluded$o);
8572
8733
  if (process.env.NODE_ENV !== 'production') {
8573
8734
  if (typeof fontSize !== 'number') {
8574
8735
  console.error('MUI: `fontSize` is required to be a number.');
@@ -8635,7 +8796,7 @@ function createShadow(...px) {
8635
8796
  const 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)];
8636
8797
  var shadows$1 = shadows;
8637
8798
 
8638
- const _excluded$g = ["duration", "easing", "delay"];
8799
+ const _excluded$n = ["duration", "easing", "delay"];
8639
8800
  // Follow https://material.google.com/motion/duration-easing.html#duration-easing-natural-easing-curves
8640
8801
  // to learn the context in which each easing should be used.
8641
8802
  const easing = {
@@ -8686,7 +8847,7 @@ function createTransitions(inputTransitions) {
8686
8847
  easing: easingOption = mergedEasing.easeInOut,
8687
8848
  delay = 0
8688
8849
  } = options,
8689
- other = _objectWithoutPropertiesLoose(options, _excluded$g);
8850
+ other = _objectWithoutPropertiesLoose(options, _excluded$n);
8690
8851
  if (process.env.NODE_ENV !== 'production') {
8691
8852
  const isString = value => typeof value === 'string';
8692
8853
  // IE11 support, replace with Number.isNaN
@@ -8733,7 +8894,7 @@ const zIndex = {
8733
8894
  };
8734
8895
  var zIndex$1 = zIndex;
8735
8896
 
8736
- const _excluded$f = ["breakpoints", "mixins", "spacing", "palette", "transitions", "typography", "shape"];
8897
+ const _excluded$m = ["breakpoints", "mixins", "spacing", "palette", "transitions", "typography", "shape"];
8737
8898
  function createTheme(options = {}, ...args) {
8738
8899
  const {
8739
8900
  mixins: mixinsInput = {},
@@ -8741,7 +8902,7 @@ function createTheme(options = {}, ...args) {
8741
8902
  transitions: transitionsInput = {},
8742
8903
  typography: typographyInput = {}
8743
8904
  } = options,
8744
- other = _objectWithoutPropertiesLoose(options, _excluded$f);
8905
+ other = _objectWithoutPropertiesLoose(options, _excluded$m);
8745
8906
  if (options.vars) {
8746
8907
  throw new Error(process.env.NODE_ENV !== "production" ? `MUI: \`vars\` is a private field used for CSS variables support.
8747
8908
  Please use another name.` : formatMuiErrorMessage(18));
@@ -8803,7 +8964,7 @@ const defaultTheme$1 = createTheme();
8803
8964
  var defaultTheme$2 = defaultTheme$1;
8804
8965
 
8805
8966
  function useTheme() {
8806
- const theme = useTheme$1(defaultTheme$2);
8967
+ const theme = useTheme$2(defaultTheme$2);
8807
8968
  if (process.env.NODE_ENV !== 'production') {
8808
8969
  // eslint-disable-next-line react-hooks/rules-of-hooks
8809
8970
  React.useDebugValue(theme);
@@ -8831,6 +8992,29 @@ const styled = createStyled({
8831
8992
  });
8832
8993
  var styled$1 = styled;
8833
8994
 
8995
+ const _excluded$l = ["theme"];
8996
+ function ThemeProvider(_ref) {
8997
+ let {
8998
+ theme: themeInput
8999
+ } = _ref,
9000
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$l);
9001
+ const scopedTheme = themeInput[THEME_ID];
9002
+ return /*#__PURE__*/jsx(ThemeProvider$1, _extends({}, props, {
9003
+ themeId: scopedTheme ? THEME_ID : undefined,
9004
+ theme: scopedTheme || themeInput
9005
+ }));
9006
+ }
9007
+ process.env.NODE_ENV !== "production" ? ThemeProvider.propTypes = {
9008
+ /**
9009
+ * Your component tree.
9010
+ */
9011
+ children: PropTypes.node,
9012
+ /**
9013
+ * A theme object. You can provide a function to extend the outer theme.
9014
+ */
9015
+ theme: PropTypes.oneOfType([PropTypes.object, PropTypes.func]).isRequired
9016
+ } : void 0;
9017
+
8834
9018
  // Inspired by https://github.com/material-components/material-components-ios/blob/bca36107405594d5b7b16265a5b0ed698f85a5ee/components/Elevation/src/UIColor%2BMaterialElevation.m#L61
8835
9019
  const getOverlayAlpha = elevation => {
8836
9020
  let alphaValue;
@@ -9009,7 +9193,7 @@ function mergeSlotProps(parameters) {
9009
9193
  };
9010
9194
  }
9011
9195
 
9012
- const _excluded$e = ["elementType", "externalSlotProps", "ownerState"];
9196
+ const _excluded$k = ["elementType", "externalSlotProps", "ownerState"];
9013
9197
  /**
9014
9198
  * @ignore - do not document.
9015
9199
  * Builds the props to be passed into the slot of an unstyled component.
@@ -9025,7 +9209,7 @@ function useSlotProps(parameters) {
9025
9209
  externalSlotProps,
9026
9210
  ownerState
9027
9211
  } = parameters,
9028
- rest = _objectWithoutPropertiesLoose(parameters, _excluded$e);
9212
+ rest = _objectWithoutPropertiesLoose(parameters, _excluded$k);
9029
9213
  const resolvedComponentsProps = resolveComponentProps(externalSlotProps, ownerState);
9030
9214
  const {
9031
9215
  props: mergedProps,
@@ -9663,8 +9847,8 @@ function getModalUtilityClass(slot) {
9663
9847
  }
9664
9848
  generateUtilityClasses('MuiModal', ['root', 'hidden', 'backdrop']);
9665
9849
 
9666
- const _excluded$d = ["children", "closeAfterTransition", "container", "disableAutoFocus", "disableEnforceFocus", "disableEscapeKeyDown", "disablePortal", "disableRestoreFocus", "disableScrollLock", "hideBackdrop", "keepMounted", "manager", "onBackdropClick", "onClose", "onKeyDown", "open", "onTransitionEnter", "onTransitionExited", "slotProps", "slots"];
9667
- const useUtilityClasses$9 = ownerState => {
9850
+ const _excluded$j = ["children", "closeAfterTransition", "container", "disableAutoFocus", "disableEnforceFocus", "disableEscapeKeyDown", "disablePortal", "disableRestoreFocus", "disableScrollLock", "hideBackdrop", "keepMounted", "manager", "onBackdropClick", "onClose", "onKeyDown", "open", "onTransitionEnter", "onTransitionExited", "slotProps", "slots"];
9851
+ const useUtilityClasses$e = ownerState => {
9668
9852
  const {
9669
9853
  open,
9670
9854
  exited
@@ -9732,7 +9916,7 @@ const Modal$2 = /*#__PURE__*/React.forwardRef(function Modal(props, forwardedRef
9732
9916
  slotProps = {},
9733
9917
  slots = {}
9734
9918
  } = props,
9735
- other = _objectWithoutPropertiesLoose(props, _excluded$d);
9919
+ other = _objectWithoutPropertiesLoose(props, _excluded$j);
9736
9920
  // TODO: `modal`` must change its type in this file to match the type of methods
9737
9921
  // provided by `ModalManager`
9738
9922
  const manager = managerProp;
@@ -9807,7 +9991,7 @@ const Modal$2 = /*#__PURE__*/React.forwardRef(function Modal(props, forwardedRef
9807
9991
  hideBackdrop,
9808
9992
  keepMounted
9809
9993
  });
9810
- const classes = useUtilityClasses$9(ownerState);
9994
+ const classes = useUtilityClasses$e(ownerState);
9811
9995
  const handleEnter = () => {
9812
9996
  setExited(false);
9813
9997
  if (onTransitionEnter) {
@@ -10027,8 +10211,8 @@ function getSvgIconUtilityClass(slot) {
10027
10211
  }
10028
10212
  generateUtilityClasses('MuiSvgIcon', ['root', 'colorPrimary', 'colorSecondary', 'colorAction', 'colorError', 'colorDisabled', 'fontSizeInherit', 'fontSizeSmall', 'fontSizeMedium', 'fontSizeLarge']);
10029
10213
 
10030
- const _excluded$c = ["children", "className", "color", "component", "fontSize", "htmlColor", "inheritViewBox", "titleAccess", "viewBox"];
10031
- const useUtilityClasses$8 = ownerState => {
10214
+ const _excluded$i = ["children", "className", "color", "component", "fontSize", "htmlColor", "inheritViewBox", "titleAccess", "viewBox"];
10215
+ const useUtilityClasses$d = ownerState => {
10032
10216
  const {
10033
10217
  color,
10034
10218
  fontSize,
@@ -10093,7 +10277,7 @@ const SvgIcon = /*#__PURE__*/React.forwardRef(function SvgIcon(inProps, ref) {
10093
10277
  titleAccess,
10094
10278
  viewBox = '0 0 24 24'
10095
10279
  } = props,
10096
- other = _objectWithoutPropertiesLoose(props, _excluded$c);
10280
+ other = _objectWithoutPropertiesLoose(props, _excluded$i);
10097
10281
  const ownerState = _extends({}, props, {
10098
10282
  color,
10099
10283
  component,
@@ -10106,7 +10290,7 @@ const SvgIcon = /*#__PURE__*/React.forwardRef(function SvgIcon(inProps, ref) {
10106
10290
  if (!inheritViewBox) {
10107
10291
  more.viewBox = viewBox;
10108
10292
  }
10109
- const classes = useUtilityClasses$8(ownerState);
10293
+ const classes = useUtilityClasses$d(ownerState);
10110
10294
  return /*#__PURE__*/jsxs(SvgIconRoot, _extends({
10111
10295
  as: component,
10112
10296
  className: clsx(classes.root, className),
@@ -10248,10 +10432,22 @@ var utils = /*#__PURE__*/Object.freeze({
10248
10432
  useIsFocusVisible: useIsFocusVisible
10249
10433
  });
10250
10434
 
10435
+ var ArrowDownward = createSvgIcon$1( /*#__PURE__*/jsx("path", {
10436
+ d: "m20 12-1.41-1.41L13 16.17V4h-2v12.17l-5.58-5.59L4 12l8 8 8-8z"
10437
+ }), 'ArrowDownward');
10438
+
10439
+ var ArrowUpward = createSvgIcon$1( /*#__PURE__*/jsx("path", {
10440
+ d: "m4 12 1.41 1.41L11 7.83V20h2V7.83l5.58 5.59L20 12l-8-8-8 8z"
10441
+ }), 'ArrowUpward');
10442
+
10251
10443
  var CheckCircleRounded = createSvgIcon$1( /*#__PURE__*/jsx("path", {
10252
10444
  d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM9.29 16.29 5.7 12.7a.9959.9959 0 0 1 0-1.41c.39-.39 1.02-.39 1.41 0L10 14.17l6.88-6.88c.39-.39 1.02-.39 1.41 0 .39.39.39 1.02 0 1.41l-7.59 7.59c-.38.39-1.02.39-1.41 0z"
10253
10445
  }), 'CheckCircleRounded');
10254
10446
 
10447
+ var Close$1 = createSvgIcon$1( /*#__PURE__*/jsx("path", {
10448
+ d: "M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"
10449
+ }), 'Close');
10450
+
10255
10451
  var ErrorRounded = createSvgIcon$1( /*#__PURE__*/jsx("path", {
10256
10452
  d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 11c-.55 0-1-.45-1-1V8c0-.55.45-1 1-1s1 .45 1 1v4c0 .55-.45 1-1 1zm1 4h-2v-2h2v2z"
10257
10453
  }), 'ErrorRounded');
@@ -10399,13 +10595,64 @@ const components = {
10399
10595
  }
10400
10596
  }
10401
10597
  },
10402
- MuiChip: {
10598
+ MuiCheckbox: {
10599
+ variants: [{
10600
+ props: {
10601
+ size: "xsmall"
10602
+ },
10603
+ style: {
10604
+ padding: 2
10605
+ }
10606
+ }, {
10607
+ props: {
10608
+ size: "small"
10609
+ },
10610
+ style: {
10611
+ padding: 4
10612
+ }
10613
+ }, {
10614
+ props: {
10615
+ size: "medium"
10616
+ },
10617
+ style: {
10618
+ padding: 11
10619
+ }
10620
+ }],
10403
10621
  defaultProps: {
10404
- size: 'small'
10405
- },
10622
+ size: "small"
10623
+ }
10624
+ },
10625
+ MuiChip: {
10626
+ variants: [{
10627
+ props: {
10628
+ size: "xsmall"
10629
+ },
10630
+ style: {
10631
+ height: 16
10632
+ }
10633
+ }],
10406
10634
  styleOverrides: {
10635
+ sizeSmall: {
10636
+ height: 24
10637
+ },
10638
+ sizeMedium: {
10639
+ height: 30
10640
+ },
10407
10641
  root: {
10408
- borderRadius: 4
10642
+ height: "inherit",
10643
+ borderRadius: 4,
10644
+ ".MuiChip-deleteIconXsmall": {
10645
+ height: 12,
10646
+ width: 12
10647
+ },
10648
+ ".MuiChip-deleteIconSmall": {
10649
+ height: 16,
10650
+ widht: 16
10651
+ },
10652
+ ".MuiChip-deleteIconMedium": {
10653
+ height: 20,
10654
+ widht: 20
10655
+ }
10409
10656
  }
10410
10657
  }
10411
10658
  },
@@ -10428,25 +10675,39 @@ const components = {
10428
10675
  }
10429
10676
  },
10430
10677
  MuiButton: {
10431
- defaultProps: {
10432
- size: 'medium'
10433
- },
10434
10678
  styleOverrides: {
10435
- fullWidth: {
10436
- width: '100%'
10679
+ endIcon: {
10680
+ marginLeft: 2
10681
+ },
10682
+ iconSizeSmall: {
10683
+ height: 14,
10684
+ width: 14
10685
+ },
10686
+ iconSizeMedium: {
10687
+ height: 18,
10688
+ width: 18
10689
+ },
10690
+ iconSizeLarge: {
10691
+ height: 18,
10692
+ width: 22
10437
10693
  },
10438
10694
  sizeSmall: {
10439
- padding: '4px 10px'
10695
+ height: 26
10440
10696
  },
10441
10697
  sizeMedium: {
10442
- padding: '7.5px 15px'
10698
+ height: 32,
10699
+ ".MuiSvgIcon-fontSizeMedium": {
10700
+ height: 18,
10701
+ width: 18
10702
+ }
10443
10703
  },
10444
10704
  sizeLarge: {
10445
- padding: '10.5px 22px',
10446
- fontSize: 14
10447
- },
10448
- root: {
10449
- width: "fit-content"
10705
+ height: 38,
10706
+ fontSize: 14,
10707
+ ".MuiSvgIcon-fontSizeLarge": {
10708
+ height: 20,
10709
+ width: 20
10710
+ }
10450
10711
  }
10451
10712
  }
10452
10713
  },
@@ -10455,11 +10716,6 @@ const components = {
10455
10716
  size: "small"
10456
10717
  }
10457
10718
  },
10458
- MuiCheckbox: {
10459
- defaultProps: {
10460
- size: "small"
10461
- }
10462
- },
10463
10719
  MuiFab: {
10464
10720
  defaultProps: {
10465
10721
  size: "small"
@@ -10667,6 +10923,21 @@ const components = {
10667
10923
  }
10668
10924
  },
10669
10925
  MuiRadio: {
10926
+ variants: [{
10927
+ props: {
10928
+ size: "small"
10929
+ },
10930
+ style: {
10931
+ padding: 2
10932
+ }
10933
+ }, {
10934
+ props: {
10935
+ size: "medium"
10936
+ },
10937
+ style: {
10938
+ padding: 9
10939
+ }
10940
+ }],
10670
10941
  defaultProps: {
10671
10942
  size: "small"
10672
10943
  }
@@ -10701,44 +10972,105 @@ const components = {
10701
10972
 
10702
10973
  const palette = {
10703
10974
  primary: {
10704
- main: "#1e62a1",
10705
- light: "#5a8fd3",
10706
- dark: "#003972",
10975
+ 50: "#E4ECF4",
10976
+ 100: "#BCD0E3",
10977
+ 200: "#8FB1D0",
10978
+ 300: "#6392BD",
10979
+ light: "417AAE",
10980
+ main: "#2063A0",
10981
+ 600: "#1C5B98",
10982
+ 700: "#18518E",
10983
+ 800: "#134784",
10984
+ dark: "#0B3573",
10985
+ A100: "#A5C5FF",
10986
+ A200: "#72A4FF",
10987
+ A400: "#3F83FF",
10988
+ A700: "#2572FF",
10707
10989
  contrastText: "#ffffff"
10708
10990
  },
10709
10991
  secondary: {
10710
- main: "#0CBBE2",
10711
- light: "#67eeff",
10712
- dark: "#008bb0",
10992
+ 50: "#E0F7FA",
10993
+ 100: "#B3EBF2",
10994
+ 200: "#80DEEA",
10995
+ 300: "#4DD0E1",
10996
+ light: "#26C6DA",
10997
+ main: "#00BCD4",
10998
+ 600: "#00B6CF",
10999
+ 700: "#00ADC9",
11000
+ 800: "#00A5C3",
11001
+ dark: "#0097B9",
11002
+ A100: "#E2F9FF",
11003
+ A200: "#AFEEFF",
11004
+ A400: "#7CE3FF",
11005
+ A700: "#63DDFF",
10713
11006
  contrastText: "#ffffff"
10714
11007
  },
10715
- text: {
10716
- primary: "#101840de",
10717
- secondary: "#10184099",
10718
- disabled: "#10184061"
10719
- },
10720
11008
  error: {
11009
+ 50: "#F9E8E8",
11010
+ 100: "#F1C7C7",
11011
+ 200: "#E8A1A1",
11012
+ 300: "#DF7B7B",
11013
+ light: "#D85F5F",
10721
11014
  main: "#D14343",
10722
- light: "#d85f5f",
10723
- dark: "#b51e1e",
11015
+ 600: "#CC3D3D",
11016
+ 700: "#C63434",
11017
+ 800: "#C02C2C",
11018
+ dark: "#B51E1E",
11019
+ A100: "#FFECEC",
11020
+ A200: "#FFB9B9",
11021
+ A400: "#FF8686",
11022
+ A700: "#FF6D6D",
10724
11023
  contrastText: "#ffffff"
10725
11024
  },
10726
11025
  warning: {
10727
- main: "#fb8500",
10728
- light: "#fc9726",
10729
- dark: "#f85500",
11026
+ 50: "#FFF0E0",
11027
+ 100: "#FEDAB3",
11028
+ 200: "#FDC280",
11029
+ 300: "#FCAA4D",
11030
+ light: "#FC9726",
11031
+ main: "#FB8500",
11032
+ 600: "#FA7D00",
11033
+ 700: "#FA7200",
11034
+ 800: "#F96800",
11035
+ dark: "#F85500",
11036
+ A100: "#FFFFFF",
11037
+ A200: "#FFF1EB",
11038
+ A400: "#FFCCB8",
11039
+ A700: "#FFBA9F",
10730
11040
  contrastText: "#ffffff"
10731
11041
  },
10732
11042
  info: {
10733
- main: "#2d9fc5",
10734
- light: "#4dadce",
10735
- dark: "#1172a3",
11043
+ 50: "#E6F3F8",
11044
+ 100: "#C0E2EE",
11045
+ 200: "#96CFE2",
11046
+ 300: "#6CBCD6",
11047
+ light: "#4DADCE",
11048
+ main: "#2D9FC5",
11049
+ 600: "#2897BF",
11050
+ 700: "#228DB8",
11051
+ 800: "#1C83B0",
11052
+ dark: "#1172A3",
11053
+ A100: "#D4EFFF",
11054
+ A200: "#A1DCFF",
11055
+ A400: "#6ECAFF",
11056
+ A700: "#54C1FF",
10736
11057
  contrastText: "#ffffff"
10737
11058
  },
10738
11059
  success: {
10739
- main: "#8fc93a",
10740
- dark: "#60a918",
10741
- light: "#a0d158",
11060
+ 50: "#F2F9E7",
11061
+ 100: "#DDEFC4",
11062
+ 200: "#C7E49D",
11063
+ 300: "#B1D975",
11064
+ light: "#A0D158",
11065
+ main: "#8FC93A",
11066
+ 600: "#87C334",
11067
+ 700: "#7CBC2C",
11068
+ 800: "#72B525",
11069
+ dark: "#60A918",
11070
+ A100: "#EDFFDE",
11071
+ A200: "#D2FFAB",
11072
+ A400: "#B6FF78",
11073
+ A700: "#A9FF5E",
10742
11074
  contrastText: "#ffffff"
10743
11075
  },
10744
11076
  grey: {
@@ -10757,6 +11089,11 @@ const palette = {
10757
11089
  A400: "#696F8C",
10758
11090
  A700: "#101840"
10759
11091
  },
11092
+ text: {
11093
+ primary: "#101840de",
11094
+ secondary: "#10184099",
11095
+ disabled: "#10184061"
11096
+ },
10760
11097
  action: {
10761
11098
  active: "rgba(16, 24, 64, 0.54)",
10762
11099
  hover: "rgba(16, 24, 64, 0.04)",
@@ -10797,8 +11134,18 @@ const mixins = {
10797
11134
 
10798
11135
  const typography = {
10799
11136
  fontSize: 13,
11137
+ body3: {
11138
+ fontFamily: 'Roboto',
11139
+ fontWeight: 310,
11140
+ fontSize: 12,
11141
+ letterSpacing: 0.17,
11142
+ lineHeight: 1.2,
11143
+ [breakpoints.down('md')]: {
11144
+ fontSize: 11
11145
+ }
11146
+ },
10800
11147
  body1: {
10801
- fontFamily: "Roboto",
11148
+ fontFamily: 'Roboto',
10802
11149
  fontSize: 14,
10803
11150
  fontWeight: 400,
10804
11151
  letterSpacing: 0.15,
@@ -10808,7 +11155,7 @@ const typography = {
10808
11155
  }
10809
11156
  },
10810
11157
  body2: {
10811
- fontFamily: "Roboto",
11158
+ fontFamily: 'Roboto',
10812
11159
  fontSize: 13,
10813
11160
  fontWeight: 400,
10814
11161
  letterSpacing: 0.17,
@@ -10818,7 +11165,7 @@ const typography = {
10818
11165
  }
10819
11166
  },
10820
11167
  subtitle1: {
10821
- fontFamily: "Roboto",
11168
+ fontFamily: 'Roboto',
10822
11169
  fontSize: 14,
10823
11170
  fontWeight: 500,
10824
11171
  letterSpacing: 0.15,
@@ -10828,7 +11175,7 @@ const typography = {
10828
11175
  }
10829
11176
  },
10830
11177
  subtitle2: {
10831
- fontFamily: "Roboto",
11178
+ fontFamily: 'Roboto',
10832
11179
  fontSize: 13,
10833
11180
  fontWeight: 500,
10834
11181
  letterSpacing: 0.1,
@@ -10838,7 +11185,7 @@ const typography = {
10838
11185
  }
10839
11186
  },
10840
11187
  caption: {
10841
- fontFamily: "Roboto",
11188
+ fontFamily: 'Roboto',
10842
11189
  fontSize: 11,
10843
11190
  fontWeight: 400,
10844
11191
  letterSpacing: 0.4,
@@ -10848,7 +11195,7 @@ const typography = {
10848
11195
  }
10849
11196
  },
10850
11197
  overline: {
10851
- fontFamily: "Roboto",
11198
+ fontFamily: 'Roboto',
10852
11199
  fontSize: 11,
10853
11200
  fontWeight: 400,
10854
11201
  letterSpacing: 1,
@@ -10858,7 +11205,7 @@ const typography = {
10858
11205
  }
10859
11206
  },
10860
11207
  h6: {
10861
- fontFamily: "Nunito",
11208
+ fontFamily: 'Nunito',
10862
11209
  fontSize: 16,
10863
11210
  fontWeight: 600,
10864
11211
  lineHeight: 1.6,
@@ -10867,44 +11214,44 @@ const typography = {
10867
11214
  }
10868
11215
  },
10869
11216
  h5: {
10870
- fontFamily: "Nunito",
11217
+ fontFamily: 'Nunito',
10871
11218
  fontSize: 18,
10872
11219
  fontWeight: 600,
10873
11220
  lineHeight: 1.8
10874
11221
  },
10875
11222
  h4: {
10876
- fontFamily: "Nunito",
11223
+ fontFamily: 'Nunito',
10877
11224
  fontSize: 20,
10878
11225
  fontWeight: 600,
10879
11226
  letterSpacing: 0.25,
10880
11227
  lineHeight: 1
10881
11228
  },
10882
11229
  h3: {
10883
- fontFamily: "Nunito",
11230
+ fontFamily: 'Nunito',
10884
11231
  fontSize: 28,
10885
11232
  fontWeight: 500,
10886
11233
  lineHeight: 1.2
10887
11234
  },
10888
11235
  h2: {
10889
- fontFamily: "Nunito",
11236
+ fontFamily: 'Nunito',
10890
11237
  fontSize: 32,
10891
11238
  fontWeight: 400,
10892
11239
  letterSpacing: -0.5,
10893
11240
  lineHeight: 1.2
10894
11241
  },
10895
11242
  h1: {
10896
- fontFamily: "Nunito",
11243
+ fontFamily: 'Nunito',
10897
11244
  fontSize: 40,
10898
11245
  fontWeight: 300,
10899
11246
  letterSpacing: -1.5,
10900
11247
  lineHeight: 1.4
10901
11248
  },
10902
11249
  button: {
10903
- fontFamily: "Roboto",
10904
- textTransform: "unset",
11250
+ fontFamily: 'Roboto',
11251
+ textTransform: 'unset',
10905
11252
  fontWeightLight: 300,
10906
11253
  fontSize: 13,
10907
- lineHeight: "normal",
11254
+ lineHeight: 'normal',
10908
11255
  '@media(max-width: 885px)': {
10909
11256
  fontSize: 14
10910
11257
  }
@@ -12438,8 +12785,8 @@ function getPaperUtilityClass(slot) {
12438
12785
  }
12439
12786
  generateUtilityClasses('MuiPaper', ['root', 'rounded', 'outlined', 'elevation', 'elevation0', 'elevation1', 'elevation2', 'elevation3', 'elevation4', 'elevation5', 'elevation6', 'elevation7', 'elevation8', 'elevation9', 'elevation10', 'elevation11', 'elevation12', 'elevation13', 'elevation14', 'elevation15', 'elevation16', 'elevation17', 'elevation18', 'elevation19', 'elevation20', 'elevation21', 'elevation22', 'elevation23', 'elevation24']);
12440
12787
 
12441
- const _excluded$b = ["className", "component", "elevation", "square", "variant"];
12442
- const useUtilityClasses$7 = ownerState => {
12788
+ const _excluded$h = ["className", "component", "elevation", "square", "variant"];
12789
+ const useUtilityClasses$c = ownerState => {
12443
12790
  const {
12444
12791
  square,
12445
12792
  elevation,
@@ -12493,14 +12840,14 @@ const Paper = /*#__PURE__*/React.forwardRef(function Paper(inProps, ref) {
12493
12840
  square = false,
12494
12841
  variant = 'elevation'
12495
12842
  } = props,
12496
- other = _objectWithoutPropertiesLoose(props, _excluded$b);
12843
+ other = _objectWithoutPropertiesLoose(props, _excluded$h);
12497
12844
  const ownerState = _extends({}, props, {
12498
12845
  component,
12499
12846
  elevation,
12500
12847
  square,
12501
12848
  variant
12502
12849
  });
12503
- const classes = useUtilityClasses$7(ownerState);
12850
+ const classes = useUtilityClasses$c(ownerState);
12504
12851
  if (process.env.NODE_ENV !== 'production') {
12505
12852
  // eslint-disable-next-line react-hooks/rules-of-hooks
12506
12853
  const theme = useTheme();
@@ -12651,15 +12998,15 @@ process.env.NODE_ENV !== "production" ? Ripple.propTypes = {
12651
12998
  const touchRippleClasses = generateUtilityClasses('MuiTouchRipple', ['root', 'ripple', 'rippleVisible', 'ripplePulsate', 'child', 'childLeaving', 'childPulsate']);
12652
12999
  var touchRippleClasses$1 = touchRippleClasses;
12653
13000
 
12654
- const _excluded$a = ["center", "classes", "className"];
12655
- let _ = t => t,
12656
- _t,
12657
- _t2,
12658
- _t3,
12659
- _t4;
13001
+ const _excluded$g = ["center", "classes", "className"];
13002
+ let _$1 = t => t,
13003
+ _t$1,
13004
+ _t2$1,
13005
+ _t3$1,
13006
+ _t4$1;
12660
13007
  const DURATION = 550;
12661
13008
  const DELAY_RIPPLE = 80;
12662
- const enterKeyframe = keyframes(_t || (_t = _`
13009
+ const enterKeyframe = keyframes(_t$1 || (_t$1 = _$1`
12663
13010
  0% {
12664
13011
  transform: scale(0);
12665
13012
  opacity: 0.1;
@@ -12670,7 +13017,7 @@ const enterKeyframe = keyframes(_t || (_t = _`
12670
13017
  opacity: 0.3;
12671
13018
  }
12672
13019
  `));
12673
- const exitKeyframe = keyframes(_t2 || (_t2 = _`
13020
+ const exitKeyframe = keyframes(_t2$1 || (_t2$1 = _$1`
12674
13021
  0% {
12675
13022
  opacity: 1;
12676
13023
  }
@@ -12679,7 +13026,7 @@ const exitKeyframe = keyframes(_t2 || (_t2 = _`
12679
13026
  opacity: 0;
12680
13027
  }
12681
13028
  `));
12682
- const pulsateKeyframe = keyframes(_t3 || (_t3 = _`
13029
+ const pulsateKeyframe = keyframes(_t3$1 || (_t3$1 = _$1`
12683
13030
  0% {
12684
13031
  transform: scale(1);
12685
13032
  }
@@ -12712,7 +13059,7 @@ const TouchRippleRoot = styled$1('span', {
12712
13059
  const TouchRippleRipple = styled$1(Ripple, {
12713
13060
  name: 'MuiTouchRipple',
12714
13061
  slot: 'Ripple'
12715
- })(_t4 || (_t4 = _`
13062
+ })(_t4$1 || (_t4$1 = _$1`
12716
13063
  opacity: 0;
12717
13064
  position: absolute;
12718
13065
 
@@ -12780,7 +13127,7 @@ const TouchRipple = /*#__PURE__*/React.forwardRef(function TouchRipple(inProps,
12780
13127
  classes = {},
12781
13128
  className
12782
13129
  } = props,
12783
- other = _objectWithoutPropertiesLoose(props, _excluded$a);
13130
+ other = _objectWithoutPropertiesLoose(props, _excluded$g);
12784
13131
  const [ripples, setRipples] = React.useState([]);
12785
13132
  const nextKey = React.useRef(0);
12786
13133
  const rippleCallback = React.useRef(null);
@@ -12981,8 +13328,8 @@ function getButtonBaseUtilityClass(slot) {
12981
13328
  const buttonBaseClasses = generateUtilityClasses('MuiButtonBase', ['root', 'disabled', 'focusVisible']);
12982
13329
  var buttonBaseClasses$1 = buttonBaseClasses;
12983
13330
 
12984
- const _excluded$9 = ["action", "centerRipple", "children", "className", "component", "disabled", "disableRipple", "disableTouchRipple", "focusRipple", "focusVisibleClassName", "LinkComponent", "onBlur", "onClick", "onContextMenu", "onDragLeave", "onFocus", "onFocusVisible", "onKeyDown", "onKeyUp", "onMouseDown", "onMouseLeave", "onMouseUp", "onTouchEnd", "onTouchMove", "onTouchStart", "tabIndex", "TouchRippleProps", "touchRippleRef", "type"];
12985
- const useUtilityClasses$6 = ownerState => {
13331
+ const _excluded$f = ["action", "centerRipple", "children", "className", "component", "disabled", "disableRipple", "disableTouchRipple", "focusRipple", "focusVisibleClassName", "LinkComponent", "onBlur", "onClick", "onContextMenu", "onDragLeave", "onFocus", "onFocusVisible", "onKeyDown", "onKeyUp", "onMouseDown", "onMouseLeave", "onMouseUp", "onTouchEnd", "onTouchMove", "onTouchStart", "tabIndex", "TouchRippleProps", "touchRippleRef", "type"];
13332
+ const useUtilityClasses$b = ownerState => {
12986
13333
  const {
12987
13334
  disabled,
12988
13335
  focusVisible,
@@ -13083,7 +13430,7 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
13083
13430
  touchRippleRef,
13084
13431
  type
13085
13432
  } = props,
13086
- other = _objectWithoutPropertiesLoose(props, _excluded$9);
13433
+ other = _objectWithoutPropertiesLoose(props, _excluded$f);
13087
13434
  const buttonRef = React.useRef(null);
13088
13435
  const rippleRef = React.useRef(null);
13089
13436
  const handleRippleRef = useForkRef(rippleRef, touchRippleRef);
@@ -13250,7 +13597,7 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
13250
13597
  tabIndex,
13251
13598
  focusVisible
13252
13599
  });
13253
- const classes = useUtilityClasses$6(ownerState);
13600
+ const classes = useUtilityClasses$b(ownerState);
13254
13601
  return /*#__PURE__*/jsxs(ButtonBaseRoot, _extends({
13255
13602
  as: ComponentProp,
13256
13603
  className: clsx(classes.root, className),
@@ -13447,8 +13794,8 @@ function getIconButtonUtilityClass(slot) {
13447
13794
  const iconButtonClasses = generateUtilityClasses('MuiIconButton', ['root', 'disabled', 'colorInherit', 'colorPrimary', 'colorSecondary', 'colorError', 'colorInfo', 'colorSuccess', 'colorWarning', 'edgeStart', 'edgeEnd', 'sizeSmall', 'sizeMedium', 'sizeLarge']);
13448
13795
  var iconButtonClasses$1 = iconButtonClasses;
13449
13796
 
13450
- const _excluded$8 = ["edge", "children", "className", "color", "disabled", "disableFocusRipple", "size"];
13451
- const useUtilityClasses$5 = ownerState => {
13797
+ const _excluded$e = ["edge", "children", "className", "color", "disabled", "disableFocusRipple", "size"];
13798
+ const useUtilityClasses$a = ownerState => {
13452
13799
  const {
13453
13800
  classes,
13454
13801
  disabled,
@@ -13548,7 +13895,7 @@ const IconButton = /*#__PURE__*/React.forwardRef(function IconButton(inProps, re
13548
13895
  disableFocusRipple = false,
13549
13896
  size = 'medium'
13550
13897
  } = props,
13551
- other = _objectWithoutPropertiesLoose(props, _excluded$8);
13898
+ other = _objectWithoutPropertiesLoose(props, _excluded$e);
13552
13899
  const ownerState = _extends({}, props, {
13553
13900
  edge,
13554
13901
  color,
@@ -13556,7 +13903,7 @@ const IconButton = /*#__PURE__*/React.forwardRef(function IconButton(inProps, re
13556
13903
  disableFocusRipple,
13557
13904
  size
13558
13905
  });
13559
- const classes = useUtilityClasses$5(ownerState);
13906
+ const classes = useUtilityClasses$a(ownerState);
13560
13907
  return /*#__PURE__*/jsx(IconButtonRoot, _extends({
13561
13908
  className: clsx(classes.root, className),
13562
13909
  centerRipple: true,
@@ -13642,8 +13989,8 @@ function getTypographyUtilityClass(slot) {
13642
13989
  }
13643
13990
  generateUtilityClasses('MuiTypography', ['root', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'subtitle1', 'subtitle2', 'body1', 'body2', 'inherit', 'button', 'caption', 'overline', 'alignLeft', 'alignRight', 'alignCenter', 'alignJustify', 'noWrap', 'gutterBottom', 'paragraph']);
13644
13991
 
13645
- const _excluded$7 = ["align", "className", "component", "gutterBottom", "noWrap", "paragraph", "variant", "variantMapping"];
13646
- const useUtilityClasses$4 = ownerState => {
13992
+ const _excluded$d = ["align", "className", "component", "gutterBottom", "noWrap", "paragraph", "variant", "variantMapping"];
13993
+ const useUtilityClasses$9 = ownerState => {
13647
13994
  const {
13648
13995
  align,
13649
13996
  gutterBottom,
@@ -13697,22 +14044,22 @@ const defaultVariantMapping = {
13697
14044
  };
13698
14045
 
13699
14046
  // TODO v6: deprecate these color values in v5.x and remove the transformation in v6
13700
- const colorTransformations = {
14047
+ const colorTransformations$1 = {
13701
14048
  primary: 'primary.main',
13702
14049
  textPrimary: 'text.primary',
13703
14050
  secondary: 'secondary.main',
13704
14051
  textSecondary: 'text.secondary',
13705
14052
  error: 'error.main'
13706
14053
  };
13707
- const transformDeprecatedColors = color => {
13708
- return colorTransformations[color] || color;
14054
+ const transformDeprecatedColors$1 = color => {
14055
+ return colorTransformations$1[color] || color;
13709
14056
  };
13710
14057
  const Typography = /*#__PURE__*/React.forwardRef(function Typography(inProps, ref) {
13711
14058
  const themeProps = useThemeProps({
13712
14059
  props: inProps,
13713
14060
  name: 'MuiTypography'
13714
14061
  });
13715
- const color = transformDeprecatedColors(themeProps.color);
14062
+ const color = transformDeprecatedColors$1(themeProps.color);
13716
14063
  const props = extendSxProp(_extends({}, themeProps, {
13717
14064
  color
13718
14065
  }));
@@ -13726,7 +14073,7 @@ const Typography = /*#__PURE__*/React.forwardRef(function Typography(inProps, re
13726
14073
  variant = 'body1',
13727
14074
  variantMapping = defaultVariantMapping
13728
14075
  } = props,
13729
- other = _objectWithoutPropertiesLoose(props, _excluded$7);
14076
+ other = _objectWithoutPropertiesLoose(props, _excluded$d);
13730
14077
  const ownerState = _extends({}, props, {
13731
14078
  align,
13732
14079
  color,
@@ -13739,7 +14086,7 @@ const Typography = /*#__PURE__*/React.forwardRef(function Typography(inProps, re
13739
14086
  variantMapping
13740
14087
  });
13741
14088
  const Component = component || (paragraph ? 'p' : variantMapping[variant] || defaultVariantMapping[variant]) || 'span';
13742
- const classes = useUtilityClasses$4(ownerState);
14089
+ const classes = useUtilityClasses$9(ownerState);
13743
14090
  return /*#__PURE__*/jsx(TypographyRoot, _extends({
13744
14091
  as: Component,
13745
14092
  ref: ref,
@@ -13824,7 +14171,7 @@ process.env.NODE_ENV !== "production" ? Typography.propTypes /* remove-proptypes
13824
14171
  } : void 0;
13825
14172
  var Typography$1 = Typography;
13826
14173
 
13827
- const _excluded$6 = ["addEndListener", "appear", "children", "easing", "in", "onEnter", "onEntered", "onEntering", "onExit", "onExited", "onExiting", "style", "timeout", "TransitionComponent"];
14174
+ const _excluded$c = ["addEndListener", "appear", "children", "easing", "in", "onEnter", "onEntered", "onEntering", "onExit", "onExited", "onExiting", "style", "timeout", "TransitionComponent"];
13828
14175
  const styles = {
13829
14176
  entering: {
13830
14177
  opacity: 1
@@ -13861,7 +14208,7 @@ const Fade = /*#__PURE__*/React.forwardRef(function Fade(props, ref) {
13861
14208
  // eslint-disable-next-line react/prop-types
13862
14209
  TransitionComponent = Transition$1
13863
14210
  } = props,
13864
- other = _objectWithoutPropertiesLoose(props, _excluded$6);
14211
+ other = _objectWithoutPropertiesLoose(props, _excluded$c);
13865
14212
  const nodeRef = React.useRef(null);
13866
14213
  const handleRef = useForkRef(nodeRef, children.ref, ref);
13867
14214
  const normalizedTransitionCallback = callback => maybeIsAppearing => {
@@ -14022,8 +14369,8 @@ function getBackdropUtilityClass(slot) {
14022
14369
  }
14023
14370
  generateUtilityClasses('MuiBackdrop', ['root', 'invisible']);
14024
14371
 
14025
- const _excluded$5 = ["children", "className", "component", "components", "componentsProps", "invisible", "open", "slotProps", "slots", "TransitionComponent", "transitionDuration"];
14026
- const useUtilityClasses$3 = ownerState => {
14372
+ const _excluded$b = ["children", "className", "component", "components", "componentsProps", "invisible", "open", "slotProps", "slots", "TransitionComponent", "transitionDuration"];
14373
+ const useUtilityClasses$8 = ownerState => {
14027
14374
  const {
14028
14375
  classes,
14029
14376
  invisible
@@ -14077,12 +14424,12 @@ const Backdrop = /*#__PURE__*/React.forwardRef(function Backdrop(inProps, ref) {
14077
14424
  TransitionComponent = Fade$1,
14078
14425
  transitionDuration
14079
14426
  } = props,
14080
- other = _objectWithoutPropertiesLoose(props, _excluded$5);
14427
+ other = _objectWithoutPropertiesLoose(props, _excluded$b);
14081
14428
  const ownerState = _extends({}, props, {
14082
14429
  component,
14083
14430
  invisible
14084
14431
  });
14085
- const classes = useUtilityClasses$3(ownerState);
14432
+ const classes = useUtilityClasses$8(ownerState);
14086
14433
  const rootSlotProps = (_slotProps$root = slotProps.root) != null ? _slotProps$root : componentsProps.root;
14087
14434
  return /*#__PURE__*/jsx(TransitionComponent, _extends({
14088
14435
  in: open,
@@ -14226,52 +14573,247 @@ process.env.NODE_ENV !== "production" ? Box$1.propTypes /* remove-proptypes */ =
14226
14573
  } : void 0;
14227
14574
  var Box$2 = Box$1;
14228
14575
 
14229
- function getCardUtilityClass(slot) {
14230
- return generateUtilityClass('MuiCard', slot);
14576
+ var MoreHorizIcon = createSvgIcon$1( /*#__PURE__*/jsx("path", {
14577
+ d: "M6 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm12 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm-6 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"
14578
+ }), 'MoreHoriz');
14579
+
14580
+ const _excluded$a = ["slots", "slotProps"];
14581
+ const BreadcrumbCollapsedButton = styled$1(ButtonBase$1)(({
14582
+ theme
14583
+ }) => _extends({
14584
+ display: 'flex',
14585
+ marginLeft: `calc(${theme.spacing(1)} * 0.5)`,
14586
+ marginRight: `calc(${theme.spacing(1)} * 0.5)`
14587
+ }, theme.palette.mode === 'light' ? {
14588
+ backgroundColor: theme.palette.grey[100],
14589
+ color: theme.palette.grey[700]
14590
+ } : {
14591
+ backgroundColor: theme.palette.grey[700],
14592
+ color: theme.palette.grey[100]
14593
+ }, {
14594
+ borderRadius: 2,
14595
+ '&:hover, &:focus': _extends({}, theme.palette.mode === 'light' ? {
14596
+ backgroundColor: theme.palette.grey[200]
14597
+ } : {
14598
+ backgroundColor: theme.palette.grey[600]
14599
+ }),
14600
+ '&:active': _extends({
14601
+ boxShadow: theme.shadows[0]
14602
+ }, theme.palette.mode === 'light' ? {
14603
+ backgroundColor: emphasize(theme.palette.grey[200], 0.12)
14604
+ } : {
14605
+ backgroundColor: emphasize(theme.palette.grey[600], 0.12)
14606
+ })
14607
+ }));
14608
+ const BreadcrumbCollapsedIcon = styled$1(MoreHorizIcon)({
14609
+ width: 24,
14610
+ height: 16
14611
+ });
14612
+
14613
+ /**
14614
+ * @ignore - internal component.
14615
+ */
14616
+ function BreadcrumbCollapsed(props) {
14617
+ const {
14618
+ slots = {},
14619
+ slotProps = {}
14620
+ } = props,
14621
+ otherProps = _objectWithoutPropertiesLoose(props, _excluded$a);
14622
+ const ownerState = props;
14623
+ return /*#__PURE__*/jsx("li", {
14624
+ children: /*#__PURE__*/jsx(BreadcrumbCollapsedButton, _extends({
14625
+ focusRipple: true
14626
+ }, otherProps, {
14627
+ ownerState: ownerState,
14628
+ children: /*#__PURE__*/jsx(BreadcrumbCollapsedIcon, _extends({
14629
+ as: slots.CollapsedIcon,
14630
+ ownerState: ownerState
14631
+ }, slotProps.collapsedIcon))
14632
+ }))
14633
+ });
14231
14634
  }
14232
- generateUtilityClasses('MuiCard', ['root']);
14635
+ process.env.NODE_ENV !== "production" ? BreadcrumbCollapsed.propTypes = {
14636
+ /**
14637
+ * The props used for the CollapsedIcon slot.
14638
+ * @default {}
14639
+ */
14640
+ slotProps: PropTypes.shape({
14641
+ collapsedIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.object])
14642
+ }),
14643
+ /**
14644
+ * The components used for each slot inside the BreadcumbCollapsed.
14645
+ * Either a string to use a HTML element or a component.
14646
+ * @default {}
14647
+ */
14648
+ slots: PropTypes.shape({
14649
+ CollapsedIcon: PropTypes.elementType
14650
+ }),
14651
+ /**
14652
+ * The system prop that allows defining system overrides as well as additional CSS styles.
14653
+ */
14654
+ sx: PropTypes.object
14655
+ } : void 0;
14233
14656
 
14234
- const _excluded$4 = ["className", "raised"];
14235
- const useUtilityClasses$2 = ownerState => {
14657
+ function getBreadcrumbsUtilityClass(slot) {
14658
+ return generateUtilityClass('MuiBreadcrumbs', slot);
14659
+ }
14660
+ const breadcrumbsClasses = generateUtilityClasses('MuiBreadcrumbs', ['root', 'ol', 'li', 'separator']);
14661
+ var breadcrumbsClasses$1 = breadcrumbsClasses;
14662
+
14663
+ const _excluded$9 = ["children", "className", "component", "slots", "slotProps", "expandText", "itemsAfterCollapse", "itemsBeforeCollapse", "maxItems", "separator"];
14664
+ const useUtilityClasses$7 = ownerState => {
14236
14665
  const {
14237
14666
  classes
14238
14667
  } = ownerState;
14239
14668
  const slots = {
14240
- root: ['root']
14669
+ root: ['root'],
14670
+ li: ['li'],
14671
+ ol: ['ol'],
14672
+ separator: ['separator']
14241
14673
  };
14242
- return composeClasses(slots, getCardUtilityClass, classes);
14674
+ return composeClasses(slots, getBreadcrumbsUtilityClass, classes);
14243
14675
  };
14244
- const CardRoot = styled$1(Paper$1, {
14245
- name: 'MuiCard',
14676
+ const BreadcrumbsRoot = styled$1(Typography$1, {
14677
+ name: 'MuiBreadcrumbs',
14246
14678
  slot: 'Root',
14247
- overridesResolver: (props, styles) => styles.root
14248
- })(() => {
14249
- return {
14250
- overflow: 'hidden'
14251
- };
14679
+ overridesResolver: (props, styles) => {
14680
+ return [{
14681
+ [`& .${breadcrumbsClasses$1.li}`]: styles.li
14682
+ }, styles.root];
14683
+ }
14684
+ })({});
14685
+ const BreadcrumbsOl = styled$1('ol', {
14686
+ name: 'MuiBreadcrumbs',
14687
+ slot: 'Ol',
14688
+ overridesResolver: (props, styles) => styles.ol
14689
+ })({
14690
+ display: 'flex',
14691
+ flexWrap: 'wrap',
14692
+ alignItems: 'center',
14693
+ padding: 0,
14694
+ margin: 0,
14695
+ listStyle: 'none'
14252
14696
  });
14253
- const Card = /*#__PURE__*/React.forwardRef(function Card(inProps, ref) {
14697
+ const BreadcrumbsSeparator = styled$1('li', {
14698
+ name: 'MuiBreadcrumbs',
14699
+ slot: 'Separator',
14700
+ overridesResolver: (props, styles) => styles.separator
14701
+ })({
14702
+ display: 'flex',
14703
+ userSelect: 'none',
14704
+ marginLeft: 8,
14705
+ marginRight: 8
14706
+ });
14707
+ function insertSeparators(items, className, separator, ownerState) {
14708
+ return items.reduce((acc, current, index) => {
14709
+ if (index < items.length - 1) {
14710
+ acc = acc.concat(current, /*#__PURE__*/jsx(BreadcrumbsSeparator, {
14711
+ "aria-hidden": true,
14712
+ className: className,
14713
+ ownerState: ownerState,
14714
+ children: separator
14715
+ }, `separator-${index}`));
14716
+ } else {
14717
+ acc.push(current);
14718
+ }
14719
+ return acc;
14720
+ }, []);
14721
+ }
14722
+ const Breadcrumbs = /*#__PURE__*/React.forwardRef(function Breadcrumbs(inProps, ref) {
14254
14723
  const props = useThemeProps({
14255
14724
  props: inProps,
14256
- name: 'MuiCard'
14725
+ name: 'MuiBreadcrumbs'
14257
14726
  });
14258
14727
  const {
14728
+ children,
14259
14729
  className,
14260
- raised = false
14730
+ component = 'nav',
14731
+ slots = {},
14732
+ slotProps = {},
14733
+ expandText = 'Show path',
14734
+ itemsAfterCollapse = 1,
14735
+ itemsBeforeCollapse = 1,
14736
+ maxItems = 8,
14737
+ separator = '/'
14261
14738
  } = props,
14262
- other = _objectWithoutPropertiesLoose(props, _excluded$4);
14739
+ other = _objectWithoutPropertiesLoose(props, _excluded$9);
14740
+ const [expanded, setExpanded] = React.useState(false);
14263
14741
  const ownerState = _extends({}, props, {
14264
- raised
14742
+ component,
14743
+ expanded,
14744
+ expandText,
14745
+ itemsAfterCollapse,
14746
+ itemsBeforeCollapse,
14747
+ maxItems,
14748
+ separator
14265
14749
  });
14266
- const classes = useUtilityClasses$2(ownerState);
14267
- return /*#__PURE__*/jsx(CardRoot, _extends({
14268
- className: clsx(classes.root, className),
14269
- elevation: raised ? 8 : undefined,
14750
+ const classes = useUtilityClasses$7(ownerState);
14751
+ const collapsedIconSlotProps = useSlotProps({
14752
+ elementType: slots.CollapsedIcon,
14753
+ externalSlotProps: slotProps.collapsedIcon,
14754
+ ownerState
14755
+ });
14756
+ const listRef = React.useRef(null);
14757
+ const renderItemsBeforeAndAfter = allItems => {
14758
+ const handleClickExpand = () => {
14759
+ setExpanded(true);
14760
+
14761
+ // The clicked element received the focus but gets removed from the DOM.
14762
+ // Let's keep the focus in the component after expanding.
14763
+ // Moving it to the <ol> or <nav> does not cause any announcement in NVDA.
14764
+ // By moving it to some link/button at least we have some announcement.
14765
+ const focusable = listRef.current.querySelector('a[href],button,[tabindex]');
14766
+ if (focusable) {
14767
+ focusable.focus();
14768
+ }
14769
+ };
14770
+
14771
+ // This defends against someone passing weird input, to ensure that if all
14772
+ // items would be shown anyway, we just show all items without the EllipsisItem
14773
+ if (itemsBeforeCollapse + itemsAfterCollapse >= allItems.length) {
14774
+ if (process.env.NODE_ENV !== 'production') {
14775
+ console.error(['MUI: You have provided an invalid combination of props to the Breadcrumbs.', `itemsAfterCollapse={${itemsAfterCollapse}} + itemsBeforeCollapse={${itemsBeforeCollapse}} >= maxItems={${maxItems}}`].join('\n'));
14776
+ }
14777
+ return allItems;
14778
+ }
14779
+ return [...allItems.slice(0, itemsBeforeCollapse), /*#__PURE__*/jsx(BreadcrumbCollapsed, {
14780
+ "aria-label": expandText,
14781
+ slots: {
14782
+ CollapsedIcon: slots.CollapsedIcon
14783
+ },
14784
+ slotProps: {
14785
+ collapsedIcon: collapsedIconSlotProps
14786
+ },
14787
+ onClick: handleClickExpand
14788
+ }, "ellipsis"), ...allItems.slice(allItems.length - itemsAfterCollapse, allItems.length)];
14789
+ };
14790
+ const allItems = React.Children.toArray(children).filter(child => {
14791
+ if (process.env.NODE_ENV !== 'production') {
14792
+ if (reactIs$2.exports.isFragment(child)) {
14793
+ console.error(["MUI: The Breadcrumbs component doesn't accept a Fragment as a child.", 'Consider providing an array instead.'].join('\n'));
14794
+ }
14795
+ }
14796
+ return /*#__PURE__*/React.isValidElement(child);
14797
+ }).map((child, index) => /*#__PURE__*/jsx("li", {
14798
+ className: classes.li,
14799
+ children: child
14800
+ }, `child-${index}`));
14801
+ return /*#__PURE__*/jsx(BreadcrumbsRoot, _extends({
14270
14802
  ref: ref,
14803
+ component: component,
14804
+ color: "text.secondary",
14805
+ className: clsx(classes.root, className),
14271
14806
  ownerState: ownerState
14272
- }, other));
14807
+ }, other, {
14808
+ children: /*#__PURE__*/jsx(BreadcrumbsOl, {
14809
+ className: classes.ol,
14810
+ ref: listRef,
14811
+ ownerState: ownerState,
14812
+ children: insertSeparators(expanded || maxItems && allItems.length <= maxItems ? allItems : renderItemsBeforeAndAfter(allItems), classes.separator, separator, ownerState)
14813
+ })
14814
+ }));
14273
14815
  });
14274
- process.env.NODE_ENV !== "production" ? Card.propTypes /* remove-proptypes */ = {
14816
+ process.env.NODE_ENV !== "production" ? Breadcrumbs.propTypes /* remove-proptypes */ = {
14275
14817
  // ----------------------------- Warning --------------------------------
14276
14818
  // | These PropTypes are generated from the TypeScript type definitions |
14277
14819
  // | To update them edit the d.ts file and run "yarn proptypes" |
@@ -14289,71 +14831,340 @@ process.env.NODE_ENV !== "production" ? Card.propTypes /* remove-proptypes */ =
14289
14831
  */
14290
14832
  className: PropTypes.string,
14291
14833
  /**
14292
- * If `true`, the card will use raised styling.
14293
- * @default false
14834
+ * The component used for the root node.
14835
+ * Either a string to use a HTML element or a component.
14294
14836
  */
14295
- raised: chainPropTypes(PropTypes.bool, props => {
14296
- if (props.raised && props.variant === 'outlined') {
14297
- return new Error('MUI: Combining `raised={true}` with `variant="outlined"` has no effect.');
14298
- }
14299
- return null;
14837
+ component: PropTypes.elementType,
14838
+ /**
14839
+ * Override the default label for the expand button.
14840
+ *
14841
+ * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).
14842
+ * @default 'Show path'
14843
+ */
14844
+ expandText: PropTypes.string,
14845
+ /**
14846
+ * If max items is exceeded, the number of items to show after the ellipsis.
14847
+ * @default 1
14848
+ */
14849
+ itemsAfterCollapse: integerPropType,
14850
+ /**
14851
+ * If max items is exceeded, the number of items to show before the ellipsis.
14852
+ * @default 1
14853
+ */
14854
+ itemsBeforeCollapse: integerPropType,
14855
+ /**
14856
+ * Specifies the maximum number of breadcrumbs to display. When there are more
14857
+ * than the maximum number, only the first `itemsBeforeCollapse` and last `itemsAfterCollapse`
14858
+ * will be shown, with an ellipsis in between.
14859
+ * @default 8
14860
+ */
14861
+ maxItems: integerPropType,
14862
+ /**
14863
+ * Custom separator node.
14864
+ * @default '/'
14865
+ */
14866
+ separator: PropTypes.node,
14867
+ /**
14868
+ * The props used for each slot inside the Breadcumb.
14869
+ * @default {}
14870
+ */
14871
+ slotProps: PropTypes.shape({
14872
+ collapsedIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.object])
14873
+ }),
14874
+ /**
14875
+ * The components used for each slot inside the Breadcumb.
14876
+ * Either a string to use a HTML element or a component.
14877
+ * @default {}
14878
+ */
14879
+ slots: PropTypes.shape({
14880
+ CollapsedIcon: PropTypes.elementType
14300
14881
  }),
14301
14882
  /**
14302
14883
  * The system prop that allows defining system overrides as well as additional CSS styles.
14303
14884
  */
14304
14885
  sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
14305
14886
  } : void 0;
14306
- var Card$1 = Card;
14887
+ var Breadcrumbs$1 = Breadcrumbs;
14307
14888
 
14308
- function getCardContentUtilityClass(slot) {
14309
- return generateUtilityClass('MuiCardContent', slot);
14889
+ function getButtonUtilityClass(slot) {
14890
+ return generateUtilityClass('MuiButton', slot);
14310
14891
  }
14311
- generateUtilityClasses('MuiCardContent', ['root']);
14892
+ const buttonClasses = generateUtilityClasses('MuiButton', ['root', 'text', 'textInherit', 'textPrimary', 'textSecondary', 'textSuccess', 'textError', 'textInfo', 'textWarning', 'outlined', 'outlinedInherit', 'outlinedPrimary', 'outlinedSecondary', 'outlinedSuccess', 'outlinedError', 'outlinedInfo', 'outlinedWarning', 'contained', 'containedInherit', 'containedPrimary', 'containedSecondary', 'containedSuccess', 'containedError', 'containedInfo', 'containedWarning', 'disableElevation', 'focusVisible', 'disabled', 'colorInherit', 'textSizeSmall', 'textSizeMedium', 'textSizeLarge', 'outlinedSizeSmall', 'outlinedSizeMedium', 'outlinedSizeLarge', 'containedSizeSmall', 'containedSizeMedium', 'containedSizeLarge', 'sizeMedium', 'sizeSmall', 'sizeLarge', 'fullWidth', 'startIcon', 'endIcon', 'iconSizeSmall', 'iconSizeMedium', 'iconSizeLarge']);
14893
+ var buttonClasses$1 = buttonClasses;
14312
14894
 
14313
- const _excluded$3 = ["className", "component"];
14314
- const useUtilityClasses$1 = ownerState => {
14895
+ /**
14896
+ * @ignore - internal component.
14897
+ */
14898
+ const ButtonGroupContext = /*#__PURE__*/React.createContext({});
14899
+ if (process.env.NODE_ENV !== 'production') {
14900
+ ButtonGroupContext.displayName = 'ButtonGroupContext';
14901
+ }
14902
+ var ButtonGroupContext$1 = ButtonGroupContext;
14903
+
14904
+ const _excluded$8 = ["children", "color", "component", "className", "disabled", "disableElevation", "disableFocusRipple", "endIcon", "focusVisibleClassName", "fullWidth", "size", "startIcon", "type", "variant"];
14905
+ const useUtilityClasses$6 = ownerState => {
14315
14906
  const {
14907
+ color,
14908
+ disableElevation,
14909
+ fullWidth,
14910
+ size,
14911
+ variant,
14316
14912
  classes
14317
14913
  } = ownerState;
14318
14914
  const slots = {
14319
- root: ['root']
14915
+ root: ['root', variant, `${variant}${capitalize(color)}`, `size${capitalize(size)}`, `${variant}Size${capitalize(size)}`, color === 'inherit' && 'colorInherit', disableElevation && 'disableElevation', fullWidth && 'fullWidth'],
14916
+ label: ['label'],
14917
+ startIcon: ['startIcon', `iconSize${capitalize(size)}`],
14918
+ endIcon: ['endIcon', `iconSize${capitalize(size)}`]
14320
14919
  };
14321
- return composeClasses(slots, getCardContentUtilityClass, classes);
14920
+ const composedClasses = composeClasses(slots, getButtonUtilityClass, classes);
14921
+ return _extends({}, classes, composedClasses);
14322
14922
  };
14323
- const CardContentRoot = styled$1('div', {
14324
- name: 'MuiCardContent',
14923
+ const commonIconStyles = ownerState => _extends({}, ownerState.size === 'small' && {
14924
+ '& > *:nth-of-type(1)': {
14925
+ fontSize: 18
14926
+ }
14927
+ }, ownerState.size === 'medium' && {
14928
+ '& > *:nth-of-type(1)': {
14929
+ fontSize: 20
14930
+ }
14931
+ }, ownerState.size === 'large' && {
14932
+ '& > *:nth-of-type(1)': {
14933
+ fontSize: 22
14934
+ }
14935
+ });
14936
+ const ButtonRoot = styled$1(ButtonBase$1, {
14937
+ shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',
14938
+ name: 'MuiButton',
14325
14939
  slot: 'Root',
14326
- overridesResolver: (props, styles) => styles.root
14327
- })(() => {
14328
- return {
14329
- padding: 16,
14330
- '&:last-child': {
14331
- paddingBottom: 24
14332
- }
14333
- };
14940
+ overridesResolver: (props, styles) => {
14941
+ const {
14942
+ ownerState
14943
+ } = props;
14944
+ return [styles.root, styles[ownerState.variant], styles[`${ownerState.variant}${capitalize(ownerState.color)}`], styles[`size${capitalize(ownerState.size)}`], styles[`${ownerState.variant}Size${capitalize(ownerState.size)}`], ownerState.color === 'inherit' && styles.colorInherit, ownerState.disableElevation && styles.disableElevation, ownerState.fullWidth && styles.fullWidth];
14945
+ }
14946
+ })(({
14947
+ theme,
14948
+ ownerState
14949
+ }) => {
14950
+ var _theme$palette$getCon, _theme$palette;
14951
+ const inheritContainedBackgroundColor = theme.palette.mode === 'light' ? theme.palette.grey[300] : theme.palette.grey[800];
14952
+ const inheritContainedHoverBackgroundColor = theme.palette.mode === 'light' ? theme.palette.grey.A100 : theme.palette.grey[700];
14953
+ return _extends({}, theme.typography.button, {
14954
+ minWidth: 64,
14955
+ padding: '6px 16px',
14956
+ borderRadius: (theme.vars || theme).shape.borderRadius,
14957
+ transition: theme.transitions.create(['background-color', 'box-shadow', 'border-color', 'color'], {
14958
+ duration: theme.transitions.duration.short
14959
+ }),
14960
+ '&:hover': _extends({
14961
+ textDecoration: 'none',
14962
+ backgroundColor: theme.vars ? `rgba(${theme.vars.palette.text.primaryChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette.text.primary, theme.palette.action.hoverOpacity),
14963
+ // Reset on touch devices, it doesn't add specificity
14964
+ '@media (hover: none)': {
14965
+ backgroundColor: 'transparent'
14966
+ }
14967
+ }, ownerState.variant === 'text' && ownerState.color !== 'inherit' && {
14968
+ backgroundColor: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity),
14969
+ // Reset on touch devices, it doesn't add specificity
14970
+ '@media (hover: none)': {
14971
+ backgroundColor: 'transparent'
14972
+ }
14973
+ }, ownerState.variant === 'outlined' && ownerState.color !== 'inherit' && {
14974
+ border: `1px solid ${(theme.vars || theme).palette[ownerState.color].main}`,
14975
+ backgroundColor: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity),
14976
+ // Reset on touch devices, it doesn't add specificity
14977
+ '@media (hover: none)': {
14978
+ backgroundColor: 'transparent'
14979
+ }
14980
+ }, ownerState.variant === 'contained' && {
14981
+ backgroundColor: theme.vars ? theme.vars.palette.Button.inheritContainedHoverBg : inheritContainedHoverBackgroundColor,
14982
+ boxShadow: (theme.vars || theme).shadows[4],
14983
+ // Reset on touch devices, it doesn't add specificity
14984
+ '@media (hover: none)': {
14985
+ boxShadow: (theme.vars || theme).shadows[2],
14986
+ backgroundColor: (theme.vars || theme).palette.grey[300]
14987
+ }
14988
+ }, ownerState.variant === 'contained' && ownerState.color !== 'inherit' && {
14989
+ backgroundColor: (theme.vars || theme).palette[ownerState.color].dark,
14990
+ // Reset on touch devices, it doesn't add specificity
14991
+ '@media (hover: none)': {
14992
+ backgroundColor: (theme.vars || theme).palette[ownerState.color].main
14993
+ }
14994
+ }),
14995
+ '&:active': _extends({}, ownerState.variant === 'contained' && {
14996
+ boxShadow: (theme.vars || theme).shadows[8]
14997
+ }),
14998
+ [`&.${buttonClasses$1.focusVisible}`]: _extends({}, ownerState.variant === 'contained' && {
14999
+ boxShadow: (theme.vars || theme).shadows[6]
15000
+ }),
15001
+ [`&.${buttonClasses$1.disabled}`]: _extends({
15002
+ color: (theme.vars || theme).palette.action.disabled
15003
+ }, ownerState.variant === 'outlined' && {
15004
+ border: `1px solid ${(theme.vars || theme).palette.action.disabledBackground}`
15005
+ }, ownerState.variant === 'contained' && {
15006
+ color: (theme.vars || theme).palette.action.disabled,
15007
+ boxShadow: (theme.vars || theme).shadows[0],
15008
+ backgroundColor: (theme.vars || theme).palette.action.disabledBackground
15009
+ })
15010
+ }, ownerState.variant === 'text' && {
15011
+ padding: '6px 8px'
15012
+ }, ownerState.variant === 'text' && ownerState.color !== 'inherit' && {
15013
+ color: (theme.vars || theme).palette[ownerState.color].main
15014
+ }, ownerState.variant === 'outlined' && {
15015
+ padding: '5px 15px',
15016
+ border: '1px solid currentColor'
15017
+ }, ownerState.variant === 'outlined' && ownerState.color !== 'inherit' && {
15018
+ color: (theme.vars || theme).palette[ownerState.color].main,
15019
+ border: theme.vars ? `1px solid rgba(${theme.vars.palette[ownerState.color].mainChannel} / 0.5)` : `1px solid ${alpha(theme.palette[ownerState.color].main, 0.5)}`
15020
+ }, ownerState.variant === 'contained' && {
15021
+ color: theme.vars ?
15022
+ // this is safe because grey does not change between default light/dark mode
15023
+ theme.vars.palette.text.primary : (_theme$palette$getCon = (_theme$palette = theme.palette).getContrastText) == null ? void 0 : _theme$palette$getCon.call(_theme$palette, theme.palette.grey[300]),
15024
+ backgroundColor: theme.vars ? theme.vars.palette.Button.inheritContainedBg : inheritContainedBackgroundColor,
15025
+ boxShadow: (theme.vars || theme).shadows[2]
15026
+ }, ownerState.variant === 'contained' && ownerState.color !== 'inherit' && {
15027
+ color: (theme.vars || theme).palette[ownerState.color].contrastText,
15028
+ backgroundColor: (theme.vars || theme).palette[ownerState.color].main
15029
+ }, ownerState.color === 'inherit' && {
15030
+ color: 'inherit',
15031
+ borderColor: 'currentColor'
15032
+ }, ownerState.size === 'small' && ownerState.variant === 'text' && {
15033
+ padding: '4px 5px',
15034
+ fontSize: theme.typography.pxToRem(13)
15035
+ }, ownerState.size === 'large' && ownerState.variant === 'text' && {
15036
+ padding: '8px 11px',
15037
+ fontSize: theme.typography.pxToRem(15)
15038
+ }, ownerState.size === 'small' && ownerState.variant === 'outlined' && {
15039
+ padding: '3px 9px',
15040
+ fontSize: theme.typography.pxToRem(13)
15041
+ }, ownerState.size === 'large' && ownerState.variant === 'outlined' && {
15042
+ padding: '7px 21px',
15043
+ fontSize: theme.typography.pxToRem(15)
15044
+ }, ownerState.size === 'small' && ownerState.variant === 'contained' && {
15045
+ padding: '4px 10px',
15046
+ fontSize: theme.typography.pxToRem(13)
15047
+ }, ownerState.size === 'large' && ownerState.variant === 'contained' && {
15048
+ padding: '8px 22px',
15049
+ fontSize: theme.typography.pxToRem(15)
15050
+ }, ownerState.fullWidth && {
15051
+ width: '100%'
15052
+ });
15053
+ }, ({
15054
+ ownerState
15055
+ }) => ownerState.disableElevation && {
15056
+ boxShadow: 'none',
15057
+ '&:hover': {
15058
+ boxShadow: 'none'
15059
+ },
15060
+ [`&.${buttonClasses$1.focusVisible}`]: {
15061
+ boxShadow: 'none'
15062
+ },
15063
+ '&:active': {
15064
+ boxShadow: 'none'
15065
+ },
15066
+ [`&.${buttonClasses$1.disabled}`]: {
15067
+ boxShadow: 'none'
15068
+ }
14334
15069
  });
14335
- const CardContent = /*#__PURE__*/React.forwardRef(function CardContent(inProps, ref) {
15070
+ const ButtonStartIcon = styled$1('span', {
15071
+ name: 'MuiButton',
15072
+ slot: 'StartIcon',
15073
+ overridesResolver: (props, styles) => {
15074
+ const {
15075
+ ownerState
15076
+ } = props;
15077
+ return [styles.startIcon, styles[`iconSize${capitalize(ownerState.size)}`]];
15078
+ }
15079
+ })(({
15080
+ ownerState
15081
+ }) => _extends({
15082
+ display: 'inherit',
15083
+ marginRight: 8,
15084
+ marginLeft: -4
15085
+ }, ownerState.size === 'small' && {
15086
+ marginLeft: -2
15087
+ }, commonIconStyles(ownerState)));
15088
+ const ButtonEndIcon = styled$1('span', {
15089
+ name: 'MuiButton',
15090
+ slot: 'EndIcon',
15091
+ overridesResolver: (props, styles) => {
15092
+ const {
15093
+ ownerState
15094
+ } = props;
15095
+ return [styles.endIcon, styles[`iconSize${capitalize(ownerState.size)}`]];
15096
+ }
15097
+ })(({
15098
+ ownerState
15099
+ }) => _extends({
15100
+ display: 'inherit',
15101
+ marginRight: -4,
15102
+ marginLeft: 8
15103
+ }, ownerState.size === 'small' && {
15104
+ marginRight: -2
15105
+ }, commonIconStyles(ownerState)));
15106
+ const Button = /*#__PURE__*/React.forwardRef(function Button(inProps, ref) {
15107
+ // props priority: `inProps` > `contextProps` > `themeDefaultProps`
15108
+ const contextProps = React.useContext(ButtonGroupContext$1);
15109
+ const resolvedProps = resolveProps(contextProps, inProps);
14336
15110
  const props = useThemeProps({
14337
- props: inProps,
14338
- name: 'MuiCardContent'
15111
+ props: resolvedProps,
15112
+ name: 'MuiButton'
14339
15113
  });
14340
15114
  const {
15115
+ children,
15116
+ color = 'primary',
15117
+ component = 'button',
14341
15118
  className,
14342
- component = 'div'
15119
+ disabled = false,
15120
+ disableElevation = false,
15121
+ disableFocusRipple = false,
15122
+ endIcon: endIconProp,
15123
+ focusVisibleClassName,
15124
+ fullWidth = false,
15125
+ size = 'medium',
15126
+ startIcon: startIconProp,
15127
+ type,
15128
+ variant = 'text'
14343
15129
  } = props,
14344
- other = _objectWithoutPropertiesLoose(props, _excluded$3);
15130
+ other = _objectWithoutPropertiesLoose(props, _excluded$8);
14345
15131
  const ownerState = _extends({}, props, {
14346
- component
15132
+ color,
15133
+ component,
15134
+ disabled,
15135
+ disableElevation,
15136
+ disableFocusRipple,
15137
+ fullWidth,
15138
+ size,
15139
+ type,
15140
+ variant
14347
15141
  });
14348
- const classes = useUtilityClasses$1(ownerState);
14349
- return /*#__PURE__*/jsx(CardContentRoot, _extends({
14350
- as: component,
14351
- className: clsx(classes.root, className),
15142
+ const classes = useUtilityClasses$6(ownerState);
15143
+ const startIcon = startIconProp && /*#__PURE__*/jsx(ButtonStartIcon, {
15144
+ className: classes.startIcon,
14352
15145
  ownerState: ownerState,
14353
- ref: ref
14354
- }, other));
15146
+ children: startIconProp
15147
+ });
15148
+ const endIcon = endIconProp && /*#__PURE__*/jsx(ButtonEndIcon, {
15149
+ className: classes.endIcon,
15150
+ ownerState: ownerState,
15151
+ children: endIconProp
15152
+ });
15153
+ return /*#__PURE__*/jsxs(ButtonRoot, _extends({
15154
+ ownerState: ownerState,
15155
+ className: clsx(contextProps.className, classes.root, className),
15156
+ component: component,
15157
+ disabled: disabled,
15158
+ focusRipple: !disableFocusRipple,
15159
+ focusVisibleClassName: clsx(classes.focusVisible, focusVisibleClassName),
15160
+ ref: ref,
15161
+ type: type
15162
+ }, other, {
15163
+ classes: classes,
15164
+ children: [startIcon, children, endIcon]
15165
+ }));
14355
15166
  });
14356
- process.env.NODE_ENV !== "production" ? CardContent.propTypes /* remove-proptypes */ = {
15167
+ process.env.NODE_ENV !== "production" ? Button.propTypes /* remove-proptypes */ = {
14357
15168
  // ----------------------------- Warning --------------------------------
14358
15169
  // | These PropTypes are generated from the TypeScript type definitions |
14359
15170
  // | To update them edit the d.ts file and run "yarn proptypes" |
@@ -14370,21 +15181,244 @@ process.env.NODE_ENV !== "production" ? CardContent.propTypes /* remove-proptype
14370
15181
  * @ignore
14371
15182
  */
14372
15183
  className: PropTypes.string,
15184
+ /**
15185
+ * The color of the component.
15186
+ * It supports both default and custom theme colors, which can be added as shown in the
15187
+ * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).
15188
+ * @default 'primary'
15189
+ */
15190
+ color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['inherit', 'primary', 'secondary', 'success', 'error', 'info', 'warning']), PropTypes.string]),
14373
15191
  /**
14374
15192
  * The component used for the root node.
14375
15193
  * Either a string to use a HTML element or a component.
14376
15194
  */
14377
15195
  component: PropTypes.elementType,
15196
+ /**
15197
+ * If `true`, the component is disabled.
15198
+ * @default false
15199
+ */
15200
+ disabled: PropTypes.bool,
15201
+ /**
15202
+ * If `true`, no elevation is used.
15203
+ * @default false
15204
+ */
15205
+ disableElevation: PropTypes.bool,
15206
+ /**
15207
+ * If `true`, the keyboard focus ripple is disabled.
15208
+ * @default false
15209
+ */
15210
+ disableFocusRipple: PropTypes.bool,
15211
+ /**
15212
+ * If `true`, the ripple effect is disabled.
15213
+ *
15214
+ * ⚠️ Without a ripple there is no styling for :focus-visible by default. Be sure
15215
+ * to highlight the element by applying separate styles with the `.Mui-focusVisible` class.
15216
+ * @default false
15217
+ */
15218
+ disableRipple: PropTypes.bool,
15219
+ /**
15220
+ * Element placed after the children.
15221
+ */
15222
+ endIcon: PropTypes.node,
15223
+ /**
15224
+ * @ignore
15225
+ */
15226
+ focusVisibleClassName: PropTypes.string,
15227
+ /**
15228
+ * If `true`, the button will take up the full width of its container.
15229
+ * @default false
15230
+ */
15231
+ fullWidth: PropTypes.bool,
15232
+ /**
15233
+ * The URL to link to when the button is clicked.
15234
+ * If defined, an `a` element will be used as the root node.
15235
+ */
15236
+ href: PropTypes.string,
15237
+ /**
15238
+ * The size of the component.
15239
+ * `small` is equivalent to the dense button styling.
15240
+ * @default 'medium'
15241
+ */
15242
+ size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['small', 'medium', 'large']), PropTypes.string]),
15243
+ /**
15244
+ * Element placed before the children.
15245
+ */
15246
+ startIcon: PropTypes.node,
14378
15247
  /**
14379
15248
  * The system prop that allows defining system overrides as well as additional CSS styles.
14380
15249
  */
14381
- sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
15250
+ sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
15251
+ /**
15252
+ * @ignore
15253
+ */
15254
+ type: PropTypes.oneOfType([PropTypes.oneOf(['button', 'reset', 'submit']), PropTypes.string]),
15255
+ /**
15256
+ * The variant to use.
15257
+ * @default 'text'
15258
+ */
15259
+ variant: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['contained', 'outlined', 'text']), PropTypes.string])
14382
15260
  } : void 0;
14383
- var CardContent$1 = CardContent;
15261
+ var Button$1 = Button;
14384
15262
 
14385
- const _excluded$2 = ["BackdropComponent", "BackdropProps", "classes", "className", "closeAfterTransition", "children", "container", "component", "components", "componentsProps", "disableAutoFocus", "disableEnforceFocus", "disableEscapeKeyDown", "disablePortal", "disableRestoreFocus", "disableScrollLock", "hideBackdrop", "keepMounted", "onBackdropClick", "onClose", "open", "slotProps", "slots", "theme"];
14386
- const ModalRoot = styled$1('div', {
14387
- name: 'MuiModal',
15263
+ function getCardUtilityClass(slot) {
15264
+ return generateUtilityClass('MuiCard', slot);
15265
+ }
15266
+ generateUtilityClasses('MuiCard', ['root']);
15267
+
15268
+ const _excluded$7 = ["className", "raised"];
15269
+ const useUtilityClasses$5 = ownerState => {
15270
+ const {
15271
+ classes
15272
+ } = ownerState;
15273
+ const slots = {
15274
+ root: ['root']
15275
+ };
15276
+ return composeClasses(slots, getCardUtilityClass, classes);
15277
+ };
15278
+ const CardRoot = styled$1(Paper$1, {
15279
+ name: 'MuiCard',
15280
+ slot: 'Root',
15281
+ overridesResolver: (props, styles) => styles.root
15282
+ })(() => {
15283
+ return {
15284
+ overflow: 'hidden'
15285
+ };
15286
+ });
15287
+ const Card = /*#__PURE__*/React.forwardRef(function Card(inProps, ref) {
15288
+ const props = useThemeProps({
15289
+ props: inProps,
15290
+ name: 'MuiCard'
15291
+ });
15292
+ const {
15293
+ className,
15294
+ raised = false
15295
+ } = props,
15296
+ other = _objectWithoutPropertiesLoose(props, _excluded$7);
15297
+ const ownerState = _extends({}, props, {
15298
+ raised
15299
+ });
15300
+ const classes = useUtilityClasses$5(ownerState);
15301
+ return /*#__PURE__*/jsx(CardRoot, _extends({
15302
+ className: clsx(classes.root, className),
15303
+ elevation: raised ? 8 : undefined,
15304
+ ref: ref,
15305
+ ownerState: ownerState
15306
+ }, other));
15307
+ });
15308
+ process.env.NODE_ENV !== "production" ? Card.propTypes /* remove-proptypes */ = {
15309
+ // ----------------------------- Warning --------------------------------
15310
+ // | These PropTypes are generated from the TypeScript type definitions |
15311
+ // | To update them edit the d.ts file and run "yarn proptypes" |
15312
+ // ----------------------------------------------------------------------
15313
+ /**
15314
+ * The content of the component.
15315
+ */
15316
+ children: PropTypes.node,
15317
+ /**
15318
+ * Override or extend the styles applied to the component.
15319
+ */
15320
+ classes: PropTypes.object,
15321
+ /**
15322
+ * @ignore
15323
+ */
15324
+ className: PropTypes.string,
15325
+ /**
15326
+ * If `true`, the card will use raised styling.
15327
+ * @default false
15328
+ */
15329
+ raised: chainPropTypes(PropTypes.bool, props => {
15330
+ if (props.raised && props.variant === 'outlined') {
15331
+ return new Error('MUI: Combining `raised={true}` with `variant="outlined"` has no effect.');
15332
+ }
15333
+ return null;
15334
+ }),
15335
+ /**
15336
+ * The system prop that allows defining system overrides as well as additional CSS styles.
15337
+ */
15338
+ sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
15339
+ } : void 0;
15340
+ var Card$1 = Card;
15341
+
15342
+ function getCardContentUtilityClass(slot) {
15343
+ return generateUtilityClass('MuiCardContent', slot);
15344
+ }
15345
+ generateUtilityClasses('MuiCardContent', ['root']);
15346
+
15347
+ const _excluded$6 = ["className", "component"];
15348
+ const useUtilityClasses$4 = ownerState => {
15349
+ const {
15350
+ classes
15351
+ } = ownerState;
15352
+ const slots = {
15353
+ root: ['root']
15354
+ };
15355
+ return composeClasses(slots, getCardContentUtilityClass, classes);
15356
+ };
15357
+ const CardContentRoot = styled$1('div', {
15358
+ name: 'MuiCardContent',
15359
+ slot: 'Root',
15360
+ overridesResolver: (props, styles) => styles.root
15361
+ })(() => {
15362
+ return {
15363
+ padding: 16,
15364
+ '&:last-child': {
15365
+ paddingBottom: 24
15366
+ }
15367
+ };
15368
+ });
15369
+ const CardContent = /*#__PURE__*/React.forwardRef(function CardContent(inProps, ref) {
15370
+ const props = useThemeProps({
15371
+ props: inProps,
15372
+ name: 'MuiCardContent'
15373
+ });
15374
+ const {
15375
+ className,
15376
+ component = 'div'
15377
+ } = props,
15378
+ other = _objectWithoutPropertiesLoose(props, _excluded$6);
15379
+ const ownerState = _extends({}, props, {
15380
+ component
15381
+ });
15382
+ const classes = useUtilityClasses$4(ownerState);
15383
+ return /*#__PURE__*/jsx(CardContentRoot, _extends({
15384
+ as: component,
15385
+ className: clsx(classes.root, className),
15386
+ ownerState: ownerState,
15387
+ ref: ref
15388
+ }, other));
15389
+ });
15390
+ process.env.NODE_ENV !== "production" ? CardContent.propTypes /* remove-proptypes */ = {
15391
+ // ----------------------------- Warning --------------------------------
15392
+ // | These PropTypes are generated from the TypeScript type definitions |
15393
+ // | To update them edit the d.ts file and run "yarn proptypes" |
15394
+ // ----------------------------------------------------------------------
15395
+ /**
15396
+ * The content of the component.
15397
+ */
15398
+ children: PropTypes.node,
15399
+ /**
15400
+ * Override or extend the styles applied to the component.
15401
+ */
15402
+ classes: PropTypes.object,
15403
+ /**
15404
+ * @ignore
15405
+ */
15406
+ className: PropTypes.string,
15407
+ /**
15408
+ * The component used for the root node.
15409
+ * Either a string to use a HTML element or a component.
15410
+ */
15411
+ component: PropTypes.elementType,
15412
+ /**
15413
+ * The system prop that allows defining system overrides as well as additional CSS styles.
15414
+ */
15415
+ sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
15416
+ } : void 0;
15417
+ var CardContent$1 = CardContent;
15418
+
15419
+ const _excluded$5 = ["BackdropComponent", "BackdropProps", "classes", "className", "closeAfterTransition", "children", "container", "component", "components", "componentsProps", "disableAutoFocus", "disableEnforceFocus", "disableEscapeKeyDown", "disablePortal", "disableRestoreFocus", "disableScrollLock", "hideBackdrop", "keepMounted", "onBackdropClick", "onClose", "open", "slotProps", "slots", "theme"];
15420
+ const ModalRoot = styled$1('div', {
15421
+ name: 'MuiModal',
14388
15422
  slot: 'Root',
14389
15423
  overridesResolver: (props, styles) => {
14390
15424
  const {
@@ -14461,7 +15495,7 @@ const Modal = /*#__PURE__*/React.forwardRef(function Modal(inProps, ref) {
14461
15495
  // eslint-disable-next-line react/prop-types
14462
15496
  theme
14463
15497
  } = props,
14464
- other = _objectWithoutPropertiesLoose(props, _excluded$2);
15498
+ other = _objectWithoutPropertiesLoose(props, _excluded$5);
14465
15499
  const [exited, setExited] = React.useState(true);
14466
15500
  const commonProps = {
14467
15501
  container,
@@ -14680,67 +15714,304 @@ process.env.NODE_ENV !== "production" ? Modal.propTypes /* remove-proptypes */ =
14680
15714
  } : void 0;
14681
15715
  var Modal$1 = Modal;
14682
15716
 
14683
- const _excluded$1 = ["addEndListener", "appear", "children", "container", "direction", "easing", "in", "onEnter", "onEntered", "onEntering", "onExit", "onExited", "onExiting", "style", "timeout", "TransitionComponent"];
14684
- function getTranslateValue(direction, node, resolvedContainer) {
14685
- const rect = node.getBoundingClientRect();
14686
- const containerRect = resolvedContainer && resolvedContainer.getBoundingClientRect();
14687
- const containerWindow = ownerWindow(node);
14688
- let transform;
14689
- if (node.fakeTransform) {
14690
- transform = node.fakeTransform;
14691
- } else {
14692
- const computedStyle = containerWindow.getComputedStyle(node);
14693
- transform = computedStyle.getPropertyValue('-webkit-transform') || computedStyle.getPropertyValue('transform');
15717
+ function getDividerUtilityClass(slot) {
15718
+ return generateUtilityClass('MuiDivider', slot);
15719
+ }
15720
+ generateUtilityClasses('MuiDivider', ['root', 'absolute', 'fullWidth', 'inset', 'middle', 'flexItem', 'light', 'vertical', 'withChildren', 'withChildrenVertical', 'textAlignRight', 'textAlignLeft', 'wrapper', 'wrapperVertical']);
15721
+
15722
+ const _excluded$4 = ["absolute", "children", "className", "component", "flexItem", "light", "orientation", "role", "textAlign", "variant"];
15723
+ const useUtilityClasses$3 = ownerState => {
15724
+ const {
15725
+ absolute,
15726
+ children,
15727
+ classes,
15728
+ flexItem,
15729
+ light,
15730
+ orientation,
15731
+ textAlign,
15732
+ variant
15733
+ } = ownerState;
15734
+ const slots = {
15735
+ root: ['root', absolute && 'absolute', variant, light && 'light', orientation === 'vertical' && 'vertical', flexItem && 'flexItem', children && 'withChildren', children && orientation === 'vertical' && 'withChildrenVertical', textAlign === 'right' && orientation !== 'vertical' && 'textAlignRight', textAlign === 'left' && orientation !== 'vertical' && 'textAlignLeft'],
15736
+ wrapper: ['wrapper', orientation === 'vertical' && 'wrapperVertical']
15737
+ };
15738
+ return composeClasses(slots, getDividerUtilityClass, classes);
15739
+ };
15740
+ const DividerRoot = styled$1('div', {
15741
+ name: 'MuiDivider',
15742
+ slot: 'Root',
15743
+ overridesResolver: (props, styles) => {
15744
+ const {
15745
+ ownerState
15746
+ } = props;
15747
+ return [styles.root, ownerState.absolute && styles.absolute, styles[ownerState.variant], ownerState.light && styles.light, ownerState.orientation === 'vertical' && styles.vertical, ownerState.flexItem && styles.flexItem, ownerState.children && styles.withChildren, ownerState.children && ownerState.orientation === 'vertical' && styles.withChildrenVertical, ownerState.textAlign === 'right' && ownerState.orientation !== 'vertical' && styles.textAlignRight, ownerState.textAlign === 'left' && ownerState.orientation !== 'vertical' && styles.textAlignLeft];
14694
15748
  }
14695
- let offsetX = 0;
14696
- let offsetY = 0;
14697
- if (transform && transform !== 'none' && typeof transform === 'string') {
14698
- const transformValues = transform.split('(')[1].split(')')[0].split(',');
14699
- offsetX = parseInt(transformValues[4], 10);
14700
- offsetY = parseInt(transformValues[5], 10);
15749
+ })(({
15750
+ theme,
15751
+ ownerState
15752
+ }) => _extends({
15753
+ margin: 0,
15754
+ // Reset browser default style.
15755
+ flexShrink: 0,
15756
+ borderWidth: 0,
15757
+ borderStyle: 'solid',
15758
+ borderColor: (theme.vars || theme).palette.divider,
15759
+ borderBottomWidth: 'thin'
15760
+ }, ownerState.absolute && {
15761
+ position: 'absolute',
15762
+ bottom: 0,
15763
+ left: 0,
15764
+ width: '100%'
15765
+ }, ownerState.light && {
15766
+ borderColor: theme.vars ? `rgba(${theme.vars.palette.dividerChannel} / 0.08)` : alpha(theme.palette.divider, 0.08)
15767
+ }, ownerState.variant === 'inset' && {
15768
+ marginLeft: 72
15769
+ }, ownerState.variant === 'middle' && ownerState.orientation === 'horizontal' && {
15770
+ marginLeft: theme.spacing(2),
15771
+ marginRight: theme.spacing(2)
15772
+ }, ownerState.variant === 'middle' && ownerState.orientation === 'vertical' && {
15773
+ marginTop: theme.spacing(1),
15774
+ marginBottom: theme.spacing(1)
15775
+ }, ownerState.orientation === 'vertical' && {
15776
+ height: '100%',
15777
+ borderBottomWidth: 0,
15778
+ borderRightWidth: 'thin'
15779
+ }, ownerState.flexItem && {
15780
+ alignSelf: 'stretch',
15781
+ height: 'auto'
15782
+ }), ({
15783
+ ownerState
15784
+ }) => _extends({}, ownerState.children && {
15785
+ display: 'flex',
15786
+ whiteSpace: 'nowrap',
15787
+ textAlign: 'center',
15788
+ border: 0,
15789
+ '&::before, &::after': {
15790
+ content: '""',
15791
+ alignSelf: 'center'
14701
15792
  }
14702
- if (direction === 'left') {
14703
- if (containerRect) {
14704
- return `translateX(${containerRect.right + offsetX - rect.left}px)`;
14705
- }
14706
- return `translateX(${containerWindow.innerWidth + offsetX - rect.left}px)`;
15793
+ }), ({
15794
+ theme,
15795
+ ownerState
15796
+ }) => _extends({}, ownerState.children && ownerState.orientation !== 'vertical' && {
15797
+ '&::before, &::after': {
15798
+ width: '100%',
15799
+ borderTop: `thin solid ${(theme.vars || theme).palette.divider}`
14707
15800
  }
14708
- if (direction === 'right') {
14709
- if (containerRect) {
14710
- return `translateX(-${rect.right - containerRect.left - offsetX}px)`;
14711
- }
14712
- return `translateX(-${rect.left + rect.width - offsetX}px)`;
15801
+ }), ({
15802
+ theme,
15803
+ ownerState
15804
+ }) => _extends({}, ownerState.children && ownerState.orientation === 'vertical' && {
15805
+ flexDirection: 'column',
15806
+ '&::before, &::after': {
15807
+ height: '100%',
15808
+ borderLeft: `thin solid ${(theme.vars || theme).palette.divider}`
14713
15809
  }
14714
- if (direction === 'up') {
14715
- if (containerRect) {
14716
- return `translateY(${containerRect.bottom + offsetY - rect.top}px)`;
14717
- }
14718
- return `translateY(${containerWindow.innerHeight + offsetY - rect.top}px)`;
15810
+ }), ({
15811
+ ownerState
15812
+ }) => _extends({}, ownerState.textAlign === 'right' && ownerState.orientation !== 'vertical' && {
15813
+ '&::before': {
15814
+ width: '90%'
15815
+ },
15816
+ '&::after': {
15817
+ width: '10%'
14719
15818
  }
14720
-
14721
- // direction === 'down'
14722
- if (containerRect) {
14723
- return `translateY(-${rect.top - containerRect.top + rect.height - offsetY}px)`;
15819
+ }, ownerState.textAlign === 'left' && ownerState.orientation !== 'vertical' && {
15820
+ '&::before': {
15821
+ width: '10%'
15822
+ },
15823
+ '&::after': {
15824
+ width: '90%'
14724
15825
  }
14725
- return `translateY(-${rect.top + rect.height - offsetY}px)`;
14726
- }
14727
- function resolveContainer(containerPropProp) {
14728
- return typeof containerPropProp === 'function' ? containerPropProp() : containerPropProp;
14729
- }
14730
- function setTranslateValue(direction, node, containerProp) {
14731
- const resolvedContainer = resolveContainer(containerProp);
14732
- const transform = getTranslateValue(direction, node, resolvedContainer);
14733
- if (transform) {
14734
- node.style.webkitTransform = transform;
14735
- node.style.transform = transform;
15826
+ }));
15827
+ const DividerWrapper = styled$1('span', {
15828
+ name: 'MuiDivider',
15829
+ slot: 'Wrapper',
15830
+ overridesResolver: (props, styles) => {
15831
+ const {
15832
+ ownerState
15833
+ } = props;
15834
+ return [styles.wrapper, ownerState.orientation === 'vertical' && styles.wrapperVertical];
14736
15835
  }
14737
- }
14738
-
14739
- /**
14740
- * The Slide transition is used by the [Drawer](/material-ui/react-drawer/) component.
14741
- * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.
14742
- */
14743
- const Slide = /*#__PURE__*/React.forwardRef(function Slide(props, ref) {
15836
+ })(({
15837
+ theme,
15838
+ ownerState
15839
+ }) => _extends({
15840
+ display: 'inline-block',
15841
+ paddingLeft: `calc(${theme.spacing(1)} * 1.2)`,
15842
+ paddingRight: `calc(${theme.spacing(1)} * 1.2)`
15843
+ }, ownerState.orientation === 'vertical' && {
15844
+ paddingTop: `calc(${theme.spacing(1)} * 1.2)`,
15845
+ paddingBottom: `calc(${theme.spacing(1)} * 1.2)`
15846
+ }));
15847
+ const Divider = /*#__PURE__*/React.forwardRef(function Divider(inProps, ref) {
15848
+ const props = useThemeProps({
15849
+ props: inProps,
15850
+ name: 'MuiDivider'
15851
+ });
15852
+ const {
15853
+ absolute = false,
15854
+ children,
15855
+ className,
15856
+ component = children ? 'div' : 'hr',
15857
+ flexItem = false,
15858
+ light = false,
15859
+ orientation = 'horizontal',
15860
+ role = component !== 'hr' ? 'separator' : undefined,
15861
+ textAlign = 'center',
15862
+ variant = 'fullWidth'
15863
+ } = props,
15864
+ other = _objectWithoutPropertiesLoose(props, _excluded$4);
15865
+ const ownerState = _extends({}, props, {
15866
+ absolute,
15867
+ component,
15868
+ flexItem,
15869
+ light,
15870
+ orientation,
15871
+ role,
15872
+ textAlign,
15873
+ variant
15874
+ });
15875
+ const classes = useUtilityClasses$3(ownerState);
15876
+ return /*#__PURE__*/jsx(DividerRoot, _extends({
15877
+ as: component,
15878
+ className: clsx(classes.root, className),
15879
+ role: role,
15880
+ ref: ref,
15881
+ ownerState: ownerState
15882
+ }, other, {
15883
+ children: children ? /*#__PURE__*/jsx(DividerWrapper, {
15884
+ className: classes.wrapper,
15885
+ ownerState: ownerState,
15886
+ children: children
15887
+ }) : null
15888
+ }));
15889
+ });
15890
+ process.env.NODE_ENV !== "production" ? Divider.propTypes /* remove-proptypes */ = {
15891
+ // ----------------------------- Warning --------------------------------
15892
+ // | These PropTypes are generated from the TypeScript type definitions |
15893
+ // | To update them edit the d.ts file and run "yarn proptypes" |
15894
+ // ----------------------------------------------------------------------
15895
+ /**
15896
+ * Absolutely position the element.
15897
+ * @default false
15898
+ */
15899
+ absolute: PropTypes.bool,
15900
+ /**
15901
+ * The content of the component.
15902
+ */
15903
+ children: PropTypes.node,
15904
+ /**
15905
+ * Override or extend the styles applied to the component.
15906
+ */
15907
+ classes: PropTypes.object,
15908
+ /**
15909
+ * @ignore
15910
+ */
15911
+ className: PropTypes.string,
15912
+ /**
15913
+ * The component used for the root node.
15914
+ * Either a string to use a HTML element or a component.
15915
+ */
15916
+ component: PropTypes.elementType,
15917
+ /**
15918
+ * If `true`, a vertical divider will have the correct height when used in flex container.
15919
+ * (By default, a vertical divider will have a calculated height of `0px` if it is the child of a flex container.)
15920
+ * @default false
15921
+ */
15922
+ flexItem: PropTypes.bool,
15923
+ /**
15924
+ * If `true`, the divider will have a lighter color.
15925
+ * @default false
15926
+ */
15927
+ light: PropTypes.bool,
15928
+ /**
15929
+ * The component orientation.
15930
+ * @default 'horizontal'
15931
+ */
15932
+ orientation: PropTypes.oneOf(['horizontal', 'vertical']),
15933
+ /**
15934
+ * @ignore
15935
+ */
15936
+ role: PropTypes /* @typescript-to-proptypes-ignore */.string,
15937
+ /**
15938
+ * The system prop that allows defining system overrides as well as additional CSS styles.
15939
+ */
15940
+ sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
15941
+ /**
15942
+ * The text alignment.
15943
+ * @default 'center'
15944
+ */
15945
+ textAlign: PropTypes.oneOf(['center', 'left', 'right']),
15946
+ /**
15947
+ * The variant to use.
15948
+ * @default 'fullWidth'
15949
+ */
15950
+ variant: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['fullWidth', 'inset', 'middle']), PropTypes.string])
15951
+ } : void 0;
15952
+ var Divider$1 = Divider;
15953
+
15954
+ const _excluded$3 = ["addEndListener", "appear", "children", "container", "direction", "easing", "in", "onEnter", "onEntered", "onEntering", "onExit", "onExited", "onExiting", "style", "timeout", "TransitionComponent"];
15955
+ function getTranslateValue(direction, node, resolvedContainer) {
15956
+ const rect = node.getBoundingClientRect();
15957
+ const containerRect = resolvedContainer && resolvedContainer.getBoundingClientRect();
15958
+ const containerWindow = ownerWindow(node);
15959
+ let transform;
15960
+ if (node.fakeTransform) {
15961
+ transform = node.fakeTransform;
15962
+ } else {
15963
+ const computedStyle = containerWindow.getComputedStyle(node);
15964
+ transform = computedStyle.getPropertyValue('-webkit-transform') || computedStyle.getPropertyValue('transform');
15965
+ }
15966
+ let offsetX = 0;
15967
+ let offsetY = 0;
15968
+ if (transform && transform !== 'none' && typeof transform === 'string') {
15969
+ const transformValues = transform.split('(')[1].split(')')[0].split(',');
15970
+ offsetX = parseInt(transformValues[4], 10);
15971
+ offsetY = parseInt(transformValues[5], 10);
15972
+ }
15973
+ if (direction === 'left') {
15974
+ if (containerRect) {
15975
+ return `translateX(${containerRect.right + offsetX - rect.left}px)`;
15976
+ }
15977
+ return `translateX(${containerWindow.innerWidth + offsetX - rect.left}px)`;
15978
+ }
15979
+ if (direction === 'right') {
15980
+ if (containerRect) {
15981
+ return `translateX(-${rect.right - containerRect.left - offsetX}px)`;
15982
+ }
15983
+ return `translateX(-${rect.left + rect.width - offsetX}px)`;
15984
+ }
15985
+ if (direction === 'up') {
15986
+ if (containerRect) {
15987
+ return `translateY(${containerRect.bottom + offsetY - rect.top}px)`;
15988
+ }
15989
+ return `translateY(${containerWindow.innerHeight + offsetY - rect.top}px)`;
15990
+ }
15991
+
15992
+ // direction === 'down'
15993
+ if (containerRect) {
15994
+ return `translateY(-${rect.top - containerRect.top + rect.height - offsetY}px)`;
15995
+ }
15996
+ return `translateY(-${rect.top + rect.height - offsetY}px)`;
15997
+ }
15998
+ function resolveContainer(containerPropProp) {
15999
+ return typeof containerPropProp === 'function' ? containerPropProp() : containerPropProp;
16000
+ }
16001
+ function setTranslateValue(direction, node, containerProp) {
16002
+ const resolvedContainer = resolveContainer(containerProp);
16003
+ const transform = getTranslateValue(direction, node, resolvedContainer);
16004
+ if (transform) {
16005
+ node.style.webkitTransform = transform;
16006
+ node.style.transform = transform;
16007
+ }
16008
+ }
16009
+
16010
+ /**
16011
+ * The Slide transition is used by the [Drawer](/material-ui/react-drawer/) component.
16012
+ * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.
16013
+ */
16014
+ const Slide = /*#__PURE__*/React.forwardRef(function Slide(props, ref) {
14744
16015
  const theme = useTheme();
14745
16016
  const defaultEasing = {
14746
16017
  enter: theme.transitions.easing.easeOut,
@@ -14769,7 +16040,7 @@ const Slide = /*#__PURE__*/React.forwardRef(function Slide(props, ref) {
14769
16040
  // eslint-disable-next-line react/prop-types
14770
16041
  TransitionComponent = Transition$1
14771
16042
  } = props,
14772
- other = _objectWithoutPropertiesLoose(props, _excluded$1);
16043
+ other = _objectWithoutPropertiesLoose(props, _excluded$3);
14773
16044
  const childrenRef = React.useRef(null);
14774
16045
  const handleRef = useForkRef(children.ref, childrenRef, ref);
14775
16046
  const normalizedTransitionCallback = callback => isAppearing => {
@@ -14997,7 +16268,7 @@ function getDrawerUtilityClass(slot) {
14997
16268
  }
14998
16269
  generateUtilityClasses('MuiDrawer', ['root', 'docked', 'paper', 'paperAnchorLeft', 'paperAnchorRight', 'paperAnchorTop', 'paperAnchorBottom', 'paperAnchorDockedLeft', 'paperAnchorDockedRight', 'paperAnchorDockedTop', 'paperAnchorDockedBottom', 'modal']);
14999
16270
 
15000
- const _excluded = ["BackdropProps"],
16271
+ const _excluded$2 = ["BackdropProps"],
15001
16272
  _excluded2 = ["anchor", "BackdropProps", "children", "className", "elevation", "hideBackdrop", "ModalProps", "onClose", "open", "PaperProps", "SlideProps", "TransitionComponent", "transitionDuration", "variant"];
15002
16273
  const overridesResolver = (props, styles) => {
15003
16274
  const {
@@ -15005,7 +16276,7 @@ const overridesResolver = (props, styles) => {
15005
16276
  } = props;
15006
16277
  return [styles.root, (ownerState.variant === 'permanent' || ownerState.variant === 'persistent') && styles.docked, styles.modal];
15007
16278
  };
15008
- const useUtilityClasses = ownerState => {
16279
+ const useUtilityClasses$2 = ownerState => {
15009
16280
  const {
15010
16281
  classes,
15011
16282
  anchor,
@@ -15104,122 +16375,708 @@ function getAnchor(theme, anchor) {
15104
16375
  return theme.direction === 'rtl' && isHorizontal(anchor) ? oppositeDirection[anchor] : anchor;
15105
16376
  }
15106
16377
 
15107
- /**
15108
- * The props of the [Modal](/material-ui/api/modal/) component are available
15109
- * when `variant="temporary"` is set.
15110
- */
15111
- const Drawer = /*#__PURE__*/React.forwardRef(function Drawer(inProps, ref) {
16378
+ /**
16379
+ * The props of the [Modal](/material-ui/api/modal/) component are available
16380
+ * when `variant="temporary"` is set.
16381
+ */
16382
+ const Drawer = /*#__PURE__*/React.forwardRef(function Drawer(inProps, ref) {
16383
+ const props = useThemeProps({
16384
+ props: inProps,
16385
+ name: 'MuiDrawer'
16386
+ });
16387
+ const theme = useTheme();
16388
+ const defaultTransitionDuration = {
16389
+ enter: theme.transitions.duration.enteringScreen,
16390
+ exit: theme.transitions.duration.leavingScreen
16391
+ };
16392
+ const {
16393
+ anchor: anchorProp = 'left',
16394
+ BackdropProps,
16395
+ children,
16396
+ className,
16397
+ elevation = 16,
16398
+ hideBackdrop = false,
16399
+ ModalProps: {
16400
+ BackdropProps: BackdropPropsProp
16401
+ } = {},
16402
+ onClose,
16403
+ open = false,
16404
+ PaperProps = {},
16405
+ SlideProps,
16406
+ // eslint-disable-next-line react/prop-types
16407
+ TransitionComponent = Slide$1,
16408
+ transitionDuration = defaultTransitionDuration,
16409
+ variant = 'temporary'
16410
+ } = props,
16411
+ ModalProps = _objectWithoutPropertiesLoose(props.ModalProps, _excluded$2),
16412
+ other = _objectWithoutPropertiesLoose(props, _excluded2);
16413
+
16414
+ // Let's assume that the Drawer will always be rendered on user space.
16415
+ // We use this state is order to skip the appear transition during the
16416
+ // initial mount of the component.
16417
+ const mounted = React.useRef(false);
16418
+ React.useEffect(() => {
16419
+ mounted.current = true;
16420
+ }, []);
16421
+ const anchorInvariant = getAnchor(theme, anchorProp);
16422
+ const anchor = anchorProp;
16423
+ const ownerState = _extends({}, props, {
16424
+ anchor,
16425
+ elevation,
16426
+ open,
16427
+ variant
16428
+ }, other);
16429
+ const classes = useUtilityClasses$2(ownerState);
16430
+ const drawer = /*#__PURE__*/jsx(DrawerPaper, _extends({
16431
+ elevation: variant === 'temporary' ? elevation : 0,
16432
+ square: true
16433
+ }, PaperProps, {
16434
+ className: clsx(classes.paper, PaperProps.className),
16435
+ ownerState: ownerState,
16436
+ children: children
16437
+ }));
16438
+ if (variant === 'permanent') {
16439
+ return /*#__PURE__*/jsx(DrawerDockedRoot, _extends({
16440
+ className: clsx(classes.root, classes.docked, className),
16441
+ ownerState: ownerState,
16442
+ ref: ref
16443
+ }, other, {
16444
+ children: drawer
16445
+ }));
16446
+ }
16447
+ const slidingDrawer = /*#__PURE__*/jsx(TransitionComponent, _extends({
16448
+ in: open,
16449
+ direction: oppositeDirection[anchorInvariant],
16450
+ timeout: transitionDuration,
16451
+ appear: mounted.current
16452
+ }, SlideProps, {
16453
+ children: drawer
16454
+ }));
16455
+ if (variant === 'persistent') {
16456
+ return /*#__PURE__*/jsx(DrawerDockedRoot, _extends({
16457
+ className: clsx(classes.root, classes.docked, className),
16458
+ ownerState: ownerState,
16459
+ ref: ref
16460
+ }, other, {
16461
+ children: slidingDrawer
16462
+ }));
16463
+ }
16464
+
16465
+ // variant === temporary
16466
+ return /*#__PURE__*/jsx(DrawerRoot, _extends({
16467
+ BackdropProps: _extends({}, BackdropProps, BackdropPropsProp, {
16468
+ transitionDuration
16469
+ }),
16470
+ className: clsx(classes.root, classes.modal, className),
16471
+ open: open,
16472
+ ownerState: ownerState,
16473
+ onClose: onClose,
16474
+ hideBackdrop: hideBackdrop,
16475
+ ref: ref
16476
+ }, other, ModalProps, {
16477
+ children: slidingDrawer
16478
+ }));
16479
+ });
16480
+ process.env.NODE_ENV !== "production" ? Drawer.propTypes /* remove-proptypes */ = {
16481
+ // ----------------------------- Warning --------------------------------
16482
+ // | These PropTypes are generated from the TypeScript type definitions |
16483
+ // | To update them edit the d.ts file and run "yarn proptypes" |
16484
+ // ----------------------------------------------------------------------
16485
+ /**
16486
+ * Side from which the drawer will appear.
16487
+ * @default 'left'
16488
+ */
16489
+ anchor: PropTypes.oneOf(['bottom', 'left', 'right', 'top']),
16490
+ /**
16491
+ * @ignore
16492
+ */
16493
+ BackdropProps: PropTypes.object,
16494
+ /**
16495
+ * The content of the component.
16496
+ */
16497
+ children: PropTypes.node,
16498
+ /**
16499
+ * Override or extend the styles applied to the component.
16500
+ */
16501
+ classes: PropTypes.object,
16502
+ /**
16503
+ * @ignore
16504
+ */
16505
+ className: PropTypes.string,
16506
+ /**
16507
+ * The elevation of the drawer.
16508
+ * @default 16
16509
+ */
16510
+ elevation: integerPropType,
16511
+ /**
16512
+ * If `true`, the backdrop is not rendered.
16513
+ * @default false
16514
+ */
16515
+ hideBackdrop: PropTypes.bool,
16516
+ /**
16517
+ * Props applied to the [`Modal`](/material-ui/api/modal/) element.
16518
+ * @default {}
16519
+ */
16520
+ ModalProps: PropTypes.object,
16521
+ /**
16522
+ * Callback fired when the component requests to be closed.
16523
+ *
16524
+ * @param {object} event The event source of the callback.
16525
+ */
16526
+ onClose: PropTypes.func,
16527
+ /**
16528
+ * If `true`, the component is shown.
16529
+ * @default false
16530
+ */
16531
+ open: PropTypes.bool,
16532
+ /**
16533
+ * Props applied to the [`Paper`](/material-ui/api/paper/) element.
16534
+ * @default {}
16535
+ */
16536
+ PaperProps: PropTypes.object,
16537
+ /**
16538
+ * Props applied to the [`Slide`](/material-ui/api/slide/) element.
16539
+ */
16540
+ SlideProps: PropTypes.object,
16541
+ /**
16542
+ * The system prop that allows defining system overrides as well as additional CSS styles.
16543
+ */
16544
+ sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
16545
+ /**
16546
+ * The duration for the transition, in milliseconds.
16547
+ * You may specify a single timeout for all transitions, or individually with an object.
16548
+ * @default {
16549
+ * enter: theme.transitions.duration.enteringScreen,
16550
+ * exit: theme.transitions.duration.leavingScreen,
16551
+ * }
16552
+ */
16553
+ transitionDuration: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({
16554
+ appear: PropTypes.number,
16555
+ enter: PropTypes.number,
16556
+ exit: PropTypes.number
16557
+ })]),
16558
+ /**
16559
+ * The variant to use.
16560
+ * @default 'temporary'
16561
+ */
16562
+ variant: PropTypes.oneOf(['permanent', 'persistent', 'temporary'])
16563
+ } : void 0;
16564
+ var Drawer$1 = Drawer;
16565
+
16566
+ function getLinearProgressUtilityClass(slot) {
16567
+ return generateUtilityClass('MuiLinearProgress', slot);
16568
+ }
16569
+ generateUtilityClasses('MuiLinearProgress', ['root', 'colorPrimary', 'colorSecondary', 'determinate', 'indeterminate', 'buffer', 'query', 'dashed', 'dashedColorPrimary', 'dashedColorSecondary', 'bar', 'barColorPrimary', 'barColorSecondary', 'bar1Indeterminate', 'bar1Determinate', 'bar1Buffer', 'bar2Indeterminate', 'bar2Buffer']);
16570
+
16571
+ const _excluded$1 = ["className", "color", "value", "valueBuffer", "variant"];
16572
+ let _ = t => t,
16573
+ _t,
16574
+ _t2,
16575
+ _t3,
16576
+ _t4,
16577
+ _t5,
16578
+ _t6;
16579
+ const TRANSITION_DURATION = 4; // seconds
16580
+ const indeterminate1Keyframe = keyframes(_t || (_t = _`
16581
+ 0% {
16582
+ left: -35%;
16583
+ right: 100%;
16584
+ }
16585
+
16586
+ 60% {
16587
+ left: 100%;
16588
+ right: -90%;
16589
+ }
16590
+
16591
+ 100% {
16592
+ left: 100%;
16593
+ right: -90%;
16594
+ }
16595
+ `));
16596
+ const indeterminate2Keyframe = keyframes(_t2 || (_t2 = _`
16597
+ 0% {
16598
+ left: -200%;
16599
+ right: 100%;
16600
+ }
16601
+
16602
+ 60% {
16603
+ left: 107%;
16604
+ right: -8%;
16605
+ }
16606
+
16607
+ 100% {
16608
+ left: 107%;
16609
+ right: -8%;
16610
+ }
16611
+ `));
16612
+ const bufferKeyframe = keyframes(_t3 || (_t3 = _`
16613
+ 0% {
16614
+ opacity: 1;
16615
+ background-position: 0 -23px;
16616
+ }
16617
+
16618
+ 60% {
16619
+ opacity: 0;
16620
+ background-position: 0 -23px;
16621
+ }
16622
+
16623
+ 100% {
16624
+ opacity: 1;
16625
+ background-position: -200px -23px;
16626
+ }
16627
+ `));
16628
+ const useUtilityClasses$1 = ownerState => {
16629
+ const {
16630
+ classes,
16631
+ variant,
16632
+ color
16633
+ } = ownerState;
16634
+ const slots = {
16635
+ root: ['root', `color${capitalize(color)}`, variant],
16636
+ dashed: ['dashed', `dashedColor${capitalize(color)}`],
16637
+ bar1: ['bar', `barColor${capitalize(color)}`, (variant === 'indeterminate' || variant === 'query') && 'bar1Indeterminate', variant === 'determinate' && 'bar1Determinate', variant === 'buffer' && 'bar1Buffer'],
16638
+ bar2: ['bar', variant !== 'buffer' && `barColor${capitalize(color)}`, variant === 'buffer' && `color${capitalize(color)}`, (variant === 'indeterminate' || variant === 'query') && 'bar2Indeterminate', variant === 'buffer' && 'bar2Buffer']
16639
+ };
16640
+ return composeClasses(slots, getLinearProgressUtilityClass, classes);
16641
+ };
16642
+ const getColorShade = (theme, color) => {
16643
+ if (color === 'inherit') {
16644
+ return 'currentColor';
16645
+ }
16646
+ if (theme.vars) {
16647
+ return theme.vars.palette.LinearProgress[`${color}Bg`];
16648
+ }
16649
+ return theme.palette.mode === 'light' ? lighten(theme.palette[color].main, 0.62) : darken(theme.palette[color].main, 0.5);
16650
+ };
16651
+ const LinearProgressRoot = styled$1('span', {
16652
+ name: 'MuiLinearProgress',
16653
+ slot: 'Root',
16654
+ overridesResolver: (props, styles) => {
16655
+ const {
16656
+ ownerState
16657
+ } = props;
16658
+ return [styles.root, styles[`color${capitalize(ownerState.color)}`], styles[ownerState.variant]];
16659
+ }
16660
+ })(({
16661
+ ownerState,
16662
+ theme
16663
+ }) => _extends({
16664
+ position: 'relative',
16665
+ overflow: 'hidden',
16666
+ display: 'block',
16667
+ height: 4,
16668
+ zIndex: 0,
16669
+ // Fix Safari's bug during composition of different paint.
16670
+ '@media print': {
16671
+ colorAdjust: 'exact'
16672
+ },
16673
+ backgroundColor: getColorShade(theme, ownerState.color)
16674
+ }, ownerState.color === 'inherit' && ownerState.variant !== 'buffer' && {
16675
+ backgroundColor: 'none',
16676
+ '&::before': {
16677
+ content: '""',
16678
+ position: 'absolute',
16679
+ left: 0,
16680
+ top: 0,
16681
+ right: 0,
16682
+ bottom: 0,
16683
+ backgroundColor: 'currentColor',
16684
+ opacity: 0.3
16685
+ }
16686
+ }, ownerState.variant === 'buffer' && {
16687
+ backgroundColor: 'transparent'
16688
+ }, ownerState.variant === 'query' && {
16689
+ transform: 'rotate(180deg)'
16690
+ }));
16691
+ const LinearProgressDashed = styled$1('span', {
16692
+ name: 'MuiLinearProgress',
16693
+ slot: 'Dashed',
16694
+ overridesResolver: (props, styles) => {
16695
+ const {
16696
+ ownerState
16697
+ } = props;
16698
+ return [styles.dashed, styles[`dashedColor${capitalize(ownerState.color)}`]];
16699
+ }
16700
+ })(({
16701
+ ownerState,
16702
+ theme
16703
+ }) => {
16704
+ const backgroundColor = getColorShade(theme, ownerState.color);
16705
+ return _extends({
16706
+ position: 'absolute',
16707
+ marginTop: 0,
16708
+ height: '100%',
16709
+ width: '100%'
16710
+ }, ownerState.color === 'inherit' && {
16711
+ opacity: 0.3
16712
+ }, {
16713
+ backgroundImage: `radial-gradient(${backgroundColor} 0%, ${backgroundColor} 16%, transparent 42%)`,
16714
+ backgroundSize: '10px 10px',
16715
+ backgroundPosition: '0 -23px'
16716
+ });
16717
+ }, css(_t4 || (_t4 = _`
16718
+ animation: ${0} 3s infinite linear;
16719
+ `), bufferKeyframe));
16720
+ const LinearProgressBar1 = styled$1('span', {
16721
+ name: 'MuiLinearProgress',
16722
+ slot: 'Bar1',
16723
+ overridesResolver: (props, styles) => {
16724
+ const {
16725
+ ownerState
16726
+ } = props;
16727
+ return [styles.bar, styles[`barColor${capitalize(ownerState.color)}`], (ownerState.variant === 'indeterminate' || ownerState.variant === 'query') && styles.bar1Indeterminate, ownerState.variant === 'determinate' && styles.bar1Determinate, ownerState.variant === 'buffer' && styles.bar1Buffer];
16728
+ }
16729
+ })(({
16730
+ ownerState,
16731
+ theme
16732
+ }) => _extends({
16733
+ width: '100%',
16734
+ position: 'absolute',
16735
+ left: 0,
16736
+ bottom: 0,
16737
+ top: 0,
16738
+ transition: 'transform 0.2s linear',
16739
+ transformOrigin: 'left',
16740
+ backgroundColor: ownerState.color === 'inherit' ? 'currentColor' : (theme.vars || theme).palette[ownerState.color].main
16741
+ }, ownerState.variant === 'determinate' && {
16742
+ transition: `transform .${TRANSITION_DURATION}s linear`
16743
+ }, ownerState.variant === 'buffer' && {
16744
+ zIndex: 1,
16745
+ transition: `transform .${TRANSITION_DURATION}s linear`
16746
+ }), ({
16747
+ ownerState
16748
+ }) => (ownerState.variant === 'indeterminate' || ownerState.variant === 'query') && css(_t5 || (_t5 = _`
16749
+ width: auto;
16750
+ animation: ${0} 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
16751
+ `), indeterminate1Keyframe));
16752
+ const LinearProgressBar2 = styled$1('span', {
16753
+ name: 'MuiLinearProgress',
16754
+ slot: 'Bar2',
16755
+ overridesResolver: (props, styles) => {
16756
+ const {
16757
+ ownerState
16758
+ } = props;
16759
+ return [styles.bar, styles[`barColor${capitalize(ownerState.color)}`], (ownerState.variant === 'indeterminate' || ownerState.variant === 'query') && styles.bar2Indeterminate, ownerState.variant === 'buffer' && styles.bar2Buffer];
16760
+ }
16761
+ })(({
16762
+ ownerState,
16763
+ theme
16764
+ }) => _extends({
16765
+ width: '100%',
16766
+ position: 'absolute',
16767
+ left: 0,
16768
+ bottom: 0,
16769
+ top: 0,
16770
+ transition: 'transform 0.2s linear',
16771
+ transformOrigin: 'left'
16772
+ }, ownerState.variant !== 'buffer' && {
16773
+ backgroundColor: ownerState.color === 'inherit' ? 'currentColor' : (theme.vars || theme).palette[ownerState.color].main
16774
+ }, ownerState.color === 'inherit' && {
16775
+ opacity: 0.3
16776
+ }, ownerState.variant === 'buffer' && {
16777
+ backgroundColor: getColorShade(theme, ownerState.color),
16778
+ transition: `transform .${TRANSITION_DURATION}s linear`
16779
+ }), ({
16780
+ ownerState
16781
+ }) => (ownerState.variant === 'indeterminate' || ownerState.variant === 'query') && css(_t6 || (_t6 = _`
16782
+ width: auto;
16783
+ animation: ${0} 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.15s infinite;
16784
+ `), indeterminate2Keyframe));
16785
+
16786
+ /**
16787
+ * ## ARIA
16788
+ *
16789
+ * If the progress bar is describing the loading progress of a particular region of a page,
16790
+ * you should use `aria-describedby` to point to the progress bar, and set the `aria-busy`
16791
+ * attribute to `true` on that region until it has finished loading.
16792
+ */
16793
+ const LinearProgress = /*#__PURE__*/React.forwardRef(function LinearProgress(inProps, ref) {
16794
+ const props = useThemeProps({
16795
+ props: inProps,
16796
+ name: 'MuiLinearProgress'
16797
+ });
16798
+ const {
16799
+ className,
16800
+ color = 'primary',
16801
+ value,
16802
+ valueBuffer,
16803
+ variant = 'indeterminate'
16804
+ } = props,
16805
+ other = _objectWithoutPropertiesLoose(props, _excluded$1);
16806
+ const ownerState = _extends({}, props, {
16807
+ color,
16808
+ variant
16809
+ });
16810
+ const classes = useUtilityClasses$1(ownerState);
16811
+ const theme = useTheme();
16812
+ const rootProps = {};
16813
+ const inlineStyles = {
16814
+ bar1: {},
16815
+ bar2: {}
16816
+ };
16817
+ if (variant === 'determinate' || variant === 'buffer') {
16818
+ if (value !== undefined) {
16819
+ rootProps['aria-valuenow'] = Math.round(value);
16820
+ rootProps['aria-valuemin'] = 0;
16821
+ rootProps['aria-valuemax'] = 100;
16822
+ let transform = value - 100;
16823
+ if (theme.direction === 'rtl') {
16824
+ transform = -transform;
16825
+ }
16826
+ inlineStyles.bar1.transform = `translateX(${transform}%)`;
16827
+ } else if (process.env.NODE_ENV !== 'production') {
16828
+ console.error('MUI: You need to provide a value prop ' + 'when using the determinate or buffer variant of LinearProgress .');
16829
+ }
16830
+ }
16831
+ if (variant === 'buffer') {
16832
+ if (valueBuffer !== undefined) {
16833
+ let transform = (valueBuffer || 0) - 100;
16834
+ if (theme.direction === 'rtl') {
16835
+ transform = -transform;
16836
+ }
16837
+ inlineStyles.bar2.transform = `translateX(${transform}%)`;
16838
+ } else if (process.env.NODE_ENV !== 'production') {
16839
+ console.error('MUI: You need to provide a valueBuffer prop ' + 'when using the buffer variant of LinearProgress.');
16840
+ }
16841
+ }
16842
+ return /*#__PURE__*/jsxs(LinearProgressRoot, _extends({
16843
+ className: clsx(classes.root, className),
16844
+ ownerState: ownerState,
16845
+ role: "progressbar"
16846
+ }, rootProps, {
16847
+ ref: ref
16848
+ }, other, {
16849
+ children: [variant === 'buffer' ? /*#__PURE__*/jsx(LinearProgressDashed, {
16850
+ className: classes.dashed,
16851
+ ownerState: ownerState
16852
+ }) : null, /*#__PURE__*/jsx(LinearProgressBar1, {
16853
+ className: classes.bar1,
16854
+ ownerState: ownerState,
16855
+ style: inlineStyles.bar1
16856
+ }), variant === 'determinate' ? null : /*#__PURE__*/jsx(LinearProgressBar2, {
16857
+ className: classes.bar2,
16858
+ ownerState: ownerState,
16859
+ style: inlineStyles.bar2
16860
+ })]
16861
+ }));
16862
+ });
16863
+ process.env.NODE_ENV !== "production" ? LinearProgress.propTypes /* remove-proptypes */ = {
16864
+ // ----------------------------- Warning --------------------------------
16865
+ // | These PropTypes are generated from the TypeScript type definitions |
16866
+ // | To update them edit the d.ts file and run "yarn proptypes" |
16867
+ // ----------------------------------------------------------------------
16868
+ /**
16869
+ * Override or extend the styles applied to the component.
16870
+ */
16871
+ classes: PropTypes.object,
16872
+ /**
16873
+ * @ignore
16874
+ */
16875
+ className: PropTypes.string,
16876
+ /**
16877
+ * The color of the component.
16878
+ * It supports both default and custom theme colors, which can be added as shown in the
16879
+ * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).
16880
+ * @default 'primary'
16881
+ */
16882
+ color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['inherit', 'primary', 'secondary']), PropTypes.string]),
16883
+ /**
16884
+ * The system prop that allows defining system overrides as well as additional CSS styles.
16885
+ */
16886
+ sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
16887
+ /**
16888
+ * The value of the progress indicator for the determinate and buffer variants.
16889
+ * Value between 0 and 100.
16890
+ */
16891
+ value: PropTypes.number,
16892
+ /**
16893
+ * The value for the buffer variant.
16894
+ * Value between 0 and 100.
16895
+ */
16896
+ valueBuffer: PropTypes.number,
16897
+ /**
16898
+ * The variant to use.
16899
+ * Use indeterminate or query when there is no progress value.
16900
+ * @default 'indeterminate'
16901
+ */
16902
+ variant: PropTypes.oneOf(['buffer', 'determinate', 'indeterminate', 'query'])
16903
+ } : void 0;
16904
+ var LinearProgress$1 = LinearProgress;
16905
+
16906
+ function getLinkUtilityClass(slot) {
16907
+ return generateUtilityClass('MuiLink', slot);
16908
+ }
16909
+ const linkClasses = generateUtilityClasses('MuiLink', ['root', 'underlineNone', 'underlineHover', 'underlineAlways', 'button', 'focusVisible']);
16910
+ var linkClasses$1 = linkClasses;
16911
+
16912
+ const colorTransformations = {
16913
+ primary: 'primary.main',
16914
+ textPrimary: 'text.primary',
16915
+ secondary: 'secondary.main',
16916
+ textSecondary: 'text.secondary',
16917
+ error: 'error.main'
16918
+ };
16919
+ const transformDeprecatedColors = color => {
16920
+ return colorTransformations[color] || color;
16921
+ };
16922
+ const getTextDecoration = ({
16923
+ theme,
16924
+ ownerState
16925
+ }) => {
16926
+ const transformedColor = transformDeprecatedColors(ownerState.color);
16927
+ const color = getPath(theme, `palette.${transformedColor}`, false) || ownerState.color;
16928
+ const channelColor = getPath(theme, `palette.${transformedColor}Channel`);
16929
+ if ('vars' in theme && channelColor) {
16930
+ return `rgba(${channelColor} / 0.4)`;
16931
+ }
16932
+ return alpha(color, 0.4);
16933
+ };
16934
+ var getTextDecoration$1 = getTextDecoration;
16935
+
16936
+ const _excluded = ["className", "color", "component", "onBlur", "onFocus", "TypographyClasses", "underline", "variant", "sx"];
16937
+ const useUtilityClasses = ownerState => {
16938
+ const {
16939
+ classes,
16940
+ component,
16941
+ focusVisible,
16942
+ underline
16943
+ } = ownerState;
16944
+ const slots = {
16945
+ root: ['root', `underline${capitalize(underline)}`, component === 'button' && 'button', focusVisible && 'focusVisible']
16946
+ };
16947
+ return composeClasses(slots, getLinkUtilityClass, classes);
16948
+ };
16949
+ const LinkRoot = styled$1(Typography$1, {
16950
+ name: 'MuiLink',
16951
+ slot: 'Root',
16952
+ overridesResolver: (props, styles) => {
16953
+ const {
16954
+ ownerState
16955
+ } = props;
16956
+ return [styles.root, styles[`underline${capitalize(ownerState.underline)}`], ownerState.component === 'button' && styles.button];
16957
+ }
16958
+ })(({
16959
+ theme,
16960
+ ownerState
16961
+ }) => {
16962
+ return _extends({}, ownerState.underline === 'none' && {
16963
+ textDecoration: 'none'
16964
+ }, ownerState.underline === 'hover' && {
16965
+ textDecoration: 'none',
16966
+ '&:hover': {
16967
+ textDecoration: 'underline'
16968
+ }
16969
+ }, ownerState.underline === 'always' && _extends({
16970
+ textDecoration: 'underline'
16971
+ }, ownerState.color !== 'inherit' && {
16972
+ textDecorationColor: getTextDecoration$1({
16973
+ theme,
16974
+ ownerState
16975
+ })
16976
+ }, {
16977
+ '&:hover': {
16978
+ textDecorationColor: 'inherit'
16979
+ }
16980
+ }), ownerState.component === 'button' && {
16981
+ position: 'relative',
16982
+ WebkitTapHighlightColor: 'transparent',
16983
+ backgroundColor: 'transparent',
16984
+ // Reset default value
16985
+ // We disable the focus ring for mouse, touch and keyboard users.
16986
+ outline: 0,
16987
+ border: 0,
16988
+ margin: 0,
16989
+ // Remove the margin in Safari
16990
+ borderRadius: 0,
16991
+ padding: 0,
16992
+ // Remove the padding in Firefox
16993
+ cursor: 'pointer',
16994
+ userSelect: 'none',
16995
+ verticalAlign: 'middle',
16996
+ MozAppearance: 'none',
16997
+ // Reset
16998
+ WebkitAppearance: 'none',
16999
+ // Reset
17000
+ '&::-moz-focus-inner': {
17001
+ borderStyle: 'none' // Remove Firefox dotted outline.
17002
+ },
17003
+
17004
+ [`&.${linkClasses$1.focusVisible}`]: {
17005
+ outline: 'auto'
17006
+ }
17007
+ });
17008
+ });
17009
+ const Link = /*#__PURE__*/React.forwardRef(function Link(inProps, ref) {
15112
17010
  const props = useThemeProps({
15113
17011
  props: inProps,
15114
- name: 'MuiDrawer'
17012
+ name: 'MuiLink'
15115
17013
  });
15116
- const theme = useTheme();
15117
- const defaultTransitionDuration = {
15118
- enter: theme.transitions.duration.enteringScreen,
15119
- exit: theme.transitions.duration.leavingScreen
15120
- };
15121
17014
  const {
15122
- anchor: anchorProp = 'left',
15123
- BackdropProps,
15124
- children,
15125
17015
  className,
15126
- elevation = 16,
15127
- hideBackdrop = false,
15128
- ModalProps: {
15129
- BackdropProps: BackdropPropsProp
15130
- } = {},
15131
- onClose,
15132
- open = false,
15133
- PaperProps = {},
15134
- SlideProps,
15135
- // eslint-disable-next-line react/prop-types
15136
- TransitionComponent = Slide$1,
15137
- transitionDuration = defaultTransitionDuration,
15138
- variant = 'temporary'
17016
+ color = 'primary',
17017
+ component = 'a',
17018
+ onBlur,
17019
+ onFocus,
17020
+ TypographyClasses,
17021
+ underline = 'always',
17022
+ variant = 'inherit',
17023
+ sx
15139
17024
  } = props,
15140
- ModalProps = _objectWithoutPropertiesLoose(props.ModalProps, _excluded),
15141
- other = _objectWithoutPropertiesLoose(props, _excluded2);
15142
-
15143
- // Let's assume that the Drawer will always be rendered on user space.
15144
- // We use this state is order to skip the appear transition during the
15145
- // initial mount of the component.
15146
- const mounted = React.useRef(false);
15147
- React.useEffect(() => {
15148
- mounted.current = true;
15149
- }, []);
15150
- const anchorInvariant = getAnchor(theme, anchorProp);
15151
- const anchor = anchorProp;
17025
+ other = _objectWithoutPropertiesLoose(props, _excluded);
17026
+ const {
17027
+ isFocusVisibleRef,
17028
+ onBlur: handleBlurVisible,
17029
+ onFocus: handleFocusVisible,
17030
+ ref: focusVisibleRef
17031
+ } = useIsFocusVisible();
17032
+ const [focusVisible, setFocusVisible] = React.useState(false);
17033
+ const handlerRef = useForkRef(ref, focusVisibleRef);
17034
+ const handleBlur = event => {
17035
+ handleBlurVisible(event);
17036
+ if (isFocusVisibleRef.current === false) {
17037
+ setFocusVisible(false);
17038
+ }
17039
+ if (onBlur) {
17040
+ onBlur(event);
17041
+ }
17042
+ };
17043
+ const handleFocus = event => {
17044
+ handleFocusVisible(event);
17045
+ if (isFocusVisibleRef.current === true) {
17046
+ setFocusVisible(true);
17047
+ }
17048
+ if (onFocus) {
17049
+ onFocus(event);
17050
+ }
17051
+ };
15152
17052
  const ownerState = _extends({}, props, {
15153
- anchor,
15154
- elevation,
15155
- open,
17053
+ color,
17054
+ component,
17055
+ focusVisible,
17056
+ underline,
15156
17057
  variant
15157
- }, other);
17058
+ });
15158
17059
  const classes = useUtilityClasses(ownerState);
15159
- const drawer = /*#__PURE__*/jsx(DrawerPaper, _extends({
15160
- elevation: variant === 'temporary' ? elevation : 0,
15161
- square: true
15162
- }, PaperProps, {
15163
- className: clsx(classes.paper, PaperProps.className),
15164
- ownerState: ownerState,
15165
- children: children
15166
- }));
15167
- if (variant === 'permanent') {
15168
- return /*#__PURE__*/jsx(DrawerDockedRoot, _extends({
15169
- className: clsx(classes.root, classes.docked, className),
15170
- ownerState: ownerState,
15171
- ref: ref
15172
- }, other, {
15173
- children: drawer
15174
- }));
15175
- }
15176
- const slidingDrawer = /*#__PURE__*/jsx(TransitionComponent, _extends({
15177
- in: open,
15178
- direction: oppositeDirection[anchorInvariant],
15179
- timeout: transitionDuration,
15180
- appear: mounted.current
15181
- }, SlideProps, {
15182
- children: drawer
15183
- }));
15184
- if (variant === 'persistent') {
15185
- return /*#__PURE__*/jsx(DrawerDockedRoot, _extends({
15186
- className: clsx(classes.root, classes.docked, className),
15187
- ownerState: ownerState,
15188
- ref: ref
15189
- }, other, {
15190
- children: slidingDrawer
15191
- }));
15192
- }
15193
-
15194
- // variant === temporary
15195
- return /*#__PURE__*/jsx(DrawerRoot, _extends({
15196
- BackdropProps: _extends({}, BackdropProps, BackdropPropsProp, {
15197
- transitionDuration
15198
- }),
15199
- className: clsx(classes.root, classes.modal, className),
15200
- open: open,
17060
+ return /*#__PURE__*/jsx(LinkRoot, _extends({
17061
+ color: color,
17062
+ className: clsx(classes.root, className),
17063
+ classes: TypographyClasses,
17064
+ component: component,
17065
+ onBlur: handleBlur,
17066
+ onFocus: handleFocus,
17067
+ ref: handlerRef,
15201
17068
  ownerState: ownerState,
15202
- onClose: onClose,
15203
- hideBackdrop: hideBackdrop,
15204
- ref: ref
15205
- }, other, ModalProps, {
15206
- children: slidingDrawer
15207
- }));
17069
+ variant: variant,
17070
+ sx: [...(!Object.keys(colorTransformations).includes(color) ? [{
17071
+ color
17072
+ }] : []), ...(Array.isArray(sx) ? sx : [sx])]
17073
+ }, other));
15208
17074
  });
15209
- process.env.NODE_ENV !== "production" ? Drawer.propTypes /* remove-proptypes */ = {
17075
+ process.env.NODE_ENV !== "production" ? Link.propTypes /* remove-proptypes */ = {
15210
17076
  // ----------------------------- Warning --------------------------------
15211
17077
  // | These PropTypes are generated from the TypeScript type definitions |
15212
17078
  // | To update them edit the d.ts file and run "yarn proptypes" |
15213
17079
  // ----------------------------------------------------------------------
15214
- /**
15215
- * Side from which the drawer will appear.
15216
- * @default 'left'
15217
- */
15218
- anchor: PropTypes.oneOf(['bottom', 'left', 'right', 'top']),
15219
- /**
15220
- * @ignore
15221
- */
15222
- BackdropProps: PropTypes.object,
15223
17080
  /**
15224
17081
  * The content of the component.
15225
17082
  */
@@ -15233,64 +17090,43 @@ process.env.NODE_ENV !== "production" ? Drawer.propTypes /* remove-proptypes */
15233
17090
  */
15234
17091
  className: PropTypes.string,
15235
17092
  /**
15236
- * The elevation of the drawer.
15237
- * @default 16
15238
- */
15239
- elevation: integerPropType,
15240
- /**
15241
- * If `true`, the backdrop is not rendered.
15242
- * @default false
15243
- */
15244
- hideBackdrop: PropTypes.bool,
15245
- /**
15246
- * Props applied to the [`Modal`](/material-ui/api/modal/) element.
15247
- * @default {}
15248
- */
15249
- ModalProps: PropTypes.object,
15250
- /**
15251
- * Callback fired when the component requests to be closed.
15252
- *
15253
- * @param {object} event The event source of the callback.
17093
+ * The color of the link.
17094
+ * @default 'primary'
15254
17095
  */
15255
- onClose: PropTypes.func,
17096
+ color: PropTypes /* @typescript-to-proptypes-ignore */.any,
15256
17097
  /**
15257
- * If `true`, the component is shown.
15258
- * @default false
17098
+ * The component used for the root node.
17099
+ * Either a string to use a HTML element or a component.
15259
17100
  */
15260
- open: PropTypes.bool,
17101
+ component: elementTypeAcceptingRef$1,
15261
17102
  /**
15262
- * Props applied to the [`Paper`](/material-ui/api/paper/) element.
15263
- * @default {}
17103
+ * @ignore
15264
17104
  */
15265
- PaperProps: PropTypes.object,
17105
+ onBlur: PropTypes.func,
15266
17106
  /**
15267
- * Props applied to the [`Slide`](/material-ui/api/slide/) element.
17107
+ * @ignore
15268
17108
  */
15269
- SlideProps: PropTypes.object,
17109
+ onFocus: PropTypes.func,
15270
17110
  /**
15271
17111
  * The system prop that allows defining system overrides as well as additional CSS styles.
15272
17112
  */
15273
17113
  sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
15274
17114
  /**
15275
- * The duration for the transition, in milliseconds.
15276
- * You may specify a single timeout for all transitions, or individually with an object.
15277
- * @default {
15278
- * enter: theme.transitions.duration.enteringScreen,
15279
- * exit: theme.transitions.duration.leavingScreen,
15280
- * }
17115
+ * `classes` prop applied to the [`Typography`](/material-ui/api/typography/) element.
15281
17116
  */
15282
- transitionDuration: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({
15283
- appear: PropTypes.number,
15284
- enter: PropTypes.number,
15285
- exit: PropTypes.number
15286
- })]),
17117
+ TypographyClasses: PropTypes.object,
15287
17118
  /**
15288
- * The variant to use.
15289
- * @default 'temporary'
17119
+ * Controls when the link should have an underline.
17120
+ * @default 'always'
15290
17121
  */
15291
- variant: PropTypes.oneOf(['permanent', 'persistent', 'temporary'])
17122
+ underline: PropTypes.oneOf(['always', 'hover', 'none']),
17123
+ /**
17124
+ * Applies the theme typography styles.
17125
+ * @default 'inherit'
17126
+ */
17127
+ variant: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['body1', 'body2', 'button', 'caption', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'inherit', 'overline', 'subtitle1', 'subtitle2']), PropTypes.string])
15292
17128
  } : void 0;
15293
- var Drawer$1 = Drawer;
17129
+ var Link$1 = Link;
15294
17130
 
15295
17131
  const Stack = createStack({
15296
17132
  createStyledComponent: styled$1('div', {
@@ -15365,45 +17201,40 @@ const EmptyState = ({
15365
17201
  content,
15366
17202
  actions
15367
17203
  }) => {
15368
- return jsx(Card$1, {
15369
- elevation: 1,
15370
- children: jsxs(CardContent$1, {
15371
- sx: {
15372
- display: 'flex',
15373
- alignItems: 'center',
15374
- justifyContent: 'center',
15375
- flexDirection: 'column',
15376
- gap: 4
15377
- },
15378
- children: [jsx("svg", {
15379
- style: {
15380
- width: 206,
15381
- height: 187
15382
- },
15383
- children: jsx("use", {
15384
- xlinkHref: `${sincoIconos}#${UrlImage[_state]}`
15385
- })
15386
- }), jsxs(Stack$1, {
15387
- direction: "column",
15388
- spacing: 2,
15389
- children: [title && jsx(Typography$1, {
15390
- variant: "h6",
15391
- textAlign: "center",
15392
- children: title
15393
- }), content && jsx(Typography$1, {
15394
- variant: "body1",
15395
- textAlign: "center",
15396
- color: "text.secondary",
15397
- children: content
15398
- }), _state === 'create' && actions && jsx(Stack$1, {
15399
- direction: "row",
15400
- spacing: 2,
15401
- justifyContent: "center",
15402
- children: actions
15403
- })]
15404
- })]
15405
- })
15406
- });
17204
+ return /*#__PURE__*/React__default.createElement(ThemeProvider, {
17205
+ theme: SincoTheme
17206
+ }, /*#__PURE__*/React__default.createElement(Card$1, {
17207
+ elevation: 1
17208
+ }, /*#__PURE__*/React__default.createElement(CardContent$1, {
17209
+ sx: {
17210
+ display: 'flex',
17211
+ alignItems: 'center',
17212
+ justifyContent: 'center',
17213
+ flexDirection: 'column',
17214
+ gap: 4
17215
+ }
17216
+ }, /*#__PURE__*/React__default.createElement("svg", {
17217
+ style: {
17218
+ width: 206,
17219
+ height: 187
17220
+ }
17221
+ }, /*#__PURE__*/React__default.createElement("use", {
17222
+ xlinkHref: `${sincoIconos}#${UrlImage[_state]}`
17223
+ })), /*#__PURE__*/React__default.createElement(Stack$1, {
17224
+ direction: "column",
17225
+ spacing: 2
17226
+ }, title && /*#__PURE__*/React__default.createElement(Typography$1, {
17227
+ variant: "h6",
17228
+ textAlign: "center"
17229
+ }, title), content && /*#__PURE__*/React__default.createElement(Typography$1, {
17230
+ variant: "body1",
17231
+ textAlign: "center",
17232
+ color: "text.secondary"
17233
+ }, content), _state === 'create' && actions && /*#__PURE__*/React__default.createElement(Stack$1, {
17234
+ direction: "row",
17235
+ spacing: 2,
17236
+ justifyContent: "center"
17237
+ }, actions)))));
15407
17238
  };
15408
17239
 
15409
17240
  var wellKnownSymbol$a = wellKnownSymbol$f;
@@ -15887,7 +17718,7 @@ const stylesEncabezado = {
15887
17718
  display: "flex",
15888
17719
  alignContent: "center",
15889
17720
  justifyContent: "space-between",
15890
- backgroundColor: "secondary.light",
17721
+ backgroundColor: "secondary.main",
15891
17722
  py: "12px",
15892
17723
  px: "8px"
15893
17724
  };
@@ -15923,42 +17754,271 @@ const DrawerComponent = ({
15923
17754
  const mostrarAcciones = () => {
15924
17755
  setShowActions(true);
15925
17756
  };
15926
- return jsx(Drawer$1, {
17757
+ return /*#__PURE__*/React__default.createElement(ThemeProvider, {
17758
+ theme: SincoTheme
17759
+ }, /*#__PURE__*/React__default.createElement(Drawer$1, {
15927
17760
  anchor: anchor,
15928
17761
  open: open,
15929
- onClose: onClose,
15930
- PaperProps: {
17762
+ onClose: onClose
17763
+ }, /*#__PURE__*/React__default.createElement(Box$2, {
17764
+ sx: stylesDrawerContainer
17765
+ }, /*#__PURE__*/React__default.createElement(Box$2, {
17766
+ sx: stylesEncabezado
17767
+ }, /*#__PURE__*/React__default.createElement(Typography$1, {
17768
+ variant: "h6"
17769
+ }, titulo), /*#__PURE__*/React__default.createElement(Box$2, null, /*#__PURE__*/React__default.createElement(IconButton$1, {
17770
+ onClick: onClose,
17771
+ size: "small"
17772
+ }, /*#__PURE__*/React__default.createElement(default_1, {
17773
+ fontSize: "small"
17774
+ })))), /*#__PURE__*/React__default.createElement(Box$2, {
17775
+ onClick: mostrarAcciones,
17776
+ sx: stylesContenido
17777
+ }, children), showActions && /*#__PURE__*/React__default.createElement(Box$2, {
17778
+ sx: stylesAcciones
17779
+ }, acciones))));
17780
+ };
17781
+
17782
+ const ToastContent = styled$1(Stack$1)(() => ({
17783
+ position: "fixed",
17784
+ zIndex: 1400,
17785
+ boxShadow: "0px 5px 5px -3px rgba(24, 39, 75, 0.2), 0px 8px 10px 1px rgba(24, 39, 75, 0.14), 0px 3px 14px 2px rgba(24, 39, 75, 0.12)",
17786
+ right: 16,
17787
+ marginTop: 16
17788
+ }));
17789
+ const ContentBox = styled$1(Box$2)(({
17790
+ theme
17791
+ }) => ({
17792
+ padding: theme.spacing(1.5),
17793
+ gap: theme.spacing(1.5),
17794
+ display: "flex",
17795
+ alignItems: "center",
17796
+ "&.color-error": {
17797
+ backgroundColor: "#FEEBEE"
17798
+ },
17799
+ "&.color-info": {
17800
+ backgroundColor: "#E1F5FE"
17801
+ },
17802
+ "&.color-warning": {
17803
+ backgroundColor: "#FFF3E0"
17804
+ },
17805
+ "&.color-success": {
17806
+ backgroundColor: "#E8F5E9"
17807
+ }
17808
+ }));
17809
+ const RippleIcon = styled$1(Stack$1)(({
17810
+ theme
17811
+ }) => ({
17812
+ padding: theme.spacing(1),
17813
+ gap: theme.spacing(1),
17814
+ height: 20,
17815
+ borderRadius: 50,
17816
+ "&.ripple-error": {
17817
+ backgroundColor: "#D143431F"
17818
+ },
17819
+ "&.ripple-info": {
17820
+ backgroundColor: "#2D9FC51F"
17821
+ },
17822
+ "&.ripple-warning": {
17823
+ backgroundColor: "#FB85001F"
17824
+ },
17825
+ "&.ripple-success": {
17826
+ backgroundColor: "#8FC93A1F"
17827
+ }
17828
+ }));
17829
+ const ContentIcon = styled$1(Stack$1)(({
17830
+ theme
17831
+ }) => ({
17832
+ "&.icon-color.color-info": {
17833
+ color: theme.palette.info.main
17834
+ },
17835
+ "&.icon-color.color-error": {
17836
+ color: theme.palette.error.main
17837
+ },
17838
+ "&.icon-color.color-warning": {
17839
+ color: theme.palette.warning.main
17840
+ },
17841
+ "&.icon-color.color-success": {
17842
+ color: theme.palette.success.main
17843
+ }
17844
+ }));
17845
+ const ToastNotification = toast => {
17846
+ const [openToast, setOpenToast] = useState(true);
17847
+ const [showOptions, setShowOptions] = useState(true);
17848
+ const [progress, setProgress] = useState(100);
17849
+ const timeProgress = toast.time || 8000;
17850
+ const IconMap = {
17851
+ success: /*#__PURE__*/React__default.createElement(CheckCircleRounded, null),
17852
+ error: /*#__PURE__*/React__default.createElement(ErrorRounded, null),
17853
+ warning: /*#__PURE__*/React__default.createElement(WarningRounded, null),
17854
+ info: /*#__PURE__*/React__default.createElement(InfoRounded, null)
17855
+ };
17856
+ const ToastIcon = IconMap[toast.type || "info"];
17857
+ const colorMap = {
17858
+ success: "success",
17859
+ error: "error",
17860
+ warning: "warning",
17861
+ info: "info"
17862
+ };
17863
+ const colors = colorMap[toast.type || "info"];
17864
+ const toastPosition = {
17865
+ center: "center",
17866
+ end: "end",
17867
+ start: "start"
17868
+ };
17869
+ toastPosition[toast.position || "end"];
17870
+ const close = () => {
17871
+ setOpenToast(false);
17872
+ };
17873
+ const toggleOptions = () => {
17874
+ setShowOptions(prevShowOptions => !prevShowOptions);
17875
+ };
17876
+ const seeOptions = toast.seeMore;
17877
+ useEffect(() => {
17878
+ let seconds = 0;
17879
+ const interval = setInterval(() => {
17880
+ seconds += 100;
17881
+ const progress = 100 - seconds / timeProgress * 100;
17882
+ setProgress(progress <= 0 ? 0 : progress);
17883
+ }, 100);
17884
+ const closeTimeout = setTimeout(() => {
17885
+ clearInterval(interval);
17886
+ setOpenToast(false);
17887
+ }, timeProgress);
17888
+ return () => {
17889
+ clearInterval(interval);
17890
+ clearTimeout(closeTimeout);
17891
+ };
17892
+ }, [timeProgress]);
17893
+ return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, openToast && /*#__PURE__*/React__default.createElement(ThemeProvider, {
17894
+ theme: SincoTheme
17895
+ }, /*#__PURE__*/React__default.createElement(Stack$1, {
17896
+ height: 105,
17897
+ top: 16,
17898
+ right: 16,
17899
+ position: "absolute",
17900
+ zIndex: 1400
17901
+ }, /*#__PURE__*/React__default.createElement(ToastContent, {
17902
+ position: "fixed"
17903
+ }, /*#__PURE__*/React__default.createElement(ContentBox, {
17904
+ className: `color-${toast.type || "info"}`
17905
+ }, toast && /*#__PURE__*/React__default.createElement(RippleIcon, {
17906
+ className: `ripple-${toast.type || "info"}`
17907
+ }, /*#__PURE__*/React__default.createElement(ContentIcon, {
17908
+ className: `icon-color color-${toast.type || "info"}`
17909
+ }, ToastIcon)), /*#__PURE__*/React__default.createElement(Divider$1, {
17910
+ orientation: "vertical",
17911
+ flexItem: true
17912
+ }), /*#__PURE__*/React__default.createElement(Stack$1, {
17913
+ gap: 0.5,
17914
+ width: 285
17915
+ }, /*#__PURE__*/React__default.createElement(Stack$1, {
17916
+ justifyContent: "space-between",
17917
+ flexDirection: "row",
17918
+ alignItems: "center"
17919
+ }, /*#__PURE__*/React__default.createElement(Typography$1, {
17920
+ variant: "subtitle2",
17921
+ color: "text.primary"
17922
+ }, toast.title), /*#__PURE__*/React__default.createElement(IconButton$1, {
17923
+ size: "small",
17924
+ "aria-label": "delete",
17925
+ onClick: close
17926
+ }, /*#__PURE__*/React__default.createElement(Close$1, null))), /*#__PURE__*/React__default.createElement(Stack$1, {
17927
+ gap: "4px"
17928
+ }, /*#__PURE__*/React__default.createElement(Typography$1, {
17929
+ color: "text.primary",
17930
+ variant: "body2"
17931
+ }, toast.subtitle), !showOptions && toast.dataOpt && toast.dataOpt.length > 0 && /*#__PURE__*/React__default.createElement("ul", {
17932
+ style: {
17933
+ paddingLeft: 15,
17934
+ marginBlock: 0,
17935
+ fontSize: 11,
17936
+ color: "#101840de"
17937
+ }
17938
+ }, toast.dataOpt.map((element, i) => {
17939
+ const keyElement = Object.keys(element);
17940
+ let options = "";
17941
+ for (let _i = 0; _i < keyElement.length; _i++) {
17942
+ options += element[keyElement[_i]];
17943
+ }
17944
+ return /*#__PURE__*/React__default.createElement("li", {
15931
17945
  style: {
15932
- borderRadius: "8px 0px 0px 0px"
15933
- }
15934
- },
15935
- children: jsxs(Box$2, {
15936
- sx: stylesDrawerContainer,
15937
- children: [jsxs(Box$2, {
15938
- sx: stylesEncabezado,
15939
- children: [jsx(Typography$1, {
15940
- variant: "h6",
15941
- color: "text.primary",
15942
- children: titulo
15943
- }), jsx(Box$2, {
15944
- children: jsx(IconButton$1, {
15945
- onClick: onClose,
15946
- size: "small",
15947
- children: jsx(default_1, {
15948
- fontSize: "small"
15949
- })
15950
- })
15951
- })]
15952
- }), jsx(Box$2, {
15953
- onClick: mostrarAcciones,
15954
- sx: stylesContenido,
15955
- children: children
15956
- }), showActions && jsx(Box$2, {
15957
- sx: stylesAcciones,
15958
- children: acciones
15959
- })]
17946
+ width: "fit-content"
17947
+ },
17948
+ key: i
17949
+ }, /*#__PURE__*/React__default.createElement(Typography$1, {
17950
+ variant: "caption"
17951
+ }, options));
17952
+ }))), /*#__PURE__*/React__default.createElement(Stack$1, {
17953
+ justifyContent: "flex-end",
17954
+ flexDirection: "row",
17955
+ alignItems: "flex-end"
17956
+ }, toast.actions && /*#__PURE__*/React__default.createElement(Stack$1, {
17957
+ flexDirection: "row",
17958
+ gap: 1
17959
+ }, toast.actions), seeOptions && /*#__PURE__*/React__default.createElement(Button$1, {
17960
+ onClick: toggleOptions,
17961
+ size: "small",
17962
+ variant: "text",
17963
+ color: colors,
17964
+ endIcon: showOptions ? /*#__PURE__*/React__default.createElement(ArrowDownward, {
17965
+ fontSize: "small"
17966
+ }) : /*#__PURE__*/React__default.createElement(ArrowUpward, {
17967
+ fontSize: "small"
15960
17968
  })
15961
- });
17969
+ }, showOptions ? "Ver más" : "Ver menos")))), /*#__PURE__*/React__default.createElement(LinearProgress$1, {
17970
+ color: colors,
17971
+ variant: "determinate",
17972
+ value: progress
17973
+ })))));
17974
+ };
17975
+
17976
+ const PageContent = styled$1(Stack$1)(({
17977
+ theme
17978
+ }) => ({
17979
+ backgroundColor: "#fff",
17980
+ boxShadow: "0px 1px 3px rgba(24, 39, 75, 0.12), 0px 1px 1px -1px rgba(24, 39, 75, 0.14), 0px 2px 1px -2px rgba(24, 39, 75, 0.2)",
17981
+ zIndex: 100,
17982
+ padding: "8px 24px",
17983
+ justifyContent: "space-between",
17984
+ minHeight: 39,
17985
+ position: "fixed",
17986
+ width: "100%"
17987
+ }));
17988
+ const PageHeader = page => {
17989
+ return /*#__PURE__*/React__default.createElement(ThemeProvider, {
17990
+ theme: SincoTheme
17991
+ }, /*#__PURE__*/React__default.createElement("div", {
17992
+ style: {
17993
+ minHeight: 56
17994
+ }
17995
+ }, /*#__PURE__*/React__default.createElement(PageContent, null, Array.isArray(page.breadcrumbs) && page.breadcrumbs.length > 0 && /*#__PURE__*/React__default.createElement(Breadcrumbs$1, null, page.breadcrumbs.map((element, i) => {
17996
+ return /*#__PURE__*/React__default.createElement(Link$1, {
17997
+ underline: "hover",
17998
+ color: "inherit",
17999
+ href: element.link,
18000
+ key: i
18001
+ }, element.name);
18002
+ })), /*#__PURE__*/React__default.createElement(Stack$1, {
18003
+ width: "90%",
18004
+ justifyContent: "space-between",
18005
+ flexDirection: "row",
18006
+ alignItems: "center"
18007
+ }, /*#__PURE__*/React__default.createElement(Stack$1, {
18008
+ gap: 1.5,
18009
+ flexDirection: "row",
18010
+ alignItems: "center"
18011
+ }, page.back, /*#__PURE__*/React__default.createElement(Stack$1, null, /*#__PURE__*/React__default.createElement(Typography$1, {
18012
+ variant: "h6",
18013
+ color: "text.primary"
18014
+ }, page.title), /*#__PURE__*/React__default.createElement(Typography$1, {
18015
+ variant: "caption",
18016
+ color: "text.secondary"
18017
+ }, page.subtitle))), /*#__PURE__*/React__default.createElement(Stack$1, {
18018
+ gap: 1,
18019
+ alignItems: "center",
18020
+ flexDirection: "row"
18021
+ }, page.actions)), page.tabs)));
15962
18022
  };
15963
18023
 
15964
18024
  var classof$2 = classofRaw$2;
@@ -21416,4 +23476,4 @@ const useDynamicColor = url => {
21416
23476
  };
21417
23477
  };
21418
23478
 
21419
- export { DrawerComponent, EmptyState, SincoTheme, UrlImage, useDynamicColor };
23479
+ export { DrawerComponent, EmptyState, PageContent, PageHeader, SincoTheme, ToastNotification, UrlImage, dynamicColor, useDynamicColor };