gsintegrations 0.0.490 → 0.0.492
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/dist/bundle.cjs.js +1076 -944
- package/dist/bundle.cjs.js.map +2 -2
- package/dist/bundle.esm.js +1068 -945
- package/dist/bundle.esm.js.map +2 -2
- package/dist/index.d.ts +99 -5
- package/dist/types/components/molecules/NotchedBottomBar/NotchedBottomBar.d.ts +36 -0
- package/dist/types/components/molecules/NotchedBottomBar/index.d.ts +2 -0
- package/dist/types/components/molecules/index.d.ts +1 -0
- package/dist/types/components/social/SocialHomeBottomNav.d.ts +5 -3
- package/dist/types/components/social/index.d.ts +1 -1
- package/dist/types/pages/FinancialAccountsList/FinancialAccountsList.d.ts +1 -0
- package/dist/types/pages/FinancialAccountsList/FinancialAccountsList.types.d.ts +3 -0
- package/dist/types/pages/HomePage/HomePage.constants.d.ts +2 -2
- package/dist/types/pages/HomePage/HomePage.types.d.ts +48 -2
- package/dist/types/pages/HomePage/components/HomeBottomNav.d.ts +10 -3
- package/dist/types/pages/HomePage/components/HomeMenu.d.ts +14 -0
- package/dist/types/pages/HomePage/components/HomeMenu.types.d.ts +70 -1
- package/dist/types/pages/HomePage/components/HomeMenuShortcuts.d.ts +13 -0
- package/dist/types/pages/HomePage/components/bottomNavShortcuts.d.ts +78 -0
- package/dist/types/pages/HomePage/components/index.d.ts +1 -1
- package/dist/types/pages/HomePage/components/useHomeMenu.d.ts +12 -1
- package/dist/types/pages/HomePage/index.d.ts +2 -0
- package/package.json +1 -1
package/dist/bundle.cjs.js
CHANGED
|
@@ -1879,13 +1879,13 @@ function blend(background, overlay, opacity, gamma = 1.0) {
|
|
|
1879
1879
|
});
|
|
1880
1880
|
}
|
|
1881
1881
|
|
|
1882
|
-
const _excluded$
|
|
1882
|
+
const _excluded$2w = ["value"];
|
|
1883
1883
|
const RtlContext = /*#__PURE__*/React__namespace.createContext();
|
|
1884
1884
|
function RtlProvider(_ref) {
|
|
1885
1885
|
let {
|
|
1886
1886
|
value
|
|
1887
1887
|
} = _ref,
|
|
1888
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
1888
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$2w);
|
|
1889
1889
|
return /*#__PURE__*/require$$2$1.jsx(RtlContext.Provider, _extends$1({
|
|
1890
1890
|
value: value != null ? value : true
|
|
1891
1891
|
}, props));
|
|
@@ -4501,7 +4501,7 @@ var deepmerge = /*#__PURE__*/Object.freeze({
|
|
|
4501
4501
|
isPlainObject: isPlainObject
|
|
4502
4502
|
});
|
|
4503
4503
|
|
|
4504
|
-
const _excluded$
|
|
4504
|
+
const _excluded$2v = ["values", "unit", "step"];
|
|
4505
4505
|
const sortBreakpointsValues = values => {
|
|
4506
4506
|
const breakpointsAsArray = Object.keys(values).map(key => ({
|
|
4507
4507
|
key,
|
|
@@ -4535,7 +4535,7 @@ function createBreakpoints(breakpoints) {
|
|
|
4535
4535
|
unit = 'px',
|
|
4536
4536
|
step = 5
|
|
4537
4537
|
} = breakpoints,
|
|
4538
|
-
other = _objectWithoutPropertiesLoose(breakpoints, _excluded$
|
|
4538
|
+
other = _objectWithoutPropertiesLoose(breakpoints, _excluded$2v);
|
|
4539
4539
|
const sortedValues = sortBreakpointsValues(values);
|
|
4540
4540
|
const keys = Object.keys(sortedValues);
|
|
4541
4541
|
function up(key) {
|
|
@@ -5706,7 +5706,7 @@ function applyStyles$2(key, styles) {
|
|
|
5706
5706
|
return {};
|
|
5707
5707
|
}
|
|
5708
5708
|
|
|
5709
|
-
const _excluded$
|
|
5709
|
+
const _excluded$2u = ["breakpoints", "palette", "spacing", "shape"];
|
|
5710
5710
|
function createTheme$2(options = {}, ...args) {
|
|
5711
5711
|
const {
|
|
5712
5712
|
breakpoints: breakpointsInput = {},
|
|
@@ -5714,7 +5714,7 @@ function createTheme$2(options = {}, ...args) {
|
|
|
5714
5714
|
spacing: spacingInput,
|
|
5715
5715
|
shape: shapeInput = {}
|
|
5716
5716
|
} = options,
|
|
5717
|
-
other = _objectWithoutPropertiesLoose(options, _excluded$
|
|
5717
|
+
other = _objectWithoutPropertiesLoose(options, _excluded$2u);
|
|
5718
5718
|
const breakpoints = createBreakpoints(breakpointsInput);
|
|
5719
5719
|
const spacing = createSpacing(spacingInput);
|
|
5720
5720
|
let muiTheme = deepmerge$1({
|
|
@@ -5814,7 +5814,7 @@ process.env.NODE_ENV !== "production" ? GlobalStyles$1.propTypes /* remove-propt
|
|
|
5814
5814
|
themeId: PropTypes.string
|
|
5815
5815
|
} : void 0;
|
|
5816
5816
|
|
|
5817
|
-
const _excluded$
|
|
5817
|
+
const _excluded$2t = ["sx"];
|
|
5818
5818
|
const splitProps = props => {
|
|
5819
5819
|
var _props$theme$unstable, _props$theme;
|
|
5820
5820
|
const result = {
|
|
@@ -5835,7 +5835,7 @@ function extendSxProp(props) {
|
|
|
5835
5835
|
const {
|
|
5836
5836
|
sx: inSx
|
|
5837
5837
|
} = props,
|
|
5838
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
5838
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$2t);
|
|
5839
5839
|
const {
|
|
5840
5840
|
systemProps,
|
|
5841
5841
|
otherProps
|
|
@@ -5885,7 +5885,7 @@ const createClassNameGenerator$1 = () => {
|
|
|
5885
5885
|
const ClassNameGenerator$2 = createClassNameGenerator$1();
|
|
5886
5886
|
var ClassNameGenerator$3 = ClassNameGenerator$2;
|
|
5887
5887
|
|
|
5888
|
-
const _excluded$
|
|
5888
|
+
const _excluded$2s = ["className", "component"];
|
|
5889
5889
|
function createBox(options = {}) {
|
|
5890
5890
|
const {
|
|
5891
5891
|
themeId,
|
|
@@ -5903,7 +5903,7 @@ function createBox(options = {}) {
|
|
|
5903
5903
|
className,
|
|
5904
5904
|
component = 'div'
|
|
5905
5905
|
} = _extendSxProp,
|
|
5906
|
-
other = _objectWithoutPropertiesLoose(_extendSxProp, _excluded$
|
|
5906
|
+
other = _objectWithoutPropertiesLoose(_extendSxProp, _excluded$2s);
|
|
5907
5907
|
return /*#__PURE__*/require$$2$1.jsx(BoxRoot, _extends$1({
|
|
5908
5908
|
as: component,
|
|
5909
5909
|
ref: ref,
|
|
@@ -6282,7 +6282,7 @@ var getDisplayName = /*#__PURE__*/Object.freeze({
|
|
|
6282
6282
|
getFunctionName: getFunctionName
|
|
6283
6283
|
});
|
|
6284
6284
|
|
|
6285
|
-
const _excluded$
|
|
6285
|
+
const _excluded$2r = ["ownerState"],
|
|
6286
6286
|
_excluded2$i = ["variants"],
|
|
6287
6287
|
_excluded3$6 = ["name", "slot", "skipVariantsResolver", "skipSx", "overridesResolver"];
|
|
6288
6288
|
function isEmpty$3(obj) {
|
|
@@ -6333,7 +6333,7 @@ function processStyleArg$1(callableStyle, _ref, layerName) {
|
|
|
6333
6333
|
let {
|
|
6334
6334
|
ownerState
|
|
6335
6335
|
} = _ref,
|
|
6336
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
6336
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$2r);
|
|
6337
6337
|
const resolvedStylesArg = typeof callableStyle === 'function' ? callableStyle(_extends$1({
|
|
6338
6338
|
ownerState
|
|
6339
6339
|
}, props)) : callableStyle;
|
|
@@ -7559,7 +7559,7 @@ function resolveComponentProps$1(componentProps, ownerState, slotState) {
|
|
|
7559
7559
|
return componentProps;
|
|
7560
7560
|
}
|
|
7561
7561
|
|
|
7562
|
-
const _excluded$
|
|
7562
|
+
const _excluded$2q = ["elementType", "externalSlotProps", "ownerState", "skipResolvingSlotProps"];
|
|
7563
7563
|
/**
|
|
7564
7564
|
* @ignore - do not document.
|
|
7565
7565
|
* Builds the props to be passed into the slot of an unstyled component.
|
|
@@ -7576,7 +7576,7 @@ function useSlotProps$1(parameters) {
|
|
|
7576
7576
|
ownerState,
|
|
7577
7577
|
skipResolvingSlotProps = false
|
|
7578
7578
|
} = parameters,
|
|
7579
|
-
rest = _objectWithoutPropertiesLoose(parameters, _excluded$
|
|
7579
|
+
rest = _objectWithoutPropertiesLoose(parameters, _excluded$2q);
|
|
7580
7580
|
const resolvedComponentsProps = skipResolvingSlotProps ? {} : resolveComponentProps$1(externalSlotProps, ownerState);
|
|
7581
7581
|
const {
|
|
7582
7582
|
props: mergedProps,
|
|
@@ -7874,7 +7874,7 @@ function toPropertyKey$3(t) {
|
|
|
7874
7874
|
return "symbol" == _typeof$1(i) ? i : i + "";
|
|
7875
7875
|
}
|
|
7876
7876
|
|
|
7877
|
-
const _excluded$
|
|
7877
|
+
const _excluded$2p = ["className", "component", "disableGutters", "fixed", "maxWidth", "classes"];
|
|
7878
7878
|
const defaultTheme$4 = createTheme$2();
|
|
7879
7879
|
const defaultCreateStyledComponent$1 = systemStyled('div', {
|
|
7880
7880
|
name: 'MuiContainer',
|
|
@@ -7891,7 +7891,7 @@ const useThemePropsDefault$1 = inProps => useThemeProps$1({
|
|
|
7891
7891
|
name: 'MuiContainer',
|
|
7892
7892
|
defaultTheme: defaultTheme$4
|
|
7893
7893
|
});
|
|
7894
|
-
const useUtilityClasses$
|
|
7894
|
+
const useUtilityClasses$1W = (ownerState, componentName) => {
|
|
7895
7895
|
const getContainerUtilityClass = slot => {
|
|
7896
7896
|
return generateUtilityClass$1(componentName, slot);
|
|
7897
7897
|
};
|
|
@@ -7970,7 +7970,7 @@ function createContainer$1(options = {}) {
|
|
|
7970
7970
|
fixed = false,
|
|
7971
7971
|
maxWidth = 'lg'
|
|
7972
7972
|
} = props,
|
|
7973
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
7973
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$2p);
|
|
7974
7974
|
const ownerState = _extends$1({}, props, {
|
|
7975
7975
|
component,
|
|
7976
7976
|
disableGutters,
|
|
@@ -7979,7 +7979,7 @@ function createContainer$1(options = {}) {
|
|
|
7979
7979
|
});
|
|
7980
7980
|
|
|
7981
7981
|
// @ts-ignore module augmentation fails if custom breakpoints are used
|
|
7982
|
-
const classes = useUtilityClasses$
|
|
7982
|
+
const classes = useUtilityClasses$1W(ownerState, componentName);
|
|
7983
7983
|
return (
|
|
7984
7984
|
/*#__PURE__*/
|
|
7985
7985
|
// @ts-ignore theme is injected by the styled util
|
|
@@ -8006,7 +8006,7 @@ function createContainer$1(options = {}) {
|
|
|
8006
8006
|
return Container;
|
|
8007
8007
|
}
|
|
8008
8008
|
|
|
8009
|
-
const _excluded$
|
|
8009
|
+
const _excluded$2o = ["component", "direction", "spacing", "divider", "children", "className", "useFlexGap"];
|
|
8010
8010
|
const defaultTheme$3 = createTheme$2();
|
|
8011
8011
|
// widening Theme to any so that the consumer can own the theme structure.
|
|
8012
8012
|
const defaultCreateStyledComponent = systemStyled('div', {
|
|
@@ -8139,7 +8139,7 @@ function createStack(options = {}) {
|
|
|
8139
8139
|
className,
|
|
8140
8140
|
useFlexGap = false
|
|
8141
8141
|
} = props,
|
|
8142
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
8142
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$2o);
|
|
8143
8143
|
const ownerState = {
|
|
8144
8144
|
direction,
|
|
8145
8145
|
spacing,
|
|
@@ -8313,7 +8313,7 @@ const green = {
|
|
|
8313
8313
|
};
|
|
8314
8314
|
var green$1 = green;
|
|
8315
8315
|
|
|
8316
|
-
const _excluded$
|
|
8316
|
+
const _excluded$2n = ["mode", "contrastThreshold", "tonalOffset"];
|
|
8317
8317
|
const light = {
|
|
8318
8318
|
// The colors used to style the text.
|
|
8319
8319
|
text: {
|
|
@@ -8482,7 +8482,7 @@ function createPalette(palette) {
|
|
|
8482
8482
|
contrastThreshold = 3,
|
|
8483
8483
|
tonalOffset = 0.2
|
|
8484
8484
|
} = palette,
|
|
8485
|
-
other = _objectWithoutPropertiesLoose(palette, _excluded$
|
|
8485
|
+
other = _objectWithoutPropertiesLoose(palette, _excluded$2n);
|
|
8486
8486
|
const primary = palette.primary || getDefaultPrimary(mode);
|
|
8487
8487
|
const secondary = palette.secondary || getDefaultSecondary(mode);
|
|
8488
8488
|
const error = palette.error || getDefaultError(mode);
|
|
@@ -8606,7 +8606,7 @@ const theme2 = createTheme({ palette: {
|
|
|
8606
8606
|
return paletteOutput;
|
|
8607
8607
|
}
|
|
8608
8608
|
|
|
8609
|
-
const _excluded$
|
|
8609
|
+
const _excluded$2m = ["fontFamily", "fontSize", "fontWeightLight", "fontWeightRegular", "fontWeightMedium", "fontWeightBold", "htmlFontSize", "allVariants", "pxToRem"];
|
|
8610
8610
|
function round$3(value) {
|
|
8611
8611
|
return Math.round(value * 1e5) / 1e5;
|
|
8612
8612
|
}
|
|
@@ -8637,7 +8637,7 @@ function createTypography(palette, typography) {
|
|
|
8637
8637
|
allVariants,
|
|
8638
8638
|
pxToRem: pxToRem2
|
|
8639
8639
|
} = _ref,
|
|
8640
|
-
other = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
8640
|
+
other = _objectWithoutPropertiesLoose(_ref, _excluded$2m);
|
|
8641
8641
|
if (process.env.NODE_ENV !== 'production') {
|
|
8642
8642
|
if (typeof fontSize !== 'number') {
|
|
8643
8643
|
console.error('MUI: `fontSize` is required to be a number.');
|
|
@@ -8705,7 +8705,7 @@ function createShadow(...px) {
|
|
|
8705
8705
|
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)];
|
|
8706
8706
|
var shadows$1 = shadows;
|
|
8707
8707
|
|
|
8708
|
-
const _excluded$
|
|
8708
|
+
const _excluded$2l = ["duration", "easing", "delay"];
|
|
8709
8709
|
// Follow https://material.google.com/motion/duration-easing.html#duration-easing-natural-easing-curves
|
|
8710
8710
|
// to learn the context in which each easing should be used.
|
|
8711
8711
|
const easing = {
|
|
@@ -8756,7 +8756,7 @@ function createTransitions(inputTransitions) {
|
|
|
8756
8756
|
easing: easingOption = mergedEasing.easeInOut,
|
|
8757
8757
|
delay = 0
|
|
8758
8758
|
} = options,
|
|
8759
|
-
other = _objectWithoutPropertiesLoose(options, _excluded$
|
|
8759
|
+
other = _objectWithoutPropertiesLoose(options, _excluded$2l);
|
|
8760
8760
|
if (process.env.NODE_ENV !== 'production') {
|
|
8761
8761
|
const isString = value => typeof value === 'string';
|
|
8762
8762
|
// IE11 support, replace with Number.isNaN
|
|
@@ -8806,7 +8806,7 @@ const zIndex$1 = {
|
|
|
8806
8806
|
};
|
|
8807
8807
|
var zIndex$2 = zIndex$1;
|
|
8808
8808
|
|
|
8809
|
-
const _excluded$
|
|
8809
|
+
const _excluded$2k = ["breakpoints", "mixins", "spacing", "palette", "transitions", "typography", "shape"];
|
|
8810
8810
|
function createTheme(options = {}, ...args) {
|
|
8811
8811
|
const {
|
|
8812
8812
|
mixins: mixinsInput = {},
|
|
@@ -8814,7 +8814,7 @@ function createTheme(options = {}, ...args) {
|
|
|
8814
8814
|
transitions: transitionsInput = {},
|
|
8815
8815
|
typography: typographyInput = {}
|
|
8816
8816
|
} = options,
|
|
8817
|
-
other = _objectWithoutPropertiesLoose(options, _excluded$
|
|
8817
|
+
other = _objectWithoutPropertiesLoose(options, _excluded$2k);
|
|
8818
8818
|
if (options.vars &&
|
|
8819
8819
|
// The error should throw only for the root theme creation because user is not allowed to use a custom node `vars`.
|
|
8820
8820
|
// `generateCssVars` is the closest identifier for checking that the `options` is a result of `extendTheme` with CSS variables so that user can create new theme for nested ThemeProvider.
|
|
@@ -8984,7 +8984,7 @@ var _capitalize = _interopRequireDefault$1H(require$$5);
|
|
|
8984
8984
|
var _getDisplayName = _interopRequireDefault$1H(require$$6);
|
|
8985
8985
|
var _createTheme = _interopRequireDefault$1H(require$$7);
|
|
8986
8986
|
var _styleFunctionSx = _interopRequireDefault$1H(require$$8);
|
|
8987
|
-
const _excluded$
|
|
8987
|
+
const _excluded$2j = ["ownerState"],
|
|
8988
8988
|
_excluded2$h = ["variants"],
|
|
8989
8989
|
_excluded3$5 = ["name", "slot", "skipVariantsResolver", "skipSx", "overridesResolver"];
|
|
8990
8990
|
/* eslint-disable no-underscore-dangle */
|
|
@@ -9038,7 +9038,7 @@ function processStyleArg(callableStyle, _ref, layerName) {
|
|
|
9038
9038
|
let {
|
|
9039
9039
|
ownerState
|
|
9040
9040
|
} = _ref,
|
|
9041
|
-
props = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded$
|
|
9041
|
+
props = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded$2j);
|
|
9042
9042
|
const resolvedStylesArg = typeof callableStyle === 'function' ? callableStyle((0, _extends2.default)({
|
|
9043
9043
|
ownerState
|
|
9044
9044
|
}, props)) : callableStyle;
|
|
@@ -9246,12 +9246,12 @@ const styled = _default({
|
|
|
9246
9246
|
});
|
|
9247
9247
|
var styled$1 = styled;
|
|
9248
9248
|
|
|
9249
|
-
const _excluded$
|
|
9249
|
+
const _excluded$2i = ["theme"];
|
|
9250
9250
|
function ThemeProvider$1(_ref) {
|
|
9251
9251
|
let {
|
|
9252
9252
|
theme: themeInput
|
|
9253
9253
|
} = _ref,
|
|
9254
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
9254
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$2i);
|
|
9255
9255
|
const scopedTheme = themeInput[THEME_ID];
|
|
9256
9256
|
let finalTheme = scopedTheme || themeInput;
|
|
9257
9257
|
if (typeof themeInput !== 'function') {
|
|
@@ -10752,7 +10752,7 @@ function getTransitionProps(props, options) {
|
|
|
10752
10752
|
};
|
|
10753
10753
|
}
|
|
10754
10754
|
|
|
10755
|
-
const _excluded$
|
|
10755
|
+
const _excluded$2h = ["addEndListener", "appear", "children", "easing", "in", "onEnter", "onEntered", "onEntering", "onExit", "onExited", "onExiting", "style", "timeout", "TransitionComponent"];
|
|
10756
10756
|
function getScale(value) {
|
|
10757
10757
|
return `scale(${value}, ${value ** 2})`;
|
|
10758
10758
|
}
|
|
@@ -10796,7 +10796,7 @@ const Grow = /*#__PURE__*/React__namespace.forwardRef(function Grow(props, ref)
|
|
|
10796
10796
|
// eslint-disable-next-line react/prop-types
|
|
10797
10797
|
TransitionComponent = Transition$1
|
|
10798
10798
|
} = props,
|
|
10799
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
10799
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$2h);
|
|
10800
10800
|
const timer = useTimeout$1();
|
|
10801
10801
|
const autoTimeout = React__namespace.useRef();
|
|
10802
10802
|
const theme = useTheme$1();
|
|
@@ -12895,7 +12895,7 @@ function getPopperUtilityClass(slot) {
|
|
|
12895
12895
|
}
|
|
12896
12896
|
generateUtilityClasses$1('MuiPopper', ['root']);
|
|
12897
12897
|
|
|
12898
|
-
const _excluded$
|
|
12898
|
+
const _excluded$2g = ["anchorEl", "children", "direction", "disablePortal", "modifiers", "open", "placement", "popperOptions", "popperRef", "slotProps", "slots", "TransitionProps", "ownerState"],
|
|
12899
12899
|
_excluded2$g = ["anchorEl", "children", "container", "direction", "disablePortal", "keepMounted", "modifiers", "open", "placement", "popperOptions", "popperRef", "style", "transition", "slotProps", "slots"];
|
|
12900
12900
|
function flipPlacement(placement, direction) {
|
|
12901
12901
|
if (direction === 'ltr') {
|
|
@@ -12923,7 +12923,7 @@ function isHTMLElement$2(element) {
|
|
|
12923
12923
|
function isVirtualElement(element) {
|
|
12924
12924
|
return !isHTMLElement$2(element);
|
|
12925
12925
|
}
|
|
12926
|
-
const useUtilityClasses$
|
|
12926
|
+
const useUtilityClasses$1V = ownerState => {
|
|
12927
12927
|
const {
|
|
12928
12928
|
classes
|
|
12929
12929
|
} = ownerState;
|
|
@@ -12951,7 +12951,7 @@ const PopperTooltip = /*#__PURE__*/React__namespace.forwardRef(function PopperTo
|
|
|
12951
12951
|
// @ts-ignore internal logic
|
|
12952
12952
|
// prevent from spreading to DOM, it can come from the parent component e.g. Select.
|
|
12953
12953
|
} = props,
|
|
12954
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
12954
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$2g);
|
|
12955
12955
|
const tooltipRef = React__namespace.useRef(null);
|
|
12956
12956
|
const ownRef = useForkRef$1(tooltipRef, forwardedRef);
|
|
12957
12957
|
const popperRef = React__namespace.useRef(null);
|
|
@@ -13036,7 +13036,7 @@ const PopperTooltip = /*#__PURE__*/React__namespace.forwardRef(function PopperTo
|
|
|
13036
13036
|
if (TransitionProps !== null) {
|
|
13037
13037
|
childProps.TransitionProps = TransitionProps;
|
|
13038
13038
|
}
|
|
13039
|
-
const classes = useUtilityClasses$
|
|
13039
|
+
const classes = useUtilityClasses$1V(props);
|
|
13040
13040
|
const Root = (_slots$root = slots.root) != null ? _slots$root : 'div';
|
|
13041
13041
|
const rootProps = useSlotProps$1({
|
|
13042
13042
|
elementType: Root,
|
|
@@ -13255,7 +13255,7 @@ process.env.NODE_ENV !== "production" ? Popper$1.propTypes /* remove-proptypes *
|
|
|
13255
13255
|
} : void 0;
|
|
13256
13256
|
var BasePopper = Popper$1;
|
|
13257
13257
|
|
|
13258
|
-
const _excluded$
|
|
13258
|
+
const _excluded$2f = ["anchorEl", "component", "components", "componentsProps", "container", "disablePortal", "keepMounted", "modifiers", "open", "placement", "popperOptions", "popperRef", "transition", "slots", "slotProps"];
|
|
13259
13259
|
const PopperRoot = styled$1(BasePopper, {
|
|
13260
13260
|
name: 'MuiPopper',
|
|
13261
13261
|
slot: 'Root',
|
|
@@ -13298,7 +13298,7 @@ const Popper = /*#__PURE__*/React__namespace.forwardRef(function Popper(inProps,
|
|
|
13298
13298
|
slots,
|
|
13299
13299
|
slotProps
|
|
13300
13300
|
} = props,
|
|
13301
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
13301
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$2f);
|
|
13302
13302
|
const RootComponent = (_slots$root = slots == null ? void 0 : slots.root) != null ? _slots$root : components == null ? void 0 : components.Root;
|
|
13303
13303
|
const otherProps = _extends$1({
|
|
13304
13304
|
anchorEl,
|
|
@@ -13458,11 +13458,11 @@ function getTooltipUtilityClass(slot) {
|
|
|
13458
13458
|
const tooltipClasses = generateUtilityClasses$1('MuiTooltip', ['popper', 'popperInteractive', 'popperArrow', 'popperClose', 'tooltip', 'tooltipArrow', 'touch', 'tooltipPlacementLeft', 'tooltipPlacementRight', 'tooltipPlacementTop', 'tooltipPlacementBottom', 'arrow']);
|
|
13459
13459
|
var tooltipClasses$1 = tooltipClasses;
|
|
13460
13460
|
|
|
13461
|
-
const _excluded$
|
|
13461
|
+
const _excluded$2e = ["arrow", "children", "classes", "components", "componentsProps", "describeChild", "disableFocusListener", "disableHoverListener", "disableInteractive", "disableTouchListener", "enterDelay", "enterNextDelay", "enterTouchDelay", "followCursor", "id", "leaveDelay", "leaveTouchDelay", "onClose", "onOpen", "open", "placement", "PopperComponent", "PopperProps", "slotProps", "slots", "title", "TransitionComponent", "TransitionProps"];
|
|
13462
13462
|
function round$1(value) {
|
|
13463
13463
|
return Math.round(value * 1e5) / 1e5;
|
|
13464
13464
|
}
|
|
13465
|
-
const useUtilityClasses$
|
|
13465
|
+
const useUtilityClasses$1U = ownerState => {
|
|
13466
13466
|
const {
|
|
13467
13467
|
classes,
|
|
13468
13468
|
disableInteractive,
|
|
@@ -13680,7 +13680,7 @@ const Tooltip = /*#__PURE__*/React__namespace.forwardRef(function Tooltip(inProp
|
|
|
13680
13680
|
TransitionComponent: TransitionComponentProp = Grow$1,
|
|
13681
13681
|
TransitionProps
|
|
13682
13682
|
} = props,
|
|
13683
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
13683
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$2e);
|
|
13684
13684
|
|
|
13685
13685
|
// to prevent runtime errors, developers will need to provide a child as a React element anyway.
|
|
13686
13686
|
const children = /*#__PURE__*/React__namespace.isValidElement(childrenProp) ? childrenProp : /*#__PURE__*/require$$2$1.jsx("span", {
|
|
@@ -13956,7 +13956,7 @@ const Tooltip = /*#__PURE__*/React__namespace.forwardRef(function Tooltip(inProp
|
|
|
13956
13956
|
PopperComponentProp,
|
|
13957
13957
|
touch: ignoreNonTouchEvents.current
|
|
13958
13958
|
});
|
|
13959
|
-
const classes = useUtilityClasses$
|
|
13959
|
+
const classes = useUtilityClasses$1U(ownerState);
|
|
13960
13960
|
const PopperComponent = (_ref = (_slots$popper = slots.popper) != null ? _slots$popper : components.Popper) != null ? _ref : TooltipPopper;
|
|
13961
13961
|
const TransitionComponent = (_ref2 = (_ref3 = (_slots$transition = slots.transition) != null ? _slots$transition : components.Transition) != null ? _ref3 : TransitionComponentProp) != null ? _ref2 : Grow$1;
|
|
13962
13962
|
const TooltipComponent = (_ref4 = (_slots$tooltip = slots.tooltip) != null ? _slots$tooltip : components.Tooltip) != null ? _ref4 : TooltipTooltip;
|
|
@@ -14221,8 +14221,8 @@ function getSvgIconUtilityClass(slot) {
|
|
|
14221
14221
|
}
|
|
14222
14222
|
generateUtilityClasses$1('MuiSvgIcon', ['root', 'colorPrimary', 'colorSecondary', 'colorAction', 'colorError', 'colorDisabled', 'fontSizeInherit', 'fontSizeSmall', 'fontSizeMedium', 'fontSizeLarge']);
|
|
14223
14223
|
|
|
14224
|
-
const _excluded$
|
|
14225
|
-
const useUtilityClasses$
|
|
14224
|
+
const _excluded$2d = ["children", "className", "color", "component", "fontSize", "htmlColor", "inheritViewBox", "titleAccess", "viewBox"];
|
|
14225
|
+
const useUtilityClasses$1T = ownerState => {
|
|
14226
14226
|
const {
|
|
14227
14227
|
color,
|
|
14228
14228
|
fontSize,
|
|
@@ -14289,7 +14289,7 @@ const SvgIcon = /*#__PURE__*/React__namespace.forwardRef(function SvgIcon(inProp
|
|
|
14289
14289
|
titleAccess,
|
|
14290
14290
|
viewBox = '0 0 24 24'
|
|
14291
14291
|
} = props,
|
|
14292
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
14292
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$2d);
|
|
14293
14293
|
const hasSvgAsChild = /*#__PURE__*/React__namespace.isValidElement(children) && children.type === 'svg';
|
|
14294
14294
|
const ownerState = _extends$1({}, props, {
|
|
14295
14295
|
color,
|
|
@@ -14304,7 +14304,7 @@ const SvgIcon = /*#__PURE__*/React__namespace.forwardRef(function SvgIcon(inProp
|
|
|
14304
14304
|
if (!inheritViewBox) {
|
|
14305
14305
|
more.viewBox = viewBox;
|
|
14306
14306
|
}
|
|
14307
|
-
const classes = useUtilityClasses$
|
|
14307
|
+
const classes = useUtilityClasses$1T(ownerState);
|
|
14308
14308
|
return /*#__PURE__*/require$$2$1.jsxs(SvgIconRoot, _extends$1({
|
|
14309
14309
|
as: component,
|
|
14310
14310
|
className: clsx(classes.root, className),
|
|
@@ -14486,8 +14486,8 @@ function getCollapseUtilityClass(slot) {
|
|
|
14486
14486
|
}
|
|
14487
14487
|
generateUtilityClasses$1('MuiCollapse', ['root', 'horizontal', 'vertical', 'entered', 'hidden', 'wrapper', 'wrapperInner']);
|
|
14488
14488
|
|
|
14489
|
-
const _excluded$
|
|
14490
|
-
const useUtilityClasses$
|
|
14489
|
+
const _excluded$2c = ["addEndListener", "children", "className", "collapsedSize", "component", "easing", "in", "onEnter", "onEntered", "onEntering", "onExit", "onExited", "onExiting", "orientation", "style", "timeout", "TransitionComponent"];
|
|
14490
|
+
const useUtilityClasses$1S = ownerState => {
|
|
14491
14491
|
const {
|
|
14492
14492
|
orientation,
|
|
14493
14493
|
classes
|
|
@@ -14586,12 +14586,12 @@ const Collapse = /*#__PURE__*/React__namespace.forwardRef(function Collapse(inPr
|
|
|
14586
14586
|
// eslint-disable-next-line react/prop-types
|
|
14587
14587
|
TransitionComponent = Transition$1
|
|
14588
14588
|
} = props,
|
|
14589
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
14589
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$2c);
|
|
14590
14590
|
const ownerState = _extends$1({}, props, {
|
|
14591
14591
|
orientation,
|
|
14592
14592
|
collapsedSize: collapsedSizeProp
|
|
14593
14593
|
});
|
|
14594
|
-
const classes = useUtilityClasses$
|
|
14594
|
+
const classes = useUtilityClasses$1S(ownerState);
|
|
14595
14595
|
const theme = useTheme$1();
|
|
14596
14596
|
const timer = useTimeout$1();
|
|
14597
14597
|
const wrapperRef = React__namespace.useRef(null);
|
|
@@ -14850,8 +14850,8 @@ function getPaperUtilityClass(slot) {
|
|
|
14850
14850
|
}
|
|
14851
14851
|
generateUtilityClasses$1('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']);
|
|
14852
14852
|
|
|
14853
|
-
const _excluded$
|
|
14854
|
-
const useUtilityClasses$
|
|
14853
|
+
const _excluded$2b = ["className", "component", "elevation", "square", "variant"];
|
|
14854
|
+
const useUtilityClasses$1R = ownerState => {
|
|
14855
14855
|
const {
|
|
14856
14856
|
square,
|
|
14857
14857
|
elevation,
|
|
@@ -14905,14 +14905,14 @@ const Paper = /*#__PURE__*/React__namespace.forwardRef(function Paper(inProps, r
|
|
|
14905
14905
|
square = false,
|
|
14906
14906
|
variant = 'elevation'
|
|
14907
14907
|
} = props,
|
|
14908
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
14908
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$2b);
|
|
14909
14909
|
const ownerState = _extends$1({}, props, {
|
|
14910
14910
|
component,
|
|
14911
14911
|
elevation,
|
|
14912
14912
|
square,
|
|
14913
14913
|
variant
|
|
14914
14914
|
});
|
|
14915
|
-
const classes = useUtilityClasses$
|
|
14915
|
+
const classes = useUtilityClasses$1R(ownerState);
|
|
14916
14916
|
if (process.env.NODE_ENV !== 'production') {
|
|
14917
14917
|
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
14918
14918
|
const theme = useTheme$1();
|
|
@@ -14991,7 +14991,7 @@ if (process.env.NODE_ENV !== 'production') {
|
|
|
14991
14991
|
}
|
|
14992
14992
|
var AccordionContext$1 = AccordionContext;
|
|
14993
14993
|
|
|
14994
|
-
const _excluded$
|
|
14994
|
+
const _excluded$2a = ["className", "elementType", "ownerState", "externalForwardedProps", "getSlotOwnerState", "internalForwardedProps"],
|
|
14995
14995
|
_excluded2$f = ["component", "slots", "slotProps"],
|
|
14996
14996
|
_excluded3$4 = ["component"];
|
|
14997
14997
|
/**
|
|
@@ -15024,7 +15024,7 @@ name, parameters) {
|
|
|
15024
15024
|
getSlotOwnerState,
|
|
15025
15025
|
internalForwardedProps
|
|
15026
15026
|
} = parameters,
|
|
15027
|
-
useSlotPropsParams = _objectWithoutPropertiesLoose(parameters, _excluded$
|
|
15027
|
+
useSlotPropsParams = _objectWithoutPropertiesLoose(parameters, _excluded$2a);
|
|
15028
15028
|
const {
|
|
15029
15029
|
component: rootComponent,
|
|
15030
15030
|
slots = {
|
|
@@ -15074,8 +15074,8 @@ function getAccordionUtilityClass(slot) {
|
|
|
15074
15074
|
const accordionClasses = generateUtilityClasses$1('MuiAccordion', ['root', 'rounded', 'expanded', 'disabled', 'gutters', 'region']);
|
|
15075
15075
|
var accordionClasses$1 = accordionClasses;
|
|
15076
15076
|
|
|
15077
|
-
const _excluded$
|
|
15078
|
-
const useUtilityClasses$
|
|
15077
|
+
const _excluded$29 = ["children", "className", "defaultExpanded", "disabled", "disableGutters", "expanded", "onChange", "square", "slots", "slotProps", "TransitionComponent", "TransitionProps"];
|
|
15078
|
+
const useUtilityClasses$1Q = ownerState => {
|
|
15079
15079
|
const {
|
|
15080
15080
|
classes,
|
|
15081
15081
|
square,
|
|
@@ -15196,7 +15196,7 @@ const Accordion = /*#__PURE__*/React__namespace.forwardRef(function Accordion(in
|
|
|
15196
15196
|
TransitionComponent: TransitionComponentProp,
|
|
15197
15197
|
TransitionProps: TransitionPropsProp
|
|
15198
15198
|
} = props,
|
|
15199
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
15199
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$29);
|
|
15200
15200
|
const [expanded, setExpandedState] = useControlled$1({
|
|
15201
15201
|
controlled: expandedProp,
|
|
15202
15202
|
default: defaultExpanded,
|
|
@@ -15222,7 +15222,7 @@ const Accordion = /*#__PURE__*/React__namespace.forwardRef(function Accordion(in
|
|
|
15222
15222
|
disableGutters,
|
|
15223
15223
|
expanded
|
|
15224
15224
|
});
|
|
15225
|
-
const classes = useUtilityClasses$
|
|
15225
|
+
const classes = useUtilityClasses$1Q(ownerState);
|
|
15226
15226
|
const backwardCompatibleSlots = _extends$1({
|
|
15227
15227
|
transition: TransitionComponentProp
|
|
15228
15228
|
}, slots);
|
|
@@ -15356,8 +15356,8 @@ function getAccordionDetailsUtilityClass(slot) {
|
|
|
15356
15356
|
}
|
|
15357
15357
|
generateUtilityClasses$1('MuiAccordionDetails', ['root']);
|
|
15358
15358
|
|
|
15359
|
-
const _excluded$
|
|
15360
|
-
const useUtilityClasses$
|
|
15359
|
+
const _excluded$28 = ["className"];
|
|
15360
|
+
const useUtilityClasses$1P = ownerState => {
|
|
15361
15361
|
const {
|
|
15362
15362
|
classes
|
|
15363
15363
|
} = ownerState;
|
|
@@ -15383,9 +15383,9 @@ const AccordionDetails = /*#__PURE__*/React__namespace.forwardRef(function Accor
|
|
|
15383
15383
|
const {
|
|
15384
15384
|
className
|
|
15385
15385
|
} = props,
|
|
15386
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
15386
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$28);
|
|
15387
15387
|
const ownerState = props;
|
|
15388
|
-
const classes = useUtilityClasses$
|
|
15388
|
+
const classes = useUtilityClasses$1P(ownerState);
|
|
15389
15389
|
return /*#__PURE__*/require$$2$1.jsx(AccordionDetailsRoot, _extends$1({
|
|
15390
15390
|
className: clsx(classes.root, className),
|
|
15391
15391
|
ref: ref,
|
|
@@ -15497,7 +15497,7 @@ process.env.NODE_ENV !== "production" ? Ripple.propTypes = {
|
|
|
15497
15497
|
const touchRippleClasses = generateUtilityClasses$1('MuiTouchRipple', ['root', 'ripple', 'rippleVisible', 'ripplePulsate', 'child', 'childLeaving', 'childPulsate']);
|
|
15498
15498
|
var touchRippleClasses$1 = touchRippleClasses;
|
|
15499
15499
|
|
|
15500
|
-
const _excluded$
|
|
15500
|
+
const _excluded$27 = ["center", "classes", "className"];
|
|
15501
15501
|
let _$6 = t => t,
|
|
15502
15502
|
_t$3,
|
|
15503
15503
|
_t2$3,
|
|
@@ -15626,7 +15626,7 @@ const TouchRipple = /*#__PURE__*/React__namespace.forwardRef(function TouchRippl
|
|
|
15626
15626
|
classes = {},
|
|
15627
15627
|
className
|
|
15628
15628
|
} = props,
|
|
15629
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
15629
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$27);
|
|
15630
15630
|
const [ripples, setRipples] = React__namespace.useState([]);
|
|
15631
15631
|
const nextKey = React__namespace.useRef(0);
|
|
15632
15632
|
const rippleCallback = React__namespace.useRef(null);
|
|
@@ -15822,8 +15822,8 @@ function getButtonBaseUtilityClass(slot) {
|
|
|
15822
15822
|
const buttonBaseClasses = generateUtilityClasses$1('MuiButtonBase', ['root', 'disabled', 'focusVisible']);
|
|
15823
15823
|
var buttonBaseClasses$1 = buttonBaseClasses;
|
|
15824
15824
|
|
|
15825
|
-
const _excluded$
|
|
15826
|
-
const useUtilityClasses$
|
|
15825
|
+
const _excluded$26 = ["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"];
|
|
15826
|
+
const useUtilityClasses$1O = ownerState => {
|
|
15827
15827
|
const {
|
|
15828
15828
|
disabled,
|
|
15829
15829
|
focusVisible,
|
|
@@ -15923,7 +15923,7 @@ const ButtonBase = /*#__PURE__*/React__namespace.forwardRef(function ButtonBase(
|
|
|
15923
15923
|
touchRippleRef,
|
|
15924
15924
|
type
|
|
15925
15925
|
} = props,
|
|
15926
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
15926
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$26);
|
|
15927
15927
|
const buttonRef = React__namespace.useRef(null);
|
|
15928
15928
|
const rippleRef = React__namespace.useRef(null);
|
|
15929
15929
|
const handleRippleRef = useForkRef$1(rippleRef, touchRippleRef);
|
|
@@ -16090,7 +16090,7 @@ const ButtonBase = /*#__PURE__*/React__namespace.forwardRef(function ButtonBase(
|
|
|
16090
16090
|
tabIndex,
|
|
16091
16091
|
focusVisible
|
|
16092
16092
|
});
|
|
16093
|
-
const classes = useUtilityClasses$
|
|
16093
|
+
const classes = useUtilityClasses$1O(ownerState);
|
|
16094
16094
|
return /*#__PURE__*/require$$2$1.jsxs(ButtonBaseRoot, _extends$1({
|
|
16095
16095
|
as: ComponentProp,
|
|
16096
16096
|
className: clsx(classes.root, className),
|
|
@@ -16287,8 +16287,8 @@ function getAccordionSummaryUtilityClass(slot) {
|
|
|
16287
16287
|
const accordionSummaryClasses = generateUtilityClasses$1('MuiAccordionSummary', ['root', 'expanded', 'focusVisible', 'disabled', 'gutters', 'contentGutters', 'content', 'expandIconWrapper']);
|
|
16288
16288
|
var accordionSummaryClasses$1 = accordionSummaryClasses;
|
|
16289
16289
|
|
|
16290
|
-
const _excluded$
|
|
16291
|
-
const useUtilityClasses$
|
|
16290
|
+
const _excluded$25 = ["children", "className", "expandIcon", "focusVisibleClassName", "onClick"];
|
|
16291
|
+
const useUtilityClasses$1N = ownerState => {
|
|
16292
16292
|
const {
|
|
16293
16293
|
classes,
|
|
16294
16294
|
expanded,
|
|
@@ -16388,7 +16388,7 @@ const AccordionSummary = /*#__PURE__*/React__namespace.forwardRef(function Accor
|
|
|
16388
16388
|
focusVisibleClassName,
|
|
16389
16389
|
onClick
|
|
16390
16390
|
} = props,
|
|
16391
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
16391
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$25);
|
|
16392
16392
|
const {
|
|
16393
16393
|
disabled = false,
|
|
16394
16394
|
disableGutters,
|
|
@@ -16408,7 +16408,7 @@ const AccordionSummary = /*#__PURE__*/React__namespace.forwardRef(function Accor
|
|
|
16408
16408
|
disabled,
|
|
16409
16409
|
disableGutters
|
|
16410
16410
|
});
|
|
16411
|
-
const classes = useUtilityClasses$
|
|
16411
|
+
const classes = useUtilityClasses$1N(ownerState);
|
|
16412
16412
|
return /*#__PURE__*/require$$2$1.jsxs(AccordionSummaryRoot, _extends$1({
|
|
16413
16413
|
focusRipple: false,
|
|
16414
16414
|
disableRipple: true,
|
|
@@ -16485,8 +16485,8 @@ function getIconButtonUtilityClass(slot) {
|
|
|
16485
16485
|
const iconButtonClasses = generateUtilityClasses$1('MuiIconButton', ['root', 'disabled', 'colorInherit', 'colorPrimary', 'colorSecondary', 'colorError', 'colorInfo', 'colorSuccess', 'colorWarning', 'edgeStart', 'edgeEnd', 'sizeSmall', 'sizeMedium', 'sizeLarge']);
|
|
16486
16486
|
var iconButtonClasses$1 = iconButtonClasses;
|
|
16487
16487
|
|
|
16488
|
-
const _excluded$
|
|
16489
|
-
const useUtilityClasses$
|
|
16488
|
+
const _excluded$24 = ["edge", "children", "className", "color", "disabled", "disableFocusRipple", "size"];
|
|
16489
|
+
const useUtilityClasses$1M = ownerState => {
|
|
16490
16490
|
const {
|
|
16491
16491
|
classes,
|
|
16492
16492
|
disabled,
|
|
@@ -16586,7 +16586,7 @@ const IconButton = /*#__PURE__*/React__namespace.forwardRef(function IconButton(
|
|
|
16586
16586
|
disableFocusRipple = false,
|
|
16587
16587
|
size = 'medium'
|
|
16588
16588
|
} = props,
|
|
16589
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
16589
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$24);
|
|
16590
16590
|
const ownerState = _extends$1({}, props, {
|
|
16591
16591
|
edge,
|
|
16592
16592
|
color,
|
|
@@ -16594,7 +16594,7 @@ const IconButton = /*#__PURE__*/React__namespace.forwardRef(function IconButton(
|
|
|
16594
16594
|
disableFocusRipple,
|
|
16595
16595
|
size
|
|
16596
16596
|
});
|
|
16597
|
-
const classes = useUtilityClasses$
|
|
16597
|
+
const classes = useUtilityClasses$1M(ownerState);
|
|
16598
16598
|
return /*#__PURE__*/require$$2$1.jsx(IconButtonRoot, _extends$1({
|
|
16599
16599
|
className: clsx(classes.root, className),
|
|
16600
16600
|
centerRipple: true,
|
|
@@ -16695,8 +16695,8 @@ var ClearIcon$1 = createSvgIcon( /*#__PURE__*/require$$2$1.jsx("path", {
|
|
|
16695
16695
|
d: "M19 6.41L17.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"
|
|
16696
16696
|
}), 'Close');
|
|
16697
16697
|
|
|
16698
|
-
const _excluded$
|
|
16699
|
-
const useUtilityClasses$
|
|
16698
|
+
const _excluded$23 = ["action", "children", "className", "closeText", "color", "components", "componentsProps", "icon", "iconMapping", "onClose", "role", "severity", "slotProps", "slots", "variant"];
|
|
16699
|
+
const useUtilityClasses$1L = ownerState => {
|
|
16700
16700
|
const {
|
|
16701
16701
|
variant,
|
|
16702
16702
|
color,
|
|
@@ -16841,14 +16841,14 @@ const Alert = /*#__PURE__*/React__namespace.forwardRef(function Alert(inProps, r
|
|
|
16841
16841
|
slots = {},
|
|
16842
16842
|
variant = 'standard'
|
|
16843
16843
|
} = props,
|
|
16844
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
16844
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$23);
|
|
16845
16845
|
const ownerState = _extends$1({}, props, {
|
|
16846
16846
|
color,
|
|
16847
16847
|
severity,
|
|
16848
16848
|
variant,
|
|
16849
16849
|
colorSeverity: color || severity
|
|
16850
16850
|
});
|
|
16851
|
-
const classes = useUtilityClasses$
|
|
16851
|
+
const classes = useUtilityClasses$1L(ownerState);
|
|
16852
16852
|
const externalForwardedProps = {
|
|
16853
16853
|
slots: _extends$1({
|
|
16854
16854
|
closeButton: components.CloseButton,
|
|
@@ -17026,8 +17026,8 @@ function getTypographyUtilityClass(slot) {
|
|
|
17026
17026
|
}
|
|
17027
17027
|
generateUtilityClasses$1('MuiTypography', ['root', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'subtitle1', 'subtitle2', 'body1', 'body2', 'inherit', 'button', 'caption', 'overline', 'alignLeft', 'alignRight', 'alignCenter', 'alignJustify', 'noWrap', 'gutterBottom', 'paragraph']);
|
|
17028
17028
|
|
|
17029
|
-
const _excluded$
|
|
17030
|
-
const useUtilityClasses$
|
|
17029
|
+
const _excluded$22 = ["align", "className", "component", "gutterBottom", "noWrap", "paragraph", "variant", "variantMapping"];
|
|
17030
|
+
const useUtilityClasses$1K = ownerState => {
|
|
17031
17031
|
const {
|
|
17032
17032
|
align,
|
|
17033
17033
|
gutterBottom,
|
|
@@ -17113,7 +17113,7 @@ const Typography = /*#__PURE__*/React__namespace.forwardRef(function Typography(
|
|
|
17113
17113
|
variant = 'body1',
|
|
17114
17114
|
variantMapping = defaultVariantMapping
|
|
17115
17115
|
} = props,
|
|
17116
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
17116
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$22);
|
|
17117
17117
|
const ownerState = _extends$1({}, props, {
|
|
17118
17118
|
align,
|
|
17119
17119
|
color,
|
|
@@ -17126,7 +17126,7 @@ const Typography = /*#__PURE__*/React__namespace.forwardRef(function Typography(
|
|
|
17126
17126
|
variantMapping
|
|
17127
17127
|
});
|
|
17128
17128
|
const Component = component || (paragraph ? 'p' : variantMapping[variant] || defaultVariantMapping[variant]) || 'span';
|
|
17129
|
-
const classes = useUtilityClasses$
|
|
17129
|
+
const classes = useUtilityClasses$1K(ownerState);
|
|
17130
17130
|
return /*#__PURE__*/require$$2$1.jsx(TypographyRoot, _extends$1({
|
|
17131
17131
|
as: Component,
|
|
17132
17132
|
ref: ref,
|
|
@@ -17216,8 +17216,8 @@ function getAlertTitleUtilityClass(slot) {
|
|
|
17216
17216
|
}
|
|
17217
17217
|
generateUtilityClasses$1('MuiAlertTitle', ['root']);
|
|
17218
17218
|
|
|
17219
|
-
const _excluded$
|
|
17220
|
-
const useUtilityClasses$
|
|
17219
|
+
const _excluded$21 = ["className"];
|
|
17220
|
+
const useUtilityClasses$1J = ownerState => {
|
|
17221
17221
|
const {
|
|
17222
17222
|
classes
|
|
17223
17223
|
} = ownerState;
|
|
@@ -17246,9 +17246,9 @@ const AlertTitle = /*#__PURE__*/React__namespace.forwardRef(function AlertTitle(
|
|
|
17246
17246
|
const {
|
|
17247
17247
|
className
|
|
17248
17248
|
} = props,
|
|
17249
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
17249
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$21);
|
|
17250
17250
|
const ownerState = props;
|
|
17251
|
-
const classes = useUtilityClasses$
|
|
17251
|
+
const classes = useUtilityClasses$1J(ownerState);
|
|
17252
17252
|
return /*#__PURE__*/require$$2$1.jsx(AlertTitleRoot, _extends$1({
|
|
17253
17253
|
gutterBottom: true,
|
|
17254
17254
|
component: "div",
|
|
@@ -17286,8 +17286,8 @@ function getAppBarUtilityClass(slot) {
|
|
|
17286
17286
|
}
|
|
17287
17287
|
generateUtilityClasses$1('MuiAppBar', ['root', 'positionFixed', 'positionAbsolute', 'positionSticky', 'positionStatic', 'positionRelative', 'colorDefault', 'colorPrimary', 'colorSecondary', 'colorInherit', 'colorTransparent', 'colorError', 'colorInfo', 'colorSuccess', 'colorWarning']);
|
|
17288
17288
|
|
|
17289
|
-
const _excluded$
|
|
17290
|
-
const useUtilityClasses$
|
|
17289
|
+
const _excluded$20 = ["className", "color", "enableColorOnDark", "position"];
|
|
17290
|
+
const useUtilityClasses$1I = ownerState => {
|
|
17291
17291
|
const {
|
|
17292
17292
|
color,
|
|
17293
17293
|
position,
|
|
@@ -17393,13 +17393,13 @@ const AppBar = /*#__PURE__*/React__namespace.forwardRef(function AppBar(inProps,
|
|
|
17393
17393
|
enableColorOnDark = false,
|
|
17394
17394
|
position = 'fixed'
|
|
17395
17395
|
} = props,
|
|
17396
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
17396
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$20);
|
|
17397
17397
|
const ownerState = _extends$1({}, props, {
|
|
17398
17398
|
color,
|
|
17399
17399
|
position,
|
|
17400
17400
|
enableColorOnDark
|
|
17401
17401
|
});
|
|
17402
|
-
const classes = useUtilityClasses$
|
|
17402
|
+
const classes = useUtilityClasses$1I(ownerState);
|
|
17403
17403
|
return /*#__PURE__*/require$$2$1.jsx(AppBarRoot, _extends$1({
|
|
17404
17404
|
square: true,
|
|
17405
17405
|
component: "header",
|
|
@@ -18446,8 +18446,8 @@ function getListSubheaderUtilityClass(slot) {
|
|
|
18446
18446
|
}
|
|
18447
18447
|
generateUtilityClasses$1('MuiListSubheader', ['root', 'colorPrimary', 'colorInherit', 'gutters', 'inset', 'sticky']);
|
|
18448
18448
|
|
|
18449
|
-
const _excluded$
|
|
18450
|
-
const useUtilityClasses$
|
|
18449
|
+
const _excluded$1$ = ["className", "color", "component", "disableGutters", "disableSticky", "inset"];
|
|
18450
|
+
const useUtilityClasses$1H = ownerState => {
|
|
18451
18451
|
const {
|
|
18452
18452
|
classes,
|
|
18453
18453
|
color,
|
|
@@ -18508,7 +18508,7 @@ const ListSubheader = /*#__PURE__*/React__namespace.forwardRef(function ListSubh
|
|
|
18508
18508
|
disableSticky = false,
|
|
18509
18509
|
inset = false
|
|
18510
18510
|
} = props,
|
|
18511
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
18511
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$1$);
|
|
18512
18512
|
const ownerState = _extends$1({}, props, {
|
|
18513
18513
|
color,
|
|
18514
18514
|
component,
|
|
@@ -18516,7 +18516,7 @@ const ListSubheader = /*#__PURE__*/React__namespace.forwardRef(function ListSubh
|
|
|
18516
18516
|
disableSticky,
|
|
18517
18517
|
inset
|
|
18518
18518
|
});
|
|
18519
|
-
const classes = useUtilityClasses$
|
|
18519
|
+
const classes = useUtilityClasses$1H(ownerState);
|
|
18520
18520
|
return /*#__PURE__*/require$$2$1.jsx(ListSubheaderRoot, _extends$1({
|
|
18521
18521
|
as: component,
|
|
18522
18522
|
className: clsx(classes.root, className),
|
|
@@ -18584,8 +18584,8 @@ function getChipUtilityClass(slot) {
|
|
|
18584
18584
|
const chipClasses = generateUtilityClasses$1('MuiChip', ['root', 'sizeSmall', 'sizeMedium', 'colorError', 'colorInfo', 'colorPrimary', 'colorSecondary', 'colorSuccess', 'colorWarning', 'disabled', 'clickable', 'clickableColorPrimary', 'clickableColorSecondary', 'deletable', 'deletableColorPrimary', 'deletableColorSecondary', 'outlined', 'filled', 'outlinedPrimary', 'outlinedSecondary', 'filledPrimary', 'filledSecondary', 'avatar', 'avatarSmall', 'avatarMedium', 'avatarColorPrimary', 'avatarColorSecondary', 'icon', 'iconSmall', 'iconMedium', 'iconColorPrimary', 'iconColorSecondary', 'label', 'labelSmall', 'labelMedium', 'deleteIcon', 'deleteIconSmall', 'deleteIconMedium', 'deleteIconColorPrimary', 'deleteIconColorSecondary', 'deleteIconOutlinedColorPrimary', 'deleteIconOutlinedColorSecondary', 'deleteIconFilledColorPrimary', 'deleteIconFilledColorSecondary', 'focusVisible']);
|
|
18585
18585
|
var chipClasses$1 = chipClasses;
|
|
18586
18586
|
|
|
18587
|
-
const _excluded$
|
|
18588
|
-
const useUtilityClasses$
|
|
18587
|
+
const _excluded$1_ = ["avatar", "className", "clickable", "color", "component", "deleteIcon", "disabled", "icon", "label", "onClick", "onDelete", "onKeyDown", "onKeyUp", "size", "variant", "tabIndex", "skipFocusWhenDisabled"];
|
|
18588
|
+
const useUtilityClasses$1G = ownerState => {
|
|
18589
18589
|
const {
|
|
18590
18590
|
classes,
|
|
18591
18591
|
disabled,
|
|
@@ -18870,7 +18870,7 @@ const Chip = /*#__PURE__*/React__namespace.forwardRef(function Chip(inProps, ref
|
|
|
18870
18870
|
tabIndex,
|
|
18871
18871
|
skipFocusWhenDisabled = false // TODO v6: Rename to `focusableWhenDisabled`.
|
|
18872
18872
|
} = props,
|
|
18873
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
18873
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$1_);
|
|
18874
18874
|
const chipRef = React__namespace.useRef(null);
|
|
18875
18875
|
const handleRef = useForkRef$1(chipRef, ref);
|
|
18876
18876
|
const handleDeleteIconClick = event => {
|
|
@@ -18916,7 +18916,7 @@ const Chip = /*#__PURE__*/React__namespace.forwardRef(function Chip(inProps, ref
|
|
|
18916
18916
|
clickable,
|
|
18917
18917
|
variant
|
|
18918
18918
|
});
|
|
18919
|
-
const classes = useUtilityClasses$
|
|
18919
|
+
const classes = useUtilityClasses$1G(ownerState);
|
|
18920
18920
|
const moreProps = component === ButtonBase$1 ? _extends$1({
|
|
18921
18921
|
component: ComponentProp || 'div',
|
|
18922
18922
|
focusVisibleClassName: classes.focusVisible
|
|
@@ -19072,7 +19072,7 @@ process.env.NODE_ENV !== "production" ? Chip.propTypes /* remove-proptypes */ =
|
|
|
19072
19072
|
} : void 0;
|
|
19073
19073
|
var Chip$1 = Chip;
|
|
19074
19074
|
|
|
19075
|
-
const _excluded$
|
|
19075
|
+
const _excluded$1Z = ["onChange", "maxRows", "minRows", "style", "value"];
|
|
19076
19076
|
function getStyleValue(value) {
|
|
19077
19077
|
return parseInt(value, 10) || 0;
|
|
19078
19078
|
}
|
|
@@ -19120,7 +19120,7 @@ const TextareaAutosize = /*#__PURE__*/React__namespace.forwardRef(function Texta
|
|
|
19120
19120
|
style,
|
|
19121
19121
|
value
|
|
19122
19122
|
} = props,
|
|
19123
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
19123
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$1Z);
|
|
19124
19124
|
const {
|
|
19125
19125
|
current: isControlled
|
|
19126
19126
|
} = React__namespace.useRef(value != null);
|
|
@@ -19391,7 +19391,7 @@ function getInputBaseUtilityClass(slot) {
|
|
|
19391
19391
|
const inputBaseClasses = generateUtilityClasses$1('MuiInputBase', ['root', 'formControl', 'focused', 'disabled', 'adornedStart', 'adornedEnd', 'error', 'sizeSmall', 'multiline', 'colorSecondary', 'fullWidth', 'hiddenLabel', 'readOnly', 'input', 'inputSizeSmall', 'inputMultiline', 'inputTypeSearch', 'inputAdornedStart', 'inputAdornedEnd', 'inputHiddenLabel']);
|
|
19392
19392
|
var inputBaseClasses$1 = inputBaseClasses;
|
|
19393
19393
|
|
|
19394
|
-
const _excluded$
|
|
19394
|
+
const _excluded$1Y = ["aria-describedby", "autoComplete", "autoFocus", "className", "color", "components", "componentsProps", "defaultValue", "disabled", "disableInjectingGlobalStyles", "endAdornment", "error", "fullWidth", "id", "inputComponent", "inputProps", "inputRef", "margin", "maxRows", "minRows", "multiline", "name", "onBlur", "onChange", "onClick", "onFocus", "onKeyDown", "onKeyUp", "placeholder", "readOnly", "renderSuffix", "rows", "size", "slotProps", "slots", "startAdornment", "type", "value"];
|
|
19395
19395
|
const rootOverridesResolver = (props, styles) => {
|
|
19396
19396
|
const {
|
|
19397
19397
|
ownerState
|
|
@@ -19404,7 +19404,7 @@ const inputOverridesResolver = (props, styles) => {
|
|
|
19404
19404
|
} = props;
|
|
19405
19405
|
return [styles.input, ownerState.size === 'small' && styles.inputSizeSmall, ownerState.multiline && styles.inputMultiline, ownerState.type === 'search' && styles.inputTypeSearch, ownerState.startAdornment && styles.inputAdornedStart, ownerState.endAdornment && styles.inputAdornedEnd, ownerState.hiddenLabel && styles.inputHiddenLabel];
|
|
19406
19406
|
};
|
|
19407
|
-
const useUtilityClasses$
|
|
19407
|
+
const useUtilityClasses$1F = ownerState => {
|
|
19408
19408
|
const {
|
|
19409
19409
|
classes,
|
|
19410
19410
|
color,
|
|
@@ -19620,7 +19620,7 @@ const InputBase = /*#__PURE__*/React__namespace.forwardRef(function InputBase(in
|
|
|
19620
19620
|
type = 'text',
|
|
19621
19621
|
value: valueProp
|
|
19622
19622
|
} = props,
|
|
19623
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
19623
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$1Y);
|
|
19624
19624
|
const value = inputPropsProp.value != null ? inputPropsProp.value : valueProp;
|
|
19625
19625
|
const {
|
|
19626
19626
|
current: isControlled
|
|
@@ -19794,7 +19794,7 @@ const InputBase = /*#__PURE__*/React__namespace.forwardRef(function InputBase(in
|
|
|
19794
19794
|
startAdornment,
|
|
19795
19795
|
type
|
|
19796
19796
|
});
|
|
19797
|
-
const classes = useUtilityClasses$
|
|
19797
|
+
const classes = useUtilityClasses$1F(ownerState);
|
|
19798
19798
|
const Root = slots.root || components.Root || InputBaseRoot;
|
|
19799
19799
|
const rootProps = slotProps.root || componentsProps.root || {};
|
|
19800
19800
|
const Input = slots.input || components.Input || InputBaseComponent;
|
|
@@ -20105,11 +20105,11 @@ const autocompleteClasses = generateUtilityClasses$1('MuiAutocomplete', ['root',
|
|
|
20105
20105
|
var autocompleteClasses$1 = autocompleteClasses;
|
|
20106
20106
|
|
|
20107
20107
|
var _ClearIcon, _ArrowDropDownIcon;
|
|
20108
|
-
const _excluded$
|
|
20108
|
+
const _excluded$1X = ["autoComplete", "autoHighlight", "autoSelect", "blurOnSelect", "ChipProps", "className", "clearIcon", "clearOnBlur", "clearOnEscape", "clearText", "closeText", "componentsProps", "defaultValue", "disableClearable", "disableCloseOnSelect", "disabled", "disabledItemsFocusable", "disableListWrap", "disablePortal", "filterOptions", "filterSelectedOptions", "forcePopupIcon", "freeSolo", "fullWidth", "getLimitTagsText", "getOptionDisabled", "getOptionKey", "getOptionLabel", "isOptionEqualToValue", "groupBy", "handleHomeEndKeys", "id", "includeInputInList", "inputValue", "limitTags", "ListboxComponent", "ListboxProps", "loading", "loadingText", "multiple", "noOptionsText", "onChange", "onClose", "onHighlightChange", "onInputChange", "onOpen", "open", "openOnFocus", "openText", "options", "PaperComponent", "PopperComponent", "popupIcon", "readOnly", "renderGroup", "renderInput", "renderOption", "renderTags", "selectOnFocus", "size", "slotProps", "value"],
|
|
20109
20109
|
_excluded2$e = ["ref"],
|
|
20110
20110
|
_excluded3$3 = ["key"],
|
|
20111
20111
|
_excluded4$1 = ["key"];
|
|
20112
|
-
const useUtilityClasses$
|
|
20112
|
+
const useUtilityClasses$1E = ownerState => {
|
|
20113
20113
|
const {
|
|
20114
20114
|
classes,
|
|
20115
20115
|
disablePortal,
|
|
@@ -20540,7 +20540,7 @@ const Autocomplete = /*#__PURE__*/React__namespace.forwardRef(function Autocompl
|
|
|
20540
20540
|
size = 'medium',
|
|
20541
20541
|
slotProps = {}
|
|
20542
20542
|
} = props,
|
|
20543
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
20543
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$1X);
|
|
20544
20544
|
/* eslint-enable @typescript-eslint/no-unused-vars */
|
|
20545
20545
|
|
|
20546
20546
|
const {
|
|
@@ -20599,7 +20599,7 @@ const Autocomplete = /*#__PURE__*/React__namespace.forwardRef(function Autocompl
|
|
|
20599
20599
|
popupOpen,
|
|
20600
20600
|
size
|
|
20601
20601
|
});
|
|
20602
|
-
const classes = useUtilityClasses$
|
|
20602
|
+
const classes = useUtilityClasses$1E(ownerState);
|
|
20603
20603
|
let startAdornment;
|
|
20604
20604
|
if (multiple && value.length > 0) {
|
|
20605
20605
|
const getCustomizedTagProps = params => _extends$1({
|
|
@@ -21214,8 +21214,8 @@ function getAvatarUtilityClass(slot) {
|
|
|
21214
21214
|
const avatarClasses = generateUtilityClasses$1('MuiAvatar', ['root', 'colorDefault', 'circular', 'rounded', 'square', 'img', 'fallback']);
|
|
21215
21215
|
var avatarClasses$1 = avatarClasses;
|
|
21216
21216
|
|
|
21217
|
-
const _excluded$
|
|
21218
|
-
const useUtilityClasses$
|
|
21217
|
+
const _excluded$1W = ["alt", "children", "className", "component", "slots", "slotProps", "imgProps", "sizes", "src", "srcSet", "variant"];
|
|
21218
|
+
const useUtilityClasses$1D = ownerState => {
|
|
21219
21219
|
const {
|
|
21220
21220
|
classes,
|
|
21221
21221
|
variant,
|
|
@@ -21361,7 +21361,7 @@ const Avatar = /*#__PURE__*/React__namespace.forwardRef(function Avatar(inProps,
|
|
|
21361
21361
|
srcSet,
|
|
21362
21362
|
variant = 'circular'
|
|
21363
21363
|
} = props,
|
|
21364
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
21364
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$1W);
|
|
21365
21365
|
let children = null;
|
|
21366
21366
|
|
|
21367
21367
|
// Use a hook instead of onError on the img element to support server-side rendering.
|
|
@@ -21376,7 +21376,7 @@ const Avatar = /*#__PURE__*/React__namespace.forwardRef(function Avatar(inProps,
|
|
|
21376
21376
|
component,
|
|
21377
21377
|
variant
|
|
21378
21378
|
});
|
|
21379
|
-
const classes = useUtilityClasses$
|
|
21379
|
+
const classes = useUtilityClasses$1D(ownerState);
|
|
21380
21380
|
const [ImgSlot, imgSlotProps] = useSlot('img', {
|
|
21381
21381
|
className: classes.img,
|
|
21382
21382
|
elementType: AvatarImg,
|
|
@@ -21496,12 +21496,12 @@ function getAvatarGroupUtilityClass(slot) {
|
|
|
21496
21496
|
const avatarGroupClasses = generateUtilityClasses$1('MuiAvatarGroup', ['root', 'avatar']);
|
|
21497
21497
|
var avatarGroupClasses$1 = avatarGroupClasses;
|
|
21498
21498
|
|
|
21499
|
-
const _excluded$
|
|
21499
|
+
const _excluded$1V = ["children", "className", "component", "componentsProps", "max", "renderSurplus", "slotProps", "spacing", "total", "variant"];
|
|
21500
21500
|
const SPACINGS$1 = {
|
|
21501
21501
|
small: -16,
|
|
21502
21502
|
medium: null
|
|
21503
21503
|
};
|
|
21504
|
-
const useUtilityClasses$
|
|
21504
|
+
const useUtilityClasses$1C = ownerState => {
|
|
21505
21505
|
const {
|
|
21506
21506
|
classes
|
|
21507
21507
|
} = ownerState;
|
|
@@ -21553,7 +21553,7 @@ const AvatarGroup = /*#__PURE__*/React__namespace.forwardRef(function AvatarGrou
|
|
|
21553
21553
|
total,
|
|
21554
21554
|
variant = 'circular'
|
|
21555
21555
|
} = props,
|
|
21556
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
21556
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$1V);
|
|
21557
21557
|
let clampedMax = max < 2 ? 2 : max;
|
|
21558
21558
|
const ownerState = _extends$1({}, props, {
|
|
21559
21559
|
max,
|
|
@@ -21561,7 +21561,7 @@ const AvatarGroup = /*#__PURE__*/React__namespace.forwardRef(function AvatarGrou
|
|
|
21561
21561
|
component,
|
|
21562
21562
|
variant
|
|
21563
21563
|
});
|
|
21564
|
-
const classes = useUtilityClasses$
|
|
21564
|
+
const classes = useUtilityClasses$1C(ownerState);
|
|
21565
21565
|
const children = React__namespace.Children.toArray(childrenProp).filter(child => {
|
|
21566
21566
|
if (process.env.NODE_ENV !== 'production') {
|
|
21567
21567
|
if (reactIsExports.isFragment(child)) {
|
|
@@ -21681,7 +21681,7 @@ process.env.NODE_ENV !== "production" ? AvatarGroup.propTypes /* remove-proptype
|
|
|
21681
21681
|
} : void 0;
|
|
21682
21682
|
var AvatarGroup$1 = AvatarGroup;
|
|
21683
21683
|
|
|
21684
|
-
const _excluded$
|
|
21684
|
+
const _excluded$1U = ["addEndListener", "appear", "children", "easing", "in", "onEnter", "onEntered", "onEntering", "onExit", "onExited", "onExiting", "style", "timeout", "TransitionComponent"];
|
|
21685
21685
|
const styles$3 = {
|
|
21686
21686
|
entering: {
|
|
21687
21687
|
opacity: 1
|
|
@@ -21718,7 +21718,7 @@ const Fade = /*#__PURE__*/React__namespace.forwardRef(function Fade(props, ref)
|
|
|
21718
21718
|
// eslint-disable-next-line react/prop-types
|
|
21719
21719
|
TransitionComponent = Transition$1
|
|
21720
21720
|
} = props,
|
|
21721
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
21721
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$1U);
|
|
21722
21722
|
const nodeRef = React__namespace.useRef(null);
|
|
21723
21723
|
const handleRef = useForkRef$1(nodeRef, getReactElementRef(children), ref);
|
|
21724
21724
|
const normalizedTransitionCallback = callback => maybeIsAppearing => {
|
|
@@ -21879,8 +21879,8 @@ function getBackdropUtilityClass(slot) {
|
|
|
21879
21879
|
}
|
|
21880
21880
|
generateUtilityClasses$1('MuiBackdrop', ['root', 'invisible']);
|
|
21881
21881
|
|
|
21882
|
-
const _excluded$
|
|
21883
|
-
const useUtilityClasses$
|
|
21882
|
+
const _excluded$1T = ["children", "className", "component", "components", "componentsProps", "invisible", "open", "slotProps", "slots", "TransitionComponent", "transitionDuration"];
|
|
21883
|
+
const useUtilityClasses$1B = ownerState => {
|
|
21884
21884
|
const {
|
|
21885
21885
|
classes,
|
|
21886
21886
|
invisible
|
|
@@ -21934,12 +21934,12 @@ const Backdrop = /*#__PURE__*/React__namespace.forwardRef(function Backdrop(inPr
|
|
|
21934
21934
|
TransitionComponent = Fade$1,
|
|
21935
21935
|
transitionDuration
|
|
21936
21936
|
} = props,
|
|
21937
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
21937
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$1T);
|
|
21938
21938
|
const ownerState = _extends$1({}, props, {
|
|
21939
21939
|
component,
|
|
21940
21940
|
invisible
|
|
21941
21941
|
});
|
|
21942
|
-
const classes = useUtilityClasses$
|
|
21942
|
+
const classes = useUtilityClasses$1B(ownerState);
|
|
21943
21943
|
const rootSlotProps = (_slotProps$root = slotProps.root) != null ? _slotProps$root : componentsProps.root;
|
|
21944
21944
|
return /*#__PURE__*/require$$2$1.jsx(TransitionComponent, _extends$1({
|
|
21945
21945
|
in: open,
|
|
@@ -22101,10 +22101,10 @@ const badgeClasses = generateUtilityClasses$1('MuiBadge', ['root', 'badge', 'dot
|
|
|
22101
22101
|
'anchorOriginTopLeftCircular', 'anchorOriginTopLeftRectangular', 'anchorOriginTopRightCircular', 'anchorOriginTopRightRectangular', 'anchorOriginBottomLeftCircular', 'anchorOriginBottomLeftRectangular', 'anchorOriginBottomRightCircular', 'anchorOriginBottomRightRectangular']);
|
|
22102
22102
|
var badgeClasses$1 = badgeClasses;
|
|
22103
22103
|
|
|
22104
|
-
const _excluded$
|
|
22104
|
+
const _excluded$1S = ["anchorOrigin", "className", "classes", "component", "components", "componentsProps", "children", "overlap", "color", "invisible", "max", "badgeContent", "slots", "slotProps", "showZero", "variant"];
|
|
22105
22105
|
const RADIUS_STANDARD = 10;
|
|
22106
22106
|
const RADIUS_DOT = 4;
|
|
22107
|
-
const useUtilityClasses$
|
|
22107
|
+
const useUtilityClasses$1A = ownerState => {
|
|
22108
22108
|
const {
|
|
22109
22109
|
color,
|
|
22110
22110
|
anchorOrigin,
|
|
@@ -22330,7 +22330,7 @@ const Badge = /*#__PURE__*/React__namespace.forwardRef(function Badge(inProps, r
|
|
|
22330
22330
|
showZero = false,
|
|
22331
22331
|
variant: variantProp = 'standard'
|
|
22332
22332
|
} = props,
|
|
22333
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$
|
|
22333
|
+
other = _objectWithoutPropertiesLoose(props, _excluded$1S);
|
|
22334
22334
|
const {
|
|
22335
22335
|
badgeContent,
|
|
22336
22336
|
invisible: invisibleFromHook,
|
|
@@ -22368,7 +22368,7 @@ const Badge = /*#__PURE__*/React__namespace.forwardRef(function Badge(inProps, r
|
|
|
22368
22368
|
overlap,
|
|
22369
22369
|
variant
|
|
22370
22370
|
});
|
|
22371
|
-
const classes = useUtilityClasses$
|
|
22371
|
+
const classes = useUtilityClasses$1A(ownerState);
|
|
22372
22372
|
|
|
22373
22373
|
// support both `slots` and `components` for backward compatibility
|
|
22374
22374
|
const RootSlot = (_ref = (_slots$root = slots == null ? void 0 : slots.root) != null ? _slots$root : components.Root) != null ? _ref : BadgeRoot;
|
|
@@ -22516,288 +22516,6 @@ process.env.NODE_ENV !== "production" ? Badge.propTypes /* remove-proptypes */ =
|
|
|
22516
22516
|
} : void 0;
|
|
22517
22517
|
var Badge$1 = Badge;
|
|
22518
22518
|
|
|
22519
|
-
function getBottomNavigationUtilityClass(slot) {
|
|
22520
|
-
return generateUtilityClass$1('MuiBottomNavigation', slot);
|
|
22521
|
-
}
|
|
22522
|
-
generateUtilityClasses$1('MuiBottomNavigation', ['root']);
|
|
22523
|
-
|
|
22524
|
-
const _excluded$1T = ["children", "className", "component", "onChange", "showLabels", "value"];
|
|
22525
|
-
const useUtilityClasses$1B = ownerState => {
|
|
22526
|
-
const {
|
|
22527
|
-
classes
|
|
22528
|
-
} = ownerState;
|
|
22529
|
-
const slots = {
|
|
22530
|
-
root: ['root']
|
|
22531
|
-
};
|
|
22532
|
-
return composeClasses$1(slots, getBottomNavigationUtilityClass, classes);
|
|
22533
|
-
};
|
|
22534
|
-
const BottomNavigationRoot = styled$1('div', {
|
|
22535
|
-
name: 'MuiBottomNavigation',
|
|
22536
|
-
slot: 'Root',
|
|
22537
|
-
overridesResolver: (props, styles) => styles.root
|
|
22538
|
-
})(({
|
|
22539
|
-
theme
|
|
22540
|
-
}) => ({
|
|
22541
|
-
display: 'flex',
|
|
22542
|
-
justifyContent: 'center',
|
|
22543
|
-
height: 56,
|
|
22544
|
-
backgroundColor: (theme.vars || theme).palette.background.paper
|
|
22545
|
-
}));
|
|
22546
|
-
const BottomNavigation = /*#__PURE__*/React__namespace.forwardRef(function BottomNavigation(inProps, ref) {
|
|
22547
|
-
const props = useDefaultProps({
|
|
22548
|
-
props: inProps,
|
|
22549
|
-
name: 'MuiBottomNavigation'
|
|
22550
|
-
});
|
|
22551
|
-
const {
|
|
22552
|
-
children,
|
|
22553
|
-
className,
|
|
22554
|
-
component = 'div',
|
|
22555
|
-
onChange,
|
|
22556
|
-
showLabels = false,
|
|
22557
|
-
value
|
|
22558
|
-
} = props,
|
|
22559
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$1T);
|
|
22560
|
-
const ownerState = _extends$1({}, props, {
|
|
22561
|
-
component,
|
|
22562
|
-
showLabels
|
|
22563
|
-
});
|
|
22564
|
-
const classes = useUtilityClasses$1B(ownerState);
|
|
22565
|
-
return /*#__PURE__*/require$$2$1.jsx(BottomNavigationRoot, _extends$1({
|
|
22566
|
-
as: component,
|
|
22567
|
-
className: clsx(classes.root, className),
|
|
22568
|
-
ref: ref,
|
|
22569
|
-
ownerState: ownerState
|
|
22570
|
-
}, other, {
|
|
22571
|
-
children: React__namespace.Children.map(children, (child, childIndex) => {
|
|
22572
|
-
if (! /*#__PURE__*/React__namespace.isValidElement(child)) {
|
|
22573
|
-
return null;
|
|
22574
|
-
}
|
|
22575
|
-
if (process.env.NODE_ENV !== 'production') {
|
|
22576
|
-
if (reactIsExports.isFragment(child)) {
|
|
22577
|
-
console.error(["MUI: The BottomNavigation component doesn't accept a Fragment as a child.", 'Consider providing an array instead.'].join('\n'));
|
|
22578
|
-
}
|
|
22579
|
-
}
|
|
22580
|
-
const childValue = child.props.value === undefined ? childIndex : child.props.value;
|
|
22581
|
-
return /*#__PURE__*/React__namespace.cloneElement(child, {
|
|
22582
|
-
selected: childValue === value,
|
|
22583
|
-
showLabel: child.props.showLabel !== undefined ? child.props.showLabel : showLabels,
|
|
22584
|
-
value: childValue,
|
|
22585
|
-
onChange
|
|
22586
|
-
});
|
|
22587
|
-
})
|
|
22588
|
-
}));
|
|
22589
|
-
});
|
|
22590
|
-
process.env.NODE_ENV !== "production" ? BottomNavigation.propTypes /* remove-proptypes */ = {
|
|
22591
|
-
// ┌────────────────────────────── Warning ──────────────────────────────┐
|
|
22592
|
-
// │ These PropTypes are generated from the TypeScript type definitions. │
|
|
22593
|
-
// │ To update them, edit the d.ts file and run `pnpm proptypes`. │
|
|
22594
|
-
// └─────────────────────────────────────────────────────────────────────┘
|
|
22595
|
-
/**
|
|
22596
|
-
* The content of the component.
|
|
22597
|
-
*/
|
|
22598
|
-
children: PropTypes.node,
|
|
22599
|
-
/**
|
|
22600
|
-
* Override or extend the styles applied to the component.
|
|
22601
|
-
*/
|
|
22602
|
-
classes: PropTypes.object,
|
|
22603
|
-
/**
|
|
22604
|
-
* @ignore
|
|
22605
|
-
*/
|
|
22606
|
-
className: PropTypes.string,
|
|
22607
|
-
/**
|
|
22608
|
-
* The component used for the root node.
|
|
22609
|
-
* Either a string to use a HTML element or a component.
|
|
22610
|
-
*/
|
|
22611
|
-
component: PropTypes.elementType,
|
|
22612
|
-
/**
|
|
22613
|
-
* Callback fired when the value changes.
|
|
22614
|
-
*
|
|
22615
|
-
* @param {React.SyntheticEvent} event The event source of the callback. **Warning**: This is a generic event not a change event.
|
|
22616
|
-
* @param {any} value We default to the index of the child.
|
|
22617
|
-
*/
|
|
22618
|
-
onChange: PropTypes.func,
|
|
22619
|
-
/**
|
|
22620
|
-
* If `true`, all `BottomNavigationAction`s will show their labels.
|
|
22621
|
-
* By default, only the selected `BottomNavigationAction` will show its label.
|
|
22622
|
-
* @default false
|
|
22623
|
-
*/
|
|
22624
|
-
showLabels: PropTypes.bool,
|
|
22625
|
-
/**
|
|
22626
|
-
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
22627
|
-
*/
|
|
22628
|
-
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
|
|
22629
|
-
/**
|
|
22630
|
-
* The value of the currently selected `BottomNavigationAction`.
|
|
22631
|
-
*/
|
|
22632
|
-
value: PropTypes.any
|
|
22633
|
-
} : void 0;
|
|
22634
|
-
var BottomNavigation$1 = BottomNavigation;
|
|
22635
|
-
|
|
22636
|
-
function getBottomNavigationActionUtilityClass(slot) {
|
|
22637
|
-
return generateUtilityClass$1('MuiBottomNavigationAction', slot);
|
|
22638
|
-
}
|
|
22639
|
-
const bottomNavigationActionClasses = generateUtilityClasses$1('MuiBottomNavigationAction', ['root', 'iconOnly', 'selected', 'label']);
|
|
22640
|
-
var bottomNavigationActionClasses$1 = bottomNavigationActionClasses;
|
|
22641
|
-
|
|
22642
|
-
const _excluded$1S = ["className", "icon", "label", "onChange", "onClick", "selected", "showLabel", "value"];
|
|
22643
|
-
const useUtilityClasses$1A = ownerState => {
|
|
22644
|
-
const {
|
|
22645
|
-
classes,
|
|
22646
|
-
showLabel,
|
|
22647
|
-
selected
|
|
22648
|
-
} = ownerState;
|
|
22649
|
-
const slots = {
|
|
22650
|
-
root: ['root', !showLabel && !selected && 'iconOnly', selected && 'selected'],
|
|
22651
|
-
label: ['label', !showLabel && !selected && 'iconOnly', selected && 'selected']
|
|
22652
|
-
};
|
|
22653
|
-
return composeClasses$1(slots, getBottomNavigationActionUtilityClass, classes);
|
|
22654
|
-
};
|
|
22655
|
-
const BottomNavigationActionRoot = styled$1(ButtonBase$1, {
|
|
22656
|
-
name: 'MuiBottomNavigationAction',
|
|
22657
|
-
slot: 'Root',
|
|
22658
|
-
overridesResolver: (props, styles) => {
|
|
22659
|
-
const {
|
|
22660
|
-
ownerState
|
|
22661
|
-
} = props;
|
|
22662
|
-
return [styles.root, !ownerState.showLabel && !ownerState.selected && styles.iconOnly];
|
|
22663
|
-
}
|
|
22664
|
-
})(({
|
|
22665
|
-
theme,
|
|
22666
|
-
ownerState
|
|
22667
|
-
}) => _extends$1({
|
|
22668
|
-
transition: theme.transitions.create(['color', 'padding-top'], {
|
|
22669
|
-
duration: theme.transitions.duration.short
|
|
22670
|
-
}),
|
|
22671
|
-
padding: '0px 12px',
|
|
22672
|
-
minWidth: 80,
|
|
22673
|
-
maxWidth: 168,
|
|
22674
|
-
color: (theme.vars || theme).palette.text.secondary,
|
|
22675
|
-
flexDirection: 'column',
|
|
22676
|
-
flex: '1'
|
|
22677
|
-
}, !ownerState.showLabel && !ownerState.selected && {
|
|
22678
|
-
paddingTop: 14
|
|
22679
|
-
}, !ownerState.showLabel && !ownerState.selected && !ownerState.label && {
|
|
22680
|
-
paddingTop: 0
|
|
22681
|
-
}, {
|
|
22682
|
-
[`&.${bottomNavigationActionClasses$1.selected}`]: {
|
|
22683
|
-
color: (theme.vars || theme).palette.primary.main
|
|
22684
|
-
}
|
|
22685
|
-
}));
|
|
22686
|
-
const BottomNavigationActionLabel = styled$1('span', {
|
|
22687
|
-
name: 'MuiBottomNavigationAction',
|
|
22688
|
-
slot: 'Label',
|
|
22689
|
-
overridesResolver: (props, styles) => styles.label
|
|
22690
|
-
})(({
|
|
22691
|
-
theme,
|
|
22692
|
-
ownerState
|
|
22693
|
-
}) => _extends$1({
|
|
22694
|
-
fontFamily: theme.typography.fontFamily,
|
|
22695
|
-
fontSize: theme.typography.pxToRem(12),
|
|
22696
|
-
opacity: 1,
|
|
22697
|
-
transition: 'font-size 0.2s, opacity 0.2s',
|
|
22698
|
-
transitionDelay: '0.1s'
|
|
22699
|
-
}, !ownerState.showLabel && !ownerState.selected && {
|
|
22700
|
-
opacity: 0,
|
|
22701
|
-
transitionDelay: '0s'
|
|
22702
|
-
}, {
|
|
22703
|
-
[`&.${bottomNavigationActionClasses$1.selected}`]: {
|
|
22704
|
-
fontSize: theme.typography.pxToRem(14)
|
|
22705
|
-
}
|
|
22706
|
-
}));
|
|
22707
|
-
const BottomNavigationAction = /*#__PURE__*/React__namespace.forwardRef(function BottomNavigationAction(inProps, ref) {
|
|
22708
|
-
const props = useDefaultProps({
|
|
22709
|
-
props: inProps,
|
|
22710
|
-
name: 'MuiBottomNavigationAction'
|
|
22711
|
-
});
|
|
22712
|
-
const {
|
|
22713
|
-
className,
|
|
22714
|
-
icon,
|
|
22715
|
-
label,
|
|
22716
|
-
onChange,
|
|
22717
|
-
onClick
|
|
22718
|
-
// eslint-disable-next-line react/prop-types -- private, always overridden by BottomNavigation
|
|
22719
|
-
,
|
|
22720
|
-
|
|
22721
|
-
value
|
|
22722
|
-
} = props,
|
|
22723
|
-
other = _objectWithoutPropertiesLoose(props, _excluded$1S);
|
|
22724
|
-
const ownerState = props;
|
|
22725
|
-
const classes = useUtilityClasses$1A(ownerState);
|
|
22726
|
-
const handleChange = event => {
|
|
22727
|
-
if (onChange) {
|
|
22728
|
-
onChange(event, value);
|
|
22729
|
-
}
|
|
22730
|
-
if (onClick) {
|
|
22731
|
-
onClick(event);
|
|
22732
|
-
}
|
|
22733
|
-
};
|
|
22734
|
-
return /*#__PURE__*/require$$2$1.jsxs(BottomNavigationActionRoot, _extends$1({
|
|
22735
|
-
ref: ref,
|
|
22736
|
-
className: clsx(classes.root, className),
|
|
22737
|
-
focusRipple: true,
|
|
22738
|
-
onClick: handleChange,
|
|
22739
|
-
ownerState: ownerState
|
|
22740
|
-
}, other, {
|
|
22741
|
-
children: [icon, /*#__PURE__*/require$$2$1.jsx(BottomNavigationActionLabel, {
|
|
22742
|
-
className: classes.label,
|
|
22743
|
-
ownerState: ownerState,
|
|
22744
|
-
children: label
|
|
22745
|
-
})]
|
|
22746
|
-
}));
|
|
22747
|
-
});
|
|
22748
|
-
process.env.NODE_ENV !== "production" ? BottomNavigationAction.propTypes /* remove-proptypes */ = {
|
|
22749
|
-
// ┌────────────────────────────── Warning ──────────────────────────────┐
|
|
22750
|
-
// │ These PropTypes are generated from the TypeScript type definitions. │
|
|
22751
|
-
// │ To update them, edit the d.ts file and run `pnpm proptypes`. │
|
|
22752
|
-
// └─────────────────────────────────────────────────────────────────────┘
|
|
22753
|
-
/**
|
|
22754
|
-
* This prop isn't supported.
|
|
22755
|
-
* Use the `component` prop if you need to change the children structure.
|
|
22756
|
-
*/
|
|
22757
|
-
children: unsupportedProp,
|
|
22758
|
-
/**
|
|
22759
|
-
* Override or extend the styles applied to the component.
|
|
22760
|
-
*/
|
|
22761
|
-
classes: PropTypes.object,
|
|
22762
|
-
/**
|
|
22763
|
-
* @ignore
|
|
22764
|
-
*/
|
|
22765
|
-
className: PropTypes.string,
|
|
22766
|
-
/**
|
|
22767
|
-
* The icon to display.
|
|
22768
|
-
*/
|
|
22769
|
-
icon: PropTypes.node,
|
|
22770
|
-
/**
|
|
22771
|
-
* The label element.
|
|
22772
|
-
*/
|
|
22773
|
-
label: PropTypes.node,
|
|
22774
|
-
/**
|
|
22775
|
-
* @ignore
|
|
22776
|
-
*/
|
|
22777
|
-
onChange: PropTypes.func,
|
|
22778
|
-
/**
|
|
22779
|
-
* @ignore
|
|
22780
|
-
*/
|
|
22781
|
-
onClick: PropTypes.func,
|
|
22782
|
-
/**
|
|
22783
|
-
* If `true`, the `BottomNavigationAction` will show its label.
|
|
22784
|
-
* By default, only the selected `BottomNavigationAction`
|
|
22785
|
-
* inside `BottomNavigation` will show its label.
|
|
22786
|
-
*
|
|
22787
|
-
* The prop defaults to the value (`false`) inherited from the parent BottomNavigation component.
|
|
22788
|
-
*/
|
|
22789
|
-
showLabel: PropTypes.bool,
|
|
22790
|
-
/**
|
|
22791
|
-
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
22792
|
-
*/
|
|
22793
|
-
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
|
|
22794
|
-
/**
|
|
22795
|
-
* You can provide your own value. Otherwise, we fallback to the child position index.
|
|
22796
|
-
*/
|
|
22797
|
-
value: PropTypes.any
|
|
22798
|
-
} : void 0;
|
|
22799
|
-
var BottomNavigationAction$1 = BottomNavigationAction;
|
|
22800
|
-
|
|
22801
22519
|
const boxClasses = generateUtilityClasses$1('MuiBox', ['root']);
|
|
22802
22520
|
var boxClasses$1 = boxClasses;
|
|
22803
22521
|
|
|
@@ -123880,6 +123598,427 @@ const PermissionSelector = (props) => {
|
|
|
123880
123598
|
}))));
|
|
123881
123599
|
};
|
|
123882
123600
|
|
|
123601
|
+
/**
|
|
123602
|
+
* Shared TopBar stack heights and content-offset helpers.
|
|
123603
|
+
*
|
|
123604
|
+
* Use these to clear a fixed TopBar from page content, accounting for
|
|
123605
|
+
* expanded/collapsed chrome and whether Acesso Rápido (QuickActions) is shown.
|
|
123606
|
+
*
|
|
123607
|
+
* @remarks
|
|
123608
|
+
* For fixed-chrome pages (e.g. HomePage), prefer **measured** clearance via
|
|
123609
|
+
* `MeasuredLayoutProvider` + `useContentClearance` so padding tracks live
|
|
123610
|
+
* TopBar/BottomNav height (Acesso Rápido hide/show, grid vs horizontal, scroll
|
|
123611
|
+
* collapse). Keep these helpers as **fallback** before the first ResizeObserver
|
|
123612
|
+
* paint and for non-measured callers.
|
|
123613
|
+
*/
|
|
123614
|
+
/**
|
|
123615
|
+
* Canonical TopBar-related heights (px) used for layout clearance.
|
|
123616
|
+
*
|
|
123617
|
+
* @remarks
|
|
123618
|
+
* - `collapsed` — TopBar chrome when the greeting section is collapsed
|
|
123619
|
+
* - `expanded` — legacy aggregate expanded height (prefer {@link getTopBarExpandedHeight})
|
|
123620
|
+
* - `quickActionsCompact` — compact Acesso Rápido strip while collapsed
|
|
123621
|
+
* - `primaryOnly` — greeting/avatar row when QuickActions are hidden
|
|
123622
|
+
* (avatar 40px + CARD_PADDING vertical: xs 32 / sm+ 48, stepped for md)
|
|
123623
|
+
*/
|
|
123624
|
+
const TOP_BAR_HEIGHTS = {
|
|
123625
|
+
collapsed: { xs: 56, sm: 64, md: 72 },
|
|
123626
|
+
expanded: { xs: 180, sm: 200, md: 220 },
|
|
123627
|
+
quickActionsCompact: { xs: 60, sm: 64 },
|
|
123628
|
+
primaryOnly: { xs: 72, sm: 88, md: 104 },
|
|
123629
|
+
};
|
|
123630
|
+
const addOffset = (heights, additionalOffset) => ({
|
|
123631
|
+
xs: heights.xs + additionalOffset,
|
|
123632
|
+
sm: heights.sm + additionalOffset,
|
|
123633
|
+
md: heights.md + additionalOffset,
|
|
123634
|
+
});
|
|
123635
|
+
/**
|
|
123636
|
+
* Expanded TopBar height including full QuickActions, by layout.
|
|
123637
|
+
*
|
|
123638
|
+
* @param layout - QuickActionsBar layout (`grid` needs more xs height than `horizontal`)
|
|
123639
|
+
*/
|
|
123640
|
+
const getTopBarExpandedHeight = (layout = "horizontal") => ({
|
|
123641
|
+
xs: layout === "grid" ? 170 : 120,
|
|
123642
|
+
sm: TOP_BAR_HEIGHTS.expanded.sm,
|
|
123643
|
+
md: TOP_BAR_HEIGHTS.expanded.md,
|
|
123644
|
+
});
|
|
123645
|
+
/**
|
|
123646
|
+
* TopBar height for simple expanded/collapsed toggles (ignores QuickActions layout).
|
|
123647
|
+
*
|
|
123648
|
+
* @param isExpanded - Whether the TopBar is expanded
|
|
123649
|
+
*/
|
|
123650
|
+
const getTopBarHeight = (isExpanded) => isExpanded ? TOP_BAR_HEIGHTS.expanded : TOP_BAR_HEIGHTS.collapsed;
|
|
123651
|
+
/**
|
|
123652
|
+
* Fixed TopBar stack height that page content must clear.
|
|
123653
|
+
*
|
|
123654
|
+
* - QuickActions hidden → primary greeting only
|
|
123655
|
+
* - Expanded + QuickActions → layout-aware expanded height
|
|
123656
|
+
* - Collapsed + QuickActions → collapsed chrome + compact QuickActions
|
|
123657
|
+
*/
|
|
123658
|
+
const getTopBarStackHeight = ({ isExpanded, showQuickActions = true, layout = "horizontal", }) => {
|
|
123659
|
+
if (!showQuickActions) {
|
|
123660
|
+
return Object.assign({}, TOP_BAR_HEIGHTS.primaryOnly);
|
|
123661
|
+
}
|
|
123662
|
+
if (isExpanded) {
|
|
123663
|
+
return getTopBarExpandedHeight(layout);
|
|
123664
|
+
}
|
|
123665
|
+
const base = TOP_BAR_HEIGHTS.collapsed;
|
|
123666
|
+
const compact = TOP_BAR_HEIGHTS.quickActionsCompact;
|
|
123667
|
+
return {
|
|
123668
|
+
xs: base.xs + compact.xs,
|
|
123669
|
+
sm: base.sm + compact.sm,
|
|
123670
|
+
md: base.md + compact.sm,
|
|
123671
|
+
};
|
|
123672
|
+
};
|
|
123673
|
+
/**
|
|
123674
|
+
* `padding-top` for page content under a fixed TopBar.
|
|
123675
|
+
*
|
|
123676
|
+
* @example
|
|
123677
|
+
* ```ts
|
|
123678
|
+
* getContentPaddingTop({
|
|
123679
|
+
* isExpanded: true,
|
|
123680
|
+
* showQuickActions: false,
|
|
123681
|
+
* additionalOffset: 8,
|
|
123682
|
+
* })
|
|
123683
|
+
* ```
|
|
123684
|
+
*/
|
|
123685
|
+
const getContentPaddingTop = ({ isExpanded, showQuickActions = true, layout = "horizontal", additionalOffset = 0, }) => addOffset(getTopBarStackHeight({ isExpanded, showQuickActions, layout }), additionalOffset);
|
|
123686
|
+
/**
|
|
123687
|
+
* Companion `margin-top` for content under a fixed TopBar.
|
|
123688
|
+
*
|
|
123689
|
+
* Uses full padding when expanded or when QuickActions are hidden
|
|
123690
|
+
* (TopBar does not collapse without QuickActions). Halves when collapsed
|
|
123691
|
+
* with QuickActions visible for a tighter scroll layout.
|
|
123692
|
+
*/
|
|
123693
|
+
const getContentMarginTop = ({ isExpanded, showQuickActions = true, layout = "horizontal", additionalOffset = 0, }) => {
|
|
123694
|
+
const padding = getContentPaddingTop({
|
|
123695
|
+
isExpanded,
|
|
123696
|
+
showQuickActions,
|
|
123697
|
+
layout,
|
|
123698
|
+
additionalOffset,
|
|
123699
|
+
});
|
|
123700
|
+
const useFullMargin = !showQuickActions || isExpanded;
|
|
123701
|
+
return {
|
|
123702
|
+
xs: useFullMargin ? padding.xs : padding.xs / 2,
|
|
123703
|
+
sm: useFullMargin ? padding.sm : padding.sm / 2,
|
|
123704
|
+
md: useFullMargin ? padding.md : padding.md / 2,
|
|
123705
|
+
};
|
|
123706
|
+
};
|
|
123707
|
+
|
|
123708
|
+
/**
|
|
123709
|
+
* HomePage Design System Constants
|
|
123710
|
+
*
|
|
123711
|
+
* This file defines the design tokens for consistent spacing, animations,
|
|
123712
|
+
* and component dimensions across the HomePage and its child components.
|
|
123713
|
+
*
|
|
123714
|
+
* Following Material Design principles and mobile-first responsive design.
|
|
123715
|
+
*
|
|
123716
|
+
* TopBar content-offset helpers live in `theme/topBarLayout` and are
|
|
123717
|
+
* re-exported here for HomePage callers. Prefer measured clearance
|
|
123718
|
+
* (`MeasuredLayoutProvider` + `useContentClearance`) for fixed chrome pages;
|
|
123719
|
+
* these constants remain useful as fallbacks and for non-measured callers.
|
|
123720
|
+
*/
|
|
123721
|
+
/** Max unread notifications shown in the home bell quick panel. */
|
|
123722
|
+
const HOME_BELL_NOTIFICATION_LIMIT = 3;
|
|
123723
|
+
/**
|
|
123724
|
+
* Animation Durations (in milliseconds)
|
|
123725
|
+
* Based on Material Design motion guidelines
|
|
123726
|
+
*/
|
|
123727
|
+
const ANIMATION_DURATION = {
|
|
123728
|
+
fast: 150, // Quick feedback interactions
|
|
123729
|
+
normal: 300, // Standard transitions
|
|
123730
|
+
slow: 500, // Emphasis animations
|
|
123731
|
+
enter: 225, // Material entrance timing
|
|
123732
|
+
exit: 195, // Material exit timing
|
|
123733
|
+
};
|
|
123734
|
+
/**
|
|
123735
|
+
* Animation Easing Functions
|
|
123736
|
+
* Material Design standard easing curves
|
|
123737
|
+
*/
|
|
123738
|
+
const ANIMATION_EASING = {
|
|
123739
|
+
standard: "cubic-bezier(0.4, 0, 0.2, 1)", // Standard curve
|
|
123740
|
+
decelerate: "cubic-bezier(0.0, 0, 0.2, 1)", // Deceleration curve
|
|
123741
|
+
accelerate: "cubic-bezier(0.4, 0, 1, 1)", // Acceleration curve
|
|
123742
|
+
sharp: "cubic-bezier(0.4, 0, 0.6, 1)", // Sharp curve
|
|
123743
|
+
spring: "cubic-bezier(0.34, 1.56, 0.64, 1)", // Spring-like bounce
|
|
123744
|
+
};
|
|
123745
|
+
/**
|
|
123746
|
+
* Component Heights
|
|
123747
|
+
* Responsive heights for major UI components
|
|
123748
|
+
*/
|
|
123749
|
+
/**
|
|
123750
|
+
* Defines standard heights for various UI components on the HomePage, supporting responsive design.
|
|
123751
|
+
*
|
|
123752
|
+
* @remarks
|
|
123753
|
+
* The `COMPONENT_HEIGHTS` object provides pixel or viewport-based height values for different components,
|
|
123754
|
+
* with breakpoints for extra-small (`xs`), small (`sm`), and medium (`md`) screens where applicable.
|
|
123755
|
+
* This ensures consistent layout and spacing across devices.
|
|
123756
|
+
*
|
|
123757
|
+
* @property topBar - Heights (in pixels) for the TopBar component in its collapsed state.
|
|
123758
|
+
* - Example: On a small screen (`sm`), the TopBar height is 64px.
|
|
123759
|
+
* @property topBarExpanded - Heights (in pixels) for the TopBar when expanded (e.g., showing QuickActions).
|
|
123760
|
+
* - Example: On a medium screen (`md`), the expanded TopBar height is 220px.
|
|
123761
|
+
* @property quickActionsCompact - Heights (in pixels) for the QuickActionsBar in compact mode.
|
|
123762
|
+
* - Example: On an extra-small screen (`xs`), the QuickActionsBar height is 60px.
|
|
123763
|
+
* @property bottomNav - Content clearance for the floating Home bottom nav pill
|
|
123764
|
+
* (notch protrusion 24 + inner height 56 + float margin 16). Keep in sync with
|
|
123765
|
+
* `HOME_BOTTOM_NAV_CLEARANCE` in `HomeBottomNav.tsx`.
|
|
123766
|
+
* @property featuredCard - Minimum heights (in pixels) for the featured event card.
|
|
123767
|
+
* - Example: On a small screen (`sm`), the featured card has a minimum height of 220px.
|
|
123768
|
+
*/
|
|
123769
|
+
const COMPONENT_HEIGHTS = {
|
|
123770
|
+
// TopBar heights in collapsed state
|
|
123771
|
+
topBar: TOP_BAR_HEIGHTS.collapsed,
|
|
123772
|
+
// TopBar heights in expanded state (with QuickActions)
|
|
123773
|
+
topBarExpanded: TOP_BAR_HEIGHTS.expanded, // xs: 120 when on horizontal and 170 when on grid
|
|
123774
|
+
// QuickActionsBar height in compact mode
|
|
123775
|
+
quickActionsCompact: TOP_BAR_HEIGHTS.quickActionsCompact,
|
|
123776
|
+
// Primary greeting only (QuickActions hidden)
|
|
123777
|
+
topBarPrimary: TOP_BAR_HEIGHTS.primaryOnly,
|
|
123778
|
+
// Floating pill clearance (24 + 56 + 16); matches HOME_BOTTOM_NAV_CLEARANCE
|
|
123779
|
+
bottomNav: 96,
|
|
123780
|
+
// Featured event card minimum height (fixed pixels for uniform cards)
|
|
123781
|
+
featuredCard: { xs: 200, sm: 220, md: 240 },
|
|
123782
|
+
};
|
|
123783
|
+
/**
|
|
123784
|
+
* Scroll Behavior Constants
|
|
123785
|
+
*/
|
|
123786
|
+
const SCROLL_CONFIG = {
|
|
123787
|
+
// Threshold in pixels before collapsing TopBar
|
|
123788
|
+
collapseThreshold: 100,
|
|
123789
|
+
// Threshold in pixels before showing scroll-to-top button
|
|
123790
|
+
scrollToTopThreshold: 300,
|
|
123791
|
+
// Debounce delay for scroll events (ms)
|
|
123792
|
+
scrollDebounce: 16, // ~60fps
|
|
123793
|
+
};
|
|
123794
|
+
/**
|
|
123795
|
+
* Touch Interaction Constants
|
|
123796
|
+
*/
|
|
123797
|
+
const TOUCH_CONFIG = {
|
|
123798
|
+
// Minimum touch target size (accessibility)
|
|
123799
|
+
minTouchTarget: 48,
|
|
123800
|
+
// Long press duration (ms)
|
|
123801
|
+
longPressDuration: 400,
|
|
123802
|
+
// Swipe threshold distance (px)
|
|
123803
|
+
swipeThreshold: 50,
|
|
123804
|
+
// Swipe velocity threshold (px/ms)
|
|
123805
|
+
swipeVelocity: 0.3,
|
|
123806
|
+
};
|
|
123807
|
+
/**
|
|
123808
|
+
* HomePage Section Configurations
|
|
123809
|
+
*
|
|
123810
|
+
* Defines the structure and metadata for each major section of the HomePage.
|
|
123811
|
+
* Used with SectionHeader component to provide consistent section labeling.
|
|
123812
|
+
*/
|
|
123813
|
+
const HOME_SECTIONS = {
|
|
123814
|
+
WELCOME: {
|
|
123815
|
+
id: "welcome",
|
|
123816
|
+
title: "Bem-vindo",
|
|
123817
|
+
icon: "Waving Hand",
|
|
123818
|
+
showDivider: false,
|
|
123819
|
+
},
|
|
123820
|
+
WEEKLY_TASKS: {
|
|
123821
|
+
id: "weekly-tasks",
|
|
123822
|
+
title: "Tarefas da semana",
|
|
123823
|
+
subtitle: "Pequenas ações para usar o que a casa já tem no sistema",
|
|
123824
|
+
icon: "TaskAlt",
|
|
123825
|
+
showDivider: false,
|
|
123826
|
+
},
|
|
123827
|
+
PROFILE_COMPLETENESS: {
|
|
123828
|
+
id: "profile-completeness",
|
|
123829
|
+
title: "Completude do perfil",
|
|
123830
|
+
subtitle: "Acompanhe o que ainda falta para deixar seu perfil completo",
|
|
123831
|
+
icon: "Person",
|
|
123832
|
+
showDivider: false,
|
|
123833
|
+
},
|
|
123834
|
+
TERREIRO_COMPLETENESS: {
|
|
123835
|
+
id: "terreiro-completeness",
|
|
123836
|
+
title: "Perfil do Terreiro",
|
|
123837
|
+
subtitle: "Acompanhe o que ainda falta no perfil da casa (avatar, contato e endereço)",
|
|
123838
|
+
icon: "Home",
|
|
123839
|
+
showDivider: false,
|
|
123840
|
+
},
|
|
123841
|
+
PROGRESS: {
|
|
123842
|
+
id: "progress",
|
|
123843
|
+
title: "Seu Progresso",
|
|
123844
|
+
subtitle: "Acompanhe seu desenvolvimento e conquistas",
|
|
123845
|
+
icon: "TrendingUp",
|
|
123846
|
+
actionLabel: "Ver Tudo",
|
|
123847
|
+
showDivider: false,
|
|
123848
|
+
},
|
|
123849
|
+
ATTENDANCE: {
|
|
123850
|
+
id: "attendance",
|
|
123851
|
+
title: "Presença do Período",
|
|
123852
|
+
subtitle: "Confirmação e presença real dos médiuns",
|
|
123853
|
+
icon: "TrendingUp",
|
|
123854
|
+
actionLabel: "Ver médiuns",
|
|
123855
|
+
showDivider: false,
|
|
123856
|
+
},
|
|
123857
|
+
SUPPLY_PLAN: {
|
|
123858
|
+
id: "supply-plan",
|
|
123859
|
+
title: "Planejamento de Insumos",
|
|
123860
|
+
subtitle: "Resumo do que comprar e missões de insumos da casa",
|
|
123861
|
+
icon: "Inventory2",
|
|
123862
|
+
showDivider: false,
|
|
123863
|
+
},
|
|
123864
|
+
CALENDAR: {
|
|
123865
|
+
id: "calendar",
|
|
123866
|
+
title: "Próximas Atividades",
|
|
123867
|
+
subtitle: "Seus eventos e compromissos",
|
|
123868
|
+
icon: "CalendarMonth",
|
|
123869
|
+
actionLabel: "Ver Calendário",
|
|
123870
|
+
showDivider: false,
|
|
123871
|
+
},
|
|
123872
|
+
SPIRITUALITY: {
|
|
123873
|
+
id: "spirituality",
|
|
123874
|
+
title: "Espiritualidade",
|
|
123875
|
+
subtitle: "Fase lunar e rituais recomendados",
|
|
123876
|
+
icon: "AutoAwesome",
|
|
123877
|
+
showDivider: false,
|
|
123878
|
+
},
|
|
123879
|
+
HIGHLIGHTS: {
|
|
123880
|
+
id: "highlights",
|
|
123881
|
+
title: "Em Destaque",
|
|
123882
|
+
subtitle: "Próximos eventos do terreiro",
|
|
123883
|
+
icon: "Star",
|
|
123884
|
+
showDivider: false,
|
|
123885
|
+
},
|
|
123886
|
+
};
|
|
123887
|
+
|
|
123888
|
+
/** Pill body height. */
|
|
123889
|
+
const NOTCHED_BAR_HEIGHT = 56;
|
|
123890
|
+
/** Page-colored circle diameter. */
|
|
123891
|
+
const NOTCHED_CIRCLE = 48;
|
|
123892
|
+
/** How far the circle rises above the pill. */
|
|
123893
|
+
const NOTCHED_BAR_PROTRUSION = 24;
|
|
123894
|
+
/** Icon travel so its center meets the circle center (pill midline → bar top). */
|
|
123895
|
+
const NOTCHED_ICON_LIFT = NOTCHED_BAR_HEIGHT / 2;
|
|
123896
|
+
const NOTCH_TRANSITION = `transform ${ANIMATION_DURATION.slow}ms ${ANIMATION_EASING.spring}`;
|
|
123897
|
+
const NotchedSlotContext = React$1.createContext({ active: false });
|
|
123898
|
+
/** True while this slot is the one sitting in the traveling cutout. */
|
|
123899
|
+
const useNotchedSlotActive = () => React$1.useContext(NotchedSlotContext).active;
|
|
123900
|
+
const NotchedBottomBarItem = React$1.forwardRef(function NotchedBottomBarItem(_a, ref) {
|
|
123901
|
+
var { label, active = false, children, type = "button" } = _a, rest = __rest(_a, ["label", "active", "children", "type"]);
|
|
123902
|
+
const reduceMotion = useMediaQuery("(prefers-reduced-motion: reduce)");
|
|
123903
|
+
return (React$1.createElement(NotchedSlotContext.Provider, { value: { active } },
|
|
123904
|
+
React$1.createElement(Box$1, Object.assign({ component: "button", ref: ref, type: type, "aria-label": label, "aria-current": active ? "page" : undefined }, rest, { sx: {
|
|
123905
|
+
flex: "1 1 0",
|
|
123906
|
+
minWidth: 0,
|
|
123907
|
+
minHeight: 44,
|
|
123908
|
+
height: "100%",
|
|
123909
|
+
m: 0,
|
|
123910
|
+
p: 0,
|
|
123911
|
+
border: 0,
|
|
123912
|
+
bgcolor: "transparent",
|
|
123913
|
+
color: active ? "text.primary" : (theme) => { var _a, _b; return (_b = (_a = theme.brand) === null || _a === void 0 ? void 0 : _a.cream) !== null && _b !== void 0 ? _b : "#F3E2B3"; },
|
|
123914
|
+
display: "flex",
|
|
123915
|
+
alignItems: "center",
|
|
123916
|
+
justifyContent: "center",
|
|
123917
|
+
position: "relative",
|
|
123918
|
+
zIndex: 2,
|
|
123919
|
+
cursor: "pointer",
|
|
123920
|
+
WebkitTapHighlightColor: "transparent",
|
|
123921
|
+
"&:focus-visible": {
|
|
123922
|
+
outline: (theme) => `2px solid ${theme.palette.primary.main}`,
|
|
123923
|
+
outlineOffset: -4,
|
|
123924
|
+
borderRadius: 1,
|
|
123925
|
+
},
|
|
123926
|
+
} }),
|
|
123927
|
+
React$1.createElement(Box$1, { sx: {
|
|
123928
|
+
display: "flex",
|
|
123929
|
+
alignItems: "center",
|
|
123930
|
+
justifyContent: "center",
|
|
123931
|
+
transform: active
|
|
123932
|
+
? `translateY(-${NOTCHED_ICON_LIFT}px)`
|
|
123933
|
+
: "translateY(0)",
|
|
123934
|
+
transition: reduceMotion ? "none" : NOTCH_TRANSITION,
|
|
123935
|
+
"& .MuiSvgIcon-root": { fontSize: 22 },
|
|
123936
|
+
} }, children))));
|
|
123937
|
+
});
|
|
123938
|
+
const clampIndex = (index, count) => {
|
|
123939
|
+
if (count <= 0)
|
|
123940
|
+
return 0;
|
|
123941
|
+
return Math.min(Math.max(index, 0), count - 1);
|
|
123942
|
+
};
|
|
123943
|
+
/**
|
|
123944
|
+
* Coal pill with one page-colored cutout. The cutout slides to the active slot
|
|
123945
|
+
* and that slot's icon lifts into the circle.
|
|
123946
|
+
*/
|
|
123947
|
+
const NotchedBottomBar = ({ activeIndex, "aria-label": ariaLabel, children, }) => {
|
|
123948
|
+
const reduceMotion = useMediaQuery("(prefers-reduced-motion: reduce)");
|
|
123949
|
+
const items = React$1.useMemo(() => React$1.Children.toArray(children).filter(React$1.isValidElement), [children]);
|
|
123950
|
+
const count = Math.max(items.length, 1);
|
|
123951
|
+
const clampedIndex = clampIndex(activeIndex, items.length);
|
|
123952
|
+
return (React$1.createElement(Box$1, { sx: { pt: `${NOTCHED_BAR_PROTRUSION}px` } },
|
|
123953
|
+
React$1.createElement(Box$1, { sx: {
|
|
123954
|
+
position: "relative",
|
|
123955
|
+
height: NOTCHED_BAR_HEIGHT,
|
|
123956
|
+
borderRadius: 999,
|
|
123957
|
+
bgcolor: (theme) => { var _a, _b; return (_b = (_a = theme.brand) === null || _a === void 0 ? void 0 : _a.coal) !== null && _b !== void 0 ? _b : "#201C10"; },
|
|
123958
|
+
boxShadow: (theme) => theme.palette.mode === "dark"
|
|
123959
|
+
? "0 8px 28px rgba(0,0,0,0.45)"
|
|
123960
|
+
: "0 8px 28px rgba(0,0,0,0.18)",
|
|
123961
|
+
border: (theme) => theme.palette.mode === "dark"
|
|
123962
|
+
? "1px solid rgba(243,226,179,0.16)"
|
|
123963
|
+
: "1px solid transparent",
|
|
123964
|
+
} },
|
|
123965
|
+
React$1.createElement(Box$1, { "aria-hidden": true, "data-testid": "notched-bottom-bar-notch", "data-active-index": clampedIndex, style: {
|
|
123966
|
+
transform: `translateX(${clampedIndex * 100}%)`,
|
|
123967
|
+
transition: reduceMotion ? "none" : NOTCH_TRANSITION,
|
|
123968
|
+
}, sx: {
|
|
123969
|
+
position: "absolute",
|
|
123970
|
+
zIndex: 1,
|
|
123971
|
+
top: -NOTCHED_BAR_PROTRUSION,
|
|
123972
|
+
left: 0,
|
|
123973
|
+
width: `${100 / count}%`,
|
|
123974
|
+
height: NOTCHED_CIRCLE,
|
|
123975
|
+
display: "flex",
|
|
123976
|
+
justifyContent: "center",
|
|
123977
|
+
pointerEvents: "none",
|
|
123978
|
+
"@media (prefers-reduced-motion: reduce)": {
|
|
123979
|
+
transition: "none",
|
|
123980
|
+
},
|
|
123981
|
+
} },
|
|
123982
|
+
React$1.createElement(Box$1, { sx: {
|
|
123983
|
+
width: NOTCHED_CIRCLE,
|
|
123984
|
+
height: NOTCHED_CIRCLE,
|
|
123985
|
+
borderRadius: "50%",
|
|
123986
|
+
bgcolor: "background.default",
|
|
123987
|
+
position: "relative",
|
|
123988
|
+
"&::before, &::after": {
|
|
123989
|
+
content: '""',
|
|
123990
|
+
position: "absolute",
|
|
123991
|
+
top: "50%",
|
|
123992
|
+
width: 18,
|
|
123993
|
+
height: 18,
|
|
123994
|
+
background: "transparent",
|
|
123995
|
+
},
|
|
123996
|
+
"&::before": {
|
|
123997
|
+
left: -16,
|
|
123998
|
+
borderTopRightRadius: 18,
|
|
123999
|
+
boxShadow: (theme) => { var _a, _b; return `0 -10px 0 0 ${(_b = (_a = theme.brand) === null || _a === void 0 ? void 0 : _a.coal) !== null && _b !== void 0 ? _b : "#201C10"}`; },
|
|
124000
|
+
},
|
|
124001
|
+
"&::after": {
|
|
124002
|
+
right: -16,
|
|
124003
|
+
borderTopLeftRadius: 18,
|
|
124004
|
+
boxShadow: (theme) => { var _a, _b; return `0 -10px 0 0 ${(_b = (_a = theme.brand) === null || _a === void 0 ? void 0 : _a.coal) !== null && _b !== void 0 ? _b : "#201C10"}`; },
|
|
124005
|
+
},
|
|
124006
|
+
} })),
|
|
124007
|
+
React$1.createElement(Box$1, { role: "group", "aria-label": ariaLabel, sx: {
|
|
124008
|
+
position: "relative",
|
|
124009
|
+
zIndex: 2,
|
|
124010
|
+
display: "flex",
|
|
124011
|
+
alignItems: "stretch",
|
|
124012
|
+
height: "100%",
|
|
124013
|
+
} }, items.map((child, index) => {
|
|
124014
|
+
var _a;
|
|
124015
|
+
return React$1.cloneElement(child, {
|
|
124016
|
+
key: (_a = child.key) !== null && _a !== void 0 ? _a : index,
|
|
124017
|
+
active: index === clampedIndex,
|
|
124018
|
+
});
|
|
124019
|
+
})))));
|
|
124020
|
+
};
|
|
124021
|
+
|
|
123883
124022
|
const installPromptPropsSchema = objectType({
|
|
123884
124023
|
appName: stringType().min(1).default("App"),
|
|
123885
124024
|
// iconSrc removed, now using logo from assets
|
|
@@ -130830,293 +130969,6 @@ const BlockDialog = ({ open, displayName, onClose, onConfirm, submitting = false
|
|
|
130830
130969
|
React$1.createElement(Button$1, { onClick: onClose, disabled: submitting }, "Cancelar"),
|
|
130831
130970
|
React$1.createElement(Button$1, { color: "error", variant: "contained", onClick: onConfirm, disabled: submitting }, "Bloquear"))));
|
|
130832
130971
|
|
|
130833
|
-
/**
|
|
130834
|
-
* Shared TopBar stack heights and content-offset helpers.
|
|
130835
|
-
*
|
|
130836
|
-
* Use these to clear a fixed TopBar from page content, accounting for
|
|
130837
|
-
* expanded/collapsed chrome and whether Acesso Rápido (QuickActions) is shown.
|
|
130838
|
-
*
|
|
130839
|
-
* @remarks
|
|
130840
|
-
* For fixed-chrome pages (e.g. HomePage), prefer **measured** clearance via
|
|
130841
|
-
* `MeasuredLayoutProvider` + `useContentClearance` so padding tracks live
|
|
130842
|
-
* TopBar/BottomNav height (Acesso Rápido hide/show, grid vs horizontal, scroll
|
|
130843
|
-
* collapse). Keep these helpers as **fallback** before the first ResizeObserver
|
|
130844
|
-
* paint and for non-measured callers.
|
|
130845
|
-
*/
|
|
130846
|
-
/**
|
|
130847
|
-
* Canonical TopBar-related heights (px) used for layout clearance.
|
|
130848
|
-
*
|
|
130849
|
-
* @remarks
|
|
130850
|
-
* - `collapsed` — TopBar chrome when the greeting section is collapsed
|
|
130851
|
-
* - `expanded` — legacy aggregate expanded height (prefer {@link getTopBarExpandedHeight})
|
|
130852
|
-
* - `quickActionsCompact` — compact Acesso Rápido strip while collapsed
|
|
130853
|
-
* - `primaryOnly` — greeting/avatar row when QuickActions are hidden
|
|
130854
|
-
* (avatar 40px + CARD_PADDING vertical: xs 32 / sm+ 48, stepped for md)
|
|
130855
|
-
*/
|
|
130856
|
-
const TOP_BAR_HEIGHTS = {
|
|
130857
|
-
collapsed: { xs: 56, sm: 64, md: 72 },
|
|
130858
|
-
expanded: { xs: 180, sm: 200, md: 220 },
|
|
130859
|
-
quickActionsCompact: { xs: 60, sm: 64 },
|
|
130860
|
-
primaryOnly: { xs: 72, sm: 88, md: 104 },
|
|
130861
|
-
};
|
|
130862
|
-
const addOffset = (heights, additionalOffset) => ({
|
|
130863
|
-
xs: heights.xs + additionalOffset,
|
|
130864
|
-
sm: heights.sm + additionalOffset,
|
|
130865
|
-
md: heights.md + additionalOffset,
|
|
130866
|
-
});
|
|
130867
|
-
/**
|
|
130868
|
-
* Expanded TopBar height including full QuickActions, by layout.
|
|
130869
|
-
*
|
|
130870
|
-
* @param layout - QuickActionsBar layout (`grid` needs more xs height than `horizontal`)
|
|
130871
|
-
*/
|
|
130872
|
-
const getTopBarExpandedHeight = (layout = "horizontal") => ({
|
|
130873
|
-
xs: layout === "grid" ? 170 : 120,
|
|
130874
|
-
sm: TOP_BAR_HEIGHTS.expanded.sm,
|
|
130875
|
-
md: TOP_BAR_HEIGHTS.expanded.md,
|
|
130876
|
-
});
|
|
130877
|
-
/**
|
|
130878
|
-
* TopBar height for simple expanded/collapsed toggles (ignores QuickActions layout).
|
|
130879
|
-
*
|
|
130880
|
-
* @param isExpanded - Whether the TopBar is expanded
|
|
130881
|
-
*/
|
|
130882
|
-
const getTopBarHeight = (isExpanded) => isExpanded ? TOP_BAR_HEIGHTS.expanded : TOP_BAR_HEIGHTS.collapsed;
|
|
130883
|
-
/**
|
|
130884
|
-
* Fixed TopBar stack height that page content must clear.
|
|
130885
|
-
*
|
|
130886
|
-
* - QuickActions hidden → primary greeting only
|
|
130887
|
-
* - Expanded + QuickActions → layout-aware expanded height
|
|
130888
|
-
* - Collapsed + QuickActions → collapsed chrome + compact QuickActions
|
|
130889
|
-
*/
|
|
130890
|
-
const getTopBarStackHeight = ({ isExpanded, showQuickActions = true, layout = "horizontal", }) => {
|
|
130891
|
-
if (!showQuickActions) {
|
|
130892
|
-
return Object.assign({}, TOP_BAR_HEIGHTS.primaryOnly);
|
|
130893
|
-
}
|
|
130894
|
-
if (isExpanded) {
|
|
130895
|
-
return getTopBarExpandedHeight(layout);
|
|
130896
|
-
}
|
|
130897
|
-
const base = TOP_BAR_HEIGHTS.collapsed;
|
|
130898
|
-
const compact = TOP_BAR_HEIGHTS.quickActionsCompact;
|
|
130899
|
-
return {
|
|
130900
|
-
xs: base.xs + compact.xs,
|
|
130901
|
-
sm: base.sm + compact.sm,
|
|
130902
|
-
md: base.md + compact.sm,
|
|
130903
|
-
};
|
|
130904
|
-
};
|
|
130905
|
-
/**
|
|
130906
|
-
* `padding-top` for page content under a fixed TopBar.
|
|
130907
|
-
*
|
|
130908
|
-
* @example
|
|
130909
|
-
* ```ts
|
|
130910
|
-
* getContentPaddingTop({
|
|
130911
|
-
* isExpanded: true,
|
|
130912
|
-
* showQuickActions: false,
|
|
130913
|
-
* additionalOffset: 8,
|
|
130914
|
-
* })
|
|
130915
|
-
* ```
|
|
130916
|
-
*/
|
|
130917
|
-
const getContentPaddingTop = ({ isExpanded, showQuickActions = true, layout = "horizontal", additionalOffset = 0, }) => addOffset(getTopBarStackHeight({ isExpanded, showQuickActions, layout }), additionalOffset);
|
|
130918
|
-
/**
|
|
130919
|
-
* Companion `margin-top` for content under a fixed TopBar.
|
|
130920
|
-
*
|
|
130921
|
-
* Uses full padding when expanded or when QuickActions are hidden
|
|
130922
|
-
* (TopBar does not collapse without QuickActions). Halves when collapsed
|
|
130923
|
-
* with QuickActions visible for a tighter scroll layout.
|
|
130924
|
-
*/
|
|
130925
|
-
const getContentMarginTop = ({ isExpanded, showQuickActions = true, layout = "horizontal", additionalOffset = 0, }) => {
|
|
130926
|
-
const padding = getContentPaddingTop({
|
|
130927
|
-
isExpanded,
|
|
130928
|
-
showQuickActions,
|
|
130929
|
-
layout,
|
|
130930
|
-
additionalOffset,
|
|
130931
|
-
});
|
|
130932
|
-
const useFullMargin = !showQuickActions || isExpanded;
|
|
130933
|
-
return {
|
|
130934
|
-
xs: useFullMargin ? padding.xs : padding.xs / 2,
|
|
130935
|
-
sm: useFullMargin ? padding.sm : padding.sm / 2,
|
|
130936
|
-
md: useFullMargin ? padding.md : padding.md / 2,
|
|
130937
|
-
};
|
|
130938
|
-
};
|
|
130939
|
-
|
|
130940
|
-
/**
|
|
130941
|
-
* HomePage Design System Constants
|
|
130942
|
-
*
|
|
130943
|
-
* This file defines the design tokens for consistent spacing, animations,
|
|
130944
|
-
* and component dimensions across the HomePage and its child components.
|
|
130945
|
-
*
|
|
130946
|
-
* Following Material Design principles and mobile-first responsive design.
|
|
130947
|
-
*
|
|
130948
|
-
* TopBar content-offset helpers live in `theme/topBarLayout` and are
|
|
130949
|
-
* re-exported here for HomePage callers. Prefer measured clearance
|
|
130950
|
-
* (`MeasuredLayoutProvider` + `useContentClearance`) for fixed chrome pages;
|
|
130951
|
-
* these constants remain useful as fallbacks and for non-measured callers.
|
|
130952
|
-
*/
|
|
130953
|
-
/** Max unread notifications shown in the home bell quick panel. */
|
|
130954
|
-
const HOME_BELL_NOTIFICATION_LIMIT = 3;
|
|
130955
|
-
/**
|
|
130956
|
-
* Animation Durations (in milliseconds)
|
|
130957
|
-
* Based on Material Design motion guidelines
|
|
130958
|
-
*/
|
|
130959
|
-
const ANIMATION_DURATION = {
|
|
130960
|
-
fast: 150, // Quick feedback interactions
|
|
130961
|
-
normal: 300, // Standard transitions
|
|
130962
|
-
slow: 500, // Emphasis animations
|
|
130963
|
-
enter: 225, // Material entrance timing
|
|
130964
|
-
exit: 195, // Material exit timing
|
|
130965
|
-
};
|
|
130966
|
-
/**
|
|
130967
|
-
* Animation Easing Functions
|
|
130968
|
-
* Material Design standard easing curves
|
|
130969
|
-
*/
|
|
130970
|
-
const ANIMATION_EASING = {
|
|
130971
|
-
standard: "cubic-bezier(0.4, 0, 0.2, 1)", // Standard curve
|
|
130972
|
-
decelerate: "cubic-bezier(0.0, 0, 0.2, 1)", // Deceleration curve
|
|
130973
|
-
accelerate: "cubic-bezier(0.4, 0, 1, 1)", // Acceleration curve
|
|
130974
|
-
sharp: "cubic-bezier(0.4, 0, 0.6, 1)", // Sharp curve
|
|
130975
|
-
spring: "cubic-bezier(0.34, 1.56, 0.64, 1)", // Spring-like bounce
|
|
130976
|
-
};
|
|
130977
|
-
/**
|
|
130978
|
-
* Component Heights
|
|
130979
|
-
* Responsive heights for major UI components
|
|
130980
|
-
*/
|
|
130981
|
-
/**
|
|
130982
|
-
* Defines standard heights for various UI components on the HomePage, supporting responsive design.
|
|
130983
|
-
*
|
|
130984
|
-
* @remarks
|
|
130985
|
-
* The `COMPONENT_HEIGHTS` object provides pixel or viewport-based height values for different components,
|
|
130986
|
-
* with breakpoints for extra-small (`xs`), small (`sm`), and medium (`md`) screens where applicable.
|
|
130987
|
-
* This ensures consistent layout and spacing across devices.
|
|
130988
|
-
*
|
|
130989
|
-
* @property topBar - Heights (in pixels) for the TopBar component in its collapsed state.
|
|
130990
|
-
* - Example: On a small screen (`sm`), the TopBar height is 64px.
|
|
130991
|
-
* @property topBarExpanded - Heights (in pixels) for the TopBar when expanded (e.g., showing QuickActions).
|
|
130992
|
-
* - Example: On a medium screen (`md`), the expanded TopBar height is 220px.
|
|
130993
|
-
* @property quickActionsCompact - Heights (in pixels) for the QuickActionsBar in compact mode.
|
|
130994
|
-
* - Example: On an extra-small screen (`xs`), the QuickActionsBar height is 60px.
|
|
130995
|
-
* @property bottomNav - Content clearance for the floating Home bottom nav pill
|
|
130996
|
-
* (inner height 52 + float margin 16). Keep in sync with
|
|
130997
|
-
* `HOME_BOTTOM_NAV_CLEARANCE` in `HomeBottomNav.tsx`.
|
|
130998
|
-
* @property featuredCard - Minimum heights (in pixels) for the featured event card.
|
|
130999
|
-
* - Example: On a small screen (`sm`), the featured card has a minimum height of 220px.
|
|
131000
|
-
*/
|
|
131001
|
-
const COMPONENT_HEIGHTS = {
|
|
131002
|
-
// TopBar heights in collapsed state
|
|
131003
|
-
topBar: TOP_BAR_HEIGHTS.collapsed,
|
|
131004
|
-
// TopBar heights in expanded state (with QuickActions)
|
|
131005
|
-
topBarExpanded: TOP_BAR_HEIGHTS.expanded, // xs: 120 when on horizontal and 170 when on grid
|
|
131006
|
-
// QuickActionsBar height in compact mode
|
|
131007
|
-
quickActionsCompact: TOP_BAR_HEIGHTS.quickActionsCompact,
|
|
131008
|
-
// Primary greeting only (QuickActions hidden)
|
|
131009
|
-
topBarPrimary: TOP_BAR_HEIGHTS.primaryOnly,
|
|
131010
|
-
// Floating pill clearance (52 + 16); matches HOME_BOTTOM_NAV_CLEARANCE
|
|
131011
|
-
bottomNav: 68,
|
|
131012
|
-
// Featured event card minimum height (fixed pixels for uniform cards)
|
|
131013
|
-
featuredCard: { xs: 200, sm: 220, md: 240 },
|
|
131014
|
-
};
|
|
131015
|
-
/**
|
|
131016
|
-
* Scroll Behavior Constants
|
|
131017
|
-
*/
|
|
131018
|
-
const SCROLL_CONFIG = {
|
|
131019
|
-
// Threshold in pixels before collapsing TopBar
|
|
131020
|
-
collapseThreshold: 100,
|
|
131021
|
-
// Threshold in pixels before showing scroll-to-top button
|
|
131022
|
-
scrollToTopThreshold: 300,
|
|
131023
|
-
// Debounce delay for scroll events (ms)
|
|
131024
|
-
scrollDebounce: 16, // ~60fps
|
|
131025
|
-
};
|
|
131026
|
-
/**
|
|
131027
|
-
* Touch Interaction Constants
|
|
131028
|
-
*/
|
|
131029
|
-
const TOUCH_CONFIG = {
|
|
131030
|
-
// Minimum touch target size (accessibility)
|
|
131031
|
-
minTouchTarget: 48,
|
|
131032
|
-
// Long press duration (ms)
|
|
131033
|
-
longPressDuration: 400,
|
|
131034
|
-
// Swipe threshold distance (px)
|
|
131035
|
-
swipeThreshold: 50,
|
|
131036
|
-
// Swipe velocity threshold (px/ms)
|
|
131037
|
-
swipeVelocity: 0.3,
|
|
131038
|
-
};
|
|
131039
|
-
/**
|
|
131040
|
-
* HomePage Section Configurations
|
|
131041
|
-
*
|
|
131042
|
-
* Defines the structure and metadata for each major section of the HomePage.
|
|
131043
|
-
* Used with SectionHeader component to provide consistent section labeling.
|
|
131044
|
-
*/
|
|
131045
|
-
const HOME_SECTIONS = {
|
|
131046
|
-
WELCOME: {
|
|
131047
|
-
id: "welcome",
|
|
131048
|
-
title: "Bem-vindo",
|
|
131049
|
-
icon: "Waving Hand",
|
|
131050
|
-
showDivider: false,
|
|
131051
|
-
},
|
|
131052
|
-
WEEKLY_TASKS: {
|
|
131053
|
-
id: "weekly-tasks",
|
|
131054
|
-
title: "Tarefas da semana",
|
|
131055
|
-
subtitle: "Pequenas ações para usar o que a casa já tem no sistema",
|
|
131056
|
-
icon: "TaskAlt",
|
|
131057
|
-
showDivider: false,
|
|
131058
|
-
},
|
|
131059
|
-
PROFILE_COMPLETENESS: {
|
|
131060
|
-
id: "profile-completeness",
|
|
131061
|
-
title: "Completude do perfil",
|
|
131062
|
-
subtitle: "Acompanhe o que ainda falta para deixar seu perfil completo",
|
|
131063
|
-
icon: "Person",
|
|
131064
|
-
showDivider: false,
|
|
131065
|
-
},
|
|
131066
|
-
TERREIRO_COMPLETENESS: {
|
|
131067
|
-
id: "terreiro-completeness",
|
|
131068
|
-
title: "Perfil do Terreiro",
|
|
131069
|
-
subtitle: "Acompanhe o que ainda falta no perfil da casa (avatar, contato e endereço)",
|
|
131070
|
-
icon: "Home",
|
|
131071
|
-
showDivider: false,
|
|
131072
|
-
},
|
|
131073
|
-
PROGRESS: {
|
|
131074
|
-
id: "progress",
|
|
131075
|
-
title: "Seu Progresso",
|
|
131076
|
-
subtitle: "Acompanhe seu desenvolvimento e conquistas",
|
|
131077
|
-
icon: "TrendingUp",
|
|
131078
|
-
actionLabel: "Ver Tudo",
|
|
131079
|
-
showDivider: false,
|
|
131080
|
-
},
|
|
131081
|
-
ATTENDANCE: {
|
|
131082
|
-
id: "attendance",
|
|
131083
|
-
title: "Presença do Período",
|
|
131084
|
-
subtitle: "Confirmação e presença real dos médiuns",
|
|
131085
|
-
icon: "TrendingUp",
|
|
131086
|
-
actionLabel: "Ver médiuns",
|
|
131087
|
-
showDivider: false,
|
|
131088
|
-
},
|
|
131089
|
-
SUPPLY_PLAN: {
|
|
131090
|
-
id: "supply-plan",
|
|
131091
|
-
title: "Planejamento de Insumos",
|
|
131092
|
-
subtitle: "Resumo do que comprar e missões de insumos da casa",
|
|
131093
|
-
icon: "Inventory2",
|
|
131094
|
-
showDivider: false,
|
|
131095
|
-
},
|
|
131096
|
-
CALENDAR: {
|
|
131097
|
-
id: "calendar",
|
|
131098
|
-
title: "Próximas Atividades",
|
|
131099
|
-
subtitle: "Seus eventos e compromissos",
|
|
131100
|
-
icon: "CalendarMonth",
|
|
131101
|
-
actionLabel: "Ver Calendário",
|
|
131102
|
-
showDivider: false,
|
|
131103
|
-
},
|
|
131104
|
-
SPIRITUALITY: {
|
|
131105
|
-
id: "spirituality",
|
|
131106
|
-
title: "Espiritualidade",
|
|
131107
|
-
subtitle: "Fase lunar e rituais recomendados",
|
|
131108
|
-
icon: "AutoAwesome",
|
|
131109
|
-
showDivider: false,
|
|
131110
|
-
},
|
|
131111
|
-
HIGHLIGHTS: {
|
|
131112
|
-
id: "highlights",
|
|
131113
|
-
title: "Em Destaque",
|
|
131114
|
-
subtitle: "Próximos eventos do terreiro",
|
|
131115
|
-
icon: "Star",
|
|
131116
|
-
showDivider: false,
|
|
131117
|
-
},
|
|
131118
|
-
};
|
|
131119
|
-
|
|
131120
130972
|
const SOCIAL_HOME_HEADER_HEIGHT = 53;
|
|
131121
130973
|
const SocialHomeHeader = ({ avatarUrl, displayName = "Você", fixed = true, isScrolling = false, onOpenDrawer, onOpenFollow, }) => (React$1.createElement(Box$1, { component: "header", "data-testid": "social-home-header", sx: Object.assign({}, (fixed
|
|
131122
130974
|
? {
|
|
@@ -131453,12 +131305,16 @@ function useHideOnScroll(options = {}) {
|
|
|
131453
131305
|
return { isScrolling };
|
|
131454
131306
|
}
|
|
131455
131307
|
|
|
131456
|
-
/** Inner pill height (actions row). */
|
|
131457
|
-
const SOCIAL_HOME_BOTTOM_NAV_HEIGHT =
|
|
131308
|
+
/** Inner pill height (actions row), excluding the notch that rises above it. */
|
|
131309
|
+
const SOCIAL_HOME_BOTTOM_NAV_HEIGHT = NOTCHED_BAR_HEIGHT;
|
|
131310
|
+
/** Circle that rises above the pill. Included in measured clearance. */
|
|
131311
|
+
const SOCIAL_HOME_BOTTOM_NAV_PROTRUSION = NOTCHED_BAR_PROTRUSION;
|
|
131458
131312
|
/** Float margin below the pill. */
|
|
131459
131313
|
const SOCIAL_HOME_BOTTOM_NAV_FLOAT_MB = 16;
|
|
131460
|
-
/** Total clearance for feed padding (pill + float margin). */
|
|
131461
|
-
const SOCIAL_HOME_BOTTOM_NAV_CLEARANCE =
|
|
131314
|
+
/** Total clearance for feed padding (circle + pill + float margin). */
|
|
131315
|
+
const SOCIAL_HOME_BOTTOM_NAV_CLEARANCE = SOCIAL_HOME_BOTTOM_NAV_PROTRUSION +
|
|
131316
|
+
SOCIAL_HOME_BOTTOM_NAV_HEIGHT +
|
|
131317
|
+
SOCIAL_HOME_BOTTOM_NAV_FLOAT_MB;
|
|
131462
131318
|
const SocialHomeBottomNav = ({ active = "home", messagesUnreadCount = 0, notificationsUnreadCount = 0, onNavigateHome, onOpenMessages, onOpenNotifications, onOpenSearch, isScrolling: isScrollingProp, }) => {
|
|
131463
131319
|
const { isScrolling: internalScrolling } = useHideOnScroll();
|
|
131464
131320
|
const isScrolling = isScrollingProp !== null && isScrollingProp !== void 0 ? isScrollingProp : internalScrolling;
|
|
@@ -131492,52 +131348,22 @@ const SocialHomeBottomNav = ({ active = "home", messagesUnreadCount = 0, notific
|
|
|
131492
131348
|
px: 2,
|
|
131493
131349
|
mb: `${SOCIAL_HOME_BOTTOM_NAV_FLOAT_MB}px`,
|
|
131494
131350
|
} },
|
|
131495
|
-
React$1.createElement(Box$1, { sx: {
|
|
131496
|
-
|
|
131497
|
-
|
|
131498
|
-
|
|
131499
|
-
|
|
131500
|
-
bgcolor: (theme) => alpha(theme.palette.background.default, 0.92),
|
|
131501
|
-
backdropFilter: "blur(16px)",
|
|
131502
|
-
boxShadow: (theme) => theme.palette.mode === "dark"
|
|
131503
|
-
? "0 8px 28px rgba(0,0,0,0.45)"
|
|
131504
|
-
: "0 8px 28px rgba(0,0,0,0.12)",
|
|
131505
|
-
border: 1,
|
|
131506
|
-
borderColor: (theme) => theme.palette.mode === "dark"
|
|
131507
|
-
? "rgba(255,255,255,0.08)"
|
|
131508
|
-
: "rgba(0,0,0,0.06)",
|
|
131509
|
-
} },
|
|
131510
|
-
React$1.createElement(BottomNavigation$1, { showLabels: true, value: value, sx: {
|
|
131511
|
-
height: SOCIAL_HOME_BOTTOM_NAV_HEIGHT,
|
|
131512
|
-
width: 292,
|
|
131513
|
-
bgcolor: "transparent",
|
|
131514
|
-
"& .MuiBottomNavigationAction-root": {
|
|
131515
|
-
color: "text.secondary",
|
|
131516
|
-
minWidth: 0,
|
|
131517
|
-
flex: 1,
|
|
131518
|
-
px: 0.25,
|
|
131519
|
-
py: 0.5,
|
|
131520
|
-
"&.Mui-selected": { color: "primary.main" },
|
|
131521
|
-
},
|
|
131522
|
-
"& .MuiBottomNavigationAction-label": {
|
|
131523
|
-
fontSize: "0.6rem",
|
|
131524
|
-
mt: 0.15,
|
|
131525
|
-
"&.Mui-selected": { fontSize: "0.6rem" },
|
|
131526
|
-
},
|
|
131527
|
-
"& .MuiSvgIcon-root": {
|
|
131528
|
-
fontSize: 20,
|
|
131529
|
-
},
|
|
131530
|
-
} },
|
|
131531
|
-
React$1.createElement(BottomNavigationAction$1, { label: "Home", icon: React$1.createElement(Home$1, null), onClick: onNavigateHome }),
|
|
131532
|
-
React$1.createElement(BottomNavigationAction$1, { label: "Mensagens", "aria-label": messagesUnreadCount > 0
|
|
131351
|
+
React$1.createElement(Box$1, { sx: { width: 292, maxWidth: "100%" } },
|
|
131352
|
+
React$1.createElement(NotchedBottomBar, { activeIndex: value, "aria-label": "Navega\u00E7\u00E3o social" },
|
|
131353
|
+
React$1.createElement(NotchedBottomBarItem, { label: "Home", onClick: onNavigateHome },
|
|
131354
|
+
React$1.createElement(Home$1, null)),
|
|
131355
|
+
React$1.createElement(NotchedBottomBarItem, { label: messagesUnreadCount > 0
|
|
131533
131356
|
? `Mensagens, ${messagesUnreadCount} não lidas`
|
|
131534
|
-
: "Mensagens",
|
|
131535
|
-
|
|
131536
|
-
|
|
131357
|
+
: "Mensagens", onClick: onOpenMessages },
|
|
131358
|
+
React$1.createElement(Badge$1, { color: "primary", badgeContent: messagesUnreadCount, max: 99, invisible: !messagesUnreadCount, "data-testid": "social-nav-messages-badge" },
|
|
131359
|
+
React$1.createElement(MailOutline$1, null))),
|
|
131360
|
+
React$1.createElement(NotchedBottomBarItem, { label: notificationsUnreadCount > 0
|
|
131537
131361
|
? `Notificações, ${notificationsUnreadCount} não lidas`
|
|
131538
|
-
: "Notificações",
|
|
131539
|
-
|
|
131540
|
-
|
|
131362
|
+
: "Notificações", onClick: onOpenNotifications },
|
|
131363
|
+
React$1.createElement(Badge$1, { color: "primary", badgeContent: notificationsUnreadCount, max: 99, invisible: !notificationsUnreadCount, "data-testid": "social-nav-notifications-badge" },
|
|
131364
|
+
React$1.createElement(NotificationsNone, null))),
|
|
131365
|
+
React$1.createElement(NotchedBottomBarItem, { label: "Buscar", onClick: onOpenSearch },
|
|
131366
|
+
React$1.createElement(Search$1, null)))))));
|
|
131541
131367
|
};
|
|
131542
131368
|
|
|
131543
131369
|
const SocialUnreadIndicator = ({ count, label = "Novas mensagens", compact = false, }) => {
|
|
@@ -143948,7 +143774,9 @@ const MonthlyFeeCard = React$1.memo(({ formatCurrency, monthlyFee, dueDay, payme
|
|
|
143948
143774
|
};
|
|
143949
143775
|
return (React$1.createElement(Card$1, { "data-testid": "monthly-fee-action-card", sx: {
|
|
143950
143776
|
borderRadius: RADIUS.default,
|
|
143951
|
-
boxShadow:
|
|
143777
|
+
boxShadow: "none",
|
|
143778
|
+
border: 1,
|
|
143779
|
+
borderColor: "divider",
|
|
143952
143780
|
overflow: "hidden",
|
|
143953
143781
|
} },
|
|
143954
143782
|
React$1.createElement(CardHeader$1, { title: React$1.createElement(Stack$1, { direction: "row", alignItems: "center", justifyContent: "space-between", spacing: LIST_GAP },
|
|
@@ -143982,13 +143810,17 @@ const MonthlyFeeCard = React$1.memo(({ formatCurrency, monthlyFee, dueDay, payme
|
|
|
143982
143810
|
cursor: isSelectable ? "pointer" : "default",
|
|
143983
143811
|
borderRadius: RADIUS.default,
|
|
143984
143812
|
outline: "none",
|
|
143985
|
-
transition: "background-color 0.2s ease
|
|
143813
|
+
transition: "background-color 0.2s ease",
|
|
143986
143814
|
"&:hover": isSelectable
|
|
143987
143815
|
? {
|
|
143988
143816
|
bgcolor: theme.palette.action.hover,
|
|
143989
|
-
boxShadow: `inset 0 0 0 1px ${alpha(theme.palette.info.main, 0.24)}`,
|
|
143990
143817
|
}
|
|
143991
143818
|
: undefined,
|
|
143819
|
+
"&:focus-visible": {
|
|
143820
|
+
outline: "2px solid",
|
|
143821
|
+
outlineColor: theme.palette.primary.main,
|
|
143822
|
+
outlineOffset: 2,
|
|
143823
|
+
},
|
|
143992
143824
|
} },
|
|
143993
143825
|
React$1.createElement(Stack$1, { spacing: 0.5, sx: { mb: 1.5 } },
|
|
143994
143826
|
React$1.createElement(Typography$1, { variant: "body2", color: "text.secondary", sx: { letterSpacing: 0.2 } }, "Valor da mensalidade"),
|
|
@@ -144056,7 +143888,7 @@ const MetricItem = React$1.memo(({ icon, label, value, color, isLoading, }) => {
|
|
|
144056
143888
|
});
|
|
144057
143889
|
MetricItem.displayName = "MetricItem";
|
|
144058
143890
|
// Member payments progress component
|
|
144059
|
-
const MemberPaymentsSection = React$1.memo(({ data, isLoading }) => {
|
|
143891
|
+
const MemberPaymentsSection = React$1.memo(({ data, isLoading, collectedLabel, expectedLabel, }) => {
|
|
144060
143892
|
const theme = useTheme$1();
|
|
144061
143893
|
if (isLoading) {
|
|
144062
143894
|
return (React$1.createElement(Box$1, { sx: {
|
|
@@ -144099,7 +143931,11 @@ const MemberPaymentsSection = React$1.memo(({ data, isLoading }) => {
|
|
|
144099
143931
|
bgcolor: progressColor,
|
|
144100
143932
|
borderRadius: RADIUS.default,
|
|
144101
143933
|
},
|
|
144102
|
-
} })
|
|
143934
|
+
} }),
|
|
143935
|
+
collectedLabel && expectedLabel ? (React$1.createElement(Typography$1, { variant: "caption", color: "text.secondary", sx: { mt: 0.75 } },
|
|
143936
|
+
collectedLabel,
|
|
143937
|
+
" recebidos de ",
|
|
143938
|
+
expectedLabel)) : null));
|
|
144103
143939
|
});
|
|
144104
143940
|
MemberPaymentsSection.displayName = "MemberPaymentsSection";
|
|
144105
143941
|
// Category breakdown list component
|
|
@@ -144148,7 +143984,7 @@ const CategoryBreakdownSection = React$1.memo(({ title, categories, color, isLoa
|
|
|
144148
143984
|
});
|
|
144149
143985
|
CategoryBreakdownSection.displayName = "CategoryBreakdownSection";
|
|
144150
143986
|
const FinancialOverviewCard = React$1.memo(({ data, isLoading = false, formatCurrency, onClick, defaultExpanded = false, showMemberPayments = true, }) => {
|
|
144151
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y
|
|
143987
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y;
|
|
144152
143988
|
const theme = useTheme$1();
|
|
144153
143989
|
const [isExpandedManually, setIsExpandedManually] = React$1.useState(defaultExpanded);
|
|
144154
143990
|
// Helper to format values
|
|
@@ -144162,66 +143998,47 @@ const FinancialOverviewCard = React$1.memo(({ data, isLoading = false, formatCur
|
|
|
144162
143998
|
currency: "BRL",
|
|
144163
143999
|
}).format(value);
|
|
144164
144000
|
};
|
|
144165
|
-
// Get the current month name in Portuguese
|
|
144166
|
-
const getCurrentMonthName = () => {
|
|
144167
|
-
var _a, _b;
|
|
144168
|
-
if ((_b = (_a = data === null || data === void 0 ? void 0 : data.overview) === null || _a === void 0 ? void 0 : _a.period) === null || _b === void 0 ? void 0 : _b.start) {
|
|
144169
|
-
const date = new Date(data.overview.period.start);
|
|
144170
|
-
// Use UTC methods to avoid timezone conversion issues
|
|
144171
|
-
const year = date.getUTCFullYear();
|
|
144172
|
-
const month = date.getUTCMonth();
|
|
144173
|
-
// Create a date in the local timezone with the correct year/month
|
|
144174
|
-
const localDate = new Date(year, month, 1);
|
|
144175
|
-
return localDate.toLocaleDateString("pt-BR", {
|
|
144176
|
-
month: "long",
|
|
144177
|
-
year: "numeric",
|
|
144178
|
-
});
|
|
144179
|
-
}
|
|
144180
|
-
return new Date().toLocaleDateString("pt-BR", {
|
|
144181
|
-
month: "long",
|
|
144182
|
-
year: "numeric",
|
|
144183
|
-
});
|
|
144184
|
-
};
|
|
144185
144001
|
// Determine if net flow is positive or negative
|
|
144186
|
-
const
|
|
144002
|
+
const balanceColor = ((_b = (_a = data === null || data === void 0 ? void 0 : data.overview) === null || _a === void 0 ? void 0 : _a.totalBalance) !== null && _b !== void 0 ? _b : 0) < 0
|
|
144003
|
+
? theme.palette.error.main
|
|
144004
|
+
: theme.palette.success.main;
|
|
144005
|
+
const netFlowColor = ((_d = (_c = data === null || data === void 0 ? void 0 : data.overview) === null || _c === void 0 ? void 0 : _c.netFlow) !== null && _d !== void 0 ? _d : 0) >= 0
|
|
144187
144006
|
? theme.palette.success.main
|
|
144188
144007
|
: theme.palette.error.main;
|
|
144189
|
-
const hasCorrections = ((
|
|
144008
|
+
const hasCorrections = ((_f = (_e = data === null || data === void 0 ? void 0 : data.corrections) === null || _e === void 0 ? void 0 : _e.totalCorrections) !== null && _f !== void 0 ? _f : 0) > 0;
|
|
144190
144009
|
const hasMemberPayments = showMemberPayments &&
|
|
144191
144010
|
(data === null || data === void 0 ? void 0 : data.memberPayments) &&
|
|
144192
144011
|
data.memberPayments.totalMembers > 0;
|
|
144193
144012
|
const hasCategories = ((data === null || data === void 0 ? void 0 : data.incomeByCategory) && data.incomeByCategory.length > 0) ||
|
|
144194
144013
|
((data === null || data === void 0 ? void 0 : data.outcomeByCategory) && data.outcomeByCategory.length > 0);
|
|
144195
|
-
const
|
|
144196
|
-
((_h = (_g = data === null || data === void 0 ? void 0 : data.outcomeByCategory) === null || _g === void 0 ? void 0 : _g.length) !== null && _h !== void 0 ? _h : 0) > 1;
|
|
144197
|
-
const expanded = hasMultipleCategories ? true : isExpandedManually;
|
|
144014
|
+
const expanded = isExpandedManually;
|
|
144198
144015
|
React$1.useEffect(() => {
|
|
144199
144016
|
setIsExpandedManually(defaultExpanded);
|
|
144200
144017
|
}, [defaultExpanded]);
|
|
144201
144018
|
const handleToggleExpand = (e) => {
|
|
144202
|
-
if (hasMultipleCategories)
|
|
144203
|
-
return;
|
|
144204
144019
|
e.stopPropagation();
|
|
144205
144020
|
setIsExpandedManually((current) => !current);
|
|
144206
144021
|
};
|
|
144207
144022
|
return (React$1.createElement(Card$1, { onClick: onClick, sx: {
|
|
144208
144023
|
borderRadius: RADIUS.default,
|
|
144209
|
-
boxShadow:
|
|
144024
|
+
boxShadow: "none",
|
|
144025
|
+
border: 1,
|
|
144026
|
+
borderColor: "divider",
|
|
144210
144027
|
overflow: "hidden",
|
|
144211
144028
|
cursor: onClick ? "pointer" : "default",
|
|
144212
|
-
"
|
|
144213
|
-
|
|
144029
|
+
outline: "none",
|
|
144030
|
+
"&:hover": onClick
|
|
144031
|
+
? { borderColor: "primary.main", boxShadow: "none" }
|
|
144032
|
+
: undefined,
|
|
144033
|
+
"&:focus-visible": {
|
|
144034
|
+
outline: "2px solid",
|
|
144035
|
+
outlineColor: "primary.main",
|
|
144036
|
+
outlineOffset: 2,
|
|
144037
|
+
},
|
|
144214
144038
|
} },
|
|
144215
144039
|
React$1.createElement(CardHeader$1, { title: React$1.createElement(Stack$1, { direction: "row", alignItems: "center", justifyContent: "space-between", spacing: LIST_GAP },
|
|
144216
|
-
React$1.createElement(
|
|
144217
|
-
|
|
144218
|
-
React$1.createElement(Chip$1, { size: "small", label: getCurrentMonthName(), color: "primary", variant: "outlined", sx: {
|
|
144219
|
-
bgcolor: alpha(theme.palette.primary.main, 0.08),
|
|
144220
|
-
borderColor: alpha(theme.palette.primary.main, 0.3),
|
|
144221
|
-
fontWeight: 500,
|
|
144222
|
-
textTransform: "capitalize",
|
|
144223
|
-
} })),
|
|
144224
|
-
hasCorrections && (React$1.createElement(Chip$1, { size: "small", icon: React$1.createElement(BuildIcon, { sx: { fontSize: 14 } }), label: `${(_j = data === null || data === void 0 ? void 0 : data.corrections) === null || _j === void 0 ? void 0 : _j.totalCorrections} correções`, color: "warning", variant: "outlined", sx: {
|
|
144040
|
+
React$1.createElement(Typography$1, { variant: "subtitle1", sx: { fontWeight: 700, color: "text.primary" } }, "Resumo Financeiro"),
|
|
144041
|
+
hasCorrections && (React$1.createElement(Chip$1, { size: "small", icon: React$1.createElement(BuildIcon, { sx: { fontSize: 14 } }), label: `${(_g = data === null || data === void 0 ? void 0 : data.corrections) === null || _g === void 0 ? void 0 : _g.totalCorrections} correções`, color: "warning", variant: "outlined", sx: {
|
|
144225
144042
|
bgcolor: alpha(theme.palette.warning.main, 0.08),
|
|
144226
144043
|
borderColor: alpha(theme.palette.warning.main, 0.3),
|
|
144227
144044
|
fontWeight: 500,
|
|
@@ -144235,28 +144052,18 @@ const FinancialOverviewCard = React$1.memo(({ data, isLoading = false, formatCur
|
|
|
144235
144052
|
React$1.createElement(Box$1, { sx: {
|
|
144236
144053
|
p: CARD_PADDING,
|
|
144237
144054
|
borderRadius: RADIUS.default,
|
|
144238
|
-
bgcolor: alpha(
|
|
144239
|
-
|
|
144240
|
-
: theme.palette.success.main, 0.04),
|
|
144241
|
-
border: `1px solid ${alpha(((_o = (_m = data === null || data === void 0 ? void 0 : data.overview) === null || _m === void 0 ? void 0 : _m.totalBalance) !== null && _o !== void 0 ? _o : 0) < 0
|
|
144242
|
-
? theme.palette.primary.main
|
|
144243
|
-
: theme.palette.success.main, 0.1)}`,
|
|
144055
|
+
bgcolor: alpha(balanceColor, 0.04),
|
|
144056
|
+
border: `1px solid ${alpha(balanceColor, 0.1)}`,
|
|
144244
144057
|
} },
|
|
144245
144058
|
React$1.createElement(MetricItem, { icon: React$1.createElement(AccountBalanceIcon, { fontSize: "small" }), label: "Saldo Total (todas as contas)", value: isLoading
|
|
144246
144059
|
? ""
|
|
144247
|
-
: format((
|
|
144248
|
-
? theme.palette.primary.main
|
|
144249
|
-
: theme.palette.success.main, isLoading: isLoading }))),
|
|
144060
|
+
: format((_j = (_h = data === null || data === void 0 ? void 0 : data.overview) === null || _h === void 0 ? void 0 : _h.totalBalance) !== null && _j !== void 0 ? _j : 0, (_k = data === null || data === void 0 ? void 0 : data.formatted) === null || _k === void 0 ? void 0 : _k.totalBalance), color: balanceColor, isLoading: isLoading }))),
|
|
144250
144061
|
(hasMemberPayments || isLoading) && (React$1.createElement(Grid$1, { item: true, xs: 12 },
|
|
144251
|
-
React$1.createElement(MemberPaymentsSection, { data: data === null || data === void 0 ? void 0 : data.memberPayments, isLoading: isLoading
|
|
144252
|
-
|
|
144253
|
-
|
|
144254
|
-
?
|
|
144255
|
-
: format((
|
|
144256
|
-
React$1.createElement(Grid$1, { item: true, xs: 6 },
|
|
144257
|
-
React$1.createElement(MetricItem, { icon: React$1.createElement(TrendingDownIcon, { fontSize: "small" }), label: "Sa\u00EDdas (m\u00EAs)", value: isLoading
|
|
144258
|
-
? ""
|
|
144259
|
-
: format((_y = (_x = data === null || data === void 0 ? void 0 : data.overview) === null || _x === void 0 ? void 0 : _x.totalOutcome) !== null && _y !== void 0 ? _y : 0, (_z = data === null || data === void 0 ? void 0 : data.formatted) === null || _z === void 0 ? void 0 : _z.totalOutcome), color: theme.palette.error.main, isLoading: isLoading })),
|
|
144062
|
+
React$1.createElement(MemberPaymentsSection, { data: data === null || data === void 0 ? void 0 : data.memberPayments, isLoading: isLoading, collectedLabel: isLoading
|
|
144063
|
+
? undefined
|
|
144064
|
+
: format((_m = (_l = data === null || data === void 0 ? void 0 : data.memberPayments) === null || _l === void 0 ? void 0 : _l.collectedAmount) !== null && _m !== void 0 ? _m : 0, (_o = data === null || data === void 0 ? void 0 : data.formatted) === null || _o === void 0 ? void 0 : _o.memberPaymentsCollected), expectedLabel: isLoading
|
|
144065
|
+
? undefined
|
|
144066
|
+
: format((_q = (_p = data === null || data === void 0 ? void 0 : data.memberPayments) === null || _p === void 0 ? void 0 : _p.expectedAmount) !== null && _q !== void 0 ? _q : 0, (_r = data === null || data === void 0 ? void 0 : data.formatted) === null || _r === void 0 ? void 0 : _r.memberPaymentsExpected) }))),
|
|
144260
144067
|
React$1.createElement(Grid$1, { item: true, xs: 12 },
|
|
144261
144068
|
React$1.createElement(Box$1, { sx: {
|
|
144262
144069
|
p: LIST_CARD_CONTENT_PADDING,
|
|
@@ -144272,37 +144079,39 @@ const FinancialOverviewCard = React$1.memo(({ data, isLoading = false, formatCur
|
|
|
144272
144079
|
fontWeight: 700,
|
|
144273
144080
|
color: netFlowColor,
|
|
144274
144081
|
} },
|
|
144275
|
-
((
|
|
144276
|
-
format((
|
|
144082
|
+
((_t = (_s = data === null || data === void 0 ? void 0 : data.overview) === null || _s === void 0 ? void 0 : _s.netFlow) !== null && _t !== void 0 ? _t : 0) >= 0 ? "+" : "",
|
|
144083
|
+
format((_v = (_u = data === null || data === void 0 ? void 0 : data.overview) === null || _u === void 0 ? void 0 : _u.netFlow) !== null && _v !== void 0 ? _v : 0, (_w = data === null || data === void 0 ? void 0 : data.formatted) === null || _w === void 0 ? void 0 : _w.netFlow))))),
|
|
144277
144084
|
(hasCategories || isLoading) && (React$1.createElement(Grid$1, { item: true, xs: 12 },
|
|
144278
|
-
React$1.createElement(Box$1, {
|
|
144279
|
-
|
|
144085
|
+
React$1.createElement(Box$1, { component: "button", type: "button", onClick: handleToggleExpand, sx: {
|
|
144086
|
+
width: "100%",
|
|
144087
|
+
cursor: "pointer",
|
|
144280
144088
|
display: "flex",
|
|
144281
144089
|
alignItems: "center",
|
|
144282
144090
|
justifyContent: "center",
|
|
144283
144091
|
py: 0.5,
|
|
144284
144092
|
color: theme.palette.text.secondary,
|
|
144093
|
+
background: "none",
|
|
144094
|
+
border: 0,
|
|
144285
144095
|
"&:hover": {
|
|
144286
|
-
color:
|
|
144287
|
-
|
|
144288
|
-
|
|
144096
|
+
color: theme.palette.primary.main,
|
|
144097
|
+
},
|
|
144098
|
+
"&:focus-visible": {
|
|
144099
|
+
outline: "2px solid",
|
|
144100
|
+
outlineColor: theme.palette.primary.main,
|
|
144101
|
+
outlineOffset: 2,
|
|
144289
144102
|
},
|
|
144290
144103
|
} },
|
|
144291
144104
|
React$1.createElement(CategoryIcon, { sx: { fontSize: 16, mr: 0.5 } }),
|
|
144292
|
-
React$1.createElement(Typography$1, { variant: "caption" },
|
|
144293
|
-
? "Categorias detalhadas"
|
|
144294
|
-
: expanded
|
|
144295
|
-
? "Ocultar categorias"
|
|
144296
|
-
: "Ver por categoria")),
|
|
144105
|
+
React$1.createElement(Typography$1, { variant: "caption", component: "span" }, expanded ? "Ocultar categorias" : "Ver por categoria")),
|
|
144297
144106
|
React$1.createElement(Collapse$1, { in: expanded },
|
|
144298
144107
|
React$1.createElement(Divider$1, { sx: { my: 1.5 } }),
|
|
144299
144108
|
React$1.createElement(Grid$1, { container: true, spacing: GRID_GAP },
|
|
144300
|
-
(((
|
|
144109
|
+
(((_x = data === null || data === void 0 ? void 0 : data.incomeByCategory) === null || _x === void 0 ? void 0 : _x.length) || isLoading) && (React$1.createElement(Grid$1, { item: true, xs: 12, sm: 6 },
|
|
144301
144110
|
React$1.createElement(CategoryBreakdownSection, { title: "Entradas por Categoria", categories: data === null || data === void 0 ? void 0 : data.incomeByCategory, color: theme.palette.success.main, isLoading: isLoading, icon: React$1.createElement(TrendingUp$1, { sx: {
|
|
144302
144111
|
fontSize: 16,
|
|
144303
144112
|
color: theme.palette.success.main,
|
|
144304
144113
|
} }) }))),
|
|
144305
|
-
(((
|
|
144114
|
+
(((_y = data === null || data === void 0 ? void 0 : data.outcomeByCategory) === null || _y === void 0 ? void 0 : _y.length) || isLoading) && (React$1.createElement(Grid$1, { item: true, xs: 12, sm: 6 },
|
|
144306
144115
|
React$1.createElement(CategoryBreakdownSection, { title: "Sa\u00EDdas por Categoria", categories: data === null || data === void 0 ? void 0 : data.outcomeByCategory, color: theme.palette.error.main, isLoading: isLoading, icon: React$1.createElement(TrendingDownIcon, { sx: {
|
|
144307
144116
|
fontSize: 16,
|
|
144308
144117
|
color: theme.palette.error.main,
|
|
@@ -144412,7 +144221,6 @@ const AccountListItem = React$1.memo(({ account, isLastItem, onSelect, formatCur
|
|
|
144412
144221
|
const theme = useTheme$1();
|
|
144413
144222
|
const isMobile = useMediaQuery(theme.breakpoints.down("sm"));
|
|
144414
144223
|
// Convert string balances to numbers for formatting
|
|
144415
|
-
const initialBalance = parseFloat(account.initialBalance);
|
|
144416
144224
|
const currentBalance = parseFloat(account.currentBalance);
|
|
144417
144225
|
return (React$1.createElement(ListItem$1, { "data-testid": `financial-account-list-item-${account.id}`, sx: {
|
|
144418
144226
|
width: "100%",
|
|
@@ -144445,9 +144253,6 @@ const AccountListItem = React$1.memo(({ account, isLastItem, onSelect, formatCur
|
|
|
144445
144253
|
account.agency,
|
|
144446
144254
|
" | Conta: ",
|
|
144447
144255
|
account.account)),
|
|
144448
|
-
React$1.createElement(Typography$1, { variant: "body2", color: "text.secondary", sx: { fontSize: { xs: "0.75rem", sm: "0.875rem" } } },
|
|
144449
|
-
"Saldo inicial: ",
|
|
144450
|
-
formatCurrency(initialBalance)),
|
|
144451
144256
|
React$1.createElement(Typography$1, { variant: "body2", color: "text.secondary", sx: { fontSize: { xs: "0.75rem", sm: "0.875rem" } } },
|
|
144452
144257
|
"Saldo atual: ",
|
|
144453
144258
|
formatCurrency(currentBalance)),
|
|
@@ -144495,8 +144300,7 @@ const EmptyState$2 = React$1.memo(({ onAddAccount, theme }) => {
|
|
|
144495
144300
|
});
|
|
144496
144301
|
EmptyState$2.displayName = "EmptyState";
|
|
144497
144302
|
// Income/Outcome card component
|
|
144498
|
-
const FinanceMetricCard = React$1.memo(({ title, value,
|
|
144499
|
-
const theme = useTheme$1();
|
|
144303
|
+
const FinanceMetricCard = React$1.memo(({ title, value, color, icon, formatCurrency, onClick, ctaLabel = "Ver lista", ariaLabel, testId, }) => {
|
|
144500
144304
|
const handleKeyDown = (e) => {
|
|
144501
144305
|
if (!onClick)
|
|
144502
144306
|
return;
|
|
@@ -144507,17 +144311,26 @@ const FinanceMetricCard = React$1.memo(({ title, value, month, year, color, icon
|
|
|
144507
144311
|
};
|
|
144508
144312
|
return (React$1.createElement(Card$1, { "data-testid": testId, onClick: onClick, onKeyDown: handleKeyDown, role: onClick ? "button" : undefined, tabIndex: onClick ? 0 : undefined, "aria-label": onClick ? ariaLabel : undefined, sx: {
|
|
144509
144313
|
borderRadius: RADIUS.default,
|
|
144510
|
-
boxShadow:
|
|
144314
|
+
boxShadow: "none",
|
|
144315
|
+
border: 1,
|
|
144316
|
+
borderColor: "divider",
|
|
144511
144317
|
height: "100%",
|
|
144512
144318
|
cursor: onClick ? "pointer" : "default",
|
|
144513
|
-
// subtle hover elevation when clickable
|
|
144514
|
-
"&:hover": onClick ? { boxShadow: theme.shadows[4] } : undefined,
|
|
144515
144319
|
outline: "none",
|
|
144320
|
+
"&:hover": onClick
|
|
144321
|
+
? { borderColor: "primary.main", boxShadow: "none" }
|
|
144322
|
+
: undefined,
|
|
144323
|
+
"&:focus-visible": {
|
|
144324
|
+
outline: "2px solid",
|
|
144325
|
+
outlineColor: "primary.main",
|
|
144326
|
+
outlineOffset: 2,
|
|
144327
|
+
},
|
|
144516
144328
|
} },
|
|
144517
144329
|
React$1.createElement(CardContent$1, { sx: LIST_CARD_CONTENT_SX },
|
|
144518
144330
|
React$1.createElement(Box$1, { sx: {
|
|
144519
144331
|
display: "flex",
|
|
144520
144332
|
justifyContent: "space-between",
|
|
144333
|
+
alignItems: "flex-start",
|
|
144521
144334
|
} },
|
|
144522
144335
|
React$1.createElement(Box$1, { sx: { display: "flex", alignItems: "center", mb: 1 } },
|
|
144523
144336
|
icon,
|
|
@@ -144525,24 +144338,13 @@ const FinanceMetricCard = React$1.memo(({ title, value, month, year, color, icon
|
|
|
144525
144338
|
fontWeight: 600,
|
|
144526
144339
|
ml: 1,
|
|
144527
144340
|
} }, title)),
|
|
144528
|
-
React$1.createElement(
|
|
144529
|
-
|
|
144530
|
-
ml: 1,
|
|
144531
|
-
} }, showAmount
|
|
144532
|
-
? `${month}/${year}`
|
|
144533
|
-
: ctaLabel || (onClick ? "Ver lista" : ""))),
|
|
144534
|
-
showAmount ? (React$1.createElement(Typography$1, { variant: "h6", sx: {
|
|
144341
|
+
onClick ? (React$1.createElement(ChevronRight$2, { sx: { color, fontSize: 20 }, "aria-hidden": "true" })) : null),
|
|
144342
|
+
React$1.createElement(Typography$1, { variant: "h6", sx: {
|
|
144535
144343
|
color: color,
|
|
144536
144344
|
fontWeight: 600,
|
|
144537
144345
|
fontSize: { xs: "1rem", sm: "1.25rem" },
|
|
144538
|
-
} }, formatCurrency(value))
|
|
144539
|
-
|
|
144540
|
-
justifyContent: "space-between",
|
|
144541
|
-
alignItems: "center",
|
|
144542
|
-
mt: 0.5,
|
|
144543
|
-
} },
|
|
144544
|
-
React$1.createElement(Typography$1, { variant: "body2", color: "text.secondary", sx: { fontWeight: 500 } }, ctaDescription || "Abrir lista"),
|
|
144545
|
-
React$1.createElement(ChevronRight$2, { sx: { color: color, fontSize: 20 }, "aria-hidden": "true" }))))));
|
|
144346
|
+
} }, formatCurrency(value)),
|
|
144347
|
+
onClick ? (React$1.createElement(Typography$1, { variant: "body2", color: "text.secondary", sx: { fontWeight: 500, mt: 0.5 } }, ctaLabel)) : null)));
|
|
144546
144348
|
});
|
|
144547
144349
|
FinanceMetricCard.displayName = "FinanceMetricCard";
|
|
144548
144350
|
const FinancialAccountsList = (props) => {
|
|
@@ -144550,7 +144352,6 @@ const FinancialAccountsList = (props) => {
|
|
|
144550
144352
|
const theme = useTheme$1();
|
|
144551
144353
|
const { data, fns } = useFinancialAccountsList(props);
|
|
144552
144354
|
const isMobile = useMediaQuery(theme.breakpoints.down("sm"));
|
|
144553
|
-
const hasOverviewData = Boolean(props.financialOverview) && !props.isOverviewLoading;
|
|
144554
144355
|
const showPeriodFilter = (_a = props.showPeriodFilter) !== null && _a !== void 0 ? _a : Boolean(props.periodLabel ||
|
|
144555
144356
|
props.periodInputValue ||
|
|
144556
144357
|
props.onPeriodInputChange ||
|
|
@@ -144568,25 +144369,23 @@ const FinancialAccountsList = (props) => {
|
|
|
144568
144369
|
} },
|
|
144569
144370
|
React$1.createElement(PageHeader$2, { title: "Financeiro", onBack: props.onBack, onAdd: props.onAddAccount, addLabel: "Adicionar", showAddButton: true, hideAddButtonOnMobile: true }),
|
|
144570
144371
|
React$1.createElement(Container$1, { maxWidth: "md", sx: PAGE_LIST_CONTAINER_SPACING },
|
|
144571
|
-
showPeriodFilter && (React$1.createElement(Stack$1, {
|
|
144572
|
-
React$1.createElement(Stack$1, { spacing:
|
|
144573
|
-
React$1.createElement(Typography$1, { variant: "subtitle2", color: "text.secondary" }, "Compet\u00EAncia"),
|
|
144574
|
-
React$1.createElement(Typography$1, { variant: "body2", sx: { textTransform: "capitalize" } }, props.periodLabel || "-")),
|
|
144575
|
-
React$1.createElement(Stack$1, { direction: "row", spacing: 1, alignItems: "center" },
|
|
144372
|
+
showPeriodFilter && (React$1.createElement(Stack$1, { spacing: 1, sx: { pb: LIST_CONTROLS_MARGIN_BOTTOM } },
|
|
144373
|
+
React$1.createElement(Stack$1, { direction: "row", spacing: 1, alignItems: "center", flexWrap: "wrap" },
|
|
144576
144374
|
React$1.createElement(LabeledMonthPicker, { label: "Selecionar m\u00EAs", value: props.periodInputValue || "", onChange: (value) => { var _a; return (_a = props.onPeriodInputChange) === null || _a === void 0 ? void 0 : _a.call(props, value); }, minMonth: props.periodInputMin || "2000-01", maxMonth: props.periodInputMax || "2100-12", "data-testid": "financial-period-input" }),
|
|
144577
144375
|
React$1.createElement(Button$1, { variant: "text", onClick: props.onResetToCurrentPeriod, "data-testid": "financial-period-current-month-button" }, "M\u00EAs atual"),
|
|
144578
144376
|
props.canExportFinancialReport &&
|
|
144579
144377
|
props.onExportFinancialReport && (React$1.createElement(Button$1, { variant: "outlined", onClick: props.onExportFinancialReport, disabled: props.isExportingFinancialReport, "data-testid": "financial-report-export-button" }, props.isExportingFinancialReport
|
|
144580
144378
|
? "Exportando..."
|
|
144581
|
-
: "Exportar CSV")))
|
|
144379
|
+
: "Exportar CSV"))),
|
|
144380
|
+
props.financialReportExportError ? (React$1.createElement(Alert$1, { severity: "error", "data-testid": "financial-report-export-error" }, props.financialReportExportError)) : null)),
|
|
144582
144381
|
React$1.createElement(Box$1, { sx: { mb: SECTION_GAP } },
|
|
144583
144382
|
(props.financialOverview || props.isOverviewLoading) && (React$1.createElement(Box$1, { sx: { mb: LIST_CONTROLS_MARGIN_BOTTOM } },
|
|
144584
144383
|
React$1.createElement(FinancialOverviewCard, { data: props.financialOverview, isLoading: props.isOverviewLoading, formatCurrency: data.formatCurrency, defaultExpanded: props.financialOverviewExpanded, showMemberPayments: Boolean(props.isTerreiro) }))),
|
|
144585
144384
|
React$1.createElement(Grid$1, { container: true, spacing: GRID_GAP, sx: { mb: LIST_CONTROLS_MARGIN_BOTTOM } },
|
|
144586
144385
|
React$1.createElement(Grid$1, { item: true, xs: 6 },
|
|
144587
|
-
React$1.createElement(FinanceMetricCard, { title: "Entrada", value: data.income.totalAmount || 0,
|
|
144386
|
+
React$1.createElement(FinanceMetricCard, { title: "Entrada", value: data.income.totalAmount || 0, color: theme.palette.success.main, icon: React$1.createElement(TrendingUp$1, { sx: { color: theme.palette.success.main } }), formatCurrency: data.formatCurrency, onClick: props.onClickIncome, ctaLabel: "Ver lista", ariaLabel: "Ver lista de entradas", testId: "financial-income-metric-card" })),
|
|
144588
144387
|
React$1.createElement(Grid$1, { item: true, xs: 6 },
|
|
144589
|
-
React$1.createElement(FinanceMetricCard, { title: "Sa\u00EDda", value: data.outcome.totalAmount || 0,
|
|
144388
|
+
React$1.createElement(FinanceMetricCard, { title: "Sa\u00EDda", value: data.outcome.totalAmount || 0, color: theme.palette.error.main, icon: React$1.createElement(TrendingDownIcon, { sx: { color: theme.palette.error.main } }), formatCurrency: data.formatCurrency, onClick: props.onClickOutcome, ctaLabel: "Ver lista", ariaLabel: "Ver lista de sa\u00EDdas", testId: "financial-outcome-metric-card" }))),
|
|
144590
144389
|
props.isTerreiro && (React$1.createElement(MonthlyFeeCard, { formatCurrency: data.formatCurrency, monthlyFee: data.monthlyFee || 0, dueDay: data.monthlyFeeDueDay !== undefined
|
|
144591
144390
|
? String(data.monthlyFeeDueDay)
|
|
144592
144391
|
: "-", paymentMethod: data.monthlyFeePaymentMethod !== undefined
|
|
@@ -152661,7 +152460,139 @@ const isDefaultHomeWidgetOrder = (order, profile) => {
|
|
|
152661
152460
|
};
|
|
152662
152461
|
const mergeHomeWidgetVisibility = (partial) => (Object.assign(Object.assign({}, DEFAULT_HOME_WIDGET_VISIBILITY), (partial !== null && partial !== void 0 ? partial : {})));
|
|
152663
152462
|
|
|
152664
|
-
|
|
152463
|
+
/** Funcionalidade ids used as the untouched defaults for each profile. */
|
|
152464
|
+
const BOTTOM_NAV_ACTION_EVENTS = "events";
|
|
152465
|
+
const BOTTOM_NAV_ACTION_ACTIVITIES = "activities";
|
|
152466
|
+
const BOTTOM_NAV_ACTION_SOCIAL = "social";
|
|
152467
|
+
const BOTTOM_NAV_ACTION_RITUAL_BATHS = "ritual-baths";
|
|
152468
|
+
enumType(["leading", "trailing"]);
|
|
152469
|
+
const HomeBottomNavShortcutsSchema = objectType({
|
|
152470
|
+
leading: stringType().min(1),
|
|
152471
|
+
trailing: stringType().min(1),
|
|
152472
|
+
});
|
|
152473
|
+
const HomeBottomNavProfileKindSchema = enumType(["personal", "terreiro"]);
|
|
152474
|
+
const ATALHOS_DA_BARRA_TITLE = "Atalhos da barra";
|
|
152475
|
+
const ATALHOS_DA_BARRA_ROW_TITLE = "Escolher atalhos";
|
|
152476
|
+
const ATALHOS_DA_BARRA_SECTION_DESCRIPTION = "Troque os dois atalhos ao lado do logo por outras Funcionalidades. Home, o logo e Menu não mudam, e a escolha vale só para este perfil.";
|
|
152477
|
+
const ATALHOS_DA_BARRA_ONLY_TWO_TEXT = "Somente estes dois atalhos podem ser alterados. Home, o logo (troca de perfil) e Menu permanecem fixos.";
|
|
152478
|
+
const ATALHOS_DA_BARRA_FROM_FUNCIONALIDADES_TEXT = "A lista é a de Funcionalidades deste perfil.";
|
|
152479
|
+
const ATALHOS_DA_BARRA_PERSONAL_SCOPE_TEXT = "Esta escolha fica só no perfil pessoal. Cada terreiro guarda a sua, separada.";
|
|
152480
|
+
const atalhosDaBarraTerreiroScopeText = (terreiroName) => `Esta escolha fica só em ${terreiroName}. O perfil pessoal e os outros terreiros não são alterados.`;
|
|
152481
|
+
const ATALHOS_DA_BARRA_LEADING_LABEL = "Esquerda";
|
|
152482
|
+
const ATALHOS_DA_BARRA_TRAILING_LABEL = "Direita";
|
|
152483
|
+
const ATALHOS_DA_BARRA_USED_ELSEWHERE = "Usado no outro atalho";
|
|
152484
|
+
const RESTAURAR_ATALHOS_PADRAO_LABEL = "Restaurar padrão";
|
|
152485
|
+
const BOTTOM_NAV_PROFILE_PERSONAL_LABEL = "Perfil pessoal";
|
|
152486
|
+
const SYNTHETIC_ACTIONS = {
|
|
152487
|
+
[BOTTOM_NAV_ACTION_EVENTS]: {
|
|
152488
|
+
id: BOTTOM_NAV_ACTION_EVENTS,
|
|
152489
|
+
title: "Eventos",
|
|
152490
|
+
route: "/events",
|
|
152491
|
+
icon: "📅",
|
|
152492
|
+
},
|
|
152493
|
+
[BOTTOM_NAV_ACTION_ACTIVITIES]: {
|
|
152494
|
+
id: BOTTOM_NAV_ACTION_ACTIVITIES,
|
|
152495
|
+
title: "Atividades",
|
|
152496
|
+
route: "/activities",
|
|
152497
|
+
icon: "📋",
|
|
152498
|
+
},
|
|
152499
|
+
[BOTTOM_NAV_ACTION_SOCIAL]: {
|
|
152500
|
+
id: BOTTOM_NAV_ACTION_SOCIAL,
|
|
152501
|
+
title: "Social",
|
|
152502
|
+
route: "/social",
|
|
152503
|
+
icon: "🌐",
|
|
152504
|
+
},
|
|
152505
|
+
[BOTTOM_NAV_ACTION_RITUAL_BATHS]: {
|
|
152506
|
+
id: BOTTOM_NAV_ACTION_RITUAL_BATHS,
|
|
152507
|
+
title: "Banhos",
|
|
152508
|
+
route: "/ritual-baths",
|
|
152509
|
+
icon: "🧘",
|
|
152510
|
+
},
|
|
152511
|
+
};
|
|
152512
|
+
/**
|
|
152513
|
+
* The events Funcionalidade is titled "Giras" in the menu.
|
|
152514
|
+
* The bar keeps the established short label "Eventos".
|
|
152515
|
+
*/
|
|
152516
|
+
const bottomNavLabelForAction = (action) => action.id === BOTTOM_NAV_ACTION_EVENTS ? "Eventos" : action.title;
|
|
152517
|
+
const getDefaultBottomNavShortcuts = (input) => {
|
|
152518
|
+
if (input.hasTerreiroContext) {
|
|
152519
|
+
return {
|
|
152520
|
+
leading: BOTTOM_NAV_ACTION_EVENTS,
|
|
152521
|
+
trailing: BOTTOM_NAV_ACTION_ACTIVITIES,
|
|
152522
|
+
};
|
|
152523
|
+
}
|
|
152524
|
+
if (input.canUseSocial) {
|
|
152525
|
+
return {
|
|
152526
|
+
leading: BOTTOM_NAV_ACTION_SOCIAL,
|
|
152527
|
+
trailing: BOTTOM_NAV_ACTION_ACTIVITIES,
|
|
152528
|
+
};
|
|
152529
|
+
}
|
|
152530
|
+
return {
|
|
152531
|
+
leading: BOTTOM_NAV_ACTION_RITUAL_BATHS,
|
|
152532
|
+
trailing: BOTTOM_NAV_ACTION_ACTIVITIES,
|
|
152533
|
+
};
|
|
152534
|
+
};
|
|
152535
|
+
const toShortcutAction = (action) => ({
|
|
152536
|
+
id: action.id,
|
|
152537
|
+
label: bottomNavLabelForAction(action),
|
|
152538
|
+
route: action.route,
|
|
152539
|
+
icon: action.icon,
|
|
152540
|
+
badge: action.badge,
|
|
152541
|
+
});
|
|
152542
|
+
const findAction = (actions, id) => {
|
|
152543
|
+
if (!id)
|
|
152544
|
+
return undefined;
|
|
152545
|
+
return actions.find((action) => action.id === id);
|
|
152546
|
+
};
|
|
152547
|
+
/**
|
|
152548
|
+
* Maps stored ids onto the current Funcionalidades.
|
|
152549
|
+
* A missing id falls back to that profile's default. The two slots never share an id.
|
|
152550
|
+
*/
|
|
152551
|
+
const resolveBottomNavShortcuts = (input) => {
|
|
152552
|
+
var _a, _b, _c;
|
|
152553
|
+
const defaults = getDefaultBottomNavShortcuts(input);
|
|
152554
|
+
const availableIds = input.actions.map((action) => action.id);
|
|
152555
|
+
const available = new Set(availableIds);
|
|
152556
|
+
const pickId = (preferred, fallback, blocked) => {
|
|
152557
|
+
const candidates = [preferred, fallback, ...availableIds];
|
|
152558
|
+
for (const id of candidates) {
|
|
152559
|
+
if (!id || id === blocked)
|
|
152560
|
+
continue;
|
|
152561
|
+
if (available.size === 0 || available.has(id))
|
|
152562
|
+
return id;
|
|
152563
|
+
}
|
|
152564
|
+
return fallback;
|
|
152565
|
+
};
|
|
152566
|
+
const leadingId = pickId((_a = input.shortcuts) === null || _a === void 0 ? void 0 : _a.leading, defaults.leading);
|
|
152567
|
+
let trailingId = pickId((_b = input.shortcuts) === null || _b === void 0 ? void 0 : _b.trailing, defaults.trailing, leadingId);
|
|
152568
|
+
if (trailingId === leadingId) {
|
|
152569
|
+
trailingId = pickId(defaults.trailing === leadingId ? undefined : defaults.trailing, (_c = availableIds.find((id) => id !== leadingId)) !== null && _c !== void 0 ? _c : defaults.trailing, leadingId);
|
|
152570
|
+
}
|
|
152571
|
+
const resolveOne = (id) => {
|
|
152572
|
+
var _a;
|
|
152573
|
+
const match = (_a = findAction(input.actions, id)) !== null && _a !== void 0 ? _a : SYNTHETIC_ACTIONS[id];
|
|
152574
|
+
if (match)
|
|
152575
|
+
return toShortcutAction(match);
|
|
152576
|
+
return {
|
|
152577
|
+
id,
|
|
152578
|
+
label: id,
|
|
152579
|
+
route: "/",
|
|
152580
|
+
};
|
|
152581
|
+
};
|
|
152582
|
+
const leading = resolveOne(leadingId);
|
|
152583
|
+
const trailing = resolveOne(trailingId);
|
|
152584
|
+
const shortcuts = { leading: leading.id, trailing: trailing.id };
|
|
152585
|
+
const isDefault = shortcuts.leading === defaults.leading &&
|
|
152586
|
+
shortcuts.trailing === defaults.trailing;
|
|
152587
|
+
return { leading, trailing, shortcuts, defaults, isDefault };
|
|
152588
|
+
};
|
|
152589
|
+
|
|
152590
|
+
enumType([
|
|
152591
|
+
"root",
|
|
152592
|
+
"visibility",
|
|
152593
|
+
"order",
|
|
152594
|
+
"shortcuts",
|
|
152595
|
+
]);
|
|
152665
152596
|
objectType({
|
|
152666
152597
|
open: booleanType(),
|
|
152667
152598
|
onClose: functionType(tupleType([]), voidType()),
|
|
@@ -152697,6 +152628,19 @@ objectType({
|
|
|
152697
152628
|
*/
|
|
152698
152629
|
onWidgetsCustomizeViewOpen: functionType(tupleType([HomeWidgetsCustomizeViewSchema]), voidType())
|
|
152699
152630
|
.optional(),
|
|
152631
|
+
/**
|
|
152632
|
+
* Resolved leading/trailing Funcionalidade ids for the active profile.
|
|
152633
|
+
* Shown in Atalhos da barra. Omitted with onBottomNavShortcutChange hides the section.
|
|
152634
|
+
*/
|
|
152635
|
+
bottomNavShortcuts: HomeBottomNavShortcutsSchema.optional(),
|
|
152636
|
+
/** Profile defaults used by Restaurar padrão. */
|
|
152637
|
+
defaultBottomNavShortcuts: HomeBottomNavShortcutsSchema.optional(),
|
|
152638
|
+
onBottomNavShortcutChange: functionType(tupleType([HomeBottomNavShortcutsSchema]), voidType())
|
|
152639
|
+
.optional(),
|
|
152640
|
+
/** personal vs the selected terreiro — copy explains the choice is not shared. */
|
|
152641
|
+
bottomNavProfileKind: HomeBottomNavProfileKindSchema.optional(),
|
|
152642
|
+
/** Terreiro name, or "Perfil pessoal". */
|
|
152643
|
+
bottomNavProfileLabel: stringType().min(1).optional(),
|
|
152700
152644
|
});
|
|
152701
152645
|
const FUNCIONALIDADES_SECTION_DESCRIPTION = "Atalhos para as principais áreas e ações do terreiro.";
|
|
152702
152646
|
const WIDGETS_SECTION_DESCRIPTION = "Personalize quais widgets aparecem na tela inicial e em que ordem.";
|
|
@@ -152735,6 +152679,9 @@ const useHomeMenu = (props) => {
|
|
|
152735
152679
|
setView("order");
|
|
152736
152680
|
(_a = props.onWidgetsCustomizeViewOpen) === null || _a === void 0 ? void 0 : _a.call(props, "order");
|
|
152737
152681
|
}, [props]);
|
|
152682
|
+
const handleOpenShortcuts = React$1.useCallback(() => {
|
|
152683
|
+
setView("shortcuts");
|
|
152684
|
+
}, []);
|
|
152738
152685
|
const handleActionClick = React$1.useCallback((route) => {
|
|
152739
152686
|
props.onActionClick(route);
|
|
152740
152687
|
props.onClose();
|
|
@@ -152807,6 +152754,36 @@ const useHomeMenu = (props) => {
|
|
|
152807
152754
|
const meta = { method: "reset" };
|
|
152808
152755
|
props.onWidgetOrderChange([...defaultWidgetOrder], meta);
|
|
152809
152756
|
}, [props, currentOrder, defaultWidgetOrder]);
|
|
152757
|
+
const bottomNavShortcuts = props.bottomNavShortcuts;
|
|
152758
|
+
const defaultBottomNavShortcuts = props.defaultBottomNavShortcuts;
|
|
152759
|
+
const isDefaultBottomNavShortcuts = React$1.useMemo(() => {
|
|
152760
|
+
if (!bottomNavShortcuts || !defaultBottomNavShortcuts)
|
|
152761
|
+
return true;
|
|
152762
|
+
return (bottomNavShortcuts.leading === defaultBottomNavShortcuts.leading &&
|
|
152763
|
+
bottomNavShortcuts.trailing === defaultBottomNavShortcuts.trailing);
|
|
152764
|
+
}, [bottomNavShortcuts, defaultBottomNavShortcuts]);
|
|
152765
|
+
const handleBottomNavShortcutChange = React$1.useCallback((slot, actionId) => {
|
|
152766
|
+
if (!props.onBottomNavShortcutChange || !bottomNavShortcuts)
|
|
152767
|
+
return;
|
|
152768
|
+
if (bottomNavShortcuts[slot] === actionId)
|
|
152769
|
+
return;
|
|
152770
|
+
const next = Object.assign(Object.assign({}, bottomNavShortcuts), { [slot]: actionId });
|
|
152771
|
+
if (next.leading === next.trailing)
|
|
152772
|
+
return;
|
|
152773
|
+
props.onBottomNavShortcutChange(next);
|
|
152774
|
+
}, [props, bottomNavShortcuts]);
|
|
152775
|
+
const handleBottomNavShortcutReset = React$1.useCallback(() => {
|
|
152776
|
+
if (!props.onBottomNavShortcutChange ||
|
|
152777
|
+
!defaultBottomNavShortcuts ||
|
|
152778
|
+
isDefaultBottomNavShortcuts) {
|
|
152779
|
+
return;
|
|
152780
|
+
}
|
|
152781
|
+
props.onBottomNavShortcutChange(Object.assign({}, defaultBottomNavShortcuts));
|
|
152782
|
+
}, [
|
|
152783
|
+
props,
|
|
152784
|
+
defaultBottomNavShortcuts,
|
|
152785
|
+
isDefaultBottomNavShortcuts,
|
|
152786
|
+
]);
|
|
152810
152787
|
const widgets = React$1.useMemo(() => {
|
|
152811
152788
|
if (props.showQuickActions === undefined) {
|
|
152812
152789
|
return props.widgets;
|
|
@@ -152828,17 +152805,25 @@ const useHomeMenu = (props) => {
|
|
|
152828
152805
|
return widgets.filter((widget) => widget.id !== "quickActions");
|
|
152829
152806
|
}, [props.reorderableWidgets, props.widgetOrder, widgets]);
|
|
152830
152807
|
const showQuickActions = (_e = (_c = props.showQuickActions) !== null && _c !== void 0 ? _c : (_d = widgets.find((widget) => widget.id === "quickActions")) === null || _d === void 0 ? void 0 : _d.visible) !== null && _e !== void 0 ? _e : true;
|
|
152831
|
-
const data = React$1.useMemo(() =>
|
|
152832
|
-
|
|
152833
|
-
|
|
152834
|
-
|
|
152835
|
-
|
|
152836
|
-
|
|
152837
|
-
|
|
152838
|
-
|
|
152839
|
-
|
|
152840
|
-
|
|
152841
|
-
|
|
152808
|
+
const data = React$1.useMemo(() => {
|
|
152809
|
+
var _a;
|
|
152810
|
+
return ({
|
|
152811
|
+
open: props.open,
|
|
152812
|
+
actions: props.actions,
|
|
152813
|
+
widgets,
|
|
152814
|
+
reorderableWidgets,
|
|
152815
|
+
showQuickActions,
|
|
152816
|
+
view,
|
|
152817
|
+
canReorder,
|
|
152818
|
+
isDefaultOrder,
|
|
152819
|
+
defaultWidgetOrder,
|
|
152820
|
+
canCustomizeBottomNav: props.onBottomNavShortcutChange !== undefined && props.actions.length > 0,
|
|
152821
|
+
bottomNavShortcuts,
|
|
152822
|
+
isDefaultBottomNavShortcuts,
|
|
152823
|
+
bottomNavProfileKind: (_a = props.bottomNavProfileKind) !== null && _a !== void 0 ? _a : "personal",
|
|
152824
|
+
bottomNavProfileLabel: props.bottomNavProfileLabel,
|
|
152825
|
+
});
|
|
152826
|
+
}, [
|
|
152842
152827
|
props.open,
|
|
152843
152828
|
props.actions,
|
|
152844
152829
|
widgets,
|
|
@@ -152848,33 +152833,110 @@ const useHomeMenu = (props) => {
|
|
|
152848
152833
|
canReorder,
|
|
152849
152834
|
isDefaultOrder,
|
|
152850
152835
|
defaultWidgetOrder,
|
|
152836
|
+
props.onBottomNavShortcutChange,
|
|
152837
|
+
bottomNavShortcuts,
|
|
152838
|
+
isDefaultBottomNavShortcuts,
|
|
152839
|
+
props.bottomNavProfileKind,
|
|
152840
|
+
props.bottomNavProfileLabel,
|
|
152851
152841
|
]);
|
|
152852
152842
|
const fns = React$1.useMemo(() => ({
|
|
152853
152843
|
handleClose,
|
|
152854
152844
|
handleBack,
|
|
152855
152845
|
handleOpenVisibility,
|
|
152856
152846
|
handleOpenOrder,
|
|
152847
|
+
handleOpenShortcuts,
|
|
152857
152848
|
handleActionClick,
|
|
152858
152849
|
handleWidgetVisibilityChange,
|
|
152859
152850
|
handleShowQuickActionsChange,
|
|
152860
152851
|
handleWidgetOrderMove,
|
|
152861
152852
|
handleWidgetOrderReorder,
|
|
152862
152853
|
handleWidgetOrderReset,
|
|
152854
|
+
handleBottomNavShortcutChange,
|
|
152855
|
+
handleBottomNavShortcutReset,
|
|
152863
152856
|
}), [
|
|
152864
152857
|
handleClose,
|
|
152865
152858
|
handleBack,
|
|
152866
152859
|
handleOpenVisibility,
|
|
152867
152860
|
handleOpenOrder,
|
|
152861
|
+
handleOpenShortcuts,
|
|
152868
152862
|
handleActionClick,
|
|
152869
152863
|
handleWidgetVisibilityChange,
|
|
152870
152864
|
handleShowQuickActionsChange,
|
|
152871
152865
|
handleWidgetOrderMove,
|
|
152872
152866
|
handleWidgetOrderReorder,
|
|
152873
152867
|
handleWidgetOrderReset,
|
|
152868
|
+
handleBottomNavShortcutChange,
|
|
152869
|
+
handleBottomNavShortcutReset,
|
|
152874
152870
|
]);
|
|
152875
152871
|
return { data, fns };
|
|
152876
152872
|
};
|
|
152877
152873
|
|
|
152874
|
+
const sectionDescriptionSx$1 = {
|
|
152875
|
+
fontSize: "0.8125rem",
|
|
152876
|
+
lineHeight: 1.4,
|
|
152877
|
+
mt: 0,
|
|
152878
|
+
mb: 1.5,
|
|
152879
|
+
px: 0.5,
|
|
152880
|
+
};
|
|
152881
|
+
const ShortcutRadioList = ({ slot, label, value, blockedId, actions, onChange }) => {
|
|
152882
|
+
const theme = useTheme$1();
|
|
152883
|
+
return (React$1.createElement(Box$1, { sx: { mb: 2 } },
|
|
152884
|
+
React$1.createElement(Typography$1, { variant: "subtitle2", color: "text.secondary", component: "h2", sx: { fontWeight: 600, fontSize: "0.8125rem", mb: 1, px: 0.5 } }, label),
|
|
152885
|
+
React$1.createElement(RadioGroup$1, { "aria-label": `Atalho da ${label.toLowerCase()}`, value: value, onChange: (_event, next) => onChange(next), sx: {
|
|
152886
|
+
bgcolor: theme.palette.mode === "dark"
|
|
152887
|
+
? alpha(theme.palette.common.white, 0.08)
|
|
152888
|
+
: alpha(theme.palette.common.black, 0.04),
|
|
152889
|
+
borderRadius: RADIUS.default,
|
|
152890
|
+
overflow: "hidden",
|
|
152891
|
+
} }, actions.map((action, index) => {
|
|
152892
|
+
const usedElsewhere = action.id === blockedId;
|
|
152893
|
+
return (React$1.createElement(React$1.Fragment, { key: action.id },
|
|
152894
|
+
index > 0 && React$1.createElement(Divider$1, { sx: { ml: 2 } }),
|
|
152895
|
+
React$1.createElement(FormControlLabel$1, { value: action.id, disabled: usedElsewhere, "data-testid": `home-bottom-nav-shortcut-${slot}-${action.id}`, control: React$1.createElement(Radio$1, { color: "primary", inputProps: {
|
|
152896
|
+
"aria-label": usedElsewhere
|
|
152897
|
+
? `${action.title}, ${ATALHOS_DA_BARRA_USED_ELSEWHERE}`
|
|
152898
|
+
: action.title,
|
|
152899
|
+
} }), label: React$1.createElement(Box$1, { sx: { display: "flex", alignItems: "center", gap: 1.5, py: 0.5 } },
|
|
152900
|
+
React$1.createElement(Box$1, { sx: {
|
|
152901
|
+
width: 36,
|
|
152902
|
+
height: 36,
|
|
152903
|
+
borderRadius: RADIUS.default,
|
|
152904
|
+
display: "flex",
|
|
152905
|
+
alignItems: "center",
|
|
152906
|
+
justifyContent: "center",
|
|
152907
|
+
bgcolor: alpha(theme.palette.primary.main, 0.12),
|
|
152908
|
+
color: theme.palette.primary.main,
|
|
152909
|
+
flexShrink: 0,
|
|
152910
|
+
"& .MuiSvgIcon-root": { fontSize: 20 },
|
|
152911
|
+
} }, resolveActionIcon(action.icon)),
|
|
152912
|
+
React$1.createElement(Box$1, { sx: { minWidth: 0 } },
|
|
152913
|
+
React$1.createElement(Typography$1, { variant: "body1", sx: { fontWeight: 500 } }, action.title),
|
|
152914
|
+
usedElsewhere && (React$1.createElement(Typography$1, { variant: "body2", color: "text.secondary", sx: { fontSize: "0.8125rem", lineHeight: 1.35 } }, ATALHOS_DA_BARRA_USED_ELSEWHERE)))), sx: {
|
|
152915
|
+
mx: 0,
|
|
152916
|
+
px: 1.5,
|
|
152917
|
+
py: 0.75,
|
|
152918
|
+
minHeight: 48,
|
|
152919
|
+
width: "100%",
|
|
152920
|
+
alignItems: "center",
|
|
152921
|
+
} })));
|
|
152922
|
+
}))));
|
|
152923
|
+
};
|
|
152924
|
+
const HomeMenuShortcuts = ({ actions, shortcuts, profileKind, profileLabel, isDefault, onChange, onReset, }) => {
|
|
152925
|
+
const terreiroName = (profileLabel === null || profileLabel === void 0 ? void 0 : profileLabel.trim()) || "este terreiro";
|
|
152926
|
+
const profileHeading = profileKind === "terreiro" ? terreiroName : BOTTOM_NAV_PROFILE_PERSONAL_LABEL;
|
|
152927
|
+
const scopeText = profileKind === "terreiro"
|
|
152928
|
+
? atalhosDaBarraTerreiroScopeText(terreiroName)
|
|
152929
|
+
: ATALHOS_DA_BARRA_PERSONAL_SCOPE_TEXT;
|
|
152930
|
+
return (React$1.createElement(Box$1, null,
|
|
152931
|
+
React$1.createElement(Typography$1, { variant: "subtitle1", component: "h2", "data-testid": "home-menu-bottom-nav-profile", sx: { fontWeight: 600, mb: 1 } }, profileHeading),
|
|
152932
|
+
React$1.createElement(Typography$1, { variant: "body2", color: "text.secondary", sx: sectionDescriptionSx$1 }, ATALHOS_DA_BARRA_ONLY_TWO_TEXT),
|
|
152933
|
+
React$1.createElement(Typography$1, { variant: "body2", color: "text.secondary", sx: Object.assign(Object.assign({}, sectionDescriptionSx$1), { mt: -0.5 }) }, ATALHOS_DA_BARRA_FROM_FUNCIONALIDADES_TEXT),
|
|
152934
|
+
React$1.createElement(Typography$1, { variant: "body2", color: "text.secondary", "data-testid": "home-menu-bottom-nav-scope", sx: Object.assign(Object.assign({}, sectionDescriptionSx$1), { mt: -0.5 }) }, scopeText),
|
|
152935
|
+
React$1.createElement(Button$1, { fullWidth: true, variant: "outlined", color: "primary", "data-testid": "home-bottom-nav-shortcuts-reset", "aria-label": RESTAURAR_ATALHOS_PADRAO_LABEL, disabled: isDefault, onClick: onReset, sx: { mb: 2, textTransform: "none", fontWeight: 500 } }, RESTAURAR_ATALHOS_PADRAO_LABEL),
|
|
152936
|
+
React$1.createElement(ShortcutRadioList, { slot: "leading", label: ATALHOS_DA_BARRA_LEADING_LABEL, value: shortcuts.leading, blockedId: shortcuts.trailing, actions: actions, onChange: (actionId) => onChange("leading", actionId) }),
|
|
152937
|
+
React$1.createElement(ShortcutRadioList, { slot: "trailing", label: ATALHOS_DA_BARRA_TRAILING_LABEL, value: shortcuts.trailing, blockedId: shortcuts.leading, actions: actions, onChange: (actionId) => onChange("trailing", actionId) })));
|
|
152938
|
+
};
|
|
152939
|
+
|
|
152878
152940
|
/** Below HomeBottomNav (appBar 1100) so the Menu tab stays tappable while open. */
|
|
152879
152941
|
const HOME_MENU_DRAWER_Z_INDEX = 1050;
|
|
152880
152942
|
const sectionTitleSx$2 = {
|
|
@@ -152997,12 +153059,16 @@ const HomeMenu = (props) => {
|
|
|
152997
153059
|
? EXIBIR_WIDGETS_TITLE
|
|
152998
153060
|
: data.view === "order"
|
|
152999
153061
|
? ORDENAR_WIDGETS_TITLE
|
|
153000
|
-
: "
|
|
153062
|
+
: data.view === "shortcuts"
|
|
153063
|
+
? ATALHOS_DA_BARRA_TITLE
|
|
153064
|
+
: "Opções";
|
|
153001
153065
|
const dialogLabel = data.view === "visibility"
|
|
153002
153066
|
? EXIBIR_WIDGETS_TITLE
|
|
153003
153067
|
: data.view === "order"
|
|
153004
153068
|
? ORDENAR_WIDGETS_TITLE
|
|
153005
|
-
: "
|
|
153069
|
+
: data.view === "shortcuts"
|
|
153070
|
+
? ATALHOS_DA_BARRA_TITLE
|
|
153071
|
+
: "Menu";
|
|
153006
153072
|
return (React$1.createElement(GenericDrawer, { open: data.open, onClose: fns.handleClose, fullHeight: true, disableEnforceFocus: true, zIndex: HOME_MENU_DRAWER_Z_INDEX, "aria-label": dialogLabel },
|
|
153007
153073
|
React$1.createElement(Box$1, { sx: {
|
|
153008
153074
|
display: "flex",
|
|
@@ -153076,6 +153142,24 @@ const HomeMenu = (props) => {
|
|
|
153076
153142
|
fontSize: 20,
|
|
153077
153143
|
} }))));
|
|
153078
153144
|
}))))),
|
|
153145
|
+
data.canCustomizeBottomNav && data.bottomNavShortcuts && (React$1.createElement(Box$1, { sx: { mb: 2 } },
|
|
153146
|
+
React$1.createElement(Typography$1, { variant: "subtitle2", color: "text.secondary", sx: sectionTitleSx$2 }, ATALHOS_DA_BARRA_TITLE),
|
|
153147
|
+
React$1.createElement(Typography$1, { variant: "body2", color: "text.secondary", sx: sectionDescriptionSx }, ATALHOS_DA_BARRA_SECTION_DESCRIPTION),
|
|
153148
|
+
React$1.createElement(Box$1, { sx: {
|
|
153149
|
+
bgcolor: cardBg,
|
|
153150
|
+
borderRadius: RADIUS.default,
|
|
153151
|
+
overflow: "hidden",
|
|
153152
|
+
} },
|
|
153153
|
+
React$1.createElement(List$1, { disablePadding: true },
|
|
153154
|
+
React$1.createElement(ListItemButton$1, { onClick: fns.handleOpenShortcuts, "aria-label": ATALHOS_DA_BARRA_TITLE, "data-testid": "home-menu-bottom-nav-shortcuts", sx: { py: 1.5, px: 2 } },
|
|
153155
|
+
React$1.createElement(ListItemText$1, { primary: ATALHOS_DA_BARRA_ROW_TITLE, secondary: "Somente os dois atalhos ao lado do logo", primaryTypographyProps: { fontWeight: 500 }, secondaryTypographyProps: {
|
|
153156
|
+
fontSize: "0.8125rem",
|
|
153157
|
+
lineHeight: 1.35,
|
|
153158
|
+
} }),
|
|
153159
|
+
React$1.createElement(ChevronRight$2, { sx: {
|
|
153160
|
+
color: theme.palette.text.secondary,
|
|
153161
|
+
fontSize: 20,
|
|
153162
|
+
} })))))),
|
|
153079
153163
|
data.widgets.length > 0 && (React$1.createElement(Box$1, null,
|
|
153080
153164
|
React$1.createElement(Typography$1, { variant: "subtitle2", color: "text.secondary", sx: sectionTitleSx$2 }, "Widgets"),
|
|
153081
153165
|
React$1.createElement(Typography$1, { variant: "body2", color: "text.secondary", sx: sectionDescriptionSx }, WIDGETS_SECTION_DESCRIPTION),
|
|
@@ -153111,7 +153195,8 @@ const HomeMenu = (props) => {
|
|
|
153111
153195
|
data.view === "order" && (React$1.createElement(Box$1, null,
|
|
153112
153196
|
React$1.createElement(Typography$1, { variant: "body2", color: "text.secondary", sx: Object.assign(Object.assign({}, sectionDescriptionSx), { mt: 0 }) }, ORDENAR_WIDGETS_DESCRIPTION),
|
|
153113
153197
|
React$1.createElement(Button$1, { fullWidth: true, variant: "outlined", color: "primary", "data-testid": "home-widget-order-reset", "aria-label": RESTAURAR_ORDEM_PADRAO_LABEL, disabled: data.isDefaultOrder, onClick: fns.handleWidgetOrderReset, sx: { mb: 1.5, textTransform: "none", fontWeight: 500 } }, RESTAURAR_ORDEM_PADRAO_LABEL),
|
|
153114
|
-
React$1.createElement(HomeMenuOrderList, { widgets: data.reorderableWidgets, cardBg: cardBg, onMove: fns.handleWidgetOrderMove, onReorder: fns.handleWidgetOrderReorder })))
|
|
153198
|
+
React$1.createElement(HomeMenuOrderList, { widgets: data.reorderableWidgets, cardBg: cardBg, onMove: fns.handleWidgetOrderMove, onReorder: fns.handleWidgetOrderReorder }))),
|
|
153199
|
+
data.view === "shortcuts" && data.bottomNavShortcuts && (React$1.createElement(HomeMenuShortcuts, { actions: data.actions, shortcuts: data.bottomNavShortcuts, profileKind: data.bottomNavProfileKind, profileLabel: data.bottomNavProfileLabel, isDefault: data.isDefaultBottomNavShortcuts, onChange: fns.handleBottomNavShortcutChange, onReset: fns.handleBottomNavShortcutReset }))))));
|
|
153115
153200
|
};
|
|
153116
153201
|
var HomeMenu$1 = React$1.memo(HomeMenu);
|
|
153117
153202
|
|
|
@@ -153899,11 +153984,37 @@ const SupplyPlanCard = ({ supplyPlanData, isLoadingSupplyPlan = false, onSupplyP
|
|
|
153899
153984
|
showCostMissionsTeaser && onSupplyPlanMissions && (React$1.createElement(Button$1, { variant: "text", size: "small", onClick: onSupplyPlanMissions }, "Completar custos")))))));
|
|
153900
153985
|
};
|
|
153901
153986
|
|
|
153902
|
-
/** Inner pill height (actions row). */
|
|
153903
|
-
const HOME_BOTTOM_NAV_HEIGHT = 52;
|
|
153904
153987
|
/** Float margin below the pill (before safe-area). */
|
|
153905
153988
|
const HOME_BOTTOM_NAV_FLOAT_MB = 16;
|
|
153906
|
-
const
|
|
153989
|
+
const shortcutBadgeContent = (badge) => {
|
|
153990
|
+
if (badge == null || badge === 0 || badge === "0")
|
|
153991
|
+
return undefined;
|
|
153992
|
+
return badge;
|
|
153993
|
+
};
|
|
153994
|
+
const ShortcutTab = ({ action, onQuickAction }) => {
|
|
153995
|
+
const badge = shortcutBadgeContent(action.badge);
|
|
153996
|
+
const isSocial = action.id === "social";
|
|
153997
|
+
const icon = resolveActionIcon(action.icon);
|
|
153998
|
+
const label = isSocial
|
|
153999
|
+
? badge != null
|
|
154000
|
+
? `Social, ${badge} notificações não lidas`
|
|
154001
|
+
: "Social"
|
|
154002
|
+
: action.label;
|
|
154003
|
+
return (React$1.createElement(NotchedBottomBarItem, { label: label, onClick: () => onQuickAction(action.route), "data-testid": isSocial ? "home-bottom-nav-social" : `home-bottom-nav-${action.id}` }, isSocial ? (React$1.createElement(Badge$1, { badgeContent: badge, color: "error", invisible: badge == null, max: 99, "data-testid": "home-bottom-nav-social-badge" }, icon)) : (icon)));
|
|
154004
|
+
};
|
|
154005
|
+
const ProfileLogo = () => {
|
|
154006
|
+
const active = useNotchedSlotActive();
|
|
154007
|
+
return (React$1.createElement(Box$1, { component: "img", src: LogoImg, alt: "", sx: {
|
|
154008
|
+
width: active ? 40 : 22,
|
|
154009
|
+
height: active ? 40 : 22,
|
|
154010
|
+
borderRadius: RADIUS.circle,
|
|
154011
|
+
objectFit: "cover",
|
|
154012
|
+
transition: `width ${ANIMATION_DURATION.slow}ms ${ANIMATION_EASING.spring}, height ${ANIMATION_DURATION.slow}ms ${ANIMATION_EASING.spring}, transform ${ANIMATION_DURATION.fast}ms ${ANIMATION_EASING.spring}`,
|
|
154013
|
+
"&:hover": { transform: "scale(1.04)" },
|
|
154014
|
+
"&:active": { transform: "scale(0.96)" },
|
|
154015
|
+
} }));
|
|
154016
|
+
};
|
|
154017
|
+
const HomeBottomNav = React$1.memo(function HomeBottomNav({ value, onChange, onQuickAction, onMenu, menuOpen = false, onOpenProfileSelector, hasTerreiroContext = true, canUseSocial = false, socialNotificationsUnreadCount = 0, leadingAction, trailingAction, }) {
|
|
153907
154018
|
const measureRef = useMeasureSlot(HOME_MEASURE_SLOTS.bottomNav);
|
|
153908
154019
|
const { isScrolling } = useHideOnScroll();
|
|
153909
154020
|
const [entered, setEntered] = React$1.useState(false);
|
|
@@ -153934,66 +154045,50 @@ const HomeBottomNav = React$1.memo(function HomeBottomNav({ value, onChange, onQ
|
|
|
153934
154045
|
px: 2,
|
|
153935
154046
|
mb: `calc(${HOME_BOTTOM_NAV_FLOAT_MB}px + env(safe-area-inset-bottom, 0px))`,
|
|
153936
154047
|
} },
|
|
153937
|
-
React$1.createElement(Box$1, { sx: {
|
|
153938
|
-
|
|
153939
|
-
|
|
153940
|
-
|
|
153941
|
-
|
|
153942
|
-
|
|
153943
|
-
|
|
153944
|
-
|
|
153945
|
-
|
|
153946
|
-
|
|
153947
|
-
|
|
153948
|
-
|
|
153949
|
-
|
|
153950
|
-
|
|
153951
|
-
|
|
153952
|
-
React$1.createElement(BottomNavigation$1, { showLabels: true, value: value, onChange: (_ev, newValue) => onChange(newValue), "aria-label": "Navega\u00E7\u00E3o principal", sx: {
|
|
153953
|
-
height: HOME_BOTTOM_NAV_HEIGHT,
|
|
153954
|
-
width: "100%",
|
|
153955
|
-
bgcolor: "transparent",
|
|
153956
|
-
overflow: "visible",
|
|
153957
|
-
"& .MuiBottomNavigationAction-root": {
|
|
153958
|
-
color: "text.secondary",
|
|
153959
|
-
minWidth: 0,
|
|
153960
|
-
flex: 1,
|
|
153961
|
-
px: 0.25,
|
|
153962
|
-
py: 0.5,
|
|
153963
|
-
"&.Mui-selected": { color: "primary.main" },
|
|
153964
|
-
},
|
|
153965
|
-
"& .MuiBottomNavigationAction-label": {
|
|
153966
|
-
fontSize: "0.6rem",
|
|
153967
|
-
mt: 0.15,
|
|
153968
|
-
"&.Mui-selected": { fontSize: "0.6rem" },
|
|
153969
|
-
},
|
|
153970
|
-
"& .MuiSvgIcon-root": {
|
|
153971
|
-
fontSize: 20,
|
|
153972
|
-
},
|
|
153973
|
-
} },
|
|
153974
|
-
React$1.createElement(BottomNavigationAction$1, { label: "Home", icon: React$1.createElement(Home$1, null), onClick: () => onQuickAction("/") }),
|
|
153975
|
-
hasTerreiroContext ? (React$1.createElement(BottomNavigationAction$1, { label: "Eventos", icon: React$1.createElement(CalendarToday, null), onClick: () => onQuickAction("/events") })) : canUseSocial ? (React$1.createElement(BottomNavigationAction$1, { label: "Social", icon: React$1.createElement(Badge$1, { badgeContent: socialBadge, color: "error", invisible: socialBadge == null, max: 99, "data-testid": "home-bottom-nav-social-badge" },
|
|
153976
|
-
React$1.createElement(Public, null)), onClick: () => onQuickAction("/social"), "data-testid": "home-bottom-nav-social", "aria-label": socialBadge != null
|
|
154048
|
+
React$1.createElement(Box$1, { sx: { width: "100%", maxWidth: 400 } },
|
|
154049
|
+
React$1.createElement(NotchedBottomBar, { activeIndex: value, "aria-label": "Navega\u00E7\u00E3o principal" },
|
|
154050
|
+
React$1.createElement(NotchedBottomBarItem, { label: "Home", onClick: () => {
|
|
154051
|
+
onChange(0);
|
|
154052
|
+
onQuickAction("/");
|
|
154053
|
+
} },
|
|
154054
|
+
React$1.createElement(Home$1, null)),
|
|
154055
|
+
leadingAction ? (React$1.createElement(ShortcutTab, { action: leadingAction, onQuickAction: (route) => {
|
|
154056
|
+
onChange(1);
|
|
154057
|
+
onQuickAction(route);
|
|
154058
|
+
} })) : hasTerreiroContext ? (React$1.createElement(NotchedBottomBarItem, { label: "Eventos", onClick: () => {
|
|
154059
|
+
onChange(1);
|
|
154060
|
+
onQuickAction("/events");
|
|
154061
|
+
} },
|
|
154062
|
+
React$1.createElement(CalendarToday, null))) : canUseSocial ? (React$1.createElement(NotchedBottomBarItem, { label: socialBadge != null
|
|
153977
154063
|
? `Social, ${socialBadge} notificações não lidas`
|
|
153978
|
-
: "Social"
|
|
153979
|
-
|
|
153980
|
-
|
|
153981
|
-
|
|
153982
|
-
|
|
153983
|
-
|
|
153984
|
-
|
|
153985
|
-
|
|
153986
|
-
|
|
153987
|
-
|
|
153988
|
-
|
|
153989
|
-
|
|
153990
|
-
|
|
153991
|
-
|
|
153992
|
-
|
|
153993
|
-
|
|
153994
|
-
|
|
153995
|
-
|
|
153996
|
-
|
|
154064
|
+
: "Social", onClick: () => {
|
|
154065
|
+
onChange(1);
|
|
154066
|
+
onQuickAction("/social");
|
|
154067
|
+
}, "data-testid": "home-bottom-nav-social" },
|
|
154068
|
+
React$1.createElement(Badge$1, { badgeContent: socialBadge, color: "error", invisible: socialBadge == null, max: 99, "data-testid": "home-bottom-nav-social-badge" },
|
|
154069
|
+
React$1.createElement(Public, null)))) : (React$1.createElement(NotchedBottomBarItem, { label: "Banhos", onClick: () => {
|
|
154070
|
+
onChange(1);
|
|
154071
|
+
onQuickAction("/ritual-baths");
|
|
154072
|
+
} },
|
|
154073
|
+
React$1.createElement(Spa, null))),
|
|
154074
|
+
React$1.createElement(NotchedBottomBarItem, { label: "Selecione um perfil", onClick: () => {
|
|
154075
|
+
onChange(2);
|
|
154076
|
+
onOpenProfileSelector();
|
|
154077
|
+
} },
|
|
154078
|
+
React$1.createElement(ProfileLogo, null)),
|
|
154079
|
+
trailingAction ? (React$1.createElement(ShortcutTab, { action: trailingAction, onQuickAction: (route) => {
|
|
154080
|
+
onChange(3);
|
|
154081
|
+
onQuickAction(route);
|
|
154082
|
+
} })) : (React$1.createElement(NotchedBottomBarItem, { label: "Atividades", onClick: () => {
|
|
154083
|
+
onChange(3);
|
|
154084
|
+
onQuickAction("/activities");
|
|
154085
|
+
} },
|
|
154086
|
+
React$1.createElement(EventIcon, null))),
|
|
154087
|
+
React$1.createElement(NotchedBottomBarItem, { label: "Menu", onClick: () => {
|
|
154088
|
+
onChange(4);
|
|
154089
|
+
onMenu();
|
|
154090
|
+
}, "aria-expanded": menuOpen },
|
|
154091
|
+
React$1.createElement(Menu, null)))))));
|
|
153997
154092
|
});
|
|
153998
154093
|
|
|
153999
154094
|
const ProfileSelectorDrawer = ({ open, onClose, terreiros, selectedTerreiroIdx, onTerreiroSelect, inviteShareUrl, snackbarOpen, snackbarMsg, onSnackbarClose, }) => {
|
|
@@ -156334,7 +156429,7 @@ const resolveIsPersonalProfile = (args) => {
|
|
|
156334
156429
|
return (_a = args.isPersonalProfile) !== null && _a !== void 0 ? _a : args.selectedTerreiro === null;
|
|
156335
156430
|
};
|
|
156336
156431
|
const HomePage = (props) => {
|
|
156337
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
156432
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
|
|
156338
156433
|
const theme = useTheme$1();
|
|
156339
156434
|
const { data, fns } = useHomePage(props);
|
|
156340
156435
|
const [drawerOpen, setDrawerOpen] = React$1.useState(false);
|
|
@@ -156353,9 +156448,37 @@ const HomePage = (props) => {
|
|
|
156353
156448
|
isPersonalProfile: props.isPersonalProfile,
|
|
156354
156449
|
});
|
|
156355
156450
|
}, [props.terreiros, data === null || data === void 0 ? void 0 : data.selectedTerreiro, props.isPersonalProfile]);
|
|
156451
|
+
const hasTerreiroContext = Boolean((_c = data === null || data === void 0 ? void 0 : data.selectedTerreiro) === null || _c === void 0 ? void 0 : _c.id);
|
|
156452
|
+
const bottomNavScopeKey = (_e = (_d = data === null || data === void 0 ? void 0 : data.selectedTerreiro) === null || _d === void 0 ? void 0 : _d.id) !== null && _e !== void 0 ? _e : "personal";
|
|
156453
|
+
const shortcutsControlled = props.onBottomNavShortcutChange !== undefined;
|
|
156454
|
+
const [localBottomNavShortcuts, setLocalBottomNavShortcuts] = React$1.useState({});
|
|
156455
|
+
const requestedBottomNavShortcuts = shortcutsControlled
|
|
156456
|
+
? props.bottomNavShortcuts
|
|
156457
|
+
: localBottomNavShortcuts[bottomNavScopeKey];
|
|
156458
|
+
const bottomNavResolved = React$1.useMemo(() => {
|
|
156459
|
+
var _a;
|
|
156460
|
+
return resolveBottomNavShortcuts({
|
|
156461
|
+
shortcuts: requestedBottomNavShortcuts,
|
|
156462
|
+
actions: ((_a = data === null || data === void 0 ? void 0 : data.quickActions) !== null && _a !== void 0 ? _a : []),
|
|
156463
|
+
hasTerreiroContext,
|
|
156464
|
+
canUseSocial: Boolean(props.canUseSocial),
|
|
156465
|
+
});
|
|
156466
|
+
}, [
|
|
156467
|
+
requestedBottomNavShortcuts,
|
|
156468
|
+
data === null || data === void 0 ? void 0 : data.quickActions,
|
|
156469
|
+
hasTerreiroContext,
|
|
156470
|
+
props.canUseSocial,
|
|
156471
|
+
]);
|
|
156472
|
+
const handleBottomNavShortcutChange = React$1.useCallback((next) => {
|
|
156473
|
+
var _a;
|
|
156474
|
+
if (!shortcutsControlled) {
|
|
156475
|
+
setLocalBottomNavShortcuts((current) => (Object.assign(Object.assign({}, current), { [bottomNavScopeKey]: next })));
|
|
156476
|
+
}
|
|
156477
|
+
(_a = props.onBottomNavShortcutChange) === null || _a === void 0 ? void 0 : _a.call(props, next);
|
|
156478
|
+
}, [shortcutsControlled, bottomNavScopeKey, props]);
|
|
156356
156479
|
const profileSelector = useProfileSelector({
|
|
156357
|
-
terreiros: (
|
|
156358
|
-
selectedTerreiroIdx: (
|
|
156480
|
+
terreiros: (_f = props.terreiros) !== null && _f !== void 0 ? _f : [],
|
|
156481
|
+
selectedTerreiroIdx: (_g = data === null || data === void 0 ? void 0 : data.selectedTerreiroIdx) !== null && _g !== void 0 ? _g : 0,
|
|
156359
156482
|
onTerreiroChange: (terreiro, idx) => {
|
|
156360
156483
|
fns === null || fns === void 0 ? void 0 : fns.handleTerreiroChange(terreiro, idx);
|
|
156361
156484
|
},
|
|
@@ -156432,7 +156555,7 @@ const HomePage = (props) => {
|
|
|
156432
156555
|
(Boolean(props.terreiroCompletenessData) ||
|
|
156433
156556
|
Boolean(props.isLoadingTerreiroCompleteness));
|
|
156434
156557
|
const showGamification = visibleWidgets.gamification && props.showGamificationCard !== false;
|
|
156435
|
-
const widgetOrder = (
|
|
156558
|
+
const widgetOrder = (_h = data.widgetOrder) !== null && _h !== void 0 ? _h : DEFAULT_HOME_WIDGET_ORDER;
|
|
156436
156559
|
const showMoonPhaseContent = visibleWidgets.moonPhase &&
|
|
156437
156560
|
(Boolean(props.moonData) || Boolean(props.isLoadingMoonData));
|
|
156438
156561
|
const showDailyRitualsContent = visibleWidgets.dailyRituals &&
|
|
@@ -156484,12 +156607,12 @@ const HomePage = (props) => {
|
|
|
156484
156607
|
color: theme.palette.text.primary,
|
|
156485
156608
|
position: "relative",
|
|
156486
156609
|
} },
|
|
156487
|
-
React$1.createElement(TopBar, { user: data.user, terreiros: (
|
|
156610
|
+
React$1.createElement(TopBar, { user: data.user, terreiros: (_j = props.terreiros) !== null && _j !== void 0 ? _j : [], greeting: data.greeting, onProfileClick: fns.handleProfileClick, onTerreiroAvatarClick: () => profileSelector.fns.openProfileDrawer("top_bar_avatar"), onOpenDrawer: () => setDrawerOpen(true), onSettings: fns.handleSettingsClick, onOnboardingInfoClick: props.onOnboardingInfoClick, onboardingInfoIcon: props.onboardingInfoIcon, inviteShareUrl: props.inviteShareUrl, onTerreiroChange: (terreiro) => {
|
|
156488
156611
|
const idx = Array.isArray(props.terreiros)
|
|
156489
156612
|
? props.terreiros.findIndex((t) => t === terreiro)
|
|
156490
156613
|
: 0;
|
|
156491
156614
|
fns.handleTerreiroChange(terreiro, idx);
|
|
156492
|
-
}, selectedTerreiroIdx: data.selectedTerreiroIdx, quickActions: data.quickActions, onQuickActionClick: fns.handleQuickActionClick, showQuickActions: showQuickActions, onLayoutChange: handleLayoutChange, badgeTier: (
|
|
156615
|
+
}, selectedTerreiroIdx: data.selectedTerreiroIdx, quickActions: data.quickActions, onQuickActionClick: fns.handleQuickActionClick, showQuickActions: showQuickActions, onLayoutChange: handleLayoutChange, badgeTier: (_k = props.profileCompletenessData) === null || _k === void 0 ? void 0 : _k.badgeTier, onNotificationClick: isActivePersonalProfile ? undefined : props.onNotificationClick, notificationCount: isActivePersonalProfile ? undefined : props.notificationCount, notificationItems: isActivePersonalProfile ? undefined : props.notificationItems, onViewAllNotifications: isActivePersonalProfile ? undefined : props.onViewAllNotifications }),
|
|
156493
156616
|
React$1.createElement(Container$1, { maxWidth: "md", sx: {
|
|
156494
156617
|
px: PAGE_LIST_CONTAINER_SPACING.px,
|
|
156495
156618
|
} },
|
|
@@ -156498,8 +156621,8 @@ const HomePage = (props) => {
|
|
|
156498
156621
|
React$1.createElement(MediumStatusAlert, { mediumStatus: data.mediumStatus, showApprovedAlert: showApprovedAlert, onShowApprovedAlert: handleShowApprovedAlert, setShowRejectedDialog: setShowRejectedDialog }))),
|
|
156499
156622
|
React$1.createElement(RejectionReasonDialog$1, { open: !!showRejectedDialog, rejectionMessage: data.rejectionMessage, onClose: handleShowRejectedDialog }),
|
|
156500
156623
|
widgetOrder.map((id) => renderHomeWidget(id)))),
|
|
156501
|
-
React$1.createElement(HomeBottomNav, { value: bottomNavValue, onChange: setBottomNavValue, onQuickAction: handleBottomQuickAction, onMenu: handleToggleMenu, menuOpen: menuOpen, onOpenProfileSelector: () => profileSelector.fns.openProfileDrawer("bottom_nav_logo"), hasTerreiroContext:
|
|
156502
|
-
React$1.createElement(HomeMenu$1, { open: menuOpen, onClose: handleCloseMenu, actions: data.quickActions, onActionClick: fns.handleQuickActionClick, widgets: (
|
|
156624
|
+
React$1.createElement(HomeBottomNav, { value: bottomNavValue, onChange: setBottomNavValue, onQuickAction: handleBottomQuickAction, onMenu: handleToggleMenu, menuOpen: menuOpen, onOpenProfileSelector: () => profileSelector.fns.openProfileDrawer("bottom_nav_logo"), hasTerreiroContext: hasTerreiroContext, canUseSocial: Boolean(props.canUseSocial), socialNotificationsUnreadCount: (_l = props.socialNotificationsUnreadCount) !== null && _l !== void 0 ? _l : 0, leadingAction: bottomNavResolved.leading, trailingAction: bottomNavResolved.trailing }),
|
|
156625
|
+
React$1.createElement(HomeMenu$1, { open: menuOpen, onClose: handleCloseMenu, actions: data.quickActions, onActionClick: fns.handleQuickActionClick, widgets: (_m = data.menuWidgets) !== null && _m !== void 0 ? _m : [], onWidgetVisibilityChange: (_o = fns.handleHomeWidgetVisibilityChange) !== null && _o !== void 0 ? _o : (() => undefined), showQuickActions: showQuickActions, onShowQuickActionsChange: (_p = fns.handleShowQuickActionsChange) !== null && _p !== void 0 ? _p : (() => undefined), widgetOrder: widgetOrder, reorderableWidgets: (_q = data.reorderableWidgets) !== null && _q !== void 0 ? _q : [], defaultWidgetOrder: (_r = data.defaultWidgetOrder) !== null && _r !== void 0 ? _r : [], onWidgetOrderChange: (_s = fns.handleHomeWidgetOrderChange) !== null && _s !== void 0 ? _s : (() => undefined), onWidgetsCustomizeViewOpen: fns.handleHomeWidgetsCustomizeViewOpen, bottomNavShortcuts: bottomNavResolved.shortcuts, defaultBottomNavShortcuts: bottomNavResolved.defaults, onBottomNavShortcutChange: handleBottomNavShortcutChange, bottomNavProfileKind: hasTerreiroContext ? "terreiro" : "personal", bottomNavProfileLabel: (_u = (_t = data.selectedTerreiro) === null || _t === void 0 ? void 0 : _t.name) !== null && _u !== void 0 ? _u : BOTTOM_NAV_PROFILE_PERSONAL_LABEL }),
|
|
156503
156626
|
React$1.createElement(ProfileSelectorDrawer, { open: profileSelector.data.profileDrawerOpen, onClose: profileSelector.fns.closeProfileDrawer, terreiros: profileSelector.data.terreiros, selectedTerreiroIdx: profileSelector.data.selectedTerreiroIdx, onTerreiroSelect: profileSelector.fns.handleTerreiroSelect, inviteShareUrl: props.inviteShareUrl, snackbarOpen: profileSelector.data.snackbarOpen, snackbarMsg: profileSelector.data.snackbarMsg, onSnackbarClose: profileSelector.fns.handleSnackbarClose }),
|
|
156504
156627
|
React$1.createElement(SettingsDrawer, { open: drawerOpen, onClose: () => setDrawerOpen(false), onRefresh: fns.handleRefresh, onSettings: fns.handleSettingsClick }))));
|
|
156505
156628
|
};
|
|
@@ -196046,8 +196169,13 @@ exports.MoonZodiacSchema = MoonZodiacSchema;
|
|
|
196046
196169
|
exports.MyPermissionsDetailedSchema = MyPermissionsDetailedSchema;
|
|
196047
196170
|
exports.MyPermissionsPage = MyPermissionsPage;
|
|
196048
196171
|
exports.MyPermissionsPagePropsSchema = MyPermissionsPagePropsSchema;
|
|
196172
|
+
exports.NOTCHED_BAR_HEIGHT = NOTCHED_BAR_HEIGHT;
|
|
196173
|
+
exports.NOTCHED_BAR_PROTRUSION = NOTCHED_BAR_PROTRUSION;
|
|
196174
|
+
exports.NOTCHED_CIRCLE = NOTCHED_CIRCLE;
|
|
196175
|
+
exports.NOTCHED_ICON_LIFT = NOTCHED_ICON_LIFT;
|
|
196049
196176
|
exports.NearbyTerreiroSearchPage = NearbyTerreiroSearchPage;
|
|
196050
196177
|
exports.NotFoundPage = NotFoundPage;
|
|
196178
|
+
exports.NotchedBottomBarItem = NotchedBottomBarItem;
|
|
196051
196179
|
exports.NotificationSettingsPage = NotificationSettingsPage;
|
|
196052
196180
|
exports.NotificationSettingsPagePropsSchema = NotificationSettingsPagePropsSchema;
|
|
196053
196181
|
exports.NotificationsPage = NotificationsPage;
|
|
@@ -196185,6 +196313,7 @@ exports.SOCIAL_DISPLAY_NAME_MAX_LENGTH = SOCIAL_DISPLAY_NAME_MAX_LENGTH;
|
|
|
196185
196313
|
exports.SOCIAL_HOME_BOTTOM_NAV_CLEARANCE = SOCIAL_HOME_BOTTOM_NAV_CLEARANCE;
|
|
196186
196314
|
exports.SOCIAL_HOME_BOTTOM_NAV_FLOAT_MB = SOCIAL_HOME_BOTTOM_NAV_FLOAT_MB;
|
|
196187
196315
|
exports.SOCIAL_HOME_BOTTOM_NAV_HEIGHT = SOCIAL_HOME_BOTTOM_NAV_HEIGHT;
|
|
196316
|
+
exports.SOCIAL_HOME_BOTTOM_NAV_PROTRUSION = SOCIAL_HOME_BOTTOM_NAV_PROTRUSION;
|
|
196188
196317
|
exports.SOCIAL_HOME_HEADER_HEIGHT = SOCIAL_HOME_HEADER_HEIGHT;
|
|
196189
196318
|
exports.SOCIAL_ONBOARDING_INTRO_STEPS = SOCIAL_ONBOARDING_INTRO_STEPS;
|
|
196190
196319
|
exports.SOCIAL_ONBOARDING_STEP_LABELS = SOCIAL_ONBOARDING_STEP_LABELS;
|
|
@@ -196335,6 +196464,7 @@ exports.getContentMarginTop = getContentMarginTop;
|
|
|
196335
196464
|
exports.getContentPaddingTop = getContentPaddingTop;
|
|
196336
196465
|
exports.getCustomBannerGradient = getCustomBannerGradient;
|
|
196337
196466
|
exports.getDateString = getDateString;
|
|
196467
|
+
exports.getDefaultBottomNavShortcuts = getDefaultBottomNavShortcuts;
|
|
196338
196468
|
exports.getDefaultHomeWidgetOrder = getDefaultHomeWidgetOrder;
|
|
196339
196469
|
exports.getHomeWidgetsForProfile = getHomeWidgetsForProfile;
|
|
196340
196470
|
exports.getReorderableHomeWidgetsForProfile = getReorderableHomeWidgetsForProfile;
|
|
@@ -196378,6 +196508,7 @@ exports.overlayZIndex = overlayZIndex;
|
|
|
196378
196508
|
exports.parseScheduleDate = parseScheduleDate;
|
|
196379
196509
|
exports.radiusPx = radiusPx;
|
|
196380
196510
|
exports.reorderHomeWidgetOrder = reorderHomeWidgetOrder;
|
|
196511
|
+
exports.resolveBottomNavShortcuts = resolveBottomNavShortcuts;
|
|
196381
196512
|
exports.resolveExperiencePostType = resolveExperiencePostType;
|
|
196382
196513
|
exports.secondsToRoundedMinutes = secondsToRoundedMinutes;
|
|
196383
196514
|
exports.startPasskeyAuthentication = startPasskeyAuthentication;
|
|
@@ -196425,6 +196556,7 @@ exports.useMonthlyFeePaymentsManagementPage = useMonthlyFeePaymentsManagementPag
|
|
|
196425
196556
|
exports.useMoonCard = useMoonCard;
|
|
196426
196557
|
exports.useMyPermissionsPage = useMyPermissionsPage;
|
|
196427
196558
|
exports.useNotFoundPage = useNotFoundPage;
|
|
196559
|
+
exports.useNotchedSlotActive = useNotchedSlotActive;
|
|
196428
196560
|
exports.useNotificationSettingsPage = useNotificationSettingsPage;
|
|
196429
196561
|
exports.useOnboardingIntroModal = useOnboardingIntroModal;
|
|
196430
196562
|
exports.useOnboardingMedium = useOnboardingMedium;
|