@carlonicora/nextjs-jsonapi 3.5.6 → 3.5.8

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.
Files changed (50) hide show
  1. package/dist/{BlockNoteEditor-HGVFKRAX.mjs → BlockNoteEditor-5LH6CCQF.mjs} +4 -4
  2. package/dist/{BlockNoteEditor-5T5NB53C.js → BlockNoteEditor-J27BAKEF.js} +19 -19
  3. package/dist/{BlockNoteEditor-5T5NB53C.js.map → BlockNoteEditor-J27BAKEF.js.map} +1 -1
  4. package/dist/billing/index.js +398 -398
  5. package/dist/billing/index.mjs +3 -3
  6. package/dist/{chunk-X2MQ3WHX.js → chunk-B2OB3HQO.js} +7 -7
  7. package/dist/{chunk-X2MQ3WHX.js.map → chunk-B2OB3HQO.js.map} +1 -1
  8. package/dist/{chunk-RZDY4CIF.mjs → chunk-DK5ZOPVF.mjs} +2 -2
  9. package/dist/{chunk-YMFHT4AP.js → chunk-G2PQN6HK.js} +1053 -965
  10. package/dist/chunk-G2PQN6HK.js.map +1 -0
  11. package/dist/{chunk-G6B7RZWJ.mjs → chunk-H37WRSBU.mjs} +2 -2
  12. package/dist/chunk-H37WRSBU.mjs.map +1 -0
  13. package/dist/{chunk-6T6QB6K2.js → chunk-PGA2VC3S.js} +6 -6
  14. package/dist/chunk-PGA2VC3S.js.map +1 -0
  15. package/dist/{chunk-2ONZSSDW.mjs → chunk-Q2QO5XYN.mjs} +272 -184
  16. package/dist/chunk-Q2QO5XYN.mjs.map +1 -0
  17. package/dist/client/index.js +4 -4
  18. package/dist/client/index.mjs +3 -3
  19. package/dist/components/index.d.mts +21 -1
  20. package/dist/components/index.d.ts +21 -1
  21. package/dist/components/index.js +6 -4
  22. package/dist/components/index.js.map +1 -1
  23. package/dist/components/index.mjs +5 -3
  24. package/dist/contexts/index.js +4 -4
  25. package/dist/contexts/index.mjs +3 -3
  26. package/dist/core/index.js +2 -2
  27. package/dist/core/index.mjs +1 -1
  28. package/dist/features/help/index.js +37 -37
  29. package/dist/features/help/index.mjs +3 -3
  30. package/dist/features/tokenusage/index.js +101 -101
  31. package/dist/features/tokenusage/index.mjs +3 -3
  32. package/dist/index.js +3 -3
  33. package/dist/index.mjs +2 -2
  34. package/dist/server/index.js +3 -3
  35. package/dist/server/index.mjs +1 -1
  36. package/package.json +1 -1
  37. package/src/components/forms/EditorSheet.tsx +16 -5
  38. package/src/components/forms/EntityMultiSelector.tsx +14 -10
  39. package/src/components/forms/FileUploader.tsx +18 -2
  40. package/src/components/forms/MultiFileUploader.tsx +23 -5
  41. package/src/components/forms/index.ts +1 -1
  42. package/src/features/how-to/components/containers/HowToContainer.tsx +2 -7
  43. package/src/features/how-to/components/forms/HowToDeleter.tsx +0 -2
  44. package/src/utils/italian-validators.ts +1 -1
  45. package/dist/chunk-2ONZSSDW.mjs.map +0 -1
  46. package/dist/chunk-6T6QB6K2.js.map +0 -1
  47. package/dist/chunk-G6B7RZWJ.mjs.map +0 -1
  48. package/dist/chunk-YMFHT4AP.js.map +0 -1
  49. /package/dist/{BlockNoteEditor-HGVFKRAX.mjs.map → BlockNoteEditor-5LH6CCQF.mjs.map} +0 -0
  50. /package/dist/{chunk-RZDY4CIF.mjs.map → chunk-DK5ZOPVF.mjs.map} +0 -0
@@ -20,7 +20,7 @@ import {
20
20
  useI18nLocale,
21
21
  useI18nRouter,
22
22
  useI18nTranslations
23
- } from "./chunk-RZDY4CIF.mjs";
23
+ } from "./chunk-DK5ZOPVF.mjs";
24
24
  import {
25
25
  AVAILABLE_OAUTH_SCOPES,
26
26
  AiConnectionService,
@@ -71,7 +71,7 @@ import {
71
71
  useIsMobile,
72
72
  validateItalianTaxCode,
73
73
  validatePartitaIva
74
- } from "./chunk-G6B7RZWJ.mjs";
74
+ } from "./chunk-H37WRSBU.mjs";
75
75
  import {
76
76
  ENV
77
77
  } from "./chunk-RVASYIQG.mjs";
