@carlonicora/nextjs-jsonapi 1.127.0 → 1.128.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/dist/{BlockNoteEditor-PGTAPCQF.js → BlockNoteEditor-LAH2RUGP.js} +9 -9
  2. package/dist/{BlockNoteEditor-PGTAPCQF.js.map → BlockNoteEditor-LAH2RUGP.js.map} +1 -1
  3. package/dist/{BlockNoteEditor-SMZNQ4CX.mjs → BlockNoteEditor-LJY3X6F6.mjs} +2 -2
  4. package/dist/billing/index.js +299 -299
  5. package/dist/billing/index.mjs +1 -1
  6. package/dist/{chunk-JGVMZYAO.mjs → chunk-PJGAR5F3.mjs} +144 -126
  7. package/dist/chunk-PJGAR5F3.mjs.map +1 -0
  8. package/dist/{chunk-24RSNGD2.js → chunk-QVRFFC2Q.js} +97 -79
  9. package/dist/chunk-QVRFFC2Q.js.map +1 -0
  10. package/dist/client/index.js +2 -2
  11. package/dist/client/index.mjs +1 -1
  12. package/dist/components/index.d.mts +1 -0
  13. package/dist/components/index.d.ts +1 -0
  14. package/dist/components/index.js +2 -2
  15. package/dist/components/index.mjs +1 -1
  16. package/dist/contexts/index.js +2 -2
  17. package/dist/contexts/index.mjs +1 -1
  18. package/dist/features/help/index.js +30 -30
  19. package/dist/features/help/index.mjs +1 -1
  20. package/package.json +1 -1
  21. package/src/components/tables/ContentListTable.tsx +16 -4
  22. package/src/components/tables/__tests__/ContentListTable.test.tsx +38 -2
  23. package/src/features/company/components/lists/CompaniesList.tsx +1 -1
  24. package/src/features/content/components/lists/ContentsListById.tsx +1 -1
  25. package/src/features/content/components/lists/RelevantContentsList.tsx +1 -1
  26. package/src/features/user/components/lists/AdminUsersList.tsx +1 -1
  27. package/dist/chunk-24RSNGD2.js.map +0 -1
  28. package/dist/chunk-JGVMZYAO.mjs.map +0 -1
  29. /package/dist/{BlockNoteEditor-SMZNQ4CX.mjs.map → BlockNoteEditor-LJY3X6F6.mjs.map} +0 -0
@@ -9972,7 +9972,7 @@ import { useRef as useRef17 } from "react";
9972
9972
  import dynamic from "next/dynamic";
9973
9973
  import React17 from "react";
9974
9974
  import { jsx as jsx82 } from "react/jsx-runtime";
