componentes-sinco 1.0.4 → 1.0.6

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.cjs ADDED
@@ -0,0 +1,4387 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __defProps = Object.defineProperties;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
7
+ var __getOwnPropNames = Object.getOwnPropertyNames;
8
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
9
+ var __getProtoOf = Object.getPrototypeOf;
10
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
11
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
12
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
13
+ var __spreadValues = (a, b) => {
14
+ for (var prop in b || (b = {}))
15
+ if (__hasOwnProp.call(b, prop))
16
+ __defNormalProp(a, prop, b[prop]);
17
+ if (__getOwnPropSymbols)
18
+ for (var prop of __getOwnPropSymbols(b)) {
19
+ if (__propIsEnum.call(b, prop))
20
+ __defNormalProp(a, prop, b[prop]);
21
+ }
22
+ return a;
23
+ };
24
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
25
+ var __objRest = (source, exclude) => {
26
+ var target = {};
27
+ for (var prop in source)
28
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
29
+ target[prop] = source[prop];
30
+ if (source != null && __getOwnPropSymbols)
31
+ for (var prop of __getOwnPropSymbols(source)) {
32
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
33
+ target[prop] = source[prop];
34
+ }
35
+ return target;
36
+ };
37
+ var __export = (target, all) => {
38
+ for (var name in all)
39
+ __defProp(target, name, { get: all[name], enumerable: true });
40
+ };
41
+ var __copyProps = (to, from, except, desc) => {
42
+ if (from && typeof from === "object" || typeof from === "function") {
43
+ for (let key of __getOwnPropNames(from))
44
+ if (!__hasOwnProp.call(to, key) && key !== except)
45
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
46
+ }
47
+ return to;
48
+ };
49
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
50
+ // If the importer is in node compatibility mode or this is not an ESM
51
+ // file that has been converted to a CommonJS file using a Babel-
52
+ // compatible transform (i.e. "__esModule" has not been set), then set
53
+ // "default" to the CommonJS "module.exports" for node compatibility.
54
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
55
+ mod
56
+ ));
57
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
58
+
59
+ // src/index.ts
60
+ var src_exports = {};
61
+ __export(src_exports, {
62
+ ADCSincoTheme: () => ADCSincoTheme,
63
+ AdproSincoTheme: () => AdproSincoTheme,
64
+ EmptyState: () => EmptyState,
65
+ FooterAction: () => FooterAction,
66
+ MultiSelect: () => MultiSelect,
67
+ PageHeader: () => PageHeader,
68
+ SCAutocomplete: () => SCAutocomplete,
69
+ SCCalendarSwipeable: () => SCCalendarSwipeable,
70
+ SCDataGrid: () => SCDataGrid,
71
+ SCDataGridInitial: () => SCDataGridInitial,
72
+ SCDateRange: () => SCDateRange,
73
+ SCDialog: () => SCDialog,
74
+ SCDrawer: () => SCDrawer,
75
+ SCMenu: () => SCMenu,
76
+ SCModal: () => SCModal,
77
+ SCSelect: () => SCSelect,
78
+ SCTabs: () => SCTabs,
79
+ SCTextArea: () => SCTextArea,
80
+ SCTextField: () => SCTextField,
81
+ SCToastNotification: () => SCToastNotification,
82
+ SincoTheme: () => SincoTheme,
83
+ ToastProgress: () => ToastProgress,
84
+ capitalize: () => capitalize,
85
+ getButtonColor: () => getButtonColor,
86
+ getIcon: () => getIcon,
87
+ getIconComponent: () => getIconComponent2,
88
+ getIconMultiSelect: () => getIconMultiSelect,
89
+ getModalColor: () => getModalColor,
90
+ modalStateConfig: () => modalStateConfig,
91
+ useFilteredItems: () => useFilteredItems,
92
+ useMultiSelectHandlers: () => useMultiSelectHandlers,
93
+ useProgress: () => useProgress
94
+ });
95
+ module.exports = __toCommonJS(src_exports);
96
+
97
+ // src/Components/Drawer/SCDrawer.tsx
98
+ var import_react8 = __toESM(require("react"), 1);
99
+ var import_material7 = require("@mui/material");
100
+ var import_Grid23 = __toESM(require("@mui/material/Grid2"), 1);
101
+ var import_Close = __toESM(require("@mui/icons-material/Close"), 1);
102
+
103
+ // src/Components/Textfield/SCTextField.tsx
104
+ var import_react = __toESM(require("react"), 1);
105
+ var import_material = require("@mui/material");
106
+ var import_Grid2 = __toESM(require("@mui/material/Grid2"), 1);
107
+ var import_icons_material = require("@mui/icons-material");
108
+
109
+ // src/Components/Textfield/Helpers/validateIcon.tsx
110
+ var Muicon = __toESM(require("@mui/icons-material"), 1);
111
+ function getIconComponent(name) {
112
+ if (typeof name !== "string") return name;
113
+ return name in Muicon ? Muicon[name] : void 0;
114
+ }
115
+ function getIconValidation(name) {
116
+ if (typeof name !== "string") {
117
+ return (name == null ? void 0 : name.type) ? "icon" : "text";
118
+ }
119
+ return name in Muicon ? "icon" : "text";
120
+ }
121
+
122
+ // src/Components/Textfield/Helpers/validateKeyDown.tsx
123
+ function validateKeyDown(event2, format2) {
124
+ const key = event2.key;
125
+ const target = event2.target;
126
+ if (format2 === "int" && !/^[0-9]$/.test(key)) {
127
+ event2.preventDefault();
128
+ }
129
+ if (format2 === "decimal" && (target.value === "" && key === "." || key === "-" || key === "+")) {
130
+ event2.preventDefault();
131
+ }
132
+ if (target.type === "text") {
133
+ const regex = /^[a-zA-ZáéíóúÁÉÍÓÚñÑ0-9\s_\-.,@]+$/;
134
+ if (!regex.test(key)) {
135
+ event2.preventDefault();
136
+ }
137
+ }
138
+ }
139
+
140
+ // src/Components/Textfield/Helpers/validateOnBlur.tsx
141
+ var validateOnBlurField = ({
142
+ state,
143
+ required = false,
144
+ setError,
145
+ onBlur
146
+ }) => (event2) => {
147
+ const isError = !state.trim() && required;
148
+ setError(isError);
149
+ if (onBlur) {
150
+ onBlur(event2);
151
+ }
152
+ };
153
+
154
+ // src/Components/Textfield/SCTextField.tsx
155
+ var SCTextField = ({
156
+ //informativas
157
+ title,
158
+ iconTitle,
159
+ infoTitle,
160
+ label = "",
161
+ placeholder = "",
162
+ infoElement,
163
+ iconInputStart,
164
+ iconInputEnd,
165
+ maxLength,
166
+ //Apariencia
167
+ variant = "outlined",
168
+ format: format2,
169
+ disabled,
170
+ required,
171
+ size,
172
+ width = "100%",
173
+ color,
174
+ background,
175
+ //Funcionales
176
+ setState,
177
+ state,
178
+ onChange,
179
+ onBlur,
180
+ onKeyDown
181
+ }) => {
182
+ const inputComponents = {
183
+ outlined: import_material.OutlinedInput,
184
+ filled: import_material.FilledInput,
185
+ standard: import_material.Input
186
+ };
187
+ const InputComponent = inputComponents[variant] || import_material.OutlinedInput;
188
+ let IconInputStartValidation;
189
+ let IconInputEndValidation;
190
+ let IconInputStart;
191
+ let IconInputEnd;
192
+ let IconTitle;
193
+ const [showPassword, setShowPassword] = (0, import_react.useState)(false);
194
+ const [error, setError] = (0, import_react.useState)(false);
195
+ const [anchorInfoTitle, setAnchorInfoTitle] = (0, import_react.useState)(null);
196
+ const openInfoTitle = Boolean(anchorInfoTitle);
197
+ const [anchorInfoElement, setAnchorInfoElement] = (0, import_react.useState)(null);
198
+ const openInfoElement = Boolean(anchorInfoElement);
199
+ (0, import_react.useEffect)(() => {
200
+ if (error) {
201
+ setTimeout(() => {
202
+ setError(false);
203
+ }, 1e3);
204
+ }
205
+ }, [error]);
206
+ if (iconInputStart) {
207
+ IconInputStartValidation = getIconValidation(iconInputStart);
208
+ IconInputStart = getIconComponent(iconInputStart);
209
+ }
210
+ if (iconInputEnd) {
211
+ IconInputEndValidation = getIconValidation(iconInputEnd);
212
+ IconInputEnd = getIconComponent(iconInputEnd);
213
+ }
214
+ if (iconTitle) {
215
+ IconTitle = getIconComponent(iconTitle);
216
+ }
217
+ const handleClickShowPassword = () => setShowPassword((show) => !show);
218
+ const handleMouseDownPassword = (event2) => {
219
+ event2.preventDefault();
220
+ };
221
+ const handleKeyDown = (event2) => {
222
+ validateKeyDown(event2, format2);
223
+ if (onKeyDown) onKeyDown(event2);
224
+ };
225
+ const handleInputChange = (event2) => {
226
+ let valueMax = maxLength ? maxLength + 1 : 50;
227
+ if (event2.target.value.length < valueMax) {
228
+ if (setState) {
229
+ setState(event2.target.value);
230
+ }
231
+ if (onChange) {
232
+ onChange(event2);
233
+ }
234
+ }
235
+ };
236
+ const handleBlur = validateOnBlurField({ state, required, setError, onBlur });
237
+ const handleOpenInfoTitle = (event2) => {
238
+ setAnchorInfoTitle(event2.currentTarget);
239
+ };
240
+ const handleCloseInfoTitle = () => {
241
+ setAnchorInfoTitle(null);
242
+ };
243
+ const handleOpenInfoElement = (event2) => {
244
+ setAnchorInfoElement(event2.currentTarget);
245
+ };
246
+ const handleCloseInfoElement = () => {
247
+ setAnchorInfoElement(null);
248
+ };
249
+ return /* @__PURE__ */ import_react.default.createElement(import_material.Box, { sx: { width } }, /* @__PURE__ */ import_react.default.createElement(import_Grid2.default, { container: true, alignItems: "center", mb: 1.25, gap: 0.5 }, iconTitle && IconTitle ? /* @__PURE__ */ import_react.default.createElement(import_material.SvgIcon, { color: "action", fontSize: "small", component: IconTitle }) : "", title ? /* @__PURE__ */ import_react.default.createElement(import_material.Typography, { mx: 0.5, variant: "subtitle2", color: "text.secondary" }, title) : "", infoTitle ? /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, infoTitle.component === "popover" ? /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(
250
+ import_icons_material.InfoOutlined,
251
+ {
252
+ color: "action",
253
+ fontSize: "small",
254
+ onMouseEnter: (event2) => handleOpenInfoTitle(event2),
255
+ onMouseLeave: () => handleCloseInfoTitle()
256
+ }
257
+ ), /* @__PURE__ */ import_react.default.createElement(
258
+ import_material.Popover,
259
+ {
260
+ sx: {
261
+ pointerEvents: "none",
262
+ "& .MuiBackdrop-root": {
263
+ backgroundColor: "transparent"
264
+ }
265
+ },
266
+ open: openInfoTitle,
267
+ anchorEl: anchorInfoTitle,
268
+ onClose: handleCloseInfoTitle,
269
+ anchorOrigin: {
270
+ vertical: "bottom",
271
+ horizontal: "left"
272
+ },
273
+ transformOrigin: {
274
+ vertical: "top",
275
+ horizontal: "left"
276
+ },
277
+ disableRestoreFocus: true
278
+ },
279
+ /* @__PURE__ */ import_react.default.createElement(import_material.Typography, { p: 2 }, infoTitle.text)
280
+ )) : /* @__PURE__ */ import_react.default.createElement(import_material.Tooltip, { title: infoTitle.text, "data-testid": "test-infoTitle", placement: "bottom-start", slotProps: { popper: { modifiers: [{ name: "offset", options: { offset: [0, -14] } }] } } }, /* @__PURE__ */ import_react.default.createElement(
281
+ import_icons_material.InfoOutlined,
282
+ {
283
+ color: "action",
284
+ fontSize: "small"
285
+ }
286
+ ))) : ""), /* @__PURE__ */ import_react.default.createElement(import_Grid2.default, { container: true, sx: { flexWrap: "nowrap", alignItems: "center" } }, /* @__PURE__ */ import_react.default.createElement(
287
+ import_material.FormControl,
288
+ {
289
+ color,
290
+ fullWidth: true,
291
+ size: size ? size : "medium",
292
+ variant,
293
+ sx: { background: background || "transparent", borderRadius: "4px" }
294
+ },
295
+ /* @__PURE__ */ import_react.default.createElement(
296
+ import_material.InputLabel,
297
+ {
298
+ "data-testid": "test-label",
299
+ htmlFor: "",
300
+ required: required && label !== "" ? true : false,
301
+ error,
302
+ disabled: disabled || false
303
+ },
304
+ label ? label : ""
305
+ ),
306
+ /* @__PURE__ */ import_react.default.createElement(
307
+ InputComponent,
308
+ {
309
+ size: size ? size : "medium",
310
+ fullWidth: true,
311
+ value: state,
312
+ error,
313
+ id: label == null ? void 0 : label.replace(/\s+/g, ""),
314
+ disabled: disabled != null ? disabled : false,
315
+ onKeyDown: handleKeyDown,
316
+ onChange: handleInputChange,
317
+ onBlur: handleBlur,
318
+ inputProps: { maxLength: maxLength ? maxLength : 50 },
319
+ type: !showPassword && format2 === "password" ? "password" : (format2 || "text").toUpperCase() === "INT" || (format2 || "text").toUpperCase() === "DECIMAL" ? "number" : "text",
320
+ className: format2 === "password" && !showPassword ? "" : "",
321
+ placeholder,
322
+ startAdornment: iconInputStart ? /* @__PURE__ */ import_react.default.createElement(import_material.InputAdornment, { position: "start" }, IconInputStartValidation === "text" ? iconInputStart : IconInputStart ? /* @__PURE__ */ import_react.default.createElement(IconInputStart, { fontSize: "small" }) : null) : "",
323
+ endAdornment: /* @__PURE__ */ import_react.default.createElement(import_material.InputAdornment, { position: "end" }, format2 === "password" ? /* @__PURE__ */ import_react.default.createElement(
324
+ import_material.IconButton,
325
+ {
326
+ "aria-label": "toggle password visibility",
327
+ onClick: handleClickShowPassword,
328
+ onMouseDown: handleMouseDownPassword,
329
+ edge: "end"
330
+ },
331
+ showPassword ? /* @__PURE__ */ import_react.default.createElement(import_icons_material.VisibilityOff, null) : /* @__PURE__ */ import_react.default.createElement(import_icons_material.Visibility, null)
332
+ ) : iconInputEnd === void 0 && infoElement !== void 0 ? /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, infoElement.component === "popover" ? /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(
333
+ import_icons_material.InfoOutlined,
334
+ {
335
+ "data-testid": "test-infoElement",
336
+ sx: { ml: 0.5 },
337
+ color: "action",
338
+ fontSize: "small",
339
+ component: "svg",
340
+ onMouseEnter: (event2) => handleOpenInfoElement(event2),
341
+ onMouseLeave: () => handleCloseInfoElement()
342
+ }
343
+ ), /* @__PURE__ */ import_react.default.createElement(
344
+ import_material.Popover,
345
+ {
346
+ sx: {
347
+ pointerEvents: "none",
348
+ "& .MuiBackdrop-root": {
349
+ backgroundColor: "transparent"
350
+ }
351
+ },
352
+ open: openInfoElement,
353
+ anchorEl: anchorInfoElement,
354
+ onClose: handleCloseInfoElement,
355
+ anchorOrigin: {
356
+ vertical: "bottom",
357
+ horizontal: "left"
358
+ },
359
+ transformOrigin: {
360
+ vertical: "top",
361
+ horizontal: "left"
362
+ },
363
+ disableRestoreFocus: true
364
+ },
365
+ /* @__PURE__ */ import_react.default.createElement(import_material.Typography, { "data-testid": "test-popover-text", p: 2 }, infoElement.text)
366
+ )) : /* @__PURE__ */ import_react.default.createElement(import_material.Tooltip, { title: infoElement.text, placement: "bottom-end", slotProps: { popper: { modifiers: [{ name: "offset", options: { offset: [0, -14] } }] } } }, /* @__PURE__ */ import_react.default.createElement(
367
+ import_icons_material.InfoOutlined,
368
+ {
369
+ color: "action",
370
+ fontSize: "small"
371
+ }
372
+ ))) : iconInputEnd !== void 0 ? IconInputEndValidation === "text" ? iconInputEnd : IconInputEnd ? /* @__PURE__ */ import_react.default.createElement(IconInputEnd, { fontSize: "small" }) : null : ""),
373
+ label: label ? label + (format2 === "password" && !showPassword ? "" : "") : "",
374
+ autoComplete: format2 === "password" ? "new-password" : "off"
375
+ }
376
+ )
377
+ ), (iconInputEnd !== void 0 || format2 === "password") && infoElement ? /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, infoElement.component === "popover" ? /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(
378
+ import_icons_material.InfoOutlined,
379
+ {
380
+ "data-testid": "test-infoElement",
381
+ component: "svg",
382
+ sx: { marginLeft: "4px" },
383
+ color: "action",
384
+ fontSize: "small",
385
+ onMouseEnter: (event2) => handleOpenInfoElement(event2),
386
+ onMouseLeave: handleCloseInfoElement
387
+ }
388
+ ), /* @__PURE__ */ import_react.default.createElement(
389
+ import_material.Popover,
390
+ {
391
+ sx: { pointerEvents: "none" },
392
+ open: openInfoElement,
393
+ anchorEl: anchorInfoElement,
394
+ onClose: handleCloseInfoElement,
395
+ anchorOrigin: {
396
+ vertical: "bottom",
397
+ horizontal: "left"
398
+ },
399
+ transformOrigin: {
400
+ vertical: "top",
401
+ horizontal: "left"
402
+ },
403
+ disableRestoreFocus: true
404
+ },
405
+ /* @__PURE__ */ import_react.default.createElement(import_material.Typography, { "data-testid": "test-popover-text", p: 2 }, infoElement.text)
406
+ )) : /* @__PURE__ */ import_react.default.createElement(import_material.Tooltip, { title: infoElement.text, placement: "bottom-end", slotProps: { popper: { modifiers: [{ name: "offset", options: { offset: [0, -14] } }] } } }, /* @__PURE__ */ import_react.default.createElement(
407
+ import_icons_material.InfoOutlined,
408
+ {
409
+ sx: { marginLeft: "4px" },
410
+ color: "action",
411
+ fontSize: "small"
412
+ }
413
+ ))) : ""));
414
+ };
415
+
416
+ // src/Components/ToastNotification/SCToastNotification.tsx
417
+ var import_react3 = __toESM(require("react"), 1);
418
+ var import_material2 = require("@mui/material");
419
+ var import_icons_material2 = require("@mui/icons-material");
420
+
421
+ // src/Components/ToastNotification/useProgress.ts
422
+ var import_react2 = require("react");
423
+ var useProgress = (timeProgress, lote) => {
424
+ const [progress, setProgress] = (0, import_react2.useState)(0);
425
+ (0, import_react2.useEffect)(() => {
426
+ const interval = setInterval(() => {
427
+ setProgress((prev) => {
428
+ if (prev >= 100) {
429
+ clearInterval(interval);
430
+ }
431
+ if (lote) {
432
+ const nextProgress = prev + lote;
433
+ return nextProgress <= 100 ? nextProgress : 100;
434
+ } else {
435
+ return prev + 1;
436
+ }
437
+ });
438
+ }, timeProgress * 10);
439
+ return () => {
440
+ clearInterval(interval);
441
+ };
442
+ }, [timeProgress, lote]);
443
+ return {
444
+ progress
445
+ };
446
+ };
447
+ var ToastProgress = (timeProgress) => {
448
+ const [progress, setProgress] = (0, import_react2.useState)(100);
449
+ (0, import_react2.useEffect)(() => {
450
+ const interval = setInterval(() => {
451
+ setProgress((prev) => {
452
+ if (prev <= 0) {
453
+ clearInterval(interval);
454
+ }
455
+ return prev - 1;
456
+ });
457
+ }, timeProgress * 10);
458
+ return () => {
459
+ clearInterval(interval);
460
+ };
461
+ }, [timeProgress]);
462
+ return {
463
+ progressToast: progress
464
+ };
465
+ };
466
+
467
+ // src/Components/ToastNotification/SCToastNotification.tsx
468
+ var SCToastNotification = (toast) => {
469
+ var _a;
470
+ const [stateOptions, setStateOptions] = (0, import_react3.useState)(true);
471
+ const [stateToast, setStateToast] = (0, import_react3.useState)(true);
472
+ const timeProgress = toast.time || 10;
473
+ const { progress } = useProgress(timeProgress);
474
+ const toastColorConfig = toast.type || "info";
475
+ const toastIconOption = {
476
+ success: /* @__PURE__ */ import_react3.default.createElement(import_icons_material2.CheckCircleRounded, { color: "success" }),
477
+ error: /* @__PURE__ */ import_react3.default.createElement(import_icons_material2.ErrorRounded, { color: "error" }),
478
+ warning: /* @__PURE__ */ import_react3.default.createElement(import_icons_material2.WarningRounded, { color: "warning" }),
479
+ info: /* @__PURE__ */ import_react3.default.createElement(import_icons_material2.InfoRounded, { color: "info" })
480
+ };
481
+ const acciones = [...toast.actions || [{ text: "Action", fn: () => {
482
+ alert("");
483
+ } }, { text: "Consultar", fn: () => {
484
+ } }]];
485
+ const ToastIconConfig = toastIconOption[toast.type];
486
+ const closeToast = () => {
487
+ setStateToast(false);
488
+ };
489
+ const toggleToastOptions = () => {
490
+ setStateOptions((prevShowOptions) => !prevShowOptions);
491
+ };
492
+ (0, import_react3.useEffect)(() => {
493
+ progress >= 100 && setStateToast(false);
494
+ }, [progress]);
495
+ return /* @__PURE__ */ import_react3.default.createElement(import_react3.default.Fragment, null, stateToast && /* @__PURE__ */ import_react3.default.createElement(
496
+ import_material2.Stack,
497
+ {
498
+ position: "fixed",
499
+ zIndex: 1400,
500
+ right: 16,
501
+ top: 16,
502
+ width: 370,
503
+ sx: {
504
+ boxShadow: (theme) => theme.shadows[8]
505
+ }
506
+ },
507
+ /* @__PURE__ */ import_react3.default.createElement(
508
+ import_material2.Box,
509
+ {
510
+ padding: 1.5,
511
+ gap: 1.5,
512
+ display: "flex",
513
+ alignItems: "center",
514
+ sx: {
515
+ backgroundColor: {
516
+ success: "success.50",
517
+ error: "error.50",
518
+ warning: "warning.50",
519
+ info: "info.50"
520
+ }[toastColorConfig]
521
+ }
522
+ },
523
+ /* @__PURE__ */ import_react3.default.createElement(
524
+ import_material2.Stack,
525
+ {
526
+ p: 1,
527
+ gap: 1,
528
+ borderRadius: 50,
529
+ bgcolor: {
530
+ success: "success.100",
531
+ error: "error.100",
532
+ warning: "warning.100",
533
+ info: "info.100"
534
+ }[(_a = toast.type) != null ? _a : "info"]
535
+ },
536
+ /* @__PURE__ */ import_react3.default.createElement(import_material2.Stack, null, ToastIconConfig)
537
+ ),
538
+ /* @__PURE__ */ import_react3.default.createElement(import_material2.Divider, { orientation: "vertical", flexItem: true }),
539
+ /* @__PURE__ */ import_react3.default.createElement(import_material2.Stack, { width: 285 }, /* @__PURE__ */ import_react3.default.createElement(
540
+ import_material2.Stack,
541
+ {
542
+ justifyContent: "space-between",
543
+ flexDirection: "row",
544
+ alignItems: "center"
545
+ },
546
+ /* @__PURE__ */ import_react3.default.createElement(import_material2.Typography, { variant: "subtitle2", color: "text.primary" }, toast.title),
547
+ /* @__PURE__ */ import_react3.default.createElement(
548
+ import_material2.IconButton,
549
+ {
550
+ size: "small",
551
+ "data-testid": "close-icon",
552
+ onClick: closeToast
553
+ },
554
+ /* @__PURE__ */ import_react3.default.createElement(import_icons_material2.Close, { fontSize: "small" })
555
+ )
556
+ ), /* @__PURE__ */ import_react3.default.createElement(import_material2.Stack, { gap: 0.5 }, /* @__PURE__ */ import_react3.default.createElement(import_material2.Typography, { color: "text.primary", variant: "body2" }, toast.subtitle), !stateOptions && toast.listITems && toast.listITems.length > 0 && /* @__PURE__ */ import_react3.default.createElement(import_material2.Stack, null, toast.listITems.map((element, i) => /* @__PURE__ */ import_react3.default.createElement(import_material2.Typography, { variant: "caption", key: i }, "\u2022 ", element)))), /* @__PURE__ */ import_react3.default.createElement(import_material2.Stack, { justifyContent: "flex-end", flexDirection: "row", gap: 0.5 }, toast.actions && toast.actions.length > 0 && /* @__PURE__ */ import_react3.default.createElement(import_material2.Stack, { flexDirection: "row", gap: 0.5 }, toast.actions.map((button, index) => /* @__PURE__ */ import_react3.default.createElement(
557
+ import_material2.Button,
558
+ {
559
+ key: index,
560
+ color: toast.type === "info" ? "info" : toast.type === "success" ? "success" : toast.type === "error" ? "error" : "warning",
561
+ variant: "text",
562
+ onClick: button.fn,
563
+ disabled: button.disabled || false,
564
+ size: "small"
565
+ },
566
+ button.text.charAt(0).toUpperCase() + button.text.slice(1).toLowerCase()
567
+ ))), toast.seeMore && /* @__PURE__ */ import_react3.default.createElement(
568
+ import_material2.Button,
569
+ {
570
+ onClick: toggleToastOptions,
571
+ size: "small",
572
+ variant: "text",
573
+ color: toastColorConfig
574
+ },
575
+ stateOptions ? "Ver m\xE1s" : "Ver menos",
576
+ stateOptions ? /* @__PURE__ */ import_react3.default.createElement(import_icons_material2.KeyboardArrowDown, null) : /* @__PURE__ */ import_react3.default.createElement(import_icons_material2.KeyboardArrowUp, null)
577
+ )))
578
+ ),
579
+ /* @__PURE__ */ import_react3.default.createElement(
580
+ import_material2.LinearProgress,
581
+ {
582
+ sx: {
583
+ ".MuiLinearProgress-bar": {
584
+ transition: "0.1s linear !important",
585
+ transform: "scaleX(-1)"
586
+ }
587
+ },
588
+ color: toastColorConfig,
589
+ variant: "determinate",
590
+ value: 100 - progress
591
+ }
592
+ )
593
+ ));
594
+ };
595
+
596
+ // src/Components/TextArea/Helpers/validateIcon.tsx
597
+ var MuiIcons = __toESM(require("@mui/icons-material"), 1);
598
+ function getIcon(name) {
599
+ if (!name || !(name in MuiIcons)) {
600
+ return null;
601
+ }
602
+ return MuiIcons[name];
603
+ }
604
+
605
+ // src/Components/TextArea/SCTextArea.tsx
606
+ var import_react4 = __toESM(require("react"), 1);
607
+ var import_material3 = require("@mui/material");
608
+ var import_icons_material3 = require("@mui/icons-material");
609
+ var SCTextArea = ({
610
+ //informativas
611
+ title,
612
+ iconTitle,
613
+ infoTitle,
614
+ label = "",
615
+ placeholder,
616
+ maxLength = 200,
617
+ //apariencia
618
+ variant,
619
+ disabled,
620
+ required,
621
+ width = "100%",
622
+ rows = 3,
623
+ colorTitle,
624
+ background,
625
+ //funcionales
626
+ setState,
627
+ state,
628
+ onBlur
629
+ }) => {
630
+ const [helperCount, setHelperCount] = (0, import_react4.useState)(0);
631
+ const [stateError, setStateError] = (0, import_react4.useState)(false);
632
+ const [anchorInfoTitle, setAnchorInfoTitle] = import_react4.default.useState(null);
633
+ const openInfoTitle = Boolean(anchorInfoTitle);
634
+ (0, import_react4.useEffect)(() => {
635
+ setHelperCount(state == null ? void 0 : state.length);
636
+ }, [state]);
637
+ const IconTitle = getIcon(iconTitle);
638
+ const handleBlur = (event2) => {
639
+ if (required && state.trim() === "") {
640
+ setStateError(true);
641
+ setTimeout(() => {
642
+ setStateError(false);
643
+ }, 1e3);
644
+ return;
645
+ }
646
+ if (onBlur) {
647
+ onBlur(event2);
648
+ }
649
+ };
650
+ const handleOpenInfoTitle = (event2) => {
651
+ setAnchorInfoTitle(event2.currentTarget);
652
+ };
653
+ const handleCloseInfoTitle = () => {
654
+ setAnchorInfoTitle(null);
655
+ };
656
+ return /* @__PURE__ */ import_react4.default.createElement(import_react4.default.Fragment, null, /* @__PURE__ */ import_react4.default.createElement(import_material3.Box, { sx: { width } }, /* @__PURE__ */ import_react4.default.createElement(import_material3.Grid, { container: true, sx: { alignItems: "center" }, gap: 0.5 }, iconTitle && IconTitle && /* @__PURE__ */ import_react4.default.createElement(import_material3.SvgIcon, { color: "action", fontSize: "small", component: IconTitle }), title && /* @__PURE__ */ import_react4.default.createElement(import_material3.Typography, { color: colorTitle || "text.secondary", variant: "subtitle2" }, title), infoTitle ? /* @__PURE__ */ import_react4.default.createElement(import_react4.default.Fragment, null, infoTitle.component === "popover" ? /* @__PURE__ */ import_react4.default.createElement(import_react4.default.Fragment, null, /* @__PURE__ */ import_react4.default.createElement(
657
+ import_icons_material3.InfoOutlined,
658
+ {
659
+ color: "action",
660
+ fontSize: "small",
661
+ onMouseEnter: (event2) => handleOpenInfoTitle(event2),
662
+ onMouseLeave: () => handleCloseInfoTitle()
663
+ }
664
+ ), /* @__PURE__ */ import_react4.default.createElement(
665
+ import_material3.Popover,
666
+ {
667
+ sx: { pointerEvents: "none" },
668
+ open: openInfoTitle,
669
+ anchorEl: anchorInfoTitle,
670
+ onClose: handleCloseInfoTitle,
671
+ anchorOrigin: {
672
+ vertical: "bottom",
673
+ horizontal: "left"
674
+ },
675
+ transformOrigin: {
676
+ vertical: "top",
677
+ horizontal: "left"
678
+ },
679
+ disableRestoreFocus: true
680
+ },
681
+ /* @__PURE__ */ import_react4.default.createElement(import_material3.Typography, { sx: { p: 2 } }, infoTitle.text)
682
+ )) : /* @__PURE__ */ import_react4.default.createElement(import_material3.Tooltip, { title: infoTitle.text, placement: "bottom-start", slotProps: { popper: { modifiers: [{ name: "offset", options: { offset: [0, -14] } }] } } }, /* @__PURE__ */ import_react4.default.createElement(
683
+ import_icons_material3.InfoOutlined,
684
+ {
685
+ color: "action",
686
+ fontSize: "small"
687
+ }
688
+ ))) : ""), /* @__PURE__ */ import_react4.default.createElement(import_material3.Stack, null, /* @__PURE__ */ import_react4.default.createElement(
689
+ import_material3.TextField,
690
+ {
691
+ required,
692
+ placeholder,
693
+ error: stateError,
694
+ variant,
695
+ sx: { mt: "10px", background: background || "transparent", borderRadius: "4px" },
696
+ id: "outlined-multiline-static",
697
+ label,
698
+ multiline: true,
699
+ disabled,
700
+ rows,
701
+ value: state,
702
+ onBlur: handleBlur,
703
+ onChange: (e) => {
704
+ if (setState) {
705
+ setState(e.target.value.substring(0, maxLength));
706
+ }
707
+ },
708
+ autoComplete: "off"
709
+ }
710
+ )), /* @__PURE__ */ import_react4.default.createElement(import_material3.Stack, null, /* @__PURE__ */ import_react4.default.createElement(
711
+ import_material3.Typography,
712
+ {
713
+ variant: "caption",
714
+ color: "text.secondary",
715
+ mr: 1,
716
+ mt: 1,
717
+ align: "right"
718
+ },
719
+ helperCount + "/" + maxLength
720
+ ))));
721
+ };
722
+
723
+ // src/Components/SCSelect.tsx
724
+ var import_react5 = __toESM(require("react"), 1);
725
+ var import_material4 = require("@mui/material");
726
+ var import_Select = __toESM(require("@mui/material/Select"), 1);
727
+ var Muicon2 = __toESM(require("@mui/icons-material"), 1);
728
+ function SCSelect({
729
+ label = "",
730
+ data,
731
+ getItemValue,
732
+ width = "100%",
733
+ size = "small",
734
+ variant = "outlined",
735
+ deleteType = "button",
736
+ required,
737
+ disabled,
738
+ background,
739
+ fnAplicar,
740
+ setState,
741
+ state
742
+ }) {
743
+ const labelContent = `<span style="color: red;">* </span>` + label;
744
+ const [prevData, setPrevData] = import_react5.default.useState(data);
745
+ const [error, setError] = import_react5.default.useState(false);
746
+ (0, import_react5.useEffect)(() => {
747
+ if (error) {
748
+ setTimeout(() => {
749
+ setError(false);
750
+ }, 1e3);
751
+ }
752
+ }, [error]);
753
+ (0, import_react5.useEffect)(() => {
754
+ let dataChangeValidation = JSON.stringify(prevData) === JSON.stringify(data);
755
+ if (dataChangeValidation == false) {
756
+ setState({ hiddenValue: "", textValue: "" });
757
+ setPrevData(data);
758
+ }
759
+ }, [data]);
760
+ data.map(function(option, index, array) {
761
+ if (option == null ? void 0 : option.icon) {
762
+ if ((option == null ? void 0 : option.icon.type) == void 0) {
763
+ option.icon = Muicon2[option == null ? void 0 : option.icon];
764
+ } else {
765
+ option;
766
+ }
767
+ }
768
+ });
769
+ const handleBlur = () => {
770
+ const currentValue = Array.isArray(state.hiddenValue) ? state.hiddenValue[0] : state.hiddenValue;
771
+ const isError = !currentValue && !!required;
772
+ setError(Boolean(isError));
773
+ };
774
+ const handleChange = (event2) => {
775
+ const selectedValue = event2.target.value;
776
+ if (selectedValue) {
777
+ const selectedOption = data.find((item) => getItemValue(item).value === selectedValue);
778
+ if (selectedOption) {
779
+ const itemValue = getItemValue(selectedOption);
780
+ setState({
781
+ hiddenValue: itemValue.value,
782
+ textValue: itemValue.text
783
+ });
784
+ }
785
+ }
786
+ };
787
+ return /* @__PURE__ */ import_react5.default.createElement(import_react5.default.Fragment, null, data && /* @__PURE__ */ import_react5.default.createElement(import_material4.Box, { sx: { width } }, /* @__PURE__ */ import_react5.default.createElement(
788
+ import_material4.FormControl,
789
+ {
790
+ fullWidth: true,
791
+ size: size ? size : "medium",
792
+ variant
793
+ },
794
+ /* @__PURE__ */ import_react5.default.createElement(
795
+ import_material4.InputLabel,
796
+ {
797
+ error
798
+ },
799
+ required ? /* @__PURE__ */ import_react5.default.createElement("span", { dangerouslySetInnerHTML: { __html: labelContent } }) : label
800
+ ),
801
+ /* @__PURE__ */ import_react5.default.createElement(
802
+ import_Select.default,
803
+ {
804
+ value: Array.isArray(state.hiddenValue) ? state.hiddenValue[0] || "" : state.hiddenValue != "-1" ? state.hiddenValue : "",
805
+ label: required ? /* @__PURE__ */ import_react5.default.createElement("span", { dangerouslySetInnerHTML: { __html: labelContent } }) : label,
806
+ onChange: handleChange,
807
+ onBlur: handleBlur,
808
+ variant,
809
+ disabled: disabled || false,
810
+ error,
811
+ MenuProps: {
812
+ PaperProps: {
813
+ sx: {
814
+ left: "0px !important"
815
+ }
816
+ },
817
+ sx: {
818
+ "& .MuiPaper-root": {
819
+ left: "0px !important"
820
+ }
821
+ }
822
+ }
823
+ },
824
+ data.map((option, index) => {
825
+ return /* @__PURE__ */ import_react5.default.createElement(import_material4.MenuItem, { key: index, value: getItemValue(option).value }, getItemValue(option).icon != void 0 ? /* @__PURE__ */ import_react5.default.createElement(import_material4.ListItemIcon, { sx: { minWidth: "10px !important" } }, /* @__PURE__ */ import_react5.default.createElement(import_material4.SvgIcon, { fontSize: "small", color: "action", component: getItemValue(option).icon })) : "", /* @__PURE__ */ import_react5.default.createElement(import_material4.ListItemText, { primary: getItemValue(option).text, color: "text.primary" }));
826
+ })
827
+ )
828
+ )));
829
+ }
830
+
831
+ // src/Components/SCAutocomplete.tsx
832
+ var import_react6 = __toESM(require("react"), 1);
833
+ var import_material5 = require("@mui/material");
834
+ var import_Grid22 = __toESM(require("@mui/material/Grid2"), 1);
835
+ var import_icons_material4 = require("@mui/icons-material");
836
+ var Muicon3 = __toESM(require("@mui/icons-material"), 1);
837
+ function SCAutocomplete({
838
+ label = "",
839
+ data,
840
+ columnGroup,
841
+ getItemValue,
842
+ typeFormat = "normal",
843
+ checkMassive = false,
844
+ deleteType = "button",
845
+ fnAplicar,
846
+ required,
847
+ disabled,
848
+ background,
849
+ setState,
850
+ state,
851
+ inputChange,
852
+ maxCheck
853
+ // Agregar el parámetro maxCheck
854
+ }) {
855
+ const labelContent = `<span style="color: red;">* </span>` + label;
856
+ let group = "";
857
+ let isSelected = false;
858
+ const [selectedOptions, setSelectedOptions] = import_react6.default.useState([]);
859
+ const [prevData, setPrevData] = import_react6.default.useState(data);
860
+ const [originalData, setOriginalData] = import_react6.default.useState(data);
861
+ const [inputValue, setInputValue] = import_react6.default.useState("");
862
+ const [isUserTyping, setIsUserTyping] = import_react6.default.useState(false);
863
+ (0, import_react6.useEffect)(() => {
864
+ const dataChangeValidation = JSON.stringify(prevData) === JSON.stringify(data);
865
+ if (!dataChangeValidation && !isUserTyping) {
866
+ setState({ hiddenValue: "-1", textValue: "" });
867
+ setSelectedOptions([]);
868
+ setOriginalData(data);
869
+ } else if (!isUserTyping) {
870
+ setOriginalData(data);
871
+ }
872
+ setPrevData(data);
873
+ }, [data, isUserTyping]);
874
+ (0, import_react6.useEffect)(() => {
875
+ if (typeFormat == "multiselect") {
876
+ if (state.hiddenValue != "-1" && Array.isArray(state.hiddenValue)) {
877
+ const newSelectedOptions = originalData.filter(
878
+ (item) => state.hiddenValue.includes(getItemValue(item).value)
879
+ );
880
+ setSelectedOptions(newSelectedOptions);
881
+ }
882
+ }
883
+ }, [state.hiddenValue, originalData, typeFormat]);
884
+ (0, import_react6.useEffect)(() => {
885
+ if (inputValue === "") {
886
+ setIsUserTyping(false);
887
+ }
888
+ }, [inputValue]);
889
+ data.map(function(option) {
890
+ if (option == null ? void 0 : option.icon) {
891
+ if ((option == null ? void 0 : option.icon.type) == void 0) {
892
+ option.icon = Muicon3[option == null ? void 0 : option.icon];
893
+ } else {
894
+ option;
895
+ }
896
+ }
897
+ });
898
+ const cleanOptions = (event2) => {
899
+ setState({ hiddenValue: "-1", textValue: "" });
900
+ setSelectedOptions([]);
901
+ setInputValue("");
902
+ setIsUserTyping(false);
903
+ };
904
+ const handleCheckAll = (event2) => {
905
+ if (event2.target.checked) {
906
+ const itemsToSelect = maxCheck ? data.slice(0, maxCheck) : data;
907
+ setSelectedOptions(itemsToSelect);
908
+ setState({
909
+ hiddenValue: itemsToSelect.map((item) => getItemValue(item).value),
910
+ textValue: itemsToSelect.map((item) => getItemValue(item).text)
911
+ });
912
+ } else {
913
+ setSelectedOptions([]);
914
+ setState({ hiddenValue: "-1", textValue: "" });
915
+ setInputValue("");
916
+ setIsUserTyping(false);
917
+ }
918
+ };
919
+ const allSelected = data.length > 0 && selectedOptions.length === data.length;
920
+ const handleChange = (event2, value) => {
921
+ if (typeFormat === "multiselect") {
922
+ if (maxCheck && value.length > maxCheck) {
923
+ value = value.slice(0, maxCheck);
924
+ }
925
+ const ids = value.map((v) => getItemValue ? getItemValue(v).value : "");
926
+ const texts = value.map((v) => getItemValue ? getItemValue(v).text : "");
927
+ setSelectedOptions(value);
928
+ setState({
929
+ hiddenValue: ids,
930
+ textValue: texts
931
+ });
932
+ } else {
933
+ setState({
934
+ hiddenValue: getItemValue(value).value,
935
+ textValue: getItemValue(value).text
936
+ });
937
+ }
938
+ };
939
+ const selectedValue = typeFormat === "multiselect" ? selectedOptions : originalData.find(
940
+ (item) => getItemValue(item).value === state.hiddenValue
941
+ ) || null;
942
+ return /* @__PURE__ */ import_react6.default.createElement(import_react6.default.Fragment, null, data && /* @__PURE__ */ import_react6.default.createElement(
943
+ import_material5.Autocomplete,
944
+ {
945
+ multiple: typeFormat === "multiselect",
946
+ clearOnEscape: true,
947
+ disabled,
948
+ options: data,
949
+ isOptionEqualToValue: (option, value) => getItemValue(option).value === getItemValue(value).value,
950
+ onInputChange: (event2, value) => {
951
+ setInputValue(value);
952
+ setIsUserTyping(value.length > 0);
953
+ if (inputChange) {
954
+ inputChange(value);
955
+ }
956
+ },
957
+ onChange: handleChange,
958
+ getOptionLabel: (option) => getItemValue(option).text,
959
+ value: selectedValue,
960
+ sx: {
961
+ background: background || "transparent",
962
+ width: "100%",
963
+ maxWidth: "100%"
964
+ },
965
+ limitTags: 2,
966
+ renderTags: (value, getTagProps) => {
967
+ const limit = 2;
968
+ return /* @__PURE__ */ import_react6.default.createElement(import_react6.default.Fragment, null, value.slice(0, limit).map((option, index) => {
969
+ const _a = getTagProps({ index }), { key } = _a, chipProps = __objRest(_a, ["key"]);
970
+ return /* @__PURE__ */ import_react6.default.createElement(
971
+ import_material5.Chip,
972
+ __spreadProps(__spreadValues({
973
+ key,
974
+ color: "default",
975
+ size: "small",
976
+ variant: "filled",
977
+ label: getItemValue(option).text
978
+ }, chipProps), {
979
+ style: { maxWidth: 120, overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }
980
+ })
981
+ );
982
+ }), value.length > limit && /* @__PURE__ */ import_react6.default.createElement(import_material5.Box, { sx: { ml: 0.5, fontSize: 13, color: "#666", display: "flex", alignItems: "center" } }, `+${value.length - limit}`));
983
+ },
984
+ renderOption: (props, option) => {
985
+ const _a = props, { key } = _a, optionProps = __objRest(_a, ["key"]);
986
+ let isValid;
987
+ let isDisabled = false;
988
+ if (typeFormat == "multiselect") {
989
+ isSelected = selectedOptions.some(
990
+ (selected) => getItemValue(selected).value === getItemValue(option).value
991
+ );
992
+ if (maxCheck && selectedOptions.length >= maxCheck && !isSelected) {
993
+ isDisabled = true;
994
+ }
995
+ }
996
+ if (columnGroup) {
997
+ isValid = group == option[columnGroup];
998
+ group = option[columnGroup];
999
+ }
1000
+ return /* @__PURE__ */ import_react6.default.createElement(import_react6.default.Fragment, null, /* @__PURE__ */ import_react6.default.createElement(import_react6.default.Fragment, { key }, columnGroup ? !isValid ? /* @__PURE__ */ import_react6.default.createElement(import_material5.Typography, { color: "text.secondary", sx: { margin: "7px 16px !important", fontSize: "13px !important" } }, option[columnGroup]) : "" : "", /* @__PURE__ */ import_react6.default.createElement(
1001
+ import_material5.MenuItem,
1002
+ __spreadProps(__spreadValues({}, optionProps), {
1003
+ disabled: isDisabled,
1004
+ style: {
1005
+ background: typeFormat != "multiselect" ? state.hiddenValue == getItemValue(option).value ? "#dfe6ec" : "white" : "white",
1006
+ padding: "7px 16px",
1007
+ opacity: isDisabled ? 0.5 : 1
1008
+ }
1009
+ }),
1010
+ typeFormat != "multiselect" && getItemValue(option).icon != void 0 ? /* @__PURE__ */ import_react6.default.createElement(import_material5.ListItemIcon, { sx: { minWidth: "10px !important" } }, /* @__PURE__ */ import_react6.default.createElement(import_material5.SvgIcon, { fontSize: "small", color: "action", component: getItemValue(option).icon })) : "",
1011
+ typeFormat == "multiselect" ? /* @__PURE__ */ import_react6.default.createElement(
1012
+ import_material5.Checkbox,
1013
+ {
1014
+ checked: isSelected,
1015
+ disabled: isDisabled,
1016
+ value: getItemValue(option).text,
1017
+ color: "primary"
1018
+ }
1019
+ ) : "",
1020
+ /* @__PURE__ */ import_react6.default.createElement(import_material5.ListItemText, { primary: getItemValue(option).text, color: "text.primary" }),
1021
+ getItemValue(option).component != void 0 ? getItemValue(option).component : ""
1022
+ )));
1023
+ },
1024
+ renderInput: (params) => /* @__PURE__ */ import_react6.default.createElement(import_react6.default.Fragment, null, /* @__PURE__ */ import_react6.default.createElement(
1025
+ import_material5.TextField,
1026
+ __spreadProps(__spreadValues({}, params), {
1027
+ label: required ? /* @__PURE__ */ import_react6.default.createElement("span", { dangerouslySetInnerHTML: { __html: labelContent } }) : label,
1028
+ placeholder: selectedOptions.length == 0 ? "B\xFAsqueda" : "",
1029
+ InputProps: __spreadProps(__spreadValues({}, params.InputProps), {
1030
+ endAdornment: /* @__PURE__ */ import_react6.default.createElement(import_react6.default.Fragment, null, deleteType == "icon" && (state.hiddenValue.toString() != "-1" && state.hiddenValue.toString() != "") ? /* @__PURE__ */ import_react6.default.createElement(import_material5.IconButton, { size: "small", onClick: cleanOptions, sx: { marginLeft: "auto", textAlign: "right", padding: "0px" } }, /* @__PURE__ */ import_react6.default.createElement(import_icons_material4.Clear, { fontSize: "small" })) : "", /* @__PURE__ */ import_react6.default.createElement(import_material5.InputAdornment, { style: { zIndex: 1, position: "relative" }, position: "end" }, /* @__PURE__ */ import_react6.default.createElement(import_icons_material4.Search, { fontSize: "small", color: "action", style: { cursor: "pointer" } })))
1031
+ })
1032
+ })
1033
+ )),
1034
+ slotProps: {
1035
+ listbox: {
1036
+ component: import_react6.default.forwardRef(function ListboxComponent(props, ref) {
1037
+ return /* @__PURE__ */ import_react6.default.createElement(import_react6.default.Fragment, null, /* @__PURE__ */ import_react6.default.createElement(
1038
+ import_material5.Box,
1039
+ __spreadProps(__spreadValues({
1040
+ ref
1041
+ }, props), {
1042
+ sx: __spreadValues({
1043
+ position: "relative",
1044
+ paddingBottom: "56px",
1045
+ backgroundColor: "white"
1046
+ }, props.sx)
1047
+ }),
1048
+ checkMassive && typeFormat == "multiselect" ? /* @__PURE__ */ import_react6.default.createElement(import_react6.default.Fragment, null, /* @__PURE__ */ import_react6.default.createElement(import_material5.FormControlLabel, { control: /* @__PURE__ */ import_react6.default.createElement(import_material5.Checkbox, { checked: allSelected, indeterminate: selectedOptions.length > 0 && selectedOptions.length < data.length, onChange: handleCheckAll, color: "primary" }), label: "Todos los items", sx: { marginLeft: "0px !important", marginRight: "0px !important", padding: "7px 16px" } }), /* @__PURE__ */ import_react6.default.createElement(import_material5.Divider, null)) : "",
1049
+ props.children,
1050
+ deleteType == "button" || fnAplicar ? /* @__PURE__ */ import_react6.default.createElement(
1051
+ import_Grid22.default,
1052
+ {
1053
+ container: true,
1054
+ sx: {
1055
+ position: "sticky",
1056
+ bottom: -8,
1057
+ left: 0,
1058
+ width: "100%",
1059
+ backgroundColor: "grey.50",
1060
+ padding: "8px 16px",
1061
+ textAlign: "left",
1062
+ justifyContent: "space-between"
1063
+ }
1064
+ },
1065
+ deleteType == "button" ? /* @__PURE__ */ import_react6.default.createElement(
1066
+ import_material5.Button,
1067
+ {
1068
+ variant: "text",
1069
+ color: "primary",
1070
+ size: "small",
1071
+ onClick: (event2) => {
1072
+ event2.stopPropagation();
1073
+ cleanOptions(event2);
1074
+ }
1075
+ },
1076
+ "Limpiar"
1077
+ ) : "",
1078
+ fnAplicar && /* @__PURE__ */ import_react6.default.createElement(
1079
+ import_material5.Button,
1080
+ {
1081
+ variant: "contained",
1082
+ color: "primary",
1083
+ size: "small",
1084
+ onClick: fnAplicar
1085
+ },
1086
+ "Aplicar"
1087
+ )
1088
+ ) : ""
1089
+ ));
1090
+ })
1091
+ }
1092
+ }
1093
+ }
1094
+ ));
1095
+ }
1096
+
1097
+ // src/Components/SCDateRange.tsx
1098
+ var import_react7 = __toESM(require("react"), 1);
1099
+ var import_material6 = require("@mui/material");
1100
+ var import_LocalizationProvider = require("@mui/x-date-pickers/LocalizationProvider");
1101
+ var import_AdapterDayjs = require("@mui/x-date-pickers/AdapterDayjs");
1102
+ var import_DateRangePicker = require("@mui/x-date-pickers-pro/DateRangePicker");
1103
+ var import_MultiInputDateRangeField = require("@mui/x-date-pickers-pro/MultiInputDateRangeField");
1104
+ var import_dayjs = __toESM(require("dayjs"), 1);
1105
+ var import_es = require("dayjs/locale/es");
1106
+ var import_x_license_pro = require("@mui/x-license-pro");
1107
+ var import_Event = __toESM(require("@mui/icons-material/Event"), 1);
1108
+ var SCDateRange = ({
1109
+ labelDateInitial = "Fecha inicial",
1110
+ labelDateFinal = "Fecha final",
1111
+ required = false,
1112
+ disabled = false,
1113
+ background = "transparent",
1114
+ state,
1115
+ setState
1116
+ }) => {
1117
+ import_x_license_pro.LicenseInfo.setLicenseKey(
1118
+ "77d49a57fbc5f4af35ddb05c5f1742e0Tz0xMTI3MjgsRT0xNzc4MzcxMTk5MDAwLFM9cHJvLExNPXN1YnNjcmlwdGlvbixQVj1RMy0yMDI0LEtWPTI="
1119
+ );
1120
+ const isStartEmpty = required && !state[0];
1121
+ const isEndEmpty = required && !state[1];
1122
+ const hasError = isStartEmpty || isEndEmpty;
1123
+ const handleDateChange = (newValue) => {
1124
+ const convertedValue = [
1125
+ newValue[0] ? (0, import_dayjs.default)(newValue[0]) : null,
1126
+ newValue[1] ? (0, import_dayjs.default)(newValue[1]) : null
1127
+ ];
1128
+ setState(convertedValue);
1129
+ };
1130
+ return /* @__PURE__ */ import_react7.default.createElement(import_LocalizationProvider.LocalizationProvider, { dateAdapter: import_AdapterDayjs.AdapterDayjs, adapterLocale: "es" }, /* @__PURE__ */ import_react7.default.createElement(import_material6.Box, { sx: { width: "100%" } }, /* @__PURE__ */ import_react7.default.createElement(
1131
+ import_DateRangePicker.DateRangePicker,
1132
+ {
1133
+ value: state,
1134
+ onChange: handleDateChange,
1135
+ disabled,
1136
+ slots: {
1137
+ field: import_MultiInputDateRangeField.MultiInputDateRangeField
1138
+ },
1139
+ slotProps: {
1140
+ field: {
1141
+ slotProps: {
1142
+ textField: ({ position }) => ({
1143
+ label: position === "start" ? labelDateInitial : labelDateFinal,
1144
+ size: "small",
1145
+ variant: "outlined",
1146
+ required,
1147
+ error: position === "start" ? isStartEmpty : isEndEmpty,
1148
+ InputProps: {
1149
+ endAdornment: /* @__PURE__ */ import_react7.default.createElement(import_material6.InputAdornment, { position: "end" }, /* @__PURE__ */ import_react7.default.createElement(
1150
+ import_Event.default,
1151
+ {
1152
+ color: hasError ? "error" : "action",
1153
+ fontSize: "small"
1154
+ }
1155
+ ))
1156
+ },
1157
+ sx: {
1158
+ mr: position === "start" ? 1 : 0,
1159
+ "& .MuiOutlinedInput-root": {
1160
+ backgroundColor: background === "transparent" ? "transparent" : background
1161
+ },
1162
+ "& .MuiInputLabel-asterisk": {
1163
+ color: "error.main"
1164
+ },
1165
+ background: background != null ? background : "transparent"
1166
+ }
1167
+ })
1168
+ }
1169
+ }
1170
+ },
1171
+ sx: {
1172
+ display: "flex",
1173
+ gap: 1,
1174
+ width: "100%"
1175
+ }
1176
+ }
1177
+ )));
1178
+ };
1179
+
1180
+ // src/Components/Drawer/Helpers/Utils.tsx
1181
+ var Muicon4 = __toESM(require("@mui/icons-material"), 1);
1182
+ var getIcon2 = (iconName) => {
1183
+ if (iconName && iconName in Muicon4) {
1184
+ return Muicon4[iconName];
1185
+ }
1186
+ return null;
1187
+ };
1188
+
1189
+ // src/Components/Drawer/Helpers/validateInput.tsx
1190
+ var validateInputs = (arrayElements, onError, onSuccess) => {
1191
+ var _a;
1192
+ let requiredValues = 0;
1193
+ let filledValues = 0;
1194
+ for (let i = 0; i < arrayElements.length; i++) {
1195
+ if (arrayElements[i].component === void 0) {
1196
+ if (arrayElements[i].required) {
1197
+ requiredValues++;
1198
+ }
1199
+ if (arrayElements[i].required && ((_a = arrayElements[i].state) == null ? void 0 : _a.trim()) !== "") {
1200
+ filledValues++;
1201
+ }
1202
+ }
1203
+ }
1204
+ if (requiredValues === filledValues) {
1205
+ onSuccess();
1206
+ } else {
1207
+ onError({
1208
+ type: "error",
1209
+ title: "Algunos campos son requeridos",
1210
+ time: 10
1211
+ });
1212
+ }
1213
+ };
1214
+
1215
+ // src/Components/Drawer/SCDrawer.tsx
1216
+ function SCDrawer({
1217
+ //informativas
1218
+ title,
1219
+ arrayElements = [],
1220
+ actions,
1221
+ buttonDrawer,
1222
+ //Apariencia
1223
+ colorTitle,
1224
+ anchor = "left",
1225
+ width,
1226
+ //Funcionales
1227
+ open
1228
+ }) {
1229
+ var _a, _b;
1230
+ const [drawerOpen, setDrawerOpen] = import_react8.default.useState(open);
1231
+ const [toast, setToast] = import_react8.default.useState(null);
1232
+ const handleDrawerClose = () => {
1233
+ setDrawerOpen(false);
1234
+ };
1235
+ const toggleDrawer = (newOpen) => () => {
1236
+ setDrawerOpen(newOpen);
1237
+ };
1238
+ const ButtonIcon = getIcon2(buttonDrawer == null ? void 0 : buttonDrawer.icon);
1239
+ const setToastWithDelay = (toastContent) => {
1240
+ setToast(null);
1241
+ setTimeout(() => {
1242
+ setToast(toastContent);
1243
+ }, 10);
1244
+ };
1245
+ const inputValidation = () => validateInputs(arrayElements, setToastWithDelay, handleDrawerClose);
1246
+ const clean = () => {
1247
+ arrayElements.forEach((element, index) => {
1248
+ var _a2, _b2, _c, _d, _e, _f, _g, _h;
1249
+ if (element.setState || import_react8.default.isValidElement(element == null ? void 0 : element.component) && ((_a2 = element.component.props) == null ? void 0 : _a2.setState)) {
1250
+ if (element.type === "textField" || import_react8.default.isValidElement(element == null ? void 0 : element.component) && element.component.type && element.component.type.name === "SCtextField" || (element.type === "textArea" || import_react8.default.isValidElement(element == null ? void 0 : element.component) && element.component.type && element.component.type.name === "SCtextArea")) {
1251
+ element.setState != void 0 ? element.setState("") : null;
1252
+ import_react8.default.isValidElement(element == null ? void 0 : element.component) && ((_b2 = element.component.props) == null ? void 0 : _b2.setState) && ((_d = (_c = element == null ? void 0 : element.component) == null ? void 0 : _c.props) == null ? void 0 : _d.setState(""));
1253
+ } else if (element.type === "dateRange" || import_react8.default.isValidElement(element == null ? void 0 : element.component) && element.component.type && element.component.type.name === "SCDateRange") {
1254
+ element.setState != void 0 ? element.setState([null, null]) : null;
1255
+ import_react8.default.isValidElement(element == null ? void 0 : element.component) && typeof ((_e = element.component.props) == null ? void 0 : _e.setState) === "function" && element.component.props.setState([null, null]);
1256
+ } else {
1257
+ if (element.type == "autocomplete" || import_react8.default.isValidElement(element == null ? void 0 : element.component) && element.component.type && element.component.type.name === "SCAutocomplete" || (element.typeFormat == "multiselect" || import_react8.default.isValidElement(element == null ? void 0 : element.component) && element.component.props && ((_f = element == null ? void 0 : element.component) == null ? void 0 : _f.props).typeFormat == "multiselect")) {
1258
+ element.setState != void 0 ? element.setState({ hiddenValue: [], textValue: [] }) : null;
1259
+ import_react8.default.isValidElement(element == null ? void 0 : element.component) && typeof ((_g = element.component.props) == null ? void 0 : _g.setState) === "function" && element.component.props.setState({ hiddenValue: [], textValue: [] });
1260
+ } else {
1261
+ element.setState != void 0 ? element.setState({ hiddenValue: "-1", textValue: "" }) : null;
1262
+ import_react8.default.isValidElement(element == null ? void 0 : element.component) && typeof ((_h = element.component.props) == null ? void 0 : _h.setState) === "function" && element.component.props.setState({ hiddenValue: "-1", textValue: "" });
1263
+ }
1264
+ }
1265
+ }
1266
+ });
1267
+ };
1268
+ const actionsA = actions == false ? false : actions != void 0 ? actions : [{ text: "Aplicar filtros", fn: inputValidation }, { text: "Limpiar filtros", fn: clean }];
1269
+ return /* @__PURE__ */ import_react8.default.createElement(import_react8.default.Fragment, null, toast && /* @__PURE__ */ import_react8.default.createElement(SCToastNotification, __spreadValues({}, toast)), (buttonDrawer == null ? void 0 : buttonDrawer.type) == "chip" ? /* @__PURE__ */ import_react8.default.createElement(
1270
+ import_material7.Chip,
1271
+ __spreadProps(__spreadValues({
1272
+ onClick: toggleDrawer(true),
1273
+ color: buttonDrawer == null ? void 0 : buttonDrawer.color,
1274
+ variant: (buttonDrawer == null ? void 0 : buttonDrawer.variant) == "contained" ? "filled" : "outlined",
1275
+ label: (_a = buttonDrawer == null ? void 0 : buttonDrawer.text) != null ? _a : "",
1276
+ icon: (buttonDrawer == null ? void 0 : buttonDrawer.iconPosition) === "left" && ButtonIcon ? /* @__PURE__ */ import_react8.default.createElement(ButtonIcon, { fontSize: "small" }) : void 0,
1277
+ deleteIcon: (buttonDrawer == null ? void 0 : buttonDrawer.iconPosition) === "right" && ButtonIcon ? /* @__PURE__ */ import_react8.default.createElement(ButtonIcon, { fontSize: "small" }) : void 0
1278
+ }, (buttonDrawer == null ? void 0 : buttonDrawer.iconPosition) === "right" && ButtonIcon ? { onDelete: () => {
1279
+ } } : {}), {
1280
+ sx: {
1281
+ "& .MuiChip-icon": {
1282
+ color: "inherit"
1283
+ },
1284
+ textTransform: "capitalize"
1285
+ }
1286
+ })
1287
+ ) : /* @__PURE__ */ import_react8.default.createElement(
1288
+ import_material7.Button,
1289
+ {
1290
+ "data-testid": "test-buttonDrawer",
1291
+ sx: { textTransform: "capitalize" },
1292
+ color: buttonDrawer == null ? void 0 : buttonDrawer.color,
1293
+ onClick: toggleDrawer(true),
1294
+ size: "small",
1295
+ variant: (buttonDrawer == null ? void 0 : buttonDrawer.variant) != void 0 ? buttonDrawer == null ? void 0 : buttonDrawer.variant : "text",
1296
+ startIcon: ((buttonDrawer == null ? void 0 : buttonDrawer.iconPosition) === "left" || !(buttonDrawer == null ? void 0 : buttonDrawer.iconPosition)) && ButtonIcon ? /* @__PURE__ */ import_react8.default.createElement(ButtonIcon, { fontSize: "small" }) : null,
1297
+ endIcon: (buttonDrawer == null ? void 0 : buttonDrawer.iconPosition) === "right" && ButtonIcon ? /* @__PURE__ */ import_react8.default.createElement(ButtonIcon, { fontSize: "small" }) : null
1298
+ },
1299
+ (_b = buttonDrawer == null ? void 0 : buttonDrawer.text) != null ? _b : ""
1300
+ ), /* @__PURE__ */ import_react8.default.createElement(
1301
+ import_material7.Drawer,
1302
+ {
1303
+ open: drawerOpen,
1304
+ onClose: toggleDrawer(false),
1305
+ anchor: anchor != null ? anchor : "left",
1306
+ sx: {
1307
+ "& .MuiDrawer-paper": {
1308
+ width: width != null ? width : "450px",
1309
+ boxSizing: "border-box",
1310
+ borderRadius: anchor !== "right" ? "0px 4px 4px 0px" : "4px 0px 0px 4px"
1311
+ }
1312
+ }
1313
+ },
1314
+ /* @__PURE__ */ import_react8.default.createElement(import_material7.Stack, { flexDirection: "column", height: "100%" }, /* @__PURE__ */ import_react8.default.createElement(import_Grid23.default, { container: true, sx: { backgroundColor: "primary.50", alignItems: "center", height: "42px", textAlign: "left", padding: "8px 12px", justifyContent: "space-between", alignContent: "center" } }, /* @__PURE__ */ import_react8.default.createElement(import_material7.Typography, { variant: "h6", color: colorTitle || "text.primary" }, title != null ? title : "Personaliza tu b\xFAsqueda"), /* @__PURE__ */ import_react8.default.createElement(import_material7.IconButton, { onClick: handleDrawerClose }, /* @__PURE__ */ import_react8.default.createElement(import_Close.default, { "data-testid": "test-button-close", sx: { color: "text.primary" } }))), /* @__PURE__ */ import_react8.default.createElement(import_material7.Stack, { alignItems: "flex-start", height: "100%", gap: "16px", flex: 1, overflow: "auto", padding: "16px" }, arrayElements == null ? void 0 : arrayElements.map((arrayElement, index) => {
1315
+ var _a2, _b2, _c, _d, _e, _f;
1316
+ return /* @__PURE__ */ import_react8.default.createElement(
1317
+ import_material7.Box,
1318
+ {
1319
+ key: `Stack_${(_a2 = arrayElement.type) != null ? _a2 : ""} ${(_b2 = arrayElement.label) != null ? _b2 : ""}${index}`,
1320
+ sx: { width: "100%" }
1321
+ },
1322
+ arrayElement.component ? /* @__PURE__ */ import_react8.default.createElement(import_material7.Stack, { direction: "row", alignItems: "left", gap: 1 }, arrayElement.component) : arrayElement.type === "textField" ? /* @__PURE__ */ import_react8.default.createElement(
1323
+ SCTextField,
1324
+ {
1325
+ title: arrayElement.title,
1326
+ iconTitle: arrayElement.iconTitle,
1327
+ infoTitle: arrayElement.infoTitle,
1328
+ label: arrayElement.label,
1329
+ placeholder: arrayElement.placeholder,
1330
+ infoElement: arrayElement.infoElement,
1331
+ iconInputStart: arrayElement.iconInputStart,
1332
+ iconInputEnd: arrayElement.iconInputEnd,
1333
+ maxLength: arrayElement.maxLength,
1334
+ variant: arrayElement.variant,
1335
+ format: arrayElement.format,
1336
+ disabled: arrayElement.disabled,
1337
+ required: arrayElement.required,
1338
+ size: arrayElement.size,
1339
+ width: arrayElement.width,
1340
+ color: arrayElement.color,
1341
+ background: arrayElement.background,
1342
+ setState: arrayElement.setState,
1343
+ state: arrayElement.state || "",
1344
+ onChange: arrayElement.onChange,
1345
+ onBlur: arrayElement.onBlur,
1346
+ onKeyDown: arrayElement.onKeyDown
1347
+ }
1348
+ ) : arrayElement.type === "textArea" ? /* @__PURE__ */ import_react8.default.createElement(
1349
+ SCTextArea,
1350
+ {
1351
+ title: arrayElement.title,
1352
+ iconTitle: arrayElement.iconTitle,
1353
+ infoTitle: arrayElement.infoTitle,
1354
+ label: arrayElement.label,
1355
+ placeholder: arrayElement.placeholder,
1356
+ maxLength: arrayElement.maxLength,
1357
+ variant: arrayElement.variant,
1358
+ disabled: arrayElement.disabled,
1359
+ required: arrayElement.required,
1360
+ width: arrayElement.width,
1361
+ rows: arrayElement.rows,
1362
+ background: arrayElement.background,
1363
+ setState: arrayElement.setState,
1364
+ state: arrayElement.state || "",
1365
+ onBlur: arrayElement.onBlur
1366
+ }
1367
+ ) : arrayElement.type === "autocomplete" ? /* @__PURE__ */ import_react8.default.createElement(
1368
+ SCAutocomplete,
1369
+ {
1370
+ label: arrayElement.label,
1371
+ data: (_c = arrayElement.data) != null ? _c : [],
1372
+ columnGroup: arrayElement.columnGroup,
1373
+ getItemValue: (_d = arrayElement.getItemValue) != null ? _d : () => ({ text: "", value: "" }),
1374
+ typeFormat: arrayElement.typeFormat,
1375
+ checkMassive: arrayElement.checkMassive,
1376
+ deleteType: arrayElement.deleteType,
1377
+ required: arrayElement.required,
1378
+ disabled: arrayElement.disabled,
1379
+ background: arrayElement.background,
1380
+ fnAplicar: arrayElement.fnAplicar,
1381
+ setState: arrayElement.setState,
1382
+ state: arrayElement.state || "",
1383
+ inputChange: arrayElement.inputChange
1384
+ }
1385
+ ) : arrayElement.type === "select" ? /* @__PURE__ */ import_react8.default.createElement(
1386
+ SCSelect,
1387
+ {
1388
+ label: arrayElement.label,
1389
+ data: (_e = arrayElement.data) != null ? _e : [],
1390
+ getItemValue: (_f = arrayElement.getItemValue) != null ? _f : () => ({ text: "", value: "" }),
1391
+ width: arrayElement.width,
1392
+ size: arrayElement.size,
1393
+ variant: arrayElement.variant,
1394
+ deleteType: arrayElement.deleteType,
1395
+ required: arrayElement.required,
1396
+ disabled: arrayElement.disabled,
1397
+ background: arrayElement.background,
1398
+ fnAplicar: arrayElement.fnAplicar,
1399
+ setState: arrayElement.setState,
1400
+ state: arrayElement.state || ""
1401
+ }
1402
+ ) : arrayElement.type === "dateRange" ? /* @__PURE__ */ import_react8.default.createElement(
1403
+ SCDateRange,
1404
+ {
1405
+ labelDateInitial: arrayElement.labelDateInitial,
1406
+ labelDateFinal: arrayElement.labelDateFinal,
1407
+ required: arrayElement.required,
1408
+ disabled: arrayElement.disabled,
1409
+ background: arrayElement.background,
1410
+ state: arrayElement.state || [],
1411
+ setState: arrayElement.setState
1412
+ }
1413
+ ) : null
1414
+ );
1415
+ })), actionsA != void 0 && actionsA != false ? Array.isArray(actionsA) && (actionsA == null ? void 0 : actionsA.length) > 0 ? /* @__PURE__ */ import_react8.default.createElement(
1416
+ import_Grid23.default,
1417
+ {
1418
+ sx: { borderTop: 1, borderColor: "#1018403B" },
1419
+ container: true,
1420
+ gap: 2,
1421
+ padding: "8px 12px",
1422
+ height: "42px",
1423
+ alignItems: "center",
1424
+ justifyContent: actionsA.length > 1 ? "space-between" : !anchor && anchor != "right" ? "flex-end" : "flex-start",
1425
+ flexDirection: anchor != "right" ? "row-reverse" : "row"
1426
+ },
1427
+ actionsA.map((btn, index) => /* @__PURE__ */ import_react8.default.createElement(
1428
+ import_material7.Button,
1429
+ {
1430
+ key: index,
1431
+ variant: index === 0 || actionsA.length < 2 ? "contained" : "text",
1432
+ color: "primary",
1433
+ onClick: btn.fn,
1434
+ disabled: btn.disabled || false,
1435
+ size: "small"
1436
+ },
1437
+ btn.text
1438
+ ))
1439
+ ) : "" : "")
1440
+ ));
1441
+ }
1442
+
1443
+ // src/Components/FooterAction/FooterAction.tsx
1444
+ var import_react9 = __toESM(require("react"), 1);
1445
+ var import_material8 = require("@mui/material");
1446
+ var FooterAction = ({
1447
+ leftContent,
1448
+ rightContent,
1449
+ label,
1450
+ variant
1451
+ }) => {
1452
+ return /* @__PURE__ */ import_react9.default.createElement(
1453
+ import_material8.AppBar,
1454
+ {
1455
+ color: "inherit",
1456
+ sx: { position: variant == "float" ? "relative" : "fixed", left: 0, right: "auto", width: "100%", top: "auto", bottom: 0 }
1457
+ },
1458
+ /* @__PURE__ */ import_react9.default.createElement(
1459
+ import_material8.Toolbar,
1460
+ {
1461
+ id: "footer-toolbar",
1462
+ sx: { gap: 1.5, minHeight: "50px !important" }
1463
+ },
1464
+ leftContent,
1465
+ /* @__PURE__ */ import_react9.default.createElement(import_material8.Box, { flexGrow: 1 }),
1466
+ label && /* @__PURE__ */ import_react9.default.createElement(import_material8.Typography, { variant: "body2", color: "text.secondary" }, label),
1467
+ rightContent
1468
+ )
1469
+ );
1470
+ };
1471
+
1472
+ // src/Components/Modal/Helpers/Data.tsx
1473
+ var import_react10 = __toESM(require("react"), 1);
1474
+ var import_icons_material5 = require("@mui/icons-material");
1475
+ var modalStateConfig = {
1476
+ info: {
1477
+ color: "info",
1478
+ defaultDescription: "Se [sincronizar\xE1n] los datos trabajados en modo offline y se [subir\xE1n] a los servidores.",
1479
+ icon: /* @__PURE__ */ import_react10.default.createElement(import_icons_material5.Info, { color: "info", fontSize: "medium" })
1480
+ },
1481
+ delete: {
1482
+ color: "delete",
1483
+ defaultDescription: "[Elemento espec\xEDfico] [dejar\xE1 de existir en todos los lugares donde est\xE9 en uso]. Esta acci\xF3n es irreversible.",
1484
+ icon: /* @__PURE__ */ import_react10.default.createElement(import_icons_material5.Info, { color: "error", fontSize: "medium" })
1485
+ },
1486
+ warning: {
1487
+ color: "warning",
1488
+ defaultDescription: "Se descartar\xE1 la [creaci\xF3n] y los cambios se perder\xE1n.",
1489
+ icon: /* @__PURE__ */ import_react10.default.createElement(import_icons_material5.Warning, { color: "warning", fontSize: "medium" })
1490
+ }
1491
+ };
1492
+
1493
+ // src/Components/Modal/Helpers/Utils.tsx
1494
+ var MuiIcons2 = __toESM(require("@mui/icons-material"), 1);
1495
+ var import_icons_material6 = require("@mui/icons-material");
1496
+ var getIconComponent2 = (iconName) => {
1497
+ return iconName && MuiIcons2[iconName] ? MuiIcons2[iconName] : import_icons_material6.FilterListOutlined;
1498
+ };
1499
+ var getModalColor = (state) => {
1500
+ var _a;
1501
+ const colors = {
1502
+ info: "info.100",
1503
+ delete: "error.100",
1504
+ warning: "warning.100"
1505
+ };
1506
+ return (_a = colors[state]) != null ? _a : "warning.100";
1507
+ };
1508
+ var getButtonColor = (state) => {
1509
+ var _a;
1510
+ const colorMap = {
1511
+ info: "info",
1512
+ delete: "error",
1513
+ warning: "warning"
1514
+ };
1515
+ return (_a = colorMap[state]) != null ? _a : "info";
1516
+ };
1517
+
1518
+ // src/Components/Modal/SCModal.tsx
1519
+ var import_react11 = __toESM(require("react"), 1);
1520
+ var import_material9 = require("@mui/material");
1521
+ var import_icons_material7 = require("@mui/icons-material");
1522
+
1523
+ // src/generales/capitalize.tsx
1524
+ function capitalize(text) {
1525
+ return text.charAt(0).toUpperCase() + text.slice(1);
1526
+ }
1527
+
1528
+ // src/Components/Modal/SCModal.tsx
1529
+ var SCModal = ({
1530
+ buttonModal,
1531
+ state = "info",
1532
+ open,
1533
+ title,
1534
+ description,
1535
+ action
1536
+ }) => {
1537
+ var _a, _b, _c, _d, _e;
1538
+ const [openModal, setOpenModal] = (0, import_react11.useState)(open != null ? open : false);
1539
+ (0, import_react11.useEffect)(() => {
1540
+ if (open !== void 0) {
1541
+ setOpenModal(open);
1542
+ }
1543
+ }, [open]);
1544
+ const Icon = (0, import_react11.useMemo)(() => getIconComponent2(buttonModal == null ? void 0 : buttonModal.icon), [buttonModal == null ? void 0 : buttonModal.icon]);
1545
+ const handleClose = (0, import_react11.useCallback)(() => setOpenModal(false), []);
1546
+ const toggleModal = (newOpen) => () => setOpenModal(newOpen);
1547
+ const prevAction = (0, import_react11.useMemo)(
1548
+ () => action != null ? action : [{ text: "Cancelar", fn: handleClose }, { text: "Consultar", fn: () => {
1549
+ } }],
1550
+ [action, handleClose]
1551
+ );
1552
+ const { icon, defaultDescription } = modalStateConfig[state];
1553
+ return /* @__PURE__ */ import_react11.default.createElement(import_react11.default.Fragment, null, /* @__PURE__ */ import_react11.default.createElement(
1554
+ import_material9.Button,
1555
+ {
1556
+ "data-testid": "test-buttonModal",
1557
+ color: (_a = buttonModal == null ? void 0 : buttonModal.color) != null ? _a : "primary",
1558
+ onClick: toggleModal(true),
1559
+ variant: (_b = buttonModal == null ? void 0 : buttonModal.variant) != null ? _b : "text",
1560
+ size: (_c = buttonModal == null ? void 0 : buttonModal.size) != null ? _c : "small",
1561
+ startIcon: (buttonModal == null ? void 0 : buttonModal.iconPosition) === "left" && /* @__PURE__ */ import_react11.default.createElement(Icon, null),
1562
+ endIcon: (buttonModal == null ? void 0 : buttonModal.iconPosition) === "right" && /* @__PURE__ */ import_react11.default.createElement(Icon, null)
1563
+ },
1564
+ capitalize((_d = buttonModal == null ? void 0 : buttonModal.text) != null ? _d : "filtrar")
1565
+ ), /* @__PURE__ */ import_react11.default.createElement(import_material9.Modal, { open: openModal, onClose: toggleModal(false), sx: { boxShadow: 8 } }, /* @__PURE__ */ import_react11.default.createElement(
1566
+ import_material9.Box,
1567
+ {
1568
+ sx: {
1569
+ position: "absolute",
1570
+ top: "50%",
1571
+ left: "50%",
1572
+ transform: "translate(-50%, -50%)",
1573
+ width: 400,
1574
+ bgcolor: "background.paper",
1575
+ borderRadius: 1,
1576
+ boxShadow: 24
1577
+ }
1578
+ },
1579
+ /* @__PURE__ */ import_react11.default.createElement(import_material9.Stack, { direction: "row", justifyContent: "space-between", alignItems: "center" }, /* @__PURE__ */ import_react11.default.createElement(import_material9.Stack, { direction: "row", alignItems: "center", p: 1, gap: 1.5 }, /* @__PURE__ */ import_react11.default.createElement(import_material9.Box, { display: "flex", justifyContent: "center", alignItems: "center", borderRadius: "50%", height: 36, width: 36, bgcolor: getModalColor(state) }, icon), /* @__PURE__ */ import_react11.default.createElement(import_material9.Typography, { variant: "h6", color: "text.primary" }, title)), /* @__PURE__ */ import_react11.default.createElement(import_material9.IconButton, { onClick: toggleModal(false), "data-testid": "test-buttonClose" }, /* @__PURE__ */ import_react11.default.createElement(import_icons_material7.Close, { color: "action" }))),
1580
+ /* @__PURE__ */ import_react11.default.createElement(import_material9.Stack, { py: 1, px: 3, gap: 1.5 }, /* @__PURE__ */ import_react11.default.createElement(import_material9.Typography, { variant: "body1" }, description || defaultDescription)),
1581
+ action && /* @__PURE__ */ import_react11.default.createElement(
1582
+ import_material9.Stack,
1583
+ {
1584
+ id: "Action",
1585
+ direction: "row",
1586
+ gap: 1,
1587
+ p: 1,
1588
+ justifyContent: "end",
1589
+ bgcolor: "grey.50",
1590
+ sx: { borderRadius: 1 }
1591
+ },
1592
+ /* @__PURE__ */ import_react11.default.createElement(
1593
+ import_material9.Button,
1594
+ {
1595
+ color: "inherit",
1596
+ variant: "text",
1597
+ onClick: handleClose,
1598
+ size: "small"
1599
+ },
1600
+ capitalize("cancelar")
1601
+ ),
1602
+ /* @__PURE__ */ import_react11.default.createElement(
1603
+ import_material9.Button,
1604
+ {
1605
+ "data-testid": "test-aceptar",
1606
+ color: getButtonColor(state),
1607
+ variant: "contained",
1608
+ onClick: (_e = action[0]) == null ? void 0 : _e.fn,
1609
+ disabled: false,
1610
+ size: "small"
1611
+ },
1612
+ capitalize(action[0].text)
1613
+ )
1614
+ )
1615
+ )));
1616
+ };
1617
+
1618
+ // src/Components/MultiSelect/MultiSelect.tsx
1619
+ var import_react14 = __toESM(require("react"), 1);
1620
+ var import_material10 = require("@mui/material");
1621
+ var import_icons_material9 = require("@mui/icons-material");
1622
+
1623
+ // src/Components/MultiSelect/helpers/useHandlers.tsx
1624
+ var import_react12 = require("react");
1625
+ function useMultiSelectHandlers() {
1626
+ const [anchorEl, setAnchorEl] = (0, import_react12.useState)(null);
1627
+ const [open, setOpen] = (0, import_react12.useState)(false);
1628
+ const [selectedItems, setSelectedItems] = (0, import_react12.useState)([]);
1629
+ const [filterValue, setFilterValue] = (0, import_react12.useState)("");
1630
+ const handleOpen = (0, import_react12.useCallback)((e) => {
1631
+ setAnchorEl(e.currentTarget);
1632
+ setOpen(true);
1633
+ }, []);
1634
+ const handleClose = (0, import_react12.useCallback)(() => {
1635
+ setAnchorEl(null);
1636
+ setOpen(false);
1637
+ }, []);
1638
+ const handleFilterChange = (0, import_react12.useCallback)(
1639
+ (e) => {
1640
+ setFilterValue(e.target.value);
1641
+ },
1642
+ []
1643
+ );
1644
+ const handleCheckboxToggle = (0, import_react12.useCallback)((item) => {
1645
+ setSelectedItems(
1646
+ (prev) => prev.includes(item) ? prev.filter((i) => i !== item) : [...prev, item]
1647
+ );
1648
+ }, []);
1649
+ return {
1650
+ anchorEl,
1651
+ open,
1652
+ selectedItems,
1653
+ filterValue,
1654
+ setSelectedItems,
1655
+ handleOpen,
1656
+ handleClose,
1657
+ handleFilterChange,
1658
+ handleCheckboxToggle,
1659
+ setOpen
1660
+ };
1661
+ }
1662
+
1663
+ // src/Components/MultiSelect/helpers/Utils.tsx
1664
+ var MuiIcons3 = __toESM(require("@mui/icons-material"), 1);
1665
+ var import_icons_material8 = require("@mui/icons-material");
1666
+ function getIconMultiSelect(name) {
1667
+ return name in MuiIcons3 ? MuiIcons3[name] : import_icons_material8.FilterListOutlined;
1668
+ }
1669
+
1670
+ // src/Components/MultiSelect/helpers/useFilteredItems.tsx
1671
+ var import_react13 = require("react");
1672
+ function useFilteredItems(items, filterValue, getItemLabel, selectedItems) {
1673
+ const filteredItems = (0, import_react13.useMemo)(
1674
+ () => items.filter(
1675
+ (item) => getItemLabel(item).toLowerCase().includes(filterValue.toLowerCase())
1676
+ ),
1677
+ [items, filterValue, getItemLabel]
1678
+ );
1679
+ const sortedItems = (0, import_react13.useMemo)(() => {
1680
+ return [
1681
+ ...filteredItems.filter((item) => selectedItems.includes(item)),
1682
+ ...filteredItems.filter((item) => !selectedItems.includes(item))
1683
+ ];
1684
+ }, [filteredItems, selectedItems]);
1685
+ return { filteredItems, sortedItems };
1686
+ }
1687
+
1688
+ // src/Components/MultiSelect/MultiSelect.tsx
1689
+ function MultiSelect({
1690
+ textButton,
1691
+ button,
1692
+ items,
1693
+ topPanel,
1694
+ actions,
1695
+ dense = false,
1696
+ open,
1697
+ selectAll = false,
1698
+ getItemLabel
1699
+ }) {
1700
+ var _a, _b;
1701
+ const {
1702
+ anchorEl,
1703
+ open: openMultiselect,
1704
+ selectedItems,
1705
+ filterValue,
1706
+ setSelectedItems,
1707
+ handleOpen,
1708
+ handleClose,
1709
+ handleFilterChange,
1710
+ handleCheckboxToggle,
1711
+ setOpen
1712
+ } = useMultiSelectHandlers();
1713
+ (0, import_react14.useEffect)(() => {
1714
+ if (open !== void 0) {
1715
+ setOpen(open);
1716
+ }
1717
+ }, [open, setOpen]);
1718
+ (0, import_react14.useEffect)(() => {
1719
+ setSelectedItems([]);
1720
+ }, [items, setSelectedItems]);
1721
+ const { filteredItems, sortedItems } = useFilteredItems(items, filterValue, getItemLabel, selectedItems);
1722
+ const Icon = (0, import_react14.useMemo)(() => {
1723
+ var _a2;
1724
+ return getIconMultiSelect((_a2 = button == null ? void 0 : button.icon) != null ? _a2 : "FilterListOutlined");
1725
+ }, [button == null ? void 0 : button.icon]);
1726
+ const handleSelectAll = () => {
1727
+ const allSelected2 = selectedItems.length === filteredItems.length;
1728
+ setSelectedItems(allSelected2 ? [] : filteredItems);
1729
+ };
1730
+ const allSelected = filteredItems.length > 0 && selectedItems.length === filteredItems.length;
1731
+ const resolvedActions = actions != null ? actions : [
1732
+ { text: "Limpiar", fn: handleClose },
1733
+ { text: "Aplicar", fn: () => {
1734
+ } }
1735
+ ];
1736
+ return /* @__PURE__ */ import_react14.default.createElement(import_react14.default.Fragment, null, /* @__PURE__ */ import_react14.default.createElement(
1737
+ import_material10.Button,
1738
+ {
1739
+ "test-id": "multiselect-button",
1740
+ color: (_a = button == null ? void 0 : button.color) != null ? _a : "primary",
1741
+ onClick: handleOpen,
1742
+ variant: (_b = button == null ? void 0 : button.variant) != null ? _b : "text",
1743
+ size: "small",
1744
+ startIcon: (button == null ? void 0 : button.iconPosition) === "left" || !(button == null ? void 0 : button.iconPosition) ? /* @__PURE__ */ import_react14.default.createElement(Icon, null) : null,
1745
+ endIcon: (button == null ? void 0 : button.iconPosition) === "right" ? /* @__PURE__ */ import_react14.default.createElement(Icon, null) : null
1746
+ },
1747
+ capitalize(textButton != null ? textButton : "MultiSelect")
1748
+ ), /* @__PURE__ */ import_react14.default.createElement(
1749
+ import_material10.Popover,
1750
+ {
1751
+ elevation: 8,
1752
+ anchorEl,
1753
+ anchorOrigin: { vertical: "bottom", horizontal: "left" },
1754
+ open: openMultiselect,
1755
+ onClose: () => setOpen(false)
1756
+ },
1757
+ /* @__PURE__ */ import_react14.default.createElement(import_material10.Stack, { minWidth: "320px", "data-testid": "multiselect-container", bgcolor: "white", boxShadow: 3, borderRadius: 1 }, /* @__PURE__ */ import_react14.default.createElement(import_material10.Stack, { py: 1, px: 2 }, topPanel != null ? topPanel : /* @__PURE__ */ import_react14.default.createElement(import_material10.FormControl, { fullWidth: true, size: "small" }, /* @__PURE__ */ import_react14.default.createElement(
1758
+ import_material10.TextField,
1759
+ {
1760
+ "data-testid": "multiselect-input",
1761
+ fullWidth: true,
1762
+ size: "small",
1763
+ variant: "outlined",
1764
+ placeholder: "Buscar",
1765
+ value: filterValue,
1766
+ onChange: handleFilterChange,
1767
+ slotProps: {
1768
+ input: {
1769
+ endAdornment: /* @__PURE__ */ import_react14.default.createElement(import_material10.InputAdornment, { position: "end" }, /* @__PURE__ */ import_react14.default.createElement(import_icons_material9.SearchOutlined, { fontSize: "small" }))
1770
+ }
1771
+ }
1772
+ }
1773
+ ))), /* @__PURE__ */ import_react14.default.createElement(import_material10.Stack, { maxHeight: "300px", overflow: "auto" }, selectAll && /* @__PURE__ */ import_react14.default.createElement(import_material10.MenuItem, { dense, onClick: handleSelectAll }, /* @__PURE__ */ import_react14.default.createElement(import_material10.ListItemIcon, null, /* @__PURE__ */ import_react14.default.createElement(import_material10.Checkbox, { checked: allSelected, color: "primary" })), "Todos los items"), sortedItems.length > 0 ? sortedItems.map((item) => /* @__PURE__ */ import_react14.default.createElement(
1774
+ import_material10.MenuItem,
1775
+ {
1776
+ key: getItemLabel(item),
1777
+ dense,
1778
+ onClick: () => handleCheckboxToggle(item)
1779
+ },
1780
+ /* @__PURE__ */ import_react14.default.createElement(import_material10.ListItemIcon, null, /* @__PURE__ */ import_react14.default.createElement(
1781
+ import_material10.Checkbox,
1782
+ {
1783
+ checked: selectedItems.includes(item),
1784
+ color: "primary"
1785
+ }
1786
+ )),
1787
+ getItemLabel(item)
1788
+ )) : /* @__PURE__ */ import_react14.default.createElement(import_material10.MenuItem, { disabled: true }, "No se encontraron resultados")), /* @__PURE__ */ import_react14.default.createElement(import_material10.Stack, { direction: "row", gap: 1, p: 1, justifyContent: "space-between", bgcolor: "grey.50" }, resolvedActions.map((button2, index) => {
1789
+ var _a2;
1790
+ return /* @__PURE__ */ import_react14.default.createElement(
1791
+ import_material10.Button,
1792
+ {
1793
+ key: index,
1794
+ variant: index === 0 || resolvedActions.length < 2 ? "text" : "contained",
1795
+ onClick: button2.fn,
1796
+ disabled: (_a2 = button2.disabled) != null ? _a2 : false,
1797
+ size: "small"
1798
+ },
1799
+ capitalize(button2.text)
1800
+ );
1801
+ })))
1802
+ ));
1803
+ }
1804
+
1805
+ // src/Components/PageHeader/PageHeader.tsx
1806
+ var import_react15 = __toESM(require("react"), 1);
1807
+ var import_material11 = require("@mui/material");
1808
+ var PageHeader = ({
1809
+ title,
1810
+ subtitle,
1811
+ actions,
1812
+ buttonBack,
1813
+ fixed,
1814
+ shadow = true
1815
+ }) => {
1816
+ return /* @__PURE__ */ import_react15.default.createElement(
1817
+ import_material11.Stack,
1818
+ {
1819
+ "data-testid": "main-container",
1820
+ justifyContent: "center",
1821
+ height: 48,
1822
+ position: fixed ? "fixed" : "relative",
1823
+ width: fixed ? "100%" : "inherit",
1824
+ bgcolor: "background.paper",
1825
+ zIndex: 10,
1826
+ sx: { boxShadow: shadow ? (theme) => theme.shadows[1] : "none" }
1827
+ },
1828
+ /* @__PURE__ */ import_react15.default.createElement(import_material11.Stack, { "data-testid": "page-header-content", height: 40, px: 3, pl: buttonBack ? 1 : 3, direction: "row", alignItems: "center", justifyContent: "space-between" }, /* @__PURE__ */ import_react15.default.createElement(import_material11.Stack, { id: "left-section", direction: "row", alignItems: "center", gap: 1 }, buttonBack, /* @__PURE__ */ import_react15.default.createElement(import_material11.Stack, { id: "text-section", gap: 0.5 }, /* @__PURE__ */ import_react15.default.createElement(import_material11.Typography, { "data-testid": "page-header-title", variant: "h6", color: "text.primary" }, title), subtitle && /* @__PURE__ */ import_react15.default.createElement(import_material11.Typography, { "data-testid": "page-header-subtitle", variant: "caption", color: "text.primary" }, subtitle))), actions && /* @__PURE__ */ import_react15.default.createElement(import_material11.Stack, { id: "right-actions", direction: "row", alignItems: "center", gap: 1 }, actions))
1829
+ );
1830
+ };
1831
+
1832
+ // src/Components/SCCalendarSwipeable.tsx
1833
+ var import_react16 = __toESM(require("react"), 1);
1834
+ var import_material12 = require("@mui/material");
1835
+ var import_Grid24 = __toESM(require("@mui/material/Grid2"), 1);
1836
+ var import_AdapterDateFns = require("@mui/x-date-pickers/AdapterDateFns");
1837
+ var import_LocalizationProvider2 = require("@mui/x-date-pickers/LocalizationProvider");
1838
+ var import_StaticDatePicker = require("@mui/x-date-pickers/StaticDatePicker");
1839
+ var import_locale = require("date-fns/locale");
1840
+ var import_date_fns = require("date-fns");
1841
+ var import_KeyboardDoubleArrowDown = __toESM(require("@mui/icons-material/KeyboardDoubleArrowDown"), 1);
1842
+ var import_KeyboardDoubleArrowUp = __toESM(require("@mui/icons-material/KeyboardDoubleArrowUp"), 1);
1843
+ var SCCalendarSwipeable = ({
1844
+ //informativas
1845
+ //apariencia
1846
+ background,
1847
+ //funcionales
1848
+ setState,
1849
+ state
1850
+ }) => {
1851
+ let convertFecha;
1852
+ const [fecha, setFecha] = (0, import_react16.useState)(/* @__PURE__ */ new Date());
1853
+ const [fechaSeleccionada, setFechaSeleccionada] = (0, import_react16.useState)();
1854
+ const [stateVal, setstateVal] = import_react16.default.useState(/* @__PURE__ */ new Date());
1855
+ const [openCalendar, setOpenCalendar] = import_react16.default.useState(false);
1856
+ const hoy = /* @__PURE__ */ new Date();
1857
+ const inicioSemana = (0, import_date_fns.startOfWeek)(fecha, { weekStartsOn: 0 });
1858
+ const diasSemana = Array.from({ length: 7 }, (_, i) => (0, import_date_fns.addDays)(inicioSemana, i));
1859
+ import_react16.default.useEffect(() => {
1860
+ if (fecha != null) {
1861
+ handleConvertFecha(fecha);
1862
+ }
1863
+ }, [fecha]);
1864
+ const handleConvertFecha = (fecha2) => {
1865
+ if (fecha2) {
1866
+ let day = (fecha2.getDate() < 10 ? "0" : "") + fecha2.getDate();
1867
+ let month = (fecha2.getMonth() + 1 < 10 ? "0" : "") + (fecha2.getMonth() + 1);
1868
+ let year = fecha2.getFullYear();
1869
+ convertFecha = day + "/" + month + "/" + year;
1870
+ setState(convertFecha);
1871
+ setFecha(fecha2);
1872
+ }
1873
+ };
1874
+ const toggleCalendar = (newOpen) => () => {
1875
+ setOpenCalendar(newOpen);
1876
+ };
1877
+ const locale = __spreadValues({}, import_locale.es);
1878
+ return /* @__PURE__ */ import_react16.default.createElement(import_react16.default.Fragment, null, /* @__PURE__ */ import_react16.default.createElement(import_LocalizationProvider2.LocalizationProvider, { dateAdapter: import_AdapterDateFns.AdapterDateFns, adapterLocale: locale }, openCalendar == false ? /* @__PURE__ */ import_react16.default.createElement(import_material12.Box, { "data-testid": "calendar-mobile", sx: { width: "100%", background: background ? background : "white", display: "flex", flexDirection: "column", alignItems: "center" } }, /* @__PURE__ */ import_react16.default.createElement(import_material12.Box, { sx: { width: "100%", maxWidth: "320px", background: "transparent" } }, /* @__PURE__ */ import_react16.default.createElement(import_Grid24.default, { container: true, gap: 0.5, sx: {
1879
+ justifyContent: "space-between",
1880
+ padding: "12px 0px",
1881
+ background: "transparent"
1882
+ } }, diasSemana.map((dia) => /* @__PURE__ */ import_react16.default.createElement(import_Grid24.default, { sx: { width: "36px" }, key: dia.toString() }, /* @__PURE__ */ import_react16.default.createElement(import_material12.Box, { sx: { width: "36px", height: "40px", display: "flex", alignItems: "center", justifyContent: "center" } }, /* @__PURE__ */ import_react16.default.createElement(import_material12.Typography, { sx: { fontSize: "12px !important", color: "#10184099" } }, (0, import_date_fns.format)(dia, "EEEE", { locale: import_locale.es }).charAt(0).toUpperCase())), /* @__PURE__ */ import_react16.default.createElement(
1883
+ import_material12.Box,
1884
+ {
1885
+ onClick: () => setFecha(dia),
1886
+ sx: {
1887
+ padding: "10px",
1888
+ textAlign: "center",
1889
+ backgroundColor: (0, import_date_fns.isSameDay)(dia, fecha) ? "#2063a0" : "transparent",
1890
+ cursor: "pointer",
1891
+ borderRadius: "50%",
1892
+ //border: '1px solid lightgray',
1893
+ position: "relative"
1894
+ //width: '36px',
1895
+ //height: '36px',
1896
+ }
1897
+ },
1898
+ /* @__PURE__ */ import_react16.default.createElement(import_material12.Typography, { sx: { fontSize: "12px !important", color: (0, import_date_fns.isSameDay)(dia, fecha) ? "white" : "#101840DE" } }, (0, import_date_fns.format)(dia, "d"))
1899
+ )))), /* @__PURE__ */ import_react16.default.createElement(import_Grid24.default, { container: true, justifyContent: "center" }, /* @__PURE__ */ import_react16.default.createElement(import_material12.IconButton, { "data-testid": "open-calendar-button", onClick: toggleCalendar(true) }, /* @__PURE__ */ import_react16.default.createElement(import_KeyboardDoubleArrowDown.default, null))))) : /* @__PURE__ */ import_react16.default.createElement(import_material12.Box, { sx: { width: "100%", background: "white" } }, /* @__PURE__ */ import_react16.default.createElement(
1900
+ import_StaticDatePicker.StaticDatePicker,
1901
+ {
1902
+ orientation: "landscape",
1903
+ openTo: "day",
1904
+ value: fecha,
1905
+ slotProps: { toolbar: { hidden: true }, actionBar: { actions: [] } },
1906
+ sx: { fontSize: "12px !important", height: "300px !important", background: background ? background : "white", "& .MuiDayCalendar-header": { justifyContent: "space-between" }, "& .MuiDayCalendar-weekContainer": { justifyContent: "space-between" }, "& .MuiPickersCalendarHeader-root": { paddingLeft: "0px", paddingRight: "0px", color: "#10184099" }, "& .MuiPickersDay-root": { fontSize: "12px !important" }, "& .MuiDayCalendar-weekDayLabel": { fontSize: "12px !important" } },
1907
+ onChange: (newValue) => setFecha(newValue)
1908
+ }
1909
+ ), /* @__PURE__ */ import_react16.default.createElement(import_Grid24.default, { container: true, justifyContent: "center" }, /* @__PURE__ */ import_react16.default.createElement(import_material12.IconButton, { "data-testid": "close-calendar-button", onClick: toggleCalendar(false) }, /* @__PURE__ */ import_react16.default.createElement(import_KeyboardDoubleArrowUp.default, null))))));
1910
+ };
1911
+
1912
+ // src/Components/SCDataGrid.tsx
1913
+ var import_react17 = __toESM(require("react"), 1);
1914
+ var import_x_data_grid_pro = require("@mui/x-data-grid-pro");
1915
+ var import_x_license_pro2 = require("@mui/x-license-pro");
1916
+ var import_KeyboardArrowDown = __toESM(require("@mui/icons-material/KeyboardArrowDown"), 1);
1917
+ var import_KeyboardArrowUp = __toESM(require("@mui/icons-material/KeyboardArrowUp"), 1);
1918
+ var import_styles = require("@mui/material/styles");
1919
+ var SCDataGridInitial = ({ data, columns, groupColumns, rowsTable, checkboxSelection, width, maxHeight, density }) => {
1920
+ import_x_license_pro2.LicenseInfo.setLicenseKey(
1921
+ "77d49a57fbc5f4af35ddb05c5f1742e0Tz0xMTI3MjgsRT0xNzc4MzcxMTk5MDAwLFM9cHJvLExNPXN1YnNjcmlwdGlvbixQVj1RMy0yMDI0LEtWPTI="
1922
+ );
1923
+ const theme = (0, import_styles.useTheme)();
1924
+ const apiRef = (0, import_x_data_grid_pro.useGridApiRef)();
1925
+ const isRowSelectable = (params) => params.row.bloqueoChecked == false ? false : true;
1926
+ function generateRandomId() {
1927
+ return Math.floor(Math.random() * 1e6);
1928
+ }
1929
+ const getTreeDataPaths = (row) => {
1930
+ return [
1931
+ row[groupColumns[0].split("[")[1].split("]")[0].trim()],
1932
+ ...groupColumns.length > 2 ? [row[groupColumns[1].split("[")[1].split("]")[0].trim()]] : [],
1933
+ `${row[groupColumns[groupColumns.length - 1].split("[")[1].split("]")[0].trim()].toString()}/${generateRandomId()}`
1934
+ ];
1935
+ };
1936
+ const groupingColDefs = {
1937
+ field: "grouping",
1938
+ headerName: groupColumns != void 0 ? groupColumns[groupColumns.length - 1].split("[").length == 2 ? groupColumns[groupColumns.length - 1].split("[")[0].trim() : "Agrupador" : "",
1939
+ renderCell: (params) => {
1940
+ var _a;
1941
+ let label = params.value.toString().includes("/") ? params.value.split("/")[0].toString() : params.value.toString();
1942
+ const maxDepth = groupColumns ? groupColumns.length - 2 : 0;
1943
+ if (groupColumns != void 0) {
1944
+ if (params.rowNode.depth === 0) {
1945
+ const textBegin = groupColumns[0] ? groupColumns[0].split("[")[0].trim() : "";
1946
+ const textEnd = groupColumns[0] ? groupColumns[0].split("]")[1].trim() : "";
1947
+ const labelGrouping1 = `${textBegin} ${label} ${textEnd}`;
1948
+ const fieldGrouping1 = groupColumns[0].split("[")[1].split("]")[0].trim();
1949
+ const fieldGrouping2 = groupColumns[1].split("[")[1].split("]")[0].trim();
1950
+ const subgroup1 = arrayRows.filter((r) => r[fieldGrouping1].toString() === label).map((r) => r[fieldGrouping2]);
1951
+ const groupedDataLength1 = subgroup1.filter((valor, indiceActual, arreglo) => arreglo.indexOf(valor) === indiceActual);
1952
+ label = `${labelGrouping1} (${groupedDataLength1.length})`;
1953
+ } else if (groupColumns.length > 2 && params.rowNode.depth === 1) {
1954
+ const labelGrouping1 = (_a = params.api.getRowNode(params.rowNode.parent)) == null ? void 0 : _a.groupingKey;
1955
+ const textBegin = groupColumns[1] ? groupColumns[1].split("[")[0] : "";
1956
+ const textEnd = groupColumns[1] ? groupColumns[1].split("]")[1].trim() : "";
1957
+ const labelGrouping2 = `${textBegin} ${label} ${textEnd}`;
1958
+ const fieldGrouping1 = groupColumns[0].split("[")[1].split("]")[0].trim();
1959
+ const fieldGrouping2 = groupColumns[1].split("[")[1].split("]")[0].trim();
1960
+ const groupedDataLength2 = arrayRows.filter(
1961
+ (r) => r[fieldGrouping1] === labelGrouping1 && r[fieldGrouping2] === label
1962
+ ).length;
1963
+ label = `${labelGrouping2} (${groupedDataLength2})`;
1964
+ } else {
1965
+ label = label;
1966
+ }
1967
+ }
1968
+ return /* @__PURE__ */ import_react17.default.createElement(
1969
+ "div",
1970
+ {
1971
+ style: {
1972
+ width: "100%",
1973
+ boxSizing: "border-box",
1974
+ overflow: "hidden",
1975
+ textOverflow: "ellipsis",
1976
+ whiteSpace: "nowrap",
1977
+ color: "#101840DE",
1978
+ display: "flex",
1979
+ alignItems: "center",
1980
+ paddingLeft: params.rowNode.depth == 0 ? "5px" : params.rowNode.depth == 1 ? "15px" : "25px",
1981
+ backgroundColor: params.rowNode.type === "group" ? theme.palette.grey[100 + (maxDepth - params.rowNode.depth) * 100] : "#FFFFFF",
1982
+ fontWeight: params.rowNode.type == "group" ? "400" : "300"
1983
+ }
1984
+ },
1985
+ params.rowNode.type === "group" && /* @__PURE__ */ import_react17.default.createElement(
1986
+ "span",
1987
+ {
1988
+ style: {
1989
+ cursor: "pointer",
1990
+ marginRight: 8,
1991
+ userSelect: "none"
1992
+ },
1993
+ onClick: (e) => {
1994
+ e.stopPropagation();
1995
+ params.api.setRowChildrenExpansion(params.id, !params.rowNode.childrenExpanded);
1996
+ }
1997
+ },
1998
+ params.rowNode.childrenExpanded ? /* @__PURE__ */ import_react17.default.createElement(import_KeyboardArrowUp.default, { fontSize: "small", color: "action" }) : /* @__PURE__ */ import_react17.default.createElement(import_KeyboardArrowDown.default, { fontSize: "small", color: "action" })
1999
+ ),
2000
+ label
2001
+ );
2002
+ },
2003
+ colSpan: (params) => {
2004
+ const value = String(params);
2005
+ const fieldGrouping1 = groupColumns[0].split("[")[1].split("]")[0].trim();
2006
+ const fieldGrouping2 = groupColumns.length > 2 ? groupColumns[1].split("[")[1].split("]")[0].trim() : void 0;
2007
+ let agrupado1 = false;
2008
+ let agrupado2 = false;
2009
+ if (fieldGrouping1 != void 0) {
2010
+ agrupado1 = arrayRows.some(
2011
+ (row) => String(row[fieldGrouping1]) === value
2012
+ );
2013
+ }
2014
+ if (fieldGrouping2 != void 0) {
2015
+ agrupado2 = arrayRows.some(
2016
+ (row) => String(row[fieldGrouping2]) === value
2017
+ );
2018
+ }
2019
+ if (agrupado1 || agrupado2) {
2020
+ return columns.length + 1;
2021
+ } else {
2022
+ return 1;
2023
+ }
2024
+ }
2025
+ };
2026
+ let validationTreeData = groupColumns ? true : false;
2027
+ let validationCheckboxSelection = checkboxSelection || false;
2028
+ let styleDensity = density || "compact";
2029
+ let styleTopContainerHeight = styleDensity === "compact" ? "26px" : styleDensity === "standard" ? "38px" : styleDensity === "comfortable" ? "60px" : "27px";
2030
+ let styleRowHeight = density == "compact" ? 32 : density == "standard" ? 28 : density == "comfortable" ? 36 : 32;
2031
+ let rows = rowsTable ? rowsTable : validationTreeData != false ? parseInt(data.length.toString()) : data.length < 10 ? parseInt(data.length.toString()) : 10;
2032
+ let validationGroupingColDef = groupingColDefs || {};
2033
+ const [groupDataLenght, setGroupDataLengh] = (0, import_react17.useState)(0);
2034
+ const [pageSize, setPageSize] = (0, import_react17.useState)(rows);
2035
+ const [arrayRows, setArrayRows] = (0, import_react17.useState)([]);
2036
+ const [selectionModel, setSelectionModel] = (0, import_react17.useState)([]);
2037
+ (0, import_react17.useEffect)(() => {
2038
+ if ((data == null ? void 0 : data.length) > 0) {
2039
+ dataConvertRows(data, void 0);
2040
+ }
2041
+ }, [data]);
2042
+ const dataConvertRows = (data2, columnId) => {
2043
+ let dataConvert = [];
2044
+ if ((data2 == null ? void 0 : data2.length) > 0) {
2045
+ const dataKeys = Object.keys(data2[0]);
2046
+ data2.map((item) => {
2047
+ const newKeys = {};
2048
+ let i = 0;
2049
+ let id = dataConvert.length + 1;
2050
+ for (i = 0; i < dataKeys.length; i++) {
2051
+ newKeys[dataKeys[i]] = item[dataKeys[i]];
2052
+ }
2053
+ newKeys.id = columnId ? item[columnId] : id;
2054
+ dataConvert = [...dataConvert, newKeys];
2055
+ });
2056
+ }
2057
+ setArrayRows(dataConvert);
2058
+ };
2059
+ const handleSelectionChange = (newSelection) => {
2060
+ if (groupDataLenght > 0 && validationTreeData == true) {
2061
+ let numberGrouped = 0;
2062
+ let idsRowSelectBefore = [];
2063
+ let idRowSelect = [];
2064
+ for (let i = 0; i < newSelection.length; i++) {
2065
+ if (typeof newSelection[i] === "string") {
2066
+ if (newSelection[i].includes("auto-generated-row-null")) {
2067
+ numberGrouped = i;
2068
+ }
2069
+ } else {
2070
+ idsRowSelectBefore.push(newSelection[i]);
2071
+ }
2072
+ }
2073
+ arrayRows.forEach((array) => {
2074
+ if (typeof newSelection[numberGrouped] === "string") {
2075
+ if (newSelection[numberGrouped].includes(array.name)) {
2076
+ idRowSelect.push(array.id);
2077
+ }
2078
+ }
2079
+ });
2080
+ if (idRowSelect !== null) {
2081
+ const soloEnArr1 = idsRowSelectBefore.filter((elemento) => !idRowSelect.includes(elemento));
2082
+ const hasCommonElements = idsRowSelectBefore.some((element) => idRowSelect.includes(element));
2083
+ if (hasCommonElements == true) {
2084
+ setSelectionModel([...soloEnArr1]);
2085
+ } else {
2086
+ setSelectionModel([...idsRowSelectBefore, ...idRowSelect]);
2087
+ }
2088
+ }
2089
+ } else {
2090
+ setSelectionModel([...newSelection]);
2091
+ }
2092
+ };
2093
+ return /* @__PURE__ */ import_react17.default.createElement(import_react17.default.Fragment, null, data && /* @__PURE__ */ import_react17.default.createElement(import_react17.default.Fragment, null, /* @__PURE__ */ import_react17.default.createElement("div", { style: { width: width || "100%", maxHeight: maxHeight ? `${maxHeight}px` : "none" } }, /* @__PURE__ */ import_react17.default.createElement(
2094
+ import_x_data_grid_pro.DataGridPro,
2095
+ {
2096
+ apiRef,
2097
+ rowHeight: styleRowHeight,
2098
+ rows: arrayRows,
2099
+ columns,
2100
+ density: styleDensity,
2101
+ treeData: validationTreeData,
2102
+ getTreeDataPath: validationTreeData == true ? getTreeDataPaths : void 0,
2103
+ groupingColDef: validationTreeData == true ? validationGroupingColDef : void 0,
2104
+ pagination: true,
2105
+ initialState: {
2106
+ pagination: { paginationModel: { pageSize: rows } }
2107
+ },
2108
+ checkboxSelection: validationCheckboxSelection,
2109
+ rowSelectionModel: selectionModel,
2110
+ onRowSelectionModelChange: (newSelection) => handleSelectionChange(newSelection),
2111
+ isRowSelectable,
2112
+ disableRowSelectionOnClick: true,
2113
+ hideFooter: validationTreeData == true ? true : false,
2114
+ localeText: {
2115
+ noRowsLabel: "No hay filas",
2116
+ columnMenuLabel: "Men\xFA de columna",
2117
+ footerTotalRows: "Filas Totales:",
2118
+ footerRowSelected: (count) => `${count.toLocaleString()} fila(s) seleccionada(s)`,
2119
+ // Ejemplo de traducción dinámica
2120
+ MuiTablePagination: {
2121
+ labelRowsPerPage: "Filas por p\xE1gina:",
2122
+ labelDisplayedRows: ({ from, to, count }) => `${from}\u2013${to} de ${count !== -1 ? count : `m\xE1s de ${to}`}`
2123
+ }
2124
+ },
2125
+ sx: {
2126
+ maxHeight: maxHeight ? `${maxHeight}px` : "none",
2127
+ //overflow: 'auto',
2128
+ "& .MuiDataGrid-filler": {
2129
+ display: "none !important"
2130
+ },
2131
+ "& .MuiDataGrid-footerContainer": {
2132
+ minHeight: "26px !important",
2133
+ height: "26px !important"
2134
+ },
2135
+ "& .MuiTablePagination-toolbar": {
2136
+ minHeight: "25px !important",
2137
+ height: "25px !important"
2138
+ },
2139
+ "& .MuiTablePagination-actions .MuiIconButton-root": {
2140
+ padding: "0px !important"
2141
+ },
2142
+ "&.MuiDataGrid-root": {
2143
+ [`--DataGrid-topContainerHeight`]: `${styleTopContainerHeight} !important`
2144
+ },
2145
+ "MuiDataGrid-root .MuiDataGrid-virtualScrollerContent .MuiDataGrid-row": {
2146
+ "--height": "0px !important",
2147
+ "minHeight": "0px !important",
2148
+ "maxHeight": "0px !important"
2149
+ },
2150
+ "& .MuiDataGrid-cell": {
2151
+ padding: "0 !important",
2152
+ background: "white"
2153
+ }
2154
+ }
2155
+ }
2156
+ ))));
2157
+ };
2158
+ var SCDataGrid = import_react17.default.memo(SCDataGridInitial, (prevProps, nextProps) => {
2159
+ const isEqual = prevProps.data === nextProps.data && prevProps.columns === nextProps.columns && prevProps.groupColumns === nextProps.groupColumns && prevProps.rowsTable === nextProps.rowsTable && prevProps.checkboxSelection === nextProps.checkboxSelection && prevProps.width === nextProps.width && prevProps.maxHeight === nextProps.maxHeight && prevProps.density === nextProps.density;
2160
+ return isEqual;
2161
+ });
2162
+
2163
+ // src/Components/EmptyState/EmptyState.tsx
2164
+ var import_react18 = __toESM(require("react"), 1);
2165
+ var import_material13 = require("@mui/material");
2166
+
2167
+ // src/assets/ImgEmptyState/create.svg
2168
+ var create_default = "./create-KZGO2OZA.svg";
2169
+
2170
+ // src/assets/ImgEmptyState/error.svg
2171
+ var error_default = "./error-RUCZUXDN.svg";
2172
+
2173
+ // src/assets/ImgEmptyState/empty.svg
2174
+ var empty_default = "./empty-3NEKE7WO.svg";
2175
+
2176
+ // src/assets/ImgEmptyState/search.svg
2177
+ var search_default = "./search-OKSCVF2W.svg";
2178
+
2179
+ // src/Components/EmptyState/EmptyState.tsx
2180
+ var EmptyStateImageUrls = {
2181
+ create: create_default,
2182
+ error: error_default,
2183
+ noResult: empty_default,
2184
+ search: search_default
2185
+ };
2186
+ var DefaultIcon = ({
2187
+ state = "create",
2188
+ size = "large"
2189
+ }) => {
2190
+ const imageUrl = EmptyStateImageUrls[state];
2191
+ const iconSize = size === "small" ? { width: "40px", height: "40px" } : { width: "60px", height: "60px" };
2192
+ return /* @__PURE__ */ import_react18.default.createElement("img", { src: imageUrl, alt: state, style: iconSize });
2193
+ };
2194
+ var EmptyState = ({
2195
+ state = "create",
2196
+ size = "large",
2197
+ title,
2198
+ subtitle,
2199
+ actions,
2200
+ containerHeight = "100vh",
2201
+ icon = /* @__PURE__ */ import_react18.default.createElement(DefaultIcon, { state, size })
2202
+ }) => {
2203
+ const titleVariant = size === "small" ? "subtitle2" : "h6";
2204
+ const subtitleVariant = size === "small" ? "caption" : "body1";
2205
+ return /* @__PURE__ */ import_react18.default.createElement(
2206
+ import_material13.Stack,
2207
+ {
2208
+ alignItems: "center",
2209
+ justifyContent: "center",
2210
+ spacing: 2,
2211
+ height: containerHeight,
2212
+ "data-testid": "empty-state-container"
2213
+ },
2214
+ icon && /* @__PURE__ */ import_react18.default.createElement(import_material13.Stack, null, icon),
2215
+ /* @__PURE__ */ import_react18.default.createElement(import_material13.Stack, { gap: 0.5 }, /* @__PURE__ */ import_react18.default.createElement(import_material13.Typography, { color: "text.primary", variant: titleVariant, textAlign: "center" }, title), subtitle && /* @__PURE__ */ import_react18.default.createElement(
2216
+ import_material13.Typography,
2217
+ {
2218
+ variant: subtitleVariant,
2219
+ textAlign: "center",
2220
+ color: "text.secondary"
2221
+ },
2222
+ subtitle
2223
+ ), actions && (actions == null ? void 0 : actions.length) > 0 && /* @__PURE__ */ import_react18.default.createElement(
2224
+ import_material13.Stack,
2225
+ {
2226
+ direction: "row",
2227
+ spacing: 2,
2228
+ alignItems: "center",
2229
+ justifyContent: "center"
2230
+ },
2231
+ actions.map((action, index) => {
2232
+ var _a, _b, _c, _d;
2233
+ return /* @__PURE__ */ import_react18.default.createElement(
2234
+ import_material13.Button,
2235
+ {
2236
+ key: index,
2237
+ color: (_a = action.color) != null ? _a : "primary",
2238
+ variant: (_b = action.variant) != null ? _b : "text",
2239
+ size: (_c = action.size) != null ? _c : "small",
2240
+ startIcon: action.icon && action.iconPosition === "left" ? /* @__PURE__ */ import_react18.default.createElement("img", { src: action.icon, alt: "icon" }) : void 0,
2241
+ endIcon: action.icon && action.iconPosition === "right" ? /* @__PURE__ */ import_react18.default.createElement("img", { src: action.icon, alt: "icon" }) : void 0,
2242
+ onClick: action.onClick
2243
+ },
2244
+ capitalize((_d = action.text) != null ? _d : "action")
2245
+ );
2246
+ })
2247
+ ))
2248
+ );
2249
+ };
2250
+
2251
+ // src/Components/SCDialog.tsx
2252
+ var import_react19 = __toESM(require("react"), 1);
2253
+ var import_material14 = require("@mui/material");
2254
+ var import_Grid25 = __toESM(require("@mui/material/Grid2"), 1);
2255
+ var import_Close2 = __toESM(require("@mui/icons-material/Close"), 1);
2256
+ var Muicon5 = __toESM(require("@mui/icons-material"), 1);
2257
+ var SCDialog = ({ title, iconTitle, subtitle, content, actions, buttonDialog, disableClose, dividers, widthContent, heightContent, background, setShow, show }) => {
2258
+ let i = 0;
2259
+ let iconTitleValidation = "";
2260
+ let IconTitle;
2261
+ let ButtonIcon;
2262
+ const [open, setOpen] = (0, import_react19.useState)(show);
2263
+ (0, import_react19.useEffect)(() => {
2264
+ if (show) {
2265
+ handleOpen();
2266
+ } else {
2267
+ handleClose();
2268
+ }
2269
+ }, [show]);
2270
+ if ((buttonDialog == null ? void 0 : buttonDialog.icon) != void 0) {
2271
+ if (Muicon5[buttonDialog == null ? void 0 : buttonDialog.icon] == void 0) {
2272
+ ButtonIcon = buttonDialog == null ? void 0 : buttonDialog.icon;
2273
+ } else {
2274
+ ButtonIcon = Muicon5[buttonDialog == null ? void 0 : buttonDialog.icon];
2275
+ }
2276
+ }
2277
+ actions == null ? void 0 : actions.map(function(option, index, array) {
2278
+ if (option == null ? void 0 : option.icon) {
2279
+ if ((option == null ? void 0 : option.icon.type) == void 0) {
2280
+ option.icon = Muicon5[option == null ? void 0 : option.icon];
2281
+ } else {
2282
+ option;
2283
+ }
2284
+ }
2285
+ });
2286
+ if (iconTitle) {
2287
+ if (Muicon5[iconTitle] == void 0) {
2288
+ if (iconTitle && import_react19.default.isValidElement(iconTitle) && iconTitle.type == void 0) {
2289
+ iconTitleValidation = "image";
2290
+ IconTitle = iconTitle;
2291
+ } else {
2292
+ iconTitleValidation = "icon";
2293
+ IconTitle = iconTitle;
2294
+ }
2295
+ } else {
2296
+ iconTitleValidation = "icon";
2297
+ IconTitle = Muicon5[iconTitle];
2298
+ }
2299
+ }
2300
+ const handleOpen = () => {
2301
+ setOpen(true);
2302
+ if (setShow) {
2303
+ setShow(true);
2304
+ }
2305
+ };
2306
+ const handleClose = () => {
2307
+ setOpen(false);
2308
+ if (setShow) {
2309
+ setShow(false);
2310
+ }
2311
+ };
2312
+ const dialogActions = actions != null ? actions : [{ text: "Cerrar", fn: handleClose }];
2313
+ content = content != null ? content : { component: /* @__PURE__ */ import_react19.default.createElement(import_material14.Box, null, " Aqui va el contenido ") };
2314
+ return /* @__PURE__ */ import_react19.default.createElement("div", null, buttonDialog ? /* @__PURE__ */ import_react19.default.createElement(import_react19.default.Fragment, null, buttonDialog.text != void 0 ? /* @__PURE__ */ import_react19.default.createElement(import_material14.Tooltip, { placement: "bottom-start", title: buttonDialog.tooltip != void 0 ? buttonDialog.tooltip : "", slotProps: { popper: { modifiers: [{ name: "offset", options: { offset: [0, -14] } }] } } }, /* @__PURE__ */ import_react19.default.createElement(import_material14.Button, { size: "small", color: buttonDialog.color != void 0 ? buttonDialog.color : "primary", variant: (buttonDialog == null ? void 0 : buttonDialog.variant) != void 0 ? buttonDialog == null ? void 0 : buttonDialog.variant : "text", startIcon: (buttonDialog == null ? void 0 : buttonDialog.iconPosition) != void 0 ? (buttonDialog == null ? void 0 : buttonDialog.iconPosition) == "left" ? /* @__PURE__ */ import_react19.default.createElement(ButtonIcon, { color: buttonDialog.color != void 0 ? buttonDialog.color : "primary" }) : "" : "", endIcon: (buttonDialog == null ? void 0 : buttonDialog.iconPosition) != void 0 ? (buttonDialog == null ? void 0 : buttonDialog.iconPosition) == "right" ? /* @__PURE__ */ import_react19.default.createElement(ButtonIcon, { color: buttonDialog.color != void 0 ? buttonDialog.color : "primary" }) : "" : "", onClick: handleOpen }, " ", (buttonDialog == null ? void 0 : buttonDialog.text) != void 0 ? buttonDialog.text : "", " ")) : /* @__PURE__ */ import_react19.default.createElement(import_material14.IconButton, { style: { cursor: "pointer" }, onClick: handleOpen }, /* @__PURE__ */ import_react19.default.createElement(import_material14.SvgIcon, { fontSize: "small", color: (buttonDialog == null ? void 0 : buttonDialog.color) != void 0 ? buttonDialog == null ? void 0 : buttonDialog.color : "action", component: ButtonIcon }))) : "", /* @__PURE__ */ import_react19.default.createElement(import_material14.Modal, { open: open || false, onClose: handleClose }, /* @__PURE__ */ import_react19.default.createElement(
2315
+ import_material14.Dialog,
2316
+ {
2317
+ "data-testid": "dialog-element",
2318
+ open: open || false,
2319
+ onClose: disableClose ? void 0 : handleClose,
2320
+ maxWidth: "xl",
2321
+ sx: {
2322
+ width: "100% !important",
2323
+ "& .MuiBackdrop-root": {
2324
+ backdropFilter: "blur(0px) !important"
2325
+ }
2326
+ }
2327
+ },
2328
+ title && /* @__PURE__ */ import_react19.default.createElement(import_material14.DialogTitle, { sx: { m: 0, padding: "8px 16px 8px 16px" }, "data-testid": "dialog-icon-title" }, /* @__PURE__ */ import_react19.default.createElement(import_Grid25.default, { container: true, size: 12, sx: { justifyContent: "space-between", flexWrap: "nowrap" } }, /* @__PURE__ */ import_react19.default.createElement(import_Grid25.default, { container: true, size: 11, sx: { alignItems: "center" } }, iconTitle ? iconTitleValidation == "image" ? /* @__PURE__ */ import_react19.default.createElement(import_material14.Box, { sx: { marginRight: "16px", width: "44px", height: "44px", borderRadius: "1px" } }, /* @__PURE__ */ import_react19.default.createElement("img", { src: IconTitle, width: "44px", height: "44px" })) : /* @__PURE__ */ import_react19.default.createElement(import_material14.SvgIcon, { color: "action", fontSize: "small", component: IconTitle, sx: { marginRight: "16px" } }) : "", /* @__PURE__ */ import_react19.default.createElement(import_Grid25.default, null, /* @__PURE__ */ import_react19.default.createElement(import_material14.Typography, { color: "text.primary", variant: "h6", gutterBottom: true }, title ? title : ""), /* @__PURE__ */ import_react19.default.createElement(import_material14.Typography, { color: "text.secondary", variant: "body2", gutterBottom: true }, subtitle ? subtitle : ""))), disableClose != true ? /* @__PURE__ */ import_react19.default.createElement(import_material14.IconButton, { "data-testid": "close-dialog-button", onClick: handleClose, size: "small", color: "default", sx: { height: 22, width: 22 } }, /* @__PURE__ */ import_react19.default.createElement(import_Close2.default, null)) : "")),
2329
+ /* @__PURE__ */ import_react19.default.createElement(
2330
+ import_material14.DialogContent,
2331
+ {
2332
+ "data-testid": "dialog-content",
2333
+ dividers: dividers ? dividers : false,
2334
+ sx: {
2335
+ m: 0,
2336
+ padding: "12px 16px 8px 16px",
2337
+ background: background ? background : "white",
2338
+ height: !heightContent ? { xs: "60vh", sm: "70vh", md: "508px" } : heightContent,
2339
+ width: () => {
2340
+ switch (widthContent) {
2341
+ case "extra-small":
2342
+ return { xs: "48vw", md: "33vw" };
2343
+ case "small":
2344
+ return { xs: "54vw", md: "39vw" };
2345
+ case "medium":
2346
+ return { xs: "64vw", md: "56vw" };
2347
+ case "large":
2348
+ return { xs: "74vw", md: "78vw" };
2349
+ case "extra-large":
2350
+ return { xs: "84vw", md: "93vw" };
2351
+ default:
2352
+ return { xs: "64vw", md: "56vw" };
2353
+ }
2354
+ }
2355
+ }
2356
+ },
2357
+ content.url ? /* @__PURE__ */ import_react19.default.createElement(
2358
+ "iframe",
2359
+ {
2360
+ style: { border: "none", minWidth: "100%", minHeight: "100%" },
2361
+ id: "inlineFrameExample",
2362
+ title: "Inline Frame Example",
2363
+ src: content.url
2364
+ }
2365
+ ) : content.component
2366
+ ),
2367
+ dialogActions.length > 0 ? /* @__PURE__ */ import_react19.default.createElement(import_material14.DialogActions, { sx: { gap: 1, m: 0, padding: "12px 16px 12px 16px", justifyContent: dialogActions.length >= 3 ? "space-between" : "flex-end" } }, dialogActions.length >= 3 ? /* @__PURE__ */ import_react19.default.createElement(import_react19.default.Fragment, null, /* @__PURE__ */ import_react19.default.createElement(
2368
+ import_material14.Button,
2369
+ {
2370
+ variant: "text",
2371
+ color: dialogActions[0].color || "primary",
2372
+ size: "small",
2373
+ onClick: dialogActions[0].fn,
2374
+ disabled: dialogActions[0].disabled || false,
2375
+ startIcon: dialogActions[0].icon ? /* @__PURE__ */ import_react19.default.createElement(import_material14.SvgIcon, { fontSize: "small", component: dialogActions[0].icon }) : void 0
2376
+ },
2377
+ dialogActions[0].text
2378
+ ), /* @__PURE__ */ import_react19.default.createElement(import_material14.Box, { sx: { display: "flex", gap: 1 } }, dialogActions.slice(1).map((boton, index) => {
2379
+ return /* @__PURE__ */ import_react19.default.createElement(
2380
+ import_material14.Button,
2381
+ {
2382
+ key: index + 1,
2383
+ variant: index === dialogActions.length - 2 ? "contained" : "text",
2384
+ color: boton.color || "primary",
2385
+ size: "small",
2386
+ onClick: boton.fn,
2387
+ disabled: boton.disabled || false,
2388
+ startIcon: boton.icon ? /* @__PURE__ */ import_react19.default.createElement(import_material14.SvgIcon, { fontSize: "small", component: boton.icon }) : void 0
2389
+ },
2390
+ boton.text
2391
+ );
2392
+ }))) : dialogActions.map((boton, index) => {
2393
+ return /* @__PURE__ */ import_react19.default.createElement(
2394
+ import_material14.Button,
2395
+ {
2396
+ key: index,
2397
+ variant: index === dialogActions.length - 1 ? "contained" : "text",
2398
+ color: boton.color || "primary",
2399
+ size: "small",
2400
+ onClick: boton.fn,
2401
+ disabled: boton.disabled || false,
2402
+ startIcon: boton.icon ? /* @__PURE__ */ import_react19.default.createElement(import_material14.SvgIcon, { fontSize: "small", component: boton.icon }) : void 0
2403
+ },
2404
+ boton.text
2405
+ );
2406
+ })) : ""
2407
+ )));
2408
+ };
2409
+
2410
+ // src/Components/SCMenu.tsx
2411
+ var import_react21 = __toESM(require("react"), 1);
2412
+ var import_material15 = require("@mui/material");
2413
+ var import_Grid26 = __toESM(require("@mui/material/Grid2"), 1);
2414
+
2415
+ // src/Components/Hooks/useWindowDimensions.ts
2416
+ var import_react20 = require("react");
2417
+ function getWindowDimensions() {
2418
+ const { innerWidth: width, innerHeight: height } = window;
2419
+ return {
2420
+ width,
2421
+ height
2422
+ };
2423
+ }
2424
+ function useWindowDimensions() {
2425
+ const [windowDimensions, setWindowDimensions] = (0, import_react20.useState)(getWindowDimensions());
2426
+ (0, import_react20.useEffect)(() => {
2427
+ function handleResize() {
2428
+ setWindowDimensions(getWindowDimensions());
2429
+ }
2430
+ window.addEventListener("resize", handleResize);
2431
+ return () => window.removeEventListener("resize", handleResize);
2432
+ }, []);
2433
+ return windowDimensions;
2434
+ }
2435
+
2436
+ // src/Components/SCMenu.tsx
2437
+ var Muicon6 = __toESM(require("@mui/icons-material"), 1);
2438
+ var SCMenu = ({ header, options, defaultOption, disable, widthMenu, heightMenu, widthPage }) => {
2439
+ const { height, width } = useWindowDimensions();
2440
+ const menuSize = widthMenu ? parseInt(widthMenu) : 284;
2441
+ const pageSize = widthPage ? parseInt(widthPage) : width - menuSize;
2442
+ const widthContainer = menuSize + pageSize;
2443
+ let heightContainer = heightMenu ? parseInt(heightMenu) : height - 76;
2444
+ const [selectedIndex, setSelectedIndex] = import_react21.default.useState("1");
2445
+ const [value, setValue] = import_react21.default.useState("1");
2446
+ import_react21.default.useEffect(() => {
2447
+ heightContainer = heightMenu ? parseInt(heightMenu) : height - 76;
2448
+ }, [height]);
2449
+ import_react21.default.useEffect(() => {
2450
+ if (defaultOption) {
2451
+ handleClickMenusItem(event, void 0);
2452
+ }
2453
+ }, [defaultOption]);
2454
+ options.map(function(option, index, array) {
2455
+ if (option == null ? void 0 : option.iconLeft) {
2456
+ if ((option == null ? void 0 : option.iconLeft.type) == void 0) {
2457
+ option.iconLeft = Muicon6[option == null ? void 0 : option.iconLeft];
2458
+ } else {
2459
+ option;
2460
+ }
2461
+ }
2462
+ if (option == null ? void 0 : option.iconRight) {
2463
+ if ((option == null ? void 0 : option.iconRight.type) == void 0) {
2464
+ option.iconRight = Muicon6[option == null ? void 0 : option.iconRight];
2465
+ } else {
2466
+ option;
2467
+ }
2468
+ }
2469
+ });
2470
+ const handleClickMenusItem = (event2, index) => {
2471
+ if (defaultOption && index == void 0) {
2472
+ setSelectedIndex(defaultOption);
2473
+ setValue(defaultOption);
2474
+ } else if (index != void 0) {
2475
+ setSelectedIndex(String(index + 1));
2476
+ setValue(String(index + 1));
2477
+ }
2478
+ };
2479
+ return /* @__PURE__ */ import_react21.default.createElement(import_react21.default.Fragment, null, /* @__PURE__ */ import_react21.default.createElement(import_Grid26.default, { container: true, sx: { height: heightContainer, width: widthContainer, flexDirection: "column" } }, /* @__PURE__ */ import_react21.default.createElement(import_material15.Paper, { "data-testid": "menu-content", sx: { width: menuSize, height: heightContainer, overflow: "auto" } }, header && header.component, /* @__PURE__ */ import_react21.default.createElement(import_material15.MenuList, { sx: { height: options.length * 45, padding: "8px 0px" } }, options.map((option, index) => /* @__PURE__ */ import_react21.default.createElement(import_react21.default.Fragment, null, /* @__PURE__ */ import_react21.default.createElement(
2480
+ import_material15.MenuItem,
2481
+ {
2482
+ disabled: disable == true ? true : false,
2483
+ key: index,
2484
+ selected: String(index + 1) === selectedIndex,
2485
+ onClick: (event2) => handleClickMenusItem(event2, index)
2486
+ },
2487
+ option.iconLeft ? /* @__PURE__ */ import_react21.default.createElement(import_material15.ListItemIcon, { sx: { color: String(index + 1) === selectedIndex ? "primary" : "active" } }, /* @__PURE__ */ import_react21.default.createElement(import_material15.SvgIcon, { fontSize: "small", color: String(index + 1) === selectedIndex ? "primary" : "action", component: option.iconLeft })) : "",
2488
+ /* @__PURE__ */ import_react21.default.createElement(import_Grid26.default, { container: true, size: 12, sx: { maxWidth: 220, flexWrap: "noWrap", alignItems: "center" } }, /* @__PURE__ */ import_react21.default.createElement(import_material15.Typography, { noWrap: true, variant: "caption", color: String(index + 1) === selectedIndex ? "primary" : "active" }, option.name), option.iconRight ? /* @__PURE__ */ import_react21.default.createElement(import_material15.ListItemIcon, { sx: { minWidth: "0px !important", color: String(index + 1) === selectedIndex ? "primary" : "active" } }, /* @__PURE__ */ import_react21.default.createElement(import_material15.SvgIcon, { fontSize: "small", color: String(index + 1) === selectedIndex ? "primary" : "action", component: option.iconRight })) : "")
2489
+ ), option.divider == true ? /* @__PURE__ */ import_react21.default.createElement(import_material15.Divider, null) : "")))), /* @__PURE__ */ import_react21.default.createElement(import_Grid26.default, { container: true }, options.map((option, index) => option.page ? String(index + 1) == value ? /* @__PURE__ */ import_react21.default.createElement(import_material15.Box, { "data-testid": "menu-page-content", sx: { padding: "16px", width: pageSize, height: heightContainer }, key: index }, option.page) : "" : /* @__PURE__ */ import_react21.default.createElement(import_material15.Typography, { color: "error" }, "No se ha configurado el componente a visualizar")))));
2490
+ };
2491
+
2492
+ // src/Components/SCTabs.tsx
2493
+ var import_react22 = __toESM(require("react"), 1);
2494
+ var import_material16 = require("@mui/material");
2495
+ var import_TabPanel = __toESM(require("@mui/lab/TabPanel"), 1);
2496
+ var import_TabContext = __toESM(require("@mui/lab/TabContext"), 1);
2497
+ var Muicon7 = __toESM(require("@mui/icons-material"), 1);
2498
+ var SCTabs = ({ options, defaultOption, typeIcon, background, iconPosition, colorTab, orientation, variant, scrollButtons, children }) => {
2499
+ const [toast, setToast] = import_react22.default.useState(null);
2500
+ let i = 0;
2501
+ let j = 0;
2502
+ let k = 0;
2503
+ let l = 0;
2504
+ let validateTypeIcon = true;
2505
+ const [value, setValue] = import_react22.default.useState("1");
2506
+ (0, import_react22.useEffect)(() => {
2507
+ if (defaultOption) {
2508
+ handleChange(event, void 0);
2509
+ }
2510
+ }, [defaultOption]);
2511
+ options.map(function(option) {
2512
+ const optionsLength = options.length;
2513
+ if (option == null ? void 0 : option.iconOrBadge) {
2514
+ if (typeIcon == "icon") {
2515
+ if ((option == null ? void 0 : option.iconOrBadge) in Muicon7 == true) {
2516
+ validateTypeIcon = true;
2517
+ option.iconOrBadge = Muicon7[option == null ? void 0 : option.iconOrBadge];
2518
+ } else {
2519
+ validateTypeIcon = false;
2520
+ setTimeout(() => {
2521
+ setToast({
2522
+ type: "error",
2523
+ title: "Componente SCTabs",
2524
+ subtitle: "En Option todos los iconOrBadge deben ser iconos de MUI, por favor verificar.",
2525
+ time: 50
2526
+ });
2527
+ }, 10);
2528
+ return;
2529
+ }
2530
+ } else if (typeIcon == "badge") {
2531
+ if ((option == null ? void 0 : option.iconOrBadge) in Muicon7 == false) {
2532
+ validateTypeIcon = true;
2533
+ option;
2534
+ } else {
2535
+ validateTypeIcon = false;
2536
+ setTimeout(() => {
2537
+ setToast({
2538
+ type: "error",
2539
+ title: "Componente SCTabs",
2540
+ subtitle: "En Option todos los iconOrBadge deben ser numeros para el badge, por favor verificar.",
2541
+ time: 10
2542
+ });
2543
+ }, 10);
2544
+ return;
2545
+ }
2546
+ }
2547
+ }
2548
+ });
2549
+ const handleChange = (event2, newValue) => {
2550
+ if (defaultOption && newValue == void 0) {
2551
+ setValue(defaultOption);
2552
+ } else if (newValue != void 0) {
2553
+ setValue(newValue);
2554
+ }
2555
+ };
2556
+ return /* @__PURE__ */ import_react22.default.createElement(import_react22.default.Fragment, null, validateTypeIcon == true ? /* @__PURE__ */ import_react22.default.createElement(import_material16.Box, { sx: { height: orientation == "vertical" ? "100%" : "auto", display: "flex", flexDirection: orientation == "vertical" ? "row" : "column" }, id: "tabsitos" }, /* @__PURE__ */ import_react22.default.createElement(import_TabContext.default, { value }, /* @__PURE__ */ import_react22.default.createElement(
2557
+ import_material16.Tabs,
2558
+ {
2559
+ "data-testid": "tab-container",
2560
+ value,
2561
+ onChange: handleChange,
2562
+ variant: variant ? orientation == "vertical" && variant == "fullWidth" ? "standard" : variant : "standard",
2563
+ scrollButtons: scrollButtons == false ? false : true,
2564
+ visibleScrollbar: scrollButtons == false ? true : false,
2565
+ textColor: colorTab,
2566
+ indicatorColor: colorTab,
2567
+ orientation: orientation || "horizontal",
2568
+ sx: { borderBottom: orientation == "vertical" ? 0 : 1, borderRight: orientation == "vertical" ? 1 : 0, borderColor: "divider", background: background || "" }
2569
+ },
2570
+ options.map((option) => /* @__PURE__ */ import_react22.default.createElement(
2571
+ import_material16.Tab,
2572
+ {
2573
+ "data-testid": "tab-item",
2574
+ value: String(i = i + 1),
2575
+ key: j = j + 1,
2576
+ label: option.name || "",
2577
+ disabled: option.disabled || false,
2578
+ iconPosition: iconPosition || "end",
2579
+ icon: typeIcon == "badge" ? /* @__PURE__ */ import_react22.default.createElement(
2580
+ import_material16.Badge,
2581
+ {
2582
+ sx: {
2583
+ width: "20px",
2584
+ height: "20px",
2585
+ "& .MuiBadge-badge": {
2586
+ top: "10px",
2587
+ right: "10px"
2588
+ }
2589
+ },
2590
+ variant: "standard",
2591
+ badgeContent: option.iconOrBadge,
2592
+ color: value == String(i) ? colorTab ? colorTab : "primary" : "default"
2593
+ }
2594
+ ) : typeIcon == "icon" ? /* @__PURE__ */ import_react22.default.createElement(import_material16.SvgIcon, { fontSize: "small", component: option.iconOrBadge, color: value == String(i) ? colorTab ? colorTab : "primary" : "action", sx: { width: "20px", height: "20px" } }) : "",
2595
+ sx: { "& .MuiTab-icon": { margin: "0px !important" }, padding: "10px 16px", gap: "4px" }
2596
+ }
2597
+ ))
2598
+ ), children, options.map((option) => /* @__PURE__ */ import_react22.default.createElement(
2599
+ import_TabPanel.default,
2600
+ {
2601
+ key: k = k + 1,
2602
+ value: String(l = l + 1),
2603
+ sx: { padding: "16px" }
2604
+ },
2605
+ option.page ? option.page : /* @__PURE__ */ import_react22.default.createElement(import_material16.Typography, null, "No se ha configurado el componente a visualizar ")
2606
+ )))) : /* @__PURE__ */ import_react22.default.createElement(import_material16.Box, { sx: { height: "200px" } }, toast && /* @__PURE__ */ import_react22.default.createElement(SCToastNotification, __spreadValues({ "data-testid": "error-tab-message" }, toast))));
2607
+ };
2608
+
2609
+ // src/Theme/index.ts
2610
+ var import_styles3 = require("@mui/material/styles");
2611
+
2612
+ // src/Theme/components.ts
2613
+ var import_react23 = __toESM(require("react"), 1);
2614
+ var import_icons_material10 = require("@mui/icons-material");
2615
+ var components = {
2616
+ MuiSelect: {
2617
+ styleOverrides: {
2618
+ outlined: {
2619
+ paddingBlock: "13px"
2620
+ },
2621
+ iconStandard: {
2622
+ "&.MuiSelect-iconStandard.MuiSvgIcon-root": {
2623
+ top: "calc(50% - .4em)"
2624
+ }
2625
+ },
2626
+ iconFilled: {
2627
+ "&.MuiSelect-iconFilled.MuiSvgIcon-root": {
2628
+ top: "calc(50% - .15em)"
2629
+ }
2630
+ },
2631
+ iconOutlined: {
2632
+ "&.MuiSelect-iconOutlined.MuiSvgIcon-root": {
2633
+ top: "calc(50% - .35em)"
2634
+ }
2635
+ },
2636
+ icon: {
2637
+ width: 16,
2638
+ height: 16
2639
+ },
2640
+ root: {
2641
+ fontSize: 13,
2642
+ fontStyle: "normal",
2643
+ fontWeight: 400,
2644
+ letterSpacing: "0.15px",
2645
+ lineHeight: "19px"
2646
+ }
2647
+ }
2648
+ },
2649
+ MuiSpeedDialIcon: {
2650
+ styleOverrides: {
2651
+ icon: {
2652
+ height: 24,
2653
+ width: 24
2654
+ }
2655
+ }
2656
+ },
2657
+ MuiSpeedDialAction: {
2658
+ styleOverrides: {
2659
+ fab: {
2660
+ height: 40,
2661
+ width: 40
2662
+ }
2663
+ }
2664
+ },
2665
+ MuiBadge: {
2666
+ styleOverrides: {
2667
+ badge: {
2668
+ fontSize: "11px",
2669
+ fontWeight: 400,
2670
+ lineHeight: "11px",
2671
+ letterSpacing: ".14px"
2672
+ }
2673
+ }
2674
+ },
2675
+ MuiSpeedDial: {
2676
+ styleOverrides: {
2677
+ fab: {
2678
+ height: 56,
2679
+ width: 56
2680
+ }
2681
+ }
2682
+ },
2683
+ MuiAccordion: {
2684
+ styleOverrides: {
2685
+ root: {
2686
+ ".MuiButtonBase-root.MuiAccordionSummary-root": {
2687
+ minHeight: 44,
2688
+ height: 44
2689
+ }
2690
+ }
2691
+ }
2692
+ },
2693
+ MuiTabs: {
2694
+ styleOverrides: {
2695
+ root: {
2696
+ minHeight: 40
2697
+ }
2698
+ }
2699
+ },
2700
+ MuiTab: {
2701
+ styleOverrides: {
2702
+ labelIcon: {
2703
+ paddingBlock: 10
2704
+ },
2705
+ root: {
2706
+ textTransform: "none",
2707
+ minHeight: 40
2708
+ }
2709
+ }
2710
+ },
2711
+ MuiDataGrid: {
2712
+ defaultProps: {
2713
+ density: "compact"
2714
+ },
2715
+ styleOverrides: {
2716
+ columnHeader: {
2717
+ variants: [
2718
+ {
2719
+ props: { density: "compact" },
2720
+ style: {
2721
+ "--height": "24px",
2722
+ minHeight: "24px !important",
2723
+ maxHeight: "24px !important"
2724
+ }
2725
+ },
2726
+ {
2727
+ props: { density: "standard" },
2728
+ style: {
2729
+ "--height": "36px",
2730
+ minHeight: "36px !important",
2731
+ maxHeight: "36px !important"
2732
+ }
2733
+ },
2734
+ {
2735
+ props: { density: "comfortable" },
2736
+ style: {
2737
+ "--height": "52px",
2738
+ minHeight: "52px !important",
2739
+ maxHeight: "52px !important"
2740
+ }
2741
+ }
2742
+ ]
2743
+ },
2744
+ columnSeparator: {
2745
+ variants: [
2746
+ {
2747
+ props: { density: "compact" },
2748
+ style: {
2749
+ "--height": "24px",
2750
+ minHeight: "24px !important",
2751
+ maxHeight: "24px !important"
2752
+ }
2753
+ },
2754
+ {
2755
+ props: { density: "standard" },
2756
+ style: {
2757
+ "--height": "36px",
2758
+ minHeight: "36px !important",
2759
+ maxHeight: "36px !important"
2760
+ }
2761
+ },
2762
+ {
2763
+ props: { density: "comfortable" },
2764
+ style: {
2765
+ "--height": "52px",
2766
+ minHeight: "52px !important",
2767
+ maxHeight: "52px !important"
2768
+ }
2769
+ }
2770
+ ]
2771
+ },
2772
+ iconButtonContainer: {
2773
+ fontSize: 16
2774
+ },
2775
+ columnHeaderDraggableContainer: {
2776
+ variants: [
2777
+ {
2778
+ props: { density: "compact" },
2779
+ style: {
2780
+ "--height": "24px",
2781
+ minHeight: "24px !important",
2782
+ maxHeight: "24px !important"
2783
+ }
2784
+ },
2785
+ {
2786
+ props: { density: "standard" },
2787
+ style: {
2788
+ "--height": "36px",
2789
+ minHeight: "36px !important",
2790
+ maxHeight: "36px !important"
2791
+ }
2792
+ },
2793
+ {
2794
+ props: { density: "comfortable" },
2795
+ style: {
2796
+ "--height": "52px",
2797
+ minHeight: "52px !important",
2798
+ maxHeight: "52px !important"
2799
+ }
2800
+ }
2801
+ ]
2802
+ },
2803
+ columnHeaderTitle: {
2804
+ fontFamily: "Roboto",
2805
+ fontWeight: 500,
2806
+ fontSize: 13,
2807
+ lineHeight: 1.5,
2808
+ letterSpacing: 0.17
2809
+ },
2810
+ row: {
2811
+ variants: [
2812
+ {
2813
+ props: { density: "compact" },
2814
+ style: {
2815
+ "--height": "22px",
2816
+ minHeight: "22px !important",
2817
+ maxHeight: "22px !important"
2818
+ }
2819
+ },
2820
+ {
2821
+ props: { density: "standard" },
2822
+ style: {
2823
+ "--height": "28px",
2824
+ minHeight: "28px !important",
2825
+ maxHeight: "28px !important"
2826
+ }
2827
+ },
2828
+ {
2829
+ props: { density: "comfortable" },
2830
+ style: {
2831
+ "--height": "48px",
2832
+ minHeight: "48px !important",
2833
+ maxHeight: "48px !important"
2834
+ }
2835
+ }
2836
+ ]
2837
+ },
2838
+ cell: {
2839
+ fontFamily: "Roboto",
2840
+ fontWeight: 300,
2841
+ fontSize: 12,
2842
+ lineHeight: 1.5,
2843
+ letterSpacing: 0.17,
2844
+ display: "flex",
2845
+ alignItems: "center",
2846
+ variants: [
2847
+ {
2848
+ props: { density: "compact" },
2849
+ style: {
2850
+ "--height": "22px",
2851
+ minHeight: "22px !important",
2852
+ maxHeight: "22px !important"
2853
+ }
2854
+ },
2855
+ {
2856
+ props: { density: "standard" },
2857
+ style: {
2858
+ "--height": "28px",
2859
+ minHeight: "28px !important",
2860
+ maxHeight: "28px !important"
2861
+ }
2862
+ },
2863
+ {
2864
+ props: { density: "comfortable" },
2865
+ style: {
2866
+ "--height": "48px",
2867
+ minHeight: "48px !important",
2868
+ maxHeight: "48px !important"
2869
+ }
2870
+ }
2871
+ ],
2872
+ // COMPONENTES DENTRO DE CELDAS
2873
+ ".MuiButtonBase-root": {
2874
+ lineHeight: 0,
2875
+ textTransform: "capitalize"
2876
+ },
2877
+ // CELDA ENFOCADA
2878
+ ".MuiDataGrid-cell": {
2879
+ "&:focus": {
2880
+ outline: "transparent",
2881
+ borderWidth: 0
2882
+ }
2883
+ }
2884
+ },
2885
+ // BOTOM MENU EN LAS CABECERA DE CADA COLUMNA
2886
+ menuIconButton: {
2887
+ svg: {
2888
+ fontSize: "16px"
2889
+ }
2890
+ },
2891
+ menu: {
2892
+ svg: {
2893
+ fontSize: "16px !important"
2894
+ },
2895
+ ".MuiMenuItem-root": {
2896
+ minHeight: "28px",
2897
+ height: "28px"
2898
+ }
2899
+ },
2900
+ pinnedRows: {
2901
+ borderTop: "1px solid rgba(228, 236, 244, 1)"
2902
+ },
2903
+ root: {
2904
+ // FONT-SIZE DE CELDA EN MODO EDICION
2905
+ ".MuiInputBase-root": {
2906
+ fontFamily: "Roboto",
2907
+ fontWeight: 300,
2908
+ fontSize: 12,
2909
+ letterSpacing: 0.17,
2910
+ borderRadius: "0px"
2911
+ },
2912
+ // CELDA FOCUS
2913
+ ".Mui-focused, .MuiOutlinedInput-notchedOutline": {
2914
+ borderWidth: "0px !important"
2915
+ },
2916
+ // TAMAÑO PEQUEÑO
2917
+ "&.MuiDataGrid-root--densityCompact": {
2918
+ ".MuiSvgIcon-root": {
2919
+ fontSize: 16
2920
+ },
2921
+ ".MuiDataGrid-cellCheckbox": {
2922
+ ".MuiButtonBase-root": {
2923
+ padding: 4
2924
+ }
2925
+ }
2926
+ }
2927
+ }
2928
+ }
2929
+ },
2930
+ MuiRating: {
2931
+ defaultProps: {
2932
+ size: "small"
2933
+ },
2934
+ styleOverrides: {
2935
+ sizeSmall: {
2936
+ fontSize: 18
2937
+ },
2938
+ sizeMedium: {
2939
+ fontSize: 24
2940
+ },
2941
+ sizeLarge: {
2942
+ fontSize: 30
2943
+ }
2944
+ }
2945
+ },
2946
+ MuiDrawer: {
2947
+ styleOverrides: {
2948
+ root: {
2949
+ boxShadow: "0px 3px 1px -2px rgba(24, 39, 75, 0.20), 0px 2px 2px 0px rgba(24, 39, 75, 0.14), 0px 1px 5px 0px rgba(24, 39, 75, 0.12)"
2950
+ }
2951
+ }
2952
+ },
2953
+ MuiTooltip: {
2954
+ styleOverrides: {
2955
+ tooltip: {
2956
+ backgroundColor: "#424242"
2957
+ }
2958
+ }
2959
+ },
2960
+ MuiDialog: {
2961
+ styleOverrides: {
2962
+ root: ({ theme }) => ({
2963
+ boxShadow: "0px 11px 15px -7px rgba(24, 39, 75, 0.2), 0px 24px 38px 3px rgba(24, 39, 75, 0.14), 0px 9px 46px 8px rgba(24, 39, 75, 0.12)",
2964
+ "& .MuiBackdrop-root": {
2965
+ backgroundColor: "#00000047"
2966
+ }
2967
+ })
2968
+ }
2969
+ },
2970
+ MuiBackdrop: {
2971
+ styleOverrides: {
2972
+ root: {
2973
+ backgroundColor: "transparent"
2974
+ }
2975
+ }
2976
+ },
2977
+ MuiDialogTitle: {
2978
+ styleOverrides: {
2979
+ root: {
2980
+ padding: "8px 16px !important"
2981
+ }
2982
+ }
2983
+ },
2984
+ MuiDialogContent: {
2985
+ styleOverrides: {
2986
+ root: {
2987
+ padding: "8px 16px !important"
2988
+ }
2989
+ }
2990
+ },
2991
+ MuiDialogActions: {
2992
+ styleOverrides: {
2993
+ root: {
2994
+ padding: "12px 16px !important"
2995
+ }
2996
+ }
2997
+ },
2998
+ MuiCheckbox: {
2999
+ variants: [
3000
+ {
3001
+ props: { size: "large" },
3002
+ style: {
3003
+ padding: 9,
3004
+ "& .MuiSvgIcon-fontSizeLarge": {
3005
+ height: 24,
3006
+ width: 24,
3007
+ fontSize: 24
3008
+ }
3009
+ }
3010
+ },
3011
+ {
3012
+ props: { size: "small" },
3013
+ style: {
3014
+ padding: 3
3015
+ }
3016
+ },
3017
+ {
3018
+ props: { size: "medium" },
3019
+ style: {
3020
+ padding: 4
3021
+ }
3022
+ }
3023
+ ],
3024
+ defaultProps: {
3025
+ size: "small"
3026
+ }
3027
+ },
3028
+ MuiToggleButton: {
3029
+ styleOverrides: {
3030
+ sizeSmall: {
3031
+ height: 32
3032
+ },
3033
+ sizeMedium: {
3034
+ height: 38
3035
+ },
3036
+ sizeLarge: {
3037
+ height: 48
3038
+ }
3039
+ }
3040
+ },
3041
+ MuiChip: {
3042
+ defaultProps: {
3043
+ size: "small",
3044
+ variant: "standard",
3045
+ color: "default"
3046
+ },
3047
+ styleOverrides: {
3048
+ icon: {
3049
+ opacity: "70%"
3050
+ },
3051
+ deleteIconSmall: {
3052
+ height: 16,
3053
+ width: 16
3054
+ },
3055
+ deleteIconMedium: {
3056
+ height: 20,
3057
+ width: 20
3058
+ },
3059
+ sizeSmall: {
3060
+ height: 16
3061
+ },
3062
+ sizeMedium: {
3063
+ height: 20
3064
+ },
3065
+ avatarSmall: {
3066
+ height: 14,
3067
+ width: 14
3068
+ },
3069
+ avatarMedium: {
3070
+ height: 18,
3071
+ width: 18
3072
+ },
3073
+ iconColorPrimary: ({ theme }) => ({
3074
+ color: theme.palette.primary.main
3075
+ }),
3076
+ colorDefault: ({ theme }) => ({
3077
+ backgroundColor: theme.palette.default.main,
3078
+ color: theme.palette.default.contrastText
3079
+ }),
3080
+ deleteIcon: ({ theme }) => ({
3081
+ variants: [
3082
+ {
3083
+ props: { variant: "filled" },
3084
+ style: {
3085
+ color: theme.palette.background.paper,
3086
+ opacity: "50%"
3087
+ }
3088
+ },
3089
+ {
3090
+ props: { variant: "standard" },
3091
+ style: {
3092
+ color: theme.palette.default.contrastText,
3093
+ opacity: "30%",
3094
+ ":hover": {
3095
+ color: theme.palette.default.contrastText,
3096
+ opacity: "30%"
3097
+ }
3098
+ }
3099
+ },
3100
+ {
3101
+ props: { variant: "outlined" },
3102
+ style: {
3103
+ color: theme.palette.action.active,
3104
+ opacity: "54%",
3105
+ ":hover": {
3106
+ color: theme.palette.action.active,
3107
+ opacity: "54%"
3108
+ }
3109
+ }
3110
+ },
3111
+ {
3112
+ props: { variant: "filled", color: "default" },
3113
+ style: {
3114
+ color: theme.palette.default.contrastText,
3115
+ opacity: "30%"
3116
+ }
3117
+ }
3118
+ ]
3119
+ }),
3120
+ avatar: ({ theme }) => ({
3121
+ lineHeight: 1.8,
3122
+ variants: [
3123
+ {
3124
+ props: { variant: "filled" },
3125
+ style: {
3126
+ backgroundColor: theme.palette.background.paper,
3127
+ opacity: "70%",
3128
+ color: theme.palette.default.contrastText
3129
+ }
3130
+ },
3131
+ {
3132
+ props: { variant: "standard" },
3133
+ style: {
3134
+ backgroundColor: theme.palette.default.contrastText,
3135
+ color: theme.palette.primary.contrastText
3136
+ }
3137
+ },
3138
+ {
3139
+ props: { variant: "outlined", color: "error" },
3140
+ style: {
3141
+ backgroundColor: theme.palette.error.main,
3142
+ color: theme.palette.background.paper
3143
+ }
3144
+ },
3145
+ {
3146
+ props: { variant: "outlined", color: "success" },
3147
+ style: {
3148
+ backgroundColor: theme.palette.success.main,
3149
+ color: theme.palette.background.paper
3150
+ }
3151
+ },
3152
+ {
3153
+ props: { variant: "outlined", color: "info" },
3154
+ style: {
3155
+ backgroundColor: theme.palette.info.main,
3156
+ color: theme.palette.background.paper
3157
+ }
3158
+ },
3159
+ {
3160
+ props: { variant: "outlined", color: "warning" },
3161
+ style: {
3162
+ backgroundColor: theme.palette.warning.main,
3163
+ color: theme.palette.background.paper
3164
+ }
3165
+ },
3166
+ {
3167
+ props: { variant: "outlined", color: "default" },
3168
+ style: {
3169
+ backgroundColor: theme.palette.grey[400],
3170
+ color: theme.palette.background.paper
3171
+ }
3172
+ },
3173
+ {
3174
+ props: { variant: "filled", color: "default" },
3175
+ style: {
3176
+ backgroundColor: theme.palette.default.contrastText,
3177
+ color: theme.palette.background.paper
3178
+ }
3179
+ }
3180
+ ]
3181
+ }),
3182
+ label: ({ theme }) => __spreadValues({}, theme.typography.caption),
3183
+ root: ({ theme }) => ({
3184
+ height: "inherit",
3185
+ borderRadius: 4,
3186
+ variants: [
3187
+ {
3188
+ props: { variant: "outlined", color: "default" },
3189
+ style: {
3190
+ border: `1px solid ${theme.palette.grey[400]}`,
3191
+ backgroundColor: "transparent ",
3192
+ color: theme.palette.default.contrastText,
3193
+ ":hover": {
3194
+ backgroundColor: theme.palette.default.main
3195
+ }
3196
+ }
3197
+ },
3198
+ {
3199
+ props: { variant: "standard", color: "default" },
3200
+ style: {
3201
+ backgroundColor: theme.palette.default.main,
3202
+ color: theme.palette.default.contrastText,
3203
+ ":hover": {
3204
+ backgroundColor: theme.palette.default.dark
3205
+ }
3206
+ }
3207
+ },
3208
+ {
3209
+ props: { variant: "filled", color: "default" },
3210
+ style: {
3211
+ backgroundColor: theme.palette.grey[50],
3212
+ color: theme.palette.default.contrastText,
3213
+ ":hover": {
3214
+ backgroundColor: theme.palette.grey[100]
3215
+ }
3216
+ }
3217
+ },
3218
+ {
3219
+ props: { variant: "filled", color: "default" },
3220
+ style: {
3221
+ backgroundColor: theme.palette.grey[50],
3222
+ color: theme.palette.default.contrastText,
3223
+ ":hover": {
3224
+ backgroundColor: theme.palette.grey[100]
3225
+ }
3226
+ }
3227
+ },
3228
+ {
3229
+ props: { variant: "standard", avatar: true },
3230
+ style: {
3231
+ backgroundColor: theme.palette.default.contrastText,
3232
+ color: theme.palette.default.contrastText
3233
+ }
3234
+ },
3235
+ {
3236
+ props: { variant: "standard" },
3237
+ style: {
3238
+ backgroundColor: theme.palette.default.contrastText,
3239
+ color: theme.palette.default.contrastText
3240
+ }
3241
+ },
3242
+ {
3243
+ props: { variant: "standard", color: "primary" },
3244
+ style: {
3245
+ backgroundColor: theme.palette.chipPrimary.main,
3246
+ ":hover": {
3247
+ backgroundColor: theme.palette.chipPrimary.dark
3248
+ }
3249
+ }
3250
+ },
3251
+ {
3252
+ props: { variant: "standard", color: "secondary" },
3253
+ style: {
3254
+ backgroundColor: theme.palette.chipSecondary.main,
3255
+ ":hover": {
3256
+ backgroundColor: theme.palette.chipSecondary.dark
3257
+ }
3258
+ }
3259
+ },
3260
+ {
3261
+ props: { variant: "standard", color: "info" },
3262
+ style: {
3263
+ backgroundColor: theme.palette.chipInfo.main,
3264
+ ":hover": {
3265
+ backgroundColor: theme.palette.chipInfo.dark
3266
+ }
3267
+ }
3268
+ },
3269
+ {
3270
+ props: { variant: "standard", color: "error" },
3271
+ style: {
3272
+ backgroundColor: theme.palette.chipError.main,
3273
+ ":hover": {
3274
+ backgroundColor: theme.palette.chipError.dark
3275
+ }
3276
+ }
3277
+ },
3278
+ {
3279
+ props: { variant: "standard", color: "success" },
3280
+ style: {
3281
+ backgroundColor: theme.palette.chipSuccess.main,
3282
+ ":hover": {
3283
+ backgroundColor: theme.palette.chipSuccess.dark
3284
+ }
3285
+ }
3286
+ },
3287
+ {
3288
+ props: { variant: "standard", color: "warning" },
3289
+ style: {
3290
+ backgroundColor: theme.palette.chipWarning.main,
3291
+ ":hover": {
3292
+ backgroundColor: theme.palette.chipWarning.dark
3293
+ }
3294
+ }
3295
+ }
3296
+ ]
3297
+ })
3298
+ }
3299
+ },
3300
+ MuiAvatar: {
3301
+ styleOverrides: {
3302
+ root: {
3303
+ display: "flex",
3304
+ alignContent: "center"
3305
+ }
3306
+ }
3307
+ },
3308
+ MuiAlert: {
3309
+ defaultProps: {
3310
+ iconMapping: {
3311
+ success: import_react23.default.createElement(import_icons_material10.CheckCircleRounded),
3312
+ error: import_react23.default.createElement(import_icons_material10.ErrorRounded),
3313
+ warning: import_react23.default.createElement(import_icons_material10.WarningRounded),
3314
+ info: import_react23.default.createElement(import_icons_material10.InfoRounded)
3315
+ }
3316
+ },
3317
+ variants: [
3318
+ {
3319
+ props: { variant: "filled" },
3320
+ style: {
3321
+ color: "#fff"
3322
+ }
3323
+ },
3324
+ {
3325
+ props: { variant: "outlined" },
3326
+ style: {
3327
+ padding: "7px 12px 7px 12px"
3328
+ }
3329
+ }
3330
+ ],
3331
+ styleOverrides: {
3332
+ message: ({ theme }) => ({
3333
+ padding: "0px 4px",
3334
+ minWidth: 0,
3335
+ variants: [
3336
+ {
3337
+ props: { variant: "standard" },
3338
+ style: {
3339
+ color: theme.palette.text.primary
3340
+ }
3341
+ },
3342
+ {
3343
+ props: { variant: "outlined" },
3344
+ style: {
3345
+ color: theme.palette.text.primary
3346
+ }
3347
+ }
3348
+ ]
3349
+ }),
3350
+ icon: ({ theme }) => ({
3351
+ padding: "4px",
3352
+ marginRight: 0,
3353
+ display: "flex",
3354
+ alignItems: "center",
3355
+ borderRadius: 100,
3356
+ variants: [
3357
+ {
3358
+ props: { variant: "standard", color: "success" },
3359
+ style: {
3360
+ backgroundColor: theme.palette.success[100]
3361
+ }
3362
+ },
3363
+ {
3364
+ props: { variant: "standard", color: "error" },
3365
+ style: {
3366
+ backgroundColor: theme.palette.error[100]
3367
+ }
3368
+ },
3369
+ {
3370
+ props: { variant: "standard", color: "info" },
3371
+ style: {
3372
+ backgroundColor: theme.palette.info[100]
3373
+ }
3374
+ },
3375
+ {
3376
+ props: { variant: "standard", color: "warning" },
3377
+ style: {
3378
+ backgroundColor: theme.palette.warning[100]
3379
+ }
3380
+ }
3381
+ ]
3382
+ }),
3383
+ action: ({ theme }) => ({
3384
+ display: "flex",
3385
+ gap: 1.5,
3386
+ padding: "0px",
3387
+ variants: [
3388
+ {
3389
+ props: { variant: "standard" },
3390
+ style: {
3391
+ color: theme.palette.action.active
3392
+ }
3393
+ },
3394
+ {
3395
+ props: { variant: "outlined" },
3396
+ style: {
3397
+ color: theme.palette.action.active
3398
+ }
3399
+ }
3400
+ ]
3401
+ }),
3402
+ root: {
3403
+ padding: "8px 12px 8px 12px",
3404
+ borderRadius: "8px",
3405
+ display: "flex",
3406
+ alignItems: "center",
3407
+ gap: 1.5,
3408
+ minWidth: "296px"
3409
+ }
3410
+ }
3411
+ },
3412
+ MuiAlertTitle: {
3413
+ defaultProps: {
3414
+ variant: "subtitle2"
3415
+ },
3416
+ styleOverrides: {
3417
+ root: {
3418
+ marginBottom: 0,
3419
+ marginTop: 2.5
3420
+ }
3421
+ }
3422
+ },
3423
+ MuiButton: {
3424
+ styleOverrides: {
3425
+ root: {
3426
+ fontFamily: "Roboto",
3427
+ textTransform: "unset",
3428
+ fontWeightLight: 300,
3429
+ fontSize: "13px",
3430
+ lineHeight: "normal",
3431
+ "@media(max-width: 885px)": {
3432
+ fontSize: 14
3433
+ }
3434
+ },
3435
+ startIcon: {
3436
+ marginLeft: 2
3437
+ },
3438
+ endIcon: {
3439
+ marginRight: 2
3440
+ },
3441
+ sizeSmall: {
3442
+ height: 26,
3443
+ ".MuiSvgIcon-fontSizeSmall": {
3444
+ height: 16,
3445
+ width: 16
3446
+ },
3447
+ ".MuiSvgIcon-fontSizeMedium": {
3448
+ height: 18,
3449
+ width: 18
3450
+ },
3451
+ ".MuiSvgIcon-fontSizeLarge": {
3452
+ height: 20,
3453
+ width: 20
3454
+ }
3455
+ },
3456
+ sizeMedium: {
3457
+ height: 32,
3458
+ ".MuiSvgIcon-fontSizeSmall": {
3459
+ height: 16,
3460
+ width: 16
3461
+ },
3462
+ ".MuiSvgIcon-fontSizeMedium": {
3463
+ height: 18,
3464
+ width: 18
3465
+ },
3466
+ ".MuiSvgIcon-fontSizeLarge": {
3467
+ height: 20,
3468
+ width: 20
3469
+ }
3470
+ },
3471
+ sizeLarge: {
3472
+ height: 38,
3473
+ ".MuiSvgIcon-fontSizeSmall": {
3474
+ height: 16,
3475
+ width: 16
3476
+ },
3477
+ "&.MuiSvgIcon-fontSizeMedium": {
3478
+ height: 18,
3479
+ width: 18
3480
+ }
3481
+ }
3482
+ }
3483
+ },
3484
+ MuiButtonGroup: {
3485
+ defaultProps: {
3486
+ size: "small"
3487
+ }
3488
+ },
3489
+ MuiFab: {
3490
+ defaultProps: {
3491
+ size: "small"
3492
+ },
3493
+ styleOverrides: {
3494
+ circular: {
3495
+ boxShadow: "0px 1px 18px 0px rgba(24, 39, 75, 0.12), 0px 6px 10px 0px rgba(24, 39, 75, 0.14), 0px 3px 5px -1px rgba(24, 39, 75, 0.20)",
3496
+ sizeSmall: {
3497
+ height: 36,
3498
+ width: 36,
3499
+ svg: {
3500
+ height: 20,
3501
+ width: 20
3502
+ }
3503
+ },
3504
+ sizeMedium: {
3505
+ height: 48,
3506
+ width: 48,
3507
+ svg: {
3508
+ height: 22,
3509
+ width: 22
3510
+ }
3511
+ },
3512
+ sizeLarge: {
3513
+ height: 56,
3514
+ width: 56,
3515
+ svg: {
3516
+ height: 24,
3517
+ width: 24
3518
+ }
3519
+ }
3520
+ },
3521
+ extended: {
3522
+ gap: 1,
3523
+ boxShadow: " 0px 1px 18px 0px rgba(24, 39, 75, 0.12), 0px 6px 10px 0px rgba(24, 39, 75, 0.14), 0px 3px 5px -1px rgba(24, 39, 75, 0.20)",
3524
+ sizeSmall: {
3525
+ height: 32,
3526
+ svg: {
3527
+ height: 20,
3528
+ width: 20,
3529
+ marginRight: 4
3530
+ }
3531
+ },
3532
+ sizeMedium: {
3533
+ height: 38,
3534
+ svg: {
3535
+ height: 22,
3536
+ width: 22,
3537
+ marginRight: 4
3538
+ }
3539
+ },
3540
+ sizeLarge: {
3541
+ height: 48,
3542
+ svg: {
3543
+ height: 24,
3544
+ width: 24,
3545
+ marginRight: 4
3546
+ }
3547
+ }
3548
+ },
3549
+ root: {
3550
+ textTransform: "capitalize"
3551
+ }
3552
+ }
3553
+ },
3554
+ MuiFormControl: {
3555
+ defaultProps: {
3556
+ size: "small",
3557
+ margin: "none"
3558
+ }
3559
+ },
3560
+ MuiFormHelperText: {
3561
+ defaultProps: {
3562
+ margin: "dense"
3563
+ }
3564
+ },
3565
+ MuiSvgIcon: {
3566
+ styleOverrides: {
3567
+ fontSizeLarge: {
3568
+ width: 35,
3569
+ height: 35,
3570
+ fontSize: 35
3571
+ },
3572
+ fontSizeMedium: {
3573
+ width: 20,
3574
+ height: 20,
3575
+ fontSize: 20
3576
+ },
3577
+ fontSizeSmall: {
3578
+ width: 16,
3579
+ height: 16,
3580
+ fontSize: 16
3581
+ }
3582
+ }
3583
+ },
3584
+ MuiIconButton: {
3585
+ defaultProps: {
3586
+ color: "inherit"
3587
+ },
3588
+ styleOverrides: {
3589
+ sizeSmall: {
3590
+ padding: 3
3591
+ },
3592
+ sizeMedium: {
3593
+ padding: 8
3594
+ },
3595
+ sizeLarge: {
3596
+ padding: 12
3597
+ }
3598
+ }
3599
+ },
3600
+ MuiInputBase: {
3601
+ defaultProps: {
3602
+ margin: "none"
3603
+ },
3604
+ styleOverrides: {
3605
+ root: {
3606
+ "&.MuiInput-underline": {
3607
+ marginTop: 9
3608
+ },
3609
+ ".MuiOutlinedInput-input.MuiInputBase-inputSizeSmall": {
3610
+ paddingBlock: 6.51
3611
+ },
3612
+ ".MuiOutlinedInput-input": {
3613
+ paddingBlock: 14
3614
+ }
3615
+ }
3616
+ }
3617
+ },
3618
+ MuiOutlinedInput: {
3619
+ styleOverrides: {
3620
+ notchedOutline: {
3621
+ borderColor: "rgba(16, 24, 64, 0.23)"
3622
+ }
3623
+ }
3624
+ },
3625
+ MuiAutocomplete: {
3626
+ defaultProps: {
3627
+ size: "small"
3628
+ },
3629
+ styleOverrides: {
3630
+ root: {
3631
+ "&.MuiAutocomplete-root .MuiOutlinedInput-root": {
3632
+ padding: "6px 14px 6px 10px !important"
3633
+ },
3634
+ "& .MuiAutocomplete-endAdornment": {
3635
+ top: "calc(50% - 12px)",
3636
+ transform: "none"
3637
+ },
3638
+ "&.MuiAutocomplete-root .MuiOutlinedInput-root.MuiInputBase-sizeSmall": {
3639
+ paddingBlock: 3.5,
3640
+ paddingRight: 14,
3641
+ ".MuiIconButton-sizeSmall .MuiAutocomplete-popupIndicator": {
3642
+ padding: 5
3643
+ }
3644
+ }
3645
+ }
3646
+ }
3647
+ },
3648
+ MuiInputLabel: {
3649
+ styleOverrides: {
3650
+ asterisk: ({ theme }) => ({
3651
+ color: theme.palette.error.main
3652
+ }),
3653
+ root: {
3654
+ display: "flex",
3655
+ gap: ".2rem",
3656
+ flexDirection: "row-reverse",
3657
+ fontSize: 13,
3658
+ fontStyle: "normal",
3659
+ fontWeight: 400,
3660
+ letterSpacing: "0.15px"
3661
+ },
3662
+ filled: {
3663
+ "&.MuiInputLabel-filled.MuiInputLabel-sizeSmall:not(.MuiInputLabel-shrink)": {
3664
+ transform: "translate(12px,15px) scale(1)"
3665
+ },
3666
+ "&.MuiInputLabel-filled.MuiInputLabel-sizeMedium:not(.MuiInputLabel-shrink)": {
3667
+ transform: "translate(12px,19px) scale(1)"
3668
+ }
3669
+ },
3670
+ standard: {
3671
+ "&.MuiInputLabel-standard.MuiInputLabel-sizeSmall:not(.MuiInputLabel-shrink)": {
3672
+ transform: "translate(0, 14px) scale(1)"
3673
+ },
3674
+ "&.MuiInputLabel-standard.MuiInputLabel-sizeMedium:not(.MuiInputLabel-shrink)": {
3675
+ transform: "translate(0, 16px) scale(1)"
3676
+ }
3677
+ },
3678
+ outlined: {
3679
+ "&.MuiInputLabel-outlined.MuiInputLabel-sizeSmall ": {
3680
+ transform: "translate(14px,8px) scale(1)"
3681
+ },
3682
+ "&.MuiInputLabel-outlined ": {
3683
+ transform: "translate(14px, 14px) scale(1)",
3684
+ "&.MuiInputLabel-shrink": {
3685
+ transform: "translate(14px, -7px) scale(0.75)"
3686
+ }
3687
+ }
3688
+ }
3689
+ },
3690
+ defaultProps: {
3691
+ margin: "dense"
3692
+ }
3693
+ },
3694
+ MuiCard: {
3695
+ styleOverrides: {
3696
+ root: {
3697
+ overflow: "initial",
3698
+ boxShadow: "0px 2px 1px -2px rgba(24, 39, 75, 0.20), 0px 1px 1px -1px rgba(24, 39, 75, 0.14), 0px 1px 3px 0px rgba(24, 39, 75, 0.12)"
3699
+ }
3700
+ }
3701
+ },
3702
+ MuiCardHeader: {
3703
+ styleOverrides: {
3704
+ root: {
3705
+ padding: "8px 16px "
3706
+ }
3707
+ }
3708
+ },
3709
+ MuiCardContent: {
3710
+ styleOverrides: {
3711
+ root: {
3712
+ padding: "8px 16px "
3713
+ }
3714
+ }
3715
+ },
3716
+ MuiCardActions: {
3717
+ styleOverrides: {
3718
+ root: {
3719
+ padding: "8px 16px"
3720
+ }
3721
+ }
3722
+ },
3723
+ MuiRadio: {
3724
+ variants: [
3725
+ {
3726
+ props: { size: "small" },
3727
+ style: {
3728
+ padding: 3
3729
+ }
3730
+ },
3731
+ {
3732
+ props: { size: "medium" },
3733
+ style: {
3734
+ padding: 4
3735
+ }
3736
+ },
3737
+ {
3738
+ props: { size: "large" },
3739
+ style: {
3740
+ padding: 9,
3741
+ "& .MuiSvgIcon-fontSizeLarge": {
3742
+ width: 24,
3743
+ height: 24,
3744
+ fontSize: 24
3745
+ }
3746
+ }
3747
+ }
3748
+ ],
3749
+ defaultProps: {
3750
+ size: "small"
3751
+ }
3752
+ },
3753
+ MuiSwitch: {
3754
+ variants: [
3755
+ {
3756
+ props: { size: "small" },
3757
+ style: {
3758
+ height: 22,
3759
+ ".MuiSwitch-switchBase": {
3760
+ padding: 3
3761
+ }
3762
+ }
3763
+ }
3764
+ ],
3765
+ defaultProps: {
3766
+ size: "small"
3767
+ }
3768
+ },
3769
+ MuiTextField: {
3770
+ defaultProps: {
3771
+ size: "small",
3772
+ margin: "none"
3773
+ },
3774
+ variants: [
3775
+ {
3776
+ props: { variant: "standard" },
3777
+ style: {
3778
+ ".MuiInputBase-input.MuiInputBase-inputSizeSmall": {
3779
+ padding: 1.5
3780
+ }
3781
+ }
3782
+ }
3783
+ ]
3784
+ },
3785
+ MuiList: {
3786
+ defaultProps: {
3787
+ dense: false
3788
+ },
3789
+ styleOverrides: {
3790
+ padding: {
3791
+ ".MuiListItem-padding": {
3792
+ paddingBlock: 1
3793
+ }
3794
+ },
3795
+ dense: {
3796
+ ".MuiListItem-dense": {
3797
+ padding: "0.25px 0px 0.25px 16px"
3798
+ }
3799
+ }
3800
+ }
3801
+ },
3802
+ MuiListItemButton: {
3803
+ styleOverrides: {
3804
+ dense: {
3805
+ padding: "4px 16px 4px 16px "
3806
+ },
3807
+ root: {
3808
+ padding: "8.21px 16px",
3809
+ ".MuiListItemText-multiline": {
3810
+ marginBlock: "4px"
3811
+ }
3812
+ }
3813
+ }
3814
+ },
3815
+ MuiMenuItem: {
3816
+ styleOverrides: {
3817
+ dense: {
3818
+ height: 30,
3819
+ minHeight: 30,
3820
+ ".MuiListItemText-root > .MuiTypography-root": {
3821
+ lineHeight: "14.3px",
3822
+ letterSpacing: 0.15
3823
+ }
3824
+ },
3825
+ root: {
3826
+ padding: "7px 16px 7px 16px",
3827
+ ".MuiMenuList-root": {
3828
+ height: 34,
3829
+ minHeight: 34
3830
+ },
3831
+ ".MuiListItemText-root > .MuiTypography-root": {
3832
+ lineHeight: "20px",
3833
+ letterSpacing: 0.17
3834
+ },
3835
+ ".MuiListItemIcon-root": {
3836
+ minWidth: 32
3837
+ }
3838
+ }
3839
+ }
3840
+ },
3841
+ MuiTableBody: {
3842
+ styleOverrides: {
3843
+ root: {
3844
+ ".MuiTableCell-body.MuiTableCell-sizeMedium": {
3845
+ padding: "16px !important"
3846
+ }
3847
+ }
3848
+ }
3849
+ },
3850
+ MuiTableCell: {
3851
+ styleOverrides: {
3852
+ sizeMedium: {
3853
+ padding: 13
3854
+ }
3855
+ }
3856
+ },
3857
+ MuiTable: {
3858
+ defaultProps: {
3859
+ size: "small"
3860
+ },
3861
+ styleOverrides: {
3862
+ root: {
3863
+ minWidth: 630
3864
+ }
3865
+ }
3866
+ }
3867
+ };
3868
+
3869
+ // src/Theme/palette.ts
3870
+ var BasicPalette = {
3871
+ default: {
3872
+ main: "#E4E5E7",
3873
+ dark: "#D1D3D7",
3874
+ light: "#F2F2F3",
3875
+ contrastText: "#5A5E73"
3876
+ },
3877
+ chipInfo: {
3878
+ main: "#C0E8FC",
3879
+ dark: "#9CD8FA",
3880
+ light: "#E0F4FE",
3881
+ contrastText: "#5A5E73"
3882
+ },
3883
+ chipWarning: {
3884
+ main: "#FCE4C0",
3885
+ dark: "#FAD19C",
3886
+ light: "#F3F2F0",
3887
+ contrastText: "#5A5E73"
3888
+ },
3889
+ chipError: {
3890
+ main: "#FCD4D4",
3891
+ dark: "#F4B9B9",
3892
+ light: "#FEEAEA",
3893
+ contrastText: "#5A5E73"
3894
+ },
3895
+ chipSuccess: {
3896
+ main: "#DDF8C3",
3897
+ dark: "#C8F3A2",
3898
+ light: "#EFFCE2",
3899
+ contrastText: "#5A5E73"
3900
+ },
3901
+ error: {
3902
+ 50: "#F9E8E8",
3903
+ 100: "#F1C7C7",
3904
+ 200: "#E8A1A1",
3905
+ 300: "#DF7B7B",
3906
+ light: "#D85F5F",
3907
+ main: "#D14343",
3908
+ 600: "#CC3D3D",
3909
+ 700: "#C63434",
3910
+ 800: "#C02C2C",
3911
+ dark: "#B51E1E",
3912
+ A100: "#FFECEC",
3913
+ A200: "#FFB9B9",
3914
+ A400: "#FF8686",
3915
+ A700: "#FF6D6D",
3916
+ contrastText: "#ffffff"
3917
+ },
3918
+ warning: {
3919
+ 50: "#FFF0E0",
3920
+ 100: "#FEDAB3",
3921
+ 200: "#FDC280",
3922
+ 300: "#FCAA4D",
3923
+ light: "#FC9726",
3924
+ main: "#FB8500",
3925
+ 600: "#FA7D00",
3926
+ 700: "#FA7200",
3927
+ 800: "#F96800",
3928
+ dark: "#F85500",
3929
+ A100: "#FFFFFF",
3930
+ A200: "#FFF1EB",
3931
+ A400: "#FFCCB8",
3932
+ A700: "#FFBA9F",
3933
+ contrastText: "#ffffff"
3934
+ },
3935
+ info: {
3936
+ 50: "#E6F3F8",
3937
+ 100: "#C0E2EE",
3938
+ 200: "#96CFE2",
3939
+ 300: "#6CBCD6",
3940
+ light: "#4DADCE",
3941
+ main: "#2D9FC5",
3942
+ 600: "#2897BF",
3943
+ 700: "#228DB8",
3944
+ 800: "#1C83B0",
3945
+ dark: "#1172A3",
3946
+ A100: "#D4EFFF",
3947
+ A200: "#A1DCFF",
3948
+ A400: "#6ECAFF",
3949
+ A700: "#54C1FF",
3950
+ contrastText: "#ffffff"
3951
+ },
3952
+ success: {
3953
+ 50: "#F2F9E7",
3954
+ 100: "#DDEFC4",
3955
+ 200: "#C7E49D",
3956
+ 300: "#B1D975",
3957
+ light: "#A0D158",
3958
+ main: "#8FC93A",
3959
+ 600: "#87C334",
3960
+ 700: "#7CBC2C",
3961
+ 800: "#72B525",
3962
+ dark: "#60A918",
3963
+ A100: "#EDFFDE",
3964
+ A200: "#D2FFAB",
3965
+ A400: "#B6FF78",
3966
+ A700: "#A9FF5E",
3967
+ contrastText: "#ffffff"
3968
+ },
3969
+ grey: {
3970
+ 50: "#FBFBFB",
3971
+ 100: "#F5F5F6",
3972
+ 200: "#EAEBEC",
3973
+ 300: "#DCDEE0",
3974
+ 400: "#CED1D4",
3975
+ 500: "#C4C7CA",
3976
+ 600: "#B9BDC1",
3977
+ 700: "#B2B7BB",
3978
+ 800: "#AAAEB3",
3979
+ 900: "#A2A6AB",
3980
+ A100: "#FFFFFF",
3981
+ A200: "#FFFFFF",
3982
+ A400: "#D4EAFF",
3983
+ A700: "#BBDDFF"
3984
+ },
3985
+ text: {
3986
+ primary: "#101840de",
3987
+ secondary: "#10184099",
3988
+ disabled: "#10184061"
3989
+ },
3990
+ action: {
3991
+ active: "#1018408a",
3992
+ hover: "#1018400a",
3993
+ selected: "#10184014",
3994
+ disabled: "#10184042",
3995
+ disabledBackground: "#1018401f",
3996
+ focus: "#1018401f"
3997
+ },
3998
+ background: {
3999
+ default: "#f5f5f5",
4000
+ paper: "#fff"
4001
+ },
4002
+ common: {
4003
+ black: "#000",
4004
+ white: "#fff"
4005
+ },
4006
+ divider: "#0000001f"
4007
+ };
4008
+ var paletteERP = __spreadValues({
4009
+ primary: {
4010
+ 50: "#E4ECF4",
4011
+ 100: "#BCD0E3",
4012
+ 200: "#8FB1D0",
4013
+ 300: "#6392BD",
4014
+ light: "#417AAE",
4015
+ main: "#2063A0",
4016
+ 600: "#1C5B98",
4017
+ 700: "#18518E",
4018
+ 800: "#134784",
4019
+ dark: "#0B3573",
4020
+ A100: "#A5C5FF",
4021
+ A200: "#72A4FF",
4022
+ A400: "#3F83FF",
4023
+ A700: "#2572FF",
4024
+ contrastText: "#ffffff"
4025
+ },
4026
+ secondary: {
4027
+ 50: "#E0F7FA",
4028
+ 100: "#B3EBF2",
4029
+ 200: "#80DEEA",
4030
+ 300: "#4DD0E1",
4031
+ light: "#26C6DA",
4032
+ main: "#00BCD4",
4033
+ 600: "#00B6CF",
4034
+ 700: "#00ADC9",
4035
+ 800: "#00A5C3",
4036
+ dark: "#0097B9",
4037
+ A100: "#E2F9FF",
4038
+ A200: "#AFEEFF",
4039
+ A400: "#7CE3FF",
4040
+ A700: "#63DDFF",
4041
+ contrastText: "#ffffff"
4042
+ },
4043
+ chipPrimary: {
4044
+ main: "#C4E1F5",
4045
+ dark: "#A2CDEE",
4046
+ light: "#E2F0FA",
4047
+ contrastText: "#5A5E73"
4048
+ },
4049
+ chipSecondary: {
4050
+ main: "#C4F6FD",
4051
+ dark: "#A8F1FB",
4052
+ light: "#E0FBFE",
4053
+ contrastText: "#545E73"
4054
+ }
4055
+ }, BasicPalette);
4056
+ var paletteADPRO = __spreadValues({
4057
+ primary: {
4058
+ 50: "#F8FAFB",
4059
+ 100: "#E6EFF0",
4060
+ 200: "#D2E3E4",
4061
+ 300: "#82C6CB",
4062
+ light: "#2B9DA7",
4063
+ main: "#058C97",
4064
+ 600: "#04848F",
4065
+ 700: "#047984",
4066
+ 800: "#036F7A",
4067
+ dark: "#015C69",
4068
+ A100: "#98F0FF",
4069
+ A200: "#65E9FF",
4070
+ A400: "#32E1FF",
4071
+ A700: "#32E1FF"
4072
+ },
4073
+ secondary: {
4074
+ 50: "#E0F7FA",
4075
+ 100: "#B3EBF2",
4076
+ 200: "#80DEEA",
4077
+ 300: "#4DD0E1",
4078
+ light: "#26C6DA",
4079
+ main: "#00BCD4",
4080
+ 600: "#00B6CF",
4081
+ 700: "#00ADC9",
4082
+ 800: "#00A5C3",
4083
+ dark: "#0097B9",
4084
+ A100: "#E2F9FF",
4085
+ A200: "#AFEEFF",
4086
+ A400: "#7CE3FF",
4087
+ A700: "#63DDFF",
4088
+ contrastText: "#ffffff"
4089
+ },
4090
+ chipPrimary: {
4091
+ main: "#CEE7E9",
4092
+ dark: "#B2D9DC",
4093
+ light: "#E3F1F2",
4094
+ contrastText: "#5A5E73"
4095
+ },
4096
+ chipSecondary: {
4097
+ main: "#C4F6FD",
4098
+ dark: "#A8F1FB",
4099
+ light: "#E0FBFE",
4100
+ contrastText: "#545E73"
4101
+ }
4102
+ }, BasicPalette);
4103
+ var paletteADC = __spreadValues({
4104
+ primary: {
4105
+ 50: "#F8FAFB",
4106
+ 100: "#E6EFF0",
4107
+ 200: "#D2E3E4",
4108
+ 300: "#82C6CB",
4109
+ light: "#2B9DA7",
4110
+ main: "#058C97",
4111
+ 600: "#04848F",
4112
+ 700: "#047984",
4113
+ 800: "#036F7A",
4114
+ dark: "#015C69",
4115
+ A100: "#98F0FF",
4116
+ A200: "#65E9FF",
4117
+ A400: "#32E1FF",
4118
+ A700: "#32E1FF"
4119
+ },
4120
+ secondary: {
4121
+ 50: "#E0F7FA",
4122
+ 100: "#B3EBF2",
4123
+ 200: "#80DEEA",
4124
+ 300: "#4DD0E1",
4125
+ light: "#26C6DA",
4126
+ main: "#00BCD4",
4127
+ 600: "#00B6CF",
4128
+ 700: "#00ADC9",
4129
+ 800: "#00A5C3",
4130
+ dark: "#0097B9",
4131
+ A100: "#E2F9FF",
4132
+ A200: "#AFEEFF",
4133
+ A400: "#7CE3FF",
4134
+ A700: "#63DDFF",
4135
+ contrastText: "#ffffff"
4136
+ },
4137
+ chipPrimary: {
4138
+ main: "#D4D8F7",
4139
+ dark: "#B2B9F0",
4140
+ light: "#E5E8FA",
4141
+ contrastText: "#5A5E73"
4142
+ },
4143
+ chipSecondary: {
4144
+ main: "#E0E0E0",
4145
+ dark: "#D1D1D1",
4146
+ light: "#EBEBEB",
4147
+ contrastText: "#545E73"
4148
+ }
4149
+ }, BasicPalette);
4150
+
4151
+ // src/Theme/breakpoints.ts
4152
+ var import_system = require("@mui/system");
4153
+ var breakpoints = (0, import_system.createBreakpoints)({
4154
+ values: {
4155
+ xs: 0,
4156
+ sm: 600,
4157
+ md: 960,
4158
+ lg: 1280,
4159
+ xl: 1920
4160
+ }
4161
+ });
4162
+
4163
+ // src/Theme/mixins.ts
4164
+ var mixins = {
4165
+ toolbar: {
4166
+ minHeight: 48,
4167
+ [breakpoints.down("md")]: {
4168
+ minHeight: 52
4169
+ }
4170
+ }
4171
+ };
4172
+
4173
+ // src/Theme/module.ts
4174
+ var import_Typography = require("@mui/material/Typography");
4175
+ var import_Radio = require("@mui/material/Radio");
4176
+ var import_Chip = require("@mui/material/Chip");
4177
+ var import_Checkbox = require("@mui/material/Checkbox");
4178
+ var import_styles2 = require("@mui/material/styles");
4179
+
4180
+ // src/Theme/typography.ts
4181
+ var typography = {
4182
+ fontSize: 13,
4183
+ body1: {
4184
+ fontFamily: "Roboto",
4185
+ fontSize: 14,
4186
+ fontWeight: 400,
4187
+ lineHeight: "16px",
4188
+ letterSpacing: "0.15px",
4189
+ "@media(max-width: 885px)": {
4190
+ fontSize: 15
4191
+ }
4192
+ },
4193
+ body2: {
4194
+ fontFamily: "Roboto",
4195
+ fontSize: 13,
4196
+ fontWeight: 400,
4197
+ lineHeight: "16px",
4198
+ letterSpacing: "0.17px",
4199
+ "@media(max-width: 885px)": {
4200
+ fontSize: 14
4201
+ }
4202
+ },
4203
+ body3: {
4204
+ fontFamily: "Roboto",
4205
+ fontWeight: 300,
4206
+ fontSize: 12,
4207
+ lineHeight: "16px",
4208
+ letterSpacing: "0.17px",
4209
+ [breakpoints.down("md")]: {
4210
+ fontSize: 11
4211
+ }
4212
+ },
4213
+ subtitle1: {
4214
+ fontFamily: "Roboto",
4215
+ fontSize: 14,
4216
+ fontWeight: 500,
4217
+ lineHeight: "16px",
4218
+ letterSpacing: "0.15px",
4219
+ "@media(max-width: 885px)": {
4220
+ fontSize: 15
4221
+ }
4222
+ },
4223
+ subtitle2: {
4224
+ fontFamily: "Roboto",
4225
+ fontSize: 13,
4226
+ fontWeight: 500,
4227
+ lineHeight: "16px",
4228
+ letterSpacing: "0.1px",
4229
+ "@media(max-width: 885px)": {
4230
+ fontSize: 14
4231
+ }
4232
+ },
4233
+ caption: {
4234
+ fontFamily: "Roboto",
4235
+ fontSize: 11,
4236
+ fontWeight: 400,
4237
+ lineHeight: "14px",
4238
+ letterSpacing: "0.4px",
4239
+ "@media(max-width: 885px)": {
4240
+ fontSize: 12
4241
+ }
4242
+ },
4243
+ overline: {
4244
+ fontFamily: "Roboto",
4245
+ fontSize: 11,
4246
+ fontWeight: 400,
4247
+ lineHeight: "24px",
4248
+ letterSpacing: "1px",
4249
+ "@media(max-width: 885px)": {
4250
+ fontSize: 12
4251
+ }
4252
+ },
4253
+ h6: {
4254
+ fontFamily: "Nunito",
4255
+ fontSize: 16,
4256
+ fontWeight: 600,
4257
+ lineHeight: "16px",
4258
+ letterSpacing: "0.15px",
4259
+ "@media(max-width: 885px)": {
4260
+ fontSize: 17
4261
+ }
4262
+ },
4263
+ h5: {
4264
+ fontFamily: "Nunito",
4265
+ fontSize: 18,
4266
+ fontWeight: 600,
4267
+ letterSpacing: 0,
4268
+ lineHeight: "24px"
4269
+ },
4270
+ h4: {
4271
+ fontFamily: "Nunito",
4272
+ fontSize: 22,
4273
+ fontWeight: 600,
4274
+ lineHeight: "24px",
4275
+ letterSpacing: "0.25px"
4276
+ },
4277
+ h3: {
4278
+ fontFamily: "Nunito",
4279
+ fontSize: 28,
4280
+ fontWeight: 500,
4281
+ lineHeight: "32px",
4282
+ letterSpacing: 0
4283
+ },
4284
+ h2: {
4285
+ fontFamily: "Nunito",
4286
+ fontSize: 32,
4287
+ fontWeight: 400,
4288
+ lineHeight: "40px",
4289
+ letterSpacing: -0.5
4290
+ },
4291
+ h1: {
4292
+ fontFamily: "Nunito",
4293
+ fontSize: 40,
4294
+ fontWeight: 300,
4295
+ letterSpacing: -1.5,
4296
+ lineHeight: "48px"
4297
+ }
4298
+ };
4299
+
4300
+ // src/Theme/shadows.ts
4301
+ var shadows = [
4302
+ "none",
4303
+ "0px 1px 3px rgba(24, 39, 75, 0.12), 0px 1px 1px -1px rgba(24, 39, 75, 0.14), 0px 2px 1px -2px rgba(24, 39, 75, 0.2)",
4304
+ "0px 1px 5px rgba(24, 39, 75, 0.12), 0px 2px 2px rgba(24, 39, 75, 0.14), 0px 3px 1px -2px rgba(24, 39, 75, 0.2)",
4305
+ "0px 1px 8px rgba(24, 39, 75, 0.12), 0px 3px 4px rgba(24, 39, 75, 0.14), 0px 3px 3px -2px rgba(24, 39, 75, 0.2)",
4306
+ "0px 2px 4px -1px rgba(24, 39, 75, 0.2), 0px 4px 5px rgba(24, 39, 75, 0.14), 0px 1px 10px rgba(24, 39, 75, 0.12)",
4307
+ "0px 3px 5px -1px rgba(24, 39, 75, 0.2), 0px 5px 8px rgba(24, 39, 75, 0.14), 0px 1px 14px rgba(24, 39, 75, 0.12)",
4308
+ "0px 3px 5px -1px rgba(24, 39, 75, 0.2), 0px 6px 10px rgba(24, 39, 75, 0.14), 0px 1px 18px rgba(24, 39, 75, 0.12)",
4309
+ "0px 4px 5px -2px rgba(24, 39, 75, 0.2), 0px 7px 10px 1px rgba(24, 39, 75, 0.14), 0px 2px 16px 1px rgba(24, 39, 75, 0.12)",
4310
+ "0px 5px 5px -3px rgba(24, 39, 75, 0.2), 0px 8px 10px 1px rgba(24, 39, 75, 0.14), 0px 3px 14px 2px rgba(24, 39, 75, 0.12)",
4311
+ "0px 5px 6px -3px rgba(24, 39, 75, 0.2), 0px 9px 12px 1px rgba(24, 39, 75, 0.14), 0px 3px 16px 2px rgba(24, 39, 75, 0.12)",
4312
+ "0px 6px 6px -3px rgba(24, 39, 75, 0.2), 0px 10px 14px 1px rgba(24, 39, 75, 0.14), 0px 4px 18px 3px rgba(24, 39, 75, 0.12)",
4313
+ "0px 6px 7px -4px rgba(24, 39, 75, 0.2), 0px 11px 15px 1px rgba(24, 39, 75, 0.14), 0px 4px 20px 3px rgba(24, 39, 75, 0.12)",
4314
+ "0px 7px 8px -4px rgba(24, 39, 75, 0.2), 0px 12px 17px 2px rgba(24, 39, 75, 0.14), 0px 5px 22px 4px rgba(24, 39, 75, 0.12)",
4315
+ "0px 7px 8px -4px rgba(24, 39, 75, 0.2), 0px 13px 19px 2px rgba(24, 39, 75, 0.14), 0px 5px 24px 4px rgba(24, 39, 75, 0.12)",
4316
+ "0px 7px 9px -4px rgba(24, 39, 75, 0.2), 0px 14px 21px 2px rgba(24, 39, 75, 0.14), 0px 5px 26px 4px rgba(24, 39, 75, 0.12)",
4317
+ "0px 8px 9px -5px rgba(24, 39, 75, 0.2), 0px 15px 22px 2px rgba(24, 39, 75, 0.14), 0px 6px 28px 5px rgba(24, 39, 75, 0.12)",
4318
+ "0px 8px 10px -5px rgba(24, 39, 75, 0.2), 0px 16px 24px 2px rgba(24, 39, 75, 0.14), 0px 6px 30px 5px rgba(24, 39, 75, 0.12)",
4319
+ "0px 8px 11px -5px rgba(24, 39, 75, 0.2), 0px 17px 26px 2px rgba(24, 39, 75, 0.14), 0px 6px 32px 5px rgba(24, 39, 75, 0.12)",
4320
+ "0px 9px 11px -5px rgba(24, 39, 75, 0.2), 0px 18px 28px 2px rgba(24, 39, 75, 0.14), 0px 7px 34px 6px rgba(24, 39, 75, 0.12)",
4321
+ "0px 9px 12px -6px rgba(24, 39, 75, 0.2), 0px 19px 29px 2px rgba(24, 39, 75, 0.14), 0px 7px 36px 6px rgba(24, 39, 75, 0.12)",
4322
+ "0px 10px 13px -6px rgba(24, 39, 75, 0.2), 0px 20px 31px 3px rgba(24, 39, 75, 0.14), 0px 8px 38px 7px rgba(24, 39, 75, 0.12)",
4323
+ "0px 10px 13px -6px rgba(24, 39, 75, 0.2), 0px 21px 33px 3px rgba(24, 39, 75, 0.14), 0px 8px 40px 7px rgba(24, 39, 75, 0.12)",
4324
+ "0px 10px 14px -6px rgba(24, 39, 75, 0.2), 0px 22px 35px 3px rgba(24, 39, 75, 0.14), 0px 8px 42px 7px rgba(24, 39, 75, 0.12)",
4325
+ "0px 11px 14px -7px rgba(24, 39, 75, 0.2), 0px 23px 36px 3px rgba(24, 39, 75, 0.14), 0px 9px 44px 8px rgba(24, 39, 75, 0.12)",
4326
+ "0px 11px 15px -7px rgba(24, 39, 75, 0.2), 0px 24px 38px 3px rgba(24, 39, 75, 0.14), 0px 9px 46px 8px rgba(24, 39, 75, 0.12)"
4327
+ ];
4328
+
4329
+ // src/Theme/theme.ts
4330
+ var BasicTheme = {
4331
+ components,
4332
+ typography,
4333
+ spacing: 8,
4334
+ mixins,
4335
+ breakpoints,
4336
+ shadows
4337
+ };
4338
+ var ERPTheme = __spreadValues({
4339
+ palette: paletteERP
4340
+ }, BasicTheme);
4341
+ var ADPROTheme = __spreadValues({
4342
+ palette: paletteADPRO
4343
+ }, BasicTheme);
4344
+ var ADCTheme = __spreadValues({
4345
+ palette: paletteADC
4346
+ }, BasicTheme);
4347
+
4348
+ // src/Theme/index.ts
4349
+ var SincoTheme = (0, import_styles3.createTheme)(__spreadValues({}, ERPTheme));
4350
+ var AdproSincoTheme = (0, import_styles3.createTheme)(__spreadValues({}, ADPROTheme));
4351
+ var ADCSincoTheme = (0, import_styles3.createTheme)(__spreadValues({}, ADCTheme));
4352
+ // Annotate the CommonJS export names for ESM import in node:
4353
+ 0 && (module.exports = {
4354
+ ADCSincoTheme,
4355
+ AdproSincoTheme,
4356
+ EmptyState,
4357
+ FooterAction,
4358
+ MultiSelect,
4359
+ PageHeader,
4360
+ SCAutocomplete,
4361
+ SCCalendarSwipeable,
4362
+ SCDataGrid,
4363
+ SCDataGridInitial,
4364
+ SCDateRange,
4365
+ SCDialog,
4366
+ SCDrawer,
4367
+ SCMenu,
4368
+ SCModal,
4369
+ SCSelect,
4370
+ SCTabs,
4371
+ SCTextArea,
4372
+ SCTextField,
4373
+ SCToastNotification,
4374
+ SincoTheme,
4375
+ ToastProgress,
4376
+ capitalize,
4377
+ getButtonColor,
4378
+ getIcon,
4379
+ getIconComponent,
4380
+ getIconMultiSelect,
4381
+ getModalColor,
4382
+ modalStateConfig,
4383
+ useFilteredItems,
4384
+ useMultiSelectHandlers,
4385
+ useProgress
4386
+ });
4387
+ //# sourceMappingURL=index.cjs.map