sevago-sso-fe 1.0.85 → 1.0.86

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/index.esm.js CHANGED
@@ -1,11 +1,11 @@
1
1
  import dayjs from "dayjs";
2
2
  import { jsx, jsxs, Fragment } from "react/jsx-runtime";
3
- import { Stack, TableCell, tableCellClasses, LinearProgress, linearProgressClasses, useTheme as useTheme$2, Skeleton, Box, styled as styled$3, InputLabel, Link, Typography, Paper, IconButton, Fade, Tooltip, tooltipClasses, Avatar, Badge, Icon, Tabs, Tab, CircularProgress, Button, FormControlLabel, Checkbox, Dialog, DialogTitle, DialogContent, DialogActions, Collapse, FormControl, Select, MenuItem, Pagination, RadioGroup, Radio, ClickAwayListener } from "@mui/material";
3
+ import { Tooltip, tooltipClasses, Avatar, Badge, Stack, TableCell, tableCellClasses, LinearProgress, linearProgressClasses, useTheme as useTheme$2, Skeleton, Box, styled as styled$3, InputLabel, Link, Typography, Paper, Icon, IconButton, Tabs, Tab, CircularProgress, Button, FormControlLabel, Checkbox, Dialog, DialogTitle, DialogContent, DialogActions, Collapse, FormControl, Select, MenuItem, Pagination, RadioGroup, Radio, ClickAwayListener, Fade } from "@mui/material";
4
4
  import * as React from "react";
5
5
  import React__default, { useState, useId, useEffect, useRef, Fragment as Fragment$1 } from "react";
6
6
  import { motion, LayoutGroup, AnimatePresence, MotionConfig } from "framer-motion";
7
- import { unstable_createGetCssVar, createSpacing as createSpacing$1, useTheme as useTheme$1, Stack as Stack$1, Box as Box$1 } from "@mui/system";
8
7
  import styled$2 from "@emotion/styled";
8
+ import { unstable_createGetCssVar, createSpacing as createSpacing$1, useTheme as useTheme$1, Stack as Stack$1, Box as Box$1 } from "@mui/system";
9
9
  import "@emotion/react";
10
10
  import { useLocation, useNavigate } from "react-router-dom";
11
11
  import { Form } from "formik";
@@ -6762,6 +6762,101 @@ const MotionBox = ({
6762
6762
  } : {};
6763
6763
  return /* @__PURE__ */ jsx(motion.div, { ...motionProps, ...getAnimationProps(), ...hoverProps, onClick, style: { ...sx }, children });
6764
6764
  };
