aq-fe-framework 0.1.188 → 0.1.190

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.
@@ -1,3 +1,6 @@
1
+ // src/hooks/custom-hooks/useC_MutationAction.tsx
2
+ import { useQueryClient } from "@tanstack/react-query";
3
+
1
4
  // src/api/baseAxios.ts
2
5
  import axios from "axios";
3
6
  var baseAxios = axios.create({
@@ -1,50 +1,50 @@
1
- .header {
2
- position: sticky; /* Giúp header dính trên cùng */
3
- top: 0;
4
- z-index: 1; /* Đảm bảo header nằm trên các thành phần khác */
5
- height: 60px;
6
- background-color: light-dark(var(--mantine-color-white), var(--mantine-color-dark));
7
- padding-left: var(--mantine-spacing-md);
8
- padding-right: var(--mantine-spacing-md);
9
- border-bottom: 1px solid light-dark(var(--mantine-color-gray-3), var(--mantine-color-dark-4));
10
- }
11
-
12
- .link {
13
- display: flex;
14
- align-items: center;
15
- height: 100%;
16
- padding-left: var(--mantine-spacing-md);
17
- padding-right: var(--mantine-spacing-md);
18
- text-decoration: none;
19
- color: light-dark(var(--mantine-color-black), var(--mantine-color-white));
20
- font-weight: 500;
21
- font-size: var(--mantine-font-size-sm);
22
-
23
- @media (max-width: $mantine-breakpoint-sm) {
24
- height: 42px;
25
- width: 100%;
26
- }
27
-
28
- @mixin hover {
29
- background-color: light-dark(var(--mantine-color-gray-0), var(--mantine-color-dark-6));
30
- }
31
- }
32
-
33
- .subLink {
34
- width: 100%;
35
- padding: var(--mantine-spacing-xs) var(--mantine-spacing-md);
36
- border-radius: var(--mantine-radius-md);
37
-
38
- @mixin hover {
39
- background-color: light-dark(var(--mantine-color-gray-0), var(--mantine-color-dark-7));
40
- }
41
- }
42
-
43
- .dropdownFooter {
44
- background-color: light-dark(var(--mantine-color-gray-0), var(--mantine-color-dark-7));
45
- margin: calc(var(--mantine-spacing-md) * -1);
46
- margin-top: var(--mantine-spacing-sm);
47
- padding: var(--mantine-spacing-md) calc(var(--mantine-spacing-md) * 2);
48
- padding-bottom: var(--mantine-spacing-xl);
49
- border-top: 1px solid light-dark(var(--mantine-color-gray-1), var(--mantine-color-dark-5));
50
- }
1
+ .header {
2
+ position: sticky; /* Giúp header dính trên cùng */
3
+ top: 0;
4
+ z-index: 1; /* Đảm bảo header nằm trên các thành phần khác */
5
+ height: 60px;
6
+ background-color: light-dark(var(--mantine-color-white), var(--mantine-color-dark));
7
+ padding-left: var(--mantine-spacing-md);
8
+ padding-right: var(--mantine-spacing-md);
9
+ border-bottom: 1px solid light-dark(var(--mantine-color-gray-3), var(--mantine-color-dark-4));
10
+ }
11
+
12
+ .link {
13
+ display: flex;
14
+ align-items: center;
15
+ height: 100%;
16
+ padding-left: var(--mantine-spacing-md);
17
+ padding-right: var(--mantine-spacing-md);
18
+ text-decoration: none;
19
+ color: light-dark(var(--mantine-color-black), var(--mantine-color-white));
20
+ font-weight: 500;
21
+ font-size: var(--mantine-font-size-sm);
22
+
23
+ @media (max-width: $mantine-breakpoint-sm) {
24
+ height: 42px;
25
+ width: 100%;
26
+ }
27
+
28
+ @mixin hover {
29
+ background-color: light-dark(var(--mantine-color-gray-0), var(--mantine-color-dark-6));
30
+ }
31
+ }
32
+
33
+ .subLink {
34
+ width: 100%;
35
+ padding: var(--mantine-spacing-xs) var(--mantine-spacing-md);
36
+ border-radius: var(--mantine-radius-md);
37
+
38
+ @mixin hover {
39
+ background-color: light-dark(var(--mantine-color-gray-0), var(--mantine-color-dark-7));
40
+ }
41
+ }
42
+
43
+ .dropdownFooter {
44
+ background-color: light-dark(var(--mantine-color-gray-0), var(--mantine-color-dark-7));
45
+ margin: calc(var(--mantine-spacing-md) * -1);
46
+ margin-top: var(--mantine-spacing-sm);
47
+ padding: var(--mantine-spacing-md) calc(var(--mantine-spacing-md) * 2);
48
+ padding-bottom: var(--mantine-spacing-xl);
49
+ border-top: 1px solid light-dark(var(--mantine-color-gray-1), var(--mantine-color-dark-5));
50
+ }
@@ -66,8 +66,8 @@ import {
66
66
  useS_BasicAppShell,
67
67
  useS_ButtonImport,
68
68
  utils_layout_getItemsWithoutLinks
69
- } from "../chunk-TQQLLV3Q.mjs";
70
- import "../chunk-Z6OQG54Q.mjs";
69
+ } from "../chunk-IDQEI3VV.mjs";
70
+ import "../chunk-PPIWRJB2.mjs";
71
71
  import "../chunk-Y3YGC5IH.mjs";
72
72
  import "../chunk-5U2JSHSJ.mjs";
73
73
  import "../chunk-7ZCOFATU.mjs";
@@ -1,11 +1,8 @@
1
1
  import {
2
2
  useQ_AQ_GetAQModule
3
- } from "../chunk-Z6OQG54Q.mjs";
3
+ } from "../chunk-PPIWRJB2.mjs";
4
4
  import "../chunk-7ZCOFATU.mjs";
