@carlonicora/nextjs-jsonapi 4.0.7 → 4.1.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 (59) hide show
  1. package/dist/{BlockNoteEditor-J7EF7BRX.js → BlockNoteEditor-6CBMNJPU.js} +9 -9
  2. package/dist/{BlockNoteEditor-J7EF7BRX.js.map → BlockNoteEditor-6CBMNJPU.js.map} +1 -1
  3. package/dist/{BlockNoteEditor-KOHN3SSR.mjs → BlockNoteEditor-7N66JABP.mjs} +2 -2
  4. package/dist/billing/index.js +335 -335
  5. package/dist/billing/index.mjs +1 -1
  6. package/dist/{chunk-3W3VVX2N.mjs → chunk-HQKTQBUC.mjs} +89 -29
  7. package/dist/chunk-HQKTQBUC.mjs.map +1 -0
  8. package/dist/{chunk-3M7D6NXU.js → chunk-MJVEKDM4.js} +320 -260
  9. package/dist/chunk-MJVEKDM4.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 +10 -1
  13. package/dist/components/index.d.ts +10 -1
  14. package/dist/components/index.js +4 -2
  15. package/dist/components/index.js.map +1 -1
  16. package/dist/components/index.mjs +3 -1
  17. package/dist/contexts/index.js +2 -2
  18. package/dist/contexts/index.mjs +1 -1
  19. package/dist/features/analytics/index.js +88 -88
  20. package/dist/features/analytics/index.mjs +1 -1
  21. package/dist/features/help/index.js +31 -31
  22. package/dist/features/help/index.mjs +1 -1
  23. package/dist/features/tokenusage/index.js +75 -75
  24. package/dist/features/tokenusage/index.mjs +1 -1
  25. package/dist/next-config/index.d.mts +8 -1
  26. package/dist/next-config/index.d.ts +8 -1
  27. package/dist/next-config/index.js +31 -9
  28. package/dist/next-config/index.js.map +1 -1
  29. package/dist/next-config/index.mjs +31 -9
  30. package/dist/next-config/index.mjs.map +1 -1
  31. package/package.json +1 -1
  32. package/src/features/company/components/details/CompanyContent.tsx +9 -2
  33. package/src/features/company/components/forms/CompanyEditor.tsx +2 -0
  34. package/src/features/company/hooks/useSubscriptionStatus.test.ts +76 -10
  35. package/src/features/company/hooks/useSubscriptionStatus.ts +9 -9
  36. package/src/features/how-to/components/containers/HowToCommand.spec.tsx +79 -6
  37. package/src/features/how-to/components/containers/HowToCommand.tsx +12 -2
  38. package/src/features/how-to/components/forms/HowToSelector.spec.tsx +85 -0
  39. package/src/features/how-to/components/forms/HowToSelector.tsx +1 -0
  40. package/src/features/role/components/forms/UserRoleAdd.spec.tsx +71 -0
  41. package/src/features/role/components/forms/UserRoleAdd.tsx +1 -0
  42. package/src/features/user/components/forms/UserSelector.spec.tsx +85 -0
  43. package/src/features/user/components/forms/UserSelector.tsx +1 -0
  44. package/src/features/user/components/lists/UserListInAdd.spec.tsx +84 -0
  45. package/src/features/user/components/lists/UserListInAdd.tsx +1 -0
  46. package/src/features/user/components/widgets/UserSearchPopover.spec.tsx +68 -0
  47. package/src/features/user/components/widgets/UserSearchPopover.tsx +1 -0
  48. package/src/next-config/__tests__/createNextConfig.test.ts +45 -3
  49. package/src/next-config/csp.ts +25 -4
  50. package/src/next-config/index.ts +19 -12
  51. package/src/shadcnui/custom/multi-select.spec.tsx +70 -0
  52. package/src/shadcnui/custom/multi-select.tsx +26 -2
  53. package/src/shadcnui/custom/multiple-selector.spec.tsx +111 -0
  54. package/src/shadcnui/custom/multiple-selector.tsx +33 -10
  55. package/src/shadcnui/ui/command.spec.ts +26 -0
  56. package/src/shadcnui/ui/command.tsx +13 -1
  57. package/dist/chunk-3M7D6NXU.js.map +0 -1
  58. package/dist/chunk-3W3VVX2N.mjs.map +0 -1
  59. /package/dist/{BlockNoteEditor-KOHN3SSR.mjs.map → BlockNoteEditor-7N66JABP.mjs.map} +0 -0
@@ -2012,6 +2012,7 @@ function CommandShortcut({ className, ...props }) {
2012
2012
  );
2013
2013
  }
2014
2014
  _chunk7QVYU63Ejs.__name.call(void 0, CommandShortcut, "CommandShortcut");
2015
+ var commandFilterByKeywords = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (value, search, keywords) => _cmdk.defaultFilter.call(void 0, keywords && keywords.length > 0 ? keywords.join(" ") : value, search), "commandFilterByKeywords");
2015
2016
 
2016
2017
  // src/shadcnui/ui/confirm-dialog.tsx
2017
2018
 
@@ -5547,6 +5548,9 @@ var multiSelectVariants = _classvarianceauthority.cva.call(void 0,
5547
5548
  }
5548
5549
  }
5549
5550
  );
