@ya-accelerators/nextjs-framework 0.0.0
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/@types/general.d.ts +1 -0
- package/@types/image.d.ts +8 -0
- package/@types/next-auth.d.ts +18 -0
- package/dist/env.client.d.ts +3 -0
- package/dist/env.client.js +9 -0
- package/dist/env.client.js.map +1 -0
- package/dist/env.d.ts +6 -0
- package/dist/env.js +18 -0
- package/dist/env.js.map +1 -0
- package/dist/hooks/date/index.d.ts +11 -0
- package/dist/hooks/date/index.js +14 -0
- package/dist/hooks/date/index.js.map +1 -0
- package/dist/hooks/dispatch/index.d.ts +9 -0
- package/dist/hooks/dispatch/index.jsx +25 -0
- package/dist/hooks/dispatch/index.jsx.map +1 -0
- package/dist/hooks/index.d.ts +6 -0
- package/dist/hooks/index.js +7 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/loading/index.d.ts +10 -0
- package/dist/hooks/loading/index.jsx +22 -0
- package/dist/hooks/loading/index.jsx.map +1 -0
- package/dist/hooks/localStorage/index.d.ts +1 -0
- package/dist/hooks/localStorage/index.js +53 -0
- package/dist/hooks/localStorage/index.js.map +1 -0
- package/dist/hooks/modal/index.d.ts +26 -0
- package/dist/hooks/modal/index.jsx +63 -0
- package/dist/hooks/modal/index.jsx.map +1 -0
- package/dist/hooks/toast/index.d.ts +15 -0
- package/dist/hooks/toast/index.jsx +39 -0
- package/dist/hooks/toast/index.jsx.map +1 -0
- package/dist/i18n/index.d.ts +3 -0
- package/dist/i18n/index.js +40 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/i18n/strings/en-US.json +18 -0
- package/dist/i18n/strings/ja-JP.json +37 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/cookie/index.d.ts +9 -0
- package/dist/lib/cookie/index.js +66 -0
- package/dist/lib/cookie/index.js.map +1 -0
- package/dist/lib/index.d.ts +10 -0
- package/dist/lib/index.js +11 -0
- package/dist/lib/index.js.map +1 -0
- package/dist/lib/next-auth/index.d.ts +2 -0
- package/dist/lib/next-auth/index.js +62 -0
- package/dist/lib/next-auth/index.js.map +1 -0
- package/dist/lib/s3/index.d.ts +2 -0
- package/dist/lib/s3/index.js +17 -0
- package/dist/lib/s3/index.js.map +1 -0
- package/dist/lib/trpc/index.d.ts +8 -0
- package/dist/lib/trpc/index.js +32 -0
- package/dist/lib/trpc/index.js.map +1 -0
- package/dist/styles/globals.css +26 -0
- package/dist/styles/tailwind.config.d.ts +577 -0
- package/dist/styles/tailwind.config.js +671 -0
- package/dist/styles/tailwind.config.js.map +1 -0
- package/dist/styles/tailwind.config.ts +672 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/ui/component/button/base.d.ts +27 -0
- package/dist/ui/component/button/base.jsx +54 -0
- package/dist/ui/component/button/base.jsx.map +1 -0
- package/dist/ui/component/button/colored/index.d.ts +11 -0
- package/dist/ui/component/button/colored/index.jsx +7 -0
- package/dist/ui/component/button/colored/index.jsx.map +1 -0
- package/dist/ui/component/button/image/index.d.ts +4 -0
- package/dist/ui/component/button/image/index.jsx +5 -0
- package/dist/ui/component/button/image/index.jsx.map +1 -0
- package/dist/ui/component/button/index.d.ts +18 -0
- package/dist/ui/component/button/index.jsx +25 -0
- package/dist/ui/component/button/index.jsx.map +1 -0
- package/dist/ui/component/button/text/index.d.ts +11 -0
- package/dist/ui/component/button/text/index.jsx +8 -0
- package/dist/ui/component/button/text/index.jsx.map +1 -0
- package/dist/ui/component/card/index.d.ts +12 -0
- package/dist/ui/component/card/index.jsx +20 -0
- package/dist/ui/component/card/index.jsx.map +1 -0
- package/dist/ui/component/icon/index.d.ts +7 -0
- package/dist/ui/component/icon/index.jsx +3 -0
- package/dist/ui/component/icon/index.jsx.map +1 -0
- package/dist/ui/component/index.d.ts +95 -0
- package/dist/ui/component/index.js +15 -0
- package/dist/ui/component/index.js.map +1 -0
- package/dist/ui/component/loading/index.d.ts +5 -0
- package/dist/ui/component/loading/index.jsx +27 -0
- package/dist/ui/component/loading/index.jsx.map +1 -0
- package/dist/ui/component/ssr/index.d.ts +5 -0
- package/dist/ui/component/ssr/index.jsx +11 -0
- package/dist/ui/component/ssr/index.jsx.map +1 -0
- package/dist/ui/component/typography/H1/index.d.ts +7 -0
- package/dist/ui/component/typography/H1/index.jsx +13 -0
- package/dist/ui/component/typography/H1/index.jsx.map +1 -0
- package/dist/ui/component/typography/H2/index.d.ts +7 -0
- package/dist/ui/component/typography/H2/index.jsx +13 -0
- package/dist/ui/component/typography/H2/index.jsx.map +1 -0
- package/dist/ui/component/typography/H3/index.d.ts +7 -0
- package/dist/ui/component/typography/H3/index.jsx +13 -0
- package/dist/ui/component/typography/H3/index.jsx.map +1 -0
- package/dist/ui/component/typography/H4/index.d.ts +7 -0
- package/dist/ui/component/typography/H4/index.jsx +13 -0
- package/dist/ui/component/typography/H4/index.jsx.map +1 -0
- package/dist/ui/component/typography/H5/index.d.ts +7 -0
- package/dist/ui/component/typography/H5/index.jsx +13 -0
- package/dist/ui/component/typography/H5/index.jsx.map +1 -0
- package/dist/ui/component/typography/H6/index.d.ts +7 -0
- package/dist/ui/component/typography/H6/index.jsx +13 -0
- package/dist/ui/component/typography/H6/index.jsx.map +1 -0
- package/dist/ui/component/typography/Label/index.d.ts +7 -0
- package/dist/ui/component/typography/Label/index.jsx +13 -0
- package/dist/ui/component/typography/Label/index.jsx.map +1 -0
- package/dist/ui/component/typography/LinkText/index.d.ts +8 -0
- package/dist/ui/component/typography/LinkText/index.jsx +14 -0
- package/dist/ui/component/typography/LinkText/index.jsx.map +1 -0
- package/dist/ui/component/typography/P/index.d.ts +7 -0
- package/dist/ui/component/typography/P/index.jsx +13 -0
- package/dist/ui/component/typography/P/index.jsx.map +1 -0
- package/dist/ui/component/typography/Pre/index.d.ts +7 -0
- package/dist/ui/component/typography/Pre/index.jsx +13 -0
- package/dist/ui/component/typography/Pre/index.jsx.map +1 -0
- package/dist/ui/component/typography/index.d.ts +54 -0
- package/dist/ui/component/typography/index.jsx +23 -0
- package/dist/ui/component/typography/index.jsx.map +1 -0
- package/dist/ui/composite/button/index.d.ts +8 -0
- package/dist/ui/composite/button/index.jsx +45 -0
- package/dist/ui/composite/button/index.jsx.map +1 -0
- package/dist/ui/composite/dropdown/index.d.ts +12 -0
- package/dist/ui/composite/dropdown/index.jsx +102 -0
- package/dist/ui/composite/dropdown/index.jsx.map +1 -0
- package/dist/ui/composite/index.d.ts +342 -0
- package/dist/ui/composite/index.js +13 -0
- package/dist/ui/composite/index.js.map +1 -0
- package/dist/ui/composite/input/address/index.d.ts +33 -0
- package/dist/ui/composite/input/address/index.jsx +132 -0
- package/dist/ui/composite/input/address/index.jsx.map +1 -0
- package/dist/ui/composite/input/address/map.d.ts +64 -0
- package/dist/ui/composite/input/address/map.jsx +111 -0
- package/dist/ui/composite/input/address/map.jsx.map +1 -0
- package/dist/ui/composite/input/address/utils.d.ts +23 -0
- package/dist/ui/composite/input/address/utils.js +63 -0
- package/dist/ui/composite/input/address/utils.js.map +1 -0
- package/dist/ui/composite/input/checkbox/index.d.ts +22 -0
- package/dist/ui/composite/input/checkbox/index.jsx +38 -0
- package/dist/ui/composite/input/checkbox/index.jsx.map +1 -0
- package/dist/ui/composite/input/datePicker/index.d.ts +19 -0
- package/dist/ui/composite/input/datePicker/index.jsx +100 -0
- package/dist/ui/composite/input/datePicker/index.jsx.map +1 -0
- package/dist/ui/composite/input/dateRange/index.d.ts +14 -0
- package/dist/ui/composite/input/dateRange/index.jsx +46 -0
- package/dist/ui/composite/input/dateRange/index.jsx.map +1 -0
- package/dist/ui/composite/input/dateTimePicker/index.d.ts +15 -0
- package/dist/ui/composite/input/dateTimePicker/index.jsx +74 -0
- package/dist/ui/composite/input/dateTimePicker/index.jsx.map +1 -0
- package/dist/ui/composite/input/dateTimeRange/index.d.ts +14 -0
- package/dist/ui/composite/input/dateTimeRange/index.jsx +88 -0
- package/dist/ui/composite/input/dateTimeRange/index.jsx.map +1 -0
- package/dist/ui/composite/input/index.d.ts +216 -0
- package/dist/ui/composite/input/index.js +35 -0
- package/dist/ui/composite/input/index.js.map +1 -0
- package/dist/ui/composite/input/list/index.d.ts +20 -0
- package/dist/ui/composite/input/list/index.jsx +30 -0
- package/dist/ui/composite/input/list/index.jsx.map +1 -0
- package/dist/ui/composite/input/radio/index.d.ts +14 -0
- package/dist/ui/composite/input/radio/index.jsx +34 -0
- package/dist/ui/composite/input/radio/index.jsx.map +1 -0
- package/dist/ui/composite/input/search/index.d.ts +5 -0
- package/dist/ui/composite/input/search/index.jsx +38 -0
- package/dist/ui/composite/input/search/index.jsx.map +1 -0
- package/dist/ui/composite/input/select/ClearIndicator/index.d.ts +4 -0
- package/dist/ui/composite/input/select/ClearIndicator/index.jsx +8 -0
- package/dist/ui/composite/input/select/ClearIndicator/index.jsx.map +1 -0
- package/dist/ui/composite/input/select/Control/index.d.ts +4 -0
- package/dist/ui/composite/input/select/Control/index.jsx +23 -0
- package/dist/ui/composite/input/select/Control/index.jsx.map +1 -0
- package/dist/ui/composite/input/select/DropdownIndicator/index.d.ts +4 -0
- package/dist/ui/composite/input/select/DropdownIndicator/index.jsx +8 -0
- package/dist/ui/composite/input/select/DropdownIndicator/index.jsx.map +1 -0
- package/dist/ui/composite/input/select/GroupHeading/index.d.ts +4 -0
- package/dist/ui/composite/input/select/GroupHeading/index.jsx +9 -0
- package/dist/ui/composite/input/select/GroupHeading/index.jsx.map +1 -0
- package/dist/ui/composite/input/select/Input/index.d.ts +4 -0
- package/dist/ui/composite/input/select/Input/index.jsx +7 -0
- package/dist/ui/composite/input/select/Input/index.jsx.map +1 -0
- package/dist/ui/composite/input/select/Menu/index.d.ts +4 -0
- package/dist/ui/composite/input/select/Menu/index.jsx +19 -0
- package/dist/ui/composite/input/select/Menu/index.jsx.map +1 -0
- package/dist/ui/composite/input/select/MultiValue/index.d.ts +4 -0
- package/dist/ui/composite/input/select/MultiValue/index.jsx +15 -0
- package/dist/ui/composite/input/select/MultiValue/index.jsx.map +1 -0
- package/dist/ui/composite/input/select/Option/index.d.ts +4 -0
- package/dist/ui/composite/input/select/Option/index.jsx +79 -0
- package/dist/ui/composite/input/select/Option/index.jsx.map +1 -0
- package/dist/ui/composite/input/select/Placeholder/index.d.ts +4 -0
- package/dist/ui/composite/input/select/Placeholder/index.jsx +7 -0
- package/dist/ui/composite/input/select/Placeholder/index.jsx.map +1 -0
- package/dist/ui/composite/input/select/SelectContainer/index.d.ts +4 -0
- package/dist/ui/composite/input/select/SelectContainer/index.jsx +40 -0
- package/dist/ui/composite/input/select/SelectContainer/index.jsx.map +1 -0
- package/dist/ui/composite/input/select/SingleValue/index.d.ts +4 -0
- package/dist/ui/composite/input/select/SingleValue/index.jsx +17 -0
- package/dist/ui/composite/input/select/SingleValue/index.jsx.map +1 -0
- package/dist/ui/composite/input/select/index.d.ts +37 -0
- package/dist/ui/composite/input/select/index.jsx +242 -0
- package/dist/ui/composite/input/select/index.jsx.map +1 -0
- package/dist/ui/composite/input/select/types.d.ts +16 -0
- package/dist/ui/composite/input/select/types.js +6 -0
- package/dist/ui/composite/input/select/types.js.map +1 -0
- package/dist/ui/composite/input/text/index.d.ts +15 -0
- package/dist/ui/composite/input/text/index.jsx +40 -0
- package/dist/ui/composite/input/text/index.jsx.map +1 -0
- package/dist/ui/composite/input/textarea/index.d.ts +11 -0
- package/dist/ui/composite/input/textarea/index.jsx +62 -0
- package/dist/ui/composite/input/textarea/index.jsx.map +1 -0
- package/dist/ui/composite/input/timePicker/index.d.ts +13 -0
- package/dist/ui/composite/input/timePicker/index.jsx +36 -0
- package/dist/ui/composite/input/timePicker/index.jsx.map +1 -0
- package/dist/ui/composite/input/timeRange/index.d.ts +16 -0
- package/dist/ui/composite/input/timeRange/index.jsx +54 -0
- package/dist/ui/composite/input/timeRange/index.jsx.map +1 -0
- package/dist/ui/composite/input/weekDaysSelector/index.d.ts +11 -0
- package/dist/ui/composite/input/weekDaysSelector/index.jsx +39 -0
- package/dist/ui/composite/input/weekDaysSelector/index.jsx.map +1 -0
- package/dist/ui/composite/input/weekdayPicker/index.d.ts +13 -0
- package/dist/ui/composite/input/weekdayPicker/index.jsx +49 -0
- package/dist/ui/composite/input/weekdayPicker/index.jsx.map +1 -0
- package/dist/ui/composite/label/index.d.ts +11 -0
- package/dist/ui/composite/label/index.jsx +18 -0
- package/dist/ui/composite/label/index.jsx.map +1 -0
- package/dist/ui/composite/pageTitle/index.d.ts +18 -0
- package/dist/ui/composite/pageTitle/index.jsx +62 -0
- package/dist/ui/composite/pageTitle/index.jsx.map +1 -0
- package/dist/ui/functional/index.d.ts +10 -0
- package/dist/ui/functional/index.js +9 -0
- package/dist/ui/functional/index.js.map +1 -0
- package/dist/ui/functional/notFound/index.d.ts +1 -0
- package/dist/ui/functional/notFound/index.jsx +13 -0
- package/dist/ui/functional/notFound/index.jsx.map +1 -0
- package/dist/ui/functional/signInForm/index.d.ts +4 -0
- package/dist/ui/functional/signInForm/index.jsx +45 -0
- package/dist/ui/functional/signInForm/index.jsx.map +1 -0
- package/dist/ui/functional/signOutForm/index.d.ts +3 -0
- package/dist/ui/functional/signOutForm/index.jsx +29 -0
- package/dist/ui/functional/signOutForm/index.jsx.map +1 -0
- package/dist/ui/index.d.ts +6 -0
- package/dist/ui/index.js +7 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/ui/layout/app/component.d.ts +59 -0
- package/dist/ui/layout/app/component.jsx +224 -0
- package/dist/ui/layout/app/component.jsx.map +1 -0
- package/dist/ui/layout/app/content/index.d.ts +9 -0
- package/dist/ui/layout/app/content/index.jsx +18 -0
- package/dist/ui/layout/app/content/index.jsx.map +1 -0
- package/dist/ui/layout/app/index.d.ts +18 -0
- package/dist/ui/layout/app/index.jsx +40 -0
- package/dist/ui/layout/app/index.jsx.map +1 -0
- package/dist/ui/layout/form/index.d.ts +68 -0
- package/dist/ui/layout/form/index.jsx +558 -0
- package/dist/ui/layout/form/index.jsx.map +1 -0
- package/dist/ui/layout/index.d.ts +356 -0
- package/dist/ui/layout/index.js +19 -0
- package/dist/ui/layout/index.js.map +1 -0
- package/dist/ui/layout/modal/index.d.ts +7 -0
- package/dist/ui/layout/modal/index.jsx +11 -0
- package/dist/ui/layout/modal/index.jsx.map +1 -0
- package/dist/ui/layout/object/index.d.ts +30 -0
- package/dist/ui/layout/object/index.jsx +145 -0
- package/dist/ui/layout/object/index.jsx.map +1 -0
- package/dist/ui/layout/root/index.d.ts +10 -0
- package/dist/ui/layout/root/index.jsx +31 -0
- package/dist/ui/layout/root/index.jsx.map +1 -0
- package/dist/ui/layout/root/provider/index.d.ts +7 -0
- package/dist/ui/layout/root/provider/index.jsx +26 -0
- package/dist/ui/layout/root/provider/index.jsx.map +1 -0
- package/dist/ui/layout/tab/component.d.ts +4 -0
- package/dist/ui/layout/tab/component.jsx +16 -0
- package/dist/ui/layout/tab/component.jsx.map +1 -0
- package/dist/ui/layout/tab/content/index.d.ts +8 -0
- package/dist/ui/layout/tab/content/index.jsx +8 -0
- package/dist/ui/layout/tab/content/index.jsx.map +1 -0
- package/dist/ui/layout/tab/index.d.ts +11 -0
- package/dist/ui/layout/tab/index.jsx +25 -0
- package/dist/ui/layout/tab/index.jsx.map +1 -0
- package/dist/ui/layout/table/index.d.ts +33 -0
- package/dist/ui/layout/table/index.jsx +283 -0
- package/dist/ui/layout/table/index.jsx.map +1 -0
- package/dist/ui/layout/toast/index.d.ts +7 -0
- package/dist/ui/layout/toast/index.jsx +18 -0
- package/dist/ui/layout/toast/index.jsx.map +1 -0
- package/dist/ui/theme/border/index.d.ts +28 -0
- package/dist/ui/theme/border/index.js +67 -0
- package/dist/ui/theme/border/index.js.map +1 -0
- package/dist/ui/theme/color/index.d.ts +32 -0
- package/dist/ui/theme/color/index.js +106 -0
- package/dist/ui/theme/color/index.js.map +1 -0
- package/dist/ui/theme/index.d.ts +4 -0
- package/dist/ui/theme/index.js +5 -0
- package/dist/ui/theme/index.js.map +1 -0
- package/dist/ui/theme/rounded/index.d.ts +9 -0
- package/dist/ui/theme/rounded/index.js +14 -0
- package/dist/ui/theme/rounded/index.js.map +1 -0
- package/dist/ui/theme/size/index.d.ts +15 -0
- package/dist/ui/theme/size/index.js +55 -0
- package/dist/ui/theme/size/index.js.map +1 -0
- package/dist/ui/types/index.d.ts +113 -0
- package/dist/ui/types/index.js +33 -0
- package/dist/ui/types/index.js.map +1 -0
- package/dist/util/client.d.ts +2 -0
- package/dist/util/client.js +4 -0
- package/dist/util/client.js.map +1 -0
- package/dist/util/date/impl.d.ts +7 -0
- package/dist/util/date/impl.js +22 -0
- package/dist/util/date/impl.js.map +1 -0
- package/dist/util/date/index.d.ts +17 -0
- package/dist/util/date/index.js +16 -0
- package/dist/util/date/index.js.map +1 -0
- package/dist/util/index.d.ts +17 -0
- package/dist/util/index.js +143 -0
- package/dist/util/index.js.map +1 -0
- package/package.json +62 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { signIn, signOut } from 'next-auth/react';
|
|
3
|
+
import { useDispatchContext } from '../../../hooks/dispatch';
|
|
4
|
+
import { Form } from '../../layout/form';
|
|
5
|
+
import { ColorTypes } from '../../theme/color';
|
|
6
|
+
export const SignInForm = ({ title, name }) => {
|
|
7
|
+
const { dispatch } = useDispatchContext();
|
|
8
|
+
return (<Form name={name ?? 'signIn'} className='w-full' title={title} actions={{
|
|
9
|
+
submit: async ({ email, password }) => {
|
|
10
|
+
await signOut({ redirect: false }).catch();
|
|
11
|
+
const ret = await dispatch(signIn('credentials', {
|
|
12
|
+
redirect: false,
|
|
13
|
+
email,
|
|
14
|
+
password,
|
|
15
|
+
}));
|
|
16
|
+
if (ret?.error) {
|
|
17
|
+
throw new Error('Sign in failed. Please check your email and password.');
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
onSuccess: {
|
|
21
|
+
toast: 'Sign in succeeded',
|
|
22
|
+
replace: '/',
|
|
23
|
+
},
|
|
24
|
+
}} items={[
|
|
25
|
+
[
|
|
26
|
+
{
|
|
27
|
+
name: 'email',
|
|
28
|
+
label: 'Email',
|
|
29
|
+
required: true,
|
|
30
|
+
type: 'email',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
name: 'password',
|
|
34
|
+
label: 'Password',
|
|
35
|
+
required: true,
|
|
36
|
+
type: 'password',
|
|
37
|
+
},
|
|
38
|
+
],
|
|
39
|
+
]} submitButton={{
|
|
40
|
+
variant: 'colored',
|
|
41
|
+
color: ColorTypes.primary,
|
|
42
|
+
label: 'Sign in',
|
|
43
|
+
}}/>);
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=index.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../../src/ui/functional/signInForm/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAEjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE9C,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAqC,EAAE,EAAE;IAC/E,MAAM,EAAE,QAAQ,EAAE,GAAG,kBAAkB,EAAE,CAAA;IACzC,OAAO,CACL,CAAC,IAAI,CACH,IAAI,CAAC,CAAC,IAAI,IAAI,QAAQ,CAAC,CACvB,SAAS,CAAC,QAAQ,CAClB,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,OAAO,CAAC,CAAC;YACP,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAuC,EAAE,EAAE;gBACzE,MAAM,OAAO,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;gBAC1C,MAAM,GAAG,GAAG,MAAM,QAAQ,CACxB,MAAM,CAAC,aAAa,EAAE;oBACpB,QAAQ,EAAE,KAAK;oBACf,KAAK;oBACL,QAAQ;iBACT,CAAC,CACH,CAAA;gBACD,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC;oBACf,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;gBAC1E,CAAC;YACH,CAAC;YACD,SAAS,EAAE;gBACT,KAAK,EAAE,mBAAmB;gBAC1B,OAAO,EAAE,GAAG;aACb;SACF,CAAC,CACF,KAAK,CAAC,CAAC;YACL;gBACE;oBACE,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,OAAO;oBACd,QAAQ,EAAE,IAAI;oBACd,IAAI,EAAE,OAAO;iBACd;gBACD;oBACE,IAAI,EAAE,UAAU;oBAChB,KAAK,EAAE,UAAU;oBACjB,QAAQ,EAAE,IAAI;oBACd,IAAI,EAAE,UAAU;iBACjB;aACF;SACF,CAAC,CACF,YAAY,CAAC,CAAC;YACZ,OAAO,EAAE,SAAS;YAClB,KAAK,EAAE,UAAU,CAAC,OAAO;YACzB,KAAK,EAAE,SAAS;SACjB,CAAC,EACF,CACH,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { useRouter } from 'next/navigation';
|
|
3
|
+
import { signOut } from 'next-auth/react';
|
|
4
|
+
import { useEffect, useRef } from 'react';
|
|
5
|
+
import { useLoadingContext } from '../../../hooks/loading';
|
|
6
|
+
import { deleteCookieValue, getAllCookieNames } from '../../../lib/cookie';
|
|
7
|
+
export const SignOutForm = ({ replace }) => {
|
|
8
|
+
const { showLoading } = useLoadingContext();
|
|
9
|
+
useEffect(() => {
|
|
10
|
+
showLoading();
|
|
11
|
+
}, [showLoading]);
|
|
12
|
+
const router = useRouter();
|
|
13
|
+
const formRef = useRef(null);
|
|
14
|
+
useEffect(() => {
|
|
15
|
+
if (!formRef.current) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
formRef.current.requestSubmit();
|
|
19
|
+
}, [formRef]);
|
|
20
|
+
return (<form ref={formRef} onSubmit={async (e) => {
|
|
21
|
+
e.preventDefault();
|
|
22
|
+
const allCookieNames = await getAllCookieNames();
|
|
23
|
+
await Promise.all(allCookieNames.map((cookieName) => deleteCookieValue(cookieName)));
|
|
24
|
+
await signOut({ redirect: false }).catch();
|
|
25
|
+
router.refresh();
|
|
26
|
+
router.replace(replace === undefined ? '/' : replace);
|
|
27
|
+
}}/>);
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=index.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../../src/ui/functional/signOutForm/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAEzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAE1E,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAE,OAAO,EAAwB,EAAE,EAAE;IAC/D,MAAM,EAAE,WAAW,EAAE,GAAG,iBAAiB,EAAE,CAAA;IAC3C,SAAS,CAAC,GAAG,EAAE;QACb,WAAW,EAAE,CAAA;IACf,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAA;IACjB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,MAAM,OAAO,GAAG,MAAM,CAAkB,IAAI,CAAC,CAAA;IAC7C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACrB,OAAM;QACR,CAAC;QACD,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,CAAA;IACjC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;IACb,OAAO,CACL,CAAC,IAAI,CACH,GAAG,CAAC,CAAC,OAAO,CAAC,CACb,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YACpB,CAAC,CAAC,cAAc,EAAE,CAAA;YAClB,MAAM,cAAc,GAAG,MAAM,iBAAiB,EAAE,CAAA;YAChD,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;YACpF,MAAM,OAAO,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;YAC1C,MAAM,CAAC,OAAO,EAAE,CAAA;YAChB,MAAM,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QACvD,CAAC,CAAC,EACF,CACH,CAAA;AACH,CAAC,CAAA"}
|
package/dist/ui/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import { type ComponentProps } from 'react';
|
|
3
|
+
import { Composite } from '../../composite';
|
|
4
|
+
import { Rounded } from '../../theme';
|
|
5
|
+
import type { IconType } from '../../types';
|
|
6
|
+
interface DividerItem {
|
|
7
|
+
type: 'divider';
|
|
8
|
+
}
|
|
9
|
+
interface SpacerItem {
|
|
10
|
+
type: 'spacer';
|
|
11
|
+
}
|
|
12
|
+
interface SideMenuSectionedItem extends Omit<ComponentProps<typeof SideMenuItemSectioned>, 'rounded' | 'closed' | 'width'> {
|
|
13
|
+
type: 'section';
|
|
14
|
+
}
|
|
15
|
+
declare const SideMenuItemSectioned: ({ name, action, items, rounded, closed, }: {
|
|
16
|
+
name?: string;
|
|
17
|
+
action?: ComponentProps<typeof Composite.Button>;
|
|
18
|
+
items: (boolean | DividerItem | SideMenuItem | SideMenuSectionedItem)[];
|
|
19
|
+
rounded?: Rounded;
|
|
20
|
+
closed: boolean;
|
|
21
|
+
}) => import("react").JSX.Element;
|
|
22
|
+
interface SideMenuItem extends Omit<ComponentProps<typeof SideMenuItem>, 'rounded' | 'closed' | 'width'> {
|
|
23
|
+
type: 'item';
|
|
24
|
+
}
|
|
25
|
+
declare const SideMenuItem: ({ icon, badge, label, action, href, rounded, closed, disabled, ignoreCurrent, }: {
|
|
26
|
+
icon?: IconType;
|
|
27
|
+
badge?: ReactNode;
|
|
28
|
+
label?: string;
|
|
29
|
+
action?: ComponentProps<typeof Composite.Button>;
|
|
30
|
+
href?: string;
|
|
31
|
+
rounded?: Rounded;
|
|
32
|
+
closed?: boolean;
|
|
33
|
+
disabled?: boolean;
|
|
34
|
+
ignoreCurrent?: boolean;
|
|
35
|
+
}) => import("react").JSX.Element;
|
|
36
|
+
export declare const SideMenu: ({ items, divider, rounded, closeEnabled, }: {
|
|
37
|
+
items: (boolean | DividerItem | SpacerItem | SideMenuItem | SideMenuSectionedItem)[];
|
|
38
|
+
divider?: boolean;
|
|
39
|
+
rounded?: Rounded;
|
|
40
|
+
closeEnabled?: boolean;
|
|
41
|
+
}) => import("react").JSX.Element;
|
|
42
|
+
interface GlobalMenuItem extends Omit<ComponentProps<typeof GlobalMenuItem>, 'rounded' | 'isCurrent'> {
|
|
43
|
+
type: 'item';
|
|
44
|
+
}
|
|
45
|
+
declare const GlobalMenuItem: ({ isCurrent, icon, badge, label, href, rounded, disabled, }: {
|
|
46
|
+
isCurrent: boolean;
|
|
47
|
+
icon?: IconType;
|
|
48
|
+
badge?: ReactNode;
|
|
49
|
+
label?: string;
|
|
50
|
+
href?: string;
|
|
51
|
+
rounded?: Rounded;
|
|
52
|
+
disabled?: boolean;
|
|
53
|
+
}) => import("react").JSX.Element;
|
|
54
|
+
export declare const GlobalMenu: ({ items, divider, rounded, }: {
|
|
55
|
+
items: (DividerItem | SpacerItem | GlobalMenuItem)[];
|
|
56
|
+
divider?: boolean;
|
|
57
|
+
rounded?: Rounded;
|
|
58
|
+
}) => import("react").JSX.Element;
|
|
59
|
+
export {};
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import NavigateBeforeIcon from '@mui/icons-material/NavigateBefore';
|
|
3
|
+
import NavigateNextIcon from '@mui/icons-material/NavigateNext';
|
|
4
|
+
import { Badge, Tooltip } from '@mui/material';
|
|
5
|
+
import classNames from 'classnames';
|
|
6
|
+
import { motion } from 'framer-motion';
|
|
7
|
+
import Link from 'next/link';
|
|
8
|
+
import { usePathname } from 'next/navigation';
|
|
9
|
+
import { useTranslations } from 'next-intl';
|
|
10
|
+
import { useMemo } from 'react';
|
|
11
|
+
import { useLocalStorage } from '../../../hooks/localStorage';
|
|
12
|
+
import { Component } from '../../component';
|
|
13
|
+
import { Composite } from '../../composite';
|
|
14
|
+
import { BackgroundColorTypes, ColorTypes, ControlSize, getBackgroundColorTypeClassName, getRoundedClassName, getTextColorTypeClassName, Rounded, TextColorTypes, } from '../../theme';
|
|
15
|
+
const SideMenuItemSectioned = ({ name, action, items, rounded, closed, }) => {
|
|
16
|
+
const extractChildHrefs = (items) => {
|
|
17
|
+
const hrefs = [];
|
|
18
|
+
for (const item of items) {
|
|
19
|
+
if (typeof item === 'boolean') {
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
if (item.type === 'section') {
|
|
23
|
+
for (const childItem of item.items) {
|
|
24
|
+
if (typeof childItem !== 'boolean' && childItem.type === 'item') {
|
|
25
|
+
if (childItem.href !== undefined) {
|
|
26
|
+
hrefs.push(childItem.href);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
hrefs.push(...extractChildHrefs(item.items));
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return hrefs;
|
|
34
|
+
};
|
|
35
|
+
const pathname = usePathname();
|
|
36
|
+
const childHrefs = extractChildHrefs(items);
|
|
37
|
+
return (<div className='gap-sm flex flex-col w-full'>
|
|
38
|
+
<div className='flex w-full items-center justify-between'>
|
|
39
|
+
{name !== undefined && (<Component.Typography.P color={TextColorTypes.sub} className='text-xs bg-transparent whitespace-nowrap! overflow-ellipsis' disabled={true}>
|
|
40
|
+
{closed ? (name.length > 3 ? `${name.slice(0, 3)}...` : name) : name}
|
|
41
|
+
</Component.Typography.P>)}
|
|
42
|
+
{action && !closed && <Composite.Button {...action}/>}
|
|
43
|
+
</div>
|
|
44
|
+
<div className='gap-xs flex w-full flex-col'>
|
|
45
|
+
{items.map((x, i) => {
|
|
46
|
+
if (typeof x === 'boolean') {
|
|
47
|
+
return <></>;
|
|
48
|
+
}
|
|
49
|
+
else if (x.type === 'divider') {
|
|
50
|
+
return <div key={i} className='bg-outline-default h-px w-full'/>;
|
|
51
|
+
}
|
|
52
|
+
else if (x.type === 'section') {
|
|
53
|
+
return (<motion.div key={i} className={classNames('ml-base', name === undefined ? 'mt-0' : 'mt-xs')} animate={closed ? 'closed' : 'opened'} initial={false} variants={{
|
|
54
|
+
opened: {
|
|
55
|
+
marginLeft: '16px',
|
|
56
|
+
transition: {
|
|
57
|
+
duration: 0.3,
|
|
58
|
+
ease: 'easeInOut',
|
|
59
|
+
},
|
|
60
|
+
},
|
|
61
|
+
closed: {
|
|
62
|
+
marginLeft: '0px',
|
|
63
|
+
transition: {
|
|
64
|
+
duration: 0.3,
|
|
65
|
+
ease: 'easeInOut',
|
|
66
|
+
},
|
|
67
|
+
},
|
|
68
|
+
}}>
|
|
69
|
+
<SideMenuItemSectioned {...x} rounded={rounded} closed={closed}/>
|
|
70
|
+
</motion.div>);
|
|
71
|
+
}
|
|
72
|
+
else if (x.type === 'item') {
|
|
73
|
+
return (<SideMenuItem key={i} {...x} rounded={rounded} closed={closed} ignoreCurrent={childHrefs.some((x) => pathname.startsWith(x))}/>);
|
|
74
|
+
}
|
|
75
|
+
return <></>;
|
|
76
|
+
})}
|
|
77
|
+
</div>
|
|
78
|
+
</div>);
|
|
79
|
+
};
|
|
80
|
+
const SideMenuItem = ({ icon, badge, label, action, href, rounded, closed, disabled, ignoreCurrent, }) => {
|
|
81
|
+
const pathname = usePathname();
|
|
82
|
+
const t = useTranslations();
|
|
83
|
+
const current = useMemo(() => href === undefined
|
|
84
|
+
? false
|
|
85
|
+
: ignoreCurrent === true
|
|
86
|
+
? false
|
|
87
|
+
: href === '/'
|
|
88
|
+
? pathname === '/'
|
|
89
|
+
: pathname.startsWith(href), [href, ignoreCurrent, pathname]);
|
|
90
|
+
return (<Tooltip title={label === undefined ? undefined : t(label)} placement='right' disableHoverListener={!closed} arrow>
|
|
91
|
+
<div data-current={current} className={classNames('flex w-full items-center', 'hover:bg-primary-container-bg hover:text-primary-container-on', 'data-[current=true]:bg-primary-container-bg data-[current=true]:text-primary-container-on', disabled ? 'pointer-events-none cursor-default opacity-50' : 'cursor-pointer hover:opacity-80', getRoundedClassName(rounded))}>
|
|
92
|
+
<Link data-closed={closed} href={href ?? '#'} className={classNames('flex w-full items-center whitespace-nowrap p-control-padding-base')}>
|
|
93
|
+
{icon && (<Badge variant={badge === undefined ? undefined : 'dot'} color='error' max={100} showZero={false} anchorOrigin={{
|
|
94
|
+
horizontal: 'left',
|
|
95
|
+
}} badgeContent={badge}>
|
|
96
|
+
<Component.Icon icon={icon} className='size-control-base!'/>
|
|
97
|
+
</Badge>)}
|
|
98
|
+
<motion.div className='min-h-control-base flex items-center overflow-hidden' animate={closed ? 'closed' : 'opened'} variants={{
|
|
99
|
+
opened: {
|
|
100
|
+
width: 'auto',
|
|
101
|
+
opacity: 1,
|
|
102
|
+
transition: {
|
|
103
|
+
duration: 0.3,
|
|
104
|
+
ease: 'easeInOut',
|
|
105
|
+
},
|
|
106
|
+
},
|
|
107
|
+
closed: {
|
|
108
|
+
width: 0,
|
|
109
|
+
opacity: 0,
|
|
110
|
+
transition: {
|
|
111
|
+
duration: 0.3,
|
|
112
|
+
ease: 'easeInOut',
|
|
113
|
+
},
|
|
114
|
+
},
|
|
115
|
+
}} initial={false}>
|
|
116
|
+
<p data-current={current} className='text-sm whitespace-nowrap! bg-transparent px-control-padding-base'>
|
|
117
|
+
{label === undefined ? undefined : t(label)}
|
|
118
|
+
</p>
|
|
119
|
+
</motion.div>
|
|
120
|
+
</Link>
|
|
121
|
+
{action && (<motion.div className='min-h-control-base flex items-center overflow-hidden pr-control-padding-base' animate={closed ? 'closed' : 'opened'} variants={{
|
|
122
|
+
opened: {
|
|
123
|
+
width: 'auto',
|
|
124
|
+
opacity: 1,
|
|
125
|
+
transition: {
|
|
126
|
+
duration: 0.3,
|
|
127
|
+
ease: 'easeInOut',
|
|
128
|
+
},
|
|
129
|
+
},
|
|
130
|
+
closed: {
|
|
131
|
+
width: 0,
|
|
132
|
+
opacity: 0,
|
|
133
|
+
transition: {
|
|
134
|
+
duration: 0.3,
|
|
135
|
+
ease: 'easeInOut',
|
|
136
|
+
},
|
|
137
|
+
},
|
|
138
|
+
}} initial={false}>
|
|
139
|
+
<Composite.Button {...action}/>
|
|
140
|
+
</motion.div>)}
|
|
141
|
+
</div>
|
|
142
|
+
</Tooltip>);
|
|
143
|
+
};
|
|
144
|
+
export const SideMenu = ({ items, divider = true, rounded = Rounded.m, closeEnabled = true, }) => {
|
|
145
|
+
const [savedState, setSavedState] = useLocalStorage('SideMenu.State', 'open');
|
|
146
|
+
const closed = closeEnabled ? savedState === 'closed' : false;
|
|
147
|
+
return (<div className='relative'>
|
|
148
|
+
<motion.div className='flex h-full overflow-y-scroll' animate={closed ? 'closed' : 'opened'} variants={{
|
|
149
|
+
opened: {
|
|
150
|
+
width: 'auto',
|
|
151
|
+
transition: {
|
|
152
|
+
duration: 0.3,
|
|
153
|
+
ease: 'easeInOut',
|
|
154
|
+
},
|
|
155
|
+
},
|
|
156
|
+
closed: {
|
|
157
|
+
width: 'fit-content',
|
|
158
|
+
transition: {
|
|
159
|
+
duration: 0.3,
|
|
160
|
+
ease: 'easeInOut',
|
|
161
|
+
},
|
|
162
|
+
},
|
|
163
|
+
}} initial={false}>
|
|
164
|
+
{closeEnabled && (<Component.Button variant='colored' className='absolute bottom-[60px] right-0 translate-x-1/2' color={ColorTypes.accent} rounded={Rounded.half} size={ControlSize.sm} icon={closed ? NavigateNextIcon : NavigateBeforeIcon} onClick={() => setSavedState((prev) => (prev === 'closed' ? 'open' : 'closed'))}/>)}
|
|
165
|
+
<menu className={classNames(getTextColorTypeClassName(TextColorTypes.sub, true), getBackgroundColorTypeClassName(BackgroundColorTypes.container), 'gap-sm px-md py-sm flex h-fit min-h-full w-full flex-col overflow-x-hidden', divider && 'border-r border-r-outline-default')}>
|
|
166
|
+
{items.map((x, i) => {
|
|
167
|
+
if (typeof x === 'boolean') {
|
|
168
|
+
return <></>;
|
|
169
|
+
}
|
|
170
|
+
else if (x.type === 'divider') {
|
|
171
|
+
return <div key={i} className='bg-outline-default h-px w-full'/>;
|
|
172
|
+
}
|
|
173
|
+
else if (x.type === 'spacer') {
|
|
174
|
+
return <div key={i} className='grow'/>;
|
|
175
|
+
}
|
|
176
|
+
else if (x.type === 'section') {
|
|
177
|
+
return <SideMenuItemSectioned key={i} {...x} rounded={rounded} closed={closed}/>;
|
|
178
|
+
}
|
|
179
|
+
else if (x.type === 'item') {
|
|
180
|
+
return <SideMenuItem key={i} {...x} rounded={rounded} closed={closed}/>;
|
|
181
|
+
}
|
|
182
|
+
return <></>;
|
|
183
|
+
})}
|
|
184
|
+
</menu>
|
|
185
|
+
</motion.div>
|
|
186
|
+
</div>);
|
|
187
|
+
};
|
|
188
|
+
const GlobalMenuItem = ({ isCurrent, icon, badge, label, href, rounded, disabled, }) => {
|
|
189
|
+
const t = useTranslations();
|
|
190
|
+
return (<Tooltip title={label === undefined ? undefined : t(label)} placement='right' arrow>
|
|
191
|
+
<Link href={href ?? '#'} data-current={isCurrent} className={classNames('flex w-full items-center p-control-padding-base', 'data-[current=false]:opacity-30', disabled ? 'pointer-events-none cursor-default opacity-50' : 'cursor-pointer hover:opacity-80', getRoundedClassName(rounded))}>
|
|
192
|
+
{icon && (<Badge variant={badge === undefined ? undefined : 'dot'} color='error' max={100} showZero={false} anchorOrigin={{
|
|
193
|
+
horizontal: 'left',
|
|
194
|
+
}} badgeContent={badge}>
|
|
195
|
+
<Component.Icon icon={icon} className='size-control-md!'/>
|
|
196
|
+
</Badge>)}
|
|
197
|
+
</Link>
|
|
198
|
+
</Tooltip>);
|
|
199
|
+
};
|
|
200
|
+
export const GlobalMenu = ({ items, divider = true, rounded = Rounded.m, }) => {
|
|
201
|
+
const pathname = usePathname();
|
|
202
|
+
const globalmenuItems = items.filter((x) => x.type === 'item');
|
|
203
|
+
const isCurrentItem = globalmenuItems.length === 0
|
|
204
|
+
? undefined
|
|
205
|
+
: (globalmenuItems.find((x) => (x.href === '/' ? pathname === '/' : pathname.startsWith(x.href ?? ''))) ??
|
|
206
|
+
globalmenuItems.find((x) => x.href === '/'));
|
|
207
|
+
return (<div className='relative'>
|
|
208
|
+
<menu className={classNames(getTextColorTypeClassName(TextColorTypes.sub, true), getBackgroundColorTypeClassName(BackgroundColorTypes.container), 'gap-sm px-sm py-sm flex h-fit min-h-full w-fit flex-col overflow-x-hidden', divider && 'border-r border-r-outline-default')}>
|
|
209
|
+
{items.map((x, i) => {
|
|
210
|
+
if (x.type === 'divider') {
|
|
211
|
+
return <div key={i} className='bg-outline-default h-px w-full'/>;
|
|
212
|
+
}
|
|
213
|
+
else if (x.type === 'spacer') {
|
|
214
|
+
return <div key={i} className='grow'/>;
|
|
215
|
+
}
|
|
216
|
+
else if (x.type === 'item') {
|
|
217
|
+
return <GlobalMenuItem key={i} {...x} rounded={rounded} isCurrent={x.href === isCurrentItem?.href}/>;
|
|
218
|
+
}
|
|
219
|
+
return <></>;
|
|
220
|
+
})}
|
|
221
|
+
</menu>
|
|
222
|
+
</div>);
|
|
223
|
+
};
|
|
224
|
+
//# sourceMappingURL=component.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component.jsx","sourceRoot":"","sources":["../../../../../src/ui/layout/app/component.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,kBAAkB,MAAM,oCAAoC,CAAA;AACnE,OAAO,gBAAgB,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACtC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAE3C,OAAO,EAAuB,OAAO,EAAE,MAAM,OAAO,CAAA;AAEpD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EACL,oBAAoB,EACpB,UAAU,EACV,WAAW,EACX,+BAA+B,EAC/B,mBAAmB,EACnB,yBAAyB,EACzB,OAAO,EACP,cAAc,GACf,MAAM,aAAa,CAAA;AAiBpB,MAAM,qBAAqB,GAAG,CAAC,EAC7B,IAAI,EACJ,MAAM,EACN,KAAK,EACL,OAAO,EACP,MAAM,GAOP,EAAE,EAAE;IACH,MAAM,iBAAiB,GAAG,CAAC,KAAuE,EAAY,EAAE;QAC9G,MAAM,KAAK,GAAa,EAAE,CAAA;QAC1B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,OAAO,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC9B,SAAQ;YACV,CAAC;YACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC5B,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBACnC,IAAI,OAAO,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;wBAChE,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;4BACjC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;wBAC5B,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;YAC9C,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC,CAAA;IACD,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;IAC3C,OAAO,CACL,CAAC,GAAG,CAAC,SAAS,CAAC,6BAA6B,CAC1C;MAAA,CAAC,GAAG,CAAC,SAAS,CAAC,0CAA0C,CACvD;QAAA,CAAC,IAAI,KAAK,SAAS,IAAI,CACrB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CACrB,KAAK,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAC1B,SAAS,CAAC,6DAA6D,CACvE,QAAQ,CAAC,CAAC,IAAI,CAAC,CAEf;YAAA,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CACtE;UAAA,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAC1B,CACD;QAAA,CAAC,MAAM,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,EAAG,CACxD;MAAA,EAAE,GAAG,CACL;MAAA,CAAC,GAAG,CAAC,SAAS,CAAC,6BAA6B,CAC1C;QAAA,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAClB,IAAI,OAAO,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC3B,OAAO,EAAE,GAAG,CAAA;YACd,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAChC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,gCAAgC,EAAG,CAAA;YACnE,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAChC,OAAO,CACL,CAAC,MAAM,CAAC,GAAG,CACT,GAAG,CAAC,CAAC,CAAC,CAAC,CACP,SAAS,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CACxE,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CACtC,OAAO,CAAC,CAAC,KAAK,CAAC,CACf,QAAQ,CAAC,CAAC;wBACR,MAAM,EAAE;4BACN,UAAU,EAAE,MAAM;4BAClB,UAAU,EAAE;gCACV,QAAQ,EAAE,GAAG;gCACb,IAAI,EAAE,WAAW;6BAClB;yBACF;wBACD,MAAM,EAAE;4BACN,UAAU,EAAE,KAAK;4BACjB,UAAU,EAAE;gCACV,QAAQ,EAAE,GAAG;gCACb,IAAI,EAAE,WAAW;6BAClB;yBACF;qBACF,CAAC,CAEF;gBAAA,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EACjE;cAAA,EAAE,MAAM,CAAC,GAAG,CAAC,CACd,CAAA;YACH,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC7B,OAAO,CACL,CAAC,YAAY,CACX,GAAG,CAAC,CAAC,CAAC,CAAC,CACP,IAAI,CAAC,CAAC,CACN,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,aAAa,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAC9D,CACH,CAAA;YACH,CAAC;YACD,OAAO,EAAE,GAAG,CAAA;QACd,CAAC,CAAC,CACJ;MAAA,EAAE,GAAG,CACP;IAAA,EAAE,GAAG,CAAC,CACP,CAAA;AACH,CAAC,CAAA;AAMD,MAAM,YAAY,GAAG,CAAC,EACpB,IAAI,EACJ,KAAK,EACL,KAAK,EACL,MAAM,EACN,IAAI,EACJ,OAAO,EACP,MAAM,EACN,QAAQ,EACR,aAAa,GAWd,EAAE,EAAE;IACH,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,MAAM,CAAC,GAAG,eAAe,EAAE,CAAA;IAC3B,MAAM,OAAO,GAAG,OAAO,CACrB,GAAG,EAAE,CACH,IAAI,KAAK,SAAS;QAChB,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,aAAa,KAAK,IAAI;YACtB,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,IAAI,KAAK,GAAG;gBACZ,CAAC,CAAC,QAAQ,KAAK,GAAG;gBAClB,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EACnC,CAAC,IAAI,EAAE,aAAa,EAAE,QAAQ,CAAC,CAChC,CAAA;IACD,OAAO,CACL,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,CAChH;MAAA,CAAC,GAAG,CACF,YAAY,CAAC,CAAC,OAAO,CAAC,CACtB,SAAS,CAAC,CAAC,UAAU,CACnB,0BAA0B,EAC1B,+DAA+D,EAC/D,2FAA2F,EAC3F,QAAQ,CAAC,CAAC,CAAC,+CAA+C,CAAC,CAAC,CAAC,iCAAiC,EAC9F,mBAAmB,CAAC,OAAO,CAAC,CAC7B,CAAC,CAEF;QAAA,CAAC,IAAI,CACH,WAAW,CAAC,CAAC,MAAM,CAAC,CACpB,IAAI,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAClB,SAAS,CAAC,CAAC,UAAU,CAAC,mEAAmE,CAAC,CAAC,CAE3F;UAAA,CAAC,IAAI,IAAI,CACP,CAAC,KAAK,CACJ,OAAO,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CACjD,KAAK,CAAC,OAAO,CACb,GAAG,CAAC,CAAC,GAAG,CAAC,CACT,QAAQ,CAAC,CAAC,KAAK,CAAC,CAChB,YAAY,CAAC,CAAC;gBACZ,UAAU,EAAE,MAAM;aACnB,CAAC,CACF,YAAY,CAAC,CAAC,KAAK,CAAC,CAEpB;cAAA,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,oBAAoB,EAC5D;YAAA,EAAE,KAAK,CAAC,CACT,CACD;UAAA,CAAC,MAAM,CAAC,GAAG,CACT,SAAS,CAAC,sDAAsD,CAChE,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CACtC,QAAQ,CAAC,CAAC;YACR,MAAM,EAAE;gBACN,KAAK,EAAE,MAAM;gBACb,OAAO,EAAE,CAAC;gBACV,UAAU,EAAE;oBACV,QAAQ,EAAE,GAAG;oBACb,IAAI,EAAE,WAAW;iBAClB;aACF;YACD,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;gBACR,OAAO,EAAE,CAAC;gBACV,UAAU,EAAE;oBACV,QAAQ,EAAE,GAAG;oBACb,IAAI,EAAE,WAAW;iBAClB;aACF;SACF,CAAC,CACF,OAAO,CAAC,CAAC,KAAK,CAAC,CAEf;YAAA,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,mEAAmE,CACrG;cAAA,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAC7C;YAAA,EAAE,CAAC,CACL;UAAA,EAAE,MAAM,CAAC,GAAG,CACd;QAAA,EAAE,IAAI,CACN;QAAA,CAAC,MAAM,IAAI,CACT,CAAC,MAAM,CAAC,GAAG,CACT,SAAS,CAAC,8EAA8E,CACxF,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CACtC,QAAQ,CAAC,CAAC;gBACR,MAAM,EAAE;oBACN,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE,CAAC;oBACV,UAAU,EAAE;wBACV,QAAQ,EAAE,GAAG;wBACb,IAAI,EAAE,WAAW;qBAClB;iBACF;gBACD,MAAM,EAAE;oBACN,KAAK,EAAE,CAAC;oBACR,OAAO,EAAE,CAAC;oBACV,UAAU,EAAE;wBACV,QAAQ,EAAE,GAAG;wBACb,IAAI,EAAE,WAAW;qBAClB;iBACF;aACF,CAAC,CACF,OAAO,CAAC,CAAC,KAAK,CAAC,CAEf;YAAA,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,EAC/B;UAAA,EAAE,MAAM,CAAC,GAAG,CAAC,CACd,CACH;MAAA,EAAE,GAAG,CACP;IAAA,EAAE,OAAO,CAAC,CACX,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,EACvB,KAAK,EACL,OAAO,GAAG,IAAI,EACd,OAAO,GAAG,OAAO,CAAC,CAAC,EACnB,YAAY,GAAG,IAAI,GAMpB,EAAE,EAAE;IACH,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,eAAe,CAAoB,gBAAgB,EAAE,MAAM,CAAC,CAAA;IAChG,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAA;IAC7D,OAAO,CACL,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CACvB;MAAA,CAAC,MAAM,CAAC,GAAG,CACT,SAAS,CAAC,+BAA+B,CACzC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CACtC,QAAQ,CAAC,CAAC;YACR,MAAM,EAAE;gBACN,KAAK,EAAE,MAAM;gBACb,UAAU,EAAE;oBACV,QAAQ,EAAE,GAAG;oBACb,IAAI,EAAE,WAAW;iBAClB;aACF;YACD,MAAM,EAAE;gBACN,KAAK,EAAE,aAAa;gBACpB,UAAU,EAAE;oBACV,QAAQ,EAAE,GAAG;oBACb,IAAI,EAAE,WAAW;iBAClB;aACF;SACF,CAAC,CACF,OAAO,CAAC,CAAC,KAAK,CAAC,CAEf;QAAA,CAAC,YAAY,IAAI,CACf,CAAC,SAAS,CAAC,MAAM,CACf,OAAO,CAAC,SAAS,CACjB,SAAS,CAAC,gDAAgD,CAC1D,KAAK,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CACzB,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CACtB,IAAI,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CACrB,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,kBAAkB,CAAC,CACrD,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAChF,CACH,CACD;QAAA,CAAC,IAAI,CACH,SAAS,CAAC,CAAC,UAAU,CACnB,yBAAyB,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,EACnD,+BAA+B,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAC/D,4EAA4E,EAC5E,OAAO,IAAI,mCAAmC,CAC/C,CAAC,CAEF;UAAA,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAClB,IAAI,OAAO,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC3B,OAAO,EAAE,GAAG,CAAA;YACd,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAChC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,gCAAgC,EAAG,CAAA;YACnE,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,EAAG,CAAA;YACzC,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAChC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EAAG,CAAA;YACnF,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC7B,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EAAG,CAAA;YAC1E,CAAC;YACD,OAAO,EAAE,GAAG,CAAA;QACd,CAAC,CAAC,CACJ;QAAA,EAAE,IAAI,CACR;MAAA,EAAE,MAAM,CAAC,GAAG,CACd;IAAA,EAAE,GAAG,CAAC,CACP,CAAA;AACH,CAAC,CAAA;AAKD,MAAM,cAAc,GAAG,CAAC,EACtB,SAAS,EACT,IAAI,EACJ,KAAK,EACL,KAAK,EACL,IAAI,EACJ,OAAO,EACP,QAAQ,GAST,EAAE,EAAE;IACH,MAAM,CAAC,GAAG,eAAe,EAAE,CAAA;IAC3B,OAAO,CACL,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CACjF;MAAA,CAAC,IAAI,CACH,IAAI,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAClB,YAAY,CAAC,CAAC,SAAS,CAAC,CACxB,SAAS,CAAC,CAAC,UAAU,CACnB,iDAAiD,EACjD,iCAAiC,EACjC,QAAQ,CAAC,CAAC,CAAC,+CAA+C,CAAC,CAAC,CAAC,iCAAiC,EAC9F,mBAAmB,CAAC,OAAO,CAAC,CAC7B,CAAC,CAEF;QAAA,CAAC,IAAI,IAAI,CACP,CAAC,KAAK,CACJ,OAAO,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CACjD,KAAK,CAAC,OAAO,CACb,GAAG,CAAC,CAAC,GAAG,CAAC,CACT,QAAQ,CAAC,CAAC,KAAK,CAAC,CAChB,YAAY,CAAC,CAAC;gBACZ,UAAU,EAAE,MAAM;aACnB,CAAC,CACF,YAAY,CAAC,CAAC,KAAK,CAAC,CAEpB;YAAA,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,kBAAkB,EAC1D;UAAA,EAAE,KAAK,CAAC,CACT,CACH;MAAA,EAAE,IAAI,CACR;IAAA,EAAE,OAAO,CAAC,CACX,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EACzB,KAAK,EACL,OAAO,GAAG,IAAI,EACd,OAAO,GAAG,OAAO,CAAC,CAAC,GAKpB,EAAE,EAAE;IACH,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAA;IAC9D,MAAM,aAAa,GACjB,eAAe,CAAC,MAAM,KAAK,CAAC;QAC1B,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;YACrG,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAA;IAClD,OAAO,CACL,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CACvB;MAAA,CAAC,IAAI,CACH,SAAS,CAAC,CAAC,UAAU,CACnB,yBAAyB,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,EACnD,+BAA+B,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAC/D,2EAA2E,EAC3E,OAAO,IAAI,mCAAmC,CAC/C,CAAC,CAEF;QAAA,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAClB,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACzB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,gCAAgC,EAAG,CAAA;YACnE,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,EAAG,CAAA;YACzC,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC7B,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,EAAE,IAAI,CAAC,EAAG,CAAA;YACvG,CAAC;YACD,OAAO,EAAE,GAAG,CAAA;QACd,CAAC,CAAC,CACJ;MAAA,EAAE,IAAI,CACR;IAAA,EAAE,GAAG,CAAC,CACP,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { ComponentProps } from 'react';
|
|
2
|
+
import { type ReactNode } from 'react';
|
|
3
|
+
import { Composite } from '../../../composite';
|
|
4
|
+
export declare const AppContent: ({ title, children, className, contentClassName, }: {
|
|
5
|
+
title?: ComponentProps<typeof Composite.PageTitle>;
|
|
6
|
+
children: ReactNode;
|
|
7
|
+
className?: string;
|
|
8
|
+
contentClassName?: string;
|
|
9
|
+
}) => import("react").JSX.Element;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import classNames from 'classnames';
|
|
3
|
+
import { AnimatePresence, motion } from 'framer-motion';
|
|
4
|
+
import { usePathname } from 'next/navigation';
|
|
5
|
+
import { Composite } from '../../../composite';
|
|
6
|
+
import { getBackgroundColorTypeClassName } from '../../../theme';
|
|
7
|
+
export const AppContent = ({ title, children, className, contentClassName, }) => {
|
|
8
|
+
const pathname = usePathname();
|
|
9
|
+
return (<AnimatePresence mode='wait'>
|
|
10
|
+
<motion.main className={classNames('flex size-full flex-col overflow-y-scroll', getBackgroundColorTypeClassName('default'), className)} key={pathname} initial={{ opacity: 0 }} animate={{ opacity: 1 }} exit={{ opacity: 0 }} transition={{ duration: 0.3 }}>
|
|
11
|
+
{title !== undefined && (<div className='mt-base'>
|
|
12
|
+
<Composite.PageTitle {...title}/>
|
|
13
|
+
</div>)}
|
|
14
|
+
<div className={classNames('m-base gap-base flex h-fit flex-col', contentClassName)}>{children}</div>
|
|
15
|
+
</motion.main>
|
|
16
|
+
</AnimatePresence>);
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=index.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../../../src/ui/layout/app/content/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAI7C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,+BAA+B,EAAE,MAAM,gBAAgB,CAAA;AAEhE,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EACzB,KAAK,EACL,QAAQ,EACR,SAAS,EACT,gBAAgB,GAMjB,EAAE,EAAE;IACH,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,OAAO,CACL,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAC1B;MAAA,CAAC,MAAM,CAAC,IAAI,CACV,SAAS,CAAC,CAAC,UAAU,CACnB,2CAA2C,EAC3C,+BAA+B,CAAC,SAAS,CAAC,EAC1C,SAAS,CACV,CAAC,CACF,GAAG,CAAC,CAAC,QAAQ,CAAC,CACd,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CACxB,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CACxB,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CACrB,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAE9B;QAAA,CAAC,KAAK,KAAK,SAAS,IAAI,CACtB,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CACtB;YAAA,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,EACjC;UAAA,EAAE,GAAG,CAAC,CACP,CACD;QAAA,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,qCAAqC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,GAAG,CACtG;MAAA,EAAE,MAAM,CAAC,IAAI,CACf;IAAA,EAAE,eAAe,CAAC,CACnB,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export { AppContent } from './content';
|
|
2
|
+
import type { ComponentProps, ReactNode } from 'react';
|
|
3
|
+
import { Component } from '../../component';
|
|
4
|
+
import { GlobalMenu, SideMenu } from './component';
|
|
5
|
+
export declare const App: ({ header, sidemenu, globalmenu, children, }: {
|
|
6
|
+
header?: {
|
|
7
|
+
divider?: boolean;
|
|
8
|
+
leading?: ReactNode;
|
|
9
|
+
leadingButton?: ComponentProps<typeof Component.Button>;
|
|
10
|
+
center?: ReactNode;
|
|
11
|
+
centerButton?: ComponentProps<typeof Component.Button>;
|
|
12
|
+
trailling?: ReactNode;
|
|
13
|
+
traillingButton?: ComponentProps<typeof Component.Button>;
|
|
14
|
+
};
|
|
15
|
+
globalmenu?: ComponentProps<typeof GlobalMenu>;
|
|
16
|
+
sidemenu?: ComponentProps<typeof SideMenu>;
|
|
17
|
+
children: ReactNode;
|
|
18
|
+
}) => import("react").JSX.Element;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
export { AppContent } from './content';
|
|
2
|
+
import classNames from 'classnames';
|
|
3
|
+
import { Component } from '../../component';
|
|
4
|
+
import { BackgroundColorTypes, getBackgroundColorTypeClassName } from '../../theme';
|
|
5
|
+
import { GlobalMenu, SideMenu } from './component';
|
|
6
|
+
export const App = ({ header, sidemenu, globalmenu, children, }) => (<>
|
|
7
|
+
<div className='flex size-full flex-col'>
|
|
8
|
+
{header !== undefined && (<header className={classNames('fixed inset-x-0 top-0 flex h-14 justify-between', header.divider !== false && 'border-b border-b-outline-default', getBackgroundColorTypeClassName(BackgroundColorTypes.container))}>
|
|
9
|
+
<div className='p-control-padding-base absolute inset-0 flex size-full items-center justify-between'>
|
|
10
|
+
<div>
|
|
11
|
+
{header.leading}
|
|
12
|
+
{header.leadingButton !== undefined && <Component.Button {...header.leadingButton}/>}
|
|
13
|
+
</div>
|
|
14
|
+
<div className='pointer-events-auto size-fit opacity-0'>
|
|
15
|
+
{header.center}
|
|
16
|
+
{header.centerButton !== undefined && <Component.Button {...header.centerButton}/>}
|
|
17
|
+
</div>
|
|
18
|
+
<div>
|
|
19
|
+
{header.trailling}
|
|
20
|
+
{header.traillingButton !== undefined && <Component.Button {...header.traillingButton}/>}
|
|
21
|
+
</div>
|
|
22
|
+
</div>
|
|
23
|
+
<div className='pointer-events-none absolute flex size-full items-center justify-center'>
|
|
24
|
+
<div className='pointer-events-auto size-fit text-clip'>
|
|
25
|
+
{header.center}
|
|
26
|
+
{header.centerButton !== undefined && <Component.Button {...header.centerButton}/>}
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
</header>)}
|
|
30
|
+
<div className={classNames('flex size-full', header === undefined ? 'mt-0' : 'mt-14')} style={{
|
|
31
|
+
height: header === undefined ? '100%' : 'calc(100% - 3.5rem)',
|
|
32
|
+
}}>
|
|
33
|
+
{globalmenu !== undefined && <GlobalMenu {...globalmenu}/>}
|
|
34
|
+
{sidemenu !== undefined && <SideMenu {...sidemenu}/>}
|
|
35
|
+
{children}
|
|
36
|
+
</div>
|
|
37
|
+
</div>
|
|
38
|
+
<div id='portal' className='relative z-19999'/>
|
|
39
|
+
</>);
|
|
40
|
+
//# sourceMappingURL=index.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../../src/ui/layout/app/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEtC,OAAO,UAAU,MAAM,YAAY,CAAA;AAGnC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,oBAAoB,EAAE,+BAA+B,EAAE,MAAM,aAAa,CAAA;AACnF,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAElD,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,EAClB,MAAM,EACN,QAAQ,EACR,UAAU,EACV,QAAQ,GAcT,EAAE,EAAE,CAAC,CACJ,EACE;IAAA,CAAC,GAAG,CAAC,SAAS,CAAC,yBAAyB,CACtC;MAAA,CAAC,MAAM,KAAK,SAAS,IAAI,CACvB,CAAC,MAAM,CACL,SAAS,CAAC,CAAC,UAAU,CACnB,iDAAiD,EACjD,MAAM,CAAC,OAAO,KAAK,KAAK,IAAI,mCAAmC,EAC/D,+BAA+B,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAChE,CAAC,CAEF;UAAA,CAAC,GAAG,CAAC,SAAS,CAAC,qFAAqF,CAClG;YAAA,CAAC,GAAG,CACF;cAAA,CAAC,MAAM,CAAC,OAAO,CACf;cAAA,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,aAAa,CAAC,EAAG,CACvF;YAAA,EAAE,GAAG,CACL;YAAA,CAAC,GAAG,CAAC,SAAS,CAAC,wCAAwC,CACrD;cAAA,CAAC,MAAM,CAAC,MAAM,CACd;cAAA,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,EAAG,CACrF;YAAA,EAAE,GAAG,CACL;YAAA,CAAC,GAAG,CACF;cAAA,CAAC,MAAM,CAAC,SAAS,CACjB;cAAA,CAAC,MAAM,CAAC,eAAe,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,eAAe,CAAC,EAAG,CAC3F;YAAA,EAAE,GAAG,CACP;UAAA,EAAE,GAAG,CACL;UAAA,CAAC,GAAG,CAAC,SAAS,CAAC,yEAAyE,CACtF;YAAA,CAAC,GAAG,CAAC,SAAS,CAAC,wCAAwC,CACrD;cAAA,CAAC,MAAM,CAAC,MAAM,CACd;cAAA,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,EAAG,CACrF;YAAA,EAAE,GAAG,CACP;UAAA,EAAE,GAAG,CACP;QAAA,EAAE,MAAM,CAAC,CACV,CACD;MAAA,CAAC,GAAG,CACF,SAAS,CAAC,CAAC,UAAU,CAAC,gBAAgB,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CACjF,KAAK,CAAC,CAAC;QACL,MAAM,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,qBAAqB;KAC9D,CAAC,CAEF;QAAA,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,EAAG,CAC3D;QAAA,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,EAAG,CACrD;QAAA,CAAC,QAAQ,CACX;MAAA,EAAE,GAAG,CACP;IAAA,EAAE,GAAG,CACL;IAAA,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,kBAAkB,EAC/C;EAAA,GAAG,CACJ,CAAA"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import type { ComponentProps } from 'react';
|
|
2
|
+
import { type ModalProps } from '../../../hooks';
|
|
3
|
+
import { Component } from '../../component';
|
|
4
|
+
import { Rounded } from '../../theme';
|
|
5
|
+
import { type FormElement, type FormInputAddress, type FormInputCheckbox, type FormInputDate, type FormInputDateRange, type FormInputDateTime, type FormInputDateTimeRange, type FormInputHidden, type FormInputList, type FormInputRadio, type FormInputSelect, type FormInputText, type FormInputTextArea, type FormInputTime, type FormInputTimeRange, type FormInputWeekday, type FormInputWeekdays, type FormItem } from '../../types';
|
|
6
|
+
type ReceveItemType = FormItem | false | undefined;
|
|
7
|
+
type OnSuccess<U> = {
|
|
8
|
+
toast?: string;
|
|
9
|
+
} & ({
|
|
10
|
+
callback?: (result?: U) => void;
|
|
11
|
+
} | {
|
|
12
|
+
replace: string;
|
|
13
|
+
} | {
|
|
14
|
+
back: true;
|
|
15
|
+
});
|
|
16
|
+
export declare const Form: <T, U>({ singlePage, name, title, actions, items, submitButton, cancelButton, disabled, className, rounded, container, }: {
|
|
17
|
+
singlePage?: boolean;
|
|
18
|
+
name: string;
|
|
19
|
+
title?: string;
|
|
20
|
+
actions: {
|
|
21
|
+
validate?: (data: T) => Promise<void>;
|
|
22
|
+
confirm?: Omit<ModalProps, "rounded" | "actions">;
|
|
23
|
+
submit: (data: T) => Promise<U>;
|
|
24
|
+
onSuccess?: OnSuccess<U>;
|
|
25
|
+
};
|
|
26
|
+
items: (ReceveItemType[] | ReceveItemType[][] | false | undefined)[];
|
|
27
|
+
submitButton?: ComponentProps<typeof Component.Button>;
|
|
28
|
+
cancelButton?: ComponentProps<typeof Component.Button>;
|
|
29
|
+
disabled?: boolean;
|
|
30
|
+
className?: string;
|
|
31
|
+
rounded?: Rounded;
|
|
32
|
+
container?: boolean;
|
|
33
|
+
}) => import("react").JSX.Element;
|
|
34
|
+
export declare const PagedForm: <T, U>({ rounded, title, actions, submitButton, cancelButton, disabled, className, pages, }: {
|
|
35
|
+
rounded?: Rounded;
|
|
36
|
+
title?: string;
|
|
37
|
+
actions: {
|
|
38
|
+
submit: (data: T) => Promise<U>;
|
|
39
|
+
confirm?: Omit<ModalProps, "rounded" | "actions">;
|
|
40
|
+
onSuccess?: OnSuccess<U>;
|
|
41
|
+
};
|
|
42
|
+
submitButton: ComponentProps<typeof Component.Button>;
|
|
43
|
+
cancelButton: ComponentProps<typeof Component.Button>;
|
|
44
|
+
disabled?: boolean;
|
|
45
|
+
className?: string;
|
|
46
|
+
pages: {
|
|
47
|
+
name: string;
|
|
48
|
+
title?: string;
|
|
49
|
+
items: Pick<ComponentProps<typeof Form>, "items">["items"];
|
|
50
|
+
validate?: (data: never) => Promise<void>;
|
|
51
|
+
}[];
|
|
52
|
+
}) => import("react").JSX.Element;
|
|
53
|
+
type FormItemOverride = Partial<Omit<FormElement, 'name' | 'required'>> | Partial<Omit<FormInputHidden, 'name' | 'required'>> | Partial<Omit<FormInputText, 'name' | 'required'>> | Partial<Omit<FormInputTextArea, 'name' | 'required'>> | Partial<Omit<FormInputSelect, 'name' | 'required'>> | Partial<Omit<FormInputCheckbox, 'name' | 'required'>> | Partial<Omit<FormInputRadio, 'name' | 'required'>> | Partial<Omit<FormInputWeekday, 'name' | 'required'>> | Partial<Omit<FormInputWeekdays, 'name' | 'required'>> | Partial<Omit<FormInputDate, 'name' | 'required'>> | Partial<Omit<FormInputDateRange, 'name' | 'required'>> | Partial<Omit<FormInputTime, 'name' | 'required'>> | Partial<Omit<FormInputTimeRange, 'name' | 'required'>> | Partial<Omit<FormInputDateTime, 'name' | 'required'>> | Partial<Omit<FormInputDateTimeRange, 'name' | 'required'>> | Partial<Omit<FormInputList, 'name' | 'required'>> | Partial<Omit<FormInputAddress, 'name' | 'required'>>;
|
|
54
|
+
type ActionFormProps<T, U, Items extends readonly {
|
|
55
|
+
name: string;
|
|
56
|
+
}[]> = {
|
|
57
|
+
items: Items;
|
|
58
|
+
layout?: Items[number]['name'][][];
|
|
59
|
+
overrides?: {
|
|
60
|
+
[K in Items[number]['name']]?: FormItemOverride | FormItem[] | FormItem[][];
|
|
61
|
+
};
|
|
62
|
+
additionals?: FormItem[] | FormItem[][] | (ReceveItemType[] | ReceveItemType[][] | false | undefined)[];
|
|
63
|
+
submitButton?: ComponentProps<typeof Component.Button>;
|
|
64
|
+
} & Omit<ComponentProps<typeof Form<T, U>>, 'items'>;
|
|
65
|
+
export declare const ActionForm: <T, U, Items extends readonly {
|
|
66
|
+
name: string;
|
|
67
|
+
}[]>({ items, layout, overrides, additionals, submitButton, ...props }: ActionFormProps<T, U, Items>) => import("react").JSX.Element;
|
|
68
|
+
export {};
|