@nocobase/portal-template-default 1.0.15 → 1.0.17
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/AGENTS.md +8 -0
- package/README.MD +4 -0
- package/dist/assets/{LineDraw-iG-ADes-.js → LineDraw-BBB5hwuJ.js} +1 -1
- package/dist/assets/{SymbolDraw-DXoSw1tM.js → SymbolDraw-CKS3uUb_.js} +1 -1
- package/dist/assets/{VisualMapping-C_ee4Eht.js → VisualMapping-BCwaW3TD.js} +1 -1
- package/dist/assets/auth-method-demo-BdCCvEEz.js +1 -0
- package/dist/assets/{auto-login-provider-5Uxza9Ms.js → auto-login-provider-DO5Il6Dp.js} +2 -2
- package/dist/assets/auto-login-provider-TQ08B6-i.js +1 -0
- package/dist/assets/auto-redirect-provider-ButXp0A3.js +1 -0
- package/dist/assets/auto-redirect-provider-DnGGP2Vn.js +1 -0
- package/dist/assets/auto-redirect-provider-ja-vFPaF.js +1 -0
- package/dist/assets/calendar-C7xnRgOT.js +1 -0
- package/dist/assets/{cas-sign-in-button-CyqG1QME.js → cas-sign-in-button-BZCa4lR6.js} +1 -1
- package/dist/assets/{components-D-ptYjX_.js → components-_g-GjQeV.js} +3 -3
- package/dist/assets/{configuration-gate-C08mkkiX.js → configuration-gate-B4XVz7tS.js} +1 -1
- package/dist/assets/{createClipPathFromCoordSys-wj34-b1B.js → createClipPathFromCoordSys-z9Kmh-tu.js} +1 -1
- package/dist/assets/createSeriesDataSimply-CPqysF0K.js +1 -0
- package/dist/assets/{customGraphicKeyframeAnimation-DWrhrHL_.js → customGraphicKeyframeAnimation-DMU5crAu.js} +1 -1
- package/dist/assets/demo-BPlae2bp.js +1 -0
- package/dist/assets/demo-Bj_Y0RrW.js +1 -0
- package/dist/assets/demo-CKPAQOib.js +1 -0
- package/dist/assets/demo-CXRTPvIx.js +1 -0
- package/dist/assets/demo-DJuVDu1n.js +1 -0
- package/dist/assets/demo-DUmWU7ik.js +1 -0
- package/dist/assets/demo-NhIzFRE1.js +1 -0
- package/dist/assets/{dingtalk-sign-in-button-DSWsSruv.js → dingtalk-sign-in-button-DMPgE5kT.js} +1 -1
- package/dist/assets/{echarts-preview-DxHNfq1C.js → echarts-preview-R96Pbqmz.js} +1 -1
- package/dist/assets/{echarts-runtime-D8kXn6ME.js → echarts-runtime-Ce_z2eX_.js} +3 -3
- package/dist/assets/{echarts-runtime-advanced-QY8v95qK.js → echarts-runtime-advanced-Dr80KHJR.js} +1 -1
- package/dist/assets/{echarts-runtime-common-D-yqAK-r.js → echarts-runtime-common-DB95Yfc1.js} +1 -1
- package/dist/assets/{echarts-runtime-components-P4-i8jPU.js → echarts-runtime-components-DCJEaTJk.js} +1 -1
- package/dist/assets/{echarts-runtime-hierarchy-ByQZ-DbP.js → echarts-runtime-hierarchy-CezgZs9O.js} +1 -1
- package/dist/assets/{floating-BFVEyPEp.js → floating-O9WmiDXk.js} +2 -2
- package/dist/assets/index-BBKV6O5d.css +1 -0
- package/dist/assets/{index-Btk35Nx-.js → index-CPzehPGe.js} +3 -3
- package/dist/assets/index-Cc6awvdg.js +1064 -0
- package/dist/assets/index-ChA0z9ke.js +38 -0
- package/dist/assets/{index-um5hdKdZ.js → index-DgB7uTMs.js} +2 -2
- package/dist/assets/{index-CwNxd66J.js → index-DroUAK80.js} +1 -1
- package/dist/assets/index-WKvygTBp.js +59 -0
- package/dist/assets/{labelHelper-DQqRy3a_.js → labelHelper-Dk5jkiD-.js} +1 -1
- package/dist/assets/ldap-sign-in-form-CKN4l7qM.js +1 -0
- package/dist/assets/{oidc-sign-in-button-CQdRcR_p.js → oidc-sign-in-button-BIRonrpC.js} +1 -1
- package/dist/assets/{page-context-CnQ4GYM7.js → page-context-DAiW_dId.js} +3 -3
- package/dist/assets/prompt-card-rGZqpqkF.js +1 -0
- package/dist/assets/prompt-output-B4h3uLWf.js +1 -0
- package/dist/assets/saml-sign-in-button-B4ugaLIb.js +1 -0
- package/dist/assets/{sectorHelper-DN_Vv6OL.js → sectorHelper-BuxrrJrA.js} +1 -1
- package/dist/assets/shortcut-BhKXxJLs.js +47 -0
- package/dist/assets/{sms-sign-in-form-DTX9GV2I.js → sms-sign-in-form-DKpxRDdZ.js} +1 -1
- package/dist/assets/{static.browser-jI1psK0d.js → static.browser-kzzpH0Xt.js} +8 -8
- package/dist/assets/switch-BdVxPIVU.js +1 -0
- package/dist/assets/{tool-cards-DFttLAfo.js → tool-cards-CpczIke-.js} +3 -3
- package/dist/assets/{use-authenticator-sign-in-CRGjzXju.js → use-authenticator-sign-in-CIj210ry.js} +1 -1
- package/dist/assets/use-dingtalk-sign-in-BW4kkXD3.js +1 -0
- package/dist/assets/{use-wecom-sign-in-C9j8wfCD.js → use-wecom-sign-in-dIqMtcN9.js} +1 -1
- package/dist/assets/wecom-sign-in-button-Dn_2zDab.js +1 -0
- package/dist/index.html +2 -2
- package/dist/index.raw.html +2 -2
- package/package.json +9 -1
- package/src/App.tsx +5 -2
- package/src/app/extension.ts +2 -0
- package/src/app/extensions.tsx +18 -6
- package/src/app/route-access-guard.tsx +22 -0
- package/src/app/route-runtime.ts +173 -0
- package/src/app/routes.tsx +2 -2
- package/src/components/app-shell/header.tsx +56 -1
- package/src/components/app-shell/sidebar.tsx +14 -2
- package/src/components/auth/sign-up-form.tsx +287 -59
- package/src/components/auth/types.ts +23 -1
- package/src/extensions/nocobase-acl/README.md +28 -14
- package/src/extensions/nocobase-acl/demo/index.tsx +87 -15
- package/src/extensions/nocobase-acl/demo/prompt-generator.tsx +1 -0
- package/src/extensions/nocobase-mail/README.md +74 -0
- package/src/extensions/nocobase-mail/components/index.ts +79 -0
- package/src/extensions/nocobase-mail/components/mail-api.ts +423 -0
- package/src/extensions/nocobase-mail/components/mail-attachment-list.tsx +67 -0
- package/src/extensions/nocobase-mail/components/mail-compose-attachments.tsx +166 -0
- package/src/extensions/nocobase-mail/components/mail-compose.tsx +1071 -0
- package/src/extensions/nocobase-mail/components/mail-detail.tsx +653 -0
- package/src/extensions/nocobase-mail/components/mail-draft-autosave.ts +26 -0
- package/src/extensions/nocobase-mail/components/mail-empty.tsx +48 -0
- package/src/extensions/nocobase-mail/components/mail-filters.tsx +277 -0
- package/src/extensions/nocobase-mail/components/mail-inbox.tsx +544 -0
- package/src/extensions/nocobase-mail/components/mail-inline-images.ts +69 -0
- package/src/extensions/nocobase-mail/components/mail-label-badge.tsx +25 -0
- package/src/extensions/nocobase-mail/components/mail-label-manager.tsx +271 -0
- package/src/extensions/nocobase-mail/components/mail-labels-editor.tsx +267 -0
- package/src/extensions/nocobase-mail/components/mail-mass-tracking.tsx +271 -0
- package/src/extensions/nocobase-mail/components/mail-note-editor.tsx +99 -0
- package/src/extensions/nocobase-mail/components/mail-recipient-input.tsx +260 -0
- package/src/extensions/nocobase-mail/components/mail-reply-quote.ts +28 -0
- package/src/extensions/nocobase-mail/components/mail-rich-editor.tsx +287 -0
- package/src/extensions/nocobase-mail/components/mail-send-actions.tsx +238 -0
- package/src/extensions/nocobase-mail/components/mail-senders.ts +61 -0
- package/src/extensions/nocobase-mail/components/mail-settings-drawer.tsx +708 -0
- package/src/extensions/nocobase-mail/components/mail-showcase-layout.tsx +64 -0
- package/src/extensions/nocobase-mail/components/mail-signature-manager.tsx +258 -0
- package/src/extensions/nocobase-mail/components/mail-signatures.ts +25 -0
- package/src/extensions/nocobase-mail/components/mail-table.tsx +476 -0
- package/src/extensions/nocobase-mail/components/mail-template-manager.tsx +204 -0
- package/src/extensions/nocobase-mail/components/mail-toolbar.tsx +155 -0
- package/src/extensions/nocobase-mail/components/mail-unread.tsx +111 -0
- package/src/extensions/nocobase-mail/components/types.ts +297 -0
- package/src/extensions/nocobase-mail/components/use-mail-compose.tsx +262 -0
- package/src/extensions/nocobase-mail/components/use-mail-mass-messages.ts +54 -0
- package/src/extensions/nocobase-mail/components/use-mail-messages.ts +113 -0
- package/src/extensions/nocobase-mail/components/use-mail-signatures.ts +122 -0
- package/src/extensions/nocobase-mail/components/use-mail-templates.ts +54 -0
- package/src/extensions/nocobase-mail/extension.tsx +105 -0
- package/src/extensions/nocobase-mail/index.ts +1 -0
- package/src/extensions/nocobase-mail/mail-demo-pages.tsx +503 -0
- package/src/extensions/nocobase-mail/mail-pages.tsx +201 -0
- package/src/extensions/nocobase-mail/tests/mail-quote-html-regression.mjs +51 -0
- package/src/extensions/nocobase-mail/tests/mail-regression.mjs +649 -0
- package/src/extensions/nocobase-users-example/app-routes.tsx +121 -0
- package/src/extensions/nocobase-users-example/extension.tsx +2 -100
- package/src/extensions/nocobase-users-example/index.ts +1 -0
- package/src/lib/nocobase/acl/menu.ts +17 -3
- package/src/lib/nocobase/acl/types.ts +4 -0
- package/src/locales/en-US.ts +2 -1
- package/src/locales/zh-CN.ts +2 -1
- package/src/providers/runtime-config.ts +18 -0
- package/src/routes.tsx +10 -0
- package/src/vite-env.d.ts +3 -0
- package/vite.config.ts +8 -0
- package/dist/assets/auth-method-demo-DaOCuvsq.js +0 -1
- package/dist/assets/auto-login-provider-DyaPGK2D.js +0 -1
- package/dist/assets/auto-redirect-provider-CfwRvYOI.js +0 -1
- package/dist/assets/auto-redirect-provider-Cr3jmYts.js +0 -1
- package/dist/assets/auto-redirect-provider-QkJQRBbG.js +0 -1
- package/dist/assets/calendar-DjDRfD5t.js +0 -1
- package/dist/assets/card-DuQBOS6A.js +0 -1
- package/dist/assets/createSeriesDataSimply-D0A6SAVQ.js +0 -1
- package/dist/assets/demo-BYWHeKUe.js +0 -1
- package/dist/assets/demo-CPWoNtx8.js +0 -1
- package/dist/assets/demo-CyvJk5zV.js +0 -1
- package/dist/assets/demo-D4OiKplc.js +0 -1
- package/dist/assets/demo-DBueJg0m.js +0 -1
- package/dist/assets/demo-DkIhyiRK.js +0 -1
- package/dist/assets/demo-tpTjO0sC.js +0 -1
- package/dist/assets/index-BgCbGDMc.js +0 -43
- package/dist/assets/index-MB-jfQld.js +0 -686
- package/dist/assets/index-NH3aqqQz.css +0 -1
- package/dist/assets/index-gFtCXH3o.js +0 -58
- package/dist/assets/ldap-sign-in-form--6Gt3yGq.js +0 -1
- package/dist/assets/prompt-card-B2RS4nt2.js +0 -1
- package/dist/assets/prompt-output-DZHRM2ft.js +0 -1
- package/dist/assets/saml-sign-in-button-BHL5a0JV.js +0 -1
- package/dist/assets/shortcut-C5x5LQWU.js +0 -47
- package/dist/assets/switch-CRL8PmRI.js +0 -1
- package/dist/assets/use-dingtalk-sign-in-8WYzJ2jf.js +0 -1
- package/dist/assets/wecom-sign-in-button-mIS1zGSU.js +0 -1
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { UsersRound } from "lucide-react";
|
|
2
|
+
|
|
3
|
+
import { defineAppRoutes } from "@/app/route-runtime";
|
|
4
|
+
import { AccessDenied } from "@/components/access-control/access-denied";
|
|
5
|
+
import { CanAccess } from "@/components/access-control/can-access";
|
|
6
|
+
import { UserCreate } from "./create";
|
|
7
|
+
import { UserEdit } from "./edit";
|
|
8
|
+
import { UserResourceLayout } from "./layout";
|
|
9
|
+
import { RoleDetailRoute } from "./role-detail";
|
|
10
|
+
import { userRoutes } from "./routes";
|
|
11
|
+
import { UserShow } from "./show";
|
|
12
|
+
|
|
13
|
+
export const usersExampleRoutes = defineAppRoutes([
|
|
14
|
+
{
|
|
15
|
+
name: "users",
|
|
16
|
+
path: userRoutes.list,
|
|
17
|
+
element: <UserResourceLayout />,
|
|
18
|
+
resource: {
|
|
19
|
+
meta: {
|
|
20
|
+
label: "Users",
|
|
21
|
+
priority: 1,
|
|
22
|
+
singularLabel: "User",
|
|
23
|
+
i18nKey: "resources.users",
|
|
24
|
+
i18nSingularKey: "resources.user",
|
|
25
|
+
i18nOptions: { ns: "app" },
|
|
26
|
+
descriptionI18nKey: "resources.users.description",
|
|
27
|
+
icon: <UsersRound />,
|
|
28
|
+
description:
|
|
29
|
+
"Manage the people who can sign in and work in this NocoBase application.",
|
|
30
|
+
canCreate: true,
|
|
31
|
+
canDelete: true,
|
|
32
|
+
acl: { type: "collection" },
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
children: [
|
|
36
|
+
{
|
|
37
|
+
name: "users.create",
|
|
38
|
+
path: "create",
|
|
39
|
+
resourceAction: "create",
|
|
40
|
+
element: (
|
|
41
|
+
<CanAccess
|
|
42
|
+
resource="users"
|
|
43
|
+
action="create"
|
|
44
|
+
fallback={<AccessDenied />}
|
|
45
|
+
>
|
|
46
|
+
<UserCreate />
|
|
47
|
+
</CanAccess>
|
|
48
|
+
),
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
name: "users.edit",
|
|
52
|
+
path: "edit/:id",
|
|
53
|
+
resourceAction: "edit",
|
|
54
|
+
element: (
|
|
55
|
+
<CanAccess
|
|
56
|
+
resource="users"
|
|
57
|
+
action="edit"
|
|
58
|
+
fallback={<AccessDenied />}
|
|
59
|
+
>
|
|
60
|
+
<UserEdit />
|
|
61
|
+
</CanAccess>
|
|
62
|
+
),
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
name: "users.role",
|
|
66
|
+
path: "roles/:roleName",
|
|
67
|
+
element: (
|
|
68
|
+
<CanAccess
|
|
69
|
+
resource="roles"
|
|
70
|
+
action="show"
|
|
71
|
+
fallback={<AccessDenied />}
|
|
72
|
+
>
|
|
73
|
+
<RoleDetailRoute returnTo="list" />
|
|
74
|
+
</CanAccess>
|
|
75
|
+
),
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
name: "users.show",
|
|
79
|
+
path: "show/:id",
|
|
80
|
+
resourceAction: "show",
|
|
81
|
+
element: (
|
|
82
|
+
<CanAccess
|
|
83
|
+
resource="users"
|
|
84
|
+
action="show"
|
|
85
|
+
fallback={<AccessDenied />}
|
|
86
|
+
>
|
|
87
|
+
<UserShow />
|
|
88
|
+
</CanAccess>
|
|
89
|
+
),
|
|
90
|
+
children: [
|
|
91
|
+
{
|
|
92
|
+
name: "users.show.edit",
|
|
93
|
+
path: "edit",
|
|
94
|
+
element: (
|
|
95
|
+
<CanAccess
|
|
96
|
+
resource="users"
|
|
97
|
+
action="edit"
|
|
98
|
+
fallback={<AccessDenied />}
|
|
99
|
+
>
|
|
100
|
+
<UserEdit returnTo="show" />
|
|
101
|
+
</CanAccess>
|
|
102
|
+
),
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
name: "users.show.role",
|
|
106
|
+
path: "roles/:roleName",
|
|
107
|
+
element: (
|
|
108
|
+
<CanAccess
|
|
109
|
+
resource="roles"
|
|
110
|
+
action="show"
|
|
111
|
+
fallback={<AccessDenied />}
|
|
112
|
+
>
|
|
113
|
+
<RoleDetailRoute returnTo="show" />
|
|
114
|
+
</CanAccess>
|
|
115
|
+
),
|
|
116
|
+
},
|
|
117
|
+
],
|
|
118
|
+
},
|
|
119
|
+
],
|
|
120
|
+
},
|
|
121
|
+
]);
|
|
@@ -1,109 +1,11 @@
|
|
|
1
|
-
import { CanAccess } from "@/components/access-control/can-access";
|
|
2
|
-
import { UsersRound } from "lucide-react";
|
|
3
|
-
import { Route } from "react-router";
|
|
4
|
-
|
|
5
1
|
import type { AppExtension } from "@/app/extension";
|
|
6
|
-
import {
|
|
7
|
-
import { UserCreate } from "./create";
|
|
8
|
-
import { UserEdit } from "./edit";
|
|
9
|
-
import { UserResourceLayout } from "./layout";
|
|
10
|
-
import { RoleDetailRoute } from "./role-detail";
|
|
11
|
-
import { userRoutes } from "./routes";
|
|
12
|
-
import { UserShow } from "./show";
|
|
2
|
+
import { usersExampleRoutes } from "./app-routes";
|
|
13
3
|
import "./locales";
|
|
14
4
|
|
|
15
5
|
const usersExampleExtension: AppExtension = {
|
|
16
6
|
id: "nocobase-users-example",
|
|
17
7
|
priority: 0,
|
|
18
|
-
|
|
19
|
-
{
|
|
20
|
-
name: "users",
|
|
21
|
-
list: userRoutes.list,
|
|
22
|
-
create: userRoutes.create,
|
|
23
|
-
edit: userRoutes.edit,
|
|
24
|
-
show: userRoutes.show,
|
|
25
|
-
meta: {
|
|
26
|
-
label: "Users",
|
|
27
|
-
priority: 1,
|
|
28
|
-
singularLabel: "User",
|
|
29
|
-
i18nKey: "resources.users",
|
|
30
|
-
i18nSingularKey: "resources.user",
|
|
31
|
-
i18nOptions: { ns: "app" },
|
|
32
|
-
descriptionI18nKey: "resources.users.description",
|
|
33
|
-
icon: <UsersRound />,
|
|
34
|
-
description:
|
|
35
|
-
"Manage the people who can sign in and work in this NocoBase application.",
|
|
36
|
-
canCreate: true,
|
|
37
|
-
canDelete: true,
|
|
38
|
-
acl: { type: "collection" },
|
|
39
|
-
},
|
|
40
|
-
},
|
|
41
|
-
],
|
|
42
|
-
routes: (
|
|
43
|
-
<Route path="/users" element={<UserResourceLayout />}>
|
|
44
|
-
<Route
|
|
45
|
-
path="create"
|
|
46
|
-
element={
|
|
47
|
-
<CanAccess
|
|
48
|
-
resource="users"
|
|
49
|
-
action="create"
|
|
50
|
-
fallback={<AccessDenied />}
|
|
51
|
-
>
|
|
52
|
-
<UserCreate />
|
|
53
|
-
</CanAccess>
|
|
54
|
-
}
|
|
55
|
-
/>
|
|
56
|
-
<Route
|
|
57
|
-
path="edit/:id"
|
|
58
|
-
element={
|
|
59
|
-
<CanAccess resource="users" action="edit" fallback={<AccessDenied />}>
|
|
60
|
-
<UserEdit />
|
|
61
|
-
</CanAccess>
|
|
62
|
-
}
|
|
63
|
-
/>
|
|
64
|
-
<Route
|
|
65
|
-
path="roles/:roleName"
|
|
66
|
-
element={
|
|
67
|
-
<CanAccess resource="roles" action="show" fallback={<AccessDenied />}>
|
|
68
|
-
<RoleDetailRoute returnTo="list" />
|
|
69
|
-
</CanAccess>
|
|
70
|
-
}
|
|
71
|
-
/>
|
|
72
|
-
<Route
|
|
73
|
-
path="show/:id"
|
|
74
|
-
element={
|
|
75
|
-
<CanAccess resource="users" action="show" fallback={<AccessDenied />}>
|
|
76
|
-
<UserShow />
|
|
77
|
-
</CanAccess>
|
|
78
|
-
}
|
|
79
|
-
>
|
|
80
|
-
<Route
|
|
81
|
-
path="edit"
|
|
82
|
-
element={
|
|
83
|
-
<CanAccess
|
|
84
|
-
resource="users"
|
|
85
|
-
action="edit"
|
|
86
|
-
fallback={<AccessDenied />}
|
|
87
|
-
>
|
|
88
|
-
<UserEdit returnTo="show" />
|
|
89
|
-
</CanAccess>
|
|
90
|
-
}
|
|
91
|
-
/>
|
|
92
|
-
<Route
|
|
93
|
-
path="roles/:roleName"
|
|
94
|
-
element={
|
|
95
|
-
<CanAccess
|
|
96
|
-
resource="roles"
|
|
97
|
-
action="show"
|
|
98
|
-
fallback={<AccessDenied />}
|
|
99
|
-
>
|
|
100
|
-
<RoleDetailRoute returnTo="show" />
|
|
101
|
-
</CanAccess>
|
|
102
|
-
}
|
|
103
|
-
/>
|
|
104
|
-
</Route>
|
|
105
|
-
</Route>
|
|
106
|
-
),
|
|
8
|
+
appRoutes: usersExampleRoutes,
|
|
107
9
|
};
|
|
108
10
|
|
|
109
11
|
export default usersExampleExtension;
|
|
@@ -1,7 +1,20 @@
|
|
|
1
1
|
import type { TreeMenuItem } from "@refinedev/core";
|
|
2
2
|
|
|
3
|
-
import { evaluateAccess } from "./evaluator";
|
|
4
|
-
import type { AclPermissionSet } from "./types";
|
|
3
|
+
import { evaluateAccess, matchesRoleConstraint } from "./evaluator";
|
|
4
|
+
import type { AclPermissionSet, RouteAccessConstraint } from "./types";
|
|
5
|
+
|
|
6
|
+
const matchesRouteAccess = (
|
|
7
|
+
item: TreeMenuItem,
|
|
8
|
+
permissions: AclPermissionSet
|
|
9
|
+
) => {
|
|
10
|
+
const access = item.meta?.routeAccess as RouteAccessConstraint[] | undefined;
|
|
11
|
+
return (
|
|
12
|
+
!access?.length ||
|
|
13
|
+
access.every((constraint) =>
|
|
14
|
+
matchesRoleConstraint(permissions, constraint.roles)
|
|
15
|
+
)
|
|
16
|
+
);
|
|
17
|
+
};
|
|
5
18
|
|
|
6
19
|
export const filterMenuItemsByAcl = (
|
|
7
20
|
items: TreeMenuItem[],
|
|
@@ -11,7 +24,8 @@ export const filterMenuItemsByAcl = (
|
|
|
11
24
|
const children = filterMenuItemsByAcl(item.children ?? [], permissions);
|
|
12
25
|
const isContainer = Boolean(item.meta?.group || item.children?.length);
|
|
13
26
|
const canAccessItem = item.route
|
|
14
|
-
?
|
|
27
|
+
? matchesRouteAccess(item, permissions) &&
|
|
28
|
+
evaluateAccess(permissions, {
|
|
15
29
|
resource: item.name,
|
|
16
30
|
action: "list",
|
|
17
31
|
resourceItem: item,
|
package/src/locales/en-US.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
export const starter = {
|
|
2
2
|
"shell.workspace": "AI application workspace",
|
|
3
|
+
"shell.settings": "System settings",
|
|
3
4
|
"shell.footer.freedom": "AI builds freely.",
|
|
4
|
-
"shell.footer.
|
|
5
|
+
"shell.footer.reliabilitySuffix": "keeps it reliable.",
|
|
5
6
|
"auth.signOut": "Sign out",
|
|
6
7
|
"auth.signingOut": "Signing out...",
|
|
7
8
|
"buttons.apply": "Apply",
|
package/src/locales/zh-CN.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
export const starter = {
|
|
2
2
|
"shell.workspace": "AI 应用工作区",
|
|
3
|
+
"shell.settings": "后台设置",
|
|
3
4
|
"shell.footer.freedom": "AI 自由构建。",
|
|
4
|
-
"shell.footer.
|
|
5
|
+
"shell.footer.reliabilitySuffix": "保障可靠运行。",
|
|
5
6
|
"auth.signOut": "退出登录",
|
|
6
7
|
"auth.signingOut": "正在退出...",
|
|
7
8
|
"buttons.apply": "应用",
|
|
@@ -32,6 +32,24 @@ export const resolveNocoBaseAppName = (portalBase: string, apiUrl?: string) =>
|
|
|
32
32
|
export const getNocoBaseAppName = () =>
|
|
33
33
|
resolveNocoBaseAppName(getPortalBase(), getRuntimeApiUrl());
|
|
34
34
|
|
|
35
|
+
export const resolveNocoBaseServerUrl = (path = "/") => {
|
|
36
|
+
if (typeof window === "undefined") return path;
|
|
37
|
+
|
|
38
|
+
const apiUrl = new URL(
|
|
39
|
+
getRuntimeApiUrl() || "/api",
|
|
40
|
+
window.location.origin
|
|
41
|
+
);
|
|
42
|
+
const apiPathMatch = apiUrl.pathname.match(/\/api(?:\/|$)/);
|
|
43
|
+
const serverBasePath = apiPathMatch
|
|
44
|
+
? apiUrl.pathname.slice(0, apiPathMatch.index)
|
|
45
|
+
: "";
|
|
46
|
+
|
|
47
|
+
return new URL(
|
|
48
|
+
path.replace(/^\/+/, ""),
|
|
49
|
+
`${apiUrl.origin}${serverBasePath}/`
|
|
50
|
+
).toString();
|
|
51
|
+
};
|
|
52
|
+
|
|
35
53
|
export const resolvePortalUrl = (path = "/") => {
|
|
36
54
|
if (typeof window === "undefined") return path;
|
|
37
55
|
if (/^[a-z][a-z\d+.-]*:/i.test(path)) return path;
|
package/src/routes.tsx
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { defineAppRoutes } from "@/app/route-runtime";
|
|
2
|
+
|
|
3
|
+
// Set this to false when the application no longer needs the example routes
|
|
4
|
+
// contributed by installed Registry extensions. Providers, adapters, and the
|
|
5
|
+
// development showcase under /dev remain available.
|
|
6
|
+
export const registryRoutesEnabled = true;
|
|
7
|
+
|
|
8
|
+
// Add application-owned business routes here. Installed Registry extensions
|
|
9
|
+
// contribute their own route definitions through the same runtime.
|
|
10
|
+
export const appRoutes = defineAppRoutes([]);
|
package/src/vite-env.d.ts
CHANGED
package/vite.config.ts
CHANGED
|
@@ -4,6 +4,10 @@ import fs from "node:fs";
|
|
|
4
4
|
import path from "path";
|
|
5
5
|
import { defineConfig, loadEnv } from "vite";
|
|
6
6
|
|
|
7
|
+
const portalTemplate = JSON.parse(
|
|
8
|
+
fs.readFileSync(path.resolve(__dirname, "package.json"), "utf8")
|
|
9
|
+
) as { displayName: string; version: string };
|
|
10
|
+
|
|
7
11
|
const getDefaultProxyTarget = (apiUrl?: string) => {
|
|
8
12
|
if (!apiUrl || apiUrl.startsWith("/")) return undefined;
|
|
9
13
|
|
|
@@ -106,6 +110,10 @@ export default defineConfig(({ mode }) => {
|
|
|
106
110
|
|
|
107
111
|
return {
|
|
108
112
|
base: portalBase,
|
|
113
|
+
define: {
|
|
114
|
+
__PORTAL_TEMPLATE_NAME__: JSON.stringify(portalTemplate.displayName),
|
|
115
|
+
__PORTAL_TEMPLATE_VERSION__: JSON.stringify(portalTemplate.version),
|
|
116
|
+
},
|
|
109
117
|
envPrefix: ["VITE_", "NOCOBASE_", "API_CLIENT_"],
|
|
110
118
|
plugins: [react(), tailwindcss(), copyRawIndexHtmlPlugin(portalBase)],
|
|
111
119
|
resolve: {
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{j as e,B as a}from"./index-MB-jfQld.js";import{C as r,a as d,b as l,c,d as x}from"./card-DuQBOS6A.js";function h({authType:s,children:t,description:i,methodName:n}){return e.jsxs("div",{className:"space-y-8 pb-12",children:[e.jsxs("header",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(a,{variant:"secondary",children:"Authentication"}),e.jsx(a,{variant:"outline",children:s})]}),e.jsx("h1",{className:"font-heading text-3xl font-semibold tracking-tight",children:n}),e.jsx("p",{className:"max-w-3xl text-muted-foreground",children:i})]}),e.jsxs(r,{className:"max-w-2xl",children:[e.jsxs(d,{children:[e.jsx(l,{children:"Default component"}),e.jsx(c,{children:"Installed Registries add this UI to the dynamic login page automatically."})]}),e.jsx(x,{children:e.jsx("div",{className:"max-w-sm",children:t})})]})]})}export{h as A};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{j as r}from"./index-MB-jfQld.js";import{A as i}from"./auto-redirect-provider-CfwRvYOI.js";import{i as t}from"./use-wecom-sign-in-C9j8wfCD.js";function n({children:e}){const o=t();return r.jsx(i,{resource:"wecom",action:"checkLogin",enabled:o,query:{isWeComBrowser:o},children:e})}export{n as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{b1 as b,b as s,a_ as A,a$ as a,j as w,b3 as x}from"./index-MB-jfQld.js";const E=new Set(["/login","/signin","/register","/forgot-password"]);function C({resource:o,action:r,enabled:d=!0,query:c,children:g}){const{pathname:i,search:m}=b(),l=s.useRef(!1),u=A(`${i}${m}`),n=d&&!a.getToken()&&!E.has(i),[p,t]=s.useState(n),f=s.useMemo(()=>c,[JSON.stringify(c)]);return s.useEffect(()=>{if(!n||l.current){t(!1);return}l.current=!0,t(!0);const h=new AbortController;return a.action(o,r,{method:"GET",query:{redirect:u,...f},signal:h.signal,authenticator:null,includeRole:!1,withAclMeta:!1}).then(e=>{if((e==null?void 0:e.success)===!1&&e.authUrl){window.location.replace(a.resolveUrl(e.authUrl));return}t(!1)}).catch(e=>{e instanceof DOMException&&e.name==="AbortError"||t(!1)}),()=>h.abort()},[r,u,o,n,f]),p?w.jsx(x,{className:"min-h-svh"}):g}export{C as A};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{j as e}from"./index-MB-jfQld.js";import{A as t}from"./auto-redirect-provider-CfwRvYOI.js";function c({children:r}){return e.jsx(t,{resource:"saml",action:"checkRedirect",children:r})}export{c as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{j as e}from"./index-MB-jfQld.js";import{A as t}from"./auto-redirect-provider-CfwRvYOI.js";function c({children:r}){return e.jsx(t,{resource:"oidc",action:"checkRedirect",children:r})}export{c as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{bC as y,b as E,j as ae,bD as Nn,c as T,bE as Cn,C as xn,bF as it,D as pn}from"./index-MB-jfQld.js";function Yn(e,t,n="long"){return new Intl.DateTimeFormat("en-US",{hour:"numeric",timeZone:e,timeZoneName:n}).format(t).split(/\s/g).slice(2).join(" ")}const je={},De={};function oe(e,t){try{const r=(je[e]||(je[e]=new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"longOffset"}).format))(t).split("GMT")[1];return r in De?De[r]:ut(r,r.split(":"))}catch{if(e in De)return De[e];const n=e==null?void 0:e.match(Tn);return n?ut(e,n.slice(1)):NaN}}const Tn=/([+-]\d\d):?(\d\d)?/;function ut(e,t){const n=+(t[0]||0),r=+(t[1]||0),a=+(t[2]||0)/60;return De[e]=n*60+r>0?n*60+r+a:n*60-r-a}class te extends Date{constructor(...t){super(),t.length>1&&typeof t[t.length-1]=="string"&&(this.timeZone=t.pop()),this.internal=new Date,isNaN(oe(this.timeZone,this))?this.setTime(NaN):t.length?typeof t[0]=="number"&&(t.length===1||t.length===2&&typeof t[1]!="number")?this.setTime(t[0]):typeof t[0]=="string"?this.setTime(+new Date(t[0])):t[0]instanceof Date?this.setTime(+t[0]):(this.setTime(+new Date(...t)),vt(this,t)):this.setTime(Date.now())}static tz(t,...n){return n.length?new te(...n,t):new te(Date.now(),t)}withTimeZone(t){return new te(+this,t)}getTimezoneOffset(){const t=-oe(this.timeZone,this);return t>0?Math.floor(t):Math.ceil(t)}setTime(t){return Date.prototype.setTime.apply(this,arguments),Ye(this),+this}[Symbol.for("constructDateFrom")](t){return new te(+new Date(t),this.timeZone)}}const ct=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!ct.test(e))return;const t=e.replace(ct,"$1UTC");te.prototype[t]&&(e.startsWith("get")?te.prototype[e]=function(){return this.internal[t]()}:(te.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),_n(this),+this},te.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),Ye(this),+this}))});function Ye(e){e.internal.setTime(+e),e.internal.setUTCSeconds(e.internal.getUTCSeconds()-Math.round(-oe(e.timeZone,e)*60))}function _n(e){Date.prototype.setFullYear.call(e,e.internal.getUTCFullYear(),e.internal.getUTCMonth(),e.internal.getUTCDate()),Date.prototype.setHours.call(e,e.internal.getUTCHours(),e.internal.getUTCMinutes(),e.internal.getUTCSeconds(),e.internal.getUTCMilliseconds()),vt(e)}function vt(e,t){const n=Array.isArray(t)?Pn(t):+e.internal,r=oe(e.timeZone,e),a=r>0?Math.floor(r):Math.ceil(r),o=new Date(+e);o.setUTCHours(o.getUTCHours()-1);const s=-new Date(+e).getTimezoneOffset(),i=-new Date(+o).getTimezoneOffset(),u=s-i;let c=s;if(u&&s!==a){const I=Date.prototype.getHours.apply(e),B=Array.isArray(t)?t[3]||0:e.internal.getUTCHours();if(I!==B){const j=new Date(+e),V=s-a;V&&j.setUTCMinutes(j.getUTCMinutes()+V);const G=oe(e.timeZone,j);(G>0?Math.floor(G):Math.ceil(G))===a&&(c=i)}}const d=c-a;d&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+d);const l=new Date(+e);l.setUTCSeconds(0);const h=s>0?l.getSeconds():(l.getSeconds()-60)%60,w=Math.round(-(oe(e.timeZone,e)*60))%60;(w||h)&&Date.prototype.setUTCSeconds.call(e,Date.prototype.getUTCSeconds.call(e)+w+h);const D=oe(e.timeZone,e),O=D>0?Math.floor(D):Math.ceil(D),C=-new Date(+e).getTimezoneOffset()-O,b=O!==a,g=C-d,N=O-a,M=n-O*60*1e3,f=N>0&&dt(e)-n===N*60*1e3&&dt(e,M)!==n;if(b&&g&&!f){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+g);const I=oe(e.timeZone,e),B=I>0?Math.floor(I):Math.ceil(I),j=O-B;j&&g<0&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+j)}Ye(e);const _=(t?n:n+w*1e3)-+e.internal;_&&Math.abs(_)<1800*1e3&&(Date.prototype.setTime.call(e,+e+_),Ye(e))}function Pn(e){return Date.UTC(e[0],e.length>1?e[1]:0,e.length>2?e[2]:1,...e.slice(3))}function dt(e,t){const n=new Date(t??+e);return n.setUTCSeconds(n.getUTCSeconds()-Math.round(-oe(e.timeZone,n)*60)),+n}class z extends te{static tz(t,...n){return n.length?new z(...n,t):new z(Date.now(),t)}toISOString(){const[t,n,r]=this.tzComponents(),a=`${t}${n}:${r}`;return this.internal.toISOString().slice(0,-1)+a}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[t,n,r,a]=this.internal.toUTCString().split(" ");return`${t==null?void 0:t.slice(0,-1)} ${r} ${n} ${a}`}toTimeString(){const t=this.internal.toUTCString().split(" ")[4],[n,r,a]=this.tzComponents();return`${t} GMT${n}${r}${a} (${Yn(this.timeZone,this)})`}toLocaleString(t,n){return Date.prototype.toLocaleString.call(this,t,{...n,timeZone:(n==null?void 0:n.timeZone)||this.timeZone})}toLocaleDateString(t,n){return Date.prototype.toLocaleDateString.call(this,t,{...n,timeZone:(n==null?void 0:n.timeZone)||this.timeZone})}toLocaleTimeString(t,n){return Date.prototype.toLocaleTimeString.call(this,t,{...n,timeZone:(n==null?void 0:n.timeZone)||this.timeZone})}tzComponents(){const t=this.getTimezoneOffset(),n=t>0?"-":"+",r=String(Math.floor(Math.abs(t)/60)).padStart(2,"0"),a=String(Math.abs(t)%60).padStart(2,"0");return[n,r,a]}withTimeZone(t){return new z(+this,t)}[Symbol.for("constructDateFrom")](t){return new z(+new Date(t),this.timeZone)}}const Ot=6048e5,En=864e5,ft=Symbol.for("constructDateFrom");function q(e,t){return typeof e=="function"?e(t):e&&typeof e=="object"&&ft in e?e[ft](t):e instanceof Date?new e.constructor(t):new Date(t)}function F(e,t){return q(t||e,e)}function Wt(e,t,n){const r=F(e,n==null?void 0:n.in);return isNaN(t)?q(e,NaN):(t&&r.setDate(r.getDate()+t),r)}function St(e,t,n){const r=F(e,n==null?void 0:n.in);if(isNaN(t))return q(e,NaN);if(!t)return r;const a=r.getDate(),o=q(e,r.getTime());o.setMonth(r.getMonth()+t+1,0);const s=o.getDate();return a>=s?o:(r.setFullYear(o.getFullYear(),o.getMonth(),a),r)}let Fn={};function Se(){return Fn}function me(e,t){var i,u,c,d;const n=Se(),r=(t==null?void 0:t.weekStartsOn)??((u=(i=t==null?void 0:t.locale)==null?void 0:i.options)==null?void 0:u.weekStartsOn)??n.weekStartsOn??((d=(c=n.locale)==null?void 0:c.options)==null?void 0:d.weekStartsOn)??0,a=F(e,t==null?void 0:t.in),o=a.getDay(),s=(o<r?7:0)+o-r;return a.setDate(a.getDate()-s),a.setHours(0,0,0,0),a}function Oe(e,t){return me(e,{...t,weekStartsOn:1})}function Nt(e,t){const n=F(e,t==null?void 0:t.in),r=n.getFullYear(),a=q(n,0);a.setFullYear(r+1,0,4),a.setHours(0,0,0,0);const o=Oe(a),s=q(n,0);s.setFullYear(r,0,4),s.setHours(0,0,0,0);const i=Oe(s);return n.getTime()>=o.getTime()?r+1:n.getTime()>=i.getTime()?r:r-1}function lt(e){const t=F(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),+e-+n}function ye(e,...t){const n=q.bind(null,t.find(r=>typeof r=="object"));return t.map(n)}function We(e,t){const n=F(e,t==null?void 0:t.in);return n.setHours(0,0,0,0),n}function Xe(e,t,n){const[r,a]=ye(n==null?void 0:n.in,e,t),o=We(r),s=We(a),i=+o-lt(o),u=+s-lt(s);return Math.round((i-u)/En)}function Bn(e,t){const n=Nt(e,t),r=q(e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),Oe(r)}function In(e,t,n){return Wt(e,t*7,n)}function Hn(e,t,n){return St(e,t*12,n)}function An(e,t){let n,r=t==null?void 0:t.in;return e.forEach(a=>{!r&&typeof a=="object"&&(r=q.bind(null,a));const o=F(a,r);(!n||n<o||isNaN(+o))&&(n=o)}),q(r,n||NaN)}function qn(e,t){let n,r=t==null?void 0:t.in;return e.forEach(a=>{!r&&typeof a=="object"&&(r=q.bind(null,a));const o=F(a,r);(!n||n>o||isNaN(+o))&&(n=o)}),q(r,n||NaN)}function jn(e,t,n){const[r,a]=ye(n==null?void 0:n.in,e,t);return+We(r)==+We(a)}function Ct(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function zn(e){return!(!Ct(e)&&typeof e!="number"||isNaN(+F(e)))}function xt(e,t,n){const[r,a]=ye(n==null?void 0:n.in,e,t),o=r.getFullYear()-a.getFullYear(),s=r.getMonth()-a.getMonth();return o*12+s}function Gn(e,t){const n=F(e,t==null?void 0:t.in),r=n.getMonth();return n.setFullYear(n.getFullYear(),r+1,0),n.setHours(23,59,59,999),n}function pt(e,t){const[n,r]=ye(e,t.start,t.end);return{start:n,end:r}}function Rn(e,t){const{start:n,end:r}=pt(t==null?void 0:t.in,e);let a=+n>+r;const o=a?+n:+r,s=a?r:n;s.setHours(0,0,0,0),s.setDate(1);let i=1;const u=[];for(;+s<=o;)u.push(q(n,s)),s.setMonth(s.getMonth()+i);return a?u.reverse():u}function $n(e,t){const n=F(e,t==null?void 0:t.in);return n.setDate(1),n.setHours(0,0,0,0),n}function Qn(e,t){const n=F(e,t==null?void 0:t.in),r=n.getFullYear();return n.setFullYear(r+1,0,0),n.setHours(23,59,59,999),n}function Yt(e,t){const n=F(e,t==null?void 0:t.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}function Xn(e,t){const{start:n,end:r}=pt(t==null?void 0:t.in,e);let a=+n>+r;const o=a?+n:+r,s=a?r:n;s.setHours(0,0,0,0),s.setMonth(0,1);let i=1;const u=[];for(;+s<=o;)u.push(q(n,s)),s.setFullYear(s.getFullYear()+i);return a?u.reverse():u}function Tt(e,t){var i,u,c,d;const n=Se(),r=(t==null?void 0:t.weekStartsOn)??((u=(i=t==null?void 0:t.locale)==null?void 0:i.options)==null?void 0:u.weekStartsOn)??n.weekStartsOn??((d=(c=n.locale)==null?void 0:c.options)==null?void 0:d.weekStartsOn)??0,a=F(e,t==null?void 0:t.in),o=a.getDay(),s=(o<r?-7:0)+6-(o-r);return a.setDate(a.getDate()+s),a.setHours(23,59,59,999),a}function Vn(e,t){return Tt(e,{...t,weekStartsOn:1})}const Un={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Kn=(e,t,n)=>{let r;const a=Un[e];return typeof a=="string"?r=a:t===1?r=a.one:r=a.other.replace("{{count}}",t.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function ze(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const Zn={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Jn={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Ln={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},er={date:ze({formats:Zn,defaultWidth:"full"}),time:ze({formats:Jn,defaultWidth:"full"}),dateTime:ze({formats:Ln,defaultWidth:"full"})},tr={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},nr=(e,t,n,r)=>tr[e];function Me(e){return(t,n)=>{const r=n!=null&&n.context?String(n.context):"standalone";let a;if(r==="formatting"&&e.formattingValues){const s=e.defaultFormattingWidth||e.defaultWidth,i=n!=null&&n.width?String(n.width):s;a=e.formattingValues[i]||e.formattingValues[s]}else{const s=e.defaultWidth,i=n!=null&&n.width?String(n.width):e.defaultWidth;a=e.values[i]||e.values[s]}const o=e.argumentCallback?e.argumentCallback(t):t;return a[o]}}const rr={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},ar={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},or={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},sr={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},ir={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},ur={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},cr=(e,t)=>{const n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},dr={ordinalNumber:cr,era:Me({values:rr,defaultWidth:"wide"}),quarter:Me({values:ar,defaultWidth:"wide",argumentCallback:e=>e-1}),month:Me({values:or,defaultWidth:"wide"}),day:Me({values:sr,defaultWidth:"wide"}),dayPeriod:Me({values:ir,defaultWidth:"wide",formattingValues:ur,defaultFormattingWidth:"wide"})};function ke(e){return(t,n={})=>{const r=n.width,a=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],o=t.match(a);if(!o)return null;const s=o[0],i=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],u=Array.isArray(i)?lr(i,l=>l.test(s)):fr(i,l=>l.test(s));let c;c=e.valueCallback?e.valueCallback(u):u,c=n.valueCallback?n.valueCallback(c):c;const d=t.slice(s.length);return{value:c,rest:d}}}function fr(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function lr(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function hr(e){return(t,n={})=>{const r=t.match(e.matchPattern);if(!r)return null;const a=r[0],o=t.match(e.parsePattern);if(!o)return null;let s=e.valueCallback?e.valueCallback(o[0]):o[0];s=n.valueCallback?n.valueCallback(s):s;const i=t.slice(a.length);return{value:s,rest:i}}}const mr=/^(\d+)(th|st|nd|rd)?/i,yr=/\d+/i,gr={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},wr={any:[/^b/i,/^(a|c)/i]},br={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},Mr={any:[/1/i,/2/i,/3/i,/4/i]},kr={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},Dr={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},vr={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},Or={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},Wr={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},Sr={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},Nr={ordinalNumber:hr({matchPattern:mr,parsePattern:yr,valueCallback:e=>parseInt(e,10)}),era:ke({matchPatterns:gr,defaultMatchWidth:"wide",parsePatterns:wr,defaultParseWidth:"any"}),quarter:ke({matchPatterns:br,defaultMatchWidth:"wide",parsePatterns:Mr,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ke({matchPatterns:kr,defaultMatchWidth:"wide",parsePatterns:Dr,defaultParseWidth:"any"}),day:ke({matchPatterns:vr,defaultMatchWidth:"wide",parsePatterns:Or,defaultParseWidth:"any"}),dayPeriod:ke({matchPatterns:Wr,defaultMatchWidth:"any",parsePatterns:Sr,defaultParseWidth:"any"})},he={code:"en-US",formatDistance:Kn,formatLong:er,formatRelative:nr,localize:dr,match:Nr,options:{weekStartsOn:0,firstWeekContainsDate:1}};function Cr(e,t){const n=F(e,t==null?void 0:t.in);return Xe(n,Yt(n))+1}function Ve(e,t){const n=F(e,t==null?void 0:t.in),r=+Oe(n)-+Bn(n);return Math.round(r/Ot)+1}function _t(e,t){var d,l,h,w;const n=F(e,t==null?void 0:t.in),r=n.getFullYear(),a=Se(),o=(t==null?void 0:t.firstWeekContainsDate)??((l=(d=t==null?void 0:t.locale)==null?void 0:d.options)==null?void 0:l.firstWeekContainsDate)??a.firstWeekContainsDate??((w=(h=a.locale)==null?void 0:h.options)==null?void 0:w.firstWeekContainsDate)??1,s=q((t==null?void 0:t.in)||e,0);s.setFullYear(r+1,0,o),s.setHours(0,0,0,0);const i=me(s,t),u=q((t==null?void 0:t.in)||e,0);u.setFullYear(r,0,o),u.setHours(0,0,0,0);const c=me(u,t);return+n>=+i?r+1:+n>=+c?r:r-1}function xr(e,t){var i,u,c,d;const n=Se(),r=(t==null?void 0:t.firstWeekContainsDate)??((u=(i=t==null?void 0:t.locale)==null?void 0:i.options)==null?void 0:u.firstWeekContainsDate)??n.firstWeekContainsDate??((d=(c=n.locale)==null?void 0:c.options)==null?void 0:d.firstWeekContainsDate)??1,a=_t(e,t),o=q((t==null?void 0:t.in)||e,0);return o.setFullYear(a,0,r),o.setHours(0,0,0,0),me(o,t)}function Ue(e,t){const n=F(e,t==null?void 0:t.in),r=+me(n,t)-+xr(n,t);return Math.round(r/Ot)+1}function P(e,t){const n=e<0?"-":"",r=Math.abs(e).toString().padStart(t,"0");return n+r}const ue={y(e,t){const n=e.getFullYear(),r=n>0?n:1-n;return P(t==="yy"?r%100:r,t.length)},M(e,t){const n=e.getMonth();return t==="M"?String(n+1):P(n+1,2)},d(e,t){return P(e.getDate(),t.length)},a(e,t){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];case"aaaa":default:return n==="am"?"a.m.":"p.m."}},h(e,t){return P(e.getHours()%12||12,t.length)},H(e,t){return P(e.getHours(),t.length)},m(e,t){return P(e.getMinutes(),t.length)},s(e,t){return P(e.getSeconds(),t.length)},S(e,t){const n=t.length,r=e.getMilliseconds(),a=Math.trunc(r*Math.pow(10,n-3));return P(a,t.length)}},fe={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},ht={G:function(e,t,n){const r=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});case"GGGG":default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if(t==="yo"){const r=e.getFullYear(),a=r>0?r:1-r;return n.ordinalNumber(a,{unit:"year"})}return ue.y(e,t)},Y:function(e,t,n,r){const a=_t(e,r),o=a>0?a:1-a;if(t==="YY"){const s=o%100;return P(s,2)}return t==="Yo"?n.ordinalNumber(o,{unit:"year"}):P(o,t.length)},R:function(e,t){const n=Nt(e);return P(n,t.length)},u:function(e,t){const n=e.getFullYear();return P(n,t.length)},Q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return P(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return P(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){const r=e.getMonth();switch(t){case"M":case"MM":return ue.M(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){const r=e.getMonth();switch(t){case"L":return String(r+1);case"LL":return P(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){const a=Ue(e,r);return t==="wo"?n.ordinalNumber(a,{unit:"week"}):P(a,t.length)},I:function(e,t,n){const r=Ve(e);return t==="Io"?n.ordinalNumber(r,{unit:"week"}):P(r,t.length)},d:function(e,t,n){return t==="do"?n.ordinalNumber(e.getDate(),{unit:"date"}):ue.d(e,t)},D:function(e,t,n){const r=Cr(e);return t==="Do"?n.ordinalNumber(r,{unit:"dayOfYear"}):P(r,t.length)},E:function(e,t,n){const r=e.getDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});case"EEEE":default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){const a=e.getDay(),o=(a-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(o);case"ee":return P(o,2);case"eo":return n.ordinalNumber(o,{unit:"day"});case"eee":return n.day(a,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(a,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(a,{width:"short",context:"formatting"});case"eeee":default:return n.day(a,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){const a=e.getDay(),o=(a-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(o);case"cc":return P(o,t.length);case"co":return n.ordinalNumber(o,{unit:"day"});case"ccc":return n.day(a,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(a,{width:"narrow",context:"standalone"});case"cccccc":return n.day(a,{width:"short",context:"standalone"});case"cccc":default:return n.day(a,{width:"wide",context:"standalone"})}},i:function(e,t,n){const r=e.getDay(),a=r===0?7:r;switch(t){case"i":return String(a);case"ii":return P(a,t.length);case"io":return n.ordinalNumber(a,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});case"iiii":default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){const a=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(a,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},b:function(e,t,n){const r=e.getHours();let a;switch(r===12?a=fe.noon:r===0?a=fe.midnight:a=r/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(a,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},B:function(e,t,n){const r=e.getHours();let a;switch(r>=17?a=fe.evening:r>=12?a=fe.afternoon:r>=4?a=fe.morning:a=fe.night,t){case"B":case"BB":case"BBB":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(a,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},h:function(e,t,n){if(t==="ho"){let r=e.getHours()%12;return r===0&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return ue.h(e,t)},H:function(e,t,n){return t==="Ho"?n.ordinalNumber(e.getHours(),{unit:"hour"}):ue.H(e,t)},K:function(e,t,n){const r=e.getHours()%12;return t==="Ko"?n.ordinalNumber(r,{unit:"hour"}):P(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t==="ko"?n.ordinalNumber(r,{unit:"hour"}):P(r,t.length)},m:function(e,t,n){return t==="mo"?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):ue.m(e,t)},s:function(e,t,n){return t==="so"?n.ordinalNumber(e.getSeconds(),{unit:"second"}):ue.s(e,t)},S:function(e,t){return ue.S(e,t)},X:function(e,t,n){const r=e.getTimezoneOffset();if(r===0)return"Z";switch(t){case"X":return yt(r);case"XXXX":case"XX":return ce(r);case"XXXXX":case"XXX":default:return ce(r,":")}},x:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"x":return yt(r);case"xxxx":case"xx":return ce(r);case"xxxxx":case"xxx":default:return ce(r,":")}},O:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+mt(r,":");case"OOOO":default:return"GMT"+ce(r,":")}},z:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+mt(r,":");case"zzzz":default:return"GMT"+ce(r,":")}},t:function(e,t,n){const r=Math.trunc(+e/1e3);return P(r,t.length)},T:function(e,t,n){return P(+e,t.length)}};function mt(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),a=Math.trunc(r/60),o=r%60;return o===0?n+String(a):n+String(a)+t+P(o,2)}function yt(e,t){return e%60===0?(e>0?"-":"+")+P(Math.abs(e)/60,2):ce(e,t)}function ce(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),a=P(Math.trunc(r/60),2),o=P(r%60,2);return n+a+t+o}const gt=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}},Pt=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}},pr=(e,t)=>{const n=e.match(/(P+)(p+)?/)||[],r=n[1],a=n[2];if(!a)return gt(e,t);let o;switch(r){case"P":o=t.dateTime({width:"short"});break;case"PP":o=t.dateTime({width:"medium"});break;case"PPP":o=t.dateTime({width:"long"});break;case"PPPP":default:o=t.dateTime({width:"full"});break}return o.replace("{{date}}",gt(r,t)).replace("{{time}}",Pt(a,t))},Yr={p:Pt,P:pr},Tr=/^D+$/,_r=/^Y+$/,Pr=["D","DD","YY","YYYY"];function Er(e){return Tr.test(e)}function Fr(e){return _r.test(e)}function Br(e,t,n){const r=Ir(e,t,n);if(console.warn(r),Pr.includes(e))throw new RangeError(r)}function Ir(e,t,n){const r=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const Hr=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Ar=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,qr=/^'([^]*?)'?$/,jr=/''/g,zr=/[a-zA-Z]/;function ve(e,t,n){var d,l,h,w,D,O,v,C;const r=Se(),a=(n==null?void 0:n.locale)??r.locale??he,o=(n==null?void 0:n.firstWeekContainsDate)??((l=(d=n==null?void 0:n.locale)==null?void 0:d.options)==null?void 0:l.firstWeekContainsDate)??r.firstWeekContainsDate??((w=(h=r.locale)==null?void 0:h.options)==null?void 0:w.firstWeekContainsDate)??1,s=(n==null?void 0:n.weekStartsOn)??((O=(D=n==null?void 0:n.locale)==null?void 0:D.options)==null?void 0:O.weekStartsOn)??r.weekStartsOn??((C=(v=r.locale)==null?void 0:v.options)==null?void 0:C.weekStartsOn)??0,i=F(e,n==null?void 0:n.in);if(!zn(i))throw new RangeError("Invalid time value");let u=t.match(Ar).map(b=>{const g=b[0];if(g==="p"||g==="P"){const N=Yr[g];return N(b,a.formatLong)}return b}).join("").match(Hr).map(b=>{if(b==="''")return{isToken:!1,value:"'"};const g=b[0];if(g==="'")return{isToken:!1,value:Gr(b)};if(ht[g])return{isToken:!0,value:b};if(g.match(zr))throw new RangeError("Format string contains an unescaped latin alphabet character `"+g+"`");return{isToken:!1,value:b}});a.localize.preprocessor&&(u=a.localize.preprocessor(i,u));const c={firstWeekContainsDate:o,weekStartsOn:s,locale:a};return u.map(b=>{if(!b.isToken)return b.value;const g=b.value;(!(n!=null&&n.useAdditionalWeekYearTokens)&&Fr(g)||!(n!=null&&n.useAdditionalDayOfYearTokens)&&Er(g))&&Br(g,t,String(e));const N=ht[g[0]];return N(i,g,a.localize,c)}).join("")}function Gr(e){const t=e.match(qr);return t?t[1].replace(jr,"'"):e}function Rr(e,t){const n=F(e,t==null?void 0:t.in),r=n.getFullYear(),a=n.getMonth(),o=q(n,0);return o.setFullYear(r,a+1,0),o.setHours(0,0,0,0),o.getDate()}function $r(e,t){return F(e,t==null?void 0:t.in).getMonth()}function Qr(e,t){return F(e,t==null?void 0:t.in).getFullYear()}function Xr(e,t){return+F(e)>+F(t)}function Vr(e,t){return+F(e)<+F(t)}function Ur(e,t,n){const[r,a]=ye(n==null?void 0:n.in,e,t);return r.getFullYear()===a.getFullYear()&&r.getMonth()===a.getMonth()}function Kr(e,t,n){const[r,a]=ye(n==null?void 0:n.in,e,t);return r.getFullYear()===a.getFullYear()}function Zr(e,t,n){const r=F(e,n==null?void 0:n.in),a=r.getFullYear(),o=r.getDate(),s=q(e,0);s.setFullYear(a,t,15),s.setHours(0,0,0,0);const i=Rr(s);return r.setMonth(t,Math.min(o,i)),r}function Jr(e,t,n){const r=F(e,n==null?void 0:n.in);return isNaN(+r)?q(e,NaN):(r.setFullYear(t),r)}const wt=5,Lr=4;function ea(e,t){const n=t.startOfMonth(e),r=n.getDay()>0?n.getDay():7,a=t.addDays(e,-r+1),o=t.addDays(a,wt*7-1);return t.getMonth(e)===t.getMonth(o)?wt:Lr}function Et(e,t){const n=t.startOfMonth(e),r=n.getDay();return r===1?n:r===0?t.addDays(n,-6):t.addDays(n,-1*(r-1))}function ta(e,t){const n=Et(e,t),r=ea(e,t);return t.addDays(n,r*7-1)}const Ft={...he,labels:{labelDayButton:(e,t,n,r)=>{let a;r&&typeof r.format=="function"?a=r.format.bind(r):a=(s,i)=>ve(s,i,{locale:he,...n});let o=a(e,"PPPP");return t.today&&(o=`Today, ${o}`),t.selected&&(o=`${o}, selected`),o},labelMonthDropdown:"Choose the Month",labelNext:"Go to the Next Month",labelPrevious:"Go to the Previous Month",labelWeekNumber:e=>`Week ${e}`,labelYearDropdown:"Choose the Year",labelGrid:(e,t,n)=>{let r;return n&&typeof n.format=="function"?r=n.format.bind(n):r=(a,o)=>ve(a,o,{locale:he,...t}),r(e,"LLLL yyyy")},labelGridcell:(e,t,n,r)=>{let a;r&&typeof r.format=="function"?a=r.format.bind(r):a=(s,i)=>ve(s,i,{locale:he,...n});let o=a(e,"PPPP");return t!=null&&t.today&&(o=`Today, ${o}`),o},labelNav:"Navigation bar",labelWeekNumberHeader:"Week Number",labelWeekday:(e,t,n)=>{let r;return n&&typeof n.format=="function"?r=n.format.bind(n):r=(a,o)=>ve(a,o,{locale:he,...t}),r(e,"cccc")}}};class Q{constructor(t,n){this.today=()=>{var a;if((a=this.overrides)!=null&&a.today)return this.overrides.today();if(this.options.timeZone)return z.tz(this.options.timeZone);const r=this.options.Date??Date;return new r},this.newDate=(r,a,o)=>{var s;return(s=this.overrides)!=null&&s.newDate?this.overrides.newDate(r,a,o):this.options.timeZone?new z(r,a,o,this.options.timeZone):new Date(r,a,o)},this.addDays=(r,a)=>{var o;return(o=this.overrides)!=null&&o.addDays?this.overrides.addDays(r,a):Wt(r,a)},this.addMonths=(r,a)=>{var o;return(o=this.overrides)!=null&&o.addMonths?this.overrides.addMonths(r,a):St(r,a)},this.addWeeks=(r,a)=>{var o;return(o=this.overrides)!=null&&o.addWeeks?this.overrides.addWeeks(r,a):In(r,a)},this.addYears=(r,a)=>{var o;return(o=this.overrides)!=null&&o.addYears?this.overrides.addYears(r,a):Hn(r,a)},this.differenceInCalendarDays=(r,a)=>{var o;return(o=this.overrides)!=null&&o.differenceInCalendarDays?this.overrides.differenceInCalendarDays(r,a):Xe(r,a)},this.differenceInCalendarMonths=(r,a)=>{var o;return(o=this.overrides)!=null&&o.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(r,a):xt(r,a)},this.eachMonthOfInterval=r=>{var a;return(a=this.overrides)!=null&&a.eachMonthOfInterval?this.overrides.eachMonthOfInterval(r):Rn(r)},this.eachYearOfInterval=r=>{var i;const a=(i=this.overrides)!=null&&i.eachYearOfInterval?this.overrides.eachYearOfInterval(r):Xn(r),o=new Set(a.map(u=>this.getYear(u)));if(o.size===a.length)return a;const s=[];return o.forEach(u=>{s.push(new Date(u,0,1))}),s},this.endOfBroadcastWeek=r=>{var a;return(a=this.overrides)!=null&&a.endOfBroadcastWeek?this.overrides.endOfBroadcastWeek(r):ta(r,this)},this.endOfISOWeek=r=>{var a;return(a=this.overrides)!=null&&a.endOfISOWeek?this.overrides.endOfISOWeek(r):Vn(r)},this.endOfMonth=r=>{var a;return(a=this.overrides)!=null&&a.endOfMonth?this.overrides.endOfMonth(r):Gn(r)},this.endOfWeek=(r,a)=>{var o;return(o=this.overrides)!=null&&o.endOfWeek?this.overrides.endOfWeek(r,a):Tt(r,this.options)},this.endOfYear=r=>{var a;return(a=this.overrides)!=null&&a.endOfYear?this.overrides.endOfYear(r):Qn(r)},this.format=(r,a,o)=>{var i;const s=(i=this.overrides)!=null&&i.format?this.overrides.format(r,a,this.options):ve(r,a,this.options);return this.options.numerals&&this.options.numerals!=="latn"?this.replaceDigits(s):s},this.getISOWeek=r=>{var a;return(a=this.overrides)!=null&&a.getISOWeek?this.overrides.getISOWeek(r):Ve(r)},this.getMonth=(r,a)=>{var o;return(o=this.overrides)!=null&&o.getMonth?this.overrides.getMonth(r,this.options):$r(r,this.options)},this.getYear=(r,a)=>{var o;return(o=this.overrides)!=null&&o.getYear?this.overrides.getYear(r,this.options):Qr(r,this.options)},this.getWeek=(r,a)=>{var o;return(o=this.overrides)!=null&&o.getWeek?this.overrides.getWeek(r,this.options):Ue(r,this.options)},this.isAfter=(r,a)=>{var o;return(o=this.overrides)!=null&&o.isAfter?this.overrides.isAfter(r,a):Xr(r,a)},this.isBefore=(r,a)=>{var o;return(o=this.overrides)!=null&&o.isBefore?this.overrides.isBefore(r,a):Vr(r,a)},this.isDate=r=>{var a;return(a=this.overrides)!=null&&a.isDate?this.overrides.isDate(r):Ct(r)},this.isSameDay=(r,a)=>{var o;return(o=this.overrides)!=null&&o.isSameDay?this.overrides.isSameDay(r,a):jn(r,a)},this.isSameMonth=(r,a)=>{var o;return(o=this.overrides)!=null&&o.isSameMonth?this.overrides.isSameMonth(r,a):Ur(r,a)},this.isSameYear=(r,a)=>{var o;return(o=this.overrides)!=null&&o.isSameYear?this.overrides.isSameYear(r,a):Kr(r,a)},this.max=r=>{var a;return(a=this.overrides)!=null&&a.max?this.overrides.max(r):An(r)},this.min=r=>{var a;return(a=this.overrides)!=null&&a.min?this.overrides.min(r):qn(r)},this.setMonth=(r,a)=>{var o;return(o=this.overrides)!=null&&o.setMonth?this.overrides.setMonth(r,a):Zr(r,a)},this.setYear=(r,a)=>{var o;return(o=this.overrides)!=null&&o.setYear?this.overrides.setYear(r,a):Jr(r,a)},this.startOfBroadcastWeek=(r,a)=>{var o;return(o=this.overrides)!=null&&o.startOfBroadcastWeek?this.overrides.startOfBroadcastWeek(r,this):Et(r,this)},this.startOfDay=r=>{var a;return(a=this.overrides)!=null&&a.startOfDay?this.overrides.startOfDay(r):We(r)},this.startOfISOWeek=r=>{var a;return(a=this.overrides)!=null&&a.startOfISOWeek?this.overrides.startOfISOWeek(r):Oe(r)},this.startOfMonth=r=>{var a;return(a=this.overrides)!=null&&a.startOfMonth?this.overrides.startOfMonth(r):$n(r)},this.startOfWeek=(r,a)=>{var o;return(o=this.overrides)!=null&&o.startOfWeek?this.overrides.startOfWeek(r,this.options):me(r,this.options)},this.startOfYear=r=>{var a;return(a=this.overrides)!=null&&a.startOfYear?this.overrides.startOfYear(r):Yt(r)},this.options={locale:Ft,...t},this.overrides=n}getDigitMap(){const{numerals:t="latn"}=this.options,n=new Intl.NumberFormat("en-US",{numberingSystem:t}),r={};for(let a=0;a<10;a++)r[a.toString()]=n.format(a);return r}replaceDigits(t){const n=this.getDigitMap();return t.replace(/\d/g,r=>n[r]||r)}formatNumber(t){return this.replaceDigits(t.toString())}getMonthYearOrder(){var n;const t=(n=this.options.locale)==null?void 0:n.code;return t&&Q.yearFirstLocales.has(t)?"year-first":"month-first"}formatMonthYear(t){const{locale:n,timeZone:r,numerals:a}=this.options,o=n==null?void 0:n.code;if(o&&Q.yearFirstLocales.has(o))try{return new Intl.DateTimeFormat(o,{month:"long",year:"numeric",timeZone:r,numberingSystem:a}).format(t)}catch{}const s=this.getMonthYearOrder()==="year-first"?"y LLLL":"LLLL y";return this.format(t,s)}}Q.yearFirstLocales=new Set(["eu","hu","ja","ja-Hira","ja-JP","ko","ko-KR","lt","lt-LT","lv","lv-LV","mn","mn-MN","zh","zh-CN","zh-HK","zh-TW"]);const ne=new Q;class Bt{constructor(t,n,r=ne){this.date=t,this.displayMonth=n,this.outside=!!(n&&!r.isSameMonth(t,n)),this.dateLib=r,this.isoDate=r.format(t,"yyyy-MM-dd"),this.displayMonthId=r.format(n,"yyyy-MM"),this.dateMonthId=r.format(t,"yyyy-MM")}isEqualTo(t){return this.dateLib.isSameDay(t.date,this.date)&&this.dateLib.isSameMonth(t.displayMonth,this.displayMonth)}}class na{constructor(t,n){this.date=t,this.weeks=n}}class ra{constructor(t,n){this.days=n,this.weekNumber=t}}function aa(e){return y.createElement("span",{...e})}function oa(e){const{size:t=24,orientation:n="left",className:r,style:a}=e;return y.createElement("svg",{className:r,style:a,width:t,height:t,viewBox:"0 0 24 24"},n==="up"&&y.createElement("polygon",{points:"6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28"}),n==="down"&&y.createElement("polygon",{points:"6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72"}),n==="left"&&y.createElement("polygon",{points:"16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20"}),n==="right"&&y.createElement("polygon",{points:"8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20"}))}function sa(e){const{day:t,modifiers:n,...r}=e;return y.createElement("td",{...r})}function ia(e){const{day:t,modifiers:n,...r}=e,a=y.useRef(null);return y.useEffect(()=>{var o;n.focused&&((o=a.current)==null||o.focus())},[n.focused]),y.createElement("button",{ref:a,...r})}var m;(function(e){e.Root="root",e.Chevron="chevron",e.Day="day",e.DayButton="day_button",e.CaptionLabel="caption_label",e.Dropdowns="dropdowns",e.Dropdown="dropdown",e.DropdownRoot="dropdown_root",e.Footer="footer",e.MonthGrid="month_grid",e.MonthCaption="month_caption",e.MonthsDropdown="months_dropdown",e.Month="month",e.Months="months",e.Nav="nav",e.NextMonthButton="button_next",e.PreviousMonthButton="button_previous",e.Week="week",e.Weeks="weeks",e.Weekday="weekday",e.Weekdays="weekdays",e.WeekNumber="week_number",e.WeekNumberHeader="week_number_header",e.YearsDropdown="years_dropdown"})(m||(m={}));var H;(function(e){e.disabled="disabled",e.hidden="hidden",e.outside="outside",e.focused="focused",e.today="today"})(H||(H={}));var J;(function(e){e.range_end="range_end",e.range_middle="range_middle",e.range_start="range_start",e.selected="selected"})(J||(J={}));var $;(function(e){e.weeks_before_enter="weeks_before_enter",e.weeks_before_exit="weeks_before_exit",e.weeks_after_enter="weeks_after_enter",e.weeks_after_exit="weeks_after_exit",e.caption_after_enter="caption_after_enter",e.caption_after_exit="caption_after_exit",e.caption_before_enter="caption_before_enter",e.caption_before_exit="caption_before_exit"})($||($={}));const It=E.createContext(void 0);function Te(){const e=E.useContext(It);if(e===void 0)throw new Error("useDayPicker() must be used within a custom component.");return e}function ua(e){const{options:t,className:n,...r}=e,{classNames:a,components:o,styles:s}=Te(),i=[a[m.Dropdown],n].join(" "),u=t==null?void 0:t.find(({value:c})=>c===r.value);return y.createElement("span",{"data-disabled":r.disabled,className:a[m.DropdownRoot],style:s==null?void 0:s[m.DropdownRoot]},y.createElement(o.Select,{className:i,...r},t==null?void 0:t.map(({value:c,label:d,disabled:l})=>y.createElement(o.Option,{key:c,value:c,disabled:l},d))),y.createElement("span",{className:a[m.CaptionLabel],style:s==null?void 0:s[m.CaptionLabel],"aria-hidden":!0},u==null?void 0:u.label,y.createElement(o.Chevron,{orientation:"down",size:18,className:a[m.Chevron],style:s==null?void 0:s[m.Chevron]})))}function ca(e){return y.createElement("div",{...e})}function da(e){return y.createElement("div",{...e})}function fa(e){const{calendarMonth:t,displayIndex:n,...r}=e;return y.createElement("div",{...r},e.children)}function la(e){const{calendarMonth:t,displayIndex:n,...r}=e;return y.createElement("div",{...r})}function ha(e){return y.createElement("table",{...e})}function ma(e){return y.createElement("div",{...e})}function ya(e){const{components:t}=Te();return y.createElement(t.Dropdown,{...e})}function ga(e){const{onPreviousClick:t,onNextClick:n,previousMonth:r,nextMonth:a,...o}=e,{components:s,classNames:i,styles:u,labels:{labelPrevious:c,labelNext:d}}=Te(),l=E.useCallback(w=>{a&&(n==null||n(w))},[a,n]),h=E.useCallback(w=>{r&&(t==null||t(w))},[r,t]);return y.createElement("nav",{...o},y.createElement(s.PreviousMonthButton,{type:"button",className:i[m.PreviousMonthButton],style:u==null?void 0:u[m.PreviousMonthButton],tabIndex:r?void 0:-1,"aria-disabled":r?void 0:!0,"aria-label":c(r),onClick:h},y.createElement(s.Chevron,{disabled:r?void 0:!0,className:i[m.Chevron],style:u==null?void 0:u[m.Chevron],orientation:"left"})),y.createElement(s.NextMonthButton,{type:"button",className:i[m.NextMonthButton],style:u==null?void 0:u[m.NextMonthButton],tabIndex:a?void 0:-1,"aria-disabled":a?void 0:!0,"aria-label":d(a),onClick:l},y.createElement(s.Chevron,{disabled:a?void 0:!0,orientation:"right",className:i[m.Chevron],style:u==null?void 0:u[m.Chevron]})))}function wa(e){return y.createElement("button",{...e})}function ba(e){return y.createElement("option",{...e})}function Ma(e){return y.createElement("button",{...e})}function ka(e){const{rootRef:t,...n}=e;return y.createElement("div",{...n,ref:t})}function Da(e){return y.createElement("select",{...e})}function va(e){const{week:t,...n}=e;return y.createElement("tr",{...n})}function Oa(e){return y.createElement("th",{...e})}function Wa(e){return y.createElement("thead",{"aria-hidden":!0},y.createElement("tr",{...e}))}function Sa(e){const{week:t,...n}=e;return y.createElement("th",{...n})}function Na(e){return y.createElement("th",{...e})}function Ca(e){return y.createElement("tbody",{...e})}function xa(e){const{components:t}=Te();return y.createElement(t.Dropdown,{...e})}const pa=Object.freeze(Object.defineProperty({__proto__:null,CaptionLabel:aa,Chevron:oa,Day:sa,DayButton:ia,Dropdown:ua,DropdownNav:ca,Footer:da,Month:fa,MonthCaption:la,MonthGrid:ha,Months:ma,MonthsDropdown:ya,Nav:ga,NextMonthButton:wa,Option:ba,PreviousMonthButton:Ma,Root:ka,Select:Da,Week:va,WeekNumber:Sa,WeekNumberHeader:Na,Weekday:Oa,Weekdays:Wa,Weeks:Ca,YearsDropdown:xa},Symbol.toStringTag,{value:"Module"}));function se(e,t,n=!1,r=ne){let{from:a,to:o}=e;const{differenceInCalendarDays:s,isSameDay:i}=r;return a&&o?(s(o,a)<0&&([a,o]=[o,a]),s(t,a)>=(n?1:0)&&s(o,t)>=(n?1:0)):!n&&o?i(o,t):!n&&a?i(a,t):!1}function Ke(e){return!!(e&&typeof e=="object"&&"before"in e&&"after"in e)}function _e(e){return!!(e&&typeof e=="object"&&"from"in e)}function Ze(e){return!!(e&&typeof e=="object"&&"after"in e)}function Je(e){return!!(e&&typeof e=="object"&&"before"in e)}function Ht(e){return!!(e&&typeof e=="object"&&"dayOfWeek"in e)}function At(e,t){return Array.isArray(e)&&e.every(t.isDate)}function ie(e,t,n=ne){const r=Array.isArray(t)?t:[t],{isSameDay:a,differenceInCalendarDays:o,isAfter:s}=n;return r.some(i=>{if(typeof i=="boolean")return i;if(n.isDate(i))return a(e,i);if(At(i,n))return i.some(u=>a(e,u));if(_e(i))return se(i,e,!1,n);if(Ht(i))return Array.isArray(i.dayOfWeek)?i.dayOfWeek.includes(e.getDay()):i.dayOfWeek===e.getDay();if(Ke(i)){const u=o(i.before,e),c=o(i.after,e),d=u>0,l=c<0;return s(i.before,i.after)?l&&d:d||l}return Ze(i)?o(e,i.after)>0:Je(i)?o(i.before,e)>0:typeof i=="function"?i(e):!1})}function Ya(e,t,n,r,a){const{disabled:o,hidden:s,modifiers:i,showOutsideDays:u,broadcastCalendar:c,today:d=a.today()}=t,{isSameDay:l,isSameMonth:h,startOfMonth:w,isBefore:D,endOfMonth:O,isAfter:v}=a,C=n&&w(n),b=r&&O(r),g={[H.focused]:[],[H.outside]:[],[H.disabled]:[],[H.hidden]:[],[H.today]:[]},N={};for(const M of e){const{date:f,displayMonth:S}=M,_=!!(S&&!h(f,S)),I=!!(C&&D(f,C)),B=!!(b&&v(f,b)),j=!!(o&&ie(f,o,a)),V=!!(s&&ie(f,s,a))||I||B||!c&&!u&&_||c&&u===!1&&_,G=l(f,d);_&&g.outside.push(M),j&&g.disabled.push(M),V&&g.hidden.push(M),G&&g.today.push(M),i&&Object.keys(i).forEach(R=>{const de=i==null?void 0:i[R];de&&ie(f,de,a)&&(N[R]?N[R].push(M):N[R]=[M])})}return M=>{const f={[H.focused]:!1,[H.disabled]:!1,[H.hidden]:!1,[H.outside]:!1,[H.today]:!1},S={};for(const _ in g){const I=g[_];f[_]=I.some(B=>B===M)}for(const _ in N)S[_]=N[_].some(I=>I===M);return{...f,...S}}}function Ta(e,t,n={}){return Object.entries(e).filter(([,a])=>a===!0).reduce((a,[o])=>(n[o]?a.push(n[o]):t[H[o]]?a.push(t[H[o]]):t[J[o]]&&a.push(t[J[o]]),a),[t[m.Day]])}function _a(e){return{...pa,...e}}function Pa(e){const t={"data-mode":e.mode??void 0,"data-required":"required"in e?e.required:void 0,"data-multiple-months":e.numberOfMonths&&e.numberOfMonths>1||void 0,"data-week-numbers":e.showWeekNumber||void 0,"data-broadcast-calendar":e.broadcastCalendar||void 0,"data-nav-layout":e.navLayout||void 0};return Object.entries(e).forEach(([n,r])=>{n.startsWith("data-")&&(t[n]=r)}),t}function Le(){const e={};for(const t in m)e[m[t]]=`rdp-${m[t]}`;for(const t in H)e[H[t]]=`rdp-${H[t]}`;for(const t in J)e[J[t]]=`rdp-${J[t]}`;for(const t in $)e[$[t]]=`rdp-${$[t]}`;return e}function Ea(e,t,n){return(n??new Q(t)).formatMonthYear(e)}function Fa(e,t,n){return(n??new Q(t)).format(e,"d")}function Ba(e,t=ne){return t.format(e,"LLLL")}function Ia(e,t,n){return(n??new Q(t)).format(e,"cccccc")}function Ha(e,t=ne){return e<10?t.formatNumber(`0${e.toLocaleString()}`):t.formatNumber(`${e.toLocaleString()}`)}function Aa(){return""}function qa(e,t=ne){return t.format(e,"yyyy")}const ja=Object.freeze(Object.defineProperty({__proto__:null,formatCaption:Ea,formatDay:Fa,formatMonthDropdown:Ba,formatWeekNumber:Ha,formatWeekNumberHeader:Aa,formatWeekdayName:Ia,formatYearDropdown:qa},Symbol.toStringTag,{value:"Module"}));function za(e){return{...ja,...e}}function qt(e,t,n,r){let a=(r??new Q(n)).format(e,"PPPP");return t.today&&(a=`Today, ${a}`),t.selected&&(a=`${a}, selected`),a}function jt(e,t,n){return(n??new Q(t)).formatMonthYear(e)}function zt(e,t,n,r){let a=(r??new Q(n)).format(e,"PPPP");return t!=null&&t.today&&(a=`Today, ${a}`),a}function Gt(e){return"Choose the Month"}function Rt(){return""}const Ga="Go to the Next Month";function $t(e,t){return Ga}function Qt(e){return"Go to the Previous Month"}function Xt(e,t,n){return(n??new Q(t)).format(e,"cccc")}function Vt(e,t){return`Week ${e}`}function Ut(e){return"Week Number"}function Kt(e){return"Choose the Year"}const Ra=Object.freeze(Object.defineProperty({__proto__:null,labelDayButton:qt,labelGrid:jt,labelGridcell:zt,labelMonthDropdown:Gt,labelNav:Rt,labelNext:$t,labelPrevious:Qt,labelWeekNumber:Vt,labelWeekNumberHeader:Ut,labelWeekday:Xt,labelYearDropdown:Kt},Symbol.toStringTag,{value:"Module"})),Z=(e,t,n)=>t||(n?typeof n=="function"?n:(...r)=>n:e);function $a(e,t){var r;const n=((r=t.locale)==null?void 0:r.labels)??{};return{...Ra,...e??{},labelDayButton:Z(qt,e==null?void 0:e.labelDayButton,n.labelDayButton),labelMonthDropdown:Z(Gt,e==null?void 0:e.labelMonthDropdown,n.labelMonthDropdown),labelNext:Z($t,e==null?void 0:e.labelNext,n.labelNext),labelPrevious:Z(Qt,e==null?void 0:e.labelPrevious,n.labelPrevious),labelWeekNumber:Z(Vt,e==null?void 0:e.labelWeekNumber,n.labelWeekNumber),labelYearDropdown:Z(Kt,e==null?void 0:e.labelYearDropdown,n.labelYearDropdown),labelGrid:Z(jt,e==null?void 0:e.labelGrid,n.labelGrid),labelGridcell:Z(zt,e==null?void 0:e.labelGridcell,n.labelGridcell),labelNav:Z(Rt,e==null?void 0:e.labelNav,n.labelNav),labelWeekNumberHeader:Z(Ut,e==null?void 0:e.labelWeekNumberHeader,n.labelWeekNumberHeader),labelWeekday:Z(Xt,e==null?void 0:e.labelWeekday,n.labelWeekday)}}function Qa(e,t,n,r,a){const{startOfMonth:o,startOfYear:s,endOfYear:i,eachMonthOfInterval:u,getMonth:c}=a;return u({start:s(e),end:i(e)}).map(h=>{const w=r.formatMonthDropdown(h,a),D=c(h),O=t&&h<o(t)||n&&h>o(n)||!1;return{value:D,label:w,disabled:O}})}function Xa(e,t={},n={}){let r={...t==null?void 0:t[m.Day]};return Object.entries(e).filter(([,a])=>a===!0).forEach(([a])=>{r={...r,...n==null?void 0:n[a]}}),r}function Va(e,t,n,r){const a=r??e.today(),o=n?e.startOfBroadcastWeek(a,e):t?e.startOfISOWeek(a):e.startOfWeek(a),s=[];for(let i=0;i<7;i++){const u=e.addDays(o,i);s.push(u)}return s}function Ua(e,t,n,r,a=!1){if(!e||!t)return;const{startOfYear:o,endOfYear:s,eachYearOfInterval:i,getYear:u}=r,c=o(e),d=s(t),l=i({start:c,end:d});return a&&l.reverse(),l.map(h=>{const w=n.formatYearDropdown(h,r);return{value:u(h),label:w,disabled:!1}})}function Ka(e,t={}){var i;const{weekStartsOn:n,locale:r}=t,a=n??((i=r==null?void 0:r.options)==null?void 0:i.weekStartsOn)??0,o=u=>{const c=typeof u=="number"||typeof u=="string"?new Date(u):u;return new z(c.getFullYear(),c.getMonth(),c.getDate(),12,0,0,e)},s=u=>{const c=o(u);return new Date(c.getFullYear(),c.getMonth(),c.getDate(),0,0,0,0)};return{today:()=>o(z.tz(e)),newDate:(u,c,d)=>new z(u,c,d,12,0,0,e),startOfDay:u=>o(u),startOfWeek:(u,c)=>{const d=o(u),l=(c==null?void 0:c.weekStartsOn)??a,h=(d.getDay()-l+7)%7;return d.setDate(d.getDate()-h),d},startOfISOWeek:u=>{const c=o(u),d=(c.getDay()-1+7)%7;return c.setDate(c.getDate()-d),c},startOfMonth:u=>{const c=o(u);return c.setDate(1),c},startOfYear:u=>{const c=o(u);return c.setMonth(0,1),c},endOfWeek:(u,c)=>{const d=o(u),w=((((c==null?void 0:c.weekStartsOn)??a)+6)%7-d.getDay()+7)%7;return d.setDate(d.getDate()+w),d},endOfISOWeek:u=>{const c=o(u),d=(7-c.getDay())%7;return c.setDate(c.getDate()+d),c},endOfMonth:u=>{const c=o(u);return c.setMonth(c.getMonth()+1,0),c},endOfYear:u=>{const c=o(u);return c.setMonth(11,31),c},eachMonthOfInterval:u=>{const c=o(u.start),d=o(u.end),l=[],h=new z(c.getFullYear(),c.getMonth(),1,12,0,0,e),w=d.getFullYear()*12+d.getMonth();for(;h.getFullYear()*12+h.getMonth()<=w;)l.push(new z(h,e)),h.setMonth(h.getMonth()+1,1);return l},addDays:(u,c)=>{const d=o(u);return d.setDate(d.getDate()+c),d},addWeeks:(u,c)=>{const d=o(u);return d.setDate(d.getDate()+c*7),d},addMonths:(u,c)=>{const d=o(u);return d.setMonth(d.getMonth()+c),d},addYears:(u,c)=>{const d=o(u);return d.setFullYear(d.getFullYear()+c),d},eachYearOfInterval:u=>{const c=o(u.start),d=o(u.end),l=[],h=new z(c.getFullYear(),0,1,12,0,0,e);for(;h.getFullYear()<=d.getFullYear();)l.push(new z(h,e)),h.setFullYear(h.getFullYear()+1,0,1);return l},getWeek:(u,c)=>{var l;const d=s(u);return Ue(d,{weekStartsOn:(c==null?void 0:c.weekStartsOn)??a,firstWeekContainsDate:(c==null?void 0:c.firstWeekContainsDate)??((l=r==null?void 0:r.options)==null?void 0:l.firstWeekContainsDate)??1})},getISOWeek:u=>{const c=s(u);return Ve(c)},differenceInCalendarDays:(u,c)=>{const d=s(u),l=s(c);return Xe(d,l)},differenceInCalendarMonths:(u,c)=>{const d=s(u),l=s(c);return xt(d,l)}}}const Ne=e=>e instanceof HTMLElement?e:null,Ge=e=>[...e.querySelectorAll("[data-animated-month]")??[]],Za=e=>Ne(e.querySelector("[data-animated-month]")),Re=e=>Ne(e.querySelector("[data-animated-caption]")),$e=e=>Ne(e.querySelector("[data-animated-weeks]")),Ja=e=>Ne(e.querySelector("[data-animated-nav]")),La=e=>Ne(e.querySelector("[data-animated-weekdays]"));function eo(e,t,{classNames:n,months:r,focused:a,dateLib:o}){const s=E.useRef(null),i=E.useRef(r),u=E.useRef(!1);E.useLayoutEffect(()=>{const c=i.current;if(i.current=r,!t||!e.current||!(e.current instanceof HTMLElement)||r.length===0||c.length===0||r.length!==c.length)return;const d=o.isSameMonth(r[0].date,c[0].date),l=o.isAfter(r[0].date,c[0].date),h=l?n[$.caption_after_enter]:n[$.caption_before_enter],w=l?n[$.weeks_after_enter]:n[$.weeks_before_enter],D=s.current,O=e.current.cloneNode(!0);if(O instanceof HTMLElement?(Ge(O).forEach(g=>{if(!(g instanceof HTMLElement))return;const N=Za(g);N&&g.contains(N)&&g.removeChild(N);const M=Re(g);M&&M.classList.remove(h);const f=$e(g);f&&f.classList.remove(w)}),s.current=O):s.current=null,u.current||d||a)return;const v=D instanceof HTMLElement?Ge(D):[],C=Ge(e.current);if(C!=null&&C.every(b=>b instanceof HTMLElement)&&(v!=null&&v.every(b=>b instanceof HTMLElement))){u.current=!0,e.current.style.isolation="isolate";const b=Ja(e.current);b&&(b.style.zIndex="1"),C.forEach((g,N)=>{const M=v[N];if(!M)return;g.style.position="relative",g.style.overflow="hidden";const f=Re(g);f&&f.classList.add(h);const S=$e(g);S&&S.classList.add(w);const _=()=>{u.current=!1,e.current&&(e.current.style.isolation=""),b&&(b.style.zIndex=""),f&&f.classList.remove(h),S&&S.classList.remove(w),g.style.position="",g.style.overflow="",g.contains(M)&&g.removeChild(M)};M.style.pointerEvents="none",M.style.position="absolute",M.style.overflow="hidden",M.setAttribute("aria-hidden","true");const I=La(M);I&&(I.style.opacity="0");const B=Re(M);B&&(B.classList.add(l?n[$.caption_before_exit]:n[$.caption_after_exit]),B.addEventListener("animationend",_));const j=$e(M);j&&j.classList.add(l?n[$.weeks_before_exit]:n[$.weeks_after_exit]),g.insertBefore(M,g.firstChild)})}})}function to(e,t,n,r){const a=e[0],o=e[e.length-1],{ISOWeek:s,fixedWeeks:i,broadcastCalendar:u}=n??{},{addDays:c,differenceInCalendarDays:d,differenceInCalendarMonths:l,endOfBroadcastWeek:h,endOfISOWeek:w,endOfMonth:D,endOfWeek:O,isAfter:v,startOfBroadcastWeek:C,startOfISOWeek:b,startOfWeek:g}=r,N=u?C(a,r):s?b(a):g(a),M=u?h(o):s?w(D(o)):O(D(o)),f=t&&(u?h(t):s?w(t):O(t)),S=f&&v(M,f)?f:M,_=d(S,N),I=l(o,a)+1,B=[];for(let G=0;G<=_;G++){const R=c(N,G);B.push(R)}const V=(u?35:42)*I;if(i&&B.length<V){const G=V-B.length;for(let R=0;R<G;R++){const de=c(B[B.length-1],1);B.push(de)}}return B}function no(e){const t=[];return e.reduce((n,r)=>{const a=r.weeks.reduce((o,s)=>o.concat(s.days.slice()),t.slice());return n.concat(a.slice())},t.slice())}function ro(e,t,n,r){const{numberOfMonths:a=1}=n,o=[];for(let s=0;s<a;s++){const i=r.addMonths(e,s);if(t&&i>t)break;o.push(i)}return o}function bt(e,t,n,r){const{month:a,defaultMonth:o,today:s=r.today(),numberOfMonths:i=1}=e;let u=a||o||s;const{differenceInCalendarMonths:c,addMonths:d,startOfMonth:l}=r;if(n&&c(n,u)<i-1){const h=-1*(i-1);u=d(n,h)}return t&&c(u,t)<0&&(u=t),l(u)}function ao(e,t,n,r){const{addDays:a,endOfBroadcastWeek:o,endOfISOWeek:s,endOfMonth:i,endOfWeek:u,getISOWeek:c,getWeek:d,startOfBroadcastWeek:l,startOfISOWeek:h,startOfWeek:w}=r,D=e.reduce((O,v)=>{const C=n.broadcastCalendar?l(v,r):n.ISOWeek?h(v):w(v),b=n.broadcastCalendar?o(v):n.ISOWeek?s(i(v)):u(i(v)),g=t.filter(S=>S>=C&&S<=b),N=n.broadcastCalendar?35:42;if(n.fixedWeeks&&g.length<N){const S=t.filter(_=>{const I=N-g.length;return _>b&&_<=a(b,I)});g.push(...S)}const M=g.reduce((S,_)=>{const I=n.ISOWeek?c(_):d(_),B=S.find(V=>V.weekNumber===I),j=new Bt(_,v,r);return B?B.days.push(j):S.push(new ra(I,[j])),S},[]),f=new na(v,M);return O.push(f),O},[]);return n.reverseMonths?D.reverse():D}function oo(e,t){let{startMonth:n,endMonth:r}=e;const{startOfYear:a,startOfDay:o,startOfMonth:s,endOfMonth:i,addYears:u,endOfYear:c,today:d}=t,l=e.captionLayout==="dropdown"||e.captionLayout==="dropdown-years";return n?n=s(n):!n&&l&&(n=a(u(e.today??d(),-100))),r?r=i(r):!r&&l&&(r=c(e.today??d())),[n&&o(n),r&&o(r)]}function so(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:a,numberOfMonths:o=1}=n,{startOfMonth:s,addMonths:i,differenceInCalendarMonths:u}=r,c=a?o:1,d=s(e);if(!t)return i(d,c);if(!(u(t,e)<o))return i(d,c)}function io(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:a,numberOfMonths:o}=n,{startOfMonth:s,addMonths:i,differenceInCalendarMonths:u}=r,c=a?o??1:1,d=s(e);if(!t)return i(d,-c);if(!(u(d,t)<=0))return i(d,-c)}function uo(e){const t=[];return e.reduce((n,r)=>n.concat(r.weeks.slice()),t.slice())}function Pe(e,t){const[n,r]=E.useState(e);return[t===void 0?n:t,r]}function co(e,t){var N;const[n,r]=oo(e,t),{startOfMonth:a,endOfMonth:o}=t,s=bt(e,n,r,t),[i,u]=Pe(s,e.month?s:void 0);E.useEffect(()=>{const M=bt(e,n,r,t);u(M)},[e.timeZone]);const{months:c,weeks:d,days:l,previousMonth:h,nextMonth:w}=E.useMemo(()=>{const M=ro(i,r,{numberOfMonths:e.numberOfMonths},t),f=to(M,e.endMonth?o(e.endMonth):void 0,{ISOWeek:e.ISOWeek,fixedWeeks:e.fixedWeeks,broadcastCalendar:e.broadcastCalendar},t),S=ao(M,f,{broadcastCalendar:e.broadcastCalendar,fixedWeeks:e.fixedWeeks,ISOWeek:e.ISOWeek,reverseMonths:e.reverseMonths},t),_=uo(S),I=no(S),B=io(i,n,e,t),j=so(i,r,e,t);return{months:S,weeks:_,days:I,previousMonth:B,nextMonth:j}},[t,i.getTime(),r==null?void 0:r.getTime(),n==null?void 0:n.getTime(),e.disableNavigation,e.broadcastCalendar,(N=e.endMonth)==null?void 0:N.getTime(),e.fixedWeeks,e.ISOWeek,e.numberOfMonths,e.pagedNavigation,e.reverseMonths]),{disableNavigation:D,onMonthChange:O}=e,v=M=>d.some(f=>f.days.some(S=>S.isEqualTo(M))),C=M=>{if(D)return;let f=a(M);n&&f<a(n)&&(f=a(n)),r&&f>a(r)&&(f=a(r)),u(f),O==null||O(f)};return{months:c,weeks:d,days:l,navStart:n,navEnd:r,previousMonth:h,nextMonth:w,goToMonth:C,goToDay:M=>{v(M)||C(M.date)}}}var ee;(function(e){e[e.Today=0]="Today",e[e.Selected=1]="Selected",e[e.LastFocused=2]="LastFocused",e[e.FocusedModifier=3]="FocusedModifier"})(ee||(ee={}));function Mt(e){return!e[H.disabled]&&!e[H.hidden]&&!e[H.outside]}function fo(e,t,n,r){let a,o=-1;for(const s of e){const i=t(s);Mt(i)&&(i[H.focused]&&o<ee.FocusedModifier?(a=s,o=ee.FocusedModifier):r!=null&&r.isEqualTo(s)&&o<ee.LastFocused?(a=s,o=ee.LastFocused):n(s.date)&&o<ee.Selected?(a=s,o=ee.Selected):i[H.today]&&o<ee.Today&&(a=s,o=ee.Today))}return a||(a=e.find(s=>Mt(t(s)))),a}function lo(e,t,n,r,a,o,s){const{ISOWeek:i,broadcastCalendar:u}=o,{addDays:c,addMonths:d,addWeeks:l,addYears:h,endOfBroadcastWeek:w,endOfISOWeek:D,endOfWeek:O,max:v,min:C,startOfBroadcastWeek:b,startOfISOWeek:g,startOfWeek:N}=s;let f={day:c,week:l,month:d,year:h,startOfWeek:S=>u?b(S,s):i?g(S):N(S),endOfWeek:S=>u?w(S):i?D(S):O(S)}[e](n,t==="after"?1:-1);return t==="before"&&r?f=v([r,f]):t==="after"&&a&&(f=C([a,f])),f}function Zt(e,t,n,r,a,o,s,i=0){if(i>365)return;const u=lo(e,t,n.date,r,a,o,s),c=!!(o.disabled&&ie(u,o.disabled,s)),d=!!(o.hidden&&ie(u,o.hidden,s)),l=u,h=new Bt(u,l,s);return!c&&!d?h:Zt(e,t,h,r,a,o,s,i+1)}function ho(e,t,n,r,a){const{autoFocus:o}=e,[s,i]=E.useState(),u=fo(t.days,n,r||(()=>!1),s),[c,d]=E.useState(o?u:void 0);return{isFocusTarget:O=>!!(u!=null&&u.isEqualTo(O)),setFocused:d,focused:c,blur:()=>{i(c),d(void 0)},moveFocus:(O,v)=>{if(!c)return;const C=Zt(O,v,c,t.navStart,t.navEnd,e,a);C&&(e.disableNavigation&&!t.days.some(g=>g.isEqualTo(C))||(t.goToDay(C),d(C)))}}}function mo(e,t){const{selected:n,required:r,onSelect:a}=e,[o,s]=Pe(n,a?n:void 0),i=a?n:o,{isSameDay:u}=t,c=w=>(i==null?void 0:i.some(D=>u(D,w)))??!1,{min:d,max:l}=e;return{selected:i,select:(w,D,O)=>{let v=[...i??[]];if(c(w)){if((i==null?void 0:i.length)===d||r&&(i==null?void 0:i.length)===1)return;v=i==null?void 0:i.filter(C=>!u(C,w))}else(i==null?void 0:i.length)===l?v=[w]:v=[...v,w];return a||s(v),a==null||a(v,w,D,O),v},isSelected:c}}function yo(e,t,n=0,r=0,a=!1,o=ne){const{from:s,to:i}=t||{},{isSameDay:u,isAfter:c,isBefore:d}=o;let l;if(!s&&!i)l={from:e,to:n>0?void 0:e};else if(s&&!i)u(s,e)?n===0?l={from:s,to:e}:a?l={from:s,to:void 0}:l=void 0:d(e,s)?l={from:e,to:s}:l={from:s,to:e};else if(s&&i)if(u(s,e)&&u(i,e))a?l={from:s,to:i}:l=void 0;else if(u(s,e))l={from:s,to:n>0?void 0:e};else if(u(i,e))l={from:e,to:n>0?void 0:e};else if(d(e,s))l={from:e,to:i};else if(c(e,s))l={from:s,to:e};else if(c(e,i))l={from:s,to:e};else throw new Error("Invalid range");if(l!=null&&l.from&&(l!=null&&l.to)){const h=o.differenceInCalendarDays(l.to,l.from);r>0&&h>r?l={from:e,to:void 0}:n>1&&h<n&&(l={from:e,to:void 0})}return l}function go(e,t,n=ne){const r=Array.isArray(t)?t:[t];let a=e.from;const o=n.differenceInCalendarDays(e.to,e.from),s=Math.min(o,6);for(let i=0;i<=s;i++){if(r.includes(a.getDay()))return!0;a=n.addDays(a,1)}return!1}function kt(e,t,n=ne){return se(e,t.from,!1,n)||se(e,t.to,!1,n)||se(t,e.from,!1,n)||se(t,e.to,!1,n)}function wo(e,t,n=ne){const r=Array.isArray(t)?t:[t];if(r.filter(i=>typeof i!="function").some(i=>typeof i=="boolean"?i:n.isDate(i)?se(e,i,!1,n):At(i,n)?i.some(u=>se(e,u,!1,n)):_e(i)?i.from&&i.to?kt(e,{from:i.from,to:i.to},n):!1:Ht(i)?go(e,i.dayOfWeek,n):Ke(i)?n.isAfter(i.before,i.after)?kt(e,{from:n.addDays(i.after,1),to:n.addDays(i.before,-1)},n):ie(e.from,i,n)||ie(e.to,i,n):Ze(i)||Je(i)?ie(e.from,i,n)||ie(e.to,i,n):!1))return!0;const s=r.filter(i=>typeof i=="function");if(s.length){let i=e.from;const u=n.differenceInCalendarDays(e.to,e.from);for(let c=0;c<=u;c++){if(s.some(d=>d(i)))return!0;i=n.addDays(i,1)}}return!1}function bo(e,t){const{disabled:n,excludeDisabled:r,resetOnSelect:a,selected:o,required:s,onSelect:i}=e,[u,c]=Pe(o,i?o:void 0),d=i?o:u;return{selected:d,select:(w,D,O)=>{const{min:v,max:C}=e;let b;if(w){const g=d==null?void 0:d.from,N=d==null?void 0:d.to,M=!!g&&!!N,f=!!g&&!!N&&t.isSameDay(g,N)&&t.isSameDay(w,g);a&&(M||!(d!=null&&d.from))?!s&&f?b=void 0:b={from:w,to:void 0}:b=yo(w,d,v,C,s,t)}return r&&n&&(b!=null&&b.from)&&b.to&&wo({from:b.from,to:b.to},n,t)&&(b.from=w,b.to=void 0),i||c(b),i==null||i(b,w,D,O),b},isSelected:w=>d&&se(d,w,!1,t)}}function Mo(e,t){const{selected:n,required:r,onSelect:a}=e,[o,s]=Pe(n,a?n:void 0),i=a?n:o,{isSameDay:u}=t;return{selected:i,select:(l,h,w)=>{let D=l;return!r&&i&&i&&u(l,i)&&(D=void 0),a||s(D),a==null||a(D,l,h,w),D},isSelected:l=>i?u(i,l):!1}}function ko(e,t){const n=Mo(e,t),r=mo(e,t),a=bo(e,t);switch(e.mode){case"single":return n;case"multiple":return r;case"range":return a;default:return}}function X(e,t){return e instanceof z&&e.timeZone===t?e:new z(e,t)}function le(e,t,n){return X(e,t)}function Dt(e,t,n){return typeof e=="boolean"||typeof e=="function"?e:e instanceof Date?le(e,t):Array.isArray(e)?e.map(r=>r instanceof Date?le(r,t):r):_e(e)?{...e,from:e.from?X(e.from,t):e.from,to:e.to?X(e.to,t):e.to}:Ke(e)?{before:le(e.before,t),after:le(e.after,t)}:Ze(e)?{after:le(e.after,t)}:Je(e)?{before:le(e.before,t)}:e}function Qe(e,t,n){return e&&(Array.isArray(e)?e.map(r=>Dt(r,t)):Dt(e,t))}function Do(e){var st;let t=e;const n=t.timeZone;if(n&&(t={...e,timeZone:n},t.today&&(t.today=X(t.today,n)),t.month&&(t.month=X(t.month,n)),t.defaultMonth&&(t.defaultMonth=X(t.defaultMonth,n)),t.startMonth&&(t.startMonth=X(t.startMonth,n)),t.endMonth&&(t.endMonth=X(t.endMonth,n)),t.mode==="single"&&t.selected?t.selected=X(t.selected,n):t.mode==="multiple"&&t.selected?t.selected=(st=t.selected)==null?void 0:st.map(k=>X(k,n)):t.mode==="range"&&t.selected&&(t.selected={from:t.selected.from?X(t.selected.from,n):t.selected.from,to:t.selected.to?X(t.selected.to,n):t.selected.to}),t.disabled!==void 0&&(t.disabled=Qe(t.disabled,n)),t.hidden!==void 0&&(t.hidden=Qe(t.hidden,n)),t.modifiers)){const k={};Object.keys(t.modifiers).forEach(x=>{var W;k[x]=Qe((W=t.modifiers)==null?void 0:W[x],n)}),t.modifiers=k}const{components:r,formatters:a,labels:o,dateLib:s,locale:i,classNames:u}=E.useMemo(()=>{const k={...Ft,...t.locale},x=t.broadcastCalendar?1:t.weekStartsOn,W=t.noonSafe&&t.timeZone?Ka(t.timeZone,{weekStartsOn:x,locale:k}):void 0,A=t.dateLib&&W?{...W,...t.dateLib}:t.dateLib??W,Y=new Q({locale:k,weekStartsOn:x,firstWeekContainsDate:t.firstWeekContainsDate,useAdditionalWeekYearTokens:t.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:t.useAdditionalDayOfYearTokens,timeZone:t.timeZone,numerals:t.numerals},A);return{dateLib:Y,components:_a(t.components),formatters:za(t.formatters),labels:$a(t.labels,Y.options),locale:k,classNames:{...Le(),...t.classNames}}},[t.locale,t.broadcastCalendar,t.weekStartsOn,t.firstWeekContainsDate,t.useAdditionalWeekYearTokens,t.useAdditionalDayOfYearTokens,t.timeZone,t.numerals,t.dateLib,t.noonSafe,t.components,t.formatters,t.labels,t.classNames]);t.today||(t={...t,today:s.today()});const{captionLayout:c,mode:d,navLayout:l,numberOfMonths:h=1,onDayBlur:w,onDayClick:D,onDayFocus:O,onDayKeyDown:v,onDayMouseEnter:C,onDayMouseLeave:b,onNextClick:g,onPrevClick:N,showWeekNumber:M,styles:f}=t,{formatCaption:S,formatDay:_,formatMonthDropdown:I,formatWeekNumber:B,formatWeekNumberHeader:j,formatWeekdayName:V,formatYearDropdown:G}=a,R=co(t,s),{days:de,months:ge,navStart:Ee,navEnd:Fe,previousMonth:U,nextMonth:K,goToMonth:re}=R,Be=Ya(de,t,Ee,Fe,s),{isSelected:we,select:be,selected:Ce}=ko(t,s)??{},{blur:et,focused:xe,isFocusTarget:Jt,moveFocus:tt,setFocused:pe}=ho(t,R,Be,we??(()=>!1),s),{labelDayButton:Lt,labelGridcell:en,labelGrid:tn,labelMonthDropdown:nn,labelNav:nt,labelPrevious:rn,labelNext:an,labelWeekday:on,labelWeekNumber:sn,labelWeekNumberHeader:un,labelYearDropdown:cn}=o,dn=E.useMemo(()=>Va(s,t.ISOWeek,t.broadcastCalendar,t.today),[s,t.ISOWeek,t.broadcastCalendar,t.today]),rt=d!==void 0||D!==void 0,Ie=E.useCallback(()=>{U&&(re(U),N==null||N(U))},[U,re,N]),He=E.useCallback(()=>{K&&(re(K),g==null||g(K))},[re,K,g]),fn=E.useCallback((k,x)=>W=>{W.preventDefault(),W.stopPropagation(),pe(k),!x.disabled&&(be==null||be(k.date,x,W),D==null||D(k.date,x,W))},[be,D,pe]),ln=E.useCallback((k,x)=>W=>{pe(k),O==null||O(k.date,x,W)},[O,pe]),hn=E.useCallback((k,x)=>W=>{et(),w==null||w(k.date,x,W)},[et,w]),mn=E.useCallback((k,x)=>W=>{const A={ArrowLeft:[W.shiftKey?"month":"day",t.dir==="rtl"?"after":"before"],ArrowRight:[W.shiftKey?"month":"day",t.dir==="rtl"?"before":"after"],ArrowDown:[W.shiftKey?"year":"week","after"],ArrowUp:[W.shiftKey?"year":"week","before"],PageUp:[W.shiftKey?"year":"month","before"],PageDown:[W.shiftKey?"year":"month","after"],Home:["startOfWeek","before"],End:["endOfWeek","after"]};if(A[W.key]){W.preventDefault(),W.stopPropagation();const[Y,L]=A[W.key];tt(Y,L)}v==null||v(k.date,x,W)},[tt,v,t.dir]),yn=E.useCallback((k,x)=>W=>{C==null||C(k.date,x,W)},[C]),gn=E.useCallback((k,x)=>W=>{b==null||b(k.date,x,W)},[b]),wn=E.useCallback((k,x)=>W=>{const A=Number(W.target.value),Y=s.setMonth(s.startOfMonth(k),A);re(s.addMonths(Y,-x))},[s,re]),bn=E.useCallback((k,x)=>W=>{const A=Number(W.target.value),Y=s.setYear(s.startOfMonth(k),A);re(s.addMonths(Y,-x))},[s,re]),{className:Mn,style:kn}=E.useMemo(()=>({className:[u[m.Root],t.className].filter(Boolean).join(" "),style:{...f==null?void 0:f[m.Root],...t.style}}),[u,t.className,t.style,f]),Dn=Pa(t),at=k=>{const x=f==null?void 0:f[m.Dropdown],W=f==null?void 0:f[k];if(!(!x&&!W))return{...x,...W}},ot=E.useRef(null);eo(ot,!!t.animate,{classNames:u,months:ge,focused:xe,dateLib:s});const vn={dayPickerProps:t,selected:Ce,select:be,isSelected:we,months:ge,nextMonth:K,previousMonth:U,goToMonth:re,getModifiers:Be,components:r,classNames:u,styles:f,labels:o,formatters:a};return y.createElement(It.Provider,{value:vn},y.createElement(r.Root,{rootRef:t.animate?ot:void 0,className:Mn,style:kn,dir:t.dir,id:t.id,lang:t.lang??i.code,nonce:t.nonce,title:t.title,role:t.role,"aria-label":t["aria-label"],"aria-labelledby":t["aria-labelledby"],...Dn},y.createElement(r.Months,{className:u[m.Months],style:f==null?void 0:f[m.Months]},!t.hideNavigation&&!l&&y.createElement(r.Nav,{"data-animated-nav":t.animate?"true":void 0,className:u[m.Nav],style:f==null?void 0:f[m.Nav],"aria-label":nt(),onPreviousClick:Ie,onNextClick:He,previousMonth:U,nextMonth:K}),ge.map((k,x)=>{const W=t.reverseMonths?ge.length-1-x:x;return y.createElement(r.Month,{"data-animated-month":t.animate?"true":void 0,className:u[m.Month],style:f==null?void 0:f[m.Month],key:x,displayIndex:x,calendarMonth:k},l==="around"&&!t.hideNavigation&&x===0&&y.createElement(r.PreviousMonthButton,{type:"button",className:u[m.PreviousMonthButton],style:f==null?void 0:f[m.PreviousMonthButton],tabIndex:U?void 0:-1,"aria-disabled":U?void 0:!0,"aria-label":rn(U),onClick:Ie,"data-animated-button":t.animate?"true":void 0},y.createElement(r.Chevron,{disabled:U?void 0:!0,className:u[m.Chevron],style:f==null?void 0:f[m.Chevron],orientation:t.dir==="rtl"?"right":"left"})),y.createElement(r.MonthCaption,{"data-animated-caption":t.animate?"true":void 0,className:u[m.MonthCaption],style:f==null?void 0:f[m.MonthCaption],calendarMonth:k,displayIndex:x},c!=null&&c.startsWith("dropdown")?y.createElement(r.DropdownNav,{className:u[m.Dropdowns],style:f==null?void 0:f[m.Dropdowns]},(()=>{const A=c==="dropdown"||c==="dropdown-months"?y.createElement(r.MonthsDropdown,{key:"month",className:u[m.MonthsDropdown],"aria-label":nn(),disabled:!!t.disableNavigation,onChange:wn(k.date,W),options:Qa(k.date,Ee,Fe,a,s),style:at(m.MonthsDropdown),value:s.getMonth(k.date)}):y.createElement("span",{key:"month"},I(k.date,s)),Y=c==="dropdown"||c==="dropdown-years"?y.createElement(r.YearsDropdown,{key:"year",className:u[m.YearsDropdown],"aria-label":cn(s.options),disabled:!!t.disableNavigation,onChange:bn(k.date,W),options:Ua(Ee,Fe,a,s,!!t.reverseYears),style:at(m.YearsDropdown),value:s.getYear(k.date)}):y.createElement("span",{key:"year"},G(k.date,s));return s.getMonthYearOrder()==="year-first"?[Y,A]:[A,Y]})(),y.createElement("span",{role:"status","aria-live":"polite",style:{border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"absolute",width:"1px",whiteSpace:"nowrap",wordWrap:"normal"}},S(k.date,s.options,s))):y.createElement(r.CaptionLabel,{className:u[m.CaptionLabel],style:f==null?void 0:f[m.CaptionLabel],role:"status","aria-live":"polite"},S(k.date,s.options,s))),l==="around"&&!t.hideNavigation&&x===h-1&&y.createElement(r.NextMonthButton,{type:"button",className:u[m.NextMonthButton],style:f==null?void 0:f[m.NextMonthButton],tabIndex:K?void 0:-1,"aria-disabled":K?void 0:!0,"aria-label":an(K),onClick:He,"data-animated-button":t.animate?"true":void 0},y.createElement(r.Chevron,{disabled:K?void 0:!0,className:u[m.Chevron],style:f==null?void 0:f[m.Chevron],orientation:t.dir==="rtl"?"left":"right"})),x===h-1&&l==="after"&&!t.hideNavigation&&y.createElement(r.Nav,{"data-animated-nav":t.animate?"true":void 0,className:u[m.Nav],style:f==null?void 0:f[m.Nav],"aria-label":nt(),onPreviousClick:Ie,onNextClick:He,previousMonth:U,nextMonth:K}),y.createElement(r.MonthGrid,{role:"grid","aria-multiselectable":d==="multiple"||d==="range","aria-label":tn(k.date,s.options,s)||void 0,className:u[m.MonthGrid],style:f==null?void 0:f[m.MonthGrid]},!t.hideWeekdays&&y.createElement(r.Weekdays,{"data-animated-weekdays":t.animate?"true":void 0,className:u[m.Weekdays],style:f==null?void 0:f[m.Weekdays]},M&&y.createElement(r.WeekNumberHeader,{"aria-label":un(s.options),className:u[m.WeekNumberHeader],style:f==null?void 0:f[m.WeekNumberHeader],scope:"col"},j()),dn.map(A=>y.createElement(r.Weekday,{"aria-label":on(A,s.options,s),className:u[m.Weekday],key:String(A),style:f==null?void 0:f[m.Weekday],scope:"col"},V(A,s.options,s)))),y.createElement(r.Weeks,{"data-animated-weeks":t.animate?"true":void 0,className:u[m.Weeks],style:f==null?void 0:f[m.Weeks]},k.weeks.map(A=>y.createElement(r.Week,{className:u[m.Week],key:A.weekNumber,style:f==null?void 0:f[m.Week],week:A},M&&y.createElement(r.WeekNumber,{week:A,style:f==null?void 0:f[m.WeekNumber],"aria-label":sn(A.weekNumber,{locale:i}),className:u[m.WeekNumber],scope:"row",role:"rowheader"},B(A.weekNumber,s)),A.days.map(Y=>{const{date:L}=Y,p=Be(Y);if(p[H.focused]=!p.hidden&&!!(xe!=null&&xe.isEqualTo(Y)),p[J.selected]=(we==null?void 0:we(L))||p.selected,_e(Ce)){const{from:Ae,to:qe}=Ce;p[J.range_start]=!!(Ae&&qe&&s.isSameDay(L,Ae)),p[J.range_end]=!!(Ae&&qe&&s.isSameDay(L,qe)),p[J.range_middle]=se(Ce,L,!0,s)}const On=Xa(p,f,t.modifiersStyles),Wn=Ta(p,u,t.modifiersClassNames),Sn=!rt&&!p.hidden?en(L,p,s.options,s):void 0;return y.createElement(r.Day,{key:`${Y.isoDate}_${Y.displayMonthId}`,day:Y,modifiers:p,className:Wn.join(" "),style:On,role:"gridcell","aria-selected":p.selected||void 0,"aria-label":Sn,"data-day":Y.isoDate,"data-month":Y.outside?Y.dateMonthId:void 0,"data-selected":p.selected||void 0,"data-disabled":p.disabled||void 0,"data-hidden":p.hidden||void 0,"data-outside":Y.outside||void 0,"data-focused":p.focused||void 0,"data-today":p.today||void 0},!p.hidden&&rt?y.createElement(r.DayButton,{className:u[m.DayButton],style:f==null?void 0:f[m.DayButton],type:"button",day:Y,modifiers:p,disabled:!p.focused&&p.disabled||void 0,"aria-disabled":p.focused&&p.disabled||void 0,tabIndex:Jt(Y)?0:-1,"aria-label":Lt(L,p,s.options,s),onClick:fn(Y,p),onBlur:hn(Y,p),onFocus:ln(Y,p),onKeyDown:mn(Y,p),onMouseEnter:yn(Y,p),onMouseLeave:gn(Y,p)},_(L,s.options,s)):!p.hidden&&_(Y.date,s.options,s))}))))))})),t.footer&&y.createElement(r.Footer,{className:u[m.Footer],style:f==null?void 0:f[m.Footer],role:"status","aria-live":"polite"},t.footer)))}function Wo({className:e,classNames:t,showOutsideDays:n=!0,captionLayout:r="label",buttonVariant:a="ghost",locale:o,formatters:s,components:i,...u}){const c=Le();return ae.jsx(Do,{showOutsideDays:n,className:T("group/calendar bg-background p-2 [--cell-radius:var(--radius-md)] [--cell-size:--spacing(7)] in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent",String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,e),captionLayout:r,locale:o,formatters:{formatMonthDropdown:d=>d.toLocaleString(o==null?void 0:o.code,{month:"short"}),...s},classNames:{root:T("w-fit",c.root),months:T("relative flex flex-col gap-4 md:flex-row",c.months),month:T("flex w-full flex-col gap-4",c.month),nav:T("absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1",c.nav),button_previous:T(it({variant:a}),"size-(--cell-size) p-0 select-none aria-disabled:opacity-50",c.button_previous),button_next:T(it({variant:a}),"size-(--cell-size) p-0 select-none aria-disabled:opacity-50",c.button_next),month_caption:T("flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)",c.month_caption),dropdowns:T("flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium",c.dropdowns),dropdown_root:T("relative rounded-(--cell-radius)",c.dropdown_root),dropdown:T("absolute inset-0 bg-popover opacity-0",c.dropdown),caption_label:T("font-medium select-none",r==="label"?"text-sm":"flex items-center gap-1 rounded-(--cell-radius) text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground",c.caption_label),month_grid:T("w-full border-collapse",c.month_grid),weekdays:T("flex",c.weekdays),weekday:T("flex-1 rounded-(--cell-radius) text-[0.8rem] font-normal text-muted-foreground select-none",c.weekday),week:T("mt-2 flex w-full",c.week),week_number_header:T("w-(--cell-size) select-none",c.week_number_header),week_number:T("text-[0.8rem] text-muted-foreground select-none",c.week_number),day:T("group/day relative aspect-square h-full w-full rounded-(--cell-radius) p-0 text-center select-none [&:last-child[data-selected=true]_button]:rounded-r-(--cell-radius)",u.showWeekNumber?"[&:nth-child(2)[data-selected=true]_button]:rounded-l-(--cell-radius)":"[&:first-child[data-selected=true]_button]:rounded-l-(--cell-radius)",c.day),range_start:T("relative isolate z-0 rounded-l-(--cell-radius) bg-muted after:absolute after:inset-y-0 after:right-0 after:w-4 after:bg-muted",c.range_start),range_middle:T("rounded-none",c.range_middle),range_end:T("relative isolate z-0 rounded-r-(--cell-radius) bg-muted after:absolute after:inset-y-0 after:left-0 after:w-4 after:bg-muted",c.range_end),today:T("rounded-(--cell-radius) bg-muted text-foreground data-[selected=true]:rounded-none",c.today),outside:T("text-muted-foreground aria-selected:text-muted-foreground",c.outside),disabled:T("text-muted-foreground opacity-50",c.disabled),hidden:T("invisible",c.hidden),...t},components:{Root:({className:d,rootRef:l,...h})=>ae.jsx("div",{"data-slot":"calendar",ref:l,className:T(d),...h}),Chevron:({className:d,orientation:l,...h})=>l==="left"?ae.jsx(Nn,{className:T("size-4",d),...h}):l==="right"?ae.jsx(Cn,{className:T("size-4",d),...h}):ae.jsx(xn,{className:T("size-4",d),...h}),DayButton:({...d})=>ae.jsx(vo,{locale:o,...d}),WeekNumber:({children:d,...l})=>ae.jsx("td",{...l,children:ae.jsx("div",{className:"flex size-(--cell-size) items-center justify-center text-center",children:d})}),...i},...u})}function vo({className:e,day:t,modifiers:n,locale:r,...a}){const o=Le(),s=E.useRef(null);return E.useEffect(()=>{var i;n.focused&&((i=s.current)==null||i.focus())},[n.focused]),ae.jsx(pn,{variant:"ghost",size:"icon","data-day":t.date.toLocaleDateString(r==null?void 0:r.code),"data-selected-single":n.selected&&!n.range_start&&!n.range_end&&!n.range_middle,"data-range-start":n.range_start,"data-range-end":n.range_end,"data-range-middle":n.range_middle,className:T("relative isolate z-10 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 border-0 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-[3px] group-data-[focused=true]/day:ring-ring/50 data-[range-end=true]:rounded-(--cell-radius) data-[range-end=true]:rounded-r-(--cell-radius) data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:rounded-none data-[range-middle=true]:bg-muted data-[range-middle=true]:text-foreground data-[range-start=true]:rounded-(--cell-radius) data-[range-start=true]:rounded-l-(--cell-radius) data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground dark:hover:text-foreground [&>span]:text-xs [&>span]:opacity-70",o.day,e),...a})}export{Wo as Calendar,vo as CalendarDayButton};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{j as r,c as d}from"./index-MB-jfQld.js";function c({className:a,size:t="default",...s}){return r.jsx("div",{"data-slot":"card","data-size":t,className:d("group/card flex flex-col gap-(--card-spacing) overflow-hidden rounded-xl bg-card py-(--card-spacing) text-sm text-card-foreground ring-1 ring-foreground/10 [--card-spacing:--spacing(4)] has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:[--card-spacing:--spacing(3)] data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl",a),...s})}function o({className:a,...t}){return r.jsx("div",{"data-slot":"card-header",className:d("group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-(--card-spacing) has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-(--card-spacing)",a),...t})}function i({className:a,...t}){return r.jsx("div",{"data-slot":"card-title",className:d("font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm",a),...t})}function n({className:a,...t}){return r.jsx("div",{"data-slot":"card-description",className:d("text-sm text-muted-foreground",a),...t})}function l({className:a,...t}){return r.jsx("div",{"data-slot":"card-content",className:d("px-(--card-spacing)",a),...t})}export{c as C,o as a,i as b,n as c,l as d};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{H as t,N as c,as as m,at as o}from"./echarts-runtime-D8kXn6ME.js";function S(e,a,n){a=t(a)&&{coordDimensions:a}||c({encodeDefine:e.getEncode()},a);var r=e.getSource(),s=m(r,a).dimensions,i=new o(s,e);return i.initData(r,n),i}export{S as c};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{j as o}from"./index-MB-jfQld.js";import{A as t}from"./auth-method-demo-DaOCuvsq.js";import e from"./wecom-sign-in-button-mIS1zGSU.js";import"./card-DuQBOS6A.js";import"./use-wecom-sign-in-C9j8wfCD.js";const i={name:"company-wecom",authType:"wecom",title:"Sign in via WeCom",options:{btnTooltip:"Use the account associated with your company directory."}};function c(){return o.jsx(t,{authType:"wecom",methodName:"WeCom",description:"Provide a WeCom sign-in button and support automatic login when the application is opened inside WeCom.",children:o.jsx(e,{authenticator:i,onSignIn:()=>{}})})}export{c as WecomAuthDemoPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{j as t}from"./index-MB-jfQld.js";import{A as o}from"./auth-method-demo-DaOCuvsq.js";import e from"./ldap-sign-in-form--6Gt3yGq.js";import"./card-DuQBOS6A.js";import"./use-authenticator-sign-in-CRGjzXju.js";const r={name:"company-ldap",authType:"LDAP",title:"Company directory",options:{autoSignup:!0}};function s(){return t.jsx(o,{authType:"LDAP",methodName:"LDAP directory",description:"Use the familiar account and password form while sending credentials through the selected LDAP authenticator.",children:t.jsx(e,{authenticator:r,onSignIn:()=>{}})})}export{s as LdapAuthDemoPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{j as t}from"./index-MB-jfQld.js";import{A as i}from"./auth-method-demo-DaOCuvsq.js";import n from"./dingtalk-sign-in-button-DSWsSruv.js";import"./card-DuQBOS6A.js";import"./use-dingtalk-sign-in-8WYzJ2jf.js";const o={name:"company-dingtalk",authType:"dingtalk",title:"Sign in via DingTalk"};function p(){return t.jsx(i,{authType:"dingtalk",methodName:"DingTalk",description:"Provide DingTalk OAuth login and support internal micro-app automatic login through DingTalk JSAPI.",children:t.jsx(n,{authenticator:o,onSignIn:()=>{}})})}export{p as DingtalkAuthDemoPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{j as t}from"./index-MB-jfQld.js";import{A as e}from"./auth-method-demo-DaOCuvsq.js";import r from"./saml-sign-in-button-BHL5a0JV.js";import"./card-DuQBOS6A.js";const o={name:"company-saml",authType:"SAML",title:"Company SAML"};function h(){return t.jsx(e,{authType:"SAML",methodName:"SAML",description:"Start an identity-provider redirect and return through the Starter's shared authentication callback.",children:t.jsx(r,{authenticator:o,onSignIn:()=>{}})})}export{h as SamlAuthDemoPage};
|