5551
+ var SELECT_ALL_VALUE = "__multi-select:select-all__";
5552
+ var CLEAR_VALUE = "__multi-select:clear__";
5553
+ var CLOSE_VALUE = "__multi-select:close__";
5550
5554
  var MultiSelect = React12.forwardRef(
5551
5555
  ({
5552
5556
  options,
@@ -5737,7 +5741,7 @@ var MultiSelect = React12.forwardRef(
5737
5741
  className: "w-auto p-0",
5738
5742
  style: { minWidth: triggerWidth > 0 ? triggerWidth : void 0 },
5739
5743
  align: "start",
5740
- children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Command, { children: [
5744
+ children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Command, { filter: commandFilterByKeywords, children: [
5741
5745
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
5742
5746
  CommandInput,
5743
5747
  {
@@ -5754,6 +5758,8 @@ var MultiSelect = React12.forwardRef(
5754
5758
  !hideSelectAll && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
5755
5759
  CommandItem,
5756
5760
  {
5761
+ value: SELECT_ALL_VALUE,
5762
+ keywords: ["(Select All)"],
5757
5763
  onSelect: toggleAll,
5758
5764
  className: "cursor-pointer hover:bg-muted data-selected:hover:bg-muted bg-transparent data-selected:bg-transparent",
5759
5765
  children: [
@@ -5777,6 +5783,8 @@ var MultiSelect = React12.forwardRef(
5777
5783
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
5778
5784
  CommandItem,
5779
5785
  {
5786
+ value: option.value,
5787
+ keywords: [option.label],
5780
5788
  onSelect: () => toggleOption(option.value),
5781
5789
  className: "cursor-pointer hover:bg-muted data-selected:hover:bg-muted bg-transparent data-selected:bg-transparent",
5782
5790
  children: [
@@ -5801,12 +5809,23 @@ var MultiSelect = React12.forwardRef(
5801
5809
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CommandSeparator, {}),
5802
5810
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CommandGroup, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between", children: [
5803
5811
  selectedValues.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
5804
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CommandItem, { onSelect: handleClear, className: "flex-1 cursor-pointer justify-center", children: "Clear" }),
5812
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
5813
+ CommandItem,
5814
+ {
5815
+ value: CLEAR_VALUE,
5816
+ keywords: ["Clear"],
5817
+ onSelect: handleClear,
5818
+ className: "flex-1 cursor-pointer justify-center",
5819
+ children: "Clear"
5820
+ }
5821
+ ),
5805
5822
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Separator, { orientation: "vertical", className: "flex h-full min-h-6" })
5806
5823
  ] }),
5807
5824
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
5808
5825
  CommandItem,
5809
5826
  {
5827
+ value: CLOSE_VALUE,
5828
+ keywords: ["Close"],
5810
5829
  onSelect: () => setIsPopoverOpen(false),
5811
5830
  className: "max-w-full flex-1 cursor-pointer justify-center hover:bg-muted data-selected:hover:bg-muted bg-transparent data-selected:bg-transparent",
5812
5831
  children: "Close"
@@ -5878,6 +5897,8 @@ function removePickedOption(groupOption, picked) {
5878
5897
  return cloneOption;
5879
5898
  }
5880
5899
  _chunk7QVYU63Ejs.__name.call(void 0, removePickedOption, "removePickedOption");
5900
+ var CREATE_VALUE = "__multiple-selector:create__";
5901
+ var rowText = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (value, keywords) => keywords && keywords.length > 0 ? keywords.join(" ") : value, "rowText");
5881
5902
  function isOptionsExist(groupOption, targetOption) {
5882
5903
  for (const [, value] of Object.entries(groupOption)) {
5883
5904
  if (value.some((option) => targetOption.find((p) => p.value === option.value))) {
@@ -6086,17 +6107,19 @@ var MultipleSelector = React13.forwardRef(
6086
6107
  const Item = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6087
6108
  CommandItem,
6088
6109
  {
6089
- value: inputValue,
6110
+ value: `${CREATE_VALUE}${inputValue}`,
6111
+ keywords: [inputValue],
6090
6112
  className: "cursor-pointer",
6091
6113
  onMouseDown: (e) => {
6092
6114
  e.preventDefault();
6093
6115
  e.stopPropagation();
6094
6116
  },
6095
- onSelect: (value2) => {
6117
+ onSelect: () => {
6096
6118
  if (selected.length >= maxSelected) {
6097
6119
  _optionalChain([onMaxSelected, 'optionalCall', _91 => _91(selected.length)]);
6098
6120
  return;
6099
6121
  }
6122
+ const value2 = inputValue.trim();
6100
6123
  setInputValue("");
6101
6124
  const newOptions = [...selected, { value: value2, label: value2 }];
6102
6125
  setSelected(newOptions);
@@ -6122,15 +6145,16 @@ var MultipleSelector = React13.forwardRef(
6122
6145
  }, [creatable, emptyIndicator, onSearch, options]);
6123
6146
  const selectables = React13.useMemo(() => removePickedOption(options, selected), [options, selected]);
6124
6147
  const commandFilter = React13.useCallback(() => {
6125
- if (_optionalChain([commandProps, 'optionalAccess', _93 => _93.filter])) {
6126
- return commandProps.filter;
6148
+ const customFilter = _optionalChain([commandProps, 'optionalAccess', _93 => _93.filter]);
6149
+ if (customFilter) {
6150
+ return (value2, search, keywords) => customFilter(rowText(value2, keywords), search, []);
6127
6151
  }
6128
6152
  if (creatable) {
6129
- return (value2, search) => {
6130
- return value2.toLowerCase().includes(search.toLowerCase()) ? 1 : -1;
6153
+ return (value2, search, keywords) => {
6154
+ return rowText(value2, keywords).toLowerCase().includes(search.toLowerCase()) ? 1 : -1;
6131
6155
  };
6132
6156
  }
6133
- return void 0;
6157
+ return commandFilterByKeywords;
6134
6158
  }, [creatable, _optionalChain([commandProps, 'optionalAccess', _94 => _94.filter])]);
6135
6159
  const displayedBadges = maxDisplayCount ? selected.slice(0, maxDisplayCount) : selected;
6136
6160
  const hiddenCount = maxDisplayCount ? Math.max(0, selected.length - maxDisplayCount) : 0;
@@ -6285,7 +6309,8 @@ var MultipleSelector = React13.forwardRef(
6285
6309
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6286
6310
  CommandItem,
6287
6311
  {
6288
- value: option.label,
6312
+ value: option.value,
6313
+ keywords: [option.label],
6289
6314
  disabled: option.disable,
6290
6315
  onMouseDown: (e) => {
6291
6316
  e.preventDefault();
@@ -6350,7 +6375,8 @@ var MultipleSelector = React13.forwardRef(
6350
6375
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6351
6376
  CommandItem,
6352
6377
  {
6353
- value: option.label,
6378
+ value: option.value,
6379
+ keywords: [option.label],
6354
6380
  disabled: option.disable,
6355
6381
  onMouseDown: (e) => {
6356
6382
  e.preventDefault();
@@ -10561,7 +10587,7 @@ FileInput.displayName = "FileInput";
10561
10587
  var _dynamic = require('next/dynamic'); var _dynamic2 = _interopRequireDefault(_dynamic);
10562
10588
 
10563
10589
 
10564
- var BlockNoteEditor = _dynamic2.default.call(void 0, () => Promise.resolve().then(() => _interopRequireWildcard(require("./BlockNoteEditor-J7EF7BRX.js"))), {
10590
+ var BlockNoteEditor = _dynamic2.default.call(void 0, () => Promise.resolve().then(() => _interopRequireWildcard(require("./BlockNoteEditor-6CBMNJPU.js"))), {
10565
10591
  ssr: false
10566
10592
  });
10567
10593
  var BlockNoteEditorContainer = React2.default.memo(/* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, function EditorContainer(props) {
@@ -11997,6 +12023,7 @@ var UserSearchPopover = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, ({
11997
12023
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CommandList, { children: users.length > 0 ? users.map((user) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
11998
12024
  CommandItem,
11999
12025
  {
12026
+ value: user.id,
12000
12027
  className: "cursor-pointer hover:bg-muted data-selected:hover:bg-muted bg-transparent data-selected:bg-transparent",
12001
12028
  onSelect: () => handleSelectUser(user.id),
12002
12029
  children: [
@@ -12101,6 +12128,7 @@ function UserSelector({ id, form, label, placeholder, onChange, isRequired = fal
12101
12128
  CommandItem,
12102
12129
  {
12103
12130
  className: "cursor-pointer hover:bg-muted data-selected:hover:bg-muted bg-transparent data-selected:bg-transparent",
12131
+ value: user.id,
12104
12132
  onSelect: () => setUser(user),
12105
12133
  children: [
12106
12134
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, UserAvatar, { user, className: `me-2 h-4 w-4` }),
@@ -12533,6 +12561,7 @@ function UserListInAdd({ data, existingUsers, setSelectedUser, setLevelOpen }) {
12533
12561
  CommandItem,
12534
12562
  {
12535
12563
  className: "cursor-pointer hover:bg-muted data-selected:hover:bg-muted bg-transparent data-selected:bg-transparent",
12564
+ value: user.id,
12536
12565
  onClick: (_e) => {
12537
12566
  setSelectedUser(user);
12538
12567
  _optionalChain([setLevelOpen, 'optionalCall', _337 => _337(true)]);
@@ -12663,7 +12692,17 @@ function CompanyContent({ company, actions }) {
12663
12692
  actions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-x-2", children: actions })
12664
12693
  ] }),
12665
12694
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-x-6", children: [
12666
- company.logo && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _image2.default, { src: company.logo, alt: company.name, width: 150, height: 150, className: "rounded-md" }),
12695
+ company.logo && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
12696
+ _image2.default,
12697
+ {
12698
+ src: company.logo,
12699
+ alt: company.name,
12700
+ width: 150,
12701
+ height: 150,
12702
+ className: "rounded-md",
12703
+ unoptimized: _chunk5PNDDYGLjs.isRemoteImageSrc.call(void 0, company.logo)
12704
+ }
12705
+ ),
12667
12706
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-y-2", children: [
12668
12707
  company.legal_address && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-muted-foreground flex items-center gap-x-2 text-sm", children: [
12669
12708
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.MapPinIcon, { className: "h-4 w-4 shrink-0" }),
@@ -13047,7 +13086,8 @@ function CompanyEditorInternal({
13047
13086
  src: file ? URL.createObjectURL(file) : _optionalChain([company, 'optionalAccess', _357 => _357.logo]) || "",
13048
13087
  alt: "Company Logo",
13049
13088
  width: 200,
13050
- height: 200
13089
+ height: 200,
13090
+ unoptimized: _chunk5PNDDYGLjs.isRemoteImageSrc.call(void 0, file ? void 0 : _optionalChain([company, 'optionalAccess', _358 => _358.logo]))
13051
13091
  }
13052
13092
  ) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
13053
13093
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.UploadIcon, { className: "my-4 h-8 w-8" }),
@@ -13078,7 +13118,7 @@ function CompanyEditorInternal({
13078
13118
  }
13079
13119
  ),
13080
13120
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SectionHeader, { className: "mt-2", children: t(`company.sections.fiscal_data`) }),
13081
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ItalianFiscalData_default, { ref: fiscalRef, initialData: parseFiscalData(_optionalChain([company, 'optionalAccess', _358 => _358.fiscal_data])) })
13121
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ItalianFiscalData_default, { ref: fiscalRef, initialData: parseFiscalData(_optionalChain([company, 'optionalAccess', _359 => _359.fiscal_data])) })
13082
13122
  ] }),
13083
13123
  canAccessFeatures && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-96 flex-col justify-start gap-y-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScrollArea, { className: "h-max", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, FormFeatures, { form, name: t(`company.features_and_modules`), features }) }) })
13084
13124
  ] })
@@ -13444,7 +13484,7 @@ function NotificationToast(notification, t, generateUrl, reouter) {
13444
13484
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col", children: [
13445
13485
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-sm", children: t.rich(`notification.${notification.notificationType}.description`, {
13446
13486
  strong: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (chunks) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "strong", { children: chunks }), "strong"),
13447
- actor: _nullishCoalesce(_optionalChain([data, 'access', _359 => _359.actor, 'optionalAccess', _360 => _360.name]), () => ( "")),
13487
+ actor: _nullishCoalesce(_optionalChain([data, 'access', _360 => _360.actor, 'optionalAccess', _361 => _361.name]), () => ( "")),
13448
13488
  title: data.title,
13449
13489
  message: _nullishCoalesce(notification.message, () => ( ""))
13450
13490
  }) }),
@@ -13481,7 +13521,7 @@ function NotificationMenuItem({ notification, closePopover }) {
13481
13521
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
13482
13522
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-foreground text-sm", children: t.rich(`notification.${notification.notificationType}.description`, {
13483
13523
  strong: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (chunks) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "strong", { className: "font-medium", children: chunks }), "strong"),
13484
- actor: _nullishCoalesce(_optionalChain([data, 'access', _361 => _361.actor, 'optionalAccess', _362 => _362.name]), () => ( "")),
13524
+ actor: _nullishCoalesce(_optionalChain([data, 'access', _362 => _362.actor, 'optionalAccess', _363 => _363.name]), () => ( "")),
13485
13525
  title: data.title,
13486
13526
  message: _nullishCoalesce(notification.message, () => ( ""))
13487
13527
  }) }),
@@ -13549,7 +13589,7 @@ var NotificationContextProvider = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(v
13549
13589
  _react.useEffect.call(void 0, () => {
13550
13590
  if (hasInitiallyLoaded || !currentUser) return;
13551
13591
  if (_chunkG4JR3SFVjs.isRolesConfigured.call(void 0, )) {
13552
- const isAdmin = _optionalChain([currentUser, 'access', _363 => _363.roles, 'optionalAccess', _364 => _364.some, 'call', _365 => _365((role) => role.id === _chunkG4JR3SFVjs.getRoleId.call(void 0, ).Administrator)]);
13592
+ const isAdmin = _optionalChain([currentUser, 'access', _364 => _364.roles, 'optionalAccess', _365 => _365.some, 'call', _366 => _366((role) => role.id === _chunkG4JR3SFVjs.getRoleId.call(void 0, ).Administrator)]);
13553
13593
  if (isAdmin) {
13554
13594
  setHasInitiallyLoaded(true);
13555
13595
  return;
@@ -13735,7 +13775,7 @@ function OnboardingProvider({
13735
13775
  const id = activeTourIdRef.current;
13736
13776
  cleanupRoots();
13737
13777
  resetState();
13738
- if (id) _optionalChain([onTourEnd, 'optionalCall', _366 => _366(id, reason)]);
13778
+ if (id) _optionalChain([onTourEnd, 'optionalCall', _367 => _367(id, reason)]);
13739
13779
  },
13740
13780
  [cleanupRoots, resetState, onTourEnd]
13741
13781
  );
@@ -13748,14 +13788,14 @@ function OnboardingProvider({
13748
13788
  cleanupRoots();
13749
13789
  resetState();
13750
13790
  }, [cleanupRoots, resetState, teardown]);
13751
- const nextStep = _react.useCallback.call(void 0, () => _optionalChain([driverRef, 'access', _367 => _367.current, 'optionalAccess', _368 => _368.moveNext, 'call', _369 => _369()]), []);
13752
- const previousStep = _react.useCallback.call(void 0, () => _optionalChain([driverRef, 'access', _370 => _370.current, 'optionalAccess', _371 => _371.movePrevious, 'call', _372 => _372()]), []);
13753
- const goToStep = _react.useCallback.call(void 0, (index) => _optionalChain([driverRef, 'access', _373 => _373.current, 'optionalAccess', _374 => _374.moveTo, 'call', _375 => _375(index)]), []);
13791
+ const nextStep = _react.useCallback.call(void 0, () => _optionalChain([driverRef, 'access', _368 => _368.current, 'optionalAccess', _369 => _369.moveNext, 'call', _370 => _370()]), []);
13792
+ const previousStep = _react.useCallback.call(void 0, () => _optionalChain([driverRef, 'access', _371 => _371.current, 'optionalAccess', _372 => _372.movePrevious, 'call', _373 => _373()]), []);
13793
+ const goToStep = _react.useCallback.call(void 0, (index) => _optionalChain([driverRef, 'access', _374 => _374.current, 'optionalAccess', _375 => _375.moveTo, 'call', _376 => _376(index)]), []);
13754
13794
  const startTour = _react.useCallback.call(void 0,
13755
13795
  (tourId, steps) => {
13756
13796
  if (typeof window === "undefined") return;
13757
13797
  if (driverRef.current) closeTour();
13758
- const tourSteps = _nullishCoalesce(steps, () => ( _optionalChain([tours, 'access', _376 => _376.find, 'call', _377 => _377((t) => t.id === tourId), 'optionalAccess', _378 => _378.steps])));
13798
+ const tourSteps = _nullishCoalesce(steps, () => ( _optionalChain([tours, 'access', _377 => _377.find, 'call', _378 => _378((t) => t.id === tourId), 'optionalAccess', _379 => _379.steps])));
13759
13799
  if (!tourSteps || tourSteps.length === 0) {
13760
13800
  console.warn(`No steps found for tour: ${tourId}`);
13761
13801
  return;
@@ -13766,13 +13806,13 @@ function OnboardingProvider({
13766
13806
  endReasonRef.current = "dismissed";
13767
13807
  const move = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (direction, from) => {
13768
13808
  const target = tourSteps[direction === "next" ? from + 1 : from - 1];
13769
- const go = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, () => direction === "next" ? _optionalChain([driverRef, 'access', _379 => _379.current, 'optionalAccess', _380 => _380.moveNext, 'call', _381 => _381()]) : _optionalChain([driverRef, 'access', _382 => _382.current, 'optionalAccess', _383 => _383.movePrevious, 'call', _384 => _384()]), "go");
13770
- if (_optionalChain([target, 'optionalAccess', _385 => _385.showDelay])) setTimeout(go, target.showDelay);
13809
+ const go = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, () => direction === "next" ? _optionalChain([driverRef, 'access', _380 => _380.current, 'optionalAccess', _381 => _381.moveNext, 'call', _382 => _382()]) : _optionalChain([driverRef, 'access', _383 => _383.current, 'optionalAccess', _384 => _384.movePrevious, 'call', _385 => _385()]), "go");
13810
+ if (_optionalChain([target, 'optionalAccess', _386 => _386.showDelay])) setTimeout(go, target.showDelay);
13771
13811
  else go();
13772
13812
  }, "move");
13773
13813
  const end = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (reason) => {
13774
13814
  endReasonRef.current = reason;
13775
- _optionalChain([driverRef, 'access', _386 => _386.current, 'optionalAccess', _387 => _387.destroy, 'call', _388 => _388()]);
13815
+ _optionalChain([driverRef, 'access', _387 => _387.current, 'optionalAccess', _388 => _388.destroy, 'call', _389 => _389()]);
13776
13816
  teardown(reason);
13777
13817
  }, "end");
13778
13818
  const driveSteps = tourSteps.map((stepConfig, index) => {
@@ -13814,10 +13854,10 @@ function OnboardingProvider({
13814
13854
  onHighlightStarted: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, () => {
13815
13855
  setIsTourActive(true);
13816
13856
  setCurrentStepIndex(index);
13817
- _optionalChain([stepConfig, 'access', _389 => _389.onShow, 'optionalCall', _390 => _390()]);
13857
+ _optionalChain([stepConfig, 'access', _390 => _390.onShow, 'optionalCall', _391 => _391()]);
13818
13858
  }, "onHighlightStarted"),
13819
13859
  onDeselected: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, () => {
13820
- _optionalChain([stepConfig, 'access', _391 => _391.onHide, 'optionalCall', _392 => _392()]);
13860
+ _optionalChain([stepConfig, 'access', _392 => _392.onHide, 'optionalCall', _393 => _393()]);
13821
13861
  const root = rootsRef.current.get(index);
13822
13862
  if (root) {
13823
13863
  rootsRef.current.delete(index);
@@ -13845,7 +13885,7 @@ function OnboardingProvider({
13845
13885
  );
13846
13886
  _react.useEffect.call(void 0, () => {
13847
13887
  return () => {
13848
- _optionalChain([driverRef, 'access', _393 => _393.current, 'optionalAccess', _394 => _394.destroy, 'call', _395 => _395()]);
13888
+ _optionalChain([driverRef, 'access', _394 => _394.current, 'optionalAccess', _395 => _395.destroy, 'call', _396 => _396()]);
13849
13889
  cleanupRoots();
13850
13890
  };
13851
13891
  }, [cleanupRoots]);
@@ -13978,7 +14018,7 @@ function HowToMultiSelector({
13978
14018
  retriever: (params) => _chunk5PNDDYGLjs.HowToService.findMany(params),
13979
14019
  module: _chunk5PNDDYGLjs.Modules.HowTo,
13980
14020
  getLabel: (howTo) => howTo.name,
13981
- excludeId: _optionalChain([currentHowTo, 'optionalAccess', _396 => _396.id]),
14021
+ excludeId: _optionalChain([currentHowTo, 'optionalAccess', _397 => _397.id]),
13982
14022
  onChange
13983
14023
  }
13984
14024
  );
@@ -14086,17 +14126,17 @@ function HowToEditorInternal({
14086
14126
  );
14087
14127
  const getDefaultValues = _react.useCallback.call(void 0,
14088
14128
  () => ({
14089
- id: _optionalChain([howTo, 'optionalAccess', _397 => _397.id]) || _uuid.v4.call(void 0, ),
14090
- name: _optionalChain([howTo, 'optionalAccess', _398 => _398.name]) || "",
14091
- description: _optionalChain([howTo, 'optionalAccess', _399 => _399.description]) || [],
14092
- pages: _chunk5PNDDYGLjs.HowTo.parsePagesFromString(_optionalChain([howTo, 'optionalAccess', _400 => _400.pages])),
14093
- howToType: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _401 => _401.howToType]), () => ( "how-to")),
14094
- slug: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _402 => _402.slug]), () => ( "")),
14095
- order: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _403 => _403.order]), () => ( 0)),
14096
- summary: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _404 => _404.summary]), () => ( "")),
14097
- tags: (_nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _405 => _405.tags]), () => ( []))).join(", "),
14098
- contextualKeys: (_nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _406 => _406.contextualKeys]), () => ( []))).join(", "),
14099
- draft: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _407 => _407.draft]), () => ( false)),
14129
+ id: _optionalChain([howTo, 'optionalAccess', _398 => _398.id]) || _uuid.v4.call(void 0, ),
14130
+ name: _optionalChain([howTo, 'optionalAccess', _399 => _399.name]) || "",
14131
+ description: _optionalChain([howTo, 'optionalAccess', _400 => _400.description]) || [],
14132
+ pages: _chunk5PNDDYGLjs.HowTo.parsePagesFromString(_optionalChain([howTo, 'optionalAccess', _401 => _401.pages])),
14133
+ howToType: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _402 => _402.howToType]), () => ( "how-to")),
14134
+ slug: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _403 => _403.slug]), () => ( "")),
14135
+ order: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _404 => _404.order]), () => ( 0)),
14136
+ summary: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _405 => _405.summary]), () => ( "")),
14137
+ tags: (_nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _406 => _406.tags]), () => ( []))).join(", "),
14138
+ contextualKeys: (_nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _407 => _407.contextualKeys]), () => ( []))).join(", "),
14139
+ draft: _nullishCoalesce(_optionalChain([howTo, 'optionalAccess', _408 => _408.draft]), () => ( false)),
14100
14140
  relatedArticles: []
14101
14141
  }),
14102
14142
  [howTo]
@@ -14107,7 +14147,7 @@ function HowToEditorInternal({
14107
14147
  });
14108
14148
  const initialRelatedIds = _react.useRef.call(void 0, []);
14109
14149
  _react.useEffect.call(void 0, () => {
14110
- if (!_optionalChain([howTo, 'optionalAccess', _408 => _408.howToType]) || !_optionalChain([howTo, 'optionalAccess', _409 => _409.slug])) return;
14150
+ if (!_optionalChain([howTo, 'optionalAccess', _409 => _409.howToType]) || !_optionalChain([howTo, 'optionalAccess', _410 => _410.slug])) return;
14111
14151
  let active = true;
14112
14152
  _chunk5PNDDYGLjs.HowToService.findRelated({ howToType: howTo.howToType, slug: howTo.slug }).then((list) => {
14113
14153
  if (!active) return;
@@ -14146,7 +14186,7 @@ function HowToEditorInternal({
14146
14186
  {
14147
14187
  form,
14148
14188
  entityType: t(`entities.howtos`, { count: 1 }),
14149
- entityName: _optionalChain([howTo, 'optionalAccess', _410 => _410.name]),
14189
+ entityName: _optionalChain([howTo, 'optionalAccess', _411 => _411.name]),
14150
14190
  isEdit: !!howTo,
14151
14191
  module: _chunk5PNDDYGLjs.Modules.HowTo,
14152
14192
  propagateChanges,
@@ -14527,7 +14567,7 @@ function withPatchedTitle(source, title) {
14527
14567
  return _chunk5PNDDYGLjs.rehydrate.call(void 0, _chunk5PNDDYGLjs.Modules.Assistant, {
14528
14568
  jsonApi: {
14529
14569
  ...dehydrated.jsonApi,
14530
- attributes: { ..._nullishCoalesce(_optionalChain([dehydrated, 'access', _411 => _411.jsonApi, 'optionalAccess', _412 => _412.attributes]), () => ( {})), title }
14570
+ attributes: { ..._nullishCoalesce(_optionalChain([dehydrated, 'access', _412 => _412.jsonApi, 'optionalAccess', _413 => _413.attributes]), () => ( {})), title }
14531
14571
  },
14532
14572
  included: dehydrated.included
14533
14573
  });
@@ -14562,7 +14602,7 @@ function AssistantProvider({
14562
14602
  const [status, setStatus] = _react.useState.call(void 0, void 0);
14563
14603
  const [failedMessageIds, setFailedMessageIds] = _react.useState.call(void 0, () => /* @__PURE__ */ new Set());
14564
14604
  const [operatorMode, setOperatorMode] = _react.useState.call(void 0,
14565
- () => _optionalChain([dehydratedAssistant, 'optionalAccess', _413 => _413.jsonApi, 'optionalAccess', _414 => _414.attributes, 'optionalAccess', _415 => _415.engine]) === "operator"
14605
+ () => _optionalChain([dehydratedAssistant, 'optionalAccess', _414 => _414.jsonApi, 'optionalAccess', _415 => _415.attributes, 'optionalAccess', _416 => _416.engine]) === "operator"
14566
14606
  );
14567
14607
  const [pendingScope, setPendingScope] = _react.useState.call(void 0, scope);
14568
14608
  const { socket } = useSocketContext();
@@ -14572,7 +14612,7 @@ function AssistantProvider({
14572
14612
  if (!trimmed) return;
14573
14613
  const optimistic = _chunk5PNDDYGLjs.AssistantMessage.buildOptimistic({
14574
14614
  content: trimmed,
14575
- assistantId: _optionalChain([assistant, 'optionalAccess', _416 => _416.id]),
14615
+ assistantId: _optionalChain([assistant, 'optionalAccess', _417 => _417.id]),
14576
14616
  position: nextPosition(messages)
14577
14617
  });
14578
14618
  setMessages((prev) => [...prev, optimistic]);
@@ -14582,22 +14622,22 @@ function AssistantProvider({
14582
14622
  if (assistant && payload.assistantId && payload.assistantId !== assistant.id) return;
14583
14623
  if (typeof payload.status === "string") setStatus(payload.status);
14584
14624
  }, "handler");
14585
- _optionalChain([socket, 'optionalAccess', _417 => _417.on, 'call', _418 => _418("assistant:status", handler)]);
14625
+ _optionalChain([socket, 'optionalAccess', _418 => _418.on, 'call', _419 => _419("assistant:status", handler)]);
14586
14626
  let createdHandled = false;
14587
14627
  const createdHandler = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (payload) => {
14588
14628
  if (createdHandled) return;
14589
- const data = _optionalChain([payload, 'optionalAccess', _419 => _419.assistant, 'optionalAccess', _420 => _420.data]);
14629
+ const data = _optionalChain([payload, 'optionalAccess', _420 => _420.assistant, 'optionalAccess', _421 => _421.data]);
14590
14630
  if (!data || typeof data !== "object" || typeof data.id !== "string" || !data.id) return;
14591
14631
  let thread;
14592
14632
  try {
14593
14633
  thread = _chunk5PNDDYGLjs.rehydrate.call(void 0, _chunk5PNDDYGLjs.Modules.Assistant, {
14594
14634
  jsonApi: data,
14595
- included: _nullishCoalesce(_optionalChain([payload, 'access', _421 => _421.assistant, 'optionalAccess', _422 => _422.included]), () => ( []))
14635
+ included: _nullishCoalesce(_optionalChain([payload, 'access', _422 => _422.assistant, 'optionalAccess', _423 => _423.included]), () => ( []))
14596
14636
  });
14597
14637
  } catch (e8) {
14598
14638
  return;
14599
14639
  }
14600
- if (!_optionalChain([thread, 'optionalAccess', _423 => _423.id])) return;
14640
+ if (!_optionalChain([thread, 'optionalAccess', _424 => _424.id])) return;
14601
14641
  createdHandled = true;
14602
14642
  setAssistant(thread);
14603
14643
  setThreads((prev) => [thread, ...prev.filter((row) => row.id !== thread.id)]);
@@ -14605,16 +14645,16 @@ function AssistantProvider({
14605
14645
  window.history.replaceState(null, "", resolveThreadUrl(thread.id));
14606
14646
  }
14607
14647
  }, "createdHandler");
14608
- if (!assistant) _optionalChain([socket, 'optionalAccess', _424 => _424.on, 'call', _425 => _425("assistant:created", createdHandler)]);
14648
+ if (!assistant) _optionalChain([socket, 'optionalAccess', _425 => _425.on, 'call', _426 => _426("assistant:created", createdHandler)]);
14609
14649
  try {
14610
14650
  if (!assistant) {
14611
14651
  const input = {
14612
14652
  firstMessage: trimmed,
14613
- howToMode: _optionalChain([opts, 'optionalAccess', _426 => _426.howToMode]),
14614
- limitToHowToId: _optionalChain([opts, 'optionalAccess', _427 => _427.limitToHowToId]),
14615
- handbookMode: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _428 => _428.handbookMode]), () => ( _optionalChain([retrievalMode, 'optionalAccess', _429 => _429.handbookMode]))),
14616
- limitToHandbookPageId: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _430 => _430.limitToHandbookPageId]), () => ( _optionalChain([retrievalMode, 'optionalAccess', _431 => _431.limitToHandbookPageId]))),
14617
- contentBlocks: _optionalChain([opts, 'optionalAccess', _432 => _432.contentBlocks]),
14653
+ howToMode: _optionalChain([opts, 'optionalAccess', _427 => _427.howToMode]),
14654
+ limitToHowToId: _optionalChain([opts, 'optionalAccess', _428 => _428.limitToHowToId]),
14655
+ handbookMode: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _429 => _429.handbookMode]), () => ( _optionalChain([retrievalMode, 'optionalAccess', _430 => _430.handbookMode]))),
14656
+ limitToHandbookPageId: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _431 => _431.limitToHandbookPageId]), () => ( _optionalChain([retrievalMode, 'optionalAccess', _432 => _432.limitToHandbookPageId]))),
14657
+ contentBlocks: _optionalChain([opts, 'optionalAccess', _433 => _433.contentBlocks]),
14618
14658
  boundContent: pendingScope
14619
14659
  };
14620
14660
  const created = operatorMode ? await _chunk5PNDDYGLjs.AssistantService.createOperator(input) : await _chunk5PNDDYGLjs.AssistantService.create(input);
@@ -14631,15 +14671,15 @@ function AssistantProvider({
14631
14671
  const result = operatorMode ? await _chunk5PNDDYGLjs.AssistantService.appendMessageOperator({
14632
14672
  assistantId: assistant.id,
14633
14673
  content: trimmed,
14634
- contentBlocks: _optionalChain([opts, 'optionalAccess', _433 => _433.contentBlocks])
14674
+ contentBlocks: _optionalChain([opts, 'optionalAccess', _434 => _434.contentBlocks])
14635
14675
  }) : await _chunk5PNDDYGLjs.AssistantService.appendMessage({
14636
14676
  assistantId: assistant.id,
14637
14677
  content: trimmed,
14638
- howToMode: _optionalChain([opts, 'optionalAccess', _434 => _434.howToMode]),
14639
- limitToHowToId: _optionalChain([opts, 'optionalAccess', _435 => _435.limitToHowToId]),
14640
- handbookMode: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _436 => _436.handbookMode]), () => ( _optionalChain([retrievalMode, 'optionalAccess', _437 => _437.handbookMode]))),
14641
- limitToHandbookPageId: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _438 => _438.limitToHandbookPageId]), () => ( _optionalChain([retrievalMode, 'optionalAccess', _439 => _439.limitToHandbookPageId]))),
14642
- contentBlocks: _optionalChain([opts, 'optionalAccess', _440 => _440.contentBlocks])
14678
+ howToMode: _optionalChain([opts, 'optionalAccess', _435 => _435.howToMode]),
14679
+ limitToHowToId: _optionalChain([opts, 'optionalAccess', _436 => _436.limitToHowToId]),
14680
+ handbookMode: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _437 => _437.handbookMode]), () => ( _optionalChain([retrievalMode, 'optionalAccess', _438 => _438.handbookMode]))),
14681
+ limitToHandbookPageId: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _439 => _439.limitToHandbookPageId]), () => ( _optionalChain([retrievalMode, 'optionalAccess', _440 => _440.limitToHandbookPageId]))),
14682
+ contentBlocks: _optionalChain([opts, 'optionalAccess', _441 => _441.contentBlocks])
14643
14683
  });
14644
14684
  setMessages((prev) => [...stripOptimistic(prev), ...result]);
14645
14685
  }
@@ -14650,8 +14690,8 @@ function AssistantProvider({
14650
14690
  return next;
14651
14691
  });
14652
14692
  } finally {
14653
- _optionalChain([socket, 'optionalAccess', _441 => _441.off, 'call', _442 => _442("assistant:status", handler)]);
14654
- if (!assistant) _optionalChain([socket, 'optionalAccess', _443 => _443.off, 'call', _444 => _444("assistant:created", createdHandler)]);
14693
+ _optionalChain([socket, 'optionalAccess', _442 => _442.off, 'call', _443 => _443("assistant:status", handler)]);
14694
+ if (!assistant) _optionalChain([socket, 'optionalAccess', _444 => _444.off, 'call', _445 => _445("assistant:created", createdHandler)]);
14655
14695
  setSending(false);
14656
14696
  setStatus(void 0);
14657
14697
  }
@@ -14717,7 +14757,7 @@ function AssistantProvider({
14717
14757
  await _chunk5PNDDYGLjs.AssistantService.delete({ id });
14718
14758
  setThreads((prev) => prev.filter((t2) => t2.id !== id));
14719
14759
  setAssistant((prev) => {
14720
- if (_optionalChain([prev, 'optionalAccess', _445 => _445.id]) === id) {
14760
+ if (_optionalChain([prev, 'optionalAccess', _446 => _446.id]) === id) {
14721
14761
  setMessages([]);
14722
14762
  return void 0;
14723
14763
  }
@@ -14729,7 +14769,7 @@ function AssistantProvider({
14729
14769
  (async () => {
14730
14770
  setThreadsLoading(true);
14731
14771
  try {
14732
- const loaded = await _chunk5PNDDYGLjs.AssistantService.findMany({ boundType: _optionalChain([scope, 'optionalAccess', _446 => _446.type]), boundId: _optionalChain([scope, 'optionalAccess', _447 => _447.id]) });
14772
+ const loaded = await _chunk5PNDDYGLjs.AssistantService.findMany({ boundType: _optionalChain([scope, 'optionalAccess', _447 => _447.type]), boundId: _optionalChain([scope, 'optionalAccess', _448 => _448.id]) });
14733
14773
  if (!cancelled) setThreads(loaded);
14734
14774
  } finally {
14735
14775
  if (!cancelled) setThreadsLoading(false);
@@ -14738,7 +14778,7 @@ function AssistantProvider({
14738
14778
  return () => {
14739
14779
  cancelled = true;
14740
14780
  };
14741
- }, [_optionalChain([scope, 'optionalAccess', _448 => _448.type]), _optionalChain([scope, 'optionalAccess', _449 => _449.id])]);
14781
+ }, [_optionalChain([scope, 'optionalAccess', _449 => _449.type]), _optionalChain([scope, 'optionalAccess', _450 => _450.id])]);
14742
14782
  const value = _react.useMemo.call(void 0,
14743
14783
  () => ({
14744
14784
  assistant,
@@ -14790,7 +14830,7 @@ function AssistantProvider({
14790
14830
  const response = {
14791
14831
  type: _nullishCoalesce(titleOverride, () => ( t("entities.assistants", { count: assistant ? 1 : 2 })))
14792
14832
  };
14793
- if (_optionalChain([assistant, 'optionalAccess', _450 => _450.title])) {
14833
+ if (_optionalChain([assistant, 'optionalAccess', _451 => _451.title])) {
14794
14834
  response.element = assistant.title.length > 25 ? `${assistant.title.substring(0, 25)}...` : assistant.title;
14795
14835
  }
14796
14836
  response.functions = [
@@ -14952,7 +14992,7 @@ function readEntityTitle() {
14952
14992
  if (typeof document === "undefined") return null;
14953
14993
  const afterEntityType = document.title.split("]")[1];
14954
14994
  if (!afterEntityType) return null;
14955
- return _optionalChain([afterEntityType, 'access', _451 => _451.split, 'call', _452 => _452("|"), 'access', _453 => _453[0], 'optionalAccess', _454 => _454.trim, 'call', _455 => _455()]) || null;
14995
+ return _optionalChain([afterEntityType, 'access', _452 => _452.split, 'call', _453 => _453("|"), 'access', _454 => _454[0], 'optionalAccess', _455 => _455.trim, 'call', _456 => _456()]) || null;
14956
14996
  }
14957
14997
  _chunk7QVYU63Ejs.__name.call(void 0, readEntityTitle, "readEntityTitle");
14958
14998
  function usePageTracker() {
@@ -14981,7 +15021,7 @@ function usePageTracker() {
14981
15021
  const existing = prev.find((page) => page.url === baseUrl);
14982
15022
  const refreshed = {
14983
15023
  url: baseUrl,
14984
- title: _nullishCoalesce(_optionalChain([existing, 'optionalAccess', _456 => _456.title]), () => ( foundModule.name)),
15024
+ title: _nullishCoalesce(_optionalChain([existing, 'optionalAccess', _457 => _457.title]), () => ( foundModule.name)),
14985
15025
  moduleType: foundModule.name,
14986
15026
  timestamp: Date.now()
14987
15027
  };
@@ -15043,7 +15083,7 @@ function usePushNotifications() {
15043
15083
  const register = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, async () => {
15044
15084
  if ("serviceWorker" in navigator && "PushManager" in window) {
15045
15085
  try {
15046
- const sessionKey = `push_registered_${_optionalChain([currentUser, 'optionalAccess', _457 => _457.id])}`;
15086
+ const sessionKey = `push_registered_${_optionalChain([currentUser, 'optionalAccess', _458 => _458.id])}`;
15047
15087
  const lastRegisteredSubscription = sessionStorage.getItem(sessionKey);
15048
15088
  const swUrl = _chunkGHE4VT2Rjs.ENV.IS_PRODUCTION ? `${_chunk7ZRQOLSVjs.getAppUrl.call(void 0, )}/sw.js` : `${_chunk7ZRQOLSVjs.getAppUrl.call(void 0, )}/sw-dev.js`;
15049
15089
  const registration = await navigator.serviceWorker.register(swUrl);
@@ -15156,14 +15196,14 @@ function useSocket({ token }) {
15156
15196
  });
15157
15197
  }, "handleMessage");
15158
15198
  const handleNotification = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (data) => {
15159
- const resource = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _458 => _458.data]), () => ( _optionalChain([data, 'optionalAccess', _459 => _459.jsonApi])));
15160
- if (!_optionalChain([resource, 'optionalAccess', _460 => _460.type])) {
15199
+ const resource = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _459 => _459.data]), () => ( _optionalChain([data, 'optionalAccess', _460 => _460.jsonApi])));
15200
+ if (!_optionalChain([resource, 'optionalAccess', _461 => _461.type])) {
15161
15201
  console.warn("[useSocket] ignoring notification with unexpected payload shape", data);
15162
15202
  return;
15163
15203
  }
15164
15204
  const notification = _chunk5PNDDYGLjs.rehydrate.call(void 0, _chunk5PNDDYGLjs.Modules.Notification, {
15165
15205
  jsonApi: resource,
15166
- included: _optionalChain([data, 'optionalAccess', _461 => _461.included]) || []
15206
+ included: _optionalChain([data, 'optionalAccess', _462 => _462.included]) || []
15167
15207
  });
15168
15208
  if (notification) {
15169
15209
  setSocketNotifications((prev) => {
@@ -15286,11 +15326,11 @@ function BreadcrumbMobile({
15286
15326
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Breadcrumb, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, BreadcrumbList, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, BreadcrumbItem, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Link, { href: generateUrl({ page: `/` }), children: rootLabel }) }) }) });
15287
15327
  }
15288
15328
  if (allItems.length <= 1) {
15289
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-foreground block min-w-0 truncate px-1.5 text-xs/relaxed font-normal", children: _optionalChain([lastItem, 'optionalAccess', _462 => _462.name]) });
15329
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-foreground block min-w-0 truncate px-1.5 text-xs/relaxed font-normal", children: _optionalChain([lastItem, 'optionalAccess', _463 => _463.name]) });
15290
15330
  }
15291
15331
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, DropdownMenu, { open, onOpenChange: setOpen, children: [
15292
15332
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, DropdownMenuTrigger, { className: "text-foreground text-xs/relaxed font-normal hover:bg-accent flex min-h-9 min-w-0 items-center gap-1 rounded-md px-1.5 py-0.5 transition-colors outline-none", children: [
15293
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: _optionalChain([lastItem, 'optionalAccess', _463 => _463.name]) }),
15333
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: _optionalChain([lastItem, 'optionalAccess', _464 => _464.name]) }),
15294
15334
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronDownIcon, { className: "text-muted-foreground size-3.5 shrink-0" })
15295
15335
  ] }),
15296
15336
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DropdownMenuContent, { align: "start", children: allItems.map(
@@ -15308,8 +15348,8 @@ function BreadcrumbMobile({
15308
15348
  href: item.href,
15309
15349
  className: _chunk5PNDDYGLjs.cn.call(void 0, props.className, "text-foreground font-normal"),
15310
15350
  onClick: (event) => {
15311
- _optionalChain([props, 'access', _464 => _464.onClick, 'optionalCall', _465 => _465(event)]);
15312
- _optionalChain([item, 'access', _466 => _466.onClick, 'optionalCall', _467 => _467()]);
15351
+ _optionalChain([props, 'access', _465 => _465.onClick, 'optionalCall', _466 => _466(event)]);
15352
+ _optionalChain([item, 'access', _467 => _467.onClick, 'optionalCall', _468 => _468()]);
15313
15353
  },
15314
15354
  children: props.children
15315
15355
  }
@@ -15327,7 +15367,7 @@ function BreadcrumbNavigation({ items, rootLabel, showRoot = true }) {
15327
15367
  const generateUrl = usePageUrlGenerator();
15328
15368
  const t = _nextintl.useTranslations.call(void 0, );
15329
15369
  const isMobile = _chunk5PNDDYGLjs.useIsMobile.call(void 0, );
15330
- const root = _optionalChain([rootLabel, 'optionalAccess', _468 => _468.trim, 'call', _469 => _469()]) ? rootLabel : t(`common.home`);
15370
+ const root = _optionalChain([rootLabel, 'optionalAccess', _469 => _469.trim, 'call', _470 => _470()]) ? rootLabel : t(`common.home`);
15331
15371
  if (isMobile) {
15332
15372
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, BreadcrumbMobile, { items, generateUrl, rootLabel: root, showRoot });
15333
15373
  }
@@ -15721,12 +15761,12 @@ var _remarkgfm = require('remark-gfm'); var _remarkgfm2 = _interopRequireDefault
15721
15761
 
15722
15762
  function mermaidSourceOf(node) {
15723
15763
  const pre = node;
15724
- const code = _optionalChain([pre, 'optionalAccess', _470 => _470.children, 'optionalAccess', _471 => _471[0]]);
15725
- if (_optionalChain([code, 'optionalAccess', _472 => _472.tagName]) !== "code") return void 0;
15726
- const classNames = Array.isArray(_optionalChain([code, 'access', _473 => _473.properties, 'optionalAccess', _474 => _474.className])) ? code.properties.className : [];
15764
+ const code = _optionalChain([pre, 'optionalAccess', _471 => _471.children, 'optionalAccess', _472 => _472[0]]);
15765
+ if (_optionalChain([code, 'optionalAccess', _473 => _473.tagName]) !== "code") return void 0;
15766
+ const classNames = Array.isArray(_optionalChain([code, 'access', _474 => _474.properties, 'optionalAccess', _475 => _475.className])) ? code.properties.className : [];
15727
15767
  if (!classNames.includes("language-mermaid")) return void 0;
15728
- const text = _optionalChain([code, 'access', _475 => _475.children, 'optionalAccess', _476 => _476[0]]);
15729
- if (_optionalChain([text, 'optionalAccess', _477 => _477.type]) !== "text" || typeof text.value !== "string") return void 0;
15768
+ const text = _optionalChain([code, 'access', _476 => _476.children, 'optionalAccess', _477 => _477[0]]);
15769
+ if (_optionalChain([text, 'optionalAccess', _478 => _478.type]) !== "text" || typeof text.value !== "string") return void 0;
15730
15770
  return text.value;
15731
15771
  }
15732
15772
  _chunk7QVYU63Ejs.__name.call(void 0, mermaidSourceOf, "mermaidSourceOf");
@@ -15979,7 +16019,7 @@ var railTriggerClass = _chunk5PNDDYGLjs.cn.call(void 0,
15979
16019
  "data-active:text-primary dark:data-active:text-primary",
15980
16020
  "data-active:font-medium data-active:shadow-none"
15981
16021
  );
15982
- var tabValue = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (tab) => _nullishCoalesce(_nullishCoalesce(tab.sectionKey, () => ( _optionalChain([tab, 'access', _478 => _478.key, 'optionalAccess', _479 => _479.name]))), () => ( tab.label)), "tabValue");
16022
+ var tabValue = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (tab) => _nullishCoalesce(_nullishCoalesce(tab.sectionKey, () => ( _optionalChain([tab, 'access', _479 => _479.key, 'optionalAccess', _480 => _480.name]))), () => ( tab.label)), "tabValue");
15983
16023
  function RoundPageContainer({
15984
16024
  module,
15985
16025
  id,
@@ -16010,7 +16050,7 @@ function RoundPageContainer({
16010
16050
  const [mounted, setMounted] = _react.useState.call(void 0, false);
16011
16051
  _react.useEffect.call(void 0, () => {
16012
16052
  const match = document.cookie.split("; ").find((row) => row.startsWith(`${detailsCookieName}=`));
16013
- const stored = _optionalChain([match, 'optionalAccess', _480 => _480.split, 'call', _481 => _481("="), 'access', _482 => _482[1]]);
16053
+ const stored = _optionalChain([match, 'optionalAccess', _481 => _481.split, 'call', _482 => _482("="), 'access', _483 => _483[1]]);
16014
16054
  if (stored === "true") setShowDetailsState(true);
16015
16055
  else if (stored === "false") setShowDetailsState(false);
16016
16056
  }, []);
@@ -16025,7 +16065,7 @@ function RoundPageContainer({
16025
16065
  const clip = isFixed ? `overflow-hidden` : ``;
16026
16066
  const scrollY = isFixed ? `overflow-y-auto` : ``;
16027
16067
  const mobileBarClass = isFixed ? `` : `sticky bottom-0 z-30`;
16028
- const detailsCookieName = _optionalChain([module, 'optionalAccess', _483 => _483.name]) ? `${DETAILS_COOKIE_NAME}_${module.name}` : DETAILS_COOKIE_NAME;
16068
+ const detailsCookieName = _optionalChain([module, 'optionalAccess', _484 => _484.name]) ? `${DETAILS_COOKIE_NAME}_${module.name}` : DETAILS_COOKIE_NAME;
16029
16069
  const setShowDetails = _react.useCallback.call(void 0,
16030
16070
  (value) => {
16031
16071
  setShowDetailsState(value);
@@ -16058,13 +16098,13 @@ function RoundPageContainer({
16058
16098
  } else {
16059
16099
  rewriteUrl({ page: window.location.pathname, additionalParameters: { section: key }, mode: "push" });
16060
16100
  }
16061
- _optionalChain([onSectionChange, 'optionalCall', _484 => _484(key)]);
16101
+ _optionalChain([onSectionChange, 'optionalCall', _485 => _485(key)]);
16062
16102
  },
16063
16103
  [module, id, rewriteUrl, onSectionChange]
16064
16104
  );
16065
- const activeTabDefinition = _optionalChain([tabs, 'optionalAccess', _485 => _485.find, 'call', _486 => _486((t) => tabValue(t) === activeTab)]);
16066
- const activeFillHeight = _optionalChain([activeTabDefinition, 'optionalAccess', _487 => _487.fillHeight]) === true;
16067
- const activeConstrainWidth = _optionalChain([activeTabDefinition, 'optionalAccess', _488 => _488.constrainWidth]) === true;
16105
+ const activeTabDefinition = _optionalChain([tabs, 'optionalAccess', _486 => _486.find, 'call', _487 => _487((t) => tabValue(t) === activeTab)]);
16106
+ const activeFillHeight = _optionalChain([activeTabDefinition, 'optionalAccess', _488 => _488.fillHeight]) === true;
16107
+ const activeConstrainWidth = _optionalChain([activeTabDefinition, 'optionalAccess', _489 => _489.constrainWidth]) === true;
16068
16108
  const { ungrouped, groups } = _react.useMemo.call(void 0, () => partitionTabs(_nullishCoalesce(tabs, () => ( []))), [tabs]);
16069
16109
  const tabItems = _react.useMemo.call(void 0,
16070
16110
  () => Object.fromEntries((_nullishCoalesce(tabs, () => ( []))).map((tab) => [tabValue(tab), _nullishCoalesce(tab.contentLabel, () => ( tab.label))])),
@@ -16075,7 +16115,7 @@ function RoundPageContainer({
16075
16115
  const mobileFlow = isMobile && isFixed && (!activeFillHeight || activeDocumentTab) && !fullWidth;
16076
16116
  const innerClip = mobileFlow ? `` : clip;
16077
16117
  const innerScrollY = mobileFlow ? `` : scrollY;
16078
- const showMobileSectionPicker = (_nullishCoalesce(_optionalChain([tabs, 'optionalAccess', _489 => _489.length]), () => ( 0))) > 1;
16118
+ const showMobileSectionPicker = (_nullishCoalesce(_optionalChain([tabs, 'optionalAccess', _490 => _490.length]), () => ( 0))) > 1;
16079
16119
  if (!isReady) {
16080
16120
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
16081
16121
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -16475,14 +16515,14 @@ function BlockNoteEditorMentionHoverCard({
16475
16515
  const entityType = target.dataset.mentionType;
16476
16516
  const alias = target.dataset.mentionAlias;
16477
16517
  setHovered((prev) => {
16478
- if (_optionalChain([prev, 'optionalAccess', _490 => _490.id]) === id && _optionalChain([prev, 'optionalAccess', _491 => _491.element]) === target) return prev;
16518
+ if (_optionalChain([prev, 'optionalAccess', _491 => _491.id]) === id && _optionalChain([prev, 'optionalAccess', _492 => _492.element]) === target) return prev;
16479
16519
  return { id, entityType, alias, element: target };
16480
16520
  });
16481
16521
  }, "handleMouseOver");
16482
16522
  const handleMouseOut = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (e) => {
16483
16523
  const target = e.target.closest("[data-mention-id]");
16484
16524
  if (!target) return;
16485
- const related = _optionalChain([e, 'access', _492 => _492.relatedTarget, 'optionalAccess', _493 => _493.closest, 'call', _494 => _494("[data-mention-id]")]);
16525
+ const related = _optionalChain([e, 'access', _493 => _493.relatedTarget, 'optionalAccess', _494 => _494.closest, 'call', _495 => _495("[data-mention-id]")]);
16486
16526
  if (related) return;
16487
16527
  scheduleClose();
16488
16528
  }, "handleMouseOut");
@@ -16496,7 +16536,7 @@ function BlockNoteEditorMentionHoverCard({
16496
16536
  }, [containerRef, mentionResolveFn, cancelClose, scheduleClose]);
16497
16537
  if (!hovered || !mentionResolveFn) return null;
16498
16538
  const resolved = mentionResolveFn(hovered.id, hovered.entityType, hovered.alias);
16499
- if (!_optionalChain([resolved, 'optionalAccess', _495 => _495.HoverContent])) return null;
16539
+ if (!_optionalChain([resolved, 'optionalAccess', _496 => _496.HoverContent])) return null;
16500
16540
  const ContentComponent = resolved.HoverContent;
16501
16541
  const rect = hovered.element.getBoundingClientRect();
16502
16542
  return _reactdom.createPortal.call(void 0,
@@ -16540,28 +16580,28 @@ var parseMentionElement = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (
16540
16580
  }, "parseMentionElement");
16541
16581
  var createMentionInlineContentSpec = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (resolveFn, disableMention, nameResolver) => {
16542
16582
  const MentionExternalHTML = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (props) => {
16543
- const displayName = _nullishCoalesce(_optionalChain([nameResolver, 'optionalCall', _496 => _496(props.id, props.entityType, props.alias)]), () => ( props.alias));
16583
+ const displayName = _nullishCoalesce(_optionalChain([nameResolver, 'optionalCall', _497 => _497(props.id, props.entityType, props.alias)]), () => ( props.alias));
16544
16584
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { "data-mention-id": props.id, "data-mention-type": props.entityType, "data-mention-alias": props.alias, children: [
16545
16585
  "@",
16546
16586
  displayName
16547
16587
  ] });
16548
16588
  }, "MentionExternalHTML");
16549
16589
  const Mention = React2.default.memo(/* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, function Mention2(props) {
16550
- const displayName = _nullishCoalesce(_optionalChain([nameResolver, 'optionalCall', _497 => _497(props.id, props.entityType, props.alias)]), () => ( props.alias));
16590
+ const displayName = _nullishCoalesce(_optionalChain([nameResolver, 'optionalCall', _498 => _498(props.id, props.entityType, props.alias)]), () => ( props.alias));
16551
16591
  if (disableMention) {
16552
- const resolved2 = _optionalChain([resolveFn, 'optionalCall', _498 => _498(props.id, props.entityType, displayName)]);
16553
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _link2.default, { href: _nullishCoalesce(_optionalChain([resolved2, 'optionalAccess', _499 => _499.url]), () => ( "#")), className: "text-primary", children: [
16592
+ const resolved2 = _optionalChain([resolveFn, 'optionalCall', _499 => _499(props.id, props.entityType, displayName)]);
16593
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _link2.default, { href: _nullishCoalesce(_optionalChain([resolved2, 'optionalAccess', _500 => _500.url]), () => ( "#")), className: "text-primary", children: [
16554
16594
  "@",
16555
16595
  displayName
16556
16596
  ] });
16557
16597
  }
16558
- const resolved = _optionalChain([resolveFn, 'optionalCall', _500 => _500(props.id, props.entityType, displayName)]);
16559
- if (_optionalChain([resolved, 'optionalAccess', _501 => _501.Inline])) {
16598
+ const resolved = _optionalChain([resolveFn, 'optionalCall', _501 => _501(props.id, props.entityType, displayName)]);
16599
+ if (_optionalChain([resolved, 'optionalAccess', _502 => _502.Inline])) {
16560
16600
  const Custom = resolved.Inline;
16561
16601
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Custom, { ...props, alias: displayName });
16562
16602
  }
16563
- const href = _nullishCoalesce(_optionalChain([resolved, 'optionalAccess', _502 => _502.url]), () => ( "#"));
16564
- const handleClick = _optionalChain([resolved, 'optionalAccess', _503 => _503.onActivate]) ? (e) => resolved.onActivate(e, props) : void 0;
16603
+ const href = _nullishCoalesce(_optionalChain([resolved, 'optionalAccess', _503 => _503.url]), () => ( "#"));
16604
+ const handleClick = _optionalChain([resolved, 'optionalAccess', _504 => _504.onActivate]) ? (e) => resolved.onActivate(e, props) : void 0;
16565
16605
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
16566
16606
  _link2.default,
16567
16607
  {
@@ -16669,7 +16709,7 @@ function BlockNoteEditorMentionSuggestionMenu({
16669
16709
  if (!suggestionMenuComponent) return void 0;
16670
16710
  const Component2 = suggestionMenuComponent;
16671
16711
  const Wrapped = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (props) => {
16672
- const isSentinelOnly = props.items.length === 1 && _optionalChain([props, 'access', _504 => _504.items, 'access', _505 => _505[0], 'optionalAccess', _506 => _506.title]) === KEEP_OPEN_SENTINEL_TITLE;
16712
+ const isSentinelOnly = props.items.length === 1 && _optionalChain([props, 'access', _505 => _505.items, 'access', _506 => _506[0], 'optionalAccess', _507 => _507.title]) === KEEP_OPEN_SENTINEL_TITLE;
16673
16713
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16674
16714
  Component2,
16675
16715
  {
@@ -16678,7 +16718,7 @@ function BlockNoteEditorMentionSuggestionMenu({
16678
16718
  selectedIndex: isSentinelOnly ? void 0 : props.selectedIndex,
16679
16719
  onItemClick: (item) => {
16680
16720
  if (item.title === KEEP_OPEN_SENTINEL_TITLE) return;
16681
- _optionalChain([props, 'access', _507 => _507.onItemClick, 'optionalCall', _508 => _508(item)]);
16721
+ _optionalChain([props, 'access', _508 => _508.onItemClick, 'optionalCall', _509 => _509(item)]);
16682
16722
  }
16683
16723
  }
16684
16724
  );
@@ -16883,10 +16923,10 @@ var cellId = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (params) => {
16883
16923
  cell: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, ({ row }) => params.toggleId ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16884
16924
  Checkbox,
16885
16925
  {
16886
- checked: _optionalChain([params, 'access', _509 => _509.checkedIds, 'optionalAccess', _510 => _510.includes, 'call', _511 => _511(row.getValue(params.name))]) || false,
16926
+ checked: _optionalChain([params, 'access', _510 => _510.checkedIds, 'optionalAccess', _511 => _511.includes, 'call', _512 => _512(row.getValue(params.name))]) || false,
16887
16927
  onCheckedChange: (value) => {
16888
16928
  row.toggleSelected(!!value);
16889
- _optionalChain([params, 'access', _512 => _512.toggleId, 'optionalCall', _513 => _513(row.getValue(params.name))]);
16929
+ _optionalChain([params, 'access', _513 => _513.toggleId, 'optionalCall', _514 => _514(row.getValue(params.name))]);
16890
16930
  },
16891
16931
  "aria-label": "Select row"
16892
16932
  }
@@ -16945,7 +16985,7 @@ function useJsonApiGet(params) {
16945
16985
  const [response, setResponse] = _react.useState.call(void 0, null);
16946
16986
  const isMounted = _react.useRef.call(void 0, true);
16947
16987
  const fetchData = _react.useCallback.call(void 0, async () => {
16948
- if (_optionalChain([params, 'access', _514 => _514.options, 'optionalAccess', _515 => _515.enabled]) === false) return;
16988
+ if (_optionalChain([params, 'access', _515 => _515.options, 'optionalAccess', _516 => _516.enabled]) === false) return;
16949
16989
  setLoading(true);
16950
16990
  setError(null);
16951
16991
  try {
@@ -16972,9 +17012,9 @@ function useJsonApiGet(params) {
16972
17012
  setLoading(false);
16973
17013
  }
16974
17014
  }
16975
- }, [params.classKey, params.endpoint, params.companyId, _optionalChain([params, 'access', _516 => _516.options, 'optionalAccess', _517 => _517.enabled])]);
17015
+ }, [params.classKey, params.endpoint, params.companyId, _optionalChain([params, 'access', _517 => _517.options, 'optionalAccess', _518 => _518.enabled])]);
16976
17016
  const fetchNextPage = _react.useCallback.call(void 0, async () => {
16977
- if (!_optionalChain([response, 'optionalAccess', _518 => _518.nextPage])) return;
17017
+ if (!_optionalChain([response, 'optionalAccess', _519 => _519.nextPage])) return;
16978
17018
  setLoading(true);
16979
17019
  try {
16980
17020
  const nextResponse = await response.nextPage();
@@ -16995,7 +17035,7 @@ function useJsonApiGet(params) {
16995
17035
  }
16996
17036
  }, [response]);
16997
17037
  const fetchPreviousPage = _react.useCallback.call(void 0, async () => {
16998
- if (!_optionalChain([response, 'optionalAccess', _519 => _519.prevPage])) return;
17038
+ if (!_optionalChain([response, 'optionalAccess', _520 => _520.prevPage])) return;
16999
17039
  setLoading(true);
17000
17040
  try {
17001
17041
  const prevResponse = await response.prevPage();
@@ -17021,15 +17061,15 @@ function useJsonApiGet(params) {
17021
17061
  return () => {
17022
17062
  isMounted.current = false;
17023
17063
  };
17024
- }, [fetchData, ..._optionalChain([params, 'access', _520 => _520.options, 'optionalAccess', _521 => _521.deps]) || []]);
17064
+ }, [fetchData, ..._optionalChain([params, 'access', _521 => _521.options, 'optionalAccess', _522 => _522.deps]) || []]);
17025
17065
  return {
17026
17066
  data,
17027
17067
  loading,
17028
17068
  error,
17029
17069
  response,
17030
17070
  refetch: fetchData,
17031
- hasNextPage: !!_optionalChain([response, 'optionalAccess', _522 => _522.next]),
17032
- hasPreviousPage: !!_optionalChain([response, 'optionalAccess', _523 => _523.prev]),
17071
+ hasNextPage: !!_optionalChain([response, 'optionalAccess', _523 => _523.next]),
17072
+ hasPreviousPage: !!_optionalChain([response, 'optionalAccess', _524 => _524.prev]),
17033
17073
  fetchNextPage,
17034
17074
  fetchPreviousPage
17035
17075
  };
@@ -17107,17 +17147,17 @@ function useJsonApiMutation(config) {
17107
17147
  if (apiResponse.ok) {
17108
17148
  const resultData = apiResponse.data;
17109
17149
  setData(resultData);
17110
- _optionalChain([config, 'access', _524 => _524.onSuccess, 'optionalCall', _525 => _525(resultData)]);
17150
+ _optionalChain([config, 'access', _525 => _525.onSuccess, 'optionalCall', _526 => _526(resultData)]);
17111
17151
  return resultData;
17112
17152
  } else {
17113
17153
  setError(apiResponse.error);
17114
- _optionalChain([config, 'access', _526 => _526.onError, 'optionalCall', _527 => _527(apiResponse.error)]);
17154
+ _optionalChain([config, 'access', _527 => _527.onError, 'optionalCall', _528 => _528(apiResponse.error)]);
17115
17155
  return null;
17116
17156
  }
17117
17157
  } catch (err) {
17118
17158
  const errorMessage = err instanceof Error ? err.message : "Unknown error";
17119
17159
  setError(errorMessage);
17120
- _optionalChain([config, 'access', _528 => _528.onError, 'optionalCall', _529 => _529(errorMessage)]);
17160
+ _optionalChain([config, 'access', _529 => _529.onError, 'optionalCall', _530 => _530(errorMessage)]);
17121
17161
  return null;
17122
17162
  } finally {
17123
17163
  setLoading(false);
@@ -17190,7 +17230,7 @@ var useCompanyTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void
17190
17230
  {
17191
17231
  href: hasRole(_chunkG4JR3SFVjs.getRoleId.call(void 0, ).Administrator) ? generateUrl({
17192
17232
  page: "/administration",
17193
- id: _optionalChain([_chunk5PNDDYGLjs.Modules, 'access', _530 => _530.Company, 'access', _531 => _531.pageUrl, 'optionalAccess', _532 => _532.substring, 'call', _533 => _533(1)]),
17233
+ id: _optionalChain([_chunk5PNDDYGLjs.Modules, 'access', _531 => _531.Company, 'access', _532 => _532.pageUrl, 'optionalAccess', _533 => _533.substring, 'call', _534 => _534(1)]),
17194
17234
  childPage: company.id
17195
17235
  }) : generateUrl({ page: _chunk5PNDDYGLjs.Modules.Company, id: company.id }),
17196
17236
  children: row.getValue("name")
@@ -17206,7 +17246,7 @@ var useCompanyTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void
17206
17246
  })
17207
17247
  };
17208
17248
  const columns = _react.useMemo.call(void 0, () => {
17209
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _534 => _534[field], 'optionalCall', _535 => _535()])).filter((col) => col !== void 0);
17249
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _535 => _535[field], 'optionalCall', _536 => _536()])).filter((col) => col !== void 0);
17210
17250
  }, [params.fields, fieldColumnMap, t, generateUrl, hasRole]);
17211
17251
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
17212
17252
  }, "useCompanyTableStructure");
@@ -17215,10 +17255,11 @@ var useCompanyTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void
17215
17255
 
17216
17256
  var TRIAL_DAYS = 14;
17217
17257
  var GRACE_DAYS = 3;
17258
+ var DAY_MS = 1e3 * 60 * 60 * 24;
17218
17259
  var isAdministrator = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (currentUser) => {
17219
17260
  if (!currentUser || !_chunkG4JR3SFVjs.isRolesConfigured.call(void 0, )) return false;
17220
17261
  const adminRoleId = _chunkG4JR3SFVjs.getRoleId.call(void 0, ).Administrator;
17221
- return !!_optionalChain([currentUser, 'access', _536 => _536.roles, 'optionalAccess', _537 => _537.some, 'call', _538 => _538((role) => role.id === adminRoleId)]);
17262
+ return !!_optionalChain([currentUser, 'access', _537 => _537.roles, 'optionalAccess', _538 => _538.some, 'call', _539 => _539((role) => role.id === adminRoleId)]);
17222
17263
  }, "isAdministrator");
17223
17264
  function useSubscriptionStatus() {
17224
17265
  const { company, currentUser } = useCurrentUserContext();
@@ -17269,12 +17310,10 @@ function useSubscriptionStatus() {
17269
17310
  };
17270
17311
  }
17271
17312
  const createdAt = new Date(company.createdAt);
17272
- const trialEndsAt = new Date(createdAt);
17273
- trialEndsAt.setDate(trialEndsAt.getDate() + TRIAL_DAYS);
17313
+ const trialEndsAt = new Date(createdAt.getTime() + TRIAL_DAYS * DAY_MS);
17274
17314
  const now = /* @__PURE__ */ new Date();
17275
- const dstShiftMs = (now.getTimezoneOffset() - trialEndsAt.getTimezoneOffset()) * 60 * 1e3;
17276
- const msRemaining = trialEndsAt.getTime() - now.getTime() + dstShiftMs;
17277
- const daysRemaining = Math.ceil(msRemaining / (1e3 * 60 * 60 * 24));
17315
+ const msRemaining = trialEndsAt.getTime() - now.getTime();
17316
+ const daysRemaining = Math.ceil(msRemaining / DAY_MS);
17278
17317
  const trialElapsed = daysRemaining <= 0;
17279
17318
  return {
17280
17319
  status: trialElapsed ? "expired" : "trial",
@@ -17337,7 +17376,7 @@ var useRoleTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0,
17337
17376
  })
17338
17377
  };
17339
17378
  const columns = _react.useMemo.call(void 0, () => {
17340
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _539 => _539[field], 'optionalCall', _540 => _540()])).filter((col) => col !== void 0);
17379
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _540 => _540[field], 'optionalCall', _541 => _541()])).filter((col) => col !== void 0);
17341
17380
  }, [params.fields, fieldColumnMap, t, generateUrl]);
17342
17381
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
17343
17382
  }, "useRoleTableStructure");
@@ -17382,8 +17421,8 @@ _chunk7QVYU63Ejs.__name.call(void 0, formatCurrency, "formatCurrency");
17382
17421
  var useStripePriceTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (params) => {
17383
17422
  const t = _nextintl.useTranslations.call(void 0, );
17384
17423
  const generateUrl = usePageUrlGenerator();
17385
- const onClone = _optionalChain([params, 'access', _541 => _541.context, 'optionalAccess', _542 => _542.onClone]);
17386
- const onExport = _optionalChain([params, 'access', _543 => _543.context, 'optionalAccess', _544 => _544.onExport]);
17424
+ const onClone = _optionalChain([params, 'access', _542 => _542.context, 'optionalAccess', _543 => _543.onClone]);
17425
+ const onExport = _optionalChain([params, 'access', _544 => _544.context, 'optionalAccess', _545 => _545.onExport]);
17387
17426
  const tableData = _react.useMemo.call(void 0, () => {
17388
17427
  return params.data.map((price) => {
17389
17428
  const entry = { jsonApiData: price };
@@ -17448,7 +17487,7 @@ var useStripePriceTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(
17448
17487
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex flex-wrap items-center gap-1", children: [
17449
17488
  price.active ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Badge, { variant: "softGreen", children: t("billing.admin.prices.status.active") }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Badge, { variant: "softGray", children: t("billing.admin.prices.status.archived") }),
17450
17489
  price.isTrial && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Badge, { variant: "softBlue", children: t("billing.admin.prices.badge.trial") }),
17451
- _optionalChain([price, 'access', _545 => _545.recurring, 'optionalAccess', _546 => _546.usageType]) === "metered" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Badge, { variant: "softBlue", children: t("billing.admin.prices.badge.metered") })
17490
+ _optionalChain([price, 'access', _546 => _546.recurring, 'optionalAccess', _547 => _547.usageType]) === "metered" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Badge, { variant: "softBlue", children: t("billing.admin.prices.badge.metered") })
17452
17491
  ] });
17453
17492
  }, "cell"),
17454
17493
  enableSorting: false,
@@ -17496,7 +17535,7 @@ var useStripePriceTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(
17496
17535
  })
17497
17536
  };
17498
17537
  const columns = _react.useMemo.call(void 0, () => {
17499
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _547 => _547[field], 'optionalCall', _548 => _548()])).filter((col) => col !== void 0);
17538
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _548 => _548[field], 'optionalCall', _549 => _549()])).filter((col) => col !== void 0);
17500
17539
  }, [params.fields, fieldColumnMap, t, generateUrl, onClone, onExport]);
17501
17540
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
17502
17541
  }, "useStripePriceTableStructure");