@@ -6515,7 +6515,7 @@ function useHeaderLogo() {
6515
6515
  __name(useHeaderLogo, "useHeaderLogo");
6516
6516
 
6517
6517
  // src/components/navigations/Breadcrumb.tsx
6518
- import { useTranslations as useTranslations52 } from "next-intl";
6518
+ import { useTranslations as useTranslations51 } from "next-intl";
6519
6519
  import { Fragment as Fragment20, useState as useState47 } from "react";
6520
6520
  import { ChevronDownIcon as ChevronDownIcon8 } from "lucide-react";
6521
6521
 
@@ -8517,11 +8517,11 @@ function EntityMultiSelector({
8517
8517
  return selectedValues.map((v) => stableGetFormValueLabel(v)).join(", ");
8518
8518
  }, [selectedValues, stableGetFormValueLabel]);
8519
8519
  return /* @__PURE__ */ jsx68("div", { className: "flex w-full flex-col", children: /* @__PURE__ */ jsx68(FormFieldWrapper, { form, name: id, label, isRequired, description, children: () => /* @__PURE__ */ jsxs33("div", { className: "flex flex-col gap-2", children: [
8520
- /* @__PURE__ */ jsxs33(Popover, { open, onOpenChange: setOpen, modal: true, children: [
8521
- /* @__PURE__ */ jsx68(PopoverTrigger, { className: "w-full", children: /* @__PURE__ */ jsxs33(
8520
+ /* @__PURE__ */ jsxs33(Popover, { open: disabled ? false : open, onOpenChange: disabled ? void 0 : setOpen, modal: true, children: [
8521
+ /* @__PURE__ */ jsx68(PopoverTrigger, { className: "w-full", disabled, children: /* @__PURE__ */ jsxs33(
8522
8522
  "div",
8523
8523
  {
8524
- className: `bg-input/20 dark:bg-input/30 border-input focus-visible:border-ring focus-visible:ring-ring/30 focus-visible:ring-[2px] flex min-h-7 w-full items-center gap-2 rounded-md border px-2 text-sm md:text-xs/relaxed`,
8524
+ className: `bg-input/20 dark:bg-input/30 border-input focus-visible:border-ring focus-visible:ring-ring/30 focus-visible:ring-[2px] flex min-h-7 w-full items-center gap-2 rounded-md border px-2 text-sm md:text-xs/relaxed ${disabled ? "cursor-not-allowed opacity-50" : ""}`,
8525
8525
  children: [
8526
8526
  selectedValues.length > 0 ? /* @__PURE__ */ jsxs33(Fragment7, { children: [
8527
8527
  /* @__PURE__ */ jsx68("span", { className: "text-foreground min-w-0 flex-1 truncate text-start", children: triggerSummary }),
@@ -8595,7 +8595,7 @@ function EntityMultiSelector({
8595
8595
  className: "h-auto gap-1.5 rounded-md px-2.5 py-1 pe-1.5 text-xs",
8596
8596
  children: [
8597
8597
  stableGetFormValueLabel(value),
8598
- /* @__PURE__ */ jsx68(
8598
+ !disabled && /* @__PURE__ */ jsx68(
8599
8599
  "button",
8600
8600
  {
8601
8601
  type: "button",
@@ -9638,12 +9638,13 @@ function resolveTriggerIsNativeButton(trigger) {
9638
9638
  return true;
9639
9639
  }
9640
9640
  __name(resolveTriggerIsNativeButton, "resolveTriggerIsNativeButton");
9641
+ var fullWidthOnMobile = "data-[side=right]:w-full data-[side=left]:w-full";
9641
9642
  var sizeClasses = {
9642
- sm: "data-[side=right]:sm:max-w-2xl data-[side=left]:sm:max-w-2xl",
9643
- md: "data-[side=right]:sm:max-w-3xl data-[side=left]:sm:max-w-3xl",
9644
- lg: "data-[side=right]:sm:max-w-5xl data-[side=left]:sm:max-w-5xl",
9645
- xl: "data-[side=right]:sm:max-w-7xl data-[side=left]:sm:max-w-7xl",
9646
- "2xl": "data-[side=right]:sm:!max-w-[min(96rem,90vw)] data-[side=left]:sm:!max-w-[min(96rem,90vw)]"
9643
+ sm: `${fullWidthOnMobile} data-[side=right]:sm:max-w-2xl data-[side=left]:sm:max-w-2xl`,
9644
+ md: `${fullWidthOnMobile} data-[side=right]:sm:max-w-3xl data-[side=left]:sm:max-w-3xl`,
9645
+ lg: `${fullWidthOnMobile} data-[side=right]:sm:max-w-5xl data-[side=left]:sm:max-w-5xl`,
9646
+ xl: `${fullWidthOnMobile} data-[side=right]:sm:max-w-7xl data-[side=left]:sm:max-w-7xl`,
9647
+ "2xl": `${fullWidthOnMobile} data-[side=right]:sm:!max-w-[min(96rem,90vw)] data-[side=left]:sm:!max-w-[min(96rem,90vw)]`
9647
9648
  };
9648
9649
  function EditorSheet({
9649
9650
  form,
@@ -10045,9 +10046,21 @@ var FileUploader = forwardRef6(
10045
10046
  );
10046
10047
  const handleKeyDown = useCallback18(
10047
10048
  (e) => {
10049
+ if (!value) return;
10050
+ const handledKeys = [
10051
+ "ArrowLeft",
10052
+ "ArrowRight",
10053
+ "ArrowUp",
10054
+ "ArrowDown",
10055
+ "Enter",
10056
+ "Space",
10057
+ "Delete",
10058
+ "Backspace",
10059
+ "Escape"
10060
+ ];
10061
+ if (!handledKeys.includes(e.key)) return;
10048
10062
  e.preventDefault();
10049
10063
  e.stopPropagation();
10050
- if (!value) return;
10051
10064
  const moveNext = /* @__PURE__ */ __name(() => {
10052
10065
  const nextIndex = activeIndex + 1;
10053
10066
  setActiveIndex(nextIndex > value.length - 1 ? 0 : nextIndex);
@@ -10314,7 +10327,7 @@ import { useRef as useRef17 } from "react";
10314
10327
  import dynamic from "next/dynamic";
10315
10328
  import React18 from "react";
10316
10329
  import { jsx as jsx89 } from "react/jsx-runtime";
10317
- var BlockNoteEditor = dynamic(() => import("./BlockNoteEditor-HGVFKRAX.mjs"), {
10330
+ var BlockNoteEditor = dynamic(() => import("./BlockNoteEditor-5LH6CCQF.mjs"), {
10318
10331
  ssr: false
10319
10332
  });
10320
10333
  var BlockNoteEditorContainer = React18.memo(/* @__PURE__ */ __name(function EditorContainer(props) {
@@ -11376,13 +11389,89 @@ import Image3 from "next/image";
11376
11389
  import { useEffect as useEffect21, useState as useState29 } from "react";
11377
11390
  import { jsx as jsx104, jsxs as jsxs62 } from "react/jsx-runtime";
11378
11391
  var dropzone = {
11379
- multiple: false,
11380
11392
  maxSize: 100 * 1024 * 1024,
11381
11393
  preventDropOnDocument: false,
11382
11394
  accept: {
11383
11395
  "application/images": [".jpg", ".jpeg", ".png", ".gif", ".webp", ".svg", ".docx", ".xslx", ".pdf", ".txt", ".md"]
11384
11396
  }
11385
11397
  };
11398
+ function MultiFileUploader({ files, setFiles, multiple = false, className }) {
11399
+ const uploadFiles = /* @__PURE__ */ __name((newFiles) => {
11400
+ if (!newFiles) return;
11401
+ setFiles([...files, ...newFiles]);
11402
+ }, "uploadFiles");
11403
+ const handleRemoveFile = /* @__PURE__ */ __name((indexToRemove) => {
11404
+ setFiles(files.filter((_, index) => index !== indexToRemove));
11405
+ }, "handleRemoveFile");
11406
+ return /* @__PURE__ */ jsxs62(
11407
+ "div",
11408
+ {
11409
+ className: cn(
11410
+ "grid w-full grid-cols-1 gap-4 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 xl:grid-cols-5 2xl:grid-cols-6",
11411
+ className
11412
+ ),
11413
+ children: [
11414
+ /* @__PURE__ */ jsx104(
11415
+ FileUploader,
11416
+ {
11417
+ value: files,
11418
+ onValueChange: uploadFiles,
11419
+ dropzoneOptions: { ...dropzone, multiple },
11420
+ className: "text-muted-foreground hover:text-primary relative aspect-square h-full cursor-pointer overflow-hidden rounded-lg border",
11421
+ children: /* @__PURE__ */ jsx104(FileInput, { className: cn("text-muted-foreground flex h-full w-full flex-col items-center justify-center"), children: /* @__PURE__ */ jsx104(UploadIcon2, { className: "my-4 h-8 w-8" }) })
11422
+ }
11423
+ ),
11424
+ files.map((file, index) => /* @__PURE__ */ jsx104(FilePreviewItem, { file, onRemoveClick: () => handleRemoveFile(index) }, file.name + "-" + index))
11425
+ ]
11426
+ }
11427
+ );
11428
+ }
11429
+ __name(MultiFileUploader, "MultiFileUploader");
11430
+ var FilePreviewItem = /* @__PURE__ */ __name(({ file, onRemoveClick }) => {
11431
+ const [objectUrl, setObjectUrl] = useState29(null);
11432
+ useEffect21(() => {
11433
+ if (file.type.startsWith("image/")) {
11434
+ const url = URL.createObjectURL(file);
11435
+ setObjectUrl(url);
11436
+ return () => URL.revokeObjectURL(url);
11437
+ }
11438
+ setObjectUrl(null);
11439
+ }, [file]);
11440
+ const getFileIcon = /* @__PURE__ */ __name(() => {
11441
+ const extension = file.name.split(".").pop()?.toLowerCase();
11442
+ if (file.type.startsWith("image/")) {
11443
+ return /* @__PURE__ */ jsx104(FileImageIcon, { className: "text-muted h-10 w-10 sm:h-12 sm:w-12" });
11444
+ }
11445
+ if (file.type === "application/pdf") {
11446
+ return /* @__PURE__ */ jsx104(FileTextIcon, { className: "text-destructive h-10 w-10 sm:h-12 sm:w-12" });
11447
+ }
11448
+ if (file.type.includes("wordprocessingml") || extension === "docx" || extension === "doc") {
11449
+ return /* @__PURE__ */ jsx104(FileTextIcon, { className: "text-primary h-10 w-10 sm:h-12 sm:w-12" });
11450
+ }
11451
+ if (file.type.includes("spreadsheetml") || extension === "xlsx" || extension === "xls") {
11452
+ return /* @__PURE__ */ jsx104(FileSpreadsheetIcon, { className: "text-secondary h-10 w-10 sm:h-12 sm:w-12" });
11453
+ }
11454
+ if (file.type.startsWith("text/")) {
11455
+ return /* @__PURE__ */ jsx104(FileTextIcon, { className: "h-10 w-10 sm:h-12 sm:w-12" });
11456
+ }
11457
+ return /* @__PURE__ */ jsx104(FileIcon, { className: "text-muted h-10 w-10 sm:h-12 sm:w-12" });
11458
+ }, "getFileIcon");
11459
+ return /* @__PURE__ */ jsxs62("div", { className: "text-muted-foreground group relative aspect-square h-full overflow-hidden rounded-lg border", children: [
11460
+ /* @__PURE__ */ jsx104(
11461
+ "button",
11462
+ {
11463
+ onClick: onRemoveClick,
11464
+ className: "absolute top-1.5 end-1.5 z-20 rounded-full bg-black/60 p-1 text-white opacity-0 transition-all duration-200 ease-in-out group-hover:opacity-100 hover:bg-red-600 focus:outline-none",
11465
+ "aria-label": "Remove file",
11466
+ children: /* @__PURE__ */ jsx104(XIcon7, { className: "h-3.5 w-3.5" })
11467
+ }
11468
+ ),
11469
+ objectUrl ? /* @__PURE__ */ jsx104(Image3, { src: objectUrl, alt: file.name, className: "h-full w-full object-cover", width: 200, height: 200 }) : /* @__PURE__ */ jsxs62("div", { className: "bg-muted/30 flex h-full w-full flex-col items-center justify-center p-2", children: [
11470
+ getFileIcon(),
11471
+ /* @__PURE__ */ jsx104("span", { className: "text-foreground/80 mt-2 w-full truncate px-1 text-center text-xs sm:text-xs", children: file.name })
11472
+ ] })
11473
+ ] });
11474
+ }, "FilePreviewItem");
11386
11475
 
11387
11476
  // src/features/user/components/widgets/UserAvatar.tsx
11388
11477
  import { jsx as jsx105, jsxs as jsxs63 } from "react/jsx-runtime";
@@ -13501,10 +13590,8 @@ var useRoleContext = /* @__PURE__ */ __name(() => {
13501
13590
  }, "useRoleContext");
13502
13591
 
13503
13592
  // src/features/how-to/components/forms/HowToDeleter.tsx
13504
- import { useTranslations as useTranslations45 } from "next-intl";
13505
13593
  import { jsx as jsx147 } from "react/jsx-runtime";
13506
13594
  function HowToDeleterInternal({ howTo }) {
13507
- const t = useTranslations45();
13508
13595
  const generateUrl = usePageUrlGenerator();
13509
13596
  if (!howTo) return null;
13510
13597
  return /* @__PURE__ */ jsx147(
@@ -13525,14 +13612,14 @@ __name(HowToDeleter, "HowToDeleter");
13525
13612
  // src/features/how-to/components/forms/HowToEditor.tsx
13526
13613
  import { zodResolver as zodResolver4 } from "@hookform/resolvers/zod";
13527
13614
  import { PlusIcon, SearchIcon as SearchIcon6, XIcon as XIcon10 } from "lucide-react";
13528
- import { useTranslations as useTranslations47 } from "next-intl";
13615
+ import { useTranslations as useTranslations46 } from "next-intl";
13529
13616
  import { useCallback as useCallback24, useEffect as useEffect30, useMemo as useMemo18, useRef as useRef24, useState as useState41 } from "react";
13530
13617
  import { useForm as useForm4 } from "react-hook-form";
13531
13618
  import { v4 as v43 } from "uuid";
13532
13619
  import { z as z3 } from "zod";
13533
13620
 
13534
13621
  // src/features/how-to/components/forms/HowToMultiSelector.tsx
13535
- import { useTranslations as useTranslations46 } from "next-intl";
13622
+ import { useTranslations as useTranslations45 } from "next-intl";
13536
13623
  import { jsx as jsx148 } from "react/jsx-runtime";
13537
13624
  function HowToMultiSelector({
13538
13625
  id,
@@ -13543,7 +13630,7 @@ function HowToMultiSelector({
13543
13630
  onChange,
13544
13631
  isRequired = false
13545
13632
  }) {
13546
- const t = useTranslations46();
13633
+ const t = useTranslations45();
13547
13634
  return /* @__PURE__ */ jsx148(
13548
13635
  EntityMultiSelector,
13549
13636
  {
@@ -13644,7 +13731,7 @@ function HowToEditorInternal({
13644
13731
  onDialogOpenChange
13645
13732
  }) {
13646
13733
  const router = useI18nRouter();
13647
- const t = useTranslations47();
13734
+ const t = useTranslations46();
13648
13735
  const formSchema = useMemo18(
13649
13736
  () => z3.object({
13650
13737
  id: z3.string().uuid(),
@@ -13888,13 +13975,13 @@ function HowToEditor(props) {
13888
13975
  __name(HowToEditor, "HowToEditor");
13889
13976
 
13890
13977
  // src/features/how-to/contexts/HowToContext.tsx
13891
- import { useTranslations as useTranslations48 } from "next-intl";
13978
+ import { useTranslations as useTranslations47 } from "next-intl";
13892
13979
  import { createContext as createContext20, useContext as useContext21, useState as useState42 } from "react";
13893
13980
  import { jsx as jsx150 } from "react/jsx-runtime";
13894
13981
  var HowToContext = createContext20(void 0);
13895
13982
  var HowToProvider = /* @__PURE__ */ __name(({ children, dehydratedHowTo }) => {
13896
13983
  const generateUrl = usePageUrlGenerator();
13897
- const t = useTranslations48();
13984
+ const t = useTranslations47();
13898
13985
  const [howTo, setHowTo] = useState42(
13899
13986
  dehydratedHowTo ? rehydrate(Modules.HowTo, dehydratedHowTo) : void 0
13900
13987
  );
@@ -13953,7 +14040,7 @@ var useHowToContext = /* @__PURE__ */ __name(() => {
13953
14040
 
13954
14041
  // src/features/rbac/contexts/RbacContext.tsx
13955
14042
  import { DownloadIcon, Loader2Icon as Loader2Icon3 } from "lucide-react";
13956
- import { useTranslations as useTranslations49 } from "next-intl";
14043
+ import { useTranslations as useTranslations48 } from "next-intl";
13957
14044
  import { createContext as createContext21, useCallback as useCallback25, useContext as useContext22, useEffect as useEffect31, useMemo as useMemo19, useState as useState43 } from "react";
13958
14045
  import { jsx as jsx151, jsxs as jsxs84 } from "react/jsx-runtime";
13959
14046
  var DEFAULT_OUTPUT_PATH = "apps/api/src/rbac/permissions.ts";
@@ -13976,7 +14063,7 @@ var RbacProvider = /* @__PURE__ */ __name(({
13976
14063
  outputPath = DEFAULT_OUTPUT_PATH
13977
14064
  }) => {
13978
14065
  const generateUrl = usePageUrlGenerator();
13979
- const t = useTranslations49();
14066
+ const t = useTranslations48();
13980
14067
  const [matrix, setMatrix] = useState43(null);
13981
14068
  const [modulePaths, setModulePaths] = useState43({});
13982
14069
  const [loading, setLoading] = useState43(true);
@@ -14088,7 +14175,7 @@ var useRbacContext = /* @__PURE__ */ __name(() => {
14088
14175
  }, "useRbacContext");
14089
14176
 
14090
14177
  // src/features/assistant/contexts/AssistantContext.tsx
14091
- import { useTranslations as useTranslations50 } from "next-intl";
14178
+ import { useTranslations as useTranslations49 } from "next-intl";
14092
14179
  import { createContext as createContext22, useCallback as useCallback26, useContext as useContext23, useEffect as useEffect32, useMemo as useMemo20, useState as useState44 } from "react";
14093
14180
  import { jsx as jsx152 } from "react/jsx-runtime";
14094
14181
  var AssistantContext = createContext22(void 0);
@@ -14121,7 +14208,7 @@ function AssistantProvider({
14121
14208
  scope,
14122
14209
  threadUrl
14123
14210
  }) {
14124
- const t = useTranslations50();
14211
+ const t = useTranslations49();
14125
14212
  const generateUrl = usePageUrlGenerator();
14126
14213
  const resolveThreadUrl = useCallback26(
14127
14214
  (id) => threadUrl ? threadUrl(id) : id ? `/assistants/${id}` : "/assistants",
@@ -14334,13 +14421,13 @@ function useAssistantContext() {
14334
14421
  __name(useAssistantContext, "useAssistantContext");
14335
14422
 
14336
14423
  // src/contexts/CommonContext.tsx
14337
- import { useTranslations as useTranslations51 } from "next-intl";
14424
+ import { useTranslations as useTranslations50 } from "next-intl";
14338
14425
  import { createContext as createContext23, useContext as useContext24 } from "react";
14339
14426
  import { jsx as jsx153 } from "react/jsx-runtime";
14340
14427
  var CommonContext = createContext23(void 0);
14341
14428
  var CommonProvider = /* @__PURE__ */ __name(({ children }) => {
14342
14429
  const { company } = useCurrentUserContext();
14343
- const t = useTranslations51();
14430
+ const t = useTranslations50();
14344
14431
  const breadcrumb = /* @__PURE__ */ __name(() => {
14345
14432
  const response = [];
14346
14433
  return response;
@@ -14766,7 +14853,7 @@ function BreadcrumbMobile({
14766
14853
  __name(BreadcrumbMobile, "BreadcrumbMobile");
14767
14854
  function BreadcrumbNavigation({ items, rootLabel }) {
14768
14855
  const generateUrl = usePageUrlGenerator();
14769
- const t = useTranslations52();
14856
+ const t = useTranslations51();
14770
14857
  const isMobile = useIsMobile();
14771
14858
  const root = rootLabel?.trim() ? rootLabel : t(`common.home`);
14772
14859
  if (isMobile) {
@@ -14978,12 +15065,12 @@ __name(PageSection, "PageSection");
14978
15065
  // src/components/navigations/RecentPagesNavigator.tsx
14979
15066
  import { useAtomValue } from "jotai";
14980
15067
  import { HistoryIcon } from "lucide-react";
14981
- import { useTranslations as useTranslations53 } from "next-intl";
15068
+ import { useTranslations as useTranslations52 } from "next-intl";
14982
15069
  import { usePathname as usePathname4 } from "next/navigation";
14983
15070
  import { jsx as jsx162, jsxs as jsxs90 } from "react/jsx-runtime";
14984
15071
  function RecentPagesNavigator() {
14985
15072
  const recentPages = useAtomValue(recentPagesAtom);
14986
- const t = useTranslations53();
15073
+ const t = useTranslations52();
14987
15074
  const { isMobile } = useSidebar();
14988
15075
  const pathname = usePathname4();
14989
15076
  const isCurrentPage = /* @__PURE__ */ __name((url) => !!pathname && (pathname === url || pathname.startsWith(`${url}/`)), "isCurrentPage");
@@ -15068,7 +15155,7 @@ __name(partitionTabs, "partitionTabs");
15068
15155
 
15069
15156
  // src/components/containers/ReactMarkdownContainer.tsx
15070
15157
  import { ChevronDown as ChevronDown2, ChevronUp } from "lucide-react";
15071
- import { useTranslations as useTranslations54 } from "next-intl";
15158
+ import { useTranslations as useTranslations53 } from "next-intl";
15072
15159
  import { useEffect as useEffect40, useRef as useRef27, useState as useState50 } from "react";
15073
15160
  import ReactMarkdown from "react-markdown";
15074
15161
  import remarkGfm from "remark-gfm";
@@ -15079,7 +15166,7 @@ function ReactMarkdownContainer({
15079
15166
  initialLines = 4,
15080
15167
  size = "normal"
15081
15168
  }) {
15082
- const t = useTranslations54("ui.buttons");
15169
+ const t = useTranslations53("ui.buttons");
15083
15170
  const [isExpanded, setIsExpanded] = useState50(false);
15084
15171
  const [showExpandButton, setShowExpandButton] = useState50(false);
15085
15172
  const contentRef = useRef27(null);
@@ -15638,10 +15725,10 @@ function TabsContainer({
15638
15725
  __name(TabsContainer, "TabsContainer");
15639
15726
 
15640
15727
  // src/components/details/AllowedUsersDetails.tsx
15641
- import { useTranslations as useTranslations55 } from "next-intl";
15728
+ import { useTranslations as useTranslations54 } from "next-intl";
15642
15729
  import { jsx as jsx168, jsxs as jsxs96 } from "react/jsx-runtime";
15643
15730
  function AllowedUsersDetails({ showTitle, content }) {
15644
- const t = useTranslations55();
15731
+ const t = useTranslations54();
15645
15732
  return /* @__PURE__ */ jsxs96("div", { className: "mb-2 flex w-full flex-col gap-y-2", children: [
15646
15733
  showTitle && /* @__PURE__ */ jsx168("h3", { className: "text-xs font-semibold", children: t("common.permissions") }),
15647
15734
  /* @__PURE__ */ jsx168("div", { className: "flex w-full items-center justify-start gap-x-4", children: /* @__PURE__ */ jsx168(ContributorsList, { content }) })
@@ -16348,11 +16435,11 @@ function useRehydrationList(classKey, data) {
16348
16435
  __name(useRehydrationList, "useRehydrationList");
16349
16436
 
16350
16437
  // src/features/company/hooks/useCompanyTableStructure.tsx
16351
- import { useTranslations as useTranslations56 } from "next-intl";
16438
+ import { useTranslations as useTranslations55 } from "next-intl";
16352
16439
  import { useMemo as useMemo26 } from "react";
16353
16440
  import { jsx as jsx181 } from "react/jsx-runtime";
16354
16441
  var useCompanyTableStructure = /* @__PURE__ */ __name((params) => {
16355
- const t = useTranslations56();
16442
+ const t = useTranslations55();
16356
16443
  const generateUrl = usePageUrlGenerator();
16357
16444
  const { hasRole } = useCurrentUserContext();
16358
16445
  const tableData = useMemo26(() => {
@@ -16481,11 +16568,11 @@ function useSubscriptionStatus() {
16481
16568
  __name(useSubscriptionStatus, "useSubscriptionStatus");
16482
16569
 
16483
16570
  // src/features/role/hooks/useRoleTableStructure.tsx
16484
- import { useTranslations as useTranslations57 } from "next-intl";
16571
+ import { useTranslations as useTranslations56 } from "next-intl";
16485
16572
  import { useMemo as useMemo28 } from "react";
16486
16573
  import { Fragment as Fragment26, jsx as jsx182 } from "react/jsx-runtime";
16487
16574
  var useRoleTableStructure = /* @__PURE__ */ __name((params) => {
16488
- const t = useTranslations57();
16575
+ const t = useTranslations56();
16489
16576
  const generateUrl = usePageUrlGenerator();
16490
16577
  const tableData = useMemo28(() => {
16491
16578
  return params.data.map((role) => {
@@ -16536,7 +16623,7 @@ var useRoleTableStructure = /* @__PURE__ */ __name((params) => {
16536
16623
  }, "useRoleTableStructure");
16537
16624
 
16538
16625
  // src/features/billing/stripe-price/hooks/useStripePriceTableStructure.tsx
16539
- import { useTranslations as useTranslations58 } from "next-intl";
16626
+ import { useTranslations as useTranslations57 } from "next-intl";
16540
16627
  import { useMemo as useMemo29 } from "react";
16541
16628
 
16542
16629
  // src/features/billing/components/utils/currency.ts
@@ -16572,7 +16659,7 @@ __name(formatCurrency, "formatCurrency");
16572
16659
  // src/features/billing/stripe-price/hooks/useStripePriceTableStructure.tsx
16573
16660
  import { jsx as jsx183, jsxs as jsxs100 } from "react/jsx-runtime";
16574
16661
  var useStripePriceTableStructure = /* @__PURE__ */ __name((params) => {
16575
- const t = useTranslations58();
16662
+ const t = useTranslations57();
16576
16663
  const generateUrl = usePageUrlGenerator();
16577
16664
  const tableData = useMemo29(() => {
16578
16665
  return params.data.map((price) => {
@@ -16653,11 +16740,11 @@ var useStripePriceTableStructure = /* @__PURE__ */ __name((params) => {
16653
16740
  registerTableGenerator("stripe-prices", useStripePriceTableStructure);
16654
16741
 
16655
16742
  // src/features/billing/stripe-product/hooks/useStripeProductTableStructure.tsx
16656
- import { useTranslations as useTranslations59 } from "next-intl";
16743
+ import { useTranslations as useTranslations58 } from "next-intl";
16657
16744
  import { useMemo as useMemo30 } from "react";
16658
16745
  import { jsx as jsx184 } from "react/jsx-runtime";
16659
16746
  var useStripeProductTableStructure = /* @__PURE__ */ __name((params) => {
16660
- const t = useTranslations59();
16747
+ const t = useTranslations58();
16661
16748
  const generateUrl = usePageUrlGenerator();
16662
16749
  const tableData = useMemo30(() => {
16663
16750
  return params.data.map((product) => {
@@ -16712,11 +16799,11 @@ var useStripeProductTableStructure = /* @__PURE__ */ __name((params) => {
16712
16799
  registerTableGenerator("stripe-products", useStripeProductTableStructure);
16713
16800
 
16714
16801
  // src/features/content/hooks/useContentTableStructure.tsx
16715
- import { useTranslations as useTranslations60 } from "next-intl";
16802
+ import { useTranslations as useTranslations59 } from "next-intl";
16716
16803
  import { useMemo as useMemo31 } from "react";
16717
16804
  import { Fragment as Fragment27, jsx as jsx185, jsxs as jsxs101 } from "react/jsx-runtime";
16718
16805
  var useContentTableStructure = /* @__PURE__ */ __name((params) => {
16719
- const t = useTranslations60();
16806
+ const t = useTranslations59();
16720
16807
  const generateUrl = usePageUrlGenerator();
16721
16808
  const tableData = useMemo31(() => {
16722
16809
  return params.data.map((content) => {
@@ -17113,16 +17200,16 @@ registerTableGenerator("stripe-prices", useStripePriceTableStructure);
17113
17200
  // src/components/tables/ContentListTable.tsx
17114
17201
  import { flexRender, getCoreRowModel, getExpandedRowModel, useReactTable } from "@tanstack/react-table";
17115
17202
  import { ChevronLeft, ChevronRight, Loader2 as Loader23 } from "lucide-react";
17116
- import { useTranslations as useTranslations62 } from "next-intl";
17203
+ import { useTranslations as useTranslations61 } from "next-intl";
17117
17204
  import React31, { memo, useMemo as useMemo32, useState as useState60 } from "react";
17118
17205
 
17119
17206
  // src/components/tables/ContentTableSearch.tsx
17120
17207
  import { RefreshCw, Search, X as X3 } from "lucide-react";
17121
- import { useTranslations as useTranslations61 } from "next-intl";
17208
+ import { useTranslations as useTranslations60 } from "next-intl";
17122
17209
  import { useCallback as useCallback35, useEffect as useEffect50, useRef as useRef31, useState as useState59 } from "react";
17123
17210
  import { jsx as jsx186, jsxs as jsxs102 } from "react/jsx-runtime";
17124
17211
  function ContentTableSearch({ data }) {
17125
- const t = useTranslations61();
17212
+ const t = useTranslations60();
17126
17213
  const searchTermRef = useRef31("");
17127
17214
  const inputRef = useRef31(null);
17128
17215
  const [searchTerm, setSearchTerm] = useState59("");
@@ -17236,7 +17323,7 @@ function getGroupKeys(item, field) {
17236
17323
  __name(getGroupKeys, "getGroupKeys");
17237
17324
  var ContentListTable = memo(/* @__PURE__ */ __name(function ContentListTable2(props) {
17238
17325
  const { data, fields, checkedIds, toggleId, allowSearch, filters: _filters, fullWidth, onRowClick } = props;
17239
- const t = useTranslations62();
17326
+ const t = useTranslations61();
17240
17327
  const [expanded, setExpanded] = useState60(
17241
17328
  props.defaultExpanded === true ? true : typeof props.defaultExpanded === "object" ? props.defaultExpanded : {}
17242
17329
  );
@@ -17458,12 +17545,12 @@ function ContentListGrid(props) {
17458
17545
  __name(ContentListGrid, "ContentListGrid");
17459
17546
 
17460
17547
  // src/components/fiscal/ItalianFiscalData.tsx
17461
- import { useTranslations as useTranslations63 } from "next-intl";
17548
+ import { useTranslations as useTranslations62 } from "next-intl";
17462
17549
  import { forwardRef as forwardRef8, useCallback as useCallback36, useImperativeHandle as useImperativeHandle2, useRef as useRef33, useState as useState61 } from "react";
17463
17550
  import { z as z4 } from "zod";
17464
17551
  import { jsx as jsx189, jsxs as jsxs105 } from "react/jsx-runtime";
17465
17552
  var ItalianFiscalData = forwardRef8(/* @__PURE__ */ __name(function ItalianFiscalData2({ initialData }, ref) {
17466
- const t = useTranslations63();
17553
+ const t = useTranslations62();
17467
17554
  const initialRef = useRef33(initialData);
17468
17555
  const [fiscalData, setFiscalData] = useState61(initialData);
17469
17556
  const fiscalDataRef = useRef33(initialData);
@@ -17665,7 +17752,7 @@ import { createContext as createContext25, useContext as useContext26, useMemo a
17665
17752
  // src/features/auth/components/forms/Register.tsx
17666
17753
  import { zodResolver as zodResolver5 } from "@hookform/resolvers/zod";
17667
17754
  import { Loader2 as Loader24 } from "lucide-react";
17668
- import { useTranslations as useTranslations65 } from "next-intl";
17755
+ import { useTranslations as useTranslations64 } from "next-intl";
17669
17756
  import Image7 from "next/image";
17670
17757
  import { useSearchParams as useSearchParams2 } from "next/navigation";
17671
17758
  import { useEffect as useEffect52, useState as useState62 } from "react";
@@ -17674,14 +17761,14 @@ import { v4 as v45 } from "uuid";
17674
17761
  import { z as z5 } from "zod";
17675
17762
 
17676
17763
  // src/features/auth/components/GdprConsentSection.tsx
17677
- import { useTranslations as useTranslations64 } from "next-intl";
17764
+ import { useTranslations as useTranslations63 } from "next-intl";
17678
17765
  import { Fragment as Fragment30, jsx as jsx195, jsxs as jsxs109 } from "react/jsx-runtime";
17679
17766
  function GdprConsentSection({
17680
17767
  form,
17681
17768
  termsCheckboxId = "termsAccepted",
17682
17769
  marketingCheckboxId = "marketingConsent"
17683
17770
  }) {
17684
- const t = useTranslations64("auth.gdpr");
17771
+ const t = useTranslations63("auth.gdpr");
17685
17772
  const termsLabel = /* @__PURE__ */ jsxs109(Fragment30, { children: [
17686
17773
  t("terms_prefix"),
17687
17774
  " ",
@@ -17734,7 +17821,7 @@ function buildOAuthQueryParams(inviteCode, referralCode) {
17734
17821
  }
17735
17822
  __name(buildOAuthQueryParams, "buildOAuthQueryParams");
17736
17823
  function Register() {
17737
- const t = useTranslations65();
17824
+ const t = useTranslations64();
17738
17825
  const { setComponentType } = useAuthContext();
17739
17826
  const searchParams = useSearchParams2();
17740
17827
  const inviteCode = searchParams.get("invite");
@@ -18079,17 +18166,17 @@ __name(InnerAuthContainer, "InnerAuthContainer");
18079
18166
 
18080
18167
  // src/features/auth/components/two-factor/TwoFactorSettings.tsx
18081
18168
  import { ShieldAlert, ShieldCheck } from "lucide-react";
18082
- import { useTranslations as useTranslations72 } from "next-intl";
18169
+ import { useTranslations as useTranslations71 } from "next-intl";
18083
18170
  import { useCallback as useCallback37, useEffect as useEffect54, useState as useState71 } from "react";
18084
18171
  import { v4 as v48 } from "uuid";
18085
18172
 
18086
18173
  // src/features/auth/components/two-factor/BackupCodesDialog.tsx
18087
18174
  import { Copy, Download, RefreshCw as RefreshCw2 } from "lucide-react";
18088
- import { useTranslations as useTranslations66 } from "next-intl";
18175
+ import { useTranslations as useTranslations65 } from "next-intl";
18089
18176
  import { useState as useState64 } from "react";
18090
18177
  import { jsx as jsx199, jsxs as jsxs111 } from "react/jsx-runtime";
18091
18178
  function BackupCodesDialog({ remainingCodes, onRegenerate, trigger }) {
18092
- const t = useTranslations66();
18179
+ const t = useTranslations65();
18093
18180
  const [open, setOpen] = useState64(false);
18094
18181
  const [codes, setCodes] = useState64([]);
18095
18182
  const [isLoading, setIsLoading] = useState64(false);
@@ -18187,7 +18274,7 @@ Keep these codes safe. Each code can only be used once.`;
18187
18274
  __name(BackupCodesDialog, "BackupCodesDialog");
18188
18275
 
18189
18276
  // src/features/auth/components/two-factor/DisableTwoFactorDialog.tsx
18190
- import { useTranslations as useTranslations67 } from "next-intl";
18277
+ import { useTranslations as useTranslations66 } from "next-intl";
18191
18278
  import { useState as useState66 } from "react";
18192
18279
 
18193
18280
  // src/features/auth/components/two-factor/TotpInput.tsx
@@ -18257,7 +18344,7 @@ __name(TotpInput, "TotpInput");
18257
18344
  // src/features/auth/components/two-factor/DisableTwoFactorDialog.tsx
18258
18345
  import { jsx as jsx201, jsxs as jsxs113 } from "react/jsx-runtime";
18259
18346
  function DisableTwoFactorDialog({ onSuccess, trigger }) {
18260
- const t = useTranslations67();
18347
+ const t = useTranslations66();
18261
18348
  const [open, setOpen] = useState66(false);
18262
18349
  const [isLoading, setIsLoading] = useState66(false);
18263
18350
  const [error, setError] = useState66();
@@ -18300,11 +18387,11 @@ __name(DisableTwoFactorDialog, "DisableTwoFactorDialog");
18300
18387
 
18301
18388
  // src/features/auth/components/two-factor/PasskeyList.tsx
18302
18389
  import { Edit, Key, Trash2 } from "lucide-react";
18303
- import { useTranslations as useTranslations68 } from "next-intl";
18390
+ import { useTranslations as useTranslations67 } from "next-intl";
18304
18391
  import { useState as useState67 } from "react";
18305
18392
  import { Fragment as Fragment32, jsx as jsx202, jsxs as jsxs114 } from "react/jsx-runtime";
18306
18393
  function PasskeyList({ passkeys, onRefresh }) {
18307
- const t = useTranslations68();
18394
+ const t = useTranslations67();
18308
18395
  const [renameDialogOpen, setRenameDialogOpen] = useState67(false);
18309
18396
  const [selectedPasskey, setSelectedPasskey] = useState67(null);
18310
18397
  const [newName, setNewName] = useState67("");
@@ -18421,12 +18508,12 @@ __name(PasskeyList, "PasskeyList");
18421
18508
 
18422
18509
  // src/features/auth/components/two-factor/PasskeySetupDialog.tsx
18423
18510
  import { startRegistration } from "@simplewebauthn/browser";
18424
- import { useTranslations as useTranslations69 } from "next-intl";
18511
+ import { useTranslations as useTranslations68 } from "next-intl";
18425
18512
  import { useState as useState68 } from "react";
18426
18513
  import { v4 as v46 } from "uuid";
18427
18514
  import { jsx as jsx203, jsxs as jsxs115 } from "react/jsx-runtime";
18428
18515
  function PasskeySetupDialog({ open, onOpenChange, onSuccess }) {
18429
- const t = useTranslations69();
18516
+ const t = useTranslations68();
18430
18517
  const { currentUser } = useCurrentUserContext();
18431
18518
  const [name, setName] = useState68("");
18432
18519
  const [isLoading, setIsLoading] = useState68(false);
@@ -18492,11 +18579,11 @@ __name(PasskeySetupDialog, "PasskeySetupDialog");
18492
18579
 
18493
18580
  // src/features/auth/components/two-factor/TotpAuthenticatorList.tsx
18494
18581
  import { Smartphone, Trash2 as Trash22 } from "lucide-react";
18495
- import { useTranslations as useTranslations70 } from "next-intl";
18582
+ import { useTranslations as useTranslations69 } from "next-intl";
18496
18583
  import { useState as useState69 } from "react";
18497
18584
  import { jsx as jsx204, jsxs as jsxs116 } from "react/jsx-runtime";
18498
18585
  function TotpAuthenticatorList({ authenticators, onDelete }) {
18499
- const t = useTranslations70();
18586
+ const t = useTranslations69();
18500
18587
  const [deletingId, setDeletingId] = useState69(null);
18501
18588
  const handleDelete = /* @__PURE__ */ __name(async (id) => {
18502
18589
  setDeletingId(id);
@@ -18566,13 +18653,13 @@ function TotpAuthenticatorList({ authenticators, onDelete }) {
18566
18653
  __name(TotpAuthenticatorList, "TotpAuthenticatorList");
18567
18654
 
18568
18655
  // src/features/auth/components/two-factor/TotpSetupDialog.tsx
18569
- import { useTranslations as useTranslations71 } from "next-intl";
18656
+ import { useTranslations as useTranslations70 } from "next-intl";
18570
18657
  import { QRCodeSVG } from "qrcode.react";
18571
18658
  import { useState as useState70 } from "react";
18572
18659
  import { v4 as v47 } from "uuid";
18573
18660
  import { jsx as jsx205, jsxs as jsxs117 } from "react/jsx-runtime";
18574
18661
  function TotpSetupDialog({ onSuccess, trigger }) {
18575
- const t = useTranslations71();
18662
+ const t = useTranslations70();
18576
18663
  const { currentUser } = useCurrentUserContext();
18577
18664
  const [open, setOpen] = useState70(false);
18578
18665
  const [step, setStep] = useState70("name");
@@ -18677,7 +18764,7 @@ __name(TotpSetupDialog, "TotpSetupDialog");
18677
18764
  // src/features/auth/components/two-factor/TwoFactorSettings.tsx
18678
18765
  import { Fragment as Fragment33, jsx as jsx206, jsxs as jsxs118 } from "react/jsx-runtime";
18679
18766
  function TwoFactorSettings() {
18680
- const t = useTranslations72();
18767
+ const t = useTranslations71();
18681
18768
  const [status, setStatus] = useState71(null);
18682
18769
  const [authenticators, setAuthenticators] = useState71([]);
18683
18770
  const [passkeys, setPasskeys] = useState71([]);
@@ -18795,7 +18882,7 @@ function SecurityContainer() {
18795
18882
  __name(SecurityContainer, "SecurityContainer");
18796
18883
 
18797
18884
  // src/features/auth/components/details/LandingComponent.tsx
18798
- import { useTranslations as useTranslations73 } from "next-intl";
18885
+ import { useTranslations as useTranslations72 } from "next-intl";
18799
18886
  import Image9 from "next/image";
18800
18887
 
18801
18888
  // src/features/auth/components/buttons/GoogleSignInButton.tsx
@@ -18856,7 +18943,7 @@ __name(GoogleSignInButton, "GoogleSignInButton");
18856
18943
  // src/features/auth/components/details/LandingComponent.tsx
18857
18944
  import { Fragment as Fragment34, jsx as jsx209, jsxs as jsxs120 } from "react/jsx-runtime";
18858
18945
  function LandingComponent() {
18859
- const t = useTranslations73();
18946
+ const t = useTranslations72();
18860
18947
  const { setComponentType } = useAuthContext();
18861
18948
  return /* @__PURE__ */ jsxs120(Fragment34, { children: [
18862
18949
  /* @__PURE__ */ jsxs120(CardHeader, { className: "mb-4", "data-testid": "page-pre-login-container", children: [
@@ -18888,7 +18975,7 @@ __name(LandingComponent, "LandingComponent");
18888
18975
 
18889
18976
  // src/features/auth/components/forms/AcceptInvitation.tsx
18890
18977
  import { zodResolver as zodResolver6 } from "@hookform/resolvers/zod";
18891
- import { useTranslations as useTranslations74 } from "next-intl";
18978
+ import { useTranslations as useTranslations73 } from "next-intl";
18892
18979
  import Image10 from "next/image";
18893
18980
  import { useEffect as useEffect55, useState as useState72 } from "react";
18894
18981
  import { useForm as useForm6 } from "react-hook-form";
@@ -18898,7 +18985,7 @@ function AcceptInvitation() {
18898
18985
  const { setComponentType, params, setParams } = useAuthContext();
18899
18986
  const [showConfirmation, setShowConfirmation] = useState72(false);
18900
18987
  const [error, setError] = useState72(void 0);
18901
- const t = useTranslations74();
18988
+ const t = useTranslations73();
18902
18989
  useEffect55(() => {
18903
18990
  async function validateCode(code) {
18904
18991
  try {
@@ -18990,7 +19077,7 @@ function AcceptInvitation() {
18990
19077
  __name(AcceptInvitation, "AcceptInvitation");
18991
19078
 
18992
19079
  // src/features/auth/components/forms/ActivateAccount.tsx
18993
- import { useTranslations as useTranslations75 } from "next-intl";
19080
+ import { useTranslations as useTranslations74 } from "next-intl";
18994
19081
  import Image11 from "next/image";
18995
19082
  import { useEffect as useEffect56, useState as useState73 } from "react";
18996
19083
  import { Fragment as Fragment36, jsx as jsx211, jsxs as jsxs122 } from "react/jsx-runtime";
@@ -18998,7 +19085,7 @@ function ActivateAccount() {
18998
19085
  const { setComponentType, params, setParams } = useAuthContext();
18999
19086
  const [showConfirmation, setShowConfirmation] = useState73(false);
19000
19087
  const [error, setError] = useState73(void 0);
19001
- const t = useTranslations75();
19088
+ const t = useTranslations74();
19002
19089
  useEffect56(() => {
19003
19090
  async function ActivateAccount2(code) {
19004
19091
  try {
@@ -19066,14 +19153,14 @@ __name(Cookies, "Cookies");
19066
19153
 
19067
19154
  // src/features/auth/components/forms/ForgotPassword.tsx
19068
19155
  import { zodResolver as zodResolver7 } from "@hookform/resolvers/zod";
19069
- import { useTranslations as useTranslations76 } from "next-intl";
19156
+ import { useTranslations as useTranslations75 } from "next-intl";
19070
19157
  import Image12 from "next/image";
19071
19158
  import { useState as useState75 } from "react";
19072
19159
  import { useForm as useForm7 } from "react-hook-form";
19073
19160
  import { z as z7 } from "zod";
19074
19161
  import { Fragment as Fragment37, jsx as jsx212, jsxs as jsxs123 } from "react/jsx-runtime";
19075
19162
  function ForgotPassword() {
19076
- const t = useTranslations76();
19163
+ const t = useTranslations75();
19077
19164
  const { setComponentType } = useAuthContext();
19078
19165
  const [showConfirmation, setShowConfirmation] = useState75(false);
19079
19166
  const formSchema = z7.object({
@@ -19137,7 +19224,7 @@ __name(ForgotPassword, "ForgotPassword");
19137
19224
 
19138
19225
  // src/features/auth/components/forms/Login.tsx
19139
19226
  import { zodResolver as zodResolver8 } from "@hookform/resolvers/zod";
19140
- import { useTranslations as useTranslations77 } from "next-intl";
19227
+ import { useTranslations as useTranslations76 } from "next-intl";
19141
19228
  import Image13 from "next/image";
19142
19229
  import { useRouter, useSearchParams as useSearchParams3 } from "next/navigation";
19143
19230
  import { useEffect as useEffect58, useState as useState76 } from "react";
@@ -19145,7 +19232,7 @@ import { useForm as useForm8 } from "react-hook-form";
19145
19232
  import { z as z8 } from "zod";
19146
19233
  import { Fragment as Fragment38, jsx as jsx213, jsxs as jsxs124 } from "react/jsx-runtime";
19147
19234
  function Login() {
19148
- const t = useTranslations77();
19235
+ const t = useTranslations76();
19149
19236
  const { setUser } = useCurrentUserContext();
19150
19237
  const { setComponentType, setPendingTwoFactor } = useAuthContext();
19151
19238
  const generateUrl = usePageUrlGenerator();
@@ -19332,7 +19419,7 @@ __name(RefreshUser, "RefreshUser");
19332
19419
 
19333
19420
  // src/features/auth/components/forms/ResetPassword.tsx
19334
19421
  import { zodResolver as zodResolver9 } from "@hookform/resolvers/zod";
19335
- import { useTranslations as useTranslations78 } from "next-intl";
19422
+ import { useTranslations as useTranslations77 } from "next-intl";
19336
19423
  import Image14 from "next/image";
19337
19424
  import { useEffect as useEffect61, useState as useState77 } from "react";
19338
19425
  import { useForm as useForm9 } from "react-hook-form";
@@ -19342,7 +19429,7 @@ function ResetPassword() {
19342
19429
  const { setComponentType, params, setParams } = useAuthContext();
19343
19430
  const [showConfirmation, setShowConfirmation] = useState77(false);
19344
19431
  const [error, setError] = useState77(void 0);
19345
- const t = useTranslations78();
19432
+ const t = useTranslations77();
19346
19433
  useEffect61(() => {
19347
19434
  async function validateResetPasswordCode(code) {
19348
19435
  try {
@@ -19418,19 +19505,19 @@ function ResetPassword() {
19418
19505
  __name(ResetPassword, "ResetPassword");
19419
19506
 
19420
19507
  // src/features/auth/components/forms/TwoFactorChallenge.tsx
19421
- import { useTranslations as useTranslations80 } from "next-intl";
19508
+ import { useTranslations as useTranslations79 } from "next-intl";
19422
19509
  import { useRouter as useRouter2, useSearchParams as useSearchParams4 } from "next/navigation";
19423
19510
  import { useState as useState79 } from "react";
19424
19511
  import { v4 as v410 } from "uuid";
19425
19512
 
19426
19513
  // src/features/auth/components/two-factor/PasskeyButton.tsx
19427
19514
  import { startAuthentication } from "@simplewebauthn/browser";
19428
- import { useTranslations as useTranslations79 } from "next-intl";
19515
+ import { useTranslations as useTranslations78 } from "next-intl";
19429
19516
  import { useState as useState78 } from "react";
19430
19517
  import { v4 as v49 } from "uuid";
19431
19518
  import { jsx as jsx216 } from "react/jsx-runtime";
19432
19519
  function PasskeyButton({ pendingToken, onSuccess, onError, disabled = false }) {
19433
- const t = useTranslations79();
19520
+ const t = useTranslations78();
19434
19521
  const [isLoading, setIsLoading] = useState78(false);
19435
19522
  const handleClick = /* @__PURE__ */ __name(async () => {
19436
19523
  setIsLoading(true);
@@ -19468,7 +19555,7 @@ __name(PasskeyButton, "PasskeyButton");
19468
19555
  // src/features/auth/components/forms/TwoFactorChallenge.tsx
19469
19556
  import { Fragment as Fragment41, jsx as jsx217, jsxs as jsxs126 } from "react/jsx-runtime";
19470
19557
  function TwoFactorChallenge() {
19471
- const t = useTranslations80();
19558
+ const t = useTranslations79();
19472
19559
  const { setUser } = useCurrentUserContext();
19473
19560
  const { pendingTwoFactor, setPendingTwoFactor } = useAuthContext();
19474
19561
  const generateUrl = usePageUrlGenerator();
@@ -19606,7 +19693,7 @@ __name(TwoFactorChallenge, "TwoFactorChallenge");
19606
19693
 
19607
19694
  // src/features/administration/components/AdminIndexContainer.tsx
19608
19695
  import { Building2Icon, CoinsIcon, CreditCardIcon, PlugZapIcon, ShieldCheckIcon, UsersIcon } from "lucide-react";
19609
- import { useTranslations as useTranslations81 } from "next-intl";
19696
+ import { useTranslations as useTranslations80 } from "next-intl";
19610
19697
  import { jsx as jsx218, jsxs as jsxs127 } from "react/jsx-runtime";
19611
19698
  var PLATFORM_SECTIONS = [
19612
19699
  {
@@ -19656,7 +19743,7 @@ var BILLING_SECTION = {
19656
19743
  href: "/administration/products"
19657
19744
  };
19658
19745
  function AdminIndexGrid({ additionalGroups = [], hiddenSections = [] }) {
19659
- const t = useTranslations81();
19746
+ const t = useTranslations80();
19660
19747
  const available = getStripePublishableKey() ? [...PLATFORM_SECTIONS, BILLING_SECTION] : PLATFORM_SECTIONS;
19661
19748
  const platformGroup = {
19662
19749
  key: "platform",
@@ -19764,7 +19851,7 @@ var AI_CONNECTIONS_I18N_KEYS = [
19764
19851
  ];
19765
19852
 
19766
19853
  // src/features/ai-connection/contexts/AiConnectionsContext.tsx
19767
- import { useTranslations as useTranslations82 } from "next-intl";
19854
+ import { useTranslations as useTranslations81 } from "next-intl";
19768
19855
  import { createContext as createContext26, useCallback as useCallback38, useContext as useContext27, useEffect as useEffect62, useMemo as useMemo34, useState as useState80 } from "react";
19769
19856
  import { jsx as jsx219 } from "react/jsx-runtime";
19770
19857
  var AI_CONNECTIONS_ADMIN_PAGE_URL = "/administration/ai-connections";
@@ -19781,7 +19868,7 @@ var defaultContextValue3 = {
19781
19868
  };
19782
19869
  var AiConnectionsContext = createContext26(void 0);
19783
19870
  var AiConnectionsProvider = /* @__PURE__ */ __name(({ children }) => {
19784
- const t = useTranslations82();
19871
+ const t = useTranslations81();
19785
19872
  const generateUrl = usePageUrlGenerator();
19786
19873
  const [connections, setConnections] = useState80([]);
19787
19874
  const [providerRegistry, setProviderRegistry] = useState80({});
@@ -19825,21 +19912,21 @@ var AiConnectionsProvider = /* @__PURE__ */ __name(({ children }) => {
19825
19912
  var useAiConnections = /* @__PURE__ */ __name(() => useContext27(AiConnectionsContext) ?? defaultContextValue3, "useAiConnections");
19826
19913
 
19827
19914
  // src/features/ai-connection/components/containers/AiConnectionsContainer.tsx
19828
- import { useTranslations as useTranslations86 } from "next-intl";
19915
+ import { useTranslations as useTranslations85 } from "next-intl";
19829
19916
  import { useEffect as useEffect64, useMemo as useMemo37, useState as useState82 } from "react";
19830
19917
 
19831
19918
  // src/features/ai-connection/components/lists/AiConnectionTypeCard.tsx
19832
19919
  import { ChevronDownIcon as ChevronDownIcon10, ChevronUpIcon as ChevronUpIcon3, PlusIcon as PlusIcon2 } from "lucide-react";
19833
- import { useTranslations as useTranslations85 } from "next-intl";
19920
+ import { useTranslations as useTranslations84 } from "next-intl";
19834
19921
  import { useMemo as useMemo36 } from "react";
19835
19922
 
19836
19923
  // src/features/ai-connection/components/forms/AiConnectionDeleter.tsx
19837
19924
  import { TrashIcon } from "lucide-react";
19838
- import { useTranslations as useTranslations83 } from "next-intl";
19925
+ import { useTranslations as useTranslations82 } from "next-intl";
19839
19926
  import { useState as useState81 } from "react";
19840
19927
  import { Fragment as Fragment42, jsx as jsx220, jsxs as jsxs128 } from "react/jsx-runtime";
19841
19928
  function AiConnectionDeleter({ connection }) {
19842
- const t = useTranslations83();
19929
+ const t = useTranslations82();
19843
19930
  const { refresh } = useAiConnections();
19844
19931
  const [open, setOpen] = useState81(false);
19845
19932
  return /* @__PURE__ */ jsxs128(Fragment42, { children: [
@@ -19881,7 +19968,7 @@ __name(AiConnectionDeleter, "AiConnectionDeleter");
19881
19968
 
19882
19969
  // src/features/ai-connection/components/forms/AiConnectionEditor.tsx
19883
19970
  import { zodResolver as zodResolver10 } from "@hookform/resolvers/zod";
19884
- import { useTranslations as useTranslations84 } from "next-intl";
19971
+ import { useTranslations as useTranslations83 } from "next-intl";
19885
19972
  import { useCallback as useCallback39, useEffect as useEffect63, useMemo as useMemo35 } from "react";
19886
19973
  import { useForm as useForm10 } from "react-hook-form";
19887
19974
  import { v4 as v411 } from "uuid";
@@ -19903,7 +19990,7 @@ function AiConnectionEditor({
19903
19990
  forceShow,
19904
19991
  onClose
19905
19992
  }) {
19906
- const t = useTranslations84();
19993
+ const t = useTranslations83();
19907
19994
  const { providerRegistry, refresh } = useAiConnections();
19908
19995
  const isEdit = !!connection;
19909
19996
  const registryRows = useMemo35(() => providerRegistry[connectionType] ?? [], [providerRegistry, connectionType]);
@@ -20153,7 +20240,7 @@ function toInput(connection, overrides) {
20153
20240
  }
20154
20241
  __name(toInput, "toInput");
20155
20242
  function AiConnectionTypeCard({ connectionType }) {
20156
- const t = useTranslations85();
20243
+ const t = useTranslations84();
20157
20244
  const { connections, envDefaults, scopeCompanyId, refresh } = useAiConnections();
20158
20245
  const rows = useMemo36(
20159
20246
  () => connections.filter(
@@ -20308,7 +20395,7 @@ function AiConnectionsContainer() {
20308
20395
  }
20309
20396
  __name(AiConnectionsContainer, "AiConnectionsContainer");
20310
20397
  function AiConnectionsBody() {
20311
- const t = useTranslations86();
20398
+ const t = useTranslations85();
20312
20399
  const { scopeCompanyId, setScopeCompanyId } = useAiConnections();
20313
20400
  const [companies, setCompanies] = useState82([]);
20314
20401
  useEffect64(() => {
@@ -20351,10 +20438,10 @@ function AiConnectionsBody() {
20351
20438
  __name(AiConnectionsBody, "AiConnectionsBody");
20352
20439
 
20353
20440
  // src/features/content/components/lists/ContentsList.tsx
20354
- import { useTranslations as useTranslations87 } from "next-intl";
20441
+ import { useTranslations as useTranslations86 } from "next-intl";
20355
20442
  import { jsx as jsx224, jsxs as jsxs132 } from "react/jsx-runtime";
20356
20443
  function ContentsList({ contentList }) {
20357
- const t = useTranslations87();
20444
+ const t = useTranslations86();
20358
20445
  return /* @__PURE__ */ jsxs132("div", { className: "flex min-h-0 w-full flex-col overflow-y-auto", children: [
20359
20446
  /* @__PURE__ */ jsx224(SectionHeader, { level: 2, children: t(`content.news`) }),
20360
20447
  /* @__PURE__ */ jsx224("div", { className: "flex flex-col", children: contentList.map((content) => /* @__PURE__ */ jsx224(ContentsListElement, { content }, content.id)) })
@@ -20382,10 +20469,10 @@ function ContentsListElement({ content }) {
20382
20469
  __name(ContentsListElement, "ContentsListElement");
20383
20470
 
20384
20471
  // src/features/content/components/lists/ContentsListById.tsx
20385
- import { useTranslations as useTranslations88 } from "next-intl";
20472
+ import { useTranslations as useTranslations87 } from "next-intl";
20386
20473
  import { jsx as jsx225 } from "react/jsx-runtime";
20387
20474
  function ContentsListById({ contentIds }) {
20388
- const t = useTranslations88();
20475
+ const t = useTranslations87();
20389
20476
  const data = useDataListRetriever({
20390
20477
  module: Modules.Content,
20391
20478
  retriever: /* @__PURE__ */ __name((params) => ContentService.findMany(params), "retriever"),
@@ -20404,10 +20491,10 @@ function ContentsListById({ contentIds }) {
20404
20491
  __name(ContentsListById, "ContentsListById");
20405
20492
 
20406
20493
  // src/features/content/components/lists/RelevantContentsList.tsx
20407
- import { useTranslations as useTranslations89 } from "next-intl";
20494
+ import { useTranslations as useTranslations88 } from "next-intl";
20408
20495
  import { jsx as jsx226 } from "react/jsx-runtime";
20409
20496
  function RelevantContentsList({ id }) {
20410
- const t = useTranslations89();
20497
+ const t = useTranslations88();
20411
20498
  const data = useDataListRetriever({
20412
20499
  module: Modules.Content,
20413
20500
  retriever: /* @__PURE__ */ __name((params) => ContentService.findRelevant(params), "retriever"),
@@ -20427,12 +20514,12 @@ __name(RelevantContentsList, "RelevantContentsList");
20427
20514
 
20428
20515
  // src/features/how-to/components/containers/HowToCommand.tsx
20429
20516
  import { ArrowRight, LifeBuoyIcon } from "lucide-react";
20430
- import { useTranslations as useTranslations91 } from "next-intl";
20517
+ import { useTranslations as useTranslations90 } from "next-intl";
20431
20518
  import { useCallback as useCallback40, useEffect as useEffect65, useMemo as useMemo39, useRef as useRef35, useState as useState83 } from "react";
20432
20519
 
20433
20520
  // src/features/how-to/components/containers/HowToCommandViewer.tsx
20434
20521
  import { ArrowLeft, BookOpen, MessageSquare } from "lucide-react";
20435
- import { useTranslations as useTranslations90 } from "next-intl";
20522
+ import { useTranslations as useTranslations89 } from "next-intl";
20436
20523
  import { useMemo as useMemo38 } from "react";
20437
20524
 
20438
20525
  // src/features/how-to/utils/blocknote.ts
@@ -20504,7 +20591,7 @@ __name(extractHeadings, "extractHeadings");
20504
20591
  // src/features/how-to/components/containers/HowToCommandViewer.tsx
20505
20592
  import { jsx as jsx227, jsxs as jsxs133 } from "react/jsx-runtime";
20506
20593
  function HowToCommandViewer({ howTo, onBack, onStartChat }) {
20507
- const t = useTranslations90();
20594
+ const t = useTranslations89();
20508
20595
  const readingTime = useMemo38(() => calculateReadingTime(howTo.description), [howTo.description]);
20509
20596
  const headings = useMemo38(() => extractHeadings(howTo.description), [howTo.description]);
20510
20597
  return /* @__PURE__ */ jsxs133("div", { className: "flex h-full flex-col", children: [
@@ -20553,7 +20640,7 @@ function matchPage(pathname, pattern) {
20553
20640
  }
20554
20641
  __name(matchPage, "matchPage");
20555
20642
  function HowToCommand({ pathname, extraGroups, onStartChat }) {
20556
- const t = useTranslations91();
20643
+ const t = useTranslations90();
20557
20644
  const [dialogOpen, setDialogOpen] = useState83(false);
20558
20645
  const [selectedHowTo, setSelectedHowTo] = useState83(null);
20559
20646
  const searchTermRef = useRef35("");
@@ -20719,10 +20806,10 @@ function HowToContent() {
20719
20806
  __name(HowToContent, "HowToContent");
20720
20807
 
20721
20808
  // src/features/how-to/components/details/HowToDetails.tsx
20722
- import { useTranslations as useTranslations92 } from "next-intl";
20809
+ import { useTranslations as useTranslations91 } from "next-intl";
20723
20810
  import { jsx as jsx230, jsxs as jsxs135 } from "react/jsx-runtime";
20724
20811
  function HowToDetailsInternal({ howTo }) {
20725
- const t = useTranslations92();
20812
+ const t = useTranslations91();
20726
20813
  const { title } = useSharedContext();
20727
20814
  const pagesList = HowTo.parsePagesFromString(howTo.pages);
20728
20815
  return /* @__PURE__ */ jsxs135("div", { className: "flex w-full flex-col gap-y-4", children: [
@@ -20746,26 +20833,26 @@ __name(HowToDetails, "HowToDetails");
20746
20833
 
20747
20834
  // src/features/how-to/components/containers/HowToContainer.tsx
20748
20835
  import { jsx as jsx231 } from "react/jsx-runtime";
20749
- function HowToContainerInternal({ howTo }) {
20836
+ function HowToContainerInternal() {
20750
20837
  return /* @__PURE__ */ jsx231(RoundPageContainer, { module: Modules.HowTo, details: /* @__PURE__ */ jsx231(HowToDetails, {}), children: /* @__PURE__ */ jsx231(HowToContent, {}) });
20751
20838
  }
20752
20839
  __name(HowToContainerInternal, "HowToContainerInternal");
20753
20840
  function HowToContainer() {
20754
20841
  const { howTo } = useHowToContext();
20755
20842
  if (!howTo) return null;
20756
- return /* @__PURE__ */ jsx231(HowToContainerInternal, { howTo });
20843
+ return /* @__PURE__ */ jsx231(HowToContainerInternal, {});
20757
20844
  }
20758
20845
  __name(HowToContainer, "HowToContainer");
20759
20846
 
20760
20847
  // src/features/how-to/components/lists/HowToList.tsx
20761
- import { useTranslations as useTranslations94 } from "next-intl";
20848
+ import { useTranslations as useTranslations93 } from "next-intl";
20762
20849
 
20763
20850
  // src/features/how-to/hooks/useHowToTableStructure.tsx
20764
- import { useTranslations as useTranslations93 } from "next-intl";
20851
+ import { useTranslations as useTranslations92 } from "next-intl";
20765
20852
  import { useMemo as useMemo40 } from "react";
20766
20853
  import { Fragment as Fragment45, jsx as jsx232 } from "react/jsx-runtime";
20767
20854
  var useHowToTableStructure = /* @__PURE__ */ __name((params) => {
20768
- const t = useTranslations93();
20855
+ const t = useTranslations92();
20769
20856
  const generateUrl = usePageUrlGenerator();
20770
20857
  const tableData = useMemo40(() => {
20771
20858
  return params.data.map((howTo) => {
@@ -20831,7 +20918,7 @@ registerTableGenerator("howtos", useHowToTableStructure);
20831
20918
  // src/features/how-to/components/lists/HowToList.tsx
20832
20919
  import { jsx as jsx233 } from "react/jsx-runtime";
20833
20920
  function HowToList({ fullWidth }) {
20834
- const t = useTranslations94();
20921
+ const t = useTranslations93();
20835
20922
  const data = useDataListRetriever({
20836
20923
  module: Modules.HowTo,
20837
20924
  retriever: /* @__PURE__ */ __name((params) => HowToService.findMany(params), "retriever"),
@@ -20865,7 +20952,7 @@ __name(HowToListContainer, "HowToListContainer");
20865
20952
 
20866
20953
  // src/features/how-to/components/forms/HowToSelector.tsx
20867
20954
  import { CircleX as CircleX3, RefreshCwIcon as RefreshCwIcon4, SearchIcon as SearchIcon7, XIcon as XIcon11 } from "lucide-react";
20868
- import { useTranslations as useTranslations95 } from "next-intl";
20955
+ import { useTranslations as useTranslations94 } from "next-intl";
20869
20956
  import { useCallback as useCallback41, useEffect as useEffect66, useRef as useRef36, useState as useState84 } from "react";
20870
20957
  import { Fragment as Fragment46, jsx as jsx235, jsxs as jsxs136 } from "react/jsx-runtime";
20871
20958
  function HowToSelector({
@@ -20876,7 +20963,7 @@ function HowToSelector({
20876
20963
  onChange,
20877
20964
  isRequired = false
20878
20965
  }) {
20879
- const t = useTranslations95();
20966
+ const t = useTranslations94();
20880
20967
  const [open, setOpen] = useState84(false);
20881
20968
  const searchTermRef = useRef36("");
20882
20969
  const [searchTerm, setSearchTerm] = useState84("");
@@ -20969,7 +21056,7 @@ function HowToSelector({
20969
21056
  __name(HowToSelector, "HowToSelector");
20970
21057
 
20971
21058
  // src/features/assistant/components/parts/AssistantSidebar.tsx
20972
- import { useTranslations as useTranslations96 } from "next-intl";
21059
+ import { useTranslations as useTranslations95 } from "next-intl";
20973
21060
  import { Plus as Plus2 } from "lucide-react";
20974
21061
 
20975
21062
  // src/features/assistant/utils/groupThreadsByBucket.ts
@@ -20995,7 +21082,7 @@ __name(groupThreadsByBucket, "groupThreadsByBucket");
20995
21082
  // src/features/assistant/components/parts/AssistantSidebar.tsx
20996
21083
  import { Fragment as Fragment47, jsx as jsx236, jsxs as jsxs137 } from "react/jsx-runtime";
20997
21084
  function AssistantSidebar({ threads, activeId, onSelect, onNew }) {
20998
- const t = useTranslations96();
21085
+ const t = useTranslations95();
20999
21086
  const groups = groupThreadsByBucket(threads);
21000
21087
  const renderSection = /* @__PURE__ */ __name((label, items) => {
21001
21088
  if (items.length === 0) return null;
@@ -21030,16 +21117,16 @@ __name(AssistantSidebar, "AssistantSidebar");
21030
21117
 
21031
21118
  // src/features/assistant/components/parts/AssistantEmptyState.tsx
21032
21119
  import { useState as useState86 } from "react";
21033
- import { useTranslations as useTranslations98 } from "next-intl";
21120
+ import { useTranslations as useTranslations97 } from "next-intl";
21034
21121
  import { Sparkles } from "lucide-react";
21035
21122
 
21036
21123
  // src/features/assistant/components/parts/AssistantComposer.tsx
21037
21124
  import { useState as useState85 } from "react";
21038
- import { useTranslations as useTranslations97 } from "next-intl";
21125
+ import { useTranslations as useTranslations96 } from "next-intl";
21039
21126
  import { ArrowUp } from "lucide-react";
21040
21127
  import { jsx as jsx237, jsxs as jsxs138 } from "react/jsx-runtime";
21041
21128
  function AssistantComposer({ onSend, disabled, value: controlled, onValueChange }) {
21042
- const t = useTranslations97();
21129
+ const t = useTranslations96();
21043
21130
  const [internal, setInternal] = useState85("");
21044
21131
  const value = controlled ?? internal;
21045
21132
  const setValue = onValueChange ?? setInternal;
@@ -21085,7 +21172,7 @@ __name(AssistantComposer, "AssistantComposer");
21085
21172
  import { jsx as jsx238, jsxs as jsxs139 } from "react/jsx-runtime";
21086
21173
  var STARTER_KEYS = ["a", "b", "c", "d"];
21087
21174
  function AssistantEmptyState({ onSend, operatorMode = false, onOperatorModeChange }) {
21088
- const t = useTranslations98();
21175
+ const t = useTranslations97();
21089
21176
  const [draft, setDraft] = useState86("");
21090
21177
  return /* @__PURE__ */ jsx238("div", { className: "flex h-full w-full items-center justify-center p-10", children: /* @__PURE__ */ jsxs139("div", { className: "flex w-full max-w-2xl flex-col gap-6", children: [
21091
21178
  /* @__PURE__ */ jsxs139("div", { className: "text-center", children: [
@@ -21125,10 +21212,10 @@ __name(AssistantEmptyState, "AssistantEmptyState");
21125
21212
 
21126
21213
  // src/features/assistant/components/parts/AssistantThreadHeader.tsx
21127
21214
  import { useState as useState87 } from "react";
21128
- import { useTranslations as useTranslations99 } from "next-intl";
21215
+ import { useTranslations as useTranslations98 } from "next-intl";
21129
21216
  import { jsx as jsx239, jsxs as jsxs140 } from "react/jsx-runtime";
21130
21217
  function AssistantThreadHeader({ assistant, onRename, onDelete }) {
21131
- const t = useTranslations99();
21218
+ const t = useTranslations98();
21132
21219
  const [renameValue, setRenameValue] = useState87(assistant.title);
21133
21220
  const [renameOpen, setRenameOpen] = useState87(false);
21134
21221
  const [deleteOpen, setDeleteOpen] = useState87(false);
@@ -21187,7 +21274,7 @@ __name(AssistantThreadHeader, "AssistantThreadHeader");
21187
21274
  import { useEffect as useEffect68, useRef as useRef37 } from "react";
21188
21275
 
21189
21276
  // src/features/assistant-message/components/MessageItem.tsx
21190
- import { useTranslations as useTranslations106 } from "next-intl";
21277
+ import { useTranslations as useTranslations105 } from "next-intl";
21191
21278
  import { Sparkles as Sparkles2, AlertCircle } from "lucide-react";
21192
21279
  import { useMemo as useMemo43 } from "react";
21193
21280
  import ReactMarkdown3, { defaultUrlTransform } from "react-markdown";
@@ -21198,18 +21285,18 @@ import { useEffect as useEffect67, useMemo as useMemo42, useState as useState90
21198
21285
 
21199
21286
  // src/features/assistant-message/components/parts/MessageSourcesPanel.tsx
21200
21287
  import { useMemo as useMemo41, useState as useState89 } from "react";
21201
- import { useTranslations as useTranslations105 } from "next-intl";
21288
+ import { useTranslations as useTranslations104 } from "next-intl";
21202
21289
  import { ChevronDown as ChevronDown4, ChevronRight as ChevronRight2 } from "lucide-react";
21203
21290
 
21204
21291
  // src/features/assistant-message/components/parts/tabs/ReferencesTab.tsx
21205
- import { useTranslations as useTranslations101 } from "next-intl";
21292
+ import { useTranslations as useTranslations100 } from "next-intl";
21206
21293
  import Link4 from "next/link";
21207
21294
 
21208
21295
  // src/features/assistant-message/components/parts/tabs/useEntityLabel.ts
21209
- import { useTranslations as useTranslations100 } from "next-intl";
21296
+ import { useTranslations as useTranslations99 } from "next-intl";
21210
21297
  import { useCallback as useCallback42 } from "react";
21211
21298
  function useEntityLabel() {
21212
- const t = useTranslations100();
21299
+ const t = useTranslations99();
21213
21300
  return useCallback42(
21214
21301
  (type) => {
21215
21302
  const key = `entities.${type}`;
@@ -21228,7 +21315,7 @@ __name(useEntityLabel, "useEntityLabel");
21228
21315
  // src/features/assistant-message/components/parts/tabs/ReferencesTab.tsx
21229
21316
  import { jsx as jsx240, jsxs as jsxs141 } from "react/jsx-runtime";
21230
21317
  function ReferencesTab({ references }) {
21231
- const t = useTranslations101();
21318
+ const t = useTranslations100();
21232
21319
  const generate = usePageUrlGenerator();
21233
21320
  const entityLabel = useEntityLabel();
21234
21321
  if (references.length === 0) return null;
@@ -21258,7 +21345,7 @@ __name(ReferencesTab, "ReferencesTab");
21258
21345
 
21259
21346
  // src/features/assistant-message/components/parts/tabs/CitationsTab.tsx
21260
21347
  import { Fragment as Fragment48, useState as useState88 } from "react";
21261
- import { useTranslations as useTranslations102 } from "next-intl";
21348
+ import { useTranslations as useTranslations101 } from "next-intl";
21262
21349
  import { ChevronDown as ChevronDown3, HelpCircle } from "lucide-react";
21263
21350
  import ReactMarkdown2 from "react-markdown";
21264
21351
  import remarkGfm2 from "remark-gfm";
@@ -21295,7 +21382,7 @@ __name(RelevanceMeter, "RelevanceMeter");
21295
21382
  // src/features/assistant-message/components/parts/tabs/CitationsTab.tsx
21296
21383
  import { jsx as jsx242, jsxs as jsxs143 } from "react/jsx-runtime";
21297
21384
  function CitationsTab({ citations, sources }) {
21298
- const t = useTranslations102();
21385
+ const t = useTranslations101();
21299
21386
  const entityLabel = useEntityLabel();
21300
21387
  const [expanded, setExpanded] = useState88(/* @__PURE__ */ new Set());
21301
21388
  if (citations.length === 0) return null;
@@ -21355,11 +21442,11 @@ function CitationsTab({ citations, sources }) {
21355
21442
  __name(CitationsTab, "CitationsTab");
21356
21443
 
21357
21444
  // src/features/assistant-message/components/parts/tabs/ContentsTab.tsx
21358
- import { useTranslations as useTranslations103 } from "next-intl";
21445
+ import { useTranslations as useTranslations102 } from "next-intl";
21359
21446
  import Link5 from "next/link";
21360
21447
  import { jsx as jsx243, jsxs as jsxs144 } from "react/jsx-runtime";
21361
21448
  function ContentsTab({ citations, sources }) {
21362
- const t = useTranslations103();
21449
+ const t = useTranslations102();
21363
21450
  const entityLabel = useEntityLabel();
21364
21451
  const generate = usePageUrlGenerator();
21365
21452
  const map = /* @__PURE__ */ new Map();
@@ -21412,7 +21499,7 @@ function ContentsTab({ citations, sources }) {
21412
21499
  __name(ContentsTab, "ContentsTab");
21413
21500
 
21414
21501
  // src/features/assistant-message/components/parts/tabs/UsersTab.tsx
21415
- import { useTranslations as useTranslations104 } from "next-intl";
21502
+ import { useTranslations as useTranslations103 } from "next-intl";
21416
21503
  import Link6 from "next/link";
21417
21504
  import { jsx as jsx244, jsxs as jsxs145 } from "react/jsx-runtime";
21418
21505
  function getInitials2(name) {
@@ -21429,7 +21516,7 @@ function readAuthor(source) {
21429
21516
  }
21430
21517
  __name(readAuthor, "readAuthor");
21431
21518
  function UsersTab({ users, citations, sources }) {
21432
- const t = useTranslations104();
21519
+ const t = useTranslations103();
21433
21520
  const generate = usePageUrlGenerator();
21434
21521
  const userMap = /* @__PURE__ */ new Map();
21435
21522
  for (const u of users) {
@@ -21515,7 +21602,7 @@ __name(SuggestedQuestionsTab, "SuggestedQuestionsTab");
21515
21602
  // src/features/assistant-message/components/parts/MessageSourcesPanel.tsx
21516
21603
  import { jsx as jsx246, jsxs as jsxs146 } from "react/jsx-runtime";
21517
21604
  function MessageSourcesPanel({ message, isLatestAssistant, onSelectFollowUp, sources, users }) {
21518
- const t = useTranslations105();
21605
+ const t = useTranslations104();
21519
21606
  const visibleReferences = useMemo41(
21520
21607
  () => message.references.filter((ref) => {
21521
21608
  try {
@@ -21714,7 +21801,7 @@ function MessageItem({
21714
21801
  renderApprovalAction,
21715
21802
  renderMention
21716
21803
  }) {
21717
- const t = useTranslations106();
21804
+ const t = useTranslations105();
21718
21805
  const isUser = message.role === "user";
21719
21806
  const isFailed = isUser && !!failedMessageIds?.has(message.id);
21720
21807
  const markdownComponents = useMemo43(
@@ -21797,11 +21884,11 @@ function MessageList({
21797
21884
  __name(MessageList, "MessageList");
21798
21885
 
21799
21886
  // src/features/assistant/components/parts/AssistantStatusLine.tsx
21800
- import { useTranslations as useTranslations107 } from "next-intl";
21887
+ import { useTranslations as useTranslations106 } from "next-intl";
21801
21888
  import { Loader2 as Loader25 } from "lucide-react";
21802
21889
  import { jsx as jsx250, jsxs as jsxs148 } from "react/jsx-runtime";
21803
21890
  function AssistantStatusLine({ status }) {
21804
- const t = useTranslations107();
21891
+ const t = useTranslations106();
21805
21892
  const text = status ?? t("features.assistant.thinking");
21806
21893
  return /* @__PURE__ */ jsxs148("div", { className: "text-muted-foreground flex items-center gap-2 px-4 py-2 text-sm", children: [
21807
21894
  /* @__PURE__ */ jsx250(Loader25, { className: "h-4 w-4 animate-spin" }),
@@ -21895,11 +21982,11 @@ __name(AssistantContainer, "AssistantContainer");
21895
21982
 
21896
21983
  // src/features/assistant/components/containers/AssistantPageContainer.tsx
21897
21984
  import { Sparkles as Sparkles3 } from "lucide-react";
21898
- import { useTranslations as useTranslations109 } from "next-intl";
21985
+ import { useTranslations as useTranslations108 } from "next-intl";
21899
21986
 
21900
21987
  // src/features/assistant/components/parts/AssistantBlockNoteComposer.tsx
21901
21988
  import { ArrowUp as ArrowUp2 } from "lucide-react";
21902
- import { useTranslations as useTranslations108 } from "next-intl";
21989
+ import { useTranslations as useTranslations107 } from "next-intl";
21903
21990
  import { useCallback as useCallback43, useId as useId3, useState as useState91 } from "react";
21904
21991
  import { jsx as jsx253, jsxs as jsxs151 } from "react/jsx-runtime";
21905
21992
  function flattenBlocks(blocks) {
@@ -21936,7 +22023,7 @@ function AssistantBlockNoteComposer({
21936
22023
  mentionResolveFn,
21937
22024
  suggestionMenuComponent
21938
22025
  }) {
21939
- const t = useTranslations108();
22026
+ const t = useTranslations107();
21940
22027
  const editorId = useId3().replace(/[^a-zA-Z0-9]/g, "");
21941
22028
  const [blocks, setBlocks] = useState91([]);
21942
22029
  const [isEmpty, setIsEmpty] = useState91(true);
@@ -22005,7 +22092,7 @@ function AssistantPageContainer({
22005
22092
  detailsIcon,
22006
22093
  disabled
22007
22094
  }) {
22008
- const t = useTranslations109();
22095
+ const t = useTranslations108();
22009
22096
  const ctx = useAssistantContext();
22010
22097
  const showThread = !!ctx.assistant || ctx.sending || ctx.messages.length > 0;
22011
22098
  return /* @__PURE__ */ jsx254(
@@ -22077,7 +22164,7 @@ __name(AssistantPageContainer, "AssistantPageContainer");
22077
22164
 
22078
22165
  // src/features/assistant-action/components/ApprovalActionCard.tsx
22079
22166
  import { ShieldAlert as ShieldAlert2 } from "lucide-react";
22080
- import { useTranslations as useTranslations110 } from "next-intl";
22167
+ import { useTranslations as useTranslations109 } from "next-intl";
22081
22168
  import { useEffect as useEffect69, useState as useState92 } from "react";
22082
22169
  import { jsx as jsx255, jsxs as jsxs153 } from "react/jsx-runtime";
22083
22170
  var STATUS_VARIANT = {
@@ -22097,7 +22184,7 @@ var STATUS_LABEL_KEY = {
22097
22184
  expired: "features.assistant.approval.status.expired"
22098
22185
  };
22099
22186
  function ApprovalActionCard({ actionId, summary, onResolved }) {
22100
- const t = useTranslations110();
22187
+ const t = useTranslations109();
22101
22188
  const [status, setStatus] = useState92(void 0);
22102
22189
  const [actionSummary, setActionSummary] = useState92(void 0);
22103
22190
  const [busy, setBusy] = useState92(false);
@@ -22199,14 +22286,14 @@ var NotificationErrorBoundary = class extends Component {
22199
22286
  };
22200
22287
 
22201
22288
  // src/features/notification/components/containers/NotificationsListContainer.tsx
22202
- import { useTranslations as useTranslations112 } from "next-intl";
22289
+ import { useTranslations as useTranslations111 } from "next-intl";
22203
22290
 
22204
22291
  // src/features/notification/components/lists/NotificationsList.tsx
22205
22292
  import { ArchiveIcon } from "lucide-react";
22206
- import { useTranslations as useTranslations111 } from "next-intl";
22293
+ import { useTranslations as useTranslations110 } from "next-intl";
22207
22294
  import { Fragment as Fragment52, jsx as jsx258, jsxs as jsxs155 } from "react/jsx-runtime";
22208
22295
  function NotificationsList({ archived }) {
22209
- const t = useTranslations111();
22296
+ const t = useTranslations110();
22210
22297
  const generateUrl = usePageUrlGenerator();
22211
22298
  const data = useDataListRetriever({
22212
22299
  retriever: /* @__PURE__ */ __name((params) => NotificationService.findMany(params), "retriever"),
@@ -22264,7 +22351,7 @@ __name(NotificationsList, "NotificationsList");
22264
22351
  // src/features/notification/components/containers/NotificationsListContainer.tsx
22265
22352
  import { jsx as jsx259, jsxs as jsxs156 } from "react/jsx-runtime";
22266
22353
  function NotificationsListContainerContent() {
22267
- const t = useTranslations112();
22354
+ const t = useTranslations111();
22268
22355
  const { notifications: _notifications, isLoading: _isLoading, error } = useNotificationContext();
22269
22356
  if (error) {
22270
22357
  return /* @__PURE__ */ jsx259("div", { className: "flex items-center justify-center p-8 text-center", children: /* @__PURE__ */ jsxs156("div", { className: "text-destructive text-xs/relaxed", children: [
@@ -22295,7 +22382,7 @@ __name(NotificationsListContainer, "NotificationsListContainer");
22295
22382
 
22296
22383
  // src/features/notification/components/modals/NotificationModal.tsx
22297
22384
  import { BellIcon } from "lucide-react";
22298
- import { useTranslations as useTranslations113 } from "next-intl";
22385
+ import { useTranslations as useTranslations112 } from "next-intl";
22299
22386
  import { Fragment as Fragment53, useCallback as useCallback44, useEffect as useEffect70, useMemo as useMemo44, useRef as useRef38, useState as useState93 } from "react";
22300
22387
  import { jsx as jsx260, jsxs as jsxs157 } from "react/jsx-runtime";
22301
22388
  function NotificationModalContent({ isOpen, setIsOpen }) {
@@ -22316,7 +22403,7 @@ function NotificationModalContent({ isOpen, setIsOpen }) {
22316
22403
  removeSocketNotification: _removeSocketNotification,
22317
22404
  clearSocketNotifications
22318
22405
  } = useSocketContext();
22319
- const t = useTranslations113();
22406
+ const t = useTranslations112();
22320
22407
  const generateUrl = usePageUrlGenerator();
22321
22408
  const [newNotifications, setNewNotifications] = useState93(false);
22322
22409
  const preventAutoClose = useRef38(false);
@@ -22770,11 +22857,11 @@ function ReferralDialog({
22770
22857
  __name(ReferralDialog, "ReferralDialog");
22771
22858
 
22772
22859
  // src/features/role/components/details/RoleDetails.tsx
22773
- import { useTranslations as useTranslations114 } from "next-intl";
22860
+ import { useTranslations as useTranslations113 } from "next-intl";
22774
22861
  import { jsx as jsx264 } from "react/jsx-runtime";
22775
22862
  function RoleDetails() {
22776
22863
  const { role } = useRoleContext();
22777
- const t = useTranslations114();
22864
+ const t = useTranslations113();
22778
22865
  if (!role) return null;
22779
22866
  return /* @__PURE__ */ jsx264(Card, { className: "w-full", children: /* @__PURE__ */ jsx264(CardContent, { className: "p-4", children: /* @__PURE__ */ jsx264(AttributeElement, { title: t(`role.fields.description.label`), value: role.description }) }) });
22780
22867
  }
@@ -22793,10 +22880,10 @@ function RoleContainer() {
22793
22880
  __name(RoleContainer, "RoleContainer");
22794
22881
 
22795
22882
  // src/features/role/components/forms/FormRoles.tsx
22796
- import { useTranslations as useTranslations115 } from "next-intl";
22883
+ import { useTranslations as useTranslations114 } from "next-intl";
22797
22884
  import { jsx as jsx266, jsxs as jsxs161 } from "react/jsx-runtime";
22798
22885
  function FormRoles({ form, id, name, roles }) {
22799
- const t = useTranslations115();
22886
+ const t = useTranslations114();
22800
22887
  const { hasAccesToFeature } = useCurrentUserContext();
22801
22888
  return /* @__PURE__ */ jsx266("div", { className: "flex w-full flex-col", children: /* @__PURE__ */ jsx266(FormFieldWrapper, { form, name: id, label: name, children: (field) => /* @__PURE__ */ jsx266("div", { className: "flex w-full flex-col gap-y-1", children: roles.filter((role) => role.isSelectable).sort((a, b) => a.name.localeCompare(b.name)).map((role) => {
22802
22889
  if (role.requiredFeature && !hasAccesToFeature(role.requiredFeature.id)) return null;
@@ -22828,13 +22915,13 @@ function FormRoles({ form, id, name, roles }) {
22828
22915
  __name(FormRoles, "FormRoles");
22829
22916
 
22830
22917
  // src/features/role/components/forms/RemoveUserFromRole.tsx
22831
- import { useTranslations as useTranslations116 } from "next-intl";
22918
+ import { useTranslations as useTranslations115 } from "next-intl";
22832
22919
  import { useEffect as useEffect73, useState as useState97 } from "react";
22833
22920
  import { Fragment as Fragment56, jsx as jsx267, jsxs as jsxs162 } from "react/jsx-runtime";
22834
22921
  function RemoveUserFromRole({ role, user, refresh }) {
22835
22922
  const [open, setOpen] = useState97(false);
22836
22923
  const [canRemove, setCanRemove] = useState97(false);
22837
- const t = useTranslations116();
22924
+ const t = useTranslations115();
22838
22925
  useEffect73(() => {
22839
22926
  async function checkCompanyAdminDeletability() {
22840
22927
  const roleUsers = await UserService.findAllUsersByRole({
@@ -22904,7 +22991,7 @@ __name(RemoveUserFromRole, "RemoveUserFromRole");
22904
22991
 
22905
22992
  // src/features/role/components/forms/UserRoleAdd.tsx
22906
22993
  import { PlusCircle as PlusCircle2 } from "lucide-react";
22907
- import { useTranslations as useTranslations117 } from "next-intl";
22994
+ import { useTranslations as useTranslations116 } from "next-intl";
22908
22995
  import { useCallback as useCallback46, useEffect as useEffect74, useRef as useRef40, useState as useState98 } from "react";
22909
22996
  import { Fragment as Fragment57, jsx as jsx268, jsxs as jsxs163 } from "react/jsx-runtime";
22910
22997
  function UserRoleAdd({ user, refresh }) {
@@ -22912,7 +22999,7 @@ function UserRoleAdd({ user, refresh }) {
22912
22999
  const inputRef = useRef40(null);
22913
23000
  const [searchTerm, setSearchTerm] = useState98("");
22914
23001
  const [roles, setRoles] = useState98([]);
22915
- const t = useTranslations117();
23002
+ const t = useTranslations116();
22916
23003
  const addUserToRole = /* @__PURE__ */ __name(async (role) => {
22917
23004
  await RoleService.addUserToRole({
22918
23005
  roleId: role.id,
@@ -23001,10 +23088,10 @@ function UserRoleAdd({ user, refresh }) {
23001
23088
  __name(UserRoleAdd, "UserRoleAdd");
23002
23089
 
23003
23090
  // src/features/role/components/lists/RolesList.tsx
23004
- import { useTranslations as useTranslations118 } from "next-intl";
23091
+ import { useTranslations as useTranslations117 } from "next-intl";
23005
23092
  import { jsx as jsx269 } from "react/jsx-runtime";
23006
23093
  function RolesList() {
23007
- const t = useTranslations118();
23094
+ const t = useTranslations117();
23008
23095
  const data = useDataListRetriever({
23009
23096
  retriever: /* @__PURE__ */ __name((params) => RoleService.findAllRoles(params), "retriever"),
23010
23097
  retrieverParams: {},
@@ -23023,10 +23110,10 @@ function RolesList() {
23023
23110
  __name(RolesList, "RolesList");
23024
23111
 
23025
23112
  // src/features/role/components/lists/UserRolesList.tsx
23026
- import { useTranslations as useTranslations119 } from "next-intl";
23113
+ import { useTranslations as useTranslations118 } from "next-intl";
23027
23114
  import { jsx as jsx270 } from "react/jsx-runtime";
23028
23115
  function UserRolesList({ user }) {
23029
- const t = useTranslations119();
23116
+ const t = useTranslations118();
23030
23117
  const data = useDataListRetriever({
23031
23118
  retriever: /* @__PURE__ */ __name((params) => RoleService.findAllRolesByUser(params), "retriever"),
23032
23119
  retrieverParams: { userId: user.id },
@@ -23831,7 +23918,7 @@ __name(OAuthConsentScreen, "OAuthConsentScreen");
23831
23918
  // src/features/waitlist/components/forms/WaitlistForm.tsx
23832
23919
  import { zodResolver as zodResolver11 } from "@hookform/resolvers/zod";
23833
23920
  import { CheckCircle, Mail as Mail2 } from "lucide-react";
23834
- import { useTranslations as useTranslations120 } from "next-intl";
23921
+ import { useTranslations as useTranslations119 } from "next-intl";
23835
23922
  import { useState as useState102 } from "react";
23836
23923
  import { useForm as useForm11 } from "react-hook-form";
23837
23924
  import { v4 as v412 } from "uuid";
@@ -23932,7 +24019,7 @@ __name(WaitlistQuestionnaireRenderer, "WaitlistQuestionnaireRenderer");
23932
24019
  // src/features/waitlist/components/forms/WaitlistForm.tsx
23933
24020
  import { Fragment as Fragment59, jsx as jsx283, jsxs as jsxs176 } from "react/jsx-runtime";
23934
24021
  function WaitlistForm({ onSuccess }) {
23935
- const t = useTranslations120();
24022
+ const t = useTranslations119();
23936
24023
  const [isSubmitting, setIsSubmitting] = useState102(false);
23937
24024
  const [isSuccess, setIsSuccess] = useState102(false);
23938
24025
  const config = getWaitlistConfig();
@@ -24097,10 +24184,10 @@ __name(WaitlistHeroSection, "WaitlistHeroSection");
24097
24184
 
24098
24185
  // src/features/waitlist/components/sections/WaitlistSuccessState.tsx
24099
24186
  import { CheckCircle as CheckCircle3 } from "lucide-react";
24100
- import { useTranslations as useTranslations121 } from "next-intl";
24187
+ import { useTranslations as useTranslations120 } from "next-intl";
24101
24188
  import { jsx as jsx285, jsxs as jsxs178 } from "react/jsx-runtime";
24102
24189
  function WaitlistSuccessState() {
24103
- const t = useTranslations121();
24190
+ const t = useTranslations120();
24104
24191
  return /* @__PURE__ */ jsxs178("div", { className: "flex flex-col items-center justify-center space-y-4 py-8 text-center", children: [
24105
24192
  /* @__PURE__ */ jsx285("div", { className: "bg-primary/10 rounded-full p-4", children: /* @__PURE__ */ jsx285(CheckCircle3, { className: "text-primary h-12 w-12" }) }),
24106
24193
  /* @__PURE__ */ jsx285(SectionHeader, { level: 2, children: t("waitlist.success.title") }),
@@ -24112,11 +24199,11 @@ __name(WaitlistSuccessState, "WaitlistSuccessState");
24112
24199
 
24113
24200
  // src/features/waitlist/components/sections/WaitlistConfirmation.tsx
24114
24201
  import { CheckCircle as CheckCircle4, Loader2 as Loader28, XCircle as XCircle2 } from "lucide-react";
24115
- import { useTranslations as useTranslations122 } from "next-intl";
24202
+ import { useTranslations as useTranslations121 } from "next-intl";
24116
24203
  import { useEffect as useEffect75, useState as useState103 } from "react";
24117
24204
  import { jsx as jsx286, jsxs as jsxs179 } from "react/jsx-runtime";
24118
24205
  function WaitlistConfirmation({ code }) {
24119
- const t = useTranslations122();
24206
+ const t = useTranslations121();
24120
24207
  const [state, setState] = useState103("loading");
24121
24208
  const [errorMessage, setErrorMessage] = useState103("");
24122
24209
  useEffect75(() => {
@@ -24158,12 +24245,12 @@ __name(WaitlistConfirmation, "WaitlistConfirmation");
24158
24245
  // src/features/waitlist/components/lists/WaitlistList.tsx
24159
24246
  import { flexRender as flexRender2, getCoreRowModel as getCoreRowModel2, useReactTable as useReactTable2 } from "@tanstack/react-table";
24160
24247
  import { RefreshCw as RefreshCw4, Users as Users2 } from "lucide-react";
24161
- import { useTranslations as useTranslations124 } from "next-intl";
24248
+ import { useTranslations as useTranslations123 } from "next-intl";
24162
24249
  import { useCallback as useCallback52, useEffect as useEffect76, useMemo as useMemo45, useState as useState104 } from "react";
24163
24250
 
24164
24251
  // src/features/waitlist/hooks/useWaitlistTableStructure.tsx
24165
24252
  import { Send } from "lucide-react";
24166
- import { useTranslations as useTranslations123 } from "next-intl";
24253
+ import { useTranslations as useTranslations122 } from "next-intl";
24167
24254
  import { jsx as jsx287, jsxs as jsxs180 } from "react/jsx-runtime";
24168
24255
  function parseQuestionnaire(questionnaire) {
24169
24256
  if (!questionnaire) return null;
@@ -24177,7 +24264,7 @@ __name(parseQuestionnaire, "parseQuestionnaire");
24177
24264
  function useWaitlistTableStructure({
24178
24265
  onInvite
24179
24266
  }) {
24180
- const t = useTranslations123();
24267
+ const t = useTranslations122();
24181
24268
  const getStatusBadge = /* @__PURE__ */ __name((status) => {
24182
24269
  const variants = {
24183
24270
  pending: { variant: "secondary" },
@@ -24255,7 +24342,7 @@ __name(useWaitlistTableStructure, "useWaitlistTableStructure");
24255
24342
  // src/features/waitlist/components/lists/WaitlistList.tsx
24256
24343
  import { jsx as jsx288, jsxs as jsxs181 } from "react/jsx-runtime";
24257
24344
  function WaitlistList() {
24258
- const t = useTranslations124();
24345
+ const t = useTranslations123();
24259
24346
  const [entries, setEntries] = useState104([]);
24260
24347
  const [total, setTotal] = useState104(0);
24261
24348
  const [isLoading, setIsLoading] = useState104(true);
@@ -24338,7 +24425,7 @@ __name(WaitlistList, "WaitlistList");
24338
24425
 
24339
24426
  // src/features/rbac/components/RbacContainer.tsx
24340
24427
  import { Loader2Icon as Loader2Icon4 } from "lucide-react";
24341
- import { useTranslations as useTranslations126 } from "next-intl";
24428
+ import { useTranslations as useTranslations125 } from "next-intl";
24342
24429
  import { memo as memo2, useCallback as useCallback54, useEffect as useEffect78, useMemo as useMemo46, useRef as useRef41, useState as useState106 } from "react";
24343
24430
 
24344
24431
  // src/features/rbac/components/RbacPermissionCell.tsx
@@ -24419,7 +24506,7 @@ __name(RbacPermissionCell, "RbacPermissionCell");
24419
24506
  // src/features/rbac/components/RbacPermissionPicker.tsx
24420
24507
  import { Popover as PopoverPrimitive2 } from "@base-ui/react/popover";
24421
24508
  import { CheckIcon as CheckIcon10, MinusIcon as MinusIcon3, XIcon as XIcon13 } from "lucide-react";
24422
- import { useTranslations as useTranslations125 } from "next-intl";
24509
+ import { useTranslations as useTranslations124 } from "next-intl";
24423
24510
  import { useCallback as useCallback53, useEffect as useEffect77, useState as useState105 } from "react";
24424
24511
  import { Fragment as Fragment60, jsx as jsx290, jsxs as jsxs183 } from "react/jsx-runtime";
24425
24512
  function RbacPermissionPicker({
@@ -24432,7 +24519,7 @@ function RbacPermissionPicker({
24432
24519
  onClear,
24433
24520
  onClose
24434
24521
  }) {
24435
- const t = useTranslations125();
24522
+ const t = useTranslations124();
24436
24523
  const [customSegment, setCustomSegment] = useState105("");
24437
24524
  useEffect77(() => {
24438
24525
  if (!open) setCustomSegment("");
@@ -24630,7 +24717,7 @@ var ModuleEditor = memo2(/* @__PURE__ */ __name(function ModuleEditor2({
24630
24717
  roleNames,
24631
24718
  onOpenPicker
24632
24719
  }) {
24633
- const t = useTranslations126();
24720
+ const t = useTranslations125();
24634
24721
  const defaultTokens = block.default ?? [];
24635
24722
  return /* @__PURE__ */ jsxs184("div", { className: "rounded-lg border border-accent bg-card", children: [
24636
24723
  /* @__PURE__ */ jsxs184("div", { className: "flex items-center justify-between border-b px-4 py-2", children: [
@@ -24680,7 +24767,7 @@ var ModuleEditor = memo2(/* @__PURE__ */ __name(function ModuleEditor2({
24680
24767
  ] });
24681
24768
  }, "ModuleEditor"));
24682
24769
  function RbacContainer() {
24683
- const t = useTranslations126();
24770
+ const t = useTranslations125();
24684
24771
  const { matrix, modulePaths, loading, error, roleNames, moduleNames, updateCell, clearCell } = useRbacContext();
24685
24772
  const [selectedModuleId, setSelectedModuleId] = useState106(null);
24686
24773
  const [activePicker, setActivePicker] = useState106(null);
@@ -24793,7 +24880,7 @@ __name(RbacContainer, "RbacContainer");
24793
24880
 
24794
24881
  // src/features/rbac/components/RbacByRoleContainer.tsx
24795
24882
  import { Loader2Icon as Loader2Icon5 } from "lucide-react";
24796
- import { useTranslations as useTranslations127 } from "next-intl";
24883
+ import { useTranslations as useTranslations126 } from "next-intl";
24797
24884
  import { Fragment as Fragment61, memo as memo3, useCallback as useCallback55, useEffect as useEffect79, useMemo as useMemo47, useRef as useRef42, useState as useState107 } from "react";
24798
24885
  import { jsx as jsx292, jsxs as jsxs185 } from "react/jsx-runtime";
24799
24886
  function findToken2(tokens, action) {
@@ -24830,7 +24917,7 @@ var ACTION_LABELS2 = {
24830
24917
  delete: "Delete"
24831
24918
  };
24832
24919
  function RbacByRoleContainer() {
24833
- const t = useTranslations127();
24920
+ const t = useTranslations126();
24834
24921
  const { matrix, modulePaths, loading, error, roleNames, moduleNames, updateCell, clearCell } = useRbacContext();
24835
24922
  const [selectedRoleId, setSelectedRoleId] = useState107(null);
24836
24923
  const [activePicker, setActivePicker] = useState107(null);
@@ -25374,6 +25461,7 @@ export {
25374
25461
  FormSwitch,
25375
25462
  FormTextarea,
25376
25463
  GdprConsentCheckbox,
25464
+ MultiFileUploader,
25377
25465
  PageContainerContentDetails,
25378
25466
  PageContentContainer,
25379
25467
  cellComponent,
@@ -25543,4 +25631,4 @@ export {
25543
25631
  useOAuthClients,
25544
25632
  useOAuthClient
25545
25633
  };
25546
- //# sourceMappingURL=chunk-2ONZSSDW.mjs.map
25634
+ //# sourceMappingURL=chunk-Q2QO5XYN.mjs.map