6765
+ const ArrowTooltip = styled$2(({ className, ...props }) => /* @__PURE__ */ jsx(Tooltip, { ...props, arrow: true, classes: { popper: className } }))(() => ({
6766
+ [`& .${tooltipClasses.arrow}`]: {
6767
+ color: "white"
6768
+ }
6769
+ }));
6770
+ const AvatarElement = ({
6771
+ url,
6772
+ sx = {},
6773
+ size = "medium",
6774
+ tooltipContent,
6775
+ ...rest
6776
+ }) => {
6777
+ if (tooltipContent) {
6778
+ return /* @__PURE__ */ jsx(ArrowTooltip, { title: tooltipContent, arrow: true, children: /* @__PURE__ */ jsx(
6779
+ Avatar,
6780
+ {
6781
+ ...rest,
6782
+ src: url || "",
6783
+ sx: {
6784
+ ...MAP_SIZE[size],
6785
+ bgcolor: "primary.main",
6786
+ ...sx,
6787
+ cursor: "pointer"
6788
+ }
6789
+ }
6790
+ ) });
6791
+ }
6792
+ return /* @__PURE__ */ jsx(
6793
+ Avatar,
6794
+ {
6795
+ ...rest,
6796
+ src: url || "",
6797
+ sx: {
6798
+ ...MAP_SIZE[size],
6799
+ bgcolor: "primary.main",
6800
+ ...sx,
6801
+ cursor: "pointer"
6802
+ }
6803
+ }
6804
+ );
6805
+ };
6806
+ const OnlineBadge = styled(Badge)(({ theme }) => ({
6807
+ "& .MuiBadge-badge": {
6808
+ backgroundColor: COLOR_CONSTANT.success,
6809
+ color: COLOR_CONSTANT.success,
6810
+ boxShadow: `0 0 0 2px ${theme.palette.background.paper}`,
6811
+ "&::after": {
6812
+ position: "absolute",
6813
+ top: 0,
6814
+ left: 0,
6815
+ width: "100%",
6816
+ height: "100%",
6817
+ borderRadius: "50%",
6818
+ animation: "ripple 1.2s infinite ease-in-out",
6819
+ border: "1px solid currentColor",
6820
+ content: '""'
6821
+ }
6822
+ },
6823
+ "@keyframes ripple": {
6824
+ "0%": {
6825
+ transform: "scale(.8)",
6826
+ opacity: 1
6827
+ },
6828
+ "100%": {
6829
+ transform: "scale(2.4)",
6830
+ opacity: 0
6831
+ }
6832
+ }
6833
+ }));
6834
+ const AvatarOnlineStatusElement = ({
6835
+ url,
6836
+ size = "extra_large",
6837
+ online = false,
6838
+ children
6839
+ }) => {
6840
+ if (online) {
6841
+ return /* @__PURE__ */ jsx(OnlineBadge, { overlap: "circular", anchorOrigin: { vertical: "bottom", horizontal: "right" }, variant: "dot", children: /* @__PURE__ */ jsx(AvatarElement, { url: url || void 0, size, sx: { backgroundColor: COLOR_CONSTANT.gray2 }, children }) });
6842
+ }
6843
+ return /* @__PURE__ */ jsx(
6844
+ Badge,
6845
+ {
6846
+ overlap: "circular",
6847
+ anchorOrigin: { vertical: "bottom", horizontal: "right" },
6848
+ variant: "dot",
6849
+ sx: {
6850
+ "& .MuiBadge-badge": {
6851
+ backgroundColor: COLOR_CONSTANT.gray4,
6852
+ color: COLOR_CONSTANT.gray4,
6853
+ boxShadow: (theme) => `0 0 0 2px ${theme.palette.background.paper}`
6854
+ }
6855
+ },
6856
+ children: /* @__PURE__ */ jsx(AvatarElement, { url: url || void 0, size, sx: { backgroundColor: COLOR_CONSTANT.gray2 }, children })
6857
+ }
6858
+ );
6859
+ };
6765
6860
  const StackRow = styled(Stack)(() => ({
6766
6861
  flexDirection: "row"
6767
6862
  }));
@@ -7195,330 +7290,35 @@ const TypographyFilter = styled$3(Typography)(({ theme }) => ({
7195
7290
  textWrap: "nowrap",
7196
7291
  padding: `0px ${PADDING_GAP_LAYOUT}`
7197
7292
  }));
