@carlonicora/nextjs-jsonapi 6.23.0 → 6.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{BlockNoteEditor-PPRML5CO.js → BlockNoteEditor-TNX77GCD.js} +28 -25
- package/dist/BlockNoteEditor-TNX77GCD.js.map +1 -0
- package/dist/{BlockNoteEditor-UO4ZRCUM.mjs → BlockNoteEditor-Z5LDF47Z.mjs} +13 -10
- package/dist/{BlockNoteEditor-UO4ZRCUM.mjs.map → BlockNoteEditor-Z5LDF47Z.mjs.map} +1 -1
- package/dist/{BlockNoteViewer-K2HBF3IP.js → BlockNoteViewer-6KQJODNF.js} +9 -7
- package/dist/BlockNoteViewer-6KQJODNF.js.map +1 -0
- package/dist/{BlockNoteViewer-2TJZ6JET.mjs → BlockNoteViewer-TQ452ZYW.mjs} +8 -6
- package/dist/{BlockNoteViewer-2TJZ6JET.mjs.map → BlockNoteViewer-TQ452ZYW.mjs.map} +1 -1
- package/dist/JsonApiRequest-OKNQZLS6.js +26 -0
- package/dist/{JsonApiRequest-KC6DOHKT.js.map → JsonApiRequest-OKNQZLS6.js.map} +1 -1
- package/dist/{JsonApiRequest-ADLBJ5RX.mjs → JsonApiRequest-WNPDS356.mjs} +2 -2
- package/dist/billing/index.js +504 -517
- package/dist/billing/index.js.map +1 -1
- package/dist/billing/index.mjs +20 -33
- package/dist/billing/index.mjs.map +1 -1
- package/dist/{chunk-VNUT2D27.mjs → chunk-2PWYG2WJ.mjs} +2 -2
- package/dist/{chunk-W4ML6D2X.mjs → chunk-3U7YJ73T.mjs} +7 -7
- package/dist/{chunk-BQ2WAG4K.js → chunk-3VNDFKT7.js} +19 -19
- package/dist/{chunk-BQ2WAG4K.js.map → chunk-3VNDFKT7.js.map} +1 -1
- package/dist/{chunk-BE6UMM5X.mjs → chunk-47HNJQ7U.mjs} +3 -3
- package/dist/chunk-5T2AQMQ2.mjs +90 -0
- package/dist/chunk-5T2AQMQ2.mjs.map +1 -0
- package/dist/{chunk-A5M3MORY.js → chunk-5WM72MLE.js} +3 -3
- package/dist/{chunk-A5M3MORY.js.map → chunk-5WM72MLE.js.map} +1 -1
- package/dist/{chunk-S7SPAC6X.mjs → chunk-73NKUBMP.mjs} +3 -3
- package/dist/chunk-743M4TIB.mjs +76 -0
- package/dist/chunk-743M4TIB.mjs.map +1 -0
- package/dist/{chunk-HN7L6RRW.js → chunk-CSBQAPHD.js} +903 -955
- package/dist/chunk-CSBQAPHD.js.map +1 -0
- package/dist/{chunk-YTDGYI62.mjs → chunk-DWPHHUMV.mjs} +3 -3
- package/dist/{chunk-53SD4YRF.js → chunk-FBHUUPRV.js} +5 -5
- package/dist/{chunk-53SD4YRF.js.map → chunk-FBHUUPRV.js.map} +1 -1
- package/dist/{chunk-T6G2F2BK.mjs → chunk-HJT7TXGG.mjs} +16 -68
- package/dist/chunk-HJT7TXGG.mjs.map +1 -0
- package/dist/chunk-HROKKUBQ.js +156 -0
- package/dist/chunk-HROKKUBQ.js.map +1 -0
- package/dist/{chunk-TMV7TL7O.mjs → chunk-JELEQV5T.mjs} +8 -6
- package/dist/{chunk-TMV7TL7O.mjs.map → chunk-JELEQV5T.mjs.map} +1 -1
- package/dist/{chunk-TNTCLVUR.js → chunk-JGL4P3DS.js} +17 -15
- package/dist/chunk-JGL4P3DS.js.map +1 -0
- package/dist/{chunk-7OIWOPM5.mjs → chunk-K7KLUYS7.mjs} +4 -3
- package/dist/chunk-K7KLUYS7.mjs.map +1 -0
- package/dist/{chunk-HP6DT6K3.mjs → chunk-KVYYPKRO.mjs} +311 -241
- package/dist/chunk-KVYYPKRO.mjs.map +1 -0
- package/dist/{chunk-RCOKQ3R4.js → chunk-LNO2JLU3.js} +2 -2
- package/dist/{chunk-RCOKQ3R4.js.map → chunk-LNO2JLU3.js.map} +1 -1
- package/dist/{chunk-R5722NLL.js → chunk-M6SNTMK6.js} +1388 -1318
- package/dist/chunk-M6SNTMK6.js.map +1 -0
- package/dist/{chunk-GMMDXINC.js → chunk-N3NQS7X6.js} +12 -12
- package/dist/{chunk-GMMDXINC.js.map → chunk-N3NQS7X6.js.map} +1 -1
- package/dist/chunk-NP3AFULU.js +76 -0
- package/dist/chunk-NP3AFULU.js.map +1 -0
- package/dist/{chunk-SO3YUCL6.js → chunk-OOM54Z5Z.js} +6 -5
- package/dist/chunk-OOM54Z5Z.js.map +1 -0
- package/dist/{chunk-YSE2Z4RB.js → chunk-PQQFOONG.js} +12 -12
- package/dist/{chunk-YSE2Z4RB.js.map → chunk-PQQFOONG.js.map} +1 -1
- package/dist/chunk-RW6XZGZG.mjs +156 -0
- package/dist/chunk-RW6XZGZG.mjs.map +1 -0
- package/dist/chunk-SYMI4IDW.js +90 -0
- package/dist/chunk-SYMI4IDW.js.map +1 -0
- package/dist/{chunk-N2BFT7KI.mjs → chunk-W7U6O3OE.mjs} +2 -71
- package/dist/chunk-W7U6O3OE.mjs.map +1 -0
- package/dist/{chunk-YMCL3JXZ.mjs → chunk-YPBIPE2B.mjs} +2 -2
- package/dist/{chunk-P7L6OFX5.js → chunk-Z6T2575A.js} +12 -81
- package/dist/chunk-Z6T2575A.js.map +1 -0
- package/dist/client/index.js +13 -10
- package/dist/client/index.js.map +1 -1
- package/dist/client/index.mjs +17 -14
- package/dist/components/forms/DatePickerPopover.d.ts.map +1 -1
- package/dist/components/forms/DateRangeSelector.d.ts.map +1 -1
- package/dist/components/forms/EditorSheet.d.ts +6 -1
- package/dist/components/forms/EditorSheet.d.ts.map +1 -1
- package/dist/components/forms/FormDate.d.ts.map +1 -1
- package/dist/components/forms/FormDateTime.d.ts.map +1 -1
- package/dist/components/forms/time-cycle.d.ts +14 -0
- package/dist/components/forms/time-cycle.d.ts.map +1 -0
- package/dist/components/index.js +11 -8
- package/dist/components/index.js.map +1 -1
- package/dist/components/index.mjs +10 -7
- package/dist/components/tables/cells/cell.date.d.ts.map +1 -1
- package/dist/components/tables/cells/cell.dateTime.d.ts.map +1 -1
- package/dist/contexts/DateLocaleContext.d.ts +56 -0
- package/dist/contexts/DateLocaleContext.d.ts.map +1 -0
- package/dist/contexts/index.d.ts +1 -0
- package/dist/contexts/index.d.ts.map +1 -1
- package/dist/contexts/index.js +24 -8
- package/dist/contexts/index.js.map +1 -1
- package/dist/contexts/index.mjs +23 -7
- package/dist/core/index.js +17 -6
- package/dist/core/index.js.map +1 -1
- package/dist/core/index.mjs +19 -8
- package/dist/date-locale/index.d.ts +2 -0
- package/dist/date-locale/index.d.ts.map +1 -0
- package/dist/date-locale/index.js +21 -0
- package/dist/date-locale/index.js.map +1 -0
- package/dist/date-locale/index.mjs +21 -0
- package/dist/email-automations/index.js +131 -123
- package/dist/email-automations/index.js.map +1 -1
- package/dist/email-automations/index.mjs +23 -15
- package/dist/email-automations/index.mjs.map +1 -1
- package/dist/features/account-deletion/components/AccountDeletionAdminTrigger.d.ts.map +1 -1
- package/dist/features/analytics/components/AnalyticsJourneyContainer.d.ts.map +1 -1
- package/dist/features/analytics/components/AnalyticsSessionsTable.d.ts.map +1 -1
- package/dist/features/analytics/index.js +154 -147
- package/dist/features/analytics/index.js.map +1 -1
- package/dist/features/analytics/index.mjs +32 -25
- package/dist/features/analytics/index.mjs.map +1 -1
- package/dist/features/analytics/server.js +11 -9
- package/dist/features/analytics/server.js.map +1 -1
- package/dist/features/analytics/server.mjs +9 -7
- package/dist/features/analytics/server.mjs.map +1 -1
- package/dist/features/billing/components/utils/date.d.ts +3 -3
- package/dist/features/billing/components/utils/format-options.d.ts +6 -4
- package/dist/features/billing/components/utils/format-options.d.ts.map +1 -1
- package/dist/features/billing/components/utils/useBillingFormatOptions.d.ts +5 -1
- package/dist/features/billing/components/utils/useBillingFormatOptions.d.ts.map +1 -1
- package/dist/features/billing/stripe-usage/components/details/UsageSummaryCard.d.ts.map +1 -1
- package/dist/features/billing/stripe-usage/components/lists/UsageHistoryTable.d.ts.map +1 -1
- package/dist/features/blog/components/admin/BlogTranslationStatus.d.ts.map +1 -1
- package/dist/features/blog/components/public/BlogPostMeta.d.ts.map +1 -1
- package/dist/features/blog/hooks/useBlogPostTableStructure.d.ts.map +1 -1
- package/dist/features/blog/index.js +168 -162
- package/dist/features/blog/index.js.map +1 -1
- package/dist/features/blog/index.mjs +25 -19
- package/dist/features/blog/index.mjs.map +1 -1
- package/dist/features/blog/server.js +29 -27
- package/dist/features/blog/server.js.map +1 -1
- package/dist/features/blog/server.mjs +8 -6
- package/dist/features/blog/server.mjs.map +1 -1
- package/dist/features/email-automation/hooks/useEmailAutomationEnrollmentTableStructure.d.ts.map +1 -1
- package/dist/features/handbook/components/parts/HandbookIndexStatus.d.ts.map +1 -1
- package/dist/features/help/components/HelpArticleBody.d.ts.map +1 -1
- package/dist/features/help/index.js +48 -43
- package/dist/features/help/index.js.map +1 -1
- package/dist/features/help/index.mjs +15 -10
- package/dist/features/help/index.mjs.map +1 -1
- package/dist/features/notification/components/notifications/Notification.d.ts +2 -1
- package/dist/features/notification/components/notifications/Notification.d.ts.map +1 -1
- package/dist/features/notification/contexts/NotificationContext.d.ts.map +1 -1
- package/dist/features/notification/hooks/useNotificationTableStructure.d.ts.map +1 -1
- package/dist/features/oauth/components/OAuthClientCard.d.ts.map +1 -1
- package/dist/features/oauth/components/OAuthClientDetail.d.ts.map +1 -1
- package/dist/features/tokenusage/index.js +133 -130
- package/dist/features/tokenusage/index.js.map +1 -1
- package/dist/features/tokenusage/index.mjs +10 -7
- package/dist/features/tokenusage/index.mjs.map +1 -1
- package/dist/features/tokenusage/lib/formatters.d.ts +6 -3
- package/dist/features/tokenusage/lib/formatters.d.ts.map +1 -1
- package/dist/index.js +19 -7
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +23 -11
- package/dist/local-transport-AT4TE264.js +15 -0
- package/dist/{local-transport-MJPOKPTU.js.map → local-transport-AT4TE264.js.map} +1 -1
- package/dist/{local-transport-RVD4FZGA.mjs → local-transport-KWEUZ4GX.mjs} +5 -5
- package/dist/offline/index.js +56 -54
- package/dist/offline/index.js.map +1 -1
- package/dist/offline/index.mjs +23 -21
- package/dist/offline/index.mjs.map +1 -1
- package/dist/{request-4AWGPIGH.mjs → request-6GAIWWTG.mjs} +2 -2
- package/dist/{request-H5FZBZA2.js → request-BWO4Y434.js} +3 -3
- package/dist/{request-H5FZBZA2.js.map → request-BWO4Y434.js.map} +1 -1
- package/dist/server/ServerSession.d.ts +2 -0
- package/dist/server/ServerSession.d.ts.map +1 -1
- package/dist/server/index.js +10 -8
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +9 -7
- package/dist/utils/date-formatter.d.ts +45 -4
- package/dist/utils/date-formatter.d.ts.map +1 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/write-through-KNRI5L4V.mjs +15 -0
- package/dist/write-through-KNRI5L4V.mjs.map +1 -0
- package/dist/write-through-MYHQ6GJU.js +15 -0
- package/dist/{write-through-HE2QSOVI.js.map → write-through-MYHQ6GJU.js.map} +1 -1
- package/messages/en.json +1 -0
- package/messages/it.json +1 -0
- package/package.json +6 -1
- package/src/components/forms/DatePickerPopover.tsx +5 -3
- package/src/components/forms/DateRangeSelector.tsx +9 -7
- package/src/components/forms/EditorSheet.tsx +8 -0
- package/src/components/forms/FormDate.tsx +5 -3
- package/src/components/forms/FormDateTime.tsx +75 -39
- package/src/components/forms/__tests__/EditorSheet.spec.tsx +30 -0
- package/src/components/forms/__tests__/time-cycle.spec.ts +37 -0
- package/src/components/forms/time-cycle.ts +27 -0
- package/src/components/tables/cells/cell.date.tsx +3 -5
- package/src/components/tables/cells/cell.dateTime.tsx +3 -7
- package/src/contexts/DateLocaleContext.tsx +106 -0
- package/src/contexts/__tests__/DateLocaleContext.spec.tsx +175 -0
- package/src/contexts/index.ts +1 -0
- package/src/date-locale/index.ts +12 -0
- package/src/features/account-deletion/components/AccountDeletionAdminTrigger.tsx +3 -4
- package/src/features/analytics/components/AnalyticsJourneyContainer.tsx +8 -8
- package/src/features/analytics/components/AnalyticsSessionsTable.tsx +4 -6
- package/src/features/auth/components/two-factor/PasskeyList.tsx +3 -3
- package/src/features/auth/components/two-factor/TotpAuthenticatorList.tsx +3 -3
- package/src/features/billing/components/utils/__tests__/billing-formatters.spec.ts +14 -6
- package/src/features/billing/components/utils/date.ts +5 -5
- package/src/features/billing/components/utils/format-options.ts +6 -4
- package/src/features/billing/components/utils/useBillingFormatOptions.ts +8 -2
- package/src/features/billing/stripe-usage/components/details/UsageSummaryCard.tsx +4 -12
- package/src/features/billing/stripe-usage/components/lists/UsageHistoryTable.tsx +4 -17
- package/src/features/blog/components/admin/BlogTranslationStatus.tsx +3 -2
- package/src/features/blog/components/public/BlogPostMeta.tsx +5 -4
- package/src/features/blog/components/public/__tests__/BlogList.spec.tsx +1 -2
- package/src/features/blog/components/public/__tests__/BlogPostView.spec.tsx +2 -3
- package/src/features/blog/hooks/useBlogPostTableStructure.tsx +4 -8
- package/src/features/email-automation/hooks/useEmailAutomationEnrollmentTableStructure.tsx +11 -5
- package/src/features/email-blast/components/containers/EmailBlastContainer.tsx +3 -3
- package/src/features/email-blast/hooks/useEmailBlastTableStructure.tsx +4 -4
- package/src/features/handbook/components/parts/HandbookIndexStatus.tsx +4 -3
- package/src/features/help/components/HelpArticleBody.tsx +4 -3
- package/src/features/notification/components/notifications/Notification.tsx +38 -7
- package/src/features/notification/contexts/NotificationContext.tsx +6 -3
- package/src/features/notification/hooks/useNotificationTableStructure.tsx +6 -5
- package/src/features/oauth/components/OAuthClientCard.tsx +8 -5
- package/src/features/oauth/components/OAuthClientDetail.tsx +3 -6
- package/src/features/tokenusage/lib/__tests__/formatters.spec.ts +19 -0
- package/src/features/tokenusage/lib/formatters.ts +11 -6
- package/src/features/waitlist/hooks/useWaitlistTableStructure.tsx +5 -5
- package/src/server/ServerSession.ts +3 -0
- package/src/server/__tests__/ServerSession.read.spec.ts +18 -1
- package/src/utils/__tests__/date-formatter.spec.ts +134 -10
- package/src/utils/date-formatter.ts +200 -44
- package/src/utils/index.ts +11 -1
- package/dist/BlockNoteEditor-PPRML5CO.js.map +0 -1
- package/dist/BlockNoteViewer-K2HBF3IP.js.map +0 -1
- package/dist/JsonApiRequest-KC6DOHKT.js +0 -26
- package/dist/chunk-7OIWOPM5.mjs.map +0 -1
- package/dist/chunk-HN7L6RRW.js.map +0 -1
- package/dist/chunk-HP6DT6K3.mjs.map +0 -1
- package/dist/chunk-N2BFT7KI.mjs.map +0 -1
- package/dist/chunk-P7L6OFX5.js.map +0 -1
- package/dist/chunk-R5722NLL.js.map +0 -1
- package/dist/chunk-SO3YUCL6.js.map +0 -1
- package/dist/chunk-T6G2F2BK.mjs.map +0 -1
- package/dist/chunk-TNTCLVUR.js.map +0 -1
- package/dist/local-transport-MJPOKPTU.js +0 -15
- package/dist/write-through-7I3LA2WN.mjs +0 -15
- package/dist/write-through-HE2QSOVI.js +0 -15
- /package/dist/{JsonApiRequest-ADLBJ5RX.mjs.map → JsonApiRequest-WNPDS356.mjs.map} +0 -0
- /package/dist/{chunk-VNUT2D27.mjs.map → chunk-2PWYG2WJ.mjs.map} +0 -0
- /package/dist/{chunk-W4ML6D2X.mjs.map → chunk-3U7YJ73T.mjs.map} +0 -0
- /package/dist/{chunk-BE6UMM5X.mjs.map → chunk-47HNJQ7U.mjs.map} +0 -0
- /package/dist/{chunk-S7SPAC6X.mjs.map → chunk-73NKUBMP.mjs.map} +0 -0
- /package/dist/{chunk-YTDGYI62.mjs.map → chunk-DWPHHUMV.mjs.map} +0 -0
- /package/dist/{chunk-YMCL3JXZ.mjs.map → chunk-YPBIPE2B.mjs.map} +0 -0
- /package/dist/{local-transport-RVD4FZGA.mjs.map → date-locale/index.mjs.map} +0 -0
- /package/dist/{request-4AWGPIGH.mjs.map → local-transport-KWEUZ4GX.mjs.map} +0 -0
- /package/dist/{write-through-7I3LA2WN.mjs.map → request-6GAIWWTG.mjs.map} +0 -0
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
import {
|
|
2
|
+
DateLocaleSourceProvider,
|
|
3
|
+
mapThenable,
|
|
4
|
+
useDateFormatter,
|
|
5
|
+
useDateLocale,
|
|
6
|
+
useDateLocaleSource,
|
|
7
|
+
useMountedNow
|
|
8
|
+
} from "./chunk-5T2AQMQ2.mjs";
|
|
1
9
|
import {
|
|
2
10
|
JsonApiContext
|
|
3
11
|
} from "./chunk-VOXD3ZLY.mjs";
|
|
@@ -19,7 +27,7 @@ import {
|
|
|
19
27
|
isReferralEnabled,
|
|
20
28
|
isRegistrationAllowed,
|
|
21
29
|
useWaitlistText
|
|
22
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-JELEQV5T.mjs";
|
|
23
31
|
import {
|
|
24
32
|
getRoleId,
|
|
25
33
|
isRolesConfigured
|
|
@@ -65,10 +73,8 @@ import {
|
|
|
65
73
|
cn,
|
|
66
74
|
consumeAccountDeletionCancelled,
|
|
67
75
|
couponPlacesLeft,
|
|
68
|
-
dateFormatLocale,
|
|
69
76
|
formatCouponDiscount,
|
|
70
77
|
formatCurrency,
|
|
71
|
-
formatDate,
|
|
72
78
|
formatInterval,
|
|
73
79
|
getIconByModule,
|
|
74
80
|
getInitials,
|
|
@@ -96,7 +102,11 @@ import {
|
|
|
96
102
|
useIsMobile,
|
|
97
103
|
validateItalianTaxCode,
|
|
98
104
|
validatePartitaIva
|
|
99
|
-
} from "./chunk-
|
|
105
|
+
} from "./chunk-HJT7TXGG.mjs";
|
|
106
|
+
import {
|
|
107
|
+
dateFormatLocale,
|
|
108
|
+
formatDate
|
|
109
|
+
} from "./chunk-RW6XZGZG.mjs";
|
|
100
110
|
import {
|
|
101
111
|
useOfflineState
|
|
102
112
|
} from "./chunk-OY65RYD3.mjs";
|
|
@@ -104,22 +114,24 @@ import {
|
|
|
104
114
|
EndpointCreator,
|
|
105
115
|
ModuleRegistry,
|
|
106
116
|
Modules,
|
|
107
|
-
RehydrationFactory
|
|
108
|
-
|
|
109
|
-
useI18nDateFnsLocale,
|
|
110
|
-
useI18nLocale,
|
|
111
|
-
useI18nRouter,
|
|
112
|
-
useI18nTranslations
|
|
113
|
-
} from "./chunk-N2BFT7KI.mjs";
|
|
117
|
+
RehydrationFactory
|
|
118
|
+
} from "./chunk-W7U6O3OE.mjs";
|
|
114
119
|
import {
|
|
115
120
|
CURRENT_USER_STORAGE_KEY
|
|
116
|
-
} from "./chunk-
|
|
121
|
+
} from "./chunk-47HNJQ7U.mjs";
|
|
117
122
|
import {
|
|
118
123
|
isOfflineConfigured
|
|
119
124
|
} from "./chunk-4ZJIUTIV.mjs";
|
|
120
125
|
import {
|
|
121
126
|
ENV
|
|
122
|
-
} from "./chunk-
|
|
127
|
+
} from "./chunk-YPBIPE2B.mjs";
|
|
128
|
+
import {
|
|
129
|
+
getI18nLink,
|
|
130
|
+
useI18nDateFnsLocale,
|
|
131
|
+
useI18nLocale,
|
|
132
|
+
useI18nRouter,
|
|
133
|
+
useI18nTranslations
|
|
134
|
+
} from "./chunk-743M4TIB.mjs";
|
|
123
135
|
import {
|
|
124
136
|
__name
|
|
125
137
|
} from "./chunk-PAWJFY3S.mjs";
|
|
@@ -3779,16 +3791,6 @@ __name(TooltipContent, "TooltipContent");
|
|
|
3779
3791
|
|
|
3780
3792
|
// src/shadcnui/ui/sidebar.tsx
|
|
3781
3793
|
import { PanelLeftIcon } from "lucide-react";
|
|
3782
|
-
|
|
3783
|
-
// src/utils/map-thenable.ts
|
|
3784
|
-
function mapThenable(thenable, map) {
|
|
3785
|
-
return new Promise((resolve, reject) => {
|
|
3786
|
-
thenable.then((value) => resolve(map(value)), reject);
|
|
3787
|
-
});
|
|
3788
|
-
}
|
|
3789
|
-
__name(mapThenable, "mapThenable");
|
|
3790
|
-
|
|
3791
|
-
// src/shadcnui/ui/sidebar.tsx
|
|
3792
3794
|
import { jsx as jsx40, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
3793
3795
|
var SIDEBAR_COOKIE_NAME = "sidebar_state";
|
|
3794
3796
|
var SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;
|
|
@@ -6765,7 +6767,7 @@ __name(useHeaderLogo, "useHeaderLogo");
|
|
|
6765
6767
|
|
|
6766
6768
|
// src/components/navigations/Breadcrumb.tsx
|
|
6767
6769
|
import { useTranslations as useTranslations57 } from "next-intl";
|
|
6768
|
-
import { Fragment as
|
|
6770
|
+
import { Fragment as Fragment23, useState as useState49 } from "react";
|
|
6769
6771
|
import { ChevronDownIcon as ChevronDownIcon8 } from "lucide-react";
|
|
6770
6772
|
|
|
6771
6773
|
// src/hooks/TableGeneratorRegistry.ts
|
|
@@ -8205,7 +8207,7 @@ function matchesConfirmation(status, email, value) {
|
|
|
8205
8207
|
__name(matchesConfirmation, "matchesConfirmation");
|
|
8206
8208
|
function AccountDeletionAdminTriggerInternal({ user }) {
|
|
8207
8209
|
const t = useTranslations3();
|
|
8208
|
-
const
|
|
8210
|
+
const dates = useDateFormatter();
|
|
8209
8211
|
const [status, setStatus] = useState12();
|
|
8210
8212
|
const [open, setOpen] = useState12(false);
|
|
8211
8213
|
const [confirmation, setConfirmation] = useState12("");
|
|
@@ -8222,7 +8224,7 @@ function AccountDeletionAdminTriggerInternal({ user }) {
|
|
|
8222
8224
|
};
|
|
8223
8225
|
}, [user.id]);
|
|
8224
8226
|
if (!status) return null;
|
|
8225
|
-
const formatDate3 = /* @__PURE__ */ __name((date) =>
|
|
8227
|
+
const formatDate3 = /* @__PURE__ */ __name((date) => dates.format(date, "dateLong"), "formatDate");
|
|
8226
8228
|
if (status.scheduledAt) {
|
|
8227
8229
|
return /* @__PURE__ */ jsx63("span", { className: "text-destructive text-xs font-medium", children: t("accountDeletion.admin.pending", { date: formatDate3(status.scheduledAt) }) });
|
|
8228
8230
|
}
|
|
@@ -9742,8 +9744,9 @@ var DatePickerPopover = /* @__PURE__ */ __name(({
|
|
|
9742
9744
|
align = "start",
|
|
9743
9745
|
className
|
|
9744
9746
|
}) => {
|
|
9745
|
-
const locale =
|
|
9747
|
+
const { locale } = useDateLocale();
|
|
9746
9748
|
const dateFnsLocale = useI18nDateFnsLocale();
|
|
9749
|
+
const weekStartsOn = dateFnsLocale?.options?.weekStartsOn ?? 1;
|
|
9747
9750
|
const [isOpen, setIsOpen] = useState22(false);
|
|
9748
9751
|
const [displayMonth, setDisplayMonth] = useState22(() => value || /* @__PURE__ */ new Date());
|
|
9749
9752
|
const dateFormatter = useMemo12(
|
|
@@ -9881,7 +9884,7 @@ var DatePickerPopover = /* @__PURE__ */ __name(({
|
|
|
9881
9884
|
onSelect: handleCalendarSelect,
|
|
9882
9885
|
disabled: (date) => minDate && date < minDate ? true : false,
|
|
9883
9886
|
locale: dateFnsLocale,
|
|
9884
|
-
weekStartsOn
|
|
9887
|
+
weekStartsOn,
|
|
9885
9888
|
month: displayMonth,
|
|
9886
9889
|
onMonthChange: setDisplayMonth
|
|
9887
9890
|
}
|
|
@@ -9891,7 +9894,6 @@ var DatePickerPopover = /* @__PURE__ */ __name(({
|
|
|
9891
9894
|
}, "DatePickerPopover");
|
|
9892
9895
|
|
|
9893
9896
|
// src/components/forms/DateRangeSelector.tsx
|
|
9894
|
-
import { format } from "date-fns";
|
|
9895
9897
|
import { CalendarIcon as CalendarIcon2 } from "lucide-react";
|
|
9896
9898
|
import { useTranslations as useTranslations18 } from "next-intl";
|
|
9897
9899
|
import { useEffect as useEffect17, useState as useState23 } from "react";
|
|
@@ -9905,7 +9907,9 @@ function nextDateRange(params) {
|
|
|
9905
9907
|
__name(nextDateRange, "nextDateRange");
|
|
9906
9908
|
function DateRangeSelector({ onDateChange, avoidSettingDates, showPreviousMonth }) {
|
|
9907
9909
|
const t = useTranslations18();
|
|
9910
|
+
const { format } = useDateFormatter();
|
|
9908
9911
|
const dateFnsLocale = useI18nDateFnsLocale();
|
|
9912
|
+
const weekStartsOn = dateFnsLocale?.options?.weekStartsOn ?? 1;
|
|
9909
9913
|
const [date, setDate] = useState23(
|
|
9910
9914
|
avoidSettingDates ? void 0 : {
|
|
9911
9915
|
from: new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth(), 1),
|
|
@@ -9938,11 +9942,10 @@ function DateRangeSelector({ onDateChange, avoidSettingDates, showPreviousMonth
|
|
|
9938
9942
|
children: [
|
|
9939
9943
|
/* @__PURE__ */ jsx87(CalendarIcon2, {}),
|
|
9940
9944
|
date?.from ? date.to ? /* @__PURE__ */ jsxs48(Fragment10, { children: [
|
|
9941
|
-
format(date.from, "
|
|
9942
|
-
" -",
|
|
9943
|
-
|
|
9944
|
-
|
|
9945
|
-
] }) : format(date.from, "d MMM yyyy", { locale: dateFnsLocale }) : /* @__PURE__ */ jsx87("span", { children: t("ui.labels.pick_a_date") })
|
|
9945
|
+
format(date.from, "dateMedium"),
|
|
9946
|
+
" - ",
|
|
9947
|
+
format(date.to, "dateMedium")
|
|
9948
|
+
] }) : format(date.from, "dateMedium") : /* @__PURE__ */ jsx87("span", { children: t("ui.labels.pick_a_date") })
|
|
9946
9949
|
]
|
|
9947
9950
|
}
|
|
9948
9951
|
) });
|
|
@@ -9962,11 +9965,10 @@ function DateRangeSelector({ onDateChange, avoidSettingDates, showPreviousMonth
|
|
|
9962
9965
|
children: [
|
|
9963
9966
|
/* @__PURE__ */ jsx87(CalendarIcon2, {}),
|
|
9964
9967
|
date?.from ? date.to ? /* @__PURE__ */ jsxs48(Fragment10, { children: [
|
|
9965
|
-
format(date.from, "
|
|
9966
|
-
" -",
|
|
9967
|
-
|
|
9968
|
-
|
|
9969
|
-
] }) : format(date.from, "d MMM yyyy", { locale: dateFnsLocale }) : /* @__PURE__ */ jsx87("span", { children: t("ui.labels.pick_a_date") })
|
|
9968
|
+
format(date.from, "dateMedium"),
|
|
9969
|
+
" - ",
|
|
9970
|
+
format(date.to, "dateMedium")
|
|
9971
|
+
] }) : format(date.from, "dateMedium") : /* @__PURE__ */ jsx87("span", { children: t("ui.labels.pick_a_date") })
|
|
9970
9972
|
]
|
|
9971
9973
|
}
|
|
9972
9974
|
),
|
|
@@ -9978,7 +9980,9 @@ function DateRangeSelector({ onDateChange, avoidSettingDates, showPreviousMonth
|
|
|
9978
9980
|
defaultMonth: date?.from ?? (showPreviousMonth ? new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth() - 1, 1) : void 0),
|
|
9979
9981
|
selected: date,
|
|
9980
9982
|
onSelect: handleSelect,
|
|
9981
|
-
numberOfMonths: 2
|
|
9983
|
+
numberOfMonths: 2,
|
|
9984
|
+
locale: dateFnsLocale,
|
|
9985
|
+
weekStartsOn
|
|
9982
9986
|
}
|
|
9983
9987
|
),
|
|
9984
9988
|
/* @__PURE__ */ jsx87(
|
|
@@ -10149,6 +10153,7 @@ function EditorSheet({
|
|
|
10149
10153
|
form,
|
|
10150
10154
|
onSubmit,
|
|
10151
10155
|
onBeforeSubmit,
|
|
10156
|
+
onSubmitError,
|
|
10152
10157
|
onReset,
|
|
10153
10158
|
isFormDirty: isFormDirtyProp,
|
|
10154
10159
|
entityType,
|
|
@@ -10224,6 +10229,7 @@ function EditorSheet({
|
|
|
10224
10229
|
}
|
|
10225
10230
|
}
|
|
10226
10231
|
} catch (error) {
|
|
10232
|
+
if (onSubmitError?.(error)) return;
|
|
10227
10233
|
errorToast({
|
|
10228
10234
|
title: isEdit ? t("generic.errors.update") : t("generic.errors.create"),
|
|
10229
10235
|
error
|
|
@@ -10233,6 +10239,7 @@ function EditorSheet({
|
|
|
10233
10239
|
[
|
|
10234
10240
|
onSubmit,
|
|
10235
10241
|
onBeforeSubmit,
|
|
10242
|
+
onSubmitError,
|
|
10236
10243
|
setOpen,
|
|
10237
10244
|
onSuccess,
|
|
10238
10245
|
onSaved,
|
|
@@ -10868,7 +10875,7 @@ import { useRef as useRef18 } from "react";
|
|
|
10868
10875
|
import dynamic from "next/dynamic";
|
|
10869
10876
|
import React18 from "react";
|
|
10870
10877
|
import { jsx as jsx91 } from "react/jsx-runtime";
|
|
10871
|
-
var BlockNoteEditor = dynamic(() => import("./BlockNoteEditor-
|
|
10878
|
+
var BlockNoteEditor = dynamic(() => import("./BlockNoteEditor-Z5LDF47Z.mjs"), {
|
|
10872
10879
|
ssr: false
|
|
10873
10880
|
});
|
|
10874
10881
|
var BlockNoteEditorContainer = React18.memo(/* @__PURE__ */ __name(function EditorContainer(props) {
|
|
@@ -11026,8 +11033,9 @@ function FormDate({
|
|
|
11026
11033
|
futureYears
|
|
11027
11034
|
}) {
|
|
11028
11035
|
const t = useI18nTranslations();
|
|
11029
|
-
const locale =
|
|
11036
|
+
const { locale } = useDateLocale();
|
|
11030
11037
|
const dateFnsLocale = useI18nDateFnsLocale();
|
|
11038
|
+
const weekStartsOn = dateFnsLocale?.options?.weekStartsOn ?? 1;
|
|
11031
11039
|
const [open, setOpen] = useState27(false);
|
|
11032
11040
|
const [displayMonth, setDisplayMonth] = useState27(() => {
|
|
11033
11041
|
const currentValue = form.getValues(id);
|
|
@@ -11122,7 +11130,7 @@ function FormDate({
|
|
|
11122
11130
|
},
|
|
11123
11131
|
disabled: (date) => minDate && date < minDate ? true : false,
|
|
11124
11132
|
locale: dateFnsLocale,
|
|
11125
|
-
weekStartsOn
|
|
11133
|
+
weekStartsOn,
|
|
11126
11134
|
month: displayMonth,
|
|
11127
11135
|
onMonthChange: setDisplayMonth,
|
|
11128
11136
|
startMonth: new Date(1900, 0),
|
|
@@ -11153,6 +11161,33 @@ __name(FormDate, "FormDate");
|
|
|
11153
11161
|
// src/components/forms/FormDateTime.tsx
|
|
11154
11162
|
import { Calendar as CalendarIcon4, CircleXIcon as CircleXIcon3 } from "lucide-react";
|
|
11155
11163
|
import { useMemo as useMemo15, useState as useState28 } from "react";
|
|
11164
|
+
|
|
11165
|
+
// src/components/forms/time-cycle.ts
|
|
11166
|
+
function to24Hour(hour12, period) {
|
|
11167
|
+
const base = hour12 % 12;
|
|
11168
|
+
return period === "pm" ? base + 12 : base;
|
|
11169
|
+
}
|
|
11170
|
+
__name(to24Hour, "to24Hour");
|
|
11171
|
+
function from24Hour(hour24) {
|
|
11172
|
+
const period = hour24 >= 12 ? "pm" : "am";
|
|
11173
|
+
const hour12 = hour24 % 12 === 0 ? 12 : hour24 % 12;
|
|
11174
|
+
return { hour12, period };
|
|
11175
|
+
}
|
|
11176
|
+
__name(from24Hour, "from24Hour");
|
|
11177
|
+
function dayPeriodOf(formatter, date) {
|
|
11178
|
+
return formatter.formatToParts(date).find((part) => part.type === "dayPeriod")?.value ?? "";
|
|
11179
|
+
}
|
|
11180
|
+
__name(dayPeriodOf, "dayPeriodOf");
|
|
11181
|
+
function dayPeriodLabels(locale) {
|
|
11182
|
+
const formatter = new Intl.DateTimeFormat(locale, { hour: "numeric", hourCycle: "h12" });
|
|
11183
|
+
return {
|
|
11184
|
+
am: dayPeriodOf(formatter, new Date(2e3, 0, 1, 1, 0)),
|
|
11185
|
+
pm: dayPeriodOf(formatter, new Date(2e3, 0, 1, 13, 0))
|
|
11186
|
+
};
|
|
11187
|
+
}
|
|
11188
|
+
__name(dayPeriodLabels, "dayPeriodLabels");
|
|
11189
|
+
|
|
11190
|
+
// src/components/forms/FormDateTime.tsx
|
|
11156
11191
|
import { jsx as jsx95, jsxs as jsxs54 } from "react/jsx-runtime";
|
|
11157
11192
|
function snapToFiveMinutes(date) {
|
|
11158
11193
|
const snapped = new Date(date);
|
|
@@ -11176,24 +11211,15 @@ function FormDateTime({
|
|
|
11176
11211
|
}) {
|
|
11177
11212
|
const [open, setOpen] = useState28(false);
|
|
11178
11213
|
const t = useI18nTranslations();
|
|
11179
|
-
const locale =
|
|
11214
|
+
const { format, locale, twelveHourClock } = useDateFormatter();
|
|
11180
11215
|
const dateFnsLocale = useI18nDateFnsLocale();
|
|
11216
|
+
const weekStartsOn = dateFnsLocale?.options?.weekStartsOn ?? 1;
|
|
11181
11217
|
const [displayMonth, setDisplayMonth] = useState28(() => {
|
|
11182
11218
|
const currentValue = form.getValues(id);
|
|
11183
11219
|
return currentValue || defaultMonth || reference?.date || /* @__PURE__ */ new Date();
|
|
11184
11220
|
});
|
|
11185
|
-
const
|
|
11186
|
-
|
|
11187
|
-
year: "numeric",
|
|
11188
|
-
month: "long",
|
|
11189
|
-
day: "numeric",
|
|
11190
|
-
hour: "2-digit",
|
|
11191
|
-
minute: "2-digit",
|
|
11192
|
-
hour12: false
|
|
11193
|
-
}),
|
|
11194
|
-
[locale]
|
|
11195
|
-
);
|
|
11196
|
-
const formatDateTime = /* @__PURE__ */ __name((date) => dateTimeFormatter.format(date), "formatDateTime");
|
|
11221
|
+
const formatDateTime = /* @__PURE__ */ __name((date) => format(date, "dateTimeLong"), "formatDateTime");
|
|
11222
|
+
const periodLabels = useMemo15(() => dayPeriodLabels(locale), [locale]);
|
|
11197
11223
|
const initialTime = reference ? snapToFiveMinutes(reference.date) : /* @__PURE__ */ new Date();
|
|
11198
11224
|
const [selectedHours, setSelectedHours] = useState28(initialTime.getHours());
|
|
11199
11225
|
const [selectedMinutes, setSelectedMinutes] = useState28(roundToNearestFiveMinutes(initialTime.getMinutes()));
|
|
@@ -11205,13 +11231,23 @@ function FormDateTime({
|
|
|
11205
11231
|
reference: "rounded-(--cell-radius) ring-1 ring-primary ring-offset-1 ring-offset-background",
|
|
11206
11232
|
marked: "[&>button]:underline [&>button]:decoration-2 [&>button]:underline-offset-4"
|
|
11207
11233
|
};
|
|
11208
|
-
const hoursOptions = Array.from({ length:
|
|
11234
|
+
const hoursOptions = twelveHourClock ? Array.from({ length: 12 }, (_, i) => {
|
|
11235
|
+
const hour = i + 1;
|
|
11236
|
+
return {
|
|
11237
|
+
value: hour,
|
|
11238
|
+
label: hour.toString()
|
|
11239
|
+
};
|
|
11240
|
+
}) : Array.from({ length: 24 }, (_, i) => {
|
|
11209
11241
|
const hour = i;
|
|
11210
11242
|
return {
|
|
11211
11243
|
value: hour,
|
|
11212
11244
|
label: hour.toString().padStart(2, "0")
|
|
11213
11245
|
};
|
|
11214
11246
|
});
|
|
11247
|
+
const periodOptions = [
|
|
11248
|
+
{ value: "am", label: periodLabels.am },
|
|
11249
|
+
{ value: "pm", label: periodLabels.pm }
|
|
11250
|
+
];
|
|
11215
11251
|
const minutesOptions = Array.from({ length: 12 }, (_, i) => {
|
|
11216
11252
|
const minute = i * 5;
|
|
11217
11253
|
return {
|
|
@@ -11221,6 +11257,7 @@ function FormDateTime({
|
|
|
11221
11257
|
});
|
|
11222
11258
|
const hoursItems = Object.fromEntries(hoursOptions.map((option) => [String(option.value), option.label]));
|
|
11223
11259
|
const minutesItems = Object.fromEntries(minutesOptions.map((option) => [String(option.value), option.label]));
|
|
11260
|
+
const periodItems = Object.fromEntries(periodOptions.map((option) => [option.value, option.label]));
|
|
11224
11261
|
function roundToNearestFiveMinutes(minutes) {
|
|
11225
11262
|
return Math.round(minutes / 5) * 5 % 60;
|
|
11226
11263
|
}
|
|
@@ -11234,6 +11271,8 @@ function FormDateTime({
|
|
|
11234
11271
|
setSelectedHours(referenceDate.getHours());
|
|
11235
11272
|
setSelectedMinutes(referenceDate.getMinutes());
|
|
11236
11273
|
}, "handleUseReference");
|
|
11274
|
+
const currentHours = /* @__PURE__ */ __name((value) => value ? new Date(value).getHours() : selectedHours, "currentHours");
|
|
11275
|
+
const currentMinutes = /* @__PURE__ */ __name((value) => value ? roundToNearestFiveMinutes(new Date(value).getMinutes()) : selectedMinutes, "currentMinutes");
|
|
11237
11276
|
const handleTimeChange = /* @__PURE__ */ __name((hours, minutes) => {
|
|
11238
11277
|
const currentDate = form.getValues(id);
|
|
11239
11278
|
if (currentDate) {
|
|
@@ -11300,7 +11339,7 @@ function FormDateTime({
|
|
|
11300
11339
|
},
|
|
11301
11340
|
disabled: (date) => minDate && date < minDate ? true : false,
|
|
11302
11341
|
locale: dateFnsLocale,
|
|
11303
|
-
weekStartsOn
|
|
11342
|
+
weekStartsOn,
|
|
11304
11343
|
startMonth: new Date(1900, 0),
|
|
11305
11344
|
endMonth: new Date((/* @__PURE__ */ new Date()).getFullYear() + 10, 11),
|
|
11306
11345
|
modifiers: dayModifiers,
|
|
@@ -11322,18 +11361,18 @@ function FormDateTime({
|
|
|
11322
11361
|
Select,
|
|
11323
11362
|
{
|
|
11324
11363
|
items: hoursItems,
|
|
11325
|
-
value: String(
|
|
11364
|
+
value: String(
|
|
11365
|
+
twelveHourClock ? from24Hour(currentHours(field.value)).hour12 : currentHours(field.value)
|
|
11366
|
+
),
|
|
11326
11367
|
onValueChange: (value) => {
|
|
11327
11368
|
if (!value) return;
|
|
11328
|
-
const
|
|
11369
|
+
const picked = parseInt(value);
|
|
11370
|
+
const hours = twelveHourClock ? to24Hour(picked, from24Hour(currentHours(field.value)).period) : picked;
|
|
11329
11371
|
setSelectedHours(hours);
|
|
11330
|
-
handleTimeChange(
|
|
11331
|
-
hours,
|
|
11332
|
-
field.value ? roundToNearestFiveMinutes(new Date(field.value).getMinutes()) : selectedMinutes
|
|
11333
|
-
);
|
|
11372
|
+
handleTimeChange(hours, currentMinutes(field.value));
|
|
11334
11373
|
},
|
|
11335
11374
|
children: [
|
|
11336
|
-
/* @__PURE__ */ jsx95(SelectTrigger, { id: "hours-select", className: "w-[70px]", children: /* @__PURE__ */ jsx95(SelectValue, {}) }),
|
|
11375
|
+
/* @__PURE__ */ jsx95(SelectTrigger, { id: "hours-select", "data-testid": "form-datetime-hours", className: "w-[70px]", children: /* @__PURE__ */ jsx95(SelectValue, {}) }),
|
|
11337
11376
|
/* @__PURE__ */ jsx95(SelectContent, { children: hoursOptions.map((option) => /* @__PURE__ */ jsx95(SelectItem, { value: String(option.value), children: option.label }, option.value)) })
|
|
11338
11377
|
]
|
|
11339
11378
|
}
|
|
@@ -11346,21 +11385,39 @@ function FormDateTime({
|
|
|
11346
11385
|
Select,
|
|
11347
11386
|
{
|
|
11348
11387
|
items: minutesItems,
|
|
11349
|
-
value: String(
|
|
11350
|
-
field.value ? roundToNearestFiveMinutes(new Date(field.value).getMinutes()) : selectedMinutes
|
|
11351
|
-
),
|
|
11388
|
+
value: String(currentMinutes(field.value)),
|
|
11352
11389
|
onValueChange: (value) => {
|
|
11353
11390
|
if (!value) return;
|
|
11354
11391
|
const minutes = parseInt(value);
|
|
11355
11392
|
setSelectedMinutes(minutes);
|
|
11356
|
-
handleTimeChange(
|
|
11393
|
+
handleTimeChange(currentHours(field.value), minutes);
|
|
11357
11394
|
},
|
|
11358
11395
|
children: [
|
|
11359
|
-
/* @__PURE__ */ jsx95(SelectTrigger, { id: "minutes-select", className: "w-[70px]", children: /* @__PURE__ */ jsx95(SelectValue, {}) }),
|
|
11396
|
+
/* @__PURE__ */ jsx95(SelectTrigger, { id: "minutes-select", "data-testid": "form-datetime-minutes", className: "w-[70px]", children: /* @__PURE__ */ jsx95(SelectValue, {}) }),
|
|
11360
11397
|
/* @__PURE__ */ jsx95(SelectContent, { children: minutesOptions.map((option) => /* @__PURE__ */ jsx95(SelectItem, { value: String(option.value), children: option.label }, option.value)) })
|
|
11361
11398
|
]
|
|
11362
11399
|
}
|
|
11363
11400
|
)
|
|
11401
|
+
] }),
|
|
11402
|
+
twelveHourClock && /* @__PURE__ */ jsxs54("div", { className: "flex flex-col space-y-2", children: [
|
|
11403
|
+
/* @__PURE__ */ jsx95(Label, { htmlFor: "period-select", children: t(`common.dayPeriod`) }),
|
|
11404
|
+
/* @__PURE__ */ jsxs54(
|
|
11405
|
+
Select,
|
|
11406
|
+
{
|
|
11407
|
+
items: periodItems,
|
|
11408
|
+
value: from24Hour(currentHours(field.value)).period,
|
|
11409
|
+
onValueChange: (value) => {
|
|
11410
|
+
if (!value) return;
|
|
11411
|
+
const hours = to24Hour(from24Hour(currentHours(field.value)).hour12, value);
|
|
11412
|
+
setSelectedHours(hours);
|
|
11413
|
+
handleTimeChange(hours, currentMinutes(field.value));
|
|
11414
|
+
},
|
|
11415
|
+
children: [
|
|
11416
|
+
/* @__PURE__ */ jsx95(SelectTrigger, { id: "period-select", "data-testid": "form-datetime-period", className: "w-[70px]", children: /* @__PURE__ */ jsx95(SelectValue, {}) }),
|
|
11417
|
+
/* @__PURE__ */ jsx95(SelectContent, { children: periodOptions.map((option) => /* @__PURE__ */ jsx95(SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
11418
|
+
]
|
|
11419
|
+
}
|
|
11420
|
+
)
|
|
11364
11421
|
] })
|
|
11365
11422
|
] }),
|
|
11366
11423
|
/* @__PURE__ */ jsxs54("div", { className: "mt-2 flex flex-row gap-x-2", children: [
|
|
@@ -13769,7 +13826,7 @@ import { createContext as createContext18, useCallback as useCallback23, useCont
|
|
|
13769
13826
|
|
|
13770
13827
|
// src/features/notification/components/notifications/Notification.tsx
|
|
13771
13828
|
import { useTranslations as useTranslations48 } from "next-intl";
|
|
13772
|
-
import { useEffect as useEffect29, useState as useState39 } from "react";
|
|
13829
|
+
import { Suspense, useEffect as useEffect29, useState as useState39 } from "react";
|
|
13773
13830
|
|
|
13774
13831
|
// src/features/notification/components/notifications/NotificationIcon.tsx
|
|
13775
13832
|
import { ArchiveIcon, AudioLinesIcon, BellIcon } from "lucide-react";
|
|
@@ -13798,7 +13855,7 @@ function NotificationIcon({ notificationType, className }) {
|
|
|
13798
13855
|
__name(NotificationIcon, "NotificationIcon");
|
|
13799
13856
|
|
|
13800
13857
|
// src/features/notification/components/notifications/Notification.tsx
|
|
13801
|
-
import { jsx as jsx145, jsxs as jsxs82 } from "react/jsx-runtime";
|
|
13858
|
+
import { Fragment as Fragment22, jsx as jsx145, jsxs as jsxs82 } from "react/jsx-runtime";
|
|
13802
13859
|
var generateNotificationData = /* @__PURE__ */ __name((params) => {
|
|
13803
13860
|
const response = {};
|
|
13804
13861
|
response.actor = params.notification.actor;
|
|
@@ -13807,7 +13864,12 @@ var generateNotificationData = /* @__PURE__ */ __name((params) => {
|
|
|
13807
13864
|
}
|
|
13808
13865
|
return response;
|
|
13809
13866
|
}, "generateNotificationData");
|
|
13810
|
-
function
|
|
13867
|
+
function NotificationToastTime({ date }) {
|
|
13868
|
+
const { format } = useDateFormatter();
|
|
13869
|
+
return /* @__PURE__ */ jsx145(Fragment22, { children: format(new Date(date), "dateTime") });
|
|
13870
|
+
}
|
|
13871
|
+
__name(NotificationToastTime, "NotificationToastTime");
|
|
13872
|
+
function NotificationToast(notification, t, generateUrl, reouter, dateLocaleSource = null) {
|
|
13811
13873
|
const data = generateNotificationData({ notification, generateUrl });
|
|
13812
13874
|
return {
|
|
13813
13875
|
title: t(`notification.${notification.notificationType}.title`),
|
|
@@ -13820,7 +13882,7 @@ function NotificationToast(notification, t, generateUrl, reouter, locale) {
|
|
|
13820
13882
|
title: data.title,
|
|
13821
13883
|
message: notification.message ?? ""
|
|
13822
13884
|
}) }),
|
|
13823
|
-
/* @__PURE__ */ jsx145("div", { className: "text-muted-foreground mt-1 w-full text-xs", children:
|
|
13885
|
+
/* @__PURE__ */ jsx145("div", { className: "text-muted-foreground mt-1 w-full text-xs", children: /* @__PURE__ */ jsx145(DateLocaleSourceProvider, { value: dateLocaleSource, children: /* @__PURE__ */ jsx145(Suspense, { fallback: null, children: /* @__PURE__ */ jsx145(NotificationToastTime, { date: notification.createdAt }) }) }) })
|
|
13824
13886
|
] })
|
|
13825
13887
|
] }),
|
|
13826
13888
|
action: data.url ? {
|
|
@@ -13832,11 +13894,16 @@ function NotificationToast(notification, t, generateUrl, reouter, locale) {
|
|
|
13832
13894
|
};
|
|
13833
13895
|
}
|
|
13834
13896
|
__name(NotificationToast, "NotificationToast");
|
|
13897
|
+
function NotificationMenuItemTime({ date }) {
|
|
13898
|
+
const { locale } = useDateFormatter();
|
|
13899
|
+
const now = useMountedNow();
|
|
13900
|
+
return /* @__PURE__ */ jsx145(Fragment22, { children: now ? formatDate(new Date(date), "default", locale, now) : "" });
|
|
13901
|
+
}
|
|
13902
|
+
__name(NotificationMenuItemTime, "NotificationMenuItemTime");
|
|
13835
13903
|
function NotificationMenuItem({ notification, closePopover }) {
|
|
13836
13904
|
const generateUrl = usePageUrlGenerator();
|
|
13837
13905
|
const [isRead, setIsRead] = useState39(false);
|
|
13838
13906
|
const t = useTranslations48();
|
|
13839
|
-
const dateLocale = dateFormatLocale(useI18nLocale());
|
|
13840
13907
|
useEffect29(() => {
|
|
13841
13908
|
setIsRead(notification.isRead);
|
|
13842
13909
|
}, []);
|
|
@@ -13858,7 +13925,7 @@ function NotificationMenuItem({ notification, closePopover }) {
|
|
|
13858
13925
|
title: data.title,
|
|
13859
13926
|
message: notification.message ?? ""
|
|
13860
13927
|
}) }),
|
|
13861
|
-
/* @__PURE__ */ jsx145("div", { className: "text-muted-foreground mt-0.5 text-xs", children:
|
|
13928
|
+
/* @__PURE__ */ jsx145("div", { className: "text-muted-foreground mt-0.5 text-xs", children: /* @__PURE__ */ jsx145(Suspense, { fallback: null, children: /* @__PURE__ */ jsx145(NotificationMenuItemTime, { date: notification.createdAt }) }) })
|
|
13862
13929
|
] }),
|
|
13863
13930
|
!isRead && /* @__PURE__ */ jsx145("span", { className: "bg-primary mt-1.5 size-2 shrink-0 rounded-full", "aria-hidden": true })
|
|
13864
13931
|
]
|
|
@@ -13875,7 +13942,7 @@ import { jsx as jsx146 } from "react/jsx-runtime";
|
|
|
13875
13942
|
var NotificationContext = createContext18(void 0);
|
|
13876
13943
|
var NotificationContextProvider = /* @__PURE__ */ __name(({ children }) => {
|
|
13877
13944
|
const t = useTranslations49();
|
|
13878
|
-
const
|
|
13945
|
+
const dateLocaleSource = useDateLocaleSource();
|
|
13879
13946
|
const tRef = useRef23(t);
|
|
13880
13947
|
tRef.current = t;
|
|
13881
13948
|
const router = useI18nRouter();
|
|
@@ -13962,7 +14029,7 @@ var NotificationContextProvider = /* @__PURE__ */ __name(({ children }) => {
|
|
|
13962
14029
|
}
|
|
13963
14030
|
}, []);
|
|
13964
14031
|
const generateToastNotification = /* @__PURE__ */ __name((notification, t2, generateUrl) => {
|
|
13965
|
-
return NotificationToast(notification, t2, generateUrl, router,
|
|
14032
|
+
return NotificationToast(notification, t2, generateUrl, router, dateLocaleSource);
|
|
13966
14033
|
}, "generateToastNotification");
|
|
13967
14034
|
const generateNotification = /* @__PURE__ */ __name((notification, closePopover) => {
|
|
13968
14035
|
return /* @__PURE__ */ jsx146(NotificationMenuItem, { notification, closePopover });
|
|
@@ -15651,7 +15718,7 @@ function useSocket({ token, paused = false }) {
|
|
|
15651
15718
|
__name(useSocket, "useSocket");
|
|
15652
15719
|
|
|
15653
15720
|
// src/components/navigations/Breadcrumb.tsx
|
|
15654
|
-
import { Fragment as
|
|
15721
|
+
import { Fragment as Fragment24, jsx as jsx161, jsxs as jsxs87 } from "react/jsx-runtime";
|
|
15655
15722
|
var ITEMS_TO_DISPLAY = 4;
|
|
15656
15723
|
function BreadcrumbDesktop({
|
|
15657
15724
|
items,
|
|
@@ -15662,24 +15729,24 @@ function BreadcrumbDesktop({
|
|
|
15662
15729
|
const t = useTranslations57();
|
|
15663
15730
|
const [open, setOpen] = useState49(false);
|
|
15664
15731
|
return /* @__PURE__ */ jsx161(Breadcrumb, { children: /* @__PURE__ */ jsxs87(BreadcrumbList, { children: [
|
|
15665
|
-
showRoot && /* @__PURE__ */ jsxs87(
|
|
15732
|
+
showRoot && /* @__PURE__ */ jsxs87(Fragment24, { children: [
|
|
15666
15733
|
/* @__PURE__ */ jsx161(BreadcrumbItem, { children: /* @__PURE__ */ jsx161(Link, { href: generateUrl({ page: `/` }), children: rootLabel }) }),
|
|
15667
15734
|
items.length > 0 && /* @__PURE__ */ jsx161(BreadcrumbSeparator, {})
|
|
15668
15735
|
] }),
|
|
15669
|
-
items.length > ITEMS_TO_DISPLAY ? /* @__PURE__ */ jsxs87(
|
|
15670
|
-
/* @__PURE__ */ jsx161(BreadcrumbItem, { children: items[0].href ? /* @__PURE__ */ jsx161(Link, { href: items[0].href, onClick: items[0].onClick, children: items[0].name }) : /* @__PURE__ */ jsx161(
|
|
15736
|
+
items.length > ITEMS_TO_DISPLAY ? /* @__PURE__ */ jsxs87(Fragment24, { children: [
|
|
15737
|
+
/* @__PURE__ */ jsx161(BreadcrumbItem, { children: items[0].href ? /* @__PURE__ */ jsx161(Link, { href: items[0].href, onClick: items[0].onClick, children: items[0].name }) : /* @__PURE__ */ jsx161(Fragment24, { children: items[0].name }) }),
|
|
15671
15738
|
/* @__PURE__ */ jsx161(BreadcrumbSeparator, {}),
|
|
15672
15739
|
/* @__PURE__ */ jsx161(BreadcrumbItem, { children: /* @__PURE__ */ jsxs87(DropdownMenu, { open, onOpenChange: setOpen, children: [
|
|
15673
15740
|
/* @__PURE__ */ jsx161(DropdownMenuTrigger, { className: "flex items-center gap-1", "aria-label": t("ui.labels.toggle_menu"), children: /* @__PURE__ */ jsx161(BreadcrumbEllipsis, { className: "h-4 w-4", label: t("ui.labels.more") }) }),
|
|
15674
15741
|
/* @__PURE__ */ jsx161(DropdownMenuContent, { align: "start", children: items.slice(1, -ITEMS_TO_DISPLAY + 2).map((item, index) => /* @__PURE__ */ jsx161(DropdownMenuItem, { children: /* @__PURE__ */ jsx161(Link, { href: item.href ? item.href : "#", onClick: item.onClick, children: item.name }) }, index)) })
|
|
15675
15742
|
] }) }),
|
|
15676
15743
|
/* @__PURE__ */ jsx161(BreadcrumbSeparator, {}),
|
|
15677
|
-
items.slice(-ITEMS_TO_DISPLAY + 2).map((item, index) => /* @__PURE__ */ jsxs87(
|
|
15678
|
-
/* @__PURE__ */ jsx161(BreadcrumbItem, { children: item.href ? /* @__PURE__ */ jsx161(Link, { href: item.href, onClick: item.onClick, children: item.name }) : /* @__PURE__ */ jsx161(
|
|
15744
|
+
items.slice(-ITEMS_TO_DISPLAY + 2).map((item, index) => /* @__PURE__ */ jsxs87(Fragment23, { children: [
|
|
15745
|
+
/* @__PURE__ */ jsx161(BreadcrumbItem, { children: item.href ? /* @__PURE__ */ jsx161(Link, { href: item.href, onClick: item.onClick, children: item.name }) : /* @__PURE__ */ jsx161(Fragment24, { children: item.name }) }),
|
|
15679
15746
|
index < items.slice(-ITEMS_TO_DISPLAY + 2).length - 1 && /* @__PURE__ */ jsx161(BreadcrumbSeparator, {})
|
|
15680
15747
|
] }, index))
|
|
15681
|
-
] }) : /* @__PURE__ */ jsx161(
|
|
15682
|
-
/* @__PURE__ */ jsx161(BreadcrumbItem, { children: item.href ? /* @__PURE__ */ jsx161(Link, { href: item.href, onClick: item.onClick, children: item.name }) : /* @__PURE__ */ jsx161(
|
|
15748
|
+
] }) : /* @__PURE__ */ jsx161(Fragment24, { children: items.map((item, index) => /* @__PURE__ */ jsxs87(Fragment23, { children: [
|
|
15749
|
+
/* @__PURE__ */ jsx161(BreadcrumbItem, { children: item.href ? /* @__PURE__ */ jsx161(Link, { href: item.href, onClick: item.onClick, children: item.name }) : /* @__PURE__ */ jsx161(Fragment24, { children: item.name }) }),
|
|
15683
15750
|
index < items.length - 1 && /* @__PURE__ */ jsx161(BreadcrumbSeparator, {})
|
|
15684
15751
|
] }, index)) })
|
|
15685
15752
|
] }) });
|
|
@@ -15843,7 +15910,7 @@ __name(Header, "Header");
|
|
|
15843
15910
|
// src/components/navigations/MobileNavigationBar.tsx
|
|
15844
15911
|
import { useTranslations as useTranslations59 } from "next-intl";
|
|
15845
15912
|
import { usePathname as usePathname2 } from "next/navigation";
|
|
15846
|
-
import { Fragment as
|
|
15913
|
+
import { Fragment as Fragment25, jsx as jsx164, jsxs as jsxs90 } from "react/jsx-runtime";
|
|
15847
15914
|
function isActiveHref(pathname, href) {
|
|
15848
15915
|
if (href === "/") return pathname === "/";
|
|
15849
15916
|
return pathname === href || pathname.startsWith(`${href}/`);
|
|
@@ -15855,7 +15922,7 @@ var slotClass = cn(
|
|
|
15855
15922
|
"transition-colors"
|
|
15856
15923
|
);
|
|
15857
15924
|
function SlotContent({ item }) {
|
|
15858
|
-
if (item.render) return /* @__PURE__ */ jsx164(
|
|
15925
|
+
if (item.render) return /* @__PURE__ */ jsx164(Fragment25, { children: item.render });
|
|
15859
15926
|
const Icon = item.icon;
|
|
15860
15927
|
return Icon ? /* @__PURE__ */ jsx164(Icon, { className: "size-6" }) : null;
|
|
15861
15928
|
}
|
|
@@ -15876,7 +15943,7 @@ function MobileNavigationBar({ className } = {}) {
|
|
|
15876
15943
|
children: items.map((item) => {
|
|
15877
15944
|
const active = item.href ? isActiveHref(pathname, item.href) : false;
|
|
15878
15945
|
const tone = active ? "text-primary" : "text-muted-foreground";
|
|
15879
|
-
const body = /* @__PURE__ */ jsxs90(
|
|
15946
|
+
const body = /* @__PURE__ */ jsxs90(Fragment25, { children: [
|
|
15880
15947
|
active && /* @__PURE__ */ jsx164("span", { "aria-hidden": true, className: "bg-primary absolute inset-x-0 top-0 h-0.5" }),
|
|
15881
15948
|
/* @__PURE__ */ jsx164(SlotContent, { item })
|
|
15882
15949
|
] });
|
|
@@ -16292,7 +16359,7 @@ __name(ReactMarkdownContainer, "ReactMarkdownContainer");
|
|
|
16292
16359
|
// src/components/containers/RoundPageContainerTitle.tsx
|
|
16293
16360
|
import { InfoIcon as InfoIcon2 } from "lucide-react";
|
|
16294
16361
|
import { useTranslations as useTranslations62 } from "next-intl";
|
|
16295
|
-
import { Fragment as
|
|
16362
|
+
import { Fragment as Fragment26, jsx as jsx171, jsxs as jsxs95 } from "react/jsx-runtime";
|
|
16296
16363
|
var HEADER_ROW_MIN_H = "min-h-[53px]";
|
|
16297
16364
|
function RoundPageContainerTitle({
|
|
16298
16365
|
module,
|
|
@@ -16352,7 +16419,7 @@ function RoundPageContainerTitle({
|
|
|
16352
16419
|
module && module.icon ? /* @__PURE__ */ jsx171(module.icon, { className: "text-primary h-5 w-5 shrink-0" }) : title.icon,
|
|
16353
16420
|
/* @__PURE__ */ jsxs95("span", { className: "truncate", children: [
|
|
16354
16421
|
title.type,
|
|
16355
|
-
title.element && /* @__PURE__ */ jsxs95(
|
|
16422
|
+
title.element && /* @__PURE__ */ jsxs95(Fragment26, { children: [
|
|
16356
16423
|
/* @__PURE__ */ jsx171("span", { "aria-hidden": true, children: " \xB7 " }),
|
|
16357
16424
|
/* @__PURE__ */ jsx171("span", { className: "text-primary font-semibold", children: title.element })
|
|
16358
16425
|
] })
|
|
@@ -16392,8 +16459,8 @@ __name(RoundPageContainerTitle, "RoundPageContainerTitle");
|
|
|
16392
16459
|
// src/components/containers/RoundPageContainer.tsx
|
|
16393
16460
|
import { useTranslations as useTranslations63 } from "next-intl";
|
|
16394
16461
|
import { useSearchParams } from "next/navigation";
|
|
16395
|
-
import { Fragment as
|
|
16396
|
-
import { Fragment as
|
|
16462
|
+
import { Fragment as Fragment27, useCallback as useCallback28, useEffect as useEffect45, useMemo as useMemo23, useRef as useRef29, useState as useState55 } from "react";
|
|
16463
|
+
import { Fragment as Fragment28, jsx as jsx172, jsxs as jsxs96 } from "react/jsx-runtime";
|
|
16397
16464
|
var DETAILS_COOKIE_NAME = "round_page_details_state";
|
|
16398
16465
|
var DETAILS_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;
|
|
16399
16466
|
var railTriggerClass = cn(
|
|
@@ -16509,7 +16576,7 @@ function RoundPageContainer({
|
|
|
16509
16576
|
const innerScrollY = mobileFlow ? `` : scrollY;
|
|
16510
16577
|
const showMobileSectionPicker = (tabs?.length ?? 0) > 1;
|
|
16511
16578
|
if (!isReady) {
|
|
16512
|
-
return /* @__PURE__ */ jsxs96(
|
|
16579
|
+
return /* @__PURE__ */ jsxs96(Fragment28, { children: [
|
|
16513
16580
|
/* @__PURE__ */ jsx172(
|
|
16514
16581
|
Header,
|
|
16515
16582
|
{
|
|
@@ -16547,7 +16614,7 @@ function RoundPageContainer({
|
|
|
16547
16614
|
)
|
|
16548
16615
|
] });
|
|
16549
16616
|
}
|
|
16550
|
-
return /* @__PURE__ */ jsxs96(
|
|
16617
|
+
return /* @__PURE__ */ jsxs96(Fragment28, { children: [
|
|
16551
16618
|
/* @__PURE__ */ jsx172(
|
|
16552
16619
|
Header,
|
|
16553
16620
|
{
|
|
@@ -16621,7 +16688,7 @@ function RoundPageContainer({
|
|
|
16621
16688
|
railHeader && /* @__PURE__ */ jsx172("div", { children: railHeader }),
|
|
16622
16689
|
/* @__PURE__ */ jsxs96(TabsList, { className: "flex h-auto w-full flex-col items-stretch gap-0.5 bg-transparent p-0", children: [
|
|
16623
16690
|
ungrouped.map((tab) => /* @__PURE__ */ jsx172(TabsTrigger, { value: tabValue(tab), className: railTriggerClass, children: tab.contentLabel ?? tab.label }, tabValue(tab))),
|
|
16624
|
-
groups.map((group) => /* @__PURE__ */ jsxs96(
|
|
16691
|
+
groups.map((group) => /* @__PURE__ */ jsxs96(Fragment27, { children: [
|
|
16625
16692
|
/* @__PURE__ */ jsx172(MicroLabel, { as: "span", role: "presentation", className: "block px-3 pt-3 pb-1", children: group.label }),
|
|
16626
16693
|
group.items.map((tab) => /* @__PURE__ */ jsx172(TabsTrigger, { value: tabValue(tab), className: railTriggerClass, children: tab.contentLabel ?? tab.label }, tabValue(tab)))
|
|
16627
16694
|
] }, group.label))
|
|
@@ -16712,7 +16779,7 @@ function RoundPageContainer({
|
|
|
16712
16779
|
),
|
|
16713
16780
|
children: [
|
|
16714
16781
|
header,
|
|
16715
|
-
tabs ? /* @__PURE__ */ jsxs96(
|
|
16782
|
+
tabs ? /* @__PURE__ */ jsxs96(Fragment28, { children: [
|
|
16716
16783
|
/* @__PURE__ */ jsxs96(
|
|
16717
16784
|
Tabs,
|
|
16718
16785
|
{
|
|
@@ -16817,7 +16884,7 @@ function RoundPageContainer({
|
|
|
16817
16884
|
__name(RoundPageContainer, "RoundPageContainer");
|
|
16818
16885
|
|
|
16819
16886
|
// src/components/containers/TabsContainer.tsx
|
|
16820
|
-
import { Fragment as
|
|
16887
|
+
import { Fragment as Fragment29, jsx as jsx173, jsxs as jsxs97 } from "react/jsx-runtime";
|
|
16821
16888
|
function TabsContainer({
|
|
16822
16889
|
tabs,
|
|
16823
16890
|
defaultTab,
|
|
@@ -16862,7 +16929,7 @@ function TabsContainer({
|
|
|
16862
16929
|
),
|
|
16863
16930
|
additionalComponent && additionalComponent
|
|
16864
16931
|
] }),
|
|
16865
|
-
scrollAreaClassName ? /* @__PURE__ */ jsx173(ScrollArea, { className: scrollAreaClassName, children: validTabs.map((tab) => /* @__PURE__ */ jsx173(TabsContent, { value: tab.label, children: tab.content }, tab.label)) }) : /* @__PURE__ */ jsx173(
|
|
16932
|
+
scrollAreaClassName ? /* @__PURE__ */ jsx173(ScrollArea, { className: scrollAreaClassName, children: validTabs.map((tab) => /* @__PURE__ */ jsx173(TabsContent, { value: tab.label, children: tab.content }, tab.label)) }) : /* @__PURE__ */ jsx173(Fragment29, { children: validTabs.map((tab) => /* @__PURE__ */ jsx173(TabsContent, { value: tab.label, children: tab.content }, tab.label)) })
|
|
16866
16933
|
] });
|
|
16867
16934
|
}
|
|
16868
16935
|
__name(TabsContainer, "TabsContainer");
|
|
@@ -17142,7 +17209,7 @@ __name(BlockNoteEditorMentionSuggestionMenu, "BlockNoteEditorMentionSuggestionMe
|
|
|
17142
17209
|
import dynamic2 from "next/dynamic";
|
|
17143
17210
|
import React29 from "react";
|
|
17144
17211
|
import { jsx as jsx178 } from "react/jsx-runtime";
|
|
17145
|
-
var BlockNoteViewer = dynamic2(() => import("./BlockNoteViewer-
|
|
17212
|
+
var BlockNoteViewer = dynamic2(() => import("./BlockNoteViewer-TQ452ZYW.mjs").then((m) => m.BlockNoteViewer), { ssr: false });
|
|
17146
17213
|
var BlockNoteViewerContainer = React29.memo(/* @__PURE__ */ __name(function ViewerContainer(props) {
|
|
17147
17214
|
return /* @__PURE__ */ jsx178(BlockNoteViewer, { ...props });
|
|
17148
17215
|
}, "ViewerContainer"));
|
|
@@ -17299,8 +17366,8 @@ var cellComponent = /* @__PURE__ */ __name((params) => {
|
|
|
17299
17366
|
// src/components/tables/cells/cell.date.tsx
|
|
17300
17367
|
import { jsx as jsx182 } from "react/jsx-runtime";
|
|
17301
17368
|
function DateCell({ date }) {
|
|
17302
|
-
const
|
|
17303
|
-
return /* @__PURE__ */ jsx182("span", { className: "text-muted-foreground text-xs", children: date
|
|
17369
|
+
const { format } = useDateFormatter();
|
|
17370
|
+
return /* @__PURE__ */ jsx182("span", { className: "text-muted-foreground text-xs", children: format(date, "dateMedium") });
|
|
17304
17371
|
}
|
|
17305
17372
|
__name(DateCell, "DateCell");
|
|
17306
17373
|
var cellDate = /* @__PURE__ */ __name((params) => {
|
|
@@ -17321,8 +17388,8 @@ var cellDate = /* @__PURE__ */ __name((params) => {
|
|
|
17321
17388
|
// src/components/tables/cells/cell.dateTime.tsx
|
|
17322
17389
|
import { jsx as jsx183 } from "react/jsx-runtime";
|
|
17323
17390
|
function DateTimeCell({ date }) {
|
|
17324
|
-
const
|
|
17325
|
-
return /* @__PURE__ */ jsx183("span", { className: "text-muted-foreground text-xs", children: date
|
|
17391
|
+
const { format } = useDateFormatter();
|
|
17392
|
+
return /* @__PURE__ */ jsx183("span", { className: "text-muted-foreground text-xs", children: format(date, "dateTimeMedium") });
|
|
17326
17393
|
}
|
|
17327
17394
|
__name(DateTimeCell, "DateTimeCell");
|
|
17328
17395
|
var cellDateTime = /* @__PURE__ */ __name((params) => {
|
|
@@ -17424,7 +17491,7 @@ function useJsonApiGet(params) {
|
|
|
17424
17491
|
setLoading(true);
|
|
17425
17492
|
setError(null);
|
|
17426
17493
|
try {
|
|
17427
|
-
const { JsonApiGet } = await import("./JsonApiRequest-
|
|
17494
|
+
const { JsonApiGet } = await import("./JsonApiRequest-WNPDS356.mjs");
|
|
17428
17495
|
const language = navigator.language.split("-")[0] || "en";
|
|
17429
17496
|
const apiResponse = await JsonApiGet({
|
|
17430
17497
|
classKey: params.classKey,
|
|
@@ -17529,7 +17596,7 @@ function useJsonApiMutation(config) {
|
|
|
17529
17596
|
setLoading(true);
|
|
17530
17597
|
setError(null);
|
|
17531
17598
|
try {
|
|
17532
|
-
const { JsonApiPost, JsonApiPut, JsonApiPatch, JsonApiDelete } = await import("./JsonApiRequest-
|
|
17599
|
+
const { JsonApiPost, JsonApiPut, JsonApiPatch, JsonApiDelete } = await import("./JsonApiRequest-WNPDS356.mjs");
|
|
17533
17600
|
const language = navigator.language.split("-")[0] || "en";
|
|
17534
17601
|
let apiResponse;
|
|
17535
17602
|
switch (config.method) {
|
|
@@ -17764,7 +17831,7 @@ __name(useSubscriptionStatus, "useSubscriptionStatus");
|
|
|
17764
17831
|
// src/features/role/hooks/useRoleTableStructure.tsx
|
|
17765
17832
|
import { useTranslations as useTranslations67 } from "next-intl";
|
|
17766
17833
|
import { useMemo as useMemo29 } from "react";
|
|
17767
|
-
import { Fragment as
|
|
17834
|
+
import { Fragment as Fragment30, jsx as jsx189 } from "react/jsx-runtime";
|
|
17768
17835
|
var useRoleTableStructure = /* @__PURE__ */ __name((params) => {
|
|
17769
17836
|
const t = useTranslations67();
|
|
17770
17837
|
const generateUrl = usePageUrlGenerator();
|
|
@@ -17801,7 +17868,7 @@ var useRoleTableStructure = /* @__PURE__ */ __name((params) => {
|
|
|
17801
17868
|
id: "description",
|
|
17802
17869
|
accessorKey: "description",
|
|
17803
17870
|
header: t(`role.fields.description.label`),
|
|
17804
|
-
cell: /* @__PURE__ */ __name(({ row }) => /* @__PURE__ */ jsx189(
|
|
17871
|
+
cell: /* @__PURE__ */ __name(({ row }) => /* @__PURE__ */ jsx189(Fragment30, { children: row.getValue("description") }), "cell"),
|
|
17805
17872
|
enableSorting: false,
|
|
17806
17873
|
enableHiding: false
|
|
17807
17874
|
}),
|
|
@@ -17823,11 +17890,11 @@ import { useMemo as useMemo31 } from "react";
|
|
|
17823
17890
|
|
|
17824
17891
|
// src/features/billing/components/utils/date.ts
|
|
17825
17892
|
function formatDate2(date, options = {}) {
|
|
17826
|
-
const { locale, t } = options;
|
|
17893
|
+
const { locale, dateLocale, t } = options;
|
|
17827
17894
|
if (!date) return t ? t("billing.ui.not_available") : "N/A";
|
|
17828
17895
|
const dateObj = typeof date === "string" ? new Date(date) : date;
|
|
17829
17896
|
try {
|
|
17830
|
-
return new Intl.DateTimeFormat(dateFormatLocale(locale), {
|
|
17897
|
+
return new Intl.DateTimeFormat(dateLocale ?? dateFormatLocale(locale), {
|
|
17831
17898
|
month: "short",
|
|
17832
17899
|
day: "numeric",
|
|
17833
17900
|
year: "numeric"
|
|
@@ -17845,7 +17912,8 @@ import { useMemo as useMemo30 } from "react";
|
|
|
17845
17912
|
function useBillingFormatOptions() {
|
|
17846
17913
|
const t = useTranslations68();
|
|
17847
17914
|
const locale = useI18nLocale();
|
|
17848
|
-
|
|
17915
|
+
const { locale: dateLocale } = useDateFormatter();
|
|
17916
|
+
return useMemo30(() => ({ locale, dateLocale, t }), [locale, dateLocale, t]);
|
|
17849
17917
|
}
|
|
17850
17918
|
__name(useBillingFormatOptions, "useBillingFormatOptions");
|
|
17851
17919
|
|
|
@@ -19053,7 +19121,7 @@ __name(formatSignupSource, "formatSignupSource");
|
|
|
19053
19121
|
import { jsx as jsx199, jsxs as jsxs107 } from "react/jsx-runtime";
|
|
19054
19122
|
var useWaitlistTableStructure = /* @__PURE__ */ __name((params) => {
|
|
19055
19123
|
const t = useTranslations78();
|
|
19056
|
-
const
|
|
19124
|
+
const dates = useDateFormatter();
|
|
19057
19125
|
const onInvite = params.context?.onInvite;
|
|
19058
19126
|
const tableData = useMemo37(() => {
|
|
19059
19127
|
return params.data.map((entry) => {
|
|
@@ -19099,7 +19167,7 @@ var useWaitlistTableStructure = /* @__PURE__ */ __name((params) => {
|
|
|
19099
19167
|
cell: /* @__PURE__ */ __name(({ row }) => {
|
|
19100
19168
|
const entry = row.original.jsonApiData;
|
|
19101
19169
|
if (!entry.createdAt) return "-";
|
|
19102
|
-
return
|
|
19170
|
+
return dates.format(entry.createdAt, "date");
|
|
19103
19171
|
}, "cell"),
|
|
19104
19172
|
enableSorting: false,
|
|
19105
19173
|
enableHiding: false
|
|
@@ -19155,7 +19223,7 @@ var useWaitlistTableStructure = /* @__PURE__ */ __name((params) => {
|
|
|
19155
19223
|
] });
|
|
19156
19224
|
}
|
|
19157
19225
|
if (entry.status === "invited" && entry.invitedAt) {
|
|
19158
|
-
return /* @__PURE__ */ jsx199("span", { className: "text-muted-foreground text-xs", children: t("waitlist.admin.actions.invited_on", { date:
|
|
19226
|
+
return /* @__PURE__ */ jsx199("span", { className: "text-muted-foreground text-xs", children: t("waitlist.admin.actions.invited_on", { date: dates.format(entry.invitedAt, "dateMedium") }) });
|
|
19159
19227
|
}
|
|
19160
19228
|
if (entry.status === "registered") {
|
|
19161
19229
|
return /* @__PURE__ */ jsx199("span", { className: "text-muted-foreground text-sm", children: t("waitlist.admin.actions.registered") });
|
|
@@ -19168,14 +19236,14 @@ var useWaitlistTableStructure = /* @__PURE__ */ __name((params) => {
|
|
|
19168
19236
|
};
|
|
19169
19237
|
const columns = useMemo37(() => {
|
|
19170
19238
|
return params.fields.map((field) => fieldColumnMap[field]?.()).filter((col) => col !== void 0);
|
|
19171
|
-
}, [params.fields, fieldColumnMap, t,
|
|
19239
|
+
}, [params.fields, fieldColumnMap, t, dates]);
|
|
19172
19240
|
return useMemo37(() => ({ data: tableData, columns }), [tableData, columns]);
|
|
19173
19241
|
}, "useWaitlistTableStructure");
|
|
19174
19242
|
|
|
19175
19243
|
// src/features/content/hooks/useContentTableStructure.tsx
|
|
19176
19244
|
import { useTranslations as useTranslations79 } from "next-intl";
|
|
19177
19245
|
import { useMemo as useMemo38 } from "react";
|
|
19178
|
-
import { Fragment as
|
|
19246
|
+
import { Fragment as Fragment31, jsx as jsx200, jsxs as jsxs108 } from "react/jsx-runtime";
|
|
19179
19247
|
var useContentTableStructure = /* @__PURE__ */ __name((params) => {
|
|
19180
19248
|
const t = useTranslations79();
|
|
19181
19249
|
const generateUrl = usePageUrlGenerator();
|
|
@@ -19206,7 +19274,7 @@ var useContentTableStructure = /* @__PURE__ */ __name((params) => {
|
|
|
19206
19274
|
const contentModule = content.contentType ? Modules.findByModelName(content.contentType) : void 0;
|
|
19207
19275
|
const link = contentModule ? generateUrl({ page: contentModule, id: content.id }) : "#";
|
|
19208
19276
|
return /* @__PURE__ */ jsxs108(Tooltip2, { children: [
|
|
19209
|
-
/* @__PURE__ */ jsx200(TooltipTrigger, { className: "flex items-center justify-start space-x-2", children: /* @__PURE__ */ jsxs108(
|
|
19277
|
+
/* @__PURE__ */ jsx200(TooltipTrigger, { className: "flex items-center justify-start space-x-2", children: /* @__PURE__ */ jsxs108(Fragment31, { children: [
|
|
19210
19278
|
contentModule && getIconByModule({ module: contentModule, className: "h-4 w-4" }),
|
|
19211
19279
|
/* @__PURE__ */ jsx200(Link, { href: link, children: content.name })
|
|
19212
19280
|
] }) }),
|
|
@@ -19222,7 +19290,7 @@ var useContentTableStructure = /* @__PURE__ */ __name((params) => {
|
|
|
19222
19290
|
header: t(`common.relevance`),
|
|
19223
19291
|
cell: /* @__PURE__ */ __name(({ row }) => {
|
|
19224
19292
|
const content = row.original.jsonApiData;
|
|
19225
|
-
if (!content.relevance) return /* @__PURE__ */ jsx200(
|
|
19293
|
+
if (!content.relevance) return /* @__PURE__ */ jsx200(Fragment31, {});
|
|
19226
19294
|
const response = `${content.relevance.toFixed(0)}%`;
|
|
19227
19295
|
return /* @__PURE__ */ jsxs108("div", { className: "relative flex h-5 w-20 items-center justify-center overflow-clip rounded border text-center", children: [
|
|
19228
19296
|
/* @__PURE__ */ jsx200(
|
|
@@ -19732,7 +19800,7 @@ function ContentTableSearch({ data }) {
|
|
|
19732
19800
|
__name(ContentTableSearch, "ContentTableSearch");
|
|
19733
19801
|
|
|
19734
19802
|
// src/components/tables/ContentListTable.tsx
|
|
19735
|
-
import { Fragment as
|
|
19803
|
+
import { Fragment as Fragment32, jsx as jsx202, jsxs as jsxs110 } from "react/jsx-runtime";
|
|
19736
19804
|
var EMPTY_ARRAY = [];
|
|
19737
19805
|
function getGroupKeys(item, field) {
|
|
19738
19806
|
const value = item.jsonApiData[field];
|
|
@@ -19747,7 +19815,7 @@ function getGroupKeys(item, field) {
|
|
|
19747
19815
|
__name(getGroupKeys, "getGroupKeys");
|
|
19748
19816
|
var isClassComponent = /* @__PURE__ */ __name((component) => typeof component === "function" && !!component.prototype?.isReactComponent, "isClassComponent");
|
|
19749
19817
|
function StableCell({ render, context }) {
|
|
19750
|
-
return /* @__PURE__ */ jsx202(
|
|
19818
|
+
return /* @__PURE__ */ jsx202(Fragment32, { children: render(context) });
|
|
19751
19819
|
}
|
|
19752
19820
|
__name(StableCell, "StableCell");
|
|
19753
19821
|
function renderCell(cellDef, context) {
|
|
@@ -19863,7 +19931,7 @@ var ContentListTable = memo(/* @__PURE__ */ __name(function ContentListTable2(pr
|
|
|
19863
19931
|
}
|
|
19864
19932
|
);
|
|
19865
19933
|
const hasTitleControls = !!(props.functions || props.filters || allowSearch);
|
|
19866
|
-
const titleControls = /* @__PURE__ */ jsxs110(
|
|
19934
|
+
const titleControls = /* @__PURE__ */ jsxs110(Fragment32, { children: [
|
|
19867
19935
|
props.filters,
|
|
19868
19936
|
props.functions,
|
|
19869
19937
|
allowSearch !== false && /* @__PURE__ */ jsx202(ContentTableSearch, { data })
|
|
@@ -19965,7 +20033,7 @@ var ContentListTable = memo(/* @__PURE__ */ __name(function ContentListTable2(pr
|
|
|
19965
20033
|
|
|
19966
20034
|
// src/components/grids/ContentListGrid.tsx
|
|
19967
20035
|
import { useEffect as useEffect56, useRef as useRef37 } from "react";
|
|
19968
|
-
import { Fragment as
|
|
20036
|
+
import { Fragment as Fragment33, jsx as jsx203, jsxs as jsxs111 } from "react/jsx-runtime";
|
|
19969
20037
|
var DEFAULT_GRID_CLASSES = "grid grid-cols-2 gap-4 p-4 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5";
|
|
19970
20038
|
function ContentListGrid(props) {
|
|
19971
20039
|
const { data, ItemComponent, allowSearch, fullWidth, gridClassName } = props;
|
|
@@ -19996,7 +20064,7 @@ function ContentListGrid(props) {
|
|
|
19996
20064
|
]
|
|
19997
20065
|
}
|
|
19998
20066
|
) }),
|
|
19999
|
-
(props.functions || props.filters || allowSearch) && /* @__PURE__ */ jsxs111(
|
|
20067
|
+
(props.functions || props.filters || allowSearch) && /* @__PURE__ */ jsxs111(Fragment33, { children: [
|
|
20000
20068
|
props.functions,
|
|
20001
20069
|
props.filters,
|
|
20002
20070
|
allowSearch && /* @__PURE__ */ jsx203(ContentTableSearch, { data })
|
|
@@ -20288,14 +20356,14 @@ import { z as z7 } from "zod";
|
|
|
20288
20356
|
|
|
20289
20357
|
// src/features/auth/components/GdprConsentSection.tsx
|
|
20290
20358
|
import { useTranslations as useTranslations89 } from "next-intl";
|
|
20291
|
-
import { Fragment as
|
|
20359
|
+
import { Fragment as Fragment34, jsx as jsx212, jsxs as jsxs118 } from "react/jsx-runtime";
|
|
20292
20360
|
function GdprConsentSection({
|
|
20293
20361
|
form,
|
|
20294
20362
|
termsCheckboxId = "termsAccepted",
|
|
20295
20363
|
marketingCheckboxId = "marketingConsent"
|
|
20296
20364
|
}) {
|
|
20297
20365
|
const t = useTranslations89("auth.gdpr");
|
|
20298
|
-
const termsLabel = /* @__PURE__ */ jsxs118(
|
|
20366
|
+
const termsLabel = /* @__PURE__ */ jsxs118(Fragment34, { children: [
|
|
20299
20367
|
t("terms_prefix"),
|
|
20300
20368
|
" ",
|
|
20301
20369
|
/* @__PURE__ */ jsx212(Link, { href: "/terms", target: "_blank", rel: "noopener", children: t("terms_of_service") }),
|
|
@@ -20320,7 +20388,7 @@ function GdprConsentSection({
|
|
|
20320
20388
|
__name(GdprConsentSection, "GdprConsentSection");
|
|
20321
20389
|
|
|
20322
20390
|
// src/features/auth/components/forms/Register.tsx
|
|
20323
|
-
import { Fragment as
|
|
20391
|
+
import { Fragment as Fragment35, jsx as jsx213, jsxs as jsxs119 } from "react/jsx-runtime";
|
|
20324
20392
|
var REFERRAL_COOKIE_NAME = "referral_code";
|
|
20325
20393
|
function getReferralCode() {
|
|
20326
20394
|
if (typeof document === "undefined") return null;
|
|
@@ -20442,7 +20510,7 @@ function Register() {
|
|
|
20442
20510
|
}
|
|
20443
20511
|
}, "onSubmit");
|
|
20444
20512
|
if (registrationMode === "waitlist" && inviteCode && isValidatingInvite) {
|
|
20445
|
-
return /* @__PURE__ */ jsxs119(
|
|
20513
|
+
return /* @__PURE__ */ jsxs119(Fragment35, { children: [
|
|
20446
20514
|
/* @__PURE__ */ jsx213(CardHeader, { children: /* @__PURE__ */ jsxs119(CardTitle, { className: "text-primary flex flex-col items-center pb-10 text-4xl", children: [
|
|
20447
20515
|
/* @__PURE__ */ jsx213(Image7, { src: "/logo.webp", alt: "Logo", width: 100, height: 100, priority: true }),
|
|
20448
20516
|
t("waitlist.invite.validating_title")
|
|
@@ -20454,7 +20522,7 @@ function Register() {
|
|
|
20454
20522
|
] });
|
|
20455
20523
|
}
|
|
20456
20524
|
if (registrationMode === "waitlist" && inviteCode && inviteError) {
|
|
20457
|
-
return /* @__PURE__ */ jsxs119(
|
|
20525
|
+
return /* @__PURE__ */ jsxs119(Fragment35, { children: [
|
|
20458
20526
|
/* @__PURE__ */ jsx213(CardHeader, { children: /* @__PURE__ */ jsxs119(CardTitle, { className: "text-primary flex flex-col items-center pb-10 text-4xl", children: [
|
|
20459
20527
|
/* @__PURE__ */ jsx213(Image7, { src: "/logo.webp", alt: "Logo", width: 100, height: 100, priority: true }),
|
|
20460
20528
|
t("waitlist.invite.invalid_title")
|
|
@@ -20467,7 +20535,7 @@ function Register() {
|
|
|
20467
20535
|
] });
|
|
20468
20536
|
}
|
|
20469
20537
|
if (registrationMode === "waitlist" && !inviteCode) {
|
|
20470
|
-
return /* @__PURE__ */ jsxs119(
|
|
20538
|
+
return /* @__PURE__ */ jsxs119(Fragment35, { children: [
|
|
20471
20539
|
/* @__PURE__ */ jsx213(CardHeader, { children: /* @__PURE__ */ jsxs119(CardTitle, { className: "text-primary flex flex-col items-center pb-10 text-4xl", children: [
|
|
20472
20540
|
/* @__PURE__ */ jsx213(Image7, { src: "/logo.webp", alt: "Logo", width: 100, height: 100, priority: true }),
|
|
20473
20541
|
t("waitlist.invite.registration_title")
|
|
@@ -20480,13 +20548,13 @@ function Register() {
|
|
|
20480
20548
|
/* @__PURE__ */ jsx213(CardFooter, { className: "flex w-full flex-row justify-between", children: /* @__PURE__ */ jsx213(Link, { href: "#", className: "flex w-full justify-start", onClick: () => setComponentType(0 /* Login */), children: t("auth.buttons.login") }) })
|
|
20481
20549
|
] });
|
|
20482
20550
|
}
|
|
20483
|
-
return /* @__PURE__ */ jsxs119(
|
|
20551
|
+
return /* @__PURE__ */ jsxs119(Fragment35, { children: [
|
|
20484
20552
|
/* @__PURE__ */ jsxs119(CardHeader, { children: [
|
|
20485
20553
|
/* @__PURE__ */ jsxs119(CardTitle, { className: "text-primary flex flex-col items-center pb-10 text-4xl", children: [
|
|
20486
20554
|
/* @__PURE__ */ jsx213(Image7, { src: "/logo.webp", alt: "Logo", width: 100, height: 100, priority: true }),
|
|
20487
20555
|
t(`auth.buttons.register`)
|
|
20488
20556
|
] }),
|
|
20489
|
-
/* @__PURE__ */ jsx213(CardDescription, { className: "text-sm", children: showConfirmation ? /* @__PURE__ */ jsx213(
|
|
20557
|
+
/* @__PURE__ */ jsx213(CardDescription, { className: "text-sm", children: showConfirmation ? /* @__PURE__ */ jsx213(Fragment35, { children: " " }) : /* @__PURE__ */ jsx213(Fragment35, { children: t(`auth.register_description`) }) })
|
|
20490
20558
|
] }),
|
|
20491
20559
|
showConfirmation ? /* @__PURE__ */ jsx213(CardContent, { children: /* @__PURE__ */ jsx213(CardDescription, { className: "text-center text-xl", children: t("auth.register_confirmation") }) }) : /* @__PURE__ */ jsx213(Form, { ...form, children: /* @__PURE__ */ jsxs119("form", { onSubmit: form.handleSubmit(onSubmit), children: [
|
|
20492
20560
|
/* @__PURE__ */ jsxs119(CardContent, { children: [
|
|
@@ -20921,10 +20989,10 @@ __name(DisableTwoFactorDialog, "DisableTwoFactorDialog");
|
|
|
20921
20989
|
import { Edit, Key, Trash2 } from "lucide-react";
|
|
20922
20990
|
import { useTranslations as useTranslations93 } from "next-intl";
|
|
20923
20991
|
import { useState as useState80 } from "react";
|
|
20924
|
-
import { Fragment as
|
|
20992
|
+
import { Fragment as Fragment36, jsx as jsx219, jsxs as jsxs123 } from "react/jsx-runtime";
|
|
20925
20993
|
function PasskeyList({ passkeys, onRefresh }) {
|
|
20926
20994
|
const t = useTranslations93();
|
|
20927
|
-
const
|
|
20995
|
+
const dates = useDateFormatter();
|
|
20928
20996
|
const [renameDialogOpen, setRenameDialogOpen] = useState80(false);
|
|
20929
20997
|
const [selectedPasskey, setSelectedPasskey] = useState80(null);
|
|
20930
20998
|
const [newName, setNewName] = useState80("");
|
|
@@ -20978,7 +21046,7 @@ function PasskeyList({ passkeys, onRefresh }) {
|
|
|
20978
21046
|
if (passkeys.length === 0) {
|
|
20979
21047
|
return /* @__PURE__ */ jsx219("p", { className: "text-sm text-muted-foreground text-center py-4", children: t("auth.two_factor.no_passkeys") });
|
|
20980
21048
|
}
|
|
20981
|
-
return /* @__PURE__ */ jsxs123(
|
|
21049
|
+
return /* @__PURE__ */ jsxs123(Fragment36, { children: [
|
|
20982
21050
|
/* @__PURE__ */ jsx219("div", { className: "space-y-2", children: passkeys.map((passkey) => /* @__PURE__ */ jsxs123("div", { className: "flex items-center justify-between p-3 border rounded-lg", children: [
|
|
20983
21051
|
/* @__PURE__ */ jsxs123("div", { className: "flex items-center gap-3", children: [
|
|
20984
21052
|
/* @__PURE__ */ jsx219(Key, { className: "h-5 w-5 text-muted-foreground" }),
|
|
@@ -20986,7 +21054,7 @@ function PasskeyList({ passkeys, onRefresh }) {
|
|
|
20986
21054
|
/* @__PURE__ */ jsx219("p", { className: "font-medium", children: passkey.name }),
|
|
20987
21055
|
/* @__PURE__ */ jsxs123("p", { className: "text-sm text-muted-foreground", children: [
|
|
20988
21056
|
passkey.backedUp && "\u2601\uFE0F ",
|
|
20989
|
-
passkey.lastUsedAt ? `${t("auth.two_factor.last_used")}: ${
|
|
21057
|
+
passkey.lastUsedAt ? `${t("auth.two_factor.last_used")}: ${dates.format(passkey.lastUsedAt, "dateMedium")}` : t("auth.two_factor.never_used")
|
|
20990
21058
|
] })
|
|
20991
21059
|
] })
|
|
20992
21060
|
] }),
|
|
@@ -21117,7 +21185,7 @@ import { useState as useState82 } from "react";
|
|
|
21117
21185
|
import { jsx as jsx221, jsxs as jsxs125 } from "react/jsx-runtime";
|
|
21118
21186
|
function TotpAuthenticatorList({ authenticators, onDelete }) {
|
|
21119
21187
|
const t = useTranslations95();
|
|
21120
|
-
const
|
|
21188
|
+
const dates = useDateFormatter();
|
|
21121
21189
|
const [deletingId, setDeletingId] = useState82(null);
|
|
21122
21190
|
const handleDelete = /* @__PURE__ */ __name(async (id) => {
|
|
21123
21191
|
setDeletingId(id);
|
|
@@ -21144,7 +21212,7 @@ function TotpAuthenticatorList({ authenticators, onDelete }) {
|
|
|
21144
21212
|
auth.lastUsedAt && /* @__PURE__ */ jsxs125("p", { className: "text-xs text-muted-foreground", children: [
|
|
21145
21213
|
t("auth.two_factor.last_used"),
|
|
21146
21214
|
": ",
|
|
21147
|
-
auth.lastUsedAt
|
|
21215
|
+
dates.format(auth.lastUsedAt, "dateMedium")
|
|
21148
21216
|
] })
|
|
21149
21217
|
] })
|
|
21150
21218
|
] }),
|
|
@@ -21296,7 +21364,7 @@ function TotpSetupDialog({ onSuccess, trigger }) {
|
|
|
21296
21364
|
__name(TotpSetupDialog, "TotpSetupDialog");
|
|
21297
21365
|
|
|
21298
21366
|
// src/features/auth/components/two-factor/TwoFactorSettings.tsx
|
|
21299
|
-
import { Fragment as
|
|
21367
|
+
import { Fragment as Fragment37, jsx as jsx223, jsxs as jsxs127 } from "react/jsx-runtime";
|
|
21300
21368
|
function TwoFactorSettings() {
|
|
21301
21369
|
const t = useTranslations97();
|
|
21302
21370
|
const [status, setStatus] = useState84(null);
|
|
@@ -21383,7 +21451,7 @@ function TwoFactorSettings() {
|
|
|
21383
21451
|
] }),
|
|
21384
21452
|
/* @__PURE__ */ jsx223(BackupCodesDialog, { remainingCodes: status?.backupCodesCount ?? 0, onRegenerate: handleRefresh })
|
|
21385
21453
|
] }) }),
|
|
21386
|
-
!isEnabled && (authenticators.length > 0 || passkeys.length > 0) && /* @__PURE__ */ jsxs127(
|
|
21454
|
+
!isEnabled && (authenticators.length > 0 || passkeys.length > 0) && /* @__PURE__ */ jsxs127(Fragment37, { children: [
|
|
21387
21455
|
/* @__PURE__ */ jsx223(Separator, {}),
|
|
21388
21456
|
/* @__PURE__ */ jsxs127("div", { className: "flex items-center justify-between", children: [
|
|
21389
21457
|
/* @__PURE__ */ jsxs127("div", { children: [
|
|
@@ -21393,7 +21461,7 @@ function TwoFactorSettings() {
|
|
|
21393
21461
|
/* @__PURE__ */ jsx223(Button, { onClick: handleEnable2FA, disabled: isEnabling, children: isEnabling ? t("common.loading") : t("auth.two_factor.enable_button") })
|
|
21394
21462
|
] })
|
|
21395
21463
|
] }),
|
|
21396
|
-
isEnabled && /* @__PURE__ */ jsxs127(
|
|
21464
|
+
isEnabled && /* @__PURE__ */ jsxs127(Fragment37, { children: [
|
|
21397
21465
|
/* @__PURE__ */ jsx223(Separator, {}),
|
|
21398
21466
|
/* @__PURE__ */ jsxs127("div", { className: "flex items-center justify-between", children: [
|
|
21399
21467
|
/* @__PURE__ */ jsxs127("div", { children: [
|
|
@@ -21479,11 +21547,11 @@ function GoogleSignInButton({ referralCode, source }) {
|
|
|
21479
21547
|
__name(GoogleSignInButton, "GoogleSignInButton");
|
|
21480
21548
|
|
|
21481
21549
|
// src/features/auth/components/details/LandingComponent.tsx
|
|
21482
|
-
import { Fragment as
|
|
21550
|
+
import { Fragment as Fragment38, jsx as jsx226, jsxs as jsxs129 } from "react/jsx-runtime";
|
|
21483
21551
|
function LandingComponent() {
|
|
21484
21552
|
const t = useTranslations99();
|
|
21485
21553
|
const { setComponentType } = useAuthContext();
|
|
21486
|
-
return /* @__PURE__ */ jsxs129(
|
|
21554
|
+
return /* @__PURE__ */ jsxs129(Fragment38, { children: [
|
|
21487
21555
|
/* @__PURE__ */ jsxs129(CardHeader, { className: "mb-4", "data-testid": "page-pre-login-container", children: [
|
|
21488
21556
|
/* @__PURE__ */ jsxs129(CardTitle, { className: "text-primary flex flex-col items-center gap-y-8 pb-8 text-4xl", children: [
|
|
21489
21557
|
/* @__PURE__ */ jsx226(Image9, { src: "/logo.webp", alt: "Logo", width: 100, height: 100, priority: true }),
|
|
@@ -21492,7 +21560,7 @@ function LandingComponent() {
|
|
|
21492
21560
|
/* @__PURE__ */ jsx226(CardDescription, { className: "flex w-full justify-center text-center text-sm", children: t(`common.description`) })
|
|
21493
21561
|
] }),
|
|
21494
21562
|
/* @__PURE__ */ jsxs129(CardFooter, { className: "mt-4 flex w-full flex-col justify-between gap-y-4", children: [
|
|
21495
|
-
isInternalAuthEnabled() && /* @__PURE__ */ jsxs129(
|
|
21563
|
+
isInternalAuthEnabled() && /* @__PURE__ */ jsxs129(Fragment38, { children: [
|
|
21496
21564
|
isRegistrationAllowed() && /* @__PURE__ */ jsx226(
|
|
21497
21565
|
Link,
|
|
21498
21566
|
{
|
|
@@ -21518,7 +21586,7 @@ import Image10 from "next/image";
|
|
|
21518
21586
|
import { useEffect as useEffect62, useState as useState85 } from "react";
|
|
21519
21587
|
import { useForm as useForm7 } from "react-hook-form";
|
|
21520
21588
|
import { z as z8 } from "zod";
|
|
21521
|
-
import { Fragment as
|
|
21589
|
+
import { Fragment as Fragment39, jsx as jsx227, jsxs as jsxs130 } from "react/jsx-runtime";
|
|
21522
21590
|
function AcceptInvitation() {
|
|
21523
21591
|
const { setComponentType, params, setParams } = useAuthContext();
|
|
21524
21592
|
const [showConfirmation, setShowConfirmation] = useState85(false);
|
|
@@ -21581,13 +21649,13 @@ function AcceptInvitation() {
|
|
|
21581
21649
|
errorToast({ title: t(`common.errors.error`), error });
|
|
21582
21650
|
}
|
|
21583
21651
|
}, "onSubmit");
|
|
21584
|
-
return /* @__PURE__ */ jsxs130(
|
|
21652
|
+
return /* @__PURE__ */ jsxs130(Fragment39, { children: [
|
|
21585
21653
|
/* @__PURE__ */ jsxs130(CardHeader, { children: [
|
|
21586
21654
|
/* @__PURE__ */ jsxs130(CardTitle, { className: "text-primary flex flex-col items-center pb-10 text-4xl", children: [
|
|
21587
21655
|
/* @__PURE__ */ jsx227(Image10, { src: "/logo.webp", alt: "Logo", width: 100, height: 100, priority: true }),
|
|
21588
21656
|
t("auth.accept_invitation")
|
|
21589
21657
|
] }),
|
|
21590
|
-
/* @__PURE__ */ jsx227(CardDescription, { className: "text-center text-sm", children: error ? /* @__PURE__ */ jsx227(
|
|
21658
|
+
/* @__PURE__ */ jsx227(CardDescription, { className: "text-center text-sm", children: error ? /* @__PURE__ */ jsx227(Fragment39, { children: t("auth.errors.activating_account") }) : /* @__PURE__ */ jsx227(Fragment39, { children: t("auth.select_password") }) })
|
|
21591
21659
|
] }),
|
|
21592
21660
|
/* @__PURE__ */ jsx227(CardContent, { children: showConfirmation ? /* @__PURE__ */ jsx227(CardDescription, { className: "text-center text-xl", children: t("auth.activation_description") }) : error ? /* @__PURE__ */ jsx227(CardDescription, { className: "text-center text-xl", children: error }) : /* @__PURE__ */ jsx227(Form, { ...form, children: /* @__PURE__ */ jsxs130("form", { onSubmit: form.handleSubmit(onSubmit), children: [
|
|
21593
21661
|
/* @__PURE__ */ jsx227(
|
|
@@ -21618,7 +21686,7 @@ __name(AcceptInvitation, "AcceptInvitation");
|
|
|
21618
21686
|
import { useTranslations as useTranslations101 } from "next-intl";
|
|
21619
21687
|
import Image11 from "next/image";
|
|
21620
21688
|
import { useEffect as useEffect63, useState as useState86 } from "react";
|
|
21621
|
-
import { Fragment as
|
|
21689
|
+
import { Fragment as Fragment40, jsx as jsx228, jsxs as jsxs131 } from "react/jsx-runtime";
|
|
21622
21690
|
function ActivateAccount() {
|
|
21623
21691
|
const { setComponentType, params, setParams } = useAuthContext();
|
|
21624
21692
|
const [showConfirmation, setShowConfirmation] = useState86(false);
|
|
@@ -21651,15 +21719,15 @@ function ActivateAccount() {
|
|
|
21651
21719
|
setError(t(`auth.errors.invalid_invitation_code`));
|
|
21652
21720
|
}
|
|
21653
21721
|
}, []);
|
|
21654
|
-
return /* @__PURE__ */ jsxs131(
|
|
21722
|
+
return /* @__PURE__ */ jsxs131(Fragment40, { children: [
|
|
21655
21723
|
/* @__PURE__ */ jsxs131(CardHeader, { children: [
|
|
21656
21724
|
/* @__PURE__ */ jsxs131(CardTitle, { className: "text-primary flex flex-col items-center pb-10 text-4xl", children: [
|
|
21657
21725
|
/* @__PURE__ */ jsx228(Image11, { src: "/logo.webp", alt: "Logo", width: 100, height: 100, priority: true }),
|
|
21658
21726
|
t("auth.accept_invitation")
|
|
21659
21727
|
] }),
|
|
21660
|
-
/* @__PURE__ */ jsx228(CardDescription, { className: "text-center text-sm", children: error ? /* @__PURE__ */ jsx228(
|
|
21728
|
+
/* @__PURE__ */ jsx228(CardDescription, { className: "text-center text-sm", children: error ? /* @__PURE__ */ jsx228(Fragment40, { children: t("auth.errors.activating_account") }) : /* @__PURE__ */ jsx228(Fragment40, { children: " " }) })
|
|
21661
21729
|
] }),
|
|
21662
|
-
/* @__PURE__ */ jsx228(CardContent, { children: /* @__PURE__ */ jsx228(CardDescription, { className: "text-center text-xl", children: showConfirmation ? /* @__PURE__ */ jsx228(
|
|
21730
|
+
/* @__PURE__ */ jsx228(CardContent, { children: /* @__PURE__ */ jsx228(CardDescription, { className: "text-center text-xl", children: showConfirmation ? /* @__PURE__ */ jsx228(Fragment40, { children: t("auth.activation_description") }) : error ? /* @__PURE__ */ jsx228(Fragment40, { children: error }) : /* @__PURE__ */ jsx228(Fragment40, { children: t("auth.activation_wait") }) }) })
|
|
21663
21731
|
] });
|
|
21664
21732
|
}
|
|
21665
21733
|
__name(ActivateAccount, "ActivateAccount");
|
|
@@ -21697,7 +21765,7 @@ import Image12 from "next/image";
|
|
|
21697
21765
|
import { useState as useState88 } from "react";
|
|
21698
21766
|
import { useForm as useForm8 } from "react-hook-form";
|
|
21699
21767
|
import { z as z9 } from "zod";
|
|
21700
|
-
import { Fragment as
|
|
21768
|
+
import { Fragment as Fragment41, jsx as jsx229, jsxs as jsxs132 } from "react/jsx-runtime";
|
|
21701
21769
|
function ForgotPassword() {
|
|
21702
21770
|
const t = useTranslations102();
|
|
21703
21771
|
const { setComponentType } = useAuthContext();
|
|
@@ -21724,13 +21792,13 @@ function ForgotPassword() {
|
|
|
21724
21792
|
errorToast({ title: t("common.errors.error"), error: e });
|
|
21725
21793
|
}
|
|
21726
21794
|
}, "onSubmit");
|
|
21727
|
-
return /* @__PURE__ */ jsxs132(
|
|
21795
|
+
return /* @__PURE__ */ jsxs132(Fragment41, { children: [
|
|
21728
21796
|
/* @__PURE__ */ jsxs132(CardHeader, { "data-testid": "page-forgot-password-container", children: [
|
|
21729
21797
|
/* @__PURE__ */ jsxs132(CardTitle, { className: "text-primary flex flex-col items-center pb-10 text-4xl", children: [
|
|
21730
21798
|
/* @__PURE__ */ jsx229(Image12, { src: "/logo.webp", alt: "Logo", width: 100, height: 100, priority: true }),
|
|
21731
21799
|
t("auth.buttons.forgot_password")
|
|
21732
21800
|
] }),
|
|
21733
|
-
/* @__PURE__ */ jsx229(CardDescription, { className: "text-sm", children: showConfirmation ? /* @__PURE__ */ jsx229(
|
|
21801
|
+
/* @__PURE__ */ jsx229(CardDescription, { className: "text-sm", children: showConfirmation ? /* @__PURE__ */ jsx229(Fragment41, { children: " " }) : /* @__PURE__ */ jsx229(Fragment41, { children: t(`auth.add_email_to_reset`) }) })
|
|
21734
21802
|
] }),
|
|
21735
21803
|
showConfirmation ? /* @__PURE__ */ jsx229(CardContent, { children: /* @__PURE__ */ jsx229(CardDescription, { className: "text-center text-xl", children: t(`auth.reset_confirmation`) }) }) : /* @__PURE__ */ jsx229(Form, { ...form, children: /* @__PURE__ */ jsxs132("form", { onSubmit: form.handleSubmit(onSubmit), children: [
|
|
21736
21804
|
/* @__PURE__ */ jsxs132(CardContent, { children: [
|
|
@@ -21769,7 +21837,7 @@ import { useRouter, useSearchParams as useSearchParams3 } from "next/navigation"
|
|
|
21769
21837
|
import { useEffect as useEffect65, useState as useState89 } from "react";
|
|
21770
21838
|
import { useForm as useForm9 } from "react-hook-form";
|
|
21771
21839
|
import { z as z10 } from "zod";
|
|
21772
|
-
import { Fragment as
|
|
21840
|
+
import { Fragment as Fragment42, jsx as jsx230, jsxs as jsxs133 } from "react/jsx-runtime";
|
|
21773
21841
|
function Login() {
|
|
21774
21842
|
const t = useTranslations103();
|
|
21775
21843
|
const { setUser } = useCurrentUserContext();
|
|
@@ -21835,7 +21903,7 @@ function Login() {
|
|
|
21835
21903
|
});
|
|
21836
21904
|
}
|
|
21837
21905
|
}, "onSubmit");
|
|
21838
|
-
return /* @__PURE__ */ jsxs133(
|
|
21906
|
+
return /* @__PURE__ */ jsxs133(Fragment42, { children: [
|
|
21839
21907
|
/* @__PURE__ */ jsxs133(CardHeader, { "data-testid": "page-login-container", children: [
|
|
21840
21908
|
/* @__PURE__ */ jsxs133(CardTitle, { className: "text-primary flex flex-col items-center pb-10 text-4xl", children: [
|
|
21841
21909
|
/* @__PURE__ */ jsx230(Image13, { src: "/logo.webp", alt: "Logo", width: 100, height: 100, priority: true }),
|
|
@@ -21844,7 +21912,7 @@ function Login() {
|
|
|
21844
21912
|
/* @__PURE__ */ jsx230(CardDescription, { className: "text-sm", children: t(`auth.login_description`) })
|
|
21845
21913
|
] }),
|
|
21846
21914
|
/* @__PURE__ */ jsx230(Form, { ...form, children: /* @__PURE__ */ jsxs133("form", { onSubmit: form.handleSubmit(onSubmit), children: [
|
|
21847
|
-
/* @__PURE__ */ jsx230(CardContent, { children: isInternalAuthEnabled() && /* @__PURE__ */ jsxs133(
|
|
21915
|
+
/* @__PURE__ */ jsx230(CardContent, { children: isInternalAuthEnabled() && /* @__PURE__ */ jsxs133(Fragment42, { children: [
|
|
21848
21916
|
/* @__PURE__ */ jsx230(
|
|
21849
21917
|
FormInput,
|
|
21850
21918
|
{
|
|
@@ -21911,7 +21979,7 @@ function clearClientStorage(keys) {
|
|
|
21911
21979
|
__name(clearClientStorage, "clearClientStorage");
|
|
21912
21980
|
|
|
21913
21981
|
// src/features/auth/components/forms/Logout.tsx
|
|
21914
|
-
import { Fragment as
|
|
21982
|
+
import { Fragment as Fragment43, jsx as jsx231 } from "react/jsx-runtime";
|
|
21915
21983
|
function Logout({ storageKeys, beforeLogout }) {
|
|
21916
21984
|
const generateUrl = usePageUrlGenerator();
|
|
21917
21985
|
useEffect66(() => {
|
|
@@ -21923,7 +21991,7 @@ function Logout({ storageKeys, beforeLogout }) {
|
|
|
21923
21991
|
}, "logOut");
|
|
21924
21992
|
logOut();
|
|
21925
21993
|
}, []);
|
|
21926
|
-
return /* @__PURE__ */ jsx231(
|
|
21994
|
+
return /* @__PURE__ */ jsx231(Fragment43, {});
|
|
21927
21995
|
}
|
|
21928
21996
|
__name(Logout, "Logout");
|
|
21929
21997
|
|
|
@@ -21964,7 +22032,7 @@ import Image14 from "next/image";
|
|
|
21964
22032
|
import { useEffect as useEffect68, useState as useState90 } from "react";
|
|
21965
22033
|
import { useForm as useForm10 } from "react-hook-form";
|
|
21966
22034
|
import { z as z11 } from "zod";
|
|
21967
|
-
import { Fragment as
|
|
22035
|
+
import { Fragment as Fragment44, jsx as jsx232, jsxs as jsxs134 } from "react/jsx-runtime";
|
|
21968
22036
|
function ResetPassword() {
|
|
21969
22037
|
const { setComponentType, params, setParams } = useAuthContext();
|
|
21970
22038
|
const [showConfirmation, setShowConfirmation] = useState90(false);
|
|
@@ -22027,13 +22095,13 @@ function ResetPassword() {
|
|
|
22027
22095
|
errorToast({ title: t(`common.errors.error`), error });
|
|
22028
22096
|
}
|
|
22029
22097
|
}, "onSubmit");
|
|
22030
|
-
return /* @__PURE__ */ jsxs134(
|
|
22098
|
+
return /* @__PURE__ */ jsxs134(Fragment44, { children: [
|
|
22031
22099
|
/* @__PURE__ */ jsxs134(CardHeader, { children: [
|
|
22032
22100
|
/* @__PURE__ */ jsxs134(CardTitle, { className: "text-primary flex flex-col items-center pb-10 text-4xl", children: [
|
|
22033
22101
|
/* @__PURE__ */ jsx232(Image14, { src: "/logo.webp", alt: "Logo", width: 100, height: 100, priority: true }),
|
|
22034
22102
|
t(`auth.password_reset`)
|
|
22035
22103
|
] }),
|
|
22036
|
-
/* @__PURE__ */ jsx232(CardDescription, { className: "text-center text-sm", children: error ? /* @__PURE__ */ jsx232(
|
|
22104
|
+
/* @__PURE__ */ jsx232(CardDescription, { className: "text-center text-sm", children: error ? /* @__PURE__ */ jsx232(Fragment44, { children: t(`auth.errors.password_reset_error`) }) : /* @__PURE__ */ jsx232(Fragment44, { children: t(`auth.reset_password`) }) })
|
|
22037
22105
|
] }),
|
|
22038
22106
|
/* @__PURE__ */ jsx232(CardContent, { children: showConfirmation ? /* @__PURE__ */ jsx232(CardDescription, { className: "text-center text-xl", children: t(`auth.reset_success_description`) }) : error ? /* @__PURE__ */ jsx232(CardDescription, { className: "text-center text-xl", children: error }) : /* @__PURE__ */ jsx232(Form, { ...form, children: /* @__PURE__ */ jsxs134("form", { onSubmit: form.handleSubmit(onSubmit), children: [
|
|
22039
22107
|
/* @__PURE__ */ jsx232(FormPassword, { form, id: "password", name: t(`user.fields.password.label`) }),
|
|
@@ -22093,7 +22161,7 @@ function PasskeyButton({ pendingToken, onSuccess, onError, disabled = false }) {
|
|
|
22093
22161
|
__name(PasskeyButton, "PasskeyButton");
|
|
22094
22162
|
|
|
22095
22163
|
// src/features/auth/components/forms/TwoFactorChallenge.tsx
|
|
22096
|
-
import { Fragment as
|
|
22164
|
+
import { Fragment as Fragment45, jsx as jsx234, jsxs as jsxs135 } from "react/jsx-runtime";
|
|
22097
22165
|
function TwoFactorChallenge() {
|
|
22098
22166
|
const t = useTranslations106();
|
|
22099
22167
|
const { setUser } = useCurrentUserContext();
|
|
@@ -22174,7 +22242,7 @@ function TwoFactorChallenge() {
|
|
|
22174
22242
|
const hasTotp = availableMethods.includes("totp");
|
|
22175
22243
|
const hasPasskey = availableMethods.includes("passkey");
|
|
22176
22244
|
const hasBackup = availableMethods.includes("backup");
|
|
22177
|
-
return /* @__PURE__ */ jsxs135(
|
|
22245
|
+
return /* @__PURE__ */ jsxs135(Fragment45, { children: [
|
|
22178
22246
|
/* @__PURE__ */ jsxs135(CardHeader, { "data-testid": "page-2fa-challenge", children: [
|
|
22179
22247
|
/* @__PURE__ */ jsx234(CardTitle, { className: "text-primary", children: t("auth.two_factor.verification_required") }),
|
|
22180
22248
|
/* @__PURE__ */ jsx234(CardDescription, { children: t("auth.two_factor.enter_verification_code") })
|
|
@@ -22478,12 +22546,12 @@ import { useMemo as useMemo43 } from "react";
|
|
|
22478
22546
|
import { TrashIcon } from "lucide-react";
|
|
22479
22547
|
import { useTranslations as useTranslations109 } from "next-intl";
|
|
22480
22548
|
import { useState as useState94 } from "react";
|
|
22481
|
-
import { Fragment as
|
|
22549
|
+
import { Fragment as Fragment46, jsx as jsx237, jsxs as jsxs137 } from "react/jsx-runtime";
|
|
22482
22550
|
function AiConnectionDeleter({ connection }) {
|
|
22483
22551
|
const t = useTranslations109();
|
|
22484
22552
|
const { refresh } = useAiConnections();
|
|
22485
22553
|
const [open, setOpen] = useState94(false);
|
|
22486
|
-
return /* @__PURE__ */ jsxs137(
|
|
22554
|
+
return /* @__PURE__ */ jsxs137(Fragment46, { children: [
|
|
22487
22555
|
/* @__PURE__ */ jsx237(
|
|
22488
22556
|
Button,
|
|
22489
22557
|
{
|
|
@@ -22763,7 +22831,7 @@ function AiConnectionEditor({
|
|
|
22763
22831
|
__name(AiConnectionEditor, "AiConnectionEditor");
|
|
22764
22832
|
|
|
22765
22833
|
// src/features/ai-connection/components/lists/AiConnectionTypeCard.tsx
|
|
22766
|
-
import { Fragment as
|
|
22834
|
+
import { Fragment as Fragment47, jsx as jsx239, jsxs as jsxs139 } from "react/jsx-runtime";
|
|
22767
22835
|
function toInput(connection, overrides) {
|
|
22768
22836
|
return {
|
|
22769
22837
|
id: connection.id,
|
|
@@ -22886,7 +22954,7 @@ function AiConnectionTypeCard({ connectionType }) {
|
|
|
22886
22954
|
children: /* @__PURE__ */ jsx239(ChevronDownIcon10, {})
|
|
22887
22955
|
}
|
|
22888
22956
|
),
|
|
22889
|
-
!readOnly && /* @__PURE__ */ jsxs139(
|
|
22957
|
+
!readOnly && /* @__PURE__ */ jsxs139(Fragment47, { children: [
|
|
22890
22958
|
/* @__PURE__ */ jsx239(
|
|
22891
22959
|
AiConnectionEditor,
|
|
22892
22960
|
{
|
|
@@ -23144,7 +23212,7 @@ var STATUS_VARIANTS = {
|
|
|
23144
23212
|
};
|
|
23145
23213
|
var useEmailBlastTableStructure = /* @__PURE__ */ __name((params) => {
|
|
23146
23214
|
const t = useTranslations117();
|
|
23147
|
-
const
|
|
23215
|
+
const dates = useDateFormatter();
|
|
23148
23216
|
const generateUrl = usePageUrlGenerator();
|
|
23149
23217
|
const tableData = useMemo45(() => {
|
|
23150
23218
|
return params.data.map((blast) => {
|
|
@@ -23207,7 +23275,7 @@ var useEmailBlastTableStructure = /* @__PURE__ */ __name((params) => {
|
|
|
23207
23275
|
cell: /* @__PURE__ */ __name(({ row }) => {
|
|
23208
23276
|
const blast = row.original.jsonApiData;
|
|
23209
23277
|
if (!blast.sentAt) return /* @__PURE__ */ jsx245("span", { className: "text-muted-foreground text-xs", children: "\u2014" });
|
|
23210
|
-
return /* @__PURE__ */ jsx245("span", { className: "text-sm", children: blast.sentAt
|
|
23278
|
+
return /* @__PURE__ */ jsx245("span", { className: "text-sm", children: dates.format(blast.sentAt, "date") });
|
|
23211
23279
|
}, "cell"),
|
|
23212
23280
|
enableSorting: false,
|
|
23213
23281
|
enableHiding: false
|
|
@@ -23222,7 +23290,7 @@ var useEmailBlastTableStructure = /* @__PURE__ */ __name((params) => {
|
|
|
23222
23290
|
};
|
|
23223
23291
|
const columns = useMemo45(() => {
|
|
23224
23292
|
return params.fields.map((field) => fieldColumnMap[field]?.()).filter((col) => col !== void 0);
|
|
23225
|
-
}, [params.fields, fieldColumnMap, t, generateUrl,
|
|
23293
|
+
}, [params.fields, fieldColumnMap, t, generateUrl, dates]);
|
|
23226
23294
|
return useMemo45(() => ({ data: tableData, columns }), [tableData, columns]);
|
|
23227
23295
|
}, "useEmailBlastTableStructure");
|
|
23228
23296
|
registerTableGenerator("email-blasts", useEmailBlastTableStructure);
|
|
@@ -23234,7 +23302,7 @@ import { useCallback as useCallback44, useMemo as useMemo46 } from "react";
|
|
|
23234
23302
|
import { useForm as useForm12 } from "react-hook-form";
|
|
23235
23303
|
import { v4 as v413 } from "uuid";
|
|
23236
23304
|
import { z as z13 } from "zod";
|
|
23237
|
-
import { Fragment as
|
|
23305
|
+
import { Fragment as Fragment48, jsx as jsx246, jsxs as jsxs143 } from "react/jsx-runtime";
|
|
23238
23306
|
var TEMPLATE_VARIABLES = ["{{name}}", "{{email}}", "{{url}}"];
|
|
23239
23307
|
var MARKETING_ONLY_VARIABLES = ["{{unsubscribeAllUrl}}"];
|
|
23240
23308
|
function EmailBlastEditorInternal({
|
|
@@ -23338,7 +23406,7 @@ function EmailBlastEditorInternal({
|
|
|
23338
23406
|
name: t("emailBlasts.editor.fields.body.label"),
|
|
23339
23407
|
className: "min-h-72",
|
|
23340
23408
|
isRequired: true,
|
|
23341
|
-
description: /* @__PURE__ */ jsxs143(
|
|
23409
|
+
description: /* @__PURE__ */ jsxs143(Fragment48, { children: [
|
|
23342
23410
|
/* @__PURE__ */ jsxs143("span", { className: "block", children: [
|
|
23343
23411
|
t("emailBlasts.editor.variablesHint"),
|
|
23344
23412
|
" ",
|
|
@@ -23410,7 +23478,7 @@ import { useCallback as useCallback45, useEffect as useEffect73, useState as use
|
|
|
23410
23478
|
import { LoaderCircleIcon as LoaderCircleIcon4, SendIcon as SendIcon2 } from "lucide-react";
|
|
23411
23479
|
import { useTranslations as useTranslations121 } from "next-intl";
|
|
23412
23480
|
import { useEffect as useEffect72, useState as useState97 } from "react";
|
|
23413
|
-
import { Fragment as
|
|
23481
|
+
import { Fragment as Fragment49, jsx as jsx249, jsxs as jsxs144 } from "react/jsx-runtime";
|
|
23414
23482
|
function EmailBlastSendDialog({ blast, onSuccess }) {
|
|
23415
23483
|
const t = useTranslations121();
|
|
23416
23484
|
const [open, setOpen] = useState97(false);
|
|
@@ -23455,7 +23523,7 @@ function EmailBlastSendDialog({ blast, onSuccess }) {
|
|
|
23455
23523
|
] }),
|
|
23456
23524
|
/* @__PURE__ */ jsxs144("div", { className: "flex justify-end", children: [
|
|
23457
23525
|
/* @__PURE__ */ jsx249(Button, { className: "me-2", variant: "outline", type: "button", onClick: () => setOpen(false), disabled: isSending, children: t("emailBlasts.send.cancel") }),
|
|
23458
|
-
/* @__PURE__ */ jsx249(Button, { type: "button", variant: "default", onClick: handleSend, disabled: !canSend, children: isSending ? /* @__PURE__ */ jsxs144(
|
|
23526
|
+
/* @__PURE__ */ jsx249(Button, { type: "button", variant: "default", onClick: handleSend, disabled: !canSend, children: isSending ? /* @__PURE__ */ jsxs144(Fragment49, { children: [
|
|
23459
23527
|
t("emailBlasts.send.action"),
|
|
23460
23528
|
/* @__PURE__ */ jsx249(LoaderCircleIcon4, { className: "animate-spin-slow h-5 w-5" })
|
|
23461
23529
|
] }) : t("emailBlasts.send.action") })
|
|
@@ -23494,7 +23562,7 @@ function EmailBlastSendTestButton({ blast }) {
|
|
|
23494
23562
|
__name(EmailBlastSendTestButton, "EmailBlastSendTestButton");
|
|
23495
23563
|
function EmailBlastContainer({ blastId }) {
|
|
23496
23564
|
const t = useTranslations122();
|
|
23497
|
-
const
|
|
23565
|
+
const dates = useDateFormatter();
|
|
23498
23566
|
const generateUrl = usePageUrlGenerator();
|
|
23499
23567
|
const [blast, setBlast] = useState98(void 0);
|
|
23500
23568
|
const reload = useCallback45(async () => {
|
|
@@ -23570,7 +23638,7 @@ function EmailBlastContainer({ blastId }) {
|
|
|
23570
23638
|
DetailField,
|
|
23571
23639
|
{
|
|
23572
23640
|
label: t("emailBlasts.detail.sentAt"),
|
|
23573
|
-
value: blast.sentAt ? blast.sentAt
|
|
23641
|
+
value: blast.sentAt ? dates.format(blast.sentAt, "dateTimeMedium") : "\u2014"
|
|
23574
23642
|
}
|
|
23575
23643
|
),
|
|
23576
23644
|
/* @__PURE__ */ jsx250(DetailField, { label: t("emailBlasts.list.columns.subject"), value: blast.subject }),
|
|
@@ -23704,7 +23772,7 @@ function HowToCommandViewer({ howTo, onBack, onStartChat }) {
|
|
|
23704
23772
|
__name(HowToCommandViewer, "HowToCommandViewer");
|
|
23705
23773
|
|
|
23706
23774
|
// src/features/how-to/components/containers/HowToCommand.tsx
|
|
23707
|
-
import { Fragment as
|
|
23775
|
+
import { Fragment as Fragment50, jsx as jsx252, jsxs as jsxs147 } from "react/jsx-runtime";
|
|
23708
23776
|
function matchPage(pathname, pattern) {
|
|
23709
23777
|
if (pattern.includes(":")) {
|
|
23710
23778
|
const pathSegments = pathname.split("/").filter(Boolean);
|
|
@@ -23775,7 +23843,7 @@ function HowToCommand({ pathname, contextKeys, extraGroups, onStartChat }) {
|
|
|
23775
23843
|
setSelectedHowTo(null);
|
|
23776
23844
|
if (onStartChat) onStartChat();
|
|
23777
23845
|
}, "handleStartChat");
|
|
23778
|
-
return /* @__PURE__ */ jsxs147(
|
|
23846
|
+
return /* @__PURE__ */ jsxs147(Fragment50, { children: [
|
|
23779
23847
|
/* @__PURE__ */ jsxs147(
|
|
23780
23848
|
SidebarMenuButton,
|
|
23781
23849
|
{
|
|
@@ -23943,7 +24011,7 @@ import { useTranslations as useTranslations128 } from "next-intl";
|
|
|
23943
24011
|
// src/features/how-to/hooks/useHowToTableStructure.tsx
|
|
23944
24012
|
import { useTranslations as useTranslations126 } from "next-intl";
|
|
23945
24013
|
import { useMemo as useMemo49 } from "react";
|
|
23946
|
-
import { Fragment as
|
|
24014
|
+
import { Fragment as Fragment51, jsx as jsx256 } from "react/jsx-runtime";
|
|
23947
24015
|
var useHowToTableStructure = /* @__PURE__ */ __name((params) => {
|
|
23948
24016
|
const t = useTranslations126();
|
|
23949
24017
|
const generateUrl = usePageUrlGenerator();
|
|
@@ -23980,7 +24048,7 @@ var useHowToTableStructure = /* @__PURE__ */ __name((params) => {
|
|
|
23980
24048
|
id: "description",
|
|
23981
24049
|
accessorKey: "description",
|
|
23982
24050
|
header: t(`howto.fields.description.label`),
|
|
23983
|
-
cell: /* @__PURE__ */ __name(({ row }) => /* @__PURE__ */ jsx256(
|
|
24051
|
+
cell: /* @__PURE__ */ __name(({ row }) => /* @__PURE__ */ jsx256(Fragment51, { children: row.getValue("description") }), "cell"),
|
|
23984
24052
|
enableSorting: false,
|
|
23985
24053
|
enableHiding: false
|
|
23986
24054
|
}),
|
|
@@ -23988,7 +24056,7 @@ var useHowToTableStructure = /* @__PURE__ */ __name((params) => {
|
|
|
23988
24056
|
id: "pages",
|
|
23989
24057
|
accessorKey: "pages",
|
|
23990
24058
|
header: t(`howto.fields.pages.label`),
|
|
23991
|
-
cell: /* @__PURE__ */ __name(({ row }) => /* @__PURE__ */ jsx256(
|
|
24059
|
+
cell: /* @__PURE__ */ __name(({ row }) => /* @__PURE__ */ jsx256(Fragment51, { children: row.getValue("pages") }), "cell"),
|
|
23992
24060
|
enableSorting: false,
|
|
23993
24061
|
enableHiding: false
|
|
23994
24062
|
}),
|
|
@@ -24074,7 +24142,7 @@ __name(HowToListContainer, "HowToListContainer");
|
|
|
24074
24142
|
import { CircleX as CircleX3, RefreshCwIcon as RefreshCwIcon5, SearchIcon as SearchIcon7, XIcon as XIcon13 } from "lucide-react";
|
|
24075
24143
|
import { useTranslations as useTranslations129 } from "next-intl";
|
|
24076
24144
|
import { useCallback as useCallback47, useEffect as useEffect75, useRef as useRef42, useState as useState101 } from "react";
|
|
24077
|
-
import { Fragment as
|
|
24145
|
+
import { Fragment as Fragment52, jsx as jsx260, jsxs as jsxs149 } from "react/jsx-runtime";
|
|
24078
24146
|
function HowToSelector({
|
|
24079
24147
|
id,
|
|
24080
24148
|
form,
|
|
@@ -24159,7 +24227,7 @@ function HowToSelector({
|
|
|
24159
24227
|
search("");
|
|
24160
24228
|
}
|
|
24161
24229
|
}
|
|
24162
|
-
) : /* @__PURE__ */ jsx260(
|
|
24230
|
+
) : /* @__PURE__ */ jsx260(Fragment52, {})
|
|
24163
24231
|
] }),
|
|
24164
24232
|
/* @__PURE__ */ jsx260(CommandList, { children: data.data && data.data.length > 0 && data.data.map((howTo) => /* @__PURE__ */ jsx260(
|
|
24165
24233
|
CommandItem,
|
|
@@ -24372,7 +24440,7 @@ function ReferencesTab({ references }) {
|
|
|
24372
24440
|
__name(ReferencesTab, "ReferencesTab");
|
|
24373
24441
|
|
|
24374
24442
|
// src/features/assistant-message/components/parts/tabs/CitationsTab.tsx
|
|
24375
|
-
import { Fragment as
|
|
24443
|
+
import { Fragment as Fragment53, useState as useState103 } from "react";
|
|
24376
24444
|
import { useTranslations as useTranslations135 } from "next-intl";
|
|
24377
24445
|
import { ChevronDown as ChevronDown3, HelpCircle } from "lucide-react";
|
|
24378
24446
|
import ReactMarkdown2 from "react-markdown";
|
|
@@ -24437,7 +24505,7 @@ function CitationsTab({ citations, sources }) {
|
|
|
24437
24505
|
const typeLabel = chunk.nodeType ? entityLabel(chunk.nodeType) : t("features.assistant.message.sources.source");
|
|
24438
24506
|
const fallbackName = chunk.nodeId ? `${typeLabel} ${chunk.nodeId.slice(0, 8)}` : typeLabel;
|
|
24439
24507
|
const sourceName = resolved?.name ?? fallbackName;
|
|
24440
|
-
return /* @__PURE__ */ jsxs153(
|
|
24508
|
+
return /* @__PURE__ */ jsxs153(Fragment53, { children: [
|
|
24441
24509
|
/* @__PURE__ */ jsxs153(TableRow, { children: [
|
|
24442
24510
|
/* @__PURE__ */ jsx265(TableCell, { children: /* @__PURE__ */ jsxs153(
|
|
24443
24511
|
"div",
|
|
@@ -24834,7 +24902,7 @@ function MessageSourcesContainer({ message, isLatestAssistant, onSelectFollowUp
|
|
|
24834
24902
|
__name(MessageSourcesContainer, "MessageSourcesContainer");
|
|
24835
24903
|
|
|
24836
24904
|
// src/features/assistant-message/components/MessageItem.tsx
|
|
24837
|
-
import { Fragment as
|
|
24905
|
+
import { Fragment as Fragment54, jsx as jsx271, jsxs as jsxs157 } from "react/jsx-runtime";
|
|
24838
24906
|
var MENTION_HREF = /^mention:\/\/([^/]+)\/(.+)$/;
|
|
24839
24907
|
function mentionUrlTransform(url) {
|
|
24840
24908
|
return MENTION_HREF.test(url) ? url : defaultUrlTransform(url);
|
|
@@ -24857,7 +24925,7 @@ function MessageItem({
|
|
|
24857
24925
|
a: /* @__PURE__ */ __name(({ href, children }) => {
|
|
24858
24926
|
const match = href ? MENTION_HREF.exec(href) : null;
|
|
24859
24927
|
if (!match || !renderMention) return /* @__PURE__ */ jsx271("a", { href, children });
|
|
24860
|
-
return /* @__PURE__ */ jsx271(
|
|
24928
|
+
return /* @__PURE__ */ jsx271(Fragment54, { children: renderMention({ type: match[1], id: match[2], alias: String(children ?? "") }) });
|
|
24861
24929
|
}, "a")
|
|
24862
24930
|
}),
|
|
24863
24931
|
[renderMention]
|
|
@@ -25200,13 +25268,13 @@ function HandbookSyncButton({ refresh }) {
|
|
|
25200
25268
|
__name(HandbookSyncButton, "HandbookSyncButton");
|
|
25201
25269
|
|
|
25202
25270
|
// src/features/handbook/components/parts/HandbookIndexStatus.tsx
|
|
25203
|
-
import {
|
|
25271
|
+
import { useTranslations as useTranslations144 } from "next-intl";
|
|
25204
25272
|
import { useMemo as useMemo53 } from "react";
|
|
25205
25273
|
import { jsx as jsx277, jsxs as jsxs161 } from "react/jsx-runtime";
|
|
25206
25274
|
var FAILURE_STATUSES = /* @__PURE__ */ new Set(["failed", "error"]);
|
|
25207
25275
|
function HandbookIndexStatus({ pages }) {
|
|
25208
25276
|
const t = useTranslations144();
|
|
25209
|
-
const
|
|
25277
|
+
const dates = useDateFormatter();
|
|
25210
25278
|
const lastSynced = useMemo53(() => {
|
|
25211
25279
|
let latest = void 0;
|
|
25212
25280
|
for (const page of pages) {
|
|
@@ -25223,7 +25291,7 @@ function HandbookIndexStatus({ pages }) {
|
|
|
25223
25291
|
return /* @__PURE__ */ jsxs161("span", { className: "text-muted-foreground text-xs tabular-nums", children: [
|
|
25224
25292
|
t("handbook.contents.status", {
|
|
25225
25293
|
count: pages.length,
|
|
25226
|
-
date: lastSynced ?
|
|
25294
|
+
date: lastSynced ? dates.format(lastSynced, "dateMedium") : ""
|
|
25227
25295
|
}),
|
|
25228
25296
|
failures > 0 ? /* @__PURE__ */ jsx277("span", { className: "text-destructive ms-2 tabular-nums", children: t("handbook.contents.failures", { count: failures }) }) : null
|
|
25229
25297
|
] });
|
|
@@ -25296,7 +25364,7 @@ function splitByNesting(pages) {
|
|
|
25296
25364
|
__name(splitByNesting, "splitByNesting");
|
|
25297
25365
|
|
|
25298
25366
|
// src/features/handbook/components/lists/HandbookContents.tsx
|
|
25299
|
-
import { Fragment as
|
|
25367
|
+
import { Fragment as Fragment55, jsx as jsx279, jsxs as jsxs163 } from "react/jsx-runtime";
|
|
25300
25368
|
function HandbookContents() {
|
|
25301
25369
|
const t = useTranslations145();
|
|
25302
25370
|
const [pages, setPages] = useState109([]);
|
|
@@ -25335,7 +25403,7 @@ function HandbookContents() {
|
|
|
25335
25403
|
return /* @__PURE__ */ jsx279(
|
|
25336
25404
|
HandbookProvider,
|
|
25337
25405
|
{
|
|
25338
|
-
functions: /* @__PURE__ */ jsxs163(
|
|
25406
|
+
functions: /* @__PURE__ */ jsxs163(Fragment55, { children: [
|
|
25339
25407
|
/* @__PURE__ */ jsx279(HandbookAskSheet, {}),
|
|
25340
25408
|
/* @__PURE__ */ jsx279(HandbookSyncButton, { refresh }),
|
|
25341
25409
|
/* @__PURE__ */ jsx279(HandbookIndexStatus, { pages })
|
|
@@ -25726,7 +25794,7 @@ function groupThreadsByBucket(threads) {
|
|
|
25726
25794
|
__name(groupThreadsByBucket, "groupThreadsByBucket");
|
|
25727
25795
|
|
|
25728
25796
|
// src/features/assistant/components/parts/AssistantSidebar.tsx
|
|
25729
|
-
import { Fragment as
|
|
25797
|
+
import { Fragment as Fragment56, jsx as jsx286, jsxs as jsxs168 } from "react/jsx-runtime";
|
|
25730
25798
|
function AssistantSidebar({
|
|
25731
25799
|
threads,
|
|
25732
25800
|
activeId,
|
|
@@ -25763,7 +25831,7 @@ function AssistantSidebar({
|
|
|
25763
25831
|
" ",
|
|
25764
25832
|
newLabel ?? t("features.assistant.new")
|
|
25765
25833
|
] }) }),
|
|
25766
|
-
/* @__PURE__ */ jsx286("div", { className: "flex-1 overflow-y-auto p-2", children: threads.length === 0 ? /* @__PURE__ */ jsx286("div", { className: "text-muted-foreground mt-6 text-center text-xs", children: emptyLabel ?? t("features.assistant.empty_sidebar") }) : /* @__PURE__ */ jsxs168(
|
|
25834
|
+
/* @__PURE__ */ jsx286("div", { className: "flex-1 overflow-y-auto p-2", children: threads.length === 0 ? /* @__PURE__ */ jsx286("div", { className: "text-muted-foreground mt-6 text-center text-xs", children: emptyLabel ?? t("features.assistant.empty_sidebar") }) : /* @__PURE__ */ jsxs168(Fragment56, { children: [
|
|
25767
25835
|
renderSection(t("features.assistant.bucket_today"), groups.today),
|
|
25768
25836
|
renderSection(t("features.assistant.bucket_week"), groups.thisWeek),
|
|
25769
25837
|
renderSection(t("features.assistant.bucket_earlier"), groups.earlier)
|
|
@@ -25773,7 +25841,7 @@ function AssistantSidebar({
|
|
|
25773
25841
|
__name(AssistantSidebar, "AssistantSidebar");
|
|
25774
25842
|
|
|
25775
25843
|
// src/features/handbook/components/containers/HandbookAskContainer.tsx
|
|
25776
|
-
import { Fragment as
|
|
25844
|
+
import { Fragment as Fragment57, jsx as jsx287, jsxs as jsxs169 } from "react/jsx-runtime";
|
|
25777
25845
|
function HandbookAskContainer({ handbookThreadId } = {}) {
|
|
25778
25846
|
const t = useTranslations151();
|
|
25779
25847
|
const { threads, thread, messages, sending, ask, selectThread, startNew } = useHandbookAsk({ handbookThreadId });
|
|
@@ -25814,7 +25882,7 @@ function HandbookAskContainer({ handbookThreadId } = {}) {
|
|
|
25814
25882
|
detailsIcon: /* @__PURE__ */ jsx287(MessagesSquareIcon2, {}),
|
|
25815
25883
|
details,
|
|
25816
25884
|
children: /* @__PURE__ */ jsxs169("div", { className: "flex h-full min-h-0 w-full flex-col overflow-hidden", children: [
|
|
25817
|
-
showThread ? /* @__PURE__ */ jsx287(
|
|
25885
|
+
showThread ? /* @__PURE__ */ jsx287(Fragment57, { children: /* @__PURE__ */ jsx287(
|
|
25818
25886
|
AssistantThread,
|
|
25819
25887
|
{
|
|
25820
25888
|
messages,
|
|
@@ -25849,16 +25917,16 @@ import { useTranslations as useTranslations154 } from "next-intl";
|
|
|
25849
25917
|
import { useMemo as useMemo60 } from "react";
|
|
25850
25918
|
|
|
25851
25919
|
// src/features/assistant-message/components/EntityMentionLink.tsx
|
|
25852
|
-
import { Fragment as
|
|
25920
|
+
import { Fragment as Fragment58, jsx as jsx288 } from "react/jsx-runtime";
|
|
25853
25921
|
function EntityMentionLinkView({ type, id, alias }) {
|
|
25854
25922
|
const generate = usePageUrlGenerator();
|
|
25855
25923
|
let module;
|
|
25856
25924
|
try {
|
|
25857
25925
|
module = ModuleRegistry.findByName(type);
|
|
25858
25926
|
} catch {
|
|
25859
|
-
return /* @__PURE__ */ jsx288(
|
|
25927
|
+
return /* @__PURE__ */ jsx288(Fragment58, { children: alias });
|
|
25860
25928
|
}
|
|
25861
|
-
if (!module?.pageUrl) return /* @__PURE__ */ jsx288(
|
|
25929
|
+
if (!module?.pageUrl) return /* @__PURE__ */ jsx288(Fragment58, { children: alias });
|
|
25862
25930
|
return /* @__PURE__ */ jsx288(Link, { href: generate({ page: module, id }), children: alias });
|
|
25863
25931
|
}
|
|
25864
25932
|
__name(EntityMentionLinkView, "EntityMentionLinkView");
|
|
@@ -25970,7 +26038,7 @@ function AssistantThreadHeader({ assistant, onRename, onDelete, renamePlaceholde
|
|
|
25970
26038
|
__name(AssistantThreadHeader, "AssistantThreadHeader");
|
|
25971
26039
|
|
|
25972
26040
|
// src/features/assistant/components/containers/AssistantContainer.tsx
|
|
25973
|
-
import { Fragment as
|
|
26041
|
+
import { Fragment as Fragment59, jsx as jsx291, jsxs as jsxs172 } from "react/jsx-runtime";
|
|
25974
26042
|
function AssistantContainer({
|
|
25975
26043
|
renderApprovalAction,
|
|
25976
26044
|
renderMention,
|
|
@@ -25998,7 +26066,7 @@ function AssistantContainer({
|
|
|
25998
26066
|
),
|
|
25999
26067
|
[ctx.threads, ctx.assistant?.id, ctx.selectThread, renderThreadBadge]
|
|
26000
26068
|
);
|
|
26001
|
-
const thread = /* @__PURE__ */ jsx291(
|
|
26069
|
+
const thread = /* @__PURE__ */ jsx291(Fragment59, { children: !showThread ? /* @__PURE__ */ jsx291(
|
|
26002
26070
|
AssistantEmptyState,
|
|
26003
26071
|
{
|
|
26004
26072
|
onSend: ctx.sendMessage,
|
|
@@ -26006,7 +26074,7 @@ function AssistantContainer({
|
|
|
26006
26074
|
onOperatorModeChange: showOperatorToggle ? ctx.setOperatorMode : void 0,
|
|
26007
26075
|
composerLeading: renderScopePicker?.()
|
|
26008
26076
|
}
|
|
26009
|
-
) : /* @__PURE__ */ jsxs172(
|
|
26077
|
+
) : /* @__PURE__ */ jsxs172(Fragment59, { children: [
|
|
26010
26078
|
ctx.assistant ? /* @__PURE__ */ jsx291(
|
|
26011
26079
|
AssistantThreadHeader,
|
|
26012
26080
|
{
|
|
@@ -26162,7 +26230,7 @@ function AssistantBlockNoteComposer({
|
|
|
26162
26230
|
__name(AssistantBlockNoteComposer, "AssistantBlockNoteComposer");
|
|
26163
26231
|
|
|
26164
26232
|
// src/features/assistant/components/containers/AssistantPageContainer.tsx
|
|
26165
|
-
import { Fragment as
|
|
26233
|
+
import { Fragment as Fragment60, jsx as jsx293, jsxs as jsxs174 } from "react/jsx-runtime";
|
|
26166
26234
|
function AssistantPageContainer({
|
|
26167
26235
|
renderApprovalAction,
|
|
26168
26236
|
renderMention,
|
|
@@ -26201,7 +26269,7 @@ function AssistantPageContainer({
|
|
|
26201
26269
|
) })
|
|
26202
26270
|
),
|
|
26203
26271
|
children: /* @__PURE__ */ jsxs174("div", { className: "bg-background flex h-full w-full flex-col overflow-hidden rounded-lg border", children: [
|
|
26204
|
-
showThread ? /* @__PURE__ */ jsxs174(
|
|
26272
|
+
showThread ? /* @__PURE__ */ jsxs174(Fragment60, { children: [
|
|
26205
26273
|
ctx.assistant ? /* @__PURE__ */ jsx293(
|
|
26206
26274
|
AssistantThreadHeader,
|
|
26207
26275
|
{
|
|
@@ -26248,7 +26316,7 @@ __name(AssistantPageContainer, "AssistantPageContainer");
|
|
|
26248
26316
|
// src/features/assistant-action/components/ApprovalActionCard.tsx
|
|
26249
26317
|
import { ShieldAlert as ShieldAlert2 } from "lucide-react";
|
|
26250
26318
|
import { useTranslations as useTranslations157 } from "next-intl";
|
|
26251
|
-
import { Fragment as
|
|
26319
|
+
import { Fragment as Fragment61, useEffect as useEffect83, useMemo as useMemo61, useState as useState115 } from "react";
|
|
26252
26320
|
import { jsx as jsx294, jsxs as jsxs175 } from "react/jsx-runtime";
|
|
26253
26321
|
var STATUS_VARIANT2 = {
|
|
26254
26322
|
pending: "softBlue",
|
|
@@ -26535,7 +26603,7 @@ function ApprovalActionCard({ actionId, summary, onResolved, hiddenRelationshipK
|
|
|
26535
26603
|
/* @__PURE__ */ jsx294("span", { children: isUpdate ? t("features.assistant.approval.proposal.updateHeading", { entity: entityLabel }) : t("features.assistant.approval.proposal.heading", { entity: entityLabel }) }),
|
|
26536
26604
|
targetLabel !== "" && /* @__PURE__ */ jsx294("span", { className: "text-foreground tracking-normal normal-case", children: targetLabel })
|
|
26537
26605
|
] }),
|
|
26538
|
-
/* @__PURE__ */ jsx294("dl", { className: "grid grid-cols-1 gap-x-4 gap-y-1.5 sm:grid-cols-[minmax(0,10rem)_minmax(0,1fr)]", children: rows.map((row) => /* @__PURE__ */ jsxs175(
|
|
26606
|
+
/* @__PURE__ */ jsx294("dl", { className: "grid grid-cols-1 gap-x-4 gap-y-1.5 sm:grid-cols-[minmax(0,10rem)_minmax(0,1fr)]", children: rows.map((row) => /* @__PURE__ */ jsxs175(Fragment61, { children: [
|
|
26539
26607
|
/* @__PURE__ */ jsx294("dt", { className: "text-muted-foreground text-xs leading-relaxed break-words sm:text-sm", children: row.label }),
|
|
26540
26608
|
/* @__PURE__ */ jsx294("dd", { className: "text-foreground text-sm leading-relaxed break-words whitespace-pre-wrap", children: row.value })
|
|
26541
26609
|
] }, row.key)) })
|
|
@@ -26657,7 +26725,8 @@ import { jsx as jsx298, jsxs as jsxs177 } from "react/jsx-runtime";
|
|
|
26657
26725
|
var NOTIFICATIONS_MODULE_NAME = "notifications";
|
|
26658
26726
|
var useNotificationTableStructure = /* @__PURE__ */ __name((params) => {
|
|
26659
26727
|
const t = useTranslations160();
|
|
26660
|
-
const dateLocale =
|
|
26728
|
+
const { locale: dateLocale } = useDateFormatter();
|
|
26729
|
+
const now = useMountedNow();
|
|
26661
26730
|
const generateUrl = usePageUrlGenerator();
|
|
26662
26731
|
const { loadNotifications } = useNotificationContext();
|
|
26663
26732
|
const archived = params.context?.archived === true;
|
|
@@ -26717,7 +26786,7 @@ var useNotificationTableStructure = /* @__PURE__ */ __name((params) => {
|
|
|
26717
26786
|
meta: { className: "w-40" },
|
|
26718
26787
|
cell: /* @__PURE__ */ __name(({ row }) => {
|
|
26719
26788
|
const notification = row.original.jsonApiData;
|
|
26720
|
-
return /* @__PURE__ */ jsx298("span", { className: "text-muted-foreground text-xs", children: formatDate(new Date(notification.createdAt), "default", dateLocale) });
|
|
26789
|
+
return /* @__PURE__ */ jsx298("span", { className: "text-muted-foreground text-xs", children: now ? formatDate(new Date(notification.createdAt), "default", dateLocale, now) : "" });
|
|
26721
26790
|
}, "cell"),
|
|
26722
26791
|
enableSorting: false,
|
|
26723
26792
|
enableHiding: false
|
|
@@ -26758,7 +26827,7 @@ var useNotificationTableStructure = /* @__PURE__ */ __name((params) => {
|
|
|
26758
26827
|
};
|
|
26759
26828
|
const columns = useMemo62(() => {
|
|
26760
26829
|
return params.fields.map((field) => fieldColumnMap[field]?.()).filter((col) => col !== void 0);
|
|
26761
|
-
}, [params.fields, fieldColumnMap, t, generateUrl]);
|
|
26830
|
+
}, [params.fields, fieldColumnMap, t, generateUrl, dateLocale, now]);
|
|
26762
26831
|
return useMemo62(() => ({ data: tableData, columns }), [tableData, columns]);
|
|
26763
26832
|
}, "useNotificationTableStructure");
|
|
26764
26833
|
registerTableGenerator(NOTIFICATIONS_MODULE_NAME, useNotificationTableStructure);
|
|
@@ -26854,7 +26923,7 @@ __name(NotificationsListContainer, "NotificationsListContainer");
|
|
|
26854
26923
|
// src/features/notification/components/modals/NotificationModal.tsx
|
|
26855
26924
|
import { BellIcon as BellIcon2, ExternalLinkIcon } from "lucide-react";
|
|
26856
26925
|
import { useTranslations as useTranslations163 } from "next-intl";
|
|
26857
|
-
import { Fragment as
|
|
26926
|
+
import { Fragment as Fragment62, useCallback as useCallback54, useEffect as useEffect85, useMemo as useMemo63, useRef as useRef46, useState as useState117 } from "react";
|
|
26858
26927
|
import { jsx as jsx301, jsxs as jsxs179 } from "react/jsx-runtime";
|
|
26859
26928
|
function NotificationModalContent({ isOpen, setIsOpen }) {
|
|
26860
26929
|
const _instanceId = useRef46(Math.random().toString(36).substr(2, 9));
|
|
@@ -27043,7 +27112,7 @@ function NotificationModalContent({ isOpen, setIsOpen }) {
|
|
|
27043
27112
|
] }),
|
|
27044
27113
|
isLoading && /* @__PURE__ */ jsx301("div", { className: "text-muted-foreground px-3 py-2 text-xs", children: t(`common.loading`) }),
|
|
27045
27114
|
error && /* @__PURE__ */ jsx301("div", { className: "text-destructive px-3 py-2 text-xs", children: error }),
|
|
27046
|
-
/* @__PURE__ */ jsx301(ScrollArea, { className: "[&_[data-slot=scroll-area-scrollbar]]:w-2.5 [&_[data-slot=scroll-area-thumb]]:bg-muted-foreground/40 [&>[data-slot=scroll-area-viewport]]:max-h-[min(32rem,calc(var(--available-height,32rem)-3.5rem))]", children: notifications.length > 0 ? /* @__PURE__ */ jsx301("div", { className: "divide-border divide-y", children: notifications.map((notification) => /* @__PURE__ */ jsx301(
|
|
27115
|
+
/* @__PURE__ */ jsx301(ScrollArea, { className: "[&_[data-slot=scroll-area-scrollbar]]:w-2.5 [&_[data-slot=scroll-area-thumb]]:bg-muted-foreground/40 [&>[data-slot=scroll-area-viewport]]:max-h-[min(32rem,calc(var(--available-height,32rem)-3.5rem))]", children: notifications.length > 0 ? /* @__PURE__ */ jsx301("div", { className: "divide-border divide-y", children: notifications.map((notification) => /* @__PURE__ */ jsx301(Fragment62, { children: generateNotification(notification, () => setIsOpen(false)) }, notification.id)) }) : /* @__PURE__ */ jsx301("div", { className: "text-muted-foreground p-6 text-center text-sm", children: t(`notification.empty`) }) })
|
|
27047
27116
|
] })
|
|
27048
27117
|
] });
|
|
27049
27118
|
}
|
|
@@ -27054,7 +27123,7 @@ function NotificationModal(props) {
|
|
|
27054
27123
|
__name(NotificationModal, "NotificationModal");
|
|
27055
27124
|
|
|
27056
27125
|
// src/features/notification/components/notifications/PushNotificationProvider.tsx
|
|
27057
|
-
import { Fragment as
|
|
27126
|
+
import { Fragment as Fragment63, jsx as jsx302 } from "react/jsx-runtime";
|
|
27058
27127
|
function PushNotificationProvider({
|
|
27059
27128
|
children,
|
|
27060
27129
|
excludedRoleIds = []
|
|
@@ -27062,7 +27131,7 @@ function PushNotificationProvider({
|
|
|
27062
27131
|
const { currentUser, hasRole } = useCurrentUserContext();
|
|
27063
27132
|
const canSubscribe = !hasRole(getRoleId().Administrator) && !excludedRoleIds.some((roleId) => hasRole(roleId));
|
|
27064
27133
|
usePushNotifications_default({ currentUser: currentUser ?? void 0, canSubscribe });
|
|
27065
|
-
return /* @__PURE__ */ jsx302(
|
|
27134
|
+
return /* @__PURE__ */ jsx302(Fragment63, { children });
|
|
27066
27135
|
}
|
|
27067
27136
|
__name(PushNotificationProvider, "PushNotificationProvider");
|
|
27068
27137
|
|
|
@@ -27404,11 +27473,11 @@ import { useMemo as useMemo65 } from "react";
|
|
|
27404
27473
|
// src/features/tokenusage/lib/formatters.ts
|
|
27405
27474
|
import { useLocale } from "next-intl";
|
|
27406
27475
|
import { useMemo as useMemo64 } from "react";
|
|
27407
|
-
function createUsageFormatters(locale, currency) {
|
|
27476
|
+
function createUsageFormatters(locale, currency, dateLocale = locale) {
|
|
27408
27477
|
const symbol = new Intl.NumberFormat(locale, { style: "currency", currency, currencyDisplay: "narrowSymbol" }).formatToParts(0).find((part) => part.type === "currency")?.value ?? currency;
|
|
27409
27478
|
const decimal = /* @__PURE__ */ __name((value, decimals) => value.toLocaleString(locale, { minimumFractionDigits: decimals, maximumFractionDigits: decimals }), "decimal");
|
|
27410
|
-
const dayFormat = new Intl.DateTimeFormat(
|
|
27411
|
-
const monthFormat = new Intl.DateTimeFormat(
|
|
27479
|
+
const dayFormat = new Intl.DateTimeFormat(dateLocale, { day: "numeric", month: "short", timeZone: "UTC" });
|
|
27480
|
+
const monthFormat = new Intl.DateTimeFormat(dateLocale, { month: "short", year: "numeric", timeZone: "UTC" });
|
|
27412
27481
|
const compactFormat = new Intl.NumberFormat(locale, { notation: "compact", maximumSignificantDigits: 3 });
|
|
27413
27482
|
const collator = new Intl.Collator(locale);
|
|
27414
27483
|
return {
|
|
@@ -27439,8 +27508,9 @@ function createUsageFormatters(locale, currency) {
|
|
|
27439
27508
|
__name(createUsageFormatters, "createUsageFormatters");
|
|
27440
27509
|
function useUsageFormatters() {
|
|
27441
27510
|
const locale = useLocale();
|
|
27511
|
+
const { locale: dateLocale } = useDateFormatter();
|
|
27442
27512
|
const currency = getTokenUsageCurrency();
|
|
27443
|
-
return useMemo64(() => createUsageFormatters(locale, currency), [locale, currency]);
|
|
27513
|
+
return useMemo64(() => createUsageFormatters(locale, currency, dateLocale), [locale, currency, dateLocale]);
|
|
27444
27514
|
}
|
|
27445
27515
|
__name(useUsageFormatters, "useUsageFormatters");
|
|
27446
27516
|
|
|
@@ -28058,11 +28128,11 @@ function RoleDetails() {
|
|
|
28058
28128
|
__name(RoleDetails, "RoleDetails");
|
|
28059
28129
|
|
|
28060
28130
|
// src/features/role/components/containers/RoleContainer.tsx
|
|
28061
|
-
import { Fragment as
|
|
28131
|
+
import { Fragment as Fragment64, jsx as jsx311, jsxs as jsxs187 } from "react/jsx-runtime";
|
|
28062
28132
|
function RoleContainer() {
|
|
28063
28133
|
const { role } = useRoleContext();
|
|
28064
28134
|
if (!role) return null;
|
|
28065
|
-
return /* @__PURE__ */ jsxs187(
|
|
28135
|
+
return /* @__PURE__ */ jsxs187(Fragment64, { children: [
|
|
28066
28136
|
/* @__PURE__ */ jsx311(RoleDetails, {}),
|
|
28067
28137
|
/* @__PURE__ */ jsx311(RoleUsersList, { role })
|
|
28068
28138
|
] });
|
|
@@ -28107,7 +28177,7 @@ __name(FormRoles, "FormRoles");
|
|
|
28107
28177
|
// src/features/role/components/forms/RemoveUserFromRole.tsx
|
|
28108
28178
|
import { useTranslations as useTranslations173 } from "next-intl";
|
|
28109
28179
|
import { useEffect as useEffect90, useState as useState122 } from "react";
|
|
28110
|
-
import { Fragment as
|
|
28180
|
+
import { Fragment as Fragment65, jsx as jsx313, jsxs as jsxs189 } from "react/jsx-runtime";
|
|
28111
28181
|
function RemoveUserFromRole({ role, user, refresh }) {
|
|
28112
28182
|
const [open, setOpen] = useState122(false);
|
|
28113
28183
|
const [canRemove, setCanRemove] = useState122(false);
|
|
@@ -28156,7 +28226,7 @@ function RemoveUserFromRole({ role, user, refresh }) {
|
|
|
28156
28226
|
/* @__PURE__ */ jsx313(DialogTitle, { children: t(`role.remove_user.title`) }),
|
|
28157
28227
|
/* @__PURE__ */ jsx313(DialogDescription, { children: canRemove ? t(`role.remove_user.subtitle_allowed`) : t(`role.remove_user.subtitle_not_allowed`) })
|
|
28158
28228
|
] }),
|
|
28159
|
-
canRemove ? /* @__PURE__ */ jsxs189(
|
|
28229
|
+
canRemove ? /* @__PURE__ */ jsxs189(Fragment65, { children: [
|
|
28160
28230
|
t(`role.remove_user.description_allowed`, { role: roleName, user: user.name }),
|
|
28161
28231
|
/* @__PURE__ */ jsxs189("div", { className: "flex justify-end", children: [
|
|
28162
28232
|
/* @__PURE__ */ jsx313(Button, { className: "me-2", variant: "outline", type: `button`, onClick: () => setOpen(false), children: t(`ui.buttons.cancel`) }),
|
|
@@ -28173,7 +28243,7 @@ function RemoveUserFromRole({ role, user, refresh }) {
|
|
|
28173
28243
|
}
|
|
28174
28244
|
)
|
|
28175
28245
|
] })
|
|
28176
|
-
] }) : /* @__PURE__ */ jsx313(
|
|
28246
|
+
] }) : /* @__PURE__ */ jsx313(Fragment65, { children: t(`role.remove_user.description_not_allowed`, { role: roleName, user: user.name }) })
|
|
28177
28247
|
] })
|
|
28178
28248
|
] });
|
|
28179
28249
|
}
|
|
@@ -28183,7 +28253,7 @@ __name(RemoveUserFromRole, "RemoveUserFromRole");
|
|
|
28183
28253
|
import { PlusCircle as PlusCircle2 } from "lucide-react";
|
|
28184
28254
|
import { useTranslations as useTranslations174 } from "next-intl";
|
|
28185
28255
|
import { useCallback as useCallback56, useEffect as useEffect91, useRef as useRef49, useState as useState123 } from "react";
|
|
28186
|
-
import { Fragment as
|
|
28256
|
+
import { Fragment as Fragment66, jsx as jsx314, jsxs as jsxs190 } from "react/jsx-runtime";
|
|
28187
28257
|
function UserRoleAdd({ user, refresh }) {
|
|
28188
28258
|
const [open, setOpen] = useState123(false);
|
|
28189
28259
|
const inputRef = useRef49(null);
|
|
@@ -28230,7 +28300,7 @@ function UserRoleAdd({ user, refresh }) {
|
|
|
28230
28300
|
useEffect91(() => {
|
|
28231
28301
|
if (open) searchRoles("");
|
|
28232
28302
|
}, [open]);
|
|
28233
|
-
return /* @__PURE__ */ jsxs190(
|
|
28303
|
+
return /* @__PURE__ */ jsxs190(Fragment66, { children: [
|
|
28234
28304
|
/* @__PURE__ */ jsxs190(Button, { size: "sm", onClick: () => setOpen(true), children: [
|
|
28235
28305
|
/* @__PURE__ */ jsx314(PlusCircle2, { className: "me-3 h-3.5 w-3.5" }),
|
|
28236
28306
|
t(`common.association.label`, {
|
|
@@ -28560,14 +28630,14 @@ __name(OAuthClientSecretDisplay, "OAuthClientSecretDisplay");
|
|
|
28560
28630
|
|
|
28561
28631
|
// src/features/oauth/components/OAuthClientCard.tsx
|
|
28562
28632
|
import { useTranslations as useTranslations180 } from "next-intl";
|
|
28563
|
-
import { formatDistanceToNow } from "date-fns";
|
|
28564
28633
|
import { Key as Key2, MoreVertical, Pencil, Trash2 as Trash24 } from "lucide-react";
|
|
28565
28634
|
import { jsx as jsx320, jsxs as jsxs194 } from "react/jsx-runtime";
|
|
28566
28635
|
function OAuthClientCard({ client, onClick, onEdit, onDelete }) {
|
|
28567
28636
|
const t = useTranslations180();
|
|
28568
|
-
const
|
|
28637
|
+
const { relative } = useDateFormatter();
|
|
28638
|
+
const now = useMountedNow();
|
|
28569
28639
|
const truncatedId = client.clientId.length > 12 ? `${client.clientId.slice(0, 8)}...${client.clientId.slice(-4)}` : client.clientId;
|
|
28570
|
-
const createdAgo = client.createdAt ?
|
|
28640
|
+
const createdAgo = client.createdAt ? now ? relative(new Date(client.createdAt), { now }) : void 0 : t("oauth.ui.card.unknown");
|
|
28571
28641
|
return /* @__PURE__ */ jsxs194(
|
|
28572
28642
|
Card,
|
|
28573
28643
|
{
|
|
@@ -28620,7 +28690,7 @@ function OAuthClientCard({ client, onClick, onEdit, onDelete }) {
|
|
|
28620
28690
|
] }),
|
|
28621
28691
|
/* @__PURE__ */ jsx320(CardContent, { children: /* @__PURE__ */ jsxs194("div", { className: "flex flex-wrap gap-x-4 gap-y-1 text-sm text-muted-foreground", children: [
|
|
28622
28692
|
/* @__PURE__ */ jsx320("span", { className: "tabular-nums", children: truncatedId }),
|
|
28623
|
-
/* @__PURE__ */ jsx320("span", { children: t("oauth.ui.card.created", { ago: createdAgo }) }),
|
|
28693
|
+
createdAgo !== void 0 && /* @__PURE__ */ jsx320("span", { children: t("oauth.ui.card.created", { ago: createdAgo }) }),
|
|
28624
28694
|
/* @__PURE__ */ jsx320("span", { children: client.isConfidential ? t("oauth.ui.card.confidential") : t("oauth.ui.card.public") })
|
|
28625
28695
|
] }) })
|
|
28626
28696
|
]
|
|
@@ -28855,7 +28925,7 @@ __name(OAuthClientForm, "OAuthClientForm");
|
|
|
28855
28925
|
import { useTranslations as useTranslations183 } from "next-intl";
|
|
28856
28926
|
import { useState as useState126, useCallback as useCallback61 } from "react";
|
|
28857
28927
|
import { Copy as Copy4, Check as Check2, RefreshCw as RefreshCw3, Pencil as Pencil2, Trash2 as Trash25, ExternalLink } from "lucide-react";
|
|
28858
|
-
import { Fragment as
|
|
28928
|
+
import { Fragment as Fragment67, jsx as jsx323, jsxs as jsxs197 } from "react/jsx-runtime";
|
|
28859
28929
|
function OAuthClientDetail({
|
|
28860
28930
|
client,
|
|
28861
28931
|
isLoading = false,
|
|
@@ -28864,7 +28934,7 @@ function OAuthClientDetail({
|
|
|
28864
28934
|
onRegenerateSecret
|
|
28865
28935
|
}) {
|
|
28866
28936
|
const t = useTranslations183();
|
|
28867
|
-
const
|
|
28937
|
+
const { format } = useDateFormatter();
|
|
28868
28938
|
const scopeText = useOAuthScopeText();
|
|
28869
28939
|
const [copiedField, setCopiedField] = useState126(null);
|
|
28870
28940
|
const [showDeleteConfirm, setShowDeleteConfirm] = useState126(false);
|
|
@@ -28900,8 +28970,8 @@ function OAuthClientDetail({
|
|
|
28900
28970
|
setShowRegenerateConfirm(false);
|
|
28901
28971
|
}
|
|
28902
28972
|
}, [onRegenerateSecret]);
|
|
28903
|
-
const createdDate = client.createdAt ? new Date(client.createdAt)
|
|
28904
|
-
return /* @__PURE__ */ jsxs197(
|
|
28973
|
+
const createdDate = client.createdAt ? format(new Date(client.createdAt), "dateLong") : t("oauth.ui.card.unknown");
|
|
28974
|
+
return /* @__PURE__ */ jsxs197(Fragment67, { children: [
|
|
28905
28975
|
/* @__PURE__ */ jsxs197(Card, { children: [
|
|
28906
28976
|
/* @__PURE__ */ jsx323(CardHeader, { children: /* @__PURE__ */ jsxs197("div", { className: "flex items-start justify-between", children: [
|
|
28907
28977
|
/* @__PURE__ */ jsxs197("div", { children: [
|
|
@@ -29110,7 +29180,7 @@ function OAuthCompanySelector({ companies, value, onChange }) {
|
|
|
29110
29180
|
__name(OAuthCompanySelector, "OAuthCompanySelector");
|
|
29111
29181
|
|
|
29112
29182
|
// src/features/oauth/components/consent/OAuthConsentScreen.tsx
|
|
29113
|
-
import { Fragment as
|
|
29183
|
+
import { Fragment as Fragment68, jsx as jsx328, jsxs as jsxs202 } from "react/jsx-runtime";
|
|
29114
29184
|
function OAuthConsentScreen({
|
|
29115
29185
|
params,
|
|
29116
29186
|
logoUrl,
|
|
@@ -29144,7 +29214,7 @@ function OAuthConsentScreen({
|
|
|
29144
29214
|
/* @__PURE__ */ jsx328(Separator, {}),
|
|
29145
29215
|
/* @__PURE__ */ jsx328(OAuthScopeList, { scopes }),
|
|
29146
29216
|
/* @__PURE__ */ jsx328(Separator, {}),
|
|
29147
|
-
companies.length > 1 && /* @__PURE__ */ jsxs202(
|
|
29217
|
+
companies.length > 1 && /* @__PURE__ */ jsxs202(Fragment68, { children: [
|
|
29148
29218
|
/* @__PURE__ */ jsx328(OAuthCompanySelector, { companies, value: companyId, onChange: setCompanyId }),
|
|
29149
29219
|
/* @__PURE__ */ jsx328(Separator, {})
|
|
29150
29220
|
] }),
|
|
@@ -29274,7 +29344,7 @@ function WaitlistQuestionnaireRenderer({
|
|
|
29274
29344
|
__name(WaitlistQuestionnaireRenderer, "WaitlistQuestionnaireRenderer");
|
|
29275
29345
|
|
|
29276
29346
|
// src/features/waitlist/components/forms/WaitlistForm.tsx
|
|
29277
|
-
import { Fragment as
|
|
29347
|
+
import { Fragment as Fragment69, jsx as jsx330, jsxs as jsxs204 } from "react/jsx-runtime";
|
|
29278
29348
|
function WaitlistForm({ onSuccess }) {
|
|
29279
29349
|
const t = useTranslations189();
|
|
29280
29350
|
const [isSubmitting, setIsSubmitting] = useState127(false);
|
|
@@ -29394,7 +29464,7 @@ function WaitlistForm({ onSuccess }) {
|
|
|
29394
29464
|
{
|
|
29395
29465
|
form,
|
|
29396
29466
|
id: "gdprConsent",
|
|
29397
|
-
label: /* @__PURE__ */ jsxs204(
|
|
29467
|
+
label: /* @__PURE__ */ jsxs204(Fragment69, { children: [
|
|
29398
29468
|
t("auth.gdpr.terms_prefix"),
|
|
29399
29469
|
/* @__PURE__ */ jsx330(Link, { href: "/terms", target: "_blank", rel: "noopener", children: t("auth.gdpr.terms_of_service") }),
|
|
29400
29470
|
t("auth.gdpr.and"),
|
|
@@ -29688,7 +29758,7 @@ import { Popover as PopoverPrimitive2 } from "@base-ui/react/popover";
|
|
|
29688
29758
|
import { CheckIcon as CheckIcon10, MinusIcon as MinusIcon3, XIcon as XIcon15 } from "lucide-react";
|
|
29689
29759
|
import { useTranslations as useTranslations193 } from "next-intl";
|
|
29690
29760
|
import { useCallback as useCallback63, useEffect as useEffect94, useState as useState130 } from "react";
|
|
29691
|
-
import { Fragment as
|
|
29761
|
+
import { Fragment as Fragment70, jsx as jsx336, jsxs as jsxs210 } from "react/jsx-runtime";
|
|
29692
29762
|
function RbacPermissionPicker({
|
|
29693
29763
|
open,
|
|
29694
29764
|
anchor,
|
|
@@ -29774,7 +29844,7 @@ function RbacPermissionPicker({
|
|
|
29774
29844
|
)
|
|
29775
29845
|
] })
|
|
29776
29846
|
] }),
|
|
29777
|
-
isRoleColumn && onClear && /* @__PURE__ */ jsxs210(
|
|
29847
|
+
isRoleColumn && onClear && /* @__PURE__ */ jsxs210(Fragment70, { children: [
|
|
29778
29848
|
/* @__PURE__ */ jsx336(Separator, {}),
|
|
29779
29849
|
/* @__PURE__ */ jsxs210(
|
|
29780
29850
|
Button,
|
|
@@ -30061,7 +30131,7 @@ __name(RbacContainer, "RbacContainer");
|
|
|
30061
30131
|
// src/features/rbac/components/RbacByRoleContainer.tsx
|
|
30062
30132
|
import { Loader2Icon as Loader2Icon5 } from "lucide-react";
|
|
30063
30133
|
import { useTranslations as useTranslations195 } from "next-intl";
|
|
30064
|
-
import { Fragment as
|
|
30134
|
+
import { Fragment as Fragment71, memo as memo3, useCallback as useCallback65, useEffect as useEffect96, useMemo as useMemo71, useRef as useRef51, useState as useState132 } from "react";
|
|
30065
30135
|
import { jsx as jsx338, jsxs as jsxs212 } from "react/jsx-runtime";
|
|
30066
30136
|
function findToken2(tokens, action) {
|
|
30067
30137
|
if (!tokens) return void 0;
|
|
@@ -30187,7 +30257,7 @@ function RbacByRoleContainer() {
|
|
|
30187
30257
|
const defaultTokens = block.default ?? [];
|
|
30188
30258
|
const roleTokens = block[selectedRoleId];
|
|
30189
30259
|
const moduleLabel = moduleNames?.[moduleId] ?? moduleId;
|
|
30190
|
-
return /* @__PURE__ */ jsxs212(
|
|
30260
|
+
return /* @__PURE__ */ jsxs212(Fragment71, { children: [
|
|
30191
30261
|
/* @__PURE__ */ jsx338("tr", { className: "border-b bg-muted/40", children: /* @__PURE__ */ jsx338(
|
|
30192
30262
|
"td",
|
|
30193
30263
|
{
|
|
@@ -30887,4 +30957,4 @@ export {
|
|
|
30887
30957
|
useOAuthClients,
|
|
30888
30958
|
useOAuthClient
|
|
30889
30959
|
};
|
|
30890
|
-
//# sourceMappingURL=chunk-
|
|
30960
|
+
//# sourceMappingURL=chunk-KVYYPKRO.mjs.map
|