wcz-test 6.7.7 → 6.8.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/ApprovalStatus-C9HPyMiS.js +24 -0
- package/dist/ApprovalStatus-C9HPyMiS.js.map +1 -0
- package/dist/{chunk-4UULRYGW.js → DialogsHooks-BlUsVlfv.js} +7 -14
- package/dist/DialogsHooks-BlUsVlfv.js.map +1 -0
- package/dist/{chunk-MIVD2XWB.js → FileHooks-hWKTwLCr.js} +36 -46
- package/dist/FileHooks-hWKTwLCr.js.map +1 -0
- package/dist/{chunk-TME53DAF.js → FileMeta-G1oT3mYK.js} +3 -5
- package/dist/FileMeta-G1oT3mYK.js.map +1 -0
- package/dist/{chunk-ZMWQQXZT.js → RouterListItemButton-Cx7rXEfm.js} +6 -8
- package/dist/RouterListItemButton-Cx7rXEfm.js.map +1 -0
- package/dist/android-chrome-192x192.png +0 -0
- package/dist/android-chrome-512x512.png +0 -0
- package/dist/apple-touch-icon.png +0 -0
- package/dist/auth-client-D9snEe6B.js +79 -0
- package/dist/auth-client-D9snEe6B.js.map +1 -0
- package/dist/client-utils.d.ts +3 -702
- package/dist/client-utils.js +7 -17
- package/dist/client-utils.js.map +1 -1
- package/dist/components/core/AppTitle.d.ts +2 -0
- package/dist/components/core/Fullscreen.d.ts +3 -0
- package/dist/components/core/Layout.d.ts +8 -0
- package/dist/components/core/ToolbarAccount.d.ts +2 -0
- package/dist/components/core/TypographyWithIcon.d.ts +7 -0
- package/dist/components/core/navigation/NavigationList.d.ts +22 -0
- package/dist/components/core/navigation/NavigationListItem.d.ts +16 -0
- package/dist/components/core/navigation/NavigationRail.d.ts +12 -0
- package/dist/components/data-grid/ChipInputCell.d.ts +9 -0
- package/dist/components/data-grid/EditableColumnHeader.d.ts +2 -0
- package/dist/components/file/Dropzone.d.ts +8 -0
- package/dist/components/file/FileViewer.d.ts +20 -0
- package/dist/components/file/fileViewer/FileViewerGrid.d.ts +17 -0
- package/dist/components/file/fileViewer/FileViewerList.d.ts +12 -0
- package/dist/components/file/fileViewer/ImageViewer.d.ts +6 -0
- package/dist/components/file/fileViewer/common/ActionsMenu.d.ts +15 -0
- package/dist/components/form/FormAutocomplete.d.ts +7 -0
- package/dist/components/form/FormCheckbox.d.ts +7 -0
- package/dist/components/form/FormDatePicker.d.ts +8 -0
- package/dist/components/form/FormDateRangePicker.d.ts +8 -0
- package/dist/components/form/FormDateTimePicker.d.ts +8 -0
- package/dist/components/form/FormDateTimeRangePicker.d.ts +8 -0
- package/dist/components/form/FormNumberField.d.ts +9 -0
- package/dist/components/form/FormRadioGroup.d.ts +13 -0
- package/dist/components/form/FormSlider.d.ts +7 -0
- package/dist/components/form/FormSubmitButton.d.ts +4 -0
- package/dist/components/form/FormSwitch.d.ts +7 -0
- package/dist/components/form/FormTextField.d.ts +7 -0
- package/dist/components/form/FormTimePicker.d.ts +8 -0
- package/dist/components/form/FormTimeRangePicker.d.ts +8 -0
- package/dist/components/router/RouterButton.d.ts +6 -0
- package/dist/components/router/RouterError.d.ts +7 -0
- package/dist/components/router/RouterGridActionsCellItem.d.ts +6 -0
- package/dist/components/router/RouterIconButton.d.ts +6 -0
- package/dist/components/router/RouterLink.d.ts +6 -0
- package/dist/components/router/RouterListItemButton.d.ts +6 -0
- package/dist/components/router/RouterNotFound.d.ts +1 -0
- package/dist/components/router/RouterTab.d.ts +6 -0
- package/dist/components.d.ts +14 -89
- package/dist/components.js +124 -227
- package/dist/components.js.map +1 -1
- package/dist/contexts/DialogsContext.d.ts +6 -0
- package/dist/contexts/FileContext.d.ts +13 -0
- package/dist/env-CoxTjaDr.js +27 -0
- package/dist/env-CoxTjaDr.js.map +1 -0
- package/dist/env.d.ts +10 -0
- package/dist/favicon-16x16.png +0 -0
- package/dist/favicon-32x32.png +0 -0
- package/dist/favicon.ico +0 -0
- package/dist/favicon.png +0 -0
- package/dist/hooks/DialogsHooks.d.ts +42 -0
- package/dist/hooks/FormHooks.d.ts +52 -0
- package/dist/hooks/ThemeHook.d.ts +4 -0
- package/dist/hooks.d.ts +3 -159
- package/dist/hooks.js +56 -121
- package/dist/hooks.js.map +1 -1
- package/dist/index.d.ts +3 -36
- package/dist/index.js +173 -1882
- package/dist/index.js.map +1 -1
- package/dist/{client-utils.d.cts → lib/auth/auth-client.d.ts} +110 -126
- package/dist/lib/auth/auth.d.ts +24 -0
- package/dist/lib/db/index.d.ts +4 -0
- package/dist/lib/db/schemas/auth.d.ts +606 -0
- package/dist/{utils-ChipkRJ9.d.ts → lib/utils.d.ts} +11 -10
- package/dist/lib/vite-plugin.d.ts +2 -0
- package/dist/manifest.webmanifest +18 -0
- package/dist/models/Navigation.d.ts +18 -0
- package/dist/models/User.d.ts +8 -0
- package/dist/models/approval/Approval.d.ts +177 -0
- package/dist/models/approval/ApprovalEmployee.d.ts +7 -0
- package/dist/models/approval/ApprovalFlow.d.ts +49 -0
- package/dist/models/approval/ApprovalFlowStep.d.ts +29 -0
- package/dist/models/approval/ApprovalRequestType.d.ts +5 -0
- package/dist/models/approval/ApprovalStatus.d.ts +9 -0
- package/dist/models/approval/ApprovalStepResult.d.ts +11 -0
- package/dist/models/approval/StepApprovalOrder.d.ts +6 -0
- package/dist/models/email/Email.d.ts +13 -0
- package/dist/models/email/EmailAttachment.d.ts +6 -0
- package/dist/models/file/FileActions.d.ts +6 -0
- package/dist/{FileMeta-CC014fnB.d.cts → models/file/FileMeta.d.ts} +3 -6
- package/dist/models/peoplesoft/Department.d.ts +58 -0
- package/dist/models/peoplesoft/Employee.d.ts +46 -0
- package/dist/models/peoplesoft/EmployeeCategoryGroup.d.ts +6 -0
- package/dist/models/peoplesoft/EmployeeStatus.d.ts +6 -0
- package/dist/models.d.ts +25 -161
- package/dist/models.js +109 -160
- package/dist/models.js.map +1 -1
- package/dist/providers/DialogsProvider.d.ts +6 -0
- package/dist/providers/LayoutProvider.d.ts +11 -0
- package/dist/queries/Approval.d.ts +585 -0
- package/dist/queries/ApprovalHooks.d.ts +315 -0
- package/dist/queries/FileHooks.d.ts +151 -0
- package/dist/queries/PeopleSoftHooks.d.ts +537 -0
- package/dist/queries.d.ts +4 -1585
- package/dist/queries.js +59 -86
- package/dist/queries.js.map +1 -1
- package/dist/robots.txt +3 -0
- package/dist/server-utils.d.ts +2 -35
- package/dist/server-utils.js +13 -26
- package/dist/server-utils.js.map +1 -1
- package/dist/{chunk-2ROTNT7W.js → utils-DKyKGba7.js} +13 -18
- package/dist/utils-DKyKGba7.js.map +1 -0
- package/dist/utils.d.ts +1 -2
- package/dist/utils.js +3 -9
- package/dist/utils.js.map +1 -1
- package/dist/vite.d.ts +1 -5
- package/dist/vite.js +3 -6
- package/dist/vite.js.map +1 -1
- package/package.json +15 -23
- package/dist/Approval-CWQn-kah.d.cts +0 -284
- package/dist/Approval-CWQn-kah.d.ts +0 -284
- package/dist/FileMeta-CC014fnB.d.ts +0 -18
- package/dist/chunk-2ROTNT7W.js.map +0 -1
- package/dist/chunk-4FRZRIAO.js +0 -29
- package/dist/chunk-4FRZRIAO.js.map +0 -1
- package/dist/chunk-4UULRYGW.js.map +0 -1
- package/dist/chunk-5WRI5ZAA.js +0 -31
- package/dist/chunk-5WRI5ZAA.js.map +0 -1
- package/dist/chunk-CNDRHYQK.js +0 -883
- package/dist/chunk-CNDRHYQK.js.map +0 -1
- package/dist/chunk-DXXZZHAK.js +0 -28
- package/dist/chunk-DXXZZHAK.js.map +0 -1
- package/dist/chunk-MIVD2XWB.js.map +0 -1
- package/dist/chunk-TME53DAF.js.map +0 -1
- package/dist/chunk-ZMWQQXZT.js.map +0 -1
- package/dist/client-utils.cjs +0 -118
- package/dist/client-utils.cjs.map +0 -1
- package/dist/components.cjs +0 -802
- package/dist/components.cjs.map +0 -1
- package/dist/components.d.cts +0 -89
- package/dist/hooks.cjs +0 -534
- package/dist/hooks.cjs.map +0 -1
- package/dist/hooks.d.cts +0 -160
- package/dist/index.cjs +0 -3373
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.cts +0 -36
- package/dist/models.cjs +0 -330
- package/dist/models.cjs.map +0 -1
- package/dist/models.d.cts +0 -161
- package/dist/queries.cjs +0 -706
- package/dist/queries.cjs.map +0 -1
- package/dist/queries.d.cts +0 -1585
- package/dist/server-utils.cjs +0 -145
- package/dist/server-utils.cjs.map +0 -1
- package/dist/server-utils.d.cts +0 -36
- package/dist/utils-ChipkRJ9.d.cts +0 -49
- package/dist/utils.cjs +0 -81
- package/dist/utils.cjs.map +0 -1
- package/dist/utils.d.cts +0 -4
- package/dist/vite.cjs +0 -94
- package/dist/vite.cjs.map +0 -1
- package/dist/vite.d.cts +0 -5
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import z__default from "zod";
|
|
2
|
+
const ApprovalStepResult = z__default.enum([
|
|
3
|
+
"NotAvailable",
|
|
4
|
+
"FutureApproval",
|
|
5
|
+
"WaitingForApproval",
|
|
6
|
+
"Approved",
|
|
7
|
+
"Rejected",
|
|
8
|
+
"Skipped",
|
|
9
|
+
"Withdrawn",
|
|
10
|
+
"Cancelled"
|
|
11
|
+
]);
|
|
12
|
+
const ApprovalStatus = z__default.enum([
|
|
13
|
+
"WaitingForApproval",
|
|
14
|
+
"Approved",
|
|
15
|
+
"PartiallyApproved",
|
|
16
|
+
"Rejected",
|
|
17
|
+
"Withdrawn",
|
|
18
|
+
"Cancelled"
|
|
19
|
+
]);
|
|
20
|
+
export {
|
|
21
|
+
ApprovalStepResult as A,
|
|
22
|
+
ApprovalStatus as a
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=ApprovalStatus-C9HPyMiS.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ApprovalStatus-C9HPyMiS.js","sources":["../src/models/approval/ApprovalStepResult.ts","../src/models/approval/ApprovalStatus.ts"],"sourcesContent":["import z from \"zod\";\r\n\r\nexport const ApprovalStepResult = z.enum([\r\n \"NotAvailable\",\r\n \"FutureApproval\",\r\n \"WaitingForApproval\",\r\n \"Approved\",\r\n \"Rejected\",\r\n \"Skipped\",\r\n \"Withdrawn\",\r\n \"Cancelled\"\r\n]);","import z from \"zod\";\r\n\r\nexport const ApprovalStatus = z.enum([\r\n \"WaitingForApproval\",\r\n \"Approved\",\r\n \"PartiallyApproved\",\r\n \"Rejected\",\r\n \"Withdrawn\",\r\n \"Cancelled\"\r\n]);"],"names":["z"],"mappings":";AAEO,MAAM,qBAAqBA,WAAE,KAAK;AAAA,EACrC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ,CAAC;ACTM,MAAM,iBAAiBA,WAAE,KAAK;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ,CAAC;"}
|
|
@@ -1,14 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import { useContext } from "react";
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useEventCallback, Dialog, DialogTitle, DialogContent, DialogActions, Button } from "@mui/material";
|
|
3
|
+
import { createContext, useContext } from "react";
|
|
4
4
|
import { useTranslation } from "react-i18next";
|
|
5
|
-
|
|
6
|
-
// src/contexts/DialogsContext.ts
|
|
7
|
-
import { createContext } from "react";
|
|
8
|
-
var DialogsContext = createContext({});
|
|
9
|
-
|
|
10
|
-
// src/hooks/DialogsHooks.tsx
|
|
11
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
+
const DialogsContext = createContext({});
|
|
12
6
|
function AlertDialog({ open, payload, onClose }) {
|
|
13
7
|
const { t } = useTranslation();
|
|
14
8
|
return /* @__PURE__ */ jsxs(Dialog, { maxWidth: "xs", fullWidth: true, open, onClose: () => onClose(), disableRestoreFocus: true, children: [
|
|
@@ -38,9 +32,8 @@ function useDialogs() {
|
|
|
38
32
|
);
|
|
39
33
|
return { alert, confirm, open, close };
|
|
40
34
|
}
|
|
41
|
-
|
|
42
35
|
export {
|
|
43
|
-
DialogsContext,
|
|
44
|
-
useDialogs
|
|
36
|
+
DialogsContext as D,
|
|
37
|
+
useDialogs as u
|
|
45
38
|
};
|
|
46
|
-
//# sourceMappingURL=
|
|
39
|
+
//# sourceMappingURL=DialogsHooks-BlUsVlfv.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DialogsHooks-BlUsVlfv.js","sources":["../src/contexts/DialogsContext.ts","../src/hooks/DialogsHooks.tsx"],"sourcesContent":["import { createContext } from \"react\";\r\nimport type { CloseDialog, OpenDialog } from \"../hooks/DialogsHooks\";\r\n\r\nexport interface DialogsContextValue {\r\n open: OpenDialog;\r\n close: CloseDialog;\r\n}\r\n\r\nexport const DialogsContext = createContext<DialogsContextValue>({} as DialogsContextValue);","import { Button, Dialog, DialogActions, DialogContent, DialogTitle, useEventCallback } from \"@mui/material\";\r\nimport { useContext } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { DialogsContext } from \"../contexts/DialogsContext\";\r\nimport type { ReactNode } from \"react\";\r\n\r\nexport interface OpenDialogOptions<TResult> {\r\n onClose?: (result: TResult) => Promise<void>;\r\n}\r\n\r\nexport interface AlertOptions {\r\n title?: ReactNode;\r\n}\r\n\r\nexport interface ConfirmOptions {\r\n title?: ReactNode;\r\n cancelText?: ReactNode;\r\n}\r\n\r\nexport interface DialogProps<TPayload = undefined, TResult = void> {\r\n payload: TPayload;\r\n open: boolean;\r\n onClose: (result: TResult) => Promise<void>;\r\n}\r\n\r\nexport type OpenAlertDialog = (message: ReactNode, options?: AlertOptions) => Promise<void>;\r\n\r\nexport type OpenConfirmDialog = (message: ReactNode, options?: ConfirmOptions) => Promise<boolean>;\r\n\r\nexport type DialogComponent<TPayload, TResult> = React.ComponentType<DialogProps<TPayload, TResult>>;\r\n\r\nexport interface OpenDialog {\r\n <TPayload extends undefined, TResult>(Component: DialogComponent<TPayload, TResult>, payload?: TPayload, options?: OpenDialogOptions<TResult>): Promise<TResult>;\r\n <TPayload, TResult>(Component: DialogComponent<TPayload, TResult>, payload: TPayload, options?: OpenDialogOptions<TResult>): Promise<TResult>;\r\n}\r\n\r\nexport type CloseDialog = <TResult>(dialog: Promise<TResult>, result: TResult) => Promise<TResult>;\r\n\r\nexport interface AlertDialogPayload extends AlertOptions {\r\n message: ReactNode;\r\n}\r\n\r\nexport type AlertDialogProps = DialogProps<AlertDialogPayload, void>\r\n\r\nexport function AlertDialog({ open, payload, onClose }: Readonly<AlertDialogProps>) {\r\n const { t } = useTranslation();\r\n\r\n return (\r\n <Dialog maxWidth=\"xs\" fullWidth open={open} onClose={() => onClose()} disableRestoreFocus>\r\n <DialogTitle>{payload.title ?? t(\"Layout.Dialog.Alert\")}</DialogTitle>\r\n <DialogContent>{payload.message}</DialogContent>\r\n <DialogActions>\r\n <Button onClick={() => onClose()} autoFocus>\r\n {t(\"Layout.Dialog.Confirm\")}\r\n </Button>\r\n </DialogActions>\r\n </Dialog>\r\n );\r\n}\r\n\r\nexport interface ConfirmDialogPayload extends ConfirmOptions {\r\n message: ReactNode;\r\n}\r\n\r\nexport type ConfirmDialogProps = DialogProps<ConfirmDialogPayload, boolean>\r\n\r\nexport function ConfirmDialog({ open, payload, onClose }: Readonly<ConfirmDialogProps>) {\r\n const { t } = useTranslation();\r\n\r\n return (\r\n <Dialog maxWidth=\"xs\" fullWidth open={open} onClose={() => onClose(false)} disableRestoreFocus>\r\n <DialogTitle>{payload.title ?? t(\"Layout.Dialog.Confirm\")}</DialogTitle>\r\n <DialogContent>{payload.message}</DialogContent>\r\n <DialogActions>\r\n <Button onClick={() => onClose(false)}>\r\n {payload.cancelText ?? t(\"Layout.Dialog.Cancel\")}\r\n </Button>\r\n <Button onClick={() => onClose(true)} autoFocus>\r\n {t(\"Layout.Dialog.Confirm\")}\r\n </Button>\r\n </DialogActions>\r\n </Dialog>\r\n );\r\n}\r\n\r\ninterface DialogHook {\r\n alert: OpenAlertDialog;\r\n confirm: OpenConfirmDialog;\r\n open: OpenDialog;\r\n close: CloseDialog;\r\n}\r\n\r\nexport function useDialogs(): DialogHook {\r\n const { open, close } = useContext(DialogsContext);\r\n\r\n const alert = useEventCallback<OpenAlertDialog>((message, { ...options } = {}) =>\r\n open(AlertDialog, { ...options, message }),\r\n );\r\n\r\n const confirm = useEventCallback<OpenConfirmDialog>((message, { ...options } = {}) =>\r\n open(ConfirmDialog, { ...options, message }),\r\n );\r\n\r\n return { alert, confirm, open, close };\r\n}\r\n"],"names":[],"mappings":";;;;AAQO,MAAM,iBAAiB,cAAmC,CAAA,CAAyB;ACoCnF,SAAS,YAAY,EAAE,MAAM,SAAS,WAAuC;AAChF,QAAM,EAAE,EAAA,IAAM,eAAA;AAEd,SACI,qBAAC,QAAA,EAAO,UAAS,MAAK,WAAS,MAAC,MAAY,SAAS,MAAM,QAAA,GAAW,qBAAmB,MACrF,UAAA;AAAA,IAAA,oBAAC,aAAA,EAAa,UAAA,QAAQ,SAAS,EAAE,qBAAqB,GAAE;AAAA,IACxD,oBAAC,eAAA,EAAe,UAAA,QAAQ,QAAA,CAAQ;AAAA,IAChC,oBAAC,eAAA,EACG,UAAA,oBAAC,QAAA,EAAO,SAAS,MAAM,QAAA,GAAW,WAAS,MACtC,UAAA,EAAE,uBAAuB,GAC9B,EAAA,CACJ;AAAA,EAAA,GACJ;AAER;AAQO,SAAS,cAAc,EAAE,MAAM,SAAS,WAAyC;AACpF,QAAM,EAAE,EAAA,IAAM,eAAA;AAEd,SACI,qBAAC,QAAA,EAAO,UAAS,MAAK,WAAS,MAAC,MAAY,SAAS,MAAM,QAAQ,KAAK,GAAG,qBAAmB,MAC1F,UAAA;AAAA,IAAA,oBAAC,aAAA,EAAa,UAAA,QAAQ,SAAS,EAAE,uBAAuB,GAAE;AAAA,IAC1D,oBAAC,eAAA,EAAe,UAAA,QAAQ,QAAA,CAAQ;AAAA,yBAC/B,eAAA,EACG,UAAA;AAAA,MAAA,oBAAC,QAAA,EAAO,SAAS,MAAM,QAAQ,KAAK,GAC/B,UAAA,QAAQ,cAAc,EAAE,sBAAsB,EAAA,CACnD;AAAA,MACA,oBAAC,QAAA,EAAO,SAAS,MAAM,QAAQ,IAAI,GAAG,WAAS,MAC1C,UAAA,EAAE,uBAAuB,EAAA,CAC9B;AAAA,IAAA,EAAA,CACJ;AAAA,EAAA,GACJ;AAER;AASO,SAAS,aAAyB;AACrC,QAAM,EAAE,MAAM,UAAU,WAAW,cAAc;AAEjD,QAAM,QAAQ;AAAA,IAAkC,CAAC,SAAS,EAAE,GAAG,YAAY,CAAA,MACvE,KAAK,aAAa,EAAE,GAAG,SAAS,SAAS;AAAA,EAAA;AAG7C,QAAM,UAAU;AAAA,IAAoC,CAAC,SAAS,EAAE,GAAG,YAAY,CAAA,MAC3E,KAAK,eAAe,EAAE,GAAG,SAAS,SAAS;AAAA,EAAA;AAG/C,SAAO,EAAE,OAAO,SAAS,MAAM,MAAA;AACnC;"}
|
|
@@ -1,29 +1,20 @@
|
|
|
1
|
-
import {
|
|
2
|
-
FileMetaSchema
|
|
3
|
-
} from "./chunk-TME53DAF.js";
|
|
4
|
-
import {
|
|
5
|
-
httpClient,
|
|
6
|
-
toKebabCase
|
|
7
|
-
} from "./chunk-2ROTNT7W.js";
|
|
8
|
-
import {
|
|
9
|
-
clientEnv
|
|
10
|
-
} from "./chunk-DXXZZHAK.js";
|
|
11
|
-
|
|
12
|
-
// src/queries/FileHooks.ts
|
|
13
|
-
import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
|
|
1
|
+
import { useQuery, useMutation, useQueryClient } from "@tanstack/react-query";
|
|
14
2
|
import saveAs from "file-saver";
|
|
15
3
|
import { useState } from "react";
|
|
16
|
-
import { Upload
|
|
4
|
+
import { Upload } from "tus-js-client";
|
|
17
5
|
import { uuidv7 } from "uuidv7";
|
|
18
|
-
import
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
6
|
+
import z__default from "zod";
|
|
7
|
+
import { F as FileMetaSchema } from "./FileMeta-G1oT3mYK.js";
|
|
8
|
+
import { t as toKebabCase, h as httpClient } from "./utils-DKyKGba7.js";
|
|
9
|
+
import { c as clientEnv } from "./env-CoxTjaDr.js";
|
|
10
|
+
const QUERY_KEY = "file";
|
|
11
|
+
const HOUR = 1e3 * 60 * 60;
|
|
12
|
+
const APP_NAME = toKebabCase(clientEnv.VITE_APP_TITLE);
|
|
13
|
+
z__default.object({
|
|
14
|
+
appName: z__default.string().min(1).max(255).default(APP_NAME).optional(),
|
|
15
|
+
subId: z__default.uuid()
|
|
25
16
|
});
|
|
26
|
-
|
|
17
|
+
const useGetFileMetas = (params, options) => {
|
|
27
18
|
const queryParams = new URLSearchParams();
|
|
28
19
|
queryParams.append("appName", params.appName ?? APP_NAME);
|
|
29
20
|
queryParams.append("subId", params.subId);
|
|
@@ -40,11 +31,11 @@ var useGetFileMetas = (params, options) => {
|
|
|
40
31
|
refetchOnWindowFocus: false
|
|
41
32
|
});
|
|
42
33
|
};
|
|
43
|
-
|
|
44
|
-
appName:
|
|
34
|
+
z__default.object({
|
|
35
|
+
appName: z__default.string().min(1).max(255).default(APP_NAME).optional(),
|
|
45
36
|
meta: FileMetaSchema.nullish()
|
|
46
37
|
});
|
|
47
|
-
|
|
38
|
+
const useGetFileThumbnail = (params, options) => {
|
|
48
39
|
const queryParams = new URLSearchParams();
|
|
49
40
|
queryParams.append("appName", params.appName ?? APP_NAME);
|
|
50
41
|
queryParams.append("id", params.meta?.id ?? "");
|
|
@@ -64,11 +55,11 @@ var useGetFileThumbnail = (params, options) => {
|
|
|
64
55
|
enabled: !!params.meta && options?.enabled !== false
|
|
65
56
|
});
|
|
66
57
|
};
|
|
67
|
-
|
|
68
|
-
appName:
|
|
58
|
+
z__default.object({
|
|
59
|
+
appName: z__default.string().min(1).max(255).default(APP_NAME).optional(),
|
|
69
60
|
meta: FileMetaSchema.nullish()
|
|
70
61
|
});
|
|
71
|
-
|
|
62
|
+
const useGetFile = (params, options) => {
|
|
72
63
|
const queryParams = new URLSearchParams();
|
|
73
64
|
queryParams.append("appName", params.appName ?? APP_NAME);
|
|
74
65
|
queryParams.append("id", params.meta?.id ?? "");
|
|
@@ -88,7 +79,7 @@ var useGetFile = (params, options) => {
|
|
|
88
79
|
enabled: !!params.meta && options?.enabled !== false
|
|
89
80
|
});
|
|
90
81
|
};
|
|
91
|
-
|
|
82
|
+
const useDownloadFile = (options) => {
|
|
92
83
|
return useMutation({
|
|
93
84
|
...options,
|
|
94
85
|
mutationFn: (meta) => httpClient.request({
|
|
@@ -99,7 +90,7 @@ var useDownloadFile = (options) => {
|
|
|
99
90
|
onSuccess: (data, variables) => saveAs(data, `${variables.fileName}.${variables.fileExtension}`)
|
|
100
91
|
});
|
|
101
92
|
};
|
|
102
|
-
|
|
93
|
+
const useOpenFile = (options) => {
|
|
103
94
|
return useMutation({
|
|
104
95
|
...options,
|
|
105
96
|
mutationFn: (meta) => httpClient.request({
|
|
@@ -112,7 +103,7 @@ var useOpenFile = (options) => {
|
|
|
112
103
|
}
|
|
113
104
|
});
|
|
114
105
|
};
|
|
115
|
-
|
|
106
|
+
const useUpdateFileMeta = (options) => {
|
|
116
107
|
const queryClient = useQueryClient();
|
|
117
108
|
return useMutation({
|
|
118
109
|
...options,
|
|
@@ -124,7 +115,7 @@ var useUpdateFileMeta = (options) => {
|
|
|
124
115
|
onSettled: () => queryClient.invalidateQueries({ queryKey: [QUERY_KEY, "meta"], exact: false })
|
|
125
116
|
});
|
|
126
117
|
};
|
|
127
|
-
|
|
118
|
+
const useDeleteFile = (options) => {
|
|
128
119
|
const queryClient = useQueryClient();
|
|
129
120
|
return useMutation({
|
|
130
121
|
...options,
|
|
@@ -135,7 +126,7 @@ var useDeleteFile = (options) => {
|
|
|
135
126
|
onSettled: () => queryClient.invalidateQueries({ queryKey: [QUERY_KEY, "meta"], exact: false })
|
|
136
127
|
});
|
|
137
128
|
};
|
|
138
|
-
|
|
129
|
+
const useDeleteFiles = (options) => {
|
|
139
130
|
const queryClient = useQueryClient();
|
|
140
131
|
return useMutation({
|
|
141
132
|
...options,
|
|
@@ -146,7 +137,7 @@ var useDeleteFiles = (options) => {
|
|
|
146
137
|
onSettled: () => queryClient.invalidateQueries({ queryKey: [QUERY_KEY, "meta"], exact: false })
|
|
147
138
|
});
|
|
148
139
|
};
|
|
149
|
-
|
|
140
|
+
const useUploadFile = ({ subId, onSuccess, onError }) => {
|
|
150
141
|
const [progress, setProgress] = useState(0);
|
|
151
142
|
const queryClient = useQueryClient();
|
|
152
143
|
const mutate = async (file) => {
|
|
@@ -157,7 +148,7 @@ var useUploadFile = ({ subId, onSuccess, onError }) => {
|
|
|
157
148
|
subId,
|
|
158
149
|
fileName: file.name
|
|
159
150
|
};
|
|
160
|
-
const upload = new
|
|
151
|
+
const upload = new Upload(file, {
|
|
161
152
|
endpoint: `${clientEnv.VITE_API_URL}/${QUERY_KEY}/v1/upload`,
|
|
162
153
|
chunkSize: 1048576,
|
|
163
154
|
// 1 MB
|
|
@@ -190,16 +181,15 @@ var useUploadFile = ({ subId, onSuccess, onError }) => {
|
|
|
190
181
|
};
|
|
191
182
|
return { mutate, progress };
|
|
192
183
|
};
|
|
193
|
-
|
|
194
184
|
export {
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
185
|
+
useGetFileThumbnail as a,
|
|
186
|
+
useGetFile as b,
|
|
187
|
+
useDownloadFile as c,
|
|
188
|
+
useOpenFile as d,
|
|
189
|
+
useUpdateFileMeta as e,
|
|
190
|
+
useDeleteFile as f,
|
|
191
|
+
useDeleteFiles as g,
|
|
192
|
+
useUploadFile as h,
|
|
193
|
+
useGetFileMetas as u
|
|
204
194
|
};
|
|
205
|
-
//# sourceMappingURL=
|
|
195
|
+
//# sourceMappingURL=FileHooks-hWKTwLCr.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileHooks-hWKTwLCr.js","sources":["../src/queries/FileHooks.ts"],"sourcesContent":["import { useMutation, useQuery, useQueryClient } from \"@tanstack/react-query\";\r\nimport saveAs from \"file-saver\";\r\nimport { useState } from \"react\";\r\nimport { Upload as TusUpload } from \"tus-js-client\";\r\nimport { uuidv7 } from \"uuidv7\";\r\nimport z from \"zod\";\r\nimport type { DetailedError } from \"tus-js-client\";\r\nimport type { DefinedInitialDataOptions, UseMutationOptions } from \"@tanstack/react-query\";\r\nimport type { FileMeta } from \"~/models/file/FileMeta\";\r\nimport { FileMetaSchema } from \"~/models/file/FileMeta\";\r\nimport { httpClient, toKebabCase } from \"~/lib/utils\";\r\nimport { clientEnv } from \"~/env\";\r\n\r\nconst QUERY_KEY = \"file\";\r\nconst HOUR = 1000 * 60 * 60;\r\nconst APP_NAME = toKebabCase(clientEnv.VITE_APP_TITLE);\r\n\r\ntype OptionalId = string | undefined | null;\r\n\r\ntype BaseFileMetaArrayQueryOptions = Omit<DefinedInitialDataOptions<Array<FileMeta>>, \"queryKey\" | \"queryFn\" | \"staleTime\" | \"gcTime\" | \"refetchOnWindowFocus\" | \"initialData\">;\r\ntype BaseBlobQueryOptions = Omit<DefinedInitialDataOptions<Blob, Error, string>, \"queryKey\" | \"queryFn\" | \"select\" | \"staleTime\" | \"gcTime\" | \"refetchOnWindowFocus\" | \"initialData\">;\r\ntype BaseFileMetaMutationOptions = Omit<UseMutationOptions<FileMeta, Error, FileMeta>, \"mutationFn\" | \"onSettled\">;\r\ntype BaseBlobMutationOptions = Omit<UseMutationOptions<Blob, Error, FileMeta>, \"mutationFn\" | \"onSuccess\">;\r\ntype BaseStringMutationOptions = Omit<UseMutationOptions<string, Error, string>, \"mutationFn\" | \"onSettled\">;\r\n\r\nexport const GetFileMetasParamsSchema = z.object({\r\n appName: z.string().min(1).max(255).default(APP_NAME).optional(),\r\n subId: z.uuid(),\r\n});\r\n\r\nexport type GetFileMetasParams = z.infer<typeof GetFileMetasParamsSchema>;\r\n\r\nexport const useGetFileMetas = (params: GetFileMetasParams, options?: BaseFileMetaArrayQueryOptions) => {\r\n const queryParams = new URLSearchParams();\r\n queryParams.append(\"appName\", params.appName ?? APP_NAME);\r\n queryParams.append(\"subId\", params.subId);\r\n\r\n return useQuery<Array<FileMeta>>({\r\n ...options,\r\n queryKey: [QUERY_KEY, \"meta\", params.appName ?? APP_NAME, params.subId],\r\n queryFn: ({ signal }) => httpClient.request({\r\n url: `/${QUERY_KEY}/v1/meta?${queryParams.toString()}`,\r\n method: \"GET\",\r\n signal,\r\n }),\r\n staleTime: HOUR,\r\n gcTime: HOUR,\r\n refetchOnWindowFocus: false,\r\n });\r\n};\r\n\r\nexport const GetFileThumbnailParamsSchema = z.object({\r\n appName: z.string().min(1).max(255).default(APP_NAME).optional(),\r\n meta: FileMetaSchema.nullish(),\r\n});\r\n\r\nexport type GetFileThumbnailParams = z.infer<typeof GetFileThumbnailParamsSchema>;\r\n\r\nexport const useGetFileThumbnail = (params: GetFileThumbnailParams, options?: BaseBlobQueryOptions) => {\r\n const queryParams = new URLSearchParams();\r\n queryParams.append(\"appName\", params.appName ?? APP_NAME);\r\n queryParams.append(\"id\", params.meta?.id ?? \"\");\r\n\r\n return useQuery<Blob, Error, string>({\r\n ...options,\r\n queryKey: [QUERY_KEY, \"thumbnail\", params.appName ?? APP_NAME, params.meta?.id],\r\n queryFn: ({ signal }) => httpClient.request({\r\n url: `/${QUERY_KEY}/v1/thumbnail?${queryParams.toString()}`,\r\n method: \"GET\",\r\n signal,\r\n responseType: \"blob\"\r\n }),\r\n select: data => URL.createObjectURL(data),\r\n staleTime: HOUR,\r\n gcTime: HOUR,\r\n refetchOnWindowFocus: false,\r\n enabled: !!params.meta && options?.enabled !== false,\r\n });\r\n};\r\n\r\nexport const GetFileParamsSchema = z.object({\r\n appName: z.string().min(1).max(255).default(APP_NAME).optional(),\r\n meta: FileMetaSchema.nullish(),\r\n});\r\n\r\nexport type GetFileParams = z.infer<typeof GetFileParamsSchema>;\r\n\r\nexport const useGetFile = (params: GetFileParams, options?: BaseBlobQueryOptions) => {\r\n const queryParams = new URLSearchParams();\r\n queryParams.append(\"appName\", params.appName ?? APP_NAME);\r\n queryParams.append(\"id\", params.meta?.id ?? \"\");\r\n\r\n return useQuery<Blob, Error, string>({\r\n ...options,\r\n queryKey: [QUERY_KEY, params.appName ?? APP_NAME, params.meta?.id],\r\n queryFn: ({ signal }) => httpClient.request({\r\n url: `/${QUERY_KEY}/v1?${queryParams.toString()}`,\r\n method: \"GET\",\r\n signal,\r\n responseType: \"blob\"\r\n }),\r\n select: data => URL.createObjectURL(data),\r\n staleTime: HOUR,\r\n gcTime: HOUR,\r\n refetchOnWindowFocus: false,\r\n enabled: !!params.meta && options?.enabled !== false,\r\n });\r\n};\r\n\r\nexport const useDownloadFile = (options?: BaseBlobMutationOptions) => {\r\n return useMutation<Blob, Error, FileMeta>({\r\n ...options,\r\n mutationFn: meta => httpClient.request({\r\n url: `/${QUERY_KEY}/v1/download?appName=${APP_NAME}&id=${meta.id}`,\r\n method: \"GET\",\r\n responseType: \"blob\"\r\n }),\r\n onSuccess: (data, variables) => saveAs(data, `${variables.fileName}.${variables.fileExtension}`)\r\n });\r\n};\r\n\r\nexport const useOpenFile = (options?: BaseBlobMutationOptions) => {\r\n return useMutation<Blob, Error, FileMeta>({\r\n ...options,\r\n mutationFn: meta => httpClient.request({\r\n url: `/${QUERY_KEY}/v1?appName=${APP_NAME}&id=${meta.id}`,\r\n method: \"GET\",\r\n responseType: \"blob\"\r\n }),\r\n onSuccess: data => { window.open(URL.createObjectURL(data)); }\r\n });\r\n};\r\n\r\nexport const useUpdateFileMeta = (options?: BaseFileMetaMutationOptions) => {\r\n const queryClient = useQueryClient();\r\n\r\n return useMutation<FileMeta, Error, FileMeta>({\r\n ...options,\r\n mutationFn: meta => httpClient.request({\r\n url: `/${QUERY_KEY}/v1/meta?appName=${APP_NAME}&id=${meta.id}`,\r\n method: \"PUT\",\r\n data: meta\r\n }),\r\n onSettled: () => queryClient.invalidateQueries({ queryKey: [QUERY_KEY, \"meta\"], exact: false })\r\n });\r\n};\r\n\r\nexport const useDeleteFile = (options?: BaseFileMetaMutationOptions) => {\r\n const queryClient = useQueryClient();\r\n\r\n return useMutation<FileMeta, Error, FileMeta>({\r\n ...options,\r\n mutationFn: meta => httpClient.request({\r\n url: `/${QUERY_KEY}/v1?appName=${APP_NAME}&id=${meta.id}`,\r\n method: \"DELETE\"\r\n }),\r\n onSettled: () => queryClient.invalidateQueries({ queryKey: [QUERY_KEY, \"meta\"], exact: false }),\r\n });\r\n};\r\n\r\nexport const useDeleteFiles = (options?: BaseStringMutationOptions) => {\r\n const queryClient = useQueryClient();\r\n\r\n return useMutation<string, Error, string>({\r\n ...options,\r\n mutationFn: subId => httpClient.request({\r\n url: `/${QUERY_KEY}/v1?appName=${APP_NAME}&subId=${subId}`,\r\n method: \"DELETE\"\r\n }),\r\n onSettled: () => queryClient.invalidateQueries({ queryKey: [QUERY_KEY, \"meta\"], exact: false })\r\n });\r\n};\r\n\r\ninterface UseUploadFileProps {\r\n subId: OptionalId;\r\n onSuccess?: (meta: Pick<FileMeta, \"id\" | \"appName\" | \"subId\" | \"fileName\">) => void;\r\n onError?: (error: Error | DetailedError) => void;\r\n}\r\n\r\nexport const useUploadFile = ({ subId, onSuccess, onError }: UseUploadFileProps) => {\r\n const [progress, setProgress] = useState<number>(0);\r\n const queryClient = useQueryClient();\r\n\r\n const mutate = async (file: File) => {\r\n if (!subId) throw new Error(\"subId is required for file upload\");\r\n\r\n const metadata: Pick<FileMeta, \"id\" | \"appName\" | \"subId\" | \"fileName\"> = {\r\n id: uuidv7(),\r\n appName: APP_NAME,\r\n subId: subId,\r\n fileName: file.name,\r\n };\r\n\r\n const upload = new TusUpload(file, {\r\n endpoint: `${clientEnv.VITE_API_URL}/${QUERY_KEY}/v1/upload`,\r\n chunkSize: 1_048_576, // 1 MB\r\n metadata: {\r\n id: metadata.id,\r\n appName: metadata.appName,\r\n subId: metadata.subId,\r\n fileName: metadata.fileName,\r\n fileExtension: file.type\r\n },\r\n // headers: { \"Authorization\": `Bearer ${await getToken()}` }, //TODO: implement token retrieval\r\n onError: (error) => {\r\n setProgress(0);\r\n onError?.(error);\r\n },\r\n onProgress: (bytesUploaded, bytesTotal) => {\r\n setProgress((bytesUploaded / bytesTotal) * 100);\r\n },\r\n onSuccess: () => {\r\n setProgress(0);\r\n queryClient.invalidateQueries({ queryKey: [QUERY_KEY, \"meta\", subId], exact: false });\r\n onSuccess?.(metadata);\r\n },\r\n });\r\n\r\n const previousUploads = await upload.findPreviousUploads();\r\n if (previousUploads.length > 0) {\r\n upload.resumeFromPreviousUpload(previousUploads[0]);\r\n }\r\n\r\n upload.start();\r\n };\r\n\r\n return { mutate, progress };\r\n};\r\n"],"names":["z","TusUpload"],"mappings":"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"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
// src/models/file/FileMeta.ts
|
|
2
1
|
import * as z from "zod";
|
|
3
|
-
|
|
2
|
+
const FileMetaSchema = z.object({
|
|
4
3
|
id: z.uuid(),
|
|
5
4
|
subId: z.uuid(),
|
|
6
5
|
appName: z.string().trim().min(1).max(255),
|
|
@@ -13,8 +12,7 @@ var FileMetaSchema = z.object({
|
|
|
13
12
|
createdBy: z.string().trim().min(1).max(255),
|
|
14
13
|
createdDate: z.date()
|
|
15
14
|
});
|
|
16
|
-
|
|
17
15
|
export {
|
|
18
|
-
FileMetaSchema
|
|
16
|
+
FileMetaSchema as F
|
|
19
17
|
};
|
|
20
|
-
//# sourceMappingURL=
|
|
18
|
+
//# sourceMappingURL=FileMeta-G1oT3mYK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileMeta-G1oT3mYK.js","sources":["../src/models/file/FileMeta.ts"],"sourcesContent":["import * as z from \"zod\";\r\n\r\nexport const FileMetaSchema = z.object({\r\n id: z.uuid(),\r\n subId: z.uuid(),\r\n appName: z.string().trim().min(1).max(255),\r\n fileName: z.string().trim().min(1).max(255),\r\n fileExtension: z.string().trim().min(1).max(255),\r\n fileSize: z.number().min(0),\r\n mediaSubType: z.string().trim().min(1).max(255),\r\n mediaType: z.string().trim().min(1).max(255),\r\n mimeType: z.string().trim().min(1).max(255),\r\n createdBy: z.string().trim().min(1).max(255),\r\n createdDate: z.date(),\r\n});\r\n\r\nexport type FileMeta = z.infer<typeof FileMetaSchema>;\r\n"],"names":[],"mappings":";AAEO,MAAM,iBAAiB,EAAE,OAAO;AAAA,EACnC,IAAI,EAAE,KAAA;AAAA,EACN,OAAO,EAAE,KAAA;AAAA,EACT,SAAS,EAAE,OAAA,EAAS,KAAA,EAAO,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EACzC,UAAU,EAAE,OAAA,EAAS,KAAA,EAAO,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAC1C,eAAe,EAAE,OAAA,EAAS,KAAA,EAAO,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAC/C,UAAU,EAAE,SAAS,IAAI,CAAC;AAAA,EAC1B,cAAc,EAAE,OAAA,EAAS,KAAA,EAAO,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAC9C,WAAW,EAAE,OAAA,EAAS,KAAA,EAAO,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAC3C,UAAU,EAAE,OAAA,EAAS,KAAA,EAAO,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAC1C,WAAW,EAAE,OAAA,EAAS,KAAA,EAAO,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAC3C,aAAa,EAAE,KAAA;AACnB,CAAC;"}
|
|
@@ -1,17 +1,15 @@
|
|
|
1
|
-
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import { ListItemButton } from "@mui/material";
|
|
3
3
|
import { createLink } from "@tanstack/react-router";
|
|
4
4
|
import React from "react";
|
|
5
|
-
|
|
6
|
-
var Component = React.forwardRef(function ButtonComponent(props, reference) {
|
|
5
|
+
const Component = React.forwardRef(function ButtonComponent(props, reference) {
|
|
7
6
|
return /* @__PURE__ */ jsx(ListItemButton, { ref: reference, component: "a", ...props });
|
|
8
7
|
});
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
const CreatedComponent = createLink(Component);
|
|
9
|
+
const RouterListItemButton = (props) => {
|
|
11
10
|
return /* @__PURE__ */ jsx(CreatedComponent, { ...props });
|
|
12
11
|
};
|
|
13
|
-
|
|
14
12
|
export {
|
|
15
|
-
RouterListItemButton
|
|
13
|
+
RouterListItemButton as R
|
|
16
14
|
};
|
|
17
|
-
//# sourceMappingURL=
|
|
15
|
+
//# sourceMappingURL=RouterListItemButton-Cx7rXEfm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RouterListItemButton-Cx7rXEfm.js","sources":["../src/components/router/RouterListItemButton.tsx"],"sourcesContent":["import { ListItemButton } from \"@mui/material\";\r\nimport { createLink } from \"@tanstack/react-router\";\r\nimport React from \"react\";\r\nimport type { ListItemButtonProps } from \"@mui/material\";\r\nimport type { LinkComponent } from \"@tanstack/react-router\";\r\n\r\nconst Component = React.forwardRef<HTMLAnchorElement, ListItemButtonProps<\"a\">>(function ButtonComponent(props, reference) {\r\n return <ListItemButton ref={reference} component=\"a\" {...props} />;\r\n});\r\n\r\nconst CreatedComponent = createLink(Component);\r\n\r\nexport const RouterListItemButton: LinkComponent<typeof Component> = (props) => {\r\n return <CreatedComponent {...props} />;\r\n};\r\n"],"names":[],"mappings":";;;;AAMA,MAAM,YAAY,MAAM,WAAwD,SAAS,gBAAgB,OAAO,WAAW;AACvH,6BAAQ,gBAAA,EAAe,KAAK,WAAW,WAAU,KAAK,GAAG,OAAO;AACpE,CAAC;AAED,MAAM,mBAAmB,WAAW,SAAS;AAEtC,MAAM,uBAAwD,CAAC,UAAU;AAC5E,SAAO,oBAAC,kBAAA,EAAkB,GAAG,MAAA,CAAO;AACxC;"}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { createTheme, darken, lighten } from "@mui/material";
|
|
2
|
+
import { grey } from "@mui/material/colors";
|
|
3
|
+
import { enUS as enUS$2, csCZ as csCZ$2 } from "@mui/material/locale";
|
|
4
|
+
import { enUS, csCZ } from "@mui/x-data-grid/locales";
|
|
5
|
+
import { enUS as enUS$1, csCZ as csCZ$1 } from "@mui/x-date-pickers/locales";
|
|
6
|
+
import { useTranslation } from "react-i18next";
|
|
7
|
+
import { createAuthClient } from "better-auth/react";
|
|
8
|
+
import { c as clientEnv } from "./env-CoxTjaDr.js";
|
|
9
|
+
const WISTRON_PRIMARY_COLOR = "#00506E";
|
|
10
|
+
const WISTRON_SECONDARY_COLOR = "#64DC00";
|
|
11
|
+
const LOCALE_MAP = {
|
|
12
|
+
cs: [csCZ, csCZ$1, csCZ$2],
|
|
13
|
+
en: [enUS, enUS$1, enUS$2]
|
|
14
|
+
};
|
|
15
|
+
const useGetTheme = (theme) => {
|
|
16
|
+
const { i18n } = useTranslation();
|
|
17
|
+
return createTheme(
|
|
18
|
+
{
|
|
19
|
+
cssVariables: {
|
|
20
|
+
colorSchemeSelector: "data-mui-color-scheme"
|
|
21
|
+
},
|
|
22
|
+
colorSchemes: {
|
|
23
|
+
light: {
|
|
24
|
+
palette: {
|
|
25
|
+
primary: { main: WISTRON_PRIMARY_COLOR },
|
|
26
|
+
secondary: { main: WISTRON_SECONDARY_COLOR }
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
dark: {
|
|
30
|
+
palette: {
|
|
31
|
+
primary: { main: lighten(WISTRON_PRIMARY_COLOR, 0.5) },
|
|
32
|
+
secondary: { main: darken(WISTRON_SECONDARY_COLOR, 0.5) }
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
...theme?.colorSchemes
|
|
36
|
+
},
|
|
37
|
+
components: {
|
|
38
|
+
MuiCssBaseline: {
|
|
39
|
+
styleOverrides: ({ palette }) => {
|
|
40
|
+
return {
|
|
41
|
+
body: {
|
|
42
|
+
"&::-webkit-scrollbar, & *::-webkit-scrollbar": {
|
|
43
|
+
width: "0.7em",
|
|
44
|
+
height: "0.7em"
|
|
45
|
+
},
|
|
46
|
+
"&::-webkit-scrollbar-track, & *::-webkit-scrollbar-track": {
|
|
47
|
+
backgroundColor: palette.mode === "dark" ? grey[900] : grey[200],
|
|
48
|
+
borderRadius: "5px"
|
|
49
|
+
},
|
|
50
|
+
"&::-webkit-scrollbar-thumb, & *::-webkit-scrollbar-thumb": {
|
|
51
|
+
backgroundColor: palette.mode === "dark" ? grey[800] : grey[400],
|
|
52
|
+
borderRadius: "10px"
|
|
53
|
+
},
|
|
54
|
+
"&::-webkit-scrollbar-thumb:hover, & *::-webkit-scrollbar-thumb:hover": {
|
|
55
|
+
backgroundColor: palette.mode === "dark" ? grey[700] : grey[500]
|
|
56
|
+
},
|
|
57
|
+
"&::-webkit-scrollbar-corner, & *::-webkit-scrollbar-corner": {
|
|
58
|
+
backgroundColor: "transparent"
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
...theme?.components
|
|
65
|
+
}
|
|
66
|
+
},
|
|
67
|
+
...LOCALE_MAP[i18n.language]
|
|
68
|
+
);
|
|
69
|
+
};
|
|
70
|
+
const authClient = createAuthClient({
|
|
71
|
+
baseURL: clientEnv.VITE_API_URL
|
|
72
|
+
});
|
|
73
|
+
export {
|
|
74
|
+
WISTRON_PRIMARY_COLOR as W,
|
|
75
|
+
WISTRON_SECONDARY_COLOR as a,
|
|
76
|
+
authClient as b,
|
|
77
|
+
useGetTheme as u
|
|
78
|
+
};
|
|
79
|
+
//# sourceMappingURL=auth-client-D9snEe6B.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-client-D9snEe6B.js","sources":["../src/hooks/ThemeHook.ts","../src/lib/auth/auth-client.ts"],"sourcesContent":["import { createTheme, darken, lighten } from \"@mui/material\";\r\nimport { grey } from \"@mui/material/colors\";\r\nimport { csCZ, enUS } from \"@mui/material/locale\";\r\nimport { csCZ as dataGridCsCz, enUS as dataGridEnUs } from \"@mui/x-data-grid/locales\";\r\nimport { csCZ as datePickersCsCz, enUS as datePickersEnUs } from \"@mui/x-date-pickers/locales\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport type { CssVarsThemeOptions } from \"@mui/material\";\r\n\r\nexport const WISTRON_PRIMARY_COLOR = \"#00506E\";\r\nexport const WISTRON_SECONDARY_COLOR = \"#64DC00\";\r\n\r\nconst LOCALE_MAP = {\r\n cs: [dataGridCsCz, datePickersCsCz, csCZ],\r\n en: [dataGridEnUs, datePickersEnUs, enUS],\r\n} as const;\r\n\r\nexport const useGetTheme = (theme?: Pick<CssVarsThemeOptions, \"colorSchemes\" | \"components\">) => {\r\n const { i18n } = useTranslation();\r\n\r\n return createTheme(\r\n {\r\n cssVariables: {\r\n colorSchemeSelector: \"data-mui-color-scheme\"\r\n },\r\n colorSchemes: {\r\n light: {\r\n palette: {\r\n primary: { main: WISTRON_PRIMARY_COLOR },\r\n secondary: { main: WISTRON_SECONDARY_COLOR },\r\n },\r\n },\r\n dark: {\r\n palette: {\r\n primary: { main: lighten(WISTRON_PRIMARY_COLOR, 0.5) },\r\n secondary: { main: darken(WISTRON_SECONDARY_COLOR, 0.5) },\r\n },\r\n },\r\n ...theme?.colorSchemes\r\n },\r\n components: {\r\n MuiCssBaseline: {\r\n styleOverrides: ({ palette }) => {\r\n return {\r\n body: {\r\n \"&::-webkit-scrollbar, & *::-webkit-scrollbar\": {\r\n width: \"0.7em\",\r\n height: \"0.7em\",\r\n },\r\n \"&::-webkit-scrollbar-track, & *::-webkit-scrollbar-track\": {\r\n backgroundColor:\r\n palette.mode === \"dark\" ? grey[900] : grey[200],\r\n borderRadius: \"5px\",\r\n },\r\n \"&::-webkit-scrollbar-thumb, & *::-webkit-scrollbar-thumb\": {\r\n backgroundColor:\r\n palette.mode === \"dark\" ? grey[800] : grey[400],\r\n borderRadius: \"10px\",\r\n },\r\n \"&::-webkit-scrollbar-thumb:hover, & *::-webkit-scrollbar-thumb:hover\":\r\n {\r\n backgroundColor:\r\n palette.mode === \"dark\" ? grey[700] : grey[500],\r\n },\r\n \"&::-webkit-scrollbar-corner, & *::-webkit-scrollbar-corner\": {\r\n backgroundColor: \"transparent\",\r\n },\r\n },\r\n };\r\n },\r\n },\r\n ...theme?.components\r\n },\r\n },\r\n ...LOCALE_MAP[i18n.language as keyof typeof LOCALE_MAP]\r\n );\r\n};\r\n","import { createAuthClient } from \"better-auth/react\";\r\nimport { clientEnv } from \"~/env\";\r\n\r\nexport const authClient = createAuthClient({\r\n baseURL: clientEnv.VITE_API_URL,\r\n});\r\n"],"names":["dataGridCsCz","datePickersCsCz","csCZ","dataGridEnUs","datePickersEnUs","enUS"],"mappings":";;;;;;;;AAQO,MAAM,wBAAwB;AAC9B,MAAM,0BAA0B;AAEvC,MAAM,aAAa;AAAA,EACf,IAAI,CAACA,MAAcC,QAAiBC,MAAI;AAAA,EACxC,IAAI,CAACC,MAAcC,QAAiBC,MAAI;AAC5C;AAEO,MAAM,cAAc,CAAC,UAAqE;AAC7F,QAAM,EAAE,KAAA,IAAS,eAAA;AAEjB,SAAO;AAAA,IACH;AAAA,MACI,cAAc;AAAA,QACV,qBAAqB;AAAA,MAAA;AAAA,MAEzB,cAAc;AAAA,QACV,OAAO;AAAA,UACH,SAAS;AAAA,YACL,SAAS,EAAE,MAAM,sBAAA;AAAA,YACjB,WAAW,EAAE,MAAM,wBAAA;AAAA,UAAwB;AAAA,QAC/C;AAAA,QAEJ,MAAM;AAAA,UACF,SAAS;AAAA,YACL,SAAS,EAAE,MAAM,QAAQ,uBAAuB,GAAG,EAAA;AAAA,YACnD,WAAW,EAAE,MAAM,OAAO,yBAAyB,GAAG,EAAA;AAAA,UAAE;AAAA,QAC5D;AAAA,QAEJ,GAAG,OAAO;AAAA,MAAA;AAAA,MAEd,YAAY;AAAA,QACR,gBAAgB;AAAA,UACZ,gBAAgB,CAAC,EAAE,cAAc;AAC7B,mBAAO;AAAA,cACH,MAAM;AAAA,gBACF,gDAAgD;AAAA,kBAC5C,OAAO;AAAA,kBACP,QAAQ;AAAA,gBAAA;AAAA,gBAEZ,4DAA4D;AAAA,kBACxD,iBACI,QAAQ,SAAS,SAAS,KAAK,GAAG,IAAI,KAAK,GAAG;AAAA,kBAClD,cAAc;AAAA,gBAAA;AAAA,gBAElB,4DAA4D;AAAA,kBACxD,iBACI,QAAQ,SAAS,SAAS,KAAK,GAAG,IAAI,KAAK,GAAG;AAAA,kBAClD,cAAc;AAAA,gBAAA;AAAA,gBAElB,wEACA;AAAA,kBACI,iBACI,QAAQ,SAAS,SAAS,KAAK,GAAG,IAAI,KAAK,GAAG;AAAA,gBAAA;AAAA,gBAEtD,8DAA8D;AAAA,kBAC1D,iBAAiB;AAAA,gBAAA;AAAA,cACrB;AAAA,YACJ;AAAA,UAER;AAAA,QAAA;AAAA,QAEJ,GAAG,OAAO;AAAA,MAAA;AAAA,IACd;AAAA,IAEJ,GAAG,WAAW,KAAK,QAAmC;AAAA,EAAA;AAE9D;ACxEO,MAAM,aAAa,iBAAiB;AAAA,EACvC,SAAS,UAAU;AACvB,CAAC;"}
|