@undefine-ui/design-system 2.12.0 → 2.14.0

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.js CHANGED
@@ -5682,8 +5682,10 @@ var getBackgroundDefault = (contrast) => {
5682
5682
  // src/theme/create-theme.ts
5683
5683
  var createTheme = (settings) => {
5684
5684
  const initialTheme = {
5685
+ cssVariables: true,
5685
5686
  colorSchemes,
5686
5687
  breakpoints,
5688
+ defaultColorScheme: settings.colorScheme,
5687
5689
  colorSchemeSelector: "data-mui-color-scheme",
5688
5690
  shadows: shadows(settings.colorScheme),
5689
5691
  customShadows: customShadows(settings.colorScheme),
@@ -5727,20 +5729,10 @@ var shouldSkipGeneratingVar = (keys) => {
5727
5729
  };
5728
5730
 
5729
5731
  // src/theme/color-scheme-script.tsx
5730
- import InitColorSchemeScript from "@mui/material/InitColorSchemeScript";
5731
- import { jsx as jsx38 } from "react/jsx-runtime";
5732
5732
  var schemeConfig = {
5733
5733
  modeStorageKey: "theme-mode",
5734
5734
  defaultMode: defaultSettings.colorScheme
5735
5735
  };
5736
- var getInitColorSchemeScript = /* @__PURE__ */ jsx38(
5737
- InitColorSchemeScript,
5738
- {
5739
- modeStorageKey: schemeConfig.modeStorageKey,
5740
- colorSchemeNode: schemeConfig.defaultMode
5741
- },
5742
- schemeConfig.modeStorageKey
5743
- );
5744
5736
 
5745
5737
  // src/theme/ThemeProvider.tsx
5746
5738
  import CssBaseline from "@mui/material/CssBaseline";
@@ -5756,7 +5748,7 @@ import "@fontsource/geist/500.css";
5756
5748
  import "@fontsource/geist/600.css";
5757
5749
  import "@fontsource/geist/700.css";
5758
5750
  import "./satoshi-4X3TX4PE.css";
5759
- import { jsx as jsx39, jsxs as jsxs21 } from "react/jsx-runtime";
5751
+ import { jsx as jsx38, jsxs as jsxs21 } from "react/jsx-runtime";
5760
5752
  var ThemeProvider = ({ children }) => {
5761
5753
  const settings = useSettings();
5762
5754
  const theme = createTheme(settings);
@@ -5767,7 +5759,7 @@ var ThemeProvider = ({ children }) => {
5767
5759
  defaultMode: schemeConfig.defaultMode,
5768
5760
  modeStorageKey: schemeConfig.modeStorageKey,
5769
5761
  children: [
5770
- /* @__PURE__ */ jsx39(CssBaseline, {}),
5762
+ /* @__PURE__ */ jsx38(CssBaseline, {}),
5771
5763
  children
5772
5764
  ]
5773
5765
  }
@@ -5777,7 +5769,7 @@ var ThemeProvider = ({ children }) => {
5777
5769
  // src/components/Logo/index.tsx
5778
5770
  import Link from "@mui/material/Link";
5779
5771
  import Box2 from "@mui/material/Box";
5780
- import { jsx as jsx40, jsxs as jsxs22 } from "react/jsx-runtime";
5772
+ import { jsx as jsx39, jsxs as jsxs22 } from "react/jsx-runtime";
5781
5773
  var LOGO_MAP = {
5782
5774
  full: {
5783
5775
  black: "https://res.cloudinary.com/dvbtbsinu/image/upload/v1763077834/define-agency/logos/logo-black-full_mjngwu.png",
@@ -5805,7 +5797,7 @@ var Logo = ({
5805
5797
  const type = isFull ? "full" : "single";
5806
5798
  const color = isWhite ? "white" : isBlack ? "black" : "default";
5807
5799
  const logoImg = src ?? LOGO_MAP[type][color];
5808
- const logo = /* @__PURE__ */ jsx40(
5800
+ const logo = /* @__PURE__ */ jsx39(
5809
5801
  Box2,
5810
5802
  {
5811
5803
  component: "img",
@@ -5818,7 +5810,7 @@ var Logo = ({
5818
5810
  if (disableLink) {
5819
5811
  return logo;
5820
5812
  }
5821
- return /* @__PURE__ */ jsx40(Link, { component: LinkComponent, href, sx: { display: "contents" }, children: logo });
5813
+ return /* @__PURE__ */ jsx39(Link, { component: LinkComponent, href, sx: { display: "contents" }, children: logo });
5822
5814
  };
5823
5815
  var AnimatedLogo = () => {
5824
5816
  return /* @__PURE__ */ jsxs22(
@@ -5830,7 +5822,7 @@ var AnimatedLogo = () => {
5830
5822
  fill: "none",
5831
5823
  xmlns: "http://www.w3.org/2000/svg",
5832
5824
  children: [
5833
- /* @__PURE__ */ jsx40("style", { children: `
5825
+ /* @__PURE__ */ jsx39("style", { children: `
5834
5826
  @keyframes fadeIn {
5835
5827
  from {
5836
5828
  opacity: 0;
@@ -5891,7 +5883,7 @@ var AnimatedLogo = () => {
5891
5883
  transform-origin: center;
5892
5884
  }
5893
5885
  ` }),
5894
- /* @__PURE__ */ jsx40(
5886
+ /* @__PURE__ */ jsx39(
5895
5887
  "rect",
5896
5888
  {
5897
5889
  className: "background-rect",
@@ -5902,7 +5894,7 @@ var AnimatedLogo = () => {
5902
5894
  fill: "white"
5903
5895
  }
5904
5896
  ),
5905
- /* @__PURE__ */ jsx40(
5897
+ /* @__PURE__ */ jsx39(
5906
5898
  "path",
5907
5899
  {
5908
5900
  className: "bars",
@@ -5910,7 +5902,7 @@ var AnimatedLogo = () => {
5910
5902
  fill: "#5E30EB"
5911
5903
  }
5912
5904
  ),
5913
- /* @__PURE__ */ jsx40(
5905
+ /* @__PURE__ */ jsx39(
5914
5906
  "path",
5915
5907
  {
5916
5908
  className: "d-letter",
@@ -5930,7 +5922,7 @@ import { DataGrid } from "@mui/x-data-grid";
5930
5922
  // src/components/Table/components/TableNoRows.tsx
5931
5923
  import Box3 from "@mui/material/Box";
5932
5924
  import { styled } from "@mui/material/styles";
5933
- import { jsx as jsx41 } from "react/jsx-runtime";
5925
+ import { jsx as jsx40 } from "react/jsx-runtime";
5934
5926
  var StyledGridOverlay = styled("div")(({ theme }) => ({
5935
5927
  display: "flex",
5936
5928
  flexDirection: "column",
@@ -5940,7 +5932,7 @@ var StyledGridOverlay = styled("div")(({ theme }) => ({
5940
5932
  height: "100%"
5941
5933
  }));
5942
5934
  var TableNoRows = ({ noRowsTitle = "No Rows" }) => {
5943
- return /* @__PURE__ */ jsx41(StyledGridOverlay, { children: /* @__PURE__ */ jsx41(Box3, { sx: { mt: 1 }, children: noRowsTitle }) });
5935
+ return /* @__PURE__ */ jsx40(StyledGridOverlay, { children: /* @__PURE__ */ jsx40(Box3, { sx: { mt: 1 }, children: noRowsTitle }) });
5944
5936
  };
5945
5937
  var TableNoRows_default = TableNoRows;
5946
5938
 
@@ -5957,7 +5949,7 @@ import {
5957
5949
  gridRowCountSelector,
5958
5950
  gridPageCountSelector
5959
5951
  } from "@mui/x-data-grid";
5960
- import { jsx as jsx42, jsxs as jsxs23 } from "react/jsx-runtime";
5952
+ import { jsx as jsx41, jsxs as jsxs23 } from "react/jsx-runtime";
5961
5953
  var TablePagination = () => {
5962
5954
  const apiRef = useGridApiContext();
5963
5955
  const page = useGridSelector(apiRef, gridPageSelector);
@@ -5982,7 +5974,7 @@ var TablePagination = () => {
5982
5974
  alignItems: { xs: "flex-start", md: "center" },
5983
5975
  spacing: 2,
5984
5976
  children: [
5985
- /* @__PURE__ */ jsx42(
5977
+ /* @__PURE__ */ jsx41(
5986
5978
  Pagination,
5987
5979
  {
5988
5980
  size: "medium",
@@ -5994,10 +5986,10 @@ var TablePagination = () => {
5994
5986
  showFirstButton: true,
5995
5987
  showLastButton: true,
5996
5988
  onChange: (_, value) => apiRef.current.setPage(value - 1),
5997
- renderItem: (item) => /* @__PURE__ */ jsx42(PaginationItem, { ...item })
5989
+ renderItem: (item) => /* @__PURE__ */ jsx41(PaginationItem, { ...item })
5998
5990
  }
5999
5991
  ),
6000
- /* @__PURE__ */ jsx42(Stack, { direction: "row", alignItems: "center", spacing: 1, children: /* @__PURE__ */ jsxs23(Typography, { variant: "body2", color: "text.secondary", children: [
5992
+ /* @__PURE__ */ jsx41(Stack, { direction: "row", alignItems: "center", spacing: 1, children: /* @__PURE__ */ jsxs23(Typography, { variant: "body2", color: "text.secondary", children: [
6001
5993
  pageSize,
6002
5994
  " Items per page"
6003
5995
  ] }) })
@@ -6014,10 +6006,10 @@ var TablePagination = () => {
6014
6006
  };
6015
6007
 
6016
6008
  // src/components/Table/Table.tsx
6017
- import { jsx as jsx43 } from "react/jsx-runtime";
6009
+ import { jsx as jsx42 } from "react/jsx-runtime";
6018
6010
  var Table = (props) => {
6019
6011
  const { data, showToolbar = false, ...rest } = props;
6020
- return /* @__PURE__ */ jsx43(Box4, { children: /* @__PURE__ */ jsx43(
6012
+ return /* @__PURE__ */ jsx42(Box4, { children: /* @__PURE__ */ jsx42(
6021
6013
  DataGrid,
6022
6014
  {
6023
6015
  rowHeight: 64,
@@ -6056,20 +6048,226 @@ var Table = (props) => {
6056
6048
  ) });
6057
6049
  };
6058
6050
 
6051
+ // src/components/Image/index.tsx
6052
+ import { useRef as useRef4, useState as useState9, useEffect as useEffect5, forwardRef } from "react";
6053
+ import Box5 from "@mui/material/Box";
6054
+ import Skeleton from "@mui/material/Skeleton";
6055
+
6056
+ // src/components/Image/classes.ts
6057
+ var imageClasses = {
6058
+ root: "undefine__image__root",
6059
+ wrapper: "undefine__image__wrapper",
6060
+ overlay: "undefine__image__overlay"
6061
+ };
6062
+
6063
+ // src/components/Image/index.tsx
6064
+ import { jsx as jsx43, jsxs as jsxs24 } from "react/jsx-runtime";
6065
+ var Image = forwardRef(function Image2(props, ref) {
6066
+ const {
6067
+ src,
6068
+ alt,
6069
+ lazy = true,
6070
+ fallbackSrc,
6071
+ srcSet,
6072
+ sizes: sizes2,
6073
+ aspectRatio,
6074
+ fit = "cover",
6075
+ position = "center",
6076
+ overlay,
6077
+ withOverlay = !!overlay,
6078
+ loadingIndicator,
6079
+ renderError,
6080
+ observerMargin = "200px",
6081
+ className,
6082
+ sx,
6083
+ onLoad,
6084
+ onError,
6085
+ imgSx,
6086
+ imgProps,
6087
+ ...rest
6088
+ } = props;
6089
+ const imageRef = useRef4(null);
6090
+ const [status, setStatus] = useState9(lazy ? "idle" : "loading");
6091
+ const [currentSrc, setCurrentSrc] = useState9(lazy ? void 0 : src);
6092
+ const [currentSrcSet, setCurrentSrcSet] = useState9(lazy ? void 0 : srcSet);
6093
+ const [hasTriedFallback, setHasTriedFallback] = useState9(false);
6094
+ const setRefs = (node) => {
6095
+ imageRef.current = node;
6096
+ if (typeof ref === "function") {
6097
+ ref(node);
6098
+ } else if (ref) {
6099
+ ref.current = node;
6100
+ }
6101
+ };
6102
+ useEffect5(() => {
6103
+ setStatus(lazy ? "idle" : "loading");
6104
+ setCurrentSrc(lazy ? void 0 : src);
6105
+ setCurrentSrcSet(lazy ? void 0 : srcSet);
6106
+ setHasTriedFallback(false);
6107
+ }, [lazy, src, srcSet]);
6108
+ useEffect5(() => {
6109
+ if (!lazy) {
6110
+ return;
6111
+ }
6112
+ if (typeof IntersectionObserver === "undefined") {
6113
+ setCurrentSrc(src);
6114
+ setCurrentSrcSet(srcSet);
6115
+ setStatus("loading");
6116
+ return;
6117
+ }
6118
+ const target = imageRef.current;
6119
+ if (!target) {
6120
+ return;
6121
+ }
6122
+ const observer = new IntersectionObserver(
6123
+ (entries) => {
6124
+ entries.forEach((entry) => {
6125
+ if (entry.isIntersecting) {
6126
+ setCurrentSrc(src);
6127
+ setCurrentSrcSet(srcSet);
6128
+ setStatus("loading");
6129
+ observer.disconnect();
6130
+ }
6131
+ });
6132
+ },
6133
+ { rootMargin: observerMargin, threshold: 0.2 }
6134
+ );
6135
+ observer.observe(target);
6136
+ return () => observer.disconnect();
6137
+ }, [lazy, observerMargin, src, srcSet]);
6138
+ const {
6139
+ onLoad: imgOnLoad,
6140
+ onError: imgOnError,
6141
+ loading: imgLoading,
6142
+ ...restImgProps
6143
+ } = imgProps ?? {};
6144
+ const handleLoad = (event) => {
6145
+ setStatus("loaded");
6146
+ imgOnLoad?.(event);
6147
+ onLoad?.(event);
6148
+ };
6149
+ const handleError = (event) => {
6150
+ if (fallbackSrc && !hasTriedFallback) {
6151
+ setHasTriedFallback(true);
6152
+ setCurrentSrc(fallbackSrc);
6153
+ setStatus("loading");
6154
+ return;
6155
+ }
6156
+ setStatus("error");
6157
+ imgOnError?.(event);
6158
+ onError?.(event);
6159
+ };
6160
+ const showLoader = status === "idle" || status === "loading";
6161
+ const showError = status === "error";
6162
+ const loadingAttr = lazy ? "lazy" : imgLoading ?? "eager";
6163
+ return /* @__PURE__ */ jsxs24(
6164
+ Box5,
6165
+ {
6166
+ className: imageClasses.root.concat(className ? ` ${className}` : ""),
6167
+ sx: {
6168
+ position: "relative",
6169
+ display: "block",
6170
+ width: 1,
6171
+ lineHeight: 0,
6172
+ overflow: aspectRatio ? "hidden" : void 0,
6173
+ ...aspectRatio && { aspectRatio },
6174
+ ...sx
6175
+ },
6176
+ ...rest,
6177
+ children: [
6178
+ showLoader && (loadingIndicator ?? /* @__PURE__ */ jsx43(
6179
+ Skeleton,
6180
+ {
6181
+ animation: "wave",
6182
+ variant: "rectangular",
6183
+ className: imageClasses.overlay,
6184
+ sx: {
6185
+ position: "absolute",
6186
+ inset: 0,
6187
+ width: 1,
6188
+ height: 1,
6189
+ borderRadius: 1
6190
+ }
6191
+ }
6192
+ )),
6193
+ /* @__PURE__ */ jsx43(
6194
+ Box5,
6195
+ {
6196
+ ref: setRefs,
6197
+ component: "img",
6198
+ className: imageClasses.wrapper,
6199
+ src: currentSrc,
6200
+ srcSet: currentSrcSet,
6201
+ sizes: sizes2,
6202
+ alt,
6203
+ loading: loadingAttr,
6204
+ onLoad: handleLoad,
6205
+ onError: handleError,
6206
+ ...restImgProps,
6207
+ sx: {
6208
+ width: 1,
6209
+ height: aspectRatio ? "100%" : "auto",
6210
+ display: "block",
6211
+ objectFit: fit,
6212
+ objectPosition: position,
6213
+ opacity: status === "loaded" ? 1 : 0,
6214
+ transition: (theme) => theme.transitions.create("opacity", {
6215
+ duration: theme.transitions.duration.shorter
6216
+ }),
6217
+ ...aspectRatio && { position: "absolute", inset: 0 },
6218
+ ...imgSx
6219
+ }
6220
+ }
6221
+ ),
6222
+ withOverlay && !showError && /* @__PURE__ */ jsx43(
6223
+ Box5,
6224
+ {
6225
+ className: imageClasses.overlay,
6226
+ sx: {
6227
+ position: "absolute",
6228
+ inset: 0,
6229
+ pointerEvents: "none"
6230
+ },
6231
+ children: overlay
6232
+ }
6233
+ ),
6234
+ showError && (renderError ?? /* @__PURE__ */ jsx43(
6235
+ Box5,
6236
+ {
6237
+ className: imageClasses.overlay,
6238
+ sx: {
6239
+ position: "absolute",
6240
+ inset: 0,
6241
+ display: "flex",
6242
+ alignItems: "center",
6243
+ justifyContent: "center",
6244
+ bgcolor: (theme) => theme.vars.palette.grey[200],
6245
+ color: (theme) => theme.vars.palette.text.secondary,
6246
+ fontSize: 12,
6247
+ letterSpacing: 0.2
6248
+ },
6249
+ children: "Image unavailable"
6250
+ }
6251
+ ))
6252
+ ]
6253
+ }
6254
+ );
6255
+ });
6256
+
6059
6257
  // src/components/Upload/Upload.tsx
6060
6258
  import { useDropzone } from "react-dropzone";
6061
- import Box10 from "@mui/material/Box";
6259
+ import Box11 from "@mui/material/Box";
6062
6260
  import Stack3 from "@mui/material/Stack";
6063
6261
  import Button from "@mui/material/Button";
6064
6262
  import FormHelperText from "@mui/material/FormHelperText";
6065
6263
 
6066
6264
  // src/components/Upload/components/Placeholder.tsx
6067
6265
  import Stack2 from "@mui/material/Stack";
6068
- import Box5 from "@mui/material/Box";
6069
- import { jsx as jsx44, jsxs as jsxs24 } from "react/jsx-runtime";
6266
+ import Box6 from "@mui/material/Box";
6267
+ import { jsx as jsx44, jsxs as jsxs25 } from "react/jsx-runtime";
6070
6268
  var UploadPlaceholder = ({ hasError, ...rest }) => {
6071
- return /* @__PURE__ */ jsxs24(
6072
- Box5,
6269
+ return /* @__PURE__ */ jsxs25(
6270
+ Box6,
6073
6271
  {
6074
6272
  sx: {
6075
6273
  display: "flex",
@@ -6090,11 +6288,11 @@ var UploadPlaceholder = ({ hasError, ...rest }) => {
6090
6288
  }
6091
6289
  }
6092
6290
  ),
6093
- /* @__PURE__ */ jsxs24(Stack2, { spacing: 1, sx: { textAlign: "center", mt: 2 }, children: [
6094
- /* @__PURE__ */ jsxs24(Box5, { sx: { typography: "h8" }, children: [
6291
+ /* @__PURE__ */ jsxs25(Stack2, { spacing: 1, sx: { textAlign: "center", mt: 2 }, children: [
6292
+ /* @__PURE__ */ jsxs25(Box6, { sx: { typography: "h8" }, children: [
6095
6293
  "Drag files here or",
6096
6294
  /* @__PURE__ */ jsx44(
6097
- Box5,
6295
+ Box6,
6098
6296
  {
6099
6297
  component: "span",
6100
6298
  sx: {
@@ -6106,8 +6304,8 @@ var UploadPlaceholder = ({ hasError, ...rest }) => {
6106
6304
  }
6107
6305
  )
6108
6306
  ] }),
6109
- /* @__PURE__ */ jsxs24(
6110
- Box5,
6307
+ /* @__PURE__ */ jsxs25(
6308
+ Box6,
6111
6309
  {
6112
6310
  sx: {
6113
6311
  typography: "bodyMd",
@@ -6128,7 +6326,7 @@ var UploadPlaceholder = ({ hasError, ...rest }) => {
6128
6326
  };
6129
6327
 
6130
6328
  // src/components/Upload/components/RejectionFiles.tsx
6131
- import Box6 from "@mui/material/Box";
6329
+ import Box7 from "@mui/material/Box";
6132
6330
  import Paper from "@mui/material/Paper";
6133
6331
  import Typography2 from "@mui/material/Typography";
6134
6332
 
@@ -6161,7 +6359,7 @@ var fileData = (file) => {
6161
6359
  };
6162
6360
 
6163
6361
  // src/components/Upload/components/RejectionFiles.tsx
6164
- import { jsx as jsx45, jsxs as jsxs25 } from "react/jsx-runtime";
6362
+ import { jsx as jsx45, jsxs as jsxs26 } from "react/jsx-runtime";
6165
6363
  var RejectionFiles = ({ files }) => {
6166
6364
  if (!files.length) {
6167
6365
  return null;
@@ -6181,13 +6379,13 @@ var RejectionFiles = ({ files }) => {
6181
6379
  },
6182
6380
  children: files.map(({ file, errors }) => {
6183
6381
  const { path, size } = fileData(file);
6184
- return /* @__PURE__ */ jsxs25(Box6, { sx: { my: 1 }, children: [
6185
- /* @__PURE__ */ jsxs25(Typography2, { variant: "subtitle2", noWrap: true, children: [
6382
+ return /* @__PURE__ */ jsxs26(Box7, { sx: { my: 1 }, children: [
6383
+ /* @__PURE__ */ jsxs26(Typography2, { variant: "subtitle2", noWrap: true, children: [
6186
6384
  path,
6187
6385
  " - ",
6188
6386
  size ? fData(size) : ""
6189
6387
  ] }),
6190
- errors.map((error2) => /* @__PURE__ */ jsxs25(Box6, { component: "span", sx: { typography: "caption" }, children: [
6388
+ errors.map((error2) => /* @__PURE__ */ jsxs26(Box7, { component: "span", sx: { typography: "caption" }, children: [
6191
6389
  "- ",
6192
6390
  error2.message
6193
6391
  ] }, error2.code))
@@ -6198,12 +6396,12 @@ var RejectionFiles = ({ files }) => {
6198
6396
  };
6199
6397
 
6200
6398
  // src/components/Upload/components/UploadProgress.tsx
6201
- import Box7 from "@mui/material/Box";
6399
+ import Box8 from "@mui/material/Box";
6202
6400
  import CircularProgress from "@mui/material/CircularProgress";
6203
- import { jsx as jsx46, jsxs as jsxs26 } from "react/jsx-runtime";
6401
+ import { jsx as jsx46, jsxs as jsxs27 } from "react/jsx-runtime";
6204
6402
  var UploadProgress = ({ progress: progress2 = 20 }) => {
6205
- return /* @__PURE__ */ jsxs26(
6206
- Box7,
6403
+ return /* @__PURE__ */ jsxs27(
6404
+ Box8,
6207
6405
  {
6208
6406
  sx: {
6209
6407
  display: "flex",
@@ -6213,7 +6411,7 @@ var UploadProgress = ({ progress: progress2 = 20 }) => {
6213
6411
  height: "100%"
6214
6412
  },
6215
6413
  children: [
6216
- /* @__PURE__ */ jsxs26(Box7, { sx: { position: "relative", display: "inline-flex" }, children: [
6414
+ /* @__PURE__ */ jsxs27(Box8, { sx: { position: "relative", display: "inline-flex" }, children: [
6217
6415
  /* @__PURE__ */ jsx46(
6218
6416
  CircularProgress,
6219
6417
  {
@@ -6240,7 +6438,7 @@ var UploadProgress = ({ progress: progress2 = 20 }) => {
6240
6438
  }
6241
6439
  ),
6242
6440
  /* @__PURE__ */ jsx46(
6243
- Box7,
6441
+ Box8,
6244
6442
  {
6245
6443
  sx: {
6246
6444
  top: 0,
@@ -6252,30 +6450,30 @@ var UploadProgress = ({ progress: progress2 = 20 }) => {
6252
6450
  alignItems: "center",
6253
6451
  justifyContent: "center"
6254
6452
  },
6255
- children: /* @__PURE__ */ jsx46(Box7, { sx: { typography: "h6", color: "common.black" }, children: `${Math.round(progress2)}` })
6453
+ children: /* @__PURE__ */ jsx46(Box8, { sx: { typography: "h6", color: "common.black" }, children: `${Math.round(progress2)}` })
6256
6454
  }
6257
6455
  )
6258
6456
  ] }),
6259
- /* @__PURE__ */ jsx46(Box7, { sx: { mt: 2, typography: "h6" }, children: "Uploading" })
6457
+ /* @__PURE__ */ jsx46(Box8, { sx: { mt: 2, typography: "h6" }, children: "Uploading" })
6260
6458
  ]
6261
6459
  }
6262
6460
  );
6263
6461
  };
6264
6462
 
6265
6463
  // src/components/Upload/components/MultiFilePreview.tsx
6266
- import { useRef as useRef4 } from "react";
6267
- import Box9 from "@mui/material/Box";
6464
+ import { useRef as useRef5 } from "react";
6465
+ import Box10 from "@mui/material/Box";
6268
6466
  import IconButton2 from "@mui/material/IconButton";
6269
6467
 
6270
6468
  // src/components/Upload/components/SingleFilePreview.tsx
6271
- import Box8 from "@mui/material/Box";
6469
+ import Box9 from "@mui/material/Box";
6272
6470
  import IconButton from "@mui/material/IconButton";
6273
6471
  import { jsx as jsx47 } from "react/jsx-runtime";
6274
6472
  var SingleFilePreview = ({ file }) => {
6275
6473
  const fileName = typeof file === "string" ? file : file.name;
6276
6474
  const previewUrl = typeof file === "string" ? file : URL.createObjectURL(file);
6277
6475
  const renderImg = /* @__PURE__ */ jsx47(
6278
- Box8,
6476
+ Box9,
6279
6477
  {
6280
6478
  component: "img",
6281
6479
  alt: fileName,
@@ -6289,7 +6487,7 @@ var SingleFilePreview = ({ file }) => {
6289
6487
  }
6290
6488
  );
6291
6489
  return /* @__PURE__ */ jsx47(
6292
- Box8,
6490
+ Box9,
6293
6491
  {
6294
6492
  sx: {
6295
6493
  p: 1,
@@ -6329,9 +6527,9 @@ var DeleteButton = ({ sx, ...rest }) => {
6329
6527
  };
6330
6528
 
6331
6529
  // src/components/Upload/components/MultiFilePreview.tsx
6332
- import { jsx as jsx48, jsxs as jsxs27 } from "react/jsx-runtime";
6530
+ import { jsx as jsx48, jsxs as jsxs28 } from "react/jsx-runtime";
6333
6531
  var MultiFilePreview = ({ files, onRemove }) => {
6334
- const scrollRef = useRef4(null);
6532
+ const scrollRef = useRef5(null);
6335
6533
  const handleScroll = (direction) => {
6336
6534
  if (scrollRef.current) {
6337
6535
  const scrollAmount = 300;
@@ -6343,7 +6541,7 @@ var MultiFilePreview = ({ files, onRemove }) => {
6343
6541
  }
6344
6542
  };
6345
6543
  const showNavigation = files.length > 2;
6346
- return /* @__PURE__ */ jsxs27(Box9, { sx: { position: "relative", width: 1 }, children: [
6544
+ return /* @__PURE__ */ jsxs28(Box10, { sx: { position: "relative", width: 1 }, children: [
6347
6545
  showNavigation && /* @__PURE__ */ jsx48(
6348
6546
  IconButton2,
6349
6547
  {
@@ -6365,7 +6563,7 @@ var MultiFilePreview = ({ files, onRemove }) => {
6365
6563
  }
6366
6564
  ),
6367
6565
  /* @__PURE__ */ jsx48(
6368
- Box9,
6566
+ Box10,
6369
6567
  {
6370
6568
  ref: scrollRef,
6371
6569
  sx: {
@@ -6383,8 +6581,8 @@ var MultiFilePreview = ({ files, onRemove }) => {
6383
6581
  children: files.map((file, index) => {
6384
6582
  const fileName = typeof file === "string" ? file : file.name;
6385
6583
  const previewUrl = typeof file === "string" ? file : URL.createObjectURL(file);
6386
- return /* @__PURE__ */ jsxs27(
6387
- Box9,
6584
+ return /* @__PURE__ */ jsxs28(
6585
+ Box10,
6388
6586
  {
6389
6587
  sx: {
6390
6588
  position: "relative",
@@ -6396,7 +6594,7 @@ var MultiFilePreview = ({ files, onRemove }) => {
6396
6594
  },
6397
6595
  children: [
6398
6596
  /* @__PURE__ */ jsx48(
6399
- Box9,
6597
+ Box10,
6400
6598
  {
6401
6599
  component: "img",
6402
6600
  alt: fileName,
@@ -6449,7 +6647,7 @@ var MultiFilePreview = ({ files, onRemove }) => {
6449
6647
  };
6450
6648
 
6451
6649
  // src/components/Upload/Upload.tsx
6452
- import { jsx as jsx49, jsxs as jsxs28 } from "react/jsx-runtime";
6650
+ import { jsx as jsx49, jsxs as jsxs29 } from "react/jsx-runtime";
6453
6651
  var Upload = ({
6454
6652
  sx,
6455
6653
  value,
@@ -6487,9 +6685,9 @@ var Upload = ({
6487
6685
  return /* @__PURE__ */ jsx49(UploadPlaceholder, { hasError });
6488
6686
  };
6489
6687
  const shouldShowDropzone = !hasFile && !hasFiles && !isUploading;
6490
- return /* @__PURE__ */ jsxs28(Box10, { sx: { width: 1, position: "relative", ...sx }, children: [
6491
- /* @__PURE__ */ jsxs28(
6492
- Box10,
6688
+ return /* @__PURE__ */ jsxs29(Box11, { sx: { width: 1, position: "relative", ...sx }, children: [
6689
+ /* @__PURE__ */ jsxs29(
6690
+ Box11,
6493
6691
  {
6494
6692
  ...shouldShowDropzone ? getRootProps() : {},
6495
6693
  sx: {
@@ -6533,7 +6731,7 @@ var Upload = ({
6533
6731
  }
6534
6732
  ),
6535
6733
  hasFile && !isUploading && /* @__PURE__ */ jsx49(DeleteButton, { onClick: onDelete }),
6536
- hasFiles && /* @__PURE__ */ jsxs28(Stack3, { direction: "row", spacing: 2, sx: { mt: 2 }, children: [
6734
+ hasFiles && /* @__PURE__ */ jsxs29(Stack3, { direction: "row", spacing: 2, sx: { mt: 2 }, children: [
6537
6735
  onRemoveAll && /* @__PURE__ */ jsx49(
6538
6736
  Button,
6539
6737
  {
@@ -6565,7 +6763,7 @@ var Upload = ({
6565
6763
  import {
6566
6764
  FormProvider as RHFForm
6567
6765
  } from "react-hook-form";
6568
- import Box11 from "@mui/material/Box";
6766
+ import Box12 from "@mui/material/Box";
6569
6767
  import { jsx as jsx50 } from "react/jsx-runtime";
6570
6768
  var Form = ({
6571
6769
  children,
@@ -6574,7 +6772,7 @@ var Form = ({
6574
6772
  ...rest
6575
6773
  }) => {
6576
6774
  return /* @__PURE__ */ jsx50(RHFForm, { ...methods, children: /* @__PURE__ */ jsx50(
6577
- Box11,
6775
+ Box12,
6578
6776
  {
6579
6777
  component: "form",
6580
6778
  onSubmit: (e) => {
@@ -6594,7 +6792,7 @@ var Form = ({
6594
6792
  // src/components/HookForm/RHFSwitch.tsx
6595
6793
  import { Controller, useFormContext } from "react-hook-form";
6596
6794
  import Stack4 from "@mui/material/Stack";
6597
- import Box12 from "@mui/material/Box";
6795
+ import Box13 from "@mui/material/Box";
6598
6796
  import Typography3 from "@mui/material/Typography";
6599
6797
  import Switch from "@mui/material/Switch";
6600
6798
  import FormGroup from "@mui/material/FormGroup";
@@ -6602,7 +6800,7 @@ import FormLabel from "@mui/material/FormLabel";
6602
6800
  import FormControl from "@mui/material/FormControl";
6603
6801
  import FormHelperText2 from "@mui/material/FormHelperText";
6604
6802
  import FormControlLabel from "@mui/material/FormControlLabel";
6605
- import { jsx as jsx51, jsxs as jsxs29 } from "react/jsx-runtime";
6803
+ import { jsx as jsx51, jsxs as jsxs30 } from "react/jsx-runtime";
6606
6804
  var RHFSwitch = ({
6607
6805
  name,
6608
6806
  description,
@@ -6619,7 +6817,7 @@ var RHFSwitch = ({
6619
6817
  {
6620
6818
  name,
6621
6819
  control,
6622
- render: ({ field, fieldState: { error: error2 } }) => /* @__PURE__ */ jsxs29(Box12, { sx: slotProps?.wrap, children: [
6820
+ render: ({ field, fieldState: { error: error2 } }) => /* @__PURE__ */ jsxs30(Box13, { sx: slotProps?.wrap, children: [
6623
6821
  /* @__PURE__ */ jsx51(
6624
6822
  FormControlLabel,
6625
6823
  {
@@ -6638,7 +6836,7 @@ var RHFSwitch = ({
6638
6836
  }
6639
6837
  }
6640
6838
  ),
6641
- label: /* @__PURE__ */ jsxs29(Stack4, { children: [
6839
+ label: /* @__PURE__ */ jsxs30(Stack4, { children: [
6642
6840
  /* @__PURE__ */ jsx51(Typography3, { variant: "bodyMd", color: "textHeader", fontWeight: 500, children: label }),
6643
6841
  description && /* @__PURE__ */ jsx51(Typography3, { variant: "body2", color: "textBody", children: description })
6644
6842
  ] }),
@@ -6677,7 +6875,7 @@ var RHFMultiSwitch = ({
6677
6875
  {
6678
6876
  name,
6679
6877
  control,
6680
- render: ({ field, fieldState: { error: error2 } }) => /* @__PURE__ */ jsxs29(
6878
+ render: ({ field, fieldState: { error: error2 } }) => /* @__PURE__ */ jsxs30(
6681
6879
  FormControl,
6682
6880
  {
6683
6881
  component: "fieldset",
@@ -6786,18 +6984,18 @@ var RHFUpload = ({ name, multiple, helperText, ...rest }) => {
6786
6984
  import { Controller as Controller3, useFormContext as useFormContext3 } from "react-hook-form";
6787
6985
 
6788
6986
  // src/components/OTPInput/index.tsx
6789
- import { useRef as useRef5, useState as useState9 } from "react";
6987
+ import { useRef as useRef6, useState as useState10 } from "react";
6790
6988
  import { useTheme as useTheme2 } from "@mui/material/styles";
6791
- import Box13 from "@mui/material/Box";
6989
+ import Box14 from "@mui/material/Box";
6792
6990
  import FormHelperText3 from "@mui/material/FormHelperText";
6793
6991
  import { inputBaseClasses as inputBaseClasses3 } from "@mui/material/InputBase";
6794
6992
  import TextField from "@mui/material/TextField";
6795
- import { Fragment, jsx as jsx53, jsxs as jsxs30 } from "react/jsx-runtime";
6993
+ import { Fragment, jsx as jsx53, jsxs as jsxs31 } from "react/jsx-runtime";
6796
6994
  var OTPInput = (props) => {
6797
6995
  const { length = 6, onChange, onComplete, error: error2, helperText, containerProps, ...rest } = props;
6798
6996
  const theme = useTheme2();
6799
- const [otp, setOtp] = useState9(Array(length).fill(""));
6800
- const inputsRef = useRef5([]);
6997
+ const [otp, setOtp] = useState10(Array(length).fill(""));
6998
+ const inputsRef = useRef6([]);
6801
6999
  const handleChange = (value, index) => {
6802
7000
  if (!/^[0-9]$/.test(value) && value !== "") return;
6803
7001
  const newOtp = [...otp];
@@ -6860,13 +7058,14 @@ var OTPInput = (props) => {
6860
7058
  onComplete?.(newOtp.join(""));
6861
7059
  }
6862
7060
  };
6863
- return /* @__PURE__ */ jsxs30(Fragment, { children: [
6864
- /* @__PURE__ */ jsx53(Box13, { display: "flex", justifyContent: "center", ...containerProps, children: otp.map((_, index) => /* @__PURE__ */ jsx53(
6865
- Box13,
7061
+ return /* @__PURE__ */ jsxs31(Fragment, { children: [
7062
+ /* @__PURE__ */ jsx53(Box14, { display: "flex", justifyContent: "center", ...containerProps, children: otp.map((_, index) => /* @__PURE__ */ jsx53(
7063
+ Box14,
6866
7064
  {
6867
7065
  display: "flex",
6868
7066
  alignItems: "center",
6869
7067
  sx: {
7068
+ width: "100%",
6870
7069
  "&:not(:last-of-type)": {
6871
7070
  mr: 1.5
6872
7071
  }
@@ -7045,7 +7244,7 @@ import FormLabel2 from "@mui/material/FormLabel";
7045
7244
  import RadioGroup from "@mui/material/RadioGroup";
7046
7245
  import FormControl2 from "@mui/material/FormControl";
7047
7246
  import FormHelperText4 from "@mui/material/FormHelperText";
7048
- import { jsx as jsx56, jsxs as jsxs31 } from "react/jsx-runtime";
7247
+ import { jsx as jsx56, jsxs as jsxs32 } from "react/jsx-runtime";
7049
7248
  var RHFRadioGroup = ({
7050
7249
  name,
7051
7250
  label,
@@ -7062,7 +7261,7 @@ var RHFRadioGroup = ({
7062
7261
  {
7063
7262
  name,
7064
7263
  control,
7065
- render: ({ field, fieldState: { error: error2 } }) => /* @__PURE__ */ jsxs31(FormControl2, { component: "fieldset", sx: slotProps?.wrap, children: [
7264
+ render: ({ field, fieldState: { error: error2 } }) => /* @__PURE__ */ jsxs32(FormControl2, { component: "fieldset", sx: slotProps?.wrap, children: [
7066
7265
  label && /* @__PURE__ */ jsx56(
7067
7266
  FormLabel2,
7068
7267
  {
@@ -7089,7 +7288,7 @@ var RHFRadioGroup = ({
7089
7288
  }
7090
7289
  }
7091
7290
  ),
7092
- label: /* @__PURE__ */ jsxs31(Stack5, { children: [
7291
+ label: /* @__PURE__ */ jsxs32(Stack5, { children: [
7093
7292
  /* @__PURE__ */ jsx56(Typography4, { variant: "bodyMd", color: "textHeader", fontWeight: 500, children: option.label }),
7094
7293
  option?.description && /* @__PURE__ */ jsx56(Typography4, { variant: "body2", color: "textBody", children: option?.description })
7095
7294
  ] }),
@@ -7155,7 +7354,7 @@ var RHFAutocomplete = ({
7155
7354
  // src/components/HookForm/RHFCheckbox.tsx
7156
7355
  import { Controller as Controller7, useFormContext as useFormContext7 } from "react-hook-form";
7157
7356
  import Stack6 from "@mui/material/Stack";
7158
- import Box14 from "@mui/material/Box";
7357
+ import Box15 from "@mui/material/Box";
7159
7358
  import Typography5 from "@mui/material/Typography";
7160
7359
  import Checkbox from "@mui/material/Checkbox";
7161
7360
  import FormGroup2 from "@mui/material/FormGroup";
@@ -7163,7 +7362,7 @@ import FormLabel3 from "@mui/material/FormLabel";
7163
7362
  import FormControl3 from "@mui/material/FormControl";
7164
7363
  import FormHelperText5 from "@mui/material/FormHelperText";
7165
7364
  import FormControlLabel3 from "@mui/material/FormControlLabel";
7166
- import { jsx as jsx58, jsxs as jsxs32 } from "react/jsx-runtime";
7365
+ import { jsx as jsx58, jsxs as jsxs33 } from "react/jsx-runtime";
7167
7366
  var RHFCheckbox = ({
7168
7367
  name,
7169
7368
  description,
@@ -7180,7 +7379,7 @@ var RHFCheckbox = ({
7180
7379
  {
7181
7380
  name,
7182
7381
  control,
7183
- render: ({ field, fieldState: { error: error2 } }) => /* @__PURE__ */ jsxs32(Box14, { sx: slotProps?.wrap, children: [
7382
+ render: ({ field, fieldState: { error: error2 } }) => /* @__PURE__ */ jsxs33(Box15, { sx: slotProps?.wrap, children: [
7184
7383
  /* @__PURE__ */ jsx58(
7185
7384
  FormControlLabel3,
7186
7385
  {
@@ -7199,7 +7398,7 @@ var RHFCheckbox = ({
7199
7398
  }
7200
7399
  }
7201
7400
  ),
7202
- label: /* @__PURE__ */ jsxs32(Stack6, { children: [
7401
+ label: /* @__PURE__ */ jsxs33(Stack6, { children: [
7203
7402
  /* @__PURE__ */ jsx58(Typography5, { variant: "bodyMd", color: "textHeader", fontWeight: 500, children: label }),
7204
7403
  description && /* @__PURE__ */ jsx58(Typography5, { variant: "body2", color: "textBody", children: description })
7205
7404
  ] }),
@@ -7232,7 +7431,7 @@ var RHFMultiCheckbox = ({
7232
7431
  name,
7233
7432
  control,
7234
7433
  defaultValue: [],
7235
- render: ({ field, fieldState: { error: error2 } }) => /* @__PURE__ */ jsxs32(
7434
+ render: ({ field, fieldState: { error: error2 } }) => /* @__PURE__ */ jsxs33(
7236
7435
  FormControl3,
7237
7436
  {
7238
7437
  component: "fieldset",
@@ -7272,7 +7471,7 @@ var RHFMultiCheckbox = ({
7272
7471
  }
7273
7472
  }
7274
7473
  ),
7275
- label: /* @__PURE__ */ jsxs32(Stack6, { children: [
7474
+ label: /* @__PURE__ */ jsxs33(Stack6, { children: [
7276
7475
  /* @__PURE__ */ jsx58(Typography5, { variant: "bodyMd", color: "textHeader", fontWeight: 500, children: option.label }),
7277
7476
  option?.description && /* @__PURE__ */ jsx58(Typography5, { variant: "body2", color: "textBody", children: option?.description })
7278
7477
  ] }),
@@ -7330,12 +7529,12 @@ var CopyButton = ({ text: text2, size = "small" }) => {
7330
7529
 
7331
7530
  // src/components/LoadingScreen/index.tsx
7332
7531
  import Portal from "@mui/material/Portal";
7333
- import Box15 from "@mui/material/Box";
7532
+ import Box16 from "@mui/material/Box";
7334
7533
  import LinearProgress from "@mui/material/LinearProgress";
7335
7534
  import { jsx as jsx60 } from "react/jsx-runtime";
7336
7535
  var LoadingScreen = ({ portal, sx, ...rest }) => {
7337
7536
  const content = /* @__PURE__ */ jsx60(
7338
- Box15,
7537
+ Box16,
7339
7538
  {
7340
7539
  sx: {
7341
7540
  px: 5,
@@ -7358,7 +7557,7 @@ var LoadingScreen = ({ portal, sx, ...rest }) => {
7358
7557
  };
7359
7558
  var SplashScreen = ({ portal, sx, ...rest }) => {
7360
7559
  const content = /* @__PURE__ */ jsx60(
7361
- Box15,
7560
+ Box16,
7362
7561
  {
7363
7562
  sx: {
7364
7563
  right: 0,
@@ -7397,6 +7596,7 @@ export {
7397
7596
  Field,
7398
7597
  Form,
7399
7598
  Icon,
7599
+ Image,
7400
7600
  InfoCircleFill,
7401
7601
  InfoCircleOutline,
7402
7602
  KeyCommand,
@@ -7464,7 +7664,6 @@ export {
7464
7664
  fShortenNumber,
7465
7665
  formatFullname,
7466
7666
  getCurrencySymbol,
7467
- getInitColorSchemeScript,
7468
7667
  getInitials,
7469
7668
  getStorage,
7470
7669
  grey,