@@ -17555,7 +17594,7 @@ var useStripeProductTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.cal
17555
17594
  })
17556
17595
  };
17557
17596
  const columns = _react.useMemo.call(void 0, () => {
17558
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _549 => _549[field], 'optionalCall', _550 => _550()])).filter((col) => col !== void 0);
17597
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _550 => _550[field], 'optionalCall', _551 => _551()])).filter((col) => col !== void 0);
17559
17598
  }, [params.fields, fieldColumnMap, t, generateUrl]);
17560
17599
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
17561
17600
  }, "useStripeProductTableStructure");
@@ -17578,7 +17617,7 @@ _chunk7QVYU63Ejs.__name.call(void 0, parseQuestionnaire, "parseQuestionnaire");
17578
17617
  var useWaitlistTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (params) => {
17579
17618
  const t = _nextintl.useTranslations.call(void 0, );
17580
17619
  const locale = _chunk5PNDDYGLjs.useI18nLocale.call(void 0, );
17581
- const onInvite = _optionalChain([params, 'access', _551 => _551.context, 'optionalAccess', _552 => _552.onInvite]);
17620
+ const onInvite = _optionalChain([params, 'access', _552 => _552.context, 'optionalAccess', _553 => _553.onInvite]);
17582
17621
  const tableData = _react.useMemo.call(void 0, () => {
17583
17622
  return params.data.map((entry) => {
17584
17623
  const row = { jsonApiData: entry };
@@ -17658,7 +17697,7 @@ var useWaitlistTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(voi
17658
17697
  cell: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, ({ row }) => {
17659
17698
  const entry = row.original.jsonApiData;
17660
17699
  if (entry.status === "confirmed") {
17661
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Button, { size: "sm", variant: "outline", onClick: () => _optionalChain([onInvite, 'optionalCall', _553 => _553(entry)]), children: [
17700
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Button, { size: "sm", variant: "outline", onClick: () => _optionalChain([onInvite, 'optionalCall', _554 => _554(entry)]), children: [
17662
17701
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Send, { className: "me-2 h-4 w-4" }),
17663
17702
  t("waitlist.admin.actions.invite")
17664
17703
  ] });
@@ -17676,7 +17715,7 @@ var useWaitlistTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(voi
17676
17715
  })
17677
17716
  };
17678
17717
  const columns = _react.useMemo.call(void 0, () => {
17679
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _554 => _554[field], 'optionalCall', _555 => _555()])).filter((col) => col !== void 0);
17718
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _555 => _555[field], 'optionalCall', _556 => _556()])).filter((col) => col !== void 0);
17680
17719
  }, [params.fields, fieldColumnMap, t, locale]);
