wcz-test 4.6.0 → 4.6.1
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.d.ts +2 -8
- package/dist/index.js +89 -85
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -13,7 +13,6 @@ import * as _tanstack_react_form from '@tanstack/react-form';
|
|
|
13
13
|
import * as _tanstack_form_core from '@tanstack/form-core';
|
|
14
14
|
export { default as useLocalStorageState } from 'use-local-storage-state';
|
|
15
15
|
export { useTranslation } from 'react-i18next';
|
|
16
|
-
import { TFunction } from 'i18next';
|
|
17
16
|
export { t } from 'i18next';
|
|
18
17
|
import * as _tanstack_react_query from '@tanstack/react-query';
|
|
19
18
|
import { DefinedInitialDataOptions, UseMutationOptions } from '@tanstack/react-query';
|
|
@@ -117,7 +116,7 @@ interface RouterErrorProps {
|
|
|
117
116
|
}
|
|
118
117
|
declare const RouterError: FC<RouterErrorProps>;
|
|
119
118
|
|
|
120
|
-
interface NavigationPageItem extends Pick<LinkOptions, "to"
|
|
119
|
+
interface NavigationPageItem extends Partial<Pick<LinkOptions, "to" | "href" | "params" | "search">> {
|
|
121
120
|
title: string;
|
|
122
121
|
icon: React.ReactNode;
|
|
123
122
|
children?: Array<NavigationItem>;
|
|
@@ -341,11 +340,6 @@ interface User {
|
|
|
341
340
|
category: string;
|
|
342
341
|
}
|
|
343
342
|
|
|
344
|
-
interface NavigationParams {
|
|
345
|
-
user: User;
|
|
346
|
-
t: TFunction<"translation", undefined>;
|
|
347
|
-
}
|
|
348
|
-
|
|
349
343
|
interface EmailAttachment {
|
|
350
344
|
appName: string;
|
|
351
345
|
subId: string;
|
|
@@ -423,4 +417,4 @@ interface Department {
|
|
|
423
417
|
manager: Employee;
|
|
424
418
|
}
|
|
425
419
|
|
|
426
|
-
export { ChipInputCell, type Department, type DialogProps, Dropzone, EditableColumnHeader, type Email, type EmailAttachment, type Employee, EmployeeCategoryGroup, EmployeeStatus, type FileMeta, FileViewer, LayoutProvider, type Navigation,
|
|
420
|
+
export { ChipInputCell, type Department, type DialogProps, Dropzone, EditableColumnHeader, type Email, type EmailAttachment, type Employee, EmployeeCategoryGroup, EmployeeStatus, type FileMeta, FileViewer, LayoutProvider, type Navigation, PageHeader, Platform, RouterButton, RouterError, RouterGridActionsCellItem, RouterIconButton, RouterLink, RouterListItemButton, RouterNotFound, RouterTab, TableContainer, TypographyWithIcon, type User, rootRouteHead, useDeleteFile, useDeleteFiles, useDialogs, useDownloadFile, useFieldContext, useFormContext, useGetFile, useGetFileMetas, useGetFileThumbnail, useLayoutForm, useOpenFile, useUpdateFileMeta, useUploadFile, wczApiClient, withLayoutForm };
|
package/dist/index.js
CHANGED
|
@@ -1039,14 +1039,17 @@ var TypographyWithIcon = ({ startIcon, endIcon, children, sx, gutterBottom, ...p
|
|
|
1039
1039
|
};
|
|
1040
1040
|
|
|
1041
1041
|
// src/components/core/PageHeader.tsx
|
|
1042
|
-
import {
|
|
1043
|
-
import { jsx as jsx2 } from "react/jsx-runtime";
|
|
1042
|
+
import { Box, Stack as Stack2, Typography as Typography2 } from "@mui/material";
|
|
1043
|
+
import { jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
1044
1044
|
var PageHeader = ({ title, action, sx }) => {
|
|
1045
|
-
return /* @__PURE__ */
|
|
1045
|
+
return /* @__PURE__ */ jsxs2(Stack2, { direction: "row", justifyContent: "space-between", alignItems: "center", sx: { ...sx }, children: [
|
|
1046
|
+
/* @__PURE__ */ jsx2(Typography2, { variant: "h4", fontWeight: 600, children: title }),
|
|
1047
|
+
action && /* @__PURE__ */ jsx2(Box, { children: action })
|
|
1048
|
+
] });
|
|
1046
1049
|
};
|
|
1047
1050
|
|
|
1048
1051
|
// src/components/core/TableContainer.tsx
|
|
1049
|
-
import { Box } from "@mui/material";
|
|
1052
|
+
import { Box as Box2 } from "@mui/material";
|
|
1050
1053
|
import { useEffect, useRef, useState } from "react";
|
|
1051
1054
|
import { jsx as jsx3 } from "react/jsx-runtime";
|
|
1052
1055
|
var TableContainer = ({ children, sx, ...props }) => {
|
|
@@ -1073,7 +1076,7 @@ var TableContainer = ({ children, sx, ...props }) => {
|
|
|
1073
1076
|
};
|
|
1074
1077
|
}, []);
|
|
1075
1078
|
return /* @__PURE__ */ jsx3(
|
|
1076
|
-
|
|
1079
|
+
Box2,
|
|
1077
1080
|
{
|
|
1078
1081
|
ref: reference,
|
|
1079
1082
|
sx: {
|
|
@@ -1085,7 +1088,7 @@ var TableContainer = ({ children, sx, ...props }) => {
|
|
|
1085
1088
|
},
|
|
1086
1089
|
height,
|
|
1087
1090
|
...props,
|
|
1088
|
-
children: /* @__PURE__ */ jsx3(
|
|
1091
|
+
children: /* @__PURE__ */ jsx3(Box2, { sx: (theme) => ({
|
|
1089
1092
|
flex: 1,
|
|
1090
1093
|
minHeight: 0,
|
|
1091
1094
|
height: "100%",
|
|
@@ -1117,7 +1120,7 @@ import CloudUpload from "@mui/icons-material/CloudUpload";
|
|
|
1117
1120
|
import { Paper, Typography as Typography3, useTheme } from "@mui/material";
|
|
1118
1121
|
import { useDropzone } from "react-dropzone";
|
|
1119
1122
|
import { useTranslation } from "react-i18next";
|
|
1120
|
-
import { jsx as jsx4, jsxs as
|
|
1123
|
+
import { jsx as jsx4, jsxs as jsxs3 } from "react/jsx-runtime";
|
|
1121
1124
|
var baseStyle = {
|
|
1122
1125
|
flex: 1,
|
|
1123
1126
|
display: "flex",
|
|
@@ -1141,7 +1144,7 @@ var Dropzone = ({ sx, ...props }) => {
|
|
|
1141
1144
|
...isDragAccept ? { borderColor: theme.palette.success.main } : {},
|
|
1142
1145
|
...isDragReject ? { borderColor: theme.palette.error.main } : {}
|
|
1143
1146
|
};
|
|
1144
|
-
return /* @__PURE__ */
|
|
1147
|
+
return /* @__PURE__ */ jsxs3(Paper, { variant: "outlined", ...getRootProps({ style }), sx, children: [
|
|
1145
1148
|
/* @__PURE__ */ jsx4("input", { ...getInputProps(), style: { display: "none" } }),
|
|
1146
1149
|
/* @__PURE__ */ jsx4(CloudUpload, {}),
|
|
1147
1150
|
/* @__PURE__ */ jsx4(Typography3, { children: t2("Layout.File.DragSomeFilesHereOrClickToSelectThem") })
|
|
@@ -1153,7 +1156,7 @@ import { useState as useState5 } from "react";
|
|
|
1153
1156
|
|
|
1154
1157
|
// src/components/file/fileViewer/FileViewerGrid.tsx
|
|
1155
1158
|
import MoreVert from "@mui/icons-material/MoreVert";
|
|
1156
|
-
import { Box as
|
|
1159
|
+
import { Box as Box3, IconButton, ImageListItem, ImageListItemBar, Stack as Stack4, Tooltip } from "@mui/material";
|
|
1157
1160
|
import { grey } from "@mui/material/colors";
|
|
1158
1161
|
import { Fragment, useEffect as useEffect2, useState as useState3 } from "react";
|
|
1159
1162
|
|
|
@@ -1184,10 +1187,10 @@ import { createContext as createContext2 } from "react";
|
|
|
1184
1187
|
var DialogsContext = createContext2({});
|
|
1185
1188
|
|
|
1186
1189
|
// src/hooks/DialogsHooks.tsx
|
|
1187
|
-
import { jsx as jsx5, jsxs as
|
|
1190
|
+
import { jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
1188
1191
|
function AlertDialog({ open, payload, onClose }) {
|
|
1189
1192
|
const { t: t2 } = useTranslation2();
|
|
1190
|
-
return /* @__PURE__ */
|
|
1193
|
+
return /* @__PURE__ */ jsxs4(Dialog, { maxWidth: "xs", fullWidth: true, open, onClose: () => onClose(), children: [
|
|
1191
1194
|
/* @__PURE__ */ jsx5(DialogTitle, { children: payload.title ?? t2("Layout.Dialog.Alert") }),
|
|
1192
1195
|
/* @__PURE__ */ jsx5(DialogContent, { children: payload.message }),
|
|
1193
1196
|
/* @__PURE__ */ jsx5(DialogActions, { children: /* @__PURE__ */ jsx5(Button, { disabled: !open, onClick: () => onClose(), children: t2("Layout.Dialog.Confirm") }) })
|
|
@@ -1195,10 +1198,10 @@ function AlertDialog({ open, payload, onClose }) {
|
|
|
1195
1198
|
}
|
|
1196
1199
|
function ConfirmDialog({ open, payload, onClose }) {
|
|
1197
1200
|
const { t: t2 } = useTranslation2();
|
|
1198
|
-
return /* @__PURE__ */
|
|
1201
|
+
return /* @__PURE__ */ jsxs4(Dialog, { maxWidth: "xs", fullWidth: true, open, onClose: () => onClose(false), children: [
|
|
1199
1202
|
/* @__PURE__ */ jsx5(DialogTitle, { children: payload.title ?? t2("Layout.Dialog.Confirm") }),
|
|
1200
1203
|
/* @__PURE__ */ jsx5(DialogContent, { children: payload.message }),
|
|
1201
|
-
/* @__PURE__ */
|
|
1204
|
+
/* @__PURE__ */ jsxs4(DialogActions, { children: [
|
|
1202
1205
|
/* @__PURE__ */ jsx5(Button, { autoFocus: true, disabled: !open, onClick: () => onClose(false), children: payload.cancelText ?? t2("Layout.Dialog.Cancel") }),
|
|
1203
1206
|
/* @__PURE__ */ jsx5(Button, { disabled: !open, onClick: () => onClose(true), children: t2("Layout.Dialog.Confirm") })
|
|
1204
1207
|
] })
|
|
@@ -1223,12 +1226,12 @@ import { Upload as TusUpload } from "tus-js-client";
|
|
|
1223
1226
|
import { uuidv7 } from "uuidv7";
|
|
1224
1227
|
|
|
1225
1228
|
// src/components/core/AppTitle.tsx
|
|
1226
|
-
import { Chip, Stack as
|
|
1229
|
+
import { Chip, Stack as Stack3, Typography as Typography4 } from "@mui/material";
|
|
1227
1230
|
import { useRouterState } from "@tanstack/react-router";
|
|
1228
|
-
import { jsx as jsx6, jsxs as
|
|
1231
|
+
import { jsx as jsx6, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
1229
1232
|
var AppTitle = () => {
|
|
1230
1233
|
const title = useAppTitle();
|
|
1231
|
-
return /* @__PURE__ */
|
|
1234
|
+
return /* @__PURE__ */ jsxs5(Stack3, { direction: "row", alignItems: "center", spacing: 2, flexGrow: 1, children: [
|
|
1232
1235
|
/* @__PURE__ */ jsx6("img", { src: "/favicon-32x32.png", alt: "app-logo", loading: "lazy" }),
|
|
1233
1236
|
/* @__PURE__ */ jsx6(Typography4, { variant: "h6", children: title }),
|
|
1234
1237
|
import.meta.env.DEV && /* @__PURE__ */ jsx6(Chip, { size: "small", label: "TEST", color: "info" })
|
|
@@ -1443,7 +1446,7 @@ var useUploadFile = ({ subId, onSuccess, onError }) => {
|
|
|
1443
1446
|
};
|
|
1444
1447
|
|
|
1445
1448
|
// src/components/file/fileViewer/common/ActionsMenu.tsx
|
|
1446
|
-
import { jsx as jsx7, jsxs as
|
|
1449
|
+
import { jsx as jsx7, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
1447
1450
|
var ActionsMenu = ({ meta, menu, setMenu }) => {
|
|
1448
1451
|
const { t: t2 } = useTranslation3();
|
|
1449
1452
|
const { fileMetas, onDelete, actions } = useFile();
|
|
@@ -1475,12 +1478,12 @@ var ActionsMenu = ({ meta, menu, setMenu }) => {
|
|
|
1475
1478
|
anchorReference: "anchorPosition",
|
|
1476
1479
|
variant: "menu",
|
|
1477
1480
|
anchorPosition: menu === null ? void 0 : { top: menu.mouseY, left: menu.mouseX },
|
|
1478
|
-
children: /* @__PURE__ */
|
|
1479
|
-
actions?.download !== false && /* @__PURE__ */
|
|
1481
|
+
children: /* @__PURE__ */ jsxs6(List, { disablePadding: true, children: [
|
|
1482
|
+
actions?.download !== false && /* @__PURE__ */ jsxs6(ListItemButton, { onClick: handleOnDownload, disabled: isDownloading, children: [
|
|
1480
1483
|
/* @__PURE__ */ jsx7(ListItemIcon, { children: /* @__PURE__ */ jsx7(FileDownload, {}) }),
|
|
1481
1484
|
/* @__PURE__ */ jsx7(ListItemText, { children: t2("Layout.File.Download") })
|
|
1482
1485
|
] }),
|
|
1483
|
-
actions?.delete !== false && /* @__PURE__ */
|
|
1486
|
+
actions?.delete !== false && /* @__PURE__ */ jsxs6(ListItemButton, { onClick: handleOnDelete, disabled: isDeleting, children: [
|
|
1484
1487
|
/* @__PURE__ */ jsx7(ListItemIcon, { children: /* @__PURE__ */ jsx7(Delete, {}) }),
|
|
1485
1488
|
/* @__PURE__ */ jsx7(ListItemText, { children: t2("Layout.File.Delete") })
|
|
1486
1489
|
] })
|
|
@@ -1490,11 +1493,11 @@ var ActionsMenu = ({ meta, menu, setMenu }) => {
|
|
|
1490
1493
|
};
|
|
1491
1494
|
|
|
1492
1495
|
// src/components/file/fileViewer/FileViewerGrid.tsx
|
|
1493
|
-
import { jsx as jsx8, jsxs as
|
|
1496
|
+
import { jsx as jsx8, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
1494
1497
|
var IMAGE_SIZE = 150;
|
|
1495
1498
|
var FileViewerGrid = ({ sx, size, itemBar }) => {
|
|
1496
1499
|
const { fileMetas } = useFile();
|
|
1497
|
-
return /* @__PURE__ */ jsx8(
|
|
1500
|
+
return /* @__PURE__ */ jsx8(Stack4, { direction: "row", spacing: 1, sx: { overflow: "auto", ...sx }, children: fileMetas.map((fileMeta) => /* @__PURE__ */ jsx8(
|
|
1498
1501
|
GridFileViewerItem,
|
|
1499
1502
|
{
|
|
1500
1503
|
meta: fileMeta,
|
|
@@ -1536,10 +1539,10 @@ var GridFileViewerItem = ({ meta, size, itemBar }) => {
|
|
|
1536
1539
|
}
|
|
1537
1540
|
}
|
|
1538
1541
|
};
|
|
1539
|
-
return /* @__PURE__ */
|
|
1540
|
-
/* @__PURE__ */
|
|
1542
|
+
return /* @__PURE__ */ jsxs7(Fragment, { children: [
|
|
1543
|
+
/* @__PURE__ */ jsxs7(ImageListItem, { sx: { width: size ?? IMAGE_SIZE, height: size ?? IMAGE_SIZE }, onMouseEnter: handleOnMouseEnter, onMouseLeave: handleOnMouseLeave, children: [
|
|
1541
1544
|
/* @__PURE__ */ jsx8(
|
|
1542
|
-
|
|
1545
|
+
Box3,
|
|
1543
1546
|
{
|
|
1544
1547
|
component: "img",
|
|
1545
1548
|
src: source,
|
|
@@ -1552,7 +1555,7 @@ var GridFileViewerItem = ({ meta, size, itemBar }) => {
|
|
|
1552
1555
|
itemBar !== "hidden" && showItemBar && /* @__PURE__ */ jsx8(
|
|
1553
1556
|
ImageListItemBar,
|
|
1554
1557
|
{
|
|
1555
|
-
title: /* @__PURE__ */ jsx8(Tooltip, { title: meta.fileName, children: /* @__PURE__ */ jsx8(
|
|
1558
|
+
title: /* @__PURE__ */ jsx8(Tooltip, { title: meta.fileName, children: /* @__PURE__ */ jsx8(Box3, { children: meta.fileName }) }),
|
|
1556
1559
|
actionIcon: (actions?.download !== false || actions.delete !== false) && /* @__PURE__ */ jsx8(IconButton, { sx: { color: grey[100] }, onClick: openMenu, children: /* @__PURE__ */ jsx8(MoreVert, {}) })
|
|
1557
1560
|
}
|
|
1558
1561
|
)
|
|
@@ -1568,7 +1571,7 @@ import MoreVert2 from "@mui/icons-material/MoreVert";
|
|
|
1568
1571
|
import SmartDisplay from "@mui/icons-material/SmartDisplay";
|
|
1569
1572
|
import { IconButton as IconButton2, List as List2, ListItemButton as ListItemButton2, ListItemIcon as ListItemIcon2, ListItemText as ListItemText2 } from "@mui/material";
|
|
1570
1573
|
import { Fragment as Fragment2, useState as useState4 } from "react";
|
|
1571
|
-
import { jsx as jsx9, jsxs as
|
|
1574
|
+
import { jsx as jsx9, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
1572
1575
|
var FileViewerList = ({ sx }) => {
|
|
1573
1576
|
const { fileMetas } = useFile();
|
|
1574
1577
|
return /* @__PURE__ */ jsx9(List2, { dense: true, sx, children: fileMetas.map(
|
|
@@ -1619,8 +1622,8 @@ var ListFileViewerItem = ({ meta }) => {
|
|
|
1619
1622
|
}
|
|
1620
1623
|
}
|
|
1621
1624
|
};
|
|
1622
|
-
return /* @__PURE__ */
|
|
1623
|
-
/* @__PURE__ */
|
|
1625
|
+
return /* @__PURE__ */ jsxs8(Fragment2, { children: [
|
|
1626
|
+
/* @__PURE__ */ jsxs8(ListItemButton2, { onClick, children: [
|
|
1624
1627
|
/* @__PURE__ */ jsx9(ListItemIcon2, { children: icon() }),
|
|
1625
1628
|
/* @__PURE__ */ jsx9(ListItemText2, { primary: `${meta.fileName}.${meta.fileExtension}` }),
|
|
1626
1629
|
(actions?.download !== false || actions.delete !== false) && /* @__PURE__ */ jsx9(IconButton2, { edge: "end", onClick: openMenu, children: /* @__PURE__ */ jsx9(MoreVert2, {}) })
|
|
@@ -1631,9 +1634,9 @@ var ListFileViewerItem = ({ meta }) => {
|
|
|
1631
1634
|
|
|
1632
1635
|
// src/components/file/fileViewer/ImageViewer.tsx
|
|
1633
1636
|
import Close from "@mui/icons-material/Close";
|
|
1634
|
-
import { Box as
|
|
1637
|
+
import { Box as Box4, Dialog as Dialog2, Fab } from "@mui/material";
|
|
1635
1638
|
import { useEffect as useEffect3 } from "react";
|
|
1636
|
-
import { jsx as jsx10, jsxs as
|
|
1639
|
+
import { jsx as jsx10, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
1637
1640
|
var ImageViewer = ({ metaId }) => {
|
|
1638
1641
|
const { fileMetas, setImageId } = useFile();
|
|
1639
1642
|
const meta = fileMetas.find((m) => m.id === metaId);
|
|
@@ -1676,27 +1679,27 @@ var ImageViewer = ({ metaId }) => {
|
|
|
1676
1679
|
};
|
|
1677
1680
|
const onClose = () => setImageId("");
|
|
1678
1681
|
if (!metaId) return null;
|
|
1679
|
-
return /* @__PURE__ */
|
|
1680
|
-
/* @__PURE__ */ jsx10(
|
|
1682
|
+
return /* @__PURE__ */ jsxs9(Dialog2, { open: true, onClose, maxWidth: "xl", children: [
|
|
1683
|
+
/* @__PURE__ */ jsx10(Box4, { component: "img", src: source, alt: metaId, sx: { maxWidth: "100vw", maxHeight: { xs: "calc(100vh - 56px)", sm: "calc(100vh - 64px)" } } }),
|
|
1681
1684
|
/* @__PURE__ */ jsx10(Fab, { size: "medium", onClick: onClose, sx: { position: "fixed", top: 8, right: 8 }, children: /* @__PURE__ */ jsx10(Close, {}) })
|
|
1682
1685
|
] });
|
|
1683
1686
|
};
|
|
1684
1687
|
|
|
1685
1688
|
// src/components/file/FileViewer.tsx
|
|
1686
|
-
import { jsx as jsx11, jsxs as
|
|
1689
|
+
import { jsx as jsx11, jsxs as jsxs10 } from "react/jsx-runtime";
|
|
1687
1690
|
var FileViewer = ({ subId, onDelete, actions, children }) => {
|
|
1688
1691
|
const { data: fileMetas = [] } = useGetFileMetas(subId, { enabled: !!subId });
|
|
1689
1692
|
const [imageId, setImageId] = useState5("");
|
|
1690
1693
|
const components = { Grid: FileViewerGrid, List: FileViewerList };
|
|
1691
1694
|
if (fileMetas.length === 0) return null;
|
|
1692
|
-
return /* @__PURE__ */
|
|
1695
|
+
return /* @__PURE__ */ jsxs10(FileContext.Provider, { value: { fileMetas, onDelete, actions, setImageId }, children: [
|
|
1693
1696
|
children(components),
|
|
1694
1697
|
/* @__PURE__ */ jsx11(ImageViewer, { metaId: imageId })
|
|
1695
1698
|
] });
|
|
1696
1699
|
};
|
|
1697
1700
|
|
|
1698
1701
|
// src/components/data-grid/ChipInputCell.tsx
|
|
1699
|
-
import { Chip as Chip2, Stack as
|
|
1702
|
+
import { Chip as Chip2, Stack as Stack5 } from "@mui/material";
|
|
1700
1703
|
import { jsx as jsx12 } from "react/jsx-runtime";
|
|
1701
1704
|
var isArray = (value) => Array.isArray(value);
|
|
1702
1705
|
var ChipInputCell = ({ params, slotProps, getLabel }) => {
|
|
@@ -1706,7 +1709,7 @@ var ChipInputCell = ({ params, slotProps, getLabel }) => {
|
|
|
1706
1709
|
return value;
|
|
1707
1710
|
};
|
|
1708
1711
|
if (isArray(params.value))
|
|
1709
|
-
return /* @__PURE__ */ jsx12(
|
|
1712
|
+
return /* @__PURE__ */ jsx12(Stack5, { direction: "row", alignItems: "center", gap: 1, sx: { overflowX: "auto", height: "100%", width: params.colDef.computedWidth }, children: params.value.map(
|
|
1710
1713
|
(value, index) => /* @__PURE__ */ jsx12(Chip2, { label: getLabelValue(value), ...slotProps }, `${index + 1}-chip-input-cell`)
|
|
1711
1714
|
) });
|
|
1712
1715
|
return /* @__PURE__ */ jsx12(Chip2, { label: getLabelValue(params.value), ...slotProps });
|
|
@@ -1800,12 +1803,12 @@ var RouterListItemButton = (props) => {
|
|
|
1800
1803
|
};
|
|
1801
1804
|
|
|
1802
1805
|
// src/components/router/RouterNotFound.tsx
|
|
1803
|
-
import { Box as
|
|
1806
|
+
import { Box as Box5, Divider, Typography as Typography5 } from "@mui/material";
|
|
1804
1807
|
import { useTranslation as useTranslation4 } from "react-i18next";
|
|
1805
|
-
import { jsx as jsx20, jsxs as
|
|
1808
|
+
import { jsx as jsx20, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
1806
1809
|
function RouterNotFound() {
|
|
1807
1810
|
const { t: t2 } = useTranslation4();
|
|
1808
|
-
return /* @__PURE__ */ jsx20(
|
|
1811
|
+
return /* @__PURE__ */ jsx20(Box5, { height: "100vh", display: "flex", flexDirection: "column", alignItems: "center", justifyContent: "center", textAlign: "center", px: 2, children: /* @__PURE__ */ jsxs11(Box5, { display: "flex", alignItems: "center", mb: 4, children: [
|
|
1809
1812
|
/* @__PURE__ */ jsx20(Typography5, { variant: "h3", component: "span", fontWeight: 500, sx: { lineHeight: 1 }, children: "404" }),
|
|
1810
1813
|
/* @__PURE__ */ jsx20(Divider, { orientation: "vertical", flexItem: true, sx: { mx: 3 } }),
|
|
1811
1814
|
/* @__PURE__ */ jsx20(Typography5, { variant: "h5", component: "span", children: t2("Layout.ThisPageCouldNotBeFound") })
|
|
@@ -1813,10 +1816,10 @@ function RouterNotFound() {
|
|
|
1813
1816
|
}
|
|
1814
1817
|
|
|
1815
1818
|
// src/components/router/RouterError.tsx
|
|
1816
|
-
import { Box as
|
|
1817
|
-
import { jsx as jsx21, jsxs as
|
|
1819
|
+
import { Box as Box6, Divider as Divider2, Typography as Typography6 } from "@mui/material";
|
|
1820
|
+
import { jsx as jsx21, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
1818
1821
|
var RouterError = ({ error }) => {
|
|
1819
|
-
return /* @__PURE__ */ jsx21(
|
|
1822
|
+
return /* @__PURE__ */ jsx21(Box6, { height: "100vh", display: "flex", flexDirection: "column", alignItems: "center", justifyContent: "center", textAlign: "center", px: 2, children: /* @__PURE__ */ jsxs12(Box6, { display: "flex", alignItems: "center", mb: 4, children: [
|
|
1820
1823
|
/* @__PURE__ */ jsx21(Typography6, { variant: "h3", component: "span", fontWeight: 500, sx: { lineHeight: 1 }, children: error.name || "500" }),
|
|
1821
1824
|
/* @__PURE__ */ jsx21(Divider2, { orientation: "vertical", flexItem: true, sx: { mx: 3 } }),
|
|
1822
1825
|
/* @__PURE__ */ jsx21(Typography6, { variant: "h5", component: "span", children: error.message })
|
|
@@ -2593,7 +2596,7 @@ import { cs, en } from "zod/locales";
|
|
|
2593
2596
|
|
|
2594
2597
|
// src/providers/DialogsProvider.tsx
|
|
2595
2598
|
import { useCallback, useId, useMemo as useMemo3, useRef as useRef3, useState as useState6 } from "react";
|
|
2596
|
-
import { jsx as jsx22, jsxs as
|
|
2599
|
+
import { jsx as jsx22, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
2597
2600
|
function DialogsProvider({ children, unmountAfter = 1e3 }) {
|
|
2598
2601
|
const [stack, setStack] = useState6([]);
|
|
2599
2602
|
const keyPrefix = useId();
|
|
@@ -2645,7 +2648,7 @@ function DialogsProvider({ children, unmountAfter = 1e3 }) {
|
|
|
2645
2648
|
return dialog;
|
|
2646
2649
|
});
|
|
2647
2650
|
const contextValue = useMemo3(() => ({ open: requestDialog, close: closeDialog }), [requestDialog, closeDialog]);
|
|
2648
|
-
return /* @__PURE__ */
|
|
2651
|
+
return /* @__PURE__ */ jsxs13(DialogsContext.Provider, { value: contextValue, children: [
|
|
2649
2652
|
children,
|
|
2650
2653
|
stack.map(({ key, open, Component: Component7, payload, promise }) => /* @__PURE__ */ jsx22(
|
|
2651
2654
|
Component7,
|
|
@@ -2678,7 +2681,7 @@ i18n.use(HttpBackend).use(LanguageDetector).use(initReactI18next).init({
|
|
|
2678
2681
|
// src/components/core/Layout.tsx
|
|
2679
2682
|
import Menu3 from "@mui/icons-material/Menu";
|
|
2680
2683
|
import MenuOpen from "@mui/icons-material/MenuOpen";
|
|
2681
|
-
import { AppBar, Box as
|
|
2684
|
+
import { AppBar, Box as Box10, CssBaseline, IconButton as IconButton5, InitColorSchemeScript, LinearProgress, Toolbar } from "@mui/material";
|
|
2682
2685
|
import { styled as styled2 } from "@mui/material/styles";
|
|
2683
2686
|
import { useIsFetching, useIsMutating } from "@tanstack/react-query";
|
|
2684
2687
|
import { Fragment as Fragment7 } from "react";
|
|
@@ -2686,7 +2689,7 @@ import useLocalStorageState from "use-local-storage-state";
|
|
|
2686
2689
|
|
|
2687
2690
|
// src/components/core/navigation/NavigationRail.tsx
|
|
2688
2691
|
import { useMediaQuery } from "@mui/material";
|
|
2689
|
-
import
|
|
2692
|
+
import Box8 from "@mui/material/Box";
|
|
2690
2693
|
import Drawer from "@mui/material/Drawer";
|
|
2691
2694
|
import { useTheme as useTheme2 } from "@mui/material/styles";
|
|
2692
2695
|
import { useNavigate, useRouterState as useRouterState2 } from "@tanstack/react-router";
|
|
@@ -2700,7 +2703,7 @@ import { Fragment as Fragment5, useEffect as useEffect5, useState as useState8 }
|
|
|
2700
2703
|
// src/components/core/navigation/NavigationListItem.tsx
|
|
2701
2704
|
import ExpandMoreIcon from "@mui/icons-material/ExpandMore";
|
|
2702
2705
|
import Avatar from "@mui/material/Avatar";
|
|
2703
|
-
import
|
|
2706
|
+
import Box7 from "@mui/material/Box";
|
|
2704
2707
|
import Popper from "@mui/material/Popper";
|
|
2705
2708
|
import ListItem from "@mui/material/ListItem";
|
|
2706
2709
|
import ListItemButton4 from "@mui/material/ListItemButton";
|
|
@@ -2711,7 +2714,7 @@ import { styled } from "@mui/material/styles";
|
|
|
2711
2714
|
import Typography7 from "@mui/material/Typography";
|
|
2712
2715
|
import { Fragment as Fragment3, useMemo as useMemo4, useState as useState7 } from "react";
|
|
2713
2716
|
import { Collapse } from "@mui/material";
|
|
2714
|
-
import { Fragment as Fragment4, jsx as jsx23, jsxs as
|
|
2717
|
+
import { Fragment as Fragment4, jsx as jsx23, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
2715
2718
|
var ICON_SIZE = 34;
|
|
2716
2719
|
var StyledNavButton = styled(ListItemButton4)(({ theme }) => ({
|
|
2717
2720
|
borderRadius: 8,
|
|
@@ -2755,8 +2758,8 @@ var StyledRouterButton = styled(RouterListItemButton)(({ theme }) => ({
|
|
|
2755
2758
|
}));
|
|
2756
2759
|
var IconOrAvatar = ({ item, collapsed }) => {
|
|
2757
2760
|
if (item.icon || collapsed) {
|
|
2758
|
-
return /* @__PURE__ */
|
|
2759
|
-
/* @__PURE__ */
|
|
2761
|
+
return /* @__PURE__ */ jsxs14(Box7, { sx: collapsed ? { position: "absolute", left: "50%", top: "calc(50% - 6px)", transform: "translate(-50%, -50%)" } : {}, children: [
|
|
2762
|
+
/* @__PURE__ */ jsxs14(ListItemIcon3, { sx: { display: "flex", alignItems: "center", justifyContent: "center", minWidth: ICON_SIZE }, children: [
|
|
2760
2763
|
item.icon ?? null,
|
|
2761
2764
|
!item.icon && collapsed ? /* @__PURE__ */ jsx23(Avatar, { sx: { width: ICON_SIZE - 7, height: ICON_SIZE - 7, fontSize: 12 }, children: item.title }) : null
|
|
2762
2765
|
] }),
|
|
@@ -2837,7 +2840,7 @@ var NavigationListItem = ({ item, isOpen, selected, disabled, collapsed, isSideb
|
|
|
2837
2840
|
disabled,
|
|
2838
2841
|
sx: { px: 1.4, height: collapsed ? 60 : 48 }
|
|
2839
2842
|
};
|
|
2840
|
-
const buttonContent = /* @__PURE__ */
|
|
2843
|
+
const buttonContent = /* @__PURE__ */ jsxs14(Fragment4, { children: [
|
|
2841
2844
|
/* @__PURE__ */ jsx23(IconOrAvatar, { item, collapsed }),
|
|
2842
2845
|
!collapsed && /* @__PURE__ */ jsx23(
|
|
2843
2846
|
ListItemText3,
|
|
@@ -2849,7 +2852,7 @@ var NavigationListItem = ({ item, isOpen, selected, disabled, collapsed, isSideb
|
|
|
2849
2852
|
),
|
|
2850
2853
|
item.children ? /* @__PURE__ */ jsx23(ExpandMoreIcon, { sx: chevronSx }) : null
|
|
2851
2854
|
] });
|
|
2852
|
-
const listItem = /* @__PURE__ */
|
|
2855
|
+
const listItem = /* @__PURE__ */ jsxs14(
|
|
2853
2856
|
ListItem,
|
|
2854
2857
|
{
|
|
2855
2858
|
...item.children && collapsed ? {
|
|
@@ -2878,7 +2881,7 @@ var NavigationListItem = ({ item, isOpen, selected, disabled, collapsed, isSideb
|
|
|
2878
2881
|
]
|
|
2879
2882
|
}
|
|
2880
2883
|
);
|
|
2881
|
-
return /* @__PURE__ */
|
|
2884
|
+
return /* @__PURE__ */ jsxs14(Fragment3, { children: [
|
|
2882
2885
|
listItem,
|
|
2883
2886
|
item.children && !collapsed ? /* @__PURE__ */ jsx23(Collapse, { in: isOpen, timeout: "auto", unmountOnExit: true, children: renderNested?.(item.children) }) : null
|
|
2884
2887
|
] }, item.to);
|
|
@@ -2979,7 +2982,7 @@ var NavigationRail = ({ navigation, expanded, setExpanded }) => {
|
|
|
2979
2982
|
const theme = useTheme2();
|
|
2980
2983
|
const showPermanent = useMediaQuery(theme.breakpoints.up("sm"));
|
|
2981
2984
|
const drawerContent = (collapsed) => /* @__PURE__ */ jsx25(
|
|
2982
|
-
|
|
2985
|
+
Box8,
|
|
2983
2986
|
{
|
|
2984
2987
|
component: "nav",
|
|
2985
2988
|
sx: {
|
|
@@ -3037,10 +3040,10 @@ import Login from "@mui/icons-material/Login";
|
|
|
3037
3040
|
import Logout from "@mui/icons-material/Logout";
|
|
3038
3041
|
import SettingsBrightness from "@mui/icons-material/SettingsBrightness";
|
|
3039
3042
|
import Translate from "@mui/icons-material/Translate";
|
|
3040
|
-
import { Avatar as Avatar2, Box as
|
|
3043
|
+
import { Avatar as Avatar2, Box as Box9, IconButton as IconButton4, List as List4, ListItem as ListItem2, ListItemButton as ListItemButton5, ListItemIcon as ListItemIcon4, ListItemText as ListItemText4, ListSubheader as ListSubheader2, Menu as Menu2, Typography as Typography8, useColorScheme } from "@mui/material";
|
|
3041
3044
|
import { Fragment as Fragment6, useState as useState9 } from "react";
|
|
3042
3045
|
import { useTranslation as useTranslation5 } from "react-i18next";
|
|
3043
|
-
import { jsx as jsx26, jsxs as
|
|
3046
|
+
import { jsx as jsx26, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
3044
3047
|
var ToolbarAccount = () => {
|
|
3045
3048
|
const [anchorElement, setAnchorElement] = useState9();
|
|
3046
3049
|
const [tab, setTab] = useState9("settings");
|
|
@@ -3083,37 +3086,37 @@ var ToolbarAccount = () => {
|
|
|
3083
3086
|
setTimeout(() => setTab("settings"), 300);
|
|
3084
3087
|
};
|
|
3085
3088
|
const changeTab = (newTab) => () => setTab(newTab);
|
|
3086
|
-
const settings = /* @__PURE__ */
|
|
3087
|
-
/* @__PURE__ */
|
|
3089
|
+
const settings = /* @__PURE__ */ jsxs15(List4, { component: "nav", subheader: /* @__PURE__ */ jsx26(ListSubheader2, { sx: { backgroundColor: "transparent" }, children: t2("Layout.Settings") }), children: [
|
|
3090
|
+
/* @__PURE__ */ jsxs15(ListItemButton5, { onClick: changeTab("theme"), sx: { py: 0.3 }, children: [
|
|
3088
3091
|
/* @__PURE__ */ jsx26(ListItemIcon4, { children: /* @__PURE__ */ jsx26(Brightness4, {}) }),
|
|
3089
3092
|
/* @__PURE__ */ jsx26(ListItemText4, { primary: t2("Layout.Appearance"), secondary: getModeText() }),
|
|
3090
3093
|
/* @__PURE__ */ jsx26(ChevronRight, {})
|
|
3091
3094
|
] }),
|
|
3092
|
-
/* @__PURE__ */
|
|
3095
|
+
/* @__PURE__ */ jsxs15(ListItemButton5, { onClick: changeTab("language"), sx: { py: 0.3 }, children: [
|
|
3093
3096
|
/* @__PURE__ */ jsx26(ListItemIcon4, { children: /* @__PURE__ */ jsx26(Translate, {}) }),
|
|
3094
3097
|
/* @__PURE__ */ jsx26(ListItemText4, { primary: t2("Layout.Language"), secondary: i18n2.resolvedLanguage === "en" ? "English" : "\u010Ce\u0161tina" }),
|
|
3095
3098
|
/* @__PURE__ */ jsx26(ChevronRight, {})
|
|
3096
3099
|
] })
|
|
3097
3100
|
] });
|
|
3098
|
-
const theme = /* @__PURE__ */
|
|
3101
|
+
const theme = /* @__PURE__ */ jsxs15(List4, { subheader: /* @__PURE__ */ jsxs15(ListSubheader2, { onClick: changeTab("settings"), sx: { backgroundColor: "transparent", display: "flex", alignItems: "center", px: 1, cursor: "pointer" }, children: [
|
|
3099
3102
|
/* @__PURE__ */ jsx26(IconButton4, { size: "small", sx: { mr: 0.5 }, children: /* @__PURE__ */ jsx26(ArrowBack, { fontSize: "small" }) }),
|
|
3100
3103
|
" ",
|
|
3101
3104
|
t2("Layout.Appearance")
|
|
3102
3105
|
] }), children: [
|
|
3103
|
-
/* @__PURE__ */
|
|
3106
|
+
/* @__PURE__ */ jsxs15(ListItemButton5, { onClick: changeMode("light"), disabled: mode === "light", children: [
|
|
3104
3107
|
/* @__PURE__ */ jsx26(ListItemIcon4, { children: /* @__PURE__ */ jsx26(LightMode, {}) }),
|
|
3105
3108
|
/* @__PURE__ */ jsx26(ListItemText4, { primary: t2("Layout.Light") })
|
|
3106
3109
|
] }),
|
|
3107
|
-
/* @__PURE__ */
|
|
3110
|
+
/* @__PURE__ */ jsxs15(ListItemButton5, { onClick: changeMode("dark"), disabled: mode === "dark", children: [
|
|
3108
3111
|
/* @__PURE__ */ jsx26(ListItemIcon4, { children: /* @__PURE__ */ jsx26(DarkMode, {}) }),
|
|
3109
3112
|
/* @__PURE__ */ jsx26(ListItemText4, { primary: t2("Layout.Dark") })
|
|
3110
3113
|
] }),
|
|
3111
|
-
/* @__PURE__ */
|
|
3114
|
+
/* @__PURE__ */ jsxs15(ListItemButton5, { onClick: changeMode("system"), disabled: mode === "system", children: [
|
|
3112
3115
|
/* @__PURE__ */ jsx26(ListItemIcon4, { children: /* @__PURE__ */ jsx26(SettingsBrightness, {}) }),
|
|
3113
3116
|
/* @__PURE__ */ jsx26(ListItemText4, { primary: t2("Layout.System") })
|
|
3114
3117
|
] })
|
|
3115
3118
|
] });
|
|
3116
|
-
const language = /* @__PURE__ */
|
|
3119
|
+
const language = /* @__PURE__ */ jsxs15(List4, { subheader: /* @__PURE__ */ jsxs15(ListSubheader2, { onClick: changeTab("settings"), sx: { backgroundColor: "transparent", display: "flex", alignItems: "center", px: 1, cursor: "pointer" }, children: [
|
|
3117
3120
|
/* @__PURE__ */ jsx26(IconButton4, { size: "small", sx: { mr: 0.5 }, children: /* @__PURE__ */ jsx26(ArrowBack, { fontSize: "small" }) }),
|
|
3118
3121
|
" ",
|
|
3119
3122
|
t2("Layout.Language")
|
|
@@ -3121,20 +3124,20 @@ var ToolbarAccount = () => {
|
|
|
3121
3124
|
/* @__PURE__ */ jsx26(ListItemButton5, { onClick: changeLanguage("en"), disabled: i18n2.resolvedLanguage === "en", children: /* @__PURE__ */ jsx26(ListItemText4, { primary: "English" }) }),
|
|
3122
3125
|
/* @__PURE__ */ jsx26(ListItemButton5, { onClick: changeLanguage("cs"), disabled: i18n2.resolvedLanguage === "cs", children: /* @__PURE__ */ jsx26(ListItemText4, { primary: "\u010Ce\u0161tina" }) })
|
|
3123
3126
|
] });
|
|
3124
|
-
return /* @__PURE__ */
|
|
3127
|
+
return /* @__PURE__ */ jsxs15(Fragment6, { children: [
|
|
3125
3128
|
/* @__PURE__ */ jsx26(IconButton4, { size: "small", edge: "end", onClick: openMenu, children: user.name ? /* @__PURE__ */ jsx26(Avatar2, { sx: { width: { xs: 32, sm: 40 }, height: { xs: 32, sm: 40 }, bgcolor: "primary.main" }, children: /* @__PURE__ */ jsx26(Typography8, { variant: "subtitle2", sx: { fontWeight: "bold", lineHeight: 0 }, children: usernameInitials() }) }) : /* @__PURE__ */ jsx26(AccountCircle, { fontSize: "large" }) }),
|
|
3126
|
-
/* @__PURE__ */ jsx26(Menu2, { anchorEl: anchorElement, open, onClose: closeMenu, children: /* @__PURE__ */
|
|
3127
|
-
/* @__PURE__ */ jsx26(List4, { children: user.name ? /* @__PURE__ */
|
|
3128
|
-
/* @__PURE__ */ jsx26(ListItem2, { children: /* @__PURE__ */ jsx26(ListItemText4, { primary: user.name, secondary: /* @__PURE__ */
|
|
3129
|
+
/* @__PURE__ */ jsx26(Menu2, { anchorEl: anchorElement, open, onClose: closeMenu, children: /* @__PURE__ */ jsxs15(Box9, { sx: { width: 240 }, children: [
|
|
3130
|
+
/* @__PURE__ */ jsx26(List4, { children: user.name ? /* @__PURE__ */ jsxs15(Fragment6, { children: [
|
|
3131
|
+
/* @__PURE__ */ jsx26(ListItem2, { children: /* @__PURE__ */ jsx26(ListItemText4, { primary: user.name, secondary: /* @__PURE__ */ jsxs15("span", { children: [
|
|
3129
3132
|
/* @__PURE__ */ jsx26("span", { children: user.employeeId }),
|
|
3130
3133
|
/* @__PURE__ */ jsx26("br", {}),
|
|
3131
3134
|
/* @__PURE__ */ jsx26("span", { children: user.department })
|
|
3132
3135
|
] }) }) }),
|
|
3133
|
-
/* @__PURE__ */
|
|
3136
|
+
/* @__PURE__ */ jsxs15(ListItemButton5, { onClick: () => console.log("Logout"), children: [
|
|
3134
3137
|
/* @__PURE__ */ jsx26(ListItemIcon4, { children: /* @__PURE__ */ jsx26(Logout, { color: "error" }) }),
|
|
3135
3138
|
/* @__PURE__ */ jsx26(ListItemText4, { primary: t2("Layout.Logout") })
|
|
3136
3139
|
] })
|
|
3137
|
-
] }) : /* @__PURE__ */
|
|
3140
|
+
] }) : /* @__PURE__ */ jsxs15(ListItemButton5, { onClick: () => console.log("Login"), children: [
|
|
3138
3141
|
/* @__PURE__ */ jsx26(ListItemIcon4, { children: /* @__PURE__ */ jsx26(Login, { color: "success" }) }),
|
|
3139
3142
|
/* @__PURE__ */ jsx26(ListItemText4, { primary: t2("Layout.LogIn") })
|
|
3140
3143
|
] }) }),
|
|
@@ -3146,7 +3149,7 @@ var ToolbarAccount = () => {
|
|
|
3146
3149
|
};
|
|
3147
3150
|
|
|
3148
3151
|
// src/components/core/Layout.tsx
|
|
3149
|
-
import { jsx as jsx27, jsxs as
|
|
3152
|
+
import { jsx as jsx27, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
3150
3153
|
var DrawerHeader = styled2("div")(({ theme }) => ({
|
|
3151
3154
|
display: "flex",
|
|
3152
3155
|
alignItems: "center",
|
|
@@ -3158,10 +3161,10 @@ var Layout = (props) => {
|
|
|
3158
3161
|
const [navigationOpen, setNavigationOpen] = useLocalStorageState("navigationOpen", { defaultServerValue: false });
|
|
3159
3162
|
const isFetching = !!useIsFetching();
|
|
3160
3163
|
const isMutating = !!useIsMutating();
|
|
3161
|
-
return /* @__PURE__ */
|
|
3164
|
+
return /* @__PURE__ */ jsxs16(Fragment7, { children: [
|
|
3162
3165
|
/* @__PURE__ */ jsx27(InitColorSchemeScript, {}),
|
|
3163
3166
|
/* @__PURE__ */ jsx27(CssBaseline, {}),
|
|
3164
|
-
/* @__PURE__ */
|
|
3167
|
+
/* @__PURE__ */ jsxs16(Box10, { sx: { display: "flex", height: "100dvh", maxHeight: "100dvh", overflow: "hidden", width: "100%" }, children: [
|
|
3165
3168
|
/* @__PURE__ */ jsx27(
|
|
3166
3169
|
AppBar,
|
|
3167
3170
|
{
|
|
@@ -3172,7 +3175,7 @@ var Layout = (props) => {
|
|
|
3172
3175
|
borderColor: theme.vars?.palette.divider,
|
|
3173
3176
|
boxShadow: "none"
|
|
3174
3177
|
}),
|
|
3175
|
-
children: /* @__PURE__ */
|
|
3178
|
+
children: /* @__PURE__ */ jsxs16(Toolbar, { children: [
|
|
3176
3179
|
props.navigation && /* @__PURE__ */ jsx27(
|
|
3177
3180
|
IconButton5,
|
|
3178
3181
|
{
|
|
@@ -3187,9 +3190,9 @@ var Layout = (props) => {
|
|
|
3187
3190
|
}
|
|
3188
3191
|
),
|
|
3189
3192
|
props.navigation && /* @__PURE__ */ jsx27(NavigationRail, { navigation: props.navigation, expanded: navigationOpen ?? false, setExpanded: setNavigationOpen }),
|
|
3190
|
-
/* @__PURE__ */
|
|
3193
|
+
/* @__PURE__ */ jsxs16(Box10, { component: "main", sx: { flexGrow: 1, display: "flex", flexDirection: "column", minWidth: 0, height: "100%", overflow: "hidden" }, children: [
|
|
3191
3194
|
/* @__PURE__ */ jsx27(DrawerHeader, {}),
|
|
3192
|
-
/* @__PURE__ */ jsx27(
|
|
3195
|
+
/* @__PURE__ */ jsx27(Box10, { sx: { flex: 1, overflow: "auto", position: "relative" }, children: props.children })
|
|
3193
3196
|
] })
|
|
3194
3197
|
] }),
|
|
3195
3198
|
(isFetching || isMutating) && /* @__PURE__ */ jsx27(LinearProgress, { sx: { position: "fixed", top: { xs: 56, sm: 64 }, left: 0, right: 0 } })
|
|
@@ -3970,6 +3973,7 @@ var LayoutProvider = ({ navigation, theme, children }) => {
|
|
|
3970
3973
|
const handler = () => {
|
|
3971
3974
|
z.config(default2.resolvedLanguage === "cs" ? cs() : en());
|
|
3972
3975
|
};
|
|
3976
|
+
handler();
|
|
3973
3977
|
default2.on("languageChanged", handler);
|
|
3974
3978
|
return () => {
|
|
3975
3979
|
default2.off("languageChanged", handler);
|
|
@@ -4026,11 +4030,11 @@ var FormAutocomplete = ({ textFieldProps, ...autocompleteProps }) => {
|
|
|
4026
4030
|
|
|
4027
4031
|
// src/components/form/FormCheckbox.tsx
|
|
4028
4032
|
import { Checkbox, FormControl, FormControlLabel, FormHelperText } from "@mui/material";
|
|
4029
|
-
import { jsx as jsx30, jsxs as
|
|
4033
|
+
import { jsx as jsx30, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
4030
4034
|
var FormCheckbox = (props) => {
|
|
4031
4035
|
const field = useFieldContext();
|
|
4032
4036
|
const { isTouched, hasError, helperText } = getFieldStatus(field);
|
|
4033
|
-
return /* @__PURE__ */
|
|
4037
|
+
return /* @__PURE__ */ jsxs17(FormControl, { component: "fieldset", children: [
|
|
4034
4038
|
/* @__PURE__ */ jsx30(
|
|
4035
4039
|
FormControlLabel,
|
|
4036
4040
|
{
|
|
@@ -4134,11 +4138,11 @@ var FormNumberField = ({ options, ...props }) => {
|
|
|
4134
4138
|
|
|
4135
4139
|
// src/components/form/FormRadioGroup.tsx
|
|
4136
4140
|
import { FormControl as FormControl2, FormControlLabel as FormControlLabel2, FormHelperText as FormHelperText2, FormLabel, Radio, RadioGroup } from "@mui/material";
|
|
4137
|
-
import { jsx as jsx34, jsxs as
|
|
4141
|
+
import { jsx as jsx34, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
4138
4142
|
var FormRadioGroup = ({ label, options, ...props }) => {
|
|
4139
4143
|
const field = useFieldContext();
|
|
4140
4144
|
const { isTouched, hasError, helperText } = getFieldStatus(field);
|
|
4141
|
-
return /* @__PURE__ */
|
|
4145
|
+
return /* @__PURE__ */ jsxs18(FormControl2, { component: "fieldset", children: [
|
|
4142
4146
|
label && /* @__PURE__ */ jsx34(FormLabel, { component: "legend", children: label }),
|
|
4143
4147
|
/* @__PURE__ */ jsx34(
|
|
4144
4148
|
RadioGroup,
|
|
@@ -4166,11 +4170,11 @@ var FormRadioGroup = ({ label, options, ...props }) => {
|
|
|
4166
4170
|
|
|
4167
4171
|
// src/components/form/FormSlider.tsx
|
|
4168
4172
|
import { FormControl as FormControl3, FormHelperText as FormHelperText3, FormLabel as FormLabel2, Slider } from "@mui/material";
|
|
4169
|
-
import { jsx as jsx35, jsxs as
|
|
4173
|
+
import { jsx as jsx35, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
4170
4174
|
var FormSlider = ({ label, ...props }) => {
|
|
4171
4175
|
const field = useFieldContext();
|
|
4172
4176
|
const { isTouched, hasError, helperText } = getFieldStatus(field);
|
|
4173
|
-
return /* @__PURE__ */
|
|
4177
|
+
return /* @__PURE__ */ jsxs19(FormControl3, { component: "fieldset", children: [
|
|
4174
4178
|
label && /* @__PURE__ */ jsx35(FormLabel2, { children: label }),
|
|
4175
4179
|
/* @__PURE__ */ jsx35(
|
|
4176
4180
|
Slider,
|
|
@@ -4212,11 +4216,11 @@ var FormSubmitButton = (props) => {
|
|
|
4212
4216
|
|
|
4213
4217
|
// src/components/form/FormSwitch.tsx
|
|
4214
4218
|
import { FormControl as FormControl4, FormControlLabel as FormControlLabel3, FormHelperText as FormHelperText4, Switch } from "@mui/material";
|
|
4215
|
-
import { jsx as jsx37, jsxs as
|
|
4219
|
+
import { jsx as jsx37, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
4216
4220
|
var FormSwitch = (props) => {
|
|
4217
4221
|
const field = useFieldContext();
|
|
4218
4222
|
const { isTouched, hasError, helperText } = getFieldStatus(field);
|
|
4219
|
-
return /* @__PURE__ */
|
|
4223
|
+
return /* @__PURE__ */ jsxs20(FormControl4, { component: "fieldset", children: [
|
|
4220
4224
|
/* @__PURE__ */ jsx37(
|
|
4221
4225
|
FormControlLabel3,
|
|
4222
4226
|
{
|