7198
- const AppGridItem = ({
7199
- app,
7200
- iconSize,
7201
- iconRadius,
7202
- titleVariant = "subtitle1",
7203
- titleColor,
7204
- showNameApps = true,
7205
- direction = "column"
7206
- }) => {
7207
- return /* @__PURE__ */ jsxs(StackRowAlignJustCenter, { sx: { flexDirection: direction, gap: PADDING_GAP_ITEM }, children: [
7208
- /* @__PURE__ */ jsx(
7209
- StackRowAlignJustCenter,
7210
- {
7211
- sx: {
7212
- width: iconSize,
7213
- height: iconSize,
7214
- borderRadius: iconRadius,
7215
- background: app.color
7216
- },
7217
- children: /* @__PURE__ */ jsx(
7218
- ImageElement,
7219
- {
7220
- sx: { width: iconSize * 0.56, height: iconSize * 0.56 },
7221
- url: app.icon,
7222
- sizeType: ImageSizeType.SQUARE
7223
- }
7224
- )
7225
- }
7226
- ),
7227
- showNameApps && /* @__PURE__ */ jsx(Typography, { variant: titleVariant, sx: { color: titleColor }, children: app.content })
7228
- ] });
7229
- };
7230
- const AppGrid = ({
7231
- apps,
7232
- columns = 5,
7233
- rows = 3,
7234
- iconSize = 80,
7235
- iconRadius = 7,
7236
- gap: gap2 = PADDING_GAP_ITEM,
7237
- titleVariant = "subtitle1",
7238
- titleColor,
7239
- showPagination = true,
7240
- onClickApp,
7241
- isShowAppHidden = false
7293
+ const AvatarUserInfo = ({
7294
+ name,
7295
+ url,
7296
+ positions = [],
7297
+ maxWidth: maxWidth2 = "440px",
7298
+ isTag = false,
7299
+ sxName,
7300
+ sxPosition,
7301
+ sizeAvatar = "large"
7242
7302
  }) => {
7243
- const theme = useTheme();
7244
- const pageSize = Math.max(1, columns * Math.max(1, rows));
7245
- const totalPages = Math.max(1, Math.ceil(apps.length / pageSize));
7246
- const [page, setPage] = React__default.useState(0);
7247
- React__default.useEffect(() => {
7248
- setPage((prev) => prev >= totalPages ? totalPages - 1 : prev);
7249
- }, [totalPages, columns, rows, apps.length]);
7250
- const start = page * pageSize;
7251
- const end = start + pageSize;
7252
- const visibleApps = totalPages > 1 ? apps.slice(start, end) : apps;
7253
- const placeholdersCount = isShowAppHidden ? Math.max(0, pageSize - visibleApps.length) : 0;
7254
- const placeholderHeight = isShowAppHidden ? iconSize + 36.5 : 0;
7255
- return /* @__PURE__ */ jsxs(Box, { sx: { position: "relative" }, children: [
7256
- /* @__PURE__ */ jsxs(
7257
- Box,
7258
- {
7259
- sx: {
7260
- display: "grid",
7261
- gridTemplateColumns: `repeat(${columns}, 1fr)`,
7262
- gap: gap2
7263
- },
7264
- children: [
7265
- visibleApps.map((app, index) => {
7266
- return /* @__PURE__ */ jsx(
7267
- MotionBox,
7268
- {
7269
- preset: "staggerItem",
7270
- index,
7271
- hover: true,
7272
- sx: {
7273
- cursor: "pointer",
7274
- display: "flex",
7275
- flex: 1,
7276
- alignItems: "center",
7277
- flexDirection: "column"
7278
- },
7279
- onClick: () => onClickApp(app),
7280
- children: /* @__PURE__ */ jsx(
7281
- AppGridItem,
7282
- {
7283
- app,
7284
- iconSize,
7285
- iconRadius,
7286
- titleVariant,
7287
- titleColor: titleColor ?? theme.palette.common.white
7288
- }
7289
- )
7290
- },
7291
- index
7292
- );
7293
- }),
7294
- placeholdersCount > 0 && Array.from({ length: placeholdersCount }).map((_, fillerIndex) => /* @__PURE__ */ jsx(
7295
- Box,
7296
- {
7297
- sx: {
7298
- visibility: "hidden",
7299
- width: 1,
7300
- minHeight: placeholderHeight
7301
- }
7302
- },
7303
- `placeholder-${fillerIndex}`
7304
- ))
7305
- ]
7306
- }
7307
- ),
7308
- showPagination && totalPages > 1 && /* @__PURE__ */ jsxs(Fragment, { children: [
7309
- page === totalPages - 1 && /* @__PURE__ */ jsx(
7310
- IconButton,
7311
- {
7312
- size: "small",
7313
- onClick: () => setPage((p) => Math.max(0, p - 1)),
7314
- disabled: page === 0,
7315
- sx: {
7316
- position: "absolute",
7317
- top: "50%",
7318
- left: -30,
7319
- transform: "translateY(-120%)",
7320
- color: theme.palette.divider
7321
- },
7322
- children: /* @__PURE__ */ jsx(IconLeft, {})
7323
- }
7324
- ),
7325
- page !== totalPages - 1 && /* @__PURE__ */ jsx(
7326
- IconButton,
7303
+ const { palette } = useTheme$2();
7304
+ return /* @__PURE__ */ jsxs(StackRow, { sx: { alignItems: "center", gap: PADDING_GAP_ITEM }, children: [
7305
+ /* @__PURE__ */ jsx(AvatarElement, { url, size: sizeAvatar }),
7306
+ positions.length > 0 ? /* @__PURE__ */ jsxs(Stack, { sx: { gap: 0 }, children: [
7307
+ /* @__PURE__ */ jsx(
7308
+ Typography,
7327
7309
  {
7328
- size: "small",
7329
- onClick: () => setPage((p) => Math.min(totalPages - 1, p + 1)),
7330
- disabled: page === totalPages - 1,
7331
7310
  sx: {
7332
- position: "absolute",
7333
- top: "50%",
7334
- right: -30,
7335
- transform: "translateY(-120%)",
7336
- color: theme.palette.divider
7311
+ fontWeight: "600",
7312
+ fontSize: "14px",
7313
+ lineHeight: "20px",
7314
+ ...getLimitLineCss(1),
7315
+ ...sxName
7337
7316
  },
7338
- children: /* @__PURE__ */ jsx(IconRight, {})
7317
+ children: name
7339
7318
  }
7340
7319
  ),
7341
7320
  /* @__PURE__ */ jsx(
7342
- Box,
7343
- {
7344
- sx: {
7345
- mt: 2,
7346
- display: "flex",
7347
- alignItems: "center",
7348
- justifyContent: "center"
7349
- },
7350
- children: /* @__PURE__ */ jsx(
7351
- Box,
7352
- {
7353
- sx: {
7354
- display: "flex",
7355
- alignItems: "center",
7356
- gap: PADDING_GAP_BUTTON,
7357
- px: PADDING_GAP_BUTTON,
7358
- py: PADDING_GAP_ITEM_SMALL,
7359
- borderRadius: BORDER_RADIUS_ELEMENT_WRAPPER,
7360
- backgroundColor: "rgba(255,255,255,0.15)"
7361
- },
7362
- children: Array.from({ length: totalPages }).map((_, i) => /* @__PURE__ */ jsx(
7363
- Box,
7364
- {
7365
- onClick: () => setPage(i),
7366
- sx: {
7367
- height: 10,
7368
- borderRadius: BORDER_RADIUS_ELEMENT_WRAPPER,
7369
- cursor: "pointer",
7370
- transition: "width 0.3s ease",
7371
- width: i === page ? "40px" : "10px",
7372
- backgroundColor: i === page ? theme.palette.common.white : "rgba(255,255,255,0.35)"
7373
- }
7374
- },
7375
- i
7376
- ))
7377
- }
7378
- )
7379
- }
7380
- )
7381
- ] })
7382
- ] });
7383
- };
7384
- const BannerComponent = ({ url }) => {
7385
- return /* @__PURE__ */ jsx(Fade, { in: true, timeout: ANIMATION_TIME, children: /* @__PURE__ */ jsx(Stack, { children: /* @__PURE__ */ jsx(
7386
- ImageElement,
7387
- {
7388
- url,
7389
- sx: {
7390
- borderRadius: BORDER_RADIUS_ELEMENT,
7391
- maxWidth: "100%",
7392
- width: "100%",
7393
- height: "auto"
7394
- }
7395
- }
7396
- ) }) });
7397
- };
7398
- const ArrowTooltip = styled$2(({ className, ...props }) => /* @__PURE__ */ jsx(Tooltip, { ...props, arrow: true, classes: { popper: className } }))(() => ({
7399
- [`& .${tooltipClasses.arrow}`]: {
7400
- color: "white"
7401
- }
7402
- }));
7403
- const AvatarElement = ({
7404
- url,
7405
- sx = {},
7406
- size = "medium",
7407
- tooltipContent,
7408
- ...rest
7409
- }) => {
7410
- if (tooltipContent) {
7411
- return /* @__PURE__ */ jsx(ArrowTooltip, { title: tooltipContent, arrow: true, children: /* @__PURE__ */ jsx(
7412
- Avatar,
7413
- {
7414
- ...rest,
7415
- src: url || "",
7416
- sx: {
7417
- ...MAP_SIZE[size],
7418
- bgcolor: "primary.main",
7419
- ...sx,
7420
- cursor: "pointer"
7421
- }
7422
- }
7423
- ) });
7424
- }
7425
- return /* @__PURE__ */ jsx(
7426
- Avatar,
7427
- {
7428
- ...rest,
7429
- src: url || "",
7430
- sx: {
7431
- ...MAP_SIZE[size],
7432
- bgcolor: "primary.main",
7433
- ...sx,
7434
- cursor: "pointer"
7435
- }
7436
- }
7437
- );
7438
- };
7439
- const OnlineBadge = styled(Badge)(({ theme }) => ({
7440
- "& .MuiBadge-badge": {
7441
- backgroundColor: COLOR_CONSTANT.success,
7442
- color: COLOR_CONSTANT.success,
7443
- boxShadow: `0 0 0 2px ${theme.palette.background.paper}`,
7444
- "&::after": {
7445
- position: "absolute",
7446
- top: 0,
7447
- left: 0,
7448
- width: "100%",
7449
- height: "100%",
7450
- borderRadius: "50%",
7451
- animation: "ripple 1.2s infinite ease-in-out",
7452
- border: "1px solid currentColor",
7453
- content: '""'
7454
- }
7455
- },
7456
- "@keyframes ripple": {
7457
- "0%": {
7458
- transform: "scale(.8)",
7459
- opacity: 1
7460
- },
7461
- "100%": {
7462
- transform: "scale(2.4)",
7463
- opacity: 0
7464
- }
7465
- }
7466
- }));
7467
- const AvatarOnlineStatusElement = ({
7468
- url,
7469
- size = "extra_large",
7470
- online = false,
7471
- children
7472
- }) => {
7473
- if (online) {
7474
- return /* @__PURE__ */ jsx(OnlineBadge, { overlap: "circular", anchorOrigin: { vertical: "bottom", horizontal: "right" }, variant: "dot", children: /* @__PURE__ */ jsx(AvatarElement, { url: url || void 0, size, sx: { backgroundColor: COLOR_CONSTANT.gray2 }, children }) });
7475
- }
7476
- return /* @__PURE__ */ jsx(
7477
- Badge,
7478
- {
7479
- overlap: "circular",
7480
- anchorOrigin: { vertical: "bottom", horizontal: "right" },
7481
- variant: "dot",
7482
- sx: {
7483
- "& .MuiBadge-badge": {
7484
- backgroundColor: COLOR_CONSTANT.gray4,
7485
- color: COLOR_CONSTANT.gray4,
7486
- boxShadow: (theme) => `0 0 0 2px ${theme.palette.background.paper}`
7487
- }
7488
- },
7489
- children: /* @__PURE__ */ jsx(AvatarElement, { url: url || void 0, size, sx: { backgroundColor: COLOR_CONSTANT.gray2 }, children })
7490
- }
7491
- );
7492
- };
7493
- const AvatarUserInfo = ({
7494
- name,
7495
- url,
7496
- positions = [],
7497
- maxWidth: maxWidth2 = "440px",
7498
- isTag = false,
7499
- sxName,
7500
- sxPosition,
7501
- sizeAvatar = "large"
7502
- }) => {
7503
- const { palette } = useTheme$2();
7504
- return /* @__PURE__ */ jsxs(StackRow, { sx: { alignItems: "center", gap: PADDING_GAP_ITEM }, children: [
7505
- /* @__PURE__ */ jsx(AvatarElement, { url, size: sizeAvatar }),
7506
- positions.length > 0 ? /* @__PURE__ */ jsxs(Stack, { sx: { gap: 0 }, children: [
7507
- /* @__PURE__ */ jsx(
7508
- Typography,
7509
- {
7510
- sx: {
7511
- fontWeight: "600",
7512
- fontSize: "14px",
7513
- lineHeight: "20px",
7514
- ...getLimitLineCss(1),
7515
- ...sxName
7516
- },
7517
- children: name
7518
- }
7519
- ),
7520
- /* @__PURE__ */ jsx(
7521
- Typography,
7321
+ Typography,
7522
7322
  {
7523
7323
  variant: "caption",
7524
7324
  sx: {
@@ -9478,6 +9278,206 @@ const WrapperElement = ({
9478
9278
  }
9479
9279
  ) });
9480
9280
  };
9281
+ const AppGridItem = ({
9282
+ app,
9283
+ iconSize,
9284
+ iconRadius,
9285
+ titleVariant = "subtitle1",
9286
+ titleColor,
9287
+ showNameApps = true,
9288
+ direction = "column"
9289
+ }) => {
9290
+ return /* @__PURE__ */ jsxs(StackRowAlignCenter, { sx: { flexDirection: direction, gap: PADDING_GAP_ITEM }, children: [
9291
+ /* @__PURE__ */ jsx(
9292
+ StackRowAlignJustCenter,
9293
+ {
9294
+ sx: {
9295
+ width: iconSize,
9296
+ height: iconSize,
9297
+ borderRadius: iconRadius,
9298
+ background: app.color
9299
+ },
9300
+ children: /* @__PURE__ */ jsx(
9301
+ ImageElement,
9302
+ {
9303
+ sx: { width: iconSize * 0.56, height: iconSize * 0.56 },
9304
+ url: app.icon,
9305
+ sizeType: ImageSizeType.SQUARE
9306
+ }
9307
+ )
9308
+ }
9309
+ ),
9310
+ showNameApps && /* @__PURE__ */ jsx(Typography, { variant: titleVariant, sx: { color: titleColor }, children: app.content })
9311
+ ] });
9312
+ };
9313
+ const AppGrid = ({
9314
+ apps,
9315
+ columns = 5,
9316
+ rows = 3,
9317
+ iconSize = 80,
9318
+ iconRadius = 7,
9319
+ gap: gap2 = PADDING_GAP_ITEM,
9320
+ titleVariant = "subtitle1",
9321
+ titleColor,
9322
+ showPagination = true,
9323
+ onClickApp,
9324
+ isShowAppHidden = false
9325
+ }) => {
9326
+ const theme = useTheme();
9327
+ const pageSize = Math.max(1, columns * Math.max(1, rows));
9328
+ const totalPages = Math.max(1, Math.ceil(apps.length / pageSize));
9329
+ const [page, setPage] = React__default.useState(0);
9330
+ React__default.useEffect(() => {
9331
+ setPage((prev) => prev >= totalPages ? totalPages - 1 : prev);
9332
+ }, [totalPages, columns, rows, apps.length]);
9333
+ const start = page * pageSize;
9334
+ const end = start + pageSize;
9335
+ const visibleApps = totalPages > 1 ? apps.slice(start, end) : apps;
9336
+ const placeholdersCount = isShowAppHidden ? Math.max(0, pageSize - visibleApps.length) : 0;
9337
+ const placeholderHeight = isShowAppHidden ? iconSize + 36.5 : 0;
9338
+ return /* @__PURE__ */ jsxs(Box, { sx: { position: "relative" }, children: [
9339
+ /* @__PURE__ */ jsxs(
9340
+ Box,
9341
+ {
9342
+ sx: {
9343
+ display: "grid",
9344
+ gridTemplateColumns: `repeat(${columns}, 1fr)`,
9345
+ gap: gap2
9346
+ },
9347
+ children: [
9348
+ visibleApps.map((app, index) => {
9349
+ return /* @__PURE__ */ jsx(
9350
+ MotionBox,
9351
+ {
9352
+ preset: "staggerItem",
9353
+ index,
9354
+ hover: true,
9355
+ sx: {
9356
+ cursor: "pointer",
9357
+ display: "flex",
9358
+ flex: 1,
9359
+ alignItems: "center",
9360
+ flexDirection: "column"
9361
+ },
9362
+ onClick: () => onClickApp(app),
9363
+ children: /* @__PURE__ */ jsx(
9364
+ AppGridItem,
9365
+ {
9366
+ app,
9367
+ iconSize,
9368
+ iconRadius,
9369
+ titleVariant,
9370
+ titleColor: titleColor ?? theme.palette.common.white
9371
+ }
9372
+ )
9373
+ },
9374
+ index
9375
+ );
9376
+ }),
9377
+ placeholdersCount > 0 && Array.from({ length: placeholdersCount }).map((_, fillerIndex) => /* @__PURE__ */ jsx(
9378
+ Box,
9379
+ {
9380
+ sx: {
9381
+ visibility: "hidden",
9382
+ width: 1,
9383
+ minHeight: placeholderHeight
9384
+ }
9385
+ },
9386
+ `placeholder-${fillerIndex}`
9387
+ ))
9388
+ ]
9389
+ }
9390
+ ),
9391
+ showPagination && totalPages > 1 && /* @__PURE__ */ jsxs(Fragment, { children: [
9392
+ page === totalPages - 1 && /* @__PURE__ */ jsx(
9393
+ IconButton,
9394
+ {
9395
+ size: "small",
9396
+ onClick: () => setPage((p) => Math.max(0, p - 1)),
9397
+ disabled: page === 0,
9398
+ sx: {
9399
+ position: "absolute",
9400
+ top: "50%",
9401
+ left: -30,
9402
+ transform: "translateY(-120%)",
9403
+ color: theme.palette.divider
9404
+ },
9405
+ children: /* @__PURE__ */ jsx(IconLeft, {})
9406
+ }
9407
+ ),
9408
+ page !== totalPages - 1 && /* @__PURE__ */ jsx(
9409
+ IconButton,
9410
+ {
9411
+ size: "small",
9412
+ onClick: () => setPage((p) => Math.min(totalPages - 1, p + 1)),
9413
+ disabled: page === totalPages - 1,
9414
+ sx: {
9415
+ position: "absolute",
9416
+ top: "50%",
9417
+ right: -30,
9418
+ transform: "translateY(-120%)",
9419
+ color: theme.palette.divider
9420
+ },
9421
+ children: /* @__PURE__ */ jsx(IconRight, {})
9422
+ }
9423
+ ),
9424
+ /* @__PURE__ */ jsx(
9425
+ Box,
9426
+ {
9427
+ sx: {
9428
+ mt: 2,
9429
+ display: "flex",
9430
+ alignItems: "center",
9431
+ justifyContent: "center"
9432
+ },
9433
+ children: /* @__PURE__ */ jsx(
9434
+ Box,
9435
+ {
9436
+ sx: {
9437
+ display: "flex",
9438
+ alignItems: "center",
9439
+ gap: PADDING_GAP_BUTTON,
9440
+ px: PADDING_GAP_BUTTON,
9441
+ py: PADDING_GAP_ITEM_SMALL,
9442
+ borderRadius: BORDER_RADIUS_ELEMENT_WRAPPER,
9443
+ backgroundColor: "rgba(255,255,255,0.15)"
9444
+ },
9445
+ children: Array.from({ length: totalPages }).map((_, i) => /* @__PURE__ */ jsx(
9446
+ Box,
9447
+ {
9448
+ onClick: () => setPage(i),
9449
+ sx: {
9450
+ height: 10,
9451
+ borderRadius: BORDER_RADIUS_ELEMENT_WRAPPER,
9452
+ cursor: "pointer",
9453
+ transition: "width 0.3s ease",
9454
+ width: i === page ? "40px" : "10px",
9455
+ backgroundColor: i === page ? theme.palette.common.white : "rgba(255,255,255,0.35)"
9456
+ }
9457
+ },
9458
+ i
9459
+ ))
9460
+ }
9461
+ )
9462
+ }
9463
+ )
9464
+ ] })
9465
+ ] });
9466
+ };
9467
+ const BannerComponent = ({ url }) => {
9468
+ return /* @__PURE__ */ jsx(Fade, { in: true, timeout: ANIMATION_TIME, children: /* @__PURE__ */ jsx(Stack, { children: /* @__PURE__ */ jsx(
9469
+ ImageElement,
9470
+ {
9471
+ url,
9472
+ sx: {
9473
+ borderRadius: BORDER_RADIUS_ELEMENT,
9474
+ maxWidth: "100%",
9475
+ width: "100%",
9476
+ height: "auto"
9477
+ }
9478
+ }
9479
+ ) }) });
9480
+ };
9481
9481
  const Breadcrumbs = ({ content, showBackButton = true, onBack, sxLabel }) => {
9482
9482
  const navigate = useNavigate();
9483
9483
  const handleBack = () => {
@@ -9771,7 +9771,7 @@ const SystemMonitorSidebarPart = ({
9771
9771
  blacklist,
9772
9772
  env,
9773
9773
  onClickApp,
9774
- showNameApps = false,
9774
+ showNameApps,
9775
9775
  direction = "row"
9776
9776
  }) => {
9777
9777
  const [open, setOpen] = useState(false);
@@ -9787,7 +9787,7 @@ const SystemMonitorSidebarPart = ({
9787
9787
  }, [window.location.href]);
9788
9788
  return /* @__PURE__ */ jsxs(Fragment, { children: [
9789
9789
  /* @__PURE__ */ jsx(ImageElement, { url: IconAppsSidebar, onClick: () => setOpen(true), sizeType: ImageSizeType.SQUARE }),
9790
- currentApp && /* @__PURE__ */ jsx(AppGridItem, { app: currentApp, iconSize: 32, iconRadius: 6, showNameApps, direction }),
9790
+ currentApp && /* @__PURE__ */ jsx(AppGridItem, { app: currentApp, iconSize: 32, iconRadius: 3, showNameApps, direction }),
9791
9791
  /* @__PURE__ */ jsx(
9792
9792
  AppsSidebar,
9793
9793
  {