phx-react 1.3.1748 → 1.3.1750
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/cjs/components/Drawer/Drawer.d.ts +7 -3
- package/dist/cjs/components/Drawer/Drawer.js +38 -18
- package/dist/cjs/components/Drawer/Drawer.js.map +1 -1
- package/dist/cjs/components/MainWrapV4/components/left-heder-section.js +10 -20
- package/dist/cjs/components/MainWrapV4/components/left-heder-section.js.map +1 -1
- package/dist/esm/components/Drawer/Drawer.d.ts +7 -3
- package/dist/esm/components/Drawer/Drawer.js +38 -18
- package/dist/esm/components/Drawer/Drawer.js.map +1 -1
- package/dist/esm/components/MainWrapV4/components/left-heder-section.js +10 -20
- package/dist/esm/components/MainWrapV4/components/left-heder-section.js.map +1 -1
- package/package.json +1 -1
|
@@ -2,8 +2,9 @@ import React, { ReactNode } from 'react';
|
|
|
2
2
|
type DrawerPosition = 'left' | 'right' | 'top' | 'bottom';
|
|
3
3
|
type DrawerSize = 'sm' | 'md' | 'lg';
|
|
4
4
|
export interface PHXDrawerProps {
|
|
5
|
-
open
|
|
6
|
-
|
|
5
|
+
open?: boolean;
|
|
6
|
+
defaultOpen?: boolean;
|
|
7
|
+
onClose?: (open: boolean) => void;
|
|
7
8
|
title?: string;
|
|
8
9
|
position?: DrawerPosition;
|
|
9
10
|
size?: DrawerSize;
|
|
@@ -17,7 +18,10 @@ export interface PHXDrawerProps {
|
|
|
17
18
|
disabled?: boolean;
|
|
18
19
|
error?: boolean;
|
|
19
20
|
errorText?: string;
|
|
20
|
-
|
|
21
|
+
closeOutsideClick?: boolean;
|
|
22
|
+
topOffset?: number;
|
|
23
|
+
bottomOffset?: number;
|
|
24
|
+
showOverlay?: boolean;
|
|
21
25
|
}
|
|
22
26
|
export declare const PHXDrawer: React.FC<PHXDrawerProps>;
|
|
23
27
|
export {};
|
|
@@ -5,21 +5,41 @@ exports.PHXDrawer = void 0;
|
|
|
5
5
|
const tslib_1 = require("tslib");
|
|
6
6
|
const react_1 = require("@headlessui/react");
|
|
7
7
|
const outline_1 = require("@heroicons/react/24/outline");
|
|
8
|
-
const react_2 = tslib_1.__importStar(require("react"));
|
|
9
8
|
const framer_motion_1 = require("framer-motion");
|
|
9
|
+
const react_2 = tslib_1.__importStar(require("react"));
|
|
10
10
|
const types_1 = require("../types");
|
|
11
|
-
const PHXDrawer = ({ open, onClose, title = 'Panel Title', position = 'right', size = 'md', width = 420, height = 320, showFooter, onSave, onCancel, children, className, disabled,
|
|
11
|
+
const PHXDrawer = ({ open, defaultOpen = false, onClose, title = 'Panel Title', position = 'right', size = 'md', width = 420, height = 320, showFooter, onSave, onCancel, children, className = '', disabled, closeOutsideClick = true, topOffset = 0, bottomOffset = 0, showOverlay = true, }) => {
|
|
12
|
+
const [internalOpen, setInternalOpen] = (0, react_2.useState)(defaultOpen);
|
|
13
|
+
const isControlled = open !== undefined;
|
|
14
|
+
const visible = isControlled ? open : internalOpen;
|
|
12
15
|
const isSide = position === 'left' || position === 'right';
|
|
13
|
-
const dimensionStyle = isSide
|
|
14
|
-
|
|
16
|
+
const dimensionStyle = isSide
|
|
17
|
+
? {
|
|
18
|
+
width: '100vw',
|
|
19
|
+
maxWidth: width,
|
|
20
|
+
height: `calc(100vh - ${topOffset + bottomOffset}px)`,
|
|
21
|
+
marginTop: topOffset,
|
|
22
|
+
marginBottom: bottomOffset,
|
|
23
|
+
}
|
|
24
|
+
: { width: '100vw', height, maxHeight: '100vh' };
|
|
15
25
|
const sizeClass = size === 'sm' ? 'p-3 text-sm' : size === 'lg' ? 'p-6 text-base' : 'p-4 text-sm';
|
|
16
|
-
|
|
26
|
+
const drawerShapeClass = (0, types_1.classNames)(isSide &&
|
|
27
|
+
position === 'right' &&
|
|
28
|
+
'rounded-l-[20px] border-l border-t border-b border-[#E5E7EB] shadow-[-8px_0_24px_rgba(15,23,42,0.16)]', isSide && position === 'left' && 'rounded-r-[20px] border-r border-t border-b border-[#E5E7EB]', !isSide && position === 'top' && 'rounded-b-2xl border border-t-0 border-gray-200', !isSide && position === 'bottom' && 'rounded-t-2xl border border-b-0 border-gray-200');
|
|
29
|
+
const setDrawerOpen = (nextOpen) => {
|
|
30
|
+
if (!isControlled) {
|
|
31
|
+
setInternalOpen(nextOpen);
|
|
32
|
+
}
|
|
33
|
+
onClose === null || onClose === void 0 ? void 0 : onClose(nextOpen);
|
|
34
|
+
};
|
|
35
|
+
return (react_2.default.createElement(react_1.Transition.Root, { as: react_2.Fragment, show: visible },
|
|
17
36
|
react_2.default.createElement(react_1.Dialog, { as: 'div', className: 'relative z-50', onClose: () => {
|
|
18
|
-
if (!disabled &&
|
|
19
|
-
|
|
37
|
+
if (!disabled && closeOutsideClick) {
|
|
38
|
+
setDrawerOpen(false);
|
|
39
|
+
}
|
|
20
40
|
} },
|
|
21
|
-
react_2.default.createElement(react_1.Transition.Child, { as: react_2.Fragment, enter: 'ease-out duration-200', enterFrom: 'opacity-0', enterTo: 'opacity-100', leave: 'ease-in duration-150', leaveFrom: 'opacity-100', leaveTo: 'opacity-0' },
|
|
22
|
-
react_2.default.createElement("div", { className: 'fixed inset-0 bg-black/
|
|
41
|
+
showOverlay && (react_2.default.createElement(react_1.Transition.Child, { as: react_2.Fragment, enter: 'ease-out duration-200', enterFrom: 'opacity-0', enterTo: 'opacity-100', leave: 'ease-in duration-150', leaveFrom: 'opacity-100', leaveTo: 'opacity-0' },
|
|
42
|
+
react_2.default.createElement("div", { "aria-hidden": 'true', className: 'fixed inset-0 bg-black/55' }))),
|
|
23
43
|
react_2.default.createElement("div", { className: 'pointer-events-none fixed inset-y-0 right-0 flex w-full max-w-full sm:pl-10 md:pl-16' },
|
|
24
44
|
react_2.default.createElement("div", { className: (0, types_1.classNames)('absolute flex pointer-events-none max-w-full', isSide ? 'inset-y-0' : 'inset-x-0 justify-center', position === 'right' && 'right-0 pl-0 sm:pl-10 md:pl-16', position === 'left' && 'left-0 pl-0 sm:pl-10 md:pl-16') },
|
|
25
45
|
react_2.default.createElement(react_1.Transition.Child, { as: react_2.Fragment, enter: 'transform transition ease-out duration-300', enterFrom: position === 'right'
|
|
@@ -35,15 +55,15 @@ const PHXDrawer = ({ open, onClose, title = 'Panel Title', position = 'right', s
|
|
|
35
55
|
: position === 'top'
|
|
36
56
|
? '-translate-y-full'
|
|
37
57
|
: 'translate-y-full' },
|
|
38
|
-
react_2.default.createElement(react_1.Dialog.Panel, { as: framer_motion_1.motion.div,
|
|
39
|
-
react_2.default.createElement("div", { className: (0, types_1.classNames)('flex items-center justify-between border-b border-gray-200', sizeClass) },
|
|
40
|
-
react_2.default.createElement(react_1.Dialog.Title, { className: 'font-semibold text-gray-900
|
|
41
|
-
!disabled && (react_2.default.createElement("button", { className: 'rounded-md
|
|
42
|
-
react_2.default.createElement(outline_1.XMarkIcon, { className: '
|
|
43
|
-
react_2.default.createElement("div", { className: (0, types_1.classNames)('flex-1 overflow-y-auto text-xs text-gray-500', sizeClass) }, children),
|
|
44
|
-
showFooter && (react_2.default.createElement("div", { className: (0, types_1.classNames)('flex items-center justify-end gap-3 border-t border-gray-200 bg-
|
|
45
|
-
react_2.default.createElement("button", { disabled: disabled, onClick: onCancel !== null && onCancel !== void 0 ? onCancel : (() =>
|
|
46
|
-
react_2.default.createElement("button", {
|
|
58
|
+
react_2.default.createElement(react_1.Dialog.Panel, { as: framer_motion_1.motion.div, className: (0, types_1.classNames)('pointer-events-auto flex flex-col overflow-hidden bg-gray-50 text-gray-700', 'w-screen', drawerShapeClass, className), style: dimensionStyle },
|
|
59
|
+
react_2.default.createElement("div", { className: (0, types_1.classNames)('flex items-center justify-between border-b border-gray-200 bg-gray-100]', sizeClass) },
|
|
60
|
+
react_2.default.createElement(react_1.Dialog.Title, { className: 'text-sm font-semibold text-gray-900' }, title),
|
|
61
|
+
!disabled && (react_2.default.createElement("button", { className: 'rounded-md text-gray-400 outline-none hover:text-gray-600', onClick: () => setDrawerOpen(false), type: 'button' },
|
|
62
|
+
react_2.default.createElement(outline_1.XMarkIcon, { className: 'h-6 w-6' })))),
|
|
63
|
+
react_2.default.createElement("div", { className: (0, types_1.classNames)('flex-1 overflow-y-auto bg-gray-100 text-xs text-gray-500', sizeClass) }, children),
|
|
64
|
+
showFooter && (react_2.default.createElement("div", { className: (0, types_1.classNames)('flex items-center justify-end gap-3 border-t border-gray-200 bg-white', sizeClass) },
|
|
65
|
+
react_2.default.createElement("button", { className: 'rounded-md bg-gray-200 px-4 py-2 hover:bg-gray-300', disabled: disabled, onClick: onCancel !== null && onCancel !== void 0 ? onCancel : (() => setDrawerOpen(false)), type: 'button' }, "Cancel"),
|
|
66
|
+
react_2.default.createElement("button", { className: 'rounded-md bg-indigo-600 px-4 py-2 text-white hover:bg-indigo-700', disabled: disabled, onClick: onSave, type: 'button' }, "Save"))))))))));
|
|
47
67
|
};
|
|
48
68
|
exports.PHXDrawer = PHXDrawer;
|
|
49
69
|
//# sourceMappingURL=Drawer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Drawer.js","sourceRoot":"","sources":["../../../../src/components/Drawer/Drawer.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;;AAEZ,6CAAsD;AACtD,yDAAuD;AACvD,
|
|
1
|
+
{"version":3,"file":"Drawer.js","sourceRoot":"","sources":["../../../../src/components/Drawer/Drawer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -8,27 +8,23 @@ const getCookieSession_1 = tslib_1.__importDefault(require("../../Func/getCookie
|
|
|
8
8
|
const saveCookiesClient_1 = tslib_1.__importDefault(require("../../Func/saveCookiesClient"));
|
|
9
9
|
const react_2 = tslib_1.__importDefault(require("react"));
|
|
10
10
|
const types_1 = require("../../types");
|
|
11
|
-
const Modal_1 = require("../../Modal");
|
|
12
|
-
const Banner_1 = require("../../Banner");
|
|
13
11
|
const Card_1 = require("../../Card");
|
|
14
12
|
const quick_action_1 = tslib_1.__importDefault(require("../quick-action/quick-action"));
|
|
13
|
+
const LoadingProvider_1 = require("../../LoadingProvider");
|
|
15
14
|
function LeftHeaderSection({ checkLogoHeader, currSchoolId, perCodes, schools, topMenuLogoFromEnv, }) {
|
|
16
15
|
const isMultiSchool = schools.length > 1;
|
|
17
16
|
const wrapperRef = (0, react_1.useRef)(null);
|
|
18
17
|
const windowWidth = (0, use_window_width_1.useWindowWidth)();
|
|
19
18
|
const [show, setShow] = (0, react_1.useState)(false);
|
|
20
|
-
const
|
|
21
|
-
const [showModalSwitchSChool, setShowModalSwitchSchool] = (0, react_1.useState)({
|
|
22
|
-
show: false,
|
|
23
|
-
schoolId: currSchoolId,
|
|
24
|
-
});
|
|
19
|
+
const { setLoading: setLoadingGlobal } = (0, LoadingProvider_1.useLoading)();
|
|
25
20
|
const currSchool = schools.find((school) => school.id === currSchoolId);
|
|
26
|
-
const handleSwitchSchool = async () => {
|
|
21
|
+
const handleSwitchSchool = async (newSchoolId) => {
|
|
27
22
|
var _a, _b;
|
|
28
|
-
|
|
23
|
+
setShow(false);
|
|
24
|
+
setLoadingGlobal(true);
|
|
29
25
|
const currentSession = (0, getCookieSession_1.default)();
|
|
30
26
|
const userInfo = currentSession === null || currentSession === void 0 ? void 0 : currentSession.user_info;
|
|
31
|
-
const nextSchool = schools.find((school) => school.id ===
|
|
27
|
+
const nextSchool = schools.find((school) => school.id === newSchoolId);
|
|
32
28
|
if (userInfo) {
|
|
33
29
|
try {
|
|
34
30
|
const newSchoolId = nextSchool === null || nextSchool === void 0 ? void 0 : nextSchool.id;
|
|
@@ -65,15 +61,12 @@ function LeftHeaderSection({ checkLogoHeader, currSchoolId, perCodes, schools, t
|
|
|
65
61
|
});
|
|
66
62
|
window.location.reload();
|
|
67
63
|
}
|
|
68
|
-
else {
|
|
69
|
-
setShowModalSwitchSchool((pre) => ({ ...pre, show: false }));
|
|
70
|
-
}
|
|
71
64
|
}
|
|
72
65
|
catch (error) {
|
|
73
66
|
console.error(error);
|
|
74
67
|
}
|
|
75
68
|
finally {
|
|
76
|
-
|
|
69
|
+
setLoadingGlobal(false);
|
|
77
70
|
}
|
|
78
71
|
}
|
|
79
72
|
};
|
|
@@ -100,16 +93,13 @@ function LeftHeaderSection({ checkLogoHeader, currSchoolId, perCodes, schools, t
|
|
|
100
93
|
react_2.default.createElement("p", null, currSchool === null || currSchool === void 0 ? void 0 : currSchool.name),
|
|
101
94
|
isMultiSchool && (react_2.default.createElement("svg", { className: (0, types_1.classNames)(' transition-all', show ? '-rotate-180' : ''), fill: 'none', height: '16', viewBox: '0 0 16 16', width: '16', xmlns: 'http://www.w3.org/2000/svg' },
|
|
102
95
|
react_2.default.createElement("path", { clipRule: 'evenodd', d: 'M4.57576 6.77535C4.81007 6.54103 5.18997 6.54103 5.42429 6.77535L8.20002 9.55108L10.9758 6.77535C11.2101 6.54103 11.59 6.54103 11.8243 6.77535C12.0586 7.00966 12.0586 7.38956 11.8243 7.62387L8.62429 10.8239C8.38997 11.0582 8.01007 11.0582 7.77576 10.8239L4.57576 7.62387C4.34145 7.38956 4.34145 7.00966 4.57576 6.77535Z', fill: '#6B7280', fillRule: 'evenodd' })))),
|
|
103
|
-
react_2.default.createElement(Modal_1.PHXModal, { inCard: false, onHide: () => setShowModalSwitchSchool((pre) => ({ ...pre, show: false })), onSubmit: handleSwitchSchool, primaryActionText: 'X\u00E1c nh\u1EADn', primaryLoading: loading, show: showModalSwitchSChool.show, title: 'X\u00E1c nh\u1EADn thay \u0111\u1ED5i tr\u01B0\u1EDDng' },
|
|
104
|
-
react_2.default.createElement(Banner_1.PHXBanner, { description: 'Khi thay \u0111\u1ED5i tr\u01B0\u1EDDng t\u1EA5t c\u1EA3 d\u1EEF li\u1EC7u s\u1EBD hi\u1EC3n th\u1ECB theo tr\u01B0\u1EDDng v\u1EEBa \u0111\u01B0\u1EE3c ch\u1ECDn', hideCloseButton: true, show: true, title: 'L\u01B0u \u00FD', type: 'warning' })),
|
|
105
96
|
show && (react_2.default.createElement("div", { className: 'absolute top-8 inline-block w-max' },
|
|
106
97
|
react_2.default.createElement(Card_1.PHXCard, { primaryHeader: true, title: 'Ch\u1ECDn tr\u01B0\u1EDDng' },
|
|
107
98
|
react_2.default.createElement("div", { className: 'flex max-h-[400px] flex-col gap-y-1 overflow-y-auto' }, schools.map((school) => {
|
|
108
99
|
const isActive = currSchoolId === school.id;
|
|
109
|
-
return (react_2.default.createElement("button", { key: school.id, className: (0, types_1.classNames)('flex w-max min-w-full items-center justify-between rounded-lg p-2 text-left ', isActive ? 'bg-[#EBEBEB]' : 'hover:bg-[#EBEBEB]'), onClick: () =>
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
}), type: 'button' },
|
|
100
|
+
return (react_2.default.createElement("button", { key: school.id, className: (0, types_1.classNames)('flex w-max min-w-full items-center justify-between rounded-lg p-2 text-left ', isActive ? 'bg-[#EBEBEB]' : 'hover:bg-[#EBEBEB]'), onClick: () => {
|
|
101
|
+
handleSwitchSchool(school.id);
|
|
102
|
+
}, type: 'button' },
|
|
113
103
|
react_2.default.createElement("div", { className: 'flex items-center gap-x-2' },
|
|
114
104
|
react_2.default.createElement("img", { className: 'h-[22px] w-[22px]', src: school.logo || topMenuLogoFromEnv }),
|
|
115
105
|
react_2.default.createElement("span", { className: 'whitespace-nowrap text-xs text-gray-900' }, school.name)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"left-heder-section.js","sourceRoot":"","sources":["../../../../../src/components/MainWrapV4/components/left-heder-section.tsx"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"left-heder-section.js","sourceRoot":"","sources":["../../../../../src/components/MainWrapV4/components/left-heder-section.tsx"],"names":[],"mappings":"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"}
|
|
@@ -2,8 +2,9 @@ import React, { ReactNode } from 'react';
|
|
|
2
2
|
type DrawerPosition = 'left' | 'right' | 'top' | 'bottom';
|
|
3
3
|
type DrawerSize = 'sm' | 'md' | 'lg';
|
|
4
4
|
export interface PHXDrawerProps {
|
|
5
|
-
open
|
|
6
|
-
|
|
5
|
+
open?: boolean;
|
|
6
|
+
defaultOpen?: boolean;
|
|
7
|
+
onClose?: (open: boolean) => void;
|
|
7
8
|
title?: string;
|
|
8
9
|
position?: DrawerPosition;
|
|
9
10
|
size?: DrawerSize;
|
|
@@ -17,7 +18,10 @@ export interface PHXDrawerProps {
|
|
|
17
18
|
disabled?: boolean;
|
|
18
19
|
error?: boolean;
|
|
19
20
|
errorText?: string;
|
|
20
|
-
|
|
21
|
+
closeOutsideClick?: boolean;
|
|
22
|
+
topOffset?: number;
|
|
23
|
+
bottomOffset?: number;
|
|
24
|
+
showOverlay?: boolean;
|
|
21
25
|
}
|
|
22
26
|
export declare const PHXDrawer: React.FC<PHXDrawerProps>;
|
|
23
27
|
export {};
|
|
@@ -1,21 +1,41 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { Dialog, Transition } from '@headlessui/react';
|
|
3
3
|
import { XMarkIcon } from '@heroicons/react/24/outline';
|
|
4
|
-
import React, { Fragment } from 'react';
|
|
5
4
|
import { motion } from 'framer-motion';
|
|
5
|
+
import React, { Fragment, useState } from 'react';
|
|
6
6
|
import { classNames } from '../types';
|
|
7
|
-
export const PHXDrawer = ({ open, onClose, title = 'Panel Title', position = 'right', size = 'md', width = 420, height = 320, showFooter, onSave, onCancel, children, className, disabled,
|
|
7
|
+
export const PHXDrawer = ({ open, defaultOpen = false, onClose, title = 'Panel Title', position = 'right', size = 'md', width = 420, height = 320, showFooter, onSave, onCancel, children, className = '', disabled, closeOutsideClick = true, topOffset = 0, bottomOffset = 0, showOverlay = true, }) => {
|
|
8
|
+
const [internalOpen, setInternalOpen] = useState(defaultOpen);
|
|
9
|
+
const isControlled = open !== undefined;
|
|
10
|
+
const visible = isControlled ? open : internalOpen;
|
|
8
11
|
const isSide = position === 'left' || position === 'right';
|
|
9
|
-
const dimensionStyle = isSide
|
|
10
|
-
|
|
12
|
+
const dimensionStyle = isSide
|
|
13
|
+
? {
|
|
14
|
+
width: '100vw',
|
|
15
|
+
maxWidth: width,
|
|
16
|
+
height: `calc(100vh - ${topOffset + bottomOffset}px)`,
|
|
17
|
+
marginTop: topOffset,
|
|
18
|
+
marginBottom: bottomOffset,
|
|
19
|
+
}
|
|
20
|
+
: { width: '100vw', height, maxHeight: '100vh' };
|
|
11
21
|
const sizeClass = size === 'sm' ? 'p-3 text-sm' : size === 'lg' ? 'p-6 text-base' : 'p-4 text-sm';
|
|
12
|
-
|
|
22
|
+
const drawerShapeClass = classNames(isSide &&
|
|
23
|
+
position === 'right' &&
|
|
24
|
+
'rounded-l-[20px] border-l border-t border-b border-[#E5E7EB] shadow-[-8px_0_24px_rgba(15,23,42,0.16)]', isSide && position === 'left' && 'rounded-r-[20px] border-r border-t border-b border-[#E5E7EB]', !isSide && position === 'top' && 'rounded-b-2xl border border-t-0 border-gray-200', !isSide && position === 'bottom' && 'rounded-t-2xl border border-b-0 border-gray-200');
|
|
25
|
+
const setDrawerOpen = (nextOpen) => {
|
|
26
|
+
if (!isControlled) {
|
|
27
|
+
setInternalOpen(nextOpen);
|
|
28
|
+
}
|
|
29
|
+
onClose === null || onClose === void 0 ? void 0 : onClose(nextOpen);
|
|
30
|
+
};
|
|
31
|
+
return (React.createElement(Transition.Root, { as: Fragment, show: visible },
|
|
13
32
|
React.createElement(Dialog, { as: 'div', className: 'relative z-50', onClose: () => {
|
|
14
|
-
if (!disabled &&
|
|
15
|
-
|
|
33
|
+
if (!disabled && closeOutsideClick) {
|
|
34
|
+
setDrawerOpen(false);
|
|
35
|
+
}
|
|
16
36
|
} },
|
|
17
|
-
React.createElement(Transition.Child, { as: Fragment, enter: 'ease-out duration-200', enterFrom: 'opacity-0', enterTo: 'opacity-100', leave: 'ease-in duration-150', leaveFrom: 'opacity-100', leaveTo: 'opacity-0' },
|
|
18
|
-
React.createElement("div", { className: 'fixed inset-0 bg-black/
|
|
37
|
+
showOverlay && (React.createElement(Transition.Child, { as: Fragment, enter: 'ease-out duration-200', enterFrom: 'opacity-0', enterTo: 'opacity-100', leave: 'ease-in duration-150', leaveFrom: 'opacity-100', leaveTo: 'opacity-0' },
|
|
38
|
+
React.createElement("div", { "aria-hidden": 'true', className: 'fixed inset-0 bg-black/55' }))),
|
|
19
39
|
React.createElement("div", { className: 'pointer-events-none fixed inset-y-0 right-0 flex w-full max-w-full sm:pl-10 md:pl-16' },
|
|
20
40
|
React.createElement("div", { className: classNames('absolute flex pointer-events-none max-w-full', isSide ? 'inset-y-0' : 'inset-x-0 justify-center', position === 'right' && 'right-0 pl-0 sm:pl-10 md:pl-16', position === 'left' && 'left-0 pl-0 sm:pl-10 md:pl-16') },
|
|
21
41
|
React.createElement(Transition.Child, { as: Fragment, enter: 'transform transition ease-out duration-300', enterFrom: position === 'right'
|
|
@@ -31,14 +51,14 @@ export const PHXDrawer = ({ open, onClose, title = 'Panel Title', position = 'ri
|
|
|
31
51
|
: position === 'top'
|
|
32
52
|
? '-translate-y-full'
|
|
33
53
|
: 'translate-y-full' },
|
|
34
|
-
React.createElement(Dialog.Panel, { as: motion.div,
|
|
35
|
-
React.createElement("div", { className: classNames('flex items-center justify-between border-b border-gray-200', sizeClass) },
|
|
36
|
-
React.createElement(Dialog.Title, { className: 'font-semibold text-gray-900
|
|
37
|
-
!disabled && (React.createElement("button", { className: 'rounded-md
|
|
38
|
-
React.createElement(XMarkIcon, { className: '
|
|
39
|
-
React.createElement("div", { className: classNames('flex-1 overflow-y-auto text-xs text-gray-500', sizeClass) }, children),
|
|
40
|
-
showFooter && (React.createElement("div", { className: classNames('flex items-center justify-end gap-3 border-t border-gray-200 bg-
|
|
41
|
-
React.createElement("button", { disabled: disabled, onClick: onCancel !== null && onCancel !== void 0 ? onCancel : (() =>
|
|
42
|
-
React.createElement("button", {
|
|
54
|
+
React.createElement(Dialog.Panel, { as: motion.div, className: classNames('pointer-events-auto flex flex-col overflow-hidden bg-gray-50 text-gray-700', 'w-screen', drawerShapeClass, className), style: dimensionStyle },
|
|
55
|
+
React.createElement("div", { className: classNames('flex items-center justify-between border-b border-gray-200 bg-gray-100]', sizeClass) },
|
|
56
|
+
React.createElement(Dialog.Title, { className: 'text-sm font-semibold text-gray-900' }, title),
|
|
57
|
+
!disabled && (React.createElement("button", { className: 'rounded-md text-gray-400 outline-none hover:text-gray-600', onClick: () => setDrawerOpen(false), type: 'button' },
|
|
58
|
+
React.createElement(XMarkIcon, { className: 'h-6 w-6' })))),
|
|
59
|
+
React.createElement("div", { className: classNames('flex-1 overflow-y-auto bg-gray-100 text-xs text-gray-500', sizeClass) }, children),
|
|
60
|
+
showFooter && (React.createElement("div", { className: classNames('flex items-center justify-end gap-3 border-t border-gray-200 bg-white', sizeClass) },
|
|
61
|
+
React.createElement("button", { className: 'rounded-md bg-gray-200 px-4 py-2 hover:bg-gray-300', disabled: disabled, onClick: onCancel !== null && onCancel !== void 0 ? onCancel : (() => setDrawerOpen(false)), type: 'button' }, "Cancel"),
|
|
62
|
+
React.createElement("button", { className: 'rounded-md bg-indigo-600 px-4 py-2 text-white hover:bg-indigo-700', disabled: disabled, onClick: onSave, type: 'button' }, "Save"))))))))));
|
|
43
63
|
};
|
|
44
64
|
//# sourceMappingURL=Drawer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Drawer.js","sourceRoot":"","sources":["../../../../src/components/Drawer/Drawer.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AACvD,OAAO,
|
|
1
|
+
{"version":3,"file":"Drawer.js","sourceRoot":"","sources":["../../../../src/components/Drawer/Drawer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,27 +4,23 @@ import PHXFuncGetCookieSession from '../../Func/getCookieSession';
|
|
|
4
4
|
import saveCookiesClient from '../../Func/saveCookiesClient';
|
|
5
5
|
import React from 'react';
|
|
6
6
|
import { classNames } from '../../types';
|
|
7
|
-
import { PHXModal } from '../../Modal';
|
|
8
|
-
import { PHXBanner } from '../../Banner';
|
|
9
7
|
import { PHXCard } from '../../Card';
|
|
10
8
|
import QuickAction from '../quick-action/quick-action';
|
|
9
|
+
import { useLoading } from '../../LoadingProvider';
|
|
11
10
|
export default function LeftHeaderSection({ checkLogoHeader, currSchoolId, perCodes, schools, topMenuLogoFromEnv, }) {
|
|
12
11
|
const isMultiSchool = schools.length > 1;
|
|
13
12
|
const wrapperRef = useRef(null);
|
|
14
13
|
const windowWidth = useWindowWidth();
|
|
15
14
|
const [show, setShow] = useState(false);
|
|
16
|
-
const
|
|
17
|
-
const [showModalSwitchSChool, setShowModalSwitchSchool] = useState({
|
|
18
|
-
show: false,
|
|
19
|
-
schoolId: currSchoolId,
|
|
20
|
-
});
|
|
15
|
+
const { setLoading: setLoadingGlobal } = useLoading();
|
|
21
16
|
const currSchool = schools.find((school) => school.id === currSchoolId);
|
|
22
|
-
const handleSwitchSchool = async () => {
|
|
17
|
+
const handleSwitchSchool = async (newSchoolId) => {
|
|
23
18
|
var _a, _b;
|
|
24
|
-
|
|
19
|
+
setShow(false);
|
|
20
|
+
setLoadingGlobal(true);
|
|
25
21
|
const currentSession = PHXFuncGetCookieSession();
|
|
26
22
|
const userInfo = currentSession === null || currentSession === void 0 ? void 0 : currentSession.user_info;
|
|
27
|
-
const nextSchool = schools.find((school) => school.id ===
|
|
23
|
+
const nextSchool = schools.find((school) => school.id === newSchoolId);
|
|
28
24
|
if (userInfo) {
|
|
29
25
|
try {
|
|
30
26
|
const newSchoolId = nextSchool === null || nextSchool === void 0 ? void 0 : nextSchool.id;
|
|
@@ -61,15 +57,12 @@ export default function LeftHeaderSection({ checkLogoHeader, currSchoolId, perCo
|
|
|
61
57
|
});
|
|
62
58
|
window.location.reload();
|
|
63
59
|
}
|
|
64
|
-
else {
|
|
65
|
-
setShowModalSwitchSchool((pre) => ({ ...pre, show: false }));
|
|
66
|
-
}
|
|
67
60
|
}
|
|
68
61
|
catch (error) {
|
|
69
62
|
console.error(error);
|
|
70
63
|
}
|
|
71
64
|
finally {
|
|
72
|
-
|
|
65
|
+
setLoadingGlobal(false);
|
|
73
66
|
}
|
|
74
67
|
}
|
|
75
68
|
};
|
|
@@ -96,16 +89,13 @@ export default function LeftHeaderSection({ checkLogoHeader, currSchoolId, perCo
|
|
|
96
89
|
React.createElement("p", null, currSchool === null || currSchool === void 0 ? void 0 : currSchool.name),
|
|
97
90
|
isMultiSchool && (React.createElement("svg", { className: classNames(' transition-all', show ? '-rotate-180' : ''), fill: 'none', height: '16', viewBox: '0 0 16 16', width: '16', xmlns: 'http://www.w3.org/2000/svg' },
|
|
98
91
|
React.createElement("path", { clipRule: 'evenodd', d: 'M4.57576 6.77535C4.81007 6.54103 5.18997 6.54103 5.42429 6.77535L8.20002 9.55108L10.9758 6.77535C11.2101 6.54103 11.59 6.54103 11.8243 6.77535C12.0586 7.00966 12.0586 7.38956 11.8243 7.62387L8.62429 10.8239C8.38997 11.0582 8.01007 11.0582 7.77576 10.8239L4.57576 7.62387C4.34145 7.38956 4.34145 7.00966 4.57576 6.77535Z', fill: '#6B7280', fillRule: 'evenodd' })))),
|
|
99
|
-
React.createElement(PHXModal, { inCard: false, onHide: () => setShowModalSwitchSchool((pre) => ({ ...pre, show: false })), onSubmit: handleSwitchSchool, primaryActionText: 'X\u00E1c nh\u1EADn', primaryLoading: loading, show: showModalSwitchSChool.show, title: 'X\u00E1c nh\u1EADn thay \u0111\u1ED5i tr\u01B0\u1EDDng' },
|
|
100
|
-
React.createElement(PHXBanner, { description: 'Khi thay \u0111\u1ED5i tr\u01B0\u1EDDng t\u1EA5t c\u1EA3 d\u1EEF li\u1EC7u s\u1EBD hi\u1EC3n th\u1ECB theo tr\u01B0\u1EDDng v\u1EEBa \u0111\u01B0\u1EE3c ch\u1ECDn', hideCloseButton: true, show: true, title: 'L\u01B0u \u00FD', type: 'warning' })),
|
|
101
92
|
show && (React.createElement("div", { className: 'absolute top-8 inline-block w-max' },
|
|
102
93
|
React.createElement(PHXCard, { primaryHeader: true, title: 'Ch\u1ECDn tr\u01B0\u1EDDng' },
|
|
103
94
|
React.createElement("div", { className: 'flex max-h-[400px] flex-col gap-y-1 overflow-y-auto' }, schools.map((school) => {
|
|
104
95
|
const isActive = currSchoolId === school.id;
|
|
105
|
-
return (React.createElement("button", { key: school.id, className: classNames('flex w-max min-w-full items-center justify-between rounded-lg p-2 text-left ', isActive ? 'bg-[#EBEBEB]' : 'hover:bg-[#EBEBEB]'), onClick: () =>
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
}), type: 'button' },
|
|
96
|
+
return (React.createElement("button", { key: school.id, className: classNames('flex w-max min-w-full items-center justify-between rounded-lg p-2 text-left ', isActive ? 'bg-[#EBEBEB]' : 'hover:bg-[#EBEBEB]'), onClick: () => {
|
|
97
|
+
handleSwitchSchool(school.id);
|
|
98
|
+
}, type: 'button' },
|
|
109
99
|
React.createElement("div", { className: 'flex items-center gap-x-2' },
|
|
110
100
|
React.createElement("img", { className: 'h-[22px] w-[22px]', src: school.logo || topMenuLogoFromEnv }),
|
|
111
101
|
React.createElement("span", { className: 'whitespace-nowrap text-xs text-gray-900' }, school.name)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"left-heder-section.js","sourceRoot":"","sources":["../../../../../src/components/MainWrapV4/components/left-heder-section.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,uBAAuB,MAAM,6BAA6B,CAAA;AACjE,OAAO,iBAAiB,MAAM,8BAA8B,CAAA;AAC5D,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"left-heder-section.js","sourceRoot":"","sources":["../../../../../src/components/MainWrapV4/components/left-heder-section.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,uBAAuB,MAAM,6BAA6B,CAAA;AACjE,OAAO,iBAAiB,MAAM,8BAA8B,CAAA;AAC5D,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAO,WAAW,MAAM,8BAA8B,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAElD,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EACxC,eAAe,EACf,YAAY,EACZ,QAAQ,EACR,OAAO,EACP,kBAAkB,GAgBnB;IACC,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAA;IACxC,MAAM,UAAU,GAAG,MAAM,CAAM,IAAI,CAAC,CAAA;IACpC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IACpC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACvC,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,UAAU,EAAE,CAAA;IAErD,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,YAAY,CAAC,CAAA;IAEvE,MAAM,kBAAkB,GAAG,KAAK,EAAE,WAAmB,EAAE,EAAE;;QACvD,OAAO,CAAC,KAAK,CAAC,CAAA;QACd,gBAAgB,CAAC,IAAI,CAAC,CAAA;QACtB,MAAM,cAAc,GAAG,uBAAuB,EAAE,CAAA;QAChD,MAAM,QAAQ,GAAG,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,SAAS,CAAA;QAE1C,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,WAAW,CAAC,CAAA;QAEtE,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAE,CAAA;gBAClC,MAAM,eAAe,GAAG,QAAQ,CAAC,SAAS,CAAA;gBAC1C,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAA;gBAErC,IAAI,WAAW,IAAI,WAAW,KAAK,eAAe,EAAE,CAAC;oBACnD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,+CAA+C,EAAE;wBACvE,MAAM,EAAE,MAAM;wBACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;4BACnB,SAAS,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM;4BAC7B,QAAQ,EAAE,WAAW;yBACtB,CAAC;wBACF,WAAW,EAAE,SAAS;qBACvB,CAAC,CAAA;oBACF,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;oBAE7B,MAAM,WAAW,GAAG;wBAClB,GAAG,QAAQ;wBACX,SAAS,EAAE,WAAW;wBACtB,EAAE,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM;wBACtB,MAAM,EAAE;4BACN,GAAG,aAAa;4BAChB,WAAW,EAAE;gCACX,QAAQ,EAAE,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,WAAW,0CAAE,QAAQ;6BAC5C;4BACD,cAAc,EAAE,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,WAAW,0CAAE,EAAE;yBAC5C;qBACF,CAAA;oBAED,iBAAiB,CAAC;wBAChB,KAAK,EAAE;4BACL,GAAG,cAAc;4BACjB,SAAS,EAAE,WAAW;4BACtB,YAAY,EAAE,IAAI,CAAC,KAAK;yBACzB;qBACF,CAAC,CAAA;oBAEF,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAA;gBAC1B,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YACtB,CAAC;oBAAS,CAAC;gBACT,gBAAgB,CAAC,KAAK,CAAC,CAAA;YACzB,CAAC;QACH,CAAC;IACH,CAAC,CAAA;IAED,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,kBAAkB,GAAG,CAAC,KAAU,EAAE,EAAE;;YACxC,IAAI,UAAU,CAAC,OAAO,IAAI,CAAC,CAAA,MAAA,UAAU,CAAC,OAAO,0CAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA,EAAE,CAAC;gBACtE,OAAO,CAAC,KAAK,CAAC,CAAA;YAChB,CAAC;QACH,CAAC,CAAA;QAED,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAA;QAC1D,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAA;QAC/D,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAA;IAEhB,OAAO,CACL,6BAAK,SAAS,EAAC,oCAAoC;QACjD,6BAAK,GAAG,EAAE,UAAU;YAClB,gCACE,SAAS,EAAE,UAAU,CACnB,oFAAoF,EACpF,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EACtB,aAAa,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CACpD,EACD,OAAO,EAAE,GAAG,EAAE;oBACZ,IAAI,aAAa,EAAE,CAAC;wBAClB,OAAO,CAAC,CAAC,IAAI,CAAC,CAAA;oBAChB,CAAC;gBACH,CAAC,EACD,IAAI,EAAC,QAAQ;gBAEb,6BAAK,SAAS,EAAC,SAAS,EAAC,GAAG,EAAE,eAAe,IAAI,kBAAkB,GAAI;gBACvE,+BAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI,CAAK;gBAExB,aAAa,IAAI,CAChB,6BACE,SAAS,EAAE,UAAU,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EACnE,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,IAAI,EACV,KAAK,EAAC,4BAA4B;oBAElC,8BACE,QAAQ,EAAC,SAAS,EAClB,CAAC,EAAC,iUAAiU,EACnU,IAAI,EAAC,SAAS,EACd,QAAQ,EAAC,SAAS,GAClB,CACE,CACP,CACM;YAER,IAAI,IAAI,CACP,6BAAK,SAAS,EAAC,mCAAmC;gBAChD,oBAAC,OAAO,IAAC,aAAa,QAAC,KAAK,EAAC,4BAAa;oBACxC,6BAAK,SAAS,EAAC,qDAAqD,IACjE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;wBACtB,MAAM,QAAQ,GAAG,YAAY,KAAK,MAAM,CAAC,EAAE,CAAA;wBAC3C,OAAO,CACL,gCACE,GAAG,EAAE,MAAM,CAAC,EAAE,EACd,SAAS,EAAE,UAAU,CACnB,+EAA+E,EAC/E,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,oBAAoB,CACjD,EACD,OAAO,EAAE,GAAG,EAAE;gCACZ,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;4BAC/B,CAAC,EACD,IAAI,EAAC,QAAQ;4BAEb,6BAAK,SAAS,EAAC,2BAA2B;gCACxC,6BAAK,SAAS,EAAC,mBAAmB,EAAC,GAAG,EAAE,MAAM,CAAC,IAAI,IAAI,kBAAkB,GAAI;gCAC7E,8BAAM,SAAS,EAAC,yCAAyC,IAAE,MAAM,CAAC,IAAI,CAAQ,CAC1E;4BAEL,QAAQ,IAAI,CACX,6BACE,SAAS,EAAC,WAAW,EACrB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,GAAG,EACV,OAAO,EAAC,UAAU,EAClB,KAAK,EAAC,IAAI,EACV,KAAK,EAAC,4BAA4B;gCAElC,8BACE,QAAQ,EAAC,SAAS,EAClB,CAAC,EAAC,6UAA6U,EAC/U,IAAI,EAAC,SAAS,EACd,QAAQ,EAAC,SAAS,GAClB,CACE,CACP,CACM,CACV,CAAA;oBACH,CAAC,CAAC,CACE,CACE,CACN,CACP,CACG;QAEL,WAAW,IAAI,IAAI,IAAI,oBAAC,WAAW,IAAC,cAAc,EAAE,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI,KAAI,EAAE,EAAE,QAAQ,EAAE,QAAQ,GAAI,CAC/F,CACP,CAAA;AACH,CAAC"}
|