9975
- var BlockNoteEditor = dynamic(() => import("./BlockNoteEditor-SMZNQ4CX.mjs"), {
9975
+ var BlockNoteEditor = dynamic(() => import("./BlockNoteEditor-LJY3X6F6.mjs"), {
9976
9976
  ssr: false
9977
9977
  });
9978
9978
  var BlockNoteEditorContainer = React17.memo(/* @__PURE__ */ __name(function EditorContainer(props) {
@@ -11670,7 +11670,7 @@ function AdminUsersListInternal({ company }) {
11670
11670
  {
11671
11671
  title: t(`entities.users`, { count: 2 }),
11672
11672
  data,
11673
- fields: ["name" /* name */, "email" /* email */, "createdAt" /* createdAt */],
11673
+ fields: ["name" /* name */, "email" /* email */],
11674
11674
  tableGeneratorType: Modules.User,
11675
11675
  functions: /* @__PURE__ */ jsx112(UserEditor, { propagateChanges: data.refresh, adminCreated: true })
11676
11676
  }
@@ -12552,7 +12552,7 @@ function CompaniesList() {
12552
12552
  ContentListTable,
12553
12553
  {
12554
12554
  data,
12555
- fields: ["name" /* name */, "createdAt" /* createdAt */],
12555
+ fields: ["name" /* name */],
12556
12556
  tableGeneratorType: Modules.Company,
12557
12557
  functions,
12558
12558
  title: t(`entities.companies`, { count: 2 })
@@ -16207,6 +16207,7 @@ registerTableGenerator("companies", useCompanyTableStructure);
16207
16207
  // src/components/tables/ContentListTable.tsx
16208
16208
  import { flexRender, getCoreRowModel, getExpandedRowModel, useReactTable } from "@tanstack/react-table";
16209
16209
  import { ChevronLeft, ChevronRight } from "lucide-react";
16210
+ import { useTranslations as useTranslations58 } from "next-intl";
16210
16211
  import React28, { memo, useMemo as useMemo28, useState as useState59 } from "react";
16211
16212
 
16212
16213
  // src/components/tables/ContentTableSearch.tsx
@@ -16316,7 +16317,8 @@ function getGroupKeys(item, field) {
16316
16317
  }
16317
16318
  __name(getGroupKeys, "getGroupKeys");
16318
16319
  var ContentListTable = memo(/* @__PURE__ */ __name(function ContentListTable2(props) {
16319
- const { data, fields, checkedIds, toggleId, allowSearch, filters: _filters, fullWidth } = props;
16320
+ const { data, fields, checkedIds, toggleId, allowSearch, filters: _filters, fullWidth, onRowClick } = props;
16321
+ const t = useTranslations58();
16320
16322
  const [expanded, setExpanded] = useState59(
16321
16323
  props.defaultExpanded === true ? true : typeof props.defaultExpanded === "object" ? props.defaultExpanded : {}
16322
16324
  );
@@ -16422,14 +16424,30 @@ var ContentListTable = memo(/* @__PURE__ */ __name(function ContentListTable2(pr
16422
16424
  children: group.groupKey
16423
16425
  }
16424
16426
  ) }),
16425
- group.rows.map((row) => /* @__PURE__ */ jsx173(TableRow, { children: row.getVisibleCells().map((cell) => {
16426
- const meta = cell.column.columnDef.meta;
16427
- return /* @__PURE__ */ jsx173(TableCell, { className: meta?.className, children: flexRender(cell.column.columnDef.cell, cell.getContext()) }, cell.id);
16428
- }) }, row.id))
16429
- ] }, group.groupKey)) : rowModel.rows.map((row) => /* @__PURE__ */ jsx173(TableRow, { children: row.getVisibleCells().map((cell) => {
16430
- const meta = cell.column.columnDef.meta;
16431
- return /* @__PURE__ */ jsx173(TableCell, { className: meta?.className, children: flexRender(cell.column.columnDef.cell, cell.getContext()) }, cell.id);
16432
- }) }, row.id)) : /* @__PURE__ */ jsx173(TableRow, { children: /* @__PURE__ */ jsx173(TableCell, { colSpan: tableColumns.length, className: "h-24 text-center", children: props.emptyState ?? "No results." }) }) }),
16427
+ group.rows.map((row) => /* @__PURE__ */ jsx173(
16428
+ TableRow,
16429
+ {
16430
+ onClick: () => onRowClick?.(row.original.jsonApiData),
16431
+ className: `group ${onRowClick ? "hover:bg-muted/50 cursor-pointer" : ""}`,
16432
+ children: row.getVisibleCells().map((cell) => {
16433
+ const meta = cell.column.columnDef.meta;
16434
+ return /* @__PURE__ */ jsx173(TableCell, { className: meta?.className, children: flexRender(cell.column.columnDef.cell, cell.getContext()) }, cell.id);
16435
+ })
16436
+ },
16437
+ row.id
16438
+ ))
16439
+ ] }, group.groupKey)) : rowModel.rows.map((row) => /* @__PURE__ */ jsx173(
16440
+ TableRow,
16441
+ {
16442
+ onClick: () => onRowClick?.(row.original.jsonApiData),
16443
+ className: `group ${onRowClick ? "hover:bg-muted/50 cursor-pointer" : ""}`,
16444
+ children: row.getVisibleCells().map((cell) => {
16445
+ const meta = cell.column.columnDef.meta;
16446
+ return /* @__PURE__ */ jsx173(TableCell, { className: meta?.className, children: flexRender(cell.column.columnDef.cell, cell.getContext()) }, cell.id);
16447
+ })
16448
+ },
16449
+ row.id
16450
+ )) : /* @__PURE__ */ jsx173(TableRow, { children: /* @__PURE__ */ jsx173(TableCell, { colSpan: tableColumns.length, className: "h-24 text-center", children: props.emptyState ?? (t.has("ui.empty_states.no_results") ? t("ui.empty_states.no_results") : "No results.") }) }) }),
16433
16451
  showFooter && /* @__PURE__ */ jsx173(TableFooter, { children: /* @__PURE__ */ jsx173(TableRow, { children: /* @__PURE__ */ jsx173(TableCell, { colSpan: tableColumns.length, className: "bg-card py-4 text-right", children: /* @__PURE__ */ jsxs100("div", { className: "flex items-center justify-end space-x-2", children: [
16434
16452
  /* @__PURE__ */ jsx173(
16435
16453
  Button,
@@ -16562,12 +16580,12 @@ function validateItalianTaxCode(value, type) {
16562
16580
  __name(validateItalianTaxCode, "validateItalianTaxCode");
16563
16581
 
16564
16582
  // src/components/fiscal/ItalianFiscalData.tsx
16565
- import { useTranslations as useTranslations58 } from "next-intl";
16583
+ import { useTranslations as useTranslations59 } from "next-intl";
16566
16584
  import { forwardRef as forwardRef8, useCallback as useCallback36, useImperativeHandle as useImperativeHandle2, useRef as useRef32, useState as useState60 } from "react";
16567
16585
  import { z as z4 } from "zod";
16568
16586
  import { jsx as jsx175, jsxs as jsxs102 } from "react/jsx-runtime";
16569
16587
  var ItalianFiscalData = forwardRef8(/* @__PURE__ */ __name(function ItalianFiscalData2({ initialData }, ref) {
16570
- const t = useTranslations58();
16588
+ const t = useTranslations59();
16571
16589
  const initialRef = useRef32(initialData);
16572
16590
  const [fiscalData, setFiscalData] = useState60(initialData);
16573
16591
  const fiscalDataRef = useRef32(initialData);
@@ -16769,7 +16787,7 @@ import { createContext as createContext21, useContext as useContext22, useMemo a
16769
16787
  // src/features/auth/components/forms/Register.tsx
16770
16788
  import { zodResolver as zodResolver5 } from "@hookform/resolvers/zod";
16771
16789
  import { Loader2 as Loader23 } from "lucide-react";
16772
- import { useTranslations as useTranslations60 } from "next-intl";
16790
+ import { useTranslations as useTranslations61 } from "next-intl";
16773
16791
  import Image7 from "next/image";
16774
16792
  import { useSearchParams as useSearchParams2 } from "next/navigation";
16775
16793
  import { useEffect as useEffect51, useState as useState61 } from "react";
@@ -16778,14 +16796,14 @@ import { v4 as v45 } from "uuid";
16778
16796
  import { z as z5 } from "zod";
16779
16797
 
16780
16798
  // src/features/auth/components/GdprConsentSection.tsx
16781
- import { useTranslations as useTranslations59 } from "next-intl";
16799
+ import { useTranslations as useTranslations60 } from "next-intl";
16782
16800
  import { Fragment as Fragment29, jsx as jsx181, jsxs as jsxs106 } from "react/jsx-runtime";
16783
16801
  function GdprConsentSection({
16784
16802
  form,
16785
16803
  termsCheckboxId = "termsAccepted",
16786
16804
  marketingCheckboxId = "marketingConsent"
16787
16805
  }) {
16788
- const t = useTranslations59("auth.gdpr");
16806
+ const t = useTranslations60("auth.gdpr");
16789
16807
  const termsLabel = /* @__PURE__ */ jsxs106(Fragment29, { children: [
16790
16808
  t("terms_prefix"),
16791
16809
  " ",
@@ -16838,7 +16856,7 @@ function buildOAuthQueryParams(inviteCode, referralCode) {
16838
16856
  }
16839
16857
  __name(buildOAuthQueryParams, "buildOAuthQueryParams");
16840
16858
  function Register() {
16841
- const t = useTranslations60();
16859
+ const t = useTranslations61();
16842
16860
  const { setComponentType } = useAuthContext();
16843
16861
  const searchParams = useSearchParams2();
16844
16862
  const inviteCode = searchParams.get("invite");
@@ -17183,17 +17201,17 @@ __name(InnerAuthContainer, "InnerAuthContainer");
17183
17201
 
17184
17202
  // src/features/auth/components/two-factor/TwoFactorSettings.tsx
17185
17203
  import { ShieldAlert, ShieldCheck } from "lucide-react";
17186
- import { useTranslations as useTranslations67 } from "next-intl";
17204
+ import { useTranslations as useTranslations68 } from "next-intl";
17187
17205
  import { useCallback as useCallback37, useEffect as useEffect53, useState as useState70 } from "react";
17188
17206
  import { v4 as v48 } from "uuid";
17189
17207
 
17190
17208
  // src/features/auth/components/two-factor/BackupCodesDialog.tsx
17191
17209
  import { Copy, Download, RefreshCw as RefreshCw2 } from "lucide-react";
17192
- import { useTranslations as useTranslations61 } from "next-intl";
17210
+ import { useTranslations as useTranslations62 } from "next-intl";
17193
17211
  import { useState as useState63 } from "react";
17194
17212
  import { jsx as jsx185, jsxs as jsxs108 } from "react/jsx-runtime";
17195
17213
  function BackupCodesDialog({ remainingCodes, onRegenerate, trigger }) {
17196
- const t = useTranslations61();
17214
+ const t = useTranslations62();
17197
17215
  const [open, setOpen] = useState63(false);
17198
17216
  const [codes, setCodes] = useState63([]);
17199
17217
  const [isLoading, setIsLoading] = useState63(false);
@@ -17291,7 +17309,7 @@ Keep these codes safe. Each code can only be used once.`;
17291
17309
  __name(BackupCodesDialog, "BackupCodesDialog");
17292
17310
 
17293
17311
  // src/features/auth/components/two-factor/DisableTwoFactorDialog.tsx
17294
- import { useTranslations as useTranslations62 } from "next-intl";
17312
+ import { useTranslations as useTranslations63 } from "next-intl";
17295
17313
  import { useState as useState65 } from "react";
17296
17314
 
17297
17315
  // src/features/auth/components/two-factor/TotpInput.tsx
@@ -17361,7 +17379,7 @@ __name(TotpInput, "TotpInput");
17361
17379
  // src/features/auth/components/two-factor/DisableTwoFactorDialog.tsx
17362
17380
  import { jsx as jsx187, jsxs as jsxs110 } from "react/jsx-runtime";
17363
17381
  function DisableTwoFactorDialog({ onSuccess, trigger }) {
17364
- const t = useTranslations62();
17382
+ const t = useTranslations63();
17365
17383
  const [open, setOpen] = useState65(false);
17366
17384
  const [isLoading, setIsLoading] = useState65(false);
17367
17385
  const [error, setError] = useState65();
@@ -17404,11 +17422,11 @@ __name(DisableTwoFactorDialog, "DisableTwoFactorDialog");
17404
17422
 
17405
17423
  // src/features/auth/components/two-factor/PasskeyList.tsx
17406
17424
  import { Edit, Key, Trash2 } from "lucide-react";
17407
- import { useTranslations as useTranslations63 } from "next-intl";
17425
+ import { useTranslations as useTranslations64 } from "next-intl";
17408
17426
  import { useState as useState66 } from "react";
17409
17427
  import { Fragment as Fragment31, jsx as jsx188, jsxs as jsxs111 } from "react/jsx-runtime";
17410
17428
  function PasskeyList({ passkeys, onRefresh }) {
17411
- const t = useTranslations63();
17429
+ const t = useTranslations64();
17412
17430
  const [renameDialogOpen, setRenameDialogOpen] = useState66(false);
17413
17431
  const [selectedPasskey, setSelectedPasskey] = useState66(null);
17414
17432
  const [newName, setNewName] = useState66("");
@@ -17525,12 +17543,12 @@ __name(PasskeyList, "PasskeyList");
17525
17543
 
17526
17544
  // src/features/auth/components/two-factor/PasskeySetupDialog.tsx
17527
17545
  import { startRegistration } from "@simplewebauthn/browser";
17528
- import { useTranslations as useTranslations64 } from "next-intl";
17546
+ import { useTranslations as useTranslations65 } from "next-intl";
17529
17547
  import { useState as useState67 } from "react";
17530
17548
  import { v4 as v46 } from "uuid";
17531
17549
  import { jsx as jsx189, jsxs as jsxs112 } from "react/jsx-runtime";
17532
17550
  function PasskeySetupDialog({ open, onOpenChange, onSuccess }) {
17533
- const t = useTranslations64();
17551
+ const t = useTranslations65();
17534
17552
  const { currentUser } = useCurrentUserContext();
17535
17553
  const [name, setName] = useState67("");
17536
17554
  const [isLoading, setIsLoading] = useState67(false);
@@ -17596,11 +17614,11 @@ __name(PasskeySetupDialog, "PasskeySetupDialog");
17596
17614
 
17597
17615
  // src/features/auth/components/two-factor/TotpAuthenticatorList.tsx
17598
17616
  import { Smartphone, Trash2 as Trash22 } from "lucide-react";
17599
- import { useTranslations as useTranslations65 } from "next-intl";
17617
+ import { useTranslations as useTranslations66 } from "next-intl";
17600
17618
  import { useState as useState68 } from "react";
17601
17619
  import { jsx as jsx190, jsxs as jsxs113 } from "react/jsx-runtime";
17602
17620
  function TotpAuthenticatorList({ authenticators, onDelete }) {
17603
- const t = useTranslations65();
17621
+ const t = useTranslations66();
17604
17622
  const [deletingId, setDeletingId] = useState68(null);
17605
17623
  const handleDelete = /* @__PURE__ */ __name(async (id) => {
17606
17624
  setDeletingId(id);
@@ -17670,13 +17688,13 @@ function TotpAuthenticatorList({ authenticators, onDelete }) {
17670
17688
  __name(TotpAuthenticatorList, "TotpAuthenticatorList");
17671
17689
 
17672
17690
  // src/features/auth/components/two-factor/TotpSetupDialog.tsx
17673
- import { useTranslations as useTranslations66 } from "next-intl";
17691
+ import { useTranslations as useTranslations67 } from "next-intl";
17674
17692
  import { QRCodeSVG } from "qrcode.react";
17675
17693
  import { useState as useState69 } from "react";
17676
17694
  import { v4 as v47 } from "uuid";
17677
17695
  import { jsx as jsx191, jsxs as jsxs114 } from "react/jsx-runtime";
17678
17696
  function TotpSetupDialog({ onSuccess, trigger }) {
17679
- const t = useTranslations66();
17697
+ const t = useTranslations67();
17680
17698
  const { currentUser } = useCurrentUserContext();
17681
17699
  const [open, setOpen] = useState69(false);
17682
17700
  const [step, setStep] = useState69("name");
@@ -17781,7 +17799,7 @@ __name(TotpSetupDialog, "TotpSetupDialog");
17781
17799
  // src/features/auth/components/two-factor/TwoFactorSettings.tsx
17782
17800
  import { Fragment as Fragment32, jsx as jsx192, jsxs as jsxs115 } from "react/jsx-runtime";
17783
17801
  function TwoFactorSettings() {
17784
- const t = useTranslations67();
17802
+ const t = useTranslations68();
17785
17803
  const [status, setStatus] = useState70(null);
17786
17804
  const [authenticators, setAuthenticators] = useState70([]);
17787
17805
  const [passkeys, setPasskeys] = useState70([]);
@@ -17899,7 +17917,7 @@ function SecurityContainer() {
17899
17917
  __name(SecurityContainer, "SecurityContainer");
17900
17918
 
17901
17919
  // src/features/auth/components/details/LandingComponent.tsx
17902
- import { useTranslations as useTranslations68 } from "next-intl";
17920
+ import { useTranslations as useTranslations69 } from "next-intl";
17903
17921
  import Image9 from "next/image";
17904
17922
 
17905
17923
  // src/features/auth/components/buttons/GoogleSignInButton.tsx
@@ -17960,7 +17978,7 @@ __name(GoogleSignInButton, "GoogleSignInButton");
17960
17978
  // src/features/auth/components/details/LandingComponent.tsx
17961
17979
  import { Fragment as Fragment33, jsx as jsx195, jsxs as jsxs117 } from "react/jsx-runtime";
17962
17980
  function LandingComponent() {
17963
- const t = useTranslations68();
17981
+ const t = useTranslations69();
17964
17982
  const { setComponentType } = useAuthContext();
17965
17983
  return /* @__PURE__ */ jsxs117(Fragment33, { children: [
17966
17984
  /* @__PURE__ */ jsxs117(CardHeader, { className: "mb-4", "data-testid": "page-pre-login-container", children: [
@@ -17992,7 +18010,7 @@ __name(LandingComponent, "LandingComponent");
17992
18010
 
17993
18011
  // src/features/auth/components/forms/AcceptInvitation.tsx
17994
18012
  import { zodResolver as zodResolver6 } from "@hookform/resolvers/zod";
17995
- import { useTranslations as useTranslations69 } from "next-intl";
18013
+ import { useTranslations as useTranslations70 } from "next-intl";
17996
18014
  import Image10 from "next/image";
17997
18015
  import { useEffect as useEffect54, useState as useState71 } from "react";
17998
18016
  import { useForm as useForm6 } from "react-hook-form";
@@ -18002,7 +18020,7 @@ function AcceptInvitation() {
18002
18020
  const { setComponentType, params, setParams } = useAuthContext();
18003
18021
  const [showConfirmation, setShowConfirmation] = useState71(false);
18004
18022
  const [error, setError] = useState71(void 0);
18005
- const t = useTranslations69();
18023
+ const t = useTranslations70();
18006
18024
  useEffect54(() => {
18007
18025
  async function validateCode(code) {
18008
18026
  try {
@@ -18094,7 +18112,7 @@ function AcceptInvitation() {
18094
18112
  __name(AcceptInvitation, "AcceptInvitation");
18095
18113
 
18096
18114
  // src/features/auth/components/forms/ActivateAccount.tsx
18097
- import { useTranslations as useTranslations70 } from "next-intl";
18115
+ import { useTranslations as useTranslations71 } from "next-intl";
18098
18116
  import Image11 from "next/image";
18099
18117
  import { useEffect as useEffect55, useState as useState72 } from "react";
18100
18118
  import { Fragment as Fragment35, jsx as jsx197, jsxs as jsxs119 } from "react/jsx-runtime";
@@ -18102,7 +18120,7 @@ function ActivateAccount() {
18102
18120
  const { setComponentType, params, setParams } = useAuthContext();
18103
18121
  const [showConfirmation, setShowConfirmation] = useState72(false);
18104
18122
  const [error, setError] = useState72(void 0);
18105
- const t = useTranslations70();
18123
+ const t = useTranslations71();
18106
18124
  useEffect55(() => {
18107
18125
  async function ActivateAccount2(code) {
18108
18126
  try {
@@ -18170,14 +18188,14 @@ __name(Cookies, "Cookies");
18170
18188
 
18171
18189
  // src/features/auth/components/forms/ForgotPassword.tsx
18172
18190
  import { zodResolver as zodResolver7 } from "@hookform/resolvers/zod";
18173
- import { useTranslations as useTranslations71 } from "next-intl";
18191
+ import { useTranslations as useTranslations72 } from "next-intl";
18174
18192
  import Image12 from "next/image";
18175
18193
  import { useState as useState74 } from "react";
18176
18194
  import { useForm as useForm7 } from "react-hook-form";
18177
18195
  import { z as z7 } from "zod";
18178
18196
  import { Fragment as Fragment36, jsx as jsx198, jsxs as jsxs120 } from "react/jsx-runtime";
18179
18197
  function ForgotPassword() {
18180
- const t = useTranslations71();
18198
+ const t = useTranslations72();
18181
18199
  const { setComponentType } = useAuthContext();
18182
18200
  const [showConfirmation, setShowConfirmation] = useState74(false);
18183
18201
  const formSchema = z7.object({
@@ -18241,7 +18259,7 @@ __name(ForgotPassword, "ForgotPassword");
18241
18259
 
18242
18260
  // src/features/auth/components/forms/Login.tsx
18243
18261
  import { zodResolver as zodResolver8 } from "@hookform/resolvers/zod";
18244
- import { useTranslations as useTranslations72 } from "next-intl";
18262
+ import { useTranslations as useTranslations73 } from "next-intl";
18245
18263
  import Image13 from "next/image";
18246
18264
  import { useRouter, useSearchParams as useSearchParams3 } from "next/navigation";
18247
18265
  import { useEffect as useEffect57, useState as useState75 } from "react";
@@ -18249,7 +18267,7 @@ import { useForm as useForm8 } from "react-hook-form";
18249
18267
  import { z as z8 } from "zod";
18250
18268
  import { Fragment as Fragment37, jsx as jsx199, jsxs as jsxs121 } from "react/jsx-runtime";
18251
18269
  function Login() {
18252
- const t = useTranslations72();
18270
+ const t = useTranslations73();
18253
18271
  const { setUser } = useCurrentUserContext();
18254
18272
  const { setComponentType, setPendingTwoFactor } = useAuthContext();
18255
18273
  const generateUrl = usePageUrlGenerator();
@@ -18438,7 +18456,7 @@ __name(RefreshUser, "RefreshUser");
18438
18456
 
18439
18457
  // src/features/auth/components/forms/ResetPassword.tsx
18440
18458
  import { zodResolver as zodResolver9 } from "@hookform/resolvers/zod";
18441
- import { useTranslations as useTranslations73 } from "next-intl";
18459
+ import { useTranslations as useTranslations74 } from "next-intl";
18442
18460
  import Image14 from "next/image";
18443
18461
  import { useEffect as useEffect60, useState as useState76 } from "react";
18444
18462
  import { useForm as useForm9 } from "react-hook-form";
@@ -18448,7 +18466,7 @@ function ResetPassword() {
18448
18466
  const { setComponentType, params, setParams } = useAuthContext();
18449
18467
  const [showConfirmation, setShowConfirmation] = useState76(false);
18450
18468
  const [error, setError] = useState76(void 0);
18451
- const t = useTranslations73();
18469
+ const t = useTranslations74();
18452
18470
  useEffect60(() => {
18453
18471
  async function validateResetPasswordCode(code) {
18454
18472
  try {
@@ -18524,19 +18542,19 @@ function ResetPassword() {
18524
18542
  __name(ResetPassword, "ResetPassword");
18525
18543
 
18526
18544
  // src/features/auth/components/forms/TwoFactorChallenge.tsx
18527
- import { useTranslations as useTranslations75 } from "next-intl";
18545
+ import { useTranslations as useTranslations76 } from "next-intl";
18528
18546
  import { useRouter as useRouter2, useSearchParams as useSearchParams4 } from "next/navigation";
18529
18547
  import { useState as useState78 } from "react";
18530
18548
  import { v4 as v410 } from "uuid";
18531
18549
 
18532
18550
  // src/features/auth/components/two-factor/PasskeyButton.tsx
18533
18551
  import { startAuthentication } from "@simplewebauthn/browser";
18534
- import { useTranslations as useTranslations74 } from "next-intl";
18552
+ import { useTranslations as useTranslations75 } from "next-intl";
18535
18553
  import { useState as useState77 } from "react";
18536
18554
  import { v4 as v49 } from "uuid";
18537
18555
  import { jsx as jsx202 } from "react/jsx-runtime";
18538
18556
  function PasskeyButton({ pendingToken, onSuccess, onError, disabled = false }) {
18539
- const t = useTranslations74();
18557
+ const t = useTranslations75();
18540
18558
  const [isLoading, setIsLoading] = useState77(false);
18541
18559
  const handleClick = /* @__PURE__ */ __name(async () => {
18542
18560
  setIsLoading(true);
@@ -18574,7 +18592,7 @@ __name(PasskeyButton, "PasskeyButton");
18574
18592
  // src/features/auth/components/forms/TwoFactorChallenge.tsx
18575
18593
  import { Fragment as Fragment40, jsx as jsx203, jsxs as jsxs123 } from "react/jsx-runtime";
18576
18594
  function TwoFactorChallenge() {
18577
- const t = useTranslations75();
18595
+ const t = useTranslations76();
18578
18596
  const { setUser } = useCurrentUserContext();
18579
18597
  const { pendingTwoFactor, setPendingTwoFactor } = useAuthContext();
18580
18598
  const generateUrl = usePageUrlGenerator();
@@ -18711,10 +18729,10 @@ function TwoFactorChallenge() {
18711
18729
  __name(TwoFactorChallenge, "TwoFactorChallenge");
18712
18730
 
18713
18731
  // src/features/content/components/lists/ContentsList.tsx
18714
- import { useTranslations as useTranslations76 } from "next-intl";
18732
+ import { useTranslations as useTranslations77 } from "next-intl";
18715
18733
  import { jsx as jsx204, jsxs as jsxs124 } from "react/jsx-runtime";
18716
18734
  function ContentsList({ contentList }) {
18717
- const t = useTranslations76();
18735
+ const t = useTranslations77();
18718
18736
  return /* @__PURE__ */ jsxs124("div", { className: "flex min-h-0 w-full flex-col overflow-y-auto", children: [
18719
18737
  /* @__PURE__ */ jsx204("h2", { className: "text-xl font-semibold", children: t(`content.news`) }),
18720
18738
  /* @__PURE__ */ jsx204("div", { className: "flex flex-col", children: contentList.map((content) => /* @__PURE__ */ jsx204(ContentsListElement, { content }, content.id)) })
@@ -18742,10 +18760,10 @@ function ContentsListElement({ content }) {
18742
18760
  __name(ContentsListElement, "ContentsListElement");
18743
18761
 
18744
18762
  // src/features/content/components/lists/ContentsListById.tsx
18745
- import { useTranslations as useTranslations77 } from "next-intl";
18763
+ import { useTranslations as useTranslations78 } from "next-intl";
18746
18764
  import { jsx as jsx205 } from "react/jsx-runtime";
18747
18765
  function ContentsListById({ contentIds }) {
18748
- const t = useTranslations77();
18766
+ const t = useTranslations78();
18749
18767
  const data = useDataListRetriever({
18750
18768
  module: Modules.Content,
18751
18769
  retriever: /* @__PURE__ */ __name((params) => ContentService.findMany(params), "retriever"),
@@ -18755,7 +18773,7 @@ function ContentsListById({ contentIds }) {
18755
18773
  ContentListTable,
18756
18774
  {
18757
18775
  data,
18758
- fields: ["name" /* name */, "authors" /* authors */, "updatedAt" /* updatedAt */],
18776
+ fields: ["name" /* name */, "authors" /* authors */],
18759
18777
  tableGeneratorType: Modules.Content,
18760
18778
  title: t(`common.relevant`)
18761
18779
  }
@@ -18764,10 +18782,10 @@ function ContentsListById({ contentIds }) {
18764
18782
  __name(ContentsListById, "ContentsListById");
18765
18783
 
18766
18784
  // src/features/content/components/lists/RelevantContentsList.tsx
18767
- import { useTranslations as useTranslations78 } from "next-intl";
18785
+ import { useTranslations as useTranslations79 } from "next-intl";
18768
18786
  import { jsx as jsx206 } from "react/jsx-runtime";
18769
18787
  function RelevantContentsList({ id }) {
18770
- const t = useTranslations78();
18788
+ const t = useTranslations79();
18771
18789
  const data = useDataListRetriever({
18772
18790
  module: Modules.Content,
18773
18791
  retriever: /* @__PURE__ */ __name((params) => ContentService.findRelevant(params), "retriever"),
@@ -18777,7 +18795,7 @@ function RelevantContentsList({ id }) {
18777
18795
  ContentListTable,
18778
18796
  {
18779
18797
  data,
18780
- fields: ["name" /* name */, "authors" /* authors */, "relevance" /* relevance */, "updatedAt" /* updatedAt */],
18798
+ fields: ["name" /* name */, "authors" /* authors */, "relevance" /* relevance */],
18781
18799
  tableGeneratorType: Modules.Content,
18782
18800
  title: t(`common.relevant`)
18783
18801
  }
@@ -18787,12 +18805,12 @@ __name(RelevantContentsList, "RelevantContentsList");
18787
18805
 
18788
18806
  // src/features/how-to/components/containers/HowToCommand.tsx
18789
18807
  import { ArrowRight, LifeBuoyIcon } from "lucide-react";
18790
- import { useTranslations as useTranslations80 } from "next-intl";
18808
+ import { useTranslations as useTranslations81 } from "next-intl";
18791
18809
  import { useCallback as useCallback38, useEffect as useEffect61, useMemo as useMemo31, useRef as useRef34, useState as useState79 } from "react";
18792
18810
 
18793
18811
  // src/features/how-to/components/containers/HowToCommandViewer.tsx
18794
18812
  import { ArrowLeft, BookOpen, MessageSquare } from "lucide-react";
18795
- import { useTranslations as useTranslations79 } from "next-intl";
18813
+ import { useTranslations as useTranslations80 } from "next-intl";
18796
18814
  import { useMemo as useMemo30 } from "react";
18797
18815
 
18798
18816
  // src/features/how-to/utils/blocknote.ts
@@ -18864,7 +18882,7 @@ __name(extractHeadings, "extractHeadings");
18864
18882
  // src/features/how-to/components/containers/HowToCommandViewer.tsx
18865
18883
  import { jsx as jsx207, jsxs as jsxs125 } from "react/jsx-runtime";
18866
18884
  function HowToCommandViewer({ howTo, onBack, onStartChat }) {
18867
- const t = useTranslations79();
18885
+ const t = useTranslations80();
18868
18886
  const readingTime = useMemo30(() => calculateReadingTime(howTo.description), [howTo.description]);
18869
18887
  const headings = useMemo30(() => extractHeadings(howTo.description), [howTo.description]);
18870
18888
  return /* @__PURE__ */ jsxs125("div", { className: "flex h-full flex-col", children: [
@@ -18913,7 +18931,7 @@ function matchPage(pathname, pattern) {
18913
18931
  }
18914
18932
  __name(matchPage, "matchPage");
18915
18933
  function HowToCommand({ pathname, extraGroups, onStartChat }) {
18916
- const t = useTranslations80();
18934
+ const t = useTranslations81();
18917
18935
  const [dialogOpen, setDialogOpen] = useState79(false);
18918
18936
  const [selectedHowTo, setSelectedHowTo] = useState79(null);
18919
18937
  const searchTermRef = useRef34("");
@@ -19079,10 +19097,10 @@ function HowToContent() {
19079
19097
  __name(HowToContent, "HowToContent");
19080
19098
 
19081
19099
  // src/features/how-to/components/details/HowToDetails.tsx
19082
- import { useTranslations as useTranslations81 } from "next-intl";
19100
+ import { useTranslations as useTranslations82 } from "next-intl";
19083
19101
  import { jsx as jsx210, jsxs as jsxs127 } from "react/jsx-runtime";
19084
19102
  function HowToDetailsInternal({ howTo }) {
19085
- const t = useTranslations81();
19103
+ const t = useTranslations82();
19086
19104
  const { title } = useSharedContext();
19087
19105
  const pagesList = HowTo.parsePagesFromString(howTo.pages);
19088
19106
  return /* @__PURE__ */ jsxs127("div", { className: "flex w-full flex-col gap-y-4", children: [
@@ -19118,14 +19136,14 @@ function HowToContainer() {
19118
19136
  __name(HowToContainer, "HowToContainer");
19119
19137
 
19120
19138
  // src/features/how-to/components/lists/HowToList.tsx
19121
- import { useTranslations as useTranslations83 } from "next-intl";
19139
+ import { useTranslations as useTranslations84 } from "next-intl";
19122
19140
 
19123
19141
  // src/features/how-to/hooks/useHowToTableStructure.tsx
19124
- import { useTranslations as useTranslations82 } from "next-intl";
19142
+ import { useTranslations as useTranslations83 } from "next-intl";
19125
19143
  import { useMemo as useMemo32 } from "react";
19126
19144
  import { Fragment as Fragment42, jsx as jsx212 } from "react/jsx-runtime";
19127
19145
  var useHowToTableStructure = /* @__PURE__ */ __name((params) => {
19128
- const t = useTranslations82();
19146
+ const t = useTranslations83();
19129
19147
  const generateUrl = usePageUrlGenerator();
19130
19148
  const tableData = useMemo32(() => {
19131
19149
  return params.data.map((howTo) => {
@@ -19191,7 +19209,7 @@ registerTableGenerator("howtos", useHowToTableStructure);
19191
19209
  // src/features/how-to/components/lists/HowToList.tsx
19192
19210
  import { jsx as jsx213 } from "react/jsx-runtime";
19193
19211
  function HowToList({ fullWidth }) {
19194
- const t = useTranslations83();
19212
+ const t = useTranslations84();
19195
19213
  const data = useDataListRetriever({
19196
19214
  module: Modules.HowTo,
19197
19215
  retriever: /* @__PURE__ */ __name((params) => HowToService.findMany(params), "retriever"),
@@ -19225,7 +19243,7 @@ __name(HowToListContainer, "HowToListContainer");
19225
19243
 
19226
19244
  // src/features/how-to/components/forms/HowToSelector.tsx
19227
19245
  import { CircleX as CircleX3, RefreshCwIcon as RefreshCwIcon4, SearchIcon as SearchIcon7, XIcon as XIcon11 } from "lucide-react";
19228
- import { useTranslations as useTranslations84 } from "next-intl";
19246
+ import { useTranslations as useTranslations85 } from "next-intl";
19229
19247
  import { useCallback as useCallback39, useEffect as useEffect62, useRef as useRef35, useState as useState80 } from "react";
19230
19248
  import { Fragment as Fragment43, jsx as jsx215, jsxs as jsxs128 } from "react/jsx-runtime";
19231
19249
  function HowToSelector({
@@ -19236,7 +19254,7 @@ function HowToSelector({
19236
19254
  onChange,
19237
19255
  isRequired = false
19238
19256
  }) {
19239
- const t = useTranslations84();
19257
+ const t = useTranslations85();
19240
19258
  const [open, setOpen] = useState80(false);
19241
19259
  const searchTermRef = useRef35("");
19242
19260
  const [searchTerm, setSearchTerm] = useState80("");
@@ -19329,7 +19347,7 @@ function HowToSelector({
19329
19347
  __name(HowToSelector, "HowToSelector");
19330
19348
 
19331
19349
  // src/features/assistant/components/parts/AssistantSidebar.tsx
19332
- import { useTranslations as useTranslations85 } from "next-intl";
19350
+ import { useTranslations as useTranslations86 } from "next-intl";
19333
19351
  import { Plus as Plus2 } from "lucide-react";
19334
19352
 
19335
19353
  // src/features/assistant/utils/groupThreadsByBucket.ts
@@ -19355,7 +19373,7 @@ __name(groupThreadsByBucket, "groupThreadsByBucket");
19355
19373
  // src/features/assistant/components/parts/AssistantSidebar.tsx
19356
19374
  import { Fragment as Fragment44, jsx as jsx216, jsxs as jsxs129 } from "react/jsx-runtime";
19357
19375
  function AssistantSidebar({ threads, activeId, onSelect, onNew }) {
19358
- const t = useTranslations85();
19376
+ const t = useTranslations86();
19359
19377
  const groups = groupThreadsByBucket(threads);
19360
19378
  const renderSection = /* @__PURE__ */ __name((label, items) => {
19361
19379
  if (items.length === 0) return null;
@@ -19390,16 +19408,16 @@ __name(AssistantSidebar, "AssistantSidebar");
19390
19408
 
19391
19409
  // src/features/assistant/components/parts/AssistantEmptyState.tsx
19392
19410
  import { useState as useState82 } from "react";
19393
- import { useTranslations as useTranslations87 } from "next-intl";
19411
+ import { useTranslations as useTranslations88 } from "next-intl";
19394
19412
  import { Sparkles } from "lucide-react";
19395
19413
 
19396
19414
  // src/features/assistant/components/parts/AssistantComposer.tsx
19397
19415
  import { useState as useState81 } from "react";
19398
- import { useTranslations as useTranslations86 } from "next-intl";
19416
+ import { useTranslations as useTranslations87 } from "next-intl";
19399
19417
  import { ArrowUp } from "lucide-react";
19400
19418
  import { jsx as jsx217, jsxs as jsxs130 } from "react/jsx-runtime";
19401
19419
  function AssistantComposer({ onSend, disabled, value: controlled, onValueChange }) {
19402
- const t = useTranslations86();
19420
+ const t = useTranslations87();
19403
19421
  const [internal, setInternal] = useState81("");
19404
19422
  const value = controlled ?? internal;
19405
19423
  const setValue = onValueChange ?? setInternal;
@@ -19445,7 +19463,7 @@ __name(AssistantComposer, "AssistantComposer");
19445
19463
  import { jsx as jsx218, jsxs as jsxs131 } from "react/jsx-runtime";
19446
19464
  var STARTER_KEYS = ["a", "b", "c", "d"];
19447
19465
  function AssistantEmptyState({ onSend, operatorMode = false, onOperatorModeChange }) {
19448
- const t = useTranslations87();
19466
+ const t = useTranslations88();
19449
19467
  const [draft, setDraft] = useState82("");
19450
19468
  return /* @__PURE__ */ jsx218("div", { className: "flex h-full w-full items-center justify-center p-10", children: /* @__PURE__ */ jsxs131("div", { className: "flex w-full max-w-2xl flex-col gap-6", children: [
19451
19469
  /* @__PURE__ */ jsxs131("div", { className: "text-center", children: [
@@ -19485,10 +19503,10 @@ __name(AssistantEmptyState, "AssistantEmptyState");
19485
19503
 
19486
19504
  // src/features/assistant/components/parts/AssistantThreadHeader.tsx
19487
19505
  import { useState as useState83 } from "react";
19488
- import { useTranslations as useTranslations88 } from "next-intl";
19506
+ import { useTranslations as useTranslations89 } from "next-intl";
19489
19507
  import { jsx as jsx219, jsxs as jsxs132 } from "react/jsx-runtime";
19490
19508
  function AssistantThreadHeader({ assistant, onRename, onDelete }) {
19491
- const t = useTranslations88();
19509
+ const t = useTranslations89();
19492
19510
  const [renameValue, setRenameValue] = useState83(assistant.title);
19493
19511
  const [renameOpen, setRenameOpen] = useState83(false);
19494
19512
  const [deleteOpen, setDeleteOpen] = useState83(false);
@@ -19547,7 +19565,7 @@ __name(AssistantThreadHeader, "AssistantThreadHeader");
19547
19565
  import { useEffect as useEffect64, useRef as useRef36 } from "react";
19548
19566
 
19549
19567
  // src/features/assistant-message/components/MessageItem.tsx
19550
- import { useTranslations as useTranslations94 } from "next-intl";
19568
+ import { useTranslations as useTranslations95 } from "next-intl";
19551
19569
  import { Sparkles as Sparkles2, AlertCircle } from "lucide-react";
19552
19570
  import ReactMarkdown3 from "react-markdown";
19553
19571
  import remarkGfm3 from "remark-gfm";
@@ -19557,15 +19575,15 @@ import { useEffect as useEffect63, useMemo as useMemo34, useState as useState86
19557
19575
 
19558
19576
  // src/features/assistant-message/components/parts/MessageSourcesPanel.tsx
19559
19577
  import { useMemo as useMemo33, useState as useState85 } from "react";
19560
- import { useTranslations as useTranslations93 } from "next-intl";
19578
+ import { useTranslations as useTranslations94 } from "next-intl";
19561
19579
  import { ChevronDown as ChevronDown4, ChevronRight as ChevronRight2 } from "lucide-react";
19562
19580
 
19563
19581
  // src/features/assistant-message/components/parts/tabs/ReferencesTab.tsx
19564
- import { useTranslations as useTranslations89 } from "next-intl";
19582
+ import { useTranslations as useTranslations90 } from "next-intl";
19565
19583
  import Link4 from "next/link";
19566
19584
  import { jsx as jsx220, jsxs as jsxs133 } from "react/jsx-runtime";
19567
19585
  function ReferencesTab({ references }) {
19568
- const t = useTranslations89();
19586
+ const t = useTranslations90();
19569
19587
  const generate = usePageUrlGenerator();
19570
19588
  if (references.length === 0) return null;
19571
19589
  return /* @__PURE__ */ jsxs133(Table, { children: [
@@ -19594,7 +19612,7 @@ __name(ReferencesTab, "ReferencesTab");
19594
19612
 
19595
19613
  // src/features/assistant-message/components/parts/tabs/CitationsTab.tsx
19596
19614
  import { Fragment as Fragment45, useState as useState84 } from "react";
19597
- import { useTranslations as useTranslations90 } from "next-intl";
19615
+ import { useTranslations as useTranslations91 } from "next-intl";
19598
19616
  import { ChevronDown as ChevronDown3, HelpCircle } from "lucide-react";
19599
19617
  import ReactMarkdown2 from "react-markdown";
19600
19618
  import remarkGfm2 from "remark-gfm";
@@ -19631,7 +19649,7 @@ __name(RelevanceMeter, "RelevanceMeter");
19631
19649
  // src/features/assistant-message/components/parts/tabs/CitationsTab.tsx
19632
19650
  import { jsx as jsx222, jsxs as jsxs135 } from "react/jsx-runtime";
19633
19651
  function CitationsTab({ citations, sources }) {
19634
- const t = useTranslations90();
19652
+ const t = useTranslations91();
19635
19653
  const [expanded, setExpanded] = useState84(/* @__PURE__ */ new Set());
19636
19654
  if (citations.length === 0) return null;
19637
19655
  const sorted = [...citations].sort((a, b) => (b.relevance ?? 0) - (a.relevance ?? 0));
@@ -19689,11 +19707,11 @@ function CitationsTab({ citations, sources }) {
19689
19707
  __name(CitationsTab, "CitationsTab");
19690
19708
 
19691
19709
  // src/features/assistant-message/components/parts/tabs/ContentsTab.tsx
19692
- import { useTranslations as useTranslations91 } from "next-intl";
19710
+ import { useTranslations as useTranslations92 } from "next-intl";
19693
19711
  import Link5 from "next/link";
19694
19712
  import { jsx as jsx223, jsxs as jsxs136 } from "react/jsx-runtime";
19695
19713
  function ContentsTab({ citations, sources }) {
19696
- const t = useTranslations91();
19714
+ const t = useTranslations92();
19697
19715
  const generate = usePageUrlGenerator();
19698
19716
  const map = /* @__PURE__ */ new Map();
19699
19717
  for (const c of citations) {
@@ -19745,7 +19763,7 @@ function ContentsTab({ citations, sources }) {
19745
19763
  __name(ContentsTab, "ContentsTab");
19746
19764
 
19747
19765
  // src/features/assistant-message/components/parts/tabs/UsersTab.tsx
19748
- import { useTranslations as useTranslations92 } from "next-intl";
19766
+ import { useTranslations as useTranslations93 } from "next-intl";
19749
19767
  import Link6 from "next/link";
19750
19768
  import { jsx as jsx224, jsxs as jsxs137 } from "react/jsx-runtime";
19751
19769
  function getInitials2(name) {
@@ -19762,7 +19780,7 @@ function readAuthor(source) {
19762
19780
  }
19763
19781
  __name(readAuthor, "readAuthor");
19764
19782
  function UsersTab({ users, citations, sources }) {
19765
- const t = useTranslations92();
19783
+ const t = useTranslations93();
19766
19784
  const generate = usePageUrlGenerator();
19767
19785
  const userMap = /* @__PURE__ */ new Map();
19768
19786
  for (const u of users) {
@@ -19848,7 +19866,7 @@ __name(SuggestedQuestionsTab, "SuggestedQuestionsTab");
19848
19866
  // src/features/assistant-message/components/parts/MessageSourcesPanel.tsx
19849
19867
  import { jsx as jsx226, jsxs as jsxs138 } from "react/jsx-runtime";
19850
19868
  function MessageSourcesPanel({ message, isLatestAssistant, onSelectFollowUp, sources, users }) {
19851
- const t = useTranslations93();
19869
+ const t = useTranslations94();
19852
19870
  const visibleReferences = useMemo33(
19853
19871
  () => message.references.filter((ref) => {
19854
19872
  try {
@@ -20038,7 +20056,7 @@ function MessageItem({
20038
20056
  onRetry,
20039
20057
  renderApprovalAction
20040
20058
  }) {
20041
- const t = useTranslations94();
20059
+ const t = useTranslations95();
20042
20060
  const isUser = message.role === "user";
20043
20061
  const isFailed = isUser && !!failedMessageIds?.has(message.id);
20044
20062
  if (isUser) {
@@ -20097,11 +20115,11 @@ function MessageList({ messages, onSelectFollowUp, failedMessageIds, onRetry, re
20097
20115
  __name(MessageList, "MessageList");
20098
20116
 
20099
20117
  // src/features/assistant/components/parts/AssistantStatusLine.tsx
20100
- import { useTranslations as useTranslations95 } from "next-intl";
20118
+ import { useTranslations as useTranslations96 } from "next-intl";
20101
20119
  import { Loader2 as Loader24 } from "lucide-react";
20102
20120
  import { jsx as jsx230, jsxs as jsxs140 } from "react/jsx-runtime";
20103
20121
  function AssistantStatusLine({ status }) {
20104
- const t = useTranslations95();
20122
+ const t = useTranslations96();
20105
20123
  const text = status ?? t("features.assistant.thinking");
20106
20124
  return /* @__PURE__ */ jsxs140("div", { className: "text-muted-foreground flex items-center gap-2 px-4 py-2 text-sm", children: [
20107
20125
  /* @__PURE__ */ jsx230(Loader24, { className: "h-4 w-4 animate-spin" }),
@@ -20227,14 +20245,14 @@ var NotificationErrorBoundary = class extends Component {
20227
20245
  };
20228
20246
 
20229
20247
  // src/features/notification/components/containers/NotificationsListContainer.tsx
20230
- import { useTranslations as useTranslations97 } from "next-intl";
20248
+ import { useTranslations as useTranslations98 } from "next-intl";
20231
20249
 
20232
20250
  // src/features/notification/components/lists/NotificationsList.tsx
20233
20251
  import { ArchiveIcon } from "lucide-react";
20234
- import { useTranslations as useTranslations96 } from "next-intl";
20252
+ import { useTranslations as useTranslations97 } from "next-intl";
20235
20253
  import { Fragment as Fragment47, jsx as jsx234, jsxs as jsxs144 } from "react/jsx-runtime";
20236
20254
  function NotificationsList({ archived }) {
20237
- const t = useTranslations96();
20255
+ const t = useTranslations97();
20238
20256
  const generateUrl = usePageUrlGenerator();
20239
20257
  const data = useDataListRetriever({
20240
20258
  retriever: /* @__PURE__ */ __name((params) => NotificationService.findMany(params), "retriever"),
@@ -20292,7 +20310,7 @@ __name(NotificationsList, "NotificationsList");
20292
20310
  // src/features/notification/components/containers/NotificationsListContainer.tsx
20293
20311
  import { jsx as jsx235, jsxs as jsxs145 } from "react/jsx-runtime";
20294
20312
  function NotificationsListContainerContent() {
20295
- const t = useTranslations97();
20313
+ const t = useTranslations98();
20296
20314
  const { notifications: _notifications, isLoading: _isLoading, error } = useNotificationContext();
20297
20315
  if (error) {
20298
20316
  return /* @__PURE__ */ jsx235("div", { className: "flex items-center justify-center p-8 text-center", children: /* @__PURE__ */ jsxs145("div", { className: "text-destructive text-sm", children: [
@@ -20323,7 +20341,7 @@ __name(NotificationsListContainer, "NotificationsListContainer");
20323
20341
 
20324
20342
  // src/features/notification/components/modals/NotificationModal.tsx
20325
20343
  import { BellIcon } from "lucide-react";
20326
- import { useTranslations as useTranslations98 } from "next-intl";
20344
+ import { useTranslations as useTranslations99 } from "next-intl";
20327
20345
  import { Fragment as Fragment48, useCallback as useCallback40, useEffect as useEffect65, useMemo as useMemo35, useRef as useRef37, useState as useState87 } from "react";
20328
20346
  import { jsx as jsx236, jsxs as jsxs146 } from "react/jsx-runtime";
20329
20347
  function NotificationModalContent({ isOpen, setIsOpen }) {
@@ -20344,7 +20362,7 @@ function NotificationModalContent({ isOpen, setIsOpen }) {
20344
20362
  removeSocketNotification: _removeSocketNotification,
20345
20363
  clearSocketNotifications
20346
20364
  } = useSocketContext();
20347
- const t = useTranslations98();
20365
+ const t = useTranslations99();
20348
20366
  const generateUrl = usePageUrlGenerator();
20349
20367
  const [newNotifications, setNewNotifications] = useState87(false);
20350
20368
  const preventAutoClose = useRef37(false);
@@ -20798,11 +20816,11 @@ function ReferralDialog({
20798
20816
  __name(ReferralDialog, "ReferralDialog");
20799
20817
 
20800
20818
  // src/features/role/components/details/RoleDetails.tsx
20801
- import { useTranslations as useTranslations99 } from "next-intl";
20819
+ import { useTranslations as useTranslations100 } from "next-intl";
20802
20820
  import { jsx as jsx240 } from "react/jsx-runtime";
20803
20821
  function RoleDetails() {
20804
20822
  const { role } = useRoleContext();
20805
- const t = useTranslations99();
20823
+ const t = useTranslations100();
20806
20824
  if (!role) return null;
20807
20825
  return /* @__PURE__ */ jsx240(Card, { className: "w-full", children: /* @__PURE__ */ jsx240(CardContent, { className: "p-4", children: /* @__PURE__ */ jsx240(AttributeElement, { title: t(`role.fields.description.label`), value: role.description }) }) });
20808
20826
  }
@@ -20821,10 +20839,10 @@ function RoleContainer() {
20821
20839
  __name(RoleContainer, "RoleContainer");
20822
20840
 
20823
20841
  // src/features/role/components/forms/FormRoles.tsx
20824
- import { useTranslations as useTranslations100 } from "next-intl";
20842
+ import { useTranslations as useTranslations101 } from "next-intl";
20825
20843
  import { jsx as jsx242, jsxs as jsxs150 } from "react/jsx-runtime";
20826
20844
  function FormRoles({ form, id, name, roles }) {
20827
- const t = useTranslations100();
20845
+ const t = useTranslations101();
20828
20846
  const { hasAccesToFeature } = useCurrentUserContext();
20829
20847
  return /* @__PURE__ */ jsx242("div", { className: "flex w-full flex-col", children: /* @__PURE__ */ jsx242(FormFieldWrapper, { form, name: id, label: name, children: (field) => /* @__PURE__ */ jsx242("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) => {
20830
20848
  if (role.requiredFeature && !hasAccesToFeature(role.requiredFeature.id)) return null;
@@ -20856,13 +20874,13 @@ function FormRoles({ form, id, name, roles }) {
20856
20874
  __name(FormRoles, "FormRoles");
20857
20875
 
20858
20876
  // src/features/role/components/forms/RemoveUserFromRole.tsx
20859
- import { useTranslations as useTranslations101 } from "next-intl";
20877
+ import { useTranslations as useTranslations102 } from "next-intl";
20860
20878
  import { useEffect as useEffect68, useState as useState91 } from "react";
20861
20879
  import { Fragment as Fragment51, jsx as jsx243, jsxs as jsxs151 } from "react/jsx-runtime";
20862
20880
  function RemoveUserFromRole({ role, user, refresh }) {
20863
20881
  const [open, setOpen] = useState91(false);
20864
20882
  const [canRemove, setCanRemove] = useState91(false);
20865
- const t = useTranslations101();
20883
+ const t = useTranslations102();
20866
20884
  useEffect68(() => {
20867
20885
  async function checkCompanyAdminDeletability() {
20868
20886
  const roleUsers = await UserService.findAllUsersByRole({
@@ -20932,7 +20950,7 @@ __name(RemoveUserFromRole, "RemoveUserFromRole");
20932
20950
 
20933
20951
  // src/features/role/components/forms/UserRoleAdd.tsx
20934
20952
  import { PlusCircle as PlusCircle2 } from "lucide-react";
20935
- import { useTranslations as useTranslations102 } from "next-intl";
20953
+ import { useTranslations as useTranslations103 } from "next-intl";
20936
20954
  import { useCallback as useCallback42, useEffect as useEffect69, useRef as useRef39, useState as useState92 } from "react";
20937
20955
  import { Fragment as Fragment52, jsx as jsx244, jsxs as jsxs152 } from "react/jsx-runtime";
20938
20956
  function UserRoleAdd({ user, refresh }) {
@@ -20940,7 +20958,7 @@ function UserRoleAdd({ user, refresh }) {
20940
20958
  const inputRef = useRef39(null);
20941
20959
  const [searchTerm, setSearchTerm] = useState92("");
20942
20960
  const [roles, setRoles] = useState92([]);
20943
- const t = useTranslations102();
20961
+ const t = useTranslations103();
20944
20962
  const addUserToRole = /* @__PURE__ */ __name(async (role) => {
20945
20963
  await RoleService.addUserToRole({
20946
20964
  roleId: role.id,
@@ -21029,10 +21047,10 @@ function UserRoleAdd({ user, refresh }) {
21029
21047
  __name(UserRoleAdd, "UserRoleAdd");
21030
21048
 
21031
21049
  // src/features/role/components/lists/RolesList.tsx
21032
- import { useTranslations as useTranslations103 } from "next-intl";
21050
+ import { useTranslations as useTranslations104 } from "next-intl";
21033
21051
  import { jsx as jsx245 } from "react/jsx-runtime";
21034
21052
  function RolesList() {
21035
- const t = useTranslations103();
21053
+ const t = useTranslations104();
21036
21054
  const data = useDataListRetriever({
21037
21055
  retriever: /* @__PURE__ */ __name((params) => RoleService.findAllRoles(params), "retriever"),
21038
21056
  retrieverParams: {},
@@ -21051,10 +21069,10 @@ function RolesList() {
21051
21069
  __name(RolesList, "RolesList");
21052
21070
 
21053
21071
  // src/features/role/components/lists/UserRolesList.tsx
21054
- import { useTranslations as useTranslations104 } from "next-intl";
21072
+ import { useTranslations as useTranslations105 } from "next-intl";
21055
21073
  import { jsx as jsx246 } from "react/jsx-runtime";
21056
21074
  function UserRolesList({ user }) {
21057
- const t = useTranslations104();
21075
+ const t = useTranslations105();
21058
21076
  const data = useDataListRetriever({
21059
21077
  retriever: /* @__PURE__ */ __name((params) => RoleService.findAllRolesByUser(params), "retriever"),
21060
21078
  retrieverParams: { userId: user.id },
@@ -21859,7 +21877,7 @@ __name(OAuthConsentScreen, "OAuthConsentScreen");
21859
21877
  // src/features/waitlist/components/forms/WaitlistForm.tsx
21860
21878
  import { zodResolver as zodResolver10 } from "@hookform/resolvers/zod";
21861
21879
  import { CheckCircle, Mail as Mail2 } from "lucide-react";
21862
- import { useTranslations as useTranslations105 } from "next-intl";
21880
+ import { useTranslations as useTranslations106 } from "next-intl";
21863
21881
  import { useState as useState96 } from "react";
21864
21882
  import { useForm as useForm10 } from "react-hook-form";
21865
21883
  import { v4 as v411 } from "uuid";
@@ -21960,7 +21978,7 @@ __name(WaitlistQuestionnaireRenderer, "WaitlistQuestionnaireRenderer");
21960
21978
  // src/features/waitlist/components/forms/WaitlistForm.tsx
21961
21979
  import { Fragment as Fragment54, jsx as jsx259, jsxs as jsxs165 } from "react/jsx-runtime";
21962
21980
  function WaitlistForm({ onSuccess }) {
21963
- const t = useTranslations105();
21981
+ const t = useTranslations106();
21964
21982
  const [isSubmitting, setIsSubmitting] = useState96(false);
21965
21983
  const [isSuccess, setIsSuccess] = useState96(false);
21966
21984
  const config = getWaitlistConfig();
@@ -22125,10 +22143,10 @@ __name(WaitlistHeroSection, "WaitlistHeroSection");
22125
22143
 
22126
22144
  // src/features/waitlist/components/sections/WaitlistSuccessState.tsx
22127
22145
  import { CheckCircle as CheckCircle3 } from "lucide-react";
22128
- import { useTranslations as useTranslations106 } from "next-intl";
22146
+ import { useTranslations as useTranslations107 } from "next-intl";
22129
22147
  import { jsx as jsx261, jsxs as jsxs167 } from "react/jsx-runtime";
22130
22148
  function WaitlistSuccessState() {
22131
- const t = useTranslations106();
22149
+ const t = useTranslations107();
22132
22150
  return /* @__PURE__ */ jsxs167("div", { className: "flex flex-col items-center justify-center space-y-4 py-8 text-center", children: [
22133
22151
  /* @__PURE__ */ jsx261("div", { className: "bg-primary/10 rounded-full p-4", children: /* @__PURE__ */ jsx261(CheckCircle3, { className: "text-primary h-12 w-12" }) }),
22134
22152
  /* @__PURE__ */ jsx261("h2", { className: "text-2xl font-bold", children: t("waitlist.success.title") }),
@@ -22140,11 +22158,11 @@ __name(WaitlistSuccessState, "WaitlistSuccessState");
22140
22158
 
22141
22159
  // src/features/waitlist/components/sections/WaitlistConfirmation.tsx
22142
22160
  import { CheckCircle as CheckCircle4, Loader2 as Loader27, XCircle as XCircle2 } from "lucide-react";
22143
- import { useTranslations as useTranslations107 } from "next-intl";
22161
+ import { useTranslations as useTranslations108 } from "next-intl";
22144
22162
  import { useEffect as useEffect70, useState as useState97 } from "react";
22145
22163
  import { jsx as jsx262, jsxs as jsxs168 } from "react/jsx-runtime";
22146
22164
  function WaitlistConfirmation({ code }) {
22147
- const t = useTranslations107();
22165
+ const t = useTranslations108();
22148
22166
  const [state, setState] = useState97("loading");
22149
22167
  const [errorMessage, setErrorMessage] = useState97("");
22150
22168
  useEffect70(() => {
@@ -22186,12 +22204,12 @@ __name(WaitlistConfirmation, "WaitlistConfirmation");
22186
22204
  // src/features/waitlist/components/lists/WaitlistList.tsx
22187
22205
  import { flexRender as flexRender2, getCoreRowModel as getCoreRowModel2, useReactTable as useReactTable2 } from "@tanstack/react-table";
22188
22206
  import { RefreshCw as RefreshCw4, Users as Users2 } from "lucide-react";
22189
- import { useTranslations as useTranslations109 } from "next-intl";
22207
+ import { useTranslations as useTranslations110 } from "next-intl";
22190
22208
  import { useCallback as useCallback48, useEffect as useEffect71, useState as useState98 } from "react";
22191
22209
 
22192
22210
  // src/features/waitlist/hooks/useWaitlistTableStructure.tsx
22193
22211
  import { Send } from "lucide-react";
22194
- import { useTranslations as useTranslations108 } from "next-intl";
22212
+ import { useTranslations as useTranslations109 } from "next-intl";
22195
22213
  import { jsx as jsx263, jsxs as jsxs169 } from "react/jsx-runtime";
22196
22214
  function parseQuestionnaire(questionnaire) {
22197
22215
  if (!questionnaire) return null;
@@ -22205,7 +22223,7 @@ __name(parseQuestionnaire, "parseQuestionnaire");
22205
22223
  function useWaitlistTableStructure({
22206
22224
  onInvite
22207
22225
  }) {
22208
- const t = useTranslations108();
22226
+ const t = useTranslations109();
22209
22227
  const getStatusBadge = /* @__PURE__ */ __name((status) => {
22210
22228
  const variants = {
22211
22229
  pending: { variant: "secondary" },
@@ -22283,7 +22301,7 @@ __name(useWaitlistTableStructure, "useWaitlistTableStructure");
22283
22301
  // src/features/waitlist/components/lists/WaitlistList.tsx
22284
22302
  import { jsx as jsx264, jsxs as jsxs170 } from "react/jsx-runtime";
22285
22303
  function WaitlistList() {
22286
- const t = useTranslations109();
22304
+ const t = useTranslations110();
22287
22305
  const [entries, setEntries] = useState98([]);
22288
22306
  const [total, setTotal] = useState98(0);
22289
22307
  const [isLoading, setIsLoading] = useState98(true);
@@ -22356,7 +22374,7 @@ __name(WaitlistList, "WaitlistList");
22356
22374
 
22357
22375
  // src/features/rbac/components/RbacContainer.tsx
22358
22376
  import { Loader2Icon as Loader2Icon4 } from "lucide-react";
22359
- import { useTranslations as useTranslations111 } from "next-intl";
22377
+ import { useTranslations as useTranslations112 } from "next-intl";
22360
22378
  import { memo as memo2, useCallback as useCallback50, useEffect as useEffect73, useMemo as useMemo36, useRef as useRef40, useState as useState100 } from "react";
22361
22379
 
22362
22380
  // src/features/rbac/components/RbacPermissionCell.tsx
@@ -22437,7 +22455,7 @@ __name(RbacPermissionCell, "RbacPermissionCell");
22437
22455
  // src/features/rbac/components/RbacPermissionPicker.tsx
22438
22456
  import { Popover as PopoverPrimitive2 } from "@base-ui/react/popover";
22439
22457
  import { CheckIcon as CheckIcon10, MinusIcon as MinusIcon3, XIcon as XIcon13 } from "lucide-react";
22440
- import { useTranslations as useTranslations110 } from "next-intl";
22458
+ import { useTranslations as useTranslations111 } from "next-intl";
22441
22459
  import { useCallback as useCallback49, useEffect as useEffect72, useState as useState99 } from "react";
22442
22460
  import { Fragment as Fragment55, jsx as jsx266, jsxs as jsxs172 } from "react/jsx-runtime";
22443
22461
  function RbacPermissionPicker({
@@ -22450,7 +22468,7 @@ function RbacPermissionPicker({
22450
22468
  onClear,
22451
22469
  onClose
22452
22470
  }) {
22453
- const t = useTranslations110();
22471
+ const t = useTranslations111();
22454
22472
  const [customSegment, setCustomSegment] = useState99("");
22455
22473
  useEffect72(() => {
22456
22474
  if (!open) setCustomSegment("");
@@ -22648,7 +22666,7 @@ var ModuleEditor = memo2(/* @__PURE__ */ __name(function ModuleEditor2({
22648
22666
  roleNames,
22649
22667
  onOpenPicker
22650
22668
  }) {
22651
- const t = useTranslations111();
22669
+ const t = useTranslations112();
22652
22670
  const defaultTokens = block.default ?? [];
22653
22671
  return /* @__PURE__ */ jsxs173("div", { className: "rounded-lg border border-accent bg-card", children: [
22654
22672
  /* @__PURE__ */ jsxs173("div", { className: "flex items-center justify-between border-b px-4 py-2", children: [
@@ -22698,7 +22716,7 @@ var ModuleEditor = memo2(/* @__PURE__ */ __name(function ModuleEditor2({
22698
22716
  ] });
22699
22717
  }, "ModuleEditor"));
22700
22718
  function RbacContainer() {
22701
- const t = useTranslations111();
22719
+ const t = useTranslations112();
22702
22720
  const { matrix, modulePaths, loading, error, roleNames, moduleNames, updateCell, clearCell } = useRbacContext();
22703
22721
  const [selectedModuleId, setSelectedModuleId] = useState100(null);
22704
22722
  const [activePicker, setActivePicker] = useState100(null);
@@ -22811,7 +22829,7 @@ __name(RbacContainer, "RbacContainer");
22811
22829
 
22812
22830
  // src/features/rbac/components/RbacByRoleContainer.tsx
22813
22831
  import { Loader2Icon as Loader2Icon5 } from "lucide-react";
22814
- import { useTranslations as useTranslations112 } from "next-intl";
22832
+ import { useTranslations as useTranslations113 } from "next-intl";
22815
22833
  import { Fragment as Fragment56, memo as memo3, useCallback as useCallback51, useEffect as useEffect74, useMemo as useMemo37, useRef as useRef41, useState as useState101 } from "react";
22816
22834
  import { jsx as jsx268, jsxs as jsxs174 } from "react/jsx-runtime";
22817
22835
  function findToken2(tokens, action) {
@@ -22848,7 +22866,7 @@ var ACTION_LABELS2 = {
22848
22866
  delete: "Delete"
22849
22867
  };
22850
22868
  function RbacByRoleContainer() {
22851
- const t = useTranslations112();
22869
+ const t = useTranslations113();
22852
22870
  const { matrix, modulePaths, loading, error, roleNames, moduleNames, updateCell, clearCell } = useRbacContext();
22853
22871
  const [selectedRoleId, setSelectedRoleId] = useState101(null);
22854
22872
  const [activePicker, setActivePicker] = useState101(null);
@@ -23523,4 +23541,4 @@ export {
23523
23541
  useOAuthClients,
23524
23542
  useOAuthClient
23525
23543
  };
23526
- //# sourceMappingURL=chunk-JGVMZYAO.mjs.map
23544
+ //# sourceMappingURL=chunk-PJGAR5F3.mjs.map