17681
17720
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
17682
17721
  }, "useWaitlistTableStructure");
@@ -17777,11 +17816,11 @@ var useContentTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void
17777
17816
  return params.fields.map((field) => {
17778
17817
  const localHandler = fieldColumnMap[field];
17779
17818
  if (localHandler) return localHandler();
17780
- const customHandler = _optionalChain([params, 'access', _556 => _556.context, 'optionalAccess', _557 => _557.customCells, 'optionalAccess', _558 => _558[field]]);
17819
+ const customHandler = _optionalChain([params, 'access', _557 => _557.context, 'optionalAccess', _558 => _558.customCells, 'optionalAccess', _559 => _559[field]]);
17781
17820
  if (customHandler) return customHandler({ t });
17782
17821
  return void 0;
17783
17822
  }).filter((col) => col !== void 0);
17784
- }, [params.fields, fieldColumnMap, t, generateUrl, _optionalChain([params, 'access', _559 => _559.context, 'optionalAccess', _560 => _560.customCells])]);
17823
+ }, [params.fields, fieldColumnMap, t, generateUrl, _optionalChain([params, 'access', _560 => _560.context, 'optionalAccess', _561 => _561.customCells])]);
17785
17824
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
17786
17825
  }, "useContentTableStructure");
17787
17826
 
@@ -18007,14 +18046,14 @@ function useOAuthConsent(params, options) {
18007
18046
  const [error, setError] = _react.useState.call(void 0, null);
18008
18047
  const [isSubmitting, setIsSubmitting] = _react.useState.call(void 0, false);
18009
18048
  const [companyId, setCompanyId] = _react.useState.call(void 0, void 0);
18010
- const contextCompanyId = _optionalChain([useCurrentUserContextOptional, 'call', _561 => _561(), 'optionalAccess', _562 => _562.company, 'optionalAccess', _563 => _563.id]);
18011
- const currentCompanyId = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _564 => _564.defaultCompanyId]), () => ( contextCompanyId));
18049
+ const contextCompanyId = _optionalChain([useCurrentUserContextOptional, 'call', _562 => _562(), 'optionalAccess', _563 => _563.company, 'optionalAccess', _564 => _564.id]);
18050
+ const currentCompanyId = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _565 => _565.defaultCompanyId]), () => ( contextCompanyId));
18012
18051
  _react.useEffect.call(void 0, () => {
18013
- const companies = _nullishCoalesce(_optionalChain([clientInfo, 'optionalAccess', _565 => _565.companies]), () => ( []));
18052
+ const companies = _nullishCoalesce(_optionalChain([clientInfo, 'optionalAccess', _566 => _566.companies]), () => ( []));
18014
18053
  if (companies.length === 0) return;
18015
18054
  if (companyId && companies.some((company) => company.id === companyId)) return;
18016
18055
  const current = currentCompanyId ? companies.find((company) => company.id === currentCompanyId) : void 0;
18017
- setCompanyId(_nullishCoalesce(_optionalChain([current, 'optionalAccess', _566 => _566.id]), () => ( _optionalChain([companies, 'access', _567 => _567[0], 'optionalAccess', _568 => _568.id]))));
18056
+ setCompanyId(_nullishCoalesce(_optionalChain([current, 'optionalAccess', _567 => _567.id]), () => ( _optionalChain([companies, 'access', _568 => _568[0], 'optionalAccess', _569 => _569.id]))));
18018
18057
  }, [clientInfo, currentCompanyId, companyId]);
18019
18058
  _react.useEffect.call(void 0, () => {
18020
18059
  const fetchInfo = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, async () => {
@@ -18132,7 +18171,7 @@ function ContentTableSearch({ data }) {
18132
18171
  const handleSearchIconClick = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, () => {
18133
18172
  if (!isExpanded) {
18134
18173
  setIsFocused(true);
18135
- setTimeout(() => _optionalChain([inputRef, 'access', _569 => _569.current, 'optionalAccess', _570 => _570.focus, 'call', _571 => _571()]), 50);
18174
+ setTimeout(() => _optionalChain([inputRef, 'access', _570 => _570.current, 'optionalAccess', _571 => _571.focus, 'call', _572 => _572()]), 50);
18136
18175
  }
18137
18176
  }, "handleSearchIconClick");
18138
18177
  const handleBlur = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, () => {
@@ -18218,7 +18257,7 @@ function getGroupKeys(item, field) {
18218
18257
  return [String(_nullishCoalesce(value, () => ( "")))];
18219
18258
  }
18220
18259
  _chunk7QVYU63Ejs.__name.call(void 0, getGroupKeys, "getGroupKeys");
18221
- var isClassComponent = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (component) => typeof component === "function" && !!_optionalChain([component, 'access', _572 => _572.prototype, 'optionalAccess', _573 => _573.isReactComponent]), "isClassComponent");
18260
+ var isClassComponent = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (component) => typeof component === "function" && !!_optionalChain([component, 'access', _573 => _573.prototype, 'optionalAccess', _574 => _574.isReactComponent]), "isClassComponent");
18222
18261
  function StableCell({ render, context }) {
18223
18262
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: render(context) });
18224
18263
  }
@@ -18242,7 +18281,7 @@ var ContentListTable = _react.memo.call(void 0, /* @__PURE__ */ _chunk7QVYU63Ejs
18242
18281
  if (data.isLoaded) setPendingDirection(null);
18243
18282
  }, [data.isLoaded]);
18244
18283
  const { data: tableData, columns: tableColumns } = useTableGenerator(props.tableGeneratorType, {
18245
- data: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _574 => _574.data]), () => ( EMPTY_ARRAY)),
18284
+ data: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _575 => _575.data]), () => ( EMPTY_ARRAY)),
18246
18285
  fields,
18247
18286
  checkedIds,
18248
18287
  toggleId,
@@ -18266,7 +18305,7 @@ var ContentListTable = _react.memo.call(void 0, /* @__PURE__ */ _chunk7QVYU63Ejs
18266
18305
  ...props.renderExpandedRow && {
18267
18306
  getExpandedRowModel: _reacttable.getExpandedRowModel.call(void 0, ),
18268
18307
  // Key rows by record id so an expansion stays with its record when a search or filter reorders the rows.
18269
- getRowId: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (row, index) => _nullishCoalesce(_optionalChain([row, 'access', _575 => _575.jsonApiData, 'optionalAccess', _576 => _576.id]), () => ( String(index))), "getRowId"),
18308
+ getRowId: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (row, index) => _nullishCoalesce(_optionalChain([row, 'access', _576 => _576.jsonApiData, 'optionalAccess', _577 => _577.id]), () => ( String(index))), "getRowId"),
18270
18309
  getRowCanExpand: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, () => true, "getRowCanExpand"),
18271
18310
  onExpandedChange: setExpanded,
18272
18311
  state: { expanded }
@@ -18283,7 +18322,7 @@ var ContentListTable = _react.memo.call(void 0, /* @__PURE__ */ _chunk7QVYU63Ejs
18283
18322
  });
18284
18323
  const rowModel = tableData ? table.getRowModel() : null;
18285
18324
  const groupedRows = _react.useMemo.call(void 0, () => {
18286
- if (!props.groupBy || !_optionalChain([rowModel, 'optionalAccess', _577 => _577.rows, 'optionalAccess', _578 => _578.length])) return null;
18325
+ if (!props.groupBy || !_optionalChain([rowModel, 'optionalAccess', _578 => _578.rows, 'optionalAccess', _579 => _579.length])) return null;
18287
18326
  const groupMap = /* @__PURE__ */ new Map();
18288
18327
  for (const row of rowModel.rows) {
18289
18328
  const keys = getGroupKeys(row.original, props.groupBy);
@@ -18362,20 +18401,20 @@ var ContentListTable = _react.memo.call(void 0, /* @__PURE__ */ _chunk7QVYU63Ejs
18362
18401
  ) }),
18363
18402
  !props.hideHeader && table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableRow, { children: headerGroup.headers.map((header) => {
18364
18403
  const meta = header.column.columnDef.meta;
18365
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableHead, { className: _optionalChain([meta, 'optionalAccess', _579 => _579.className]), children: header.isPlaceholder ? null : _reacttable.flexRender.call(void 0, header.column.columnDef.header, header.getContext()) }, header.id);
18404
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableHead, { className: _optionalChain([meta, 'optionalAccess', _580 => _580.className]), children: header.isPlaceholder ? null : _reacttable.flexRender.call(void 0, header.column.columnDef.header, header.getContext()) }, header.id);
18366
18405
  }) }, headerGroup.id))
18367
18406
  ] }),
18368
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableBody, { children: rowModel && _optionalChain([rowModel, 'access', _580 => _580.rows, 'optionalAccess', _581 => _581.length]) ? groupedRows ? groupedRows.map((group) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React2.default.Fragment, { children: [
18369
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableRow, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableCell, { colSpan: tableColumns.length, className: "bg-muted px-4 py-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MicroLabel, { children: _nullishCoalesce(_optionalChain([props, 'access', _582 => _582.groupLabel, 'optionalCall', _583 => _583(group.groupKey)]), () => ( group.groupKey)) }) }) }),
18407
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableBody, { children: rowModel && _optionalChain([rowModel, 'access', _581 => _581.rows, 'optionalAccess', _582 => _582.length]) ? groupedRows ? groupedRows.map((group) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React2.default.Fragment, { children: [
18408
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableRow, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableCell, { colSpan: tableColumns.length, className: "bg-muted px-4 py-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MicroLabel, { children: _nullishCoalesce(_optionalChain([props, 'access', _583 => _583.groupLabel, 'optionalCall', _584 => _584(group.groupKey)]), () => ( group.groupKey)) }) }) }),
18370
18409
  group.rows.map((row) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React2.default.Fragment, { children: [
18371
18410
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
18372
18411
  TableRow,
18373
18412
  {
18374
- onClick: () => _optionalChain([onRowClick, 'optionalCall', _584 => _584(row.original.jsonApiData)]),
18413
+ onClick: () => _optionalChain([onRowClick, 'optionalCall', _585 => _585(row.original.jsonApiData)]),
18375
18414
  className: `group ${onRowClick ? "hover:bg-muted/50 cursor-pointer" : ""}`,
18376
18415
  children: row.getVisibleCells().map((cell) => {
18377
18416
  const meta = cell.column.columnDef.meta;
18378
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableCell, { className: _optionalChain([meta, 'optionalAccess', _585 => _585.className]), children: renderCell(cell.column.columnDef.cell, cell.getContext()) }, cell.id);
18417
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableCell, { className: _optionalChain([meta, 'optionalAccess', _586 => _586.className]), children: renderCell(cell.column.columnDef.cell, cell.getContext()) }, cell.id);
18379
18418
  })
18380
18419
  }
18381
18420
  ),
@@ -18385,11 +18424,11 @@ var ContentListTable = _react.memo.call(void 0, /* @__PURE__ */ _chunk7QVYU63Ejs
18385
18424
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
18386
18425
  TableRow,
18387
18426
  {
18388
- onClick: () => _optionalChain([onRowClick, 'optionalCall', _586 => _586(row.original.jsonApiData)]),
18427
+ onClick: () => _optionalChain([onRowClick, 'optionalCall', _587 => _587(row.original.jsonApiData)]),
18389
18428
  className: `group ${onRowClick ? "hover:bg-muted/50 cursor-pointer" : ""}`,
18390
18429
  children: row.getVisibleCells().map((cell) => {
18391
18430
  const meta = cell.column.columnDef.meta;
18392
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableCell, { className: _optionalChain([meta, 'optionalAccess', _587 => _587.className]), children: renderCell(cell.column.columnDef.cell, cell.getContext()) }, cell.id);
18431
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableCell, { className: _optionalChain([meta, 'optionalAccess', _588 => _588.className]), children: renderCell(cell.column.columnDef.cell, cell.getContext()) }, cell.id);
18393
18432
  })
18394
18433
  }
18395
18434
  ),
@@ -18404,7 +18443,7 @@ var ContentListTable = _react.memo.call(void 0, /* @__PURE__ */ _chunk7QVYU63Ejs
18404
18443
  onClick: (e) => {
18405
18444
  e.preventDefault();
18406
18445
  setPendingDirection("prev");
18407
- _optionalChain([data, 'access', _588 => _588.previous, 'optionalCall', _589 => _589(true)]);
18446
+ _optionalChain([data, 'access', _589 => _589.previous, 'optionalCall', _590 => _590(true)]);
18408
18447
  },
18409
18448
  disabled: !data.previous || pendingDirection !== null,
18410
18449
  children: pendingDirection === "prev" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4 rtl:rotate-180" })
@@ -18419,7 +18458,7 @@ var ContentListTable = _react.memo.call(void 0, /* @__PURE__ */ _chunk7QVYU63Ejs
18419
18458
  onClick: (e) => {
18420
18459
  e.preventDefault();
18421
18460
  setPendingDirection("next");
18422
- _optionalChain([data, 'access', _590 => _590.next, 'optionalCall', _591 => _591(true)]);
18461
+ _optionalChain([data, 'access', _591 => _591.next, 'optionalCall', _592 => _592(true)]);
18423
18462
  },
18424
18463
  disabled: !data.next || pendingDirection !== null,
18425
18464
  children: pendingDirection === "next" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4 rtl:rotate-180" })
@@ -18441,7 +18480,7 @@ function ContentListGrid(props) {
18441
18480
  if (!data.next || !sentinelRef.current) return;
18442
18481
  const observer = new IntersectionObserver(
18443
18482
  (entries) => {
18444
- if (_optionalChain([entries, 'access', _592 => _592[0], 'optionalAccess', _593 => _593.isIntersecting])) _optionalChain([data, 'access', _594 => _594.next, 'optionalCall', _595 => _595()]);
18483
+ if (_optionalChain([entries, 'access', _593 => _593[0], 'optionalAccess', _594 => _594.isIntersecting])) _optionalChain([data, 'access', _595 => _595.next, 'optionalCall', _596 => _596()]);
18445
18484
  },
18446
18485
  { threshold: 0.1, rootMargin: "200px" }
18447
18486
  );
@@ -19228,7 +19267,7 @@ function TotpInput({ onComplete, disabled = false, autoFocus = true, error }) {
19228
19267
  newDigits[index] = digit;
19229
19268
  setDigits(newDigits);
19230
19269
  if (digit && index < 5) {
19231
- _optionalChain([inputRefs, 'access', _596 => _596.current, 'access', _597 => _597[index + 1], 'optionalAccess', _598 => _598.focus, 'call', _599 => _599()]);
19270
+ _optionalChain([inputRefs, 'access', _597 => _597.current, 'access', _598 => _598[index + 1], 'optionalAccess', _599 => _599.focus, 'call', _600 => _600()]);
19232
19271
  }
19233
19272
  const code = newDigits.join("");
19234
19273
  if (code.length === 6 && newDigits.every((d) => d !== "")) {
@@ -19237,7 +19276,7 @@ function TotpInput({ onComplete, disabled = false, autoFocus = true, error }) {
19237
19276
  }, "handleChange");
19238
19277
  const handleKeyDown = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (index, e) => {
19239
19278
  if (e.key === "Backspace" && !digits[index] && index > 0) {
19240
- _optionalChain([inputRefs, 'access', _600 => _600.current, 'access', _601 => _601[index - 1], 'optionalAccess', _602 => _602.focus, 'call', _603 => _603()]);
19279
+ _optionalChain([inputRefs, 'access', _601 => _601.current, 'access', _602 => _602[index - 1], 'optionalAccess', _603 => _603.focus, 'call', _604 => _604()]);
19241
19280
  }
19242
19281
  }, "handleKeyDown");
19243
19282
  const handlePaste = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (e) => {
@@ -19246,7 +19285,7 @@ function TotpInput({ onComplete, disabled = false, autoFocus = true, error }) {
19246
19285
  if (pastedData.length === 6) {
19247
19286
  const newDigits = pastedData.split("");
19248
19287
  setDigits(newDigits);
19249
- _optionalChain([inputRefs, 'access', _604 => _604.current, 'access', _605 => _605[5], 'optionalAccess', _606 => _606.focus, 'call', _607 => _607()]);
19288
+ _optionalChain([inputRefs, 'access', _605 => _605.current, 'access', _606 => _606[5], 'optionalAccess', _607 => _607.focus, 'call', _608 => _608()]);
19250
19289
  onComplete(pastedData);
19251
19290
  }
19252
19291
  }, "handlePaste");
@@ -19458,8 +19497,8 @@ function PasskeySetupDialog({ open, onOpenChange, onSuccess }) {
19458
19497
  try {
19459
19498
  const registrationData = await _chunk5PNDDYGLjs.TwoFactorService.getPasskeyRegistrationOptions({
19460
19499
  id: _uuid.v4.call(void 0, ),
19461
- userName: _nullishCoalesce(_optionalChain([currentUser, 'optionalAccess', _608 => _608.email]), () => ( "")),
19462
- userDisplayName: _optionalChain([currentUser, 'optionalAccess', _609 => _609.name])
19500
+ userName: _nullishCoalesce(_optionalChain([currentUser, 'optionalAccess', _609 => _609.email]), () => ( "")),
19501
+ userDisplayName: _optionalChain([currentUser, 'optionalAccess', _610 => _610.name])
19463
19502
  });
19464
19503
  const credential = await _browser.startRegistration.call(void 0, { optionsJSON: registrationData.options });
19465
19504
  await _chunk5PNDDYGLjs.TwoFactorService.verifyPasskeyRegistration({
@@ -19611,7 +19650,7 @@ function TotpSetupDialog({ onSuccess, trigger }) {
19611
19650
  const setup = await _chunk5PNDDYGLjs.TwoFactorService.setupTotp({
19612
19651
  id: _uuid.v4.call(void 0, ),
19613
19652
  name: name.trim(),
19614
- accountName: _nullishCoalesce(_optionalChain([currentUser, 'optionalAccess', _610 => _610.email]), () => ( ""))
19653
+ accountName: _nullishCoalesce(_optionalChain([currentUser, 'optionalAccess', _611 => _611.email]), () => ( ""))
19615
19654
  });
19616
19655
  setQrCodeUri(setup.qrCodeUri);
19617
19656
  setAuthenticatorId(setup.authenticatorId);
@@ -19745,7 +19784,7 @@ function TwoFactorSettings() {
19745
19784
  if (isLoading) {
19746
19785
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Card, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CardContent, { className: "flex items-center justify-center py-8", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-muted-foreground", children: t("common.loading") }) }) });
19747
19786
  }
19748
- const isEnabled = _nullishCoalesce(_optionalChain([status, 'optionalAccess', _611 => _611.isEnabled]), () => ( false));
19787
+ const isEnabled = _nullishCoalesce(_optionalChain([status, 'optionalAccess', _612 => _612.isEnabled]), () => ( false));
19749
19788
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Card, { children: [
19750
19789
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CardHeader, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
19751
19790
  isEnabled ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ShieldCheck, { className: "text-success h-6 w-6" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ShieldAlert, { className: "text-warning h-6 w-6" }),
@@ -19783,7 +19822,7 @@ function TwoFactorSettings() {
19783
19822
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "font-medium", children: t("auth.two_factor.backup_codes") }),
19784
19823
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-sm text-muted-foreground", children: t("auth.two_factor.backup_codes_description") })
19785
19824
  ] }),
19786
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, BackupCodesDialog, { remainingCodes: _nullishCoalesce(_optionalChain([status, 'optionalAccess', _612 => _612.backupCodesCount]), () => ( 0)), onRegenerate: handleRefresh })
19825
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, BackupCodesDialog, { remainingCodes: _nullishCoalesce(_optionalChain([status, 'optionalAccess', _613 => _613.backupCodesCount]), () => ( 0)), onRegenerate: handleRefresh })
19787
19826
  ] }) }),
19788
19827
  !isEnabled && (authenticators.length > 0 || passkeys.length > 0) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
19789
19828
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Separator, {}),
@@ -19961,9 +20000,9 @@ function AcceptInvitation() {
19961
20000
  });
19962
20001
  const onSubmit = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, async (values) => {
19963
20002
  try {
19964
- if (!_optionalChain([params, 'optionalAccess', _613 => _613.code])) return;
20003
+ if (!_optionalChain([params, 'optionalAccess', _614 => _614.code])) return;
19965
20004
  const payload = {
19966
- code: _optionalChain([params, 'optionalAccess', _614 => _614.code]),
20005
+ code: _optionalChain([params, 'optionalAccess', _615 => _615.code]),
19967
20006
  password: values.password
19968
20007
  };
19969
20008
  await _chunk5PNDDYGLjs.AuthService.acceptInvitation(payload);
@@ -20334,14 +20373,14 @@ function RefreshUser() {
20334
20373
  setUser(fullUser);
20335
20374
  const token = {
20336
20375
  userId: fullUser.id,
20337
- companyId: _optionalChain([fullUser, 'access', _615 => _615.company, 'optionalAccess', _616 => _616.id]),
20376
+ companyId: _optionalChain([fullUser, 'access', _616 => _616.company, 'optionalAccess', _617 => _617.id]),
20338
20377
  roles: fullUser.roles.map((role) => role.id),
20339
- features: _nullishCoalesce(_optionalChain([fullUser, 'access', _617 => _617.company, 'optionalAccess', _618 => _618.features, 'optionalAccess', _619 => _619.map, 'call', _620 => _620((feature) => feature.id)]), () => ( [])),
20378
+ features: _nullishCoalesce(_optionalChain([fullUser, 'access', _618 => _618.company, 'optionalAccess', _619 => _619.features, 'optionalAccess', _620 => _620.map, 'call', _621 => _621((feature) => feature.id)]), () => ( [])),
20340
20379
  modules: fullUser.modules.map((module) => {
20341
20380
  return { id: module.id, permissions: module.permissions };
20342
20381
  })
20343
20382
  };
20344
- await _optionalChain([_chunk5PNDDYGLjs.getTokenHandler.call(void 0, ), 'optionalAccess', _621 => _621.updateToken, 'call', _622 => _622(token)]);
20383
+ await _optionalChain([_chunk5PNDDYGLjs.getTokenHandler.call(void 0, ), 'optionalAccess', _622 => _622.updateToken, 'call', _623 => _623(token)]);
20345
20384
  _cookiesnext.deleteCookie.call(void 0, "reloadData");
20346
20385
  }
20347
20386
  }, "loadFullUser");
@@ -20405,9 +20444,9 @@ function ResetPassword() {
20405
20444
  });
20406
20445
  const onSubmit = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, async (values) => {
20407
20446
  try {
20408
- if (!_optionalChain([params, 'optionalAccess', _623 => _623.code])) return;
20447
+ if (!_optionalChain([params, 'optionalAccess', _624 => _624.code])) return;
20409
20448
  const payload = {
20410
- code: _optionalChain([params, 'optionalAccess', _624 => _624.code]),
20449
+ code: _optionalChain([params, 'optionalAccess', _625 => _625.code]),
20411
20450
  password: values.password
20412
20451
  };
20413
20452
  await _chunk5PNDDYGLjs.AuthService.resetPassword(payload);
@@ -20942,7 +20981,7 @@ function AiConnectionEditor({
20942
20981
  const registryRows = _react.useMemo.call(void 0, () => _nullishCoalesce(providerRegistry[connectionType], () => ( [])), [providerRegistry, connectionType]);
20943
20982
  const providers = _react.useMemo.call(void 0, () => registryRows.map((row) => row.provider), [registryRows]);
20944
20983
  const fieldsFor = _react.useCallback.call(void 0,
20945
- (provider) => _nullishCoalesce(_optionalChain([registryRows, 'access', _625 => _625.find, 'call', _626 => _626((row) => row.provider === provider), 'optionalAccess', _627 => _627.fields]), () => ( [])),
20984
+ (provider) => _nullishCoalesce(_optionalChain([registryRows, 'access', _626 => _626.find, 'call', _627 => _627((row) => row.provider === provider), 'optionalAccess', _628 => _628.fields]), () => ( [])),
20946
20985
  [registryRows]
20947
20986
  );
20948
20987
  const defaultsFor = _react.useCallback.call(void 0,
@@ -20951,7 +20990,7 @@ function AiConnectionEditor({
20951
20990
  const seeded = {};
20952
20991
  fieldsFor(provider).forEach((descriptor) => {
20953
20992
  if (descriptor.kind === "boolean") {
20954
- const current2 = _optionalChain([stored, 'optionalAccess', _628 => _628[descriptor.field]]);
20993
+ const current2 = _optionalChain([stored, 'optionalAccess', _629 => _629[descriptor.field]]);
20955
20994
  seeded[descriptor.field] = current2 !== void 0 && current2 !== null ? current2 === true : descriptor.default === true;
20956
20995
  return;
20957
20996
  }
@@ -20959,7 +20998,7 @@ function AiConnectionEditor({
20959
20998
  seeded[descriptor.field] = "";
20960
20999
  return;
20961
21000
  }
20962
- const current = _optionalChain([stored, 'optionalAccess', _629 => _629[descriptor.field]]);
21001
+ const current = _optionalChain([stored, 'optionalAccess', _630 => _630[descriptor.field]]);
20963
21002
  if (current !== void 0 && current !== null) seeded[descriptor.field] = String(current);
20964
21003
  else seeded[descriptor.field] = descriptor.default !== void 0 ? String(descriptor.default) : "";
20965
21004
  });
@@ -20985,7 +21024,7 @@ function AiConnectionEditor({
20985
21024
  values: _zod3.z.record(_zod3.z.string(), _zod3.z.any())
20986
21025
  }).superRefine((data, ctx) => {
20987
21026
  fieldsFor(data.provider).filter((descriptor) => descriptor.required).forEach((descriptor) => {
20988
- const value = _optionalChain([data, 'access', _630 => _630.values, 'optionalAccess', _631 => _631[descriptor.field]]);
21027
+ const value = _optionalChain([data, 'access', _631 => _631.values, 'optionalAccess', _632 => _632[descriptor.field]]);
20989
21028
  const filled = descriptor.kind === "secret" ? !!value || hasStoredSecret(descriptor.field) : descriptor.kind === "boolean" ? value !== void 0 : value !== void 0 && value !== null && String(value).trim() !== "";
20990
21029
  if (filled) return;
20991
21030
  ctx.addIssue({
@@ -20999,11 +21038,11 @@ function AiConnectionEditor({
20999
21038
  );
21000
21039
  const getDefaultValues = _react.useCallback.call(void 0,
21001
21040
  () => ({
21002
- id: _nullishCoalesce(_optionalChain([connection, 'optionalAccess', _632 => _632.id]), () => ( _uuid.v4.call(void 0, ))),
21003
- name: _nullishCoalesce(_optionalChain([connection, 'optionalAccess', _633 => _633.name]), () => ( "")),
21004
- provider: _nullishCoalesce(_nullishCoalesce(_optionalChain([connection, 'optionalAccess', _634 => _634.provider]), () => ( providers[0])), () => ( "")),
21005
- enabled: _nullishCoalesce(_optionalChain([connection, 'optionalAccess', _635 => _635.enabled]), () => ( true)),
21006
- values: defaultsFor(_nullishCoalesce(_nullishCoalesce(_optionalChain([connection, 'optionalAccess', _636 => _636.provider]), () => ( providers[0])), () => ( "")))
21041
+ id: _nullishCoalesce(_optionalChain([connection, 'optionalAccess', _633 => _633.id]), () => ( _uuid.v4.call(void 0, ))),
21042
+ name: _nullishCoalesce(_optionalChain([connection, 'optionalAccess', _634 => _634.name]), () => ( "")),
21043
+ provider: _nullishCoalesce(_nullishCoalesce(_optionalChain([connection, 'optionalAccess', _635 => _635.provider]), () => ( providers[0])), () => ( "")),
21044
+ enabled: _nullishCoalesce(_optionalChain([connection, 'optionalAccess', _636 => _636.enabled]), () => ( true)),
21045
+ values: defaultsFor(_nullishCoalesce(_nullishCoalesce(_optionalChain([connection, 'optionalAccess', _637 => _637.provider]), () => ( providers[0])), () => ( "")))
21007
21046
  }),
21008
21047
  [connection, providers, defaultsFor]
21009
21048
  );
@@ -21014,7 +21053,7 @@ function AiConnectionEditor({
21014
21053
  _react.useEffect.call(void 0, () => {
21015
21054
  if (registryRows.length === 0) return;
21016
21055
  const currentProvider = form.getValues("provider");
21017
- const provider = currentProvider || _optionalChain([connection, 'optionalAccess', _637 => _637.provider]) || providers[0] || "";
21056
+ const provider = currentProvider || _optionalChain([connection, 'optionalAccess', _638 => _638.provider]) || providers[0] || "";
21018
21057
  if (!provider) return;
21019
21058
  if (provider !== currentProvider) form.setValue("provider", provider);
21020
21059
  const currentValues = form.getValues("values");
@@ -21085,7 +21124,7 @@ function AiConnectionEditor({
21085
21124
  {
21086
21125
  form,
21087
21126
  entityType: t("ai_connections.admin.entity"),
21088
- entityName: _optionalChain([connection, 'optionalAccess', _638 => _638.name]),
21127
+ entityName: _optionalChain([connection, 'optionalAccess', _639 => _639.name]),
21089
21128
  isEdit,
21090
21129
  module: _chunk5PNDDYGLjs.Modules.AiConnection,
21091
21130
  size: "md",
@@ -21093,7 +21132,7 @@ function AiConnectionEditor({
21093
21132
  onSubmit: async (values) => {
21094
21133
  const attributes = {};
21095
21134
  fieldsFor(values.provider).forEach((descriptor) => {
21096
- const coerced = coerce(descriptor, _optionalChain([values, 'access', _639 => _639.values, 'optionalAccess', _640 => _640[descriptor.field]]));
21135
+ const coerced = coerce(descriptor, _optionalChain([values, 'access', _640 => _640.values, 'optionalAccess', _641 => _641[descriptor.field]]));
21097
21136
  if (coerced !== void 0) attributes[descriptor.field] = coerced;
21098
21137
  });
21099
21138
  const payload = {
@@ -21323,7 +21362,7 @@ function AiConnectionTypeCard({ connectionType }) {
21323
21362
  ),
21324
21363
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "bg-muted/40 flex flex-wrap items-center gap-2 px-3 py-2", children: [
21325
21364
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Badge, { variant: "softGray", children: t("ai_connections.admin.env_fallback") }),
21326
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-muted-foreground truncate text-xs", children: [_optionalChain([envDefault, 'optionalAccess', _641 => _641.provider]), _optionalChain([envDefault, 'optionalAccess', _642 => _642.model]), _optionalChain([envDefault, 'optionalAccess', _643 => _643.url])].filter(Boolean).join(" \xB7 ") })
21365
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-muted-foreground truncate text-xs", children: [_optionalChain([envDefault, 'optionalAccess', _642 => _642.provider]), _optionalChain([envDefault, 'optionalAccess', _643 => _643.model]), _optionalChain([envDefault, 'optionalAccess', _644 => _644.url])].filter(Boolean).join(" \xB7 ") })
21327
21366
  ] })
21328
21367
  ] })
21329
21368
  ] })
@@ -21521,7 +21560,7 @@ function extractHeadings(blocks) {
21521
21560
  function processBlocks(blockArray) {
21522
21561
  for (const block of blockArray) {
21523
21562
  if (block.type === "heading") {
21524
- const level = _optionalChain([block, 'access', _644 => _644.props, 'optionalAccess', _645 => _645.level]) || 1;
21563
+ const level = _optionalChain([block, 'access', _645 => _645.props, 'optionalAccess', _646 => _646.level]) || 1;
21525
21564
  const text = extractTextFromContent(block.content);
21526
21565
  if (text.trim()) {
21527
21566
  headings.push({
@@ -21715,14 +21754,32 @@ function HowToCommand({ pathname, contextKeys, extraGroups, onStartChat }) {
21715
21754
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, CommandList, { className: "max-h-[60vh] overflow-y-auto", children: [
21716
21755
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CommandEmpty, { children: t(`howto.command.empty`) }),
21717
21756
  !searchTerm && extraGroups,
21718
- relevantHowTos.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CommandGroup, { heading: t(`howto.command.relevant`), children: relevantHowTos.map((howTo) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, CommandItem, { onSelect: () => setSelectedHowTo(howTo), className: "cursor-pointer", children: [
21719
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ArrowRight, { className: "h-4 w-4 rtl:rotate-180" }),
21720
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: howTo.name })
21721
- ] }, howTo.id)) }),
21722
- otherHowTos.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CommandGroup, { heading: searchTerm ? void 0 : t(`howto.command.all`), children: otherHowTos.map((howTo) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, CommandItem, { onSelect: () => setSelectedHowTo(howTo), className: "cursor-pointer", children: [
21723
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ArrowRight, { className: "h-4 w-4 rtl:rotate-180" }),
21724
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: howTo.name })
21725
- ] }, howTo.id)) })
21757
+ relevantHowTos.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CommandGroup, { heading: t(`howto.command.relevant`), children: relevantHowTos.map((howTo) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
21758
+ CommandItem,
21759
+ {
21760
+ value: howTo.id,
21761
+ onSelect: () => setSelectedHowTo(howTo),
21762
+ className: "cursor-pointer",
21763
+ children: [
21764
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ArrowRight, { className: "h-4 w-4 rtl:rotate-180" }),
21765
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: howTo.name })
21766
+ ]
21767
+ },
21768
+ howTo.id
21769
+ )) }),
21770
+ otherHowTos.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CommandGroup, { heading: searchTerm ? void 0 : t(`howto.command.all`), children: otherHowTos.map((howTo) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
21771
+ CommandItem,
21772
+ {
21773
+ value: howTo.id,
21774
+ onSelect: () => setSelectedHowTo(howTo),
21775
+ className: "cursor-pointer",
21776
+ children: [
21777
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ArrowRight, { className: "h-4 w-4 rtl:rotate-180" }),
21778
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: howTo.name })
21779
+ ]
21780
+ },
21781
+ howTo.id
21782
+ )) })
21726
21783
  ] }),
21727
21784
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-muted-foreground flex items-center justify-center gap-4 border-t px-3 py-2 text-xs", children: [
21728
21785
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-1", children: [
@@ -21863,7 +21920,7 @@ var useHowToTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0
21863
21920
  })
21864
21921
  };
21865
21922
  const columns = _react.useMemo.call(void 0, () => {
21866
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _646 => _646[field], 'optionalCall', _647 => _647()])).filter((col) => col !== void 0);
21923
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _647 => _647[field], 'optionalCall', _648 => _648()])).filter((col) => col !== void 0);
21867
21924
  }, [params.fields, fieldColumnMap, t, generateUrl]);