5
5
  import "../chunk-FWCSY2DS.mjs";
6
-
7
- // src/hooks/custom-hooks/useC_MutationAction.tsx
8
- import { useQueryClient } from "@tanstack/react-query";
9
6
  export {
10
7
  useQ_AQ_GetAQModule
11
8
  };
@@ -1,4 +1,4 @@
1
- .title {
2
- font-family: Greycliff CF, var(--mantine-font-family);
3
- font-weight: 900;
4
- }
1
+ .title {
2
+ font-family: Greycliff CF, var(--mantine-font-family);
3
+ font-weight: 900;
4
+ }
@@ -93,7 +93,7 @@
93
93
  border-top: 1px solid var(--mantine-color-dark-5);
94
94
  }
95
95
 
96
- /* src/modules-features/authenticate/F_authenticate_Login/css.module.css */
96
+ /* src/modules-features/authenticate/F_Authenticate_Login/css.module.css */
97
97
  .title {
98
98
  font-family: Greycliff CF, var(--mantine-font-family);
99
99
  font-weight: 900;
@@ -367,11 +367,20 @@ interface IEmailConfig extends IBaseEntity {
367
367
  interface I$6 extends IEmailConfig {
368
368
  password?: string;
369
369
  }
370
- declare function F_core64229_Form({ values }: {
370
+ declare function F_core64229_Form({ values, emailModule }: {
371
371
  values?: I$6;
372
+ emailModule: (string | {
373
+ value: string;
374
+ label: string;
375
+ })[];
372
376
  }): react_jsx_runtime.JSX.Element;
373
377
 
374
- declare function F_core64229_Read(): react_jsx_runtime.JSX.Element | "Đang tải";
378
+ declare function F_core64229_Read({ emailModule }: {
379
+ emailModule: (string | {
380
+ value: string;
381
+ label: string;
382
+ })[];
383
+ }): react_jsx_runtime.JSX.Element | "Đang tải";
375
384
 
376
385
  declare function F_core71678(): react_jsx_runtime.JSX.Element;
377
386
 
@@ -25,11 +25,11 @@ import {
25
25
  useS_BasicAppShell,
26
26
  useS_authenticate,
27
27
  utils_layout_getItemsWithoutLinks
28
- } from "../chunk-TQQLLV3Q.mjs";
28
+ } from "../chunk-IDQEI3VV.mjs";
29
29
  import {
30
30
  baseAxios_default,
31
31
  useQ_AQ_GetAQModule
32
- } from "../chunk-Z6OQG54Q.mjs";
32
+ } from "../chunk-PPIWRJB2.mjs";
33
33
  import {
34
34
  createGenericStore
35
35
  } from "../chunk-Y3YGC5IH.mjs";
@@ -2209,8 +2209,8 @@ function F_core60524_Form() {
2209
2209
  Image,
2210
2210
  {
2211
2211
  fit: "contain",
2212
- src: `data:image/${(_a = basicAppShell_store.state.faviconFileDetail) == null ? void 0 : _a.fileExtension};base64,
2213
- ${(_b = basicAppShell_store.state.faviconFileDetail) == null ? void 0 : _b.fileBase64String}`,
2212
+ src: `data:image/${(_a = form.getValues().faviconFileDetail) == null ? void 0 : _a.fileExtension};base64,
2213
+ ${(_b = form.getValues().faviconFileDetail) == null ? void 0 : _b.fileBase64String}`,
2214
2214
  h: "115px",
2215
2215
  fallbackSrc: "https://placehold.co/600x400?text=Placeholder",
2216
2216
  alt: "Main logo",
@@ -2235,8 +2235,8 @@ function F_core60524_Form() {
2235
2235
  Image,
2236
2236
  {
2237
2237
  fit: "contain",
2238
- src: `data:image/${(_c = basicAppShell_store.state.logoFileDetail) == null ? void 0 : _c.fileExtension};base64,
2239
- ${(_d = basicAppShell_store.state.logoFileDetail) == null ? void 0 : _d.fileBase64String}`,
2238
+ src: `data:image/${(_c = form.getValues().logoFileDetail) == null ? void 0 : _c.fileExtension};base64,
2239
+ ${(_d = form.getValues().logoFileDetail) == null ? void 0 : _d.fileBase64String}`,
2240
2240
  h: "115px",
2241
2241
  fallbackSrc: "https://placehold.co/600x400?text=Placeholder",
2242
2242
  alt: "Main logo",
@@ -2276,11 +2276,11 @@ import { useMemo as useMemo9 } from "react";
2276
2276
  import { PasswordInput } from "@mantine/core";
2277
2277
  import { useForm as useForm15 } from "@mantine/form";
2278
2278
  import { jsx as jsx43, jsxs as jsxs29 } from "react/jsx-runtime";
2279
- function F_core64229_Form({ values }) {
2279
+ function F_core64229_Form({ values, emailModule }) {
2280
2280
  const form = useForm15({
2281
2281
  mode: "uncontrolled",
2282
2282
  initialValues: values ? values : {
2283
- emailModule: 1 /* Đào tạo */
2283
+ emailModule: Number(emailModule[0])
2284
2284
  }
2285
2285
  });
2286
2286
  function handleSubmit() {
@@ -2306,7 +2306,7 @@ function F_core64229_Form({ values }) {
2306
2306
  {
2307
2307
  form,
2308
2308
  onSubmit: handleSubmit,
2309
- children: /* @__PURE__ */ jsx43(FormInput, { form })
2309
+ children: /* @__PURE__ */ jsx43(FormInput, { form, emailModule })
2310
2310
  }
2311
2311
  );
2312
2312
  return /* @__PURE__ */ jsx43(
@@ -2314,18 +2314,18 @@ function F_core64229_Form({ values }) {
2314
2314
  {
2315
2315
  form,
2316
2316
  onSubmit: handleSubmit,
2317
- children: /* @__PURE__ */ jsx43(FormInput, { form })
2317
+ children: /* @__PURE__ */ jsx43(FormInput, { form, emailModule })
2318
2318
  }
2319
2319
  );
2320
2320
  }
2321
- function FormInput({ form }) {
2321
+ function FormInput({ form, emailModule }) {
2322
2322
  var _a, _b;
2323
2323
  return /* @__PURE__ */ jsxs29(MyFlexColumn, { children: [
2324
2324
  /* @__PURE__ */ jsx43(
2325
2325
  MySelect,
2326
2326
  __spreadProps(__spreadValues({
2327
2327
  label: "Ph\xE2n h\u1EC7",
2328
- data: utils_converter_enumToSelectOptions(ENUM_EMAILCONFIG_MODULE)
2328
+ data: emailModule
2329
2329
  }, form.getInputProps("emailModule")), {
2330
2330
  value: (_a = form.getValues().emailModule) == null ? void 0 : _a.toString()
2331
2331
  })
@@ -2391,7 +2391,7 @@ function F_core64229_Delete({ values }) {
2391
2391
 
2392
2392
  // src/modules-features/admin/core/core64229/F_core64229_Read.tsx
2393
2393
  import { jsx as jsx45, jsxs as jsxs30 } from "react/jsx-runtime";
2394
- function F_core64229_Read() {
2394
+ function F_core64229_Read({ emailModule }) {
2395
2395
  const query = useQuery11({
2396
2396
  queryKey: ["F_core64229_Read"],
2397
2397
  queryFn: async () => {
@@ -2440,9 +2440,9 @@ function F_core64229_Read() {
2440
2440
  {
2441
2441
  columns,
2442
2442
  data: query.data,
2443
- renderTopToolbarCustomActions: () => /* @__PURE__ */ jsx45(F_core64229_Form, {}),
2443
+ renderTopToolbarCustomActions: () => /* @__PURE__ */ jsx45(F_core64229_Form, { emailModule }),
2444
2444
  renderRowActions: ({ row }) => /* @__PURE__ */ jsxs30(MyCenterFull, { children: [
2445
- /* @__PURE__ */ jsx45(F_core64229_Form, { values: row.original }),
2445
+ /* @__PURE__ */ jsx45(F_core64229_Form, { values: row.original, emailModule }),
2446
2446
  /* @__PURE__ */ jsx45(F_core64229_Delete, { values: row.original })
2447
2447
  ] })
2448
2448
  }
@@ -2452,7 +2452,7 @@ function F_core64229_Read() {
2452
2452
  // src/modules-features/admin/core/core64229/F_core64229.tsx
2453
2453
  import { jsx as jsx46 } from "react/jsx-runtime";
2454
2454
  function F_core64229() {
2455
- return /* @__PURE__ */ jsx46(F_core64229_Read, {});
2455
+ return /* @__PURE__ */ jsx46(F_core64229_Read, { emailModule: utils_converter_enumToSelectOptions(ENUM_EMAILCONFIG_MODULE) });
2456
2456
  }
2457
2457
 
2458
2458
  // src/modules-features/admin/core/core71678/F_core71678_Read.tsx
@@ -3878,7 +3878,7 @@ function F_authenticate_SplashPage() {
3878
3878
  return /* @__PURE__ */ jsx74(MyBoxesBackground, { title: "H\u1EC7 th\u1ED1ng th\xF4ng tin qu\u1EA3n l\xED \u0111\xE0o t\u1EA1o ng\u1EAFn h\u1EA1n" });
3879
3879
  }
3880
3880
 
3881
- // src/modules-features/authenticate/F_authenticate_Login/F_authenticate_Login.tsx
3881
+ // src/modules-features/authenticate/F_Authenticate_Login/F_authenticate_Login.tsx
3882
3882
  import {
3883
3883
  Anchor,
3884
3884
  BackgroundImage,
@@ -3900,10 +3900,10 @@ import Link from "next/link";
3900
3900
  import { useRouter as useRouter3 } from "next/navigation";
3901
3901
  import { useState as useState9 } from "react";
3902
3902
 
3903
- // src/modules-features/authenticate/F_authenticate_Login/css.module.css
3903
+ // src/modules-features/authenticate/F_Authenticate_Login/css.module.css
3904
3904
  var css_default = {};
3905
3905
 
3906
- // src/modules-features/authenticate/F_authenticate_Login/F_authenticate_Login.tsx
3906
+ // src/modules-features/authenticate/F_Authenticate_Login/F_authenticate_Login.tsx
3907
3907
  import { jsx as jsx75, jsxs as jsxs52 } from "react/jsx-runtime";
3908
3908
  function F_authenticate_Login({
3909
3909
  loginInfo,
@@ -1,21 +1,21 @@
1
- .input {
2
- &[data-variant="underline"] {
3
- border: 2px solid transparent;
4
- border-radius: 5px;
5
- padding-left: 8px;
6
- padding-right: 8px;
7
- background-color: white;
8
-
9
- &:focus,
10
- &:focus-visible {
11
- border-color: var(--mantine-color-gray-5);
12
- outline: none;
13
- }
14
-
15
- &:active {
16
- border-color: var(--mantine-color-gray-5);
17
- }
18
-
19
- transition: border-color 0.2s ease-in-out;
20
- }
21
- }
1
+ .input {
2
+ &[data-variant="underline"] {
3
+ border: 2px solid transparent;
4
+ border-radius: 5px;
5
+ padding-left: 8px;
6
+ padding-right: 8px;
7
+ background-color: white;
8
+
9
+ &:focus,
10
+ &:focus-visible {
11
+ border-color: var(--mantine-color-gray-5);
12
+ outline: none;
13
+ }
14
+
15
+ &:active {
16
+ border-color: var(--mantine-color-gray-5);
17
+ }
18
+
19
+ transition: border-color 0.2s ease-in-out;
20
+ }
21
+ }
package/package.json CHANGED
@@ -1,140 +1,140 @@
1
- {
2
- "name": "aq-fe-framework",
3
- "exports": {
4
- "./utils": {
5
- "import": "./dist/utils/index.mjs",
6
- "types": "./dist/utils/index.d.mts"
7
- },
8
- "./components": {
9
- "import": "./dist/components/index.mjs",
10
- "types": "./dist/components/index.d.mts"
11
- },
12
- "./stores": {
13
- "import": "./dist/stores/index.mjs",
14
- "types": "./dist/stores/index.d.mts"
15
- },
16
- "./modules-features": {
17
- "import": "./dist/modules-features/index.mjs",
18
- "types": "./dist/modules-features/index.d.mts"
19
- },
20
- "./hooks": {
21
- "import": "./dist/hooks/index.mjs",
22
- "types": "./dist/hooks/index.d.mts"
23
- }
24
- },
25
- "version": "0.1.188",
26
- "private": false,
27
- "files": [
28
- "dist"
29
- ],
30
- "scripts": {
31
- "deploy": "node deploy.js",
32
- "update-mantine": "npx npm-check-updates @mantine/* @mantinex/* postcss-preset-mantine -u",
33
- "dev": "next dev --turbopack -p 3000",
34
- "build-next": "next build",
35
- "gen": "barrelsby --config barrelsby.json",
36
- "build": "tsup --tsconfig tsconfig.lib.json && cpx \"src/**/*.module.css\" dist",
37
- "start": "next start",
38
- "lint": "next lint",
39
- "debug": "next dev -p 3003"
40
- },
41
- "dependencies": {
42
- "@fullcalendar/core": "^6.1.15",
43
- "@fullcalendar/daygrid": "^6.1.15",
44
- "@fullcalendar/react": "^6.1.15",
45
- "@mantine/carousel": "^8.0.0",
46
- "@mantine/charts": "^8.0.0",
47
- "@mantine/code-highlight": "^8.0.0",
48
- "@mantine/core": "^8.0.0",
49
- "@mantine/dates": "^8.0.0",
50
- "@mantine/dropzone": "^8.0.0",
51
- "@mantine/form": "^8.0.0",
52
- "@mantine/hooks": "^8.0.0",
53
- "@mantine/modals": "^8.0.0",
54
- "@mantine/notifications": "^8.0.0",
55
- "@mantine/nprogress": "^8.0.0",
56
- "@mantine/spotlight": "^8.0.0",
57
- "@mantine/tiptap": "^8.0.0",
58
- "@mantinex/mantine-logo": "^2.0.0",
59
- "@schedule-x/event-modal": "^2.12.1",
60
- "@schedule-x/events-service": "^2.28.0",
61
- "@schedule-x/react": "^2.28.0",
62
- "@schedule-x/theme-default": "^2.28.0",
63
- "@tabler/icons-react": "^3.26.0",
64
- "@tanstack/react-query": "^5.62.8",
65
- "@tanstack/react-query-devtools": "^5.69.0",
66
- "@tiptap-pro/extension-file-handler": "^2.14.0",
67
- "@tiptap/extension-highlight": "^2.9.1",
68
- "@tiptap/extension-image": "^2.9.1",
69
- "@tiptap/extension-link": "^2.9.1",
70
- "@tiptap/extension-subscript": "^2.9.1",
71
- "@tiptap/extension-superscript": "^2.9.1",
72
- "@tiptap/extension-text-align": "^2.9.1",
73
- "@tiptap/extension-underline": "^2.9.1",
74
- "@tiptap/pm": "^2.9.1",
75
- "@tiptap/react": "^2.9.1",
76
- "@tiptap/starter-kit": "^2.9.1",
77
- "autoprefixer": "^10.4.20",
78
- "axios": "^1.7.7",
79
- "clsx": "^2.1.1",
80
- "dayjs": "^1.11.13",
81
- "docxtemplater": "^3.54.1",
82
- "embla-carousel-react": "^7.1.0",
83
- "esbuild-css-modules-plugin": "^3.1.4",
84
- "exceljs": "^4.4.0",
85
- "export-to-csv": "^1.4.0",
86
- "file-saver": "^2.0.5",
87
- "framer-motion": "^11.11.11",
88
- "fs-extra": "^11.2.0",
89
- "glob": "^11.0.2",
90
- "json-server": "^1.0.0-beta.3",
91
- "ldrs": "^1.0.2",
92
- "lodash.debounce": "^4.0.8",
93
- "mantine-react-table": "^2.0.0-beta.7",
94
- "next": "15.0.3",
95
- "pako": "^2.1.0",
96
- "pizzip": "^3.1.7",
97
- "react": "^17.0.0 || ^18.0.0",
98
- "react-dom": "^17.0.0 || ^18.0.0",
99
- "react-to-print": "^3.0.6",
100
- "recharts": "^2.13.3",
101
- "sass": "^1.82.0",
102
- "tailwind-merge": "^2.5.4",
103
- "xlsx": "^0.18.5",
104
- "zustand": "^5.0.1"
105
- },
106
- "devDependencies": {
107
- "@types/file-saver": "^2.0.7",
108
- "@types/node": "^20.17.30",
109
- "@types/pako": "^2.0.3",
110
- "@types/react": "^18.3.20",
111
- "@types/react-dom": "^18",
112
- "barrelsby": "^2.8.1",
113
- "cpx": "^1.5.0",
114
- "esbuild-plugin-css-modules": "^0.3.0",
115
- "eslint": "^8",
116
- "eslint-config-next": "15.0.3",
117
- "postcss": "^8.5.3",
118
- "postcss-modules": "^6.0.1",
119
- "postcss-preset-mantine": "^1.17.0",
120
- "postcss-simple-vars": "^7.0.1",
121
- "tailwindcss": "^3.4.1",
122
- "tsup": "^8.4.0",
123
- "typescript": "^5.8.3"
124
- },
125
- "peerDependencies": {
126
- "react": "^17.0.0 || ^18.0.0",
127
- "react-dom": "^17.0.0 || ^18.0.0"
128
- },
129
- "description": "",
130
- "repository": {
131
- "type": "git",
132
- "url": "git+https://github.com/TranQuocThieu22/aq-fe-framework.git"
133
- },
134
- "author": "Quốc Thiệu",
135
- "license": "ISC",
136
- "bugs": {
137
- "url": "https://github.com/TranQuocThieu22/aq-fe-framework/issues"
138
- },
139
- "homepage": "https://github.com/TranQuocThieu22/aq-fe-framework#readme"
140
- }
1
+ {
2
+ "name": "aq-fe-framework",
3
+ "exports": {
4
+ "./utils": {
5
+ "import": "./dist/utils/index.mjs",
6
+ "types": "./dist/utils/index.d.mts"
7
+ },
8
+ "./components": {
9
+ "import": "./dist/components/index.mjs",
10
+ "types": "./dist/components/index.d.mts"
11
+ },
12
+ "./stores": {
13
+ "import": "./dist/stores/index.mjs",
14
+ "types": "./dist/stores/index.d.mts"
15
+ },
16
+ "./modules-features": {
17
+ "import": "./dist/modules-features/index.mjs",
18
+ "types": "./dist/modules-features/index.d.mts"
19
+ },
20
+ "./hooks": {
21
+ "import": "./dist/hooks/index.mjs",
22
+ "types": "./dist/hooks/index.d.mts"
23
+ }
24
+ },
25
+ "version": "0.1.190",
26
+ "private": false,
27
+ "files": [
28
+ "dist"
29
+ ],
30
+ "scripts": {
31
+ "deploy": "node deploy.js",
32
+ "update-mantine": "npx npm-check-updates @mantine/* @mantinex/* postcss-preset-mantine -u",
33
+ "dev": "next dev --turbopack -p 3000",
34
+ "build-next": "next build",
35
+ "gen": "barrelsby --config barrelsby.json",
36
+ "build": "tsup --tsconfig tsconfig.lib.json && cpx \"src/**/*.module.css\" dist",
37
+ "start": "next start",
38
+ "lint": "next lint",
39
+ "debug": "next dev -p 3003"
40
+ },
41
+ "dependencies": {
42
+ "@fullcalendar/core": "^6.1.15",
43
+ "@fullcalendar/daygrid": "^6.1.15",
44
+ "@fullcalendar/react": "^6.1.15",
45
+ "@mantine/carousel": "^8.0.0",
46
+ "@mantine/charts": "^8.0.0",
47
+ "@mantine/code-highlight": "^8.0.0",
48
+ "@mantine/core": "^8.0.0",
49
+ "@mantine/dates": "^8.0.0",
50
+ "@mantine/dropzone": "^8.0.0",
51
+ "@mantine/form": "^8.0.0",
52
+ "@mantine/hooks": "^8.0.0",
53
+ "@mantine/modals": "^8.0.0",
54
+ "@mantine/notifications": "^8.0.0",
55
+ "@mantine/nprogress": "^8.0.0",
56
+ "@mantine/spotlight": "^8.0.0",
57
+ "@mantine/tiptap": "^8.0.0",
58
+ "@mantinex/mantine-logo": "^2.0.0",
59
+ "@schedule-x/event-modal": "^2.12.1",
60
+ "@schedule-x/events-service": "^2.28.0",
61
+ "@schedule-x/react": "^2.28.0",
62
+ "@schedule-x/theme-default": "^2.28.0",
63
+ "@tabler/icons-react": "^3.26.0",
64
+ "@tanstack/react-query": "^5.62.8",
65
+ "@tanstack/react-query-devtools": "^5.69.0",
66
+ "@tiptap-pro/extension-file-handler": "^2.14.0",
67
+ "@tiptap/extension-highlight": "^2.9.1",
68
+ "@tiptap/extension-image": "^2.9.1",
69
+ "@tiptap/extension-link": "^2.9.1",
70
+ "@tiptap/extension-subscript": "^2.9.1",
71
+ "@tiptap/extension-superscript": "^2.9.1",
72
+ "@tiptap/extension-text-align": "^2.9.1",
73
+ "@tiptap/extension-underline": "^2.9.1",
74
+ "@tiptap/pm": "^2.9.1",
75
+ "@tiptap/react": "^2.9.1",
76
+ "@tiptap/starter-kit": "^2.9.1",
77
+ "autoprefixer": "^10.4.20",
78
+ "axios": "^1.7.7",
79
+ "clsx": "^2.1.1",
80
+ "dayjs": "^1.11.13",
81
+ "docxtemplater": "^3.54.1",
82
+ "embla-carousel-react": "^7.1.0",
83
+ "esbuild-css-modules-plugin": "^3.1.4",
84
+ "exceljs": "^4.4.0",
85
+ "export-to-csv": "^1.4.0",
86
+ "file-saver": "^2.0.5",
87
+ "framer-motion": "^11.11.11",
88
+ "fs-extra": "^11.2.0",
89
+ "glob": "^11.0.2",
90
+ "json-server": "^1.0.0-beta.3",
91
+ "ldrs": "^1.0.2",
92
+ "lodash.debounce": "^4.0.8",
93
+ "mantine-react-table": "^2.0.0-beta.7",
94
+ "next": "15.0.3",
95
+ "pako": "^2.1.0",
96
+ "pizzip": "^3.1.7",
97
+ "react": "^17.0.0 || ^18.0.0",
98
+ "react-dom": "^17.0.0 || ^18.0.0",
99
+ "react-to-print": "^3.0.6",
100
+ "recharts": "^2.13.3",
101
+ "sass": "^1.82.0",
102
+ "tailwind-merge": "^2.5.4",
103
+ "xlsx": "^0.18.5",
104
+ "zustand": "^5.0.1"
105
+ },
106
+ "devDependencies": {
107
+ "@types/file-saver": "^2.0.7",
108
+ "@types/node": "^20.17.30",
109
+ "@types/pako": "^2.0.3",
110
+ "@types/react": "^18.3.20",
111
+ "@types/react-dom": "^18",
112
+ "barrelsby": "^2.8.1",
113
+ "cpx": "^1.5.0",
114
+ "esbuild-plugin-css-modules": "^0.3.0",
115
+ "eslint": "^8",
116
+ "eslint-config-next": "15.0.3",
117
+ "postcss": "^8.5.3",
118
+ "postcss-modules": "^6.0.1",
119
+ "postcss-preset-mantine": "^1.17.0",
120
+ "postcss-simple-vars": "^7.0.1",
121
+ "tailwindcss": "^3.4.1",
122
+ "tsup": "^8.4.0",
123
+ "typescript": "^5.8.3"
124
+ },
125
+ "peerDependencies": {
126
+ "react": "^17.0.0 || ^18.0.0",
127
+ "react-dom": "^17.0.0 || ^18.0.0"
128
+ },
129
+ "description": "",
130
+ "repository": {
131
+ "type": "git",
132
+ "url": "git+https://github.com/TranQuocThieu22/aq-fe-framework.git"
133
+ },
134
+ "author": "Quốc Thiệu",
135
+ "license": "ISC",
136
+ "bugs": {
137
+ "url": "https://github.com/TranQuocThieu22/aq-fe-framework/issues"
138
+ },
139
+ "homepage": "https://github.com/TranQuocThieu22/aq-fe-framework#readme"
140
+ }