21868
21925
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
21869
21926
  }, "useHowToTableStructure");
@@ -21989,7 +22046,7 @@ function HowToSelector({
21989
22046
  }, "setHowTo");
21990
22047
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full flex-col", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, FormFieldWrapper, { form, name: id, label, isRequired, children: (field) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Popover, { open, onOpenChange: setOpen, modal: true, children: [
21991
22048
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-row items-center justify-between", children: [
21992
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverTrigger, { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full flex-row items-center justify-start rounded-md", children: field.value ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-input/20 dark:bg-input/30 border-input flex h-7 w-full flex-row items-center justify-start rounded-md border px-2 py-0.5 text-sm md:text-xs/relaxed", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: _nullishCoalesce(_optionalChain([field, 'access', _648 => _648.value, 'optionalAccess', _649 => _649.name]), () => ( "")) }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-input/20 dark:bg-input/30 border-input text-muted-foreground flex h-7 w-full flex-row items-center justify-start rounded-md border px-2 py-0.5 text-sm md:text-xs/relaxed", children: _nullishCoalesce(placeholder, () => ( t(`generic.search.placeholder`, { type: t(`entities.howtos`, { count: 1 }) }))) }) }) }),
22049
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverTrigger, { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full flex-row items-center justify-start rounded-md", children: field.value ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-input/20 dark:bg-input/30 border-input flex h-7 w-full flex-row items-center justify-start rounded-md border px-2 py-0.5 text-sm md:text-xs/relaxed", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: _nullishCoalesce(_optionalChain([field, 'access', _649 => _649.value, 'optionalAccess', _650 => _650.name]), () => ( "")) }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-input/20 dark:bg-input/30 border-input text-muted-foreground flex h-7 w-full flex-row items-center justify-start rounded-md border px-2 py-0.5 text-sm md:text-xs/relaxed", children: _nullishCoalesce(placeholder, () => ( t(`generic.search.placeholder`, { type: t(`entities.howtos`, { count: 1 }) }))) }) }) }),
21993
22050
  field.value && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
21994
22051
  _lucidereact.CircleX,
21995
22052
  {
@@ -22026,6 +22083,7 @@ function HowToSelector({
22026
22083
  CommandItem,
22027
22084
  {
22028
22085
  className: "cursor-pointer hover:bg-muted data-selected:hover:bg-muted bg-transparent data-selected:bg-transparent",
22086
+ value: howTo.id,
22029
22087
  onSelect: () => setHowTo(howTo),
22030
22088
  children: howTo.name
22031
22089
  },
@@ -22291,10 +22349,10 @@ function CitationsTab({ citations, sources }) {
22291
22349
  ] }) }),
22292
22350
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableBody, { children: sorted.map((chunk) => {
22293
22351
  const isOpen = expanded.has(chunk.id);
22294
- const resolved = chunk.nodeId ? _optionalChain([sources, 'optionalAccess', _650 => _650.get, 'call', _651 => _651(chunk.nodeId)]) : void 0;
22352
+ const resolved = chunk.nodeId ? _optionalChain([sources, 'optionalAccess', _651 => _651.get, 'call', _652 => _652(chunk.nodeId)]) : void 0;
22295
22353
  const typeLabel = chunk.nodeType ? entityLabel(chunk.nodeType) : t("features.assistant.message.sources.source");
22296
22354
  const fallbackName = chunk.nodeId ? `${typeLabel} ${chunk.nodeId.slice(0, 8)}` : typeLabel;
22297
- const sourceName = _nullishCoalesce(_optionalChain([resolved, 'optionalAccess', _652 => _652.name]), () => ( fallbackName));
22355
+ const sourceName = _nullishCoalesce(_optionalChain([resolved, 'optionalAccess', _653 => _653.name]), () => ( fallbackName));
22298
22356
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react.Fragment, { children: [
22299
22357
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, TableRow, { children: [
22300
22358
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TableCell, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -22358,7 +22416,7 @@ function ContentsTab({ citations, sources }) {
22358
22416
  for (const c of citations) {
22359
22417
  const id = c.nodeId;
22360
22418
  if (!id) continue;
22361
- const source = _optionalChain([sources, 'optionalAccess', _653 => _653.get, 'call', _654 => _654(id)]);
22419
+ const source = _optionalChain([sources, 'optionalAccess', _654 => _654.get, 'call', _655 => _655(id)]);
22362
22420
  if (!source) continue;
22363
22421
  const existing = map.get(id);
22364
22422
  if (existing) {
@@ -22425,7 +22483,7 @@ function UsersTab({ users, citations, sources }) {
22425
22483
  const generate = usePageUrlGenerator();
22426
22484
  const userMap = /* @__PURE__ */ new Map();
22427
22485
  for (const u of users) {
22428
- if (!_optionalChain([u, 'optionalAccess', _655 => _655.id])) continue;
22486
+ if (!_optionalChain([u, 'optionalAccess', _656 => _656.id])) continue;
22429
22487
  userMap.set(u.id, { user: u, contentCount: 0, citationCount: 0 });
22430
22488
  }
22431
22489
  if (citations && sources) {
@@ -22530,7 +22588,7 @@ function MessageSourcesPanel({ message, isLatestAssistant, onSelectFollowUp, sou
22530
22588
  }
22531
22589
  return ids.size;
22532
22590
  }, [message.citations, sources]);
22533
- const usersCount = _nullishCoalesce(_optionalChain([users, 'optionalAccess', _656 => _656.length]), () => ( 0));
22591
+ const usersCount = _nullishCoalesce(_optionalChain([users, 'optionalAccess', _657 => _657.length]), () => ( 0));
22534
22592
  const total = refsCount + citationsCount + contentsCount + usersCount + suggestionsCount;
22535
22593
  const visibleTabs = [];
22536
22594
  if (suggestionsCount > 0) visibleTabs.push("suggested");
@@ -22673,7 +22731,7 @@ function MessageSourcesContainer({ message, isLatestAssistant, onSelectFollowUp
22673
22731
  return void 0;
22674
22732
  }
22675
22733
  })()));
22676
- if (_optionalChain([author, 'optionalAccess', _657 => _657.id])) userMap.set(author.id, author);
22734
+ if (_optionalChain([author, 'optionalAccess', _658 => _658.id])) userMap.set(author.id, author);
22677
22735
  }
22678
22736
  return Array.from(userMap.values());
22679
22737
  }, [resolved]);
@@ -22708,7 +22766,7 @@ function MessageItem({
22708
22766
  }) {
22709
22767
  const t = _nextintl.useTranslations.call(void 0, );
22710
22768
  const isUser = message.role === "user";
22711
- const isFailed = isUser && !!_optionalChain([failedMessageIds, 'optionalAccess', _658 => _658.has, 'call', _659 => _659(message.id)]);
22769
+ const isFailed = isUser && !!_optionalChain([failedMessageIds, 'optionalAccess', _659 => _659.has, 'call', _660 => _660(message.id)]);
22712
22770
  const markdownComponents = _react.useMemo.call(void 0,
22713
22771
  () => ({
22714
22772
  a: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, ({ href, children }) => {
@@ -22725,7 +22783,7 @@ function MessageItem({
22725
22783
  isFailed && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-destructive flex items-center gap-2 text-xs", children: [
22726
22784
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.AlertCircle, { className: "h-3.5 w-3.5" }),
22727
22785
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: t("features.assistant.send_failed") }),
22728
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", onClick: () => _optionalChain([onRetry, 'optionalCall', _660 => _660(message.id)]), children: t("features.assistant.retry") })
22786
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", onClick: () => _optionalChain([onRetry, 'optionalCall', _661 => _661(message.id)]), children: t("features.assistant.retry") })
22729
22787
  ] })
22730
22788
  ] });
22731
22789
  }
@@ -22816,7 +22874,7 @@ function AssistantThread({
22816
22874
  }) {
22817
22875
  const lastMessageRef = _react.useRef.call(void 0, null);
22818
22876
  _react.useEffect.call(void 0, () => {
22819
- _optionalChain([lastMessageRef, 'access', _661 => _661.current, 'optionalAccess', _662 => _662.scrollIntoView, 'call', _663 => _663({ block: "start", behavior: "smooth" })]);
22877
+ _optionalChain([lastMessageRef, 'access', _662 => _662.current, 'optionalAccess', _663 => _663.scrollIntoView, 'call', _664 => _664({ block: "start", behavior: "smooth" })]);
22820
22878
  }, [messages.length, sending]);
22821
22879
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 min-w-0 overflow-x-hidden overflow-y-auto px-6 py-5", children: [
22822
22880
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -22855,7 +22913,7 @@ ${message.sources.map((source) => `- \`${source}\``).join("\n")}`;
22855
22913
  return _chunk5PNDDYGLjs.rehydrate.call(void 0, _chunk5PNDDYGLjs.Modules.HandbookThreadMessage, {
22856
22914
  jsonApi: {
22857
22915
  ...dehydrated.jsonApi,
22858
- attributes: { ..._nullishCoalesce(_optionalChain([dehydrated, 'access', _664 => _664.jsonApi, 'optionalAccess', _665 => _665.attributes]), () => ( {})), content }
22916
+ attributes: { ..._nullishCoalesce(_optionalChain([dehydrated, 'access', _665 => _665.jsonApi, 'optionalAccess', _666 => _666.attributes]), () => ( {})), content }
22859
22917
  },
22860
22918
  included: dehydrated.included
22861
22919
  });
@@ -22864,8 +22922,8 @@ _chunk7QVYU63Ejs.__name.call(void 0, withSourcesInContent, "withSourcesInContent
22864
22922
  function useHandbookAsk(params) {
22865
22923
  const t = _nextintl.useTranslations.call(void 0, );
22866
22924
  const generateUrl = usePageUrlGenerator();
22867
- const shouldSyncUrl = _nullishCoalesce(_optionalChain([params, 'optionalAccess', _666 => _666.syncUrl]), () => ( true));
22868
- const handbookThreadId = _optionalChain([params, 'optionalAccess', _667 => _667.handbookThreadId]);
22925
+ const shouldSyncUrl = _nullishCoalesce(_optionalChain([params, 'optionalAccess', _667 => _667.syncUrl]), () => ( true));
22926
+ const handbookThreadId = _optionalChain([params, 'optionalAccess', _668 => _668.handbookThreadId]);
22869
22927
  const [threads, setThreads] = _react.useState.call(void 0, []);
22870
22928
  const [thread, setThread] = _react.useState.call(void 0, void 0);
22871
22929
  const [messages, setMessages] = _react.useState.call(void 0, []);
@@ -22927,12 +22985,12 @@ function useHandbookAsk(params) {
22927
22985
  ]);
22928
22986
  setSending(true);
22929
22987
  try {
22930
- let id = _optionalChain([thread, 'optionalAccess', _668 => _668.id]);
22988
+ let id = _optionalChain([thread, 'optionalAccess', _669 => _669.id]);
22931
22989
  if (id === void 0) {
22932
22990
  const created = await _chunk5PNDDYGLjs.HandbookThreadService.create({
22933
22991
  id: _uuid.v4.call(void 0, ),
22934
22992
  question: trimmed,
22935
- handbookPageId: _optionalChain([options, 'optionalAccess', _669 => _669.handbookPageId])
22993
+ handbookPageId: _optionalChain([options, 'optionalAccess', _670 => _670.handbookPageId])
22936
22994
  });
22937
22995
  id = created.id;
22938
22996
  setThreads((current) => [created, ...current]);
@@ -22941,7 +22999,7 @@ function useHandbookAsk(params) {
22941
22999
  id: _uuid.v4.call(void 0, ),
22942
23000
  threadId: id,
22943
23001
  question: trimmed,
22944
- handbookPageId: _optionalChain([options, 'optionalAccess', _670 => _670.handbookPageId])
23002
+ handbookPageId: _optionalChain([options, 'optionalAccess', _671 => _671.handbookPageId])
22945
23003
  });
22946
23004
  }
22947
23005
  const loaded = await _chunk5PNDDYGLjs.HandbookThreadService.findOne({ id });
@@ -22962,7 +23020,7 @@ function useHandbookAsk(params) {
22962
23020
  setSending(false);
22963
23021
  }
22964
23022
  },
22965
- [messages.length, sending, syncUrl, t, _optionalChain([thread, 'optionalAccess', _671 => _671.id])]
23023
+ [messages.length, sending, syncUrl, t, _optionalChain([thread, 'optionalAccess', _672 => _672.id])]
22966
23024
  );
22967
23025
  return { threads, thread, messages, sending, ask, selectThread, startNew };
22968
23026
  }
@@ -23518,7 +23576,7 @@ function HandbookPageContainer({ handbookPageId }) {
23518
23576
  };
23519
23577
  }, []);
23520
23578
  const section = _react.useMemo.call(void 0,
23521
- () => sections.find((candidate) => candidate.key === _optionalChain([handbookPage, 'optionalAccess', _672 => _672.section])),
23579
+ () => sections.find((candidate) => candidate.key === _optionalChain([handbookPage, 'optionalAccess', _673 => _673.section])),
23522
23580
  [sections, handbookPage]
23523
23581
  );
23524
23582
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -23607,7 +23665,7 @@ function AssistantSidebar({
23607
23665
  className: "block w-full truncate rounded-md px-2 py-1.5 text-start text-sm " + (activeId === thread.id ? "bg-primary/10 text-primary" : "hover:bg-muted text-foreground"),
23608
23666
  children: [
23609
23667
  thread.title,
23610
- _optionalChain([renderThreadBadge, 'optionalCall', _673 => _673(thread)])
23668
+ _optionalChain([renderThreadBadge, 'optionalCall', _674 => _674(thread)])
23611
23669
  ]
23612
23670
  },
23613
23671
  thread.id
@@ -23643,7 +23701,7 @@ function HandbookAskContainer({ handbookThreadId } = {}) {
23643
23701
  AssistantSidebar,
23644
23702
  {
23645
23703
  threads,
23646
- activeId: _optionalChain([thread, 'optionalAccess', _674 => _674.id]),
23704
+ activeId: _optionalChain([thread, 'optionalAccess', _675 => _675.id]),
23647
23705
  onSelect: selectThread,
23648
23706
  onNew: startNew,
23649
23707
  newLabel: t("handbook.chat.new"),
@@ -23651,7 +23709,7 @@ function HandbookAskContainer({ handbookThreadId } = {}) {
23651
23709
  }
23652
23710
  ) })
23653
23711
  ),
23654
- [selectThread, startNew, t, _optionalChain([thread, 'optionalAccess', _675 => _675.id]), threads]
23712
+ [selectThread, startNew, t, _optionalChain([thread, 'optionalAccess', _676 => _676.id]), threads]
23655
23713
  );
23656
23714
  return (
23657
23715
  // `RoundPageContainer` reads the page heading from the shared context, and
@@ -23663,7 +23721,7 @@ function HandbookAskContainer({ handbookThreadId } = {}) {
23663
23721
  RoundPageContainer,
23664
23722
  {
23665
23723
  module: _chunk5PNDDYGLjs.Modules.HandbookPage,
23666
- id: _optionalChain([thread, 'optionalAccess', _676 => _676.id]),
23724
+ id: _optionalChain([thread, 'optionalAccess', _677 => _677.id]),
23667
23725
  fullWidth: true,
23668
23726
  forceHeader: true,
23669
23727
  defaultDetailsOpen: true,
@@ -23715,7 +23773,7 @@ function EntityMentionLinkView({ type, id, alias }) {
23715
23773
  } catch (e25) {
23716
23774
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: alias });
23717
23775
  }
23718
- if (!_optionalChain([module, 'optionalAccess', _677 => _677.pageUrl])) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: alias });
23776
+ if (!_optionalChain([module, 'optionalAccess', _678 => _678.pageUrl])) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: alias });
23719
23777
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Link, { href: generate({ page: module, id }), children: alias });
23720
23778
  }
23721
23779
  _chunk7QVYU63Ejs.__name.call(void 0, EntityMentionLinkView, "EntityMentionLinkView");
@@ -23847,13 +23905,13 @@ function AssistantContainer({
23847
23905
  AssistantSidebar,
23848
23906
  {
23849
23907
  threads: ctx.threads,
23850
- activeId: _optionalChain([ctx, 'access', _678 => _678.assistant, 'optionalAccess', _679 => _679.id]),
23908
+ activeId: _optionalChain([ctx, 'access', _679 => _679.assistant, 'optionalAccess', _680 => _680.id]),
23851
23909
  onSelect: ctx.selectThread,
23852
23910
  renderThreadBadge
23853
23911
  }
23854
23912
  ) })
23855
23913
  ),
23856
- [ctx.threads, _optionalChain([ctx, 'access', _680 => _680.assistant, 'optionalAccess', _681 => _681.id]), ctx.selectThread, renderThreadBadge]
23914
+ [ctx.threads, _optionalChain([ctx, 'access', _681 => _681.assistant, 'optionalAccess', _682 => _682.id]), ctx.selectThread, renderThreadBadge]
23857
23915
  );
23858
23916
  const thread = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: !showThread ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
23859
23917
  AssistantEmptyState,
@@ -23861,7 +23919,7 @@ function AssistantContainer({
23861
23919
  onSend: ctx.sendMessage,
23862
23920
  operatorMode: ctx.operatorMode,
23863
23921
  onOperatorModeChange: showOperatorToggle ? ctx.setOperatorMode : void 0,
23864
- composerLeading: _optionalChain([renderScopePicker, 'optionalCall', _682 => _682()])
23922
+ composerLeading: _optionalChain([renderScopePicker, 'optionalCall', _683 => _683()])
23865
23923
  }
23866
23924
  ) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
23867
23925
  ctx.assistant ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -23893,7 +23951,7 @@ function AssistantContainer({
23893
23951
  AssistantSidebar,
23894
23952
  {
23895
23953
  threads: ctx.threads,
23896
- activeId: _optionalChain([ctx, 'access', _683 => _683.assistant, 'optionalAccess', _684 => _684.id]),
23954
+ activeId: _optionalChain([ctx, 'access', _684 => _684.assistant, 'optionalAccess', _685 => _685.id]),
23897
23955
  onSelect: ctx.selectThread,
23898
23956
  onNew: ctx.startNew,
23899
23957
  renderThreadBadge
@@ -23906,7 +23964,7 @@ function AssistantContainer({
23906
23964
  RoundPageContainer,
23907
23965
  {
23908
23966
  module: _chunk5PNDDYGLjs.Modules.Assistant,
23909
- id: _optionalChain([ctx, 'access', _685 => _685.assistant, 'optionalAccess', _686 => _686.id]),
23967
+ id: _optionalChain([ctx, 'access', _686 => _686.assistant, 'optionalAccess', _687 => _687.id]),
23910
23968
  fullWidth: true,
23911
23969
  forceHeader: true,
23912
23970
  defaultDetailsOpen: true,
@@ -23934,7 +23992,7 @@ function flattenBlocks(blocks) {
23934
23992
  if (typeof inline === "string") return inline;
23935
23993
  if (!inline || typeof inline !== "object") return "";
23936
23994
  const node = inline;
23937
- if (node.type === "mention") return _nullishCoalesce(_optionalChain([node, 'access', _687 => _687.props, 'optionalAccess', _688 => _688.alias]), () => ( ""));
23995
+ if (node.type === "mention") return _nullishCoalesce(_optionalChain([node, 'access', _688 => _688.props, 'optionalAccess', _689 => _689.alias]), () => ( ""));
23938
23996
  if (typeof node.text === "string") return node.text;
23939
23997
  if (Array.isArray(node.content)) return node.content.map(readInline).join("");
23940
23998
  return "";
@@ -24050,7 +24108,7 @@ function AssistantPageContainer({
24050
24108
  AssistantSidebar,
24051
24109
  {
24052
24110
  threads: ctx.threads,
24053
- activeId: _optionalChain([ctx, 'access', _689 => _689.assistant, 'optionalAccess', _690 => _690.id]),
24111
+ activeId: _optionalChain([ctx, 'access', _690 => _690.assistant, 'optionalAccess', _691 => _691.id]),
24054
24112
  onSelect: ctx.selectThread,
24055
24113
  onNew: ctx.startNew
24056
24114
  }
@@ -24289,12 +24347,12 @@ function ApprovalActionCard({ actionId, summary, onResolved, hiddenRelationshipK
24289
24347
  const presented = _react.useMemo.call(void 0, () => parseOperatorProposal(actionProposal), [actionProposal]);
24290
24348
  const legacy = _react.useMemo.call(void 0, () => presented ? void 0 : parseLegacyProposal(toolArgs), [presented, toolArgs]);
24291
24349
  const isUpdate = toolName === "update_entity";
24292
- const entityLabel = humaniseType(_nullishCoalesce(_nullishCoalesce(_optionalChain([presented, 'optionalAccess', _691 => _691.type]), () => ( _optionalChain([legacy, 'optionalAccess', _692 => _692.type]))), () => ( "")));
24293
- const targetLabel = _nullishCoalesce(_optionalChain([presented, 'optionalAccess', _693 => _693.target, 'optionalAccess', _694 => _694.label]), () => ( ""));
24350
+ const entityLabel = humaniseType(_nullishCoalesce(_nullishCoalesce(_optionalChain([presented, 'optionalAccess', _692 => _692.type]), () => ( _optionalChain([legacy, 'optionalAccess', _693 => _693.type]))), () => ( "")));
24351
+ const targetLabel = _nullishCoalesce(_optionalChain([presented, 'optionalAccess', _694 => _694.target, 'optionalAccess', _695 => _695.label]), () => ( ""));
24294
24352
  const rows = _react.useMemo.call(void 0, () => {
24295
24353
  const yes = t("features.assistant.approval.proposal.yes");
24296
24354
  const no = t("features.assistant.approval.proposal.no");
24297
- const attributes = _nullishCoalesce(_optionalChain([presented, 'optionalAccess', _695 => _695.attributes]), () => ( _optionalChain([legacy, 'optionalAccess', _696 => _696.attributes])));
24355
+ const attributes = _nullishCoalesce(_optionalChain([presented, 'optionalAccess', _696 => _696.attributes]), () => ( _optionalChain([legacy, 'optionalAccess', _697 => _697.attributes])));
24298
24356
  const attributeRows = Object.entries(_nullishCoalesce(attributes, () => ( {}))).flatMap(([key, value]) => {
24299
24357
  const text = formatAttribute(value, yes, no);
24300
24358
  return text === void 0 ? [] : [{ key: `attribute:${key}`, label: humaniseKey(key), value: text }];
@@ -24332,7 +24390,7 @@ function ApprovalActionCard({ actionId, summary, onResolved, hiddenRelationshipK
24332
24390
  try {
24333
24391
  const message = kind === "approve" ? await _chunk5PNDDYGLjs.AssistantActionService.approve({ id: actionId }) : await _chunk5PNDDYGLjs.AssistantActionService.deny({ id: actionId });
24334
24392
  setStatus(kind === "approve" ? "executed" : "denied");
24335
- if (message) _optionalChain([onResolved, 'optionalCall', _697 => _697(message)]);
24393
+ if (message) _optionalChain([onResolved, 'optionalCall', _698 => _698(message)]);
24336
24394
  } catch (error) {
24337
24395
  console.error(`ApprovalActionCard: failed to ${kind} assistant action ${actionId}`, error);
24338
24396
  setFailed(true);
@@ -24469,10 +24527,10 @@ var useNotificationTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call
24469
24527
  const t = _nextintl.useTranslations.call(void 0, );
24470
24528
  const generateUrl = usePageUrlGenerator();
24471
24529
  const { loadNotifications } = useNotificationContext();
24472
- const archived = _optionalChain([params, 'access', _698 => _698.context, 'optionalAccess', _699 => _699.archived]) === true;
24530
+ const archived = _optionalChain([params, 'access', _699 => _699.context, 'optionalAccess', _700 => _700.archived]) === true;
24473
24531
  const archiveNotification = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, async (notification) => {
24474
24532
  await _chunk5PNDDYGLjs.NotificationService.archive({ id: notification.id });
24475
- _optionalChain([params, 'access', _700 => _700.dataRetriever, 'optionalAccess', _701 => _701.removeElement, 'call', _702 => _702(notification)]);
24533
+ _optionalChain([params, 'access', _701 => _701.dataRetriever, 'optionalAccess', _702 => _702.removeElement, 'call', _703 => _703(notification)]);
24476
24534
  await loadNotifications();
24477
24535
  }, "archiveNotification");
24478
24536
  const tableData = _react.useMemo.call(void 0, () => {
@@ -24511,7 +24569,7 @@ var useNotificationTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call
24511
24569
  const data = generateNotificationData({ notification, generateUrl });
24512
24570
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-foreground text-sm", children: t.rich(`notification.${notification.notificationType}.description`, {
24513
24571
  strong: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, (chunks) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "strong", { className: "font-medium", children: chunks }), "strong"),
24514
- actor: _nullishCoalesce(_optionalChain([data, 'access', _703 => _703.actor, 'optionalAccess', _704 => _704.name]), () => ( "")),
24572
+ actor: _nullishCoalesce(_optionalChain([data, 'access', _704 => _704.actor, 'optionalAccess', _705 => _705.name]), () => ( "")),
24515
24573
  title: data.title,
24516
24574
  message: _nullishCoalesce(notification.message, () => ( ""))
24517
24575
  }) });
@@ -24566,7 +24624,7 @@ var useNotificationTableStructure = /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call
24566
24624
  })
24567
24625
  };
24568
24626
  const columns = _react.useMemo.call(void 0, () => {
24569
- return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _705 => _705[field], 'optionalCall', _706 => _706()])).filter((col) => col !== void 0);
24627
+ return params.fields.map((field) => _optionalChain([fieldColumnMap, 'access', _706 => _706[field], 'optionalCall', _707 => _707()])).filter((col) => col !== void 0);
24570
24628
  }, [params.fields, fieldColumnMap, t, generateUrl]);
24571
24629
  return _react.useMemo.call(void 0, () => ({ data: tableData, columns }), [tableData, columns]);
24572
24630
  }, "useNotificationTableStructure");
@@ -24985,7 +25043,7 @@ var DEFAULT_TRANSLATIONS = {
24985
25043
  invalidEmail: "Please enter a valid email address"
24986
25044
  };
24987
25045
  async function copyToClipboard(text) {
24988
- if (_optionalChain([navigator, 'access', _707 => _707.clipboard, 'optionalAccess', _708 => _708.writeText])) {
25046
+ if (_optionalChain([navigator, 'access', _708 => _708.clipboard, 'optionalAccess', _709 => _709.writeText])) {
24989
25047
  try {
24990
25048
  await navigator.clipboard.writeText(text);
24991
25049
  return true;
@@ -25027,7 +25085,7 @@ function ReferralWidget({
25027
25085
  const linkInputRef = _react.useRef.call(void 0, null);
25028
25086
  const config = _chunk7ZRQOLSVjs.getReferralConfig.call(void 0, );
25029
25087
  const baseUrl = config.referralUrlBase || (typeof window !== "undefined" ? window.location.origin : "");
25030
- const referralUrl = _optionalChain([stats, 'optionalAccess', _709 => _709.referralCode]) ? `${baseUrl}${config.referralPath}?${config.urlParamName}=${stats.referralCode}` : "";
25088
+ const referralUrl = _optionalChain([stats, 'optionalAccess', _710 => _710.referralCode]) ? `${baseUrl}${config.referralPath}?${config.urlParamName}=${stats.referralCode}` : "";
25031
25089
  if (!_chunk7ZRQOLSVjs.isReferralEnabled.call(void 0, )) {
25032
25090
  return null;
25033
25091
  }
@@ -25037,7 +25095,7 @@ function ReferralWidget({
25037
25095
  if (success) {
25038
25096
  setCopied(true);
25039
25097
  _chunk5PNDDYGLjs.showToast.call(void 0, t.copiedMessage);
25040
- _optionalChain([onLinkCopied, 'optionalCall', _710 => _710()]);
25098
+ _optionalChain([onLinkCopied, 'optionalCall', _711 => _711()]);
25041
25099
  setTimeout(() => setCopied(false), 2e3);
25042
25100
  } else {
25043
25101
  _chunk5PNDDYGLjs.showError.call(void 0, t.copyError);
@@ -25051,12 +25109,12 @@ function ReferralWidget({
25051
25109
  try {
25052
25110
  await sendInvite(email);
25053
25111
  _chunk5PNDDYGLjs.showToast.call(void 0, t.inviteSent);
25054
- _optionalChain([onInviteSent, 'optionalCall', _711 => _711(email)]);
25112
+ _optionalChain([onInviteSent, 'optionalCall', _712 => _712(email)]);
25055
25113
  setEmail("");
25056
25114
  } catch (err) {
25057
25115
  const error2 = err instanceof Error ? err : new Error(t.inviteError);
25058
25116
  _chunk5PNDDYGLjs.showError.call(void 0, error2.message);
25059
- _optionalChain([onInviteError, 'optionalCall', _712 => _712(error2)]);
25117
+ _optionalChain([onInviteError, 'optionalCall', _713 => _713(error2)]);
25060
25118
  }
25061
25119
  }, [email, sendInvite, t.inviteSent, t.inviteError, t.invalidEmail, onInviteSent, onInviteError]);
25062
25120
  const handleEmailKeyDown = _react.useCallback.call(void 0,
@@ -25394,6 +25452,7 @@ function UserRoleAdd({ user, refresh }) {
25394
25452
  CommandItem,
25395
25453
  {
25396
25454
  className: "cursor-pointer hover:bg-muted data-selected:hover:bg-muted bg-transparent data-selected:bg-transparent",
25455
+ value: role.id,
25397
25456
  onSelect: () => addUserToRole(role),
25398
25457
  onClick: () => addUserToRole(role),
25399
25458
  children: t(`role.roles`, { role: role.id.replaceAll(`-`, ``) })
@@ -25810,7 +25869,7 @@ function OAuthClientList({
25810
25869
  OAuthClientCard,
25811
25870
  {
25812
25871
  client,
25813
- onClick: () => _optionalChain([onClientClick, 'optionalCall', _713 => _713(client)]),
25872
+ onClick: () => _optionalChain([onClientClick, 'optionalCall', _714 => _714(client)]),
25814
25873
  onEdit: onEditClick ? () => onEditClick(client) : void 0,
25815
25874
  onDelete: onDeleteClick ? () => onDeleteClick(client) : void 0
25816
25875
  },
@@ -25833,11 +25892,11 @@ function OAuthClientForm({
25833
25892
  }) {
25834
25893
  const isEditMode = !!client;
25835
25894
  const [formState, setFormState] = _react.useState.call(void 0, {
25836
- name: _optionalChain([client, 'optionalAccess', _714 => _714.name]) || "",
25837
- description: _optionalChain([client, 'optionalAccess', _715 => _715.description]) || "",
25838
- redirectUris: _optionalChain([client, 'optionalAccess', _716 => _716.redirectUris, 'optionalAccess', _717 => _717.length]) ? client.redirectUris : [""],
25895
+ name: _optionalChain([client, 'optionalAccess', _715 => _715.name]) || "",
25896
+ description: _optionalChain([client, 'optionalAccess', _716 => _716.description]) || "",
25897
+ redirectUris: _optionalChain([client, 'optionalAccess', _717 => _717.redirectUris, 'optionalAccess', _718 => _718.length]) ? client.redirectUris : [""],
25839
25898
  allowedScopes: client ? client.allowedScopes || [] : defaultScopes,
25840
- isConfidential: _nullishCoalesce(_optionalChain([client, 'optionalAccess', _718 => _718.isConfidential]), () => ( true))
25899
+ isConfidential: _nullishCoalesce(_optionalChain([client, 'optionalAccess', _719 => _719.isConfidential]), () => ( true))
25841
25900
  });
25842
25901
  const [errors, setErrors] = _react.useState.call(void 0, {});
25843
25902
  const validate = _react.useCallback.call(void 0, () => {
@@ -26066,7 +26125,7 @@ function OAuthClientDetail({
26066
26125
  ] }),
26067
26126
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
26068
26127
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { children: "Allowed Scopes" }),
26069
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-wrap gap-2", children: client.allowedScopes.map((scope) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Badge, { variant: "secondary", children: _optionalChain([_chunk5PNDDYGLjs.OAUTH_SCOPE_DISPLAY, 'access', _719 => _719[scope], 'optionalAccess', _720 => _720.name]) || scope }, scope)) })
26128
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-wrap gap-2", children: client.allowedScopes.map((scope) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Badge, { variant: "secondary", children: _optionalChain([_chunk5PNDDYGLjs.OAUTH_SCOPE_DISPLAY, 'access', _720 => _720[scope], 'optionalAccess', _721 => _721.name]) || scope }, scope)) })
26070
26129
  ] }),
26071
26130
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
26072
26131
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Label, { children: "Grant Types" }),
@@ -26247,7 +26306,7 @@ function OAuthConsentScreen({
26247
26306
  if (error || !clientInfo) {
26248
26307
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-dvh flex items-center justify-center p-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Card, { className: "w-full max-w-md", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CardContent, { className: "py-8", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Alert, { variant: "destructive", children: [
26249
26308
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.AlertTriangle, { className: "h-4 w-4" }),
26250
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AlertDescription, { children: _optionalChain([error, 'optionalAccess', _721 => _721.message]) || t("oauth.consent.invalid_request") })
26309
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AlertDescription, { children: _optionalChain([error, 'optionalAccess', _722 => _722.message]) || t("oauth.consent.invalid_request") })
26251
26310
  ] }) }) }) });
26252
26311
  }
26253
26312
  const { client, scopes } = clientInfo;
@@ -26468,7 +26527,7 @@ function WaitlistForm({ onSuccess }) {
26468
26527
  questionnaire: values.questionnaire
26469
26528
  });
26470
26529
  setIsSuccess(true);
26471
- _optionalChain([onSuccess, 'optionalCall', _722 => _722()]);
26530
+ _optionalChain([onSuccess, 'optionalCall', _723 => _723()]);
26472
26531
  } catch (e) {
26473
26532
  errorToast({ error: e });
26474
26533
  } finally {
@@ -27008,7 +27067,7 @@ var ModuleEditor = _react.memo.call(void 0, /* @__PURE__ */ _chunk7QVYU63Ejs.__n
27008
27067
  ] }),
27009
27068
  roleIds.map((roleId) => {
27010
27069
  const roleTokens = block[roleId];
27011
- const roleLabel = _nullishCoalesce(_optionalChain([roleNames, 'optionalAccess', _723 => _723[roleId]]), () => ( roleId));
27070
+ const roleLabel = _nullishCoalesce(_optionalChain([roleNames, 'optionalAccess', _724 => _724[roleId]]), () => ( roleId));
27012
27071
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "tr", { className: "border-b last:border-b-0", children: [
27013
27072
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "td", { className: "px-4 py-1 text-xs font-medium text-muted-foreground", children: roleLabel }),
27014
27073
  _chunk7ZRQOLSVjs.ACTION_TYPES.map((action) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "td", { className: "px-2 py-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -27045,7 +27104,7 @@ function RbacContainer() {
27045
27104
  }, []);
27046
27105
  const sortedModuleIds = _react.useMemo.call(void 0, () => {
27047
27106
  if (!matrix) return [];
27048
- return Object.keys(matrix).sort((a, b) => (_nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _724 => _724[a]]), () => ( a))).localeCompare(_nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _725 => _725[b]]), () => ( b))));
27107
+ return Object.keys(matrix).sort((a, b) => (_nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _725 => _725[a]]), () => ( a))).localeCompare(_nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _726 => _726[b]]), () => ( b))));
27049
27108
  }, [matrix, moduleNames]);
27050
27109
  const roleIds = _react.useMemo.call(void 0, () => {
27051
27110
  if (roleNames) {
@@ -27108,7 +27167,7 @@ function RbacContainer() {
27108
27167
  id === selectedModuleId && "bg-muted font-medium text-foreground",
27109
27168
  id !== selectedModuleId && "text-muted-foreground"
27110
27169
  ),
27111
- children: _nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _726 => _726[id]]), () => ( id))
27170
+ children: _nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _727 => _727[id]]), () => ( id))
27112
27171
  }
27113
27172
  ) }, id)) }) }),
27114
27173
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "section", { className: "flex-1 overflow-y-auto p-4", children: selectedModuleId && selectedBlock ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -27116,7 +27175,7 @@ function RbacContainer() {
27116
27175
  {
27117
27176
  moduleId: selectedModuleId,
27118
27177
  block: selectedBlock,
27119
- moduleLabel: _nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _727 => _727[selectedModuleId]]), () => ( selectedModuleId)),
27178
+ moduleLabel: _nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _728 => _728[selectedModuleId]]), () => ( selectedModuleId)),
27120
27179
  roleIds,
27121
27180
  roleNames,
27122
27181
  onOpenPicker: openPicker
@@ -27127,12 +27186,12 @@ function RbacContainer() {
27127
27186
  RbacPermissionPicker,
27128
27187
  {
27129
27188
  open: !!activePicker,
27130
- anchor: _nullishCoalesce(_optionalChain([activePicker, 'optionalAccess', _728 => _728.anchor]), () => ( null)),
27189
+ anchor: _nullishCoalesce(_optionalChain([activePicker, 'optionalAccess', _729 => _729.anchor]), () => ( null)),
27131
27190
  value: activeValue,
27132
- isRoleColumn: _nullishCoalesce(_optionalChain([activePicker, 'optionalAccess', _729 => _729.isRoleColumn]), () => ( false)),
27191
+ isRoleColumn: _nullishCoalesce(_optionalChain([activePicker, 'optionalAccess', _730 => _730.isRoleColumn]), () => ( false)),
27133
27192
  knownSegments: activeSegments,
27134
27193
  onSetValue: handleSetValue,
27135
- onClear: _optionalChain([activePicker, 'optionalAccess', _730 => _730.isRoleColumn]) ? handleClear : void 0,
27194
+ onClear: _optionalChain([activePicker, 'optionalAccess', _731 => _731.isRoleColumn]) ? handleClear : void 0,
27136
27195
  onClose: closePicker
27137
27196
  }
27138
27197
  )
@@ -27199,7 +27258,7 @@ function RbacByRoleContainer() {
27199
27258
  }, [roleNames]);
27200
27259
  const sortedModuleIds = _react.useMemo.call(void 0, () => {
27201
27260
  if (!matrix) return [];
27202
- return Object.keys(matrix).sort((a, b) => (_nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _731 => _731[a]]), () => ( a))).localeCompare(_nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _732 => _732[b]]), () => ( b))));
27261
+ return Object.keys(matrix).sort((a, b) => (_nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _732 => _732[a]]), () => ( a))).localeCompare(_nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _733 => _733[b]]), () => ( b))));
27203
27262
  }, [matrix, moduleNames]);
27204
27263
  _react.useEffect.call(void 0, () => {
27205
27264
  if (!selectedRoleId && sortedRoleIds.length > 0) {
@@ -27248,7 +27307,7 @@ function RbacByRoleContainer() {
27248
27307
  id === selectedRoleId && "bg-muted font-medium text-foreground",
27249
27308
  id !== selectedRoleId && "text-muted-foreground"
27250
27309
  ),
27251
- children: _nullishCoalesce(_optionalChain([roleNames, 'optionalAccess', _733 => _733[id]]), () => ( id))
27310
+ children: _nullishCoalesce(_optionalChain([roleNames, 'optionalAccess', _734 => _734[id]]), () => ( id))
27252
27311
  }
27253
27312
  ) }, id)) }) }),
27254
27313
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "section", { className: "flex-1 overflow-y-auto p-4", children: sortedModuleIds.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rounded-lg border border-accent bg-card", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "overflow-x-auto", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "table", { className: "w-full text-sm", children: [
@@ -27268,7 +27327,7 @@ function RbacByRoleContainer() {
27268
27327
  if (!block) return null;
27269
27328
  const defaultTokens = _nullishCoalesce(block.default, () => ( []));
27270
27329
  const roleTokens = block[selectedRoleId];
27271
- const moduleLabel = _nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _734 => _734[moduleId]]), () => ( moduleId));
27330
+ const moduleLabel = _nullishCoalesce(_optionalChain([moduleNames, 'optionalAccess', _735 => _735[moduleId]]), () => ( moduleId));
27272
27331
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react.Fragment, { children: [
27273
27332
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "tr", { className: "border-b bg-muted/40", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
27274
27333
  "td",
@@ -27283,7 +27342,7 @@ function RbacByRoleContainer() {
27283
27342
  _chunk7ZRQOLSVjs.ACTION_TYPES.map((action) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "td", { className: "px-2 py-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RbacPermissionCell, { value: cellValue2(defaultTokens, action) }) }, action))
27284
27343
  ] }),
27285
27344
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "tr", { className: "border-b last:border-b-0", children: [
27286
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "td", { className: "px-4 py-1 text-xs font-medium text-muted-foreground", children: _nullishCoalesce(_optionalChain([roleNames, 'optionalAccess', _735 => _735[selectedRoleId]]), () => ( selectedRoleId)) }),
27345
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "td", { className: "px-4 py-1 text-xs font-medium text-muted-foreground", children: _nullishCoalesce(_optionalChain([roleNames, 'optionalAccess', _736 => _736[selectedRoleId]]), () => ( selectedRoleId)) }),
27287
27346
  _chunk7ZRQOLSVjs.ACTION_TYPES.map((action) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "td", { className: "px-2 py-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
27288
27347
  CellButton3,
27289
27348
  {
@@ -27304,12 +27363,12 @@ function RbacByRoleContainer() {
27304
27363
  RbacPermissionPicker,
27305
27364
  {
27306
27365
  open: !!activePicker,
27307
- anchor: _nullishCoalesce(_optionalChain([activePicker, 'optionalAccess', _736 => _736.anchor]), () => ( null)),
27366
+ anchor: _nullishCoalesce(_optionalChain([activePicker, 'optionalAccess', _737 => _737.anchor]), () => ( null)),
27308
27367
  value: activeValue,
27309
- isRoleColumn: _nullishCoalesce(_optionalChain([activePicker, 'optionalAccess', _737 => _737.isRoleColumn]), () => ( false)),
27368
+ isRoleColumn: _nullishCoalesce(_optionalChain([activePicker, 'optionalAccess', _738 => _738.isRoleColumn]), () => ( false)),
27310
27369
  knownSegments: activeSegments,
27311
27370
  onSetValue: handleSetValue,
27312
- onClear: _optionalChain([activePicker, 'optionalAccess', _738 => _738.isRoleColumn]) ? handleClear : void 0,
27371
+ onClear: _optionalChain([activePicker, 'optionalAccess', _739 => _739.isRoleColumn]) ? handleClear : void 0,
27313
27372
  onClose: closePicker
27314
27373
  }
27315
27374
  )
@@ -27921,5 +27980,6 @@ _chunk7QVYU63Ejs.__name.call(void 0, RbacByRoleContainer, "RbacByRoleContainer")
27921
27980
 
27922
27981
 
27923
27982
 
27924
- exports.JsonApiProvider = JsonApiProvider; exports.useJsonApiGet = useJsonApiGet; exports.useJsonApiMutation = useJsonApiMutation; exports.useRehydration = useRehydration; exports.useRehydrationList = useRehydrationList; exports.TableGeneratorRegistry = TableGeneratorRegistry; exports.tableGeneratorRegistry = tableGeneratorRegistry; exports.usePageUrlGenerator = usePageUrlGenerator; exports.useUrlRewriter = useUrlRewriter; exports.useDataListRetriever = useDataListRetriever; exports.useDebounce = useDebounce2; exports.registerTableGenerator = registerTableGenerator; exports.useTableGenerator = useTableGenerator; exports.computeLayeredLayout = computeLayeredLayout; exports.fitLayeredLayoutToAspectRatio = fitLayeredLayoutToAspectRatio; exports.useCustomD3Graph = useCustomD3Graph; exports.SharedProvider = SharedProvider; exports.useSharedContext = useSharedContext; exports.AdministrationProvider = AdministrationProvider; exports.useAdministrationContext = useAdministrationContext; exports.SocketContext = SocketContext; exports.SocketProvider = SocketProvider; exports.useSocketContext = useSocketContext; exports.CurrentUserProvider = CurrentUserProvider; exports.useCurrentUserContext = useCurrentUserContext; exports.useCurrentUserContextOptional = useCurrentUserContextOptional; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AlertAction = AlertAction; exports.buttonVariants = buttonVariants; exports.Button = Button; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogMedia = AlertDialogMedia; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.Avatar = Avatar; exports.AvatarImage = AvatarImage; exports.AvatarFallback = AvatarFallback; exports.AvatarBadge = AvatarBadge; exports.AvatarGroup = AvatarGroup; exports.AvatarGroupCount = AvatarGroupCount; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.DirectionProvider = DirectionProvider; exports.useDir = useDir; exports.Calendar = Calendar; exports.CalendarDayButton = CalendarDayButton; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardAction = CardAction; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.useCarousel = useCarousel; exports.Carousel = Carousel; exports.CarouselContent = CarouselContent; exports.CarouselItem = CarouselItem; exports.CarouselPrevious = CarouselPrevious; exports.CarouselNext = CarouselNext; exports.ChartContainer = ChartContainer; exports.ChartStyle = ChartStyle; exports.ChartTooltip = ChartTooltip; exports.ChartTooltipContent = ChartTooltipContent; exports.ChartLegend = ChartLegend; exports.ChartLegendContent = ChartLegendContent; exports.Checkbox = Checkbox; exports.Collapsible = Collapsible; exports.CollapsibleTrigger = CollapsibleTrigger; exports.CollapsibleContent = CollapsibleContent; exports.Input = Input; exports.Textarea = Textarea; exports.InputGroup = InputGroup; exports.InputGroupAddon = InputGroupAddon; exports.InputGroupButton = InputGroupButton; exports.InputGroupText = InputGroupText; exports.InputGroupInput = InputGroupInput; exports.InputGroupTextarea = InputGroupTextarea; exports.Combobox = Combobox; exports.ComboboxValue = ComboboxValue; exports.ComboboxTrigger = ComboboxTrigger; exports.ComboboxInput = ComboboxInput; exports.ComboboxContent = ComboboxContent; exports.ComboboxList = ComboboxList; exports.ComboboxItem = ComboboxItem; exports.ComboboxGroup = ComboboxGroup; exports.ComboboxLabel = ComboboxLabel; exports.ComboboxCollection = ComboboxCollection; exports.ComboboxEmpty = ComboboxEmpty; exports.ComboboxSeparator = ComboboxSeparator; exports.ComboboxChips = ComboboxChips; exports.ComboboxChip = ComboboxChip; exports.ComboboxChipsInput = ComboboxChipsInput; exports.useComboboxAnchor = useComboboxAnchor; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.Command = Command; exports.CommandDialog = CommandDialog; exports.CommandInput = CommandInput; exports.CommandList = CommandList; exports.CommandEmpty = CommandEmpty; exports.CommandGroup = CommandGroup; exports.CommandSeparator = CommandSeparator; exports.CommandItem = CommandItem; exports.CommandShortcut = CommandShortcut; exports.ConfirmDialog = ConfirmDialog; exports.ContextMenu = ContextMenu; exports.ContextMenuPortal = ContextMenuPortal; exports.ContextMenuTrigger = ContextMenuTrigger; exports.ContextMenuContent = ContextMenuContent; exports.ContextMenuGroup = ContextMenuGroup; exports.ContextMenuLabel = ContextMenuLabel; exports.ContextMenuItem = ContextMenuItem; exports.ContextMenuSub = ContextMenuSub; exports.ContextMenuSubTrigger = ContextMenuSubTrigger; exports.ContextMenuSubContent = ContextMenuSubContent; exports.ContextMenuCheckboxItem = ContextMenuCheckboxItem; exports.ContextMenuRadioGroup = ContextMenuRadioGroup; exports.ContextMenuRadioItem = ContextMenuRadioItem; exports.ContextMenuSeparator = ContextMenuSeparator; exports.ContextMenuShortcut = ContextMenuShortcut; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerPortal = DrawerPortal; exports.DrawerClose = DrawerClose; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerFooter = DrawerFooter; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DropdownMenu = DropdownMenu; exports.DropdownMenuPortal = DropdownMenuPortal; exports.DropdownMenuTrigger = DropdownMenuTrigger; exports.DropdownMenuContent = DropdownMenuContent; exports.DropdownMenuGroup = DropdownMenuGroup; exports.DropdownMenuLabel = DropdownMenuLabel; exports.DropdownMenuItem = DropdownMenuItem; exports.DropdownMenuSub = DropdownMenuSub; exports.DropdownMenuSubTrigger = DropdownMenuSubTrigger; exports.DropdownMenuSubContent = DropdownMenuSubContent; exports.DropdownMenuCheckboxItem = DropdownMenuCheckboxItem; exports.DropdownMenuRadioGroup = DropdownMenuRadioGroup; exports.DropdownMenuRadioItem = DropdownMenuRadioItem; exports.DropdownMenuSeparator = DropdownMenuSeparator; exports.DropdownMenuShortcut = DropdownMenuShortcut; exports.EmptyState = EmptyState; exports.Label = Label; exports.Separator = Separator; exports.FieldSet = FieldSet; exports.FieldLegend = FieldLegend; exports.FieldGroup = FieldGroup; exports.Field = Field; exports.FieldContent = FieldContent; exports.FieldLabel = FieldLabel; exports.FieldTitle = FieldTitle; exports.FieldDescription = FieldDescription; exports.FieldSeparator = FieldSeparator; exports.FieldError = FieldError; exports.Form = Form; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.InputOTP = InputOTP; exports.InputOTPGroup = InputOTPGroup; exports.InputOTPSlot = InputOTPSlot; exports.InputOTPSeparator = InputOTPSeparator; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuPositioner = NavigationMenuPositioner; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.Popover = Popover; exports.PopoverTrigger = PopoverTrigger; exports.PopoverContent = PopoverContent; exports.PopoverHeader = PopoverHeader; exports.PopoverTitle = PopoverTitle; exports.PopoverDescription = PopoverDescription; exports.Progress = Progress; exports.ProgressTrack = ProgressTrack; exports.ProgressIndicator = ProgressIndicator; exports.ProgressLabel = ProgressLabel; exports.ProgressValue = ProgressValue; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.ResizablePanelGroup = ResizablePanelGroup; exports.ResizablePanel = ResizablePanel; exports.ResizableHandle = ResizableHandle; exports.ScrollArea = ScrollArea; exports.ScrollBar = ScrollBar; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.Skeleton = Skeleton; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip2; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.useSidebar = useSidebar; exports.useSidebarControls = useSidebarControls; exports.useOptionalSidebar = useOptionalSidebar; exports.SidebarProvider = SidebarProvider; exports.Sidebar = Sidebar; exports.SidebarTrigger = SidebarTrigger; exports.SidebarRail = SidebarRail; exports.SidebarInset = SidebarInset; exports.SidebarInput = SidebarInput; exports.SidebarHeader = SidebarHeader; exports.SidebarFooter = SidebarFooter; exports.SidebarSeparator = SidebarSeparator; exports.SidebarContent = SidebarContent; exports.SidebarGroup = SidebarGroup; exports.SidebarGroupLabel = SidebarGroupLabel; exports.SidebarGroupAction = SidebarGroupAction; exports.SidebarGroupContent = SidebarGroupContent; exports.SidebarMenu = SidebarMenu; exports.SidebarMenuItem = SidebarMenuItem; exports.SidebarMenuButton = SidebarMenuButton; exports.SidebarMenuAction = SidebarMenuAction; exports.SidebarMenuBadge = SidebarMenuBadge; exports.SidebarMenuSkeleton = SidebarMenuSkeleton; exports.SidebarMenuSub = SidebarMenuSub; exports.SidebarMenuSubItem = SidebarMenuSubItem; exports.SidebarMenuSubButton = SidebarMenuSubButton; exports.Slider = Slider; exports.Toaster = Toaster; exports.spinnerVariants = spinnerVariants; exports.Spinner = Spinner; exports.Switch = Switch; exports.Table = Table; exports.TableHeader = TableHeader; exports.TableBody = TableBody; exports.TableFooter = TableFooter; exports.TableRow = TableRow; exports.TableHead = TableHead; exports.TableCell = TableCell; exports.TableCaption = TableCaption; exports.Tabs = Tabs; exports.tabsListVariants = tabsListVariants; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.KanbanRoot = KanbanRoot; exports.KanbanBoard = KanbanBoard; exports.KanbanColumn = KanbanColumn; exports.KanbanColumnHandle = KanbanColumnHandle; exports.KanbanItem = KanbanItem; exports.KanbanItemHandle = KanbanItemHandle; exports.KanbanOverlay = KanbanOverlay; exports.Link = Link; exports.MultiSelect = MultiSelect; exports.useDebounce2 = useDebounce; exports.MultipleSelector = MultipleSelector; exports.EntityAvatar = EntityAvatar; exports.errorToast = errorToast; exports.EditableAvatar = EditableAvatar; exports.TableCellAvatar = TableCellAvatar; exports.HeaderChildrenProvider = HeaderChildrenProvider; exports.useHeaderChildren = useHeaderChildren; exports.useHeaderMobileChildren = useHeaderMobileChildren; exports.useHeaderRootLabel = useHeaderRootLabel; exports.HeaderLeftContentProvider = HeaderLeftContentProvider; exports.useHeaderLeftContent = useHeaderLeftContent; exports.HeaderLogoProvider = HeaderLogoProvider; exports.useHeaderLogo = useHeaderLogo; exports.BreadcrumbNavigation = BreadcrumbNavigation; exports.ContentTitle = ContentTitle; exports.BreadcrumbRootProvider = BreadcrumbRootProvider; exports.useIsBreadcrumbRootHidden = useIsBreadcrumbRootHidden; exports.Header = Header; exports.MobileNavigationProvider = MobileNavigationProvider; exports.useMobileNavigationItems = useMobileNavigationItems; exports.MobileNavigationBar = MobileNavigationBar; exports.ModeToggleSwitch = ModeToggleSwitch; exports.PageSection = PageSection; exports.recentPagesAtom = recentPagesAtom; exports.RecentPagesNavigator = RecentPagesNavigator; exports.PageContainer = PageContainer; exports.partitionTabs = partitionTabs; exports.MermaidDiagram = MermaidDiagram; exports.ReactMarkdownContainer = ReactMarkdownContainer; exports.HEADER_ROW_MIN_H = HEADER_ROW_MIN_H; exports.RoundPageContainerTitle = RoundPageContainerTitle; exports.SectionHeader = SectionHeader; exports.MicroLabel = MicroLabel; exports.DetailField = DetailField; exports.RoundPageContainer = RoundPageContainer; exports.TabsContainer = TabsContainer; exports.AttributeElement = AttributeElement; exports.AllUsersListContainer = AllUsersListContainer; exports.PlatformUsersList = PlatformUsersList; exports.PlatformUsersContainer = PlatformUsersContainer; exports.UserContent = UserContent; exports.UserAvatar = UserAvatar; exports.UserAvatarList = UserAvatarList; exports.useUserSearch = useUserSearch; exports.useUserTableStructure = useUserTableStructure; exports.UserSearchPopover = UserSearchPopover; exports.UserIndexDetails = UserIndexDetails; exports.UserStanadaloneDetails = UserStanadaloneDetails; exports.UserContainer = UserContainer; exports.UserIndexContainer = UserIndexContainer; exports.UsersListContainer = UsersListContainer; exports.AdminUsersList = AdminUsersList; exports.CompanyUsersList = CompanyUsersList; exports.ContributorsList = ContributorsList; exports.RelevantUsersList = RelevantUsersList; exports.RoleUsersList = RoleUsersList; exports.UserListInAdd = UserListInAdd; exports.UsersList = UsersList; exports.UsersListByContentIds = UsersListByContentIds; exports.AllowedUsersDetails = AllowedUsersDetails; exports.ErrorDetails = ErrorDetails; exports.BlockNoteEditorMentionHoverCard = BlockNoteEditorMentionHoverCard; exports.mentionDataAttrs = mentionDataAttrs; exports.parseMentionElement = parseMentionElement; exports.createMentionInlineContentSpec = createMentionInlineContentSpec; exports.useMentionInsert = useMentionInsert; exports.BlockNoteEditorMentionSuggestionMenu = BlockNoteEditorMentionSuggestionMenu; exports.BlockNoteEditorContainer = BlockNoteEditorContainer; exports.BlockNoteViewerContainer = BlockNoteViewerContainer; exports.FormFeatures = FormFeatures; exports.CommonAssociationTrigger = CommonAssociationTrigger; exports.CommonAssociationCommandDialog = CommonAssociationCommandDialog; exports.triggerAssociationToast = triggerAssociationToast; exports.ActionBarProvider = ActionBarProvider; exports.useIsInActionBar = useIsInActionBar; exports.CommonDeleter = CommonDeleter; exports.CommonEditorButtons = CommonEditorButtons; exports.CommonEditorDiscardDialog = CommonEditorDiscardDialog; exports.CommonEditorHeader = CommonEditorHeader; exports.CommonEditorTrigger = CommonEditorTrigger; exports.CommonAddTrigger = CommonAddTrigger; exports.CurrencyInput = CurrencyInput; exports.DatePickerPopover = DatePickerPopover; exports.nextDateRange = nextDateRange; exports.DateRangeSelector = DateRangeSelector; exports.hasOpenInnerLayer = hasOpenInnerLayer; exports.useEditorDialog = useEditorDialog; exports.EditorSheet = EditorSheet; exports.FormFieldWrapper = FormFieldWrapper; exports.EntityMultiSelector = EntityMultiSelector; exports.EntitySelector = EntitySelector; exports.useFileUpload = useFileUpload; exports.FileUploader = FileUploader; exports.FileUploaderContent = FileUploaderContent; exports.FileUploaderItem = FileUploaderItem; exports.FileInput = FileInput; exports.FormBlockNote = FormBlockNote; exports.FormCheckbox = FormCheckbox; exports.FormDate = FormDate; exports.FormDateTime = FormDateTime; exports.FormInput = FormInput; exports.FormBody = FormBody; exports.FormSection = FormSection; exports.FormRow = FormRow; exports.FormCol = FormCol; exports.PasswordInput = PasswordInput; exports.FormPassword = FormPassword; exports.FormPlaceAutocomplete = FormPlaceAutocomplete; exports.FormSelect = FormSelect; exports.FormSlider = FormSlider; exports.FormSwitch = FormSwitch; exports.FormTextarea = FormTextarea; exports.GdprConsentCheckbox = GdprConsentCheckbox; exports.MultiFileUploader = MultiFileUploader; exports.PageContainerContentDetails = PageContainerContentDetails; exports.PageContentContainer = PageContentContainer; exports.cellComponent = cellComponent; exports.cellDate = cellDate; exports.cellDateTime = cellDateTime; exports.cellId = cellId; exports.cellLink = cellLink; exports.cellUrl = cellUrl; exports.ContentTableSearch = ContentTableSearch; exports.ContentListTable = ContentListTable; exports.ContentListGrid = ContentListGrid; exports.ItalianFiscalData_default = ItalianFiscalData_default; exports.ItalianFiscalDataDisplay = ItalianFiscalDataDisplay; exports.parseFiscalData = parseFiscalData; exports.FiscalDataDisplay = FiscalDataDisplay; exports.EntityHeroLayout = EntityHeroLayout; exports.EntityHero = EntityHero; exports.EntityHeroAvatar = EntityHeroAvatar; exports.EntityHeroMetaRow = EntityHeroMetaRow; exports.EntitySection = EntitySection; exports.GdprConsentSection = GdprConsentSection; exports.AuthContainer = AuthContainer; exports.BackupCodesDialog = BackupCodesDialog; exports.TotpInput = TotpInput; exports.DisableTwoFactorDialog = DisableTwoFactorDialog; exports.PasskeyList = PasskeyList; exports.PasskeySetupDialog = PasskeySetupDialog; exports.TotpAuthenticatorList = TotpAuthenticatorList; exports.TotpSetupDialog = TotpSetupDialog; exports.TwoFactorSettings = TwoFactorSettings; exports.SecurityContainer = SecurityContainer; exports.LandingComponent = LandingComponent; exports.AcceptInvitation = AcceptInvitation; exports.ActivateAccount = ActivateAccount; exports.Cookies = Cookies; exports.ForgotPassword = ForgotPassword; exports.Login = Login; exports.Logout = Logout; exports.RefreshUser = RefreshUser; exports.ResetPassword = ResetPassword; exports.PasskeyButton = PasskeyButton; exports.TwoFactorChallenge = TwoFactorChallenge; exports.AdminIndexGrid = AdminIndexGrid; exports.AdminIndexContainer = AdminIndexContainer; exports.ADMINISTRATION_I18N_KEYS = ADMINISTRATION_I18N_KEYS; exports.AI_CONNECTIONS_I18N_KEYS = AI_CONNECTIONS_I18N_KEYS; exports.AI_CONNECTIONS_ADMIN_PAGE_URL = AI_CONNECTIONS_ADMIN_PAGE_URL; exports.AiConnectionsProvider = AiConnectionsProvider; exports.useAiConnections = useAiConnections; exports.AiConnectionDeleter = AiConnectionDeleter; exports.AiConnectionEditor = AiConnectionEditor; exports.AiConnectionTypeCard = AiConnectionTypeCard; exports.AI_CONNECTION_TYPE_ORDER = AI_CONNECTION_TYPE_ORDER; exports.AiConnectionsContainer = AiConnectionsContainer; exports.CompanyContent = CompanyContent; exports.TokenStatusIndicator = TokenStatusIndicator; exports.CompanyDetails = CompanyDetails; exports.AdminCompanyContainer = AdminCompanyContainer; exports.CompanyEditor = CompanyEditor; exports.CompaniesList = CompaniesList; exports.CompaniesListContainer = CompaniesListContainer; exports.CompanyContainer = CompanyContainer; exports.CompanyConfigurationEditor = CompanyConfigurationEditor; exports.CompanyDeleter = CompanyDeleter; exports.ContentsList = ContentsList; exports.ContentsListById = ContentsListById; exports.RelevantContentsList = RelevantContentsList; exports.HowToCommandViewer = HowToCommandViewer; exports.HowToCommand = HowToCommand; exports.HowToDeleter = HowToDeleter; exports.HowToMultiSelector = HowToMultiSelector; exports.HowToEditor = HowToEditor; exports.HowToProvider = HowToProvider; exports.useHowToContext = useHowToContext; exports.HowToContent = HowToContent; exports.HowToDetails = HowToDetails; exports.HowToContainer = HowToContainer; exports.HowToReindexButton = HowToReindexButton; exports.HowToList = HowToList; exports.HowToListContainer = HowToListContainer; exports.HowToSelector = HowToSelector; exports.AssistantComposer = AssistantComposer; exports.MessageSourcesPanel = MessageSourcesPanel; exports.MessageItem = MessageItem; exports.MessageList = MessageList; exports.AssistantThread = AssistantThread; exports.HandbookAskSheet = HandbookAskSheet; exports.HandbookSyncButton = HandbookSyncButton; exports.HandbookIndexStatus = HandbookIndexStatus; exports.HandbookSectionGroup = HandbookSectionGroup; exports.HandbookContents = HandbookContents; exports.HandbookAdminContainer = HandbookAdminContainer; exports.HandbookPageDetails = HandbookPageDetails; exports.HandbookPageNeighbours = HandbookPageNeighbours; exports.HandbookPageToc = HandbookPageToc; exports.HandbookPageNavigator = HandbookPageNavigator; exports.HandbookPageContainer = HandbookPageContainer; exports.HandbookAskContainer = HandbookAskContainer; exports.EntityMentionLink = EntityMentionLink; exports.AssistantProvider = AssistantProvider; exports.useAssistantContext = useAssistantContext; exports.AssistantEmptyState = AssistantEmptyState; exports.AssistantContainer = AssistantContainer; exports.AssistantBlockNoteComposer = AssistantBlockNoteComposer; exports.AssistantPageContainer = AssistantPageContainer; exports.ApprovalActionCard = ApprovalActionCard; exports.AssistantContainerWithApprovals = AssistantContainerWithApprovals; exports.NotificationErrorBoundary = NotificationErrorBoundary; exports.NotificationIcon = NotificationIcon; exports.generateNotificationData = generateNotificationData; exports.NotificationToast = NotificationToast; exports.NotificationMenuItem = NotificationMenuItem; exports.NotificationContextProvider = NotificationContextProvider; exports.useNotificationContext = useNotificationContext; exports.NotificationViewSwitcher = NotificationViewSwitcher; exports.NotificationsList = NotificationsList; exports.NotificationsListContainer = NotificationsListContainer; exports.NotificationModal = NotificationModal; exports.PushNotificationProvider = PushNotificationProvider; exports.OnboardingCard = OnboardingCard; exports.ReferralCodeCapture = ReferralCodeCapture; exports.ReferralWidget = ReferralWidget; exports.ReferralDialog = ReferralDialog; exports.RoleProvider = RoleProvider; exports.useRoleContext = useRoleContext; exports.RoleDetails = RoleDetails; exports.RoleContainer = RoleContainer; exports.FormRoles = FormRoles; exports.RemoveUserFromRole = RemoveUserFromRole; exports.UserRoleAdd = UserRoleAdd; exports.useRoleTableStructure = useRoleTableStructure; exports.RolesList = RolesList; exports.UserRolesList = UserRolesList; exports.OAuthRedirectUriInput = OAuthRedirectUriInput; exports.OAuthScopeSelector = OAuthScopeSelector; exports.OAuthClientSecretDisplay = OAuthClientSecretDisplay; exports.OAuthClientCard = OAuthClientCard; exports.OAuthClientList = OAuthClientList; exports.OAuthClientForm = OAuthClientForm; exports.OAuthClientDetail = OAuthClientDetail; exports.OAuthConsentHeader = OAuthConsentHeader; exports.OAuthScopeList = OAuthScopeList; exports.OAuthConsentActions = OAuthConsentActions; exports.OAuthCompanySelector = OAuthCompanySelector; exports.useOAuthConsent = useOAuthConsent; exports.OAuthConsentScreen = OAuthConsentScreen; exports.WaitlistQuestionnaireRenderer = WaitlistQuestionnaireRenderer; exports.WaitlistForm = WaitlistForm; exports.WaitlistHeroSection = WaitlistHeroSection; exports.WaitlistSuccessState = WaitlistSuccessState; exports.WaitlistConfirmation = WaitlistConfirmation; exports.WaitlistList = WaitlistList; exports.RbacProvider = RbacProvider; exports.useRbacContext = useRbacContext; exports.RbacPermissionCell = RbacPermissionCell; exports.RbacPermissionPicker = RbacPermissionPicker; exports.RbacContainer = RbacContainer; exports.RbacByRoleContainer = RbacByRoleContainer; exports.AddUserToRole = AddUserToRole; exports.UserAvatarEditor = UserAvatarEditor; exports.UserDeleter = UserDeleter; exports.UserEditor = UserEditor; exports.UserMultiSelect = UserMultiSelect; exports.UserReactivator = UserReactivator; exports.UserResentInvitationEmail = UserResentInvitationEmail; exports.UserSelector = UserSelector; exports.UserProvider = UserProvider; exports.useUserContext = useUserContext; exports.CompanyProvider = CompanyProvider; exports.useCompanyContext = useCompanyContext; exports.DEFAULT_ONBOARDING_LABELS = DEFAULT_ONBOARDING_LABELS; exports.mapOnboardingSide = mapOnboardingSide; exports.OnboardingProvider = OnboardingProvider; exports.useOnboarding = useOnboarding; exports.CommonProvider = CommonProvider; exports.useCommonContext = useCommonContext; exports.SessionProvider = SessionProvider; exports.useSession = useSession; exports.ViewportProvider = ViewportProvider; exports.useNotificationSync = useNotificationSync; exports.usePageTracker = usePageTracker; exports.useSocket = useSocket; exports.useSubscriptionStatus = useSubscriptionStatus; exports.formatInterval = formatInterval; exports.formatCurrency = formatCurrency; exports.useContentTableStructure = useContentTableStructure; exports.useOAuthClients = useOAuthClients; exports.useOAuthClient = useOAuthClient;
27925
- //# sourceMappingURL=chunk-3M7D6NXU.js.map
27983
+
27984
+ exports.JsonApiProvider = JsonApiProvider; exports.useJsonApiGet = useJsonApiGet; exports.useJsonApiMutation = useJsonApiMutation; exports.useRehydration = useRehydration; exports.useRehydrationList = useRehydrationList; exports.TableGeneratorRegistry = TableGeneratorRegistry; exports.tableGeneratorRegistry = tableGeneratorRegistry; exports.usePageUrlGenerator = usePageUrlGenerator; exports.useUrlRewriter = useUrlRewriter; exports.useDataListRetriever = useDataListRetriever; exports.useDebounce = useDebounce2; exports.registerTableGenerator = registerTableGenerator; exports.useTableGenerator = useTableGenerator; exports.computeLayeredLayout = computeLayeredLayout; exports.fitLayeredLayoutToAspectRatio = fitLayeredLayoutToAspectRatio; exports.useCustomD3Graph = useCustomD3Graph; exports.SharedProvider = SharedProvider; exports.useSharedContext = useSharedContext; exports.AdministrationProvider = AdministrationProvider; exports.useAdministrationContext = useAdministrationContext; exports.SocketContext = SocketContext; exports.SocketProvider = SocketProvider; exports.useSocketContext = useSocketContext; exports.CurrentUserProvider = CurrentUserProvider; exports.useCurrentUserContext = useCurrentUserContext; exports.useCurrentUserContextOptional = useCurrentUserContextOptional; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AlertAction = AlertAction; exports.buttonVariants = buttonVariants; exports.Button = Button; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogMedia = AlertDialogMedia; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.Avatar = Avatar; exports.AvatarImage = AvatarImage; exports.AvatarFallback = AvatarFallback; exports.AvatarBadge = AvatarBadge; exports.AvatarGroup = AvatarGroup; exports.AvatarGroupCount = AvatarGroupCount; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.DirectionProvider = DirectionProvider; exports.useDir = useDir; exports.Calendar = Calendar; exports.CalendarDayButton = CalendarDayButton; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardAction = CardAction; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.useCarousel = useCarousel; exports.Carousel = Carousel; exports.CarouselContent = CarouselContent; exports.CarouselItem = CarouselItem; exports.CarouselPrevious = CarouselPrevious; exports.CarouselNext = CarouselNext; exports.ChartContainer = ChartContainer; exports.ChartStyle = ChartStyle; exports.ChartTooltip = ChartTooltip; exports.ChartTooltipContent = ChartTooltipContent; exports.ChartLegend = ChartLegend; exports.ChartLegendContent = ChartLegendContent; exports.Checkbox = Checkbox; exports.Collapsible = Collapsible; exports.CollapsibleTrigger = CollapsibleTrigger; exports.CollapsibleContent = CollapsibleContent; exports.Input = Input; exports.Textarea = Textarea; exports.InputGroup = InputGroup; exports.InputGroupAddon = InputGroupAddon; exports.InputGroupButton = InputGroupButton; exports.InputGroupText = InputGroupText; exports.InputGroupInput = InputGroupInput; exports.InputGroupTextarea = InputGroupTextarea; exports.Combobox = Combobox; exports.ComboboxValue = ComboboxValue; exports.ComboboxTrigger = ComboboxTrigger; exports.ComboboxInput = ComboboxInput; exports.ComboboxContent = ComboboxContent; exports.ComboboxList = ComboboxList; exports.ComboboxItem = ComboboxItem; exports.ComboboxGroup = ComboboxGroup; exports.ComboboxLabel = ComboboxLabel; exports.ComboboxCollection = ComboboxCollection; exports.ComboboxEmpty = ComboboxEmpty; exports.ComboboxSeparator = ComboboxSeparator; exports.ComboboxChips = ComboboxChips; exports.ComboboxChip = ComboboxChip; exports.ComboboxChipsInput = ComboboxChipsInput; exports.useComboboxAnchor = useComboboxAnchor; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.Command = Command; exports.CommandDialog = CommandDialog; exports.CommandInput = CommandInput; exports.CommandList = CommandList; exports.CommandEmpty = CommandEmpty; exports.CommandGroup = CommandGroup; exports.CommandSeparator = CommandSeparator; exports.CommandItem = CommandItem; exports.CommandShortcut = CommandShortcut; exports.commandFilterByKeywords = commandFilterByKeywords; exports.ConfirmDialog = ConfirmDialog; exports.ContextMenu = ContextMenu; exports.ContextMenuPortal = ContextMenuPortal; exports.ContextMenuTrigger = ContextMenuTrigger; exports.ContextMenuContent = ContextMenuContent; exports.ContextMenuGroup = ContextMenuGroup; exports.ContextMenuLabel = ContextMenuLabel; exports.ContextMenuItem = ContextMenuItem; exports.ContextMenuSub = ContextMenuSub; exports.ContextMenuSubTrigger = ContextMenuSubTrigger; exports.ContextMenuSubContent = ContextMenuSubContent; exports.ContextMenuCheckboxItem = ContextMenuCheckboxItem; exports.ContextMenuRadioGroup = ContextMenuRadioGroup; exports.ContextMenuRadioItem = ContextMenuRadioItem; exports.ContextMenuSeparator = ContextMenuSeparator; exports.ContextMenuShortcut = ContextMenuShortcut; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerPortal = DrawerPortal; exports.DrawerClose = DrawerClose; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerFooter = DrawerFooter; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DropdownMenu = DropdownMenu; exports.DropdownMenuPortal = DropdownMenuPortal; exports.DropdownMenuTrigger = DropdownMenuTrigger; exports.DropdownMenuContent = DropdownMenuContent; exports.DropdownMenuGroup = DropdownMenuGroup; exports.DropdownMenuLabel = DropdownMenuLabel; exports.DropdownMenuItem = DropdownMenuItem; exports.DropdownMenuSub = DropdownMenuSub; exports.DropdownMenuSubTrigger = DropdownMenuSubTrigger; exports.DropdownMenuSubContent = DropdownMenuSubContent; exports.DropdownMenuCheckboxItem = DropdownMenuCheckboxItem; exports.DropdownMenuRadioGroup = DropdownMenuRadioGroup; exports.DropdownMenuRadioItem = DropdownMenuRadioItem; exports.DropdownMenuSeparator = DropdownMenuSeparator; exports.DropdownMenuShortcut = DropdownMenuShortcut; exports.EmptyState = EmptyState; exports.Label = Label; exports.Separator = Separator; exports.FieldSet = FieldSet; exports.FieldLegend = FieldLegend; exports.FieldGroup = FieldGroup; exports.Field = Field; exports.FieldContent = FieldContent; exports.FieldLabel = FieldLabel; exports.FieldTitle = FieldTitle; exports.FieldDescription = FieldDescription; exports.FieldSeparator = FieldSeparator; exports.FieldError = FieldError; exports.Form = Form; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.InputOTP = InputOTP; exports.InputOTPGroup = InputOTPGroup; exports.InputOTPSlot = InputOTPSlot; exports.InputOTPSeparator = InputOTPSeparator; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuPositioner = NavigationMenuPositioner; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.Popover = Popover; exports.PopoverTrigger = PopoverTrigger; exports.PopoverContent = PopoverContent; exports.PopoverHeader = PopoverHeader; exports.PopoverTitle = PopoverTitle; exports.PopoverDescription = PopoverDescription; exports.Progress = Progress; exports.ProgressTrack = ProgressTrack; exports.ProgressIndicator = ProgressIndicator; exports.ProgressLabel = ProgressLabel; exports.ProgressValue = ProgressValue; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.ResizablePanelGroup = ResizablePanelGroup; exports.ResizablePanel = ResizablePanel; exports.ResizableHandle = ResizableHandle; exports.ScrollArea = ScrollArea; exports.ScrollBar = ScrollBar; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.Skeleton = Skeleton; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip2; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.useSidebar = useSidebar; exports.useSidebarControls = useSidebarControls; exports.useOptionalSidebar = useOptionalSidebar; exports.SidebarProvider = SidebarProvider; exports.Sidebar = Sidebar; exports.SidebarTrigger = SidebarTrigger; exports.SidebarRail = SidebarRail; exports.SidebarInset = SidebarInset; exports.SidebarInput = SidebarInput; exports.SidebarHeader = SidebarHeader; exports.SidebarFooter = SidebarFooter; exports.SidebarSeparator = SidebarSeparator; exports.SidebarContent = SidebarContent; exports.SidebarGroup = SidebarGroup; exports.SidebarGroupLabel = SidebarGroupLabel; exports.SidebarGroupAction = SidebarGroupAction; exports.SidebarGroupContent = SidebarGroupContent; exports.SidebarMenu = SidebarMenu; exports.SidebarMenuItem = SidebarMenuItem; exports.SidebarMenuButton = SidebarMenuButton; exports.SidebarMenuAction = SidebarMenuAction; exports.SidebarMenuBadge = SidebarMenuBadge; exports.SidebarMenuSkeleton = SidebarMenuSkeleton; exports.SidebarMenuSub = SidebarMenuSub; exports.SidebarMenuSubItem = SidebarMenuSubItem; exports.SidebarMenuSubButton = SidebarMenuSubButton; exports.Slider = Slider; exports.Toaster = Toaster; exports.spinnerVariants = spinnerVariants; exports.Spinner = Spinner; exports.Switch = Switch; exports.Table = Table; exports.TableHeader = TableHeader; exports.TableBody = TableBody; exports.TableFooter = TableFooter; exports.TableRow = TableRow; exports.TableHead = TableHead; exports.TableCell = TableCell; exports.TableCaption = TableCaption; exports.Tabs = Tabs; exports.tabsListVariants = tabsListVariants; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.KanbanRoot = KanbanRoot; exports.KanbanBoard = KanbanBoard; exports.KanbanColumn = KanbanColumn; exports.KanbanColumnHandle = KanbanColumnHandle; exports.KanbanItem = KanbanItem; exports.KanbanItemHandle = KanbanItemHandle; exports.KanbanOverlay = KanbanOverlay; exports.Link = Link; exports.MultiSelect = MultiSelect; exports.useDebounce2 = useDebounce; exports.MultipleSelector = MultipleSelector; exports.EntityAvatar = EntityAvatar; exports.errorToast = errorToast; exports.EditableAvatar = EditableAvatar; exports.TableCellAvatar = TableCellAvatar; exports.HeaderChildrenProvider = HeaderChildrenProvider; exports.useHeaderChildren = useHeaderChildren; exports.useHeaderMobileChildren = useHeaderMobileChildren; exports.useHeaderRootLabel = useHeaderRootLabel; exports.HeaderLeftContentProvider = HeaderLeftContentProvider; exports.useHeaderLeftContent = useHeaderLeftContent; exports.HeaderLogoProvider = HeaderLogoProvider; exports.useHeaderLogo = useHeaderLogo; exports.BreadcrumbNavigation = BreadcrumbNavigation; exports.ContentTitle = ContentTitle; exports.BreadcrumbRootProvider = BreadcrumbRootProvider; exports.useIsBreadcrumbRootHidden = useIsBreadcrumbRootHidden; exports.Header = Header; exports.MobileNavigationProvider = MobileNavigationProvider; exports.useMobileNavigationItems = useMobileNavigationItems; exports.MobileNavigationBar = MobileNavigationBar; exports.ModeToggleSwitch = ModeToggleSwitch; exports.PageSection = PageSection; exports.recentPagesAtom = recentPagesAtom; exports.RecentPagesNavigator = RecentPagesNavigator; exports.PageContainer = PageContainer; exports.partitionTabs = partitionTabs; exports.MermaidDiagram = MermaidDiagram; exports.ReactMarkdownContainer = ReactMarkdownContainer; exports.HEADER_ROW_MIN_H = HEADER_ROW_MIN_H; exports.RoundPageContainerTitle = RoundPageContainerTitle; exports.SectionHeader = SectionHeader; exports.MicroLabel = MicroLabel; exports.DetailField = DetailField; exports.RoundPageContainer = RoundPageContainer; exports.TabsContainer = TabsContainer; exports.AttributeElement = AttributeElement; exports.AllUsersListContainer = AllUsersListContainer; exports.PlatformUsersList = PlatformUsersList; exports.PlatformUsersContainer = PlatformUsersContainer; exports.UserContent = UserContent; exports.UserAvatar = UserAvatar; exports.UserAvatarList = UserAvatarList; exports.useUserSearch = useUserSearch; exports.useUserTableStructure = useUserTableStructure; exports.UserSearchPopover = UserSearchPopover; exports.UserIndexDetails = UserIndexDetails; exports.UserStanadaloneDetails = UserStanadaloneDetails; exports.UserContainer = UserContainer; exports.UserIndexContainer = UserIndexContainer; exports.UsersListContainer = UsersListContainer; exports.AdminUsersList = AdminUsersList; exports.CompanyUsersList = CompanyUsersList; exports.ContributorsList = ContributorsList; exports.RelevantUsersList = RelevantUsersList; exports.RoleUsersList = RoleUsersList; exports.UserListInAdd = UserListInAdd; exports.UsersList = UsersList; exports.UsersListByContentIds = UsersListByContentIds; exports.AllowedUsersDetails = AllowedUsersDetails; exports.ErrorDetails = ErrorDetails; exports.BlockNoteEditorMentionHoverCard = BlockNoteEditorMentionHoverCard; exports.mentionDataAttrs = mentionDataAttrs; exports.parseMentionElement = parseMentionElement; exports.createMentionInlineContentSpec = createMentionInlineContentSpec; exports.useMentionInsert = useMentionInsert; exports.BlockNoteEditorMentionSuggestionMenu = BlockNoteEditorMentionSuggestionMenu; exports.BlockNoteEditorContainer = BlockNoteEditorContainer; exports.BlockNoteViewerContainer = BlockNoteViewerContainer; exports.FormFeatures = FormFeatures; exports.CommonAssociationTrigger = CommonAssociationTrigger; exports.CommonAssociationCommandDialog = CommonAssociationCommandDialog; exports.triggerAssociationToast = triggerAssociationToast; exports.ActionBarProvider = ActionBarProvider; exports.useIsInActionBar = useIsInActionBar; exports.CommonDeleter = CommonDeleter; exports.CommonEditorButtons = CommonEditorButtons; exports.CommonEditorDiscardDialog = CommonEditorDiscardDialog; exports.CommonEditorHeader = CommonEditorHeader; exports.CommonEditorTrigger = CommonEditorTrigger; exports.CommonAddTrigger = CommonAddTrigger; exports.CurrencyInput = CurrencyInput; exports.DatePickerPopover = DatePickerPopover; exports.nextDateRange = nextDateRange; exports.DateRangeSelector = DateRangeSelector; exports.hasOpenInnerLayer = hasOpenInnerLayer; exports.useEditorDialog = useEditorDialog; exports.EditorSheet = EditorSheet; exports.FormFieldWrapper = FormFieldWrapper; exports.EntityMultiSelector = EntityMultiSelector; exports.EntitySelector = EntitySelector; exports.useFileUpload = useFileUpload; exports.FileUploader = FileUploader; exports.FileUploaderContent = FileUploaderContent; exports.FileUploaderItem = FileUploaderItem; exports.FileInput = FileInput; exports.FormBlockNote = FormBlockNote; exports.FormCheckbox = FormCheckbox; exports.FormDate = FormDate; exports.FormDateTime = FormDateTime; exports.FormInput = FormInput; exports.FormBody = FormBody; exports.FormSection = FormSection; exports.FormRow = FormRow; exports.FormCol = FormCol; exports.PasswordInput = PasswordInput; exports.FormPassword = FormPassword; exports.FormPlaceAutocomplete = FormPlaceAutocomplete; exports.FormSelect = FormSelect; exports.FormSlider = FormSlider; exports.FormSwitch = FormSwitch; exports.FormTextarea = FormTextarea; exports.GdprConsentCheckbox = GdprConsentCheckbox; exports.MultiFileUploader = MultiFileUploader; exports.PageContainerContentDetails = PageContainerContentDetails; exports.PageContentContainer = PageContentContainer; exports.cellComponent = cellComponent; exports.cellDate = cellDate; exports.cellDateTime = cellDateTime; exports.cellId = cellId; exports.cellLink = cellLink; exports.cellUrl = cellUrl; exports.ContentTableSearch = ContentTableSearch; exports.ContentListTable = ContentListTable; exports.ContentListGrid = ContentListGrid; exports.ItalianFiscalData_default = ItalianFiscalData_default; exports.ItalianFiscalDataDisplay = ItalianFiscalDataDisplay; exports.parseFiscalData = parseFiscalData; exports.FiscalDataDisplay = FiscalDataDisplay; exports.EntityHeroLayout = EntityHeroLayout; exports.EntityHero = EntityHero; exports.EntityHeroAvatar = EntityHeroAvatar; exports.EntityHeroMetaRow = EntityHeroMetaRow; exports.EntitySection = EntitySection; exports.GdprConsentSection = GdprConsentSection; exports.AuthContainer = AuthContainer; exports.BackupCodesDialog = BackupCodesDialog; exports.TotpInput = TotpInput; exports.DisableTwoFactorDialog = DisableTwoFactorDialog; exports.PasskeyList = PasskeyList; exports.PasskeySetupDialog = PasskeySetupDialog; exports.TotpAuthenticatorList = TotpAuthenticatorList; exports.TotpSetupDialog = TotpSetupDialog; exports.TwoFactorSettings = TwoFactorSettings; exports.SecurityContainer = SecurityContainer; exports.LandingComponent = LandingComponent; exports.AcceptInvitation = AcceptInvitation; exports.ActivateAccount = ActivateAccount; exports.Cookies = Cookies; exports.ForgotPassword = ForgotPassword; exports.Login = Login; exports.Logout = Logout; exports.RefreshUser = RefreshUser; exports.ResetPassword = ResetPassword; exports.PasskeyButton = PasskeyButton; exports.TwoFactorChallenge = TwoFactorChallenge; exports.AdminIndexGrid = AdminIndexGrid; exports.AdminIndexContainer = AdminIndexContainer; exports.ADMINISTRATION_I18N_KEYS = ADMINISTRATION_I18N_KEYS; exports.AI_CONNECTIONS_I18N_KEYS = AI_CONNECTIONS_I18N_KEYS; exports.AI_CONNECTIONS_ADMIN_PAGE_URL = AI_CONNECTIONS_ADMIN_PAGE_URL; exports.AiConnectionsProvider = AiConnectionsProvider; exports.useAiConnections = useAiConnections; exports.AiConnectionDeleter = AiConnectionDeleter; exports.AiConnectionEditor = AiConnectionEditor; exports.AiConnectionTypeCard = AiConnectionTypeCard; exports.AI_CONNECTION_TYPE_ORDER = AI_CONNECTION_TYPE_ORDER; exports.AiConnectionsContainer = AiConnectionsContainer; exports.CompanyContent = CompanyContent; exports.TokenStatusIndicator = TokenStatusIndicator; exports.CompanyDetails = CompanyDetails; exports.AdminCompanyContainer = AdminCompanyContainer; exports.CompanyEditor = CompanyEditor; exports.CompaniesList = CompaniesList; exports.CompaniesListContainer = CompaniesListContainer; exports.CompanyContainer = CompanyContainer; exports.CompanyConfigurationEditor = CompanyConfigurationEditor; exports.CompanyDeleter = CompanyDeleter; exports.ContentsList = ContentsList; exports.ContentsListById = ContentsListById; exports.RelevantContentsList = RelevantContentsList; exports.HowToCommandViewer = HowToCommandViewer; exports.HowToCommand = HowToCommand; exports.HowToDeleter = HowToDeleter; exports.HowToMultiSelector = HowToMultiSelector; exports.HowToEditor = HowToEditor; exports.HowToProvider = HowToProvider; exports.useHowToContext = useHowToContext; exports.HowToContent = HowToContent; exports.HowToDetails = HowToDetails; exports.HowToContainer = HowToContainer; exports.HowToReindexButton = HowToReindexButton; exports.HowToList = HowToList; exports.HowToListContainer = HowToListContainer; exports.HowToSelector = HowToSelector; exports.AssistantComposer = AssistantComposer; exports.MessageSourcesPanel = MessageSourcesPanel; exports.MessageItem = MessageItem; exports.MessageList = MessageList; exports.AssistantThread = AssistantThread; exports.HandbookAskSheet = HandbookAskSheet; exports.HandbookSyncButton = HandbookSyncButton; exports.HandbookIndexStatus = HandbookIndexStatus; exports.HandbookSectionGroup = HandbookSectionGroup; exports.HandbookContents = HandbookContents; exports.HandbookAdminContainer = HandbookAdminContainer; exports.HandbookPageDetails = HandbookPageDetails; exports.HandbookPageNeighbours = HandbookPageNeighbours; exports.HandbookPageToc = HandbookPageToc; exports.HandbookPageNavigator = HandbookPageNavigator; exports.HandbookPageContainer = HandbookPageContainer; exports.HandbookAskContainer = HandbookAskContainer; exports.EntityMentionLink = EntityMentionLink; exports.AssistantProvider = AssistantProvider; exports.useAssistantContext = useAssistantContext; exports.AssistantEmptyState = AssistantEmptyState; exports.AssistantContainer = AssistantContainer; exports.AssistantBlockNoteComposer = AssistantBlockNoteComposer; exports.AssistantPageContainer = AssistantPageContainer; exports.ApprovalActionCard = ApprovalActionCard; exports.AssistantContainerWithApprovals = AssistantContainerWithApprovals; exports.NotificationErrorBoundary = NotificationErrorBoundary; exports.NotificationIcon = NotificationIcon; exports.generateNotificationData = generateNotificationData; exports.NotificationToast = NotificationToast; exports.NotificationMenuItem = NotificationMenuItem; exports.NotificationContextProvider = NotificationContextProvider; exports.useNotificationContext = useNotificationContext; exports.NotificationViewSwitcher = NotificationViewSwitcher; exports.NotificationsList = NotificationsList; exports.NotificationsListContainer = NotificationsListContainer; exports.NotificationModal = NotificationModal; exports.PushNotificationProvider = PushNotificationProvider; exports.OnboardingCard = OnboardingCard; exports.ReferralCodeCapture = ReferralCodeCapture; exports.ReferralWidget = ReferralWidget; exports.ReferralDialog = ReferralDialog; exports.RoleProvider = RoleProvider; exports.useRoleContext = useRoleContext; exports.RoleDetails = RoleDetails; exports.RoleContainer = RoleContainer; exports.FormRoles = FormRoles; exports.RemoveUserFromRole = RemoveUserFromRole; exports.UserRoleAdd = UserRoleAdd; exports.useRoleTableStructure = useRoleTableStructure; exports.RolesList = RolesList; exports.UserRolesList = UserRolesList; exports.OAuthRedirectUriInput = OAuthRedirectUriInput; exports.OAuthScopeSelector = OAuthScopeSelector; exports.OAuthClientSecretDisplay = OAuthClientSecretDisplay; exports.OAuthClientCard = OAuthClientCard; exports.OAuthClientList = OAuthClientList; exports.OAuthClientForm = OAuthClientForm; exports.OAuthClientDetail = OAuthClientDetail; exports.OAuthConsentHeader = OAuthConsentHeader; exports.OAuthScopeList = OAuthScopeList; exports.OAuthConsentActions = OAuthConsentActions; exports.OAuthCompanySelector = OAuthCompanySelector; exports.useOAuthConsent = useOAuthConsent; exports.OAuthConsentScreen = OAuthConsentScreen; exports.WaitlistQuestionnaireRenderer = WaitlistQuestionnaireRenderer; exports.WaitlistForm = WaitlistForm; exports.WaitlistHeroSection = WaitlistHeroSection; exports.WaitlistSuccessState = WaitlistSuccessState; exports.WaitlistConfirmation = WaitlistConfirmation; exports.WaitlistList = WaitlistList; exports.RbacProvider = RbacProvider; exports.useRbacContext = useRbacContext; exports.RbacPermissionCell = RbacPermissionCell; exports.RbacPermissionPicker = RbacPermissionPicker; exports.RbacContainer = RbacContainer; exports.RbacByRoleContainer = RbacByRoleContainer; exports.AddUserToRole = AddUserToRole; exports.UserAvatarEditor = UserAvatarEditor; exports.UserDeleter = UserDeleter; exports.UserEditor = UserEditor; exports.UserMultiSelect = UserMultiSelect; exports.UserReactivator = UserReactivator; exports.UserResentInvitationEmail = UserResentInvitationEmail; exports.UserSelector = UserSelector; exports.UserProvider = UserProvider; exports.useUserContext = useUserContext; exports.CompanyProvider = CompanyProvider; exports.useCompanyContext = useCompanyContext; exports.DEFAULT_ONBOARDING_LABELS = DEFAULT_ONBOARDING_LABELS; exports.mapOnboardingSide = mapOnboardingSide; exports.OnboardingProvider = OnboardingProvider; exports.useOnboarding = useOnboarding; exports.CommonProvider = CommonProvider; exports.useCommonContext = useCommonContext; exports.SessionProvider = SessionProvider; exports.useSession = useSession; exports.ViewportProvider = ViewportProvider; exports.useNotificationSync = useNotificationSync; exports.usePageTracker = usePageTracker; exports.useSocket = useSocket; exports.useSubscriptionStatus = useSubscriptionStatus; exports.formatInterval = formatInterval; exports.formatCurrency = formatCurrency; exports.useContentTableStructure = useContentTableStructure; exports.useOAuthClients = useOAuthClients; exports.useOAuthClient = useOAuthClient;
27985
+ //# sourceMappingURL=chunk-MJVEKDM4.js.map